@skgo/sveltekit-adapter 0.18.0 → 0.22.0
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/index.d.ts +4 -0
- package/package.json +1 -1
- package/skgo-adapter/entry.js +8 -8
- package/skgo-adapter/env.js +4 -0
- package/skgo-adapter/prerender.d.ts +4 -0
- package/skgo-adapter/prerender.js +915 -795
- package/skgo-adapter.js +28 -6
package/index.d.ts
CHANGED
|
@@ -7,6 +7,10 @@ interface AdapterOptions {
|
|
|
7
7
|
* @default 'build'
|
|
8
8
|
*/
|
|
9
9
|
out?: string;
|
|
10
|
+
/** Authored Go build-service package, relative to the app's Go module root.
|
|
11
|
+
* Use RunPrerenderService to share renderer defaults with production SSR.
|
|
12
|
+
* Defaults to the generated prerender entry. */
|
|
13
|
+
prerenderPackage?: string;
|
|
10
14
|
/**
|
|
11
15
|
* Whether to write gzip and brotli copies of the assets and the prerendered
|
|
12
16
|
* pages beside them. The Go server serves whichever the browser asked for.
|
package/package.json
CHANGED
package/skgo-adapter/entry.js
CHANGED
|
@@ -60,12 +60,12 @@ function handle_error(error) {
|
|
|
60
60
|
* kit's remote wrappers read during a render are populated. is_in_render is
|
|
61
61
|
* what makes kit refuse a command.
|
|
62
62
|
*/
|
|
63
|
-
function make_state() {
|
|
63
|
+
function make_state(req) {
|
|
64
64
|
return {
|
|
65
|
-
getClientAddress: () =>
|
|
65
|
+
getClientAddress: () => __skgo_client_address(),
|
|
66
66
|
error: false,
|
|
67
67
|
rerouted_url: null,
|
|
68
|
-
depth: 0,
|
|
68
|
+
depth: req.is_sub_request ? 1 : 0,
|
|
69
69
|
remote: {
|
|
70
70
|
data: null,
|
|
71
71
|
implicit: null,
|
|
@@ -171,7 +171,7 @@ function make_event(req, url, serialized) {
|
|
|
171
171
|
serialize: () => ''
|
|
172
172
|
},
|
|
173
173
|
fetch: create_fetch(req, url, serialized),
|
|
174
|
-
getClientAddress: () =>
|
|
174
|
+
getClientAddress: () => __skgo_client_address(),
|
|
175
175
|
locals: {},
|
|
176
176
|
params: req.params ?? {},
|
|
177
177
|
platform: undefined,
|
|
@@ -179,9 +179,9 @@ function make_event(req, url, serialized) {
|
|
|
179
179
|
route: { id: req.route_id ?? null },
|
|
180
180
|
setHeaders: () => {},
|
|
181
181
|
url,
|
|
182
|
-
isDataRequest:
|
|
183
|
-
isSubRequest:
|
|
184
|
-
isRemoteRequest:
|
|
182
|
+
isDataRequest: !!req.is_data_request,
|
|
183
|
+
isSubRequest: !!req.is_sub_request,
|
|
184
|
+
isRemoteRequest: !!req.is_remote_request,
|
|
185
185
|
tracing: { enabled: false }
|
|
186
186
|
};
|
|
187
187
|
}
|
|
@@ -362,7 +362,7 @@ globalThis.__skgo_render = function (req_json) {
|
|
|
362
362
|
try {
|
|
363
363
|
const req = JSON.parse(req_json);
|
|
364
364
|
const url = new URL(req.url);
|
|
365
|
-
const state = make_state();
|
|
365
|
+
const state = make_state(req);
|
|
366
366
|
const serialized = new Set();
|
|
367
367
|
const event = make_event(req, url, serialized);
|
|
368
368
|
const fetched = [];
|
package/skgo-adapter/env.js
CHANGED
|
@@ -338,6 +338,8 @@ export function gojaEnvironment() {
|
|
|
338
338
|
load: {
|
|
339
339
|
order: 'pre',
|
|
340
340
|
handler(id) {
|
|
341
|
+
// Go owns handle at runtime; this build-only hook has no engine code.
|
|
342
|
+
if (/\/src\/hooks\.server\.(?:ts|js)(?:\?|$)/.test(id)) return 'export {};';
|
|
341
343
|
if (/\/\.svelte-kit\/skgo-env-(?:values\.js|runtime\.json)(?:\?|$)/.test(id)) {
|
|
342
344
|
throw new Error('skgo: environment build inputs are private');
|
|
343
345
|
}
|
|
@@ -978,6 +980,8 @@ export function gojaDevEnvironment({ outDir = '.svelte-kit' } = {}) {
|
|
|
978
980
|
load: {
|
|
979
981
|
order: 'pre',
|
|
980
982
|
handler(id) {
|
|
983
|
+
// Go owns handle at runtime; this build-only hook has no engine code.
|
|
984
|
+
if (/\/src\/hooks\.server\.(?:ts|js)(?:\?|$)/.test(id)) return 'export {};';
|
|
981
985
|
if (/\/\.svelte-kit\/skgo-env-(?:values\.js|runtime\.json)(?:\?|$)/.test(id)) {
|
|
982
986
|
throw new Error('skgo: environment build inputs are private');
|
|
983
987
|
}
|
|
@@ -1,2 +1,6 @@
|
|
|
1
1
|
/** Internal bridge used by generated declared-prerender input modules. */
|
|
2
2
|
export function remoteInputs<Input = unknown>(module: string, name: string): Promise<Input[]>;
|
|
3
|
+
|
|
4
|
+
/** Build-only logical request lifecycle used by generated server hooks. */
|
|
5
|
+
export function requestHandle(event: import('@sveltejs/kit').RequestEvent, resolve: (event: import('@sveltejs/kit').RequestEvent, options?: import('@sveltejs/kit/hooks').ResolveOptions) => Promise<Response>): Promise<Response>;
|
|
6
|
+
export function requestFetch(input: Parameters<import('@sveltejs/kit/hooks').HandleFetch>[0]): Promise<Response>;
|