From 8808e77cc6a29b42d055c4a770ee3e08114eadfc Mon Sep 17 00:00:00 2001 From: GermanBluefox Date: Sun, 8 Dec 2024 12:34:25 +0000 Subject: [PATCH] Added button to clear "updatable" adapters if nothing shown --- package-lock.json | 186 +++++++----------- packages/adapter-react-v5/src/i18n/de.json | 4 +- packages/admin/package.json | 4 +- .../src/components/Adapters/AdaptersList.tsx | 67 +++++-- packages/admin/src-admin/src/i18n/de.json | 5 +- packages/admin/src-admin/src/i18n/en.json | 1 + packages/admin/src-admin/src/i18n/es.json | 1 + packages/admin/src-admin/src/i18n/fr.json | 1 + packages/admin/src-admin/src/i18n/it.json | 1 + packages/admin/src-admin/src/i18n/nl.json | 1 + packages/admin/src-admin/src/i18n/pl.json | 1 + packages/admin/src-admin/src/i18n/pt.json | 1 + packages/admin/src-admin/src/i18n/ru.json | 1 + packages/admin/src-admin/src/i18n/uk.json | 1 + packages/admin/src-admin/src/i18n/zh-cn.json | 1 + .../admin/src-admin/src/tabs/Adapters.tsx | 44 +++-- .../src/JsonConfigComponent/ConfigTable.tsx | 2 +- 17 files changed, 172 insertions(+), 150 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4a7d699ab..f2f91da85 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4111,9 +4111,9 @@ "dev": true }, "node_modules/@iobroker/build-tools": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@iobroker/build-tools/-/build-tools-2.0.9.tgz", - "integrity": "sha512-IE/hawJUAWJ2xsbZawpMyQf3pHd+KhA3TI9/7wIZnR2KRCiBo/kv8YTIL7SVPd9G08/Z0NDUW2CEdJXAYu3kSw==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@iobroker/build-tools/-/build-tools-2.0.11.tgz", + "integrity": "sha512-rlc9WpKQ/14chWSW6disUYcTuIgy/qXazDsdEwtMxxp1XydWV6VJz3L/we5YC37LpIYTnpBsgzm2vb+kpDWmQw==", "dev": true, "dependencies": { "glob": "^11.0.0" @@ -6831,9 +6831,9 @@ } }, "node_modules/@puppeteer/browsers": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.4.1.tgz", - "integrity": "sha512-0kdAbmic3J09I6dT8e9vE2JOCSt13wHCW5x/ly8TSt2bDtuIWe2TgLZZDHdcziw9AVCzflMAXCrVyRIhIs44Ng==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.5.0.tgz", + "integrity": "sha512-6TQAc/5uRILE6deixJ1CR8rXyTbzXIXNgO1D0Woi9Bqicz2FV5iKP3BHYEg6o4UATCMcbQQ0jbmeaOkn/HQk2w==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6998,92 +6998,75 @@ "license": "MIT" }, "node_modules/@sentry-internal/browser-utils": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-8.41.0.tgz", - "integrity": "sha512-nU7Bn3jEUmf1QXRUT3j2ewUBlFJpe9vnAnjqpeVPDWTsVI52BwVNcJHuE37PrGs66OZ1ZkGMfKnQk43oCAa+oQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-8.42.0.tgz", + "integrity": "sha512-xzgRI0wglKYsPrna574w1t38aftuvo44gjOKFvPNGPnYfiW9y4m+64kUz3JFbtanvOrKPcaITpdYiB4DeJXEbA==", "license": "MIT", "dependencies": { - "@sentry/core": "8.41.0", - "@sentry/types": "8.41.0" + "@sentry/core": "8.42.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/feedback": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-8.41.0.tgz", - "integrity": "sha512-bw+BrSNw8abOnu/IpD8YSbYubXkkT8jyNS7TM4e4UPZMuXcbtia7/r5d7kAiUfKv/sV5PNMlZLOk+EYJeLTANg==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-8.42.0.tgz", + "integrity": "sha512-dkIw5Wdukwzngg5gNJ0QcK48LyJaMAnBspqTqZ3ItR01STi6Z+6+/Bt5XgmrvDgRD+FNBinflc5zMmfdFXXhvw==", "license": "MIT", "dependencies": { - "@sentry/core": "8.41.0", - "@sentry/types": "8.41.0" + "@sentry/core": "8.42.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/replay": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-8.41.0.tgz", - "integrity": "sha512-ByXEY7JI95y4Qr9fS3d28l9uuVU5Qa0HgL+xDmYElNx7CXz3Q9hFN6ibgUeC3h8BO5pDULxWNgAppl7FRY8N5w==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-8.42.0.tgz", + "integrity": "sha512-oNcJEBlDfXnRFYC5Mxj5fairyZHNqlnU4g8kPuztB9G5zlsyLgWfPxzcn1ixVQunth2/WZRklDi4o1ZfyHww7w==", "license": "MIT", "dependencies": { - "@sentry-internal/browser-utils": "8.41.0", - "@sentry/core": "8.41.0", - "@sentry/types": "8.41.0" + "@sentry-internal/browser-utils": "8.42.0", + "@sentry/core": "8.42.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/replay-canvas": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-8.41.0.tgz", - "integrity": "sha512-lpgOBHWr1ZNxidD72A2pfoUMjIpwonOPYoQZWAHr86Oa3eIVQOyfklZlHW+gKPFl2/IEl9Lbtcke0JiDp3dkIQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-8.42.0.tgz", + "integrity": "sha512-XrPErqVhPsPh/oFLVKvz7Wb+Fi2J1zCPLeZCxWqFuPWI2agRyLVu0KvqJyzSpSrRAEJC/XFzuSVILlYlXXSfgA==", "license": "MIT", "dependencies": { - "@sentry-internal/replay": "8.41.0", - "@sentry/core": "8.41.0", - "@sentry/types": "8.41.0" + "@sentry-internal/replay": "8.42.0", + "@sentry/core": "8.42.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry/browser": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-8.41.0.tgz", - "integrity": "sha512-FfAU55eYwW2lG4M3dEw2472RvHrD5YWSfHCZvuRf/4skX38kFvKghZQ+epL+CVHTzvIRHOrbj8qQK6YLTGl9ew==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-8.42.0.tgz", + "integrity": "sha512-lStrEk609KJHwXfDrOgoYVVoFFExixHywxSExk7ZDtwj2YPv6r6Y1gogvgr7dAZj7jWzadHkxZ33l9EOSJBfug==", "license": "MIT", "dependencies": { - "@sentry-internal/browser-utils": "8.41.0", - "@sentry-internal/feedback": "8.41.0", - "@sentry-internal/replay": "8.41.0", - "@sentry-internal/replay-canvas": "8.41.0", - "@sentry/core": "8.41.0", - "@sentry/types": "8.41.0" + "@sentry-internal/browser-utils": "8.42.0", + "@sentry-internal/feedback": "8.42.0", + "@sentry-internal/replay": "8.42.0", + "@sentry-internal/replay-canvas": "8.42.0", + "@sentry/core": "8.42.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry/core": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.41.0.tgz", - "integrity": "sha512-3v7u3t4LozCA5SpZY4yqUN2U3jSrkXNoLgz6L2SUUiydyCuSwXZIFEwpLJfgQyidpNDifeQbBI5E1O910XkPsA==", - "license": "MIT", - "dependencies": { - "@sentry/types": "8.41.0" - }, - "engines": { - "node": ">=14.18" - } - }, - "node_modules/@sentry/types": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-8.41.0.tgz", - "integrity": "sha512-eqdnGr9k9H++b9CjVUoTNUVahPVWeNnMy0YGkqS5+cjWWC+x43p56202oidGFmWo6702ub/xwUNH6M5PC4kq6A==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.42.0.tgz", + "integrity": "sha512-ac6O3pgoIbU6rpwz6LlwW0wp3/GAHuSI0C5IsTgIY6baN8rOBnlAtG6KrHDDkGmUQ2srxkDJu9n1O6Td3cBCqw==", "license": "MIT", "engines": { "node": ">=14.18" @@ -9366,14 +9349,11 @@ } }, "node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", "dev": true, "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, "engines": { "node": ">= 14" } @@ -26638,36 +26618,20 @@ } }, "node_modules/get-uri": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.3.tgz", - "integrity": "sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.4.tgz", + "integrity": "sha512-E1b1lFFLvLgak2whF2xDBcOy6NLVGZBqqjJjsIhvopKfWWEi64pLVTWWehV8KlLerZkfNTA95sTe2OdJKm1OzQ==", "dev": true, "license": "MIT", "dependencies": { "basic-ftp": "^5.0.2", "data-uri-to-buffer": "^6.0.2", - "debug": "^4.3.4", - "fs-extra": "^11.2.0" + "debug": "^4.3.4" }, "engines": { "node": ">= 14" } }, - "node_modules/get-uri/node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, "node_modules/get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -27646,13 +27610,13 @@ "peer": true }, "node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { @@ -35499,20 +35463,20 @@ } }, "node_modules/pac-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.2.tgz", - "integrity": "sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.1.0.tgz", + "integrity": "sha512-Z5FnLVVZSnX7WjBg0mhDtydeRZ1xMcATZThjySQUHqr+0ksP8kqaw23fNKkaaN/Z8gwLUs/W7xdl0I75eP2Xyw==", "dev": true, "license": "MIT", "dependencies": { "@tootallnate/quickjs-emscripten": "^0.23.0", - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "^4.3.4", "get-uri": "^6.0.1", "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.5", + "https-proxy-agent": "^7.0.6", "pac-resolver": "^7.0.1", - "socks-proxy-agent": "^8.0.4" + "socks-proxy-agent": "^8.0.5" }, "engines": { "node": ">= 14" @@ -38119,20 +38083,20 @@ } }, "node_modules/proxy-agent": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.4.0.tgz", - "integrity": "sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.5.0.tgz", + "integrity": "sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "^4.3.4", "http-proxy-agent": "^7.0.1", - "https-proxy-agent": "^7.0.3", + "https-proxy-agent": "^7.0.6", "lru-cache": "^7.14.1", - "pac-proxy-agent": "^7.0.1", + "pac-proxy-agent": "^7.1.0", "proxy-from-env": "^1.1.0", - "socks-proxy-agent": "^8.0.2" + "socks-proxy-agent": "^8.0.5" }, "engines": { "node": ">= 14" @@ -38242,18 +38206,18 @@ } }, "node_modules/puppeteer": { - "version": "23.9.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-23.9.0.tgz", - "integrity": "sha512-WfB8jGwFV+qrD9dcJJVvWPFJBU6kxeu2wxJz9WooDGfM3vIiKLgzImEDBxUQnCBK/2cXB3d4dV6gs/LLpgfLDg==", + "version": "23.10.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-23.10.1.tgz", + "integrity": "sha512-kbcO+vu91fgUyBzEwByPe4q5lEEuBq4cuOZnZeRL42G7r5UrfbUFlxBJayXBLBsD6pREdk/92ZFwFQq3MaN6ww==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { - "@puppeteer/browsers": "2.4.1", + "@puppeteer/browsers": "2.5.0", "chromium-bidi": "0.8.0", "cosmiconfig": "^9.0.0", "devtools-protocol": "0.0.1367902", - "puppeteer-core": "23.9.0", + "puppeteer-core": "23.10.1", "typed-query-selector": "^2.12.0" }, "bin": { @@ -38264,13 +38228,13 @@ } }, "node_modules/puppeteer-core": { - "version": "23.9.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.9.0.tgz", - "integrity": "sha512-hLVrav2HYMVdK0YILtfJwtnkBAwNOztUdR4aJ5YKDvgsbtagNr6urUJk9HyjRA9e+PaLI3jzJ0wM7A4jSZ7Qxw==", + "version": "23.10.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.10.1.tgz", + "integrity": "sha512-ey6NwixHYEUnhCA/uYi7uQQ4a0CZw4k+MatbHXGl5GEzaiRQziYUxc2HGpdQZ/gnh4KQWAKkocyIg1/dIm5d0g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@puppeteer/browsers": "2.4.1", + "@puppeteer/browsers": "2.5.0", "chromium-bidi": "0.8.0", "debug": "^4.3.7", "devtools-protocol": "0.0.1367902", @@ -41676,13 +41640,13 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", - "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.1.1", + "agent-base": "^7.1.2", "debug": "^4.3.4", "socks": "^2.8.3" }, @@ -47074,7 +47038,7 @@ "@iobroker/types": "^7.0.4", "@mui/icons-material": "^6.1.9", "@mui/material": "^6.1.9", - "@sentry/browser": "^8.41.0", + "@sentry/browser": "^8.42.0", "cronstrue": "^2.52.0", "react-color": "^2.19.3", "react-colorful": "^5.6.1", @@ -47135,7 +47099,7 @@ "semver": "^7.6.3" }, "devDependencies": { - "@iobroker/build-tools": "^2.0.9", + "@iobroker/build-tools": "^2.0.11", "@iobroker/dm-gui-components": "file:../dm-gui-components", "@iobroker/json-config": "file:../jsonConfig", "@iobroker/legacy-testing": "^2.0.1", @@ -47153,7 +47117,7 @@ "@types/validator": "^13.12.2", "colorette": "^2.0.20", "less": "^4.2.1", - "puppeteer": "^23.9.0", + "puppeteer": "^23.10.1", "src-rx": "file:src-admin", "typescript": "^5.7.2" }, diff --git a/packages/adapter-react-v5/src/i18n/de.json b/packages/adapter-react-v5/src/i18n/de.json index 8a8054176..4c7209890 100644 --- a/packages/adapter-react-v5/src/i18n/de.json +++ b/packages/adapter-react-v5/src/i18n/de.json @@ -7,7 +7,7 @@ "ra_Add objects tree from JSON file": "Objektbaum aus JSON-Datei hinzufügen", "ra_Add row": "Zeile hinzufügen", "ra_Advanced options": "Erweiterte Optionen", - "ra_All items are filtered out": "Alle Elemente werden herausgefiltert", + "ra_All items are filtered out": "Alle Elemente sind herausgefiltert", "ra_All objects": "Alle Objekte", "ra_Append": "Anhängen", "ra_Append %s entries or replace existing?": "%s Einträge anhängen oder vorhandene ersetzen?", @@ -447,4 +447,4 @@ "sch_validTo": "bis", "sch_wholeDay": "Ganzer Tag", "sch_yearEveryMonth": "jeden Monat" -} \ No newline at end of file +} diff --git a/packages/admin/package.json b/packages/admin/package.json index 892688f42..3daa18480 100644 --- a/packages/admin/package.json +++ b/packages/admin/package.json @@ -43,7 +43,7 @@ "semver": "^7.6.3" }, "devDependencies": { - "@iobroker/build-tools": "^2.0.9", + "@iobroker/build-tools": "^2.0.11", "@iobroker/dm-gui-components": "file:../dm-gui-components", "@iobroker/json-config": "file:../jsonConfig", "@iobroker/legacy-testing": "^2.0.1", @@ -61,7 +61,7 @@ "@types/validator": "^13.12.2", "colorette": "^2.0.20", "less": "^4.2.1", - "puppeteer": "^23.9.0", + "puppeteer": "^23.10.1", "src-rx": "file:src-admin", "typescript": "^5.7.2" }, diff --git a/packages/admin/src-admin/src/components/Adapters/AdaptersList.tsx b/packages/admin/src-admin/src/components/Adapters/AdaptersList.tsx index df25f5cb5..43297c934 100644 --- a/packages/admin/src-admin/src/components/Adapters/AdaptersList.tsx +++ b/packages/admin/src-admin/src/components/Adapters/AdaptersList.tsx @@ -2,6 +2,7 @@ import React, { Component, Fragment, type JSX } from 'react'; import { Box, + Button, LinearProgress, Table, TableBody, @@ -9,9 +10,12 @@ import { TableContainer, TableHead, TableRow, + Tooltip, Typography, } from '@mui/material'; +import { Update as UpdateIcon } from '@mui/icons-material'; + import { TabContent } from '@iobroker/adapter-react-v5'; import type { AdaptersContext } from '@/components/Adapters/AdapterInstallDialog'; @@ -126,13 +130,14 @@ interface AdaptersListProps { adapters: string[]; }[]; toggleCategory: (category: string) => void; - clearAllFilters: () => void; + clearAllFilters: (onlyUpdate?: boolean) => void; update: boolean; descWidth: number; sortByName: boolean; sortPopularFirst: boolean; sortRecentlyUpdated: boolean; commandRunning: boolean; + updateListFilter: boolean; } interface AdaptersListState { @@ -281,16 +286,27 @@ class AdaptersList extends Component { return !this.props.update ? ( this.props.clearAllFilters()} + colSpan={8} + style={{ textAlign: 'center' }} > - {this.props.context.t('all items are filtered out')} + + {this.props.updateListFilter ?
: null} + {this.props.updateListFilter ? ( + + ) : null} ) : null; @@ -308,13 +324,34 @@ class AdaptersList extends Component { return !this.props.update ? (
this.props.clearAllFilters()} > - {this.props.context.t('all items are filtered out')} + + + + {this.props.updateListFilter ? ( + + ) : null}
) : null; } diff --git a/packages/admin/src-admin/src/i18n/de.json b/packages/admin/src-admin/src/i18n/de.json index 9cb70579b..e8eca1656 100644 --- a/packages/admin/src-admin/src/i18n/de.json +++ b/packages/admin/src-admin/src/i18n/de.json @@ -84,7 +84,7 @@ "All": "Alle", "All addresses": "Alle Adressen", "All backups older than these hours will be deleted, but only if the number of files is greater than of the files number": "Alle Sicherungen, die älter als diese Stunden sind, werden gelöscht, jedoch nur, wenn die Anzahl der Dateien größer als die Anzahl der Dateien ist", - "All items are filtered out": "Alle Elemente werden herausgefiltert", + "All items are filtered out": "Alle Elemente sind herausgefiltert", "All objects": "Alle Objekte", "All_group": "Alle", "Allow automatic adapter upgrades for this repository": "Automatische Adapter-Upgrades für dieses Repository zulassen", @@ -857,6 +857,7 @@ "Remove": "Entfernen", "Remove attribute %s": "Attribut %s entfernen", "Remove color": "Farbe entfernen", + "Remove filter for updatable adapters": "Filter für aktualisierbare Adapter entfernen", "Remove icon": "Symbol entfernen", "Removed": "Entfernt", "Removing of adapter...": "Entfernen des Adapters...", @@ -1238,7 +1239,7 @@ "alarm_group": "Alarm", "alive": "aktiv", "all": "alle", - "all items are filtered out": "Alle Elemente werden herausgefiltert", + "all items are filtered out": "Alle Elemente sind herausgefiltert", "allow set of compact groups": "Erlaube die Einstellung von Kompaktgruppen", "alpha": "Alpha", "any Node.js stream. If an objectMode stream is provided then the entire info object will be written. Otherwise info[MESSAGE] will be written": "Beliebiger Node.js-Stream. Wenn ein objectMode-Stream bereitgestellt wird, wird das gesamte Info-Objekt geschrieben. Andernfalls wird info [MESSAGE] geschrieben", diff --git a/packages/admin/src-admin/src/i18n/en.json b/packages/admin/src-admin/src/i18n/en.json index 47b848b0f..c7d71829d 100644 --- a/packages/admin/src-admin/src/i18n/en.json +++ b/packages/admin/src-admin/src/i18n/en.json @@ -857,6 +857,7 @@ "Remove": "Remove", "Remove attribute %s": "Remove attribute %s", "Remove color": "Remove color", + "Remove filter for updatable adapters": "Remove filter for updatable adapters", "Remove icon": "Remove icon", "Removed": "Removed", "Removing of adapter...": "Removing of adapter...", diff --git a/packages/admin/src-admin/src/i18n/es.json b/packages/admin/src-admin/src/i18n/es.json index f84771dec..cc9ea58f8 100644 --- a/packages/admin/src-admin/src/i18n/es.json +++ b/packages/admin/src-admin/src/i18n/es.json @@ -857,6 +857,7 @@ "Remove": "Eliminar", "Remove attribute %s": "Eliminar atributo %s", "Remove color": "Quitar color", + "Remove filter for updatable adapters": "Eliminar filtro para adaptadores actualizables", "Remove icon": "Eliminar icono", "Removed": "Removido", "Removing of adapter...": "Quitar el adaptador...", diff --git a/packages/admin/src-admin/src/i18n/fr.json b/packages/admin/src-admin/src/i18n/fr.json index 58a00aeb4..8ef8871d0 100644 --- a/packages/admin/src-admin/src/i18n/fr.json +++ b/packages/admin/src-admin/src/i18n/fr.json @@ -857,6 +857,7 @@ "Remove": "Supprimer", "Remove attribute %s": "Supprimer l'attribut %s", "Remove color": "Supprimer la couleur", + "Remove filter for updatable adapters": "Supprimer le filtre pour les adaptateurs actualisables", "Remove icon": "Supprimer l'icône", "Removed": "Supprimé", "Removing of adapter...": "Retrait de l'adaptateur...", diff --git a/packages/admin/src-admin/src/i18n/it.json b/packages/admin/src-admin/src/i18n/it.json index 7f535e960..82c20e43d 100644 --- a/packages/admin/src-admin/src/i18n/it.json +++ b/packages/admin/src-admin/src/i18n/it.json @@ -857,6 +857,7 @@ "Remove": "Rimuovere", "Remove attribute %s": "Rimuovi l'attributo %s", "Remove color": "Rimuovi il colore", + "Remove filter for updatable adapters": "Rimuovere il filtro per gli adattatori aggiornabili", "Remove icon": "Rimuovi icona", "Removed": "Rimosso", "Removing of adapter...": "Rimozione dell'adattatore...", diff --git a/packages/admin/src-admin/src/i18n/nl.json b/packages/admin/src-admin/src/i18n/nl.json index 3c78d7b54..0a7c31821 100644 --- a/packages/admin/src-admin/src/i18n/nl.json +++ b/packages/admin/src-admin/src/i18n/nl.json @@ -857,6 +857,7 @@ "Remove": "Verwijderen", "Remove attribute %s": "Attribuut %s verwijderen", "Remove color": "Kleur verwijderen", + "Remove filter for updatable adapters": "Verwijder filter voor updatebare adapters", "Remove icon": "Pictogram verwijderen", "Removed": "verwijderd", "Removing of adapter...": "Adapter verwijderen...", diff --git a/packages/admin/src-admin/src/i18n/pl.json b/packages/admin/src-admin/src/i18n/pl.json index 142fdb452..f4e3144d0 100644 --- a/packages/admin/src-admin/src/i18n/pl.json +++ b/packages/admin/src-admin/src/i18n/pl.json @@ -857,6 +857,7 @@ "Remove": "Usunąć", "Remove attribute %s": "Usuń atrybut %s", "Remove color": "Usuń kolor", + "Remove filter for updatable adapters": "Usuń filtr dla aktualizowalnych adapterów", "Remove icon": "Usuń ikonę", "Removed": "Usunięte", "Removing of adapter...": "Usuwanie adaptera ...", diff --git a/packages/admin/src-admin/src/i18n/pt.json b/packages/admin/src-admin/src/i18n/pt.json index 8e362838d..6287dfd29 100644 --- a/packages/admin/src-admin/src/i18n/pt.json +++ b/packages/admin/src-admin/src/i18n/pt.json @@ -857,6 +857,7 @@ "Remove": "Remover", "Remove attribute %s": "Remover atributo %s", "Remove color": "Remover cor", + "Remove filter for updatable adapters": "Remover filtro para adaptadores actualizáveis", "Remove icon": "Remover ícone", "Removed": "Removido", "Removing of adapter...": "Removendo o adaptador...", diff --git a/packages/admin/src-admin/src/i18n/ru.json b/packages/admin/src-admin/src/i18n/ru.json index fe8374625..1f0ba6c58 100644 --- a/packages/admin/src-admin/src/i18n/ru.json +++ b/packages/admin/src-admin/src/i18n/ru.json @@ -857,6 +857,7 @@ "Remove": "Удалить", "Remove attribute %s": "Удалить атрибут %s", "Remove color": "Удалить цвет", + "Remove filter for updatable adapters": "Удалить фильтр для обновляемых адаптеров", "Remove icon": "Удалить иконку", "Removed": "Удалено", "Removing of adapter...": "Удаление драйвера...", diff --git a/packages/admin/src-admin/src/i18n/uk.json b/packages/admin/src-admin/src/i18n/uk.json index a7fac89b0..de7366f77 100644 --- a/packages/admin/src-admin/src/i18n/uk.json +++ b/packages/admin/src-admin/src/i18n/uk.json @@ -857,6 +857,7 @@ "Remove": "видалити", "Remove attribute %s": "Видалити атрибут %s", "Remove color": "Видаліть колір", + "Remove filter for updatable adapters": "Видалити фільтр для оновлюваних адаптерів", "Remove icon": "Видалити значок", "Removed": "Видалено", "Removing of adapter...": "Зняття адаптера...", diff --git a/packages/admin/src-admin/src/i18n/zh-cn.json b/packages/admin/src-admin/src/i18n/zh-cn.json index 6dcbe0233..de936e22c 100644 --- a/packages/admin/src-admin/src/i18n/zh-cn.json +++ b/packages/admin/src-admin/src/i18n/zh-cn.json @@ -857,6 +857,7 @@ "Remove": "去掉", "Remove attribute %s": "删除属性 %s", "Remove color": "去除颜色", + "Remove filter for updatable adapters": "Remove filter for updatable adapters", "Remove icon": "删除图标", "Removed": "删除", "Removing of adapter...": "删除插件...", diff --git a/packages/admin/src-admin/src/tabs/Adapters.tsx b/packages/admin/src-admin/src/tabs/Adapters.tsx index ecd4968b1..bd81d3d90 100644 --- a/packages/admin/src-admin/src/tabs/Adapters.tsx +++ b/packages/admin/src-admin/src/tabs/Adapters.tsx @@ -1325,23 +1325,32 @@ class Adapters extends AdapterInstallDialog { }, 200); }; - clearAllFilters(): void { - (((window as any)._localStorage as Storage) || window.localStorage).removeItem('Adapter.search'); - (((window as any)._localStorage as Storage) || window.localStorage).removeItem('Adapters.installedList'); - (((window as any)._localStorage as Storage) || window.localStorage).removeItem('Adapters.updateList'); - if (this.inputRef.current) { - this.inputRef.current.value = ''; + clearAllFilters(onlyUpdate?: boolean): void { + if (onlyUpdate) { + (((window as any)._localStorage as Storage) || window.localStorage).removeItem('Adapters.updateList'); + this.setState( + { + updateList: false, + }, + () => this.filterAdapters(), + ); + } else { + (((window as any)._localStorage as Storage) || window.localStorage).removeItem('Adapter.search'); + (((window as any)._localStorage as Storage) || window.localStorage).removeItem('Adapters.installedList'); + if (this.inputRef.current) { + this.inputRef.current.value = ''; + } + this.setState( + { + filteredList: null, + updateList: false, + filterConnectionType: false, + installedList: 0, + search: '', + }, + () => this.filterAdapters(), + ); } - this.setState( - { - filteredList: null, - updateList: false, - filterConnectionType: false, - installedList: 0, - search: '', - }, - () => this.filterAdapters(), - ); } getContext(descHidden: boolean): AdaptersContext { @@ -2053,12 +2062,13 @@ class Adapters extends AdapterInstallDialog { tableViewMode={this.state.tableViewMode} oneListView={this.state.oneListView} update={this.state.update} + updateListFilter={this.state.updateList} cachedAdapters={this.cache.adapters} categories={this.state.categories} categoriesExpanded={this.state.categoriesExpanded} listOfVisibleAdapter={this.cache.listOfVisibleAdapter} toggleCategory={category => this.toggleCategory(category)} - clearAllFilters={() => this.clearAllFilters()} + clearAllFilters={(onlyUpdate?: boolean) => this.clearAllFilters(onlyUpdate)} descWidth={this.state.descWidth} sortByName={this.state.filterTiles === 'Name A-Z'} sortPopularFirst={context.sortPopularFirst} diff --git a/packages/jsonConfig/src/JsonConfigComponent/ConfigTable.tsx b/packages/jsonConfig/src/JsonConfigComponent/ConfigTable.tsx index 61a32013a..749cf8304 100644 --- a/packages/jsonConfig/src/JsonConfigComponent/ConfigTable.tsx +++ b/packages/jsonConfig/src/JsonConfigComponent/ConfigTable.tsx @@ -1265,7 +1265,7 @@ class ConfigTable extends ConfigGeneric { ) : null} {schema.help ? ( - + {this.renderHelp( this.props.schema.help, this.props.schema.helpLink,