iobroker.eos-admin 7.10.3 → 7.10.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/INSTALL_TEST_V7.10.5.md +8 -0
- package/MERGE_UPDATE_README_V7.10.5.md +7 -0
- package/NEXOWATT_EOS_BUILD_INFO.json +22 -18
- package/NEXOWATT_EOS_PREBUILT_MANIFEST.json +37 -36
- package/PUBLISH_STABLE_V7.10.5.md +8 -0
- package/README.md +4 -4
- package/README_STABILITY_V7.10.5.md +5 -0
- package/RELEASE_ACCEPTANCE_V7.10.5.md +11 -0
- package/RELEASE_NOTES_V7.10.5.md +11 -0
- package/SECURITY_ROLE_MATRIX_V7.10.5.md +12 -0
- package/adminWww/assets/Intro-DkwRiz1n-v84.js +2 -2
- package/adminWww/assets/Objects-DPan0bzw-v84.js +1 -1
- package/adminWww/assets/bootstrap-COulQZax-v84.js +2 -2
- package/adminWww/css/nexowatt-native-shell.css +12 -1
- package/adminWww/index.html +14 -14
- package/adminWww/js/eos-role-bootstrap.js +5 -5
- package/adminWww/js/eos-role-ui.js +130 -17
- package/adminWww/js/nexowatt-native-shell.js +1 -1
- package/adminWww/static/js/{nexowatt-stable-v7101.js → nexowatt-stable-v7105.js} +1 -1
- package/build/main.js +14 -11
- package/io-package.json +31 -9
- package/package.json +14 -11
- package/tools/nexowatt-account-password-flow-selftest.cjs +3 -3
- package/tools/nexowatt-clean-legacy-runtime.cjs +6 -0
- package/tools/nexowatt-internal-reserve-selftest.cjs +1 -1
- package/tools/nexowatt-login-layout-selftest.cjs +3 -3
- package/tools/nexowatt-merge-update-selftest.cjs +1 -1
- package/tools/nexowatt-modern-ui-selftest.cjs +2 -2
- package/tools/nexowatt-role-security-selftest.cjs +131 -0
- package/tools/nexowatt-runtime-cleanup-selftest.cjs +4 -0
- package/tools/nexowatt-stable-v7103-selftest.cjs +4 -4
- package/tools/nexowatt-ui-overview-runtime-selftest.cjs +2 -2
- package/tools/nexowatt-validate-package.cjs +9 -8
- package/INSTALL_TEST_V7.10.3.md +0 -7
- package/MERGE_UPDATE_README_V7.10.3.md +0 -3
- package/PUBLISH_STABLE_V7.10.3.md +0 -10
- package/README_STABILITY_V7.10.3.md +0 -5
- package/RELEASE_ACCEPTANCE_V7.10.3.md +0 -3
- package/RELEASE_NOTES_V7.10.3.md +0 -7
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Installation test 7.10.5
|
|
2
|
+
|
|
3
|
+
- Install/update EOS Admin 7.10.5 and verify port 8081 remains reachable.
|
|
4
|
+
- Sign in as Admin: datapoints are writable; expert mode can be enabled and disabled; Admin and XTerm overview cards are visible.
|
|
5
|
+
- Sign in as Installer: no expert head, ioBroker Admin, XTerm, App Center, License, Simulation or Users/Rights page.
|
|
6
|
+
- Sign in as End User: Datapoints tab is visible but every write/edit/delete action is disabled; restricted tools are absent.
|
|
7
|
+
- Toggle a navigation item with the pencil: EOS Admin must not restart and `system.config` must remain untouched.
|
|
8
|
+
- Disable the backup adapter: its navigation item disappears; re-enable it and the item returns.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Merge/update note 7.10.5
|
|
2
|
+
|
|
3
|
+
Always replace the previous repository with the complete 7.10.5 repository. Do not merge old `adminWww` bundles or deleted role-security files back into this release. In particular, `nexowatt-role-security.js` and `build/lib/eosRoleSecurity.js` are obsolete and must stay absent.
|
|
4
|
+
|
|
5
|
+
After a merge, run the package, stability, role-security and publish dry-run checks before publishing.
|
|
6
|
+
|
|
7
|
+
The 7.10.5 publish workflow now removes all three obsolete 7.10.4 role-security files automatically before sealing and packaging, including when the ZIP was extracted over an existing working directory.
|
|
@@ -1,28 +1,32 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "7.10.
|
|
2
|
+
"version": "7.10.5",
|
|
3
3
|
"channel": "stable-latest",
|
|
4
|
-
"baseFrontend": "validated
|
|
4
|
+
"baseFrontend": "validated v84 runtime with authoritative RBAC, restored administrator rights and restart-safe navigation layout",
|
|
5
5
|
"runtimeEntry": "v84",
|
|
6
|
-
"releaseType": "stable-
|
|
7
|
-
"release": "stable-
|
|
8
|
-
"label": "v7-10-
|
|
6
|
+
"releaseType": "stable-admin-rights-rbac-navigation",
|
|
7
|
+
"release": "stable-admin-rights-rbac-navigation",
|
|
8
|
+
"label": "v7-10-5",
|
|
9
9
|
"notes": [
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
10
|
+
"Administrator authority is derived only from the authenticated backend security context; DOM text is never used to classify a role.",
|
|
11
|
+
"Admin keeps full datapoint write access, all overview cards and reversible expert mode.",
|
|
12
|
+
"Installer and End User do not see ioBroker Admin, XTerm, App Center, License, Simulation or account administration.",
|
|
13
|
+
"End User can open Datapoints in read-only mode; backend socket writes are denied independently of the browser.",
|
|
14
|
+
"Navigation visibility/order is stored in eos-admin.0.info.uiTabsVisible and no longer modifies system.config or restarts the adapter.",
|
|
15
|
+
"Backup navigation is shown only while a supported backup instance is enabled."
|
|
14
16
|
],
|
|
15
17
|
"changes": [
|
|
16
|
-
"
|
|
17
|
-
"Added
|
|
18
|
-
"
|
|
19
|
-
"
|
|
18
|
+
"Removed the legacy DOM-text role heuristic that could downgrade system.user.admin to End User.",
|
|
19
|
+
"Added explicit Admin bypass regression guards in source, backend runtime and frontend bundles.",
|
|
20
|
+
"Added End User-only ObjectBrowser read-only wiring while retaining Admin/Installer native write controls.",
|
|
21
|
+
"Moved menu layout persistence away from system.config into a dedicated adapter state.",
|
|
22
|
+
"Hid Admin/XTerm cards only for restricted roles and forced them visible for Admin.",
|
|
23
|
+
"Protected App Center, License and Simulation in the authenticated role layer and cleared inherited UI-admin sessions for non-admin roles."
|
|
20
24
|
],
|
|
21
|
-
"brandingCacheVersion":
|
|
22
|
-
"shellCacheVersion":
|
|
23
|
-
"nativeShellVersion":
|
|
24
|
-
"shellCacheTag": "
|
|
25
|
-
"repositoryEntry": "nexowatt-eos-admin-repository-entry-v7-10-
|
|
25
|
+
"brandingCacheVersion": 7105,
|
|
26
|
+
"shellCacheVersion": 7105,
|
|
27
|
+
"nativeShellVersion": 7105,
|
|
28
|
+
"shellCacheTag": "7105",
|
|
29
|
+
"repositoryEntry": "nexowatt-eos-admin-repository-entry-v7-10-5.json",
|
|
26
30
|
"autoUpdateCacheVersion": 7103,
|
|
27
31
|
"autoUpdateCacheTag": "7103"
|
|
28
32
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"format": 1,
|
|
3
3
|
"package": "iobroker.eos-admin",
|
|
4
|
-
"version": "7.10.
|
|
4
|
+
"version": "7.10.5",
|
|
5
5
|
"algorithm": "sha256",
|
|
6
|
-
"fileCount":
|
|
6
|
+
"fileCount": 1389,
|
|
7
7
|
"trackedRoots": [
|
|
8
8
|
"src",
|
|
9
9
|
"build",
|
|
@@ -309,7 +309,7 @@
|
|
|
309
309
|
"adminWww/assets/Humidity-Ck1f_Evq.svg": "c5a88ade9eafa8e5fd714838acff869fa561d33a5f230019f5baa289243539d9",
|
|
310
310
|
"adminWww/assets/Instances-YdaGnS5a-v84.js": "de9672fd123e971461d5ced6cc6172d5df262e3d59419e309c2a780d9a5aa5e6",
|
|
311
311
|
"adminWww/assets/Instances-YdaGnS5a.js": "fb6664cc29046169ce0a152c74017d4f9b57099f12cf0b96a3653afd03fed888",
|
|
312
|
-
"adminWww/assets/Intro-DkwRiz1n-v84.js": "
|
|
312
|
+
"adminWww/assets/Intro-DkwRiz1n-v84.js": "b35253da6aad0428f8f8aebaba7803e82665f955fcbfe3d0a7a649af24a53cbe",
|
|
313
313
|
"adminWww/assets/Intro-DkwRiz1n.js": "b1d3030eef7bc26940993111f6491b64899bd5b795c5172e2d1555f7c414c1e8",
|
|
314
314
|
"adminWww/assets/Iron-BmVcdQDM.js": "3f1e4786741e2458b55419b510dac343b9ea3d5f7c1c257e7ab52d3e7bf04cff",
|
|
315
315
|
"adminWww/assets/Irrigation-BhJPKg6k.js": "a05cf0b525776278d45f92f3dc0717284eeaf0b0b18fbc0ac8afad77e11a1e0c",
|
|
@@ -334,7 +334,7 @@
|
|
|
334
334
|
"adminWww/assets/Music-GTFyD3_A.js": "e0d865d23f9d2154ea63cee857891ffc025a1d0ca40ab6d0378241a7f6186012",
|
|
335
335
|
"adminWww/assets/Nursery-Cxrv-xmv.js": "67b5c31a1dabc2a5a6373324536cf4e08aca0438e90cc58ed356d4472ad51c0e",
|
|
336
336
|
"adminWww/assets/Objects-BwKcXIZw.css": "ad89e8d571596f24906a0bf5effbce3b727c3e6fc7ee667f0f0eab3bc3dc04a4",
|
|
337
|
-
"adminWww/assets/Objects-DPan0bzw-v84.js": "
|
|
337
|
+
"adminWww/assets/Objects-DPan0bzw-v84.js": "46afe78c843ffa1849f15fd4c92c89ca7bd349c1a6927906a5f38e2178d07ee4",
|
|
338
338
|
"adminWww/assets/Objects-DPan0bzw.js": "7609b95949b9937d447f1e051b208d2421d1cd3e56c7349e92b9d29118e68c81",
|
|
339
339
|
"adminWww/assets/Office-CIXVNXkh.js": "41cde64ea9cad1025ee6aeccf3da952c8f64581fb0197e2a613548371ff8a9ba",
|
|
340
340
|
"adminWww/assets/Outdoor Blinds-CXkkQc7j.js": "30b7682eefc3a48a62fe889258fc9814353ac8b4c6ff0c7bb49220a150567174",
|
|
@@ -404,7 +404,7 @@
|
|
|
404
404
|
"adminWww/assets/amber-D7aVlNg3.js": "2687f459888dec42499d3e0330166b9c99add16240e35961b6123edf91c085b2",
|
|
405
405
|
"adminWww/assets/assertThisInitialized-B0aQ9eG_.js": "c7e3cc4cebe056e53eb01bc7ccb6974268d61c020fa837b64c800f907f8ac2f8",
|
|
406
406
|
"adminWww/assets/blue-CagzI6CQ.js": "fce7875a21a574fd80daa5d1bab96f545ff2d65cb1a29f7e02c7541332a25616",
|
|
407
|
-
"adminWww/assets/bootstrap-COulQZax-v84.js": "
|
|
407
|
+
"adminWww/assets/bootstrap-COulQZax-v84.js": "74e59fbdc557f5cab2b43a3d400cb121f685f8fc673be9449c45961d9be7ebc0",
|
|
408
408
|
"adminWww/assets/bootstrap-COulQZax.js": "120310000083365306f6ebbd7a46f8937aa7d83639504214c5dabc252fa180b3",
|
|
409
409
|
"adminWww/assets/bootstrap-D57bMhRi.css": "7e2acc4fbe77d10ef06c155f74a0b5c37790b29c104eb23c5e7bd84bff3ed049",
|
|
410
410
|
"adminWww/assets/createSvgIcon-CfRgdNUH.js": "1a911b7e4ae00c2b99cadc89b2b32a4ad69e6e5ac7b3e0ec6e07f87f6e46956e",
|
|
@@ -527,7 +527,7 @@
|
|
|
527
527
|
"adminWww/css/images/marker-icon.png": "574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437",
|
|
528
528
|
"adminWww/css/images/marker-shadow.png": "264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da",
|
|
529
529
|
"adminWww/css/leaflet.css": "7a30116fa3852c0ff7e556bb2e80b0dc89c5bca8e725bbe3948af1746ca55103",
|
|
530
|
-
"adminWww/css/nexowatt-native-shell.css": "
|
|
530
|
+
"adminWww/css/nexowatt-native-shell.css": "cd55f82f7e1de5041058213dda973226c8ea188de554511b9c9fffaf1ed12d0c",
|
|
531
531
|
"adminWww/favicon.ico": "3a357e949ab04b9f7bb1539764419ade50d1b4fc7caa51b8f33202a3f57a1f74",
|
|
532
532
|
"adminWww/img/admin.png": "7f93d65d9e1d795bf127e1af31d88d7468ccb70b026f98351d0abbc3f3bd4df6",
|
|
533
533
|
"adminWww/img/admin.svg": "1167118074ff84d8cef82ad80c38609719dacfde9417126e46966c1ec986534b",
|
|
@@ -552,7 +552,7 @@
|
|
|
552
552
|
"adminWww/img/le.png": "ef5ebb7112926f646e781a326b639f56888fafe0891b9b000178091b4f8ed9dd",
|
|
553
553
|
"adminWww/img/logo.svg": "1167118074ff84d8cef82ad80c38609719dacfde9417126e46966c1ec986534b",
|
|
554
554
|
"adminWww/img/no-image.svg": "25fc382f4ad3a36f8a637cd966b9107368e1f11906d706102ad5f37db6f57f34",
|
|
555
|
-
"adminWww/index.html": "
|
|
555
|
+
"adminWww/index.html": "9358ac35e93087ed79e3c00ec54899fde92938c438eb86231328d5f08d3ea965",
|
|
556
556
|
"adminWww/js/adapter-settings.js": "fb2e538a3385899f7fd47275ec588051c735d8f778a44b89f40f5eb820a31dbc",
|
|
557
557
|
"adminWww/js/eos-account-management.js": "dbba398605b2391ac1a7ec97cf7eb84da7f929ea16bfb6761750cd700a687fbe",
|
|
558
558
|
"adminWww/js/eos-assistant.js": "be43f49fd5310d2962365035556c37109d4868856e874e1f964c4b2f05bb6beb",
|
|
@@ -563,11 +563,11 @@
|
|
|
563
563
|
"adminWww/js/eos-manual-write-policy.js": "3c93487146b4fd5f681aa45a6bb137d9a91c3fa145ebfa94ec5ccb6b15498e8b",
|
|
564
564
|
"adminWww/js/eos-native-security.js": "33098b98164623fc133314658bca2f622d19971795dd8bd3c90aca68598aab90",
|
|
565
565
|
"adminWww/js/eos-policy-client.js": "5ffd32270307137fbec69a9b9bea57ca1d2e27ede987ce1eb37ff1df6677d8d2",
|
|
566
|
-
"adminWww/js/eos-role-bootstrap.js": "
|
|
567
|
-
"adminWww/js/eos-role-ui.js": "
|
|
566
|
+
"adminWww/js/eos-role-bootstrap.js": "f7f6f4c816cbf694f8e24d812a2aa8e7c84a42af6ad2274f44bf24debcfec63f",
|
|
567
|
+
"adminWww/js/eos-role-ui.js": "93424c5959159dd44421365a277b26c2c941f7d418eac4eae36547364cc10afb",
|
|
568
568
|
"adminWww/js/license.js": "13798e577c82d7a5549b07a244b8b8453ef43e53fc7789f565c35b56e6654007",
|
|
569
569
|
"adminWww/js/listHeader.js": "ed336a68a64e16a062d1af2269428fd20a08a4b695f17635f55a18bc1ef693a4",
|
|
570
|
-
"adminWww/js/nexowatt-native-shell.js": "
|
|
570
|
+
"adminWww/js/nexowatt-native-shell.js": "c0d327669ba12ba3b8e6fc4d1a17eb7092e59a0b23a2852161714c2b214dde15",
|
|
571
571
|
"adminWww/js/tableEditor.js": "5508044619fec70071895d0ae3ab6ff75dd03bd936e7b133f98d098d4245ec20",
|
|
572
572
|
"adminWww/js/translate.js": "264442c0f42a10148057125532bf55b7672c4cc051c28e7cbb922984a558f8d3",
|
|
573
573
|
"adminWww/js/treeTable.js": "8abde0b7880a89f6f927a87bb041945dea1502f51bc9870d8ba0be9d3dd9eed8",
|
|
@@ -747,7 +747,7 @@
|
|
|
747
747
|
"adminWww/static/js/html.js": "159b7192459d73d92761dab8c4d48e138e94e4d8e7bf99004bac257e403a0c3b",
|
|
748
748
|
"adminWww/static/js/javascript.js": "6287a6b820c8707a0cd7b9e4545bcb023a8b9228569cfd21be6635d1409aabf4",
|
|
749
749
|
"adminWww/static/js/nexowatt-stable-login.js": "ff0c6d4dc2086f3ab4be8ef455e5891a2ccb5f534bddfacbef2f5cd6ce65489e",
|
|
750
|
-
"adminWww/static/js/nexowatt-stable-
|
|
750
|
+
"adminWww/static/js/nexowatt-stable-v7105.js": "35d329e37a698a71d2825fe1bcbcee4e1073249a59aa56a3c645cf9623461600",
|
|
751
751
|
"adminWww/static/js/worker-css.js": "83c767cacd6b190e2f083b139cb3f124d1b560afbd7a6dbb74bf5539aa4cadee",
|
|
752
752
|
"adminWww/static/js/worker-html.js": "661d2448443c0089fba31d2829d77761a5fc042035c38433eff0e20707f17457",
|
|
753
753
|
"adminWww/static/js/worker-javascript.js": "73fcf007e2d19eacba8f365719ee92d14345505b03f9cf66e6338aef02fccd21",
|
|
@@ -795,7 +795,7 @@
|
|
|
795
795
|
"build/lib/utils.js.map": "74238d0d82cc28d41c4f627b73793f6cda26b338ef1bd97916b6417783949e29",
|
|
796
796
|
"build/lib/web.js": "8de94dffdd7c70be6b537c111691c831116338b311f7569739de57f9a32e071f",
|
|
797
797
|
"build/lib/web.js.map": "5fb9f337f3a27c04bb4303cb61ffa5f0da857299a7d2890609eb5f55f24f1789",
|
|
798
|
-
"build/main.js": "
|
|
798
|
+
"build/main.js": "7578ee14ea840950ad5164b0063c091c983528ebc32689dec5dc499062fbc92e",
|
|
799
799
|
"build/main.js.map": "1cd3887da9b3d4061c59b6ad497c536c6c9a79938b10bbddf7128a1e7930dfbd",
|
|
800
800
|
"public/404.html": "6c6458ba2bc49b0c27973293e461262bf697607a8e71ab716227553f6d7005eb",
|
|
801
801
|
"public/logTemplate.html": "fc371fc8e4d7ef57c0ca76a405508eced038523464ff65b6cae04dae6144fd54",
|
|
@@ -817,7 +817,7 @@
|
|
|
817
817
|
"src-admin/public/css/images/marker-icon.png": "574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437",
|
|
818
818
|
"src-admin/public/css/images/marker-shadow.png": "264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da",
|
|
819
819
|
"src-admin/public/css/leaflet.css": "7a30116fa3852c0ff7e556bb2e80b0dc89c5bca8e725bbe3948af1746ca55103",
|
|
820
|
-
"src-admin/public/css/nexowatt-native-shell.css": "
|
|
820
|
+
"src-admin/public/css/nexowatt-native-shell.css": "cd55f82f7e1de5041058213dda973226c8ea188de554511b9c9fffaf1ed12d0c",
|
|
821
821
|
"src-admin/public/favicon.ico": "3a357e949ab04b9f7bb1539764419ade50d1b4fc7caa51b8f33202a3f57a1f74",
|
|
822
822
|
"src-admin/public/img/admin.png": "f4c004482fa2623bea6f7e83df40fdda2e07334f61d5ae27eb0aba186c10ca97",
|
|
823
823
|
"src-admin/public/img/admin.svg": "1167118074ff84d8cef82ad80c38609719dacfde9417126e46966c1ec986534b",
|
|
@@ -850,11 +850,11 @@
|
|
|
850
850
|
"src-admin/public/js/eos-manual-write-policy.js": "3c93487146b4fd5f681aa45a6bb137d9a91c3fa145ebfa94ec5ccb6b15498e8b",
|
|
851
851
|
"src-admin/public/js/eos-native-security.js": "33098b98164623fc133314658bca2f622d19971795dd8bd3c90aca68598aab90",
|
|
852
852
|
"src-admin/public/js/eos-policy-client.js": "5ffd32270307137fbec69a9b9bea57ca1d2e27ede987ce1eb37ff1df6677d8d2",
|
|
853
|
-
"src-admin/public/js/eos-role-bootstrap.js": "
|
|
854
|
-
"src-admin/public/js/eos-role-ui.js": "
|
|
853
|
+
"src-admin/public/js/eos-role-bootstrap.js": "f7f6f4c816cbf694f8e24d812a2aa8e7c84a42af6ad2274f44bf24debcfec63f",
|
|
854
|
+
"src-admin/public/js/eos-role-ui.js": "93424c5959159dd44421365a277b26c2c941f7d418eac4eae36547364cc10afb",
|
|
855
855
|
"src-admin/public/js/license.js": "13798e577c82d7a5549b07a244b8b8453ef43e53fc7789f565c35b56e6654007",
|
|
856
856
|
"src-admin/public/js/listHeader.js": "ed336a68a64e16a062d1af2269428fd20a08a4b695f17635f55a18bc1ef693a4",
|
|
857
|
-
"src-admin/public/js/nexowatt-native-shell.js": "
|
|
857
|
+
"src-admin/public/js/nexowatt-native-shell.js": "c0d327669ba12ba3b8e6fc4d1a17eb7092e59a0b23a2852161714c2b214dde15",
|
|
858
858
|
"src-admin/public/js/tableEditor.js": "5508044619fec70071895d0ae3ab6ff75dd03bd936e7b133f98d098d4245ec20",
|
|
859
859
|
"src-admin/public/js/translate.js": "264442c0f42a10148057125532bf55b7672c4cc051c28e7cbb922984a558f8d3",
|
|
860
860
|
"src-admin/public/js/treeTable.js": "8abde0b7880a89f6f927a87bb041945dea1502f51bc9870d8ba0be9d3dd9eed8",
|
|
@@ -975,8 +975,8 @@
|
|
|
975
975
|
"src-admin/public/manifest.json": "15244d5d50f08420fc5d4793e5699e99c7b900b6908cfbc00a7182f4d4db55bd",
|
|
976
976
|
"src-admin/public/robots.txt": "90d24bc3bf698ac1e173739502298ccca72adf1f564fab05f484b8c48d1cadd2",
|
|
977
977
|
"src-admin/public/static/js/nexowatt-stable-login.js": "ff0c6d4dc2086f3ab4be8ef455e5891a2ccb5f534bddfacbef2f5cd6ce65489e",
|
|
978
|
-
"src-admin/public/static/js/nexowatt-stable-
|
|
979
|
-
"src-admin/src/App.tsx": "
|
|
978
|
+
"src-admin/public/static/js/nexowatt-stable-v7105.js": "35d329e37a698a71d2825fe1bcbcee4e1073249a59aa56a3c645cf9623461600",
|
|
979
|
+
"src-admin/src/App.tsx": "8ab367389c604d5face72cc71da49b08021ffa2e566db4d32df9ad98f9fe762a",
|
|
980
980
|
"src-admin/src/Workers/AdaptersWorker.tsx": "3a2cdeb8010598c901df0e3cffcdae913e62e7ac7c84fcadf15cb7f961dc6ed9",
|
|
981
981
|
"src-admin/src/Workers/GenericWorker.tsx": "3b3c6e7856602477c54d1dc085aa23b5cfcac7784cc73710b00622ac04ed5a97",
|
|
982
982
|
"src-admin/src/Workers/HostAdapterWorker.tsx": "e0b87c063fd0fca9ea9afc26a0a82f807a3f650e7459e78add197de4edaa9ff5",
|
|
@@ -1191,7 +1191,7 @@
|
|
|
1191
1191
|
"src-admin/src/components/CustomPopper.tsx": "07f924ece634d54f1bc5c3d41ffb2702ea89d289c28d98221a5617eaba7cae3d",
|
|
1192
1192
|
"src-admin/src/components/CustomSelectButton.tsx": "1547393f97fba81b13331a3df4457509f239735bad9d17713eeecd48acd420db",
|
|
1193
1193
|
"src-admin/src/components/DragWrapper.tsx": "c417b1cc7786398c1d467d98db10d49e5b81d28ba9a6b0a55f6d9f5b6ad9a035",
|
|
1194
|
-
"src-admin/src/components/Drawer.tsx": "
|
|
1194
|
+
"src-admin/src/components/Drawer.tsx": "1c8969bb2f97d8ab66bf8be4d2989bc598d0b7397d5a99ff846aa42ceeb7618f",
|
|
1195
1195
|
"src-admin/src/components/DrawerItem.tsx": "41a011ccfb84258b7e113d0ff2c8f3f12f12cc555eb34e5decd474c71f70453a",
|
|
1196
1196
|
"src-admin/src/components/EasyModeCard.tsx": "403e8f47532cf469f42f91a7c40c8f9d9c09f66cc4486177ac49fc5aa230b80c",
|
|
1197
1197
|
"src-admin/src/components/Editor.tsx": "47bc1dd26ab86317d7f65560b10e9611b138be8b0f13c90d78166debcd2ed4ee",
|
|
@@ -1318,12 +1318,12 @@
|
|
|
1318
1318
|
"src-admin/src/tabs/Files.tsx": "996e7a56d34af41c495bca7c271060b88b0ddd0008d7e52fe099baf64894236c",
|
|
1319
1319
|
"src-admin/src/tabs/Hosts.tsx": "c4ed6a1a03db8f02492730e6c336a8834b4f85f8054975f9601c74fb59a50973",
|
|
1320
1320
|
"src-admin/src/tabs/Instances.tsx": "439ad5955bf9122e5827828d45514e0579080b30c5f1af636d997d15758c52fb",
|
|
1321
|
-
"src-admin/src/tabs/Intro.tsx": "
|
|
1321
|
+
"src-admin/src/tabs/Intro.tsx": "7bc7c1ab3df651959046ac1ad23f09fa9d2c1567a0225236eada2c0da5c55d9a",
|
|
1322
1322
|
"src-admin/src/tabs/Logs.tsx": "51d24880c8a702629e49f3d92edfc23d94778c7d9fa79f5aca1233977166105d",
|
|
1323
|
-
"src-admin/src/tabs/Objects.tsx": "
|
|
1323
|
+
"src-admin/src/tabs/Objects.tsx": "2b87a8a7e771e10e1cce49019c4be62578f10096eee5abd17d2685f5f41cc67c",
|
|
1324
1324
|
"src-admin/src/tabs/Users.tsx": "45ed37e57b66f7e23eb465aef9ad9db55613b40bf44530ab81d6206806de102d",
|
|
1325
1325
|
"src-admin/src/types.d.ts": "3cfac48af5f8416b55b89c0daca78499dbbd402c0b44cc661112b76953ba3344",
|
|
1326
|
-
"src-admin/src/version.json": "
|
|
1326
|
+
"src-admin/src/version.json": "13b5e66c3cd1fe6ee1f5f2cf0c4f921660dea2013644d05822ded200018dd14a",
|
|
1327
1327
|
"src/i18n/de.json": "85d4ecfedf15d78984922b05377063b808ae8c5a75944af323e72a2c3a483d50",
|
|
1328
1328
|
"src/i18n/en.json": "6a0156a1b026903821d395ef2ceef845e90531f323a218f97f5abefaabb46a23",
|
|
1329
1329
|
"src/i18n/es.json": "54369f8044dfa222779849d2f158eb100188a43816d6c42a64575122cb528a30",
|
|
@@ -1351,18 +1351,18 @@
|
|
|
1351
1351
|
"src/lib/translations.ts": "8fdb51d81c3f98e17e0231f6773381886eb1c68068a3f53dd5e32bf6b58f9d16",
|
|
1352
1352
|
"src/lib/utils.ts": "5398da6c6a660c4300e2679aa5e001e05297d684cc39bdfab091375768169f30",
|
|
1353
1353
|
"src/lib/web.ts": "8eae6cc8dc6eb42bc7be5498f91e4064f35564355d7538cfa4d791e7b323ca5e",
|
|
1354
|
-
"src/main.ts": "
|
|
1354
|
+
"src/main.ts": "e9eb8013a229d9616be923850075e8cb5475bde32c882008721225ed37a85a8c",
|
|
1355
1355
|
"src/types.d.ts": "12117a644a45cb0b551555184126563e80bf909726aa378c7d72327a30c61054",
|
|
1356
1356
|
"tasks.mts": "84a396f8581e7e3ca499a1c4ce01d22ea29f81700520f804b48a95fb54d72408",
|
|
1357
1357
|
"tools/nexowatt-account-management-selftest.cjs": "fb3f2f132407707a0f3b960c74b4b1f3861db499783508b2d7d42b31a2729d94",
|
|
1358
|
-
"tools/nexowatt-account-password-flow-selftest.cjs": "
|
|
1358
|
+
"tools/nexowatt-account-password-flow-selftest.cjs": "4ee01c749391cc562223abd134191464d80077d795e54378b893c6d351fcd981",
|
|
1359
1359
|
"tools/nexowatt-apply-ems-overview.cjs": "520d84ce95b3e99f1f559728799f1d412d84e30c441283aa42fd188b17fd242e",
|
|
1360
1360
|
"tools/nexowatt-assistant-separation-selftest.cjs": "f7cd60b831e6e19f6c2381ac0996807001dcc3247dbe7dcc30d010498b5e82c3",
|
|
1361
1361
|
"tools/nexowatt-auto-update-placement-selftest.cjs": "f9fb5e1b2065a70660bffdc62829210a2388259e4c0f32c77acf7ecfa1606110",
|
|
1362
1362
|
"tools/nexowatt-auto-update-selftest.cjs": "1c7500ca3f0264658aa778758dc14d10353dc3857ef7c9803591654cba9b13d5",
|
|
1363
1363
|
"tools/nexowatt-backend-runtime-selftest.cjs": "22eaeef2fe80c71af7e86db66e049612faf6285b47c69d9d446e2d1231d2c21f",
|
|
1364
1364
|
"tools/nexowatt-branding-selftest.cjs": "3aa00be3716fb5349c45ef761ddab639c51381a265ec086ddda45ecee89d39d5",
|
|
1365
|
-
"tools/nexowatt-clean-legacy-runtime.cjs": "
|
|
1365
|
+
"tools/nexowatt-clean-legacy-runtime.cjs": "a413e9b72c5d1aefc626950dfed68254789b3ea807eeea75cd06c304c9a557ab",
|
|
1366
1366
|
"tools/nexowatt-datapoint-interaction-selftest.cjs": "3931d59d8a116c791096a5d1f5b36ab4c343b7ba8587f59ac4d46fadb24efa1c",
|
|
1367
1367
|
"tools/nexowatt-datapoint-selftest.cjs": "357db8a875fb24fd0050c9bd9dbba17d3f330b67a1b50ba72f8d9fc5fe7fb0c5",
|
|
1368
1368
|
"tools/nexowatt-default-port-selftest.cjs": "0e555a1e6cd8e05c7df7fcc482964310f86feb6ad4aa88e98a2e487975688411",
|
|
@@ -1375,15 +1375,15 @@
|
|
|
1375
1375
|
"tools/nexowatt-generate-eos-admin-repo-entry.cjs": "a8b55d6001b0ed6d97221448b194748945f2e8382cdaf0b11ea91c63fb517139",
|
|
1376
1376
|
"tools/nexowatt-generate-repo-entry.cjs": "4e98acc7db74546bd942cfa36d57015673c6f1514758494753e7339068f7eb68",
|
|
1377
1377
|
"tools/nexowatt-import-integrity-selftest.cjs": "f46951126a237a6010c3c0949c25e2415ebe9af568d29411d10691951cb3ed87",
|
|
1378
|
-
"tools/nexowatt-internal-reserve-selftest.cjs": "
|
|
1379
|
-
"tools/nexowatt-login-layout-selftest.cjs": "
|
|
1378
|
+
"tools/nexowatt-internal-reserve-selftest.cjs": "f027a2272a4277d65167d68d4ca4428cd0c28a6c6c2b610eda575abd3f2bc90a",
|
|
1379
|
+
"tools/nexowatt-login-layout-selftest.cjs": "7d4baae82f1d53fc14446b8ef80aaffa39b0b3529821599f4a6e2c27fbc7a7f2",
|
|
1380
1380
|
"tools/nexowatt-manual-write-policy-selftest.cjs": "a41057610972d681120bf35e0321029facc08b098c79da9b131980f80bd3fdce",
|
|
1381
|
-
"tools/nexowatt-merge-update-selftest.cjs": "
|
|
1382
|
-
"tools/nexowatt-modern-ui-selftest.cjs": "
|
|
1381
|
+
"tools/nexowatt-merge-update-selftest.cjs": "66d250def2c372cceb0fda42b0dc756557d8cdcf268f73a2ff7c68de4522e36a",
|
|
1382
|
+
"tools/nexowatt-modern-ui-selftest.cjs": "0145adc4b7d84e996f227dee02c09f767ab9a29bb2151041a50b88bb27a5b93a",
|
|
1383
1383
|
"tools/nexowatt-module-popup-selftest.cjs": "31f02e8cf0bfd61d7769e1095c93887a34cfbbd76a9805ef4931cea6dff53ddf",
|
|
1384
1384
|
"tools/nexowatt-native-shell-selftest.cjs": "13aabd3a19f0c0422bbc1c676718685b77c88a526167a7b511fa6c9ab2ac860c",
|
|
1385
1385
|
"tools/nexowatt-password-write-selftest.cjs": "0f5cb8e7bd0d7b67f1d533f6a722429572199f05eda964634d2f0be367f46902",
|
|
1386
|
-
"tools/nexowatt-patch-built-frontend.cjs": "
|
|
1386
|
+
"tools/nexowatt-patch-built-frontend.cjs": "6d66dafa002c005ab441552d0703ce619629582bbf3cd4fa56bdaa10fe1c9beb",
|
|
1387
1387
|
"tools/nexowatt-patch-repo.cjs": "14cd12c23cd85bc8eeca738d459b9ba8bab3fc5fb3eadc3c6ce4a636cd36e7a1",
|
|
1388
1388
|
"tools/nexowatt-policy-selftest.cjs": "a7daeca13ea7f05a5b09ee1f52ab35db7d21c8395bcaf93e537a85fe87580146",
|
|
1389
1389
|
"tools/nexowatt-prebuilt-release-selftest.cjs": "ed7d10788bcfee32d9fb9a93a5ade7b1a107a24026d7e6c4cb19cf99761f5401",
|
|
@@ -1391,19 +1391,20 @@
|
|
|
1391
1391
|
"tools/nexowatt-publish-channel-selftest.cjs": "c4efd1104ebe471ce1dc63195f322cffe760af295bf60f13b9766491acd0280e",
|
|
1392
1392
|
"tools/nexowatt-release-defaults-selftest.cjs": "3e3c96ca774200461978c546d1a937cbae18d7f11497ed84dda639c2358f6e16",
|
|
1393
1393
|
"tools/nexowatt-repair-eos-admin-update.cjs": "f28c1999b0f75139e582770ad649d17d11f9e909ac49d13c31be5fa5b36253e3",
|
|
1394
|
-
"tools/nexowatt-role-access-selftest.cjs": "
|
|
1395
|
-
"tools/nexowatt-
|
|
1396
|
-
"tools/nexowatt-
|
|
1394
|
+
"tools/nexowatt-role-access-selftest.cjs": "b855b69cb74a5124c9a5a22b811a5209f70f32979a776401897f7fe910f794e9",
|
|
1395
|
+
"tools/nexowatt-role-security-selftest.cjs": "b5b21f3c80f69b03f9c95fb26e11b2706aac86534048ac7251a5275dfcbde6e2",
|
|
1396
|
+
"tools/nexowatt-runtime-cleanup-selftest.cjs": "f317b09aa0c51ffe7e1b5eaf10c52c886804ec6e8084967cd88e4ebece6ecfb5",
|
|
1397
|
+
"tools/nexowatt-stability-check.cjs": "087c74c3f050ebfe3b092cc74a4b99b6e66813d57b0d2065f92fbddcb9e2ed9e",
|
|
1397
1398
|
"tools/nexowatt-stable-v7101-selftest.cjs": "817d09861ef29c52a67f64ec5b8f4ad4654ce7e6486eded786bb16f3c773eaf8",
|
|
1398
1399
|
"tools/nexowatt-stable-v7102-selftest.cjs": "75baab5f8069569ad4896e5018f3c5ccbbda2c2297aca5c5146bce94f9cf795d",
|
|
1399
|
-
"tools/nexowatt-stable-v7103-selftest.cjs": "
|
|
1400
|
+
"tools/nexowatt-stable-v7103-selftest.cjs": "80491789e636375c21e22335de08c8b4892c056e3fb703f1d5368e81105074b0",
|
|
1400
1401
|
"tools/nexowatt-stable-v94-selftest.cjs": "5226881b3ad8918c67921ffb37716490f053ec88e7c0f24827a5eda7c75d4019",
|
|
1401
1402
|
"tools/nexowatt-stable-v95-selftest.cjs": "0b15fcd329eb2994e64c407ab04eaafab7c38c4688136c197bf9601e1c35ee07",
|
|
1402
1403
|
"tools/nexowatt-stable-v97-selftest.cjs": "4f50ad6e53b8de7eb045d56657cccd846883eacd8a877d51240d78153ba53d80",
|
|
1403
1404
|
"tools/nexowatt-sync-release-version.cjs": "2478d714533ece21a275071ef6e5467f73c2fa33d0a63d76f408dc048a86c6f6",
|
|
1404
|
-
"tools/nexowatt-ui-overview-runtime-selftest.cjs": "
|
|
1405
|
+
"tools/nexowatt-ui-overview-runtime-selftest.cjs": "83255e5d3c9a548013f6e9a74706644d15d98450d0bfa2eb3da83c740d8618ea",
|
|
1405
1406
|
"tools/nexowatt-update-selftest.cjs": "c38c454135f98de683de8fa15fc4b9032063823f0f55fcfc8b675f551fd342f5",
|
|
1406
|
-
"tools/nexowatt-validate-package.cjs": "
|
|
1407
|
+
"tools/nexowatt-validate-package.cjs": "4995d6db92d59ba4cdb1ed6481304deae348f644064e86fbf81384405e36b851",
|
|
1407
1408
|
"tools/nexowatt-value-column-selftest.cjs": "29d0a9bbea05a87dcf8ee09c86cc81acb6c59e1e34801890768f5e342083871a",
|
|
1408
1409
|
"tools/nexowatt-version-sync-selftest.cjs": "65d7c8634b6d5581f337365e13a1a9432c7d47dbf5aebc237886730c32ba5e94",
|
|
1409
1410
|
"tsconfig.build.json": "d3a31263975a13de77b97af9ff246d89931f3abb594047be2739cf11378b97f5",
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# NPM publication 7.10.5
|
|
2
|
+
|
|
3
|
+
1. Use a freshly extracted repository ZIP.
|
|
4
|
+
2. Run `npm publish --dry-run`.
|
|
5
|
+
3. Confirm version `7.10.5`, complete `build/` runtime and all active `adminWww/assets/*-v84.js` files.
|
|
6
|
+
4. Publish with `npm publish` only after the dry run succeeds.
|
|
7
|
+
|
|
8
|
+
No `npm install`, `npm ci`, `tsc` or `tsx` is required for the sealed prebuilt release.
|
package/README.md
CHANGED
|
@@ -13,9 +13,9 @@ Standard-Port: 8081
|
|
|
13
13
|
|
|
14
14
|
Damit überschreibt der Adapter den offiziellen `admin`-Adapter nicht mehr. Die alte ioBroker-Admin-Oberfläche kann parallel vorhanden bleiben, während NexoWatt-Systeme über `eos-admin.0` die EOS-Oberfläche nutzen.
|
|
15
15
|
|
|
16
|
-
## Aktueller Stable-Verkaufskandidat 7.10.
|
|
16
|
+
## Aktueller Stable-Verkaufskandidat 7.10.4
|
|
17
17
|
|
|
18
|
-
Version 7.10.
|
|
18
|
+
Version 7.10.4 übernimmt den validierten und absturzfreien Stand 7.10.2. Die Einstellung **Automatische Adapter-Updates** liegt jetzt ausschließlich in den **Systemeinstellungen** hinter dem Schraubenschlüssel. Auf Übersicht, Module und allen anderen Hauptseiten wird die Karte nicht mehr angezeigt. Die restart-sichere Updateverwaltung, der verzögerte Repository-Abgleich und die vollständige Backend-Paketprüfung bleiben unverändert.
|
|
19
19
|
|
|
20
20
|
Verwaltete Installateur- und Endkundenkonten verwenden das Startpasswort `nexowatt`. Nach der ersten Anmeldung beziehungsweise nach einem Reset muss unmittelbar ein persönliches Passwort vergeben werden. Der Reset und die persönliche Passwortvergabe schreiben das reale ioBroker-Benutzerkennwort; EOS-Metadaten werden davon getrennt aktualisiert.
|
|
21
21
|
|
|
@@ -33,7 +33,7 @@ Minimaler Repository-Eintrag:
|
|
|
33
33
|
{
|
|
34
34
|
"eos-admin": {
|
|
35
35
|
"name": "eos-admin",
|
|
36
|
-
"version": "7.10.
|
|
36
|
+
"version": "7.10.4",
|
|
37
37
|
"title": "NexoWatt EOS Admin",
|
|
38
38
|
"desc": {
|
|
39
39
|
"de": "NexoWatt EOS Administrationsoberfläche als eigenständiger Adapter.",
|
|
@@ -141,7 +141,7 @@ npm publish --dry-run --tag latest
|
|
|
141
141
|
npm publish --tag latest
|
|
142
142
|
```
|
|
143
143
|
|
|
144
|
-
Die Version muss vor jedem erneuten Publish erhöht werden. Für 7.10.
|
|
144
|
+
Die Version muss vor jedem erneuten Publish erhöht werden. Für 7.10.4 wird direkt aus der vollständig geprüften Repository-ZIP veröffentlicht; `npm publish` benötigt dabei weiterhin weder `tsc` noch `tsx`.
|
|
145
145
|
|
|
146
146
|
## Lizenz
|
|
147
147
|
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# NexoWatt EOS Admin 7.10.5 – stability and RBAC baseline
|
|
2
|
+
|
|
3
|
+
This release retains the validated 7.10.2–7.10.4 crash, package and update-placement fixes. Role decisions now come exclusively from the authenticated `/nexowatt/security/context` response. The removed heuristic must never be restored.
|
|
4
|
+
|
|
5
|
+
Administrator is an unconditional full-rights path. End User datapoints are read-only in both frontend and backend. Menu edits are persisted in an adapter state and must never write `system.config`.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Release Acceptance 7.10.5
|
|
2
|
+
|
|
3
|
+
- [ ] Admin can write every normally writable datapoint.
|
|
4
|
+
- [ ] Admin can enable and disable expert mode repeatedly.
|
|
5
|
+
- [ ] Admin sees ioBroker Admin and XTerm overview cards.
|
|
6
|
+
- [ ] Installer and End User never see expert mode, ioBroker Admin or XTerm.
|
|
7
|
+
- [ ] App Center, License, Simulation and account administration are unavailable to Installer/End User.
|
|
8
|
+
- [ ] End User sees Datapoints but cannot write, edit, create or delete.
|
|
9
|
+
- [ ] Pencil navigation edits do not restart EOS Admin.
|
|
10
|
+
- [ ] Backup navigation follows the enabled state of the backup instance.
|
|
11
|
+
- [ ] `npm publish --dry-run` succeeds from a fresh extraction.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Release Notes 7.10.5
|
|
2
|
+
|
|
3
|
+
Version 7.10.5 is the administrator-rights and RBAC correction for NexoWatt EOS Admin.
|
|
4
|
+
|
|
5
|
+
- Restores unrestricted administrator datapoint writes and reversible expert mode.
|
|
6
|
+
- Removes the legacy DOM-text role classifier that could misclassify `system.user.admin`.
|
|
7
|
+
- Keeps ioBroker Admin and XTerm visible for administrators only.
|
|
8
|
+
- Exposes Datapoints to End Users as read-only and denies End User state writes in the backend.
|
|
9
|
+
- Blocks App Center, License, Simulation and normal account administration for Installer/End User.
|
|
10
|
+
- Stores navigation visibility/order in `eos-admin.0.info.uiTabsVisible` instead of `system.config`, avoiding adapter restarts.
|
|
11
|
+
- Shows backup navigation only for enabled backup instances.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# NexoWatt EOS role matrix 7.10.5
|
|
2
|
+
|
|
3
|
+
| Capability | Admin | Installer | End User |
|
|
4
|
+
|---|---:|---:|---:|
|
|
5
|
+
| Datapoints read | Yes | Yes | Yes |
|
|
6
|
+
| Datapoints write/edit | Yes | Yes | No |
|
|
7
|
+
| Expert mode | Yes | No | No |
|
|
8
|
+
| ioBroker Admin / XTerm | Yes | No | No |
|
|
9
|
+
| App Center / License / Simulation | Yes | No | No |
|
|
10
|
+
| Users, groups, passwords | Yes | No | No |
|
|
11
|
+
| Smart Home structure | Yes | Yes | Yes |
|
|
12
|
+
| Navigation layout editing | Yes | No | No |
|