Skip to content
This repository was archived by the owner on May 1, 2025. It is now read-only.

Commit 74383a4

Browse files
committed
feat: feature flag to hide the navigation input
1 parent 818b8c0 commit 74383a4

File tree

9 files changed

+51
-3
lines changed

9 files changed

+51
-3
lines changed

components/PanelPreview.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<script setup lang="ts">
22
const play = usePlaygroundStore()
33
const preview = usePreviewStore()
4+
const guide = useGuideStore()
45
56
const inputUrl = ref<string>('')
67
const inner = ref<{ iframe?: HTMLIFrameElement | undefined }>()
@@ -49,7 +50,7 @@ function navigate() {
4950
<div i-ph-globe-duotone />
5051
<span text-sm>Preview</span>
5152
</div>
52-
<div flex px-2 py1>
53+
<div v-if="guide.features.navigation" flex px-2 py1>
5354
<div
5455
flex="~ items-center justify-center"
5556
mx-auto min-w-100 w-full rounded bg-faded px2 text-sm

content/1.vue/.template/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,6 @@ export const meta: GuideMeta = {
55
features: {
66
terminal: false,
77
fileTree: false,
8+
navigation: false,
89
},
910
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { GuideMeta } from '~/types/guides'
2+
3+
export const meta: GuideMeta = {
4+
startingFile: 'app.vue',
5+
features: {
6+
terminal: false,
7+
fileTree: false,
8+
navigation: false,
9+
},
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { GuideMeta } from '~/types/guides'
2+
3+
export const meta: GuideMeta = {
4+
startingFile: 'app.vue',
5+
features: {
6+
terminal: false,
7+
fileTree: false,
8+
navigation: false,
9+
},
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { GuideMeta } from '~/types/guides'
2+
3+
export const meta: GuideMeta = {
4+
startingFile: 'app.vue',
5+
features: {
6+
terminal: false,
7+
fileTree: false,
8+
navigation: false,
9+
},
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { GuideMeta } from '~/types/guides'
2+
3+
export const meta: GuideMeta = {
4+
startingFile: 'app.vue',
5+
features: {
6+
terminal: false,
7+
fileTree: false,
8+
navigation: false,
9+
},
10+
}

content/2.concepts/2.app-vue/.template/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,6 @@ export const meta: GuideMeta = {
44
startingFile: 'app.vue',
55
features: {
66
fileTree: true,
7+
navigation: false,
78
},
89
}

stores/guide.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import type { Raw } from 'vue'
22
import type { GuideMeta, PlaygroundFeatures } from '~/types/guides'
33

4-
const defaultFeatures: PlaygroundFeatures = Object.freeze({
4+
const defaultFeatures = Object.freeze(<PlaygroundFeatures>{
55
fileTree: false,
66
terminal: false,
7+
navigation: true,
78
})
89

910
export const useGuideStore = defineStore('guide', () => {
@@ -46,7 +47,10 @@ export const useGuideStore = defineStore('guide', () => {
4647
preview.location.fullPath = guide?.startingUrl || '/'
4748
preview.updateUrl()
4849

49-
features.value = guide?.features || { ...defaultFeatures }
50+
features.value = {
51+
...defaultFeatures,
52+
...guide?.features,
53+
}
5054
currentGuide.value = guide
5155
showingSolution.value = withSolution
5256

types/guides.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,5 @@ export interface PlaygroundFeatures {
1616
terminal?: boolean
1717
fileTree?: boolean
1818
download?: boolean
19+
navigation?: boolean
1920
}

0 commit comments

Comments
 (0)