|
|
@@ -28,7 +28,22 @@
|
|
|
</div>
|
|
|
<div class="w-full flex flex-col">
|
|
|
<ul class="list-none p-0 m-0 text-12px text-text-secondary">
|
|
|
- <li class="sidebar-menu-item"><LuSettings2 /></li>
|
|
|
+ <li class="sidebar-menu-item">
|
|
|
+ <el-popover placement="right" v-model:visible="showPopoverMenu" trigger="click">
|
|
|
+ <template #reference>
|
|
|
+ <span><LuSettings2 /></span>
|
|
|
+ </template>
|
|
|
+ <div class="text-12px" @click="showPopoverMenu = false">
|
|
|
+ <div class="leading-24px px-12px cursor-pointer hover:bg-accent-blue">项目设置</div>
|
|
|
+ <div
|
|
|
+ class="leading-24px px-12px cursor-pointer hover:bg-accent-blue"
|
|
|
+ @click="appStore.showGeneralModal = true"
|
|
|
+ >
|
|
|
+ 通用设置
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ </li>
|
|
|
</ul>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -53,19 +68,21 @@
|
|
|
<Schema />
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <GeneralSettingModal />
|
|
|
</template>
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
import { ref, h } from 'vue'
|
|
|
import { useI18n } from 'vue-i18n'
|
|
|
+import { useAppStore } from '@/store/modules/app'
|
|
|
|
|
|
-import { SplitterCollapse, SplitterCollapseItem } from '@/components/SplitterCollapse'
|
|
|
import { LuFiles, LuBoxes, LuSettings2, LuInbox, LuCode2 } from 'vue-icons-plus/lu'
|
|
|
import Hierarchy from './Hierarchy.vue'
|
|
|
import Libary from './Libary.vue'
|
|
|
import Schema from './Schema.vue'
|
|
|
import Resource from './Resource.vue'
|
|
|
import Method from './Method.vue'
|
|
|
+import GeneralSettingModal from '../modals/settingModal/GeneralSettingModal.vue'
|
|
|
|
|
|
const { t } = useI18n()
|
|
|
|
|
|
@@ -98,6 +115,8 @@ const sidebarMenu = [
|
|
|
]
|
|
|
|
|
|
const activeMenu = ref('file')
|
|
|
+const appStore = useAppStore()
|
|
|
+const showPopoverMenu = ref(false)
|
|
|
</script>
|
|
|
|
|
|
<style scoped lang="less">
|
|
|
@@ -106,6 +125,13 @@ const activeMenu = ref('file')
|
|
|
padding: 0 12px;
|
|
|
box-sizing: border-box;
|
|
|
}
|
|
|
+ .el-menu-item {
|
|
|
+ padding: 0;
|
|
|
+ height: 32px;
|
|
|
+ }
|
|
|
+ .el-popper {
|
|
|
+ padding: 4px 12px;
|
|
|
+ }
|
|
|
}
|
|
|
.sidebar-menu-item {
|
|
|
width: 100%;
|