17 lines
833 B
Vue
17 lines
833 B
Vue
<script setup lang="ts">
|
|
import { useDeviceControlContext } from '../../devices/controlContext'
|
|
const { actionFeedback, operationBusy, currentOperationText, lastUpdatedAt } = useDeviceControlContext()
|
|
</script>
|
|
|
|
<template>
|
|
<div class="operation-status" :class="actionFeedback?.type" role="status" aria-live="polite">
|
|
<span class="operation-message">
|
|
<i v-if="operationBusy" class="operation-spinner" aria-hidden="true"></i>
|
|
<i v-else-if="actionFeedback?.type === 'success'" class="operation-result" aria-hidden="true">✓</i>
|
|
<i v-else-if="actionFeedback?.type === 'fail'" class="operation-result" aria-hidden="true">!</i>
|
|
{{ currentOperationText || actionFeedback?.message || '设备状态会自动更新' }}
|
|
</span>
|
|
<small v-if="lastUpdatedAt">{{ lastUpdatedAt }}</small>
|
|
</div>
|
|
</template>
|