silgi 0.37.0 → 0.37.1
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/cli/index.mjs +1 -1
- package/dist/core/index.mjs +48 -38
- package/dist/index.mjs +0 -1
- package/dist/runtime/internal/next.mjs +1 -26
- package/dist/runtime/internal/nitro.mjs +1 -32
- package/dist/types/index.d.mts +594 -593
- package/package.json +1 -1
package/dist/cli/index.mjs
CHANGED
package/dist/core/index.mjs
CHANGED
|
@@ -8,7 +8,6 @@ import { klona } from 'klona';
|
|
|
8
8
|
import { useSilgiRuntimeConfig } from 'silgi/runtime';
|
|
9
9
|
import { createStorage as createStorage$1, builtinDrivers, prefixStorage } from 'unstorage';
|
|
10
10
|
import { FastURL, FastResponse } from 'srvx';
|
|
11
|
-
import { isRuntimePresents } from 'silgi/kit';
|
|
12
11
|
export { s as silgiCLICtx, t as tryUseSilgiCLI, u as useSilgiCLI } from '../_chunks/silgiApp.mjs';
|
|
13
12
|
|
|
14
13
|
const silgiCtx = getContext("silgi");
|
|
@@ -532,56 +531,73 @@ function getUrlPrefix(path, method) {
|
|
|
532
531
|
}
|
|
533
532
|
|
|
534
533
|
async function orchestrate(route, event) {
|
|
535
|
-
const input = await parseRequestInput(event.req);
|
|
536
534
|
const silgiCtx = useSilgi();
|
|
537
535
|
const silgiURL = getUrlPrefix(route.route, event.req.method);
|
|
536
|
+
const input = await parseRequestInput(event.req);
|
|
538
537
|
try {
|
|
539
538
|
const routerParams = getRouterParams(event);
|
|
540
539
|
const queryParams = getQuery(event);
|
|
541
|
-
let success = false;
|
|
542
|
-
let cached = false;
|
|
543
|
-
let result;
|
|
544
540
|
const setup = route.setup;
|
|
545
|
-
const
|
|
541
|
+
const cachePromise = cacheExecute(input, route, silgiURL, event);
|
|
542
|
+
const beforeHookPromise = silgiCtx.callHook("fetch:before", {
|
|
543
|
+
url: silgiURL,
|
|
544
|
+
input,
|
|
545
|
+
event,
|
|
546
|
+
route
|
|
547
|
+
});
|
|
548
|
+
const cacheData = await cachePromise;
|
|
549
|
+
await beforeHookPromise;
|
|
546
550
|
if (cacheData?.success) {
|
|
547
|
-
|
|
548
|
-
success = cacheData.success;
|
|
549
|
-
cached = cacheData.cached;
|
|
550
|
-
} else {
|
|
551
|
-
silgiCtx.shared.$fetch = silgiFetch;
|
|
552
|
-
silgiCtx.shared.silgi = silgiCtx;
|
|
553
|
-
result = await setup?.handler(
|
|
554
|
-
{
|
|
555
|
-
args: input,
|
|
556
|
-
parameters: {
|
|
557
|
-
query: queryParams,
|
|
558
|
-
path: routerParams
|
|
559
|
-
}
|
|
560
|
-
},
|
|
561
|
-
silgiCtx.shared,
|
|
551
|
+
await silgiCtx.callHook("fetch:after", {
|
|
562
552
|
event,
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
553
|
+
url: silgiURL,
|
|
554
|
+
input,
|
|
555
|
+
result: cacheData.data,
|
|
556
|
+
success: true,
|
|
557
|
+
// modules: setup.modules,
|
|
558
|
+
route
|
|
559
|
+
});
|
|
560
|
+
return cacheData.data;
|
|
566
561
|
}
|
|
562
|
+
silgiCtx.shared.$fetch = silgiFetch;
|
|
563
|
+
silgiCtx.shared.silgi = silgiCtx;
|
|
564
|
+
const result = await setup?.handler(
|
|
565
|
+
{
|
|
566
|
+
args: input,
|
|
567
|
+
parameters: {
|
|
568
|
+
query: queryParams,
|
|
569
|
+
path: routerParams
|
|
570
|
+
}
|
|
571
|
+
},
|
|
572
|
+
silgiCtx.shared,
|
|
573
|
+
event,
|
|
574
|
+
event.context.source
|
|
575
|
+
);
|
|
567
576
|
await silgiCtx.callHook("fetch:after", {
|
|
577
|
+
event,
|
|
568
578
|
url: silgiURL,
|
|
569
579
|
input,
|
|
570
580
|
result,
|
|
571
|
-
success,
|
|
572
|
-
modules: setup.modules
|
|
581
|
+
success: true,
|
|
582
|
+
// modules: setup.modules,
|
|
583
|
+
route
|
|
573
584
|
});
|
|
574
|
-
if (
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
585
|
+
if (setup.storage && cacheData?.cachedKey) {
|
|
586
|
+
await useSilgiStorage(setup.storage.base).setItem(
|
|
587
|
+
cacheData.cachedKey,
|
|
588
|
+
result,
|
|
589
|
+
// Cast to StorageValue if needed
|
|
590
|
+
setup.storage.options
|
|
591
|
+
);
|
|
578
592
|
}
|
|
579
593
|
return result;
|
|
580
594
|
} catch (err) {
|
|
581
595
|
await silgiCtx.callHook("fetch:error", {
|
|
596
|
+
event,
|
|
582
597
|
input,
|
|
583
598
|
error: err instanceof Error ? err : new Error(String(err)),
|
|
584
|
-
url: silgiURL
|
|
599
|
+
url: silgiURL,
|
|
600
|
+
route
|
|
585
601
|
});
|
|
586
602
|
silgiCtx.captureError(
|
|
587
603
|
silgiCtx,
|
|
@@ -869,17 +885,11 @@ function getEvent(event) {
|
|
|
869
885
|
if (event?.event) {
|
|
870
886
|
return getEvent(event.event);
|
|
871
887
|
}
|
|
872
|
-
if (isRuntimePresents(["h3", "nitro", "nuxt"])) {
|
|
873
|
-
return event;
|
|
874
|
-
}
|
|
875
888
|
return event;
|
|
876
889
|
}
|
|
877
890
|
function getEventContext(event) {
|
|
878
891
|
const _event = getEvent(event);
|
|
879
|
-
|
|
880
|
-
return _event.context;
|
|
881
|
-
}
|
|
882
|
-
return _event;
|
|
892
|
+
return _event.context;
|
|
883
893
|
}
|
|
884
894
|
|
|
885
895
|
function createSchema(params) {
|
package/dist/index.mjs
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { createError,
|
|
1
|
+
import { createError, silgiFetch, useSilgi } from "silgi";
|
|
2
2
|
export function toNextJsHandler(silgiContext = useSilgi()) {
|
|
3
3
|
const handler = async (request) => {
|
|
4
4
|
if (!silgiContext) {
|
|
5
5
|
throw new Error("Silgi context is not defined");
|
|
6
6
|
}
|
|
7
|
-
const silgiURL = getUrlPrefix(request.url, request.method);
|
|
8
7
|
try {
|
|
9
8
|
const res = await silgiFetch(request);
|
|
10
9
|
if (!res.ok) {
|
|
@@ -22,30 +21,6 @@ export function toNextJsHandler(silgiContext = useSilgi()) {
|
|
|
22
21
|
}
|
|
23
22
|
return res;
|
|
24
23
|
} catch (err) {
|
|
25
|
-
if (isError(err)) {
|
|
26
|
-
throw createError({
|
|
27
|
-
statusCode: 500,
|
|
28
|
-
statusMessage: "Internal Server Error",
|
|
29
|
-
cause: err
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
await silgiContext.callHook("fetch:error", {
|
|
33
|
-
error: err instanceof Error ? err : new Error(String(err)),
|
|
34
|
-
url: silgiURL
|
|
35
|
-
});
|
|
36
|
-
silgiContext.captureError(
|
|
37
|
-
silgiContext,
|
|
38
|
-
createError({
|
|
39
|
-
message: err instanceof Error ? err.message : String(err),
|
|
40
|
-
statusCode: 500,
|
|
41
|
-
statusMessage: "Internal Server Error",
|
|
42
|
-
cause: err
|
|
43
|
-
}),
|
|
44
|
-
{
|
|
45
|
-
url: silgiURL,
|
|
46
|
-
tags: ["execute"]
|
|
47
|
-
}
|
|
48
|
-
);
|
|
49
24
|
throw createError({
|
|
50
25
|
statusCode: 500,
|
|
51
26
|
message: "Internal Server Error",
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
|
-
createError as createH3Error,
|
|
3
2
|
defineEventHandler,
|
|
4
|
-
getRequestWebStream
|
|
5
|
-
H3Error
|
|
3
|
+
getRequestWebStream
|
|
6
4
|
} from "h3";
|
|
7
5
|
import {
|
|
8
6
|
createError,
|
|
9
7
|
getUrlPrefix,
|
|
10
|
-
isError,
|
|
11
8
|
silgiFetch,
|
|
12
9
|
useSilgi
|
|
13
10
|
} from "silgi";
|
|
@@ -53,34 +50,6 @@ export async function addNitroApp(silgiContext = useSilgi()) {
|
|
|
53
50
|
}
|
|
54
51
|
return resolvedRoute;
|
|
55
52
|
} catch (err) {
|
|
56
|
-
if (err instanceof H3Error) {
|
|
57
|
-
throw err;
|
|
58
|
-
}
|
|
59
|
-
if (isError(err)) {
|
|
60
|
-
throw createH3Error({
|
|
61
|
-
statusCode: 500,
|
|
62
|
-
statusMessage: "Internal Server Error",
|
|
63
|
-
cause: err
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
await silgiContext.callHook("fetch:error", {
|
|
67
|
-
error: err instanceof Error ? err : new Error(String(err)),
|
|
68
|
-
url: silgiURL
|
|
69
|
-
});
|
|
70
|
-
silgiContext.captureError(
|
|
71
|
-
silgiContext,
|
|
72
|
-
createError({
|
|
73
|
-
message: err instanceof Error ? err.message : String(err),
|
|
74
|
-
statusCode: 500,
|
|
75
|
-
statusMessage: "Internal Server Error",
|
|
76
|
-
cause: err
|
|
77
|
-
}),
|
|
78
|
-
{
|
|
79
|
-
event,
|
|
80
|
-
url: silgiURL,
|
|
81
|
-
tags: ["execute"]
|
|
82
|
-
}
|
|
83
|
-
);
|
|
84
53
|
throw createError({
|
|
85
54
|
statusCode: 500,
|
|
86
55
|
message: "Internal Server Error",
|