@voidzero-dev/vitepress-theme 4.7.0 → 4.8.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.
Files changed (47) hide show
  1. package/package.json +1 -1
  2. package/src/components/oss/Footer.vue +3 -103
  3. package/src/components/oss/FooterNav.vue +101 -0
  4. package/src/components/oss/Header.vue +14 -29
  5. package/src/components/oss/Hero.vue +2 -2
  6. package/src/components/oss/TopBanner.vue +4 -6
  7. package/src/components/vitepress-default/Layout.vue +10 -2
  8. package/src/components/vitepress-default/VPContent.vue +0 -8
  9. package/src/components/vitepress-default/VPDoc.vue +8 -14
  10. package/src/components/vitepress-default/VPHome.vue +2 -2
  11. package/src/components/vitepress-default/VPLocalNav.vue +8 -1
  12. package/src/components/vitepress-default/VPSidebar.vue +6 -0
  13. package/src/components/vitepress-default/VPSidebarItem.vue +6 -3
  14. package/src/components/vitepress-default/VPSocialLink.vue +9 -37
  15. package/src/index.ts +1 -0
  16. package/src/styles/marketing.css +4 -2
  17. package/src/assets/social/bluesky-light.svg +0 -10
  18. package/src/assets/social/bluesky.svg +0 -10
  19. package/src/assets/social/discord-light.svg +0 -10
  20. package/src/assets/social/discord.svg +0 -10
  21. package/src/assets/social/github-light.svg +0 -3
  22. package/src/assets/social/github.svg +0 -3
  23. package/src/assets/social/twitter-light.svg +0 -3
  24. package/src/assets/social/twitter.svg +0 -3
  25. package/src/components/shared/icons/VZIconBluesky.vue +0 -5
  26. package/src/components/shared/icons/VZIconGitHub.vue +0 -5
  27. package/src/components/shared/icons/VZIconLogo.vue +0 -5
  28. package/src/components/shared/icons/VZIconTwitter.vue +0 -5
  29. package/src/components/vitepress-default/icons/VPIconAlignJustify.vue +0 -8
  30. package/src/components/vitepress-default/icons/VPIconAlignLeft.vue +0 -8
  31. package/src/components/vitepress-default/icons/VPIconAlignRight.vue +0 -8
  32. package/src/components/vitepress-default/icons/VPIconArrowLeft.vue +0 -7
  33. package/src/components/vitepress-default/icons/VPIconArrowRight.vue +0 -7
  34. package/src/components/vitepress-default/icons/VPIconChevronDown.vue +0 -5
  35. package/src/components/vitepress-default/icons/VPIconChevronLeft.vue +0 -5
  36. package/src/components/vitepress-default/icons/VPIconChevronRight.vue +0 -5
  37. package/src/components/vitepress-default/icons/VPIconChevronUp.vue +0 -5
  38. package/src/components/vitepress-default/icons/VPIconEdit.vue +0 -6
  39. package/src/components/vitepress-default/icons/VPIconHeart.vue +0 -5
  40. package/src/components/vitepress-default/icons/VPIconLanguages.vue +0 -9
  41. package/src/components/vitepress-default/icons/VPIconMinus.vue +0 -5
  42. package/src/components/vitepress-default/icons/VPIconMinusSquare.vue +0 -6
  43. package/src/components/vitepress-default/icons/VPIconMoon.vue +0 -5
  44. package/src/components/vitepress-default/icons/VPIconMoreHorizontal.vue +0 -7
  45. package/src/components/vitepress-default/icons/VPIconPlus.vue +0 -5
  46. package/src/components/vitepress-default/icons/VPIconPlusSquare.vue +0 -6
  47. package/src/components/vitepress-default/icons/VPIconSun.vue +0 -13
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voidzero-dev/vitepress-theme",
3
- "version": "4.7.0",
3
+ "version": "4.8.0",
4
4
  "description": "Shared VitePress theme for VoidZero projects",
5
5
  "type": "module",
6
6
  "license": "UNLICENSED",
@@ -1,13 +1,7 @@
1
1
  <script setup lang="ts">
2
- import {computed, inject} from 'vue'
3
- import {useData} from 'vitepress'
4
-
5
- // Social icons
6
- import githubIcon from '@assets/social/github-light.svg'
7
- import discordIcon from '@assets/social/discord-light.svg'
8
- import blueskyIcon from '@assets/social/bluesky-light.svg'
9
- import twitterIcon from '@assets/social/twitter-light.svg'
2
+ import {inject} from 'vue'
10
3
  import { themeContextKey } from '../../types/theme-context'
4
+ import FooterNav from './FooterNav.vue'
11
5
 
12
6
  // Props for CTA section
13
7
  withDefaults(defineProps<{
@@ -22,69 +16,7 @@ withDefaults(defineProps<{
22
16
  buttonLink: '/guide/'
23
17
  })
24
18
 
25
- const {theme} = useData()
26
19
  const { footerBg: backgroundImage } = inject(themeContextKey)!
27
-
28
- // Social icon mapping
29
- const socialIconMap: Record<string, string> = {
30
- github: githubIcon,
31
- discord: discordIcon,
32
- bluesky: blueskyIcon,
33
- twitter: twitterIcon,
34
- x: twitterIcon,
35
- }
36
-
37
- // Footer configuration from theme
38
- interface FooterLink {
39
- text: string
40
- link: string
41
- }
42
-
43
- interface FooterColumn {
44
- title: string
45
- items: FooterLink[]
46
- }
47
-
48
- interface SocialLink {
49
- icon: string
50
- link: string
51
- label?: string
52
- }
53
-
54
- interface FooterConfig {
55
- message?: string
56
- copyright?: string
57
- nav?: FooterColumn[]
58
- social?: SocialLink[]
59
- }
60
-
61
- const footerConfig = computed<FooterConfig>(() => {
62
- const footer = theme.value.footer || {}
63
- return footer as FooterConfig
64
- })
65
- const footerNav = computed(() => footerConfig.value.nav || [])
66
- const footerSocial = computed(() => footerConfig.value.social || [])
67
- const footerCopyright = computed(() =>
68
- footerConfig.value.copyright || `© ${new Date().getFullYear()} VoidZero Inc. All Rights Reserved.`
69
- )
70
-
71
- // Get social icon by name
72
- const getSocialIcon = (icon: string): string => {
73
- return socialIconMap[icon.toLowerCase()] || githubIcon
74
- }
75
-
76
- // Get display label for social link
77
- const getSocialLabel = (social: SocialLink): string => {
78
- if (social.label) return social.label
79
- const labels: Record<string, string> = {
80
- github: 'GitHub',
81
- discord: 'Discord',
82
- bluesky: 'Bluesky',
83
- twitter: 'X.com',
84
- x: 'X.com',
85
- }
86
- return labels[social.icon.toLowerCase()] || social.icon
87
- }
88
20
  </script>
89
21
 
90
22
  <template>
@@ -103,39 +35,7 @@ const getSocialLabel = (social: SocialLink): string => {
103
35
  </a>
104
36
  </div>
105
37
  </div>
106
- <div
107
- class="px-5 md:px-24 pt-10 md:pt-16 pb-16 md:pb-40 flex flex-col md:flex-row gap-10 md:gap-0 md:justify-between">
108
- <div class="flex flex-col md:flex-row gap-10 md:gap-20">
109
- <div v-for="column in footerNav" :key="column.title">
110
- <p class="text-grey text-xs font-mono uppercase tracking-wide mb-8">{{ column.title }}</p>
111
- <ul class="flex flex-col gap-3">
112
- <li v-for="item in column.items" :key="item.link">
113
- <a :href="item.link" class="text-white text-base">{{ item.text }}</a>
114
- </li>
115
- </ul>
116
- </div>
117
- </div>
118
- <div v-if="footerSocial.length">
119
- <p class="text-grey text-xs font-mono uppercase tracking-wide mb-8">Social</p>
120
- <ul class="flex flex-col gap-3">
121
- <li v-for="social in footerSocial" :key="social.link">
122
- <a :href="social.link" class="text-white text-base flex gap-3 items-center" target="_blank"
123
- rel="noopener noreferrer">
124
- <img :src="getSocialIcon(social.icon)" :alt="getSocialLabel(social)" class="size-5">
125
- {{ getSocialLabel(social) }}
126
- </a>
127
- </li>
128
- </ul>
129
- </div>
130
- </div>
131
- </section>
132
- <section
133
- class="wrapper wrapper--ticks border-t py-5 px-5 md:px-24 flex flex-col md:flex-row gap-3 md:gap-0 justify-between items-start md:items-center">
134
- <p class="text-sm">{{ footerCopyright }}</p>
135
- <div class="gap-10 text-sm hidden md:flex">
136
- <!-- <a href="https://voidzero.dev/terms" class="text-grey">Terms & Conditions</a>
137
- <a href="https://voidzero.dev/privacy" class="text-grey">Privacy Policy</a>-->
138
- </div>
139
38
  </section>
39
+ <FooterNav />
140
40
  </footer>
141
41
  </template>
@@ -0,0 +1,101 @@
1
+ <script setup lang="ts">
2
+ import {computed} from 'vue'
3
+ import {useData} from 'vitepress'
4
+ import { Icon } from '@iconify/vue'
5
+
6
+ const {theme} = useData()
7
+
8
+ // Social icon name mapping
9
+ const socialIconName = (icon: string): string => {
10
+ const key = icon.toLowerCase()
11
+ if (key === 'twitter') return 'simple-icons:x'
12
+ return `simple-icons:${key}`
13
+ }
14
+
15
+ // Footer configuration from theme
16
+ interface FooterLink {
17
+ text: string
18
+ link: string
19
+ }
20
+
21
+ interface FooterColumn {
22
+ title: string
23
+ items: FooterLink[]
24
+ }
25
+
26
+ interface SocialLink {
27
+ icon: string
28
+ link: string
29
+ label?: string
30
+ }
31
+
32
+ interface FooterConfig {
33
+ message?: string
34
+ copyright?: string
35
+ nav?: FooterColumn[]
36
+ social?: SocialLink[]
37
+ }
38
+
39
+ const footerConfig = computed<FooterConfig>(() => {
40
+ const footer = theme.value.footer || {}
41
+ return footer as FooterConfig
42
+ })
43
+ const footerNav = computed(() => footerConfig.value.nav || [])
44
+ const footerSocial = computed(() => footerConfig.value.social || [])
45
+ const footerCopyright = computed(() =>
46
+ footerConfig.value.copyright || `© ${new Date().getFullYear()} VoidZero Inc. All Rights Reserved.`
47
+ )
48
+
49
+ // Get display label for social link
50
+ const getSocialLabel = (social: SocialLink): string => {
51
+ if (social.label) return social.label
52
+ const labels: Record<string, string> = {
53
+ github: 'GitHub',
54
+ discord: 'Discord',
55
+ bluesky: 'Bluesky',
56
+ twitter: 'X.com',
57
+ x: 'X.com',
58
+ }
59
+ return labels[social.icon.toLowerCase()] || social.icon
60
+ }
61
+ </script>
62
+
63
+ <template>
64
+ <div>
65
+ <section class="wrapper wrapper--ticks border-t">
66
+ <div
67
+ class="px-5 md:px-24 pt-10 md:pt-16 pb-16 md:pb-40 flex flex-col md:flex-row gap-10 md:gap-0 md:justify-between">
68
+ <div class="flex flex-col md:flex-row gap-10 md:gap-20">
69
+ <div v-for="column in footerNav" :key="column.title">
70
+ <p class="text-[var(--vp-c-text-2)] text-xs font-mono uppercase tracking-wide mb-8">{{ column.title }}</p>
71
+ <ul class="flex flex-col gap-3">
72
+ <li v-for="item in column.items" :key="item.link">
73
+ <a :href="item.link" class="text-[var(--vp-c-text-1)] text-base">{{ item.text }}</a>
74
+ </li>
75
+ </ul>
76
+ </div>
77
+ </div>
78
+ <div v-if="footerSocial.length">
79
+ <p class="text-[var(--vp-c-text-2)] text-xs font-mono uppercase tracking-wide mb-8">Social</p>
80
+ <ul class="flex flex-col gap-3">
81
+ <li v-for="social in footerSocial" :key="social.link">
82
+ <a :href="social.link" class="text-[var(--vp-c-text-1)] text-base flex gap-3 items-center" target="_blank"
83
+ rel="noopener noreferrer">
84
+ <Icon :icon="socialIconName(social.icon)" class="size-[18px]" :aria-label="getSocialLabel(social)" />
85
+ {{ getSocialLabel(social) }}
86
+ </a>
87
+ </li>
88
+ </ul>
89
+ </div>
90
+ </div>
91
+ </section>
92
+ <section
93
+ class="wrapper wrapper--ticks border-t py-5 px-5 md:px-24 flex flex-col md:flex-row gap-3 md:gap-0 justify-between items-start md:items-center">
94
+ <p class="text-sm">{{ footerCopyright }}</p>
95
+ <div class="gap-10 text-sm hidden md:flex">
96
+ <!-- <a href="https://voidzero.dev/terms" class="text-grey">Terms & Conditions</a>
97
+ <a href="https://voidzero.dev/privacy" class="text-grey">Privacy Policy</a>-->
98
+ </div>
99
+ </section>
100
+ </div>
101
+ </template>
@@ -1,4 +1,5 @@
1
1
  <script setup lang="ts">
2
+ import { Icon } from '@iconify/vue'
2
3
  import { useData, useRoute } from 'vitepress'
3
4
  import { normalizeLink } from '@vp-support/utils'
4
5
  import { ref, computed, onMounted, onUnmounted, watch, nextTick, inject } from 'vue'
@@ -234,11 +235,7 @@ onUnmounted(() => {
234
235
  <button v-if="isSearchAvailable" @click="triggerSearch" aria-label="Search"
235
236
  class="lg:hidden p-2 text-primary dark:text-white hover:opacity-70 transition-opacity cursor-pointer"
236
237
  type="button">
237
- <svg class="size-5" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
238
- <path
239
- d="M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z"
240
- stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
241
- </svg>
238
+ <Icon icon="lucide:search" class="size-5" />
242
239
  </button>
243
240
 
244
241
  <!-- Mobile hamburger - visible <1024px -->
@@ -280,19 +277,12 @@ onUnmounted(() => {
280
277
  <!-- Search button - hidden if search unavailable -->
281
278
  <button v-if="isSearchAvailable" @click="triggerSearch" aria-label="Search"
282
279
  class="p-2 text-primary dark:text-white hover:opacity-70 transition-opacity cursor-pointer" type="button">
283
- <svg class="size-5" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
284
- <path
285
- d="M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z"
286
- stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
287
- </svg>
280
+ <Icon icon="lucide:search" class="size-5" />
288
281
  </button>
289
282
  <!-- Close button -->
290
283
  <button @click="closeMobileMenu" aria-label="Close navigation menu"
291
284
  class="p-2 -mr-2 text-primary dark:text-white hover:opacity-70 transition-opacity" type="button">
292
- <svg class="size-6 cursor-pointer" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"
293
- stroke="currentColor" aria-hidden="true">
294
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" />
295
- </svg>
285
+ <Icon icon="lucide:x" class="size-6 cursor-pointer" aria-hidden="true" />
296
286
  </button>
297
287
  </div>
298
288
  </div>
@@ -308,14 +298,11 @@ onUnmounted(() => {
308
298
  <!-- Dropdown item - render as accordion -->
309
299
  <template v-if="isDropdown(navItem)">
310
300
  <button @click="toggleAccordion(index)"
311
- class="w-full flex items-center justify-between py-3 px-4 text-lg font-sans text-primary dark:text-white"
301
+ class="w-full flex items-center justify-between py-3 px-4 text-base font-sans text-primary dark:text-white"
312
302
  :aria-expanded="expandedAccordions.has(index)">
313
303
  <span>{{ navItem.text }}</span>
314
- <svg class="size-4 transition-transform duration-200"
315
- :class="{ 'rotate-180': expandedAccordions.has(index) }" viewBox="0 0 24 24" fill="none"
316
- stroke="currentColor" stroke-width="2">
317
- <path d="M6 9l6 6 6-6" />
318
- </svg>
304
+ <Icon icon="lucide:chevron-down" class="size-4 transition-transform duration-200"
305
+ :class="{ 'rotate-180': expandedAccordions.has(index) }" />
319
306
  </button>
320
307
  <!-- Accordion content -->
321
308
  <ul v-show="expandedAccordions.has(index)" class="pl-4 space-y-1">
@@ -329,7 +316,7 @@ onUnmounted(() => {
329
316
  { 'bg-primary/10 dark:bg-white/10': route.path === normalizeLink(childItem.link) },
330
317
  { 'vp-external-link-icon': isExternalLink(childItem.link) }
331
318
  ]"
332
- class="block py-2 px-4 text-base font-sans text-grey dark:text-white/80 hover:text-primary dark:hover:text-white">
319
+ class="block py-1.5 px-4 text-sm font-sans text-grey dark:text-white/80 hover:text-primary dark:hover:text-white">
333
320
  {{ childItem.text }}
334
321
  </a>
335
322
  </li>
@@ -339,7 +326,7 @@ onUnmounted(() => {
339
326
  class="pt-3 pb-1 px-4 text-xs font-semibold uppercase tracking-wider text-grey/70 dark:text-white/50">
340
327
  {{ childItem.text }}
341
328
  </p>
342
- <ul class="space-y-1">
329
+ <ul class="pl-4 space-y-1">
343
330
  <li v-for="nestedItem in childItem.items" :key="nestedItem.link || nestedItem.text">
344
331
  <a v-if="nestedItem.link" :href="normalizeLink(nestedItem.link)" @click="closeMobileMenu"
345
332
  :target="isExternalLink(nestedItem.link) ? '_blank' : undefined"
@@ -348,7 +335,7 @@ onUnmounted(() => {
348
335
  { 'bg-primary/10 dark:bg-white/10': route.path === normalizeLink(nestedItem.link) },
349
336
  { 'vp-external-link-icon': isExternalLink(nestedItem.link) }
350
337
  ]"
351
- class="block py-2 px-4 text-base font-sans text-grey dark:text-white/80 hover:text-primary dark:hover:text-white">
338
+ class="block py-1.5 px-4 text-sm font-sans text-grey dark:text-white/80 hover:text-primary dark:hover:text-white">
352
339
  {{ nestedItem.text }}
353
340
  </a>
354
341
  </li>
@@ -365,11 +352,11 @@ onUnmounted(() => {
365
352
  { 'bg-primary/10 dark:bg-white/10': route.path === normalizeLink(navItem.link) },
366
353
  { 'vp-external-link-icon': isExternalLink(navItem.link) }
367
354
  ]"
368
- class="block py-3 px-4 text-lg font-sans text-primary dark:text-white">
355
+ class="block py-3 px-4 text-base font-sans text-primary dark:text-white">
369
356
  {{ navItem.text }}
370
357
  </a>
371
358
  <!-- Nav item without link (shouldn't happen, but defensive) -->
372
- <span v-else class="block py-3 px-4 text-lg font-sans text-primary dark:text-white">
359
+ <span v-else class="block py-3 px-4 text-base font-sans text-primary dark:text-white">
373
360
  {{ navItem.text }}
374
361
  </span>
375
362
  </li>
@@ -386,10 +373,8 @@ onUnmounted(() => {
386
373
  class="w-full flex items-center justify-between text-grey dark:text-white/80 text-sm font-medium"
387
374
  :aria-expanded="languageMenuOpen">
388
375
  <span>{{ theme.langMenuLabel || 'Language' }}</span>
389
- <svg class="size-4 transition-transform duration-200" :class="{ 'rotate-180': languageMenuOpen }"
390
- viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
391
- <path d="M6 9l6 6 6-6" />
392
- </svg>
376
+ <Icon icon="lucide:chevron-down" class="size-4 transition-transform duration-200"
377
+ :class="{ 'rotate-180': languageMenuOpen }" />
393
378
  </button>
394
379
  <ul v-show="languageMenuOpen" class="mt-3 space-y-1">
395
380
  <li v-for="locale in localeLinks" :key="locale.link">
@@ -9,7 +9,7 @@ const { frontmatter } = useData()
9
9
  </script>
10
10
 
11
11
  <template>
12
- <div v-if="frontmatter.hero" class="wrapper wrapper--ticks grid md:grid-cols-2 w-full border-nickel md:divide-x">
12
+ <div v-if="frontmatter.hero" class="wrapper wrapper--ticks grid lg:grid-cols-2 w-full border-nickel md:divide-x">
13
13
  <div class="flex flex-col p-15 sm:p-20 justify-between gap-20 items-center md:items-start">
14
14
  <div class="flex flex-col gap-5 items-center md:items-start text-center md:text-left">
15
15
  <a class="flex items-center gap-2" href="https://voidzero.dev" target="_blank">
@@ -22,7 +22,7 @@ const { frontmatter } = useData()
22
22
  <p v-if="frontmatter.hero.tagline" class="text-white/70 md:text-lg max-w-[27rem] text-pretty">
23
23
  {{ frontmatter.hero.tagline }}
24
24
  </p>
25
- <div class="flex items-center gap-5 mt-8">
25
+ <div class="flex flex-col min-[410px]:flex-row items-center gap-5 mt-8">
26
26
  <a v-for="action in frontmatter.hero.actions" :key="action.text" :href="action.link"
27
27
  :target="action.link?.startsWith('http') ? '_blank' : ''" class="button inline-block w-fit"
28
28
  :class="{ 'button--primary': action.theme === 'brand' }">
@@ -1,6 +1,7 @@
1
1
  <script setup lang="ts">
2
- import { computed, inject, ref } from 'vue'
2
+ import { computed, inject } from 'vue'
3
3
  import { useData } from 'vitepress'
4
+ import { Icon } from '@iconify/vue'
4
5
  import type { BannerConfig } from '../../types/theme-config'
5
6
  import { themeContextKey } from '../../types/theme-context'
6
7
 
@@ -82,13 +83,10 @@ function dismiss() {
82
83
  </div>
83
84
  </a>
84
85
  <!-- Close button -->
85
- <button @click="dismiss" aria-label="Close navigation menu"
86
+ <button @click="dismiss" aria-label="Close banner"
86
87
  class="absolute right-2 top-1/2 -translate-y-1/2 z-20 p-2 text-white hover:opacity-70 transition-opacity"
87
88
  type="button">
88
- <svg class="cursor-pointer mt-px" width="20" height="20" xmlns="http://www.w3.org/2000/svg" fill="none"
89
- viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
90
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" />
91
- </svg>
89
+ <Icon icon="lucide:x" class="size-5 cursor-pointer" aria-hidden="true" />
92
90
  </button>
93
91
  </div>
94
92
  </template>
@@ -9,7 +9,7 @@ import TopBanner from '@components/oss/TopBanner.vue'
9
9
  import VPSidebar from './VPSidebar.vue'
10
10
  import VPSkipLink from './VPSkipLink.vue'
11
11
  import { useData } from '@vp-composables/data'
12
- import { layoutInfoInjectionKey, registerWatchers } from '@vp-composables/layout'
12
+ import { layoutInfoInjectionKey, registerWatchers, useLayout } from '@vp-composables/layout'
13
13
  import { useSidebarControl } from '@vp-composables/sidebar'
14
14
 
15
15
  const {
@@ -21,6 +21,7 @@ const {
21
21
  registerWatchers({ closeSidebar })
22
22
 
23
23
  const { frontmatter } = useData()
24
+ const { hasSidebar } = useLayout()
24
25
 
25
26
  const slots = useSlots()
26
27
  const heroImageSlotExists = computed(() => !!slots['home-hero-image'])
@@ -41,7 +42,7 @@ provide(layoutInfoInjectionKey, { heroImageSlotExists })
41
42
 
42
43
  <div class="flex flex-col min-h-screen">
43
44
  <!-- Content wrapper with borders -->
44
- <div class="content-wrapper flex-1">
45
+ <div class="content-wrapper flex-1" :class="{ 'has-sidebar': hasSidebar }">
45
46
  <VPLocalNav :open="isSidebarOpen" @open-menu="openSidebar" />
46
47
 
47
48
  <VPSidebar :open="isSidebarOpen">
@@ -176,4 +177,11 @@ provide(layoutInfoInjectionKey, { heroImageSlotExists })
176
177
  max-width: 90rem;
177
178
  }
178
179
  }
180
+
181
+ @media (min-width: 1024px) {
182
+ .content-wrapper.has-sidebar {
183
+ display: grid;
184
+ grid-template-columns: var(--vp-sidebar-width) 1fr;
185
+ }
186
+ }
179
187
  </style>
@@ -82,14 +82,6 @@ const { isHome, hasSidebar } = useLayout()
82
82
 
83
83
  .VPContent.has-sidebar {
84
84
  margin: var(--vp-layout-top-height, 0px) 0 0;
85
- padding-left: var(--vp-sidebar-width);
86
- }
87
- }
88
-
89
- @media (min-width: 1440px) {
90
- .VPContent.has-sidebar {
91
- padding-right: calc((100% - var(--vp-layout-max-width)) / 2);
92
- padding-left: calc((100% - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width));
93
85
  }
94
86
  }
95
87
  </style>
@@ -76,7 +76,7 @@ const pageName = computed(() =>
76
76
 
77
77
  @media (min-width: 1024px) {
78
78
  .VPDoc {
79
- padding: 48px 32px 0;
79
+ padding: 0 32px 0;
80
80
  }
81
81
 
82
82
  .VPDoc:not(.has-sidebar) .container {
@@ -133,34 +133,28 @@ const pageName = computed(() =>
133
133
  }
134
134
 
135
135
  .aside-container {
136
- position: fixed;
137
- top: var(--vp-nav-height);
136
+ position: sticky;
137
+ top: calc(var(--vp-nav-height) + var(--vp-banner-height, 0px));
138
138
  padding-top: 20px;
139
139
  padding-left: 32px;
140
140
  width: 224px;
141
- height: calc(100vh - var(--vp-nav-height));
141
+ height: calc(100vh - var(--vp-nav-height) - var(--vp-banner-height, 0px));
142
142
  overflow-x: hidden;
143
143
  overflow-y: auto;
144
144
  scrollbar-width: none;
145
145
  border-left: 1px solid var(--vp-c-divider);
146
146
  }
147
147
 
148
- @media (min-width: 1024px) {
149
- .aside-container {
150
- top: calc(var(--vp-nav-height) + var(--vp-banner-height, 0px));
151
- height: calc(100vh - var(--vp-nav-height) - var(--vp-banner-height, 0px));
152
- }
153
- }
154
-
155
148
  .aside-container::-webkit-scrollbar {
156
149
  display: none;
157
150
  }
158
151
 
159
152
  .aside-curtain {
160
- position: fixed;
153
+ position: absolute;
161
154
  bottom: 0;
155
+ left: 0;
162
156
  z-index: 10;
163
- width: 224px;
157
+ width: 100%;
164
158
  height: 32px;
165
159
  background: linear-gradient(transparent, var(--vp-c-bg) 70%);
166
160
  pointer-events: none;
@@ -181,7 +175,7 @@ const pageName = computed(() =>
181
175
 
182
176
  @media (min-width: 1024px) {
183
177
  .content {
184
- padding: 0 32px 128px;
178
+ padding: 48px 32px 128px;
185
179
  }
186
180
  }
187
181
 
@@ -8,8 +8,8 @@ const { frontmatter, theme } = useData()
8
8
  </script>
9
9
 
10
10
  <template>
11
- <div
12
- class="VPHome"
11
+ <div
12
+ class="VPHome"
13
13
  :class="{
14
14
  'external-link-icon-enabled': theme.externalLinkIcon
15
15
  }">
@@ -88,6 +88,7 @@ const classes = computed(() => {
88
88
  }
89
89
 
90
90
  .VPLocalNav.has-sidebar {
91
+ grid-column: 1 / -1;
91
92
  padding-left: var(--vp-sidebar-width);
92
93
  border-bottom: none;
93
94
  }
@@ -116,7 +117,13 @@ const classes = computed(() => {
116
117
  justify-content: space-between;
117
118
  align-items: center;
118
119
  margin: 0 auto;
119
- max-width: calc(100vw - 2rem);
120
+ max-width: 100%;
121
+ }
122
+
123
+ @media (min-width: 768px) {
124
+ .container {
125
+ max-width: calc(100vw - 2rem);
126
+ }
120
127
  }
121
128
 
122
129
  @media (min-width: 90rem) {
@@ -92,16 +92,22 @@ watch(
92
92
 
93
93
  @media (min-width: 1024px) {
94
94
  .VPSidebar {
95
+ position: sticky;
95
96
  top: calc(var(--vp-nav-height) + var(--vp-banner-height, 0px));
97
+ bottom: unset;
96
98
  left: unset;
97
99
  padding-left: 32px;
98
100
  width: var(--vp-sidebar-width);
99
101
  max-width: 100%;
102
+ height: calc(100vh - var(--vp-nav-height) - var(--vp-banner-height, 0px));
100
103
  background-color: transparent;
101
104
  opacity: 1;
102
105
  visibility: visible;
103
106
  box-shadow: none;
104
107
  transform: translateX(0);
108
+ z-index: auto;
109
+ grid-row: 1 / -1;
110
+ align-self: start;
105
111
  }
106
112
  }
107
113
 
@@ -240,13 +240,16 @@ const itemIcon = useIcon(() => (props.item as any).icon)
240
240
  transform: rotate(0)/*rtl:rotate(180deg)*/;
241
241
  }
242
242
 
243
- .VPSidebarItem.level-0.has-icon > .items,
243
+ .VPSidebarItem.level-0.has-icon .items {
244
+ border-left: 1px solid var(--vp-c-divider);
245
+ }
246
+
247
+ .VPSidebarItem.level-0 .items,
244
248
  .VPSidebarItem.level-1 .items,
245
249
  .VPSidebarItem.level-2 .items,
246
250
  .VPSidebarItem.level-3 .items,
247
251
  .VPSidebarItem.level-4 .items,
248
252
  .VPSidebarItem.level-5 .items {
249
- border-left: 1px solid var(--vp-c-divider);
250
253
  padding-left: 16px;
251
254
  }
252
255
 
@@ -269,6 +272,6 @@ const itemIcon = useIcon(() => (props.item as any).icon)
269
272
  }
270
273
 
271
274
  .VPSidebarItem.level-0.has-icon > .items {
272
- margin-left: 6px;
275
+ margin-left: 8px;
273
276
  }
274
277
  </style>
@@ -1,53 +1,26 @@
1
1
  <script lang="ts" setup>
2
2
  import type { DefaultTheme } from 'vitepress/theme'
3
- import { computed, nextTick, onMounted, ref, useSSRContext } from 'vue'
3
+ import { Icon } from '@iconify/vue'
4
4
 
5
- const props = defineProps<{
5
+ defineProps<{
6
6
  icon: DefaultTheme.SocialLinkIcon
7
7
  link: string
8
8
  ariaLabel?: string
9
9
  me: boolean
10
10
  }>()
11
-
12
- const el = ref<HTMLAnchorElement>()
13
-
14
- onMounted(async () => {
15
- await nextTick()
16
- const span = el.value?.children[0]
17
- if (
18
- span instanceof HTMLElement &&
19
- span.className.startsWith('vpi-social-') &&
20
- (getComputedStyle(span).maskImage ||
21
- getComputedStyle(span).webkitMaskImage) === 'none'
22
- ) {
23
- span.style.setProperty(
24
- '--icon',
25
- `url('https://api.iconify.design/simple-icons/${props.icon}.svg')`
26
- )
27
- }
28
- })
29
-
30
- const svg = computed(() => {
31
- if (typeof props.icon === 'object') return props.icon.svg
32
- return `<span class="vpi-social-${props.icon}"></span>`
33
- })
34
-
35
- if (import.meta.env.SSR) {
36
- typeof props.icon === 'string' &&
37
- useSSRContext()?.vpSocialIcons.add(props.icon)
38
- }
39
11
  </script>
40
12
 
41
13
  <template>
42
14
  <a
43
- ref="el"
44
15
  class="VPSocialLink no-icon"
45
16
  :href="link"
46
17
  :aria-label="ariaLabel ?? (typeof icon === 'string' ? icon : '')"
47
18
  target="_blank"
48
19
  :rel="me ? 'me noopener' : 'noopener'"
49
- v-html="svg"
50
- ></a>
20
+ >
21
+ <Icon v-if="typeof icon === 'string'" :icon="'simple-icons:' + icon" />
22
+ <span v-else v-html="icon.svg"></span>
23
+ </a>
51
24
  </template>
52
25
 
53
26
  <style scoped>
@@ -66,10 +39,9 @@ if (import.meta.env.SSR) {
66
39
  transition: color 0.25s;
67
40
  }
68
41
 
69
- .VPSocialLink > :deep(svg),
70
- .VPSocialLink > :deep([class^="vpi-social-"]) {
71
- width: 20px;
72
- height: 20px;
42
+ .VPSocialLink > :deep(svg) {
43
+ width: 18px;
44
+ height: 18px;
73
45
  fill: currentColor;
74
46
  }
75
47
  </style>
package/src/index.ts CHANGED
@@ -82,6 +82,7 @@ export { default as VPTeamPageSection } from "@vp-default/VPTeamPageSection.vue"
82
82
  export { default as VPTeamPageTitle } from "@vp-default/VPTeamPageTitle.vue";
83
83
 
84
84
  // Export custom layouts and components
85
+ export { default as FooterNav } from "@components/oss/FooterNav.vue";
85
86
  export { VoidZeroTheme };
86
87
  export default VoidZeroTheme;
87
88
 
@@ -82,11 +82,13 @@
82
82
  border-left: 5px solid transparent;
83
83
  }
84
84
 
85
- [data-theme=dark] .wrapper--ticks::before, [data-theme=dark] .tick-left::before {
85
+ [data-theme=dark] .wrapper--ticks::before, [data-theme=dark] .tick-left::before,
86
+ .dark:not([data-theme]) .wrapper--ticks::before, .dark:not([data-theme]) .tick-left::before {
86
87
  border-left-color: var(--color-nickel);
87
88
  }
88
89
 
89
- [data-theme=dark] .wrapper--ticks::after, [data-theme=dark] .tick-right::after {
90
+ [data-theme=dark] .wrapper--ticks::after, [data-theme=dark] .tick-right::after,
91
+ .dark:not([data-theme]) .wrapper--ticks::after, .dark:not([data-theme]) .tick-right::after {
90
92
  border-right-color: var(--color-nickel);
91
93
  }
92
94
 
@@ -1,10 +0,0 @@
1
- <svg viewBox="0 0 19 19" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <g clip-path="url(#clip0_1262_28144)">
3
- <path d="M9.18049 8.26205C8.34893 6.64484 6.0853 3.63151 3.98002 2.14588C1.96348 0.722215 1.19465 0.968545 0.690518 1.19728C0.106823 1.45967 0.000488281 2.35625 0.000488281 2.88257C0.000488281 3.41042 0.289658 7.20482 0.477848 7.83901C1.10132 9.93205 3.31829 10.6389 5.36084 10.4125C5.46488 10.3972 5.57071 10.3829 5.67832 10.3696C5.57275 10.3865 5.46692 10.4007 5.36084 10.4125C2.36816 10.8562 -0.290212 11.9463 3.19589 15.8271C7.03084 19.7975 8.45144 14.9757 9.18049 12.5315C9.90953 14.9757 10.7487 19.6238 15.0962 15.8271C18.3605 12.5315 15.9928 10.8562 13.0001 10.4125C12.894 10.4007 12.7881 10.3864 12.6827 10.3696C12.7898 10.3829 12.8956 10.3972 13.0001 10.4125C15.0427 10.6397 17.2597 9.93205 17.8831 7.83901C18.0713 7.20559 18.3605 3.40966 18.3605 2.88334C18.3605 2.35549 18.2542 1.45967 17.6705 1.19575C17.1663 0.967779 16.3975 0.72145 14.381 2.14435C12.2757 3.63227 10.012 6.64561 9.18049 8.26205Z" fill="#F4F3EC" fill-opacity="0.5"/>
4
- </g>
5
- <defs>
6
- <clipPath id="clip0_1262_28144">
7
- <rect width="18.36" height="18.36" fill="white"/>
8
- </clipPath>
9
- </defs>
10
- </svg>
@@ -1,10 +0,0 @@
1
- <svg viewBox="0 0 19 19" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <g clip-path="url(#clip0_1262_28144)">
3
- <path d="M9.18049 8.26205C8.34893 6.64484 6.0853 3.63151 3.98002 2.14588C1.96348 0.722215 1.19465 0.968545 0.690518 1.19728C0.106823 1.45967 0.000488281 2.35625 0.000488281 2.88257C0.000488281 3.41042 0.289658 7.20482 0.477848 7.83901C1.10132 9.93205 3.31829 10.6389 5.36084 10.4125C5.46488 10.3972 5.57071 10.3829 5.67832 10.3696C5.57275 10.3865 5.46692 10.4007 5.36084 10.4125C2.36816 10.8562 -0.290212 11.9463 3.19589 15.8271C7.03084 19.7975 8.45144 14.9757 9.18049 12.5315C9.90953 14.9757 10.7487 19.6238 15.0962 15.8271C18.3605 12.5315 15.9928 10.8562 13.0001 10.4125C12.894 10.4007 12.7881 10.3864 12.6827 10.3696C12.7898 10.3829 12.8956 10.3972 13.0001 10.4125C15.0427 10.6397 17.2597 9.93205 17.8831 7.83901C18.0713 7.20559 18.3605 3.40966 18.3605 2.88334C18.3605 2.35549 18.2542 1.45967 17.6705 1.19575C17.1663 0.967779 16.3975 0.72145 14.381 2.14435C12.2757 3.63227 10.012 6.64561 9.18049 8.26205Z" fill="#111213"/>
4
- </g>
5
- <defs>
6
- <clipPath id="clip0_1262_28144">
7
- <rect width="18.36" height="18.36" fill="#111213"/>
8
- </clipPath>
9
- </defs>
10
- </svg>
@@ -1,10 +0,0 @@
1
- <svg viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <g clip-path="url(#clip0_732_7492)">
3
- <path d="M16.6024 3.86939C15.3709 3.29319 14.0541 2.87443 12.6774 2.63599C12.5083 2.94166 12.3108 3.35281 12.1746 3.67987C10.7111 3.45979 9.26113 3.45979 7.82459 3.67987C7.68843 3.35281 7.48642 2.94166 7.31583 2.63599C5.93766 2.87443 4.61934 3.29473 3.38781 3.87244C0.903804 7.6261 0.230432 11.2865 0.567119 14.895C2.21464 16.1253 3.81129 16.8727 5.38099 17.3617C5.76856 16.8283 6.11421 16.2613 6.41199 15.6637C5.84487 15.4482 5.30168 15.1823 4.78844 14.8736C4.9246 14.7727 5.05779 14.6672 5.18646 14.5587C8.31689 16.0229 11.7182 16.0229 14.8112 14.5587C14.9414 14.6672 15.0746 14.7727 15.2092 14.8736C14.6945 15.1838 14.1498 15.4498 13.5827 15.6653C13.8805 16.2613 14.2246 16.8299 14.6137 17.3633C16.1849 16.8742 17.783 16.1268 19.4306 14.895C19.8256 10.7119 18.7557 7.08505 16.6024 3.86939ZM6.83847 12.6758C5.89875 12.6758 5.1281 11.7985 5.1281 10.7302C5.1281 9.66187 5.88229 8.78306 6.83847 8.78306C7.79468 8.78306 8.5653 9.66033 8.54884 10.7302C8.55033 11.7985 7.79468 12.6758 6.83847 12.6758ZM13.1592 12.6758C12.2195 12.6758 11.4488 11.7985 11.4488 10.7302C11.4488 9.66187 12.203 8.78306 13.1592 8.78306C14.1154 8.78306 14.886 9.66033 14.8696 10.7302C14.8696 11.7985 14.1154 12.6758 13.1592 12.6758Z" fill="#F4F3EC" fill-opacity="0.5"/>
4
- </g>
5
- <defs>
6
- <clipPath id="clip0_732_7492">
7
- <rect width="20" height="20" fill="white"/>
8
- </clipPath>
9
- </defs>
10
- </svg>
@@ -1,10 +0,0 @@
1
- <svg viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <g clip-path="url(#clip0_732_7492)">
3
- <path d="M16.6024 3.86939C15.3709 3.29319 14.0541 2.87443 12.6774 2.63599C12.5083 2.94166 12.3108 3.35281 12.1746 3.67987C10.7111 3.45979 9.26113 3.45979 7.82459 3.67987C7.68843 3.35281 7.48642 2.94166 7.31583 2.63599C5.93766 2.87443 4.61934 3.29473 3.38781 3.87244C0.903804 7.6261 0.230432 11.2865 0.567119 14.895C2.21464 16.1253 3.81129 16.8727 5.38099 17.3617C5.76856 16.8283 6.11421 16.2613 6.41199 15.6637C5.84487 15.4482 5.30168 15.1823 4.78844 14.8736C4.9246 14.7727 5.05779 14.6672 5.18646 14.5587C8.31689 16.0229 11.7182 16.0229 14.8112 14.5587C14.9414 14.6672 15.0746 14.7727 15.2092 14.8736C14.6945 15.1838 14.1498 15.4498 13.5827 15.6653C13.8805 16.2613 14.2246 16.8299 14.6137 17.3633C16.1849 16.8742 17.783 16.1268 19.4306 14.895C19.8256 10.7119 18.7557 7.08505 16.6024 3.86939ZM6.83847 12.6758C5.89875 12.6758 5.1281 11.7985 5.1281 10.7302C5.1281 9.66187 5.88229 8.78306 6.83847 8.78306C7.79468 8.78306 8.5653 9.66033 8.54884 10.7302C8.55033 11.7985 7.79468 12.6758 6.83847 12.6758ZM13.1592 12.6758C12.2195 12.6758 11.4488 11.7985 11.4488 10.7302C11.4488 9.66187 12.203 8.78306 13.1592 8.78306C14.1154 8.78306 14.886 9.66033 14.8696 10.7302C14.8696 11.7985 14.1154 12.6758 13.1592 12.6758Z" fill="#111213"/>
4
- </g>
5
- <defs>
6
- <clipPath id="clip0_732_7492">
7
- <rect width="20" height="20" fill="white"/>
8
- </clipPath>
9
- </defs>
10
- </svg>
@@ -1,3 +0,0 @@
1
- <svg viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path id="Vector" d="M16 2.66699C14.2491 2.66699 12.5152 3.01187 10.8976 3.68193C9.2799 4.35199 7.81004 5.33412 6.57193 6.57224C4.07144 9.07272 2.66669 12.4641 2.66669 16.0003C2.66669 21.8937 6.49335 26.8937 11.7867 28.667C12.4534 28.7737 12.6667 28.3603 12.6667 28.0003V25.747C8.97335 26.547 8.18669 23.9603 8.18669 23.9603C7.57335 22.4137 6.70669 22.0003 6.70669 22.0003C5.49335 21.1737 6.80002 21.2003 6.80002 21.2003C8.13335 21.2937 8.84002 22.5737 8.84002 22.5737C10 24.6003 11.96 24.0003 12.72 23.6803C12.84 22.8137 13.1867 22.227 13.56 21.8937C10.6 21.5603 7.49335 20.4137 7.49335 15.3337C7.49335 13.8537 8.00002 12.667 8.86669 11.7203C8.73335 11.387 8.26669 10.0003 9.00002 8.20033C9.00002 8.20033 10.12 7.84033 12.6667 9.56033C13.72 9.26699 14.8667 9.12033 16 9.12033C17.1334 9.12033 18.28 9.26699 19.3334 9.56033C21.88 7.84033 23 8.20033 23 8.20033C23.7334 10.0003 23.2667 11.387 23.1334 11.7203C24 12.667 24.5067 13.8537 24.5067 15.3337C24.5067 20.427 21.3867 21.547 18.4134 21.8803C18.8934 22.2937 19.3334 23.107 19.3334 24.347V28.0003C19.3334 28.3603 19.5467 28.787 20.2267 28.667C25.52 26.8803 29.3334 21.8937 29.3334 16.0003C29.3334 14.2494 28.9885 12.5156 28.3184 10.8979C27.6484 9.2802 26.6662 7.81035 25.4281 6.57224C24.19 5.33412 22.7201 4.35199 21.1025 3.68193C19.4848 3.01187 17.751 2.66699 16 2.66699Z" fill="#F4F3EC" fill-opacity="0.5"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path id="Vector" d="M16 2.66699C14.2491 2.66699 12.5152 3.01187 10.8976 3.68193C9.2799 4.35199 7.81004 5.33412 6.57193 6.57224C4.07144 9.07272 2.66669 12.4641 2.66669 16.0003C2.66669 21.8937 6.49335 26.8937 11.7867 28.667C12.4534 28.7737 12.6667 28.3603 12.6667 28.0003V25.747C8.97335 26.547 8.18669 23.9603 8.18669 23.9603C7.57335 22.4137 6.70669 22.0003 6.70669 22.0003C5.49335 21.1737 6.80002 21.2003 6.80002 21.2003C8.13335 21.2937 8.84002 22.5737 8.84002 22.5737C10 24.6003 11.96 24.0003 12.72 23.6803C12.84 22.8137 13.1867 22.227 13.56 21.8937C10.6 21.5603 7.49335 20.4137 7.49335 15.3337C7.49335 13.8537 8.00002 12.667 8.86669 11.7203C8.73335 11.387 8.26669 10.0003 9.00002 8.20033C9.00002 8.20033 10.12 7.84033 12.6667 9.56033C13.72 9.26699 14.8667 9.12033 16 9.12033C17.1334 9.12033 18.28 9.26699 19.3334 9.56033C21.88 7.84033 23 8.20033 23 8.20033C23.7334 10.0003 23.2667 11.387 23.1334 11.7203C24 12.667 24.5067 13.8537 24.5067 15.3337C24.5067 20.427 21.3867 21.547 18.4134 21.8803C18.8934 22.2937 19.3334 23.107 19.3334 24.347V28.0003C19.3334 28.3603 19.5467 28.787 20.2267 28.667C25.52 26.8803 29.3334 21.8937 29.3334 16.0003C29.3334 14.2494 28.9885 12.5156 28.3184 10.8979C27.6484 9.2802 26.6662 7.81035 25.4281 6.57224C24.19 5.33412 22.7201 4.35199 21.1025 3.68193C19.4848 3.01187 17.751 2.66699 16 2.66699Z" fill="#111213"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg viewBox="0 0 21 21" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path fill-rule="evenodd" clip-rule="evenodd" d="M1.93662 1.97661C1.99228 2.05417 3.28118 3.88651 4.80085 6.04846C6.32053 8.21041 7.72608 10.2098 7.92433 10.4915C8.12256 10.7732 8.28475 11.0093 8.28475 11.0162C8.28475 11.0232 8.21093 11.1121 8.12071 11.2138C8.0305 11.3155 7.77637 11.6035 7.55603 11.8537C7.33566 12.1039 6.9642 12.5257 6.73053 12.7909C6.49688 13.0562 6.08582 13.5229 5.81705 13.8282C5.5483 14.1335 5.065 14.6823 4.74306 15.0479C3.74733 16.1784 3.60364 16.3417 2.84567 17.204C2.44094 17.6644 2.05283 18.1046 1.98322 18.1822C1.91361 18.2599 1.85665 18.3315 1.85665 18.3415C1.85665 18.3531 2.11087 18.3596 2.57289 18.3596H3.28911L4.07653 17.4633C4.50961 16.9704 4.93683 16.4852 5.02589 16.3851C5.21849 16.1686 6.68727 14.4995 6.81072 14.3567C6.85799 14.302 6.92665 14.2242 6.9633 14.1838C6.99997 14.1434 7.28894 13.8155 7.60546 13.4551C7.92196 13.0948 8.18963 12.7912 8.20023 12.7804C8.21086 12.7696 8.37841 12.5792 8.5726 12.3573C8.76678 12.1354 8.93166 11.9538 8.93898 11.9538C8.94632 11.9538 9.94381 13.3644 11.1557 15.0884C12.3675 16.8125 13.3806 18.2536 13.4071 18.2909L13.4552 18.3588L15.912 18.3592C17.9323 18.3595 18.3671 18.3553 18.3594 18.3357C18.3512 18.3148 17.1741 16.6379 14.1543 12.3451C11.9805 9.2547 11.6914 8.83942 11.6997 8.81834C11.7078 8.79785 12.0039 8.4596 13.9505 6.24713C14.2844 5.86763 14.7447 5.34419 14.9734 5.08396C15.2021 4.82372 15.433 4.56167 15.4865 4.50161C15.54 4.44156 15.8214 4.12218 16.1118 3.79188C16.4022 3.46158 16.8958 2.90035 17.2088 2.5447C17.5218 2.18905 17.7894 1.88402 17.8034 1.86682C17.8275 1.83739 17.7866 1.83557 17.1015 1.83557H16.374L16.0504 2.20409C15.6198 2.69453 14.8413 3.57894 14.6202 3.82886C14.5226 3.93929 14.4008 4.07807 14.3495 4.13725C14.2983 4.19643 14.1972 4.3108 14.1249 4.39142C14.0526 4.47204 13.6881 4.88605 13.315 5.31143C12.9419 5.73682 12.6316 6.08895 12.6253 6.09396C12.6191 6.09896 12.5391 6.18954 12.4476 6.29525C12.2877 6.48014 12.1249 6.66522 11.3782 7.51096C11.0505 7.88221 11.0336 7.89815 11.006 7.86403C10.9901 7.84437 10.0297 6.48 8.87166 4.83211L6.76623 1.83595L4.30084 1.83575L1.83545 1.83557L1.93662 1.97661ZM3.86082 2.95917C3.87934 2.98677 4.33997 3.63174 4.88445 4.39242C5.91711 5.83511 9.97501 11.5077 12.5847 15.1567C13.4186 16.3227 14.1111 17.2871 14.1236 17.2997C14.1413 17.3177 14.3842 17.3216 15.2582 17.3179L16.3701 17.3132L13.4603 13.2459C11.8599 11.0088 9.5428 7.77002 8.31117 6.04846L6.07185 2.91837L4.94952 2.91367L3.82719 2.90898L3.86082 2.95917Z" fill="#F4F3EC" fill-opacity="0.5"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg viewBox="0 0 21 21" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path fill-rule="evenodd" clip-rule="evenodd" d="M1.93662 1.97661C1.99228 2.05417 3.28118 3.88651 4.80085 6.04846C6.32053 8.21041 7.72608 10.2098 7.92433 10.4915C8.12256 10.7732 8.28475 11.0093 8.28475 11.0162C8.28475 11.0232 8.21093 11.1121 8.12071 11.2138C8.0305 11.3155 7.77637 11.6035 7.55603 11.8537C7.33566 12.1039 6.9642 12.5257 6.73053 12.7909C6.49688 13.0562 6.08582 13.5229 5.81705 13.8282C5.5483 14.1335 5.065 14.6823 4.74306 15.0479C3.74733 16.1784 3.60364 16.3417 2.84567 17.204C2.44094 17.6644 2.05283 18.1046 1.98322 18.1822C1.91361 18.2599 1.85665 18.3315 1.85665 18.3415C1.85665 18.3531 2.11087 18.3596 2.57289 18.3596H3.28911L4.07653 17.4633C4.50961 16.9704 4.93683 16.4852 5.02589 16.3851C5.21849 16.1686 6.68727 14.4995 6.81072 14.3567C6.85799 14.302 6.92665 14.2242 6.9633 14.1838C6.99997 14.1434 7.28894 13.8155 7.60546 13.4551C7.92196 13.0948 8.18963 12.7912 8.20023 12.7804C8.21086 12.7696 8.37841 12.5792 8.5726 12.3573C8.76678 12.1354 8.93166 11.9538 8.93898 11.9538C8.94632 11.9538 9.94381 13.3644 11.1557 15.0884C12.3675 16.8125 13.3806 18.2536 13.4071 18.2909L13.4552 18.3588L15.912 18.3592C17.9323 18.3595 18.3671 18.3553 18.3594 18.3357C18.3512 18.3148 17.1741 16.6379 14.1543 12.3451C11.9805 9.2547 11.6914 8.83942 11.6997 8.81834C11.7078 8.79785 12.0039 8.4596 13.9505 6.24713C14.2844 5.86763 14.7447 5.34419 14.9734 5.08396C15.2021 4.82372 15.433 4.56167 15.4865 4.50161C15.54 4.44156 15.8214 4.12218 16.1118 3.79188C16.4022 3.46158 16.8958 2.90035 17.2088 2.5447C17.5218 2.18905 17.7894 1.88402 17.8034 1.86682C17.8275 1.83739 17.7866 1.83557 17.1015 1.83557H16.374L16.0504 2.20409C15.6198 2.69453 14.8413 3.57894 14.6202 3.82886C14.5226 3.93929 14.4008 4.07807 14.3495 4.13725C14.2983 4.19643 14.1972 4.3108 14.1249 4.39142C14.0526 4.47204 13.6881 4.88605 13.315 5.31143C12.9419 5.73682 12.6316 6.08895 12.6253 6.09396C12.6191 6.09896 12.5391 6.18954 12.4476 6.29525C12.2877 6.48014 12.1249 6.66522 11.3782 7.51096C11.0505 7.88221 11.0336 7.89815 11.006 7.86403C10.9901 7.84437 10.0297 6.48 8.87166 4.83211L6.76623 1.83595L4.30084 1.83575L1.83545 1.83557L1.93662 1.97661ZM3.86082 2.95917C3.87934 2.98677 4.33997 3.63174 4.88445 4.39242C5.91711 5.83511 9.97501 11.5077 12.5847 15.1567C13.4186 16.3227 14.1111 17.2871 14.1236 17.2997C14.1413 17.3177 14.3842 17.3216 15.2582 17.3179L16.3701 17.3132L13.4603 13.2459C11.8599 11.0088 9.5428 7.77002 8.31117 6.04846L6.07185 2.91837L4.94952 2.91367L3.82719 2.90898L3.86082 2.95917Z" fill="#111213"/>
3
- </svg>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path fill="currentColor" d="M5.202 2.857C7.954 4.922 10.913 9.11 12 11.358c1.087-2.247 4.046-6.436 6.798-8.501C20.783 1.366 24 .213 24 3.883c0 .732-.42 6.156-.667 7.037c-.856 3.061-3.978 3.842-6.755 3.37c4.854.826 6.089 3.562 3.422 6.299c-5.065 5.196-7.28-1.304-7.847-2.97c-.104-.305-.152-.448-.153-.327c0-.121-.05.022-.153.327c-.568 1.666-2.782 8.166-7.847 2.97c-2.667-2.737-1.432-5.473 3.422-6.3c-2.777.473-5.899-.308-6.755-3.369C.42 10.04 0 4.615 0 3.883c0-3.67 3.217-2.517 5.202-1.026"/>
4
- </svg>
5
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path fill="currentColor" d="M12 2A10 10 0 0 0 2 12c0 4.42 2.87 8.17 6.84 9.5c.5.08.66-.23.66-.5v-1.69c-2.77.6-3.36-1.34-3.36-1.34c-.46-1.16-1.11-1.47-1.11-1.47c-.91-.62.07-.6.07-.6c1 .07 1.53 1.03 1.53 1.03c.87 1.52 2.34 1.07 2.91.83c.09-.65.35-1.09.63-1.34c-2.22-.25-4.55-1.11-4.55-4.92c0-1.11.38-2 1.03-2.71c-.1-.25-.45-1.29.1-2.64c0 0 .84-.27 2.75 1.02c.79-.22 1.65-.33 2.5-.33s1.71.11 2.5.33c1.91-1.29 2.75-1.02 2.75-1.02c.55 1.35.2 2.39.1 2.64c.65.71 1.03 1.6 1.03 2.71c0 3.82-2.34 4.66-4.57 4.91c.36.31.69.92.69 1.85V21c0 .27.16.59.67.5C19.14 20.16 22 16.42 22 12A10 10 0 0 0 12 2"/>
4
- </svg>
5
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 200 40" fill="white">
3
- <text x="10" y="30" font-family="monospace" font-size="24">LOGO</text>
4
- </svg>
5
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path fill="currentColor" d="M22.46 6c-.77.35-1.6.58-2.46.69c.88-.53 1.56-1.37 1.88-2.38c-.83.5-1.75.85-2.72 1.05C18.37 4.5 17.26 4 16 4c-2.35 0-4.27 1.92-4.27 4.29c0 .34.04.67.11.98C8.28 9.09 5.11 7.38 3 4.79c-.37.63-.58 1.37-.58 2.15c0 1.49.75 2.81 1.91 3.56c-.71 0-1.37-.2-1.95-.5v.03c0 2.08 1.48 3.82 3.44 4.21a4.2 4.2 0 0 1-1.93.07a4.28 4.28 0 0 0 4 2.98a8.52 8.52 0 0 1-5.33 1.84q-.51 0-1.02-.06C3.44 20.29 5.7 21 8.12 21C16 21 20.33 14.46 20.33 8.79c0-.19 0-.37-.01-.56c.84-.6 1.56-1.36 2.14-2.23"/>
4
- </svg>
5
- </template>
@@ -1,8 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M21,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,11,21,11z" />
4
- <path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z" />
5
- <path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z" />
6
- <path d="M21,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,19,21,19z" />
7
- </svg>
8
- </template>
@@ -1,8 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z" />
4
- <path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z" />
5
- <path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z" />
6
- <path d="M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z" />
7
- </svg>
8
- </template>
@@ -1,8 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M21,11H7c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S21.6,11,21,11z" />
4
- <path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z" />
5
- <path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z" />
6
- <path d="M21,19H7c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S21.6,19,21,19z" />
7
- </svg>
8
- </template>
@@ -1,7 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3
- <path
4
- d="M19,11H7.4l5.3-5.3c0.4-0.4,0.4-1,0-1.4s-1-0.4-1.4,0l-7,7c-0.1,0.1-0.2,0.2-0.2,0.3c-0.1,0.2-0.1,0.5,0,0.8c0.1,0.1,0.1,0.2,0.2,0.3l7,7c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3c0.4-0.4,0.4-1,0-1.4L7.4,13H19c0.6,0,1-0.4,1-1S19.6,11,19,11z"
5
- />
6
- </svg>
7
- </template>
@@ -1,7 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3
- <path
4
- d="M19.9,12.4c0.1-0.2,0.1-0.5,0-0.8c-0.1-0.1-0.1-0.2-0.2-0.3l-7-7c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l5.3,5.3H5c-0.6,0-1,0.4-1,1s0.4,1,1,1h11.6l-5.3,5.3c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l7-7C19.8,12.6,19.9,12.5,19.9,12.4z"
5
- />
6
- </svg>
7
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z" />
4
- </svg>
5
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M15,19c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4l6-6c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4L10.4,12l5.3,5.3c0.4,0.4,0.4,1,0,1.4C15.5,18.9,15.3,19,15,19z" />
4
- </svg>
5
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z" />
4
- </svg>
5
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M18,16c-0.3,0-0.5-0.1-0.7-0.3L12,10.4l-5.3,5.3c-0.4,0.4-1,0.4-1.4,0s-0.4-1,0-1.4l6-6c0.4-0.4,1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4C18.5,15.9,18.3,16,18,16z" />
4
- </svg>
5
- </template>
@@ -1,6 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3
- <path d="M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z" />
4
- <path d="M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z" />
5
- </svg>
6
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3
- <path d="M12,22.2c-0.3,0-0.5-0.1-0.7-0.3l-8.8-8.8c-2.5-2.5-2.5-6.7,0-9.2c2.5-2.5,6.7-2.5,9.2,0L12,4.3l0.4-0.4c0,0,0,0,0,0C13.6,2.7,15.2,2,16.9,2c0,0,0,0,0,0c1.7,0,3.4,0.7,4.6,1.9l0,0c1.2,1.2,1.9,2.9,1.9,4.6c0,1.7-0.7,3.4-1.9,4.6l-8.8,8.8C12.5,22.1,12.3,22.2,12,22.2zM7,4C5.9,4,4.7,4.4,3.9,5.3c-1.8,1.8-1.8,4.6,0,6.4l8.1,8.1l8.1-8.1c0.9-0.9,1.3-2,1.3-3.2c0-1.2-0.5-2.3-1.3-3.2l0,0C19.3,4.5,18.2,4,17,4c0,0,0,0,0,0c-1.2,0-2.3,0.5-3.2,1.3c0,0,0,0,0,0l-1.1,1.1c-0.4,0.4-1,0.4-1.4,0l-1.1-1.1C9.4,4.4,8.2,4,7,4z" />
4
- </svg>
5
- </template>
@@ -1,9 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M0 0h24v24H0z" fill="none"></path>
4
- <path
5
- d=" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z "
6
- class="css-c4d79v"
7
- ></path>
8
- </svg>
9
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3
- <path d="M22,13H2a1,1,0,0,1,0-2H22a1,1,0,0,1,0,2Z" />
4
- </svg>
5
- </template>
@@ -1,6 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24">
3
- <path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z" />
4
- <path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z" />
5
- </svg>
6
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z" />
4
- </svg>
5
- </template>
@@ -1,7 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <circle cx="12" cy="12" r="2" />
4
- <circle cx="19" cy="12" r="2" />
5
- <circle cx="5" cy="12" r="2" />
6
- </svg>
7
- </template>
@@ -1,5 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M18.9,10.9h-6v-6c0-0.6-0.4-1-1-1s-1,0.4-1,1v6h-6c-0.6,0-1,0.4-1,1s0.4,1,1,1h6v6c0,0.6,0.4,1,1,1s1-0.4,1-1v-6h6c0.6,0,1-0.4,1-1S19.5,10.9,18.9,10.9z" />
4
- </svg>
5
- </template>
@@ -1,6 +0,0 @@
1
- <template>
2
- <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3
- <path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z" />
4
- <path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z" />
5
- </svg>
6
- </template>
@@ -1,13 +0,0 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z" />
4
- <path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z" />
5
- <path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z" />
6
- <path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z" />
7
- <path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z" />
8
- <path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z" />
9
- <path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z" />
10
- <path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z" />
11
- <path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z" />
12
- </svg>
13
- </template>