File size: 1,604 Bytes
cce8120
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/usr/bin/env bash
set -euo pipefail

mkdir -p components/layout

cat > components/layout/WorkspaceLayout.jsx <<'EOC'
"use client";

import ActivityBar from "../sidebar/ActivityBar";
import ProductionFileExplorer from "../explorer/ProductionFileExplorer";
import ProductionCodeEditor from "../editor/ProductionCodeEditor";
import ProductionTerminal from "../terminal/ProductionTerminal";
import DevicePreview from "../device/DevicePreview";
import BuildCenter from "../build/BuildCenter";
import ProductionAIChat from "../chat/ProductionAIChat";
import StatusBar from "../statusbar/StatusBar";

export default function WorkspaceLayout(){

return(

<div className="flex h-screen w-screen bg-slate-950 text-white overflow-hidden">

<ActivityBar/>

<div className="w-72 border-r border-slate-800">
<ProductionFileExplorer projectId="default"/>
</div>

<div className="flex flex-1 flex-col">

<div className="flex flex-1">

<div className="flex-[2] border-r border-slate-800">
<ProductionCodeEditor/>
</div>

<div className="w-[430px] border-r border-slate-800">
<DevicePreview/>
</div>

<div className="w-[420px]">
<ProductionAIChat/>
</div>

</div>

<div className="grid h-80 grid-cols-2 border-t border-slate-800">

<div className="border-r border-slate-800">
<ProductionTerminal/>
</div>

<div>
<BuildCenter/>
</div>

</div>

<StatusBar/>

</div>

</div>

);

}
EOC

cat > components/layout/index.js <<'EOC'
export {default} from "./WorkspaceLayout";
EOC

echo "[1/4] Verify..."

test -f components/layout/WorkspaceLayout.jsx
test -f components/layout/index.js

echo "[2/4] Workspace Layout installed."