elit 3.0.1 → 3.0.2
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.ts +4 -12
- package/dist/build.d.ts.map +1 -0
- package/dist/chokidar.d.ts +7 -9
- package/dist/chokidar.d.ts.map +1 -0
- package/dist/cli.d.ts +6 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +17 -4
- package/dist/config.d.ts +29 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/dom.d.ts +7 -14
- package/dist/dom.d.ts.map +1 -0
- package/dist/el.d.ts +19 -191
- package/dist/el.d.ts.map +1 -0
- package/dist/fs.d.ts +35 -35
- package/dist/fs.d.ts.map +1 -0
- package/dist/hmr.d.ts +3 -3
- package/dist/hmr.d.ts.map +1 -0
- package/dist/http.d.ts +20 -22
- package/dist/http.d.ts.map +1 -0
- package/dist/https.d.ts +12 -15
- package/dist/https.d.ts.map +1 -0
- package/dist/index.d.ts +10 -629
- package/dist/index.d.ts.map +1 -0
- package/dist/mime-types.d.ts +9 -9
- package/dist/mime-types.d.ts.map +1 -0
- package/dist/path.d.ts +22 -19
- package/dist/path.d.ts.map +1 -0
- package/dist/router.d.ts +10 -17
- package/dist/router.d.ts.map +1 -0
- package/dist/runtime.d.ts +5 -6
- package/dist/runtime.d.ts.map +1 -0
- package/dist/server.d.ts +105 -7
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +14 -2
- package/dist/server.mjs +14 -2
- package/dist/state.d.ts +21 -27
- package/dist/state.d.ts.map +1 -0
- package/dist/style.d.ts +14 -55
- package/dist/style.d.ts.map +1 -0
- package/dist/types.d.ts +26 -240
- package/dist/types.d.ts.map +1 -0
- package/dist/ws.d.ts +14 -17
- package/dist/ws.d.ts.map +1 -0
- package/dist/wss.d.ts +16 -16
- package/dist/wss.d.ts.map +1 -0
- package/package.json +3 -2
- package/src/build.ts +337 -0
- package/src/chokidar.ts +401 -0
- package/src/cli.ts +638 -0
- package/src/config.ts +205 -0
- package/src/dom.ts +817 -0
- package/src/el.ts +164 -0
- package/src/fs.ts +727 -0
- package/src/hmr.ts +137 -0
- package/src/http.ts +775 -0
- package/src/https.ts +411 -0
- package/src/index.ts +14 -0
- package/src/mime-types.ts +222 -0
- package/src/path.ts +493 -0
- package/src/router.ts +237 -0
- package/src/runtime.ts +97 -0
- package/src/server.ts +1290 -0
- package/src/state.ts +468 -0
- package/src/style.ts +524 -0
- package/{dist/types-Du6kfwTm.d.ts → src/types.ts} +58 -141
- package/src/ws.ts +506 -0
- package/src/wss.ts +241 -0
- package/dist/build.d.mts +0 -20
- package/dist/chokidar.d.mts +0 -134
- package/dist/dom.d.mts +0 -87
- package/dist/el.d.mts +0 -207
- package/dist/fs.d.mts +0 -255
- package/dist/hmr.d.mts +0 -38
- package/dist/http.d.mts +0 -163
- package/dist/https.d.mts +0 -108
- package/dist/index.d.mts +0 -629
- package/dist/mime-types.d.mts +0 -48
- package/dist/path.d.mts +0 -163
- package/dist/router.d.mts +0 -47
- package/dist/runtime.d.mts +0 -97
- package/dist/server.d.mts +0 -7
- package/dist/state.d.mts +0 -111
- package/dist/style.d.mts +0 -159
- package/dist/types-C0nGi6MX.d.mts +0 -346
- package/dist/types.d.mts +0 -452
- package/dist/ws.d.mts +0 -195
- package/dist/wss.d.mts +0 -108
package/dist/mime-types.d.ts
CHANGED
|
@@ -7,31 +7,31 @@
|
|
|
7
7
|
/**
|
|
8
8
|
* Lookup MIME type from file path or extension
|
|
9
9
|
*/
|
|
10
|
-
declare function lookup(path: string): string | false;
|
|
10
|
+
export declare function lookup(path: string): string | false;
|
|
11
11
|
/**
|
|
12
12
|
* Get the default extension for a MIME type
|
|
13
13
|
*/
|
|
14
|
-
declare function extension(type: string): string | false;
|
|
14
|
+
export declare function extension(type: string): string | false;
|
|
15
15
|
/**
|
|
16
16
|
* Get all extensions for a MIME type
|
|
17
17
|
*/
|
|
18
|
-
declare function extensions(type: string): string[] | undefined;
|
|
18
|
+
export declare function extensions(type: string): string[] | undefined;
|
|
19
19
|
/**
|
|
20
20
|
* Get the default charset for a MIME type
|
|
21
21
|
*/
|
|
22
|
-
declare function charset(type: string): string | false;
|
|
22
|
+
export declare function charset(type: string): string | false;
|
|
23
23
|
/**
|
|
24
24
|
* Create a full Content-Type header value
|
|
25
25
|
*/
|
|
26
|
-
declare function contentType(typeOrExt: string): string | false;
|
|
26
|
+
export declare function contentType(typeOrExt: string): string | false;
|
|
27
27
|
/**
|
|
28
28
|
* Get all MIME types
|
|
29
29
|
*/
|
|
30
|
-
declare const types: Record<string, string>;
|
|
30
|
+
export declare const types: Record<string, string>;
|
|
31
31
|
/**
|
|
32
32
|
* Get current runtime
|
|
33
33
|
*/
|
|
34
|
-
declare function getRuntime(): 'node' | 'bun' | 'deno';
|
|
34
|
+
export declare function getRuntime(): 'node' | 'bun' | 'deno';
|
|
35
35
|
/**
|
|
36
36
|
* Default export
|
|
37
37
|
*/
|
|
@@ -44,5 +44,5 @@ declare const _default: {
|
|
|
44
44
|
types: Record<string, string>;
|
|
45
45
|
getRuntime: typeof getRuntime;
|
|
46
46
|
};
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
export default _default;
|
|
48
|
+
//# sourceMappingURL=mime-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mime-types.d.ts","sourceRoot":"","sources":["../src/mime-types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuIH;;GAEG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAGnD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAItD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAG7D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAGpD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAoB7D;AAED;;GAEG;AACH,eAAO,MAAM,KAAK,wBAAa,CAAC;AAEhC;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,GAAG,KAAK,GAAG,MAAM,CAEpD;AAED;;GAEG;;;;;;;;;;AACH,wBAQE"}
|
package/dist/path.d.ts
CHANGED
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
/**
|
|
8
8
|
* Path separator
|
|
9
9
|
*/
|
|
10
|
-
declare const sep: string;
|
|
10
|
+
export declare const sep: string;
|
|
11
11
|
/**
|
|
12
12
|
* Path delimiter
|
|
13
13
|
*/
|
|
14
|
-
declare const delimiter: string;
|
|
14
|
+
export declare const delimiter: string;
|
|
15
15
|
/**
|
|
16
16
|
* POSIX path operations
|
|
17
17
|
*/
|
|
@@ -49,14 +49,14 @@ declare const win32: {
|
|
|
49
49
|
/**
|
|
50
50
|
* Path object interface
|
|
51
51
|
*/
|
|
52
|
-
interface ParsedPath {
|
|
52
|
+
export interface ParsedPath {
|
|
53
53
|
root: string;
|
|
54
54
|
dir: string;
|
|
55
55
|
base: string;
|
|
56
56
|
ext: string;
|
|
57
57
|
name: string;
|
|
58
58
|
}
|
|
59
|
-
interface FormatInputPathObject {
|
|
59
|
+
export interface FormatInputPathObject {
|
|
60
60
|
root?: string;
|
|
61
61
|
dir?: string;
|
|
62
62
|
base?: string;
|
|
@@ -66,52 +66,55 @@ interface FormatInputPathObject {
|
|
|
66
66
|
/**
|
|
67
67
|
* Normalize a path (platform-specific)
|
|
68
68
|
*/
|
|
69
|
-
declare function normalize(path: string): string;
|
|
69
|
+
export declare function normalize(path: string): string;
|
|
70
70
|
/**
|
|
71
71
|
* Join paths (platform-specific)
|
|
72
72
|
*/
|
|
73
|
-
declare function join(...paths: string[]): string;
|
|
73
|
+
export declare function join(...paths: string[]): string;
|
|
74
74
|
/**
|
|
75
75
|
* Resolve paths to absolute path (platform-specific)
|
|
76
76
|
*/
|
|
77
|
-
declare function resolve(...paths: string[]): string;
|
|
77
|
+
export declare function resolve(...paths: string[]): string;
|
|
78
78
|
/**
|
|
79
79
|
* Check if path is absolute (platform-specific)
|
|
80
80
|
*/
|
|
81
|
-
declare function isAbsolute(path: string): boolean;
|
|
81
|
+
export declare function isAbsolute(path: string): boolean;
|
|
82
82
|
/**
|
|
83
83
|
* Get relative path (platform-specific)
|
|
84
84
|
*/
|
|
85
|
-
declare function relative(from: string, to: string): string;
|
|
85
|
+
export declare function relative(from: string, to: string): string;
|
|
86
86
|
/**
|
|
87
87
|
* Get directory name (platform-specific)
|
|
88
88
|
*/
|
|
89
|
-
declare function dirname(path: string): string;
|
|
89
|
+
export declare function dirname(path: string): string;
|
|
90
90
|
/**
|
|
91
91
|
* Get base name (platform-specific)
|
|
92
92
|
*/
|
|
93
|
-
declare function basename(path: string, ext?: string): string;
|
|
93
|
+
export declare function basename(path: string, ext?: string): string;
|
|
94
94
|
/**
|
|
95
95
|
* Get extension name
|
|
96
96
|
*/
|
|
97
|
-
declare function extname(path: string): string;
|
|
97
|
+
export declare function extname(path: string): string;
|
|
98
98
|
/**
|
|
99
99
|
* Parse path into components (platform-specific)
|
|
100
100
|
*/
|
|
101
|
-
declare function parse(path: string): ParsedPath;
|
|
101
|
+
export declare function parse(path: string): ParsedPath;
|
|
102
102
|
/**
|
|
103
103
|
* Format path from components (platform-specific)
|
|
104
104
|
*/
|
|
105
|
-
declare function format(pathObject: FormatInputPathObject): string;
|
|
105
|
+
export declare function format(pathObject: FormatInputPathObject): string;
|
|
106
106
|
/**
|
|
107
107
|
* Convert to namespaced path (Windows only)
|
|
108
108
|
*/
|
|
109
|
-
declare function toNamespacedPath(path: string): string;
|
|
109
|
+
export declare function toNamespacedPath(path: string): string;
|
|
110
110
|
/**
|
|
111
111
|
* Get current runtime
|
|
112
112
|
*/
|
|
113
|
-
declare function getRuntime(): 'node' | 'bun' | 'deno';
|
|
114
|
-
|
|
113
|
+
export declare function getRuntime(): 'node' | 'bun' | 'deno';
|
|
114
|
+
/**
|
|
115
|
+
* Export POSIX and Win32 implementations
|
|
116
|
+
*/
|
|
117
|
+
export { posix, win32 };
|
|
115
118
|
/**
|
|
116
119
|
* Default export
|
|
117
120
|
*/
|
|
@@ -159,5 +162,5 @@ declare const _default: {
|
|
|
159
162
|
};
|
|
160
163
|
getRuntime: typeof getRuntime;
|
|
161
164
|
};
|
|
162
|
-
|
|
163
|
-
|
|
165
|
+
export default _default;
|
|
166
|
+
//# sourceMappingURL=path.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../src/path.ts"],"names":[],"mappings":"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"}
|
package/dist/router.d.ts
CHANGED
|
@@ -1,34 +1,28 @@
|
|
|
1
|
-
import { VNode, Child, State, Props } from './types.js';
|
|
2
|
-
import 'node:events';
|
|
3
|
-
import 'events';
|
|
4
|
-
import 'http';
|
|
5
|
-
import 'ws';
|
|
6
|
-
|
|
7
1
|
/**
|
|
8
2
|
* Elit - Router - Client-side routing
|
|
9
3
|
*/
|
|
10
|
-
|
|
11
|
-
interface Route {
|
|
4
|
+
import type { VNode, Child, Props, State } from './types';
|
|
5
|
+
export interface Route {
|
|
12
6
|
path: string;
|
|
13
7
|
component: (params: RouteParams) => VNode | Child;
|
|
14
8
|
beforeEnter?: (to: RouteLocation, from: RouteLocation | null) => boolean | string | void;
|
|
15
9
|
}
|
|
16
|
-
interface RouteParams {
|
|
10
|
+
export interface RouteParams {
|
|
17
11
|
[key: string]: string;
|
|
18
12
|
}
|
|
19
|
-
interface RouteLocation {
|
|
13
|
+
export interface RouteLocation {
|
|
20
14
|
path: string;
|
|
21
15
|
params: RouteParams;
|
|
22
16
|
query: Record<string, string>;
|
|
23
17
|
hash: string;
|
|
24
18
|
}
|
|
25
|
-
interface RouterOptions {
|
|
19
|
+
export interface RouterOptions {
|
|
26
20
|
mode?: 'history' | 'hash';
|
|
27
21
|
base?: string;
|
|
28
22
|
routes: Route[];
|
|
29
23
|
notFound?: (params: RouteParams) => VNode | Child;
|
|
30
24
|
}
|
|
31
|
-
interface Router {
|
|
25
|
+
export interface Router {
|
|
32
26
|
currentRoute: State<RouteLocation>;
|
|
33
27
|
push: (path: string) => void;
|
|
34
28
|
replace: (path: string) => void;
|
|
@@ -38,10 +32,9 @@ interface Router {
|
|
|
38
32
|
beforeEach: (guard: (to: RouteLocation, from: RouteLocation | null) => boolean | string | void) => void;
|
|
39
33
|
destroy: () => void;
|
|
40
34
|
}
|
|
41
|
-
declare function createRouter(options: RouterOptions): Router;
|
|
42
|
-
declare function createRouterView(router: Router, options: RouterOptions): () => VNode;
|
|
43
|
-
declare const routerLink: (router: Router, props: Props & {
|
|
35
|
+
export declare function createRouter(options: RouterOptions): Router;
|
|
36
|
+
export declare function createRouterView(router: Router, options: RouterOptions): () => VNode;
|
|
37
|
+
export declare const routerLink: (router: Router, props: Props & {
|
|
44
38
|
to: string;
|
|
45
39
|
}, ...children: Child[]) => VNode;
|
|
46
|
-
|
|
47
|
-
export { type Route, type RouteLocation, type RouteParams, type Router, type RouterOptions, createRouter, createRouterView, routerLink };
|
|
40
|
+
//# sourceMappingURL=router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAG1D,MAAM,WAAW,KAAK;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,KAAK,GAAG,KAAK,CAAC;IAClD,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,KAAK,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;CAC5F;AAED,MAAM,WAAW,WAAW;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,KAAK,GAAG,KAAK,CAAC;CACrD;AAED,MAAM,WAAW,MAAM;IACnB,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACnC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,KAAK,OAAO,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACxG,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AA6DD,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAgG3D;AAGD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM,KAAK,CAoBpF;AAGD,eAAO,MAAM,UAAU,GAAI,QAAQ,MAAM,EAAE,OAAO,KAAK,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,UAAU,KAAK,EAAE,KAAG,KAahG,CAAC"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* Runtime detection (cached at module load)
|
|
7
7
|
*/
|
|
8
|
-
declare const runtime: "node" | "bun" | "deno";
|
|
9
|
-
declare const isNode: boolean;
|
|
10
|
-
declare const isBun: boolean;
|
|
11
|
-
declare const isDeno: boolean;
|
|
8
|
+
export declare const runtime: "node" | "bun" | "deno";
|
|
9
|
+
export declare const isNode: boolean;
|
|
10
|
+
export declare const isBun: boolean;
|
|
11
|
+
export declare const isDeno: boolean;
|
|
12
12
|
declare global {
|
|
13
13
|
const Bun: {
|
|
14
14
|
build(options: {
|
|
@@ -93,5 +93,4 @@ declare global {
|
|
|
93
93
|
};
|
|
94
94
|
} | undefined;
|
|
95
95
|
}
|
|
96
|
-
|
|
97
|
-
export { isBun, isDeno, isNode, runtime };
|
|
96
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -1,7 +1,105 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Development server with HMR support
|
|
3
|
+
* Cross-runtime transpilation support
|
|
4
|
+
* - Node.js: uses esbuild
|
|
5
|
+
* - Bun: uses Bun.Transpiler
|
|
6
|
+
* - Deno: uses Deno.emit
|
|
7
|
+
*/
|
|
8
|
+
import { IncomingMessage, ServerResponse } from './http';
|
|
9
|
+
import { WebSocket } from './ws';
|
|
10
|
+
import type { DevServerOptions, DevServer, ProxyConfig } from './types';
|
|
11
|
+
export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'OPTIONS' | 'HEAD';
|
|
12
|
+
export interface ServerRouteContext {
|
|
13
|
+
req: IncomingMessage;
|
|
14
|
+
res: ServerResponse;
|
|
15
|
+
params: Record<string, string>;
|
|
16
|
+
query: Record<string, string>;
|
|
17
|
+
body: any;
|
|
18
|
+
headers: Record<string, string | string[] | undefined>;
|
|
19
|
+
}
|
|
20
|
+
export type ServerRouteHandler = (ctx: ServerRouteContext) => void | Promise<void>;
|
|
21
|
+
export type Middleware = (ctx: ServerRouteContext, next: () => Promise<void>) => void | Promise<void>;
|
|
22
|
+
export declare class ServerRouter {
|
|
23
|
+
private routes;
|
|
24
|
+
private middlewares;
|
|
25
|
+
use(middleware: Middleware): this;
|
|
26
|
+
get: (path: string, handler: ServerRouteHandler) => this;
|
|
27
|
+
post: (path: string, handler: ServerRouteHandler) => this;
|
|
28
|
+
put: (path: string, handler: ServerRouteHandler) => this;
|
|
29
|
+
delete: (path: string, handler: ServerRouteHandler) => this;
|
|
30
|
+
patch: (path: string, handler: ServerRouteHandler) => this;
|
|
31
|
+
options: (path: string, handler: ServerRouteHandler) => this;
|
|
32
|
+
private addRoute;
|
|
33
|
+
private pathToRegex;
|
|
34
|
+
private parseQuery;
|
|
35
|
+
private parseBody;
|
|
36
|
+
handle(req: IncomingMessage, res: ServerResponse): Promise<boolean>;
|
|
37
|
+
}
|
|
38
|
+
export declare const json: (res: ServerResponse, data: any, status?: number) => ServerResponse;
|
|
39
|
+
export declare const text: (res: ServerResponse, data: string, status?: number) => ServerResponse;
|
|
40
|
+
export declare const html: (res: ServerResponse, data: string, status?: number) => ServerResponse;
|
|
41
|
+
export declare const status: (res: ServerResponse, code: number, message?: string) => ServerResponse;
|
|
42
|
+
export declare function cors(options?: {
|
|
43
|
+
origin?: string | string[];
|
|
44
|
+
methods?: string[];
|
|
45
|
+
credentials?: boolean;
|
|
46
|
+
maxAge?: number;
|
|
47
|
+
}): Middleware;
|
|
48
|
+
export declare function logger(options?: {
|
|
49
|
+
format?: 'simple' | 'detailed';
|
|
50
|
+
}): Middleware;
|
|
51
|
+
export declare function errorHandler(): Middleware;
|
|
52
|
+
export declare function rateLimit(options?: {
|
|
53
|
+
windowMs?: number;
|
|
54
|
+
max?: number;
|
|
55
|
+
message?: string;
|
|
56
|
+
}): Middleware;
|
|
57
|
+
export declare function bodyLimit(options?: {
|
|
58
|
+
limit?: number;
|
|
59
|
+
}): Middleware;
|
|
60
|
+
export declare function cacheControl(options?: {
|
|
61
|
+
maxAge?: number;
|
|
62
|
+
public?: boolean;
|
|
63
|
+
}): Middleware;
|
|
64
|
+
export declare function compress(): Middleware;
|
|
65
|
+
export declare function security(): Middleware;
|
|
66
|
+
export declare function createProxyHandler(proxyConfigs: ProxyConfig[]): (req: IncomingMessage, res: ServerResponse) => Promise<boolean>;
|
|
67
|
+
export type StateChangeHandler<T = any> = (value: T, oldValue: T) => void;
|
|
68
|
+
export interface SharedStateOptions<T = any> {
|
|
69
|
+
initial: T;
|
|
70
|
+
persist?: boolean;
|
|
71
|
+
validate?: (value: T) => boolean;
|
|
72
|
+
}
|
|
73
|
+
export declare class SharedState<T = any> {
|
|
74
|
+
readonly key: string;
|
|
75
|
+
private _value;
|
|
76
|
+
private listeners;
|
|
77
|
+
private changeHandlers;
|
|
78
|
+
private options;
|
|
79
|
+
constructor(key: string, options: SharedStateOptions<T>);
|
|
80
|
+
get value(): T;
|
|
81
|
+
set value(newValue: T);
|
|
82
|
+
update(updater: (current: T) => T): void;
|
|
83
|
+
subscribe(ws: WebSocket): void;
|
|
84
|
+
unsubscribe(ws: WebSocket): void;
|
|
85
|
+
onChange(handler: StateChangeHandler<T>): () => void;
|
|
86
|
+
private broadcast;
|
|
87
|
+
private sendTo;
|
|
88
|
+
get subscriberCount(): number;
|
|
89
|
+
clear(): void;
|
|
90
|
+
}
|
|
91
|
+
export declare class StateManager {
|
|
92
|
+
private states;
|
|
93
|
+
create<T>(key: string, options: SharedStateOptions<T>): SharedState<T>;
|
|
94
|
+
get<T>(key: string): SharedState<T> | undefined;
|
|
95
|
+
has(key: string): boolean;
|
|
96
|
+
delete(key: string): boolean;
|
|
97
|
+
subscribe(key: string, ws: WebSocket): void;
|
|
98
|
+
unsubscribe(key: string, ws: WebSocket): void;
|
|
99
|
+
unsubscribeAll(ws: WebSocket): void;
|
|
100
|
+
handleStateChange(key: string, value: any): void;
|
|
101
|
+
keys(): string[];
|
|
102
|
+
clear(): void;
|
|
103
|
+
}
|
|
104
|
+
export declare function createDevServer(options: DevServerOptions): DevServer;
|
|
105
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -2406,9 +2406,21 @@ var send404 = (res, msg = "Not Found") => sendError(res, 404, msg);
|
|
|
2406
2406
|
var send403 = (res, msg = "Forbidden") => sendError(res, 403, msg);
|
|
2407
2407
|
var send500 = (res, msg = "Internal Server Error") => sendError(res, 500, msg);
|
|
2408
2408
|
var createElitImportMap = (basePath = "", mode = "dev") => {
|
|
2409
|
-
const srcPath = mode === "dev" ? basePath ? `${basePath}/node_modules/elit/src` : "/node_modules/elit/src" : basePath ? `${basePath}/dist` : "/dist";
|
|
2409
|
+
const srcPath = mode === "dev" ? basePath ? `${basePath}/node_modules/elit/src` : "/node_modules/elit/src" : basePath ? `${basePath}/node_modules/elit/dist` : "/node_modules/elit/dist";
|
|
2410
2410
|
const fileExt = mode === "dev" ? ".ts" : ".mjs";
|
|
2411
|
-
return `<script type="importmap">{
|
|
2411
|
+
return `<script type="importmap">{
|
|
2412
|
+
"imports": {
|
|
2413
|
+
"elit": "${srcPath}/index${fileExt}",
|
|
2414
|
+
"elit/": "${srcPath}/",
|
|
2415
|
+
"elit/dom": "${srcPath}/dom${fileExt}",
|
|
2416
|
+
"elit/state": "${srcPath}/state${fileExt}",
|
|
2417
|
+
"elit/style": "${srcPath}/style${fileExt}",
|
|
2418
|
+
"elit/el": "${srcPath}/el${fileExt}",
|
|
2419
|
+
"elit/router": "${srcPath}/router${fileExt}",
|
|
2420
|
+
"elit/hmr": "${srcPath}/hmr${fileExt}",
|
|
2421
|
+
"elit/types": "${srcPath}/types${fileExt}"
|
|
2422
|
+
}
|
|
2423
|
+
}</script>`;
|
|
2412
2424
|
};
|
|
2413
2425
|
var createHMRScript = (port, wsPath) => `<script>(function(){let ws;let retries=0;let maxRetries=5;function connect(){ws=new WebSocket('ws://'+window.location.hostname+':${port}${wsPath}');ws.onopen=()=>{console.log('[Elit HMR] Connected');retries=0};ws.onmessage=(e)=>{const d=JSON.parse(e.data);if(d.type==='update'){console.log('[Elit HMR] File updated:',d.path);window.location.reload()}else if(d.type==='reload'){console.log('[Elit HMR] Reloading...');window.location.reload()}else if(d.type==='error')console.error('[Elit HMR] Error:',d.error)};ws.onclose=()=>{if(retries<maxRetries){retries++;setTimeout(connect,1000*retries)}else if(retries===maxRetries){console.log('[Elit HMR] Connection closed. Start dev server to reconnect.')}};ws.onerror=()=>{ws.close()}}connect()})();</script>`;
|
|
2414
2426
|
var rewriteRelativePaths = (html2, basePath) => {
|
package/dist/server.mjs
CHANGED
|
@@ -2381,9 +2381,21 @@ var send404 = (res, msg = "Not Found") => sendError(res, 404, msg);
|
|
|
2381
2381
|
var send403 = (res, msg = "Forbidden") => sendError(res, 403, msg);
|
|
2382
2382
|
var send500 = (res, msg = "Internal Server Error") => sendError(res, 500, msg);
|
|
2383
2383
|
var createElitImportMap = (basePath = "", mode = "dev") => {
|
|
2384
|
-
const srcPath = mode === "dev" ? basePath ? `${basePath}/node_modules/elit/src` : "/node_modules/elit/src" : basePath ? `${basePath}/dist` : "/dist";
|
|
2384
|
+
const srcPath = mode === "dev" ? basePath ? `${basePath}/node_modules/elit/src` : "/node_modules/elit/src" : basePath ? `${basePath}/node_modules/elit/dist` : "/node_modules/elit/dist";
|
|
2385
2385
|
const fileExt = mode === "dev" ? ".ts" : ".mjs";
|
|
2386
|
-
return `<script type="importmap">{
|
|
2386
|
+
return `<script type="importmap">{
|
|
2387
|
+
"imports": {
|
|
2388
|
+
"elit": "${srcPath}/index${fileExt}",
|
|
2389
|
+
"elit/": "${srcPath}/",
|
|
2390
|
+
"elit/dom": "${srcPath}/dom${fileExt}",
|
|
2391
|
+
"elit/state": "${srcPath}/state${fileExt}",
|
|
2392
|
+
"elit/style": "${srcPath}/style${fileExt}",
|
|
2393
|
+
"elit/el": "${srcPath}/el${fileExt}",
|
|
2394
|
+
"elit/router": "${srcPath}/router${fileExt}",
|
|
2395
|
+
"elit/hmr": "${srcPath}/hmr${fileExt}",
|
|
2396
|
+
"elit/types": "${srcPath}/types${fileExt}"
|
|
2397
|
+
}
|
|
2398
|
+
}</script>`;
|
|
2387
2399
|
};
|
|
2388
2400
|
var createHMRScript = (port, wsPath) => `<script>(function(){let ws;let retries=0;let maxRetries=5;function connect(){ws=new WebSocket('ws://'+window.location.hostname+':${port}${wsPath}');ws.onopen=()=>{console.log('[Elit HMR] Connected');retries=0};ws.onmessage=(e)=>{const d=JSON.parse(e.data);if(d.type==='update'){console.log('[Elit HMR] File updated:',d.path);window.location.reload()}else if(d.type==='reload'){console.log('[Elit HMR] Reloading...');window.location.reload()}else if(d.type==='error')console.error('[Elit HMR] Error:',d.error)};ws.onclose=()=>{if(retries<maxRetries){retries++;setTimeout(connect,1000*retries)}else if(retries===maxRetries){console.log('[Elit HMR] Connection closed. Start dev server to reconnect.')}};ws.onerror=()=>{ws.close()}}connect()})();</script>`;
|
|
2389
2401
|
var rewriteRelativePaths = (html2, basePath) => {
|
package/dist/state.d.ts
CHANGED
|
@@ -1,28 +1,22 @@
|
|
|
1
|
-
import { StateOptions, State, VNode, VirtualListController, Child, Props } from './types.js';
|
|
2
|
-
import 'node:events';
|
|
3
|
-
import 'events';
|
|
4
|
-
import 'http';
|
|
5
|
-
import 'ws';
|
|
6
|
-
|
|
7
1
|
/**
|
|
8
2
|
* Elit - State Management
|
|
9
3
|
*/
|
|
10
|
-
|
|
11
|
-
declare const createState: <T>(initial: T, options?: StateOptions) => State<T>;
|
|
12
|
-
declare const computed: <T extends any[], R>(states: { [K in keyof T]: State<T[K]>; }, fn: (...values: T) => R) => State<R>;
|
|
13
|
-
declare const effect: (fn: () => void) => void;
|
|
14
|
-
declare const batchRender: (container: string | HTMLElement, vNodes: VNode[]) => HTMLElement;
|
|
15
|
-
declare const renderChunked: (container: string | HTMLElement, vNodes: VNode[], chunkSize?: number, onProgress?: (current: number, total: number) => void) => HTMLElement;
|
|
16
|
-
declare const createVirtualList: <T>(container: HTMLElement, items: T[], renderItem: (item: T, index: number) => VNode, itemHeight?: number, bufferSize?: number) => VirtualListController;
|
|
17
|
-
declare const lazy: <T extends any[], R>(loadFn: () => Promise<(...args: T) => R>) => (...args: T) => Promise<VNode | R>;
|
|
18
|
-
declare const cleanupUnused: (root: HTMLElement) => number;
|
|
19
|
-
declare const throttle: <T extends any[]>(fn: (...args: T) => void, delay: number) => (...args: T) => void;
|
|
20
|
-
declare const debounce: <T extends any[]>(fn: (...args: T) => void, delay: number) => (...args: T) => void;
|
|
4
|
+
import type { State, StateOptions, VNode, VirtualListController, Child, Props } from './types';
|
|
5
|
+
export declare const createState: <T>(initial: T, options?: StateOptions) => State<T>;
|
|
6
|
+
export declare const computed: <T extends any[], R>(states: { [K in keyof T]: State<T[K]>; }, fn: (...values: T) => R) => State<R>;
|
|
7
|
+
export declare const effect: (fn: () => void) => void;
|
|
8
|
+
export declare const batchRender: (container: string | HTMLElement, vNodes: VNode[]) => HTMLElement;
|
|
9
|
+
export declare const renderChunked: (container: string | HTMLElement, vNodes: VNode[], chunkSize?: number, onProgress?: (current: number, total: number) => void) => HTMLElement;
|
|
10
|
+
export declare const createVirtualList: <T>(container: HTMLElement, items: T[], renderItem: (item: T, index: number) => VNode, itemHeight?: number, bufferSize?: number) => VirtualListController;
|
|
11
|
+
export declare const lazy: <T extends any[], R>(loadFn: () => Promise<(...args: T) => R>) => (...args: T) => Promise<VNode | R>;
|
|
12
|
+
export declare const cleanupUnused: (root: HTMLElement) => number;
|
|
13
|
+
export declare const throttle: <T extends any[]>(fn: (...args: T) => void, delay: number) => (...args: T) => void;
|
|
14
|
+
export declare const debounce: <T extends any[]>(fn: (...args: T) => void, delay: number) => (...args: T) => void;
|
|
21
15
|
type StateChangeCallback<T = any> = (value: T, oldValue: T) => void;
|
|
22
16
|
/**
|
|
23
17
|
* Shared State - syncs with elit-server
|
|
24
18
|
*/
|
|
25
|
-
declare class SharedState<T = any> {
|
|
19
|
+
export declare class SharedState<T = any> {
|
|
26
20
|
readonly key: string;
|
|
27
21
|
private wsUrl?;
|
|
28
22
|
private localState;
|
|
@@ -78,7 +72,7 @@ declare class SharedState<T = any> {
|
|
|
78
72
|
/**
|
|
79
73
|
* Create a shared state that syncs with elit-server
|
|
80
74
|
*/
|
|
81
|
-
declare function createSharedState<T>(key: string, defaultValue: T, wsUrl?: string): SharedState<T>;
|
|
75
|
+
export declare function createSharedState<T>(key: string, defaultValue: T, wsUrl?: string): SharedState<T>;
|
|
82
76
|
/**
|
|
83
77
|
* Shared State Manager for managing multiple shared states
|
|
84
78
|
*/
|
|
@@ -101,11 +95,11 @@ declare class SharedStateManager {
|
|
|
101
95
|
*/
|
|
102
96
|
clear(): void;
|
|
103
97
|
}
|
|
104
|
-
declare const sharedStateManager: SharedStateManager;
|
|
105
|
-
declare const reactive: <T>(state: State<T>, renderFn: (value: T) => VNode | Child) => VNode;
|
|
106
|
-
declare const reactiveAs: <T>(tagName: string, state: State<T>, renderFn: (value: T) => VNode | Child, props?: Props) => VNode;
|
|
107
|
-
declare const text: (state: State<any> | any) => VNode | string;
|
|
108
|
-
declare const bindValue: <T extends string | number>(state: State<T>) => Props;
|
|
109
|
-
declare const bindChecked: (state: State<boolean>) => Props;
|
|
110
|
-
|
|
111
|
-
|
|
98
|
+
export declare const sharedStateManager: SharedStateManager;
|
|
99
|
+
export declare const reactive: <T>(state: State<T>, renderFn: (value: T) => VNode | Child) => VNode;
|
|
100
|
+
export declare const reactiveAs: <T>(tagName: string, state: State<T>, renderFn: (value: T) => VNode | Child, props?: Props) => VNode;
|
|
101
|
+
export declare const text: (state: State<any> | any) => VNode | string;
|
|
102
|
+
export declare const bindValue: <T extends string | number>(state: State<T>) => Props;
|
|
103
|
+
export declare const bindChecked: (state: State<boolean>) => Props;
|
|
104
|
+
export {};
|
|
105
|
+
//# sourceMappingURL=state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
|