@asenajs/ergenecore 3.2.1 → 5.0.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/README.md +12 -5
- package/dist/lib/Ergenecore.d.ts +12 -1
- package/dist/lib/Ergenecore.js +320 -173
- package/dist/lib/Ergenecore.js.map +1 -1
- package/dist/lib/ErgenecoreContextWrapper.d.ts +45 -12
- package/dist/lib/ErgenecoreContextWrapper.js +200 -54
- package/dist/lib/ErgenecoreContextWrapper.js.map +1 -1
- package/dist/lib/defaults/index.d.ts +1 -0
- package/dist/lib/defaults/index.js +1 -0
- package/dist/lib/defaults/index.js.map +1 -1
- package/dist/lib/defineContext.d.ts +8 -0
- package/dist/lib/defineContext.js +10 -0
- package/dist/lib/defineContext.js.map +1 -0
- package/dist/lib/index.d.ts +8 -1
- package/dist/lib/index.js +3 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/middlewares/CorsMiddleware.d.ts +2 -2
- package/dist/lib/middlewares/CorsMiddleware.js +5 -9
- package/dist/lib/middlewares/CorsMiddleware.js.map +1 -1
- package/dist/lib/middlewares/RateLimiterMiddleware.d.ts +73 -3
- package/dist/lib/middlewares/RateLimiterMiddleware.js +95 -7
- package/dist/lib/middlewares/RateLimiterMiddleware.js.map +1 -1
- package/dist/lib/middlewares/WebSocketOriginMiddleware.d.ts +82 -0
- package/dist/lib/middlewares/WebSocketOriginMiddleware.js +81 -0
- package/dist/lib/middlewares/WebSocketOriginMiddleware.js.map +1 -0
- package/dist/lib/stream/SSEStreamWriter.js +22 -13
- package/dist/lib/stream/SSEStreamWriter.js.map +1 -1
- package/dist/lib/utils/staticFileReader.d.ts +27 -0
- package/dist/lib/utils/staticFileReader.js +172 -0
- package/dist/lib/utils/staticFileReader.js.map +1 -0
- package/package.json +11 -7
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { closeSync, fstatSync, openSync, readSync, statSync } from 'fs';
|
|
2
|
+
const IS_WINDOWS = process.platform === 'win32';
|
|
3
|
+
export function staticFileHeaders(type, etag, lastModified) {
|
|
4
|
+
const headers = new Headers();
|
|
5
|
+
headers.set('Content-Type', type);
|
|
6
|
+
headers.set('ETag', etag);
|
|
7
|
+
headers.set('Last-Modified', lastModified);
|
|
8
|
+
return headers;
|
|
9
|
+
}
|
|
10
|
+
function defaultStaticHeaders(type, etag, lastModified) {
|
|
11
|
+
const headers = new Headers();
|
|
12
|
+
headers.set('Content-Type', type);
|
|
13
|
+
headers.set('ETag', etag);
|
|
14
|
+
headers.set('Last-Modified', lastModified);
|
|
15
|
+
headers.set('Cache-Control', 'public, max-age=0');
|
|
16
|
+
return headers;
|
|
17
|
+
}
|
|
18
|
+
export function regularFileStats(filePath) {
|
|
19
|
+
try {
|
|
20
|
+
const stats = statSync(filePath);
|
|
21
|
+
return stats.isFile() ? stats : undefined;
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function closeQuietly(fd) {
|
|
28
|
+
try {
|
|
29
|
+
closeSync(fd);
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Reads small regular files from disk on every call through a bounded set of open descriptors.
|
|
37
|
+
* Nothing but the descriptor and derived metadata outlives a call; the bytes are always fresh.
|
|
38
|
+
*/
|
|
39
|
+
export class StaticFileReader {
|
|
40
|
+
maxFileBytes;
|
|
41
|
+
maxOpen;
|
|
42
|
+
files = new Map();
|
|
43
|
+
constructor(maxFileBytes = 64 * 1024, maxOpen = 64) {
|
|
44
|
+
this.maxFileBytes = maxFileBytes;
|
|
45
|
+
this.maxOpen = maxOpen;
|
|
46
|
+
}
|
|
47
|
+
read(filePath, stats, withBody) {
|
|
48
|
+
const entry = IS_WINDOWS ? undefined : this.entry(filePath, stats);
|
|
49
|
+
if (entry === undefined) {
|
|
50
|
+
const lastModifiedMs = Math.trunc(stats.mtimeMs);
|
|
51
|
+
return {
|
|
52
|
+
bytes: undefined,
|
|
53
|
+
type: Bun.file(filePath).type,
|
|
54
|
+
etag: `W/"${stats.size}-${lastModifiedMs}"`,
|
|
55
|
+
lastModified: new Date(lastModifiedMs).toUTCString(),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
this.refresh(entry, stats);
|
|
59
|
+
return {
|
|
60
|
+
bytes: withBody ? this.readBytes(filePath, entry, stats.size) : undefined,
|
|
61
|
+
type: entry.type,
|
|
62
|
+
etag: entry.etag,
|
|
63
|
+
lastModified: entry.lastModified,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
respond(filePath, stats, withBody) {
|
|
67
|
+
const entry = IS_WINDOWS ? undefined : this.entry(filePath, stats);
|
|
68
|
+
if (entry === undefined) {
|
|
69
|
+
const lastModifiedMs = Math.trunc(stats.mtimeMs);
|
|
70
|
+
const file = Bun.file(filePath);
|
|
71
|
+
return new Response(file, {
|
|
72
|
+
status: 200,
|
|
73
|
+
headers: defaultStaticHeaders(file.type, `W/"${stats.size}-${lastModifiedMs}"`, new Date(lastModifiedMs).toUTCString()),
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
this.refresh(entry, stats);
|
|
77
|
+
const headers = (entry.headers ??= defaultStaticHeaders(entry.type, entry.etag, entry.lastModified));
|
|
78
|
+
const bytes = withBody ? this.readBytes(filePath, entry, stats.size) : undefined;
|
|
79
|
+
return new Response(bytes ?? Bun.file(filePath), { status: 200, headers });
|
|
80
|
+
}
|
|
81
|
+
refresh(entry, stats) {
|
|
82
|
+
const lastModifiedMs = Math.trunc(stats.mtimeMs);
|
|
83
|
+
if (entry.mtimeMs === lastModifiedMs && entry.size === stats.size) {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
if (entry.mtimeMs !== lastModifiedMs) {
|
|
87
|
+
entry.mtimeMs = lastModifiedMs;
|
|
88
|
+
entry.lastModified = new Date(lastModifiedMs).toUTCString();
|
|
89
|
+
}
|
|
90
|
+
entry.size = stats.size;
|
|
91
|
+
entry.etag = `W/"${stats.size}-${lastModifiedMs}"`;
|
|
92
|
+
entry.headers = undefined;
|
|
93
|
+
}
|
|
94
|
+
release(filePath) {
|
|
95
|
+
const entry = this.files.get(filePath);
|
|
96
|
+
if (entry !== undefined) {
|
|
97
|
+
this.forget(filePath, entry);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
close() {
|
|
101
|
+
for (const entry of this.files.values()) {
|
|
102
|
+
closeQuietly(entry.fd);
|
|
103
|
+
}
|
|
104
|
+
this.files.clear();
|
|
105
|
+
}
|
|
106
|
+
readBytes(filePath, entry, size) {
|
|
107
|
+
if (size > this.maxFileBytes) {
|
|
108
|
+
return undefined;
|
|
109
|
+
}
|
|
110
|
+
const bytes = Buffer.allocUnsafeSlow(size);
|
|
111
|
+
try {
|
|
112
|
+
return readSync(entry.fd, bytes, 0, size, 0) === size ? bytes : undefined;
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
this.forget(filePath, entry);
|
|
116
|
+
return undefined;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
entry(filePath, stats) {
|
|
120
|
+
const existing = this.files.get(filePath);
|
|
121
|
+
if (existing !== undefined) {
|
|
122
|
+
if (existing.ino === stats.ino && existing.dev === stats.dev) {
|
|
123
|
+
return existing;
|
|
124
|
+
}
|
|
125
|
+
this.forget(filePath, existing);
|
|
126
|
+
}
|
|
127
|
+
if (stats.size > this.maxFileBytes) {
|
|
128
|
+
return undefined;
|
|
129
|
+
}
|
|
130
|
+
let fd;
|
|
131
|
+
try {
|
|
132
|
+
fd = openSync(filePath, 'r');
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
return undefined;
|
|
136
|
+
}
|
|
137
|
+
let opened;
|
|
138
|
+
try {
|
|
139
|
+
opened = fstatSync(fd);
|
|
140
|
+
}
|
|
141
|
+
catch {
|
|
142
|
+
closeQuietly(fd);
|
|
143
|
+
return undefined;
|
|
144
|
+
}
|
|
145
|
+
if (opened.ino !== stats.ino || opened.dev !== stats.dev || !opened.isFile()) {
|
|
146
|
+
closeQuietly(fd);
|
|
147
|
+
return undefined;
|
|
148
|
+
}
|
|
149
|
+
while (this.files.size >= this.maxOpen) {
|
|
150
|
+
const [oldestPath, oldest] = this.files.entries().next().value;
|
|
151
|
+
this.forget(oldestPath, oldest);
|
|
152
|
+
}
|
|
153
|
+
const entry = {
|
|
154
|
+
fd,
|
|
155
|
+
ino: stats.ino,
|
|
156
|
+
dev: stats.dev,
|
|
157
|
+
type: Bun.file(filePath).type,
|
|
158
|
+
mtimeMs: -1,
|
|
159
|
+
size: -1,
|
|
160
|
+
etag: '',
|
|
161
|
+
lastModified: '',
|
|
162
|
+
headers: undefined,
|
|
163
|
+
};
|
|
164
|
+
this.files.set(filePath, entry);
|
|
165
|
+
return entry;
|
|
166
|
+
}
|
|
167
|
+
forget(filePath, entry) {
|
|
168
|
+
this.files.delete(filePath);
|
|
169
|
+
closeQuietly(entry.fd);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=staticFileReader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"staticFileReader.js","sourceRoot":"","sources":["../../../lib/utils/staticFileReader.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -9,11 +9,15 @@
|
|
|
9
9
|
"README.md",
|
|
10
10
|
"LICENSE"
|
|
11
11
|
],
|
|
12
|
-
"version": "
|
|
12
|
+
"version": "5.0.0",
|
|
13
13
|
"author": "LibirSoft",
|
|
14
14
|
"license": "MIT",
|
|
15
|
+
"repository": {
|
|
16
|
+
"type": "git",
|
|
17
|
+
"url": "git+https://github.com/AsenaJs/ergenecore.git"
|
|
18
|
+
},
|
|
15
19
|
"engines": {
|
|
16
|
-
"bun": ">=1.
|
|
20
|
+
"bun": ">=1.4.0"
|
|
17
21
|
},
|
|
18
22
|
"scripts": {
|
|
19
23
|
"test": "bun test",
|
|
@@ -37,11 +41,11 @@
|
|
|
37
41
|
"release": "bun run build && changeset publish"
|
|
38
42
|
},
|
|
39
43
|
"devDependencies": {
|
|
40
|
-
"@asenajs/asena": "^0.
|
|
44
|
+
"@asenajs/asena": "^0.12.0",
|
|
41
45
|
"@changesets/cli": "^2.31.1",
|
|
42
46
|
"@types/bun": "latest",
|
|
43
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
44
|
-
"@typescript-eslint/parser": "^8.
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "^8.68.0",
|
|
48
|
+
"@typescript-eslint/parser": "^8.68.0",
|
|
45
49
|
"eslint": "^9.39.5",
|
|
46
50
|
"eslint-config-alloy": "^5.1.2",
|
|
47
51
|
"eslint-config-prettier": "^9.1.2",
|
|
@@ -52,11 +56,11 @@
|
|
|
52
56
|
"eslint-plugin-promise": "^6.6.0",
|
|
53
57
|
"prettier": "^3.9.6",
|
|
54
58
|
"typescript": "^5.9.3",
|
|
55
|
-
"typescript-eslint": "^8.
|
|
59
|
+
"typescript-eslint": "^8.68.0",
|
|
56
60
|
"zod": "^4.4.3"
|
|
57
61
|
},
|
|
58
62
|
"peerDependencies": {
|
|
59
|
-
"@asenajs/asena": "^0.
|
|
63
|
+
"@asenajs/asena": "^0.12.0",
|
|
60
64
|
"typescript": "^5.9.3",
|
|
61
65
|
"zod": "^4.3.6"
|
|
62
66
|
}
|