Ver código fonte

fix(core): added error handling to extend

Alvaro 2 anos atrás
pai
commit
fcfbce9a03
1 arquivos alterados com 8 adições e 1 exclusões
  1. 8 1
      packages/tres/src/core/useCatalogue/index.ts

+ 8 - 1
packages/tres/src/core/useCatalogue/index.ts

@@ -1,6 +1,7 @@
-import { useInstanceCreator } from '/@/core'
 import { App, ref, Component, Ref, provide } from 'vue'
 import { App, ref, Component, Ref, provide } from 'vue'
 import * as THREE from 'three'
 import * as THREE from 'three'
+import { useInstanceCreator } from '/@/core'
+import { useLogger } from '/@/composables'
 import { TresCatalogue } from '/@/types'
 import { TresCatalogue } from '/@/types'
 
 
 const catalogue: Ref<TresCatalogue> = ref({ ...THREE })
 const catalogue: Ref<TresCatalogue> = ref({ ...THREE })
@@ -9,6 +10,7 @@ delete catalogue.value.Scene
 
 
 let localApp: App
 let localApp: App
 export function useCatalogue(app?: App, prefix = 'Tres') {
 export function useCatalogue(app?: App, prefix = 'Tres') {
+  const { logError } = useLogger()
   if (!localApp && app) {
   if (!localApp && app) {
     localApp = app
     localApp = app
   }
   }
@@ -17,6 +19,11 @@ export function useCatalogue(app?: App, prefix = 'Tres') {
   provide('catalogue', catalogue)
   provide('catalogue', catalogue)
 
 
   const extend = (objects: any) => {
   const extend = (objects: any) => {
+    if (!objects) {
+      logError('No objects provided to extend catalogue')
+      return
+    }
+
     catalogue.value = Object.assign(catalogue.value, objects)
     catalogue.value = Object.assign(catalogue.value, objects)
     const components = createComponentInstances(ref(objects))
     const components = createComponentInstances(ref(objects))