From 157c970836028a1e04edc5d32a0f8340464eb63b Mon Sep 17 00:00:00 2001 From: Koen Kanters Date: Tue, 15 Oct 2024 21:15:56 +0200 Subject: [PATCH] Revert "fix: match 2.0.0 permit join API (#2158)" This reverts commit 6e31bc2eaadb3b0ad67c88dfd0e0933c57fb947e. --- src/actions/BridgeApi.ts | 8 ++++---- src/components/navbar/StartStopJoinButton.tsx | 5 ++--- src/types.ts | 3 +++ 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/actions/BridgeApi.ts b/src/actions/BridgeApi.ts index 6bf797ccd..84e342a2c 100644 --- a/src/actions/BridgeApi.ts +++ b/src/actions/BridgeApi.ts @@ -3,7 +3,7 @@ import { Device } from '../types'; import store from '../store'; export interface BridgeApi { - setPermitJoin(time: number, device: Device): Promise; + setPermitJoin(permit: boolean, device: Device): Promise; updateBridgeConfig(options: unknown): Promise; restartBridge(): Promise; requestBackup(): Promise; @@ -11,8 +11,8 @@ export interface BridgeApi { } -const setPermitJoin = (_state, time = 254, device?: Device): Promise => { - return api.send("bridge/request/permit_join", { time, device: device?.friendly_name }); +const setPermitJoin = (_state, permit = true, device?: Device, time = 254): Promise => { + return api.send("bridge/request/permit_join", { value: permit, time, device: device?.friendly_name }); } export default { @@ -29,6 +29,6 @@ export default { }, async addInstallCode(_state, installCode: string): Promise { await api.send('bridge/request/install_code/add', { value: installCode }); - return setPermitJoin(_state, 254) + return setPermitJoin(_state, true) } } diff --git a/src/components/navbar/StartStopJoinButton.tsx b/src/components/navbar/StartStopJoinButton.tsx index c23951bf3..aa1306e5a 100644 --- a/src/components/navbar/StartStopJoinButton.tsx +++ b/src/components/navbar/StartStopJoinButton.tsx @@ -14,8 +14,7 @@ export function StartStopJoinButton({ devices, setPermitJoin, bridgeInfo }: Star const { t } = useTranslation(['navbar']); const { ref, isComponentVisible, setIsComponentVisible } = useComponentVisible(false); const [selectedRouter, setSelectedRouter] = useState({} as Device); - const { permit_join_timeout: permitJoinTimeout } = bridgeInfo; - const permitJoin = permitJoinTimeout > 0; + const { permit_join: permitJoin, permit_join_timeout: permitJoinTimeout } = bridgeInfo; const selectAndHide = (device: Device) => { setSelectedRouter(device); @@ -37,7 +36,7 @@ export function StartStopJoinButton({ devices, setPermitJoin, bridgeInfo }: Star )); const onBtnClick = () => { - setPermitJoin(permitJoin ? 0 : 254, selectedRouter); + setPermitJoin(!permitJoin, selectedRouter); }; const permitJoinTimer = ( <> diff --git a/src/types.ts b/src/types.ts index c236bb430..428e902e0 100644 --- a/src/types.ts +++ b/src/types.ts @@ -100,11 +100,14 @@ export interface BridgeConfig { coordinator: Coordinator; network: Network; log_level: string; + permit_join: boolean; + } export type BridgeState = "online" | "offline"; export interface BridgeInfo { config: Z2MConfig; config_schema: JSONSchema7; + permit_join: boolean; permit_join_timeout: number; commit?: string; version?: string;