Skip to content

Commit ec55c07

Browse files
authored
app/vmui: adjust styles for mobile layout (#855)
1 parent c187f5e commit ec55c07

File tree

21 files changed

+155
-70
lines changed

21 files changed

+155
-70
lines changed

app/vmui/packages/vmui/src/components/Chart/BarHitsChart/BarHitsChart.tsx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import { useFetchFieldNames } from "../../../pages/OverviewPage/hooks/useFetchFi
1616
import { useTimeState } from "../../../state/time/TimeStateContext";
1717
import { useExtraFilters } from "../../../pages/OverviewPage/hooks/useExtraFilters";
1818
import { getDurationFromMilliseconds } from "../../../utils/time";
19+
import useDeviceDetect from "../../../hooks/useDeviceDetect";
1920

2021
interface Props {
2122
logHits: LogHits[];
@@ -28,6 +29,8 @@ interface Props {
2829
}
2930

3031
const BarHitsChart: FC<Props> = ({ logHits, data: _data, query, period, setPeriod, onApplyFilter, durationMs }) => {
32+
const { isMobile } = useDeviceDetect();
33+
3134
const [graphOptions, setGraphOptions] = useState<GraphOptions>({
3235
graphStyle: GRAPH_STYLES.BAR,
3336
stacked: false,
@@ -58,7 +61,12 @@ const BarHitsChart: FC<Props> = ({ logHits, data: _data, query, period, setPerio
5861
})}
5962
>
6063
<div className="vm-bar-hits-chart-header">
61-
<div className="vm-bar-hits-chart-header-info">
64+
<div
65+
className={classNames({
66+
"vm-bar-hits-chart-header-info": true,
67+
"vm-bar-hits-chart-header-info_mobile": isMobile,
68+
})}
69+
>
6270
<SelectLimit
6371
label="Top hits"
6472
options={[5, 10, 25, 50]}

app/vmui/packages/vmui/src/components/Chart/BarHitsChart/BarHitsPlot/BarHitsPlot.tsx

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import { sortLogHits } from "../../../../utils/logs";
1717
import { useAppState } from "../../../../state/common/StateContext";
1818
import { useTimeState } from "../../../../state/time/TimeStateContext";
1919
import { ExtraFilter } from "../../../../pages/OverviewPage/FiltersBar/types";
20+
import useDeviceDetect from "../../../../hooks/useDeviceDetect";
2021

2122
interface Props {
2223
logHits: LogHits[];
@@ -29,6 +30,7 @@ interface Props {
2930
}
3031

3132
const BarHitsPlot: FC<Props> = ({ graphOptions, logHits, totalHits, data: _data, period, setPeriod, onApplyFilter }: Props) => {
33+
const { isMobile } = useDeviceDetect();
3234
const { isDarkTheme } = useAppState();
3335
const { timezone } = useTimeState();
3436
const [containerRef, containerSize] = useElementSize();
@@ -135,11 +137,13 @@ const BarHitsPlot: FC<Props> = ({ graphOptions, logHits, totalHits, data: _data,
135137
className="vm-line-chart__u-plot"
136138
ref={uPlotRef}
137139
/>
138-
<BarHitsTooltip
139-
uPlotInst={uPlotInst}
140-
data={_data}
141-
focusDataIdx={focusDataIdx}
142-
/>
140+
{!isMobile && (
141+
<BarHitsTooltip
142+
uPlotInst={uPlotInst}
143+
data={_data}
144+
focusDataIdx={focusDataIdx}
145+
/>
146+
)}
143147
</div>
144148
{uPlotInst && <BarHitsLegend
145149
uPlotInst={uPlotInst}

app/vmui/packages/vmui/src/components/Chart/BarHitsChart/style.scss

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
&-header {
2424
display: flex;
25+
flex-wrap: wrap;
2526
align-content: center;
2627
justify-content: space-between;
2728
gap: $padding-small;
@@ -34,6 +35,10 @@
3435
color: $color-text-secondary;
3536
font-size: $font-size-small;
3637
font-family: monospace;
38+
39+
&_mobile {
40+
flex-wrap: wrap;
41+
}
3742
}
3843
}
3944
}

app/vmui/packages/vmui/src/components/Configurators/LogsSettings/LogParsingSwitches.tsx

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
import { FC } from "preact/compat";
22
import Switch from "../../Main/Switch/Switch";
3-
import useDeviceDetect from "../../../hooks/useDeviceDetect";
43
import { useLogsDispatch, useLogsState } from "../../../state/logsPanel/LogsStateContext";
54

65
const LogParsingSwitches: FC = () => {
7-
const { isMobile } = useDeviceDetect();
86
const { markdownParsing, ansiParsing } = useLogsState();
97
const dispatch = useLogsDispatch();
108

@@ -31,7 +29,6 @@ const LogParsingSwitches: FC = () => {
3129
label={"Enable markdown parsing"}
3230
value={markdownParsing}
3331
onChange={handleChangeMarkdownParsing}
34-
fullWidth={isMobile}
3532
/>
3633
<div className="vm-group-logs-configurator-item__info">
3734
Toggle this switch to enable or disable the Markdown formatting for log entries.
@@ -43,7 +40,6 @@ const LogParsingSwitches: FC = () => {
4340
label={"Enable ANSI parsing"}
4441
value={ansiParsing}
4542
onChange={handleChangeAnsiParsing}
46-
fullWidth={isMobile}
4743
/>
4844
<div className="vm-group-logs-configurator-item__info">
4945
Toggle this switch to enable or disable ANSI escape sequence parsing for log entries.

app/vmui/packages/vmui/src/components/Main/Button/style.scss

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ $button-radius: 6px;
4242

4343
svg {
4444
width: 14px;
45+
min-width: 14px;
46+
max-width: 14px;
4547
}
4648
}
4749

@@ -51,6 +53,8 @@ $button-radius: 6px;
5153

5254
svg {
5355
width: 16px;
56+
min-width: 16px;
57+
max-width: 16px;
5458
}
5559
}
5660

@@ -60,6 +64,8 @@ $button-radius: 6px;
6064

6165
svg {
6266
width: 18px;
67+
min-width: 18px;
68+
max-width: 18px;
6369
line-height: 16px;
6470
}
6571
}

app/vmui/packages/vmui/src/components/Main/Pagination/SelectLimit/SelectLimit.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ export const SelectLimit = <T extends string | number>(props: SelectLimitProps<T
8181
ref={buttonRef}
8282
>
8383
<div>
84-
{label || "Rows per page"}: <b>{renderOptionLabel ? renderOptionLabel(limit, true) : limit || "All"}</b>
84+
{label || (isMobile ? "Rows" : "Rows per page")}: <b>{renderOptionLabel ? renderOptionLabel(limit, true) : limit || "All"}</b>
8585
</div>
8686
<ArrowDropDownIcon/>
8787
</div>

app/vmui/packages/vmui/src/components/Main/Pagination/style.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
position: sticky;
55
left: 0;
66
display: flex;
7+
flex-wrap: wrap;
78
justify-content: center;
89
gap: $padding-small;
910
padding: $padding-global 0;

app/vmui/packages/vmui/src/components/QueryHistory/QueryHistory.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ const QueryHistory: FC<Props> = ({ handleSelectQuery, historyKey }) => {
113113
startIcon={<ClockIcon/>}
114114
ariaLabel={"Query history"}
115115
>
116-
Query history
116+
{!isMobile && "Query history"}
117117
</Button>
118118

119119
{openModal && (

app/vmui/packages/vmui/src/components/Views/GroupView/GroupLogs.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,10 @@ const GroupLogs: FC<Props> = ({ logs, settingsRef }) => {
140140
{settingsRef.current && createPortal((
141141
<div className="vm-group-logs-header">
142142
<div className="vm-query-page-body-header__log-info">
143-
Total groups: <b>{groupData.length}</b>
143+
{isMobile ? "Logs" : "Total logs returned"}: <b>{logs.length}</b>
144+
</div>
145+
<div className="vm-query-page-body-header__log-info">
146+
{isMobile ? "Groups" : "Total groups"}: <b>{groupData.length}</b>
144147
</div>
145148
<SelectLimit
146149
allowUnlimited

app/vmui/packages/vmui/src/components/Views/GroupView/GroupLogsFieldRow.tsx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ import { CopyIcon, StorageIcon, VisibilityIcon } from "../../Main/Icons";
55
import useCopyToClipboard from "../../../hooks/useCopyToClipboard";
66
import { useSearchParams } from "react-router-dom";
77
import { LOGS_GROUP_BY, LOGS_URL_PARAMS } from "../../../constants/logs";
8+
import classNames from "classnames";
9+
import useDeviceDetect from "../../../hooks/useDeviceDetect";
810

911
interface Props {
1012
field: string;
@@ -13,6 +15,7 @@ interface Props {
1315
}
1416

1517
const GroupLogsFieldRow: FC<Props> = ({ field, value, hideGroupButton }) => {
18+
const { isMobile } = useDeviceDetect();
1619
const copyToClipboard = useCopyToClipboard();
1720
const [searchParams, setSearchParams] = useSearchParams();
1821

@@ -54,7 +57,12 @@ const GroupLogsFieldRow: FC<Props> = ({ field, value, hideGroupButton }) => {
5457
}, [copied]);
5558

5659
return (
57-
<tr className="vm-group-logs-row-fields-item">
60+
<tr
61+
className={classNames({
62+
"vm-group-logs-row-fields-item": true,
63+
"vm-group-logs-row-fields-item_mobile": isMobile
64+
})}
65+
>
5866
<td className="vm-group-logs-row-fields-item-controls">
5967
<div className="vm-group-logs-row-fields-item-controls__wrapper">
6068
<Tooltip title={copied ? "Copied" : "Copy to clipboard"}>

0 commit comments

Comments
 (0)