From 4eceeea4d172aec6a9c8e9fb6ac015f81c8da3f4 Mon Sep 17 00:00:00 2001 From: Proddy Date: Sat, 25 Jun 2022 14:24:52 +0200 Subject: [PATCH 1/5] 3.4.2b3 --- CHANGELOG_LATEST.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG_LATEST.md b/CHANGELOG_LATEST.md index 707e43501..83b23c0f8 100644 --- a/CHANGELOG_LATEST.md +++ b/CHANGELOG_LATEST.md @@ -8,14 +8,18 @@ - damping - wwprio for RC310 heating circuits - switchonoptimization for RC310 heating circuits - - enum_controlmode for RC310 (new enum list) - - nofrostmode, reducemode, reducetemp & noreducetemp for RC310 + - enum_controlmode for RC310 (new enum list) + - nofrostmode, reducemode, reducetemp & noreducetemp for RC310 - emergencyops and emergencytemp, wwmaxtemp, wwflowtempoffset and wwcomfort1 for RC310 ## Fixed +- fix Table resizing in WebUI [#519](https://github.com/emsesp/EMS-ESP32/issues/519) + ## Changed +- Shorten "friendly names" in Home Assistant [#555](https://github.com/emsesp/EMS-ESP32/issues/555) + - platformio 2.3.0 (IDF 4, Arduino 2) - remove master-thermostat, support multiple thermostats From 254d4dd02da37528969e79f2b1f210a8e0ac1c0a Mon Sep 17 00:00:00 2001 From: Proddy Date: Sat, 25 Jun 2022 14:25:05 +0200 Subject: [PATCH 2/5] updated packages --- interface/package-lock.json | 102 ++++++++++++++++++------------------ interface/package.json | 10 ++-- mock-api/package-lock.json | 28 +++++----- mock-api/package.json | 4 +- 4 files changed, 72 insertions(+), 72 deletions(-) diff --git a/interface/package-lock.json b/interface/package-lock.json index 58233fddc..bcaa46617 100644 --- a/interface/package-lock.json +++ b/interface/package-lock.json @@ -12,14 +12,14 @@ "@emotion/styled": "^11.9.3", "@msgpack/msgpack": "^2.7.2", "@mui/icons-material": "^5.8.4", - "@mui/material": "^5.8.4", - "@table-library/react-table-library": "^3.1.5", + "@mui/material": "^5.8.5", + "@table-library/react-table-library": "3.2.0-beta.1", "@types/lodash": "^4.14.182", "@types/node": "^18.0.0", "@types/react": "^18.0.14", "@types/react-dom": "^18.0.5", "@types/react-router-dom": "^5.3.3", - "async-validator": "^4.1.1", + "async-validator": "^4.2.5", "axios": "^0.27.2", "http-proxy-middleware": "^2.0.6", "jwt-decode": "^3.1.2", @@ -34,10 +34,10 @@ "react-router-dom": "^6.3.0", "react-scripts": "5.0.1", "sockette": "^2.0.6", - "typescript": "^4.7.3" + "typescript": "^4.7.4" }, "devDependencies": { - "nodemon": "^2.0.16", + "nodemon": "^2.0.18", "npm-run-all": "^4.1.5" } }, @@ -3028,9 +3028,9 @@ } }, "node_modules/@mui/base": { - "version": "5.0.0-alpha.85", - "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.85.tgz", - "integrity": "sha512-ONlQJOmQrxmR+pYF9AqH69FOG4ofwzVzNltwb2xKAQIW3VbsNZahcHIpzhFd70W6EIU+QHzB9TzamSM+Fg/U7w==", + "version": "5.0.0-alpha.86", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.86.tgz", + "integrity": "sha512-0vi/Nni1mizrgrzKeyksEjw5JVSrgT8Vr2NhxzFtYxqpMgtdSrBvcmcuzBf9kE/ECMPbgpSIcqv0nLbLZUYkOQ==", "dependencies": { "@babel/runtime": "^7.17.2", "@emotion/is-prop-valid": "^1.1.2", @@ -3085,13 +3085,13 @@ } }, "node_modules/@mui/material": { - "version": "5.8.4", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.8.4.tgz", - "integrity": "sha512-KlOJS1JGhwuhdoF4fulmz41h/YxyMdZSc+ncz+HAah0GKn8ovAs5774f1w0lIasxbtI1Ziunwvmnu9PvvUKdMw==", + "version": "5.8.5", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.8.5.tgz", + "integrity": "sha512-wngPXlOI9BurLSGlObQM/2L0QFFaIcvJnDK5A+ALxuUyuQnPviVWfC1l/r8rPlxQ4PCbSYpq3gzLlgnLoWcO/g==", "dependencies": { "@babel/runtime": "^7.17.2", - "@mui/base": "5.0.0-alpha.85", - "@mui/system": "^5.8.4", + "@mui/base": "5.0.0-alpha.86", + "@mui/system": "^5.8.5", "@mui/types": "^7.1.4", "@mui/utils": "^5.8.4", "@types/react-transition-group": "^4.4.4", @@ -3184,9 +3184,9 @@ } }, "node_modules/@mui/system": { - "version": "5.8.4", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.8.4.tgz", - "integrity": "sha512-eeYZXlOn4p+tYwqqDlci6wW4knJ68aGx5A24YU9ubYZ5o0IwveoNP3LC9sHAMxigk/mUTqL4bpSMJ2HbTn2aQg==", + "version": "5.8.5", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.8.5.tgz", + "integrity": "sha512-1bhITHp5sX/CVEf1QwtBWvW+kNnH+GU7lKz0CeAL1RyH9dWvoL9Yt/+i/L8hJ6jVZB/7Au2F6MsyDPt8V1jfdA==", "dependencies": { "@babel/runtime": "^7.17.2", "@mui/private-theming": "^5.8.4", @@ -3725,9 +3725,9 @@ } }, "node_modules/@table-library/react-table-library": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@table-library/react-table-library/-/react-table-library-3.1.5.tgz", - "integrity": "sha512-yJXR+RaP3Wt3vqe34PXjKZMsce9ZApkwdhvsgJ/39QicSnPx4cYSJ1/mCrGfkYYRcXzIkvsX38ElCZcp8uTl1A==", + "version": "3.2.0-beta.1", + "resolved": "https://registry.npmjs.org/@table-library/react-table-library/-/react-table-library-3.2.0-beta.1.tgz", + "integrity": "sha512-WKSf0n8GQxCikTxwxjHLplG9xTsSxlu1INe6bW9/CgcJab04NyA03pvTDUU0J1C0xxDhdxtcoM8dFrHnP2XpwQ==", "dependencies": { "clsx": "1.1.1", "react-virtualized-auto-sizer": "1.0.6", @@ -4872,9 +4872,9 @@ "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" }, "node_modules/async-validator": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.1.1.tgz", - "integrity": "sha512-p4DO/JXwjs8klJyJL8Q2oM4ks5fUTze/h5k10oPPKMiLe1fj3G1QMzPHNmN1Py4ycOk7WlO2DcGXv1qiESJCZA==" + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" }, "node_modules/asynckit": { "version": "0.4.0", @@ -12489,9 +12489,9 @@ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==" }, "node_modules/nodemon": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.16.tgz", - "integrity": "sha512-zsrcaOfTWRuUzBn3P44RDliLlp263Z/76FPoHFr3cFFkOz0lTPAcIw8dCzfdVIx/t3AtDYCZRCDkoCojJqaG3w==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.18.tgz", + "integrity": "sha512-uAvrKipi2zAz8E7nkSz4qW4F4zd5fs2wNGsTx+xXlP8KXqd9ucE0vY9wankOsPboeDyuUGN9vsXGV1pLn80l/A==", "dev": true, "hasInstallScript": true, "dependencies": { @@ -16801,9 +16801,9 @@ } }, "node_modules/typescript": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz", - "integrity": "sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==", + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", + "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -20090,9 +20090,9 @@ "integrity": "sha512-rYEi46+gIzufyYUAoHDnRzkWGxajpD9vVXFQ3g1vbjrBm6P7MBmm+s/fqPa46sxa+8FOUdEuRQKaugo5a4JWpw==" }, "@mui/base": { - "version": "5.0.0-alpha.85", - "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.85.tgz", - "integrity": "sha512-ONlQJOmQrxmR+pYF9AqH69FOG4ofwzVzNltwb2xKAQIW3VbsNZahcHIpzhFd70W6EIU+QHzB9TzamSM+Fg/U7w==", + "version": "5.0.0-alpha.86", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.86.tgz", + "integrity": "sha512-0vi/Nni1mizrgrzKeyksEjw5JVSrgT8Vr2NhxzFtYxqpMgtdSrBvcmcuzBf9kE/ECMPbgpSIcqv0nLbLZUYkOQ==", "requires": { "@babel/runtime": "^7.17.2", "@emotion/is-prop-valid": "^1.1.2", @@ -20113,13 +20113,13 @@ } }, "@mui/material": { - "version": "5.8.4", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.8.4.tgz", - "integrity": "sha512-KlOJS1JGhwuhdoF4fulmz41h/YxyMdZSc+ncz+HAah0GKn8ovAs5774f1w0lIasxbtI1Ziunwvmnu9PvvUKdMw==", + "version": "5.8.5", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.8.5.tgz", + "integrity": "sha512-wngPXlOI9BurLSGlObQM/2L0QFFaIcvJnDK5A+ALxuUyuQnPviVWfC1l/r8rPlxQ4PCbSYpq3gzLlgnLoWcO/g==", "requires": { "@babel/runtime": "^7.17.2", - "@mui/base": "5.0.0-alpha.85", - "@mui/system": "^5.8.4", + "@mui/base": "5.0.0-alpha.86", + "@mui/system": "^5.8.5", "@mui/types": "^7.1.4", "@mui/utils": "^5.8.4", "@types/react-transition-group": "^4.4.4", @@ -20151,9 +20151,9 @@ } }, "@mui/system": { - "version": "5.8.4", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.8.4.tgz", - "integrity": "sha512-eeYZXlOn4p+tYwqqDlci6wW4knJ68aGx5A24YU9ubYZ5o0IwveoNP3LC9sHAMxigk/mUTqL4bpSMJ2HbTn2aQg==", + "version": "5.8.5", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.8.5.tgz", + "integrity": "sha512-1bhITHp5sX/CVEf1QwtBWvW+kNnH+GU7lKz0CeAL1RyH9dWvoL9Yt/+i/L8hJ6jVZB/7Au2F6MsyDPt8V1jfdA==", "requires": { "@babel/runtime": "^7.17.2", "@mui/private-theming": "^5.8.4", @@ -20472,9 +20472,9 @@ } }, "@table-library/react-table-library": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@table-library/react-table-library/-/react-table-library-3.1.5.tgz", - "integrity": "sha512-yJXR+RaP3Wt3vqe34PXjKZMsce9ZApkwdhvsgJ/39QicSnPx4cYSJ1/mCrGfkYYRcXzIkvsX38ElCZcp8uTl1A==", + "version": "3.2.0-beta.1", + "resolved": "https://registry.npmjs.org/@table-library/react-table-library/-/react-table-library-3.2.0-beta.1.tgz", + "integrity": "sha512-WKSf0n8GQxCikTxwxjHLplG9xTsSxlu1INe6bW9/CgcJab04NyA03pvTDUU0J1C0xxDhdxtcoM8dFrHnP2XpwQ==", "requires": { "clsx": "1.1.1", "react-virtualized-auto-sizer": "1.0.6", @@ -21393,9 +21393,9 @@ "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" }, "async-validator": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.1.1.tgz", - "integrity": "sha512-p4DO/JXwjs8klJyJL8Q2oM4ks5fUTze/h5k10oPPKMiLe1fj3G1QMzPHNmN1Py4ycOk7WlO2DcGXv1qiESJCZA==" + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" }, "asynckit": { "version": "0.4.0", @@ -26949,9 +26949,9 @@ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==" }, "nodemon": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.16.tgz", - "integrity": "sha512-zsrcaOfTWRuUzBn3P44RDliLlp263Z/76FPoHFr3cFFkOz0lTPAcIw8dCzfdVIx/t3AtDYCZRCDkoCojJqaG3w==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.18.tgz", + "integrity": "sha512-uAvrKipi2zAz8E7nkSz4qW4F4zd5fs2wNGsTx+xXlP8KXqd9ucE0vY9wankOsPboeDyuUGN9vsXGV1pLn80l/A==", "dev": true, "requires": { "chokidar": "^3.5.2", @@ -29957,9 +29957,9 @@ } }, "typescript": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz", - "integrity": "sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==" + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", + "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==" }, "unbox-primitive": { "version": "1.0.2", diff --git a/interface/package.json b/interface/package.json index 1cc1add2c..1360f7c37 100644 --- a/interface/package.json +++ b/interface/package.json @@ -8,14 +8,14 @@ "@emotion/styled": "^11.9.3", "@msgpack/msgpack": "^2.7.2", "@mui/icons-material": "^5.8.4", - "@mui/material": "^5.8.4", - "@table-library/react-table-library": "^3.1.5", + "@mui/material": "^5.8.5", + "@table-library/react-table-library": "3.2.0-beta.1", "@types/lodash": "^4.14.182", "@types/node": "^18.0.0", "@types/react": "^18.0.14", "@types/react-dom": "^18.0.5", "@types/react-router-dom": "^5.3.3", - "async-validator": "^4.1.1", + "async-validator": "^4.2.5", "axios": "^0.27.2", "http-proxy-middleware": "^2.0.6", "jwt-decode": "^3.1.2", @@ -30,7 +30,7 @@ "react-router-dom": "^6.3.0", "react-scripts": "5.0.1", "sockette": "^2.0.6", - "typescript": "^4.7.3" + "typescript": "^4.7.4" }, "scripts": { "start": "react-app-rewired start", @@ -97,7 +97,7 @@ ] }, "devDependencies": { - "nodemon": "^2.0.16", + "nodemon": "^2.0.18", "npm-run-all": "^4.1.5" } } diff --git a/mock-api/package-lock.json b/mock-api/package-lock.json index 5620b6cf0..b7a527b62 100644 --- a/mock-api/package-lock.json +++ b/mock-api/package-lock.json @@ -13,8 +13,8 @@ "compression": "^1.7.4", "express": "^4.18.1", "express-sse": "^0.5.3", - "nodemon": "^2.0.16", - "ws": "^8.7.0" + "nodemon": "^2.0.18", + "ws": "^8.8.0" } }, "node_modules/@msgpack/msgpack": { @@ -1153,9 +1153,9 @@ } }, "node_modules/nodemon": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.16.tgz", - "integrity": "sha512-zsrcaOfTWRuUzBn3P44RDliLlp263Z/76FPoHFr3cFFkOz0lTPAcIw8dCzfdVIx/t3AtDYCZRCDkoCojJqaG3w==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.18.tgz", + "integrity": "sha512-uAvrKipi2zAz8E7nkSz4qW4F4zd5fs2wNGsTx+xXlP8KXqd9ucE0vY9wankOsPboeDyuUGN9vsXGV1pLn80l/A==", "hasInstallScript": true, "dependencies": { "chokidar": "^3.5.2", @@ -1811,9 +1811,9 @@ } }, "node_modules/ws": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz", - "integrity": "sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.0.tgz", + "integrity": "sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ==", "engines": { "node": ">=10.0.0" }, @@ -2672,9 +2672,9 @@ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "nodemon": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.16.tgz", - "integrity": "sha512-zsrcaOfTWRuUzBn3P44RDliLlp263Z/76FPoHFr3cFFkOz0lTPAcIw8dCzfdVIx/t3AtDYCZRCDkoCojJqaG3w==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.18.tgz", + "integrity": "sha512-uAvrKipi2zAz8E7nkSz4qW4F4zd5fs2wNGsTx+xXlP8KXqd9ucE0vY9wankOsPboeDyuUGN9vsXGV1pLn80l/A==", "requires": { "chokidar": "^3.5.2", "debug": "^3.2.7", @@ -3169,9 +3169,9 @@ } }, "ws": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz", - "integrity": "sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.0.tgz", + "integrity": "sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ==", "requires": {} }, "xdg-basedir": { diff --git a/mock-api/package.json b/mock-api/package.json index b41cb5039..23c2276b3 100644 --- a/mock-api/package.json +++ b/mock-api/package.json @@ -15,7 +15,7 @@ "compression": "^1.7.4", "express": "^4.18.1", "express-sse": "^0.5.3", - "nodemon": "^2.0.16", - "ws": "^8.7.0" + "nodemon": "^2.0.18", + "ws": "^8.8.0" } } From 2c90a2c3aa8eb8ef7d8e3d47b3700986e2e9c8b0 Mon Sep 17 00:00:00 2001 From: Proddy Date: Sat, 25 Jun 2022 14:25:11 +0200 Subject: [PATCH 3/5] 3.4.2b3 --- src/version.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/version.h b/src/version.h index 45b273d47..97cdddd79 100644 --- a/src/version.h +++ b/src/version.h @@ -1 +1 @@ -#define EMSESP_APP_VERSION "3.4.2b2" +#define EMSESP_APP_VERSION "3.4.2b3" From 4af1de4093a6ff29fe73505efa721d697bdb274a Mon Sep 17 00:00:00 2001 From: Proddy Date: Sat, 25 Jun 2022 14:25:31 +0200 Subject: [PATCH 4/5] auto-formatting --- src/analogsensor.h | 2 +- src/dallassensor.h | 2 +- src/system.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/analogsensor.h b/src/analogsensor.h index 3c10c11c8..198cb67dd 100644 --- a/src/analogsensor.h +++ b/src/analogsensor.h @@ -45,7 +45,7 @@ class AnalogSensor { std::string name() const; void set_name(const std::string & name) { - name_ = name; + name_ = name; } uint8_t gpio() const { diff --git a/src/dallassensor.h b/src/dallassensor.h index 78bc9e29d..46d62a18b 100644 --- a/src/dallassensor.h +++ b/src/dallassensor.h @@ -57,7 +57,7 @@ class DallasSensor { std::string name() const; void set_name(const std::string & name) { - name_ = name; + name_ = name; } bool apply_customization(); diff --git a/src/system.h b/src/system.h index a0448df96..3db47a6ad 100644 --- a/src/system.h +++ b/src/system.h @@ -191,7 +191,7 @@ class System { #ifndef EMSESP_STANDALONE return (ethernet_connected() || WiFi.isConnected()); #else - return true; + return true; #endif } From 9639f9cee6c98f1f31a18edfee91580ff14ba4fa Mon Sep 17 00:00:00 2001 From: Proddy Date: Sat, 25 Jun 2022 14:25:51 +0200 Subject: [PATCH 5/5] fix table column resizing #519 --- .../framework/security/ManageUsersForm.tsx | 57 ++-- interface/src/project/DashboardData.tsx | 275 +++++++----------- interface/src/project/DashboardStatus.tsx | 77 ++--- .../src/project/SettingsCustomization.tsx | 95 +++--- 4 files changed, 201 insertions(+), 303 deletions(-) diff --git a/interface/src/framework/security/ManageUsersForm.tsx b/interface/src/framework/security/ManageUsersForm.tsx index 8d14d1087..c7b9324b8 100644 --- a/interface/src/framework/security/ManageUsersForm.tsx +++ b/interface/src/framework/security/ManageUsersForm.tsx @@ -35,43 +35,44 @@ const ManageUsersForm: FC = () => { const authenticatedContext = useContext(AuthenticatedContext); const table_theme = useTheme({ + Table: ` + --data-table-library_grid-template-columns: repeat(1, minmax(0, 1fr)) 90px 120px; + `, BaseRow: ` font-size: 14px; - color: white; - padding-left: 8px; `, HeaderRow: ` text-transform: uppercase; background-color: black; color: #90CAF9; - font-weight: 500; - border-bottom: 1px solid #e0e0e0; + .th { + padding: 8px; + height: 42px; + font-weight: 500; + border-bottom: 1px solid #565656; + } `, Row: ` - &:nth-of-type(odd) { + .td { + padding: 8px; + border-top: 1px solid #565656; + border-bottom: 1px solid #565656; + } + + &:nth-of-type(odd) .td { background-color: #303030; } - &:nth-of-type(even) { + &:nth-of-type(even) .td { background-color: #1e1e1e; } - border-top: 1px solid #565656; - border-bottom: 1px solid #565656; - position: relative; - z-index: 1; - &:not(:last-of-type) { - margin-bottom: -1px; - } - &:not(:first-of-type) { - margin-top: -1px; - } - &:hover { - color: white; - } `, BaseCell: ` - border-top: 1px solid transparent; - border-right: 1px solid transparent; - border-bottom: 1px solid transparent; + &:nth-of-type(2) { + text-align: center; + } + &:last-of-type { + text-align: right; + } ` }); @@ -130,22 +131,22 @@ const ManageUsersForm: FC = () => { return ( <> - +
{(tableList: any) => ( <>
- USERNAME - IS ADMIN - + USERNAME + IS ADMIN +
{tableList.map((u: any) => ( {u.username} - {u.admin ? : } - + {u.admin ? : } + { const [deviceDialog, setDeviceDialog] = useState(-1); const [onlyFav, setOnlyFav] = useState(false); - const device_theme = useTheme({ + const common_theme = useTheme({ BaseRow: ` font-size: 14px; - color: white; - height: 46px; - &:focus { - z-index: 2; - border-top: 1px solid #177ac9; - border-bottom: 1px solid #177ac9; - } `, HeaderRow: ` text-transform: uppercase; background-color: black; color: #90CAF9; - border-bottom: 1px solid #e0e0e0; - font-weight: 500; + + .th { + border-bottom: 1px solid #565656; + } `, Row: ` background-color: #1e1e1e; - border-top: 1px solid #565656; - border-bottom: 1px solid #565656; position: relative; - z-index: 1; - &:not(:last-of-type) { - margin-bottom: -1px; + cursor: pointer; + + .td { + padding: 8px; + border-top: 1px solid #565656; + border-bottom: 1px solid #565656; } - &:not(:first-of-type) { - margin-top: -1px; - } - &:hover { - z-index: 2; - color: white; - border-top: 1px solid #177ac9; - border-bottom: 1px solid #177ac9; - }, - &.tr.tr-body.row-select.row-select-single-selected, &.tr.tr-body.row-select.row-select-selected { + + &.tr.tr-body.row-select.row-select-single-selected { background-color: #3d4752; color: white; font-weight: normal; - z-index: 2; + } + + &:hover .td { border-top: 1px solid #177ac9; border-bottom: 1px solid #177ac9; } `, - BaseCell: ` - border-top: 1px solid transparent; - border-right: 1px solid transparent; - border-bottom: 1px solid transparent; - &:not(.stiff) > div { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } - &:nth-of-type(1) { - padding-left: 8px; - min-width: 42px; - width: 42px; - div { - width: 100%; - } - } - &:nth-of-type(2) { - min-width: 100px; - width: 100px; - } - &:nth-of-type(3) { - flex: 1; - } - &:nth-of-type(4) { - text-align: center; - max-width: 100px; - } + Cell: ` &:last-of-type { - padding-left: 0px; - text-align: center; - width: 32px; - min-width: 32px; - max-width: 32px; - } + text-align: right; + }, ` }); - const data_theme = useTheme({ - BaseRow: ` - font-size: 14px; - color: white; - min-height: 32px; - `, - HeaderRow: ` - text-transform: uppercase; - background-color: black; - color: #90CAF9; - border-bottom: 1px solid #e0e0e0; - font-weight: 500; - `, - Row: ` - &:nth-of-type(odd) { - background-color: #303030; - } - &:nth-of-type(even) { - background-color: #1e1e1e; - } - border-top: 1px solid #565656; - border-bottom: 1px solid #565656; - position: relative; - z-index: 1; - &:not(:last-of-type) { - margin-bottom: -1px; - } - &:not(:first-of-type) { - margin-top: -1px; - } - &:hover { - z-index: 2; - border-top: 1px solid #177ac9; - border-bottom: 1px solid #177ac9; - color: white; - } - `, - BaseCell: ` - padding-left: 16px; - cursor: pointer; - border-top: 1px solid transparent; - border-right: 1px solid transparent; - border-bottom: 1px solid transparent; - &:not(.stiff) > div { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } - &:nth-of-type(1) { - width: 260px; - } - &:nth-of-type(2) { - flex: 1; - text-align: right; - } - &:last-of-type { - padding-left: 0px; - text-align: center; - width: 32px; - min-width: 32px; - max-width: 32px; - } - `, - HeaderCell: ` - &:not(:last-of-type) { - padding-left: 8px; - border-left: 1px solid #565656; - } - &:first-of-type { - border-left: 0px; - } - ` - }); + const device_theme = useTheme([ + common_theme, + { + Table: ` + --data-table-library_grid-template-columns: 40px 100px repeat(1, minmax(0, 1fr)) 80px 40px; + `, + BaseRow: ` + .td { + height: 42px; + } + `, + BaseCell: ` + &:nth-of-type(2) { + text-align: left; + }, + &:nth-of-type(4) { + text-align: center; + } + `, + HeaderRow: ` + .th { + padding: 8px; + height: 42px; + font-weight: 500; + ` + } + ]); + + const data_theme = useTheme([ + common_theme, + { + Table: ` + --data-table-library_grid-template-columns: repeat(1, minmax(0, 1fr)) 200px 40px; + `, + BaseRow: ` + .td { + height: 32px; + } + `, + BaseCell: ` + &:nth-of-type(2) { + text-align: right; + }, + `, + HeaderRow: ` + .th { + height: 32px; + } + `, + Row: ` + &:nth-of-type(odd) .td { + background-color: #303030; + } + ` + } + ]); const temperature_theme = useTheme([data_theme]); const analog_theme = useTheme([ data_theme, { + Table: ` + --data-table-library_grid-template-columns: 80px repeat(1, minmax(0, 1fr)) 120px 100px 40px; + `, BaseCell: ` - &:nth-of-type(1) { - width: 100px; - min-width: 100px; - } &:nth-of-type(2) { text-align: left; - } - &:nth-of-type(3) { - width: 100px; - min-width: 100px; - } + }, &:nth-of-type(4) { text-align: right; - flex: 1; } - ` + ` } ]); @@ -536,6 +472,7 @@ const DashboardData: FC = () => { label={deviceValue.id.slice(2)} value={deviceValue.u ? numberValue(deviceValue.v) : deviceValue.v} autoFocus + multiline sx={{ width: '30ch' }} type={deviceValue.u ? 'number' : 'text'} onChange={updateValue(setDeviceValue)} @@ -709,23 +646,23 @@ const DashboardData: FC = () => { <>
- - TYPE - DESCRIPTION - ENTITIES - + + TYPE + DESCRIPTION + ENTITIES +
{tableList.map((device: Device, index: number) => ( - + - {device.t} + {device.t} {device.n} - {device.e} - + {device.e} + setDeviceDialog(index)}> @@ -778,7 +715,7 @@ const DashboardData: FC = () => { return ( <> - + {deviceData.label} { ENTITY NAME - + - + @@ -832,7 +769,7 @@ const DashboardData: FC = () => { sendCommand(dv)}> {renderNameCell(dv)} {formatValue(dv.v, dv.u)} - + {dv.c && me.admin && !hasMask(dv.id, DeviceEntityMask.DV_READONLY) && ( sendCommand(dv)}> {isCmdOnly(dv) ? ( @@ -867,7 +804,7 @@ const DashboardData: FC = () => { const renderDallasData = () => ( <> - + Temperature Sensors
{ NAME - + - + @@ -926,7 +863,7 @@ const DashboardData: FC = () => { const renderAnalogData = () => ( <> - + Analog Sensors @@ -935,7 +872,7 @@ const DashboardData: FC = () => { <>
- + - + - VALUE - + VALUE +
{tableList.map((a: Analog) => ( updateAnalog(a)}> - {a.g} + {a.g} {a.n} - {AnalogTypeNames[a.t]} - {a.t ? formatValue(a.v, a.u) : ''} - + {AnalogTypeNames[a.t]} + {a.t ? formatValue(a.v, a.u) : ''} + {me.admin && ( updateAnalog(a)}> diff --git a/interface/src/project/DashboardStatus.tsx b/interface/src/project/DashboardStatus.tsx index 1c0c4b26c..28783c42d 100644 --- a/interface/src/project/DashboardStatus.tsx +++ b/interface/src/project/DashboardStatus.tsx @@ -88,65 +88,40 @@ const DashboardStatus: FC = () => { const { me } = useContext(AuthenticatedContext); const stats_theme = tableTheme({ + Table: ` + --data-table-library_grid-template-columns: repeat(1, minmax(0, 1fr)) 90px 90px 80px; + `, BaseRow: ` font-size: 14px; - color: white; - height: 32px; `, HeaderRow: ` text-transform: uppercase; background-color: black; color: #90CAF9; - font-weight: 500; - border-bottom: 1px solid #e0e0e0; - padding-left: 8px; + + .th { + height: 42px; + font-weight: 500; + border-bottom: 1px solid #565656; + } `, Row: ` - &:nth-of-type(odd) { + .td { + padding: 8px; + border-top: 1px solid #565656; + border-bottom: 1px solid #565656; + } + + &:nth-of-type(odd) .td { background-color: #303030; } - &:nth-of-type(even) { + &:nth-of-type(even) .td { background-color: #1e1e1e; } - border-top: 1px solid #565656; - border-bottom: 1px solid #565656; - position: relative; - z-index: 1; - &:not(:last-of-type) { - margin-bottom: -1px; - } - &:not(:first-of-type) { - margin-top: -1px; - } - &:hover { - color: white; - } `, BaseCell: ` - border-top: 1px solid transparent; - border-right: 1px solid transparent; - border-bottom: 1px solid transparent; - &:not(.stiff) > div { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } - &:nth-of-type(1) { - padding-left: 8px; - flex: 1; - } - &:nth-of-type(2) { - width: 70px; - text-align: right; - } - &:nth-of-type(3) { - width: 40px; - text-align: right; - } - &:last-of-type { - width: 75px; - text-align: right; - padding-right: 8px; + &:not(:first-of-type) { + text-align: center; } ` }); @@ -224,19 +199,19 @@ const DashboardStatus: FC = () => { <>
- - SUCCESS - FAIL - QUALITY + + SUCCESS + FAIL + QUALITY
{tableList.map((stat: Stat) => ( {stat.id} - {Intl.NumberFormat().format(stat.s)} - {Intl.NumberFormat().format(stat.f)} - {showQuality(stat)} + {Intl.NumberFormat().format(stat.s)} + {Intl.NumberFormat().format(stat.f)} + {showQuality(stat)} ))} diff --git a/interface/src/project/SettingsCustomization.tsx b/interface/src/project/SettingsCustomization.tsx index f1527a6dc..3e74419e7 100644 --- a/interface/src/project/SettingsCustomization.tsx +++ b/interface/src/project/SettingsCustomization.tsx @@ -63,80 +63,65 @@ const SettingsCustomization: FC = () => { const [masks, setMasks] = useState(() => ['']); const entities_theme = useTheme({ + Table: ` + --data-table-library_grid-template-columns: 120px repeat(1, minmax(0, 1fr)) 120px; + `, BaseRow: ` font-size: 14px; - color: white; - height: 32px; - min-height: 32px; + .td { + height: 32px; + } + `, + BaseCell: ` + &:last-of-type { + text-align: right; + } `, HeaderRow: ` text-transform: uppercase; background-color: black; - border-bottom: 1px solid #e0e0e0; color: #90CAF9; - font-weight: 500; + + .th { + border-bottom: 1px solid #565656; + font-weight: 500; + } + + &:nth-of-type(1) .th { + text-align: center; + } `, Row: ` background-color: #1e1e1e; - border-top: 1px solid #565656; - border-bottom: 1px solid #565656; position: relative; - z-index: 1; - &:not(:last-of-type) { - margin-bottom: -1px; + cursor: pointer; + + .td { + border-top: 1px solid #565656; + border-bottom: 1px solid #565656; } - &:not(:first-of-type) { - margin-top: -1px; - } - &:hover { - z-index: 2; - color: white; - border-top: 1px solid #177ac9; - border-bottom: 1px solid #177ac9; - }, - &.tr.tr-body.row-select.row-select-single-selected, &.tr.tr-body.row-select.row-select-selected { + + &.tr.tr-body.row-select.row-select-single-selected { background-color: #3d4752; color: white; font-weight: normal; - z-index: 2; + } + + &:hover .td { border-top: 1px solid #177ac9; border-bottom: 1px solid #177ac9; } + + &:nth-of-type(odd) .td { + background-color: #303030; + } `, - BaseCell: ` - border-top: 1px solid transparent; - border-right: 1px solid transparent; - border-bottom: 1px solid transparent; - &:not(.stiff) > div { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } - &:nth-of-type(1) { - width: 120px; - min-width: 120px; - max-width: 120px; - } + Cell: ` &:nth-of-type(2) { - padding-left: 8px; - flex: 1; + padding: 8px; } - &:nth-of-type(3) { + &:last-of-type { padding-right: 8px; - text-align: right; - width: 120px; - min-width: 120px; - } - `, - HeaderCell: ` - &:nth-of-type(1) { - padding-left: 24px; - } - &:nth-of-type(2) { - padding-left: 0px; - } - &:not(:last-of-type) { - border-right: 1px solid #565656; } ` }); @@ -451,7 +436,7 @@ const SettingsCustomization: FC = () => { <>
- OPTIONS + OPTIONS - VALUE + VALUE
{tableList.map((de: DeviceEntity) => ( - +