From b2b1fe822f19ad537796a4ccac0ca0a6986beb9e Mon Sep 17 00:00:00 2001 From: Braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Wed, 20 Oct 2021 21:15:14 +0200 Subject: [PATCH] feat: add useStore and useHooks composables that provide default store/hooks --- examples/EdgeWithButton/ButtonEdge.vue | 16 +++- examples/Empty/EmptyExample.vue | 3 +- .../Background/Background.vue | 4 +- .../Controls/Controls.vue | 5 +- src/additional-components/MiniMap/MiniMap.vue | 6 +- .../ConnectionLine/ConnectionLine.vue | 4 +- src/components/Edges/Edge.vue | 9 +-- src/components/Handle/Handle.vue | 12 +-- src/components/Nodes/Node.vue | 9 ++- .../NodesSelection/NodesSelection.vue | 6 +- .../UserSelection/UserSelection.vue | 4 +- src/composables/index.ts | 2 + src/composables/useHandle.ts | 15 ++-- src/composables/useHooks.ts | 33 ++++++-- src/composables/useStore.ts | 18 +++++ src/composables/useUpdateNodeInternals.ts | 6 +- src/composables/useZoom.ts | 9 ++- src/composables/useZoomPanHelper.ts | 6 +- src/container/EdgeRenderer/EdgeRenderer.vue | 5 +- src/container/Flow/Flow.vue | 22 ++---- src/container/NodeRenderer/NodeRenderer.vue | 4 +- src/container/SelectionPane/SelectionPane.vue | 6 +- src/container/ZoomPane/ZoomPane.vue | 7 +- src/context/index.ts | 4 +- src/index.ts | 4 + src/store/index.ts | 6 +- src/types/hooks.ts | 77 ++++++++++--------- 27 files changed, 174 insertions(+), 128 deletions(-) create mode 100644 src/composables/useStore.ts diff --git a/examples/EdgeWithButton/ButtonEdge.vue b/examples/EdgeWithButton/ButtonEdge.vue index 04e2b8df..0ac85e56 100644 --- a/examples/EdgeWithButton/ButtonEdge.vue +++ b/examples/EdgeWithButton/ButtonEdge.vue @@ -1,5 +1,15 @@ @@ -184,6 +172,6 @@ const edgeTypes = createEdgeTypes({ ...defaultEdgeTypes, ...props.edgeTypes }) - + diff --git a/src/container/NodeRenderer/NodeRenderer.vue b/src/container/NodeRenderer/NodeRenderer.vue index 1cdec092..16b4cf72 100644 --- a/src/container/NodeRenderer/NodeRenderer.vue +++ b/src/container/NodeRenderer/NodeRenderer.vue @@ -2,7 +2,7 @@ import Node from '~/components/Nodes/Node.vue' import { NodeType, Node as TNode } from '~/types' import { getNodesInside } from '~/utils/graph' -import { Store } from '~/context' +import { useStore } from '~/composables' interface NodeRendererProps { nodeTypes: Record @@ -10,7 +10,7 @@ interface NodeRendererProps { const props = defineProps() -const store = inject(Store)! +const store = useStore() const getNodes = computed(() => store.onlyRenderVisibleElements diff --git a/src/container/SelectionPane/SelectionPane.vue b/src/container/SelectionPane/SelectionPane.vue index c98099a3..2eff11c8 100644 --- a/src/container/SelectionPane/SelectionPane.vue +++ b/src/container/SelectionPane/SelectionPane.vue @@ -3,8 +3,8 @@ import useKeyPress from '~/composables/useKeyPress' import { ElementId, FlowElement, KeyCode } from '~/types' import NodesSelection from '~/components/NodesSelection/NodesSelection.vue' import UserSelection from '~/components/UserSelection/UserSelection.vue' -import { Hooks, Store } from '~/context' import { getConnectedEdges, isNode } from '~/utils/graph' +import { useHooks, useStore } from '~/composables' interface SelectionPaneProps { selectionKeyCode?: KeyCode @@ -16,8 +16,8 @@ const props = withDefaults(defineProps(), { deleteKeyCode: 'Backspace', multiSelectionKeyCode: 'Meta', }) -const store = inject(Store)! -const hooks = inject(Hooks)! +const store = useStore() +const hooks = useHooks() const onClick = (event: MouseEvent) => { hooks.paneClick.trigger(event) diff --git a/src/container/ZoomPane/ZoomPane.vue b/src/container/ZoomPane/ZoomPane.vue index c236ec3b..2fd659a7 100644 --- a/src/container/ZoomPane/ZoomPane.vue +++ b/src/container/ZoomPane/ZoomPane.vue @@ -1,7 +1,6 @@