2022-05-12 04:10:52 +00:00
|
|
|
<script lang="ts">
|
|
|
|
import { FocusManager } from '../focus'
|
|
|
|
|
|
|
|
export let manager: FocusManager
|
2023-05-12 06:41:27 +00:00
|
|
|
export let isEnabled: boolean = true
|
2022-05-12 04:10:52 +00:00
|
|
|
|
|
|
|
function handleKey (evt: KeyboardEvent): void {
|
2023-05-12 06:41:27 +00:00
|
|
|
if (evt.code === 'Tab' && isEnabled) {
|
2023-07-20 09:40:56 +00:00
|
|
|
evt.preventDefault()
|
|
|
|
evt.stopPropagation()
|
|
|
|
manager.next(evt.shiftKey ? -1 : 1)
|
2022-05-12 04:10:52 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
|
2023-11-20 10:01:43 +00:00
|
|
|
<svelte:window
|
|
|
|
on:keydown={(evt) => {
|
|
|
|
handleKey(evt)
|
|
|
|
}}
|
|
|
|
/>
|
2022-05-12 04:10:52 +00:00
|
|
|
<slot />
|