summaryrefslogtreecommitdiff
path: root/packages/integrations/deno/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/deno/src')
-rw-r--r--packages/integrations/deno/src/code-constant.ts2
-rw-r--r--packages/integrations/deno/src/index.ts4
-rw-r--r--packages/integrations/deno/src/server.ts21
3 files changed, 8 insertions, 19 deletions
diff --git a/packages/integrations/deno/src/code-constant.ts b/packages/integrations/deno/src/code-constant.ts
deleted file mode 100644
index c59ba30f9..000000000
--- a/packages/integrations/deno/src/code-constant.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export const DEFAULTIMPORT = `import { Server } from "https://deno.land/std@0.167.0/http/server.ts"; \n import { fetch } from "https://deno.land/x/file_fetch/mod.ts";\nimport { fileExtension } from "https://deno.land/x/file_extension@v2.1.0/mod.ts";`;
-export const DEFAULTSTART = `const _start = 'start'; \n if(_start in adapter) { \nadapter[_start](_manifest, _args);}`;
diff --git a/packages/integrations/deno/src/index.ts b/packages/integrations/deno/src/index.ts
index 91f5fd836..11f5adebf 100644
--- a/packages/integrations/deno/src/index.ts
+++ b/packages/integrations/deno/src/index.ts
@@ -3,7 +3,6 @@ import esbuild from 'esbuild';
import * as fs from 'fs';
import * as npath from 'path';
import { fileURLToPath } from 'url';
-import * as CONSTANT from './code-constant';
interface BuildConfig {
server: URL;
@@ -71,8 +70,7 @@ export default function createIntegration(args?: Options): AstroIntegration {
'astro:build:done': async () => {
const entryUrl = new URL(_buildConfig.serverEntry, _buildConfig.server);
const pth = fileURLToPath(entryUrl);
- const content = await fs.readFileSync(pth, 'utf8');
- await fs.writeFileSync(pth, `${CONSTANT.DEFAULTIMPORT}${content}${CONSTANT.DEFAULTSTART}`);
+
await esbuild.build({
target: 'es2020',
platform: 'browser',
diff --git a/packages/integrations/deno/src/server.ts b/packages/integrations/deno/src/server.ts
index 94dce59ce..49da3f270 100644
--- a/packages/integrations/deno/src/server.ts
+++ b/packages/integrations/deno/src/server.ts
@@ -2,13 +2,18 @@
import type { SSRManifest } from 'astro';
import { App } from 'astro/app';
+// @ts-ignore
+import { Server } from 'https://deno.land/std@0.167.0/http/server.ts';
+// @ts-ignore
+import { fetch } from 'https://deno.land/x/file_fetch/mod.ts';
+
+
interface Options {
port?: number;
hostname?: string;
start?: boolean;
}
-// @ts-ignore
let _server: Server | undefined = undefined;
let _startPromise: Promise<void> | undefined = undefined;
@@ -36,18 +41,7 @@ export function start(manifest: SSRManifest, options: Options) {
// try to fetch a static file instead
const url = new URL(request.url);
const localPath = new URL('./' + app.removeBase(url.pathname), clientRoot);
- const stringLocalPath = localPath.toString();
- // @ts-ignore
- const extendName = fileExtension(stringLocalPath);
- const fileResp = await fetch(
- !extendName
- ? `${
- stringLocalPath.endsWith('/')
- ? `${stringLocalPath}index.html`
- : `${stringLocalPath}/index.html`
- }`
- : stringLocalPath
- );
+ const fileResp = await fetch(localPath.toString());
// If the static file can't be found
if (fileResp.status == 404) {
@@ -68,7 +62,6 @@ export function start(manifest: SSRManifest, options: Options) {
};
const port = options.port ?? 8085;
- // @ts-ignore
_server = new Server({
port,
hostname: options.hostname ?? '0.0.0.0',