hart-estate-widget 0.0.64 → 0.0.65
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.
- package/README.md +4 -3
- package/build/assets/css/app.css +1 -1
- package/build/assets/css/app.css.map +1 -1
- package/build/assets/icons/arrow-left.svg +4 -0
- package/build/assets/icons/arrow-right.svg +4 -0
- package/build/assets/icons/plan.svg +5 -0
- package/build/assets/icons/render.svg +7 -0
- package/build/assets/icons/surface.svg +5 -0
- package/build/assets/sass/components/rotation.sass +100 -4
- package/build/components/Application.js +9 -6
- package/build/components/RotationTab/DefaultView.js +124 -0
- package/build/components/RotationTab/ThreesixtyView.js +45 -0
- package/build/components/{RotationTab.js → RotationTab/index.js} +89 -54
- package/build/components/Widget.js +2 -22
- package/build/config/defaultConfig.js +3 -1
- package/build/enums/rotationModes.js +11 -0
- package/build/index.js +8 -0
- package/package.json +1 -1
package/README.md
CHANGED
@@ -9,12 +9,13 @@
|
|
9
9
|
|
10
10
|
```js
|
11
11
|
import React, { useEffect, useState } from 'react';
|
12
|
-
import { Widget } from 'hart-estate-widget';
|
12
|
+
import { Widget, rotationModes } from 'hart-estate-widget';
|
13
13
|
|
14
14
|
const WIDGET_OPTIONS = {
|
15
15
|
tabs: ['planImage', 'rotation', 'panorama'],
|
16
16
|
logo: '/path/to/logo.png',
|
17
17
|
planImage: '/path/to/plan.jpg',
|
18
|
+
rotationMode: rotationModes.DEFAULY,
|
18
19
|
rotationImages: [
|
19
20
|
'/path/to/rotation_image_1.jpg',
|
20
21
|
...
|
@@ -95,8 +96,8 @@ tabs: [
|
|
95
96
|
'panorama', // изображения 360°
|
96
97
|
],
|
97
98
|
rotationMode: [
|
98
|
-
|
99
|
-
|
99
|
+
rotationModes.DEFAULT, // режим просмотра вида сверху (несколько ракурсов) и стилизованной планировки
|
100
|
+
rotationModes.THREESIXTY, // режим прокрутки изображений кругового просмотра
|
100
101
|
],
|
101
102
|
locale: [
|
102
103
|
'ru', // русский язык
|
package/build/assets/css/app.css
CHANGED
@@ -1 +1 @@
|
|
1
|
-
.widget-application{width:100%;height:100%;flex:none;overflow:hidden;position:relative;z-index:1;background-color:#fff;font-size:20px}.widget-application *,.widget-application *:before,.widget-application *:after{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:"Roboto Mono",sans-serif;text-decoration:none;font-weight:700;color:#413e3e;outline:none;padding:0;margin:0;box-sizing:border-box;-webkit-box-sizing:border-box}.widget-application .widget-logo{position:absolute;left:45px;top:30px;z-index:3}.widget-application--tablet.widget-application .widget-logo{left:20px;top:30px}.widget-application--smallMobile.widget-application .widget-logo{top:25px}.widget-application .widget-logo img{display:block;width:82px;height:82px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-logo img{width:65px;height:65px}.widget-application--mobile.widget-application .widget-logo img{width:42px;height:42px}.widget-application--smallMobile.widget-application .widget-logo img{width:36px;height:36px}.widget-application .widget-tab__panorama-close-map{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-tab__panorama-close-map{right:17px;top:35px}.widget-application--mobile.widget-application .widget-tab__panorama-close-map{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-tab__panorama-close-map{top:25px}.widget-application .widget-tab__panorama-close-map img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-tab__panorama-close-map img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-tab__panorama-close-map img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-tab__panorama-close-map img{width:26px;height:26px}.widget-application .widget-enter-fullscreen{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-enter-fullscreen{right:17px;top:35px}.widget-application--mobile.widget-application .widget-enter-fullscreen{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-enter-fullscreen{top:25px}.widget-application .widget-enter-fullscreen img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-enter-fullscreen img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-enter-fullscreen img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-enter-fullscreen img{width:26px;height:26px}.widget-application .widget-exit-fullscreen{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-exit-fullscreen{right:17px;top:35px}.widget-application--mobile.widget-application .widget-exit-fullscreen{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-exit-fullscreen{top:25px}.widget-application .widget-exit-fullscreen img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-exit-fullscreen img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-exit-fullscreen img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-exit-fullscreen img{width:26px;height:26px}.widget-application .widget-tab-buttons{position:absolute;z-index:3;right:44px;bottom:35px;display:flex;align-items:center;justify-content:flex-end}.widget-application--tablet.widget-application .widget-tab-buttons{right:20px;bottom:35px}.widget-application--smallMobile.widget-application .widget-tab-buttons{bottom:30px}.widget-application .widget-tab-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#eaeaea;color:#413e3e;font-size:28px;line-height:120%;font-weight:bold;margin-left:40px}.widget-application--tablet.widget-application .widget-tab-button{margin-left:20px;width:60px;height:60px;font-size:22px}.widget-application--mobile.widget-application .widget-tab-button{margin-left:10px;font-size:17px;width:44px;height:44px}.widget-application--smallMobile.widget-application .widget-tab-button{width:36px;height:36px;font-size:14px}.widget-application .widget-tab-button--active{background-color:#fac62d}.widget-application .widget-tab{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:60px 30px}.widget-application--smallMobile.widget-application .widget-tab{padding:60px 20px}.widget-application .widget-tab-menu{position:absolute;z-index:3;left:15px;top:15px;max-height:100%;overflow-y:auto;padding-bottom:30px}.widget-application .widget-tab-menu__wallpapers{display:flex;flex-wrap:wrap;align-items:flex-start;margin-top:10px;width:100%}.widget-application .widget-tab-menu__wallpapers img{width:30px;height:30px;display:block;object-fit:cover;cursor:pointer;margin-right:10px;margin-block-end:10px}.widget-application .widget-tab-menu ul{list-style-type:none}.widget-application .widget-tab-menu ul li{color:#413e3e;background-color:#fac62d;padding:5px 15px;border-radius:10px;font-size:.7rem;border:none;cursor:pointer;margin-bottom:15px;width:200px;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none}.widget-application .widget-tab-menu ul li label{display:flex;cursor:inherit;width:100%}.widget-application .widget-tab-menu ul li input[type=color]{cursor:pointer;margin-left:auto;width:50px;height:20px;border:0;border-radius:5px}.widget-application .widget-tab-menu ul li input[type=color]::-webkit-color-swatch-wrapper{display:none !important}.widget-application .widget-tab-menu ul li input[type=file]{display:none}.widget-application .widget-tab-menu ul li:nth-child(1){position:relative}.widget-application .widget-tab-menu ul li:nth-child(1)::after{--bar-width: 2px;content:"";width:20px;height:15px;display:block;background:repeating-linear-gradient(180deg, #000000, #000000 var(--bar-width), rgba(0, 0, 0, 0) var(--bar-width), rgba(0, 0, 0, 0) calc(var(--bar-width) * 3));position:absolute;right:10px;top:50%;transform:translateY(-50%)}.widget-application .widget-instructions{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-position:center;background-repeat:no-repeat;background-size:cover}.widget-application .widget-instructions__content{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background-color:rgba(234,234,234,.85);border-radius:20px;overflow:hidden;width:400px;max-width:calc(100% - 60px);padding:36px 30px 30px 30px;backdrop-filter:blur(5px);-moz-backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.widget-application--mobile.widget-application .widget-instructions__content{width:280px;padding:26px 20px 20px 20px}.widget-application .widget-instructions__steps{display:flex;align-items:flex-start;justify-content:center}.widget-application .widget-instructions__step{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;margin:0 15px}.widget-application--tablet.widget-application .widget-instructions__step{margin:0 10px}.widget-application .widget-instructions__step img{display:block;width:52px;height:80px;object-fit:contain;object-position:center}.widget-application--mobile.widget-application .widget-instructions__step img{width:40px;height:60px}.widget-application--smallMobile.widget-application .widget-instructions__step img{width:35px}.widget-application .widget-instructions__step p{color:#413e3e;font-size:20px;font-weight:bold;text-align:center;margin-top:10px;max-width:130px}.widget-application--tablet.widget-application .widget-instructions__step p{font-size:18px;max-width:115px}.widget-application--mobile.widget-application .widget-instructions__step p{font-size:16px}.widget-application--smallMobile.widget-application .widget-instructions__step p{font-size:14px}.widget-application .widget-instructions button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;display:flex;align-items:center;justify-content:center;height:44px;padding:0 33px;border-radius:52px;background-color:#fac62d;color:#413e3e;font-size:24px;font-weight:bold;text-transform:uppercase;margin:25px auto 0 auto}.widget-application--tablet.widget-application .widget-instructions button{font-size:18px;height:40px}.widget-application--mobile.widget-application .widget-instructions button{font-size:16px;height:35px}.widget-application--smallMobile.widget-application .widget-instructions button{font-size:14px;height:26px;padding:0 25px}.widget-application .widget-tab__panorama{width:100%;height:100%;position:absolute;left:0;top:0;z-index:2}.widget-application .widget-tab__panorama-overlay{width:100%;height:100%;overflow:hidden;background:#fff !important}.widget-application .widget-tab__panorama-overlay *{display:none !important}.widget-application .widget-tab__panorama-overlay canvas{display:block !important}.widget-application .widget-tab__panorama-controls{position:absolute;z-index:2;left:50%;bottom:35px;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:38px;background-color:rgba(0,0,0,.2);transform:translateX(-50%);backdrop-filter:blur(5px);-moz-backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.widget-application--mobile.widget-application .widget-tab__panorama-controls{padding:5px}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls{bottom:30px}.widget-application .widget-tab__panorama-controls-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:55px;height:55px;border-radius:50%;background-color:#fff;display:flex;align-items:center;justify-content:center;margin-right:18px}.widget-application--tablet.widget-application .widget-tab__panorama-controls-button{width:44px;height:44px}.widget-application--mobile.widget-application .widget-tab__panorama-controls-button{margin-right:10px;width:33px;height:33px}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls-button{width:26px;height:26px}.widget-application .widget-tab__panorama-controls-button img{display:block}.widget-application--tablet.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.7)}.widget-application--mobile.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.52)}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.45)}.widget-application .widget-tab__panorama-controls-button:nth-last-child(1){margin-right:0}.widget-application .widget-tab__panorama-close-map{z-index:4}.widget-application .widget-tab__panorama-map{position:absolute;left:45px;bottom:35px;z-index:3;border-radius:10px;opacity:1;transition:opacity .5s;touch-action:none;-webkit-touch-action:none}.widget-application .widget-tab__panorama-map::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;transform:translate(-50%, -50%);width:calc(100% + 16px);height:calc(100% + 16px);border-radius:inherit;background-color:#fff}.widget-application--tablet.widget-application .widget-tab__panorama-map{left:20px;transform:scale(0.6);transform-origin:0% 100%}.widget-application--mobile.widget-application .widget-tab__panorama-map{transform:scale(0.4)}.widget-application--smallMobile.widget-application .widget-tab__panorama-map{bottom:30px;transform:scale(0.35)}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled{transform:scale(1.4) translate(-50%, 50%);left:50%;bottom:50%}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled::after{content:"";position:absolute;z-index:-2;left:50%;top:50%;transform:translate(-50%, -50%);width:100vw;height:100vh;background-color:rgba(196,196,196,.8)}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled svg polygon:active{opacity:.3 !important}.widget-application--mobile.widget-application .widget-tab__panorama-map--scaled{transform:scale(1) translate(-50%, 50%)}.widget-application .widget-tab__panorama-map--hidden{opacity:0;pointer-events:none}.widget-application .widget-tab__panorama-map img{width:200px;border-radius:none;display:block;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none;-webkit-backface-visibility:hidden;-ms-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.widget-application .widget-tab__panorama-map img:hover{box-shadow:1px 1px 10px rgba(0,0,0,.15)}.widget-application .widget-tab__panorama-map svg{position:absolute;left:0;top:0;width:200px;height:100%;z-index:3;display:block;border-radius:inherit}.widget-application .widget-tab__panorama-map svg polygon{opacity:0;fill:#fac62d;cursor:pointer}.widget-application .widget-tab__panorama-map svg polygon:hover{opacity:.3}.widget-application .widget-tab__panorama-map__fov{position:absolute;left:0;top:0;width:0px;height:0px;border-radius:50%;border-left:30px solid rgba(250,198,45,0);border-right:30px solid rgba(250,198,45,0);border-bottom:30px solid rgba(250,198,45,0);border-top:40px solid rgba(250,198,45,.4);transform:translate(-50%, -50%) rotate(0rad);transform-origin:50% 50%;z-index:4;pointer-events:none}.widget-application .widget-tab__panorama-map__fov::before{content:"";position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%, -50%) translateY(-5px);width:15px;height:15px;background-color:#fac62d;border-radius:50%;border:2px solid #fac62d;box-shadow:inset 0 0 0 2px #fff}.widget-application .widget-tab__threesixty{width:100%;height:100%;touch-action:none;-webkit-touch-action:none}.widget-application .widget-tab__threesixty-start{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;position:absolute;left:50%;bottom:35px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;padding:0 25px 0 10px;background-color:#eaeaea;border-radius:38px;height:72px;width:202px}.widget-application--tablet.widget-application .widget-tab__threesixty-start{height:60px;width:166px;padding:0 20px 0 8px;bottom:35px}.widget-application--mobile.widget-application .widget-tab__threesixty-start{height:44px;width:115px;padding:0 10px 0 6px}.widget-application--smallMobile.widget-application .widget-tab__threesixty-start{height:36px;width:85px;padding:0 8px 0 6px;bottom:30px}.widget-application .widget-tab__threesixty-start-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:#fff;margin-right:18px;padding:10px}.widget-application--tablet.widget-application .widget-tab__threesixty-start-icon{padding:7px;margin-right:15px}.widget-application--mobile.widget-application .widget-tab__threesixty-start-icon{margin-right:7px}.widget-application--smallMobile.widget-application .widget-tab__threesixty-start-icon{padding:6px;margin-right:5px}.widget-application .widget-tab__threesixty-start-icon img{display:block;position:relative;top:2px;width:34px}.widget-application--tablet.widget-application .widget-tab__threesixty-start-icon img{width:30px;top:1px}.widget-application--mobile.widget-application .widget-tab__threesixty-start-icon img{width:19px;top:0}.widget-application--smallMobile.widget-application .widget-tab__threesixty-start-icon img{width:15px}.widget-application .widget-tab__threesixty-start span{font-size:24px;font-weight:bold;color:#413e3e;text-transform:uppercase;width:100%;display:block;text-align:center;position:relative;top:1px}.widget-application--tablet.widget-application .widget-tab__threesixty-start span{font-size:20px}.widget-application--mobile.widget-application .widget-tab__threesixty-start span{font-size:14px}.widget-application--smallMobile.widget-application .widget-tab__threesixty-start span{font-size:10px;top:0}.widget-application .widget-tab__threesixty-container{width:100% !important;height:100% !important;position:relative;background-image:none !important}.widget-application .widget-tab__threesixty-container img{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);max-width:100%;max-height:100%;width:600px;height:600px;object-fit:contain;opacity:0;pointer-events:none;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none}.widget-application .widget-tab__threesixty-container img.active{opacity:1}.widget-application .widget-tab__threesixty--active .widget-tab__threesixty-container{cursor:move}.widget-application .widget-loader{display:block;position:relative;width:80px;height:80px}.widget-application .widget-loader--absolute{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.widget-application .widget-loader--sm{transform:translate(-50%, -50%) scale(0.75)}.widget-application .widget-loader div{position:absolute;top:33px;width:13px;height:13px;border-radius:50%;background:#fac62d;animation-timing-function:cubic-bezier(0, 1, 1, 0)}.widget-application .widget-loader div:nth-child(1){left:8px;animation:widget-loader-1 .6s infinite}.widget-application .widget-loader div:nth-child(2){left:8px;animation:widget-loader-2 .6s infinite}.widget-application .widget-loader div:nth-child(3){left:32px;animation:widget-loader-2 .6s infinite}.widget-application .widget-loader div:nth-child(4){left:56px;animation:widget-loader-3 .6s infinite}@keyframes widget-loader-1{0%{transform:scale(0)}100%{transform:scale(1)}}@keyframes widget-loader-3{0%{transform:scale(1)}100%{transform:scale(0)}}@keyframes widget-loader-2{0%{transform:translate(0, 0)}100%{transform:translate(24px, 0)}}.widget-application .widget-tab__model{width:100%;height:100%;position:absolute;left:0;top:0;z-index:2}.widget-application .widget-tab__model-scene{width:100%;height:100%;display:block}.widget-application .widget-tab__model-joystick{position:absolute;left:100px;bottom:100px;opacity:0;pointer-events:none}.widget-application--mobile.widget-application .widget-tab__model-joystick{left:50%;transform:translateX(-50%)}.widget-application .widget-tab__model-joystick--active{opacity:1;pointer-events:unset}/*# sourceMappingURL=app.css.map */
|
1
|
+
.widget-application{width:100%;height:100%;flex:none;overflow:hidden;position:relative;z-index:1;background-color:#fff;font-size:20px}.widget-application *,.widget-application *:before,.widget-application *:after{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:"Roboto Mono",sans-serif;text-decoration:none;font-weight:700;color:#413e3e;outline:none;padding:0;margin:0;box-sizing:border-box;-webkit-box-sizing:border-box}.widget-application .widget-logo{position:absolute;left:45px;top:30px;z-index:3}.widget-application--tablet.widget-application .widget-logo{left:20px;top:30px}.widget-application--smallMobile.widget-application .widget-logo{top:25px}.widget-application .widget-logo img{display:block;width:82px;height:82px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-logo img{width:65px;height:65px}.widget-application--mobile.widget-application .widget-logo img{width:42px;height:42px}.widget-application--smallMobile.widget-application .widget-logo img{width:36px;height:36px}.widget-application .widget-tab__panorama-close-map{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-tab__panorama-close-map{right:17px;top:35px}.widget-application--mobile.widget-application .widget-tab__panorama-close-map{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-tab__panorama-close-map{top:25px}.widget-application .widget-tab__panorama-close-map img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-tab__panorama-close-map img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-tab__panorama-close-map img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-tab__panorama-close-map img{width:26px;height:26px}.widget-application .widget-enter-fullscreen{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-enter-fullscreen{right:17px;top:35px}.widget-application--mobile.widget-application .widget-enter-fullscreen{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-enter-fullscreen{top:25px}.widget-application .widget-enter-fullscreen img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-enter-fullscreen img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-enter-fullscreen img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-enter-fullscreen img{width:26px;height:26px}.widget-application .widget-exit-fullscreen{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-exit-fullscreen{right:17px;top:35px}.widget-application--mobile.widget-application .widget-exit-fullscreen{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-exit-fullscreen{top:25px}.widget-application .widget-exit-fullscreen img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-exit-fullscreen img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-exit-fullscreen img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-exit-fullscreen img{width:26px;height:26px}.widget-application .widget-tab-buttons{position:absolute;z-index:3;right:44px;bottom:35px;display:flex;align-items:center;justify-content:flex-end}.widget-application--tablet.widget-application .widget-tab-buttons{right:20px;bottom:35px}.widget-application--smallMobile.widget-application .widget-tab-buttons{bottom:30px}.widget-application .widget-tab-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#eaeaea;color:#413e3e;font-size:28px;line-height:120%;font-weight:bold;margin-left:40px}.widget-application--tablet.widget-application .widget-tab-button{margin-left:20px;width:60px;height:60px;font-size:22px}.widget-application--mobile.widget-application .widget-tab-button{margin-left:10px;font-size:17px;width:44px;height:44px}.widget-application--smallMobile.widget-application .widget-tab-button{width:36px;height:36px;font-size:14px}.widget-application .widget-tab-button--active{background-color:#fac62d}.widget-application .widget-tab{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:60px 30px}.widget-application--smallMobile.widget-application .widget-tab{padding:60px 20px}.widget-application .widget-tab-menu{position:absolute;z-index:3;left:15px;top:15px;max-height:100%;overflow-y:auto;padding-bottom:30px}.widget-application .widget-tab-menu__wallpapers{display:flex;flex-wrap:wrap;align-items:flex-start;margin-top:10px;width:100%}.widget-application .widget-tab-menu__wallpapers img{width:30px;height:30px;display:block;object-fit:cover;cursor:pointer;margin-right:10px;margin-block-end:10px}.widget-application .widget-tab-menu ul{list-style-type:none}.widget-application .widget-tab-menu ul li{color:#413e3e;background-color:#fac62d;padding:5px 15px;border-radius:10px;font-size:.7rem;border:none;cursor:pointer;margin-bottom:15px;width:200px;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none}.widget-application .widget-tab-menu ul li label{display:flex;cursor:inherit;width:100%}.widget-application .widget-tab-menu ul li input[type=color]{cursor:pointer;margin-left:auto;width:50px;height:20px;border:0;border-radius:5px}.widget-application .widget-tab-menu ul li input[type=color]::-webkit-color-swatch-wrapper{display:none !important}.widget-application .widget-tab-menu ul li input[type=file]{display:none}.widget-application .widget-tab-menu ul li:nth-child(1){position:relative}.widget-application .widget-tab-menu ul li:nth-child(1)::after{--bar-width: 2px;content:"";width:20px;height:15px;display:block;background:repeating-linear-gradient(180deg, #000000, #000000 var(--bar-width), rgba(0, 0, 0, 0) var(--bar-width), rgba(0, 0, 0, 0) calc(var(--bar-width) * 3));position:absolute;right:10px;top:50%;transform:translateY(-50%)}.widget-application .widget-instructions{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-position:center;background-repeat:no-repeat;background-size:cover}.widget-application .widget-instructions__content{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background-color:rgba(234,234,234,.85);border-radius:20px;overflow:hidden;width:400px;max-width:calc(100% - 60px);padding:36px 30px 30px 30px;backdrop-filter:blur(5px);-moz-backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.widget-application--mobile.widget-application .widget-instructions__content{width:280px;padding:26px 20px 20px 20px}.widget-application .widget-instructions__steps{display:flex;align-items:flex-start;justify-content:center}.widget-application .widget-instructions__step{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;margin:0 15px}.widget-application--tablet.widget-application .widget-instructions__step{margin:0 10px}.widget-application .widget-instructions__step img{display:block;width:52px;height:80px;object-fit:contain;object-position:center}.widget-application--mobile.widget-application .widget-instructions__step img{width:40px;height:60px}.widget-application--smallMobile.widget-application .widget-instructions__step img{width:35px}.widget-application .widget-instructions__step p{color:#413e3e;font-size:20px;font-weight:bold;text-align:center;margin-top:10px;max-width:130px}.widget-application--tablet.widget-application .widget-instructions__step p{font-size:18px;max-width:115px}.widget-application--mobile.widget-application .widget-instructions__step p{font-size:16px}.widget-application--smallMobile.widget-application .widget-instructions__step p{font-size:14px}.widget-application .widget-instructions button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;display:flex;align-items:center;justify-content:center;height:44px;padding:0 33px;border-radius:52px;background-color:#fac62d;color:#413e3e;font-size:24px;font-weight:bold;text-transform:uppercase;margin:25px auto 0 auto}.widget-application--tablet.widget-application .widget-instructions button{font-size:18px;height:40px}.widget-application--mobile.widget-application .widget-instructions button{font-size:16px;height:35px}.widget-application--smallMobile.widget-application .widget-instructions button{font-size:14px;height:26px;padding:0 25px}.widget-application .widget-tab__panorama{width:100%;height:100%;position:absolute;left:0;top:0;z-index:2}.widget-application .widget-tab__panorama-overlay{width:100%;height:100%;overflow:hidden;background:#fff !important}.widget-application .widget-tab__panorama-overlay *{display:none !important}.widget-application .widget-tab__panorama-overlay canvas{display:block !important}.widget-application .widget-tab__panorama-controls{position:absolute;z-index:2;left:50%;bottom:35px;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:38px;background-color:rgba(0,0,0,.2);transform:translateX(-50%);backdrop-filter:blur(5px);-moz-backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.widget-application--mobile.widget-application .widget-tab__panorama-controls{padding:5px}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls{bottom:30px}.widget-application .widget-tab__panorama-controls-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:55px;height:55px;border-radius:50%;background-color:#fff;display:flex;align-items:center;justify-content:center;margin-right:18px}.widget-application--tablet.widget-application .widget-tab__panorama-controls-button{width:44px;height:44px}.widget-application--mobile.widget-application .widget-tab__panorama-controls-button{margin-right:10px;width:33px;height:33px}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls-button{width:26px;height:26px}.widget-application .widget-tab__panorama-controls-button img{display:block}.widget-application--tablet.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.7)}.widget-application--mobile.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.52)}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.45)}.widget-application .widget-tab__panorama-controls-button:nth-last-child(1){margin-right:0}.widget-application .widget-tab__panorama-close-map{z-index:4}.widget-application .widget-tab__panorama-map{position:absolute;left:45px;bottom:35px;z-index:3;border-radius:10px;opacity:1;transition:opacity .5s;touch-action:none;-webkit-touch-action:none}.widget-application .widget-tab__panorama-map::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;transform:translate(-50%, -50%);width:calc(100% + 16px);height:calc(100% + 16px);border-radius:inherit;background-color:#fff}.widget-application--tablet.widget-application .widget-tab__panorama-map{left:20px;transform:scale(0.6);transform-origin:0% 100%}.widget-application--mobile.widget-application .widget-tab__panorama-map{transform:scale(0.4)}.widget-application--smallMobile.widget-application .widget-tab__panorama-map{bottom:30px;transform:scale(0.35)}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled{transform:scale(1.4) translate(-50%, 50%);left:50%;bottom:50%}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled::after{content:"";position:absolute;z-index:-2;left:50%;top:50%;transform:translate(-50%, -50%);width:100vw;height:100vh;background-color:rgba(196,196,196,.8)}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled svg polygon:active{opacity:.3 !important}.widget-application--mobile.widget-application .widget-tab__panorama-map--scaled{transform:scale(1) translate(-50%, 50%)}.widget-application .widget-tab__panorama-map--hidden{opacity:0;pointer-events:none}.widget-application .widget-tab__panorama-map img{width:200px;border-radius:none;display:block;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none;-webkit-backface-visibility:hidden;-ms-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.widget-application .widget-tab__panorama-map img:hover{box-shadow:1px 1px 10px rgba(0,0,0,.15)}.widget-application .widget-tab__panorama-map svg{position:absolute;left:0;top:0;width:200px;height:100%;z-index:3;display:block;border-radius:inherit}.widget-application .widget-tab__panorama-map svg polygon{opacity:0;fill:#fac62d;cursor:pointer}.widget-application .widget-tab__panorama-map svg polygon:hover{opacity:.3}.widget-application .widget-tab__panorama-map__fov{position:absolute;left:0;top:0;width:0px;height:0px;border-radius:50%;border-left:30px solid rgba(250,198,45,0);border-right:30px solid rgba(250,198,45,0);border-bottom:30px solid rgba(250,198,45,0);border-top:40px solid rgba(250,198,45,.4);transform:translate(-50%, -50%) rotate(0rad);transform-origin:50% 50%;z-index:4;pointer-events:none}.widget-application .widget-tab__panorama-map__fov::before{content:"";position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%, -50%) translateY(-5px);width:15px;height:15px;background-color:#fac62d;border-radius:50%;border:2px solid #fac62d;box-shadow:inset 0 0 0 2px #fff}.widget-application .widget-tab__rotation{width:100%;height:100%}.widget-application .widget-tab__rotation-start{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;position:absolute;left:50%;bottom:35px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;padding:0 25px 0 10px;background-color:#eaeaea;border-radius:38px;height:72px;width:202px}.widget-application--tablet.widget-application .widget-tab__rotation-start{height:60px;width:166px;padding:0 20px 0 8px;bottom:35px}.widget-application--mobile.widget-application .widget-tab__rotation-start{height:44px;width:115px;padding:0 10px 0 6px}.widget-application--smallMobile.widget-application .widget-tab__rotation-start{height:36px;width:85px;padding:0 8px 0 6px;bottom:30px}.widget-application .widget-tab__rotation-start-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:#fff;margin-right:18px;padding:10px}.widget-application--tablet.widget-application .widget-tab__rotation-start-icon{padding:7px;margin-right:15px}.widget-application--mobile.widget-application .widget-tab__rotation-start-icon{margin-right:7px}.widget-application--smallMobile.widget-application .widget-tab__rotation-start-icon{padding:6px;margin-right:5px}.widget-application .widget-tab__rotation-start-icon img{display:block;position:relative;top:2px;width:34px}.widget-application--tablet.widget-application .widget-tab__rotation-start-icon img{width:30px;top:1px}.widget-application--mobile.widget-application .widget-tab__rotation-start-icon img{width:19px;top:0}.widget-application--smallMobile.widget-application .widget-tab__rotation-start-icon img{width:15px}.widget-application .widget-tab__rotation-start span{font-size:24px;font-weight:bold;color:#413e3e;text-transform:uppercase;width:100%;display:block;text-align:center;position:relative;top:1px}.widget-application--tablet.widget-application .widget-tab__rotation-start span{font-size:20px}.widget-application--mobile.widget-application .widget-tab__rotation-start span{font-size:14px}.widget-application--smallMobile.widget-application .widget-tab__rotation-start span{font-size:10px;top:0}.widget-application .widget-tab__threesixty,.widget-application .widget-tab__isometry{width:100%;height:100%;touch-action:none;-webkit-touch-action:none}.widget-application .widget-tab__threesixty-container,.widget-application .widget-tab__isometry-container{width:100% !important;height:100% !important;position:relative;background-image:none !important}.widget-application .widget-tab__threesixty-container img,.widget-application .widget-tab__isometry-container img{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);max-width:100%;max-height:100%;width:600px;height:600px;object-fit:contain;opacity:0;pointer-events:none;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none}.widget-application .widget-tab__threesixty-container img.active,.widget-application .widget-tab__isometry-container img.active{opacity:1}.widget-application .widget-tab__threesixty--active{cursor:move}.widget-application .widget-tab__isometry-arrows{position:absolute;z-index:3;left:50%;bottom:35px;transform:translateX(-50%);height:72px;display:flex;align-items:center;justify-content:center}.widget-application--tablet.widget-application .widget-tab__isometry-arrows{bottom:35px;height:60px}.widget-application--mobile.widget-application .widget-tab__isometry-arrows{height:44px}.widget-application--smallMobile.widget-application .widget-tab__isometry-arrows{bottom:30px;height:36px}.widget-application .widget-tab__isometry-arrows span{font-size:28px;font-weight:bold;display:block;margin:0 9px}.widget-application--tablet.widget-application .widget-tab__isometry-arrows span{font-size:22px}.widget-application--mobile.widget-application .widget-tab__isometry-arrows span{font-size:17px;margin:0 3px}.widget-application--smallMobile.widget-application .widget-tab__isometry-arrows span{font-size:14px;margin:0}.widget-application .widget-tab__isometry-arrow{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.widget-application .widget-tab__isometry-arrow img{width:32px}.widget-application--tablet.widget-application .widget-tab__isometry-arrow img{width:24px}.widget-application--mobile.widget-application .widget-tab__isometry-arrow img{width:18px}.widget-application--smallMobile.widget-application .widget-tab__isometry-arrow img{width:14px}.widget-application .widget-tab__isometry-buttons{position:absolute;z-index:3;left:44px;bottom:35px;display:flex;align-items:center;justify-content:flex-end}.widget-application--tablet.widget-application .widget-tab__isometry-buttons{left:20px;bottom:35px}.widget-application--smallMobile.widget-application .widget-tab__isometry-buttons{bottom:30px}.widget-application .widget-tab__isometry-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#eaeaea;margin-top:40px}.widget-application--tablet.widget-application .widget-tab__isometry-button{margin-top:20px;width:60px;height:60px}.widget-application--mobile.widget-application .widget-tab__isometry-button{margin-top:10px;width:44px;height:44px}.widget-application--smallMobile.widget-application .widget-tab__isometry-button{width:36px;height:36px}.widget-application .widget-tab__isometry-button img{display:block;width:50px}.widget-application--tablet.widget-application .widget-tab__isometry-button img{width:40px}.widget-application--mobile.widget-application .widget-tab__isometry-button img{width:30px}.widget-application--smallMobile.widget-application .widget-tab__isometry-button img{width:25px}.widget-application .widget-loader{display:block;position:relative;width:80px;height:80px}.widget-application .widget-loader--absolute{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.widget-application .widget-loader--sm{transform:translate(-50%, -50%) scale(0.75)}.widget-application .widget-loader div{position:absolute;top:33px;width:13px;height:13px;border-radius:50%;background:#fac62d;animation-timing-function:cubic-bezier(0, 1, 1, 0)}.widget-application .widget-loader div:nth-child(1){left:8px;animation:widget-loader-1 .6s infinite}.widget-application .widget-loader div:nth-child(2){left:8px;animation:widget-loader-2 .6s infinite}.widget-application .widget-loader div:nth-child(3){left:32px;animation:widget-loader-2 .6s infinite}.widget-application .widget-loader div:nth-child(4){left:56px;animation:widget-loader-3 .6s infinite}@keyframes widget-loader-1{0%{transform:scale(0)}100%{transform:scale(1)}}@keyframes widget-loader-3{0%{transform:scale(1)}100%{transform:scale(0)}}@keyframes widget-loader-2{0%{transform:translate(0, 0)}100%{transform:translate(24px, 0)}}.widget-application .widget-tab__model{width:100%;height:100%;position:absolute;left:0;top:0;z-index:2}.widget-application .widget-tab__model-scene{width:100%;height:100%;display:block}.widget-application .widget-tab__model-joystick{position:absolute;left:100px;bottom:100px;opacity:0;pointer-events:none}.widget-application--mobile.widget-application .widget-tab__model-joystick{left:50%;transform:translateX(-50%)}.widget-application .widget-tab__model-joystick--active{opacity:1;pointer-events:unset}/*# sourceMappingURL=app.css.map */
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../../src/assets/sass/index.sass","../../../src/assets/sass/vars.sass","../../../src/assets/sass/mixin.sass","../../../src/assets/sass/components/tabs.sass","../../../src/assets/sass/components/instructions.sass","../../../src/assets/sass/components/panorama.sass","../../../src/assets/sass/components/rotation.sass","../../../src/assets/sass/components/loader.sass","../../../src/assets/sass/components/model.sass"],"names":[],"mappings":"AAGA,oBACE,WACA,YACA,UACA,gBACA,kBACA,UACA,iBCLM,KDMN,eAEA,+EACE,mCACA,kCACA,qCACA,qBACA,gBACA,MCRQ,QDSR,aACA,UACA,SACA,sBACA,8BAEF,iCACE,kBACA,UACA,SACA,UEhBO,4DFkBL,UACA,SEnBK,iEFqBL,SACF,qCACE,cACA,WACA,YACA,mBACA,uBE3BK,gEF6BH,WACA,YE9BG,gEFgCH,WACA,YEjCG,qEFmCH,WACA,YAEN,oDElCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,+EAYP,WACA,SAbO,+EAeP,YACA,WAhBO,oFAkBP,SACF,wDACE,cACA,WACA,YACA,mBACA,uBAxBO,mFA0BL,WACA,YA3BK,mFA6BL,WACA,YA9BK,wFAgCL,WACA,YFOJ,6CEpCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,wEAYP,WACA,SAbO,wEAeP,YACA,WAhBO,6EAkBP,SACF,iDACE,cACA,WACA,YACA,mBACA,uBAxBO,4EA0BL,WACA,YA3BK,4EA6BL,WACA,YA9BK,iFAgCL,WACA,YFSJ,4CEtCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,uEAYP,WACA,SAbO,uEAeP,YACA,WAhBO,4EAkBP,SACF,gDACE,cACA,WACA,YACA,mBACA,uBAxBO,2EA0BL,WACA,YA3BK,2EA6BL,WACA,YA9BK,gFAgCL,WACA,YC3CJ,wCACE,kBACA,UACA,WACA,YACA,aACA,mBACA,yBDGO,mECDL,WACA,oFAEA,YACJ,uCDhBA,YACA,YACA,gBACA,yBACA,eCcE,WACA,YACA,kBACA,aACA,mBACA,uBACA,iBFlBG,QEmBH,MFfQ,QEgBR,eACA,iBACA,iBACA,iBDhBO,kECkBL,iBACA,WACA,YACA,eDrBK,kECuBL,iBACA,eACA,WACA,YD1BK,uEC4BL,WACA,YACA,eACF,+CACE,iBFrCM,QEuCV,gCACE,WACA,YACA,aACA,mBACA,uBACA,kBDxCO,gEC0CL,kBACF,qCACE,kBACA,UACA,UACA,SACA,gBACA,gBACA,oBACA,iDACE,aACA,eACA,uBACA,gBACA,WACA,qDACE,WACA,YACA,cACA,iBACA,eACA,kBACA,sBACJ,wCACE,qBACA,2CACE,MFvEE,QEwEF,iBF1EE,QE2EF,iBACA,mBACA,gBACA,YACA,eACA,mBACA,YF5ER,iBACA,yBACA,eACA,uBE2EQ,iDACE,aACA,eACA,WAEA,6DACE,eACA,iBACA,WACA,YACA,SACA,kBACA,2FACE,wBACJ,4DACE,aACJ,wDACE,kBACA,+DACE,iBACA,WACA,WACA,YACA,cACA,gKACA,kBACA,WACA,QACA,2BCpHZ,yCACE,kBACA,UACA,OACA,MACA,WACA,YACA,aACA,mBACA,uBACA,2BACA,4BACA,sBAEA,kDACE,aACA,sBACA,mBACA,2BACA,uCACA,mBACA,gBACA,YACA,4BACA,4BFpBJ,0BACA,+BACA,kCAIS,6EEiBH,YACA,4BACJ,gDACE,aACA,uBACA,uBACF,+CACE,aACA,sBACA,mBACA,2BACA,cF5BK,0EE8BH,cACF,mDACE,cACA,WACA,YACA,mBACA,uBFpCG,8EEsCD,WACA,YFvCC,mFEyCD,WACJ,iDACE,MH9CI,QG+CJ,eACA,iBACA,kBACA,gBACA,gBFhDG,4EEkDD,eACA,gBFnDC,4EEqDD,eFrDC,iFEuDD,eACN,gDFrEF,YACA,YACA,gBACA,yBACA,eEmEI,aACA,mBACA,uBACA,YACA,eACA,mBACA,iBHrEM,QGsEN,MHpEM,QGqEN,eACA,iBACA,yBACA,wBFrEK,2EEuEH,eACA,YFxEG,2EE0EH,eACA,YF3EG,gFE6EH,eACA,YACA,eCxFJ,0CACE,WACA,YACA,kBACA,OACA,MACA,UACA,kDACE,WACA,YACA,gBACA,2BACA,oDACE,wBACF,yDACE,yBACJ,mDACE,kBACA,UACA,SACA,YACA,aACA,mBACA,uBACA,YACA,mBACA,gCACA,2BHxBN,0BACA,+BACA,kCAIS,8EGqBD,YHrBC,mFGuBD,YACF,0DHrCN,YACA,YACA,gBACA,yBACA,eGmCQ,WACA,YACA,kBACA,iBJtCF,KIuCE,aACA,mBACA,uBACA,kBHjCC,qFGmCC,WACA,YHpCD,qFGsCC,kBACA,WACA,YHxCD,0FG0CC,WACA,YACF,8DACE,cH7CD,yFG+CG,qBH/CH,yFGiDG,sBHjDH,8FGmDG,sBACJ,4EACE,eACN,oDACE,UACF,8CACE,kBACA,UACA,YACA,UACA,mBACA,UACA,uBJzDN,kBACA,0BI0DM,sDACE,WACA,kBACA,WACA,SACA,QACA,gCACA,wBACA,yBACA,sBACA,iBJpFF,KCSG,yEG6ED,UACA,qBACA,yBH/EC,yEGiFD,qBHjFC,8EGmFD,YACA,sBHpFC,iFGuFC,0CACA,SACA,WACA,wFACE,WACA,kBACA,WACA,SACA,QACA,gCACA,YACA,aACA,sCAGE,oGACE,sBHvGP,iFGyGC,wCACJ,sDACE,UACA,oBACF,kDACE,YACA,mBACA,cJhHR,iBACA,yBACA,eACA,uBAOA,mCACA,4BACA,gCACA,wBIsGQ,wDACE,wCACJ,kDACE,kBACA,OACA,MACA,YACA,YACA,UACA,cACA,sBACA,0DACE,UACA,KJrIA,QIsIA,eACA,gEACE,WACN,mDACE,kBACA,OACA,MACA,UACA,WACA,kBACA,0CACA,2CACA,4CACA,0CACA,6CACA,yBACA,UACA,oBACA,2DACE,WACA,kBACA,UACA,SACA,QACA,iDACA,WACA,YACA,iBJjKA,QIkKA,kBACA,yBACA,gCCxKR,
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../../src/assets/sass/index.sass","../../../src/assets/sass/vars.sass","../../../src/assets/sass/mixin.sass","../../../src/assets/sass/components/tabs.sass","../../../src/assets/sass/components/instructions.sass","../../../src/assets/sass/components/panorama.sass","../../../src/assets/sass/components/rotation.sass","../../../src/assets/sass/components/loader.sass","../../../src/assets/sass/components/model.sass"],"names":[],"mappings":"AAGA,oBACE,WACA,YACA,UACA,gBACA,kBACA,UACA,iBCLM,KDMN,eAEA,+EACE,mCACA,kCACA,qCACA,qBACA,gBACA,MCRQ,QDSR,aACA,UACA,SACA,sBACA,8BAEF,iCACE,kBACA,UACA,SACA,UEhBO,4DFkBL,UACA,SEnBK,iEFqBL,SACF,qCACE,cACA,WACA,YACA,mBACA,uBE3BK,gEF6BH,WACA,YE9BG,gEFgCH,WACA,YEjCG,qEFmCH,WACA,YAEN,oDElCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,+EAYP,WACA,SAbO,+EAeP,YACA,WAhBO,oFAkBP,SACF,wDACE,cACA,WACA,YACA,mBACA,uBAxBO,mFA0BL,WACA,YA3BK,mFA6BL,WACA,YA9BK,wFAgCL,WACA,YFOJ,6CEpCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,wEAYP,WACA,SAbO,wEAeP,YACA,WAhBO,6EAkBP,SACF,iDACE,cACA,WACA,YACA,mBACA,uBAxBO,4EA0BL,WACA,YA3BK,4EA6BL,WACA,YA9BK,iFAgCL,WACA,YFSJ,4CEtCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,uEAYP,WACA,SAbO,uEAeP,YACA,WAhBO,4EAkBP,SACF,gDACE,cACA,WACA,YACA,mBACA,uBAxBO,2EA0BL,WACA,YA3BK,2EA6BL,WACA,YA9BK,gFAgCL,WACA,YC3CJ,wCACE,kBACA,UACA,WACA,YACA,aACA,mBACA,yBDGO,mECDL,WACA,oFAEA,YACJ,uCDhBA,YACA,YACA,gBACA,yBACA,eCcE,WACA,YACA,kBACA,aACA,mBACA,uBACA,iBFlBG,QEmBH,MFfQ,QEgBR,eACA,iBACA,iBACA,iBDhBO,kECkBL,iBACA,WACA,YACA,eDrBK,kECuBL,iBACA,eACA,WACA,YD1BK,uEC4BL,WACA,YACA,eACF,+CACE,iBFrCM,QEuCV,gCACE,WACA,YACA,aACA,mBACA,uBACA,kBDxCO,gEC0CL,kBACF,qCACE,kBACA,UACA,UACA,SACA,gBACA,gBACA,oBACA,iDACE,aACA,eACA,uBACA,gBACA,WACA,qDACE,WACA,YACA,cACA,iBACA,eACA,kBACA,sBACJ,wCACE,qBACA,2CACE,MFvEE,QEwEF,iBF1EE,QE2EF,iBACA,mBACA,gBACA,YACA,eACA,mBACA,YF5ER,iBACA,yBACA,eACA,uBE2EQ,iDACE,aACA,eACA,WAEA,6DACE,eACA,iBACA,WACA,YACA,SACA,kBACA,2FACE,wBACJ,4DACE,aACJ,wDACE,kBACA,+DACE,iBACA,WACA,WACA,YACA,cACA,gKACA,kBACA,WACA,QACA,2BCpHZ,yCACE,kBACA,UACA,OACA,MACA,WACA,YACA,aACA,mBACA,uBACA,2BACA,4BACA,sBAEA,kDACE,aACA,sBACA,mBACA,2BACA,uCACA,mBACA,gBACA,YACA,4BACA,4BFpBJ,0BACA,+BACA,kCAIS,6EEiBH,YACA,4BACJ,gDACE,aACA,uBACA,uBACF,+CACE,aACA,sBACA,mBACA,2BACA,cF5BK,0EE8BH,cACF,mDACE,cACA,WACA,YACA,mBACA,uBFpCG,8EEsCD,WACA,YFvCC,mFEyCD,WACJ,iDACE,MH9CI,QG+CJ,eACA,iBACA,kBACA,gBACA,gBFhDG,4EEkDD,eACA,gBFnDC,4EEqDD,eFrDC,iFEuDD,eACN,gDFrEF,YACA,YACA,gBACA,yBACA,eEmEI,aACA,mBACA,uBACA,YACA,eACA,mBACA,iBHrEM,QGsEN,MHpEM,QGqEN,eACA,iBACA,yBACA,wBFrEK,2EEuEH,eACA,YFxEG,2EE0EH,eACA,YF3EG,gFE6EH,eACA,YACA,eCxFJ,0CACE,WACA,YACA,kBACA,OACA,MACA,UACA,kDACE,WACA,YACA,gBACA,2BACA,oDACE,wBACF,yDACE,yBACJ,mDACE,kBACA,UACA,SACA,YACA,aACA,mBACA,uBACA,YACA,mBACA,gCACA,2BHxBN,0BACA,+BACA,kCAIS,8EGqBD,YHrBC,mFGuBD,YACF,0DHrCN,YACA,YACA,gBACA,yBACA,eGmCQ,WACA,YACA,kBACA,iBJtCF,KIuCE,aACA,mBACA,uBACA,kBHjCC,qFGmCC,WACA,YHpCD,qFGsCC,kBACA,WACA,YHxCD,0FG0CC,WACA,YACF,8DACE,cH7CD,yFG+CG,qBH/CH,yFGiDG,sBHjDH,8FGmDG,sBACJ,4EACE,eACN,oDACE,UACF,8CACE,kBACA,UACA,YACA,UACA,mBACA,UACA,uBJzDN,kBACA,0BI0DM,sDACE,WACA,kBACA,WACA,SACA,QACA,gCACA,wBACA,yBACA,sBACA,iBJpFF,KCSG,yEG6ED,UACA,qBACA,yBH/EC,yEGiFD,qBHjFC,8EGmFD,YACA,sBHpFC,iFGuFC,0CACA,SACA,WACA,wFACE,WACA,kBACA,WACA,SACA,QACA,gCACA,YACA,aACA,sCAGE,oGACE,sBHvGP,iFGyGC,wCACJ,sDACE,UACA,oBACF,kDACE,YACA,mBACA,cJhHR,iBACA,yBACA,eACA,uBAOA,mCACA,4BACA,gCACA,wBIsGQ,wDACE,wCACJ,kDACE,kBACA,OACA,MACA,YACA,YACA,UACA,cACA,sBACA,0DACE,UACA,KJrIA,QIsIA,eACA,gEACE,WACN,mDACE,kBACA,OACA,MACA,UACA,WACA,kBACA,0CACA,2CACA,4CACA,0CACA,6CACA,yBACA,UACA,oBACA,2DACE,WACA,kBACA,UACA,SACA,QACA,iDACA,WACA,YACA,iBJjKA,QIkKA,kBACA,yBACA,gCCxKR,0CACE,WACA,YACA,gDJPJ,YACA,YACA,gBACA,yBACA,eIKM,kBACA,SACA,YACA,2BACA,aACA,mBACA,uBACA,sBACA,iBLXD,QKYC,mBACA,YACA,YJPG,2EISD,YACA,YACA,qBACA,YJZC,2EIcD,YACA,YACA,qBJhBC,gFIkBD,YACA,WACA,oBACA,YACF,qDACE,aACA,mBACA,uBACA,kBACA,iBLpCF,KKqCE,kBACA,aJ7BC,gFI+BC,YACA,kBJhCD,gFIkCC,iBJlCD,qFIoCC,YACA,iBACF,yDACE,cACA,kBACA,QACA,WJ1CD,oFI4CG,WACA,QJ7CH,oFI+CG,WACA,MJhDH,yFIkDG,WACN,qDACE,eACA,iBACA,MLzDE,QK0DF,yBACA,WACA,cACA,kBACA,kBACA,QJ5DC,gFI8DC,eJ9DD,gFIgEC,eJhED,qFIkEC,eACA,MAER,sFAEE,WACA,YLlEJ,kBACA,0BKmEI,0GACE,sBACA,uBACA,kBACA,iCACA,kHACE,kBACA,SACA,QACA,gCACA,eACA,gBACA,YACA,aACA,mBACA,UACA,oBL1FR,iBACA,yBACA,eACA,uBKyFQ,gIACE,UAGN,oDACE,YAGF,iDACE,kBACA,UACA,SACA,YACA,2BACA,YACA,aACA,mBACA,uBJ7GG,4EI+GD,YACA,YJhHC,4EIkHD,YJlHC,iFIoHD,YACA,YACF,sDACE,eACA,iBACA,cACA,aJ1HC,iFI4HC,eJ5HD,iFI8HC,eACA,aJ/HD,sFIiIC,eACA,SACN,gDJhJJ,YACA,YACA,gBACA,yBACA,eI8IM,aACA,mBACA,uBACA,YACA,oDACE,WJ1IC,+EI4IC,WJ5ID,+EI8IC,WJ9ID,oFIgJC,WACN,kDACE,kBACA,UACA,UACA,YACA,aACA,mBACA,yBJxJG,6EI0JD,UACA,YJ3JC,kFI6JD,YACJ,iDJ3KJ,YACA,YACA,gBACA,yBACA,eIyKM,WACA,YACA,kBACA,aACA,mBACA,uBACA,iBL7KD,QK8KC,gBJvKG,4EIyKD,gBACA,WACA,YJ3KC,4EI6KD,gBACA,WACA,YJ/KC,iFIiLD,WACA,YACF,qDACE,cACA,WJrLC,gFIuLC,WJvLD,gFIyLC,WJzLD,qFI2LC,WCtMV,mCACE,cACA,kBACA,WACA,YACA,6CACE,kBACA,SACA,QACA,gCACF,uCACE,4CACF,uCACE,kBACA,SACA,WACA,YACA,kBACA,WNZM,QMaN,mDACA,oDACE,SACA,uCACF,oDACE,SACA,uCACF,oDACE,UACA,uCACF,oDACE,UACA,uCAER,2BACE,GACE,mBACF,KACE,oBAEJ,2BACE,GACE,mBACF,KACE,oBAEJ,2BACE,GACE,0BAEF,KACE,8BCjDA,uCACE,WACA,YACA,kBACA,OACA,MACA,UACA,6CACE,WACA,YACA,cACF,gDACE,kBACA,WACA,aACA,UACA,oBNNG,2EMQD,SACA,2BACF,wDACE,UACA","file":"app.css"}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<path d="M27 16H5" stroke="#413E3E" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
3
|
+
<path d="M14 7L5 16L14 25" stroke="#413E3E" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
4
|
+
</svg>
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<path d="M5 16H27" stroke="#413E3E" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
3
|
+
<path d="M18 7L27 16L18 25" stroke="#413E3E" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
4
|
+
</svg>
|
@@ -0,0 +1,5 @@
|
|
1
|
+
<svg width="50" height="49" viewBox="0 0 50 49" fill="none" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<path d="M38.9972 38.8994H11.0036C10.7827 38.8994 10.6036 38.7203 10.6036 38.4994L10.6035 10.9989C10.6035 10.778 10.7826 10.5989 11.0035 10.5989H38.9972C39.2181 10.5989 39.3972 10.778 39.3972 10.9989V38.4994C39.3972 38.7203 39.2181 38.8994 38.9972 38.8994Z" stroke="#413E3E" stroke-width="3.15271"/>
|
3
|
+
<path d="M12.1699 19.1946H24.1341C24.3551 19.1946 24.5341 19.3737 24.5341 19.5946V37.3214" stroke="#413E3E" stroke-width="2"/>
|
4
|
+
<path d="M37.8206 20.5945H30.984C30.7631 20.5945 30.584 20.4154 30.584 20.1945V12.1687" stroke="#413E3E" stroke-width="2"/>
|
5
|
+
</svg>
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<path d="M7.16992 35.8557L24.837 43.177L41.8497 35.8557" stroke="#413E3E" stroke-width="3.15271" stroke-linecap="round" stroke-linejoin="round"/>
|
3
|
+
<path d="M26.3301 43.1946L8.83008 35.6946L25.8301 28.1946L42.8301 35.6946L26.3301 43.1946Z" fill="#C4C4C4"/>
|
4
|
+
<path d="M7.16992 35.8196V13.8557L24.837 6.53442L41.8497 13.8557V35.8196" stroke="#413E3E" stroke-width="3.15271" stroke-linecap="round" stroke-linejoin="round"/>
|
5
|
+
<path d="M24.8359 6.69458V28.1585" stroke="#413E3E" stroke-width="3.15271" stroke-linecap="round" stroke-linejoin="round"/>
|
6
|
+
<path d="M7.16992 36.5159L24.837 29.1946L41.8497 36.5159L24.837 43.8372L7.16992 36.5159Z" stroke="#413E3E" stroke-width="3.15271" stroke-linecap="round" stroke-linejoin="round"/>
|
7
|
+
</svg>
|
@@ -0,0 +1,5 @@
|
|
1
|
+
<svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<path d="M25.5147 39L7.5 31.5L16.25 27.75L20.625 25.875L25 27.75L29.375 25.875L33.75 27.75L42.5 31.5L25.5147 39Z" fill="#C4C4C4"/>
|
3
|
+
<path d="M30.1509 25.125L34.934 27.25L44.5 31.5L25.3679 40L5.5 31.5L15.434 27.25L20.4009 25.125" stroke="#413E3E" stroke-width="3.15271" stroke-linecap="round" stroke-linejoin="round"/>
|
4
|
+
<path d="M5.5 18.5L25.3679 10L44.5 18.5L25.3679 27L5.5 18.5Z" stroke="#413E3E" stroke-width="3.15271" stroke-linecap="round" stroke-linejoin="round"/>
|
5
|
+
</svg>
|
@@ -3,10 +3,9 @@
|
|
3
3
|
|
4
4
|
.widget-application
|
5
5
|
.widget-tab
|
6
|
-
&
|
6
|
+
&__rotation
|
7
7
|
width: 100%
|
8
8
|
height: 100%
|
9
|
-
@include noTouch
|
10
9
|
&-start
|
11
10
|
@include customButton
|
12
11
|
position: absolute
|
@@ -81,6 +80,12 @@
|
|
81
80
|
@include media($smallMobile)
|
82
81
|
font-size: 10px
|
83
82
|
top: 0
|
83
|
+
|
84
|
+
&__threesixty,
|
85
|
+
&__isometry
|
86
|
+
width: 100%
|
87
|
+
height: 100%
|
88
|
+
@include noTouch
|
84
89
|
&-container
|
85
90
|
width: 100% !important
|
86
91
|
height: 100% !important
|
@@ -101,6 +106,97 @@
|
|
101
106
|
@include noSelect
|
102
107
|
&.active
|
103
108
|
opacity: 1
|
109
|
+
|
110
|
+
&__threesixty
|
104
111
|
&--active
|
105
|
-
|
106
|
-
|
112
|
+
cursor: move
|
113
|
+
|
114
|
+
&__isometry
|
115
|
+
&-arrows
|
116
|
+
position: absolute
|
117
|
+
z-index: 3
|
118
|
+
left: 50%
|
119
|
+
bottom: 35px
|
120
|
+
transform: translateX(-50%)
|
121
|
+
height: 72px
|
122
|
+
display: flex
|
123
|
+
align-items: center
|
124
|
+
justify-content: center
|
125
|
+
@include media($tablet)
|
126
|
+
bottom: 35px
|
127
|
+
height: 60px
|
128
|
+
@include media($mobile)
|
129
|
+
height: 44px
|
130
|
+
@include media($smallMobile)
|
131
|
+
bottom: 30px
|
132
|
+
height: 36px
|
133
|
+
span
|
134
|
+
font-size: 28px
|
135
|
+
font-weight: bold
|
136
|
+
display: block
|
137
|
+
margin: 0 9px
|
138
|
+
@include media($tablet)
|
139
|
+
font-size: 22px
|
140
|
+
@include media($mobile)
|
141
|
+
font-size: 17px
|
142
|
+
margin: 0 3px
|
143
|
+
@include media($smallMobile)
|
144
|
+
font-size: 14px
|
145
|
+
margin: 0
|
146
|
+
&-arrow
|
147
|
+
@include customButton
|
148
|
+
display: flex
|
149
|
+
align-items: center
|
150
|
+
justify-content: center
|
151
|
+
padding: 5px
|
152
|
+
img
|
153
|
+
width: 32px
|
154
|
+
@include media($tablet)
|
155
|
+
width: 24px
|
156
|
+
@include media($mobile)
|
157
|
+
width: 18px
|
158
|
+
@include media($smallMobile)
|
159
|
+
width: 14px
|
160
|
+
&-buttons
|
161
|
+
position: absolute
|
162
|
+
z-index: 3
|
163
|
+
left: 44px
|
164
|
+
bottom: 35px
|
165
|
+
display: flex
|
166
|
+
align-items: center
|
167
|
+
justify-content: flex-end
|
168
|
+
@include media($tablet)
|
169
|
+
left: 20px
|
170
|
+
bottom: 35px
|
171
|
+
@include media($smallMobile)
|
172
|
+
bottom: 30px
|
173
|
+
&-button
|
174
|
+
@include customButton
|
175
|
+
width: 72px
|
176
|
+
height: 72px
|
177
|
+
border-radius: 50%
|
178
|
+
display: flex
|
179
|
+
align-items: center
|
180
|
+
justify-content: center
|
181
|
+
background-color: $gray
|
182
|
+
margin-top: 40px
|
183
|
+
@include media($tablet)
|
184
|
+
margin-top: 20px
|
185
|
+
width: 60px
|
186
|
+
height: 60px
|
187
|
+
@include media($mobile)
|
188
|
+
margin-top: 10px
|
189
|
+
width: 44px
|
190
|
+
height: 44px
|
191
|
+
@include media($smallMobile)
|
192
|
+
width: 36px
|
193
|
+
height: 36px
|
194
|
+
img
|
195
|
+
display: block
|
196
|
+
width: 50px
|
197
|
+
@include media($tablet)
|
198
|
+
width: 40px
|
199
|
+
@include media($mobile)
|
200
|
+
width: 30px
|
201
|
+
@include media($smallMobile)
|
202
|
+
width: 25px
|
@@ -59,18 +59,21 @@ var Application = (0, _mobxReactLite.observer)(function () {
|
|
59
59
|
|
60
60
|
var tabsList = {
|
61
61
|
'rotation': /*#__PURE__*/_react.default.createElement(_RotationTab.default, {
|
62
|
+
disabled: !config.rotationImages[0],
|
63
|
+
topViewImage: config.topViewImage,
|
62
64
|
images: config.rotationImages,
|
63
|
-
|
65
|
+
planImage: config.planImage,
|
66
|
+
mode: config.rotationMode
|
64
67
|
}),
|
65
68
|
'panorama': /*#__PURE__*/_react.default.createElement(_PanoramaTab.default, {
|
66
|
-
|
67
|
-
planImage: config.planImage,
|
69
|
+
disabled: !config.panoramaImages.length,
|
68
70
|
images: config.panoramaImages,
|
69
|
-
|
71
|
+
planImage: config.planImage,
|
72
|
+
json: config.json
|
70
73
|
}),
|
71
74
|
'model': /*#__PURE__*/_react.default.createElement(_ModelTab.default, {
|
72
|
-
|
73
|
-
|
75
|
+
disabled: !config.json,
|
76
|
+
json: config.json
|
74
77
|
})
|
75
78
|
};
|
76
79
|
var tabButtons = [{
|
@@ -0,0 +1,124 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
9
|
+
|
10
|
+
var _surface = _interopRequireDefault(require("../../assets/icons/surface.svg"));
|
11
|
+
|
12
|
+
var _render = _interopRequireDefault(require("../../assets/icons/render.svg"));
|
13
|
+
|
14
|
+
var _plan = _interopRequireDefault(require("../../assets/icons/plan.svg"));
|
15
|
+
|
16
|
+
var _arrowRight = _interopRequireDefault(require("../../assets/icons/arrow-right.svg"));
|
17
|
+
|
18
|
+
var _arrowLeft = _interopRequireDefault(require("../../assets/icons/arrow-left.svg"));
|
19
|
+
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
21
|
+
|
22
|
+
var DefaultView = function DefaultView(_ref) {
|
23
|
+
var topViewImage = _ref.topViewImage,
|
24
|
+
activeIndex = _ref.activeIndex,
|
25
|
+
currentStep = _ref.currentStep,
|
26
|
+
planImage = _ref.planImage,
|
27
|
+
images = _ref.images,
|
28
|
+
steps = _ref.steps,
|
29
|
+
setCurrentStep = _ref.setCurrentStep,
|
30
|
+
setActiveIndex = _ref.setActiveIndex;
|
31
|
+
|
32
|
+
var getCurrentButtonIcon = function getCurrentButtonIcon() {
|
33
|
+
switch (getNextStep()) {
|
34
|
+
case 'carousel':
|
35
|
+
return _render.default;
|
36
|
+
|
37
|
+
case 'plan':
|
38
|
+
return _surface.default;
|
39
|
+
|
40
|
+
case 'topView':
|
41
|
+
return _plan.default;
|
42
|
+
|
43
|
+
default:
|
44
|
+
return _plan.default;
|
45
|
+
}
|
46
|
+
};
|
47
|
+
|
48
|
+
var getNextStep = function getNextStep() {
|
49
|
+
var currentStepIndex = steps.findIndex(function (step) {
|
50
|
+
return step === currentStep;
|
51
|
+
});
|
52
|
+
return steps[currentStepIndex + 1] || steps[0];
|
53
|
+
};
|
54
|
+
|
55
|
+
var onNextArrowClick = function onNextArrowClick() {
|
56
|
+
var index = activeIndex + 1;
|
57
|
+
|
58
|
+
if (!images[index]) {
|
59
|
+
setActiveIndex(0);
|
60
|
+
return;
|
61
|
+
}
|
62
|
+
|
63
|
+
setActiveIndex(index);
|
64
|
+
};
|
65
|
+
|
66
|
+
var onPrevArrowClick = function onPrevArrowClick() {
|
67
|
+
var index = activeIndex - 1;
|
68
|
+
|
69
|
+
if (!images[index]) {
|
70
|
+
setActiveIndex(images.length - 1);
|
71
|
+
return;
|
72
|
+
}
|
73
|
+
|
74
|
+
setActiveIndex(index);
|
75
|
+
};
|
76
|
+
|
77
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
78
|
+
className: "widget-tab__isometry"
|
79
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
80
|
+
className: "widget-tab__isometry-container"
|
81
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
82
|
+
className: "widget-tab__isometry--plan ".concat(currentStep === 'plan' ? 'active' : ''),
|
83
|
+
src: planImage,
|
84
|
+
alt: "plan-view"
|
85
|
+
}), /*#__PURE__*/_react.default.createElement("img", {
|
86
|
+
className: "widget-tab__isometry--top-view ".concat(currentStep === 'topView' ? 'active' : ''),
|
87
|
+
src: topViewImage,
|
88
|
+
alt: "top-view"
|
89
|
+
}), images.map(function (img, index) {
|
90
|
+
return /*#__PURE__*/_react.default.createElement("img", {
|
91
|
+
className: currentStep === 'carousel' && activeIndex === index ? 'active' : '',
|
92
|
+
alt: "rotation-view-".concat(index),
|
93
|
+
key: index,
|
94
|
+
src: img
|
95
|
+
});
|
96
|
+
}))), currentStep === 'carousel' && /*#__PURE__*/_react.default.createElement("div", {
|
97
|
+
className: "widget-tab__isometry-arrows"
|
98
|
+
}, /*#__PURE__*/_react.default.createElement("button", {
|
99
|
+
className: "widget-tab__isometry-arrow widget-tab__isometry-arrow--prev",
|
100
|
+
onClick: onPrevArrowClick
|
101
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
102
|
+
src: _arrowLeft.default,
|
103
|
+
alt: "arrow-left"
|
104
|
+
})), /*#__PURE__*/_react.default.createElement("span", null, activeIndex + 1, "/", images.length), /*#__PURE__*/_react.default.createElement("button", {
|
105
|
+
className: "widget-tab__isometry-arrow widget-tab__isometry-arrow--next",
|
106
|
+
onClick: onNextArrowClick
|
107
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
108
|
+
src: _arrowRight.default,
|
109
|
+
alt: "arrow-right"
|
110
|
+
}))), /*#__PURE__*/_react.default.createElement("div", {
|
111
|
+
className: "widget-tab__isometry-buttons"
|
112
|
+
}, steps.length > 1 && /*#__PURE__*/_react.default.createElement("button", {
|
113
|
+
className: "widget-tab__isometry-button",
|
114
|
+
onClick: function onClick() {
|
115
|
+
return setCurrentStep(getNextStep());
|
116
|
+
}
|
117
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
118
|
+
src: getCurrentButtonIcon(),
|
119
|
+
alt: "".concat(currentStep, "-icon")
|
120
|
+
}))));
|
121
|
+
};
|
122
|
+
|
123
|
+
var _default = DefaultView;
|
124
|
+
exports.default = _default;
|
@@ -0,0 +1,45 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
9
|
+
|
10
|
+
var _locale = _interopRequireDefault(require("../../locale"));
|
11
|
+
|
12
|
+
var _rotation = _interopRequireDefault(require("../../assets/icons/rotation.svg"));
|
13
|
+
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
|
+
|
16
|
+
var ThreesixtyView = function ThreesixtyView(_ref) {
|
17
|
+
var initialized = _ref.initialized,
|
18
|
+
showInstructions = _ref.showInstructions,
|
19
|
+
images = _ref.images,
|
20
|
+
activeIndex = _ref.activeIndex,
|
21
|
+
openInstructions = _ref.openInstructions;
|
22
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
23
|
+
className: "widget-tab__threesixty ".concat(initialized ? 'widget-tab__threesixty--active' : '')
|
24
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
25
|
+
className: "widget-tab__threesixty-container"
|
26
|
+
}, images.map(function (img, index) {
|
27
|
+
return /*#__PURE__*/_react.default.createElement("img", {
|
28
|
+
className: activeIndex === index ? 'active' : '',
|
29
|
+
alt: "rotation-view-".concat(index),
|
30
|
+
key: index,
|
31
|
+
src: img
|
32
|
+
});
|
33
|
+
}))), !initialized && !showInstructions && /*#__PURE__*/_react.default.createElement("button", {
|
34
|
+
className: "widget-tab__rotation-start",
|
35
|
+
onClick: openInstructions
|
36
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
37
|
+
className: "widget-tab__rotation-start-icon"
|
38
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
39
|
+
src: _rotation.default,
|
40
|
+
alt: "start-icon"
|
41
|
+
})), /*#__PURE__*/_react.default.createElement("span", null, _locale.default.getLocaleText('rotate'))));
|
42
|
+
};
|
43
|
+
|
44
|
+
var _default = ThreesixtyView;
|
45
|
+
exports.default = _default;
|
@@ -11,17 +11,21 @@ var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
12
12
|
var _panzoom = _interopRequireDefault(require("panzoom"));
|
13
13
|
|
14
|
-
var _threesixty = _interopRequireDefault(require("
|
14
|
+
var _threesixty = _interopRequireDefault(require("../../threesixty"));
|
15
15
|
|
16
|
-
var
|
16
|
+
var _rotationModes = require("../../enums/rotationModes");
|
17
17
|
|
18
|
-
var
|
18
|
+
var _helpers = require("../../utils/helpers");
|
19
19
|
|
20
|
-
var
|
20
|
+
var _locale = _interopRequireDefault(require("../../locale"));
|
21
21
|
|
22
|
-
var
|
22
|
+
var _ThreesixtyView = _interopRequireDefault(require("./ThreesixtyView"));
|
23
23
|
|
24
|
-
var
|
24
|
+
var _Instructions = _interopRequireDefault(require("../Instructions"));
|
25
|
+
|
26
|
+
var _DefaultView = _interopRequireDefault(require("./DefaultView"));
|
27
|
+
|
28
|
+
var _handMove = _interopRequireDefault(require("../../assets/icons/hand-move.svg"));
|
25
29
|
|
26
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
27
31
|
|
@@ -50,9 +54,21 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
50
54
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
51
55
|
|
52
56
|
var RotationTab = function RotationTab(_ref) {
|
53
|
-
var
|
57
|
+
var planImage = _ref.planImage,
|
58
|
+
topViewImage = _ref.topViewImage,
|
59
|
+
images = _ref.images,
|
60
|
+
mode = _ref.mode,
|
54
61
|
_ref$disabled = _ref.disabled,
|
55
62
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled;
|
63
|
+
|
64
|
+
var getSteps = function getSteps() {
|
65
|
+
var availableSteps = [];
|
66
|
+
if (images && images.length > 0) availableSteps.push('carousel');
|
67
|
+
if (planImage) availableSteps.push('plan');
|
68
|
+
if (topViewImage) availableSteps.push('topView');
|
69
|
+
return availableSteps;
|
70
|
+
};
|
71
|
+
|
56
72
|
var instructionSteps = [{
|
57
73
|
icon: _handMove.default,
|
58
74
|
text: _locale.default.getLocaleText('rotate-plan')
|
@@ -68,25 +84,43 @@ var RotationTab = function RotationTab(_ref) {
|
|
68
84
|
initialized = _useState4[0],
|
69
85
|
setInitState = _useState4[1];
|
70
86
|
|
71
|
-
var _useState5 = (0, _react.useState)(
|
87
|
+
var _useState5 = (0, _react.useState)(null),
|
72
88
|
_useState6 = _slicedToArray(_useState5, 2),
|
73
|
-
|
74
|
-
|
89
|
+
controller = _useState6[0],
|
90
|
+
setController = _useState6[1];
|
75
91
|
|
76
|
-
var _useState7 = (0, _react.useState)(
|
92
|
+
var _useState7 = (0, _react.useState)(0),
|
77
93
|
_useState8 = _slicedToArray(_useState7, 2),
|
78
|
-
|
79
|
-
|
94
|
+
activeIndex = _useState8[0],
|
95
|
+
setActiveIndex = _useState8[1];
|
80
96
|
|
81
|
-
var
|
82
|
-
|
97
|
+
var _useState9 = (0, _react.useState)(null),
|
98
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
99
|
+
rotation = _useState10[0],
|
100
|
+
setRotation = _useState10[1];
|
101
|
+
|
102
|
+
var _useState11 = (0, _react.useState)(getSteps()),
|
103
|
+
_useState12 = _slicedToArray(_useState11, 1),
|
104
|
+
steps = _useState12[0];
|
105
|
+
|
106
|
+
var _useState13 = (0, _react.useState)(steps[0]),
|
107
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
108
|
+
currentStep = _useState14[0],
|
109
|
+
setCurrentStep = _useState14[1];
|
110
|
+
|
111
|
+
var openInstructions = function openInstructions() {
|
112
|
+
return setInstructionsState(true);
|
83
113
|
};
|
84
114
|
|
85
|
-
|
115
|
+
function updateRotation() {
|
116
|
+
setActiveIndex(this.index);
|
117
|
+
}
|
118
|
+
|
119
|
+
var createThreesixty = function createThreesixty() {
|
86
120
|
setInstructionsState(false);
|
87
121
|
setInitState(true);
|
88
122
|
var container = document.querySelector('.widget-tab__threesixty-container');
|
89
|
-
var widgetTab = document.querySelector('.widget-
|
123
|
+
var widgetTab = document.querySelector('.widget-tab__rotation');
|
90
124
|
var newRotation = new _threesixty.default(container, {
|
91
125
|
image: _toConsumableArray(images),
|
92
126
|
parentElement: widgetTab,
|
@@ -95,56 +129,57 @@ var RotationTab = function RotationTab(_ref) {
|
|
95
129
|
});
|
96
130
|
newRotation._update = updateRotation;
|
97
131
|
newRotation.play(true);
|
98
|
-
var lastIndex = 0;
|
99
|
-
var controller = (0, _panzoom.default)(container, {
|
100
|
-
maxZoom: 3,
|
101
|
-
minZoom: 0.5,
|
102
|
-
beforeMouseDown: function beforeMouseDown(event) {
|
103
|
-
return !event.shiftKey;
|
104
|
-
}
|
105
|
-
});
|
106
|
-
newRotation.controller = controller;
|
107
132
|
controller.on('panstart', function () {
|
108
|
-
lastIndex = newRotation.index;
|
109
133
|
newRotation.stop();
|
110
134
|
|
111
135
|
newRotation._update = function () {};
|
112
136
|
});
|
113
137
|
controller.on('panend', function () {
|
114
|
-
newRotation.goto(
|
138
|
+
newRotation.goto(newRotation.index);
|
115
139
|
newRotation._update = updateRotation;
|
116
140
|
});
|
117
141
|
setRotation(newRotation);
|
118
142
|
};
|
119
143
|
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
className: activeIndex === index ? 'active' : ''
|
144
|
+
(0, _react.useEffect)(function () {
|
145
|
+
var threesixtyContainer = document.querySelector('.widget-tab__threesixty-container');
|
146
|
+
var defaultContainer = document.querySelector('.widget-tab__isometry-container');
|
147
|
+
var container = mode === _rotationModes.rotationModes.THREESIXTY ? threesixtyContainer : defaultContainer;
|
148
|
+
var controller = (0, _panzoom.default)(container, {
|
149
|
+
beforeMouseDown: function beforeMouseDown(event) {
|
150
|
+
return !event.shiftKey;
|
151
|
+
},
|
152
|
+
onDoubleClick: function onDoubleClick(e) {
|
153
|
+
console.log(e);
|
154
|
+
return true;
|
155
|
+
},
|
156
|
+
minZoom: 0.5,
|
157
|
+
maxZoom: 3
|
135
158
|
});
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
}, /*#__PURE__*/_react.default.createElement(
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
159
|
+
setController(controller);
|
160
|
+
}, []);
|
161
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
162
|
+
className: "widget-tab__rotation",
|
163
|
+
onContextMenu: _helpers.preventRightClick
|
164
|
+
}, mode === _rotationModes.rotationModes.THREESIXTY && /*#__PURE__*/_react.default.createElement(_ThreesixtyView.default, {
|
165
|
+
showInstructions: showInstructions,
|
166
|
+
openInstructions: openInstructions,
|
167
|
+
initialized: initialized,
|
168
|
+
activeIndex: activeIndex,
|
169
|
+
images: images
|
170
|
+
}), mode === _rotationModes.rotationModes.DEFAULT && /*#__PURE__*/_react.default.createElement(_DefaultView.default, {
|
171
|
+
setActiveIndex: setActiveIndex,
|
172
|
+
setCurrentStep: setCurrentStep,
|
173
|
+
topViewImage: topViewImage,
|
174
|
+
activeIndex: activeIndex,
|
175
|
+
currentStep: currentStep,
|
176
|
+
planImage: planImage,
|
177
|
+
images: images,
|
178
|
+
steps: steps
|
179
|
+
}), showInstructions && /*#__PURE__*/_react.default.createElement(_Instructions.default, {
|
180
|
+
onClick: createThreesixty,
|
146
181
|
steps: instructionSteps,
|
147
|
-
|
182
|
+
disabled: disabled
|
148
183
|
}));
|
149
184
|
};
|
150
185
|
|
@@ -25,14 +25,14 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
25
25
|
|
26
26
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
27
27
|
|
28
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
29
|
+
|
28
30
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
29
31
|
|
30
32
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
31
33
|
|
32
34
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
33
35
|
|
34
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
35
|
-
|
36
36
|
var Widget = /*#__PURE__*/function () {
|
37
37
|
function Widget(container) {
|
38
38
|
var _this = this;
|
@@ -41,8 +41,6 @@ var Widget = /*#__PURE__*/function () {
|
|
41
41
|
|
42
42
|
_classCallCheck(this, Widget);
|
43
43
|
|
44
|
-
_defineProperty(this, "requiredParams", ['tabs', 'width', 'height', 'locale', 'API_URL']);
|
45
|
-
|
46
44
|
var config = _objectSpread(_objectSpread({}, _defaultConfig.default), options);
|
47
45
|
|
48
46
|
var widgetContainer = document.querySelector(container);
|
@@ -76,24 +74,6 @@ var Widget = /*#__PURE__*/function () {
|
|
76
74
|
get: function get() {
|
77
75
|
return _store.default.config;
|
78
76
|
}
|
79
|
-
}, {
|
80
|
-
key: "updateOptions",
|
81
|
-
value: function updateOptions(config) {
|
82
|
-
var _this2 = this;
|
83
|
-
|
84
|
-
var newConfig = _objectSpread({}, config);
|
85
|
-
|
86
|
-
this.requiredParams.forEach(function (param) {
|
87
|
-
if (config[param]) return;
|
88
|
-
newConfig[param] = _this2.options[param];
|
89
|
-
});
|
90
|
-
|
91
|
-
_modelStore.default.removeHouse();
|
92
|
-
|
93
|
-
_store.default.setConfig(newConfig);
|
94
|
-
|
95
|
-
_fullScreenStore.default.resize(newConfig);
|
96
|
-
}
|
97
77
|
}, {
|
98
78
|
key: "updateSize",
|
99
79
|
value: function updateSize(size) {
|
@@ -7,6 +7,8 @@ exports.default = void 0;
|
|
7
7
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
9
9
|
|
10
|
+
var _rotationModes = require("../enums/rotationModes");
|
11
|
+
|
10
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
11
13
|
|
12
14
|
var defaultConfig = {
|
@@ -19,7 +21,7 @@ var defaultConfig = {
|
|
19
21
|
height: 1080,
|
20
22
|
planImage: null,
|
21
23
|
topViewImage: null,
|
22
|
-
rotationMode:
|
24
|
+
rotationMode: _rotationModes.rotationModes.default,
|
23
25
|
rotationImages: [],
|
24
26
|
panoramaImages: [],
|
25
27
|
json: null,
|
package/build/index.js
CHANGED
@@ -45,6 +45,12 @@ Object.defineProperty(exports, "Widget", {
|
|
45
45
|
return _Widget.default;
|
46
46
|
}
|
47
47
|
});
|
48
|
+
Object.defineProperty(exports, "rotationModes", {
|
49
|
+
enumerable: true,
|
50
|
+
get: function get() {
|
51
|
+
return _rotationModes.rotationModes;
|
52
|
+
}
|
53
|
+
});
|
48
54
|
|
49
55
|
var _react = _interopRequireDefault(require("react"));
|
50
56
|
|
@@ -64,4 +70,6 @@ var _RotationTab = _interopRequireDefault(require("./components/RotationTab"));
|
|
64
70
|
|
65
71
|
var _Widget = _interopRequireDefault(require("./components/Widget"));
|
66
72
|
|
73
|
+
var _rotationModes = require("./enums/rotationModes");
|
74
|
+
|
67
75
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|