This is an automated email from the ASF dual-hosted git repository. benjobs pushed a commit to branch resource in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git
commit e7226859150aaae8e9ae5982ad620d682bb7028e Author: benjobs <[email protected]> AuthorDate: Sat Dec 16 22:27:29 2023 +0800 [Improve] resource improvement --- .../console/core/enums/ResourceTypeEnum.java | 2 +- .../src/main/resources/db/data-h2.sql | 6 +- .../components/Form/src/components/FormItem.vue | 8 +- .../Modal/src/components/ModalWrapper.vue | 4 +- .../src/hooks/setting/useMenuSetting.ts | 10 +- .../src/locales/lang/zh-CN/flink/resource.ts | 6 +- .../src/locales/lang/zh-CN/menu.ts | 2 +- .../streampark-console-webapp/src/utils/props.ts | 46 ++++----- .../src/views/base/error-log/data.tsx | 12 +-- .../src/views/resource/upload/View.vue | 24 ++--- .../views/resource/upload/components/Upload.vue | 106 +++++++++++---------- .../resource/upload/components/UploadDrawer.vue | 26 ++--- .../src/views/resource/upload/upload.data.ts | 2 +- .../src/views/resource/upload/useUploadRender.tsx | 4 +- .../variable/components/VariableDrawer.vue | 4 +- 15 files changed, 137 insertions(+), 125 deletions(-) diff --git a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/enums/ResourceTypeEnum.java b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/enums/ResourceTypeEnum.java index cd8a20b81..c3aa3143e 100644 --- a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/enums/ResourceTypeEnum.java +++ b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/enums/ResourceTypeEnum.java @@ -36,7 +36,7 @@ public enum ResourceTypeEnum { UDXF(2), /** Common resource, like mysql-jdbc */ - NORMAL_JAR(3), + JAR_LIBRARY(3), /** Reserved for resource group */ GROUP(4); diff --git a/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql b/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql index ab901a8f3..61be9f74d 100644 --- a/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql +++ b/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql @@ -76,9 +76,9 @@ insert into `t_menu` values (110118, 110100, 'app sql delete', null, null, 'sql: insert into `t_menu` values (110301, 110300, 'cluster add', '/flink/add_cluster', 'flink/cluster/Add', 'cluster:create', '', '0', 0, null, now(), now()); insert into `t_menu` values (110302, 110300, 'cluster edit', '/flink/edit_cluster', 'flink/cluster/Edit', 'cluster:update', '', '0', 0, null, now(), now()); -insert into `t_menu` values (130100, 130000, 'resource.project', '/resource/project', 'resource/project/View', null, 'github', '0', 1, 3, now(), now()); -insert into `t_menu` values (130200, 130000, 'resource.variable', '/resource/variable', 'resource/variable/View', null, null, '0', 1, 4, now(), now()); -insert into `t_menu` values (130300, 130000, 'resource.upload', '/resource/upload', 'resource/upload/View', null, null, '0', 1, 3, now(), now()); +insert into `t_menu` values (130100, 130000, 'resource.project', '/resource/project', 'resource/project/View', null, 'github', '0', 1, 2, now(), now()); +insert into `t_menu` values (130200, 130000, 'resource.variable', '/resource/variable', 'resource/variable/View', null, null, '0', 1, 3, now(), now()); +insert into `t_menu` values (130300, 130000, 'resource.upload', '/resource/upload', 'resource/upload/View', null, null, '0', 1, 1, now(), now()); insert into `t_menu` values (130101, 130100, 'project view', null, null, 'project:view', null, '1', 1, null, now(), now()); insert into `t_menu` values (130102, 130100, 'project add', '/project/add', 'resource/project/Add', 'project:create', '', '0', 0, null, now(), now()); diff --git a/streampark-console/streampark-console-webapp/src/components/Form/src/components/FormItem.vue b/streampark-console/streampark-console-webapp/src/components/Form/src/components/FormItem.vue index 9bbb5023f..137ae94d6 100644 --- a/streampark-console/streampark-console-webapp/src/components/Form/src/components/FormItem.vue +++ b/streampark-console/streampark-console-webapp/src/components/Form/src/components/FormItem.vue @@ -333,8 +333,8 @@ return slot ? getSlot(slots, slot, unref(getValues)) : render - ? render(unref(getValues)) - : renderComponent(); + ? render(unref(getValues)) + : renderComponent(); }; const showSuffix = !!suffix; @@ -382,8 +382,8 @@ return colSlot ? getSlot(slots, colSlot, values) : renderColContent - ? renderColContent(values) - : renderItem(); + ? renderColContent(values) + : renderItem(); }; return ( diff --git a/streampark-console/streampark-console-webapp/src/components/Modal/src/components/ModalWrapper.vue b/streampark-console/streampark-console-webapp/src/components/Modal/src/components/ModalWrapper.vue index 52c8b5eb8..1b1b9a613 100644 --- a/streampark-console/streampark-console-webapp/src/components/Modal/src/components/ModalWrapper.vue +++ b/streampark-console/streampark-console-webapp/src/components/Modal/src/components/ModalWrapper.vue @@ -153,8 +153,8 @@ realHeightRef.value = props.height ? props.height : realHeight > maxHeight - ? maxHeight - : realHeight; + ? maxHeight + : realHeight; } emit('height-change', unref(realHeightRef)); } catch (error) { diff --git a/streampark-console/streampark-console-webapp/src/hooks/setting/useMenuSetting.ts b/streampark-console/streampark-console-webapp/src/hooks/setting/useMenuSetting.ts index f501c6e80..3566bfd27 100644 --- a/streampark-console/streampark-console-webapp/src/hooks/setting/useMenuSetting.ts +++ b/streampark-console/streampark-console-webapp/src/hooks/setting/useMenuSetting.ts @@ -105,8 +105,8 @@ export function useMenuSetting() { return siderHidden ? 0 : collapsedShowTitle - ? SIDE_BAR_SHOW_TIT_MINI_WIDTH - : SIDE_BAR_MINI_WIDTH; + ? SIDE_BAR_SHOW_TIT_MINI_WIDTH + : SIDE_BAR_MINI_WIDTH; }); const getCalcContentWidth = computed(() => { @@ -114,9 +114,9 @@ export function useMenuSetting() { unref(getIsTopMenu) || !unref(getShowMenu) || (unref(getSplit) && unref(getMenuHidden)) ? 0 : unref(getIsMixSidebar) - ? (unref(getCollapsed) ? SIDE_BAR_MINI_WIDTH : SIDE_BAR_SHOW_TIT_MINI_WIDTH) + - (unref(getMixSideFixed) && unref(mixSideHasChildren) ? unref(getRealWidth) : 0) - : unref(getRealWidth); + ? (unref(getCollapsed) ? SIDE_BAR_MINI_WIDTH : SIDE_BAR_SHOW_TIT_MINI_WIDTH) + + (unref(getMixSideFixed) && unref(mixSideHasChildren) ? unref(getRealWidth) : 0) + : unref(getRealWidth); return `calc(100% - ${unref(width)}px)`; }); diff --git a/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/flink/resource.ts b/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/flink/resource.ts index 5b0dc99e5..498e80f56 100644 --- a/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/flink/resource.ts +++ b/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/flink/resource.ts @@ -23,14 +23,14 @@ export default { uploadResource: '上传资源', resourceName: '资源名称', resourceType: '资源类型', - engineType: '计算引擎类型', + engineType: '引擎类型', resourceGroup: '资源组', groupName: '资源组名称', resourceGroupPlaceholder: '请选择组资源', resourceNamePlaceholder: '请输入资源名称', groupNamePlaceholder: '请输入资源组名称', groupNameIsRequiredMessage: '资源组名称必填', - engineTypePlaceholder: '请选择计算引擎类型', + engineTypePlaceholder: '请选择引擎类型', multiPomTip: '不支持同时添加多个依赖', addResourceTip: '请添加资源', jarFileErrorTip: 'Jar 文件为空,请重试', @@ -55,7 +55,7 @@ export default { form: { descriptionMessage: '超过 100 个字符的最大长度限制', resourceNameIsRequiredMessage: '资源名称为必填项', - engineTypeIsRequiredMessage: '计算引擎类型为必填项', + engineTypeIsRequiredMessage: '引擎类型为必填项', resourceTypeIsRequiredMessage: '资源类型为必填项', resourceTypePlaceholder: '请选择资源类型', exists: '资源已存在', diff --git a/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/menu.ts b/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/menu.ts index 0c12636ee..9ccc42746 100644 --- a/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/menu.ts +++ b/streampark-console/streampark-console-webapp/src/locales/lang/zh-CN/menu.ts @@ -26,7 +26,7 @@ export default { resource: { menu: '资源中心', project: '项目管理', - upload: '物料管理', + upload: '资源上传', variable: '变量管理', }, flink: { diff --git a/streampark-console/streampark-console-webapp/src/utils/props.ts b/streampark-console/streampark-console-webapp/src/utils/props.ts index 4a5491b27..368f490f2 100644 --- a/streampark-console/streampark-console-webapp/src/utils/props.ts +++ b/streampark-console/streampark-console-webapp/src/utils/props.ts @@ -28,8 +28,8 @@ export type BuildPropOption<T, D extends BuildPropType<T, V, C>, R, V, C> = { default?: R extends true ? never : D extends Record<string, unknown> | Array<any> - ? () => D - : (() => D) | D; + ? () => D + : (() => D) | D; validator?: ((val: any) => val is C) | ((val: any) => boolean); }; @@ -37,8 +37,8 @@ type _BuildPropType<T, V, C> = | (T extends PropWrapper<unknown> ? T[typeof wrapperKey] : [V] extends [never] - ? ResolvePropTypeWithReadonly<T> - : never) + ? ResolvePropTypeWithReadonly<T> + : never) | V | C; export type BuildPropType<T, V, C> = _BuildPropType< @@ -53,8 +53,8 @@ type _BuildPropDefault<T, D> = [T] extends [ ] ? D : D extends () => T - ? ReturnType<D> - : D; + ? ReturnType<D> + : D; export type BuildPropDefault<T, D, R> = R extends true ? { readonly default?: undefined } @@ -146,12 +146,12 @@ export const buildProps = < [K in keyof O]: O[K] extends BuildPropReturn<any, any, any, any, any> ? O[K] : [O[K]] extends NativePropType - ? O[K] - : O[K] extends BuildPropOption<infer T, infer D, infer R, infer V, infer C> - ? D extends BuildPropType<T, V, C> - ? BuildPropOption<T, D, R, V, C> - : never - : never; + ? O[K] + : O[K] extends BuildPropOption<infer T, infer D, infer R, infer V, infer C> + ? D extends BuildPropType<T, V, C> + ? BuildPropOption<T, D, R, V, C> + : never + : never; }, >( props: O, @@ -162,17 +162,17 @@ export const buildProps = < [K in keyof O]: O[K] extends { [propKey]: boolean } ? O[K] : [O[K]] extends NativePropType - ? O[K] - : O[K] extends BuildPropOption< - infer T, - // eslint-disable-next-line @typescript-eslint/no-unused-vars - infer _D, - infer R, - infer V, - infer C - > - ? BuildPropReturn<T, O[K]['default'], R, V, C> - : never; + ? O[K] + : O[K] extends BuildPropOption< + infer T, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + infer _D, + infer R, + infer V, + infer C + > + ? BuildPropReturn<T, O[K]['default'], R, V, C> + : never; }; export const definePropType = <T>(val: any) => ({ [wrapperKey]: val }) as PropWrapper<T>; diff --git a/streampark-console/streampark-console-webapp/src/views/base/error-log/data.tsx b/streampark-console/streampark-console-webapp/src/views/base/error-log/data.tsx index 73120a425..3ffc2f453 100644 --- a/streampark-console/streampark-console-webapp/src/views/base/error-log/data.tsx +++ b/streampark-console/streampark-console-webapp/src/views/base/error-log/data.tsx @@ -16,12 +16,12 @@ export function getColumns(): BasicColumn[] { text === ErrorTypeEnum.VUE ? 'green' : text === ErrorTypeEnum.RESOURCE - ? 'cyan' - : text === ErrorTypeEnum.PROMISE - ? 'blue' - : ErrorTypeEnum.AJAX - ? 'red' - : 'purple'; + ? 'cyan' + : text === ErrorTypeEnum.PROMISE + ? 'blue' + : ErrorTypeEnum.AJAX + ? 'red' + : 'purple'; return <Tag color={color}>{() => text}</Tag>; }, }, diff --git a/streampark-console/streampark-console-webapp/src/views/resource/upload/View.vue b/streampark-console/streampark-console-webapp/src/views/resource/upload/View.vue index a7dfa16d0..789e734e0 100644 --- a/streampark-console/streampark-console-webapp/src/views/resource/upload/View.vue +++ b/streampark-console/streampark-console-webapp/src/views/resource/upload/View.vue @@ -25,6 +25,14 @@ </template> <template #resetBefore> 1111 </template> <template #bodyCell="{ column, record }"> + <template v-if="column.dataIndex === 'engineType'"> + <span v-if="record.engineType === EngineTypeEnum.FLINK"> + <SvgIcon name="flink" /> Apache Flink + </span> + <span v-if="record.engineType === EngineTypeEnum.SPARK"> + <SvgIcon name="spark" /> Apache Spark + </span> + </template> <template v-if="column.dataIndex === 'resourceType'"> <Tag color="processing" v-if="record.resourceType === ResourceTypeEnum.FLINK_APP"> <template #icon> @@ -47,11 +55,11 @@ UDXF </Tag> - <Tag color="processing" v-if="record.resourceType === ResourceTypeEnum.NORMAL_JAR"> + <Tag color="processing" v-if="record.resourceType === ResourceTypeEnum.JAR_LIBRARY"> <template #icon> - <img :src="normalJarSvg" class="svg-icon" alt="Normal jar" /> + <img :src="jarSvg" class="svg-icon" alt="jar library" /> </template> - Normal Jar + Jar library </Tag> <Tag color="processing" v-if="record.resourceType === ResourceTypeEnum.GROUP"> @@ -61,14 +69,6 @@ GROUP </Tag> </template> - <template v-if="column.dataIndex === 'engineType'"> - <span v-if="record.engineType === EngineTypeEnum.FLINK"> - <SvgIcon name="flink" /> Apache Flink - </span> - <span v-if="record.engineType === EngineTypeEnum.SPARK"> - <SvgIcon name="spark" /> Apache Spark - </span> - </template> <template v-if="column.dataIndex === 'action'"> <TableAction :actions="[ @@ -126,7 +126,7 @@ import flinkAppSvg from '/@/assets/icons/flink2.svg'; import connectorSvg from '/@/assets/icons/connector.svg'; import udxfSvg from '/@/assets/icons/fx.svg'; - import normalJarSvg from '/@/assets/icons/jar.svg'; + import jarSvg from '/@/assets/icons/jar.svg'; import groupSvg from '/@/assets/icons/group.svg'; const teamResource = ref<Array<any>>([]); diff --git a/streampark-console/streampark-console-webapp/src/views/resource/upload/components/Upload.vue b/streampark-console/streampark-console-webapp/src/views/resource/upload/components/Upload.vue index 4c18a8416..44ac7c506 100644 --- a/streampark-console/streampark-console-webapp/src/views/resource/upload/components/Upload.vue +++ b/streampark-console/streampark-console-webapp/src/views/resource/upload/components/Upload.vue @@ -210,58 +210,68 @@ </script> <template> - <template v-if="props.formModel.resourceType === ResourceTypeEnum.FLINK_APP"> - <UploadJobJar :custom-request="handleCustomDepsRequest" v-model:loading="loading" /> - </template> - <template v-else> - <Tabs type="card" v-model:activeKey="activeTab" class="pom-card"> - <TabPane key="pom" tab="Maven pom"> - <div class="relative"> - <div ref="pomBox" class="pom-box syntax-true" style="height: 300px"></div> - </div> - </TabPane> - <TabPane key="jar" tab="Upload Jar"> - <UploadJobJar :custom-request="handleCustomDepsRequest" v-model:loading="loading" /> - </TabPane> - </Tabs> - </template> + <div class="upload_container"> + <template v-if="props.formModel.resourceType === ResourceTypeEnum.FLINK_APP"> + <UploadJobJar :custom-request="handleCustomDepsRequest" v-model:loading="loading" /> + </template> + <template v-else> + <Tabs type="card" v-model:activeKey="activeTab" class="pom-card"> + <TabPane key="pom" tab="Maven pom"> + <div class="relative"> + <div ref="pomBox" class="pom-box" style="height: 300px"></div> + </div> + </TabPane> + <TabPane key="jar" tab="Upload Jar"> + <UploadJobJar :custom-request="handleCustomDepsRequest" v-model:loading="loading" /> + </TabPane> + </Tabs> + </template> - <div class="dependency-box" v-if="uploadJars.length > 0"> - <Alert - class="dependency-item" - v-for="jar in uploadJars" - :key="`upload_jars_${jar}`" - type="info" - > - <template #message> - <Space> - <Tag class="tag-dependency" color="#108ee9">JAR</Tag> - {{ jar.split(':')[0] }} - <Icon - icon="ant-design:close-outlined" - class="icon-close cursor-pointer" - :size="12" - @click="handleRemoveJar(jar)" - /> - </Space> - </template> - </Alert> + <div class="dependency-box" v-if="uploadJars.length > 0"> + <Alert + class="dependency-item" + v-for="jar in uploadJars" + :key="`upload_jars_${jar}`" + type="info" + > + <template #message> + <Space> + <Tag class="tag-dependency" color="#108ee9">JAR</Tag> + {{ jar.split(':')[0] }} + <Icon + icon="ant-design:close-outlined" + class="icon-close cursor-pointer" + :size="12" + @click="handleRemoveJar(jar)" + /> + </Space> + </template> + </Alert> + </div> </div> </template> <style lang="less"> - .dependency-box { - margin-top: 10px; - } - .apply-pom { - z-index: 99; - position: absolute; - bottom: 20px; - float: right; - right: 20px; - cursor: pointer; - height: 26px; - padding: 0 12px; - font-size: 12px; + .upload_container > { + .dependency-box { + margin-top: 10px; + } + .ant-tabs-top > .ant-tabs-nav { + margin: 0; + } + .pom-box { + border: 1px solid @border-color-base; + } + .apply-pom { + z-index: 99; + position: absolute; + bottom: 20px; + float: right; + right: 20px; + cursor: pointer; + height: 26px; + padding: 0 12px; + font-size: 12px; + } } </style> diff --git a/streampark-console/streampark-console-webapp/src/views/resource/upload/components/UploadDrawer.vue b/streampark-console/streampark-console-webapp/src/views/resource/upload/components/UploadDrawer.vue index 9adb62d11..2ef4165e0 100644 --- a/streampark-console/streampark-console-webapp/src/views/resource/upload/components/UploadDrawer.vue +++ b/streampark-console/streampark-console-webapp/src/views/resource/upload/components/UploadDrawer.vue @@ -19,11 +19,11 @@ :okText="t('common.submitText')" @register="registerDrawer" showFooter - width="650" + width="700" @ok="handleSubmit" > <template #title> - <Icon icon="ant-design:code-outlined" /> + <SvgIcon name="resource" /> {{ getTitle }} </template> <BasicForm @register="registerForm" :schemas="getResourceFormSchema"> @@ -43,7 +43,6 @@ import { ref, computed, unref } from 'vue'; import { BasicForm, FormSchema, useForm } from '/@/components/Form'; import { BasicDrawer, useDrawerInner } from '/@/components/Drawer'; - import { Icon } from '/@/components/Icon'; import { useI18n } from '/@/hooks/web/useI18n'; import Upload from './Upload.vue'; import { fetchAddResource, fetchUpdateResource, checkResource } from '/@/api/resource/upload'; @@ -55,6 +54,7 @@ } from '../useUploadRender'; import { useMessage } from '/@/hooks/web/useMessage'; import { exceptionPropWidth } from '/@/utils'; + import SvgIcon from '/@/components/Icon/src/SvgIcon.vue'; const emit = defineEmits(['success', 'register']); @@ -74,6 +74,14 @@ const getResourceFormSchema = computed((): FormSchema[] => { return [ + { + field: 'engineType', + label: t('flink.resource.engineType'), + component: 'Select', + render: ({ model }) => renderEngineType({ model }), + defaultValue: EngineTypeEnum.FLINK, + rules: [{ required: true, message: t('flink.resource.form.engineTypeIsRequiredMessage') }], + }, { field: 'resourceType', label: t('flink.resource.resourceType'), @@ -87,20 +95,14 @@ field: 'resourceName', label: t('flink.resource.resourceName'), component: 'Input', - ifShow: ({ values }) => values?.resourceType !== ResourceTypeEnum.CONNECTOR, + ifShow: ({ values }) => + values?.resourceType !== ResourceTypeEnum.CONNECTOR && + values?.resourceType !== ResourceTypeEnum.GROUP, componentProps: { placeholder: t('flink.resource.resourceNamePlaceholder') }, rules: [ { required: true, message: t('flink.resource.form.resourceNameIsRequiredMessage') }, ], }, - { - field: 'engineType', - label: t('flink.resource.engineType'), - component: 'Select', - render: ({ model }) => renderEngineType({ model }), - defaultValue: EngineTypeEnum.FLINK, - rules: [{ required: true, message: t('flink.resource.form.engineTypeIsRequiredMessage') }], - }, { field: 'resourceName', label: t('flink.resource.groupName'), diff --git a/streampark-console/streampark-console-webapp/src/views/resource/upload/upload.data.ts b/streampark-console/streampark-console-webapp/src/views/resource/upload/upload.data.ts index cc375d5e8..901beb01e 100644 --- a/streampark-console/streampark-console-webapp/src/views/resource/upload/upload.data.ts +++ b/streampark-console/streampark-console-webapp/src/views/resource/upload/upload.data.ts @@ -22,7 +22,7 @@ export enum ResourceTypeEnum { FLINK_APP = 'FLINK_APP', CONNECTOR = 'CONNECTOR', UDXF = 'UDXF', - NORMAL_JAR = 'NORMAL_JAR', + JAR_LIBRARY = 'JAR_LIBRARY', GROUP = 'GROUP', } diff --git a/streampark-console/streampark-console-webapp/src/views/resource/upload/useUploadRender.tsx b/streampark-console/streampark-console-webapp/src/views/resource/upload/useUploadRender.tsx index b9760be58..fc9e56f42 100644 --- a/streampark-console/streampark-console-webapp/src/views/resource/upload/useUploadRender.tsx +++ b/streampark-console/streampark-console-webapp/src/views/resource/upload/useUploadRender.tsx @@ -22,7 +22,7 @@ import flinkAppSvg from '/@/assets/icons/flink2.svg'; import sparkSvg from '/@/assets/icons/spark.svg'; import connectorSvg from '/@/assets/icons/connector.svg'; import udxfSvg from '/@/assets/icons/fx.svg'; -import normalJarSvg from '/@/assets/icons/jar.svg'; +import jarSvg from '/@/assets/icons/jar.svg'; import groupSvg from '/@/assets/icons/group.svg'; const { t } = useI18n(); @@ -34,7 +34,7 @@ export const renderResourceType = ({ model }) => { { label: 'Flink App', value: ResourceTypeEnum.FLINK_APP, src: flinkAppSvg }, { label: 'Connector', value: ResourceTypeEnum.CONNECTOR, src: connectorSvg }, { label: 'UDXF', value: ResourceTypeEnum.UDXF, src: udxfSvg }, - { label: 'Normal Jar', value: ResourceTypeEnum.NORMAL_JAR, src: normalJarSvg }, + { label: 'Jar Library', value: ResourceTypeEnum.JAR_LIBRARY, src: jarSvg }, { label: 'Group', value: ResourceTypeEnum.GROUP, src: groupSvg }, ]; return options.map(({ label, value, src }) => { diff --git a/streampark-console/streampark-console-webapp/src/views/resource/variable/components/VariableDrawer.vue b/streampark-console/streampark-console-webapp/src/views/resource/variable/components/VariableDrawer.vue index 820db65cd..b669aa73a 100644 --- a/streampark-console/streampark-console-webapp/src/views/resource/variable/components/VariableDrawer.vue +++ b/streampark-console/streampark-console-webapp/src/views/resource/variable/components/VariableDrawer.vue @@ -23,7 +23,7 @@ @ok="handleSubmit" > <template #title> - <Icon icon="ant-design:code-outlined" /> + <SvgIcon name="variable" /> {{ getTitle }} </template> <BasicForm @register="registerForm" :schemas="getTeamFormSchema" /> @@ -39,9 +39,9 @@ import { ref, h, computed, unref, reactive } from 'vue'; import { BasicForm, FormSchema, useForm } from '/@/components/Form'; import { BasicDrawer, useDrawerInner } from '/@/components/Drawer'; - import { Icon } from '/@/components/Icon'; import { useI18n } from '/@/hooks/web/useI18n'; import { useFormValidate } from '/@/hooks/web/useFormValidate'; + import SvgIcon from '/@/components/Icon/src/SvgIcon.vue'; import { fetchAddVariable, fetchCheckVariableCode,
