[Feature][UI Next] Modify route registration rules (#8137)
* [Feature][UI Next] Modify route registration rules * [Feature][UI Next] Delete logsUpdate_README
parent
a87ddca98c
commit
32ed6e281c
|
|
@ -87,20 +87,19 @@ export function useDataList() {
|
|||
isShowSide: false,
|
||||
children: [
|
||||
{
|
||||
label: t('menu.workflow_monitoring'),
|
||||
key: 'workflow-monitoring',
|
||||
label: t('menu.project_overview'),
|
||||
key: 'projects-overview',
|
||||
icon: renderIcon(FundProjectionScreenOutlined)
|
||||
},
|
||||
{
|
||||
label: t('menu.workflow_relation'),
|
||||
key: 'workflow-relation',
|
||||
icon: renderIcon(PartitionOutlined)
|
||||
},
|
||||
{
|
||||
label: t('menu.workflow'),
|
||||
key: 'workflow',
|
||||
icon: renderIcon(SettingOutlined),
|
||||
icon: renderIcon(PartitionOutlined),
|
||||
children: [
|
||||
{
|
||||
label: t('menu.workflow_relation'),
|
||||
key: 'workflow-relation'
|
||||
},
|
||||
{
|
||||
label: t('menu.workflow_definition'),
|
||||
key: 'workflow-definition'
|
||||
|
|
@ -108,14 +107,21 @@ export function useDataList() {
|
|||
{
|
||||
label: t('menu.workflow_instance'),
|
||||
key: 'workflow-instance'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
label: t('menu.task'),
|
||||
key: 'workflow',
|
||||
icon: renderIcon(SettingOutlined),
|
||||
children: [
|
||||
{
|
||||
label: t('menu.task_definition'),
|
||||
key: 'task-definition'
|
||||
},
|
||||
{
|
||||
label: t('menu.task_instance'),
|
||||
key: 'task-instance'
|
||||
},
|
||||
{
|
||||
label: t('menu.task_definition'),
|
||||
key: 'task-definition'
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -47,11 +47,12 @@ const menu = {
|
|||
datasource: 'Datasource',
|
||||
monitor: 'Monitor',
|
||||
security: 'Security',
|
||||
workflow_monitoring: 'Workflow Monitoring',
|
||||
project_overview: 'Project Overview',
|
||||
workflow_relation: 'Workflow Relation',
|
||||
workflow: 'Workflow',
|
||||
workflow_definition: 'Workflow Definition',
|
||||
workflow_instance: 'Workflow Instance',
|
||||
task: 'Task',
|
||||
task_instance: 'Task Instance',
|
||||
task_definition: 'Task Definition',
|
||||
file_manage: 'File Manage',
|
||||
|
|
@ -319,11 +320,9 @@ const project = {
|
|||
cancel: 'Cancel',
|
||||
delete_confirm: 'Delete?'
|
||||
},
|
||||
workflow_relation: {
|
||||
workflow_relation: 'Workflow Relation'
|
||||
},
|
||||
dag: {
|
||||
createWorkflow: 'Create Workflow',
|
||||
workflow: {
|
||||
workflow_relation: 'Workflow Relation',
|
||||
create_workflow: 'Create Workflow',
|
||||
search: 'Search',
|
||||
download_png: 'Download PNG',
|
||||
fullscreen_open: 'Open Fullscreen',
|
||||
|
|
|
|||
|
|
@ -47,11 +47,12 @@ const menu = {
|
|||
datasource: '数据源中心',
|
||||
monitor: '监控中心',
|
||||
security: '安全中心',
|
||||
workflow_monitoring: '工作流监控',
|
||||
project_overview: '项目概览',
|
||||
workflow_relation: '工作流关系',
|
||||
workflow: '工作流',
|
||||
workflow_definition: '工作流定义',
|
||||
workflow_instance: '工作流实例',
|
||||
task: '任务',
|
||||
task_instance: '任务实例',
|
||||
task_definition: '任务定义',
|
||||
file_manage: '文件管理',
|
||||
|
|
@ -318,11 +319,9 @@ const project = {
|
|||
cancel: '取消',
|
||||
delete_confirm: '确定删除吗?'
|
||||
},
|
||||
workflow_relation: {
|
||||
workflow_relation: '工作流关系'
|
||||
},
|
||||
dag: {
|
||||
createWorkflow: '创建工作流',
|
||||
workflow: {
|
||||
workflow_relation: '工作流关系',
|
||||
create_workflow: '创建工作流',
|
||||
search: '搜索',
|
||||
download_png: '下载工作流图片',
|
||||
fullscreen_open: '全屏',
|
||||
|
|
|
|||
|
|
@ -25,12 +25,11 @@ const components: { [key: string]: Component } = utils.mapping(modules)
|
|||
export default {
|
||||
path: '/datasource',
|
||||
name: 'datasource',
|
||||
redirect: { name: 'datasource-list' },
|
||||
meta: { title: '数据源中心' },
|
||||
component: () => import('@/layouts/content'),
|
||||
children: [
|
||||
{
|
||||
path: '/datasource/list',
|
||||
path: '',
|
||||
name: 'datasource-list',
|
||||
component: components['datasource-list'],
|
||||
meta: {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ export default {
|
|||
{
|
||||
path: '/monitor/master',
|
||||
name: 'servers-master',
|
||||
component: components['master'],
|
||||
component: components['monitor-servers-master'],
|
||||
meta: {
|
||||
title: '服务管理-Master',
|
||||
showSide: true
|
||||
|
|
@ -41,7 +41,7 @@ export default {
|
|||
{
|
||||
path: '/monitor/worker',
|
||||
name: 'servers-worker',
|
||||
component: components['worker'],
|
||||
component: components['monitor-servers-worker'],
|
||||
meta: {
|
||||
title: '服务管理-Worker',
|
||||
showSide: true
|
||||
|
|
@ -50,7 +50,7 @@ export default {
|
|||
{
|
||||
path: '/monitor/db',
|
||||
name: 'servers-db',
|
||||
component: components['db'],
|
||||
component: components['monitor-servers-db'],
|
||||
meta: {
|
||||
title: '服务管理-DB',
|
||||
showSide: true
|
||||
|
|
@ -59,7 +59,7 @@ export default {
|
|||
{
|
||||
path: '/monitor/statistics',
|
||||
name: 'statistics-statistics',
|
||||
component: components['statistics'],
|
||||
component: components['monitor-statistics-statistics'],
|
||||
meta: {
|
||||
title: '统计管理-Statistics',
|
||||
showSide: true
|
||||
|
|
|
|||
|
|
@ -25,90 +25,100 @@ const components: { [key: string]: Component } = utils.mapping(modules)
|
|||
export default {
|
||||
path: '/projects',
|
||||
name: 'projects',
|
||||
redirect: { name: 'projects-list' },
|
||||
meta: { title: '项目管理' },
|
||||
meta: {
|
||||
title: '项目管理',
|
||||
showSide: false
|
||||
},
|
||||
component: () => import('@/layouts/content'),
|
||||
children: [
|
||||
{
|
||||
path: '/projects/list',
|
||||
path: '',
|
||||
name: 'projects-list',
|
||||
component: components['list'],
|
||||
component: components['projects-list'],
|
||||
meta: {
|
||||
title: '项目',
|
||||
showSide: false
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/workflow-monitor',
|
||||
name: 'workflow-monitor',
|
||||
component: components['workflow-monitor'],
|
||||
path: '/projects/:projectCode',
|
||||
name: 'projects-overview',
|
||||
component: components['projects-overview'],
|
||||
meta: {
|
||||
title: '工作流监控',
|
||||
title: '项目概览',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/workflow-relation',
|
||||
path: '/projects/:projectCode/workflow/relation',
|
||||
name: 'workflow-relation',
|
||||
component: components['workflow-relation'],
|
||||
component: components['projects-workflow-relation'],
|
||||
meta: {
|
||||
title: '工作流关系'
|
||||
title: '工作流关系',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/workflow-definitions',
|
||||
path: '/projects/:projectCode/workflow/definitions',
|
||||
name: 'workflow-definition-list',
|
||||
component: components['workflow-definition-list'],
|
||||
component: components['projects-workflow-definition'],
|
||||
meta: {
|
||||
title: '工作流定义'
|
||||
title: '工作流定义',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/workflow-definitions/create',
|
||||
path: '/projects/:projectCode/workflow/definitions/create',
|
||||
name: 'workflow-definition-create',
|
||||
component: components['workflow-definition-create'],
|
||||
component: components['projects-workflow-definition-create'],
|
||||
meta: {
|
||||
title: '创建工作流定义'
|
||||
title: '创建工作流定义',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/workflow-definitions/:code',
|
||||
name: 'workflow-definition-details',
|
||||
component: components['workflow-definition-details'],
|
||||
path: '/projects/:projectCode/workflow/definitions/:code',
|
||||
name: 'workflow-definition-detail',
|
||||
component: components['projects-workflow-definition-detail'],
|
||||
meta: {
|
||||
title: '工作流定义详情'
|
||||
title: '工作流定义详情',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/workflow-instances',
|
||||
path: '/projects/:projectCode/workflow/instances',
|
||||
name: 'workflow-instance-list',
|
||||
component: components['workflow-instance-list'],
|
||||
component: components['projects-workflow-instance'],
|
||||
meta: {
|
||||
title: '工作流实例'
|
||||
title: '工作流实例',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/workflow-instances/:id',
|
||||
name: 'workflow-instance-details',
|
||||
component: components['workflow-instance-details'],
|
||||
path: '/projects/:projectCode/workflow/instances/:id',
|
||||
name: 'workflow-instance-detail',
|
||||
component: components['projects-workflow-instance-detail'],
|
||||
meta: {
|
||||
title: '工作流实例详情'
|
||||
title: '工作流实例详情',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/task-instances',
|
||||
name: 'task-instance-list',
|
||||
component: components['task-instance-list'],
|
||||
meta: {
|
||||
title: '任务实例'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/task-definitions',
|
||||
path: '/projects/:projectCode/task/definitions',
|
||||
name: 'task-definition-list',
|
||||
component: components['task-definition-list'],
|
||||
component: components['projects-task-definition'],
|
||||
meta: {
|
||||
title: '任务定义'
|
||||
title: '任务定义',
|
||||
showSide: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/projects/:projectCode/task/instances',
|
||||
name: 'task-instance-list',
|
||||
component: components['projects-task-instance'],
|
||||
meta: {
|
||||
title: '任务实例',
|
||||
showSide: true
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ export default {
|
|||
{
|
||||
path: '/resource/file-manage',
|
||||
name: 'file-manage',
|
||||
component: components['file'],
|
||||
component: components['resource-file'],
|
||||
meta: {
|
||||
title: '文件管理',
|
||||
showSide: true
|
||||
|
|
@ -59,7 +59,7 @@ export default {
|
|||
{
|
||||
path: '/resource/file/subdirectory/:id',
|
||||
name: 'resource-file-subdirectory',
|
||||
component: components['file'],
|
||||
component: components['resource-file'],
|
||||
meta: {
|
||||
title: '文件管理',
|
||||
showSide: true
|
||||
|
|
@ -104,7 +104,7 @@ export default {
|
|||
{
|
||||
path: '/resource/function-manage',
|
||||
name: 'function-manage',
|
||||
component: components['function'],
|
||||
component: components['resource-udf-function'],
|
||||
meta: {
|
||||
title: '函数管理'
|
||||
}
|
||||
|
|
@ -112,17 +112,17 @@ export default {
|
|||
{
|
||||
path: '/resource/task-group',
|
||||
name: 'task-group-manage',
|
||||
component: components['taskGroupOption'],
|
||||
component: components['resource-taskGroupOption'],
|
||||
children: [
|
||||
{
|
||||
path: '/resource/task-group-option',
|
||||
name: 'task-group-option',
|
||||
component: components['taskGroupOption']
|
||||
component: components['resource-taskGroupOption']
|
||||
},
|
||||
{
|
||||
path: '/resource/task-group-queue',
|
||||
name: 'task-group-queue',
|
||||
component: components['taskGroupQueue']
|
||||
component: components['resource-taskGroupQueue']
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ export default {
|
|||
{
|
||||
path: '/security/tenant-manage',
|
||||
name: 'tenant-manage',
|
||||
component: components['tenant-manage'],
|
||||
component: components['security-tenant-manage'],
|
||||
meta: {
|
||||
title: '租户管理',
|
||||
showSide: true
|
||||
|
|
@ -50,7 +50,7 @@ export default {
|
|||
{
|
||||
path: '/security/alarm-group-manage',
|
||||
name: 'alarm-group-manage',
|
||||
component: components['alarm-group-manage'],
|
||||
component: components['security-alarm-group-manage'],
|
||||
meta: {
|
||||
title: '告警组管理',
|
||||
showSide: true
|
||||
|
|
@ -59,7 +59,7 @@ export default {
|
|||
{
|
||||
path: '/security/worker-group-manage',
|
||||
name: 'worker-group-manage',
|
||||
component: components['worker-group-manage'],
|
||||
component: components['security-worker-group-manage'],
|
||||
meta: {
|
||||
title: 'Worker分组管理',
|
||||
showSide: true
|
||||
|
|
@ -68,7 +68,7 @@ export default {
|
|||
{
|
||||
path: '/security/yarn-queue-manage',
|
||||
name: 'yarn-queue-manage',
|
||||
component: components['yarn-queue-manage'],
|
||||
component: components['security-yarn-queue-manage'],
|
||||
meta: {
|
||||
title: 'Yarn队列管理',
|
||||
showSide: true
|
||||
|
|
@ -77,7 +77,7 @@ export default {
|
|||
{
|
||||
path: '/security/environment-manage',
|
||||
name: 'environment-manage',
|
||||
component: components['environment-manage'],
|
||||
component: components['security-environment-manage'],
|
||||
meta: {
|
||||
title: '环境管理',
|
||||
showSide: true
|
||||
|
|
@ -86,7 +86,7 @@ export default {
|
|||
{
|
||||
path: '/security/token-manage',
|
||||
name: 'token-manage',
|
||||
component: components['token-manage'],
|
||||
component: components['security-token-manage'],
|
||||
meta: {
|
||||
title: '令牌管理管理',
|
||||
showSide: true
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ const mapping = (modules: any) => {
|
|||
|
||||
let name: string = indexMatch ? indexMatch[1] : nameMatch[1]
|
||||
|
||||
;[name] = name.split('/').splice(-1)
|
||||
name = name.replaceAll('/', '-')
|
||||
|
||||
components[name] = modules[key]
|
||||
})
|
||||
|
|
|
|||
|
|
@ -48,8 +48,7 @@ export function useTable(
|
|||
'a',
|
||||
{
|
||||
class: styles.links,
|
||||
onClick: () =>
|
||||
router.push({ path: `/projects/${row.code}/workflow-monitor` })
|
||||
onClick: () => router.push({ path: `/projects/${row.code}` })
|
||||
},
|
||||
{
|
||||
default: () => {
|
||||
|
|
|
|||
|
|
@ -19,12 +19,7 @@ import { defineComponent, ref, inject } from 'vue'
|
|||
import Styles from './dag.module.scss'
|
||||
import type { PropType, Ref } from 'vue'
|
||||
import type { Dragged } from './dag'
|
||||
import {
|
||||
useCanvasInit,
|
||||
useGraphOperations,
|
||||
useCellActive,
|
||||
useCanvasDrop
|
||||
} from './dag-hooks'
|
||||
import { useCanvasInit, useCellActive, useCanvasDrop } from './dag-hooks'
|
||||
import { useRoute } from 'vue-router'
|
||||
|
||||
const props = {
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { defineComponent, PropType } from 'vue'
|
||||
import Modal from '@/components/modal'
|
||||
import './x6-style.scss'
|
||||
|
||||
const props = {
|
||||
show: {
|
||||
type: Boolean as PropType<boolean>,
|
||||
default: false
|
||||
}
|
||||
}
|
||||
|
||||
export default defineComponent({
|
||||
name: 'dag-format-modal',
|
||||
props,
|
||||
setup(props, context) {
|
||||
return () => <Modal show={props.show}></Modal>
|
||||
}
|
||||
})
|
||||
|
|
@ -16,9 +16,9 @@
|
|||
*/
|
||||
|
||||
import type { PropType, Ref } from 'vue'
|
||||
import type { Dragged } from './dag'
|
||||
import type { Dragged } from './index'
|
||||
import { defineComponent, ref, inject } from 'vue'
|
||||
import { ALL_TASK_TYPES } from '../task-details/config'
|
||||
import { ALL_TASK_TYPES } from '../../../task/constants/task-type'
|
||||
import { useSidebarDrag } from './dag-hooks'
|
||||
import Styles from './dag.module.scss'
|
||||
|
||||
|
|
@ -88,8 +88,16 @@ export default defineComponent({
|
|||
/**
|
||||
* Open DAG format modal
|
||||
*/
|
||||
const openDagFormatModal = () => {}
|
||||
const { openFormatModal } = inject('formatModal', {
|
||||
openFormatModal: (bool: boolean) => {}
|
||||
})
|
||||
const onFormat = () => {
|
||||
openFormatModal(true)
|
||||
}
|
||||
|
||||
/**
|
||||
* Back to the entrance
|
||||
*/
|
||||
const onClose = () => {
|
||||
router.go(-1)
|
||||
}
|
||||
|
|
@ -97,7 +105,7 @@ export default defineComponent({
|
|||
return () => (
|
||||
<div class={Styles.toolbar}>
|
||||
<span class={Styles['workflow-name']}>
|
||||
{t('project.dag.createWorkflow')}
|
||||
{t('project.workflow.create_workflow')}
|
||||
</span>
|
||||
<div class={Styles['toolbar-right-part']}>
|
||||
{/* Search node */}
|
||||
|
|
@ -120,7 +128,7 @@ export default defineComponent({
|
|||
}}
|
||||
/>
|
||||
),
|
||||
default: () => t('project.dag.search')
|
||||
default: () => t('project.workflow.search')
|
||||
}}
|
||||
></NTooltip>
|
||||
<div
|
||||
|
|
@ -156,7 +164,7 @@ export default defineComponent({
|
|||
}}
|
||||
/>
|
||||
),
|
||||
default: () => t('project.dag.download_png')
|
||||
default: () => t('project.workflow.download_png')
|
||||
}}
|
||||
></NTooltip>
|
||||
{/* Toggle fullscreen */}
|
||||
|
|
@ -185,8 +193,8 @@ export default defineComponent({
|
|||
),
|
||||
default: () =>
|
||||
isFullscreen.value
|
||||
? t('project.dag.fullscreen_close')
|
||||
: t('project.dag.fullscreen_open')
|
||||
? t('project.workflow.fullscreen_close')
|
||||
: t('project.workflow.fullscreen_open')
|
||||
}}
|
||||
></NTooltip>
|
||||
{/* DAG Format */}
|
||||
|
|
@ -199,7 +207,7 @@ export default defineComponent({
|
|||
secondary
|
||||
circle
|
||||
type='info'
|
||||
onClick={openDagFormatModal}
|
||||
onClick={onFormat}
|
||||
v-slots={{
|
||||
icon: () => (
|
||||
<NIcon>
|
||||
|
|
@ -209,7 +217,7 @@ export default defineComponent({
|
|||
}}
|
||||
/>
|
||||
),
|
||||
default: () => t('project.dag.format')
|
||||
default: () => t('project.workflow.format')
|
||||
}}
|
||||
></NTooltip>
|
||||
{/* Version info */}
|
||||
|
|
@ -232,7 +240,7 @@ export default defineComponent({
|
|||
}}
|
||||
/>
|
||||
),
|
||||
default: () => t('project.dag.workflow_version')
|
||||
default: () => t('project.workflow.workflow_version')
|
||||
}}
|
||||
></NTooltip>
|
||||
{/* Save workflow */}
|
||||
|
|
@ -242,11 +250,11 @@ export default defineComponent({
|
|||
secondary
|
||||
round
|
||||
>
|
||||
{t('project.dag.save')}
|
||||
{t('project.workflow.save')}
|
||||
</NButton>
|
||||
{/* Return to previous page */}
|
||||
<NButton secondary round onClick={onClose}>
|
||||
{t('project.dag.close')}
|
||||
{t('project.workflow.close')}
|
||||
</NButton>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -83,52 +83,52 @@ $toolbarHeight: 50px;
|
|||
background-size: 100% 100%;
|
||||
margin-right: 10px;
|
||||
&.icon-shell {
|
||||
background-image: url("../../../assets/images/task-icons/shell.png");
|
||||
background-image: url("@/assets/images/task-icons/shell.png");
|
||||
}
|
||||
&.icon-sub_process {
|
||||
background-image: url("../../../assets/images/task-icons/sub_process.png");
|
||||
background-image: url("@/assets/images/task-icons/sub_process.png");
|
||||
}
|
||||
&.icon-procedure {
|
||||
background-image: url("../../../assets/images/task-icons/procedure.png");
|
||||
background-image: url("@/assets/images/task-icons/procedure.png");
|
||||
}
|
||||
&.icon-sql {
|
||||
background-image: url("../../../assets/images/task-icons/sql.png");
|
||||
background-image: url("@/assets/images/task-icons/sql.png");
|
||||
}
|
||||
&.icon-flink {
|
||||
background-image: url("../../../assets/images/task-icons/flink.png");
|
||||
background-image: url("@/assets/images/task-icons/flink.png");
|
||||
}
|
||||
&.icon-mr {
|
||||
background-image: url("../../../assets/images/task-icons/mr.png");
|
||||
background-image: url("@/assets/images/task-icons/mr.png");
|
||||
}
|
||||
&.icon-python {
|
||||
background-image: url("../../../assets/images/task-icons/python.png");
|
||||
background-image: url("@/assets/images/task-icons/python.png");
|
||||
}
|
||||
&.icon-dependent {
|
||||
background-image: url("../../../assets/images/task-icons/dependent.png");
|
||||
background-image: url("@/assets/images/task-icons/dependent.png");
|
||||
}
|
||||
&.icon-http {
|
||||
background-image: url("../../../assets/images/task-icons/http.png");
|
||||
background-image: url("@/assets/images/task-icons/http.png");
|
||||
}
|
||||
&.icon-datax {
|
||||
background-image: url("../../../assets/images/task-icons/datax.png");
|
||||
background-image: url("@/assets/images/task-icons/datax.png");
|
||||
}
|
||||
&.icon-pigeon {
|
||||
background-image: url("../../../assets/images/task-icons/pigeon.png");
|
||||
background-image: url("@/assets/images/task-icons/pigeon.png");
|
||||
}
|
||||
&.icon-sqoop {
|
||||
background-image: url("../../../assets/images/task-icons/sqoop.png");
|
||||
background-image: url("@/assets/images/task-icons/sqoop.png");
|
||||
}
|
||||
&.icon-conditions {
|
||||
background-image: url("../../../assets/images/task-icons/conditions.png");
|
||||
background-image: url("@/assets/images/task-icons/conditions.png");
|
||||
}
|
||||
&.icon-seatunnel {
|
||||
background-image: url("../../../assets/images/task-icons/seatunnel.png");
|
||||
background-image: url("@/assets/images/task-icons/seatunnel.png");
|
||||
}
|
||||
&.icon-spark {
|
||||
background-image: url("../../../assets/images/task-icons/spark.png");
|
||||
background-image: url("@/assets/images/task-icons/spark.png");
|
||||
}
|
||||
&.icon-switch {
|
||||
background-image: url("../../../assets/images/task-icons/switch.png");
|
||||
background-image: url("@/assets/images/task-icons/switch.png");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -138,52 +138,52 @@ $toolbarHeight: 50px;
|
|||
background-color: $blueBg;
|
||||
.sidebar-icon {
|
||||
&.icon-shell {
|
||||
background-image: url("../../../assets/images/task-icons/shell_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/shell_hover.png");
|
||||
}
|
||||
&.icon-sub_process {
|
||||
background-image: url("../../../assets/images/task-icons/sub_process_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/sub_process_hover.png");
|
||||
}
|
||||
&.icon-procedure {
|
||||
background-image: url("../../../assets/images/task-icons/procedure_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/procedure_hover.png");
|
||||
}
|
||||
&.icon-sql {
|
||||
background-image: url("../../../assets/images/task-icons/sql_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/sql_hover.png");
|
||||
}
|
||||
&.icon-flink {
|
||||
background-image: url("../../../assets/images/task-icons/flink_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/flink_hover.png");
|
||||
}
|
||||
&.icon-mr {
|
||||
background-image: url("../../../assets/images/task-icons/mr_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/mr_hover.png");
|
||||
}
|
||||
&.icon-python {
|
||||
background-image: url("../../../assets/images/task-icons/python_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/python_hover.png");
|
||||
}
|
||||
&.icon-dependent {
|
||||
background-image: url("../../../assets/images/task-icons/dependent_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/dependent_hover.png");
|
||||
}
|
||||
&.icon-http {
|
||||
background-image: url("../../../assets/images/task-icons/http_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/http_hover.png");
|
||||
}
|
||||
&.icon-datax {
|
||||
background-image: url("../../../assets/images/task-icons/datax_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/datax_hover.png");
|
||||
}
|
||||
&.icon-pigeon {
|
||||
background-image: url("../../../assets/images/task-icons/pigeon_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/pigeon_hover.png");
|
||||
}
|
||||
&.icon-sqoop {
|
||||
background-image: url("../../../assets/images/task-icons/sqoop_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/sqoop_hover.png");
|
||||
}
|
||||
&.icon-conditions {
|
||||
background-image: url("../../../assets/images/task-icons/conditions_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/conditions_hover.png");
|
||||
}
|
||||
&.icon-seatunnel {
|
||||
background-image: url("../../../assets/images/task-icons/seatunnel_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/seatunnel_hover.png");
|
||||
}
|
||||
&.icon-spark {
|
||||
background-image: url("../../../assets/images/task-icons/spark_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/spark_hover.png");
|
||||
}
|
||||
&.icon-switch {
|
||||
background-image: url("../../../assets/images/task-icons/switch_hover.png");
|
||||
background-image: url("@/assets/images/task-icons/switch_hover.png");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -21,6 +21,7 @@ import DagToolbar from './dag-toolbar'
|
|||
import DagCanvas from './dag-canvas'
|
||||
import DagSidebar from './dag-sidebar'
|
||||
import Styles from './dag.module.scss'
|
||||
import DagFormatModal from './dag-format-modal'
|
||||
import './x6-style.scss'
|
||||
|
||||
export interface Dragged {
|
||||
|
|
@ -52,6 +53,16 @@ export default defineComponent({
|
|||
type: ''
|
||||
})
|
||||
|
||||
// Dag format modal visible
|
||||
const formatModalVisible = ref<boolean>(false)
|
||||
const openFormatModal = (bool: boolean) => {
|
||||
formatModalVisible.value = bool
|
||||
}
|
||||
provide('formatModal', {
|
||||
openFormatModal,
|
||||
formatModalVisible
|
||||
})
|
||||
|
||||
return () => (
|
||||
<div class={Styles.dag}>
|
||||
<DagToolbar v-slots={toolbarSlots} />
|
||||
|
|
@ -59,6 +70,7 @@ export default defineComponent({
|
|||
<DagSidebar dragged={dragged} />
|
||||
<DagCanvas dragged={dragged} />
|
||||
</div>
|
||||
<DagFormatModal show={formatModalVisible.value} />
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
import type { Ref } from 'vue'
|
||||
import type { Node, Graph, Edge } from '@antv/x6'
|
||||
import { X6_NODE_NAME, X6_EDGE_NAME } from './dag-config'
|
||||
import { ALL_TASK_TYPES } from '../task-details/config'
|
||||
import { ALL_TASK_TYPES } from '../../../task/constants/task-type'
|
||||
import utils from '@/utils'
|
||||
|
||||
interface Options {
|
||||
|
|
@ -16,9 +16,9 @@
|
|||
*/
|
||||
|
||||
import { defineComponent } from 'vue'
|
||||
import Dag from './dag'
|
||||
import Dag from '../../components/dag'
|
||||
import { NCard } from 'naive-ui'
|
||||
import styles from './workflow-definition-create.module.scss'
|
||||
import styles from './index.module.scss'
|
||||
|
||||
export default defineComponent({
|
||||
name: 'WorkflowDefinitionCreate',
|
||||
|
|
@ -32,7 +32,7 @@ const workflowRelation = defineComponent({
|
|||
const { t } = this
|
||||
|
||||
return (
|
||||
<Card title={t('project.workflow_relation.workflow_relation')}>
|
||||
<Card title={t('project.workflow.workflow_relation')}>
|
||||
<div>
|
||||
<NSelect />
|
||||
<NButton strong secondary circle type='info'>
|
||||
Loading…
Reference in New Issue