diff --git a/src/additional-components/Controls/Controls.vue b/src/additional-components/Controls/Controls.vue index de9e5531..b9264c6d 100644 --- a/src/additional-components/Controls/Controls.vue +++ b/src/additional-components/Controls/Controls.vue @@ -16,19 +16,24 @@ export interface ControlProps extends HTMLAttributes { fitViewParams?: FitViewParams } +interface ControlEvents { + (event: 'zoom-in'): void + (event: 'zoom-out'): void + (event: 'fit-view'): void + (event: 'interaction-change', active: boolean): void +} + const props = withDefaults(defineProps(), { showZoom: true, showFitView: true, showInteractive: true, }) -// todo define types for events -const emit = defineEmits(['zoom-in', 'zoom-out', 'fit-view', 'interaction-change']) +const emit = defineEmits() const store = useStore() const { zoomIn, zoomOut, fitView } = useZoomPanHelper() const isInteractive = computed(() => store.nodesDraggable && store.nodesConnectable && store.elementsSelectable) -const mapClasses = ['vue-flow__controls'] const onZoomInHandler = () => { zoomIn() @@ -51,7 +56,7 @@ const onInteractiveChangeHandler = () => { }