elit 3.6.6 → 3.6.8

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.
Files changed (155) hide show
  1. package/Cargo.lock +1 -1
  2. package/Cargo.toml +1 -1
  3. package/README.md +20 -1
  4. package/dist/build.cjs +421 -331
  5. package/dist/build.d.ts +1 -19
  6. package/dist/build.js +420 -330
  7. package/dist/build.mjs +420 -330
  8. package/dist/chokidar.cjs +219 -182
  9. package/dist/chokidar.d.ts +25 -10
  10. package/dist/chokidar.js +217 -182
  11. package/dist/chokidar.mjs +218 -183
  12. package/dist/cli.cjs +25197 -22128
  13. package/dist/cli.d.ts +19 -37
  14. package/dist/cli.mjs +26668 -23614
  15. package/dist/config.cjs +357 -350
  16. package/dist/config.d.ts +17 -245
  17. package/dist/config.js +520 -515
  18. package/dist/config.mjs +346 -341
  19. package/dist/contracts-D7KIS-TK.d.ts +36 -0
  20. package/dist/contracts-_0p1-15U.d.ts +54 -0
  21. package/dist/coverage.cjs +448 -485
  22. package/dist/coverage.d.ts +13 -62
  23. package/dist/coverage.js +447 -484
  24. package/dist/coverage.mjs +447 -484
  25. package/dist/database.cjs +819 -828
  26. package/dist/database.d.ts +8 -24
  27. package/dist/database.js +818 -829
  28. package/dist/database.mjs +818 -829
  29. package/dist/desktop-auto-render.cjs +1700 -1523
  30. package/dist/desktop-auto-render.d.ts +4 -12
  31. package/dist/desktop-auto-render.js +1695 -1518
  32. package/dist/desktop-auto-render.mjs +1696 -1519
  33. package/dist/desktop.cjs +3 -1
  34. package/dist/desktop.d.ts +4 -1
  35. package/dist/desktop.js +1 -1
  36. package/dist/desktop.mjs +1 -1
  37. package/dist/dev-build.cjs +830 -0
  38. package/dist/dev-build.d.ts +53 -0
  39. package/dist/dev-build.js +3318 -0
  40. package/dist/dev-build.mjs +797 -0
  41. package/dist/dom.cjs +717 -591
  42. package/dist/dom.d.ts +2 -17
  43. package/dist/dom.js +714 -588
  44. package/dist/dom.mjs +716 -590
  45. package/dist/el.cjs +62 -52
  46. package/dist/el.d.ts +5 -12
  47. package/dist/el.js +60 -52
  48. package/dist/el.mjs +60 -52
  49. package/dist/fs.cjs +72 -63
  50. package/dist/fs.d.ts +22 -19
  51. package/dist/fs.js +71 -62
  52. package/dist/fs.mjs +71 -62
  53. package/dist/hmr.cjs +40 -14
  54. package/dist/hmr.d.ts +11 -23
  55. package/dist/hmr.js +38 -14
  56. package/dist/hmr.mjs +38 -14
  57. package/dist/http.cjs +411 -140
  58. package/dist/http.d.ts +40 -112
  59. package/dist/http.js +409 -140
  60. package/dist/http.mjs +409 -140
  61. package/dist/https.cjs +716 -272
  62. package/dist/https.d.ts +46 -41
  63. package/dist/https.js +712 -270
  64. package/dist/https.mjs +714 -272
  65. package/dist/index.cjs +7502 -7691
  66. package/dist/index.d.ts +6 -3
  67. package/dist/index.js +7486 -7677
  68. package/dist/index.mjs +7497 -7687
  69. package/dist/mime-types.cjs +10 -4
  70. package/dist/mime-types.d.ts +8 -11
  71. package/dist/mime-types.js +9 -3
  72. package/dist/mime-types.mjs +9 -3
  73. package/dist/native.cjs +8616 -8870
  74. package/dist/native.d.ts +7 -10
  75. package/dist/native.js +8682 -8936
  76. package/dist/native.mjs +8615 -8869
  77. package/dist/path.cjs +83 -77
  78. package/dist/path.d.ts +29 -29
  79. package/dist/path.js +82 -76
  80. package/dist/path.mjs +82 -76
  81. package/dist/pm-node-shared-listener-bootstrap.cjs +75 -0
  82. package/dist/pm.cjs +5267 -0
  83. package/dist/pm.d.ts +331 -0
  84. package/dist/pm.js +7575 -0
  85. package/dist/pm.mjs +5148 -0
  86. package/dist/preview-build.cjs +712 -0
  87. package/dist/preview-build.d.ts +59 -0
  88. package/dist/preview-build.js +3194 -0
  89. package/dist/preview-build.mjs +676 -0
  90. package/dist/render-context.cjs +13 -2
  91. package/dist/render-context.d.ts +9 -34
  92. package/dist/render-context.js +11 -2
  93. package/dist/render-context.mjs +11 -2
  94. package/dist/router.cjs +787 -646
  95. package/dist/router.d.ts +8 -14
  96. package/dist/router.js +786 -645
  97. package/dist/router.mjs +786 -645
  98. package/dist/runtime.cjs +1 -1
  99. package/dist/runtime.js +1 -1
  100. package/dist/runtime.mjs +1 -1
  101. package/dist/server.cjs +3702 -2883
  102. package/dist/server.d.ts +47 -5
  103. package/dist/server.js +4007 -3165
  104. package/dist/server.mjs +3665 -2848
  105. package/dist/smtp-server.cjs +16 -3
  106. package/dist/smtp-server.d.ts +12 -26
  107. package/dist/smtp-server.js +55 -17
  108. package/dist/smtp-server.mjs +16 -3
  109. package/dist/state.cjs +768 -659
  110. package/dist/state.d.ts +11 -71
  111. package/dist/state.js +760 -651
  112. package/dist/state.mjs +767 -658
  113. package/dist/style.cjs +1011 -968
  114. package/dist/style.d.ts +13 -127
  115. package/dist/style.js +1009 -970
  116. package/dist/style.mjs +1011 -971
  117. package/dist/test-reporter.cjs +332 -316
  118. package/dist/test-reporter.d.ts +28 -33
  119. package/dist/test-reporter.js +328 -312
  120. package/dist/test-reporter.mjs +328 -312
  121. package/dist/test-runtime.cjs +927 -968
  122. package/dist/test-runtime.d.ts +24 -99
  123. package/dist/test-runtime.js +922 -965
  124. package/dist/test-runtime.mjs +922 -965
  125. package/dist/test.cjs +4428 -4273
  126. package/dist/test.d.ts +2 -8
  127. package/dist/test.js +4307 -4154
  128. package/dist/test.mjs +4419 -4267
  129. package/dist/types-BONVzPtp.d.ts +59 -0
  130. package/dist/types-BR4wMiVx.d.ts +32 -0
  131. package/dist/types-BayMVo_k.d.ts +278 -0
  132. package/dist/types-C4gKykuG.d.ts +23 -0
  133. package/dist/types-C70T-42Z.d.ts +64 -0
  134. package/dist/types-Ckj8md_j.d.ts +84 -0
  135. package/dist/types-CpjQTAkX.d.ts +24 -0
  136. package/dist/types-D0LjrYjS.d.ts +14 -0
  137. package/dist/types-DPOgoGs-.d.ts +81 -0
  138. package/dist/types-fiLday0L.d.ts +199 -0
  139. package/dist/types.d.ts +54 -237
  140. package/dist/universal.cjs +1 -1
  141. package/dist/universal.d.ts +1 -7
  142. package/dist/universal.js +1 -1
  143. package/dist/universal.mjs +1 -1
  144. package/dist/websocket-BLBEAnhp.d.ts +119 -0
  145. package/dist/ws.cjs +129 -108
  146. package/dist/ws.d.ts +21 -131
  147. package/dist/ws.js +128 -109
  148. package/dist/ws.mjs +128 -109
  149. package/dist/wss.cjs +938 -512
  150. package/dist/wss.d.ts +31 -28
  151. package/dist/wss.js +932 -508
  152. package/dist/wss.mjs +936 -512
  153. package/package.json +18 -6
  154. package/vendor/epaint-0.31.1/src/image.rs +418 -0
  155. package/dist/server-uMQvZAll.d.ts +0 -458
package/dist/path.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {createRequire as __createRequire} from 'module';const require = __createRequire(import.meta.url);
2
2
 
3
- // src/runtime.ts
3
+ // src/shares/runtime.ts
4
4
  var runtime = (() => {
5
5
  if (typeof Deno !== "undefined") return "deno";
6
6
  if (typeof Bun !== "undefined") return "bun";
@@ -10,37 +10,35 @@ var isNode = runtime === "node";
10
10
  var isBun = runtime === "bun";
11
11
  var isDeno = runtime === "deno";
12
12
 
13
- // src/path.ts
13
+ // src/server/path/platform.ts
14
14
  function getSeparator(isWin) {
15
15
  return isWin ? "\\" : "/";
16
16
  }
17
17
  function getCwd() {
18
18
  if (isNode || isBun) {
19
19
  return process.cwd();
20
- } else if (isDeno) {
20
+ }
21
+ if (isDeno) {
21
22
  return Deno.cwd();
22
23
  }
23
24
  return "/";
24
25
  }
26
+ var isWindows = (() => {
27
+ if (isNode) {
28
+ return process.platform === "win32";
29
+ }
30
+ if (isDeno) {
31
+ return Deno.build.os === "windows";
32
+ }
33
+ return typeof process !== "undefined" && process.platform === "win32";
34
+ })();
35
+ var sep = isWindows ? "\\" : "/";
36
+ var delimiter = isWindows ? ";" : ":";
37
+
38
+ // src/server/path/operations.ts
25
39
  function findLastSeparator(path) {
26
40
  return Math.max(path.lastIndexOf("/"), path.lastIndexOf("\\"));
27
41
  }
28
- function createPathOps(isWin) {
29
- return {
30
- sep: getSeparator(isWin),
31
- delimiter: isWin ? ";" : ":",
32
- normalize: (path) => normalizePath(path, isWin),
33
- join: (...paths) => joinPaths(paths, isWin),
34
- resolve: (...paths) => resolvePaths(paths, isWin),
35
- isAbsolute: (path) => isWin ? isAbsoluteWin(path) : isAbsolutePosix(path),
36
- relative: (from, to) => relativePath(from, to, isWin),
37
- dirname: (path) => getDirname(path, isWin),
38
- basename: (path, ext) => getBasename(path, ext, isWin),
39
- extname: (path) => getExtname(path),
40
- parse: (path) => parsePath(path, isWin),
41
- format: (pathObject) => formatPath(pathObject, isWin)
42
- };
43
- }
44
42
  function isAbsolutePosix(path) {
45
43
  return path.length > 0 && path[0] === "/";
46
44
  }
@@ -61,30 +59,18 @@ function isAbsoluteWin(path) {
61
59
  }
62
60
  return false;
63
61
  }
64
- var isWindows = (() => {
65
- if (isNode) {
66
- return process.platform === "win32";
67
- } else if (isDeno) {
68
- return Deno.build.os === "windows";
69
- }
70
- return typeof process !== "undefined" && process.platform === "win32";
71
- })();
72
- var sep = isWindows ? "\\" : "/";
73
- var delimiter = isWindows ? ";" : ":";
74
- var posix = createPathOps(false);
75
- var win32 = createPathOps(true);
76
62
  function normalizePath(path, isWin) {
77
63
  if (path.length === 0) return ".";
78
64
  const separator = getSeparator(isWin);
79
65
  const isAbsolute2 = isWin ? isAbsoluteWin(path) : isAbsolutePosix(path);
80
66
  const trailingSeparator = path[path.length - 1] === separator || isWin && path[path.length - 1] === "/";
81
- let normalized = path.replace(isWin ? /[\/\\]+/g : /\/+/g, separator);
67
+ const normalized = path.replace(isWin ? /[\/\\]+/g : /\/+/g, separator);
82
68
  const parts = normalized.split(separator);
83
69
  const result = [];
84
- for (let i = 0; i < parts.length; i++) {
85
- const part = parts[i];
70
+ for (let index = 0; index < parts.length; index++) {
71
+ const part = parts[index];
86
72
  if (part === "" || part === ".") {
87
- if (i === 0 && isAbsolute2) result.push("");
73
+ if (index === 0 && isAbsolute2) result.push("");
88
74
  continue;
89
75
  }
90
76
  if (part === "..") {
@@ -99,21 +85,21 @@ function normalizePath(path, isWin) {
99
85
  result.push(part);
100
86
  }
101
87
  }
102
- let final = result.join(separator);
103
- if (final.length === 0) {
88
+ let finalPath = result.join(separator);
89
+ if (finalPath.length === 0) {
104
90
  return isAbsolute2 ? separator : ".";
105
91
  }
106
- if (trailingSeparator && final[final.length - 1] !== separator) {
107
- final += separator;
92
+ if (trailingSeparator && finalPath[finalPath.length - 1] !== separator) {
93
+ finalPath += separator;
108
94
  }
109
- return final;
95
+ return finalPath;
110
96
  }
111
97
  function joinPaths(paths, isWin) {
112
98
  if (paths.length === 0) return ".";
113
99
  const separator = getSeparator(isWin);
114
100
  let joined = "";
115
- for (let i = 0; i < paths.length; i++) {
116
- const path = paths[i];
101
+ for (let index = 0; index < paths.length; index++) {
102
+ const path = paths[index];
117
103
  if (path && path.length > 0) {
118
104
  if (joined.length === 0) {
119
105
  joined = path;
@@ -128,43 +114,43 @@ function joinPaths(paths, isWin) {
128
114
  function resolvePaths(paths, isWin) {
129
115
  const separator = getSeparator(isWin);
130
116
  let resolved = "";
131
- let isAbsolute2 = false;
132
- for (let i = paths.length - 1; i >= 0 && !isAbsolute2; i--) {
133
- const path = paths[i];
117
+ let absolute = false;
118
+ for (let index = paths.length - 1; index >= 0 && !absolute; index--) {
119
+ const path = paths[index];
134
120
  if (path && path.length > 0) {
135
121
  resolved = path + (resolved.length > 0 ? separator + resolved : "");
136
- isAbsolute2 = isWin ? isAbsoluteWin(resolved) : isAbsolutePosix(resolved);
122
+ absolute = isWin ? isAbsoluteWin(resolved) : isAbsolutePosix(resolved);
137
123
  }
138
124
  }
139
- if (!isAbsolute2) {
125
+ if (!absolute) {
140
126
  const cwd = getCwd();
141
127
  resolved = cwd + (resolved.length > 0 ? separator + resolved : "");
142
128
  }
143
129
  return normalizePath(resolved, isWin);
144
130
  }
145
131
  function relativePath(from, to, isWin) {
146
- from = resolvePaths([from], isWin);
147
- to = resolvePaths([to], isWin);
148
- if (from === to) return "";
132
+ const resolvedFrom = resolvePaths([from], isWin);
133
+ const resolvedTo = resolvePaths([to], isWin);
134
+ if (resolvedFrom === resolvedTo) return "";
149
135
  const separator = getSeparator(isWin);
150
- const fromParts = from.split(separator).filter((p) => p.length > 0);
151
- const toParts = to.split(separator).filter((p) => p.length > 0);
152
- let commonLength = 0;
136
+ const fromParts = resolvedFrom.split(separator).filter((part) => part.length > 0);
137
+ const toParts = resolvedTo.split(separator).filter((part) => part.length > 0);
153
138
  const minLength = Math.min(fromParts.length, toParts.length);
154
- for (let i = 0; i < minLength; i++) {
155
- if (fromParts[i] === toParts[i]) {
139
+ let commonLength = 0;
140
+ for (let index = 0; index < minLength; index++) {
141
+ if (fromParts[index] === toParts[index]) {
156
142
  commonLength++;
157
143
  } else {
158
144
  break;
159
145
  }
160
146
  }
161
- const upCount = fromParts.length - commonLength;
162
147
  const result = [];
163
- for (let i = 0; i < upCount; i++) {
148
+ const upCount = fromParts.length - commonLength;
149
+ for (let index = 0; index < upCount; index++) {
164
150
  result.push("..");
165
151
  }
166
- for (let i = commonLength; i < toParts.length; i++) {
167
- result.push(toParts[i]);
152
+ for (let index = commonLength; index < toParts.length; index++) {
153
+ result.push(toParts[index]);
168
154
  }
169
155
  return result.join(separator) || ".";
170
156
  }
@@ -172,15 +158,15 @@ function getDirname(path, isWin) {
172
158
  if (path.length === 0) return ".";
173
159
  const separator = getSeparator(isWin);
174
160
  const normalized = normalizePath(path, isWin);
175
- const lastSepIndex = normalized.lastIndexOf(separator);
176
- if (lastSepIndex === -1) return ".";
177
- if (lastSepIndex === 0) return separator;
178
- return normalized.slice(0, lastSepIndex);
161
+ const lastSeparatorIndex = normalized.lastIndexOf(separator);
162
+ if (lastSeparatorIndex === -1) return ".";
163
+ if (lastSeparatorIndex === 0) return separator;
164
+ return normalized.slice(0, lastSeparatorIndex);
179
165
  }
180
166
  function getBasename(path, ext, isWin) {
181
167
  if (path.length === 0) return "";
182
- const lastSepIndex = isWin ? findLastSeparator(path) : path.lastIndexOf("/");
183
- let base = lastSepIndex === -1 ? path : path.slice(lastSepIndex + 1);
168
+ const lastSeparatorIndex = isWin ? findLastSeparator(path) : path.lastIndexOf("/");
169
+ let base = lastSeparatorIndex === -1 ? path : path.slice(lastSeparatorIndex + 1);
184
170
  if (ext && base.endsWith(ext)) {
185
171
  base = base.slice(0, base.length - ext.length);
186
172
  }
@@ -188,8 +174,8 @@ function getBasename(path, ext, isWin) {
188
174
  }
189
175
  function getExtname(path) {
190
176
  const lastDotIndex = path.lastIndexOf(".");
191
- const lastSepIndex = findLastSeparator(path);
192
- if (lastDotIndex === -1 || lastDotIndex < lastSepIndex || lastDotIndex === path.length - 1) {
177
+ const lastSeparatorIndex = findLastSeparator(path);
178
+ if (lastDotIndex === -1 || lastDotIndex < lastSeparatorIndex || lastDotIndex === path.length - 1) {
193
179
  return "";
194
180
  }
195
181
  return path.slice(lastDotIndex);
@@ -205,10 +191,8 @@ function parsePath(path, isWin) {
205
191
  } else if (path[0] === "\\" || path[0] === "/") {
206
192
  root = "\\";
207
193
  }
208
- } else {
209
- if (path[0] === "/") {
210
- root = "/";
211
- }
194
+ } else if (path[0] === "/") {
195
+ root = "/";
212
196
  }
213
197
  const dir = getDirname(path, isWin);
214
198
  const base = getBasename(path, void 0, isWin);
@@ -224,6 +208,31 @@ function formatPath(pathObject, isWin) {
224
208
  if (dir === pathObject.root) return dir + base;
225
209
  return dir + separator + base;
226
210
  }
211
+ function createPathOps(isWin) {
212
+ return {
213
+ sep: getSeparator(isWin),
214
+ delimiter: isWin ? ";" : ":",
215
+ normalize: (path) => normalizePath(path, isWin),
216
+ join: (...paths) => joinPaths(paths, isWin),
217
+ resolve: (...paths) => resolvePaths(paths, isWin),
218
+ isAbsolute: (path) => isWin ? isAbsoluteWin(path) : isAbsolutePosix(path),
219
+ relative: (from, to) => relativePath(from, to, isWin),
220
+ dirname: (path) => getDirname(path, isWin),
221
+ basename: (path, ext) => getBasename(path, ext, isWin),
222
+ extname: (path) => getExtname(path),
223
+ parse: (path) => parsePath(path, isWin),
224
+ format: (pathObject) => formatPath(pathObject, isWin)
225
+ };
226
+ }
227
+
228
+ // src/server/path/runtime.ts
229
+ function getRuntime() {
230
+ return runtime;
231
+ }
232
+
233
+ // src/server/path/index.ts
234
+ var posix = createPathOps(false);
235
+ var win32 = createPathOps(true);
227
236
  function normalize(path) {
228
237
  return normalizePath(path, isWindows);
229
238
  }
@@ -234,7 +243,7 @@ function resolve(...paths) {
234
243
  return resolvePaths(paths, isWindows);
235
244
  }
236
245
  function isAbsolute(path) {
237
- return isWindows ? win32.isAbsolute(path) : posix.isAbsolute(path);
246
+ return isWindows ? isAbsoluteWin(path) : isAbsolutePosix(path);
238
247
  }
239
248
  function relative(from, to) {
240
249
  return relativePath(from, to, isWindows);
@@ -256,7 +265,7 @@ function format(pathObject) {
256
265
  }
257
266
  function toNamespacedPath(path) {
258
267
  if (!isWindows || path.length === 0) return path;
259
- const resolved = resolve(path);
268
+ const resolved = resolvePaths([path], true);
260
269
  if (resolved.length >= 3) {
261
270
  if (resolved[0] === "\\") {
262
271
  if (resolved[1] === "\\" && resolved[2] !== "?") {
@@ -268,9 +277,6 @@ function toNamespacedPath(path) {
268
277
  }
269
278
  return path;
270
279
  }
271
- function getRuntime() {
272
- return runtime;
273
- }
274
280
  var path_default = {
275
281
  sep,
276
282
  delimiter,
@@ -0,0 +1,75 @@
1
+ const net = require('node:net');
2
+
3
+ const mode = process.env.ELIT_PM_LISTEN_MODE;
4
+ const publicPort = Number.parseInt(process.env.ELIT_PM_PUBLIC_PORT ?? '', 10);
5
+ const originalListen = net.Server.prototype.listen;
6
+ const state = {
7
+ handle: null,
8
+ waiters: [],
9
+ };
10
+
11
+ function sendMessage(message) {
12
+ if (typeof process.send === 'function') {
13
+ process.send(message);
14
+ }
15
+ }
16
+
17
+ function wantsSharedListener(args) {
18
+ if (mode !== 'ipc' || !Number.isInteger(publicPort)) {
19
+ return false;
20
+ }
21
+
22
+ const firstArg = args[0];
23
+ if (typeof firstArg === 'number') {
24
+ return firstArg === publicPort;
25
+ }
26
+
27
+ if (firstArg && typeof firstArg === 'object') {
28
+ if (typeof firstArg.fd === 'number') {
29
+ return false;
30
+ }
31
+
32
+ const requestedPort = typeof firstArg.port === 'number' ? firstArg.port : publicPort;
33
+ return requestedPort === publicPort;
34
+ }
35
+
36
+ return false;
37
+ }
38
+
39
+ function attachSharedHandle(server, args, handle) {
40
+ const callback = typeof args[args.length - 1] === 'function' ? args[args.length - 1] : undefined;
41
+ originalListen.call(server, handle, () => {
42
+ if (callback) {
43
+ callback();
44
+ }
45
+ sendMessage({ type: 'elit:pm:listener-ready' });
46
+ });
47
+ }
48
+
49
+ net.Server.prototype.listen = function patchedListen(...args) {
50
+ if (!wantsSharedListener(args)) {
51
+ return originalListen.apply(this, args);
52
+ }
53
+
54
+ if (state.handle) {
55
+ attachSharedHandle(this, args, state.handle);
56
+ } else {
57
+ state.waiters.push((handle) => attachSharedHandle(this, args, handle));
58
+ }
59
+
60
+ return this;
61
+ };
62
+
63
+ process.on('message', (message, handle) => {
64
+ if (!message || message.type !== 'elit:pm:listen-handle' || !handle) {
65
+ return;
66
+ }
67
+
68
+ state.handle = handle;
69
+ const waiters = state.waiters.splice(0);
70
+ for (const waiter of waiters) {
71
+ waiter(handle);
72
+ }
73
+ });
74
+
75
+ sendMessage({ type: 'elit:pm:bootstrap-ready' });