36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
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)) {
|
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
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 (process.server) return
|
|
if (!process.dev) return
|
|
|
|
// useDebugViewerEvents()
|
|
useDebugViewer()
|
|
}
|