@anov/3d-ability 0.0.142 → 0.0.144

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 (257) hide show
  1. package/dist/business/Animation/motion/index.js +56 -35
  2. package/dist/business/Animation/motion/index.js.map +1 -1
  3. package/dist/business/Animation/type.js +2 -2
  4. package/dist/business/Area/Fence/FenceBase.js +187 -146
  5. package/dist/business/Area/Fence/FenceBase.js.map +1 -1
  6. package/dist/business/Area/Fence/fence_base_01.js +112 -120
  7. package/dist/business/Area/Fence/fence_base_01.js.map +1 -1
  8. package/dist/business/Area/Fence/fence_feeting_01.js +130 -218
  9. package/dist/business/Area/Fence/fence_feeting_01.js.map +1 -1
  10. package/dist/business/Area/Fence/fence_roll_01.js +130 -140
  11. package/dist/business/Area/Fence/fence_roll_01.js.map +1 -1
  12. package/dist/business/Area/FillArea/FillAreaBase.js +126 -87
  13. package/dist/business/Area/FillArea/FillAreaBase.js.map +1 -1
  14. package/dist/business/Area/FillArea/fillArea_face_01.js +98 -72
  15. package/dist/business/Area/FillArea/fillArea_face_01.js.map +1 -1
  16. package/dist/business/Area/FillArea/fillArea_line_01.js +94 -66
  17. package/dist/business/Area/FillArea/fillArea_line_01.js.map +1 -1
  18. package/dist/business/Area/index.js +483 -267
  19. package/dist/business/Area/index.js.map +1 -1
  20. package/dist/business/Area/tool.js +26 -14
  21. package/dist/business/Area/tool.js.map +1 -1
  22. package/dist/business/Base/ObjectLayer.js +46 -21
  23. package/dist/business/Base/ObjectLayer.js.map +1 -1
  24. package/dist/business/Batch/index.js +234 -189
  25. package/dist/business/Batch/index.js.map +1 -1
  26. package/dist/business/Box/index.js +81 -52
  27. package/dist/business/Box/index.js.map +1 -1
  28. package/dist/business/Cylinder/index.js +79 -51
  29. package/dist/business/Cylinder/index.js.map +1 -1
  30. package/dist/business/Flyline/bubble/CircleBubble.js +9 -1
  31. package/dist/business/Flyline/bubble/CircleBubble.js.map +1 -1
  32. package/dist/business/Flyline/bubble/index.js +21 -7
  33. package/dist/business/Flyline/bubble/index.js.map +1 -1
  34. package/dist/business/Flyline/index.js +162 -96
  35. package/dist/business/Flyline/index.js.map +1 -1
  36. package/dist/business/Flyline/line/ArcLine.js +291 -208
  37. package/dist/business/Flyline/line/ArcLine.js.map +1 -1
  38. package/dist/business/Flyline/line/index.js +22 -8
  39. package/dist/business/Flyline/line/index.js.map +1 -1
  40. package/dist/business/HeatMap/HeatMap.js +467 -380
  41. package/dist/business/HeatMap/HeatMap.js.map +1 -1
  42. package/dist/business/HeatMap/core.js +525 -405
  43. package/dist/business/HeatMap/core.js.map +1 -1
  44. package/dist/business/HeatMap/shader.js +3 -69
  45. package/dist/business/HeatMap/shader.js.map +1 -1
  46. package/dist/business/InfoPanel/index.js +242 -201
  47. package/dist/business/InfoPanel/index.js.map +1 -1
  48. package/dist/business/Line/index.js +88 -55
  49. package/dist/business/Line/index.js.map +1 -1
  50. package/dist/business/Mark/KeyframeAnimation.js +176 -145
  51. package/dist/business/Mark/KeyframeAnimation.js.map +1 -1
  52. package/dist/business/Mark/index.js +294 -196
  53. package/dist/business/Mark/index.js.map +1 -1
  54. package/dist/business/Mark/shader/tanhao.js +3 -36
  55. package/dist/business/Mark/shader/tanhao.js.map +1 -1
  56. package/dist/business/Mark/type.js +1 -1
  57. package/dist/business/MaterialSwitch/MaterialSwitchSystem.js +551 -377
  58. package/dist/business/MaterialSwitch/MaterialSwitchSystem.js.map +1 -1
  59. package/dist/business/MaterialSwitch/inject.js +58 -92
  60. package/dist/business/MaterialSwitch/inject.js.map +1 -1
  61. package/dist/business/MaterialSwitch/shader/finalFade.js +2 -74
  62. package/dist/business/MaterialSwitch/shader/finalFade.js.map +1 -1
  63. package/dist/business/MaterialSwitch/shader/ground.js +16 -95
  64. package/dist/business/MaterialSwitch/shader/ground.js.map +1 -1
  65. package/dist/business/MaterialSwitch/shader/groundBase64.js +3 -9
  66. package/dist/business/MaterialSwitch/shader/groundBase64.js.map +1 -1
  67. package/dist/business/MaterialSwitch/shader/realFade.js +9 -48
  68. package/dist/business/MaterialSwitch/shader/realFade.js.map +1 -1
  69. package/dist/business/Plane/index.js +78 -51
  70. package/dist/business/Plane/index.js.map +1 -1
  71. package/dist/business/Poi/index.js +336 -248
  72. package/dist/business/Poi/index.js.map +1 -1
  73. package/dist/business/Poi/link/Cylinder.js +89 -56
  74. package/dist/business/Poi/link/Cylinder.js.map +1 -1
  75. package/dist/business/Poi/link/Pyramid.js +165 -104
  76. package/dist/business/Poi/link/Pyramid.js.map +1 -1
  77. package/dist/business/Poi/link/index.d.ts +1 -1
  78. package/dist/business/Poi/link/index.js +114 -54
  79. package/dist/business/Poi/link/index.js.map +1 -1
  80. package/dist/business/Poi/panel/index.js +373 -315
  81. package/dist/business/Poi/panel/index.js.map +1 -1
  82. package/dist/business/Poi/panel/utils.js +10 -5
  83. package/dist/business/Poi/panel/utils.js.map +1 -1
  84. package/dist/business/Poi/particle/DoubleCircle.js +107 -71
  85. package/dist/business/Poi/particle/DoubleCircle.js.map +1 -1
  86. package/dist/business/Poi/particle/DynamicCircle.js +111 -75
  87. package/dist/business/Poi/particle/DynamicCircle.js.map +1 -1
  88. package/dist/business/Poi/particle/SingleCircle.js +98 -62
  89. package/dist/business/Poi/particle/SingleCircle.js.map +1 -1
  90. package/dist/business/Poi/particle/index.js +117 -49
  91. package/dist/business/Poi/particle/index.js.map +1 -1
  92. package/dist/business/Poi/shader/circle.js +3 -31
  93. package/dist/business/Poi/shader/circle.js.map +1 -1
  94. package/dist/business/Poi/shader/cylinder.js +3 -37
  95. package/dist/business/Poi/shader/cylinder.js.map +1 -1
  96. package/dist/business/Poi/shader/doubleCircle.js +3 -55
  97. package/dist/business/Poi/shader/doubleCircle.js.map +1 -1
  98. package/dist/business/Poi/shader/dynamicCircle.js +3 -67
  99. package/dist/business/Poi/shader/dynamicCircle.js.map +1 -1
  100. package/dist/business/Poi/title/Border.js +27 -7
  101. package/dist/business/Poi/title/Border.js.map +1 -1
  102. package/dist/business/Poi/title/Ellipse.js +27 -7
  103. package/dist/business/Poi/title/Ellipse.js.map +1 -1
  104. package/dist/business/Poi/title/index.js +292 -208
  105. package/dist/business/Poi/title/index.js.map +1 -1
  106. package/dist/business/Poi/tools.js +17 -18
  107. package/dist/business/Poi/tools.js.map +1 -1
  108. package/dist/business/Sphere/index.js +72 -47
  109. package/dist/business/Sphere/index.js.map +1 -1
  110. package/dist/business/Spline/index.js +245 -190
  111. package/dist/business/Spline/index.js.map +1 -1
  112. package/dist/business/SplitBuilding/index.js +536 -327
  113. package/dist/business/SplitBuilding/index.js.map +1 -1
  114. package/dist/business/SplitBuilding/type.js +2 -2
  115. package/dist/business/TrafficComponents/RealismTraffic/RealismTraffic.js +275 -218
  116. package/dist/business/TrafficComponents/RealismTraffic/RealismTraffic.js.map +1 -1
  117. package/dist/business/TrafficComponents/StreamerTraffic/StreamerTraffic.js +177 -132
  118. package/dist/business/TrafficComponents/StreamerTraffic/StreamerTraffic.js.map +1 -1
  119. package/dist/business/TrafficComponents/StreamerTraffic/fragmentShader.js +1 -51
  120. package/dist/business/TrafficComponents/StreamerTraffic/fragmentShader.js.map +1 -1
  121. package/dist/business/TrafficComponents/StreamerTraffic/vertexShader.js +1 -6
  122. package/dist/business/TrafficComponents/StreamerTraffic/vertexShader.js.map +1 -1
  123. package/dist/business/TrafficComponents/base.js +55 -32
  124. package/dist/business/TrafficComponents/base.js.map +1 -1
  125. package/dist/business/TrafficComponents/utils.js +24 -25
  126. package/dist/business/TrafficComponents/utils.js.map +1 -1
  127. package/dist/business/Utils/Curve.js +56 -40
  128. package/dist/business/Utils/Curve.js.map +1 -1
  129. package/dist/business/Utils/constant.js +1 -1
  130. package/dist/business/Utils/constant.js.map +1 -1
  131. package/dist/business/Utils/defineProps.js +14 -13
  132. package/dist/business/Utils/defineProps.js.map +1 -1
  133. package/dist/business/Utils/round-curve.js +153 -127
  134. package/dist/business/Utils/round-curve.js.map +1 -1
  135. package/dist/business/VideoPanel/index.js +319 -258
  136. package/dist/business/VideoPanel/index.js.map +1 -1
  137. package/dist/business/Water/index.js +108 -78
  138. package/dist/business/Water/index.js.map +1 -1
  139. package/dist/business/Water/types.js +1 -1
  140. package/dist/business/Water/types.js.map +1 -1
  141. package/dist/core/Camera/PerspectiveCamera/CameraExpand.js +449 -383
  142. package/dist/core/Camera/PerspectiveCamera/CameraExpand.js.map +1 -1
  143. package/dist/core/Camera/PerspectiveCamera/FollowOrbitControls.js +142 -107
  144. package/dist/core/Camera/PerspectiveCamera/FollowOrbitControls.js.map +1 -1
  145. package/dist/core/Controls/FirstViewControl/index.js +96 -84
  146. package/dist/core/Controls/FirstViewControl/index.js.map +1 -1
  147. package/dist/core/Controls/ThirdViewControl/action/input.js +98 -77
  148. package/dist/core/Controls/ThirdViewControl/action/input.js.map +1 -1
  149. package/dist/core/Controls/ThirdViewControl/config/constants.js +1 -1
  150. package/dist/core/Controls/ThirdViewControl/config/constants.js.map +1 -1
  151. package/dist/core/Controls/ThirdViewControl/index.js +28 -19
  152. package/dist/core/Controls/ThirdViewControl/index.js.map +1 -1
  153. package/dist/core/Controls/ThirdViewControl/player/animation.js +155 -126
  154. package/dist/core/Controls/ThirdViewControl/player/animation.js.map +1 -1
  155. package/dist/core/Controls/ThirdViewControl/player/camera.js +63 -47
  156. package/dist/core/Controls/ThirdViewControl/player/camera.js.map +1 -1
  157. package/dist/core/Controls/ThirdViewControl/player/control.js +49 -39
  158. package/dist/core/Controls/ThirdViewControl/player/control.js.map +1 -1
  159. package/dist/core/Controls/ThirdViewControl/player.js +91 -66
  160. package/dist/core/Controls/ThirdViewControl/player.js.map +1 -1
  161. package/dist/core/Controls/base.js +30 -14
  162. package/dist/core/Controls/base.js.map +1 -1
  163. package/dist/core/Curve/RoundedCornersCurve/RoundedCornersCurve.js +131 -92
  164. package/dist/core/Curve/RoundedCornersCurve/RoundedCornersCurve.js.map +1 -1
  165. package/dist/core/Debug/PerformanceInfo/Performance.js +47 -22
  166. package/dist/core/Debug/PerformanceInfo/Performance.js.map +1 -1
  167. package/dist/core/Light/PointLight/PointLightExt.js +21 -4
  168. package/dist/core/Light/PointLight/PointLightExt.js.map +1 -1
  169. package/dist/core/Material/FinirMaterial/FinirMaterial.js +57 -37
  170. package/dist/core/Material/FinirMaterial/FinirMaterial.js.map +1 -1
  171. package/dist/core/Material/PristineGridMaterial/PristineGridMaterial.js +153 -116
  172. package/dist/core/Material/PristineGridMaterial/PristineGridMaterial.js.map +1 -1
  173. package/dist/core/Material/PristineGridMaterial/shader/fragment.js +1 -95
  174. package/dist/core/Material/PristineGridMaterial/shader/fragment.js.map +1 -1
  175. package/dist/core/Material/PristineGridMaterial/shader/vertex.js +1 -26
  176. package/dist/core/Material/PristineGridMaterial/shader/vertex.js.map +1 -1
  177. package/dist/core/Material/SurfaceMaterial/index.js +172 -76
  178. package/dist/core/Material/SurfaceMaterial/index.js.map +1 -1
  179. package/dist/core/Material/decorators.js +11 -6
  180. package/dist/core/Material/decorators.js.map +1 -1
  181. package/dist/core/PostEffects/addACESFilmicToneMappingPass.js +12 -16
  182. package/dist/core/PostEffects/addACESFilmicToneMappingPass.js.map +1 -1
  183. package/dist/core/PostEffects/addBrightnessContrastPass.js +13 -17
  184. package/dist/core/PostEffects/addBrightnessContrastPass.js.map +1 -1
  185. package/dist/core/PostEffects/bloomPass.js +10 -17
  186. package/dist/core/PostEffects/bloomPass.js.map +1 -1
  187. package/dist/core/PostEffects/bloomSelect.js +43 -60
  188. package/dist/core/PostEffects/bloomSelect.js.map +1 -1
  189. package/dist/core/PostEffects/colorifyPass.js +13 -17
  190. package/dist/core/PostEffects/colorifyPass.js.map +1 -1
  191. package/dist/core/PostEffects/index.js +22 -28
  192. package/dist/core/PostEffects/index.js.map +1 -1
  193. package/dist/core/PostEffects/outlinePass.js +50 -37
  194. package/dist/core/PostEffects/outlinePass.js.map +1 -1
  195. package/dist/core/PostEffects/postprocessing.js +12 -14
  196. package/dist/core/PostEffects/postprocessing.js.map +1 -1
  197. package/dist/core/PostEffects/saoPass.js +10 -15
  198. package/dist/core/PostEffects/saoPass.js.map +1 -1
  199. package/dist/core/PostEffects/shader/colorify.js +3 -22
  200. package/dist/core/PostEffects/shader/colorify.js.map +1 -1
  201. package/dist/core/PostEffects/shader/gammaCorrectionShader.js +3 -27
  202. package/dist/core/PostEffects/shader/gammaCorrectionShader.js.map +1 -1
  203. package/dist/core/PostEffects/shader/mapping.js +3 -66
  204. package/dist/core/PostEffects/shader/mapping.js.map +1 -1
  205. package/dist/core/PostEffects/shader/thermalMaging.js +3 -28
  206. package/dist/core/PostEffects/shader/thermalMaging.js.map +1 -1
  207. package/dist/core/SceneEffect/grow/grow.js +101 -85
  208. package/dist/core/SceneEffect/grow/grow.js.map +1 -1
  209. package/dist/core/SceneEffect/grow/style_down.js +77 -60
  210. package/dist/core/SceneEffect/grow/style_down.js.map +1 -1
  211. package/dist/core/SceneEffect/grow/style_up.js +81 -64
  212. package/dist/core/SceneEffect/grow/style_up.js.map +1 -1
  213. package/dist/core/SceneEffect/grow/type.js +2 -2
  214. package/dist/core/SceneEffect/grow/type.js.map +1 -1
  215. package/dist/core/WeatherSystem/DynamicWeatherSystem.js +76 -51
  216. package/dist/core/WeatherSystem/DynamicWeatherSystem.js.map +1 -1
  217. package/dist/core/WeatherSystem/hdr/index.js +105 -69
  218. package/dist/core/WeatherSystem/hdr/index.js.map +1 -1
  219. package/dist/core/WeatherSystem/index.js +124 -77
  220. package/dist/core/WeatherSystem/index.js.map +1 -1
  221. package/dist/core/WeatherSystem/objects/fog/index.js +80 -52
  222. package/dist/core/WeatherSystem/objects/fog/index.js.map +1 -1
  223. package/dist/core/WeatherSystem/objects/rain/index.js +84 -72
  224. package/dist/core/WeatherSystem/objects/rain/index.js.map +1 -1
  225. package/dist/core/WeatherSystem/objects/rain/lineRain.js +118 -88
  226. package/dist/core/WeatherSystem/objects/rain/lineRain.js.map +1 -1
  227. package/dist/core/WeatherSystem/objects/rain/plane.js +146 -116
  228. package/dist/core/WeatherSystem/objects/rain/plane.js.map +1 -1
  229. package/dist/core/WeatherSystem/objects/rain/point.js +148 -100
  230. package/dist/core/WeatherSystem/objects/rain/point.js.map +1 -1
  231. package/dist/core/WeatherSystem/objects/sky/cloud.js +104 -71
  232. package/dist/core/WeatherSystem/objects/sky/cloud.js.map +1 -1
  233. package/dist/core/WeatherSystem/objects/sky/index.js +84 -66
  234. package/dist/core/WeatherSystem/objects/sky/index.js.map +1 -1
  235. package/dist/core/WeatherSystem/objects/sky/outline.js +45 -25
  236. package/dist/core/WeatherSystem/objects/sky/outline.js.map +1 -1
  237. package/dist/core/WeatherSystem/shaders/cloud.js +3 -74
  238. package/dist/core/WeatherSystem/shaders/cloud.js.map +1 -1
  239. package/dist/core/WeatherSystem/shaders/fog.js +3 -103
  240. package/dist/core/WeatherSystem/shaders/fog.js.map +1 -1
  241. package/dist/core/WeatherSystem/shaders/rain.js +7 -206
  242. package/dist/core/WeatherSystem/shaders/rain.js.map +1 -1
  243. package/dist/core/WeatherSystem/shaders/sky.js +3 -87
  244. package/dist/core/WeatherSystem/shaders/sky.js.map +1 -1
  245. package/dist/core/WeatherSystem/sky/index.js +135 -104
  246. package/dist/core/WeatherSystem/sky/index.js.map +1 -1
  247. package/dist/core/WeatherSystem/utils/constant.js +38 -44
  248. package/dist/core/WeatherSystem/utils/constant.js.map +1 -1
  249. package/dist/core/WeatherSystem/utils/math.js +25 -18
  250. package/dist/core/WeatherSystem/utils/math.js.map +1 -1
  251. package/dist/core/WeatherSystem/utils/type.js +1 -1
  252. package/dist/core/WeatherSystem/utils/type.js.map +1 -1
  253. package/dist/core/WeatherSystem/weather/index.js +141 -96
  254. package/dist/core/WeatherSystem/weather/index.js.map +1 -1
  255. package/dist/utils/index.js +1 -1
  256. package/dist/utils/index.js.map +1 -1
  257. package/package.json +3 -3
@@ -1,9 +1,26 @@
1
- const _excluded = ["value"];
1
+ var _excluded = ["value"];
2
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+ 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."); }
5
+ 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); }
6
+ 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; }
7
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
8
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
2
9
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3
10
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
11
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
12
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
13
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
14
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
15
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
16
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
17
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
18
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
19
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
20
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
4
21
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
6
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
22
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
23
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
24
  /**
8
25
  * @file index.ts
9
26
  * @description 视频面板
@@ -15,7 +32,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
15
32
  import ObjectLayer from "../Base/ObjectLayer";
16
33
  import _ from 'lodash';
17
34
  import { Group, Vector3, createLabel } from '@anov/3d-core';
18
- const DEFAULT_OPTION = {
35
+ var DEFAULT_OPTION = {
19
36
  position: [0, 0, 0],
20
37
  width: 300,
21
38
  height: 200,
@@ -32,272 +49,316 @@ const DEFAULT_OPTION = {
32
49
  poster: '',
33
50
  videoHeight: 150
34
51
  };
35
- class VideoPanel extends ObjectLayer {
36
- constructor(option) {
37
- super();
38
- _defineProperty(this, "_title", void 0);
39
- _defineProperty(this, "_width", void 0);
40
- _defineProperty(this, "_height", void 0);
41
- _defineProperty(this, "_bgColor", void 0);
42
- _defineProperty(this, "_position", void 0);
43
- _defineProperty(this, "_borderRadius", 10);
44
- _defineProperty(this, "_bgUrl", void 0);
45
- _defineProperty(this, "_className", void 0);
46
- _defineProperty(this, "_customStyle", void 0);
47
- _defineProperty(this, "_closeable", void 0);
48
- _defineProperty(this, "_padding", void 0);
49
- _defineProperty(this, "_group", void 0);
50
- _defineProperty(this, "_videoElement", void 0);
51
- _defineProperty(this, "_src", void 0);
52
- _defineProperty(this, "_autoplay", void 0);
53
- _defineProperty(this, "_controls", void 0);
54
- _defineProperty(this, "_loop", void 0);
55
- _defineProperty(this, "_muted", void 0);
56
- _defineProperty(this, "_poster", void 0);
57
- _defineProperty(this, "_volume", void 0);
58
- _defineProperty(this, "_videoHeight", void 0);
59
- _defineProperty(this, "_videoWidth", void 0);
60
- _defineProperty(this, "_onClose", void 0);
61
- _defineProperty(this, "visible", false);
62
- const params = _.mergeWith(_.cloneDeep(DEFAULT_OPTION), option);
63
- const {
64
- title: _title,
65
- width: _width,
66
- height: _height,
67
- bgColor: _bgColor,
68
- position: _position,
69
- bgUrl: _bgUrl,
70
- className: _className,
71
- customStyle: _customStyle,
72
- borderRadius: _borderRadius,
73
- padding: _padding,
74
- closeable: _closeable,
75
- autoplay: _autoplay,
76
- controls: _controls,
77
- loop: _loop,
78
- muted: _muted,
79
- poster: _poster,
80
- volume: _volume,
81
- src: _src,
82
- videoHeight: _videoHeight,
83
- videoWidth: _videoWidth,
84
- onClose: _onClose
85
- } = params;
86
- Object.assign(this, {
87
- _videoWidth,
88
- _videoHeight,
89
- _title,
90
- _autoplay,
91
- _loop,
92
- _muted,
93
- _volume,
94
- _poster,
95
- _controls,
96
- _src,
97
- _width,
98
- _height,
99
- _bgColor,
100
- _position,
101
- _bgUrl,
102
- _className,
103
- _customStyle,
104
- _borderRadius,
105
- _padding,
106
- _closeable,
107
- _onClose
52
+ var VideoPanel = /*#__PURE__*/function (_ObjectLayer) {
53
+ _inherits(VideoPanel, _ObjectLayer);
54
+ var _super = _createSuper(VideoPanel);
55
+ function VideoPanel(option) {
56
+ var _this;
57
+ _classCallCheck(this, VideoPanel);
58
+ _this = _super.call(this);
59
+ _defineProperty(_assertThisInitialized(_this), "_title", void 0);
60
+ _defineProperty(_assertThisInitialized(_this), "_width", void 0);
61
+ _defineProperty(_assertThisInitialized(_this), "_height", void 0);
62
+ _defineProperty(_assertThisInitialized(_this), "_bgColor", void 0);
63
+ _defineProperty(_assertThisInitialized(_this), "_position", void 0);
64
+ _defineProperty(_assertThisInitialized(_this), "_borderRadius", 10);
65
+ _defineProperty(_assertThisInitialized(_this), "_bgUrl", void 0);
66
+ _defineProperty(_assertThisInitialized(_this), "_className", void 0);
67
+ _defineProperty(_assertThisInitialized(_this), "_customStyle", void 0);
68
+ _defineProperty(_assertThisInitialized(_this), "_closeable", void 0);
69
+ _defineProperty(_assertThisInitialized(_this), "_padding", void 0);
70
+ _defineProperty(_assertThisInitialized(_this), "_group", void 0);
71
+ _defineProperty(_assertThisInitialized(_this), "_videoElement", void 0);
72
+ _defineProperty(_assertThisInitialized(_this), "_src", void 0);
73
+ _defineProperty(_assertThisInitialized(_this), "_autoplay", void 0);
74
+ _defineProperty(_assertThisInitialized(_this), "_controls", void 0);
75
+ _defineProperty(_assertThisInitialized(_this), "_loop", void 0);
76
+ _defineProperty(_assertThisInitialized(_this), "_muted", void 0);
77
+ _defineProperty(_assertThisInitialized(_this), "_poster", void 0);
78
+ _defineProperty(_assertThisInitialized(_this), "_volume", void 0);
79
+ _defineProperty(_assertThisInitialized(_this), "_videoHeight", void 0);
80
+ _defineProperty(_assertThisInitialized(_this), "_videoWidth", void 0);
81
+ _defineProperty(_assertThisInitialized(_this), "_onClose", void 0);
82
+ _defineProperty(_assertThisInitialized(_this), "visible", false);
83
+ var params = _.mergeWith(_.cloneDeep(DEFAULT_OPTION), option);
84
+ var _title = params.title,
85
+ _width = params.width,
86
+ _height = params.height,
87
+ _bgColor = params.bgColor,
88
+ _position = params.position,
89
+ _bgUrl = params.bgUrl,
90
+ _className = params.className,
91
+ _customStyle = params.customStyle,
92
+ _borderRadius = params.borderRadius,
93
+ _padding = params.padding,
94
+ _closeable = params.closeable,
95
+ _autoplay = params.autoplay,
96
+ _controls = params.controls,
97
+ _loop = params.loop,
98
+ _muted = params.muted,
99
+ _poster = params.poster,
100
+ _volume = params.volume,
101
+ _src = params.src,
102
+ _videoHeight = params.videoHeight,
103
+ _videoWidth = params.videoWidth,
104
+ _onClose = params.onClose;
105
+ Object.assign(_assertThisInitialized(_this), {
106
+ _videoWidth: _videoWidth,
107
+ _videoHeight: _videoHeight,
108
+ _title: _title,
109
+ _autoplay: _autoplay,
110
+ _loop: _loop,
111
+ _muted: _muted,
112
+ _volume: _volume,
113
+ _poster: _poster,
114
+ _controls: _controls,
115
+ _src: _src,
116
+ _width: _width,
117
+ _height: _height,
118
+ _bgColor: _bgColor,
119
+ _position: _position,
120
+ _bgUrl: _bgUrl,
121
+ _className: _className,
122
+ _customStyle: _customStyle,
123
+ _borderRadius: _borderRadius,
124
+ _padding: _padding,
125
+ _closeable: _closeable,
126
+ _onClose: _onClose
108
127
  });
109
- this._videoElement = this.createVideoDom();
110
- this._group = new Group();
111
- this._group.visible = this.visible;
112
- this.init();
128
+ _this._videoElement = _this.createVideoDom();
129
+ _this._group = new Group();
130
+ _this._group.visible = _this.visible;
131
+ _this.init();
132
+ return _this;
113
133
  }
114
- init() {
115
- this.createBox();
116
- }
117
- createBox() {
118
- var _this$_title;
119
- // 使用 DocumentFragment 减少重排
120
- // const fragment = document.createDocumentFragment();
121
- const bgDom = this.createBgDom(); //创建容器盒子
122
- const videoContainer = document.createElement('div');
123
- if ((_this$_title = this._title) !== null && _this$_title !== void 0 && _this$_title.value || this._closeable) {
124
- const headerDom = this.createHeaderDom(); //创建头部盒子
125
- bgDom.appendChild(headerDom);
134
+ _createClass(VideoPanel, [{
135
+ key: "init",
136
+ value: function init() {
137
+ this.createBox();
126
138
  }
127
- videoContainer.appendChild(this._videoElement);
128
- bgDom.appendChild(videoContainer);
129
- const bgObject = createLabel(bgDom);
130
- bgObject.position.set(0, 0, 0);
131
- bgObject.center.set(0.5, 0.5);
132
- this._group.add(bgObject);
133
- this.add(this._group);
134
- this.applyPosition(); // 初始化自动定位
135
- }
136
- /** 创建背景 */
137
- createBgDom() {
138
- //创建容器盒子
139
- const bgDom = document.createElement('div');
140
- Object.assign(bgDom.style, {
141
- width: `${this._width}px`,
142
- height: `${this._height}px`,
143
- // left: `${this._position[0]}px`,
144
- // top: `${this._position[1]}px`,
145
- overflow: 'hidden',
146
- padding: this._padding,
147
- borderRadius: this._bgUrl ? '' : `${this._borderRadius}px`,
148
- backgroundColor: this._bgUrl ? '' : this._bgColor,
149
- backgroundImage: this._bgUrl ? `url(${this._bgUrl})` : '',
150
- backgroundSize: this._bgUrl ? 'contain' : '',
151
- backgroundRepeat: this._bgUrl ? 'no-repeat' : '',
152
- boxSizing: 'border-box',
153
- display: 'flex'
154
- });
155
- if (this._className) bgDom.className = this._className;
156
- if (this._customStyle) Object.assign(bgDom.style, this._customStyle);
157
- return bgDom;
158
- }
159
- /** 创建头部 */
160
- createHeaderDom() {
161
- var _this$_title2;
162
- const headerDom = document.createElement('div');
163
- headerDom.className = 'video-panel-header';
164
- headerDom.style.display = 'flex';
165
- headerDom.style.alignItems = 'center';
166
- headerDom.style.justifyContent = 'flex-end';
167
- if ((_this$_title2 = this._title) !== null && _this$_title2 !== void 0 && _this$_title2.value) {
168
- // 创建标题
169
- const titleDom = document.createElement('p');
170
- titleDom.className = 'panel-title';
171
- titleDom.style.display = 'flex';
172
- titleDom.style.flex = '1';
173
- titleDom.textContent = this._title.value;
174
- const _this$_title3 = this._title,
175
- {
176
- value: titleValue
177
- } = _this$_title3,
178
- titleStyle = _objectWithoutProperties(_this$_title3, _excluded);
179
- // 正确设置样式的方式
180
- Object.assign(titleDom.style, titleStyle); //待测试
181
-
182
- headerDom.appendChild(titleDom);
139
+ }, {
140
+ key: "createBox",
141
+ value: function createBox() {
142
+ var _this$_title;
143
+ // 使用 DocumentFragment 减少重排
144
+ // const fragment = document.createDocumentFragment();
145
+ var bgDom = this.createBgDom(); //创建容器盒子
146
+ var videoContainer = document.createElement('div');
147
+ if ((_this$_title = this._title) !== null && _this$_title !== void 0 && _this$_title.value || this._closeable) {
148
+ var headerDom = this.createHeaderDom(); //创建头部盒子
149
+ bgDom.appendChild(headerDom);
150
+ }
151
+ videoContainer.appendChild(this._videoElement);
152
+ bgDom.appendChild(videoContainer);
153
+ var bgObject = createLabel(bgDom);
154
+ bgObject.position.set(0, 0, 0);
155
+ bgObject.center.set(0.5, 0.5);
156
+ this._group.add(bgObject);
157
+ this.add(this._group);
158
+ this.applyPosition(); // 初始化自动定位
183
159
  }
160
+ /** 创建背景 */
161
+ }, {
162
+ key: "createBgDom",
163
+ value: function createBgDom() {
164
+ //创建容器盒子
165
+ var bgDom = document.createElement('div');
166
+ Object.assign(bgDom.style, {
167
+ width: "".concat(this._width, "px"),
168
+ height: "".concat(this._height, "px"),
169
+ // left: `${this._position[0]}px`,
170
+ // top: `${this._position[1]}px`,
171
+ overflow: 'hidden',
172
+ padding: this._padding,
173
+ borderRadius: this._bgUrl ? '' : "".concat(this._borderRadius, "px"),
174
+ backgroundColor: this._bgUrl ? '' : this._bgColor,
175
+ backgroundImage: this._bgUrl ? "url(".concat(this._bgUrl, ")") : '',
176
+ backgroundSize: this._bgUrl ? 'contain' : '',
177
+ backgroundRepeat: this._bgUrl ? 'no-repeat' : '',
178
+ boxSizing: 'border-box',
179
+ display: 'flex'
180
+ });
181
+ if (this._className) bgDom.className = this._className;
182
+ if (this._customStyle) Object.assign(bgDom.style, this._customStyle);
183
+ return bgDom;
184
+ }
185
+ /** 创建头部 */
186
+ }, {
187
+ key: "createHeaderDom",
188
+ value: function createHeaderDom() {
189
+ var _this$_title2,
190
+ _this2 = this;
191
+ var headerDom = document.createElement('div');
192
+ headerDom.className = 'video-panel-header';
193
+ headerDom.style.display = 'flex';
194
+ headerDom.style.alignItems = 'center';
195
+ headerDom.style.justifyContent = 'flex-end';
196
+ if ((_this$_title2 = this._title) !== null && _this$_title2 !== void 0 && _this$_title2.value) {
197
+ // 创建标题
198
+ var titleDom = document.createElement('p');
199
+ titleDom.className = 'panel-title';
200
+ titleDom.style.display = 'flex';
201
+ titleDom.style.flex = '1';
202
+ titleDom.textContent = this._title.value;
203
+ var _this$_title3 = this._title,
204
+ titleValue = _this$_title3.value,
205
+ titleStyle = _objectWithoutProperties(_this$_title3, _excluded);
206
+ // 正确设置样式的方式
207
+ Object.assign(titleDom.style, titleStyle); //待测试
208
+
209
+ headerDom.appendChild(titleDom);
210
+ }
184
211
 
185
- // 创建关闭按钮
186
- if (this._closeable) {
187
- var _this$_title4, _this$_title5;
188
- const closeDom = document.createElement('div');
189
- closeDom.className = 'panel-close';
190
- closeDom.style.cursor = 'pointer';
191
- closeDom.style.fontSize = (_this$_title4 = this._title) === null || _this$_title4 === void 0 ? void 0 : _this$_title4.fontSize;
192
- closeDom.style.color = (_this$_title5 = this._title) === null || _this$_title5 === void 0 ? void 0 : _this$_title5.color;
193
- closeDom.textContent = 'x';
194
- closeDom.style.pointerEvents = 'auto';
195
- closeDom.onclick = () => {
196
- this.close();
197
- };
198
- headerDom.appendChild(closeDom);
212
+ // 创建关闭按钮
213
+ if (this._closeable) {
214
+ var _this$_title4, _this$_title5;
215
+ var closeDom = document.createElement('div');
216
+ closeDom.className = 'panel-close';
217
+ closeDom.style.cursor = 'pointer';
218
+ closeDom.style.fontSize = (_this$_title4 = this._title) === null || _this$_title4 === void 0 ? void 0 : _this$_title4.fontSize;
219
+ closeDom.style.color = (_this$_title5 = this._title) === null || _this$_title5 === void 0 ? void 0 : _this$_title5.color;
220
+ closeDom.textContent = 'x';
221
+ closeDom.style.pointerEvents = 'auto';
222
+ closeDom.onclick = function () {
223
+ _this2.close();
224
+ };
225
+ headerDom.appendChild(closeDom);
226
+ }
227
+ return headerDom;
228
+ }
229
+ }, {
230
+ key: "createVideoDom",
231
+ value: function createVideoDom() {
232
+ var videoDom = document.createElement('video');
233
+ videoDom.style.width = this._videoWidth ? "".concat(this._videoWidth, "px") : '100%';
234
+ videoDom.style.height = this._videoHeight ? "".concat(this._videoHeight, "px") : '100%';
235
+ videoDom.style.objectFit = 'cover';
236
+ videoDom.src = this._src;
237
+ videoDom.autoplay = this._autoplay;
238
+ videoDom.controls = this._controls;
239
+ videoDom.loop = this._loop;
240
+ videoDom.muted = this._muted;
241
+ videoDom.volume = this._volume;
242
+ if (this._poster) videoDom.poster = this._poster;
243
+ return videoDom;
199
244
  }
200
- return headerDom;
201
- }
202
- createVideoDom() {
203
- const videoDom = document.createElement('video');
204
- videoDom.style.width = this._videoWidth ? `${this._videoWidth}px` : '100%';
205
- videoDom.style.height = this._videoHeight ? `${this._videoHeight}px` : '100%';
206
- videoDom.style.objectFit = 'cover';
207
- videoDom.src = this._src;
208
- videoDom.autoplay = this._autoplay;
209
- videoDom.controls = this._controls;
210
- videoDom.loop = this._loop;
211
- videoDom.muted = this._muted;
212
- videoDom.volume = this._volume;
213
- if (this._poster) videoDom.poster = this._poster;
214
- return videoDom;
215
- }
216
245
 
217
- /** 自动定位面板 */
218
- applyPosition(offset = new Vector3(0, 0, 0)) {
219
- if (Array.isArray(this._position)) {
220
- // 如果是数组 [x, y]
221
- const [x, y, z] = this._position;
222
- this._group.position.set(x, -y, z); // 注意y轴取反
246
+ /** 自动定位面板 */
247
+ }, {
248
+ key: "applyPosition",
249
+ value: function applyPosition() {
250
+ var offset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Vector3(0, 0, 0);
251
+ if (Array.isArray(this._position)) {
252
+ // 如果是数组 [x, y]
253
+ var _this$_position = _slicedToArray(this._position, 3),
254
+ x = _this$_position[0],
255
+ y = _this$_position[1],
256
+ z = _this$_position[2];
257
+ this._group.position.set(x, -y, z); // 注意y轴取反
258
+ }
223
259
  }
224
- }
225
- open() {
226
- this.visible = true;
227
- this._group.visible = true;
260
+ }, {
261
+ key: "open",
262
+ value: function open() {
263
+ this.visible = true;
264
+ this._group.visible = true;
228
265
 
229
- // 同步 DOM 节点显示
230
- // this._group.children.forEach((child: any) => {
231
- // if (child.element) {
232
- // child.element.style.display = 'block';
233
- // }
234
- // });
235
- }
236
- close() {
237
- this.visible = false;
238
- this._group.visible = false;
266
+ // 同步 DOM 节点显示
267
+ // this._group.children.forEach((child: any) => {
268
+ // if (child.element) {
269
+ // child.element.style.display = 'block';
270
+ // }
271
+ // });
272
+ }
273
+ }, {
274
+ key: "close",
275
+ value: function close() {
276
+ this.visible = false;
277
+ this._group.visible = false;
239
278
 
240
- // 同步 DOM 节点隐藏
241
- // this._group.children.forEach((child: any) => {
242
- // if (child.element) {
243
- // child.element.style.display = 'none';
244
- // }
245
- // });
246
- if (this._onClose) {
247
- this._onClose();
279
+ // 同步 DOM 节点隐藏
280
+ // this._group.children.forEach((child: any) => {
281
+ // if (child.element) {
282
+ // child.element.style.display = 'none';
283
+ // }
284
+ // });
285
+ if (this._onClose) {
286
+ this._onClose();
287
+ }
248
288
  }
249
- }
250
- update(option) {
251
- if (option.src) {
252
- this._src = option.src;
253
- this._videoElement.src = option.src;
289
+ }, {
290
+ key: "update",
291
+ value: function update(option) {
292
+ if (option.src) {
293
+ this._src = option.src;
294
+ this._videoElement.src = option.src;
295
+ }
296
+ if (option.autoplay !== undefined) this._autoplay = option.autoplay;
297
+ if (option.controls !== undefined) this._videoElement.controls = option.controls;
298
+ if (option.loop !== undefined) this._videoElement.loop = option.loop;
299
+ if (option.muted !== undefined) this._videoElement.muted = option.muted;
300
+ if (option.volume !== undefined) this._videoElement.volume = option.volume;
301
+ if (option.poster) this._videoElement.poster = option.poster;
254
302
  }
255
- if (option.autoplay !== undefined) this._autoplay = option.autoplay;
256
- if (option.controls !== undefined) this._videoElement.controls = option.controls;
257
- if (option.loop !== undefined) this._videoElement.loop = option.loop;
258
- if (option.muted !== undefined) this._videoElement.muted = option.muted;
259
- if (option.volume !== undefined) this._videoElement.volume = option.volume;
260
- if (option.poster) this._videoElement.poster = option.poster;
261
- }
262
303
 
263
- // 视频控制方法
264
- play() {
265
- this._videoElement.play();
266
- }
267
- pause() {
268
- this._videoElement.pause();
269
- }
270
- setVolume(volume) {
271
- this._videoElement.volume = Math.max(0, Math.min(1, volume));
272
- }
273
- seek(time) {
274
- this._videoElement.currentTime = time;
275
- }
276
- toggleMute() {
277
- this._videoElement.muted = !this._videoElement.muted;
278
- }
279
- get duration() {
280
- return this._videoElement.duration;
281
- }
282
- get currentTime() {
283
- return this._videoElement.currentTime;
284
- }
285
- get isPlaying() {
286
- return !this._videoElement.paused && !this._videoElement.ended;
287
- }
288
- destroy() {
289
- this._group.clear();
290
- this.remove(this._group);
291
- // 清理DOM引用
292
- this._group.children.forEach(child => {
293
- if (child.element && child.element.parentNode) {
294
- child.element.parentNode.removeChild(child.element);
295
- }
296
- });
297
- this._videoElement.pause();
298
- this._videoElement.src = '';
299
- this._videoElement.load(); // 清理视频资源
300
- }
301
- }
304
+ // 视频控制方法
305
+ }, {
306
+ key: "play",
307
+ value: function play() {
308
+ this._videoElement.play();
309
+ }
310
+ }, {
311
+ key: "pause",
312
+ value: function pause() {
313
+ this._videoElement.pause();
314
+ }
315
+ }, {
316
+ key: "setVolume",
317
+ value: function setVolume(volume) {
318
+ this._videoElement.volume = Math.max(0, Math.min(1, volume));
319
+ }
320
+ }, {
321
+ key: "seek",
322
+ value: function seek(time) {
323
+ this._videoElement.currentTime = time;
324
+ }
325
+ }, {
326
+ key: "toggleMute",
327
+ value: function toggleMute() {
328
+ this._videoElement.muted = !this._videoElement.muted;
329
+ }
330
+ }, {
331
+ key: "duration",
332
+ get: function get() {
333
+ return this._videoElement.duration;
334
+ }
335
+ }, {
336
+ key: "currentTime",
337
+ get: function get() {
338
+ return this._videoElement.currentTime;
339
+ }
340
+ }, {
341
+ key: "isPlaying",
342
+ get: function get() {
343
+ return !this._videoElement.paused && !this._videoElement.ended;
344
+ }
345
+ }, {
346
+ key: "destroy",
347
+ value: function destroy() {
348
+ this._group.clear();
349
+ this.remove(this._group);
350
+ // 清理DOM引用
351
+ this._group.children.forEach(function (child) {
352
+ if (child.element && child.element.parentNode) {
353
+ child.element.parentNode.removeChild(child.element);
354
+ }
355
+ });
356
+ this._videoElement.pause();
357
+ this._videoElement.src = '';
358
+ this._videoElement.load(); // 清理视频资源
359
+ }
360
+ }]);
361
+ return VideoPanel;
362
+ }(ObjectLayer);
302
363
  export { VideoPanel };
303
364
  //# sourceMappingURL=index.js.map