elit 3.3.4 → 3.3.6
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/build.d.mts +1 -1
- package/dist/cli.js +34 -4
- package/dist/config.d.mts +1 -1
- package/dist/coverage.d.mts +1 -1
- package/dist/{server-CIXtexNS.d.ts → server-BLZhmkSD.d.ts} +2 -0
- package/dist/{server-BFTzgJpO.d.mts → server-BnVpNp4m.d.mts} +2 -0
- package/dist/server.d.mts +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +43 -6
- package/dist/server.js.map +1 -1
- package/dist/server.mjs +43 -6
- package/dist/server.mjs.map +1 -1
- package/dist/types.d.mts +2 -0
- package/dist/ws.d.ts.map +1 -1
- package/dist/ws.js +23 -2
- package/dist/ws.js.map +1 -1
- package/dist/ws.mjs +23 -2
- package/dist/ws.mjs.map +1 -1
- package/dist/wss.js +23 -2
- package/dist/wss.js.map +1 -1
- package/dist/wss.mjs +23 -2
- package/dist/wss.mjs.map +1 -1
- package/package.json +1 -1
- package/src/server.ts +32 -3
- package/src/ws.ts +32 -2
package/dist/build.d.mts
CHANGED
package/dist/cli.js
CHANGED
|
@@ -5933,7 +5933,7 @@ var require_package = __commonJS({
|
|
|
5933
5933
|
"package.json"(exports2, module2) {
|
|
5934
5934
|
module2.exports = {
|
|
5935
5935
|
name: "elit",
|
|
5936
|
-
version: "3.3.
|
|
5936
|
+
version: "3.3.6",
|
|
5937
5937
|
description: "Optimized lightweight library for creating DOM elements with reactive state",
|
|
5938
5938
|
main: "dist/index.js",
|
|
5939
5939
|
module: "dist/index.mjs",
|
|
@@ -6582,13 +6582,34 @@ var WebSocketServer = class extends import_events2.EventEmitter {
|
|
|
6582
6582
|
client.emit("close", CLOSE_CODES.NORMAL, "");
|
|
6583
6583
|
});
|
|
6584
6584
|
socket.on("error", (error) => {
|
|
6585
|
+
const errorCode = error.code;
|
|
6586
|
+
if (errorCode === "ECONNABORTED" || errorCode === "ECONNRESET" || errorCode === "EPIPE") {
|
|
6587
|
+
return;
|
|
6588
|
+
}
|
|
6585
6589
|
client.emit("error", error);
|
|
6586
6590
|
});
|
|
6587
6591
|
client.send = (data, _options, callback) => {
|
|
6592
|
+
if (!socket.writable || client.readyState !== 1 /* OPEN */) {
|
|
6593
|
+
const err = new Error("WebSocket is not open");
|
|
6594
|
+
err.code = "WS_NOT_OPEN";
|
|
6595
|
+
queueCallback3(callback, err);
|
|
6596
|
+
return;
|
|
6597
|
+
}
|
|
6588
6598
|
try {
|
|
6589
6599
|
const frame = this._createFrame(data);
|
|
6590
|
-
socket.write(frame)
|
|
6591
|
-
|
|
6600
|
+
socket.write(frame, (err) => {
|
|
6601
|
+
if (err) {
|
|
6602
|
+
const errorCode = err.code;
|
|
6603
|
+
if (errorCode !== "ECONNABORTED" && errorCode !== "ECONNRESET" && errorCode !== "EPIPE") {
|
|
6604
|
+
queueCallback3(callback, err);
|
|
6605
|
+
} else {
|
|
6606
|
+
client.readyState = 3 /* CLOSED */;
|
|
6607
|
+
queueCallback3(callback);
|
|
6608
|
+
}
|
|
6609
|
+
} else {
|
|
6610
|
+
queueCallback3(callback);
|
|
6611
|
+
}
|
|
6612
|
+
});
|
|
6592
6613
|
} catch (error) {
|
|
6593
6614
|
queueCallback3(callback, error);
|
|
6594
6615
|
}
|
|
@@ -8573,7 +8594,16 @@ ${elitImportMap}` : elitImportMap;
|
|
|
8573
8594
|
watcher.on("change", (path) => {
|
|
8574
8595
|
if (config.logging) console.log(`[HMR] File changed: ${path}`);
|
|
8575
8596
|
const message = JSON.stringify({ type: "update", path, timestamp: Date.now() });
|
|
8576
|
-
wsClients.forEach((client) =>
|
|
8597
|
+
wsClients.forEach((client) => {
|
|
8598
|
+
if (client.readyState === 1 /* OPEN */) {
|
|
8599
|
+
client.send(message, {}, (err) => {
|
|
8600
|
+
const code = err?.code;
|
|
8601
|
+
if (code === "ECONNABORTED" || code === "ECONNRESET" || code === "EPIPE" || code === "WS_NOT_OPEN") {
|
|
8602
|
+
return;
|
|
8603
|
+
}
|
|
8604
|
+
});
|
|
8605
|
+
}
|
|
8606
|
+
});
|
|
8577
8607
|
});
|
|
8578
8608
|
watcher.on("add", (path) => config.logging && console.log(`[HMR] File added: ${path}`));
|
|
8579
8609
|
watcher.on("unlink", (path) => config.logging && console.log(`[HMR] File removed: ${path}`));
|
package/dist/config.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as DevServerOptions, B as BuildOptions, P as PreviewOptions, T as TestOptions } from './server-
|
|
1
|
+
import { D as DevServerOptions, B as BuildOptions, P as PreviewOptions, T as TestOptions } from './server-BnVpNp4m.mjs';
|
|
2
2
|
import './http.mjs';
|
|
3
3
|
import 'node:events';
|
|
4
4
|
import './ws.mjs';
|
package/dist/coverage.d.mts
CHANGED
|
@@ -276,6 +276,8 @@ interface TestOptions {
|
|
|
276
276
|
type HttpMethod = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'OPTIONS' | 'HEAD' | 'ALL';
|
|
277
277
|
interface ElitRequest extends IncomingMessage {
|
|
278
278
|
body?: any;
|
|
279
|
+
query?: Record<string, string>;
|
|
280
|
+
params?: Record<string, string>;
|
|
279
281
|
}
|
|
280
282
|
interface ElitResponse extends ServerResponse {
|
|
281
283
|
json(data: any, statusCode?: number): this;
|
|
@@ -276,6 +276,8 @@ interface TestOptions {
|
|
|
276
276
|
type HttpMethod = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'OPTIONS' | 'HEAD' | 'ALL';
|
|
277
277
|
interface ElitRequest extends IncomingMessage {
|
|
278
278
|
body?: any;
|
|
279
|
+
query?: Record<string, string>;
|
|
280
|
+
params?: Record<string, string>;
|
|
279
281
|
}
|
|
280
282
|
interface ElitResponse extends ServerResponse {
|
|
281
283
|
json(data: any, statusCode?: number): this;
|
package/dist/server.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './http.mjs';
|
|
2
2
|
import './ws.mjs';
|
|
3
|
-
export { E as ElitRequest, c as ElitResponse, H as HttpMethod, M as Middleware, S as ServerRouteContext, d as ServerRouteHandler, e as ServerRouter, f as SharedState, g as SharedStateOptions, h as StateChangeHandler, i as StateManager, j as bodyLimit, k as cacheControl, l as clearImportMapCache, m as compress, n as cors, o as createDevServer, p as createProxyHandler, q as errorHandler, r as html, s as json, t as logger, u as rateLimit, v as security, w as status, x as text } from './server-
|
|
3
|
+
export { E as ElitRequest, c as ElitResponse, H as HttpMethod, M as Middleware, S as ServerRouteContext, d as ServerRouteHandler, e as ServerRouter, f as SharedState, g as SharedStateOptions, h as StateChangeHandler, i as StateManager, j as bodyLimit, k as cacheControl, l as clearImportMapCache, m as compress, n as cors, o as createDevServer, p as createProxyHandler, q as errorHandler, r as html, s as json, t as logger, u as rateLimit, v as security, w as status, x as text } from './server-BnVpNp4m.mjs';
|
|
4
4
|
import 'node:events';
|
|
5
5
|
import 'events';
|
|
6
6
|
import 'http';
|
package/dist/server.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ import type { DevServerOptions, DevServer, ProxyConfig } from './types';
|
|
|
11
11
|
export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'OPTIONS' | 'HEAD' | 'ALL';
|
|
12
12
|
export interface ElitRequest extends IncomingMessage {
|
|
13
13
|
body?: any;
|
|
14
|
+
query?: Record<string, string>;
|
|
15
|
+
params?: Record<string, string>;
|
|
14
16
|
}
|
|
15
17
|
export interface ElitResponse extends ServerResponse {
|
|
16
18
|
json(data: any, statusCode?: number): this;
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAgB,eAAe,EAAE,cAAc,EAA0B,MAAM,QAAQ,CAAC;AAE/F,OAAO,EAAmB,SAAS,EAAc,MAAM,MAAM,CAAC;AAM9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAA4B,WAAW,EAAE,MAAM,SAAS,CAAC;AAKlG,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC;AAElG,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,IAAI,CAAC,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -1420,13 +1420,34 @@ var WebSocketServer = class extends import_events2.EventEmitter {
|
|
|
1420
1420
|
client.emit("close", CLOSE_CODES.NORMAL, "");
|
|
1421
1421
|
});
|
|
1422
1422
|
socket.on("error", (error) => {
|
|
1423
|
+
const errorCode = error.code;
|
|
1424
|
+
if (errorCode === "ECONNABORTED" || errorCode === "ECONNRESET" || errorCode === "EPIPE") {
|
|
1425
|
+
return;
|
|
1426
|
+
}
|
|
1423
1427
|
client.emit("error", error);
|
|
1424
1428
|
});
|
|
1425
1429
|
client.send = (data, _options, callback) => {
|
|
1430
|
+
if (!socket.writable || client.readyState !== 1 /* OPEN */) {
|
|
1431
|
+
const err = new Error("WebSocket is not open");
|
|
1432
|
+
err.code = "WS_NOT_OPEN";
|
|
1433
|
+
queueCallback3(callback, err);
|
|
1434
|
+
return;
|
|
1435
|
+
}
|
|
1426
1436
|
try {
|
|
1427
1437
|
const frame = this._createFrame(data);
|
|
1428
|
-
socket.write(frame)
|
|
1429
|
-
|
|
1438
|
+
socket.write(frame, (err) => {
|
|
1439
|
+
if (err) {
|
|
1440
|
+
const errorCode = err.code;
|
|
1441
|
+
if (errorCode !== "ECONNABORTED" && errorCode !== "ECONNRESET" && errorCode !== "EPIPE") {
|
|
1442
|
+
queueCallback3(callback, err);
|
|
1443
|
+
} else {
|
|
1444
|
+
client.readyState = 3 /* CLOSED */;
|
|
1445
|
+
queueCallback3(callback);
|
|
1446
|
+
}
|
|
1447
|
+
} else {
|
|
1448
|
+
queueCallback3(callback);
|
|
1449
|
+
}
|
|
1450
|
+
});
|
|
1430
1451
|
} catch (error) {
|
|
1431
1452
|
queueCallback3(callback, error);
|
|
1432
1453
|
}
|
|
@@ -2789,9 +2810,13 @@ var ServerRouter = class {
|
|
|
2789
2810
|
}
|
|
2790
2811
|
parseQuery(url) {
|
|
2791
2812
|
const query = {};
|
|
2792
|
-
url.split("?")[1]
|
|
2813
|
+
const queryString = url.split("?")[1];
|
|
2814
|
+
if (!queryString) return query;
|
|
2815
|
+
queryString.split("&").forEach((p) => {
|
|
2793
2816
|
const [k, v] = p.split("=");
|
|
2794
|
-
if (k)
|
|
2817
|
+
if (k) {
|
|
2818
|
+
query[k] = v !== void 0 ? v : "";
|
|
2819
|
+
}
|
|
2795
2820
|
});
|
|
2796
2821
|
return query;
|
|
2797
2822
|
}
|
|
@@ -2870,11 +2895,14 @@ var ServerRouter = class {
|
|
|
2870
2895
|
return true;
|
|
2871
2896
|
}
|
|
2872
2897
|
}
|
|
2898
|
+
const query = this.parseQuery(url);
|
|
2899
|
+
req.query = query;
|
|
2900
|
+
req.params = params;
|
|
2873
2901
|
const ctx = {
|
|
2874
2902
|
req,
|
|
2875
2903
|
res,
|
|
2876
2904
|
params,
|
|
2877
|
-
query
|
|
2905
|
+
query,
|
|
2878
2906
|
body,
|
|
2879
2907
|
headers: req.headers
|
|
2880
2908
|
};
|
|
@@ -3963,7 +3991,16 @@ ${elitImportMap}` : elitImportMap;
|
|
|
3963
3991
|
watcher.on("change", (path) => {
|
|
3964
3992
|
if (config.logging) console.log(`[HMR] File changed: ${path}`);
|
|
3965
3993
|
const message = JSON.stringify({ type: "update", path, timestamp: Date.now() });
|
|
3966
|
-
wsClients.forEach((client) =>
|
|
3994
|
+
wsClients.forEach((client) => {
|
|
3995
|
+
if (client.readyState === 1 /* OPEN */) {
|
|
3996
|
+
client.send(message, {}, (err) => {
|
|
3997
|
+
const code = err?.code;
|
|
3998
|
+
if (code === "ECONNABORTED" || code === "ECONNRESET" || code === "EPIPE" || code === "WS_NOT_OPEN") {
|
|
3999
|
+
return;
|
|
4000
|
+
}
|
|
4001
|
+
});
|
|
4002
|
+
}
|
|
4003
|
+
});
|
|
3967
4004
|
});
|
|
3968
4005
|
watcher.on("add", (path) => config.logging && console.log(`[HMR] File added: ${path}`));
|
|
3969
4006
|
watcher.on("unlink", (path) => config.logging && console.log(`[HMR] File removed: ${path}`));
|