Switch to styled-components for compare components

This commit is contained in:
Koen Vlaswinkel
2023-12-06 11:04:45 +01:00
parent cce858561f
commit b421a1916c
3 changed files with 28 additions and 27 deletions

View File

@@ -1,5 +1,6 @@
import * as React from "react";
import { useState, useEffect } from "react";
import { styled } from "styled-components";
import {
ToCompareViewMessage,
@@ -21,6 +22,18 @@ const emptyComparison: SetComparisonsMessage = {
message: "Empty comparison",
};
const Header = styled.div`
display: flex;
`;
const HeaderTitle = styled.div`
margin: 0 1.5rem;
`;
const Message = styled.div`
padding: 1.5rem;
`;
export function Compare(_: Record<string, never>): JSX.Element {
const [comparison, setComparison] =
useState<SetComparisonsMessage>(emptyComparison);
@@ -57,8 +70,8 @@ export function Compare(_: Record<string, never>): JSX.Element {
try {
return (
<>
<div className="vscode-codeql__compare-header">
<div className="vscode-codeql__compare-header-item">Comparing:</div>
<Header>
<HeaderTitle>Comparing:</HeaderTitle>
<CompareSelector
availableResultSets={comparison.commonResultSetNames}
currentResultSetName={comparison.currentResultSetName}
@@ -66,11 +79,11 @@ export function Compare(_: Record<string, never>): JSX.Element {
vscode.postMessage({ t: "changeCompare", newResultSetName })
}
/>
</div>
</Header>
{hasRows ? (
<CompareTable comparison={comparison}></CompareTable>
) : (
<div className="vscode-codeql__compare-message">{message}</div>
<Message>{message}</Message>
)}
</>
);

View File

@@ -20,6 +20,15 @@ const OpenButton = styled(TextButton)`
padding: 0;
`;
const Table = styled.table`
margin: 20px 0;
width: 100%;
& > tbody {
vertical-align: top;
}
`;
export default function CompareTable(props: Props) {
const comparison = props.comparison;
const result = props.comparison.result!;
@@ -50,7 +59,7 @@ export default function CompareTable(props: Props) {
}
return (
<table className="vscode-codeql__compare-body">
<Table>
<thead>
<tr>
<td>
@@ -97,6 +106,6 @@ export default function CompareTable(props: Props) {
</td>
</tr>
</tbody>
</table>
</Table>
);
}

View File

@@ -168,27 +168,6 @@ td.vscode-codeql__path-index-cell {
opacity: 0.6;
}
.vscode-codeql__compare-header {
display: flex;
}
.vscode-codeql__compare-header-item {
margin: 0 1.5rem;
}
.vscode-codeql__compare-message {
padding: 1.5rem;
}
.vscode-codeql__compare-body {
margin: 20px 0;
width: 100%;
}
.vscode-codeql__compare-body > tbody {
vertical-align: top;
}
.vscode-codeql__empty-query-message {
height: 300px;
display: flex;