hart-estate-widget 0.0.68 → 0.0.71

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 (110) hide show
  1. package/README.md +2 -15
  2. package/build/widget.bundle.js +3 -0
  3. package/build/widget.bundle.js.LICENSE.txt +78 -0
  4. package/build/widget.bundle.js.map +1 -0
  5. package/build/widget.module.js +3 -0
  6. package/build/widget.module.js.LICENSE.txt +78 -0
  7. package/build/widget.module.js.map +1 -0
  8. package/package.json +22 -21
  9. package/build/assets/css/index.css +0 -2
  10. package/build/assets/fonts/RobotoMono/RobotoMono-Bold.ttf +0 -0
  11. package/build/assets/fonts/RobotoMono/RobotoMono-Bold.woff +0 -0
  12. package/build/assets/fonts/RobotoMono/RobotoMono-Bold.woff2 +0 -0
  13. package/build/assets/fonts/RobotoMono/RobotoMono-BoldItalic.ttf +0 -0
  14. package/build/assets/fonts/RobotoMono/RobotoMono-BoldItalic.woff +0 -0
  15. package/build/assets/fonts/RobotoMono/RobotoMono-BoldItalic.woff2 +0 -0
  16. package/build/assets/fonts/RobotoMono/RobotoMono-Italic.ttf +0 -0
  17. package/build/assets/fonts/RobotoMono/RobotoMono-Italic.woff +0 -0
  18. package/build/assets/fonts/RobotoMono/RobotoMono-Italic.woff2 +0 -0
  19. package/build/assets/fonts/RobotoMono/RobotoMono-Light.ttf +0 -0
  20. package/build/assets/fonts/RobotoMono/RobotoMono-Light.woff +0 -0
  21. package/build/assets/fonts/RobotoMono/RobotoMono-Light.woff2 +0 -0
  22. package/build/assets/fonts/RobotoMono/RobotoMono-LightItalic.ttf +0 -0
  23. package/build/assets/fonts/RobotoMono/RobotoMono-LightItalic.woff +0 -0
  24. package/build/assets/fonts/RobotoMono/RobotoMono-LightItalic.woff2 +0 -0
  25. package/build/assets/fonts/RobotoMono/RobotoMono-Medium.ttf +0 -0
  26. package/build/assets/fonts/RobotoMono/RobotoMono-Medium.woff +0 -0
  27. package/build/assets/fonts/RobotoMono/RobotoMono-Medium.woff2 +0 -0
  28. package/build/assets/fonts/RobotoMono/RobotoMono-MediumItalic.ttf +0 -0
  29. package/build/assets/fonts/RobotoMono/RobotoMono-MediumItalic.woff +0 -0
  30. package/build/assets/fonts/RobotoMono/RobotoMono-MediumItalic.woff2 +0 -0
  31. package/build/assets/fonts/RobotoMono/RobotoMono-Regular.ttf +0 -0
  32. package/build/assets/fonts/RobotoMono/RobotoMono-Regular.woff +0 -0
  33. package/build/assets/fonts/RobotoMono/RobotoMono-Regular.woff2 +0 -0
  34. package/build/assets/fonts/RobotoMono/RobotoMono-Thin.ttf +0 -0
  35. package/build/assets/fonts/RobotoMono/RobotoMono-Thin.woff +0 -0
  36. package/build/assets/fonts/RobotoMono/RobotoMono-Thin.woff2 +0 -0
  37. package/build/assets/fonts/RobotoMono/RobotoMono.css +0 -98
  38. package/build/assets/icons/1x.svg +0 -4
  39. package/build/assets/icons/2x.svg +0 -4
  40. package/build/assets/icons/arrow-left.svg +0 -4
  41. package/build/assets/icons/arrow-right.svg +0 -4
  42. package/build/assets/icons/bullet.png +0 -0
  43. package/build/assets/icons/close.svg +0 -4
  44. package/build/assets/icons/enter-fullscreen.svg +0 -6
  45. package/build/assets/icons/hand-move.svg +0 -15
  46. package/build/assets/icons/hand-research.svg +0 -12
  47. package/build/assets/icons/plan.svg +0 -5
  48. package/build/assets/icons/render.svg +0 -7
  49. package/build/assets/icons/rotation-close.svg +0 -6
  50. package/build/assets/icons/rotation.svg +0 -4
  51. package/build/assets/icons/surface.svg +0 -5
  52. package/build/assets/img/3D.jpg +0 -0
  53. package/build/assets/img/door-icon.png +0 -0
  54. package/build/assets/img/door-texture.jpeg +0 -0
  55. package/build/assets/img/exterior-wall-texture-roughness.jpg +0 -0
  56. package/build/assets/img/exterior-wall-texture.jpeg +0 -0
  57. package/build/assets/img/floor-bathroom.jpg +0 -0
  58. package/build/assets/img/floor-dark.jpg +0 -0
  59. package/build/assets/img/floor-white.jpg +0 -0
  60. package/build/assets/img/floor.jpg +0 -0
  61. package/build/assets/img/grass.jpg +0 -0
  62. package/build/assets/img/logo.svg +0 -11
  63. package/build/assets/img/refresh-icon.svg +0 -6
  64. package/build/assets/img/spot-icon.png +0 -0
  65. package/build/assets/img/wall-texture.jpg +0 -0
  66. package/build/assets/sass/components/instructions.sass +0 -94
  67. package/build/assets/sass/components/loader.sass +0 -54
  68. package/build/assets/sass/components/model.sass +0 -27
  69. package/build/assets/sass/components/panorama.sass +0 -174
  70. package/build/assets/sass/components/rotation.sass +0 -202
  71. package/build/assets/sass/components/tabs.sass +0 -121
  72. package/build/assets/sass/index.sass +0 -65
  73. package/build/assets/sass/mixin.sass +0 -48
  74. package/build/assets/sass/vars.sass +0 -28
  75. package/build/bundle.js +0 -2
  76. package/build/components/Application.js +0 -2
  77. package/build/components/Buttons/FullScreenButton.js +0 -2
  78. package/build/components/Buttons/TabButton.js +0 -2
  79. package/build/components/Instructions.js +0 -2
  80. package/build/components/Loader.js +0 -2
  81. package/build/components/ModelTab.js +0 -2
  82. package/build/components/PanoramaTab.js +0 -2
  83. package/build/components/RotationTab/DefaultView.js +0 -2
  84. package/build/components/RotationTab/ThreesixtyView.js +0 -2
  85. package/build/components/RotationTab/index.js +0 -2
  86. package/build/components/Widget.js +0 -2
  87. package/build/config/defaultConfig.js +0 -2
  88. package/build/enums/deviceOrientationStatuses.js +0 -2
  89. package/build/enums/deviceWidth.js +0 -2
  90. package/build/enums/imageExtentions.js +0 -2
  91. package/build/enums/rotationModes.js +0 -2
  92. package/build/index.css +0 -2
  93. package/build/index.js +0 -2
  94. package/build/locale/en/data.json +0 -25
  95. package/build/locale/index.js +0 -2
  96. package/build/locale/ru/data.json +0 -25
  97. package/build/store/apiStore.js +0 -2
  98. package/build/store/deviceStore.js +0 -2
  99. package/build/store/fullScreenStore.js +0 -2
  100. package/build/store/houseStore.js +0 -2
  101. package/build/store/index.js +0 -2
  102. package/build/store/modelStore.js +0 -2
  103. package/build/threesixty/events.js +0 -2
  104. package/build/threesixty/index.js +0 -2
  105. package/build/utils/csg/csg-lib.js +0 -2
  106. package/build/utils/csg/csg-worker.js +0 -2
  107. package/build/utils/csg/three-csg.js +0 -2
  108. package/build/utils/helpers.js +0 -2
  109. package/build/utils/modelHelpers.js +0 -2
  110. package/build/utils/panoramaHelpers.js +0 -2
@@ -1,2 +0,0 @@
1
- "use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault(require("react")),_store=_interopRequireDefault(require("../store")),_mobx=require("mobx"),_screenfull=_interopRequireDefault(require("screenfull"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _regeneratorRuntime(){_regeneratorRuntime=function(){return a};var a={},e=Object.prototype,c=e.hasOwnProperty,t="function"==typeof Symbol?Symbol:{},n=t.iterator||"@@iterator",r=t.asyncIterator||"@@asyncIterator",o=t.toStringTag||"@@toStringTag";function i(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{i({},"")}catch(e){i=function(e,t,r){return e[t]=r}}function u(e,t,r,n){var o,i,a,u,t=t&&t.prototype instanceof l?t:l,t=Object.create(t.prototype),n=new _(n||[]);return t._invoke=(o=e,i=r,a=n,u="suspendedStart",function(e,t){if("executing"===u)throw new Error("Generator is already running");if("completed"===u){if("throw"===e)throw t;return x()}for(a.method=e,a.arg=t;;){var r=a.delegate;if(r){r=function e(t,r){var n=t.iterator[r.method];if(void 0===n){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=void 0,e(t,r),"throw"===r.method))return f;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}n=s(n,t.iterator,r.arg);if("throw"===n.type)return r.method="throw",r.arg=n.arg,r.delegate=null,f;n=n.arg;return n?n.done?(r[t.resultName]=n.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,f):n:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,f)}(r,a);if(r){if(r===f)continue;return r}}if("next"===a.method)a.sent=a._sent=a.arg;else if("throw"===a.method){if("suspendedStart"===u)throw u="completed",a.arg;a.dispatchException(a.arg)}else"return"===a.method&&a.abrupt("return",a.arg);u="executing";r=s(o,i,a);if("normal"===r.type){if(u=a.done?"completed":"suspendedYield",r.arg===f)continue;return{value:r.arg,done:a.done}}"throw"===r.type&&(u="completed",a.method="throw",a.arg=r.arg)}}),t}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}a.wrap=u;var f={};function l(){}function h(){}function p(){}var t={},y=(i(t,n,function(){return this}),Object.getPrototypeOf),y=y&&y(y(b([]))),d=(y&&y!==e&&c.call(y,n)&&(t=y),p.prototype=l.prototype=Object.create(t));function v(e){["next","throw","return"].forEach(function(t){i(e,t,function(e){return this._invoke(t,e)})})}function g(a,u){var t;this._invoke=function(r,n){function e(){return new u(function(e,t){!function t(e,r,n,o){var i,e=s(a[e],a,r);if("throw"!==e.type)return(r=(i=e.arg).value)&&"object"==_typeof(r)&&c.call(r,"__await")?u.resolve(r.__await).then(function(e){t("next",e,n,o)},function(e){t("throw",e,n,o)}):u.resolve(r).then(function(e){i.value=e,n(i)},function(e){return t("throw",e,n,o)});o(e.arg)}(r,n,e,t)})}return t=t?t.then(e,e):e()}}function m(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function w(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(m,this),this.reset(!0)}function b(t){if(t){var r,e=t[n];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length))return r=-1,(e=function e(){for(;++r<t.length;)if(c.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e}).next=e}return{next:x}}function x(){return{value:void 0,done:!0}}return i(d,"constructor",h.prototype=p),i(p,"constructor",h),h.displayName=i(p,o,"GeneratorFunction"),a.isGeneratorFunction=function(e){e="function"==typeof e&&e.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},a.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,p):(e.__proto__=p,i(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e},a.awrap=function(e){return{__await:e}},v(g.prototype),i(g.prototype,r,function(){return this}),a.AsyncIterator=g,a.async=function(e,t,r,n,o){void 0===o&&(o=Promise);var i=new g(u(e,t,r,n),o);return a.isGeneratorFunction(t)?i:i.next().then(function(e){return e.done?e.value:i.next()})},v(d),i(d,o,"Generator"),i(d,n,function(){return this}),i(d,"toString",function(){return"[object Generator]"}),a.keys=function(r){var e,n=[];for(e in r)n.push(e);return n.reverse(),function e(){for(;n.length;){var t=n.pop();if(t in r)return e.value=t,e.done=!1,e}return e.done=!0,e}},a.values=b,_.prototype={constructor:_,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!e)for(var t in this)"t"===t.charAt(0)&&c.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(r){if(this.done)throw r;var n=this;function e(e,t){return i.type="throw",i.arg=r,n.next=e,t&&(n.method="next",n.arg=void 0),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var o=this.tryEntries[t],i=o.completion;if("root"===o.tryLoc)return e("end");if(o.tryLoc<=this.prev){var a=c.call(o,"catchLoc"),u=c.call(o,"finallyLoc");if(a&&u){if(this.prev<o.catchLoc)return e(o.catchLoc,!0);if(this.prev<o.finallyLoc)return e(o.finallyLoc)}else if(a){if(this.prev<o.catchLoc)return e(o.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return e(o.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;0<=r;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&c.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}var i=(o=o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc?null:o)?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,f):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),f},finish:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),w(r),f}},catch:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var r,n,o=this.tryEntries[t];if(o.tryLoc===e)return"throw"===(r=o.completion).type&&(n=r.arg,w(o)),n}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:b(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},a}function asyncGeneratorStep(e,t,r,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){return void r(e)}u.done?t(c):Promise.resolve(c).then(n,o)}function _asyncToGenerator(u){return function(){var e=this,a=arguments;return new Promise(function(t,r){var n=u.apply(e,a);function o(e){asyncGeneratorStep(n,t,r,o,i,"next",e)}function i(e){asyncGeneratorStep(n,t,r,o,i,"throw",e)}o(void 0)})}}function ownKeys(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(r),!0).forEach(function(e){_defineProperty(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}(0,_mobx.configure)({useProxies:"never"});var FullscreenStore=function(){function e(){_classCallCheck(this,e),_defineProperty(this,"enabled",_screenfull.default.isEnabled),_defineProperty(this,"active",!1),_defineProperty(this,"element",null),_defineProperty(this,"width",null),_defineProperty(this,"height",null),(0,_mobx.makeAutoObservable)(this)}var t,r;return _createClass(e,[{key:"init",value:function(){var e=this;this.element=document.querySelector("#widget-application"),this.enabled&&(this.resize(_store.default.config),_screenfull.default.on("change",function(){setTimeout(function(){e.active=_screenfull.default.isFullscreen,e.active?_store.default.setConfig(_objectSpread(_objectSpread({},_store.default.config),{},{width:window.innerWidth,height:window.innerHeight})):_store.default.setConfig(_objectSpread(_objectSpread({},_store.default.config),{},{width:e.width,height:e.height}))},100)}))}},{key:"enter",value:(r=_asyncToGenerator(_regeneratorRuntime().mark(function e(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_screenfull.default.request(this.element);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e,this)})),function(){return r.apply(this,arguments)})},{key:"exit",value:(t=_asyncToGenerator(_regeneratorRuntime().mark(function e(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_screenfull.default.exit();case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)})),function(){return t.apply(this,arguments)})},{key:"resize",value:function(e){var t=e.width,e=e.height;this.width=t,this.height=e}}]),e}(),_default=new FullscreenStore;exports.default=_default;
2
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0b3JlL2Z1bGxTY3JlZW5TdG9yZS5qcyJdLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdG9yZSIsIl9tb2J4IiwiX3NjcmVlbmZ1bGwiLCJjb25maWd1cmUiLCJ1c2VQcm94aWVzIiwiRnVsbHNjcmVlblN0b3JlIiwiX2NsYXNzQ2FsbENoZWNrIiwidGhpcyIsIl9kZWZpbmVQcm9wZXJ0eSIsInNjcmVlbmZ1bGwiLCJpc0VuYWJsZWQiLCJtYWtlQXV0b09ic2VydmFibGUiLCJfdGhpcyIsImVsZW1lbnQiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJlbmFibGVkIiwicmVzaXplIiwic3RvcmUiLCJjb25maWciLCJvbiIsInNldFRpbWVvdXQiLCJhY3RpdmUiLCJpc0Z1bGxzY3JlZW4iLCJzZXRDb25maWciLCJfb2JqZWN0U3ByZWFkIiwid2lkdGgiLCJ3aW5kb3ciLCJpbm5lcldpZHRoIiwiaGVpZ2h0IiwiaW5uZXJIZWlnaHQiLCJfY2FsbGVlIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwicmVxdWVzdCIsImFicnVwdCIsInNlbnQiLCJzdG9wIiwiX2NhbGxlZTIiLCJfY29udGV4dDIiLCJleGl0IiwiX3JlZiJdLCJtYXBwaW5ncyI6IjRVQUFBLElBQUFBLE9BQUFDLHVCQUFBQyxRQUFBLFVBQ0FDLE9BQUFGLHVCQUFBQyxRQUFBLGFBQ0FFLE1BQUFGLFFBQUEsUUFDQUcsWUFBQUosdUJBQUFDLFFBQUEsZSxtMlBBRUEsRUFBQUksTUFBQUEsV0FBVSxDQUFFQyxXQUFZLFUsSUFFbEJDLGdCLFdBV0osU0FBQUEsSUFBY0MsZ0JBQUFDLEtBQUFGLEdBQUFHLGdCQUFBRCxLQUFBLFVBVkpFLFlBQUFBLFFBQVdDLFdBVVBGLGdCQUFBRCxLQUFBLFVBUkwsR0FRS0MsZ0JBQUFELEtBQUEsVUFOSixNQU1JQyxnQkFBQUQsS0FBQSxRQUpOLE1BSU1DLGdCQUFBRCxLQUFBLFNBRkwsT0FHUCxFQUFBSSxNQUFBQSxvQkFBbUJKLE0saURBR3JCLFdBQU8sSUFBQUssRUFBQUwsS0FDTEEsS0FBS00sUUFBVUMsU0FBU0MsY0FBYyx1QkFFakNSLEtBQUtTLFVBRVZULEtBQUtVLE9BQU9DLE9BQUFBLFFBQU1DLFFBRWxCVixZQUFBQSxRQUFXVyxHQUFHLFNBQVUsV0FDdEJDLFdBQVcsV0FDVFQsRUFBS1UsT0FBU2IsWUFBQUEsUUFBV2MsYUFFckJYLEVBQUtVLE9BQ1BKLE9BQUFBLFFBQU1NLFVBQU5DLGNBQUFBLGNBQUEsR0FBcUJQLE9BQUFBLFFBQU1DLFFBQTNCLEdBQUEsQ0FBbUNPLE1BQU9DLE9BQU9DLFdBQVlDLE9BQVFGLE9BQU9HLGVBN0J0RjNCLE9BQUFBLFFBQUFBLFVBQUFBLGNBQUFBLGNBQUFBLEdBQVVlLE9BQUFBLFFBQUFDLFFBQVZoQixHQUFBQSxDQUFVdUIsTUFBQWQsRUFBQWMsTUFBQUcsT0FBQWpCLEVBQUFpQixXQUFFekIsVSxtRUFhVixTQUFBMkIsSUFBQSxPQUFBQyxzQkFBQUMsS0FBQSxTQUFBQyxHQUFBLE9BQUEsT0FBQUEsRUFBQUMsS0FBQUQsRUFBQUUsTUFBQSxLQUFBLEVBQUEsT0FBQUYsRUFBQUUsS0FBQSxFQUFjM0IsWUFBQUEsUUFBQTRCLFFBQUE5QixLQUFBTSxTQUFkLEtBQUEsRUFBQSxPQUFBcUIsRUFBQUksT0FBQSxTQUFBSixFQUFBSyxNQUFBLEtBQUEsRUFBQSxJQUFBLE1BQUEsT0FBQUwsRUFBQU0sU0FBQVQsRUFBQXhCLFMsK0dBNEJBLFNBQUFrQyxJQUFBLE9BQUFULHNCQUFBQyxLQUFBLFNBQUFTLEdBQUEsT0FBQSxPQUFBQSxFQUFBUCxLQUFBTyxFQUFBTixNQUFBLEtBQUEsRUFBQSxPQUFBTSxFQUFBTixLQUFBLEVBNUJjM0IsWUFBQUEsUUFBQWtDLE9BNEJkLEtBQUEsRUFBQSxPQUFBRCxFQUFBSixPQUFBLFNBQUFJLEVBQUFILE1BQUEsS0FBQSxFQUFBLElBQUEsTUFBQSxPQUFBRyxFQUFBRixTQUFBQyxNLGlFQUlBLFNBQUFHLEdBQTBCLElBQWpCbEIsRUFBaUJrQixFQUFqQmxCLE1BQU9HLEVBQVVlLEVBQVZmLE9BaENGdEIsS0FBQW1CLE1BQUFBLEVBa0NabkIsS0FBS3NCLE9BQVNBLE0sY0FoQ2YsSUFBQXhCIiwiZmlsZSI6InN0b3JlL2Z1bGxTY3JlZW5TdG9yZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3RvcmUgZnJvbSAnLi4vc3RvcmUnO1xuaW1wb3J0IHsgY29uZmlndXJlLCBtYWtlQXV0b09ic2VydmFibGUgfSBmcm9tICdtb2J4JztcbmltcG9ydCBzY3JlZW5mdWxsIGZyb20gJ3NjcmVlbmZ1bGwnO1xuXG5jb25maWd1cmUoeyB1c2VQcm94aWVzOiAnbmV2ZXInIH0pO1xuXG5jbGFzcyBGdWxsc2NyZWVuU3RvcmUge1xuICBlbmFibGVkID0gc2NyZWVuZnVsbC5pc0VuYWJsZWQ7XG5cbiAgYWN0aXZlID0gZmFsc2U7XG5cbiAgZWxlbWVudCA9IG51bGw7XG5cbiAgd2lkdGggPSBudWxsO1xuXG4gIGhlaWdodCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgbWFrZUF1dG9PYnNlcnZhYmxlKHRoaXMpO1xuICB9XG5cbiAgaW5pdCgpIHtcbiAgICB0aGlzLmVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjd2lkZ2V0LWFwcGxpY2F0aW9uJyk7XG5cbiAgICBpZiAoIXRoaXMuZW5hYmxlZCkgcmV0dXJuO1xuXG4gICAgdGhpcy5yZXNpemUoc3RvcmUuY29uZmlnKTtcblxuICAgIHNjcmVlbmZ1bGwub24oJ2NoYW5nZScsICgpID0+IHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmFjdGl2ZSA9IHNjcmVlbmZ1bGwuaXNGdWxsc2NyZWVuO1xuICBcbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlKSB7XG4gICAgICAgICAgc3RvcmUuc2V0Q29uZmlnKHsgLi4uc3RvcmUuY29uZmlnLCB3aWR0aDogd2luZG93LmlubmVyV2lkdGgsIGhlaWdodDogd2luZG93LmlubmVySGVpZ2h0IH0pO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzdG9yZS5zZXRDb25maWcoeyAuLi5zdG9yZS5jb25maWcsIHdpZHRoOiB0aGlzLndpZHRoLCBoZWlnaHQ6IHRoaXMuaGVpZ2h0IH0pO1xuICAgICAgfSwgMTAwKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGVudGVyKCkge1xuICAgIHJldHVybiBhd2FpdCBzY3JlZW5mdWxsLnJlcXVlc3QodGhpcy5lbGVtZW50KTtcbiAgfVxuXG4gIGFzeW5jIGV4aXQoKSB7XG4gICAgcmV0dXJuIGF3YWl0IHNjcmVlbmZ1bGwuZXhpdCgpO1xuICB9XG5cbiAgcmVzaXplKHsgd2lkdGgsIGhlaWdodCB9KSB7XG4gICAgdGhpcy53aWR0aCA9IHdpZHRoO1xuICAgIHRoaXMuaGVpZ2h0ID0gaGVpZ2h0O1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyBGdWxsc2NyZWVuU3RvcmUoKTtcbiJdfQ==