hono 2.3.1 → 2.4.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/dist/cjs/compose.js +82 -66
- package/dist/cjs/context.js +159 -144
- package/dist/cjs/hono.js +173 -150
- package/dist/cjs/index.js +31 -11
- package/dist/cjs/middleware/basic-auth/index.js +70 -39
- package/dist/cjs/middleware/bearer-auth/index.js +69 -51
- package/dist/cjs/middleware/cache/index.js +49 -28
- package/dist/cjs/middleware/compress/index.js +39 -16
- package/dist/cjs/middleware/cors/index.js +89 -71
- package/dist/cjs/middleware/etag/index.js +46 -24
- package/dist/cjs/middleware/html/index.js +50 -30
- package/dist/cjs/middleware/jsx/index.js +178 -166
- package/dist/cjs/middleware/jsx/jsx-dev-runtime.js +30 -7
- package/dist/cjs/middleware/jsx/jsx-runtime.js +30 -6
- package/dist/cjs/middleware/jwt/index.js +74 -54
- package/dist/cjs/middleware/logger/index.js +59 -38
- package/dist/cjs/middleware/powered-by/index.js +30 -7
- package/dist/cjs/middleware/pretty-json/index.js +31 -8
- package/dist/cjs/middleware/serve-static/bun.js +56 -38
- package/dist/cjs/middleware/serve-static/index.js +27 -4
- package/dist/cjs/middleware/serve-static/module.js +42 -0
- package/dist/cjs/middleware/serve-static/serve-static.js +58 -39
- package/dist/cjs/middleware/validator/index.js +27 -4
- package/dist/cjs/middleware/validator/middleware.js +125 -91
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/request.js +129 -116
- package/dist/cjs/router/reg-exp-router/index.js +27 -4
- package/dist/cjs/router/reg-exp-router/node.js +108 -97
- package/dist/cjs/router/reg-exp-router/router.js +158 -141
- package/dist/cjs/router/reg-exp-router/trie.js +55 -39
- package/dist/cjs/router/smart-router/index.js +27 -4
- package/dist/cjs/router/smart-router/router.js +70 -49
- package/dist/cjs/router/static-router/index.js +27 -4
- package/dist/cjs/router/static-router/router.js +78 -64
- package/dist/cjs/router/trie-router/index.js +27 -4
- package/dist/cjs/router/trie-router/node.js +167 -159
- package/dist/cjs/router/trie-router/router.js +43 -20
- package/dist/cjs/router.js +35 -6
- package/dist/cjs/types.js +16 -0
- package/dist/cjs/utils/body.js +36 -15
- package/dist/cjs/utils/buffer.js +56 -31
- package/dist/cjs/utils/cloudflare.js +53 -34
- package/dist/cjs/utils/cookie.js +59 -35
- package/dist/cjs/utils/crypto.js +69 -43
- package/dist/cjs/utils/encode.js +92 -65
- package/dist/cjs/utils/filepath.js +39 -22
- package/dist/cjs/utils/html.js +54 -33
- package/dist/cjs/utils/http-status.js +68 -45
- package/dist/cjs/utils/json.js +91 -76
- package/dist/cjs/utils/jwt/index.js +32 -25
- package/dist/cjs/utils/jwt/jwt.js +124 -93
- package/dist/cjs/utils/jwt/types.js +65 -38
- package/dist/cjs/utils/mime.js +110 -87
- package/dist/cjs/utils/object.js +53 -35
- package/dist/cjs/utils/types.js +16 -0
- package/dist/cjs/utils/url.js +89 -78
- package/dist/cjs/validator/rule.js +80 -0
- package/dist/cjs/validator/sanitizer.js +30 -0
- package/dist/cjs/validator/schema.js +16 -0
- package/dist/cjs/validator/validator.js +439 -0
- package/dist/compose.d.ts +4 -3
- package/dist/compose.js +61 -64
- package/dist/context.d.ts +10 -9
- package/dist/context.js +139 -143
- package/dist/hono.d.ts +27 -42
- package/dist/hono.js +153 -149
- package/dist/index.d.ts +4 -1
- package/dist/index.js +9 -9
- package/dist/middleware/basic-auth/index.d.ts +1 -1
- package/dist/middleware/basic-auth/index.js +52 -40
- package/dist/middleware/bearer-auth/index.d.ts +1 -1
- package/dist/middleware/bearer-auth/index.js +48 -49
- package/dist/middleware/cache/index.d.ts +1 -1
- package/dist/middleware/cache/index.js +28 -26
- package/dist/middleware/compress/index.d.ts +1 -1
- package/dist/middleware/compress/index.js +18 -14
- package/dist/middleware/cors/index.d.ts +1 -1
- package/dist/middleware/cors/index.js +68 -69
- package/dist/middleware/etag/index.d.ts +1 -1
- package/dist/middleware/etag/index.js +25 -22
- package/dist/middleware/html/index.js +29 -28
- package/dist/middleware/jsx/index.js +164 -172
- package/dist/middleware/jsx/jsx-dev-runtime.js +9 -5
- package/dist/middleware/jsx/jsx-runtime.js +7 -2
- package/dist/middleware/jwt/index.d.ts +1 -1
- package/dist/middleware/jwt/index.js +53 -52
- package/dist/middleware/logger/index.d.ts +1 -1
- package/dist/middleware/logger/index.js +35 -39
- package/dist/middleware/powered-by/index.d.ts +1 -1
- package/dist/middleware/powered-by/index.js +9 -5
- package/dist/middleware/pretty-json/index.d.ts +1 -1
- package/dist/middleware/pretty-json/index.js +10 -6
- package/dist/middleware/serve-static/bun.d.ts +1 -1
- package/dist/middleware/serve-static/bun.js +35 -36
- package/dist/middleware/serve-static/index.js +5 -1
- package/dist/middleware/serve-static/module.d.ts +3 -0
- package/dist/middleware/serve-static/module.js +13 -0
- package/dist/middleware/serve-static/serve-static.d.ts +2 -3
- package/dist/middleware/serve-static/serve-static.js +36 -36
- package/dist/middleware/validator/index.js +5 -2
- package/dist/middleware/validator/middleware.d.ts +9 -15
- package/dist/middleware/validator/middleware.js +104 -89
- package/dist/request.d.ts +2 -2
- package/dist/request.js +108 -114
- package/dist/router/reg-exp-router/index.js +5 -1
- package/dist/router/reg-exp-router/node.js +87 -96
- package/dist/router/reg-exp-router/router.js +140 -142
- package/dist/router/reg-exp-router/trie.js +35 -38
- package/dist/router/smart-router/index.js +5 -1
- package/dist/router/smart-router/router.js +50 -48
- package/dist/router/static-router/index.js +5 -1
- package/dist/router/static-router/router.js +58 -63
- package/dist/router/trie-router/index.js +5 -1
- package/dist/router/trie-router/node.js +147 -158
- package/dist/router/trie-router/router.js +23 -19
- package/dist/router.js +12 -5
- package/dist/types.d.ts +22 -0
- package/dist/types.js +0 -0
- package/dist/utils/body.js +15 -13
- package/dist/utils/buffer.js +35 -29
- package/dist/utils/cloudflare.js +32 -32
- package/dist/utils/cookie.js +38 -33
- package/dist/utils/crypto.js +48 -41
- package/dist/utils/encode.js +70 -62
- package/dist/utils/filepath.js +18 -20
- package/dist/utils/html.js +34 -32
- package/dist/utils/http-status.js +48 -44
- package/dist/utils/json.js +71 -75
- package/dist/utils/jwt/index.js +5 -1
- package/dist/utils/jwt/jwt.js +95 -90
- package/dist/utils/jwt/types.js +47 -41
- package/dist/utils/mime.js +90 -86
- package/dist/utils/object.js +31 -32
- package/dist/utils/types.d.ts +3 -0
- package/dist/utils/types.js +0 -0
- package/dist/utils/url.js +69 -77
- package/dist/{middleware/validator → validator}/rule.d.ts +0 -0
- package/dist/validator/rule.js +57 -0
- package/dist/{middleware/validator → validator}/sanitizer.d.ts +0 -0
- package/dist/validator/sanitizer.js +7 -0
- package/dist/validator/schema.d.ts +7 -0
- package/dist/validator/schema.js +0 -0
- package/dist/{middleware/validator → validator}/validator.d.ts +10 -7
- package/dist/validator/validator.js +406 -0
- package/package.json +14 -8
- package/dist/cjs/middleware/validator/rule.js +0 -66
- package/dist/cjs/middleware/validator/sanitizer.js +0 -6
- package/dist/cjs/middleware/validator/validator.js +0 -417
- package/dist/middleware/serve-static/module.d.mts +0 -3
- package/dist/middleware/serve-static/module.mjs +0 -13
- package/dist/middleware/validator/rule.js +0 -63
- package/dist/middleware/validator/sanitizer.js +0 -3
- package/dist/middleware/validator/validator.js +0 -403
|
@@ -1,193 +1,205 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var jsx_exports = {};
|
|
20
|
+
__export(jsx_exports, {
|
|
21
|
+
Fragment: () => Fragment,
|
|
22
|
+
JSXNode: () => JSXNode,
|
|
23
|
+
jsx: () => jsxFn,
|
|
24
|
+
memo: () => memo
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(jsx_exports);
|
|
27
|
+
var import_html = require("../../utils/html");
|
|
5
28
|
const emptyTags = [
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
29
|
+
"area",
|
|
30
|
+
"base",
|
|
31
|
+
"br",
|
|
32
|
+
"col",
|
|
33
|
+
"embed",
|
|
34
|
+
"hr",
|
|
35
|
+
"img",
|
|
36
|
+
"input",
|
|
37
|
+
"keygen",
|
|
38
|
+
"link",
|
|
39
|
+
"meta",
|
|
40
|
+
"param",
|
|
41
|
+
"source",
|
|
42
|
+
"track",
|
|
43
|
+
"wbr"
|
|
21
44
|
];
|
|
22
45
|
const booleanAttributes = [
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
"allowfullscreen",
|
|
47
|
+
"async",
|
|
48
|
+
"autofocus",
|
|
49
|
+
"autoplay",
|
|
50
|
+
"checked",
|
|
51
|
+
"controls",
|
|
52
|
+
"default",
|
|
53
|
+
"defer",
|
|
54
|
+
"disabled",
|
|
55
|
+
"formnovalidate",
|
|
56
|
+
"hidden",
|
|
57
|
+
"inert",
|
|
58
|
+
"ismap",
|
|
59
|
+
"itemscope",
|
|
60
|
+
"loop",
|
|
61
|
+
"multiple",
|
|
62
|
+
"muted",
|
|
63
|
+
"nomodule",
|
|
64
|
+
"novalidate",
|
|
65
|
+
"open",
|
|
66
|
+
"playsinline",
|
|
67
|
+
"readonly",
|
|
68
|
+
"required",
|
|
69
|
+
"reversed",
|
|
70
|
+
"selected"
|
|
48
71
|
];
|
|
49
72
|
const childrenToStringToBuffer = (children, buffer) => {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
buffer[0] += child;
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
// `child` type is `Child[]`, so stringify recursively
|
|
66
|
-
childrenToStringToBuffer(child, buffer);
|
|
67
|
-
}
|
|
73
|
+
for (let i = 0, len = children.length; i < len; i++) {
|
|
74
|
+
const child = children[i];
|
|
75
|
+
if (typeof child === "string") {
|
|
76
|
+
(0, import_html.escapeToBuffer)(child, buffer);
|
|
77
|
+
} else if (typeof child === "boolean" || child === null || child === void 0) {
|
|
78
|
+
continue;
|
|
79
|
+
} else if (child instanceof JSXNode) {
|
|
80
|
+
child.toStringToBuffer(buffer);
|
|
81
|
+
} else if (typeof child === "number" || child.isEscaped) {
|
|
82
|
+
buffer[0] += child;
|
|
83
|
+
} else {
|
|
84
|
+
childrenToStringToBuffer(child, buffer);
|
|
68
85
|
}
|
|
86
|
+
}
|
|
69
87
|
};
|
|
70
88
|
class JSXNode {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
else if (typeof v === 'boolean' && booleanAttributes.includes(propsKeys[i])) {
|
|
102
|
-
if (v) {
|
|
103
|
-
buffer[0] += ` ${propsKeys[i]}=""`;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
else if (propsKeys[i] === 'dangerouslySetInnerHTML') {
|
|
107
|
-
if (children.length > 0) {
|
|
108
|
-
throw 'Can only set one of `children` or `props.dangerouslySetInnerHTML`.';
|
|
109
|
-
}
|
|
110
|
-
const escapedString = new String(v.__html);
|
|
111
|
-
escapedString.isEscaped = true;
|
|
112
|
-
children = [escapedString];
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
buffer[0] += ` ${propsKeys[i]}="`;
|
|
116
|
-
(0, html_1.escapeToBuffer)(v.toString(), buffer);
|
|
117
|
-
buffer[0] += '"';
|
|
118
|
-
}
|
|
89
|
+
constructor(tag, props, children) {
|
|
90
|
+
this.isEscaped = true;
|
|
91
|
+
this.tag = tag;
|
|
92
|
+
this.props = props;
|
|
93
|
+
this.children = children;
|
|
94
|
+
}
|
|
95
|
+
toString() {
|
|
96
|
+
const buffer = [""];
|
|
97
|
+
this.toStringToBuffer(buffer);
|
|
98
|
+
return buffer[0];
|
|
99
|
+
}
|
|
100
|
+
toStringToBuffer(buffer) {
|
|
101
|
+
const tag = this.tag;
|
|
102
|
+
const props = this.props;
|
|
103
|
+
let { children } = this;
|
|
104
|
+
buffer[0] += `<${tag}`;
|
|
105
|
+
const propsKeys = Object.keys(props || {});
|
|
106
|
+
for (let i = 0, len = propsKeys.length; i < len; i++) {
|
|
107
|
+
const v = props[propsKeys[i]];
|
|
108
|
+
if (typeof v === "string") {
|
|
109
|
+
buffer[0] += ` ${propsKeys[i]}="`;
|
|
110
|
+
(0, import_html.escapeToBuffer)(v, buffer);
|
|
111
|
+
buffer[0] += '"';
|
|
112
|
+
} else if (typeof v === "number") {
|
|
113
|
+
buffer[0] += ` ${propsKeys[i]}="${v}"`;
|
|
114
|
+
} else if (v === null || v === void 0) {
|
|
115
|
+
} else if (typeof v === "boolean" && booleanAttributes.includes(propsKeys[i])) {
|
|
116
|
+
if (v) {
|
|
117
|
+
buffer[0] += ` ${propsKeys[i]}=""`;
|
|
119
118
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
119
|
+
} else if (propsKeys[i] === "dangerouslySetInnerHTML") {
|
|
120
|
+
if (children.length > 0) {
|
|
121
|
+
throw "Can only set one of `children` or `props.dangerouslySetInnerHTML`.";
|
|
123
122
|
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
123
|
+
const escapedString = new String(v.__html);
|
|
124
|
+
escapedString.isEscaped = true;
|
|
125
|
+
children = [escapedString];
|
|
126
|
+
} else {
|
|
127
|
+
buffer[0] += ` ${propsKeys[i]}="`;
|
|
128
|
+
(0, import_html.escapeToBuffer)(v.toString(), buffer);
|
|
129
|
+
buffer[0] += '"';
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
if (emptyTags.includes(tag)) {
|
|
133
|
+
buffer[0] += "/>";
|
|
134
|
+
return;
|
|
127
135
|
}
|
|
136
|
+
buffer[0] += ">";
|
|
137
|
+
childrenToStringToBuffer(children, buffer);
|
|
138
|
+
buffer[0] += `</${tag}>`;
|
|
139
|
+
}
|
|
128
140
|
}
|
|
129
|
-
exports.JSXNode = JSXNode;
|
|
130
141
|
class JSXFunctionNode extends JSXNode {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
else {
|
|
144
|
-
(0, html_1.escapeToBuffer)(res, buffer);
|
|
145
|
-
}
|
|
142
|
+
toStringToBuffer(buffer) {
|
|
143
|
+
const { children } = this;
|
|
144
|
+
const res = this.tag.call(null, {
|
|
145
|
+
...this.props,
|
|
146
|
+
children: children.length <= 1 ? children[0] : children
|
|
147
|
+
});
|
|
148
|
+
if (res instanceof JSXNode) {
|
|
149
|
+
res.toStringToBuffer(buffer);
|
|
150
|
+
} else if (typeof res === "number" || res.isEscaped) {
|
|
151
|
+
buffer[0] += res;
|
|
152
|
+
} else {
|
|
153
|
+
(0, import_html.escapeToBuffer)(res, buffer);
|
|
146
154
|
}
|
|
155
|
+
}
|
|
147
156
|
}
|
|
148
157
|
class JSXFragmentNode extends JSXNode {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
158
|
+
toStringToBuffer(buffer) {
|
|
159
|
+
childrenToStringToBuffer(this.children, buffer);
|
|
160
|
+
}
|
|
152
161
|
}
|
|
153
162
|
const jsxFn = (tag, props, ...children) => {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
}
|
|
163
|
+
if (typeof tag === "function") {
|
|
164
|
+
return new JSXFunctionNode(tag, props, children);
|
|
165
|
+
} else {
|
|
166
|
+
return new JSXNode(tag, props, children);
|
|
167
|
+
}
|
|
160
168
|
};
|
|
161
|
-
exports.jsx = jsxFn;
|
|
162
169
|
const shallowEqual = (a, b) => {
|
|
163
|
-
|
|
164
|
-
return true;
|
|
165
|
-
}
|
|
166
|
-
const aKeys = Object.keys(a);
|
|
167
|
-
const bKeys = Object.keys(b);
|
|
168
|
-
if (aKeys.length !== bKeys.length) {
|
|
169
|
-
return false;
|
|
170
|
-
}
|
|
171
|
-
for (let i = 0, len = aKeys.length; i < len; i++) {
|
|
172
|
-
if (a[aKeys[i]] !== b[aKeys[i]]) {
|
|
173
|
-
return false;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
170
|
+
if (a === b) {
|
|
176
171
|
return true;
|
|
172
|
+
}
|
|
173
|
+
const aKeys = Object.keys(a);
|
|
174
|
+
const bKeys = Object.keys(b);
|
|
175
|
+
if (aKeys.length !== bKeys.length) {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
for (let i = 0, len = aKeys.length; i < len; i++) {
|
|
179
|
+
if (a[aKeys[i]] !== b[aKeys[i]]) {
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
return true;
|
|
177
184
|
};
|
|
178
185
|
const memo = (component, propsAreEqual = shallowEqual) => {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
186
|
+
let computed = void 0;
|
|
187
|
+
let prevProps = void 0;
|
|
188
|
+
return (props) => {
|
|
189
|
+
if (prevProps && !propsAreEqual(prevProps, props)) {
|
|
190
|
+
computed = void 0;
|
|
191
|
+
}
|
|
192
|
+
prevProps = props;
|
|
193
|
+
return computed || (computed = component(props));
|
|
194
|
+
};
|
|
188
195
|
};
|
|
189
|
-
exports.memo = memo;
|
|
190
196
|
const Fragment = (props) => {
|
|
191
|
-
|
|
197
|
+
return new JSXFragmentNode("", {}, props.children || []);
|
|
192
198
|
};
|
|
193
|
-
|
|
199
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
200
|
+
0 && (module.exports = {
|
|
201
|
+
Fragment,
|
|
202
|
+
JSXNode,
|
|
203
|
+
jsx,
|
|
204
|
+
memo
|
|
205
|
+
});
|
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var jsx_dev_runtime_exports = {};
|
|
20
|
+
__export(jsx_dev_runtime_exports, {
|
|
21
|
+
jsxDEV: () => jsxDEV
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(jsx_dev_runtime_exports);
|
|
24
|
+
var import__ = require(".");
|
|
5
25
|
function jsxDEV(tag, props) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
26
|
+
const children = props.children ?? [];
|
|
27
|
+
delete props["children"];
|
|
28
|
+
return (0, import__.jsx)(tag, props, children);
|
|
9
29
|
}
|
|
10
|
-
|
|
30
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
31
|
+
0 && (module.exports = {
|
|
32
|
+
jsxDEV
|
|
33
|
+
});
|
|
@@ -1,7 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty
|
|
3
|
-
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var jsx_runtime_exports = {};
|
|
20
|
+
__export(jsx_runtime_exports, {
|
|
21
|
+
jsx: () => import_jsx_dev_runtime.jsxDEV,
|
|
22
|
+
jsxs: () => import_jsx_dev_runtime2.jsxDEV
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(jsx_runtime_exports);
|
|
25
|
+
var import_jsx_dev_runtime = require("./jsx-dev-runtime");
|
|
26
|
+
var import_jsx_dev_runtime2 = require("./jsx-dev-runtime");
|
|
27
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
28
|
+
0 && (module.exports = {
|
|
29
|
+
jsx,
|
|
30
|
+
jsxs
|
|
31
|
+
});
|
|
@@ -1,60 +1,80 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var jwt_exports = {};
|
|
20
|
+
__export(jwt_exports, {
|
|
21
|
+
jwt: () => jwt
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(jwt_exports);
|
|
24
|
+
var import_jwt = require("../../utils/jwt");
|
|
5
25
|
const jwt = (options) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
26
|
+
if (!options) {
|
|
27
|
+
throw new Error('JWT auth middleware requires options for "secret');
|
|
28
|
+
}
|
|
29
|
+
if (!crypto.subtle || !crypto.subtle.importKey) {
|
|
30
|
+
throw new Error("`crypto.subtle.importKey` is undefined. JWT auth middleware requires it.");
|
|
31
|
+
}
|
|
32
|
+
return async (ctx, next) => {
|
|
33
|
+
const credentials = ctx.req.headers.get("Authorization");
|
|
34
|
+
let token;
|
|
35
|
+
if (credentials) {
|
|
36
|
+
const parts = credentials.split(/\s+/);
|
|
37
|
+
if (parts.length !== 2) {
|
|
38
|
+
return new Response("Unauthorized", {
|
|
39
|
+
status: 401,
|
|
40
|
+
headers: {
|
|
41
|
+
"WWW-Authenticate": `Bearer realm="${ctx.req.url}",error="invalid_request",error_description="invalid credentials structure"`
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
} else {
|
|
45
|
+
token = parts[1];
|
|
46
|
+
}
|
|
47
|
+
} else if (options.cookie) {
|
|
48
|
+
token = ctx.req.cookie(options.cookie);
|
|
11
49
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
if (parts.length !== 2) {
|
|
18
|
-
return new Response('Unauthorized', {
|
|
19
|
-
status: 401,
|
|
20
|
-
headers: {
|
|
21
|
-
'WWW-Authenticate': `Bearer realm="${ctx.req.url}",error="invalid_request",error_description="invalid credentials structure"`,
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
token = parts[1];
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
else if (options.cookie) {
|
|
30
|
-
token = ctx.req.cookie(options.cookie);
|
|
31
|
-
}
|
|
32
|
-
if (!token) {
|
|
33
|
-
return new Response('Unauthorized', {
|
|
34
|
-
status: 401,
|
|
35
|
-
headers: {
|
|
36
|
-
'WWW-Authenticate': `Bearer realm="${ctx.req.url}",error="invalid_request",error_description="no authorization included in request"`,
|
|
37
|
-
},
|
|
38
|
-
});
|
|
50
|
+
if (!token) {
|
|
51
|
+
return new Response("Unauthorized", {
|
|
52
|
+
status: 401,
|
|
53
|
+
headers: {
|
|
54
|
+
"WWW-Authenticate": `Bearer realm="${ctx.req.url}",error="invalid_request",error_description="no authorization included in request"`
|
|
39
55
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
});
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
let authorized = false;
|
|
59
|
+
let msg = "";
|
|
60
|
+
try {
|
|
61
|
+
authorized = await import_jwt.Jwt.verify(token, options.secret, options.alg);
|
|
62
|
+
} catch (e) {
|
|
63
|
+
msg = `${e}`;
|
|
64
|
+
}
|
|
65
|
+
if (!authorized) {
|
|
66
|
+
return new Response("Unauthorized", {
|
|
67
|
+
status: 401,
|
|
68
|
+
statusText: msg,
|
|
69
|
+
headers: {
|
|
70
|
+
"WWW-Authenticate": `Bearer realm="${ctx.req.url}",error="invalid_token",error_description="token verification failure"`
|
|
56
71
|
}
|
|
57
|
-
|
|
58
|
-
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
await next();
|
|
75
|
+
};
|
|
59
76
|
};
|
|
60
|
-
|
|
77
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
78
|
+
0 && (module.exports = {
|
|
79
|
+
jwt
|
|
80
|
+
});
|