Skip to content

Commit 187aae1

Browse files
committed
fix: import straight from vendor directory
1 parent 30416b5 commit 187aae1

File tree

10 files changed

+37
-37
lines changed

10 files changed

+37
-37
lines changed

.eslintignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ demos
55
packages/runtime/src/templates/edge
66
packages/runtime/src/templates/edge-shared
77
packages/runtime/src/templates/vendor
8+
packages/runtime/src/templates/vendor.ts
89
packages/runtime/lib
910
packages/runtime/dist-types
1011
jestSetup.js

.vscode/settings.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
"deno.enablePaths": [
33
"packages/runtime/src/templates/edge",
44
"packages/runtime/src/templates/edge-shared",
5+
"packages/runtime/src/templates/vendor",
6+
"packages/runtime/src/templates/vendor.ts",
57
"demos/middleware/.netlify/edge-functions",
68
"demos/server-components/.netlify/edge-functions",
79
],

packages/runtime/fix-import-map.js

Lines changed: 0 additions & 18 deletions
This file was deleted.

packages/runtime/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
"publish:test": "cd .. && npm ci && npm test",
5454
"clean": "rimraf lib dist-types",
5555
"build": "run-s build:*",
56-
"build:vendor": "rimraf src/templates/vendor && deno vendor src/templates/edge/shims.js src/templates/edge-shared/next-utils.ts https://deno.land/x/[email protected]/index.ts --output=src/templates/vendor && node fix-import-map.js",
56+
"build:vendor": "rimraf src/templates/vendor && deno vendor src/templates/vendor.ts --output=src/templates/vendor",
5757
"build:tsc": "tsc",
5858
"watch": "tsc --watch",
5959
"prepare": "npm run build"

packages/runtime/src/helpers/edge.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ export const getEdgeFunctionPatternForPage = ({
356356
export const writeEdgeFunctions = async ({
357357
netlifyConfig,
358358
routesManifest,
359-
constants: { PACKAGE_PATH = '', INTERNAL_EDGE_FUNCTIONS_SRC },
359+
constants: { PACKAGE_PATH = '' },
360360
}: {
361361
netlifyConfig: NetlifyConfig
362362
routesManifest: RoutesManifest
@@ -379,10 +379,6 @@ export const writeEdgeFunctions = async ({
379379
const usesAppDir = nextConfig.experimental?.appDir
380380

381381
await copy(getEdgeTemplatePath('../vendor'), join(edgeFunctionRoot, 'vendor'))
382-
netlifyConfig.functions['*'] = {
383-
deno_import_map: join(INTERNAL_EDGE_FUNCTIONS_SRC, 'vendor', 'import_map.json'),
384-
}
385-
386382
await copy(getEdgeTemplatePath('../edge-shared'), join(edgeFunctionRoot, 'edge-shared'))
387383
await writeJSON(join(edgeFunctionRoot, 'edge-shared', 'nextConfig.json'), nextConfig)
388384
await copy(join(publish, 'prerender-manifest.json'), join(edgeFunctionRoot, 'edge-shared', 'prerender-manifest.json'))

packages/runtime/src/templates/edge-shared/next-utils.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
*/
88

99
// Deno imports
10-
import type { Key } from 'https://deno.land/x/[email protected]/index.ts'
10+
import type { Key } from '../vendor/deno.land/x/[email protected]/index.ts'
1111

12-
import { compile, pathToRegexp } from 'https://deno.land/x/[email protected]/index.ts'
13-
import { getCookies } from 'https://deno.land/std@0.148.0/http/cookie.ts'
12+
import { compile, pathToRegexp } from '../vendor/deno.land/x/[email protected]/index.ts'
13+
import { getCookies } from '../vendor/deno.land/std@0.175.0/http/cookie.ts'
1414

1515
// Inlined/re-implemented types
1616

packages/runtime/src/templates/edge-shared/utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { Context } from 'https://edge.netlify.com'
2-
import { ElementHandlers, HTMLRewriter } from 'https://deno.land/x/[email protected]/index.ts'
2+
import { ElementHandlers, HTMLRewriter } from '../vendor/deno.land/x/[email protected]/index.ts'
33

44
export interface FetchEventResult {
55
response: Response

packages/runtime/src/templates/edge/next-dev.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { NextRequest } from 'https://esm.sh/v91/[email protected]/deno/dist/server/web/spec-extension/request.js'
2-
import { NextResponse } from 'https://esm.sh/v91/[email protected]/deno/dist/server/web/spec-extension/response.js'
3-
import { fromFileUrl } from 'https://deno.land/std@0.151.0/path/mod.ts'
1+
import { NextRequest } from '../vendor/esm.sh/v91/[email protected]/deno/dist/server/web/spec-extension/request.js'
2+
import { NextResponse } from '../vendor/esm.sh/v91/[email protected]/deno/dist/server/web/spec-extension/response.js'
3+
import { fromFileUrl } from '../vendor/deno.land/std@0.175.0/path/mod.ts'
44
import { buildResponse, isFunction } from '../edge-shared/utils.ts'
55

66
globalThis.NFRequestContextMap ||= new Map()

packages/runtime/src/templates/edge/shims.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
// @ts-check
22
// deno-lint-ignore-file prefer-const no-unused-vars
3-
import { decode as _base64Decode } from 'https://deno.land/[email protected]/encoding/base64.ts'
4-
import BufferCompat from 'https://deno.land/[email protected]/node/buffer.ts'
5-
import EventsCompat from 'https://deno.land/[email protected]/node/events.ts'
6-
import AsyncHooksCompat from 'https://deno.land/[email protected]/node/async_hooks.ts'
7-
import AssertCompat from 'https://deno.land/[email protected]/node/assert.ts'
8-
import UtilCompat from 'https://deno.land/[email protected]/node/util.ts'
3+
import { decode as _base64Decode } from '../vendor/deno.land/[email protected]/encoding/base64.ts'
4+
import BufferCompat from '../vendor/deno.land/[email protected]/node/buffer.ts'
5+
import EventsCompat from '../vendor/deno.land/[email protected]/node/events.ts'
6+
import AsyncHooksCompat from '../vendor/deno.land/[email protected]/node/async_hooks.ts'
7+
import AssertCompat from '../vendor/deno.land/[email protected]/node/assert.ts'
8+
import UtilCompat from '../vendor/deno.land/[email protected]/node/util.ts'
99

1010
/**
1111
* These are the shims, polyfills and other kludges to make Next.js work in standards-compliant runtime.
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// this file isn't meant to be imported.
2+
// it's a list of all external modules that we use,
3+
// and we vendor those into the `vendor/` directory
4+
// for consumption in other files.
5+
6+
import 'https://deno.land/[email protected]/encoding/base64.ts'
7+
import 'https://deno.land/[email protected]/http/cookie.ts'
8+
import 'https://deno.land/[email protected]/node/buffer.ts'
9+
import 'https://deno.land/[email protected]/node/events.ts'
10+
import 'https://deno.land/[email protected]/node/async_hooks.ts'
11+
import 'https://deno.land/[email protected]/node/assert.ts'
12+
import 'https://deno.land/[email protected]/node/util.ts'
13+
import 'https://deno.land/[email protected]/path/mod.ts'
14+
15+
import 'https://deno.land/x/[email protected]/index.ts'
16+
import 'https://deno.land/x/[email protected]/index.ts'
17+
18+
import 'https://esm.sh/v91/[email protected]/deno/dist/server/web/spec-extension/request.js'
19+
import 'https://esm.sh/v91/[email protected]/deno/dist/server/web/spec-extension/response.js'

0 commit comments

Comments
 (0)