Skip to content

Commit d53d08a

Browse files
committed
feat: add option to disable Bridge devices
1 parent 019e9f2 commit d53d08a

File tree

3 files changed

+24
-2
lines changed

3 files changed

+24
-2
lines changed

apps/app/src/react/components/pages/homePage/deviceItem/DeviceItemContent.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { IPCServerContext } from '../../../../contexts/IPCServer'
88
import { ProjectContext } from '../../../../contexts/Project'
99
import { SelectEnum } from '../../../inputs/SelectEnum'
1010
import { BooleanInput } from '../../../inputs/BooleanInput'
11+
import Toggle from 'react-toggle'
1112

1213
const MIN_PORT = 1
1314
const MAX_PORT = 65535
@@ -240,6 +241,18 @@ export const DeviceItemContent: React.FC<{
240241
</div>
241242
<div className="actions">
242243
<TextBtn label="Delete" style="danger" onClick={removeDevice} />
244+
<>
245+
<label>Enabled&nbsp;</label>
246+
<div className="sc-switch">
247+
<Toggle
248+
checked={!deviceSettings.disable}
249+
onChange={() => {
250+
deviceSettings.disable = !deviceSettings.disable
251+
ipcServer.updateProject({ id: project.id, project }).catch(handleError)
252+
}}
253+
/>
254+
</div>
255+
</>
243256
</div>
244257
</div>
245258
)

apps/app/src/react/components/pages/homePage/deviceItem/DeviceItemHeader.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,13 @@ export const DeviceItemHeader: React.FC<{
3131
<DeviceShortcut device={props.device} type={deviceSettings.type} />
3232
<ScListItemLabel title={props.deviceName || props.deviceId} subtitle={deviceAddress} />
3333
<div className="status">
34-
{props.device.ok ? 'Connected' : props.device.message ? props.device.message : 'Not Connected'}
34+
{deviceSettings.disable
35+
? 'Disabled'
36+
: props.device.ok
37+
? 'Connected'
38+
: props.device.message
39+
? props.device.message
40+
: 'Not Connected'}
3541
</div>
3642
</div>
3743
)

shared/packages/tsr-bridge/src/TSR.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ export class TSR {
6565
// Added/updated:
6666
for (const deviceId in newDevices) {
6767
const newDevice = newDevices[deviceId]
68+
if (newDevice.disable) continue
69+
6870
const existingDevice = this.devices[deviceId]
6971

7072
if (!existingDevice || !_.isEqual(existingDevice, newDevice)) {
@@ -105,7 +107,8 @@ export class TSR {
105107
}
106108
// Removed:
107109
for (const deviceId in this.devices) {
108-
if (!newDevices[deviceId]) {
110+
const newDevice = newDevices[deviceId]
111+
if (!newDevice || newDevice.disable) {
109112
// Delete the sideloaded device, if any
110113
if (deviceId in this.sideLoadedDevices) {
111114
await this.sideLoadedDevices[deviceId].close()

0 commit comments

Comments
 (0)