@qispace/vue3-player 0.0.5 → 0.0.7

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.
Files changed (88) hide show
  1. package/dist/components/apartmentChooser/QiApartmentChooser.vue.d.ts +471 -3
  2. package/dist/components/apartmentChooser/QiApartmentChooserNavigation.vue.d.ts +50 -3
  3. package/dist/components/apartmentChooser/QiApartmentChooserRaster.vue.d.ts +151 -3
  4. package/dist/components/apartmentChooser/QiApartmentChooserRotator.vue.d.ts +66 -3
  5. package/dist/components/apartmentChooser/QiApartmentChooserSvg.vue.d.ts +124 -3
  6. package/dist/components/buildingPicker/QiBuildingChooser.vue.d.ts +425 -2
  7. package/dist/components/buildingPicker/QiBuildingChooserRaster.vue.d.ts +154 -3
  8. package/dist/components/buildingPicker/QiBuildingChooserRasterOverlay.vue.d.ts +53 -3
  9. package/dist/components/buildingPicker/QiBuildingChooserSceneImageStack.vue.d.ts +32 -3
  10. package/dist/components/buildingPicker/QiBuildingChooserSunSimControl.vue.d.ts +41 -4
  11. package/dist/components/buildingPicker/QiBuildingChooserSvg.vue.d.ts +156 -3
  12. package/dist/components/shared/QiFloatingCard.vue.d.ts +17 -3
  13. package/dist/components/shared/QiHoverProbe.vue.d.ts +3 -3
  14. package/dist/components/shared/QiNorthDirection.vue.d.ts +20 -2
  15. package/dist/components/shared/QiZoomBox.vue.d.ts +82 -3
  16. package/dist/components/virtualTourV2/Disclaimer.vue.d.ts +3 -3
  17. package/dist/components/virtualTourV2/FullScreenButton.vue.d.ts +13 -2
  18. package/dist/components/virtualTourV2/ManualSlideShow.vue.d.ts +72 -3
  19. package/dist/components/virtualTourV2/ManualSlideShowPlayer.vue.d.ts +14 -3
  20. package/dist/components/virtualTourV2/SingleImage.vue.d.ts +25 -3
  21. package/dist/components/virtualTourV2/SocialShare.vue.d.ts +9 -3
  22. package/dist/components/virtualTourV2/WaypointCarousel.vue.d.ts +30 -3
  23. package/dist/entry.css +1 -0
  24. package/dist/{vue3-player.esm.js → vue3-player.mjs} +647 -581
  25. package/dist/vue3-player.umd.js +2 -3
  26. package/package.json +12 -13
  27. package/dist/components/apartmentChooser/QiApartmentChooser.vue.d.ts.map +0 -1
  28. package/dist/components/apartmentChooser/QiApartmentChooserNavigation.vue.d.ts.map +0 -1
  29. package/dist/components/apartmentChooser/QiApartmentChooserRaster.vue.d.ts.map +0 -1
  30. package/dist/components/apartmentChooser/QiApartmentChooserRotator.vue.d.ts.map +0 -1
  31. package/dist/components/apartmentChooser/QiApartmentChooserSvg.vue.d.ts.map +0 -1
  32. package/dist/components/buildingPicker/QiBuildingChooser.vue.d.ts.map +0 -1
  33. package/dist/components/buildingPicker/QiBuildingChooserRaster.vue.d.ts.map +0 -1
  34. package/dist/components/buildingPicker/QiBuildingChooserRasterOverlay.vue.d.ts.map +0 -1
  35. package/dist/components/buildingPicker/QiBuildingChooserSceneImageStack.vue.d.ts.map +0 -1
  36. package/dist/components/buildingPicker/QiBuildingChooserSunSimControl.vue.d.ts.map +0 -1
  37. package/dist/components/buildingPicker/QiBuildingChooserSvg.vue.d.ts.map +0 -1
  38. package/dist/components/shared/QiFloatingCard.vue.d.ts.map +0 -1
  39. package/dist/components/shared/QiHoverProbe.vue.d.ts.map +0 -1
  40. package/dist/components/shared/QiNorthDirection.vue.d.ts.map +0 -1
  41. package/dist/components/shared/QiZoomBox.vue.d.ts.map +0 -1
  42. package/dist/components/virtualTourV2/Disclaimer.vue.d.ts.map +0 -1
  43. package/dist/components/virtualTourV2/FullScreenButton.vue.d.ts.map +0 -1
  44. package/dist/components/virtualTourV2/ManualSlideShow.vue.d.ts.map +0 -1
  45. package/dist/components/virtualTourV2/ManualSlideShowPlayer.vue.d.ts.map +0 -1
  46. package/dist/components/virtualTourV2/SingleImage.vue.d.ts.map +0 -1
  47. package/dist/components/virtualTourV2/SocialShare.vue.d.ts.map +0 -1
  48. package/dist/components/virtualTourV2/WaypointCarousel.vue.d.ts.map +0 -1
  49. package/dist/lib/virtualTour__/ApartmentConfig.d.ts +0 -27
  50. package/dist/lib/virtualTour__/ApartmentFiles.d.ts +0 -7
  51. package/dist/lib/virtualTour__/MinimapConfig.d.ts +0 -23
  52. package/dist/lib/virtualTour__/impl/HttpApartmentFiles.d.ts +0 -19
  53. package/dist/vue3-player.cjs.js +0 -2
  54. package/dist/vue3-player.iife.js +0 -3
  55. package/src/entry.esm.js +0 -17
  56. package/src/entry.js +0 -13
  57. package/src/entry.ts_ +0 -17
  58. package/src/lib/virtualTour__/ApartmentConfig.ts +0 -80
  59. package/src/lib/virtualTour__/ApartmentFiles.ts +0 -8
  60. package/src/lib/virtualTour__/CameraNavigator.js_ +0 -74
  61. package/src/lib/virtualTour__/CameraSnapshot.js +0 -42
  62. package/src/lib/virtualTour__/CoordConversions.js +0 -43
  63. package/src/lib/virtualTour__/FullscreenModel.js +0 -69
  64. package/src/lib/virtualTour__/MinimapConfig.ts +0 -46
  65. package/src/lib/virtualTour__/PlayerViewModel.js +0 -423
  66. package/src/lib/virtualTour__/config/ApartmentConfig.js +0 -92
  67. package/src/lib/virtualTour__/config/CameraConfig.js +0 -97
  68. package/src/lib/virtualTour__/config/Interaction.js +0 -393
  69. package/src/lib/virtualTour__/config/Panorama.js +0 -78
  70. package/src/lib/virtualTour__/config/PlayerConfig.js +0 -812
  71. package/src/lib/virtualTour__/config/rawinflate.export.js +0 -833
  72. package/src/lib/virtualTour__/config/shaders.js +0 -24
  73. package/src/lib/virtualTour__/impl/HttpApartmentFiles.ts +0 -57
  74. package/src/lib/virtualTour__/index.js +0 -1
  75. package/src/lib/virtualTour__/textures/arrow.png +0 -0
  76. package/src/lib/virtualTour__/textures/compass-bg.png +0 -0
  77. package/src/lib/virtualTour__/textures/compass-needle.png +0 -0
  78. package/src/lib/virtualTour__/textures/compass-north.png +0 -0
  79. package/src/lib/virtualTour__/textures/floor-1.svg +0 -4
  80. package/src/lib/virtualTour__/textures/floor-2.svg +0 -4
  81. package/src/lib/virtualTour__/textures/marker.png +0 -0
  82. package/src/lib/virtualTour__/textures/tod-sun.png +0 -0
  83. package/src/main.ts_ +0 -24
  84. package/src/shims-png.d.ts +0 -4
  85. package/src/shims-tsx.d.ts +0 -11
  86. package/src/shims-vue.d.ts +0 -4
  87. package/src/style.css +0 -0
  88. package/src/vite-env.d.ts +0 -5
@@ -1,36 +1,8 @@
1
- (function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode("@media (hover: hover){.hover-check[data-v-e4729353]{display:none}}#canvas[data-v-3bbbc77b]{position:absolute;top:0;width:100%;-webkit-user-select:none;user-select:none;touch-action:none;padding-top:56.25%}#canvas-mask[data-v-3bbbc77b]{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-3bbbc77b]{border-radius:10px}}#container[data-v-82a61864]{position:absolute;top:0;width:100%;-webkit-user-select:none;user-select:none;touch-action:none;padding-top:56.25%}.svg-container[data-v-82a61864]{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.svg-container[data-v-82a61864],svg[data-v-82a61864]{position:absolute;left:0;top:0;width:100%;height:100%;z-index:10000}svg g[data-v-82a61864] 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-82a61864]{border-radius:10px}}.v-btn[data-v-129ef905]{background-color:#fff}.frame-container[data-v-e6481f8e]{position:relative;max-width:100%;top:0;left:0;bottom:185px;padding-top:56%;z-index:1;overflow:hidden}.frame-image[data-v-e6481f8e]{position:absolute;top:0;width:100%;height:100%}.frame-image img[data-v-e6481f8e]{min-width:100%;max-width:100%;z-index:0}#image-stack picture[data-v-e6481f8e]{visibility:hidden}#image-stack picture.show[data-v-e6481f8e]{visibility:visible}.fill-parent[data-v-e6481f8e]{position:absolute;top:0;bottom:0;left:0;right:0}.floating-card[data-v-b74de171]{position:absolute;left:0;top:0;z-index:10;display:flex}.is-not-hoverable[data-v-b74de171]{position:relative;width:100%}.top-left[data-v-b74de171]{transform-origin:top left;transform:translate(8px) translateY(8px) scale(.9)}.top-right[data-v-b74de171]{transform-origin:top right;transform:translate(-100%) translate(-8px) translateY(8px) scale(.9)}.bottom-left[data-v-b74de171]{transform-origin:bottom left;transform:translateY(-100%) translate(8px) translateY(-8px) scale(.9)}.bottom-right[data-v-b74de171]{transform-origin:bottom right;transform:translateY(-100%) translate(-100%) translate(-8px) translateY(-8px) scale(.9)}.v-dialog__content[data-v-b74de171]{align-items:flex-start}.zoom-box-container[data-v-83bfd28a]{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-83bfd28a]{width:100%;height:100%;-webkit-user-select:none;user-select:none;touch-action:none}.interactive-viewer[data-v-3a1121f3]{padding-top:56.65%;position:relative}.fill-parent[data-v-3a1121f3]{position:absolute;top:0;bottom:0;left:0;right:0}.navigation[data-v-3a1121f3]{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-3a1121f3]{bottom:12px}}.sunsim-time-label[data-v-1fba3edd]{color:#000;vertical-align:top}.sunsim-date[data-v-1fba3edd]{background:#fff;border-radius:30px;min-height:36px;min-width:170px;display:flex;align-content:center;white-space:nowrap}.day-selector[data-v-1fba3edd]{margin-top:0}.day-selector[data-v-1fba3edd] .v-field__outline{display:none}.day-selector[data-v-1fba3edd] .v-field__input{padding-top:2px}.day-selector[data-v-1fba3edd] .v-field__append-inner{padding-top:5px!important}.day-selector.v-text-field[data-v-1fba3edd] .v-input__control>.v-input__slot:before{border-style:none}.day-selector.v-text-field[data-v-1fba3edd] .v-input__control>.v-input__slot:after{border-style:none}.sunsim-slider[data-v-1fba3edd] .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-fad48118]{position:absolute;width:100%;opacity:0}.image-instance.active[data-v-fad48118]{opacity:1}.north-indicator[data-v-0a2cec1f]{position:absolute;right:0;top:0;height:42px;width:42px;margin-top:12px;margin-right:8px}.image-container[data-v-0a2cec1f]{position:relative}.image-instances[data-v-0a2cec1f]{position:relative;width:100%;height:100%}canvas[data-v-0a2cec1f]{position:absolute;left:0;top:0;z-index:2;opacity:0}.fill-parent[data-v-0a2cec1f]{position:absolute;top:0;bottom:0;left:0;right:0}.svg-container[data-v-0a2cec1f]{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.svg-container[data-v-0a2cec1f],svg[data-v-0a2cec1f]{position:absolute;left:0;top:0;width:100%;height:100%;z-index:10000}svg g[data-v-0a2cec1f] 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-0a2cec1f] path{cursor:default!important}@media only screen and (max-width: 980px) and (min-width: 500px) and (orientation: landscape){div.image-container[data-v-0a2cec1f]{margin-top:44px}}@media only screen and (max-width: 500px){div.image-container[data-v-0a2cec1f]{margin-top:44px;margin-bottom:44px}}.overlay[data-v-9a90fa2f]{z-index:1!important;opacity:1;transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-in-out}.north-indicator[data-v-08f2ea1e]{position:absolute;right:0;top:0;height:42px;width:42px;margin-top:12px;margin-right:8px}.image-container[data-v-08f2ea1e]{position:relative}.image-instances[data-v-08f2ea1e]{position:relative;width:100%;height:100%}canvas[data-v-08f2ea1e]{position:absolute;left:0;top:0;z-index:2;opacity:0}.fill-parent[data-v-08f2ea1e]{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-08f2ea1e]{margin-top:44px}}@media only screen and (max-width: 500px){div.image-container[data-v-08f2ea1e]{margin-top:44px;margin-bottom:44px}}.v-card[data-v-f4e6ce2e]{transition:box-shadow .3s ease-in-out;border:2px solid transparent}[data-v-f4e6ce2e] .v-slide-group__content{justify-content:center}[data-v-f4e6ce2e] .v-slide-group__next--disabled,[data-v-f4e6ce2e] .v-slide-group__prev--disabled{pointer-events:all!important}.carousel-button[data-v-f4e6ce2e]{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-f4e6ce2e]{height:58px!important;min-width:38px!important}.carousel-button[data-v-f4e6ce2e]:hover{border:2px solid #999!important;color:#999!important}.carousel-button[data-v-f4e6ce2e]:hover:before,.carousel-button[data-v-f4e6ce2e]:hover:after{background-color:#fff!important}.align-baseline[data-v-f4e6ce2e]{align-items:baseline}.active-apt[data-v-f4e6ce2e]{border:4px solid #4caf50!important}.v-image[data-v-f4e6ce2e]{border-radius:0!important}#share-btns-wrapper button[data-v-3560cd03]{margin:0 8px}.v-btn[data-v-3560cd03]{background-color:#fff;pointer-events:all}.disclaimer[data-v-6e4f02d6]{padding:4px 10px;text-align:center;background-color:#00000040;border-radius:5px;line-height:20px}.disclaimer span[data-v-6e4f02d6]{cursor:pointer;color:#fff;text-decoration:underline;pointer-events:all}#player-wrapper[data-v-1dab1ac3]{position:relative;overflow:hidden}#player-sizer[data-v-1dab1ac3]{display:flex;justify-content:center;align-items:center;overflow:hidden}.player-control[data-v-1dab1ac3]{display:flex;position:absolute;z-index:3}#controls-top-left[data-v-1dab1ac3]{top:10px;left:10px}#controls-top-center[data-v-1dab1ac3]{top:10px;left:50%;transform:translate(-50%);z-index:4}#controls-top-right[data-v-1dab1ac3]{top:10px;right:10px;justify-content:flex-end;align-content:flex-end}#controls-center-left[data-v-1dab1ac3]{left:10px;top:50%;transform:translateY(-50%)}#controls-center-center[data-v-1dab1ac3]{top:50%;left:50%;transform:translate(-50%,-50%);align-items:center;justify-content:space-around;z-index:20}#controls-center-right[data-v-1dab1ac3]{top:50%;right:10px;transform:translateY(-50%);justify-content:flex-end;align-items:center}#controls-bottom-left[data-v-1dab1ac3]{bottom:10px;left:10px;z-index:5}#controls-bottom-center[data-v-1dab1ac3]{bottom:10px;left:50%;transform:translate(-50%);align-items:flex-end;justify-content:space-around;z-index:4}#controls-bottom-right[data-v-1dab1ac3]{bottom:10px;right:10px;justify-content:flex-end;align-content:flex-end;align-items:flex-end;z-index:5}.img-div[data-v-b418cf51]{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-b418cf51]{background:#fff}.compass-wrapper[data-v-e2117d1e]{width:50px}.player-and-components-wrapper[data-v-e2117d1e]{position:relative}.static-image[data-v-e2117d1e]{position:absolute;top:0;left:0;width:100%;height:auto}button.v-btn[data-v-e2117d1e]{background:#fff}.waypoint-carousel.full-screen[data-v-e2117d1e]{scale:.5}div#controls-bottom-center>div[data-v-e2117d1e]{display:flex;flex-direction:column;align-items:center}.player-error[data-v-e2117d1e]{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-e2117d1e]{display:none}}@media all and (orientation: landscape) and (max-height: 499px){#btn-fullscreen[data-v-e2117d1e]{display:none}}")),document.head.appendChild(t)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})();
2
- import ke from "axios";
3
- import { openBlock as d, createElementBlock as m, resolveComponent as u, withDirectives as A, createElementVNode as h, normalizeStyle as D, vShow as x, createVNode as l, Fragment as E, renderList as T, createCommentVNode as I, withCtx as c, toDisplayString as S, createTextVNode as B, normalizeClass as M, createBlock as C, renderSlot as k, resolveDynamicComponent as ue, normalizeProps as he, guardReactiveProps as me, defineComponent as W, ref as ge, mergeProps as F, createSlots as Ie, toHandlers as Ce, Transition as ie } from "vue";
4
- function K(e, t, i, o) {
5
- function n(s) {
6
- return s instanceof i ? s : new i(function(r) {
7
- r(s);
8
- });
9
- }
10
- return new (i || (i = Promise))(function(s, r) {
11
- function a(f) {
12
- try {
13
- v(o.next(f));
14
- } catch (_) {
15
- r(_);
16
- }
17
- }
18
- function g(f) {
19
- try {
20
- v(o.throw(f));
21
- } catch (_) {
22
- r(_);
23
- }
24
- }
25
- function v(f) {
26
- f.done ? s(f.value) : n(f.value).then(a, g);
27
- }
28
- v((o = o.apply(e, t || [])).next());
29
- });
30
- }
31
- class O {
1
+ import ve from "axios";
2
+ import { openBlock as d, createElementBlock as m, resolveComponent as u, withDirectives as A, createElementVNode as h, normalizeStyle as D, vShow as x, createVNode as l, Fragment as L, renderList as T, createCommentVNode as k, withCtx as c, toDisplayString as S, createTextVNode as B, normalizeClass as M, createBlock as I, renderSlot as _, resolveDynamicComponent as oe, normalizeProps as re, guardReactiveProps as ae, defineComponent as Y, ref as le, mergeProps as R, createSlots as pe, toHandlers as fe, Transition as G } from "vue";
3
+ class U {
32
4
  async loadJson(t) {
33
- return (await ke.get(t)).data;
5
+ return (await ve.get(t)).data;
34
6
  }
35
7
  async loadImage(t) {
36
8
  return new Promise((i, o) => {
@@ -55,21 +27,21 @@ const w = (e, t) => {
55
27
  for (const [o, n] of t)
56
28
  i[o] = n;
57
29
  return i;
58
- }, Se = {
30
+ }, be = {
59
31
  name: "QiHoverProbe",
60
32
  computed: {
61
33
  isHoverEnabled() {
62
34
  return window.getComputedStyle(this.$refs.hoverCheck).display === "none";
63
35
  }
64
36
  }
65
- }, Be = {
37
+ }, ye = {
66
38
  ref: "hoverCheck",
67
39
  class: "hover-check"
68
40
  };
69
- function De(e, t, i, o, n, s) {
70
- return d(), m("div", Be, null, 512);
41
+ function we(e, t, i, o, n, s) {
42
+ return d(), m("div", ye, null, 512);
71
43
  }
72
- const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"]]), ne = {
44
+ const $ = /* @__PURE__ */ w(be, [["render", we], ["__scopeId", "data-v-e4729353"]]), de = {
73
45
  methods: {
74
46
  throttle(e, t) {
75
47
  let i = !0;
@@ -78,10 +50,10 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
78
50
  };
79
51
  }
80
52
  }
81
- }, Ae = {
53
+ }, _e = {
82
54
  name: "QiApartmentChooserRaster",
83
- components: { QiHoverProbe: L },
84
- mixins: [ne],
55
+ components: { QiHoverProbe: $ },
56
+ mixins: [de],
85
57
  props: {
86
58
  cdnFileResolver: { type: Function, required: !0 },
87
59
  viewModel: { type: Object, required: !0 },
@@ -119,7 +91,7 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
119
91
  vueCanvasCursor: "auto",
120
92
  timeout: null,
121
93
  windowListener: void 0,
122
- resourceLoader: new O(),
94
+ resourceLoader: new U(),
123
95
  apartmentIndexRasterMap: {}
124
96
  };
125
97
  },
@@ -128,7 +100,9 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
128
100
  return this.$refs.hoverProbe.isHoverEnabled;
129
101
  },
130
102
  rasterUrl() {
131
- return this.cdnFileResolver(`/scenedata${this.viewModel.currentScene}.png`);
103
+ return this.cdnFileResolver(
104
+ `/scenedata${this.viewModel.currentScene}.png`
105
+ );
132
106
  },
133
107
  rasterImage() {
134
108
  return this.rasterUrl in this.rasterImages ? this.rasterImages[this.rasterUrl] : null;
@@ -136,7 +110,9 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
136
110
  hoverApartment() {
137
111
  if (this.hoverApartmentIndex < 0)
138
112
  return !1;
139
- const e = this.sceneData.find((t) => t.index === this.hoverApartmentIndex);
113
+ const e = this.sceneData.find(
114
+ (t) => t.index === this.hoverApartmentIndex
115
+ );
140
116
  return e ? this.unitCallback ? this.unitCallback(e.apartmentId) : e.apartmentId : !1;
141
117
  },
142
118
  canvasStyle() {
@@ -154,7 +130,10 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
154
130
  rasterUrl: {
155
131
  handler() {
156
132
  this.rasterImages[this.rasterUrl] || this.resourceLoader.loadImageData(this.rasterUrl).then((e) => {
157
- this.rasterImages = Object.assign(Object.assign({}, this.rasterImages), { [this.rasterUrl]: e });
133
+ this.rasterImages = {
134
+ ...this.rasterImages,
135
+ [this.rasterUrl]: e
136
+ };
158
137
  });
159
138
  },
160
139
  immediate: !0
@@ -205,11 +184,17 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
205
184
  methods: {
206
185
  init() {
207
186
  this.canvas = this.$refs.canvasMask, this.context = this.canvas.getContext("2d", { willReadFrequently: !0 }), this.image = new Image(), this.image.onload = () => {
208
- this.setupDraw(), this.canvas.addEventListener("mousemove", this.throttle(this.handleMouseMove, 50));
187
+ this.setupDraw(), this.canvas.addEventListener(
188
+ "mousemove",
189
+ this.throttle(this.handleMouseMove, 50)
190
+ );
209
191
  }, this.image.src = this.rasterImage;
210
192
  },
211
193
  handleMouseMove(e) {
212
- const t = this.getApartmentIndexByCursorPosition(e.offsetX, e.offsetY);
194
+ const t = this.getApartmentIndexByCursorPosition(
195
+ e.offsetX,
196
+ e.offsetY
197
+ );
213
198
  this.showApartmentCard = t >= 0, this.hoverApartmentIndex = t, this.pos = {
214
199
  x: e.offsetX,
215
200
  y: e.offsetY,
@@ -218,12 +203,31 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
218
203
  };
219
204
  },
220
205
  clickCanvas(e) {
221
- const t = this.getApartmentIndexByCursorPosition(e.offsetX, e.offsetY);
206
+ const t = this.getApartmentIndexByCursorPosition(
207
+ e.offsetX,
208
+ e.offsetY
209
+ );
222
210
  t < 0 || this.isHoverable && this.goToApartmentByIndex(t);
223
211
  },
224
212
  setImageData() {
225
213
  if (this.image && this.image.width) {
226
- this.canvas.width = this.image.width, this.canvas.height = this.image.height, this.context.drawImage(this.image, 0, 0, this.image.width, this.image.height), this.originalImageData = this.context.getImageData(0, 0, this.canvas.width, this.canvas.height), this.imageData = this.context.getImageData(0, 0, this.canvas.width, this.canvas.height);
214
+ this.canvas.width = this.image.width, this.canvas.height = this.image.height, this.context.drawImage(
215
+ this.image,
216
+ 0,
217
+ 0,
218
+ this.image.width,
219
+ this.image.height
220
+ ), this.originalImageData = this.context.getImageData(
221
+ 0,
222
+ 0,
223
+ this.canvas.width,
224
+ this.canvas.height
225
+ ), this.imageData = this.context.getImageData(
226
+ 0,
227
+ 0,
228
+ this.canvas.width,
229
+ this.canvas.height
230
+ );
227
231
  const e = this.originalImageData.data;
228
232
  this.apartmentIndexRasterMap = {};
229
233
  for (let t = 0; t < e.length; t += 4)
@@ -268,8 +272,12 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
268
272
  },
269
273
  getApartmentsInRaster() {
270
274
  if (this.originalImageData) {
271
- const e = Object.keys(this.apartmentIndexRasterMap).map((i) => parseInt(i));
272
- return this.sceneData.filter((i) => e.includes(i.index));
275
+ const e = Object.keys(this.apartmentIndexRasterMap).map(
276
+ (i) => parseInt(i)
277
+ );
278
+ return this.sceneData.filter(
279
+ (i) => e.includes(i.index)
280
+ );
273
281
  } else
274
282
  return [];
275
283
  },
@@ -303,10 +311,10 @@ const L = /* @__PURE__ */ w(Se, [["render", De], ["__scopeId", "data-v-e4729353"
303
311
  this.showApartmentCard = !1;
304
312
  }
305
313
  }
306
- }, xe = { id: "canvas" };
307
- function Me(e, t, i, o, n, s) {
314
+ }, ke = { id: "canvas" };
315
+ function Ie(e, t, i, o, n, s) {
308
316
  const r = u("qi-hover-probe");
309
- return d(), m("div", xe, [
317
+ return d(), m("div", ke, [
310
318
  A(h("canvas", {
311
319
  id: "canvas-mask",
312
320
  ref: "canvasMask",
@@ -318,10 +326,10 @@ function Me(e, t, i, o, n, s) {
318
326
  l(r, { ref: "hoverProbe" }, null, 512)
319
327
  ]);
320
328
  }
321
- const Q = /* @__PURE__ */ w(Ae, [["render", Me], ["__scopeId", "data-v-3bbbc77b"]]), Re = {
329
+ const N = /* @__PURE__ */ w(_e, [["render", Ie], ["__scopeId", "data-v-3bbbc77b"]]), Ce = {
322
330
  name: "QiApartmentChooserSvg",
323
- components: { QiHoverProbe: L },
324
- mixins: [ne],
331
+ components: { QiHoverProbe: $ },
332
+ mixins: [de],
325
333
  props: {
326
334
  cdnFileResolver: { type: Function, required: !0 },
327
335
  viewModel: { type: Object, required: !0 },
@@ -345,7 +353,7 @@ const Q = /* @__PURE__ */ w(Ae, [["render", Me], ["__scopeId", "data-v-3bbbc77b"
345
353
  hoverApartmentIndex: -1,
346
354
  svgImages: {},
347
355
  currentSvgImage: null,
348
- resourceLoader: new O()
356
+ resourceLoader: new U()
349
357
  };
350
358
  },
351
359
  computed: {
@@ -395,13 +403,18 @@ const Q = /* @__PURE__ */ w(Ae, [["render", Me], ["__scopeId", "data-v-3bbbc77b"
395
403
  this.resourceLoader.loadJson(t).then((o) => {
396
404
  i.markup = o;
397
405
  const s = new DOMParser().parseFromString(o, "image/svg+xml").getElementsByTagName("svg")[0];
398
- i.viewBox = s.getAttribute("viewBox"), i.svgObjects = Array.from(s.querySelectorAll("*[data-index]")).map((r) => ({
406
+ i.viewBox = s.getAttribute("viewBox"), i.svgObjects = Array.from(
407
+ s.querySelectorAll("*[data-index]")
408
+ ).map((r) => ({
399
409
  index: parseInt(r.getAttribute("data-index")),
400
410
  svg: r.innerHTML
401
- })), this.svgImages = Object.assign(Object.assign({}, this.svgImages), { [e]: i });
411
+ })), this.svgImages = { ...this.svgImages, [e]: i };
402
412
  });
403
413
  }
404
- this.$refs.container.addEventListener("mousemove", this.throttle(this.handleMouseMove, 50));
414
+ this.$refs.container.addEventListener(
415
+ "mousemove",
416
+ this.throttle(this.handleMouseMove, 50)
417
+ );
405
418
  },
406
419
  methods: {
407
420
  handleMouseMove(e) {
@@ -414,7 +427,7 @@ const Q = /* @__PURE__ */ w(Ae, [["render", Me], ["__scopeId", "data-v-3bbbc77b"
414
427
  },
415
428
  getApartmentIdByIndex(e) {
416
429
  var t;
417
- return (t = this.sceneData.find((i) => i.index === parseInt(e))) === null || t === void 0 ? void 0 : t.apartmentId;
430
+ return (t = this.sceneData.find((i) => i.index === parseInt(e))) == null ? void 0 : t.apartmentId;
418
431
  },
419
432
  getApartmentByIndex(e) {
420
433
  const t = this.getApartmentIdByIndex(e);
@@ -436,9 +449,9 @@ const Q = /* @__PURE__ */ w(Ae, [["render", Me], ["__scopeId", "data-v-3bbbc77b"
436
449
  this.hoverApartmentIndex < 0 && this.selectedUnitId && t === this.selectedUnitId ? o = "selected" : this.hoverApartmentIndex >= 0 && this.hoverApartmentIndex === e && (o = "hover");
437
450
  const n = this.colorCallback(i, o);
438
451
  if (n) {
439
- const { r: s, g: r, b: a, a: g, s: v } = n;
452
+ const { r: s, g: r, b: a, a: g, s: f } = n;
440
453
  return {
441
- strokeWidth: v !== void 0 ? v : 2,
454
+ strokeWidth: f !== void 0 ? f : 2,
442
455
  stroke: `rgb(${s}, ${r}, ${a})`,
443
456
  strokeOpacity: 1,
444
457
  fill: `rgb(${s}, ${r}, ${a})`,
@@ -456,13 +469,13 @@ const Q = /* @__PURE__ */ w(Ae, [["render", Me], ["__scopeId", "data-v-3bbbc77b"
456
469
  };
457
470
  }
458
471
  }
459
- }, Fe = {
472
+ }, Se = {
460
473
  id: "container",
461
474
  ref: "container"
462
- }, He = ["viewBox"], Te = ["innerHTML", "onMouseenter", "onMouseleave", "onClick"];
463
- function Oe(e, t, i, o, n, s) {
475
+ }, Be = ["viewBox"], De = ["innerHTML", "onMouseenter", "onMouseleave", "onClick"];
476
+ function Ae(e, t, i, o, n, s) {
464
477
  const r = u("qi-hover-probe");
465
- return d(), m("div", Fe, [
478
+ return d(), m("div", Se, [
466
479
  A(h("div", {
467
480
  class: "svg-container",
468
481
  style: D({
@@ -473,22 +486,22 @@ function Oe(e, t, i, o, n, s) {
473
486
  key: 0,
474
487
  viewBox: n.currentSvgImage.viewBox
475
488
  }, [
476
- (d(!0), m(E, null, T(n.currentSvgImage.svgObjects, ({ index: a, svg: g }) => (d(), m("g", {
489
+ (d(!0), m(L, null, T(n.currentSvgImage.svgObjects, ({ index: a, svg: g }) => (d(), m("g", {
477
490
  key: a,
478
491
  innerHTML: g,
479
492
  style: D(s.getGClass(a)),
480
- onMouseenter: (v) => s.mouseEnter(a),
481
- onMouseleave: (v) => s.mouseLeave(a),
482
- onClick: (v) => s.click(a)
483
- }, null, 44, Te))), 128))
484
- ], 8, He)) : I("", !0)
493
+ onMouseenter: (f) => s.mouseEnter(a),
494
+ onMouseleave: (f) => s.mouseLeave(a),
495
+ onClick: (f) => s.click(a)
496
+ }, null, 44, De))), 128))
497
+ ], 8, Be)) : k("", !0)
485
498
  ], 4), [
486
499
  [x, !i.viewModel.isRotating]
487
500
  ]),
488
501
  l(r, { ref: "hoverProbe" }, null, 512)
489
502
  ], 512);
490
503
  }
491
- const V = /* @__PURE__ */ w(Re, [["render", Oe], ["__scopeId", "data-v-82a61864"]]), Le = {
504
+ const X = /* @__PURE__ */ w(Ce, [["render", Ae], ["__scopeId", "data-v-82a61864"]]), xe = {
492
505
  name: "QiApartmentChooserNavigation",
493
506
  inject: ["i18n"],
494
507
  props: {
@@ -509,11 +522,11 @@ const V = /* @__PURE__ */ w(Re, [["render", Oe], ["__scopeId", "data-v-82a61864"
509
522
  e.keyCode === 37 ? this.prevUnit && this.$emit("prev-unit") : e.keyCode === 39 && this.nextUnit && this.$emit("next-unit");
510
523
  }
511
524
  }
512
- }, Ue = {
525
+ }, Me = {
513
526
  key: 0,
514
527
  class: "d-none d-md-flex"
515
528
  };
516
- function $e(e, t, i, o, n, s) {
529
+ function Re(e, t, i, o, n, s) {
517
530
  const r = u("v-btn");
518
531
  return d(), m("div", null, [
519
532
  l(r, {
@@ -539,7 +552,7 @@ function $e(e, t, i, o, n, s) {
539
552
  onClick: t[2] || (t[2] = (a) => e.$emit("go-to-unit", i.selectedUnit))
540
553
  }, {
541
554
  default: c(() => [
542
- i.selectedUnit && i.canGoToUnitCallback(i.selectedUnit) ? (d(), m("span", Ue, S(s.i18n.getLabel("see-apartment")) + "  ", 1)) : I("", !0),
555
+ i.selectedUnit && i.canGoToUnitCallback(i.selectedUnit) ? (d(), m("span", Me, S(s.i18n.getLabel("see-apartment")) + "  ", 1)) : k("", !0),
543
556
  h("span", null, S(i.selectedUnit && "title" in i.selectedUnit ? i.selectedUnit.title : "-"), 1)
544
557
  ]),
545
558
  _: 1
@@ -561,8 +574,8 @@ function $e(e, t, i, o, n, s) {
561
574
  })
562
575
  ]);
563
576
  }
564
- const se = /* @__PURE__ */ w(Le, [["render", $e], ["__scopeId", "data-v-129ef905"]]);
565
- class G {
577
+ const ce = /* @__PURE__ */ w(xe, [["render", Re], ["__scopeId", "data-v-129ef905"]]);
578
+ class W {
566
579
  constructor(t) {
567
580
  this._numParts = t, this._loadedCount = 0, this._isError = !1, this._finishedAction = () => {
568
581
  }, this._errorAction = () => {
@@ -594,7 +607,7 @@ class G {
594
607
  return Math.round(this._loadedCount * 100 / this._numParts);
595
608
  }
596
609
  }
597
- class oe {
610
+ class J {
598
611
  constructor(t, i, o, n) {
599
612
  this._rotator = t, this._direction = i, this._frameIndex = o, this._sceneCount = n;
600
613
  }
@@ -608,7 +621,7 @@ class oe {
608
621
  const t = this._rotator.clampFrameIndex(
609
622
  this._frameIndex + this._direction
610
623
  ), i = this._rotator.isCardinalFrame(t) ? this._sceneCount - 1 : this._sceneCount;
611
- return new oe(
624
+ return new J(
612
625
  this._rotator,
613
626
  this._direction,
614
627
  t,
@@ -616,13 +629,13 @@ class oe {
616
629
  );
617
630
  }
618
631
  }
619
- class ve {
632
+ class Fe {
620
633
  constructor(t, i) {
621
634
  this._cardinalFrames = t, this._totalFrameCount = i;
622
635
  }
623
636
  start(t, i, o) {
624
637
  const n = this.startFrameIndexForScene(i);
625
- return new oe(this, t, n, o);
638
+ return new J(this, t, n, o);
626
639
  }
627
640
  isCardinalFrame(t) {
628
641
  return this._cardinalFrames.includes(t);
@@ -634,7 +647,7 @@ class ve {
634
647
  return this._cardinalFrames[t];
635
648
  }
636
649
  }
637
- const ce = 64, j = 4, Ee = 120, je = {
650
+ const se = 64, O = 4, He = 120, Te = {
638
651
  name: "QiApartmentChooserRotator",
639
652
  props: {
640
653
  viewModel: { type: Object, required: !0 },
@@ -646,8 +659,8 @@ const ce = 64, j = 4, Ee = 120, je = {
646
659
  data() {
647
660
  const e = this.createFrames();
648
661
  return {
649
- loadTracker: new G(e.length).onLoadFinished(() => this.$emit("loaded")).onLoadProgress((t) => this.$emit("progress", t)).onLoadError(() => this.$emit("error")),
650
- sceneRotator: new ve(this.cardinalFrames, ce),
662
+ loadTracker: new W(e.length).onLoadFinished(() => this.$emit("loaded")).onLoadProgress((t) => this.$emit("progress", t)).onLoadError(() => this.$emit("error")),
663
+ sceneRotator: new Fe(this.cardinalFrames, se),
651
664
  images: e,
652
665
  isPreloaded: !1
653
666
  };
@@ -668,22 +681,30 @@ const ce = 64, j = 4, Ee = 120, je = {
668
681
  },
669
682
  methods: {
670
683
  rotateInDirection(e, t, i) {
671
- this.viewModel.isRotating || (this.viewModel.isRotating = !0, this.rotationStep(this.sceneRotator.start(t, e % j, i)));
684
+ this.viewModel.isRotating || (this.viewModel.isRotating = !0, this.rotationStep(
685
+ this.sceneRotator.start(
686
+ t,
687
+ e % O,
688
+ i
689
+ )
690
+ ));
672
691
  },
673
692
  rotationStep(e) {
674
693
  setTimeout(() => {
675
694
  this.images[e.frameIndex].show = !1;
676
695
  const t = e.nextFrame();
677
696
  this.images[t.frameIndex].show = !0, t.atEnd ? this.rotateComplete() : window.requestAnimationFrame(() => this.rotationStep(t));
678
- }, 1e3 / Ee);
697
+ }, 1e3 / He);
679
698
  },
680
699
  rotateComplete() {
681
- const e = this.sceneRotator.startFrameIndexForScene(this.viewModel.currentScene % j);
700
+ const e = this.sceneRotator.startFrameIndexForScene(
701
+ this.viewModel.currentScene % O
702
+ );
682
703
  e in this.images && (this.images[e].show = !0), this.viewModel.isRotating = !1;
683
704
  },
684
705
  createFrames() {
685
706
  const e = [];
686
- for (let t = 0; t < ce; t++) {
707
+ for (let t = 0; t < se; t++) {
687
708
  const { sourceSet: i, defaultPath: o } = this.frameImageSource(t);
688
709
  e.push({
689
710
  index: t,
@@ -699,43 +720,45 @@ const ce = 64, j = 4, Ee = 120, je = {
699
720
  `${this.cdnFileResolver(`/480/${t}.jpg${i}`)} 480w`,
700
721
  `${this.cdnFileResolver(`/960/${t}.jpg${i}`)} 960w`,
701
722
  `${this.cdnFileResolver(`/1280/${t}.jpg${i}`)} 1280w`
702
- ].join(","), n = this.cdnFileResolver(`/480/${t}.jpg${i}`);
723
+ ].join(","), n = this.cdnFileResolver(
724
+ `/480/${t}.jpg${i}`
725
+ );
703
726
  return { sourceSet: o, defaultPath: n };
704
727
  },
705
728
  getSceneCountBetween(e, t) {
706
- const i = j / 2, o = Math.abs(e - t);
707
- return o > i ? j - o : o;
729
+ const i = O / 2, o = Math.abs(e - t);
730
+ return o > i ? O - o : o;
708
731
  },
709
732
  getDirection(e, t) {
710
733
  if (e === t)
711
734
  return 0;
712
- const o = Math.abs(e - t) < j / 2;
735
+ const o = Math.abs(e - t) < O / 2;
713
736
  return o && e < t || !o && e > t ? 1 : -1;
714
737
  }
715
738
  }
716
- }, qe = {
739
+ }, Le = {
717
740
  key: 0,
718
741
  class: "fill-parent d-flex justify-center align-center blue-grey lighten-5"
719
- }, Ye = {
742
+ }, Ue = {
720
743
  key: 1,
721
744
  class: "frame-container"
722
- }, ze = { class: "frame-image" }, Pe = ["srcset", "type"], Qe = ["src"], Ve = {
745
+ }, $e = { class: "frame-image" }, Oe = ["srcset", "type"], Ee = ["src"], qe = {
723
746
  key: 2,
724
747
  id: "image-stack",
725
748
  class: "frame-container"
726
- }, Ge = ["alt"], Ne = ["srcset"], Xe = ["src"];
727
- function We(e, t, i, o, n, s) {
749
+ }, je = ["alt"], Ye = ["srcset"], ze = ["src"];
750
+ function Pe(e, t, i, o, n, s) {
728
751
  const r = u("v-icon");
729
752
  return d(), m("div", null, [
730
- n.loadTracker.isError ? (d(), m("div", qe, [
753
+ n.loadTracker.isError ? (d(), m("div", Le, [
731
754
  l(r, { "x-large": "" }, {
732
755
  default: c(() => [
733
756
  B("mdi-alert-circle-outline")
734
757
  ]),
735
758
  _: 1
736
759
  })
737
- ])) : n.isPreloaded ? (d(), m("div", Ve, [
738
- (d(!0), m(E, null, T(n.images, (a) => (d(), m("picture", {
760
+ ])) : n.isPreloaded ? (d(), m("div", qe, [
761
+ (d(!0), m(L, null, T(n.images, (a) => (d(), m("picture", {
739
762
  key: a.index,
740
763
  alt: a.index,
741
764
  class: M({ "frame-image": !0, show: a.show })
@@ -743,30 +766,30 @@ function We(e, t, i, o, n, s) {
743
766
  h("source", {
744
767
  srcset: a.sourceSet,
745
768
  type: "image/jpeg"
746
- }, null, 8, Ne),
769
+ }, null, 8, Ye),
747
770
  h("img", {
748
771
  src: a.defaultPath,
749
772
  alt: "Building image",
750
773
  onLoad: t[2] || (t[2] = (g) => n.loadTracker.partLoaded()),
751
774
  onError: t[3] || (t[3] = (g) => n.loadTracker.errorDetected())
752
- }, null, 40, Xe)
753
- ], 10, Ge))), 128))
754
- ])) : (d(), m("div", Ye, [
755
- h("picture", ze, [
775
+ }, null, 40, ze)
776
+ ], 10, je))), 128))
777
+ ])) : (d(), m("div", Ue, [
778
+ h("picture", $e, [
756
779
  h("source", {
757
780
  srcset: s.activeFrame.sourceSet,
758
781
  type: s.activeFrame.type
759
- }, null, 8, Pe),
782
+ }, null, 8, Oe),
760
783
  h("img", {
761
784
  src: s.activeFrame.defaultPath,
762
785
  onLoad: t[0] || (t[0] = (a) => n.isPreloaded = !0),
763
786
  onError: t[1] || (t[1] = (a) => n.loadTracker.errorDetected())
764
- }, null, 40, Qe)
787
+ }, null, 40, Ee)
765
788
  ])
766
789
  ]))
767
790
  ]);
768
791
  }
769
- const re = /* @__PURE__ */ w(je, [["render", We], ["__scopeId", "data-v-e6481f8e"]]), Ke = {
792
+ const ue = /* @__PURE__ */ w(Te, [["render", Pe], ["__scopeId", "data-v-e6481f8e"]]), Qe = {
770
793
  name: "FloatingCard",
771
794
  props: {
772
795
  pos: { type: Object, required: !0 },
@@ -779,9 +802,9 @@ const re = /* @__PURE__ */ w(je, [["render", We], ["__scopeId", "data-v-e6481f8e
779
802
  }
780
803
  }
781
804
  };
782
- function Ze(e, t, i, o, n, s) {
805
+ function Ve(e, t, i, o, n, s) {
783
806
  const r = u("v-dialog"), a = u("v-fade-transition");
784
- return d(), C(a, {
807
+ return d(), I(a, {
785
808
  origin: s.q.replace("-", " ") + " " + i.pos.x + " " + i.pos.y
786
809
  }, {
787
810
  default: c(() => [
@@ -790,15 +813,15 @@ function Ze(e, t, i, o, n, s) {
790
813
  class: M(["floating-card", s.q]),
791
814
  style: D({ left: `${i.pos.x}px`, top: `${i.pos.y}px`, pointerEvents: "none" })
792
815
  }, [
793
- k(e.$slots, "default", { isHoverable: i.isHoverable }, void 0, !0)
794
- ], 6)) : (d(), C(r, {
816
+ _(e.$slots, "default", { isHoverable: i.isHoverable }, void 0, !0)
817
+ ], 6)) : (d(), I(r, {
795
818
  key: 1,
796
819
  value: !0,
797
820
  width: "auto",
798
821
  "onClick:outside": t[0] || (t[0] = (g) => e.$emit("outside", g))
799
822
  }, {
800
823
  default: c(() => [
801
- k(e.$slots, "default", { isHoverable: i.isHoverable }, void 0, !0)
824
+ _(e.$slots, "default", { isHoverable: i.isHoverable }, void 0, !0)
802
825
  ]),
803
826
  _: 3
804
827
  }))
@@ -806,7 +829,7 @@ function Ze(e, t, i, o, n, s) {
806
829
  _: 3
807
830
  }, 8, ["origin"]);
808
831
  }
809
- const q = /* @__PURE__ */ w(Ke, [["render", Ze], ["__scopeId", "data-v-b74de171"]]), Je = {
832
+ const z = /* @__PURE__ */ w(Qe, [["render", Ve], ["__scopeId", "data-v-b74de171"]]), Ge = {
810
833
  name: "QiZoomBox",
811
834
  props: {
812
835
  desktop: {
@@ -951,14 +974,20 @@ const q = /* @__PURE__ */ w(Ke, [["render", Ze], ["__scopeId", "data-v-b74de171"
951
974
  },
952
975
  touchMoveHandler(e) {
953
976
  if (this.moving) {
954
- const { x: t, y: i } = this.getOffsetCoordinates(e.touches[0]), { x: o, y: n } = this.getOffsetCoordinates(this.lastEvent.touches[0]), s = {
977
+ const { x: t, y: i } = this.getOffsetCoordinates(e.touches[0]), { x: o, y: n } = this.getOffsetCoordinates(
978
+ this.lastEvent.touches[0]
979
+ ), s = {
955
980
  x: t - o,
956
981
  y: i - n
957
982
  };
958
983
  this.adjustTranslateX(s.x), this.adjustTranslateY(s.y);
959
984
  } else if (this.scaling && e.touches.length === 2) {
960
- const { x: t, y: i } = this.getOffsetCoordinates(e.touches[0]), { x: o, y: n } = this.getOffsetCoordinates(this.lastEvent.touches[0]), { x: s, y: r } = this.getOffsetCoordinates(e.touches[1]), { x: a, y: g } = this.getOffsetCoordinates(this.lastEvent.touches[1]), v = Math.hypot(o - a, n - g), f = Math.hypot(t - s, i - r), _ = (s + t) / 2, b = (r + i) / 2;
961
- this.adjustZoom(f - v, _, b);
985
+ const { x: t, y: i } = this.getOffsetCoordinates(e.touches[0]), { x: o, y: n } = this.getOffsetCoordinates(
986
+ this.lastEvent.touches[0]
987
+ ), { x: s, y: r } = this.getOffsetCoordinates(e.touches[1]), { x: a, y: g } = this.getOffsetCoordinates(
988
+ this.lastEvent.touches[1]
989
+ ), f = Math.hypot(o - a, n - g), y = Math.hypot(t - s, i - r), C = (s + t) / 2, p = (r + i) / 2;
990
+ this.adjustZoom(y - f, C, p);
962
991
  }
963
992
  this.lastEvent = e;
964
993
  },
@@ -974,17 +1003,26 @@ const q = /* @__PURE__ */ w(Ke, [["render", Ze], ["__scopeId", "data-v-b74de171"
974
1003
  },
975
1004
  adjustTranslateX(e) {
976
1005
  const t = this.$refs.box.clientWidth, i = t * this.scale;
977
- this.originX = Math.max(Math.min(0, this.originX + e), -(i - t));
1006
+ this.originX = Math.max(
1007
+ Math.min(0, this.originX + e),
1008
+ -(i - t)
1009
+ );
978
1010
  },
979
1011
  adjustTranslateY(e) {
980
1012
  const t = this.$refs.box.clientHeight, i = t * this.scale;
981
- this.originY = Math.max(Math.min(0, this.originY + e), -(i - t));
1013
+ this.originY = Math.max(
1014
+ Math.min(0, this.originY + e),
1015
+ -(i - t)
1016
+ );
982
1017
  },
983
1018
  adjustZoom(e, t, i) {
984
1019
  const o = this.$refs.box.clientWidth, n = this.$refs.box.clientHeight, s = o * this.scale, r = n * this.scale;
985
- this.zoom = Math.min(Math.max(100, this.zoom + e), this.actualMaxScale);
986
- const a = o * this.scale, g = n * this.scale, v = a - s, f = g - r;
987
- this.originX -= t / o * v, this.originY -= i / n * f, this.adjustTranslateX(0), this.adjustTranslateY(0);
1020
+ this.zoom = Math.min(
1021
+ Math.max(100, this.zoom + e),
1022
+ this.actualMaxScale
1023
+ );
1024
+ const a = o * this.scale, g = n * this.scale, f = a - s, y = g - r;
1025
+ this.originX -= t / o * f, this.originY -= i / n * y, this.adjustTranslateX(0), this.adjustTranslateY(0);
988
1026
  },
989
1027
  emitUpdate() {
990
1028
  this.$emit("update", {
@@ -992,34 +1030,34 @@ const q = /* @__PURE__ */ w(Ke, [["render", Ze], ["__scopeId", "data-v-b74de171"
992
1030
  x: this.originX,
993
1031
  y: this.originY,
994
1032
  resolve: (e, t) => {
995
- const i = this.$refs.box.clientWidth, o = this.$refs.box.clientHeight, n = this.originX / -this.scale, s = this.originY / -this.scale, r = n + i / this.scale, a = s + o / this.scale, g = e / i * (r - n) + n, v = t / o * (a - s) + s;
996
- return { x: g, y: v };
1033
+ const i = this.$refs.box.clientWidth, o = this.$refs.box.clientHeight, n = this.originX / -this.scale, s = this.originY / -this.scale, r = n + i / this.scale, a = s + o / this.scale, g = e / i * (r - n) + n, f = t / o * (a - s) + s;
1034
+ return { x: g, y: f };
997
1035
  }
998
1036
  });
999
1037
  }
1000
1038
  }
1001
- }, et = {
1039
+ }, Ne = {
1002
1040
  ref: "box",
1003
1041
  class: "zoom-box-container"
1004
1042
  };
1005
- function tt(e, t, i, o, n, s) {
1006
- return d(), m("div", et, [
1043
+ function Xe(e, t, i, o, n, s) {
1044
+ return d(), m("div", Ne, [
1007
1045
  h("div", {
1008
1046
  style: D({ "transform-origin": "top left", transform: s.transform }),
1009
1047
  class: "zoom-box"
1010
1048
  }, [
1011
- k(e.$slots, "default", {}, void 0, !0)
1049
+ _(e.$slots, "default", {}, void 0, !0)
1012
1050
  ], 4)
1013
1051
  ], 512);
1014
1052
  }
1015
- const Y = /* @__PURE__ */ w(Je, [["render", tt], ["__scopeId", "data-v-83bfd28a"]]), ae = 4;
1016
- function pe(e) {
1017
- return e < ae ? e + 1 : 1;
1053
+ const P = /* @__PURE__ */ w(Ge, [["render", Xe], ["__scopeId", "data-v-83bfd28a"]]), ee = 4;
1054
+ function he(e) {
1055
+ return e < ee ? e + 1 : 1;
1018
1056
  }
1019
- function it(e) {
1020
- return e > 1 ? e - 1 : ae;
1057
+ function We(e) {
1058
+ return e > 1 ? e - 1 : ee;
1021
1059
  }
1022
- class fe {
1060
+ class Ke {
1023
1061
  constructor(t) {
1024
1062
  this._state = {
1025
1063
  isRotating: !1,
@@ -1049,16 +1087,16 @@ class fe {
1049
1087
  }
1050
1088
  rotateCounterClockwise() {
1051
1089
  this.unlessRotatingDo(() => {
1052
- this.currentScene = pe(this.currentScene);
1090
+ this.currentScene = he(this.currentScene);
1053
1091
  });
1054
1092
  }
1055
1093
  rotateClockwise() {
1056
1094
  this.unlessRotatingDo(() => {
1057
- this.currentScene = it(this.currentScene);
1095
+ this.currentScene = We(this.currentScene);
1058
1096
  });
1059
1097
  }
1060
1098
  }
1061
- const nt = {
1099
+ const Ze = {
1062
1100
  // virtual tour default labels
1063
1101
  interior: "Interiør",
1064
1102
  "see-a-selection-of-the-options-in-the-project": "Se et utvalg av tilvalgsmulighetene i prosjektet.",
@@ -1089,9 +1127,9 @@ const nt = {
1089
1127
  "use-two-fingers-to-zoom": { en: "Use two fingers to zoom", nb: "Bruk to fingre for å zoome" },
1090
1128
  "dont-show-again": { en: "Don't Show Again", nb: "Ikke vis igjen" }
1091
1129
  };
1092
- class R {
1130
+ class F {
1093
1131
  constructor(t, i) {
1094
- this._labels = { ...nt, ...t || {} }, this._language = i || "en";
1132
+ this._labels = { ...Ze, ...t || {} }, this._language = i || "en";
1095
1133
  }
1096
1134
  getLabel(t) {
1097
1135
  return t in this._labels ? this.get(this._labels[t]) : t;
@@ -1107,20 +1145,20 @@ class R {
1107
1145
  return "";
1108
1146
  }
1109
1147
  }
1110
- const st = 4, ot = [0, 16, 32, 48], rt = {
1148
+ const Je = 4, et = [0, 16, 32, 48], tt = {
1111
1149
  name: "QiApartmentChooser",
1112
1150
  components: {
1113
- QiApartmentChooserRaster: Q,
1114
- QiApartmentChooserSvg: V,
1115
- QiApartmentChooserNavigation: se,
1116
- QiApartmentChooserRotator: re,
1117
- QiFloatingCard: q,
1118
- QiHoverProbe: L,
1119
- QiZoomBox: Y
1151
+ QiApartmentChooserRaster: N,
1152
+ QiApartmentChooserSvg: X,
1153
+ QiApartmentChooserNavigation: ce,
1154
+ QiApartmentChooserRotator: ue,
1155
+ QiFloatingCard: z,
1156
+ QiHoverProbe: $,
1157
+ QiZoomBox: P
1120
1158
  },
1121
1159
  provide() {
1122
1160
  return {
1123
- i18n: this.i18n ? new R(this.i18n.labels, this.i18n.language) : new R()
1161
+ i18n: this.i18n ? new F(this.i18n.labels, this.i18n.language) : new F()
1124
1162
  };
1125
1163
  },
1126
1164
  emits: [
@@ -1162,7 +1200,7 @@ const st = 4, ot = [0, 16, 32, 48], rt = {
1162
1200
  sceneData: null,
1163
1201
  scenes: null,
1164
1202
  viewModel: void 0,
1165
- resourceLoader: new O(),
1203
+ resourceLoader: new U(),
1166
1204
  pos: { x: 0, y: 0, width: 0, height: 0 },
1167
1205
  closeHandler: void 0,
1168
1206
  hoverApartment: void 0
@@ -1176,7 +1214,7 @@ const st = 4, ot = [0, 16, 32, 48], rt = {
1176
1214
  return this.unitCallback ? this.unitCallback(this.selectedUnitId) : this.selectedUnitId;
1177
1215
  },
1178
1216
  overlayComponent() {
1179
- return this.useSvg ? V : Q;
1217
+ return this.useSvg ? X : N;
1180
1218
  }
1181
1219
  },
1182
1220
  watch: {
@@ -1190,41 +1228,45 @@ const st = 4, ot = [0, 16, 32, 48], rt = {
1190
1228
  immediate: !0
1191
1229
  }
1192
1230
  },
1193
- mounted() {
1194
- return K(this, void 0, void 0, function* () {
1195
- let e = null;
1196
- try {
1197
- e = yield this.resourceLoader.loadJson(this.cdnFileResolver("/apartmentChooser.json"));
1198
- } catch {
1199
- console.info("apartmentChooser.json not found");
1200
- }
1201
- const t = e && e.startScene !== void 0 ? e.startScene : st;
1202
- this.scenes = e && e.scenes !== void 0 ? e.scenes : ot, this.sceneData = e && e.sceneData !== void 0 ? e.sceneData.map((n) => ({
1203
- apartmentId: n.apartmentID,
1204
- index: n.index
1205
- })) : this.buildingSceneDataResolver ? yield this.buildingSceneDataResolver() : [], this.scenesByApartment = e && e.sceneData !== void 0 ? e.sceneData.map((n) => {
1206
- const s = n.bestScene === 0 ? 4 : n.bestScene;
1207
- return { unitId: n.apartmentID, scene: s };
1208
- }).reduce((n, s) => Object.assign(Object.assign({}, n), { [s.unitId]: s.scene }), {}) : this.buildingScenesByApartmentResolver ? yield this.buildingScenesByApartmentResolver() : [];
1209
- const i = (n, s = "unitId") => {
1210
- let r = t, a = [];
1211
- for (let g = 0; g < ae; g++)
1212
- a.push(r), r = pe(r);
1213
- return n.sort((g, v) => {
1214
- const f = a.findIndex((b) => b === this.scenesByApartment[g[s]]), _ = a.findIndex((b) => b === this.scenesByApartment[v[s]]);
1215
- return f < _ ? -1 : f > _ ? 1 : 0;
1216
- }), n;
1217
- }, o = (n) => {
1218
- this.viewModel = new fe(n);
1219
- };
1220
- this.$emit("initialized", {
1221
- scene: t,
1222
- scenes: this.scenes,
1223
- sceneData: this.sceneData,
1224
- scenesByApartment: this.scenesByApartment,
1225
- unitsSceneSort: i,
1226
- initialize: o
1227
- });
1231
+ async mounted() {
1232
+ let e = null;
1233
+ try {
1234
+ e = await this.resourceLoader.loadJson(
1235
+ this.cdnFileResolver("/apartmentChooser.json")
1236
+ );
1237
+ } catch {
1238
+ console.info("apartmentChooser.json not found");
1239
+ }
1240
+ const t = e && e.startScene !== void 0 ? e.startScene : Je;
1241
+ this.scenes = e && e.scenes !== void 0 ? e.scenes : et, this.sceneData = e && e.sceneData !== void 0 ? e.sceneData.map((n) => ({
1242
+ apartmentId: n.apartmentID,
1243
+ index: n.index
1244
+ })) : this.buildingSceneDataResolver ? await this.buildingSceneDataResolver() : [], this.scenesByApartment = e && e.sceneData !== void 0 ? e.sceneData.map((n) => {
1245
+ const s = n.bestScene === 0 ? 4 : n.bestScene;
1246
+ return { unitId: n.apartmentID, scene: s };
1247
+ }).reduce((n, s) => ({ ...n, [s.unitId]: s.scene }), {}) : this.buildingScenesByApartmentResolver ? await this.buildingScenesByApartmentResolver() : [];
1248
+ const i = (n, s = "unitId") => {
1249
+ let r = t, a = [];
1250
+ for (let g = 0; g < ee; g++)
1251
+ a.push(r), r = he(r);
1252
+ return n.sort((g, f) => {
1253
+ const y = a.findIndex(
1254
+ (p) => p === this.scenesByApartment[g[s]]
1255
+ ), C = a.findIndex(
1256
+ (p) => p === this.scenesByApartment[f[s]]
1257
+ );
1258
+ return y < C ? -1 : y > C ? 1 : 0;
1259
+ }), n;
1260
+ }, o = (n) => {
1261
+ this.viewModel = new Ke(n);
1262
+ };
1263
+ this.$emit("initialized", {
1264
+ scene: t,
1265
+ scenes: this.scenes,
1266
+ sceneData: this.sceneData,
1267
+ scenesByApartment: this.scenesByApartment,
1268
+ unitsSceneSort: i,
1269
+ initialize: o
1228
1270
  });
1229
1271
  },
1230
1272
  methods: {
@@ -1238,15 +1280,15 @@ const st = 4, ot = [0, 16, 32, 48], rt = {
1238
1280
  this.hoverApartment = null, this.closeHandler = t, this.$emit("hover-out-unit", e);
1239
1281
  }
1240
1282
  }
1241
- }, at = { key: 0 }, lt = { class: "interactive-viewer" }, dt = { class: "fill-parent" }, ct = { key: 0 }, ut = {
1283
+ }, it = { key: 0 }, nt = { class: "interactive-viewer" }, st = { class: "fill-parent" }, ot = { key: 0 }, rt = {
1242
1284
  key: 1,
1243
1285
  class: "navigation"
1244
- }, ht = { key: 2 };
1245
- function mt(e, t, i, o, n, s) {
1246
- const r = u("qi-apartment-chooser-rotator"), a = u("qi-zoom-box"), g = u("qi-floating-card"), v = u("qi-apartment-chooser-navigation"), f = u("v-progress-linear"), _ = u("qi-hover-probe");
1247
- return n.viewModel ? (d(), m("div", at, [
1248
- h("div", lt, [
1249
- h("div", dt, [
1286
+ }, at = { key: 2 };
1287
+ function lt(e, t, i, o, n, s) {
1288
+ const r = u("qi-apartment-chooser-rotator"), a = u("qi-zoom-box"), g = u("qi-floating-card"), f = u("qi-apartment-chooser-navigation"), y = u("v-progress-linear"), C = u("qi-hover-probe");
1289
+ return n.viewModel ? (d(), m("div", it, [
1290
+ h("div", nt, [
1291
+ h("div", st, [
1250
1292
  l(a, {
1251
1293
  desktop: n.loadState.isReady && i.interactiveDesktop,
1252
1294
  mobile: n.loadState.isReady && i.interactiveMobile
@@ -1257,12 +1299,12 @@ function mt(e, t, i, o, n, s) {
1257
1299
  "view-model": n.viewModel,
1258
1300
  "cardinal-frames": n.scenes,
1259
1301
  build: i.build,
1260
- onProgress: t[0] || (t[0] = (b) => n.loadState.progress = b),
1261
- onLoaded: t[1] || (t[1] = (b) => n.loadState.isReady = !0),
1262
- onError: t[2] || (t[2] = (b) => n.loadState.isError = !0)
1302
+ onProgress: t[0] || (t[0] = (p) => n.loadState.progress = p),
1303
+ onLoaded: t[1] || (t[1] = (p) => n.loadState.isReady = !0),
1304
+ onError: t[2] || (t[2] = (p) => n.loadState.isError = !0)
1263
1305
  }, null, 8, ["cdn-file-resolver", "view-model", "cardinal-frames", "build"]),
1264
- n.loadState.isReady ? (d(), m("div", ct, [
1265
- (d(), C(ue(s.overlayComponent), {
1306
+ n.loadState.isReady ? (d(), m("div", ot, [
1307
+ (d(), I(oe(s.overlayComponent), {
1266
1308
  "cdn-file-resolver": i.cdnFileResolver,
1267
1309
  "view-model": n.viewModel,
1268
1310
  "selected-unit-id": i.selectedUnitId,
@@ -1271,29 +1313,29 @@ function mt(e, t, i, o, n, s) {
1271
1313
  "unit-callback": i.unitCallback,
1272
1314
  "can-go-to-unit-callback": i.canGoToUnitCallback,
1273
1315
  "draw-observer": i.drawObserver,
1274
- onSelectUnit: t[3] || (t[3] = (b) => e.$emit("select-unit", b)),
1275
- onGoToUnit: t[4] || (t[4] = (b) => e.$emit("go-to-unit", b)),
1316
+ onSelectUnit: t[3] || (t[3] = (p) => e.$emit("select-unit", p)),
1317
+ onGoToUnit: t[4] || (t[4] = (p) => e.$emit("go-to-unit", p)),
1276
1318
  onHoverOver: s.hoverOver,
1277
1319
  onHoverOut: s.hoverOut,
1278
1320
  onPos: s.onPos
1279
1321
  }, {
1280
- default: c((b) => [
1281
- k(e.$slots, "default", he(me(b)), void 0, !0)
1322
+ default: c((p) => [
1323
+ _(e.$slots, "default", re(ae(p)), void 0, !0)
1282
1324
  ]),
1283
1325
  _: 3
1284
1326
  }, 40, ["cdn-file-resolver", "view-model", "selected-unit-id", "scene-data", "color-callback", "unit-callback", "can-go-to-unit-callback", "draw-observer", "onHoverOver", "onHoverOut", "onPos"]))
1285
- ])) : I("", !0)
1327
+ ])) : k("", !0)
1286
1328
  ]),
1287
1329
  _: 3
1288
1330
  }, 8, ["desktop", "mobile"]),
1289
- n.hoverApartment && i.showCards ? (d(), C(g, {
1331
+ n.hoverApartment && i.showCards ? (d(), I(g, {
1290
1332
  key: 0,
1291
1333
  "is-hoverable": s.isHoverable,
1292
1334
  pos: n.pos,
1293
1335
  onOutside: n.closeHandler
1294
1336
  }, {
1295
1337
  default: c(() => [
1296
- k(e.$slots, "default", {
1338
+ _(e.$slots, "default", {
1297
1339
  unit: n.hoverApartment,
1298
1340
  canGoToUnit: i.canGoToUnitCallback(n.hoverApartment),
1299
1341
  goToUnit: () => i.canGoToUnitCallback(n.hoverApartment) && e.$emit("go-to-unit", n.hoverApartment),
@@ -1303,37 +1345,37 @@ function mt(e, t, i, o, n, s) {
1303
1345
  }, void 0, !0)
1304
1346
  ]),
1305
1347
  _: 3
1306
- }, 8, ["is-hoverable", "pos", "onOutside"])) : I("", !0),
1307
- n.loadState.isReady ? (d(), m("div", ut, [
1308
- l(v, {
1348
+ }, 8, ["is-hoverable", "pos", "onOutside"])) : k("", !0),
1349
+ n.loadState.isReady ? (d(), m("div", rt, [
1350
+ l(f, {
1309
1351
  "can-go-to-unit-callback": i.canGoToUnitCallback,
1310
1352
  "selected-unit": s.selectedUnit,
1311
1353
  "prev-unit": i.prevUnit,
1312
1354
  "next-unit": i.nextUnit,
1313
1355
  "view-model": n.viewModel,
1314
- onGoToUnit: t[5] || (t[5] = (b) => e.$emit("go-to-unit", b)),
1315
- onPrevUnit: t[6] || (t[6] = (b) => e.$emit("nav-unit", i.prevUnit)),
1316
- onNextUnit: t[7] || (t[7] = (b) => e.$emit("nav-unit", i.nextUnit))
1356
+ onGoToUnit: t[5] || (t[5] = (p) => e.$emit("go-to-unit", p)),
1357
+ onPrevUnit: t[6] || (t[6] = (p) => e.$emit("nav-unit", i.prevUnit)),
1358
+ onNextUnit: t[7] || (t[7] = (p) => e.$emit("nav-unit", i.nextUnit))
1317
1359
  }, null, 8, ["can-go-to-unit-callback", "selected-unit", "prev-unit", "next-unit", "view-model"])
1318
- ])) : n.loadState.isError ? I("", !0) : (d(), m("div", ht, [
1319
- l(f, {
1360
+ ])) : n.loadState.isError ? k("", !0) : (d(), m("div", at, [
1361
+ l(y, {
1320
1362
  indeterminate: !n.loadState.progress,
1321
1363
  value: n.loadState.progress
1322
1364
  }, null, 8, ["indeterminate", "value"])
1323
1365
  ]))
1324
1366
  ])
1325
1367
  ]),
1326
- l(_, { ref: "hoverProbe" }, null, 512)
1327
- ])) : I("", !0);
1368
+ l(C, { ref: "hoverProbe" }, null, 512)
1369
+ ])) : k("", !0);
1328
1370
  }
1329
- const be = /* @__PURE__ */ w(rt, [["render", mt], ["__scopeId", "data-v-3a1121f3"]]), gt = "data:image/png;base64,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", vt = {
1371
+ const dt = /* @__PURE__ */ w(tt, [["render", lt], ["__scopeId", "data-v-3a1121f3"]]), ct = "data:image/png;base64,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", ut = {
1330
1372
  name: "QiNorthDirection",
1331
1373
  props: {
1332
1374
  longitude: { type: Number, default: () => 0 }
1333
1375
  },
1334
1376
  data() {
1335
1377
  return {
1336
- compassNeedle: gt
1378
+ compassNeedle: ct
1337
1379
  };
1338
1380
  },
1339
1381
  computed: {
@@ -1345,21 +1387,21 @@ const be = /* @__PURE__ */ w(rt, [["render", mt], ["__scopeId", "data-v-3a1121f3
1345
1387
  }
1346
1388
  }
1347
1389
  };
1348
- function pt(e, t, i, o, n, s) {
1390
+ function ht(e, t, i, o, n, s) {
1349
1391
  const r = u("v-img");
1350
- return d(), C(r, {
1392
+ return d(), I(r, {
1351
1393
  src: n.compassNeedle,
1352
1394
  style: D(s.needleRotation)
1353
1395
  }, null, 8, ["src", "style"]);
1354
1396
  }
1355
- const Z = /* @__PURE__ */ w(vt, [["render", pt]]);
1356
- function te(e) {
1397
+ const te = /* @__PURE__ */ w(ut, [["render", ht]]);
1398
+ function V(e) {
1357
1399
  return e.toLocaleString("en-no", {
1358
1400
  month: "short",
1359
1401
  day: "numeric"
1360
1402
  });
1361
1403
  }
1362
- const ft = W({
1404
+ const mt = Y({
1363
1405
  setup() {
1364
1406
  },
1365
1407
  name: "QiBuildingChooserSunSimControl",
@@ -1381,11 +1423,11 @@ const ft = W({
1381
1423
  return `${e}:${t}`;
1382
1424
  },
1383
1425
  dates() {
1384
- return this.dateSelector.dates.map(te);
1426
+ return this.dateSelector.dates.map(V);
1385
1427
  },
1386
1428
  selectedDate: {
1387
1429
  get() {
1388
- return te(this.dateSelector.selectedDate);
1430
+ return V(this.dateSelector.selectedDate);
1389
1431
  },
1390
1432
  set(e) {
1391
1433
  this.dateSelector.selectIndex(this.dates.indexOf(e));
@@ -1401,7 +1443,7 @@ const ft = W({
1401
1443
  },
1402
1444
  dates: {
1403
1445
  handler(e) {
1404
- this.currentDate = te(this.dateSelector.selectedDate);
1446
+ this.currentDate = V(this.dateSelector.selectedDate);
1405
1447
  },
1406
1448
  immediate: !0
1407
1449
  },
@@ -1410,32 +1452,32 @@ const ft = W({
1410
1452
  }
1411
1453
  },
1412
1454
  methods: {}
1413
- }), bt = { class: "sunsim-bar-wrapper" }, yt = { class: "sunsim-date d-flex align-center pl-5 pr-5" }, wt = {
1455
+ }), gt = { class: "sunsim-bar-wrapper" }, vt = { class: "sunsim-date d-flex align-center pl-5 pr-5" }, pt = {
1414
1456
  key: 1,
1415
1457
  class: "text-center text-body-1"
1416
- }, _t = { class: "sunsim-wrapper d-flex align-center px-3" }, kt = { class: "sunsim-time-label text-body-1 font-weight-normal ml-2" };
1417
- function It(e, t, i, o, n, s) {
1418
- const r = u("v-icon"), a = u("v-select"), g = u("v-progress-linear"), v = u("v-slider");
1419
- return d(), m("div", bt, [
1420
- h("div", yt, [
1458
+ }, ft = { class: "sunsim-wrapper d-flex align-center px-3" }, bt = { class: "sunsim-time-label text-body-1 font-weight-normal ml-2" };
1459
+ function yt(e, t, i, o, n, s) {
1460
+ const r = u("v-icon"), a = u("v-select"), g = u("v-progress-linear"), f = u("v-slider");
1461
+ return d(), m("div", gt, [
1462
+ h("div", vt, [
1421
1463
  l(r, {
1422
1464
  color: "black",
1423
1465
  class: "mr-2",
1424
1466
  icon: "mdi-calendar-blank-outline"
1425
1467
  }),
1426
- e.dateSelector.hasMultipleDates ? (d(), C(a, {
1468
+ e.dateSelector.hasMultipleDates ? (d(), I(a, {
1427
1469
  key: 0,
1428
1470
  modelValue: e.currentDate,
1429
- "onUpdate:modelValue": t[0] || (t[0] = (f) => e.currentDate = f),
1471
+ "onUpdate:modelValue": t[0] || (t[0] = (y) => e.currentDate = y),
1430
1472
  items: e.dates,
1431
1473
  density: "compact",
1432
1474
  variant: "underlined",
1433
1475
  "hide-details": "",
1434
1476
  class: "day-selector"
1435
- }, null, 8, ["modelValue", "items"])) : (d(), m("span", wt, S(e.selectedDate), 1))
1477
+ }, null, 8, ["modelValue", "items"])) : (d(), m("span", pt, S(e.selectedDate), 1))
1436
1478
  ]),
1437
- h("div", _t, [
1438
- h("span", kt, S(e.currentValueString), 1),
1479
+ h("div", ft, [
1480
+ h("span", bt, S(e.currentValueString), 1),
1439
1481
  l(r, {
1440
1482
  medium: "",
1441
1483
  class: "ml-2 mr-2 icon"
@@ -1445,17 +1487,17 @@ function It(e, t, i, o, n, s) {
1445
1487
  ]),
1446
1488
  _: 1
1447
1489
  }),
1448
- e.isLoading ? (d(), C(g, {
1490
+ e.isLoading ? (d(), I(g, {
1449
1491
  key: 0,
1450
1492
  indeterminate: "",
1451
1493
  rounded: "",
1452
1494
  height: "6",
1453
1495
  color: "grey lighten-1",
1454
1496
  class: "mr-2"
1455
- })) : (d(), C(v, {
1497
+ })) : (d(), I(f, {
1456
1498
  key: 1,
1457
1499
  modelValue: e.currentValue,
1458
- "onUpdate:modelValue": t[1] || (t[1] = (f) => e.currentValue = f),
1500
+ "onUpdate:modelValue": t[1] || (t[1] = (y) => e.currentValue = y),
1459
1501
  min: 0,
1460
1502
  max: 47,
1461
1503
  step: 1,
@@ -1470,7 +1512,7 @@ function It(e, t, i, o, n, s) {
1470
1512
  ])
1471
1513
  ]);
1472
1514
  }
1473
- const J = /* @__PURE__ */ w(ft, [["render", It], ["__scopeId", "data-v-1fba3edd"]]), Ct = W({
1515
+ const ie = /* @__PURE__ */ w(mt, [["render", yt], ["__scopeId", "data-v-1fba3edd"]]), wt = Y({
1474
1516
  setup() {
1475
1517
  },
1476
1518
  name: "QiBuildingChooserSceneImageStack",
@@ -1483,7 +1525,7 @@ const J = /* @__PURE__ */ w(ft, [["render", It], ["__scopeId", "data-v-1fba3edd"
1483
1525
  return {
1484
1526
  state: "init",
1485
1527
  activeStates: ["preloaded", "loaded"],
1486
- loadTracker: new G(0)
1528
+ loadTracker: new W(0)
1487
1529
  };
1488
1530
  },
1489
1531
  watch: {
@@ -1504,13 +1546,15 @@ const J = /* @__PURE__ */ w(ft, [["render", It], ["__scopeId", "data-v-1fba3edd"
1504
1546
  this.state = "preloaded", this.$emit("preloaded");
1505
1547
  },
1506
1548
  loadImages(e) {
1507
- this.state = "init", this.$refs.baseImage.src = e[0], this.loadTracker = new G(e.length).onLoadFinished(() => {
1508
- this.state = "loaded", this.$emit("ready");
1509
- });
1549
+ this.state = "init", this.$refs.baseImage.src = e[0], this.loadTracker = new W(e.length).onLoadFinished(
1550
+ () => {
1551
+ this.state = "loaded", this.$emit("ready");
1552
+ }
1553
+ );
1510
1554
  }
1511
1555
  }
1512
- }), St = { key: 0 }, Bt = ["src"];
1513
- function Dt(e, t, i, o, n, s) {
1556
+ }), _t = { key: 0 }, kt = ["src"];
1557
+ function It(e, t, i, o, n, s) {
1514
1558
  return d(), m("div", null, [
1515
1559
  h("img", {
1516
1560
  ref: "baseImage",
@@ -1518,29 +1562,29 @@ function Dt(e, t, i, o, n, s) {
1518
1562
  style: { opacity: 1, borderRadius: 50 },
1519
1563
  onLoad: t[0] || (t[0] = (...r) => e.onPreloaded && e.onPreloaded(...r))
1520
1564
  }, null, 544),
1521
- e.state === "preloaded" || e.state === "loaded" ? A((d(), m("div", St, [
1522
- (d(!0), m(E, null, T(e.imageUrls, (r, a) => (d(), m("img", {
1565
+ e.state === "preloaded" || e.state === "loaded" ? A((d(), m("div", _t, [
1566
+ (d(!0), m(L, null, T(e.imageUrls, (r, a) => (d(), m("img", {
1523
1567
  key: a,
1524
1568
  class: M({ "image-instance": !0, active: a === e.activeIndex }),
1525
1569
  src: r,
1526
1570
  onLoad: t[1] || (t[1] = (g) => e.loadTracker.partLoaded())
1527
- }, null, 42, Bt))), 128)),
1571
+ }, null, 42, kt))), 128)),
1528
1572
  B(" Here ")
1529
1573
  ], 512)), [
1530
1574
  [x, e.state === "loaded"]
1531
- ]) : I("", !0)
1575
+ ]) : k("", !0)
1532
1576
  ]);
1533
1577
  }
1534
- const ee = /* @__PURE__ */ w(Ct, [["render", Dt], ["__scopeId", "data-v-fad48118"]]), At = "buildingChooser.json", xt = 180;
1535
- class le {
1578
+ const ne = /* @__PURE__ */ w(wt, [["render", It], ["__scopeId", "data-v-fad48118"]]), Ct = "buildingChooser.json", St = 180;
1579
+ class me {
1536
1580
  constructor(t) {
1537
- this._cdnFileResolver = t, this._resourceLoader = new O();
1581
+ this._cdnFileResolver = t, this._resourceLoader = new U();
1538
1582
  }
1539
1583
  constructFileUrl(t) {
1540
1584
  return this._cdnFileResolver ? this._cdnFileResolver(`/${t}`) : null;
1541
1585
  }
1542
1586
  loadConfigFile() {
1543
- const t = this.constructFileUrl(At);
1587
+ const t = this.constructFileUrl(Ct);
1544
1588
  return t ? this._resourceLoader.loadJson(t) : null;
1545
1589
  }
1546
1590
  loadBuildingMapImage(t) {
@@ -1559,7 +1603,7 @@ class le {
1559
1603
  }
1560
1604
  getBackgroundImageData(t) {
1561
1605
  return "days" in t ? this.processMultipleDays(t.days) : [this.processTimeSamples(
1562
- xt,
1606
+ St,
1563
1607
  t.timeSamples
1564
1608
  )];
1565
1609
  }
@@ -1602,9 +1646,9 @@ class le {
1602
1646
  }
1603
1647
  }
1604
1648
  }
1605
- class U {
1649
+ class E {
1606
1650
  static empty() {
1607
- return new U([]);
1651
+ return new E([]);
1608
1652
  }
1609
1653
  constructor(t) {
1610
1654
  this._buildingIds = t;
@@ -1620,9 +1664,9 @@ class U {
1620
1664
  return n;
1621
1665
  }
1622
1666
  }
1623
- class $ {
1667
+ class q {
1624
1668
  static empty() {
1625
- return new $(null);
1669
+ return new q(null);
1626
1670
  }
1627
1671
  constructor(t) {
1628
1672
  this._mapImage = t, this._context = null;
@@ -1638,10 +1682,10 @@ class $ {
1638
1682
  }
1639
1683
  }
1640
1684
  }
1641
- const Mt = /* @__PURE__ */ new Date(0);
1642
- class z {
1685
+ const Bt = /* @__PURE__ */ new Date(0);
1686
+ class Q {
1643
1687
  static empty() {
1644
- return new z([{ referenceDate: Mt, urls: [] }]);
1688
+ return new Q([{ referenceDate: Bt, urls: [] }]);
1645
1689
  }
1646
1690
  constructor(t) {
1647
1691
  this._imagesByDay = t, this._state = { selectedIndex: 0 };
@@ -1665,23 +1709,23 @@ class z {
1665
1709
  return this._imagesByDay[this.selectedIndex].urls;
1666
1710
  }
1667
1711
  }
1668
- const Rt = W({
1712
+ const Dt = Y({
1669
1713
  setup() {
1670
- ge({});
1714
+ le({});
1671
1715
  },
1672
1716
  name: "QiBuildingChooserSvg",
1673
1717
  components: {
1674
- QiBuildingChooserSunSimControl: J,
1675
- QiBuildingChooserSceneImageStack: ee,
1676
- QiNorthDirection: Z,
1677
- QiFloatingCard: q,
1678
- QiHoverProbe: L,
1679
- QiZoomBox: Y
1718
+ QiBuildingChooserSunSimControl: ie,
1719
+ QiBuildingChooserSceneImageStack: ne,
1720
+ QiNorthDirection: te,
1721
+ QiFloatingCard: z,
1722
+ QiHoverProbe: $,
1723
+ QiZoomBox: P
1680
1724
  },
1681
1725
  emits: ["go-to-building", "hover-over-building", "hover-out-building"],
1682
1726
  provide() {
1683
1727
  return {
1684
- i18n: this.i18n ? new R(this.i18n.labels, this.i18n.language) : new R()
1728
+ i18n: this.i18n ? new F(this.i18n.labels, this.i18n.language) : new F()
1685
1729
  };
1686
1730
  },
1687
1731
  props: {
@@ -1708,7 +1752,7 @@ const Rt = W({
1708
1752
  hoverBuildingId: void 0,
1709
1753
  halfHourMark: (/* @__PURE__ */ new Date()).getHours() * 2 + ((/* @__PURE__ */ new Date()).getMinutes() < 30 ? 0 : 1),
1710
1754
  error: !1,
1711
- resourceLoader: new O(),
1755
+ resourceLoader: new U(),
1712
1756
  svgObjects: void 0,
1713
1757
  svgViewBox: "0 0 0 0"
1714
1758
  };
@@ -1725,7 +1769,9 @@ const Rt = W({
1725
1769
  buildingChooserTimeOfDay: {
1726
1770
  handler() {
1727
1771
  if (this.buildingChooserTimeOfDay) {
1728
- const [e, t, i] = /^(\d\d):(\d\d)$/.exec(this.buildingChooserTimeOfDay), o = parseInt(i);
1772
+ const [e, t, i] = /^(\d\d):(\d\d)$/.exec(
1773
+ this.buildingChooserTimeOfDay
1774
+ ), o = parseInt(i);
1729
1775
  this.halfHourMark = parseInt(t) * 2 + (o < 15 ? 0 : o > 45 ? 2 : 1);
1730
1776
  }
1731
1777
  },
@@ -1735,27 +1781,27 @@ const Rt = W({
1735
1781
  e ? this.$emit("hover-over-building", this.getBuildingData(e)) : this.$emit("hover-out-building", this.getBuildingData(t));
1736
1782
  }
1737
1783
  },
1738
- mounted() {
1739
- return K(this, void 0, void 0, function* () {
1740
- const t = yield new le(this.cdnFileResolver).loadBuildingChooser();
1741
- if (t) {
1742
- this.canvasRaster = new $(t.mapImage), this.buildingMap = new U(t.buildingIds), this.daysOfYear = new z(t.backgrounds), this.pickerData = {
1743
- buildingOverlays: t.buildingOverlays,
1744
- sceneLongitude: t.viewLongitude
1745
- };
1746
- const i = [];
1747
- for (let { id: o, url: n } of t.buildingOverlays)
1748
- this.resourceLoader.loadJson(n.replace(".png", ".svg")).then((s) => {
1749
- const a = new DOMParser().parseFromString(s, "image/svg+xml").getElementsByTagName("svg")[0];
1750
- this.svgViewBox = a.getAttribute("viewBox"), i.push({
1751
- id: o,
1752
- svg: a.innerHTML
1753
- });
1784
+ async mounted() {
1785
+ const t = await new me(
1786
+ this.cdnFileResolver
1787
+ ).loadBuildingChooser();
1788
+ if (t) {
1789
+ this.canvasRaster = new q(t.mapImage), this.buildingMap = new E(t.buildingIds), this.daysOfYear = new Q(t.backgrounds), this.pickerData = {
1790
+ buildingOverlays: t.buildingOverlays,
1791
+ sceneLongitude: t.viewLongitude
1792
+ };
1793
+ const i = [];
1794
+ for (let { id: o, url: n } of t.buildingOverlays)
1795
+ this.resourceLoader.loadJson(n.replace(".png", ".svg")).then((s) => {
1796
+ const a = new DOMParser().parseFromString(s, "image/svg+xml").getElementsByTagName("svg")[0];
1797
+ this.svgViewBox = a.getAttribute("viewBox"), i.push({
1798
+ id: o,
1799
+ svg: a.innerHTML
1754
1800
  });
1755
- this.svgObjects = i;
1756
- } else
1757
- this.error = !0;
1758
- });
1801
+ });
1802
+ this.svgObjects = i;
1803
+ } else
1804
+ this.error = !0;
1759
1805
  },
1760
1806
  methods: {
1761
1807
  resizeScene({ width: e, height: t }) {
@@ -1768,14 +1814,23 @@ const Rt = W({
1768
1814
  return this.buildingCallback ? this.buildingCallback(e) : e;
1769
1815
  },
1770
1816
  getColor(e) {
1771
- return this.colorCallback(this.getBuildingData(e), e === this.hoverBuildingId ? "hover" : "idle");
1817
+ return this.colorCallback(
1818
+ this.getBuildingData(e),
1819
+ e === this.hoverBuildingId ? "hover" : "idle"
1820
+ );
1772
1821
  },
1773
1822
  getGClass(e) {
1774
- const t = this.getBuildingData(e), i = this.colorCallback(t, e === this.hoverBuildingId ? "hover" : "idle"), o = [];
1823
+ const t = this.getBuildingData(e), i = this.colorCallback(
1824
+ t,
1825
+ e === this.hoverBuildingId ? "hover" : "idle"
1826
+ ), o = [];
1775
1827
  return e === this.hoverBuildingId ? o.push("hover") : o.push("idle"), i && this.canGoToBuildingCallback(t) ? o.push("clickable") : o.push("restricted"), o.join(" ");
1776
1828
  },
1777
1829
  getGStyle(e) {
1778
- const t = this.getBuildingData(e), i = this.colorCallback(t, e === this.hoverBuildingId ? "hover" : "idle");
1830
+ const t = this.getBuildingData(e), i = this.colorCallback(
1831
+ t,
1832
+ e === this.hoverBuildingId ? "hover" : "idle"
1833
+ );
1779
1834
  if (i) {
1780
1835
  const { r: o, g: n, b: s, a: r, s: a } = i;
1781
1836
  return {
@@ -1824,14 +1879,14 @@ const Rt = W({
1824
1879
  this.hoverBuildingId = e, this.isHoverable && this.hoverBuilding && this.canGoToBuildingCallback(this.hoverBuilding) && this.$emit("go-to-building", this.hoverBuilding);
1825
1880
  }
1826
1881
  }
1827
- }), Ft = {
1882
+ }), At = {
1828
1883
  key: 0,
1829
1884
  style: { height: "50vh" },
1830
1885
  class: "d-flex justify-center align-center blue-grey lighten-5"
1831
- }, Ht = { class: "image-instances" }, Tt = { key: 0 }, Ot = { class: "svg-container" }, Lt = ["viewBox"], Ut = ["innerHTML", "data-building-id", "onMouseover", "onMouseout", "onMousemove", "onClick"], $t = ["innerHTML"];
1832
- function Et(e, t, i, o, n, s) {
1833
- const r = u("v-icon"), a = u("qi-building-chooser-scene-image-stack"), g = u("qi-zoom-box"), v = u("qi-north-direction"), f = u("qi-building-chooser-sun-sim-control"), _ = u("qi-floating-card"), b = u("qi-hover-probe");
1834
- return e.error ? (d(), m("div", Ft, [
1886
+ }, xt = { class: "image-instances" }, Mt = { key: 0 }, Rt = { class: "svg-container" }, Ft = ["viewBox"], Ht = ["innerHTML", "data-building-id", "onMouseover", "onMouseout", "onMousemove", "onClick"], Tt = ["innerHTML"];
1887
+ function Lt(e, t, i, o, n, s) {
1888
+ const r = u("v-icon"), a = u("qi-building-chooser-scene-image-stack"), g = u("qi-zoom-box"), f = u("qi-north-direction"), y = u("qi-building-chooser-sun-sim-control"), C = u("qi-floating-card"), p = u("qi-hover-probe");
1889
+ return e.error ? (d(), m("div", At, [
1835
1890
  l(r, { "x-large": "" }, {
1836
1891
  default: c(() => [
1837
1892
  B("mdi-alert-circle-outline")
@@ -1848,38 +1903,38 @@ function Et(e, t, i, o, n, s) {
1848
1903
  mobile: e.interactiveMobile
1849
1904
  }, {
1850
1905
  default: c(() => [
1851
- h("div", Ht, [
1906
+ h("div", xt, [
1852
1907
  l(a, {
1853
1908
  "image-urls": e.daysOfYear.imageUrls,
1854
1909
  "active-index": e.halfHourMark,
1855
1910
  onResize: e.resizeScene,
1856
- onPreloaded: t[0] || (t[0] = (y) => e.sceneState.preloaded = !0),
1857
- onReady: t[1] || (t[1] = (y) => e.sceneState.ready = !0),
1911
+ onPreloaded: t[0] || (t[0] = (b) => e.sceneState.preloaded = !0),
1912
+ onReady: t[1] || (t[1] = (b) => e.sceneState.ready = !0),
1858
1913
  onReset: e.sceneReset
1859
1914
  }, null, 8, ["image-urls", "active-index", "onResize", "onReset"]),
1860
- e.svgObjects ? A((d(), m("div", Tt, [
1861
- h("div", Ot, [
1915
+ e.svgObjects ? A((d(), m("div", Mt, [
1916
+ h("div", Rt, [
1862
1917
  (d(), m("svg", { viewBox: e.svgViewBox }, [
1863
- (d(!0), m(E, null, T(e.svgObjects, ({ id: y, svg: p }, P) => (d(), m("g", {
1864
- key: P,
1865
- innerHTML: p,
1866
- "data-building-id": y,
1867
- class: M(e.getGClass(y)),
1868
- style: D(e.getGStyle(y)),
1869
- onMouseover: (H) => e.onBuildingMouseOver(H, y),
1870
- onMouseout: (H) => e.onBuildingMouseOut(H, y),
1871
- onMousemove: (H) => e.onBuildingMouseMove(H, y),
1872
- onClick: (H) => e.onBuildingClick(y)
1873
- }, null, 46, Ut))), 128))
1874
- ], 8, Lt))
1918
+ (d(!0), m(L, null, T(e.svgObjects, ({ id: b, svg: v }, j) => (d(), m("g", {
1919
+ key: j,
1920
+ innerHTML: v,
1921
+ "data-building-id": b,
1922
+ class: M(e.getGClass(b)),
1923
+ style: D(e.getGStyle(b)),
1924
+ onMouseover: (H) => e.onBuildingMouseOver(H, b),
1925
+ onMouseout: (H) => e.onBuildingMouseOut(H, b),
1926
+ onMousemove: (H) => e.onBuildingMouseMove(H, b),
1927
+ onClick: (H) => e.onBuildingClick(b)
1928
+ }, null, 46, Ht))), 128))
1929
+ ], 8, Ft))
1875
1930
  ])
1876
1931
  ], 512)), [
1877
1932
  [x, e.sceneState.preloaded]
1878
- ]) : I("", !0),
1933
+ ]) : k("", !0),
1879
1934
  A(h("div", {
1880
1935
  class: "custom-overlay-layer",
1881
1936
  innerHTML: e.customOverlayContent
1882
- }, null, 8, $t), [
1937
+ }, null, 8, Tt), [
1883
1938
  [x, e.sceneState.preloaded]
1884
1939
  ])
1885
1940
  ])
@@ -1887,28 +1942,28 @@ function Et(e, t, i, o, n, s) {
1887
1942
  _: 1
1888
1943
  }, 8, ["desktop", "mobile"]),
1889
1944
  A(h("div", null, [
1890
- e.pickerData.sceneLongitude ? (d(), C(v, {
1945
+ e.pickerData.sceneLongitude ? (d(), I(f, {
1891
1946
  key: 0,
1892
1947
  class: "north-indicator",
1893
1948
  longitude: e.pickerData.sceneLongitude
1894
- }, null, 8, ["longitude"])) : I("", !0),
1895
- l(f, {
1949
+ }, null, 8, ["longitude"])) : k("", !0),
1950
+ l(y, {
1896
1951
  modelValue: e.halfHourMark,
1897
- "onUpdate:modelValue": t[2] || (t[2] = (y) => e.halfHourMark = y),
1952
+ "onUpdate:modelValue": t[2] || (t[2] = (b) => e.halfHourMark = b),
1898
1953
  "date-selector": e.daysOfYear,
1899
1954
  "is-loading": !e.sceneState.ready
1900
1955
  }, null, 8, ["modelValue", "date-selector", "is-loading"])
1901
1956
  ], 512), [
1902
1957
  [x, e.sceneState.preloaded]
1903
1958
  ]),
1904
- e.showCards && e.hoverBuilding ? (d(), C(_, {
1959
+ e.showCards && e.hoverBuilding ? (d(), I(C, {
1905
1960
  key: 0,
1906
1961
  "is-hoverable": e.isHoverable,
1907
1962
  pos: e.pos,
1908
1963
  onOutside: t[3] || (t[3] = () => e.hoverBuildingId = void 0)
1909
1964
  }, {
1910
1965
  default: c(() => [
1911
- k(e.$slots, "default", {
1966
+ _(e.$slots, "default", {
1912
1967
  building: e.hoverBuilding,
1913
1968
  canGoToBuilding: e.canGoToBuildingCallback(e.hoverBuilding),
1914
1969
  goToBuilding: () => e.canGoToBuildingCallback(e.hoverBuilding) && e.$emit("go-to-building", e.hoverBuilding),
@@ -1918,11 +1973,11 @@ function Et(e, t, i, o, n, s) {
1918
1973
  }, void 0, !0)
1919
1974
  ]),
1920
1975
  _: 3
1921
- }, 8, ["is-hoverable", "pos"])) : I("", !0),
1922
- l(b, { ref: "hoverProbe" }, null, 512)
1923
- ], 4)) : I("", !0);
1976
+ }, 8, ["is-hoverable", "pos"])) : k("", !0),
1977
+ l(p, { ref: "hoverProbe" }, null, 512)
1978
+ ], 4)) : k("", !0);
1924
1979
  }
1925
- const N = /* @__PURE__ */ w(Rt, [["render", Et], ["__scopeId", "data-v-0a2cec1f"]]), jt = {
1980
+ const K = /* @__PURE__ */ w(Dt, [["render", Lt], ["__scopeId", "data-v-0a2cec1f"]]), Ut = {
1926
1981
  name: "QiBuildingChooserRasterOverlay",
1927
1982
  props: {
1928
1983
  imageUrl: { type: String, required: !0 },
@@ -1936,7 +1991,7 @@ const N = /* @__PURE__ */ w(Rt, [["render", Et], ["__scopeId", "data-v-0a2cec1f"
1936
1991
  return {
1937
1992
  isLoaded: !1,
1938
1993
  overlayImage: void 0,
1939
- resourceLoader: new O(),
1994
+ resourceLoader: new U(),
1940
1995
  context: void 0,
1941
1996
  imageData: void 0,
1942
1997
  imageDataIndices: []
@@ -1947,10 +2002,8 @@ const N = /* @__PURE__ */ w(Rt, [["render", Et], ["__scopeId", "data-v-0a2cec1f"
1947
2002
  (e.r !== t.r || e.g !== t.g || e.b !== t.b || e.a !== t.a) && this.draw();
1948
2003
  }
1949
2004
  },
1950
- mounted() {
1951
- return K(this, void 0, void 0, function* () {
1952
- this.overlayImage = yield this.resourceLoader.loadImage(this.imageUrl), this.setupDraw();
1953
- });
2005
+ async mounted() {
2006
+ this.overlayImage = await this.resourceLoader.loadImage(this.imageUrl), this.setupDraw();
1954
2007
  },
1955
2008
  methods: {
1956
2009
  setupDraw() {
@@ -1976,30 +2029,30 @@ const N = /* @__PURE__ */ w(Rt, [["render", Et], ["__scopeId", "data-v-0a2cec1f"
1976
2029
  }
1977
2030
  }
1978
2031
  };
1979
- function qt(e, t, i, o, n, s) {
1980
- return d(), m("canvas", F({
2032
+ function $t(e, t, i, o, n, s) {
2033
+ return d(), m("canvas", R({
1981
2034
  ref: "canvas",
1982
2035
  class: "overlay"
1983
2036
  }, i.dimensions), null, 16);
1984
2037
  }
1985
- const de = /* @__PURE__ */ w(jt, [["render", qt], ["__scopeId", "data-v-9a90fa2f"]]), Yt = W({
2038
+ const ge = /* @__PURE__ */ w(Ut, [["render", $t], ["__scopeId", "data-v-9a90fa2f"]]), Ot = Y({
1986
2039
  setup() {
1987
- ge({});
2040
+ le({});
1988
2041
  },
1989
2042
  name: "QiBuildingChooserRaster",
1990
2043
  components: {
1991
- QiBuildingChooserRasterOverlay: de,
1992
- QiBuildingChooserSunSimControl: J,
1993
- QiBuildingChooserSceneImageStack: ee,
1994
- QiNorthDirection: Z,
1995
- QiFloatingCard: q,
1996
- QiHoverProbe: L,
1997
- QiZoomBox: Y
2044
+ QiBuildingChooserRasterOverlay: ge,
2045
+ QiBuildingChooserSunSimControl: ie,
2046
+ QiBuildingChooserSceneImageStack: ne,
2047
+ QiNorthDirection: te,
2048
+ QiFloatingCard: z,
2049
+ QiHoverProbe: $,
2050
+ QiZoomBox: P
1998
2051
  },
1999
2052
  emits: ["go-to-building", "hover-over-building", "hover-out-building"],
2000
2053
  provide() {
2001
2054
  return {
2002
- i18n: this.i18n ? new R(this.i18n.labels, this.i18n.language) : new R()
2055
+ i18n: this.i18n ? new F(this.i18n.labels, this.i18n.language) : new F()
2003
2056
  };
2004
2057
  },
2005
2058
  props: {
@@ -2023,8 +2076,8 @@ const de = /* @__PURE__ */ w(jt, [["render", qt], ["__scopeId", "data-v-9a90fa2f
2023
2076
  canvasDimensions: { width: 0, height: 0 },
2024
2077
  pos: { x: 0, y: 0, width: 0, height: 0 },
2025
2078
  pickerData: void 0,
2026
- buildingMap: U.empty(),
2027
- canvasRaster: $.empty(),
2079
+ buildingMap: E.empty(),
2080
+ canvasRaster: q.empty(),
2028
2081
  selectedBuildingId: void 0,
2029
2082
  halfHourMark: (/* @__PURE__ */ new Date()).getHours() * 2 + ((/* @__PURE__ */ new Date()).getMinutes() < 30 ? 0 : 1),
2030
2083
  viewResolver: (e, t) => ({ x: e, y: t }),
@@ -2043,7 +2096,9 @@ const de = /* @__PURE__ */ w(jt, [["render", qt], ["__scopeId", "data-v-9a90fa2f
2043
2096
  buildingChooserTimeOfDay: {
2044
2097
  handler() {
2045
2098
  if (this.buildingChooserTimeOfDay) {
2046
- const [e, t, i] = /^(\d\d):(\d\d)$/.exec(this.buildingChooserTimeOfDay), o = parseInt(i);
2099
+ const [e, t, i] = /^(\d\d):(\d\d)$/.exec(
2100
+ this.buildingChooserTimeOfDay
2101
+ ), o = parseInt(i);
2047
2102
  this.halfHourMark = parseInt(t) * 2 + (o < 15 ? 0 : o > 45 ? 2 : 1);
2048
2103
  }
2049
2104
  },
@@ -2053,14 +2108,14 @@ const de = /* @__PURE__ */ w(jt, [["render", qt], ["__scopeId", "data-v-9a90fa2f
2053
2108
  e ? this.$emit("hover-over-building", this.getBuildingData(e)) : this.$emit("hover-out-building", this.getBuildingData(t));
2054
2109
  }
2055
2110
  },
2056
- mounted() {
2057
- return K(this, void 0, void 0, function* () {
2058
- const t = yield new le(this.cdnFileResolver).loadBuildingChooser();
2059
- t ? (this.canvasRaster = new $(t.mapImage), this.buildingMap = new U(t.buildingIds), this.daysOfYear = new z(t.backgrounds), this.pickerData = {
2060
- buildingOverlays: t.buildingOverlays,
2061
- sceneLongitude: t.viewLongitude
2062
- }, this.resizeImages()) : this.error = !0;
2063
- });
2111
+ async mounted() {
2112
+ const t = await new me(
2113
+ this.cdnFileResolver
2114
+ ).loadBuildingChooser();
2115
+ t ? (this.canvasRaster = new q(t.mapImage), this.buildingMap = new E(t.buildingIds), this.daysOfYear = new Q(t.backgrounds), this.pickerData = {
2116
+ buildingOverlays: t.buildingOverlays,
2117
+ sceneLongitude: t.viewLongitude
2118
+ }, this.resizeImages()) : this.error = !0;
2064
2119
  },
2065
2120
  methods: {
2066
2121
  resizeScene({ width: e, height: t }) {
@@ -2093,20 +2148,23 @@ const de = /* @__PURE__ */ w(jt, [["render", qt], ["__scopeId", "data-v-9a90fa2f
2093
2148
  this.selectedBuildingId = this.getBuildingId(e), this.isHoverable && this.selectedBuilding && this.$emit("go-to-building", this.selectedBuilding);
2094
2149
  },
2095
2150
  getColor(e) {
2096
- return this.colorCallback(this.getBuildingData(e), e === this.selectedBuildingId ? "hover" : "idle");
2151
+ return this.colorCallback(
2152
+ this.getBuildingData(e),
2153
+ e === this.selectedBuildingId ? "hover" : "idle"
2154
+ );
2097
2155
  },
2098
2156
  updateView({ resolve: e }) {
2099
2157
  this.viewResolver = e;
2100
2158
  }
2101
2159
  }
2102
- }), zt = {
2160
+ }), Et = {
2103
2161
  key: 0,
2104
2162
  style: { height: "50vh" },
2105
2163
  class: "d-flex justify-center align-center blue-grey lighten-5"
2106
- }, Pt = { class: "image-instances" }, Qt = ["innerHTML"];
2107
- function Vt(e, t, i, o, n, s) {
2108
- const r = u("v-icon"), a = u("qi-building-chooser-scene-image-stack"), g = u("qi-building-chooser-raster-overlay"), v = u("qi-zoom-box"), f = u("qi-north-direction"), _ = u("qi-building-chooser-sun-sim-control"), b = u("qi-floating-card"), y = u("qi-hover-probe");
2109
- return e.error ? (d(), m("div", zt, [
2164
+ }, qt = { class: "image-instances" }, jt = ["innerHTML"];
2165
+ function Yt(e, t, i, o, n, s) {
2166
+ const r = u("v-icon"), a = u("qi-building-chooser-scene-image-stack"), g = u("qi-building-chooser-raster-overlay"), f = u("qi-zoom-box"), y = u("qi-north-direction"), C = u("qi-building-chooser-sun-sim-control"), p = u("qi-floating-card"), b = u("qi-hover-probe");
2167
+ return e.error ? (d(), m("div", Et, [
2110
2168
  l(r, { "x-large": "" }, {
2111
2169
  default: c(() => [
2112
2170
  B("mdi-alert-circle-outline")
@@ -2118,72 +2176,72 @@ function Vt(e, t, i, o, n, s) {
2118
2176
  style: D(`cursor: ${e.selectedBuildingId ? "pointer" : "auto"};height: ${e.canvasDimensions.height}px; position: relative`),
2119
2177
  class: "image-container"
2120
2178
  }, [
2121
- l(v, {
2179
+ l(f, {
2122
2180
  desktop: e.interactiveDesktop,
2123
2181
  mobile: e.interactiveMobile,
2124
2182
  onUpdate: e.updateView
2125
2183
  }, {
2126
2184
  default: c(() => [
2127
- h("div", Pt, [
2185
+ h("div", qt, [
2128
2186
  l(a, {
2129
2187
  "image-urls": e.daysOfYear.imageUrls,
2130
2188
  "active-index": e.halfHourMark,
2131
2189
  onResize: e.resizeScene,
2132
- onPreloaded: t[0] || (t[0] = (p) => e.sceneState.preloaded = !0),
2133
- onReady: t[1] || (t[1] = (p) => e.sceneState.ready = !0),
2190
+ onPreloaded: t[0] || (t[0] = (v) => e.sceneState.preloaded = !0),
2191
+ onReady: t[1] || (t[1] = (v) => e.sceneState.ready = !0),
2134
2192
  onReset: e.sceneReset
2135
2193
  }, null, 8, ["image-urls", "active-index", "onResize", "onReset"]),
2136
2194
  A(h("div", null, [
2137
- (d(!0), m(E, null, T(e.pickerData.buildingOverlays, (p) => (d(), C(g, {
2195
+ (d(!0), m(L, null, T(e.pickerData.buildingOverlays, (v) => (d(), I(g, {
2138
2196
  ref_for: !0,
2139
2197
  ref: "overlays",
2140
- key: p.id,
2141
- "image-url": p.url,
2198
+ key: v.id,
2199
+ "image-url": v.url,
2142
2200
  dimensions: e.canvasDimensions,
2143
- color: e.getColor(p.id)
2201
+ color: e.getColor(v.id)
2144
2202
  }, null, 8, ["image-url", "dimensions", "color"]))), 128))
2145
2203
  ], 512), [
2146
2204
  [x, e.sceneState.preloaded]
2147
2205
  ])
2148
2206
  ]),
2149
- h("canvas", F(e.canvasDimensions, {
2207
+ h("canvas", R(e.canvasDimensions, {
2150
2208
  ref: "canvas",
2151
2209
  class: { hover: !!e.selectedBuildingId },
2152
- onClick: t[2] || (t[2] = (...p) => e.onClick && e.onClick(...p)),
2153
- onMousemove: t[3] || (t[3] = (...p) => e.onMove && e.onMove(...p))
2210
+ onClick: t[2] || (t[2] = (...v) => e.onClick && e.onClick(...v)),
2211
+ onMousemove: t[3] || (t[3] = (...v) => e.onMove && e.onMove(...v))
2154
2212
  }), null, 16),
2155
2213
  A(h("div", {
2156
2214
  class: "custom-overlay-layer",
2157
2215
  innerHTML: e.customOverlayContent
2158
- }, null, 8, Qt), [
2216
+ }, null, 8, jt), [
2159
2217
  [x, e.sceneState.preloaded]
2160
2218
  ])
2161
2219
  ]),
2162
2220
  _: 1
2163
2221
  }, 8, ["desktop", "mobile", "onUpdate"]),
2164
2222
  A(h("div", null, [
2165
- e.pickerData.sceneLongitude ? (d(), C(f, {
2223
+ e.pickerData.sceneLongitude ? (d(), I(y, {
2166
2224
  key: 0,
2167
2225
  class: "north-indicator",
2168
2226
  longitude: e.pickerData.sceneLongitude
2169
- }, null, 8, ["longitude"])) : I("", !0),
2170
- l(_, {
2227
+ }, null, 8, ["longitude"])) : k("", !0),
2228
+ l(C, {
2171
2229
  modelValue: e.halfHourMark,
2172
- "onUpdate:modelValue": t[4] || (t[4] = (p) => e.halfHourMark = p),
2230
+ "onUpdate:modelValue": t[4] || (t[4] = (v) => e.halfHourMark = v),
2173
2231
  "date-selector": e.daysOfYear,
2174
2232
  "is-loading": !e.sceneState.ready
2175
2233
  }, null, 8, ["modelValue", "date-selector", "is-loading"])
2176
2234
  ], 512), [
2177
2235
  [x, e.sceneState.preloaded]
2178
2236
  ]),
2179
- e.showCards && e.selectedBuilding ? (d(), C(b, {
2237
+ e.showCards && e.selectedBuilding ? (d(), I(p, {
2180
2238
  key: 0,
2181
2239
  "is-hoverable": e.isHoverable,
2182
2240
  pos: e.pos,
2183
2241
  onOutside: t[5] || (t[5] = () => e.selectedBuildingId = void 0)
2184
2242
  }, {
2185
2243
  default: c(() => [
2186
- k(e.$slots, "default", {
2244
+ _(e.$slots, "default", {
2187
2245
  building: e.selectedBuilding,
2188
2246
  canGoToBuilding: e.canGoToBuildingCallback(e.selectedBuilding),
2189
2247
  goToBuilding: () => e.canGoToBuildingCallback(e.selectedBuilding) && e.$emit("go-to-building", e.selectedBuilding),
@@ -2193,15 +2251,15 @@ function Vt(e, t, i, o, n, s) {
2193
2251
  }, void 0, !0)
2194
2252
  ]),
2195
2253
  _: 3
2196
- }, 8, ["is-hoverable", "pos"])) : I("", !0),
2197
- l(y, { ref: "hoverProbe" }, null, 512)
2198
- ], 4)) : I("", !0);
2254
+ }, 8, ["is-hoverable", "pos"])) : k("", !0),
2255
+ l(b, { ref: "hoverProbe" }, null, 512)
2256
+ ], 4)) : k("", !0);
2199
2257
  }
2200
- const X = /* @__PURE__ */ w(Yt, [["render", Vt], ["__scopeId", "data-v-08f2ea1e"]]), Gt = {
2258
+ const Z = /* @__PURE__ */ w(Ot, [["render", Yt], ["__scopeId", "data-v-08f2ea1e"]]), zt = {
2201
2259
  name: "QiBuildingChooser",
2202
2260
  components: {
2203
- QiBuildingChooserSvg: N,
2204
- QiBuildingChooserRaster: X
2261
+ QiBuildingChooserSvg: K,
2262
+ QiBuildingChooserRaster: Z
2205
2263
  },
2206
2264
  emits: ["go-to-building", "hover-over-building", "hover-out-building"],
2207
2265
  props: {
@@ -2222,12 +2280,12 @@ const X = /* @__PURE__ */ w(Yt, [["render", Vt], ["__scopeId", "data-v-08f2ea1e"
2222
2280
  },
2223
2281
  computed: {
2224
2282
  component() {
2225
- return this.useSvg ? N : X;
2283
+ return this.useSvg ? K : Z;
2226
2284
  }
2227
2285
  }
2228
2286
  };
2229
- function Nt(e, t, i, o, n, s) {
2230
- return d(), C(ue(s.component), {
2287
+ function Pt(e, t, i, o, n, s) {
2288
+ return d(), I(oe(s.component), {
2231
2289
  "show-cards": i.showCards,
2232
2290
  "color-callback": i.colorCallback,
2233
2291
  "building-callback": i.buildingCallback,
@@ -2241,16 +2299,16 @@ function Nt(e, t, i, o, n, s) {
2241
2299
  onGoToBuilding: t[0] || (t[0] = (r) => e.$emit("go-to-building", r)),
2242
2300
  onHoverOverBuilding: t[1] || (t[1] = (r) => e.$emit("hover-over-building", r)),
2243
2301
  onHoverOutBuilding: t[2] || (t[2] = (r) => e.$emit("hover-out-building", r))
2244
- }, Ie({ _: 2 }, [
2302
+ }, pe({ _: 2 }, [
2245
2303
  T(Object.keys(e.$slots), (r) => ({
2246
2304
  name: r,
2247
2305
  fn: c((a) => [
2248
- k(e.$slots, r, he(me(a)))
2306
+ _(e.$slots, r, re(ae(a)))
2249
2307
  ])
2250
2308
  }))
2251
2309
  ]), 1064, ["show-cards", "color-callback", "building-callback", "cdn-file-resolver", "i18n", "interactive-desktop", "interactive-mobile", "building-chooser-time-of-day", "can-go-to-building-callback", "custom-overlay-content"]);
2252
2310
  }
2253
- const ye = /* @__PURE__ */ w(Gt, [["render", Nt]]), Xt = 37, Wt = 39, Kt = {
2311
+ const Qt = /* @__PURE__ */ w(zt, [["render", Pt]]), Vt = 37, Gt = 39, Nt = {
2254
2312
  name: "WaypointCarousel",
2255
2313
  props: {
2256
2314
  thumbnails: { type: Array, required: !0 },
@@ -2271,7 +2329,9 @@ const ye = /* @__PURE__ */ w(Gt, [["render", Nt]]), Xt = 37, Wt = 39, Kt = {
2271
2329
  }
2272
2330
  },
2273
2331
  isMobile() {
2274
- return /Android|webOS|iPhone|iPad|BlackBerry|Windows Phone|Opera Mini|IEMobile|Mobile/i.test(window.navigator.userAgent);
2332
+ return /Android|webOS|iPhone|iPad|BlackBerry|Windows Phone|Opera Mini|IEMobile|Mobile/i.test(
2333
+ window.navigator.userAgent
2334
+ );
2275
2335
  }
2276
2336
  },
2277
2337
  mounted() {
@@ -2283,9 +2343,9 @@ const ye = /* @__PURE__ */ w(Gt, [["render", Nt]]), Xt = 37, Wt = 39, Kt = {
2283
2343
  methods: {
2284
2344
  keyNavigate(e) {
2285
2345
  switch (e.keyCode) {
2286
- case e.keyCode === Xt:
2346
+ case e.keyCode === Vt:
2287
2347
  this.$emit("previous");
2288
- case e.keyCode === Wt:
2348
+ case e.keyCode === Gt:
2289
2349
  this.$emit("next");
2290
2350
  default:
2291
2351
  return;
@@ -2295,13 +2355,13 @@ const ye = /* @__PURE__ */ w(Gt, [["render", Nt]]), Xt = 37, Wt = 39, Kt = {
2295
2355
  t(), this.$emit("goto", e);
2296
2356
  }
2297
2357
  }
2298
- }, Zt = { class: "waypoint-carousel" };
2299
- function Jt(e, t, i, o, n, s) {
2300
- const r = u("v-icon"), a = u("v-btn"), g = u("v-hover"), v = u("v-img"), f = u("v-card"), _ = u("v-slide-group-item"), b = u("v-slide-group");
2301
- return d(), m("div", Zt, [
2302
- l(b, {
2358
+ }, Xt = { class: "waypoint-carousel" };
2359
+ function Wt(e, t, i, o, n, s) {
2360
+ const r = u("v-icon"), a = u("v-btn"), g = u("v-hover"), f = u("v-img"), y = u("v-card"), C = u("v-slide-group-item"), p = u("v-slide-group");
2361
+ return d(), m("div", Xt, [
2362
+ l(p, {
2303
2363
  modelValue: s.activeIndex,
2304
- "onUpdate:modelValue": t[2] || (t[2] = (y) => s.activeIndex = y),
2364
+ "onUpdate:modelValue": t[2] || (t[2] = (b) => s.activeIndex = b),
2305
2365
  "active-class": "active-apt",
2306
2366
  "selected-class": "active-apt",
2307
2367
  "show-arrows": "",
@@ -2310,15 +2370,15 @@ function Jt(e, t, i, o, n, s) {
2310
2370
  }, {
2311
2371
  prev: c(() => [
2312
2372
  l(g, null, {
2313
- default: c(({ hover: y }) => [
2373
+ default: c(({ hover: b }) => [
2314
2374
  l(a, {
2315
2375
  elevation: "0",
2316
2376
  class: M(["carousel-button", { mobile: s.isMobile }]),
2317
- onClick: t[0] || (t[0] = (p) => e.$emit("previous"))
2377
+ onClick: t[0] || (t[0] = (v) => e.$emit("previous"))
2318
2378
  }, {
2319
2379
  default: c(() => [
2320
2380
  l(r, {
2321
- color: y ? "#999" : "#d2d2d2",
2381
+ color: b ? "#999" : "#d2d2d2",
2322
2382
  "x-large": ""
2323
2383
  }, {
2324
2384
  default: c(() => [
@@ -2335,15 +2395,15 @@ function Jt(e, t, i, o, n, s) {
2335
2395
  ]),
2336
2396
  next: c(() => [
2337
2397
  l(g, null, {
2338
- default: c(({ hover: y }) => [
2398
+ default: c(({ hover: b }) => [
2339
2399
  l(a, {
2340
2400
  elevation: "0",
2341
2401
  class: M(["carousel-button", { mobile: s.isMobile }]),
2342
- onClick: t[1] || (t[1] = (p) => e.$emit("next"))
2402
+ onClick: t[1] || (t[1] = (v) => e.$emit("next"))
2343
2403
  }, {
2344
2404
  default: c(() => [
2345
2405
  l(r, {
2346
- color: y ? "#999" : "#d2d2d2",
2406
+ color: b ? "#999" : "#d2d2d2",
2347
2407
  "x-large": ""
2348
2408
  }, {
2349
2409
  default: c(() => [
@@ -2359,25 +2419,25 @@ function Jt(e, t, i, o, n, s) {
2359
2419
  })
2360
2420
  ]),
2361
2421
  default: c(() => [
2362
- (d(!0), m(E, null, T(i.thumbnails, (y) => (d(), C(_, {
2363
- key: y.id
2422
+ (d(!0), m(L, null, T(i.thumbnails, (b) => (d(), I(C, {
2423
+ key: b.id
2364
2424
  }, {
2365
- default: c(({ toggle: p, selectedClass: P }) => [
2366
- l(f, {
2367
- class: M(["ma-2", P]),
2425
+ default: c(({ toggle: v, selectedClass: j }) => [
2426
+ l(y, {
2427
+ class: M(["ma-2", j]),
2368
2428
  align: "center",
2369
2429
  justify: "center",
2370
2430
  height: s.isMobile ? 50 : 100,
2371
2431
  width: s.isMobile ? 80 : 160,
2372
2432
  elevation: "0",
2373
2433
  style: { overflow: "hidden" },
2374
- onClick: (H) => s.goToCamera(y.id, p)
2434
+ onClick: (H) => s.goToCamera(b.id, v)
2375
2435
  }, {
2376
2436
  default: c(() => [
2377
- l(v, {
2437
+ l(f, {
2378
2438
  "max-height": "100",
2379
2439
  "max-width": "160",
2380
- src: y.thumbnailUrl
2440
+ src: b.thumbnailUrl
2381
2441
  }, null, 8, ["src"])
2382
2442
  ]),
2383
2443
  _: 2
@@ -2390,7 +2450,7 @@ function Jt(e, t, i, o, n, s) {
2390
2450
  }, 8, ["modelValue"])
2391
2451
  ]);
2392
2452
  }
2393
- const ei = /* @__PURE__ */ w(Kt, [["render", Jt], ["__scopeId", "data-v-f4e6ce2e"]]), ti = {
2453
+ const Kt = /* @__PURE__ */ w(Nt, [["render", Wt], ["__scopeId", "data-v-f4e6ce2e"]]), Zt = {
2394
2454
  name: "QiVirtualTourSocialShare",
2395
2455
  inject: ["i18n"],
2396
2456
  data() {
@@ -2401,58 +2461,70 @@ const ei = /* @__PURE__ */ w(Kt, [["render", Jt], ["__scopeId", "data-v-f4e6ce2e
2401
2461
  },
2402
2462
  methods: {
2403
2463
  shareToFacebook() {
2404
- return window.open("https://www.facebook.com/sharer/sharer.php?u=" + encodeURIComponent(location.href), "facebook-share-dialog", "width=626,height=436"), !1;
2464
+ return window.open(
2465
+ "https://www.facebook.com/sharer/sharer.php?u=" + encodeURIComponent(location.href),
2466
+ "facebook-share-dialog",
2467
+ "width=626,height=436"
2468
+ ), !1;
2405
2469
  },
2406
2470
  shareToTwitter() {
2407
- return window.open("https://twitter.com/intent/tweet?text=" + encodeURIComponent(location.href), "twiter-share-dialog", "width=626,height=436"), !1;
2471
+ return window.open(
2472
+ "https://twitter.com/intent/tweet?text=" + encodeURIComponent(location.href),
2473
+ "twiter-share-dialog",
2474
+ "width=626,height=436"
2475
+ ), !1;
2408
2476
  },
2409
2477
  shareToLinkedin() {
2410
- return window.open("https://www.linkedin.com/sharing/share-offsite/?url=" + encodeURIComponent(location.href), "linkedin-share-dialog", "width=626,height=736"), !1;
2478
+ return window.open(
2479
+ "https://www.linkedin.com/sharing/share-offsite/?url=" + encodeURIComponent(location.href),
2480
+ "linkedin-share-dialog",
2481
+ "width=626,height=736"
2482
+ ), !1;
2411
2483
  },
2412
2484
  copyLink() {
2413
2485
  navigator.clipboard.writeText(location.href);
2414
2486
  }
2415
2487
  }
2416
- }, ii = {
2488
+ }, Jt = {
2417
2489
  id: "share-btns-wrapper",
2418
2490
  class: "text-center"
2419
2491
  };
2420
- function ni(e, t, i, o, n, s) {
2421
- const r = u("v-btn"), a = u("v-tooltip"), g = u("v-toolbar-title"), v = u("v-spacer"), f = u("v-toolbar"), _ = u("v-card-text"), b = u("v-card"), y = u("v-dialog");
2492
+ function ei(e, t, i, o, n, s) {
2493
+ const r = u("v-btn"), a = u("v-tooltip"), g = u("v-toolbar-title"), f = u("v-spacer"), y = u("v-toolbar"), C = u("v-card-text"), p = u("v-card"), b = u("v-dialog");
2422
2494
  return d(), m("div", null, [
2423
2495
  l(a, {
2424
2496
  elevation: "2",
2425
2497
  top: "",
2426
2498
  attach: ""
2427
2499
  }, {
2428
- activator: c(({ on: p }) => [
2429
- l(r, F({
2500
+ activator: c(({ on: v }) => [
2501
+ l(r, R({
2430
2502
  density: "comfortable",
2431
2503
  elevation: "1",
2432
2504
  icon: "mdi-share-variant",
2433
- onClick: t[0] || (t[0] = (P) => n.showSocialShare = !n.showSocialShare)
2434
- }, Ce(Object.assign({}, p))), null, 16)
2505
+ onClick: t[0] || (t[0] = (j) => n.showSocialShare = !n.showSocialShare)
2506
+ }, fe({ ...v })), null, 16)
2435
2507
  ]),
2436
2508
  default: c(() => [
2437
2509
  h("span", null, S(s.i18n.getLabel("share")), 1)
2438
2510
  ]),
2439
2511
  _: 1
2440
2512
  }),
2441
- l(y, {
2513
+ l(b, {
2442
2514
  id: "share-box",
2443
2515
  width: "400",
2444
2516
  modelValue: n.showSocialShare,
2445
- "onUpdate:modelValue": t[2] || (t[2] = (p) => n.showSocialShare = p)
2517
+ "onUpdate:modelValue": t[2] || (t[2] = (v) => n.showSocialShare = v)
2446
2518
  }, {
2447
2519
  default: c(() => [
2448
- l(b, null, {
2520
+ l(p, null, {
2449
2521
  default: c(() => [
2450
- l(f, { elevation: "0" }, {
2522
+ l(y, { elevation: "0" }, {
2451
2523
  default: c(() => [
2452
2524
  l(r, {
2453
2525
  size: "x-small",
2454
2526
  icon: "mdi-close",
2455
- onClick: t[1] || (t[1] = (p) => n.showSocialShare = !1)
2527
+ onClick: t[1] || (t[1] = (v) => n.showSocialShare = !1)
2456
2528
  }),
2457
2529
  l(g, null, {
2458
2530
  default: c(() => [
@@ -2460,21 +2532,21 @@ function ni(e, t, i, o, n, s) {
2460
2532
  ]),
2461
2533
  _: 1
2462
2534
  }),
2463
- l(v)
2535
+ l(f)
2464
2536
  ]),
2465
2537
  _: 1
2466
2538
  }),
2467
- l(_, { class: "mt-5" }, {
2539
+ l(C, { class: "mt-5" }, {
2468
2540
  default: c(() => [
2469
- h("p", ii, [
2541
+ h("p", Jt, [
2470
2542
  l(a, { location: "top" }, {
2471
- activator: c(({ props: p }) => [
2472
- l(r, F({
2543
+ activator: c(({ props: v }) => [
2544
+ l(r, R({
2473
2545
  depressed: "",
2474
2546
  fab: "",
2475
2547
  light: "",
2476
2548
  icon: "mdi-facebook"
2477
- }, p, { onClick: s.shareToFacebook }), null, 16, ["onClick"])
2549
+ }, v, { onClick: s.shareToFacebook }), null, 16, ["onClick"])
2478
2550
  ]),
2479
2551
  default: c(() => [
2480
2552
  h("span", null, S(s.i18n.getLabel("share-to-facebook")), 1)
@@ -2482,13 +2554,13 @@ function ni(e, t, i, o, n, s) {
2482
2554
  _: 1
2483
2555
  }),
2484
2556
  l(a, { location: "top" }, {
2485
- activator: c(({ props: p }) => [
2486
- l(r, F({
2557
+ activator: c(({ props: v }) => [
2558
+ l(r, R({
2487
2559
  depressed: "",
2488
2560
  fab: "",
2489
2561
  light: "",
2490
2562
  icon: "mdi-linkedin"
2491
- }, p, { onClick: s.shareToLinkedin }), null, 16, ["onClick"])
2563
+ }, v, { onClick: s.shareToLinkedin }), null, 16, ["onClick"])
2492
2564
  ]),
2493
2565
  default: c(() => [
2494
2566
  h("span", null, S(s.i18n.getLabel("share-to-linkedin")), 1)
@@ -2496,13 +2568,13 @@ function ni(e, t, i, o, n, s) {
2496
2568
  _: 1
2497
2569
  }),
2498
2570
  l(a, { location: "top" }, {
2499
- activator: c(({ props: p }) => [
2500
- l(r, F({
2571
+ activator: c(({ props: v }) => [
2572
+ l(r, R({
2501
2573
  depressed: "",
2502
2574
  fab: "",
2503
2575
  light: "",
2504
2576
  icon: "mdi-twitter"
2505
- }, p, { onClick: s.shareToTwitter }), null, 16, ["onClick"])
2577
+ }, v, { onClick: s.shareToTwitter }), null, 16, ["onClick"])
2506
2578
  ]),
2507
2579
  default: c(() => [
2508
2580
  h("span", null, S(s.i18n.getLabel("share-to-twitter")), 1)
@@ -2510,15 +2582,15 @@ function ni(e, t, i, o, n, s) {
2510
2582
  _: 1
2511
2583
  }),
2512
2584
  l(a, { location: "top" }, {
2513
- activator: c(({ props: p }) => [
2514
- l(r, F({
2585
+ activator: c(({ props: v }) => [
2586
+ l(r, R({
2515
2587
  depressed: "",
2516
2588
  fab: "",
2517
2589
  light: "",
2518
2590
  icon: "mdi-email",
2519
2591
  link: "",
2520
2592
  href: `mailto:?body=${n.currentURL}`
2521
- }, p), null, 16, ["href"])
2593
+ }, v), null, 16, ["href"])
2522
2594
  ]),
2523
2595
  default: c(() => [
2524
2596
  h("span", null, S(s.i18n.getLabel("share-via-email")), 1)
@@ -2526,21 +2598,21 @@ function ni(e, t, i, o, n, s) {
2526
2598
  _: 1
2527
2599
  }),
2528
2600
  l(a, { location: "top" }, {
2529
- activator: c(({ props: p }) => [
2530
- l(r, F({
2601
+ activator: c(({ props: v }) => [
2602
+ l(r, R({
2531
2603
  depressed: "",
2532
2604
  fab: "",
2533
2605
  light: "",
2534
2606
  icon: "mdi-content-copy",
2535
2607
  onClick: s.copyLink
2536
- }, p), null, 16, ["onClick"])
2608
+ }, v), null, 16, ["onClick"])
2537
2609
  ]),
2538
2610
  default: c(() => [
2539
2611
  h("span", null, S(s.i18n.getLabel("copy-link")), 1)
2540
2612
  ]),
2541
2613
  _: 1
2542
2614
  }),
2543
- l(v)
2615
+ l(f)
2544
2616
  ])
2545
2617
  ]),
2546
2618
  _: 1
@@ -2553,8 +2625,8 @@ function ni(e, t, i, o, n, s) {
2553
2625
  }, 8, ["modelValue"])
2554
2626
  ]);
2555
2627
  }
2556
- const si = /* @__PURE__ */ w(ti, [["render", ni], ["__scopeId", "data-v-3560cd03"]]);
2557
- class oi {
2628
+ const ti = /* @__PURE__ */ w(Zt, [["render", ei], ["__scopeId", "data-v-3560cd03"]]);
2629
+ class ii {
2558
2630
  constructor(t, i) {
2559
2631
  this._doc = t, this._elemId = i, this._state = { isActive: !1 };
2560
2632
  }
@@ -2591,7 +2663,7 @@ class oi {
2591
2663
  this._state.isActive = t;
2592
2664
  }
2593
2665
  }
2594
- const ri = {
2666
+ const ni = {
2595
2667
  props: {
2596
2668
  isFullScreen: {
2597
2669
  type: Boolean,
@@ -2599,13 +2671,13 @@ const ri = {
2599
2671
  }
2600
2672
  },
2601
2673
  emits: ["toggle-fullscreen"]
2602
- }, ai = {
2674
+ }, si = {
2603
2675
  id: "btn-fullscreen",
2604
2676
  class: "btn-placeholder mr-2"
2605
2677
  };
2606
- function li(e, t, i, o, n, s) {
2678
+ function oi(e, t, i, o, n, s) {
2607
2679
  const r = u("v-btn");
2608
- return d(), m("div", ai, [
2680
+ return d(), m("div", si, [
2609
2681
  l(r, {
2610
2682
  density: "comfortable",
2611
2683
  elevation: "3",
@@ -2614,7 +2686,7 @@ function li(e, t, i, o, n, s) {
2614
2686
  }, null, 8, ["icon"])
2615
2687
  ]);
2616
2688
  }
2617
- const di = /* @__PURE__ */ w(ri, [["render", li]]), ci = {
2689
+ const ri = /* @__PURE__ */ w(ni, [["render", oi]]), ai = {
2618
2690
  name: "Disclaimer",
2619
2691
  inject: ["i18n"],
2620
2692
  data() {
@@ -2622,25 +2694,25 @@ const di = /* @__PURE__ */ w(ri, [["render", li]]), ci = {
2622
2694
  isVisible: !0
2623
2695
  };
2624
2696
  }
2625
- }, ui = {
2697
+ }, li = {
2626
2698
  key: 0,
2627
2699
  class: "text-white disclaimer caption"
2628
2700
  };
2629
- function hi(e, t, i, o, n, s) {
2630
- return d(), C(ie, { name: "fade-transition" }, {
2701
+ function di(e, t, i, o, n, s) {
2702
+ return d(), I(G, { name: "fade-transition" }, {
2631
2703
  default: c(() => [
2632
- n.isVisible ? (d(), m("div", ui, [
2704
+ n.isVisible ? (d(), m("div", li, [
2633
2705
  B(S(s.i18n.getLabel("all-illustrations-are-indicative-deviations-may-occur")) + " ", 1),
2634
2706
  h("span", {
2635
2707
  onClick: t[0] || (t[0] = (r) => n.isVisible = !1),
2636
2708
  class: "link-text text-decoration-underline"
2637
2709
  }, S(s.i18n.getLabel("i-understand")), 1)
2638
- ])) : I("", !0)
2710
+ ])) : k("", !0)
2639
2711
  ]),
2640
2712
  _: 1
2641
2713
  });
2642
2714
  }
2643
- const mi = /* @__PURE__ */ w(ci, [["render", hi], ["__scopeId", "data-v-6e4f02d6"]]), gi = {
2715
+ const ci = /* @__PURE__ */ w(ai, [["render", di], ["__scopeId", "data-v-6e4f02d6"]]), ui = {
2644
2716
  name: "ManualSlideShowImage",
2645
2717
  props: {
2646
2718
  isFullScreen: { type: Boolean, required: !0 }
@@ -2667,69 +2739,69 @@ const mi = /* @__PURE__ */ w(ci, [["render", hi], ["__scopeId", "data-v-6e4f02d6
2667
2739
  (window.innerWidth <= 600 || i <= 600) && (o = window.innerHeight * 0.75, i = o * (1 / e)), t.style.height = o + "px", t.style.width = i + "px", this.$emit("new-size-callback", i, o);
2668
2740
  }
2669
2741
  }
2670
- }, vi = { id: "player-wrapper" }, pi = { id: "player-sizer" }, fi = {
2742
+ }, hi = { id: "player-wrapper" }, mi = { id: "player-sizer" }, gi = {
2671
2743
  class: "player-control",
2672
2744
  id: "controls-top-left"
2673
- }, bi = {
2745
+ }, vi = {
2674
2746
  class: "player-control",
2675
2747
  id: "controls-top-center"
2676
- }, yi = {
2748
+ }, pi = {
2677
2749
  class: "player-control",
2678
2750
  id: "controls-top-right"
2679
- }, wi = {
2751
+ }, fi = {
2680
2752
  class: "player-control",
2681
2753
  id: "controls-center-left"
2682
- }, _i = {
2754
+ }, bi = {
2683
2755
  class: "player-control",
2684
2756
  id: "controls-center-center"
2685
- }, ki = {
2757
+ }, yi = {
2686
2758
  class: "player-control",
2687
2759
  id: "controls-center-right"
2688
- }, Ii = {
2760
+ }, wi = {
2689
2761
  class: "player-control",
2690
2762
  id: "controls-bottom-left"
2691
- }, Ci = {
2763
+ }, _i = {
2692
2764
  class: "player-control",
2693
2765
  id: "controls-bottom-center"
2694
- }, Si = {
2766
+ }, ki = {
2695
2767
  class: "player-control",
2696
2768
  id: "controls-bottom-right"
2697
2769
  };
2698
- function Bi(e, t, i, o, n, s) {
2699
- return d(), m("div", vi, [
2700
- h("div", pi, [
2701
- k(e.$slots, "slideshow-image", {}, void 0, !0),
2770
+ function Ii(e, t, i, o, n, s) {
2771
+ return d(), m("div", hi, [
2772
+ h("div", mi, [
2773
+ _(e.$slots, "slideshow-image", {}, void 0, !0),
2774
+ h("div", gi, [
2775
+ _(e.$slots, "top-left", {}, void 0, !0)
2776
+ ]),
2777
+ h("div", vi, [
2778
+ _(e.$slots, "top-center", {}, void 0, !0)
2779
+ ]),
2780
+ h("div", pi, [
2781
+ _(e.$slots, "top-right", {}, void 0, !0)
2782
+ ]),
2702
2783
  h("div", fi, [
2703
- k(e.$slots, "top-left", {}, void 0, !0)
2784
+ _(e.$slots, "center-left", {}, void 0, !0)
2704
2785
  ]),
2705
2786
  h("div", bi, [
2706
- k(e.$slots, "top-center", {}, void 0, !0)
2787
+ _(e.$slots, "center-center", {}, void 0, !0)
2707
2788
  ]),
2708
2789
  h("div", yi, [
2709
- k(e.$slots, "top-right", {}, void 0, !0)
2790
+ _(e.$slots, "center-right", {}, void 0, !0)
2710
2791
  ]),
2711
2792
  h("div", wi, [
2712
- k(e.$slots, "center-left", {}, void 0, !0)
2793
+ _(e.$slots, "bottom-left", {}, void 0, !0)
2713
2794
  ]),
2714
2795
  h("div", _i, [
2715
- k(e.$slots, "center-center", {}, void 0, !0)
2796
+ _(e.$slots, "bottom-center", {}, void 0, !0)
2716
2797
  ]),
2717
2798
  h("div", ki, [
2718
- k(e.$slots, "center-right", {}, void 0, !0)
2719
- ]),
2720
- h("div", Ii, [
2721
- k(e.$slots, "bottom-left", {}, void 0, !0)
2722
- ]),
2723
- h("div", Ci, [
2724
- k(e.$slots, "bottom-center", {}, void 0, !0)
2725
- ]),
2726
- h("div", Si, [
2727
- k(e.$slots, "bottom-right", {}, void 0, !0)
2799
+ _(e.$slots, "bottom-right", {}, void 0, !0)
2728
2800
  ])
2729
2801
  ])
2730
2802
  ]);
2731
2803
  }
2732
- const Di = /* @__PURE__ */ w(gi, [["render", Bi], ["__scopeId", "data-v-1dab1ac3"]]), Ai = {
2804
+ const Ci = /* @__PURE__ */ w(ui, [["render", Ii], ["__scopeId", "data-v-1dab1ac3"]]), Si = {
2733
2805
  name: "StaticImage",
2734
2806
  props: {
2735
2807
  image: { type: String, required: !0 },
@@ -2740,28 +2812,28 @@ const Di = /* @__PURE__ */ w(gi, [["render", Bi], ["__scopeId", "data-v-1dab1ac3
2740
2812
  return { "background-image": `url("${encodeURI(this.image)}")` };
2741
2813
  }
2742
2814
  }
2743
- }, xi = { class: "static-image-wrapper" };
2744
- function Mi(e, t, i, o, n, s) {
2745
- return d(), m("div", xi, [
2815
+ }, Bi = { class: "static-image-wrapper" };
2816
+ function Di(e, t, i, o, n, s) {
2817
+ return d(), m("div", Bi, [
2746
2818
  h("div", {
2747
2819
  class: M(["img-div", [i.aspectRatio]]),
2748
2820
  style: D(s.style)
2749
2821
  }, null, 6)
2750
2822
  ]);
2751
2823
  }
2752
- const Ri = /* @__PURE__ */ w(Ai, [["render", Mi], ["__scopeId", "data-v-b418cf51"]]), Fi = {
2824
+ const Ai = /* @__PURE__ */ w(Si, [["render", Di], ["__scopeId", "data-v-b418cf51"]]), xi = {
2753
2825
  name: "ManualSlideShow",
2754
2826
  components: {
2755
- WaypointCarousel: ei,
2756
- SingleImage: Ri,
2757
- SocialShare: si,
2758
- FullScreenButton: di,
2759
- Disclaimer: mi,
2760
- ManualSlideShowPlayer: Di
2827
+ WaypointCarousel: Kt,
2828
+ SingleImage: Ai,
2829
+ SocialShare: ti,
2830
+ FullScreenButton: ri,
2831
+ Disclaimer: ci,
2832
+ ManualSlideShowPlayer: Ci
2761
2833
  },
2762
2834
  provide() {
2763
2835
  return {
2764
- i18n: this.i18n ? new R(this.i18n.labels, this.i18n.language) : new R()
2836
+ i18n: this.i18n ? new F(this.i18n.labels, this.i18n.language) : new F()
2765
2837
  };
2766
2838
  },
2767
2839
  props: {
@@ -2779,12 +2851,12 @@ const Ri = /* @__PURE__ */ w(Ai, [["render", Mi], ["__scopeId", "data-v-b418cf51
2779
2851
  error: !1,
2780
2852
  currentIndex: 0,
2781
2853
  currentImageId: void 0,
2782
- fullScreen: new oi(document, "player-wrapper")
2854
+ fullScreen: new ii(document, "player-wrapper")
2783
2855
  };
2784
2856
  },
2785
2857
  computed: {
2786
2858
  imagesWithThumbnails() {
2787
- return this.images.map((e) => Object.assign(Object.assign({}, e), { thumbnailUrl: e.url }));
2859
+ return this.images.map((e) => ({ ...e, thumbnailUrl: e.url }));
2788
2860
  },
2789
2861
  currentImage() {
2790
2862
  return this.images[this.currentIndex].url;
@@ -2810,16 +2882,16 @@ const Ri = /* @__PURE__ */ w(Ai, [["render", Mi], ["__scopeId", "data-v-b418cf51
2810
2882
  i != -1 && (this.currentIndex = i);
2811
2883
  }
2812
2884
  }
2813
- }, Hi = { class: "virtual-tour-v2-wrapper" }, Ti = { class: "player-and-components-wrapper" }, Oi = {
2885
+ }, Mi = { class: "virtual-tour-v2-wrapper" }, Ri = { class: "player-and-components-wrapper" }, Fi = {
2814
2886
  key: 1,
2815
2887
  class: "btn-placeholder"
2816
2888
  };
2817
- function Li(e, t, i, o, n, s) {
2818
- const r = u("single-image"), a = u("disclaimer"), g = u("v-icon"), v = u("v-btn"), f = u("full-screen-button"), _ = u("social-share"), b = u("waypoint-carousel"), y = u("manual-slide-show-player");
2819
- return d(), m("div", Hi, [
2820
- h("div", Ti, [
2889
+ function Hi(e, t, i, o, n, s) {
2890
+ const r = u("single-image"), a = u("disclaimer"), g = u("v-icon"), f = u("v-btn"), y = u("full-screen-button"), C = u("social-share"), p = u("waypoint-carousel"), b = u("manual-slide-show-player");
2891
+ return d(), m("div", Mi, [
2892
+ h("div", Ri, [
2821
2893
  h("div", null, [
2822
- l(y, {
2894
+ l(b, {
2823
2895
  isFullScreen: n.fullScreen.isActive
2824
2896
  }, {
2825
2897
  "slideshow-image": c(() => [
@@ -2831,9 +2903,9 @@ function Li(e, t, i, o, n, s) {
2831
2903
  ]),
2832
2904
  "top-right": c(() => []),
2833
2905
  "center-left": c(() => [
2834
- l(ie, { name: "slide-x-transition" }, {
2906
+ l(G, { name: "slide-x-transition" }, {
2835
2907
  default: c(() => [
2836
- l(v, {
2908
+ l(f, {
2837
2909
  elevation: "1",
2838
2910
  rounded: "",
2839
2911
  plain: "",
@@ -2856,9 +2928,9 @@ function Li(e, t, i, o, n, s) {
2856
2928
  ]),
2857
2929
  "center-center": c(() => []),
2858
2930
  "center-right": c(() => [
2859
- l(ie, { name: "slide-x-reverse-transition" }, {
2931
+ l(G, { name: "slide-x-reverse-transition" }, {
2860
2932
  default: c(() => [
2861
- l(v, {
2933
+ l(f, {
2862
2934
  elevation: "1",
2863
2935
  rounded: "",
2864
2936
  plain: "",
@@ -2880,19 +2952,19 @@ function Li(e, t, i, o, n, s) {
2880
2952
  })
2881
2953
  ]),
2882
2954
  "bottom-left": c(() => [
2883
- i.showFullScreen ? (d(), C(f, {
2955
+ i.showFullScreen ? (d(), I(y, {
2884
2956
  key: 0,
2885
2957
  isFullScreen: n.fullScreen.isActive,
2886
2958
  class: "btn-fullscreen",
2887
2959
  onToggleFullscreen: s.toggleFullscreen
2888
- }, null, 8, ["isFullScreen", "onToggleFullscreen"])) : I("", !0),
2889
- i.showShare ? (d(), m("div", Oi, [
2890
- l(_)
2891
- ])) : I("", !0)
2960
+ }, null, 8, ["isFullScreen", "onToggleFullscreen"])) : k("", !0),
2961
+ i.showShare ? (d(), m("div", Fi, [
2962
+ l(C)
2963
+ ])) : k("", !0)
2892
2964
  ]),
2893
2965
  "bottom-center": c(() => [
2894
2966
  h("div", null, [
2895
- n.fullScreen.isActive ? (d(), C(b, {
2967
+ n.fullScreen.isActive ? (d(), I(p, {
2896
2968
  key: 0,
2897
2969
  class: M([n.fullScreen.isActive ? "full-screen" : ""]),
2898
2970
  thumbnails: s.imagesWithThumbnails,
@@ -2900,13 +2972,13 @@ function Li(e, t, i, o, n, s) {
2900
2972
  onNext: s.nextImage,
2901
2973
  onPrevious: s.previousImage,
2902
2974
  onGoto: s.goToImage
2903
- }, null, 8, ["class", "thumbnails", "active", "onNext", "onPrevious", "onGoto"])) : I("", !0)
2975
+ }, null, 8, ["class", "thumbnails", "active", "onNext", "onPrevious", "onGoto"])) : k("", !0)
2904
2976
  ])
2905
2977
  ]),
2906
2978
  "bottom-right": c(() => []),
2907
2979
  _: 1
2908
2980
  }, 8, ["isFullScreen"]),
2909
- l(b, {
2981
+ l(p, {
2910
2982
  thumbnails: s.imagesWithThumbnails,
2911
2983
  active: n.currentIndex,
2912
2984
  onNext: s.nextImage,
@@ -2917,26 +2989,26 @@ function Li(e, t, i, o, n, s) {
2917
2989
  ])
2918
2990
  ]);
2919
2991
  }
2920
- const we = /* @__PURE__ */ w(Fi, [["render", Li], ["__scopeId", "data-v-e2117d1e"]]), Ui = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2992
+ const Ti = /* @__PURE__ */ w(xi, [["render", Hi], ["__scopeId", "data-v-e2117d1e"]]), Li = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2921
2993
  __proto__: null,
2922
- ManualSlideShow: we,
2923
- QiApartmentChooser: be,
2924
- QiApartmentChooserNavigation: se,
2925
- QiApartmentChooserRaster: Q,
2926
- QiApartmentChooserRotator: re,
2927
- QiApartmentChooserSvg: V,
2928
- QiBuildingChooser: ye,
2929
- QiBuildingChooserRaster: X,
2930
- QiBuildingChooserRasterOverlay: de,
2931
- QiBuildingChooserSceneImageStack: ee,
2932
- QiBuildingChooserSunSimControl: J,
2933
- QiBuildingChooserSvg: N,
2934
- QiFloatingCard: q,
2935
- QiHoverProbe: L,
2936
- QiNorthDirection: Z,
2937
- QiZoomBox: Y
2994
+ ManualSlideShow: Ti,
2995
+ QiApartmentChooser: dt,
2996
+ QiApartmentChooserNavigation: ce,
2997
+ QiApartmentChooserRaster: N,
2998
+ QiApartmentChooserRotator: ue,
2999
+ QiApartmentChooserSvg: X,
3000
+ QiBuildingChooser: Qt,
3001
+ QiBuildingChooserRaster: Z,
3002
+ QiBuildingChooserRasterOverlay: ge,
3003
+ QiBuildingChooserSceneImageStack: ne,
3004
+ QiBuildingChooserSunSimControl: ie,
3005
+ QiBuildingChooserSvg: K,
3006
+ QiFloatingCard: z,
3007
+ QiHoverProbe: $,
3008
+ QiNorthDirection: te,
3009
+ QiZoomBox: P
2938
3010
  }, Symbol.toStringTag, { value: "Module" }));
2939
- class $i {
3011
+ class Oi {
2940
3012
  constructor(t) {
2941
3013
  this._data = t;
2942
3014
  }
@@ -2949,44 +3021,38 @@ class $i {
2949
3021
  return [0, 0, 0, 0];
2950
3022
  }
2951
3023
  }
2952
- const _e = function(t) {
2953
- Object.entries(Ui).forEach(([i, o]) => {
3024
+ const Ei = function(t) {
3025
+ Object.entries(Li).forEach(([i, o]) => {
2954
3026
  t.component(i, o);
2955
3027
  });
2956
- }, Ei = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2957
- __proto__: null,
2958
- BatchLoadTracker: G,
2959
- BuildingMap: U,
2960
- BuildingPickerResourceProvider: le,
2961
- BuildingViewerModel: fe,
2962
- CanvasRaster: $,
2963
- DayOfYearSelector: z,
2964
- I18N: R,
2965
- ManualSlideShow: we,
2966
- QiApartmentChooser: be,
2967
- QiApartmentChooserNavigation: se,
2968
- QiApartmentChooserRaster: Q,
2969
- QiApartmentChooserRotator: re,
2970
- QiApartmentChooserSvg: V,
2971
- QiBuildingChooser: ye,
2972
- QiBuildingChooserRaster: X,
2973
- QiBuildingChooserRasterOverlay: de,
2974
- QiBuildingChooserSceneImageStack: ee,
2975
- QiBuildingChooserSunSimControl: J,
2976
- QiBuildingChooserSvg: N,
2977
- QiFloatingCard: q,
2978
- QiHoverProbe: L,
2979
- QiNorthDirection: Z,
2980
- QiZoomBox: Y,
2981
- ResourceLoader: O,
2982
- SampleRaster: $i,
2983
- SceneRotator: ve,
2984
- default: _e,
2985
- throttle: ne
2986
- }, Symbol.toStringTag, { value: "Module" }));
2987
- Object.entries(Ei).forEach(([e, t]) => {
2988
- e !== "default" && (_e[e] = t);
2989
- });
3028
+ };
2990
3029
  export {
2991
- _e as default
3030
+ W as BatchLoadTracker,
3031
+ E as BuildingMap,
3032
+ me as BuildingPickerResourceProvider,
3033
+ Ke as BuildingViewerModel,
3034
+ q as CanvasRaster,
3035
+ Q as DayOfYearSelector,
3036
+ F as I18N,
3037
+ Ti as ManualSlideShow,
3038
+ dt as QiApartmentChooser,
3039
+ ce as QiApartmentChooserNavigation,
3040
+ N as QiApartmentChooserRaster,
3041
+ ue as QiApartmentChooserRotator,
3042
+ X as QiApartmentChooserSvg,
3043
+ Qt as QiBuildingChooser,
3044
+ Z as QiBuildingChooserRaster,
3045
+ ge as QiBuildingChooserRasterOverlay,
3046
+ ne as QiBuildingChooserSceneImageStack,
3047
+ ie as QiBuildingChooserSunSimControl,
3048
+ K as QiBuildingChooserSvg,
3049
+ z as QiFloatingCard,
3050
+ $ as QiHoverProbe,
3051
+ te as QiNorthDirection,
3052
+ P as QiZoomBox,
3053
+ U as ResourceLoader,
3054
+ Oi as SampleRaster,
3055
+ Fe as SceneRotator,
3056
+ Ei as default,
3057
+ de as throttle
2992
3058
  };