From 5492fb3405764891a643384900dd216f8643d7d5 Mon Sep 17 00:00:00 2001
From: jingyang <72259332+zjy365@users.noreply.github.com>
Date: Thu, 20 Feb 2025 13:56:36 +0800
Subject: [PATCH] feat: support ui 2.0 add logs view (#5357)
* feat: datePicker
* feat: header ui
* fix: DatePicker input status bug
* feat: header ui
* feat: log number ui
* feat: LogCount ui
* add layout
* update layouts
* add AdvancedInfo
* chore: move file to page/log
* chore: move log component to log/component
* fix: add contains and not contains operator
* feat: log list header ui
* update index
* feat: log table ui
* chore: i18n adjust
* fix: pod and container
* update style
* update monitor
* update pages
* chore: adjust logs components position
* fix: select placeholder
chore: stash
monitor
update detail page
* add api
* update logs
* add logs & filter & logCounts
* update logs
* update
* update MonitorChart
* add prevFieldList
* update api
* delete table
* update log api
* update scroll
* update common.json
* update defaultRecentDate
* fix
* update keys
* update timerange
* done
* update datepicker
* add queryPodList api
* update podname
* fix init pods
* fix ReleaseModal
fix ReleaseModal
fix ReleaseModal
* delete release-modal
* fix log height
* fix pvc bug
* update info style
* fix: env info overflow
---------
Co-authored-by: mlhiter <3076438032@qq.com>
---
.../ui/src/components/Select/index.tsx | 11 +-
frontend/pnpm-lock.yaml | 10 +
.../providers/applaunchpad/data/config.yaml | 2 +
frontend/providers/applaunchpad/package.json | 3 +
.../public/locales/en/common.json | 54 +-
.../public/locales/zh/common.json | 49 +-
.../providers/applaunchpad/src/api/app.ts | 9 +
.../src/components/AdvancedSelect/index.tsx | 267 ++++++++++
.../src/components/BaseTable/SwitchPage.tsx | 158 ++++++
.../src/components/BaseTable/index.tsx | 120 +++++
.../src/components/DatePicker/index.tsx | 485 ++++++++++++++++++
.../src/components/Icon/icons/arrowLeft.svg | 11 +-
.../src/components/Icon/icons/arrowRight.svg | 3 +
.../src/components/Icon/icons/calendar.svg | 3 +
.../src/components/Icon/icons/chart.svg | 4 +
.../src/components/Icon/icons/configMap.svg | 12 +-
.../src/components/Icon/icons/container.svg | 5 +
.../src/components/Icon/icons/copy.svg | 4 +-
.../src/components/Icon/icons/emptyChart.svg | 10 +
.../src/components/Icon/icons/export.svg | 5 +
.../src/components/Icon/icons/log.svg | 2 +-
.../src/components/Icon/icons/monitor.svg | 4 +
.../src/components/Icon/icons/refresh.svg | 5 +
.../src/components/Icon/icons/store.svg | 5 +-
.../src/components/Icon/icons/to.svg | 4 +
.../src/components/Icon/index.tsx | 27 +-
.../src/components/LangSelect/index.tsx | 2 +-
.../src/components/LogBarChart/index.tsx | 250 +++++++++
.../src/components/Monitor/Header.tsx | 158 ++++++
.../src/components/Monitor/Time.tsx | 18 +
.../components/MonitorChart/index.module.css | 58 +++
.../src/components/MonitorChart/index.tsx | 250 +++++++++
.../src/components/PodLineChart/index.tsx | 3 +
.../app/detail/index/AdvancedInfo.tsx | 314 ++++++++++++
.../app/detail/index/AppBaseInfo.tsx | 224 ++++++++
.../app/detail/index}/AppMainInfo.tsx | 76 ++-
.../detail/index}/ConfigMapDetailModal.tsx | 0
.../app/detail/index}/DelModal.tsx | 0
.../app/detail/index}/Header.tsx | 56 +-
.../app/detail/index}/LogsModal.tsx | 2 +-
.../app/detail/index}/MonitorModal.tsx | 0
.../app/detail/index}/PodDetailModal.tsx | 2 +-
.../app/detail/index}/PodFileModal.tsx | 2 +-
.../app/detail/index}/Pods.tsx | 49 +-
.../app/detail/index}/UpdateModal.tsx | 0
.../app/detail/index}/empty.module.scss | 0
.../app/detail/index}/empty.tsx | 0
.../app/detail/index}/index.module.scss | 0
.../src/components/app/detail/logs/Filter.tsx | 228 ++++++++
.../src/components/app/detail/logs/Header.tsx | 204 ++++++++
.../components/app/detail/logs/LogCounts.tsx | 85 +++
.../components/app/detail/logs/LogTable.tsx | 305 +++++++++++
.../apps}/appList.tsx | 4 +-
.../apps}/empty.module.scss | 0
.../components => components/apps}/empty.tsx | 0
.../src/components/layouts/DetailLayout.tsx | 77 +++
.../src/components/layouts/Sidebar.tsx | 91 ++++
.../applaunchpad/src/constants/monitor.ts | 42 +-
.../applaunchpad/src/constants/theme.ts | 3 +-
.../applaunchpad/src/hooks/useConfirm.tsx | 7 +-
.../applaunchpad/src/hooks/useRequest.tsx | 2 +-
.../providers/applaunchpad/src/pages/_app.tsx | 5 +-
.../src/pages/api/log/queryLogs.ts | 108 ++++
.../src/pages/api/log/queryPodList.ts | 84 +++
.../src/pages/api/monitor/getMonitorData.ts | 9 +-
.../src/pages/api/platform/getInitData.ts | 3 +
.../app/detail/components/AppBaseInfo.tsx | 477 -----------------
.../src/pages/app/detail/index.tsx | 124 ++---
.../src/pages/app/detail/logs.tsx | 263 ++++++++++
.../src/pages/app/detail/monitor.tsx | 234 +++++++++
.../app/edit/components/CustomAccessModal.tsx | 2 +-
.../src/pages/app/edit/components/Form.tsx | 14 +-
.../applaunchpad/src/pages/app/edit/index.tsx | 11 +-
.../src/pages/{apps/index.tsx => apps.tsx} | 5 +-
.../src/pages/apps/index.module.scss | 0
.../applaunchpad/src/pages/icons.tsx | 51 ++
.../applaunchpad/src/services/logFetch.ts | 26 +
.../providers/applaunchpad/src/store/date.ts | 29 ++
.../applaunchpad/src/store/logStore.ts | 72 +++
.../applaunchpad/src/styles/global.scss | 54 +-
.../applaunchpad/src/types/index.d.ts | 3 +
.../applaunchpad/src/types/monitor.d.ts | 2 +-
.../applaunchpad/src/utils/timeRange.ts | 73 +++
83 files changed, 4681 insertions(+), 752 deletions(-)
create mode 100644 frontend/providers/applaunchpad/src/components/AdvancedSelect/index.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/BaseTable/SwitchPage.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/BaseTable/index.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/DatePicker/index.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/arrowRight.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/calendar.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/chart.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/container.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/emptyChart.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/export.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/monitor.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/refresh.svg
create mode 100644 frontend/providers/applaunchpad/src/components/Icon/icons/to.svg
create mode 100644 frontend/providers/applaunchpad/src/components/LogBarChart/index.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/Monitor/Header.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/Monitor/Time.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/MonitorChart/index.module.css
create mode 100644 frontend/providers/applaunchpad/src/components/MonitorChart/index.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/app/detail/index/AdvancedInfo.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/app/detail/index/AppBaseInfo.tsx
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/AppMainInfo.tsx (75%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/ConfigMapDetailModal.tsx (100%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/DelModal.tsx (100%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/Header.tsx (85%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/LogsModal.tsx (99%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/MonitorModal.tsx (100%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/PodDetailModal.tsx (99%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/PodFileModal.tsx (99%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/Pods.tsx (91%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/UpdateModal.tsx (100%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/empty.module.scss (100%)
rename frontend/providers/applaunchpad/src/{pages/app/detail/components => components/app/detail/index}/empty.tsx (100%)
rename frontend/providers/applaunchpad/src/{pages/app/detail => components/app/detail/index}/index.module.scss (100%)
create mode 100644 frontend/providers/applaunchpad/src/components/app/detail/logs/Filter.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/app/detail/logs/Header.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/app/detail/logs/LogCounts.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/app/detail/logs/LogTable.tsx
rename frontend/providers/applaunchpad/src/{pages/apps/components => components/apps}/appList.tsx (98%)
rename frontend/providers/applaunchpad/src/{pages/apps/components => components/apps}/empty.module.scss (100%)
rename frontend/providers/applaunchpad/src/{pages/apps/components => components/apps}/empty.tsx (100%)
create mode 100644 frontend/providers/applaunchpad/src/components/layouts/DetailLayout.tsx
create mode 100644 frontend/providers/applaunchpad/src/components/layouts/Sidebar.tsx
create mode 100644 frontend/providers/applaunchpad/src/pages/api/log/queryLogs.ts
create mode 100644 frontend/providers/applaunchpad/src/pages/api/log/queryPodList.ts
delete mode 100644 frontend/providers/applaunchpad/src/pages/app/detail/components/AppBaseInfo.tsx
create mode 100644 frontend/providers/applaunchpad/src/pages/app/detail/logs.tsx
create mode 100644 frontend/providers/applaunchpad/src/pages/app/detail/monitor.tsx
rename frontend/providers/applaunchpad/src/pages/{apps/index.tsx => apps.tsx} (97%)
delete mode 100644 frontend/providers/applaunchpad/src/pages/apps/index.module.scss
create mode 100644 frontend/providers/applaunchpad/src/pages/icons.tsx
create mode 100644 frontend/providers/applaunchpad/src/services/logFetch.ts
create mode 100644 frontend/providers/applaunchpad/src/store/date.ts
create mode 100644 frontend/providers/applaunchpad/src/store/logStore.ts
create mode 100644 frontend/providers/applaunchpad/src/utils/timeRange.ts
diff --git a/frontend/packages/ui/src/components/Select/index.tsx b/frontend/packages/ui/src/components/Select/index.tsx
index f75268a28e9..8958a5ab098 100644
--- a/frontend/packages/ui/src/components/Select/index.tsx
+++ b/frontend/packages/ui/src/components/Select/index.tsx
@@ -54,7 +54,16 @@ const MySelect = (
}
});
- const activeMenu = useMemo(() => list.find((item) => item.value === value), [list, value]);
+ const activeMenu = useMemo(() => {
+ const foundItem = list.find((item) => item.value === value);
+ if (!foundItem && value) {
+ return {
+ label: value,
+ value: value
+ };
+ }
+ return foundItem;
+ }, [list, value]);
return (