Skip to content

Commit 0024f0f

Browse files
authored
fix xterm.js versions and addon versions (#534)
* make xterm packages consistent * add serializeAddon, fix varsUpdated
1 parent 8a3d962 commit 0024f0f

4 files changed

Lines changed: 22 additions & 15 deletions

File tree

package.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
"@table-nav/react": "^0.0.7",
2424
"@tanstack/match-sorter-utils": "^8.8.4",
2525
"@tanstack/react-table": "^8.10.3",
26-
"@xterm/addon-webgl": "^0.17.0",
2726
"autobind-decorator": "^2.4.0",
2827
"base64-js": "^1.5.1",
2928
"classnames": "^2.3.1",
@@ -50,8 +49,10 @@
5049
"tsx-control-statements": "^5.1.1",
5150
"uuid": "^9.0.0",
5251
"winston": "^3.8.2",
53-
"xterm": "^5.0.0",
54-
"xterm-addon-web-links": "^0.9.0"
52+
"xterm": "^5.3.0",
53+
"xterm-addon-web-links": "^0.9.0",
54+
"xterm-addon-serialize": "^0.11.0",
55+
"xterm-addon-webgl": "^0.16.0"
5556
},
5657
"devDependencies": {
5758
"@babel/cli": "^7.17.10",

src/plugins/terminal/term.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@
44
import * as mobx from "mobx";
55
import { Terminal } from "xterm";
66
import type { ITheme } from "xterm";
7-
//TODO: replace with `@xterm/addon-web-links` when it's available as stable
8-
import { WebLinksAddon } from "xterm-addon-web-links";
97
import { sprintf } from "sprintf-js";
108
import { boundMethod } from "autobind-decorator";
119
import { windowWidthToCols, windowHeightToRows } from "@/util/textmeasure";
1210
import { boundInt } from "@/util/util";
1311
import { GlobalModel } from "@/models";
14-
import { WebglAddon } from "@xterm/addon-webgl";
12+
import { WebglAddon } from "xterm-addon-webgl";
13+
import { WebLinksAddon } from "xterm-addon-web-links";
14+
import { SerializeAddon } from "xterm-addon-serialize";
1515

1616
type DataUpdate = {
1717
data: Uint8Array;
@@ -102,6 +102,7 @@ class TermWrap {
102102
ptyDataSource: (termContext: TermContextUnion) => Promise<PtyDataType>;
103103
initializing: boolean;
104104
dataHandler?: (data: string, termWrap: TermWrap) => void;
105+
serializeAddon: SerializeAddon;
105106

106107
constructor(elem: Element, opts: TermWrapOpts) {
107108
opts = opts ?? ({} as any);
@@ -168,6 +169,8 @@ class TermWrap {
168169
loggedWebGL = true;
169170
}
170171
}
172+
this.serializeAddon = new SerializeAddon();
173+
this.terminal.loadAddon(this.serializeAddon);
171174
this.terminal._core._inputHandler._parser.setErrorHandler((state) => {
172175
this.numParseErrors++;
173176
return state;

wavesrv/pkg/cmdrunner/cmdrunner.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5851,15 +5851,13 @@ func ClientSetCommand(ctx context.Context, pk *scpacket.FeCommandPacketType) (sc
58515851
}
58525852
if webglStr, found := pk.Kwargs["webgl"]; found {
58535853
webglVal := resolveBool(webglStr, false)
5854-
if webglVal {
5855-
varsUpdated = append(varsUpdated, "webgl")
5856-
}
58575854
clientOpts := clientData.ClientOpts
58585855
clientOpts.WebGL = webglVal
58595856
err = sstore.SetClientOpts(ctx, clientOpts)
58605857
if err != nil {
58615858
return nil, fmt.Errorf("error updating client webgl: %v", err)
58625859
}
5860+
varsUpdated = append(varsUpdated, "webgl")
58635861
}
58645862
if len(varsUpdated) == 0 {
58655863
return nil, fmt.Errorf("/client:set requires a value to set: %s", formatStrs([]string{"termfontsize", "termfontfamily", "openaiapitoken", "openaimodel", "openaibaseurl", "openaimaxtokens", "openaimaxchoices", "webgl"}, "or", false))

yarn.lock

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2707,11 +2707,6 @@
27072707
resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.8.10.tgz#a1337ca426aa61cef9fe15b5b28e340a72f6fa99"
27082708
integrity sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==
27092709

2710-
"@xterm/addon-webgl@^0.17.0":
2711-
version "0.17.0"
2712-
resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0.tgz#1da534456b7971ebb2f08c381d4732d1f104d7d8"
2713-
integrity sha512-KUH//EZCz7j1+IekW8sZzmcj/y9gOLf/HMcsWXjg0Xr5cT1lIBIIbbBlbf5kZ+XnA/8c1IuBm1vx+blzlfPk0g==
2714-
27152710
"@xtuc/ieee754@^1.2.0":
27162711
version "1.2.0"
27172712
resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
@@ -8095,12 +8090,22 @@ xmlbuilder@>=11.0.1, xmlbuilder@^15.1.1:
80958090
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5"
80968091
integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==
80978092

8093+
xterm-addon-serialize@^0.11.0:
8094+
version "0.11.0"
8095+
resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.11.0.tgz#e8b34a3618750a9e132562a6459627059c031226"
8096+
integrity sha512-2CNDnmLdLkNWfsxNFkGsI5FE9W/BbsMzeOrbu59yNqH9L6k1gmL+Ab6VXxEp2NQUJSzaiqi6t0nFR5k5EDkVIg==
8097+
80988098
xterm-addon-web-links@^0.9.0:
80998099
version "0.9.0"
81008100
resolved "https://registry.yarnpkg.com/xterm-addon-web-links/-/xterm-addon-web-links-0.9.0.tgz#c65b18588d1f613e703eb6feb7f129e7ff1c63e7"
81018101
integrity sha512-LIzi4jBbPlrKMZF3ihoyqayWyTXAwGfu4yprz1aK2p71e9UKXN6RRzVONR0L+Zd+Ik5tPVI9bwp9e8fDTQh49Q==
81028102

8103-
xterm@^5.0.0:
8103+
xterm-addon-webgl@^0.16.0:
8104+
version "0.16.0"
8105+
resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.16.0.tgz#9872d08a64136f893b27ef9a6412136d3bf563c4"
8106+
integrity sha512-E8cq1AiqNOv0M/FghPT+zPAEnvIQRDbAbkb04rRYSxUym69elPWVJ4sv22FCLBqM/3LcrmBLl/pELnBebVFKgA==
8107+
8108+
xterm@^5.3.0:
81048109
version "5.3.0"
81058110
resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.3.0.tgz#867daf9cc826f3d45b5377320aabd996cb0fce46"
81068111
integrity sha512-8QqjlekLUFTrU6x7xck1MsPzPA571K5zNqWm0M0oroYEWVOptZ0+ubQSkQ3uxIEhcIHRujJy6emDWX4A7qyFzg==

0 commit comments

Comments
 (0)