it WORKS
This commit is contained in:
parent
f35e5b83bc
commit
c265f85bc1
3
app.tsx
3
app.tsx
@ -1,8 +1,9 @@
|
|||||||
import ReactDOM from "react-dom/client";
|
import ReactDOM from "react-dom/client";
|
||||||
|
|
||||||
|
|
||||||
export function App(){
|
export function App(){
|
||||||
return <>
|
return <>
|
||||||
<div>lol hey!</div>
|
<div>lol hey 3</div>
|
||||||
</>
|
</>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
18
server.ts
18
server.ts
@ -47,7 +47,7 @@ async function BakeCheck(path:string, type?:"package")
|
|||||||
const lookup:CachedTranspile = await BakeCache[path];
|
const lookup:CachedTranspile = await BakeCache[path];
|
||||||
if(!lookup)
|
if(!lookup)
|
||||||
{
|
{
|
||||||
return BakeForce(path, type);
|
return await BakeForce(path, type);
|
||||||
}
|
}
|
||||||
return lookup;
|
return lookup;
|
||||||
}
|
}
|
||||||
@ -65,9 +65,12 @@ for(const key in denoBody.imports)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
denoBody.imports["react-jsx-runtime-original"] = "/>/npm:react/jsx-runtime";
|
denoBody.imports["react-jsx-runtime-original"] = `${denoBody.imports[denoBody.compilerOptions.jsxImportSource]}/jsx-runtime`;
|
||||||
denoBody.imports["react/jsx-runtime"] = "/^/jsx-runtime.tsx";
|
denoBody.imports["react/jsx-runtime"] = "/^/jsx-runtime.tsx";
|
||||||
|
|
||||||
|
denoBody.imports["react-original"] = denoBody.imports[denoBody.compilerOptions.jsxImportSource];
|
||||||
|
denoBody.imports["react"] = "/^/hmr/hmr-react.tsx";
|
||||||
|
|
||||||
// denoBody.imports["react-original"] = denoBody.imports["react"];
|
// denoBody.imports["react-original"] = denoBody.imports["react"];
|
||||||
// denoBody.imports["react-jsx-runtime-original"] = denoBody.imports[denoBody.compilerOptions.jsxImportSource]+"/jsx-runtime";
|
// denoBody.imports["react-jsx-runtime-original"] = denoBody.imports[denoBody.compilerOptions.jsxImportSource]+"/jsx-runtime";
|
||||||
// denoBody.imports["signals-original"] = denoBody.imports["@preact/signals"];
|
// denoBody.imports["signals-original"] = denoBody.imports["@preact/signals"];
|
||||||
@ -91,7 +94,6 @@ Deno.serve(async(req:Request)=>
|
|||||||
{
|
{
|
||||||
if(req.headers.get("upgrade") == "websocket")
|
if(req.headers.get("upgrade") == "websocket")
|
||||||
{
|
{
|
||||||
console.log(" --serve socket", req.url)
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
const { response, socket } = Deno.upgradeWebSocket(req);
|
const { response, socket } = Deno.upgradeWebSocket(req);
|
||||||
@ -109,32 +111,27 @@ Deno.serve(async(req:Request)=>
|
|||||||
|
|
||||||
const lastPart = parts.at(-1);
|
const lastPart = parts.at(-1);
|
||||||
const extension = extractExtension(lastPart);
|
const extension = extractExtension(lastPart);
|
||||||
console.log("REQUEST:", parts);
|
|
||||||
|
|
||||||
if(parts[0] == keyBundle)
|
if(parts[0] == keyBundle)
|
||||||
{
|
{
|
||||||
const proxiedPath = parts.slice(1).join("/");
|
const proxiedPath = parts.slice(1).join("/");
|
||||||
const transpiled = await BakeCheck(proxiedPath, "package");
|
const transpiled = await BakeCheck(proxiedPath, "package");
|
||||||
console.log(" --serve bundle", proxiedPath);
|
|
||||||
return JSResponse(transpiled[0]);
|
return JSResponse(transpiled[0]);
|
||||||
}
|
}
|
||||||
if(parts[0] == keyAdjacent)
|
if(parts[0] == keyAdjacent)
|
||||||
{
|
{
|
||||||
const proxiedPath = "/"+parts.slice(1).join("/");
|
const proxiedPath = "/"+parts.slice(1).join("/");
|
||||||
const transpiled = await BakeCheck(proxiedPath);
|
const transpiled = await BakeCheck(proxiedPath);
|
||||||
console.log(" --serve adjacent", proxiedPath);
|
|
||||||
return JSResponse(transpiled[0]);
|
return JSResponse(transpiled[0]);
|
||||||
}
|
}
|
||||||
if(keysExtension.includes(extension))
|
if(keysExtension.includes(extension))
|
||||||
{
|
{
|
||||||
console.log(" --serve local file", parts)
|
|
||||||
const transpiled = await BakeCheck(url.pathname);
|
const transpiled = await BakeCheck(url.pathname);
|
||||||
return JSResponse(transpiled[url.searchParams.has(keyReload) ? 0 : 1]);
|
return JSResponse(transpiled[url.searchParams.has(keyReload) ? 0 : 1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!extension)
|
if(!extension)
|
||||||
{
|
{
|
||||||
console.log(" --serving html page", parts);
|
|
||||||
return IndexResponse();
|
return IndexResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -162,11 +159,12 @@ const Watcher =async()=>
|
|||||||
|
|
||||||
if(keysExtension.includes(extension))
|
if(keysExtension.includes(extension))
|
||||||
{
|
{
|
||||||
console.log("File change", path);
|
|
||||||
const key = path.substring(Deno.cwd().length).replaceAll("\\", "/");
|
const key = path.substring(Deno.cwd().length).replaceAll("\\", "/");
|
||||||
|
console.log("File change", path, key);
|
||||||
if(action != "remove")
|
if(action != "remove")
|
||||||
{
|
{
|
||||||
BakeForce(path);
|
await BakeForce(key);
|
||||||
SocketsSend(key);
|
SocketsSend(key);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Loading…
Reference in New Issue
Block a user