From 92709110efe443cc2445db0e987ec7271b2aa54a Mon Sep 17 00:00:00 2001 From: javacs3 Date: Thu, 8 Aug 2019 23:04:46 +0800 Subject: [PATCH] add SerializeAddon in demo page --- demo/client.ts | 17 +++++++++++++++++ demo/index.html | 6 ++++++ demo/style.css | 6 ++++++ 3 files changed, 29 insertions(+) diff --git a/demo/client.ts b/demo/client.ts index 1ca35a6a..91c5d33d 100644 --- a/demo/client.ts +++ b/demo/client.ts @@ -43,6 +43,7 @@ declare let window: IWindowWithTerminal; let term; let fitAddon: FitAddon; let searchAddon: SearchAddon; +let serializeAddon: SerializeAddon; let protocol; let socketURL; let socket; @@ -96,6 +97,7 @@ if (document.location.pathname === '/test') { createTerminal(); document.getElementById('dispose').addEventListener('click', disposeRecreateButtonHandler); document.getElementById('webgl').addEventListener('click', () => term.loadAddon(new WebglAddon())); + document.getElementById('serialize').addEventListener('click', serializeButtonHandler); } function createTerminal(): void { @@ -116,6 +118,8 @@ function createTerminal(): void { typedTerm.loadAddon(searchAddon); fitAddon = new FitAddon(); typedTerm.loadAddon(fitAddon); + serializeAddon = new SerializeAddon(); + typedTerm.loadAddon(serializeAddon); window.term = term; // Expose `term` to window for debugging purposes term.onResize((size: { cols: number, rows: number }) => { @@ -323,3 +327,16 @@ function updateTerminalSize(): void { terminalContainer.style.height = height; fitAddon.fit(); } + +function serializeButtonHandler(): void { + const output = serializeAddon.serialize(); + const outputString = JSON.stringify(output); + console.log('serialize output', outputString); + + document.getElementById('serialize-output').innerText = outputString; + + if ((document.getElementById('write-to-terminal') as HTMLInputElement).checked) { + term.reset(); + term.write(output); + } +} diff --git a/demo/index.html b/demo/index.html index ef8f3891..4a4335ee 100644 --- a/demo/index.html +++ b/demo/index.html @@ -20,6 +20,12 @@

+
+

SerializeAddon

+ + + +

Options

diff --git a/demo/style.css b/demo/style.css index b061dfcb..12728289 100644 --- a/demo/style.css +++ b/demo/style.css @@ -30,3 +30,9 @@ p { padding-left: 20px; vertical-align: top; } + +code { + padding: 2px 4px; + color: #c7254e; + background-color: #f9f2f4; +}