83d8035dc2
* root + server * frontend * frontend-2 * dui3 * dui3 * tailwind theme * ui-components * preview service * viewer * viewer-sandbox * fileimport-service * webhook service * objectloader * shared * ui-components-nuxt * WIP full config * WIP full linter * eslint projectwide util * minor fix * removing redundant ci * clean up test errors * fixed prettier formatting * CI improvements * TSC lint fix * 'buildBatch' needs to be async since some batch types (like Text) require it. Removed a disabled liniting rule from ObjLoader * removed unnecessary void --------- Co-authored-by: AlexandruPopovici <alexandrupopoviciioan@gmail.com>
35 lines
962 B
TypeScript
35 lines
962 B
TypeScript
import { ViewerEvent } from '@speckle/viewer'
|
|
import { useInjectedViewerState } from '~~/lib/viewer/composables/setup'
|
|
import { useViewerEventListener } from '~~/lib/viewer/composables/viewer'
|
|
|
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
function useDebugViewerEvents() {
|
|
const logger = useLogger()
|
|
|
|
for (const [key, val] of Object.entries(ViewerEvent)) {
|
|
useViewerEventListener(val, (...args) => logger.debug(key, ...args))
|
|
}
|
|
}
|
|
|
|
function useDebugViewer() {
|
|
const state = useInjectedViewerState()
|
|
const {
|
|
viewer: { instance }
|
|
} = state
|
|
|
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
// @ts-expect-error
|
|
window.VIEWER = instance
|
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
// @ts-expect-error
|
|
window.VIEWER_STATE = () => state
|
|
}
|
|
|
|
export function setupDebugMode() {
|
|
if (import.meta.server) return
|
|
if (!import.meta.dev) return
|
|
|
|
// useDebugViewerEvents()
|
|
useDebugViewer()
|
|
}
|