⚡ 优化前端组件名称定义.
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
</div>
|
||||
<!-- 顶部菜单 -->
|
||||
<div class="center-side">
|
||||
<Menu v-if="topMenu" />
|
||||
<menu-tree v-if="topMenu" />
|
||||
</div>
|
||||
<!-- 右侧操作 -->
|
||||
<ul class="right-side">
|
||||
@@ -214,8 +214,8 @@
|
||||
import { preferenceTipsKey } from './const';
|
||||
import { REDIRECT_ROUTE_NAME, routerToTag } from '@/router/constants';
|
||||
import { openWindow } from '@/utils';
|
||||
import Menu from '@/components/system/menu/tree/index.vue';
|
||||
import UpdatePasswordModal from '@/components/user/user/update-password-modal.vue';
|
||||
import MenuTree from '@/components/system/menu/tree/index.vue';
|
||||
import UpdatePasswordModal from '@/components/user/user/update-password-modal/index.vue';
|
||||
import MessageBox from '@/components/system/message-box/index.vue';
|
||||
|
||||
const tipsStore = useTipsStore();
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
defaultVal: appStore.topMenu,
|
||||
},
|
||||
{
|
||||
name: '底部',
|
||||
name: '底部页脚',
|
||||
key: 'footer',
|
||||
defaultVal: appStore.footer
|
||||
},
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
<script lang="ts" setup>
|
||||
import type { TreeNodeData } from '@arco-design/web-vue';
|
||||
import { computed, nextTick, onMounted, ref } from 'vue';
|
||||
import { createGroupGroupPrefix, rootId } from './types/const';
|
||||
import { createGroupGroupPrefix, rootId } from '../const';
|
||||
import { findNode, findParentNode, moveNode } from '@/utils/tree';
|
||||
import { createHostGroup, deleteHostGroup, updateHostGroupName, moveHostGroup } from '@/api/asset/host-group';
|
||||
import { isString } from '@/utils/is';
|
||||
@@ -10,10 +10,10 @@
|
||||
<tbody>
|
||||
<a-checkbox-group v-model="checkedKeys" style="display: contents;">
|
||||
<template v-for="parentMenu in menuData" :key="parentMenu.id">
|
||||
<template v-for="(childrenMenu, index) in parentMenu.children" :key="childrenMenu.id">
|
||||
<template v-for="(childrenMenu, i) in parentMenu.children" :key="childrenMenu.id">
|
||||
<tr>
|
||||
<!-- 父菜单 -->
|
||||
<td v-if="index === 0" :rowspan="parentMenu.children.length">
|
||||
<td v-if="i === 0" :rowspan="parentMenu.children.length">
|
||||
<a-checkbox :value="parentMenu.id">
|
||||
{{ parentMenu.name }}
|
||||
</a-checkbox>
|
||||
@@ -8,6 +8,7 @@
|
||||
import useMenuTree from './use-menu-tree';
|
||||
|
||||
export default defineComponent({
|
||||
name: 'menuTree',
|
||||
emit: ['collapse'],
|
||||
setup() {
|
||||
const appStore = useAppStore();
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
:hide-trigger="true"
|
||||
@collapse="setCollapsed">
|
||||
<div class="menu-wrapper">
|
||||
<Menu />
|
||||
<menu-tree />
|
||||
</div>
|
||||
</a-layout-sider>
|
||||
<!-- 顶部菜单栏 -->
|
||||
@@ -29,7 +29,7 @@
|
||||
mask-closable
|
||||
:closable="false"
|
||||
@cancel="drawerCancel">
|
||||
<Menu style="padding: 12px 16px;" />
|
||||
<menu-tree style="padding: 12px 16px;" />
|
||||
</a-drawer>
|
||||
<!-- body -->
|
||||
<a-layout class="layout-content" :style="paddingStyle">
|
||||
@@ -57,13 +57,13 @@
|
||||
import { computed, onMounted, provide, ref } from 'vue';
|
||||
import { useRoute, useRouter } from 'vue-router';
|
||||
import { useAppStore, useUserStore } from '@/store';
|
||||
import Menu from '@/components/system/menu/tree/index.vue';
|
||||
import useResponsive from '@/hooks/responsive';
|
||||
import { toggleDrawerMenuKey } from '@/types/symbol';
|
||||
import PageLayout from './page-layout.vue';
|
||||
import MenuTree from '@/components/system/menu/tree/index.vue';
|
||||
import NavBar from '@/components/app/navbar/index.vue';
|
||||
import Footer from '@/components/app/footer/index.vue';
|
||||
import TabBar from '@/components/app/tab-bar/index.vue';
|
||||
import useResponsive from '@/hooks/responsive';
|
||||
import PageLayout from './page-layout.vue';
|
||||
import { toggleDrawerMenuKey } from '@/types/symbol';
|
||||
|
||||
const isInit = ref(false);
|
||||
const appStore = useAppStore();
|
||||
|
||||
@@ -6,7 +6,7 @@ const SYSTEM: AppRouteRecordRaw = {
|
||||
component: DEFAULT_LAYOUT,
|
||||
children: [
|
||||
{
|
||||
name: 'menu',
|
||||
name: 'systemMenu',
|
||||
path: '/menu',
|
||||
component: () => import('@/views/system/menu/index.vue'),
|
||||
},
|
||||
|
||||
@@ -78,8 +78,8 @@
|
||||
import { getHostConnectLogCount, clearHostConnectLog } from '@/api/asset/host-connect-log';
|
||||
import { Message, Modal } from '@arco-design/web-vue';
|
||||
import { useDictStore } from '@/store';
|
||||
import UserSelector from '@/components/user/user/user-selector.vue';
|
||||
import HostSelector from '@/components/asset/host/host-selector.vue';
|
||||
import UserSelector from '@/components/user/user/selector/index.vue';
|
||||
import HostSelector from '@/components/asset/host/selector/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
@@ -196,8 +196,8 @@
|
||||
import columns from '../types/table.columns';
|
||||
import useLoading from '@/hooks/loading';
|
||||
import useCopy from '@/hooks/copy';
|
||||
import UserSelector from '@/components/user/user/user-selector.vue';
|
||||
import HostSelector from '@/components/asset/host/host-selector.vue';
|
||||
import UserSelector from '@/components/user/user/selector/index.vue';
|
||||
import HostSelector from '@/components/asset/host/selector/index.vue';
|
||||
import ConnectLogClearModal from './connect-log-clear-modal.vue';
|
||||
import ConnectLogDetailDrawer from './connect-log-detail-drawer.vue';
|
||||
|
||||
|
||||
@@ -181,9 +181,9 @@
|
||||
import columns from '../types/table.columns';
|
||||
import useLoading from '@/hooks/loading';
|
||||
import useCopy from '@/hooks/copy';
|
||||
import UserSelector from '@/components/user/user/user-selector.vue';
|
||||
import HostSelector from '@/components/asset/host/host-selector.vue';
|
||||
import { permission10toString } from '@/utils/file';
|
||||
import UserSelector from '@/components/user/user/selector/index.vue';
|
||||
import HostSelector from '@/components/asset/host/selector/index.vue';
|
||||
|
||||
const tableRenderData = ref<HostSftpLogQueryResponse[]>([]);
|
||||
const selectedKeys = ref<number[]>([]);
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
import useLoading from '@/hooks/loading';
|
||||
import { getAuthorizedHostGroup, grantHostGroup } from '@/api/asset/asset-data-grant';
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import HostGroupTree from '@/components/asset/host-group/host-group-tree.vue';
|
||||
import HostGroupTree from '@/components/asset/host-group/tree/index.vue';
|
||||
import HostList from './host-list.vue';
|
||||
import GrantLayout from './grant-layout.vue';
|
||||
|
||||
|
||||
@@ -155,8 +155,8 @@
|
||||
import { Message, Modal } from '@arco-design/web-vue';
|
||||
import usePermission from '@/hooks/permission';
|
||||
import useCopy from '@/hooks/copy';
|
||||
import HostKeySelector from '@/components/asset/host-key/host-key-selector.vue';
|
||||
import { GrantKey, GrantRouteName } from '@/views/asset/grant/types/const';
|
||||
import HostKeySelector from '@/components/asset/host-key/selector/index.vue';
|
||||
|
||||
const emits = defineEmits(['openAdd', 'openUpdate', 'openKeyView']);
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
import formRules from '../types/form.rules';
|
||||
import { createHostIdentity, updateHostIdentity } from '@/api/asset/host-identity';
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import HostKeySelector from '@/components/asset/host-key/host-key-selector.vue';
|
||||
import HostKeySelector from '@/components/asset/host-key/selector/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
@@ -148,7 +148,7 @@
|
||||
import useLoading from '@/hooks/loading';
|
||||
import columns from '../types/table.columns';
|
||||
import { usePagination } from '@/types/table';
|
||||
import HostKeySelector from '@/components/asset/host-key/host-key-selector.vue';
|
||||
import HostKeySelector from '@/components/asset/host-key/selector/index.vue';
|
||||
import useCopy from '@/hooks/copy';
|
||||
import usePermission from '@/hooks/permission';
|
||||
import { GrantKey, GrantRouteName } from '@/views/asset/grant/types/const';
|
||||
|
||||
@@ -146,8 +146,8 @@
|
||||
import { useDictStore } from '@/store';
|
||||
import { EnabledStatus } from '@/types/const';
|
||||
import { HostConfigType } from '../../../types/const';
|
||||
import HostKeySelector from '@/components/asset/host-key/host-key-selector.vue';
|
||||
import HostIdentitySelector from '@/components/asset/host-identity/host-identity-selector.vue';
|
||||
import HostKeySelector from '@/components/asset/host-key/selector/index.vue';
|
||||
import HostIdentitySelector from '@/components/asset/host-identity/selector/index.vue';
|
||||
|
||||
const { loading, setLoading } = useLoading();
|
||||
const { toRadioOptions } = useDictStore();
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import { updateHostGroupRel } from '@/api/asset/host-group';
|
||||
import HostTransfer from './host-transfer.vue';
|
||||
import HostGroupTree from '@/components/asset/host-group/host-group-tree.vue';
|
||||
import HostGroupTree from '@/components/asset/host-group/tree/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
@@ -182,7 +182,7 @@
|
||||
import { tagColor } from '../types/const';
|
||||
import useCopy from '@/hooks/copy';
|
||||
import { GrantKey, GrantRouteName } from '@/views/asset/grant/types/const';
|
||||
import TagMultiSelector from '@/components/meta/tag/tag-multi-selector.vue';
|
||||
import TagMultiSelector from '@/components/meta/tag/multi-selector/index.vue';
|
||||
|
||||
const emits = defineEmits(['openAdd', 'openUpdate', 'openUpdateConfig', 'openHostGroup']);
|
||||
|
||||
|
||||
@@ -68,8 +68,8 @@
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import { pick } from 'lodash';
|
||||
import { tagColor } from '@/views/asset/host-list/types/const';
|
||||
import TagMultiSelector from '@/components/meta/tag/tag-multi-selector.vue';
|
||||
import HostGroupTreeSelector from '@/components/asset/host-group/host-group-tree-selector.vue';
|
||||
import TagMultiSelector from '@/components/meta/tag/multi-selector/index.vue';
|
||||
import HostGroupTreeSelector from '@/components/asset/host-group/tree-selector/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
@@ -175,7 +175,7 @@
|
||||
import columns from '../types/table.columns';
|
||||
import { dataColor } from '@/utils';
|
||||
import { GrantKey, GrantRouteName } from '@/views/asset/grant/types/const';
|
||||
import TagMultiSelector from '@/components/meta/tag/tag-multi-selector.vue';
|
||||
import TagMultiSelector from '@/components/meta/tag/multi-selector/index.vue';
|
||||
|
||||
const tagSelector = ref();
|
||||
const tableRenderData = ref<HostQueryResponse[]>([]);
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
<a-form :model="formModel"
|
||||
ref="formRef"
|
||||
label-align="right"
|
||||
:style="{ width: '460px' }"
|
||||
:label-col-props="{ span: 6 }"
|
||||
:wrapper-col-props="{ span: 18 }"
|
||||
:rules="{}">
|
||||
@@ -49,8 +48,8 @@
|
||||
import { getHostExtraItem } from '@/api/asset/host-extra';
|
||||
import { ExtraSshAuthType, extraSshAuthTypeKey } from '../../../types/terminal.const';
|
||||
import { useDictStore } from '@/store';
|
||||
import HostKeySelector from '@/components/asset/host-key/host-key-selector.vue';
|
||||
import HostIdentitySelector from '@/components/asset/host-identity/host-identity-selector.vue';
|
||||
import HostKeySelector from '@/components/asset/host-key/selector/index.vue';
|
||||
import HostIdentitySelector from '@/components/asset/host-identity/selector/index.vue';
|
||||
|
||||
const props = defineProps<{
|
||||
hostId: number,
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
import useCopy from '@/hooks/copy';
|
||||
import { ActionBarItems, connectStatusKey } from '../../types/terminal.const';
|
||||
import IconActions from '../layout/icon-actions.vue';
|
||||
import ShellEditorModal from '@/components/view/shell-editor/shell-editor-modal.vue';
|
||||
import ShellEditorModal from '@/components/view/shell-editor/modal/index.vue';
|
||||
import SshSearchModal from './ssh-search-modal.vue';
|
||||
import SshContextMenu from './ssh-context-menu.vue';
|
||||
|
||||
|
||||
@@ -22,11 +22,11 @@
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { ref, onBeforeMount } from 'vue';
|
||||
import DictKeyTable from './components/dict-key-table.vue';
|
||||
import DictKeyFormModal from './components/dict-key-form-modal.vue';
|
||||
import JsonEditorModal from '@/components/view/json-editor/json-editor-modal.vue';
|
||||
import { useDictStore } from '@/store';
|
||||
import { dictKeys } from './types/const';
|
||||
import DictKeyTable from './components/dict-key-table.vue';
|
||||
import DictKeyFormModal from './components/dict-key-form-modal.vue';
|
||||
import JsonEditorModal from '@/components/view/json-editor/modal/index.vue';
|
||||
|
||||
const render = ref(false);
|
||||
const table = ref();
|
||||
|
||||
@@ -95,9 +95,9 @@
|
||||
import { createDictValue, updateDictValue } from '@/api/system/dict-value';
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import { ValueType, sortStep } from '../../dict-key/types/const';
|
||||
import DictKeySelector from '@/components/system/dict-key/dict-key-selector.vue';
|
||||
import { DictKeyQueryResponse } from '@/api/system/dict-key';
|
||||
import { useCacheStore } from '@/store';
|
||||
import DictKeySelector from '@/components/system/dict-key/selector/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
import columns from '../types/table.columns';
|
||||
import { usePagination, useRowSelection } from '@/types/table';
|
||||
import useCopy from '@/hooks/copy';
|
||||
import DictKeySelector from '@/components/system/dict-key/dict-key-selector.vue';
|
||||
import DictKeySelector from '@/components/system/dict-key/selector/index.vue';
|
||||
|
||||
const emits = defineEmits(['openAdd', 'openUpdate', 'openHistory']);
|
||||
|
||||
|
||||
@@ -24,13 +24,13 @@
|
||||
</script>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import DictValueTable from './components/dict-value-table.vue';
|
||||
import DictValueFormModal from './components/dict-value-form-modal.vue';
|
||||
import HistoryValueModal from '@/components/meta/history/history-value-modal.vue';
|
||||
import { ref, onUnmounted } from 'vue';
|
||||
import { historyType } from './types/const';
|
||||
import { useCacheStore } from '@/store';
|
||||
import { rollbackDictValue } from '@/api/system/dict-value';
|
||||
import DictValueTable from './components/dict-value-table.vue';
|
||||
import DictValueFormModal from './components/dict-value-form-modal.vue';
|
||||
import HistoryValueModal from '@/components/meta/history/modal/index.vue';
|
||||
|
||||
const table = ref();
|
||||
const modal = ref();
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import { useDictStore } from '@/store';
|
||||
import IconPicker from '@sanqi377/arco-vue-icon-picker';
|
||||
import MenuTreeSelector from '@/components/system/menu/selector/menu-tree-selector.vue';
|
||||
import MenuTreeSelector from '@/components/system/menu/tree-selector/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
<script lang="ts">
|
||||
export default {
|
||||
name: 'menu'
|
||||
name: 'systemMenu'
|
||||
};
|
||||
</script>
|
||||
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
import { useDictStore } from '@/store';
|
||||
import { operatorLogModuleKey, operatorLogResultKey, operatorLogTypeKey, operatorRiskLevelKey } from '@/views/user/operator-log/types/const';
|
||||
import { labelFilter } from '@/types/form';
|
||||
import UserSelector from '@/components/user/user/user-selector.vue';
|
||||
import UserSelector from '@/components/user/user/selector/index.vue';
|
||||
|
||||
const { $state: dictState, toOptions } = useDictStore();
|
||||
const { visible, setVisible } = useVisible();
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
import { useDictStore } from '@/store';
|
||||
import { operatorLogModuleKey, operatorLogTypeKey, operatorRiskLevelKey, operatorLogResultKey } from '../types/const';
|
||||
import { labelFilter } from '@/types/form';
|
||||
import UserSelector from '@/components/user/user/user-selector.vue';
|
||||
import UserSelector from '@/components/user/user/selector/index.vue';
|
||||
|
||||
const emits = defineEmits(['submit']);
|
||||
const props = defineProps({
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
import { getOperatorLogPage } from '@/api/user/operator-log';
|
||||
import { getCurrentUserOperatorLog } from '@/api/user/mine';
|
||||
import { replaceHtmlTag, clearHtmlTag } from '@/utils';
|
||||
import JsonEditorModal from '@/components/view/json-editor/json-editor-modal.vue';
|
||||
import JsonEditorModal from '@/components/view/json-editor/modal/index.vue';
|
||||
|
||||
const props = defineProps({
|
||||
handleColumn: {
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import OperatorLogQueryHeader from './operator-log-query-header.vue';
|
||||
import OperatorLogClearModal from './operator-log-clear-modal.vue';
|
||||
import JsonEditorModal from '@/components/view/json-editor/json-editor-modal.vue';
|
||||
import JsonEditorModal from '@/components/view/json-editor/modal/index.vue';
|
||||
|
||||
const pagination = usePagination();
|
||||
const rowSelection = useRowSelection();
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
import { getRoleMenuId, grantRoleMenu } from '@/api/user/role';
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import { quickGrantMenuOperator } from '../types/const';
|
||||
import MenuGrantTable from '@/components/system/menu/grant/menu-grant-table.vue';
|
||||
import MenuGrantTable from '@/components/system/menu/grant-table/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
@@ -49,9 +49,9 @@
|
||||
import useLoading from '@/hooks/loading';
|
||||
import useVisible from '@/hooks/visible';
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
import RoleSelector from '@/components/user/role/role-selector.vue';
|
||||
import { useCacheStore } from '@/store';
|
||||
import { getUserRoleIdList, grantUserRole } from '@/api/user/user';
|
||||
import RoleSelector from '@/components/user/role/selector/index.vue';
|
||||
|
||||
const { visible, setVisible } = useVisible();
|
||||
const { loading, setLoading } = useLoading();
|
||||
|
||||
Reference in New Issue
Block a user