//
// SPDX-License-Identifier: AGPL-3.0
-import * as React from 'react';
+import React from 'react';
import { StyleRulesCallback, WithStyles, Typography, withStyles } from '@material-ui/core';
-import { ArvadosTheme } from '~/common/custom-theme';
-import * as classNames from 'classnames';
+import { ArvadosTheme } from 'common/custom-theme';
+import classNames from 'classnames';
type CssRules = 'root' | 'space';
lines: string[];
className?: string;
apiResponse?: boolean;
+ containerClassName?: string;
+ fontSize?: number;
}
type CodeSnippetProps = CodeSnippetDataProps & WithStyles<CssRules>;
export const CodeSnippet = withStyles(styles)(
- ({ classes, lines, className, apiResponse }: CodeSnippetProps) =>
- <Typography
- component="div"
- className={classNames(classes.root, className)}>
- {
- lines.map((line: string, index: number) => {
- return <Typography key={index} className={apiResponse ? classes.space : ''} component="pre">{line}</Typography>;
- })
- }
+ ({ classes, lines, className, containerClassName, apiResponse, fontSize }: CodeSnippetProps) =>
+ <Typography
+ component="div"
+ className={classNames(classes.root, containerClassName, className)}>
+ { lines.map((line: string, index: number) => {
+ return <Typography key={index} style={{ fontSize: fontSize }} className={apiResponse ? classes.space : className} component="pre">{line}</Typography>;
+ }) }
</Typography>
);
\ No newline at end of file