reasonix 0.30.1 → 0.30.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.
- package/README.md +48 -3
- package/README.zh-CN.md +3 -3
- package/dashboard/dist/app.js +1258 -793
- package/dashboard/dist/app.js.map +1 -1
- package/dist/cli/index.js +1278 -1184
- package/dist/cli/index.js.map +1 -1
- package/dist/index.d.ts +17 -1
- package/dist/index.js +107 -2
- package/dist/index.js.map +1 -1
- package/package.json +5 -7
package/dashboard/dist/app.js
CHANGED
|
@@ -98,7 +98,7 @@ var require_core = __commonJS({
|
|
|
98
98
|
const pieces = name.split(".");
|
|
99
99
|
return [
|
|
100
100
|
`${prefix}${pieces.shift()}`,
|
|
101
|
-
...pieces.map((
|
|
101
|
+
...pieces.map((x2, i3) => `${x2}${"_".repeat(i3 + 1)}`)
|
|
102
102
|
].join(" ");
|
|
103
103
|
}
|
|
104
104
|
return `${prefix}${name}`;
|
|
@@ -288,7 +288,7 @@ var require_core = __commonJS({
|
|
|
288
288
|
return concat("(?:", re, ")?");
|
|
289
289
|
}
|
|
290
290
|
function concat(...args) {
|
|
291
|
-
const joined = args.map((
|
|
291
|
+
const joined = args.map((x2) => source(x2)).join("");
|
|
292
292
|
return joined;
|
|
293
293
|
}
|
|
294
294
|
function stripOptionsFromArgs(args) {
|
|
@@ -302,7 +302,7 @@ var require_core = __commonJS({
|
|
|
302
302
|
}
|
|
303
303
|
function either(...args) {
|
|
304
304
|
const opts = stripOptionsFromArgs(args);
|
|
305
|
-
const joined = "(" + (opts.capture ? "" : "?:") + args.map((
|
|
305
|
+
const joined = "(" + (opts.capture ? "" : "?:") + args.map((x2) => source(x2)).join("|") + ")";
|
|
306
306
|
return joined;
|
|
307
307
|
}
|
|
308
308
|
function countMatchGroups(re) {
|
|
@@ -363,8 +363,8 @@ var require_core = __commonJS({
|
|
|
363
363
|
end: /$/,
|
|
364
364
|
relevance: 0,
|
|
365
365
|
/** @type {ModeCallback} */
|
|
366
|
-
"on:begin": (
|
|
367
|
-
if (
|
|
366
|
+
"on:begin": (m3, resp) => {
|
|
367
|
+
if (m3.index !== 0) resp.ignoreMatch();
|
|
368
368
|
}
|
|
369
369
|
}, opts);
|
|
370
370
|
};
|
|
@@ -509,12 +509,12 @@ var require_core = __commonJS({
|
|
|
509
509
|
mode,
|
|
510
510
|
{
|
|
511
511
|
/** @type {ModeCallback} */
|
|
512
|
-
"on:begin": (
|
|
513
|
-
resp.data._beginMatch =
|
|
512
|
+
"on:begin": (m3, resp) => {
|
|
513
|
+
resp.data._beginMatch = m3[1];
|
|
514
514
|
},
|
|
515
515
|
/** @type {ModeCallback} */
|
|
516
|
-
"on:end": (
|
|
517
|
-
if (resp.data._beginMatch !==
|
|
516
|
+
"on:end": (m3, resp) => {
|
|
517
|
+
if (resp.data._beginMatch !== m3[1]) resp.ignoreMatch();
|
|
518
518
|
}
|
|
519
519
|
}
|
|
520
520
|
);
|
|
@@ -632,7 +632,7 @@ var require_core = __commonJS({
|
|
|
632
632
|
return compiledKeywords;
|
|
633
633
|
function compileList(scopeName2, keywordList) {
|
|
634
634
|
if (caseInsensitive) {
|
|
635
|
-
keywordList = keywordList.map((
|
|
635
|
+
keywordList = keywordList.map((x2) => x2.toLowerCase());
|
|
636
636
|
}
|
|
637
637
|
keywordList.forEach(function(keyword) {
|
|
638
638
|
const pair = keyword.split("|");
|
|
@@ -791,9 +791,9 @@ var require_core = __commonJS({
|
|
|
791
791
|
}
|
|
792
792
|
/** @param {string} s */
|
|
793
793
|
exec(s3) {
|
|
794
|
-
const
|
|
795
|
-
|
|
796
|
-
let result =
|
|
794
|
+
const m3 = this.getMatcher(this.regexIndex);
|
|
795
|
+
m3.lastIndex = this.lastIndex;
|
|
796
|
+
let result = m3.exec(s3);
|
|
797
797
|
if (this.resumingScanAtSamePosition()) {
|
|
798
798
|
if (result && result.index === this.lastIndex) ;
|
|
799
799
|
else {
|
|
@@ -920,7 +920,7 @@ var require_core = __commonJS({
|
|
|
920
920
|
}
|
|
921
921
|
return mode;
|
|
922
922
|
}
|
|
923
|
-
var version = "11.
|
|
923
|
+
var version = "11.11.1";
|
|
924
924
|
var HTMLInjectionError = class extends Error {
|
|
925
925
|
constructor(reason, html6) {
|
|
926
926
|
super(reason);
|
|
@@ -1234,6 +1234,7 @@ var require_core = __commonJS({
|
|
|
1234
1234
|
}
|
|
1235
1235
|
}
|
|
1236
1236
|
if (match.type === "illegal" && lexeme === "") {
|
|
1237
|
+
modeBuffer += "\n";
|
|
1237
1238
|
return 1;
|
|
1238
1239
|
}
|
|
1239
1240
|
if (iterations > 1e5 && iterations > match.index * 3) {
|
|
@@ -1420,19 +1421,19 @@ var require_core = __commonJS({
|
|
|
1420
1421
|
}
|
|
1421
1422
|
let wantsHighlight = false;
|
|
1422
1423
|
function highlightAll() {
|
|
1424
|
+
function boot() {
|
|
1425
|
+
highlightAll();
|
|
1426
|
+
}
|
|
1423
1427
|
if (document.readyState === "loading") {
|
|
1428
|
+
if (!wantsHighlight) {
|
|
1429
|
+
window.addEventListener("DOMContentLoaded", boot, false);
|
|
1430
|
+
}
|
|
1424
1431
|
wantsHighlight = true;
|
|
1425
1432
|
return;
|
|
1426
1433
|
}
|
|
1427
1434
|
const blocks = document.querySelectorAll(options2.cssSelector);
|
|
1428
1435
|
blocks.forEach(highlightElement);
|
|
1429
1436
|
}
|
|
1430
|
-
function boot() {
|
|
1431
|
-
if (wantsHighlight) highlightAll();
|
|
1432
|
-
}
|
|
1433
|
-
if (typeof window !== "undefined" && window.addEventListener) {
|
|
1434
|
-
window.addEventListener("DOMContentLoaded", boot, false);
|
|
1435
|
-
}
|
|
1436
1437
|
function registerLanguage(languageName, languageDefinition) {
|
|
1437
1438
|
let lang = null;
|
|
1438
1439
|
try {
|
|
@@ -1922,6 +1923,7 @@ var require_bash = __commonJS({
|
|
|
1922
1923
|
"else",
|
|
1923
1924
|
"elif",
|
|
1924
1925
|
"fi",
|
|
1926
|
+
"time",
|
|
1925
1927
|
"for",
|
|
1926
1928
|
"while",
|
|
1927
1929
|
"until",
|
|
@@ -1930,6 +1932,7 @@ var require_bash = __commonJS({
|
|
|
1930
1932
|
"done",
|
|
1931
1933
|
"case",
|
|
1932
1934
|
"esac",
|
|
1935
|
+
"coproc",
|
|
1933
1936
|
"function",
|
|
1934
1937
|
"select"
|
|
1935
1938
|
];
|
|
@@ -2241,9 +2244,10 @@ var require_c = __commonJS({
|
|
|
2241
2244
|
const NUMBERS = {
|
|
2242
2245
|
className: "number",
|
|
2243
2246
|
variants: [
|
|
2244
|
-
{
|
|
2245
|
-
{
|
|
2246
|
-
{
|
|
2247
|
+
{ match: /\b(0b[01']+)/ },
|
|
2248
|
+
{ match: /(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/ },
|
|
2249
|
+
{ match: /(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/ },
|
|
2250
|
+
{ match: /(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/ }
|
|
2247
2251
|
],
|
|
2248
2252
|
relevance: 0
|
|
2249
2253
|
};
|
|
@@ -2694,6 +2698,8 @@ var require_cpp = __commonJS({
|
|
|
2694
2698
|
"counting_semaphore",
|
|
2695
2699
|
"deque",
|
|
2696
2700
|
"false_type",
|
|
2701
|
+
"flat_map",
|
|
2702
|
+
"flat_set",
|
|
2697
2703
|
"future",
|
|
2698
2704
|
"imaginary",
|
|
2699
2705
|
"initializer_list",
|
|
@@ -3013,7 +3019,7 @@ var require_cpp = __commonJS({
|
|
|
3013
3019
|
PREPROCESSOR,
|
|
3014
3020
|
{
|
|
3015
3021
|
// containers: ie, `vector <int> rooms (9);`
|
|
3016
|
-
begin: "\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function)\\s*<(?!<)",
|
|
3022
|
+
begin: "\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",
|
|
3017
3023
|
end: ">",
|
|
3018
3024
|
keywords: CPP_KEYWORDS,
|
|
3019
3025
|
contains: [
|
|
@@ -3159,11 +3165,14 @@ var require_csharp = __commonJS({
|
|
|
3159
3165
|
"alias",
|
|
3160
3166
|
"and",
|
|
3161
3167
|
"ascending",
|
|
3168
|
+
"args",
|
|
3162
3169
|
"async",
|
|
3163
3170
|
"await",
|
|
3164
3171
|
"by",
|
|
3165
3172
|
"descending",
|
|
3173
|
+
"dynamic",
|
|
3166
3174
|
"equals",
|
|
3175
|
+
"file",
|
|
3167
3176
|
"from",
|
|
3168
3177
|
"get",
|
|
3169
3178
|
"global",
|
|
@@ -3179,7 +3188,10 @@ var require_csharp = __commonJS({
|
|
|
3179
3188
|
"or",
|
|
3180
3189
|
"orderby",
|
|
3181
3190
|
"partial",
|
|
3191
|
+
"record",
|
|
3182
3192
|
"remove",
|
|
3193
|
+
"required",
|
|
3194
|
+
"scoped",
|
|
3183
3195
|
"select",
|
|
3184
3196
|
"set",
|
|
3185
3197
|
"unmanaged",
|
|
@@ -3745,7 +3757,9 @@ var require_css = __commonJS({
|
|
|
3745
3757
|
"align-self",
|
|
3746
3758
|
"alignment-baseline",
|
|
3747
3759
|
"all",
|
|
3760
|
+
"anchor-name",
|
|
3748
3761
|
"animation",
|
|
3762
|
+
"animation-composition",
|
|
3749
3763
|
"animation-delay",
|
|
3750
3764
|
"animation-direction",
|
|
3751
3765
|
"animation-duration",
|
|
@@ -3753,8 +3767,14 @@ var require_css = __commonJS({
|
|
|
3753
3767
|
"animation-iteration-count",
|
|
3754
3768
|
"animation-name",
|
|
3755
3769
|
"animation-play-state",
|
|
3770
|
+
"animation-range",
|
|
3771
|
+
"animation-range-end",
|
|
3772
|
+
"animation-range-start",
|
|
3773
|
+
"animation-timeline",
|
|
3756
3774
|
"animation-timing-function",
|
|
3757
3775
|
"appearance",
|
|
3776
|
+
"aspect-ratio",
|
|
3777
|
+
"backdrop-filter",
|
|
3758
3778
|
"backface-visibility",
|
|
3759
3779
|
"background",
|
|
3760
3780
|
"background-attachment",
|
|
@@ -3764,6 +3784,8 @@ var require_css = __commonJS({
|
|
|
3764
3784
|
"background-image",
|
|
3765
3785
|
"background-origin",
|
|
3766
3786
|
"background-position",
|
|
3787
|
+
"background-position-x",
|
|
3788
|
+
"background-position-y",
|
|
3767
3789
|
"background-repeat",
|
|
3768
3790
|
"background-size",
|
|
3769
3791
|
"baseline-shift",
|
|
@@ -3789,6 +3811,8 @@ var require_css = __commonJS({
|
|
|
3789
3811
|
"border-bottom-width",
|
|
3790
3812
|
"border-collapse",
|
|
3791
3813
|
"border-color",
|
|
3814
|
+
"border-end-end-radius",
|
|
3815
|
+
"border-end-start-radius",
|
|
3792
3816
|
"border-image",
|
|
3793
3817
|
"border-image-outset",
|
|
3794
3818
|
"border-image-repeat",
|
|
@@ -3813,8 +3837,6 @@ var require_css = __commonJS({
|
|
|
3813
3837
|
"border-left-width",
|
|
3814
3838
|
"border-radius",
|
|
3815
3839
|
"border-right",
|
|
3816
|
-
"border-end-end-radius",
|
|
3817
|
-
"border-end-start-radius",
|
|
3818
3840
|
"border-right-color",
|
|
3819
3841
|
"border-right-style",
|
|
3820
3842
|
"border-right-width",
|
|
@@ -3830,14 +3852,20 @@ var require_css = __commonJS({
|
|
|
3830
3852
|
"border-top-width",
|
|
3831
3853
|
"border-width",
|
|
3832
3854
|
"bottom",
|
|
3855
|
+
"box-align",
|
|
3833
3856
|
"box-decoration-break",
|
|
3857
|
+
"box-direction",
|
|
3858
|
+
"box-flex",
|
|
3859
|
+
"box-flex-group",
|
|
3860
|
+
"box-lines",
|
|
3861
|
+
"box-ordinal-group",
|
|
3862
|
+
"box-orient",
|
|
3863
|
+
"box-pack",
|
|
3834
3864
|
"box-shadow",
|
|
3835
3865
|
"box-sizing",
|
|
3836
3866
|
"break-after",
|
|
3837
3867
|
"break-before",
|
|
3838
3868
|
"break-inside",
|
|
3839
|
-
"cx",
|
|
3840
|
-
"cy",
|
|
3841
3869
|
"caption-side",
|
|
3842
3870
|
"caret-color",
|
|
3843
3871
|
"clear",
|
|
@@ -3861,19 +3889,31 @@ var require_css = __commonJS({
|
|
|
3861
3889
|
"column-width",
|
|
3862
3890
|
"columns",
|
|
3863
3891
|
"contain",
|
|
3892
|
+
"contain-intrinsic-block-size",
|
|
3893
|
+
"contain-intrinsic-height",
|
|
3894
|
+
"contain-intrinsic-inline-size",
|
|
3895
|
+
"contain-intrinsic-size",
|
|
3896
|
+
"contain-intrinsic-width",
|
|
3897
|
+
"container",
|
|
3898
|
+
"container-name",
|
|
3899
|
+
"container-type",
|
|
3864
3900
|
"content",
|
|
3865
3901
|
"content-visibility",
|
|
3866
3902
|
"counter-increment",
|
|
3867
3903
|
"counter-reset",
|
|
3904
|
+
"counter-set",
|
|
3868
3905
|
"cue",
|
|
3869
3906
|
"cue-after",
|
|
3870
3907
|
"cue-before",
|
|
3871
3908
|
"cursor",
|
|
3909
|
+
"cx",
|
|
3910
|
+
"cy",
|
|
3872
3911
|
"direction",
|
|
3873
3912
|
"display",
|
|
3874
3913
|
"dominant-baseline",
|
|
3875
3914
|
"empty-cells",
|
|
3876
3915
|
"enable-background",
|
|
3916
|
+
"field-sizing",
|
|
3877
3917
|
"fill",
|
|
3878
3918
|
"fill-opacity",
|
|
3879
3919
|
"fill-rule",
|
|
@@ -3886,29 +3926,39 @@ var require_css = __commonJS({
|
|
|
3886
3926
|
"flex-shrink",
|
|
3887
3927
|
"flex-wrap",
|
|
3888
3928
|
"float",
|
|
3889
|
-
"flow",
|
|
3890
3929
|
"flood-color",
|
|
3891
3930
|
"flood-opacity",
|
|
3931
|
+
"flow",
|
|
3892
3932
|
"font",
|
|
3893
3933
|
"font-display",
|
|
3894
3934
|
"font-family",
|
|
3895
3935
|
"font-feature-settings",
|
|
3896
3936
|
"font-kerning",
|
|
3897
3937
|
"font-language-override",
|
|
3938
|
+
"font-optical-sizing",
|
|
3939
|
+
"font-palette",
|
|
3898
3940
|
"font-size",
|
|
3899
3941
|
"font-size-adjust",
|
|
3942
|
+
"font-smooth",
|
|
3900
3943
|
"font-smoothing",
|
|
3901
3944
|
"font-stretch",
|
|
3902
3945
|
"font-style",
|
|
3903
3946
|
"font-synthesis",
|
|
3947
|
+
"font-synthesis-position",
|
|
3948
|
+
"font-synthesis-small-caps",
|
|
3949
|
+
"font-synthesis-style",
|
|
3950
|
+
"font-synthesis-weight",
|
|
3904
3951
|
"font-variant",
|
|
3952
|
+
"font-variant-alternates",
|
|
3905
3953
|
"font-variant-caps",
|
|
3906
3954
|
"font-variant-east-asian",
|
|
3955
|
+
"font-variant-emoji",
|
|
3907
3956
|
"font-variant-ligatures",
|
|
3908
3957
|
"font-variant-numeric",
|
|
3909
3958
|
"font-variant-position",
|
|
3910
3959
|
"font-variation-settings",
|
|
3911
3960
|
"font-weight",
|
|
3961
|
+
"forced-color-adjust",
|
|
3912
3962
|
"gap",
|
|
3913
3963
|
"glyph-orientation-horizontal",
|
|
3914
3964
|
"glyph-orientation-vertical",
|
|
@@ -3930,14 +3980,19 @@ var require_css = __commonJS({
|
|
|
3930
3980
|
"grid-template-rows",
|
|
3931
3981
|
"hanging-punctuation",
|
|
3932
3982
|
"height",
|
|
3983
|
+
"hyphenate-character",
|
|
3984
|
+
"hyphenate-limit-chars",
|
|
3933
3985
|
"hyphens",
|
|
3934
3986
|
"icon",
|
|
3935
3987
|
"image-orientation",
|
|
3936
3988
|
"image-rendering",
|
|
3937
3989
|
"image-resolution",
|
|
3938
3990
|
"ime-mode",
|
|
3991
|
+
"initial-letter",
|
|
3992
|
+
"initial-letter-align",
|
|
3939
3993
|
"inline-size",
|
|
3940
3994
|
"inset",
|
|
3995
|
+
"inset-area",
|
|
3941
3996
|
"inset-block",
|
|
3942
3997
|
"inset-block-end",
|
|
3943
3998
|
"inset-block-start",
|
|
@@ -3945,24 +4000,20 @@ var require_css = __commonJS({
|
|
|
3945
4000
|
"inset-inline-end",
|
|
3946
4001
|
"inset-inline-start",
|
|
3947
4002
|
"isolation",
|
|
3948
|
-
"kerning",
|
|
3949
4003
|
"justify-content",
|
|
3950
4004
|
"justify-items",
|
|
3951
4005
|
"justify-self",
|
|
4006
|
+
"kerning",
|
|
3952
4007
|
"left",
|
|
3953
4008
|
"letter-spacing",
|
|
3954
4009
|
"lighting-color",
|
|
3955
4010
|
"line-break",
|
|
3956
4011
|
"line-height",
|
|
4012
|
+
"line-height-step",
|
|
3957
4013
|
"list-style",
|
|
3958
4014
|
"list-style-image",
|
|
3959
4015
|
"list-style-position",
|
|
3960
4016
|
"list-style-type",
|
|
3961
|
-
"marker",
|
|
3962
|
-
"marker-end",
|
|
3963
|
-
"marker-mid",
|
|
3964
|
-
"marker-start",
|
|
3965
|
-
"mask",
|
|
3966
4017
|
"margin",
|
|
3967
4018
|
"margin-block",
|
|
3968
4019
|
"margin-block-end",
|
|
@@ -3974,6 +4025,11 @@ var require_css = __commonJS({
|
|
|
3974
4025
|
"margin-left",
|
|
3975
4026
|
"margin-right",
|
|
3976
4027
|
"margin-top",
|
|
4028
|
+
"margin-trim",
|
|
4029
|
+
"marker",
|
|
4030
|
+
"marker-end",
|
|
4031
|
+
"marker-mid",
|
|
4032
|
+
"marker-start",
|
|
3977
4033
|
"marks",
|
|
3978
4034
|
"mask",
|
|
3979
4035
|
"mask-border",
|
|
@@ -3992,6 +4048,10 @@ var require_css = __commonJS({
|
|
|
3992
4048
|
"mask-repeat",
|
|
3993
4049
|
"mask-size",
|
|
3994
4050
|
"mask-type",
|
|
4051
|
+
"masonry-auto-flow",
|
|
4052
|
+
"math-depth",
|
|
4053
|
+
"math-shift",
|
|
4054
|
+
"math-style",
|
|
3995
4055
|
"max-block-size",
|
|
3996
4056
|
"max-height",
|
|
3997
4057
|
"max-inline-size",
|
|
@@ -4010,6 +4070,12 @@ var require_css = __commonJS({
|
|
|
4010
4070
|
"normal",
|
|
4011
4071
|
"object-fit",
|
|
4012
4072
|
"object-position",
|
|
4073
|
+
"offset",
|
|
4074
|
+
"offset-anchor",
|
|
4075
|
+
"offset-distance",
|
|
4076
|
+
"offset-path",
|
|
4077
|
+
"offset-position",
|
|
4078
|
+
"offset-rotate",
|
|
4013
4079
|
"opacity",
|
|
4014
4080
|
"order",
|
|
4015
4081
|
"orphans",
|
|
@@ -4019,9 +4085,19 @@ var require_css = __commonJS({
|
|
|
4019
4085
|
"outline-style",
|
|
4020
4086
|
"outline-width",
|
|
4021
4087
|
"overflow",
|
|
4088
|
+
"overflow-anchor",
|
|
4089
|
+
"overflow-block",
|
|
4090
|
+
"overflow-clip-margin",
|
|
4091
|
+
"overflow-inline",
|
|
4022
4092
|
"overflow-wrap",
|
|
4023
4093
|
"overflow-x",
|
|
4024
4094
|
"overflow-y",
|
|
4095
|
+
"overlay",
|
|
4096
|
+
"overscroll-behavior",
|
|
4097
|
+
"overscroll-behavior-block",
|
|
4098
|
+
"overscroll-behavior-inline",
|
|
4099
|
+
"overscroll-behavior-x",
|
|
4100
|
+
"overscroll-behavior-y",
|
|
4025
4101
|
"padding",
|
|
4026
4102
|
"padding-block",
|
|
4027
4103
|
"padding-block-end",
|
|
@@ -4033,16 +4109,24 @@ var require_css = __commonJS({
|
|
|
4033
4109
|
"padding-left",
|
|
4034
4110
|
"padding-right",
|
|
4035
4111
|
"padding-top",
|
|
4112
|
+
"page",
|
|
4036
4113
|
"page-break-after",
|
|
4037
4114
|
"page-break-before",
|
|
4038
4115
|
"page-break-inside",
|
|
4116
|
+
"paint-order",
|
|
4039
4117
|
"pause",
|
|
4040
4118
|
"pause-after",
|
|
4041
4119
|
"pause-before",
|
|
4042
4120
|
"perspective",
|
|
4043
4121
|
"perspective-origin",
|
|
4122
|
+
"place-content",
|
|
4123
|
+
"place-items",
|
|
4124
|
+
"place-self",
|
|
4044
4125
|
"pointer-events",
|
|
4045
4126
|
"position",
|
|
4127
|
+
"position-anchor",
|
|
4128
|
+
"position-visibility",
|
|
4129
|
+
"print-color-adjust",
|
|
4046
4130
|
"quotes",
|
|
4047
4131
|
"r",
|
|
4048
4132
|
"resize",
|
|
@@ -4052,7 +4136,10 @@ var require_css = __commonJS({
|
|
|
4052
4136
|
"right",
|
|
4053
4137
|
"rotate",
|
|
4054
4138
|
"row-gap",
|
|
4139
|
+
"ruby-align",
|
|
4140
|
+
"ruby-position",
|
|
4055
4141
|
"scale",
|
|
4142
|
+
"scroll-behavior",
|
|
4056
4143
|
"scroll-margin",
|
|
4057
4144
|
"scroll-margin-block",
|
|
4058
4145
|
"scroll-margin-block-end",
|
|
@@ -4078,6 +4165,9 @@ var require_css = __commonJS({
|
|
|
4078
4165
|
"scroll-snap-align",
|
|
4079
4166
|
"scroll-snap-stop",
|
|
4080
4167
|
"scroll-snap-type",
|
|
4168
|
+
"scroll-timeline",
|
|
4169
|
+
"scroll-timeline-axis",
|
|
4170
|
+
"scroll-timeline-name",
|
|
4081
4171
|
"scrollbar-color",
|
|
4082
4172
|
"scrollbar-gutter",
|
|
4083
4173
|
"scrollbar-width",
|
|
@@ -4085,6 +4175,10 @@ var require_css = __commonJS({
|
|
|
4085
4175
|
"shape-margin",
|
|
4086
4176
|
"shape-outside",
|
|
4087
4177
|
"shape-rendering",
|
|
4178
|
+
"speak",
|
|
4179
|
+
"speak-as",
|
|
4180
|
+
"src",
|
|
4181
|
+
// @font-face
|
|
4088
4182
|
"stop-color",
|
|
4089
4183
|
"stop-opacity",
|
|
4090
4184
|
"stroke",
|
|
@@ -4095,20 +4189,17 @@ var require_css = __commonJS({
|
|
|
4095
4189
|
"stroke-miterlimit",
|
|
4096
4190
|
"stroke-opacity",
|
|
4097
4191
|
"stroke-width",
|
|
4098
|
-
"speak",
|
|
4099
|
-
"speak-as",
|
|
4100
|
-
"src",
|
|
4101
|
-
// @font-face
|
|
4102
4192
|
"tab-size",
|
|
4103
4193
|
"table-layout",
|
|
4104
|
-
"text-anchor",
|
|
4105
4194
|
"text-align",
|
|
4106
4195
|
"text-align-all",
|
|
4107
4196
|
"text-align-last",
|
|
4197
|
+
"text-anchor",
|
|
4108
4198
|
"text-combine-upright",
|
|
4109
4199
|
"text-decoration",
|
|
4110
4200
|
"text-decoration-color",
|
|
4111
4201
|
"text-decoration-line",
|
|
4202
|
+
"text-decoration-skip",
|
|
4112
4203
|
"text-decoration-skip-ink",
|
|
4113
4204
|
"text-decoration-style",
|
|
4114
4205
|
"text-decoration-thickness",
|
|
@@ -4122,23 +4213,37 @@ var require_css = __commonJS({
|
|
|
4122
4213
|
"text-overflow",
|
|
4123
4214
|
"text-rendering",
|
|
4124
4215
|
"text-shadow",
|
|
4216
|
+
"text-size-adjust",
|
|
4125
4217
|
"text-transform",
|
|
4126
4218
|
"text-underline-offset",
|
|
4127
4219
|
"text-underline-position",
|
|
4220
|
+
"text-wrap",
|
|
4221
|
+
"text-wrap-mode",
|
|
4222
|
+
"text-wrap-style",
|
|
4223
|
+
"timeline-scope",
|
|
4128
4224
|
"top",
|
|
4225
|
+
"touch-action",
|
|
4129
4226
|
"transform",
|
|
4130
4227
|
"transform-box",
|
|
4131
4228
|
"transform-origin",
|
|
4132
4229
|
"transform-style",
|
|
4133
4230
|
"transition",
|
|
4231
|
+
"transition-behavior",
|
|
4134
4232
|
"transition-delay",
|
|
4135
4233
|
"transition-duration",
|
|
4136
4234
|
"transition-property",
|
|
4137
4235
|
"transition-timing-function",
|
|
4138
4236
|
"translate",
|
|
4139
4237
|
"unicode-bidi",
|
|
4238
|
+
"user-modify",
|
|
4239
|
+
"user-select",
|
|
4140
4240
|
"vector-effect",
|
|
4141
4241
|
"vertical-align",
|
|
4242
|
+
"view-timeline",
|
|
4243
|
+
"view-timeline-axis",
|
|
4244
|
+
"view-timeline-inset",
|
|
4245
|
+
"view-timeline-name",
|
|
4246
|
+
"view-transition-name",
|
|
4142
4247
|
"visibility",
|
|
4143
4248
|
"voice-balance",
|
|
4144
4249
|
"voice-duration",
|
|
@@ -4149,6 +4254,7 @@ var require_css = __commonJS({
|
|
|
4149
4254
|
"voice-stress",
|
|
4150
4255
|
"voice-volume",
|
|
4151
4256
|
"white-space",
|
|
4257
|
+
"white-space-collapse",
|
|
4152
4258
|
"widows",
|
|
4153
4259
|
"width",
|
|
4154
4260
|
"will-change",
|
|
@@ -4158,7 +4264,8 @@ var require_css = __commonJS({
|
|
|
4158
4264
|
"writing-mode",
|
|
4159
4265
|
"x",
|
|
4160
4266
|
"y",
|
|
4161
|
-
"z-index"
|
|
4267
|
+
"z-index",
|
|
4268
|
+
"zoom"
|
|
4162
4269
|
].sort().reverse();
|
|
4163
4270
|
function css(hljs) {
|
|
4164
4271
|
const regex = hljs.regex;
|
|
@@ -4469,8 +4576,8 @@ var require_markdown = __commonJS({
|
|
|
4469
4576
|
ITALIC,
|
|
4470
4577
|
BOLD_WITHOUT_ITALIC,
|
|
4471
4578
|
ITALIC_WITHOUT_BOLD
|
|
4472
|
-
].forEach((
|
|
4473
|
-
|
|
4579
|
+
].forEach((m3) => {
|
|
4580
|
+
m3.contains = m3.contains.concat(CONTAINABLE);
|
|
4474
4581
|
});
|
|
4475
4582
|
CONTAINABLE = CONTAINABLE.concat(BOLD, ITALIC);
|
|
4476
4583
|
const HEADER = {
|
|
@@ -4920,7 +5027,7 @@ var require_ruby = __commonJS({
|
|
|
4920
5027
|
},
|
|
4921
5028
|
{
|
|
4922
5029
|
className: "params",
|
|
4923
|
-
begin:
|
|
5030
|
+
begin: /\|(?!=)/,
|
|
4924
5031
|
end: /\|/,
|
|
4925
5032
|
excludeBegin: true,
|
|
4926
5033
|
excludeEnd: true,
|
|
@@ -5399,7 +5506,7 @@ var require_java = __commonJS({
|
|
|
5399
5506
|
};
|
|
5400
5507
|
function recurRegex(re, substitution, depth) {
|
|
5401
5508
|
if (depth === -1) return "";
|
|
5402
|
-
return re.replace(substitution, (
|
|
5509
|
+
return re.replace(substitution, (_3) => {
|
|
5403
5510
|
return recurRegex(re, substitution, depth - 1);
|
|
5404
5511
|
});
|
|
5405
5512
|
}
|
|
@@ -5450,7 +5557,8 @@ var require_java = __commonJS({
|
|
|
5450
5557
|
"sealed",
|
|
5451
5558
|
"yield",
|
|
5452
5559
|
"permits",
|
|
5453
|
-
"goto"
|
|
5560
|
+
"goto",
|
|
5561
|
+
"when"
|
|
5454
5562
|
];
|
|
5455
5563
|
const BUILT_INS = [
|
|
5456
5564
|
"super",
|
|
@@ -5673,7 +5781,9 @@ var require_javascript = __commonJS({
|
|
|
5673
5781
|
"import",
|
|
5674
5782
|
"from",
|
|
5675
5783
|
"export",
|
|
5676
|
-
"extends"
|
|
5784
|
+
"extends",
|
|
5785
|
+
// It's reached stage 3, which is "recommended for implementation":
|
|
5786
|
+
"using"
|
|
5677
5787
|
];
|
|
5678
5788
|
var LITERALS = [
|
|
5679
5789
|
"true",
|
|
@@ -5820,14 +5930,14 @@ var require_javascript = __commonJS({
|
|
|
5820
5930
|
response.ignoreMatch();
|
|
5821
5931
|
}
|
|
5822
5932
|
}
|
|
5823
|
-
let
|
|
5933
|
+
let m3;
|
|
5824
5934
|
const afterMatch = match.input.substring(afterMatchIndex);
|
|
5825
|
-
if (
|
|
5935
|
+
if (m3 = afterMatch.match(/^\s*=/)) {
|
|
5826
5936
|
response.ignoreMatch();
|
|
5827
5937
|
return;
|
|
5828
5938
|
}
|
|
5829
|
-
if (
|
|
5830
|
-
if (
|
|
5939
|
+
if (m3 = afterMatch.match(/^\s+extends\s+/)) {
|
|
5940
|
+
if (m3.index === 0) {
|
|
5831
5941
|
response.ignoreMatch();
|
|
5832
5942
|
return;
|
|
5833
5943
|
}
|
|
@@ -6003,7 +6113,7 @@ var require_javascript = __commonJS({
|
|
|
6003
6113
|
className: "params",
|
|
6004
6114
|
// convert this to negative lookbehind in v12
|
|
6005
6115
|
begin: /(\s*)\(/,
|
|
6006
|
-
// to match the parms with
|
|
6116
|
+
// to match the parms with
|
|
6007
6117
|
end: /\)/,
|
|
6008
6118
|
excludeBegin: true,
|
|
6009
6119
|
excludeEnd: true,
|
|
@@ -6116,7 +6226,7 @@ var require_javascript = __commonJS({
|
|
|
6116
6226
|
...BUILT_IN_GLOBALS,
|
|
6117
6227
|
"super",
|
|
6118
6228
|
"import"
|
|
6119
|
-
].map((
|
|
6229
|
+
].map((x2) => `${x2}\\s*\\(`)),
|
|
6120
6230
|
IDENT_RE$1,
|
|
6121
6231
|
regex.lookahead(/\s*\(/)
|
|
6122
6232
|
),
|
|
@@ -6199,8 +6309,8 @@ var require_javascript = __commonJS({
|
|
|
6199
6309
|
NUMBER,
|
|
6200
6310
|
CLASS_REFERENCE,
|
|
6201
6311
|
{
|
|
6202
|
-
|
|
6203
|
-
|
|
6312
|
+
scope: "attr",
|
|
6313
|
+
match: IDENT_RE$1 + regex.lookahead(":"),
|
|
6204
6314
|
relevance: 0
|
|
6205
6315
|
},
|
|
6206
6316
|
FUNCTION_VARIABLE,
|
|
@@ -6938,7 +7048,9 @@ var require_less = __commonJS({
|
|
|
6938
7048
|
"align-self",
|
|
6939
7049
|
"alignment-baseline",
|
|
6940
7050
|
"all",
|
|
7051
|
+
"anchor-name",
|
|
6941
7052
|
"animation",
|
|
7053
|
+
"animation-composition",
|
|
6942
7054
|
"animation-delay",
|
|
6943
7055
|
"animation-direction",
|
|
6944
7056
|
"animation-duration",
|
|
@@ -6946,8 +7058,14 @@ var require_less = __commonJS({
|
|
|
6946
7058
|
"animation-iteration-count",
|
|
6947
7059
|
"animation-name",
|
|
6948
7060
|
"animation-play-state",
|
|
7061
|
+
"animation-range",
|
|
7062
|
+
"animation-range-end",
|
|
7063
|
+
"animation-range-start",
|
|
7064
|
+
"animation-timeline",
|
|
6949
7065
|
"animation-timing-function",
|
|
6950
7066
|
"appearance",
|
|
7067
|
+
"aspect-ratio",
|
|
7068
|
+
"backdrop-filter",
|
|
6951
7069
|
"backface-visibility",
|
|
6952
7070
|
"background",
|
|
6953
7071
|
"background-attachment",
|
|
@@ -6957,6 +7075,8 @@ var require_less = __commonJS({
|
|
|
6957
7075
|
"background-image",
|
|
6958
7076
|
"background-origin",
|
|
6959
7077
|
"background-position",
|
|
7078
|
+
"background-position-x",
|
|
7079
|
+
"background-position-y",
|
|
6960
7080
|
"background-repeat",
|
|
6961
7081
|
"background-size",
|
|
6962
7082
|
"baseline-shift",
|
|
@@ -6982,6 +7102,8 @@ var require_less = __commonJS({
|
|
|
6982
7102
|
"border-bottom-width",
|
|
6983
7103
|
"border-collapse",
|
|
6984
7104
|
"border-color",
|
|
7105
|
+
"border-end-end-radius",
|
|
7106
|
+
"border-end-start-radius",
|
|
6985
7107
|
"border-image",
|
|
6986
7108
|
"border-image-outset",
|
|
6987
7109
|
"border-image-repeat",
|
|
@@ -7006,8 +7128,6 @@ var require_less = __commonJS({
|
|
|
7006
7128
|
"border-left-width",
|
|
7007
7129
|
"border-radius",
|
|
7008
7130
|
"border-right",
|
|
7009
|
-
"border-end-end-radius",
|
|
7010
|
-
"border-end-start-radius",
|
|
7011
7131
|
"border-right-color",
|
|
7012
7132
|
"border-right-style",
|
|
7013
7133
|
"border-right-width",
|
|
@@ -7023,14 +7143,20 @@ var require_less = __commonJS({
|
|
|
7023
7143
|
"border-top-width",
|
|
7024
7144
|
"border-width",
|
|
7025
7145
|
"bottom",
|
|
7146
|
+
"box-align",
|
|
7026
7147
|
"box-decoration-break",
|
|
7148
|
+
"box-direction",
|
|
7149
|
+
"box-flex",
|
|
7150
|
+
"box-flex-group",
|
|
7151
|
+
"box-lines",
|
|
7152
|
+
"box-ordinal-group",
|
|
7153
|
+
"box-orient",
|
|
7154
|
+
"box-pack",
|
|
7027
7155
|
"box-shadow",
|
|
7028
7156
|
"box-sizing",
|
|
7029
7157
|
"break-after",
|
|
7030
7158
|
"break-before",
|
|
7031
7159
|
"break-inside",
|
|
7032
|
-
"cx",
|
|
7033
|
-
"cy",
|
|
7034
7160
|
"caption-side",
|
|
7035
7161
|
"caret-color",
|
|
7036
7162
|
"clear",
|
|
@@ -7054,19 +7180,31 @@ var require_less = __commonJS({
|
|
|
7054
7180
|
"column-width",
|
|
7055
7181
|
"columns",
|
|
7056
7182
|
"contain",
|
|
7183
|
+
"contain-intrinsic-block-size",
|
|
7184
|
+
"contain-intrinsic-height",
|
|
7185
|
+
"contain-intrinsic-inline-size",
|
|
7186
|
+
"contain-intrinsic-size",
|
|
7187
|
+
"contain-intrinsic-width",
|
|
7188
|
+
"container",
|
|
7189
|
+
"container-name",
|
|
7190
|
+
"container-type",
|
|
7057
7191
|
"content",
|
|
7058
7192
|
"content-visibility",
|
|
7059
7193
|
"counter-increment",
|
|
7060
7194
|
"counter-reset",
|
|
7195
|
+
"counter-set",
|
|
7061
7196
|
"cue",
|
|
7062
7197
|
"cue-after",
|
|
7063
7198
|
"cue-before",
|
|
7064
7199
|
"cursor",
|
|
7200
|
+
"cx",
|
|
7201
|
+
"cy",
|
|
7065
7202
|
"direction",
|
|
7066
7203
|
"display",
|
|
7067
7204
|
"dominant-baseline",
|
|
7068
7205
|
"empty-cells",
|
|
7069
7206
|
"enable-background",
|
|
7207
|
+
"field-sizing",
|
|
7070
7208
|
"fill",
|
|
7071
7209
|
"fill-opacity",
|
|
7072
7210
|
"fill-rule",
|
|
@@ -7079,29 +7217,39 @@ var require_less = __commonJS({
|
|
|
7079
7217
|
"flex-shrink",
|
|
7080
7218
|
"flex-wrap",
|
|
7081
7219
|
"float",
|
|
7082
|
-
"flow",
|
|
7083
7220
|
"flood-color",
|
|
7084
7221
|
"flood-opacity",
|
|
7222
|
+
"flow",
|
|
7085
7223
|
"font",
|
|
7086
7224
|
"font-display",
|
|
7087
7225
|
"font-family",
|
|
7088
7226
|
"font-feature-settings",
|
|
7089
7227
|
"font-kerning",
|
|
7090
7228
|
"font-language-override",
|
|
7229
|
+
"font-optical-sizing",
|
|
7230
|
+
"font-palette",
|
|
7091
7231
|
"font-size",
|
|
7092
7232
|
"font-size-adjust",
|
|
7233
|
+
"font-smooth",
|
|
7093
7234
|
"font-smoothing",
|
|
7094
7235
|
"font-stretch",
|
|
7095
7236
|
"font-style",
|
|
7096
7237
|
"font-synthesis",
|
|
7238
|
+
"font-synthesis-position",
|
|
7239
|
+
"font-synthesis-small-caps",
|
|
7240
|
+
"font-synthesis-style",
|
|
7241
|
+
"font-synthesis-weight",
|
|
7097
7242
|
"font-variant",
|
|
7243
|
+
"font-variant-alternates",
|
|
7098
7244
|
"font-variant-caps",
|
|
7099
7245
|
"font-variant-east-asian",
|
|
7246
|
+
"font-variant-emoji",
|
|
7100
7247
|
"font-variant-ligatures",
|
|
7101
7248
|
"font-variant-numeric",
|
|
7102
7249
|
"font-variant-position",
|
|
7103
7250
|
"font-variation-settings",
|
|
7104
7251
|
"font-weight",
|
|
7252
|
+
"forced-color-adjust",
|
|
7105
7253
|
"gap",
|
|
7106
7254
|
"glyph-orientation-horizontal",
|
|
7107
7255
|
"glyph-orientation-vertical",
|
|
@@ -7123,14 +7271,19 @@ var require_less = __commonJS({
|
|
|
7123
7271
|
"grid-template-rows",
|
|
7124
7272
|
"hanging-punctuation",
|
|
7125
7273
|
"height",
|
|
7274
|
+
"hyphenate-character",
|
|
7275
|
+
"hyphenate-limit-chars",
|
|
7126
7276
|
"hyphens",
|
|
7127
7277
|
"icon",
|
|
7128
7278
|
"image-orientation",
|
|
7129
7279
|
"image-rendering",
|
|
7130
7280
|
"image-resolution",
|
|
7131
7281
|
"ime-mode",
|
|
7282
|
+
"initial-letter",
|
|
7283
|
+
"initial-letter-align",
|
|
7132
7284
|
"inline-size",
|
|
7133
7285
|
"inset",
|
|
7286
|
+
"inset-area",
|
|
7134
7287
|
"inset-block",
|
|
7135
7288
|
"inset-block-end",
|
|
7136
7289
|
"inset-block-start",
|
|
@@ -7138,24 +7291,20 @@ var require_less = __commonJS({
|
|
|
7138
7291
|
"inset-inline-end",
|
|
7139
7292
|
"inset-inline-start",
|
|
7140
7293
|
"isolation",
|
|
7141
|
-
"kerning",
|
|
7142
7294
|
"justify-content",
|
|
7143
7295
|
"justify-items",
|
|
7144
7296
|
"justify-self",
|
|
7297
|
+
"kerning",
|
|
7145
7298
|
"left",
|
|
7146
7299
|
"letter-spacing",
|
|
7147
7300
|
"lighting-color",
|
|
7148
7301
|
"line-break",
|
|
7149
7302
|
"line-height",
|
|
7303
|
+
"line-height-step",
|
|
7150
7304
|
"list-style",
|
|
7151
7305
|
"list-style-image",
|
|
7152
7306
|
"list-style-position",
|
|
7153
7307
|
"list-style-type",
|
|
7154
|
-
"marker",
|
|
7155
|
-
"marker-end",
|
|
7156
|
-
"marker-mid",
|
|
7157
|
-
"marker-start",
|
|
7158
|
-
"mask",
|
|
7159
7308
|
"margin",
|
|
7160
7309
|
"margin-block",
|
|
7161
7310
|
"margin-block-end",
|
|
@@ -7167,6 +7316,11 @@ var require_less = __commonJS({
|
|
|
7167
7316
|
"margin-left",
|
|
7168
7317
|
"margin-right",
|
|
7169
7318
|
"margin-top",
|
|
7319
|
+
"margin-trim",
|
|
7320
|
+
"marker",
|
|
7321
|
+
"marker-end",
|
|
7322
|
+
"marker-mid",
|
|
7323
|
+
"marker-start",
|
|
7170
7324
|
"marks",
|
|
7171
7325
|
"mask",
|
|
7172
7326
|
"mask-border",
|
|
@@ -7185,6 +7339,10 @@ var require_less = __commonJS({
|
|
|
7185
7339
|
"mask-repeat",
|
|
7186
7340
|
"mask-size",
|
|
7187
7341
|
"mask-type",
|
|
7342
|
+
"masonry-auto-flow",
|
|
7343
|
+
"math-depth",
|
|
7344
|
+
"math-shift",
|
|
7345
|
+
"math-style",
|
|
7188
7346
|
"max-block-size",
|
|
7189
7347
|
"max-height",
|
|
7190
7348
|
"max-inline-size",
|
|
@@ -7203,6 +7361,12 @@ var require_less = __commonJS({
|
|
|
7203
7361
|
"normal",
|
|
7204
7362
|
"object-fit",
|
|
7205
7363
|
"object-position",
|
|
7364
|
+
"offset",
|
|
7365
|
+
"offset-anchor",
|
|
7366
|
+
"offset-distance",
|
|
7367
|
+
"offset-path",
|
|
7368
|
+
"offset-position",
|
|
7369
|
+
"offset-rotate",
|
|
7206
7370
|
"opacity",
|
|
7207
7371
|
"order",
|
|
7208
7372
|
"orphans",
|
|
@@ -7212,9 +7376,19 @@ var require_less = __commonJS({
|
|
|
7212
7376
|
"outline-style",
|
|
7213
7377
|
"outline-width",
|
|
7214
7378
|
"overflow",
|
|
7379
|
+
"overflow-anchor",
|
|
7380
|
+
"overflow-block",
|
|
7381
|
+
"overflow-clip-margin",
|
|
7382
|
+
"overflow-inline",
|
|
7215
7383
|
"overflow-wrap",
|
|
7216
7384
|
"overflow-x",
|
|
7217
7385
|
"overflow-y",
|
|
7386
|
+
"overlay",
|
|
7387
|
+
"overscroll-behavior",
|
|
7388
|
+
"overscroll-behavior-block",
|
|
7389
|
+
"overscroll-behavior-inline",
|
|
7390
|
+
"overscroll-behavior-x",
|
|
7391
|
+
"overscroll-behavior-y",
|
|
7218
7392
|
"padding",
|
|
7219
7393
|
"padding-block",
|
|
7220
7394
|
"padding-block-end",
|
|
@@ -7226,16 +7400,24 @@ var require_less = __commonJS({
|
|
|
7226
7400
|
"padding-left",
|
|
7227
7401
|
"padding-right",
|
|
7228
7402
|
"padding-top",
|
|
7403
|
+
"page",
|
|
7229
7404
|
"page-break-after",
|
|
7230
7405
|
"page-break-before",
|
|
7231
7406
|
"page-break-inside",
|
|
7407
|
+
"paint-order",
|
|
7232
7408
|
"pause",
|
|
7233
7409
|
"pause-after",
|
|
7234
7410
|
"pause-before",
|
|
7235
7411
|
"perspective",
|
|
7236
7412
|
"perspective-origin",
|
|
7413
|
+
"place-content",
|
|
7414
|
+
"place-items",
|
|
7415
|
+
"place-self",
|
|
7237
7416
|
"pointer-events",
|
|
7238
7417
|
"position",
|
|
7418
|
+
"position-anchor",
|
|
7419
|
+
"position-visibility",
|
|
7420
|
+
"print-color-adjust",
|
|
7239
7421
|
"quotes",
|
|
7240
7422
|
"r",
|
|
7241
7423
|
"resize",
|
|
@@ -7245,7 +7427,10 @@ var require_less = __commonJS({
|
|
|
7245
7427
|
"right",
|
|
7246
7428
|
"rotate",
|
|
7247
7429
|
"row-gap",
|
|
7430
|
+
"ruby-align",
|
|
7431
|
+
"ruby-position",
|
|
7248
7432
|
"scale",
|
|
7433
|
+
"scroll-behavior",
|
|
7249
7434
|
"scroll-margin",
|
|
7250
7435
|
"scroll-margin-block",
|
|
7251
7436
|
"scroll-margin-block-end",
|
|
@@ -7271,6 +7456,9 @@ var require_less = __commonJS({
|
|
|
7271
7456
|
"scroll-snap-align",
|
|
7272
7457
|
"scroll-snap-stop",
|
|
7273
7458
|
"scroll-snap-type",
|
|
7459
|
+
"scroll-timeline",
|
|
7460
|
+
"scroll-timeline-axis",
|
|
7461
|
+
"scroll-timeline-name",
|
|
7274
7462
|
"scrollbar-color",
|
|
7275
7463
|
"scrollbar-gutter",
|
|
7276
7464
|
"scrollbar-width",
|
|
@@ -7278,6 +7466,10 @@ var require_less = __commonJS({
|
|
|
7278
7466
|
"shape-margin",
|
|
7279
7467
|
"shape-outside",
|
|
7280
7468
|
"shape-rendering",
|
|
7469
|
+
"speak",
|
|
7470
|
+
"speak-as",
|
|
7471
|
+
"src",
|
|
7472
|
+
// @font-face
|
|
7281
7473
|
"stop-color",
|
|
7282
7474
|
"stop-opacity",
|
|
7283
7475
|
"stroke",
|
|
@@ -7288,20 +7480,17 @@ var require_less = __commonJS({
|
|
|
7288
7480
|
"stroke-miterlimit",
|
|
7289
7481
|
"stroke-opacity",
|
|
7290
7482
|
"stroke-width",
|
|
7291
|
-
"speak",
|
|
7292
|
-
"speak-as",
|
|
7293
|
-
"src",
|
|
7294
|
-
// @font-face
|
|
7295
7483
|
"tab-size",
|
|
7296
7484
|
"table-layout",
|
|
7297
|
-
"text-anchor",
|
|
7298
7485
|
"text-align",
|
|
7299
7486
|
"text-align-all",
|
|
7300
7487
|
"text-align-last",
|
|
7488
|
+
"text-anchor",
|
|
7301
7489
|
"text-combine-upright",
|
|
7302
7490
|
"text-decoration",
|
|
7303
7491
|
"text-decoration-color",
|
|
7304
7492
|
"text-decoration-line",
|
|
7493
|
+
"text-decoration-skip",
|
|
7305
7494
|
"text-decoration-skip-ink",
|
|
7306
7495
|
"text-decoration-style",
|
|
7307
7496
|
"text-decoration-thickness",
|
|
@@ -7315,23 +7504,37 @@ var require_less = __commonJS({
|
|
|
7315
7504
|
"text-overflow",
|
|
7316
7505
|
"text-rendering",
|
|
7317
7506
|
"text-shadow",
|
|
7507
|
+
"text-size-adjust",
|
|
7318
7508
|
"text-transform",
|
|
7319
7509
|
"text-underline-offset",
|
|
7320
7510
|
"text-underline-position",
|
|
7511
|
+
"text-wrap",
|
|
7512
|
+
"text-wrap-mode",
|
|
7513
|
+
"text-wrap-style",
|
|
7514
|
+
"timeline-scope",
|
|
7321
7515
|
"top",
|
|
7516
|
+
"touch-action",
|
|
7322
7517
|
"transform",
|
|
7323
7518
|
"transform-box",
|
|
7324
7519
|
"transform-origin",
|
|
7325
7520
|
"transform-style",
|
|
7326
7521
|
"transition",
|
|
7522
|
+
"transition-behavior",
|
|
7327
7523
|
"transition-delay",
|
|
7328
7524
|
"transition-duration",
|
|
7329
7525
|
"transition-property",
|
|
7330
7526
|
"transition-timing-function",
|
|
7331
7527
|
"translate",
|
|
7332
7528
|
"unicode-bidi",
|
|
7529
|
+
"user-modify",
|
|
7530
|
+
"user-select",
|
|
7333
7531
|
"vector-effect",
|
|
7334
7532
|
"vertical-align",
|
|
7533
|
+
"view-timeline",
|
|
7534
|
+
"view-timeline-axis",
|
|
7535
|
+
"view-timeline-inset",
|
|
7536
|
+
"view-timeline-name",
|
|
7537
|
+
"view-transition-name",
|
|
7335
7538
|
"visibility",
|
|
7336
7539
|
"voice-balance",
|
|
7337
7540
|
"voice-duration",
|
|
@@ -7342,6 +7545,7 @@ var require_less = __commonJS({
|
|
|
7342
7545
|
"voice-stress",
|
|
7343
7546
|
"voice-volume",
|
|
7344
7547
|
"white-space",
|
|
7548
|
+
"white-space-collapse",
|
|
7345
7549
|
"widows",
|
|
7346
7550
|
"width",
|
|
7347
7551
|
"will-change",
|
|
@@ -7351,7 +7555,8 @@ var require_less = __commonJS({
|
|
|
7351
7555
|
"writing-mode",
|
|
7352
7556
|
"x",
|
|
7353
7557
|
"y",
|
|
7354
|
-
"z-index"
|
|
7558
|
+
"z-index",
|
|
7559
|
+
"zoom"
|
|
7355
7560
|
].sort().reverse();
|
|
7356
7561
|
var PSEUDO_SELECTORS = PSEUDO_CLASSES.concat(PSEUDO_ELEMENTS).sort().reverse();
|
|
7357
7562
|
function less(hljs) {
|
|
@@ -7592,6 +7797,7 @@ var require_lua = __commonJS({
|
|
|
7592
7797
|
];
|
|
7593
7798
|
return {
|
|
7594
7799
|
name: "Lua",
|
|
7800
|
+
aliases: ["pluto"],
|
|
7595
7801
|
keywords: {
|
|
7596
7802
|
$pattern: hljs.UNDERSCORE_IDENT_RE,
|
|
7597
7803
|
literal: "true false nil",
|
|
@@ -7662,7 +7868,11 @@ var require_makefile = __commonJS({
|
|
|
7662
7868
|
begin: /\$\([\w-]+\s/,
|
|
7663
7869
|
end: /\)/,
|
|
7664
7870
|
keywords: { built_in: "subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value" },
|
|
7665
|
-
contains: [
|
|
7871
|
+
contains: [
|
|
7872
|
+
VARIABLE,
|
|
7873
|
+
QUOTE_STRING
|
|
7874
|
+
// Added QUOTE_STRING as they can be a part of functions
|
|
7875
|
+
]
|
|
7666
7876
|
};
|
|
7667
7877
|
const ASSIGNMENT = { begin: "^" + hljs.UNDERSCORE_IDENT_RE + "\\s*(?=[:+?]?=)" };
|
|
7668
7878
|
const META = {
|
|
@@ -8461,6 +8671,10 @@ var require_php = __commonJS({
|
|
|
8461
8671
|
/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,
|
|
8462
8672
|
NOT_PERL_ETC
|
|
8463
8673
|
);
|
|
8674
|
+
const UPCASE_NAME_RE = regex.concat(
|
|
8675
|
+
/[A-Z]+/,
|
|
8676
|
+
NOT_PERL_ETC
|
|
8677
|
+
);
|
|
8464
8678
|
const VARIABLE = {
|
|
8465
8679
|
scope: "variable",
|
|
8466
8680
|
match: "\\$+" + IDENT_RE
|
|
@@ -8496,11 +8710,11 @@ var require_php = __commonJS({
|
|
|
8496
8710
|
begin: /<<<[ \t]*(?:(\w+)|"(\w+)")\n/,
|
|
8497
8711
|
end: /[ \t]*(\w+)\b/,
|
|
8498
8712
|
contains: hljs.QUOTE_STRING_MODE.contains.concat(SUBST),
|
|
8499
|
-
"on:begin": (
|
|
8500
|
-
resp.data._beginMatch =
|
|
8713
|
+
"on:begin": (m3, resp) => {
|
|
8714
|
+
resp.data._beginMatch = m3[1] || m3[2];
|
|
8501
8715
|
},
|
|
8502
|
-
"on:end": (
|
|
8503
|
-
if (resp.data._beginMatch !==
|
|
8716
|
+
"on:end": (m3, resp) => {
|
|
8717
|
+
if (resp.data._beginMatch !== m3[1]) resp.ignoreMatch();
|
|
8504
8718
|
}
|
|
8505
8719
|
};
|
|
8506
8720
|
const NOWDOC = hljs.END_SAME_AS_BEGIN({
|
|
@@ -8867,7 +9081,13 @@ var require_php = __commonJS({
|
|
|
8867
9081
|
CONSTRUCTOR_CALL
|
|
8868
9082
|
];
|
|
8869
9083
|
const ATTRIBUTES = {
|
|
8870
|
-
begin: regex.concat(
|
|
9084
|
+
begin: regex.concat(
|
|
9085
|
+
/#\[\s*\\?/,
|
|
9086
|
+
regex.either(
|
|
9087
|
+
PASCAL_CASE_CLASS_NAME_RE,
|
|
9088
|
+
UPCASE_NAME_RE
|
|
9089
|
+
)
|
|
9090
|
+
),
|
|
8871
9091
|
beginScope: "meta",
|
|
8872
9092
|
end: /]/,
|
|
8873
9093
|
endScope: "meta",
|
|
@@ -8897,7 +9117,10 @@ var require_php = __commonJS({
|
|
|
8897
9117
|
...ATTRIBUTE_CONTAINS,
|
|
8898
9118
|
{
|
|
8899
9119
|
scope: "meta",
|
|
8900
|
-
|
|
9120
|
+
variants: [
|
|
9121
|
+
{ match: PASCAL_CASE_CLASS_NAME_RE },
|
|
9122
|
+
{ match: UPCASE_NAME_RE }
|
|
9123
|
+
]
|
|
8901
9124
|
}
|
|
8902
9125
|
]
|
|
8903
9126
|
};
|
|
@@ -8977,6 +9200,7 @@ var require_php = __commonJS({
|
|
|
8977
9200
|
keywords: KEYWORDS,
|
|
8978
9201
|
contains: [
|
|
8979
9202
|
"self",
|
|
9203
|
+
ATTRIBUTES,
|
|
8980
9204
|
VARIABLE,
|
|
8981
9205
|
LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,
|
|
8982
9206
|
hljs.C_BLOCK_COMMENT_MODE,
|
|
@@ -9970,16 +10194,26 @@ var require_rust = __commonJS({
|
|
|
9970
10194
|
illegal: null
|
|
9971
10195
|
}),
|
|
9972
10196
|
{
|
|
9973
|
-
className: "
|
|
10197
|
+
className: "symbol",
|
|
10198
|
+
// negative lookahead to avoid matching `'`
|
|
10199
|
+
begin: /'[a-zA-Z_][a-zA-Z0-9_]*(?!')/
|
|
10200
|
+
},
|
|
10201
|
+
{
|
|
10202
|
+
scope: "string",
|
|
9974
10203
|
variants: [
|
|
9975
10204
|
{ begin: /b?r(#*)"(.|\n)*?"\1(?!#)/ },
|
|
9976
|
-
{
|
|
10205
|
+
{
|
|
10206
|
+
begin: /b?'/,
|
|
10207
|
+
end: /'/,
|
|
10208
|
+
contains: [
|
|
10209
|
+
{
|
|
10210
|
+
scope: "char.escape",
|
|
10211
|
+
match: /\\('|\w|x\w{2}|u\w{4}|U\w{8})/
|
|
10212
|
+
}
|
|
10213
|
+
]
|
|
10214
|
+
}
|
|
9977
10215
|
]
|
|
9978
10216
|
},
|
|
9979
|
-
{
|
|
9980
|
-
className: "symbol",
|
|
9981
|
-
begin: /'[a-zA-Z_][a-zA-Z0-9_]*/
|
|
9982
|
-
},
|
|
9983
10217
|
{
|
|
9984
10218
|
className: "number",
|
|
9985
10219
|
variants: [
|
|
@@ -10386,7 +10620,9 @@ var require_scss = __commonJS({
|
|
|
10386
10620
|
"align-self",
|
|
10387
10621
|
"alignment-baseline",
|
|
10388
10622
|
"all",
|
|
10623
|
+
"anchor-name",
|
|
10389
10624
|
"animation",
|
|
10625
|
+
"animation-composition",
|
|
10390
10626
|
"animation-delay",
|
|
10391
10627
|
"animation-direction",
|
|
10392
10628
|
"animation-duration",
|
|
@@ -10394,8 +10630,14 @@ var require_scss = __commonJS({
|
|
|
10394
10630
|
"animation-iteration-count",
|
|
10395
10631
|
"animation-name",
|
|
10396
10632
|
"animation-play-state",
|
|
10633
|
+
"animation-range",
|
|
10634
|
+
"animation-range-end",
|
|
10635
|
+
"animation-range-start",
|
|
10636
|
+
"animation-timeline",
|
|
10397
10637
|
"animation-timing-function",
|
|
10398
10638
|
"appearance",
|
|
10639
|
+
"aspect-ratio",
|
|
10640
|
+
"backdrop-filter",
|
|
10399
10641
|
"backface-visibility",
|
|
10400
10642
|
"background",
|
|
10401
10643
|
"background-attachment",
|
|
@@ -10405,6 +10647,8 @@ var require_scss = __commonJS({
|
|
|
10405
10647
|
"background-image",
|
|
10406
10648
|
"background-origin",
|
|
10407
10649
|
"background-position",
|
|
10650
|
+
"background-position-x",
|
|
10651
|
+
"background-position-y",
|
|
10408
10652
|
"background-repeat",
|
|
10409
10653
|
"background-size",
|
|
10410
10654
|
"baseline-shift",
|
|
@@ -10430,6 +10674,8 @@ var require_scss = __commonJS({
|
|
|
10430
10674
|
"border-bottom-width",
|
|
10431
10675
|
"border-collapse",
|
|
10432
10676
|
"border-color",
|
|
10677
|
+
"border-end-end-radius",
|
|
10678
|
+
"border-end-start-radius",
|
|
10433
10679
|
"border-image",
|
|
10434
10680
|
"border-image-outset",
|
|
10435
10681
|
"border-image-repeat",
|
|
@@ -10454,8 +10700,6 @@ var require_scss = __commonJS({
|
|
|
10454
10700
|
"border-left-width",
|
|
10455
10701
|
"border-radius",
|
|
10456
10702
|
"border-right",
|
|
10457
|
-
"border-end-end-radius",
|
|
10458
|
-
"border-end-start-radius",
|
|
10459
10703
|
"border-right-color",
|
|
10460
10704
|
"border-right-style",
|
|
10461
10705
|
"border-right-width",
|
|
@@ -10471,14 +10715,20 @@ var require_scss = __commonJS({
|
|
|
10471
10715
|
"border-top-width",
|
|
10472
10716
|
"border-width",
|
|
10473
10717
|
"bottom",
|
|
10718
|
+
"box-align",
|
|
10474
10719
|
"box-decoration-break",
|
|
10720
|
+
"box-direction",
|
|
10721
|
+
"box-flex",
|
|
10722
|
+
"box-flex-group",
|
|
10723
|
+
"box-lines",
|
|
10724
|
+
"box-ordinal-group",
|
|
10725
|
+
"box-orient",
|
|
10726
|
+
"box-pack",
|
|
10475
10727
|
"box-shadow",
|
|
10476
10728
|
"box-sizing",
|
|
10477
10729
|
"break-after",
|
|
10478
10730
|
"break-before",
|
|
10479
10731
|
"break-inside",
|
|
10480
|
-
"cx",
|
|
10481
|
-
"cy",
|
|
10482
10732
|
"caption-side",
|
|
10483
10733
|
"caret-color",
|
|
10484
10734
|
"clear",
|
|
@@ -10502,19 +10752,31 @@ var require_scss = __commonJS({
|
|
|
10502
10752
|
"column-width",
|
|
10503
10753
|
"columns",
|
|
10504
10754
|
"contain",
|
|
10755
|
+
"contain-intrinsic-block-size",
|
|
10756
|
+
"contain-intrinsic-height",
|
|
10757
|
+
"contain-intrinsic-inline-size",
|
|
10758
|
+
"contain-intrinsic-size",
|
|
10759
|
+
"contain-intrinsic-width",
|
|
10760
|
+
"container",
|
|
10761
|
+
"container-name",
|
|
10762
|
+
"container-type",
|
|
10505
10763
|
"content",
|
|
10506
10764
|
"content-visibility",
|
|
10507
10765
|
"counter-increment",
|
|
10508
10766
|
"counter-reset",
|
|
10767
|
+
"counter-set",
|
|
10509
10768
|
"cue",
|
|
10510
10769
|
"cue-after",
|
|
10511
10770
|
"cue-before",
|
|
10512
10771
|
"cursor",
|
|
10772
|
+
"cx",
|
|
10773
|
+
"cy",
|
|
10513
10774
|
"direction",
|
|
10514
10775
|
"display",
|
|
10515
10776
|
"dominant-baseline",
|
|
10516
10777
|
"empty-cells",
|
|
10517
10778
|
"enable-background",
|
|
10779
|
+
"field-sizing",
|
|
10518
10780
|
"fill",
|
|
10519
10781
|
"fill-opacity",
|
|
10520
10782
|
"fill-rule",
|
|
@@ -10527,29 +10789,39 @@ var require_scss = __commonJS({
|
|
|
10527
10789
|
"flex-shrink",
|
|
10528
10790
|
"flex-wrap",
|
|
10529
10791
|
"float",
|
|
10530
|
-
"flow",
|
|
10531
10792
|
"flood-color",
|
|
10532
10793
|
"flood-opacity",
|
|
10794
|
+
"flow",
|
|
10533
10795
|
"font",
|
|
10534
10796
|
"font-display",
|
|
10535
10797
|
"font-family",
|
|
10536
10798
|
"font-feature-settings",
|
|
10537
10799
|
"font-kerning",
|
|
10538
10800
|
"font-language-override",
|
|
10801
|
+
"font-optical-sizing",
|
|
10802
|
+
"font-palette",
|
|
10539
10803
|
"font-size",
|
|
10540
10804
|
"font-size-adjust",
|
|
10805
|
+
"font-smooth",
|
|
10541
10806
|
"font-smoothing",
|
|
10542
10807
|
"font-stretch",
|
|
10543
10808
|
"font-style",
|
|
10544
10809
|
"font-synthesis",
|
|
10810
|
+
"font-synthesis-position",
|
|
10811
|
+
"font-synthesis-small-caps",
|
|
10812
|
+
"font-synthesis-style",
|
|
10813
|
+
"font-synthesis-weight",
|
|
10545
10814
|
"font-variant",
|
|
10815
|
+
"font-variant-alternates",
|
|
10546
10816
|
"font-variant-caps",
|
|
10547
10817
|
"font-variant-east-asian",
|
|
10818
|
+
"font-variant-emoji",
|
|
10548
10819
|
"font-variant-ligatures",
|
|
10549
10820
|
"font-variant-numeric",
|
|
10550
10821
|
"font-variant-position",
|
|
10551
10822
|
"font-variation-settings",
|
|
10552
10823
|
"font-weight",
|
|
10824
|
+
"forced-color-adjust",
|
|
10553
10825
|
"gap",
|
|
10554
10826
|
"glyph-orientation-horizontal",
|
|
10555
10827
|
"glyph-orientation-vertical",
|
|
@@ -10571,14 +10843,19 @@ var require_scss = __commonJS({
|
|
|
10571
10843
|
"grid-template-rows",
|
|
10572
10844
|
"hanging-punctuation",
|
|
10573
10845
|
"height",
|
|
10846
|
+
"hyphenate-character",
|
|
10847
|
+
"hyphenate-limit-chars",
|
|
10574
10848
|
"hyphens",
|
|
10575
10849
|
"icon",
|
|
10576
10850
|
"image-orientation",
|
|
10577
10851
|
"image-rendering",
|
|
10578
10852
|
"image-resolution",
|
|
10579
10853
|
"ime-mode",
|
|
10854
|
+
"initial-letter",
|
|
10855
|
+
"initial-letter-align",
|
|
10580
10856
|
"inline-size",
|
|
10581
10857
|
"inset",
|
|
10858
|
+
"inset-area",
|
|
10582
10859
|
"inset-block",
|
|
10583
10860
|
"inset-block-end",
|
|
10584
10861
|
"inset-block-start",
|
|
@@ -10586,24 +10863,20 @@ var require_scss = __commonJS({
|
|
|
10586
10863
|
"inset-inline-end",
|
|
10587
10864
|
"inset-inline-start",
|
|
10588
10865
|
"isolation",
|
|
10589
|
-
"kerning",
|
|
10590
10866
|
"justify-content",
|
|
10591
10867
|
"justify-items",
|
|
10592
10868
|
"justify-self",
|
|
10869
|
+
"kerning",
|
|
10593
10870
|
"left",
|
|
10594
10871
|
"letter-spacing",
|
|
10595
10872
|
"lighting-color",
|
|
10596
10873
|
"line-break",
|
|
10597
10874
|
"line-height",
|
|
10875
|
+
"line-height-step",
|
|
10598
10876
|
"list-style",
|
|
10599
10877
|
"list-style-image",
|
|
10600
10878
|
"list-style-position",
|
|
10601
10879
|
"list-style-type",
|
|
10602
|
-
"marker",
|
|
10603
|
-
"marker-end",
|
|
10604
|
-
"marker-mid",
|
|
10605
|
-
"marker-start",
|
|
10606
|
-
"mask",
|
|
10607
10880
|
"margin",
|
|
10608
10881
|
"margin-block",
|
|
10609
10882
|
"margin-block-end",
|
|
@@ -10615,6 +10888,11 @@ var require_scss = __commonJS({
|
|
|
10615
10888
|
"margin-left",
|
|
10616
10889
|
"margin-right",
|
|
10617
10890
|
"margin-top",
|
|
10891
|
+
"margin-trim",
|
|
10892
|
+
"marker",
|
|
10893
|
+
"marker-end",
|
|
10894
|
+
"marker-mid",
|
|
10895
|
+
"marker-start",
|
|
10618
10896
|
"marks",
|
|
10619
10897
|
"mask",
|
|
10620
10898
|
"mask-border",
|
|
@@ -10633,6 +10911,10 @@ var require_scss = __commonJS({
|
|
|
10633
10911
|
"mask-repeat",
|
|
10634
10912
|
"mask-size",
|
|
10635
10913
|
"mask-type",
|
|
10914
|
+
"masonry-auto-flow",
|
|
10915
|
+
"math-depth",
|
|
10916
|
+
"math-shift",
|
|
10917
|
+
"math-style",
|
|
10636
10918
|
"max-block-size",
|
|
10637
10919
|
"max-height",
|
|
10638
10920
|
"max-inline-size",
|
|
@@ -10651,6 +10933,12 @@ var require_scss = __commonJS({
|
|
|
10651
10933
|
"normal",
|
|
10652
10934
|
"object-fit",
|
|
10653
10935
|
"object-position",
|
|
10936
|
+
"offset",
|
|
10937
|
+
"offset-anchor",
|
|
10938
|
+
"offset-distance",
|
|
10939
|
+
"offset-path",
|
|
10940
|
+
"offset-position",
|
|
10941
|
+
"offset-rotate",
|
|
10654
10942
|
"opacity",
|
|
10655
10943
|
"order",
|
|
10656
10944
|
"orphans",
|
|
@@ -10660,9 +10948,19 @@ var require_scss = __commonJS({
|
|
|
10660
10948
|
"outline-style",
|
|
10661
10949
|
"outline-width",
|
|
10662
10950
|
"overflow",
|
|
10951
|
+
"overflow-anchor",
|
|
10952
|
+
"overflow-block",
|
|
10953
|
+
"overflow-clip-margin",
|
|
10954
|
+
"overflow-inline",
|
|
10663
10955
|
"overflow-wrap",
|
|
10664
10956
|
"overflow-x",
|
|
10665
10957
|
"overflow-y",
|
|
10958
|
+
"overlay",
|
|
10959
|
+
"overscroll-behavior",
|
|
10960
|
+
"overscroll-behavior-block",
|
|
10961
|
+
"overscroll-behavior-inline",
|
|
10962
|
+
"overscroll-behavior-x",
|
|
10963
|
+
"overscroll-behavior-y",
|
|
10666
10964
|
"padding",
|
|
10667
10965
|
"padding-block",
|
|
10668
10966
|
"padding-block-end",
|
|
@@ -10674,16 +10972,24 @@ var require_scss = __commonJS({
|
|
|
10674
10972
|
"padding-left",
|
|
10675
10973
|
"padding-right",
|
|
10676
10974
|
"padding-top",
|
|
10975
|
+
"page",
|
|
10677
10976
|
"page-break-after",
|
|
10678
10977
|
"page-break-before",
|
|
10679
10978
|
"page-break-inside",
|
|
10979
|
+
"paint-order",
|
|
10680
10980
|
"pause",
|
|
10681
10981
|
"pause-after",
|
|
10682
10982
|
"pause-before",
|
|
10683
10983
|
"perspective",
|
|
10684
10984
|
"perspective-origin",
|
|
10985
|
+
"place-content",
|
|
10986
|
+
"place-items",
|
|
10987
|
+
"place-self",
|
|
10685
10988
|
"pointer-events",
|
|
10686
10989
|
"position",
|
|
10990
|
+
"position-anchor",
|
|
10991
|
+
"position-visibility",
|
|
10992
|
+
"print-color-adjust",
|
|
10687
10993
|
"quotes",
|
|
10688
10994
|
"r",
|
|
10689
10995
|
"resize",
|
|
@@ -10693,7 +10999,10 @@ var require_scss = __commonJS({
|
|
|
10693
10999
|
"right",
|
|
10694
11000
|
"rotate",
|
|
10695
11001
|
"row-gap",
|
|
11002
|
+
"ruby-align",
|
|
11003
|
+
"ruby-position",
|
|
10696
11004
|
"scale",
|
|
11005
|
+
"scroll-behavior",
|
|
10697
11006
|
"scroll-margin",
|
|
10698
11007
|
"scroll-margin-block",
|
|
10699
11008
|
"scroll-margin-block-end",
|
|
@@ -10719,6 +11028,9 @@ var require_scss = __commonJS({
|
|
|
10719
11028
|
"scroll-snap-align",
|
|
10720
11029
|
"scroll-snap-stop",
|
|
10721
11030
|
"scroll-snap-type",
|
|
11031
|
+
"scroll-timeline",
|
|
11032
|
+
"scroll-timeline-axis",
|
|
11033
|
+
"scroll-timeline-name",
|
|
10722
11034
|
"scrollbar-color",
|
|
10723
11035
|
"scrollbar-gutter",
|
|
10724
11036
|
"scrollbar-width",
|
|
@@ -10726,6 +11038,10 @@ var require_scss = __commonJS({
|
|
|
10726
11038
|
"shape-margin",
|
|
10727
11039
|
"shape-outside",
|
|
10728
11040
|
"shape-rendering",
|
|
11041
|
+
"speak",
|
|
11042
|
+
"speak-as",
|
|
11043
|
+
"src",
|
|
11044
|
+
// @font-face
|
|
10729
11045
|
"stop-color",
|
|
10730
11046
|
"stop-opacity",
|
|
10731
11047
|
"stroke",
|
|
@@ -10736,20 +11052,17 @@ var require_scss = __commonJS({
|
|
|
10736
11052
|
"stroke-miterlimit",
|
|
10737
11053
|
"stroke-opacity",
|
|
10738
11054
|
"stroke-width",
|
|
10739
|
-
"speak",
|
|
10740
|
-
"speak-as",
|
|
10741
|
-
"src",
|
|
10742
|
-
// @font-face
|
|
10743
11055
|
"tab-size",
|
|
10744
11056
|
"table-layout",
|
|
10745
|
-
"text-anchor",
|
|
10746
11057
|
"text-align",
|
|
10747
11058
|
"text-align-all",
|
|
10748
11059
|
"text-align-last",
|
|
11060
|
+
"text-anchor",
|
|
10749
11061
|
"text-combine-upright",
|
|
10750
11062
|
"text-decoration",
|
|
10751
11063
|
"text-decoration-color",
|
|
10752
11064
|
"text-decoration-line",
|
|
11065
|
+
"text-decoration-skip",
|
|
10753
11066
|
"text-decoration-skip-ink",
|
|
10754
11067
|
"text-decoration-style",
|
|
10755
11068
|
"text-decoration-thickness",
|
|
@@ -10763,23 +11076,37 @@ var require_scss = __commonJS({
|
|
|
10763
11076
|
"text-overflow",
|
|
10764
11077
|
"text-rendering",
|
|
10765
11078
|
"text-shadow",
|
|
11079
|
+
"text-size-adjust",
|
|
10766
11080
|
"text-transform",
|
|
10767
11081
|
"text-underline-offset",
|
|
10768
11082
|
"text-underline-position",
|
|
11083
|
+
"text-wrap",
|
|
11084
|
+
"text-wrap-mode",
|
|
11085
|
+
"text-wrap-style",
|
|
11086
|
+
"timeline-scope",
|
|
10769
11087
|
"top",
|
|
11088
|
+
"touch-action",
|
|
10770
11089
|
"transform",
|
|
10771
11090
|
"transform-box",
|
|
10772
11091
|
"transform-origin",
|
|
10773
11092
|
"transform-style",
|
|
10774
11093
|
"transition",
|
|
11094
|
+
"transition-behavior",
|
|
10775
11095
|
"transition-delay",
|
|
10776
11096
|
"transition-duration",
|
|
10777
11097
|
"transition-property",
|
|
10778
11098
|
"transition-timing-function",
|
|
10779
11099
|
"translate",
|
|
10780
11100
|
"unicode-bidi",
|
|
11101
|
+
"user-modify",
|
|
11102
|
+
"user-select",
|
|
10781
11103
|
"vector-effect",
|
|
10782
11104
|
"vertical-align",
|
|
11105
|
+
"view-timeline",
|
|
11106
|
+
"view-timeline-axis",
|
|
11107
|
+
"view-timeline-inset",
|
|
11108
|
+
"view-timeline-name",
|
|
11109
|
+
"view-transition-name",
|
|
10783
11110
|
"visibility",
|
|
10784
11111
|
"voice-balance",
|
|
10785
11112
|
"voice-duration",
|
|
@@ -10790,6 +11117,7 @@ var require_scss = __commonJS({
|
|
|
10790
11117
|
"voice-stress",
|
|
10791
11118
|
"voice-volume",
|
|
10792
11119
|
"white-space",
|
|
11120
|
+
"white-space-collapse",
|
|
10793
11121
|
"widows",
|
|
10794
11122
|
"width",
|
|
10795
11123
|
"will-change",
|
|
@@ -10799,7 +11127,8 @@ var require_scss = __commonJS({
|
|
|
10799
11127
|
"writing-mode",
|
|
10800
11128
|
"x",
|
|
10801
11129
|
"y",
|
|
10802
|
-
"z-index"
|
|
11130
|
+
"z-index",
|
|
11131
|
+
"zoom"
|
|
10803
11132
|
].sort().reverse();
|
|
10804
11133
|
function scss(hljs) {
|
|
10805
11134
|
const modes = MODES(hljs);
|
|
@@ -10957,19 +11286,19 @@ var require_sql = __commonJS({
|
|
|
10957
11286
|
const regex = hljs.regex;
|
|
10958
11287
|
const COMMENT_MODE = hljs.COMMENT("--", "$");
|
|
10959
11288
|
const STRING = {
|
|
10960
|
-
|
|
11289
|
+
scope: "string",
|
|
10961
11290
|
variants: [
|
|
10962
11291
|
{
|
|
10963
11292
|
begin: /'/,
|
|
10964
11293
|
end: /'/,
|
|
10965
|
-
contains: [{
|
|
11294
|
+
contains: [{ match: /''/ }]
|
|
10966
11295
|
}
|
|
10967
11296
|
]
|
|
10968
11297
|
};
|
|
10969
11298
|
const QUOTED_IDENTIFIER = {
|
|
10970
11299
|
begin: /"/,
|
|
10971
11300
|
end: /"/,
|
|
10972
|
-
contains: [{
|
|
11301
|
+
contains: [{ match: /""/ }]
|
|
10973
11302
|
};
|
|
10974
11303
|
const LITERALS = [
|
|
10975
11304
|
"true",
|
|
@@ -11522,19 +11851,33 @@ var require_sql = __commonJS({
|
|
|
11522
11851
|
return !RESERVED_FUNCTIONS.includes(keyword);
|
|
11523
11852
|
});
|
|
11524
11853
|
const VARIABLE = {
|
|
11525
|
-
|
|
11526
|
-
|
|
11854
|
+
scope: "variable",
|
|
11855
|
+
match: /@[a-z0-9][a-z0-9_]*/
|
|
11527
11856
|
};
|
|
11528
11857
|
const OPERATOR = {
|
|
11529
|
-
|
|
11530
|
-
|
|
11858
|
+
scope: "operator",
|
|
11859
|
+
match: /[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,
|
|
11531
11860
|
relevance: 0
|
|
11532
11861
|
};
|
|
11533
11862
|
const FUNCTION_CALL = {
|
|
11534
|
-
|
|
11863
|
+
match: regex.concat(/\b/, regex.either(...FUNCTIONS), /\s*\(/),
|
|
11535
11864
|
relevance: 0,
|
|
11536
11865
|
keywords: { built_in: FUNCTIONS }
|
|
11537
11866
|
};
|
|
11867
|
+
function kws_to_regex(list2) {
|
|
11868
|
+
return regex.concat(
|
|
11869
|
+
/\b/,
|
|
11870
|
+
regex.either(...list2.map((kw) => {
|
|
11871
|
+
return kw.replace(/\s+/, "\\s+");
|
|
11872
|
+
})),
|
|
11873
|
+
/\b/
|
|
11874
|
+
);
|
|
11875
|
+
}
|
|
11876
|
+
const MULTI_WORD_KEYWORDS = {
|
|
11877
|
+
scope: "keyword",
|
|
11878
|
+
match: kws_to_regex(COMBOS),
|
|
11879
|
+
relevance: 0
|
|
11880
|
+
};
|
|
11538
11881
|
function reduceRelevancy(list2, {
|
|
11539
11882
|
exceptions,
|
|
11540
11883
|
when
|
|
@@ -11558,26 +11901,17 @@ var require_sql = __commonJS({
|
|
|
11558
11901
|
illegal: /[{}]|<\//,
|
|
11559
11902
|
keywords: {
|
|
11560
11903
|
$pattern: /\b[\w\.]+/,
|
|
11561
|
-
keyword: reduceRelevancy(KEYWORDS, { when: (
|
|
11904
|
+
keyword: reduceRelevancy(KEYWORDS, { when: (x2) => x2.length < 3 }),
|
|
11562
11905
|
literal: LITERALS,
|
|
11563
11906
|
type: TYPES,
|
|
11564
11907
|
built_in: POSSIBLE_WITHOUT_PARENS
|
|
11565
11908
|
},
|
|
11566
11909
|
contains: [
|
|
11567
11910
|
{
|
|
11568
|
-
|
|
11569
|
-
|
|
11570
|
-
keywords: {
|
|
11571
|
-
$pattern: /[\w\.]+/,
|
|
11572
|
-
keyword: KEYWORDS.concat(COMBOS),
|
|
11573
|
-
literal: LITERALS,
|
|
11574
|
-
type: TYPES
|
|
11575
|
-
}
|
|
11576
|
-
},
|
|
11577
|
-
{
|
|
11578
|
-
className: "type",
|
|
11579
|
-
begin: regex.either(...MULTI_WORD_TYPES)
|
|
11911
|
+
scope: "type",
|
|
11912
|
+
match: kws_to_regex(MULTI_WORD_TYPES)
|
|
11580
11913
|
},
|
|
11914
|
+
MULTI_WORD_KEYWORDS,
|
|
11581
11915
|
FUNCTION_CALL,
|
|
11582
11916
|
VARIABLE,
|
|
11583
11917
|
STRING,
|
|
@@ -11606,7 +11940,7 @@ var require_swift = __commonJS({
|
|
|
11606
11940
|
return concat("(?=", re, ")");
|
|
11607
11941
|
}
|
|
11608
11942
|
function concat(...args) {
|
|
11609
|
-
const joined = args.map((
|
|
11943
|
+
const joined = args.map((x2) => source(x2)).join("");
|
|
11610
11944
|
return joined;
|
|
11611
11945
|
}
|
|
11612
11946
|
function stripOptionsFromArgs(args) {
|
|
@@ -11620,7 +11954,7 @@ var require_swift = __commonJS({
|
|
|
11620
11954
|
}
|
|
11621
11955
|
function either(...args) {
|
|
11622
11956
|
const opts = stripOptionsFromArgs(args);
|
|
11623
|
-
const joined = "(" + (opts.capture ? "" : "?:") + args.map((
|
|
11957
|
+
const joined = "(" + (opts.capture ? "" : "?:") + args.map((x2) => source(x2)).join("|") + ")";
|
|
11624
11958
|
return joined;
|
|
11625
11959
|
}
|
|
11626
11960
|
var keywordWrapper = (keyword) => concat(
|
|
@@ -12361,6 +12695,31 @@ var require_swift = __commonJS({
|
|
|
12361
12695
|
],
|
|
12362
12696
|
end: /}/
|
|
12363
12697
|
};
|
|
12698
|
+
const CLASS_FUNC_DECLARATION = {
|
|
12699
|
+
match: [
|
|
12700
|
+
/class\b/,
|
|
12701
|
+
/\s+/,
|
|
12702
|
+
/func\b/,
|
|
12703
|
+
/\s+/,
|
|
12704
|
+
/\b[A-Za-z_][A-Za-z0-9_]*\b/
|
|
12705
|
+
],
|
|
12706
|
+
scope: {
|
|
12707
|
+
1: "keyword",
|
|
12708
|
+
3: "keyword",
|
|
12709
|
+
5: "title.function"
|
|
12710
|
+
}
|
|
12711
|
+
};
|
|
12712
|
+
const CLASS_VAR_DECLARATION = {
|
|
12713
|
+
match: [
|
|
12714
|
+
/class\b/,
|
|
12715
|
+
/\s+/,
|
|
12716
|
+
/var\b/
|
|
12717
|
+
],
|
|
12718
|
+
scope: {
|
|
12719
|
+
1: "keyword",
|
|
12720
|
+
3: "keyword"
|
|
12721
|
+
}
|
|
12722
|
+
};
|
|
12364
12723
|
const TYPE_DECLARATION = {
|
|
12365
12724
|
begin: [
|
|
12366
12725
|
/(struct|protocol|class|extension|enum|actor)/,
|
|
@@ -12421,6 +12780,8 @@ var require_swift = __commonJS({
|
|
|
12421
12780
|
...COMMENTS,
|
|
12422
12781
|
FUNCTION_OR_MACRO,
|
|
12423
12782
|
INIT_SUBSCRIPT,
|
|
12783
|
+
CLASS_FUNC_DECLARATION,
|
|
12784
|
+
CLASS_VAR_DECLARATION,
|
|
12424
12785
|
TYPE_DECLARATION,
|
|
12425
12786
|
OPERATOR_DECLARATION,
|
|
12426
12787
|
PRECEDENCEGROUP,
|
|
@@ -12457,15 +12818,15 @@ var require_yaml = __commonJS({
|
|
|
12457
12818
|
const KEY = {
|
|
12458
12819
|
className: "attr",
|
|
12459
12820
|
variants: [
|
|
12460
|
-
// added brackets support
|
|
12461
|
-
{ begin:
|
|
12821
|
+
// added brackets support and special char support
|
|
12822
|
+
{ begin: /[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/ },
|
|
12462
12823
|
{
|
|
12463
|
-
// double quoted keys - with brackets
|
|
12464
|
-
begin: /"\w[\w :()\./-]*":(?=[ \t]|$)/
|
|
12824
|
+
// double quoted keys - with brackets and special char support
|
|
12825
|
+
begin: /"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/
|
|
12465
12826
|
},
|
|
12466
12827
|
{
|
|
12467
|
-
// single quoted keys - with brackets
|
|
12468
|
-
begin: /'\w[\w :()\./-]*':(?=[ \t]|$)/
|
|
12828
|
+
// single quoted keys - with brackets and special char support
|
|
12829
|
+
begin: /'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/
|
|
12469
12830
|
}
|
|
12470
12831
|
]
|
|
12471
12832
|
};
|
|
@@ -12484,14 +12845,23 @@ var require_yaml = __commonJS({
|
|
|
12484
12845
|
}
|
|
12485
12846
|
]
|
|
12486
12847
|
};
|
|
12848
|
+
const SINGLE_QUOTE_STRING = {
|
|
12849
|
+
className: "string",
|
|
12850
|
+
relevance: 0,
|
|
12851
|
+
begin: /'/,
|
|
12852
|
+
end: /'/,
|
|
12853
|
+
contains: [
|
|
12854
|
+
{
|
|
12855
|
+
match: /''/,
|
|
12856
|
+
scope: "char.escape",
|
|
12857
|
+
relevance: 0
|
|
12858
|
+
}
|
|
12859
|
+
]
|
|
12860
|
+
};
|
|
12487
12861
|
const STRING = {
|
|
12488
12862
|
className: "string",
|
|
12489
12863
|
relevance: 0,
|
|
12490
12864
|
variants: [
|
|
12491
|
-
{
|
|
12492
|
-
begin: /'/,
|
|
12493
|
-
end: /'/
|
|
12494
|
-
},
|
|
12495
12865
|
{
|
|
12496
12866
|
begin: /"/,
|
|
12497
12867
|
end: /"/
|
|
@@ -12506,7 +12876,13 @@ var require_yaml = __commonJS({
|
|
|
12506
12876
|
const CONTAINER_STRING = hljs.inherit(STRING, { variants: [
|
|
12507
12877
|
{
|
|
12508
12878
|
begin: /'/,
|
|
12509
|
-
end: /'
|
|
12879
|
+
end: /'/,
|
|
12880
|
+
contains: [
|
|
12881
|
+
{
|
|
12882
|
+
begin: /''/,
|
|
12883
|
+
relevance: 0
|
|
12884
|
+
}
|
|
12885
|
+
]
|
|
12510
12886
|
},
|
|
12511
12887
|
{
|
|
12512
12888
|
begin: /"/,
|
|
@@ -12621,6 +12997,7 @@ var require_yaml = __commonJS({
|
|
|
12621
12997
|
},
|
|
12622
12998
|
OBJECT,
|
|
12623
12999
|
ARRAY,
|
|
13000
|
+
SINGLE_QUOTE_STRING,
|
|
12624
13001
|
STRING
|
|
12625
13002
|
];
|
|
12626
13003
|
const VALUE_MODES = [...MODES];
|
|
@@ -12685,7 +13062,9 @@ var require_typescript = __commonJS({
|
|
|
12685
13062
|
"import",
|
|
12686
13063
|
"from",
|
|
12687
13064
|
"export",
|
|
12688
|
-
"extends"
|
|
13065
|
+
"extends",
|
|
13066
|
+
// It's reached stage 3, which is "recommended for implementation":
|
|
13067
|
+
"using"
|
|
12689
13068
|
];
|
|
12690
13069
|
var LITERALS = [
|
|
12691
13070
|
"true",
|
|
@@ -12832,14 +13211,14 @@ var require_typescript = __commonJS({
|
|
|
12832
13211
|
response.ignoreMatch();
|
|
12833
13212
|
}
|
|
12834
13213
|
}
|
|
12835
|
-
let
|
|
13214
|
+
let m3;
|
|
12836
13215
|
const afterMatch = match.input.substring(afterMatchIndex);
|
|
12837
|
-
if (
|
|
13216
|
+
if (m3 = afterMatch.match(/^\s*=/)) {
|
|
12838
13217
|
response.ignoreMatch();
|
|
12839
13218
|
return;
|
|
12840
13219
|
}
|
|
12841
|
-
if (
|
|
12842
|
-
if (
|
|
13220
|
+
if (m3 = afterMatch.match(/^\s+extends\s+/)) {
|
|
13221
|
+
if (m3.index === 0) {
|
|
12843
13222
|
response.ignoreMatch();
|
|
12844
13223
|
return;
|
|
12845
13224
|
}
|
|
@@ -13015,7 +13394,7 @@ var require_typescript = __commonJS({
|
|
|
13015
13394
|
className: "params",
|
|
13016
13395
|
// convert this to negative lookbehind in v12
|
|
13017
13396
|
begin: /(\s*)\(/,
|
|
13018
|
-
// to match the parms with
|
|
13397
|
+
// to match the parms with
|
|
13019
13398
|
end: /\)/,
|
|
13020
13399
|
excludeBegin: true,
|
|
13021
13400
|
excludeEnd: true,
|
|
@@ -13128,7 +13507,7 @@ var require_typescript = __commonJS({
|
|
|
13128
13507
|
...BUILT_IN_GLOBALS,
|
|
13129
13508
|
"super",
|
|
13130
13509
|
"import"
|
|
13131
|
-
].map((
|
|
13510
|
+
].map((x2) => `${x2}\\s*\\(`)),
|
|
13132
13511
|
IDENT_RE$1,
|
|
13133
13512
|
regex.lookahead(/\s*\(/)
|
|
13134
13513
|
),
|
|
@@ -13211,8 +13590,8 @@ var require_typescript = __commonJS({
|
|
|
13211
13590
|
NUMBER,
|
|
13212
13591
|
CLASS_REFERENCE,
|
|
13213
13592
|
{
|
|
13214
|
-
|
|
13215
|
-
|
|
13593
|
+
scope: "attr",
|
|
13594
|
+
match: IDENT_RE$1 + regex.lookahead(":"),
|
|
13216
13595
|
relevance: 0
|
|
13217
13596
|
},
|
|
13218
13597
|
FUNCTION_VARIABLE,
|
|
@@ -13340,6 +13719,7 @@ var require_typescript = __commonJS({
|
|
|
13340
13719
|
};
|
|
13341
13720
|
}
|
|
13342
13721
|
function typescript(hljs) {
|
|
13722
|
+
const regex = hljs.regex;
|
|
13343
13723
|
const tsLanguage = javascript(hljs);
|
|
13344
13724
|
const IDENT_RE$1 = IDENT_RE;
|
|
13345
13725
|
const TYPES2 = [
|
|
@@ -13407,7 +13787,7 @@ var require_typescript = __commonJS({
|
|
|
13407
13787
|
begin: "@" + IDENT_RE$1
|
|
13408
13788
|
};
|
|
13409
13789
|
const swapMode = (mode, label, replacement) => {
|
|
13410
|
-
const indx = mode.contains.findIndex((
|
|
13790
|
+
const indx = mode.contains.findIndex((m3) => m3.label === label);
|
|
13411
13791
|
if (indx === -1) {
|
|
13412
13792
|
throw new Error("can not find mode to replace");
|
|
13413
13793
|
}
|
|
@@ -13415,21 +13795,30 @@ var require_typescript = __commonJS({
|
|
|
13415
13795
|
};
|
|
13416
13796
|
Object.assign(tsLanguage.keywords, KEYWORDS$1);
|
|
13417
13797
|
tsLanguage.exports.PARAMS_CONTAINS.push(DECORATOR);
|
|
13418
|
-
const ATTRIBUTE_HIGHLIGHT = tsLanguage.contains.find((c3) => c3.
|
|
13798
|
+
const ATTRIBUTE_HIGHLIGHT = tsLanguage.contains.find((c3) => c3.scope === "attr");
|
|
13799
|
+
const OPTIONAL_KEY_OR_ARGUMENT = Object.assign(
|
|
13800
|
+
{},
|
|
13801
|
+
ATTRIBUTE_HIGHLIGHT,
|
|
13802
|
+
{ match: regex.concat(IDENT_RE$1, regex.lookahead(/\s*\?:/)) }
|
|
13803
|
+
);
|
|
13419
13804
|
tsLanguage.exports.PARAMS_CONTAINS.push([
|
|
13420
13805
|
tsLanguage.exports.CLASS_REFERENCE,
|
|
13421
13806
|
// class reference for highlighting the params types
|
|
13422
|
-
ATTRIBUTE_HIGHLIGHT
|
|
13807
|
+
ATTRIBUTE_HIGHLIGHT,
|
|
13423
13808
|
// highlight the params key
|
|
13809
|
+
OPTIONAL_KEY_OR_ARGUMENT
|
|
13810
|
+
// Added for optional property assignment highlighting
|
|
13424
13811
|
]);
|
|
13425
13812
|
tsLanguage.contains = tsLanguage.contains.concat([
|
|
13426
13813
|
DECORATOR,
|
|
13427
13814
|
NAMESPACE,
|
|
13428
|
-
INTERFACE
|
|
13815
|
+
INTERFACE,
|
|
13816
|
+
OPTIONAL_KEY_OR_ARGUMENT
|
|
13817
|
+
// Added for optional property assignment highlighting
|
|
13429
13818
|
]);
|
|
13430
13819
|
swapMode(tsLanguage, "shebang", hljs.SHEBANG());
|
|
13431
13820
|
swapMode(tsLanguage, "use_strict", USE_STRICT);
|
|
13432
|
-
const functionDeclaration = tsLanguage.contains.find((
|
|
13821
|
+
const functionDeclaration = tsLanguage.contains.find((m3) => m3.label === "func.def");
|
|
13433
13822
|
functionDeclaration.relevance = 0;
|
|
13434
13823
|
Object.assign(tsLanguage, {
|
|
13435
13824
|
name: "TypeScript",
|
|
@@ -13852,48 +14241,52 @@ function closestIdx(num, arr, lo, hi) {
|
|
|
13852
14241
|
return lo;
|
|
13853
14242
|
return hi;
|
|
13854
14243
|
}
|
|
13855
|
-
function
|
|
13856
|
-
|
|
13857
|
-
|
|
13858
|
-
|
|
13859
|
-
}
|
|
13860
|
-
return -1;
|
|
13861
|
-
}
|
|
13862
|
-
function getMinMax(data, _i0, _i1, sorted) {
|
|
13863
|
-
let _min = inf;
|
|
13864
|
-
let _max = -inf;
|
|
13865
|
-
if (sorted == 1) {
|
|
13866
|
-
_min = data[_i0];
|
|
13867
|
-
_max = data[_i1];
|
|
13868
|
-
} else if (sorted == -1) {
|
|
13869
|
-
_min = data[_i1];
|
|
13870
|
-
_max = data[_i0];
|
|
13871
|
-
} else {
|
|
14244
|
+
function makeIndexOfs(predicate) {
|
|
14245
|
+
let indexOfs = (data, _i0, _i1) => {
|
|
14246
|
+
let i0 = -1;
|
|
14247
|
+
let i1 = -1;
|
|
13872
14248
|
for (let i3 = _i0; i3 <= _i1; i3++) {
|
|
13873
|
-
|
|
13874
|
-
|
|
13875
|
-
|
|
13876
|
-
_min = v3;
|
|
13877
|
-
if (v3 > _max)
|
|
13878
|
-
_max = v3;
|
|
14249
|
+
if (predicate(data[i3])) {
|
|
14250
|
+
i0 = i3;
|
|
14251
|
+
break;
|
|
13879
14252
|
}
|
|
13880
14253
|
}
|
|
13881
|
-
|
|
13882
|
-
|
|
14254
|
+
for (let i3 = _i1; i3 >= _i0; i3--) {
|
|
14255
|
+
if (predicate(data[i3])) {
|
|
14256
|
+
i1 = i3;
|
|
14257
|
+
break;
|
|
14258
|
+
}
|
|
14259
|
+
}
|
|
14260
|
+
return [i0, i1];
|
|
14261
|
+
};
|
|
14262
|
+
return indexOfs;
|
|
13883
14263
|
}
|
|
13884
|
-
function
|
|
13885
|
-
let
|
|
13886
|
-
let
|
|
13887
|
-
|
|
13888
|
-
|
|
13889
|
-
|
|
13890
|
-
|
|
13891
|
-
|
|
13892
|
-
|
|
13893
|
-
|
|
13894
|
-
}
|
|
13895
|
-
|
|
13896
|
-
|
|
14264
|
+
function getMinMax(data, _i0, _i1, sorted = 0, log = false) {
|
|
14265
|
+
let getEdgeIdxs = log ? positiveIdxs : nonNullIdxs;
|
|
14266
|
+
let predicate = log ? isPositive : notNullish;
|
|
14267
|
+
[_i0, _i1] = getEdgeIdxs(data, _i0, _i1);
|
|
14268
|
+
let _min = data[_i0];
|
|
14269
|
+
let _max = data[_i0];
|
|
14270
|
+
if (_i0 > -1) {
|
|
14271
|
+
if (sorted == 1) {
|
|
14272
|
+
_min = data[_i0];
|
|
14273
|
+
_max = data[_i1];
|
|
14274
|
+
} else if (sorted == -1) {
|
|
14275
|
+
_min = data[_i1];
|
|
14276
|
+
_max = data[_i0];
|
|
14277
|
+
} else {
|
|
14278
|
+
for (let i3 = _i0; i3 <= _i1; i3++) {
|
|
14279
|
+
let v3 = data[i3];
|
|
14280
|
+
if (predicate(v3)) {
|
|
14281
|
+
if (v3 < _min)
|
|
14282
|
+
_min = v3;
|
|
14283
|
+
else if (v3 > _max)
|
|
14284
|
+
_max = v3;
|
|
14285
|
+
}
|
|
14286
|
+
}
|
|
14287
|
+
}
|
|
14288
|
+
}
|
|
14289
|
+
return [_min ?? inf, _max ?? -inf];
|
|
13897
14290
|
}
|
|
13898
14291
|
function rangeLog(min2, max2, base, fullMags) {
|
|
13899
14292
|
let minSign = sign(min2);
|
|
@@ -13999,14 +14392,17 @@ function _rangeNum(_min, _max, cfg) {
|
|
|
13999
14392
|
maxLim = 100;
|
|
14000
14393
|
return [minLim, maxLim];
|
|
14001
14394
|
}
|
|
14002
|
-
function numIntDigits(
|
|
14003
|
-
return (log10((
|
|
14395
|
+
function numIntDigits(x2) {
|
|
14396
|
+
return (log10((x2 ^ x2 >> 31) - (x2 >> 31)) | 0) + 1;
|
|
14004
14397
|
}
|
|
14005
14398
|
function clamp(num, _min, _max) {
|
|
14006
14399
|
return min(max(num, _min), _max);
|
|
14007
14400
|
}
|
|
14401
|
+
function isFn(v3) {
|
|
14402
|
+
return typeof v3 == "function";
|
|
14403
|
+
}
|
|
14008
14404
|
function fnOrSelf(v3) {
|
|
14009
|
-
return
|
|
14405
|
+
return isFn(v3) ? v3 : () => v3;
|
|
14010
14406
|
}
|
|
14011
14407
|
function incrRound(num, incr) {
|
|
14012
14408
|
return fixFloat(roundDec(fixFloat(num / incr)) * incr);
|
|
@@ -14223,9 +14619,9 @@ function zeroPad3(int) {
|
|
|
14223
14619
|
function fmtDate(tpl, names) {
|
|
14224
14620
|
names = names || engNames;
|
|
14225
14621
|
let parts = [];
|
|
14226
|
-
let
|
|
14227
|
-
while (
|
|
14228
|
-
parts.push(
|
|
14622
|
+
let R2 = /\{([a-z]+)\}|[^{]+/gi, m3;
|
|
14623
|
+
while (m3 = R2.exec(tpl))
|
|
14624
|
+
parts.push(m3[0][0] == "{" ? subs[m3[1]] : m3[0]);
|
|
14229
14625
|
return (d3) => {
|
|
14230
14626
|
let out = "";
|
|
14231
14627
|
for (let i3 = 0; i3 < parts.length; i3++)
|
|
@@ -14246,7 +14642,7 @@ function tzDate(date, tz) {
|
|
|
14246
14642
|
return date2;
|
|
14247
14643
|
}
|
|
14248
14644
|
function genTimeStuffs(ms) {
|
|
14249
|
-
let s3 = ms * 1e3,
|
|
14645
|
+
let s3 = ms * 1e3, m3 = s3 * 60, h3 = m3 * 60, d3 = h3 * 24, mo = d3 * 30, y3 = d3 * 365;
|
|
14250
14646
|
let subSecIncrs = ms == 1 ? genIncrs(10, 0, 3, allMults).filter(onlyWhole) : genIncrs(10, -3, 0, allMults);
|
|
14251
14647
|
let timeIncrs = subSecIncrs.concat([
|
|
14252
14648
|
// minute divisors (# of secs)
|
|
@@ -14256,11 +14652,11 @@ function genTimeStuffs(ms) {
|
|
|
14256
14652
|
s3 * 15,
|
|
14257
14653
|
s3 * 30,
|
|
14258
14654
|
// hour divisors (# of mins)
|
|
14259
|
-
|
|
14260
|
-
|
|
14261
|
-
|
|
14262
|
-
|
|
14263
|
-
|
|
14655
|
+
m3,
|
|
14656
|
+
m3 * 5,
|
|
14657
|
+
m3 * 10,
|
|
14658
|
+
m3 * 15,
|
|
14659
|
+
m3 * 30,
|
|
14264
14660
|
// day divisors (# of hrs)
|
|
14265
14661
|
h3,
|
|
14266
14662
|
h3 * 2,
|
|
@@ -14298,13 +14694,13 @@ function genTimeStuffs(ms) {
|
|
|
14298
14694
|
]);
|
|
14299
14695
|
const _timeAxisStamps = [
|
|
14300
14696
|
// tick incr default year month day hour min sec mode
|
|
14301
|
-
[y3, yyyy,
|
|
14302
|
-
[d3 * 28, "{MMM}", NLyyyy,
|
|
14303
|
-
[d3, md, NLyyyy,
|
|
14304
|
-
[h3, "{h}" + aa, NLmdyy,
|
|
14305
|
-
[
|
|
14306
|
-
[s3, ss, NLmdyy + " " + hmmaa,
|
|
14307
|
-
[ms, ss + ".{fff}", NLmdyy + " " + hmmaa,
|
|
14697
|
+
[y3, yyyy, _2, _2, _2, _2, _2, _2, 1],
|
|
14698
|
+
[d3 * 28, "{MMM}", NLyyyy, _2, _2, _2, _2, _2, 1],
|
|
14699
|
+
[d3, md, NLyyyy, _2, _2, _2, _2, _2, 1],
|
|
14700
|
+
[h3, "{h}" + aa, NLmdyy, _2, NLmd, _2, _2, _2, 1],
|
|
14701
|
+
[m3, hmmaa, NLmdyy, _2, NLmd, _2, _2, _2, 1],
|
|
14702
|
+
[s3, ss, NLmdyy + " " + hmmaa, _2, NLmd + " " + hmmaa, _2, NLhmmaa, _2, 1],
|
|
14703
|
+
[ms, ss + ".{fff}", NLmdyy + " " + hmmaa, _2, NLmd + " " + hmmaa, _2, NLhmmaa, _2, 1]
|
|
14308
14704
|
];
|
|
14309
14705
|
function timeAxisSplits(tzDate2) {
|
|
14310
14706
|
return (self, axisIdx, scaleMin, scaleMax, foundIncr, foundSpace) => {
|
|
@@ -14335,7 +14731,7 @@ function genTimeStuffs(ms) {
|
|
|
14335
14731
|
let split = minMinTs + tzOffset + incrRoundUp(minDateTs - minMinTs, incr0);
|
|
14336
14732
|
splits.push(split);
|
|
14337
14733
|
let date0 = tzDate2(split);
|
|
14338
|
-
let prevHour = date0.getHours() + date0.getMinutes() /
|
|
14734
|
+
let prevHour = date0.getHours() + date0.getMinutes() / m3 + date0.getSeconds() / h3;
|
|
14339
14735
|
let incrHours = foundIncr / h3;
|
|
14340
14736
|
let minSpace = self.axes[axisIdx]._space;
|
|
14341
14737
|
let pctSpace = foundSpace / minSpace;
|
|
@@ -14406,8 +14802,8 @@ function timeAxisVal(tzDate2, dateTpl) {
|
|
|
14406
14802
|
let stamp = fmtDate(dateTpl);
|
|
14407
14803
|
return (self, splits, axisIdx, foundSpace, foundIncr) => splits.map((split) => stamp(tzDate2(split)));
|
|
14408
14804
|
}
|
|
14409
|
-
function mkDate(y3,
|
|
14410
|
-
return new Date(y3,
|
|
14805
|
+
function mkDate(y3, m3, d3) {
|
|
14806
|
+
return new Date(y3, m3, d3);
|
|
14411
14807
|
}
|
|
14412
14808
|
function timeSeriesStamp(stampCfg, fmtDate2) {
|
|
14413
14809
|
return fmtDate2(stampCfg);
|
|
@@ -14564,9 +14960,9 @@ function _sync(key, opts) {
|
|
|
14564
14960
|
unsub(plot) {
|
|
14565
14961
|
s3.plots = s3.plots.filter((c3) => c3 != plot);
|
|
14566
14962
|
},
|
|
14567
|
-
pub(type, self,
|
|
14963
|
+
pub(type, self, x2, y3, w3, h3, i3) {
|
|
14568
14964
|
for (let j3 = 0; j3 < s3.plots.length; j3++)
|
|
14569
|
-
s3.plots[j3] != self && s3.plots[j3].pub(type, self,
|
|
14965
|
+
s3.plots[j3] != self && s3.plots[j3].pub(type, self, x2, y3, w3, h3, i3);
|
|
14570
14966
|
}
|
|
14571
14967
|
};
|
|
14572
14968
|
if (key != null)
|
|
@@ -14580,14 +14976,14 @@ function orient(u3, seriesIdx, cb) {
|
|
|
14580
14976
|
const data = mode == 2 ? u3._data[seriesIdx] : u3._data;
|
|
14581
14977
|
const scales = u3.scales;
|
|
14582
14978
|
const bbox = u3.bbox;
|
|
14583
|
-
let dx = data[0], dy = mode == 2 ? data[1] : data[seriesIdx], sx = mode == 2 ? scales[series.facets[0].scale] : scales[u3.series[0].scale], sy = mode == 2 ? scales[series.facets[1].scale] : scales[series.scale], l3 = bbox.left, t5 = bbox.top, w3 = bbox.width, h3 = bbox.height,
|
|
14979
|
+
let dx = data[0], dy = mode == 2 ? data[1] : data[seriesIdx], sx = mode == 2 ? scales[series.facets[0].scale] : scales[u3.series[0].scale], sy = mode == 2 ? scales[series.facets[1].scale] : scales[series.scale], l3 = bbox.left, t5 = bbox.top, w3 = bbox.width, h3 = bbox.height, H2 = u3.valToPosH, V2 = u3.valToPosV;
|
|
14584
14980
|
return sx.ori == 0 ? cb(
|
|
14585
14981
|
series,
|
|
14586
14982
|
dx,
|
|
14587
14983
|
dy,
|
|
14588
14984
|
sx,
|
|
14589
14985
|
sy,
|
|
14590
|
-
|
|
14986
|
+
H2,
|
|
14591
14987
|
V2,
|
|
14592
14988
|
l3,
|
|
14593
14989
|
t5,
|
|
@@ -14605,7 +15001,7 @@ function orient(u3, seriesIdx, cb) {
|
|
|
14605
15001
|
sx,
|
|
14606
15002
|
sy,
|
|
14607
15003
|
V2,
|
|
14608
|
-
|
|
15004
|
+
H2,
|
|
14609
15005
|
t5,
|
|
14610
15006
|
l3,
|
|
14611
15007
|
h3,
|
|
@@ -14737,27 +15133,27 @@ function pxRoundGen(pxAlign) {
|
|
|
14737
15133
|
}
|
|
14738
15134
|
function rect(ori) {
|
|
14739
15135
|
let moveTo = ori == 0 ? moveToH : moveToV;
|
|
14740
|
-
let arcTo = ori == 0 ? (p3, x1, y1,
|
|
14741
|
-
p3.arcTo(x1, y1,
|
|
14742
|
-
} : (p3, y1, x1, y22,
|
|
14743
|
-
p3.arcTo(x1, y1,
|
|
15136
|
+
let arcTo = ori == 0 ? (p3, x1, y1, x2, y22, r3) => {
|
|
15137
|
+
p3.arcTo(x1, y1, x2, y22, r3);
|
|
15138
|
+
} : (p3, y1, x1, y22, x2, r3) => {
|
|
15139
|
+
p3.arcTo(x1, y1, x2, y22, r3);
|
|
14744
15140
|
};
|
|
14745
|
-
let rect2 = ori == 0 ? (p3,
|
|
14746
|
-
p3.rect(
|
|
14747
|
-
} : (p3, y3,
|
|
14748
|
-
p3.rect(
|
|
15141
|
+
let rect2 = ori == 0 ? (p3, x2, y3, w3, h3) => {
|
|
15142
|
+
p3.rect(x2, y3, w3, h3);
|
|
15143
|
+
} : (p3, y3, x2, h3, w3) => {
|
|
15144
|
+
p3.rect(x2, y3, w3, h3);
|
|
14749
15145
|
};
|
|
14750
|
-
return (p3,
|
|
15146
|
+
return (p3, x2, y3, w3, h3, endRad = 0, baseRad = 0) => {
|
|
14751
15147
|
if (endRad == 0 && baseRad == 0)
|
|
14752
|
-
rect2(p3,
|
|
15148
|
+
rect2(p3, x2, y3, w3, h3);
|
|
14753
15149
|
else {
|
|
14754
15150
|
endRad = min(endRad, w3 / 2, h3 / 2);
|
|
14755
15151
|
baseRad = min(baseRad, w3 / 2, h3 / 2);
|
|
14756
|
-
moveTo(p3,
|
|
14757
|
-
arcTo(p3,
|
|
14758
|
-
arcTo(p3,
|
|
14759
|
-
arcTo(p3,
|
|
14760
|
-
arcTo(p3,
|
|
15152
|
+
moveTo(p3, x2 + endRad, y3);
|
|
15153
|
+
arcTo(p3, x2 + w3, y3, x2 + w3, y3 + h3, endRad);
|
|
15154
|
+
arcTo(p3, x2 + w3, y3 + h3, x2, y3 + h3, baseRad);
|
|
15155
|
+
arcTo(p3, x2, y3 + h3, x2, y3, baseRad);
|
|
15156
|
+
arcTo(p3, x2, y3, x2 + w3, y3, endRad);
|
|
14761
15157
|
p3.closePath();
|
|
14762
15158
|
}
|
|
14763
15159
|
};
|
|
@@ -14789,10 +15185,10 @@ function points(opts) {
|
|
|
14789
15185
|
);
|
|
14790
15186
|
const drawPoint = (pi) => {
|
|
14791
15187
|
if (dataY[pi] != null) {
|
|
14792
|
-
let
|
|
15188
|
+
let x2 = pxRound(valToPosX(dataX[pi], scaleX, xDim, xOff));
|
|
14793
15189
|
let y3 = pxRound(valToPosY(dataY[pi], scaleY, yDim, yOff));
|
|
14794
|
-
moveTo(fill,
|
|
14795
|
-
arc(fill,
|
|
15190
|
+
moveTo(fill, x2 + rad, y3);
|
|
15191
|
+
arc(fill, x2, y3, rad, 0, PI * 2);
|
|
14796
15192
|
}
|
|
14797
15193
|
};
|
|
14798
15194
|
if (filtIdxs)
|
|
@@ -14825,6 +15221,7 @@ function linear(opts) {
|
|
|
14825
15221
|
const alignGaps = ifNull(opts?.alignGaps, 0);
|
|
14826
15222
|
return (u3, seriesIdx, idx0, idx1) => {
|
|
14827
15223
|
return orient(u3, seriesIdx, (series, dataX, dataY, scaleX, scaleY, valToPosX, valToPosY, xOff, yOff, xDim, yDim) => {
|
|
15224
|
+
[idx0, idx1] = nonNullIdxs(dataY, idx0, idx1);
|
|
14828
15225
|
let pxRound = series.pxRound;
|
|
14829
15226
|
let pixelForX = (val) => pxRound(valToPosX(val, scaleX, xDim, xOff));
|
|
14830
15227
|
let pixelForY = (val) => pxRound(valToPosY(val, scaleY, yDim, yOff));
|
|
@@ -14839,56 +15236,74 @@ function linear(opts) {
|
|
|
14839
15236
|
const dir = scaleX.dir * (scaleX.ori == 0 ? 1 : -1);
|
|
14840
15237
|
const _paths = { stroke: new Path2D(), fill: null, clip: null, band: null, gaps: null, flags: BAND_CLIP_FILL };
|
|
14841
15238
|
const stroke = _paths.stroke;
|
|
14842
|
-
let minY = inf, maxY = -inf, inY, outY, drawnAtX;
|
|
14843
|
-
let accX = pixelForX(dataX[dir == 1 ? idx0 : idx1]);
|
|
14844
|
-
let lftIdx = nonNullIdx(dataY, idx0, idx1, 1 * dir);
|
|
14845
|
-
let rgtIdx = nonNullIdx(dataY, idx0, idx1, -1 * dir);
|
|
14846
|
-
let lftX = pixelForX(dataX[lftIdx]);
|
|
14847
|
-
let rgtX = pixelForX(dataX[rgtIdx]);
|
|
14848
15239
|
let hasGap = false;
|
|
14849
|
-
|
|
14850
|
-
|
|
14851
|
-
let
|
|
14852
|
-
|
|
14853
|
-
|
|
14854
|
-
|
|
14855
|
-
|
|
14856
|
-
|
|
14857
|
-
|
|
15240
|
+
const decimate = idx1 - idx0 >= xDim * 4;
|
|
15241
|
+
if (decimate) {
|
|
15242
|
+
let xForPixel = (pos) => u3.posToVal(pos, scaleX.key, true);
|
|
15243
|
+
let minY = null, maxY = null, inY, outY, drawnAtX;
|
|
15244
|
+
let accX = pixelForX(dataX[dir == 1 ? idx0 : idx1]);
|
|
15245
|
+
let idx0px = pixelForX(dataX[idx0]);
|
|
15246
|
+
let idx1px = pixelForX(dataX[idx1]);
|
|
15247
|
+
let nextAccXVal = xForPixel(dir == 1 ? idx0px + 1 : idx1px - 1);
|
|
15248
|
+
for (let i3 = dir == 1 ? idx0 : idx1; i3 >= idx0 && i3 <= idx1; i3 += dir) {
|
|
15249
|
+
let xVal = dataX[i3];
|
|
15250
|
+
let reuseAccX = dir == 1 ? xVal < nextAccXVal : xVal > nextAccXVal;
|
|
15251
|
+
let x2 = reuseAccX ? accX : pixelForX(xVal);
|
|
15252
|
+
let yVal = dataY[i3];
|
|
15253
|
+
if (x2 == accX) {
|
|
15254
|
+
if (yVal != null) {
|
|
15255
|
+
outY = yVal;
|
|
15256
|
+
if (minY == null) {
|
|
15257
|
+
lineTo(stroke, x2, pixelForY(outY));
|
|
15258
|
+
inY = minY = maxY = outY;
|
|
15259
|
+
} else {
|
|
15260
|
+
if (outY < minY)
|
|
15261
|
+
minY = outY;
|
|
15262
|
+
else if (outY > maxY)
|
|
15263
|
+
maxY = outY;
|
|
15264
|
+
}
|
|
15265
|
+
} else {
|
|
15266
|
+
if (yVal === null)
|
|
15267
|
+
hasGap = true;
|
|
14858
15268
|
}
|
|
14859
|
-
minY = min(outY, minY);
|
|
14860
|
-
maxY = max(outY, maxY);
|
|
14861
|
-
} else {
|
|
14862
|
-
if (yVal === null)
|
|
14863
|
-
hasGap = true;
|
|
14864
|
-
}
|
|
14865
|
-
} else {
|
|
14866
|
-
if (minY != inf) {
|
|
14867
|
-
drawAcc(stroke, accX, minY, maxY, inY, outY);
|
|
14868
|
-
drawnAtX = accX;
|
|
14869
|
-
}
|
|
14870
|
-
if (yVal != null) {
|
|
14871
|
-
outY = pixelForY(yVal);
|
|
14872
|
-
lineTo(stroke, x3, outY);
|
|
14873
|
-
minY = maxY = inY = outY;
|
|
14874
15269
|
} else {
|
|
14875
|
-
minY
|
|
14876
|
-
|
|
14877
|
-
if (yVal
|
|
14878
|
-
|
|
15270
|
+
if (minY != null)
|
|
15271
|
+
drawAcc(stroke, accX, pixelForY(minY), pixelForY(maxY), pixelForY(inY), pixelForY(outY));
|
|
15272
|
+
if (yVal != null) {
|
|
15273
|
+
outY = yVal;
|
|
15274
|
+
lineTo(stroke, x2, pixelForY(outY));
|
|
15275
|
+
minY = maxY = inY = outY;
|
|
15276
|
+
} else {
|
|
15277
|
+
minY = maxY = null;
|
|
15278
|
+
if (yVal === null)
|
|
15279
|
+
hasGap = true;
|
|
15280
|
+
}
|
|
15281
|
+
accX = x2;
|
|
15282
|
+
nextAccXVal = xForPixel(accX + dir);
|
|
14879
15283
|
}
|
|
14880
|
-
|
|
15284
|
+
}
|
|
15285
|
+
if (minY != null && minY != maxY && drawnAtX != accX)
|
|
15286
|
+
drawAcc(stroke, accX, pixelForY(minY), pixelForY(maxY), pixelForY(inY), pixelForY(outY));
|
|
15287
|
+
} else {
|
|
15288
|
+
for (let i3 = dir == 1 ? idx0 : idx1; i3 >= idx0 && i3 <= idx1; i3 += dir) {
|
|
15289
|
+
let yVal = dataY[i3];
|
|
15290
|
+
if (yVal === null)
|
|
15291
|
+
hasGap = true;
|
|
15292
|
+
else if (yVal != null)
|
|
15293
|
+
lineTo(stroke, pixelForX(dataX[i3]), pixelForY(yVal));
|
|
14881
15294
|
}
|
|
14882
15295
|
}
|
|
14883
|
-
if (minY != inf && minY != maxY && drawnAtX != accX)
|
|
14884
|
-
drawAcc(stroke, accX, minY, maxY, inY, outY);
|
|
14885
15296
|
let [bandFillDir, bandClipDir] = bandFillClipDirs(u3, seriesIdx);
|
|
14886
15297
|
if (series.fill != null || bandFillDir != 0) {
|
|
14887
15298
|
let fill = _paths.fill = new Path2D(stroke);
|
|
14888
15299
|
let fillToVal = series.fillTo(u3, seriesIdx, series.min, series.max, bandFillDir);
|
|
14889
15300
|
let fillToY = pixelForY(fillToVal);
|
|
14890
|
-
|
|
14891
|
-
|
|
15301
|
+
let frX = pixelForX(dataX[idx0]);
|
|
15302
|
+
let toX = pixelForX(dataX[idx1]);
|
|
15303
|
+
if (dir == -1)
|
|
15304
|
+
[toX, frX] = [frX, toX];
|
|
15305
|
+
lineTo(fill, toX, fillToY);
|
|
15306
|
+
lineTo(fill, frX, fillToY);
|
|
14892
15307
|
}
|
|
14893
15308
|
if (!series.spanGaps) {
|
|
14894
15309
|
let gaps2 = [];
|
|
@@ -14913,6 +15328,7 @@ function stepped(opts) {
|
|
|
14913
15328
|
const extend = ifNull(opts.extend, false);
|
|
14914
15329
|
return (u3, seriesIdx, idx0, idx1) => {
|
|
14915
15330
|
return orient(u3, seriesIdx, (series, dataX, dataY, scaleX, scaleY, valToPosX, valToPosY, xOff, yOff, xDim, yDim) => {
|
|
15331
|
+
[idx0, idx1] = nonNullIdxs(dataY, idx0, idx1);
|
|
14916
15332
|
let pxRound = series.pxRound;
|
|
14917
15333
|
let { left, width } = u3.bbox;
|
|
14918
15334
|
let pixelForX = (val) => pxRound(valToPosX(val, scaleX, xDim, xOff));
|
|
@@ -14921,8 +15337,6 @@ function stepped(opts) {
|
|
|
14921
15337
|
const _paths = { stroke: new Path2D(), fill: null, clip: null, band: null, gaps: null, flags: BAND_CLIP_FILL };
|
|
14922
15338
|
const stroke = _paths.stroke;
|
|
14923
15339
|
const dir = scaleX.dir * (scaleX.ori == 0 ? 1 : -1);
|
|
14924
|
-
idx0 = nonNullIdx(dataY, idx0, idx1, 1);
|
|
14925
|
-
idx1 = nonNullIdx(dataY, idx0, idx1, -1);
|
|
14926
15340
|
let prevYPos = pixelForY(dataY[dir == 1 ? idx0 : idx1]);
|
|
14927
15341
|
let firstXPos = pixelForX(dataX[dir == 1 ? idx0 : idx1]);
|
|
14928
15342
|
let prevXPos = firstXPos;
|
|
@@ -15013,7 +15427,7 @@ function bars(opts) {
|
|
|
15013
15427
|
const _maxWidth = ifNull(size[1], inf);
|
|
15014
15428
|
const _minWidth = ifNull(size[2], 1);
|
|
15015
15429
|
const disp = ifNull(opts.disp, EMPTY_OBJ);
|
|
15016
|
-
const _each = ifNull(opts.each, (
|
|
15430
|
+
const _each = ifNull(opts.each, (_3) => {
|
|
15017
15431
|
});
|
|
15018
15432
|
const { fill: dispFills, stroke: dispStrokes } = disp;
|
|
15019
15433
|
return (u3, seriesIdx, idx0, idx1) => {
|
|
@@ -15158,6 +15572,7 @@ function splineInterp(interp, opts) {
|
|
|
15158
15572
|
const alignGaps = ifNull(opts?.alignGaps, 0);
|
|
15159
15573
|
return (u3, seriesIdx, idx0, idx1) => {
|
|
15160
15574
|
return orient(u3, seriesIdx, (series, dataX, dataY, scaleX, scaleY, valToPosX, valToPosY, xOff, yOff, xDim, yDim) => {
|
|
15575
|
+
[idx0, idx1] = nonNullIdxs(dataY, idx0, idx1);
|
|
15161
15576
|
let pxRound = series.pxRound;
|
|
15162
15577
|
let pixelForX = (val) => pxRound(valToPosX(val, scaleX, xDim, xOff));
|
|
15163
15578
|
let pixelForY = (val) => pxRound(valToPosY(val, scaleY, yDim, yOff));
|
|
@@ -15172,8 +15587,6 @@ function splineInterp(interp, opts) {
|
|
|
15172
15587
|
bezierCurveTo = bezierCurveToV;
|
|
15173
15588
|
}
|
|
15174
15589
|
const dir = scaleX.dir * (scaleX.ori == 0 ? 1 : -1);
|
|
15175
|
-
idx0 = nonNullIdx(dataY, idx0, idx1, 1);
|
|
15176
|
-
idx1 = nonNullIdx(dataY, idx0, idx1, -1);
|
|
15177
15590
|
let firstXPos = pixelForX(dataX[dir == 1 ? idx0 : idx1]);
|
|
15178
15591
|
let prevXPos = firstXPos;
|
|
15179
15592
|
let xCoords = [];
|
|
@@ -15296,7 +15709,7 @@ function findIncr(minVal, maxVal, incrs, dim, minSpace) {
|
|
|
15296
15709
|
}
|
|
15297
15710
|
function pxRatioFont(font2) {
|
|
15298
15711
|
let fontSize, fontSizeCss;
|
|
15299
|
-
font2 = font2.replace(/(\d+)px/, (
|
|
15712
|
+
font2 = font2.replace(/(\d+)px/, (m3, p1) => (fontSize = round((fontSizeCss = +p1) * pxRatio)) + "px");
|
|
15300
15713
|
return [font2, fontSize, fontSizeCss];
|
|
15301
15714
|
}
|
|
15302
15715
|
function syncFontSize(axis) {
|
|
@@ -15313,16 +15726,12 @@ function uPlot(opts, data, then) {
|
|
|
15313
15726
|
mode: ifNull(opts.mode, 1)
|
|
15314
15727
|
};
|
|
15315
15728
|
const mode = self.mode;
|
|
15316
|
-
function getValPct(val, scale) {
|
|
15317
|
-
let _val = scale.distr == 3 ? log10(val > 0 ? val : scale.clamp(self, val, scale.min, scale.max, scale.key)) : scale.distr == 4 ? asinh(val, scale.asinh) : scale.distr == 100 ? scale.fwd(val) : val;
|
|
15318
|
-
return (_val - scale._min) / (scale._max - scale._min);
|
|
15319
|
-
}
|
|
15320
15729
|
function getHPos(val, scale, dim, off2) {
|
|
15321
|
-
let pct =
|
|
15730
|
+
let pct = scale.valToPct(val);
|
|
15322
15731
|
return off2 + dim * (scale.dir == -1 ? 1 - pct : pct);
|
|
15323
15732
|
}
|
|
15324
15733
|
function getVPos(val, scale, dim, off2) {
|
|
15325
|
-
let pct =
|
|
15734
|
+
let pct = scale.valToPct(val);
|
|
15326
15735
|
return off2 + dim * (scale.dir == -1 ? pct : 1 - pct);
|
|
15327
15736
|
}
|
|
15328
15737
|
function getPos(val, scale, dim, off2) {
|
|
@@ -15374,13 +15783,24 @@ function uPlot(opts, data, then) {
|
|
|
15374
15783
|
series: drawSeries
|
|
15375
15784
|
};
|
|
15376
15785
|
const drawOrder = (opts.drawOrder || ["axes", "series"]).map((key2) => drawOrderMap[key2]);
|
|
15786
|
+
function initValToPct(sc) {
|
|
15787
|
+
const getVal = sc.distr == 3 ? (val) => log10(val > 0 ? val : sc.clamp(self, val, sc.min, sc.max, sc.key)) : sc.distr == 4 ? (val) => asinh(val, sc.asinh) : sc.distr == 100 ? (val) => sc.fwd(val) : (val) => val;
|
|
15788
|
+
return (val) => {
|
|
15789
|
+
let _val = getVal(val);
|
|
15790
|
+
let { _min, _max } = sc;
|
|
15791
|
+
let delta = _max - _min;
|
|
15792
|
+
return (_val - _min) / delta;
|
|
15793
|
+
};
|
|
15794
|
+
}
|
|
15377
15795
|
function initScale(scaleKey) {
|
|
15378
15796
|
let sc = scales[scaleKey];
|
|
15379
15797
|
if (sc == null) {
|
|
15380
15798
|
let scaleOpts = (opts.scales || EMPTY_OBJ)[scaleKey] || EMPTY_OBJ;
|
|
15381
15799
|
if (scaleOpts.from != null) {
|
|
15382
15800
|
initScale(scaleOpts.from);
|
|
15383
|
-
|
|
15801
|
+
let sc2 = assign({}, scales[scaleOpts.from], scaleOpts, { key: scaleKey });
|
|
15802
|
+
sc2.valToPct = initValToPct(sc2);
|
|
15803
|
+
scales[scaleKey] = sc2;
|
|
15384
15804
|
} else {
|
|
15385
15805
|
sc = scales[scaleKey] = assign({}, scaleKey == xScaleKey ? xScaleOpts : yScaleOpts, scaleOpts);
|
|
15386
15806
|
sc.key = scaleKey;
|
|
@@ -15412,6 +15832,7 @@ function uPlot(opts, data, then) {
|
|
|
15412
15832
|
sc.auto = fnOrSelf(rangeIsArr ? false : sc.auto);
|
|
15413
15833
|
sc.clamp = fnOrSelf(sc.clamp || clampScale);
|
|
15414
15834
|
sc._min = sc._max = null;
|
|
15835
|
+
sc.valToPct = initValToPct(sc);
|
|
15415
15836
|
}
|
|
15416
15837
|
}
|
|
15417
15838
|
}
|
|
@@ -15454,7 +15875,9 @@ function uPlot(opts, data, then) {
|
|
|
15454
15875
|
const _timeSeriesVal = timeSeriesVal(_tzDate, timeSeriesStamp(_timeSeriesStamp, _fmtDate));
|
|
15455
15876
|
const activeIdxs = [];
|
|
15456
15877
|
const legend = self.legend = assign({}, legendOpts, opts.legend);
|
|
15878
|
+
const cursor = self.cursor = assign({}, cursorOpts, { drag: { y: mode == 2 } }, opts.cursor);
|
|
15457
15879
|
const showLegend = legend.show;
|
|
15880
|
+
const showCursor = cursor.show;
|
|
15458
15881
|
const markers = legend.markers;
|
|
15459
15882
|
{
|
|
15460
15883
|
legend.idxs = activeIdxs;
|
|
@@ -15514,7 +15937,10 @@ function uPlot(opts, data, then) {
|
|
|
15514
15937
|
}
|
|
15515
15938
|
}
|
|
15516
15939
|
let text = placeDiv(LEGEND_LABEL, label);
|
|
15517
|
-
|
|
15940
|
+
if (s3.label instanceof HTMLElement)
|
|
15941
|
+
text.appendChild(s3.label);
|
|
15942
|
+
else
|
|
15943
|
+
text.textContent = s3.label;
|
|
15518
15944
|
if (i3 > 0) {
|
|
15519
15945
|
if (!markers.show)
|
|
15520
15946
|
text.style.color = s3.width > 0 ? markers.stroke(self, i3) : markers.fill(self, i3);
|
|
@@ -15696,7 +16122,6 @@ function uPlot(opts, data, then) {
|
|
|
15696
16122
|
}
|
|
15697
16123
|
});
|
|
15698
16124
|
}
|
|
15699
|
-
const cursor = self.cursor = assign({}, cursorOpts, { drag: { y: mode == 2 } }, opts.cursor);
|
|
15700
16125
|
if (cursor.dataIdx == null) {
|
|
15701
16126
|
let hov = cursor.hover;
|
|
15702
16127
|
let skip = hov.skip = new Set(hov.skip ?? []);
|
|
@@ -15774,7 +16199,7 @@ function uPlot(opts, data, then) {
|
|
|
15774
16199
|
let cursorPtsTop = [];
|
|
15775
16200
|
function initCursorPt(s3, si) {
|
|
15776
16201
|
let pt = points2.show(self, si);
|
|
15777
|
-
if (pt) {
|
|
16202
|
+
if (pt instanceof HTMLElement) {
|
|
15778
16203
|
addClass(pt, CURSOR_PT);
|
|
15779
16204
|
addClass(pt, s3.class);
|
|
15780
16205
|
elTrans(pt, -10, -10, plotWidCss, plotHgtCss);
|
|
@@ -15821,7 +16246,7 @@ function uPlot(opts, data, then) {
|
|
|
15821
16246
|
legendCells.splice(i3, 0, rowCells[1]);
|
|
15822
16247
|
legend.values.push(null);
|
|
15823
16248
|
}
|
|
15824
|
-
if (
|
|
16249
|
+
if (showCursor) {
|
|
15825
16250
|
activeIdxs.splice(i3, 0, null);
|
|
15826
16251
|
let pt = null;
|
|
15827
16252
|
if (cursorOnePt) {
|
|
@@ -15851,7 +16276,7 @@ function uPlot(opts, data, then) {
|
|
|
15851
16276
|
offMouse(null, tr.firstChild);
|
|
15852
16277
|
tr.remove();
|
|
15853
16278
|
}
|
|
15854
|
-
if (
|
|
16279
|
+
if (showCursor) {
|
|
15855
16280
|
activeIdxs.splice(i3, 1);
|
|
15856
16281
|
cursorPts.splice(i3, 1)[0].remove();
|
|
15857
16282
|
cursorPtsLft.splice(i3, 1);
|
|
@@ -16029,7 +16454,7 @@ function uPlot(opts, data, then) {
|
|
|
16029
16454
|
if (data2.length > 0 && wsc.auto(self, viaAutoScaleX) && (psc == null || psc.min == null)) {
|
|
16030
16455
|
let _i0 = ifNull(i0, 0);
|
|
16031
16456
|
let _i1 = ifNull(i1, data2.length - 1);
|
|
16032
|
-
let minMax = facet2.min == null ?
|
|
16457
|
+
let minMax = facet2.min == null ? getMinMax(data2, _i0, _i1, sorted, wsc.distr == 3) : [facet2.min, facet2.max];
|
|
16033
16458
|
wsc.min = min(wsc.min, facet2.min = minMax[0]);
|
|
16034
16459
|
wsc.max = max(wsc.max, facet2.max = minMax[1]);
|
|
16035
16460
|
}
|
|
@@ -16169,7 +16594,7 @@ function uPlot(opts, data, then) {
|
|
|
16169
16594
|
shouldConvergeSize = true;
|
|
16170
16595
|
fire("setScale", k3);
|
|
16171
16596
|
}
|
|
16172
|
-
if (
|
|
16597
|
+
if (showCursor && cursor.left >= 0)
|
|
16173
16598
|
shouldSetCursor = shouldSetLegend = true;
|
|
16174
16599
|
}
|
|
16175
16600
|
for (let k3 in pendScales)
|
|
@@ -16186,22 +16611,27 @@ function uPlot(opts, data, then) {
|
|
|
16186
16611
|
}
|
|
16187
16612
|
function drawSeries() {
|
|
16188
16613
|
if (dataLen > 0) {
|
|
16614
|
+
let shouldAlpha = series.some((s3) => s3._focus) && ctxAlpha != focus.alpha;
|
|
16615
|
+
if (shouldAlpha)
|
|
16616
|
+
ctx.globalAlpha = ctxAlpha = focus.alpha;
|
|
16189
16617
|
series.forEach((s3, i3) => {
|
|
16190
16618
|
if (i3 > 0 && s3.show) {
|
|
16191
16619
|
cacheStrokeFill(i3, false);
|
|
16192
16620
|
cacheStrokeFill(i3, true);
|
|
16193
16621
|
if (s3._paths == null) {
|
|
16622
|
+
let _ctxAlpha = ctxAlpha;
|
|
16194
16623
|
if (ctxAlpha != s3.alpha)
|
|
16195
16624
|
ctx.globalAlpha = ctxAlpha = s3.alpha;
|
|
16196
16625
|
let _idxs = mode == 2 ? [0, data[i3][0].length - 1] : getOuterIdxs(data[i3]);
|
|
16197
16626
|
s3._paths = s3.paths(self, i3, _idxs[0], _idxs[1]);
|
|
16198
|
-
if (ctxAlpha !=
|
|
16199
|
-
ctx.globalAlpha = ctxAlpha =
|
|
16627
|
+
if (ctxAlpha != _ctxAlpha)
|
|
16628
|
+
ctx.globalAlpha = ctxAlpha = _ctxAlpha;
|
|
16200
16629
|
}
|
|
16201
16630
|
}
|
|
16202
16631
|
});
|
|
16203
16632
|
series.forEach((s3, i3) => {
|
|
16204
16633
|
if (i3 > 0 && s3.show) {
|
|
16634
|
+
let _ctxAlpha = ctxAlpha;
|
|
16205
16635
|
if (ctxAlpha != s3.alpha)
|
|
16206
16636
|
ctx.globalAlpha = ctxAlpha = s3.alpha;
|
|
16207
16637
|
s3._paths != null && drawPath(i3, false);
|
|
@@ -16214,11 +16644,13 @@ function uPlot(opts, data, then) {
|
|
|
16214
16644
|
drawPath(i3, true);
|
|
16215
16645
|
}
|
|
16216
16646
|
}
|
|
16217
|
-
if (ctxAlpha !=
|
|
16218
|
-
ctx.globalAlpha = ctxAlpha =
|
|
16647
|
+
if (ctxAlpha != _ctxAlpha)
|
|
16648
|
+
ctx.globalAlpha = ctxAlpha = _ctxAlpha;
|
|
16219
16649
|
fire("drawSeries", i3);
|
|
16220
16650
|
}
|
|
16221
16651
|
});
|
|
16652
|
+
if (shouldAlpha)
|
|
16653
|
+
ctx.globalAlpha = ctxAlpha = 1;
|
|
16222
16654
|
}
|
|
16223
16655
|
}
|
|
16224
16656
|
function cacheStrokeFill(si, _points) {
|
|
@@ -16425,47 +16857,49 @@ function uPlot(opts, data, then) {
|
|
|
16425
16857
|
continue;
|
|
16426
16858
|
let side = axis.side;
|
|
16427
16859
|
let ori = side % 2;
|
|
16428
|
-
let
|
|
16860
|
+
let x2, y3;
|
|
16429
16861
|
let fillStyle = axis.stroke(self, i3);
|
|
16430
16862
|
let shiftDir = side == 0 || side == 3 ? -1 : 1;
|
|
16431
|
-
|
|
16863
|
+
let [_incr, _space] = axis._found;
|
|
16864
|
+
if (axis.label != null) {
|
|
16432
16865
|
let shiftAmt2 = axis.labelGap * shiftDir;
|
|
16433
16866
|
let baseLpos = round((axis._lpos + shiftAmt2) * pxRatio);
|
|
16434
16867
|
setFontStyle(axis.labelFont[0], fillStyle, "center", side == 2 ? TOP : BOTTOM);
|
|
16435
16868
|
ctx.save();
|
|
16436
16869
|
if (ori == 1) {
|
|
16437
|
-
|
|
16870
|
+
x2 = y3 = 0;
|
|
16438
16871
|
ctx.translate(
|
|
16439
16872
|
baseLpos,
|
|
16440
16873
|
round(plotTop + plotHgt / 2)
|
|
16441
16874
|
);
|
|
16442
16875
|
ctx.rotate((side == 3 ? -PI : PI) / 2);
|
|
16443
16876
|
} else {
|
|
16444
|
-
|
|
16877
|
+
x2 = round(plotLft + plotWid / 2);
|
|
16445
16878
|
y3 = baseLpos;
|
|
16446
16879
|
}
|
|
16447
|
-
|
|
16880
|
+
let _label = isFn(axis.label) ? axis.label(self, i3, _incr, _space) : axis.label;
|
|
16881
|
+
ctx.fillText(_label, x2, y3);
|
|
16448
16882
|
ctx.restore();
|
|
16449
16883
|
}
|
|
16450
|
-
let [_incr, _space] = axis._found;
|
|
16451
16884
|
if (_space == 0)
|
|
16452
16885
|
continue;
|
|
16453
16886
|
let scale = scales[axis.scale];
|
|
16454
16887
|
let plotDim = ori == 0 ? plotWid : plotHgt;
|
|
16455
16888
|
let plotOff = ori == 0 ? plotLft : plotTop;
|
|
16456
|
-
let axisGap = round(axis.gap * pxRatio);
|
|
16457
16889
|
let _splits = axis._splits;
|
|
16458
16890
|
let splits = scale.distr == 2 ? _splits.map((i4) => data0[i4]) : _splits;
|
|
16459
16891
|
let incr = scale.distr == 2 ? data0[_splits[1]] - data0[_splits[0]] : _incr;
|
|
16460
16892
|
let ticks2 = axis.ticks;
|
|
16461
16893
|
let border2 = axis.border;
|
|
16462
|
-
let
|
|
16894
|
+
let _tickSize = ticks2.show ? ticks2.size : 0;
|
|
16895
|
+
let tickSize = round(_tickSize * pxRatio);
|
|
16896
|
+
let axisGap = round((axis.alignTo == 2 ? axis._size - _tickSize - axis.gap : axis.gap) * pxRatio);
|
|
16463
16897
|
let angle = axis._rotate * -PI / 180;
|
|
16464
16898
|
let basePos = pxRound(axis._pos * pxRatio);
|
|
16465
16899
|
let shiftAmt = (tickSize + axisGap) * shiftDir;
|
|
16466
16900
|
let finalPos = basePos + shiftAmt;
|
|
16467
16901
|
y3 = ori == 0 ? finalPos : 0;
|
|
16468
|
-
|
|
16902
|
+
x2 = ori == 1 ? finalPos : 0;
|
|
16469
16903
|
let font2 = axis.font[0];
|
|
16470
16904
|
let textAlign = axis.align == 1 ? LEFT : axis.align == 2 ? RIGHT : angle > 0 ? LEFT : angle < 0 ? RIGHT : ori == 0 ? "center" : side == 3 ? RIGHT : LEFT;
|
|
16471
16905
|
let textBaseline = angle || ori == 1 ? "middle" : side == 2 ? TOP : BOTTOM;
|
|
@@ -16477,7 +16911,7 @@ function uPlot(opts, data, then) {
|
|
|
16477
16911
|
let val = _values[i4];
|
|
16478
16912
|
if (val != null) {
|
|
16479
16913
|
if (ori == 0)
|
|
16480
|
-
|
|
16914
|
+
x2 = canOffs[i4];
|
|
16481
16915
|
else
|
|
16482
16916
|
y3 = canOffs[i4];
|
|
16483
16917
|
val = "" + val;
|
|
@@ -16486,12 +16920,12 @@ function uPlot(opts, data, then) {
|
|
|
16486
16920
|
let text = _parts[j3];
|
|
16487
16921
|
if (angle) {
|
|
16488
16922
|
ctx.save();
|
|
16489
|
-
ctx.translate(
|
|
16923
|
+
ctx.translate(x2, y3 + j3 * lineHeight);
|
|
16490
16924
|
ctx.rotate(angle);
|
|
16491
16925
|
ctx.fillText(text, 0, 0);
|
|
16492
16926
|
ctx.restore();
|
|
16493
16927
|
} else
|
|
16494
|
-
ctx.fillText(text,
|
|
16928
|
+
ctx.fillText(text, x2, y3 + j3 * lineHeight);
|
|
16495
16929
|
}
|
|
16496
16930
|
}
|
|
16497
16931
|
}
|
|
@@ -16626,7 +17060,7 @@ function uPlot(opts, data, then) {
|
|
|
16626
17060
|
resetYSeries(false);
|
|
16627
17061
|
let pctWid = plotWidCss / _plotWidCss;
|
|
16628
17062
|
let pctHgt = plotHgtCss / _plotHgtCss;
|
|
16629
|
-
if (
|
|
17063
|
+
if (showCursor && !shouldSetCursor && cursor.left >= 0) {
|
|
16630
17064
|
cursor.left *= pctWid;
|
|
16631
17065
|
cursor.top *= pctHgt;
|
|
16632
17066
|
vCursor && elTrans(vCursor, round(cursor.left), 0, plotWidCss, plotHgtCss);
|
|
@@ -16666,7 +17100,7 @@ function uPlot(opts, data, then) {
|
|
|
16666
17100
|
setSelect(select);
|
|
16667
17101
|
shouldSetSelect = false;
|
|
16668
17102
|
}
|
|
16669
|
-
if (
|
|
17103
|
+
if (showCursor && shouldSetCursor) {
|
|
16670
17104
|
updateCursor(null, true, false);
|
|
16671
17105
|
shouldSetCursor = false;
|
|
16672
17106
|
}
|
|
@@ -16734,7 +17168,7 @@ function uPlot(opts, data, then) {
|
|
|
16734
17168
|
const drag = cursor.drag;
|
|
16735
17169
|
let dragX = drag.x;
|
|
16736
17170
|
let dragY = drag.y;
|
|
16737
|
-
if (
|
|
17171
|
+
if (showCursor) {
|
|
16738
17172
|
if (cursor.x)
|
|
16739
17173
|
xCursor = placeDiv(CURSOR_X, over);
|
|
16740
17174
|
if (cursor.y)
|
|
@@ -16769,15 +17203,16 @@ function uPlot(opts, data, then) {
|
|
|
16769
17203
|
}
|
|
16770
17204
|
}
|
|
16771
17205
|
self.setSelect = setSelect;
|
|
16772
|
-
function toggleDOM(i3
|
|
17206
|
+
function toggleDOM(i3) {
|
|
16773
17207
|
let s3 = series[i3];
|
|
16774
|
-
let label = showLegend ? legendRows[i3] : null;
|
|
16775
17208
|
if (s3.show)
|
|
16776
|
-
|
|
17209
|
+
showLegend && remClass(legendRows[i3], OFF);
|
|
16777
17210
|
else {
|
|
16778
|
-
|
|
16779
|
-
|
|
16780
|
-
|
|
17211
|
+
showLegend && addClass(legendRows[i3], OFF);
|
|
17212
|
+
if (showCursor) {
|
|
17213
|
+
let pt = cursorOnePt ? cursorPts[0] : cursorPts[i3];
|
|
17214
|
+
pt != null && elTrans(pt, -10, -10, plotWidCss, plotHgtCss);
|
|
17215
|
+
}
|
|
16781
17216
|
}
|
|
16782
17217
|
}
|
|
16783
17218
|
function _setScale(key2, min2, max2) {
|
|
@@ -16790,7 +17225,7 @@ function uPlot(opts, data, then) {
|
|
|
16790
17225
|
series.forEach((s3, si) => {
|
|
16791
17226
|
if (si > 0 && (i3 == si || i3 == null)) {
|
|
16792
17227
|
s3.show = opts2.show;
|
|
16793
|
-
toggleDOM(si
|
|
17228
|
+
toggleDOM(si);
|
|
16794
17229
|
if (mode == 2) {
|
|
16795
17230
|
_setScale(s3.facets[0].scale, null, null);
|
|
16796
17231
|
_setScale(s3.facets[1].scale, null, null);
|
|
@@ -16824,7 +17259,7 @@ function uPlot(opts, data, then) {
|
|
|
16824
17259
|
self.delBand = delBand;
|
|
16825
17260
|
function setAlpha(i3, value) {
|
|
16826
17261
|
series[i3].alpha = value;
|
|
16827
|
-
if (
|
|
17262
|
+
if (showCursor && cursorPts[i3] != null)
|
|
16828
17263
|
cursorPts[i3].style.opacity = value;
|
|
16829
17264
|
if (showLegend && legendRows[i3])
|
|
16830
17265
|
legendRows[i3].style.opacity = value;
|
|
@@ -16957,7 +17392,7 @@ function uPlot(opts, data, then) {
|
|
|
16957
17392
|
[mouseLeft1, mouseTop1] = cursor.move(self, mouseLeft1, mouseTop1);
|
|
16958
17393
|
cursor.left = mouseLeft1;
|
|
16959
17394
|
cursor.top = mouseTop1;
|
|
16960
|
-
if (
|
|
17395
|
+
if (showCursor) {
|
|
16961
17396
|
vCursor && elTrans(vCursor, round(mouseLeft1), 0, plotWidCss, plotHgtCss);
|
|
16962
17397
|
hCursor && elTrans(hCursor, 0, round(mouseTop1), plotWidCss, plotHgtCss);
|
|
16963
17398
|
}
|
|
@@ -17002,8 +17437,8 @@ function uPlot(opts, data, then) {
|
|
|
17002
17437
|
let yVal2 = idx2 == null ? null : mode == 1 ? data[i3][idx2] : data[i3][1][idx2];
|
|
17003
17438
|
shouldSetLegend = shouldSetLegend || yVal2 != yVal1 || idx2 != idx1;
|
|
17004
17439
|
activeIdxs[i3] = idx2;
|
|
17005
|
-
let xPos2 = idx2 == idx ? xPos : valToPosX(mode == 1 ? data[0][idx2] : data[i3][0][idx2], scaleX, xDim, 0);
|
|
17006
17440
|
if (i3 > 0 && s3.show) {
|
|
17441
|
+
let xPos2 = idx2 == null ? -10 : idx2 == idx ? xPos : valToPosX(mode == 1 ? data[0][idx2] : data[i3][0][idx2], scaleX, xDim, 0);
|
|
17007
17442
|
let yPos = yVal2 == null ? -10 : valToPosY(yVal2, mode == 1 ? scales[s3.scale] : scales[s3.facets[1].scale], yDim, 0);
|
|
17008
17443
|
if (cursorFocus && yVal2 != null) {
|
|
17009
17444
|
let mouseYPos = scaleX.ori == 1 ? mouseLeft1 : mouseTop1;
|
|
@@ -17079,11 +17514,13 @@ function uPlot(opts, data, then) {
|
|
|
17079
17514
|
let focusChanged = focusedSeries == null ? closestDist <= p3 : closestDist > p3 || closestSeries != focusedSeries;
|
|
17080
17515
|
if (shouldSetLegend || focusChanged) {
|
|
17081
17516
|
let pt = cursorPts[0];
|
|
17082
|
-
|
|
17083
|
-
|
|
17084
|
-
|
|
17085
|
-
|
|
17086
|
-
|
|
17517
|
+
if (pt != null) {
|
|
17518
|
+
cursorPtsLft[0] = _ptLft;
|
|
17519
|
+
cursorPtsTop[0] = _ptTop;
|
|
17520
|
+
elSize(pt, _ptWid, _ptHgt, _centered);
|
|
17521
|
+
elColor(pt, _ptFill, _ptStroke);
|
|
17522
|
+
elTrans(pt, ceil(_ptLft), ceil(_ptTop), plotWidCss, plotHgtCss);
|
|
17523
|
+
}
|
|
17087
17524
|
}
|
|
17088
17525
|
}
|
|
17089
17526
|
}
|
|
@@ -17279,7 +17716,7 @@ function uPlot(opts, data, then) {
|
|
|
17279
17716
|
_t = __l;
|
|
17280
17717
|
}
|
|
17281
17718
|
}
|
|
17282
|
-
if (snap) {
|
|
17719
|
+
if (snap && (src == null || src.cursor.event.type == mousemove)) {
|
|
17283
17720
|
if (_l <= 1 || _l >= plotWidCss - 1)
|
|
17284
17721
|
_l = incrRound(_l, plotWidCss);
|
|
17285
17722
|
if (_t <= 1 || _t >= plotHgtCss - 1)
|
|
@@ -17320,7 +17757,6 @@ function uPlot(opts, data, then) {
|
|
|
17320
17757
|
downSelectTop = top;
|
|
17321
17758
|
downSelectWidth = width;
|
|
17322
17759
|
downSelectHeight = height;
|
|
17323
|
-
hideSelect();
|
|
17324
17760
|
}
|
|
17325
17761
|
function mouseUp(e3, src, _l, _t, _w, _h, _i) {
|
|
17326
17762
|
dragging = drag._x = drag._y = false;
|
|
@@ -17356,7 +17792,7 @@ function uPlot(opts, data, then) {
|
|
|
17356
17792
|
hideSelect();
|
|
17357
17793
|
} else if (cursor.lock) {
|
|
17358
17794
|
cursor._lock = !cursor._lock;
|
|
17359
|
-
updateCursor(
|
|
17795
|
+
updateCursor(src, true, e3 != null);
|
|
17360
17796
|
}
|
|
17361
17797
|
if (e3 != null) {
|
|
17362
17798
|
offMouse(mouseup, doc);
|
|
@@ -17393,6 +17829,7 @@ function uPlot(opts, data, then) {
|
|
|
17393
17829
|
}
|
|
17394
17830
|
mouseLeft1 = -10;
|
|
17395
17831
|
mouseTop1 = -10;
|
|
17832
|
+
activeIdxs.fill(null);
|
|
17396
17833
|
updateCursor(null, true, true);
|
|
17397
17834
|
if (_dragging)
|
|
17398
17835
|
dragging = _dragging;
|
|
@@ -17421,7 +17858,7 @@ function uPlot(opts, data, then) {
|
|
|
17421
17858
|
idx = seriesIdxMatcher2(self, src, idx);
|
|
17422
17859
|
idx != -1 && setSeries(idx, opts2, true, false);
|
|
17423
17860
|
};
|
|
17424
|
-
if (
|
|
17861
|
+
if (showCursor) {
|
|
17425
17862
|
onMouse(mousedown, over, mouseDown);
|
|
17426
17863
|
onMouse(mousemove, over, mouseMove);
|
|
17427
17864
|
onMouse(mouseenter, over, (e3) => {
|
|
@@ -17466,14 +17903,14 @@ function uPlot(opts, data, then) {
|
|
|
17466
17903
|
cursor.sync = syncOpts;
|
|
17467
17904
|
const syncKey = syncOpts.key;
|
|
17468
17905
|
const sync = _sync(syncKey);
|
|
17469
|
-
function pubSync(type, src,
|
|
17470
|
-
if (syncOpts.filters.pub(type, src,
|
|
17471
|
-
sync.pub(type, src,
|
|
17906
|
+
function pubSync(type, src, x2, y3, w3, h3, i3) {
|
|
17907
|
+
if (syncOpts.filters.pub(type, src, x2, y3, w3, h3, i3))
|
|
17908
|
+
sync.pub(type, src, x2, y3, w3, h3, i3);
|
|
17472
17909
|
}
|
|
17473
17910
|
sync.sub(self);
|
|
17474
|
-
function pub(type, src,
|
|
17475
|
-
if (syncOpts.filters.sub(type, src,
|
|
17476
|
-
events[type](null, src,
|
|
17911
|
+
function pub(type, src, x2, y3, w3, h3, i3) {
|
|
17912
|
+
if (syncOpts.filters.sub(type, src, x2, y3, w3, h3, i3))
|
|
17913
|
+
events[type](null, src, x2, y3, w3, h3, i3);
|
|
17477
17914
|
}
|
|
17478
17915
|
self.pub = pub;
|
|
17479
17916
|
function destroy() {
|
|
@@ -17509,7 +17946,7 @@ function uPlot(opts, data, then) {
|
|
|
17509
17946
|
_init();
|
|
17510
17947
|
return self;
|
|
17511
17948
|
}
|
|
17512
|
-
var FEAT_TIME, pre, UPLOT, ORI_HZ, ORI_VT, TITLE, WRAP, UNDER, OVER, AXIS, OFF, SELECT, CURSOR_X, CURSOR_Y, CURSOR_PT, LEGEND, LEGEND_LIVE, LEGEND_INLINE, LEGEND_SERIES, LEGEND_MARKER, LEGEND_LABEL, LEGEND_VALUE, WIDTH, HEIGHT, TOP, BOTTOM, LEFT, RIGHT, hexBlack, transparent, mousemove, mousedown, mouseup, mouseenter, mouseleave, dblclick, resize, scroll, change, dppxchange, LEGEND_DISP, domEnv, doc, win, nav, pxRatio, query, xformCache, colorCache, sizeCache, evOpts, evOpts2, rangePad, autoRangePart, _eqRangePart, _eqRange, numFormatter, fmtNum2,
|
|
17949
|
+
var FEAT_TIME, pre, UPLOT, ORI_HZ, ORI_VT, TITLE, WRAP, UNDER, OVER, AXIS, OFF, SELECT, CURSOR_X, CURSOR_Y, CURSOR_PT, LEGEND, LEGEND_LIVE, LEGEND_INLINE, LEGEND_SERIES, LEGEND_MARKER, LEGEND_LABEL, LEGEND_VALUE, WIDTH, HEIGHT, TOP, BOTTOM, LEFT, RIGHT, hexBlack, transparent, mousemove, mousedown, mouseup, mouseenter, mouseleave, dblclick, resize, scroll, change, dppxchange, LEGEND_DISP, domEnv, doc, win, nav, pxRatio, query, xformCache, colorCache, sizeCache, evOpts, evOpts2, notNullish, isPositive, nonNullIdxs, positiveIdxs, rangePad, autoRangePart, _eqRangePart, _eqRange, numFormatter, fmtNum2, M, PI, abs, floor, round, ceil, min, max, pow, sign, log10, log2, sinh, asinh, inf, noop, retArg0, retArg1, retNull, retTrue, retEq, regex6, fixFloat, fixedDec, EMPTY_OBJ, EMPTY_ARR, nullNullTuple, isArr, isInt, isUndef, TypedArray, __proto__, NULL_REMOVE, NULL_RETAIN, NULL_EXPAND, microTask, months, days, days3, months3, engNames, subs, localTz, onlyWhole, allMults, decIncrs, oneIncrs, wholeIncrs, numIncrs, NL, yyyy, NLyyyy, md, NLmd, NLmdyy, aa, hmm, hmmaa, NLhmmaa, ss, _2, timeIncrsMs, _timeAxisStampsMs, timeAxisSplitsMs, timeIncrsS, _timeAxisStampsS, timeAxisSplitsS, _timeSeriesStamp, legendOpts, moveTuple, cursorOpts, axisLines, grid, ticks, border, font, labelFont, lineGap, xAxisOpts, numSeriesLabel, timeSeriesLabel, xSeriesOpts, RE_ALL, RE_12357, RE_125, RE_1, _filt, yAxisOpts, facet, gaps, xySeriesOpts, ySeriesOpts, xScaleOpts, yScaleOpts, syncs, BAND_CLIP_FILL, BAND_CLIP_STROKE, moveToH, moveToV, lineToH, lineToV, rectH, rectV, arcH, arcV, bezierCurveToH, bezierCurveToV, drawAccH, drawAccV, cursorPlots, linearPath, pointsPath, snapTimeX, snapLogX, snapAsinhX;
|
|
17513
17950
|
var init_uPlot_esm = __esm({
|
|
17514
17951
|
"node_modules/uplot/dist/uPlot.esm.js"() {
|
|
17515
17952
|
"use strict";
|
|
@@ -17564,6 +18001,10 @@ var init_uPlot_esm = __esm({
|
|
|
17564
18001
|
evOpts = { passive: true };
|
|
17565
18002
|
evOpts2 = { ...evOpts, capture: true };
|
|
17566
18003
|
domEnv && setPxRatio();
|
|
18004
|
+
notNullish = (v3) => v3 != null;
|
|
18005
|
+
isPositive = (v3) => v3 != null && v3 > 0;
|
|
18006
|
+
nonNullIdxs = makeIndexOfs(notNullish);
|
|
18007
|
+
positiveIdxs = makeIndexOfs(isPositive);
|
|
17567
18008
|
rangePad = 0.1;
|
|
17568
18009
|
autoRangePart = {
|
|
17569
18010
|
mode: 3,
|
|
@@ -17580,27 +18021,27 @@ var init_uPlot_esm = __esm({
|
|
|
17580
18021
|
};
|
|
17581
18022
|
numFormatter = new Intl.NumberFormat(domEnv ? nav.language : "en-US");
|
|
17582
18023
|
fmtNum2 = (val) => numFormatter.format(val);
|
|
17583
|
-
|
|
17584
|
-
PI =
|
|
17585
|
-
abs =
|
|
17586
|
-
floor =
|
|
17587
|
-
round =
|
|
17588
|
-
ceil =
|
|
17589
|
-
min =
|
|
17590
|
-
max =
|
|
17591
|
-
pow =
|
|
17592
|
-
sign =
|
|
17593
|
-
log10 =
|
|
17594
|
-
log2 =
|
|
17595
|
-
sinh = (v3, linthresh = 1) =>
|
|
17596
|
-
asinh = (v3, linthresh = 1) =>
|
|
18024
|
+
M = Math;
|
|
18025
|
+
PI = M.PI;
|
|
18026
|
+
abs = M.abs;
|
|
18027
|
+
floor = M.floor;
|
|
18028
|
+
round = M.round;
|
|
18029
|
+
ceil = M.ceil;
|
|
18030
|
+
min = M.min;
|
|
18031
|
+
max = M.max;
|
|
18032
|
+
pow = M.pow;
|
|
18033
|
+
sign = M.sign;
|
|
18034
|
+
log10 = M.log10;
|
|
18035
|
+
log2 = M.log2;
|
|
18036
|
+
sinh = (v3, linthresh = 1) => M.sinh(v3) * linthresh;
|
|
18037
|
+
asinh = (v3, linthresh = 1) => M.asinh(v3 / linthresh);
|
|
17597
18038
|
inf = Infinity;
|
|
17598
18039
|
noop = () => {
|
|
17599
18040
|
};
|
|
17600
18041
|
retArg0 = (_0) => _0;
|
|
17601
18042
|
retArg1 = (_0, _1) => _1;
|
|
17602
|
-
retNull = (
|
|
17603
|
-
retTrue = (
|
|
18043
|
+
retNull = (_3) => null;
|
|
18044
|
+
retTrue = (_3) => true;
|
|
17604
18045
|
retEq = (a3, b2) => a3 == b2;
|
|
17605
18046
|
regex6 = /\.\d*?(?=9{6,}|0{6,})/gm;
|
|
17606
18047
|
fixFloat = (val) => {
|
|
@@ -17726,7 +18167,7 @@ var init_uPlot_esm = __esm({
|
|
|
17726
18167
|
hmmaa = hmm + aa;
|
|
17727
18168
|
NLhmmaa = NL + hmmaa;
|
|
17728
18169
|
ss = ":{ss}";
|
|
17729
|
-
|
|
18170
|
+
_2 = null;
|
|
17730
18171
|
[timeIncrsMs, _timeAxisStampsMs, timeAxisSplitsMs] = genTimeStuffs(1);
|
|
17731
18172
|
[timeIncrsS, _timeAxisStampsS, timeAxisSplitsS] = genTimeStuffs(1e-3);
|
|
17732
18173
|
genIncrs(2, -53, 53, [1]);
|
|
@@ -17826,6 +18267,7 @@ var init_uPlot_esm = __esm({
|
|
|
17826
18267
|
stroke: hexBlack,
|
|
17827
18268
|
space: 50,
|
|
17828
18269
|
gap: 5,
|
|
18270
|
+
alignTo: 1,
|
|
17829
18271
|
size: 50,
|
|
17830
18272
|
labelGap: 0,
|
|
17831
18273
|
labelSize: 30,
|
|
@@ -17867,6 +18309,7 @@ var init_uPlot_esm = __esm({
|
|
|
17867
18309
|
stroke: hexBlack,
|
|
17868
18310
|
space: 30,
|
|
17869
18311
|
gap: 5,
|
|
18312
|
+
alignTo: 1,
|
|
17870
18313
|
size: 50,
|
|
17871
18314
|
labelGap: 0,
|
|
17872
18315
|
labelSize: 30,
|
|
@@ -17948,25 +18391,25 @@ var init_uPlot_esm = __esm({
|
|
|
17948
18391
|
syncs = {};
|
|
17949
18392
|
BAND_CLIP_FILL = 1 << 0;
|
|
17950
18393
|
BAND_CLIP_STROKE = 1 << 1;
|
|
17951
|
-
moveToH = (p3,
|
|
17952
|
-
p3.moveTo(
|
|
18394
|
+
moveToH = (p3, x2, y3) => {
|
|
18395
|
+
p3.moveTo(x2, y3);
|
|
17953
18396
|
};
|
|
17954
|
-
moveToV = (p3, y3,
|
|
17955
|
-
p3.moveTo(
|
|
18397
|
+
moveToV = (p3, y3, x2) => {
|
|
18398
|
+
p3.moveTo(x2, y3);
|
|
17956
18399
|
};
|
|
17957
|
-
lineToH = (p3,
|
|
17958
|
-
p3.lineTo(
|
|
18400
|
+
lineToH = (p3, x2, y3) => {
|
|
18401
|
+
p3.lineTo(x2, y3);
|
|
17959
18402
|
};
|
|
17960
|
-
lineToV = (p3, y3,
|
|
17961
|
-
p3.lineTo(
|
|
18403
|
+
lineToV = (p3, y3, x2) => {
|
|
18404
|
+
p3.lineTo(x2, y3);
|
|
17962
18405
|
};
|
|
17963
18406
|
rectH = rect(0);
|
|
17964
18407
|
rectV = rect(1);
|
|
17965
|
-
arcH = (p3,
|
|
17966
|
-
p3.arc(
|
|
18408
|
+
arcH = (p3, x2, y3, r3, startAngle, endAngle) => {
|
|
18409
|
+
p3.arc(x2, y3, r3, startAngle, endAngle);
|
|
17967
18410
|
};
|
|
17968
|
-
arcV = (p3, y3,
|
|
17969
|
-
p3.arc(
|
|
18411
|
+
arcV = (p3, y3, x2, r3, startAngle, endAngle) => {
|
|
18412
|
+
p3.arc(x2, y3, r3, startAngle, endAngle);
|
|
17970
18413
|
};
|
|
17971
18414
|
bezierCurveToH = (p3, bp1x, bp1y, bp2x, bp2y, p2x, p2y) => {
|
|
17972
18415
|
p3.bezierCurveTo(bp1x, bp1y, bp2x, bp2y, p2x, p2y);
|
|
@@ -18048,166 +18491,173 @@ var l;
|
|
|
18048
18491
|
var u;
|
|
18049
18492
|
var t2;
|
|
18050
18493
|
var i;
|
|
18051
|
-
var o;
|
|
18052
18494
|
var r;
|
|
18053
|
-
var
|
|
18495
|
+
var o;
|
|
18054
18496
|
var e;
|
|
18497
|
+
var f;
|
|
18055
18498
|
var c;
|
|
18056
18499
|
var s;
|
|
18057
18500
|
var a;
|
|
18058
|
-
var h
|
|
18059
|
-
var p
|
|
18060
|
-
var v
|
|
18061
|
-
var y
|
|
18062
|
-
|
|
18501
|
+
var h;
|
|
18502
|
+
var p;
|
|
18503
|
+
var v;
|
|
18504
|
+
var y;
|
|
18505
|
+
var d = {};
|
|
18506
|
+
var w = [];
|
|
18507
|
+
var _ = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;
|
|
18508
|
+
var g = Array.isArray;
|
|
18509
|
+
function m(n3, l3) {
|
|
18063
18510
|
for (var u3 in l3) n3[u3] = l3[u3];
|
|
18064
18511
|
return n3;
|
|
18065
18512
|
}
|
|
18066
|
-
function
|
|
18067
|
-
|
|
18068
|
-
l3 && l3.removeChild(n3);
|
|
18513
|
+
function b(n3) {
|
|
18514
|
+
n3 && n3.parentNode && n3.parentNode.removeChild(n3);
|
|
18069
18515
|
}
|
|
18070
|
-
function
|
|
18071
|
-
var i3,
|
|
18072
|
-
for (
|
|
18073
|
-
if (arguments.length > 2 && (
|
|
18074
|
-
return
|
|
18516
|
+
function k(l3, u3, t5) {
|
|
18517
|
+
var i3, r3, o3, e3 = {};
|
|
18518
|
+
for (o3 in u3) "key" == o3 ? i3 = u3[o3] : "ref" == o3 ? r3 = u3[o3] : e3[o3] = u3[o3];
|
|
18519
|
+
if (arguments.length > 2 && (e3.children = arguments.length > 3 ? n2.call(arguments, 2) : t5), "function" == typeof l3 && null != l3.defaultProps) for (o3 in l3.defaultProps) void 0 === e3[o3] && (e3[o3] = l3.defaultProps[o3]);
|
|
18520
|
+
return x(l3, e3, i3, r3, null);
|
|
18075
18521
|
}
|
|
18076
|
-
function
|
|
18077
|
-
var
|
|
18078
|
-
return null ==
|
|
18522
|
+
function x(n3, t5, i3, r3, o3) {
|
|
18523
|
+
var e3 = { type: n3, props: t5, key: i3, ref: r3, __k: null, __: null, __b: 0, __e: null, __c: null, constructor: void 0, __v: null == o3 ? ++u : o3, __i: -1, __u: 0 };
|
|
18524
|
+
return null == o3 && null != l.vnode && l.vnode(e3), e3;
|
|
18079
18525
|
}
|
|
18080
|
-
function
|
|
18526
|
+
function S(n3) {
|
|
18081
18527
|
return n3.children;
|
|
18082
18528
|
}
|
|
18083
|
-
function
|
|
18529
|
+
function C(n3, l3) {
|
|
18084
18530
|
this.props = n3, this.context = l3;
|
|
18085
18531
|
}
|
|
18086
|
-
function
|
|
18087
|
-
if (null == l3) return n3.__ ?
|
|
18532
|
+
function $(n3, l3) {
|
|
18533
|
+
if (null == l3) return n3.__ ? $(n3.__, n3.__i + 1) : null;
|
|
18088
18534
|
for (var u3; l3 < n3.__k.length; l3++) if (null != (u3 = n3.__k[l3]) && null != u3.__e) return u3.__e;
|
|
18089
|
-
return "function" == typeof n3.type ?
|
|
18535
|
+
return "function" == typeof n3.type ? $(n3) : null;
|
|
18090
18536
|
}
|
|
18091
|
-
function
|
|
18092
|
-
|
|
18093
|
-
|
|
18094
|
-
|
|
18095
|
-
n3.__e = n3.__c.base = u3.__e;
|
|
18096
|
-
break;
|
|
18097
|
-
}
|
|
18098
|
-
return C(n3);
|
|
18537
|
+
function I(n3) {
|
|
18538
|
+
if (n3.__P && n3.__d) {
|
|
18539
|
+
var u3 = n3.__v, t5 = u3.__e, i3 = [], r3 = [], o3 = m({}, u3);
|
|
18540
|
+
o3.__v = u3.__v + 1, l.vnode && l.vnode(o3), q(n3.__P, o3, u3, n3.__n, n3.__P.namespaceURI, 32 & u3.__u ? [t5] : null, i3, null == t5 ? $(u3) : t5, !!(32 & u3.__u), r3), o3.__v = u3.__v, o3.__.__k[o3.__i] = o3, D(i3, o3, r3), u3.__e = u3.__ = null, o3.__e != t5 && P(o3);
|
|
18099
18541
|
}
|
|
18100
18542
|
}
|
|
18101
|
-
function
|
|
18102
|
-
(
|
|
18543
|
+
function P(n3) {
|
|
18544
|
+
if (null != (n3 = n3.__) && null != n3.__c) return n3.__e = n3.__c.base = null, n3.__k.some(function(l3) {
|
|
18545
|
+
if (null != l3 && null != l3.__e) return n3.__e = n3.__c.base = l3.__e;
|
|
18546
|
+
}), P(n3);
|
|
18103
18547
|
}
|
|
18104
|
-
function
|
|
18105
|
-
|
|
18106
|
-
|
|
18107
|
-
|
|
18548
|
+
function A(n3) {
|
|
18549
|
+
(!n3.__d && (n3.__d = true) && i.push(n3) && !H.__r++ || r != l.debounceRendering) && ((r = l.debounceRendering) || o)(H);
|
|
18550
|
+
}
|
|
18551
|
+
function H() {
|
|
18552
|
+
try {
|
|
18553
|
+
for (var n3, l3 = 1; i.length; ) i.length > l3 && i.sort(e), n3 = i.shift(), l3 = i.length, I(n3);
|
|
18554
|
+
} finally {
|
|
18555
|
+
i.length = H.__r = 0;
|
|
18556
|
+
}
|
|
18108
18557
|
}
|
|
18109
|
-
function
|
|
18110
|
-
var a3, v3, y3,
|
|
18111
|
-
for (
|
|
18112
|
-
u3.
|
|
18558
|
+
function L(n3, l3, u3, t5, i3, r3, o3, e3, f3, c3, s3) {
|
|
18559
|
+
var a3, h3, p3, v3, y3, _3, g2, m3 = t5 && t5.__k || w, b2 = l3.length;
|
|
18560
|
+
for (f3 = T(u3, l3, m3, f3, b2), a3 = 0; a3 < b2; a3++) null != (p3 = u3.__k[a3]) && (h3 = -1 != p3.__i && m3[p3.__i] || d, p3.__i = a3, _3 = q(n3, p3, h3, i3, r3, o3, e3, f3, c3, s3), v3 = p3.__e, p3.ref && h3.ref != p3.ref && (h3.ref && J(h3.ref, null, p3), s3.push(p3.ref, p3.__c || v3, p3)), null == y3 && null != v3 && (y3 = v3), (g2 = !!(4 & p3.__u)) || h3.__k === p3.__k ? (f3 = j(p3, f3, n3, g2), g2 && h3.__e && (h3.__e = null)) : "function" == typeof p3.type && void 0 !== _3 ? f3 = _3 : v3 && (f3 = v3.nextSibling), p3.__u &= -7);
|
|
18561
|
+
return u3.__e = y3, f3;
|
|
18113
18562
|
}
|
|
18114
|
-
function
|
|
18115
|
-
var
|
|
18116
|
-
for (n3.__k =
|
|
18117
|
-
if (
|
|
18563
|
+
function T(n3, l3, u3, t5, i3) {
|
|
18564
|
+
var r3, o3, e3, f3, c3, s3 = u3.length, a3 = s3, h3 = 0;
|
|
18565
|
+
for (n3.__k = new Array(i3), r3 = 0; r3 < i3; r3++) null != (o3 = l3[r3]) && "boolean" != typeof o3 && "function" != typeof o3 ? ("string" == typeof o3 || "number" == typeof o3 || "bigint" == typeof o3 || o3.constructor == String ? o3 = n3.__k[r3] = x(null, o3, null, null, null) : g(o3) ? o3 = n3.__k[r3] = x(S, { children: o3 }, null, null, null) : void 0 === o3.constructor && o3.__b > 0 ? o3 = n3.__k[r3] = x(o3.type, o3.props, o3.key, o3.ref ? o3.ref : null, o3.__v) : n3.__k[r3] = o3, f3 = r3 + h3, o3.__ = n3, o3.__b = n3.__b + 1, e3 = null, -1 != (c3 = o3.__i = O(o3, u3, f3, a3)) && (a3--, (e3 = u3[c3]) && (e3.__u |= 2)), null == e3 || null == e3.__v ? (-1 == c3 && (i3 > s3 ? h3-- : i3 < s3 && h3++), "function" != typeof o3.type && (o3.__u |= 4)) : c3 != f3 && (c3 == f3 - 1 ? h3-- : c3 == f3 + 1 ? h3++ : (c3 > f3 ? h3-- : h3++, o3.__u |= 4))) : n3.__k[r3] = null;
|
|
18566
|
+
if (a3) for (r3 = 0; r3 < s3; r3++) null != (e3 = u3[r3]) && 0 == (2 & e3.__u) && (e3.__e == t5 && (t5 = $(e3)), K(e3, e3));
|
|
18567
|
+
return t5;
|
|
18118
18568
|
}
|
|
18119
|
-
function
|
|
18120
|
-
var
|
|
18569
|
+
function j(n3, l3, u3, t5) {
|
|
18570
|
+
var i3, r3;
|
|
18121
18571
|
if ("function" == typeof n3.type) {
|
|
18122
|
-
for (
|
|
18572
|
+
for (i3 = n3.__k, r3 = 0; i3 && r3 < i3.length; r3++) i3[r3] && (i3[r3].__ = n3, l3 = j(i3[r3], l3, u3, t5));
|
|
18123
18573
|
return l3;
|
|
18124
18574
|
}
|
|
18125
|
-
n3.__e != l3 && (u3.insertBefore(n3.__e, l3 || null), l3 = n3.__e);
|
|
18575
|
+
n3.__e != l3 && (t5 && (l3 && n3.type && !l3.parentNode && (l3 = $(n3)), u3.insertBefore(n3.__e, l3 || null)), l3 = n3.__e);
|
|
18126
18576
|
do {
|
|
18127
18577
|
l3 = l3 && l3.nextSibling;
|
|
18128
|
-
} while (null != l3 && 8
|
|
18578
|
+
} while (null != l3 && 8 == l3.nodeType);
|
|
18129
18579
|
return l3;
|
|
18130
18580
|
}
|
|
18131
|
-
function
|
|
18132
|
-
var i3 = n3.key,
|
|
18133
|
-
if (null ===
|
|
18134
|
-
if (t5 > (
|
|
18135
|
-
|
|
18136
|
-
if ((e3 = l3[r3]) && 0 == (131072 & e3.__u) && i3 == e3.key && o3 === e3.type) return r3;
|
|
18137
|
-
r3--;
|
|
18138
|
-
}
|
|
18139
|
-
if (f3 < l3.length) {
|
|
18140
|
-
if ((e3 = l3[f3]) && 0 == (131072 & e3.__u) && i3 == e3.key && o3 === e3.type) return f3;
|
|
18141
|
-
f3++;
|
|
18142
|
-
}
|
|
18581
|
+
function O(n3, l3, u3, t5) {
|
|
18582
|
+
var i3, r3, o3, e3 = n3.key, f3 = n3.type, c3 = l3[u3], s3 = null != c3 && 0 == (2 & c3.__u);
|
|
18583
|
+
if (null === c3 && null == e3 || s3 && e3 == c3.key && f3 == c3.type) return u3;
|
|
18584
|
+
if (t5 > (s3 ? 1 : 0)) {
|
|
18585
|
+
for (i3 = u3 - 1, r3 = u3 + 1; i3 >= 0 || r3 < l3.length; ) if (null != (c3 = l3[o3 = i3 >= 0 ? i3-- : r3++]) && 0 == (2 & c3.__u) && e3 == c3.key && f3 == c3.type) return o3;
|
|
18143
18586
|
}
|
|
18144
18587
|
return -1;
|
|
18145
18588
|
}
|
|
18146
|
-
function
|
|
18147
|
-
"-"
|
|
18589
|
+
function z(n3, l3, u3) {
|
|
18590
|
+
"-" == l3[0] ? n3.setProperty(l3, null == u3 ? "" : u3) : n3[l3] = null == u3 ? "" : "number" != typeof u3 || _.test(l3) ? u3 : u3 + "px";
|
|
18148
18591
|
}
|
|
18149
|
-
function
|
|
18150
|
-
var o3;
|
|
18151
|
-
n: if ("style"
|
|
18592
|
+
function N(n3, l3, u3, t5, i3) {
|
|
18593
|
+
var r3, o3;
|
|
18594
|
+
n: if ("style" == l3) if ("string" == typeof u3) n3.style.cssText = u3;
|
|
18152
18595
|
else {
|
|
18153
|
-
if ("string" == typeof t5 && (n3.style.cssText = t5 = ""), t5) for (l3 in t5) u3 && l3 in u3 ||
|
|
18154
|
-
if (u3) for (l3 in u3) t5 && u3[l3]
|
|
18596
|
+
if ("string" == typeof t5 && (n3.style.cssText = t5 = ""), t5) for (l3 in t5) u3 && l3 in u3 || z(n3.style, l3, "");
|
|
18597
|
+
if (u3) for (l3 in u3) t5 && u3[l3] == t5[l3] || z(n3.style, l3, u3[l3]);
|
|
18155
18598
|
}
|
|
18156
|
-
else if ("o"
|
|
18599
|
+
else if ("o" == l3[0] && "n" == l3[1]) r3 = l3 != (l3 = l3.replace(a, "$1")), o3 = l3.toLowerCase(), l3 = o3 in n3 || "onFocusOut" == l3 || "onFocusIn" == l3 ? o3.slice(2) : l3.slice(2), n3.l || (n3.l = {}), n3.l[l3 + r3] = u3, u3 ? t5 ? u3[s] = t5[s] : (u3[s] = h, n3.addEventListener(l3, r3 ? v : p, r3)) : n3.removeEventListener(l3, r3 ? v : p, r3);
|
|
18157
18600
|
else {
|
|
18158
18601
|
if ("http://www.w3.org/2000/svg" == i3) l3 = l3.replace(/xlink(H|:h)/, "h").replace(/sName$/, "s");
|
|
18159
|
-
else if ("width" != l3 && "height" != l3 && "href" != l3 && "list" != l3 && "form" != l3 && "tabIndex" != l3 && "download" != l3 && "rowSpan" != l3 && "colSpan" != l3 && "role" != l3 && l3 in n3) try {
|
|
18602
|
+
else if ("width" != l3 && "height" != l3 && "href" != l3 && "list" != l3 && "form" != l3 && "tabIndex" != l3 && "download" != l3 && "rowSpan" != l3 && "colSpan" != l3 && "role" != l3 && "popover" != l3 && l3 in n3) try {
|
|
18160
18603
|
n3[l3] = null == u3 ? "" : u3;
|
|
18161
18604
|
break n;
|
|
18162
18605
|
} catch (n4) {
|
|
18163
18606
|
}
|
|
18164
|
-
"function" == typeof u3 || (null == u3 || false === u3 && "-"
|
|
18607
|
+
"function" == typeof u3 || (null == u3 || false === u3 && "-" != l3[4] ? n3.removeAttribute(l3) : n3.setAttribute(l3, "popover" == l3 && 1 == u3 ? "" : u3));
|
|
18165
18608
|
}
|
|
18166
18609
|
}
|
|
18167
|
-
function
|
|
18610
|
+
function V(n3) {
|
|
18168
18611
|
return function(u3) {
|
|
18169
18612
|
if (this.l) {
|
|
18170
18613
|
var t5 = this.l[u3.type + n3];
|
|
18171
|
-
if (null == u3
|
|
18172
|
-
else if (u3
|
|
18614
|
+
if (null == u3[c]) u3[c] = h++;
|
|
18615
|
+
else if (u3[c] < t5[s]) return;
|
|
18173
18616
|
return t5(l.event ? l.event(u3) : u3);
|
|
18174
18617
|
}
|
|
18175
18618
|
};
|
|
18176
18619
|
}
|
|
18177
|
-
function
|
|
18178
|
-
var a3, h3, p3, v3,
|
|
18620
|
+
function q(n3, u3, t5, i3, r3, o3, e3, f3, c3, s3) {
|
|
18621
|
+
var a3, h3, p3, v3, y3, d3, _3, k3, x2, M2, $2, I2, P2, A3, H2, T3 = u3.type;
|
|
18179
18622
|
if (void 0 !== u3.constructor) return null;
|
|
18180
|
-
128 & t5.__u && (c3 = !!(32 & t5.__u),
|
|
18181
|
-
n: if ("function" == typeof
|
|
18182
|
-
if (
|
|
18623
|
+
128 & t5.__u && (c3 = !!(32 & t5.__u), o3 = [f3 = u3.__e = t5.__e]), (a3 = l.__b) && a3(u3);
|
|
18624
|
+
n: if ("function" == typeof T3) try {
|
|
18625
|
+
if (k3 = u3.props, x2 = T3.prototype && T3.prototype.render, M2 = (a3 = T3.contextType) && i3[a3.__c], $2 = a3 ? M2 ? M2.props.value : a3.__ : i3, t5.__c ? _3 = (h3 = u3.__c = t5.__c).__ = h3.__E : (x2 ? u3.__c = h3 = new T3(k3, $2) : (u3.__c = h3 = new C(k3, $2), h3.constructor = T3, h3.render = Q), M2 && M2.sub(h3), h3.state || (h3.state = {}), h3.__n = i3, p3 = h3.__d = true, h3.__h = [], h3._sb = []), x2 && null == h3.__s && (h3.__s = h3.state), x2 && null != T3.getDerivedStateFromProps && (h3.__s == h3.state && (h3.__s = m({}, h3.__s)), m(h3.__s, T3.getDerivedStateFromProps(k3, h3.__s))), v3 = h3.props, y3 = h3.state, h3.__v = u3, p3) x2 && null == T3.getDerivedStateFromProps && null != h3.componentWillMount && h3.componentWillMount(), x2 && null != h3.componentDidMount && h3.__h.push(h3.componentDidMount);
|
|
18183
18626
|
else {
|
|
18184
|
-
if (null ==
|
|
18185
|
-
|
|
18627
|
+
if (x2 && null == T3.getDerivedStateFromProps && k3 !== v3 && null != h3.componentWillReceiveProps && h3.componentWillReceiveProps(k3, $2), u3.__v == t5.__v || !h3.__e && null != h3.shouldComponentUpdate && false === h3.shouldComponentUpdate(k3, h3.__s, $2)) {
|
|
18628
|
+
u3.__v != t5.__v && (h3.props = k3, h3.state = h3.__s, h3.__d = false), u3.__e = t5.__e, u3.__k = t5.__k, u3.__k.some(function(n4) {
|
|
18186
18629
|
n4 && (n4.__ = u3);
|
|
18187
|
-
}),
|
|
18188
|
-
h3._sb = [], h3.__h.length && f3.push(h3);
|
|
18630
|
+
}), w.push.apply(h3.__h, h3._sb), h3._sb = [], h3.__h.length && e3.push(h3);
|
|
18189
18631
|
break n;
|
|
18190
18632
|
}
|
|
18191
|
-
null != h3.componentWillUpdate && h3.componentWillUpdate(
|
|
18192
|
-
h3.componentDidUpdate(v3,
|
|
18633
|
+
null != h3.componentWillUpdate && h3.componentWillUpdate(k3, h3.__s, $2), x2 && null != h3.componentDidUpdate && h3.__h.push(function() {
|
|
18634
|
+
h3.componentDidUpdate(v3, y3, d3);
|
|
18193
18635
|
});
|
|
18194
18636
|
}
|
|
18195
|
-
if (h3.context =
|
|
18196
|
-
|
|
18197
|
-
h3.
|
|
18198
|
-
}
|
|
18199
|
-
|
|
18200
|
-
} while (h3.__d && ++$2 < 25);
|
|
18201
|
-
h3.state = h3.__s, null != h3.getChildContext && (i3 = d(d({}, i3), h3.getChildContext())), p3 || null == h3.getSnapshotBeforeUpdate || (_4 = h3.getSnapshotBeforeUpdate(v3, w3)), S(n3, y(H = null != a3 && a3.type === k && null == a3.key ? a3.props.children : a3) ? H : [H], u3, t5, i3, o3, r3, f3, e3, c3, s3), h3.base = u3.__e, u3.__u &= -161, h3.__h.length && f3.push(h3), g2 && (h3.__E = h3.__ = null);
|
|
18637
|
+
if (h3.context = $2, h3.props = k3, h3.__P = n3, h3.__e = false, I2 = l.__r, P2 = 0, x2) h3.state = h3.__s, h3.__d = false, I2 && I2(u3), a3 = h3.render(h3.props, h3.state, h3.context), w.push.apply(h3.__h, h3._sb), h3._sb = [];
|
|
18638
|
+
else do {
|
|
18639
|
+
h3.__d = false, I2 && I2(u3), a3 = h3.render(h3.props, h3.state, h3.context), h3.state = h3.__s;
|
|
18640
|
+
} while (h3.__d && ++P2 < 25);
|
|
18641
|
+
h3.state = h3.__s, null != h3.getChildContext && (i3 = m(m({}, i3), h3.getChildContext())), x2 && !p3 && null != h3.getSnapshotBeforeUpdate && (d3 = h3.getSnapshotBeforeUpdate(v3, y3)), A3 = null != a3 && a3.type === S && null == a3.key ? E(a3.props.children) : a3, f3 = L(n3, g(A3) ? A3 : [A3], u3, t5, i3, r3, o3, e3, f3, c3, s3), h3.base = u3.__e, u3.__u &= -161, h3.__h.length && e3.push(h3), _3 && (h3.__E = h3.__ = null);
|
|
18202
18642
|
} catch (n4) {
|
|
18203
|
-
u3.__v = null, c3 || null !=
|
|
18643
|
+
if (u3.__v = null, c3 || null != o3) if (n4.then) {
|
|
18644
|
+
for (u3.__u |= c3 ? 160 : 128; f3 && 8 == f3.nodeType && f3.nextSibling; ) f3 = f3.nextSibling;
|
|
18645
|
+
o3[o3.indexOf(f3)] = null, u3.__e = f3;
|
|
18646
|
+
} else {
|
|
18647
|
+
for (H2 = o3.length; H2--; ) b(o3[H2]);
|
|
18648
|
+
B(u3);
|
|
18649
|
+
}
|
|
18650
|
+
else u3.__e = t5.__e, u3.__k = t5.__k, n4.then || B(u3);
|
|
18651
|
+
l.__e(n4, u3, t5);
|
|
18204
18652
|
}
|
|
18205
|
-
else null ==
|
|
18206
|
-
(a3 = l.diffed) && a3(u3);
|
|
18653
|
+
else null == o3 && u3.__v == t5.__v ? (u3.__k = t5.__k, u3.__e = t5.__e) : f3 = u3.__e = G(t5.__e, u3, t5, i3, r3, o3, e3, c3, s3);
|
|
18654
|
+
return (a3 = l.diffed) && a3(u3), 128 & u3.__u ? void 0 : f3;
|
|
18655
|
+
}
|
|
18656
|
+
function B(n3) {
|
|
18657
|
+
n3 && (n3.__c && (n3.__c.__e = true), n3.__k && n3.__k.some(B));
|
|
18207
18658
|
}
|
|
18208
|
-
function
|
|
18209
|
-
|
|
18210
|
-
for (var i3 = 0; i3 < t5.length; i3++) N(t5[i3], t5[++i3], t5[++i3]);
|
|
18659
|
+
function D(n3, u3, t5) {
|
|
18660
|
+
for (var i3 = 0; i3 < t5.length; i3++) J(t5[i3], t5[++i3], t5[++i3]);
|
|
18211
18661
|
l.__c && l.__c(u3, n3), n3.some(function(u4) {
|
|
18212
18662
|
try {
|
|
18213
18663
|
n3 = u4.__h, u4.__h = [], n3.some(function(n4) {
|
|
@@ -18218,44 +18668,45 @@ function j(n3, u3, t5) {
|
|
|
18218
18668
|
}
|
|
18219
18669
|
});
|
|
18220
18670
|
}
|
|
18221
|
-
function
|
|
18222
|
-
|
|
18223
|
-
|
|
18224
|
-
|
|
18225
|
-
|
|
18671
|
+
function E(n3) {
|
|
18672
|
+
return "object" != typeof n3 || null == n3 || n3.__b > 0 ? n3 : g(n3) ? n3.map(E) : m({}, n3);
|
|
18673
|
+
}
|
|
18674
|
+
function G(u3, t5, i3, r3, o3, e3, f3, c3, s3) {
|
|
18675
|
+
var a3, h3, p3, v3, y3, w3, _3, m3 = i3.props || d, k3 = t5.props, x2 = t5.type;
|
|
18676
|
+
if ("svg" == x2 ? o3 = "http://www.w3.org/2000/svg" : "math" == x2 ? o3 = "http://www.w3.org/1998/Math/MathML" : o3 || (o3 = "http://www.w3.org/1999/xhtml"), null != e3) {
|
|
18677
|
+
for (a3 = 0; a3 < e3.length; a3++) if ((y3 = e3[a3]) && "setAttribute" in y3 == !!x2 && (x2 ? y3.localName == x2 : 3 == y3.nodeType)) {
|
|
18678
|
+
u3 = y3, e3[a3] = null;
|
|
18226
18679
|
break;
|
|
18227
18680
|
}
|
|
18228
18681
|
}
|
|
18229
|
-
if (null ==
|
|
18230
|
-
if (null
|
|
18231
|
-
|
|
18682
|
+
if (null == u3) {
|
|
18683
|
+
if (null == x2) return document.createTextNode(k3);
|
|
18684
|
+
u3 = document.createElementNS(o3, x2, k3.is && k3), c3 && (l.__m && l.__m(t5, e3), c3 = false), e3 = null;
|
|
18232
18685
|
}
|
|
18233
|
-
if (null
|
|
18686
|
+
if (null == x2) m3 === k3 || c3 && u3.data == k3 || (u3.data = k3);
|
|
18234
18687
|
else {
|
|
18235
|
-
if (
|
|
18236
|
-
for (
|
|
18237
|
-
|
|
18238
|
-
|
|
18239
|
-
|
|
18240
|
-
|
|
18241
|
-
|
|
18242
|
-
|
|
18243
|
-
if (a3) e3 || p3 && (a3.__html === p3.__html || a3.__html === l3.innerHTML) || (l3.innerHTML = a3.__html), u3.__k = [];
|
|
18244
|
-
else if (p3 && (l3.innerHTML = ""), S(l3, y(v3) ? v3 : [v3], u3, t5, i3, "foreignObject" === b2 ? "http://www.w3.org/1999/xhtml" : o3, r3, f3, r3 ? r3[0] : t5.__k && x(t5, 0), e3, c3), null != r3) for (s3 = r3.length; s3--; ) null != r3[s3] && w(r3[s3]);
|
|
18245
|
-
e3 || (s3 = "value", void 0 !== _4 && (_4 !== l3[s3] || "progress" === b2 && !_4 || "option" === b2 && _4 !== m2[s3]) && A(l3, s3, _4, m2[s3], o3), s3 = "checked", void 0 !== g2 && g2 !== l3[s3] && A(l3, s3, g2, m2[s3], o3));
|
|
18246
|
-
}
|
|
18247
|
-
return l3;
|
|
18688
|
+
if (e3 = e3 && n2.call(u3.childNodes), !c3 && null != e3) for (m3 = {}, a3 = 0; a3 < u3.attributes.length; a3++) m3[(y3 = u3.attributes[a3]).name] = y3.value;
|
|
18689
|
+
for (a3 in m3) y3 = m3[a3], "dangerouslySetInnerHTML" == a3 ? p3 = y3 : "children" == a3 || a3 in k3 || "value" == a3 && "defaultValue" in k3 || "checked" == a3 && "defaultChecked" in k3 || N(u3, a3, null, y3, o3);
|
|
18690
|
+
for (a3 in k3) y3 = k3[a3], "children" == a3 ? v3 = y3 : "dangerouslySetInnerHTML" == a3 ? h3 = y3 : "value" == a3 ? w3 = y3 : "checked" == a3 ? _3 = y3 : c3 && "function" != typeof y3 || m3[a3] === y3 || N(u3, a3, y3, m3[a3], o3);
|
|
18691
|
+
if (h3) c3 || p3 && (h3.__html == p3.__html || h3.__html == u3.innerHTML) || (u3.innerHTML = h3.__html), t5.__k = [];
|
|
18692
|
+
else if (p3 && (u3.innerHTML = ""), L("template" == t5.type ? u3.content : u3, g(v3) ? v3 : [v3], t5, i3, r3, "foreignObject" == x2 ? "http://www.w3.org/1999/xhtml" : o3, e3, f3, e3 ? e3[0] : i3.__k && $(i3, 0), c3, s3), null != e3) for (a3 = e3.length; a3--; ) b(e3[a3]);
|
|
18693
|
+
c3 || (a3 = "value", "progress" == x2 && null == w3 ? u3.removeAttribute("value") : null != w3 && (w3 !== u3[a3] || "progress" == x2 && !w3 || "option" == x2 && w3 != m3[a3]) && N(u3, a3, w3, m3[a3], o3), a3 = "checked", null != _3 && _3 != u3[a3] && N(u3, a3, _3, m3[a3], o3));
|
|
18694
|
+
}
|
|
18695
|
+
return u3;
|
|
18248
18696
|
}
|
|
18249
|
-
function
|
|
18697
|
+
function J(n3, u3, t5) {
|
|
18250
18698
|
try {
|
|
18251
|
-
"function" == typeof n3
|
|
18699
|
+
if ("function" == typeof n3) {
|
|
18700
|
+
var i3 = "function" == typeof n3.__u;
|
|
18701
|
+
i3 && n3.__u(), i3 && null == u3 || (n3.__u = n3(u3));
|
|
18702
|
+
} else n3.current = u3;
|
|
18252
18703
|
} catch (n4) {
|
|
18253
18704
|
l.__e(n4, t5);
|
|
18254
18705
|
}
|
|
18255
18706
|
}
|
|
18256
|
-
function
|
|
18257
|
-
var i3,
|
|
18258
|
-
if (l.unmount && l.unmount(n3), (i3 = n3.ref) && (i3.current && i3.current
|
|
18707
|
+
function K(n3, u3, t5) {
|
|
18708
|
+
var i3, r3;
|
|
18709
|
+
if (l.unmount && l.unmount(n3), (i3 = n3.ref) && (i3.current && i3.current != n3.__e || J(i3, null, u3)), null != (i3 = n3.__c)) {
|
|
18259
18710
|
if (i3.componentWillUnmount) try {
|
|
18260
18711
|
i3.componentWillUnmount();
|
|
18261
18712
|
} catch (n4) {
|
|
@@ -18263,33 +18714,33 @@ function V(n3, u3, t5) {
|
|
|
18263
18714
|
}
|
|
18264
18715
|
i3.base = i3.__P = null;
|
|
18265
18716
|
}
|
|
18266
|
-
if (i3 = n3.__k) for (
|
|
18267
|
-
t5 ||
|
|
18717
|
+
if (i3 = n3.__k) for (r3 = 0; r3 < i3.length; r3++) i3[r3] && K(i3[r3], u3, t5 || "function" != typeof n3.type);
|
|
18718
|
+
t5 || b(n3.__e), n3.__c = n3.__ = n3.__e = void 0;
|
|
18268
18719
|
}
|
|
18269
|
-
function
|
|
18720
|
+
function Q(n3, l3, u3) {
|
|
18270
18721
|
return this.constructor(n3, u3);
|
|
18271
18722
|
}
|
|
18272
|
-
function
|
|
18273
|
-
var o3,
|
|
18274
|
-
l.__ && l.__(u3, t5),
|
|
18723
|
+
function R(u3, t5, i3) {
|
|
18724
|
+
var r3, o3, e3, f3;
|
|
18725
|
+
t5 == document && (t5 = document.documentElement), l.__ && l.__(u3, t5), o3 = (r3 = "function" == typeof i3) ? null : i3 && i3.__k || t5.__k, e3 = [], f3 = [], q(t5, u3 = (!r3 && i3 || t5).__k = k(S, null, [u3]), o3 || d, d, t5.namespaceURI, !r3 && i3 ? [i3] : o3 ? null : t5.firstChild ? n2.call(t5.childNodes) : null, e3, !r3 && i3 ? i3 : o3 ? o3.__e : t5.firstChild, r3, f3), D(e3, u3, f3);
|
|
18275
18726
|
}
|
|
18276
|
-
n2 =
|
|
18277
|
-
for (var i3,
|
|
18278
|
-
if ((
|
|
18727
|
+
n2 = w.slice, l = { __e: function(n3, l3, u3, t5) {
|
|
18728
|
+
for (var i3, r3, o3; l3 = l3.__; ) if ((i3 = l3.__c) && !i3.__) try {
|
|
18729
|
+
if ((r3 = i3.constructor) && null != r3.getDerivedStateFromError && (i3.setState(r3.getDerivedStateFromError(n3)), o3 = i3.__d), null != i3.componentDidCatch && (i3.componentDidCatch(n3, t5 || {}), o3 = i3.__d), o3) return i3.__E = i3;
|
|
18279
18730
|
} catch (l4) {
|
|
18280
18731
|
n3 = l4;
|
|
18281
18732
|
}
|
|
18282
18733
|
throw n3;
|
|
18283
18734
|
} }, u = 0, t2 = function(n3) {
|
|
18284
|
-
return null != n3 &&
|
|
18285
|
-
},
|
|
18735
|
+
return null != n3 && void 0 === n3.constructor;
|
|
18736
|
+
}, C.prototype.setState = function(n3, l3) {
|
|
18286
18737
|
var u3;
|
|
18287
|
-
u3 = null != this.__s && this.__s
|
|
18288
|
-
},
|
|
18289
|
-
this.__v && (this.__e = true, n3 && this.__h.push(n3),
|
|
18290
|
-
},
|
|
18738
|
+
u3 = null != this.__s && this.__s != this.state ? this.__s : this.__s = m({}, this.state), "function" == typeof n3 && (n3 = n3(m({}, u3), this.props)), n3 && m(u3, n3), null != n3 && this.__v && (l3 && this._sb.push(l3), A(this));
|
|
18739
|
+
}, C.prototype.forceUpdate = function(n3) {
|
|
18740
|
+
this.__v && (this.__e = true, n3 && this.__h.push(n3), A(this));
|
|
18741
|
+
}, C.prototype.render = S, i = [], o = "function" == typeof Promise ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, e = function(n3, l3) {
|
|
18291
18742
|
return n3.__v.__b - l3.__v.__b;
|
|
18292
|
-
},
|
|
18743
|
+
}, H.__r = 0, f = Math.random().toString(8), c = "__d" + f, s = "__a" + f, a = /(PointerCapture)$|Capture$/i, h = 0, p = V(false), v = V(true), y = 0;
|
|
18293
18744
|
|
|
18294
18745
|
// node_modules/preact/hooks/dist/hooks.module.js
|
|
18295
18746
|
var t3;
|
|
@@ -18298,45 +18749,44 @@ var u2;
|
|
|
18298
18749
|
var i2;
|
|
18299
18750
|
var o2 = 0;
|
|
18300
18751
|
var f2 = [];
|
|
18301
|
-
var c2 =
|
|
18302
|
-
var e2 =
|
|
18303
|
-
var a2 =
|
|
18304
|
-
var v2 =
|
|
18305
|
-
var l2 =
|
|
18306
|
-
var
|
|
18307
|
-
var s2 =
|
|
18308
|
-
|
|
18309
|
-
|
|
18310
|
-
e2.__h && e2.__h(r2, n3, o2 || t5), o2 = 0;
|
|
18752
|
+
var c2 = l;
|
|
18753
|
+
var e2 = c2.__b;
|
|
18754
|
+
var a2 = c2.__r;
|
|
18755
|
+
var v2 = c2.diffed;
|
|
18756
|
+
var l2 = c2.__c;
|
|
18757
|
+
var m2 = c2.unmount;
|
|
18758
|
+
var s2 = c2.__;
|
|
18759
|
+
function p2(n3, t5) {
|
|
18760
|
+
c2.__h && c2.__h(r2, n3, o2 || t5), o2 = 0;
|
|
18311
18761
|
var u3 = r2.__H || (r2.__H = { __: [], __h: [] });
|
|
18312
|
-
return n3 >= u3.__.length && u3.__.push({
|
|
18762
|
+
return n3 >= u3.__.length && u3.__.push({}), u3.__[n3];
|
|
18313
18763
|
}
|
|
18314
|
-
function
|
|
18315
|
-
return o2 = 1,
|
|
18764
|
+
function d2(n3) {
|
|
18765
|
+
return o2 = 1, h2(D2, n3);
|
|
18316
18766
|
}
|
|
18317
|
-
function
|
|
18318
|
-
var o3 =
|
|
18319
|
-
if (o3.t = n3, !o3.__c && (o3.__ = [i3 ? i3(u3) :
|
|
18767
|
+
function h2(n3, u3, i3) {
|
|
18768
|
+
var o3 = p2(t3++, 2);
|
|
18769
|
+
if (o3.t = n3, !o3.__c && (o3.__ = [i3 ? i3(u3) : D2(void 0, u3), function(n4) {
|
|
18320
18770
|
var t5 = o3.__N ? o3.__N[0] : o3.__[0], r3 = o3.t(t5, n4);
|
|
18321
18771
|
t5 !== r3 && (o3.__N = [r3, o3.__[1]], o3.__c.setState({}));
|
|
18322
|
-
}], o3.__c = r2, !r2.
|
|
18772
|
+
}], o3.__c = r2, !r2.__f)) {
|
|
18323
18773
|
var f3 = function(n4, t5, r3) {
|
|
18324
18774
|
if (!o3.__c.__H) return true;
|
|
18325
18775
|
var u4 = o3.__c.__H.__.filter(function(n5) {
|
|
18326
|
-
return
|
|
18776
|
+
return n5.__c;
|
|
18327
18777
|
});
|
|
18328
18778
|
if (u4.every(function(n5) {
|
|
18329
18779
|
return !n5.__N;
|
|
18330
18780
|
})) return !c3 || c3.call(this, n4, t5, r3);
|
|
18331
|
-
var i4 =
|
|
18332
|
-
return u4.
|
|
18781
|
+
var i4 = o3.__c.props !== n4;
|
|
18782
|
+
return u4.some(function(n5) {
|
|
18333
18783
|
if (n5.__N) {
|
|
18334
18784
|
var t6 = n5.__[0];
|
|
18335
18785
|
n5.__ = n5.__N, n5.__N = void 0, t6 !== n5.__[0] && (i4 = true);
|
|
18336
18786
|
}
|
|
18337
|
-
}),
|
|
18787
|
+
}), c3 && c3.call(this, n4, t5, r3) || i4;
|
|
18338
18788
|
};
|
|
18339
|
-
r2.
|
|
18789
|
+
r2.__f = true;
|
|
18340
18790
|
var c3 = r2.shouldComponentUpdate, e3 = r2.componentWillUpdate;
|
|
18341
18791
|
r2.componentWillUpdate = function(n4, t5, r3) {
|
|
18342
18792
|
if (this.__e) {
|
|
@@ -18348,75 +18798,78 @@ function y2(n3, u3, i3) {
|
|
|
18348
18798
|
}
|
|
18349
18799
|
return o3.__N || o3.__;
|
|
18350
18800
|
}
|
|
18351
|
-
function
|
|
18352
|
-
var i3 =
|
|
18353
|
-
!
|
|
18801
|
+
function y2(n3, u3) {
|
|
18802
|
+
var i3 = p2(t3++, 3);
|
|
18803
|
+
!c2.__s && C2(i3.__H, u3) && (i3.__ = n3, i3.u = u3, r2.__H.__h.push(i3));
|
|
18354
18804
|
}
|
|
18355
|
-
function
|
|
18356
|
-
return o2 = 5,
|
|
18805
|
+
function A2(n3) {
|
|
18806
|
+
return o2 = 5, T2(function() {
|
|
18357
18807
|
return { current: n3 };
|
|
18358
18808
|
}, []);
|
|
18359
18809
|
}
|
|
18360
|
-
function
|
|
18361
|
-
var u3 =
|
|
18362
|
-
return C2(u3.__H, r3)
|
|
18810
|
+
function T2(n3, r3) {
|
|
18811
|
+
var u3 = p2(t3++, 7);
|
|
18812
|
+
return C2(u3.__H, r3) && (u3.__ = n3(), u3.__H = r3, u3.__h = n3), u3.__;
|
|
18363
18813
|
}
|
|
18364
|
-
function
|
|
18365
|
-
return o2 = 8,
|
|
18814
|
+
function q2(n3, t5) {
|
|
18815
|
+
return o2 = 8, T2(function() {
|
|
18366
18816
|
return n3;
|
|
18367
18817
|
}, t5);
|
|
18368
18818
|
}
|
|
18369
18819
|
function j2() {
|
|
18370
|
-
for (var n3; n3 = f2.shift(); )
|
|
18371
|
-
|
|
18372
|
-
|
|
18373
|
-
|
|
18820
|
+
for (var n3; n3 = f2.shift(); ) {
|
|
18821
|
+
var t5 = n3.__H;
|
|
18822
|
+
if (n3.__P && t5) try {
|
|
18823
|
+
t5.__h.some(z2), t5.__h.some(B2), t5.__h = [];
|
|
18824
|
+
} catch (r3) {
|
|
18825
|
+
t5.__h = [], c2.__e(r3, n3.__v);
|
|
18826
|
+
}
|
|
18374
18827
|
}
|
|
18375
18828
|
}
|
|
18376
|
-
|
|
18377
|
-
r2 = null,
|
|
18378
|
-
},
|
|
18379
|
-
n3 && t5.__k && t5.__k.__m && (n3.__m = t5.__k.__m),
|
|
18380
|
-
},
|
|
18381
|
-
|
|
18829
|
+
c2.__b = function(n3) {
|
|
18830
|
+
r2 = null, e2 && e2(n3);
|
|
18831
|
+
}, c2.__ = function(n3, t5) {
|
|
18832
|
+
n3 && t5.__k && t5.__k.__m && (n3.__m = t5.__k.__m), s2 && s2(n3, t5);
|
|
18833
|
+
}, c2.__r = function(n3) {
|
|
18834
|
+
a2 && a2(n3), t3 = 0;
|
|
18382
18835
|
var i3 = (r2 = n3.__c).__H;
|
|
18383
|
-
i3 && (u2 === r2 ? (i3.__h = [], r2.__h = [], i3.__.
|
|
18384
|
-
n4.__N && (n4.__ = n4.__N), n4.
|
|
18385
|
-
})) : (i3.__h.
|
|
18386
|
-
},
|
|
18387
|
-
|
|
18836
|
+
i3 && (u2 === r2 ? (i3.__h = [], r2.__h = [], i3.__.some(function(n4) {
|
|
18837
|
+
n4.__N && (n4.__ = n4.__N), n4.u = n4.__N = void 0;
|
|
18838
|
+
})) : (i3.__h.some(z2), i3.__h.some(B2), i3.__h = [], t3 = 0)), u2 = r2;
|
|
18839
|
+
}, c2.diffed = function(n3) {
|
|
18840
|
+
v2 && v2(n3);
|
|
18388
18841
|
var t5 = n3.__c;
|
|
18389
|
-
t5 && t5.__H && (t5.__H.__h.length && (1 !== f2.push(t5) && i2 ===
|
|
18390
|
-
n4.
|
|
18842
|
+
t5 && t5.__H && (t5.__H.__h.length && (1 !== f2.push(t5) && i2 === c2.requestAnimationFrame || ((i2 = c2.requestAnimationFrame) || w2)(j2)), t5.__H.__.some(function(n4) {
|
|
18843
|
+
n4.u && (n4.__H = n4.u), n4.u = void 0;
|
|
18391
18844
|
})), u2 = r2 = null;
|
|
18392
|
-
},
|
|
18845
|
+
}, c2.__c = function(n3, t5) {
|
|
18393
18846
|
t5.some(function(n4) {
|
|
18394
18847
|
try {
|
|
18395
|
-
n4.__h.
|
|
18848
|
+
n4.__h.some(z2), n4.__h = n4.__h.filter(function(n5) {
|
|
18396
18849
|
return !n5.__ || B2(n5);
|
|
18397
18850
|
});
|
|
18398
18851
|
} catch (r3) {
|
|
18399
18852
|
t5.some(function(n5) {
|
|
18400
18853
|
n5.__h && (n5.__h = []);
|
|
18401
|
-
}), t5 = [],
|
|
18854
|
+
}), t5 = [], c2.__e(r3, n4.__v);
|
|
18402
18855
|
}
|
|
18403
|
-
}),
|
|
18404
|
-
},
|
|
18405
|
-
|
|
18856
|
+
}), l2 && l2(n3, t5);
|
|
18857
|
+
}, c2.unmount = function(n3) {
|
|
18858
|
+
m2 && m2(n3);
|
|
18406
18859
|
var t5, r3 = n3.__c;
|
|
18407
|
-
r3 && r3.__H && (r3.__H.__.
|
|
18860
|
+
r3 && r3.__H && (r3.__H.__.some(function(n4) {
|
|
18408
18861
|
try {
|
|
18409
18862
|
z2(n4);
|
|
18410
18863
|
} catch (n5) {
|
|
18411
18864
|
t5 = n5;
|
|
18412
18865
|
}
|
|
18413
|
-
}), r3.__H = void 0, t5 &&
|
|
18866
|
+
}), r3.__H = void 0, t5 && c2.__e(t5, r3.__v));
|
|
18414
18867
|
};
|
|
18415
18868
|
var k2 = "function" == typeof requestAnimationFrame;
|
|
18416
18869
|
function w2(n3) {
|
|
18417
18870
|
var t5, r3 = function() {
|
|
18418
18871
|
clearTimeout(u3), k2 && cancelAnimationFrame(t5), setTimeout(n3);
|
|
18419
|
-
}, u3 = setTimeout(r3,
|
|
18872
|
+
}, u3 = setTimeout(r3, 35);
|
|
18420
18873
|
k2 && (t5 = requestAnimationFrame(r3));
|
|
18421
18874
|
}
|
|
18422
18875
|
function z2(n3) {
|
|
@@ -18432,7 +18885,7 @@ function C2(n3, t5) {
|
|
|
18432
18885
|
return t6 !== n3[r3];
|
|
18433
18886
|
});
|
|
18434
18887
|
}
|
|
18435
|
-
function
|
|
18888
|
+
function D2(n3, t5) {
|
|
18436
18889
|
return "function" == typeof t5 ? t5(n3) : t5;
|
|
18437
18890
|
}
|
|
18438
18891
|
|
|
@@ -18468,7 +18921,7 @@ async function api(path, opts = {}) {
|
|
|
18468
18921
|
}
|
|
18469
18922
|
|
|
18470
18923
|
// dashboard/src/lib/bus.ts
|
|
18471
|
-
var html = htm_module_default.bind(
|
|
18924
|
+
var html = htm_module_default.bind(k);
|
|
18472
18925
|
var appBus = new EventTarget();
|
|
18473
18926
|
var toastBus = new EventTarget();
|
|
18474
18927
|
function showToast(text, kind = "info", ttl = 3e3) {
|
|
@@ -18488,14 +18941,14 @@ window.addEventListener("unhandledrejection", (ev) => {
|
|
|
18488
18941
|
reportAppError(ev.reason, "promise");
|
|
18489
18942
|
});
|
|
18490
18943
|
function ToastStack() {
|
|
18491
|
-
const [toasts, setToasts] =
|
|
18492
|
-
|
|
18944
|
+
const [toasts, setToasts] = d2([]);
|
|
18945
|
+
y2(() => {
|
|
18493
18946
|
const onToast = (ev) => {
|
|
18494
18947
|
const detail = ev.detail;
|
|
18495
18948
|
const id = `${Date.now()}-${Math.random()}`;
|
|
18496
18949
|
const t5 = { id, ...detail };
|
|
18497
18950
|
setToasts((prev) => [...prev, t5]);
|
|
18498
|
-
setTimeout(() => setToasts((prev) => prev.filter((
|
|
18951
|
+
setTimeout(() => setToasts((prev) => prev.filter((x2) => x2.id !== id)), t5.ttl);
|
|
18499
18952
|
};
|
|
18500
18953
|
toastBus.addEventListener("toast", onToast);
|
|
18501
18954
|
return () => toastBus.removeEventListener("toast", onToast);
|
|
@@ -18509,7 +18962,7 @@ function ToastStack() {
|
|
|
18509
18962
|
}
|
|
18510
18963
|
|
|
18511
18964
|
// dashboard/src/lib/error-boundary.ts
|
|
18512
|
-
var html2 = htm_module_default.bind(
|
|
18965
|
+
var html2 = htm_module_default.bind(k);
|
|
18513
18966
|
var REPO_URL = "https://github.com/esengine/reasonix";
|
|
18514
18967
|
function buildIssueBody({ error, source, info }) {
|
|
18515
18968
|
const ua = typeof navigator === "object" ? navigator.userAgent : "(unknown)";
|
|
@@ -18536,9 +18989,9 @@ function buildIssueBody({ error, source, info }) {
|
|
|
18536
18989
|
].filter((l3) => l3 !== null).join("\n");
|
|
18537
18990
|
}
|
|
18538
18991
|
function ErrorOverlay() {
|
|
18539
|
-
const [err, setErr] =
|
|
18540
|
-
const [copied, setCopied] =
|
|
18541
|
-
|
|
18992
|
+
const [err, setErr] = d2(null);
|
|
18993
|
+
const [copied, setCopied] = d2(false);
|
|
18994
|
+
y2(() => {
|
|
18542
18995
|
const onError = (ev) => {
|
|
18543
18996
|
setErr(ev.detail);
|
|
18544
18997
|
setCopied(false);
|
|
@@ -18546,7 +18999,7 @@ function ErrorOverlay() {
|
|
|
18546
18999
|
appBus.addEventListener("error", onError);
|
|
18547
19000
|
return () => appBus.removeEventListener("error", onError);
|
|
18548
19001
|
}, []);
|
|
18549
|
-
|
|
19002
|
+
y2(() => {
|
|
18550
19003
|
if (!err) return;
|
|
18551
19004
|
const onKey = (e3) => {
|
|
18552
19005
|
if (e3.key === "Escape") setErr(null);
|
|
@@ -18601,7 +19054,7 @@ function ErrorOverlay() {
|
|
|
18601
19054
|
</div>
|
|
18602
19055
|
`;
|
|
18603
19056
|
}
|
|
18604
|
-
var ErrorBoundary = class extends
|
|
19057
|
+
var ErrorBoundary = class extends C {
|
|
18605
19058
|
constructor(props) {
|
|
18606
19059
|
super(props);
|
|
18607
19060
|
this.state = { caught: false, lastErr: null, attempts: 0 };
|
|
@@ -18721,8 +19174,8 @@ function onLangChange(cb) {
|
|
|
18721
19174
|
};
|
|
18722
19175
|
}
|
|
18723
19176
|
function useLang() {
|
|
18724
|
-
const [lang, setLangState] =
|
|
18725
|
-
|
|
19177
|
+
const [lang, setLangState] = d2(currentLang);
|
|
19178
|
+
y2(() => onLangChange(() => setLangState(currentLang)), []);
|
|
18726
19179
|
return lang;
|
|
18727
19180
|
}
|
|
18728
19181
|
function get(translations, path) {
|
|
@@ -21913,7 +22366,7 @@ var parser = _Parser.parse;
|
|
|
21913
22366
|
var lexer = _Lexer.lex;
|
|
21914
22367
|
|
|
21915
22368
|
// dashboard/src/lib/html.ts
|
|
21916
|
-
var html4 = htm_module_default.bind(
|
|
22369
|
+
var html4 = htm_module_default.bind(k);
|
|
21917
22370
|
|
|
21918
22371
|
// node_modules/highlight.js/es/common.js
|
|
21919
22372
|
var import_common = __toESM(require_common(), 1);
|
|
@@ -22228,8 +22681,8 @@ function ShellModal({ modal, onResolve }) {
|
|
|
22228
22681
|
}
|
|
22229
22682
|
function ChoiceModal({ modal, onResolve }) {
|
|
22230
22683
|
useLang();
|
|
22231
|
-
const [custom, setCustom] =
|
|
22232
|
-
const [showCustom, setShowCustom] =
|
|
22684
|
+
const [custom, setCustom] = d2("");
|
|
22685
|
+
const [showCustom, setShowCustom] = d2(false);
|
|
22233
22686
|
return html4`
|
|
22234
22687
|
<${ModalCard} accent="#f0abfc" icon="🔀" title=${t4("modal.choiceTitle")} subtitle=${modal.question}>
|
|
22235
22688
|
${modal.options.map(
|
|
@@ -22278,8 +22731,8 @@ function ChoiceModal({ modal, onResolve }) {
|
|
|
22278
22731
|
}
|
|
22279
22732
|
function PlanModal({ modal, onResolve }) {
|
|
22280
22733
|
useLang();
|
|
22281
|
-
const [feedback, setFeedback] =
|
|
22282
|
-
const [stage, setStage] =
|
|
22734
|
+
const [feedback, setFeedback] = d2("");
|
|
22735
|
+
const [stage, setStage] = d2(null);
|
|
22283
22736
|
const send = () => onResolve("plan", stage, feedback);
|
|
22284
22737
|
return html4`
|
|
22285
22738
|
<${ModalCard} accent="#67e8f9" icon="◆" title=${t4("modal.planTitle")} subtitle=${t4("modal.planSubtitle")}>
|
|
@@ -22309,17 +22762,17 @@ function PlanModal({ modal, onResolve }) {
|
|
|
22309
22762
|
`;
|
|
22310
22763
|
}
|
|
22311
22764
|
function lineDiff(aLines, bLines) {
|
|
22312
|
-
const
|
|
22765
|
+
const m3 = aLines.length;
|
|
22313
22766
|
const n3 = bLines.length;
|
|
22314
|
-
const dp = Array.from({ length:
|
|
22315
|
-
for (let i4 = 1; i4 <=
|
|
22767
|
+
const dp = Array.from({ length: m3 + 1 }, () => new Array(n3 + 1).fill(0));
|
|
22768
|
+
for (let i4 = 1; i4 <= m3; i4++) {
|
|
22316
22769
|
for (let j4 = 1; j4 <= n3; j4++) {
|
|
22317
22770
|
if (aLines[i4 - 1] === bLines[j4 - 1]) dp[i4][j4] = dp[i4 - 1][j4 - 1] + 1;
|
|
22318
22771
|
else dp[i4][j4] = Math.max(dp[i4 - 1][j4], dp[i4][j4 - 1]);
|
|
22319
22772
|
}
|
|
22320
22773
|
}
|
|
22321
22774
|
const out = [];
|
|
22322
|
-
let i3 =
|
|
22775
|
+
let i3 = m3;
|
|
22323
22776
|
let j3 = n3;
|
|
22324
22777
|
while (i3 > 0 || j3 > 0) {
|
|
22325
22778
|
if (i3 > 0 && j3 > 0 && aLines[i3 - 1] === bLines[j3 - 1]) {
|
|
@@ -22442,8 +22895,8 @@ function WorkspaceModal({ modal, onResolve }) {
|
|
|
22442
22895
|
}
|
|
22443
22896
|
function CheckpointModal({ modal, onResolve }) {
|
|
22444
22897
|
useLang();
|
|
22445
|
-
const [reviseText, setReviseText] =
|
|
22446
|
-
const [staged, setStaged] =
|
|
22898
|
+
const [reviseText, setReviseText] = d2("");
|
|
22899
|
+
const [staged, setStaged] = d2(false);
|
|
22447
22900
|
const label = modal.title ? `${modal.stepId} \xB7 ${modal.title}` : modal.stepId;
|
|
22448
22901
|
const counter = (modal.total ?? 0) > 0 ? ` (${modal.completed}/${modal.total})` : "";
|
|
22449
22902
|
return html4`
|
|
@@ -22514,6 +22967,16 @@ function fmtUsd(n3) {
|
|
|
22514
22967
|
if (n3 === 0) return "$0";
|
|
22515
22968
|
return `$${n3.toFixed(n3 < 0.01 ? 6 : 4)}`;
|
|
22516
22969
|
}
|
|
22970
|
+
var USD_TO_CNY = 7.2;
|
|
22971
|
+
function fmtCost(usd, currency, fractionDigits) {
|
|
22972
|
+
if (usd === null || usd === void 0) return "\u2014";
|
|
22973
|
+
const cur = currency ?? "CNY";
|
|
22974
|
+
const amount = cur === "CNY" ? usd * USD_TO_CNY : usd;
|
|
22975
|
+
if (amount === 0) return cur === "CNY" ? "\xA50" : "$0";
|
|
22976
|
+
const sym = cur === "CNY" ? "\xA5" : cur === "USD" ? "$" : `${cur} `;
|
|
22977
|
+
const digits = fractionDigits ?? (Math.abs(amount) < 0.01 ? 6 : 4);
|
|
22978
|
+
return `${sym}${amount.toFixed(digits)}`;
|
|
22979
|
+
}
|
|
22517
22980
|
function fmtPct(n3) {
|
|
22518
22981
|
if (n3 === null || n3 === void 0) return "\u2014";
|
|
22519
22982
|
return `${(n3 * 100).toFixed(1)}%`;
|
|
@@ -22557,57 +23020,57 @@ function fmtRelativeTime(iso) {
|
|
|
22557
23020
|
// dashboard/src/panels/chat.ts
|
|
22558
23021
|
function ChatPanel() {
|
|
22559
23022
|
useLang();
|
|
22560
|
-
const [messages, setMessages] =
|
|
22561
|
-
const [streaming, setStreaming] =
|
|
22562
|
-
const [activeTool, setActiveTool] =
|
|
22563
|
-
const [busy, setBusy] =
|
|
22564
|
-
const [input, setInput] =
|
|
22565
|
-
const [error, setError] =
|
|
22566
|
-
const [bootError, setBootError] =
|
|
22567
|
-
const [statusLine, setStatusLine] =
|
|
22568
|
-
const [modal, setModal] =
|
|
22569
|
-
const [editMode, setEditModeLocal] =
|
|
22570
|
-
const [preset, setPresetLocal] =
|
|
22571
|
-
const [effort, setEffortLocal] =
|
|
22572
|
-
const [stats, setStats] =
|
|
22573
|
-
const [overviewModel, setOverviewModel] =
|
|
22574
|
-
const [budgetUsd, setBudgetUsd] =
|
|
22575
|
-
const [activePlan, setActivePlan] =
|
|
22576
|
-
const [semanticIndex, setSemanticIndex] =
|
|
22577
|
-
const [slashCommands, setSlashCommands] =
|
|
22578
|
-
const [popoverKind, setPopoverKind] =
|
|
22579
|
-
const [popoverItems, setPopoverItems] =
|
|
22580
|
-
const [popoverSel, setPopoverSel] =
|
|
22581
|
-
const [semanticBannerDismissed, setSemanticBannerDismissed] =
|
|
23023
|
+
const [messages, setMessages] = d2([]);
|
|
23024
|
+
const [streaming, setStreaming] = d2(null);
|
|
23025
|
+
const [activeTool, setActiveTool] = d2(null);
|
|
23026
|
+
const [busy, setBusy] = d2(false);
|
|
23027
|
+
const [input, setInput] = d2("");
|
|
23028
|
+
const [error, setError] = d2(null);
|
|
23029
|
+
const [bootError, setBootError] = d2(null);
|
|
23030
|
+
const [statusLine, setStatusLine] = d2(null);
|
|
23031
|
+
const [modal, setModal] = d2(null);
|
|
23032
|
+
const [editMode, setEditModeLocal] = d2(null);
|
|
23033
|
+
const [preset, setPresetLocal] = d2(null);
|
|
23034
|
+
const [effort, setEffortLocal] = d2(null);
|
|
23035
|
+
const [stats, setStats] = d2(null);
|
|
23036
|
+
const [overviewModel, setOverviewModel] = d2(null);
|
|
23037
|
+
const [budgetUsd, setBudgetUsd] = d2(null);
|
|
23038
|
+
const [activePlan, setActivePlan] = d2(null);
|
|
23039
|
+
const [semanticIndex, setSemanticIndex] = d2(null);
|
|
23040
|
+
const [slashCommands, setSlashCommands] = d2([]);
|
|
23041
|
+
const [popoverKind, setPopoverKind] = d2(null);
|
|
23042
|
+
const [popoverItems, setPopoverItems] = d2([]);
|
|
23043
|
+
const [popoverSel, setPopoverSel] = d2(0);
|
|
23044
|
+
const [semanticBannerDismissed, setSemanticBannerDismissed] = d2(() => {
|
|
22582
23045
|
try {
|
|
22583
23046
|
return localStorage.getItem("rx.semanticBannerDismissed") === "1";
|
|
22584
23047
|
} catch {
|
|
22585
23048
|
return false;
|
|
22586
23049
|
}
|
|
22587
23050
|
});
|
|
22588
|
-
|
|
23051
|
+
y2(() => {
|
|
22589
23052
|
try {
|
|
22590
23053
|
localStorage.setItem("rx.semanticBannerDismissed", semanticBannerDismissed ? "1" : "0");
|
|
22591
23054
|
} catch {
|
|
22592
23055
|
}
|
|
22593
23056
|
}, [semanticBannerDismissed]);
|
|
22594
|
-
const [turnStartedAt, setTurnStartedAt] =
|
|
22595
|
-
const [nowTick, setNowTick] =
|
|
22596
|
-
|
|
23057
|
+
const [turnStartedAt, setTurnStartedAt] = d2(null);
|
|
23058
|
+
const [nowTick, setNowTick] = d2(0);
|
|
23059
|
+
y2(() => {
|
|
22597
23060
|
if (!busy) return;
|
|
22598
23061
|
const id = setInterval(() => setNowTick((n3) => n3 + 1), 500);
|
|
22599
23062
|
return () => clearInterval(id);
|
|
22600
23063
|
}, [busy]);
|
|
22601
|
-
|
|
23064
|
+
y2(() => {
|
|
22602
23065
|
if (busy) {
|
|
22603
23066
|
if (!turnStartedAt) setTurnStartedAt(Date.now());
|
|
22604
23067
|
} else {
|
|
22605
23068
|
setTurnStartedAt(null);
|
|
22606
23069
|
}
|
|
22607
23070
|
}, [busy, turnStartedAt]);
|
|
22608
|
-
const shouldAutoScroll =
|
|
22609
|
-
const feedRef =
|
|
22610
|
-
|
|
23071
|
+
const shouldAutoScroll = A2(true);
|
|
23072
|
+
const feedRef = A2(null);
|
|
23073
|
+
y2(() => {
|
|
22611
23074
|
let cancelled = false;
|
|
22612
23075
|
(async () => {
|
|
22613
23076
|
try {
|
|
@@ -22619,8 +23082,8 @@ function ChatPanel() {
|
|
|
22619
23082
|
if (!cancelled) setBootError(err.message);
|
|
22620
23083
|
}
|
|
22621
23084
|
try {
|
|
22622
|
-
const
|
|
22623
|
-
if (!cancelled &&
|
|
23085
|
+
const m3 = await api("/modal");
|
|
23086
|
+
if (!cancelled && m3.modal) setModal(m3.modal);
|
|
22624
23087
|
} catch {
|
|
22625
23088
|
}
|
|
22626
23089
|
try {
|
|
@@ -22633,7 +23096,7 @@ function ChatPanel() {
|
|
|
22633
23096
|
cancelled = true;
|
|
22634
23097
|
};
|
|
22635
23098
|
}, []);
|
|
22636
|
-
|
|
23099
|
+
y2(() => {
|
|
22637
23100
|
const es = new EventSource(`/api/events?token=${TOKEN}`);
|
|
22638
23101
|
es.onmessage = (ev) => {
|
|
22639
23102
|
let dash;
|
|
@@ -22717,7 +23180,7 @@ function ChatPanel() {
|
|
|
22717
23180
|
};
|
|
22718
23181
|
return () => es.close();
|
|
22719
23182
|
}, []);
|
|
22720
|
-
const send =
|
|
23183
|
+
const send = q2(async () => {
|
|
22721
23184
|
const text = input.trim();
|
|
22722
23185
|
if (!text || busy) return;
|
|
22723
23186
|
setError(null);
|
|
@@ -22735,14 +23198,14 @@ function ChatPanel() {
|
|
|
22735
23198
|
setError(err.message);
|
|
22736
23199
|
}
|
|
22737
23200
|
}, [input, busy]);
|
|
22738
|
-
const abort =
|
|
23201
|
+
const abort = q2(async () => {
|
|
22739
23202
|
try {
|
|
22740
23203
|
await api("/abort", { method: "POST" });
|
|
22741
23204
|
} catch (err) {
|
|
22742
23205
|
setError(err.message);
|
|
22743
23206
|
}
|
|
22744
23207
|
}, []);
|
|
22745
|
-
const newConversation =
|
|
23208
|
+
const newConversation = q2(async () => {
|
|
22746
23209
|
if (busy) {
|
|
22747
23210
|
if (!confirm(t4("chat.newConfirmBusy"))) return;
|
|
22748
23211
|
} else if (messages.length > 0 && !confirm(t4("chat.newConfirm"))) {
|
|
@@ -22765,7 +23228,7 @@ function ChatPanel() {
|
|
|
22765
23228
|
setError(t4("chat.newFailed", { error: err.message }));
|
|
22766
23229
|
}
|
|
22767
23230
|
}, [busy, messages.length]);
|
|
22768
|
-
const clearScrollback =
|
|
23231
|
+
const clearScrollback = q2(async () => {
|
|
22769
23232
|
try {
|
|
22770
23233
|
await api("/submit", { method: "POST", body: { prompt: "/clear" } });
|
|
22771
23234
|
setMessages([]);
|
|
@@ -22783,7 +23246,7 @@ function ChatPanel() {
|
|
|
22783
23246
|
setError(t4("chat.clearFailed", { error: err.message }));
|
|
22784
23247
|
}
|
|
22785
23248
|
}, []);
|
|
22786
|
-
const updatePopover =
|
|
23249
|
+
const updatePopover = q2(
|
|
22787
23250
|
async (text) => {
|
|
22788
23251
|
const slashMatch = /^\/([A-Za-z0-9_-]*)$/.exec(text);
|
|
22789
23252
|
if (slashMatch) {
|
|
@@ -22822,21 +23285,21 @@ function ChatPanel() {
|
|
|
22822
23285
|
},
|
|
22823
23286
|
[slashCommands]
|
|
22824
23287
|
);
|
|
22825
|
-
const applyPopover =
|
|
23288
|
+
const applyPopover = q2(() => {
|
|
22826
23289
|
const item = popoverItems[popoverSel];
|
|
22827
23290
|
if (!item) return false;
|
|
22828
23291
|
if (popoverKind === "slash") {
|
|
22829
23292
|
setInput(item.insert);
|
|
22830
23293
|
} else if (popoverKind === "mention") {
|
|
22831
|
-
const
|
|
22832
|
-
if (!
|
|
22833
|
-
const start = input.length -
|
|
23294
|
+
const m3 = /(?:^|\s)@([^\s@]*)$/.exec(input);
|
|
23295
|
+
if (!m3) return false;
|
|
23296
|
+
const start = input.length - m3[0].length + (m3[0].startsWith(" ") ? 1 : 0);
|
|
22834
23297
|
setInput(`${input.slice(0, start)}${item.insert}`);
|
|
22835
23298
|
}
|
|
22836
23299
|
setPopoverKind(null);
|
|
22837
23300
|
return true;
|
|
22838
23301
|
}, [popoverItems, popoverSel, popoverKind, input]);
|
|
22839
|
-
const onInput =
|
|
23302
|
+
const onInput = q2(
|
|
22840
23303
|
(e3) => {
|
|
22841
23304
|
const v3 = e3.target.value;
|
|
22842
23305
|
setInput(v3);
|
|
@@ -22844,7 +23307,7 @@ function ChatPanel() {
|
|
|
22844
23307
|
},
|
|
22845
23308
|
[updatePopover]
|
|
22846
23309
|
);
|
|
22847
|
-
const onKeyDown =
|
|
23310
|
+
const onKeyDown = q2(
|
|
22848
23311
|
(e3) => {
|
|
22849
23312
|
if (popoverKind && popoverItems.length > 0) {
|
|
22850
23313
|
if (e3.key === "ArrowDown") {
|
|
@@ -22880,8 +23343,8 @@ function ChatPanel() {
|
|
|
22880
23343
|
if (bootError) {
|
|
22881
23344
|
return html4`<div class="notice err">${t4("common.loadingFailed", { name: "chat", error: bootError })}</div>`;
|
|
22882
23345
|
}
|
|
22883
|
-
const autoScrollInFlight =
|
|
22884
|
-
|
|
23346
|
+
const autoScrollInFlight = A2(false);
|
|
23347
|
+
y2(() => {
|
|
22885
23348
|
const el = feedRef.current;
|
|
22886
23349
|
if (!el) return;
|
|
22887
23350
|
const onScroll = () => {
|
|
@@ -22892,7 +23355,7 @@ function ChatPanel() {
|
|
|
22892
23355
|
el.addEventListener("scroll", onScroll, { passive: true });
|
|
22893
23356
|
return () => el.removeEventListener("scroll", onScroll);
|
|
22894
23357
|
}, []);
|
|
22895
|
-
|
|
23358
|
+
y2(() => {
|
|
22896
23359
|
if (!shouldAutoScroll.current) return;
|
|
22897
23360
|
const el = feedRef.current;
|
|
22898
23361
|
if (!el) return;
|
|
@@ -22911,7 +23374,7 @@ function ChatPanel() {
|
|
|
22911
23374
|
reasoning: streaming.reasoning
|
|
22912
23375
|
}
|
|
22913
23376
|
] : messages;
|
|
22914
|
-
const resolveModal =
|
|
23377
|
+
const resolveModal = q2(async (kind, choice, text) => {
|
|
22915
23378
|
try {
|
|
22916
23379
|
await api("/modal/resolve", {
|
|
22917
23380
|
method: "POST",
|
|
@@ -22921,7 +23384,7 @@ function ChatPanel() {
|
|
|
22921
23384
|
setError(`modal resolve failed: ${err.message}`);
|
|
22922
23385
|
}
|
|
22923
23386
|
}, []);
|
|
22924
|
-
|
|
23387
|
+
y2(() => {
|
|
22925
23388
|
let cancelled = false;
|
|
22926
23389
|
const tick = async () => {
|
|
22927
23390
|
try {
|
|
@@ -22946,7 +23409,7 @@ function ChatPanel() {
|
|
|
22946
23409
|
clearInterval(t5);
|
|
22947
23410
|
};
|
|
22948
23411
|
}, []);
|
|
22949
|
-
const setEditMode =
|
|
23412
|
+
const setEditMode = q2(async (next) => {
|
|
22950
23413
|
setEditModeLocal(next);
|
|
22951
23414
|
try {
|
|
22952
23415
|
await api("/edit-mode", { method: "POST", body: { mode: next } });
|
|
@@ -22959,7 +23422,7 @@ function ChatPanel() {
|
|
|
22959
23422
|
}
|
|
22960
23423
|
}
|
|
22961
23424
|
}, []);
|
|
22962
|
-
const setSetting =
|
|
23425
|
+
const setSetting = q2(async (key, value) => {
|
|
22963
23426
|
if (key === "preset") setPresetLocal(value);
|
|
22964
23427
|
if (key === "reasoningEffort") setEffortLocal(value);
|
|
22965
23428
|
try {
|
|
@@ -23016,13 +23479,13 @@ function ChatPanel() {
|
|
|
23016
23479
|
${editMode ? html4`
|
|
23017
23480
|
<div class="mode-picker" title=${t4("chat.editGateTitle")}>
|
|
23018
23481
|
${["review", "auto", "yolo"].map(
|
|
23019
|
-
(
|
|
23482
|
+
(m3) => html4`
|
|
23020
23483
|
<button
|
|
23021
|
-
key=${
|
|
23022
|
-
class="mode-btn ${editMode ===
|
|
23023
|
-
onClick=${() => setEditMode(
|
|
23024
|
-
title=${
|
|
23025
|
-
>${
|
|
23484
|
+
key=${m3}
|
|
23485
|
+
class="mode-btn ${editMode === m3 ? "active" : ""} ${m3 === "yolo" ? "yolo" : ""}"
|
|
23486
|
+
onClick=${() => setEditMode(m3)}
|
|
23487
|
+
title=${m3 === "review" ? t4("chat.editReviewTitle") : m3 === "auto" ? t4("chat.editAutoTitle") : t4("chat.editYoloTitle")}
|
|
23488
|
+
>${m3}</button>
|
|
23026
23489
|
`
|
|
23027
23490
|
)}
|
|
23028
23491
|
</div>
|
|
@@ -23059,11 +23522,11 @@ function ChatPanel() {
|
|
|
23059
23522
|
${allMessages.length === 0 ? html4`<div class="chat-empty">
|
|
23060
23523
|
${t4("chat.noConversation")}
|
|
23061
23524
|
</div>` : allMessages.map(
|
|
23062
|
-
(
|
|
23525
|
+
(m3) => html4`
|
|
23063
23526
|
<${ChatMessage}
|
|
23064
|
-
key=${
|
|
23065
|
-
msg=${
|
|
23066
|
-
streaming=${streaming && streaming.id ===
|
|
23527
|
+
key=${m3.id}
|
|
23528
|
+
msg=${m3}
|
|
23529
|
+
streaming=${streaming && streaming.id === m3.id}
|
|
23067
23530
|
/>
|
|
23068
23531
|
`
|
|
23069
23532
|
)}
|
|
@@ -23137,6 +23600,7 @@ function SideRail({ stats, budgetUsd, activePlan }) {
|
|
|
23137
23600
|
const showBudget = stats != null && typeof budgetUsd === "number" && budgetUsd > 0;
|
|
23138
23601
|
const budgetPct = showBudget ? Math.min(120, stats.totalCostUsd / budgetUsd * 100) : 0;
|
|
23139
23602
|
const budgetTone = budgetPct >= 100 ? "err" : budgetPct >= 80 ? "warn" : "";
|
|
23603
|
+
const walletCurrency = stats?.balance?.[0]?.currency;
|
|
23140
23604
|
return html4`
|
|
23141
23605
|
<aside class="chat-rail">
|
|
23142
23606
|
${activePlan ? html4`<${ActivePlanCard} plan=${activePlan} />` : null}
|
|
@@ -23145,7 +23609,7 @@ function SideRail({ stats, budgetUsd, activePlan }) {
|
|
|
23145
23609
|
<div class="rh">${t4("chat.railSession")}</div>
|
|
23146
23610
|
<div class="rail-kv"><span class="k">${t4("chat.railTurns")}</span><span class="v">${stats.turns.toLocaleString()}</span></div>
|
|
23147
23611
|
<div class="rail-kv"><span class="k">${t4("chat.railPromptTok")}</span><span class="v">${stats.lastPromptTokens.toLocaleString()}</span></div>
|
|
23148
|
-
<div class="rail-kv"><span class="k">${t4("chat.railCost")}</span><span class="v">${
|
|
23612
|
+
<div class="rail-kv"><span class="k">${t4("chat.railCost")}</span><span class="v">${fmtCost(stats.totalCostUsd, walletCurrency)}</span></div>
|
|
23149
23613
|
<div class="progress-row" style="margin-top:8px">
|
|
23150
23614
|
<span class="lbl">${t4("chat.railCacheHit")}</span>
|
|
23151
23615
|
<div class=${`progress ${cacheTone}`}><div class="progress-fill" style=${`width:${cachePct}%`}></div></div>
|
|
@@ -23159,7 +23623,7 @@ function SideRail({ stats, budgetUsd, activePlan }) {
|
|
|
23159
23623
|
<div class="progress-row">
|
|
23160
23624
|
<span class="lbl">${t4("chat.railSpend")}</span>
|
|
23161
23625
|
<div class=${`progress ${budgetTone}`}><div class="progress-fill" style=${`width:${Math.min(100, budgetPct)}%`}></div></div>
|
|
23162
|
-
<span class="v" style=${budgetTone === "err" ? "color:var(--c-err)" : budgetTone === "warn" ? "color:var(--c-warn)" : ""}>${
|
|
23626
|
+
<span class="v" style=${budgetTone === "err" ? "color:var(--c-err)" : budgetTone === "warn" ? "color:var(--c-warn)" : ""}>${fmtCost(stats.totalCostUsd, walletCurrency)} / ${fmtCost(budgetUsd, walletCurrency)}</span>
|
|
23163
23627
|
</div>
|
|
23164
23628
|
</div>
|
|
23165
23629
|
` : null}
|
|
@@ -23283,11 +23747,11 @@ function ChatStatusBar({ stats, model }) {
|
|
|
23283
23747
|
</span>
|
|
23284
23748
|
<span class="status-item">
|
|
23285
23749
|
<span class="status-label">${t4("chat.statusTurn")}</span>
|
|
23286
|
-
<code>${
|
|
23750
|
+
<code>${fmtCost(stats.lastTurnCostUsd, balance?.currency)}</code>
|
|
23287
23751
|
</span>
|
|
23288
23752
|
<span class="status-item">
|
|
23289
23753
|
<span class="status-label">${t4("chat.statusSession")}</span>
|
|
23290
|
-
<code>${
|
|
23754
|
+
<code>${fmtCost(stats.totalCostUsd, balance?.currency)}</code>
|
|
23291
23755
|
<span class="muted" style="font-size: 10px;">
|
|
23292
23756
|
${t4("chat.statusTurns", { count: stats.turns, s: stats.turns === 1 ? "" : "s" })}
|
|
23293
23757
|
</span>
|
|
@@ -23324,13 +23788,13 @@ function buildMatrix(data) {
|
|
|
23324
23788
|
}
|
|
23325
23789
|
function HooksPanel() {
|
|
23326
23790
|
useLang();
|
|
23327
|
-
const [data, setData] =
|
|
23328
|
-
const [error, setError] =
|
|
23329
|
-
const [drafts, setDrafts] =
|
|
23330
|
-
const [busy, setBusy] =
|
|
23331
|
-
const [info, setInfo] =
|
|
23332
|
-
const [eventFilter, setEventFilter] =
|
|
23333
|
-
const load =
|
|
23791
|
+
const [data, setData] = d2(null);
|
|
23792
|
+
const [error, setError] = d2(null);
|
|
23793
|
+
const [drafts, setDrafts] = d2({});
|
|
23794
|
+
const [busy, setBusy] = d2(false);
|
|
23795
|
+
const [info, setInfo] = d2(null);
|
|
23796
|
+
const [eventFilter, setEventFilter] = d2("all");
|
|
23797
|
+
const load = q2(async () => {
|
|
23334
23798
|
try {
|
|
23335
23799
|
const r3 = await api("/hooks");
|
|
23336
23800
|
setData(r3);
|
|
@@ -23342,10 +23806,10 @@ function HooksPanel() {
|
|
|
23342
23806
|
setError(err.message);
|
|
23343
23807
|
}
|
|
23344
23808
|
}, []);
|
|
23345
|
-
|
|
23809
|
+
y2(() => {
|
|
23346
23810
|
load();
|
|
23347
23811
|
}, [load]);
|
|
23348
|
-
const saveScope =
|
|
23812
|
+
const saveScope = q2(
|
|
23349
23813
|
async (scope) => {
|
|
23350
23814
|
setBusy(true);
|
|
23351
23815
|
setError(null);
|
|
@@ -23522,21 +23986,21 @@ function specCommand(spec) {
|
|
|
23522
23986
|
}
|
|
23523
23987
|
function McpPanel() {
|
|
23524
23988
|
useLang();
|
|
23525
|
-
const [data, setData] =
|
|
23526
|
-
const [specs, setSpecs] =
|
|
23527
|
-
const [error, setError] =
|
|
23528
|
-
const [info, setInfo] =
|
|
23529
|
-
const [newSpec, setNewSpec] =
|
|
23530
|
-
const [busy, setBusy] =
|
|
23531
|
-
const [open, setOpen] =
|
|
23532
|
-
const [openUnbridged, setOpenUnbridged] =
|
|
23533
|
-
const [filter, setFilter] =
|
|
23534
|
-
const [registry, setRegistry] =
|
|
23535
|
-
const [registryQuery, setRegistryQuery] =
|
|
23536
|
-
const [registryLoading, setRegistryLoading] =
|
|
23537
|
-
const [openRegistry, setOpenRegistry] =
|
|
23538
|
-
const [displayLimit, setDisplayLimit] =
|
|
23539
|
-
const loadRegistry =
|
|
23989
|
+
const [data, setData] = d2(null);
|
|
23990
|
+
const [specs, setSpecs] = d2(null);
|
|
23991
|
+
const [error, setError] = d2(null);
|
|
23992
|
+
const [info, setInfo] = d2(null);
|
|
23993
|
+
const [newSpec, setNewSpec] = d2("");
|
|
23994
|
+
const [busy, setBusy] = d2(false);
|
|
23995
|
+
const [open, setOpen] = d2(null);
|
|
23996
|
+
const [openUnbridged, setOpenUnbridged] = d2(null);
|
|
23997
|
+
const [filter, setFilter] = d2("all");
|
|
23998
|
+
const [registry, setRegistry] = d2(null);
|
|
23999
|
+
const [registryQuery, setRegistryQuery] = d2("");
|
|
24000
|
+
const [registryLoading, setRegistryLoading] = d2(false);
|
|
24001
|
+
const [openRegistry, setOpenRegistry] = d2(null);
|
|
24002
|
+
const [displayLimit, setDisplayLimit] = d2(50);
|
|
24003
|
+
const loadRegistry = q2(async (q3, pages, limit) => {
|
|
23540
24004
|
setRegistryLoading(true);
|
|
23541
24005
|
try {
|
|
23542
24006
|
const params = new URLSearchParams();
|
|
@@ -23552,18 +24016,18 @@ function McpPanel() {
|
|
|
23552
24016
|
setRegistryLoading(false);
|
|
23553
24017
|
}
|
|
23554
24018
|
}, []);
|
|
23555
|
-
|
|
24019
|
+
y2(() => {
|
|
23556
24020
|
if (filter !== "marketplace") return;
|
|
23557
24021
|
if (registry) return;
|
|
23558
24022
|
void loadRegistry("", 1, displayLimit);
|
|
23559
24023
|
}, [filter, registry, loadRegistry, displayLimit]);
|
|
23560
|
-
|
|
24024
|
+
y2(() => {
|
|
23561
24025
|
if (filter !== "marketplace") return;
|
|
23562
24026
|
setDisplayLimit(50);
|
|
23563
24027
|
const handle = setTimeout(() => void loadRegistry(registryQuery, 1, 50), 300);
|
|
23564
24028
|
return () => clearTimeout(handle);
|
|
23565
24029
|
}, [registryQuery, filter, loadRegistry]);
|
|
23566
|
-
const installFromRegistry =
|
|
24030
|
+
const installFromRegistry = q2(async (entry) => {
|
|
23567
24031
|
setBusy(true);
|
|
23568
24032
|
try {
|
|
23569
24033
|
const r3 = await api("/mcp/registry/install", { method: "POST", body: { name: entry.name } });
|
|
@@ -23582,7 +24046,7 @@ function McpPanel() {
|
|
|
23582
24046
|
setBusy(false);
|
|
23583
24047
|
}
|
|
23584
24048
|
}, []);
|
|
23585
|
-
const load =
|
|
24049
|
+
const load = q2(async () => {
|
|
23586
24050
|
try {
|
|
23587
24051
|
setData(await api("/mcp"));
|
|
23588
24052
|
setSpecs((await api("/mcp/specs")).specs);
|
|
@@ -23590,10 +24054,10 @@ function McpPanel() {
|
|
|
23590
24054
|
setError(err.message);
|
|
23591
24055
|
}
|
|
23592
24056
|
}, []);
|
|
23593
|
-
|
|
24057
|
+
y2(() => {
|
|
23594
24058
|
load();
|
|
23595
24059
|
}, [load]);
|
|
23596
|
-
const addSpec =
|
|
24060
|
+
const addSpec = q2(async () => {
|
|
23597
24061
|
if (!newSpec.trim()) return;
|
|
23598
24062
|
setBusy(true);
|
|
23599
24063
|
try {
|
|
@@ -23611,7 +24075,7 @@ function McpPanel() {
|
|
|
23611
24075
|
setBusy(false);
|
|
23612
24076
|
}
|
|
23613
24077
|
}, [newSpec, load]);
|
|
23614
|
-
const removeSpec =
|
|
24078
|
+
const removeSpec = q2(
|
|
23615
24079
|
async (spec) => {
|
|
23616
24080
|
if (!confirm(t4("mcp.removeConfirm", { spec }))) return;
|
|
23617
24081
|
setBusy(true);
|
|
@@ -23972,23 +24436,23 @@ function renderRegistryDetail({
|
|
|
23972
24436
|
// dashboard/src/panels/memory.ts
|
|
23973
24437
|
function MemoryPanel() {
|
|
23974
24438
|
useLang();
|
|
23975
|
-
const [tree, setTree] =
|
|
23976
|
-
const [error, setError] =
|
|
23977
|
-
const [open, setOpen] =
|
|
23978
|
-
const [body, setBody] =
|
|
23979
|
-
const [busy, setBusy] =
|
|
23980
|
-
const [info, setInfo] =
|
|
23981
|
-
const load =
|
|
24439
|
+
const [tree, setTree] = d2(null);
|
|
24440
|
+
const [error, setError] = d2(null);
|
|
24441
|
+
const [open, setOpen] = d2(null);
|
|
24442
|
+
const [body, setBody] = d2("");
|
|
24443
|
+
const [busy, setBusy] = d2(false);
|
|
24444
|
+
const [info, setInfo] = d2(null);
|
|
24445
|
+
const load = q2(async () => {
|
|
23982
24446
|
try {
|
|
23983
24447
|
setTree(await api("/memory"));
|
|
23984
24448
|
} catch (err) {
|
|
23985
24449
|
setError(err.message);
|
|
23986
24450
|
}
|
|
23987
24451
|
}, []);
|
|
23988
|
-
|
|
24452
|
+
y2(() => {
|
|
23989
24453
|
load();
|
|
23990
24454
|
}, [load]);
|
|
23991
|
-
const openFile =
|
|
24455
|
+
const openFile = q2(async (scope, name) => {
|
|
23992
24456
|
setOpen({ scope, name });
|
|
23993
24457
|
setBusy(true);
|
|
23994
24458
|
try {
|
|
@@ -24001,7 +24465,7 @@ function MemoryPanel() {
|
|
|
24001
24465
|
setBusy(false);
|
|
24002
24466
|
}
|
|
24003
24467
|
}, []);
|
|
24004
|
-
const save =
|
|
24468
|
+
const save = q2(async () => {
|
|
24005
24469
|
if (!open) return;
|
|
24006
24470
|
setBusy(true);
|
|
24007
24471
|
setError(null);
|
|
@@ -24102,10 +24566,10 @@ function MemoryPanel() {
|
|
|
24102
24566
|
|
|
24103
24567
|
// dashboard/src/lib/use-poll.ts
|
|
24104
24568
|
function usePoll(path, intervalMs = 2e3) {
|
|
24105
|
-
const [data, setData] =
|
|
24106
|
-
const [error, setError] =
|
|
24107
|
-
const [loading, setLoading] =
|
|
24108
|
-
const refresh =
|
|
24569
|
+
const [data, setData] = d2(null);
|
|
24570
|
+
const [error, setError] = d2(null);
|
|
24571
|
+
const [loading, setLoading] = d2(true);
|
|
24572
|
+
const refresh = q2(async () => {
|
|
24109
24573
|
try {
|
|
24110
24574
|
const next = await api(path);
|
|
24111
24575
|
setData(next);
|
|
@@ -24116,7 +24580,7 @@ function usePoll(path, intervalMs = 2e3) {
|
|
|
24116
24580
|
setLoading(false);
|
|
24117
24581
|
}
|
|
24118
24582
|
}, [path]);
|
|
24119
|
-
|
|
24583
|
+
y2(() => {
|
|
24120
24584
|
let cancelled = false;
|
|
24121
24585
|
let timer = null;
|
|
24122
24586
|
const tick = async () => {
|
|
@@ -24204,6 +24668,7 @@ function currentSessionBlock(c3) {
|
|
|
24204
24668
|
`;
|
|
24205
24669
|
}
|
|
24206
24670
|
const s3 = c3.currentSession;
|
|
24671
|
+
const currency = c3.balance?.currency;
|
|
24207
24672
|
return html4`
|
|
24208
24673
|
<div class="cock-list cock-w-2">
|
|
24209
24674
|
<div class="ch"><span class="ttl">${t4("overview.currentSession")}</span></div>
|
|
@@ -24213,7 +24678,7 @@ function currentSessionBlock(c3) {
|
|
|
24213
24678
|
<div style="display:grid;grid-template-columns:repeat(3, 1fr);gap:8px;font-family:var(--font-mono);font-size:11px">
|
|
24214
24679
|
<div><span style="color:var(--fg-3)">${t4("overview.promptTok")}</span><div style="color:var(--fg-0);font-size:13px;font-weight:600">${fmtNum(s3.lastPromptTokens)}</div></div>
|
|
24215
24680
|
<div><span style="color:var(--fg-3)">${t4("overview.completionTok")}</span><div style="color:var(--fg-0);font-size:13px;font-weight:600">${fmtNum(s3.completionTokens)}</div></div>
|
|
24216
|
-
<div><span style="color:var(--fg-3)">${t4("overview.cost")}</span><div style="color:var(--fg-0);font-size:13px;font-weight:600">${
|
|
24681
|
+
<div><span style="color:var(--fg-3)">${t4("overview.cost")}</span><div style="color:var(--fg-0);font-size:13px;font-weight:600">${fmtCost(s3.totalCostUsd, currency)}</div></div>
|
|
24217
24682
|
</div>
|
|
24218
24683
|
</div>
|
|
24219
24684
|
`;
|
|
@@ -24233,16 +24698,16 @@ function costTrendSpark(c3) {
|
|
|
24233
24698
|
const w3 = 400;
|
|
24234
24699
|
const h3 = 60;
|
|
24235
24700
|
const points2 = days2.map((d3, i3) => {
|
|
24236
|
-
const
|
|
24701
|
+
const x2 = days2.length === 1 ? 0 : i3 * w3 / (days2.length - 1);
|
|
24237
24702
|
const y3 = h3 - d3.usd / max2 * (h3 - 6) - 3;
|
|
24238
|
-
return `${
|
|
24703
|
+
return `${x2.toFixed(0)},${y3.toFixed(0)}`;
|
|
24239
24704
|
}).join(" ");
|
|
24240
24705
|
const area = `${points2} ${w3},${h3} 0,${h3}`;
|
|
24241
24706
|
const avg = total / days2.length;
|
|
24242
24707
|
return html4`
|
|
24243
24708
|
<div class="chart cock-w-2">
|
|
24244
24709
|
<div class="chart-h"><span class="title">${t4("overview.costTrend")}</span></div>
|
|
24245
|
-
<div class="chart-v">${
|
|
24710
|
+
<div class="chart-v">${fmtCost(avg, c3.balance?.currency)}<span class="unit">${t4("overview.dayAvg")}</span></div>
|
|
24246
24711
|
<div class="chart-spark">
|
|
24247
24712
|
<svg viewBox=${`0 0 ${w3} ${h3}`} preserveAspectRatio="none">
|
|
24248
24713
|
<polyline fill="none" stroke="var(--c-brand)" stroke-width="1.5" points=${points2} />
|
|
@@ -24364,10 +24829,10 @@ function groupByVerb(list2) {
|
|
|
24364
24829
|
function PermissionsPanel() {
|
|
24365
24830
|
useLang();
|
|
24366
24831
|
const { data, error, loading, refresh } = usePoll("/permissions", 5e3);
|
|
24367
|
-
const [draft, setDraft] =
|
|
24368
|
-
const [busy, setBusy] =
|
|
24369
|
-
const [feedback, setFeedback] =
|
|
24370
|
-
const add =
|
|
24832
|
+
const [draft, setDraft] = d2("");
|
|
24833
|
+
const [busy, setBusy] = d2(false);
|
|
24834
|
+
const [feedback, setFeedback] = d2(null);
|
|
24835
|
+
const add = q2(async () => {
|
|
24371
24836
|
const prefix = draft.trim();
|
|
24372
24837
|
if (!prefix) return;
|
|
24373
24838
|
setBusy(true);
|
|
@@ -24387,7 +24852,7 @@ function PermissionsPanel() {
|
|
|
24387
24852
|
setBusy(false);
|
|
24388
24853
|
}
|
|
24389
24854
|
}, [draft, refresh]);
|
|
24390
|
-
const remove =
|
|
24855
|
+
const remove = q2(
|
|
24391
24856
|
async (prefix) => {
|
|
24392
24857
|
if (!confirm(t4("permissions.removeConfirm", { prefix }))) return;
|
|
24393
24858
|
setBusy(true);
|
|
@@ -24404,7 +24869,7 @@ function PermissionsPanel() {
|
|
|
24404
24869
|
},
|
|
24405
24870
|
[refresh]
|
|
24406
24871
|
);
|
|
24407
|
-
const clearAll =
|
|
24872
|
+
const clearAll = q2(async () => {
|
|
24408
24873
|
if (!confirm(t4("permissions.clearConfirm"))) return;
|
|
24409
24874
|
setBusy(true);
|
|
24410
24875
|
setFeedback(null);
|
|
@@ -24541,9 +25006,9 @@ function statusPill(p3) {
|
|
|
24541
25006
|
function PlansPanel() {
|
|
24542
25007
|
useLang();
|
|
24543
25008
|
const { data, error, loading } = usePoll("/plans", 8e3);
|
|
24544
|
-
const [openIdx, setOpenIdx] =
|
|
24545
|
-
const [filter, setFilter] =
|
|
24546
|
-
const [statusFilter, setStatusFilter] =
|
|
25009
|
+
const [openIdx, setOpenIdx] = d2(null);
|
|
25010
|
+
const [filter, setFilter] = d2("");
|
|
25011
|
+
const [statusFilter, setStatusFilter] = d2("all");
|
|
24547
25012
|
if (loading && !data)
|
|
24548
25013
|
return html4`<div class="card" style="color:var(--fg-3)">${t4("plans.loading")}</div>`;
|
|
24549
25014
|
if (error) return html4`<div class="card accent-err">${t4("common.loadingFailed", { name: "plans", error: error.message })}</div>`;
|
|
@@ -24648,11 +25113,11 @@ function PlansPanel() {
|
|
|
24648
25113
|
// dashboard/src/panels/semantic.ts
|
|
24649
25114
|
function SemanticPanel() {
|
|
24650
25115
|
useLang();
|
|
24651
|
-
const [data, setData] =
|
|
24652
|
-
const [error, setError] =
|
|
24653
|
-
const [busy, setBusy] =
|
|
24654
|
-
const [info, setInfo] =
|
|
24655
|
-
const load =
|
|
25116
|
+
const [data, setData] = d2(null);
|
|
25117
|
+
const [error, setError] = d2(null);
|
|
25118
|
+
const [busy, setBusy] = d2(false);
|
|
25119
|
+
const [info, setInfo] = d2(null);
|
|
25120
|
+
const load = q2(async () => {
|
|
24656
25121
|
try {
|
|
24657
25122
|
const r3 = await api("/semantic");
|
|
24658
25123
|
setData(r3);
|
|
@@ -24660,7 +25125,7 @@ function SemanticPanel() {
|
|
|
24660
25125
|
setError(err.message);
|
|
24661
25126
|
}
|
|
24662
25127
|
}, []);
|
|
24663
|
-
|
|
25128
|
+
y2(() => {
|
|
24664
25129
|
load();
|
|
24665
25130
|
const phase2 = data?.job?.phase;
|
|
24666
25131
|
const running2 = phase2 === "scan" || phase2 === "embed" || phase2 === "write";
|
|
@@ -24669,7 +25134,7 @@ function SemanticPanel() {
|
|
|
24669
25134
|
const id = setInterval(load, ms);
|
|
24670
25135
|
return () => clearInterval(id);
|
|
24671
25136
|
}, [load, data?.job?.phase, data?.pull?.status]);
|
|
24672
|
-
const start =
|
|
25137
|
+
const start = q2(
|
|
24673
25138
|
async (rebuild) => {
|
|
24674
25139
|
setBusy(true);
|
|
24675
25140
|
setError(null);
|
|
@@ -24686,7 +25151,7 @@ function SemanticPanel() {
|
|
|
24686
25151
|
},
|
|
24687
25152
|
[load]
|
|
24688
25153
|
);
|
|
24689
|
-
const stop =
|
|
25154
|
+
const stop = q2(async () => {
|
|
24690
25155
|
setBusy(true);
|
|
24691
25156
|
setError(null);
|
|
24692
25157
|
try {
|
|
@@ -24699,7 +25164,7 @@ function SemanticPanel() {
|
|
|
24699
25164
|
setBusy(false);
|
|
24700
25165
|
}
|
|
24701
25166
|
}, [load]);
|
|
24702
|
-
const startDaemon =
|
|
25167
|
+
const startDaemon = q2(async () => {
|
|
24703
25168
|
setBusy(true);
|
|
24704
25169
|
setError(null);
|
|
24705
25170
|
setInfo(t4("semantic.startingDaemon"));
|
|
@@ -24715,7 +25180,7 @@ function SemanticPanel() {
|
|
|
24715
25180
|
setBusy(false);
|
|
24716
25181
|
}
|
|
24717
25182
|
}, [load]);
|
|
24718
|
-
const pullModel =
|
|
25183
|
+
const pullModel = q2(
|
|
24719
25184
|
async (model) => {
|
|
24720
25185
|
setBusy(true);
|
|
24721
25186
|
setError(null);
|
|
@@ -24875,12 +25340,12 @@ function SemanticPanel() {
|
|
|
24875
25340
|
}
|
|
24876
25341
|
function SemanticSearchSection() {
|
|
24877
25342
|
useLang();
|
|
24878
|
-
const [query2, setQuery] =
|
|
24879
|
-
const [hits, setHits] =
|
|
24880
|
-
const [meta, setMeta] =
|
|
24881
|
-
const [busy, setBusy] =
|
|
24882
|
-
const [error, setError] =
|
|
24883
|
-
const runSearch =
|
|
25343
|
+
const [query2, setQuery] = d2("");
|
|
25344
|
+
const [hits, setHits] = d2(null);
|
|
25345
|
+
const [meta, setMeta] = d2(null);
|
|
25346
|
+
const [busy, setBusy] = d2(false);
|
|
25347
|
+
const [error, setError] = d2(null);
|
|
25348
|
+
const runSearch = q2(async () => {
|
|
24884
25349
|
const q3 = query2.trim();
|
|
24885
25350
|
if (!q3 || busy) return;
|
|
24886
25351
|
setBusy(true);
|
|
@@ -24971,13 +25436,13 @@ function fromDraft(d3) {
|
|
|
24971
25436
|
}
|
|
24972
25437
|
function SemanticExcludesCard() {
|
|
24973
25438
|
useLang();
|
|
24974
|
-
const [data, setData] =
|
|
24975
|
-
const [draft, setDraft] =
|
|
24976
|
-
const [preview, setPreview] =
|
|
24977
|
-
const [busy, setBusy] =
|
|
24978
|
-
const [error, setError] =
|
|
24979
|
-
const [info, setInfo] =
|
|
24980
|
-
const load =
|
|
25439
|
+
const [data, setData] = d2(null);
|
|
25440
|
+
const [draft, setDraft] = d2(null);
|
|
25441
|
+
const [preview, setPreview] = d2(null);
|
|
25442
|
+
const [busy, setBusy] = d2(false);
|
|
25443
|
+
const [error, setError] = d2(null);
|
|
25444
|
+
const [info, setInfo] = d2(null);
|
|
25445
|
+
const load = q2(async () => {
|
|
24981
25446
|
try {
|
|
24982
25447
|
const r3 = await api("/index-config");
|
|
24983
25448
|
setData(r3);
|
|
@@ -24986,14 +25451,14 @@ function SemanticExcludesCard() {
|
|
|
24986
25451
|
setError(err.message);
|
|
24987
25452
|
}
|
|
24988
25453
|
}, []);
|
|
24989
|
-
|
|
25454
|
+
y2(() => {
|
|
24990
25455
|
load();
|
|
24991
25456
|
}, [load]);
|
|
24992
|
-
const reset =
|
|
25457
|
+
const reset = q2(() => {
|
|
24993
25458
|
if (data) setDraft(toDraft(data.defaults));
|
|
24994
25459
|
setPreview(null);
|
|
24995
25460
|
}, [data]);
|
|
24996
|
-
const save =
|
|
25461
|
+
const save = q2(async () => {
|
|
24997
25462
|
if (!draft) return;
|
|
24998
25463
|
setBusy(true);
|
|
24999
25464
|
setError(null);
|
|
@@ -25012,7 +25477,7 @@ function SemanticExcludesCard() {
|
|
|
25012
25477
|
setBusy(false);
|
|
25013
25478
|
}
|
|
25014
25479
|
}, [draft, load]);
|
|
25015
|
-
const runPreview =
|
|
25480
|
+
const runPreview = q2(async () => {
|
|
25016
25481
|
if (!draft) return;
|
|
25017
25482
|
setBusy(true);
|
|
25018
25483
|
setError(null);
|
|
@@ -25164,7 +25629,7 @@ function ChipFormRow({
|
|
|
25164
25629
|
onChange,
|
|
25165
25630
|
placeholder = "+ add"
|
|
25166
25631
|
}) {
|
|
25167
|
-
const [adding, setAdding] =
|
|
25632
|
+
const [adding, setAdding] = d2("");
|
|
25168
25633
|
const remove = (entry) => onChange(value.filter((v3) => v3 !== entry));
|
|
25169
25634
|
const commit = () => {
|
|
25170
25635
|
const trimmed = adding.trim();
|
|
@@ -25265,10 +25730,10 @@ function SkipBucketsView({ buckets }) {
|
|
|
25265
25730
|
function SessionsPanel() {
|
|
25266
25731
|
useLang();
|
|
25267
25732
|
const { data, error, loading } = usePoll("/sessions", 5e3);
|
|
25268
|
-
const [open, setOpen] =
|
|
25269
|
-
const [openLoading, setOpenLoading] =
|
|
25270
|
-
const [filter, setFilter] =
|
|
25271
|
-
const view =
|
|
25733
|
+
const [open, setOpen] = d2(null);
|
|
25734
|
+
const [openLoading, setOpenLoading] = d2(false);
|
|
25735
|
+
const [filter, setFilter] = d2("");
|
|
25736
|
+
const view = q2(async (name) => {
|
|
25272
25737
|
setOpen({ name, messages: null });
|
|
25273
25738
|
setOpenLoading(true);
|
|
25274
25739
|
try {
|
|
@@ -25343,14 +25808,14 @@ function SessionsPanel() {
|
|
|
25343
25808
|
</div>
|
|
25344
25809
|
${openLoading ? html4`<div style="color:var(--fg-3)">${t4("sessions.loadingTranscript")}</div>` : open.error ? html4`<div class="card accent-err">${open.error}</div>` : open.messages && open.messages.length > 0 ? html4`<div class="chat-feed" style="max-height:calc(100vh - 220px);overflow-y:auto">
|
|
25345
25810
|
${open.messages.map(
|
|
25346
|
-
(
|
|
25811
|
+
(m3, i3) => html4`
|
|
25347
25812
|
<${ChatMessage}
|
|
25348
25813
|
key=${i3}
|
|
25349
25814
|
msg=${{
|
|
25350
25815
|
id: `r-${i3}`,
|
|
25351
|
-
role:
|
|
25352
|
-
text:
|
|
25353
|
-
toolName:
|
|
25816
|
+
role: m3.role === "tool" ? "tool" : m3.role === "assistant" ? "assistant" : m3.role === "user" ? "user" : "info",
|
|
25817
|
+
text: m3.content ?? "",
|
|
25818
|
+
toolName: m3.toolName
|
|
25354
25819
|
}}
|
|
25355
25820
|
streaming=${false}
|
|
25356
25821
|
/>
|
|
@@ -25366,12 +25831,12 @@ function SessionsPanel() {
|
|
|
25366
25831
|
// dashboard/src/panels/settings.ts
|
|
25367
25832
|
function SettingsPanel() {
|
|
25368
25833
|
useLang();
|
|
25369
|
-
const [data, setData] =
|
|
25370
|
-
const [error, setError] =
|
|
25371
|
-
const [saving, setSaving] =
|
|
25372
|
-
const [saved, setSaved] =
|
|
25373
|
-
const [draft, setDraft] =
|
|
25374
|
-
const load =
|
|
25834
|
+
const [data, setData] = d2(null);
|
|
25835
|
+
const [error, setError] = d2(null);
|
|
25836
|
+
const [saving, setSaving] = d2(false);
|
|
25837
|
+
const [saved, setSaved] = d2(null);
|
|
25838
|
+
const [draft, setDraft] = d2({});
|
|
25839
|
+
const load = q2(async () => {
|
|
25375
25840
|
try {
|
|
25376
25841
|
const r3 = await api("/settings");
|
|
25377
25842
|
setData(r3);
|
|
@@ -25380,10 +25845,10 @@ function SettingsPanel() {
|
|
|
25380
25845
|
setError(err.message);
|
|
25381
25846
|
}
|
|
25382
25847
|
}, []);
|
|
25383
|
-
|
|
25848
|
+
y2(() => {
|
|
25384
25849
|
load();
|
|
25385
25850
|
}, [load]);
|
|
25386
|
-
const save =
|
|
25851
|
+
const save = q2(
|
|
25387
25852
|
async (fields) => {
|
|
25388
25853
|
setSaving(true);
|
|
25389
25854
|
setError(null);
|
|
@@ -25545,27 +26010,27 @@ function SettingsPanel() {
|
|
|
25545
26010
|
// dashboard/src/panels/skills.ts
|
|
25546
26011
|
function SkillsPanel() {
|
|
25547
26012
|
useLang();
|
|
25548
|
-
const [data, setData] =
|
|
25549
|
-
const [error, setError] =
|
|
25550
|
-
const [open, setOpen] =
|
|
25551
|
-
const [body, setBody] =
|
|
25552
|
-
const [busy, setBusy] =
|
|
25553
|
-
const [info, setInfo] =
|
|
25554
|
-
const [newName, setNewName] =
|
|
25555
|
-
const [newScope, setNewScope] =
|
|
25556
|
-
const [filter, setFilter] =
|
|
25557
|
-
const [scopeFilter, setScopeFilter] =
|
|
25558
|
-
const load =
|
|
26013
|
+
const [data, setData] = d2(null);
|
|
26014
|
+
const [error, setError] = d2(null);
|
|
26015
|
+
const [open, setOpen] = d2(null);
|
|
26016
|
+
const [body, setBody] = d2("");
|
|
26017
|
+
const [busy, setBusy] = d2(false);
|
|
26018
|
+
const [info, setInfo] = d2(null);
|
|
26019
|
+
const [newName, setNewName] = d2("");
|
|
26020
|
+
const [newScope, setNewScope] = d2("global");
|
|
26021
|
+
const [filter, setFilter] = d2("");
|
|
26022
|
+
const [scopeFilter, setScopeFilter] = d2("all");
|
|
26023
|
+
const load = q2(async () => {
|
|
25559
26024
|
try {
|
|
25560
26025
|
setData(await api("/skills"));
|
|
25561
26026
|
} catch (err) {
|
|
25562
26027
|
setError(err.message);
|
|
25563
26028
|
}
|
|
25564
26029
|
}, []);
|
|
25565
|
-
|
|
26030
|
+
y2(() => {
|
|
25566
26031
|
load();
|
|
25567
26032
|
}, [load]);
|
|
25568
|
-
const openSkill =
|
|
26033
|
+
const openSkill = q2(async (scope, name) => {
|
|
25569
26034
|
setOpen({ scope, name });
|
|
25570
26035
|
if (scope === "builtin") {
|
|
25571
26036
|
setBody("");
|
|
@@ -25581,7 +26046,7 @@ function SkillsPanel() {
|
|
|
25581
26046
|
setBusy(false);
|
|
25582
26047
|
}
|
|
25583
26048
|
}, []);
|
|
25584
|
-
const save =
|
|
26049
|
+
const save = q2(async () => {
|
|
25585
26050
|
if (!open) return;
|
|
25586
26051
|
setBusy(true);
|
|
25587
26052
|
try {
|
|
@@ -25598,7 +26063,7 @@ function SkillsPanel() {
|
|
|
25598
26063
|
setBusy(false);
|
|
25599
26064
|
}
|
|
25600
26065
|
}, [open, body, load]);
|
|
25601
|
-
const remove =
|
|
26066
|
+
const remove = q2(async () => {
|
|
25602
26067
|
if (!open) return;
|
|
25603
26068
|
if (!confirm(t4("skills.deleteConfirm", { scope: open.scope, name: open.name }))) return;
|
|
25604
26069
|
setBusy(true);
|
|
@@ -25612,7 +26077,7 @@ function SkillsPanel() {
|
|
|
25612
26077
|
setBusy(false);
|
|
25613
26078
|
}
|
|
25614
26079
|
}, [open, load]);
|
|
25615
|
-
const create =
|
|
26080
|
+
const create = q2(async () => {
|
|
25616
26081
|
if (!newName.trim()) return;
|
|
25617
26082
|
setBusy(true);
|
|
25618
26083
|
const stub = `---
|
|
@@ -25907,15 +26372,15 @@ var uPlotPromise = null;
|
|
|
25907
26372
|
function loadUPlot() {
|
|
25908
26373
|
if (!uPlotPromise) {
|
|
25909
26374
|
uPlotPromise = Promise.resolve().then(() => (init_uPlot_esm(), uPlot_esm_exports)).then(
|
|
25910
|
-
(
|
|
26375
|
+
(m3) => m3.default ?? m3
|
|
25911
26376
|
);
|
|
25912
26377
|
}
|
|
25913
26378
|
return uPlotPromise;
|
|
25914
26379
|
}
|
|
25915
26380
|
function UsageChart({ days: days2 }) {
|
|
25916
|
-
const containerRef =
|
|
25917
|
-
const plotRef =
|
|
25918
|
-
|
|
26381
|
+
const containerRef = A2(null);
|
|
26382
|
+
const plotRef = A2(null);
|
|
26383
|
+
y2(() => {
|
|
25919
26384
|
let cancelled = false;
|
|
25920
26385
|
loadUPlot().then((uPlot2) => {
|
|
25921
26386
|
if (cancelled || !containerRef.current) return;
|
|
@@ -25991,8 +26456,8 @@ function UsageChart({ days: days2 }) {
|
|
|
25991
26456
|
function UsagePanel() {
|
|
25992
26457
|
useLang();
|
|
25993
26458
|
const { data: summary, error, loading } = usePoll("/usage", 5e3);
|
|
25994
|
-
const [series, setSeries] =
|
|
25995
|
-
|
|
26459
|
+
const [series, setSeries] = d2(null);
|
|
26460
|
+
y2(() => {
|
|
25996
26461
|
let cancelled = false;
|
|
25997
26462
|
(async () => {
|
|
25998
26463
|
try {
|
|
@@ -26088,10 +26553,10 @@ function UsagePanel() {
|
|
|
26088
26553
|
</thead>
|
|
26089
26554
|
<tbody>
|
|
26090
26555
|
${u3.byModel.slice(0, 5).map(
|
|
26091
|
-
(
|
|
26556
|
+
(m3) => html4`
|
|
26092
26557
|
<tr>
|
|
26093
|
-
<td><code class="mono">${
|
|
26094
|
-
<td class="num">${fmtNum(
|
|
26558
|
+
<td><code class="mono">${m3.model}</code></td>
|
|
26559
|
+
<td class="num">${fmtNum(m3.turns)}</td>
|
|
26095
26560
|
</tr>
|
|
26096
26561
|
`
|
|
26097
26562
|
)}
|
|
@@ -26104,7 +26569,7 @@ function UsagePanel() {
|
|
|
26104
26569
|
}
|
|
26105
26570
|
|
|
26106
26571
|
// dashboard/app.js
|
|
26107
|
-
var html5 = htm_module_default.bind(
|
|
26572
|
+
var html5 = htm_module_default.bind(k);
|
|
26108
26573
|
function tabSections() {
|
|
26109
26574
|
return [
|
|
26110
26575
|
{
|
|
@@ -26140,30 +26605,30 @@ function tabSections() {
|
|
|
26140
26605
|
}
|
|
26141
26606
|
function App() {
|
|
26142
26607
|
useLang();
|
|
26143
|
-
|
|
26608
|
+
y2(() => {
|
|
26144
26609
|
initLangFromServer();
|
|
26145
26610
|
}, []);
|
|
26146
|
-
const [activeId, setActiveId] =
|
|
26611
|
+
const [activeId, setActiveId] = d2(() => {
|
|
26147
26612
|
try {
|
|
26148
26613
|
return localStorage.getItem("rx.activeTab") ?? "chat";
|
|
26149
26614
|
} catch {
|
|
26150
26615
|
return "chat";
|
|
26151
26616
|
}
|
|
26152
26617
|
});
|
|
26153
|
-
const [sidebarCollapsed, setSidebarCollapsed] =
|
|
26618
|
+
const [sidebarCollapsed, setSidebarCollapsed] = d2(() => {
|
|
26154
26619
|
try {
|
|
26155
26620
|
return localStorage.getItem("rx.sidebarCollapsed") === "1";
|
|
26156
26621
|
} catch {
|
|
26157
26622
|
return false;
|
|
26158
26623
|
}
|
|
26159
26624
|
});
|
|
26160
|
-
|
|
26625
|
+
y2(() => {
|
|
26161
26626
|
try {
|
|
26162
26627
|
localStorage.setItem("rx.sidebarCollapsed", sidebarCollapsed ? "1" : "0");
|
|
26163
26628
|
} catch {
|
|
26164
26629
|
}
|
|
26165
26630
|
}, [sidebarCollapsed]);
|
|
26166
|
-
|
|
26631
|
+
y2(() => {
|
|
26167
26632
|
try {
|
|
26168
26633
|
localStorage.setItem("rx.activeTab", activeId);
|
|
26169
26634
|
} catch {
|
|
@@ -26172,10 +26637,10 @@ function App() {
|
|
|
26172
26637
|
const TAB_SECTIONS = tabSections();
|
|
26173
26638
|
const ALL_TABS = TAB_SECTIONS.flatMap((s3) => s3.tabs);
|
|
26174
26639
|
const active = ALL_TABS.find((t5) => t5.id === activeId) ?? ALL_TABS[0];
|
|
26175
|
-
|
|
26640
|
+
y2(() => {
|
|
26176
26641
|
if (active.id !== activeId) setActiveId(active.id);
|
|
26177
26642
|
}, [active.id, activeId]);
|
|
26178
|
-
|
|
26643
|
+
y2(() => {
|
|
26179
26644
|
const onNav = (ev) => {
|
|
26180
26645
|
const id = ev.detail?.tabId;
|
|
26181
26646
|
if (id) setActiveId(id);
|
|
@@ -26183,7 +26648,7 @@ function App() {
|
|
|
26183
26648
|
appBus.addEventListener("navigate-tab", onNav);
|
|
26184
26649
|
return () => appBus.removeEventListener("navigate-tab", onNav);
|
|
26185
26650
|
}, []);
|
|
26186
|
-
const pickTab =
|
|
26651
|
+
const pickTab = q2((id) => setActiveId(id), []);
|
|
26187
26652
|
return html5`
|
|
26188
26653
|
<div class=${`app ${sidebarCollapsed ? "collapsed" : ""}`}>
|
|
26189
26654
|
<aside class="app-side">
|
|
@@ -26240,5 +26705,5 @@ function App() {
|
|
|
26240
26705
|
<${ErrorOverlay} />
|
|
26241
26706
|
`;
|
|
26242
26707
|
}
|
|
26243
|
-
|
|
26708
|
+
R(html5`<${App} />`, document.getElementById("root"));
|
|
26244
26709
|
//# sourceMappingURL=app.js.map
|