0.0.1Updated 3 days ago
import { App, staticFiles } from "fresh";
import { AppWrapper } from "./views/_wrapper.tsx";
import { State } from "./types/state.d.ts";
import { Page } from "./types/page.d.ts";

export const app = new App<State>();

app.use(staticFiles());

app.appWrapper(AppWrapper);

// Pass a shared value from a middleware
app.use(async (ctx) => {
  ctx.state.test = "hello";
  ctx.state.render = (Page: Page) => {
    return ctx.render(<Page ctx={ctx} />);
  }
  return await ctx.next();
});

import { IndexRouter } from "./routers/index.router.ts";

app.mountApp('/', IndexRouter);

console.log(import.meta.url);

if(import.meta.url.startsWith('http')) {
  app.listen({});
}