+
diff --git a/mayfly_go_web/src/main.ts b/mayfly_go_web/src/main.ts
index 4c064598..f5c1c262 100644
--- a/mayfly_go_web/src/main.ts
+++ b/mayfly_go_web/src/main.ts
@@ -13,6 +13,8 @@ import 'element-plus/theme-chalk/dark/css-vars.css';
import zhCn from 'element-plus/es/locale/lang/zh-cn';
import { ElMessage } from 'element-plus';
+import 'splitpanes/dist/splitpanes.css';
+
import '@/theme/index.scss';
import '@/assets/font/font.css';
import '@/assets/iconfont/iconfont.js';
diff --git a/mayfly_go_web/src/theme/app.scss b/mayfly_go_web/src/theme/app.scss
index c4de5d16..cfbacfa9 100644
--- a/mayfly_go_web/src/theme/app.scss
+++ b/mayfly_go_web/src/theme/app.scss
@@ -8,21 +8,21 @@
}
:root {
- --color-white: #ffffff;
- --bg-main-color: #f8f8f8;
- --bg-color: #f5f5ff;
- --bg-menuBarActiveColor: #0000000a; // 菜单栏激活时的背景色
- --border-color-light: #f1f2f3;
- --el-color-primary-lighter: #ecf5ff;
- --color-success-lighter: #f0f9eb;
- --color-warning-lighter: #fdf6ec;
- --color-danger-lighter: #fef0f0;
- --color-dark-hover: #0000001a;
- --color-menu-hover: rgba(0, 0, 0, 0.2);
- --color-user-hover: rgba(0, 0, 0, 0.04);
- --color-seting-main: #e9eef3;
- --color-seting-aside: #d3dce6;
- --color-seting-header: #b3c0d1;
+ --color-white: #ffffff;
+ --bg-main-color: #f8f8f8;
+ --bg-color: #f5f5ff;
+ --bg-menuBarActiveColor: #0000000a; // 菜单栏激活时的背景色
+ --border-color-light: #f1f2f3;
+ --el-color-primary-lighter: #ecf5ff;
+ --color-success-lighter: #f0f9eb;
+ --color-warning-lighter: #fdf6ec;
+ --color-danger-lighter: #fef0f0;
+ --color-dark-hover: #0000001a;
+ --color-menu-hover: rgba(0, 0, 0, 0.2);
+ --color-user-hover: rgba(0, 0, 0, 0.04);
+ --color-seting-main: #e9eef3;
+ --color-seting-aside: #d3dce6;
+ --color-seting-header: #b3c0d1;
--tagsview3-active-background-color: var(--el-color-primary-light-9);
}
@@ -373,6 +373,45 @@ body,
cursor: pointer;
transition: color 0.3s;
}
+
.pointer-icon:hover {
- color: var(--el-color-primary); /* 鼠标移动到图标时的颜色 */
+ color: var(--el-color-primary);
+ /* 鼠标移动到图标时的颜色 */
+}
+
+
+/** splitpanes **/
+.splitpanes.default-theme .splitpanes {
+ background: transparent !important;
+}
+
+.splitpanes.default-theme .splitpanes__pane {
+ background: transparent !important;
+}
+
+.default-theme.splitpanes--vertical>.splitpanes__splitter {
+ border-left: 1px solid var(--bg-main-color);
+}
+
+.default-theme.splitpanes--horizontal>.splitpanes__splitter {
+ border-top: 1px solid var(--bg-main-color);
+}
+// 竖线样式
+.splitpanes.default-theme .splitpanes__splitter::before,
+.splitpanes.default-theme .splitpanes__splitter::after {
+ background-color: var(--el-color-info-light-5);
+}
+
+.splitpanes.default-theme .splitpanes__splitter:hover::before,
+.splitpanes.default-theme .splitpanes__splitter:hover::after {
+ background-color: var(--el-color-success);
+}
+
+.splitpanes.default-theme .splitpanes__splitter {
+ min-width: 6px;
+ background: var(--el-color-info-light-8) !important;
+}
+
+.splitpanes.default-theme .splitpanes__splitter:hover {
+ background: var(--el-color-success-light-8) !important;
}
\ No newline at end of file
diff --git a/mayfly_go_web/src/types/shim.d.ts b/mayfly_go_web/src/types/shim.d.ts
index cbfd6acf..d44c3e0a 100644
--- a/mayfly_go_web/src/types/shim.d.ts
+++ b/mayfly_go_web/src/types/shim.d.ts
@@ -3,3 +3,4 @@ declare module 'sql-formatter';
declare module 'jsoneditor';
declare module 'asciinema-player';
declare module 'vue-grid-layout';
+declare module 'splitpanes';
diff --git a/mayfly_go_web/src/views/ops/component/TagTree.vue b/mayfly_go_web/src/views/ops/component/TagTree.vue
index 5e43a89f..c841f5f8 100644
--- a/mayfly_go_web/src/views/ops/component/TagTree.vue
+++ b/mayfly_go_web/src/views/ops/component/TagTree.vue
@@ -98,7 +98,7 @@ onMounted(async () => {
});
const setHeight = () => {
- state.height = vh.value - 148 + 'px';
+ state.height = vh.value - 150 + 'px';
};
onUnmounted(() => {
diff --git a/mayfly_go_web/src/views/ops/db/SqlExec.vue b/mayfly_go_web/src/views/ops/db/SqlExec.vue
index 3b738699..aef444c5 100644
--- a/mayfly_go_web/src/views/ops/db/SqlExec.vue
+++ b/mayfly_go_web/src/views/ops/db/SqlExec.vue
@@ -1,7 +1,7 @@
-
-
+
+
@@ -44,9 +44,9 @@
}}
-
+
-
+
@@ -90,8 +90,9 @@
@tab-change="onTabChange"
style="width: 100%"
v-model="state.activeName"
+ class="h100"
>
-
+
{{ dt.label }}
@@ -129,7 +130,6 @@
:db-name="dt.db"
:sql-name="dt.params.sqlName"
@save-sql-success="reloadSqls"
- :editor-height="state.editorHeight"
>
@@ -143,8 +143,8 @@
-
-
+
+
@@ -162,6 +162,7 @@ import { ContextmenuItem } from '@/components/contextmenu';
import { getDbDialect } from './dialect/index';
import { sleep } from '@/common/utils/loading';
import { TagResourceTypeEnum } from '@/common/commonEnum';
+import { Splitpanes, Pane } from 'splitpanes';
const DbSqlEditor = defineAsyncComponent(() => import('./component/sqleditor/DbSqlEditor.vue'));
const DbTableDataOp = defineAsyncComponent(() => import('./component/table/DbTableDataOp.vue'));
@@ -377,8 +378,7 @@ const state = reactive({
activeName: '',
reloadStatus: false,
tabs,
- dataTabsTableHeight: 600,
- editorHeight: '600',
+ dataTabsTableHeight: '600px',
tablesOpHeight: '600',
});
@@ -398,8 +398,7 @@ onBeforeUnmount(() => {
* 设置editor高度和数据表高度
*/
const setHeight = () => {
- state.editorHeight = window.innerHeight - 525 + 'px';
- state.dataTabsTableHeight = window.innerHeight - 255;
+ state.dataTabsTableHeight = window.innerHeight - 255 + 'px';
state.tablesOpHeight = window.innerHeight - 220 + 'px';
};
diff --git a/mayfly_go_web/src/views/ops/db/component/sqleditor/DbSqlEditor.vue b/mayfly_go_web/src/views/ops/db/component/sqleditor/DbSqlEditor.vue
index 6f8f3d01..cb6ad544 100644
--- a/mayfly_go_web/src/views/ops/db/component/sqleditor/DbSqlEditor.vue
+++ b/mayfly_go_web/src/views/ops/db/component/sqleditor/DbSqlEditor.vue
@@ -39,86 +39,96 @@
-