@qispace/vue3-player 0.1.13 → 0.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,17 +1,17 @@
1
- import type { BuildingCallback, CanGoToBuildingCallback } from './types';
2
- import type { ColorCallback, CdnFileResolverCallback } from '../types';
1
+ import type { BuildingChooserData, CanGoToBuildingCallback } from './types';
2
+ import type { ColorCallback, CdnFileResolverCallback, I18NConfig } from '../types';
3
3
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
4
4
  showCards?: boolean;
5
5
  colorCallback?: ColorCallback;
6
- buildingCallback?: BuildingCallback;
7
6
  cdnFileResolver: CdnFileResolverCallback;
8
- i18n?: any;
7
+ i18nConfig?: I18NConfig;
9
8
  interactiveDesktop?: boolean;
10
9
  interactiveMobile?: boolean;
11
10
  useSvg?: boolean;
12
11
  buildingChooserTimeOfDay?: string;
13
12
  canGoToBuildingCallback?: CanGoToBuildingCallback;
14
13
  customOverlayContent?: string;
14
+ buildingChooserData?: Pick<BuildingChooserData, "lookupFilename" | "cameraRotation" | "buildings" | "timeSamples" | "days">;
15
15
  }>, {
16
16
  showCards: boolean;
17
17
  colorCallback: () => {
@@ -27,21 +27,21 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
27
27
  useSvg: boolean;
28
28
  canGoToBuildingCallback: () => true;
29
29
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
30
- goToBuilding: (args_0: any) => void;
31
- hoverOverBuilding: (args_0: any) => void;
32
- hoverOutBuilding: (args_0: any) => void;
30
+ goToBuilding: (buildingId: string) => void;
31
+ hoverOverBuilding: (buildingId: string) => void;
32
+ hoverOutBuilding: (buildingId: string) => void;
33
33
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
34
34
  showCards?: boolean;
35
35
  colorCallback?: ColorCallback;
36
- buildingCallback?: BuildingCallback;
37
36
  cdnFileResolver: CdnFileResolverCallback;
38
- i18n?: any;
37
+ i18nConfig?: I18NConfig;
39
38
  interactiveDesktop?: boolean;
40
39
  interactiveMobile?: boolean;
41
40
  useSvg?: boolean;
42
41
  buildingChooserTimeOfDay?: string;
43
42
  canGoToBuildingCallback?: CanGoToBuildingCallback;
44
43
  customOverlayContent?: string;
44
+ buildingChooserData?: Pick<BuildingChooserData, "lookupFilename" | "cameraRotation" | "buildings" | "timeSamples" | "days">;
45
45
  }>, {
46
46
  showCards: boolean;
47
47
  colorCallback: () => {
@@ -57,17 +57,16 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
57
57
  useSvg: boolean;
58
58
  canGoToBuildingCallback: () => true;
59
59
  }>>> & {
60
- onGoToBuilding?: (args_0: any) => any;
61
- onHoverOverBuilding?: (args_0: any) => any;
62
- onHoverOutBuilding?: (args_0: any) => any;
60
+ onGoToBuilding?: (buildingId: string) => any;
61
+ onHoverOverBuilding?: (buildingId: string) => any;
62
+ onHoverOutBuilding?: (buildingId: string) => any;
63
63
  }, {
64
64
  colorCallback: ColorCallback;
65
65
  showCards: boolean;
66
+ canGoToBuildingCallback: CanGoToBuildingCallback;
66
67
  interactiveDesktop: boolean;
67
68
  interactiveMobile: boolean;
68
69
  useSvg: boolean;
69
- buildingCallback: BuildingCallback;
70
- canGoToBuildingCallback: CanGoToBuildingCallback;
71
70
  }, {}>, Partial<Record<string, (_: any) => any>>>;
72
71
  export default _default;
73
72
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -1,9 +1,8 @@
1
- import type { BuildingCallback, CanGoToBuildingCallback } from './types';
1
+ import type { BuildingChooserData, CanGoToBuildingCallback } from './types';
2
2
  import type { ColorCallback, CdnFileResolverCallback, I18NConfig } from '../types';
3
3
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
4
4
  showCards?: boolean;
5
5
  colorCallback?: ColorCallback;
6
- buildingCallback?: BuildingCallback;
7
6
  canGoToBuildingCallback?: CanGoToBuildingCallback;
8
7
  buildingChooserTimeOfDay?: string;
9
8
  cdnFileResolver: CdnFileResolverCallback;
@@ -11,6 +10,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
11
10
  interactiveDesktop?: boolean;
12
11
  interactiveMobile?: boolean;
13
12
  customOverlayContent?: string;
13
+ buildingChooserData?: Pick<BuildingChooserData, "lookupFilename" | "cameraRotation" | "buildings" | "timeSamples" | "days">;
14
14
  }>, {
15
15
  showCards: boolean;
16
16
  colorCallback: () => {
@@ -20,18 +20,16 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
20
20
  a: number;
21
21
  s: number;
22
22
  };
23
- buildingCallback: (buildingId: string) => string;
24
23
  canGoToBuildingCallback: () => true;
25
24
  interactiveDesktop: boolean;
26
25
  interactiveMobile: boolean;
27
26
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
28
- goToBuilding: (args_0: any) => void;
29
- hoverOverBuilding: (args_0: any) => void;
30
- hoverOutBuilding: (args_0: any) => void;
27
+ goToBuilding: (buildingId: string) => void;
28
+ hoverOverBuilding: (buildingId: string) => void;
29
+ hoverOutBuilding: (buildingId: string) => void;
31
30
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
32
31
  showCards?: boolean;
33
32
  colorCallback?: ColorCallback;
34
- buildingCallback?: BuildingCallback;
35
33
  canGoToBuildingCallback?: CanGoToBuildingCallback;
36
34
  buildingChooserTimeOfDay?: string;
37
35
  cdnFileResolver: CdnFileResolverCallback;
@@ -39,6 +37,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
39
37
  interactiveDesktop?: boolean;
40
38
  interactiveMobile?: boolean;
41
39
  customOverlayContent?: string;
40
+ buildingChooserData?: Pick<BuildingChooserData, "lookupFilename" | "cameraRotation" | "buildings" | "timeSamples" | "days">;
42
41
  }>, {
43
42
  showCards: boolean;
44
43
  colorCallback: () => {
@@ -48,28 +47,31 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
48
47
  a: number;
49
48
  s: number;
50
49
  };
51
- buildingCallback: (buildingId: string) => string;
52
50
  canGoToBuildingCallback: () => true;
53
51
  interactiveDesktop: boolean;
54
52
  interactiveMobile: boolean;
55
53
  }>>> & {
56
- onGoToBuilding?: (args_0: any) => any;
57
- onHoverOverBuilding?: (args_0: any) => any;
58
- onHoverOutBuilding?: (args_0: any) => any;
54
+ onGoToBuilding?: (buildingId: string) => any;
55
+ onHoverOverBuilding?: (buildingId: string) => any;
56
+ onHoverOutBuilding?: (buildingId: string) => any;
59
57
  }, {
60
58
  colorCallback: ColorCallback;
61
59
  showCards: boolean;
60
+ canGoToBuildingCallback: CanGoToBuildingCallback;
62
61
  interactiveDesktop: boolean;
63
62
  interactiveMobile: boolean;
64
- buildingCallback: BuildingCallback;
65
- canGoToBuildingCallback: CanGoToBuildingCallback;
66
63
  }, {}>, {
67
64
  default?(_: {
68
- building: any;
65
+ building: string;
69
66
  canGoToBuilding: boolean;
70
67
  goToBuilding: () => void;
71
- pos: any;
72
- isHoverable: any;
68
+ pos: {
69
+ x: number;
70
+ y: number;
71
+ width: number;
72
+ height: number;
73
+ };
74
+ isHoverable: boolean;
73
75
  close: () => any;
74
76
  }): any;
75
77
  }>;
@@ -1,7 +1,11 @@
1
1
  import type { Color } from '../types';
2
+ declare function setupDraw(): void;
2
3
  declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
3
4
  imageUrl: string;
4
- dimensions: any;
5
+ dimensions: {
6
+ width: number;
7
+ height: number;
8
+ };
5
9
  color?: Color;
6
10
  }>, {
7
11
  color: () => {
@@ -11,9 +15,14 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
11
15
  a: number;
12
16
  s: number;
13
17
  };
14
- }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
18
+ }>, {
19
+ setupDraw: typeof setupDraw;
20
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
15
21
  imageUrl: string;
16
- dimensions: any;
22
+ dimensions: {
23
+ width: number;
24
+ height: number;
25
+ };
17
26
  color?: Color;
18
27
  }>, {
19
28
  color: () => {
@@ -3,7 +3,10 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
3
3
  activeIndex: number;
4
4
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5
5
  reset: () => void;
6
- resize: (args_0: any) => void;
6
+ resize: (args_0: {
7
+ width: number;
8
+ height: number;
9
+ }) => void;
7
10
  ready: () => void;
8
11
  preloaded: () => void;
9
12
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
@@ -11,7 +14,10 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
11
14
  activeIndex: number;
12
15
  }>>> & {
13
16
  onReset?: () => any;
14
- onResize?: (args_0: any) => any;
17
+ onResize?: (args_0: {
18
+ width: number;
19
+ height: number;
20
+ }) => any;
15
21
  onReady?: () => any;
16
22
  onPreloaded?: () => any;
17
23
  }, {}, {}>;
@@ -1,19 +1,20 @@
1
+ import DayOfYearSelector from '../../lib/buildingPicker/DayOfYearSelector';
1
2
  declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
2
3
  modelValue: number;
3
- dateSelector: any;
4
+ dateSelector: DayOfYearSelector;
4
5
  isLoading?: boolean;
5
6
  }>, {
6
7
  isLoading: boolean;
7
8
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
- "update:modelValue": (args_0: any) => void;
9
+ "update:modelValue": (args_0: number) => void;
9
10
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
10
11
  modelValue: number;
11
- dateSelector: any;
12
+ dateSelector: DayOfYearSelector;
12
13
  isLoading?: boolean;
13
14
  }>, {
14
15
  isLoading: boolean;
15
16
  }>>> & {
16
- "onUpdate:modelValue"?: (args_0: any) => any;
17
+ "onUpdate:modelValue"?: (args_0: number) => any;
17
18
  }, {
18
19
  isLoading: boolean;
19
20
  }, {}>;
@@ -1,9 +1,8 @@
1
- import type { BuildingCallback, CanGoToBuildingCallback } from './types';
2
- import type { ColorCallback, CdnFileResolverCallback, I18NConfig } from '../types';
1
+ import type { BuildingChooserData, CanGoToBuildingCallback } from './types';
2
+ import { type ColorCallback, type CdnFileResolverCallback, type I18NConfig } from '../types';
3
3
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
4
4
  showCards?: boolean;
5
5
  colorCallback?: ColorCallback;
6
- buildingCallback?: BuildingCallback;
7
6
  canGoToBuildingCallback?: CanGoToBuildingCallback;
8
7
  buildingChooserTimeOfDay?: string;
9
8
  cdnFileResolver: CdnFileResolverCallback;
@@ -11,6 +10,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
11
10
  interactiveDesktop?: boolean;
12
11
  interactiveMobile?: boolean;
13
12
  customOverlayContent?: string;
13
+ buildingChooserData?: Pick<BuildingChooserData, "lookupFilename" | "cameraRotation" | "buildings" | "timeSamples" | "days">;
14
14
  }>, {
15
15
  showCards: boolean;
16
16
  colorCallback: () => {
@@ -20,18 +20,16 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
20
20
  a: number;
21
21
  s: number;
22
22
  };
23
- buildingCallback: (buildingId: string) => string;
24
23
  canGoToBuildingCallback: () => true;
25
24
  interactiveDesktop: boolean;
26
25
  interactiveMobile: boolean;
27
26
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
28
- goToBuilding: (args_0: any) => void;
29
- hoverOverBuilding: (args_0: any) => void;
30
- hoverOutBuilding: (args_0: any) => void;
27
+ goToBuilding: (buildingId: string) => void;
28
+ hoverOverBuilding: (buildingId: string) => void;
29
+ hoverOutBuilding: (buildingId: string) => void;
31
30
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
32
31
  showCards?: boolean;
33
32
  colorCallback?: ColorCallback;
34
- buildingCallback?: BuildingCallback;
35
33
  canGoToBuildingCallback?: CanGoToBuildingCallback;
36
34
  buildingChooserTimeOfDay?: string;
37
35
  cdnFileResolver: CdnFileResolverCallback;
@@ -39,6 +37,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
39
37
  interactiveDesktop?: boolean;
40
38
  interactiveMobile?: boolean;
41
39
  customOverlayContent?: string;
40
+ buildingChooserData?: Pick<BuildingChooserData, "lookupFilename" | "cameraRotation" | "buildings" | "timeSamples" | "days">;
42
41
  }>, {
43
42
  showCards: boolean;
44
43
  colorCallback: () => {
@@ -48,24 +47,22 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
48
47
  a: number;
49
48
  s: number;
50
49
  };
51
- buildingCallback: (buildingId: string) => string;
52
50
  canGoToBuildingCallback: () => true;
53
51
  interactiveDesktop: boolean;
54
52
  interactiveMobile: boolean;
55
53
  }>>> & {
56
- onGoToBuilding?: (args_0: any) => any;
57
- onHoverOverBuilding?: (args_0: any) => any;
58
- onHoverOutBuilding?: (args_0: any) => any;
54
+ onGoToBuilding?: (buildingId: string) => any;
55
+ onHoverOverBuilding?: (buildingId: string) => any;
56
+ onHoverOutBuilding?: (buildingId: string) => any;
59
57
  }, {
60
58
  colorCallback: ColorCallback;
61
59
  showCards: boolean;
60
+ canGoToBuildingCallback: CanGoToBuildingCallback;
62
61
  interactiveDesktop: boolean;
63
62
  interactiveMobile: boolean;
64
- buildingCallback: BuildingCallback;
65
- canGoToBuildingCallback: CanGoToBuildingCallback;
66
63
  }, {}>, {
67
64
  default?(_: {
68
- building: any;
65
+ building: string;
69
66
  canGoToBuilding: boolean;
70
67
  goToBuilding: () => void;
71
68
  pos: {
@@ -74,7 +71,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
74
71
  width: number;
75
72
  height: number;
76
73
  };
77
- isHoverable: any;
74
+ isHoverable: boolean;
78
75
  close: () => any;
79
76
  }): any;
80
77
  }>;
@@ -1,2 +1,59 @@
1
- export type BuildingCallback = (publicId: string) => any;
2
1
  export type CanGoToBuildingCallback = (building: any) => boolean;
2
+ export type BuildingChooserData = {
3
+ version: number;
4
+ offsetUTC?: number;
5
+ latitude?: number;
6
+ longitude?: number;
7
+ buildings: Array<{
8
+ id: string;
9
+ index: number;
10
+ name: string;
11
+ overlayFilename: string;
12
+ }>;
13
+ cameraPosition: {
14
+ x: number;
15
+ y: number;
16
+ z: number;
17
+ normalized?: {
18
+ x: number;
19
+ y: number;
20
+ z: number;
21
+ };
22
+ };
23
+ cameraRotation: {
24
+ x: number;
25
+ y: number;
26
+ z: number;
27
+ normalized?: {
28
+ x: number;
29
+ y: number;
30
+ z: number;
31
+ };
32
+ };
33
+ cameraFov: number;
34
+ lookupFilename: string;
35
+ days?: Array<{
36
+ dayOfYear: number;
37
+ timeSamples: Array<{
38
+ timeInHours: number;
39
+ filename: string;
40
+ }>;
41
+ }>;
42
+ timeSamples?: Array<{
43
+ timeInHours: number;
44
+ filename: string;
45
+ }>;
46
+ };
47
+ export type BuildingChooserConfig = {
48
+ mapImage: HTMLImageElement;
49
+ viewLongitude: number;
50
+ buildingIds: Array<string>;
51
+ buildingOverlays: Array<{
52
+ id: string;
53
+ url: string;
54
+ }>;
55
+ backgrounds: Array<{
56
+ urls: Array<string>;
57
+ referenceDate: Date;
58
+ }>;
59
+ };
@@ -10,12 +10,12 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
10
10
  mouseSensitivity: number;
11
11
  isInIframe: boolean;
12
12
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
- newSizeCallback: (args_0: number, args_1: number) => void;
14
13
  newCameraCallback: (args_0: any) => void;
15
14
  newRotationCallback: (args_0: any) => void;
16
15
  newFloorCallback: (args_0: any) => void;
17
16
  newFovCallback: (args_0: any) => void;
18
17
  playerApiCallback: (args_0: any) => void;
18
+ newSizeCallback: (args_0: number, args_1: number) => void;
19
19
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
20
20
  fileLoader?: any;
21
21
  rootUrl: string;
@@ -28,12 +28,12 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
28
28
  mouseSensitivity: number;
29
29
  isInIframe: boolean;
30
30
  }>>> & {
31
- onNewSizeCallback?: (args_0: number, args_1: number) => any;
32
31
  onNewCameraCallback?: (args_0: any) => any;
33
32
  onNewRotationCallback?: (args_0: any) => any;
34
33
  onNewFloorCallback?: (args_0: any) => any;
35
34
  onNewFovCallback?: (args_0: any) => any;
36
35
  onPlayerApiCallback?: (args_0: any) => any;
36
+ onNewSizeCallback?: (args_0: number, args_1: number) => any;
37
37
  }, {
38
38
  mouseSensitivity: number;
39
39
  isInIframe: boolean;
@@ -118,9 +118,6 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
118
118
  onOnInteriorUpdate?: (args_0: any) => any;
119
119
  onOnCameraUpdate?: (args_0: any, args_1: any) => any;
120
120
  }, {
121
- showFullScreen: boolean;
122
- showShare: boolean;
123
- defaultWaypointIndex: number;
124
121
  mouseSensitivity: number;
125
122
  isInIframe: boolean;
126
123
  validInteriorIds: Array<any>;
@@ -129,10 +126,13 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
129
126
  showCarousel: boolean;
130
127
  showTimeOfDay: boolean;
131
128
  showCompass: boolean;
129
+ showFullScreen: boolean;
132
130
  showSnapshot: boolean;
131
+ showShare: boolean;
133
132
  showInteriorOptions: boolean;
134
133
  showMiniMap: boolean;
135
134
  showFloorLevel: boolean;
135
+ defaultWaypointIndex: number;
136
136
  defaultViewMode: string;
137
137
  adminMode: boolean;
138
138
  playerSettings: any;
@@ -1,7 +1,8 @@
1
+ import CanvasRaster from './CanvasRaster';
1
2
  export default class BuildingMap {
2
3
  private _buildingIds;
3
4
  static empty(): BuildingMap;
4
- constructor(buildingIds: any);
5
- getBuildingId(raster: any, x: any, y: any): any;
6
- _getBuildingIndex(raster: any, x: any, y: any): any;
5
+ constructor(buildingIds: Array<string>);
6
+ getBuildingId(raster: CanvasRaster, x: number, y: number): string;
7
+ _getBuildingIndex(raster: CanvasRaster, x: number, y: number): number;
7
8
  }
@@ -1,27 +1,31 @@
1
+ import { CdnFileResolverCallback } from '../../vue-components';
2
+ import { BuildingChooserConfig, BuildingChooserData } from '../../components/buildingPicker/types';
1
3
  export default class BuildingPickerResourceProvider {
2
4
  private _cdnFileResolver;
3
5
  private _resourceLoader;
4
- constructor(cdnFileResolver: any);
5
- constructFileUrl(filename: any): any;
6
- loadConfigFile(): any;
7
- loadBuildingMapImage(config: any): any;
8
- getViewLongitude(config: any): any;
9
- getBuildingData(config: any): {
10
- buildingIds: any;
11
- buildingOverlays: any;
6
+ constructor(cdnFileResolver: CdnFileResolverCallback);
7
+ constructFileUrl(filename: string): string;
8
+ loadBuildingMapImage(config: Pick<BuildingChooserData, 'lookupFilename'>): Promise<HTMLImageElement>;
9
+ getViewLongitude(config: Pick<BuildingChooserData, 'cameraRotation'>): number;
10
+ getBuildingData(config: Pick<BuildingChooserData, 'buildings'>): {
11
+ buildingIds: Array<string>;
12
+ buildingOverlays: Array<{
13
+ id: string;
14
+ url: string;
15
+ }>;
12
16
  };
13
- getBackgroundImageData(config: any): any;
14
- processMultipleDays(dayRecords: any): any;
15
- processTimeSamples(dayOfYear: any, timeSamples: any): {
16
- urls: any;
17
+ getBackgroundImageData(config: Pick<BuildingChooserData, 'timeSamples' | 'days'>): Array<{
18
+ urls: Array<string>;
17
19
  referenceDate: Date;
18
- };
19
- makeReferenceDate(dayOfYear: any): Date;
20
- loadBuildingChooser(): Promise<{
21
- mapImage: any;
22
- viewLongitude: any;
23
- buildingIds: any;
24
- buildingOverlays: any;
25
- backgrounds: any;
26
20
  }>;
21
+ processMultipleDays(dayRecords: BuildingChooserData['days']): {
22
+ urls: string[];
23
+ referenceDate: Date;
24
+ }[];
25
+ processTimeSamples(dayOfYear: number, timeSamples: BuildingChooserData['timeSamples']): {
26
+ urls: string[];
27
+ referenceDate: Date;
28
+ };
29
+ makeReferenceDate(dayOfYear: number): Date;
30
+ loadBuildingChooser(config?: Pick<BuildingChooserData, 'lookupFilename' | 'cameraRotation' | 'buildings' | 'timeSamples' | 'days'>): Promise<null | BuildingChooserConfig>;
27
31
  }
@@ -2,7 +2,7 @@ export default class CanvasRaster {
2
2
  private _mapImage;
3
3
  private _context;
4
4
  static empty(): CanvasRaster;
5
- constructor(mapImage: any);
6
- update(canvas: any): void;
7
- getPixel(x: any, y: any): any;
5
+ constructor(mapImage: HTMLImageElement);
6
+ update(canvas: HTMLCanvasElement): void;
7
+ getPixel(x: number, y: number): Array<number> | Uint8ClampedArray;
8
8
  }
@@ -6,7 +6,7 @@ export default class DayOfYearSelector {
6
6
  selectIndex(value: any): void;
7
7
  get dates(): any;
8
8
  get hasMultipleDates(): boolean;
9
- get selectedIndex(): any;
9
+ get selectedIndex(): number;
10
10
  get selectedDate(): any;
11
11
  get imageUrls(): any;
12
12
  }
@@ -1,8 +1,8 @@
1
1
  export default class ResourceLoader {
2
2
  static loadJson<T = any>(url: string): Promise<T>;
3
- static loadImage(url: string): Promise<unknown>;
3
+ static loadImage(url: string): Promise<HTMLImageElement>;
4
4
  static loadImageData(url: string): Promise<string>;
5
5
  loadJson<T = any>(url: string): Promise<T>;
6
- loadImage(url: string): Promise<unknown>;
6
+ loadImage(url: string): Promise<HTMLImageElement>;
7
7
  loadImageData(url: string): Promise<string>;
8
8
  }
@@ -3,9 +3,9 @@ import { VApartmentChooser, VBuildingChooser, VVirtualTour, VFloatingCard, VHove
3
3
  import { ResourceLoader } from './lib';
4
4
  import type { CdnFileResolverCallback, Color, ColorCallback, HoverState, I18NConfig, Pos } from './components/types';
5
5
  import type { ApartmentChooserDataInitializer, ApartmentChooserData, CanGoToUnitCallback, SceneData, UnitRenderer } from './components/apartmentChooser/types';
6
- import type { BuildingCallback, CanGoToBuildingCallback } from './components/buildingPicker/types';
6
+ import type { BuildingChooserData, BuildingChooserConfig, CanGoToBuildingCallback } from './components/buildingPicker/types';
7
7
  declare const _default: {
8
8
  install: (app: App) => void;
9
9
  };
10
10
  export default _default;
11
- export { VApartmentChooser, VBuildingChooser, VVirtualTour, VFloatingCard, VHoverProbe, VNorthDirection, VZoomBox, ResourceLoader, CdnFileResolverCallback, Color, ColorCallback, HoverState, I18NConfig, Pos, ApartmentChooserDataInitializer, ApartmentChooserData, CanGoToUnitCallback, SceneData, UnitRenderer, BuildingCallback, CanGoToBuildingCallback, };
11
+ export { VApartmentChooser, VBuildingChooser, VVirtualTour, VFloatingCard, VHoverProbe, VNorthDirection, VZoomBox, ResourceLoader, CdnFileResolverCallback, Color, ColorCallback, HoverState, I18NConfig, Pos, ApartmentChooserDataInitializer, ApartmentChooserData, CanGoToUnitCallback, SceneData, UnitRenderer, BuildingChooserData, BuildingChooserConfig, CanGoToBuildingCallback, };
@@ -1 +1 @@
1
- @media (hover: hover){.hover-check[data-v-eb9b348d]{display:none}}#canvas[data-v-392566da]{position:absolute;top:0;width:100%;-webkit-user-select:none;user-select:none;touch-action:none;padding-top:56.25%}#canvas-mask[data-v-392566da]{position:absolute;top:0;max-width:100%;z-index:4;-webkit-user-select:none;user-select:none}@media only screen and (min-width: 1280px){#canvas[data-v-392566da]{border-radius:10px}}#container[data-v-7f524ad6]{position:absolute;top:0;width:100%;-webkit-user-select:none;user-select:none;touch-action:none;padding-top:56.25%}.svg-container[data-v-7f524ad6]{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.svg-container[data-v-7f524ad6],svg[data-v-7f524ad6]{position:absolute;left:0;top:0;width:100%;height:100%;z-index:10000}svg g[data-v-7f524ad6] path{cursor:pointer;stroke-width:inherit!important;stroke-opacity:inherit!important;stroke:inherit!important;fill:inherit!important;fill-opacity:inherit!important;transition-property:fill-opacity,fill;transition-duration:.25s;transition-timing-function:ease-in-out}@media only screen and (min-width: 1280px){#canvas[data-v-7f524ad6]{border-radius:10px}}.v-btn[data-v-2c22490f]{background-color:#fff}.frame-container[data-v-66e34700]{position:relative;max-width:100%;top:0;left:0;bottom:185px;padding-top:56%;z-index:1;overflow:hidden}.frame-image[data-v-66e34700]{position:absolute;top:0;width:100%;height:100%}.frame-image img[data-v-66e34700]{min-width:100%;max-width:100%;z-index:0}#image-stack picture[data-v-66e34700]{visibility:hidden}#image-stack picture.show[data-v-66e34700]{visibility:visible}.fill-parent[data-v-66e34700]{position:absolute;top:0;bottom:0;left:0;right:0}.floating-card[data-v-0695e74f]{position:absolute;left:0;top:0;z-index:10;display:flex}.is-not-hoverable[data-v-0695e74f]{position:relative;width:100%}.top-left[data-v-0695e74f]{transform-origin:top left;transform:translate(8px) translateY(8px) scale(.9)}.top-right[data-v-0695e74f]{transform-origin:top right;transform:translate(-100%) translate(-8px) translateY(8px) scale(.9)}.bottom-left[data-v-0695e74f]{transform-origin:bottom left;transform:translateY(-100%) translate(8px) translateY(-8px) scale(.9)}.bottom-right[data-v-0695e74f]{transform-origin:bottom right;transform:translateY(-100%) translate(-100%) translate(-8px) translateY(-8px) scale(.9)}.v-dialog__content[data-v-0695e74f]{align-items:flex-start}.zoom-box-container[data-v-52f62ef2]{position:absolute;width:100%;height:100%;left:0;top:0;overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:none}.zoom-box[data-v-52f62ef2]{width:100%;height:100%;-webkit-user-select:none;user-select:none;touch-action:none}.interactive-viewer[data-v-b0fb223d]{padding-top:56.65%;position:relative}.fill-parent[data-v-b0fb223d]{position:absolute;top:0;bottom:0;left:0;right:0}.navigation[data-v-b0fb223d]{position:absolute;width:100%;bottom:32px;z-index:99;padding:0 20px;display:flex;justify-content:center}@media only screen and (max-width: 600px){.navigation[data-v-b0fb223d]{bottom:12px}}.sunsim-time-label[data-v-0d8001a3]{color:#000;vertical-align:top}.sunsim-date[data-v-0d8001a3]{background:#fff;border-radius:30px;min-height:36px;min-width:170px;display:flex;align-content:center;white-space:nowrap}.day-selector[data-v-0d8001a3]{margin-top:0}.day-selector[data-v-0d8001a3] .v-field__outline{display:none}.day-selector[data-v-0d8001a3] .v-field__input{padding-top:2px}.day-selector[data-v-0d8001a3] .v-field__append-inner{padding-top:5px!important}.day-selector.v-text-field[data-v-0d8001a3] .v-input__control>.v-input__slot:before{border-style:none}.day-selector.v-text-field[data-v-0d8001a3] .v-input__control>.v-input__slot:after{border-style:none}.sunsim-slider[data-v-0d8001a3] .v-slider-track__background{background:linear-gradient(270deg,#8183c2,#ffb9b9 20.01%,#b2dfff 40.1%,#b2dfff 59.85%,#ffba96 79.96%,#8183c2)!important}.sunsim-bar-wrapper{display:flex;position:absolute;width:60%;min-width:400px;top:12px;left:0;z-index:3;touch-action:none;pointer-events:none}.sunsim-wrapper{width:100%;background:#fff;border-radius:30px;padding:5px;min-height:16px;z-index:3}.sunsim-bar-wrapper .sunsim-date{margin-right:12px;margin-left:12px}.sunsim-wrapper,.sunsim-date{touch-action:auto;pointer-events:all}.sunsim-wrapper .mdi-white-balance-sunny{color:#ffab02;vertical-align:baseline;font-size:20px}@media only screen and (max-width: 980px) and (min-width: 500px){.sunsim-bar-wrapper{top:101%;width:100%}.sunsim-bar-wrapper .sunsim-date{margin-left:0}}@media only screen and (max-width: 980px) and (min-width: 500px) and (orientation: landscape){.sunsim-bar-wrapper{top:calc(100% + 8px);width:100%}.sunsim-bar-wrapper .sunsim-date{margin-left:0}.sunsim-bar-wrapper .sunsim-date,.sunsim-bar-wrapper .sunsim-wrapper{box-shadow:0 0 7px 1px #aaa}}@media only screen and (max-width: 500px){.sunsim-bar-wrapper{height:calc(100% + 84px);top:0;width:100%;flex-direction:column;justify-content:space-between;margin:-42px 0 0;padding:0;left:0;z-index:0;min-width:100%}.sunsim-bar-wrapper .sunsim-date{margin-right:0;margin-left:0}.sunsim-bar-wrapper .sunsim-date,.sunsim-bar-wrapper .sunsim-wrapper{width:100%;border-radius:0;left:0;margin-left:0!important;box-shadow:0 0 7px 1px #aaa}}.image-instance[data-v-1dc6128e]{position:absolute;width:100%;opacity:0}.image-instance.active[data-v-1dc6128e]{opacity:1}.north-indicator[data-v-a0325460]{position:absolute;right:0;top:0;height:42px;width:42px;margin-top:12px;margin-right:8px}.image-container[data-v-a0325460]{position:relative}.image-instances[data-v-a0325460]{position:relative;width:100%;height:100%}canvas[data-v-a0325460]{position:absolute;left:0;top:0;z-index:2;opacity:0}.fill-parent[data-v-a0325460]{position:absolute;top:0;bottom:0;left:0;right:0}.svg-container[data-v-a0325460]{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.svg-container[data-v-a0325460],svg[data-v-a0325460]{position:absolute;left:0;top:0;width:100%;height:100%;z-index:10000}svg g[data-v-a0325460] path{cursor:pointer;stroke-width:inherit!important;stroke-opacity:inherit!important;stroke:inherit!important;fill:inherit!important;fill-opacity:inherit!important;transition-property:fill-opacity,fill;transition-duration:.25s;transition-timing-function:ease-in-out}svg g.restricted[data-v-a0325460] path{cursor:default!important}@media only screen and (max-width: 980px) and (min-width: 500px) and (orientation: landscape){div.image-container[data-v-a0325460]{margin-top:44px}}@media only screen and (max-width: 500px){div.image-container[data-v-a0325460]{margin-top:44px;margin-bottom:44px}}.overlay[data-v-7f7df838]{z-index:1!important;opacity:1;transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.north-indicator[data-v-dab168c1]{position:absolute;right:0;top:0;height:42px;width:42px;margin-top:12px;margin-right:8px}.image-container[data-v-dab168c1]{position:relative}.image-instances[data-v-dab168c1]{position:relative;width:100%;height:100%}canvas[data-v-dab168c1]{position:absolute;left:0;top:0;z-index:2;opacity:0}.fill-parent[data-v-dab168c1]{position:absolute;top:0;bottom:0;left:0;right:0}@media only screen and (max-width: 980px) and (min-width: 500px) and (orientation: landscape){div.image-container[data-v-dab168c1]{margin-top:44px}}@media only screen and (max-width: 500px){div.image-container[data-v-dab168c1]{margin-top:44px;margin-bottom:44px}}#player-wrapper[data-v-54e6a7ef]{position:relative;width:100%;height:100%}#player-sizer[data-v-54e6a7ef]{width:100%;height:100%;display:flex;justify-content:center;align-items:center}div#main-canvas[data-v-54e6a7ef]{width:100%;height:100%}.player-control[data-v-54e6a7ef]{display:flex;position:absolute;z-index:3}#controls-top-left[data-v-54e6a7ef]{top:10px;left:10px}#controls-top-center[data-v-54e6a7ef]{top:10px;left:50%;transform:translate(-50%);z-index:4;flex-direction:column}#controls-top-right[data-v-54e6a7ef]{top:10px;right:10px;justify-content:flex-end;align-content:flex-end}#controls-center-left[data-v-54e6a7ef]{left:10px;top:50%;transform:translateY(-50%)}#controls-center-center[data-v-54e6a7ef]{top:50%;left:50%;transform:translate(-50%,-50%);align-items:center;justify-content:space-around;z-index:20}#controls-center-right[data-v-54e6a7ef]{top:50%;right:10px;transform:translateY(-50%);justify-content:flex-end;align-items:center}#controls-bottom-left[data-v-54e6a7ef]{bottom:10px;left:10px;z-index:5}#controls-bottom-center[data-v-54e6a7ef]{bottom:10px;left:50%;transform:translate(-50%);align-items:flex-end;justify-content:space-around;z-index:4}#controls-bottom-right[data-v-54e6a7ef]{bottom:10px;right:10px;justify-content:flex-end;align-content:flex-end;align-items:flex-end;z-index:5}.v-card[data-v-ad2125d1]{transition:box-shadow .3s ease-in-out;border:2px solid transparent}[data-v-ad2125d1] .v-slide-group__content{justify-content:center}[data-v-ad2125d1] .v-slide-group__next--disabled,[data-v-ad2125d1] .v-slide-group__prev--disabled{pointer-events:all!important}.carousel-button[data-v-ad2125d1]{height:108px!important;min-width:54px!important;padding:0!important;z-index:2;background-color:#fff!important;border:2px solid #d2d2d2;color:#d2d2d2!important}.carousel-button.mobile[data-v-ad2125d1]{height:58px!important;min-width:38px!important}.carousel-button[data-v-ad2125d1]:hover{border:2px solid #999!important;color:#999!important}.carousel-button[data-v-ad2125d1]:hover:before,.carousel-button[data-v-ad2125d1]:hover:after{background-color:#fff!important}.align-baseline[data-v-ad2125d1]{align-items:baseline}.active-apt[data-v-ad2125d1]{border:4px solid #4caf50!important}.v-image[data-v-ad2125d1]{border-radius:0!important}.btn-placeholder[data-v-82187b23]{width:36px;height:36px}.v-btn[data-v-82187b23]{background-color:#fff;pointer-events:all;cursor:auto}.floor-level-label[data-v-82187b23]{text-transform:capitalize}#share-btns-wrapper button[data-v-66122fea]{margin:0 8px}.v-btn[data-v-66122fea]{background-color:#fff;pointer-events:all}.v-image[data-v-cc96ef5c]{background-color:#aaa}.interior-selector-list[data-v-cc96ef5c]{box-shadow:none!important;padding:10px;background:transparent!important}.interior-selector-list-item[data-v-cc96ef5c]{padding:0;padding-inline-start:0!important;background-color:#fff;border:2px solid #fff;transition:transform .2s cubic-bezier(.17,.67,.83,.67);margin-top:10px}.interior-selector-list-item[data-v-cc96ef5c]:hover{transform:translate(-5px);border:2px solid #4caf50}.interior-selector-list-item .v-list-item-title[data-v-cc96ef5c]{word-break:break-word}.compass-needle{transition:transform .5s;transition-timing-function:ease-out}.img-div[data-v-3e99d275]{position:absolute;display:block;height:100%;width:100%;background-size:cover;background-position:center center;z-index:2;left:0;top:0}.static-image-wrapper[data-v-3e99d275]{background:#fff}.clock-face[data-v-9a5f102b]{margin-left:10px;height:50px;width:50px;background-color:#fff;border-radius:50%}.clock-value[data-v-9a5f102b]{font-size:11px}.clock-icon[data-v-9a5f102b]{width:18px}.disclaimer[data-v-28008b18]{padding:4px 10px;text-align:center;background-color:#00000040;border-radius:5px;line-height:20px}.disclaimer span[data-v-28008b18]{cursor:pointer;color:#fff;text-decoration:underline;pointer-events:all}.tutorial[data-v-53c0bb27]{color:#000;padding:10px;text-align:center;background-color:#fff;border-radius:5px;line-height:20px}.tutorial-icon[data-v-53c0bb27]{border:1.5px solid #e0e0e0;border-radius:5px;width:140px;height:75px}.text[data-v-53c0bb27]{font-size:.8em;line-height:1}.box.col[data-v-53c0bb27]{max-width:180px!important}.tablet-mobile-content[data-v-53c0bb27]{min-width:240px}.box.horizontal[data-v-53c0bb27]{display:flex;align-items:center}.tablet-mobile-content .tutorial-icon[data-v-53c0bb27]{width:100px;height:65px}.tablet-mobile-content .text[data-v-53c0bb27]{text-align:left}.tutorial-buttons .v-messages{display:none!important}.settings-panel[data-v-a28b3f8d]{min-width:500px;height:500px;overflow-y:scroll}form#settings-ui-form[data-v-a28b3f8d]{background:#fff9;border-radius:5px;padding:10px}#settings-ui-form .form-inputs[data-v-a28b3f8d]{height:60vh;overflow-y:scroll;padding-bottom:50px;scrollbar-color:#0c0e4a transparent;scrollbar-width:thin;padding-right:20px}.stop1{stop-color:#fff}.stop2{stop-color:#fff;stop-opacity:0}.stop3{stop-color:transparent}.minimap-container[data-v-503cace2]{position:relative}.web-minimap[data-v-503cace2]{position:relative;width:512px;height:385px;overflow:hidden;transition:transform .5s ease-in}@media (max-width: 650px){.web-minimap[data-v-503cace2]{scale:.7}}@media (max-width: 480px){.web-minimap[data-v-503cace2]{scale:.5}}.minimap-background-image[data-v-503cace2]{position:absolute;width:100%;height:100%}.single-camera-marker[data-v-503cace2]{position:absolute;width:7px;height:7px;background:#fff;border-radius:50%;z-index:2;transform:translate(-50%,-50%);border:0px}.rotation-marker-component[data-v-503cace2]{z-index:3;position:absolute;width:80px;height:80px;transform:translate(-50%,-50%)}.center-pivot[data-v-503cace2]{position:absolute;width:100%;height:100%}#moveableDiv[data-v-06db6e63]{position:fixed;z-index:15;background-color:#fff;border:1px solid #d3d3d3}#moveableDivHeader[data-v-06db6e63]{cursor:move;z-index:10}.big[data-v-06db6e63]{width:512px;height:440px;top:50%;left:50%;transform:translate(-50%,-50%)}.small[data-v-06db6e63]{width:250px;height:300px;bottom:10px;right:10px;transform:translate(0)}.sizer[data-v-06db6e63]{overflow:hidden;min-width:250px;min-height:300px;max-width:700px;max-height:531px}.resize-icon[data-v-06db6e63]{position:absolute;top:5px;right:5px;z-index:11}.rotate-icon[data-v-06db6e63]{position:absolute;top:5px;right:45px;z-index:12}.close-icon[data-v-06db6e63]{position:absolute;top:5px;left:5px;z-index:11}.moveable-body[data-v-06db6e63]{z-index:1}.moveable-footer[data-v-06db6e63]{width:100%;height:50px;margin-bottom:10px;background:#fff;z-index:2}.filler-div[data-v-06db6e63]{display:none}@media only screen and (max-width: 600px){.sizer[data-v-06db6e63]{overflow:hidden;max-width:90%;max-height:80vh}}.minimap-compass[data-v-cdeea259]{width:50px}.ss-wrapper[data-v-daf8e1d9]{display:flex;flex-direction:row;justify-content:space-between;margin:0 10px;position:relative;z-index:100}.sun-icon[data-v-daf8e1d9]{width:10%}.slider[data-v-daf8e1d9]{display:flex;flex-direction:column;flex:1 1 auto;padding:3px 0}i.v-icon.notranslate.mdi.mdi-white-balance-sunny.theme--light[data-v-daf8e1d9]{font-size:40px;color:#ffab02;padding:5px}.time-label[data-v-daf8e1d9]{padding:0;display:inline-block;margin-top:-10px;margin-left:50px}.minimap-compass[data-v-b903220b]{position:absolute;right:5px;top:50px;z-index:11}.compass-wrapper[data-v-31936b2f]{width:50px}.player-and-components-wrapper[data-v-31936b2f]{position:relative;width:100%;height:100%}.static-image[data-v-31936b2f]{position:absolute;top:0;left:0;width:100%;height:auto}button.v-btn[data-v-31936b2f]{background:#fff}.waypoint-carousel.full-screen[data-v-31936b2f]{scale:.5}div#controls-bottom-center>div[data-v-31936b2f]{display:flex;flex-direction:column;align-items:center}.player-error[data-v-31936b2f]{min-height:400px;display:flex;align-items:center;justify-content:space-around;background:#ededed}@media only screen and (max-width: 600px){#btn-fullscreen[data-v-31936b2f]{display:none}}@media all and (orientation: landscape) and (max-height: 499px){#btn-fullscreen[data-v-31936b2f]{display:none}}.settings-panel[data-v-31936b2f]{position:absolute;top:0;left:0;z-index:10;width:500px;transform:scale(.8);transform-origin:left}.virtual-tour-wrapper[data-v-31936b2f]{width:100%;height:100%}.v-player[data-v-31936b2f]{width:100%;height:calc(100% - 100px)}.waypoint-carousel.below-player[data-v-31936b2f]{position:relative;height:50px}
1
+ @media (hover: hover){.hover-check[data-v-eb9b348d]{display:none}}#canvas[data-v-392566da]{position:absolute;top:0;width:100%;-webkit-user-select:none;user-select:none;touch-action:none;padding-top:56.25%}#canvas-mask[data-v-392566da]{position:absolute;top:0;max-width:100%;z-index:4;-webkit-user-select:none;user-select:none}@media only screen and (min-width: 1280px){#canvas[data-v-392566da]{border-radius:10px}}#container[data-v-7f524ad6]{position:absolute;top:0;width:100%;-webkit-user-select:none;user-select:none;touch-action:none;padding-top:56.25%}.svg-container[data-v-7f524ad6]{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.svg-container[data-v-7f524ad6],svg[data-v-7f524ad6]{position:absolute;left:0;top:0;width:100%;height:100%;z-index:10000}svg g[data-v-7f524ad6] path{cursor:pointer;stroke-width:inherit!important;stroke-opacity:inherit!important;stroke:inherit!important;fill:inherit!important;fill-opacity:inherit!important;transition-property:fill-opacity,fill;transition-duration:.25s;transition-timing-function:ease-in-out}@media only screen and (min-width: 1280px){#canvas[data-v-7f524ad6]{border-radius:10px}}.v-btn[data-v-2c22490f]{background-color:#fff}.frame-container[data-v-66e34700]{position:relative;max-width:100%;top:0;left:0;bottom:185px;padding-top:56%;z-index:1;overflow:hidden}.frame-image[data-v-66e34700]{position:absolute;top:0;width:100%;height:100%}.frame-image img[data-v-66e34700]{min-width:100%;max-width:100%;z-index:0}#image-stack picture[data-v-66e34700]{visibility:hidden}#image-stack picture.show[data-v-66e34700]{visibility:visible}.fill-parent[data-v-66e34700]{position:absolute;top:0;bottom:0;left:0;right:0}.floating-card[data-v-0695e74f]{position:absolute;left:0;top:0;z-index:10;display:flex}.is-not-hoverable[data-v-0695e74f]{position:relative;width:100%}.top-left[data-v-0695e74f]{transform-origin:top left;transform:translate(8px) translateY(8px) scale(.9)}.top-right[data-v-0695e74f]{transform-origin:top right;transform:translate(-100%) translate(-8px) translateY(8px) scale(.9)}.bottom-left[data-v-0695e74f]{transform-origin:bottom left;transform:translateY(-100%) translate(8px) translateY(-8px) scale(.9)}.bottom-right[data-v-0695e74f]{transform-origin:bottom right;transform:translateY(-100%) translate(-100%) translate(-8px) translateY(-8px) scale(.9)}.v-dialog__content[data-v-0695e74f]{align-items:flex-start}.zoom-box-container[data-v-52f62ef2]{position:absolute;width:100%;height:100%;left:0;top:0;overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:none}.zoom-box[data-v-52f62ef2]{width:100%;height:100%;-webkit-user-select:none;user-select:none;touch-action:none}.interactive-viewer[data-v-74aaa446]{padding-top:56.65%;position:relative}.fill-parent[data-v-74aaa446]{position:absolute;top:0;bottom:0;left:0;right:0}.navigation[data-v-74aaa446]{position:absolute;width:100%;bottom:32px;z-index:99;padding:0 20px;display:flex;justify-content:center}@media only screen and (max-width: 600px){.navigation[data-v-74aaa446]{bottom:12px}}.sunsim-time-label[data-v-edaf3f94]{color:#000;vertical-align:top}.sunsim-date[data-v-edaf3f94]{background:#fff;border-radius:30px;min-height:36px;min-width:170px;display:flex;align-content:center;white-space:nowrap}.day-selector[data-v-edaf3f94]{margin-top:0}.day-selector[data-v-edaf3f94] .v-field__outline{display:none}.day-selector[data-v-edaf3f94] .v-field__input{padding-top:2px}.day-selector[data-v-edaf3f94] .v-field__append-inner{padding-top:5px!important}.day-selector.v-text-field[data-v-edaf3f94] .v-input__control>.v-input__slot:before{border-style:none}.day-selector.v-text-field[data-v-edaf3f94] .v-input__control>.v-input__slot:after{border-style:none}.sunsim-slider[data-v-edaf3f94] .v-slider-track__background{background:linear-gradient(270deg,#8183c2,#ffb9b9 20.01%,#b2dfff 40.1%,#b2dfff 59.85%,#ffba96 79.96%,#8183c2)!important}.sunsim-bar-wrapper[data-v-edaf3f94]{display:flex;position:absolute;width:60%;min-width:400px;top:12px;left:0;z-index:3;touch-action:none;pointer-events:none}.sunsim-wrapper[data-v-edaf3f94]{width:100%;background:#fff;border-radius:30px;padding:5px;min-height:16px;z-index:3}.sunsim-bar-wrapper .sunsim-date[data-v-edaf3f94]{margin-right:12px;margin-left:12px}.sunsim-wrapper[data-v-edaf3f94],.sunsim-date[data-v-edaf3f94]{touch-action:auto;pointer-events:all}.sunsim-wrapper .mdi-white-balance-sunny[data-v-edaf3f94]{color:#ffab02;vertical-align:baseline;font-size:20px}@media only screen and (max-width: 980px) and (min-width: 500px){.sunsim-bar-wrapper[data-v-edaf3f94]{top:101%;width:100%}.sunsim-bar-wrapper .sunsim-date[data-v-edaf3f94]{margin-left:0}}@media only screen and (max-width: 980px) and (min-width: 500px) and (orientation: landscape){.sunsim-bar-wrapper[data-v-edaf3f94]{top:calc(100% + 8px);width:100%}.sunsim-bar-wrapper .sunsim-date[data-v-edaf3f94]{margin-left:0}.sunsim-bar-wrapper .sunsim-date[data-v-edaf3f94],.sunsim-bar-wrapper .sunsim-wrapper[data-v-edaf3f94]{box-shadow:0 0 7px 1px #aaa}}@media only screen and (max-width: 500px){.sunsim-bar-wrapper[data-v-edaf3f94]{height:calc(100% + 84px);top:0;width:100%;flex-direction:column;justify-content:space-between;margin:-42px 0 0;padding:0;left:0;z-index:0;min-width:100%}.sunsim-bar-wrapper .sunsim-date[data-v-edaf3f94]{margin-right:0;margin-left:0}.sunsim-bar-wrapper .sunsim-date[data-v-edaf3f94],.sunsim-bar-wrapper .sunsim-wrapper[data-v-edaf3f94]{width:100%;border-radius:0;left:0;margin-left:0!important;box-shadow:0 0 7px 1px #aaa}}.image-instance[data-v-73c4ef98]{position:absolute;width:100%;opacity:0}.image-instance.active[data-v-73c4ef98]{opacity:1}.north-indicator[data-v-998cfe67]{position:absolute;right:0;top:0;height:42px;width:42px;margin-top:12px;margin-right:8px}.image-container[data-v-998cfe67]{position:relative}.image-instances[data-v-998cfe67]{position:relative;width:100%;height:100%}canvas[data-v-998cfe67]{position:absolute;left:0;top:0;z-index:2;opacity:0}.fill-parent[data-v-998cfe67]{position:absolute;top:0;bottom:0;left:0;right:0}.svg-container[data-v-998cfe67]{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.svg-container[data-v-998cfe67],svg[data-v-998cfe67]{position:absolute;left:0;top:0;width:100%;height:100%;z-index:10000}svg g[data-v-998cfe67] path{cursor:pointer;stroke-width:inherit!important;stroke-opacity:inherit!important;stroke:inherit!important;fill:inherit!important;fill-opacity:inherit!important;transition-property:fill-opacity,fill;transition-duration:.25s;transition-timing-function:ease-in-out}svg g.restricted[data-v-998cfe67] path{cursor:default!important}@media only screen and (max-width: 980px) and (min-width: 500px) and (orientation: landscape){div.image-container[data-v-998cfe67]{margin-top:44px}}@media only screen and (max-width: 500px){div.image-container[data-v-998cfe67]{margin-top:44px;margin-bottom:44px}}.overlay[data-v-b00555cd]{z-index:1!important;opacity:1;transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.north-indicator[data-v-b492a73b]{position:absolute;right:0;top:0;height:42px;width:42px;margin-top:12px;margin-right:8px}.image-container[data-v-b492a73b]{position:relative}.image-instances[data-v-b492a73b]{position:relative;width:100%;height:100%}canvas[data-v-b492a73b]{position:absolute;left:0;top:0;z-index:2;opacity:0}.fill-parent[data-v-b492a73b]{position:absolute;top:0;bottom:0;left:0;right:0}@media only screen and (max-width: 980px) and (min-width: 500px) and (orientation: landscape){div.image-container[data-v-b492a73b]{margin-top:44px}}@media only screen and (max-width: 500px){div.image-container[data-v-b492a73b]{margin-top:44px;margin-bottom:44px}}#player-wrapper[data-v-54e6a7ef]{position:relative;width:100%;height:100%}#player-sizer[data-v-54e6a7ef]{width:100%;height:100%;display:flex;justify-content:center;align-items:center}div#main-canvas[data-v-54e6a7ef]{width:100%;height:100%}.player-control[data-v-54e6a7ef]{display:flex;position:absolute;z-index:3}#controls-top-left[data-v-54e6a7ef]{top:10px;left:10px}#controls-top-center[data-v-54e6a7ef]{top:10px;left:50%;transform:translate(-50%);z-index:4;flex-direction:column}#controls-top-right[data-v-54e6a7ef]{top:10px;right:10px;justify-content:flex-end;align-content:flex-end}#controls-center-left[data-v-54e6a7ef]{left:10px;top:50%;transform:translateY(-50%)}#controls-center-center[data-v-54e6a7ef]{top:50%;left:50%;transform:translate(-50%,-50%);align-items:center;justify-content:space-around;z-index:20}#controls-center-right[data-v-54e6a7ef]{top:50%;right:10px;transform:translateY(-50%);justify-content:flex-end;align-items:center}#controls-bottom-left[data-v-54e6a7ef]{bottom:10px;left:10px;z-index:5}#controls-bottom-center[data-v-54e6a7ef]{bottom:10px;left:50%;transform:translate(-50%);align-items:flex-end;justify-content:space-around;z-index:4}#controls-bottom-right[data-v-54e6a7ef]{bottom:10px;right:10px;justify-content:flex-end;align-content:flex-end;align-items:flex-end;z-index:5}.v-card[data-v-ad2125d1]{transition:box-shadow .3s ease-in-out;border:2px solid transparent}[data-v-ad2125d1] .v-slide-group__content{justify-content:center}[data-v-ad2125d1] .v-slide-group__next--disabled,[data-v-ad2125d1] .v-slide-group__prev--disabled{pointer-events:all!important}.carousel-button[data-v-ad2125d1]{height:108px!important;min-width:54px!important;padding:0!important;z-index:2;background-color:#fff!important;border:2px solid #d2d2d2;color:#d2d2d2!important}.carousel-button.mobile[data-v-ad2125d1]{height:58px!important;min-width:38px!important}.carousel-button[data-v-ad2125d1]:hover{border:2px solid #999!important;color:#999!important}.carousel-button[data-v-ad2125d1]:hover:before,.carousel-button[data-v-ad2125d1]:hover:after{background-color:#fff!important}.align-baseline[data-v-ad2125d1]{align-items:baseline}.active-apt[data-v-ad2125d1]{border:4px solid #4caf50!important}.v-image[data-v-ad2125d1]{border-radius:0!important}.btn-placeholder[data-v-82187b23]{width:36px;height:36px}.v-btn[data-v-82187b23]{background-color:#fff;pointer-events:all;cursor:auto}.floor-level-label[data-v-82187b23]{text-transform:capitalize}#share-btns-wrapper button[data-v-66122fea]{margin:0 8px}.v-btn[data-v-66122fea]{background-color:#fff;pointer-events:all}.v-image[data-v-cc96ef5c]{background-color:#aaa}.interior-selector-list[data-v-cc96ef5c]{box-shadow:none!important;padding:10px;background:transparent!important}.interior-selector-list-item[data-v-cc96ef5c]{padding:0;padding-inline-start:0!important;background-color:#fff;border:2px solid #fff;transition:transform .2s cubic-bezier(.17,.67,.83,.67);margin-top:10px}.interior-selector-list-item[data-v-cc96ef5c]:hover{transform:translate(-5px);border:2px solid #4caf50}.interior-selector-list-item .v-list-item-title[data-v-cc96ef5c]{word-break:break-word}.compass-needle{transition:transform .5s;transition-timing-function:ease-out}.img-div[data-v-3e99d275]{position:absolute;display:block;height:100%;width:100%;background-size:cover;background-position:center center;z-index:2;left:0;top:0}.static-image-wrapper[data-v-3e99d275]{background:#fff}.clock-face[data-v-9a5f102b]{margin-left:10px;height:50px;width:50px;background-color:#fff;border-radius:50%}.clock-value[data-v-9a5f102b]{font-size:11px}.clock-icon[data-v-9a5f102b]{width:18px}.disclaimer[data-v-28008b18]{padding:4px 10px;text-align:center;background-color:#00000040;border-radius:5px;line-height:20px}.disclaimer span[data-v-28008b18]{cursor:pointer;color:#fff;text-decoration:underline;pointer-events:all}.tutorial[data-v-53c0bb27]{color:#000;padding:10px;text-align:center;background-color:#fff;border-radius:5px;line-height:20px}.tutorial-icon[data-v-53c0bb27]{border:1.5px solid #e0e0e0;border-radius:5px;width:140px;height:75px}.text[data-v-53c0bb27]{font-size:.8em;line-height:1}.box.col[data-v-53c0bb27]{max-width:180px!important}.tablet-mobile-content[data-v-53c0bb27]{min-width:240px}.box.horizontal[data-v-53c0bb27]{display:flex;align-items:center}.tablet-mobile-content .tutorial-icon[data-v-53c0bb27]{width:100px;height:65px}.tablet-mobile-content .text[data-v-53c0bb27]{text-align:left}.tutorial-buttons .v-messages{display:none!important}.settings-panel[data-v-a28b3f8d]{min-width:500px;height:500px;overflow-y:scroll}form#settings-ui-form[data-v-a28b3f8d]{background:#fff9;border-radius:5px;padding:10px}#settings-ui-form .form-inputs[data-v-a28b3f8d]{height:60vh;overflow-y:scroll;padding-bottom:50px;scrollbar-color:#0c0e4a transparent;scrollbar-width:thin;padding-right:20px}.stop1{stop-color:#fff}.stop2{stop-color:#fff;stop-opacity:0}.stop3{stop-color:transparent}.minimap-container[data-v-503cace2]{position:relative}.web-minimap[data-v-503cace2]{position:relative;width:512px;height:385px;overflow:hidden;transition:transform .5s ease-in}@media (max-width: 650px){.web-minimap[data-v-503cace2]{scale:.7}}@media (max-width: 480px){.web-minimap[data-v-503cace2]{scale:.5}}.minimap-background-image[data-v-503cace2]{position:absolute;width:100%;height:100%}.single-camera-marker[data-v-503cace2]{position:absolute;width:7px;height:7px;background:#fff;border-radius:50%;z-index:2;transform:translate(-50%,-50%);border:0px}.rotation-marker-component[data-v-503cace2]{z-index:3;position:absolute;width:80px;height:80px;transform:translate(-50%,-50%)}.center-pivot[data-v-503cace2]{position:absolute;width:100%;height:100%}#moveableDiv[data-v-06db6e63]{position:fixed;z-index:15;background-color:#fff;border:1px solid #d3d3d3}#moveableDivHeader[data-v-06db6e63]{cursor:move;z-index:10}.big[data-v-06db6e63]{width:512px;height:440px;top:50%;left:50%;transform:translate(-50%,-50%)}.small[data-v-06db6e63]{width:250px;height:300px;bottom:10px;right:10px;transform:translate(0)}.sizer[data-v-06db6e63]{overflow:hidden;min-width:250px;min-height:300px;max-width:700px;max-height:531px}.resize-icon[data-v-06db6e63]{position:absolute;top:5px;right:5px;z-index:11}.rotate-icon[data-v-06db6e63]{position:absolute;top:5px;right:45px;z-index:12}.close-icon[data-v-06db6e63]{position:absolute;top:5px;left:5px;z-index:11}.moveable-body[data-v-06db6e63]{z-index:1}.moveable-footer[data-v-06db6e63]{width:100%;height:50px;margin-bottom:10px;background:#fff;z-index:2}.filler-div[data-v-06db6e63]{display:none}@media only screen and (max-width: 600px){.sizer[data-v-06db6e63]{overflow:hidden;max-width:90%;max-height:80vh}}.minimap-compass[data-v-cdeea259]{width:50px}.ss-wrapper[data-v-daf8e1d9]{display:flex;flex-direction:row;justify-content:space-between;margin:0 10px;position:relative;z-index:100}.sun-icon[data-v-daf8e1d9]{width:10%}.slider[data-v-daf8e1d9]{display:flex;flex-direction:column;flex:1 1 auto;padding:3px 0}i.v-icon.notranslate.mdi.mdi-white-balance-sunny.theme--light[data-v-daf8e1d9]{font-size:40px;color:#ffab02;padding:5px}.time-label[data-v-daf8e1d9]{padding:0;display:inline-block;margin-top:-10px;margin-left:50px}.minimap-compass[data-v-b903220b]{position:absolute;right:5px;top:50px;z-index:11}.compass-wrapper[data-v-31936b2f]{width:50px}.player-and-components-wrapper[data-v-31936b2f]{position:relative;width:100%;height:100%}.static-image[data-v-31936b2f]{position:absolute;top:0;left:0;width:100%;height:auto}button.v-btn[data-v-31936b2f]{background:#fff}.waypoint-carousel.full-screen[data-v-31936b2f]{scale:.5}div#controls-bottom-center>div[data-v-31936b2f]{display:flex;flex-direction:column;align-items:center}.player-error[data-v-31936b2f]{min-height:400px;display:flex;align-items:center;justify-content:space-around;background:#ededed}@media only screen and (max-width: 600px){#btn-fullscreen[data-v-31936b2f]{display:none}}@media all and (orientation: landscape) and (max-height: 499px){#btn-fullscreen[data-v-31936b2f]{display:none}}.settings-panel[data-v-31936b2f]{position:absolute;top:0;left:0;z-index:10;width:500px;transform:scale(.8);transform-origin:left}.virtual-tour-wrapper[data-v-31936b2f]{width:100%;height:100%}.v-player[data-v-31936b2f]{width:100%;height:calc(100% - 100px)}.waypoint-carousel.below-player[data-v-31936b2f]{position:relative;height:50px}