1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-19 13:29:41 +02:00

refactor(ui/editor): migrate code-editor to react [EE-4848] (#8257)

This commit is contained in:
Chaim Lev-Ari 2023-02-23 10:40:31 +05:30 committed by GitHub
parent 273a3f9a10
commit 5507b1e8c9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 259 additions and 130 deletions

View file

@ -0,0 +1,41 @@
import CodeMirror from '@uiw/react-codemirror';
import { StreamLanguage } from '@codemirror/language';
import { yaml } from '@codemirror/legacy-modes/mode/yaml';
import { useMemo } from 'react';
interface Props {
id: string;
placeholder?: string;
yaml?: boolean;
readonly?: boolean;
onChange: (value: string) => void;
value: string;
height?: string;
}
export function CodeEditor({
id,
onChange,
placeholder,
readonly,
value,
height = '500px',
yaml: isYaml,
}: Props) {
const extensions = useMemo(
() => (isYaml ? [StreamLanguage.define(yaml)] : []),
[isYaml]
);
return (
<CodeMirror
value={value}
onChange={onChange}
readOnly={readonly}
placeholder={placeholder}
id={id}
extensions={extensions}
height={height}
/>
);
}