@anov/3d-ability 0.0.167 → 0.0.168

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 (243) hide show
  1. package/dist/business/Animation/motion/index.d.ts +2 -3
  2. package/dist/business/Animation/motion/index.js +1 -6
  3. package/dist/business/Animation/motion/index.js.map +1 -1
  4. package/dist/business/Area/Fence/FenceBase.d.ts +2 -2
  5. package/dist/business/Area/Fence/FenceBase.js +1 -1
  6. package/dist/business/Area/Fence/FenceBase.js.map +1 -1
  7. package/dist/business/Area/Fence/fence_base_01.js +1 -1
  8. package/dist/business/Area/Fence/fence_base_01.js.map +1 -1
  9. package/dist/business/Area/Fence/fence_feeting_01.js +1 -1
  10. package/dist/business/Area/Fence/fence_feeting_01.js.map +1 -1
  11. package/dist/business/Area/Fence/fence_roll_01.js +1 -1
  12. package/dist/business/Area/Fence/fence_roll_01.js.map +1 -1
  13. package/dist/business/Area/FillArea/FillAreaBase.d.ts +2 -2
  14. package/dist/business/Area/FillArea/FillAreaBase.js +1 -1
  15. package/dist/business/Area/FillArea/FillAreaBase.js.map +1 -1
  16. package/dist/business/Area/index.d.ts +1 -2
  17. package/dist/business/Area/index.js +2 -2
  18. package/dist/business/Area/index.js.map +1 -1
  19. package/dist/business/Base/ObjectLayer.d.ts +2 -4
  20. package/dist/business/Base/ObjectLayer.js +11 -7
  21. package/dist/business/Base/ObjectLayer.js.map +1 -1
  22. package/dist/business/Batch/index.d.ts +1 -1
  23. package/dist/business/Batch/index.js +2 -2
  24. package/dist/business/Batch/index.js.map +1 -1
  25. package/dist/business/Box/index.d.ts +1 -1
  26. package/dist/business/Box/index.js +2 -2
  27. package/dist/business/Box/index.js.map +1 -1
  28. package/dist/business/Box/interface.js.map +1 -1
  29. package/dist/business/Box/types.js.map +1 -1
  30. package/dist/business/Cylinder/index.d.ts +1 -1
  31. package/dist/business/Cylinder/index.js +2 -2
  32. package/dist/business/Cylinder/index.js.map +1 -1
  33. package/dist/business/Cylinder/interface.d.ts +1 -1
  34. package/dist/business/Cylinder/interface.js.map +1 -1
  35. package/dist/business/Cylinder/types.js.map +1 -1
  36. package/dist/business/Flyline/index.d.ts +2 -2
  37. package/dist/business/Flyline/index.js +8 -8
  38. package/dist/business/Flyline/index.js.map +1 -1
  39. package/dist/business/Flyline/line/ArcLine.d.ts +1 -1
  40. package/dist/business/Flyline/line/ArcLine.js +3 -3
  41. package/dist/business/Flyline/line/ArcLine.js.map +1 -1
  42. package/dist/business/HeatMap/HeatMap.d.ts +59 -3
  43. package/dist/business/HeatMap/HeatMap.js +95 -7
  44. package/dist/business/HeatMap/HeatMap.js.map +1 -1
  45. package/dist/business/InfoPanel/index.d.ts +4 -3
  46. package/dist/business/InfoPanel/index.js +19 -13
  47. package/dist/business/InfoPanel/index.js.map +1 -1
  48. package/dist/business/InfoPanel/type.js.map +1 -1
  49. package/dist/business/Line/index.d.ts +3 -3
  50. package/dist/business/Line/index.js +7 -8
  51. package/dist/business/Line/index.js.map +1 -1
  52. package/dist/business/Line/interface.d.ts +4 -4
  53. package/dist/business/Line/interface.js.map +1 -1
  54. package/dist/business/Line/types.js.map +1 -1
  55. package/dist/business/Mark/index.d.ts +1 -2
  56. package/dist/business/Mark/index.js +3 -3
  57. package/dist/business/Mark/index.js.map +1 -1
  58. package/dist/business/MaterialSwitch/MaterialSwitchSystem.d.ts +3 -5
  59. package/dist/business/MaterialSwitch/MaterialSwitchSystem.js +10 -14
  60. package/dist/business/MaterialSwitch/MaterialSwitchSystem.js.map +1 -1
  61. package/dist/business/MaterialSwitch/index.js.map +1 -1
  62. package/dist/business/Plane/index.d.ts +2 -3
  63. package/dist/business/Plane/index.js +2 -2
  64. package/dist/business/Plane/index.js.map +1 -1
  65. package/dist/business/Plane/interface.d.ts +5 -5
  66. package/dist/business/Plane/interface.js.map +1 -1
  67. package/dist/business/Plane/types.js.map +1 -1
  68. package/dist/business/Poi/index.d.ts +3 -2
  69. package/dist/business/Poi/index.js +54 -25
  70. package/dist/business/Poi/index.js.map +1 -1
  71. package/dist/business/Poi/link/Cylinder.d.ts +1 -2
  72. package/dist/business/Poi/link/Cylinder.js +3 -3
  73. package/dist/business/Poi/link/Cylinder.js.map +1 -1
  74. package/dist/business/Poi/link/Pyramid.d.ts +1 -2
  75. package/dist/business/Poi/link/Pyramid.js +2 -2
  76. package/dist/business/Poi/link/Pyramid.js.map +1 -1
  77. package/dist/business/Poi/link/index.d.ts +2 -2
  78. package/dist/business/Poi/link/index.js +2 -2
  79. package/dist/business/Poi/link/index.js.map +1 -1
  80. package/dist/business/Poi/panel/index.d.ts +3 -3
  81. package/dist/business/Poi/panel/index.js +6 -7
  82. package/dist/business/Poi/panel/index.js.map +1 -1
  83. package/dist/business/Poi/panel/interfaces.js.map +1 -1
  84. package/dist/business/Poi/panel/utils.d.ts +1 -1
  85. package/dist/business/Poi/panel/utils.js +3 -3
  86. package/dist/business/Poi/panel/utils.js.map +1 -1
  87. package/dist/business/Poi/particle/DoubleCircle.d.ts +1 -2
  88. package/dist/business/Poi/particle/DoubleCircle.js +2 -3
  89. package/dist/business/Poi/particle/DoubleCircle.js.map +1 -1
  90. package/dist/business/Poi/particle/DynamicCircle.d.ts +1 -2
  91. package/dist/business/Poi/particle/DynamicCircle.js +2 -3
  92. package/dist/business/Poi/particle/DynamicCircle.js.map +1 -1
  93. package/dist/business/Poi/particle/SingleCircle.d.ts +1 -2
  94. package/dist/business/Poi/particle/SingleCircle.js +2 -3
  95. package/dist/business/Poi/particle/SingleCircle.js.map +1 -1
  96. package/dist/business/Poi/particle/index.d.ts +2 -2
  97. package/dist/business/Poi/particle/index.js +2 -2
  98. package/dist/business/Poi/particle/index.js.map +1 -1
  99. package/dist/business/Poi/title/Border.d.ts +1 -2
  100. package/dist/business/Poi/title/Border.js +2 -2
  101. package/dist/business/Poi/title/Border.js.map +1 -1
  102. package/dist/business/Poi/title/Ellipse.d.ts +1 -2
  103. package/dist/business/Poi/title/Ellipse.js +2 -2
  104. package/dist/business/Poi/title/Ellipse.js.map +1 -1
  105. package/dist/business/Poi/title/index.d.ts +1 -2
  106. package/dist/business/Poi/title/index.js +2 -2
  107. package/dist/business/Poi/title/index.js.map +1 -1
  108. package/dist/business/Sphere/index.d.ts +2 -2
  109. package/dist/business/Sphere/index.js +2 -2
  110. package/dist/business/Sphere/index.js.map +1 -1
  111. package/dist/business/Sphere/interface.js.map +1 -1
  112. package/dist/business/Sphere/types.js.map +1 -1
  113. package/dist/business/Spline/index.d.ts +1 -2
  114. package/dist/business/Spline/index.js +28 -14
  115. package/dist/business/Spline/index.js.map +1 -1
  116. package/dist/business/SplitBuilding/index.d.ts +2 -2
  117. package/dist/business/SplitBuilding/index.js +2 -2
  118. package/dist/business/SplitBuilding/index.js.map +1 -1
  119. package/dist/business/TrafficComponents/RealismTraffic/RealismTraffic.d.ts +2 -2
  120. package/dist/business/TrafficComponents/RealismTraffic/RealismTraffic.js +5 -6
  121. package/dist/business/TrafficComponents/RealismTraffic/RealismTraffic.js.map +1 -1
  122. package/dist/business/TrafficComponents/StreamerTraffic/StreamerTraffic.d.ts +2 -2
  123. package/dist/business/TrafficComponents/StreamerTraffic/StreamerTraffic.js +3 -3
  124. package/dist/business/TrafficComponents/StreamerTraffic/StreamerTraffic.js.map +1 -1
  125. package/dist/business/TrafficComponents/base.d.ts +4 -4
  126. package/dist/business/TrafficComponents/base.js +6 -6
  127. package/dist/business/TrafficComponents/base.js.map +1 -1
  128. package/dist/business/TrafficComponents/index.d.ts +2 -4
  129. package/dist/business/TrafficComponents/index.js +2 -2
  130. package/dist/business/TrafficComponents/index.js.map +1 -1
  131. package/dist/business/Utils/defineProps.js +3 -3
  132. package/dist/business/Utils/defineProps.js.map +1 -1
  133. package/dist/business/VideoPanel/index.d.ts +4 -4
  134. package/dist/business/VideoPanel/index.js +13 -11
  135. package/dist/business/VideoPanel/index.js.map +1 -1
  136. package/dist/business/VideoPanel/type.d.ts +8 -8
  137. package/dist/business/VideoPanel/type.js.map +1 -1
  138. package/dist/business/Water/index.d.ts +1 -3
  139. package/dist/business/Water/index.js +5 -5
  140. package/dist/business/Water/index.js.map +1 -1
  141. package/dist/business/index.d.ts +18 -21
  142. package/dist/business/index.js +18 -18
  143. package/dist/business/index.js.map +1 -1
  144. package/dist/core/Camera/PerspectiveCamera/CameraExpand.d.ts +1 -1
  145. package/dist/core/Camera/PerspectiveCamera/CameraExpand.js +4 -4
  146. package/dist/core/Camera/PerspectiveCamera/CameraExpand.js.map +1 -1
  147. package/dist/core/Camera/index.d.ts +1 -2
  148. package/dist/core/Camera/index.js +1 -1
  149. package/dist/core/Camera/index.js.map +1 -1
  150. package/dist/core/Controls/FirstViewControl/index.d.ts +2 -3
  151. package/dist/core/Controls/FirstViewControl/index.js +2 -4
  152. package/dist/core/Controls/FirstViewControl/index.js.map +1 -1
  153. package/dist/core/Controls/ThirdViewControl/index.d.ts +2 -3
  154. package/dist/core/Controls/ThirdViewControl/index.js +3 -6
  155. package/dist/core/Controls/ThirdViewControl/index.js.map +1 -1
  156. package/dist/core/Controls/ThirdViewControl/player/camera.d.ts +2 -4
  157. package/dist/core/Controls/ThirdViewControl/player/camera.js +2 -5
  158. package/dist/core/Controls/ThirdViewControl/player/camera.js.map +1 -1
  159. package/dist/core/Controls/ThirdViewControl/player.d.ts +2 -4
  160. package/dist/core/Controls/ThirdViewControl/player.js +2 -6
  161. package/dist/core/Controls/ThirdViewControl/player.js.map +1 -1
  162. package/dist/core/Controls/base.d.ts +3 -4
  163. package/dist/core/Controls/base.js +3 -5
  164. package/dist/core/Controls/base.js.map +1 -1
  165. package/dist/core/Curve/index.d.ts +1 -2
  166. package/dist/core/Curve/index.js +1 -1
  167. package/dist/core/Curve/index.js.map +1 -1
  168. package/dist/core/Material/SurfaceMaterial/index.js.map +1 -1
  169. package/dist/core/Material/index.d.ts +3 -5
  170. package/dist/core/Material/index.js +3 -3
  171. package/dist/core/Material/index.js.map +1 -1
  172. package/dist/core/PostEffects/addACESFilmicToneMappingPass.d.ts +1 -2
  173. package/dist/core/PostEffects/addACESFilmicToneMappingPass.js +4 -4
  174. package/dist/core/PostEffects/addACESFilmicToneMappingPass.js.map +1 -1
  175. package/dist/core/PostEffects/addBrightnessContrastPass.d.ts +1 -2
  176. package/dist/core/PostEffects/addBrightnessContrastPass.js +4 -4
  177. package/dist/core/PostEffects/addBrightnessContrastPass.js.map +1 -1
  178. package/dist/core/PostEffects/bloomPass.d.ts +1 -2
  179. package/dist/core/PostEffects/bloomPass.js +5 -6
  180. package/dist/core/PostEffects/bloomPass.js.map +1 -1
  181. package/dist/core/PostEffects/bloomSelect.d.ts +2 -2
  182. package/dist/core/PostEffects/bloomSelect.js +6 -7
  183. package/dist/core/PostEffects/bloomSelect.js.map +1 -1
  184. package/dist/core/PostEffects/colorifyPass.d.ts +2 -2
  185. package/dist/core/PostEffects/colorifyPass.js +4 -4
  186. package/dist/core/PostEffects/colorifyPass.js.map +1 -1
  187. package/dist/core/PostEffects/index.d.ts +13 -4
  188. package/dist/core/PostEffects/index.js +20 -14
  189. package/dist/core/PostEffects/index.js.map +1 -1
  190. package/dist/core/PostEffects/outlinePass.d.ts +2 -2
  191. package/dist/core/PostEffects/outlinePass.js +5 -4
  192. package/dist/core/PostEffects/outlinePass.js.map +1 -1
  193. package/dist/core/PostEffects/postprocessing.d.ts +2 -2
  194. package/dist/core/PostEffects/postprocessing.js +2 -2
  195. package/dist/core/PostEffects/postprocessing.js.map +1 -1
  196. package/dist/core/PostEffects/saoPass.d.ts +1 -2
  197. package/dist/core/PostEffects/saoPass.js +5 -4
  198. package/dist/core/PostEffects/saoPass.js.map +1 -1
  199. package/dist/core/SceneEffect/grow/grow.d.ts +1 -3
  200. package/dist/core/SceneEffect/grow/grow.js +3 -5
  201. package/dist/core/SceneEffect/grow/grow.js.map +1 -1
  202. package/dist/core/WeatherSystem/DynamicWeatherSystem.d.ts +1 -3
  203. package/dist/core/WeatherSystem/DynamicWeatherSystem.js +4 -6
  204. package/dist/core/WeatherSystem/DynamicWeatherSystem.js.map +1 -1
  205. package/dist/core/WeatherSystem/color/index.d.ts +0 -3
  206. package/dist/core/WeatherSystem/color/index.js +14 -9
  207. package/dist/core/WeatherSystem/color/index.js.map +1 -1
  208. package/dist/core/WeatherSystem/controller/ColorController.d.ts +1 -3
  209. package/dist/core/WeatherSystem/controller/ColorController.js +3 -5
  210. package/dist/core/WeatherSystem/controller/ColorController.js.map +1 -1
  211. package/dist/core/WeatherSystem/controller/HDRController.d.ts +1 -3
  212. package/dist/core/WeatherSystem/controller/HDRController.js +3 -5
  213. package/dist/core/WeatherSystem/controller/HDRController.js.map +1 -1
  214. package/dist/core/WeatherSystem/controller/SkyController.d.ts +1 -3
  215. package/dist/core/WeatherSystem/controller/SkyController.js +2 -4
  216. package/dist/core/WeatherSystem/controller/SkyController.js.map +1 -1
  217. package/dist/core/WeatherSystem/hdr/index.d.ts +2 -4
  218. package/dist/core/WeatherSystem/hdr/index.js +11 -12
  219. package/dist/core/WeatherSystem/hdr/index.js.map +1 -1
  220. package/dist/core/WeatherSystem/index.d.ts +2 -3
  221. package/dist/core/WeatherSystem/index.js +4 -7
  222. package/dist/core/WeatherSystem/index.js.map +1 -1
  223. package/dist/core/WeatherSystem/objects/rain/index.d.ts +1 -2
  224. package/dist/core/WeatherSystem/objects/rain/index.js +3 -3
  225. package/dist/core/WeatherSystem/objects/rain/index.js.map +1 -1
  226. package/dist/core/WeatherSystem/objects/rain/lineRain.d.ts +1 -3
  227. package/dist/core/WeatherSystem/objects/rain/lineRain.js +5 -7
  228. package/dist/core/WeatherSystem/objects/rain/lineRain.js.map +1 -1
  229. package/dist/core/WeatherSystem/objects/rain/plane.d.ts +1 -3
  230. package/dist/core/WeatherSystem/objects/rain/plane.js +4 -6
  231. package/dist/core/WeatherSystem/objects/rain/plane.js.map +1 -1
  232. package/dist/core/WeatherSystem/objects/rain/point.d.ts +1 -3
  233. package/dist/core/WeatherSystem/objects/rain/point.js +0 -3
  234. package/dist/core/WeatherSystem/objects/rain/point.js.map +1 -1
  235. package/dist/core/WeatherSystem/sky/index.js.map +1 -1
  236. package/dist/core/WeatherSystem/utils/constant.js.map +1 -1
  237. package/dist/core/WeatherSystem/weather/index.d.ts +2 -3
  238. package/dist/core/WeatherSystem/weather/index.js +5 -7
  239. package/dist/core/WeatherSystem/weather/index.js.map +1 -1
  240. package/dist/index.d.ts +8 -13
  241. package/dist/index.js +8 -8
  242. package/dist/index.js.map +1 -1
  243. package/package.json +3 -3
@@ -22,25 +22,24 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
22
22
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
23
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); }
24
24
  /*
25
- * @Descripttion:
26
- * @version:
25
+ * @Descripttion:
26
+ * @version:
27
27
  * @Author: 周志国
28
28
  * @Date: 2025-09-08 16:09:35
29
29
  * @LastEditors: 周志国
30
30
  * @LastEditTime: 2025-09-08 17:02:11
31
- * @changeLog:
31
+ * @changeLog:
32
32
  * @FilePath: /anov-3d-webgl/packages/anov-3d-ability/src/business/Line/index.ts
33
33
  */
34
-
35
- import { BufferGeometry, LineBasicMaterial, LineDashedMaterial, Line as ThreeLine, Vector3 } from '@anov/3d-core';
36
34
  import ObjectLayer from "../Base/ObjectLayer";
35
+ import { Vector3, BufferGeometry, LineDashedMaterial, LineBasicMaterial, Line as ThreeLine } from '@anov/3d-core';
37
36
  export var Line = /*#__PURE__*/function (_ObjectLayer) {
38
37
  _inherits(Line, _ObjectLayer);
39
38
  var _super = _createSuper(Line);
40
- function Line(options, sceneControl) {
39
+ function Line(options) {
41
40
  var _this;
42
41
  _classCallCheck(this, Line);
43
- _this = _super.call(this, sceneControl);
42
+ _this = _super.call(this);
44
43
  _defineProperty(_assertThisInitialized(_this), "line", void 0);
45
44
  _this.line = _this.createLine(options);
46
45
  _this.add(_this.line); // 挂载到 ObjectLayer 中
@@ -60,7 +59,7 @@ export var Line = /*#__PURE__*/function (_ObjectLayer) {
60
59
  var geometry = new BufferGeometry().setFromPoints(vecPoints);
61
60
  // 默认参数
62
61
  var defaultBasic = {
63
- color: 0xFFFFFF,
62
+ color: 0xffffff,
64
63
  linewidth: 1,
65
64
  linecap: 'round',
66
65
  linejoin: 'round',
@@ -1 +1 @@
1
- {"version":3,"names":["BufferGeometry","LineBasicMaterial","LineDashedMaterial","Line","ThreeLine","Vector3","ObjectLayer","_ObjectLayer","_inherits","_super","_createSuper","options","sceneControl","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","line","createLine","add","_createClass","key","value","points","_options$dashed","dashed","_options$material","material","vecPoints","map","p","Array","isArray","_construct","_toConsumableArray","geometry","setFromPoints","defaultBasic","color","linewidth","linecap","linejoin","opacity","transparent","visible","depthTest","depthWrite","defaultDashed","_objectSpread","scale","dashSize","gapSize","mat","computeLineDistances","updateLine","remove","dispose","destroy"],"sources":["../../../src/business/Line/index.ts"],"sourcesContent":["/*\n * @Descripttion:\n * @version:\n * @Author: 周志国\n * @Date: 2025-09-08 16:09:35\n * @LastEditors: 周志国\n * @LastEditTime: 2025-09-08 17:02:11\n * @changeLog:\n * @FilePath: /anov-3d-webgl/packages/anov-3d-ability/src/business/Line/index.ts\n */\nimport type {\n LineBasicMaterialParameters, LineDashedMaterialParameters,\n SceneControl,\n Line as TLine,\n} from '@anov/3d-core'\nimport {\n BufferGeometry,\n LineBasicMaterial,\n LineDashedMaterial,\n Line as ThreeLine,\n Vector3,\n} from '@anov/3d-core'\nimport ObjectLayer from '../Base/ObjectLayer'\nimport type { options } from './types'\nimport type { ILine } from './interface'\n\nexport class Line extends ObjectLayer implements ILine {\n private line: TLine\n\n constructor(options: options, sceneControl: SceneControl) {\n super(sceneControl)\n this.line = this.createLine(options)\n this.add(this.line) // 挂载到 ObjectLayer 中\n }\n\n public createLine(options: options): TLine {\n const { points, dashed = false, material = {} } = options\n const vecPoints = points.map(p =>\n Array.isArray(p) ? new Vector3(...p) : p,\n )\n const geometry = new BufferGeometry().setFromPoints(vecPoints)\n // 默认参数\n const defaultBasic: LineBasicMaterialParameters = {\n color: 0xFFFFFF,\n linewidth: 1,\n linecap: 'round',\n linejoin: 'round',\n opacity: 1,\n transparent: false,\n visible: true,\n depthTest: true,\n depthWrite: true,\n }\n\n const defaultDashed: LineDashedMaterialParameters = {\n ...defaultBasic,\n scale: 1,\n dashSize: 3,\n gapSize: 1,\n }\n\n const mat = dashed\n ? new LineDashedMaterial({ ...defaultDashed, ...material })\n : new LineBasicMaterial({ ...defaultBasic, ...material })\n\n const line = new ThreeLine(geometry, mat)\n\n if (dashed)\n line.computeLineDistances()\n\n return line\n }\n\n /** 更新线条 */\n public updateLine(options: options) {\n if (this.line) {\n this.remove(this.line)\n this.line.geometry.dispose()\n ; (this.line.material as any).dispose()\n }\n this.line = this.createLine(options)\n this.add(this.line)\n }\n\n /** 销毁释放资源 */\n public destroy() {\n if (!this.line)\n return\n this.remove(this.line)\n this.line.geometry.dispose()\n ; (this.line.material as any).dispose()\n // @ts-ignore\n this.line = null\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["ObjectLayer","Vector3","BufferGeometry","LineDashedMaterial","LineBasicMaterial","Line","ThreeLine","_ObjectLayer","_inherits","_super","_createSuper","options","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","line","createLine","add","_createClass","key","value","points","_options$dashed","dashed","_options$material","material","vecPoints","map","p","Array","isArray","_construct","_toConsumableArray","geometry","setFromPoints","defaultBasic","color","linewidth","linecap","linejoin","opacity","transparent","visible","depthTest","depthWrite","defaultDashed","_objectSpread","scale","dashSize","gapSize","mat","computeLineDistances","updateLine","remove","dispose","destroy"],"sources":["../../../src/business/Line/index.ts"],"sourcesContent":["/*\n * @Descripttion: \n * @version: \n * @Author: 周志国\n * @Date: 2025-09-08 16:09:35\n * @LastEditors: 周志国\n * @LastEditTime: 2025-09-08 17:02:11\n * @changeLog: \n * @FilePath: /anov-3d-webgl/packages/anov-3d-ability/src/business/Line/index.ts\n */\nimport ObjectLayer from '../Base/ObjectLayer'\nimport type { options } from './types'\nimport { ILine } from './interface'\nimport type { Line as TLine } from '@anov/3d-core'\nimport {\n Vector3,\n BufferGeometry,\n LineDashedMaterial,\n LineDashedMaterialParameters,\n LineBasicMaterial,\n LineBasicMaterialParameters,\n Line as ThreeLine\n} from '@anov/3d-core'\n\nexport class Line extends ObjectLayer implements ILine {\n private line: TLine\n\n constructor(options: options) {\n super()\n this.line = this.createLine(options)\n this.add(this.line) // 挂载到 ObjectLayer 中\n }\n\n public createLine(options: options): TLine {\n const { points, dashed = false, material = {} } = options\n const vecPoints = points.map(p =>\n Array.isArray(p) ? new Vector3(...p) : p\n )\n const geometry = new BufferGeometry().setFromPoints(vecPoints)\n // 默认参数\n const defaultBasic: LineBasicMaterialParameters = {\n color: 0xffffff,\n linewidth: 1,\n linecap: 'round',\n linejoin: 'round',\n opacity: 1,\n transparent: false,\n visible: true,\n depthTest: true,\n depthWrite: true\n }\n\n const defaultDashed: LineDashedMaterialParameters = {\n ...defaultBasic,\n scale: 1,\n dashSize: 3,\n gapSize: 1\n }\n\n const mat = dashed\n ? new LineDashedMaterial({ ...defaultDashed, ...material })\n : new LineBasicMaterial({ ...defaultBasic, ...material })\n\n const line = new ThreeLine(geometry, mat)\n\n if (dashed) line.computeLineDistances()\n\n return line\n }\n\n /** 更新线条 */\n public updateLine(options: options) {\n if (this.line) {\n this.remove(this.line)\n this.line.geometry.dispose()\n ; (this.line.material as any).dispose()\n }\n this.line = this.createLine(options)\n this.add(this.line)\n }\n\n /** 销毁释放资源 */\n public destroy() {\n if (!this.line) return\n this.remove(this.line)\n this.line.geometry.dispose()\n ; (this.line.material as any).dispose()\n // @ts-ignore\n this.line = null\n }\n}\n"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import type { Line } from '@anov/3d-core';
2
1
  import type { options } from './types';
2
+ import type { Line } from '@anov/3d-core';
3
3
  export interface ILine {
4
4
  /**
5
- * 创建线
6
- * @param options - 参数配置
7
- */
5
+ * 创建线
6
+ * @param options - 参数配置
7
+ */
8
8
  createLine: (options: options) => Line;
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/business/Line/interface.ts"],"sourcesContent":["/*\n * @Descripttion:\n * @version:\n * @Author: 周志国\n * @Date: 2025-09-08 16:17:44\n * @LastEditors: 周志国\n * @LastEditTime: 2025-09-09 09:44:32\n * @changeLog:\n * @FilePath: /anov-3d-webgl/packages/anov-3d-ability/src/business/Line/interface.ts\n */\nimport type { Line } from '@anov/3d-core'\nimport type { options } from './types'\n\nexport interface ILine {\n /**\n * 创建线\n * @param options - 参数配置\n */\n createLine: (options: options) => Line\n}"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["../../../src/business/Line/interface.ts"],"sourcesContent":["/*\n * @Descripttion: \n * @version: \n * @Author: 周志国\n * @Date: 2025-09-08 16:17:44\n * @LastEditors: 周志国\n * @LastEditTime: 2025-09-09 09:44:32\n * @changeLog: \n * @FilePath: /anov-3d-webgl/packages/anov-3d-ability/src/business/Line/interface.ts\n */\nimport type { options } from './types'\nimport type { Line } from '@anov/3d-core'\n\nexport interface ILine {\n /**\n * 创建线\n * @param options - 参数配置\n */\n createLine: (options: options) => Line\n} "],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/business/Line/types.ts"],"sourcesContent":["/*\n * @Descripttion:\n * @version:\n * @Author: 周志国\n * @Date: 2025-09-08 16:09:24\n * @LastEditors: 周志国\n * @LastEditTime: 2025-09-08 16:15:04\n * @changeLog:\n * @FilePath: /anov-3d-webgl/packages/anov-3d-ability/src/business/Line/types.ts\n */\nimport type { LineBasicMaterialParameters, LineDashedMaterialParameters } from '@anov/3d-core'\n\nexport type options = {\n points: [number, number, number][]\n dashed?: boolean\n material?: LineBasicMaterialParameters | LineDashedMaterialParameters\n}"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["../../../src/business/Line/types.ts"],"sourcesContent":["/*\n * @Descripttion: \n * @version: \n * @Author: 周志国\n * @Date: 2025-09-08 16:09:24\n * @LastEditors: 周志国\n * @LastEditTime: 2025-09-08 16:15:04\n * @changeLog: \n * @FilePath: /anov-3d-webgl/packages/anov-3d-ability/src/business/Line/types.ts\n */\nimport type { LineBasicMaterialParameters, LineDashedMaterialParameters } from '@anov/3d-core'\nexport type options = {\n points: [number, number, number][];\n dashed?: boolean;\n material?: LineBasicMaterialParameters | LineDashedMaterialParameters;\n}"],"mappings":""}
@@ -1,4 +1,3 @@
1
- import type { SceneControl } from '@anov/3d-core';
2
1
  import ObjectLayer from '../Base/ObjectLayer';
3
2
  import type { Option } from './type';
4
3
  import { ELevel } from './type';
@@ -22,7 +21,7 @@ declare class Mark extends ObjectLayer {
22
21
  set level(value: ELevel);
23
22
  get bubble(): Option['bubble'];
24
23
  set bubble(value: Option['bubble']);
25
- constructor(option: Option, sceneControl: SceneControl);
24
+ constructor(option: Option);
26
25
  private init;
27
26
  private setModelPosition;
28
27
  private loadModel;
@@ -48,10 +48,10 @@ var load = new LoaderModule();
48
48
  var Mark = /*#__PURE__*/function (_ObjectLayer) {
49
49
  _inherits(Mark, _ObjectLayer);
50
50
  var _super = _createSuper(Mark);
51
- function Mark(option, sceneControl) {
51
+ function Mark(option) {
52
52
  var _this;
53
53
  _classCallCheck(this, Mark);
54
- _this = _super.call(this, sceneControl);
54
+ _this = _super.call(this);
55
55
  _defineProperty(_assertThisInitialized(_this), "_uri", void 0);
56
56
  _defineProperty(_assertThisInitialized(_this), "_level", void 0);
57
57
  _defineProperty(_assertThisInitialized(_this), "_animation", void 0);
@@ -138,7 +138,7 @@ var Mark = /*#__PURE__*/function (_ObjectLayer) {
138
138
  BubbleClass = _context.sent;
139
139
  this._bubbleMesh = new BubbleClass(_objectSpread({
140
140
  radius: 0.5
141
- }, this.bubble), this.sceneControl);
141
+ }, this.bubble));
142
142
  group.add(this._bubbleMesh);
143
143
  this._mesh = group;
144
144
  this.add(this._mesh);
@@ -1 +1 @@
1
- {"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","obj","_toPrimitive","String","toPrimitive","Number","Box3","Color","Group","LoaderModule","MeshBasicMaterial","ShaderMaterial","_","StrategyManage","BubbleStrategy","ObjectLayer","SOURCE_BASE_PATH","ELevel","EMarkAnimationType","KeyframeAnimation","TanhaoShader","DEFAULT_OPTION","uri","level","animation","Bounce","duration","enable","bubble","visible","radius","color","COLORS","MODEL_URI","concat","load","Mark","_ObjectLayer","_super","option","sceneControl","_this","param","mergeWith","cloneDeep","arrayMergeCustomizer","_param$level","Low","_uri","_animation","_level","Math","max","min","_bubble","getColor","_readyPromise","init","get","set","setMeshLevel","_init","_callee","_this2","group","BubbleClass","_callee$","_context","loadModel","_markMesh","add","dynamicCircle","_bubbleMesh","_mesh","setModelPosition","_animationController","createProxy","_this$getBoxSize","getBoxSize","height","position","setY","loadGLTF","url","autoBackward","isCache","draco","onLoad","gltf","scene","onError","vertexShader","fragmentShader","panelMaterial","uniforms","transparent","side","depthTest","depthWrite","borderMaterial","traverse","object","mesh","material","_update","_callee2","delta","_this$_animationContr","_callee2$","_context2","ready","update","_x","_play","_callee3","_callee3$","_context3","play","_x2","_stop","_callee4","_callee4$","_context4","_x3","_Box3$setFromObject","setFromObject","width","x","dispose","destroy"],"sources":["../../../src/business/Mark/index.ts"],"sourcesContent":["import type { Mesh, SceneControl } from '@anov/3d-core'\nimport { Box3, Color, Group, LoaderModule, MeshBasicMaterial, ShaderMaterial } from '@anov/3d-core'\nimport _ from 'lodash'\nimport { StrategyManage as BubbleStrategy } from '../Poi/particle/index'\nimport ObjectLayer from '../Base/ObjectLayer'\nimport type DynamicCircleMesh from '../Poi/particle/DynamicCircle'\nimport { SOURCE_BASE_PATH } from '../Utils/constant'\nimport type { Option } from './type'\nimport { ELevel } from './type'\nimport type { AnimationOption } from './KeyframeAnimation'\nimport { EMarkAnimationType, KeyframeAnimation } from './KeyframeAnimation'\nimport TanhaoShader from './shader/tanhao'\n\nconst DEFAULT_OPTION = {\n uri: '', // 统一资源标识符,既可以是code也是可以资源路径\n level: 0,\n animation: {\n type: [EMarkAnimationType.Bounce], // 动画类型:\"pulse\"(脉冲)、\"flash\"(闪烁)、\"bounce\"(弹跳),默认\"pulse\"\n duration: 1,\n enable: true,\n },\n bubble: {\n uri: '',\n visible: true,\n radius: 0.5,\n color: '',\n },\n}\n\nconst COLORS = ['#538FFF', '#FFA753', '#FF6353']\nconst MODEL_URI = `${SOURCE_BASE_PATH}/element/mark.glb`\nconst load = new LoaderModule()\n\nclass Mark extends ObjectLayer {\n private _uri: string\n private _level: ELevel\n private _animation: Option['animation']\n private _bubble: Option['bubble']\n\n private _readyPromise: Promise<boolean>\n private _mesh: Group\n private _markMesh: Group\n private _bubbleMesh: DynamicCircleMesh\n // 动画相关参数\n private _animationController: KeyframeAnimation\n\n public get ready() {\n return this._readyPromise\n }\n\n public get uri(): string {\n return this._uri\n }\n\n public set uri(value: string) {\n this._uri = value\n }\n\n public get animation(): AnimationOption {\n return this._animation\n }\n\n public get level(): ELevel {\n return this._level\n }\n\n public set level(value: ELevel) {\n if (this._level === value)\n return\n this._level = Math.max(0, Math.min(value, 3))\n this.setMeshLevel()\n this.bubble.color = this.getColor()\n }\n\n public get bubble(): Option['bubble'] {\n return this._bubble\n }\n\n public set bubble(value: Option['bubble']) {\n this._bubble = value\n }\n\n constructor(option: Option, sceneControl: SceneControl) {\n super(sceneControl)\n\n const param = _.mergeWith(_.cloneDeep(DEFAULT_OPTION), option, this.arrayMergeCustomizer)\n const { uri, animation, level = ELevel.Low, bubble } = param\n this._uri = uri\n this._animation = animation\n this._level = Math.max(0, Math.min(level, 3))\n this._bubble = bubble\n if (!bubble.color)\n this._bubble.color = this.getColor()\n\n this._readyPromise = this.init()\n }\n\n // 动画设置\n private async init() {\n const group = new Group()\n this._markMesh = await this.loadModel(MODEL_URI) as Group\n group.add(this._markMesh)\n\n // 气泡\n const BubbleClass = await BubbleStrategy.dynamicCircle()\n this._bubbleMesh = new BubbleClass({ radius: 0.5, ...this.bubble }, this.sceneControl)\n group.add(this._bubbleMesh)\n\n this._mesh = group\n this.add(this._mesh)\n\n this.setMeshLevel()\n this.setModelPosition()\n\n this._animationController = new KeyframeAnimation(this._markMesh, this._animation)\n\n this._bubble = this.createProxy(this._bubble, this._bubbleMesh)\n this._animation = this.createProxy(this._animation, null, (key, value) => {\n this._animationController[key] = value\n })\n return true\n }\n\n private setModelPosition() {\n if (this.bubble.visible !== false) {\n const { height } = this.getBoxSize(this._markMesh)\n this._markMesh.position.setY(height * 0.5)\n }\n else { this._markMesh.position.setY(0) }\n }\n\n private loadModel(uri: string) {\n return new Promise((resolve, reject) => {\n load.loadGLTF({\n url: uri,\n autoBackward: false,\n isCache: true,\n draco: true,\n onLoad: (gltf) => {\n resolve(gltf.scene)\n },\n onError: () => {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject(null)\n },\n })\n })\n }\n\n private setMeshLevel() {\n const { vertexShader, fragmentShader } = TanhaoShader\n const panelMaterial = new ShaderMaterial({\n uniforms: {\n color: { value: new Color(this.getColor()) },\n },\n vertexShader,\n fragmentShader,\n transparent: true,\n // 设置材质双面渲染,确保从正反两面都能正确显示\n side: 2,\n // 关闭深度测试\n depthTest: true,\n depthWrite: false,\n\n })\n const borderMaterial = new MeshBasicMaterial({ color: this.getColor() })\n\n this._markMesh.traverse((object) => {\n if (object.type === 'Mesh') {\n const mesh = object as Mesh\n if (mesh.name === 'Mesh') // TODO:等确定命名规范\n mesh.material = borderMaterial\n if (mesh.name === 'Mesh_1')\n mesh.material = panelMaterial\n // // 处理材质数组\n // if (Array.isArray(mesh.material)) {\n // // 如果是多材质对象\n // (mesh.material as Material[]).forEach((material) => {\n // (material as MeshBasicMaterial).color.set(this.getColor())\n // })\n // }\n // else {\n // // 单一材质\n // (mesh.material as MeshBasicMaterial).color.set(this.getColor())\n // }\n }\n })\n }\n\n private getColor() {\n return COLORS[this.level]\n }\n\n // 更新动画混合器\n public async update(delta: number) {\n await this.ready\n this._animationController?.update(delta)\n }\n\n // 播放动画\n public async play(type?: EMarkAnimationType) {\n await this.ready\n this._animationController.play(type)\n }\n\n // 播放动画\n public async stop(type?: EMarkAnimationType) {\n await this.ready\n this._animationController.stop(type)\n }\n\n private getBoxSize(mesh) {\n // mesh.updateWorldMatrix(true, true)\n const { max, min } = new Box3().setFromObject(mesh)\n return { width: max.x - min.x, height: max.y - min.y }\n }\n\n // 销毁资源\n public dispose() {\n if (this._animationController) {\n this._animationController.destroy()\n this._animationController = null\n }\n }\n}\n\nexport { Mark, EMarkAnimationType }\n"],"mappings":";+CACA,qJAAAA,mBAAA,YAAAA,oBAAA,WAAAC,CAAA,SAAAC,CAAA,EAAAD,CAAA,OAAAE,CAAA,GAAAC,MAAA,CAAAC,SAAA,EAAAC,CAAA,GAAAH,CAAA,CAAAI,cAAA,EAAAC,CAAA,GAAAJ,MAAA,CAAAK,cAAA,cAAAP,CAAA,EAAAD,CAAA,EAAAE,CAAA,IAAAD,CAAA,CAAAD,CAAA,IAAAE,CAAA,CAAAO,KAAA,KAAAC,CAAA,wBAAAC,MAAA,GAAAA,MAAA,OAAAC,CAAA,GAAAF,CAAA,CAAAG,QAAA,kBAAAC,CAAA,GAAAJ,CAAA,CAAAK,aAAA,uBAAAC,CAAA,GAAAN,CAAA,CAAAO,WAAA,8BAAAC,OAAAjB,CAAA,EAAAD,CAAA,EAAAE,CAAA,WAAAC,MAAA,CAAAK,cAAA,CAAAP,CAAA,EAAAD,CAAA,IAAAS,KAAA,EAAAP,CAAA,EAAAiB,UAAA,MAAAC,YAAA,MAAAC,QAAA,SAAApB,CAAA,CAAAD,CAAA,WAAAkB,MAAA,mBAAAjB,CAAA,IAAAiB,MAAA,YAAAA,OAAAjB,CAAA,EAAAD,CAAA,EAAAE,CAAA,WAAAD,CAAA,CAAAD,CAAA,IAAAE,CAAA,gBAAAoB,KAAArB,CAAA,EAAAD,CAAA,EAAAE,CAAA,EAAAG,CAAA,QAAAK,CAAA,GAAAV,CAAA,IAAAA,CAAA,CAAAI,SAAA,YAAAmB,SAAA,GAAAvB,CAAA,GAAAuB,SAAA,EAAAX,CAAA,GAAAT,MAAA,CAAAqB,MAAA,CAAAd,CAAA,CAAAN,SAAA,GAAAU,CAAA,OAAAW,OAAA,CAAApB,CAAA,gBAAAE,CAAA,CAAAK,CAAA,eAAAH,KAAA,EAAAiB,gBAAA,CAAAzB,CAAA,EAAAC,CAAA,EAAAY,CAAA,MAAAF,CAAA,aAAAe,SAAA1B,CAAA,EAAAD,CAAA,EAAAE,CAAA,mBAAA0B,IAAA,YAAAC,GAAA,EAAA5B,CAAA,CAAA6B,IAAA,CAAA9B,CAAA,EAAAE,CAAA,cAAAD,CAAA,aAAA2B,IAAA,WAAAC,GAAA,EAAA5B,CAAA,QAAAD,CAAA,CAAAsB,IAAA,GAAAA,IAAA,MAAAS,CAAA,qBAAAC,CAAA,qBAAAC,CAAA,gBAAAC,CAAA,gBAAAC,CAAA,gBAAAZ,UAAA,cAAAa,kBAAA,cAAAC,2BAAA,SAAAC,CAAA,OAAApB,MAAA,CAAAoB,CAAA,EAAA1B,CAAA,qCAAA2B,CAAA,GAAApC,MAAA,CAAAqC,cAAA,EAAAC,CAAA,GAAAF,CAAA,IAAAA,CAAA,CAAAA,CAAA,CAAAG,MAAA,QAAAD,CAAA,IAAAA,CAAA,KAAAvC,CAAA,IAAAG,CAAA,CAAAyB,IAAA,CAAAW,CAAA,EAAA7B,CAAA,MAAA0B,CAAA,GAAAG,CAAA,OAAAE,CAAA,GAAAN,0BAAA,CAAAjC,SAAA,GAAAmB,SAAA,CAAAnB,SAAA,GAAAD,MAAA,CAAAqB,MAAA,CAAAc,CAAA,YAAAM,sBAAA3C,CAAA,gCAAA4C,OAAA,WAAA7C,CAAA,IAAAkB,MAAA,CAAAjB,CAAA,EAAAD,CAAA,YAAAC,CAAA,gBAAA6C,OAAA,CAAA9C,CAAA,EAAAC,CAAA,sBAAA8C,cAAA9C,CAAA,EAAAD,CAAA,aAAAgD,OAAA9C,CAAA,EAAAK,CAAA,EAAAG,CAAA,EAAAE,CAAA,QAAAE,CAAA,GAAAa,QAAA,CAAA1B,CAAA,CAAAC,CAAA,GAAAD,CAAA,EAAAM,CAAA,mBAAAO,CAAA,CAAAc,IAAA,QAAAZ,CAAA,GAAAF,CAAA,CAAAe,GAAA,EAAAE,CAAA,GAAAf,CAAA,CAAAP,KAAA,SAAAsB,CAAA,gBAAAkB,OAAA,CAAAlB,CAAA,KAAA1B,CAAA,CAAAyB,IAAA,CAAAC,CAAA,eAAA/B,CAAA,CAAAkD,OAAA,CAAAnB,CAAA,CAAAoB,OAAA,EAAAC,IAAA,WAAAnD,CAAA,IAAA+C,MAAA,SAAA/C,CAAA,EAAAS,CAAA,EAAAE,CAAA,gBAAAX,CAAA,IAAA+C,MAAA,UAAA/C,CAAA,EAAAS,CAAA,EAAAE,CAAA,QAAAZ,CAAA,CAAAkD,OAAA,CAAAnB,CAAA,EAAAqB,IAAA,WAAAnD,CAAA,IAAAe,CAAA,CAAAP,KAAA,GAAAR,CAAA,EAAAS,CAAA,CAAAM,CAAA,gBAAAf,CAAA,WAAA+C,MAAA,UAAA/C,CAAA,EAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,CAAAE,CAAA,CAAAe,GAAA,SAAA3B,CAAA,EAAAK,CAAA,oBAAAE,KAAA,WAAAA,MAAAR,CAAA,EAAAI,CAAA,aAAAgD,2BAAA,eAAArD,CAAA,WAAAA,CAAA,EAAAE,CAAA,IAAA8C,MAAA,CAAA/C,CAAA,EAAAI,CAAA,EAAAL,CAAA,EAAAE,CAAA,gBAAAA,CAAA,GAAAA,CAAA,GAAAA,CAAA,CAAAkD,IAAA,CAAAC,0BAAA,EAAAA,0BAAA,IAAAA,0BAAA,qBAAA3B,iBAAA1B,CAAA,EAAAE,CAAA,EAAAG,CAAA,QAAAE,CAAA,GAAAwB,CAAA,mBAAArB,CAAA,EAAAE,CAAA,QAAAL,CAAA,KAAA0B,CAAA,YAAAqB,KAAA,sCAAA/C,CAAA,KAAA2B,CAAA,oBAAAxB,CAAA,QAAAE,CAAA,WAAAH,KAAA,EAAAR,CAAA,EAAAsD,IAAA,eAAAlD,CAAA,CAAAmD,MAAA,GAAA9C,CAAA,EAAAL,CAAA,CAAAwB,GAAA,GAAAjB,CAAA,UAAAE,CAAA,GAAAT,CAAA,CAAAoD,QAAA,MAAA3C,CAAA,QAAAE,CAAA,GAAA0C,mBAAA,CAAA5C,CAAA,EAAAT,CAAA,OAAAW,CAAA,QAAAA,CAAA,KAAAmB,CAAA,mBAAAnB,CAAA,qBAAAX,CAAA,CAAAmD,MAAA,EAAAnD,CAAA,CAAAsD,IAAA,GAAAtD,CAAA,CAAAuD,KAAA,GAAAvD,CAAA,CAAAwB,GAAA,sBAAAxB,CAAA,CAAAmD,MAAA,QAAAjD,CAAA,KAAAwB,CAAA,QAAAxB,CAAA,GAAA2B,CAAA,EAAA7B,CAAA,CAAAwB,GAAA,EAAAxB,CAAA,CAAAwD,iBAAA,CAAAxD,CAAA,CAAAwB,GAAA,uBAAAxB,CAAA,CAAAmD,MAAA,IAAAnD,CAAA,CAAAyD,MAAA,WAAAzD,CAAA,CAAAwB,GAAA,GAAAtB,CAAA,GAAA0B,CAAA,MAAAK,CAAA,GAAAX,QAAA,CAAA3B,CAAA,EAAAE,CAAA,EAAAG,CAAA,oBAAAiC,CAAA,CAAAV,IAAA,QAAArB,CAAA,GAAAF,CAAA,CAAAkD,IAAA,GAAArB,CAAA,GAAAF,CAAA,EAAAM,CAAA,CAAAT,GAAA,KAAAM,CAAA,qBAAA1B,KAAA,EAAA6B,CAAA,CAAAT,GAAA,EAAA0B,IAAA,EAAAlD,CAAA,CAAAkD,IAAA,kBAAAjB,CAAA,CAAAV,IAAA,KAAArB,CAAA,GAAA2B,CAAA,EAAA7B,CAAA,CAAAmD,MAAA,YAAAnD,CAAA,CAAAwB,GAAA,GAAAS,CAAA,CAAAT,GAAA,mBAAA6B,oBAAA1D,CAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAH,CAAA,CAAAsD,MAAA,EAAAjD,CAAA,GAAAP,CAAA,CAAAa,QAAA,CAAAR,CAAA,OAAAE,CAAA,KAAAN,CAAA,SAAAC,CAAA,CAAAuD,QAAA,qBAAApD,CAAA,IAAAL,CAAA,CAAAa,QAAA,CAAAkD,MAAA,KAAA7D,CAAA,CAAAsD,MAAA,aAAAtD,CAAA,CAAA2B,GAAA,GAAA5B,CAAA,EAAAyD,mBAAA,CAAA1D,CAAA,EAAAE,CAAA,eAAAA,CAAA,CAAAsD,MAAA,kBAAAnD,CAAA,KAAAH,CAAA,CAAAsD,MAAA,YAAAtD,CAAA,CAAA2B,GAAA,OAAAmC,SAAA,uCAAA3D,CAAA,iBAAA8B,CAAA,MAAAzB,CAAA,GAAAiB,QAAA,CAAApB,CAAA,EAAAP,CAAA,CAAAa,QAAA,EAAAX,CAAA,CAAA2B,GAAA,mBAAAnB,CAAA,CAAAkB,IAAA,SAAA1B,CAAA,CAAAsD,MAAA,YAAAtD,CAAA,CAAA2B,GAAA,GAAAnB,CAAA,CAAAmB,GAAA,EAAA3B,CAAA,CAAAuD,QAAA,SAAAtB,CAAA,MAAAvB,CAAA,GAAAF,CAAA,CAAAmB,GAAA,SAAAjB,CAAA,GAAAA,CAAA,CAAA2C,IAAA,IAAArD,CAAA,CAAAF,CAAA,CAAAiE,UAAA,IAAArD,CAAA,CAAAH,KAAA,EAAAP,CAAA,CAAAgE,IAAA,GAAAlE,CAAA,CAAAmE,OAAA,eAAAjE,CAAA,CAAAsD,MAAA,KAAAtD,CAAA,CAAAsD,MAAA,WAAAtD,CAAA,CAAA2B,GAAA,GAAA5B,CAAA,GAAAC,CAAA,CAAAuD,QAAA,SAAAtB,CAAA,IAAAvB,CAAA,IAAAV,CAAA,CAAAsD,MAAA,YAAAtD,CAAA,CAAA2B,GAAA,OAAAmC,SAAA,sCAAA9D,CAAA,CAAAuD,QAAA,SAAAtB,CAAA,cAAAiC,aAAAnE,CAAA,QAAAD,CAAA,KAAAqE,MAAA,EAAApE,CAAA,YAAAA,CAAA,KAAAD,CAAA,CAAAsE,QAAA,GAAArE,CAAA,WAAAA,CAAA,KAAAD,CAAA,CAAAuE,UAAA,GAAAtE,CAAA,KAAAD,CAAA,CAAAwE,QAAA,GAAAvE,CAAA,WAAAwE,UAAA,CAAAC,IAAA,CAAA1E,CAAA,cAAA2E,cAAA1E,CAAA,QAAAD,CAAA,GAAAC,CAAA,CAAA2E,UAAA,QAAA5E,CAAA,CAAA4B,IAAA,oBAAA5B,CAAA,CAAA6B,GAAA,EAAA5B,CAAA,CAAA2E,UAAA,GAAA5E,CAAA,aAAAyB,QAAAxB,CAAA,SAAAwE,UAAA,MAAAJ,MAAA,aAAApE,CAAA,CAAA4C,OAAA,CAAAuB,YAAA,cAAAS,KAAA,iBAAAnC,OAAA1C,CAAA,QAAAA,CAAA,WAAAA,CAAA,QAAAE,CAAA,GAAAF,CAAA,CAAAY,CAAA,OAAAV,CAAA,SAAAA,CAAA,CAAA4B,IAAA,CAAA9B,CAAA,4BAAAA,CAAA,CAAAkE,IAAA,SAAAlE,CAAA,OAAA8E,KAAA,CAAA9E,CAAA,CAAA+E,MAAA,SAAAxE,CAAA,OAAAG,CAAA,YAAAwD,KAAA,aAAA3D,CAAA,GAAAP,CAAA,CAAA+E,MAAA,OAAA1E,CAAA,CAAAyB,IAAA,CAAA9B,CAAA,EAAAO,CAAA,UAAA2D,IAAA,CAAAzD,KAAA,GAAAT,CAAA,CAAAO,CAAA,GAAA2D,IAAA,CAAAX,IAAA,OAAAW,IAAA,SAAAA,IAAA,CAAAzD,KAAA,GAAAR,CAAA,EAAAiE,IAAA,CAAAX,IAAA,OAAAW,IAAA,YAAAxD,CAAA,CAAAwD,IAAA,GAAAxD,CAAA,gBAAAsD,SAAA,CAAAf,OAAA,CAAAjD,CAAA,kCAAAoC,iBAAA,CAAAhC,SAAA,GAAAiC,0BAAA,EAAA9B,CAAA,CAAAoC,CAAA,mBAAAlC,KAAA,EAAA4B,0BAAA,EAAAjB,YAAA,SAAAb,CAAA,CAAA8B,0BAAA,mBAAA5B,KAAA,EAAA2B,iBAAA,EAAAhB,YAAA,SAAAgB,iBAAA,CAAA4C,WAAA,GAAA9D,MAAA,CAAAmB,0BAAA,EAAArB,CAAA,wBAAAhB,CAAA,CAAAiF,mBAAA,aAAAhF,CAAA,QAAAD,CAAA,wBAAAC,CAAA,IAAAA,CAAA,CAAAiF,WAAA,WAAAlF,CAAA,KAAAA,CAAA,KAAAoC,iBAAA,6BAAApC,CAAA,CAAAgF,WAAA,IAAAhF,CAAA,CAAAmF,IAAA,OAAAnF,CAAA,CAAAoF,IAAA,aAAAnF,CAAA,WAAAE,MAAA,CAAAkF,cAAA,GAAAlF,MAAA,CAAAkF,cAAA,CAAApF,CAAA,EAAAoC,0BAAA,KAAApC,CAAA,CAAAqF,SAAA,GAAAjD,0BAAA,EAAAnB,MAAA,CAAAjB,CAAA,EAAAe,CAAA,yBAAAf,CAAA,CAAAG,SAAA,GAAAD,MAAA,CAAAqB,MAAA,CAAAmB,CAAA,GAAA1C,CAAA,KAAAD,CAAA,CAAAuF,KAAA,aAAAtF,CAAA,aAAAkD,OAAA,EAAAlD,CAAA,OAAA2C,qBAAA,CAAAG,aAAA,CAAA3C,SAAA,GAAAc,MAAA,CAAA6B,aAAA,CAAA3C,SAAA,EAAAU,CAAA,iCAAAd,CAAA,CAAA+C,aAAA,GAAAA,aAAA,EAAA/C,CAAA,CAAAwF,KAAA,aAAAvF,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAE,CAAA,EAAAG,CAAA,eAAAA,CAAA,KAAAA,CAAA,GAAA+E,OAAA,OAAA7E,CAAA,OAAAmC,aAAA,CAAAzB,IAAA,CAAArB,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAE,CAAA,GAAAG,CAAA,UAAAV,CAAA,CAAAiF,mBAAA,CAAA/E,CAAA,IAAAU,CAAA,GAAAA,CAAA,CAAAsD,IAAA,GAAAd,IAAA,WAAAnD,CAAA,WAAAA,CAAA,CAAAsD,IAAA,GAAAtD,CAAA,CAAAQ,KAAA,GAAAG,CAAA,CAAAsD,IAAA,WAAAtB,qBAAA,CAAAD,CAAA,GAAAzB,MAAA,CAAAyB,CAAA,EAAA3B,CAAA,gBAAAE,MAAA,CAAAyB,CAAA,EAAA/B,CAAA,iCAAAM,MAAA,CAAAyB,CAAA,6DAAA3C,CAAA,CAAA0F,IAAA,aAAAzF,CAAA,QAAAD,CAAA,GAAAG,MAAA,CAAAF,CAAA,GAAAC,CAAA,gBAAAG,CAAA,IAAAL,CAAA,EAAAE,CAAA,CAAAwE,IAAA,CAAArE,CAAA,UAAAH,CAAA,CAAAyF,OAAA,aAAAzB,KAAA,WAAAhE,CAAA,CAAA6E,MAAA,SAAA9E,CAAA,GAAAC,CAAA,CAAA0F,GAAA,QAAA3F,CAAA,IAAAD,CAAA,SAAAkE,IAAA,CAAAzD,KAAA,GAAAR,CAAA,EAAAiE,IAAA,CAAAX,IAAA,OAAAW,IAAA,WAAAA,IAAA,CAAAX,IAAA,OAAAW,IAAA,QAAAlE,CAAA,CAAA0C,MAAA,GAAAA,MAAA,EAAAjB,OAAA,CAAArB,SAAA,KAAA8E,WAAA,EAAAzD,OAAA,EAAAoD,KAAA,WAAAA,MAAA7E,CAAA,aAAA6F,IAAA,WAAA3B,IAAA,WAAAP,IAAA,QAAAC,KAAA,GAAA3D,CAAA,OAAAsD,IAAA,YAAAE,QAAA,cAAAD,MAAA,gBAAA3B,GAAA,GAAA5B,CAAA,OAAAwE,UAAA,CAAA5B,OAAA,CAAA8B,aAAA,IAAA3E,CAAA,WAAAE,CAAA,kBAAAA,CAAA,CAAA4F,MAAA,OAAAzF,CAAA,CAAAyB,IAAA,OAAA5B,CAAA,MAAA4E,KAAA,EAAA5E,CAAA,CAAA6F,KAAA,cAAA7F,CAAA,IAAAD,CAAA,MAAA+F,IAAA,WAAAA,KAAA,SAAAzC,IAAA,WAAAtD,CAAA,QAAAwE,UAAA,IAAAG,UAAA,kBAAA3E,CAAA,CAAA2B,IAAA,QAAA3B,CAAA,CAAA4B,GAAA,cAAAoE,IAAA,KAAApC,iBAAA,WAAAA,kBAAA7D,CAAA,aAAAuD,IAAA,QAAAvD,CAAA,MAAAE,CAAA,kBAAAgG,OAAA7F,CAAA,EAAAE,CAAA,WAAAK,CAAA,CAAAgB,IAAA,YAAAhB,CAAA,CAAAiB,GAAA,GAAA7B,CAAA,EAAAE,CAAA,CAAAgE,IAAA,GAAA7D,CAAA,EAAAE,CAAA,KAAAL,CAAA,CAAAsD,MAAA,WAAAtD,CAAA,CAAA2B,GAAA,GAAA5B,CAAA,KAAAM,CAAA,aAAAA,CAAA,QAAAkE,UAAA,CAAAM,MAAA,MAAAxE,CAAA,SAAAA,CAAA,QAAAG,CAAA,QAAA+D,UAAA,CAAAlE,CAAA,GAAAK,CAAA,GAAAF,CAAA,CAAAkE,UAAA,iBAAAlE,CAAA,CAAA2D,MAAA,SAAA6B,MAAA,aAAAxF,CAAA,CAAA2D,MAAA,SAAAwB,IAAA,QAAA/E,CAAA,GAAAT,CAAA,CAAAyB,IAAA,CAAApB,CAAA,eAAAM,CAAA,GAAAX,CAAA,CAAAyB,IAAA,CAAApB,CAAA,qBAAAI,CAAA,IAAAE,CAAA,aAAA6E,IAAA,GAAAnF,CAAA,CAAA4D,QAAA,SAAA4B,MAAA,CAAAxF,CAAA,CAAA4D,QAAA,gBAAAuB,IAAA,GAAAnF,CAAA,CAAA6D,UAAA,SAAA2B,MAAA,CAAAxF,CAAA,CAAA6D,UAAA,cAAAzD,CAAA,aAAA+E,IAAA,GAAAnF,CAAA,CAAA4D,QAAA,SAAA4B,MAAA,CAAAxF,CAAA,CAAA4D,QAAA,qBAAAtD,CAAA,YAAAsC,KAAA,qDAAAuC,IAAA,GAAAnF,CAAA,CAAA6D,UAAA,SAAA2B,MAAA,CAAAxF,CAAA,CAAA6D,UAAA,YAAAT,MAAA,WAAAA,OAAA7D,CAAA,EAAAD,CAAA,aAAAE,CAAA,QAAAuE,UAAA,CAAAM,MAAA,MAAA7E,CAAA,SAAAA,CAAA,QAAAK,CAAA,QAAAkE,UAAA,CAAAvE,CAAA,OAAAK,CAAA,CAAA8D,MAAA,SAAAwB,IAAA,IAAAxF,CAAA,CAAAyB,IAAA,CAAAvB,CAAA,wBAAAsF,IAAA,GAAAtF,CAAA,CAAAgE,UAAA,QAAA7D,CAAA,GAAAH,CAAA,aAAAG,CAAA,iBAAAT,CAAA,mBAAAA,CAAA,KAAAS,CAAA,CAAA2D,MAAA,IAAArE,CAAA,IAAAA,CAAA,IAAAU,CAAA,CAAA6D,UAAA,KAAA7D,CAAA,cAAAE,CAAA,GAAAF,CAAA,GAAAA,CAAA,CAAAkE,UAAA,cAAAhE,CAAA,CAAAgB,IAAA,GAAA3B,CAAA,EAAAW,CAAA,CAAAiB,GAAA,GAAA7B,CAAA,EAAAU,CAAA,SAAA8C,MAAA,gBAAAU,IAAA,GAAAxD,CAAA,CAAA6D,UAAA,EAAApC,CAAA,SAAAgE,QAAA,CAAAvF,CAAA,MAAAuF,QAAA,WAAAA,SAAAlG,CAAA,EAAAD,CAAA,oBAAAC,CAAA,CAAA2B,IAAA,QAAA3B,CAAA,CAAA4B,GAAA,qBAAA5B,CAAA,CAAA2B,IAAA,mBAAA3B,CAAA,CAAA2B,IAAA,QAAAsC,IAAA,GAAAjE,CAAA,CAAA4B,GAAA,gBAAA5B,CAAA,CAAA2B,IAAA,SAAAqE,IAAA,QAAApE,GAAA,GAAA5B,CAAA,CAAA4B,GAAA,OAAA2B,MAAA,kBAAAU,IAAA,yBAAAjE,CAAA,CAAA2B,IAAA,IAAA5B,CAAA,UAAAkE,IAAA,GAAAlE,CAAA,GAAAmC,CAAA,KAAAiE,MAAA,WAAAA,OAAAnG,CAAA,aAAAD,CAAA,QAAAyE,UAAA,CAAAM,MAAA,MAAA/E,CAAA,SAAAA,CAAA,QAAAE,CAAA,QAAAuE,UAAA,CAAAzE,CAAA,OAAAE,CAAA,CAAAqE,UAAA,KAAAtE,CAAA,cAAAkG,QAAA,CAAAjG,CAAA,CAAA0E,UAAA,EAAA1E,CAAA,CAAAsE,QAAA,GAAAG,aAAA,CAAAzE,CAAA,GAAAiC,CAAA,OAAAkE,KAAA,WAAAC,OAAArG,CAAA,aAAAD,CAAA,QAAAyE,UAAA,CAAAM,MAAA,MAAA/E,CAAA,SAAAA,CAAA,QAAAE,CAAA,QAAAuE,UAAA,CAAAzE,CAAA,OAAAE,CAAA,CAAAmE,MAAA,KAAApE,CAAA,QAAAI,CAAA,GAAAH,CAAA,CAAA0E,UAAA,kBAAAvE,CAAA,CAAAuB,IAAA,QAAArB,CAAA,GAAAF,CAAA,CAAAwB,GAAA,EAAA8C,aAAA,CAAAzE,CAAA,YAAAK,CAAA,gBAAA+C,KAAA,8BAAAiD,aAAA,WAAAA,cAAAvG,CAAA,EAAAE,CAAA,EAAAG,CAAA,gBAAAoD,QAAA,KAAA5C,QAAA,EAAA6B,MAAA,CAAA1C,CAAA,GAAAiE,UAAA,EAAA/D,CAAA,EAAAiE,OAAA,EAAA9D,CAAA,oBAAAmD,MAAA,UAAA3B,GAAA,GAAA5B,CAAA,GAAAkC,CAAA,OAAAnC,CAAA;AAAA,SAAAwG,QAAAxG,CAAA,EAAAE,CAAA,QAAAD,CAAA,GAAAE,MAAA,CAAAuF,IAAA,CAAA1F,CAAA,OAAAG,MAAA,CAAAsG,qBAAA,QAAAlG,CAAA,GAAAJ,MAAA,CAAAsG,qBAAA,CAAAzG,CAAA,GAAAE,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAmG,MAAA,WAAAxG,CAAA,WAAAC,MAAA,CAAAwG,wBAAA,CAAA3G,CAAA,EAAAE,CAAA,EAAAiB,UAAA,OAAAlB,CAAA,CAAAyE,IAAA,CAAAkC,KAAA,CAAA3G,CAAA,EAAAM,CAAA,YAAAN,CAAA;AAAA,SAAA4G,cAAA7G,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA4G,SAAA,CAAA/B,MAAA,EAAA7E,CAAA,UAAAD,CAAA,WAAA6G,SAAA,CAAA5G,CAAA,IAAA4G,SAAA,CAAA5G,CAAA,QAAAA,CAAA,OAAAsG,OAAA,CAAArG,MAAA,CAAAF,CAAA,OAAA4C,OAAA,WAAA3C,CAAA,IAAA6G,eAAA,CAAA/G,CAAA,EAAAE,CAAA,EAAAD,CAAA,CAAAC,CAAA,SAAAC,MAAA,CAAA6G,yBAAA,GAAA7G,MAAA,CAAA8G,gBAAA,CAAAjH,CAAA,EAAAG,MAAA,CAAA6G,yBAAA,CAAA/G,CAAA,KAAAuG,OAAA,CAAArG,MAAA,CAAAF,CAAA,GAAA4C,OAAA,WAAA3C,CAAA,IAAAC,MAAA,CAAAK,cAAA,CAAAR,CAAA,EAAAE,CAAA,EAAAC,MAAA,CAAAwG,wBAAA,CAAA1G,CAAA,EAAAC,CAAA,iBAAAF,CAAA;AAAA,SAAAkH,mBAAAC,GAAA,EAAAjE,OAAA,EAAAkE,MAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,GAAA,EAAA1F,GAAA,cAAA2F,IAAA,GAAAL,GAAA,CAAAI,GAAA,EAAA1F,GAAA,OAAApB,KAAA,GAAA+G,IAAA,CAAA/G,KAAA,WAAAgH,KAAA,IAAAL,MAAA,CAAAK,KAAA,iBAAAD,IAAA,CAAAjE,IAAA,IAAAL,OAAA,CAAAzC,KAAA,YAAAgF,OAAA,CAAAvC,OAAA,CAAAzC,KAAA,EAAA2C,IAAA,CAAAiE,KAAA,EAAAC,MAAA;AAAA,SAAAI,kBAAAC,EAAA,6BAAAC,IAAA,SAAAC,IAAA,GAAAf,SAAA,aAAArB,OAAA,WAAAvC,OAAA,EAAAkE,MAAA,QAAAD,GAAA,GAAAQ,EAAA,CAAAf,KAAA,CAAAgB,IAAA,EAAAC,IAAA,YAAAR,MAAA5G,KAAA,IAAAyG,kBAAA,CAAAC,GAAA,EAAAjE,OAAA,EAAAkE,MAAA,EAAAC,KAAA,EAAAC,MAAA,UAAA7G,KAAA,cAAA6G,OAAAQ,GAAA,IAAAZ,kBAAA,CAAAC,GAAA,EAAAjE,OAAA,EAAAkE,MAAA,EAAAC,KAAA,EAAAC,MAAA,WAAAQ,GAAA,KAAAT,KAAA,CAAAU,SAAA;AAAA,SAAAC,gBAAAC,QAAA,EAAAC,WAAA,UAAAD,QAAA,YAAAC,WAAA,eAAAlE,SAAA;AAAA,SAAAmE,kBAAAC,MAAA,EAAAC,KAAA,aAAA3H,CAAA,MAAAA,CAAA,GAAA2H,KAAA,CAAAtD,MAAA,EAAArE,CAAA,UAAA4H,UAAA,GAAAD,KAAA,CAAA3H,CAAA,GAAA4H,UAAA,CAAAnH,UAAA,GAAAmH,UAAA,CAAAnH,UAAA,WAAAmH,UAAA,CAAAlH,YAAA,wBAAAkH,UAAA,EAAAA,UAAA,CAAAjH,QAAA,SAAAlB,MAAA,CAAAK,cAAA,CAAA4H,MAAA,EAAAG,cAAA,CAAAD,UAAA,CAAAf,GAAA,GAAAe,UAAA;AAAA,SAAAE,aAAAN,WAAA,EAAAO,UAAA,EAAAC,WAAA,QAAAD,UAAA,EAAAN,iBAAA,CAAAD,WAAA,CAAA9H,SAAA,EAAAqI,UAAA,OAAAC,WAAA,EAAAP,iBAAA,CAAAD,WAAA,EAAAQ,WAAA,GAAAvI,MAAA,CAAAK,cAAA,CAAA0H,WAAA,iBAAA7G,QAAA,mBAAA6G,WAAA;AAAA,SAAAS,UAAAC,QAAA,EAAAC,UAAA,eAAAA,UAAA,mBAAAA,UAAA,uBAAA7E,SAAA,0DAAA4E,QAAA,CAAAxI,SAAA,GAAAD,MAAA,CAAAqB,MAAA,CAAAqH,UAAA,IAAAA,UAAA,CAAAzI,SAAA,IAAA8E,WAAA,IAAAzE,KAAA,EAAAmI,QAAA,EAAAvH,QAAA,QAAAD,YAAA,aAAAjB,MAAA,CAAAK,cAAA,CAAAoI,QAAA,iBAAAvH,QAAA,gBAAAwH,UAAA,EAAAC,eAAA,CAAAF,QAAA,EAAAC,UAAA;AAAA,SAAAC,gBAAAvI,CAAA,EAAA+B,CAAA,IAAAwG,eAAA,GAAA3I,MAAA,CAAAkF,cAAA,GAAAlF,MAAA,CAAAkF,cAAA,CAAA0D,IAAA,cAAAD,gBAAAvI,CAAA,EAAA+B,CAAA,IAAA/B,CAAA,CAAA+E,SAAA,GAAAhD,CAAA,SAAA/B,CAAA,YAAAuI,eAAA,CAAAvI,CAAA,EAAA+B,CAAA;AAAA,SAAA0G,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,GAAAC,eAAA,CAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,GAAAF,eAAA,OAAApE,WAAA,EAAAqE,MAAA,GAAAE,OAAA,CAAAC,SAAA,CAAAL,KAAA,EAAAvC,SAAA,EAAA0C,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAzC,KAAA,OAAAE,SAAA,YAAA6C,0BAAA,OAAAJ,MAAA;AAAA,SAAAI,2BAAA/B,IAAA,EAAA9F,IAAA,QAAAA,IAAA,KAAAmB,OAAA,CAAAnB,IAAA,yBAAAA,IAAA,2BAAAA,IAAA,aAAAA,IAAA,yBAAAkC,SAAA,uEAAA4F,sBAAA,CAAAhC,IAAA;AAAA,SAAAgC,uBAAAhC,IAAA,QAAAA,IAAA,yBAAAiC,cAAA,wEAAAjC,IAAA;AAAA,SAAAuB,0BAAA,eAAAM,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAA5J,SAAA,CAAA6J,OAAA,CAAAnI,IAAA,CAAA2H,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAAhK,CAAA;AAAA,SAAAsJ,gBAAA/I,CAAA,IAAA+I,eAAA,GAAAnJ,MAAA,CAAAkF,cAAA,GAAAlF,MAAA,CAAAqC,cAAA,CAAAuG,IAAA,cAAAO,gBAAA/I,CAAA,WAAAA,CAAA,CAAA+E,SAAA,IAAAnF,MAAA,CAAAqC,cAAA,CAAAjC,CAAA,aAAA+I,eAAA,CAAA/I,CAAA;AAAA,SAAAwG,gBAAAmD,GAAA,EAAA3C,GAAA,EAAA9G,KAAA,IAAA8G,GAAA,GAAAgB,cAAA,CAAAhB,GAAA,OAAAA,GAAA,IAAA2C,GAAA,IAAA/J,MAAA,CAAAK,cAAA,CAAA0J,GAAA,EAAA3C,GAAA,IAAA9G,KAAA,EAAAA,KAAA,EAAAU,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAA6I,GAAA,CAAA3C,GAAA,IAAA9G,KAAA,WAAAyJ,GAAA;AAAA,SAAA3B,eAAAtI,CAAA,QAAAS,CAAA,GAAAyJ,YAAA,CAAAlK,CAAA,gCAAAgD,OAAA,CAAAvC,CAAA,IAAAA,CAAA,GAAA0J,MAAA,CAAA1J,CAAA;AAAA,SAAAyJ,aAAAlK,CAAA,EAAAC,CAAA,oBAAA+C,OAAA,CAAAhD,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAD,CAAA,GAAAC,CAAA,CAAAU,MAAA,CAAA0J,WAAA,kBAAArK,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAA8B,IAAA,CAAA7B,CAAA,EAAAC,CAAA,gCAAA+C,OAAA,CAAAvC,CAAA,UAAAA,CAAA,YAAAsD,SAAA,yEAAA9D,CAAA,GAAAkK,MAAA,GAAAE,MAAA,EAAArK,CAAA;AAAA,SAASsK,IAAI,EAAEC,KAAK,EAAEC,KAAK,EAAEC,YAAY,EAAEC,iBAAiB,EAAEC,cAAc,QAAQ,eAAe;AACnG,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,cAAc,IAAIC,cAAc;AACzC,OAAOC,WAAW;AAElB,SAASC,gBAAgB;AAEzB,SAASC,MAAM;AAEf,SAASC,kBAAkB,EAAEC,iBAAiB;AAC9C,OAAOC,YAAY;AAEnB,IAAMC,cAAc,GAAG;EACrBC,GAAG,EAAE,EAAE;EAAE;EACTC,KAAK,EAAE,CAAC;EACRC,SAAS,EAAE;IACT7J,IAAI,EAAE,CAACuJ,kBAAkB,CAACO,MAAM,CAAC;IAAE;IACnCC,QAAQ,EAAE,CAAC;IACXC,MAAM,EAAE;EACV,CAAC;EACDC,MAAM,EAAE;IACNN,GAAG,EAAE,EAAE;IACPO,OAAO,EAAE,IAAI;IACbC,MAAM,EAAE,GAAG;IACXC,KAAK,EAAE;EACT;AACF,CAAC;AAED,IAAMC,MAAM,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;AAChD,IAAMC,SAAS,MAAAC,MAAA,CAAMlB,gBAAgB,sBAAmB;AACxD,IAAMmB,IAAI,GAAG,IAAI1B,YAAY,CAAC,CAAC;AAAA,IAEzB2B,IAAI,0BAAAC,YAAA;EAAA3D,SAAA,CAAA0D,IAAA,EAAAC,YAAA;EAAA,IAAAC,MAAA,GAAAvD,YAAA,CAAAqD,IAAA;EAiDR,SAAAA,KAAYG,MAAc,EAAEC,YAA0B,EAAE;IAAA,IAAAC,KAAA;IAAA1E,eAAA,OAAAqE,IAAA;IACtDK,KAAA,GAAAH,MAAA,CAAAzK,IAAA,OAAM2K,YAAY;IAAC1F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IAxCrB;IAAA3F,eAAA,CAAA6C,sBAAA,CAAA8C,KAAA;IA0CE,IAAMC,KAAK,GAAG9B,CAAC,CAAC+B,SAAS,CAAC/B,CAAC,CAACgC,SAAS,CAACvB,cAAc,CAAC,EAAEkB,MAAM,EAAEE,KAAA,CAAKI,oBAAoB,CAAC;IACzF,IAAQvB,GAAG,GAA4CoB,KAAK,CAApDpB,GAAG;MAAEE,SAAS,GAAiCkB,KAAK,CAA/ClB,SAAS;MAAAsB,YAAA,GAAiCJ,KAAK,CAApCnB,KAAK;MAALA,KAAK,GAAAuB,YAAA,cAAG7B,MAAM,CAAC8B,GAAG,GAAAD,YAAA;MAAElB,MAAM,GAAKc,KAAK,CAAhBd,MAAM;IAClDa,KAAA,CAAKO,IAAI,GAAG1B,GAAG;IACfmB,KAAA,CAAKQ,UAAU,GAAGzB,SAAS;IAC3BiB,KAAA,CAAKS,MAAM,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC9B,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7CkB,KAAA,CAAKa,OAAO,GAAG1B,MAAM;IACrB,IAAI,CAACA,MAAM,CAACG,KAAK,EACfU,KAAA,CAAKa,OAAO,CAACvB,KAAK,GAAGU,KAAA,CAAKc,QAAQ,CAAC,CAAC;IAEtCd,KAAA,CAAKe,aAAa,GAAGf,KAAA,CAAKgB,IAAI,CAAC,CAAC;IAAA,OAAAhB,KAAA;EAClC;;EAEA;EAAAlE,YAAA,CAAA6D,IAAA;IAAA9E,GAAA;IAAAoG,GAAA,EAnDA,SAAAA,IAAA,EAAmB;MACjB,OAAO,IAAI,CAACF,aAAa;IAC3B;EAAC;IAAAlG,GAAA;IAAAoG,GAAA,EAED,SAAAA,IAAA,EAAyB;MACvB,OAAO,IAAI,CAACV,IAAI;IAClB,CAAC;IAAAW,GAAA,EAED,SAAAA,IAAenN,KAAa,EAAE;MAC5B,IAAI,CAACwM,IAAI,GAAGxM,KAAK;IACnB;EAAC;IAAA8G,GAAA;IAAAoG,GAAA,EAED,SAAAA,IAAA,EAAwC;MACtC,OAAO,IAAI,CAACT,UAAU;IACxB;EAAC;IAAA3F,GAAA;IAAAoG,GAAA,EAED,SAAAA,IAAA,EAA2B;MACzB,OAAO,IAAI,CAACR,MAAM;IACpB,CAAC;IAAAS,GAAA,EAED,SAAAA,IAAiBnN,KAAa,EAAE;MAC9B,IAAI,IAAI,CAAC0M,MAAM,KAAK1M,KAAK,EACvB;MACF,IAAI,CAAC0M,MAAM,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC7M,KAAK,EAAE,CAAC,CAAC,CAAC;MAC7C,IAAI,CAACoN,YAAY,CAAC,CAAC;MACnB,IAAI,CAAChC,MAAM,CAACG,KAAK,GAAG,IAAI,CAACwB,QAAQ,CAAC,CAAC;IACrC;EAAC;IAAAjG,GAAA;IAAAoG,GAAA,EAED,SAAAA,IAAA,EAAsC;MACpC,OAAO,IAAI,CAACJ,OAAO;IACrB,CAAC;IAAAK,GAAA,EAED,SAAAA,IAAkBnN,KAAuB,EAAE;MACzC,IAAI,CAAC8M,OAAO,GAAG9M,KAAK;IACtB;EAAC;IAAA8G,GAAA;IAAA9G,KAAA;MAAA,IAAAqN,KAAA,GAAApG,iBAAA,eAAA3H,mBAAA,GAAAqF,IAAA,CAkBD,SAAA2I,QAAA;QAAA,IAAAC,MAAA;QAAA,IAAAC,KAAA,EAAAC,WAAA;QAAA,OAAAnO,mBAAA,GAAAuB,IAAA,UAAA6M,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAvI,IAAA,GAAAuI,QAAA,CAAAlK,IAAA;YAAA;cACQ+J,KAAK,GAAG,IAAIxD,KAAK,CAAC,CAAC;cAAA2D,QAAA,CAAAlK,IAAA;cAAA,OACF,IAAI,CAACmK,SAAS,CAACnC,SAAS,CAAC;YAAA;cAAhD,IAAI,CAACoC,SAAS,GAAAF,QAAA,CAAAzK,IAAA;cACdsK,KAAK,CAACM,GAAG,CAAC,IAAI,CAACD,SAAS,CAAC;;cAEzB;cAAAF,QAAA,CAAAlK,IAAA;cAAA,OAC0B6G,cAAc,CAACyD,aAAa,CAAC,CAAC;YAAA;cAAlDN,WAAW,GAAAE,QAAA,CAAAzK,IAAA;cACjB,IAAI,CAAC8K,WAAW,GAAG,IAAIP,WAAW,CAAArH,aAAA;gBAAGkF,MAAM,EAAE;cAAG,GAAK,IAAI,CAACF,MAAM,GAAI,IAAI,CAACY,YAAY,CAAC;cACtFwB,KAAK,CAACM,GAAG,CAAC,IAAI,CAACE,WAAW,CAAC;cAE3B,IAAI,CAACC,KAAK,GAAGT,KAAK;cAClB,IAAI,CAACM,GAAG,CAAC,IAAI,CAACG,KAAK,CAAC;cAEpB,IAAI,CAACb,YAAY,CAAC,CAAC;cACnB,IAAI,CAACc,gBAAgB,CAAC,CAAC;cAEvB,IAAI,CAACC,oBAAoB,GAAG,IAAIxD,iBAAiB,CAAC,IAAI,CAACkD,SAAS,EAAE,IAAI,CAACpB,UAAU,CAAC;cAElF,IAAI,CAACK,OAAO,GAAG,IAAI,CAACsB,WAAW,CAAC,IAAI,CAACtB,OAAO,EAAE,IAAI,CAACkB,WAAW,CAAC;cAC/D,IAAI,CAACvB,UAAU,GAAG,IAAI,CAAC2B,WAAW,CAAC,IAAI,CAAC3B,UAAU,EAAE,IAAI,EAAE,UAAC3F,GAAG,EAAE9G,KAAK,EAAK;gBACxEuN,MAAI,CAACY,oBAAoB,CAACrH,GAAG,CAAC,GAAG9G,KAAK;cACxC,CAAC,CAAC;cAAA,OAAA2N,QAAA,CAAAtK,MAAA,WACK,IAAI;YAAA;YAAA;cAAA,OAAAsK,QAAA,CAAApI,IAAA;UAAA;QAAA,GAAA+H,OAAA;MAAA,CACZ;MAAA,SAAAL,KAAA;QAAA,OAAAI,KAAA,CAAAlH,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAA4G,IAAA;IAAA;EAAA;IAAAnG,GAAA;IAAA9G,KAAA,EAED,SAAAkO,iBAAA,EAA2B;MACzB,IAAI,IAAI,CAAC9C,MAAM,CAACC,OAAO,KAAK,KAAK,EAAE;QACjC,IAAAgD,gBAAA,GAAmB,IAAI,CAACC,UAAU,CAAC,IAAI,CAACT,SAAS,CAAC;UAA1CU,MAAM,GAAAF,gBAAA,CAANE,MAAM;QACd,IAAI,CAACV,SAAS,CAACW,QAAQ,CAACC,IAAI,CAACF,MAAM,GAAG,GAAG,CAAC;MAC5C,CAAC,MACI;QAAE,IAAI,CAACV,SAAS,CAACW,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC;MAAC;IACzC;EAAC;IAAA3H,GAAA;IAAA9G,KAAA,EAED,SAAA4N,UAAkB9C,GAAW,EAAE;MAC7B,OAAO,IAAI9F,OAAO,CAAC,UAACvC,OAAO,EAAEkE,MAAM,EAAK;QACtCgF,IAAI,CAAC+C,QAAQ,CAAC;UACZC,GAAG,EAAE7D,GAAG;UACR8D,YAAY,EAAE,KAAK;UACnBC,OAAO,EAAE,IAAI;UACbC,KAAK,EAAE,IAAI;UACXC,MAAM,EAAE,SAAAA,OAACC,IAAI,EAAK;YAChBvM,OAAO,CAACuM,IAAI,CAACC,KAAK,CAAC;UACrB,CAAC;UACDC,OAAO,EAAE,SAAAA,QAAA,EAAM;YACb;YACAvI,MAAM,CAAC,IAAI,CAAC;UACd;QACF,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ;EAAC;IAAAG,GAAA;IAAA9G,KAAA,EAED,SAAAoN,aAAA,EAAuB;MACrB,IAAQ+B,YAAY,GAAqBvE,YAAY,CAA7CuE,YAAY;QAAEC,cAAc,GAAKxE,YAAY,CAA/BwE,cAAc;MACpC,IAAMC,aAAa,GAAG,IAAIlF,cAAc,CAAC;QACvCmF,QAAQ,EAAE;UACR/D,KAAK,EAAE;YAAEvL,KAAK,EAAE,IAAI+J,KAAK,CAAC,IAAI,CAACgD,QAAQ,CAAC,CAAC;UAAE;QAC7C,CAAC;QACDoC,YAAY,EAAZA,YAAY;QACZC,cAAc,EAAdA,cAAc;QACdG,WAAW,EAAE,IAAI;QACjB;QACAC,IAAI,EAAE,CAAC;QACP;QACAC,SAAS,EAAE,IAAI;QACfC,UAAU,EAAE;MAEd,CAAC,CAAC;MACF,IAAMC,cAAc,GAAG,IAAIzF,iBAAiB,CAAC;QAAEqB,KAAK,EAAE,IAAI,CAACwB,QAAQ,CAAC;MAAE,CAAC,CAAC;MAExE,IAAI,CAACc,SAAS,CAAC+B,QAAQ,CAAC,UAACC,MAAM,EAAK;QAClC,IAAIA,MAAM,CAAC1O,IAAI,KAAK,MAAM,EAAE;UAC1B,IAAM2O,IAAI,GAAGD,MAAc;UAC3B,IAAIC,IAAI,CAACpL,IAAI,KAAK,MAAM;YAAE;YACxBoL,IAAI,CAACC,QAAQ,GAAGJ,cAAc;UAChC,IAAIG,IAAI,CAACpL,IAAI,KAAK,QAAQ,EACxBoL,IAAI,CAACC,QAAQ,GAAGV,aAAa;UAC/B;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;QACF;MACF,CAAC,CAAC;IACJ;EAAC;IAAAvI,GAAA;IAAA9G,KAAA,EAED,SAAA+M,SAAA,EAAmB;MACjB,OAAOvB,MAAM,CAAC,IAAI,CAACT,KAAK,CAAC;IAC3B;;IAEA;EAAA;IAAAjE,GAAA;IAAA9G,KAAA;MAAA,IAAAgQ,OAAA,GAAA/I,iBAAA,eAAA3H,mBAAA,GAAAqF,IAAA,CACA,SAAAsL,SAAoBC,KAAa;QAAA,IAAAC,qBAAA;QAAA,OAAA7Q,mBAAA,GAAAuB,IAAA,UAAAuP,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAjL,IAAA,GAAAiL,SAAA,CAAA5M,IAAA;YAAA;cAAA4M,SAAA,CAAA5M,IAAA;cAAA,OACzB,IAAI,CAAC6M,KAAK;YAAA;cAChB,CAAAH,qBAAA,OAAI,CAAChC,oBAAoB,cAAAgC,qBAAA,eAAzBA,qBAAA,CAA2BI,MAAM,CAACL,KAAK,CAAC;YAAA;YAAA;cAAA,OAAAG,SAAA,CAAA9K,IAAA;UAAA;QAAA,GAAA0K,QAAA;MAAA,CACzC;MAAA,SAAAM,OAAAC,EAAA;QAAA,OAAAR,OAAA,CAAA7J,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAAkK,MAAA;IAAA,IAED;EAAA;IAAAzJ,GAAA;IAAA9G,KAAA;MAAA,IAAAyQ,KAAA,GAAAxJ,iBAAA,eAAA3H,mBAAA,GAAAqF,IAAA,CACA,SAAA+L,SAAkBvP,IAAyB;QAAA,OAAA7B,mBAAA,GAAAuB,IAAA,UAAA8P,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAxL,IAAA,GAAAwL,SAAA,CAAAnN,IAAA;YAAA;cAAAmN,SAAA,CAAAnN,IAAA;cAAA,OACnC,IAAI,CAAC6M,KAAK;YAAA;cAChB,IAAI,CAACnC,oBAAoB,CAAC0C,IAAI,CAAC1P,IAAI,CAAC;YAAA;YAAA;cAAA,OAAAyP,SAAA,CAAArL,IAAA;UAAA;QAAA,GAAAmL,QAAA;MAAA,CACrC;MAAA,SAAAG,KAAAC,GAAA;QAAA,OAAAL,KAAA,CAAAtK,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAAwK,IAAA;IAAA,IAED;EAAA;IAAA/J,GAAA;IAAA9G,KAAA;MAAA,IAAA+Q,KAAA,GAAA9J,iBAAA,eAAA3H,mBAAA,GAAAqF,IAAA,CACA,SAAAqM,SAAkB7P,IAAyB;QAAA,OAAA7B,mBAAA,GAAAuB,IAAA,UAAAoQ,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAA9L,IAAA,GAAA8L,SAAA,CAAAzN,IAAA;YAAA;cAAAyN,SAAA,CAAAzN,IAAA;cAAA,OACnC,IAAI,CAAC6M,KAAK;YAAA;cAChB,IAAI,CAACnC,oBAAoB,CAAC5I,IAAI,CAACpE,IAAI,CAAC;YAAA;YAAA;cAAA,OAAA+P,SAAA,CAAA3L,IAAA;UAAA;QAAA,GAAAyL,QAAA;MAAA,CACrC;MAAA,SAAAzL,KAAA4L,GAAA;QAAA,OAAAJ,KAAA,CAAA5K,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAAd,IAAA;IAAA;EAAA;IAAAuB,GAAA;IAAA9G,KAAA,EAED,SAAAsO,WAAmBwB,IAAI,EAAE;MACvB;MACA,IAAAsB,mBAAA,GAAqB,IAAItH,IAAI,CAAC,CAAC,CAACuH,aAAa,CAACvB,IAAI,CAAC;QAA3ClD,GAAG,GAAAwE,mBAAA,CAAHxE,GAAG;QAAEC,GAAG,GAAAuE,mBAAA,CAAHvE,GAAG;MAChB,OAAO;QAAEyE,KAAK,EAAE1E,GAAG,CAAC2E,CAAC,GAAG1E,GAAG,CAAC0E,CAAC;QAAEhD,MAAM,EAAE3B,GAAG,CAAClL,CAAC,GAAGmL,GAAG,CAACnL;MAAE,CAAC;IACxD;;IAEA;EAAA;IAAAoF,GAAA;IAAA9G,KAAA,EACA,SAAAwR,QAAA,EAAiB;MACf,IAAI,IAAI,CAACrD,oBAAoB,EAAE;QAC7B,IAAI,CAACA,oBAAoB,CAACsD,OAAO,CAAC,CAAC;QACnC,IAAI,CAACtD,oBAAoB,GAAG,IAAI;MAClC;IACF;EAAC;EAAA,OAAAvC,IAAA;AAAA,EA9LgBrB,WAAW;AAiM9B,SAASqB,IAAI,EAAElB,kBAAkB"}
1
+ {"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","obj","_toPrimitive","String","toPrimitive","Number","Box3","Color","Group","LoaderModule","MeshBasicMaterial","ShaderMaterial","_","StrategyManage","BubbleStrategy","ObjectLayer","SOURCE_BASE_PATH","ELevel","EMarkAnimationType","KeyframeAnimation","TanhaoShader","DEFAULT_OPTION","uri","level","animation","Bounce","duration","enable","bubble","visible","radius","color","COLORS","MODEL_URI","concat","load","Mark","_ObjectLayer","_super","option","_this","param","mergeWith","cloneDeep","arrayMergeCustomizer","_param$level","Low","_uri","_animation","_level","Math","max","min","_bubble","getColor","_readyPromise","init","get","set","setMeshLevel","_init","_callee","_this2","group","BubbleClass","_callee$","_context","loadModel","_markMesh","add","dynamicCircle","_bubbleMesh","_mesh","setModelPosition","_animationController","createProxy","_this$getBoxSize","getBoxSize","height","position","setY","loadGLTF","url","autoBackward","isCache","draco","onLoad","gltf","scene","onError","vertexShader","fragmentShader","panelMaterial","uniforms","transparent","side","depthTest","depthWrite","borderMaterial","traverse","object","mesh","material","_update","_callee2","delta","_this$_animationContr","_callee2$","_context2","ready","update","_x","_play","_callee3","_callee3$","_context3","play","_x2","_stop","_callee4","_callee4$","_context4","_x3","_Box3$setFromObject","setFromObject","width","x","dispose","destroy"],"sources":["../../../src/business/Mark/index.ts"],"sourcesContent":["import type { Mesh } from '@anov/3d-core'\nimport { Box3, Color, Group, LoaderModule, MeshBasicMaterial, ShaderMaterial, utils } from '@anov/3d-core'\nimport _ from 'lodash'\nimport { StrategyManage as BubbleStrategy } from '../Poi/particle/index'\nimport ObjectLayer from '../Base/ObjectLayer'\nimport type DynamicCircleMesh from '../Poi/particle/DynamicCircle'\nimport { SOURCE_BASE_PATH } from '../Utils/constant'\nimport type { Option } from './type'\nimport { ELevel } from './type'\nimport type { AnimationOption } from './KeyframeAnimation'\nimport { EMarkAnimationType, KeyframeAnimation } from './KeyframeAnimation'\nimport TanhaoShader from './shader/tanhao'\n\nconst DEFAULT_OPTION = {\n uri: '', // 统一资源标识符,既可以是code也是可以资源路径\n level: 0,\n animation: {\n type: [EMarkAnimationType.Bounce], // 动画类型:\"pulse\"(脉冲)、\"flash\"(闪烁)、\"bounce\"(弹跳),默认\"pulse\"\n duration: 1,\n enable: true,\n },\n bubble: {\n uri: '',\n visible: true,\n radius: 0.5,\n color: '',\n },\n}\n\nconst COLORS = ['#538FFF', '#FFA753', '#FF6353']\nconst MODEL_URI = `${SOURCE_BASE_PATH}/element/mark.glb`\nconst load = new LoaderModule()\n\nclass Mark extends ObjectLayer {\n private _uri: string\n private _level: ELevel\n private _animation: Option['animation']\n private _bubble: Option['bubble']\n\n private _readyPromise: Promise<boolean>\n private _mesh: Group\n private _markMesh: Group\n private _bubbleMesh: DynamicCircleMesh\n // 动画相关参数\n private _animationController: KeyframeAnimation\n\n public get ready() {\n return this._readyPromise\n }\n\n public get uri(): string {\n return this._uri\n }\n\n public set uri(value: string) {\n this._uri = value\n }\n\n public get animation(): AnimationOption {\n return this._animation\n }\n\n public get level(): ELevel {\n return this._level\n }\n\n public set level(value: ELevel) {\n if (this._level === value)\n return\n this._level = Math.max(0, Math.min(value, 3))\n this.setMeshLevel()\n this.bubble.color = this.getColor()\n }\n\n public get bubble(): Option['bubble'] {\n return this._bubble\n }\n\n public set bubble(value: Option['bubble']) {\n this._bubble = value\n }\n\n constructor(option: Option) {\n super()\n\n const param = _.mergeWith(_.cloneDeep(DEFAULT_OPTION), option, this.arrayMergeCustomizer)\n const { uri, animation, level = ELevel.Low, bubble } = param\n this._uri = uri\n this._animation = animation\n this._level = Math.max(0, Math.min(level, 3))\n this._bubble = bubble\n if (!bubble.color)\n this._bubble.color = this.getColor()\n\n this._readyPromise = this.init()\n }\n\n // 动画设置\n private async init() {\n const group = new Group()\n this._markMesh = await this.loadModel(MODEL_URI) as Group\n group.add(this._markMesh)\n\n // 气泡\n const BubbleClass = await BubbleStrategy.dynamicCircle()\n this._bubbleMesh = new BubbleClass({ radius: 0.5, ...this.bubble })\n group.add(this._bubbleMesh)\n\n this._mesh = group\n this.add(this._mesh)\n\n this.setMeshLevel()\n this.setModelPosition()\n\n this._animationController = new KeyframeAnimation(this._markMesh, this._animation)\n\n this._bubble = this.createProxy(this._bubble, this._bubbleMesh)\n this._animation = this.createProxy(this._animation, null, (key, value) => {\n this._animationController[key] = value\n })\n return true\n }\n\n private setModelPosition() {\n if (this.bubble.visible !== false) {\n const { height } = this.getBoxSize(this._markMesh)\n this._markMesh.position.setY(height * 0.5)\n }\n else { this._markMesh.position.setY(0) }\n }\n\n private loadModel(uri: string) {\n return new Promise((resolve, reject) => {\n load.loadGLTF({\n url: uri,\n autoBackward: false,\n isCache: true,\n draco: true,\n onLoad: (gltf) => {\n resolve(gltf.scene)\n },\n onError: () => {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject(null)\n },\n })\n })\n }\n\n private setMeshLevel() {\n const { vertexShader, fragmentShader } = TanhaoShader\n const panelMaterial = new ShaderMaterial({\n uniforms: {\n color: { value: new Color(this.getColor()) },\n },\n vertexShader,\n fragmentShader,\n transparent: true,\n // 设置材质双面渲染,确保从正反两面都能正确显示\n side: 2,\n // 关闭深度测试\n depthTest: true,\n depthWrite: false,\n\n })\n const borderMaterial = new MeshBasicMaterial({ color: this.getColor() })\n\n this._markMesh.traverse((object) => {\n if (object.type === 'Mesh') {\n const mesh = object as Mesh\n if (mesh.name === 'Mesh') // TODO:等确定命名规范\n mesh.material = borderMaterial\n if (mesh.name === 'Mesh_1')\n mesh.material = panelMaterial\n // // 处理材质数组\n // if (Array.isArray(mesh.material)) {\n // // 如果是多材质对象\n // (mesh.material as Material[]).forEach((material) => {\n // (material as MeshBasicMaterial).color.set(this.getColor())\n // })\n // }\n // else {\n // // 单一材质\n // (mesh.material as MeshBasicMaterial).color.set(this.getColor())\n // }\n }\n })\n }\n\n private getColor() {\n return COLORS[this.level]\n }\n\n // 更新动画混合器\n public async update(delta: number) {\n await this.ready\n this._animationController?.update(delta)\n }\n\n // 播放动画\n public async play(type?: EMarkAnimationType) {\n await this.ready\n this._animationController.play(type)\n }\n\n // 播放动画\n public async stop(type?: EMarkAnimationType) {\n await this.ready\n this._animationController.stop(type)\n }\n\n private getBoxSize(mesh) {\n // mesh.updateWorldMatrix(true, true)\n const { max, min } = new Box3().setFromObject(mesh)\n return { width: max.x - min.x, height: max.y - min.y }\n }\n\n // 销毁资源\n public dispose() {\n if (this._animationController) {\n this._animationController.destroy()\n this._animationController = null\n }\n }\n}\n\nexport { Mark, EMarkAnimationType }\n"],"mappings":"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"}
@@ -1,6 +1,4 @@
1
- import type { Object3D } from '@anov/3d-core';
2
- import { Vector3 } from '@anov/3d-core';
3
- import ObjectLayer from '../Base/ObjectLayer';
1
+ import { Object3D, Vector3 } from '@anov/3d-core';
4
2
  import type { MaterialSwitchSystemInterface } from '.';
5
3
  type MaterialSwitchType = 'Real' | 'Fresnel' | 'Frame' | 'Pure';
6
4
  export declare enum SwitchType {
@@ -55,7 +53,7 @@ type RuleItem = {
55
53
  /**
56
54
  * 材质切换系统
57
55
  */
58
- export declare class MaterialSwitchSystem extends ObjectLayer implements MaterialSwitchSystemInterface {
56
+ export declare class MaterialSwitchSystem extends Object3D implements MaterialSwitchSystemInterface {
59
57
  type: MaterialSwitchType;
60
58
  originalMaterial: Map<any, any>;
61
59
  uniforms: MaterialSwitchUniforms;
@@ -67,7 +65,7 @@ export declare class MaterialSwitchSystem extends ObjectLayer implements Materia
67
65
  private center;
68
66
  private isGenPlane;
69
67
  private rules;
70
- constructor(options?: MaterialSwitchOption, sceneControl?: any);
68
+ constructor(options?: MaterialSwitchOption);
71
69
  private initializeUniforms;
72
70
  private initializeBuiltInShader;
73
71
  private hideAllObjects;
@@ -15,9 +15,8 @@ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.g
15
15
  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; }
16
16
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
17
17
  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); }
18
- import { AmbientLight, Box3, Color, Mesh, MeshBasicMaterial, PlaneGeometry, Vector3, gsap, use } from '@anov/3d-core';
18
+ import { AmbientLight, Box3, Color, Mesh, MeshBasicMaterial, Object3D, PlaneGeometry, Vector3, gsap, use } from '@anov/3d-core';
19
19
  import { SurfaceMaterial } from "../../";
20
- import ObjectLayer from "../Base/ObjectLayer";
21
20
  import { finirheightTransitionEffect, finirlowEffect, inject, injectToBaseWrite, injectToFinirMaterial, injectToFrameFade, injectToGround, injectToRealFade } from "./inject";
22
21
  export var SwitchType = /*#__PURE__*/function (SwitchType) {
23
22
  SwitchType["Real"] = "Real";
@@ -34,13 +33,13 @@ var GROUND_MATCHING = ['Ground', 'Road', 'Yard'];
34
33
  /**
35
34
  * 材质切换系统
36
35
  */
37
- export var MaterialSwitchSystem = /*#__PURE__*/function (_ObjectLayer) {
38
- _inherits(MaterialSwitchSystem, _ObjectLayer);
36
+ export var MaterialSwitchSystem = /*#__PURE__*/function (_Object3D) {
37
+ _inherits(MaterialSwitchSystem, _Object3D);
39
38
  var _super = _createSuper(MaterialSwitchSystem);
40
- function MaterialSwitchSystem(options, sceneControl) {
39
+ function MaterialSwitchSystem(options) {
41
40
  var _this;
42
41
  _classCallCheck(this, MaterialSwitchSystem);
43
- _this = _super.call(this, sceneControl);
42
+ _this = _super.call(this);
44
43
  _defineProperty(_assertThisInitialized(_this), "type", SwitchType.Real);
45
44
  _defineProperty(_assertThisInitialized(_this), "originalMaterial", new Map());
46
45
  _defineProperty(_assertThisInitialized(_this), "uniforms", void 0);
@@ -80,7 +79,7 @@ export var MaterialSwitchSystem = /*#__PURE__*/function (_ObjectLayer) {
80
79
  // this.initializeBuiltInShader()
81
80
 
82
81
  // 暂时注释:材质切换逻辑(2026.03.09)
83
- // use.useframe(this.sceneControl, () => {
82
+ // use.useframe(() => {
84
83
  // this.uniforms.time.value += 0.00018
85
84
  // this.uniforms.height.value -= 1
86
85
  // })
@@ -148,12 +147,12 @@ export var MaterialSwitchSystem = /*#__PURE__*/function (_ObjectLayer) {
148
147
  value: function switchType(type, option) {
149
148
  var _option$rules;
150
149
  if (this.type === type) return;
151
- var light = use.useScene(this.sceneControl).scene.getObjectByName('FresnelLight');
150
+ var light = use.useScene().scene.getObjectByName('FresnelLight');
152
151
  if (light) light.removeFromParent();
153
152
  if (type !== SwitchType.Real) {
154
153
  var _light = new AmbientLight(0xFFFFFF, 1.5);
155
154
  _light.name = 'FresnelLight';
156
- use.useScene(this.sceneControl).scene.add(_light);
155
+ use.useScene().scene.add(_light);
157
156
  if (type === SwitchType.Pure) _light.intensity = 0.5;
158
157
  }
159
158
  if ((option === null || option === void 0 || (_option$rules = option.rules) === null || _option$rules === void 0 ? void 0 : _option$rules.length) > 0) {
@@ -263,7 +262,7 @@ export var MaterialSwitchSystem = /*#__PURE__*/function (_ObjectLayer) {
263
262
  currDistance = 0;
264
263
  speed = 0;
265
264
  acc = 0;
266
- this.frame = use.useframe(this.sceneControl, function (deltaTime) {
265
+ this.frame = use.useframe(function (deltaTime) {
267
266
  acc += distance * deltaTime;
268
267
  speed += acc * deltaTime;
269
268
  currDistance += speed * deltaTime;
@@ -474,9 +473,6 @@ export var MaterialSwitchSystem = /*#__PURE__*/function (_ObjectLayer) {
474
473
  });
475
474
  }
476
475
  }
477
-
478
- // fixme: 如果是 model 会触发一次多余的删除,因为 gltf 加载的时候已经添加在场景中了,
479
- // 此处,再一次添加进入了场景,thrrejs 在 add 之前会删除原来的模型
480
476
  }, {
481
477
  key: "handleNormalObject",
482
478
  value: function handleNormalObject(object, uuid) {
@@ -599,5 +595,5 @@ export var MaterialSwitchSystem = /*#__PURE__*/function (_ObjectLayer) {
599
595
  }
600
596
  }]);
601
597
  return MaterialSwitchSystem;
602
- }(ObjectLayer);
598
+ }(Object3D);
603
599
  //# sourceMappingURL=MaterialSwitchSystem.js.map