diff --git a/packages/waku/src/lib/plugins/vite-plugin-deploy-deno.ts b/packages/waku/src/lib/plugins/vite-plugin-deploy-deno.ts index 6708ec2e0..88270b6d9 100644 --- a/packages/waku/src/lib/plugins/vite-plugin-deploy-deno.ts +++ b/packages/waku/src/lib/plugins/vite-plugin-deploy-deno.ts @@ -11,8 +11,9 @@ const getServeJsContent = ( distPublic: string, srcEntriesFile: string, ) => ` -import { Hono } from 'https://deno.land/x/hono/mod.ts'; -import { serveStatic } from 'https://deno.land/x/hono/middleware.ts'; +import { Hono } from 'jsr:@hono/hono'; +import { serveStatic } from 'jsr:@hono/hono/deno'; +import { contextStorage } from 'jsr:@hono/hono/context-storage'; import { runner } from 'waku/unstable_hono'; const distDir = '${distDir}'; @@ -21,7 +22,7 @@ const loadEntries = () => import('${srcEntriesFile}'); const env = Deno.env.toObject(); const app = new Hono(); -// app.use(contextStorage()); // Hono v4.6 is not available on deno.land +app.use(contextStorage()); app.use('*', serveStatic({ root: distDir + '/' + publicDir })); app.use('*', runner({ cmd: 'start', loadEntries, env })); app.notFound(async (c) => { @@ -76,6 +77,9 @@ export function deployDenoPlugin(opts: { if (source === `${opts.srcDir}/${SERVE_JS}`) { return source; } + if (source.startsWith('jsr:@hono/hono')) { + return { id: source, external: true }; + } }, load(id) { if (id === `${opts.srcDir}/${SERVE_JS}`) {