package com.tt.honeyDue.ui.haptics

/** Desktop JVM: no haptics hardware. Backend is a no-op. */
actual object Haptics {
    @Volatile private var backend: HapticBackend = NoopHapticBackend

    actual fun light() = backend.perform(HapticEvent.LIGHT)
    actual fun medium() = backend.perform(HapticEvent.MEDIUM)
    actual fun heavy() = backend.perform(HapticEvent.HEAVY)
    actual fun success() = backend.perform(HapticEvent.SUCCESS)
    actual fun warning() = backend.perform(HapticEvent.WARNING)
    actual fun error() = backend.perform(HapticEvent.ERROR)

    actual fun setBackend(backend: HapticBackend) {
        this.backend = backend
    }

    actual fun resetBackend() {
        this.backend = NoopHapticBackend
    }
}
