diff --git a/apps/desktop/packages/mainWindow/src/pages/Library/Instance/Tabs/Log/components/LogsOptions.tsx b/apps/desktop/packages/mainWindow/src/pages/Library/Instance/Tabs/Log/components/LogsOptions.tsx index d8001a23c..865660cf6 100644 --- a/apps/desktop/packages/mainWindow/src/pages/Library/Instance/Tabs/Log/components/LogsOptions.tsx +++ b/apps/desktop/packages/mainWindow/src/pages/Library/Instance/Tabs/Log/components/LogsOptions.tsx @@ -1,169 +1,17 @@ -import RightHandSide from "@/pages/Settings/components/RightHandSide" -import Row from "@/pages/Settings/components/Row" -import RowsContainer from "@/pages/Settings/components/RowsContainer" import { Trans } from "@gd/i18n" -import { Popover, Slider, Switch } from "@gd/ui" -import { createSignal } from "solid-js" -import { Show } from "solid-js" - -interface DensityRowProps { - selected: boolean - onClick: () => void -} - -function LowDensityRows(props: DensityRowProps) { - return ( -
-
- -
- -
- ) -} - -function MediumDensityRows(props: DensityRowProps) { - return ( -
-
-
- -
- -
- ) -} - -function HighDensityRows(props: DensityRowProps) { - return ( -
-
-
-
-
- -
- -
- ) -} - -interface ColumnProps { - selected: boolean - onClick: () => void -} - -function TimestampColumn(props: ColumnProps) { - return ( -
-
-
-
-
-
-
- -
- -
- ) -} - -function LoggerColumn(props: ColumnProps) { - return ( -
-
-
-
-
-
-
- -
- -
- ) -} - -function SourceKindColumn(props: ColumnProps) { - return ( -
-
-
-
-
-
-
- -
- -
- ) -} - -function ThreadNameColumn(props: ColumnProps) { - return ( -
-
-
-
-
-
-
- -
- -
- ) -} - -function LogLevelColumn(props: ColumnProps) { - return ( -
-
-
-
-
-
-
- -
- -
- ) -} +import { + DropdownMenu, + DropdownMenuCheckboxItem, + DropdownMenuContent, + DropdownMenuPortal, + DropdownMenuRadioGroup, + DropdownMenuRadioItem, + DropdownMenuSeparator, + DropdownMenuSub, + DropdownMenuSubContent, + DropdownMenuSubTrigger, + DropdownMenuTrigger +} from "@gd/ui" export type LogDensity = "low" | "medium" | "high" @@ -189,216 +37,142 @@ interface Props { } export default function LogsOptions(props: Props) { - const [isOpen, setIsOpen] = createSignal(false) - return ( - setIsOpen(true)} - onClose={() => setIsOpen(false)} - content={() => ( -
- - -
- -
- -
-
-
- -
- props.setLogsDensity("low")} - /> -
-
-
- -
- props.setLogsDensity("medium")} - /> -
-
-
- -
- props.setLogsDensity("high")} - /> -
-
-
-
-
- -
- -
- -
- {"aA"}
- ) - }, - 1: { - label: ( -
{"aA"}
- ) - }, - 2: { - label: ( -
- {"aA"} -
- ) - } - }} - onChange={(val) => { - props.setFontMultiplier(val as 0 | 1 | 2) - }} - /> -
- - -
- -
- -
- -
-
-
- -
- - props.setColumns({ - ...props.columns, - timestamp: !props.columns.timestamp - }) - } - /> -
-
-
- -
- - props.setColumns({ - ...props.columns, - logger: !props.columns.logger - }) - } - /> -
-
-
- -
- - props.setColumns({ - ...props.columns, - sourceKind: !props.columns.sourceKind - }) - } - /> -
-
-
- -
- - props.setColumns({ - ...props.columns, - threadName: !props.columns.threadName - }) - } - /> -
-
-
- -
- - props.setColumns({ - ...props.columns, - level: !props.columns.level - }) - } - /> -
-
-
-
-
- -
- -
- -
- { - props.setAutoFollowPreference(e.currentTarget.checked) - }} - /> -
-
-
-
- -
- -
- -
- { - props.setStartLogMessageOnNewLine(e.currentTarget.checked) - }} - /> -
-
-
- -
- )} - > -
- + + +
+ + + + + + + + + props.setLogsDensity(value as LogDensity)} + > + + + + + + + + + + + + + + + + + + + + + props.setFontMultiplier(parseInt(value) as 0 | 1 | 2) + } + > + + {"aAaAaA"} + + + {"aAaAaA"} + + + {"aAaAaA"} + + + + + + + + + + + + + props.setColumns({ + ...props.columns, + timestamp: !props.columns.timestamp + }) + } + > + + + + props.setColumns({ + ...props.columns, + logger: !props.columns.logger + }) + } + > + + + + props.setColumns({ + ...props.columns, + sourceKind: !props.columns.sourceKind + }) + } + > + + + + props.setColumns({ + ...props.columns, + threadName: !props.columns.threadName + }) + } + > + + + + props.setColumns({ + ...props.columns, + level: !props.columns.level + }) + } + > + + + + + + + + props.setAutoFollowPreference(!props.autoFollowPreference) + } + > + + + + props.setStartLogMessageOnNewLine(!props.startLogMessageOnNewLine) + } + > + + + + ) } diff --git a/packages/i18n/locale/english/common.json b/packages/i18n/locale/english/common.json index 3ff3ec9a4..f723e19f7 100644 --- a/packages/i18n/locale/english/common.json +++ b/packages/i18n/locale/english/common.json @@ -512,6 +512,7 @@ "account_expired.expiration_description": "You can still use GDLauncher and launch instances, but you might not be able to join any servers or play multiplayer. Also, if you have a GDL account linked to this account, it won't sync.", "account_expired.back_to_login": "Back to login", "account_expired.launch_anyway": "Launch anyway", + "logs_density": "Logs Density", "logs_density.low": "Low", "logs_density.comfortable": "Comfortable", diff --git a/packages/ui/src/DropdownMenu/index.tsx b/packages/ui/src/DropdownMenu/index.tsx index 488bd2515..3fb2ce4ab 100644 --- a/packages/ui/src/DropdownMenu/index.tsx +++ b/packages/ui/src/DropdownMenu/index.tsx @@ -155,7 +155,7 @@ const DropdownMenuSubContent = ( return (