@zenvor/view360 4.0.0-beta.7-fork.1
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/LICENSE +19 -0
- package/README.md +88 -0
- package/css/base.css +19 -0
- package/css/base.min.css +1 -0
- package/css/control-bar.css +329 -0
- package/css/control-bar.min.css +1 -0
- package/css/helper.css +51 -0
- package/css/helper.min.css +1 -0
- package/css/hotspot.css +21 -0
- package/css/hotspot.min.css +1 -0
- package/css/loading-spinner.css +37 -0
- package/css/loading-spinner.min.css +1 -0
- package/css/variable.css +1 -0
- package/css/variable.min.css +0 -0
- package/css/view360.css +468 -0
- package/css/view360.min.css +1 -0
- package/css/vr.css +8 -0
- package/css/vr.min.css +1 -0
- package/declaration/View360.d.ts +150 -0
- package/declaration/cfc/const.d.ts +1 -0
- package/declaration/cfc/index.d.ts +4 -0
- package/declaration/cfc/utils.d.ts +1 -0
- package/declaration/cfc/withMethods.d.ts +2 -0
- package/declaration/const/browser.d.ts +71 -0
- package/declaration/const/error.d.ts +47 -0
- package/declaration/const/external.d.ts +33 -0
- package/declaration/const/internal.d.ts +34 -0
- package/declaration/control/CameraControl.d.ts +10 -0
- package/declaration/control/GyroControl.d.ts +30 -0
- package/declaration/control/PanoControl.d.ts +58 -0
- package/declaration/control/RotateControl.d.ts +75 -0
- package/declaration/control/ZoomControl.d.ts +45 -0
- package/declaration/control/index.d.ts +7 -0
- package/declaration/control/input/GyroInput.d.ts +46 -0
- package/declaration/control/input/KeyboardInput.d.ts +21 -0
- package/declaration/control/input/MouseInput.d.ts +16 -0
- package/declaration/control/input/PinchInput.d.ts +14 -0
- package/declaration/control/input/PointerInput.d.ts +18 -0
- package/declaration/control/input/TouchInput.d.ts +21 -0
- package/declaration/control/input/WheelInput.d.ts +16 -0
- package/declaration/core/AutoResizer.d.ts +13 -0
- package/declaration/core/Autoplay.d.ts +54 -0
- package/declaration/core/Camera.d.ts +88 -0
- package/declaration/core/CameraAnimation.d.ts +25 -0
- package/declaration/core/CameraPath.d.ts +55 -0
- package/declaration/core/CubeTexturePainter.d.ts +16 -0
- package/declaration/core/FrameAnimator.d.ts +13 -0
- package/declaration/core/Motion.d.ts +39 -0
- package/declaration/core/Object3D.d.ts +21 -0
- package/declaration/core/ShaderProgram.d.ts +10 -0
- package/declaration/core/TextureLoader.d.ts +26 -0
- package/declaration/core/TriangleMesh.d.ts +20 -0
- package/declaration/core/VertexArrayObject.d.ts +14 -0
- package/declaration/core/VertexData.d.ts +8 -0
- package/declaration/core/View360Error.d.ts +5 -0
- package/declaration/core/WebGLContext.d.ts +74 -0
- package/declaration/core/WebGLRenderer.d.ts +26 -0
- package/declaration/core/XRManager.d.ts +33 -0
- package/declaration/core/index.d.ts +12 -0
- package/declaration/geometry/CubeGeometry.d.ts +9 -0
- package/declaration/geometry/CylinderGeometry.d.ts +5 -0
- package/declaration/geometry/Geometry.d.ts +8 -0
- package/declaration/geometry/PlaneGeometry.d.ts +5 -0
- package/declaration/geometry/SphereGeometry.d.ts +5 -0
- package/declaration/hotspot/Hotspot.d.ts +7 -0
- package/declaration/hotspot/HotspotRenderer.d.ts +17 -0
- package/declaration/hotspot/index.d.ts +4 -0
- package/declaration/index.cjs.d.ts +3 -0
- package/declaration/index.d.ts +11 -0
- package/declaration/index.umd.d.ts +2 -0
- package/declaration/plugin/ControlBar/AutoHide.d.ts +42 -0
- package/declaration/plugin/ControlBar/ControlBar.d.ts +113 -0
- package/declaration/plugin/ControlBar/ControlBarItem.d.ts +15 -0
- package/declaration/plugin/ControlBar/FullscreenButton.d.ts +19 -0
- package/declaration/plugin/ControlBar/GyroButton.d.ts +14 -0
- package/declaration/plugin/ControlBar/PieView.d.ts +26 -0
- package/declaration/plugin/ControlBar/PlayButton.d.ts +16 -0
- package/declaration/plugin/ControlBar/ProgressBar.d.ts +23 -0
- package/declaration/plugin/ControlBar/RangeControl.d.ts +27 -0
- package/declaration/plugin/ControlBar/VRButton.d.ts +12 -0
- package/declaration/plugin/ControlBar/VideoControl.d.ts +11 -0
- package/declaration/plugin/ControlBar/VideoTime.d.ts +17 -0
- package/declaration/plugin/ControlBar/VolumeControl.d.ts +23 -0
- package/declaration/plugin/ControlBar/const.d.ts +41 -0
- package/declaration/plugin/ControlBar/index.d.ts +11 -0
- package/declaration/plugin/LoadingSpinner/LoadingSpinner.d.ts +22 -0
- package/declaration/plugin/View360Plugin.d.ts +6 -0
- package/declaration/plugin/index.d.ts +5 -0
- package/declaration/projection/CorrectionPass.d.ts +26 -0
- package/declaration/projection/CubemapProjection.d.ts +19 -0
- package/declaration/projection/CubestripProjection.d.ts +18 -0
- package/declaration/projection/CylindricalProjection.d.ts +22 -0
- package/declaration/projection/EquiangularProjection.d.ts +13 -0
- package/declaration/projection/EquirectProjection.d.ts +15 -0
- package/declaration/projection/LittlePlanetProjection.d.ts +21 -0
- package/declaration/projection/Projection.d.ts +19 -0
- package/declaration/projection/StereoEquiProjection.d.ts +25 -0
- package/declaration/projection/WideAngleCorrectionProjection.d.ts +27 -0
- package/declaration/projection/WideAngleRealtimeProjection.d.ts +50 -0
- package/declaration/projection/index.d.ts +12 -0
- package/declaration/texture/Texture.d.ts +18 -0
- package/declaration/texture/Texture2D.d.ts +11 -0
- package/declaration/texture/TextureCube.d.ts +12 -0
- package/declaration/texture/TextureRenderTarget.d.ts +8 -0
- package/declaration/texture/TextureVideo.d.ts +11 -0
- package/declaration/type/events.d.ts +74 -0
- package/declaration/type/external.d.ts +13 -0
- package/declaration/type/internal.d.ts +47 -0
- package/declaration/type/utils.d.ts +11 -0
- package/declaration/uniform/Uniform.d.ts +7 -0
- package/declaration/uniform/UniformBoolean.d.ts +7 -0
- package/declaration/uniform/UniformCanvasCube.d.ts +12 -0
- package/declaration/uniform/UniformFloat.d.ts +7 -0
- package/declaration/uniform/UniformInt.d.ts +7 -0
- package/declaration/uniform/UniformMatrix.d.ts +8 -0
- package/declaration/uniform/UniformTexture2D.d.ts +11 -0
- package/declaration/uniform/UniformTextureCube.d.ts +12 -0
- package/declaration/uniform/UniformTextureRenderTarget.d.ts +11 -0
- package/declaration/uniform/UniformVec2.d.ts +7 -0
- package/declaration/uniform/UniformVec3.d.ts +7 -0
- package/declaration/uniform/UniformVector4Array.d.ts +7 -0
- package/declaration/utils.d.ts +25 -0
- package/dist/view360.cjs.js +9392 -0
- package/dist/view360.cjs.js.map +1 -0
- package/dist/view360.esm.js +9274 -0
- package/dist/view360.esm.js.map +1 -0
- package/dist/view360.js +9350 -0
- package/dist/view360.js.map +1 -0
- package/dist/view360.min.js +2 -0
- package/dist/view360.min.js.map +1 -0
- package/dist/view360.pkgd.js +48537 -0
- package/dist/view360.pkgd.js.map +1 -0
- package/dist/view360.pkgd.min.js +16 -0
- package/dist/view360.pkgd.min.js.map +1 -0
- package/package.json +110 -0
- package/sass/base.sass +17 -0
- package/sass/control-bar.sass +284 -0
- package/sass/helper.sass +51 -0
- package/sass/hotspot.sass +20 -0
- package/sass/loading-spinner.sass +34 -0
- package/sass/variable.sass +2 -0
- package/sass/view360.sass +6 -0
- package/sass/vr.sass +10 -0
- package/src/View360.ts +1220 -0
- package/src/cfc/const.ts +15 -0
- package/src/cfc/index.ts +8 -0
- package/src/cfc/utils.ts +12 -0
- package/src/cfc/withMethods.ts +40 -0
- package/src/const/browser.ts +109 -0
- package/src/const/error.ts +83 -0
- package/src/const/external.ts +77 -0
- package/src/const/internal.ts +53 -0
- package/src/control/CameraControl.ts +53 -0
- package/src/control/GyroControl.ts +225 -0
- package/src/control/PanoControl.ts +434 -0
- package/src/control/RotateControl.ts +411 -0
- package/src/control/ZoomControl.ts +254 -0
- package/src/control/index.ts +24 -0
- package/src/control/input/GyroInput.ts +315 -0
- package/src/control/input/KeyboardInput.ts +151 -0
- package/src/control/input/MouseInput.ts +102 -0
- package/src/control/input/PinchInput.ts +101 -0
- package/src/control/input/PointerInput.ts +118 -0
- package/src/control/input/TouchInput.ts +138 -0
- package/src/control/input/WheelInput.ts +89 -0
- package/src/core/AutoResizer.ts +92 -0
- package/src/core/Autoplay.ts +326 -0
- package/src/core/Camera.ts +616 -0
- package/src/core/CameraAnimation.ts +110 -0
- package/src/core/CameraPath.ts +454 -0
- package/src/core/CubeTexturePainter.ts +95 -0
- package/src/core/FrameAnimator.ts +69 -0
- package/src/core/Motion.ts +205 -0
- package/src/core/Object3D.ts +81 -0
- package/src/core/ShaderProgram.ts +21 -0
- package/src/core/TextureLoader.ts +303 -0
- package/src/core/TriangleMesh.ts +54 -0
- package/src/core/VertexArrayObject.ts +29 -0
- package/src/core/VertexData.ts +23 -0
- package/src/core/View360Error.ts +35 -0
- package/src/core/WebGLContext.ts +558 -0
- package/src/core/WebGLRenderer.ts +205 -0
- package/src/core/XRManager.ts +193 -0
- package/src/core/index.ts +35 -0
- package/src/geometry/CubeGeometry.ts +121 -0
- package/src/geometry/CylinderGeometry.ts +49 -0
- package/src/geometry/Geometry.ts +23 -0
- package/src/geometry/PlaneGeometry.ts +36 -0
- package/src/geometry/SphereGeometry.ts +55 -0
- package/src/hotspot/Hotspot.ts +32 -0
- package/src/hotspot/HotspotRenderer.ts +155 -0
- package/src/hotspot/index.ts +11 -0
- package/src/index.cjs.ts +13 -0
- package/src/index.ts +21 -0
- package/src/index.umd.ts +10 -0
- package/src/plugin/ControlBar/AutoHide.ts +246 -0
- package/src/plugin/ControlBar/ControlBar.ts +564 -0
- package/src/plugin/ControlBar/ControlBarItem.ts +84 -0
- package/src/plugin/ControlBar/FullscreenButton.ts +145 -0
- package/src/plugin/ControlBar/GyroButton.ts +124 -0
- package/src/plugin/ControlBar/PieView.ts +195 -0
- package/src/plugin/ControlBar/PlayButton.ts +130 -0
- package/src/plugin/ControlBar/ProgressBar.ts +175 -0
- package/src/plugin/ControlBar/RangeControl.ts +165 -0
- package/src/plugin/ControlBar/VRButton.ts +78 -0
- package/src/plugin/ControlBar/VideoControl.ts +79 -0
- package/src/plugin/ControlBar/VideoTime.ts +120 -0
- package/src/plugin/ControlBar/VolumeControl.ts +220 -0
- package/src/plugin/ControlBar/const.ts +72 -0
- package/src/plugin/ControlBar/index.ts +31 -0
- package/src/plugin/LoadingSpinner/LoadingSpinner.ts +116 -0
- package/src/plugin/View360Plugin.ts +30 -0
- package/src/plugin/index.ts +16 -0
- package/src/projection/CorrectionPass.ts +161 -0
- package/src/projection/CubemapProjection.ts +92 -0
- package/src/projection/CubestripProjection.ts +85 -0
- package/src/projection/CylindricalProjection.ts +123 -0
- package/src/projection/EquiangularProjection.ts +52 -0
- package/src/projection/EquirectProjection.ts +56 -0
- package/src/projection/LittlePlanetProjection.ts +82 -0
- package/src/projection/Projection.ts +103 -0
- package/src/projection/StereoEquiProjection.ts +104 -0
- package/src/projection/WideAngleCorrectionProjection.ts +307 -0
- package/src/projection/WideAngleRealtimeProjection.ts +653 -0
- package/src/projection/index.ts +36 -0
- package/src/shader/common.frag +7 -0
- package/src/shader/common.vert +12 -0
- package/src/shader/correction.frag +110 -0
- package/src/shader/cube.frag +8 -0
- package/src/shader/cube.vert +12 -0
- package/src/shader/eac.frag +40 -0
- package/src/shader/fullscreen.vert +7 -0
- package/src/shader/little-planet.frag +47 -0
- package/src/shader/little-planet.vert +12 -0
- package/src/shader/stereoequi.vert +15 -0
- package/src/shader/wideangle_realtime.frag +109 -0
- package/src/shader/wideangle_realtime.vert +17 -0
- package/src/shim.d.ts +9 -0
- package/src/texture/Texture.ts +47 -0
- package/src/texture/Texture2D.ts +34 -0
- package/src/texture/TextureCube.ts +36 -0
- package/src/texture/TextureRenderTarget.ts +33 -0
- package/src/texture/TextureVideo.ts +56 -0
- package/src/type/events.ts +389 -0
- package/src/type/external.ts +78 -0
- package/src/type/internal.ts +54 -0
- package/src/type/utils.ts +27 -0
- package/src/types/hls.d.ts +78 -0
- package/src/uniform/Uniform.ts +20 -0
- package/src/uniform/UniformBoolean.ts +23 -0
- package/src/uniform/UniformCanvasCube.ts +44 -0
- package/src/uniform/UniformFloat.ts +23 -0
- package/src/uniform/UniformInt.ts +25 -0
- package/src/uniform/UniformMatrix.ts +24 -0
- package/src/uniform/UniformTexture2D.ts +46 -0
- package/src/uniform/UniformTextureCube.ts +51 -0
- package/src/uniform/UniformTextureRenderTarget.ts +55 -0
- package/src/uniform/UniformVec2.ts +25 -0
- package/src/uniform/UniformVec3.ts +25 -0
- package/src/uniform/UniformVector4Array.ts +23 -0
- package/src/utils.ts +217 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
Copyright (c) 2023-present NAVER Corp.
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
in the Software without restriction, including without limitation the rights
|
|
6
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
furnished to do so, subject to the following conditions:
|
|
9
|
+
|
|
10
|
+
The above copyright notice and this permission notice shall be included in
|
|
11
|
+
all copies or substantial portions of the Software.
|
|
12
|
+
|
|
13
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
THE SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
<div align="center" style="padding: 60px 0 0;">
|
|
2
|
+
|
|
3
|
+

|
|
4
|
+
|
|
5
|
+
<div style="max-width: 100%; font-size: 64px;">
|
|
6
|
+
<a href="https://naver.github.io/egjs-view360/">View360</a>
|
|
7
|
+
</div>
|
|
8
|
+
|
|
9
|
+
<h3 align="center" style="max-width: 100%;">
|
|
10
|
+
360° panorama image / video viewer built with Typescript
|
|
11
|
+
</h3>
|
|
12
|
+
|
|
13
|
+
<div style="display: inline-block; max-width: 400px; padding: 20px 0">
|
|
14
|
+
|
|
15
|
+
```shell
|
|
16
|
+
npm install @egjs/view360@next
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
<p align="center" style="max-width: 100%;">
|
|
23
|
+
<a href="https://www.npmjs.com/package/@egjs/view360" target="_blank" rel="noopener noreferrer">
|
|
24
|
+
<img alt="npm" src="https://img.shields.io/npm/v/@egjs/view360/next?logo=npm"></img>
|
|
25
|
+
</a>
|
|
26
|
+
<a href="https://www.npmjs.com/package/@egjs/view360" target="_blank" rel="noopener noreferrer">
|
|
27
|
+
<img alt="npm bundle size" src="https://img.shields.io/bundlephobia/minzip/@egjs/view360?label=%F0%9F%92%BE%20minzipped"></img>
|
|
28
|
+
</a>
|
|
29
|
+
<a href="https://github.com/naver/egjs-view360/blob/master/LICENSE" target="_blank" rel="noopener noreferrer">
|
|
30
|
+
<img alt="License" src="https://img.shields.io/github/license/naver/egjs-view360?label=%F0%9F%93%9C%20license" />
|
|
31
|
+
</a>
|
|
32
|
+
<a href="https://www.typescriptlang.org/" target="_blank" rel="noopener noreferrer">
|
|
33
|
+
<img alt="Typescript" src="https://img.shields.io/static/v1.svg?label=&message=TypeScript&color=294E80&style=flat-square&logo=typescript" />
|
|
34
|
+
</a>
|
|
35
|
+
</p>
|
|
36
|
+
|
|
37
|
+
<p align="center" style="line-height: 2;">
|
|
38
|
+
<img alt="Angular" src="https://img.shields.io/static/v1.svg?label=&message=Angular&style=flat-square&logo=Angular&color=dd0031" />
|
|
39
|
+
<img alt="React" src="https://img.shields.io/static/v1.svg?label=&message=React&style=flat-square&logo=React&logoColor=white&color=61dafb" />
|
|
40
|
+
<img alt="Vue" src="https://img.shields.io/static/v1.svg?label=&message=Vue&style=flat-square&logo=Vue.js&logoColor=white&color=42b883" />
|
|
41
|
+
<img alt="Svelte" src="https://img.shields.io/static/v1.svg?label=&message=Svelte&style=flat-square&logo=svelte&logoColor=white&color=FF3E00" />
|
|
42
|
+
</p>
|
|
43
|
+
|
|
44
|
+
<h3 align="center">
|
|
45
|
+
<a href="https://naver.github.io/egjs-view360/">Demo</a> / <a href="https://naver.github.io/egjs-view360/docs/api/Class/View360">API</a> / <a href="https://naver.github.io/egjs/"><img height="20" src="https://naver.github.io/egjs/img/logo.svg"/> Other components</a>
|
|
46
|
+
</h3>
|
|
47
|
+
|
|
48
|
+
## Supported Browsers
|
|
49
|
+
> With Promise polyfill
|
|
50
|
+
|
|
51
|
+
|<img width="20" src="https://simpleicons.org/icons/internetexplorer.svg" alt="IE" />|<img width="20" src="https://simpleicons.org/icons/googlechrome.svg" alt="Chrome" />|<img width="20" src="https://simpleicons.org/icons/firefoxbrowser.svg" alt="Firefox" />|<img width="20" src="https://simpleicons.org/icons/safari.svg" alt="Safari" />|<img width="20" src="https://simpleicons.org/icons/apple.svg" alt="iOS" />|<img width="20" src="https://simpleicons.org/icons/android.svg" alt="Android" />|
|
|
52
|
+
|---|---|---|---|---|---|
|
|
53
|
+
|11+|latest|latest|latest|9+|5.0+|
|
|
54
|
+
|
|
55
|
+
## 📦 Packages
|
|
56
|
+
|Package|Version|Description|
|
|
57
|
+
|:-----:|:-----:|:-----:|
|
|
58
|
+
|[**@egjs/ngx-view360**](https://github.com/naver/egjs-view360/blob/master/packages/ngx-view360/README.md)|<a href="https://www.npmjs.com/package/@egjs/ngx-view360/next" target="_blank"><img src="https://img.shields.io/npm/v/@egjs/ngx-view360/next?style=flat-square&color=dd0031&label=%F0%9F%94%96" alt="version" /></a>|[Angular](https://angular.io/) port of @egjs/view360|
|
|
59
|
+
|[**@egjs/react-view360**](https://github.com/naver/egjs-view360/blob/master/packages/react-view360/README.md)|<a href="https://www.npmjs.com/package/@egjs/react-view360" target="_blank"><img src="https://img.shields.io/npm/v/@egjs/react-view360/next?style=flat-square&color=00d8ff&label=%F0%9F%94%96" alt="version" /></a>|[React](https://reactjs.org/) port of @egjs/view360|
|
|
60
|
+
|[**@egjs/vue-view360**](https://github.com/naver/egjs-view360/blob/master/packages/vue-view360/README.md)|<a href="https://www.npmjs.com/package/@egjs/vue-view360" target="_blank"><img src="https://img.shields.io/npm/v/@egjs/vue-view360/next?style=flat-square&color=42b883&label=%F0%9F%94%96" alt="version" /></a>|[Vue.js@2](https://vuejs.org/v2/guide/index.html) port of @egjs/view360|
|
|
61
|
+
|[**@egjs/vue3-view360**](https://github.com/naver/egjs-view360/blob/master/packages/vue3-view360/README.md)|<a href="https://www.npmjs.com/package/@egjs/vue3-view360" target="_blank"><img src="https://img.shields.io/npm/v/@egjs/vue3-view360/next?style=flat-square&color=42b883&label=%F0%9F%94%96" alt="version" /></a>|[Vue.js@3](https://v3.vuejs.org/) port of @egjs/view360|
|
|
62
|
+
|[**@egjs/svelte-view360**](https://github.com/naver/egjs-view360/blob/master/packages/svelte-view360/README.md)|<a href="https://www.npmjs.com/package/@egjs/svelte-view360" target="_blank"><img src="https://img.shields.io/npm/v/@egjs/svelte-view360/next?style=flat-square&color=FF3E00&label=%F0%9F%94%96" alt="version" /></a>|[Svelte](https://svelte.dev/) port of @egjs/view360|
|
|
63
|
+
|
|
64
|
+
## License
|
|
65
|
+
egjs-view360 is released under the [MIT license](https://github.com/naver/egjs-view360/blob/master/LICENSE).
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
Copyright (c) 2023-present NAVER Corp.
|
|
70
|
+
|
|
71
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
72
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
73
|
+
in the Software without restriction, including without limitation the rights
|
|
74
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
75
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
76
|
+
furnished to do so, subject to the following conditions:
|
|
77
|
+
|
|
78
|
+
The above copyright notice and this permission notice shall be included in
|
|
79
|
+
all copies or substantial portions of the Software.
|
|
80
|
+
|
|
81
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
82
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
83
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
84
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
85
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
86
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
87
|
+
THE SOFTWARE.
|
|
88
|
+
```
|
package/css/base.css
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
.view360-container {
|
|
2
|
+
position: relative;
|
|
3
|
+
touch-action: pan-y;
|
|
4
|
+
overflow: hidden;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.view360-canvas {
|
|
8
|
+
position: absolute;
|
|
9
|
+
left: 0;
|
|
10
|
+
top: 0;
|
|
11
|
+
width: 100%;
|
|
12
|
+
height: 100%;
|
|
13
|
+
-ms-user-select: none;
|
|
14
|
+
user-select: none;
|
|
15
|
+
-webkit-user-drag: none;
|
|
16
|
+
}
|
|
17
|
+
.view360-canvas.ctx-lost {
|
|
18
|
+
text-indent: 0.001px;
|
|
19
|
+
}
|
package/css/base.min.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.view360-container{position:relative;touch-action:pan-y;overflow:hidden}.view360-canvas{position:absolute;left:0;top:0;width:100%;height:100%;-ms-user-select:none;user-select:none;-webkit-user-drag:none}.view360-canvas.ctx-lost{text-indent:.001px}
|
|
@@ -0,0 +1,329 @@
|
|
|
1
|
+
.view360-controls {
|
|
2
|
+
position: absolute;
|
|
3
|
+
top: 0;
|
|
4
|
+
left: 0;
|
|
5
|
+
width: 100%;
|
|
6
|
+
height: 100%;
|
|
7
|
+
padding: 0;
|
|
8
|
+
margin: 0;
|
|
9
|
+
border: 0;
|
|
10
|
+
pointer-events: none;
|
|
11
|
+
-ms-user-select: none;
|
|
12
|
+
user-select: none;
|
|
13
|
+
-webkit-user-drag: none;
|
|
14
|
+
z-index: 1;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.view360-main.view360-vr-presenting .view360-controls {
|
|
18
|
+
display: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.view360-controls-float-left,
|
|
22
|
+
.view360-controls-float-right {
|
|
23
|
+
position: absolute;
|
|
24
|
+
display: flex;
|
|
25
|
+
flex-direction: column;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.view360-controls-float-left {
|
|
29
|
+
left: 0px;
|
|
30
|
+
top: 0px;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.view360-controls-float-right {
|
|
34
|
+
right: 0px;
|
|
35
|
+
top: 0px;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.view360-controls-main {
|
|
39
|
+
position: absolute;
|
|
40
|
+
bottom: 0;
|
|
41
|
+
left: 0;
|
|
42
|
+
width: 100%;
|
|
43
|
+
opacity: 1;
|
|
44
|
+
transition: none;
|
|
45
|
+
}
|
|
46
|
+
.view360-controls-main.view360-controls-hidden {
|
|
47
|
+
opacity: 0;
|
|
48
|
+
transition: opacity 500ms;
|
|
49
|
+
}
|
|
50
|
+
.view360-controls-main.view360-controls-hidden * {
|
|
51
|
+
pointer-events: none;
|
|
52
|
+
}
|
|
53
|
+
.view360-controls-main.view360-controls-fixed {
|
|
54
|
+
opacity: 1;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.view360-controls-background {
|
|
58
|
+
width: 100%;
|
|
59
|
+
height: calc(100% + 32px);
|
|
60
|
+
position: absolute;
|
|
61
|
+
left: 0;
|
|
62
|
+
bottom: 0;
|
|
63
|
+
background-image: linear-gradient(0deg, rgb(50, 50, 50), rgba(50, 50, 50, 0));
|
|
64
|
+
}
|
|
65
|
+
.view360-controls-background.view360-controls-hidden {
|
|
66
|
+
display: none;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.view360-controls-mid {
|
|
70
|
+
display: flex;
|
|
71
|
+
flex-direction: row;
|
|
72
|
+
position: relative;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.view360-controls-left {
|
|
76
|
+
display: flex;
|
|
77
|
+
flex: 1;
|
|
78
|
+
justify-content: flex-start;
|
|
79
|
+
align-items: center;
|
|
80
|
+
flex-direction: row;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.view360-controls-right {
|
|
84
|
+
display: flex;
|
|
85
|
+
align-items: center;
|
|
86
|
+
flex-direction: row;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.view360-controls-bottom {
|
|
90
|
+
display: flex;
|
|
91
|
+
align-items: center;
|
|
92
|
+
flex-direction: row;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.view360-controls-button {
|
|
96
|
+
display: inline-block;
|
|
97
|
+
background-color: transparent;
|
|
98
|
+
cursor: pointer;
|
|
99
|
+
border: 0;
|
|
100
|
+
position: relative;
|
|
101
|
+
background-size: 24px 24px;
|
|
102
|
+
background-origin: content-box;
|
|
103
|
+
background-repeat: no-repeat;
|
|
104
|
+
box-sizing: border-box;
|
|
105
|
+
pointer-events: all;
|
|
106
|
+
border-radius: 20px;
|
|
107
|
+
transition: opacity 250ms;
|
|
108
|
+
width: 40px;
|
|
109
|
+
height: 40px;
|
|
110
|
+
margin: 6px;
|
|
111
|
+
padding: 8px;
|
|
112
|
+
opacity: 0.8;
|
|
113
|
+
}
|
|
114
|
+
.view360-controls-button:hover {
|
|
115
|
+
opacity: 1;
|
|
116
|
+
}
|
|
117
|
+
.view360-controls-button.view360-controls-vr {
|
|
118
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48' viewBox='0 0 100 100'%3E%3Cg%3E%3Cpath d='M5,30 L95,30 L95,80 L55,80 L50,70 L45,80 L5,80 L5,30' fill='transparent' stroke='%23fff' stroke-width='8' stroke-linejoin='round' stroke-linecap='round'/%3E%3Cpath d='M5,30 L15,10 L85,10 L95,30' fill='transparent' stroke='%23fff' stroke-width='8' stroke-linejoin='round' stroke-linecap='round'/%3E%3Ccircle cx='30' cy='55' r='10' stroke='%23fff' stroke-width='8' fill='transparent' /%3E%3Ccircle cx='70' cy='55' r='10' stroke='%23fff' stroke-width='8' fill='transparent' /%3E%3C/g%3E%3C/svg%3E");
|
|
119
|
+
}
|
|
120
|
+
.view360-controls-button {
|
|
121
|
+
/* * Following background-image svgs are from tabler icons
|
|
122
|
+
* * https://github.com/tabler/tabler-icons
|
|
123
|
+
* *
|
|
124
|
+
* * tabler icons is licensed under the MIT license
|
|
125
|
+
* * https://github.com/tabler/tabler-icons/blob/master/LICENSE
|
|
126
|
+
* */
|
|
127
|
+
}
|
|
128
|
+
.view360-controls-button.view360-controls-play {
|
|
129
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M7 4v16l13 -8z'%3E%3C/path%3E%3C/svg%3E");
|
|
130
|
+
}
|
|
131
|
+
.view360-controls-button.view360-controls-pause {
|
|
132
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Crect x='6' y='5' width='4' height='14' rx='1'%3E%3C/rect%3E%3Crect x='14' y='5' width='4' height='14' rx='1'%3E%3C/rect%3E%3C/svg%3E");
|
|
133
|
+
}
|
|
134
|
+
.view360-controls-button.view360-controls-unmuted {
|
|
135
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M15 8a5 5 0 0 1 0 8'%3E%3C/path%3E%3Cpath d='M17.7 5a9 9 0 0 1 0 14'%3E%3C/path%3E%3Cpath d='M6 15h-2a1 1 0 0 1 -1 -1v-4a1 1 0 0 1 1 -1h2l3.5 -4.5a0.8 .8 0 0 1 1.5 .5v14a0.8 .8 0 0 1 -1.5 .5l-3.5 -4.5'%3E%3C/path%3E%3C/svg%3E");
|
|
136
|
+
}
|
|
137
|
+
.view360-controls-button.view360-controls-muted {
|
|
138
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M6 15h-2a1 1 0 0 1 -1 -1v-4a1 1 0 0 1 1 -1h2l3.5 -4.5a0.8 .8 0 0 1 1.5 .5v14a0.8 .8 0 0 1 -1.5 .5l-3.5 -4.5'%3E%3C/path%3E%3Cpath d='M16 10l4 4m0 -4l-4 4'%3E%3C/path%3E%3C/svg%3E");
|
|
139
|
+
}
|
|
140
|
+
.view360-controls-button.view360-controls-fullscreen {
|
|
141
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M4 8v-2a2 2 0 0 1 2 -2h2'%3E%3C/path%3E%3Cpath d='M4 16v2a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v2'%3E%3C/path%3E%3Cpath d='M16 20h2a2 2 0 0 0 2 -2v-2'%3E%3C/path%3E%3C/svg%3E");
|
|
142
|
+
}
|
|
143
|
+
.view360-controls-button.view360-controls-fullscreen-exit {
|
|
144
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M15 19v-2a2 2 0 0 1 2 -2h2'%3E%3C/path%3E%3Cpath d='M15 5v2a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3Cpath d='M5 15h2a2 2 0 0 1 2 2v2'%3E%3C/path%3E%3Cpath d='M5 9h2a2 2 0 0 0 2 -2v-2'%3E%3C/path%3E%3C/svg%3E");
|
|
145
|
+
}
|
|
146
|
+
.view360-controls-button {
|
|
147
|
+
/* * Following background-image svgs are from Google Material Icons
|
|
148
|
+
* * https://fonts.google.com/icons
|
|
149
|
+
* *
|
|
150
|
+
* * Material Design Icons is licensed under the Apache License 2.0
|
|
151
|
+
* * https://github.com/google/material-design-icons/blob/master/LICENSE
|
|
152
|
+
* */
|
|
153
|
+
}
|
|
154
|
+
.view360-controls-button.view360-controls-gyro-enabled {
|
|
155
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath fill='%23fff' d='M22.5 7.6v2.95q-1 .15-1.975.475-.975.325-1.875.825L16.5 9.7q1.35-.9 2.875-1.4 1.525-.5 3.125-.7Zm15.35 15.35q-.2 1.6-.7 3.125-.5 1.525-1.4 2.875L33.6 26.8q.5-.9.825-1.875.325-.975.475-1.975Zm3.8 20.45L1.3 3.05 3.45.9 43.8 41.25ZM7 41.4q-1.25 0-2.125-.875T4 38.4v-8.6h3v8.6h8.6v3ZM41 13V4.4h-8.6v-3H41q1.25 0 2.125.875T44 4.4V13ZM4 13V4.4q0-.55.2-1.1t.6-1l2.1 2.1V13Zm28.4 28.4v-3h8.5l2.1 2.1q-.4.45-.925.675-.525.225-1.075.225Zm-21.2-37-3-3h7.4v3ZM44 37.2l-3-3v-4.4h3ZM10.15 22.95h2.95q.5 3.7 3.1 6.3 2.6 2.6 6.3 3.1v2.95q-4.9-.55-8.35-4-3.45-3.45-4-8.35Zm4-11.35 2.1 2.05q-1.3 1.3-2.1 2.9-.8 1.6-1.05 3.4h-2.95q.25-2.4 1.275-4.525Q12.45 13.3 14.15 11.6ZM31.8 29.2l2.05 2.1q-1.7 1.7-3.825 2.725Q27.9 35.05 25.5 35.3v-2.95q1.8-.25 3.4-1.05 1.6-.8 2.9-2.1ZM25.5 7.6q4.9.55 8.35 4 3.45 3.45 4 8.35H34.9q-.5-3.7-3.1-6.3-2.6-2.6-6.3-3.1Z'/%3E%3C/svg%3E");
|
|
156
|
+
}
|
|
157
|
+
.view360-controls-button.view360-controls-gyro-disabled {
|
|
158
|
+
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath fill='%23fff' d='M7 44q-1.2 0-2.1-.9Q4 42.2 4 41v-8.6h3V41h8.6v3ZM4 15.6V7q0-1.2.9-2.1Q5.8 4 7 4h8.6v3H7v8.6Zm18.5 22.25q-4.9-.55-8.35-4-3.45-3.45-4-8.35h2.95q.5 3.7 3.125 6.3 2.625 2.6 6.275 3.1ZM10.15 22.5q.55-4.9 4-8.35 3.45-3.45 8.35-4v2.95q-3.7.5-6.3 3.1-2.6 2.6-3.1 6.3Zm13.85 5q-1.45 0-2.475-1.025Q20.5 25.45 20.5 24q0-1.45 1.025-2.475Q22.55 20.5 24 20.5q1.45 0 2.475 1.025Q27.5 22.55 27.5 24q0 1.45-1.025 2.475Q25.45 27.5 24 27.5Zm1.5 10.35V34.9q3.7-.5 6.3-3.125 2.6-2.625 3.1-6.275h2.95q-.55 4.9-4 8.35-3.45 3.45-8.35 4Zm9.4-15.35q-.5-3.7-3.1-6.3-2.6-2.6-6.3-3.1v-2.95q4.9.55 8.35 4 3.45 3.45 4 8.35ZM32.4 44v-3H41v-8.6h3V41q0 1.2-.9 2.1-.9.9-2.1.9ZM41 15.6V7h-8.6V4H41q1.2 0 2.1.9.9.9.9 2.1v8.6Z'/%3E%3C/svg%3E");
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.view360-controls-time {
|
|
162
|
+
display: inline-block;
|
|
163
|
+
vertical-align: top;
|
|
164
|
+
white-space: nowrap;
|
|
165
|
+
color: white;
|
|
166
|
+
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
|
167
|
+
font-weight: normal;
|
|
168
|
+
font-size: 14px;
|
|
169
|
+
z-index: 1;
|
|
170
|
+
}
|
|
171
|
+
.view360-controls-time:first-child {
|
|
172
|
+
padding: 0 16px;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.view360-controls-progress {
|
|
176
|
+
flex: 1;
|
|
177
|
+
width: 100%;
|
|
178
|
+
padding: 0 16px;
|
|
179
|
+
box-sizing: border-box;
|
|
180
|
+
}
|
|
181
|
+
.view360-controls-progress:not(:first-child) {
|
|
182
|
+
padding-left: 0;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.view360-controls-bottom .view360-controls-progress {
|
|
186
|
+
padding-bottom: 20px;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
.view360-controls-volume {
|
|
190
|
+
display: inline-flex;
|
|
191
|
+
flex-direction: row;
|
|
192
|
+
align-items: center;
|
|
193
|
+
transition: width 250ms, background-color 250ms;
|
|
194
|
+
overflow: hidden;
|
|
195
|
+
}
|
|
196
|
+
.view360-controls-volume:not(:disabled):hover, .view360-controls-volume:not(:disabled).view360-controls-fixed {
|
|
197
|
+
width: 112px;
|
|
198
|
+
}
|
|
199
|
+
.view360-controls-volume .view360-range {
|
|
200
|
+
flex: 1;
|
|
201
|
+
height: 100%;
|
|
202
|
+
padding: 0;
|
|
203
|
+
}
|
|
204
|
+
.view360-controls-volume .view360-range .view360-range-track {
|
|
205
|
+
width: calc(100% - 12px);
|
|
206
|
+
transform: translateX(-4px);
|
|
207
|
+
}
|
|
208
|
+
.view360-controls-volume .view360-controls-button {
|
|
209
|
+
margin: 0;
|
|
210
|
+
padding: 0;
|
|
211
|
+
width: 24px;
|
|
212
|
+
height: 24px;
|
|
213
|
+
flex-shrink: 0;
|
|
214
|
+
}
|
|
215
|
+
.view360-controls-volume:disabled {
|
|
216
|
+
opacity: 0.5;
|
|
217
|
+
pointer-events: none;
|
|
218
|
+
}
|
|
219
|
+
.view360-controls-volume:disabled * {
|
|
220
|
+
pointer-events: none;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
.view360-controls-pie {
|
|
224
|
+
width: 36px;
|
|
225
|
+
height: 36px;
|
|
226
|
+
margin: 6px;
|
|
227
|
+
padding: 0;
|
|
228
|
+
border-radius: 18px;
|
|
229
|
+
opacity: 0.8;
|
|
230
|
+
pointer-events: all;
|
|
231
|
+
cursor: pointer;
|
|
232
|
+
color: #fff;
|
|
233
|
+
position: relative;
|
|
234
|
+
transition: opacity 250ms;
|
|
235
|
+
}
|
|
236
|
+
.view360-controls-pie > svg {
|
|
237
|
+
position: absolute;
|
|
238
|
+
top: 0;
|
|
239
|
+
left: 0;
|
|
240
|
+
width: 100%;
|
|
241
|
+
height: 100%;
|
|
242
|
+
}
|
|
243
|
+
.view360-controls-pie:hover {
|
|
244
|
+
opacity: 1;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
.view360-range {
|
|
248
|
+
position: relative;
|
|
249
|
+
cursor: pointer;
|
|
250
|
+
pointer-events: all;
|
|
251
|
+
display: flex;
|
|
252
|
+
justify-content: center;
|
|
253
|
+
align-items: center;
|
|
254
|
+
touch-action: pan-y;
|
|
255
|
+
}
|
|
256
|
+
.view360-range:hover .view360-range-thumb {
|
|
257
|
+
opacity: 1;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
.view360-range-track {
|
|
261
|
+
width: 100%;
|
|
262
|
+
height: 4px;
|
|
263
|
+
border-radius: 4px;
|
|
264
|
+
position: relative;
|
|
265
|
+
background-color: rgba(230, 230, 230, 0.4);
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
.view360-range-filler,
|
|
269
|
+
.view360-range-load {
|
|
270
|
+
position: absolute;
|
|
271
|
+
left: 0;
|
|
272
|
+
top: 0;
|
|
273
|
+
width: 0;
|
|
274
|
+
height: 100%;
|
|
275
|
+
border-radius: 4px;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
.view360-range-filler {
|
|
279
|
+
background-color: #fff;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
.view360-range-load {
|
|
283
|
+
background-color: #757575;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
.view360-range-thumb {
|
|
287
|
+
width: 13px;
|
|
288
|
+
height: 13px;
|
|
289
|
+
position: absolute;
|
|
290
|
+
top: -5px;
|
|
291
|
+
left: -6.5px;
|
|
292
|
+
border-radius: 50%;
|
|
293
|
+
background-color: #fff;
|
|
294
|
+
box-sizing: border-box;
|
|
295
|
+
transition: opacity 250ms;
|
|
296
|
+
opacity: 0;
|
|
297
|
+
}
|
|
298
|
+
.view360-range-thumb.view360-controls-fixed {
|
|
299
|
+
opacity: 1;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
.view360-controls-unavailable {
|
|
303
|
+
display: none !important;
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
@media screen and (max-width: 768px) {
|
|
307
|
+
.view360-controls-button {
|
|
308
|
+
background-size: 18px 18px;
|
|
309
|
+
width: 30px;
|
|
310
|
+
height: 30px;
|
|
311
|
+
margin: 4.5px;
|
|
312
|
+
padding: 6px;
|
|
313
|
+
border-radius: 15px;
|
|
314
|
+
}
|
|
315
|
+
.view360-controls-volume .view360-controls-button {
|
|
316
|
+
width: 18px;
|
|
317
|
+
height: 18px;
|
|
318
|
+
}
|
|
319
|
+
.view360-controls-volume:not(:disabled):hover, .view360-controls-volume:not(:disabled).view360-controls-fixed {
|
|
320
|
+
width: 84px;
|
|
321
|
+
}
|
|
322
|
+
.view360-controls-pie {
|
|
323
|
+
width: 27px;
|
|
324
|
+
height: 27px;
|
|
325
|
+
margin: 4.5px;
|
|
326
|
+
padding: 0;
|
|
327
|
+
border-radius: 13.5px;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.view360-controls{position:absolute;top:0;left:0;width:100%;height:100%;padding:0;margin:0;border:0;pointer-events:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;z-index:1}.view360-main.view360-vr-presenting .view360-controls{display:none}.view360-controls-float-left,.view360-controls-float-right{position:absolute;display:flex;flex-direction:column}.view360-controls-float-left{left:0;top:0}.view360-controls-float-right{right:0;top:0}.view360-controls-main{position:absolute;bottom:0;left:0;width:100%;opacity:1;transition:none}.view360-controls-main.view360-controls-hidden{opacity:0;transition:opacity .5s}.view360-controls-main.view360-controls-hidden *{pointer-events:none}.view360-controls-main.view360-controls-fixed{opacity:1}.view360-controls-background{width:100%;height:calc(100% + 32px);position:absolute;left:0;bottom:0;background-image:linear-gradient(0deg,#323232,rgba(50,50,50,0))}.view360-controls-background.view360-controls-hidden{display:none}.view360-controls-mid{display:flex;flex-direction:row;position:relative}.view360-controls-left{display:flex;flex:1;justify-content:flex-start;align-items:center;flex-direction:row}.view360-controls-right{display:flex;align-items:center;flex-direction:row}.view360-controls-bottom{display:flex;align-items:center;flex-direction:row}.view360-controls-button{display:inline-block;background-color:transparent;cursor:pointer;border:0;position:relative;background-size:24px 24px;background-origin:content-box;background-repeat:no-repeat;box-sizing:border-box;pointer-events:all;border-radius:20px;transition:opacity 250ms;width:40px;height:40px;margin:6px;padding:8px;opacity:.8}.view360-controls-button:hover{opacity:1}.view360-controls-button.view360-controls-vr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48' viewBox='0 0 100 100'%3E%3Cg%3E%3Cpath d='M5,30 L95,30 L95,80 L55,80 L50,70 L45,80 L5,80 L5,30' fill='transparent' stroke='%23fff' stroke-width='8' stroke-linejoin='round' stroke-linecap='round'/%3E%3Cpath d='M5,30 L15,10 L85,10 L95,30' fill='transparent' stroke='%23fff' stroke-width='8' stroke-linejoin='round' stroke-linecap='round'/%3E%3Ccircle cx='30' cy='55' r='10' stroke='%23fff' stroke-width='8' fill='transparent' /%3E%3Ccircle cx='70' cy='55' r='10' stroke='%23fff' stroke-width='8' fill='transparent' /%3E%3C/g%3E%3C/svg%3E")}.view360-controls-button.view360-controls-play{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M7 4v16l13 -8z'%3E%3C/path%3E%3C/svg%3E")}.view360-controls-button.view360-controls-pause{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Crect x='6' y='5' width='4' height='14' rx='1'%3E%3C/rect%3E%3Crect x='14' y='5' width='4' height='14' rx='1'%3E%3C/rect%3E%3C/svg%3E")}.view360-controls-button.view360-controls-unmuted{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M15 8a5 5 0 0 1 0 8'%3E%3C/path%3E%3Cpath d='M17.7 5a9 9 0 0 1 0 14'%3E%3C/path%3E%3Cpath d='M6 15h-2a1 1 0 0 1 -1 -1v-4a1 1 0 0 1 1 -1h2l3.5 -4.5a0.8 .8 0 0 1 1.5 .5v14a0.8 .8 0 0 1 -1.5 .5l-3.5 -4.5'%3E%3C/path%3E%3C/svg%3E")}.view360-controls-button.view360-controls-muted{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M6 15h-2a1 1 0 0 1 -1 -1v-4a1 1 0 0 1 1 -1h2l3.5 -4.5a0.8 .8 0 0 1 1.5 .5v14a0.8 .8 0 0 1 -1.5 .5l-3.5 -4.5'%3E%3C/path%3E%3Cpath d='M16 10l4 4m0 -4l-4 4'%3E%3C/path%3E%3C/svg%3E")}.view360-controls-button.view360-controls-fullscreen{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M4 8v-2a2 2 0 0 1 2 -2h2'%3E%3C/path%3E%3Cpath d='M4 16v2a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v2'%3E%3C/path%3E%3Cpath d='M16 20h2a2 2 0 0 0 2 -2v-2'%3E%3C/path%3E%3C/svg%3E")}.view360-controls-button.view360-controls-fullscreen-exit{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23fff' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M15 19v-2a2 2 0 0 1 2 -2h2'%3E%3C/path%3E%3Cpath d='M15 5v2a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3Cpath d='M5 15h2a2 2 0 0 1 2 2v2'%3E%3C/path%3E%3Cpath d='M5 9h2a2 2 0 0 0 2 -2v-2'%3E%3C/path%3E%3C/svg%3E")}.view360-controls-button.view360-controls-gyro-enabled{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath fill='%23fff' d='M22.5 7.6v2.95q-1 .15-1.975.475-.975.325-1.875.825L16.5 9.7q1.35-.9 2.875-1.4 1.525-.5 3.125-.7Zm15.35 15.35q-.2 1.6-.7 3.125-.5 1.525-1.4 2.875L33.6 26.8q.5-.9.825-1.875.325-.975.475-1.975Zm3.8 20.45L1.3 3.05 3.45.9 43.8 41.25ZM7 41.4q-1.25 0-2.125-.875T4 38.4v-8.6h3v8.6h8.6v3ZM41 13V4.4h-8.6v-3H41q1.25 0 2.125.875T44 4.4V13ZM4 13V4.4q0-.55.2-1.1t.6-1l2.1 2.1V13Zm28.4 28.4v-3h8.5l2.1 2.1q-.4.45-.925.675-.525.225-1.075.225Zm-21.2-37-3-3h7.4v3ZM44 37.2l-3-3v-4.4h3ZM10.15 22.95h2.95q.5 3.7 3.1 6.3 2.6 2.6 6.3 3.1v2.95q-4.9-.55-8.35-4-3.45-3.45-4-8.35Zm4-11.35 2.1 2.05q-1.3 1.3-2.1 2.9-.8 1.6-1.05 3.4h-2.95q.25-2.4 1.275-4.525Q12.45 13.3 14.15 11.6ZM31.8 29.2l2.05 2.1q-1.7 1.7-3.825 2.725Q27.9 35.05 25.5 35.3v-2.95q1.8-.25 3.4-1.05 1.6-.8 2.9-2.1ZM25.5 7.6q4.9.55 8.35 4 3.45 3.45 4 8.35H34.9q-.5-3.7-3.1-6.3-2.6-2.6-6.3-3.1Z'/%3E%3C/svg%3E")}.view360-controls-button.view360-controls-gyro-disabled{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath fill='%23fff' d='M7 44q-1.2 0-2.1-.9Q4 42.2 4 41v-8.6h3V41h8.6v3ZM4 15.6V7q0-1.2.9-2.1Q5.8 4 7 4h8.6v3H7v8.6Zm18.5 22.25q-4.9-.55-8.35-4-3.45-3.45-4-8.35h2.95q.5 3.7 3.125 6.3 2.625 2.6 6.275 3.1ZM10.15 22.5q.55-4.9 4-8.35 3.45-3.45 8.35-4v2.95q-3.7.5-6.3 3.1-2.6 2.6-3.1 6.3Zm13.85 5q-1.45 0-2.475-1.025Q20.5 25.45 20.5 24q0-1.45 1.025-2.475Q22.55 20.5 24 20.5q1.45 0 2.475 1.025Q27.5 22.55 27.5 24q0 1.45-1.025 2.475Q25.45 27.5 24 27.5Zm1.5 10.35V34.9q3.7-.5 6.3-3.125 2.6-2.625 3.1-6.275h2.95q-.55 4.9-4 8.35-3.45 3.45-8.35 4Zm9.4-15.35q-.5-3.7-3.1-6.3-2.6-2.6-6.3-3.1v-2.95q4.9.55 8.35 4 3.45 3.45 4 8.35ZM32.4 44v-3H41v-8.6h3V41q0 1.2-.9 2.1-.9.9-2.1.9ZM41 15.6V7h-8.6V4H41q1.2 0 2.1.9.9.9.9 2.1v8.6Z'/%3E%3C/svg%3E")}.view360-controls-time{display:inline-block;vertical-align:top;white-space:nowrap;color:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-weight:400;font-size:14px;z-index:1}.view360-controls-time:first-child{padding:0 16px}.view360-controls-progress{flex:1;width:100%;padding:0 16px;box-sizing:border-box}.view360-controls-progress:not(:first-child){padding-left:0}.view360-controls-bottom .view360-controls-progress{padding-bottom:20px}.view360-controls-volume{display:inline-flex;flex-direction:row;align-items:center;transition:width 250ms,background-color 250ms;overflow:hidden}.view360-controls-volume:not(:disabled).view360-controls-fixed,.view360-controls-volume:not(:disabled):hover{width:112px}.view360-controls-volume .view360-range{flex:1;height:100%;padding:0}.view360-controls-volume .view360-range .view360-range-track{width:calc(100% - 12px);transform:translateX(-4px)}.view360-controls-volume .view360-controls-button{margin:0;padding:0;width:24px;height:24px;flex-shrink:0}.view360-controls-volume:disabled{opacity:.5;pointer-events:none}.view360-controls-volume:disabled *{pointer-events:none}.view360-controls-pie{width:36px;height:36px;margin:6px;padding:0;border-radius:18px;opacity:.8;pointer-events:all;cursor:pointer;color:#fff;position:relative;transition:opacity 250ms}.view360-controls-pie>svg{position:absolute;top:0;left:0;width:100%;height:100%}.view360-controls-pie:hover{opacity:1}.view360-range{position:relative;cursor:pointer;pointer-events:all;display:flex;justify-content:center;align-items:center;touch-action:pan-y}.view360-range:hover .view360-range-thumb{opacity:1}.view360-range-track{width:100%;height:4px;border-radius:4px;position:relative;background-color:rgba(230,230,230,.4)}.view360-range-filler,.view360-range-load{position:absolute;left:0;top:0;width:0;height:100%;border-radius:4px}.view360-range-filler{background-color:#fff}.view360-range-load{background-color:#757575}.view360-range-thumb{width:13px;height:13px;position:absolute;top:-5px;left:-6.5px;border-radius:50%;background-color:#fff;box-sizing:border-box;transition:opacity 250ms;opacity:0}.view360-range-thumb.view360-controls-fixed{opacity:1}.view360-controls-unavailable{display:none!important}@media screen and (max-width:768px){.view360-controls-button{background-size:18px 18px;width:30px;height:30px;margin:4.5px;padding:6px;border-radius:15px}.view360-controls-volume .view360-controls-button{width:18px;height:18px}.view360-controls-volume:not(:disabled).view360-controls-fixed,.view360-controls-volume:not(:disabled):hover{width:84px}.view360-controls-pie{width:27px;height:27px;margin:4.5px;padding:0;border-radius:13.5px}}
|
package/css/helper.css
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
.view360-container.is-square, .view360-container.is-1by1 {
|
|
2
|
+
padding-top: 100%;
|
|
3
|
+
}
|
|
4
|
+
.view360-container.is-5by4 {
|
|
5
|
+
padding-top: 80%;
|
|
6
|
+
}
|
|
7
|
+
.view360-container.is-4by3 {
|
|
8
|
+
padding-top: 75%;
|
|
9
|
+
}
|
|
10
|
+
.view360-container.is-3by2 {
|
|
11
|
+
padding-top: 66.6666%;
|
|
12
|
+
}
|
|
13
|
+
.view360-container.is-5by3 {
|
|
14
|
+
padding-top: 60%;
|
|
15
|
+
}
|
|
16
|
+
.view360-container.is-16by9 {
|
|
17
|
+
padding-top: 56.25%;
|
|
18
|
+
}
|
|
19
|
+
.view360-container.is-2by1 {
|
|
20
|
+
padding-top: 50%;
|
|
21
|
+
}
|
|
22
|
+
.view360-container.is-3by1 {
|
|
23
|
+
padding-top: 33.3333%;
|
|
24
|
+
}
|
|
25
|
+
.view360-container.is-4by5 {
|
|
26
|
+
padding-top: 125%;
|
|
27
|
+
}
|
|
28
|
+
.view360-container.is-3by4 {
|
|
29
|
+
padding-top: 133.3333%;
|
|
30
|
+
}
|
|
31
|
+
.view360-container.is-2by3 {
|
|
32
|
+
padding-top: 150%;
|
|
33
|
+
}
|
|
34
|
+
.view360-container.is-3by5 {
|
|
35
|
+
padding-top: 166.6666%;
|
|
36
|
+
}
|
|
37
|
+
.view360-container.is-9by16 {
|
|
38
|
+
padding-top: 177.7777%;
|
|
39
|
+
}
|
|
40
|
+
.view360-container.is-1by2 {
|
|
41
|
+
padding-top: 200%;
|
|
42
|
+
}
|
|
43
|
+
.view360-container.is-1by3 {
|
|
44
|
+
padding-top: 300%;
|
|
45
|
+
}
|
|
46
|
+
.view360-container:-ms-fullscreen {
|
|
47
|
+
padding-top: 0%;
|
|
48
|
+
}
|
|
49
|
+
.view360-container:fullscreen {
|
|
50
|
+
padding-top: 0%;
|
|
51
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.view360-container.is-1by1,.view360-container.is-square{padding-top:100%}.view360-container.is-5by4{padding-top:80%}.view360-container.is-4by3{padding-top:75%}.view360-container.is-3by2{padding-top:66.6666%}.view360-container.is-5by3{padding-top:60%}.view360-container.is-16by9{padding-top:56.25%}.view360-container.is-2by1{padding-top:50%}.view360-container.is-3by1{padding-top:33.3333%}.view360-container.is-4by5{padding-top:125%}.view360-container.is-3by4{padding-top:133.3333%}.view360-container.is-2by3{padding-top:150%}.view360-container.is-3by5{padding-top:166.6666%}.view360-container.is-9by16{padding-top:177.7777%}.view360-container.is-1by2{padding-top:200%}.view360-container.is-1by3{padding-top:300%}.view360-container:-ms-fullscreen{padding-top:0}.view360-container:fullscreen{padding-top:0}
|
package/css/hotspot.css
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
.view360-hotspots {
|
|
2
|
+
width: 100%;
|
|
3
|
+
height: 100%;
|
|
4
|
+
position: absolute;
|
|
5
|
+
top: 0;
|
|
6
|
+
left: 0;
|
|
7
|
+
pointer-events: none;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.view360-hotspot {
|
|
11
|
+
pointer-events: none;
|
|
12
|
+
visibility: hidden;
|
|
13
|
+
position: absolute;
|
|
14
|
+
top: 0;
|
|
15
|
+
left: 0;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.view360-hotspot-visible {
|
|
19
|
+
visibility: visible;
|
|
20
|
+
pointer-events: all;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.view360-hotspots{width:100%;height:100%;position:absolute;top:0;left:0;pointer-events:none}.view360-hotspot{pointer-events:none;visibility:hidden;position:absolute;top:0;left:0}.view360-hotspot-visible{visibility:visible;pointer-events:all}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
.view360-spinner {
|
|
2
|
+
position: absolute;
|
|
3
|
+
top: 0;
|
|
4
|
+
left: 0;
|
|
5
|
+
width: 100%;
|
|
6
|
+
height: 100%;
|
|
7
|
+
display: flex;
|
|
8
|
+
justify-content: center;
|
|
9
|
+
align-items: center;
|
|
10
|
+
background-color: rgba(0, 0, 0, 0.15);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.view360-spinner-ring {
|
|
14
|
+
top: 0;
|
|
15
|
+
left: 0;
|
|
16
|
+
padding: 0;
|
|
17
|
+
margin: 0;
|
|
18
|
+
width: 64px;
|
|
19
|
+
height: 64px;
|
|
20
|
+
box-sizing: content-box;
|
|
21
|
+
background-color: transparent;
|
|
22
|
+
border-style: solid;
|
|
23
|
+
border-radius: 50%;
|
|
24
|
+
border-width: 10px;
|
|
25
|
+
border-color: #fff;
|
|
26
|
+
border-bottom-color: transparent;
|
|
27
|
+
animation: view360-spin-animation 1.2s linear infinite;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
@keyframes view360-spin-animation {
|
|
31
|
+
0% {
|
|
32
|
+
transform: rotate(0deg);
|
|
33
|
+
}
|
|
34
|
+
100% {
|
|
35
|
+
transform: rotate(360deg);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.view360-spinner{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:rgba(0,0,0,.15)}.view360-spinner-ring{top:0;left:0;padding:0;margin:0;width:64px;height:64px;box-sizing:content-box;background-color:transparent;border-style:solid;border-radius:50%;border-width:10px;border-color:#fff;border-bottom-color:transparent;animation:view360-spin-animation 1.2s linear infinite}@keyframes view360-spin-animation{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}
|
package/css/variable.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
File without changes
|