diff --git a/neode-ui/src/components/ToggleSwitch.vue b/neode-ui/src/components/ToggleSwitch.vue index 74199f5c..a743fdf7 100644 --- a/neode-ui/src/components/ToggleSwitch.vue +++ b/neode-ui/src/components/ToggleSwitch.vue @@ -3,10 +3,12 @@ type="button" role="switch" :aria-checked="modelValue" + :aria-label="ariaLabel" + :disabled="disabled" tabindex="-1" data-controller-ignore class="w-10 h-6 rounded-full shrink-0 transition-colors relative" - :class="modelValue ? 'bg-orange-500' : 'bg-white/15'" + :class="[modelValue ? 'bg-orange-500' : 'bg-white/15', disabled ? 'opacity-40 cursor-not-allowed' : '']" @click="$emit('update:modelValue', !modelValue)" >
defineProps<{ modelValue: boolean + disabled?: boolean + ariaLabel?: string }>() defineEmits<{ diff --git a/neode-ui/src/views/Federation.vue b/neode-ui/src/views/Federation.vue index c7d0af6d..f96a215f 100644 --- a/neode-ui/src/views/Federation.vue +++ b/neode-ui/src/views/Federation.vue @@ -15,13 +15,15 @@ @rotate="rotateDid" /> - -
+ +
- + @update:model-value="toggleWifiRadio(iface)" + />

No physical interfaces detected

@@ -413,6 +407,7 @@ import QuickActionsCard from './server/QuickActionsCard.vue' import TorServicesCard from './server/TorServicesCard.vue' import ServerModals from './server/ServerModals.vue' import FipsNetworkCard from './server/FipsNetworkCard.vue' +import ToggleSwitch from '@/components/ToggleSwitch.vue' import type { TorServiceInfo } from './server/TorServicesCard.vue' const appStore = useAppStore()