@stacksjs/bun-router 0.0.17 → 0.0.19
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/chunk-2mx7fq49.js +4 -0
- package/dist/chunk-a8p83068.js +103 -0
- package/dist/{chunk-cgptvjdf.js → chunk-y3xq6wq6.js} +1 -1
- package/dist/cli.js +4 -3
- package/dist/container/index.js +1149 -211
- package/dist/container/service-provider.d.ts +3 -3
- package/dist/development/performance-profiler.d.ts +3 -3
- package/dist/development/route-debugger.d.ts +1 -1
- package/dist/development/route-inspector.d.ts +2 -2
- package/dist/index.js +369 -2209
- package/dist/observability/integration.d.ts +1 -1
- package/dist/response/macros.d.ts +1 -1
- package/dist/router/index.d.ts +7 -7
- package/dist/router/router.d.ts +0 -32
- package/dist/testing/performance-testing.d.ts +2 -2
- package/dist/testing/test-client.d.ts +1 -1
- package/dist/testing/websocket-testing.d.ts +1 -1
- package/package.json +7 -7
- package/dist/chunk-1ahs68ys.js +0 -18
- package/dist/chunk-g3ybefhg.js +0 -1923
- package/src/auth.ts +0 -489
- package/src/cache/lru-cache.ts +0 -457
- package/src/cache/middleware-memoization.ts +0 -531
- package/src/cache/route-cache-warmer.ts +0 -486
- package/src/cache/sqlite-cache.ts +0 -783
- package/src/cache/streaming-cache.ts +0 -572
- package/src/cli/colors.ts +0 -29
- package/src/cli/index.ts +0 -287
- package/src/cli/middleware.ts +0 -291
- package/src/cli/openapi.ts +0 -407
- package/src/cli/router.ts +0 -188
- package/src/cli/routes.ts +0 -265
- package/src/cli/utils.ts +0 -531
- package/src/cli.ts +0 -5
- package/src/config.ts +0 -322
- package/src/container/container.ts +0 -786
- package/src/container/contextual-binding.ts +0 -606
- package/src/container/decorators.ts +0 -368
- package/src/container/index.ts +0 -49
- package/src/container/service-provider.ts +0 -596
- package/src/development/hot-reload.ts +0 -673
- package/src/development/index.ts +0 -499
- package/src/development/performance-profiler.ts +0 -717
- package/src/development/route-debugger.ts +0 -527
- package/src/development/route-inspector.ts +0 -749
- package/src/development/typescript-utilities.ts +0 -682
- package/src/docs.ts +0 -397
- package/src/errors/circuit-breaker.ts +0 -733
- package/src/errors/error-handler.ts +0 -569
- package/src/errors/error-reporting.ts +0 -672
- package/src/errors/exceptions.ts +0 -536
- package/src/errors/graceful-degradation.ts +0 -623
- package/src/errors/index.ts +0 -21
- package/src/errors/router-errors.ts +0 -632
- package/src/file-serving/static-files.ts +0 -718
- package/src/index.ts +0 -66
- package/src/middleware/auth.ts +0 -220
- package/src/middleware/content_security_policy.ts +0 -215
- package/src/middleware/cors.ts +0 -142
- package/src/middleware/csrf.ts +0 -166
- package/src/middleware/ddos_protection.ts +0 -279
- package/src/middleware/file_security.ts +0 -191
- package/src/middleware/file_upload.ts +0 -275
- package/src/middleware/helmet.ts +0 -268
- package/src/middleware/index.ts +0 -117
- package/src/middleware/input_validation.ts +0 -453
- package/src/middleware/json_body.ts +0 -37
- package/src/middleware/performance_alerting.ts +0 -540
- package/src/middleware/performance_dashboard.ts +0 -661
- package/src/middleware/performance_monitor.ts +0 -945
- package/src/middleware/pipeline.ts +0 -489
- package/src/middleware/rate_limit.ts +0 -251
- package/src/middleware/request_id.ts +0 -36
- package/src/middleware/request_signing.ts +0 -638
- package/src/middleware/request_tracer.ts +0 -653
- package/src/middleware/response_cache.ts +0 -778
- package/src/middleware/security.ts +0 -482
- package/src/middleware/security_suite.ts +0 -257
- package/src/middleware/session.ts +0 -91
- package/src/model-binding/index.ts +0 -18
- package/src/model-binding/model-middleware.ts +0 -425
- package/src/model-binding/model-registry.ts +0 -550
- package/src/model-binding.ts +0 -370
- package/src/model-resolver-factory.ts +0 -106
- package/src/observability/correlation.ts +0 -691
- package/src/observability/health-checks.ts +0 -729
- package/src/observability/index.ts +0 -184
- package/src/observability/integration.ts +0 -548
- package/src/observability/metrics.ts +0 -753
- package/src/observability/tracing.ts +0 -638
- package/src/optimization/bun-utilities.ts +0 -778
- package/src/query-builder-integration.ts +0 -137
- package/src/request/context.ts +0 -109
- package/src/request/enhanced-request.ts +0 -876
- package/src/request/macros.ts +0 -822
- package/src/response/macros.ts +0 -665
- package/src/response/response-factory.ts +0 -596
- package/src/router/api-routes.ts +0 -243
- package/src/router/file-based-routing.ts +0 -697
- package/src/router/file-streaming.ts +0 -383
- package/src/router/fluent-routing.ts +0 -866
- package/src/router/group-organization.ts +0 -229
- package/src/router/handler-resolver.ts +0 -327
- package/src/router/http-methods.ts +0 -407
- package/src/router/index.ts +0 -193
- package/src/router/middleware-groups.ts +0 -222
- package/src/router/middleware-integration.ts +0 -399
- package/src/router/middleware.ts +0 -234
- package/src/router/model-binding.ts +0 -215
- package/src/router/optimized-route-matching.ts +0 -302
- package/src/router/route-building.ts +0 -221
- package/src/router/route-compiler.ts +0 -691
- package/src/router/route-matching.ts +0 -368
- package/src/router/route-trie.ts +0 -450
- package/src/router/router.ts +0 -1616
- package/src/router/server.ts +0 -684
- package/src/router/validation-integration.ts +0 -449
- package/src/router/view-rendering.ts +0 -233
- package/src/router/websocket.ts +0 -100
- package/src/routing/route-caching.ts +0 -402
- package/src/routing/route-throttling.ts +0 -469
- package/src/routing/subdomain-routing.ts +0 -492
- package/src/session/database-store.ts +0 -109
- package/src/session/file-store.ts +0 -148
- package/src/session/index.ts +0 -244
- package/src/session/memory-store.ts +0 -88
- package/src/session/redis-store.ts +0 -93
- package/src/streaming/index.ts +0 -17
- package/src/streaming/sse-handler.ts +0 -482
- package/src/streaming/stream-handler.ts +0 -552
- package/src/testing/auth-testing.ts +0 -448
- package/src/testing/file-upload-testing.ts +0 -543
- package/src/testing/index.ts +0 -10
- package/src/testing/middleware-testing.ts +0 -322
- package/src/testing/model-binding-testing.ts +0 -645
- package/src/testing/performance-testing.ts +0 -738
- package/src/testing/test-client.ts +0 -310
- package/src/testing/test-request.ts +0 -315
- package/src/testing/test-response.ts +0 -332
- package/src/testing/types.ts +0 -224
- package/src/testing/websocket-testing.ts +0 -590
- package/src/types/controller-types.ts +0 -385
- package/src/types/core.ts +0 -683
- package/src/types/middleware-types.ts +0 -422
- package/src/types/request-response-augmentation.ts +0 -489
- package/src/types/route-inference.ts +0 -372
- package/src/types.ts +0 -2123
- package/src/url.ts +0 -131
- package/src/utils/index.ts +0 -1
- package/src/utils/query-preservation.ts +0 -201
- package/src/utils.ts +0 -395
- package/src/validation/validator.ts +0 -688
- package/src/websocket/clustering.ts +0 -769
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
// src/errors/exceptions.ts
|
|
3
|
+
class RouterException extends Error {
|
|
4
|
+
code;
|
|
5
|
+
statusCode;
|
|
6
|
+
context;
|
|
7
|
+
retryable;
|
|
8
|
+
severity;
|
|
9
|
+
category;
|
|
10
|
+
timestamp;
|
|
11
|
+
cause;
|
|
12
|
+
constructor(details) {
|
|
13
|
+
super(details.message);
|
|
14
|
+
this.name = this.constructor.name;
|
|
15
|
+
this.code = details.code;
|
|
16
|
+
this.statusCode = details.statusCode || 500;
|
|
17
|
+
this.context = details.context || {};
|
|
18
|
+
this.retryable = details.retryable || false;
|
|
19
|
+
this.severity = details.severity || "medium";
|
|
20
|
+
this.category = details.category || "system";
|
|
21
|
+
this.timestamp = new Date;
|
|
22
|
+
this.cause = details.cause;
|
|
23
|
+
if (Error.captureStackTrace) {
|
|
24
|
+
Error.captureStackTrace(this, this.constructor);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
toJSON() {
|
|
28
|
+
return {
|
|
29
|
+
name: this.name,
|
|
30
|
+
code: this.code,
|
|
31
|
+
message: this.message,
|
|
32
|
+
statusCode: this.statusCode,
|
|
33
|
+
context: this.context,
|
|
34
|
+
retryable: this.retryable,
|
|
35
|
+
severity: this.severity,
|
|
36
|
+
category: this.category,
|
|
37
|
+
timestamp: this.timestamp.toISOString(),
|
|
38
|
+
stack: this.stack,
|
|
39
|
+
cause: this.cause ? {
|
|
40
|
+
name: this.cause.name,
|
|
41
|
+
message: this.cause.message,
|
|
42
|
+
stack: this.cause.stack
|
|
43
|
+
} : undefined
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
toResponse() {
|
|
47
|
+
const body = {
|
|
48
|
+
error: {
|
|
49
|
+
code: this.code,
|
|
50
|
+
message: this.message,
|
|
51
|
+
statusCode: this.statusCode,
|
|
52
|
+
timestamp: this.timestamp.toISOString(),
|
|
53
|
+
requestId: this.context.requestId
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
return new Response(JSON.stringify(body), {
|
|
57
|
+
status: this.statusCode,
|
|
58
|
+
headers: {
|
|
59
|
+
"Content-Type": "application/json",
|
|
60
|
+
"X-Error-Code": this.code,
|
|
61
|
+
"X-Request-ID": this.context.requestId || ""
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
class ValidationException extends RouterException {
|
|
68
|
+
fields;
|
|
69
|
+
constructor(message, fields = {}, context) {
|
|
70
|
+
super({
|
|
71
|
+
code: "VALIDATION_ERROR",
|
|
72
|
+
message,
|
|
73
|
+
statusCode: 400,
|
|
74
|
+
context,
|
|
75
|
+
retryable: false,
|
|
76
|
+
severity: "low",
|
|
77
|
+
category: "validation"
|
|
78
|
+
});
|
|
79
|
+
this.fields = fields;
|
|
80
|
+
}
|
|
81
|
+
toResponse() {
|
|
82
|
+
const body = {
|
|
83
|
+
error: {
|
|
84
|
+
code: this.code,
|
|
85
|
+
message: this.message,
|
|
86
|
+
statusCode: this.statusCode,
|
|
87
|
+
timestamp: this.timestamp.toISOString(),
|
|
88
|
+
requestId: this.context.requestId,
|
|
89
|
+
fields: this.fields
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
return new Response(JSON.stringify(body), {
|
|
93
|
+
status: this.statusCode,
|
|
94
|
+
headers: {
|
|
95
|
+
"Content-Type": "application/json",
|
|
96
|
+
"X-Error-Code": this.code,
|
|
97
|
+
"X-Request-ID": this.context.requestId || ""
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export { RouterException, ValidationException };
|
package/dist/cli.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
1
2
|
// @bun
|
|
2
3
|
import {
|
|
3
4
|
middleware
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import"./chunk-
|
|
5
|
+
} from "./chunk-y3xq6wq6.js";
|
|
6
|
+
import"./chunk-2mx7fq49.js";
|
|
6
7
|
|
|
7
8
|
// src/cli/index.ts
|
|
8
9
|
import process15 from "process";
|
|
@@ -2046,7 +2047,7 @@ function getPrefix() {
|
|
|
2046
2047
|
}
|
|
2047
2048
|
var prefix = getPrefix();
|
|
2048
2049
|
// package.json
|
|
2049
|
-
var version = "0.0.
|
|
2050
|
+
var version = "0.0.19";
|
|
2050
2051
|
|
|
2051
2052
|
// src/cli/middleware.ts
|
|
2052
2053
|
import fs2 from "fs/promises";
|