You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampark.apache.org by be...@apache.org on 2022/10/08 14:35:16 UTC

[incubator-streampark] branch dev updated: [Improve] new-webui add licenses header (#1775)

This is an automated email from the ASF dual-hosted git repository.

benjobs pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git


The following commit(s) were added to refs/heads/dev by this push:
     new 68580241d [Improve] new-webui add licenses header (#1775)
68580241d is described below

commit 68580241dcb55edbff12c793ee15454e93fd7fe9
Author: WangSizhu0504 <39...@users.noreply.github.com>
AuthorDate: Sat Oct 8 22:35:08 2022 +0800

    [Improve] new-webui add licenses header (#1775)
    
    * [Improve] new-webui add licenses header
    * [Bug] Add Icon Component, change .gitignore
---
 .gitignore                                         |   2 +-
 .../streampark-console-newui/.editorconfig         |  15 +
 streampark-console/streampark-console-newui/.env   |  15 +
 .../streampark-console-newui/.env.development      |  22 +-
 .../streampark-console-newui/.env.production       |  16 +-
 .../streampark-console-newui/.eslintignore         |  14 +
 .../streampark-console-newui/.eslintrc.js          |  16 +
 .../streampark-console-newui/.gitpod.yml           |  15 +
 .../streampark-console-newui/.husky/commit-msg     |  15 +
 .../streampark-console-newui/.husky/common.sh      |  15 +
 .../streampark-console-newui/.husky/pre-commit     |  16 +
 .../streampark-console-newui/.prettierignore       |  15 +
 .../streampark-console-newui/.stylelintignore      |  14 +
 .../streampark-console-newui/README.md             |  69 +-
 .../streampark-console-newui/README.zh-CN.md       |  70 +-
 .../build/config/themeConfig.ts                    |  16 +
 .../streampark-console-newui/build/constant.ts     |  16 +
 .../build/generate/generateModifyVars.ts           |  16 +
 .../build/getConfigFileName.ts                     |  16 +
 .../build/script/buildConf.ts                      |  17 +-
 .../build/script/postBuild.ts                      |  16 +
 .../streampark-console-newui/build/utils.ts        |  16 +
 .../build/vite/plugin/compress.ts                  |  16 +
 .../build/vite/plugin/html.ts                      |  16 +
 .../build/vite/plugin/imagemin.ts                  |  16 +
 .../build/vite/plugin/index.ts                     |  22 +-
 .../build/vite/plugin/mock.ts                      |  19 -
 .../build/vite/plugin/pwa.ts                       |  33 -
 .../build/vite/plugin/styleImport.ts               |  16 +
 .../build/vite/plugin/svgSprite.ts                 |  16 +
 .../build/vite/plugin/theme.ts                     |  16 +
 .../build/vite/plugin/visualizer.ts                |  18 +-
 .../streampark-console-newui/build/vite/proxy.ts   |  17 +-
 .../streampark-console-newui/commitlint.config.js  |  16 +
 .../streampark-console-newui/index.html            |  17 +
 .../mock/_createProductionServer.ts                |  18 -
 .../streampark-console-newui/mock/_util.ts         |  60 --
 .../streampark-console-newui/mock/sys/user.ts      | 138 ----
 .../streampark-console-newui/package.json          |  14 +-
 .../streampark-console-newui/postcss.config.js     |  16 +
 .../streampark-console-newui/prettier.config.js    |  16 +
 .../public/resource/img/pwa-192x192.png            | Bin 12205 -> 0 bytes
 .../public/resource/img/pwa-512x512.png            | Bin 52656 -> 0 bytes
 .../public/resource/tinymce/langs/en.js            |  16 +
 .../public/resource/tinymce/langs/zh_CN.js         |  18 +-
 .../skins/ui/oxide-dark/content.inline.min.css     |  16 +
 .../tinymce/skins/ui/oxide-dark/content.min.css    |  16 +
 .../skins/ui/oxide-dark/content.mobile.min.css     |  16 +
 .../tinymce/skins/ui/oxide-dark/skin.min.css       |  16 +
 .../skins/ui/oxide-dark/skin.mobile.min.css        |  16 +
 .../tinymce/skins/ui/oxide/content.inline.min.css  |  21 +-
 .../tinymce/skins/ui/oxide/content.min.css         |  16 +
 .../tinymce/skins/ui/oxide/content.mobile.min.css  |  16 +
 .../resource/tinymce/skins/ui/oxide/skin.min.css   |  16 +
 .../tinymce/skins/ui/oxide/skin.mobile.min.css     |  16 +
 .../streampark-console-newui/src/App.vue           |  16 +
 .../src/adapter/api/baseUrl.ts                     |  16 +
 .../src/adapter/api/index.ts                       |  32 +-
 .../src/adapter/api/passport.ts                    |  16 +
 .../src/adapter/index.less                         |  16 +
 .../streampark-console-newui/src/adapter/index.ts  |  16 +
 .../src/adapter/store/getters.ts                   |  16 +
 .../src/adapter/store/index.ts                     |  16 +
 .../src/adapter/store/modules/user.ts              |  16 +
 .../src/adapter/store/mutation-types.ts            |  16 +
 .../src/adapter/utils/request.ts                   |  16 +
 .../src/adapter/utils/storage.ts                   |  16 +
 .../src/api/demo/cascader.ts                       |  16 +
 .../streampark-console-newui/src/api/demo/error.ts |  16 +
 .../src/api/demo/model/accountModel.ts             |  16 +
 .../src/api/demo/model/areaModel.ts                |  16 +
 .../src/api/demo/model/optionsModel.ts             |  16 +
 .../src/api/demo/model/systemModel.ts              |  16 +
 .../src/api/demo/model/tableModel.ts               |  16 +
 .../src/api/demo/select.ts                         |  16 +
 .../src/api/demo/system.ts                         |  16 +
 .../streampark-console-newui/src/api/demo/table.ts |  16 +
 .../streampark-console-newui/src/api/demo/tree.ts  |  16 +
 .../src/api/flink/app/app.ts                       |  16 +
 .../src/api/flink/app/app.type.ts                  |  16 +
 .../src/api/flink/app/flinkBuild.ts                |  16 +
 .../src/api/flink/app/flinkHistory.ts              |  16 +
 .../src/api/flink/app/flinkPodtmpl.ts              |  16 +
 .../src/api/flink/app/flinkSql.ts                  |  16 +
 .../src/api/flink/app/metrics.ts                   |  16 +
 .../src/api/flink/app/savepoint.ts                 |  16 +
 .../src/api/flink/config/index.ts                  |  16 +
 .../src/api/flink/config/index.type.ts             |  16 +
 .../src/api/flink/notebook.ts                      |  16 +
 .../src/api/flink/project/index.ts                 |  16 +
 .../src/api/flink/project/model/projectModel.ts    |  16 +
 .../src/api/flink/setting/alert.ts                 |  16 +
 .../src/api/flink/setting/flinkCluster.ts          |  16 +
 .../src/api/flink/setting/flinkEnv.ts              |  16 +
 .../src/api/flink/setting/index.ts                 |  16 +
 .../src/api/flink/setting/types/alert.type.ts      |  16 +
 .../api/flink/setting/types/flinkCluster.type.ts   |  16 +
 .../src/api/flink/setting/types/flinkEnv.type.ts   |  16 +
 .../src/api/flink/setting/types/setting.type.ts    |  16 +
 .../src/api/model/baseModel.ts                     |  16 +
 .../streampark-console-newui/src/api/sys/menu.ts   |  16 +
 .../src/api/sys/model/menuModel.ts                 |  16 +
 .../src/api/sys/model/notifyModel.ts               |  16 +
 .../src/api/sys/model/uploadModel.ts               |  16 +
 .../src/api/sys/model/userModel.ts                 |  16 +
 .../streampark-console-newui/src/api/sys/notify.ts |  16 +
 .../streampark-console-newui/src/api/sys/role.ts   |  16 +
 .../streampark-console-newui/src/api/sys/team.ts   |  16 +
 .../streampark-console-newui/src/api/sys/token.ts  |  16 +
 .../streampark-console-newui/src/api/sys/upload.ts |  16 +
 .../streampark-console-newui/src/api/sys/user.ts   |  16 +
 .../src/components/Application/index.ts            |  16 +
 .../Application/src/AppDarkModeToggle.vue          |  16 +
 .../components/Application/src/AppLocalePicker.vue |  16 +-
 .../src/components/Application/src/AppLogo.vue     |  32 +-
 .../src/components/Application/src/AppProvider.vue |  16 +
 .../Application/src/search/AppSearch.vue           |  16 +
 .../Application/src/search/AppSearchFooter.vue     |  16 +
 .../Application/src/search/AppSearchKeyItem.vue    |  16 +
 .../Application/src/search/AppSearchModal.vue      |  16 +
 .../Application/src/search/useMenuSearch.ts        |  16 +
 .../components/Application/src/useAppContext.ts    |  16 +
 .../src/components/Authority/index.ts              |  16 +
 .../src/components/Authority/src/Authority.vue     |  15 +-
 .../src/components/Basic/index.ts                  |  16 +
 .../src/components/Basic/src/BasicArrow.vue        |  16 +-
 .../src/components/Basic/src/BasicHelp.vue         |  16 +
 .../src/components/Basic/src/BasicTitle.vue        |  16 +
 .../src/components/Button/index.ts                 |  16 +
 .../src/components/Button/src/BasicButton.vue      |  16 +
 .../src/components/Button/src/PopConfirmButton.vue |  16 +
 .../src/components/Button/src/props.ts             |  16 +
 .../src/components/CardList/index.ts               |  16 +
 .../src/components/CardList/src/CardList.vue       |  16 +
 .../src/components/CardList/src/data.ts            |  16 +
 .../src/components/ClickOutSide/index.ts           |  16 +
 .../components/ClickOutSide/src/ClickOutSide.vue   |  16 +
 .../src/components/CodeEditor/index.ts             |  16 +
 .../src/components/CodeEditor/src/CodeEditor.vue   |  16 +
 .../CodeEditor/src/codemirror/CodeMirror.vue       |  16 +
 .../CodeEditor/src/codemirror/codeMirror.ts        |  16 +
 .../CodeEditor/src/codemirror/codemirror.css       |  16 +
 .../CodeEditor/src/json-preview/JsonPreview.vue    |  16 +
 .../src/components/CodeEditor/src/typing.ts        |  16 +
 .../src/components/Container/index.ts              |  16 +
 .../src/components/Container/src/LazyContainer.vue |  16 +
 .../components/Container/src/ScrollContainer.vue   |  16 +
 .../Container/src/collapse/CollapseContainer.vue   |  16 +
 .../Container/src/collapse/CollapseHeader.vue      |  16 +
 .../src/components/Container/src/typing.ts         |  16 +
 .../src/components/ContextMenu/index.ts            |  16 +
 .../src/components/ContextMenu/src/ContextMenu.vue |  16 +
 .../ContextMenu/src/createContextMenu.ts           |  16 +
 .../src/components/ContextMenu/src/typing.ts       |  16 +
 .../src/components/CountDown/index.ts              |  16 +
 .../src/components/CountDown/src/CountButton.vue   |  16 +
 .../components/CountDown/src/CountdownInput.vue    |  16 +
 .../src/components/CountDown/src/useCountdown.ts   |  16 +
 .../src/components/CountTo/index.ts                |  16 +
 .../src/components/CountTo/src/CountTo.vue         |  16 +
 .../src/components/Cropper/index.ts                |  16 +
 .../src/components/Cropper/src/CopperModal.vue     |  16 +
 .../src/components/Cropper/src/Cropper.vue         |  16 +
 .../src/components/Cropper/src/CropperAvatar.vue   |  16 +
 .../src/components/Cropper/src/typing.ts           |  16 +
 .../src/components/Description/index.ts            |  16 +
 .../src/components/Description/src/Description.vue |  16 +
 .../src/components/Description/src/typing.ts       |  16 +
 .../components/Description/src/useDescription.ts   |  16 +
 .../src/components/Drawer/index.ts                 |  16 +
 .../src/components/Drawer/src/BasicDrawer.vue      |  16 +
 .../Drawer/src/components/DrawerFooter.vue         |  16 +
 .../Drawer/src/components/DrawerHeader.vue         |  16 +
 .../src/components/Drawer/src/props.ts             |  16 +
 .../src/components/Drawer/src/typing.ts            |  16 +
 .../src/components/Drawer/src/useDrawer.ts         |  16 +
 .../src/components/Dropdown/index.ts               |  16 +
 .../src/components/Dropdown/src/Dropdown.vue       |  16 +
 .../src/components/Dropdown/src/typing.ts          |  16 +
 .../src/components/Excel/index.ts                  |  16 +
 .../src/components/Excel/src/Export2Excel.ts       |  16 +
 .../src/components/Excel/src/ExportExcelModal.vue  |  16 +
 .../src/components/Excel/src/ImportExcel.vue       |  16 +
 .../src/components/Excel/src/typing.ts             |  16 +
 .../src/components/FlowChart/index.ts              |  16 +
 .../src/components/FlowChart/src/FlowChart.vue     |  16 +
 .../components/FlowChart/src/FlowChartToolbar.vue  |  16 +
 .../src/components/FlowChart/src/adpterForTurbo.ts |  16 +
 .../src/components/FlowChart/src/config.ts         |  16 +
 .../src/components/FlowChart/src/enum.ts           |  16 +
 .../src/components/FlowChart/src/types.ts          |  16 +
 .../src/components/FlowChart/src/useFlowContext.ts |  16 +
 .../src/components/Form/index.ts                   |  16 +
 .../src/components/Form/src/BasicForm.vue          |  16 +
 .../src/components/Form/src/componentMap.ts        |  16 +
 .../components/Form/src/components/ApiCascader.vue |  16 +
 .../Form/src/components/ApiRadioGroup.vue          |  15 +-
 .../components/Form/src/components/ApiSelect.vue   |  16 +
 .../src/components/Form/src/components/ApiTree.vue |  16 +
 .../Form/src/components/ApiTreeSelect.vue          |  16 +
 .../components/Form/src/components/FormAction.vue  |  16 +
 .../components/Form/src/components/FormItem.vue    |  16 +
 .../Form/src/components/RadioButtonGroup.vue       |  15 +-
 .../src/components/Form/src/helper.ts              |  16 +
 .../src/components/Form/src/hooks/useAdvanced.ts   |  16 +
 .../src/components/Form/src/hooks/useAutoFocus.ts  |  16 +
 .../Form/src/hooks/useComponentRegister.ts         |  16 +
 .../src/components/Form/src/hooks/useForm.ts       |  16 +
 .../components/Form/src/hooks/useFormContext.ts    |  16 +
 .../src/components/Form/src/hooks/useFormEvents.ts |  16 +
 .../src/components/Form/src/hooks/useFormValues.ts |  16 +
 .../src/components/Form/src/hooks/useLabelWidth.ts |  16 +
 .../src/components/Form/src/props.ts               |  16 +
 .../src/components/Form/src/types/form.ts          |  16 +
 .../src/components/Form/src/types/formItem.ts      |  16 +
 .../src/components/Form/src/types/hooks.ts         |  16 +
 .../src/components/Form/src/types/index.ts         |  16 +
 .../src/components/Icon/data/icons.data.ts         | 809 +++++++++++++++++++++
 .../src/components/Icon/index.ts                   |  23 +
 .../src/components/Icon/src/Icon.vue               | 136 ++++
 .../src/components/Icon/src/IconPicker.vue         | 206 ++++++
 .../src/components/Icon/src/SvgIcon.vue            |  80 ++
 .../src/components/Loading/index.ts                |  16 +
 .../src/components/Loading/src/Loading.vue         |  16 +
 .../src/components/Loading/src/createLoading.ts    |  16 +
 .../src/components/Loading/src/typing.ts           |  16 +
 .../src/components/Loading/src/useLoading.ts       |  16 +
 .../src/components/Markdown/index.ts               |  16 +
 .../src/components/Markdown/src/Markdown.vue       |  16 +
 .../src/components/Markdown/src/MarkdownViewer.vue |  16 +
 .../src/components/Markdown/src/typing.ts          |  16 +
 .../src/components/Menu/index.ts                   |  16 +
 .../src/components/Menu/src/BasicMenu.vue          |  16 +
 .../Menu/src/components/BasicMenuItem.vue          |  16 +
 .../Menu/src/components/BasicSubMenuItem.vue       |  16 +
 .../Menu/src/components/MenuItemContent.vue        |  16 +
 .../src/components/Menu/src/index.less             |  16 +
 .../src/components/Menu/src/props.ts               |  16 +
 .../src/components/Menu/src/types.ts               |  16 +
 .../src/components/Menu/src/useOpenKeys.ts         |  16 +
 .../src/components/Modal/index.ts                  |  16 +
 .../src/components/Modal/src/BasicModal.vue        |  16 +
 .../src/components/Modal/src/components/Modal.tsx  |  16 +
 .../components/Modal/src/components/ModalClose.vue |  16 +
 .../Modal/src/components/ModalFooter.vue           |  16 +
 .../Modal/src/components/ModalHeader.vue           |  16 +
 .../Modal/src/components/ModalWrapper.vue          |  16 +
 .../src/components/Modal/src/hooks/useModal.ts     |  16 +
 .../components/Modal/src/hooks/useModalContext.ts  |  16 +
 .../src/components/Modal/src/hooks/useModalDrag.ts |  16 +
 .../Modal/src/hooks/useModalFullScreen.ts          |  16 +
 .../src/components/Modal/src/index.less            |  16 +
 .../src/components/Modal/src/props.ts              |  16 +
 .../src/components/Modal/src/typing.ts             |  16 +
 .../src/components/Page/index.ts                   |  16 +
 .../src/components/Page/src/PageFooter.vue         |  16 +
 .../src/components/Page/src/PageWrapper.vue        |  16 +
 .../src/components/Preview/index.ts                |  16 +
 .../src/components/Preview/src/Functional.vue      |  16 +
 .../src/components/Preview/src/Preview.vue         |  16 +
 .../src/components/Preview/src/functional.ts       |  16 +
 .../src/components/Preview/src/typing.ts           |  16 +
 .../src/components/Qrcode/index.ts                 |  16 +
 .../src/components/Qrcode/src/Qrcode.vue           |  16 +
 .../src/components/Qrcode/src/drawCanvas.ts        |  16 +
 .../src/components/Qrcode/src/drawLogo.ts          |  16 +
 .../src/components/Qrcode/src/qrcodePlus.ts        |  16 +
 .../src/components/Qrcode/src/toCanvas.ts          |  16 +
 .../src/components/Qrcode/src/typing.ts            |  16 +
 .../src/components/Scrollbar/index.ts              |  16 +
 .../src/components/Scrollbar/src/Scrollbar.vue     |  16 +
 .../src/components/Scrollbar/src/bar.ts            |  16 +
 .../src/components/Scrollbar/src/types.d.ts        |  16 +
 .../src/components/Scrollbar/src/util.ts           |  16 +
 .../src/components/SimpleMenu/index.ts             |  16 +
 .../src/components/SimpleMenu/src/SimpleMenu.vue   |  16 +
 .../components/SimpleMenu/src/SimpleMenuTag.vue    |  16 +
 .../components/SimpleMenu/src/SimpleSubMenu.vue    |  16 +
 .../components/SimpleMenu/src/components/Menu.vue  |  16 +
 .../src/components/MenuCollapseTransition.vue      |  16 +
 .../SimpleMenu/src/components/MenuItem.vue         |  16 +
 .../SimpleMenu/src/components/SubMenuItem.vue      |  16 +
 .../components/SimpleMenu/src/components/menu.less |  16 +
 .../components/SimpleMenu/src/components/types.ts  |  16 +
 .../SimpleMenu/src/components/useMenu.ts           |  16 +
 .../src/components/useSimpleMenuContext.ts         |  16 +
 .../src/components/SimpleMenu/src/index.less       |  16 +
 .../src/components/SimpleMenu/src/types.ts         |  16 +
 .../src/components/SimpleMenu/src/useOpenKeys.ts   |  16 +
 .../src/components/StrengthMeter/index.ts          |  16 +
 .../components/StrengthMeter/src/StrengthMeter.vue |  16 +
 .../src/components/Table/index.ts                  |  16 +
 .../src/components/Table/src/BasicTable.vue        |  16 +
 .../src/components/Table/src/componentMap.ts       |  16 +
 .../Table/src/components/EditTableHeaderIcon.vue   |  16 +
 .../components/Table/src/components/HeaderCell.vue |  16 +
 .../Table/src/components/TableAction.vue           |  16 +
 .../Table/src/components/TableFooter.vue           |  16 +
 .../Table/src/components/TableHeader.vue           |  16 +
 .../components/Table/src/components/TableImg.vue   |  16 +
 .../components/Table/src/components/TableTitle.vue |  16 +
 .../Table/src/components/editable/CellComponent.ts |  16 +
 .../Table/src/components/editable/EditableCell.vue |  16 +
 .../Table/src/components/editable/helper.ts        |  16 +
 .../Table/src/components/editable/index.ts         |  16 +
 .../src/components/settings/ColumnSetting.vue      |  16 +
 .../src/components/settings/FullScreenSetting.vue  |  16 +
 .../Table/src/components/settings/RedoSetting.vue  |  16 +
 .../Table/src/components/settings/SizeSetting.vue  |  16 +
 .../Table/src/components/settings/index.vue        |  16 +
 .../src/components/Table/src/const.ts              |  16 +
 .../src/components/Table/src/hooks/useColumns.ts   |  16 +
 .../src/components/Table/src/hooks/useCustomRow.ts |  16 +
 .../components/Table/src/hooks/useDataSource.ts    |  16 +
 .../src/components/Table/src/hooks/useLoading.ts   |  16 +
 .../components/Table/src/hooks/usePagination.tsx   |  16 +
 .../components/Table/src/hooks/useRowSelection.ts  |  16 +
 .../src/components/Table/src/hooks/useScrollTo.ts  |  16 +
 .../src/components/Table/src/hooks/useTable.ts     |  16 +
 .../components/Table/src/hooks/useTableContext.ts  |  16 +
 .../components/Table/src/hooks/useTableExpand.ts   |  16 +
 .../components/Table/src/hooks/useTableFooter.ts   |  16 +
 .../src/components/Table/src/hooks/useTableForm.ts |  16 +
 .../components/Table/src/hooks/useTableHeader.ts   |  16 +
 .../components/Table/src/hooks/useTableScroll.ts   |  16 +
 .../components/Table/src/hooks/useTableStyle.ts    |  16 +
 .../src/components/Table/src/props.ts              |  16 +
 .../src/components/Table/src/types/column.ts       |  16 +
 .../components/Table/src/types/componentType.ts    |  16 +
 .../src/components/Table/src/types/pagination.ts   |  16 +
 .../src/components/Table/src/types/table.ts        |  16 +
 .../src/components/Table/src/types/tableAction.ts  |  16 +
 .../src/components/Time/index.ts                   |  16 +
 .../src/components/Time/src/Time.vue               |  16 +
 .../src/components/Tinymce/index.ts                |  16 +
 .../src/components/Tinymce/src/Editor.vue          |  16 +
 .../src/components/Tinymce/src/ImgUpload.vue       |  16 +
 .../src/components/Tinymce/src/helper.ts           |  16 +
 .../src/components/Tinymce/src/tinymce.ts          |  16 +
 .../src/components/Transition/index.ts             |  16 +
 .../Transition/src/CollapseTransition.vue          |  16 +
 .../components/Transition/src/CreateTransition.tsx |  16 +
 .../components/Transition/src/ExpandTransition.ts  |  16 +
 .../src/components/Tree/index.ts                   |  16 +
 .../src/components/Tree/src/BasicTree.vue          |  16 +
 .../src/components/Tree/src/TreeIcon.ts            |  16 +
 .../components/Tree/src/components/TreeHeader.vue  |  16 +
 .../src/components/Tree/src/hooks/useTree.ts       |  16 +
 .../src/components/Tree/src/types/tree.ts          |  16 +
 .../src/components/Tree/style/index.less           |  16 +
 .../src/components/Tree/style/index.ts             |  16 +
 .../src/components/Upload/index.ts                 |  16 +
 .../src/components/Upload/src/BasicUpload.vue      |  16 +
 .../src/components/Upload/src/FileList.vue         |  16 +
 .../src/components/Upload/src/ThumbUrl.vue         |  16 +
 .../src/components/Upload/src/UploadModal.vue      |  16 +
 .../components/Upload/src/UploadPreviewModal.vue   |  16 +
 .../src/components/Upload/src/data.tsx             |  16 +
 .../src/components/Upload/src/helper.ts            |  16 +
 .../src/components/Upload/src/props.ts             |  16 +
 .../src/components/Upload/src/typing.ts            |  16 +
 .../src/components/Upload/src/useUpload.ts         |  16 +
 .../src/components/Verify/index.ts                 |  16 +
 .../src/components/Verify/src/DragVerify.vue       |  16 +
 .../src/components/Verify/src/ImgRotate.vue        |  16 +
 .../src/components/Verify/src/props.ts             |  16 +
 .../src/components/Verify/src/typing.ts            |  16 +
 .../src/components/VirtualScroll/index.ts          |  16 +
 .../components/VirtualScroll/src/VirtualScroll.vue |  16 +
 .../src/components/registerGlobComp.ts             |  16 +
 .../src/design/ant/btn.less                        |  16 +
 .../src/design/ant/index.less                      |  16 +
 .../src/design/ant/input.less                      |  16 +
 .../src/design/ant/pagination.less                 |  16 +
 .../src/design/ant/table.less                      |  16 +
 .../streampark-console-newui/src/design/color.less |  16 +
 .../src/design/config.less                         |  16 +
 .../streampark-console-newui/src/design/index.less |  16 +
 .../src/design/public.less                         |  16 +
 .../streampark-console-newui/src/design/theme.less |  16 +
 .../src/design/transition/base.less                |  16 +
 .../src/design/transition/fade.less                |  16 +
 .../src/design/transition/index.less               |  16 +
 .../src/design/transition/scale.less               |  16 +
 .../src/design/transition/scroll.less              |  16 +
 .../src/design/transition/slide.less               |  16 +
 .../src/design/transition/zoom.less                |  16 +
 .../src/design/var/breakpoint.less                 |  16 +
 .../src/design/var/easing.less                     |  16 +
 .../src/design/var/index.less                      |  16 +
 .../src/directives/clickOutside.ts                 |  16 +
 .../src/directives/index.ts                        |  16 +
 .../src/directives/loading.ts                      |  16 +
 .../src/directives/permission.ts                   |  16 +
 .../src/directives/repeatClick.ts                  |  16 +
 .../src/directives/ripple/index.less               |  16 +
 .../src/directives/ripple/index.ts                 |  16 +
 .../streampark-console-newui/src/enums/appEnum.ts  |  16 +
 .../src/enums/breakpointEnum.ts                    |  16 +
 .../src/enums/cacheEnum.ts                         |  16 +
 .../src/enums/exceptionEnum.ts                     |  16 +
 .../src/enums/flinkEnum.ts                         |  16 +
 .../streampark-console-newui/src/enums/formEnum.ts |  16 +
 .../streampark-console-newui/src/enums/httpEnum.ts |  16 +
 .../streampark-console-newui/src/enums/menuEnum.ts |  16 +
 .../streampark-console-newui/src/enums/pageEnum.ts |  16 +
 .../streampark-console-newui/src/enums/roleEnum.ts |  16 +
 .../streampark-console-newui/src/enums/sizeEnum.ts |  16 +
 .../src/hooks/component/useFormItem.ts             |  16 +
 .../src/hooks/component/usePageContext.ts          |  16 +
 .../src/hooks/core/onMountedOrActivated.ts         |  16 +
 .../src/hooks/core/useAttrs.ts                     |  16 +
 .../src/hooks/core/useContext.ts                   |  16 +
 .../src/hooks/core/useLockFn.ts                    |  16 +
 .../src/hooks/core/useRefs.ts                      |  16 +
 .../src/hooks/core/useTimeout.ts                   |  16 +
 .../src/hooks/event/useBreakpoint.ts               |  16 +
 .../src/hooks/event/useEventListener.ts            |  16 +
 .../src/hooks/event/useIntersectionObserver.ts     |  16 +
 .../src/hooks/event/useScroll.ts                   |  16 +
 .../src/hooks/event/useScrollTo.ts                 |  16 +
 .../src/hooks/event/useWindowSizeFn.ts             |  16 +
 .../src/hooks/setting/index.ts                     |  16 +
 .../src/hooks/setting/useHeaderSetting.ts          |  16 +
 .../src/hooks/setting/useMenuSetting.ts            |  16 +
 .../src/hooks/setting/useMultipleTabSetting.ts     |  16 +
 .../src/hooks/setting/useRootSetting.ts            |  16 +
 .../src/hooks/setting/useTransitionSetting.ts      |  16 +
 .../src/hooks/web/useAppInject.ts                  |  16 +
 .../src/hooks/web/useContentHeight.ts              |  16 +
 .../src/hooks/web/useContextMenu.ts                |  16 +
 .../src/hooks/web/useCopyToClipboard.ts            |  16 +
 .../src/hooks/web/useDesign.ts                     |  16 +
 .../src/hooks/web/useECharts.ts                    |  16 +
 .../src/hooks/web/useFullContent.ts                |  16 +
 .../src/hooks/web/useI18n.ts                       |  16 +
 .../src/hooks/web/useLockPage.ts                   |  16 +
 .../src/hooks/web/useMessage.tsx                   |  16 +
 .../src/hooks/web/useMonaco.ts                     |  16 +
 .../src/hooks/web/usePage.ts                       |  16 +
 .../src/hooks/web/usePagination.ts                 |  16 +
 .../src/hooks/web/usePermission.ts                 |  16 +
 .../src/hooks/web/useScript.ts                     |  16 +
 .../src/hooks/web/useSortable.ts                   |  16 +
 .../src/hooks/web/useTabs.ts                       |  16 +
 .../src/hooks/web/useTitle.ts                      |  16 +
 .../src/hooks/web/useWatermark.ts                  |  16 +
 .../src/layouts/default/content/index.vue          |  16 +
 .../layouts/default/content/useContentContext.ts   |  16 +
 .../default/content/useContentViewHeight.ts        |  16 +
 .../src/layouts/default/feature/index.vue          |  16 +
 .../src/layouts/default/footer/index.vue           |  22 +-
 .../src/layouts/default/header/MultipleHeader.vue  |  16 +
 .../default/header/components/Breadcrumb.vue       |  16 +
 .../default/header/components/ErrorAction.vue      |  16 +
 .../default/header/components/FullScreen.vue       |  16 +
 .../layouts/default/header/components/Github.vue   |  32 +-
 .../layouts/default/header/components/Slogan.vue   |  34 +-
 .../src/layouts/default/header/components/index.ts |  16 +
 .../default/header/components/lock/LockModal.vue   |  16 +
 .../header/components/notify/NoticeList.vue        |  16 +
 .../default/header/components/notify/index.vue     |  16 +
 .../components/user-dropdown/DropMenuItem.vue      |  16 +
 .../components/user-dropdown/PasswordModal.vue     |  16 +
 .../header/components/user-dropdown/index.vue      |  16 +
 .../src/layouts/default/header/index.less          |  16 +
 .../src/layouts/default/header/index.vue           |  16 +
 .../src/layouts/default/index.vue                  |  16 +
 .../src/layouts/default/menu/index.vue             |  16 +
 .../src/layouts/default/menu/useLayoutMenu.ts      |  16 +
 .../src/layouts/default/setting/SettingDrawer.tsx  |  16 +
 .../default/setting/components/InputNumberItem.vue |  16 +
 .../default/setting/components/SelectItem.vue      |  16 +
 .../default/setting/components/SettingFooter.vue   |  16 +
 .../default/setting/components/SwitchItem.vue      |  16 +
 .../setting/components/ThemeColorPicker.vue        |  16 +
 .../default/setting/components/TypePicker.vue      |  16 +
 .../layouts/default/setting/components/index.ts    |  16 +
 .../src/layouts/default/setting/enum.ts            |  16 +
 .../src/layouts/default/setting/handler.ts         |  16 +
 .../src/layouts/default/setting/index.vue          |  16 +
 .../src/layouts/default/sider/DragBar.vue          |  16 +
 .../src/layouts/default/sider/LayoutSider.vue      |  16 +
 .../src/layouts/default/sider/MixSider.vue         |  16 +
 .../src/layouts/default/sider/index.vue            |  16 +
 .../src/layouts/default/sider/useLayoutSider.ts    |  16 +
 .../layouts/default/tabs/components/FoldButton.vue |  16 +
 .../layouts/default/tabs/components/TabContent.vue |  16 +
 .../layouts/default/tabs/components/TabRedo.vue    |  16 +
 .../src/layouts/default/tabs/index.less            |  16 +
 .../src/layouts/default/tabs/index.vue             |  16 +
 .../src/layouts/default/tabs/types.ts              |  16 +
 .../src/layouts/default/tabs/useMultipleTabs.ts    |  16 +
 .../src/layouts/default/tabs/useTabDropdown.ts     |  16 +
 .../src/layouts/default/trigger/HeaderTrigger.vue  |  16 +
 .../src/layouts/default/trigger/SiderTrigger.vue   |  16 +
 .../src/layouts/default/trigger/index.vue          |  16 +
 .../src/layouts/iframe/index.vue                   |  16 +
 .../src/layouts/iframe/useFrameKeepAlive.ts        |  16 +
 .../src/layouts/page/index.vue                     |  16 +
 .../src/layouts/page/transition.ts                 |  16 +
 .../streampark-console-newui/src/locales/helper.ts |  16 +
 .../src/locales/lang/en.ts                         |  16 +
 .../src/locales/lang/en/common.ts                  |  16 +
 .../src/locales/lang/en/component.ts               |  16 +
 .../src/locales/lang/en/flink/app.ts               |  16 +
 .../src/locales/lang/en/flink/setting.ts           |  16 +
 .../src/locales/lang/en/layout.ts                  |  16 +
 .../src/locales/lang/en/routes/basic.ts            |  16 +
 .../src/locales/lang/en/routes/dashboard.ts        |  16 +
 .../src/locales/lang/en/routes/demo.ts             |  16 +
 .../src/locales/lang/en/sys.ts                     |  16 +
 .../src/locales/lang/zh-CN/common.ts               |  16 +
 .../src/locales/lang/zh-CN/component.ts            |  16 +
 .../src/locales/lang/zh-CN/flink/app.ts            |  16 +
 .../src/locales/lang/zh-CN/flink/setting.ts        |  16 +
 .../src/locales/lang/zh-CN/layout.ts               |  16 +
 .../src/locales/lang/zh-CN/routes/basic.ts         |  16 +
 .../src/locales/lang/zh-CN/routes/dashboard.ts     |  16 +
 .../src/locales/lang/zh-CN/routes/demo.ts          |  16 +
 .../src/locales/lang/zh-CN/sys.ts                  |  16 +
 .../src/locales/lang/zh_CN.ts                      |  16 +
 .../src/locales/setupI18n.ts                       |  16 +
 .../src/locales/useLocale.ts                       |  16 +
 .../src/logics/error-handle/index.ts               |  16 +
 .../src/logics/initAppConfig.ts                    |  16 +
 .../src/logics/mitt/routeChange.ts                 |  16 +
 .../src/logics/theme/dark.ts                       |  16 +
 .../src/logics/theme/index.ts                      |  16 +
 .../src/logics/theme/updateBackground.ts           |  16 +
 .../src/logics/theme/updateColorWeak.ts            |  16 +
 .../src/logics/theme/updateGrayMode.ts             |  16 +
 .../src/logics/theme/util.ts                       |  16 +
 .../streampark-console-newui/src/main.ts           |  16 +
 .../streampark-console-newui/src/monaco/index.ts   |  16 +
 .../src/router/constant.ts                         |  16 +
 .../src/router/guard/index.ts                      |  16 +
 .../src/router/guard/paramMenuGuard.ts             |  16 +
 .../src/router/guard/permissionGuard.ts            |  16 +
 .../src/router/guard/stateGuard.ts                 |  16 +
 .../src/router/helper/menuHelper.ts                |  16 +
 .../src/router/helper/routeHelper.ts               |  16 +
 .../streampark-console-newui/src/router/index.ts   |  16 +
 .../src/router/menus/index.ts                      |  16 +
 .../src/router/routes/basic.ts                     |  16 +
 .../src/router/routes/index.ts                     |  16 +
 .../src/router/routes/modules/about.ts             |  31 -
 .../src/router/routes/modules/demo/StreamX.ts      |  16 +
 .../src/router/routes/modules/demo/System.ts       |  16 +
 .../streampark-console-newui/src/router/types.ts   |  16 +
 .../src/settings/componentSetting.ts               |  16 +
 .../src/settings/designSetting.ts                  |  16 +
 .../src/settings/encryptionSetting.ts              |  16 +
 .../src/settings/localeSetting.ts                  |  16 +
 .../src/settings/projectSetting.ts                 |  16 +
 .../src/settings/siteSetting.ts                    |  16 +
 .../streampark-console-newui/src/store/index.ts    |  16 +
 .../src/store/modules/app.ts                       |  16 +
 .../src/store/modules/errorLog.ts                  |  16 +
 .../src/store/modules/flinkApplication.ts          |  16 +
 .../src/store/modules/locale.ts                    |  16 +
 .../src/store/modules/lock.ts                      |  16 +
 .../src/store/modules/multipleTab.ts               |  16 +
 .../src/store/modules/permission.ts                |  16 +
 .../src/store/modules/user.ts                      |  16 +
 .../src/utils/auth/index.ts                        |  16 +
 .../streampark-console-newui/src/utils/bem.ts      |  16 +
 .../src/utils/cache/index.ts                       |  16 +
 .../src/utils/cache/memory.ts                      |  16 +
 .../src/utils/cache/persistent.ts                  |  16 +
 .../src/utils/cache/storageCache.ts                |  16 +
 .../streampark-console-newui/src/utils/cipher.ts   |  16 +
 .../streampark-console-newui/src/utils/color.ts    |  16 +
 .../streampark-console-newui/src/utils/dateUtil.ts |  16 +
 .../streampark-console-newui/src/utils/domUtils.ts |  16 +
 .../streampark-console-newui/src/utils/env.ts      |  16 +
 .../src/utils/event/index.ts                       |  16 +
 .../src/utils/factory/createAsyncComponent.tsx     |  16 +
 .../src/utils/file/base64Conver.ts                 |  16 +
 .../src/utils/file/download.ts                     |  16 +
 .../src/utils/helper/treeHelper.ts                 |  16 +
 .../src/utils/helper/tsxHelper.tsx                 |  16 +
 .../src/utils/http/axios/Axios.ts                  |  16 +
 .../src/utils/http/axios/axiosCancel.ts            |  16 +
 .../src/utils/http/axios/axiosRetry.ts             |  16 +
 .../src/utils/http/axios/axiosTransform.ts         |  16 +
 .../src/utils/http/axios/checkStatus.ts            |  16 +
 .../src/utils/http/axios/helper.ts                 |  16 +
 .../src/utils/http/axios/index.ts                  |  16 +
 .../streampark-console-newui/src/utils/index.ts    |  16 +
 .../streampark-console-newui/src/utils/is.ts       |  16 +
 .../src/utils/lib/echarts.ts                       |  16 +
 .../streampark-console-newui/src/utils/log.ts      |  16 +
 .../streampark-console-newui/src/utils/mitt.ts     |  16 +
 .../src/utils/propTypes.ts                         |  16 +
 .../streampark-console-newui/src/utils/props.ts    |  16 +
 .../streampark-console-newui/src/utils/types.ts    |  16 +
 .../streampark-console-newui/src/utils/uuid.ts     |  16 +
 .../src/views/flink/app/components/State.less      |  16 +
 .../src/views/flink/app/data/detail.data.ts        |  16 +
 .../src/views/flink/app/data/index.ts              |  16 +
 .../src/views/flink/app/hooks/useApp.tsx           |  16 +
 .../flink/app/hooks/useCreateAndEditSchema.ts      |  16 +
 .../src/views/flink/app/hooks/useCreateSchema.ts   |  16 +
 .../src/views/flink/app/hooks/useDetail.ts         |  16 +
 .../src/views/flink/app/hooks/useDetailContext.ts  |  16 +
 .../src/views/flink/app/hooks/useDiffMonaco.ts     |  16 +
 .../src/views/flink/app/hooks/useEdit.ts           |  16 +
 .../views/flink/app/hooks/useEditFlinkSchema.ts    |  16 +
 .../src/views/flink/app/hooks/useEditStreamPark.ts |  16 +
 .../src/views/flink/app/hooks/useFlinkRender.tsx   |  16 +
 .../src/views/flink/app/hooks/useFlinkSchema.ts    |  16 +
 .../src/views/flink/app/hooks/useLog.ts            |  16 +
 .../src/views/flink/app/styles/View.less           |  16 +
 .../src/views/flink/app/utils/index.ts             |  16 +
 .../src/views/flink/notebook/Submit.less           |  16 +
 .../src/views/flink/notebook/Submit.vue            |  16 +
 .../src/views/flink/project/Add.vue                |  16 +
 .../src/views/flink/project/View.vue               |  16 +
 .../src/views/flink/project/project.data.ts        |  16 +
 .../src/views/flink/project/useProject.ts          |  16 +
 .../src/views/flink/setting/View.less              |  16 +
 .../src/views/flink/setting/View.vue               |  16 +
 .../views/flink/setting/components/alert.data.ts   |  16 +
 .../views/flink/setting/hooks/useClusterSetting.ts |  16 +
 .../src/views/sys/about/index.vue                  |  98 ---
 .../src/views/sys/error-log/DetailModal.vue        |  16 +
 .../src/views/sys/error-log/data.tsx               |  16 +
 .../src/views/sys/error-log/index.vue              |  16 +
 .../src/views/sys/exception/Exception.vue          |  16 +
 .../src/views/sys/exception/index.ts               |  16 +
 .../src/views/sys/iframe/FrameBlank.vue            |  16 +
 .../src/views/sys/iframe/index.vue                 |  16 +
 .../src/views/sys/lock/LockPage.vue                |  16 +
 .../src/views/sys/lock/index.vue                   |  16 +
 .../src/views/sys/lock/useNow.ts                   |  16 +
 .../src/views/sys/login/ForgetPasswordForm.vue     |  16 +
 .../src/views/sys/login/Login.vue                  |  16 +
 .../src/views/sys/login/LoginForm.vue              |  16 +
 .../src/views/sys/login/LoginFormTitle.vue         |  16 +
 .../src/views/sys/login/MobileForm.vue             |  16 +
 .../src/views/sys/login/QrCodeForm.vue             |  16 +
 .../src/views/sys/login/RegisterForm.vue           |  16 +
 .../src/views/sys/login/SessionTimeoutLogin.vue    |  16 +
 .../src/views/sys/login/useLogin.ts                |  16 +
 .../src/views/sys/redirect/index.vue               |  16 +
 .../src/views/system/account/AccountDetail.vue     |  16 +
 .../src/views/system/account/AccountModal.vue      |  16 +
 .../src/views/system/account/DeptTree.vue          |  16 +
 .../src/views/system/account/account.data.ts       |  16 +
 .../src/views/system/account/index.vue             |  16 +
 .../src/views/system/dept/DeptModal.vue            |  16 +
 .../src/views/system/dept/dept.data.ts             |  16 +
 .../src/views/system/dept/index.vue                |  16 +
 .../src/views/system/menu/Menu.vue                 |  16 +
 .../src/views/system/menu/MenuDrawer.vue           |  16 +
 .../src/views/system/menu/menu.data.ts             |  16 +
 .../src/views/system/password/index.vue            |  16 +
 .../src/views/system/password/pwd.data.ts          |  16 +
 .../src/views/system/role/Role.vue                 |  16 +
 .../src/views/system/role/RoleDrawer.vue           |  16 +
 .../src/views/system/role/role.data.ts             |  16 +
 .../src/views/system/team/Team.vue                 |  16 +
 .../src/views/system/team/TeamDrawer.vue           |  16 +
 .../src/views/system/team/team.data.ts             |  16 +
 .../src/views/system/token/Token.vue               | 146 ++++
 .../{team/TeamDrawer.vue => token/TokenDrawer.vue} |  26 +-
 .../src/views/system/token/token.data.ts           | 124 ++++
 .../src/views/system/user/User.vue                 |  16 +
 .../src/views/system/user/UserDrawer.vue           |  16 +
 .../src/views/system/user/user.data.ts             |  16 +
 .../streampark-console-newui/stylelint.config.js   |  16 +
 .../tests/server/controller/FileController.ts      |  16 +
 .../tests/server/controller/UserController.ts      |  16 +
 .../tests/server/ecosystem.config.js               |  16 +
 .../streampark-console-newui/tests/server/index.ts |  16 +
 .../tests/server/routes.ts                         |  16 +
 .../tests/server/service/FileService.ts            |  16 +
 .../tests/server/service/UserService.ts            |  16 +
 .../streampark-console-newui/tests/server/utils.ts |  16 +
 .../streampark-console-newui/types/axios.d.ts      |  16 +
 .../streampark-console-newui/types/config.d.ts     |  16 +
 .../streampark-console-newui/types/global.d.ts     |  16 +
 .../streampark-console-newui/types/index.d.ts      |  16 +
 .../streampark-console-newui/types/module.d.ts     |  16 +
 .../streampark-console-newui/types/store.d.ts      |  16 +
 .../streampark-console-newui/types/utils.d.ts      |  16 +
 .../streampark-console-newui/types/vue-router.d.ts |  16 +
 .../streampark-console-newui/vite.config.ts        |  16 +
 .../streampark-console-newui/windi.config.ts       |  16 +
 690 files changed, 12232 insertions(+), 657 deletions(-)

diff --git a/.gitignore b/.gitignore
index 4d39ddfad..a93378d9e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -82,7 +82,7 @@ local.properties
 .LSOverride
 
 # Icon must end with two \r
-Icon
+# Icon
 
 # Thumbnails
 ._*
diff --git a/streampark-console/streampark-console-newui/.editorconfig b/streampark-console/streampark-console-newui/.editorconfig
index dccf841d4..6bdb7eca2 100644
--- a/streampark-console/streampark-console-newui/.editorconfig
+++ b/streampark-console/streampark-console-newui/.editorconfig
@@ -1,3 +1,18 @@
+# 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
+#
+#    https://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.
+
 root = true
 
 [*]
diff --git a/streampark-console/streampark-console-newui/.env b/streampark-console/streampark-console-newui/.env
index 351329c08..b24c62733 100644
--- a/streampark-console/streampark-console-newui/.env
+++ b/streampark-console/streampark-console-newui/.env
@@ -1,3 +1,18 @@
+# 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
+#
+#    https://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.
+
 # port
 VITE_PORT=3100
 
diff --git a/streampark-console/streampark-console-newui/.env.development b/streampark-console/streampark-console-newui/.env.development
index 718465476..a77f68727 100644
--- a/streampark-console/streampark-console-newui/.env.development
+++ b/streampark-console/streampark-console-newui/.env.development
@@ -1,16 +1,24 @@
-# Whether to open mock
-VITE_USE_MOCK=false
+# 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
+#
+#    https://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.
 
 # public path
 VITE_PUBLIC_PATH = /
 
 # Cross-domain proxy, you can configure multiple
 # Please note that no line breaks
-VITE_PROXY = [
-  ["/basic-api","http://localhost:10000"],
-  ["/upload","http://localhost:10000/upload"],
-  ["/streamx-api","http://localhost:10000"]
-]
+VITE_PROXY = [["/basic-api","http://localhost:10000"], ["/upload","http://localhost:10000/upload"], ["/streamx-api","http://localhost:10000"]]
 
 # Delete console
 VITE_DROP_CONSOLE = false
diff --git a/streampark-console/streampark-console-newui/.env.production b/streampark-console/streampark-console-newui/.env.production
index a0bdfb7f4..f09931595 100644
--- a/streampark-console/streampark-console-newui/.env.production
+++ b/streampark-console/streampark-console-newui/.env.production
@@ -1,5 +1,17 @@
-# Whether to open mock
-VITE_USE_MOCK = true
+# 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
+#
+#    https://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.
 
 # public path
 VITE_PUBLIC_PATH = /
diff --git a/streampark-console/streampark-console-newui/.eslintignore b/streampark-console/streampark-console-newui/.eslintignore
index 348631b27..b042315a6 100644
--- a/streampark-console/streampark-console-newui/.eslintignore
+++ b/streampark-console/streampark-console-newui/.eslintignore
@@ -1,3 +1,17 @@
+# 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
+#
+#    https://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.
 
 *.sh
 node_modules
diff --git a/streampark-console/streampark-console-newui/.eslintrc.js b/streampark-console/streampark-console-newui/.eslintrc.js
index 9aa3e10ce..0ac0f5383 100644
--- a/streampark-console/streampark-console-newui/.eslintrc.js
+++ b/streampark-console/streampark-console-newui/.eslintrc.js
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 module.exports = {
   root: true,
   env: {
diff --git a/streampark-console/streampark-console-newui/.gitpod.yml b/streampark-console/streampark-console-newui/.gitpod.yml
index 866381fcc..560bcad83 100644
--- a/streampark-console/streampark-console-newui/.gitpod.yml
+++ b/streampark-console/streampark-console-newui/.gitpod.yml
@@ -1,3 +1,18 @@
+# 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
+#
+#    https://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.
+
 ports:
   - port: 3344
     onOpen: open-preview
diff --git a/streampark-console/streampark-console-newui/.husky/commit-msg b/streampark-console/streampark-console-newui/.husky/commit-msg
index 567ff71f0..472457266 100644
--- a/streampark-console/streampark-console-newui/.husky/commit-msg
+++ b/streampark-console/streampark-console-newui/.husky/commit-msg
@@ -1,3 +1,18 @@
+# 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
+#
+#    https://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.
+
 #!/bin/sh
 
 # shellcheck source=./_/husky.sh
diff --git a/streampark-console/streampark-console-newui/.husky/common.sh b/streampark-console/streampark-console-newui/.husky/common.sh
index 9d5129bd7..9f4ac2cd2 100644
--- a/streampark-console/streampark-console-newui/.husky/common.sh
+++ b/streampark-console/streampark-console-newui/.husky/common.sh
@@ -1,3 +1,18 @@
+# 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
+#
+#    https://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.
+
 #!/bin/sh
 command_exists () {
   command -v "$1" >/dev/null 2>&1
diff --git a/streampark-console/streampark-console-newui/.husky/pre-commit b/streampark-console/streampark-console-newui/.husky/pre-commit
index 35f92427c..2bd358130 100644
--- a/streampark-console/streampark-console-newui/.husky/pre-commit
+++ b/streampark-console/streampark-console-newui/.husky/pre-commit
@@ -1,4 +1,20 @@
+# 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
+#
+#    https://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.
+
 #!/bin/sh
+
 . "$(dirname "$0")/_/husky.sh"
 . "$(dirname "$0")/common.sh"
 
diff --git a/streampark-console/streampark-console-newui/.prettierignore b/streampark-console/streampark-console-newui/.prettierignore
index f7e39e60b..6877754ec 100644
--- a/streampark-console/streampark-console-newui/.prettierignore
+++ b/streampark-console/streampark-console-newui/.prettierignore
@@ -1,3 +1,18 @@
+# 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
+#
+#    https://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.
+
 /dist/*
 .local
 .output.js
diff --git a/streampark-console/streampark-console-newui/.stylelintignore b/streampark-console/streampark-console-newui/.stylelintignore
index 051707612..e75293d5b 100644
--- a/streampark-console/streampark-console-newui/.stylelintignore
+++ b/streampark-console/streampark-console-newui/.stylelintignore
@@ -1,3 +1,17 @@
+# 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
+#
+#    https://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.
 /dist/*
 /public/*
 public/*
diff --git a/streampark-console/streampark-console-newui/README.md b/streampark-console/streampark-console-newui/README.md
index ddce15dc7..f194e26b0 100644
--- a/streampark-console/streampark-console-newui/README.md
+++ b/streampark-console/streampark-console-newui/README.md
@@ -2,7 +2,7 @@
     <br/>
     <h1>
         <a href="https://streampark.apache.org" target="_blank" rel="noopener noreferrer">
-        <img width="600" src="https://streampark.apache.org/image/logo1.svg" alt="StreamPark logo">
+        <img width="600" src="https://streampark.apache.org/image/logo_name.png" alt="StreamPark logo">
         </a>
     </h1>
     <strong style="font-size: 1.5rem">Make stream processing easier!!!</strong>
@@ -43,35 +43,12 @@ Open the project in Gitpod (free online dev environment for GitHub) and start co
 
 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/streamxhub/streamx-webapp)
 
-## Documentation
-
-[Document](https://vvbin.cn/doc-next/)
-
-## Preparation
-
-- [node](http://nodejs.org/) and [git](https://git-scm.com/) - Project development environment
-- [Vite](https://vitejs.dev/) - Familiar with vite features
-- [Vue3](https://vuejs.org/) - Familiar with Vue basic syntax
-- [TypeScript](https://www.typescriptlang.org/) - Familiar with the basic syntax of `TypeScript`
-- [Es6+](http://es6.ruanyifeng.com/) - Familiar with es6 basic syntax
-- [Vue-Router-Next](https://next.router.vuejs.org/) - Familiar with the basic use of vue-router
-- [Ant-Design-Vue](https://antdv.com/docs/vue/introduce-cn/) - ui basic use
-
 ## Install and use
 
-- Get the project code
-
-```bash
-git clone https://github.com/streamxhub/streamx-webapp.git
-```
-
 - Installation dependencies
 
 ```bash
-cd streamx-webapp
-
 pnpm install
-
 ```
 
 - run
@@ -86,47 +63,6 @@ pnpm serve
 pnpm build
 ```
 
-## How to contribute
-
-You are very welcome to join![Raise an issue](https://github.com/streamxhub/streamx-webapp/issues/new/choose) Or submit a Pull Request。
-
-**Pull Request:**
-
-1. Fork code!
-2. Create your own branch: `git checkout -b feat/xxxx`
-3. Submit your changes: `git commit -am 'feat(function): add xxxxx'`
-4. Push your branch: `git push origin feat/xxxx`
-5. submit`pull request`
-
-## Git Contribution submission specification
-
-- reference [vue](https://github.com/vuejs/vue/blob/dev/.github/COMMIT_CONVENTION.md) specification ([Angular](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular))
-
-  - `feat` Add new features
-  - `fix` Fix the problem/BUG
-  - `style` The code style is related and does not affect the running result
-  - `perf` Optimization/performance improvement
-  - `refactor` Refactor
-  - `revert` Undo edit
-  - `test` Test related
-  - `docs` Documentation/notes
-  - `chore` Dependency update/scaffolding configuration modification etc.
-  - `workflow` Workflow improvements
-  - `ci` Continuous integration
-  - `types` Type definition file changes
-  - `wip` In development
-
-## Related warehouse
-
-If these plugins are helpful to you, you can give a star support
-
-- [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - Used for local and development environment data mock
-- [vite-plugin-html](https://github.com/anncwb/vite-plugin-html) - Used for html template conversion and compression
-- [vite-plugin-style-import](https://github.com/anncwb/vite-plugin-style-import) - Used for component library style introduction on demand
-- [vite-plugin-theme](https://github.com/anncwb/vite-plugin-theme) - Used for online switching of theme colors and other color-related configurations
-- [vite-plugin-imagemin](https://github.com/anncwb/vite-plugin-imagemin) - Used to pack compressed image resources
-- [vite-plugin-compression](https://github.com/anncwb/vite-plugin-compression) - Used to pack input .gz|.brotil files
-- [vite-plugin-svg-icons](https://github.com/anncwb/vite-plugin-svg-icons) - Used to quickly generate svg sprite
 
 ## Browser support
 
@@ -138,6 +74,3 @@ Support modern browsers, not IE
 | :-: | :-: | :-: | :-: | :-: |
 | not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
 
-# Reference project
-
-- [vue-vben-admin](https://github.com/vbenjs/vue-vben-admin)
diff --git a/streampark-console/streampark-console-newui/README.zh-CN.md b/streampark-console/streampark-console-newui/README.zh-CN.md
index 03cdf7ba9..9c59d2c48 100644
--- a/streampark-console/streampark-console-newui/README.zh-CN.md
+++ b/streampark-console/streampark-console-newui/README.zh-CN.md
@@ -2,7 +2,7 @@
     <br/>
     <h1>
         <a href="https://streampark.apache.org" target="_blank" rel="noopener noreferrer">
-        <img width="600" src="https://streampark.apache.org/image/logo1.svg" alt="StreamPark logo">
+        <img width="600" src="https://streampark.apache.org/image/logo_name.png" alt="StreamPark logo">
         </a>
     </h1>
     <strong style="font-size: 1.5rem">Make stream processing easier!!!</strong>
@@ -44,34 +44,11 @@ Make stream processing easier
 
 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/streamxhub/streamx-webapp)
 
-## 文档
-
-[文档地址](https://vvbin.cn/doc-next/)
-
-## 准备
-
-- [node](http://nodejs.org/) 和 [git](https://git-scm.com/) -项目开发环境
-- [Vite](https://vitejs.dev/) - 熟悉 vite 特性
-- [Vue3](https://vuejs.org/) - 熟悉 Vue 基础语法
-- [TypeScript](https://www.typescriptlang.org/) - 熟悉`TypeScript`基本语法
-- [Es6+](http://es6.ruanyifeng.com/) - 熟悉 es6 基本语法
-- [Vue-Router-Next](https://next.router.vuejs.org/) - 熟悉 vue-router 基本使用
-- [Ant-Design-Vue](https://antdv.com/docs/vue/introduce-cn/) - ui 基本使用
-- [Mock.js](https://github.com/nuysoft/Mock) - mockjs 基本语法
-
 ## 安装使用
 
-- 获取项目代码
-
-```bash
-git clone https://github.com/streamxhub/streamx-webapp.git
-```
-
 - 安装依赖
 
 ```bash
-cd streamx-webapp
-
 pnpm install
 
 ```
@@ -88,36 +65,6 @@ pnpm serve
 pnpm build
 ```
 
-## 如何贡献
-
-非常欢迎你的加入![提一个 Issue](https://github.com/streamxhub/streamx-webapp/issues/new/choose) 或者提交一个 Pull Request。
-
-**Pull Request:**
-
-1. Fork 代码!
-2. 创建自己的分支: `git checkout -b feat/xxxx`
-3. 提交你的修改: `git commit -am 'feat(function): add xxxxx'`
-4. 推送您的分支: `git push origin feat/xxxx`
-5. 提交`pull request`
-
-## Git 贡献提交规范
-
-- 参考 [vue](https://github.com/vuejs/vue/blob/dev/.github/COMMIT_CONVENTION.md) 规范 ([Angular](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular))
-
-  - `feat` 增加新功能
-  - `fix` 修复问题/BUG
-  - `style` 代码风格相关无影响运行结果的
-  - `perf` 优化/性能提升
-  - `refactor` 重构
-  - `revert` 撤销修改
-  - `test` 测试相关
-  - `docs` 文档/注释
-  - `chore` 依赖更新/脚手架配置修改等
-  - `workflow` 工作流改进
-  - `ci` 持续集成
-  - `types` 类型定义文件更改
-  - `wip` 开发中
-
 ## 浏览器支持
 
 本地开发推荐使用`Chrome 80+` 浏览器
@@ -128,18 +75,3 @@ pnpm build
 | :-: | :-: | :-: | :-: | :-: |
 | not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
 
-## 相关仓库
-
-如果这些插件对你有帮助,可以给一个 star 支持下
-
-- [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - 用于本地及开发环境数据 mock
-- [vite-plugin-html](https://github.com/anncwb/vite-plugin-html) - 用于 html 模版转换及压缩
-- [vite-plugin-style-import](https://github.com/anncwb/vite-plugin-style-import) - 用于组件库样式按需引入
-- [vite-plugin-theme](https://github.com/anncwb/vite-plugin-theme) - 用于在线切换主题色等颜色相关配置
-- [vite-plugin-imagemin](https://github.com/anncwb/vite-plugin-imagemin) - 用于打包压缩图片资源
-- [vite-plugin-compression](https://github.com/anncwb/vite-plugin-compression) - 用于打包输出.gz|.brotil 文件
-- [vite-plugin-svg-icons](https://github.com/anncwb/vite-plugin-svg-icons) - 用于快速生成 svg 雪碧图
-
-# 参考项目
-
-- [vue-vben-admin](https://github.com/vbenjs/vue-vben-admin)
diff --git a/streampark-console/streampark-console-newui/build/config/themeConfig.ts b/streampark-console/streampark-console-newui/build/config/themeConfig.ts
index c7e251096..73a093113 100644
--- a/streampark-console/streampark-console-newui/build/config/themeConfig.ts
+++ b/streampark-console/streampark-console-newui/build/config/themeConfig.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { generate } from '@ant-design/colors';
 
 export const primaryColor = '#1890ff';
diff --git a/streampark-console/streampark-console-newui/build/constant.ts b/streampark-console/streampark-console-newui/build/constant.ts
index 2c6119c8d..3caa71457 100644
--- a/streampark-console/streampark-console-newui/build/constant.ts
+++ b/streampark-console/streampark-console-newui/build/constant.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * The name of the configuration file entered in the production environment
  */
diff --git a/streampark-console/streampark-console-newui/build/generate/generateModifyVars.ts b/streampark-console/streampark-console-newui/build/generate/generateModifyVars.ts
index 44670e2f6..3a1734e3f 100644
--- a/streampark-console/streampark-console-newui/build/generate/generateModifyVars.ts
+++ b/streampark-console/streampark-console-newui/build/generate/generateModifyVars.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { generateAntColors, primaryColor } from '../config/themeConfig';
 import { getThemeVariables } from 'ant-design-vue/dist/theme';
 import { resolve } from 'path';
diff --git a/streampark-console/streampark-console-newui/build/getConfigFileName.ts b/streampark-console/streampark-console-newui/build/getConfigFileName.ts
index d61cd4162..03e9c3ca8 100644
--- a/streampark-console/streampark-console-newui/build/getConfigFileName.ts
+++ b/streampark-console/streampark-console-newui/build/getConfigFileName.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Get the configuration file variable name
  * @param env
diff --git a/streampark-console/streampark-console-newui/build/script/buildConf.ts b/streampark-console/streampark-console-newui/build/script/buildConf.ts
index aa7b84399..76acd3905 100644
--- a/streampark-console/streampark-console-newui/build/script/buildConf.ts
+++ b/streampark-console/streampark-console-newui/build/script/buildConf.ts
@@ -1,5 +1,18 @@
-/**
- * Generate additional configuration files when used for packaging. The file can be configured with some global variables, so that it can be changed directly externally without repackaging
+/*
+ * 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
+ *
+ *    https://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 { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant';
 import fs, { writeFileSync } from 'fs-extra';
diff --git a/streampark-console/streampark-console-newui/build/script/postBuild.ts b/streampark-console/streampark-console-newui/build/script/postBuild.ts
index 42635d88b..a96aaa9a2 100644
--- a/streampark-console/streampark-console-newui/build/script/postBuild.ts
+++ b/streampark-console/streampark-console-newui/build/script/postBuild.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 // #!/usr/bin/env node
 
 import { runBuildConfig } from './buildConf';
diff --git a/streampark-console/streampark-console-newui/build/utils.ts b/streampark-console/streampark-console-newui/build/utils.ts
index c201514f9..32ea31b7f 100644
--- a/streampark-console/streampark-console-newui/build/utils.ts
+++ b/streampark-console/streampark-console-newui/build/utils.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 fs from 'fs';
 import path from 'path';
 import dotenv from 'dotenv';
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/compress.ts b/streampark-console/streampark-console-newui/build/vite/plugin/compress.ts
index ff4f6311d..0e1502f07 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/compress.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/compress.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated
  * https://github.com/anncwb/vite-plugin-compression
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/html.ts b/streampark-console/streampark-console-newui/build/vite/plugin/html.ts
index 6af034ac4..77515fec6 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/html.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/html.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Plugin to minimize and use ejs template syntax in index.html.
  * https://github.com/anncwb/vite-plugin-html
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/imagemin.ts b/streampark-console/streampark-console-newui/build/vite/plugin/imagemin.ts
index a0235732e..d73dd83c8 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/imagemin.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/imagemin.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 // Image resource files used to compress the output of the production environment
 // https://github.com/anncwb/vite-plugin-imagemin
 import viteImagemin from 'vite-plugin-imagemin';
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/index.ts b/streampark-console/streampark-console-newui/build/vite/plugin/index.ts
index 51d992b56..6cdba9364 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/index.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { PluginOption } from 'vite';
 import vue from '@vitejs/plugin-vue';
 import vueJsx from '@vitejs/plugin-vue-jsx';
@@ -7,8 +23,6 @@ import windiCSS from 'vite-plugin-windicss';
 import VitePluginCertificate from 'vite-plugin-mkcert';
 import vueSetupExtend from 'vite-plugin-vue-setup-extend';
 import { configHtmlPlugin } from './html';
-// import { configPwaConfig } from './pwa';
-import { configMockPlugin } from './mock';
 import { configCompressPlugin } from './compress';
 import { configStyleImportPlugin } from './styleImport';
 import { configVisualizerConfig } from './visualizer';
@@ -19,7 +33,6 @@ import { configSvgIconsPlugin } from './svgSprite';
 export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) {
   const {
     VITE_USE_IMAGEMIN,
-    VITE_USE_MOCK,
     VITE_LEGACY,
     VITE_BUILD_COMPRESS,
     VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE,
@@ -50,9 +63,6 @@ export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) {
   // vite-plugin-svg-icons
   vitePlugins.push(configSvgIconsPlugin(isBuild));
 
-  // vite-plugin-mock
-  VITE_USE_MOCK && vitePlugins.push(configMockPlugin(isBuild));
-
   // vite-plugin-purge-icons
   vitePlugins.push(purgeIcons());
 
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/mock.ts b/streampark-console/streampark-console-newui/build/vite/plugin/mock.ts
deleted file mode 100644
index d241e2673..000000000
--- a/streampark-console/streampark-console-newui/build/vite/plugin/mock.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Mock plugin for development and production.
- * https://github.com/anncwb/vite-plugin-mock
- */
-import { viteMockServe } from 'vite-plugin-mock';
-
-export function configMockPlugin(isBuild: boolean) {
-  return viteMockServe({
-    ignore: /^\_/,
-    mockPath: 'mock',
-    localEnabled: !isBuild,
-    prodEnabled: isBuild,
-    injectCode: `
-      import { setupProdMockServer } from '../mock/_createProductionServer';
-
-      setupProdMockServer();
-      `,
-  });
-}
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/pwa.ts b/streampark-console/streampark-console-newui/build/vite/plugin/pwa.ts
deleted file mode 100644
index 90ef5bc02..000000000
--- a/streampark-console/streampark-console-newui/build/vite/plugin/pwa.ts
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Zero-config PWA for Vite
- * https://github.com/antfu/vite-plugin-pwa
- */
-import { VitePWA } from 'vite-plugin-pwa';
-
-export function configPwaConfig(env: ViteEnv) {
-  const { VITE_USE_PWA, VITE_GLOB_APP_TITLE, VITE_GLOB_APP_SHORT_NAME } = env;
-
-  if (VITE_USE_PWA) {
-    // vite-plugin-pwa
-    const pwaPlugin = VitePWA({
-      manifest: {
-        name: VITE_GLOB_APP_TITLE,
-        short_name: VITE_GLOB_APP_SHORT_NAME,
-        icons: [
-          {
-            src: './resource/img/pwa-192x192.png',
-            sizes: '192x192',
-            type: 'image/png',
-          },
-          {
-            src: './resource/img/pwa-512x512.png',
-            sizes: '512x512',
-            type: 'image/png',
-          },
-        ],
-      },
-    });
-    return pwaPlugin;
-  }
-  return [];
-}
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/styleImport.ts b/streampark-console/streampark-console-newui/build/vite/plugin/styleImport.ts
index 1f606c4d7..10989dbb1 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/styleImport.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/styleImport.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  *  Introduces component library styles on demand.
  * https://github.com/anncwb/vite-plugin-style-import
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/svgSprite.ts b/streampark-console/streampark-console-newui/build/vite/plugin/svgSprite.ts
index 61f637f4e..2a28c27ac 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/svgSprite.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/svgSprite.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  *  Vite Plugin for fast creating SVG sprites.
  * https://github.com/anncwb/vite-plugin-svg-icons
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/theme.ts b/streampark-console/streampark-console-newui/build/vite/plugin/theme.ts
index 4e3cc0696..1068597a0 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/theme.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/theme.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Vite plugin for website theme color switching
  * https://github.com/anncwb/vite-plugin-theme
diff --git a/streampark-console/streampark-console-newui/build/vite/plugin/visualizer.ts b/streampark-console/streampark-console-newui/build/vite/plugin/visualizer.ts
index 75d4451eb..b387ce92a 100644
--- a/streampark-console/streampark-console-newui/build/vite/plugin/visualizer.ts
+++ b/streampark-console/streampark-console-newui/build/vite/plugin/visualizer.ts
@@ -1,6 +1,20 @@
-/**
- * Package file volume analysis
+/*
+ * 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
+ *
+ *    https://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 visualizer from 'rollup-plugin-visualizer';
 import { isReportMode } from '../../utils';
 
diff --git a/streampark-console/streampark-console-newui/build/vite/proxy.ts b/streampark-console/streampark-console-newui/build/vite/proxy.ts
index 8525397b6..4f28a2124 100644
--- a/streampark-console/streampark-console-newui/build/vite/proxy.ts
+++ b/streampark-console/streampark-console-newui/build/vite/proxy.ts
@@ -1,5 +1,18 @@
-/**
- * Used to parse the .env.development proxy configuration
+/*
+ * 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
+ *
+ *    https://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 type { ProxyOptions } from 'vite';
 
diff --git a/streampark-console/streampark-console-newui/commitlint.config.js b/streampark-console/streampark-console-newui/commitlint.config.js
index 54598876e..2491990f9 100644
--- a/streampark-console/streampark-console-newui/commitlint.config.js
+++ b/streampark-console/streampark-console-newui/commitlint.config.js
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 module.exports = {
   ignores: [(commit) => commit.includes('init')],
   extends: ['@commitlint/config-conventional'],
diff --git a/streampark-console/streampark-console-newui/index.html b/streampark-console/streampark-console-newui/index.html
index 62ea4fc05..963f6caa1 100644
--- a/streampark-console/streampark-console-newui/index.html
+++ b/streampark-console/streampark-console-newui/index.html
@@ -1,3 +1,20 @@
+<!--
+  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
+
+      https://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.
+-->
+
 <!DOCTYPE html>
 <html lang="en" id="htmlRoot">
   <head>
diff --git a/streampark-console/streampark-console-newui/mock/_createProductionServer.ts b/streampark-console/streampark-console-newui/mock/_createProductionServer.ts
deleted file mode 100644
index 8f47c2340..000000000
--- a/streampark-console/streampark-console-newui/mock/_createProductionServer.ts
+++ /dev/null
@@ -1,18 +0,0 @@
-import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer';
-
-const modules = import.meta.glob('./**/*.ts', { eager: true });
-
-const mockModules: any[] = [];
-Object.keys(modules).forEach((key) => {
-  if (key.includes('/_')) {
-    return;
-  }
-  mockModules.push(...(modules as Recordable)[key].default);
-});
-
-/**
- * Used in a production environment. Need to manually import all modules
- */
-export function setupProdMockServer() {
-  createProdMockServer(mockModules);
-}
diff --git a/streampark-console/streampark-console-newui/mock/_util.ts b/streampark-console/streampark-console-newui/mock/_util.ts
deleted file mode 100644
index 97c87564f..000000000
--- a/streampark-console/streampark-console-newui/mock/_util.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-// Interface data format used to return a unified format
-
-export function resultSuccess<T = Recordable>(result: T, { message = 'ok' } = {}) {
-  return {
-    code: 0,
-    result,
-    message,
-    type: 'success',
-  };
-}
-
-export function resultPageSuccess<T = any>(
-  page: number,
-  pageSize: number,
-  list: T[],
-  { message = 'ok' } = {},
-) {
-  const pageData = pagination(page, pageSize, list);
-
-  return {
-    ...resultSuccess({
-      items: pageData,
-      total: list.length,
-    }),
-    message,
-  };
-}
-
-export function resultError(message = 'Request failed', { code = -1, result = null } = {}) {
-  return {
-    code,
-    result,
-    message,
-    type: 'error',
-  };
-}
-
-export function pagination<T = any>(pageNo: number, pageSize: number, array: T[]): T[] {
-  const offset = (pageNo - 1) * Number(pageSize);
-  const ret =
-    offset + Number(pageSize) >= array.length
-      ? array.slice(offset, array.length)
-      : array.slice(offset, offset + Number(pageSize));
-  return ret;
-}
-
-export interface requestParams {
-  method: string;
-  body: any;
-  headers?: { authorization?: string };
-  query: any;
-}
-
-/**
- * @description 本函数用于从request数据中获取token,请根据项目的实际情况修改
- *
- */
-export function getRequestToken({ headers }: requestParams): string | undefined {
-  return headers?.authorization;
-}
diff --git a/streampark-console/streampark-console-newui/mock/sys/user.ts b/streampark-console/streampark-console-newui/mock/sys/user.ts
deleted file mode 100644
index fe9d5a906..000000000
--- a/streampark-console/streampark-console-newui/mock/sys/user.ts
+++ /dev/null
@@ -1,138 +0,0 @@
-import { MockMethod } from 'vite-plugin-mock';
-import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util';
-
-export function createFakeUserList() {
-  return [
-    {
-      userId: '1',
-      username: 'admin',
-      realName: 'Vben Admin',
-      avatar: 'https://q1.qlogo.cn/g?b=qq&nk=190848757&s=640',
-      desc: 'manager',
-      password: 'streamx',
-      token: 'fakeToken1',
-      homePath: '/streamx-flink/app',
-      roles: [
-        {
-          roleName: 'Super Admin',
-          value: 'super',
-        },
-      ],
-    },
-    {
-      userId: '1',
-      username: 'vben',
-      realName: 'Vben Admin',
-      avatar: 'https://q1.qlogo.cn/g?b=qq&nk=190848757&s=640',
-      desc: 'manager',
-      password: '123456',
-      token: 'fakeToken1',
-      homePath: '/dashboard/analysis',
-      roles: [
-        {
-          roleName: 'Super Admin',
-          value: 'super',
-        },
-      ],
-    },
-    {
-      userId: '2',
-      username: 'test',
-      password: '123456',
-      realName: 'test user',
-      avatar: 'https://q1.qlogo.cn/g?b=qq&nk=339449197&s=640',
-      desc: 'tester',
-      token: 'fakeToken2',
-      homePath: '/dashboard/workbench',
-      roles: [
-        {
-          roleName: 'Tester',
-          value: 'test',
-        },
-      ],
-    },
-  ];
-}
-
-const fakeCodeList: any = {
-  '1': ['1000', '3000', '5000'],
-
-  '2': ['2000', '4000', '6000'],
-};
-export default [
-  // mock user login
-  {
-    url: '/basic-api/login',
-    timeout: 200,
-    method: 'post',
-    response: ({ body }) => {
-      const { username, password } = body;
-      const checkUser = createFakeUserList().find(
-        (item) => item.username === username && password === item.password,
-      );
-      if (!checkUser) {
-        return resultError('Incorrect account or password!');
-      }
-      const { userId, username: _username, token, realName, desc, roles } = checkUser;
-      return resultSuccess({
-        roles,
-        userId,
-        username: _username,
-        token,
-        realName,
-        desc,
-      });
-    },
-  },
-  {
-    url: '/basic-api/getUserInfo',
-    method: 'get',
-    response: (request: requestParams) => {
-      const token = getRequestToken(request);
-      if (!token) return resultError('Invalid token');
-      const checkUser = createFakeUserList().find((item) => item.token === token);
-      if (!checkUser) {
-        return resultError('The corresponding user information was not obtained!');
-      }
-      return resultSuccess(checkUser);
-    },
-  },
-  {
-    url: '/basic-api/getPermCode',
-    timeout: 200,
-    method: 'get',
-    response: (request: requestParams) => {
-      const token = getRequestToken(request);
-      if (!token) return resultError('Invalid token');
-      const checkUser = createFakeUserList().find((item) => item.token === token);
-      if (!checkUser) {
-        return resultError('Invalid token!');
-      }
-      const codeList = fakeCodeList[checkUser.userId];
-
-      return resultSuccess(codeList);
-    },
-  },
-  {
-    url: '/basic-api/logout',
-    timeout: 200,
-    method: 'get',
-    response: (request: requestParams) => {
-      const token = getRequestToken(request);
-      if (!token) return resultError('Invalid token');
-      const checkUser = createFakeUserList().find((item) => item.token === token);
-      if (!checkUser) {
-        return resultError('Invalid token!');
-      }
-      return resultSuccess(undefined, { message: 'Token has been destroyed' });
-    },
-  },
-  {
-    url: '/basic-api/testRetry',
-    statusCode: 405,
-    method: 'get',
-    response: () => {
-      return resultError('Error!');
-    },
-  },
-] as MockMethod[];
diff --git a/streampark-console/streampark-console-newui/package.json b/streampark-console/streampark-console-newui/package.json
index a60459911..04b7fd95c 100644
--- a/streampark-console/streampark-console-newui/package.json
+++ b/streampark-console/streampark-console-newui/package.json
@@ -1,10 +1,9 @@
 {
-  "name": "streamx-webapp",
+  "name": "streampark webapp",
   "version": "2.0.0",
   "author": {
     "name": "streampark",
-    "email": "benjobs@apache.org",
-    "url": "http://www.streamxhub.com"
+    "url": "https://streampark.apache.org"
   },
   "scripts": {
     "bootstrap": "pnpm install",
@@ -28,7 +27,6 @@
     "test:gzip": "npx http-server dist --cors --gzip -c-1",
     "test:br": "npx http-server dist --cors --brotli -c-1",
     "reinstall": "rimraf pnpm-lock.yaml && rimraf package.lock.json && rimraf node_modules && npm run bootstrap",
-    "prepare": "husky install",
     "gen:icon": "esno ./build/generate/icon/index.ts"
   },
   "dependencies": {
@@ -155,13 +153,13 @@
   },
   "repository": {
     "type": "git",
-    "url": "git+https://github.com/streamxhub/streamx-webapp.git"
+    "url": "git+https://github.com/apache/incubator-streampark.git"
   },
-  "license": "MIT",
+  "license": "Apache-2.0 license",
   "bugs": {
-    "url": "https://github.com/streamxhub/streamx-webapp/issues"
+    "url": "https://github.com/apache/incubator-streampark/issues"
   },
-  "homepage": "https://github.com/streamxhub/streamx-webapp",
+  "homepage": "https://streampark.apache.org",
   "engines": {
     "node": "^12 || >=14"
   },
diff --git a/streampark-console/streampark-console-newui/postcss.config.js b/streampark-console/streampark-console-newui/postcss.config.js
index a47ef4f95..4cae3a3b7 100644
--- a/streampark-console/streampark-console-newui/postcss.config.js
+++ b/streampark-console/streampark-console-newui/postcss.config.js
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 module.exports = {
   plugins: {
     autoprefixer: {},
diff --git a/streampark-console/streampark-console-newui/prettier.config.js b/streampark-console/streampark-console-newui/prettier.config.js
index 51f8d01be..807359fdf 100644
--- a/streampark-console/streampark-console-newui/prettier.config.js
+++ b/streampark-console/streampark-console-newui/prettier.config.js
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 module.exports = {
   printWidth: 100,
   semi: true,
diff --git a/streampark-console/streampark-console-newui/public/resource/img/pwa-192x192.png b/streampark-console/streampark-console-newui/public/resource/img/pwa-192x192.png
deleted file mode 100644
index 00fb81521..000000000
Binary files a/streampark-console/streampark-console-newui/public/resource/img/pwa-192x192.png and /dev/null differ
diff --git a/streampark-console/streampark-console-newui/public/resource/img/pwa-512x512.png b/streampark-console/streampark-console-newui/public/resource/img/pwa-512x512.png
deleted file mode 100644
index a41707331..000000000
Binary files a/streampark-console/streampark-console-newui/public/resource/img/pwa-512x512.png and /dev/null differ
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/langs/en.js b/streampark-console/streampark-console-newui/public/resource/tinymce/langs/en.js
index 27337c394..f64f87399 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/langs/en.js
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/langs/en.js
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 tinymce.addI18n('es', {
   Redo: 'Rehacer',
   Undo: 'Deshacer',
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/langs/zh_CN.js b/streampark-console/streampark-console-newui/public/resource/tinymce/langs/zh_CN.js
index f9d8b5cfd..dc2de39be 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/langs/zh_CN.js
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/langs/zh_CN.js
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 tinymce.addI18n('zh_CN',{
 "Redo": "\u91cd\u505a",
 "Undo": "\u64a4\u9500",
@@ -386,4 +402,4 @@ tinymce.addI18n('zh_CN',{
 "Spellcheck": "\u62fc\u5199\u68c0\u67e5",
 "Caption": "\u6807\u9898",
 "Insert template": "\u63d2\u5165\u6a21\u677f"
-});
\ No newline at end of file
+});
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.inline.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.inline.min.css
index 748f313bb..d00bf87bc 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.inline.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.inline.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.min.css
index 6e7165f09..996a03ffd 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.mobile.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.mobile.min.css
index c0522520e..d59356345 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.mobile.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/content.mobile.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.min.css
index d8dc9b2da..4bf44cdf7 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.mobile.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.mobile.min.css
index 14847d0a2..e821ff3d6 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.mobile.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide-dark/skin.mobile.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.inline.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.inline.min.css
index 748f313bb..3b7ee5809 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.inline.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.inline.min.css
@@ -1,9 +1,20 @@
-/**
- * Copyright (c) Tiny Technologies, Inc. All rights reserved.
- * Licensed under the LGPL or a commercial license.
- * For LGPL see License.txt in the project root for license information.
- * For commercial licenses see https://www.tiny.cloud/
+/*
+ * 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
+ *
+ *    https://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.
  */
+
 .mce-content-body .mce-item-anchor{display: inline-block;width: 8px !important;height: 12px !important;padding: 0 2px;cursor: default;background: transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'8'%20height%3D'12'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M0%200L8%200%208%2012%204.09117821%209%200%2012z'%2F%3E%3C%2Fsvg%3E%0A") no-repeat center;-webkit-user-select: all;-moz-user-select: all;-ms-user-select: all;user-select: all;-webkit-user-modif [...]
 
 .mce-content-body .mce-item-anchor[data-mce-selected]{outline-offset: 1px;}
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.min.css
index 6e7165f09..996a03ffd 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.mobile.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.mobile.min.css
index c0522520e..d59356345 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.mobile.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/content.mobile.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.min.css
index 5886c594c..4db048449 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.mobile.min.css b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.mobile.min.css
index 14847d0a2..e821ff3d6 100644
--- a/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.mobile.min.css
+++ b/streampark-console/streampark-console-newui/public/resource/tinymce/skins/ui/oxide/skin.mobile.min.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * Copyright (c) Tiny Technologies, Inc. All rights reserved.
  * Licensed under the LGPL or a commercial license.
diff --git a/streampark-console/streampark-console-newui/src/App.vue b/streampark-console/streampark-console-newui/src/App.vue
index f4fab182c..c0b9dd591 100644
--- a/streampark-console/streampark-console-newui/src/App.vue
+++ b/streampark-console/streampark-console-newui/src/App.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <ConfigProvider :locale="getAntdLocale">
     <AppProvider>
diff --git a/streampark-console/streampark-console-newui/src/adapter/api/baseUrl.ts b/streampark-console/streampark-console-newui/src/adapter/api/baseUrl.ts
index 10e71c5ca..7bdad0994 100644
--- a/streampark-console/streampark-console-newui/src/adapter/api/baseUrl.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/api/baseUrl.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export function baseUrl() {
   if (import.meta.env.VITE_APP_ENV) {
     return `${location.protocol}//${location.host}`;
diff --git a/streampark-console/streampark-console-newui/src/adapter/api/index.ts b/streampark-console/streampark-console-newui/src/adapter/api/index.ts
index 7dc99de7c..525bbb01b 100644
--- a/streampark-console/streampark-console-newui/src/adapter/api/index.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/api/index.ts
@@ -1,22 +1,18 @@
 /*
- * Copyright (c) 2019 The StreamX Project
- * <p>
- * 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
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * 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.
+  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
+
+      https://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.
  */
 
 export default {
diff --git a/streampark-console/streampark-console-newui/src/adapter/api/passport.ts b/streampark-console/streampark-console-newui/src/adapter/api/passport.ts
index 2bee70294..c1d4b0191 100644
--- a/streampark-console/streampark-console-newui/src/adapter/api/passport.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/api/passport.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 api from './index';
 import http from '/@/adapter/utils/request';
 
diff --git a/streampark-console/streampark-console-newui/src/adapter/index.less b/streampark-console/streampark-console-newui/src/adapter/index.less
index ecc0ab75e..97d3744c1 100644
--- a/streampark-console/streampark-console-newui/src/adapter/index.less
+++ b/streampark-console/streampark-console-newui/src/adapter/index.less
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 // swal <pre class="propException">
 .propException {
   font-size: 10px;
diff --git a/streampark-console/streampark-console-newui/src/adapter/index.ts b/streampark-console/streampark-console-newui/src/adapter/index.ts
index 6d4cb3999..e086cca39 100644
--- a/streampark-console/streampark-console-newui/src/adapter/index.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { App } from 'vue';
 import VueSweetalert2 from 'vue-sweetalert2';
 import Swal from 'sweetalert2/dist/sweetalert2.js';
diff --git a/streampark-console/streampark-console-newui/src/adapter/store/getters.ts b/streampark-console/streampark-console-newui/src/adapter/store/getters.ts
index 15e2790fc..fad2bcfe2 100644
--- a/streampark-console/streampark-console-newui/src/adapter/store/getters.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/store/getters.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { state } from './modules/user';
 
 const getters = {
diff --git a/streampark-console/streampark-console-newui/src/adapter/store/index.ts b/streampark-console/streampark-console-newui/src/adapter/store/index.ts
index c7ff7a3b5..0ce39cafd 100644
--- a/streampark-console/streampark-console-newui/src/adapter/store/index.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/store/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 getters from './getters';
 
 export default {
diff --git a/streampark-console/streampark-console-newui/src/adapter/store/modules/user.ts b/streampark-console/streampark-console-newui/src/adapter/store/modules/user.ts
index b8bdb4454..f4634d29b 100644
--- a/streampark-console/streampark-console-newui/src/adapter/store/modules/user.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/store/modules/user.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { signin, signout } from '/@/adapter/api/passport';
 import {
   TOKEN,
diff --git a/streampark-console/streampark-console-newui/src/adapter/store/mutation-types.ts b/streampark-console/streampark-console-newui/src/adapter/store/mutation-types.ts
index 69b45eda4..3de38c939 100644
--- a/streampark-console/streampark-console-newui/src/adapter/store/mutation-types.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/store/mutation-types.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export const TOKEN = 'TOKEN';
 export const USER_ROUTER = 'USER_ROUTER';
 export const PERMISSIONS = 'PERMISSIONS';
diff --git a/streampark-console/streampark-console-newui/src/adapter/utils/request.ts b/streampark-console/streampark-console-newui/src/adapter/utils/request.ts
index 9dd388960..086a3b7c5 100644
--- a/streampark-console/streampark-console-newui/src/adapter/utils/request.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/utils/request.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 axios from 'axios';
 import $qs from 'qs';
 import notification from 'ant-design-vue/es/notification';
diff --git a/streampark-console/streampark-console-newui/src/adapter/utils/storage.ts b/streampark-console/streampark-console-newui/src/adapter/utils/storage.ts
index a87116001..2e017da22 100644
--- a/streampark-console/streampark-console-newui/src/adapter/utils/storage.ts
+++ b/streampark-console/streampark-console-newui/src/adapter/utils/storage.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 const config = {
   // storage options
   storageOptions: {
diff --git a/streampark-console/streampark-console-newui/src/api/demo/cascader.ts b/streampark-console/streampark-console-newui/src/api/demo/cascader.ts
index 83dcab07c..cd9f22511 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/cascader.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/cascader.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { AreaModel, AreaParams } from '/@/api/demo/model/areaModel';
 
diff --git a/streampark-console/streampark-console-newui/src/api/demo/error.ts b/streampark-console/streampark-console-newui/src/api/demo/error.ts
index 3ce607217..316ba5c6a 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/error.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/error.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 
 enum Api {
diff --git a/streampark-console/streampark-console-newui/src/api/demo/model/accountModel.ts b/streampark-console/streampark-console-newui/src/api/demo/model/accountModel.ts
index 4594393e4..3dc1109b5 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/model/accountModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/model/accountModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface GetAccountInfoModel {
   email: string;
   name: string;
diff --git a/streampark-console/streampark-console-newui/src/api/demo/model/areaModel.ts b/streampark-console/streampark-console-newui/src/api/demo/model/areaModel.ts
index dfaa481bf..e86349d66 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/model/areaModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/model/areaModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface AreaModel {
   id: string;
   code: string;
diff --git a/streampark-console/streampark-console-newui/src/api/demo/model/optionsModel.ts b/streampark-console/streampark-console-newui/src/api/demo/model/optionsModel.ts
index c15ef8fd2..a350f1740 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/model/optionsModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/model/optionsModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { BasicFetchResult } from '/@/api/model/baseModel';
 
 export interface DemoOptionsItem {
diff --git a/streampark-console/streampark-console-newui/src/api/demo/model/systemModel.ts b/streampark-console/streampark-console-newui/src/api/demo/model/systemModel.ts
index 88e62aac4..cc86e3020 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/model/systemModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/model/systemModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel';
 
 export type AccountParams = BasicPageParams & {
diff --git a/streampark-console/streampark-console-newui/src/api/demo/model/tableModel.ts b/streampark-console/streampark-console-newui/src/api/demo/model/tableModel.ts
index 322a8b481..dc85d04ad 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/model/tableModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/model/tableModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel';
 /**
  * @description: Request list interface parameters
diff --git a/streampark-console/streampark-console-newui/src/api/demo/select.ts b/streampark-console/streampark-console-newui/src/api/demo/select.ts
index 54c4ef5ec..69781e8ef 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/select.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/select.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { DemoOptionsItem, selectParams } from './model/optionsModel';
 enum Api {
diff --git a/streampark-console/streampark-console-newui/src/api/demo/system.ts b/streampark-console/streampark-console-newui/src/api/demo/system.ts
index 58130e5d5..465408236 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/system.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/system.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 {
   AccountParams,
   DeptListItem,
diff --git a/streampark-console/streampark-console-newui/src/api/demo/table.ts b/streampark-console/streampark-console-newui/src/api/demo/table.ts
index b9b60df64..0385dddaa 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/table.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/table.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { DemoParams, DemoListGetResultModel } from './model/tableModel';
 
diff --git a/streampark-console/streampark-console-newui/src/api/demo/tree.ts b/streampark-console/streampark-console-newui/src/api/demo/tree.ts
index 8b8a94f1a..fe8a6150e 100644
--- a/streampark-console/streampark-console-newui/src/api/demo/tree.ts
+++ b/streampark-console/streampark-console-newui/src/api/demo/tree.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 
 enum Api {
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/app.ts b/streampark-console/streampark-console-newui/src/api/flink/app/app.ts
index eabb1b88d..435956eda 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/app.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/app.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AxiosResponse } from 'axios';
 import { AppListRecord, AppListResponse, CancelParam, DashboardResponse } from './app.type';
 import { Result } from '/#/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/app.type.ts b/streampark-console/streampark-console-newui/src/api/flink/app/app.type.ts
index 00769c58a..866b51f5d 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/app.type.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/app.type.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 // 仪表盘
 export interface DashboardResponse {
   totalTM: number;
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/flinkBuild.ts b/streampark-console/streampark-console-newui/src/api/flink/app/flinkBuild.ts
index b4f75e968..f8fc8128d 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/flinkBuild.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/flinkBuild.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AxiosResponse } from 'axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/flinkHistory.ts b/streampark-console/streampark-console-newui/src/api/flink/app/flinkHistory.ts
index a60a4b374..46457e6c4 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/flinkHistory.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/flinkHistory.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
 
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/flinkPodtmpl.ts b/streampark-console/streampark-console-newui/src/api/flink/app/flinkPodtmpl.ts
index 72afb578b..36de84ab4 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/flinkPodtmpl.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/flinkPodtmpl.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
 
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/flinkSql.ts b/streampark-console/streampark-console-newui/src/api/flink/app/flinkSql.ts
index 0b1645c45..660e571dd 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/flinkSql.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/flinkSql.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AxiosResponse } from 'axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/metrics.ts b/streampark-console/streampark-console-newui/src/api/flink/app/metrics.ts
index c8876e124..83bd4c576 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/metrics.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/metrics.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AxiosResponse } from 'axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/app/savepoint.ts b/streampark-console/streampark-console-newui/src/api/flink/app/savepoint.ts
index c376c54e3..47924d289 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/app/savepoint.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/app/savepoint.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
 
diff --git a/streampark-console/streampark-console-newui/src/api/flink/config/index.ts b/streampark-console/streampark-console-newui/src/api/flink/config/index.ts
index fb1ee546f..f79afe743 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/config/index.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/config/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { HadoopConf } from './index.type';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/config/index.type.ts b/streampark-console/streampark-console-newui/src/api/flink/config/index.type.ts
index e581dd95d..177d5bcd1 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/config/index.type.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/config/index.type.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface HadoopConf {
   hadoop: Hadoop;
   hive: any;
diff --git a/streampark-console/streampark-console-newui/src/api/flink/notebook.ts b/streampark-console/streampark-console-newui/src/api/flink/notebook.ts
index a874e9757..9aae66070 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/notebook.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/notebook.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AxiosResponse } from 'axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/project/index.ts b/streampark-console/streampark-console-newui/src/api/flink/project/index.ts
index 4391e7320..f5ac6dc1b 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/project/index.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/project/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { ProjectModel } from '/@/api/flink/project/model/projectModel';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/project/model/projectModel.ts b/streampark-console/streampark-console-newui/src/api/flink/project/model/projectModel.ts
index fb0f6db7f..38efe538a 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/project/model/projectModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/project/model/projectModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface ProjectModel {
   records: ProjectRecord[];
   total: number;
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/alert.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/alert.ts
index 15d7a5e3b..869fc9d0c 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/alert.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/alert.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AlertCreate, AlertSetting } from './types/alert.type';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/flinkCluster.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/flinkCluster.ts
index 136d3ae42..617784aa1 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/flinkCluster.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/flinkCluster.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AxiosResponse } from 'axios';
 import { FlinkCluster } from './types/flinkCluster.type';
 import { Result } from '/#/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/flinkEnv.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/flinkEnv.ts
index b436215db..fdf6d41cb 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/flinkEnv.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/flinkEnv.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { AxiosResponse } from 'axios';
 import { FlinkCreate, FlinkEnv } from './types/flinkEnv.type';
 import { Result } from '/#/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/index.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/index.ts
index 861bfb9da..c2a4179d3 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/index.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { SystemSetting } from './types/setting.type';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/types/alert.type.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/types/alert.type.ts
index cd1e17e3f..bcbfc5c1c 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/types/alert.type.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/types/alert.type.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface AlertSetting {
   id: string;
   userId: string;
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkCluster.type.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkCluster.type.ts
index 4ac3b5fc3..b7a8859db 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkCluster.type.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkCluster.type.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface FlinkCluster {
   id: string;
   address: string;
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkEnv.type.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkEnv.type.ts
index 3bef6a91e..fe93a7690 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkEnv.type.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/types/flinkEnv.type.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /* flink home 数据 */
 export interface FlinkEnv {
   id: string;
diff --git a/streampark-console/streampark-console-newui/src/api/flink/setting/types/setting.type.ts b/streampark-console/streampark-console-newui/src/api/flink/setting/types/setting.type.ts
index e190aab42..6811e3b88 100644
--- a/streampark-console/streampark-console-newui/src/api/flink/setting/types/setting.type.ts
+++ b/streampark-console/streampark-console-newui/src/api/flink/setting/types/setting.type.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface SystemSetting {
   orderNum: number;
   settingName: string;
diff --git a/streampark-console/streampark-console-newui/src/api/model/baseModel.ts b/streampark-console/streampark-console-newui/src/api/model/baseModel.ts
index 1a3651182..925d6d214 100644
--- a/streampark-console/streampark-console-newui/src/api/model/baseModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/model/baseModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface BasicPageParams {
   page: number;
   pageSize: number;
diff --git a/streampark-console/streampark-console-newui/src/api/sys/menu.ts b/streampark-console/streampark-console-newui/src/api/sys/menu.ts
index 1ee0947f7..640dc81cf 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/menu.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/menu.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { getMenuListResultModel } from './model/menuModel';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
diff --git a/streampark-console/streampark-console-newui/src/api/sys/model/menuModel.ts b/streampark-console/streampark-console-newui/src/api/sys/model/menuModel.ts
index 8d19eeaba..0fa5e38e4 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/model/menuModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/model/menuModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { RouteMeta } from 'vue-router';
 export interface RouteItem {
   path: string;
diff --git a/streampark-console/streampark-console-newui/src/api/sys/model/notifyModel.ts b/streampark-console/streampark-console-newui/src/api/sys/model/notifyModel.ts
index 18d93a695..e146371d7 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/model/notifyModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/model/notifyModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface NoticyList {
   records: NoticyItem[];
   total: string;
diff --git a/streampark-console/streampark-console-newui/src/api/sys/model/uploadModel.ts b/streampark-console/streampark-console-newui/src/api/sys/model/uploadModel.ts
index d770c642b..f80b7b67d 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/model/uploadModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/model/uploadModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface UploadApiResult {
   message: string;
   code: number;
diff --git a/streampark-console/streampark-console-newui/src/api/sys/model/userModel.ts b/streampark-console/streampark-console-newui/src/api/sys/model/userModel.ts
index 9f6e23b11..f67e533fe 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/model/userModel.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/model/userModel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * @description: Login interface parameters
  */
diff --git a/streampark-console/streampark-console-newui/src/api/sys/notify.ts b/streampark-console/streampark-console-newui/src/api/sys/notify.ts
index 3cd452843..776f5a571 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/notify.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/notify.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { NoticyList } from './model/notifyModel';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 import { defHttp } from '/@/utils/http/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/sys/role.ts b/streampark-console/streampark-console-newui/src/api/sys/role.ts
index cb1a40558..493f80f89 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/role.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/role.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 
diff --git a/streampark-console/streampark-console-newui/src/api/sys/team.ts b/streampark-console/streampark-console-newui/src/api/sys/team.ts
index a3f7467ca..21b4abb9d 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/team.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/team.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 
diff --git a/streampark-console/streampark-console-newui/src/api/sys/token.ts b/streampark-console/streampark-console-newui/src/api/sys/token.ts
index 7ae9c3552..2b510afd5 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/token.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/token.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { ContentTypeEnum } from '/@/enums/httpEnum';
 
diff --git a/streampark-console/streampark-console-newui/src/api/sys/upload.ts b/streampark-console/streampark-console-newui/src/api/sys/upload.ts
index c47baf433..1076601ae 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/upload.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/upload.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { UploadApiResult } from './model/uploadModel';
 import { defHttp } from '/@/utils/http/axios';
 import { UploadFileParams } from '/#/axios';
diff --git a/streampark-console/streampark-console-newui/src/api/sys/user.ts b/streampark-console/streampark-console-newui/src/api/sys/user.ts
index 8989856c5..d4444e5f3 100644
--- a/streampark-console/streampark-console-newui/src/api/sys/user.ts
+++ b/streampark-console/streampark-console-newui/src/api/sys/user.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { defHttp } from '/@/utils/http/axios';
 import { LoginParams, LoginResultModel, GetUserInfoModel } from './model/userModel';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Application/index.ts b/streampark-console/streampark-console-newui/src/components/Application/index.ts
index d7c513306..0095a4094 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Application/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 
 import appLogo from './src/AppLogo.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/AppDarkModeToggle.vue b/streampark-console/streampark-console-newui/src/components/Application/src/AppDarkModeToggle.vue
index 19ba3b151..40b5c4964 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/AppDarkModeToggle.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/AppDarkModeToggle.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div v-if="getShowDarkModeToggle" :class="getClass" @click="toggleDarkMode">
     <div :class="`${prefixCls}-inner`"></div>
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/AppLocalePicker.vue b/streampark-console/streampark-console-newui/src/components/Application/src/AppLocalePicker.vue
index f71b81280..cdde88fd4 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/AppLocalePicker.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/AppLocalePicker.vue
@@ -1,6 +1,18 @@
 <!--
- * @Author: Vben
- * @Description: Multi-language switching component
+  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
+
+      https://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.
 -->
 <template>
   <Dropdown
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/AppLogo.vue b/streampark-console/streampark-console-newui/src/components/Application/src/AppLogo.vue
index f989cbf71..aacbbd7de 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/AppLogo.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/AppLogo.vue
@@ -1,22 +1,18 @@
 <!--
- * Copyright (c) 2019 The StreamX Project
- * <p>
- * 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
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * 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.
+  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
+
+      https://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.
 -->
 <template>
   <div class="anticon" :class="getAppLogoClass" @click="goHome">
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/AppProvider.vue b/streampark-console/streampark-console-newui/src/components/Application/src/AppProvider.vue
index fe19a8000..1e8a419c3 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/AppProvider.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/AppProvider.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="ts">
   import { defineComponent, toRefs, ref, unref } from 'vue';
   import { createAppProviderContext } from './useAppContext';
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearch.vue b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearch.vue
index 63d346ee3..60d523d5a 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearch.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearch.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="tsx">
   import { defineComponent, ref, unref } from 'vue';
   import { Tooltip } from 'ant-design-vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchFooter.vue b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchFooter.vue
index 97bd93a93..9a8ec183b 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchFooter.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchFooter.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="`${prefixCls}`">
     <AppSearchKeyItem :class="`${prefixCls}-item`" icon="ant-design:enter-outlined" />
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchKeyItem.vue b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchKeyItem.vue
index aba36a5af..5d3d18199 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchKeyItem.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchKeyItem.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <span :class="$attrs.class">
     <Icon :icon="icon" />
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchModal.vue b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchModal.vue
index 76b788240..6fd8a2638 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchModal.vue
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/search/AppSearchModal.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Teleport to="body">
     <transition name="zoom-fade" mode="out-in">
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/search/useMenuSearch.ts b/streampark-console/streampark-console-newui/src/components/Application/src/search/useMenuSearch.ts
index 9101b4ac9..b3ac5f078 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/search/useMenuSearch.ts
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/search/useMenuSearch.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Menu } from '/@/router/types';
 import { ref, onBeforeMount, unref, Ref, nextTick } from 'vue';
 import { getMenus } from '/@/router/menus';
diff --git a/streampark-console/streampark-console-newui/src/components/Application/src/useAppContext.ts b/streampark-console/streampark-console-newui/src/components/Application/src/useAppContext.ts
index 8bdfb4f88..4d490bcd8 100644
--- a/streampark-console/streampark-console-newui/src/components/Application/src/useAppContext.ts
+++ b/streampark-console/streampark-console-newui/src/components/Application/src/useAppContext.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { InjectionKey, Ref } from 'vue';
 import { createContext, useContext } from '/@/hooks/core/useContext';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Authority/index.ts b/streampark-console/streampark-console-newui/src/components/Authority/index.ts
index 2f0eab7f2..b929e1938 100644
--- a/streampark-console/streampark-console-newui/src/components/Authority/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Authority/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import authority from './src/Authority.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Authority/src/Authority.vue b/streampark-console/streampark-console-newui/src/components/Authority/src/Authority.vue
index 0d3593827..55588cdce 100644
--- a/streampark-console/streampark-console-newui/src/components/Authority/src/Authority.vue
+++ b/streampark-console/streampark-console-newui/src/components/Authority/src/Authority.vue
@@ -1,5 +1,18 @@
 <!--
- Access control component for fine-grained access control.
+  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
+
+      https://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.
 -->
 <script lang="ts">
   import type { PropType } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Basic/index.ts b/streampark-console/streampark-console-newui/src/components/Basic/index.ts
index 97a53a101..8a3815ef1 100644
--- a/streampark-console/streampark-console-newui/src/components/Basic/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Basic/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import basicArrow from './src/BasicArrow.vue';
 import basicTitle from './src/BasicTitle.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Basic/src/BasicArrow.vue b/streampark-console/streampark-console-newui/src/components/Basic/src/BasicArrow.vue
index 6a4cd01ad..2efa8f2f1 100644
--- a/streampark-console/streampark-console-newui/src/components/Basic/src/BasicArrow.vue
+++ b/streampark-console/streampark-console-newui/src/components/Basic/src/BasicArrow.vue
@@ -1,6 +1,18 @@
 <!--
- * @Author: Vben
- * @Description: Arrow component with animation
+  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
+
+      https://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.
 -->
 <template>
   <span :class="getClass">
diff --git a/streampark-console/streampark-console-newui/src/components/Basic/src/BasicHelp.vue b/streampark-console/streampark-console-newui/src/components/Basic/src/BasicHelp.vue
index 8b152d9b0..b46effe31 100644
--- a/streampark-console/streampark-console-newui/src/components/Basic/src/BasicHelp.vue
+++ b/streampark-console/streampark-console-newui/src/components/Basic/src/BasicHelp.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="tsx">
   import type { CSSProperties, PropType } from 'vue';
   import { defineComponent, computed, unref } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Basic/src/BasicTitle.vue b/streampark-console/streampark-console-newui/src/components/Basic/src/BasicTitle.vue
index 3b96328f8..903f882b4 100644
--- a/streampark-console/streampark-console-newui/src/components/Basic/src/BasicTitle.vue
+++ b/streampark-console/streampark-console-newui/src/components/Basic/src/BasicTitle.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <span :class="getClass">
     <slot></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/Button/index.ts b/streampark-console/streampark-console-newui/src/components/Button/index.ts
index 98add5c30..e9b0eeb50 100644
--- a/streampark-console/streampark-console-newui/src/components/Button/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Button/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import type { ExtractPropTypes } from 'vue';
 import button from './src/BasicButton.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Button/src/BasicButton.vue b/streampark-console/streampark-console-newui/src/components/Button/src/BasicButton.vue
index 73f0c449f..2d184f304 100644
--- a/streampark-console/streampark-console-newui/src/components/Button/src/BasicButton.vue
+++ b/streampark-console/streampark-console-newui/src/components/Button/src/BasicButton.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Button v-bind="getBindValue" :class="getButtonClass" @click="onClick">
     <template #default="data">
diff --git a/streampark-console/streampark-console-newui/src/components/Button/src/PopConfirmButton.vue b/streampark-console/streampark-console-newui/src/components/Button/src/PopConfirmButton.vue
index b24225faa..02ba83a34 100644
--- a/streampark-console/streampark-console-newui/src/components/Button/src/PopConfirmButton.vue
+++ b/streampark-console/streampark-console-newui/src/components/Button/src/PopConfirmButton.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="ts">
   import { computed, defineComponent, h, unref } from 'vue';
   import BasicButton from './BasicButton.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Button/src/props.ts b/streampark-console/streampark-console-newui/src/components/Button/src/props.ts
index d79d378af..f6547e0e4 100644
--- a/streampark-console/streampark-console-newui/src/components/Button/src/props.ts
+++ b/streampark-console/streampark-console-newui/src/components/Button/src/props.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export const buttonProps = {
   color: { type: String, validator: (v) => ['error', 'warning', 'success', ''].includes(v) },
   loading: { type: Boolean },
diff --git a/streampark-console/streampark-console-newui/src/components/CardList/index.ts b/streampark-console/streampark-console-newui/src/components/CardList/index.ts
index b977c1b16..d3bf551f2 100644
--- a/streampark-console/streampark-console-newui/src/components/CardList/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/CardList/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import cardList from './src/CardList.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/CardList/src/CardList.vue b/streampark-console/streampark-console-newui/src/components/CardList/src/CardList.vue
index d14f7c6fa..89dde2fd6 100644
--- a/streampark-console/streampark-console-newui/src/components/CardList/src/CardList.vue
+++ b/streampark-console/streampark-console-newui/src/components/CardList/src/CardList.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div class="p-2">
     <div class="p-4 mb-2 bg-white">
diff --git a/streampark-console/streampark-console-newui/src/components/CardList/src/data.ts b/streampark-console/streampark-console-newui/src/components/CardList/src/data.ts
index b7c4be78c..c6e2980c3 100644
--- a/streampark-console/streampark-console-newui/src/components/CardList/src/data.ts
+++ b/streampark-console/streampark-console-newui/src/components/CardList/src/data.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ref } from 'vue';
 // 每行个数
 export const grid = ref(12);
diff --git a/streampark-console/streampark-console-newui/src/components/ClickOutSide/index.ts b/streampark-console/streampark-console-newui/src/components/ClickOutSide/index.ts
index 5e7dd2d33..644271dbb 100644
--- a/streampark-console/streampark-console-newui/src/components/ClickOutSide/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/ClickOutSide/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import clickOutSide from './src/ClickOutSide.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/ClickOutSide/src/ClickOutSide.vue b/streampark-console/streampark-console-newui/src/components/ClickOutSide/src/ClickOutSide.vue
index c043cc190..ded14c1c5 100644
--- a/streampark-console/streampark-console-newui/src/components/ClickOutSide/src/ClickOutSide.vue
+++ b/streampark-console/streampark-console-newui/src/components/ClickOutSide/src/ClickOutSide.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div ref="wrap">
     <slot></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/CodeEditor/index.ts b/streampark-console/streampark-console-newui/src/components/CodeEditor/index.ts
index 872bfedf9..30e6d4942 100644
--- a/streampark-console/streampark-console-newui/src/components/CodeEditor/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/CodeEditor/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import codeEditor from './src/CodeEditor.vue';
 import jsonPreview from './src/json-preview/JsonPreview.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/CodeEditor.vue b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/CodeEditor.vue
index db9042b50..0da2adb67 100644
--- a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/CodeEditor.vue
+++ b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/CodeEditor.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div class="h-full">
     <CodeMirrorEditor
diff --git a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/CodeMirror.vue b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/CodeMirror.vue
index 426ac36e5..4c2f7ae99 100644
--- a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/CodeMirror.vue
+++ b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/CodeMirror.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div class="relative !h-full w-full overflow-hidden" ref="el"></div>
 </template>
diff --git a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codeMirror.ts b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codeMirror.ts
index e04f51be2..092781df6 100644
--- a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codeMirror.ts
+++ b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codeMirror.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 CodeMirror from 'codemirror';
 import './codemirror.css';
 import 'codemirror/theme/idea.css';
diff --git a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codemirror.css b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codemirror.css
index c87ff666f..1b752f324 100644
--- a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codemirror.css
+++ b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/codemirror/codemirror.css
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /* BASICS */
 
 .CodeMirror {
diff --git a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/json-preview/JsonPreview.vue b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/json-preview/JsonPreview.vue
index 75890c336..d45303d77 100644
--- a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/json-preview/JsonPreview.vue
+++ b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/json-preview/JsonPreview.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <vue-json-pretty :path="'res'" :deep="3" :showLength="true" :data="data" />
 </template>
diff --git a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/typing.ts b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/typing.ts
index 34b5ed1f4..a5fff9a26 100644
--- a/streampark-console/streampark-console-newui/src/components/CodeEditor/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/CodeEditor/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export enum MODE {
   JSON = 'application/json',
   HTML = 'htmlmixed',
diff --git a/streampark-console/streampark-console-newui/src/components/Container/index.ts b/streampark-console/streampark-console-newui/src/components/Container/index.ts
index e1230a093..f1d8d93e8 100644
--- a/streampark-console/streampark-console-newui/src/components/Container/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Container/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import collapseContainer from './src/collapse/CollapseContainer.vue';
 import scrollContainer from './src/ScrollContainer.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Container/src/LazyContainer.vue b/streampark-console/streampark-console-newui/src/components/Container/src/LazyContainer.vue
index a7ad2b69f..e47753156 100644
--- a/streampark-console/streampark-console-newui/src/components/Container/src/LazyContainer.vue
+++ b/streampark-console/streampark-console-newui/src/components/Container/src/LazyContainer.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <transition-group
     class="h-full w-full"
diff --git a/streampark-console/streampark-console-newui/src/components/Container/src/ScrollContainer.vue b/streampark-console/streampark-console-newui/src/components/Container/src/ScrollContainer.vue
index 65c71edce..37c0d3598 100644
--- a/streampark-console/streampark-console-newui/src/components/Container/src/ScrollContainer.vue
+++ b/streampark-console/streampark-console-newui/src/components/Container/src/ScrollContainer.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Scrollbar ref="scrollbarRef" class="scroll-container" v-bind="$attrs">
     <slot></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseContainer.vue b/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseContainer.vue
index d60d5193d..473c8e965 100644
--- a/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseContainer.vue
+++ b/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseContainer.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="prefixCls">
     <CollapseHeader v-bind="props" :prefixCls="prefixCls" :show="show" @expand="handleExpand">
diff --git a/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseHeader.vue b/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseHeader.vue
index 4196c0a6f..ba50922c4 100644
--- a/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseHeader.vue
+++ b/streampark-console/streampark-console-newui/src/components/Container/src/collapse/CollapseHeader.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="[`${prefixCls}__header px-2 py-5`, $attrs.class]">
     <BasicTitle :helpMessage="helpMessage" normal>
diff --git a/streampark-console/streampark-console-newui/src/components/Container/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Container/src/typing.ts
index 86c03bea6..1d2821d1f 100644
--- a/streampark-console/streampark-console-newui/src/components/Container/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Container/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export type ScrollType = 'default' | 'main';
 
 export interface CollapseContainerOptions {
diff --git a/streampark-console/streampark-console-newui/src/components/ContextMenu/index.ts b/streampark-console/streampark-console-newui/src/components/ContextMenu/index.ts
index ed294d7bb..e93d476e7 100644
--- a/streampark-console/streampark-console-newui/src/components/ContextMenu/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/ContextMenu/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export { createContextMenu, destroyContextMenu } from './src/createContextMenu';
 
 export * from './src/typing';
diff --git a/streampark-console/streampark-console-newui/src/components/ContextMenu/src/ContextMenu.vue b/streampark-console/streampark-console-newui/src/components/ContextMenu/src/ContextMenu.vue
index e08c25f36..122b6e711 100644
--- a/streampark-console/streampark-console-newui/src/components/ContextMenu/src/ContextMenu.vue
+++ b/streampark-console/streampark-console-newui/src/components/ContextMenu/src/ContextMenu.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="tsx">
   import type { ContextMenuItem, ItemContentProps, Axis } from './typing';
   import type { FunctionalComponent, CSSProperties } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/ContextMenu/src/createContextMenu.ts b/streampark-console/streampark-console-newui/src/components/ContextMenu/src/createContextMenu.ts
index 8f7a1c82b..fdd72d6fa 100644
--- a/streampark-console/streampark-console-newui/src/components/ContextMenu/src/createContextMenu.ts
+++ b/streampark-console/streampark-console-newui/src/components/ContextMenu/src/createContextMenu.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 contextMenuVue from './ContextMenu.vue';
 import { isClient } from '/@/utils/is';
 import { CreateContextOptions, ContextMenuProps } from './typing';
diff --git a/streampark-console/streampark-console-newui/src/components/ContextMenu/src/typing.ts b/streampark-console/streampark-console-newui/src/components/ContextMenu/src/typing.ts
index 63d3d37fe..edce1580a 100644
--- a/streampark-console/streampark-console-newui/src/components/ContextMenu/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/ContextMenu/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface Axis {
   x: number;
   y: number;
diff --git a/streampark-console/streampark-console-newui/src/components/CountDown/index.ts b/streampark-console/streampark-console-newui/src/components/CountDown/index.ts
index 980941694..c7309c6f1 100644
--- a/streampark-console/streampark-console-newui/src/components/CountDown/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/CountDown/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import countButton from './src/CountButton.vue';
 import countdownInput from './src/CountdownInput.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/CountDown/src/CountButton.vue b/streampark-console/streampark-console-newui/src/components/CountDown/src/CountButton.vue
index 1ef520ede..722aad1ec 100644
--- a/streampark-console/streampark-console-newui/src/components/CountDown/src/CountButton.vue
+++ b/streampark-console/streampark-console-newui/src/components/CountDown/src/CountButton.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Button v-bind="$attrs" :disabled="isStart" @click="handleStart" :loading="loading">
     {{ getButtonText }}
diff --git a/streampark-console/streampark-console-newui/src/components/CountDown/src/CountdownInput.vue b/streampark-console/streampark-console-newui/src/components/CountDown/src/CountdownInput.vue
index 8da89cd6b..dbe3e919c 100644
--- a/streampark-console/streampark-console-newui/src/components/CountDown/src/CountdownInput.vue
+++ b/streampark-console/streampark-console-newui/src/components/CountDown/src/CountdownInput.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <a-input v-bind="$attrs" :class="prefixCls" :size="size" :value="state">
     <template #addonAfter>
diff --git a/streampark-console/streampark-console-newui/src/components/CountDown/src/useCountdown.ts b/streampark-console/streampark-console-newui/src/components/CountDown/src/useCountdown.ts
index 316d69a86..426f85d86 100644
--- a/streampark-console/streampark-console-newui/src/components/CountDown/src/useCountdown.ts
+++ b/streampark-console/streampark-console-newui/src/components/CountDown/src/useCountdown.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ref, unref } from 'vue';
 import { tryOnUnmounted } from '@vueuse/core';
 
diff --git a/streampark-console/streampark-console-newui/src/components/CountTo/index.ts b/streampark-console/streampark-console-newui/src/components/CountTo/index.ts
index 36a4e65a3..46ebc1147 100644
--- a/streampark-console/streampark-console-newui/src/components/CountTo/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/CountTo/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import countTo from './src/CountTo.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/CountTo/src/CountTo.vue b/streampark-console/streampark-console-newui/src/components/CountTo/src/CountTo.vue
index 7de336165..54b53a4c6 100644
--- a/streampark-console/streampark-console-newui/src/components/CountTo/src/CountTo.vue
+++ b/streampark-console/streampark-console-newui/src/components/CountTo/src/CountTo.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <span :style="{ color }">
     {{ value }}
diff --git a/streampark-console/streampark-console-newui/src/components/Cropper/index.ts b/streampark-console/streampark-console-newui/src/components/Cropper/index.ts
index 88d6d1d53..3a7a69c5c 100644
--- a/streampark-console/streampark-console-newui/src/components/Cropper/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Cropper/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import cropperImage from './src/Cropper.vue';
 import avatarCropper from './src/CropperAvatar.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Cropper/src/CopperModal.vue b/streampark-console/streampark-console-newui/src/components/Cropper/src/CopperModal.vue
index 2ec7f4fd0..9ecf80a19 100644
--- a/streampark-console/streampark-console-newui/src/components/Cropper/src/CopperModal.vue
+++ b/streampark-console/streampark-console-newui/src/components/Cropper/src/CopperModal.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <BasicModal
     v-bind="$attrs"
diff --git a/streampark-console/streampark-console-newui/src/components/Cropper/src/Cropper.vue b/streampark-console/streampark-console-newui/src/components/Cropper/src/Cropper.vue
index 4523ad434..ef7f8d9ca 100644
--- a/streampark-console/streampark-console-newui/src/components/Cropper/src/Cropper.vue
+++ b/streampark-console/streampark-console-newui/src/components/Cropper/src/Cropper.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="getClass" :style="getWrapperStyle">
     <img
diff --git a/streampark-console/streampark-console-newui/src/components/Cropper/src/CropperAvatar.vue b/streampark-console/streampark-console-newui/src/components/Cropper/src/CropperAvatar.vue
index daae45338..aef270ac5 100644
--- a/streampark-console/streampark-console-newui/src/components/Cropper/src/CropperAvatar.vue
+++ b/streampark-console/streampark-console-newui/src/components/Cropper/src/CropperAvatar.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="getClass" :style="getStyle">
     <div :class="`${prefixCls}-image-wrapper`" :style="getImageWrapperStyle" @click="openModal">
diff --git a/streampark-console/streampark-console-newui/src/components/Cropper/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Cropper/src/typing.ts
index e76cc6f8e..45a4363c5 100644
--- a/streampark-console/streampark-console-newui/src/components/Cropper/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Cropper/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type Cropper from 'cropperjs';
 
 export interface CropendResult {
diff --git a/streampark-console/streampark-console-newui/src/components/Description/index.ts b/streampark-console/streampark-console-newui/src/components/Description/index.ts
index 58277d063..7f7007970 100644
--- a/streampark-console/streampark-console-newui/src/components/Description/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Description/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import description from './src/Description.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Description/src/Description.vue b/streampark-console/streampark-console-newui/src/components/Description/src/Description.vue
index 1238acc2c..1c04f7f10 100644
--- a/streampark-console/streampark-console-newui/src/components/Description/src/Description.vue
+++ b/streampark-console/streampark-console-newui/src/components/Description/src/Description.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="tsx">
   import type { DescriptionProps, DescInstance, DescItem } from './typing';
   import type { DescriptionsProps } from 'ant-design-vue/es/descriptions/index';
diff --git a/streampark-console/streampark-console-newui/src/components/Description/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Description/src/typing.ts
index ee96084b3..f082d3c15 100644
--- a/streampark-console/streampark-console-newui/src/components/Description/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Description/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { VNode, CSSProperties } from 'vue';
 import type { CollapseContainerOptions } from '/@/components/Container/index';
 import type { DescriptionsProps } from 'ant-design-vue/es/descriptions/index';
diff --git a/streampark-console/streampark-console-newui/src/components/Description/src/useDescription.ts b/streampark-console/streampark-console-newui/src/components/Description/src/useDescription.ts
index d1037d065..b4c89835f 100644
--- a/streampark-console/streampark-console-newui/src/components/Description/src/useDescription.ts
+++ b/streampark-console/streampark-console-newui/src/components/Description/src/useDescription.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { DescriptionProps, DescInstance, UseDescReturnType } from './typing';
 import { ref, getCurrentInstance, unref } from 'vue';
 import { isProdMode } from '/@/utils/env';
diff --git a/streampark-console/streampark-console-newui/src/components/Drawer/index.ts b/streampark-console/streampark-console-newui/src/components/Drawer/index.ts
index 820ade569..fe18b269b 100644
--- a/streampark-console/streampark-console-newui/src/components/Drawer/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Drawer/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import basicDrawer from './src/BasicDrawer.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Drawer/src/BasicDrawer.vue b/streampark-console/streampark-console-newui/src/components/Drawer/src/BasicDrawer.vue
index 857b69bda..3b89599c4 100644
--- a/streampark-console/streampark-console-newui/src/components/Drawer/src/BasicDrawer.vue
+++ b/streampark-console/streampark-console-newui/src/components/Drawer/src/BasicDrawer.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Drawer :class="prefixCls" @close="onClose" v-bind="getBindValues">
     <template #title v-if="!$slots.title">
diff --git a/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerFooter.vue b/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerFooter.vue
index 7a3992fa2..b50d910ed 100644
--- a/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerFooter.vue
+++ b/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerFooter.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="prefixCls" :style="getStyle" v-if="showFooter || $slots.footer">
     <template v-if="!$slots.footer">
diff --git a/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerHeader.vue b/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerHeader.vue
index 823212873..f7fbbb628 100644
--- a/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerHeader.vue
+++ b/streampark-console/streampark-console-newui/src/components/Drawer/src/components/DrawerHeader.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <BasicTitle v-if="!isDetail" :class="prefixCls">
     <slot name="title"></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/Drawer/src/props.ts b/streampark-console/streampark-console-newui/src/components/Drawer/src/props.ts
index 0a7ca8cdf..499acbf93 100644
--- a/streampark-console/streampark-console-newui/src/components/Drawer/src/props.ts
+++ b/streampark-console/streampark-console-newui/src/components/Drawer/src/props.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { PropType } from 'vue';
 
 import { useI18n } from '/@/hooks/web/useI18n';
diff --git a/streampark-console/streampark-console-newui/src/components/Drawer/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Drawer/src/typing.ts
index 51724a126..2edaf07f8 100644
--- a/streampark-console/streampark-console-newui/src/components/Drawer/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Drawer/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ButtonProps } from 'ant-design-vue/lib/button/buttonTypes';
 import type { CSSProperties, VNodeChild, ComputedRef } from 'vue';
 import type { ScrollContainerOptions } from '/@/components/Container/index';
diff --git a/streampark-console/streampark-console-newui/src/components/Drawer/src/useDrawer.ts b/streampark-console/streampark-console-newui/src/components/Drawer/src/useDrawer.ts
index bcb9e7664..0cbc686a6 100644
--- a/streampark-console/streampark-console-newui/src/components/Drawer/src/useDrawer.ts
+++ b/streampark-console/streampark-console-newui/src/components/Drawer/src/useDrawer.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type {
   UseDrawerReturnType,
   DrawerInstance,
diff --git a/streampark-console/streampark-console-newui/src/components/Dropdown/index.ts b/streampark-console/streampark-console-newui/src/components/Dropdown/index.ts
index 80439e50e..6536e5800 100644
--- a/streampark-console/streampark-console-newui/src/components/Dropdown/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Dropdown/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import dropdown from './src/Dropdown.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Dropdown/src/Dropdown.vue b/streampark-console/streampark-console-newui/src/components/Dropdown/src/Dropdown.vue
index c503948b1..0384ffae6 100644
--- a/streampark-console/streampark-console-newui/src/components/Dropdown/src/Dropdown.vue
+++ b/streampark-console/streampark-console-newui/src/components/Dropdown/src/Dropdown.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <a-dropdown :trigger="trigger" v-bind="$attrs">
     <span>
diff --git a/streampark-console/streampark-console-newui/src/components/Dropdown/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Dropdown/src/typing.ts
index 29de8cba6..8d9df5df9 100644
--- a/streampark-console/streampark-console-newui/src/components/Dropdown/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Dropdown/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface DropMenu {
   onClick?: Fn;
   to?: string;
diff --git a/streampark-console/streampark-console-newui/src/components/Excel/index.ts b/streampark-console/streampark-console-newui/src/components/Excel/index.ts
index cece07c4d..16aa3cf0d 100644
--- a/streampark-console/streampark-console-newui/src/components/Excel/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Excel/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import impExcel from './src/ImportExcel.vue';
 import expExcelModal from './src/ExportExcelModal.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Excel/src/Export2Excel.ts b/streampark-console/streampark-console-newui/src/components/Excel/src/Export2Excel.ts
index 952ac45f1..1651a8c63 100644
--- a/streampark-console/streampark-console-newui/src/components/Excel/src/Export2Excel.ts
+++ b/streampark-console/streampark-console-newui/src/components/Excel/src/Export2Excel.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 * as xlsx from 'xlsx';
 import type { WorkBook } from 'xlsx';
 import type { JsonToSheet, AoAToSheet } from './typing';
diff --git a/streampark-console/streampark-console-newui/src/components/Excel/src/ExportExcelModal.vue b/streampark-console/streampark-console-newui/src/components/Excel/src/ExportExcelModal.vue
index efa32926d..1d8554ba3 100644
--- a/streampark-console/streampark-console-newui/src/components/Excel/src/ExportExcelModal.vue
+++ b/streampark-console/streampark-console-newui/src/components/Excel/src/ExportExcelModal.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <BasicModal
     v-bind="$attrs"
diff --git a/streampark-console/streampark-console-newui/src/components/Excel/src/ImportExcel.vue b/streampark-console/streampark-console-newui/src/components/Excel/src/ImportExcel.vue
index f6f742525..6420ba587 100644
--- a/streampark-console/streampark-console-newui/src/components/Excel/src/ImportExcel.vue
+++ b/streampark-console/streampark-console-newui/src/components/Excel/src/ImportExcel.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div>
     <input
diff --git a/streampark-console/streampark-console-newui/src/components/Excel/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Excel/src/typing.ts
index e55e549ea..23a7ed6fd 100644
--- a/streampark-console/streampark-console-newui/src/components/Excel/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Excel/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { JSON2SheetOpts, WritingOptions, BookType } from 'xlsx';
 
 export interface ExcelData<T = any> {
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/index.ts b/streampark-console/streampark-console-newui/src/components/FlowChart/index.ts
index edbeb5591..81d5e5e32 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import flowChart from './src/FlowChart.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChart.vue b/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChart.vue
index 419b0fea7..a4201de4c 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChart.vue
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChart.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div class="h-full" :class="prefixCls">
     <FlowChartToolbar :prefixCls="prefixCls" v-if="toolbar" @view-data="handlePreview" />
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChartToolbar.vue b/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChartToolbar.vue
index c88af5ca4..1eed6e376 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChartToolbar.vue
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/src/FlowChartToolbar.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="`${prefixCls}-toolbar`" class="flex items-center px-2 py-1">
     <template v-for="item in toolbarItemList" :key="item.type">
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/src/adpterForTurbo.ts b/streampark-console/streampark-console-newui/src/components/FlowChart/src/adpterForTurbo.ts
index b68b276c3..548da317f 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/src/adpterForTurbo.ts
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/src/adpterForTurbo.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 const TurboType = {
   SEQUENCE_FLOW: 1,
   START_EVENT: 2,
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/src/config.ts b/streampark-console/streampark-console-newui/src/components/FlowChart/src/config.ts
index 4f10d2ca8..90f0b988d 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/src/config.ts
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/src/config.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export const nodeList = [
   {
     text: '开始',
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/src/enum.ts b/streampark-console/streampark-console-newui/src/components/FlowChart/src/enum.ts
index 8ea134ca5..07db22505 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/src/enum.ts
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/src/enum.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export enum ToolbarTypeEnum {
   ZOOM_IN = 'zoomIn',
   ZOOM_OUT = 'zoomOut',
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/src/types.ts b/streampark-console/streampark-console-newui/src/components/FlowChart/src/types.ts
index 94992ba1a..3900f847a 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/src/types.ts
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/src/types.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { NodeConfig } from '@logicflow/core';
 import { ToolbarTypeEnum } from './enum';
 
diff --git a/streampark-console/streampark-console-newui/src/components/FlowChart/src/useFlowContext.ts b/streampark-console/streampark-console-newui/src/components/FlowChart/src/useFlowContext.ts
index 7d15f3b34..095ffc943 100644
--- a/streampark-console/streampark-console-newui/src/components/FlowChart/src/useFlowContext.ts
+++ b/streampark-console/streampark-console-newui/src/components/FlowChart/src/useFlowContext.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type LogicFlow from '@logicflow/core';
 
 import { provide, inject } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/index.ts b/streampark-console/streampark-console-newui/src/components/Form/index.ts
index 3144dae83..a8863581a 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 BasicForm from './src/BasicForm.vue';
 
 export * from './src/types/form';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/BasicForm.vue b/streampark-console/streampark-console-newui/src/components/Form/src/BasicForm.vue
index d6416ee68..71ded38a5 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/BasicForm.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/BasicForm.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Form
     v-bind="getBindValue"
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/componentMap.ts b/streampark-console/streampark-console-newui/src/components/Form/src/componentMap.ts
index 804e67703..1110bf716 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/componentMap.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/componentMap.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Component } from 'vue';
 import type { ComponentType } from './types/index';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiCascader.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiCascader.vue
index 0d8cf6354..5b38e5b5e 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiCascader.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiCascader.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <a-cascader
     v-model:value="state"
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiRadioGroup.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiRadioGroup.vue
index 712cfba81..ac9613d59 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiRadioGroup.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiRadioGroup.vue
@@ -1,5 +1,18 @@
 <!--
- * @Description:It is troublesome to implement radio button group in the form. So it is extracted independently as a separate component
+  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
+
+      https://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.
 -->
 <template>
   <RadioGroup v-bind="attrs" v-model:value="state" button-style="solid" @change="handleChange">
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiSelect.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiSelect.vue
index 6155aab11..ab5729aae 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiSelect.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiSelect.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Select
     @dropdown-visible-change="handleFetch"
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTree.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTree.vue
index 0ec6917dd..09e1155df 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTree.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTree.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <a-tree v-bind="getAttrs" @change="handleChange">
     <template #[item]="data" v-for="item in Object.keys($slots)">
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTreeSelect.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTreeSelect.vue
index 3f073d34b..4ceae953e 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTreeSelect.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/ApiTreeSelect.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <a-tree-select v-bind="getAttrs" @change="handleChange">
     <template #[item]="data" v-for="item in Object.keys($slots)">
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/FormAction.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/FormAction.vue
index 8dec49fe5..5ea539efd 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/FormAction.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/FormAction.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <a-col v-bind="actionColOpt" v-if="showActionButtonGroup">
     <div style="width: 100%" :style="{ textAlign: actionColOpt.style.textAlign }">
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/FormItem.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/FormItem.vue
index 157e0db1d..526806471 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/FormItem.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/FormItem.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="tsx">
   import type { PropType, Ref } from 'vue';
   import { computed, defineComponent, toRefs, unref } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/components/RadioButtonGroup.vue b/streampark-console/streampark-console-newui/src/components/Form/src/components/RadioButtonGroup.vue
index c2c7b220b..f39d7ba34 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/components/RadioButtonGroup.vue
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/components/RadioButtonGroup.vue
@@ -1,5 +1,18 @@
 <!--
- * @Description:It is troublesome to implement radio button group in the form. So it is extracted independently as a separate component
+  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
+
+      https://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.
 -->
 <template>
   <RadioGroup v-bind="attrs" v-model:value="state" button-style="solid">
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/helper.ts b/streampark-console/streampark-console-newui/src/components/Form/src/helper.ts
index d0727f38a..272e65325 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/helper.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/helper.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ValidationRule } from 'ant-design-vue/lib/form/Form';
 import type { ComponentType } from './types/index';
 import { useI18n } from '/@/hooks/web/useI18n';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAdvanced.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAdvanced.ts
index 5c9603fb2..ca9778b88 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAdvanced.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAdvanced.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ColEx } from '../types';
 import type { AdvanceState } from '../types/hooks';
 import type { ComputedRef, Ref } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAutoFocus.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAutoFocus.ts
index e24dd6bbd..229e03daa 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAutoFocus.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useAutoFocus.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ComputedRef, Ref } from 'vue';
 import type { FormSchema, FormActionType, FormProps } from '../types/form';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useComponentRegister.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useComponentRegister.ts
index 218aaa9b2..7e115f5ef 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useComponentRegister.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useComponentRegister.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ComponentType } from '../types/index';
 import { tryOnUnmounted } from '@vueuse/core';
 import { add, del } from '../componentMap';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useForm.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useForm.ts
index d026d690d..dce3694ed 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useForm.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useForm.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { FormProps, FormActionType, UseFormReturnType, FormSchema } from '../types/form';
 import type { NamePath } from 'ant-design-vue/lib/form/interface';
 import type { DynamicProps } from '/#/utils';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormContext.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormContext.ts
index 01dfadd76..6cbf0eb66 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormContext.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormContext.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { InjectionKey } from 'vue';
 import { createContext, useContext } from '/@/hooks/core/useContext';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormEvents.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormEvents.ts
index de90db181..95ea8d437 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormEvents.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormEvents.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ComputedRef, Ref } from 'vue';
 import type { FormProps, FormSchema, FormActionType } from '../types/form';
 import type { NamePath } from 'ant-design-vue/lib/form/interface';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormValues.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormValues.ts
index 34dd9ddf7..418db059e 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormValues.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useFormValues.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { isArray, isFunction, isObject, isString, isNullOrUnDef } from '/@/utils/is';
 import { dateUtil } from '/@/utils/dateUtil';
 import { unref } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useLabelWidth.ts b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useLabelWidth.ts
index 3befa1c2a..1418240ea 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useLabelWidth.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/hooks/useLabelWidth.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Ref } from 'vue';
 import { computed, unref } from 'vue';
 import type { FormProps, FormSchema } from '../types/form';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/props.ts b/streampark-console/streampark-console-newui/src/components/Form/src/props.ts
index bfdaee7ef..caba96385 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/props.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/props.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { FieldMapToTime, FormSchema } from './types/form';
 import type { CSSProperties, PropType } from 'vue';
 import type { ColEx } from './types';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/types/form.ts b/streampark-console/streampark-console-newui/src/components/Form/src/types/form.ts
index 2c772286a..a74f7e98f 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/types/form.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/types/form.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { NamePath, RuleObject } from 'ant-design-vue/lib/form/interface';
 import type { VNode } from 'vue';
 import type { ButtonProps as AntdButtonProps } from '/@/components/Button';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/types/formItem.ts b/streampark-console/streampark-console-newui/src/components/Form/src/types/formItem.ts
index 77b238ac8..bc25c382e 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/types/formItem.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/types/formItem.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { NamePath } from 'ant-design-vue/lib/form/interface';
 import type { ColProps } from 'ant-design-vue/lib/grid/Col';
 import type { HTMLAttributes, VNodeChild } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/types/hooks.ts b/streampark-console/streampark-console-newui/src/components/Form/src/types/hooks.ts
index 0308e73b3..ea9db04e5 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/types/hooks.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/types/hooks.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface AdvanceState {
   isAdvanced: boolean;
   hideAdvanceBtn: boolean;
diff --git a/streampark-console/streampark-console-newui/src/components/Form/src/types/index.ts b/streampark-console/streampark-console-newui/src/components/Form/src/types/index.ts
index 78916022b..227603665 100644
--- a/streampark-console/streampark-console-newui/src/components/Form/src/types/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Form/src/types/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 type ColSpanType = number | string;
 export interface ColEx {
   style?: any;
diff --git a/streampark-console/streampark-console-newui/src/components/Icon/data/icons.data.ts b/streampark-console/streampark-console-newui/src/components/Icon/data/icons.data.ts
new file mode 100644
index 000000000..c6ea3875b
--- /dev/null
+++ b/streampark-console/streampark-console-newui/src/components/Icon/data/icons.data.ts
@@ -0,0 +1,809 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
+export default {
+  prefix: 'ant-design',
+  icons: [
+    'account-book-filled',
+    'account-book-outlined',
+    'account-book-twotone',
+    'aim-outlined',
+    'alert-filled',
+    'alert-outlined',
+    'alert-twotone',
+    'alibaba-outlined',
+    'align-center-outlined',
+    'align-left-outlined',
+    'align-right-outlined',
+    'alipay-circle-filled',
+    'alipay-circle-outlined',
+    'alipay-outlined',
+    'alipay-square-filled',
+    'aliwangwang-filled',
+    'aliwangwang-outlined',
+    'aliyun-outlined',
+    'amazon-circle-filled',
+    'amazon-outlined',
+    'amazon-square-filled',
+    'android-filled',
+    'android-outlined',
+    'ant-cloud-outlined',
+    'ant-design-outlined',
+    'apartment-outlined',
+    'api-filled',
+    'api-outlined',
+    'api-twotone',
+    'apple-filled',
+    'apple-outlined',
+    'appstore-add-outlined',
+    'appstore-filled',
+    'appstore-outlined',
+    'appstore-twotone',
+    'area-chart-outlined',
+    'arrow-down-outlined',
+    'arrow-left-outlined',
+    'arrow-right-outlined',
+    'arrow-up-outlined',
+    'arrows-alt-outlined',
+    'audio-filled',
+    'audio-muted-outlined',
+    'audio-outlined',
+    'audio-twotone',
+    'audit-outlined',
+    'backward-filled',
+    'backward-outlined',
+    'bank-filled',
+    'bank-outlined',
+    'bank-twotone',
+    'bar-chart-outlined',
+    'barcode-outlined',
+    'bars-outlined',
+    'behance-circle-filled',
+    'behance-outlined',
+    'behance-square-filled',
+    'behance-square-outlined',
+    'bell-filled',
+    'bell-outlined',
+    'bell-twotone',
+    'bg-colors-outlined',
+    'block-outlined',
+    'bold-outlined',
+    'book-filled',
+    'book-outlined',
+    'book-twotone',
+    'border-bottom-outlined',
+    'border-horizontal-outlined',
+    'border-inner-outlined',
+    'border-left-outlined',
+    'border-outer-outlined',
+    'border-outlined',
+    'border-right-outlined',
+    'border-top-outlined',
+    'border-verticle-outlined',
+    'borderless-table-outlined',
+    'box-plot-filled',
+    'box-plot-outlined',
+    'box-plot-twotone',
+    'branches-outlined',
+    'bug-filled',
+    'bug-outlined',
+    'bug-twotone',
+    'build-filled',
+    'build-outlined',
+    'build-twotone',
+    'bulb-filled',
+    'bulb-outlined',
+    'bulb-twotone',
+    'calculator-filled',
+    'calculator-outlined',
+    'calculator-twotone',
+    'calendar-filled',
+    'calendar-outlined',
+    'calendar-twotone',
+    'camera-filled',
+    'camera-outlined',
+    'camera-twotone',
+    'car-filled',
+    'car-outlined',
+    'car-twotone',
+    'caret-down-filled',
+    'caret-down-outlined',
+    'caret-left-filled',
+    'caret-left-outlined',
+    'caret-right-filled',
+    'caret-right-outlined',
+    'caret-up-filled',
+    'caret-up-outlined',
+    'carry-out-filled',
+    'carry-out-outlined',
+    'carry-out-twotone',
+    'check-circle-filled',
+    'check-circle-outlined',
+    'check-circle-twotone',
+    'check-outlined',
+    'check-square-filled',
+    'check-square-outlined',
+    'check-square-twotone',
+    'chrome-filled',
+    'chrome-outlined',
+    'ci-circle-filled',
+    'ci-circle-outlined',
+    'ci-circle-twotone',
+    'ci-outlined',
+    'ci-twotone',
+    'clear-outlined',
+    'clock-circle-filled',
+    'clock-circle-outlined',
+    'clock-circle-twotone',
+    'close-circle-filled',
+    'close-circle-outlined',
+    'close-circle-twotone',
+    'close-outlined',
+    'close-square-filled',
+    'close-square-outlined',
+    'close-square-twotone',
+    'cloud-download-outlined',
+    'cloud-filled',
+    'cloud-outlined',
+    'cloud-server-outlined',
+    'cloud-sync-outlined',
+    'cloud-twotone',
+    'cloud-upload-outlined',
+    'cluster-outlined',
+    'code-filled',
+    'code-outlined',
+    'code-sandbox-circle-filled',
+    'code-sandbox-outlined',
+    'code-sandbox-square-filled',
+    'code-twotone',
+    'codepen-circle-filled',
+    'codepen-circle-outlined',
+    'codepen-outlined',
+    'codepen-square-filled',
+    'coffee-outlined',
+    'column-height-outlined',
+    'column-width-outlined',
+    'comment-outlined',
+    'compass-filled',
+    'compass-outlined',
+    'compass-twotone',
+    'compress-outlined',
+    'console-sql-outlined',
+    'contacts-filled',
+    'contacts-outlined',
+    'contacts-twotone',
+    'container-filled',
+    'container-outlined',
+    'container-twotone',
+    'control-filled',
+    'control-outlined',
+    'control-twotone',
+    'copy-filled',
+    'copy-outlined',
+    'copy-twotone',
+    'copyright-circle-filled',
+    'copyright-circle-outlined',
+    'copyright-circle-twotone',
+    'copyright-outlined',
+    'copyright-twotone',
+    'credit-card-filled',
+    'credit-card-outlined',
+    'credit-card-twotone',
+    'crown-filled',
+    'crown-outlined',
+    'crown-twotone',
+    'customer-service-filled',
+    'customer-service-outlined',
+    'customer-service-twotone',
+    'dash-outlined',
+    'dashboard-filled',
+    'dashboard-outlined',
+    'dashboard-twotone',
+    'database-filled',
+    'database-outlined',
+    'database-twotone',
+    'delete-column-outlined',
+    'delete-filled',
+    'delete-outlined',
+    'delete-row-outlined',
+    'delete-twotone',
+    'delivered-procedure-outlined',
+    'deployment-unit-outlined',
+    'desktop-outlined',
+    'diff-filled',
+    'diff-outlined',
+    'diff-twotone',
+    'dingding-outlined',
+    'dingtalk-circle-filled',
+    'dingtalk-outlined',
+    'dingtalk-square-filled',
+    'disconnect-outlined',
+    'dislike-filled',
+    'dislike-outlined',
+    'dislike-twotone',
+    'dollar-circle-filled',
+    'dollar-circle-outlined',
+    'dollar-circle-twotone',
+    'dollar-outlined',
+    'dollar-twotone',
+    'dot-chart-outlined',
+    'double-left-outlined',
+    'double-right-outlined',
+    'down-circle-filled',
+    'down-circle-outlined',
+    'down-circle-twotone',
+    'down-outlined',
+    'down-square-filled',
+    'down-square-outlined',
+    'down-square-twotone',
+    'download-outlined',
+    'drag-outlined',
+    'dribbble-circle-filled',
+    'dribbble-outlined',
+    'dribbble-square-filled',
+    'dribbble-square-outlined',
+    'dropbox-circle-filled',
+    'dropbox-outlined',
+    'dropbox-square-filled',
+    'edit-filled',
+    'edit-outlined',
+    'edit-twotone',
+    'ellipsis-outlined',
+    'enter-outlined',
+    'environment-filled',
+    'environment-outlined',
+    'environment-twotone',
+    'euro-circle-filled',
+    'euro-circle-outlined',
+    'euro-circle-twotone',
+    'euro-outlined',
+    'euro-twotone',
+    'exception-outlined',
+    'exclamation-circle-filled',
+    'exclamation-circle-outlined',
+    'exclamation-circle-twotone',
+    'exclamation-outlined',
+    'expand-alt-outlined',
+    'expand-outlined',
+    'experiment-filled',
+    'experiment-outlined',
+    'experiment-twotone',
+    'export-outlined',
+    'eye-filled',
+    'eye-invisible-filled',
+    'eye-invisible-outlined',
+    'eye-invisible-twotone',
+    'eye-outlined',
+    'eye-twotone',
+    'facebook-filled',
+    'facebook-outlined',
+    'fall-outlined',
+    'fast-backward-filled',
+    'fast-backward-outlined',
+    'fast-forward-filled',
+    'fast-forward-outlined',
+    'field-binary-outlined',
+    'field-number-outlined',
+    'field-string-outlined',
+    'field-time-outlined',
+    'file-add-filled',
+    'file-add-outlined',
+    'file-add-twotone',
+    'file-done-outlined',
+    'file-excel-filled',
+    'file-excel-outlined',
+    'file-excel-twotone',
+    'file-exclamation-filled',
+    'file-exclamation-outlined',
+    'file-exclamation-twotone',
+    'file-filled',
+    'file-gif-outlined',
+    'file-image-filled',
+    'file-image-outlined',
+    'file-image-twotone',
+    'file-jpg-outlined',
+    'file-markdown-filled',
+    'file-markdown-outlined',
+    'file-markdown-twotone',
+    'file-outlined',
+    'file-pdf-filled',
+    'file-pdf-outlined',
+    'file-pdf-twotone',
+    'file-ppt-filled',
+    'file-ppt-outlined',
+    'file-ppt-twotone',
+    'file-protect-outlined',
+    'file-search-outlined',
+    'file-sync-outlined',
+    'file-text-filled',
+    'file-text-outlined',
+    'file-text-twotone',
+    'file-twotone',
+    'file-unknown-filled',
+    'file-unknown-outlined',
+    'file-unknown-twotone',
+    'file-word-filled',
+    'file-word-outlined',
+    'file-word-twotone',
+    'file-zip-filled',
+    'file-zip-outlined',
+    'file-zip-twotone',
+    'filter-filled',
+    'filter-outlined',
+    'filter-twotone',
+    'fire-filled',
+    'fire-outlined',
+    'fire-twotone',
+    'flag-filled',
+    'flag-outlined',
+    'flag-twotone',
+    'folder-add-filled',
+    'folder-add-outlined',
+    'folder-add-twotone',
+    'folder-filled',
+    'folder-open-filled',
+    'folder-open-outlined',
+    'folder-open-twotone',
+    'folder-outlined',
+    'folder-twotone',
+    'folder-view-outlined',
+    'font-colors-outlined',
+    'font-size-outlined',
+    'fork-outlined',
+    'form-outlined',
+    'format-painter-filled',
+    'format-painter-outlined',
+    'forward-filled',
+    'forward-outlined',
+    'frown-filled',
+    'frown-outlined',
+    'frown-twotone',
+    'fullscreen-exit-outlined',
+    'fullscreen-outlined',
+    'function-outlined',
+    'fund-filled',
+    'fund-outlined',
+    'fund-projection-screen-outlined',
+    'fund-twotone',
+    'fund-view-outlined',
+    'funnel-plot-filled',
+    'funnel-plot-outlined',
+    'funnel-plot-twotone',
+    'gateway-outlined',
+    'gif-outlined',
+    'gift-filled',
+    'gift-outlined',
+    'gift-twotone',
+    'github-filled',
+    'github-outlined',
+    'gitlab-filled',
+    'gitlab-outlined',
+    'global-outlined',
+    'gold-filled',
+    'gold-outlined',
+    'gold-twotone',
+    'golden-filled',
+    'google-circle-filled',
+    'google-outlined',
+    'google-plus-circle-filled',
+    'google-plus-outlined',
+    'google-plus-square-filled',
+    'google-square-filled',
+    'group-outlined',
+    'hdd-filled',
+    'hdd-outlined',
+    'hdd-twotone',
+    'heart-filled',
+    'heart-outlined',
+    'heart-twotone',
+    'heat-map-outlined',
+    'highlight-filled',
+    'highlight-outlined',
+    'highlight-twotone',
+    'history-outlined',
+    'home-filled',
+    'home-outlined',
+    'home-twotone',
+    'hourglass-filled',
+    'hourglass-outlined',
+    'hourglass-twotone',
+    'html5-filled',
+    'html5-outlined',
+    'html5-twotone',
+    'idcard-filled',
+    'idcard-outlined',
+    'idcard-twotone',
+    'ie-circle-filled',
+    'ie-outlined',
+    'ie-square-filled',
+    'import-outlined',
+    'inbox-outlined',
+    'info-circle-filled',
+    'info-circle-outlined',
+    'info-circle-twotone',
+    'info-outlined',
+    'insert-row-above-outlined',
+    'insert-row-below-outlined',
+    'insert-row-left-outlined',
+    'insert-row-right-outlined',
+    'instagram-filled',
+    'instagram-outlined',
+    'insurance-filled',
+    'insurance-outlined',
+    'insurance-twotone',
+    'interaction-filled',
+    'interaction-outlined',
+    'interaction-twotone',
+    'issues-close-outlined',
+    'italic-outlined',
+    'key-outlined',
+    'laptop-outlined',
+    'layout-filled',
+    'layout-outlined',
+    'layout-twotone',
+    'left-circle-filled',
+    'left-circle-outlined',
+    'left-circle-twotone',
+    'left-outlined',
+    'left-square-filled',
+    'left-square-outlined',
+    'left-square-twotone',
+    'like-filled',
+    'like-outlined',
+    'like-twotone',
+    'line-chart-outlined',
+    'line-height-outlined',
+    'line-outlined',
+    'link-outlined',
+    'linkedin-filled',
+    'linkedin-outlined',
+    'loading-3-quarters-outlined',
+    'loading-outlined',
+    'lock-filled',
+    'lock-outlined',
+    'lock-twotone',
+    'login-outlined',
+    'logout-outlined',
+    'mac-command-filled',
+    'mac-command-outlined',
+    'mail-filled',
+    'mail-outlined',
+    'mail-twotone',
+    'man-outlined',
+    'medicine-box-filled',
+    'medicine-box-outlined',
+    'medicine-box-twotone',
+    'medium-circle-filled',
+    'medium-outlined',
+    'medium-square-filled',
+    'medium-workmark-outlined',
+    'meh-filled',
+    'meh-outlined',
+    'meh-twotone',
+    'menu-fold-outlined',
+    'menu-outlined',
+    'menu-unfold-outlined',
+    'merge-cells-outlined',
+    'message-filled',
+    'message-outlined',
+    'message-twotone',
+    'minus-circle-filled',
+    'minus-circle-outlined',
+    'minus-circle-twotone',
+    'minus-outlined',
+    'minus-square-filled',
+    'minus-square-outlined',
+    'minus-square-twotone',
+    'mobile-filled',
+    'mobile-outlined',
+    'mobile-twotone',
+    'money-collect-filled',
+    'money-collect-outlined',
+    'money-collect-twotone',
+    'monitor-outlined',
+    'more-outlined',
+    'node-collapse-outlined',
+    'node-expand-outlined',
+    'node-index-outlined',
+    'notification-filled',
+    'notification-outlined',
+    'notification-twotone',
+    'number-outlined',
+    'one-to-one-outlined',
+    'ordered-list-outlined',
+    'paper-clip-outlined',
+    'partition-outlined',
+    'pause-circle-filled',
+    'pause-circle-outlined',
+    'pause-circle-twotone',
+    'pause-outlined',
+    'pay-circle-filled',
+    'pay-circle-outlined',
+    'percentage-outlined',
+    'phone-filled',
+    'phone-outlined',
+    'phone-twotone',
+    'pic-center-outlined',
+    'pic-left-outlined',
+    'pic-right-outlined',
+    'picture-filled',
+    'picture-outlined',
+    'picture-twotone',
+    'pie-chart-filled',
+    'pie-chart-outlined',
+    'pie-chart-twotone',
+    'play-circle-filled',
+    'play-circle-outlined',
+    'play-circle-twotone',
+    'play-square-filled',
+    'play-square-outlined',
+    'play-square-twotone',
+    'plus-circle-filled',
+    'plus-circle-outlined',
+    'plus-circle-twotone',
+    'plus-outlined',
+    'plus-square-filled',
+    'plus-square-outlined',
+    'plus-square-twotone',
+    'pound-circle-filled',
+    'pound-circle-outlined',
+    'pound-circle-twotone',
+    'pound-outlined',
+    'poweroff-outlined',
+    'printer-filled',
+    'printer-outlined',
+    'printer-twotone',
+    'profile-filled',
+    'profile-outlined',
+    'profile-twotone',
+    'project-filled',
+    'project-outlined',
+    'project-twotone',
+    'property-safety-filled',
+    'property-safety-outlined',
+    'property-safety-twotone',
+    'pull-request-outlined',
+    'pushpin-filled',
+    'pushpin-outlined',
+    'pushpin-twotone',
+    'qq-circle-filled',
+    'qq-outlined',
+    'qq-square-filled',
+    'qrcode-outlined',
+    'question-circle-filled',
+    'question-circle-outlined',
+    'question-circle-twotone',
+    'question-outlined',
+    'radar-chart-outlined',
+    'radius-bottomleft-outlined',
+    'radius-bottomright-outlined',
+    'radius-setting-outlined',
+    'radius-upleft-outlined',
+    'radius-upright-outlined',
+    'read-filled',
+    'read-outlined',
+    'reconciliation-filled',
+    'reconciliation-outlined',
+    'reconciliation-twotone',
+    'red-envelope-filled',
+    'red-envelope-outlined',
+    'red-envelope-twotone',
+    'reddit-circle-filled',
+    'reddit-outlined',
+    'reddit-square-filled',
+    'redo-outlined',
+    'reload-outlined',
+    'rest-filled',
+    'rest-outlined',
+    'rest-twotone',
+    'retweet-outlined',
+    'right-circle-filled',
+    'right-circle-outlined',
+    'right-circle-twotone',
+    'right-outlined',
+    'right-square-filled',
+    'right-square-outlined',
+    'right-square-twotone',
+    'rise-outlined',
+    'robot-filled',
+    'robot-outlined',
+    'rocket-filled',
+    'rocket-outlined',
+    'rocket-twotone',
+    'rollback-outlined',
+    'rotate-left-outlined',
+    'rotate-right-outlined',
+    'safety-certificate-filled',
+    'safety-certificate-outlined',
+    'safety-certificate-twotone',
+    'safety-outlined',
+    'save-filled',
+    'save-outlined',
+    'save-twotone',
+    'scan-outlined',
+    'schedule-filled',
+    'schedule-outlined',
+    'schedule-twotone',
+    'scissor-outlined',
+    'search-outlined',
+    'security-scan-filled',
+    'security-scan-outlined',
+    'security-scan-twotone',
+    'select-outlined',
+    'send-outlined',
+    'setting-filled',
+    'setting-outlined',
+    'setting-twotone',
+    'shake-outlined',
+    'share-alt-outlined',
+    'shop-filled',
+    'shop-outlined',
+    'shop-twotone',
+    'shopping-cart-outlined',
+    'shopping-filled',
+    'shopping-outlined',
+    'shopping-twotone',
+    'shrink-outlined',
+    'signal-filled',
+    'sisternode-outlined',
+    'sketch-circle-filled',
+    'sketch-outlined',
+    'sketch-square-filled',
+    'skin-filled',
+    'skin-outlined',
+    'skin-twotone',
+    'skype-filled',
+    'skype-outlined',
+    'slack-circle-filled',
+    'slack-outlined',
+    'slack-square-filled',
+    'slack-square-outlined',
+    'sliders-filled',
+    'sliders-outlined',
+    'sliders-twotone',
+    'small-dash-outlined',
+    'smile-filled',
+    'smile-outlined',
+    'smile-twotone',
+    'snippets-filled',
+    'snippets-outlined',
+    'snippets-twotone',
+    'solution-outlined',
+    'sort-ascending-outlined',
+    'sort-descending-outlined',
+    'sound-filled',
+    'sound-outlined',
+    'sound-twotone',
+    'split-cells-outlined',
+    'star-filled',
+    'star-outlined',
+    'star-twotone',
+    'step-backward-filled',
+    'step-backward-outlined',
+    'step-forward-filled',
+    'step-forward-outlined',
+    'stock-outlined',
+    'stop-filled',
+    'stop-outlined',
+    'stop-twotone',
+    'strikethrough-outlined',
+    'subnode-outlined',
+    'swap-left-outlined',
+    'swap-outlined',
+    'swap-right-outlined',
+    'switcher-filled',
+    'switcher-outlined',
+    'switcher-twotone',
+    'sync-outlined',
+    'table-outlined',
+    'tablet-filled',
+    'tablet-outlined',
+    'tablet-twotone',
+    'tag-filled',
+    'tag-outlined',
+    'tag-twotone',
+    'tags-filled',
+    'tags-outlined',
+    'tags-twotone',
+    'taobao-circle-filled',
+    'taobao-circle-outlined',
+    'taobao-outlined',
+    'taobao-square-filled',
+    'team-outlined',
+    'thunderbolt-filled',
+    'thunderbolt-outlined',
+    'thunderbolt-twotone',
+    'to-top-outlined',
+    'tool-filled',
+    'tool-outlined',
+    'tool-twotone',
+    'trademark-circle-filled',
+    'trademark-circle-outlined',
+    'trademark-circle-twotone',
+    'trademark-outlined',
+    'transaction-outlined',
+    'translation-outlined',
+    'trophy-filled',
+    'trophy-outlined',
+    'trophy-twotone',
+    'twitter-circle-filled',
+    'twitter-outlined',
+    'twitter-square-filled',
+    'underline-outlined',
+    'undo-outlined',
+    'ungroup-outlined',
+    'unlock-filled',
+    'unlock-outlined',
+    'unlock-twotone',
+    'unordered-list-outlined',
+    'up-circle-filled',
+    'up-circle-outlined',
+    'up-circle-twotone',
+    'up-outlined',
+    'up-square-filled',
+    'up-square-outlined',
+    'up-square-twotone',
+    'upload-outlined',
+    'usb-filled',
+    'usb-outlined',
+    'usb-twotone',
+    'user-add-outlined',
+    'user-delete-outlined',
+    'user-outlined',
+    'user-switch-outlined',
+    'usergroup-add-outlined',
+    'usergroup-delete-outlined',
+    'verified-outlined',
+    'vertical-align-bottom-outlined',
+    'vertical-align-middle-outlined',
+    'vertical-align-top-outlined',
+    'vertical-left-outlined',
+    'vertical-right-outlined',
+    'video-camera-add-outlined',
+    'video-camera-filled',
+    'video-camera-outlined',
+    'video-camera-twotone',
+    'wallet-filled',
+    'wallet-outlined',
+    'wallet-twotone',
+    'warning-filled',
+    'warning-outlined',
+    'warning-twotone',
+    'wechat-filled',
+    'wechat-outlined',
+    'weibo-circle-filled',
+    'weibo-circle-outlined',
+    'weibo-outlined',
+    'weibo-square-filled',
+    'weibo-square-outlined',
+    'whats-app-outlined',
+    'wifi-outlined',
+    'windows-filled',
+    'windows-outlined',
+    'woman-outlined',
+    'yahoo-filled',
+    'yahoo-outlined',
+    'youtube-filled',
+    'youtube-outlined',
+    'yuque-filled',
+    'yuque-outlined',
+    'zhihu-circle-filled',
+    'zhihu-outlined',
+    'zhihu-square-filled',
+    'zoom-in-outlined',
+    'zoom-out-outlined',
+  ],
+};
diff --git a/streampark-console/streampark-console-newui/src/components/Icon/index.ts b/streampark-console/streampark-console-newui/src/components/Icon/index.ts
new file mode 100644
index 000000000..db8f52db7
--- /dev/null
+++ b/streampark-console/streampark-console-newui/src/components/Icon/index.ts
@@ -0,0 +1,23 @@
+/*
+ * 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
+ *
+ *    https://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 Icon from './src/Icon.vue';
+import SvgIcon from './src/SvgIcon.vue';
+import IconPicker from './src/IconPicker.vue';
+
+export { Icon, IconPicker, SvgIcon };
+
+export default Icon;
diff --git a/streampark-console/streampark-console-newui/src/components/Icon/src/Icon.vue b/streampark-console/streampark-console-newui/src/components/Icon/src/Icon.vue
new file mode 100644
index 000000000..50aaa2fa6
--- /dev/null
+++ b/streampark-console/streampark-console-newui/src/components/Icon/src/Icon.vue
@@ -0,0 +1,136 @@
+<!--
+  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
+
+      https://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.
+--><template>
+  <SvgIcon
+    :size="size"
+    :name="getSvgIcon"
+    v-if="isSvgIcon"
+    :class="[$attrs.class, 'anticon']"
+    :spin="spin"
+  />
+  <span
+    v-else
+    ref="elRef"
+    :class="[$attrs.class, 'app-iconify anticon', spin && 'app-iconify-spin']"
+    :style="getWrapStyle"
+  ></span>
+</template>
+<script lang="ts">
+  import type { PropType } from 'vue';
+  import {
+    defineComponent,
+    ref,
+    watch,
+    onMounted,
+    nextTick,
+    unref,
+    computed,
+    CSSProperties,
+  } from 'vue';
+  import SvgIcon from './SvgIcon.vue';
+  import Iconify from '@purge-icons/generated';
+  import { isString } from '/@/utils/is';
+  import { propTypes } from '/@/utils/propTypes';
+
+  const SVG_END_WITH_FLAG = '|svg';
+  export default defineComponent({
+    name: 'Icon',
+    components: { SvgIcon },
+    props: {
+      // icon name
+      icon: propTypes.string,
+      // icon color
+      color: propTypes.string,
+      // icon size
+      size: {
+        type: [String, Number] as PropType<string | number>,
+        default: 16,
+      },
+      spin: propTypes.bool.def(false),
+      prefix: propTypes.string.def(''),
+    },
+    setup(props) {
+      const elRef = ref<ElRef>(null);
+
+      const isSvgIcon = computed(() => props.icon?.endsWith(SVG_END_WITH_FLAG));
+      const getSvgIcon = computed(() => props.icon.replace(SVG_END_WITH_FLAG, ''));
+      const getIconRef = computed(() => `${props.prefix ? props.prefix + ':' : ''}${props.icon}`);
+
+      const update = async () => {
+        if (unref(isSvgIcon)) return;
+
+        const el = unref(elRef);
+        if (!el) return;
+
+        await nextTick();
+        const icon = unref(getIconRef);
+        if (!icon) return;
+
+        const svg = Iconify.renderSVG(icon, {});
+        if (svg) {
+          el.textContent = '';
+          el.appendChild(svg);
+        } else {
+          const span = document.createElement('span');
+          span.className = 'iconify';
+          span.dataset.icon = icon;
+          el.textContent = '';
+          el.appendChild(span);
+        }
+      };
+
+      const getWrapStyle = computed((): CSSProperties => {
+        const { size, color } = props;
+        let fs = size;
+        if (isString(size)) {
+          fs = parseInt(size, 10);
+        }
+
+        return {
+          fontSize: `${fs}px`,
+          color: color,
+          display: 'inline-flex',
+        };
+      });
+
+      watch(() => props.icon, update, { flush: 'post' });
+
+      onMounted(update);
+
+      return { elRef, getWrapStyle, isSvgIcon, getSvgIcon };
+    },
+  });
+</script>
+<style lang="less">
+  .app-iconify {
+    display: inline-block;
+    // vertical-align: middle;
+
+    &-spin {
+      svg {
+        animation: loadingCircle 1s infinite linear;
+      }
+    }
+  }
+
+  span.iconify {
+    display: block;
+    min-width: 1em;
+    min-height: 1em;
+    background-color: @iconify-bg-color;
+    border-radius: 100%;
+  }
+</style>
diff --git a/streampark-console/streampark-console-newui/src/components/Icon/src/IconPicker.vue b/streampark-console/streampark-console-newui/src/components/Icon/src/IconPicker.vue
new file mode 100644
index 000000000..8ed82488c
--- /dev/null
+++ b/streampark-console/streampark-console-newui/src/components/Icon/src/IconPicker.vue
@@ -0,0 +1,206 @@
+<!--
+  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
+
+      https://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.
+--><template>
+  <a-input
+    disabled
+    :style="{ width }"
+    :placeholder="t('component.icon.placeholder')"
+    :class="prefixCls"
+    v-model:value="currentSelect"
+  >
+    <template #addonAfter>
+      <a-popover
+        placement="bottomLeft"
+        trigger="click"
+        v-model="visible"
+        :overlayClassName="`${prefixCls}-popover`"
+      >
+        <template #title>
+          <div class="flex justify-between">
+            <a-input
+              :placeholder="t('component.icon.search')"
+              @change="debounceHandleSearchChange"
+              allowClear
+            />
+          </div>
+        </template>
+
+        <template #content>
+          <div v-if="getPaginationList.length">
+            <ScrollContainer class="border border-solid border-t-0">
+              <ul class="flex flex-wrap px-2">
+                <li
+                  v-for="icon in getPaginationList"
+                  :key="icon"
+                  :class="currentSelect === icon ? 'border border-primary' : ''"
+                  class="p-2 w-1/8 cursor-pointer mr-1 mt-1 flex justify-center items-center border border-solid hover:border-primary"
+                  @click="handleClick(icon)"
+                  :title="icon"
+                >
+                  <!-- <Icon :icon="icon" :prefix="prefix" /> -->
+                  <SvgIcon v-if="isSvgMode" :name="icon" />
+                  <Icon :icon="icon" v-else />
+                </li>
+              </ul>
+            </ScrollContainer>
+            <div class="flex py-2 items-center justify-center" v-if="getTotal >= pageSize">
+              <a-pagination
+                showLessItems
+                size="small"
+                :pageSize="pageSize"
+                :total="getTotal"
+                @change="handlePageChange"
+              />
+            </div>
+          </div>
+          <template v-else
+            ><div class="p-5"><a-empty /></div>
+          </template>
+        </template>
+
+        <span class="cursor-pointer px-2 py-1 flex items-center" v-if="isSvgMode && currentSelect">
+          <SvgIcon :name="currentSelect" />
+        </span>
+        <Icon :icon="currentSelect || 'ion:apps-outline'" class="cursor-pointer px-2 py-1" v-else />
+      </a-popover>
+    </template>
+  </a-input>
+</template>
+<script lang="ts" setup>
+  import { ref, watchEffect, watch, unref } from 'vue';
+  import { useDesign } from '/@/hooks/web/useDesign';
+  import { ScrollContainer } from '/@/components/Container';
+  import { Input, Popover, Pagination, Empty } from 'ant-design-vue';
+  import Icon from './Icon.vue';
+  import SvgIcon from './SvgIcon.vue';
+
+  import iconsData from '../data/icons.data';
+  import { propTypes } from '/@/utils/propTypes';
+  import { usePagination } from '/@/hooks/web/usePagination';
+  import { useDebounceFn } from '@vueuse/core';
+  import { useI18n } from '/@/hooks/web/useI18n';
+  import { useCopyToClipboard } from '/@/hooks/web/useCopyToClipboard';
+  import { useMessage } from '/@/hooks/web/useMessage';
+  import svgIcons from 'virtual:svg-icons-names';
+
+  // 没有使用别名引入,是因为WebStorm当前版本还不能正确识别,会报unused警告
+  const AInput = Input;
+  const APopover = Popover;
+  const APagination = Pagination;
+  const AEmpty = Empty;
+
+  function getIcons() {
+    const data = iconsData as any;
+    const prefix: string = data?.prefix ?? '';
+    let result: string[] = [];
+    if (prefix) {
+      result = (data?.icons ?? []).map((item) => `${prefix}:${item}`);
+    } else if (Array.isArray(iconsData)) {
+      result = iconsData as string[];
+    }
+    return result;
+  }
+
+  function getSvgIcons() {
+    return svgIcons.map((icon) => icon.replace('icon-', ''));
+  }
+
+  const props = defineProps({
+    value: propTypes.string,
+    width: propTypes.string.def('100%'),
+    pageSize: propTypes.number.def(140),
+    copy: propTypes.bool.def(false),
+    mode: propTypes.oneOf<('svg' | 'iconify')[]>(['svg', 'iconify']).def('iconify'),
+  });
+
+  const emit = defineEmits(['change', 'update:value']);
+
+  const isSvgMode = props.mode === 'svg';
+  const icons = isSvgMode ? getSvgIcons() : getIcons();
+
+  const currentSelect = ref('');
+  const visible = ref(false);
+  const currentList = ref(icons);
+
+  const { t } = useI18n();
+  const { prefixCls } = useDesign('icon-picker');
+
+  const debounceHandleSearchChange = useDebounceFn(handleSearchChange, 100);
+  const { clipboardRef, isSuccessRef } = useCopyToClipboard(props.value);
+  const { createMessage } = useMessage();
+
+  const { getPaginationList, getTotal, setCurrentPage } = usePagination(
+    currentList,
+    props.pageSize,
+  );
+
+  watchEffect(() => {
+    currentSelect.value = props.value;
+  });
+
+  watch(
+    () => currentSelect.value,
+    (v) => {
+      emit('update:value', v);
+      return emit('change', v);
+    },
+  );
+
+  function handlePageChange(page: number) {
+    setCurrentPage(page);
+  }
+
+  function handleClick(icon: string) {
+    currentSelect.value = icon;
+    if (props.copy) {
+      clipboardRef.value = icon;
+      if (unref(isSuccessRef)) {
+        createMessage.success(t('component.icon.copy'));
+      }
+    }
+  }
+
+  function handleSearchChange(e: ChangeEvent) {
+    const value = e.target.value;
+    if (!value) {
+      setCurrentPage(1);
+      currentList.value = icons;
+      return;
+    }
+    currentList.value = icons.filter((item) => item.includes(value));
+  }
+</script>
+<style lang="less">
+  @prefix-cls: ~'@{namespace}-icon-picker';
+
+  .@{prefix-cls} {
+    .ant-input-group-addon {
+      padding: 0;
+    }
+
+    &-popover {
+      width: 300px;
+
+      .ant-popover-inner-content {
+        padding: 0;
+      }
+
+      .scrollbar {
+        height: 220px;
+      }
+    }
+  }
+</style>
diff --git a/streampark-console/streampark-console-newui/src/components/Icon/src/SvgIcon.vue b/streampark-console/streampark-console-newui/src/components/Icon/src/SvgIcon.vue
new file mode 100644
index 000000000..2c565d68b
--- /dev/null
+++ b/streampark-console/streampark-console-newui/src/components/Icon/src/SvgIcon.vue
@@ -0,0 +1,80 @@
+<!--
+  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
+
+      https://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.
+--><template>
+  <svg
+    :class="[prefixCls, $attrs.class, spin && 'svg-icon-spin']"
+    :style="getStyle"
+    aria-hidden="true"
+  >
+    <use :xlink:href="symbolId" />
+  </svg>
+</template>
+<script lang="ts">
+  import type { CSSProperties } from 'vue';
+  import { defineComponent, computed } from 'vue';
+  import { useDesign } from '/@/hooks/web/useDesign';
+
+  export default defineComponent({
+    name: 'SvgIcon',
+    props: {
+      prefix: {
+        type: String,
+        default: 'icon',
+      },
+      name: {
+        type: String,
+        required: true,
+      },
+      size: {
+        type: [Number, String],
+        default: 16,
+      },
+      spin: {
+        type: Boolean,
+        default: false,
+      },
+    },
+    setup(props) {
+      const { prefixCls } = useDesign('svg-icon');
+      const symbolId = computed(() => `#${props.prefix}-${props.name}`);
+
+      const getStyle = computed((): CSSProperties => {
+        const { size } = props;
+        let s = `${size}`;
+        s = `${s.replace('px', '')}px`;
+        return {
+          width: s,
+          height: s,
+        };
+      });
+      return { symbolId, prefixCls, getStyle };
+    },
+  });
+</script>
+<style lang="less" scoped>
+  @prefix-cls: ~'@{namespace}-svg-icon';
+
+  .@{prefix-cls} {
+    display: inline-block;
+    overflow: hidden;
+    vertical-align: -0.15em;
+    fill: currentColor;
+  }
+
+  .svg-icon-spin {
+    animation: loadingCircle 1s infinite linear;
+  }
+</style>
diff --git a/streampark-console/streampark-console-newui/src/components/Loading/index.ts b/streampark-console/streampark-console-newui/src/components/Loading/index.ts
index 3673a44dc..4be073abc 100644
--- a/streampark-console/streampark-console-newui/src/components/Loading/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Loading/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 Loading from './src/Loading.vue';
 
 export { Loading };
diff --git a/streampark-console/streampark-console-newui/src/components/Loading/src/Loading.vue b/streampark-console/streampark-console-newui/src/components/Loading/src/Loading.vue
index 0f52b2893..9ebf4a67e 100644
--- a/streampark-console/streampark-console-newui/src/components/Loading/src/Loading.vue
+++ b/streampark-console/streampark-console-newui/src/components/Loading/src/Loading.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <section
     class="full-loading"
diff --git a/streampark-console/streampark-console-newui/src/components/Loading/src/createLoading.ts b/streampark-console/streampark-console-newui/src/components/Loading/src/createLoading.ts
index 966ca53bf..d1bd57deb 100644
--- a/streampark-console/streampark-console-newui/src/components/Loading/src/createLoading.ts
+++ b/streampark-console/streampark-console-newui/src/components/Loading/src/createLoading.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { VNode, defineComponent } from 'vue';
 import type { LoadingProps } from './typing';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Loading/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Loading/src/typing.ts
index 9af60e612..59ca4f15f 100644
--- a/streampark-console/streampark-console-newui/src/components/Loading/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Loading/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { SizeEnum } from '/@/enums/sizeEnum';
 
 export interface LoadingProps {
diff --git a/streampark-console/streampark-console-newui/src/components/Loading/src/useLoading.ts b/streampark-console/streampark-console-newui/src/components/Loading/src/useLoading.ts
index 356df7de8..e004a4fd9 100644
--- a/streampark-console/streampark-console-newui/src/components/Loading/src/useLoading.ts
+++ b/streampark-console/streampark-console-newui/src/components/Loading/src/useLoading.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { unref } from 'vue';
 import { createLoading } from './createLoading';
 import type { LoadingProps } from './typing';
diff --git a/streampark-console/streampark-console-newui/src/components/Markdown/index.ts b/streampark-console/streampark-console-newui/src/components/Markdown/index.ts
index d337681ff..af477ac63 100644
--- a/streampark-console/streampark-console-newui/src/components/Markdown/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Markdown/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import markDown from './src/Markdown.vue';
 import markDownViewer from './src/MarkdownViewer.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Markdown/src/Markdown.vue b/streampark-console/streampark-console-newui/src/components/Markdown/src/Markdown.vue
index d8117631c..0f9c0666c 100644
--- a/streampark-console/streampark-console-newui/src/components/Markdown/src/Markdown.vue
+++ b/streampark-console/streampark-console-newui/src/components/Markdown/src/Markdown.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div ref="wrapRef"></div>
 </template>
diff --git a/streampark-console/streampark-console-newui/src/components/Markdown/src/MarkdownViewer.vue b/streampark-console/streampark-console-newui/src/components/Markdown/src/MarkdownViewer.vue
index 708aa86ec..346d809ec 100644
--- a/streampark-console/streampark-console-newui/src/components/Markdown/src/MarkdownViewer.vue
+++ b/streampark-console/streampark-console-newui/src/components/Markdown/src/MarkdownViewer.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <!-- eslint-disable vue/no-v-html -->
   <div v-html="getHtmlData" :class="$props.class" class="markdown-viewer"></div>
diff --git a/streampark-console/streampark-console-newui/src/components/Markdown/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Markdown/src/typing.ts
index b4bb46582..383d2a83c 100644
--- a/streampark-console/streampark-console-newui/src/components/Markdown/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Markdown/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 Vditor from 'vditor';
 export interface MarkDownActionType {
   getVditor: () => Vditor;
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/index.ts b/streampark-console/streampark-console-newui/src/components/Menu/index.ts
index 4a592259e..50113a1b5 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Menu/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 BasicMenu from './src/BasicMenu.vue';
 
 export { BasicMenu };
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/BasicMenu.vue b/streampark-console/streampark-console-newui/src/components/Menu/src/BasicMenu.vue
index aa86bc9b0..0affc9fd0 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/BasicMenu.vue
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/BasicMenu.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Menu
     :selectedKeys="selectedKeys"
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicMenuItem.vue b/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicMenuItem.vue
index 2a5656278..2750ca335 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicMenuItem.vue
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicMenuItem.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <MenuItem :key="item.path">
     <MenuItemContent v-bind="$props" :item="item" />
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicSubMenuItem.vue b/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicSubMenuItem.vue
index d5139fce3..eecd7ce66 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicSubMenuItem.vue
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/components/BasicSubMenuItem.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <BasicMenuItem v-if="!menuHasChildren(item) && getShowMenu" v-bind="$props" />
   <SubMenu
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/components/MenuItemContent.vue b/streampark-console/streampark-console-newui/src/components/Menu/src/components/MenuItemContent.vue
index 3044fbc07..36f3ee8aa 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/components/MenuItemContent.vue
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/components/MenuItemContent.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <span :class="`${prefixCls}- flex items-center `">
     <Icon v-if="getIcon" :icon="getIcon" :size="18" :class="`${prefixCls}-wrapper__icon mr-2`" />
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/index.less b/streampark-console/streampark-console-newui/src/components/Menu/src/index.less
index 8bfbb0dfa..827583a71 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/index.less
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/index.less
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 @basic-menu-prefix-cls: ~'@{namespace}-basic-menu';
 
 .app-top-menu-popup {
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/props.ts b/streampark-console/streampark-console-newui/src/components/Menu/src/props.ts
index ed3f010d5..d090abbf7 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/props.ts
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/props.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Menu } from '/@/router/types';
 import type { PropType } from 'vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/types.ts b/streampark-console/streampark-console-newui/src/components/Menu/src/types.ts
index ad711c27b..f94d44ba6 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/types.ts
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/types.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ComputedRef } from 'vue';
 // import { ThemeEnum } from '/@/enums/appEnum';
 // import { MenuModeEnum } from '/@/enums/menuEnum';
diff --git a/streampark-console/streampark-console-newui/src/components/Menu/src/useOpenKeys.ts b/streampark-console/streampark-console-newui/src/components/Menu/src/useOpenKeys.ts
index 841dab51b..99cd2299a 100644
--- a/streampark-console/streampark-console-newui/src/components/Menu/src/useOpenKeys.ts
+++ b/streampark-console/streampark-console-newui/src/components/Menu/src/useOpenKeys.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { MenuModeEnum } from '/@/enums/menuEnum';
 import type { Menu as MenuType } from '/@/router/types';
 import type { MenuState } from './types';
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/index.ts b/streampark-console/streampark-console-newui/src/components/Modal/index.ts
index 6188c5cb5..a061b3f5c 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Modal/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import './src/index.less';
 import basicModal from './src/BasicModal.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/BasicModal.vue b/streampark-console/streampark-console-newui/src/components/Modal/src/BasicModal.vue
index 89bc8798c..b1acb58d7 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/BasicModal.vue
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/BasicModal.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Modal v-bind="getBindValue" @cancel="handleCancel">
     <template #closeIcon v-if="!$slots.closeIcon">
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/components/Modal.tsx b/streampark-console/streampark-console-newui/src/components/Modal/src/components/Modal.tsx
index 8600d6147..29486c4a6 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/components/Modal.tsx
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/components/Modal.tsx
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { Modal } from 'ant-design-vue';
 import { defineComponent, toRefs, unref } from 'vue';
 import { basicProps } from '../props';
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalClose.vue b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalClose.vue
index a0d9612e4..ab7b89f11 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalClose.vue
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalClose.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="getClass">
     <template v-if="canFullscreen">
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalFooter.vue b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalFooter.vue
index d8cefdb1a..a770f1c10 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalFooter.vue
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalFooter.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div>
     <slot name="insertFooter"></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalHeader.vue b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalHeader.vue
index 2f4577832..0400f5ca3 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalHeader.vue
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalHeader.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <BasicTitle :helpMessage="helpMessage">
     {{ title }}
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalWrapper.vue b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalWrapper.vue
index 699bf9cbc..0b63326c0 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalWrapper.vue
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/components/ModalWrapper.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <ScrollContainer ref="wrapperRef">
     <div ref="spinRef" :style="spinStyle" v-loading="loading" :loading-tip="loadingTip">
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModal.ts b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModal.ts
index fac82b77c..5eca8b9f7 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModal.ts
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModal.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type {
   UseModalReturnType,
   ModalMethods,
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalContext.ts b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalContext.ts
index 94d4c4ee8..1a63eec34 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalContext.ts
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalContext.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { InjectionKey } from 'vue';
 import { createContext, useContext } from '/@/hooks/core/useContext';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalDrag.ts b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalDrag.ts
index ff05b7b13..9440a7706 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalDrag.ts
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalDrag.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { Ref, unref, watchEffect } from 'vue';
 import { useTimeoutFn } from '/@/hooks/core/useTimeout';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalFullScreen.ts b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalFullScreen.ts
index b53563a31..b367a17db 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalFullScreen.ts
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/hooks/useModalFullScreen.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { computed, Ref, ref, unref } from 'vue';
 
 export interface UseFullScreenContext {
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/index.less b/streampark-console/streampark-console-newui/src/components/Modal/src/index.less
index a23be2920..1a3f3f926 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/index.less
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/index.less
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 .fullscreen-modal {
   overflow: hidden;
 
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/props.ts b/streampark-console/streampark-console-newui/src/components/Modal/src/props.ts
index c3c70c6c1..5ca770a86 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/props.ts
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/props.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { PropType, CSSProperties } from 'vue';
 import type { ModalWrapperProps } from './typing';
 import { ButtonProps } from 'ant-design-vue/es/button/buttonTypes';
diff --git a/streampark-console/streampark-console-newui/src/components/Modal/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Modal/src/typing.ts
index 36a7e7cdc..c0400f8ba 100644
--- a/streampark-console/streampark-console-newui/src/components/Modal/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Modal/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ButtonProps } from 'ant-design-vue/lib/button/buttonTypes';
 import type { CSSProperties, VNodeChild, ComputedRef } from 'vue';
 /**
diff --git a/streampark-console/streampark-console-newui/src/components/Page/index.ts b/streampark-console/streampark-console-newui/src/components/Page/index.ts
index 2d3f6dd7c..600ca5659 100644
--- a/streampark-console/streampark-console-newui/src/components/Page/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Page/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 
 import pageFooter from './src/PageFooter.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Page/src/PageFooter.vue b/streampark-console/streampark-console-newui/src/components/Page/src/PageFooter.vue
index e89a6ce97..153302646 100644
--- a/streampark-console/streampark-console-newui/src/components/Page/src/PageFooter.vue
+++ b/streampark-console/streampark-console-newui/src/components/Page/src/PageFooter.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="prefixCls" :style="{ width: getCalcContentWidth }">
     <div :class="`${prefixCls}__left`">
diff --git a/streampark-console/streampark-console-newui/src/components/Page/src/PageWrapper.vue b/streampark-console/streampark-console-newui/src/components/Page/src/PageWrapper.vue
index baca629f0..c5b3dc329 100644
--- a/streampark-console/streampark-console-newui/src/components/Page/src/PageWrapper.vue
+++ b/streampark-console/streampark-console-newui/src/components/Page/src/PageWrapper.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="getClass" ref="wrapperRef">
     <PageHeader
diff --git a/streampark-console/streampark-console-newui/src/components/Preview/index.ts b/streampark-console/streampark-console-newui/src/components/Preview/index.ts
index c0b4685ea..a43b19063 100644
--- a/streampark-console/streampark-console-newui/src/components/Preview/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Preview/index.ts
@@ -1,2 +1,18 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export { default as ImagePreview } from './src/Preview.vue';
 export { createImgPreview } from './src/functional';
diff --git a/streampark-console/streampark-console-newui/src/components/Preview/src/Functional.vue b/streampark-console/streampark-console-newui/src/components/Preview/src/Functional.vue
index 1c9192978..2591b6f04 100644
--- a/streampark-console/streampark-console-newui/src/components/Preview/src/Functional.vue
+++ b/streampark-console/streampark-console-newui/src/components/Preview/src/Functional.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="tsx">
   import { defineComponent, ref, unref, computed, reactive, watchEffect } from 'vue';
   import { CloseOutlined, LeftOutlined, RightOutlined } from '@ant-design/icons-vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Preview/src/Preview.vue b/streampark-console/streampark-console-newui/src/components/Preview/src/Preview.vue
index 9996d0b7b..432466c6e 100644
--- a/streampark-console/streampark-console-newui/src/components/Preview/src/Preview.vue
+++ b/streampark-console/streampark-console-newui/src/components/Preview/src/Preview.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="prefixCls">
     <PreviewGroup>
diff --git a/streampark-console/streampark-console-newui/src/components/Preview/src/functional.ts b/streampark-console/streampark-console-newui/src/components/Preview/src/functional.ts
index 74073a20e..f5b307126 100644
--- a/streampark-console/streampark-console-newui/src/components/Preview/src/functional.ts
+++ b/streampark-console/streampark-console-newui/src/components/Preview/src/functional.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Options, Props } from './typing';
 import ImgPreview from './Functional.vue';
 import { isClient } from '/@/utils/is';
diff --git a/streampark-console/streampark-console-newui/src/components/Preview/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Preview/src/typing.ts
index bbb8a83e4..8102ab8b7 100644
--- a/streampark-console/streampark-console-newui/src/components/Preview/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Preview/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface Options {
   show?: boolean;
   imageList: string[];
diff --git a/streampark-console/streampark-console-newui/src/components/Qrcode/index.ts b/streampark-console/streampark-console-newui/src/components/Qrcode/index.ts
index 16a2f4087..6c008eb90 100644
--- a/streampark-console/streampark-console-newui/src/components/Qrcode/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Qrcode/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import qrCode from './src/Qrcode.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Qrcode/src/Qrcode.vue b/streampark-console/streampark-console-newui/src/components/Qrcode/src/Qrcode.vue
index 81194e141..9fa38c703 100644
--- a/streampark-console/streampark-console-newui/src/components/Qrcode/src/Qrcode.vue
+++ b/streampark-console/streampark-console-newui/src/components/Qrcode/src/Qrcode.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div>
     <component :is="tag" ref="wrapRef" />
diff --git a/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawCanvas.ts b/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawCanvas.ts
index 53198e887..3f1fb896b 100644
--- a/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawCanvas.ts
+++ b/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawCanvas.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { toCanvas } from 'qrcode';
 import type { QRCodeRenderersOptions } from 'qrcode';
 import { RenderQrCodeParams, ContentType } from './typing';
diff --git a/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawLogo.ts b/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawLogo.ts
index 85a160f20..250e36537 100644
--- a/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawLogo.ts
+++ b/streampark-console/streampark-console-newui/src/components/Qrcode/src/drawLogo.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { isString } from '/@/utils/is';
 import { RenderQrCodeParams, LogoType } from './typing';
 export const drawLogo = ({ canvas, logo }: RenderQrCodeParams) => {
diff --git a/streampark-console/streampark-console-newui/src/components/Qrcode/src/qrcodePlus.ts b/streampark-console/streampark-console-newui/src/components/Qrcode/src/qrcodePlus.ts
index 643986179..c814f7915 100644
--- a/streampark-console/streampark-console-newui/src/components/Qrcode/src/qrcodePlus.ts
+++ b/streampark-console/streampark-console-newui/src/components/Qrcode/src/qrcodePlus.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 // 参考 qr-code-with-logo 进行ts版本修改
 import { toCanvas } from './toCanvas';
 export * from './typing';
diff --git a/streampark-console/streampark-console-newui/src/components/Qrcode/src/toCanvas.ts b/streampark-console/streampark-console-newui/src/components/Qrcode/src/toCanvas.ts
index f74d59682..9aa4454de 100644
--- a/streampark-console/streampark-console-newui/src/components/Qrcode/src/toCanvas.ts
+++ b/streampark-console/streampark-console-newui/src/components/Qrcode/src/toCanvas.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { renderQrCode } from './drawCanvas';
 import { drawLogo } from './drawLogo';
 import { RenderQrCodeParams } from './typing';
diff --git a/streampark-console/streampark-console-newui/src/components/Qrcode/src/typing.ts b/streampark-console/streampark-console-newui/src/components/Qrcode/src/typing.ts
index 3a037e9db..cfc9ab20f 100644
--- a/streampark-console/streampark-console-newui/src/components/Qrcode/src/typing.ts
+++ b/streampark-console/streampark-console-newui/src/components/Qrcode/src/typing.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { QRCodeSegment, QRCodeRenderersOptions } from 'qrcode';
 
 export type ContentType = string | QRCodeSegment[];
diff --git a/streampark-console/streampark-console-newui/src/components/Scrollbar/index.ts b/streampark-console/streampark-console-newui/src/components/Scrollbar/index.ts
index e5b2cb245..6c1e33039 100644
--- a/streampark-console/streampark-console-newui/src/components/Scrollbar/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Scrollbar/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 /**
  * copy from element-ui
  */
diff --git a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/Scrollbar.vue b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/Scrollbar.vue
index ed08026a2..99d782017 100644
--- a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/Scrollbar.vue
+++ b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/Scrollbar.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div class="scrollbar">
     <div
diff --git a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/bar.ts b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/bar.ts
index 64bd28962..028cb3a73 100644
--- a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/bar.ts
+++ b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/bar.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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,
   h,
diff --git a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/types.d.ts b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/types.d.ts
index 4c7eeea84..a84df796b 100644
--- a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/types.d.ts
+++ b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/types.d.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface BarMapItem {
   offset: string;
   scroll: string;
diff --git a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/util.ts b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/util.ts
index b7c4845c3..658701145 100644
--- a/streampark-console/streampark-console-newui/src/components/Scrollbar/src/util.ts
+++ b/streampark-console/streampark-console-newui/src/components/Scrollbar/src/util.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { BarMap } from './types';
 export const BAR_MAP: BarMap = {
   vertical: {
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/index.ts b/streampark-console/streampark-console-newui/src/components/SimpleMenu/index.ts
index 0dfd24855..a64d170dc 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/index.ts
@@ -1,2 +1,18 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export { default as SimpleMenu } from './src/SimpleMenu.vue';
 export { default as SimpleMenuTag } from './src/SimpleMenuTag.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenu.vue b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenu.vue
index 45015be6c..c9050ebdd 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenu.vue
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenu.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Menu
     v-bind="getBindValues"
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenuTag.vue b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenuTag.vue
index b7d3cb366..a042e8d07 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenuTag.vue
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleMenuTag.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <span :class="getTagClass" v-if="getShowTag">{{ getContent }}</span>
 </template>
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleSubMenu.vue b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleSubMenu.vue
index 74a8f510e..59f88b5f7 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleSubMenu.vue
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/SimpleSubMenu.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <MenuItem
     :name="item.path"
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/Menu.vue b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/Menu.vue
index 28f78fbe0..dce9b069a 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/Menu.vue
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/Menu.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <ul :class="getClass">
     <slot></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuCollapseTransition.vue b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuCollapseTransition.vue
index 5295439a7..7d5f1b3fc 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuCollapseTransition.vue
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuCollapseTransition.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <transition mode="out-in" v-on="on">
     <slot></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuItem.vue b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuItem.vue
index c4976dec9..f60609a75 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuItem.vue
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/MenuItem.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <li :class="getClass" @click.stop="handleClickItem" :style="getCollapse ? {} : getItemStyle">
     <Tooltip placement="right" v-if="showTooptip">
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/SubMenuItem.vue b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/SubMenuItem.vue
index 7d1b5a62b..5ab27cb19 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/SubMenuItem.vue
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/SubMenuItem.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <li :class="getClass">
     <template v-if="!getCollapse">
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/menu.less b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/menu.less
index 0c4c5ca54..0a28344d4 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/menu.less
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/menu.less
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 @menu-prefix-cls: ~'@{namespace}-menu';
 @menu-popup-prefix-cls: ~'@{namespace}-menu-popup';
 @submenu-popup-prefix-cls: ~'@{namespace}-menu-submenu-popup';
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/types.ts b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/types.ts
index d828e89a6..956fb9861 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/types.ts
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/types.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { Ref } from 'vue';
 
 export interface Props {
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useMenu.ts b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useMenu.ts
index 8830559d3..089c62034 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useMenu.ts
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useMenu.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { computed, ComponentInternalInstance, unref } from 'vue';
 import type { CSSProperties } from 'vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useSimpleMenuContext.ts b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useSimpleMenuContext.ts
index f3d810032..cd594403c 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useSimpleMenuContext.ts
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/components/useSimpleMenuContext.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { InjectionKey, Ref } from 'vue';
 import type { Emitter } from '/@/utils/mitt';
 import { createContext, useContext } from '/@/hooks/core/useContext';
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/index.less b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/index.less
index 4f9c9ce17..28eceaca2 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/index.less
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/index.less
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 @simple-prefix-cls: ~'@{namespace}-simple-menu';
 @prefix-cls: ~'@{namespace}-menu';
 
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/types.ts b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/types.ts
index 2e292d420..b8ba852c7 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/types.ts
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/types.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export interface MenuState {
   activeName: string;
   openNames: string[];
diff --git a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/useOpenKeys.ts b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/useOpenKeys.ts
index 1b3cf7b17..81bd913ca 100644
--- a/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/useOpenKeys.ts
+++ b/streampark-console/streampark-console-newui/src/components/SimpleMenu/src/useOpenKeys.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Menu as MenuType } from '/@/router/types';
 import type { MenuState } from './types';
 
diff --git a/streampark-console/streampark-console-newui/src/components/StrengthMeter/index.ts b/streampark-console/streampark-console-newui/src/components/StrengthMeter/index.ts
index 9763afab2..098e6e98b 100644
--- a/streampark-console/streampark-console-newui/src/components/StrengthMeter/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/StrengthMeter/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { withInstall } from '/@/utils';
 import strengthMeter from './src/StrengthMeter.vue';
 
diff --git a/streampark-console/streampark-console-newui/src/components/StrengthMeter/src/StrengthMeter.vue b/streampark-console/streampark-console-newui/src/components/StrengthMeter/src/StrengthMeter.vue
index e0fc33174..0eb2a34bc 100644
--- a/streampark-console/streampark-console-newui/src/components/StrengthMeter/src/StrengthMeter.vue
+++ b/streampark-console/streampark-console-newui/src/components/StrengthMeter/src/StrengthMeter.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="prefixCls" class="relative">
     <InputPassword
diff --git a/streampark-console/streampark-console-newui/src/components/Table/index.ts b/streampark-console/streampark-console-newui/src/components/Table/index.ts
index 1ec9568bf..0f8b27d85 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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.
+ */
 export { default as BasicTable } from './src/BasicTable.vue';
 export { default as TableAction } from './src/components/TableAction.vue';
 export { default as EditTableHeaderIcon } from './src/components/EditTableHeaderIcon.vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/BasicTable.vue b/streampark-console/streampark-console-newui/src/components/Table/src/BasicTable.vue
index b3bc1f605..92c48c356 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/BasicTable.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/BasicTable.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div ref="wrapRef" :class="getWrapperClass">
     <BasicForm
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/componentMap.ts b/streampark-console/streampark-console-newui/src/components/Table/src/componentMap.ts
index 3f7247190..642b290bc 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/componentMap.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/componentMap.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Component } from 'vue';
 import {
   Input,
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/EditTableHeaderIcon.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/EditTableHeaderIcon.vue
index 369820e7a..d2e23cced 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/EditTableHeaderIcon.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/EditTableHeaderIcon.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <span>
     <slot></slot>
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/HeaderCell.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/HeaderCell.vue
index c21bfd040..f81807a1e 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/HeaderCell.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/HeaderCell.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <EditTableHeaderCell v-if="getIsEdit">
     {{ getTitle }}
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableAction.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableAction.vue
index 4c5c1ed9a..edb1d27ce 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableAction.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableAction.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div :class="[prefixCls, getAlign]" @click="onCellClick">
     <template v-for="(action, index) in getActions" :key="`${index}-${action.label}`">
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableFooter.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableFooter.vue
index 68e556b3c..a1ba620fc 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableFooter.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableFooter.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Table
     v-if="summaryFunc || summaryData"
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableHeader.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableHeader.vue
index 189e913d9..a7e00821a 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableHeader.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableHeader.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div style="width: 100%">
     <div v-if="$slots.headerTop" style="margin: 5px">
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableImg.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableImg.vue
index 6b533aa03..20707e0c5 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableImg.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableImg.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div
     :class="prefixCls"
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableTitle.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableTitle.vue
index 0b797e13c..cc59f0c5d 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/TableTitle.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/TableTitle.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <BasicTitle :class="prefixCls" v-if="getTitle" :helpMessage="helpMessage">
     {{ getTitle }}
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/CellComponent.ts b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/CellComponent.ts
index 3a1669382..646e9accc 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/CellComponent.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/CellComponent.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { FunctionalComponent, defineComponent } from 'vue';
 import type { ComponentType } from '../../types/componentType';
 import { componentMap } from '/@/components/Table/src/componentMap';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/EditableCell.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/EditableCell.vue
index 5a4be7ea3..d269f783b 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/EditableCell.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/EditableCell.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <script lang="tsx">
   import type { CSSProperties, PropType } from 'vue';
   import { computed, defineComponent, nextTick, ref, toRaw, unref, watchEffect } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/helper.ts b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/helper.ts
index 9c600c9f1..a4e70b697 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/helper.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/helper.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ComponentType } from '../../types/componentType';
 import { useI18n } from '/@/hooks/web/useI18n';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/index.ts b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/index.ts
index 4f7d4dac2..346cb8ecc 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/index.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/editable/index.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { BasicColumn } from '/@/components/Table/src/types/table';
 
 import { h, Ref } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/ColumnSetting.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/ColumnSetting.vue
index dc72a3533..42b312e83 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/ColumnSetting.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/ColumnSetting.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Tooltip placement="top">
     <template #title>
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/FullScreenSetting.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/FullScreenSetting.vue
index af07f84cb..fc9fc13e8 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/FullScreenSetting.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/FullScreenSetting.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Tooltip placement="top">
     <template #title>
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/RedoSetting.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/RedoSetting.vue
index 81829a17d..d901569e5 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/RedoSetting.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/RedoSetting.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Tooltip placement="top">
     <template #title>
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/SizeSetting.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/SizeSetting.vue
index 79c4a2284..af9eb8a9c 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/SizeSetting.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/SizeSetting.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <Tooltip placement="top">
     <template #title>
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/index.vue b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/index.vue
index ab03cb22b..573f3c2d8 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/index.vue
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/components/settings/index.vue
@@ -1,3 +1,19 @@
+<!--
+  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
+
+      https://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.
+-->
 <template>
   <div class="table-settings">
     <RedoSetting v-if="getSetting.redo" :getPopupContainer="getTableContainer" />
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/const.ts b/streampark-console/streampark-console-newui/src/components/Table/src/const.ts
index 2a45fac7a..1da1d52e3 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/const.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/const.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 componentSetting from '/@/settings/componentSetting';
 
 const { table } = componentSetting;
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useColumns.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useColumns.ts
index f002df002..971fcf852 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useColumns.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useColumns.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { BasicColumn, BasicTableProps, CellFormat, GetColumnsParams } from '../types/table';
 import type { PaginationProps } from '../types/pagination';
 import type { ComputedRef } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useCustomRow.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useCustomRow.ts
index 56187208e..7730fe6e0 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useCustomRow.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useCustomRow.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ComputedRef } from 'vue';
 import type { BasicTableProps } from '../types/table';
 import { unref } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useDataSource.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useDataSource.ts
index 2884b3419..e0c05fe8e 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useDataSource.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useDataSource.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { BasicTableProps, FetchParams, SorterResult } from '../types/table';
 import type { PaginationProps } from '../types/pagination';
 import {
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useLoading.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useLoading.ts
index fe8a0f164..d2adf88a4 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useLoading.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useLoading.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { ref, ComputedRef, unref, computed, watch } from 'vue';
 import type { BasicTableProps } from '../types/table';
 
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/usePagination.tsx b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/usePagination.tsx
index ba310bd14..247c2fb06 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/usePagination.tsx
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/usePagination.tsx
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { PaginationProps } from '../types/pagination';
 import type { BasicTableProps } from '../types/table';
 import { computed, unref, ref, ComputedRef, watch } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useRowSelection.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useRowSelection.ts
index 3439a223b..f8b4d043c 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useRowSelection.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useRowSelection.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 { isFunction } from '/@/utils/is';
 import type { BasicTableProps, TableRowSelection } from '../types/table';
 import { computed, ComputedRef, nextTick, Ref, ref, toRaw, unref, watch } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useScrollTo.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useScrollTo.ts
index b368f81b0..5d9dcdf9c 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useScrollTo.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useScrollTo.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ComputedRef, Ref } from 'vue';
 import { nextTick, unref } from 'vue';
 import { warn } from '/@/utils/log';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTable.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTable.ts
index 20cfcf91e..c4282e328 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTable.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTable.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { BasicTableProps, TableActionType, FetchParams, BasicColumn } from '../types/table';
 import type { PaginationProps } from '../types/pagination';
 import type { DynamicProps } from '/#/utils';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableContext.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableContext.ts
index b657bb27e..c3ad99119 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableContext.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableContext.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { Ref } from 'vue';
 import type { BasicTableProps, TableActionType } from '../types/table';
 import { provide, inject, ComputedRef } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableExpand.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableExpand.ts
index 262836596..a3bdf03b7 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableExpand.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableExpand.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ComputedRef, Ref } from 'vue';
 import type { BasicTableProps } from '../types/table';
 import { computed, unref, ref, toRaw } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableFooter.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableFooter.ts
index 12285eb03..ccdc911d5 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableFooter.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableFooter.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://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 type { ComputedRef, Ref } from 'vue';
 import type { BasicTableProps } from '../types/table';
 import { unref, computed, h, nextTick, watchEffect } from 'vue';
diff --git a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableForm.ts b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableForm.ts
index bc09c7f6d..766ac2272 100644
--- a/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableForm.ts
+++ b/streampark-console/streampark-console-newui/src/components/Table/src/hooks/useTableForm.ts
@@ -1,3 +1,19 @@
+/*
+ * 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
+ *
+ *    https://www.apache.org/licenses/LICENSE-2.0
... 9257 lines suppressed ...