@@ -6,6 +6,10 @@ import Head from '@docusaurus/Head';
66import Layout from '@theme/Layout' ;
77import HomepageFeatures from '@site/src/components/HomepageFeatures' ;
88import CodeEditor from '@site/src/components/CodeEditor2' ;
9+ import { Box , TextField , MenuItem } from '@mui/material' ;
10+ import Select , { SelectChangeEvent } from '@mui/material/Select'
11+
12+
913
1014
1115
@@ -37,6 +41,7 @@ export const defaultLightThemeOption = EditorView.theme(
3741
3842
3943import styles from './index.module.css' ;
44+ import { height } from '@mui/system' ;
4045
4146
4247const languages = [
@@ -48,9 +53,10 @@ const languages = [
4853 name : "Urdu" ,
4954 i18nName : "اردو" ,
5055 direction : "rtl" ,
51- fontFamily : "'Kawkab Mono'" ,
56+ fontFamily : "'Roboto Mono'" ,
5257 toEnglishDict : "'languages/ur/ur_native.lang.yaml'" ,
5358 style : {
59+ fontWeight : "bold" ,
5460 direction : "rtl"
5561 }
5662 } ,
@@ -126,6 +132,7 @@ const IDE = ({basicSetup, ...props}) => {
126132}
127133
128134function HomepageHeader ( ) {
135+
129136 const { siteConfig} = useDocusaurusContext ( ) ;
130137 return (
131138 < header className = { clsx ( 'hero hero--primary' , styles . heroBanner ) } >
@@ -148,7 +155,7 @@ function HomepageHeader() {
148155const initialCodes = [
149156 {
150157 id : "hello_world" ,
151- name : "Simple Hello World" ,
158+ name : " Simple Hello World" ,
152159 en : `print("Hello world!")`
153160 } ,
154161 {
@@ -327,15 +334,54 @@ export default function Home() {
327334 }}></textarea> */ }
328335
329336
337+ { /* *****************************************
338+ ********DIV FOR THE TOP SECTION**************
339+ ***********************************************
340+ *********************************************** */ }
330341
331342< div style = { {
332343 padding : "80px"
344+
333345} } >
334- < select style = { {
346+
347+
348+
349+ < Box width = "250px" >
350+ < TextField select fullWidth label = "Select preset" onChange = { ( e ) => {
351+ console . log ( "e.target.value:" , e . target . value ) ;
352+ console . log ( `languages.find(l => l.id === e.target.value)` , initialCodes . find ( l => l . id === e . target . value ) )
353+ setCode ( initialCodes . find ( l => l . id === e . target . value ) . en ) ;
354+ } }
355+ value = { initialCodes . find ( c => {
356+ console . log ( "c.en === code:" , c . en === code ) ;
357+ return c . en === code
358+ } ) ?. id || "custom" }
359+ key = { code }
360+ >
361+ {
362+ initialCodes . map ( ( l , idx ) => {
363+ return (
364+ < MenuItem value = { l . id } > { l . name } </ MenuItem >
365+ )
366+ } )
367+ }
368+ < MenuItem value = "custom" > Custom</ MenuItem >
369+ </ TextField >
370+
371+ </ Box >
372+
373+
374+
375+
376+ { /* <select style={{
335377 flex: 1,
336- // width: "100%",
378+ // // width: "100%",
337379 margin: "12px",
338380
381+
382+
383+
384+
339385 }}
340386
341387 onChange={(e) => {
@@ -357,16 +403,38 @@ export default function Home() {
357403 })
358404 }
359405 <option value="custom">Custom</option>
360- </ select >
406+ </select> */ }
361407< div style = { {
362408 display : "flex" ,
363409 flexDirection : "row" ,
410+ marginTop : "12px" ,
364411} } >
365412 < div
366413 style = { {
367414 flex : 1 ,
368415 } } >
369- < select style = { {
416+
417+ { /* **************************Language*********************************** */ }
418+ < Box width = "250px" >
419+ < TextField label = "Select Language" fullWidth select onChange = { ( e ) => {
420+ console . log ( "e.target.value:" , e . target . value ) ;
421+ console . log ( `languages.find(l => l.id === e.target.value)` , languages . find ( l => l . id === e . target . value ) )
422+ setSourceLanguage ( languages . find ( l => l . id === e . target . value ) ) ;
423+ } }
424+ value = { sourceLanguage ?. id }
425+ >
426+ {
427+ languages . map ( ( l , idx ) => {
428+ return (
429+ < MenuItem value = { l . id } > { l . name } </ MenuItem >
430+ )
431+ } )
432+ }
433+
434+ </ TextField >
435+ </ Box >
436+
437+ { /* <select style={{
370438 flex: 1,
371439 // width: "100%",
372440 margin: "12px",
@@ -387,7 +455,7 @@ export default function Home() {
387455 )
388456 })
389457 }
390- </ select >
458+ </select> */ }
391459< IDE id = "python-code-editor1"
392460 value = { code }
393461 mode = "python"
@@ -410,23 +478,51 @@ export default function Home() {
410478 />
411479 </ div >
412480
481+ { /* IDE convertor button */ }
413482 < button style = { {
414- opacity : 0.45
483+ opacity : 0.45 ,
484+ height :"100%" ,
485+ backgroundColor : "transparent" ,
486+ border : "none" ,
487+ cursor : "pointer" ,
488+ width : "5%" ,
489+ fontSize : "1.5rem" ,
415490 } } onClick = { ( ) => {
416491 setTargetLanguage ( sourceLanguage ) ;
417492 setSourceLanguage ( targetLanguage ) ;
418493 var element = document . getElementById ( "python-code-editor2" ) ;
419494 setCode ( element . innerHTML . replaceAll ( "<br>" , "\n" ) . replaceAll ( " " , " " ) )
420495 } } >
421- ⇔
496+ { /* ⇔ */ }
497+ ⇄
422498 </ button >
423499
424500 < div
425501 style = { {
426502 flex : 1 ,
503+ marginLeft : "12px" ,
427504 } } >
505+
506+ < Box width = "250px" >
507+ < TextField select label = "Select Language" fullWidth onChange = { ( e ) => {
508+ console . log ( "e.target.value:" , e . target . value ) ;
509+ console . log ( `languages.find(l => l.id === e.target.value)` , languages . find ( l => l . id === e . target . value ) )
510+ setTargetLanguage ( languages . find ( l => l . id === e . target . value ) ) ;
511+ setIsDetected ( false ) ;
512+ } }
513+ value = { targetLanguage ?. id }
514+ >
515+ {
516+ languages . map ( ( l , idx ) => {
517+ return (
518+ < MenuItem value = { l . id } > { l . name } { targetLanguage ?. id === l . id ? isDetected ? " - detected" : "" : "" } </ MenuItem >
519+ )
520+ } )
521+ }
522+ </ TextField >
523+ </ Box >
428524
429- < select style = { {
525+ { /* <select style={{
430526 flex: 1,
431527 // width: "100%",
432528 margin: "12px",
@@ -448,7 +544,7 @@ export default function Home() {
448544 )
449545 })
450546 }
451- </ select >
547+ </select> */ }
452548< IDE
453549 id = "python-code-editor2"
454550 // value={code
0 commit comments