feat(primitives): add menu, dropdown-menu, context-menu, and menubar primitives
Implements WAI-ARIA APG-compliant headless menu primitive families: - menu: base primitive with MenuRoot, MenuContent, MenuItem, MenuCheckboxItem, MenuRadioGroup/Item, MenuSub, and helpers - dropdown-menu: DropdownMenuRoot with trigger anchoring - context-menu: ContextMenuRoot with right-click virtual anchor - menubar: MenubarRoot with keyboard navigation between menus Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
<script lang="ts">
|
||||
import type { MenuCheckboxItemEmits, MenuCheckboxItemProps } from '../menu';
|
||||
|
||||
export interface ContextMenuCheckboxItemProps extends MenuCheckboxItemProps {}
|
||||
export type ContextMenuCheckboxItemEmits = MenuCheckboxItemEmits;
|
||||
</script>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { MenuCheckboxItem } from '../menu';
|
||||
|
||||
const props = defineProps<ContextMenuCheckboxItemProps>();
|
||||
const emit = defineEmits<ContextMenuCheckboxItemEmits>();
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<MenuCheckboxItem
|
||||
v-bind="props"
|
||||
@select="emit('select', $event)"
|
||||
@update:checked="emit('update:checked', $event)"
|
||||
><slot /></MenuCheckboxItem>
|
||||
</template>
|
||||
Reference in New Issue
Block a user