Skip to content

Commit efcade8

Browse files
authored
First pass at using VS Code UI toolkit (#1382)
1 parent 01e1f13 commit efcade8

File tree

8 files changed

+142
-71
lines changed

8 files changed

+142
-71
lines changed

extensions/ql-vscode/package-lock.json

Lines changed: 119 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

extensions/ql-vscode/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1133,6 +1133,7 @@
11331133
"@octokit/rest": "^18.5.6",
11341134
"@primer/octicons-react": "^16.3.0",
11351135
"@primer/react": "^35.0.0",
1136+
"@vscode/webview-ui-toolkit": "^1.0.0",
11361137
"child-process-promise": "^2.2.1",
11371138
"classnames": "~2.2.6",
11381139
"d3": "^6.3.1",

extensions/ql-vscode/src/remote-queries/view/ActionButton.tsx

Lines changed: 0 additions & 22 deletions
This file was deleted.

extensions/ql-vscode/src/remote-queries/view/Badge.tsx

Lines changed: 0 additions & 29 deletions
This file was deleted.

extensions/ql-vscode/src/remote-queries/view/CodePaths.tsx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { TriangleDownIcon, XCircleIcon } from '@primer/octicons-react';
2-
import { ActionList, ActionMenu, Box, Button, Label, Link, Overlay } from '@primer/react';
2+
import { ActionList, ActionMenu, Box, Button, Label, Overlay } from '@primer/react';
3+
import { VSCodeLink } from '@vscode/webview-ui-toolkit/react';
34
import * as React from 'react';
45
import { useRef, useState } from 'react';
56
import styled from 'styled-components';
@@ -135,12 +136,12 @@ const CodePaths = ({
135136

136137
return (
137138
<Box ref={anchorRef}>
138-
<Link
139+
<VSCodeLink
139140
onClick={() => setIsOpen(true)}
140141
ref={linkRef}
141142
sx={{ cursor: 'pointer' }}>
142143
Show paths
143-
</Link>
144+
</VSCodeLink>
144145
{isOpen && (
145146
<Overlay
146147
returnFocusRef={linkRef}

extensions/ql-vscode/src/remote-queries/view/FileCodeSnippet.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import * as React from 'react';
22
import styled from 'styled-components';
33
import { CodeSnippet, FileLink, HighlightedRegion, AnalysisMessage, ResultSeverity } from '../shared/analysis-result';
4-
import { Box, Link } from '@primer/react';
4+
import { Box } from '@primer/react';
55
import VerticalSpace from './VerticalSpace';
66
import { createRemoteFileRef } from '../../pure/location-link-utils';
77
import { parseHighlightedLine, shouldHighlightLine } from '../../pure/sarif-utils';
8+
import { VSCodeLink } from '@vscode/webview-ui-toolkit/react';
89

910
const borderColor = 'var(--vscode-editor-snippetFinalTabstopHighlightBorder)';
1011
const warningColor = '#966C23';
@@ -95,14 +96,15 @@ const Message = ({
9596
case 'text':
9697
return <span key={`token-${index}`}>{token.text}</span>;
9798
case 'location':
98-
return <Link
99+
return <VSCodeLink
100+
style={{ fontFamily: 'var(--vscode-editor-font-family)' }}
99101
key={`token-${index}`}
100102
href={createRemoteFileRef(
101103
token.location.fileLink,
102104
token.location.highlightedRegion?.startLine,
103105
token.location.highlightedRegion?.endLine)}>
104106
{token.text}
105-
</Link>;
107+
</VSCodeLink>;
106108
default:
107109
return <></>;
108110
}
@@ -170,7 +172,7 @@ const FileCodeSnippet = ({
170172
return (
171173
<Container>
172174
<TitleContainer>
173-
<Link href={titleFileUri}>{fileLink.filePath}</Link>
175+
<VSCodeLink href={titleFileUri}>{fileLink.filePath}</VSCodeLink>
174176
</TitleContainer>
175177
</Container>
176178
);
@@ -181,7 +183,7 @@ const FileCodeSnippet = ({
181183
return (
182184
<Container>
183185
<TitleContainer>
184-
<Link href={titleFileUri}>{fileLink.filePath}</Link>
186+
<VSCodeLink href={titleFileUri}>{fileLink.filePath}</VSCodeLink>
185187
</TitleContainer>
186188
<CodeContainer>
187189
{code.map((line, index) => (

extensions/ql-vscode/src/remote-queries/view/RawResultsTable.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import * as React from 'react';
2-
import { Box, Link } from '@primer/react';
2+
import { Box } from '@primer/react';
3+
import { VSCodeLink } from '@vscode/webview-ui-toolkit/react';
34
import { CellValue, RawResultSet, ResultSetSchema } from '../../pure/bqrs-cli-types';
45
import { tryGetRemoteLocation } from '../../pure/bqrs-utils';
56
import { useState } from 'react';
@@ -50,7 +51,7 @@ const Cell = ({
5051
const url = tryGetRemoteLocation(value.url, fileLinkPrefix, sourceLocationPrefix);
5152
const safeLabel = convertNonPrintableChars(value.label);
5253
if (url) {
53-
return <Link href={url}>{safeLabel}</Link>;
54+
return <VSCodeLink href={url}>{safeLabel}</VSCodeLink>;
5455
} else {
5556
return <span>{safeLabel}</span>;
5657
}

0 commit comments

Comments
 (0)