@realsee/dnalogel 0.1.3 → 0.1.7-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/components/ARVideoFigure/ARVideoFigureMesh.js +56 -32
  2. package/components/ARVideoFigure/ARVideoFigureScene.js +30 -19
  3. package/components/ARVideoFigure/ImgBgTransparent.js +22 -6
  4. package/components/ARVideoFigure/ImgBgTransparentMesh.js +40 -30
  5. package/components/ARVideoFigure/fragmentShader.js +2 -0
  6. package/components/ARVideoFigure/index.js +22 -6
  7. package/components/ARVideoFigure/vertexShader.js +2 -0
  8. package/components/GLTFView/index.d.ts +104 -0
  9. package/components/GLTFView/index.js +181 -0
  10. package/components/GlassFilters/index.js +25 -1
  11. package/components/ModelView/ModelViewController.js +39 -29
  12. package/components/ModelView/index.js +4 -2
  13. package/components/PaintBrush/index.js +15 -1
  14. package/components/PanoTag/index.js +2 -0
  15. package/data/1aGKl9JmrlXMXx8d.js +2 -0
  16. package/data/54djM0oR6ky3Ey8e.d.ts +55 -0
  17. package/data/54djM0oR6ky3Ey8e.js +350 -0
  18. package/data/6gyq3v1verxD7JO1.js +2 -0
  19. package/data/8054djM0oR6ky3Ey8e.d.ts +55 -0
  20. package/data/8054djM0oR6ky3Ey8e.js +350 -0
  21. package/data/KpokNd82rwjhackhQTBEoYKHg8zGbPXe.js +2 -0
  22. package/data/PrXel3aqGbp34JQn.js +2 -0
  23. package/data/XJ6NMLWnkAY3Rdx8.js +2 -0
  24. package/data/YdoNP9K4rwQDwjJr.js +2 -0
  25. package/data/ZLvK29zj4L29Jowd.d.ts +55 -0
  26. package/data/ZLvK29zj4L29Jowd.js +372 -0
  27. package/data/auto3d-njL5J99VwCmnjtQElOmXQr.js +2 -0
  28. package/data/extrude-walls/ZLvK29zj4L29Jowd.d.ts +5 -0
  29. package/data/extrude-walls/ZLvK29zj4L29Jowd.js +14 -0
  30. package/data/extrude-walls/lo024DEgzanMj5BE.d.ts +5 -0
  31. package/data/extrude-walls/lo024DEgzanMj5BE.js +14 -0
  32. package/data/jd6oMOzPxnQ3BvxY_B7yw51J9rXlhYhjhGTOgRVqu6WeEqjNX.js +2 -0
  33. package/data/lo024DEgzanMj5BE.d.ts +55 -0
  34. package/data/lo024DEgzanMj5BE.js +966 -0
  35. package/data/oPzy3ApbjjpD8YdR.js +2 -0
  36. package/data/qjAxMG4XbPn96wKG.js +2 -0
  37. package/data/rXel3aPQRRBD4JQn.js +2 -0
  38. package/data/vLykj3NWrllMrG06.js +2 -0
  39. package/data/wz0QV9KA4ugyo9ME.js +2 -0
  40. package/data/zxMawr9raSg8LYjG.js +2 -0
  41. package/examples/FiveStateController/index.js +9 -15
  42. package/examples/VRHouse/Mobile.js +15 -1
  43. package/examples/VRHouse/PC.js +15 -1
  44. package/examples/VRHouse/index.js +15 -1
  45. package/index.js +4 -2
  46. package/libs/gltf-viewer/Subscribe.d.ts +76 -0
  47. package/libs/gltf-viewer/Subscribe.js +231 -0
  48. package/libs/gltf-viewer/coordsMoveByOffset.d.ts +13 -0
  49. package/libs/gltf-viewer/coordsMoveByOffset.js +22 -0
  50. package/libs/gltf-viewer/coordsToDirection.d.ts +5 -0
  51. package/{components/PBRView/index.js → libs/gltf-viewer/coordsToDirection.js} +29 -19
  52. package/libs/gltf-viewer/formatRad.d.ts +1 -0
  53. package/libs/gltf-viewer/formatRad.js +13 -0
  54. package/libs/gltf-viewer/getFrameTime.d.ts +1 -0
  55. package/libs/gltf-viewer/getFrameTime.js +28 -0
  56. package/libs/gltf-viewer/index.d.ts +60 -0
  57. package/libs/gltf-viewer/index.js +672 -0
  58. package/libs/gltf-viewer/mouseWheel.d.ts +2 -0
  59. package/libs/gltf-viewer/mouseWheel.js +59 -0
  60. package/libs/gltf-viewer/requestAnimationFrame.d.ts +1 -0
  61. package/libs/gltf-viewer/requestAnimationFrame.js +18 -0
  62. package/libs/gltf-viewer/requestAnimationFrameInterval.d.ts +1 -0
  63. package/libs/gltf-viewer/requestAnimationFrameInterval.js +31 -0
  64. package/libs/gltf-viewer/uuid.d.ts +4 -0
  65. package/libs/gltf-viewer/uuid.js +28 -0
  66. package/package.json +7 -3
  67. package/plugins/AutoPreloadPlugin/index.js +26 -0
  68. package/plugins/CSS3DRenderPlugin/components/Marker/index.js +24 -16
  69. package/plugins/CSS3DRenderPlugin/index.js +31 -3
  70. package/plugins/CameraMovementPlugin/index.js +33 -9
  71. package/plugins/CameraMovementPlugin/typing.js +2 -0
  72. package/plugins/ModelChassisCompassPlugin/index.js +23 -9
  73. package/plugins/ModelEntryDoorGuidePlugin/index.d.ts +2 -2
  74. package/plugins/ModelEntryDoorGuidePlugin/index.js +43 -22
  75. package/plugins/ModelExtrudeWallsPlugin/index.d.ts +16 -0
  76. package/plugins/ModelExtrudeWallsPlugin/index.js +252 -0
  77. package/plugins/ModelRoomLabelPlugin/Controller.js +29 -23
  78. package/plugins/ModelRoomLabelPlugin/RoomLabelItem.js +21 -3
  79. package/plugins/ModelRoomLabelPlugin/RoomLabelItems.js +35 -25
  80. package/plugins/ModelRoomLabelPlugin/index.js +2 -0
  81. package/plugins/ModelRoomLabelPlugin/typings.js +2 -0
  82. package/plugins/ModelRoomLabelPlugin/utils/parseData.js +6 -0
  83. package/plugins/ModelTVVideoPlugin/index.js +100 -16
  84. package/plugins/ModelViewPlugin/index.js +25 -1
  85. package/plugins/PanoCursorRaycasterPlugin/components/MovePointTowardsCamera.js +29 -25
  86. package/plugins/PanoCursorRaycasterPlugin/components/PointAxesHelper.js +15 -1
  87. package/plugins/PanoCursorRaycasterPlugin/index.js +13 -6
  88. package/plugins/PanoCursorRaycasterPlugin/utils/addLineToFive.js +4 -2
  89. package/plugins/PanoCursorRaycasterPlugin/utils/createLine.js +15 -1
  90. package/plugins/PanoDoorLabelPlugin/index.js +2 -0
  91. package/plugins/PanoIRobotPlugin/index.js +2 -0
  92. package/plugins/PanoMaskSelectorPlugin/compare.js +2 -0
  93. package/plugins/PanoMaskSelectorPlugin/createBox.js +22 -1
  94. package/plugins/PanoMaskSelectorPlugin/createTextures.js +17 -1
  95. package/plugins/PanoMaskSelectorPlugin/fragmentShader.js +2 -0
  96. package/plugins/PanoMaskSelectorPlugin/index.js +106 -18
  97. package/plugins/PanoMaskSelectorPlugin/vertexShader.js +2 -0
  98. package/plugins/PanoRulerPlugin/data/roomInfo.js +2 -0
  99. package/plugins/PanoRulerPlugin/data/roomRules.js +2 -0
  100. package/plugins/PanoRulerPlugin/index.js +68 -20
  101. package/plugins/PanoRulerPlugin/typings.js +2 -0
  102. package/plugins/PanoTVVideoPlugin/index.d.ts +2 -0
  103. package/plugins/PanoTVVideoPlugin/index.js +108 -26
  104. package/plugins/TreasurePlugin/Controller.js +58 -52
  105. package/plugins/TreasurePlugin/TreasureFaceAnime.js +36 -21
  106. package/plugins/TreasurePlugin/TreasureObject.js +60 -56
  107. package/plugins/TreasurePlugin/TreasureOpenAnime.js +38 -19
  108. package/plugins/TreasurePlugin/constants.js +2 -0
  109. package/plugins/TreasurePlugin/index.js +2 -0
  110. package/plugins/TreasurePlugin/typings.js +2 -0
  111. package/plugins/floorplan/Assets/floorplanExtraObject.js +2 -0
  112. package/plugins/floorplan/ModelFloorplanPlugin/Controller.js +71 -88
  113. package/plugins/floorplan/ModelFloorplanPlugin/components/Camera.js +21 -3
  114. package/plugins/floorplan/ModelFloorplanPlugin/components/Compass.js +17 -3
  115. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomHighlight.js +28 -4
  116. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomLabels.js +23 -3
  117. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/index.js +20 -6
  118. package/plugins/floorplan/ModelFloorplanPlugin/components/index.js +29 -7
  119. package/plugins/floorplan/ModelFloorplanPlugin/controller.style.js +2 -0
  120. package/plugins/floorplan/ModelFloorplanPlugin/index.js +4 -2
  121. package/plugins/floorplan/ModelFloorplanPlugin/typings/events.type.js +2 -0
  122. package/plugins/floorplan/ModelFloorplanPlugin/utils/constant.js +2 -0
  123. package/plugins/floorplan/ModelFloorplanPlugin/utils/correctFiveState.js +14 -22
  124. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.js +25 -3
  125. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.style.js +6 -2
  126. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/ExtraObjects.js +19 -3
  127. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/RoomHighlight.js +28 -4
  128. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/index.js +22 -6
  129. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/index.js +29 -19
  130. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/index.style.js +2 -0
  131. package/plugins/floorplan/PanoFloorplanRadarPlugin/Controller.js +44 -47
  132. package/plugins/floorplan/PanoFloorplanRadarPlugin/index.js +4 -2
  133. package/plugins/floorplan/TopviewFloorplanPlugin/Controller.js +50 -55
  134. package/plugins/floorplan/TopviewFloorplanPlugin/index.js +2 -0
  135. package/plugins/floorplan/TopviewFloorplanPlugin/style.js +2 -0
  136. package/plugins/floorplan/components/FloorplanImage.js +15 -1
  137. package/plugins/floorplan/typings/floorplanData.js +2 -0
  138. package/plugins/floorplan/typings/floorplanServerData.js +2 -0
  139. package/plugins/floorplan/utils/formatData.js +28 -10
  140. package/plugins/floorplan/utils/formatPosition.js +10 -8
  141. package/shared-utils/Preloader.js +6 -0
  142. package/shared-utils/Subscribe.js +36 -16
  143. package/shared-utils/animationFrame/BetterTween.js +28 -27
  144. package/shared-utils/animationFrame/calculateProgress.js +2 -0
  145. package/shared-utils/animationFrame/formatRad.js +2 -0
  146. package/shared-utils/animationFrame/index.js +12 -0
  147. package/shared-utils/animationFrame/tween.js +17 -1
  148. package/shared-utils/changeModelCanvansOpacity.js +14 -0
  149. package/shared-utils/createCanvasTextTexture.js +2 -0
  150. package/shared-utils/createFiveContainer.js +23 -17
  151. package/shared-utils/createLine/index.js +15 -1
  152. package/shared-utils/debounce.js +4 -0
  153. package/shared-utils/equal.js +15 -4
  154. package/shared-utils/filter.js +36 -2
  155. package/shared-utils/five/changeMode.js +13 -17
  156. package/shared-utils/five/useFivePlugin.js +2 -0
  157. package/shared-utils/formatRad.js +2 -0
  158. package/shared-utils/getPxmm.js +15 -1
  159. package/shared-utils/getRandomColor.js +10 -0
  160. package/shared-utils/isNil.js +2 -0
  161. package/shared-utils/isTruelyObject.js +4 -0
  162. package/shared-utils/math/evenNumber.js +2 -0
  163. package/shared-utils/math/planimetry.js +10 -0
  164. package/shared-utils/math/rad2Deg.js +2 -0
  165. package/shared-utils/nearlyEqual.js +2 -0
  166. package/shared-utils/nextFrame.js +2 -0
  167. package/shared-utils/noop.js +2 -0
  168. package/shared-utils/object3d2LocalMatrix.js +20 -14
  169. package/shared-utils/px2rem.js +10 -0
  170. package/shared-utils/tap.js +2 -0
  171. package/shared-utils/three/centerPoint.js +2 -0
  172. package/shared-utils/three/getExtraModelLoader.js +14 -0
  173. package/shared-utils/three/getNormal.js +4 -0
  174. package/shared-utils/three/getTextureLoader.js +16 -0
  175. package/shared-utils/three/loadFbxObj.js +13 -5
  176. package/shared-utils/three/loadTexture.js +13 -5
  177. package/shared-utils/three/transformPositionToVector3.js +2 -0
  178. package/shared-utils/three/transfromToMeshBasicMaterial.js +6 -0
  179. package/shared-utils/throttle.js +4 -0
  180. package/shared-utils/to.js +8 -4
  181. package/shared-utils/useDebounce.js +6 -0
  182. package/shared-utils/useThrottle.js +6 -0
  183. package/shared-utils/uuid.js +8 -0
  184. package/shared-utils/vectorTocoordinates.js +2 -0
  185. package/typedoc/components.js +2 -0
  186. package/typedoc/libs.d.ts +1 -0
  187. package/typedoc/libs.js +7 -0
  188. package/typedoc/plugins.js +2 -0
  189. package/typedoc/shared-utils.js +2 -0
  190. package/typedoc/typings.js +2 -0
  191. package/typings/math.type.js +2 -0
  192. package/typings/utils.type.js +2 -0
  193. package/components/PBRView/index.d.ts +0 -14
@@ -1,12 +1,92 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
3
+ require("core-js/modules/es.string.iterator.js");
4
+
5
+ require("core-js/modules/es.weak-map.js");
6
+
7
+ require("core-js/modules/web.dom-collections.iterator.js");
8
+
9
+ require("core-js/modules/es.object.define-property.js");
10
+
11
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
12
+
13
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
14
+
15
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
16
 
5
17
  Object.defineProperty(exports, "__esModule", {
6
18
  value: true
7
19
  });
8
20
  exports.PanoMaskSelectorPlugin = void 0;
9
21
 
22
+ require("core-js/modules/es.array.iterator.js");
23
+
24
+ require("core-js/modules/es.array-buffer.slice.js");
25
+
26
+ require("core-js/modules/es.object.to-string.js");
27
+
28
+ require("core-js/modules/es.typed-array.uint8-array.js");
29
+
30
+ require("core-js/modules/es.typed-array.copy-within.js");
31
+
32
+ require("core-js/modules/es.typed-array.every.js");
33
+
34
+ require("core-js/modules/es.typed-array.fill.js");
35
+
36
+ require("core-js/modules/es.typed-array.filter.js");
37
+
38
+ require("core-js/modules/es.typed-array.find.js");
39
+
40
+ require("core-js/modules/es.typed-array.find-index.js");
41
+
42
+ require("core-js/modules/es.typed-array.for-each.js");
43
+
44
+ require("core-js/modules/es.typed-array.includes.js");
45
+
46
+ require("core-js/modules/es.typed-array.index-of.js");
47
+
48
+ require("core-js/modules/es.typed-array.iterator.js");
49
+
50
+ require("core-js/modules/es.typed-array.join.js");
51
+
52
+ require("core-js/modules/es.typed-array.last-index-of.js");
53
+
54
+ require("core-js/modules/es.typed-array.map.js");
55
+
56
+ require("core-js/modules/es.typed-array.reduce.js");
57
+
58
+ require("core-js/modules/es.typed-array.reduce-right.js");
59
+
60
+ require("core-js/modules/es.typed-array.reverse.js");
61
+
62
+ require("core-js/modules/es.typed-array.set.js");
63
+
64
+ require("core-js/modules/es.typed-array.slice.js");
65
+
66
+ require("core-js/modules/es.typed-array.some.js");
67
+
68
+ require("core-js/modules/es.typed-array.sort.js");
69
+
70
+ require("core-js/modules/es.typed-array.subarray.js");
71
+
72
+ require("core-js/modules/es.typed-array.to-locale-string.js");
73
+
74
+ require("core-js/modules/es.typed-array.to-string.js");
75
+
76
+ require("core-js/modules/es.array.fill.js");
77
+
78
+ require("core-js/modules/es.array.slice.js");
79
+
80
+ require("core-js/modules/es.array.find.js");
81
+
82
+ require("core-js/modules/es.array.for-each.js");
83
+
84
+ require("core-js/modules/web.dom-collections.for-each.js");
85
+
86
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
87
+
88
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
89
+
10
90
  var THREE = _interopRequireWildcard(require("three"));
11
91
 
12
92
  var _five = require("@realsee/five");
@@ -21,10 +101,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
101
 
22
102
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
103
 
24
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
25
-
26
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
27
-
28
104
  var PanoMaskSelectorPlugin = function PanoMaskSelectorPlugin(five) {
29
105
  var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
30
106
  var state = {
@@ -57,9 +133,11 @@ var PanoMaskSelectorPlugin = function PanoMaskSelectorPlugin(five) {
57
133
 
58
134
  if (state.box) {
59
135
  five.scene.remove(state.box);
136
+ state.box = undefined;
60
137
  }
61
138
 
62
139
  var panoramaImgs = state.data.panoramaImgs[five.panoIndex];
140
+ state.currentLoadedIndex = five.panoIndex;
63
141
 
64
142
  if (!panoramaImgs) {
65
143
  state.textures = undefined;
@@ -73,13 +151,13 @@ var PanoMaskSelectorPlugin = function PanoMaskSelectorPlugin(five) {
73
151
  thickness: ((_state$data$config2 = state.data.config) === null || _state$data$config2 === void 0 ? void 0 : _state$data$config2.thickness) || 0.005
74
152
  });
75
153
  five.scene.add(state.box);
76
- state.currentLoadedIndex = five.panoIndex;
154
+ five.needsRender = true;
77
155
  return true;
78
156
  };
79
157
 
80
158
  var load = /*#__PURE__*/function () {
81
- var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(data) {
82
- return regeneratorRuntime.wrap(function _callee$(_context) {
159
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(data) {
160
+ return _regenerator["default"].wrap(function _callee$(_context) {
83
161
  while (1) {
84
162
  switch (_context.prev = _context.next) {
85
163
  case 0:
@@ -95,17 +173,17 @@ var PanoMaskSelectorPlugin = function PanoMaskSelectorPlugin(five) {
95
173
  }, _callee);
96
174
  }));
97
175
 
98
- return function load(_x) {
176
+ return function load(_x2) {
99
177
  return _ref.apply(this, arguments);
100
178
  };
101
179
  }();
102
180
 
103
181
  var select = /*#__PURE__*/function () {
104
- var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(x, y) {
182
+ var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(_x, _y) {
105
183
  var _state$data;
106
184
 
107
- var element, pixel, renderTarget, pickingBuffer, camera, renderer, newScence, observer, newBox, unit8ArrayGroup, i, selectedColor, colorMaps, object;
108
- return regeneratorRuntime.wrap(function _callee2$(_context2) {
185
+ var element, pixel, x, y, renderTarget, pickingBuffer, camera, renderer, newScence, observer, newBox, unit8ArrayGroup, i, selectedColor, colorMaps, object;
186
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
109
187
  while (1) {
110
188
  switch (_context2.prev = _context2.next) {
111
189
  case 0:
@@ -141,17 +219,27 @@ var PanoMaskSelectorPlugin = function PanoMaskSelectorPlugin(five) {
141
219
  return _context2.abrupt("return", false);
142
220
 
143
221
  case 8:
222
+ if (five.renderer) {
223
+ _context2.next = 10;
224
+ break;
225
+ }
226
+
227
+ return _context2.abrupt("return", false);
228
+
229
+ case 10:
144
230
  element = five.getElement();
145
231
 
146
232
  if (element) {
147
- _context2.next = 11;
233
+ _context2.next = 13;
148
234
  break;
149
235
  }
150
236
 
151
237
  return _context2.abrupt("return", false);
152
238
 
153
- case 11:
239
+ case 13:
154
240
  pixel = 1;
241
+ x = _x * five.renderer.getPixelRatio();
242
+ y = _y * five.renderer.getPixelRatio();
155
243
  renderTarget = new THREE.WebGLRenderTarget(pixel, pixel);
156
244
  pickingBuffer = new Uint8Array(4 * pixel * pixel);
157
245
  camera = five.camera.clone();
@@ -183,20 +271,20 @@ var PanoMaskSelectorPlugin = function PanoMaskSelectorPlugin(five) {
183
271
  });
184
272
 
185
273
  if (object) {
186
- _context2.next = 34;
274
+ _context2.next = 38;
187
275
  break;
188
276
  }
189
277
 
190
278
  return _context2.abrupt("return", false);
191
279
 
192
- case 34:
280
+ case 38:
193
281
  state.box.material.forEach(function (m) {
194
282
  return m.uniforms.selectedColor.value = selectedColor;
195
283
  });
196
284
  five.needsRender = true;
197
285
  return _context2.abrupt("return", object);
198
286
 
199
- case 37:
287
+ case 41:
200
288
  case "end":
201
289
  return _context2.stop();
202
290
  }
@@ -204,7 +292,7 @@ var PanoMaskSelectorPlugin = function PanoMaskSelectorPlugin(five) {
204
292
  }, _callee2);
205
293
  }));
206
294
 
207
- return function select(_x2, _x3) {
295
+ return function select(_x3, _x4) {
208
296
  return _ref2.apply(this, arguments);
209
297
  };
210
298
  }();
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -1,39 +1,87 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.array.from.js");
4
+
5
+ require("core-js/modules/es.string.iterator.js");
6
+
7
+ require("core-js/modules/es.symbol.js");
8
+
9
+ require("core-js/modules/es.symbol.description.js");
10
+
11
+ require("core-js/modules/es.symbol.iterator.js");
12
+
13
+ require("core-js/modules/es.array.iterator.js");
14
+
15
+ require("core-js/modules/web.dom-collections.iterator.js");
16
+
17
+ require("core-js/modules/es.array.is-array.js");
18
+
19
+ require("core-js/modules/es.object.define-property.js");
20
+
21
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
22
+
3
23
  Object.defineProperty(exports, "__esModule", {
4
24
  value: true
5
25
  });
6
26
  exports["default"] = exports.PanoRulerPlugin = void 0;
7
27
 
8
- var _five = require("@realsee/five");
28
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
29
 
10
- var _three = require("three");
30
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
31
 
12
- var _planimetry = require("../../shared-utils/math/planimetry");
32
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
33
 
14
- var _nextFrame = require("../../shared-utils/nextFrame");
34
+ require("core-js/modules/es.array.for-each.js");
15
35
 
16
- var _throttle = _interopRequireDefault(require("../../shared-utils/throttle"));
36
+ require("core-js/modules/web.dom-collections.for-each.js");
17
37
 
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
38
+ require("core-js/modules/es.function.name.js");
19
39
 
20
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
40
+ require("core-js/modules/es.array.sort.js");
21
41
 
22
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
42
+ require("core-js/modules/es.number.to-fixed.js");
23
43
 
24
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
44
+ require("core-js/modules/es.array.map.js");
25
45
 
26
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
46
+ require("core-js/modules/es.object.assign.js");
27
47
 
28
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
48
+ require("core-js/modules/es.object.to-string.js");
29
49
 
30
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
50
+ require("core-js/modules/es.promise.js");
31
51
 
32
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
52
+ require("core-js/modules/es.object.keys.js");
53
+
54
+ require("core-js/modules/es.array.index-of.js");
55
+
56
+ require("core-js/modules/es.regexp.exec.js");
33
57
 
34
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
58
+ require("core-js/modules/es.string.split.js");
35
59
 
36
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
60
+ require("core-js/modules/es.date.to-string.js");
61
+
62
+ require("core-js/modules/es.regexp.to-string.js");
63
+
64
+ require("core-js/modules/es.array.filter.js");
65
+
66
+ require("core-js/modules/es.array.slice.js");
67
+
68
+ require("core-js/modules/es.string.sub.js");
69
+
70
+ var _five = require("@realsee/five");
71
+
72
+ var _three = require("three");
73
+
74
+ var _planimetry = require("../../shared-utils/math/planimetry");
75
+
76
+ var _nextFrame = require("../../shared-utils/nextFrame");
77
+
78
+ var _throttle = _interopRequireDefault(require("../../shared-utils/throttle"));
79
+
80
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
81
+
82
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
83
+
84
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
37
85
 
38
86
  var getDistance = function getDistance(p1, p2) {
39
87
  return Math.sqrt(Math.pow(p1.z - p2.z, 2) + Math.pow(p1.x - p2.x, 2));
@@ -51,7 +99,7 @@ var getRoomHeightInfo = function getRoomHeightInfo(roomInfo, five) {
51
99
  raycaster.set(point, new _three.Vector3(0, 1, 0));
52
100
 
53
101
  var _five$model$intersect = five.model.intersectRaycaster(raycaster),
54
- _five$model$intersect2 = _slicedToArray(_five$model$intersect, 1),
102
+ _five$model$intersect2 = (0, _slicedToArray2["default"])(_five$model$intersect, 1),
55
103
  intersection = _five$model$intersect2[0];
56
104
 
57
105
  var verticalY = intersection ? intersection.point.y : null;
@@ -242,9 +290,9 @@ var PanoRulerPlugin = function PanoRulerPlugin(five, params) {
242
290
  };
243
291
 
244
292
  var load = /*#__PURE__*/function () {
245
- var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(_roomInfo, _roomRules, options) {
293
+ var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_roomInfo, _roomRules, options) {
246
294
  var roomInfo, roomRules;
247
- return regeneratorRuntime.wrap(function _callee$(_context) {
295
+ return _regenerator["default"].wrap(function _callee$(_context) {
248
296
  while (1) {
249
297
  switch (_context.prev = _context.next) {
250
298
  case 0:
@@ -401,7 +449,7 @@ var PanoRulerPlugin = function PanoRulerPlugin(five, params) {
401
449
  var angleB = pointB.clone().setY(0).sub(cameraPosition).normalize().angleTo(cameraDirection.clone().setY(0));
402
450
  return angleA - angleB;
403
451
  }),
404
- _rule$name$origins$s2 = _slicedToArray(_rule$name$origins$s, 1),
452
+ _rule$name$origins$s2 = (0, _slicedToArray2["default"])(_rule$name$origins$s, 1),
405
453
  visibleOrigin = _rule$name$origins$s2[0];
406
454
 
407
455
  var shownNotVerticalRules = [];
@@ -416,7 +464,7 @@ var PanoRulerPlugin = function PanoRulerPlugin(five, params) {
416
464
  vertical = _step4$value.vertical,
417
465
  _$element3 = _step4$value.$element;
418
466
 
419
- var _rule = _slicedToArray(rule, 2),
467
+ var _rule = (0, _slicedToArray2["default"])(rule, 2),
420
468
  start = _rule[0],
421
469
  end = _rule[1];
422
470
 
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -1,3 +1,4 @@
1
+ import * as THREE from 'three';
1
2
  import { FivePlugin } from '@realsee/five';
2
3
  export declare type PanoTVVideoPluginPoints = Record<string, {
3
4
  position: {
@@ -19,6 +20,7 @@ export interface PanoTVVideoPluginExportType {
19
20
  enable: () => void;
20
21
  disable: () => void;
21
22
  load: (data: PanoTVVideoPluginData, videoElement?: HTMLVideoElement) => void;
23
+ getVideoTexture: () => THREE.VideoTexture | undefined;
22
24
  }
23
25
  export declare const PanoTVVideoPlugin: FivePlugin<PanoTVVideoPluginParameterType, PanoTVVideoPluginExportType>;
24
26
  export default PanoTVVideoPlugin;
@@ -1,31 +1,107 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
3
+ require("core-js/modules/es.weak-map.js");
4
+
5
+ require("core-js/modules/es.object.define-property.js");
6
+
7
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
8
+
9
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
10
+
11
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
12
 
5
13
  Object.defineProperty(exports, "__esModule", {
6
14
  value: true
7
15
  });
8
16
  exports["default"] = exports.PanoTVVideoPlugin = void 0;
9
17
 
10
- var THREE = _interopRequireWildcard(require("three"));
18
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
19
 
12
- var _five = require("@realsee/five");
20
+ require("core-js/modules/es.object.to-string.js");
13
21
 
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
22
+ require("core-js/modules/es.promise.js");
15
23
 
16
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
24
+ require("core-js/modules/es.array.iterator.js");
25
+
26
+ require("core-js/modules/es.string.iterator.js");
27
+
28
+ require("core-js/modules/web.dom-collections.iterator.js");
29
+
30
+ require("core-js/modules/web.url.js");
31
+
32
+ require("core-js/modules/web.url-search-params.js");
33
+
34
+ require("core-js/modules/es.object.assign.js");
35
+
36
+ require("core-js/modules/es.array.map.js");
37
+
38
+ require("core-js/modules/es.array.for-each.js");
39
+
40
+ require("core-js/modules/web.dom-collections.for-each.js");
41
+
42
+ require("core-js/modules/es.array-buffer.slice.js");
43
+
44
+ require("core-js/modules/es.typed-array.float32-array.js");
45
+
46
+ require("core-js/modules/es.typed-array.copy-within.js");
47
+
48
+ require("core-js/modules/es.typed-array.every.js");
49
+
50
+ require("core-js/modules/es.typed-array.fill.js");
51
+
52
+ require("core-js/modules/es.typed-array.filter.js");
53
+
54
+ require("core-js/modules/es.typed-array.find.js");
55
+
56
+ require("core-js/modules/es.typed-array.find-index.js");
57
+
58
+ require("core-js/modules/es.typed-array.for-each.js");
59
+
60
+ require("core-js/modules/es.typed-array.includes.js");
61
+
62
+ require("core-js/modules/es.typed-array.index-of.js");
63
+
64
+ require("core-js/modules/es.typed-array.iterator.js");
65
+
66
+ require("core-js/modules/es.typed-array.join.js");
17
67
 
18
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
68
+ require("core-js/modules/es.typed-array.last-index-of.js");
19
69
 
20
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
70
+ require("core-js/modules/es.typed-array.map.js");
21
71
 
22
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
72
+ require("core-js/modules/es.typed-array.reduce.js");
23
73
 
24
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
74
+ require("core-js/modules/es.typed-array.reduce-right.js");
25
75
 
26
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
76
+ require("core-js/modules/es.typed-array.reverse.js");
27
77
 
28
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
78
+ require("core-js/modules/es.typed-array.set.js");
79
+
80
+ require("core-js/modules/es.typed-array.slice.js");
81
+
82
+ require("core-js/modules/es.typed-array.some.js");
83
+
84
+ require("core-js/modules/es.typed-array.sort.js");
85
+
86
+ require("core-js/modules/es.typed-array.subarray.js");
87
+
88
+ require("core-js/modules/es.typed-array.to-locale-string.js");
89
+
90
+ require("core-js/modules/es.typed-array.to-string.js");
91
+
92
+ require("core-js/modules/es.typed-array.uint32-array.js");
93
+
94
+ require("core-js/modules/es.function.name.js");
95
+
96
+ require("core-js/modules/es.array.concat.js");
97
+
98
+ var THREE = _interopRequireWildcard(require("three"));
99
+
100
+ var _five = require("@realsee/five");
101
+
102
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
103
+
104
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
105
 
30
106
  var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
31
107
  var state = {
@@ -39,7 +115,7 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
39
115
  };
40
116
  var videoMeshes = [];
41
117
 
42
- var getImageTexture = function getImageTexture(source) {
118
+ var createImageTexture = function createImageTexture(source) {
43
119
  var texture = new THREE.TextureLoader().load(source);
44
120
  texture.minFilter = THREE.LinearFilter;
45
121
  texture.magFilter = THREE.LinearFilter;
@@ -47,7 +123,7 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
47
123
  return texture;
48
124
  };
49
125
 
50
- var getVideoTexture = function getVideoTexture(source, video) {
126
+ var createVideoTexture = function createVideoTexture(source, video) {
51
127
  return new Promise(function (resolve, reject) {
52
128
  var xhr = new XMLHttpRequest();
53
129
 
@@ -85,6 +161,10 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
85
161
  });
86
162
  };
87
163
 
164
+ var getVideoTexture = function getVideoTexture() {
165
+ return state.videoTexture;
166
+ };
167
+
88
168
  var getPoints = function getPoints(panoIndex) {
89
169
  if (!state.rectPoints) return [];
90
170
  var rectPoints_ = state.rectPoints[panoIndex];
@@ -198,14 +278,14 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
198
278
  points = data.points;
199
279
  state.videoSource = video_src;
200
280
  state.rectPoints = points;
201
- state.imageTexture = getImageTexture(video_poster_src);
281
+ state.imageTexture = createImageTexture(video_poster_src);
202
282
  if (videoElement) state.videoElement = videoElement;
203
283
  var panoIndex = five.state.panoIndex;
204
284
  var meshes = videoMeshes[panoIndex] = createPanoVideoMeshes(panoIndex);
205
285
  meshes.forEach(function (mesh) {
206
286
  return five.scene.add(mesh);
207
287
  });
208
- getVideoTexture(state.videoSource, state.videoElement).then(function (videoTexture_) {
288
+ createVideoTexture(state.videoSource, state.videoElement).then(function (videoTexture_) {
209
289
  if (videoTexture_.videoSource !== state.videoSource) return;
210
290
  state.videoTexture = videoTexture_;
211
291
 
@@ -294,22 +374,23 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
294
374
  five.on('modeChange', function (mode) {
295
375
  if (!state.enabled) return;
296
376
  if (mode === _five.Five.Mode.Panorama) return;
297
- videoMeshes.forEach(function () {// if (meshes) {
298
- // meshes.forEach((mesh) => {
299
- // mesh.geometry.dispose()
300
- // mesh.material.dispose()
301
- // five.scene.remove(mesh)
302
- // })
303
- // videoMeshes[index] = undefined
304
- // if (state.videoTexture) state.videoTexture.image.pause()
305
- // }
377
+ videoMeshes.forEach(function (meshes, index) {
378
+ if (meshes) {
379
+ meshes.forEach(function (mesh) {
380
+ mesh.geometry.dispose();
381
+ mesh.material.dispose();
382
+ five.scene.remove(mesh);
383
+ });
384
+ videoMeshes[index] = undefined;
385
+ if (state.videoTexture) state.videoTexture.image.pause();
386
+ }
306
387
  });
307
388
  });
308
389
  five.on('wantsTapGesture', function (raycaster) {
309
390
  if (!state.enabled) return;
310
391
  var meshArray = [];
311
392
  videoMeshes.forEach(function (meshes) {
312
- if (meshes) meshArray.push.apply(meshArray, _toConsumableArray(meshes));
393
+ if (meshes) meshArray.push.apply(meshArray, (0, _toConsumableArray2["default"])(meshes));
313
394
  });
314
395
 
315
396
  if (raycaster.intersectObjects(meshArray).length) {
@@ -342,7 +423,8 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
342
423
  return {
343
424
  enable: enable,
344
425
  disable: disable,
345
- load: load
426
+ load: load,
427
+ getVideoTexture: getVideoTexture
346
428
  };
347
429
  };
348
430