@anov/3d 0.0.289 → 0.0.290

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 (99) hide show
  1. package/dist/anov3d.js +43 -40
  2. package/dist/anov3d.js.map +1 -1
  3. package/dist/applicationApi.js +118 -94
  4. package/dist/applicationApi.js.map +1 -1
  5. package/dist/hooksManager.js +10 -10
  6. package/dist/hooksManager.js.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/messageStatus.js +3 -3
  10. package/dist/messageStatus.js.map +1 -1
  11. package/dist/module/animation/index.js +113 -61
  12. package/dist/module/animation/index.js.map +1 -1
  13. package/dist/module/animation/motion/index.js +91 -58
  14. package/dist/module/animation/motion/index.js.map +1 -1
  15. package/dist/module/animation/strategy.js +21 -7
  16. package/dist/module/animation/strategy.js.map +1 -1
  17. package/dist/module/camera/index.js +278 -216
  18. package/dist/module/camera/index.js.map +1 -1
  19. package/dist/module/develop/index.js +35 -27
  20. package/dist/module/develop/index.js.map +1 -1
  21. package/dist/module/entity/area/index.js +87 -29
  22. package/dist/module/entity/area/index.js.map +1 -1
  23. package/dist/module/entity/bar/index.js +24 -5
  24. package/dist/module/entity/bar/index.js.map +1 -1
  25. package/dist/module/entity/bar/style/bar_01.js +52 -13
  26. package/dist/module/entity/bar/style/bar_01.js.map +1 -1
  27. package/dist/module/entity/bar/style/index.js +21 -7
  28. package/dist/module/entity/bar/style/index.js.map +1 -1
  29. package/dist/module/entity/baseEntity.js +66 -43
  30. package/dist/module/entity/baseEntity.js.map +1 -1
  31. package/dist/module/entity/batch/index.js +168 -77
  32. package/dist/module/entity/batch/index.js.map +1 -1
  33. package/dist/module/entity/dispose.js +16 -14
  34. package/dist/module/entity/dispose.js.map +1 -1
  35. package/dist/module/entity/flyline/index.js +90 -34
  36. package/dist/module/entity/flyline/index.js.map +1 -1
  37. package/dist/module/entity/group/index.js +75 -59
  38. package/dist/module/entity/group/index.js.map +1 -1
  39. package/dist/module/entity/heatmap/index.js +79 -62
  40. package/dist/module/entity/heatmap/index.js.map +1 -1
  41. package/dist/module/entity/hybridList.js +67 -49
  42. package/dist/module/entity/hybridList.js.map +1 -1
  43. package/dist/module/entity/index.js +644 -442
  44. package/dist/module/entity/index.js.map +1 -1
  45. package/dist/module/entity/infoPanel/index.js +76 -23
  46. package/dist/module/entity/infoPanel/index.js.map +1 -1
  47. package/dist/module/entity/light/pointLight/index.js +84 -48
  48. package/dist/module/entity/light/pointLight/index.js.map +1 -1
  49. package/dist/module/entity/mark/index.js +101 -51
  50. package/dist/module/entity/mark/index.js.map +1 -1
  51. package/dist/module/entity/model/index.js +151 -108
  52. package/dist/module/entity/model/index.js.map +1 -1
  53. package/dist/module/entity/model/load/loadFbx.js +8 -8
  54. package/dist/module/entity/model/load/loadFbx.js.map +1 -1
  55. package/dist/module/entity/model/load/loadGlb.js +11 -13
  56. package/dist/module/entity/model/load/loadGlb.js.map +1 -1
  57. package/dist/module/entity/model/load.js +57 -19
  58. package/dist/module/entity/model/load.js.map +1 -1
  59. package/dist/module/entity/poi/index.js +90 -34
  60. package/dist/module/entity/poi/index.js.map +1 -1
  61. package/dist/module/entity/shape/index.js +136 -67
  62. package/dist/module/entity/shape/index.js.map +1 -1
  63. package/dist/module/entity/spline/index.js +75 -22
  64. package/dist/module/entity/spline/index.js.map +1 -1
  65. package/dist/module/entity/strategy.js +274 -92
  66. package/dist/module/entity/strategy.js.map +1 -1
  67. package/dist/module/entity/traffic/realismTraffic/index.js +88 -59
  68. package/dist/module/entity/traffic/realismTraffic/index.js.map +1 -1
  69. package/dist/module/entity/traffic/streamerTraffic/index.js +81 -50
  70. package/dist/module/entity/traffic/streamerTraffic/index.js.map +1 -1
  71. package/dist/module/entity/utils.js +13 -11
  72. package/dist/module/entity/utils.js.map +1 -1
  73. package/dist/module/entity/videoPanel/index.js +76 -23
  74. package/dist/module/entity/videoPanel/index.js.map +1 -1
  75. package/dist/module/environment/index.js +73 -54
  76. package/dist/module/environment/index.js.map +1 -1
  77. package/dist/module/environment/season/index.js +184 -342
  78. package/dist/module/environment/season/index.js.map +1 -1
  79. package/dist/module/eventBus/entityEvents.js +1 -1
  80. package/dist/module/eventBus/entityEvents.js.map +1 -1
  81. package/dist/module/eventBus/index.js +93 -79
  82. package/dist/module/eventBus/index.js.map +1 -1
  83. package/dist/module/material/index.js +334 -279
  84. package/dist/module/material/index.js.map +1 -1
  85. package/dist/module/scene/fileParse.js +369 -276
  86. package/dist/module/scene/fileParse.js.map +1 -1
  87. package/dist/module/scene/index.js +161 -106
  88. package/dist/module/scene/index.js.map +1 -1
  89. package/dist/module/tool/index.js +33 -26
  90. package/dist/module/tool/index.js.map +1 -1
  91. package/dist/sdkEntry.js +23 -2
  92. package/dist/sdkEntry.js.map +1 -1
  93. package/dist/utils/abstract.js +15 -12
  94. package/dist/utils/abstract.js.map +1 -1
  95. package/dist/utils/index.js +24 -23
  96. package/dist/utils/index.js.map +1 -1
  97. package/dist/utils/messageFn.js +18 -17
  98. package/dist/utils/messageFn.js.map +1 -1
  99. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- export const messageStatus = {
1
+ export var messageStatus = {
2
2
  Success: {
3
3
  code: 200,
4
4
  msg: '成功响应'
@@ -36,7 +36,7 @@ export const messageStatus = {
36
36
  msg: '事件处理失败'
37
37
  }
38
38
  };
39
- export let EMessageStatus = /*#__PURE__*/function (EMessageStatus) {
39
+ export var EMessageStatus = /*#__PURE__*/function (EMessageStatus) {
40
40
  EMessageStatus[EMessageStatus["Success"] = 200] = "Success";
41
41
  EMessageStatus[EMessageStatus["SerializeFailed"] = 500] = "SerializeFailed";
42
42
  EMessageStatus[EMessageStatus["NameNotFound"] = 400] = "NameNotFound";
@@ -48,7 +48,7 @@ export let EMessageStatus = /*#__PURE__*/function (EMessageStatus) {
48
48
  EMessageStatus[EMessageStatus["EventHandleFailed"] = 422] = "EventHandleFailed";
49
49
  return EMessageStatus;
50
50
  }({});
51
- export const codeMessageMap = {
51
+ export var codeMessageMap = {
52
52
  200: '成功响应'
53
53
  };
54
54
  //# sourceMappingURL=messageStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["messageStatus","Success","code","msg","SerializeFailed","NameNotFound","IDNotFound","ParamsNotFound","MissingKeyField","EventNotRegister","ModuleNotRegister","EventHandleFailed","EMessageStatus","codeMessageMap"],"sources":["../src/messageStatus.ts"],"sourcesContent":["export const messageStatus = {\n Success: {\n code: 200,\n msg: '成功响应',\n },\n SerializeFailed: {\n code: 500,\n msg: '序列化失败',\n },\n NameNotFound: {\n code: 400,\n msg: '未传入事件名称',\n },\n IDNotFound: {\n code: 400,\n msg: '未传入事件ID',\n },\n ParamsNotFound: {\n code: 400,\n msg: '事件参数错误',\n },\n MissingKeyField: {\n code: 400,\n msg: '缺少必选字段',\n },\n EventNotRegister: {\n code: 400,\n msg: '事件未注册',\n },\n ModuleNotRegister: {\n code: 404,\n msg: '模块未注册',\n },\n EventHandleFailed: {\n code: 422,\n msg: '事件处理失败',\n },\n}\n\nexport enum EMessageStatus {\n Success = 200,\n SerializeFailed = 500,\n NameNotFound = 400,\n IDNotFound = 400,\n ParamsNotFound = 400,\n MissingKeyField = 400,\n EventNotRegister = 400,\n ModuleNotRegister = 404,\n EventHandleFailed = 422,\n}\n\nexport const codeMessageMap = {\n 200: '成功响应',\n}"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAG;EAC3BC,OAAO,EAAE;IACPC,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDC,eAAe,EAAE;IACfF,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDE,YAAY,EAAE;IACZH,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDG,UAAU,EAAE;IACVJ,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDI,cAAc,EAAE;IACdL,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDK,eAAe,EAAE;IACfN,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDM,gBAAgB,EAAE;IAChBP,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDO,iBAAiB,EAAE;IACjBR,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDQ,iBAAiB,EAAE;IACjBT,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP;AACF,CAAC;AAED,WAAYS,cAAc,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAY1B,OAAO,MAAMC,cAAc,GAAG;EAC5B,GAAG,EAAE;AACP,CAAC"}
1
+ {"version":3,"names":["messageStatus","Success","code","msg","SerializeFailed","NameNotFound","IDNotFound","ParamsNotFound","MissingKeyField","EventNotRegister","ModuleNotRegister","EventHandleFailed","EMessageStatus","codeMessageMap"],"sources":["../src/messageStatus.ts"],"sourcesContent":["export const messageStatus = {\n Success: {\n code: 200,\n msg: '成功响应',\n },\n SerializeFailed: {\n code: 500,\n msg: '序列化失败',\n },\n NameNotFound: {\n code: 400,\n msg: '未传入事件名称',\n },\n IDNotFound: {\n code: 400,\n msg: '未传入事件ID',\n },\n ParamsNotFound: {\n code: 400,\n msg: '事件参数错误',\n },\n MissingKeyField: {\n code: 400,\n msg: '缺少必选字段',\n },\n EventNotRegister: {\n code: 400,\n msg: '事件未注册',\n },\n ModuleNotRegister: {\n code: 404,\n msg: '模块未注册',\n },\n EventHandleFailed: {\n code: 422,\n msg: '事件处理失败',\n },\n}\n\nexport enum EMessageStatus {\n Success = 200,\n SerializeFailed = 500,\n NameNotFound = 400,\n IDNotFound = 400,\n ParamsNotFound = 400,\n MissingKeyField = 400,\n EventNotRegister = 400,\n ModuleNotRegister = 404,\n EventHandleFailed = 422,\n}\n\nexport const codeMessageMap = {\n 200: '成功响应',\n}"],"mappings":"AAAA,OAAO,IAAMA,aAAa,GAAG;EAC3BC,OAAO,EAAE;IACPC,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDC,eAAe,EAAE;IACfF,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDE,YAAY,EAAE;IACZH,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDG,UAAU,EAAE;IACVJ,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDI,cAAc,EAAE;IACdL,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDK,eAAe,EAAE;IACfN,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDM,gBAAgB,EAAE;IAChBP,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDO,iBAAiB,EAAE;IACjBR,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP,CAAC;EACDQ,iBAAiB,EAAE;IACjBT,IAAI,EAAE,GAAG;IACTC,GAAG,EAAE;EACP;AACF,CAAC;AAED,WAAYS,cAAc,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAY1B,OAAO,IAAMC,cAAc,GAAG;EAC5B,GAAG,EAAE;AACP,CAAC"}
@@ -1,72 +1,124 @@
1
+ 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); }
2
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
1
3
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
2
4
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
5
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
+ 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); } }
7
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
3
8
  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; }
4
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
5
- 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); }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
10
+ 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); }
6
11
  import HybridList from "../entity/hybridList";
7
12
  import { strategy } from "./strategy";
8
- export const animations = new HybridList();
9
- class AnimationManage {
10
- constructor(app) {
13
+ export var animations = new HybridList();
14
+ var AnimationManage = /*#__PURE__*/function () {
15
+ function AnimationManage(app) {
16
+ _classCallCheck(this, AnimationManage);
11
17
  _defineProperty(this, "app", void 0);
12
18
  this.app = app;
13
19
  }
14
- to(json) {
15
- var _this = this;
16
- return _asyncToGenerator(function* () {
17
- const {
18
- id
19
- } = json;
20
- const animation = yield _this.createAnimation(id);
21
- animation.to(json);
22
- return json;
23
- })();
24
- }
25
- createAnimation(id, type = 'motion') {
26
- var _this2 = this;
27
- return _asyncToGenerator(function* () {
28
- if (animations.has(id)) throw new Error(`animation ${id} already exist`);
29
- const animationStrategy = yield strategy[type]();
30
- // eslint-disable-next-line new-cap
31
- animations.add(id, new animationStrategy(_this2.app));
20
+ _createClass(AnimationManage, [{
21
+ key: "to",
22
+ value: function () {
23
+ var _to = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(json) {
24
+ var id, animation;
25
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
26
+ while (1) switch (_context.prev = _context.next) {
27
+ case 0:
28
+ id = json.id;
29
+ _context.next = 3;
30
+ return this.createAnimation(id);
31
+ case 3:
32
+ animation = _context.sent;
33
+ animation.to(json);
34
+ return _context.abrupt("return", json);
35
+ case 6:
36
+ case "end":
37
+ return _context.stop();
38
+ }
39
+ }, _callee, this);
40
+ }));
41
+ function to(_x) {
42
+ return _to.apply(this, arguments);
43
+ }
44
+ return to;
45
+ }()
46
+ }, {
47
+ key: "createAnimation",
48
+ value: function () {
49
+ var _createAnimation = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(id) {
50
+ var type,
51
+ animationStrategy,
52
+ _args2 = arguments;
53
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
54
+ while (1) switch (_context2.prev = _context2.next) {
55
+ case 0:
56
+ type = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 'motion';
57
+ if (!animations.has(id)) {
58
+ _context2.next = 3;
59
+ break;
60
+ }
61
+ throw new Error("animation ".concat(id, " already exist"));
62
+ case 3:
63
+ _context2.next = 5;
64
+ return strategy[type]();
65
+ case 5:
66
+ animationStrategy = _context2.sent;
67
+ // eslint-disable-next-line new-cap
68
+ animations.add(id, new animationStrategy(this.app));
69
+ return _context2.abrupt("return", animations.get(id));
70
+ case 8:
71
+ case "end":
72
+ return _context2.stop();
73
+ }
74
+ }, _callee2, this);
75
+ }));
76
+ function createAnimation(_x2) {
77
+ return _createAnimation.apply(this, arguments);
78
+ }
79
+ return createAnimation;
80
+ }()
81
+ }, {
82
+ key: "getAnimation",
83
+ value: function getAnimation(id) {
84
+ if (!animations.has(id)) throw new Error("animation ".concat(id, " is not exist"));
32
85
  return animations.get(id);
33
- })();
34
- }
35
- getAnimation(id) {
36
- if (!animations.has(id)) throw new Error(`animation ${id} is not exist`);
37
- return animations.get(id);
38
- }
39
- play(json) {
40
- const {
41
- id
42
- } = json;
43
- return this.getAnimation(id).play();
44
- }
45
- pause(json) {
46
- const {
47
- id
48
- } = json;
49
- return this.getAnimation(id).pause();
50
- }
51
- restart(json) {
52
- const {
53
- id
54
- } = json;
55
- return this.getAnimation(id).restart();
56
- }
57
- reverse(json) {
58
- const {
59
- id
60
- } = json;
61
- return this.getAnimation(id).reverse();
62
- }
63
- update() {}
64
- delete(json) {
65
- const {
66
- id
67
- } = json;
68
- return this.getAnimation(id).delete();
69
- }
70
- }
86
+ }
87
+ }, {
88
+ key: "play",
89
+ value: function play(json) {
90
+ var id = json.id;
91
+ return this.getAnimation(id).play();
92
+ }
93
+ }, {
94
+ key: "pause",
95
+ value: function pause(json) {
96
+ var id = json.id;
97
+ return this.getAnimation(id).pause();
98
+ }
99
+ }, {
100
+ key: "restart",
101
+ value: function restart(json) {
102
+ var id = json.id;
103
+ return this.getAnimation(id).restart();
104
+ }
105
+ }, {
106
+ key: "reverse",
107
+ value: function reverse(json) {
108
+ var id = json.id;
109
+ return this.getAnimation(id).reverse();
110
+ }
111
+ }, {
112
+ key: "update",
113
+ value: function update() {}
114
+ }, {
115
+ key: "delete",
116
+ value: function _delete(json) {
117
+ var id = json.id;
118
+ return this.getAnimation(id).delete();
119
+ }
120
+ }]);
121
+ return AnimationManage;
122
+ }();
71
123
  export default AnimationManage;
72
124
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HybridList","strategy","animations","AnimationManage","constructor","app","_defineProperty","to","json","_this","_asyncToGenerator","id","animation","createAnimation","type","_this2","has","Error","animationStrategy","add","get","getAnimation","play","pause","restart","reverse","update","delete"],"sources":["../../../src/module/animation/index.ts"],"sourcesContent":["import type Anov3D from '../../sdkEntry'\nimport type { BaseModule } from '../../utils/abstract'\nimport HybridList from '../entity/hybridList'\nimport { strategy } from './strategy'\n\ntype Option = {\n id: string\n} & any\n\nexport const animations = new HybridList<any>()\n\nclass AnimationManage implements BaseModule {\n app: Anov3D\n constructor(app: Anov3D) {\n this.app = app\n }\n\n async to(json: Option) {\n const { id } = json\n const animation = await this.createAnimation(id)\n animation.to(json)\n return json\n }\n\n async createAnimation(id, type = 'motion') {\n if (animations.has(id))\n throw new Error(`animation ${id} already exist`)\n\n const animationStrategy = await strategy[type]()\n // eslint-disable-next-line new-cap\n animations.add(id, new animationStrategy(this.app))\n\n return animations.get(id)\n }\n\n getAnimation(id) {\n if (!animations.has(id))\n throw new Error(`animation ${id} is not exist`)\n\n return animations.get(id)\n }\n\n play(json: Option) {\n const { id } = json\n return this.getAnimation(id).play()\n }\n\n pause(json: Option) {\n const { id } = json\n return this.getAnimation(id).pause()\n }\n\n restart(json: Option) {\n const { id } = json\n return this.getAnimation(id).restart()\n }\n\n reverse(json: Option) {\n const { id } = json\n return this.getAnimation(id).reverse()\n }\n\n update() {\n\n }\n\n delete(json: Option) {\n const { id } = json\n return this.getAnimation(id).delete()\n }\n}\n\nexport default AnimationManage"],"mappings":";;;;;AAEA,OAAOA,UAAU;AACjB,SAASC,QAAQ;AAMjB,OAAO,MAAMC,UAAU,GAAG,IAAIF,UAAU,CAAM,CAAC;AAE/C,MAAMG,eAAe,CAAuB;EAE1CC,WAAWA,CAACC,GAAW,EAAE;IAAAC,eAAA;IACvB,IAAI,CAACD,GAAG,GAAGA,GAAG;EAChB;EAEME,EAAEA,CAACC,IAAY,EAAE;IAAA,IAAAC,KAAA;IAAA,OAAAC,iBAAA;MACrB,MAAM;QAAEC;MAAG,CAAC,GAAGH,IAAI;MACnB,MAAMI,SAAS,SAASH,KAAI,CAACI,eAAe,CAACF,EAAE,CAAC;MAChDC,SAAS,CAACL,EAAE,CAACC,IAAI,CAAC;MAClB,OAAOA,IAAI;IAAA;EACb;EAEMK,eAAeA,CAACF,EAAE,EAAEG,IAAI,GAAG,QAAQ,EAAE;IAAA,IAAAC,MAAA;IAAA,OAAAL,iBAAA;MACzC,IAAIR,UAAU,CAACc,GAAG,CAACL,EAAE,CAAC,EACpB,MAAM,IAAIM,KAAK,CAAE,aAAYN,EAAG,gBAAe,CAAC;MAElD,MAAMO,iBAAiB,SAASjB,QAAQ,CAACa,IAAI,CAAC,CAAC,CAAC;MAChD;MACAZ,UAAU,CAACiB,GAAG,CAACR,EAAE,EAAE,IAAIO,iBAAiB,CAACH,MAAI,CAACV,GAAG,CAAC,CAAC;MAEnD,OAAOH,UAAU,CAACkB,GAAG,CAACT,EAAE,CAAC;IAAA;EAC3B;EAEAU,YAAYA,CAACV,EAAE,EAAE;IACf,IAAI,CAACT,UAAU,CAACc,GAAG,CAACL,EAAE,CAAC,EACrB,MAAM,IAAIM,KAAK,CAAE,aAAYN,EAAG,eAAc,CAAC;IAEjD,OAAOT,UAAU,CAACkB,GAAG,CAACT,EAAE,CAAC;EAC3B;EAEAW,IAAIA,CAACd,IAAY,EAAE;IACjB,MAAM;MAAEG;IAAG,CAAC,GAAGH,IAAI;IACnB,OAAO,IAAI,CAACa,YAAY,CAACV,EAAE,CAAC,CAACW,IAAI,CAAC,CAAC;EACrC;EAEAC,KAAKA,CAACf,IAAY,EAAE;IAClB,MAAM;MAAEG;IAAG,CAAC,GAAGH,IAAI;IACnB,OAAO,IAAI,CAACa,YAAY,CAACV,EAAE,CAAC,CAACY,KAAK,CAAC,CAAC;EACtC;EAEAC,OAAOA,CAAChB,IAAY,EAAE;IACpB,MAAM;MAAEG;IAAG,CAAC,GAAGH,IAAI;IACnB,OAAO,IAAI,CAACa,YAAY,CAACV,EAAE,CAAC,CAACa,OAAO,CAAC,CAAC;EACxC;EAEAC,OAAOA,CAACjB,IAAY,EAAE;IACpB,MAAM;MAAEG;IAAG,CAAC,GAAGH,IAAI;IACnB,OAAO,IAAI,CAACa,YAAY,CAACV,EAAE,CAAC,CAACc,OAAO,CAAC,CAAC;EACxC;EAEAC,MAAMA,CAAA,EAAG,CAET;EAEAC,MAAMA,CAACnB,IAAY,EAAE;IACnB,MAAM;MAAEG;IAAG,CAAC,GAAGH,IAAI;IACnB,OAAO,IAAI,CAACa,YAAY,CAACV,EAAE,CAAC,CAACgB,MAAM,CAAC,CAAC;EACvC;AACF;AAEA,eAAexB,eAAe"}
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","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","_defineProperty","obj","_toPrimitive","String","toPrimitive","Number","HybridList","strategy","animations","AnimationManage","app","_to","_callee","json","id","animation","_callee$","_context","createAnimation","to","_x","_createAnimation","_callee2","animationStrategy","_args2","_callee2$","_context2","has","concat","add","get","_x2","getAnimation","play","pause","restart","update","_delete","delete"],"sources":["../../../src/module/animation/index.ts"],"sourcesContent":["import type Anov3D from '../../sdkEntry'\nimport type { BaseModule } from '../../utils/abstract'\nimport HybridList from '../entity/hybridList'\nimport { strategy } from './strategy'\n\ntype Option = {\n id: string\n} & any\n\nexport const animations = new HybridList<any>()\n\nclass AnimationManage implements BaseModule {\n app: Anov3D\n constructor(app: Anov3D) {\n this.app = app\n }\n\n async to(json: Option) {\n const { id } = json\n const animation = await this.createAnimation(id)\n animation.to(json)\n return json\n }\n\n async createAnimation(id, type = 'motion') {\n if (animations.has(id))\n throw new Error(`animation ${id} already exist`)\n\n const animationStrategy = await strategy[type]()\n // eslint-disable-next-line new-cap\n animations.add(id, new animationStrategy(this.app))\n\n return animations.get(id)\n }\n\n getAnimation(id) {\n if (!animations.has(id))\n throw new Error(`animation ${id} is not exist`)\n\n return animations.get(id)\n }\n\n play(json: Option) {\n const { id } = json\n return this.getAnimation(id).play()\n }\n\n pause(json: Option) {\n const { id } = json\n return this.getAnimation(id).pause()\n }\n\n restart(json: Option) {\n const { id } = json\n return this.getAnimation(id).restart()\n }\n\n reverse(json: Option) {\n const { id } = json\n return this.getAnimation(id).reverse()\n }\n\n update() {\n\n }\n\n delete(json: Option) {\n const { id } = json\n return this.getAnimation(id).delete()\n }\n}\n\nexport default AnimationManage"],"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,mBAAAC,GAAA,EAAAvD,OAAA,EAAAwD,MAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,GAAA,EAAAhF,GAAA,cAAAiF,IAAA,GAAAL,GAAA,CAAAI,GAAA,EAAAhF,GAAA,OAAApB,KAAA,GAAAqG,IAAA,CAAArG,KAAA,WAAAsG,KAAA,IAAAL,MAAA,CAAAK,KAAA,iBAAAD,IAAA,CAAAvD,IAAA,IAAAL,OAAA,CAAAzC,KAAA,YAAAgF,OAAA,CAAAvC,OAAA,CAAAzC,KAAA,EAAA2C,IAAA,CAAAuD,KAAA,EAAAC,MAAA;AAAA,SAAAI,kBAAAC,EAAA,6BAAAC,IAAA,SAAAC,IAAA,GAAAC,SAAA,aAAA3B,OAAA,WAAAvC,OAAA,EAAAwD,MAAA,QAAAD,GAAA,GAAAQ,EAAA,CAAAI,KAAA,CAAAH,IAAA,EAAAC,IAAA,YAAAR,MAAAlG,KAAA,IAAA+F,kBAAA,CAAAC,GAAA,EAAAvD,OAAA,EAAAwD,MAAA,EAAAC,KAAA,EAAAC,MAAA,UAAAnG,KAAA,cAAAmG,OAAAU,GAAA,IAAAd,kBAAA,CAAAC,GAAA,EAAAvD,OAAA,EAAAwD,MAAA,EAAAC,KAAA,EAAAC,MAAA,WAAAU,GAAA,KAAAX,KAAA,CAAAY,SAAA;AAAA,SAAAC,gBAAAC,QAAA,EAAAC,WAAA,UAAAD,QAAA,YAAAC,WAAA,eAAA1D,SAAA;AAAA,SAAA2D,kBAAAC,MAAA,EAAAC,KAAA,aAAAnH,CAAA,MAAAA,CAAA,GAAAmH,KAAA,CAAA9C,MAAA,EAAArE,CAAA,UAAAoH,UAAA,GAAAD,KAAA,CAAAnH,CAAA,GAAAoH,UAAA,CAAA3G,UAAA,GAAA2G,UAAA,CAAA3G,UAAA,WAAA2G,UAAA,CAAA1G,YAAA,wBAAA0G,UAAA,EAAAA,UAAA,CAAAzG,QAAA,SAAAlB,MAAA,CAAAK,cAAA,CAAAoH,MAAA,EAAAG,cAAA,CAAAD,UAAA,CAAAjB,GAAA,GAAAiB,UAAA;AAAA,SAAAE,aAAAN,WAAA,EAAAO,UAAA,EAAAC,WAAA,QAAAD,UAAA,EAAAN,iBAAA,CAAAD,WAAA,CAAAtH,SAAA,EAAA6H,UAAA,OAAAC,WAAA,EAAAP,iBAAA,CAAAD,WAAA,EAAAQ,WAAA,GAAA/H,MAAA,CAAAK,cAAA,CAAAkH,WAAA,iBAAArG,QAAA,mBAAAqG,WAAA;AAAA,SAAAS,gBAAAC,GAAA,EAAAvB,GAAA,EAAApG,KAAA,IAAAoG,GAAA,GAAAkB,cAAA,CAAAlB,GAAA,OAAAA,GAAA,IAAAuB,GAAA,IAAAjI,MAAA,CAAAK,cAAA,CAAA4H,GAAA,EAAAvB,GAAA,IAAApG,KAAA,EAAAA,KAAA,EAAAU,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAA+G,GAAA,CAAAvB,GAAA,IAAApG,KAAA,WAAA2H,GAAA;AAAA,SAAAL,eAAA9H,CAAA,QAAAS,CAAA,GAAA2H,YAAA,CAAApI,CAAA,gCAAAgD,OAAA,CAAAvC,CAAA,IAAAA,CAAA,GAAA4H,MAAA,CAAA5H,CAAA;AAAA,SAAA2H,aAAApI,CAAA,EAAAC,CAAA,oBAAA+C,OAAA,CAAAhD,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAD,CAAA,GAAAC,CAAA,CAAAU,MAAA,CAAA4H,WAAA,kBAAAvI,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAA8B,IAAA,CAAA7B,CAAA,EAAAC,CAAA,gCAAA+C,OAAA,CAAAvC,CAAA,UAAAA,CAAA,YAAAsD,SAAA,yEAAA9D,CAAA,GAAAoI,MAAA,GAAAE,MAAA,EAAAvI,CAAA;AACA,OAAOwI,UAAU;AACjB,SAASC,QAAQ;AAMjB,OAAO,IAAMC,UAAU,GAAG,IAAIF,UAAU,CAAM,CAAC;AAAA,IAEzCG,eAAe;EAEnB,SAAAA,gBAAYC,GAAW,EAAE;IAAArB,eAAA,OAAAoB,eAAA;IAAAT,eAAA;IACvB,IAAI,CAACU,GAAG,GAAGA,GAAG;EAChB;EAACb,YAAA,CAAAY,eAAA;IAAA/B,GAAA;IAAApG,KAAA;MAAA,IAAAqI,GAAA,GAAA9B,iBAAA,eAAAjH,mBAAA,GAAAqF,IAAA,CAED,SAAA2D,QAASC,IAAY;QAAA,IAAAC,EAAA,EAAAC,SAAA;QAAA,OAAAnJ,mBAAA,GAAAuB,IAAA,UAAA6H,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAvD,IAAA,GAAAuD,QAAA,CAAAlF,IAAA;YAAA;cACX+E,EAAE,GAAKD,IAAI,CAAXC,EAAE;cAAAG,QAAA,CAAAlF,IAAA;cAAA,OACc,IAAI,CAACmF,eAAe,CAACJ,EAAE,CAAC;YAAA;cAA1CC,SAAS,GAAAE,QAAA,CAAAzF,IAAA;cACfuF,SAAS,CAACI,EAAE,CAACN,IAAI,CAAC;cAAA,OAAAI,QAAA,CAAAtF,MAAA,WACXkF,IAAI;YAAA;YAAA;cAAA,OAAAI,QAAA,CAAApD,IAAA;UAAA;QAAA,GAAA+C,OAAA;MAAA,CACZ;MAAA,SAAAO,GAAAC,EAAA;QAAA,OAAAT,GAAA,CAAAzB,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAAkC,EAAA;IAAA;EAAA;IAAAzC,GAAA;IAAApG,KAAA;MAAA,IAAA+I,gBAAA,GAAAxC,iBAAA,eAAAjH,mBAAA,GAAAqF,IAAA,CAED,SAAAqE,SAAsBR,EAAE;QAAA,IAAArH,IAAA;UAAA8H,iBAAA;UAAAC,MAAA,GAAAvC,SAAA;QAAA,OAAArH,mBAAA,GAAAuB,IAAA,UAAAsI,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAhE,IAAA,GAAAgE,SAAA,CAAA3F,IAAA;YAAA;cAAEtC,IAAI,GAAA+H,MAAA,CAAA5E,MAAA,QAAA4E,MAAA,QAAApC,SAAA,GAAAoC,MAAA,MAAG,QAAQ;cAAA,KACnChB,UAAU,CAACmB,GAAG,CAACb,EAAE,CAAC;gBAAAY,SAAA,CAAA3F,IAAA;gBAAA;cAAA;cAAA,MACd,IAAIZ,KAAK,cAAAyG,MAAA,CAAcd,EAAE,mBAAgB,CAAC;YAAA;cAAAY,SAAA,CAAA3F,IAAA;cAAA,OAElBwE,QAAQ,CAAC9G,IAAI,CAAC,CAAC,CAAC;YAAA;cAA1C8H,iBAAiB,GAAAG,SAAA,CAAAlG,IAAA;cACvB;cACAgF,UAAU,CAACqB,GAAG,CAACf,EAAE,EAAE,IAAIS,iBAAiB,CAAC,IAAI,CAACb,GAAG,CAAC,CAAC;cAAA,OAAAgB,SAAA,CAAA/F,MAAA,WAE5C6E,UAAU,CAACsB,GAAG,CAAChB,EAAE,CAAC;YAAA;YAAA;cAAA,OAAAY,SAAA,CAAA7D,IAAA;UAAA;QAAA,GAAAyD,QAAA;MAAA,CAC1B;MAAA,SAAAJ,gBAAAa,GAAA;QAAA,OAAAV,gBAAA,CAAAnC,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAAiC,eAAA;IAAA;EAAA;IAAAxC,GAAA;IAAApG,KAAA,EAED,SAAA0J,aAAalB,EAAE,EAAE;MACf,IAAI,CAACN,UAAU,CAACmB,GAAG,CAACb,EAAE,CAAC,EACrB,MAAM,IAAI3F,KAAK,cAAAyG,MAAA,CAAcd,EAAE,kBAAe,CAAC;MAEjD,OAAON,UAAU,CAACsB,GAAG,CAAChB,EAAE,CAAC;IAC3B;EAAC;IAAApC,GAAA;IAAApG,KAAA,EAED,SAAA2J,KAAKpB,IAAY,EAAE;MACjB,IAAQC,EAAE,GAAKD,IAAI,CAAXC,EAAE;MACV,OAAO,IAAI,CAACkB,YAAY,CAAClB,EAAE,CAAC,CAACmB,IAAI,CAAC,CAAC;IACrC;EAAC;IAAAvD,GAAA;IAAApG,KAAA,EAED,SAAA4J,MAAMrB,IAAY,EAAE;MAClB,IAAQC,EAAE,GAAKD,IAAI,CAAXC,EAAE;MACV,OAAO,IAAI,CAACkB,YAAY,CAAClB,EAAE,CAAC,CAACoB,KAAK,CAAC,CAAC;IACtC;EAAC;IAAAxD,GAAA;IAAApG,KAAA,EAED,SAAA6J,QAAQtB,IAAY,EAAE;MACpB,IAAQC,EAAE,GAAKD,IAAI,CAAXC,EAAE;MACV,OAAO,IAAI,CAACkB,YAAY,CAAClB,EAAE,CAAC,CAACqB,OAAO,CAAC,CAAC;IACxC;EAAC;IAAAzD,GAAA;IAAApG,KAAA,EAED,SAAAkF,QAAQqD,IAAY,EAAE;MACpB,IAAQC,EAAE,GAAKD,IAAI,CAAXC,EAAE;MACV,OAAO,IAAI,CAACkB,YAAY,CAAClB,EAAE,CAAC,CAACtD,OAAO,CAAC,CAAC;IACxC;EAAC;IAAAkB,GAAA;IAAApG,KAAA,EAED,SAAA8J,OAAA,EAAS,CAET;EAAC;IAAA1D,GAAA;IAAApG,KAAA,EAED,SAAA+J,QAAOxB,IAAY,EAAE;MACnB,IAAQC,EAAE,GAAKD,IAAI,CAAXC,EAAE;MACV,OAAO,IAAI,CAACkB,YAAY,CAAClB,EAAE,CAAC,CAACwB,MAAM,CAAC,CAAC;IACvC;EAAC;EAAA,OAAA7B,eAAA;AAAA;AAGH,eAAeA,eAAe"}
@@ -1,74 +1,107 @@
1
+ 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); }
2
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
3
+ 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); }
4
+ 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; }
1
5
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2
6
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
+ 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); } }
9
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
3
10
  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; }
4
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
5
- 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); }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
+ 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); }
6
13
  import { AnimationMotion } from '@anov/3d-ability';
7
14
  import { hybridList } from "../../entity";
8
- class Motion {
9
- constructor(app) {
15
+ var Motion = /*#__PURE__*/function () {
16
+ function Motion(app) {
17
+ _classCallCheck(this, Motion);
10
18
  _defineProperty(this, "app", void 0);
11
19
  _defineProperty(this, "animationMotion", void 0);
12
20
  this.app = app;
13
21
  }
14
- to(json) {
15
- const {
16
- target: entityId,
17
- vars: {
18
- position,
19
- motionPath
22
+ _createClass(Motion, [{
23
+ key: "to",
24
+ value: function to(json) {
25
+ var entityId = json.target,
26
+ _json$vars = json.vars,
27
+ position = _json$vars.position,
28
+ motionPath = _json$vars.motionPath;
29
+ var entity = hybridList.get(entityId);
30
+ if (!entity) throw new Error("entity ".concat(entityId, " is not exist"));
31
+ var path;
32
+ if (motionPath !== null && motionPath !== void 0 && motionPath.path) {
33
+ // 路径动画
34
+ if (Array.isArray(motionPath.path)) {
35
+ var _motionPath$path;
36
+ path = (_motionPath$path = motionPath.path) === null || _motionPath$path === void 0 ? void 0 : _motionPath$path.map(function (item) {
37
+ return item.position;
38
+ });
39
+ } else {
40
+ var line = hybridList.get(motionPath.path);
41
+ if (!line) throw new Error("path ".concat(entityId, " is not exist"));
42
+ var tubeGeometry = line && this.findTubeGeometry(line);
43
+ path = tubeGeometry && tubeGeometry.parameters.path;
44
+ }
45
+ } else if (position) {
46
+ // 基础路径动画
47
+ var _entity$position = entity.position,
48
+ x = _entity$position.x,
49
+ y = _entity$position.y,
50
+ z = _entity$position.z;
51
+ path = [[x, y, z], position];
20
52
  }
21
- } = json;
22
- const entity = hybridList.get(entityId);
23
- if (!entity) throw new Error(`entity ${entityId} is not exist`);
24
- let path;
25
- if (motionPath !== null && motionPath !== void 0 && motionPath.path) {
26
- // 路径动画
27
- if (Array.isArray(motionPath.path)) {
28
- var _motionPath$path;
29
- path = (_motionPath$path = motionPath.path) === null || _motionPath$path === void 0 ? void 0 : _motionPath$path.map(item => item.position);
30
- } else {
31
- const line = hybridList.get(motionPath.path);
32
- if (!line) throw new Error(`path ${entityId} is not exist`);
33
- let tubeGeometry = line && this.findTubeGeometry(line);
34
- path = tubeGeometry && tubeGeometry.parameters.path;
53
+ if (!path) throw new Error('path not exist');
54
+ this.animationMotion = new AnimationMotion(entity, path, _objectSpread({}, json.vars));
55
+ }
56
+ }, {
57
+ key: "findTubeGeometry",
58
+ value: function findTubeGeometry(object) {
59
+ if (object.type === 'Mesh' && object.geometry.type === "TubeGeometry") {
60
+ return object.geometry;
61
+ }
62
+ var _iterator = _createForOfIteratorHelper(object.children),
63
+ _step;
64
+ try {
65
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
66
+ var child = _step.value;
67
+ var result = this.findTubeGeometry(child);
68
+ if (result) return result; // 找到后立即返回
69
+ }
70
+ } catch (err) {
71
+ _iterator.e(err);
72
+ } finally {
73
+ _iterator.f();
35
74
  }
36
- } else if (position) {
37
- // 基础路径动画
38
- const {
39
- x,
40
- y,
41
- z
42
- } = entity.position;
43
- path = [[x, y, z], position];
75
+ return null;
44
76
  }
45
- if (!path) throw new Error('path not exist');
46
- this.animationMotion = new AnimationMotion(entity, path, _objectSpread({}, json.vars));
47
- }
48
- findTubeGeometry(object) {
49
- if (object.type === 'Mesh' && object.geometry.type === "TubeGeometry") {
50
- return object.geometry;
77
+ }, {
78
+ key: "play",
79
+ value: function play() {
80
+ this.animationMotion.play();
51
81
  }
52
- for (let child of object.children) {
53
- const result = this.findTubeGeometry(child);
54
- if (result) return result; // 找到后立即返回
82
+ }, {
83
+ key: "pause",
84
+ value: function pause() {
85
+ this.animationMotion.pause();
55
86
  }
56
- return null;
57
- }
58
- play() {
59
- this.animationMotion.play();
60
- }
61
- pause() {
62
- this.animationMotion.pause();
63
- }
64
- restart() {
65
- this.animationMotion.restart();
66
- }
67
- reverse() {}
68
- delete() {
69
- this.animationMotion.delete();
70
- }
71
- update() {}
72
- }
87
+ }, {
88
+ key: "restart",
89
+ value: function restart() {
90
+ this.animationMotion.restart();
91
+ }
92
+ }, {
93
+ key: "reverse",
94
+ value: function reverse() {}
95
+ }, {
96
+ key: "delete",
97
+ value: function _delete() {
98
+ this.animationMotion.delete();
99
+ }
100
+ }, {
101
+ key: "update",
102
+ value: function update() {}
103
+ }]);
104
+ return Motion;
105
+ }();
73
106
  export default Motion;
74
107
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AnimationMotion","hybridList","Motion","constructor","app","_defineProperty","to","json","target","entityId","vars","position","motionPath","entity","get","Error","path","Array","isArray","_motionPath$path","map","item","line","tubeGeometry","findTubeGeometry","parameters","x","y","z","animationMotion","_objectSpread","object","type","geometry","child","children","result","play","pause","restart","reverse","delete","update"],"sources":["../../../../src/module/animation/motion/index.ts"],"sourcesContent":["import { AnimationMotion } from '@anov/3d-ability'\nimport type { Mesh, TubeGeometry } from '@anov/3d-core'\nimport { hybridList } from '../../entity'\nimport type Anov3D from '../../../sdkEntry'\n\ntype Option = {\n id: string\n target: string\n vars: Partial<{\n position: [number, number, number]\n speed: number\n duration: number\n paused: boolean\n repeat: number\n yoyo: boolean\n ease: string\n motionPath: {\n path: any\n }\n }>\n}\n\nclass Motion {\n app: Anov3D\n animationMotion: AnimationMotion\n constructor(app: Anov3D) {\n this.app = app\n }\n\n to(json: Option) {\n const { target: entityId, vars: { position, motionPath } } = json\n const entity = hybridList.get(entityId)\n if (!entity)\n throw new Error(`entity ${entityId} is not exist`)\n\n let path\n if (motionPath?.path) { // 路径动画\n if (Array.isArray(motionPath.path)) {\n path = motionPath.path?.map(item => item.position)\n }\n else {\n const line = hybridList.get(motionPath.path)\n if (!line)\n throw new Error(`path ${entityId} is not exist`)\n let tubeGeometry = line && this.findTubeGeometry(line)\n path = tubeGeometry && tubeGeometry.parameters.path\n }\n }\n else if (position) { // 基础路径动画\n const { x, y, z } = entity.position\n path = [\n [x, y, z],\n position,\n ]\n }\n if (!path)\n throw new Error('path not exist')\n this.animationMotion = new AnimationMotion(entity, path, { ...json.vars })\n }\n\n findTubeGeometry(object) {\n if (object.type === 'Mesh' && object.geometry.type === \"TubeGeometry\") {\n return object.geometry;\n }\n\n for (let child of object.children) {\n const result = this.findTubeGeometry(child);\n if (result) return result; // 找到后立即返回\n }\n\n return null;\n }\n\n play() {\n this.animationMotion.play()\n }\n\n pause() {\n this.animationMotion.pause()\n }\n\n restart() {\n this.animationMotion.restart()\n }\n\n reverse() {\n }\n\n delete() {\n this.animationMotion.delete()\n }\n\n update() {\n\n }\n}\n\nexport default Motion"],"mappings":";;;;;AAAA,SAASA,eAAe,QAAQ,kBAAkB;AAElD,SAASC,UAAU;AAoBnB,MAAMC,MAAM,CAAC;EAGXC,WAAWA,CAACC,GAAW,EAAE;IAAAC,eAAA;IAAAA,eAAA;IACvB,IAAI,CAACD,GAAG,GAAGA,GAAG;EAChB;EAEAE,EAAEA,CAACC,IAAY,EAAE;IACf,MAAM;MAAEC,MAAM,EAAEC,QAAQ;MAAEC,IAAI,EAAE;QAAEC,QAAQ;QAAEC;MAAW;IAAE,CAAC,GAAGL,IAAI;IACjE,MAAMM,MAAM,GAAGZ,UAAU,CAACa,GAAG,CAACL,QAAQ,CAAC;IACvC,IAAI,CAACI,MAAM,EACT,MAAM,IAAIE,KAAK,CAAE,UAASN,QAAS,eAAc,CAAC;IAEpD,IAAIO,IAAI;IACR,IAAIJ,UAAU,aAAVA,UAAU,eAAVA,UAAU,CAAEI,IAAI,EAAE;MAAE;MACtB,IAAIC,KAAK,CAACC,OAAO,CAACN,UAAU,CAACI,IAAI,CAAC,EAAE;QAAA,IAAAG,gBAAA;QAClCH,IAAI,IAAAG,gBAAA,GAAGP,UAAU,CAACI,IAAI,cAAAG,gBAAA,uBAAfA,gBAAA,CAAiBC,GAAG,CAACC,IAAI,IAAIA,IAAI,CAACV,QAAQ,CAAC;MACpD,CAAC,MACI;QACH,MAAMW,IAAI,GAAGrB,UAAU,CAACa,GAAG,CAACF,UAAU,CAACI,IAAI,CAAC;QAC5C,IAAI,CAACM,IAAI,EACP,MAAM,IAAIP,KAAK,CAAE,QAAON,QAAS,eAAc,CAAC;QAClD,IAAIc,YAAY,GAAGD,IAAI,IAAI,IAAI,CAACE,gBAAgB,CAACF,IAAI,CAAC;QACtDN,IAAI,GAAGO,YAAY,IAAKA,YAAY,CAACE,UAAU,CAACT,IAAI;MACtD;IACF,CAAC,MACI,IAAIL,QAAQ,EAAE;MAAE;MACnB,MAAM;QAAEe,CAAC;QAAEC,CAAC;QAAEC;MAAE,CAAC,GAAGf,MAAM,CAACF,QAAQ;MACnCK,IAAI,GAAG,CACL,CAACU,CAAC,EAAEC,CAAC,EAAEC,CAAC,CAAC,EACTjB,QAAQ,CACT;IACH;IACA,IAAI,CAACK,IAAI,EACP,MAAM,IAAID,KAAK,CAAC,gBAAgB,CAAC;IACnC,IAAI,CAACc,eAAe,GAAG,IAAI7B,eAAe,CAACa,MAAM,EAAEG,IAAI,EAAAc,aAAA,KAAOvB,IAAI,CAACG,IAAI,CAAE,CAAC;EAC5E;EAEAc,gBAAgBA,CAACO,MAAM,EAAE;IACvB,IAAIA,MAAM,CAACC,IAAI,KAAK,MAAM,IAAID,MAAM,CAACE,QAAQ,CAACD,IAAI,KAAK,cAAc,EAAE;MACrE,OAAOD,MAAM,CAACE,QAAQ;IACxB;IAEA,KAAK,IAAIC,KAAK,IAAIH,MAAM,CAACI,QAAQ,EAAE;MACjC,MAAMC,MAAM,GAAG,IAAI,CAACZ,gBAAgB,CAACU,KAAK,CAAC;MAC3C,IAAIE,MAAM,EAAE,OAAOA,MAAM,CAAC,CAAC;IAC7B;IAEA,OAAO,IAAI;EACb;EAEAC,IAAIA,CAAA,EAAG;IACL,IAAI,CAACR,eAAe,CAACQ,IAAI,CAAC,CAAC;EAC7B;EAEAC,KAAKA,CAAA,EAAG;IACN,IAAI,CAACT,eAAe,CAACS,KAAK,CAAC,CAAC;EAC9B;EAEAC,OAAOA,CAAA,EAAG;IACR,IAAI,CAACV,eAAe,CAACU,OAAO,CAAC,CAAC;EAChC;EAEAC,OAAOA,CAAA,EAAG,CACV;EAEAC,MAAMA,CAAA,EAAG;IACP,IAAI,CAACZ,eAAe,CAACY,MAAM,CAAC,CAAC;EAC/B;EAEAC,MAAMA,CAAA,EAAG,CAET;AACF;AAEA,eAAexC,MAAM"}
1
+ {"version":3,"names":["AnimationMotion","hybridList","Motion","app","_classCallCheck","_defineProperty","_createClass","key","value","to","json","entityId","target","_json$vars","vars","position","motionPath","entity","get","Error","concat","path","Array","isArray","_motionPath$path","map","item","line","tubeGeometry","findTubeGeometry","parameters","_entity$position","x","y","z","animationMotion","_objectSpread","object","type","geometry","_iterator","_createForOfIteratorHelper","children","_step","s","n","done","child","result","err","e","f","play","pause","restart","reverse","_delete","delete","update"],"sources":["../../../../src/module/animation/motion/index.ts"],"sourcesContent":["import { AnimationMotion } from '@anov/3d-ability'\nimport type { Mesh, TubeGeometry } from '@anov/3d-core'\nimport { hybridList } from '../../entity'\nimport type Anov3D from '../../../sdkEntry'\n\ntype Option = {\n id: string\n target: string\n vars: Partial<{\n position: [number, number, number]\n speed: number\n duration: number\n paused: boolean\n repeat: number\n yoyo: boolean\n ease: string\n motionPath: {\n path: any\n }\n }>\n}\n\nclass Motion {\n app: Anov3D\n animationMotion: AnimationMotion\n constructor(app: Anov3D) {\n this.app = app\n }\n\n to(json: Option) {\n const { target: entityId, vars: { position, motionPath } } = json\n const entity = hybridList.get(entityId)\n if (!entity)\n throw new Error(`entity ${entityId} is not exist`)\n\n let path\n if (motionPath?.path) { // 路径动画\n if (Array.isArray(motionPath.path)) {\n path = motionPath.path?.map(item => item.position)\n }\n else {\n const line = hybridList.get(motionPath.path)\n if (!line)\n throw new Error(`path ${entityId} is not exist`)\n let tubeGeometry = line && this.findTubeGeometry(line)\n path = tubeGeometry && tubeGeometry.parameters.path\n }\n }\n else if (position) { // 基础路径动画\n const { x, y, z } = entity.position\n path = [\n [x, y, z],\n position,\n ]\n }\n if (!path)\n throw new Error('path not exist')\n this.animationMotion = new AnimationMotion(entity, path, { ...json.vars })\n }\n\n findTubeGeometry(object) {\n if (object.type === 'Mesh' && object.geometry.type === \"TubeGeometry\") {\n return object.geometry;\n }\n\n for (let child of object.children) {\n const result = this.findTubeGeometry(child);\n if (result) return result; // 找到后立即返回\n }\n\n return null;\n }\n\n play() {\n this.animationMotion.play()\n }\n\n pause() {\n this.animationMotion.pause()\n }\n\n restart() {\n this.animationMotion.restart()\n }\n\n reverse() {\n }\n\n delete() {\n this.animationMotion.delete()\n }\n\n update() {\n\n }\n}\n\nexport default Motion"],"mappings":"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"}
@@ -1,13 +1,27 @@
1
+ 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); }
2
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
1
3
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
2
4
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
3
- export const strategy = {
5
+ export var strategy = {
4
6
  motion: function () {
5
- var _ref = _asyncToGenerator(function* () {
6
- return (yield import("./motion")).default;
7
- });
8
- return function motion() {
9
- return _ref.apply(this, arguments);
10
- };
7
+ var _motion = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
8
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
9
+ while (1) switch (_context.prev = _context.next) {
10
+ case 0:
11
+ _context.next = 2;
12
+ return import("./motion");
13
+ case 2:
14
+ return _context.abrupt("return", _context.sent.default);
15
+ case 3:
16
+ case "end":
17
+ return _context.stop();
18
+ }
19
+ }, _callee);
20
+ }));
21
+ function motion() {
22
+ return _motion.apply(this, arguments);
23
+ }
24
+ return motion;
11
25
  }()
12
26
  };
13
27
  //# sourceMappingURL=strategy.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["strategy","motion","_ref","_asyncToGenerator","default","apply","arguments"],"sources":["../../../src/module/animation/strategy.ts"],"sourcesContent":["export const strategy = {\n motion: async () => (await import('./motion')).default,\n}\n"],"mappings":";;AAAA,OAAO,MAAMA,QAAQ,GAAG;EACtBC,MAAM;IAAA,IAAAC,IAAA,GAAAC,iBAAA,CAAE;MAAA,OAAY,OAAO,MAAM,WAAW,CAAC,EAAEC,OAAO;IAAA;IAAA,gBAAAH,OAAA;MAAA,OAAAC,IAAA,CAAAG,KAAA,OAAAC,SAAA;IAAA;EAAA;AACxD,CAAC"}
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","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","strategy","motion","_motion","_callee","_callee$","_context","default"],"sources":["../../../src/module/animation/strategy.ts"],"sourcesContent":["export const strategy = {\n motion: async () => (await import('./motion')).default,\n}\n"],"mappings":"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"}