@ruvyxa/adapter-netlify 1.1.4 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -37
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +7 -36
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAgD,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAgD,MAAM,cAAc,CAAA;AAiBzF;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;OAkBG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAgMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,OAAO,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CA8JpE;eAEc,OAAO"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { readFileSync } from 'node:fs';
|
|
2
|
-
import { CLIENT_BUNDLE_PREFIX, clientBuildOutput, documentCacheOptionsSource, isrTemporaryCacheSource, DEFAULT_SECURITY_HEADERS, IMMUTABLE_CACHE_CONTROL, nonPublishableStrategies, projectRelativeOutDir, PUBLIC_ASSET_CACHE_CONTROL, publicAssetGlobs, runtimeBuildPolicy, validateBuildContext, } from '@ruvyxa/core';
|
|
2
|
+
import { CLIENT_BUNDLE_PREFIX, clientBuildOutput, documentCacheOptionsSource, isrTemporaryCacheSource, platformDocumentStoreSource, DEFAULT_SECURITY_HEADERS, IMMUTABLE_CACHE_CONTROL, nonPublishableStrategies, projectRelativeOutDir, PUBLIC_ASSET_CACHE_CONTROL, publicAssetGlobs, runtimeBuildPolicy, validateBuildContext, } from '@ruvyxa/core';
|
|
3
3
|
/**
|
|
4
4
|
* Netlify Functions v2 handler source code.
|
|
5
5
|
*
|
|
@@ -9,7 +9,7 @@ import { CLIENT_BUNDLE_PREFIX, clientBuildOutput, documentCacheOptionsSource, is
|
|
|
9
9
|
*/
|
|
10
10
|
function netlifyHandlerSource(runtimePolicy, functionConfig, buildId) {
|
|
11
11
|
return `import { createHandler, prerenderRelativePath } from './serverless-handler.mjs';
|
|
12
|
-
import {
|
|
12
|
+
import { projectProxy, documentCacheHandler, loadActionModule, loadRouteModule } from './route-modules.mjs';
|
|
13
13
|
// Netlify bundles the function with esbuild, so anything the deployed code
|
|
14
14
|
// needs must be reachable through the module graph. A sibling manifest.json
|
|
15
15
|
// read from import.meta.dirname is not, and never reaches /var/task.
|
|
@@ -64,49 +64,19 @@ async function purgeDurableCache(pathname) {
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
|
|
68
|
-
const html = readFileSync(htmlPath, 'utf8');
|
|
69
|
-
const stale = Date.now() - statSync(htmlPath).mtimeMs >= revalidate * 1000;
|
|
70
|
-
return { html, stale };
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
// Named rather than passed inline, so a project that declares \`cache.handler\`
|
|
74
|
-
// can stand its own store in front of these. See \`documentCacheOptionsSource\`
|
|
75
|
-
// in \`@ruvyxa/core\`; the registry supplies \`documentCacheHandler\`.
|
|
76
|
-
const platformReadPrerendered = (pathname, revalidate = 60) => {
|
|
77
|
-
// prerenderRelativePath rejects any request path that cannot be mapped to a
|
|
78
|
-
// location inside the cache directories, so reads can never escape them.
|
|
79
|
-
const relative = prerenderRelativePath(pathname);
|
|
80
|
-
if (relative === null) return null;
|
|
81
|
-
try {
|
|
82
|
-
return readEntry(path.join(isrCacheDir, relative), revalidate);
|
|
83
|
-
} catch {
|
|
84
|
-
// fall through to the bundled prerender output
|
|
85
|
-
}
|
|
86
|
-
try {
|
|
87
|
-
return readEntry(path.join(prerenderDir, relative), revalidate);
|
|
88
|
-
} catch {
|
|
89
|
-
return null;
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
const platformWritePrerendered = (pathname, html, revalidate, forced) => {
|
|
94
|
-
const relative = prerenderRelativePath(pathname);
|
|
95
|
-
if (relative === null) return;
|
|
96
|
-
const htmlPath = path.join(isrCacheDir, relative);
|
|
97
|
-
mkdirSync(path.dirname(htmlPath), { recursive: true });
|
|
98
|
-
writeFileSync(htmlPath, html, 'utf8');
|
|
99
|
-
if (forced === true) return purgeDurableCache(pathname);
|
|
100
|
-
};
|
|
67
|
+
${platformDocumentStoreSource({ onForcedWrite: 'purgeDurableCache' })}
|
|
101
68
|
|
|
102
69
|
const handler = createHandler({
|
|
103
70
|
routes: manifest.routes,
|
|
104
71
|
middleware: runtimePolicy.middleware,
|
|
72
|
+
headers: runtimePolicy.headers,
|
|
73
|
+
redirects: runtimePolicy.redirects,
|
|
74
|
+
rewrites: runtimePolicy.rewrites,
|
|
105
75
|
i18n: manifest.i18n,
|
|
106
76
|
importPage: loadRouteModule,
|
|
107
77
|
importApi: loadRouteModule,
|
|
108
78
|
importAction: loadActionModule,
|
|
109
|
-
|
|
79
|
+
proxy: projectProxy,
|
|
110
80
|
security: runtimePolicy.security,
|
|
111
81
|
${documentCacheOptionsSource('platformReadPrerendered', 'platformWritePrerendered')}
|
|
112
82
|
// The project's own not-found page, pre-rendered by the build and carried
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAGtC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,cAAc,CAAA;AA0CrB;;;;;;GAMG;AACH,SAAS,oBAAoB,CAC3B,aAAsB,EACtB,cAAqC,EACrC,OAAe;IAEf,OAAO;;;;;;;;;;;wBAWe,IAAI,CAAC,SAAS,CAAC,aAAa,IAAI,EAAE,CAAC;;;;;;;;EAQzD,uBAAuB,CAAC,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ruvyxa/adapter-netlify",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.5",
|
|
4
4
|
"description": "Shape Ruvyxa builds for Netlify functions and assets with a small typed adapter contract.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
}
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
|
-
"@ruvyxa/core": "^1.1.
|
|
59
|
+
"@ruvyxa/core": "^1.1.5"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
62
|
"@types/node": "24.13.3"
|
package/src/index.ts
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
clientBuildOutput,
|
|
7
7
|
documentCacheOptionsSource,
|
|
8
8
|
isrTemporaryCacheSource,
|
|
9
|
+
platformDocumentStoreSource,
|
|
9
10
|
DEFAULT_SECURITY_HEADERS,
|
|
10
11
|
IMMUTABLE_CACHE_CONTROL,
|
|
11
12
|
nonPublishableStrategies,
|
|
@@ -69,7 +70,7 @@ function netlifyHandlerSource(
|
|
|
69
70
|
buildId: string,
|
|
70
71
|
): string {
|
|
71
72
|
return `import { createHandler, prerenderRelativePath } from './serverless-handler.mjs';
|
|
72
|
-
import {
|
|
73
|
+
import { projectProxy, documentCacheHandler, loadActionModule, loadRouteModule } from './route-modules.mjs';
|
|
73
74
|
// Netlify bundles the function with esbuild, so anything the deployed code
|
|
74
75
|
// needs must be reachable through the module graph. A sibling manifest.json
|
|
75
76
|
// read from import.meta.dirname is not, and never reaches /var/task.
|
|
@@ -124,49 +125,19 @@ async function purgeDurableCache(pathname) {
|
|
|
124
125
|
}
|
|
125
126
|
}
|
|
126
127
|
|
|
127
|
-
|
|
128
|
-
const html = readFileSync(htmlPath, 'utf8');
|
|
129
|
-
const stale = Date.now() - statSync(htmlPath).mtimeMs >= revalidate * 1000;
|
|
130
|
-
return { html, stale };
|
|
131
|
-
};
|
|
132
|
-
|
|
133
|
-
// Named rather than passed inline, so a project that declares \`cache.handler\`
|
|
134
|
-
// can stand its own store in front of these. See \`documentCacheOptionsSource\`
|
|
135
|
-
// in \`@ruvyxa/core\`; the registry supplies \`documentCacheHandler\`.
|
|
136
|
-
const platformReadPrerendered = (pathname, revalidate = 60) => {
|
|
137
|
-
// prerenderRelativePath rejects any request path that cannot be mapped to a
|
|
138
|
-
// location inside the cache directories, so reads can never escape them.
|
|
139
|
-
const relative = prerenderRelativePath(pathname);
|
|
140
|
-
if (relative === null) return null;
|
|
141
|
-
try {
|
|
142
|
-
return readEntry(path.join(isrCacheDir, relative), revalidate);
|
|
143
|
-
} catch {
|
|
144
|
-
// fall through to the bundled prerender output
|
|
145
|
-
}
|
|
146
|
-
try {
|
|
147
|
-
return readEntry(path.join(prerenderDir, relative), revalidate);
|
|
148
|
-
} catch {
|
|
149
|
-
return null;
|
|
150
|
-
}
|
|
151
|
-
};
|
|
152
|
-
|
|
153
|
-
const platformWritePrerendered = (pathname, html, revalidate, forced) => {
|
|
154
|
-
const relative = prerenderRelativePath(pathname);
|
|
155
|
-
if (relative === null) return;
|
|
156
|
-
const htmlPath = path.join(isrCacheDir, relative);
|
|
157
|
-
mkdirSync(path.dirname(htmlPath), { recursive: true });
|
|
158
|
-
writeFileSync(htmlPath, html, 'utf8');
|
|
159
|
-
if (forced === true) return purgeDurableCache(pathname);
|
|
160
|
-
};
|
|
128
|
+
${platformDocumentStoreSource({ onForcedWrite: 'purgeDurableCache' })}
|
|
161
129
|
|
|
162
130
|
const handler = createHandler({
|
|
163
131
|
routes: manifest.routes,
|
|
164
132
|
middleware: runtimePolicy.middleware,
|
|
133
|
+
headers: runtimePolicy.headers,
|
|
134
|
+
redirects: runtimePolicy.redirects,
|
|
135
|
+
rewrites: runtimePolicy.rewrites,
|
|
165
136
|
i18n: manifest.i18n,
|
|
166
137
|
importPage: loadRouteModule,
|
|
167
138
|
importApi: loadRouteModule,
|
|
168
139
|
importAction: loadActionModule,
|
|
169
|
-
|
|
140
|
+
proxy: projectProxy,
|
|
170
141
|
security: runtimePolicy.security,
|
|
171
142
|
${documentCacheOptionsSource('platformReadPrerendered', 'platformWritePrerendered')}
|
|
172
143
|
// The project's own not-found page, pre-rendered by the build and carried
|