Skip to content

Commit 1150aec

Browse files
committed
website: update run web tools.
1 parent f79ae44 commit 1150aec

File tree

6 files changed

+36
-269
lines changed

6 files changed

+36
-269
lines changed

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,9 @@
5757
"@types/react-dom": "17.0.8",
5858
"@types/react-router-dom": "5.1.7",
5959
"@types/react-test-renderer": "17.0.1",
60-
"@uiw/react-markdown-preview": "3.1.1",
60+
"@uiw/react-markdown-preview": "3.1.3",
6161
"@uiw/react-split": "5.7.4",
62+
"@uiw/react-textarea-code-editor": "^1.3.0",
6263
"husky": "6.0.0",
6364
"kkt": "6.10.4",
6465
"lint-staged": "11.0.0",

website/pages/run/Textarea.module.less

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

website/pages/run/Textarea.tsx

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

website/pages/run/index.module.less

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,9 @@
3131
overflow: hidden;
3232
display: flex;
3333
}
34+
35+
.editorCode {
36+
width: 100%;
37+
height: 100%;
38+
overflow: auto;
39+
}

website/pages/run/index.tsx

Lines changed: 28 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import { useEffect, useState } from 'react';
22
import { useLocation, Link } from 'react-router-dom';
33
import Split from '@uiw/react-split';
4+
import CodeEditor from '@uiw/react-textarea-code-editor';
45
import Tag from './Tag';
56
import RunWeb from '../../../';
6-
import TextareaEditor from './Textarea';
77
import styles from './index.module.less';
8-
import './language.less';
98

109
function useQuery() {
1110
return new URLSearchParams(useLocation().search);
@@ -48,18 +47,15 @@ export default function Run() {
4847
<Split lineBar mode="vertical" style={{ minWidth: 120, width: '43%' }}>
4948
<div style={{ height: '40%' }} className={styles.editor}>
5049
<Tag color="#f44336">HTML</Tag>
51-
<TextareaEditor
52-
value={htmlStr}
53-
language="html"
54-
className={htmlStr ? '' : 'empty'}
55-
placeholder="Please enter HTML code."
56-
onPaste={(event) => {
57-
let paste = (event.clipboardData || (window as any).clipboardData).getData('text');
58-
setHtmlStr(paste.replace(/^\n+/g, '').replace(/\n+$/g, ''));
59-
event.preventDefault();
60-
}}
61-
onChange={(evn) => setHtmlStr(evn.target.value)}
62-
/>
50+
<div className={styles.editorCode}>
51+
<CodeEditor
52+
value={htmlStr}
53+
style={{ minHeight: '100%' }}
54+
placeholder="Please enter HTML code."
55+
onChange={(evn) => setHtmlStr(evn.target.value)}
56+
language="html"
57+
/>
58+
</div>
6359
</div>
6460
<div
6561
style={{
@@ -69,18 +65,15 @@ export default function Run() {
6965
className={styles.editor}
7066
>
7167
<Tag color="#f7ac09">JS</Tag>
72-
<TextareaEditor
73-
value={jsStr}
74-
language="js"
75-
className={jsStr ? '' : 'empty'}
76-
placeholder="Please enter JavaScript code."
77-
onPaste={(event) => {
78-
let paste = (event.clipboardData || (window as any).clipboardData).getData('text');
79-
setJsStr(paste.replace(/^\n+/g, '').replace(/\n+$/g, ''));
80-
event.preventDefault();
81-
}}
82-
onChange={(evn) => setJsStr(evn.target.value)}
83-
/>
68+
<div className={styles.editorCode}>
69+
<CodeEditor
70+
value={jsStr}
71+
style={{ minHeight: '100%' }}
72+
placeholder="Please enter JavaScript code."
73+
onChange={(evn) => setJsStr(evn.target.value)}
74+
language="js"
75+
/>
76+
</div>
8477
</div>
8578
<div
8679
style={{
@@ -90,19 +83,15 @@ export default function Run() {
9083
className={styles.editor}
9184
>
9285
<Tag color="#004fd4">CSS</Tag>
93-
<TextareaEditor
94-
value={cssStr}
95-
language="css"
96-
className={cssStr ? '' : 'empty'}
97-
placeholder="Please enter CSS code."
98-
onPasteCapture={(event) => {
99-
let paste = (event.clipboardData || (window as any).clipboardData).getData('text');
100-
paste = paste.replace(/^\n+/g, '').replace(/\n+$/g, '');
101-
setCssStr(paste);
102-
event.preventDefault();
103-
}}
104-
onChange={(evn) => setCssStr(evn.target.value)}
105-
/>
86+
<div className={styles.editorCode}>
87+
<CodeEditor
88+
value={cssStr}
89+
style={{ minHeight: '100%' }}
90+
placeholder="Please enter CSS code."
91+
onChange={(evn) => setCssStr(evn.target.value)}
92+
language="css"
93+
/>
94+
</div>
10695
</div>
10796
</Split>
10897
<div style={{ minWidth: 120, flex: 1 }}>

website/pages/run/language.less

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

0 commit comments

Comments
 (0)