@lark-apaas/fullstack-nestjs-core 1.1.33-alpha.3 → 1.1.33-alpha.4

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/index.cjs CHANGED
@@ -1371,8 +1371,8 @@ var require_node = __commonJS({
1371
1371
  }
1372
1372
  break;
1373
1373
  case "FILE":
1374
- var fs2 = require("fs");
1375
- stream2 = new fs2.SyncWriteStream(fd2, {
1374
+ var fs3 = require("fs");
1375
+ stream2 = new fs3.SyncWriteStream(fd2, {
1376
1376
  autoClose: false
1377
1377
  });
1378
1378
  stream2._type = "fs";
@@ -1590,9 +1590,9 @@ var require_safer = __commonJS({
1590
1590
  }
1591
1591
  });
1592
1592
 
1593
- // ../../../node_modules/iconv-lite/lib/bom-handling.js
1593
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/lib/bom-handling.js
1594
1594
  var require_bom_handling = __commonJS({
1595
- "../../../node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
1595
+ "../../../node_modules/body-parser/node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
1596
1596
  "use strict";
1597
1597
  var BOMChar = "\uFEFF";
1598
1598
  exports2.PrependBOM = PrependBOMWrapper;
@@ -1634,9 +1634,9 @@ var require_bom_handling = __commonJS({
1634
1634
  }
1635
1635
  });
1636
1636
 
1637
- // ../../../node_modules/iconv-lite/encodings/internal.js
1637
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/internal.js
1638
1638
  var require_internal = __commonJS({
1639
- "../../../node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
1639
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
1640
1640
  "use strict";
1641
1641
  var Buffer2 = require_safer().Buffer;
1642
1642
  module2.exports = {
@@ -1793,9 +1793,9 @@ var require_internal = __commonJS({
1793
1793
  }
1794
1794
  });
1795
1795
 
1796
- // ../../../node_modules/iconv-lite/encodings/utf16.js
1796
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/utf16.js
1797
1797
  var require_utf16 = __commonJS({
1798
- "../../../node_modules/iconv-lite/encodings/utf16.js"(exports2) {
1798
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
1799
1799
  "use strict";
1800
1800
  var Buffer2 = require_safer().Buffer;
1801
1801
  exports2.utf16be = Utf16BECodec;
@@ -1909,9 +1909,9 @@ var require_utf16 = __commonJS({
1909
1909
  }
1910
1910
  });
1911
1911
 
1912
- // ../../../node_modules/iconv-lite/encodings/utf7.js
1912
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/utf7.js
1913
1913
  var require_utf7 = __commonJS({
1914
- "../../../node_modules/iconv-lite/encodings/utf7.js"(exports2) {
1914
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
1915
1915
  "use strict";
1916
1916
  var Buffer2 = require_safer().Buffer;
1917
1917
  exports2.utf7 = Utf7Codec;
@@ -2110,9 +2110,9 @@ var require_utf7 = __commonJS({
2110
2110
  }
2111
2111
  });
2112
2112
 
2113
- // ../../../node_modules/iconv-lite/encodings/sbcs-codec.js
2113
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-codec.js
2114
2114
  var require_sbcs_codec = __commonJS({
2115
- "../../../node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
2115
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
2116
2116
  "use strict";
2117
2117
  var Buffer2 = require_safer().Buffer;
2118
2118
  exports2._sbcs = SBCSCodec;
@@ -2164,9 +2164,9 @@ var require_sbcs_codec = __commonJS({
2164
2164
  }
2165
2165
  });
2166
2166
 
2167
- // ../../../node_modules/iconv-lite/encodings/sbcs-data.js
2167
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-data.js
2168
2168
  var require_sbcs_data = __commonJS({
2169
- "../../../node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
2169
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
2170
2170
  "use strict";
2171
2171
  module2.exports = {
2172
2172
  // Not supported by iconv, not sure why.
@@ -2313,9 +2313,9 @@ var require_sbcs_data = __commonJS({
2313
2313
  }
2314
2314
  });
2315
2315
 
2316
- // ../../../node_modules/iconv-lite/encodings/sbcs-data-generated.js
2316
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-data-generated.js
2317
2317
  var require_sbcs_data_generated = __commonJS({
2318
- "../../../node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
2318
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
2319
2319
  "use strict";
2320
2320
  module2.exports = {
2321
2321
  "437": "cp437",
@@ -2768,9 +2768,9 @@ var require_sbcs_data_generated = __commonJS({
2768
2768
  }
2769
2769
  });
2770
2770
 
2771
- // ../../../node_modules/iconv-lite/encodings/dbcs-codec.js
2771
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/dbcs-codec.js
2772
2772
  var require_dbcs_codec = __commonJS({
2773
- "../../../node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
2773
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
2774
2774
  "use strict";
2775
2775
  var Buffer2 = require_safer().Buffer;
2776
2776
  exports2._dbcs = DBCSCodec;
@@ -3115,9 +3115,9 @@ var require_dbcs_codec = __commonJS({
3115
3115
  }
3116
3116
  });
3117
3117
 
3118
- // ../../../node_modules/iconv-lite/encodings/tables/shiftjis.json
3118
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/shiftjis.json
3119
3119
  var require_shiftjis = __commonJS({
3120
- "../../../node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
3120
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
3121
3121
  module2.exports = [
3122
3122
  ["0", "\0", 128],
3123
3123
  ["a1", "\uFF61", 62],
@@ -3246,9 +3246,9 @@ var require_shiftjis = __commonJS({
3246
3246
  }
3247
3247
  });
3248
3248
 
3249
- // ../../../node_modules/iconv-lite/encodings/tables/eucjp.json
3249
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/eucjp.json
3250
3250
  var require_eucjp = __commonJS({
3251
- "../../../node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
3251
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
3252
3252
  module2.exports = [
3253
3253
  ["0", "\0", 127],
3254
3254
  ["8ea1", "\uFF61", 62],
@@ -3434,9 +3434,9 @@ var require_eucjp = __commonJS({
3434
3434
  }
3435
3435
  });
3436
3436
 
3437
- // ../../../node_modules/iconv-lite/encodings/tables/cp936.json
3437
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp936.json
3438
3438
  var require_cp936 = __commonJS({
3439
- "../../../node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
3439
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
3440
3440
  module2.exports = [
3441
3441
  ["0", "\0", 127, "\u20AC"],
3442
3442
  ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"],
@@ -3704,9 +3704,9 @@ var require_cp936 = __commonJS({
3704
3704
  }
3705
3705
  });
3706
3706
 
3707
- // ../../../node_modules/iconv-lite/encodings/tables/gbk-added.json
3707
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/gbk-added.json
3708
3708
  var require_gbk_added = __commonJS({
3709
- "../../../node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
3709
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
3710
3710
  module2.exports = [
3711
3711
  ["a140", "\uE4C6", 62],
3712
3712
  ["a180", "\uE505", 32],
@@ -3765,16 +3765,16 @@ var require_gbk_added = __commonJS({
3765
3765
  }
3766
3766
  });
3767
3767
 
3768
- // ../../../node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
3768
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
3769
3769
  var require_gb18030_ranges = __commonJS({
3770
- "../../../node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
3770
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
3771
3771
  module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] };
3772
3772
  }
3773
3773
  });
3774
3774
 
3775
- // ../../../node_modules/iconv-lite/encodings/tables/cp949.json
3775
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp949.json
3776
3776
  var require_cp949 = __commonJS({
3777
- "../../../node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
3777
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
3778
3778
  module2.exports = [
3779
3779
  ["0", "\0", 127],
3780
3780
  ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"],
@@ -4051,9 +4051,9 @@ var require_cp949 = __commonJS({
4051
4051
  }
4052
4052
  });
4053
4053
 
4054
- // ../../../node_modules/iconv-lite/encodings/tables/cp950.json
4054
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp950.json
4055
4055
  var require_cp950 = __commonJS({
4056
- "../../../node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
4056
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
4057
4057
  module2.exports = [
4058
4058
  ["0", "\0", 127],
4059
4059
  ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],
@@ -4234,9 +4234,9 @@ var require_cp950 = __commonJS({
4234
4234
  }
4235
4235
  });
4236
4236
 
4237
- // ../../../node_modules/iconv-lite/encodings/tables/big5-added.json
4237
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/big5-added.json
4238
4238
  var require_big5_added = __commonJS({
4239
- "../../../node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
4239
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
4240
4240
  module2.exports = [
4241
4241
  ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],
4242
4242
  ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],
@@ -4362,9 +4362,9 @@ var require_big5_added = __commonJS({
4362
4362
  }
4363
4363
  });
4364
4364
 
4365
- // ../../../node_modules/iconv-lite/encodings/dbcs-data.js
4365
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/dbcs-data.js
4366
4366
  var require_dbcs_data = __commonJS({
4367
- "../../../node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
4367
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
4368
4368
  "use strict";
4369
4369
  module2.exports = {
4370
4370
  // == Japanese/ShiftJIS ====================================================
@@ -4554,9 +4554,9 @@ var require_dbcs_data = __commonJS({
4554
4554
  }
4555
4555
  });
4556
4556
 
4557
- // ../../../node_modules/iconv-lite/encodings/index.js
4557
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/encodings/index.js
4558
4558
  var require_encodings = __commonJS({
4559
- "../../../node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
4559
+ "../../../node_modules/body-parser/node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
4560
4560
  "use strict";
4561
4561
  var modules = [
4562
4562
  require_internal(),
@@ -4578,9 +4578,9 @@ var require_encodings = __commonJS({
4578
4578
  }
4579
4579
  });
4580
4580
 
4581
- // ../../../node_modules/iconv-lite/lib/streams.js
4581
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/lib/streams.js
4582
4582
  var require_streams = __commonJS({
4583
- "../../../node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
4583
+ "../../../node_modules/body-parser/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
4584
4584
  "use strict";
4585
4585
  var Buffer2 = require("buffer").Buffer;
4586
4586
  var Transform = require("stream").Transform;
@@ -4683,9 +4683,9 @@ var require_streams = __commonJS({
4683
4683
  }
4684
4684
  });
4685
4685
 
4686
- // ../../../node_modules/iconv-lite/lib/extend-node.js
4686
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/lib/extend-node.js
4687
4687
  var require_extend_node = __commonJS({
4688
- "../../../node_modules/iconv-lite/lib/extend-node.js"(exports2, module2) {
4688
+ "../../../node_modules/body-parser/node_modules/iconv-lite/lib/extend-node.js"(exports2, module2) {
4689
4689
  "use strict";
4690
4690
  var Buffer2 = require("buffer").Buffer;
4691
4691
  module2.exports = function(iconv) {
@@ -4836,9 +4836,9 @@ var require_extend_node = __commonJS({
4836
4836
  }
4837
4837
  });
4838
4838
 
4839
- // ../../../node_modules/iconv-lite/lib/index.js
4839
+ // ../../../node_modules/body-parser/node_modules/iconv-lite/lib/index.js
4840
4840
  var require_lib = __commonJS({
4841
- "../../../node_modules/iconv-lite/lib/index.js"(exports2, module2) {
4841
+ "../../../node_modules/body-parser/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
4842
4842
  "use strict";
4843
4843
  var Buffer2 = require_safer().Buffer;
4844
4844
  var bomHandling = require_bom_handling();
@@ -16502,9 +16502,9 @@ var require_side_channel = __commonJS({
16502
16502
  }
16503
16503
  });
16504
16504
 
16505
- // ../../../node_modules/qs/lib/formats.js
16505
+ // ../../../node_modules/body-parser/node_modules/qs/lib/formats.js
16506
16506
  var require_formats = __commonJS({
16507
- "../../../node_modules/qs/lib/formats.js"(exports2, module2) {
16507
+ "../../../node_modules/body-parser/node_modules/qs/lib/formats.js"(exports2, module2) {
16508
16508
  "use strict";
16509
16509
  var replace = String.prototype.replace;
16510
16510
  var percentTwenties = /%20/g;
@@ -16528,9 +16528,9 @@ var require_formats = __commonJS({
16528
16528
  }
16529
16529
  });
16530
16530
 
16531
- // ../../../node_modules/qs/lib/utils.js
16531
+ // ../../../node_modules/body-parser/node_modules/qs/lib/utils.js
16532
16532
  var require_utils = __commonJS({
16533
- "../../../node_modules/qs/lib/utils.js"(exports2, module2) {
16533
+ "../../../node_modules/body-parser/node_modules/qs/lib/utils.js"(exports2, module2) {
16534
16534
  "use strict";
16535
16535
  var formats = require_formats();
16536
16536
  var getSideChannel = require_side_channel();
@@ -16553,7 +16553,7 @@ var require_utils = __commonJS({
16553
16553
  var hexTable = (function() {
16554
16554
  var array = [];
16555
16555
  for (var i = 0; i < 256; ++i) {
16556
- array.push("%" + ((i < 16 ? "0" : "") + i.toString(16)).toUpperCase());
16556
+ array[array.length] = "%" + ((i < 16 ? "0" : "") + i.toString(16)).toUpperCase();
16557
16557
  }
16558
16558
  return array;
16559
16559
  })();
@@ -16565,7 +16565,7 @@ var require_utils = __commonJS({
16565
16565
  var compacted = [];
16566
16566
  for (var j = 0; j < obj.length; ++j) {
16567
16567
  if (typeof obj[j] !== "undefined") {
16568
- compacted.push(obj[j]);
16568
+ compacted[compacted.length] = obj[j];
16569
16569
  }
16570
16570
  }
16571
16571
  item.obj[item.prop] = compacted;
@@ -16589,7 +16589,11 @@ var require_utils = __commonJS({
16589
16589
  }
16590
16590
  if (typeof source !== "object" && typeof source !== "function") {
16591
16591
  if (isArray(target)) {
16592
- target.push(source);
16592
+ var nextIndex = target.length;
16593
+ if (options && typeof options.arrayLimit === "number" && nextIndex > options.arrayLimit) {
16594
+ return markOverflow(arrayToObject(target.concat(source), options), nextIndex);
16595
+ }
16596
+ target[nextIndex] = source;
16593
16597
  } else if (target && typeof target === "object") {
16594
16598
  if (isOverflow(target)) {
16595
16599
  var newIndex = getMaxIndex(target) + 1;
@@ -16621,9 +16625,13 @@ var require_utils = __commonJS({
16621
16625
  }
16622
16626
  return markOverflow(result, getMaxIndex(source) + 1);
16623
16627
  }
16624
- return [
16628
+ var combined = [
16625
16629
  target
16626
16630
  ].concat(source);
16631
+ if (options && typeof options.arrayLimit === "number" && combined.length > options.arrayLimit) {
16632
+ return markOverflow(arrayToObject(combined, options), combined.length - 1);
16633
+ }
16634
+ return combined;
16627
16635
  }
16628
16636
  var mergeTarget = target;
16629
16637
  if (isArray(target) && !isArray(source)) {
@@ -16636,7 +16644,7 @@ var require_utils = __commonJS({
16636
16644
  if (targetItem && typeof targetItem === "object" && item && typeof item === "object") {
16637
16645
  target[i] = merge2(targetItem, item, options);
16638
16646
  } else {
16639
- target.push(item);
16647
+ target[target.length] = item;
16640
16648
  }
16641
16649
  } else {
16642
16650
  target[i] = item;
@@ -16651,6 +16659,15 @@ var require_utils = __commonJS({
16651
16659
  } else {
16652
16660
  acc[key] = value;
16653
16661
  }
16662
+ if (isOverflow(source) && !isOverflow(acc)) {
16663
+ markOverflow(acc, getMaxIndex(source));
16664
+ }
16665
+ if (isOverflow(acc)) {
16666
+ var keyNum = parseInt(key, 10);
16667
+ if (String(keyNum) === key && keyNum >= 0 && keyNum > getMaxIndex(acc)) {
16668
+ setMaxIndex(acc, keyNum);
16669
+ }
16670
+ }
16654
16671
  return acc;
16655
16672
  }, mergeTarget);
16656
16673
  }, "merge");
@@ -16735,11 +16752,11 @@ var require_utils = __commonJS({
16735
16752
  var key = keys[j];
16736
16753
  var val = obj[key];
16737
16754
  if (typeof val === "object" && val !== null && refs.indexOf(val) === -1) {
16738
- queue.push({
16755
+ queue[queue.length] = {
16739
16756
  obj,
16740
16757
  prop: key
16741
- });
16742
- refs.push(val);
16758
+ };
16759
+ refs[refs.length] = val;
16743
16760
  }
16744
16761
  }
16745
16762
  }
@@ -16774,7 +16791,7 @@ var require_utils = __commonJS({
16774
16791
  if (isArray(val)) {
16775
16792
  var mapped = [];
16776
16793
  for (var i = 0; i < val.length; i += 1) {
16777
- mapped.push(fn(val[i]));
16794
+ mapped[mapped.length] = fn(val[i]);
16778
16795
  }
16779
16796
  return mapped;
16780
16797
  }
@@ -16790,15 +16807,16 @@ var require_utils = __commonJS({
16790
16807
  isBuffer,
16791
16808
  isOverflow,
16792
16809
  isRegExp,
16810
+ markOverflow,
16793
16811
  maybeMap,
16794
16812
  merge
16795
16813
  };
16796
16814
  }
16797
16815
  });
16798
16816
 
16799
- // ../../../node_modules/qs/lib/stringify.js
16817
+ // ../../../node_modules/body-parser/node_modules/qs/lib/stringify.js
16800
16818
  var require_stringify = __commonJS({
16801
- "../../../node_modules/qs/lib/stringify.js"(exports2, module2) {
16819
+ "../../../node_modules/body-parser/node_modules/qs/lib/stringify.js"(exports2, module2) {
16802
16820
  "use strict";
16803
16821
  var getSideChannel = require_side_channel();
16804
16822
  var utils = require_utils();
@@ -17051,9 +17069,9 @@ var require_stringify = __commonJS({
17051
17069
  }
17052
17070
  });
17053
17071
 
17054
- // ../../../node_modules/qs/lib/parse.js
17072
+ // ../../../node_modules/body-parser/node_modules/qs/lib/parse.js
17055
17073
  var require_parse = __commonJS({
17056
- "../../../node_modules/qs/lib/parse.js"(exports2, module2) {
17074
+ "../../../node_modules/body-parser/node_modules/qs/lib/parse.js"(exports2, module2) {
17057
17075
  "use strict";
17058
17076
  var utils = require_utils();
17059
17077
  var has = Object.prototype.hasOwnProperty;
@@ -17152,6 +17170,12 @@ var require_parse = __commonJS({
17152
17170
  val
17153
17171
  ] : val;
17154
17172
  }
17173
+ if (options.comma && isArray(val) && val.length > options.arrayLimit) {
17174
+ if (options.throwOnLimitExceeded) {
17175
+ throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array.");
17176
+ }
17177
+ val = utils.combine([], val, options.arrayLimit, options.plainObjects);
17178
+ }
17155
17179
  if (key !== null) {
17156
17180
  var existing = has.call(obj, key);
17157
17181
  if (existing && options.duplicates === "combine") {
@@ -17186,13 +17210,19 @@ var require_parse = __commonJS({
17186
17210
  var cleanRoot = root.charAt(0) === "[" && root.charAt(root.length - 1) === "]" ? root.slice(1, -1) : root;
17187
17211
  var decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/g, ".") : cleanRoot;
17188
17212
  var index = parseInt(decodedRoot, 10);
17213
+ var isValidArrayIndex = !isNaN(index) && root !== decodedRoot && String(index) === decodedRoot && index >= 0 && options.parseArrays;
17189
17214
  if (!options.parseArrays && decodedRoot === "") {
17190
17215
  obj = {
17191
17216
  0: leaf
17192
17217
  };
17193
- } else if (!isNaN(index) && root !== decodedRoot && String(index) === decodedRoot && index >= 0 && options.parseArrays && index <= options.arrayLimit) {
17218
+ } else if (isValidArrayIndex && index < options.arrayLimit) {
17194
17219
  obj = [];
17195
17220
  obj[index] = leaf;
17221
+ } else if (isValidArrayIndex && options.throwOnLimitExceeded) {
17222
+ throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array.");
17223
+ } else if (isValidArrayIndex) {
17224
+ obj[index] = leaf;
17225
+ utils.markOverflow(obj, index);
17196
17226
  } else if (decodedRoot !== "__proto__") {
17197
17227
  obj[decodedRoot] = leaf;
17198
17228
  }
@@ -17224,7 +17254,7 @@ var require_parse = __commonJS({
17224
17254
  return;
17225
17255
  }
17226
17256
  }
17227
- keys.push(parent);
17257
+ keys[keys.length] = parent;
17228
17258
  }
17229
17259
  var i = 0;
17230
17260
  while ((segment = child.exec(key)) !== null && i < options.depth) {
@@ -17235,13 +17265,13 @@ var require_parse = __commonJS({
17235
17265
  return;
17236
17266
  }
17237
17267
  }
17238
- keys.push(segment[1]);
17268
+ keys[keys.length] = segment[1];
17239
17269
  }
17240
17270
  if (segment) {
17241
17271
  if (options.strictDepth === true) {
17242
17272
  throw new RangeError("Input depth exceeded depth option of " + options.depth + " and strictDepth is true");
17243
17273
  }
17244
- keys.push("[" + key.slice(segment.index) + "]");
17274
+ keys[keys.length] = "[" + key.slice(segment.index) + "]";
17245
17275
  }
17246
17276
  return keys;
17247
17277
  }, "splitKeyIntoSegments");
@@ -17330,9 +17360,9 @@ var require_parse = __commonJS({
17330
17360
  }
17331
17361
  });
17332
17362
 
17333
- // ../../../node_modules/qs/lib/index.js
17363
+ // ../../../node_modules/body-parser/node_modules/qs/lib/index.js
17334
17364
  var require_lib2 = __commonJS({
17335
- "../../../node_modules/qs/lib/index.js"(exports2, module2) {
17365
+ "../../../node_modules/body-parser/node_modules/qs/lib/index.js"(exports2, module2) {
17336
17366
  "use strict";
17337
17367
  var stringify = require_stringify();
17338
17368
  var parse = require_parse();
@@ -18039,8 +18069,8 @@ var require_node2 = __commonJS({
18039
18069
  }
18040
18070
  break;
18041
18071
  case "FILE":
18042
- var fs2 = require("fs");
18043
- stream2 = new fs2.SyncWriteStream(fd2, {
18072
+ var fs3 = require("fs");
18073
+ stream2 = new fs3.SyncWriteStream(fd2, {
18044
18074
  autoClose: false
18045
18075
  });
18046
18076
  stream2._type = "fs";
@@ -18809,8 +18839,8 @@ var require_node3 = __commonJS({
18809
18839
  }
18810
18840
  break;
18811
18841
  case "FILE":
18812
- var fs2 = require("fs");
18813
- stream2 = new fs2.SyncWriteStream(fd2, {
18842
+ var fs3 = require("fs");
18843
+ stream2 = new fs3.SyncWriteStream(fd2, {
18814
18844
  autoClose: false
18815
18845
  });
18816
18846
  stream2._type = "fs";
@@ -19697,13 +19727,886 @@ var require_init = __commonJS({
19697
19727
  }
19698
19728
  });
19699
19729
 
19730
+ // ../../../node_modules/express/node_modules/qs/lib/formats.js
19731
+ var require_formats2 = __commonJS({
19732
+ "../../../node_modules/express/node_modules/qs/lib/formats.js"(exports2, module2) {
19733
+ "use strict";
19734
+ var replace = String.prototype.replace;
19735
+ var percentTwenties = /%20/g;
19736
+ var Format = {
19737
+ RFC1738: "RFC1738",
19738
+ RFC3986: "RFC3986"
19739
+ };
19740
+ module2.exports = {
19741
+ "default": Format.RFC3986,
19742
+ formatters: {
19743
+ RFC1738: /* @__PURE__ */ __name(function(value) {
19744
+ return replace.call(value, percentTwenties, "+");
19745
+ }, "RFC1738"),
19746
+ RFC3986: /* @__PURE__ */ __name(function(value) {
19747
+ return String(value);
19748
+ }, "RFC3986")
19749
+ },
19750
+ RFC1738: Format.RFC1738,
19751
+ RFC3986: Format.RFC3986
19752
+ };
19753
+ }
19754
+ });
19755
+
19756
+ // ../../../node_modules/express/node_modules/qs/lib/utils.js
19757
+ var require_utils2 = __commonJS({
19758
+ "../../../node_modules/express/node_modules/qs/lib/utils.js"(exports2, module2) {
19759
+ "use strict";
19760
+ var formats = require_formats2();
19761
+ var getSideChannel = require_side_channel();
19762
+ var has = Object.prototype.hasOwnProperty;
19763
+ var isArray = Array.isArray;
19764
+ var overflowChannel = getSideChannel();
19765
+ var markOverflow = /* @__PURE__ */ __name(function markOverflow2(obj, maxIndex) {
19766
+ overflowChannel.set(obj, maxIndex);
19767
+ return obj;
19768
+ }, "markOverflow");
19769
+ var isOverflow = /* @__PURE__ */ __name(function isOverflow2(obj) {
19770
+ return overflowChannel.has(obj);
19771
+ }, "isOverflow");
19772
+ var getMaxIndex = /* @__PURE__ */ __name(function getMaxIndex2(obj) {
19773
+ return overflowChannel.get(obj);
19774
+ }, "getMaxIndex");
19775
+ var setMaxIndex = /* @__PURE__ */ __name(function setMaxIndex2(obj, maxIndex) {
19776
+ overflowChannel.set(obj, maxIndex);
19777
+ }, "setMaxIndex");
19778
+ var hexTable = (function() {
19779
+ var array = [];
19780
+ for (var i = 0; i < 256; ++i) {
19781
+ array[array.length] = "%" + ((i < 16 ? "0" : "") + i.toString(16)).toUpperCase();
19782
+ }
19783
+ return array;
19784
+ })();
19785
+ var compactQueue = /* @__PURE__ */ __name(function compactQueue2(queue) {
19786
+ while (queue.length > 1) {
19787
+ var item = queue.pop();
19788
+ var obj = item.obj[item.prop];
19789
+ if (isArray(obj)) {
19790
+ var compacted = [];
19791
+ for (var j = 0; j < obj.length; ++j) {
19792
+ if (typeof obj[j] !== "undefined") {
19793
+ compacted[compacted.length] = obj[j];
19794
+ }
19795
+ }
19796
+ item.obj[item.prop] = compacted;
19797
+ }
19798
+ }
19799
+ }, "compactQueue");
19800
+ var arrayToObject = /* @__PURE__ */ __name(function arrayToObject2(source, options) {
19801
+ var obj = options && options.plainObjects ? {
19802
+ __proto__: null
19803
+ } : {};
19804
+ for (var i = 0; i < source.length; ++i) {
19805
+ if (typeof source[i] !== "undefined") {
19806
+ obj[i] = source[i];
19807
+ }
19808
+ }
19809
+ return obj;
19810
+ }, "arrayToObject");
19811
+ var merge = /* @__PURE__ */ __name(function merge2(target, source, options) {
19812
+ if (!source) {
19813
+ return target;
19814
+ }
19815
+ if (typeof source !== "object" && typeof source !== "function") {
19816
+ if (isArray(target)) {
19817
+ var nextIndex = target.length;
19818
+ if (options && typeof options.arrayLimit === "number" && nextIndex > options.arrayLimit) {
19819
+ return markOverflow(arrayToObject(target.concat(source), options), nextIndex);
19820
+ }
19821
+ target[nextIndex] = source;
19822
+ } else if (target && typeof target === "object") {
19823
+ if (isOverflow(target)) {
19824
+ var newIndex = getMaxIndex(target) + 1;
19825
+ target[newIndex] = source;
19826
+ setMaxIndex(target, newIndex);
19827
+ } else if (options && (options.plainObjects || options.allowPrototypes) || !has.call(Object.prototype, source)) {
19828
+ target[source] = true;
19829
+ }
19830
+ } else {
19831
+ return [
19832
+ target,
19833
+ source
19834
+ ];
19835
+ }
19836
+ return target;
19837
+ }
19838
+ if (!target || typeof target !== "object") {
19839
+ if (isOverflow(source)) {
19840
+ var sourceKeys = Object.keys(source);
19841
+ var result = options && options.plainObjects ? {
19842
+ __proto__: null,
19843
+ 0: target
19844
+ } : {
19845
+ 0: target
19846
+ };
19847
+ for (var m = 0; m < sourceKeys.length; m++) {
19848
+ var oldKey = parseInt(sourceKeys[m], 10);
19849
+ result[oldKey + 1] = source[sourceKeys[m]];
19850
+ }
19851
+ return markOverflow(result, getMaxIndex(source) + 1);
19852
+ }
19853
+ var combined = [
19854
+ target
19855
+ ].concat(source);
19856
+ if (options && typeof options.arrayLimit === "number" && combined.length > options.arrayLimit) {
19857
+ return markOverflow(arrayToObject(combined, options), combined.length - 1);
19858
+ }
19859
+ return combined;
19860
+ }
19861
+ var mergeTarget = target;
19862
+ if (isArray(target) && !isArray(source)) {
19863
+ mergeTarget = arrayToObject(target, options);
19864
+ }
19865
+ if (isArray(target) && isArray(source)) {
19866
+ source.forEach(function(item, i) {
19867
+ if (has.call(target, i)) {
19868
+ var targetItem = target[i];
19869
+ if (targetItem && typeof targetItem === "object" && item && typeof item === "object") {
19870
+ target[i] = merge2(targetItem, item, options);
19871
+ } else {
19872
+ target[target.length] = item;
19873
+ }
19874
+ } else {
19875
+ target[i] = item;
19876
+ }
19877
+ });
19878
+ return target;
19879
+ }
19880
+ return Object.keys(source).reduce(function(acc, key) {
19881
+ var value = source[key];
19882
+ if (has.call(acc, key)) {
19883
+ acc[key] = merge2(acc[key], value, options);
19884
+ } else {
19885
+ acc[key] = value;
19886
+ }
19887
+ if (isOverflow(source) && !isOverflow(acc)) {
19888
+ markOverflow(acc, getMaxIndex(source));
19889
+ }
19890
+ if (isOverflow(acc)) {
19891
+ var keyNum = parseInt(key, 10);
19892
+ if (String(keyNum) === key && keyNum >= 0 && keyNum > getMaxIndex(acc)) {
19893
+ setMaxIndex(acc, keyNum);
19894
+ }
19895
+ }
19896
+ return acc;
19897
+ }, mergeTarget);
19898
+ }, "merge");
19899
+ var assign = /* @__PURE__ */ __name(function assignSingleSource(target, source) {
19900
+ return Object.keys(source).reduce(function(acc, key) {
19901
+ acc[key] = source[key];
19902
+ return acc;
19903
+ }, target);
19904
+ }, "assignSingleSource");
19905
+ var decode = /* @__PURE__ */ __name(function(str, defaultDecoder, charset) {
19906
+ var strWithoutPlus = str.replace(/\+/g, " ");
19907
+ if (charset === "iso-8859-1") {
19908
+ return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
19909
+ }
19910
+ try {
19911
+ return decodeURIComponent(strWithoutPlus);
19912
+ } catch (e) {
19913
+ return strWithoutPlus;
19914
+ }
19915
+ }, "decode");
19916
+ var limit = 1024;
19917
+ var encode = /* @__PURE__ */ __name(function encode2(str, defaultEncoder, charset, kind, format) {
19918
+ if (str.length === 0) {
19919
+ return str;
19920
+ }
19921
+ var string = str;
19922
+ if (typeof str === "symbol") {
19923
+ string = Symbol.prototype.toString.call(str);
19924
+ } else if (typeof str !== "string") {
19925
+ string = String(str);
19926
+ }
19927
+ if (charset === "iso-8859-1") {
19928
+ return escape(string).replace(/%u[0-9a-f]{4}/gi, function($0) {
19929
+ return "%26%23" + parseInt($0.slice(2), 16) + "%3B";
19930
+ });
19931
+ }
19932
+ var out = "";
19933
+ for (var j = 0; j < string.length; j += limit) {
19934
+ var segment = string.length >= limit ? string.slice(j, j + limit) : string;
19935
+ var arr = [];
19936
+ for (var i = 0; i < segment.length; ++i) {
19937
+ var c = segment.charCodeAt(i);
19938
+ if (c === 45 || c === 46 || c === 95 || c === 126 || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || format === formats.RFC1738 && (c === 40 || c === 41)) {
19939
+ arr[arr.length] = segment.charAt(i);
19940
+ continue;
19941
+ }
19942
+ if (c < 128) {
19943
+ arr[arr.length] = hexTable[c];
19944
+ continue;
19945
+ }
19946
+ if (c < 2048) {
19947
+ arr[arr.length] = hexTable[192 | c >> 6] + hexTable[128 | c & 63];
19948
+ continue;
19949
+ }
19950
+ if (c < 55296 || c >= 57344) {
19951
+ arr[arr.length] = hexTable[224 | c >> 12] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63];
19952
+ continue;
19953
+ }
19954
+ i += 1;
19955
+ c = 65536 + ((c & 1023) << 10 | segment.charCodeAt(i) & 1023);
19956
+ arr[arr.length] = hexTable[240 | c >> 18] + hexTable[128 | c >> 12 & 63] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63];
19957
+ }
19958
+ out += arr.join("");
19959
+ }
19960
+ return out;
19961
+ }, "encode");
19962
+ var compact = /* @__PURE__ */ __name(function compact2(value) {
19963
+ var queue = [
19964
+ {
19965
+ obj: {
19966
+ o: value
19967
+ },
19968
+ prop: "o"
19969
+ }
19970
+ ];
19971
+ var refs = [];
19972
+ for (var i = 0; i < queue.length; ++i) {
19973
+ var item = queue[i];
19974
+ var obj = item.obj[item.prop];
19975
+ var keys = Object.keys(obj);
19976
+ for (var j = 0; j < keys.length; ++j) {
19977
+ var key = keys[j];
19978
+ var val = obj[key];
19979
+ if (typeof val === "object" && val !== null && refs.indexOf(val) === -1) {
19980
+ queue[queue.length] = {
19981
+ obj,
19982
+ prop: key
19983
+ };
19984
+ refs[refs.length] = val;
19985
+ }
19986
+ }
19987
+ }
19988
+ compactQueue(queue);
19989
+ return value;
19990
+ }, "compact");
19991
+ var isRegExp = /* @__PURE__ */ __name(function isRegExp2(obj) {
19992
+ return Object.prototype.toString.call(obj) === "[object RegExp]";
19993
+ }, "isRegExp");
19994
+ var isBuffer = /* @__PURE__ */ __name(function isBuffer2(obj) {
19995
+ if (!obj || typeof obj !== "object") {
19996
+ return false;
19997
+ }
19998
+ return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
19999
+ }, "isBuffer");
20000
+ var combine = /* @__PURE__ */ __name(function combine2(a, b, arrayLimit, plainObjects) {
20001
+ if (isOverflow(a)) {
20002
+ var newIndex = getMaxIndex(a) + 1;
20003
+ a[newIndex] = b;
20004
+ setMaxIndex(a, newIndex);
20005
+ return a;
20006
+ }
20007
+ var result = [].concat(a, b);
20008
+ if (result.length > arrayLimit) {
20009
+ return markOverflow(arrayToObject(result, {
20010
+ plainObjects
20011
+ }), result.length - 1);
20012
+ }
20013
+ return result;
20014
+ }, "combine");
20015
+ var maybeMap = /* @__PURE__ */ __name(function maybeMap2(val, fn) {
20016
+ if (isArray(val)) {
20017
+ var mapped = [];
20018
+ for (var i = 0; i < val.length; i += 1) {
20019
+ mapped[mapped.length] = fn(val[i]);
20020
+ }
20021
+ return mapped;
20022
+ }
20023
+ return fn(val);
20024
+ }, "maybeMap");
20025
+ module2.exports = {
20026
+ arrayToObject,
20027
+ assign,
20028
+ combine,
20029
+ compact,
20030
+ decode,
20031
+ encode,
20032
+ isBuffer,
20033
+ isOverflow,
20034
+ isRegExp,
20035
+ markOverflow,
20036
+ maybeMap,
20037
+ merge
20038
+ };
20039
+ }
20040
+ });
20041
+
20042
+ // ../../../node_modules/express/node_modules/qs/lib/stringify.js
20043
+ var require_stringify2 = __commonJS({
20044
+ "../../../node_modules/express/node_modules/qs/lib/stringify.js"(exports2, module2) {
20045
+ "use strict";
20046
+ var getSideChannel = require_side_channel();
20047
+ var utils = require_utils2();
20048
+ var formats = require_formats2();
20049
+ var has = Object.prototype.hasOwnProperty;
20050
+ var arrayPrefixGenerators = {
20051
+ brackets: /* @__PURE__ */ __name(function brackets(prefix) {
20052
+ return prefix + "[]";
20053
+ }, "brackets"),
20054
+ comma: "comma",
20055
+ indices: /* @__PURE__ */ __name(function indices(prefix, key) {
20056
+ return prefix + "[" + key + "]";
20057
+ }, "indices"),
20058
+ repeat: /* @__PURE__ */ __name(function repeat(prefix) {
20059
+ return prefix;
20060
+ }, "repeat")
20061
+ };
20062
+ var isArray = Array.isArray;
20063
+ var push = Array.prototype.push;
20064
+ var pushToArray = /* @__PURE__ */ __name(function(arr, valueOrArray) {
20065
+ push.apply(arr, isArray(valueOrArray) ? valueOrArray : [
20066
+ valueOrArray
20067
+ ]);
20068
+ }, "pushToArray");
20069
+ var toISO = Date.prototype.toISOString;
20070
+ var defaultFormat = formats["default"];
20071
+ var defaults = {
20072
+ addQueryPrefix: false,
20073
+ allowDots: false,
20074
+ allowEmptyArrays: false,
20075
+ arrayFormat: "indices",
20076
+ charset: "utf-8",
20077
+ charsetSentinel: false,
20078
+ commaRoundTrip: false,
20079
+ delimiter: "&",
20080
+ encode: true,
20081
+ encodeDotInKeys: false,
20082
+ encoder: utils.encode,
20083
+ encodeValuesOnly: false,
20084
+ filter: void 0,
20085
+ format: defaultFormat,
20086
+ formatter: formats.formatters[defaultFormat],
20087
+ // deprecated
20088
+ indices: false,
20089
+ serializeDate: /* @__PURE__ */ __name(function serializeDate(date) {
20090
+ return toISO.call(date);
20091
+ }, "serializeDate"),
20092
+ skipNulls: false,
20093
+ strictNullHandling: false
20094
+ };
20095
+ var isNonNullishPrimitive = /* @__PURE__ */ __name(function isNonNullishPrimitive2(v) {
20096
+ return typeof v === "string" || typeof v === "number" || typeof v === "boolean" || typeof v === "symbol" || typeof v === "bigint";
20097
+ }, "isNonNullishPrimitive");
20098
+ var sentinel = {};
20099
+ var stringify = /* @__PURE__ */ __name(function stringify2(object, prefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, encoder, filter, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, sideChannel) {
20100
+ var obj = object;
20101
+ var tmpSc = sideChannel;
20102
+ var step = 0;
20103
+ var findFlag = false;
20104
+ while ((tmpSc = tmpSc.get(sentinel)) !== void 0 && !findFlag) {
20105
+ var pos = tmpSc.get(object);
20106
+ step += 1;
20107
+ if (typeof pos !== "undefined") {
20108
+ if (pos === step) {
20109
+ throw new RangeError("Cyclic object value");
20110
+ } else {
20111
+ findFlag = true;
20112
+ }
20113
+ }
20114
+ if (typeof tmpSc.get(sentinel) === "undefined") {
20115
+ step = 0;
20116
+ }
20117
+ }
20118
+ if (typeof filter === "function") {
20119
+ obj = filter(prefix, obj);
20120
+ } else if (obj instanceof Date) {
20121
+ obj = serializeDate(obj);
20122
+ } else if (generateArrayPrefix === "comma" && isArray(obj)) {
20123
+ obj = utils.maybeMap(obj, function(value2) {
20124
+ if (value2 instanceof Date) {
20125
+ return serializeDate(value2);
20126
+ }
20127
+ return value2;
20128
+ });
20129
+ }
20130
+ if (obj === null) {
20131
+ if (strictNullHandling) {
20132
+ return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, "key", format) : prefix;
20133
+ }
20134
+ obj = "";
20135
+ }
20136
+ if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
20137
+ if (encoder) {
20138
+ var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, "key", format);
20139
+ return [
20140
+ formatter(keyValue) + "=" + formatter(encoder(obj, defaults.encoder, charset, "value", format))
20141
+ ];
20142
+ }
20143
+ return [
20144
+ formatter(prefix) + "=" + formatter(String(obj))
20145
+ ];
20146
+ }
20147
+ var values = [];
20148
+ if (typeof obj === "undefined") {
20149
+ return values;
20150
+ }
20151
+ var objKeys;
20152
+ if (generateArrayPrefix === "comma" && isArray(obj)) {
20153
+ if (encodeValuesOnly && encoder) {
20154
+ obj = utils.maybeMap(obj, encoder);
20155
+ }
20156
+ objKeys = [
20157
+ {
20158
+ value: obj.length > 0 ? obj.join(",") || null : void 0
20159
+ }
20160
+ ];
20161
+ } else if (isArray(filter)) {
20162
+ objKeys = filter;
20163
+ } else {
20164
+ var keys = Object.keys(obj);
20165
+ objKeys = sort ? keys.sort(sort) : keys;
20166
+ }
20167
+ var encodedPrefix = encodeDotInKeys ? String(prefix).replace(/\./g, "%2E") : String(prefix);
20168
+ var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? encodedPrefix + "[]" : encodedPrefix;
20169
+ if (allowEmptyArrays && isArray(obj) && obj.length === 0) {
20170
+ return adjustedPrefix + "[]";
20171
+ }
20172
+ for (var j = 0; j < objKeys.length; ++j) {
20173
+ var key = objKeys[j];
20174
+ var value = typeof key === "object" && key && typeof key.value !== "undefined" ? key.value : obj[key];
20175
+ if (skipNulls && value === null) {
20176
+ continue;
20177
+ }
20178
+ var encodedKey = allowDots && encodeDotInKeys ? String(key).replace(/\./g, "%2E") : String(key);
20179
+ var keyPrefix = isArray(obj) ? typeof generateArrayPrefix === "function" ? generateArrayPrefix(adjustedPrefix, encodedKey) : adjustedPrefix : adjustedPrefix + (allowDots ? "." + encodedKey : "[" + encodedKey + "]");
20180
+ sideChannel.set(object, step);
20181
+ var valueSideChannel = getSideChannel();
20182
+ valueSideChannel.set(sentinel, sideChannel);
20183
+ pushToArray(values, stringify2(value, keyPrefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, generateArrayPrefix === "comma" && encodeValuesOnly && isArray(obj) ? null : encoder, filter, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, valueSideChannel));
20184
+ }
20185
+ return values;
20186
+ }, "stringify");
20187
+ var normalizeStringifyOptions = /* @__PURE__ */ __name(function normalizeStringifyOptions2(opts) {
20188
+ if (!opts) {
20189
+ return defaults;
20190
+ }
20191
+ if (typeof opts.allowEmptyArrays !== "undefined" && typeof opts.allowEmptyArrays !== "boolean") {
20192
+ throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");
20193
+ }
20194
+ if (typeof opts.encodeDotInKeys !== "undefined" && typeof opts.encodeDotInKeys !== "boolean") {
20195
+ throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");
20196
+ }
20197
+ if (opts.encoder !== null && typeof opts.encoder !== "undefined" && typeof opts.encoder !== "function") {
20198
+ throw new TypeError("Encoder has to be a function.");
20199
+ }
20200
+ var charset = opts.charset || defaults.charset;
20201
+ if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") {
20202
+ throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");
20203
+ }
20204
+ var format = formats["default"];
20205
+ if (typeof opts.format !== "undefined") {
20206
+ if (!has.call(formats.formatters, opts.format)) {
20207
+ throw new TypeError("Unknown format option provided.");
20208
+ }
20209
+ format = opts.format;
20210
+ }
20211
+ var formatter = formats.formatters[format];
20212
+ var filter = defaults.filter;
20213
+ if (typeof opts.filter === "function" || isArray(opts.filter)) {
20214
+ filter = opts.filter;
20215
+ }
20216
+ var arrayFormat;
20217
+ if (opts.arrayFormat in arrayPrefixGenerators) {
20218
+ arrayFormat = opts.arrayFormat;
20219
+ } else if ("indices" in opts) {
20220
+ arrayFormat = opts.indices ? "indices" : "repeat";
20221
+ } else {
20222
+ arrayFormat = defaults.arrayFormat;
20223
+ }
20224
+ if ("commaRoundTrip" in opts && typeof opts.commaRoundTrip !== "boolean") {
20225
+ throw new TypeError("`commaRoundTrip` must be a boolean, or absent");
20226
+ }
20227
+ var allowDots = typeof opts.allowDots === "undefined" ? opts.encodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
20228
+ return {
20229
+ addQueryPrefix: typeof opts.addQueryPrefix === "boolean" ? opts.addQueryPrefix : defaults.addQueryPrefix,
20230
+ allowDots,
20231
+ allowEmptyArrays: typeof opts.allowEmptyArrays === "boolean" ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
20232
+ arrayFormat,
20233
+ charset,
20234
+ charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults.charsetSentinel,
20235
+ commaRoundTrip: !!opts.commaRoundTrip,
20236
+ delimiter: typeof opts.delimiter === "undefined" ? defaults.delimiter : opts.delimiter,
20237
+ encode: typeof opts.encode === "boolean" ? opts.encode : defaults.encode,
20238
+ encodeDotInKeys: typeof opts.encodeDotInKeys === "boolean" ? opts.encodeDotInKeys : defaults.encodeDotInKeys,
20239
+ encoder: typeof opts.encoder === "function" ? opts.encoder : defaults.encoder,
20240
+ encodeValuesOnly: typeof opts.encodeValuesOnly === "boolean" ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
20241
+ filter,
20242
+ format,
20243
+ formatter,
20244
+ serializeDate: typeof opts.serializeDate === "function" ? opts.serializeDate : defaults.serializeDate,
20245
+ skipNulls: typeof opts.skipNulls === "boolean" ? opts.skipNulls : defaults.skipNulls,
20246
+ sort: typeof opts.sort === "function" ? opts.sort : null,
20247
+ strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults.strictNullHandling
20248
+ };
20249
+ }, "normalizeStringifyOptions");
20250
+ module2.exports = function(object, opts) {
20251
+ var obj = object;
20252
+ var options = normalizeStringifyOptions(opts);
20253
+ var objKeys;
20254
+ var filter;
20255
+ if (typeof options.filter === "function") {
20256
+ filter = options.filter;
20257
+ obj = filter("", obj);
20258
+ } else if (isArray(options.filter)) {
20259
+ filter = options.filter;
20260
+ objKeys = filter;
20261
+ }
20262
+ var keys = [];
20263
+ if (typeof obj !== "object" || obj === null) {
20264
+ return "";
20265
+ }
20266
+ var generateArrayPrefix = arrayPrefixGenerators[options.arrayFormat];
20267
+ var commaRoundTrip = generateArrayPrefix === "comma" && options.commaRoundTrip;
20268
+ if (!objKeys) {
20269
+ objKeys = Object.keys(obj);
20270
+ }
20271
+ if (options.sort) {
20272
+ objKeys.sort(options.sort);
20273
+ }
20274
+ var sideChannel = getSideChannel();
20275
+ for (var i = 0; i < objKeys.length; ++i) {
20276
+ var key = objKeys[i];
20277
+ var value = obj[key];
20278
+ if (options.skipNulls && value === null) {
20279
+ continue;
20280
+ }
20281
+ pushToArray(keys, stringify(value, key, generateArrayPrefix, commaRoundTrip, options.allowEmptyArrays, options.strictNullHandling, options.skipNulls, options.encodeDotInKeys, options.encode ? options.encoder : null, options.filter, options.sort, options.allowDots, options.serializeDate, options.format, options.formatter, options.encodeValuesOnly, options.charset, sideChannel));
20282
+ }
20283
+ var joined = keys.join(options.delimiter);
20284
+ var prefix = options.addQueryPrefix === true ? "?" : "";
20285
+ if (options.charsetSentinel) {
20286
+ if (options.charset === "iso-8859-1") {
20287
+ prefix += "utf8=%26%2310003%3B&";
20288
+ } else {
20289
+ prefix += "utf8=%E2%9C%93&";
20290
+ }
20291
+ }
20292
+ return joined.length > 0 ? prefix + joined : "";
20293
+ };
20294
+ }
20295
+ });
20296
+
20297
+ // ../../../node_modules/express/node_modules/qs/lib/parse.js
20298
+ var require_parse2 = __commonJS({
20299
+ "../../../node_modules/express/node_modules/qs/lib/parse.js"(exports2, module2) {
20300
+ "use strict";
20301
+ var utils = require_utils2();
20302
+ var has = Object.prototype.hasOwnProperty;
20303
+ var isArray = Array.isArray;
20304
+ var defaults = {
20305
+ allowDots: false,
20306
+ allowEmptyArrays: false,
20307
+ allowPrototypes: false,
20308
+ allowSparse: false,
20309
+ arrayLimit: 20,
20310
+ charset: "utf-8",
20311
+ charsetSentinel: false,
20312
+ comma: false,
20313
+ decodeDotInKeys: false,
20314
+ decoder: utils.decode,
20315
+ delimiter: "&",
20316
+ depth: 5,
20317
+ duplicates: "combine",
20318
+ ignoreQueryPrefix: false,
20319
+ interpretNumericEntities: false,
20320
+ parameterLimit: 1e3,
20321
+ parseArrays: true,
20322
+ plainObjects: false,
20323
+ strictDepth: false,
20324
+ strictNullHandling: false,
20325
+ throwOnLimitExceeded: false
20326
+ };
20327
+ var interpretNumericEntities = /* @__PURE__ */ __name(function(str) {
20328
+ return str.replace(/&#(\d+);/g, function($0, numberStr) {
20329
+ return String.fromCharCode(parseInt(numberStr, 10));
20330
+ });
20331
+ }, "interpretNumericEntities");
20332
+ var parseArrayValue = /* @__PURE__ */ __name(function(val, options, currentArrayLength) {
20333
+ if (val && typeof val === "string" && options.comma && val.indexOf(",") > -1) {
20334
+ return val.split(",");
20335
+ }
20336
+ if (options.throwOnLimitExceeded && currentArrayLength >= options.arrayLimit) {
20337
+ throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array.");
20338
+ }
20339
+ return val;
20340
+ }, "parseArrayValue");
20341
+ var isoSentinel = "utf8=%26%2310003%3B";
20342
+ var charsetSentinel = "utf8=%E2%9C%93";
20343
+ var parseValues = /* @__PURE__ */ __name(function parseQueryStringValues(str, options) {
20344
+ var obj = {
20345
+ __proto__: null
20346
+ };
20347
+ var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, "") : str;
20348
+ cleanStr = cleanStr.replace(/%5B/gi, "[").replace(/%5D/gi, "]");
20349
+ var limit = options.parameterLimit === Infinity ? void 0 : options.parameterLimit;
20350
+ var parts = cleanStr.split(options.delimiter, options.throwOnLimitExceeded ? limit + 1 : limit);
20351
+ if (options.throwOnLimitExceeded && parts.length > limit) {
20352
+ throw new RangeError("Parameter limit exceeded. Only " + limit + " parameter" + (limit === 1 ? "" : "s") + " allowed.");
20353
+ }
20354
+ var skipIndex = -1;
20355
+ var i;
20356
+ var charset = options.charset;
20357
+ if (options.charsetSentinel) {
20358
+ for (i = 0; i < parts.length; ++i) {
20359
+ if (parts[i].indexOf("utf8=") === 0) {
20360
+ if (parts[i] === charsetSentinel) {
20361
+ charset = "utf-8";
20362
+ } else if (parts[i] === isoSentinel) {
20363
+ charset = "iso-8859-1";
20364
+ }
20365
+ skipIndex = i;
20366
+ i = parts.length;
20367
+ }
20368
+ }
20369
+ }
20370
+ for (i = 0; i < parts.length; ++i) {
20371
+ if (i === skipIndex) {
20372
+ continue;
20373
+ }
20374
+ var part = parts[i];
20375
+ var bracketEqualsPos = part.indexOf("]=");
20376
+ var pos = bracketEqualsPos === -1 ? part.indexOf("=") : bracketEqualsPos + 1;
20377
+ var key;
20378
+ var val;
20379
+ if (pos === -1) {
20380
+ key = options.decoder(part, defaults.decoder, charset, "key");
20381
+ val = options.strictNullHandling ? null : "";
20382
+ } else {
20383
+ key = options.decoder(part.slice(0, pos), defaults.decoder, charset, "key");
20384
+ if (key !== null) {
20385
+ val = utils.maybeMap(parseArrayValue(part.slice(pos + 1), options, isArray(obj[key]) ? obj[key].length : 0), function(encodedVal) {
20386
+ return options.decoder(encodedVal, defaults.decoder, charset, "value");
20387
+ });
20388
+ }
20389
+ }
20390
+ if (val && options.interpretNumericEntities && charset === "iso-8859-1") {
20391
+ val = interpretNumericEntities(String(val));
20392
+ }
20393
+ if (part.indexOf("[]=") > -1) {
20394
+ val = isArray(val) ? [
20395
+ val
20396
+ ] : val;
20397
+ }
20398
+ if (options.comma && isArray(val) && val.length > options.arrayLimit) {
20399
+ if (options.throwOnLimitExceeded) {
20400
+ throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array.");
20401
+ }
20402
+ val = utils.combine([], val, options.arrayLimit, options.plainObjects);
20403
+ }
20404
+ if (key !== null) {
20405
+ var existing = has.call(obj, key);
20406
+ if (existing && options.duplicates === "combine") {
20407
+ obj[key] = utils.combine(obj[key], val, options.arrayLimit, options.plainObjects);
20408
+ } else if (!existing || options.duplicates === "last") {
20409
+ obj[key] = val;
20410
+ }
20411
+ }
20412
+ }
20413
+ return obj;
20414
+ }, "parseQueryStringValues");
20415
+ var parseObject = /* @__PURE__ */ __name(function(chain, val, options, valuesParsed) {
20416
+ var currentArrayLength = 0;
20417
+ if (chain.length > 0 && chain[chain.length - 1] === "[]") {
20418
+ var parentKey = chain.slice(0, -1).join("");
20419
+ currentArrayLength = Array.isArray(val) && val[parentKey] ? val[parentKey].length : 0;
20420
+ }
20421
+ var leaf = valuesParsed ? val : parseArrayValue(val, options, currentArrayLength);
20422
+ for (var i = chain.length - 1; i >= 0; --i) {
20423
+ var obj;
20424
+ var root = chain[i];
20425
+ if (root === "[]" && options.parseArrays) {
20426
+ if (utils.isOverflow(leaf)) {
20427
+ obj = leaf;
20428
+ } else {
20429
+ obj = options.allowEmptyArrays && (leaf === "" || options.strictNullHandling && leaf === null) ? [] : utils.combine([], leaf, options.arrayLimit, options.plainObjects);
20430
+ }
20431
+ } else {
20432
+ obj = options.plainObjects ? {
20433
+ __proto__: null
20434
+ } : {};
20435
+ var cleanRoot = root.charAt(0) === "[" && root.charAt(root.length - 1) === "]" ? root.slice(1, -1) : root;
20436
+ var decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/g, ".") : cleanRoot;
20437
+ var index = parseInt(decodedRoot, 10);
20438
+ var isValidArrayIndex = !isNaN(index) && root !== decodedRoot && String(index) === decodedRoot && index >= 0 && options.parseArrays;
20439
+ if (!options.parseArrays && decodedRoot === "") {
20440
+ obj = {
20441
+ 0: leaf
20442
+ };
20443
+ } else if (isValidArrayIndex && index < options.arrayLimit) {
20444
+ obj = [];
20445
+ obj[index] = leaf;
20446
+ } else if (isValidArrayIndex && options.throwOnLimitExceeded) {
20447
+ throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array.");
20448
+ } else if (isValidArrayIndex) {
20449
+ obj[index] = leaf;
20450
+ utils.markOverflow(obj, index);
20451
+ } else if (decodedRoot !== "__proto__") {
20452
+ obj[decodedRoot] = leaf;
20453
+ }
20454
+ }
20455
+ leaf = obj;
20456
+ }
20457
+ return leaf;
20458
+ }, "parseObject");
20459
+ var splitKeyIntoSegments = /* @__PURE__ */ __name(function splitKeyIntoSegments2(givenKey, options) {
20460
+ var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, "[$1]") : givenKey;
20461
+ if (options.depth <= 0) {
20462
+ if (!options.plainObjects && has.call(Object.prototype, key)) {
20463
+ if (!options.allowPrototypes) {
20464
+ return;
20465
+ }
20466
+ }
20467
+ return [
20468
+ key
20469
+ ];
20470
+ }
20471
+ var brackets = /(\[[^[\]]*])/;
20472
+ var child = /(\[[^[\]]*])/g;
20473
+ var segment = brackets.exec(key);
20474
+ var parent = segment ? key.slice(0, segment.index) : key;
20475
+ var keys = [];
20476
+ if (parent) {
20477
+ if (!options.plainObjects && has.call(Object.prototype, parent)) {
20478
+ if (!options.allowPrototypes) {
20479
+ return;
20480
+ }
20481
+ }
20482
+ keys[keys.length] = parent;
20483
+ }
20484
+ var i = 0;
20485
+ while ((segment = child.exec(key)) !== null && i < options.depth) {
20486
+ i += 1;
20487
+ var segmentContent = segment[1].slice(1, -1);
20488
+ if (!options.plainObjects && has.call(Object.prototype, segmentContent)) {
20489
+ if (!options.allowPrototypes) {
20490
+ return;
20491
+ }
20492
+ }
20493
+ keys[keys.length] = segment[1];
20494
+ }
20495
+ if (segment) {
20496
+ if (options.strictDepth === true) {
20497
+ throw new RangeError("Input depth exceeded depth option of " + options.depth + " and strictDepth is true");
20498
+ }
20499
+ keys[keys.length] = "[" + key.slice(segment.index) + "]";
20500
+ }
20501
+ return keys;
20502
+ }, "splitKeyIntoSegments");
20503
+ var parseKeys = /* @__PURE__ */ __name(function parseQueryStringKeys(givenKey, val, options, valuesParsed) {
20504
+ if (!givenKey) {
20505
+ return;
20506
+ }
20507
+ var keys = splitKeyIntoSegments(givenKey, options);
20508
+ if (!keys) {
20509
+ return;
20510
+ }
20511
+ return parseObject(keys, val, options, valuesParsed);
20512
+ }, "parseQueryStringKeys");
20513
+ var normalizeParseOptions = /* @__PURE__ */ __name(function normalizeParseOptions2(opts) {
20514
+ if (!opts) {
20515
+ return defaults;
20516
+ }
20517
+ if (typeof opts.allowEmptyArrays !== "undefined" && typeof opts.allowEmptyArrays !== "boolean") {
20518
+ throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");
20519
+ }
20520
+ if (typeof opts.decodeDotInKeys !== "undefined" && typeof opts.decodeDotInKeys !== "boolean") {
20521
+ throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");
20522
+ }
20523
+ if (opts.decoder !== null && typeof opts.decoder !== "undefined" && typeof opts.decoder !== "function") {
20524
+ throw new TypeError("Decoder has to be a function.");
20525
+ }
20526
+ if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") {
20527
+ throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");
20528
+ }
20529
+ if (typeof opts.throwOnLimitExceeded !== "undefined" && typeof opts.throwOnLimitExceeded !== "boolean") {
20530
+ throw new TypeError("`throwOnLimitExceeded` option must be a boolean");
20531
+ }
20532
+ var charset = typeof opts.charset === "undefined" ? defaults.charset : opts.charset;
20533
+ var duplicates = typeof opts.duplicates === "undefined" ? defaults.duplicates : opts.duplicates;
20534
+ if (duplicates !== "combine" && duplicates !== "first" && duplicates !== "last") {
20535
+ throw new TypeError("The duplicates option must be either combine, first, or last");
20536
+ }
20537
+ var allowDots = typeof opts.allowDots === "undefined" ? opts.decodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
20538
+ return {
20539
+ allowDots,
20540
+ allowEmptyArrays: typeof opts.allowEmptyArrays === "boolean" ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
20541
+ allowPrototypes: typeof opts.allowPrototypes === "boolean" ? opts.allowPrototypes : defaults.allowPrototypes,
20542
+ allowSparse: typeof opts.allowSparse === "boolean" ? opts.allowSparse : defaults.allowSparse,
20543
+ arrayLimit: typeof opts.arrayLimit === "number" ? opts.arrayLimit : defaults.arrayLimit,
20544
+ charset,
20545
+ charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults.charsetSentinel,
20546
+ comma: typeof opts.comma === "boolean" ? opts.comma : defaults.comma,
20547
+ decodeDotInKeys: typeof opts.decodeDotInKeys === "boolean" ? opts.decodeDotInKeys : defaults.decodeDotInKeys,
20548
+ decoder: typeof opts.decoder === "function" ? opts.decoder : defaults.decoder,
20549
+ delimiter: typeof opts.delimiter === "string" || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,
20550
+ // eslint-disable-next-line no-implicit-coercion, no-extra-parens
20551
+ depth: typeof opts.depth === "number" || opts.depth === false ? +opts.depth : defaults.depth,
20552
+ duplicates,
20553
+ ignoreQueryPrefix: opts.ignoreQueryPrefix === true,
20554
+ interpretNumericEntities: typeof opts.interpretNumericEntities === "boolean" ? opts.interpretNumericEntities : defaults.interpretNumericEntities,
20555
+ parameterLimit: typeof opts.parameterLimit === "number" ? opts.parameterLimit : defaults.parameterLimit,
20556
+ parseArrays: opts.parseArrays !== false,
20557
+ plainObjects: typeof opts.plainObjects === "boolean" ? opts.plainObjects : defaults.plainObjects,
20558
+ strictDepth: typeof opts.strictDepth === "boolean" ? !!opts.strictDepth : defaults.strictDepth,
20559
+ strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults.strictNullHandling,
20560
+ throwOnLimitExceeded: typeof opts.throwOnLimitExceeded === "boolean" ? opts.throwOnLimitExceeded : false
20561
+ };
20562
+ }, "normalizeParseOptions");
20563
+ module2.exports = function(str, opts) {
20564
+ var options = normalizeParseOptions(opts);
20565
+ if (str === "" || str === null || typeof str === "undefined") {
20566
+ return options.plainObjects ? {
20567
+ __proto__: null
20568
+ } : {};
20569
+ }
20570
+ var tempObj = typeof str === "string" ? parseValues(str, options) : str;
20571
+ var obj = options.plainObjects ? {
20572
+ __proto__: null
20573
+ } : {};
20574
+ var keys = Object.keys(tempObj);
20575
+ for (var i = 0; i < keys.length; ++i) {
20576
+ var key = keys[i];
20577
+ var newObj = parseKeys(key, tempObj[key], options, typeof str === "string");
20578
+ obj = utils.merge(obj, newObj, options);
20579
+ }
20580
+ if (options.allowSparse === true) {
20581
+ return obj;
20582
+ }
20583
+ return utils.compact(obj);
20584
+ };
20585
+ }
20586
+ });
20587
+
20588
+ // ../../../node_modules/express/node_modules/qs/lib/index.js
20589
+ var require_lib3 = __commonJS({
20590
+ "../../../node_modules/express/node_modules/qs/lib/index.js"(exports2, module2) {
20591
+ "use strict";
20592
+ var stringify = require_stringify2();
20593
+ var parse = require_parse2();
20594
+ var formats = require_formats2();
20595
+ module2.exports = {
20596
+ formats,
20597
+ parse,
20598
+ stringify
20599
+ };
20600
+ }
20601
+ });
20602
+
19700
20603
  // ../../../node_modules/express/lib/middleware/query.js
19701
20604
  var require_query = __commonJS({
19702
20605
  "../../../node_modules/express/lib/middleware/query.js"(exports2, module2) {
19703
20606
  "use strict";
19704
20607
  var merge = require_utils_merge();
19705
20608
  var parseUrl = require_parseurl();
19706
- var qs = require_lib2();
20609
+ var qs = require_lib3();
19707
20610
  module2.exports = /* @__PURE__ */ __name(function query(options) {
19708
20611
  var opts = merge({}, options);
19709
20612
  var queryparse = qs.parse;
@@ -19731,11 +20634,11 @@ var require_view = __commonJS({
19731
20634
  "use strict";
19732
20635
  var debug = require_src3()("express:view");
19733
20636
  var path2 = require("path");
19734
- var fs2 = require("fs");
19735
- var dirname = path2.dirname;
20637
+ var fs3 = require("fs");
20638
+ var dirname2 = path2.dirname;
19736
20639
  var basename = path2.basename;
19737
20640
  var extname2 = path2.extname;
19738
- var join2 = path2.join;
20641
+ var join3 = path2.join;
19739
20642
  var resolve2 = path2.resolve;
19740
20643
  module2.exports = View;
19741
20644
  function View(name, options) {
@@ -19772,7 +20675,7 @@ var require_view = __commonJS({
19772
20675
  for (var i = 0; i < roots.length && !path3; i++) {
19773
20676
  var root = roots[i];
19774
20677
  var loc = resolve2(root, name);
19775
- var dir = dirname(loc);
20678
+ var dir = dirname2(loc);
19776
20679
  var file = basename(loc);
19777
20680
  path3 = this.resolve(dir, file);
19778
20681
  }
@@ -19784,12 +20687,12 @@ var require_view = __commonJS({
19784
20687
  }, "render");
19785
20688
  View.prototype.resolve = /* @__PURE__ */ __name(function resolve3(dir, file) {
19786
20689
  var ext = this.ext;
19787
- var path3 = join2(dir, file);
20690
+ var path3 = join3(dir, file);
19788
20691
  var stat = tryStat(path3);
19789
20692
  if (stat && stat.isFile()) {
19790
20693
  return path3;
19791
20694
  }
19792
- path3 = join2(dir, basename(file, ext), "index" + ext);
20695
+ path3 = join3(dir, basename(file, ext), "index" + ext);
19793
20696
  stat = tryStat(path3);
19794
20697
  if (stat && stat.isFile()) {
19795
20698
  return path3;
@@ -19798,7 +20701,7 @@ var require_view = __commonJS({
19798
20701
  function tryStat(path3) {
19799
20702
  debug('stat "%s"', path3);
19800
20703
  try {
19801
- return fs2.statSync(path3);
20704
+ return fs3.statSync(path3);
19802
20705
  } catch (e) {
19803
20706
  return void 0;
19804
20707
  }
@@ -20447,8 +21350,8 @@ var require_node4 = __commonJS({
20447
21350
  }
20448
21351
  break;
20449
21352
  case "FILE":
20450
- var fs2 = require("fs");
20451
- stream2 = new fs2.SyncWriteStream(fd2, {
21353
+ var fs3 = require("fs");
21354
+ stream2 = new fs3.SyncWriteStream(fd2, {
20452
21355
  autoClose: false
20453
21356
  });
20454
21357
  stream2._type = "fs";
@@ -20634,7 +21537,7 @@ var require_mime = __commonJS({
20634
21537
  "../../../node_modules/mime/mime.js"(exports2, module2) {
20635
21538
  "use strict";
20636
21539
  var path2 = require("path");
20637
- var fs2 = require("fs");
21540
+ var fs3 = require("fs");
20638
21541
  function Mime() {
20639
21542
  this.types = /* @__PURE__ */ Object.create(null);
20640
21543
  this.extensions = /* @__PURE__ */ Object.create(null);
@@ -20656,7 +21559,7 @@ var require_mime = __commonJS({
20656
21559
  };
20657
21560
  Mime.prototype.load = function(file) {
20658
21561
  this._loading = file;
20659
- var map = {}, content = fs2.readFileSync(file, "ascii"), lines = content.split(/[\r\n]+/);
21562
+ var map = {}, content = fs3.readFileSync(file, "ascii"), lines = content.split(/[\r\n]+/);
20660
21563
  lines.forEach(function(line) {
20661
21564
  var fields = line.replace(/\s*#.*|^\s*|\s*$/g, "").split(/\s+/);
20662
21565
  map[fields.shift()] = fields;
@@ -20901,7 +21804,7 @@ var require_send = __commonJS({
20901
21804
  var escapeHtml = require_escape_html();
20902
21805
  var etag = require_etag();
20903
21806
  var fresh = require_fresh();
20904
- var fs2 = require("fs");
21807
+ var fs3 = require("fs");
20905
21808
  var mime = require_mime();
20906
21809
  var ms = require_ms5();
20907
21810
  var onFinished = require_on_finished();
@@ -20911,7 +21814,7 @@ var require_send = __commonJS({
20911
21814
  var Stream = require("stream");
20912
21815
  var util = require("util");
20913
21816
  var extname2 = path2.extname;
20914
- var join2 = path2.join;
21817
+ var join3 = path2.join;
20915
21818
  var normalize2 = path2.normalize;
20916
21819
  var resolve2 = path2.resolve;
20917
21820
  var sep = path2.sep;
@@ -21128,7 +22031,7 @@ var require_send = __commonJS({
21128
22031
  return res;
21129
22032
  }
21130
22033
  parts = path3.split(sep);
21131
- path3 = normalize2(join2(root, path3));
22034
+ path3 = normalize2(join3(root, path3));
21132
22035
  } else {
21133
22036
  if (UP_PATH_REGEXP.test(path3)) {
21134
22037
  debug('malicious path "%s"', path3);
@@ -21234,7 +22137,7 @@ var require_send = __commonJS({
21234
22137
  var i = 0;
21235
22138
  var self = this;
21236
22139
  debug('stat "%s"', path3);
21237
- fs2.stat(path3, /* @__PURE__ */ __name(function onstat(err, stat) {
22140
+ fs3.stat(path3, /* @__PURE__ */ __name(function onstat(err, stat) {
21238
22141
  if (err && err.code === "ENOENT" && !extname2(path3) && path3[path3.length - 1] !== sep) {
21239
22142
  return next(err);
21240
22143
  }
@@ -21249,7 +22152,7 @@ var require_send = __commonJS({
21249
22152
  }
21250
22153
  var p = path3 + "." + self._extensions[i++];
21251
22154
  debug('stat "%s"', p);
21252
- fs2.stat(p, function(err2, stat) {
22155
+ fs3.stat(p, function(err2, stat) {
21253
22156
  if (err2) return next(err2);
21254
22157
  if (stat.isDirectory()) return next();
21255
22158
  self.emit("file", p, stat);
@@ -21266,9 +22169,9 @@ var require_send = __commonJS({
21266
22169
  if (err) return self.onStatError(err);
21267
22170
  return self.error(404);
21268
22171
  }
21269
- var p = join2(path3, self._index[i]);
22172
+ var p = join3(path3, self._index[i]);
21270
22173
  debug('stat "%s"', p);
21271
- fs2.stat(p, function(err2, stat) {
22174
+ fs3.stat(p, function(err2, stat) {
21272
22175
  if (err2) return next(err2);
21273
22176
  if (stat.isDirectory()) return next();
21274
22177
  self.emit("file", p, stat);
@@ -21281,7 +22184,7 @@ var require_send = __commonJS({
21281
22184
  SendStream.prototype.stream = /* @__PURE__ */ __name(function stream(path3, options) {
21282
22185
  var self = this;
21283
22186
  var res = this.res;
21284
- var stream2 = fs2.createReadStream(path3, options);
22187
+ var stream2 = fs3.createReadStream(path3, options);
21285
22188
  this.emit("stream", stream2);
21286
22189
  stream2.pipe(res);
21287
22190
  function cleanup() {
@@ -21505,9 +22408,9 @@ var require_forwarded = __commonJS({
21505
22408
  }
21506
22409
  });
21507
22410
 
21508
- // ../../../node_modules/ipaddr.js/lib/ipaddr.js
22411
+ // ../../../node_modules/proxy-addr/node_modules/ipaddr.js/lib/ipaddr.js
21509
22412
  var require_ipaddr = __commonJS({
21510
- "../../../node_modules/ipaddr.js/lib/ipaddr.js"(exports2, module2) {
22413
+ "../../../node_modules/proxy-addr/node_modules/ipaddr.js/lib/ipaddr.js"(exports2, module2) {
21511
22414
  "use strict";
21512
22415
  (function() {
21513
22416
  var expandIPv6, ipaddr, ipv4Part, ipv4Regexes, ipv6Part, ipv6Regexes, matchCIDR, root, zoneIndex;
@@ -22619,7 +23522,7 @@ var require_proxy_addr = __commonJS({
22619
23522
  });
22620
23523
 
22621
23524
  // ../../../node_modules/express/lib/utils.js
22622
- var require_utils2 = __commonJS({
23525
+ var require_utils3 = __commonJS({
22623
23526
  "../../../node_modules/express/lib/utils.js"(exports2) {
22624
23527
  "use strict";
22625
23528
  var Buffer2 = require_safe_buffer().Buffer;
@@ -22630,7 +23533,7 @@ var require_utils2 = __commonJS({
22630
23533
  var mime = require_send().mime;
22631
23534
  var etag = require_etag();
22632
23535
  var proxyaddr = require_proxy_addr();
22633
- var qs = require_lib2();
23536
+ var qs = require_lib3();
22634
23537
  var querystring = require("querystring");
22635
23538
  exports2.etag = createETagGenerator({
22636
23539
  weak: false
@@ -22776,9 +23679,9 @@ var require_application = __commonJS({
22776
23679
  var debug = require_src3()("express:application");
22777
23680
  var View = require_view();
22778
23681
  var http = require("http");
22779
- var compileETag = require_utils2().compileETag;
22780
- var compileQueryParser = require_utils2().compileQueryParser;
22781
- var compileTrust = require_utils2().compileTrust;
23682
+ var compileETag = require_utils3().compileETag;
23683
+ var compileQueryParser = require_utils3().compileQueryParser;
23684
+ var compileTrust = require_utils3().compileTrust;
22782
23685
  var deprecate = require_depd()("express");
22783
23686
  var flatten = require_array_flatten();
22784
23687
  var merge = require_utils_merge();
@@ -32755,15 +33658,15 @@ var require_response = __commonJS({
32755
33658
  var encodeUrl = require_encodeurl();
32756
33659
  var escapeHtml = require_escape_html();
32757
33660
  var http = require("http");
32758
- var isAbsolute = require_utils2().isAbsolute;
33661
+ var isAbsolute = require_utils3().isAbsolute;
32759
33662
  var onFinished = require_on_finished();
32760
33663
  var path2 = require("path");
32761
33664
  var statuses = require_statuses();
32762
33665
  var merge = require_utils_merge();
32763
33666
  var sign = require_cookie_signature().sign;
32764
- var normalizeType = require_utils2().normalizeType;
32765
- var normalizeTypes = require_utils2().normalizeTypes;
32766
- var setCharset = require_utils2().setCharset;
33667
+ var normalizeType = require_utils3().normalizeType;
33668
+ var normalizeTypes = require_utils3().normalizeTypes;
33669
+ var setCharset = require_utils3().setCharset;
32767
33670
  var cookie = require_cookie();
32768
33671
  var send = require_send();
32769
33672
  var extname2 = path2.extname;
@@ -33501,13 +34404,15 @@ var require_express2 = __commonJS({
33501
34404
  // src/index.ts
33502
34405
  var index_exports = {};
33503
34406
  __export(index_exports, {
33504
- AutoTrace: () => import_nestjs_common7.AutoTrace,
34407
+ AutoTrace: () => import_nestjs_common8.AutoTrace,
33505
34408
  CanRole: () => import_nestjs_authzpaas2.CanRole,
33506
34409
  CsrfMiddleware: () => CsrfMiddleware,
33507
34410
  CsrfTokenMiddleware: () => CsrfTokenMiddleware,
33508
34411
  DevToolsModule: () => import_nestjs_openapi_devtools2.DevToolsModule,
33509
34412
  DevToolsV2Module: () => import_nestjs_openapi_devtools2.DevToolsV2Module,
33510
34413
  FileService: () => FileService,
34414
+ HtmlHotUpdateModule: () => HtmlHotUpdateModule,
34415
+ HtmlHotUpdateService: () => HtmlHotUpdateService,
33511
34416
  PlatformHttpClientService: () => PlatformHttpClientService,
33512
34417
  PlatformModule: () => PlatformModule,
33513
34418
  StaticModule: () => StaticModule,
@@ -33519,9 +34424,9 @@ __export(index_exports, {
33519
34424
  module.exports = __toCommonJS(index_exports);
33520
34425
 
33521
34426
  // src/modules/platform/module.ts
33522
- var import_common12 = require("@nestjs/common");
34427
+ var import_common15 = require("@nestjs/common");
33523
34428
  var import_core2 = require("@nestjs/core");
33524
- var import_nestjs_common5 = require("@lark-apaas/nestjs-common");
34429
+ var import_nestjs_common6 = require("@lark-apaas/nestjs-common");
33525
34430
  var import_config2 = require("@nestjs/config");
33526
34431
  var import_nestjs_observable = require("@lark-apaas/nestjs-observable");
33527
34432
  var import_axios2 = require("@nestjs/axios");
@@ -33529,7 +34434,7 @@ var import_nestjs_logger2 = require("@lark-apaas/nestjs-logger");
33529
34434
  var import_nestjs_datapaas = require("@lark-apaas/nestjs-datapaas");
33530
34435
  var import_nestjs_authnpaas = require("@lark-apaas/nestjs-authnpaas");
33531
34436
  var import_nestjs_trigger = require("@lark-apaas/nestjs-trigger");
33532
- var import_nestjs_common6 = require("@lark-apaas/nestjs-common");
34437
+ var import_nestjs_common7 = require("@lark-apaas/nestjs-common");
33533
34438
  var import_nestjs_capability = require("@lark-apaas/nestjs-capability");
33534
34439
 
33535
34440
  // src/middlewares/user-context/index.ts
@@ -34916,7 +35821,18 @@ StaticModule = _ts_decorate11([
34916
35821
  })
34917
35822
  ], StaticModule);
34918
35823
 
34919
- // src/modules/platform/module.ts
35824
+ // src/modules/html-hot-update/html-hot-update.module.ts
35825
+ var import_common14 = require("@nestjs/common");
35826
+
35827
+ // src/modules/html-hot-update/html-hot-update.controller.ts
35828
+ var import_common13 = require("@nestjs/common");
35829
+ var import_swagger2 = require("@nestjs/swagger");
35830
+
35831
+ // src/modules/html-hot-update/html-hot-update.service.ts
35832
+ var import_common12 = require("@nestjs/common");
35833
+ var import_node_fs = require("fs");
35834
+ var import_node_path = require("path");
35835
+ var import_nestjs_common5 = require("@lark-apaas/nestjs-common");
34920
35836
  function _ts_decorate12(decorators, target, key, desc) {
34921
35837
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
34922
35838
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -34924,6 +35840,291 @@ function _ts_decorate12(decorators, target, key, desc) {
34924
35840
  return c > 3 && r && Object.defineProperty(target, key, r), r;
34925
35841
  }
34926
35842
  __name(_ts_decorate12, "_ts_decorate");
35843
+ function _ts_metadata8(k, v) {
35844
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
35845
+ }
35846
+ __name(_ts_metadata8, "_ts_metadata");
35847
+ function _ts_param4(paramIndex, decorator) {
35848
+ return function(target, key) {
35849
+ decorator(target, key, paramIndex);
35850
+ };
35851
+ }
35852
+ __name(_ts_param4, "_ts_param");
35853
+ var Mutex = class Mutex2 {
35854
+ static {
35855
+ __name(this, "Mutex");
35856
+ }
35857
+ locked = false;
35858
+ waiting = [];
35859
+ async acquire() {
35860
+ if (!this.locked) {
35861
+ this.locked = true;
35862
+ return;
35863
+ }
35864
+ return new Promise((resolve2) => {
35865
+ this.waiting.push(() => {
35866
+ this.locked = true;
35867
+ resolve2();
35868
+ });
35869
+ });
35870
+ }
35871
+ release() {
35872
+ if (this.waiting.length > 0) {
35873
+ const next = this.waiting.shift();
35874
+ next();
35875
+ } else {
35876
+ this.locked = false;
35877
+ }
35878
+ }
35879
+ };
35880
+ var HtmlHotUpdateService = class _HtmlHotUpdateService {
35881
+ static {
35882
+ __name(this, "HtmlHotUpdateService");
35883
+ }
35884
+ httpClient;
35885
+ logger = new import_common12.Logger(_HtmlHotUpdateService.name);
35886
+ /** 文件锁:冷启动更新和 innerapi 主动更新共用 */
35887
+ fileLock = new Mutex();
35888
+ /** 本地 HTML 文件目录(dist/dist/client,与 build.sh [4/5] 对齐) */
35889
+ localHtmlDir = (0, import_node_path.join)(process.cwd(), "dist", "client");
35890
+ constructor(httpClient) {
35891
+ this.httpClient = httpClient;
35892
+ }
35893
+ /**
35894
+ * 任务一:冷启动时尝试更新 HTML 文件列表
35895
+ *
35896
+ * - 生产环境默认启用(模块仅在生产环境加载)
35897
+ * - 失败则降级,使用部署时打包的 HTML 正常启动
35898
+ * - 超时 3s,避免拉长冷启动耗时
35899
+ */
35900
+ async onModuleInit() {
35901
+ const appID = this.getAppID();
35902
+ if (!appID) {
35903
+ this.logger.warn("Skip HTML hot update on startup: appID not found");
35904
+ return;
35905
+ }
35906
+ try {
35907
+ this.logger.log(`Startup HTML update: appID=${appID}`);
35908
+ const result = await this.updateFromRemote(appID);
35909
+ this.logger.log(`Startup HTML update complete: ${result.updatedFiles.length} updated, ${result.failedFiles.length} failed`);
35910
+ } catch (error) {
35911
+ this.logger.warn(`Startup HTML update failed (degraded to bundled HTML): ${error instanceof Error ? error.message : String(error)}, appID=${appID}`);
35912
+ }
35913
+ }
35914
+ /**
35915
+ * 从远端获取最新 HTML 文件并更新本地
35916
+ *
35917
+ * 调用方:
35918
+ * 1) 冷启动更新(onModuleInit)
35919
+ * 2) innerapi 主动更新(controller 调用)
35920
+ */
35921
+ async updateFromRemote(appID, commitID) {
35922
+ const fileMap = await this.fetchLatestHtmlFiles(appID, commitID);
35923
+ return this.writeHtmlFiles(fileMap);
35924
+ }
35925
+ /**
35926
+ * 将文件内容写入本地 HTML 目录(带文件锁)
35927
+ */
35928
+ async writeHtmlFiles(fileMap) {
35929
+ const result = {
35930
+ updatedFiles: [],
35931
+ failedFiles: []
35932
+ };
35933
+ const entries = Object.entries(fileMap);
35934
+ if (entries.length === 0) {
35935
+ return result;
35936
+ }
35937
+ await this.fileLock.acquire();
35938
+ try {
35939
+ for (const [filePath, content] of entries) {
35940
+ try {
35941
+ const localPath = (0, import_node_path.join)(this.localHtmlDir, filePath);
35942
+ await import_node_fs.promises.mkdir((0, import_node_path.dirname)(localPath), {
35943
+ recursive: true
35944
+ });
35945
+ await import_node_fs.promises.writeFile(localPath, content, "utf-8");
35946
+ result.updatedFiles.push(filePath);
35947
+ } catch (error) {
35948
+ const reason = error instanceof Error ? error.message : String(error);
35949
+ result.failedFiles.push({
35950
+ filePath,
35951
+ reason
35952
+ });
35953
+ this.logger.warn(`Failed to write HTML file ${filePath}: ${reason}`);
35954
+ }
35955
+ }
35956
+ } finally {
35957
+ this.fileLock.release();
35958
+ }
35959
+ return result;
35960
+ }
35961
+ /**
35962
+ * 调用后端 GetLatestArtifactHtmlFiles 接口
35963
+ */
35964
+ async fetchLatestHtmlFiles(appID, commitID) {
35965
+ const url = `/v1/app/${appID}/pipeline/frontend/latest_artifact/html_files`;
35966
+ const body = {};
35967
+ if (commitID) {
35968
+ body.commitID = commitID;
35969
+ }
35970
+ const response = await this.httpClient.post(url, body, {
35971
+ timeout: 3e3
35972
+ });
35973
+ if (!response.ok) {
35974
+ throw new Error(`GetLatestArtifactHtmlFiles failed: ${response.status} ${response.statusText}`);
35975
+ }
35976
+ const data = await response.json();
35977
+ if (data.BaseResp?.StatusCode && data.BaseResp.StatusCode !== 0) {
35978
+ throw new Error(`GetLatestArtifactHtmlFiles error: ${data.BaseResp.StatusMessage}`);
35979
+ }
35980
+ if (!data.fileMap || Object.keys(data.fileMap).length === 0) {
35981
+ throw new Error("GetLatestArtifactHtmlFiles returned empty fileMap");
35982
+ }
35983
+ return data.fileMap;
35984
+ }
35985
+ /**
35986
+ * 从 CLIENT_BASE_PATH 提取 appID
35987
+ * CLIENT_BASE_PATH 格式: /app/{appId}
35988
+ */
35989
+ getAppID() {
35990
+ const basePath = process.env.CLIENT_BASE_PATH || "";
35991
+ const match = basePath.match(/\/app\/([^/]+)/);
35992
+ return match?.[1] ?? "";
35993
+ }
35994
+ };
35995
+ HtmlHotUpdateService = _ts_decorate12([
35996
+ (0, import_common12.Injectable)(),
35997
+ _ts_param4(0, (0, import_common12.Inject)(import_nestjs_common5.PLATFORM_HTTP_CLIENT)),
35998
+ _ts_metadata8("design:type", Function),
35999
+ _ts_metadata8("design:paramtypes", [
36000
+ typeof PlatformHttpClient === "undefined" ? Object : PlatformHttpClient
36001
+ ])
36002
+ ], HtmlHotUpdateService);
36003
+
36004
+ // src/modules/html-hot-update/html-hot-update.controller.ts
36005
+ function _ts_decorate13(decorators, target, key, desc) {
36006
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
36007
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
36008
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
36009
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
36010
+ }
36011
+ __name(_ts_decorate13, "_ts_decorate");
36012
+ function _ts_metadata9(k, v) {
36013
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
36014
+ }
36015
+ __name(_ts_metadata9, "_ts_metadata");
36016
+ function _ts_param5(paramIndex, decorator) {
36017
+ return function(target, key) {
36018
+ decorator(target, key, paramIndex);
36019
+ };
36020
+ }
36021
+ __name(_ts_param5, "_ts_param");
36022
+ var UpdateHtmlFilesDto = class UpdateHtmlFilesDto2 {
36023
+ static {
36024
+ __name(this, "UpdateHtmlFilesDto");
36025
+ }
36026
+ commitID;
36027
+ appID;
36028
+ };
36029
+ var HtmlHotUpdateController = class {
36030
+ static {
36031
+ __name(this, "HtmlHotUpdateController");
36032
+ }
36033
+ htmlHotUpdateService;
36034
+ constructor(htmlHotUpdateService) {
36035
+ this.htmlHotUpdateService = htmlHotUpdateService;
36036
+ }
36037
+ /**
36038
+ * POST /__innerapi__/update_html_files
36039
+ *
36040
+ * 请求体: { commitID: string, appID: string }
36041
+ * 响应:
36042
+ * 成功: { code: 0, msg: "success" }
36043
+ * 失败: { code: -1, msg: "update html failed: <error>" }
36044
+ */
36045
+ async updateHtmlFiles(body) {
36046
+ const { commitID, appID } = body;
36047
+ if (!commitID || !appID) {
36048
+ return {
36049
+ code: -1,
36050
+ msg: "commitID and appID are required"
36051
+ };
36052
+ }
36053
+ try {
36054
+ const result = await this.htmlHotUpdateService.updateFromRemote(appID, commitID);
36055
+ if (result.updatedFiles.length === 0 && result.failedFiles.length > 0) {
36056
+ return {
36057
+ code: -1,
36058
+ msg: `update html failed: all ${result.failedFiles.length} files failed to write`
36059
+ };
36060
+ }
36061
+ return {
36062
+ code: 0,
36063
+ msg: "success"
36064
+ };
36065
+ } catch (error) {
36066
+ const errorMsg = error instanceof Error ? error.message : String(error);
36067
+ return {
36068
+ code: -1,
36069
+ msg: `update html failed: ${errorMsg}`
36070
+ };
36071
+ }
36072
+ }
36073
+ };
36074
+ _ts_decorate13([
36075
+ (0, import_common13.Post)("update_html_files"),
36076
+ (0, import_common13.HttpCode)(import_common13.HttpStatus.OK),
36077
+ _ts_param5(0, (0, import_common13.Body)()),
36078
+ _ts_metadata9("design:type", Function),
36079
+ _ts_metadata9("design:paramtypes", [
36080
+ typeof UpdateHtmlFilesDto === "undefined" ? Object : UpdateHtmlFilesDto
36081
+ ]),
36082
+ _ts_metadata9("design:returntype", Promise)
36083
+ ], HtmlHotUpdateController.prototype, "updateHtmlFiles", null);
36084
+ HtmlHotUpdateController = _ts_decorate13([
36085
+ (0, import_swagger2.ApiExcludeController)(),
36086
+ (0, import_common13.Controller)("__innerapi__"),
36087
+ _ts_metadata9("design:type", Function),
36088
+ _ts_metadata9("design:paramtypes", [
36089
+ typeof HtmlHotUpdateService === "undefined" ? Object : HtmlHotUpdateService
36090
+ ])
36091
+ ], HtmlHotUpdateController);
36092
+
36093
+ // src/modules/html-hot-update/html-hot-update.module.ts
36094
+ function _ts_decorate14(decorators, target, key, desc) {
36095
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
36096
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
36097
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
36098
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
36099
+ }
36100
+ __name(_ts_decorate14, "_ts_decorate");
36101
+ var HtmlHotUpdateModule = class {
36102
+ static {
36103
+ __name(this, "HtmlHotUpdateModule");
36104
+ }
36105
+ };
36106
+ HtmlHotUpdateModule = _ts_decorate14([
36107
+ (0, import_common14.Module)({
36108
+ controllers: [
36109
+ HtmlHotUpdateController
36110
+ ],
36111
+ providers: [
36112
+ HtmlHotUpdateService
36113
+ ],
36114
+ exports: [
36115
+ HtmlHotUpdateService
36116
+ ]
36117
+ })
36118
+ ], HtmlHotUpdateModule);
36119
+
36120
+ // src/modules/platform/module.ts
36121
+ function _ts_decorate15(decorators, target, key, desc) {
36122
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
36123
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
36124
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
36125
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
36126
+ }
36127
+ __name(_ts_decorate15, "_ts_decorate");
34927
36128
  var PLATFORM_MODULE_OPTIONS = /* @__PURE__ */ Symbol("PLATFORM_MODULE_OPTIONS");
34928
36129
  var PlatformModule = class _PlatformModule {
34929
36130
  static {
@@ -34945,7 +36146,7 @@ var PlatformModule = class _PlatformModule {
34945
36146
  app_config_default
34946
36147
  ]
34947
36148
  }),
34948
- import_nestjs_common5.CommonModule,
36149
+ import_nestjs_common6.CommonModule,
34949
36150
  import_nestjs_observable.NestjsObservableModule,
34950
36151
  import_nestjs_logger2.LoggerModule,
34951
36152
  import_axios2.HttpModule.register({
@@ -34994,6 +36195,11 @@ var PlatformModule = class _PlatformModule {
34994
36195
  // 开发环境由 Vite/Rspack dev server 的中间件处理 /static/* 请求
34995
36196
  ...process.env.NODE_ENV === "development" ? [] : [
34996
36197
  StaticModule
36198
+ ],
36199
+ // HTML 热更新模块(仅生产环境启用)
36200
+ // 提供 innerapi 供 tce 服务触发 HTML 热更新,冷启动时也会尝试拉取最新 HTML
36201
+ ...process.env.NODE_ENV === "development" ? [] : [
36202
+ HtmlHotUpdateModule
34997
36203
  ]
34998
36204
  ],
34999
36205
  providers: [
@@ -35003,7 +36209,7 @@ var PlatformModule = class _PlatformModule {
35003
36209
  },
35004
36210
  {
35005
36211
  provide: import_core2.APP_PIPE,
35006
- useValue: new import_common12.ValidationPipe({
36212
+ useValue: new import_common15.ValidationPipe({
35007
36213
  transform: true,
35008
36214
  transformOptions: {
35009
36215
  enableImplicitConversion: true
@@ -35011,19 +36217,19 @@ var PlatformModule = class _PlatformModule {
35011
36217
  })
35012
36218
  },
35013
36219
  {
35014
- provide: import_nestjs_common5.OBSERVABLE_SERVICE,
36220
+ provide: import_nestjs_common6.OBSERVABLE_SERVICE,
35015
36221
  useClass: import_nestjs_observable.Observable
35016
36222
  },
35017
36223
  PlatformHttpClientService,
35018
36224
  {
35019
- provide: import_nestjs_common6.PLATFORM_HTTP_CLIENT,
36225
+ provide: import_nestjs_common7.PLATFORM_HTTP_CLIENT,
35020
36226
  useFactory: /* @__PURE__ */ __name((svc) => svc.instance, "useFactory"),
35021
36227
  inject: [
35022
36228
  PlatformHttpClientService
35023
36229
  ]
35024
36230
  },
35025
36231
  {
35026
- provide: import_nestjs_common5.HTTP_CLIENT_FACTORY,
36232
+ provide: import_nestjs_common6.HTTP_CLIENT_FACTORY,
35027
36233
  useFactory: /* @__PURE__ */ __name((svc) => ({
35028
36234
  create: /* @__PURE__ */ __name((options2) => svc.createWithGlobalInterceptors(options2), "create")
35029
36235
  }), "useFactory"),
@@ -35041,10 +36247,10 @@ var PlatformModule = class _PlatformModule {
35041
36247
  exports: [
35042
36248
  import_config2.ConfigModule,
35043
36249
  import_nestjs_logger2.LoggerModule,
35044
- import_nestjs_common5.CommonModule,
35045
- import_nestjs_common5.OBSERVABLE_SERVICE,
35046
- import_nestjs_common6.PLATFORM_HTTP_CLIENT,
35047
- import_nestjs_common5.HTTP_CLIENT_FACTORY,
36250
+ import_nestjs_common6.CommonModule,
36251
+ import_nestjs_common6.OBSERVABLE_SERVICE,
36252
+ import_nestjs_common7.PLATFORM_HTTP_CLIENT,
36253
+ import_nestjs_common6.HTTP_CLIENT_FACTORY,
35048
36254
  PlatformHttpClientService,
35049
36255
  import_nestjs_capability.CapabilityModule,
35050
36256
  FileService
@@ -35076,9 +36282,9 @@ var PlatformModule = class _PlatformModule {
35076
36282
  }
35077
36283
  }
35078
36284
  };
35079
- PlatformModule = _ts_decorate12([
35080
- (0, import_common12.Global)(),
35081
- (0, import_common12.Module)({})
36285
+ PlatformModule = _ts_decorate15([
36286
+ (0, import_common15.Global)(),
36287
+ (0, import_common15.Module)({})
35082
36288
  ], PlatformModule);
35083
36289
 
35084
36290
  // src/setup.ts
@@ -35166,7 +36372,7 @@ __reExport(index_exports, require("@lark-apaas/nestjs-datapaas"), module.exports
35166
36372
  __reExport(index_exports, require("@lark-apaas/nestjs-observable"), module.exports);
35167
36373
  __reExport(index_exports, require("@lark-apaas/nestjs-trigger"), module.exports);
35168
36374
  __reExport(index_exports, require("@lark-apaas/file-service"), module.exports);
35169
- var import_nestjs_common7 = require("@lark-apaas/nestjs-common");
36375
+ var import_nestjs_common8 = require("@lark-apaas/nestjs-common");
35170
36376
  var import_nestjs_authzpaas2 = require("@lark-apaas/nestjs-authzpaas");
35171
36377
  // Annotate the CommonJS export names for ESM import in node:
35172
36378
  0 && (module.exports = {
@@ -35177,6 +36383,8 @@ var import_nestjs_authzpaas2 = require("@lark-apaas/nestjs-authzpaas");
35177
36383
  DevToolsModule,
35178
36384
  DevToolsV2Module,
35179
36385
  FileService,
36386
+ HtmlHotUpdateModule,
36387
+ HtmlHotUpdateService,
35180
36388
  PlatformHttpClientService,
35181
36389
  PlatformModule,
35182
36390
  StaticModule,