From e5ff210946d95cce37e4b4d4186d0c57966c3000 Mon Sep 17 00:00:00 2001
From: Max Behzadi <69126271+MaxTheGeeek@users.noreply.github.com>
Date: Fri, 5 Apr 2024 12:04:02 +0200
Subject: [PATCH 1/2] ADD: wagmi & web3modal
---
launcher/package.json | 21 ++--
launcher/public/output.css | 108 ++++++++++--------
launcher/src/App.vue | 4 +-
.../base-header/components/menu/MenuBody.vue | 6 +-
.../components/UI/node-page/NodeScreen.vue | 58 +++++++---
.../components/modals/IpScanner.vue | 0
launcher/src/composables/useWeb3.js | 47 ++++++++
launcher/src/shims-vue.d.ts | 6 +
launcher/src/store/nodeHeader.js | 5 +
launcher/tsconfig.json | 43 +++++++
10 files changed, 225 insertions(+), 73 deletions(-)
delete mode 100644 launcher/src/components/UI/server-management/components/modals/IpScanner.vue
create mode 100644 launcher/src/composables/useWeb3.js
create mode 100644 launcher/src/shims-vue.d.ts
create mode 100644 launcher/tsconfig.json
diff --git a/launcher/package.json b/launcher/package.json
index a4b5cffc1b..2ea3c99180 100755
--- a/launcher/package.json
+++ b/launcher/package.json
@@ -7,21 +7,21 @@
"scripts": {
"serve": "vue-cli-service serve --port 8081",
"build": "vue-cli-service build",
+ "test:unit": "jest '(\\.test|\\.spec)\\.js' --coverage",
"lint": "vue-cli-service lint",
+ "backend:watch": "nodemon --watch 'src/backend' --exec 'npm run electron:serve'",
"build-themes": "node-sass src/styles/themes -o public/themes",
"electron:build": "vue-cli-service electron:build",
"electron:serve": "vue-cli-service electron:serve",
+ "format": "prettier . --write",
+ "lint:fix": "eslint --ext .js,.vue --ignore-path ../.gitignore --fix src",
"postinstall": "electron-builder install-app-deps",
"postuninstall": "electron-builder install-app-deps",
- "test:unit": "jest '(\\.test|\\.spec)\\.js' --coverage",
- "test:int": "jest '\\.int\\.js'",
+ "stereum": "concurrently \"npm:electron:serve\" \"npm:watch:css\"",
"test": "jest",
"test:coverage": "jest --coverage",
- "watch:css": "npx tailwindcss -i ./src/main.css -o ./public/output.css --watch",
- "lint:fix": "eslint --ext .js,.vue --ignore-path ../.gitignore --fix src",
- "stereum": "concurrently \"npm:electron:serve\" \"npm:watch:css\"",
- "backend:watch": "nodemon --watch 'src/backend' --exec 'npm run electron:serve'",
- "format": "prettier . --write"
+ "test:int": "jest '\\.int\\.js'",
+ "watch:css": "npx tailwindcss -i ./src/main.css -o ./public/output.css --watch"
},
"dependencies": {
"@headlessui/vue": "^1.7.16",
@@ -32,6 +32,9 @@
"@vue/cli": "^5.0.8",
"@vue/cli-service": "^5.0.8",
"@vue/compiler-sfc": "^3.2.33",
+ "@wagmi/connectors": "^4.1.24",
+ "@wagmi/core": "^2.6.15",
+ "@web3modal/wagmi": "^4.1.5",
"animate.css": "^4.1.1",
"axios": "^1.3.4",
"electron-builder": "^23.0.3",
@@ -48,7 +51,9 @@
"semver": "^7.6.0",
"ssh2": "^1.1.0",
"swiper": "^11.0.6",
+ "viem": "^2.9.9",
"vue": "^3.2.33",
+ "vue-class-component": "^8.0.0-0",
"vue-i18n": "9.2.2",
"vue-router": "^4.0.15",
"vue3-carousel": "^0.3.1",
@@ -63,7 +68,6 @@
"@tailwindcss/forms": "^0.5.2",
"@tailwindcss/typography": "^0.5.2",
"@types/xterm": "^3.0.0",
- "@vue/cli-plugin-babel": "~5.0.4",
"@vue/test-utils": "^2.3.1",
"@vue/vue3-jest": "^29.2.3",
"@vueuse/core": "^10.2.1",
@@ -83,6 +87,7 @@
"prettier": "^2.8.4",
"tailwind-scrollbar": "^3.0.4",
"tailwindcss": "^3.2.7",
+ "typescript": "^5.0.4",
"vue-cli-plugin-electron-builder": "^3.0.0-alpha.4",
"vue-loader": "^17.0.1",
"vue-template-compiler": "^2.6.14"
diff --git a/launcher/public/output.css b/launcher/public/output.css
index cbcfa20a02..2aef81c4fe 100755
--- a/launcher/public/output.css
+++ b/launcher/public/output.css
@@ -1,7 +1,7 @@
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:wght@100;200;300;400;500;600;700;800;900&display=swap");
/*
-! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
+! tailwindcss v3.4.3 | MIT License | https://tailwindcss.com
*/
/*
@@ -217,6 +217,8 @@ textarea {
/* 1 */
line-height: inherit;
/* 1 */
+ letter-spacing: inherit;
+ /* 1 */
color: inherit;
/* 1 */
margin: 0;
@@ -240,9 +242,9 @@ select {
*/
button,
-[type='button'],
-[type='reset'],
-[type='submit'] {
+input:where([type='button']),
+input:where([type='reset']),
+input:where([type='submit']) {
-webkit-appearance: button;
/* 1 */
background-color: transparent;
@@ -524,6 +526,10 @@ video {
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
+ --tw-contain-size: ;
+ --tw-contain-layout: ;
+ --tw-contain-paint: ;
+ --tw-contain-style: ;
}
::-ms-backdrop{
@@ -574,6 +580,10 @@ video {
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
+ --tw-contain-size: ;
+ --tw-contain-layout: ;
+ --tw-contain-paint: ;
+ --tw-contain-style: ;
}
::backdrop{
@@ -624,6 +634,10 @@ video {
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
+ --tw-contain-size: ;
+ --tw-contain-layout: ;
+ --tw-contain-paint: ;
+ --tw-contain-style: ;
}
::-webkit-scrollbar {
@@ -757,6 +771,10 @@ video {
bottom: -2rem;
}
+.-left-12{
+ left: -3rem;
+}
+
.-left-\[1px\]{
left: -1px;
}
@@ -789,6 +807,10 @@ video {
top: -5rem;
}
+.-top-7{
+ top: -1.75rem;
+}
+
.-top-8{
top: -2rem;
}
@@ -873,6 +895,10 @@ video {
left: 8rem;
}
+.left-4{
+ left: 1rem;
+}
+
.left-\[1\.3rem\]{
left: 1.3rem;
}
@@ -981,18 +1007,6 @@ video {
top: 7rem;
}
-.-left-12{
- left: -3rem;
-}
-
-.-top-7{
- top: -1.75rem;
-}
-
-.left-4{
- left: 1rem;
-}
-
.-z-10{
z-index: -10;
}
@@ -1892,6 +1906,10 @@ video {
max-height: 450px;
}
+.max-h-\[491px\]{
+ max-height: 491px;
+}
+
.max-h-\[503px\]{
max-height: 503px;
}
@@ -1904,10 +1922,6 @@ video {
max-height: 100%;
}
-.max-h-\[491px\]{
- max-height: 491px;
-}
-
.min-h-11{
min-height: 2.75rem;
}
@@ -2088,6 +2102,10 @@ video {
width: 75%;
}
+.w-96{
+ width: 24rem;
+}
+
.w-\[100px\]{
width: 100px;
}
@@ -3308,6 +3326,11 @@ video {
background-color: rgb(22 23 23 / var(--tw-bg-opacity));
}
+.bg-\[\#16181b\]{
+ --tw-bg-opacity: 1;
+ background-color: rgb(22 24 27 / var(--tw-bg-opacity));
+}
+
.bg-\[\#171D22\]{
--tw-bg-opacity: 1;
background-color: rgb(23 29 34 / var(--tw-bg-opacity));
@@ -3368,6 +3391,11 @@ video {
background-color: rgb(27 29 31 / var(--tw-bg-opacity));
}
+.bg-\[\#1b1d20\]{
+ --tw-bg-opacity: 1;
+ background-color: rgb(27 29 32 / var(--tw-bg-opacity));
+}
+
.bg-\[\#1b3231\]{
--tw-bg-opacity: 1;
background-color: rgb(27 50 49 / var(--tw-bg-opacity));
@@ -3403,6 +3431,11 @@ video {
background-color: rgb(31 33 35 / var(--tw-bg-opacity));
}
+.bg-\[\#1f2226\]{
+ --tw-bg-opacity: 1;
+ background-color: rgb(31 34 38 / var(--tw-bg-opacity));
+}
+
.bg-\[\#202123\]{
--tw-bg-opacity: 1;
background-color: rgb(32 33 35 / var(--tw-bg-opacity));
@@ -3812,21 +3845,6 @@ video {
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
-.bg-\[\#16181b\]{
- --tw-bg-opacity: 1;
- background-color: rgb(22 24 27 / var(--tw-bg-opacity));
-}
-
-.bg-\[\#1b1d20\]{
- --tw-bg-opacity: 1;
- background-color: rgb(27 29 32 / var(--tw-bg-opacity));
-}
-
-.bg-\[\#1f2226\]{
- --tw-bg-opacity: 1;
- background-color: rgb(31 34 38 / var(--tw-bg-opacity));
-}
-
.bg-opacity-80{
--tw-bg-opacity: 0.8;
}
@@ -5481,6 +5499,11 @@ html body {
--tw-shadow: var(--tw-shadow-colored);
}
+.hover\:shadow-\[\#1b1d20\]:hover{
+ --tw-shadow-color: #1b1d20;
+ --tw-shadow: var(--tw-shadow-colored);
+}
+
.hover\:shadow-\[\#1e2a29\]:hover{
--tw-shadow-color: #1e2a29;
--tw-shadow: var(--tw-shadow-colored);
@@ -5501,6 +5524,11 @@ html body {
--tw-shadow: var(--tw-shadow-colored);
}
+.hover\:shadow-gray-800:hover{
+ --tw-shadow-color: #1f2937;
+ --tw-shadow: var(--tw-shadow-colored);
+}
+
.hover\:shadow-gray-900:hover{
--tw-shadow-color: #111827;
--tw-shadow: var(--tw-shadow-colored);
@@ -5511,16 +5539,6 @@ html body {
--tw-shadow: var(--tw-shadow-colored);
}
-.hover\:shadow-\[\#1b1d20\]:hover{
- --tw-shadow-color: #1b1d20;
- --tw-shadow: var(--tw-shadow-colored);
-}
-
-.hover\:shadow-gray-800:hover{
- --tw-shadow-color: #1f2937;
- --tw-shadow: var(--tw-shadow-colored);
-}
-
.hover\:brightness-110:hover{
--tw-brightness: brightness(1.1);
-webkit-filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
diff --git a/launcher/src/App.vue b/launcher/src/App.vue
index 30232dbf9b..ecc021e2b5 100755
--- a/launcher/src/App.vue
+++ b/launcher/src/App.vue
@@ -3,9 +3,7 @@