Skip to content

Commit 7d7bbdf

Browse files
committed
fix divider
1 parent 9272d9d commit 7d7bbdf

File tree

5 files changed

+80
-73
lines changed

5 files changed

+80
-73
lines changed

package-lock.json

Lines changed: 30 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,9 @@
4444
"@mdx-js/loader": "^3.1.0",
4545
"@node-cli/static-server": "^3.1.4",
4646
"@react-router/node": "^7.8.1",
47+
"@replit/codemirror-vim": "^6.3.0",
4748
"@rescript/react": "^0.14.0-rc.1",
4849
"@rescript/webapi": "^0.1.0-experimental-29db5f4",
49-
"@replit/codemirror-vim": "^6.3.0",
5050
"docson": "^2.1.0",
5151
"escodegen": "^2.1.0",
5252
"eslint-config-next": "^13.1.1",
@@ -90,6 +90,7 @@
9090
"prettier": "^3.6.2",
9191
"reanalyze": "^2.16.0",
9292
"tailwindcss": "^4",
93-
"vite": "^7.0.6"
93+
"vite": "^7.0.6",
94+
"vite-plugin-env-compatible": "^2.0.1"
9495
}
95-
}
96+
}

src/Playground.res

Lines changed: 2 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6,32 +6,6 @@ module Api = RescriptCompilerApi
66
type layout = Column | Row
77
type tab = JavaScript | Output | Problems | Settings
88

9-
%%raw(`
10-
import "../styles/main.css";
11-
import "../styles/_hljs.css";
12-
import "../styles/utils.css";
13-
14-
import hljs from 'highlight.js/lib/core';
15-
import bash from 'highlight.js/lib/languages/bash';
16-
import css from 'highlight.js/lib/languages/css';
17-
import diff from 'highlight.js/lib/languages/diff';
18-
import javascript from 'highlight.js/lib/languages/javascript';
19-
import json from 'highlight.js/lib/languages/json';
20-
import text from 'highlight.js/lib/languages/plaintext';
21-
import html from 'highlight.js/lib/languages/xml';
22-
import rescript from 'highlightjs-rescript';
23-
24-
hljs.registerLanguage('rescript', rescript)
25-
hljs.registerLanguage('javascript', javascript)
26-
hljs.registerLanguage('css', css)
27-
hljs.registerLanguage('ts', javascript)
28-
hljs.registerLanguage('sh', bash)
29-
hljs.registerLanguage('json', json)
30-
hljs.registerLanguage('text', text)
31-
hljs.registerLanguage('html', html)
32-
hljs.registerLanguage('diff', diff)
33-
`)
34-
359
module JsxCompilation = {
3610
type t =
3711
| Plain
@@ -1963,7 +1937,7 @@ let make = (~bundleBaseUrl: string, ~versions: array<string>) => {
19631937
// Left Panel
19641938
<div
19651939
ref={ReactDOM.Ref.domRef((Obj.magic(leftPanelRef): React.ref<Nullable.t<Dom.element>>))}
1966-
className={`${layout == Column ? "h-2/4" : "h-full!"} ${layout == Column
1940+
className={`overflow-scroll ${layout == Column ? "h-2/4" : "h-full!"} ${layout == Column
19671941
? "w-full"
19681942
: "w-[50%]"}`}
19691943
>
@@ -1995,7 +1969,7 @@ let make = (~bundleBaseUrl: string, ~versions: array<string>) => {
19951969
<div
19961970
ref={ReactDOM.Ref.domRef((Obj.magic(separatorRef): React.ref<Nullable.t<Dom.element>>))}
19971971
// TODO: touch-none not applied
1998-
className={`flex items-center justify-center touch-none select-none bg-gray-70 opacity-30 hover:opacity-50 rounded-lg h-full ${layout ==
1972+
className={`flex items-center justify-center touch-none select-none bg-gray-70 opacity-30 hover:opacity-50 rounded-lg ${layout ==
19991973
Column
20001974
? "cursor-row-resize"
20011975
: "cursor-col-resize"}`}

src/common/CompilerManagerHook.res

Lines changed: 42 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -575,47 +575,48 @@ let useCompilerManager = (
575575
| _ => Ready(ready)
576576
}
577577
)
578-
| Executing({state, jsCode}) => ()
579-
// open Babel
580-
581-
// let ast = Parser.parse(jsCode, {sourceType: "module"})
582-
// let {entryPointExists, code, imports} = PlaygroundValidator.validate(ast)
583-
// let imports = imports->Dict.mapValues(path => {
584-
// let filename = path->String.slice(~start=9) // the part after "./stdlib/"
585-
// let filename = switch state.selected.id {
586-
// | {major: 12, minor: 0, patch: 0, preRelease: Some(Alpha(alpha))} if alpha < 8 =>
587-
// let filename = if filename->String.startsWith("core__") {
588-
// filename->String.slice(~start=6)
589-
// } else {
590-
// filename
591-
// }
592-
// capitalizeFirstLetter(filename)
593-
// | {major} if major < 12 && filename->String.startsWith("core__") =>
594-
// capitalizeFirstLetter(filename)
595-
// | _ => filename
596-
// }
597-
// let compilerVersion = switch state.selected.id {
598-
// | {major: 12, minor: 0, patch: 0, preRelease: Some(Alpha(alpha))} if alpha < 9 => {
599-
// Semver.major: 12,
600-
// minor: 0,
601-
// patch: 0,
602-
// preRelease: Some(Alpha(9)),
603-
// }
604-
// | {major, minor} if (major === 11 && minor < 2) || major < 11 => {
605-
// major: 11,
606-
// minor: 2,
607-
// patch: 0,
608-
// preRelease: Some(Beta(2)),
609-
// }
610-
// | version => version
611-
// }
612-
// CdnMeta.getStdlibRuntimeUrl(bundleBaseUrl, compilerVersion, filename)
613-
// })
614-
615-
// entryPointExists
616-
// ? code->wrapReactApp->EvalIFrame.sendOutput(imports)
617-
// : EvalIFrame.sendOutput(code, imports)
618-
// setState(_ => Ready({...state, logs: [], validReactCode: entryPointExists}))
578+
| Executing({state, jsCode}) =>
579+
()
580+
open Babel
581+
582+
let ast = Parser.parse(jsCode, {sourceType: "module"})
583+
let {entryPointExists, code, imports} = PlaygroundValidator.validate(ast)
584+
let imports = imports->Dict.mapValues(path => {
585+
let filename = path->String.slice(~start=9) // the part after "./stdlib/"
586+
let filename = switch state.selected.id {
587+
| {major: 12, minor: 0, patch: 0, preRelease: Some(Alpha(alpha))} if alpha < 8 =>
588+
let filename = if filename->String.startsWith("core__") {
589+
filename->String.slice(~start=6)
590+
} else {
591+
filename
592+
}
593+
capitalizeFirstLetter(filename)
594+
| {major} if major < 12 && filename->String.startsWith("core__") =>
595+
capitalizeFirstLetter(filename)
596+
| _ => filename
597+
}
598+
let compilerVersion = switch state.selected.id {
599+
| {major: 12, minor: 0, patch: 0, preRelease: Some(Alpha(alpha))} if alpha < 9 => {
600+
Semver.major: 12,
601+
minor: 0,
602+
patch: 0,
603+
preRelease: Some(Alpha(9)),
604+
}
605+
| {major, minor} if (major === 11 && minor < 2) || major < 11 => {
606+
major: 11,
607+
minor: 2,
608+
patch: 0,
609+
preRelease: Some(Beta(2)),
610+
}
611+
| version => version
612+
}
613+
CdnMeta.getStdlibRuntimeUrl(bundleBaseUrl, compilerVersion, filename)
614+
})
615+
616+
entryPointExists
617+
? code->wrapReactApp->EvalIFrame.sendOutput(imports)
618+
: EvalIFrame.sendOutput(code, imports)
619+
setState(_ => Ready({...state, logs: [], validReactCode: entryPointExists}))
619620
| SetupFailed(_) => ()
620621
| Ready(ready) =>
621622
let url = createUrl((pathname :> string), ready)

vite.config.mjs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
import { reactRouter } from "@react-router/dev/vite";
22
import tailwindcss from '@tailwindcss/vite';
33
import { defineConfig } from "vite";
4+
import env from 'vite-plugin-env-compatible'
45

56
export default defineConfig({
67
plugins: [
78
tailwindcss(),
89
reactRouter({
910
ssr: true,
1011
}),
12+
env({ prefix: 'PUBLIC_' })
1113
],
1214
build: {
1315
sourcemap: true

0 commit comments

Comments
 (0)