- ${this._status === "connecting"
+ ${this._status === "disconnected"
? html``
@@ -121,13 +150,13 @@ class ZWaveJSConfigDashboard extends LitElement {
`}
- ${this._status !== "connecting"
+ ${this._status !== "disconnected"
? html`
${this.hass.localize(
@@ -207,7 +236,9 @@ class ZWaveJSConfigDashboard extends LitElement {
${this.hass.localize(
"ui.panel.config.zwave_js.common.remove_node"
@@ -215,16 +246,13 @@ class ZWaveJSConfigDashboard extends LitElement {
${this.hass.localize(
"ui.panel.config.zwave_js.common.heal_network"
)}
-
+
${this.hass.localize(
"ui.panel.config.zwave_js.common.reconfigure_server"
)}
@@ -272,10 +300,11 @@ class ZWaveJSConfigDashboard extends LitElement {
.label=${this.hass.localize(
"ui.panel.config.zwave_js.common.add_node"
)}
- .disabled=${this._status === "connecting"}
extended
?rtl=${computeRTL(this.hass)}
@click=${this._addNodeClicked}
+ .disabled=${this._status !== "connected" ||
+ this._network?.controller.inclusion_state !== InclusionState.Idle}
>
@@ -412,6 +441,16 @@ class ZWaveJSConfigDashboard extends LitElement {
});
}
+ private async _cancelInclusion() {
+ stopZwaveInclusion(this.hass!, this.configEntryId!);
+ await this._fetchData();
+ }
+
+ private async _cancelExclusion() {
+ stopZwaveExclusion(this.hass!, this.configEntryId!);
+ await this._fetchData();
+ }
+
private _dataCollectionToggled(ev) {
setZwaveDataCollectionPreference(
this.hass!,
diff --git a/src/translations/en.json b/src/translations/en.json
index df7573c610..c5c1b5feab 100755
--- a/src/translations/en.json
+++ b/src/translations/en.json
@@ -2956,7 +2956,9 @@
"add_node": "Add device",
"remove_node": "Remove device",
"reconfigure_server": "Re-configure Server",
- "heal_network": "Heal Network"
+ "heal_network": "Heal Network",
+ "in_progress_inclusion_exclusion": "Z-Wave JS is searching for devices",
+ "cancel_inclusion_exclusion": "Stop Searching"
},
"dashboard": {
"header": "Manage your Z-Wave Network",