@dooboostore/simple-boot-http-server 1.0.26 → 1.0.27

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 (41) hide show
  1. package/README.md +100 -14
  2. package/dist/cjs/SimpleBootHttpServer.js +20 -16
  3. package/dist/cjs/SimpleBootHttpServer.js.map +2 -2
  4. package/dist/cjs/codes/Mimes.js +2 -0
  5. package/dist/cjs/codes/Mimes.js.map +2 -2
  6. package/dist/cjs/decorators/MethodMapping.js +2 -2
  7. package/dist/cjs/decorators/MethodMapping.js.map +2 -2
  8. package/dist/cjs/filters/ResourceFilter.js +0 -1
  9. package/dist/cjs/filters/ResourceFilter.js.map +2 -2
  10. package/dist/cjs/websocket/WebSocketManager.js +68 -40
  11. package/dist/cjs/websocket/WebSocketManager.js.map +2 -2
  12. package/dist/esm/SimpleBootHttpServer.js +20 -16
  13. package/dist/esm/SimpleBootHttpServer.js.map +2 -2
  14. package/dist/esm/codes/Mimes.js +2 -0
  15. package/dist/esm/codes/Mimes.js.map +2 -2
  16. package/dist/esm/decorators/MethodMapping.js +2 -2
  17. package/dist/esm/decorators/MethodMapping.js.map +2 -2
  18. package/dist/esm/filters/ResourceFilter.js +0 -1
  19. package/dist/esm/filters/ResourceFilter.js.map +2 -2
  20. package/dist/esm/websocket/WebSocketManager.js +68 -40
  21. package/dist/esm/websocket/WebSocketManager.js.map +2 -2
  22. package/dist/esm-bundle/dooboostore-simple-boot-http-server.esm.js +279 -137
  23. package/dist/esm-bundle/dooboostore-simple-boot-http-server.esm.js.map +4 -4
  24. package/dist/types/SimpleBootHttpServer.d.ts.map +1 -1
  25. package/dist/types/codes/Mimes.d.ts +2 -0
  26. package/dist/types/codes/Mimes.d.ts.map +1 -1
  27. package/dist/types/decorators/MethodMapping.d.ts +8 -0
  28. package/dist/types/decorators/MethodMapping.d.ts.map +1 -1
  29. package/dist/types/filters/ResourceFilter.d.ts.map +1 -1
  30. package/dist/types/websocket/WebSocketManager.d.ts +3 -1
  31. package/dist/types/websocket/WebSocketManager.d.ts.map +1 -1
  32. package/dist/umd-bundle/dooboostore-simple-boot-http-server.umd.js +279 -137
  33. package/dist/umd-bundle/dooboostore-simple-boot-http-server.umd.js.map +4 -4
  34. package/dist/umd-bundle/websocket-client.umd.js +209 -9
  35. package/dist/umd-bundle/websocket-client.umd.js.map +4 -4
  36. package/package.json +8 -8
  37. package/src/SimpleBootHttpServer.ts +21 -16
  38. package/src/codes/Mimes.ts +2 -0
  39. package/src/decorators/MethodMapping.ts +14 -7
  40. package/src/filters/ResourceFilter.ts +0 -1
  41. package/src/websocket/WebSocketManager.ts +69 -41
@@ -34,9 +34,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
34
34
  mod
35
35
  ));
36
36
 
37
- // ../../node_modules/.pnpm/reflect-metadata@0.2.2/node_modules/reflect-metadata/Reflect.js
37
+ // ../../../node_modules/.pnpm/reflect-metadata@0.2.2/node_modules/reflect-metadata/Reflect.js
38
38
  var require_Reflect = __commonJS({
39
- "../../node_modules/.pnpm/reflect-metadata@0.2.2/node_modules/reflect-metadata/Reflect.js"() {
39
+ "../../../node_modules/.pnpm/reflect-metadata@0.2.2/node_modules/reflect-metadata/Reflect.js"() {
40
40
  var Reflect2;
41
41
  (function(Reflect3) {
42
42
  (function(factory) {
@@ -1119,9 +1119,9 @@ var require_Reflect = __commonJS({
1119
1119
  }
1120
1120
  });
1121
1121
 
1122
- // ../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json
1122
+ // ../../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json
1123
1123
  var require_db = __commonJS({
1124
- "../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json"(exports, module) {
1124
+ "../../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json"(exports, module) {
1125
1125
  module.exports = {
1126
1126
  "application/1d-interleaved-parityfec": {
1127
1127
  source: "iana"
@@ -9644,16 +9644,16 @@ var require_db = __commonJS({
9644
9644
  }
9645
9645
  });
9646
9646
 
9647
- // ../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js
9647
+ // ../../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js
9648
9648
  var require_mime_db = __commonJS({
9649
- "../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js"(exports, module) {
9649
+ "../../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js"(exports, module) {
9650
9650
  module.exports = require_db();
9651
9651
  }
9652
9652
  });
9653
9653
 
9654
- // ../../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js
9654
+ // ../../../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js
9655
9655
  var require_mime_types = __commonJS({
9656
- "../../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js"(exports) {
9656
+ "../../../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js"(exports) {
9657
9657
  "use strict";
9658
9658
  var db = require_mime_db();
9659
9659
  var extname2 = __require("path").extname;
@@ -9741,9 +9741,9 @@ var require_mime_types = __commonJS({
9741
9741
  }
9742
9742
  });
9743
9743
 
9744
- // ../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js
9744
+ // ../../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js
9745
9745
  var require_dist = __commonJS({
9746
- "../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js"(exports, module) {
9746
+ "../../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js"(exports, module) {
9747
9747
  "use strict";
9748
9748
  var zlib = __require("zlib");
9749
9749
  module.exports = {
@@ -9769,9 +9769,9 @@ var require_dist = __commonJS({
9769
9769
  }
9770
9770
  });
9771
9771
 
9772
- // ../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/helpers.js
9772
+ // ../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/helpers.js
9773
9773
  var require_helpers = __commonJS({
9774
- "../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/helpers.js"(exports) {
9774
+ "../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/helpers.js"(exports) {
9775
9775
  var __extends = exports && exports.__extends || /* @__PURE__ */ function() {
9776
9776
  var extendStatics = function(d, b) {
9777
9777
  extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
@@ -9937,9 +9937,9 @@ var require_helpers = __commonJS({
9937
9937
  }
9938
9938
  });
9939
9939
 
9940
- // ../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/core.js
9940
+ // ../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/core.js
9941
9941
  var require_core = __commonJS({
9942
- "../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/core.js"(exports) {
9942
+ "../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/core.js"(exports) {
9943
9943
  Object.defineProperty(exports, "__esModule", { value: true });
9944
9944
  var helpers_js_1 = require_helpers();
9945
9945
  exports.JsonPatchError = helpers_js_1.PatchError;
@@ -10270,9 +10270,9 @@ var require_core = __commonJS({
10270
10270
  }
10271
10271
  });
10272
10272
 
10273
- // ../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/duplex.js
10273
+ // ../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/duplex.js
10274
10274
  var require_duplex = __commonJS({
10275
- "../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/duplex.js"(exports) {
10275
+ "../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/commonjs/duplex.js"(exports) {
10276
10276
  Object.defineProperty(exports, "__esModule", { value: true });
10277
10277
  var helpers_js_1 = require_helpers();
10278
10278
  var core_js_1 = require_core();
@@ -10444,9 +10444,9 @@ var require_duplex = __commonJS({
10444
10444
  }
10445
10445
  });
10446
10446
 
10447
- // ../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/index.js
10447
+ // ../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/index.js
10448
10448
  var require_fast_json_patch = __commonJS({
10449
- "../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/index.js"(exports) {
10449
+ "../../../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/index.js"(exports) {
10450
10450
  var core = require_core();
10451
10451
  Object.assign(exports, core);
10452
10452
  var duplex = require_duplex();
@@ -10459,9 +10459,9 @@ var require_fast_json_patch = __commonJS({
10459
10459
  }
10460
10460
  });
10461
10461
 
10462
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/constants.js
10462
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/constants.js
10463
10463
  var require_constants = __commonJS({
10464
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/constants.js"(exports, module) {
10464
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/constants.js"(exports, module) {
10465
10465
  "use strict";
10466
10466
  var BINARY_TYPES = ["nodebuffer", "arraybuffer", "fragments"];
10467
10467
  var hasBlob = typeof Blob !== "undefined";
@@ -10482,9 +10482,9 @@ var require_constants = __commonJS({
10482
10482
  }
10483
10483
  });
10484
10484
 
10485
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/buffer-util.js
10485
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/buffer-util.js
10486
10486
  var require_buffer_util = __commonJS({
10487
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/buffer-util.js"(exports, module) {
10487
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/buffer-util.js"(exports, module) {
10488
10488
  "use strict";
10489
10489
  var { EMPTY_BUFFER } = require_constants();
10490
10490
  var FastBuffer = Buffer[Symbol.species];
@@ -10557,9 +10557,9 @@ var require_buffer_util = __commonJS({
10557
10557
  }
10558
10558
  });
10559
10559
 
10560
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/limiter.js
10560
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/limiter.js
10561
10561
  var require_limiter = __commonJS({
10562
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/limiter.js"(exports, module) {
10562
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/limiter.js"(exports, module) {
10563
10563
  "use strict";
10564
10564
  var kDone = Symbol("kDone");
10565
10565
  var kRun = Symbol("kRun");
@@ -10607,9 +10607,9 @@ var require_limiter = __commonJS({
10607
10607
  }
10608
10608
  });
10609
10609
 
10610
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/permessage-deflate.js
10610
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/permessage-deflate.js
10611
10611
  var require_permessage_deflate = __commonJS({
10612
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/permessage-deflate.js"(exports, module) {
10612
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/permessage-deflate.js"(exports, module) {
10613
10613
  "use strict";
10614
10614
  var zlib = __require("zlib");
10615
10615
  var bufferUtil = require_buffer_util();
@@ -10990,9 +10990,9 @@ var require_permessage_deflate = __commonJS({
10990
10990
  }
10991
10991
  });
10992
10992
 
10993
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/validation.js
10993
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/validation.js
10994
10994
  var require_validation = __commonJS({
10995
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/validation.js"(exports, module) {
10995
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/validation.js"(exports, module) {
10996
10996
  "use strict";
10997
10997
  var { isUtf8 } = __require("buffer");
10998
10998
  var { hasBlob } = require_constants();
@@ -11191,9 +11191,9 @@ var require_validation = __commonJS({
11191
11191
  }
11192
11192
  });
11193
11193
 
11194
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/receiver.js
11194
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/receiver.js
11195
11195
  var require_receiver = __commonJS({
11196
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/receiver.js"(exports, module) {
11196
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/receiver.js"(exports, module) {
11197
11197
  "use strict";
11198
11198
  var { Writable } = __require("stream");
11199
11199
  var PerMessageDeflate2 = require_permessage_deflate();
@@ -11226,10 +11226,6 @@ var require_receiver = __commonJS({
11226
11226
  * extensions
11227
11227
  * @param {Boolean} [options.isServer=false] Specifies whether to operate in
11228
11228
  * client or server mode
11229
- * @param {Number} [options.maxBufferedChunks=0] The maximum number of
11230
- * buffered data chunks
11231
- * @param {Number} [options.maxFragments=0] The maximum number of message
11232
- * fragments
11233
11229
  * @param {Number} [options.maxPayload=0] The maximum allowed message length
11234
11230
  * @param {Boolean} [options.skipUTF8Validation=false] Specifies whether or
11235
11231
  * not to skip UTF-8 validation for text and close messages
@@ -11240,8 +11236,6 @@ var require_receiver = __commonJS({
11240
11236
  this._binaryType = options.binaryType || BINARY_TYPES[0];
11241
11237
  this._extensions = options.extensions || {};
11242
11238
  this._isServer = !!options.isServer;
11243
- this._maxBufferedChunks = options.maxBufferedChunks | 0;
11244
- this._maxFragments = options.maxFragments | 0;
11245
11239
  this._maxPayload = options.maxPayload | 0;
11246
11240
  this._skipUTF8Validation = !!options.skipUTF8Validation;
11247
11241
  this[kWebSocket] = void 0;
@@ -11271,18 +11265,6 @@ var require_receiver = __commonJS({
11271
11265
  */
11272
11266
  _write(chunk, encoding, cb) {
11273
11267
  if (this._opcode === 8 && this._state == GET_INFO) return cb();
11274
- if (this._maxBufferedChunks > 0 && this._buffers.length >= this._maxBufferedChunks) {
11275
- cb(
11276
- this.createError(
11277
- RangeError,
11278
- "Too many buffered chunks",
11279
- false,
11280
- 1008,
11281
- "WS_ERR_TOO_MANY_BUFFERED_PARTS"
11282
- )
11283
- );
11284
- return;
11285
- }
11286
11268
  this._bufferedBytes += chunk.length;
11287
11269
  this._buffers.push(chunk);
11288
11270
  this.startLoop(cb);
@@ -11612,17 +11594,6 @@ var require_receiver = __commonJS({
11612
11594
  return;
11613
11595
  }
11614
11596
  if (data.length) {
11615
- if (this._maxFragments > 0 && this._fragments.length >= this._maxFragments) {
11616
- const error = this.createError(
11617
- RangeError,
11618
- "Too many message fragments",
11619
- false,
11620
- 1008,
11621
- "WS_ERR_TOO_MANY_BUFFERED_PARTS"
11622
- );
11623
- cb(error);
11624
- return;
11625
- }
11626
11597
  this._messageLength = this._totalPayloadLength;
11627
11598
  this._fragments.push(data);
11628
11599
  }
@@ -11652,17 +11623,6 @@ var require_receiver = __commonJS({
11652
11623
  cb(error);
11653
11624
  return;
11654
11625
  }
11655
- if (this._maxFragments > 0 && this._fragments.length >= this._maxFragments) {
11656
- const error = this.createError(
11657
- RangeError,
11658
- "Too many message fragments",
11659
- false,
11660
- 1008,
11661
- "WS_ERR_TOO_MANY_BUFFERED_PARTS"
11662
- );
11663
- cb(error);
11664
- return;
11665
- }
11666
11626
  this._fragments.push(buf);
11667
11627
  }
11668
11628
  this.dataMessage(cb);
@@ -11823,15 +11783,12 @@ var require_receiver = __commonJS({
11823
11783
  }
11824
11784
  });
11825
11785
 
11826
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/sender.js
11786
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/sender.js
11827
11787
  var require_sender = __commonJS({
11828
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/sender.js"(exports, module) {
11788
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/sender.js"(exports, module) {
11829
11789
  "use strict";
11830
11790
  var { Duplex } = __require("stream");
11831
11791
  var { randomFillSync } = __require("crypto");
11832
- var {
11833
- types: { isUint8Array }
11834
- } = __require("util");
11835
11792
  var PerMessageDeflate2 = require_permessage_deflate();
11836
11793
  var { EMPTY_BUFFER, kWebSocket, NOOP } = require_constants();
11837
11794
  var { isBlob, isValidStatusCode } = require_validation();
@@ -11985,10 +11942,8 @@ var require_sender = __commonJS({
11985
11942
  buf.writeUInt16BE(code, 0);
11986
11943
  if (typeof data === "string") {
11987
11944
  buf.write(data, 2);
11988
- } else if (isUint8Array(data)) {
11989
- buf.set(data, 2);
11990
11945
  } else {
11991
- throw new TypeError("Second argument must be a string or a Uint8Array");
11946
+ buf.set(data, 2);
11992
11947
  }
11993
11948
  }
11994
11949
  const options = {
@@ -12316,9 +12271,9 @@ var require_sender = __commonJS({
12316
12271
  }
12317
12272
  });
12318
12273
 
12319
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/event-target.js
12274
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/event-target.js
12320
12275
  var require_event_target = __commonJS({
12321
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/event-target.js"(exports, module) {
12276
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/event-target.js"(exports, module) {
12322
12277
  "use strict";
12323
12278
  var { kForOnEventAttribute, kListener } = require_constants();
12324
12279
  var kCode = Symbol("kCode");
@@ -12545,9 +12500,9 @@ var require_event_target = __commonJS({
12545
12500
  }
12546
12501
  });
12547
12502
 
12548
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/extension.js
12503
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/extension.js
12549
12504
  var require_extension = __commonJS({
12550
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/extension.js"(exports, module) {
12505
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/extension.js"(exports, module) {
12551
12506
  "use strict";
12552
12507
  var { tokenChars } = require_validation();
12553
12508
  function push(dest, name, elem) {
@@ -12698,9 +12653,9 @@ var require_extension = __commonJS({
12698
12653
  }
12699
12654
  });
12700
12655
 
12701
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/websocket.js
12656
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/websocket.js
12702
12657
  var require_websocket = __commonJS({
12703
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/websocket.js"(exports, module) {
12658
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/websocket.js"(exports, module) {
12704
12659
  "use strict";
12705
12660
  var EventEmitter = __require("events");
12706
12661
  var https = __require("https");
@@ -12869,10 +12824,6 @@ var require_websocket = __commonJS({
12869
12824
  * multiple times in the same tick
12870
12825
  * @param {Function} [options.generateMask] The function used to generate the
12871
12826
  * masking key
12872
- * @param {Number} [options.maxBufferedChunks=0] The maximum number of
12873
- * buffered data chunks
12874
- * @param {Number} [options.maxFragments=0] The maximum number of message
12875
- * fragments
12876
12827
  * @param {Number} [options.maxPayload=0] The maximum allowed message size
12877
12828
  * @param {Boolean} [options.skipUTF8Validation=false] Specifies whether or
12878
12829
  * not to skip UTF-8 validation for text and close messages
@@ -12884,8 +12835,6 @@ var require_websocket = __commonJS({
12884
12835
  binaryType: this.binaryType,
12885
12836
  extensions: this._extensions,
12886
12837
  isServer: this._isServer,
12887
- maxBufferedChunks: options.maxBufferedChunks,
12888
- maxFragments: options.maxFragments,
12889
12838
  maxPayload: options.maxPayload,
12890
12839
  skipUTF8Validation: options.skipUTF8Validation
12891
12840
  });
@@ -13185,8 +13134,6 @@ var require_websocket = __commonJS({
13185
13134
  autoPong: true,
13186
13135
  closeTimeout: CLOSE_TIMEOUT,
13187
13136
  protocolVersion: protocolVersions[1],
13188
- maxBufferedChunks: 1024 * 1024,
13189
- maxFragments: 128 * 1024,
13190
13137
  maxPayload: 100 * 1024 * 1024,
13191
13138
  skipUTF8Validation: false,
13192
13139
  perMessageDeflate: true,
@@ -13429,8 +13376,6 @@ var require_websocket = __commonJS({
13429
13376
  websocket.setSocket(socket, head, {
13430
13377
  allowSynchronousEvents: opts.allowSynchronousEvents,
13431
13378
  generateMask: opts.generateMask,
13432
- maxBufferedChunks: opts.maxBufferedChunks,
13433
- maxFragments: opts.maxFragments,
13434
13379
  maxPayload: opts.maxPayload,
13435
13380
  skipUTF8Validation: opts.skipUTF8Validation
13436
13381
  });
@@ -13594,9 +13539,9 @@ var require_websocket = __commonJS({
13594
13539
  }
13595
13540
  });
13596
13541
 
13597
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/stream.js
13542
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/stream.js
13598
13543
  var require_stream = __commonJS({
13599
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/stream.js"(exports, module) {
13544
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/stream.js"(exports, module) {
13600
13545
  "use strict";
13601
13546
  var WebSocket3 = require_websocket();
13602
13547
  var { Duplex } = __require("stream");
@@ -13692,9 +13637,9 @@ var require_stream = __commonJS({
13692
13637
  }
13693
13638
  });
13694
13639
 
13695
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/subprotocol.js
13640
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/subprotocol.js
13696
13641
  var require_subprotocol = __commonJS({
13697
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/subprotocol.js"(exports, module) {
13642
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/subprotocol.js"(exports, module) {
13698
13643
  "use strict";
13699
13644
  var { tokenChars } = require_validation();
13700
13645
  function parse2(header) {
@@ -13737,9 +13682,9 @@ var require_subprotocol = __commonJS({
13737
13682
  }
13738
13683
  });
13739
13684
 
13740
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/websocket-server.js
13685
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/websocket-server.js
13741
13686
  var require_websocket_server = __commonJS({
13742
- "../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/lib/websocket-server.js"(exports, module) {
13687
+ "../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/lib/websocket-server.js"(exports, module) {
13743
13688
  "use strict";
13744
13689
  var EventEmitter = __require("events");
13745
13690
  var http = __require("http");
@@ -13773,10 +13718,6 @@ var require_websocket_server = __commonJS({
13773
13718
  * called
13774
13719
  * @param {Function} [options.handleProtocols] A hook to handle protocols
13775
13720
  * @param {String} [options.host] The hostname where to bind the server
13776
- * @param {Number} [options.maxBufferedChunks=1048576] The maximum number of
13777
- * buffered data chunks
13778
- * @param {Number} [options.maxFragments=131072] The maximum number of message
13779
- * fragments
13780
13721
  * @param {Number} [options.maxPayload=104857600] The maximum allowed message
13781
13722
  * size
13782
13723
  * @param {Boolean} [options.noServer=false] Enable no server mode
@@ -13798,8 +13739,6 @@ var require_websocket_server = __commonJS({
13798
13739
  options = {
13799
13740
  allowSynchronousEvents: true,
13800
13741
  autoPong: true,
13801
- maxBufferedChunks: 1024 * 1024,
13802
- maxFragments: 128 * 1024,
13803
13742
  maxPayload: 100 * 1024 * 1024,
13804
13743
  skipUTF8Validation: false,
13805
13744
  perMessageDeflate: false,
@@ -14079,8 +14018,6 @@ var require_websocket_server = __commonJS({
14079
14018
  socket.removeListener("error", socketOnError);
14080
14019
  ws.setSocket(socket, head, {
14081
14020
  allowSynchronousEvents: this.options.allowSynchronousEvents,
14082
- maxBufferedChunks: this.options.maxBufferedChunks,
14083
- maxFragments: this.options.maxFragments,
14084
14021
  maxPayload: this.options.maxPayload,
14085
14022
  skipUTF8Validation: this.options.skipUTF8Validation
14086
14023
  });
@@ -14168,6 +14105,8 @@ var Mimes = /* @__PURE__ */ ((Mimes2) => {
14168
14105
  Mimes2["ImageXpixmap"] = "image/x-xpixmap";
14169
14106
  Mimes2["ImageXxbm"] = "image/x-xbm";
14170
14107
  Mimes2["MultipartFormData"] = "multipart/form-data";
14108
+ Mimes2["TextEventStream"] = "text/event-stream";
14109
+ Mimes2["ApplicationXndjson"] = "application/x-ndjson";
14171
14110
  Mimes2["ApplicationJsonPostSimpleBootSsrIntentScheme"] = "application/json-post+simple-boot-ssr-intent-scheme";
14172
14111
  Mimes2["Intent"] = "intent";
14173
14112
  return Mimes2;
@@ -14300,6 +14239,7 @@ __export(esm_exports, {
14300
14239
  Fetcher: () => Fetcher,
14301
14240
  FormValidator: () => FormValidator,
14302
14241
  FunctionUtils: () => FunctionUtils,
14242
+ HashUtils: () => HashUtils,
14303
14243
  HttpFetcher: () => HttpFetcher,
14304
14244
  HttpJsonFetcher: () => HttpJsonFetcher,
14305
14245
  HttpResponseError: () => HttpResponseError,
@@ -14380,6 +14320,7 @@ __export(esm_exports, {
14380
14320
  isCssCommentItem: () => isCssCommentItem,
14381
14321
  isCssDeclarationItem: () => isCssDeclarationItem,
14382
14322
  isCssRuleItem: () => isCssRuleItem,
14323
+ isDefined: () => isDefined,
14383
14324
  isHttpResponseError: () => isHttpResponseError,
14384
14325
  isPoint2DType: () => isPoint2DType,
14385
14326
  isPoint3DType: () => isPoint3DType,
@@ -16339,6 +16280,12 @@ var Vector = class _Vector {
16339
16280
  this.z = z ?? 0;
16340
16281
  }
16341
16282
  }
16283
+ /**
16284
+ * 성분 대입 (파괴적). 벡터 전달 시 그 성분을 복사.
16285
+ * @example
16286
+ * v.set(1, 2, 3); // v = (1, 2, 3)
16287
+ * v.set(otherVector); // v = other와 동일 성분
16288
+ */
16342
16289
  set(v, y = 0, z = 0) {
16343
16290
  if (v instanceof _Vector || v instanceof Point3D) {
16344
16291
  this.set(v.x || 0, v.y || 0, v.z || 0);
@@ -16349,16 +16296,45 @@ var Vector = class _Vector {
16349
16296
  }
16350
16297
  return this;
16351
16298
  }
16299
+ /**
16300
+ * 복사본 반환 (비파괴). 파괴적 메서드와 조합해 원본 보존용.
16301
+ * @example
16302
+ * const s = a.get(); s.add(b); // s = a+b, a는 그대로
16303
+ */
16352
16304
  get() {
16353
16305
  return new _Vector(this.x, this.y, this.z);
16354
16306
  }
16355
- // 피타고라스의 정리는 a의 제곱 더하기 b 의 제곱은 c 의 제곱과 같다는 것을 정의합니다.
16356
- mag() {
16307
+ /**
16308
+ * 노름(norm). 평평한 공간(유클리드 공간)에서의 직선 거리.
16309
+ * - 수식: ‖v‖ = √(x² + y² + z²)
16310
+ * - 2D에서는 피타고라스 정리 그 자체. 3D는 두 번 적용한 것과 같음.
16311
+ * (바닥 대각선 √(x²+y²) → 공간 대각선 √((바닥)²+z²))
16312
+ * - "유클리드"는 평평한 공간의 기하학을 말함 (좌표계는 데카르트의 것, 유클리드는 좌표 없이 기하학을 세움).
16313
+ * 휘어진 공간(구면·쌍곡)에서는 이 공식이 성립하지 않음.
16314
+ * @example
16315
+ * new Vector(3, 4, 0).norm(); // 5
16316
+ * new Vector(6, 8, 0).norm(); // 10
16317
+ */
16318
+ norm() {
16357
16319
  const x = this.x;
16358
16320
  const y = this.y;
16359
16321
  const z = this.z;
16360
16322
  return Math.sqrt(x * x + y * y + z * z);
16361
16323
  }
16324
+ /**
16325
+ * norm()의 별칭 (p5.js 호환).
16326
+ * @example
16327
+ * new Vector(3, 4, 0).mag(); // 5
16328
+ */
16329
+ mag() {
16330
+ return this.norm();
16331
+ }
16332
+ /**
16333
+ * 덧셈 (파괴적). 성분별 합. 기하학적으로 평행사변형의 대각선.
16334
+ * - 수식: a + b = (ax+bx, ay+by, az+bz)
16335
+ * @example
16336
+ * const a = new Vector(4, 2); a.add(new Vector(-2, 3)); // a = (2, 5)
16337
+ */
16362
16338
  add(v, y = 0, z = 0) {
16363
16339
  if (v instanceof _Vector || v instanceof Point3D) {
16364
16340
  this.x += v.x;
@@ -16370,12 +16346,24 @@ var Vector = class _Vector {
16370
16346
  this.z += z;
16371
16347
  }
16372
16348
  }
16349
+ /**
16350
+ * 덧셈 결과의 새 벡터 반환 (비파괴).
16351
+ * - 수식: a + b = (ax+bx, ay+by, az+bz)
16352
+ * @example
16353
+ * const s = a.toAdd(a, b); // s = a+b, a·b는 그대로
16354
+ */
16373
16355
  toAdd(v1, v2) {
16374
16356
  return new _Vector(v1.x + v2.x, v1.y + v2.y, v1.x + v2.y);
16375
16357
  }
16376
16358
  // public static add(v1: Vector, v2: Vector): Vector {
16377
16359
  // return new Vector(v1.x + v2.x, v1.y + v2.y, v1.x + v2.y);
16378
16360
  // }
16361
+ /**
16362
+ * 뺄셈 (파괴적). a - b는 "a에서 b를 되돌리는" 벡터.
16363
+ * - 수식: a - b = (ax-bx, ay-by, az-bz)
16364
+ * @example
16365
+ * const a = new Vector(4, 2); a.sub(new Vector(1, 1)); // a = (3, 1)
16366
+ */
16379
16367
  sub(v, y = 0, z = 0) {
16380
16368
  if (v instanceof _Vector || v instanceof Point3D) {
16381
16369
  this.x -= v.x;
@@ -16387,6 +16375,12 @@ var Vector = class _Vector {
16387
16375
  this.z -= z;
16388
16376
  }
16389
16377
  }
16378
+ /**
16379
+ * 뺄셈 결과의 새 벡터 반환 (비파괴).
16380
+ * - 수식: a - b = (ax-bx, ay-by, az-bz)
16381
+ * @example
16382
+ * const d = a.toSub(b); // d = a-b, a·b는 그대로
16383
+ */
16390
16384
  toSub(v2) {
16391
16385
  const v1 = this;
16392
16386
  return new _Vector(v1.x - v2.x, v1.y - v2.y, v1.z - v2.z);
@@ -16395,6 +16389,12 @@ var Vector = class _Vector {
16395
16389
  // public static sub(v1: Vector, v2: Vector): Vector {
16396
16390
  // return new Vector(v1.x - v2.x, v1.y - v2.y, v1.z - v2.z);
16397
16391
  // }
16392
+ /**
16393
+ * 스칼라배 또는 성분별 곱 (파괴적). 스칼라 k>1이면 늘어나고, 0<k<1이면 줄어듦. k<0이면 반대 방향.
16394
+ * - 수식(스칼라): k·v = (k·x, k·y, k·z)
16395
+ * @example
16396
+ * const v = new Vector(1, 2); v.mult(3); // v = (3, 6)
16397
+ */
16398
16398
  mult(v) {
16399
16399
  if (v instanceof _Vector || v instanceof Point3D) {
16400
16400
  this.x *= v.x;
@@ -16407,6 +16407,12 @@ var Vector = class _Vector {
16407
16407
  }
16408
16408
  return this;
16409
16409
  }
16410
+ /**
16411
+ * 성분별 곱 결과의 새 벡터 반환 (비파괴).
16412
+ * - 수식: (ax·bx, ay·by, az·bz)
16413
+ * @example
16414
+ * const m = a.toMult(b); // m = 성분별 곱, a·b는 그대로
16415
+ */
16410
16416
  toMult(v2) {
16411
16417
  const v1 = this;
16412
16418
  return new _Vector(v1.x *= v2.x, v1.y *= v2.y, v1.z *= v2.z);
@@ -16414,6 +16420,12 @@ var Vector = class _Vector {
16414
16420
  // public static mult(v1: Vector, v2: Vector) {
16415
16421
  // return new Vector(v1.x *= v2.x, v1.y *= v2.y, v1.z *= v2.z);
16416
16422
  // }
16423
+ /**
16424
+ * 스칼라 나눗셈 또는 성분별 나눗셈 (파괴적). 정규화의 핵심 연산.
16425
+ * - 수식(스칼라): v/k = (x/k, y/k, z/k)
16426
+ * @example
16427
+ * const v = new Vector(6, 8); v.div(2); // v = (3, 4)
16428
+ */
16417
16429
  div(v) {
16418
16430
  if (v instanceof _Vector || v instanceof Point3D) {
16419
16431
  this.x /= v.x;
@@ -16426,6 +16438,12 @@ var Vector = class _Vector {
16426
16438
  }
16427
16439
  return this;
16428
16440
  }
16441
+ /**
16442
+ * 스칼라 나눗셈 결과의 새 벡터 반환 (비파괴).
16443
+ * - 수식: v/k = (x/k, y/k, z/k)
16444
+ * @example
16445
+ * const h = v.toDiv(2); // h = v/2, v는 그대로
16446
+ */
16429
16447
  toDiv(d) {
16430
16448
  const v = this;
16431
16449
  const rv = v.get();
@@ -16441,10 +16459,22 @@ var Vector = class _Vector {
16441
16459
  // rv.z /= d;
16442
16460
  // return rv;
16443
16461
  // }
16462
+ /**
16463
+ * 두 점(벡터) 사이 거리. 차 벡터의 크기.
16464
+ * - 수식: d = √((dx)² + (dy)² + (dz)²)
16465
+ * @example
16466
+ * new Vector(0, 0).dist(new Vector(3, 4)); // 5
16467
+ */
16444
16468
  dist(v) {
16445
16469
  const dx = this.x - v.x, dy = this.y - v.y, dz = this.z - v.z;
16446
16470
  return Math.sqrt(dx * dx + dy * dy + dz * dz);
16447
16471
  }
16472
+ /**
16473
+ * 두 점(벡터) 사이 거리 (toDist는 dist와 동일, 비파괴).
16474
+ * - 수식: d = √((dx)² + (dy)² + (dz)²)
16475
+ * @example
16476
+ * a.toDist(b); // a와 b 사이 거리
16477
+ */
16448
16478
  toDist(v2) {
16449
16479
  const v1 = this;
16450
16480
  const dx = v1.x - v2.x, dy = v1.y - v2.y, dz = v1.z - v2.z;
@@ -16456,36 +16486,90 @@ var Vector = class _Vector {
16456
16486
  // dz = v1.z - v2.z;
16457
16487
  // return Math.sqrt(dx * dx + dy * dy + dz * dz);
16458
16488
  // }
16459
- dot(v, y, z) {
16489
+ /**
16490
+ * 내적(dot product). 두 벡터가 같은 방향을 향하는 정도.
16491
+ * - 수식: a·b = ax·bx + ay·by + az·bz = |a||b|cosθ
16492
+ * - θ=90°면 0(직교), 0°면 최대(같은 방향).
16493
+ * - 벡터 전달 시 y·z 생략 가능, 스칼라(x) 전달 시 y·z와 함께 사용.
16494
+ * @example
16495
+ * new Vector(5, 12).dot(new Vector(-5, 12)); // -25+144 = 119
16496
+ * new Vector(1, 0).dot(new Vector(0, 1)); // 0 (직각)
16497
+ * new Vector(1, 2).dot(3, 4); // 1*3+2*4 = 11
16498
+ */
16499
+ dot(v, y = 0, z = 0) {
16460
16500
  if (v instanceof _Vector || v instanceof Point3D) {
16461
16501
  return this.x * v.x + this.y * v.y + this.z * v.z;
16462
16502
  }
16463
16503
  ;
16464
16504
  return this.x * v + this.y * y + this.z * z;
16465
16505
  }
16506
+ /**
16507
+ * 외적(cross product). 두 벡터에 수직인 벡터. 오른손 법칙 방향.
16508
+ * - 수식: a×b = (ay·bz − az·by, az·bx − ax·bz, ax·by − ay·bx)
16509
+ * - 2D에서는 z값 = ax·by − ay·bx (부호 있는 면적, 회전 방향 판정용).
16510
+ * @example
16511
+ * new Vector(1, 0, 0).cross(new Vector(0, 1, 0)); // (0, 0, 1)
16512
+ */
16466
16513
  cross(v) {
16467
16514
  const x = this.x, y = this.y, z = this.z;
16468
16515
  return new _Vector(y * v.z - v.y * z, z * v.x - v.z * x, x * v.y - v.x * y);
16469
16516
  }
16517
+ /**
16518
+ * 정규화 (파괴적). 방향은 그대로, 크기를 1로. 단위벡터 v̂ 생성.
16519
+ * - 수식: v̂ = v / |v|
16520
+ * - 영벡터(|v|=0)는 0으로 나누지 않고 그대로 둠.
16521
+ * @example
16522
+ * const v = new Vector(6, 8); v.normalize(); // v = (0.6, 0.8), |v| = 1
16523
+ */
16470
16524
  normalize() {
16471
- const m = this.mag();
16525
+ const m = this.norm();
16472
16526
  if (m > 0) this.div(m);
16473
16527
  }
16528
+ /**
16529
+ * 크기 상한 (파괴적). 속도가 high를 넘으면 방향 유지한 채 high로 자름. 물리 시뮬레이션 최고속도용.
16530
+ * - 수식: |v| > high → v = v̂ · high
16531
+ * @example
16532
+ * const v = new Vector(6, 8); v.limit(5); // |v|=10 → 5, v = (3, 4)
16533
+ */
16474
16534
  limit(high) {
16475
- if (this.mag() > high) {
16535
+ if (this.norm() > high) {
16476
16536
  this.normalize();
16477
16537
  this.mult(high);
16478
16538
  }
16479
16539
  }
16540
+ /**
16541
+ * 2D 방향각. +x축 기준 반시계 방향 라디안 (-π ~ π).
16542
+ * - 수식: θ = atan2(y, x)
16543
+ * @example
16544
+ * new Vector(1, 1).heading2D(); // π/4 (45°)
16545
+ * new Vector(-1, 0).heading2D(); // π (180°)
16546
+ */
16480
16547
  heading2D() {
16481
16548
  return -Math.atan2(-this.y, this.x);
16482
16549
  }
16550
+ /**
16551
+ * 무작위 방향 단위벡터 반환 (새 Vector, 자신은 변경 안 함).
16552
+ * @example
16553
+ * const r = new Vector().random2D(); // |r| = 1, 방향 랜덤
16554
+ */
16483
16555
  random2D() {
16484
16556
  return this.fromAngle(Math.random() * (2 * Math.PI));
16485
16557
  }
16558
+ /**
16559
+ * 각도→벡터. 각도 θ, 길이 L인 2D 벡터 반환 (새 Vector).
16560
+ * - 수식: (L·cosθ, L·sinθ, 0)
16561
+ * @example
16562
+ * new Vector().fromAngle(Math.PI / 3, 2); // (1, 1.73, 0)
16563
+ */
16486
16564
  fromAngle(angle, length = 1) {
16487
16565
  return new _Vector(length * Math.cos(angle), length * Math.sin(angle), 0);
16488
16566
  }
16567
+ /**
16568
+ * 구면좌표→3D 벡터 (새 Vector 반환, p5.js 컨벤션).
16569
+ * - 수식: (L·sinθ·sinφ, −L·cosθ, L·sinθ·cosφ)
16570
+ * @example
16571
+ * new Vector().fromAngles(Math.PI / 2, Math.PI / 2, 1); // (1, 0, 0)
16572
+ */
16489
16573
  fromAngles(theta, phi, length = 1) {
16490
16574
  const cosPhi = Math.cos(phi);
16491
16575
  const sinPhi = Math.sin(phi);
@@ -16497,18 +16581,43 @@ var Vector = class _Vector {
16497
16581
  length * sinTheta * cosPhi
16498
16582
  );
16499
16583
  }
16584
+ /**
16585
+ * 성분 배열 반환. [x, y, z] 순서.
16586
+ * @example
16587
+ * new Vector(1, 2, 3).array(); // [1, 2, 3]
16588
+ */
16500
16589
  array() {
16501
16590
  return [this.x, this.y, this.z];
16502
16591
  }
16592
+ /**
16593
+ * Point3D로 변환 (위치 의미로 바꿀 때).
16594
+ * @example
16595
+ * new Vector(1, 2, 3).toPoint3D(); // Point3D(1, 2, 3)
16596
+ */
16503
16597
  toPoint3D() {
16504
16598
  return new Point3D(this.x, this.y, this.z);
16505
16599
  }
16600
+ /**
16601
+ * Point2D로 변환 (z 버림).
16602
+ * @example
16603
+ * new Vector(1, 2, 3).toPoint2D(); // Point2D(1, 2)
16604
+ */
16506
16605
  toPoint2D() {
16507
16606
  return new Point2D(this.x, this.y);
16508
16607
  }
16608
+ /**
16609
+ * 복사본 반환 (get()과 동일, 비파괴).
16610
+ * @example
16611
+ * const c = v.copy(); // v와 같은 성분의 새 벡터
16612
+ */
16509
16613
  copy() {
16510
16614
  return new _Vector(this.x, this.y, this.z);
16511
16615
  }
16616
+ /**
16617
+ * 문자열 표현. "[x, y, z]" 형식.
16618
+ * @example
16619
+ * new Vector(1, 2).toString(); // "[1, 2, 0]"
16620
+ */
16512
16621
  toString() {
16513
16622
  return "[" + this.x + ", " + this.y + ", " + this.z + "]";
16514
16623
  }
@@ -21354,7 +21463,7 @@ var StoreLoader = class {
21354
21463
 
21355
21464
  // ../core/dist/esm/url/UrlUtils.js
21356
21465
  var UrlUtils;
21357
- ((UrlUtils2) => {
21466
+ (function(UrlUtils2) {
21358
21467
  UrlUtils2.origin = (fullurl) => {
21359
21468
  return new URL(fullurl).origin;
21360
21469
  };
@@ -21392,15 +21501,28 @@ var UrlUtils;
21392
21501
  });
21393
21502
  return searchParams;
21394
21503
  };
21504
+ UrlUtils2.toAbsoluteUrl = (relative2, base) => {
21505
+ return new URL(relative2, base);
21506
+ };
21507
+ function toAbsoluteRequest(input, base) {
21508
+ if (input instanceof URL) {
21509
+ return UrlUtils2.toAbsoluteUrl(input.href, base);
21510
+ }
21511
+ if (typeof input === "string") {
21512
+ return UrlUtils2.toAbsoluteUrl(input, base).href;
21513
+ }
21514
+ return new Request(UrlUtils2.toAbsoluteUrl(input.url, base).href, input);
21515
+ }
21516
+ UrlUtils2.toAbsoluteRequest = toAbsoluteRequest;
21395
21517
  UrlUtils2.manipulateSearchParams = (searchParams, options) => {
21396
21518
  if (options?.delete) {
21397
- (0, UrlUtils2.deleteSearchParam)(searchParams, options.delete);
21519
+ UrlUtils2.deleteSearchParam(searchParams, options.delete);
21398
21520
  }
21399
21521
  if (options?.append) {
21400
- (0, UrlUtils2.appendSearchParam)(searchParams, options.append);
21522
+ UrlUtils2.appendSearchParam(searchParams, options.append);
21401
21523
  }
21402
21524
  if (options?.upsert) {
21403
- (0, UrlUtils2.upsertSearchParam)(searchParams, options.upsert);
21525
+ UrlUtils2.upsertSearchParam(searchParams, options.upsert);
21404
21526
  }
21405
21527
  return searchParams;
21406
21528
  };
@@ -23794,6 +23916,23 @@ function getExpression(value, config) {
23794
23916
  };
23795
23917
  }
23796
23918
 
23919
+ // ../core/dist/esm/hash/HashUtils.js
23920
+ var HashUtils;
23921
+ ((HashUtils2) => {
23922
+ const core53 = (str, seed) => {
23923
+ let h1 = 3735928559 ^ seed, h2 = 1103547991 ^ seed;
23924
+ for (let i = 0; i < str.length; i++) {
23925
+ const ch = str.charCodeAt(i);
23926
+ h1 = Math.imul(h1 ^ ch, 2654435761);
23927
+ h2 = Math.imul(h2 ^ ch, 1597334677);
23928
+ }
23929
+ h1 = Math.imul(h1 ^ h1 >>> 16, 2246822507) ^ Math.imul(h2 ^ h2 >>> 13, 3266489909);
23930
+ h2 = Math.imul(h2 ^ h2 >>> 16, 2246822507) ^ Math.imul(h1 ^ h1 >>> 13, 3266489909);
23931
+ return (4294967296 * (2097151 & h2) + (h1 >>> 0)).toString(16).padStart(14, "0");
23932
+ };
23933
+ HashUtils2.hash53 = (str, seed = 0, xyz = 16) => `${core53(str, seed)}${core53(str, seed + 1)}`.slice(0, Math.max(1, xyz));
23934
+ })(HashUtils || (HashUtils = {}));
23935
+
23797
23936
  // ../core/dist/esm/index.js
23798
23937
  var src_default = {
23799
23938
  // Core utilities are exported as named exports above
@@ -23911,7 +24050,7 @@ var getPATCH = (target, propertyKey) => {
23911
24050
  return getUrlMapping(target, propertyKey);
23912
24051
  };
23913
24052
  var getPATCHS = (target) => {
23914
- return getUrlMappings(target)?.filter((it) => it.config?.method.toUpperCase() === "GET" /* GET */);
24053
+ return getUrlMappings(target)?.filter((it) => it.config?.method.toUpperCase() === "PATCH" /* PATCH */);
23915
24054
  };
23916
24055
  function OPTIONS(configOrTarget, propertyKey, descriptor) {
23917
24056
  if (propertyKey && descriptor) {
@@ -23943,7 +24082,7 @@ var getHEAD = (target, propertyKey) => {
23943
24082
  return getUrlMapping(target, propertyKey);
23944
24083
  };
23945
24084
  var getHEADS = (target) => {
23946
- return getUrlMappings(target)?.filter((it) => it.config?.method.toUpperCase() === "GET" /* GET */);
24085
+ return getUrlMappings(target)?.filter((it) => it.config?.method.toUpperCase() === "HEAD" /* HEAD */);
23947
24086
  };
23948
24087
  function TRACE(configOrTarget, propertyKey, descriptor) {
23949
24088
  if (propertyKey && descriptor) {
@@ -27667,7 +27806,6 @@ var ResourceFilter = class {
27667
27806
  return it.test(url);
27668
27807
  }
27669
27808
  if (typeof it === "string") {
27670
- console.log("url!!!!!!!", url);
27671
27809
  return it === url;
27672
27810
  }
27673
27811
  if (typeof it === "function") {
@@ -28861,7 +28999,7 @@ var SessionManager = class {
28861
28999
  import { IncomingMessage, Server as HttpServer, ServerResponse } from "http";
28862
29000
  import { Server as HttpsServer } from "https";
28863
29001
 
28864
- // ../../node_modules/.pnpm/ws@8.21.0/node_modules/ws/wrapper.mjs
29002
+ // ../../../node_modules/.pnpm/ws@8.20.0/node_modules/ws/wrapper.mjs
28865
29003
  var import_stream = __toESM(require_stream(), 1);
28866
29004
  var import_extension = __toESM(require_extension(), 1);
28867
29005
  var import_permessage_deflate = __toESM(require_permessage_deflate(), 1);
@@ -29117,23 +29255,27 @@ var SimpleBootHttpServer = class _SimpleBootHttpServer extends SimpleApplication
29117
29255
  target: moduleInstance,
29118
29256
  targetKey: it.propertyKey
29119
29257
  }, otherStorage);
29120
- if (it.config?.resolver) {
29121
- const execute = typeof it.config.resolver === "function" ? this.simstanceManager.getOrNewSim({ target: it.config.resolver }) : it.config.resolver;
29122
- data = await execute?.resolve?.(data, rr);
29123
- }
29124
- const status = it.config?.res?.status ?? 200 /* Ok */;
29125
- const headers = it.config?.res?.header ?? {};
29126
- if (it.config?.res?.contentType) {
29127
- headers[HttpHeaders.ContentType] = it.config?.res?.contentType;
29128
- }
29129
- if ((it.config?.res?.contentType?.toLowerCase().indexOf("application/json" /* ApplicationJson */.toLowerCase()) ?? -1) > -1) {
29130
- data = JSON.stringify(data);
29131
- } else if (data && typeof data === "object") {
29132
- data = JSON.stringify(data);
29258
+ const resConfig = it.config?.res;
29259
+ if (resConfig?.manual === true) {
29260
+ } else {
29261
+ if (it.config?.resolver) {
29262
+ const execute = typeof it.config.resolver === "function" ? this.simstanceManager.getOrNewSim({ target: it.config.resolver }) : it.config.resolver;
29263
+ data = await execute?.resolve?.(data, rr);
29264
+ }
29265
+ const status = resConfig?.status ?? 200 /* Ok */;
29266
+ const headers = resConfig?.header ?? {};
29267
+ if (resConfig?.contentType) {
29268
+ headers[HttpHeaders.ContentType] = resConfig.contentType;
29269
+ }
29270
+ if ((resConfig?.contentType?.toLowerCase().indexOf("application/json" /* ApplicationJson */.toLowerCase()) ?? -1) > -1) {
29271
+ data = JSON.stringify(data);
29272
+ } else if (data && typeof data === "object") {
29273
+ data = JSON.stringify(data);
29274
+ }
29275
+ rr.resSetHeaders(headers);
29276
+ rr.resSetStatusCode(status);
29277
+ rr.resWrite(data);
29133
29278
  }
29134
- rr.resSetHeaders(headers);
29135
- rr.resSetStatusCode(status);
29136
- rr.resWrite(data);
29137
29279
  }
29138
29280
  }
29139
29281
  if (this.option.noSuchRouteEndPointMappingThrow && methods.length <= 0 && rr.reqMethod()?.toUpperCase() !== "OPTIONS" /* OPTIONS */) {