Skip to content

Commit 9b70ae0

Browse files
refactor(views): rename pages under views to *View
1 parent e7c4e67 commit 9b70ae0

34 files changed

Lines changed: 161 additions & 156 deletions

‎src/App.vue‎

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ import { addNewProjectsInWorker } from '~/services/projectScannerService'
1313
import { useProjectsStore } from '~/stores/projectsStore'
1414
import { useSettingsStore } from '~/stores/settingsStore'
1515
import { applyTheme } from '~/utils/theme'
16-
17-
import Home from './views/Home/Home.vue'
16+
import Home from '~/views/HomeView/HomeView.vue'
1817
1918
const projects = useProjectsStore()
2019
const settings = useSettingsStore()
@@ -23,8 +22,12 @@ const { locale } = useI18n()
2322
const activatedView: Ref<ViewEnum> = ref(ViewEnum.Home)
2423
const viewComponents: Record<ViewEnum, Component> = {
2524
[ViewEnum.Home]: Home,
26-
[ViewEnum.NewProject]: defineAsyncComponent(() => import('./views/ProjectConfig/ProjectConfig.vue')),
27-
[ViewEnum.Settings]: defineAsyncComponent(() => import('./views/Settings/Settings.vue')),
25+
[ViewEnum.ProjectEditor]: defineAsyncComponent(
26+
() => import('~/views/ProjectEditorView/ProjectEditorView.vue'),
27+
),
28+
[ViewEnum.Settings]: defineAsyncComponent(
29+
() => import('~/views/SettingsView/SettingsView.vue'),
30+
),
2831
}
2932
3033
async function applyLanguage(lang: LanguageEnum) {
@@ -36,10 +39,7 @@ onMounted(async () => {
3639
// settings
3740
(async () => {
3841
await settings.loadSettings()
39-
await Promise.all([
40-
applyTheme(settings.theme),
41-
applyLanguage(settings.language),
42-
])
42+
await Promise.all([applyTheme(settings.theme), applyLanguage(settings.language)])
4343
})(),
4444
4545
// projects
@@ -54,11 +54,7 @@ provide('activatedView', activatedView)
5454
</script>
5555

5656
<template>
57-
<JeFrame
58-
size-full
59-
flex="~ col"
60-
caret="theme-text-caret" select-none
61-
>
57+
<JeFrame size-full flex="~ col" caret="theme-text-caret" select-none>
6258
<WindowHeader shrink-0 />
6359
<KeepAlive include="Home">
6460
<Component :is="viewComponents[activatedView]" grow />

‎src/components/NoIdePathDialog/NoIdePathDialog.vue‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { JeButton, JePopup } from 'jetv-ui'
33
import { useI18n } from 'vue-i18n'
44
55
import { SettingPageEnum, ViewEnum } from '~/constants/appEnums'
6-
import { activatedPage } from '~/views/Settings/SettingsProvider'
6+
import { activatedPage } from '~/views/SettingsView'
77
88
import { hideNoIdePathDialog, isDialogVisible } from './NoIdePathDialogProvider'
99
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { showNoIdePathDialog } from './NoIdePathDialogProvider'

‎src/components/ProjectCard/LanguageButton.vue‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ function handleClick() {
2828
<JeTransparentButton
2929
class="lang-button"
3030
flex="~ items-center" gap="5px"
31-
@mousedown.stop @mouseup.stop
3231
>
3332
<JeColorIcon type="circle" :custom-color="projectItem.mainLangColor ?? '#ccc'" />
3433
{{ projectItem.mainLang }}

‎src/components/ProjectCard/LicenseButton.vue‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ function handleClick(license: LicenseEnum) {
2828
<JeTransparentButton
2929
class="license-button"
3030
flex="~ items-center" gap="5px"
31-
@mousedown.stop @mouseup.stop
3231
>
3332
<div
3433
size="13px"
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export interface OpenButtonExpose {
2+
handleClick: () => void
3+
}

‎src/components/ProjectCard/ProjectCard.vue‎

Lines changed: 8 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import { initializeUpdateProjectState } from '~/views/ProjectEditorView'
1313
1414
import LanguageButton from './LanguageButton.vue'
1515
import LicenseButton from './LicenseButton.vue'
16+
import type { OpenButtonExpose } from './OpenButton.exposed'
1617
import OpenButton from './OpenButton.vue'
1718
1819
const props = defineProps<{
@@ -36,14 +37,14 @@ const projectExists = computed(() => projectItem.value.isExists)
3637
const { t } = useI18n()
3738
3839
const projectCardRef = ref<HTMLDivElement | null>(null)
39-
const openButtonRef = ref<HTMLDivElement | null>(null)
40-
const projectCardActive = ref(false)
40+
const openButtonRef = ref<OpenButtonExpose | null>(null)
41+
const projectCardActive = ref<boolean>(false)
4142
const langGroup = ref(projectLangGroup.value)
4243
43-
const formattedPath = ref('')
44+
const formattedPath = computed(() => window.api.formatPath(projectPath.value))
4445
45-
async function formatPath(path: string) {
46-
return window.api.formatPath(path)
46+
function handleClick() {
47+
openButtonRef.value?.handleClick()
4748
}
4849
4950
function handleDragStart(event: DragEvent) {
@@ -53,10 +54,6 @@ function handleDragStart(event: DragEvent) {
5354
}
5455
}
5556
56-
function handleClick() {
57-
openButtonRef.value?.handleClick()
58-
}
59-
6057
watch(
6158
() => props.projectItem.langGroup,
6259
(newLangGroup, oldLangGroup) => {
@@ -67,10 +64,6 @@ watch(
6764
{ deep: true },
6865
) // 使用 deep 监听 langGroup 的内部变化
6966
70-
onMounted(async () => {
71-
formattedPath.value = await formatPath(projectPath.value)
72-
})
73-
7467
// ==================== More Button ====================
7568
function getDeleteLabel() {
7669
if (!projectExists.value) {
@@ -141,8 +134,8 @@ function showMenu() {
141134
cursor-pointer
142135
tabindex="0"
143136
draggable="true"
144-
@dragstart="handleDragStart"
145137
@click.self="handleClick"
138+
@dragstart="handleDragStart"
146139
>
147140
<div
148141
:class="{ 'opacity-30': !projectExists }"
@@ -184,11 +177,7 @@ function showMenu() {
184177
text="secondary"
185178
>
186179
{{ projectKind === ProjectKind.FORK ? 'Forked from' : 'Cloned from' }}
187-
<JeLink
188-
v-if="projectFromUrl"
189-
type="web"
190-
:on-click="() => openLink(projectFromUrl)"
191-
>
180+
<JeLink v-if="projectFromUrl" type="web" :on-click="() => openLink(projectFromUrl)">
192181
{{ projectFromName || projectFromUrl }}
193182
</JeLink>
194183
<span v-else>{{ projectFromName }}</span>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { showRemoveDialog } from './RemoveProjectDialogProvider'

‎src/components/StateBar/index.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { clearState, setState } from './StateBarProvider'

‎src/constants/appEnums.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
export enum ViewEnum {
22
Home = 'Home',
3-
NewProject = 'NewProject',
3+
ProjectEditor = 'ProjectEditor',
44
Settings = 'Settings',
55
}
66

0 commit comments

Comments
 (0)