index.ts 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import { stackFactory, flatStacksValue, strToParams } from '@/utils'
  2. import { ref } from 'vue'
  3. import type { FuseModel, TaggingPosition } from '@/store'
  4. export const viewModeStack = stackFactory(ref<'full' | 'auto'>('auto'))
  5. export const showToolbarStack = stackFactory(ref<boolean>(false))
  6. export const showHeadBarStack = stackFactory(ref<boolean>(true))
  7. export const showRightPanoStack = stackFactory(ref<boolean>(true))
  8. export const showLeftPanoStack = stackFactory(ref<boolean>(false))
  9. export const showLeftCtrlPanoStack = stackFactory(ref<boolean>(true))
  10. export const showRightCtrlPanoStack = stackFactory(ref<boolean>(true))
  11. export const showBottomBarStack = stackFactory(ref<boolean>(false))
  12. export const bottomBarHeightStack = stackFactory(ref<string>('60px'))
  13. export const showTaggingsStack = stackFactory(ref<boolean>(true))
  14. export const showMeasuresStack = stackFactory(ref<boolean>(false))
  15. export const currentModelStack = stackFactory(ref<FuseModel | null>(null))
  16. export const showModelsMapStack = stackFactory(ref<Map<FuseModel, boolean>>(new Map))
  17. export const modelsChangeStoreStack = stackFactory(ref<boolean>(false))
  18. export const showTaggingPositionsStack = stackFactory(ref<WeakSet<TaggingPosition>>(new WeakSet()))
  19. export const custom = flatStacksValue({
  20. viewMode: viewModeStack,
  21. showToolbar: showToolbarStack,
  22. showRightPano: showRightPanoStack,
  23. showLeftPano: showLeftPanoStack,
  24. showLeftCtrlPano: showLeftCtrlPanoStack,
  25. shwoRightCtrlPano: showRightCtrlPanoStack,
  26. showTaggings: showTaggingsStack,
  27. showMeasures: showMeasuresStack,
  28. currentModel: currentModelStack,
  29. showModelsMap: showModelsMapStack,
  30. modelsChangeStore: modelsChangeStoreStack,
  31. showTaggingPositions: showTaggingPositionsStack,
  32. showBottomBar: showBottomBarStack,
  33. bottomBarHeight: bottomBarHeightStack,
  34. showHeadBar: showHeadBarStack
  35. })
  36. export const params = strToParams(location.search) as unknown as Params
  37. params.caseId = Number(params.caseId)
  38. export type Params = {
  39. caseId: number,
  40. baseURL?: string,
  41. modelId?: string,
  42. token?: string
  43. }
  44. export const baseURL = params.baseURL ? params.baseURL : import.meta.env.DEV ? '/api' : ''
  45. export const getResource = (uri: string) => {
  46. if (~uri.indexOf('base64') || ~uri.indexOf('bolb') || ~uri.indexOf('//')) return uri
  47. return `${baseURL}/${uri}`
  48. }