veryfront 0.0.62 → 0.0.64
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/ai/index.js +28 -28
- package/dist/ai/index.js.map +2 -2
- package/dist/ai/workflow.js +26 -24
- package/dist/ai/workflow.js.map +2 -2
- package/dist/cli.js +228 -2989
- package/dist/components.js +407 -224
- package/dist/components.js.map +4 -4
- package/dist/config.js +26 -24
- package/dist/config.js.map +2 -2
- package/dist/data.js +26 -24
- package/dist/data.js.map +2 -2
- package/dist/index.js +415 -229
- package/dist/index.js.map +4 -4
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -131,6 +131,7 @@ function __loggerResetForTests(options = {}) {
|
|
|
131
131
|
var LogLevel, originalConsole, cachedLogLevel, ConsoleLogger, getDefaultLevel, trackedLoggers, cliLogger, serverLogger, rendererLogger, bundlerLogger, agentLogger, logger;
|
|
132
132
|
var init_logger = __esm({
|
|
133
133
|
"src/core/utils/logger/logger.ts"() {
|
|
134
|
+
"use strict";
|
|
134
135
|
init_env();
|
|
135
136
|
LogLevel = /* @__PURE__ */ ((LogLevel2) => {
|
|
136
137
|
LogLevel2[LogLevel2["DEBUG"] = 0] = "DEBUG";
|
|
@@ -236,6 +237,7 @@ var init_build = __esm({
|
|
|
236
237
|
var SECONDS_PER_MINUTE, MINUTES_PER_HOUR, HOURS_PER_DAY, MS_PER_SECOND, DEFAULT_LRU_MAX_ENTRIES, COMPONENT_LOADER_MAX_ENTRIES, COMPONENT_LOADER_TTL_MS, MDX_RENDERER_MAX_ENTRIES, MDX_RENDERER_TTL_MS, RENDERER_CORE_MAX_ENTRIES, RENDERER_CORE_TTL_MS, TSX_LAYOUT_MAX_ENTRIES, TSX_LAYOUT_TTL_MS, DATA_FETCHING_MAX_ENTRIES, DATA_FETCHING_TTL_MS, MDX_CACHE_TTL_PRODUCTION_MS, MDX_CACHE_TTL_DEVELOPMENT_MS, BUNDLE_CACHE_TTL_PRODUCTION_MS, BUNDLE_CACHE_TTL_DEVELOPMENT_MS, BUNDLE_MANIFEST_PROD_TTL_MS, BUNDLE_MANIFEST_DEV_TTL_MS, RSC_MANIFEST_CACHE_TTL_MS, SERVER_ACTION_DEFAULT_TTL_SEC, DENO_KV_SAFE_SIZE_LIMIT_BYTES, HTTP_CACHE_SHORT_MAX_AGE_SEC, HTTP_CACHE_MEDIUM_MAX_AGE_SEC, HTTP_CACHE_LONG_MAX_AGE_SEC, ONE_DAY_MS, CACHE_CLEANUP_INTERVAL_MS, LRU_DEFAULT_MAX_ENTRIES, LRU_DEFAULT_MAX_SIZE_BYTES, CLEANUP_INTERVAL_MULTIPLIER;
|
|
237
238
|
var init_cache = __esm({
|
|
238
239
|
"src/core/utils/constants/cache.ts"() {
|
|
240
|
+
"use strict";
|
|
239
241
|
SECONDS_PER_MINUTE = 60;
|
|
240
242
|
MINUTES_PER_HOUR = 60;
|
|
241
243
|
HOURS_PER_DAY = 24;
|
|
@@ -277,14 +279,14 @@ var init_deno = __esm({
|
|
|
277
279
|
"deno.json"() {
|
|
278
280
|
deno_default = {
|
|
279
281
|
name: "veryfront",
|
|
280
|
-
version: "0.0.
|
|
282
|
+
version: "0.0.64",
|
|
283
|
+
nodeModulesDir: "auto",
|
|
281
284
|
exclude: [
|
|
282
285
|
"npm/",
|
|
283
286
|
"dist/",
|
|
284
287
|
"coverage/",
|
|
285
288
|
"scripts/",
|
|
286
289
|
"examples/",
|
|
287
|
-
"tests/",
|
|
288
290
|
"src/cli/templates/files/",
|
|
289
291
|
"src/cli/templates/integrations/"
|
|
290
292
|
],
|
|
@@ -368,34 +370,36 @@ var init_deno = __esm({
|
|
|
368
370
|
"react-dom/client": "https://esm.sh/react-dom@18.3.1/client",
|
|
369
371
|
"react/jsx-runtime": "https://esm.sh/react@18.3.1/jsx-runtime",
|
|
370
372
|
"react/jsx-dev-runtime": "https://esm.sh/react@18.3.1/jsx-dev-runtime",
|
|
371
|
-
"@mdx-js/mdx": "
|
|
372
|
-
"@mdx-js/react": "
|
|
373
|
-
"unist-util-visit": "
|
|
374
|
-
"mdast-util-to-string": "
|
|
375
|
-
"github-slugger": "
|
|
376
|
-
"remark-gfm": "
|
|
377
|
-
"remark-frontmatter": "
|
|
378
|
-
"rehype-highlight": "
|
|
379
|
-
"rehype-slug": "
|
|
373
|
+
"@mdx-js/mdx": "npm:@mdx-js/mdx@3.0.0",
|
|
374
|
+
"@mdx-js/react": "npm:@mdx-js/react@3.0.0",
|
|
375
|
+
"unist-util-visit": "npm:unist-util-visit@5.0.0",
|
|
376
|
+
"mdast-util-to-string": "npm:mdast-util-to-string@4.0.0",
|
|
377
|
+
"github-slugger": "npm:github-slugger@2.0.0",
|
|
378
|
+
"remark-gfm": "npm:remark-gfm@4.0.1",
|
|
379
|
+
"remark-frontmatter": "npm:remark-frontmatter@5.0.0",
|
|
380
|
+
"rehype-highlight": "npm:rehype-highlight@7.0.2",
|
|
381
|
+
"rehype-slug": "npm:rehype-slug@6.0.0",
|
|
380
382
|
esbuild: "https://deno.land/x/esbuild@v0.20.1/wasm.js",
|
|
381
383
|
"esbuild/mod.js": "https://deno.land/x/esbuild@v0.20.1/mod.js",
|
|
382
|
-
"es-module-lexer": "
|
|
383
|
-
zod: "
|
|
384
|
-
"mime-types": "
|
|
385
|
-
mdast: "
|
|
386
|
-
hast: "
|
|
387
|
-
unist: "
|
|
388
|
-
unified: "
|
|
389
|
-
ai: "https://esm.sh/ai@5.0.
|
|
390
|
-
"ai/react": "https://esm.sh/@ai-sdk/react@2.0.
|
|
391
|
-
"@ai-sdk/react": "https://esm.sh/@ai-sdk/react@2.0.
|
|
392
|
-
"@ai-sdk/openai": "https://esm.sh/@ai-sdk/openai@2.0.
|
|
393
|
-
"@ai-sdk/anthropic": "https://esm.sh/@ai-sdk/anthropic@2.0.
|
|
384
|
+
"es-module-lexer": "npm:es-module-lexer@1.5.0",
|
|
385
|
+
zod: "npm:zod@3.23.8",
|
|
386
|
+
"mime-types": "npm:mime-types@2.1.35",
|
|
387
|
+
mdast: "npm:@types/mdast@4.0.3",
|
|
388
|
+
hast: "npm:@types/hast@3.0.3",
|
|
389
|
+
unist: "npm:@types/unist@3.0.2",
|
|
390
|
+
unified: "npm:unified@11.0.5",
|
|
391
|
+
ai: "https://esm.sh/ai@5.0.108?deps=react@18.3.1,react-dom@18.3.1",
|
|
392
|
+
"ai/react": "https://esm.sh/@ai-sdk/react@2.0.109?deps=react@18.3.1,react-dom@18.3.1",
|
|
393
|
+
"@ai-sdk/react": "https://esm.sh/@ai-sdk/react@2.0.109?deps=react@18.3.1,react-dom@18.3.1",
|
|
394
|
+
"@ai-sdk/openai": "https://esm.sh/@ai-sdk/openai@2.0.80",
|
|
395
|
+
"@ai-sdk/anthropic": "https://esm.sh/@ai-sdk/anthropic@2.0.54",
|
|
394
396
|
unocss: "https://esm.sh/unocss@0.59.0",
|
|
395
397
|
"@unocss/core": "https://esm.sh/@unocss/core@0.59.0",
|
|
396
398
|
"@unocss/preset-wind": "https://esm.sh/@unocss/preset-wind@0.59.0",
|
|
397
399
|
redis: "npm:redis",
|
|
398
|
-
pg: "npm:pg"
|
|
400
|
+
pg: "npm:pg",
|
|
401
|
+
"@opentelemetry/api": "npm:@opentelemetry/api@1",
|
|
402
|
+
"@opentelemetry/core": "npm:@opentelemetry/core@1"
|
|
399
403
|
},
|
|
400
404
|
compilerOptions: {
|
|
401
405
|
jsx: "react-jsx",
|
|
@@ -602,6 +606,7 @@ function getUnoCSSTailwindResetUrl() {
|
|
|
602
606
|
var ESM_CDN_BASE, JSDELIVR_CDN_BASE, DENO_STD_BASE, REACT_VERSION_17, REACT_VERSION_18_2, REACT_VERSION_18_3, REACT_VERSION_19_RC, REACT_VERSION_19, REACT_DEFAULT_VERSION, DEFAULT_ALLOWED_CDN_HOSTS, DENO_STD_VERSION, UNOCSS_VERSION;
|
|
603
607
|
var init_cdn = __esm({
|
|
604
608
|
"src/core/utils/constants/cdn.ts"() {
|
|
609
|
+
"use strict";
|
|
605
610
|
init_version();
|
|
606
611
|
ESM_CDN_BASE = "https://esm.sh";
|
|
607
612
|
JSDELIVR_CDN_BASE = "https://cdn.jsdelivr.net";
|
|
@@ -652,6 +657,7 @@ var init_env2 = __esm({
|
|
|
652
657
|
var HASH_SEED_DJB2, HASH_SEED_FNV1A;
|
|
653
658
|
var init_hash = __esm({
|
|
654
659
|
"src/core/utils/constants/hash.ts"() {
|
|
660
|
+
"use strict";
|
|
655
661
|
HASH_SEED_DJB2 = 5381;
|
|
656
662
|
HASH_SEED_FNV1A = 2166136261;
|
|
657
663
|
}
|
|
@@ -661,6 +667,7 @@ var init_hash = __esm({
|
|
|
661
667
|
var KB_IN_BYTES, HTTP_MODULE_FETCH_TIMEOUT_MS, HMR_RECONNECT_DELAY_MS, HMR_RELOAD_DELAY_MS, HMR_FILE_WATCHER_DEBOUNCE_MS, HMR_KEEP_ALIVE_INTERVAL_MS, DASHBOARD_RECONNECT_DELAY_MS, SERVER_FUNCTION_DEFAULT_TIMEOUT_MS, PREFETCH_MAX_SIZE_BYTES, PREFETCH_DEFAULT_TIMEOUT_MS, PREFETCH_DEFAULT_DELAY_MS, HTTP_OK, HTTP_NO_CONTENT, HTTP_CREATED, HTTP_REDIRECT_FOUND, HTTP_NOT_MODIFIED, HTTP_BAD_REQUEST, HTTP_UNAUTHORIZED, HTTP_FORBIDDEN, HTTP_NOT_FOUND, HTTP_METHOD_NOT_ALLOWED, HTTP_GONE, HTTP_PAYLOAD_TOO_LARGE, HTTP_URI_TOO_LONG, HTTP_TOO_MANY_REQUESTS, HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE, HTTP_SERVER_ERROR, HTTP_INTERNAL_SERVER_ERROR, HTTP_BAD_GATEWAY, HTTP_NOT_IMPLEMENTED, HTTP_UNAVAILABLE, HTTP_NETWORK_CONNECT_TIMEOUT, HTTP_STATUS_SUCCESS_MIN, HTTP_STATUS_REDIRECT_MIN, HTTP_STATUS_CLIENT_ERROR_MIN, HTTP_STATUS_SERVER_ERROR_MIN, HTTP_CONTENT_TYPES, MS_PER_MINUTE, HTTP_CONTENT_TYPE_IMAGE_PNG, HTTP_CONTENT_TYPE_IMAGE_JPEG, HTTP_CONTENT_TYPE_IMAGE_WEBP, HTTP_CONTENT_TYPE_IMAGE_AVIF, HTTP_CONTENT_TYPE_IMAGE_SVG, HTTP_CONTENT_TYPE_IMAGE_GIF, HTTP_CONTENT_TYPE_IMAGE_ICO;
|
|
662
668
|
var init_http = __esm({
|
|
663
669
|
"src/core/utils/constants/http.ts"() {
|
|
670
|
+
"use strict";
|
|
664
671
|
init_cache();
|
|
665
672
|
KB_IN_BYTES = 1024;
|
|
666
673
|
HTTP_MODULE_FETCH_TIMEOUT_MS = 2500;
|
|
@@ -764,6 +771,7 @@ var init_html = __esm({
|
|
|
764
771
|
var DEFAULT_DEV_SERVER_PORT, DEFAULT_REDIS_PORT, DEFAULT_API_SERVER_PORT, DEFAULT_PREVIEW_SERVER_PORT, DEFAULT_METRICS_PORT, BYTES_PER_KB, BYTES_PER_MB, DEFAULT_IMAGE_THUMBNAIL_SIZE, DEFAULT_IMAGE_SMALL_SIZE, DEFAULT_IMAGE_LARGE_SIZE, RESPONSIVE_IMAGE_WIDTH_XS, RESPONSIVE_IMAGE_WIDTH_SM, RESPONSIVE_IMAGE_WIDTH_MD, RESPONSIVE_IMAGE_WIDTH_LG, RESPONSIVE_IMAGE_WIDTHS, MAX_CHUNK_SIZE_KB, MIN_PORT, MAX_PORT, DEFAULT_SERVER_PORT;
|
|
765
772
|
var init_network = __esm({
|
|
766
773
|
"src/core/utils/constants/network.ts"() {
|
|
774
|
+
"use strict";
|
|
767
775
|
DEFAULT_DEV_SERVER_PORT = 3e3;
|
|
768
776
|
DEFAULT_REDIS_PORT = 6379;
|
|
769
777
|
DEFAULT_API_SERVER_PORT = 8080;
|
|
@@ -1149,7 +1157,6 @@ function fromBase64Url(encoded) {
|
|
|
1149
1157
|
}
|
|
1150
1158
|
var init_path_utils = __esm({
|
|
1151
1159
|
"src/core/utils/path-utils.ts"() {
|
|
1152
|
-
"use strict";
|
|
1153
1160
|
init_logger();
|
|
1154
1161
|
}
|
|
1155
1162
|
});
|
|
@@ -2481,119 +2488,19 @@ var init_environment_adapter = __esm({
|
|
|
2481
2488
|
}
|
|
2482
2489
|
});
|
|
2483
2490
|
|
|
2484
|
-
//
|
|
2485
|
-
var require_stream = __commonJS({
|
|
2486
|
-
"../../../../node_modules/ws/lib/stream.js"(exports, module) {
|
|
2487
|
-
"use strict";
|
|
2488
|
-
var { Duplex } = __require2("stream");
|
|
2489
|
-
function emitClose(stream2) {
|
|
2490
|
-
stream2.emit("close");
|
|
2491
|
-
}
|
|
2492
|
-
function duplexOnEnd() {
|
|
2493
|
-
if (!this.destroyed && this._writableState.finished) {
|
|
2494
|
-
this.destroy();
|
|
2495
|
-
}
|
|
2496
|
-
}
|
|
2497
|
-
function duplexOnError(err) {
|
|
2498
|
-
this.removeListener("error", duplexOnError);
|
|
2499
|
-
this.destroy();
|
|
2500
|
-
if (this.listenerCount("error") === 0) {
|
|
2501
|
-
this.emit("error", err);
|
|
2502
|
-
}
|
|
2503
|
-
}
|
|
2504
|
-
function createWebSocketStream2(ws, options) {
|
|
2505
|
-
let terminateOnDestroy = true;
|
|
2506
|
-
const duplex = new Duplex({
|
|
2507
|
-
...options,
|
|
2508
|
-
autoDestroy: false,
|
|
2509
|
-
emitClose: false,
|
|
2510
|
-
objectMode: false,
|
|
2511
|
-
writableObjectMode: false
|
|
2512
|
-
});
|
|
2513
|
-
ws.on("message", function message(msg, isBinary) {
|
|
2514
|
-
const data = !isBinary && duplex._readableState.objectMode ? msg.toString() : msg;
|
|
2515
|
-
if (!duplex.push(data))
|
|
2516
|
-
ws.pause();
|
|
2517
|
-
});
|
|
2518
|
-
ws.once("error", function error2(err) {
|
|
2519
|
-
if (duplex.destroyed)
|
|
2520
|
-
return;
|
|
2521
|
-
terminateOnDestroy = false;
|
|
2522
|
-
duplex.destroy(err);
|
|
2523
|
-
});
|
|
2524
|
-
ws.once("close", function close() {
|
|
2525
|
-
if (duplex.destroyed)
|
|
2526
|
-
return;
|
|
2527
|
-
duplex.push(null);
|
|
2528
|
-
});
|
|
2529
|
-
duplex._destroy = function(err, callback) {
|
|
2530
|
-
if (ws.readyState === ws.CLOSED) {
|
|
2531
|
-
callback(err);
|
|
2532
|
-
process.nextTick(emitClose, duplex);
|
|
2533
|
-
return;
|
|
2534
|
-
}
|
|
2535
|
-
let called = false;
|
|
2536
|
-
ws.once("error", function error2(err2) {
|
|
2537
|
-
called = true;
|
|
2538
|
-
callback(err2);
|
|
2539
|
-
});
|
|
2540
|
-
ws.once("close", function close() {
|
|
2541
|
-
if (!called)
|
|
2542
|
-
callback(err);
|
|
2543
|
-
process.nextTick(emitClose, duplex);
|
|
2544
|
-
});
|
|
2545
|
-
if (terminateOnDestroy)
|
|
2546
|
-
ws.terminate();
|
|
2547
|
-
};
|
|
2548
|
-
duplex._final = function(callback) {
|
|
2549
|
-
if (ws.readyState === ws.CONNECTING) {
|
|
2550
|
-
ws.once("open", function open() {
|
|
2551
|
-
duplex._final(callback);
|
|
2552
|
-
});
|
|
2553
|
-
return;
|
|
2554
|
-
}
|
|
2555
|
-
if (ws._socket === null)
|
|
2556
|
-
return;
|
|
2557
|
-
if (ws._socket._writableState.finished) {
|
|
2558
|
-
callback();
|
|
2559
|
-
if (duplex._readableState.endEmitted)
|
|
2560
|
-
duplex.destroy();
|
|
2561
|
-
} else {
|
|
2562
|
-
ws._socket.once("finish", function finish() {
|
|
2563
|
-
callback();
|
|
2564
|
-
});
|
|
2565
|
-
ws.close();
|
|
2566
|
-
}
|
|
2567
|
-
};
|
|
2568
|
-
duplex._read = function() {
|
|
2569
|
-
if (ws.isPaused)
|
|
2570
|
-
ws.resume();
|
|
2571
|
-
};
|
|
2572
|
-
duplex._write = function(chunk, encoding, callback) {
|
|
2573
|
-
if (ws.readyState === ws.CONNECTING) {
|
|
2574
|
-
ws.once("open", function open() {
|
|
2575
|
-
duplex._write(chunk, encoding, callback);
|
|
2576
|
-
});
|
|
2577
|
-
return;
|
|
2578
|
-
}
|
|
2579
|
-
ws.send(chunk, callback);
|
|
2580
|
-
};
|
|
2581
|
-
duplex.on("end", duplexOnEnd);
|
|
2582
|
-
duplex.on("error", duplexOnError);
|
|
2583
|
-
return duplex;
|
|
2584
|
-
}
|
|
2585
|
-
module.exports = createWebSocketStream2;
|
|
2586
|
-
}
|
|
2587
|
-
});
|
|
2588
|
-
|
|
2589
|
-
// ../../../../node_modules/ws/lib/constants.js
|
|
2491
|
+
// ../node_modules/ws/lib/constants.js
|
|
2590
2492
|
var require_constants = __commonJS({
|
|
2591
|
-
"
|
|
2493
|
+
"../node_modules/ws/lib/constants.js"(exports, module) {
|
|
2592
2494
|
"use strict";
|
|
2495
|
+
var BINARY_TYPES = ["nodebuffer", "arraybuffer", "fragments"];
|
|
2496
|
+
var hasBlob = typeof Blob !== "undefined";
|
|
2497
|
+
if (hasBlob)
|
|
2498
|
+
BINARY_TYPES.push("blob");
|
|
2593
2499
|
module.exports = {
|
|
2594
|
-
BINARY_TYPES
|
|
2500
|
+
BINARY_TYPES,
|
|
2595
2501
|
EMPTY_BUFFER: Buffer.alloc(0),
|
|
2596
2502
|
GUID: "258EAFA5-E914-47DA-95CA-C5AB0DC85B11",
|
|
2503
|
+
hasBlob,
|
|
2597
2504
|
kForOnEventAttribute: Symbol("kIsForOnEventAttribute"),
|
|
2598
2505
|
kListener: Symbol("kListener"),
|
|
2599
2506
|
kStatusCode: Symbol("status-code"),
|
|
@@ -2604,9 +2511,9 @@ var require_constants = __commonJS({
|
|
|
2604
2511
|
}
|
|
2605
2512
|
});
|
|
2606
2513
|
|
|
2607
|
-
//
|
|
2514
|
+
// ../node_modules/ws/lib/buffer-util.js
|
|
2608
2515
|
var require_buffer_util = __commonJS({
|
|
2609
|
-
"
|
|
2516
|
+
"../node_modules/ws/lib/buffer-util.js"(exports, module) {
|
|
2610
2517
|
"use strict";
|
|
2611
2518
|
var { EMPTY_BUFFER } = require_constants();
|
|
2612
2519
|
var FastBuffer = Buffer[Symbol.species];
|
|
@@ -2686,9 +2593,9 @@ var require_buffer_util = __commonJS({
|
|
|
2686
2593
|
}
|
|
2687
2594
|
});
|
|
2688
2595
|
|
|
2689
|
-
//
|
|
2596
|
+
// ../node_modules/ws/lib/limiter.js
|
|
2690
2597
|
var require_limiter = __commonJS({
|
|
2691
|
-
"
|
|
2598
|
+
"../node_modules/ws/lib/limiter.js"(exports, module) {
|
|
2692
2599
|
"use strict";
|
|
2693
2600
|
var kDone = Symbol("kDone");
|
|
2694
2601
|
var kRun = Symbol("kRun");
|
|
@@ -2737,9 +2644,9 @@ var require_limiter = __commonJS({
|
|
|
2737
2644
|
}
|
|
2738
2645
|
});
|
|
2739
2646
|
|
|
2740
|
-
//
|
|
2647
|
+
// ../node_modules/ws/lib/permessage-deflate.js
|
|
2741
2648
|
var require_permessage_deflate = __commonJS({
|
|
2742
|
-
"
|
|
2649
|
+
"../node_modules/ws/lib/permessage-deflate.js"(exports, module) {
|
|
2743
2650
|
"use strict";
|
|
2744
2651
|
var zlib = __require2("zlib");
|
|
2745
2652
|
var bufferUtil = require_buffer_util();
|
|
@@ -3111,17 +3018,22 @@ var require_permessage_deflate = __commonJS({
|
|
|
3111
3018
|
}
|
|
3112
3019
|
function inflateOnError(err) {
|
|
3113
3020
|
this[kPerMessageDeflate]._inflate = null;
|
|
3021
|
+
if (this[kError]) {
|
|
3022
|
+
this[kCallback](this[kError]);
|
|
3023
|
+
return;
|
|
3024
|
+
}
|
|
3114
3025
|
err[kStatusCode] = 1007;
|
|
3115
3026
|
this[kCallback](err);
|
|
3116
3027
|
}
|
|
3117
3028
|
}
|
|
3118
3029
|
});
|
|
3119
3030
|
|
|
3120
|
-
//
|
|
3031
|
+
// ../node_modules/ws/lib/validation.js
|
|
3121
3032
|
var require_validation = __commonJS({
|
|
3122
|
-
"
|
|
3033
|
+
"../node_modules/ws/lib/validation.js"(exports, module) {
|
|
3123
3034
|
"use strict";
|
|
3124
3035
|
var { isUtf8 } = __require2("buffer");
|
|
3036
|
+
var { hasBlob } = require_constants();
|
|
3125
3037
|
var tokenChars = [
|
|
3126
3038
|
0,
|
|
3127
3039
|
0,
|
|
@@ -3292,7 +3204,11 @@ var require_validation = __commonJS({
|
|
|
3292
3204
|
}
|
|
3293
3205
|
return true;
|
|
3294
3206
|
}
|
|
3207
|
+
function isBlob(value) {
|
|
3208
|
+
return hasBlob && typeof value === "object" && typeof value.arrayBuffer === "function" && typeof value.type === "string" && typeof value.stream === "function" && (value[Symbol.toStringTag] === "Blob" || value[Symbol.toStringTag] === "File");
|
|
3209
|
+
}
|
|
3295
3210
|
module.exports = {
|
|
3211
|
+
isBlob,
|
|
3296
3212
|
isValidStatusCode,
|
|
3297
3213
|
isValidUTF8: _isValidUTF8,
|
|
3298
3214
|
tokenChars
|
|
@@ -3313,9 +3229,9 @@ var require_validation = __commonJS({
|
|
|
3313
3229
|
}
|
|
3314
3230
|
});
|
|
3315
3231
|
|
|
3316
|
-
//
|
|
3232
|
+
// ../node_modules/ws/lib/receiver.js
|
|
3317
3233
|
var require_receiver = __commonJS({
|
|
3318
|
-
"
|
|
3234
|
+
"../node_modules/ws/lib/receiver.js"(exports, module) {
|
|
3319
3235
|
"use strict";
|
|
3320
3236
|
var { Writable } = __require2("stream");
|
|
3321
3237
|
var PerMessageDeflate = require_permessage_deflate();
|
|
@@ -3785,6 +3701,8 @@ var require_receiver = __commonJS({
|
|
|
3785
3701
|
data = concat(fragments, messageLength);
|
|
3786
3702
|
} else if (this._binaryType === "arraybuffer") {
|
|
3787
3703
|
data = toArrayBuffer(concat(fragments, messageLength));
|
|
3704
|
+
} else if (this._binaryType === "blob") {
|
|
3705
|
+
data = new Blob(fragments);
|
|
3788
3706
|
} else {
|
|
3789
3707
|
data = fragments;
|
|
3790
3708
|
}
|
|
@@ -3914,18 +3832,24 @@ var require_receiver = __commonJS({
|
|
|
3914
3832
|
}
|
|
3915
3833
|
});
|
|
3916
3834
|
|
|
3917
|
-
//
|
|
3835
|
+
// ../node_modules/ws/lib/sender.js
|
|
3918
3836
|
var require_sender = __commonJS({
|
|
3919
|
-
"
|
|
3837
|
+
"../node_modules/ws/lib/sender.js"(exports, module) {
|
|
3920
3838
|
"use strict";
|
|
3921
3839
|
var { Duplex } = __require2("stream");
|
|
3922
3840
|
var { randomFillSync } = __require2("crypto");
|
|
3923
3841
|
var PerMessageDeflate = require_permessage_deflate();
|
|
3924
|
-
var { EMPTY_BUFFER } = require_constants();
|
|
3925
|
-
var { isValidStatusCode } = require_validation();
|
|
3842
|
+
var { EMPTY_BUFFER, kWebSocket, NOOP } = require_constants();
|
|
3843
|
+
var { isBlob, isValidStatusCode } = require_validation();
|
|
3926
3844
|
var { mask: applyMask, toBuffer } = require_buffer_util();
|
|
3927
3845
|
var kByteLength = Symbol("kByteLength");
|
|
3928
3846
|
var maskBuffer = Buffer.alloc(4);
|
|
3847
|
+
var RANDOM_POOL_SIZE = 8 * 1024;
|
|
3848
|
+
var randomPool;
|
|
3849
|
+
var randomPoolPointer = RANDOM_POOL_SIZE;
|
|
3850
|
+
var DEFAULT = 0;
|
|
3851
|
+
var DEFLATING = 1;
|
|
3852
|
+
var GET_BLOB_DATA = 2;
|
|
3929
3853
|
var Sender2 = class _Sender {
|
|
3930
3854
|
/**
|
|
3931
3855
|
* Creates a Sender instance.
|
|
@@ -3945,8 +3869,10 @@ var require_sender = __commonJS({
|
|
|
3945
3869
|
this._firstFragment = true;
|
|
3946
3870
|
this._compress = false;
|
|
3947
3871
|
this._bufferedBytes = 0;
|
|
3948
|
-
this._deflating = false;
|
|
3949
3872
|
this._queue = [];
|
|
3873
|
+
this._state = DEFAULT;
|
|
3874
|
+
this.onerror = NOOP;
|
|
3875
|
+
this[kWebSocket] = void 0;
|
|
3950
3876
|
}
|
|
3951
3877
|
/**
|
|
3952
3878
|
* Frames a piece of data according to the HyBi WebSocket protocol.
|
|
@@ -3979,7 +3905,17 @@ var require_sender = __commonJS({
|
|
|
3979
3905
|
if (options.generateMask) {
|
|
3980
3906
|
options.generateMask(mask);
|
|
3981
3907
|
} else {
|
|
3982
|
-
|
|
3908
|
+
if (randomPoolPointer === RANDOM_POOL_SIZE) {
|
|
3909
|
+
if (randomPool === void 0) {
|
|
3910
|
+
randomPool = Buffer.alloc(RANDOM_POOL_SIZE);
|
|
3911
|
+
}
|
|
3912
|
+
randomFillSync(randomPool, 0, RANDOM_POOL_SIZE);
|
|
3913
|
+
randomPoolPointer = 0;
|
|
3914
|
+
}
|
|
3915
|
+
mask[0] = randomPool[randomPoolPointer++];
|
|
3916
|
+
mask[1] = randomPool[randomPoolPointer++];
|
|
3917
|
+
mask[2] = randomPool[randomPoolPointer++];
|
|
3918
|
+
mask[3] = randomPool[randomPoolPointer++];
|
|
3983
3919
|
}
|
|
3984
3920
|
skipMasking = (mask[0] | mask[1] | mask[2] | mask[3]) === 0;
|
|
3985
3921
|
offset = 6;
|
|
@@ -4072,7 +4008,7 @@ var require_sender = __commonJS({
|
|
|
4072
4008
|
readOnly: false,
|
|
4073
4009
|
rsv1: false
|
|
4074
4010
|
};
|
|
4075
|
-
if (this.
|
|
4011
|
+
if (this._state !== DEFAULT) {
|
|
4076
4012
|
this.enqueue([this.dispatch, buf, false, options, cb]);
|
|
4077
4013
|
} else {
|
|
4078
4014
|
this.sendFrame(_Sender.frame(buf, options), cb);
|
|
@@ -4092,6 +4028,9 @@ var require_sender = __commonJS({
|
|
|
4092
4028
|
if (typeof data === "string") {
|
|
4093
4029
|
byteLength = Buffer.byteLength(data);
|
|
4094
4030
|
readOnly = false;
|
|
4031
|
+
} else if (isBlob(data)) {
|
|
4032
|
+
byteLength = data.size;
|
|
4033
|
+
readOnly = false;
|
|
4095
4034
|
} else {
|
|
4096
4035
|
data = toBuffer(data);
|
|
4097
4036
|
byteLength = data.length;
|
|
@@ -4110,7 +4049,13 @@ var require_sender = __commonJS({
|
|
|
4110
4049
|
readOnly,
|
|
4111
4050
|
rsv1: false
|
|
4112
4051
|
};
|
|
4113
|
-
if (
|
|
4052
|
+
if (isBlob(data)) {
|
|
4053
|
+
if (this._state !== DEFAULT) {
|
|
4054
|
+
this.enqueue([this.getBlobData, data, false, options, cb]);
|
|
4055
|
+
} else {
|
|
4056
|
+
this.getBlobData(data, false, options, cb);
|
|
4057
|
+
}
|
|
4058
|
+
} else if (this._state !== DEFAULT) {
|
|
4114
4059
|
this.enqueue([this.dispatch, data, false, options, cb]);
|
|
4115
4060
|
} else {
|
|
4116
4061
|
this.sendFrame(_Sender.frame(data, options), cb);
|
|
@@ -4130,6 +4075,9 @@ var require_sender = __commonJS({
|
|
|
4130
4075
|
if (typeof data === "string") {
|
|
4131
4076
|
byteLength = Buffer.byteLength(data);
|
|
4132
4077
|
readOnly = false;
|
|
4078
|
+
} else if (isBlob(data)) {
|
|
4079
|
+
byteLength = data.size;
|
|
4080
|
+
readOnly = false;
|
|
4133
4081
|
} else {
|
|
4134
4082
|
data = toBuffer(data);
|
|
4135
4083
|
byteLength = data.length;
|
|
@@ -4148,7 +4096,13 @@ var require_sender = __commonJS({
|
|
|
4148
4096
|
readOnly,
|
|
4149
4097
|
rsv1: false
|
|
4150
4098
|
};
|
|
4151
|
-
if (
|
|
4099
|
+
if (isBlob(data)) {
|
|
4100
|
+
if (this._state !== DEFAULT) {
|
|
4101
|
+
this.enqueue([this.getBlobData, data, false, options, cb]);
|
|
4102
|
+
} else {
|
|
4103
|
+
this.getBlobData(data, false, options, cb);
|
|
4104
|
+
}
|
|
4105
|
+
} else if (this._state !== DEFAULT) {
|
|
4152
4106
|
this.enqueue([this.dispatch, data, false, options, cb]);
|
|
4153
4107
|
} else {
|
|
4154
4108
|
this.sendFrame(_Sender.frame(data, options), cb);
|
|
@@ -4179,6 +4133,9 @@ var require_sender = __commonJS({
|
|
|
4179
4133
|
if (typeof data === "string") {
|
|
4180
4134
|
byteLength = Buffer.byteLength(data);
|
|
4181
4135
|
readOnly = false;
|
|
4136
|
+
} else if (isBlob(data)) {
|
|
4137
|
+
byteLength = data.size;
|
|
4138
|
+
readOnly = false;
|
|
4182
4139
|
} else {
|
|
4183
4140
|
data = toBuffer(data);
|
|
4184
4141
|
byteLength = data.length;
|
|
@@ -4196,38 +4153,75 @@ var require_sender = __commonJS({
|
|
|
4196
4153
|
}
|
|
4197
4154
|
if (options.fin)
|
|
4198
4155
|
this._firstFragment = true;
|
|
4199
|
-
|
|
4200
|
-
|
|
4201
|
-
|
|
4202
|
-
|
|
4203
|
-
|
|
4204
|
-
|
|
4205
|
-
|
|
4206
|
-
|
|
4207
|
-
|
|
4208
|
-
|
|
4209
|
-
|
|
4210
|
-
if (this.
|
|
4211
|
-
this.enqueue([this.
|
|
4156
|
+
const opts = {
|
|
4157
|
+
[kByteLength]: byteLength,
|
|
4158
|
+
fin: options.fin,
|
|
4159
|
+
generateMask: this._generateMask,
|
|
4160
|
+
mask: options.mask,
|
|
4161
|
+
maskBuffer: this._maskBuffer,
|
|
4162
|
+
opcode,
|
|
4163
|
+
readOnly,
|
|
4164
|
+
rsv1
|
|
4165
|
+
};
|
|
4166
|
+
if (isBlob(data)) {
|
|
4167
|
+
if (this._state !== DEFAULT) {
|
|
4168
|
+
this.enqueue([this.getBlobData, data, this._compress, opts, cb]);
|
|
4212
4169
|
} else {
|
|
4213
|
-
this.
|
|
4170
|
+
this.getBlobData(data, this._compress, opts, cb);
|
|
4214
4171
|
}
|
|
4172
|
+
} else if (this._state !== DEFAULT) {
|
|
4173
|
+
this.enqueue([this.dispatch, data, this._compress, opts, cb]);
|
|
4215
4174
|
} else {
|
|
4216
|
-
this.
|
|
4217
|
-
_Sender.frame(data, {
|
|
4218
|
-
[kByteLength]: byteLength,
|
|
4219
|
-
fin: options.fin,
|
|
4220
|
-
generateMask: this._generateMask,
|
|
4221
|
-
mask: options.mask,
|
|
4222
|
-
maskBuffer: this._maskBuffer,
|
|
4223
|
-
opcode,
|
|
4224
|
-
readOnly,
|
|
4225
|
-
rsv1: false
|
|
4226
|
-
}),
|
|
4227
|
-
cb
|
|
4228
|
-
);
|
|
4175
|
+
this.dispatch(data, this._compress, opts, cb);
|
|
4229
4176
|
}
|
|
4230
4177
|
}
|
|
4178
|
+
/**
|
|
4179
|
+
* Gets the contents of a blob as binary data.
|
|
4180
|
+
*
|
|
4181
|
+
* @param {Blob} blob The blob
|
|
4182
|
+
* @param {Boolean} [compress=false] Specifies whether or not to compress
|
|
4183
|
+
* the data
|
|
4184
|
+
* @param {Object} options Options object
|
|
4185
|
+
* @param {Boolean} [options.fin=false] Specifies whether or not to set the
|
|
4186
|
+
* FIN bit
|
|
4187
|
+
* @param {Function} [options.generateMask] The function used to generate the
|
|
4188
|
+
* masking key
|
|
4189
|
+
* @param {Boolean} [options.mask=false] Specifies whether or not to mask
|
|
4190
|
+
* `data`
|
|
4191
|
+
* @param {Buffer} [options.maskBuffer] The buffer used to store the masking
|
|
4192
|
+
* key
|
|
4193
|
+
* @param {Number} options.opcode The opcode
|
|
4194
|
+
* @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
|
|
4195
|
+
* modified
|
|
4196
|
+
* @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
|
|
4197
|
+
* RSV1 bit
|
|
4198
|
+
* @param {Function} [cb] Callback
|
|
4199
|
+
* @private
|
|
4200
|
+
*/
|
|
4201
|
+
getBlobData(blob, compress, options, cb) {
|
|
4202
|
+
this._bufferedBytes += options[kByteLength];
|
|
4203
|
+
this._state = GET_BLOB_DATA;
|
|
4204
|
+
blob.arrayBuffer().then((arrayBuffer) => {
|
|
4205
|
+
if (this._socket.destroyed) {
|
|
4206
|
+
const err = new Error(
|
|
4207
|
+
"The socket was closed while the blob was being read"
|
|
4208
|
+
);
|
|
4209
|
+
process.nextTick(callCallbacks, this, err, cb);
|
|
4210
|
+
return;
|
|
4211
|
+
}
|
|
4212
|
+
this._bufferedBytes -= options[kByteLength];
|
|
4213
|
+
const data = toBuffer(arrayBuffer);
|
|
4214
|
+
if (!compress) {
|
|
4215
|
+
this._state = DEFAULT;
|
|
4216
|
+
this.sendFrame(_Sender.frame(data, options), cb);
|
|
4217
|
+
this.dequeue();
|
|
4218
|
+
} else {
|
|
4219
|
+
this.dispatch(data, compress, options, cb);
|
|
4220
|
+
}
|
|
4221
|
+
}).catch((err) => {
|
|
4222
|
+
process.nextTick(onError, this, err, cb);
|
|
4223
|
+
});
|
|
4224
|
+
}
|
|
4231
4225
|
/**
|
|
4232
4226
|
* Dispatches a message.
|
|
4233
4227
|
*
|
|
@@ -4258,24 +4252,17 @@ var require_sender = __commonJS({
|
|
|
4258
4252
|
}
|
|
4259
4253
|
const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];
|
|
4260
4254
|
this._bufferedBytes += options[kByteLength];
|
|
4261
|
-
this.
|
|
4255
|
+
this._state = DEFLATING;
|
|
4262
4256
|
perMessageDeflate.compress(data, options.fin, (_, buf) => {
|
|
4263
4257
|
if (this._socket.destroyed) {
|
|
4264
4258
|
const err = new Error(
|
|
4265
4259
|
"The socket was closed while data was being compressed"
|
|
4266
4260
|
);
|
|
4267
|
-
|
|
4268
|
-
cb(err);
|
|
4269
|
-
for (let i = 0; i < this._queue.length; i++) {
|
|
4270
|
-
const params = this._queue[i];
|
|
4271
|
-
const callback = params[params.length - 1];
|
|
4272
|
-
if (typeof callback === "function")
|
|
4273
|
-
callback(err);
|
|
4274
|
-
}
|
|
4261
|
+
callCallbacks(this, err, cb);
|
|
4275
4262
|
return;
|
|
4276
4263
|
}
|
|
4277
4264
|
this._bufferedBytes -= options[kByteLength];
|
|
4278
|
-
this.
|
|
4265
|
+
this._state = DEFAULT;
|
|
4279
4266
|
options.readOnly = false;
|
|
4280
4267
|
this.sendFrame(_Sender.frame(buf, options), cb);
|
|
4281
4268
|
this.dequeue();
|
|
@@ -4287,7 +4274,7 @@ var require_sender = __commonJS({
|
|
|
4287
4274
|
* @private
|
|
4288
4275
|
*/
|
|
4289
4276
|
dequeue() {
|
|
4290
|
-
while (
|
|
4277
|
+
while (this._state === DEFAULT && this._queue.length) {
|
|
4291
4278
|
const params = this._queue.shift();
|
|
4292
4279
|
this._bufferedBytes -= params[3][kByteLength];
|
|
4293
4280
|
Reflect.apply(params[0], this, params.slice(1));
|
|
@@ -4306,7 +4293,7 @@ var require_sender = __commonJS({
|
|
|
4306
4293
|
/**
|
|
4307
4294
|
* Sends a frame.
|
|
4308
4295
|
*
|
|
4309
|
-
* @param {Buffer[]} list The frame to send
|
|
4296
|
+
* @param {(Buffer | String)[]} list The frame to send
|
|
4310
4297
|
* @param {Function} [cb] Callback
|
|
4311
4298
|
* @private
|
|
4312
4299
|
*/
|
|
@@ -4322,12 +4309,26 @@ var require_sender = __commonJS({
|
|
|
4322
4309
|
}
|
|
4323
4310
|
};
|
|
4324
4311
|
module.exports = Sender2;
|
|
4312
|
+
function callCallbacks(sender, err, cb) {
|
|
4313
|
+
if (typeof cb === "function")
|
|
4314
|
+
cb(err);
|
|
4315
|
+
for (let i = 0; i < sender._queue.length; i++) {
|
|
4316
|
+
const params = sender._queue[i];
|
|
4317
|
+
const callback = params[params.length - 1];
|
|
4318
|
+
if (typeof callback === "function")
|
|
4319
|
+
callback(err);
|
|
4320
|
+
}
|
|
4321
|
+
}
|
|
4322
|
+
function onError(sender, err, cb) {
|
|
4323
|
+
callCallbacks(sender, err, cb);
|
|
4324
|
+
sender.onerror(err);
|
|
4325
|
+
}
|
|
4325
4326
|
}
|
|
4326
4327
|
});
|
|
4327
4328
|
|
|
4328
|
-
//
|
|
4329
|
+
// ../node_modules/ws/lib/event-target.js
|
|
4329
4330
|
var require_event_target = __commonJS({
|
|
4330
|
-
"
|
|
4331
|
+
"../node_modules/ws/lib/event-target.js"(exports, module) {
|
|
4331
4332
|
"use strict";
|
|
4332
4333
|
var { kForOnEventAttribute, kListener } = require_constants();
|
|
4333
4334
|
var kCode = Symbol("kCode");
|
|
@@ -4554,9 +4555,9 @@ var require_event_target = __commonJS({
|
|
|
4554
4555
|
}
|
|
4555
4556
|
});
|
|
4556
4557
|
|
|
4557
|
-
//
|
|
4558
|
+
// ../node_modules/ws/lib/extension.js
|
|
4558
4559
|
var require_extension = __commonJS({
|
|
4559
|
-
"
|
|
4560
|
+
"../node_modules/ws/lib/extension.js"(exports, module) {
|
|
4560
4561
|
"use strict";
|
|
4561
4562
|
var { tokenChars } = require_validation();
|
|
4562
4563
|
function push(dest, name, elem) {
|
|
@@ -4724,9 +4725,9 @@ var require_extension = __commonJS({
|
|
|
4724
4725
|
}
|
|
4725
4726
|
});
|
|
4726
4727
|
|
|
4727
|
-
//
|
|
4728
|
+
// ../node_modules/ws/lib/websocket.js
|
|
4728
4729
|
var require_websocket = __commonJS({
|
|
4729
|
-
"
|
|
4730
|
+
"../node_modules/ws/lib/websocket.js"(exports, module) {
|
|
4730
4731
|
"use strict";
|
|
4731
4732
|
var EventEmitter = __require2("events");
|
|
4732
4733
|
var https = __require2("https");
|
|
@@ -4739,6 +4740,7 @@ var require_websocket = __commonJS({
|
|
|
4739
4740
|
var PerMessageDeflate = require_permessage_deflate();
|
|
4740
4741
|
var Receiver2 = require_receiver();
|
|
4741
4742
|
var Sender2 = require_sender();
|
|
4743
|
+
var { isBlob } = require_validation();
|
|
4742
4744
|
var {
|
|
4743
4745
|
BINARY_TYPES,
|
|
4744
4746
|
EMPTY_BUFFER,
|
|
@@ -4775,6 +4777,7 @@ var require_websocket = __commonJS({
|
|
|
4775
4777
|
this._closeFrameSent = false;
|
|
4776
4778
|
this._closeMessage = EMPTY_BUFFER;
|
|
4777
4779
|
this._closeTimer = null;
|
|
4780
|
+
this._errorEmitted = false;
|
|
4778
4781
|
this._extensions = {};
|
|
4779
4782
|
this._paused = false;
|
|
4780
4783
|
this._protocol = "";
|
|
@@ -4803,9 +4806,8 @@ var require_websocket = __commonJS({
|
|
|
4803
4806
|
}
|
|
4804
4807
|
}
|
|
4805
4808
|
/**
|
|
4806
|
-
*
|
|
4807
|
-
*
|
|
4808
|
-
* type).
|
|
4809
|
+
* For historical reasons, the custom "nodebuffer" type is used by the default
|
|
4810
|
+
* instead of "blob".
|
|
4809
4811
|
*
|
|
4810
4812
|
* @type {String}
|
|
4811
4813
|
*/
|
|
@@ -4910,10 +4912,12 @@ var require_websocket = __commonJS({
|
|
|
4910
4912
|
maxPayload: options.maxPayload,
|
|
4911
4913
|
skipUTF8Validation: options.skipUTF8Validation
|
|
4912
4914
|
});
|
|
4913
|
-
|
|
4915
|
+
const sender = new Sender2(socket, this._extensions, options.generateMask);
|
|
4914
4916
|
this._receiver = receiver;
|
|
4917
|
+
this._sender = sender;
|
|
4915
4918
|
this._socket = socket;
|
|
4916
4919
|
receiver[kWebSocket] = this;
|
|
4920
|
+
sender[kWebSocket] = this;
|
|
4917
4921
|
socket[kWebSocket] = this;
|
|
4918
4922
|
receiver.on("conclude", receiverOnConclude);
|
|
4919
4923
|
receiver.on("drain", receiverOnDrain);
|
|
@@ -4921,6 +4925,7 @@ var require_websocket = __commonJS({
|
|
|
4921
4925
|
receiver.on("message", receiverOnMessage);
|
|
4922
4926
|
receiver.on("ping", receiverOnPing);
|
|
4923
4927
|
receiver.on("pong", receiverOnPong);
|
|
4928
|
+
sender.onerror = senderOnError;
|
|
4924
4929
|
if (socket.setTimeout)
|
|
4925
4930
|
socket.setTimeout(0);
|
|
4926
4931
|
if (socket.setNoDelay)
|
|
@@ -4995,10 +5000,7 @@ var require_websocket = __commonJS({
|
|
|
4995
5000
|
this._socket.end();
|
|
4996
5001
|
}
|
|
4997
5002
|
});
|
|
4998
|
-
this
|
|
4999
|
-
this._socket.destroy.bind(this._socket),
|
|
5000
|
-
closeTimeout
|
|
5001
|
-
);
|
|
5003
|
+
setCloseTimer(this);
|
|
5002
5004
|
}
|
|
5003
5005
|
/**
|
|
5004
5006
|
* Pause the socket.
|
|
@@ -5260,7 +5262,7 @@ var require_websocket = __commonJS({
|
|
|
5260
5262
|
const isIpcUrl = parsedUrl.protocol === "ws+unix:";
|
|
5261
5263
|
let invalidUrlMessage;
|
|
5262
5264
|
if (parsedUrl.protocol !== "ws:" && !isSecure && !isIpcUrl) {
|
|
5263
|
-
invalidUrlMessage = `The URL's protocol must be one of "ws:", "wss:", "http:", "https", or "ws+unix:"`;
|
|
5265
|
+
invalidUrlMessage = `The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`;
|
|
5264
5266
|
} else if (isIpcUrl && !parsedUrl.pathname) {
|
|
5265
5267
|
invalidUrlMessage = "The URL's pathname is empty";
|
|
5266
5268
|
} else if (parsedUrl.hash) {
|
|
@@ -5404,7 +5406,8 @@ var require_websocket = __commonJS({
|
|
|
5404
5406
|
if (websocket.readyState !== WebSocket2.CONNECTING)
|
|
5405
5407
|
return;
|
|
5406
5408
|
req = websocket._req = null;
|
|
5407
|
-
|
|
5409
|
+
const upgrade = res.headers.upgrade;
|
|
5410
|
+
if (upgrade === void 0 || upgrade.toLowerCase() !== "websocket") {
|
|
5408
5411
|
abortHandshake(websocket, socket, "Invalid Upgrade header");
|
|
5409
5412
|
return;
|
|
5410
5413
|
}
|
|
@@ -5475,6 +5478,7 @@ var require_websocket = __commonJS({
|
|
|
5475
5478
|
}
|
|
5476
5479
|
function emitErrorAndClose(websocket, err) {
|
|
5477
5480
|
websocket._readyState = WebSocket2.CLOSING;
|
|
5481
|
+
websocket._errorEmitted = true;
|
|
5478
5482
|
websocket.emit("error", err);
|
|
5479
5483
|
websocket.emitClose();
|
|
5480
5484
|
}
|
|
@@ -5508,7 +5512,7 @@ var require_websocket = __commonJS({
|
|
|
5508
5512
|
}
|
|
5509
5513
|
function sendAfterClose(websocket, data, cb) {
|
|
5510
5514
|
if (data) {
|
|
5511
|
-
const length = toBuffer(data).length;
|
|
5515
|
+
const length = isBlob(data) ? data.size : toBuffer(data).length;
|
|
5512
5516
|
if (websocket._socket)
|
|
5513
5517
|
websocket._sender._bufferedBytes += length;
|
|
5514
5518
|
else
|
|
@@ -5547,7 +5551,10 @@ var require_websocket = __commonJS({
|
|
|
5547
5551
|
process.nextTick(resume, websocket._socket);
|
|
5548
5552
|
websocket.close(err[kStatusCode]);
|
|
5549
5553
|
}
|
|
5550
|
-
websocket.
|
|
5554
|
+
if (!websocket._errorEmitted) {
|
|
5555
|
+
websocket._errorEmitted = true;
|
|
5556
|
+
websocket.emit("error", err);
|
|
5557
|
+
}
|
|
5551
5558
|
}
|
|
5552
5559
|
function receiverOnFinish() {
|
|
5553
5560
|
this[kWebSocket].emitClose();
|
|
@@ -5567,6 +5574,26 @@ var require_websocket = __commonJS({
|
|
|
5567
5574
|
function resume(stream2) {
|
|
5568
5575
|
stream2.resume();
|
|
5569
5576
|
}
|
|
5577
|
+
function senderOnError(err) {
|
|
5578
|
+
const websocket = this[kWebSocket];
|
|
5579
|
+
if (websocket.readyState === WebSocket2.CLOSED)
|
|
5580
|
+
return;
|
|
5581
|
+
if (websocket.readyState === WebSocket2.OPEN) {
|
|
5582
|
+
websocket._readyState = WebSocket2.CLOSING;
|
|
5583
|
+
setCloseTimer(websocket);
|
|
5584
|
+
}
|
|
5585
|
+
this._socket.end();
|
|
5586
|
+
if (!websocket._errorEmitted) {
|
|
5587
|
+
websocket._errorEmitted = true;
|
|
5588
|
+
websocket.emit("error", err);
|
|
5589
|
+
}
|
|
5590
|
+
}
|
|
5591
|
+
function setCloseTimer(websocket) {
|
|
5592
|
+
websocket._closeTimer = setTimeout(
|
|
5593
|
+
websocket._socket.destroy.bind(websocket._socket),
|
|
5594
|
+
closeTimeout
|
|
5595
|
+
);
|
|
5596
|
+
}
|
|
5570
5597
|
function socketOnClose() {
|
|
5571
5598
|
const websocket = this[kWebSocket];
|
|
5572
5599
|
this.removeListener("close", socketOnClose);
|
|
@@ -5610,9 +5637,115 @@ var require_websocket = __commonJS({
|
|
|
5610
5637
|
}
|
|
5611
5638
|
});
|
|
5612
5639
|
|
|
5613
|
-
//
|
|
5640
|
+
// ../node_modules/ws/lib/stream.js
|
|
5641
|
+
var require_stream = __commonJS({
|
|
5642
|
+
"../node_modules/ws/lib/stream.js"(exports, module) {
|
|
5643
|
+
"use strict";
|
|
5644
|
+
var WebSocket2 = require_websocket();
|
|
5645
|
+
var { Duplex } = __require2("stream");
|
|
5646
|
+
function emitClose(stream2) {
|
|
5647
|
+
stream2.emit("close");
|
|
5648
|
+
}
|
|
5649
|
+
function duplexOnEnd() {
|
|
5650
|
+
if (!this.destroyed && this._writableState.finished) {
|
|
5651
|
+
this.destroy();
|
|
5652
|
+
}
|
|
5653
|
+
}
|
|
5654
|
+
function duplexOnError(err) {
|
|
5655
|
+
this.removeListener("error", duplexOnError);
|
|
5656
|
+
this.destroy();
|
|
5657
|
+
if (this.listenerCount("error") === 0) {
|
|
5658
|
+
this.emit("error", err);
|
|
5659
|
+
}
|
|
5660
|
+
}
|
|
5661
|
+
function createWebSocketStream2(ws, options) {
|
|
5662
|
+
let terminateOnDestroy = true;
|
|
5663
|
+
const duplex = new Duplex({
|
|
5664
|
+
...options,
|
|
5665
|
+
autoDestroy: false,
|
|
5666
|
+
emitClose: false,
|
|
5667
|
+
objectMode: false,
|
|
5668
|
+
writableObjectMode: false
|
|
5669
|
+
});
|
|
5670
|
+
ws.on("message", function message(msg, isBinary) {
|
|
5671
|
+
const data = !isBinary && duplex._readableState.objectMode ? msg.toString() : msg;
|
|
5672
|
+
if (!duplex.push(data))
|
|
5673
|
+
ws.pause();
|
|
5674
|
+
});
|
|
5675
|
+
ws.once("error", function error2(err) {
|
|
5676
|
+
if (duplex.destroyed)
|
|
5677
|
+
return;
|
|
5678
|
+
terminateOnDestroy = false;
|
|
5679
|
+
duplex.destroy(err);
|
|
5680
|
+
});
|
|
5681
|
+
ws.once("close", function close() {
|
|
5682
|
+
if (duplex.destroyed)
|
|
5683
|
+
return;
|
|
5684
|
+
duplex.push(null);
|
|
5685
|
+
});
|
|
5686
|
+
duplex._destroy = function(err, callback) {
|
|
5687
|
+
if (ws.readyState === ws.CLOSED) {
|
|
5688
|
+
callback(err);
|
|
5689
|
+
process.nextTick(emitClose, duplex);
|
|
5690
|
+
return;
|
|
5691
|
+
}
|
|
5692
|
+
let called = false;
|
|
5693
|
+
ws.once("error", function error2(err2) {
|
|
5694
|
+
called = true;
|
|
5695
|
+
callback(err2);
|
|
5696
|
+
});
|
|
5697
|
+
ws.once("close", function close() {
|
|
5698
|
+
if (!called)
|
|
5699
|
+
callback(err);
|
|
5700
|
+
process.nextTick(emitClose, duplex);
|
|
5701
|
+
});
|
|
5702
|
+
if (terminateOnDestroy)
|
|
5703
|
+
ws.terminate();
|
|
5704
|
+
};
|
|
5705
|
+
duplex._final = function(callback) {
|
|
5706
|
+
if (ws.readyState === ws.CONNECTING) {
|
|
5707
|
+
ws.once("open", function open() {
|
|
5708
|
+
duplex._final(callback);
|
|
5709
|
+
});
|
|
5710
|
+
return;
|
|
5711
|
+
}
|
|
5712
|
+
if (ws._socket === null)
|
|
5713
|
+
return;
|
|
5714
|
+
if (ws._socket._writableState.finished) {
|
|
5715
|
+
callback();
|
|
5716
|
+
if (duplex._readableState.endEmitted)
|
|
5717
|
+
duplex.destroy();
|
|
5718
|
+
} else {
|
|
5719
|
+
ws._socket.once("finish", function finish() {
|
|
5720
|
+
callback();
|
|
5721
|
+
});
|
|
5722
|
+
ws.close();
|
|
5723
|
+
}
|
|
5724
|
+
};
|
|
5725
|
+
duplex._read = function() {
|
|
5726
|
+
if (ws.isPaused)
|
|
5727
|
+
ws.resume();
|
|
5728
|
+
};
|
|
5729
|
+
duplex._write = function(chunk, encoding, callback) {
|
|
5730
|
+
if (ws.readyState === ws.CONNECTING) {
|
|
5731
|
+
ws.once("open", function open() {
|
|
5732
|
+
duplex._write(chunk, encoding, callback);
|
|
5733
|
+
});
|
|
5734
|
+
return;
|
|
5735
|
+
}
|
|
5736
|
+
ws.send(chunk, callback);
|
|
5737
|
+
};
|
|
5738
|
+
duplex.on("end", duplexOnEnd);
|
|
5739
|
+
duplex.on("error", duplexOnError);
|
|
5740
|
+
return duplex;
|
|
5741
|
+
}
|
|
5742
|
+
module.exports = createWebSocketStream2;
|
|
5743
|
+
}
|
|
5744
|
+
});
|
|
5745
|
+
|
|
5746
|
+
// ../node_modules/ws/lib/subprotocol.js
|
|
5614
5747
|
var require_subprotocol = __commonJS({
|
|
5615
|
-
"
|
|
5748
|
+
"../node_modules/ws/lib/subprotocol.js"(exports, module) {
|
|
5616
5749
|
"use strict";
|
|
5617
5750
|
var { tokenChars } = require_validation();
|
|
5618
5751
|
function parse(header) {
|
|
@@ -5658,9 +5791,9 @@ var require_subprotocol = __commonJS({
|
|
|
5658
5791
|
}
|
|
5659
5792
|
});
|
|
5660
5793
|
|
|
5661
|
-
//
|
|
5794
|
+
// ../node_modules/ws/lib/websocket-server.js
|
|
5662
5795
|
var require_websocket_server = __commonJS({
|
|
5663
|
-
"
|
|
5796
|
+
"../node_modules/ws/lib/websocket-server.js"(exports, module) {
|
|
5664
5797
|
"use strict";
|
|
5665
5798
|
var EventEmitter = __require2("events");
|
|
5666
5799
|
var http = __require2("http");
|
|
@@ -5860,25 +5993,28 @@ var require_websocket_server = __commonJS({
|
|
|
5860
5993
|
handleUpgrade(req, socket, head, cb) {
|
|
5861
5994
|
socket.on("error", socketOnError);
|
|
5862
5995
|
const key = req.headers["sec-websocket-key"];
|
|
5996
|
+
const upgrade = req.headers.upgrade;
|
|
5863
5997
|
const version = +req.headers["sec-websocket-version"];
|
|
5864
5998
|
if (req.method !== "GET") {
|
|
5865
5999
|
const message = "Invalid HTTP method";
|
|
5866
6000
|
abortHandshakeOrEmitwsClientError(this, req, socket, 405, message);
|
|
5867
6001
|
return;
|
|
5868
6002
|
}
|
|
5869
|
-
if (
|
|
6003
|
+
if (upgrade === void 0 || upgrade.toLowerCase() !== "websocket") {
|
|
5870
6004
|
const message = "Invalid Upgrade header";
|
|
5871
6005
|
abortHandshakeOrEmitwsClientError(this, req, socket, 400, message);
|
|
5872
6006
|
return;
|
|
5873
6007
|
}
|
|
5874
|
-
if (
|
|
6008
|
+
if (key === void 0 || !keyRegex.test(key)) {
|
|
5875
6009
|
const message = "Missing or invalid Sec-WebSocket-Key header";
|
|
5876
6010
|
abortHandshakeOrEmitwsClientError(this, req, socket, 400, message);
|
|
5877
6011
|
return;
|
|
5878
6012
|
}
|
|
5879
|
-
if (version !==
|
|
6013
|
+
if (version !== 13 && version !== 8) {
|
|
5880
6014
|
const message = "Missing or invalid Sec-WebSocket-Version header";
|
|
5881
|
-
abortHandshakeOrEmitwsClientError(this, req, socket, 400, message
|
|
6015
|
+
abortHandshakeOrEmitwsClientError(this, req, socket, 400, message, {
|
|
6016
|
+
"Sec-WebSocket-Version": "13, 8"
|
|
6017
|
+
});
|
|
5882
6018
|
return;
|
|
5883
6019
|
}
|
|
5884
6020
|
if (!this.shouldHandle(req)) {
|
|
@@ -6041,19 +6177,19 @@ var require_websocket_server = __commonJS({
|
|
|
6041
6177
|
` + Object.keys(headers).map((h) => `${h}: ${headers[h]}`).join("\r\n") + "\r\n\r\n" + message
|
|
6042
6178
|
);
|
|
6043
6179
|
}
|
|
6044
|
-
function abortHandshakeOrEmitwsClientError(server, req, socket, code, message) {
|
|
6180
|
+
function abortHandshakeOrEmitwsClientError(server, req, socket, code, message, headers) {
|
|
6045
6181
|
if (server.listenerCount("wsClientError")) {
|
|
6046
6182
|
const err = new Error(message);
|
|
6047
6183
|
Error.captureStackTrace(err, abortHandshakeOrEmitwsClientError);
|
|
6048
6184
|
server.emit("wsClientError", err, socket, req);
|
|
6049
6185
|
} else {
|
|
6050
|
-
abortHandshake(socket, code, message);
|
|
6186
|
+
abortHandshake(socket, code, message, headers);
|
|
6051
6187
|
}
|
|
6052
6188
|
}
|
|
6053
6189
|
}
|
|
6054
6190
|
});
|
|
6055
6191
|
|
|
6056
|
-
//
|
|
6192
|
+
// ../node_modules/ws/wrapper.mjs
|
|
6057
6193
|
var wrapper_exports = {};
|
|
6058
6194
|
__export(wrapper_exports, {
|
|
6059
6195
|
Receiver: () => import_receiver.default,
|
|
@@ -6065,7 +6201,7 @@ __export(wrapper_exports, {
|
|
|
6065
6201
|
});
|
|
6066
6202
|
var import_stream, import_receiver, import_sender, import_websocket, import_websocket_server, wrapper_default;
|
|
6067
6203
|
var init_wrapper = __esm({
|
|
6068
|
-
"
|
|
6204
|
+
"../node_modules/ws/wrapper.mjs"() {
|
|
6069
6205
|
import_stream = __toESM(require_stream(), 1);
|
|
6070
6206
|
import_receiver = __toESM(require_receiver(), 1);
|
|
6071
6207
|
import_sender = __toESM(require_sender(), 1);
|
|
@@ -8921,6 +9057,7 @@ function transformImportsWithMap(code, importMap, scope, options) {
|
|
|
8921
9057
|
init_runtime();
|
|
8922
9058
|
init_process();
|
|
8923
9059
|
import { join as join4 } from "node:path";
|
|
9060
|
+
var IS_TRUE_NODE = isNode && !isDeno;
|
|
8924
9061
|
var LOG_PREFIX_MDX_LOADER = "[mdx-loader]";
|
|
8925
9062
|
var LOG_PREFIX_MDX_RENDERER = "[mdx-renderer]";
|
|
8926
9063
|
var JSX_IMPORT_PATTERN = /import\s+([^'"]+)\s+from\s+['"]file:\/\/([^'"]+\.(jsx|tsx))['"];?/g;
|
|
@@ -8929,6 +9066,57 @@ var HTTP_IMPORT_PATTERN = /['"]https?:\/\/[^'"]+['"]/;
|
|
|
8929
9066
|
var ESBUILD_JSX_FACTORY = "React.createElement";
|
|
8930
9067
|
var ESBUILD_JSX_FRAGMENT = "React.Fragment";
|
|
8931
9068
|
var HTTP_MODULE_FETCH_TIMEOUT_MS2 = 3e4;
|
|
9069
|
+
var _resolvedPaths = {};
|
|
9070
|
+
async function resolveNodePackage(packageSpec) {
|
|
9071
|
+
if (!IS_TRUE_NODE)
|
|
9072
|
+
return null;
|
|
9073
|
+
if (packageSpec in _resolvedPaths)
|
|
9074
|
+
return _resolvedPaths[packageSpec];
|
|
9075
|
+
try {
|
|
9076
|
+
const { createRequire } = await import("node:module");
|
|
9077
|
+
const require2 = createRequire(import.meta.url);
|
|
9078
|
+
const resolved = require2.resolve(packageSpec);
|
|
9079
|
+
_resolvedPaths[packageSpec] = resolved;
|
|
9080
|
+
return resolved;
|
|
9081
|
+
} catch {
|
|
9082
|
+
_resolvedPaths[packageSpec] = null;
|
|
9083
|
+
return null;
|
|
9084
|
+
}
|
|
9085
|
+
}
|
|
9086
|
+
async function transformReactImportsToAbsolute(code) {
|
|
9087
|
+
if (!IS_TRUE_NODE)
|
|
9088
|
+
return code;
|
|
9089
|
+
const reactPath = await resolveNodePackage("react");
|
|
9090
|
+
const reactJsxPath = await resolveNodePackage("react/jsx-runtime");
|
|
9091
|
+
const reactJsxDevPath = await resolveNodePackage("react/jsx-dev-runtime");
|
|
9092
|
+
const reactDomPath = await resolveNodePackage("react-dom");
|
|
9093
|
+
let result = code;
|
|
9094
|
+
if (reactJsxPath) {
|
|
9095
|
+
result = result.replace(
|
|
9096
|
+
/from\s+['"]react\/jsx-runtime['"]/g,
|
|
9097
|
+
`from "file://${reactJsxPath}"`
|
|
9098
|
+
);
|
|
9099
|
+
}
|
|
9100
|
+
if (reactJsxDevPath) {
|
|
9101
|
+
result = result.replace(
|
|
9102
|
+
/from\s+['"]react\/jsx-dev-runtime['"]/g,
|
|
9103
|
+
`from "file://${reactJsxDevPath}"`
|
|
9104
|
+
);
|
|
9105
|
+
}
|
|
9106
|
+
if (reactDomPath) {
|
|
9107
|
+
result = result.replace(
|
|
9108
|
+
/from\s+['"]react-dom['"]/g,
|
|
9109
|
+
`from "file://${reactDomPath}"`
|
|
9110
|
+
);
|
|
9111
|
+
}
|
|
9112
|
+
if (reactPath) {
|
|
9113
|
+
result = result.replace(
|
|
9114
|
+
/from\s+['"]react['"]/g,
|
|
9115
|
+
`from "file://${reactPath}"`
|
|
9116
|
+
);
|
|
9117
|
+
}
|
|
9118
|
+
return result;
|
|
9119
|
+
}
|
|
8932
9120
|
function hashString(input) {
|
|
8933
9121
|
const HASH_SEED_FNV1A2 = 2166136261;
|
|
8934
9122
|
let hash = HASH_SEED_FNV1A2 >>> 0;
|
|
@@ -9003,7 +9191,7 @@ async function loadModuleESM(compiledProgramCode, context) {
|
|
|
9003
9191
|
const { getAdapter: getAdapter2 } = await Promise.resolve().then(() => (init_detect(), detect_exports));
|
|
9004
9192
|
const adapter = await getAdapter2();
|
|
9005
9193
|
if (!context.esmCacheDir) {
|
|
9006
|
-
if (
|
|
9194
|
+
if (IS_TRUE_NODE) {
|
|
9007
9195
|
const projectCacheDir = join4(
|
|
9008
9196
|
cwd(),
|
|
9009
9197
|
"node_modules",
|
|
@@ -9017,8 +9205,8 @@ async function loadModuleESM(compiledProgramCode, context) {
|
|
|
9017
9205
|
}
|
|
9018
9206
|
}
|
|
9019
9207
|
let rewritten;
|
|
9020
|
-
if (
|
|
9021
|
-
rewritten = compiledProgramCode;
|
|
9208
|
+
if (IS_TRUE_NODE) {
|
|
9209
|
+
rewritten = await transformReactImportsToAbsolute(compiledProgramCode);
|
|
9022
9210
|
} else {
|
|
9023
9211
|
rewritten = transformImportsWithMap(
|
|
9024
9212
|
compiledProgramCode,
|
|
@@ -9072,7 +9260,7 @@ ${transformed}`;
|
|
|
9072
9260
|
if (/\bconst\s+MDXLayout\b/.test(rewritten) && !/export\s+\{[^}]*MDXLayout/.test(rewritten)) {
|
|
9073
9261
|
rewritten += "\nexport { MDXLayout as __vfLayout };\n";
|
|
9074
9262
|
}
|
|
9075
|
-
if (
|
|
9263
|
+
if (IS_TRUE_NODE && HTTP_IMPORT_PATTERN.test(rewritten)) {
|
|
9076
9264
|
rendererLogger.info(`${LOG_PREFIX_MDX_LOADER} Bundling HTTP imports via esbuild for Node.js`);
|
|
9077
9265
|
const { build: build2 } = await import("esbuild/mod.js");
|
|
9078
9266
|
const tempSourcePath = join4(context.esmCacheDir, `temp-${hashString(rewritten)}.mjs`);
|
|
@@ -10046,12 +10234,10 @@ var TracingManager = class {
|
|
|
10046
10234
|
}
|
|
10047
10235
|
}
|
|
10048
10236
|
async initializeTracer(config) {
|
|
10049
|
-
const
|
|
10050
|
-
const api = await import(otelApiModule);
|
|
10237
|
+
const api = await import("@opentelemetry/api");
|
|
10051
10238
|
this.state.api = api;
|
|
10052
10239
|
this.state.tracer = api.trace.getTracer(config.serviceName || "veryfront", "0.1.0");
|
|
10053
|
-
const
|
|
10054
|
-
const { W3CTraceContextPropagator } = await import(otelCoreModule);
|
|
10240
|
+
const { W3CTraceContextPropagator } = await import("@opentelemetry/core");
|
|
10055
10241
|
const propagator = new W3CTraceContextPropagator();
|
|
10056
10242
|
this.state.propagator = propagator;
|
|
10057
10243
|
api.propagation.setGlobalPropagator(propagator);
|