@abtnode/core 1.17.3-beta-20251127-063055-94957209 → 1.17.3

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.
@@ -5499,457 +5499,11 @@ SafeBuffer.allocUnsafeSlow = function (size) {
5499
5499
 
5500
5500
  /***/ }),
5501
5501
 
5502
- /***/ 4953:
5503
- /***/ ((module) => {
5504
-
5505
- "use strict";
5506
-
5507
-
5508
- module.exports = {
5509
- "aliceblue": [240, 248, 255],
5510
- "antiquewhite": [250, 235, 215],
5511
- "aqua": [0, 255, 255],
5512
- "aquamarine": [127, 255, 212],
5513
- "azure": [240, 255, 255],
5514
- "beige": [245, 245, 220],
5515
- "bisque": [255, 228, 196],
5516
- "black": [0, 0, 0],
5517
- "blanchedalmond": [255, 235, 205],
5518
- "blue": [0, 0, 255],
5519
- "blueviolet": [138, 43, 226],
5520
- "brown": [165, 42, 42],
5521
- "burlywood": [222, 184, 135],
5522
- "cadetblue": [95, 158, 160],
5523
- "chartreuse": [127, 255, 0],
5524
- "chocolate": [210, 105, 30],
5525
- "coral": [255, 127, 80],
5526
- "cornflowerblue": [100, 149, 237],
5527
- "cornsilk": [255, 248, 220],
5528
- "crimson": [220, 20, 60],
5529
- "cyan": [0, 255, 255],
5530
- "darkblue": [0, 0, 139],
5531
- "darkcyan": [0, 139, 139],
5532
- "darkgoldenrod": [184, 134, 11],
5533
- "darkgray": [169, 169, 169],
5534
- "darkgreen": [0, 100, 0],
5535
- "darkgrey": [169, 169, 169],
5536
- "darkkhaki": [189, 183, 107],
5537
- "darkmagenta": [139, 0, 139],
5538
- "darkolivegreen": [85, 107, 47],
5539
- "darkorange": [255, 140, 0],
5540
- "darkorchid": [153, 50, 204],
5541
- "darkred": [139, 0, 0],
5542
- "darksalmon": [233, 150, 122],
5543
- "darkseagreen": [143, 188, 143],
5544
- "darkslateblue": [72, 61, 139],
5545
- "darkslategray": [47, 79, 79],
5546
- "darkslategrey": [47, 79, 79],
5547
- "darkturquoise": [0, 206, 209],
5548
- "darkviolet": [148, 0, 211],
5549
- "deeppink": [255, 20, 147],
5550
- "deepskyblue": [0, 191, 255],
5551
- "dimgray": [105, 105, 105],
5552
- "dimgrey": [105, 105, 105],
5553
- "dodgerblue": [30, 144, 255],
5554
- "firebrick": [178, 34, 34],
5555
- "floralwhite": [255, 250, 240],
5556
- "forestgreen": [34, 139, 34],
5557
- "fuchsia": [255, 0, 255],
5558
- "gainsboro": [220, 220, 220],
5559
- "ghostwhite": [248, 248, 255],
5560
- "gold": [255, 215, 0],
5561
- "goldenrod": [218, 165, 32],
5562
- "gray": [128, 128, 128],
5563
- "green": [0, 128, 0],
5564
- "greenyellow": [173, 255, 47],
5565
- "grey": [128, 128, 128],
5566
- "honeydew": [240, 255, 240],
5567
- "hotpink": [255, 105, 180],
5568
- "indianred": [205, 92, 92],
5569
- "indigo": [75, 0, 130],
5570
- "ivory": [255, 255, 240],
5571
- "khaki": [240, 230, 140],
5572
- "lavender": [230, 230, 250],
5573
- "lavenderblush": [255, 240, 245],
5574
- "lawngreen": [124, 252, 0],
5575
- "lemonchiffon": [255, 250, 205],
5576
- "lightblue": [173, 216, 230],
5577
- "lightcoral": [240, 128, 128],
5578
- "lightcyan": [224, 255, 255],
5579
- "lightgoldenrodyellow": [250, 250, 210],
5580
- "lightgray": [211, 211, 211],
5581
- "lightgreen": [144, 238, 144],
5582
- "lightgrey": [211, 211, 211],
5583
- "lightpink": [255, 182, 193],
5584
- "lightsalmon": [255, 160, 122],
5585
- "lightseagreen": [32, 178, 170],
5586
- "lightskyblue": [135, 206, 250],
5587
- "lightslategray": [119, 136, 153],
5588
- "lightslategrey": [119, 136, 153],
5589
- "lightsteelblue": [176, 196, 222],
5590
- "lightyellow": [255, 255, 224],
5591
- "lime": [0, 255, 0],
5592
- "limegreen": [50, 205, 50],
5593
- "linen": [250, 240, 230],
5594
- "magenta": [255, 0, 255],
5595
- "maroon": [128, 0, 0],
5596
- "mediumaquamarine": [102, 205, 170],
5597
- "mediumblue": [0, 0, 205],
5598
- "mediumorchid": [186, 85, 211],
5599
- "mediumpurple": [147, 112, 219],
5600
- "mediumseagreen": [60, 179, 113],
5601
- "mediumslateblue": [123, 104, 238],
5602
- "mediumspringgreen": [0, 250, 154],
5603
- "mediumturquoise": [72, 209, 204],
5604
- "mediumvioletred": [199, 21, 133],
5605
- "midnightblue": [25, 25, 112],
5606
- "mintcream": [245, 255, 250],
5607
- "mistyrose": [255, 228, 225],
5608
- "moccasin": [255, 228, 181],
5609
- "navajowhite": [255, 222, 173],
5610
- "navy": [0, 0, 128],
5611
- "oldlace": [253, 245, 230],
5612
- "olive": [128, 128, 0],
5613
- "olivedrab": [107, 142, 35],
5614
- "orange": [255, 165, 0],
5615
- "orangered": [255, 69, 0],
5616
- "orchid": [218, 112, 214],
5617
- "palegoldenrod": [238, 232, 170],
5618
- "palegreen": [152, 251, 152],
5619
- "paleturquoise": [175, 238, 238],
5620
- "palevioletred": [219, 112, 147],
5621
- "papayawhip": [255, 239, 213],
5622
- "peachpuff": [255, 218, 185],
5623
- "peru": [205, 133, 63],
5624
- "pink": [255, 192, 203],
5625
- "plum": [221, 160, 221],
5626
- "powderblue": [176, 224, 230],
5627
- "purple": [128, 0, 128],
5628
- "rebeccapurple": [102, 51, 153],
5629
- "red": [255, 0, 0],
5630
- "rosybrown": [188, 143, 143],
5631
- "royalblue": [65, 105, 225],
5632
- "saddlebrown": [139, 69, 19],
5633
- "salmon": [250, 128, 114],
5634
- "sandybrown": [244, 164, 96],
5635
- "seagreen": [46, 139, 87],
5636
- "seashell": [255, 245, 238],
5637
- "sienna": [160, 82, 45],
5638
- "silver": [192, 192, 192],
5639
- "skyblue": [135, 206, 235],
5640
- "slateblue": [106, 90, 205],
5641
- "slategray": [112, 128, 144],
5642
- "slategrey": [112, 128, 144],
5643
- "snow": [255, 250, 250],
5644
- "springgreen": [0, 255, 127],
5645
- "steelblue": [70, 130, 180],
5646
- "tan": [210, 180, 140],
5647
- "teal": [0, 128, 128],
5648
- "thistle": [216, 191, 216],
5649
- "tomato": [255, 99, 71],
5650
- "turquoise": [64, 224, 208],
5651
- "violet": [238, 130, 238],
5652
- "wheat": [245, 222, 179],
5653
- "white": [255, 255, 255],
5654
- "whitesmoke": [245, 245, 245],
5655
- "yellow": [255, 255, 0],
5656
- "yellowgreen": [154, 205, 50]
5657
- };
5658
-
5659
-
5660
- /***/ }),
5661
-
5662
- /***/ 9407:
5663
- /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
5664
-
5665
- /* MIT license */
5666
- var colorNames = __nccwpck_require__(4953);
5667
- var swizzle = __nccwpck_require__(4421);
5668
- var hasOwnProperty = Object.hasOwnProperty;
5669
-
5670
- var reverseNames = Object.create(null);
5671
-
5672
- // create a list of reverse color names
5673
- for (var name in colorNames) {
5674
- if (hasOwnProperty.call(colorNames, name)) {
5675
- reverseNames[colorNames[name]] = name;
5676
- }
5677
- }
5678
-
5679
- var cs = module.exports = {
5680
- to: {},
5681
- get: {}
5682
- };
5683
-
5684
- cs.get = function (string) {
5685
- var prefix = string.substring(0, 3).toLowerCase();
5686
- var val;
5687
- var model;
5688
- switch (prefix) {
5689
- case 'hsl':
5690
- val = cs.get.hsl(string);
5691
- model = 'hsl';
5692
- break;
5693
- case 'hwb':
5694
- val = cs.get.hwb(string);
5695
- model = 'hwb';
5696
- break;
5697
- default:
5698
- val = cs.get.rgb(string);
5699
- model = 'rgb';
5700
- break;
5701
- }
5702
-
5703
- if (!val) {
5704
- return null;
5705
- }
5706
-
5707
- return {model: model, value: val};
5708
- };
5709
-
5710
- cs.get.rgb = function (string) {
5711
- if (!string) {
5712
- return null;
5713
- }
5714
-
5715
- var abbr = /^#([a-f0-9]{3,4})$/i;
5716
- var hex = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i;
5717
- var rgba = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
5718
- var per = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
5719
- var keyword = /^(\w+)$/;
5720
-
5721
- var rgb = [0, 0, 0, 1];
5722
- var match;
5723
- var i;
5724
- var hexAlpha;
5725
-
5726
- if (match = string.match(hex)) {
5727
- hexAlpha = match[2];
5728
- match = match[1];
5729
-
5730
- for (i = 0; i < 3; i++) {
5731
- // https://jsperf.com/slice-vs-substr-vs-substring-methods-long-string/19
5732
- var i2 = i * 2;
5733
- rgb[i] = parseInt(match.slice(i2, i2 + 2), 16);
5734
- }
5735
-
5736
- if (hexAlpha) {
5737
- rgb[3] = parseInt(hexAlpha, 16) / 255;
5738
- }
5739
- } else if (match = string.match(abbr)) {
5740
- match = match[1];
5741
- hexAlpha = match[3];
5742
-
5743
- for (i = 0; i < 3; i++) {
5744
- rgb[i] = parseInt(match[i] + match[i], 16);
5745
- }
5746
-
5747
- if (hexAlpha) {
5748
- rgb[3] = parseInt(hexAlpha + hexAlpha, 16) / 255;
5749
- }
5750
- } else if (match = string.match(rgba)) {
5751
- for (i = 0; i < 3; i++) {
5752
- rgb[i] = parseInt(match[i + 1], 0);
5753
- }
5754
-
5755
- if (match[4]) {
5756
- if (match[5]) {
5757
- rgb[3] = parseFloat(match[4]) * 0.01;
5758
- } else {
5759
- rgb[3] = parseFloat(match[4]);
5760
- }
5761
- }
5762
- } else if (match = string.match(per)) {
5763
- for (i = 0; i < 3; i++) {
5764
- rgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55);
5765
- }
5766
-
5767
- if (match[4]) {
5768
- if (match[5]) {
5769
- rgb[3] = parseFloat(match[4]) * 0.01;
5770
- } else {
5771
- rgb[3] = parseFloat(match[4]);
5772
- }
5773
- }
5774
- } else if (match = string.match(keyword)) {
5775
- if (match[1] === 'transparent') {
5776
- return [0, 0, 0, 0];
5777
- }
5778
-
5779
- if (!hasOwnProperty.call(colorNames, match[1])) {
5780
- return null;
5781
- }
5782
-
5783
- rgb = colorNames[match[1]];
5784
- rgb[3] = 1;
5785
-
5786
- return rgb;
5787
- } else {
5788
- return null;
5789
- }
5790
-
5791
- for (i = 0; i < 3; i++) {
5792
- rgb[i] = clamp(rgb[i], 0, 255);
5793
- }
5794
- rgb[3] = clamp(rgb[3], 0, 1);
5795
-
5796
- return rgb;
5797
- };
5798
-
5799
- cs.get.hsl = function (string) {
5800
- if (!string) {
5801
- return null;
5802
- }
5803
-
5804
- var hsl = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/;
5805
- var match = string.match(hsl);
5806
-
5807
- if (match) {
5808
- var alpha = parseFloat(match[4]);
5809
- var h = ((parseFloat(match[1]) % 360) + 360) % 360;
5810
- var s = clamp(parseFloat(match[2]), 0, 100);
5811
- var l = clamp(parseFloat(match[3]), 0, 100);
5812
- var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
5813
-
5814
- return [h, s, l, a];
5815
- }
5816
-
5817
- return null;
5818
- };
5819
-
5820
- cs.get.hwb = function (string) {
5821
- if (!string) {
5822
- return null;
5823
- }
5824
-
5825
- var hwb = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/;
5826
- var match = string.match(hwb);
5827
-
5828
- if (match) {
5829
- var alpha = parseFloat(match[4]);
5830
- var h = ((parseFloat(match[1]) % 360) + 360) % 360;
5831
- var w = clamp(parseFloat(match[2]), 0, 100);
5832
- var b = clamp(parseFloat(match[3]), 0, 100);
5833
- var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
5834
- return [h, w, b, a];
5835
- }
5836
-
5837
- return null;
5838
- };
5839
-
5840
- cs.to.hex = function () {
5841
- var rgba = swizzle(arguments);
5842
-
5843
- return (
5844
- '#' +
5845
- hexDouble(rgba[0]) +
5846
- hexDouble(rgba[1]) +
5847
- hexDouble(rgba[2]) +
5848
- (rgba[3] < 1
5849
- ? (hexDouble(Math.round(rgba[3] * 255)))
5850
- : '')
5851
- );
5852
- };
5853
-
5854
- cs.to.rgb = function () {
5855
- var rgba = swizzle(arguments);
5856
-
5857
- return rgba.length < 4 || rgba[3] === 1
5858
- ? 'rgb(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ')'
5859
- : 'rgba(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ', ' + rgba[3] + ')';
5860
- };
5861
-
5862
- cs.to.rgb.percent = function () {
5863
- var rgba = swizzle(arguments);
5864
-
5865
- var r = Math.round(rgba[0] / 255 * 100);
5866
- var g = Math.round(rgba[1] / 255 * 100);
5867
- var b = Math.round(rgba[2] / 255 * 100);
5868
-
5869
- return rgba.length < 4 || rgba[3] === 1
5870
- ? 'rgb(' + r + '%, ' + g + '%, ' + b + '%)'
5871
- : 'rgba(' + r + '%, ' + g + '%, ' + b + '%, ' + rgba[3] + ')';
5872
- };
5873
-
5874
- cs.to.hsl = function () {
5875
- var hsla = swizzle(arguments);
5876
- return hsla.length < 4 || hsla[3] === 1
5877
- ? 'hsl(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%)'
5878
- : 'hsla(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%, ' + hsla[3] + ')';
5879
- };
5880
-
5881
- // hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax
5882
- // (hwb have alpha optional & 1 is default value)
5883
- cs.to.hwb = function () {
5884
- var hwba = swizzle(arguments);
5885
-
5886
- var a = '';
5887
- if (hwba.length >= 4 && hwba[3] !== 1) {
5888
- a = ', ' + hwba[3];
5889
- }
5890
-
5891
- return 'hwb(' + hwba[0] + ', ' + hwba[1] + '%, ' + hwba[2] + '%' + a + ')';
5892
- };
5893
-
5894
- cs.to.keyword = function (rgb) {
5895
- return reverseNames[rgb.slice(0, 3)];
5896
- };
5897
-
5898
- // helpers
5899
- function clamp(num, min, max) {
5900
- return Math.min(Math.max(min, num), max);
5901
- }
5902
-
5903
- function hexDouble(num) {
5904
- var str = Math.round(num).toString(16).toUpperCase();
5905
- return (str.length < 2) ? '0' + str : str;
5906
- }
5907
-
5908
-
5909
- /***/ }),
5910
-
5911
- /***/ 8107:
5912
- /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
5913
-
5914
- "use strict";
5915
-
5916
-
5917
- var color = __nccwpck_require__(1696)
5918
- , hex = __nccwpck_require__(5143);
5919
-
5920
- /**
5921
- * Generate a color for a given name. But be reasonably smart about it by
5922
- * understanding name spaces and coloring each namespace a bit lighter so they
5923
- * still have the same base color as the root.
5924
- *
5925
- * @param {string} namespace The namespace
5926
- * @param {string} [delimiter] The delimiter
5927
- * @returns {string} color
5928
- */
5929
- module.exports = function colorspace(namespace, delimiter) {
5930
- var split = namespace.split(delimiter || ':');
5931
- var base = hex(split[0]);
5932
-
5933
- if (!split.length) return base;
5934
-
5935
- for (var i = 0, l = split.length - 1; i < l; i++) {
5936
- base = color(base)
5937
- .mix(color(hex(split[i + 1])))
5938
- .saturate(1)
5939
- .hex();
5940
- }
5941
-
5942
- return base;
5943
- };
5944
-
5945
-
5946
- /***/ }),
5947
-
5948
- /***/ 4618:
5502
+ /***/ 6872:
5949
5503
  /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
5950
5504
 
5951
5505
  /* MIT license */
5952
- var cssKeywords = __nccwpck_require__(8402);
5506
+ var cssKeywords = __nccwpck_require__(7888);
5953
5507
 
5954
5508
  // NOTE: conversions should only return primitive values (i.e. arrays, or
5955
5509
  // values that give correct `typeof` results).
@@ -6820,11 +6374,11 @@ convert.rgb.gray = function (rgb) {
6820
6374
 
6821
6375
  /***/ }),
6822
6376
 
6823
- /***/ 192:
6377
+ /***/ 4185:
6824
6378
  /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
6825
6379
 
6826
- var conversions = __nccwpck_require__(4618);
6827
- var route = __nccwpck_require__(209);
6380
+ var conversions = __nccwpck_require__(6872);
6381
+ var route = __nccwpck_require__(4200);
6828
6382
 
6829
6383
  var convert = {};
6830
6384
 
@@ -6905,10 +6459,170 @@ module.exports = convert;
6905
6459
 
6906
6460
  /***/ }),
6907
6461
 
6908
- /***/ 209:
6462
+ /***/ 7888:
6463
+ /***/ ((module) => {
6464
+
6465
+ "use strict";
6466
+
6467
+
6468
+ module.exports = {
6469
+ "aliceblue": [240, 248, 255],
6470
+ "antiquewhite": [250, 235, 215],
6471
+ "aqua": [0, 255, 255],
6472
+ "aquamarine": [127, 255, 212],
6473
+ "azure": [240, 255, 255],
6474
+ "beige": [245, 245, 220],
6475
+ "bisque": [255, 228, 196],
6476
+ "black": [0, 0, 0],
6477
+ "blanchedalmond": [255, 235, 205],
6478
+ "blue": [0, 0, 255],
6479
+ "blueviolet": [138, 43, 226],
6480
+ "brown": [165, 42, 42],
6481
+ "burlywood": [222, 184, 135],
6482
+ "cadetblue": [95, 158, 160],
6483
+ "chartreuse": [127, 255, 0],
6484
+ "chocolate": [210, 105, 30],
6485
+ "coral": [255, 127, 80],
6486
+ "cornflowerblue": [100, 149, 237],
6487
+ "cornsilk": [255, 248, 220],
6488
+ "crimson": [220, 20, 60],
6489
+ "cyan": [0, 255, 255],
6490
+ "darkblue": [0, 0, 139],
6491
+ "darkcyan": [0, 139, 139],
6492
+ "darkgoldenrod": [184, 134, 11],
6493
+ "darkgray": [169, 169, 169],
6494
+ "darkgreen": [0, 100, 0],
6495
+ "darkgrey": [169, 169, 169],
6496
+ "darkkhaki": [189, 183, 107],
6497
+ "darkmagenta": [139, 0, 139],
6498
+ "darkolivegreen": [85, 107, 47],
6499
+ "darkorange": [255, 140, 0],
6500
+ "darkorchid": [153, 50, 204],
6501
+ "darkred": [139, 0, 0],
6502
+ "darksalmon": [233, 150, 122],
6503
+ "darkseagreen": [143, 188, 143],
6504
+ "darkslateblue": [72, 61, 139],
6505
+ "darkslategray": [47, 79, 79],
6506
+ "darkslategrey": [47, 79, 79],
6507
+ "darkturquoise": [0, 206, 209],
6508
+ "darkviolet": [148, 0, 211],
6509
+ "deeppink": [255, 20, 147],
6510
+ "deepskyblue": [0, 191, 255],
6511
+ "dimgray": [105, 105, 105],
6512
+ "dimgrey": [105, 105, 105],
6513
+ "dodgerblue": [30, 144, 255],
6514
+ "firebrick": [178, 34, 34],
6515
+ "floralwhite": [255, 250, 240],
6516
+ "forestgreen": [34, 139, 34],
6517
+ "fuchsia": [255, 0, 255],
6518
+ "gainsboro": [220, 220, 220],
6519
+ "ghostwhite": [248, 248, 255],
6520
+ "gold": [255, 215, 0],
6521
+ "goldenrod": [218, 165, 32],
6522
+ "gray": [128, 128, 128],
6523
+ "green": [0, 128, 0],
6524
+ "greenyellow": [173, 255, 47],
6525
+ "grey": [128, 128, 128],
6526
+ "honeydew": [240, 255, 240],
6527
+ "hotpink": [255, 105, 180],
6528
+ "indianred": [205, 92, 92],
6529
+ "indigo": [75, 0, 130],
6530
+ "ivory": [255, 255, 240],
6531
+ "khaki": [240, 230, 140],
6532
+ "lavender": [230, 230, 250],
6533
+ "lavenderblush": [255, 240, 245],
6534
+ "lawngreen": [124, 252, 0],
6535
+ "lemonchiffon": [255, 250, 205],
6536
+ "lightblue": [173, 216, 230],
6537
+ "lightcoral": [240, 128, 128],
6538
+ "lightcyan": [224, 255, 255],
6539
+ "lightgoldenrodyellow": [250, 250, 210],
6540
+ "lightgray": [211, 211, 211],
6541
+ "lightgreen": [144, 238, 144],
6542
+ "lightgrey": [211, 211, 211],
6543
+ "lightpink": [255, 182, 193],
6544
+ "lightsalmon": [255, 160, 122],
6545
+ "lightseagreen": [32, 178, 170],
6546
+ "lightskyblue": [135, 206, 250],
6547
+ "lightslategray": [119, 136, 153],
6548
+ "lightslategrey": [119, 136, 153],
6549
+ "lightsteelblue": [176, 196, 222],
6550
+ "lightyellow": [255, 255, 224],
6551
+ "lime": [0, 255, 0],
6552
+ "limegreen": [50, 205, 50],
6553
+ "linen": [250, 240, 230],
6554
+ "magenta": [255, 0, 255],
6555
+ "maroon": [128, 0, 0],
6556
+ "mediumaquamarine": [102, 205, 170],
6557
+ "mediumblue": [0, 0, 205],
6558
+ "mediumorchid": [186, 85, 211],
6559
+ "mediumpurple": [147, 112, 219],
6560
+ "mediumseagreen": [60, 179, 113],
6561
+ "mediumslateblue": [123, 104, 238],
6562
+ "mediumspringgreen": [0, 250, 154],
6563
+ "mediumturquoise": [72, 209, 204],
6564
+ "mediumvioletred": [199, 21, 133],
6565
+ "midnightblue": [25, 25, 112],
6566
+ "mintcream": [245, 255, 250],
6567
+ "mistyrose": [255, 228, 225],
6568
+ "moccasin": [255, 228, 181],
6569
+ "navajowhite": [255, 222, 173],
6570
+ "navy": [0, 0, 128],
6571
+ "oldlace": [253, 245, 230],
6572
+ "olive": [128, 128, 0],
6573
+ "olivedrab": [107, 142, 35],
6574
+ "orange": [255, 165, 0],
6575
+ "orangered": [255, 69, 0],
6576
+ "orchid": [218, 112, 214],
6577
+ "palegoldenrod": [238, 232, 170],
6578
+ "palegreen": [152, 251, 152],
6579
+ "paleturquoise": [175, 238, 238],
6580
+ "palevioletred": [219, 112, 147],
6581
+ "papayawhip": [255, 239, 213],
6582
+ "peachpuff": [255, 218, 185],
6583
+ "peru": [205, 133, 63],
6584
+ "pink": [255, 192, 203],
6585
+ "plum": [221, 160, 221],
6586
+ "powderblue": [176, 224, 230],
6587
+ "purple": [128, 0, 128],
6588
+ "rebeccapurple": [102, 51, 153],
6589
+ "red": [255, 0, 0],
6590
+ "rosybrown": [188, 143, 143],
6591
+ "royalblue": [65, 105, 225],
6592
+ "saddlebrown": [139, 69, 19],
6593
+ "salmon": [250, 128, 114],
6594
+ "sandybrown": [244, 164, 96],
6595
+ "seagreen": [46, 139, 87],
6596
+ "seashell": [255, 245, 238],
6597
+ "sienna": [160, 82, 45],
6598
+ "silver": [192, 192, 192],
6599
+ "skyblue": [135, 206, 235],
6600
+ "slateblue": [106, 90, 205],
6601
+ "slategray": [112, 128, 144],
6602
+ "slategrey": [112, 128, 144],
6603
+ "snow": [255, 250, 250],
6604
+ "springgreen": [0, 255, 127],
6605
+ "steelblue": [70, 130, 180],
6606
+ "tan": [210, 180, 140],
6607
+ "teal": [0, 128, 128],
6608
+ "thistle": [216, 191, 216],
6609
+ "tomato": [255, 99, 71],
6610
+ "turquoise": [64, 224, 208],
6611
+ "violet": [238, 130, 238],
6612
+ "wheat": [245, 222, 179],
6613
+ "white": [255, 255, 255],
6614
+ "whitesmoke": [245, 245, 245],
6615
+ "yellow": [255, 255, 0],
6616
+ "yellowgreen": [154, 205, 50]
6617
+ };
6618
+
6619
+
6620
+ /***/ }),
6621
+
6622
+ /***/ 4200:
6909
6623
  /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
6910
6624
 
6911
- var conversions = __nccwpck_require__(4618);
6625
+ var conversions = __nccwpck_require__(6872);
6912
6626
 
6913
6627
  /*
6914
6628
  this function routes a model to all other models.
@@ -7009,7 +6723,7 @@ module.exports = function (fromModel) {
7009
6723
 
7010
6724
  /***/ }),
7011
6725
 
7012
- /***/ 8402:
6726
+ /***/ 4953:
7013
6727
  /***/ ((module) => {
7014
6728
 
7015
6729
  "use strict";
@@ -7167,6 +6881,292 @@ module.exports = {
7167
6881
  };
7168
6882
 
7169
6883
 
6884
+ /***/ }),
6885
+
6886
+ /***/ 9407:
6887
+ /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
6888
+
6889
+ /* MIT license */
6890
+ var colorNames = __nccwpck_require__(4953);
6891
+ var swizzle = __nccwpck_require__(4421);
6892
+ var hasOwnProperty = Object.hasOwnProperty;
6893
+
6894
+ var reverseNames = Object.create(null);
6895
+
6896
+ // create a list of reverse color names
6897
+ for (var name in colorNames) {
6898
+ if (hasOwnProperty.call(colorNames, name)) {
6899
+ reverseNames[colorNames[name]] = name;
6900
+ }
6901
+ }
6902
+
6903
+ var cs = module.exports = {
6904
+ to: {},
6905
+ get: {}
6906
+ };
6907
+
6908
+ cs.get = function (string) {
6909
+ var prefix = string.substring(0, 3).toLowerCase();
6910
+ var val;
6911
+ var model;
6912
+ switch (prefix) {
6913
+ case 'hsl':
6914
+ val = cs.get.hsl(string);
6915
+ model = 'hsl';
6916
+ break;
6917
+ case 'hwb':
6918
+ val = cs.get.hwb(string);
6919
+ model = 'hwb';
6920
+ break;
6921
+ default:
6922
+ val = cs.get.rgb(string);
6923
+ model = 'rgb';
6924
+ break;
6925
+ }
6926
+
6927
+ if (!val) {
6928
+ return null;
6929
+ }
6930
+
6931
+ return {model: model, value: val};
6932
+ };
6933
+
6934
+ cs.get.rgb = function (string) {
6935
+ if (!string) {
6936
+ return null;
6937
+ }
6938
+
6939
+ var abbr = /^#([a-f0-9]{3,4})$/i;
6940
+ var hex = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i;
6941
+ var rgba = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
6942
+ var per = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
6943
+ var keyword = /^(\w+)$/;
6944
+
6945
+ var rgb = [0, 0, 0, 1];
6946
+ var match;
6947
+ var i;
6948
+ var hexAlpha;
6949
+
6950
+ if (match = string.match(hex)) {
6951
+ hexAlpha = match[2];
6952
+ match = match[1];
6953
+
6954
+ for (i = 0; i < 3; i++) {
6955
+ // https://jsperf.com/slice-vs-substr-vs-substring-methods-long-string/19
6956
+ var i2 = i * 2;
6957
+ rgb[i] = parseInt(match.slice(i2, i2 + 2), 16);
6958
+ }
6959
+
6960
+ if (hexAlpha) {
6961
+ rgb[3] = parseInt(hexAlpha, 16) / 255;
6962
+ }
6963
+ } else if (match = string.match(abbr)) {
6964
+ match = match[1];
6965
+ hexAlpha = match[3];
6966
+
6967
+ for (i = 0; i < 3; i++) {
6968
+ rgb[i] = parseInt(match[i] + match[i], 16);
6969
+ }
6970
+
6971
+ if (hexAlpha) {
6972
+ rgb[3] = parseInt(hexAlpha + hexAlpha, 16) / 255;
6973
+ }
6974
+ } else if (match = string.match(rgba)) {
6975
+ for (i = 0; i < 3; i++) {
6976
+ rgb[i] = parseInt(match[i + 1], 0);
6977
+ }
6978
+
6979
+ if (match[4]) {
6980
+ if (match[5]) {
6981
+ rgb[3] = parseFloat(match[4]) * 0.01;
6982
+ } else {
6983
+ rgb[3] = parseFloat(match[4]);
6984
+ }
6985
+ }
6986
+ } else if (match = string.match(per)) {
6987
+ for (i = 0; i < 3; i++) {
6988
+ rgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55);
6989
+ }
6990
+
6991
+ if (match[4]) {
6992
+ if (match[5]) {
6993
+ rgb[3] = parseFloat(match[4]) * 0.01;
6994
+ } else {
6995
+ rgb[3] = parseFloat(match[4]);
6996
+ }
6997
+ }
6998
+ } else if (match = string.match(keyword)) {
6999
+ if (match[1] === 'transparent') {
7000
+ return [0, 0, 0, 0];
7001
+ }
7002
+
7003
+ if (!hasOwnProperty.call(colorNames, match[1])) {
7004
+ return null;
7005
+ }
7006
+
7007
+ rgb = colorNames[match[1]];
7008
+ rgb[3] = 1;
7009
+
7010
+ return rgb;
7011
+ } else {
7012
+ return null;
7013
+ }
7014
+
7015
+ for (i = 0; i < 3; i++) {
7016
+ rgb[i] = clamp(rgb[i], 0, 255);
7017
+ }
7018
+ rgb[3] = clamp(rgb[3], 0, 1);
7019
+
7020
+ return rgb;
7021
+ };
7022
+
7023
+ cs.get.hsl = function (string) {
7024
+ if (!string) {
7025
+ return null;
7026
+ }
7027
+
7028
+ var hsl = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/;
7029
+ var match = string.match(hsl);
7030
+
7031
+ if (match) {
7032
+ var alpha = parseFloat(match[4]);
7033
+ var h = ((parseFloat(match[1]) % 360) + 360) % 360;
7034
+ var s = clamp(parseFloat(match[2]), 0, 100);
7035
+ var l = clamp(parseFloat(match[3]), 0, 100);
7036
+ var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
7037
+
7038
+ return [h, s, l, a];
7039
+ }
7040
+
7041
+ return null;
7042
+ };
7043
+
7044
+ cs.get.hwb = function (string) {
7045
+ if (!string) {
7046
+ return null;
7047
+ }
7048
+
7049
+ var hwb = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/;
7050
+ var match = string.match(hwb);
7051
+
7052
+ if (match) {
7053
+ var alpha = parseFloat(match[4]);
7054
+ var h = ((parseFloat(match[1]) % 360) + 360) % 360;
7055
+ var w = clamp(parseFloat(match[2]), 0, 100);
7056
+ var b = clamp(parseFloat(match[3]), 0, 100);
7057
+ var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
7058
+ return [h, w, b, a];
7059
+ }
7060
+
7061
+ return null;
7062
+ };
7063
+
7064
+ cs.to.hex = function () {
7065
+ var rgba = swizzle(arguments);
7066
+
7067
+ return (
7068
+ '#' +
7069
+ hexDouble(rgba[0]) +
7070
+ hexDouble(rgba[1]) +
7071
+ hexDouble(rgba[2]) +
7072
+ (rgba[3] < 1
7073
+ ? (hexDouble(Math.round(rgba[3] * 255)))
7074
+ : '')
7075
+ );
7076
+ };
7077
+
7078
+ cs.to.rgb = function () {
7079
+ var rgba = swizzle(arguments);
7080
+
7081
+ return rgba.length < 4 || rgba[3] === 1
7082
+ ? 'rgb(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ')'
7083
+ : 'rgba(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ', ' + rgba[3] + ')';
7084
+ };
7085
+
7086
+ cs.to.rgb.percent = function () {
7087
+ var rgba = swizzle(arguments);
7088
+
7089
+ var r = Math.round(rgba[0] / 255 * 100);
7090
+ var g = Math.round(rgba[1] / 255 * 100);
7091
+ var b = Math.round(rgba[2] / 255 * 100);
7092
+
7093
+ return rgba.length < 4 || rgba[3] === 1
7094
+ ? 'rgb(' + r + '%, ' + g + '%, ' + b + '%)'
7095
+ : 'rgba(' + r + '%, ' + g + '%, ' + b + '%, ' + rgba[3] + ')';
7096
+ };
7097
+
7098
+ cs.to.hsl = function () {
7099
+ var hsla = swizzle(arguments);
7100
+ return hsla.length < 4 || hsla[3] === 1
7101
+ ? 'hsl(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%)'
7102
+ : 'hsla(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%, ' + hsla[3] + ')';
7103
+ };
7104
+
7105
+ // hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax
7106
+ // (hwb have alpha optional & 1 is default value)
7107
+ cs.to.hwb = function () {
7108
+ var hwba = swizzle(arguments);
7109
+
7110
+ var a = '';
7111
+ if (hwba.length >= 4 && hwba[3] !== 1) {
7112
+ a = ', ' + hwba[3];
7113
+ }
7114
+
7115
+ return 'hwb(' + hwba[0] + ', ' + hwba[1] + '%, ' + hwba[2] + '%' + a + ')';
7116
+ };
7117
+
7118
+ cs.to.keyword = function (rgb) {
7119
+ return reverseNames[rgb.slice(0, 3)];
7120
+ };
7121
+
7122
+ // helpers
7123
+ function clamp(num, min, max) {
7124
+ return Math.min(Math.max(min, num), max);
7125
+ }
7126
+
7127
+ function hexDouble(num) {
7128
+ var str = Math.round(num).toString(16).toUpperCase();
7129
+ return (str.length < 2) ? '0' + str : str;
7130
+ }
7131
+
7132
+
7133
+ /***/ }),
7134
+
7135
+ /***/ 8107:
7136
+ /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
7137
+
7138
+ "use strict";
7139
+
7140
+
7141
+ var color = __nccwpck_require__(1696)
7142
+ , hex = __nccwpck_require__(5143);
7143
+
7144
+ /**
7145
+ * Generate a color for a given name. But be reasonably smart about it by
7146
+ * understanding name spaces and coloring each namespace a bit lighter so they
7147
+ * still have the same base color as the root.
7148
+ *
7149
+ * @param {string} namespace The namespace
7150
+ * @param {string} [delimiter] The delimiter
7151
+ * @returns {string} color
7152
+ */
7153
+ module.exports = function colorspace(namespace, delimiter) {
7154
+ var split = namespace.split(delimiter || ':');
7155
+ var base = hex(split[0]);
7156
+
7157
+ if (!split.length) return base;
7158
+
7159
+ for (var i = 0, l = split.length - 1; i < l; i++) {
7160
+ base = color(base)
7161
+ .mix(color(hex(split[i + 1])))
7162
+ .saturate(1)
7163
+ .hex();
7164
+ }
7165
+
7166
+ return base;
7167
+ };
7168
+
7169
+
7170
7170
  /***/ }),
7171
7171
 
7172
7172
  /***/ 1696:
@@ -7176,7 +7176,7 @@ module.exports = {
7176
7176
 
7177
7177
 
7178
7178
  var colorString = __nccwpck_require__(9407);
7179
- var convert = __nccwpck_require__(192);
7179
+ var convert = __nccwpck_require__(4185);
7180
7180
 
7181
7181
  var _slice = [].slice;
7182
7182
 
@@ -39035,7 +39035,7 @@ module.exports = require("zlib");
39035
39035
  /***/ ((module) => {
39036
39036
 
39037
39037
  "use strict";
39038
- module.exports = /*#__PURE__*/JSON.parse('{"name":"@abtnode/core","publishConfig":{"access":"public"},"version":"1.17.2","description":"","main":"lib/index.js","files":["lib"],"scripts":{"lint":"eslint tests lib --ignore-pattern \'tests/assets/*\'","lint:fix":"eslint --fix tests lib"},"keywords":[],"author":"wangshijun <wangshijun2010@gmail.com> (http://github.com/wangshijun)","license":"Apache-2.0","dependencies":{"@abtnode/analytics":"1.17.2","@abtnode/auth":"1.17.2","@abtnode/certificate-manager":"1.17.2","@abtnode/constant":"1.17.2","@abtnode/cron":"1.17.2","@abtnode/db-cache":"1.17.2","@abtnode/docker-utils":"1.17.2","@abtnode/logger":"1.17.2","@abtnode/models":"1.17.2","@abtnode/queue":"1.17.2","@abtnode/rbac":"1.17.2","@abtnode/router-provider":"1.17.2","@abtnode/static-server":"1.17.2","@abtnode/timemachine":"1.17.2","@abtnode/util":"1.17.2","@aigne/aigne-hub":"^0.10.10","@arcblock/did":"^1.27.12","@arcblock/did-connect-js":"^1.27.12","@arcblock/did-ext":"^1.27.12","@arcblock/did-motif":"^1.1.14","@arcblock/did-util":"^1.27.12","@arcblock/event-hub":"^1.27.12","@arcblock/jwt":"^1.27.12","@arcblock/pm2-events":"^0.0.5","@arcblock/validator":"^1.27.12","@arcblock/vc":"^1.27.12","@blocklet/constant":"1.17.2","@blocklet/did-space-js":"^1.2.6","@blocklet/env":"1.17.2","@blocklet/error":"^0.3.3","@blocklet/meta":"1.17.2","@blocklet/resolver":"1.17.2","@blocklet/sdk":"1.17.2","@blocklet/server-js":"1.17.2","@blocklet/store":"1.17.2","@blocklet/theme":"^3.2.10","@fidm/x509":"^1.2.1","@ocap/mcrypto":"^1.27.12","@ocap/util":"^1.27.12","@ocap/wallet":"^1.27.12","@slack/webhook":"^7.0.6","archiver":"^7.0.1","axios":"^1.7.9","axon":"^2.0.3","chalk":"^4.1.2","cross-spawn":"^7.0.3","dayjs":"^1.11.13","deep-diff":"^1.0.2","detect-port":"^1.5.1","envfile":"^7.1.0","escape-string-regexp":"^4.0.0","fast-glob":"^3.3.2","filesize":"^10.1.1","flat":"^5.0.2","fs-extra":"^11.2.0","get-port":"^5.1.1","hasha":"^5.2.2","is-base64":"^1.1.0","is-cidr":"4","is-ip":"3","is-url":"^1.2.4","joi":"17.12.2","joi-extension-semver":"^5.0.0","js-yaml":"^4.1.0","kill-port":"^2.0.1","lodash":"^4.17.21","node-stream-zip":"^1.15.0","p-all":"^3.0.0","p-limit":"^3.1.0","p-map":"^4.0.0","p-retry":"^4.6.2","p-wait-for":"^3.2.0","private-ip":"^2.3.4","rate-limiter-flexible":"^5.0.5","read-last-lines":"^1.8.0","semver":"^7.6.3","sequelize":"^6.35.0","shelljs":"^0.8.5","slugify":"^1.6.6","ssri":"^8.0.1","stream-throttle":"^0.1.3","stream-to-promise":"^3.0.0","systeminformation":"^5.23.3","tail":"^2.2.4","tar":"^6.1.11","transliteration":"^2.3.5","ua-parser-js":"^1.0.2","ufo":"^1.5.3","uuid":"^11.1.0","valid-url":"^1.0.9","which":"^2.0.2","xbytes":"^1.8.0"},"devDependencies":{"axios-mock-adapter":"^2.1.0","expand-tilde":"^2.0.2","express":"^4.18.2","unzipper":"^0.10.11"},"gitHead":"e5764f753181ed6a7c615cd4fc6682aacf0cb7cd"}');
39038
+ module.exports = /*#__PURE__*/JSON.parse('{"name":"@abtnode/core","publishConfig":{"access":"public"},"version":"1.17.2","description":"","main":"lib/index.js","files":["lib"],"scripts":{"lint":"eslint tests lib --ignore-pattern \'tests/assets/*\'","lint:fix":"eslint --fix tests lib"},"keywords":[],"author":"wangshijun <wangshijun2010@gmail.com> (http://github.com/wangshijun)","license":"Apache-2.0","dependencies":{"@abtnode/analytics":"1.17.2","@abtnode/auth":"1.17.2","@abtnode/certificate-manager":"1.17.2","@abtnode/constant":"1.17.2","@abtnode/cron":"1.17.2","@abtnode/db-cache":"1.17.2","@abtnode/docker-utils":"1.17.2","@abtnode/logger":"1.17.2","@abtnode/models":"1.17.2","@abtnode/queue":"1.17.2","@abtnode/rbac":"1.17.2","@abtnode/router-provider":"1.17.2","@abtnode/static-server":"1.17.2","@abtnode/timemachine":"1.17.2","@abtnode/util":"1.17.2","@aigne/aigne-hub":"^0.10.10","@arcblock/did":"^1.27.12","@arcblock/did-connect-js":"^1.27.12","@arcblock/did-ext":"^1.27.12","@arcblock/did-motif":"^1.1.14","@arcblock/did-util":"^1.27.12","@arcblock/event-hub":"^1.27.12","@arcblock/jwt":"^1.27.12","@arcblock/pm2-events":"^0.0.5","@arcblock/validator":"^1.27.12","@arcblock/vc":"^1.27.12","@blocklet/constant":"1.17.2","@blocklet/did-space-js":"^1.2.6","@blocklet/env":"1.17.2","@blocklet/error":"^0.3.3","@blocklet/meta":"1.17.2","@blocklet/resolver":"1.17.2","@blocklet/sdk":"1.17.2","@blocklet/server-js":"1.17.2","@blocklet/store":"1.17.2","@blocklet/theme":"^3.2.11","@fidm/x509":"^1.2.1","@ocap/mcrypto":"^1.27.12","@ocap/util":"^1.27.12","@ocap/wallet":"^1.27.12","@slack/webhook":"^7.0.6","archiver":"^7.0.1","axios":"^1.7.9","axon":"^2.0.3","chalk":"^4.1.2","cross-spawn":"^7.0.3","dayjs":"^1.11.13","deep-diff":"^1.0.2","detect-port":"^1.5.1","envfile":"^7.1.0","escape-string-regexp":"^4.0.0","fast-glob":"^3.3.2","filesize":"^10.1.1","flat":"^5.0.2","fs-extra":"^11.2.0","get-port":"^5.1.1","hasha":"^5.2.2","is-base64":"^1.1.0","is-cidr":"4","is-ip":"3","is-url":"^1.2.4","joi":"17.12.2","joi-extension-semver":"^5.0.0","js-yaml":"^4.1.0","kill-port":"^2.0.1","lodash":"^4.17.21","node-stream-zip":"^1.15.0","p-all":"^3.0.0","p-limit":"^3.1.0","p-map":"^4.0.0","p-retry":"^4.6.2","p-wait-for":"^3.2.0","private-ip":"^2.3.4","rate-limiter-flexible":"^5.0.5","read-last-lines":"^1.8.0","semver":"^7.6.3","sequelize":"^6.35.0","shelljs":"^0.8.5","slugify":"^1.6.6","ssri":"^8.0.1","stream-throttle":"^0.1.3","stream-to-promise":"^3.0.0","systeminformation":"^5.23.3","tail":"^2.2.4","tar":"^6.1.11","transliteration":"^2.3.5","ua-parser-js":"^1.0.2","ufo":"^1.5.3","uuid":"^11.1.0","valid-url":"^1.0.9","which":"^2.0.2","xbytes":"^1.8.0"},"devDependencies":{"axios-mock-adapter":"^2.1.0","expand-tilde":"^2.0.2","express":"^4.18.2","unzipper":"^0.10.11"},"gitHead":"e5764f753181ed6a7c615cd4fc6682aacf0cb7cd"}');
39039
39039
 
39040
39040
  /***/ }),
39041
39041
 
@@ -25,7 +25,6 @@ class WebhooksAPI extends EventEmitter {
25
25
 
26
26
  this.states = states;
27
27
  this.teamManager = teamManager;
28
-
29
28
  this.cache = new Map();
30
29
  this.TTL = 5 * 60 * 1000;
31
30
 
package/lib/index.js CHANGED
@@ -307,7 +307,7 @@ function ABTNode(options) {
307
307
  });
308
308
  blockletManager.setMaxListeners(0);
309
309
  const securityAPI = new SecurityAPI({ teamManager, blockletManager });
310
- const webhookAPI = new WebhookAPI({ states, teamManager });
310
+ const webhookAPI = new WebhookAPI({ states, teamManager, blockletManager });
311
311
 
312
312
  const {
313
313
  handleBlockletWafChange,
@@ -150,10 +150,6 @@ class User extends ExtendBase {
150
150
  Object.assign(pending, await this._extractInviteInfo({ did, ...pending }));
151
151
  }
152
152
 
153
- // 验证 webhooks 中 URL 是否合法
154
- const webhooks = get(pending, 'extra.webhooks', []);
155
- await this.validateURL(webhooks.map((x) => x.url));
156
-
157
153
  await super.update({ did }, { $set: pending });
158
154
  await Promise.all(
159
155
  (get(cloneData, 'passports') || [])
@@ -10,9 +10,6 @@ class WebhookState extends BaseState {
10
10
  async create(info, { mock } = {}) {
11
11
  const { type, params } = info;
12
12
 
13
- const urls = params.map((item) => item.value);
14
- await this.validateURL(urls, 'webhook URLs');
15
-
16
13
  const filterParams = params.map((item) => {
17
14
  const data = {
18
15
  name: item.name,
@@ -27,7 +24,10 @@ class WebhookState extends BaseState {
27
24
  createdAt: Date.now(),
28
25
  };
29
26
 
30
- await validateWebhook(data);
27
+ const exist = await this.list();
28
+ const existUrls = exist.map((item) => item.params.map((param) => param.value)).flat();
29
+
30
+ await validateWebhook(data, { existUrls });
31
31
 
32
32
  if (mock) {
33
33
  return data;
@@ -543,7 +543,11 @@ class TeamManager extends EventEmitter {
543
543
  const receivers = await this._getReceiverList(teamDid, receiver, isExist);
544
544
 
545
545
  if (!receivers?.length && process.env.NODE_ENV !== 'test') {
546
- logger.warn('No valid receivers', { teamDid, receiver });
546
+ logger.warn('No valid receivers', {
547
+ teamDid,
548
+ receiver,
549
+ notification: JSON.stringify(notification || payload || {}),
550
+ });
547
551
  return undefined;
548
552
  }
549
553
 
@@ -17,7 +17,7 @@ const validateWebhook = Joi.object({
17
17
  });
18
18
 
19
19
  module.exports = {
20
- validateWebhook: (input) => {
20
+ validateWebhook: (input, { existUrls = [] } = {}) => {
21
21
  const { value, error } = validateWebhook.validate(input);
22
22
  if (error) {
23
23
  throw new Error(error.details.map((x) => x.message).join(', '));
@@ -34,6 +34,9 @@ module.exports = {
34
34
  if (err) {
35
35
  throw new Error(err.details.map((x) => x.message).join(', '));
36
36
  }
37
+ if (existUrls.includes(param.value)) {
38
+ throw new Error(`Webhook URL ${param.value} already exists`);
39
+ }
37
40
  }
38
41
  }
39
42
 
@@ -213,8 +213,6 @@ module.exports = ({ events, dataDirs, instance, teamManager }) => {
213
213
 
214
214
  const createWebhook = async (webhook) => {
215
215
  try {
216
- const mockCreateRes = await webhookState.create(webhook, { mock: true });
217
- await sentTextMessage(mockCreateRes, `A ${mockCreateRes.type} integration is now *successfully added*`);
218
216
  const urls = webhook.params.map((item) => item.value);
219
217
 
220
218
  for (const url of urls) {
@@ -225,9 +223,13 @@ module.exports = ({ events, dataDirs, instance, teamManager }) => {
225
223
  }
226
224
 
227
225
  const createRes = await webhookState.create(webhook);
226
+ // 发送测试消息,不要影响主流程
227
+ sentTextMessage(createRes, `A ${createRes.type} integration is now *successfully added*`).catch((err) => {
228
+ logger.warn('Failed to send test message', { err });
229
+ });
228
230
  return createRes;
229
231
  } catch (err) {
230
- logger.error('Failed to create webhook', { err });
232
+ logger.error('Failed to create webhook', err);
231
233
  throw new Error(`Failed to create webhook: ${err.message}`);
232
234
  }
233
235
  };
@@ -186,7 +186,7 @@ SlackSender.describe = () => ({
186
186
  required: true,
187
187
  defaultValue: '',
188
188
  value: '',
189
- type: 'url',
189
+ type: 'slack',
190
190
  schema: Joi.string()
191
191
  .required()
192
192
  .custom((v, helper) => {
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.17.3-beta-20251127-063055-94957209",
6
+ "version": "1.17.3",
7
7
  "description": "",
8
8
  "main": "lib/index.js",
9
9
  "files": [
@@ -17,21 +17,21 @@
17
17
  "author": "wangshijun <wangshijun2010@gmail.com> (http://github.com/wangshijun)",
18
18
  "license": "Apache-2.0",
19
19
  "dependencies": {
20
- "@abtnode/analytics": "1.17.3-beta-20251127-063055-94957209",
21
- "@abtnode/auth": "1.17.3-beta-20251127-063055-94957209",
22
- "@abtnode/certificate-manager": "1.17.3-beta-20251127-063055-94957209",
23
- "@abtnode/constant": "1.17.3-beta-20251127-063055-94957209",
24
- "@abtnode/cron": "1.17.3-beta-20251127-063055-94957209",
25
- "@abtnode/db-cache": "1.17.3-beta-20251127-063055-94957209",
26
- "@abtnode/docker-utils": "1.17.3-beta-20251127-063055-94957209",
27
- "@abtnode/logger": "1.17.3-beta-20251127-063055-94957209",
28
- "@abtnode/models": "1.17.3-beta-20251127-063055-94957209",
29
- "@abtnode/queue": "1.17.3-beta-20251127-063055-94957209",
30
- "@abtnode/rbac": "1.17.3-beta-20251127-063055-94957209",
31
- "@abtnode/router-provider": "1.17.3-beta-20251127-063055-94957209",
32
- "@abtnode/static-server": "1.17.3-beta-20251127-063055-94957209",
33
- "@abtnode/timemachine": "1.17.3-beta-20251127-063055-94957209",
34
- "@abtnode/util": "1.17.3-beta-20251127-063055-94957209",
20
+ "@abtnode/analytics": "1.17.3",
21
+ "@abtnode/auth": "1.17.3",
22
+ "@abtnode/certificate-manager": "1.17.3",
23
+ "@abtnode/constant": "1.17.3",
24
+ "@abtnode/cron": "1.17.3",
25
+ "@abtnode/db-cache": "1.17.3",
26
+ "@abtnode/docker-utils": "1.17.3",
27
+ "@abtnode/logger": "1.17.3",
28
+ "@abtnode/models": "1.17.3",
29
+ "@abtnode/queue": "1.17.3",
30
+ "@abtnode/rbac": "1.17.3",
31
+ "@abtnode/router-provider": "1.17.3",
32
+ "@abtnode/static-server": "1.17.3",
33
+ "@abtnode/timemachine": "1.17.3",
34
+ "@abtnode/util": "1.17.3",
35
35
  "@aigne/aigne-hub": "^0.10.10",
36
36
  "@arcblock/did": "^1.27.12",
37
37
  "@arcblock/did-connect-js": "^1.27.12",
@@ -43,16 +43,16 @@
43
43
  "@arcblock/pm2-events": "^0.0.5",
44
44
  "@arcblock/validator": "^1.27.12",
45
45
  "@arcblock/vc": "^1.27.12",
46
- "@blocklet/constant": "1.17.3-beta-20251127-063055-94957209",
46
+ "@blocklet/constant": "1.17.3",
47
47
  "@blocklet/did-space-js": "^1.2.6",
48
- "@blocklet/env": "1.17.3-beta-20251127-063055-94957209",
48
+ "@blocklet/env": "1.17.3",
49
49
  "@blocklet/error": "^0.3.3",
50
- "@blocklet/meta": "1.17.3-beta-20251127-063055-94957209",
51
- "@blocklet/resolver": "1.17.3-beta-20251127-063055-94957209",
52
- "@blocklet/sdk": "1.17.3-beta-20251127-063055-94957209",
53
- "@blocklet/server-js": "1.17.3-beta-20251127-063055-94957209",
54
- "@blocklet/store": "1.17.3-beta-20251127-063055-94957209",
55
- "@blocklet/theme": "^3.2.10",
50
+ "@blocklet/meta": "1.17.3",
51
+ "@blocklet/resolver": "1.17.3",
52
+ "@blocklet/sdk": "1.17.3",
53
+ "@blocklet/server-js": "1.17.3",
54
+ "@blocklet/store": "1.17.3",
55
+ "@blocklet/theme": "^3.2.11",
56
56
  "@fidm/x509": "^1.2.1",
57
57
  "@ocap/mcrypto": "^1.27.12",
58
58
  "@ocap/util": "^1.27.12",
@@ -116,5 +116,5 @@
116
116
  "express": "^4.18.2",
117
117
  "unzipper": "^0.10.11"
118
118
  },
119
- "gitHead": "80dac020e9642b7e51c6a142c526cdecb75217a9"
119
+ "gitHead": "20fc4c3b0c0fdf05a91d995e3f6fda0f38fa1133"
120
120
  }