summaryrefslogtreecommitdiff
path: root/extension/react-app/src/components/CodeBlock.tsx
diff options
context:
space:
mode:
authorNate Sesti <33237525+sestinj@users.noreply.github.com>2023-06-26 17:19:07 -0700
committerGitHub <noreply@github.com>2023-06-26 17:19:07 -0700
commit1c58e6847470457b15ea577adc4f6b8764ee890c (patch)
tree9440f4ab7648da5b32a183246ad5a49e25888e23 /extension/react-app/src/components/CodeBlock.tsx
parent0862b388dc0f07e45b6daeaec1f8c05925623692 (diff)
parent0d1b867dbe74af225af0e18a41ef0ab153dc18d1 (diff)
downloadsncontinue-1c58e6847470457b15ea577adc4f6b8764ee890c.tar.gz
sncontinue-1c58e6847470457b15ea577adc4f6b8764ee890c.tar.bz2
sncontinue-1c58e6847470457b15ea577adc4f6b8764ee890c.zip
Merge pull request #115 from continuedev/styled-code
adding code syntax highlighting
Diffstat (limited to 'extension/react-app/src/components/CodeBlock.tsx')
-rw-r--r--extension/react-app/src/components/CodeBlock.tsx31
1 files changed, 16 insertions, 15 deletions
diff --git a/extension/react-app/src/components/CodeBlock.tsx b/extension/react-app/src/components/CodeBlock.tsx
index 0aae0bbb..98760fbd 100644
--- a/extension/react-app/src/components/CodeBlock.tsx
+++ b/extension/react-app/src/components/CodeBlock.tsx
@@ -5,28 +5,27 @@ import { defaultBorderRadius, secondaryDark, vscBackground } from ".";
import { Clipboard, CheckCircle } from "@styled-icons/heroicons-outline";
+import StyledCode from "./StyledCode";
+
const StyledPre = styled.pre`
overflow-y: scroll;
word-wrap: normal;
border: 0.5px solid gray;
border-radius: ${defaultBorderRadius};
background-color: ${secondaryDark};
- padding: 8px;
- padding-top: 14px;
- padding-bottom: 16px;
+ position: relative;
`;
-const StyledCode = styled.code``;
+const CopyButtonDiv = styled.div`
+ position: absolute;
+ top: 4px;
+ right: 4px;
+`;
const StyledCopyButton = styled.button<{ visible: boolean }>`
- /* position: relative; */
- float: right;
border: none;
- background-color: ${secondaryDark};
+ background-color: transparent;
cursor: pointer;
- padding: 0;
- /* margin: 4px; */
- margin-top: -6px;
visibility: ${(props) => (props.visible ? "visible" : "hidden")};
`;
@@ -77,11 +76,13 @@ function CodeBlock(props: { language?: string; children: string }) {
setHovered(false);
}}
>
- <CopyButton
- visible={hovered}
- textToCopy={(props.children as any).props.children[0]}
- />
- <StyledCode>{props.children}</StyledCode>
+ <CopyButtonDiv>
+ <CopyButton
+ visible={hovered}
+ textToCopy={(props.children as any).props.children[0]}
+ />
+ </CopyButtonDiv>
+ <StyledCode language={props.language}>{props.children}</StyledCode>
</StyledPre>
);
}