mirror of https://github.com/Fabio286/mizar.git
Compare commits
26 Commits
Author | SHA1 | Date |
---|---|---|
Fabio Di Stasio | 593173ddc7 | |
Fabio Di Stasio | b18d02f89d | |
Fabio Di Stasio | 489d3905bc | |
Sebastian Rücker | 38d0c8f2b5 | |
Fabio Di Stasio | e1ea91a7a2 | |
Alisson Santos | bb995317cc | |
Alisson Santos | 6cb7452306 | |
Fabio Di Stasio | 1ac0d00080 | |
Fabio Di Stasio | 682e40aca8 | |
dependabot[bot] | e1406278c1 | |
Fabio Di Stasio | 57350571eb | |
Fabio Di Stasio | faf88a45a4 | |
Fabio Di Stasio | c1b3658482 | |
Fabio Di Stasio | 54818a1995 | |
Fabio Di Stasio | 991412cc84 | |
Fabio Di Stasio | 939f7212c2 | |
Fabio Di Stasio | ec320c79c0 | |
dependabot[bot] | 2f23f99ed5 | |
Fabio Di Stasio | 3f1ea87194 | |
Fabio Di Stasio | 8d5fbf600f | |
Fabio Di Stasio | c3c90d4cf9 | |
Fabio Di Stasio | b729f9e844 | |
Fabio Di Stasio | a61350ddec | |
Fabio Di Stasio | 7a43fc9639 | |
Fabio Di Stasio | e2b64c61a1 | |
Fabio Di Stasio | 55f29e6190 |
|
@ -0,0 +1,32 @@
|
|||
name: Create artifact [WINDOWS]
|
||||
|
||||
on:
|
||||
workflow_dispatch: {}
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Check out Git repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm i
|
||||
|
||||
- name: "Build"
|
||||
run: npm run build
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: win-build
|
||||
retention-days: 3
|
||||
path: |
|
||||
build
|
||||
!build/*-unpacked
|
||||
!build/.icon-ico
|
24
CHANGELOG.md
24
CHANGELOG.md
|
@ -2,6 +2,30 @@
|
|||
|
||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||
|
||||
## [1.3.0](https://github.com/Fabio286/mizar/compare/v1.2.0...v1.3.0) (2024-02-07)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* de-DE translation ([38d0c8f](https://github.com/Fabio286/mizar/commit/38d0c8f2b543a6a716fe7a707bd57aafaa99f5cf))
|
||||
* pt-br translation ([6cb7452](https://github.com/Fabio286/mizar/commit/6cb74523062b7b115b093dc14768343109824ffb))
|
||||
|
||||
## [1.2.0](https://github.com/Fabio286/mizar/compare/v1.1.0...v1.2.0) (2023-05-26)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* italian translation ([54818a1](https://github.com/Fabio286/mizar/commit/54818a1995d5151401671e2ba8db57c8eee22782))
|
||||
|
||||
## [1.1.0](https://github.com/Fabio286/mizar/compare/v1.0.1...v1.1.0) (2023-04-18)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* icons for message formats ([ec320c7](https://github.com/Fabio286/mizar/commit/ec320c79c0caacad7b35bbfcf3d5f53a028ac347))
|
||||
|
||||
### [1.0.1](https://github.com/Fabio286/mizar/compare/v1.0.0...v1.0.1) (2023-04-16)
|
||||
|
||||
## 1.0.0 (2023-04-16)
|
||||
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
# Mizar TCP Tester
|
||||
|
||||
![GitHub package.json version](https://img.shields.io/github/package-json/v/fabio286/mizar) ![GitHub](https://img.shields.io/github/license/fabio286/mizar) [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Ffabio286%2Fmizar%2Fbadge&style=flat)](https://actions-badge.atrox.dev/fabio286/mizar/goto) <!--[![mizar](https://snapcraft.io/mizar/badge.svg)](https://snapcraft.io/mizar) [![mizar](https://snapcraft.io/mizar/trending.svg?name=0)](https://snapcraft.io/mizar)--> [![Plant a Tree](https://raw.githubusercontent.com/Fabio286/treedom-badge/master/svg/plant-a-tree.svg)](https://www.treedom.net/en/user/fabio-di-stasio/event/antares-for-the-planet)
|
||||
![GitHub package.json version](https://img.shields.io/github/package-json/v/fabio286/mizar) ![GitHub](https://img.shields.io/github/license/fabio286/mizar) [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Ffabio286%2Fmizar%2Fbadge&style=flat)](https://actions-badge.atrox.dev/fabio286/mizar/goto) [![mizar](https://snapcraft.io/mizar/badge.svg)](https://snapcraft.io/mizar) [![mizar](https://snapcraft.io/mizar/trending.svg?name=0)](https://snapcraft.io/mizar)[![Plant a Tree](https://raw.githubusercontent.com/Fabio286/treedom-badge/master/svg/plant-a-tree.svg)](https://www.treedom.net/en/user/fabio-di-stasio/event/antares-for-the-planet)
|
||||
|
||||
Mizar is a TCP tester/debugger designed to be immediately useful and intuitive to use right out of the box.
|
||||
The purpose of Mizar is to help developers working on software that communicates over TCP protocol by speeding up debugging and testing from the earliest stages of development.
|
||||
|
@ -42,4 +42,8 @@ On Linux you can simply download and run the `.AppImage` distribution or install
|
|||
### Windows
|
||||
|
||||
On Windows you can choose between downloading the app from Microsoft Store or downloading the `.exe` from [this github repo](https://github.com/Fabio286/mizar/releases/latest).
|
||||
Distributions that are not from Microsoft Store are not signed with a certificate, so to install you need to click on "More info" and then "Run anyway" on SmartScreen prompt.
|
||||
Distributions that are not from Microsoft Store are not signed with a certificate, so to install you need to click on "More info" and then "Run anyway" on SmartScreen prompt.
|
||||
|
||||
### How to contribute
|
||||
|
||||
- 🌍 [Translate Mizar](https://github.com/Fabio286/mizar/wiki/Translate-Mizar)
|
|
@ -1,16 +1,17 @@
|
|||
{
|
||||
"name": "mizar",
|
||||
"version": "1.0.0",
|
||||
"version": "1.3.0",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "mizar",
|
||||
"version": "1.0.0",
|
||||
"version": "1.3.0",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@electron/remote": "~2.0.1",
|
||||
"@electron/remote": "~2.0.9",
|
||||
"@mdi/font": "~7.2.96",
|
||||
"@vueuse/core": "~8.7.5",
|
||||
"electron-log": "~4.4.1",
|
||||
"electron-store": "~8.1.0",
|
||||
|
@ -20,7 +21,7 @@
|
|||
"moment": "~2.29.4",
|
||||
"pinia": "~2.0.28",
|
||||
"source-map-support": "~0.5.20",
|
||||
"vue": "~3.2.45",
|
||||
"vue": "~3.3.4",
|
||||
"vue-i18n": "~9.2.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
@ -568,8 +569,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/parser": {
|
||||
"version": "7.20.5",
|
||||
"license": "MIT",
|
||||
"version": "7.22.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.4.tgz",
|
||||
"integrity": "sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==",
|
||||
"bin": {
|
||||
"parser": "bin/babel-parser.js"
|
||||
},
|
||||
|
@ -1875,8 +1877,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@electron/remote": {
|
||||
"version": "2.0.8",
|
||||
"license": "MIT",
|
||||
"version": "2.0.9",
|
||||
"resolved": "https://registry.npmjs.org/@electron/remote/-/remote-2.0.9.tgz",
|
||||
"integrity": "sha512-LR0W0ID6WAKHaSs0x5LX9aiG+5pFBNAJL6eQAJfGkCuZPUa6nZz+czZLdlTDETG45CgF/0raSvCtYOYUpr6c+A==",
|
||||
"peerDependencies": {
|
||||
"electron": ">= 13.0.0"
|
||||
}
|
||||
|
@ -2089,7 +2092,6 @@
|
|||
},
|
||||
"node_modules/@jridgewell/sourcemap-codec": {
|
||||
"version": "1.4.14",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@jridgewell/trace-mapping": {
|
||||
|
@ -2106,6 +2108,11 @@
|
|||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@mdi/font": {
|
||||
"version": "7.2.96",
|
||||
"resolved": "https://registry.npmjs.org/@mdi/font/-/font-7.2.96.tgz",
|
||||
"integrity": "sha512-e//lmkmpFUMZKhmCY9zdjRe4zNXfbOIJnn6xveHbaV2kSw5aJ5dLXUxcRt1Gxfi7ZYpFLUWlkG2MGSFAiqAu7w=="
|
||||
},
|
||||
"node_modules/@nodelib/fs.scandir": {
|
||||
"version": "2.1.5",
|
||||
"dev": true,
|
||||
|
@ -2637,6 +2644,7 @@
|
|||
},
|
||||
"node_modules/@vue/compiler-core": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
|
@ -2647,6 +2655,7 @@
|
|||
},
|
||||
"node_modules/@vue/compiler-dom": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vue/compiler-core": "3.2.45",
|
||||
|
@ -2655,6 +2664,7 @@
|
|||
},
|
||||
"node_modules/@vue/compiler-sfc": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
|
@ -2671,6 +2681,7 @@
|
|||
},
|
||||
"node_modules/@vue/compiler-ssr": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vue/compiler-dom": "3.2.45",
|
||||
|
@ -2682,14 +2693,16 @@
|
|||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@vue/reactivity": {
|
||||
"version": "3.2.45",
|
||||
"license": "MIT",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz",
|
||||
"integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==",
|
||||
"dependencies": {
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/reactivity-transform": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
|
@ -2699,36 +2712,89 @@
|
|||
"magic-string": "^0.25.7"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/reactivity/node_modules/@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
},
|
||||
"node_modules/@vue/runtime-core": {
|
||||
"version": "3.2.45",
|
||||
"license": "MIT",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz",
|
||||
"integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==",
|
||||
"dependencies": {
|
||||
"@vue/reactivity": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/reactivity": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/runtime-core/node_modules/@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
},
|
||||
"node_modules/@vue/runtime-dom": {
|
||||
"version": "3.2.45",
|
||||
"license": "MIT",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz",
|
||||
"integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==",
|
||||
"dependencies": {
|
||||
"@vue/runtime-core": "3.2.45",
|
||||
"@vue/shared": "3.2.45",
|
||||
"csstype": "^2.6.8"
|
||||
"@vue/runtime-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4",
|
||||
"csstype": "^3.1.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/runtime-dom/node_modules/@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
},
|
||||
"node_modules/@vue/server-renderer": {
|
||||
"version": "3.2.45",
|
||||
"license": "MIT",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz",
|
||||
"integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==",
|
||||
"dependencies": {
|
||||
"@vue/compiler-ssr": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/compiler-ssr": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"vue": "3.2.45"
|
||||
"vue": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/server-renderer/node_modules/@vue/compiler-core": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz",
|
||||
"integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==",
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.21.3",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"source-map-js": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/server-renderer/node_modules/@vue/compiler-dom": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz",
|
||||
"integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==",
|
||||
"dependencies": {
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/server-renderer/node_modules/@vue/compiler-ssr": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz",
|
||||
"integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==",
|
||||
"dependencies": {
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/server-renderer/node_modules/@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
},
|
||||
"node_modules/@vue/shared": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@vueuse/core": {
|
||||
|
@ -4894,8 +4960,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/csstype": {
|
||||
"version": "2.6.21",
|
||||
"license": "MIT"
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
|
||||
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
|
||||
},
|
||||
"node_modules/dargs": {
|
||||
"version": "7.0.0",
|
||||
|
@ -8615,6 +8682,7 @@
|
|||
},
|
||||
"node_modules/magic-string": {
|
||||
"version": "0.25.9",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"sourcemap-codec": "^1.4.8"
|
||||
|
@ -11207,6 +11275,7 @@
|
|||
},
|
||||
"node_modules/sourcemap-codec": {
|
||||
"version": "1.4.8",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/spdx-correct": {
|
||||
|
@ -12824,14 +12893,15 @@
|
|||
}
|
||||
},
|
||||
"node_modules/vue": {
|
||||
"version": "3.2.45",
|
||||
"license": "MIT",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz",
|
||||
"integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==",
|
||||
"dependencies": {
|
||||
"@vue/compiler-dom": "3.2.45",
|
||||
"@vue/compiler-sfc": "3.2.45",
|
||||
"@vue/runtime-dom": "3.2.45",
|
||||
"@vue/server-renderer": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/compiler-sfc": "3.3.4",
|
||||
"@vue/runtime-dom": "3.3.4",
|
||||
"@vue/server-renderer": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/vue-eslint-parser": {
|
||||
|
@ -12955,6 +13025,80 @@
|
|||
"webpack": "^4.1.0 || ^5.0.0-0"
|
||||
}
|
||||
},
|
||||
"node_modules/vue/node_modules/@vue/compiler-core": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz",
|
||||
"integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==",
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.21.3",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"source-map-js": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/vue/node_modules/@vue/compiler-dom": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz",
|
||||
"integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==",
|
||||
"dependencies": {
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/vue/node_modules/@vue/compiler-sfc": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz",
|
||||
"integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==",
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.20.15",
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/compiler-ssr": "3.3.4",
|
||||
"@vue/reactivity-transform": "3.3.4",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.30.0",
|
||||
"postcss": "^8.1.10",
|
||||
"source-map-js": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/vue/node_modules/@vue/compiler-ssr": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz",
|
||||
"integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==",
|
||||
"dependencies": {
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/vue/node_modules/@vue/reactivity-transform": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz",
|
||||
"integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==",
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.20.15",
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.30.0"
|
||||
}
|
||||
},
|
||||
"node_modules/vue/node_modules/@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
},
|
||||
"node_modules/vue/node_modules/magic-string": {
|
||||
"version": "0.30.0",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz",
|
||||
"integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==",
|
||||
"dependencies": {
|
||||
"@jridgewell/sourcemap-codec": "^1.4.13"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/watchpack": {
|
||||
"version": "2.4.0",
|
||||
"dev": true,
|
||||
|
@ -14023,7 +14167,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/parser": {
|
||||
"version": "7.20.5"
|
||||
"version": "7.22.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.4.tgz",
|
||||
"integrity": "sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA=="
|
||||
},
|
||||
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
|
||||
"version": "7.18.9",
|
||||
|
@ -14779,7 +14925,9 @@
|
|||
}
|
||||
},
|
||||
"@electron/remote": {
|
||||
"version": "2.0.8",
|
||||
"version": "2.0.9",
|
||||
"resolved": "https://registry.npmjs.org/@electron/remote/-/remote-2.0.9.tgz",
|
||||
"integrity": "sha512-LR0W0ID6WAKHaSs0x5LX9aiG+5pFBNAJL6eQAJfGkCuZPUa6nZz+czZLdlTDETG45CgF/0raSvCtYOYUpr6c+A==",
|
||||
"requires": {}
|
||||
},
|
||||
"@eslint/eslintrc": {
|
||||
|
@ -14919,8 +15067,7 @@
|
|||
}
|
||||
},
|
||||
"@jridgewell/sourcemap-codec": {
|
||||
"version": "1.4.14",
|
||||
"dev": true
|
||||
"version": "1.4.14"
|
||||
},
|
||||
"@jridgewell/trace-mapping": {
|
||||
"version": "0.3.17",
|
||||
|
@ -14934,6 +15081,11 @@
|
|||
"version": "2.0.4",
|
||||
"dev": true
|
||||
},
|
||||
"@mdi/font": {
|
||||
"version": "7.2.96",
|
||||
"resolved": "https://registry.npmjs.org/@mdi/font/-/font-7.2.96.tgz",
|
||||
"integrity": "sha512-e//lmkmpFUMZKhmCY9zdjRe4zNXfbOIJnn6xveHbaV2kSw5aJ5dLXUxcRt1Gxfi7ZYpFLUWlkG2MGSFAiqAu7w=="
|
||||
},
|
||||
"@nodelib/fs.scandir": {
|
||||
"version": "2.1.5",
|
||||
"dev": true,
|
||||
|
@ -15292,6 +15444,7 @@
|
|||
},
|
||||
"@vue/compiler-core": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/shared": "3.2.45",
|
||||
|
@ -15301,6 +15454,7 @@
|
|||
},
|
||||
"@vue/compiler-dom": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/compiler-core": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
|
@ -15308,6 +15462,7 @@
|
|||
},
|
||||
"@vue/compiler-sfc": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/compiler-core": "3.2.45",
|
||||
|
@ -15323,6 +15478,7 @@
|
|||
},
|
||||
"@vue/compiler-ssr": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/compiler-dom": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
|
@ -15332,13 +15488,23 @@
|
|||
"version": "6.4.5"
|
||||
},
|
||||
"@vue/reactivity": {
|
||||
"version": "3.2.45",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz",
|
||||
"integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==",
|
||||
"requires": {
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/shared": "3.3.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/reactivity-transform": {
|
||||
"version": "3.2.45",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/compiler-core": "3.2.45",
|
||||
|
@ -15348,29 +15514,86 @@
|
|||
}
|
||||
},
|
||||
"@vue/runtime-core": {
|
||||
"version": "3.2.45",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz",
|
||||
"integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==",
|
||||
"requires": {
|
||||
"@vue/reactivity": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/reactivity": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/runtime-dom": {
|
||||
"version": "3.2.45",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz",
|
||||
"integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==",
|
||||
"requires": {
|
||||
"@vue/runtime-core": "3.2.45",
|
||||
"@vue/shared": "3.2.45",
|
||||
"csstype": "^2.6.8"
|
||||
"@vue/runtime-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4",
|
||||
"csstype": "^3.1.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/server-renderer": {
|
||||
"version": "3.2.45",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz",
|
||||
"integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==",
|
||||
"requires": {
|
||||
"@vue/compiler-ssr": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/compiler-ssr": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vue/compiler-core": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz",
|
||||
"integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==",
|
||||
"requires": {
|
||||
"@babel/parser": "^7.21.3",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"source-map-js": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-dom": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz",
|
||||
"integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==",
|
||||
"requires": {
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-ssr": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz",
|
||||
"integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==",
|
||||
"requires": {
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/shared": {
|
||||
"version": "3.2.45"
|
||||
"version": "3.2.45",
|
||||
"dev": true
|
||||
},
|
||||
"@vueuse/core": {
|
||||
"version": "8.7.5",
|
||||
|
@ -16794,7 +17017,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"csstype": {
|
||||
"version": "2.6.21"
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
|
||||
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
|
||||
},
|
||||
"dargs": {
|
||||
"version": "7.0.0",
|
||||
|
@ -19162,6 +19387,7 @@
|
|||
},
|
||||
"magic-string": {
|
||||
"version": "0.25.9",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"sourcemap-codec": "^1.4.8"
|
||||
}
|
||||
|
@ -20746,7 +20972,8 @@
|
|||
}
|
||||
},
|
||||
"sourcemap-codec": {
|
||||
"version": "1.4.8"
|
||||
"version": "1.4.8",
|
||||
"dev": true
|
||||
},
|
||||
"spdx-correct": {
|
||||
"version": "3.1.1",
|
||||
|
@ -21781,13 +22008,88 @@
|
|||
"dev": true
|
||||
},
|
||||
"vue": {
|
||||
"version": "3.2.45",
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz",
|
||||
"integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==",
|
||||
"requires": {
|
||||
"@vue/compiler-dom": "3.2.45",
|
||||
"@vue/compiler-sfc": "3.2.45",
|
||||
"@vue/runtime-dom": "3.2.45",
|
||||
"@vue/server-renderer": "3.2.45",
|
||||
"@vue/shared": "3.2.45"
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/compiler-sfc": "3.3.4",
|
||||
"@vue/runtime-dom": "3.3.4",
|
||||
"@vue/server-renderer": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vue/compiler-core": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz",
|
||||
"integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==",
|
||||
"requires": {
|
||||
"@babel/parser": "^7.21.3",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"source-map-js": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-dom": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz",
|
||||
"integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==",
|
||||
"requires": {
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-sfc": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz",
|
||||
"integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==",
|
||||
"requires": {
|
||||
"@babel/parser": "^7.20.15",
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/compiler-ssr": "3.3.4",
|
||||
"@vue/reactivity-transform": "3.3.4",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.30.0",
|
||||
"postcss": "^8.1.10",
|
||||
"source-map-js": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-ssr": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz",
|
||||
"integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==",
|
||||
"requires": {
|
||||
"@vue/compiler-dom": "3.3.4",
|
||||
"@vue/shared": "3.3.4"
|
||||
}
|
||||
},
|
||||
"@vue/reactivity-transform": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz",
|
||||
"integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==",
|
||||
"requires": {
|
||||
"@babel/parser": "^7.20.15",
|
||||
"@vue/compiler-core": "3.3.4",
|
||||
"@vue/shared": "3.3.4",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.30.0"
|
||||
}
|
||||
},
|
||||
"@vue/shared": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
|
||||
"integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
|
||||
},
|
||||
"magic-string": {
|
||||
"version": "0.30.0",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz",
|
||||
"integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==",
|
||||
"requires": {
|
||||
"@jridgewell/sourcemap-codec": "^1.4.13"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"vue-eslint-parser": {
|
||||
|
|
13
package.json
13
package.json
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "mizar",
|
||||
"productName": "Mizar TCP Tester",
|
||||
"version": "1.0.0",
|
||||
"productName": "Mizar",
|
||||
"version": "1.3.0",
|
||||
"description": "A TCP client/server test/debug tool",
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
|
@ -90,13 +90,14 @@
|
|||
"displayName": "Mizar TCP Tester",
|
||||
"backgroundColor": "transparent",
|
||||
"showNameOnTiles": true,
|
||||
"identityName": "62514FabioDiStasio.AntaresSQLClient",
|
||||
"identityName": "62514FabioDiStasio.MizarTCPtester",
|
||||
"publisher": "CN=1A2729ED-865C-41D2-9038-39AE2A63AA52",
|
||||
"applicationId": "FabioDiStasio.AntaresSQLClient"
|
||||
"applicationId": "FabioDiStasio.MizarTCPtester"
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@electron/remote": "~2.0.1",
|
||||
"@electron/remote": "~2.0.9",
|
||||
"@mdi/font": "~7.2.96",
|
||||
"@vueuse/core": "~8.7.5",
|
||||
"electron-log": "~4.4.1",
|
||||
"electron-store": "~8.1.0",
|
||||
|
@ -106,7 +107,7 @@
|
|||
"moment": "~2.29.4",
|
||||
"pinia": "~2.0.28",
|
||||
"source-map-support": "~0.5.20",
|
||||
"vue": "~3.2.45",
|
||||
"vue": "~3.3.4",
|
||||
"vue-i18n": "~9.2.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
|
|
@ -0,0 +1,161 @@
|
|||
name: mizar
|
||||
adopt-info: mizar
|
||||
summary: A TCP testing tool, useful and intuitive to use right out of the box.
|
||||
description: |
|
||||
Mizar is a TCP tester/debugger designed to be immediately useful and intuitive to use right out of the box.
|
||||
The purpose of Mizar is to help developers working on software that communicates over TCP protocol by speeding up debugging and testing from the earliest stages of development.
|
||||
base: core20
|
||||
|
||||
grade: stable
|
||||
confinement: strict
|
||||
|
||||
architectures:
|
||||
- build-on: amd64
|
||||
compression: lzo
|
||||
layout:
|
||||
/etc/nsswitch.conf:
|
||||
bind-file: $SNAP/etc/nsswitch.conf
|
||||
|
||||
parts:
|
||||
mizar:
|
||||
plugin: dump
|
||||
source: .
|
||||
override-build: |
|
||||
snapcraftctl build
|
||||
ARCHITECTURE=$(dpkg --print-architecture)
|
||||
if [ "${ARCHITECTURE}" = "amd64" ]; then
|
||||
FILTER="amd64.deb"
|
||||
else
|
||||
echo "ERROR! Mizar only produces debs for amd64. Failing the build here."
|
||||
exit 1
|
||||
fi
|
||||
# Get the latest releases json
|
||||
echo "Get GitHub releases..."
|
||||
wget --quiet https://api.github.com/repos/fabio286/mizar/releases/latest -O releases.json
|
||||
# Get the version from the tag_name and the download URL.
|
||||
VERSION=$(jq . releases.json | grep tag_name | cut -d'"' -f4 | sed s'/release-//')
|
||||
DEB_URL=$(cat releases.json | jq -r ".assets[] | select(.name | test(\"${FILTER}\")) | .browser_download_url")
|
||||
DEB=$(basename "${DEB_URL}")
|
||||
echo "Downloading ${DEB_URL}..."
|
||||
wget --quiet "${DEB_URL}" -O "${SNAPCRAFT_PART_INSTALL}/${DEB}"
|
||||
echo "Unpacking ${DEB}..."
|
||||
dpkg -x "${SNAPCRAFT_PART_INSTALL}/${DEB}" ${SNAPCRAFT_PART_INSTALL}
|
||||
rm -f releases.json 2>/dev/null
|
||||
rm -f "${SNAPCRAFT_PART_INSTALL}/${DEB}" 2>/dev/null
|
||||
echo $VERSION > $SNAPCRAFT_STAGE/version
|
||||
# Correct path to icon.
|
||||
sed -i 's|Icon=mizar|Icon=/usr/share/icons/hicolor/256x256/apps/mizar\.png|g' ${SNAPCRAFT_PART_INSTALL}/usr/share/applications/mizar.desktop
|
||||
# Delete usr/bin/mizar, it's a broken symlink pointing outside the snap.
|
||||
rm -f ${SNAPCRAFT_PART_INSTALL}/usr/bin/mizar
|
||||
chmod -s ${SNAPCRAFT_PART_INSTALL}/opt/Mizar/chrome-sandbox
|
||||
snapcraftctl set-version "$(echo $VERSION)"
|
||||
build-packages:
|
||||
- dpkg
|
||||
- jq
|
||||
- sed
|
||||
- wget
|
||||
stage-packages:
|
||||
- fcitx-frontend-gtk3
|
||||
- libappindicator3-1
|
||||
- libasound2
|
||||
- libcurl4
|
||||
- libgconf-2-4
|
||||
- libgtk-3-0
|
||||
- libnotify4
|
||||
- libnspr4
|
||||
- libnss3
|
||||
- libpcre3
|
||||
- libpulse0
|
||||
- libxss1
|
||||
- libsecret-1-0
|
||||
- libxtst6
|
||||
- libxkbfile1
|
||||
- gcc-10-base
|
||||
- libapparmor1
|
||||
- libblkid1
|
||||
- libbsd0
|
||||
- libcom-err2
|
||||
- libcrypt1
|
||||
- libdb5.3
|
||||
- libdbus-1-3
|
||||
- libexpat1
|
||||
- libffi7
|
||||
- libgcc-s1
|
||||
- libgcrypt20
|
||||
- libglib2.0-0
|
||||
- libgmp10
|
||||
- libgnutls30
|
||||
- libgpg-error0
|
||||
- libgssapi-krb5-2
|
||||
- libhogweed5
|
||||
- libidn2-0
|
||||
- libjson-c4
|
||||
- libk5crypto3
|
||||
- libkeyutils1
|
||||
- libkrb5-3
|
||||
- libkrb5support0
|
||||
- liblz4-1
|
||||
- liblzma5
|
||||
- libmount1
|
||||
- libnettle7
|
||||
- libp11-kit0
|
||||
- libpcre2-8-0
|
||||
- libselinux1
|
||||
- libsqlite3-0
|
||||
- libssl1.1
|
||||
- libstdc++6
|
||||
- libsystemd0
|
||||
- libtasn1-6
|
||||
- libudev1
|
||||
- libunistring2
|
||||
- libuuid1
|
||||
- libwrap0
|
||||
- libzstd1
|
||||
- zlib1g
|
||||
- libx11-xcb1
|
||||
- libdrm2
|
||||
- libgbm1
|
||||
- libxcb-dri3-0
|
||||
cleanup:
|
||||
after: [mizar]
|
||||
plugin: nil
|
||||
build-snaps: [gnome-3-38-2004]
|
||||
override-prime: |
|
||||
set -eux
|
||||
cd /snap/gnome-3-38-2004/current
|
||||
find . -type f,l -exec rm -f $SNAPCRAFT_PRIME/{} \;
|
||||
|
||||
mdns-lookup:
|
||||
# Make resolution of ".local" host names (Zero-Conf/mDNS/DNS-SD)
|
||||
# working: Take the original nsswitch.conf file from the base
|
||||
# Snap and add "mdns4_minimal [NOTFOUND=return]" to its "hosts:" line
|
||||
# Also install corresponding mdns4_minimal plug-in
|
||||
# See: https://forum.snapcraft.io/t/no-mdns-support-in-snaps-should-core-have-a-modified-nsswitch-conf/
|
||||
plugin: nil
|
||||
stage-packages:
|
||||
- libnss-mdns
|
||||
override-prime: |
|
||||
set -eux
|
||||
sed -Ee 's/^\s*hosts:(\s+)files/hosts:\1files mdns4_minimal \[NOTFOUND=return\]/' /snap/core20/current/etc/nsswitch.conf > $SNAPCRAFT_STAGE/etc/nsswitch.conf
|
||||
snapcraftctl prime
|
||||
prime:
|
||||
- lib/$SNAPCRAFT_ARCH_TRIPLET/libnss_mdns4_minimal*
|
||||
- etc/nsswitch.conf
|
||||
|
||||
apps:
|
||||
mizar:
|
||||
command: opt/Mizar/mizar --no-sandbox
|
||||
desktop: usr/share/applications/mizar.desktop
|
||||
extensions: [gnome-3-38]
|
||||
environment:
|
||||
# Fallback to XWayland if running in a Wayland session.
|
||||
DISABLE_WAYLAND: 1
|
||||
plugs:
|
||||
- browser-support
|
||||
- cups-control
|
||||
- home
|
||||
- network
|
||||
- opengl
|
||||
- pulseaudio
|
||||
- removable-media
|
||||
- unity7
|
|
@ -10,9 +10,9 @@
|
|||
<transition name="fade">
|
||||
<i
|
||||
v-if="clientStatus === 1"
|
||||
class="material-icons running"
|
||||
class="mdi mdi-play running"
|
||||
:title="t('message.running')"
|
||||
>play_arrow</i>
|
||||
/>
|
||||
</transition>
|
||||
</div>
|
||||
<div
|
||||
|
@ -24,18 +24,27 @@
|
|||
<transition name="fade">
|
||||
<i
|
||||
v-if="serverStatus === 1"
|
||||
class="material-icons running"
|
||||
class="mdi mdi-play running"
|
||||
:title="t('message.running')"
|
||||
>play_arrow</i>
|
||||
/>
|
||||
</transition>
|
||||
</div>
|
||||
</nav>
|
||||
<div
|
||||
class="navSettings"
|
||||
:title="t('word.settings')"
|
||||
@click="isSettingModal=true"
|
||||
>
|
||||
<i class="material-icons">settings</i>
|
||||
<div class="settings-block">
|
||||
<div
|
||||
class="navSettings"
|
||||
:title="t('word.source')"
|
||||
@click="openOutside('https://github.com/Fabio286/mizar')"
|
||||
>
|
||||
<i class="mdi mdi-github" />
|
||||
</div>
|
||||
<div
|
||||
class="navSettings"
|
||||
:title="t('word.settings')"
|
||||
@click="isSettingModal=true"
|
||||
>
|
||||
<i class="mdi mdi-cog" />
|
||||
</div>
|
||||
</div>
|
||||
<ModalSettings v-if="isSettingModal" @hide-settings="isSettingModal=false" />
|
||||
</header>
|
||||
|
@ -45,6 +54,7 @@
|
|||
import { ref } from 'vue';
|
||||
import { useI18n } from 'vue-i18n';
|
||||
import ModalSettings from './ModalSettings.vue';
|
||||
import { shell } from 'electron';
|
||||
|
||||
defineProps({
|
||||
selTab: Number,
|
||||
|
@ -61,4 +71,14 @@ const { t } = useI18n();
|
|||
const selectTab = (value: number) => {
|
||||
emit('selectTab', value);
|
||||
};
|
||||
|
||||
const openOutside = (link: string) => {
|
||||
shell.openExternal(link);
|
||||
};
|
||||
</script>
|
||||
<style scoped lang="scss">
|
||||
.settings-block {
|
||||
display: flex;
|
||||
gap: 10px;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -144,13 +144,13 @@
|
|||
</fieldset>
|
||||
<div class="buttons">
|
||||
<div v-if="running === 0" class="button-wrap">
|
||||
<i class="material-icons white">play_arrow</i>
|
||||
<i class="mdi mdi-play white" />
|
||||
<button class="confirm" type="submit">
|
||||
{{ t('word.start') }}
|
||||
</button>
|
||||
</div>
|
||||
<div v-if="running !== 0 && params.stepTest" class="button-wrap">
|
||||
<i class="material-icons white">message</i>
|
||||
<i class="mdi mdi-message white" />
|
||||
<button
|
||||
class="confirm"
|
||||
:title="t('message.sendMessages')"
|
||||
|
@ -160,7 +160,7 @@
|
|||
</button>
|
||||
</div>
|
||||
<div v-if="running !== 0" class="button-wrap">
|
||||
<i class="material-icons white">stop</i>
|
||||
<i class="mdi mdi-stop white" />
|
||||
<button class="stop" @click.prevent="stopTest">
|
||||
{{ t('word.stop') }}
|
||||
</button>
|
||||
|
@ -187,7 +187,7 @@ import { ref, computed, Ref, onBeforeUnmount } from 'vue';
|
|||
import { storeToRefs } from 'pinia';
|
||||
import Console from './BaseConsole.vue';
|
||||
import Hosts from './ClientTabHosts.vue';
|
||||
import Messages from './ClientMessages.vue';
|
||||
import Messages from './ClientTabMessages.vue';
|
||||
import NewHost from './ModalNewHost.vue';
|
||||
import NewMessage from './ModalNewMessage.vue';
|
||||
import EditMessage from './ModalEditMessage.vue';
|
||||
|
|
|
@ -5,14 +5,17 @@
|
|||
class="box-100"
|
||||
>
|
||||
<h3>
|
||||
<span class="toggle-select"><i class="material-icons" @click="toggleCheck(checkStatus)">{{ checkIcon(checkStatus)
|
||||
}}</i></span><span>
|
||||
<span class="toggle-select"><i
|
||||
class="mdi"
|
||||
:class="[checkIcon(checkStatus)]"
|
||||
@click="toggleCheck(checkStatus)"
|
||||
/></span><span>
|
||||
{{ t('word.host', 2) }}</span>
|
||||
</h3>
|
||||
<div class="tools-box">
|
||||
<div class="round-button green-bg" @click="showAdd">
|
||||
<span>{{ t('message.addHost') }}</span>
|
||||
<i class="material-icons">add</i>
|
||||
<i class="mdi mdi-plus" />
|
||||
</div>
|
||||
</div>
|
||||
<ul id="hostList">
|
||||
|
@ -27,10 +30,10 @@
|
|||
<span>{{ host.host }}:{{ host.port }}</span>
|
||||
</label>
|
||||
<i
|
||||
class="material-icons deleteHost"
|
||||
class="mdi mdi-close deleteHost"
|
||||
:title="t('message.deleteHost', {host: `${host.host}:${host.port}`})"
|
||||
@click="deleteHost(index)"
|
||||
>clear</i>
|
||||
/>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -83,11 +86,11 @@ const deleteHost = (value: number) => {
|
|||
const checkIcon = (status: number) => {
|
||||
switch (status) {
|
||||
case 0:
|
||||
return 'check_box_outline_blank';
|
||||
return 'mdi-checkbox-blank-outline';
|
||||
case 1:
|
||||
return 'indeterminate_check_box';
|
||||
return 'mdi-minus-box';
|
||||
case 2:
|
||||
return 'check_box';
|
||||
return 'mdi-checkbox-marked';
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -4,11 +4,17 @@
|
|||
ref="root"
|
||||
class="box-100"
|
||||
>
|
||||
<h3><span class="toggle-select"><i class="material-icons" @click="toggleCheck(checkStatus)">{{ checkIcon(checkStatus) }}</i></span><span>{{ t('word.message', 2) }}</span></h3>
|
||||
<h3>
|
||||
<span class="toggle-select"><i
|
||||
class="mdi"
|
||||
:class="[checkIcon(checkStatus)]"
|
||||
@click="toggleCheck(checkStatus)"
|
||||
/></span><span>{{ t('word.message', 2) }}</span>
|
||||
</h3>
|
||||
<div class="tools-box">
|
||||
<div class="round-button green-bg" @click="showAdd">
|
||||
<span>{{ t('message.addMessage') }}</span>
|
||||
<i class="material-icons">add</i>
|
||||
<i class="mdi mdi-plus" />
|
||||
</div>
|
||||
</div>
|
||||
<ul id="messageList">
|
||||
|
@ -20,19 +26,23 @@
|
|||
@change="updateMessages"
|
||||
>
|
||||
<div class="checkbox-block" />
|
||||
<span class="format">({{ message.format }})</span>
|
||||
<span
|
||||
class="mdi"
|
||||
:class="[message.format === 'hex' ? 'mdi-hexadecimal' : 'mdi-format-text']"
|
||||
:title="message.format"
|
||||
/>
|
||||
<span>{{ truncate(message.name, 25, '...') }}</span>
|
||||
</label>
|
||||
<i
|
||||
class="material-icons editMessage"
|
||||
class="mdi mdi-pencil editMessage"
|
||||
:title="t('message.editMessage', { message: message.name })"
|
||||
@click="showEdit(index)"
|
||||
>edit</i>
|
||||
/>
|
||||
<i
|
||||
class="material-icons deleteMessage"
|
||||
class="mdi mdi-close deleteMessage"
|
||||
:title="t('message.deleteMessage', { message: message.name })"
|
||||
@click="deleteMessage(index)"
|
||||
>clear</i>
|
||||
/>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -99,11 +109,11 @@ const deleteMessage = (index: number) => {
|
|||
const checkIcon = (status: number) => {
|
||||
switch (status) {
|
||||
case 0:
|
||||
return 'check_box_outline_blank';
|
||||
return 'mdi-checkbox-blank-outline';
|
||||
case 1:
|
||||
return 'indeterminate_check_box';
|
||||
return 'mdi-minus-box';
|
||||
case 2:
|
||||
return 'check_box';
|
||||
return 'mdi-checkbox-marked';
|
||||
}
|
||||
};
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
<tr v-for="(report, index) in reports" :key="index">
|
||||
<td>{{ report.host }}</td>
|
||||
<td>{{ report.sockets }}</td>
|
||||
<td><span :title="t('word.sent', 2)">{{ report.messages.toLocaleString() }}</span> <i class="material-icons">import_export</i><span :title="t('word.received', 2)">{{ report.received }}</span></td>
|
||||
<td><span :title="t('word.sent', 2)">{{ report.messages.toLocaleString() }}</span><i class="mdi mdi-swap-vertical" /><span :title="t('word.received', 2)">{{ report.received }}</span></td>
|
||||
<td><span :title="t('word.sent', 2)">{{ report.data.toLocaleString() }} B</span></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
@ -22,7 +22,7 @@
|
|||
<tr>
|
||||
<td>{{ t('word.total', 2) }}</td>
|
||||
<td>{{ totSockets }}</td>
|
||||
<td><span :title="t('word.sent', 2)">{{ totMessages.toLocaleString() }}</span> <i class="material-icons">import_export</i><span :title="t('word.received', 2)">{{ totReceived.toLocaleString() }}</span></td>
|
||||
<td><span :title="t('word.sent', 2)">{{ totMessages.toLocaleString() }}</span><i class="mdi mdi-swap-vertical" /><span :title="t('word.received', 2)">{{ totReceived.toLocaleString() }}</span></td>
|
||||
<td><span :title="t('word.sent', 2)">{{ totData.toLocaleString() }} B</span></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
|
|
@ -52,13 +52,13 @@
|
|||
</fieldset>
|
||||
<div class="buttons">
|
||||
<div v-if="running === 0" class="button-wrap">
|
||||
<i class="material-icons white">play_arrow</i>
|
||||
<i class="mdi mdi-play white" />
|
||||
<button class="confirm" type="submit">
|
||||
{{ t('word.start') }}
|
||||
</button>
|
||||
</div>
|
||||
<div v-if="running === 1" class="button-wrap">
|
||||
<i class="material-icons white">stop</i>
|
||||
<i class="mdi mdi-stop white" />
|
||||
<button class="stop" @click="stopServer">
|
||||
{{ t('word.stop') }}
|
||||
</button>
|
||||
|
|
|
@ -4,11 +4,17 @@
|
|||
ref="root"
|
||||
class="box-100"
|
||||
>
|
||||
<h3><span class="toggle-select"><i class="material-icons" @click="toggleCheck(checkStatus)">{{ checkIcon(checkStatus) }}</i></span><span>{{ t('word.port', 2) }}</span></h3>
|
||||
<h3>
|
||||
<span class="toggle-select"><i
|
||||
class="mdi"
|
||||
:class="[checkIcon(checkStatus)]"
|
||||
@click="toggleCheck(checkStatus)"
|
||||
/></span><span>{{ t('word.port', 2) }}</span>
|
||||
</h3>
|
||||
<div class="tools-box">
|
||||
<div class="round-button green-bg" @click="showAdd">
|
||||
<span>{{ t('message.addPort') }}</span>
|
||||
<i class="material-icons">add</i>
|
||||
<i class="mdi mdi-plus" />
|
||||
</div>
|
||||
</div>
|
||||
<ul id="portList">
|
||||
|
@ -23,10 +29,10 @@
|
|||
<span>{{ port.port }}</span>
|
||||
</label>
|
||||
<i
|
||||
class="material-icons deletePort"
|
||||
class="mdi mdi-close deletePort"
|
||||
:title="`Elimina porta ${port.port}`"
|
||||
@click="deletePort(index)"
|
||||
>clear</i>
|
||||
/>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -79,11 +85,11 @@ const deletePort = (value: number) => {
|
|||
const checkIcon = (status: number) => {
|
||||
switch (status) {
|
||||
case 0:
|
||||
return 'check_box_outline_blank';
|
||||
return 'mdi-checkbox-blank-outline';
|
||||
case 1:
|
||||
return 'indeterminate_check_box';
|
||||
return 'mdi-minus-box';
|
||||
case 2:
|
||||
return 'check_box';
|
||||
return 'mdi-checkbox-marked';
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
</table>
|
||||
<div class="buttons">
|
||||
<div class="button-wrap">
|
||||
<i class="material-icons">replay</i>
|
||||
<i class="mdi mdi-replay" />
|
||||
<button
|
||||
class="save"
|
||||
:title="t('message.resetReceivedData')"
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,80 @@
|
|||
export const deDE = {
|
||||
word: {
|
||||
client: 'Client | Clients',
|
||||
server: 'Server | Server',
|
||||
host: 'Host | Hosts',
|
||||
message: 'Nachricht | Nachrichten',
|
||||
port: 'Port | Ports',
|
||||
data: 'Daten | Daten',
|
||||
name: 'Name | Namen',
|
||||
start: 'Starten',
|
||||
stop: 'Stoppen',
|
||||
send: 'Senden',
|
||||
total: 'Gesamt | Gesamt',
|
||||
received: 'Erhalten | Erhalten',
|
||||
sent: 'Sent | Sent',
|
||||
socket: 'Socket | Sockets',
|
||||
format: 'Codierung',
|
||||
select: 'Auswählen',
|
||||
cancel: 'Abbrechen',
|
||||
edit: 'Bearbeiten',
|
||||
create: 'Erstellen',
|
||||
reset: 'Zurücksetzen',
|
||||
settings: 'Einstellungen',
|
||||
close: 'Schließen',
|
||||
locale: 'Sprache',
|
||||
author: 'Author',
|
||||
source: 'Quelle'
|
||||
},
|
||||
message: {
|
||||
running: 'Läuft',
|
||||
numberOfMessages: 'Anzahl von Nachrichten',
|
||||
numberOfClients: 'Anzahl von Clients',
|
||||
minInterval: 'Min. Interval (ms)',
|
||||
maxInterval: 'Max. Interval (ms)',
|
||||
closeOnReply: 'Verbindung nach Antwort schließen',
|
||||
persistentConnection: 'Dauerhafte Verbindung',
|
||||
steptest: 'Stufentest',
|
||||
enableTrace: 'Traces aktivieren',
|
||||
alertEconnreset: 'Benachrichtigung bei ECONNRESET',
|
||||
loopMode: 'Schleifenmodus',
|
||||
loopModeEsplaination: 'Test wiederholen nach dessen Abschluss',
|
||||
sendMessages: 'Nachrichten senden',
|
||||
addHost: 'Host hinzufügen',
|
||||
deleteHost: 'Host "{host}" löschen',
|
||||
addMessage: 'Nachricht hinzufügen',
|
||||
editMessage: 'Nachricht "{message}" bearbeiten',
|
||||
deleteMessage: 'Nachricht "{message}" löschen',
|
||||
hostAddress: 'Host address',
|
||||
addPort: 'Port hinzufügen',
|
||||
echoServer: 'Server antwortet',
|
||||
resetReceivedData: 'Empfangene Daten zurücksetzen',
|
||||
serverStatus: 'Server-Status',
|
||||
testReport: 'Test-Bericht',
|
||||
testStarted: 'Test gestartet',
|
||||
testAborted: 'Test abgebrochen',
|
||||
testEnded: 'Test abgeschlossen',
|
||||
clientsConnected: 'Clients verbunden',
|
||||
messagesSent: 'Nachrichten gesendet',
|
||||
testDuration: 'Dauer des Tests: {ms}ms',
|
||||
noMessageSpecified: 'Keine Nachrichten eingestellt',
|
||||
socketOpen: 'Socket #{number} über {host}:{port} Verbindung hergestellt',
|
||||
socketClosed: 'Socket #{number} über {host}:{port} Verbindung geschlossen',
|
||||
socketMessage: 'Socket #{number} über {host}:{port} Sende Nachricht: #{mNumber}',
|
||||
socketReply: 'Socket #{number} über {host}:{port} Server antwortet: {reply}',
|
||||
logOnSocket: 'Socket #{number} über {host}:{port}: {message}',
|
||||
loadingMessages: 'Lade Nachrichten',
|
||||
messagesLoaded: 'Anzahl von geladenen Nachrichten: {mNumber}',
|
||||
sendingMessages: 'Nachrichten werden gesendet',
|
||||
tracesDisabledMessage: 'Traces deaktiviert, Interval zu gering',
|
||||
clientConnectedOnPort: 'Nutzer verbunden mit Port {port}',
|
||||
clientDisonnectedOnPort: 'Nutzer vom Port {port} getrennt',
|
||||
messageReceivedOnPort: 'Empfangene Nachricht über Port {port}: {message}',
|
||||
serverStart: 'Server wird gestartet',
|
||||
serverStop: 'Server wird gestoppt',
|
||||
listenindOnPort: 'Überwachen des Ports {port}',
|
||||
clientErrorOnPort: 'Client-Fehler vom Port {port}: {error}',
|
||||
serverErrorOnPort: 'Server-Fehler vom Port {port}: {error}',
|
||||
reportError: 'Fehler: {error}'
|
||||
}
|
||||
};
|
|
@ -23,7 +23,8 @@ export const enUS = {
|
|||
settings: 'Settings',
|
||||
close: 'Close',
|
||||
locale: 'Locale',
|
||||
author: 'Author'
|
||||
author: 'Author',
|
||||
source: 'Source'
|
||||
},
|
||||
message: {
|
||||
running: 'Running',
|
||||
|
@ -32,20 +33,20 @@ export const enUS = {
|
|||
minInterval: 'Min. Interval (ms)',
|
||||
maxInterval: 'Max Interval (ms)',
|
||||
closeOnReply: 'Close on reply',
|
||||
persistentConnection: 'Persistent Connection',
|
||||
steptest: ' Step test',
|
||||
persistentConnection: 'Persistent connection',
|
||||
steptest: 'Step test',
|
||||
enableTrace: 'Enable traces',
|
||||
alertEconnreset: 'Alert ECONNRESET',
|
||||
loopMode: 'Loop mode',
|
||||
loopModeEsplaination: 'Repeat the test after its completion',
|
||||
sendMessages: 'Send messages',
|
||||
addHost: 'Add host',
|
||||
deleteHost: 'Delete host {host}',
|
||||
deleteHost: 'Delete host "{host}"',
|
||||
addMessage: 'Add message',
|
||||
editMessage: 'Edit message {message}',
|
||||
deleteMessage: 'Delete message {message}',
|
||||
editMessage: 'Edit message',
|
||||
deleteMessage: 'Delete message "{message}"',
|
||||
hostAddress: 'Host address',
|
||||
addPort: 'Add port {port}',
|
||||
addPort: 'Add port',
|
||||
echoServer: 'Echo server',
|
||||
resetReceivedData: 'Reset received data',
|
||||
serverStatus: 'Server status',
|
||||
|
|
|
@ -1,10 +1,14 @@
|
|||
import { createI18n } from 'vue-i18n';
|
||||
import { enUS } from './en-US';
|
||||
import { itIT } from './it-IT';
|
||||
import { ptBR } from './pt-BR';
|
||||
import { deDE } from './de-DE';
|
||||
|
||||
const messages = {
|
||||
'en-US': enUS,
|
||||
'it-IT': itIT
|
||||
'it-IT': itIT,
|
||||
'pt-BR': ptBR,
|
||||
'de-DE': deDE
|
||||
};
|
||||
|
||||
type NestedPartial<T> = {
|
||||
|
|
|
@ -1,6 +1,80 @@
|
|||
export const itIT = {
|
||||
word: {
|
||||
client: 'Client | Client',
|
||||
server: 'Server | Server',
|
||||
host: 'Host | Host',
|
||||
message: 'Messaggio | Messaggi',
|
||||
port: 'Porta | Porte',
|
||||
data: 'Dato | Dati',
|
||||
name: 'Nome | Nomi',
|
||||
start: 'Start',
|
||||
stop: 'Stop',
|
||||
send: 'Invia',
|
||||
total: 'Totale | Totali',
|
||||
received: 'Ricevuto | Ricevuti',
|
||||
sent: 'Inviato | Inviati',
|
||||
socket: 'Socket | Socket',
|
||||
format: 'Formato',
|
||||
select: 'Seleziona',
|
||||
cancel: 'Annulla',
|
||||
edit: 'Modifica',
|
||||
create: 'Crea',
|
||||
reset: 'Reset',
|
||||
settings: 'Impostazioni',
|
||||
close: 'Chiudi',
|
||||
locale: 'Lingua',
|
||||
author: 'Autore',
|
||||
source: 'Sorgenti'
|
||||
},
|
||||
message: {
|
||||
running: 'In esecuzione',
|
||||
numberOfMessages: 'Numero di messaggi',
|
||||
numberOfClients: 'Numero di client',
|
||||
minInterval: 'Intervallo min. (ms)',
|
||||
maxInterval: 'Intervallo max (ms)',
|
||||
closeOnReply: 'Chiudi alla risposta',
|
||||
persistentConnection: 'Connessione persistente',
|
||||
steptest: 'Test a step',
|
||||
enableTrace: 'Abilita trace',
|
||||
alertEconnreset: 'Allerta ECONNRESET',
|
||||
loopMode: 'Modalità loop',
|
||||
loopModeEsplaination: 'Ripete il test dopo il suo completamento',
|
||||
sendMessages: 'Invia messaggi',
|
||||
addHost: 'Aggiungi host',
|
||||
deleteHost: 'Cancella host "{host}"',
|
||||
addMessage: 'Aggiungi messaggio',
|
||||
editMessage: 'Modifica messaggio',
|
||||
deleteMessage: 'Cancella messaggio "{message}"',
|
||||
hostAddress: 'Host address',
|
||||
addPort: 'Aggiungi porta',
|
||||
echoServer: 'Echo server',
|
||||
resetReceivedData: 'Resetta dati ricevuti',
|
||||
serverStatus: 'Stato server',
|
||||
testReport: 'Report del test',
|
||||
testStarted: 'Test avviato',
|
||||
testAborted: 'Test annullato',
|
||||
testEnded: 'Test concluso',
|
||||
clientsConnected: 'Client connessi',
|
||||
messagesSent: 'Messaggi inviati',
|
||||
testDuration: 'Durata test: {ms}ms',
|
||||
noMessageSpecified: 'Nessun messaggio specificato',
|
||||
socketOpen: 'Socket #{number} su {host}:{port} aperto',
|
||||
socketClosed: 'Socket #{number} su {host}:{port} chiuso',
|
||||
socketMessage: 'Socket #{number} su {host}:{port} messaggio #{mNumber}',
|
||||
socketReply: 'Socket #{number} su {host}:{port} risposta: {reply}',
|
||||
logOnSocket: 'Socket #{number} su {host}:{port}: {message}',
|
||||
loadingMessages: 'Caricamento messaggi',
|
||||
messagesLoaded: 'Messaggi caricati: {mNumber}',
|
||||
sendingMessages: 'Invio messaggi',
|
||||
tracesDisabledMessage: 'Trace disabilitati, intervalli troppo brevi',
|
||||
clientConnectedOnPort: 'Client connesso sulla porta {port}',
|
||||
clientDisonnectedOnPort: 'Client disconnesso sulla porta {port}',
|
||||
messageReceivedOnPort: 'Messaggio ricevuto sulla porta {port}: {message}',
|
||||
serverStart: 'Server avviato',
|
||||
serverStop: 'Server interrotto',
|
||||
listenindOnPort: 'In ascolto sulla porta {port}',
|
||||
clientErrorOnPort: 'Errore client sulla porta {port}: {error}',
|
||||
serverErrorOnPort: 'Errore server sulla porta {port}: {error}',
|
||||
reportError: 'Errore report: {error}'
|
||||
}
|
||||
};
|
||||
|
|
|
@ -0,0 +1,80 @@
|
|||
export const ptBR = {
|
||||
word: {
|
||||
client: 'Cliente | Clientes',
|
||||
server: 'Servidor | Servidores',
|
||||
host: 'Host | Hosts',
|
||||
message: 'Mensagem | Mensagens',
|
||||
port: 'Porta | Portas',
|
||||
data: 'Dados | Dados',
|
||||
name: 'Nome | Nomes',
|
||||
start: 'Iniciar',
|
||||
stop: 'Parar',
|
||||
send: 'Enviar',
|
||||
total: 'Total | Totais',
|
||||
received: 'Recebido | Recebido',
|
||||
sent: 'Enviado | Enviado',
|
||||
socket: 'Socket | Sockets',
|
||||
format: 'Formato',
|
||||
select: 'Selecione',
|
||||
cancel: 'Cancelar',
|
||||
edit: 'Editar',
|
||||
create: 'Criar',
|
||||
reset: 'Reiniciar',
|
||||
settings: 'Configurações',
|
||||
close: 'Fechar',
|
||||
locale: 'Localização',
|
||||
author: 'Autor',
|
||||
source: 'Fonte'
|
||||
},
|
||||
message: {
|
||||
running: 'Executando',
|
||||
numberOfMessages: 'Quantidade de mensagens',
|
||||
numberOfClients: 'Quantidade de clientes',
|
||||
minInterval: 'Intervalo Mín. (ms)',
|
||||
maxInterval: 'Intervalo Máx. (ms)',
|
||||
closeOnReply: 'Fechar ao receber resposta',
|
||||
persistentConnection: 'Conexão persistente',
|
||||
steptest: 'Teste por etapa',
|
||||
enableTrace: 'Habilitar rastreamento',
|
||||
alertEconnreset: 'Alertar ECONNRESET',
|
||||
loopMode: 'Modo loop',
|
||||
loopModeEsplaination: 'Repetir o teste após finalizar',
|
||||
sendMessages: 'Enviar mensagens',
|
||||
addHost: 'Adicionar host',
|
||||
deleteHost: 'Excluir host "{host}"',
|
||||
addMessage: 'Adicionar mensagem',
|
||||
editMessage: 'Editar mensagem "{message}"',
|
||||
deleteMessage: 'Deletar mensagem "{message}"',
|
||||
hostAddress: 'Endereço do host',
|
||||
addPort: 'Adicionar porta',
|
||||
echoServer: 'Propagar servidor',
|
||||
resetReceivedData: 'Reiniciar dados recebidos',
|
||||
serverStatus: 'Status do servidor',
|
||||
testReport: 'Relatório do teste',
|
||||
testStarted: 'Teste Iniciou',
|
||||
testAborted: 'Teste abortado',
|
||||
testEnded: 'Teste finalizado',
|
||||
clientsConnected: 'Clientes conectados',
|
||||
messagesSent: 'Mensagens enviadas',
|
||||
testDuration: 'Duração do teste: {ms}ms',
|
||||
noMessageSpecified: 'Nenhuma mensagem especificada',
|
||||
socketOpen: 'Socket #{number} aberto em {host}:{port}',
|
||||
socketClosed: 'Socket #{number} fechado em {host}:{port}',
|
||||
socketMessage: 'Socket #{number} em {host}:{port} mensagem #{mNumber}',
|
||||
socketReply: 'Socket #{number} em {host}:{port} resposta: {reply}',
|
||||
logOnSocket: 'Socket #{number} em {host}:{port}: {message}',
|
||||
loadingMessages: 'Carregando mensagens',
|
||||
messagesLoaded: 'Mensagens carregadas: {mNumber}',
|
||||
sendingMessages: 'Enviando mensagens',
|
||||
tracesDisabledMessage: 'Rastreamento desabilitado, intervalos muito curtos',
|
||||
clientConnectedOnPort: 'Cliente conectou na porta {port}',
|
||||
clientDisonnectedOnPort: 'Cliente desconectou na porta {port}',
|
||||
messageReceivedOnPort: 'Mensagem recebida na porta {port}: {message}',
|
||||
serverStart: 'Servidor iniciou',
|
||||
serverStop: 'Servidor parou',
|
||||
listenindOnPort: 'Escutando na porta {port}',
|
||||
clientErrorOnPort: 'Erro do cliente na porta {port}: {error}',
|
||||
serverErrorOnPort: 'Erro do servidor na porta {port}: {error}',
|
||||
reportError: 'Erro no relatório: {error}'
|
||||
}
|
||||
};
|
|
@ -1,4 +1,6 @@
|
|||
export const localesNames: {[key: string]: string} = {
|
||||
'en-US': 'English',
|
||||
'it-IT': 'Italiano'
|
||||
'it-IT': 'Italiano',
|
||||
'pt-BR': 'Português (Brasil)',
|
||||
'de-DE': 'Deutsch'
|
||||
};
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
import { ipcRenderer } from 'electron';
|
||||
import { createApp } from 'vue';
|
||||
import { createPinia } from 'pinia';
|
||||
import '@mdi/font/css/materialdesignicons.css';
|
||||
import '@/css/reset.css';
|
||||
import '@/scss/main.scss';
|
||||
|
||||
|
|
|
@ -1,57 +1,18 @@
|
|||
/* stylelint-disable block-no-empty */
|
||||
/* stylelint-disable selector-class-pattern */
|
||||
/* stylelint-disable selector-id-pattern */
|
||||
@font-face {
|
||||
font-family: "Material Icons";
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url("../fonts/MaterialIcons-Regular.eot"); /* For IE6-8 */
|
||||
src:
|
||||
local("Material Icons"),
|
||||
local("MaterialIcons-Regular"),
|
||||
url("../fonts/MaterialIcons-Regular.woff2") format("woff2"),
|
||||
url("../fonts/MaterialIcons-Regular.woff") format("woff"),
|
||||
url("../fonts/MaterialIcons-Regular.ttf") format("truetype");
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: "Roboto Regular";
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url("../fonts/Roboto-Regular.ttf") format("truetype");
|
||||
src: url("@/fonts/Roboto-Regular.ttf") format("truetype");
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: "Roboto Mono";
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url("../fonts/RobotoMono-Regular.ttf") format("truetype");
|
||||
}
|
||||
|
||||
.material-icons {
|
||||
font-family: "Material Icons";
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-size: 14px;
|
||||
display: inline-flex;
|
||||
vertical-align: middle;
|
||||
text-decoration: inherit;
|
||||
margin-right: 2px;
|
||||
text-align: center;
|
||||
line-height: 1;
|
||||
text-transform: initial;
|
||||
|
||||
/* Support for all WebKit browsers. */
|
||||
-webkit-font-smoothing: antialiased;
|
||||
|
||||
/* Support for Safari and Chrome. */
|
||||
text-rendering: optimizelegibility;
|
||||
|
||||
/* Support for Firefox. */
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
/* Support for IE. */
|
||||
font-feature-settings: "liga";
|
||||
src: url("@/fonts/RobotoMono-Regular.ttf") format("truetype");
|
||||
}
|
||||
|
||||
/* Generale */
|
||||
|
@ -174,7 +135,7 @@ label {
|
|||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#header .material-icons {
|
||||
#header .mdi {
|
||||
font-size: 24px;
|
||||
margin-top: -2px;
|
||||
}
|
||||
|
@ -374,9 +335,9 @@ label {
|
|||
transition: opacity 0.2s;
|
||||
}
|
||||
|
||||
#hostBox .round-button .material-icons,
|
||||
#portBox .round-button .material-icons,
|
||||
#messageBox .round-button .material-icons {
|
||||
#hostBox .round-button .mdi,
|
||||
#portBox .round-button .mdi,
|
||||
#messageBox .round-button .mdi {
|
||||
font-size: 16px;
|
||||
height: 16px;
|
||||
margin: 0;
|
||||
|
@ -398,7 +359,7 @@ label {
|
|||
}
|
||||
|
||||
#messageBox .format {
|
||||
font-family: "Roboto Mono";
|
||||
font-family: "Roboto Mono", "Courier New", monospace;
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
|
@ -628,7 +589,7 @@ fieldset:not(:disabled) #messageList li:hover .editMessage {
|
|||
margin: 20px 5px;
|
||||
}
|
||||
|
||||
.button-wrap .material-icons {
|
||||
.button-wrap .mdi {
|
||||
position: absolute;
|
||||
top: 11px;
|
||||
left: 8px;
|
||||
|
@ -701,7 +662,7 @@ input[type="submit"] {
|
|||
width: max-content;
|
||||
}
|
||||
|
||||
.button-wrap .material-icons.white {
|
||||
.button-wrap .mdi.white {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
|
@ -768,7 +729,7 @@ fieldset:disabled .checkbox {
|
|||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-select .material-icons {
|
||||
.toggle-select .mdi {
|
||||
font-size: 18px;
|
||||
color: #1565c0;
|
||||
z-index: 1;
|
||||
|
@ -796,7 +757,7 @@ fieldset:disabled .checkbox {
|
|||
min-width: 14px;
|
||||
background: #ebebeb;
|
||||
margin-right: 5px;
|
||||
border: 2px solid #1565c0;
|
||||
border: 2px solid #1565c0cc;
|
||||
border-radius: 2px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
@ -808,50 +769,16 @@ fieldset:disabled .checkbox {
|
|||
}
|
||||
|
||||
.checkbox input:checked + .checkbox-block {
|
||||
background: #1565c0;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.checkbox input:checked + .checkbox-block::before {
|
||||
content: "done";
|
||||
display: block;
|
||||
font-family: "Material Icons";
|
||||
color: #fcfcfc;
|
||||
font-size: 14px;
|
||||
|
||||
/* Support for all WebKit browsers. */
|
||||
content: "\F0132";
|
||||
display: inline-block;
|
||||
color: #1565c0;
|
||||
font: normal normal normal 18px/1 "Material Design Icons";
|
||||
text-rendering: auto;
|
||||
line-height: inherit;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
|
||||
/* Support for Safari and Chrome. */
|
||||
text-rendering: optimizelegibility;
|
||||
|
||||
/* Support for Firefox. */
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
/* Support for IE. */
|
||||
font-feature-settings: "liga";
|
||||
}
|
||||
|
||||
/* TABLET PORTRAIT */
|
||||
|
||||
@media only screen and (min-width: 768px) {
|
||||
/* 768px-HEADER */
|
||||
|
||||
/* 768px-MAIN */
|
||||
|
||||
/* 768px-FOOTER */
|
||||
}
|
||||
|
||||
/* TABLET LANDSCAPE & NETBOOK */
|
||||
@media only screen and (min-width: 1024px) {
|
||||
/* 1024px-HEADER */
|
||||
|
||||
/* 1024px-MAIN */
|
||||
|
||||
/* SIDEBAR */
|
||||
|
||||
/* 1024px-FOOTER */
|
||||
}
|
||||
|
||||
/* DESKTOP */
|
||||
@media only screen and (min-width: 1200px) {
|
||||
border: 2px solid transparent;
|
||||
}
|
||||
|
|
|
@ -146,15 +146,7 @@ const config = {
|
|||
},
|
||||
{
|
||||
test: /\.(woff|woff2|ttf|eot)$/,
|
||||
type: 'asset',
|
||||
parser: {
|
||||
dataUrlCondition: {
|
||||
maxSize: 8 * 1024
|
||||
}
|
||||
},
|
||||
generator: {
|
||||
filename: 'fonts/[hash][ext][query]'
|
||||
}
|
||||
type: 'asset/resource'
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue