From 73aff7742da86e04e477801e1fdefc8c54f4792a Mon Sep 17 00:00:00 2001 From: Warren <5959690+wrn14897@users.noreply.github.com> Date: Tue, 24 Jun 2025 14:11:11 -0700 Subject: [PATCH] feat: Improve source editing UX (#944) Restored https://github.com/hyperdxio/hyperdx/pull/805 which should be merged it into main Co-authored-by: Ernest Iliiasov <20255948+ernestii@users.noreply.github.com> --- .changeset/lovely-seals-build.md | 5 ++ packages/app/src/DBSearchPage.tsx | 54 ++++++++++++++----- packages/app/src/TeamPage.tsx | 19 +++---- .../app/src/components/ConfirmDeleteMenu.tsx | 2 +- packages/app/styles/TeamPage.module.scss | 9 ---- 5 files changed, 55 insertions(+), 34 deletions(-) create mode 100644 .changeset/lovely-seals-build.md delete mode 100644 packages/app/styles/TeamPage.module.scss diff --git a/.changeset/lovely-seals-build.md b/.changeset/lovely-seals-build.md new file mode 100644 index 00000000..811a7050 --- /dev/null +++ b/.changeset/lovely-seals-build.md @@ -0,0 +1,5 @@ +--- +"@hyperdx/app": patch +--- + +feat: Improve source editing UX diff --git a/packages/app/src/DBSearchPage.tsx b/packages/app/src/DBSearchPage.tsx index 06227316..84723654 100644 --- a/packages/app/src/DBSearchPage.tsx +++ b/packages/app/src/DBSearchPage.tsx @@ -8,6 +8,7 @@ import { useState, } from 'react'; import dynamic from 'next/dynamic'; +import Link from 'next/link'; import router from 'next/router'; import { parseAsBoolean, @@ -42,6 +43,7 @@ import { Flex, Grid, Group, + Menu, Modal, Paper, Stack, @@ -767,7 +769,7 @@ function DBSearchPage() { [setRowId, setIsLive], ); - const [modelFormExpanded, setModelFormExpanded] = useState(false); + const [modelFormExpanded, setModelFormExpanded] = useState(false); // Used in local mode const [saveSearchModalState, setSaveSearchModalState] = useState< 'create' | 'update' | undefined >(undefined); @@ -1087,17 +1089,45 @@ function DBSearchPage() { name="source" onCreate={openNewSourceModal} /> - setModelFormExpanded(v => !v)} - title="Edit Source" - > - - - - + + + + + + + + + + Sources + } + onClick={() => setNewSourceModalOpened(true)} + > + Create New Source + + {IS_LOCAL_MODE ? ( + } + onClick={() => setModelFormExpanded(v => !v)} + > + Edit Source + + ) : ( + } + component={Link} + href="/team" + > + Edit Sources + + )} + + {isLoading && ( - - Loading... - +
+ +
)} {!isLoading && team != null && ( diff --git a/packages/app/src/components/ConfirmDeleteMenu.tsx b/packages/app/src/components/ConfirmDeleteMenu.tsx index 85bbbf50..911964b7 100644 --- a/packages/app/src/components/ConfirmDeleteMenu.tsx +++ b/packages/app/src/components/ConfirmDeleteMenu.tsx @@ -6,7 +6,7 @@ export default function ConfirmDeleteMenu({ onDelete: () => void; }) { return ( - +