#!/usr/bin/env bash set -euo pipefail echo "[1/10] Creating Low-Code Workspace..." mkdir -p services/lowcode mkdir -p hooks mkdir -p components/lowcode echo "[2/10] Installing packages..." npm install reactflow cat > services/lowcode/client.js <<'EOC' import api from "../api"; const lowcode={ list:async()=>{ const {data}=await api.get("/api/lowcode/workflows"); return data; }, load:async(id)=>{ const {data}=await api.get(`/api/lowcode/workflows/${id}`); return data; }, save:async(payload)=>{ const {data}=await api.post("/api/lowcode/workflows",payload); return data; }, run:async(id)=>{ const {data}=await api.post(`/api/lowcode/workflows/${id}/run`); return data; }, delete:async(id)=>{ const {data}=await api.delete(`/api/lowcode/workflows/${id}`); return data; } }; export default lowcode; EOC cat > hooks/useLowCode.js <<'EOC' "use client"; import {useState} from "react"; import lowcode from "../services/lowcode/client"; export default function useLowCode(){ const [loading,setLoading]=useState(false); async function run(fn,...args){ setLoading(true); try{ return await fn(...args); } finally{ setLoading(false); } } return{ loading, list:(...a)=>run(lowcode.list,...a), load:(...a)=>run(lowcode.load,...a), save:(...a)=>run(lowcode.save,...a), runWorkflow:(...a)=>run(lowcode.run,...a), remove:(...a)=>run(lowcode.delete,...a) }; } EOC cat > components/lowcode/ProductionLowCode.jsx <<'EOC' "use client"; import { ReactFlow, Background, Controls, MiniMap } from "reactflow"; import "reactflow/dist/style.css"; export default function ProductionLowCode(){ return(