Browse Source

fix: added controls and extend to state context (#355)

Alvaro Saburido 1 year ago
parent
commit
c2540a5506
1 changed files with 7 additions and 2 deletions
  1. 7 2
      src/composables/useTresContextProvider/index.ts

+ 7 - 2
src/composables/useTresContextProvider/index.ts

@@ -1,8 +1,9 @@
 import { toValue, useElementSize, useWindowSize } from '@vueuse/core';
-import { inject, provide, readonly, shallowRef, computed } from 'vue';
+import { inject, provide, readonly, shallowRef, computed, ref } from 'vue';
 import { useCamera } from '../useCamera';
-import { Camera, Raycaster, Scene, WebGLRenderer } from 'three';
+import { Camera, EventDispatcher, Raycaster, Scene, WebGLRenderer } from 'three';
 import { UseRendererOptions, useRenderer } from '../useRenderer';
+import { extend } from '../../core/catalogue';
 
 import type { ComputedRef, DeepReadonly, MaybeRef, MaybeRefOrGetter, Ref, ShallowRef } from 'vue';
 
@@ -12,6 +13,8 @@ export type TresContext = {
   cameras: DeepReadonly<Ref<Camera[]>>;
   renderer: ShallowRef<WebGLRenderer>
   raycaster: ShallowRef<Raycaster>
+  controls: Ref<(EventDispatcher & { enabled: boolean }) | null>
+  extend: (objects: any) => void
   addCamera: (camera: Camera) => void;
   removeCamera: (camera: Camera) => void
   setCameraActive: (cameraOrUuid: Camera | string) => void;
@@ -75,6 +78,8 @@ export function useTresContextProvider({
     cameras: readonly(cameras),
     renderer,
     raycaster: shallowRef(new Raycaster()),
+    controls: ref(null),
+    extend,
     addCamera,
     removeCamera,
     setCameraActive,