UNPKG

reka-ui

Version:

Vue port for Radix UI Primitives.

1 lines 1.01 kB
{"version":3,"file":"FocusProxy.cjs","sources":["../../src/Toast/FocusProxy.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { VisuallyHidden } from '@/VisuallyHidden'\nimport { injectToastProviderContext } from './ToastProvider.vue'\n\nconst emits = defineEmits<{\n focusFromOutsideViewport: [void]\n}>()\n\nconst providerContext = injectToastProviderContext()\n</script>\n\n<template>\n <VisuallyHidden\n aria-hidden=\"true\"\n tabindex=\"0\"\n style=\"position: fixed\"\n @focus=\"(event: FocusEvent) => {\n const prevFocusedElement = event.relatedTarget as HTMLElement | null;\n const isFocusFromOutsideViewport = !providerContext.viewport.value?.contains(prevFocusedElement);\n if (isFocusFromOutsideViewport) emits('focusFromOutsideViewport');\n }\"\n >\n <slot />\n </VisuallyHidden>\n</template>\n"],"names":["injectToastProviderContext"],"mappings":";;;;;;;;;;AAIA,IAAA,MAAM,KAAQ,GAAA,MAAA;AAId,IAAA,MAAM,kBAAkBA,8CAA2B,EAAA;;;;;;;;;;;;;;;;;;;;;;;"}