diff --git a/README.md b/README.md index b043f3b..5cd9ae3 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ ![](/img/terminal.gif) ![](/img/file.gif) ![](/img/web.gif) +![](/img/virtual-keyboard.jpg) ## 📖 About diff --git a/img/virtual-keyboard.jpg b/img/virtual-keyboard.jpg new file mode 100644 index 0000000..901b9e7 Binary files /dev/null and b/img/virtual-keyboard.jpg differ diff --git a/ui/package-lock.json b/ui/package-lock.json index 6b6b539..56c72c7 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -11,6 +11,7 @@ "@xterm/addon-fit": "^0.10.0", "@xterm/xterm": "^5.5.0", "element-plus": "^2.10.1", + "simple-keyboard": "^3.8.69", "vue": "^3.5.16", "vue-axios": "^3.5.2", "vue-clipboard3": "^2.0.0", @@ -3703,6 +3704,12 @@ "node": ">=8" } }, + "node_modules/simple-keyboard": { + "version": "3.8.69", + "resolved": "https://registry.npmjs.org/simple-keyboard/-/simple-keyboard-3.8.69.tgz", + "integrity": "sha512-H/aCx57Tu8xwOTkMrELdJ0mV0s3p1i/AjzKAb+M1TnHCoFyfLumn2SC9pekIOeoB51QENOQycjF/R8SFranwLw==", + "license": "MIT" + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", diff --git a/ui/package.json b/ui/package.json index e2f51b9..f6b32b6 100644 --- a/ui/package.json +++ b/ui/package.json @@ -12,6 +12,7 @@ "@xterm/addon-fit": "^0.10.0", "@xterm/xterm": "^5.5.0", "element-plus": "^2.10.1", + "simple-keyboard": "^3.8.69", "vue": "^3.5.16", "vue-axios": "^3.5.2", "vue-clipboard3": "^2.0.0", diff --git a/ui/src/components/RttyKeyboard.vue b/ui/src/components/RttyKeyboard.vue new file mode 100644 index 0000000..a4c689d --- /dev/null +++ b/ui/src/components/RttyKeyboard.vue @@ -0,0 +1,491 @@ + + + + + diff --git a/ui/src/components/RttyTerm.vue b/ui/src/components/RttyTerm.vue index c256aa9..1c51aa7 100644 --- a/ui/src/components/RttyTerm.vue +++ b/ui/src/components/RttyTerm.vue @@ -1,6 +1,8 @@