@realsee/vreo 1.1.0-dev.2 → 1.2.1-alpha.0

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 (49) hide show
  1. package/lib/PlayController/createHTMLAudioElement.js +11 -6
  2. package/lib/PlayController/index.js +80 -15
  3. package/lib/Player/App.js +26 -1
  4. package/lib/Player/Controller.js +100 -23
  5. package/lib/Player/custom/SpatialScenePanel/index.js +68 -42
  6. package/lib/Player/hooks.js +10 -0
  7. package/lib/Player/index.js +86 -24
  8. package/lib/Player/modules/Drawer/index.js +17 -0
  9. package/lib/Player/modules/PopUp/index.js +10 -0
  10. package/lib/Player/modules/ResizeObserver/index.js +8 -0
  11. package/lib/Player/modules/VideoAgent/VideoAgentMesh.js +108 -17
  12. package/lib/Player/modules/VideoAgent/VideoAgentScene.js +24 -2
  13. package/lib/Player/modules/VideoAgent/index.js +17 -0
  14. package/lib/Player/modules/Wave/index.js +32 -7
  15. package/lib/Player/modules/keyframes/BgMusic/index.js +23 -7
  16. package/lib/Player/modules/keyframes/CameraMovement/index.js +27 -3
  17. package/lib/Player/modules/keyframes/InfoPanel/index.d.ts +1 -0
  18. package/lib/Player/modules/keyframes/InfoPanel/index.js +55 -10
  19. package/lib/Player/modules/keyframes/ModelVideo/index.js +29 -3
  20. package/lib/Player/modules/keyframes/PanoEffect/index.js +43 -15
  21. package/lib/Player/modules/keyframes/PanoEffect/lineAnime.js +7 -0
  22. package/lib/Player/modules/keyframes/PanoTag/index.js +26 -8
  23. package/lib/Player/modules/keyframes/PanoTextLabel/index.js +47 -22
  24. package/lib/Player/modules/keyframes/Prompter/index.js +32 -10
  25. package/lib/Player/modules/keyframes/UpdateVRPanorama/index.js +25 -18
  26. package/lib/Player/modules/keyframes/VideoEffect/index.js +47 -12
  27. package/lib/fivePlugins/CSS3DRenderPlugin/centerPoint.js +2 -0
  28. package/lib/fivePlugins/CSS3DRenderPlugin/createResizeObserver.js +1 -0
  29. package/lib/fivePlugins/CSS3DRenderPlugin/evenNumber.js +1 -0
  30. package/lib/fivePlugins/CSS3DRenderPlugin/index.js +60 -19
  31. package/lib/fivePlugins/CSS3DRenderPlugin/transformPositionToVector3.js +5 -2
  32. package/lib/fivePlugins/CameraMovementPlugin/index.js +76 -28
  33. package/lib/fivePlugins/CameraMovementPlugin/typings.js +4 -0
  34. package/lib/fivePlugins/ModelTVVideoPlugin/index.js +60 -11
  35. package/lib/index.js +1 -0
  36. package/lib/react/index.js +34 -7
  37. package/lib/shared-utils/Audio.js +69 -15
  38. package/lib/shared-utils/AudioLike.js +39 -5
  39. package/lib/shared-utils/Preloader.js +7 -0
  40. package/lib/shared-utils/addResizeListener.js +5 -0
  41. package/lib/shared-utils/animationFrame/BetterTween.js +38 -2
  42. package/lib/shared-utils/animationFrame/index.js +10 -2
  43. package/lib/shared-utils/animationFrame/tween.js +11 -2
  44. package/lib/shared-utils/createTransMatrix.js +17 -2
  45. package/lib/shared-utils/getFileExpandedName.js +1 -0
  46. package/lib/shared-utils/getMediaInfo.js +9 -0
  47. package/lib/shared-utils/setElementDataset.js +2 -0
  48. package/lib/typings/VreoUnit.js +15 -0
  49. package/package.json +1 -1
@@ -1,64 +1,101 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.Player = void 0;
9
+
8
10
  var React = _interopRequireWildcard(require("react"));
11
+
9
12
  var ReactDOM = _interopRequireWildcard(require("react-dom"));
13
+
10
14
  var _five = require("@realsee/five");
15
+
11
16
  var _App = require("./App");
17
+
12
18
  var _Controller = require("./Controller");
19
+
13
20
  var _VreoUnit = require("../typings/VreoUnit");
21
+
14
22
  var _mobx = require("mobx");
23
+
15
24
  var _Drawer = require("./modules/Drawer");
25
+
16
26
  var _PopUp = require("./modules/PopUp");
27
+
17
28
  var _Audio = require("../shared-utils/Audio");
29
+
18
30
  var _location$search$matc, _location$search$matc2;
31
+
19
32
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
+
20
34
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
- 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 exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
35
+
22
36
  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); } }
37
+
23
38
  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); }); }; }
39
+
24
40
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
41
+
25
42
  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, descriptor.key, descriptor); } }
43
+
26
44
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
45
+
27
46
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
28
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
47
+
48
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
49
+
29
50
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
51
+
30
52
  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
53
+
31
54
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
55
+
32
56
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
33
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
57
+
58
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
59
+
34
60
  var DefaultAudioCacheLength = 3;
35
61
  var audioCacheLength = Number((_location$search$matc = (_location$search$matc2 = location.search.match(/audio_cache=(\d+)/)) === null || _location$search$matc2 === void 0 ? void 0 : _location$search$matc2[1]) !== null && _location$search$matc !== void 0 ? _location$search$matc : DefaultAudioCacheLength);
62
+
36
63
  var Player = /*#__PURE__*/function (_Subscribe) {
37
64
  _inherits(Player, _Subscribe);
65
+
38
66
  var _super = _createSuper(Player);
67
+
39
68
  function Player(five) {
40
69
  var _this;
70
+
41
71
  var configs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
72
+
42
73
  _classCallCheck(this, Player);
74
+
43
75
  _this = _super.call(this);
44
76
  _this.$five = five;
45
77
  (0, _Audio.generateBlankAudio)(audioCacheLength);
78
+
46
79
  if (!configs.container) {
47
80
  configs.container = configs.containter;
48
81
  }
82
+
49
83
  if (!configs.container) {
50
84
  var _five$getElement;
85
+
51
86
  var container = document.getElementById('vreo-app') || document.createElement('div');
52
87
  ReactDOM.unmountComponentAtNode(container);
53
88
  container.setAttribute('id', 'vreo-app');
54
89
  configs.container = container;
55
90
  var fiveCanvasDomParent = (_five$getElement = five.getElement()) === null || _five$getElement === void 0 ? void 0 : _five$getElement.parentNode;
91
+
56
92
  if (fiveCanvasDomParent) {
57
93
  fiveCanvasDomParent.append(container);
58
94
  } else {
59
95
  document.body.append(container);
60
96
  }
61
97
  }
98
+
62
99
  if (!configs.container.classList.contains('vreo-app')) configs.container.classList.add('vreo-app');
63
100
  _this.configs = Object.freeze(Object.assign({
64
101
  keyframeMap: {}
@@ -86,9 +123,8 @@ var Player = /*#__PURE__*/function (_Subscribe) {
86
123
  },
87
124
  five: five
88
125
  });
89
- })), configs.container);
126
+ })), configs.container); // 监听播放情况:抛出触发时机
90
127
 
91
- // 监听播放情况:抛出触发时机
92
128
  (0, _mobx.reaction)(function () {
93
129
  return _this.controller.ended;
94
130
  }, function (ended) {
@@ -105,23 +141,25 @@ var Player = /*#__PURE__*/function (_Subscribe) {
105
141
  });
106
142
  return _this;
107
143
  }
144
+
108
145
  _createClass(Player, [{
109
146
  key: "load",
110
147
  value: function () {
111
- var _load = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(vreoUnit) {
148
+ var _load = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(vreoUnit) {
112
149
  var _this$controller$medi,
113
- _this$configs$imageOp,
114
- _this$controller$vide,
115
- _this$controller$vide2,
116
- _this2 = this;
150
+ _this$configs$imageOp,
151
+ _this$controller$vide,
152
+ _this$controller$vide2,
153
+ _this2 = this;
154
+
117
155
  var currentTime,
118
- preload,
119
- force,
120
- panoIndexMap,
121
- panoIndexes,
122
- i,
123
- _args = arguments;
124
- return _regeneratorRuntime().wrap(function _callee$(_context) {
156
+ preload,
157
+ force,
158
+ panoIndexMap,
159
+ panoIndexes,
160
+ i,
161
+ _args = arguments;
162
+ return regeneratorRuntime.wrap(function _callee$(_context) {
125
163
  while (1) {
126
164
  switch (_context.prev = _context.next) {
127
165
  case 0:
@@ -130,10 +168,10 @@ var Player = /*#__PURE__*/function (_Subscribe) {
130
168
  force = _args.length > 3 && _args[3] !== undefined ? _args[3] : false;
131
169
  this.controller.clear();
132
170
  this.controller.setLoading(true);
171
+
133
172
  if (force) {
134
173
  vreoUnit = JSON.parse(JSON.stringify(vreoUnit));
135
- }
136
- // if (!this.controller.visible) {
174
+ } // if (!this.controller.visible) {
137
175
  // this.controller.setVisible(true)
138
176
  // // 延迟 500ms 规避跟 DOM 动画冲突
139
177
  // await new Promise((resolve) => {
@@ -141,66 +179,81 @@ var Player = /*#__PURE__*/function (_Subscribe) {
141
179
  // })
142
180
  // }
143
181
 
182
+
144
183
  if (this.controller.stopInterval) {
145
184
  this.controller.stopInterval();
146
185
  this.controller.stopInterval = undefined;
147
186
  }
148
- this.controller.vreoUnit = vreoUnit;
149
- (_this$controller$medi = this.controller.mediaInstance) === null || _this$controller$medi === void 0 ? void 0 : _this$controller$medi.pause();
150
187
 
151
- // 预载逻辑
188
+ this.controller.vreoUnit = vreoUnit;
189
+ (_this$controller$medi = this.controller.mediaInstance) === null || _this$controller$medi === void 0 ? void 0 : _this$controller$medi.pause(); // 预载逻辑
152
190
  // 是否降低图片分辨率
191
+
153
192
  if (this.$five.imageOptions.size && (_this$configs$imageOp = this.configs.imageOptions) !== null && _this$configs$imageOp !== void 0 && _this$configs$imageOp.size && this.$five.imageOptions.size > this.configs.imageOptions.size) {
154
193
  this.$five.imageOptions.size = this.configs.imageOptions.size;
155
- }
194
+ } // 预载数据中的点位
195
+
156
196
 
157
- // 预载数据中的点位
158
197
  if (!(preload || preload === undefined && this.configs.autoPreload)) {
159
198
  _context.next = 20;
160
199
  break;
161
200
  }
201
+
162
202
  panoIndexMap = vreoUnit.keyframes.filter(function (vreoKeyframe) {
163
203
  if (vreoKeyframe.type !== _VreoUnit.VreoKeyframeEnum.CameraMovement) {
164
204
  return false;
165
205
  }
206
+
166
207
  var data = vreoKeyframe.data;
208
+
167
209
  if (data.panoIndex === undefined) {
168
210
  return false;
169
211
  }
212
+
170
213
  return true;
171
214
  }).reduce(function (accu, curr) {
172
215
  var panoIndex = curr.data.panoIndex;
216
+
173
217
  if (!accu[panoIndex]) {
174
218
  accu[panoIndex] = true;
175
219
  }
220
+
176
221
  return accu;
177
222
  }, {});
178
223
  panoIndexes = Object.keys(panoIndexMap);
179
224
  i = 0;
225
+
180
226
  case 14:
181
227
  if (!(i < panoIndexes.length)) {
182
228
  _context.next = 20;
183
229
  break;
184
230
  }
231
+
185
232
  _context.next = 17;
186
233
  return this.$five.preloadPano(Number(panoIndexes[i]));
234
+
187
235
  case 17:
188
236
  i++;
189
237
  _context.next = 14;
190
238
  break;
239
+
191
240
  case 20:
192
241
  // 新数据载入就绪
193
242
  this.emit('loaded', vreoUnit);
194
243
  this.controller.emit('loaded', vreoUnit);
244
+
195
245
  if ((_this$controller$vide = this.controller.videoAgentScene) !== null && _this$controller$vide !== void 0 && _this$controller$vide.videoAgentMesh.mediaInstance) {
196
246
  this.controller.videoAgentScene.videoAgentMesh.mediaInstance.currentTime = currentTime / 1000;
197
247
  }
248
+
198
249
  this.controller.setAvatar(vreoUnit.video.avatar);
199
250
  _context.next = 26;
200
251
  return (0, _Audio.waitForBlankAudioGenerated)();
252
+
201
253
  case 26:
202
254
  _context.next = 28;
203
255
  return (_this$controller$vide2 = this.controller.videoAgentScene) === null || _this$controller$vide2 === void 0 ? void 0 : _this$controller$vide2.videoAgentMesh.play(vreoUnit.video.url, currentTime / 1000, vreoUnit.video.duration);
256
+
204
257
  case 28:
205
258
  this.controller.setEnded(false);
206
259
  this.play();
@@ -209,6 +262,7 @@ var Player = /*#__PURE__*/function (_Subscribe) {
209
262
  });
210
263
  this.controller.setLoading(false);
211
264
  return _context.abrupt("return", true);
265
+
212
266
  case 33:
213
267
  case "end":
214
268
  return _context.stop();
@@ -216,9 +270,11 @@ var Player = /*#__PURE__*/function (_Subscribe) {
216
270
  }
217
271
  }, _callee, this);
218
272
  }));
273
+
219
274
  function load(_x) {
220
275
  return _load.apply(this, arguments);
221
276
  }
277
+
222
278
  return load;
223
279
  }()
224
280
  }, {
@@ -230,10 +286,13 @@ var Player = /*#__PURE__*/function (_Subscribe) {
230
286
  key: "play",
231
287
  value: function play(currentTime) {
232
288
  var _this$controller$vreo;
289
+
233
290
  if (this.controller.playing) return true;
291
+
234
292
  if (currentTime && this.controller.mediaInstance) {
235
293
  this.controller.mediaInstance.currentTime = currentTime / 1000;
236
294
  }
295
+
237
296
  Object.assign(window, {
238
297
  $vreoController: this.controller
239
298
  });
@@ -275,12 +334,15 @@ var Player = /*#__PURE__*/function (_Subscribe) {
275
334
  key: "dispose",
276
335
  value: function dispose() {
277
336
  this.controller.dispose();
337
+
278
338
  if (this.configs.container) {
279
339
  ReactDOM.unmountComponentAtNode(this.configs.container);
280
340
  }
281
341
  }
282
342
  }]);
343
+
283
344
  return Player;
284
345
  }(_five.Subscribe);
346
+
285
347
  exports.Player = Player;
286
348
  console.log("\n \u250F\u2501\u2501\u2501\u2513\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u250F\u2513\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\n \u2503\u250F\u2501\u2513\u2503\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2503\u2503\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\n \u2503\u2517\u2501\u251B\u2503\u250F\u2501\u2501\u2513\u250F\u2501\u2501\u2513\u2501\u2503\u2503\u2501\u250F\u2501\u2501\u2513\u250F\u2501\u2501\u2513\u250F\u2501\u2501\u2513\n \u2503\u250F\u2513\u250F\u251B\u2503\u250F\u2513\u2503\u2517\u2501\u2513\u2503\u2501\u2503\u2503\u2501\u2503\u2501\u2501\u252B\u2503\u250F\u2513\u2503\u2503\u250F\u2513\u2503\n \u2503\u2503\u2503\u2517\u2513\u2503\u2503\u2501\u252B\u2503\u2517\u251B\u2517\u2513\u2503\u2517\u2513\u2523\u2501\u2501\u2503\u2503\u2503\u2501\u252B\u2503\u2503\u2501\u252B\n \u2517\u251B\u2517\u2501\u251B\u2517\u2501\u2501\u251B\u2517\u2501\u2501\u2501\u251B\u2517\u2501\u251B\u2517\u2501\u2501\u251B\u2517\u2501\u2501\u251B\u2517\u2501\u2501\u251B\n \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\n \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\n");
@@ -1,32 +1,48 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.Drawer = Drawer;
9
+
8
10
  var React = _interopRequireWildcard(require("react"));
11
+
9
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
+
10
14
  var _mobxReact = require("mobx-react");
15
+
11
16
  var _hooks = require("../../hooks");
17
+
12
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
+
13
20
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+
14
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
15
24
  var DrawerView = (0, _mobxReact.observer)(function (_ref) {
16
25
  var _controller$drawerCon2;
26
+
17
27
  var controller = _ref.controller;
18
28
  var maxHeight = '400px';
29
+
19
30
  var height = function () {
20
31
  var _controller$drawerCon;
32
+
21
33
  var height = (_controller$drawerCon = controller.drawerConfig) === null || _controller$drawerCon === void 0 ? void 0 : _controller$drawerCon.height;
34
+
22
35
  if (!height) {
23
36
  return 'max-content';
24
37
  }
38
+
25
39
  if (typeof height === 'number') {
26
40
  return height + 'px';
27
41
  }
42
+
28
43
  return height;
29
44
  }();
45
+
30
46
  return /*#__PURE__*/React.createElement("div", {
31
47
  className: (0, _classnames["default"])('vreo-drawer', {
32
48
  'vreo-drawer-visible': controller.drawerConfig && controller.drawerConfig.content
@@ -42,6 +58,7 @@ var DrawerView = (0, _mobxReact.observer)(function (_ref) {
42
58
  }
43
59
  }, ((_controller$drawerCon2 = controller.drawerConfig) === null || _controller$drawerCon2 === void 0 ? void 0 : _controller$drawerCon2.content) || ''));
44
60
  });
61
+
45
62
  function Drawer() {
46
63
  var controller = (0, _hooks.useController)();
47
64
  return /*#__PURE__*/React.createElement(DrawerView, {
@@ -1,17 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.PopUp = PopUp;
9
+
8
10
  var React = _interopRequireWildcard(require("react"));
11
+
9
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
+
10
14
  var _mobxReact = require("mobx-react");
15
+
11
16
  var _hooks = require("../../hooks");
17
+
12
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
+
13
20
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+
14
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
15
24
  var PopUpView = (0, _mobxReact.observer)(function (_ref) {
16
25
  var controller = _ref.controller;
17
26
  return /*#__PURE__*/React.createElement("div", {
@@ -25,6 +34,7 @@ var PopUpView = (0, _mobxReact.observer)(function (_ref) {
25
34
  className: "vreo-PopUp-inner"
26
35
  }, controller.popUp || ''));
27
36
  });
37
+
28
38
  function PopUp() {
29
39
  var controller = (0, _hooks.useController)();
30
40
  return /*#__PURE__*/React.createElement(PopUpView, {
@@ -4,13 +4,20 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ResizeObserver = ResizeObserver;
7
+
7
8
  var _react = _interopRequireDefault(require("react"));
9
+
8
10
  var _addResizeListener = require("../../../shared-utils/addResizeListener");
11
+
9
12
  var _hooks = require("../../hooks");
13
+
10
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+
11
16
  function ResizeObserver() {
12
17
  var ref = _react["default"].useRef(null);
18
+
13
19
  var controller = (0, _hooks.useController)();
20
+
14
21
  _react["default"].useEffect(function () {
15
22
  if (!ref.current) return;
16
23
  var resizeElement = controller.container.parentElement;
@@ -22,6 +29,7 @@ function ResizeObserver() {
22
29
  dispose();
23
30
  };
24
31
  }, []);
32
+
25
33
  return /*#__PURE__*/_react["default"].createElement("div", {
26
34
  className: "resizeObserver-element",
27
35
  ref: ref