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.
- package/README.md +2 -15
- package/build/widget.bundle.js +3 -0
- package/build/widget.bundle.js.LICENSE.txt +78 -0
- package/build/widget.bundle.js.map +1 -0
- package/build/widget.module.js +3 -0
- package/build/widget.module.js.LICENSE.txt +78 -0
- package/build/widget.module.js.map +1 -0
- package/package.json +22 -21
- package/build/assets/css/index.css +0 -2
- package/build/assets/fonts/RobotoMono/RobotoMono-Bold.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Bold.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Bold.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-BoldItalic.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-BoldItalic.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-BoldItalic.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Italic.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Italic.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Italic.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Light.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Light.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Light.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-LightItalic.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-LightItalic.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-LightItalic.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Medium.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Medium.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Medium.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-MediumItalic.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-MediumItalic.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-MediumItalic.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Regular.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Regular.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Regular.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Thin.ttf +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Thin.woff +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono-Thin.woff2 +0 -0
- package/build/assets/fonts/RobotoMono/RobotoMono.css +0 -98
- package/build/assets/icons/1x.svg +0 -4
- package/build/assets/icons/2x.svg +0 -4
- package/build/assets/icons/arrow-left.svg +0 -4
- package/build/assets/icons/arrow-right.svg +0 -4
- package/build/assets/icons/bullet.png +0 -0
- package/build/assets/icons/close.svg +0 -4
- package/build/assets/icons/enter-fullscreen.svg +0 -6
- package/build/assets/icons/hand-move.svg +0 -15
- package/build/assets/icons/hand-research.svg +0 -12
- package/build/assets/icons/plan.svg +0 -5
- package/build/assets/icons/render.svg +0 -7
- package/build/assets/icons/rotation-close.svg +0 -6
- package/build/assets/icons/rotation.svg +0 -4
- package/build/assets/icons/surface.svg +0 -5
- package/build/assets/img/3D.jpg +0 -0
- package/build/assets/img/door-icon.png +0 -0
- package/build/assets/img/door-texture.jpeg +0 -0
- package/build/assets/img/exterior-wall-texture-roughness.jpg +0 -0
- package/build/assets/img/exterior-wall-texture.jpeg +0 -0
- package/build/assets/img/floor-bathroom.jpg +0 -0
- package/build/assets/img/floor-dark.jpg +0 -0
- package/build/assets/img/floor-white.jpg +0 -0
- package/build/assets/img/floor.jpg +0 -0
- package/build/assets/img/grass.jpg +0 -0
- package/build/assets/img/logo.svg +0 -11
- package/build/assets/img/refresh-icon.svg +0 -6
- package/build/assets/img/spot-icon.png +0 -0
- package/build/assets/img/wall-texture.jpg +0 -0
- package/build/assets/sass/components/instructions.sass +0 -94
- package/build/assets/sass/components/loader.sass +0 -54
- package/build/assets/sass/components/model.sass +0 -27
- package/build/assets/sass/components/panorama.sass +0 -174
- package/build/assets/sass/components/rotation.sass +0 -202
- package/build/assets/sass/components/tabs.sass +0 -121
- package/build/assets/sass/index.sass +0 -65
- package/build/assets/sass/mixin.sass +0 -48
- package/build/assets/sass/vars.sass +0 -28
- package/build/bundle.js +0 -2
- package/build/components/Application.js +0 -2
- package/build/components/Buttons/FullScreenButton.js +0 -2
- package/build/components/Buttons/TabButton.js +0 -2
- package/build/components/Instructions.js +0 -2
- package/build/components/Loader.js +0 -2
- package/build/components/ModelTab.js +0 -2
- package/build/components/PanoramaTab.js +0 -2
- package/build/components/RotationTab/DefaultView.js +0 -2
- package/build/components/RotationTab/ThreesixtyView.js +0 -2
- package/build/components/RotationTab/index.js +0 -2
- package/build/components/Widget.js +0 -2
- package/build/config/defaultConfig.js +0 -2
- package/build/enums/deviceOrientationStatuses.js +0 -2
- package/build/enums/deviceWidth.js +0 -2
- package/build/enums/imageExtentions.js +0 -2
- package/build/enums/rotationModes.js +0 -2
- package/build/index.css +0 -2
- package/build/index.js +0 -2
- package/build/locale/en/data.json +0 -25
- package/build/locale/index.js +0 -2
- package/build/locale/ru/data.json +0 -25
- package/build/store/apiStore.js +0 -2
- package/build/store/deviceStore.js +0 -2
- package/build/store/fullScreenStore.js +0 -2
- package/build/store/houseStore.js +0 -2
- package/build/store/index.js +0 -2
- package/build/store/modelStore.js +0 -2
- package/build/threesixty/events.js +0 -2
- package/build/threesixty/index.js +0 -2
- package/build/utils/csg/csg-lib.js +0 -2
- package/build/utils/csg/csg-worker.js +0 -2
- package/build/utils/csg/three-csg.js +0 -2
- package/build/utils/helpers.js +0 -2
- package/build/utils/modelHelpers.js +0 -2
- package/build/utils/panoramaHelpers.js +0 -2
@@ -1,2 +0,0 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault(require("react"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var s=0;s<t.length;s++){var i=t[s];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function _createClass(e,t,s){return t&&_defineProperties(e.prototype,t),s&&_defineProperties(e,s),Object.defineProperty(e,"prototype",{writable:!1}),e}function _classPrivateFieldInitSpec(e,t,s){_checkPrivateRedeclaration(e,t),t.set(e,s)}function _checkPrivateRedeclaration(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function _classPrivateFieldGet(e,t){return _classApplyDescriptorGet(e,_classExtractFieldDescriptor(e,t,"get"))}function _classApplyDescriptorGet(e,t){return t.get?t.get.call(e):t.value}function _classPrivateFieldSet(e,t,s){return _classApplyDescriptorSet(e,_classExtractFieldDescriptor(e,t,"set"),s),s}function _classExtractFieldDescriptor(e,t,s){if(t.has(e))return t.get(e);throw new TypeError("attempted to "+s+" private field on non-instance")}function _classApplyDescriptorSet(e,t,s){if(t.set)t.set.call(e,s);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=s}}var _dragOrigin=new WeakMap,_options=new WeakMap,_eventHandlers=new WeakMap,Events=function(){function i(t,e){var s=this;_classCallCheck(this,i),_classPrivateFieldInitSpec(this,_dragOrigin,{writable:!0,value:null}),_classPrivateFieldInitSpec(this,_options,{writable:!0,value:null}),_classPrivateFieldInitSpec(this,_eventHandlers,{writable:!0,value:null}),_classPrivateFieldSet(this,_options,e),_classPrivateFieldSet(this,_eventHandlers,{container:{mousedown:function(e){0===e.button&&_classPrivateFieldSet(s,_dragOrigin,e.pageX)},touchstart:function(e){return _classPrivateFieldSet(s,_dragOrigin,e.touches[0].clientX)},touchend:function(){return _classPrivateFieldSet(s,_dragOrigin,null)}},prev:{mousedown:function(e){e.preventDefault(),t.play(!0)},mouseup:function(e){e.preventDefault(),t.stop()},touchstart:function(e){e.preventDefault(),t.prev()}},next:{mousedown:function(e){e.preventDefault(),t.play()},mouseup:function(e){e.preventDefault(),t.stop()},touchstart:function(e){e.preventDefault(),t.next()}},global:{mouseup:function(){return _classPrivateFieldSet(s,_dragOrigin,null)},mousemove:function(e){_classPrivateFieldGet(s,_dragOrigin)&&Math.abs(_classPrivateFieldGet(s,_dragOrigin)-e.pageX)>_classPrivateFieldGet(s,_options).dragTolerance&&(t.stop(),_classPrivateFieldGet(s,_dragOrigin)>e.pageX?t.prev():t.next(),_classPrivateFieldSet(s,_dragOrigin,e.pageX))},touchmove:function(e){2!==e.touches.length&&(1===e.touches.length&&e.stopPropagation(),_classPrivateFieldGet(s,_dragOrigin)&&Math.abs(_classPrivateFieldGet(s,_dragOrigin)-e.touches[0].clientX)>_classPrivateFieldGet(s,_options).swipeTolerance&&(t.stop(),_classPrivateFieldGet(s,_dragOrigin)>e.touches[0].clientX?t.prev():t.next(),_classPrivateFieldSet(s,_dragOrigin,e.touches[0].clientX)))},keydown:function(e){[37,39].includes(e.keyCode)&&t.play(37===e.keyCode)},keyup:function(e){[37,39].includes(e.keyCode)&&t.stop()}}}),this._initEvents()}return _createClass(i,[{key:"destroy",value:function(){_classPrivateFieldGet(this,_options).swipeTarget.removeEventListener("mousedown",_classPrivateFieldGet(this,_eventHandlers).container.mousedown),_classPrivateFieldGet(this,_options).swipeTarget.removeEventListener("touchstart",_classPrivateFieldGet(this,_eventHandlers).container.touchstart),_classPrivateFieldGet(this,_options).swipeTarget.removeEventListener("touchend",_classPrivateFieldGet(this,_eventHandlers).container.touchend),global.removeEventListener("mouseup",_classPrivateFieldGet(this,_eventHandlers).global.mouseup),global.removeEventListener("mousemove",_classPrivateFieldGet(this,_eventHandlers).global.mousemove),_classPrivateFieldGet(this,_options).parentElement.removeEventListener("touchmove",_classPrivateFieldGet(this,_eventHandlers).global.touchmove),global.removeEventListener("keydown",_classPrivateFieldGet(this,_eventHandlers).global.keydown),global.removeEventListener("keyup",_classPrivateFieldGet(this,_eventHandlers).global.keyup),_classPrivateFieldGet(this,_options).prev&&(_classPrivateFieldGet(this,_options).prev.removeEventListener("mousedown",_classPrivateFieldGet(this,_eventHandlers).prev.mousedown),_classPrivateFieldGet(this,_options).prev.removeEventListener("mouseup",_classPrivateFieldGet(this,_eventHandlers).prev.mouseup),_classPrivateFieldGet(this,_options).prev.removeEventListener("touchstart",_classPrivateFieldGet(this,_eventHandlers).prev.touchstart)),_classPrivateFieldGet(this,_options).next&&(_classPrivateFieldGet(this,_options).next.removeEventListener("mousedown",_classPrivateFieldGet(this,_eventHandlers).next.mousedown),_classPrivateFieldGet(this,_options).next.removeEventListener("mouseup",_classPrivateFieldGet(this,_eventHandlers).next.mouseup),_classPrivateFieldGet(this,_options).next.removeEventListener("touchstart",_classPrivateFieldGet(this,_eventHandlers).next.touchstart))}},{key:"_initEvents",value:function(){_classPrivateFieldGet(this,_options).draggable&&(_classPrivateFieldGet(this,_options).swipeTarget.addEventListener("mousedown",_classPrivateFieldGet(this,_eventHandlers).container.mousedown),global.addEventListener("mouseup",_classPrivateFieldGet(this,_eventHandlers).global.mouseup),global.addEventListener("mousemove",_classPrivateFieldGet(this,_eventHandlers).global.mousemove)),_classPrivateFieldGet(this,_options).swipeable&&(_classPrivateFieldGet(this,_options).swipeTarget.addEventListener("touchstart",_classPrivateFieldGet(this,_eventHandlers).container.touchstart),_classPrivateFieldGet(this,_options).swipeTarget.addEventListener("touchend",_classPrivateFieldGet(this,_eventHandlers).container.touchend),_classPrivateFieldGet(this,_options).parentElement.addEventListener("touchmove",_classPrivateFieldGet(this,_eventHandlers).global.touchmove)),_classPrivateFieldGet(this,_options).keys&&(global.addEventListener("keydown",_classPrivateFieldGet(this,_eventHandlers).global.keydown),global.addEventListener("keyup",_classPrivateFieldGet(this,_eventHandlers).global.keyup)),_classPrivateFieldGet(this,_options).prev&&(_classPrivateFieldGet(this,_options).prev.addEventListener("mousedown",_classPrivateFieldGet(this,_eventHandlers).prev.mousedown),_classPrivateFieldGet(this,_options).prev.addEventListener("mouseup",_classPrivateFieldGet(this,_eventHandlers).prev.mouseup),_classPrivateFieldGet(this,_options).prev.addEventListener("touchstart",_classPrivateFieldGet(this,_eventHandlers).prev.touchstart)),_classPrivateFieldGet(this,_options).next&&(_classPrivateFieldGet(this,_options).next.addEventListener("mousedown",_classPrivateFieldGet(this,_eventHandlers).next.mousedown),_classPrivateFieldGet(this,_options).next.addEventListener("mouseup",_classPrivateFieldGet(this,_eventHandlers).next.mouseup),_classPrivateFieldGet(this,_options).next.addEventListener("touchstart",_classPrivateFieldGet(this,_eventHandlers).next.touchstart))}}]),i}(),_default=Events;exports.default=_default;
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRocmVlc2l4dHkvZXZlbnRzLmpzIl0sIm5hbWVzIjpbIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiRXZlbnRzIiwidGhyZWVzaXh0eSIsIm9wdGlvbnMiLCJfdGhpcyIsInRoaXMiLCJfY2xhc3NDYWxsQ2hlY2siLCJfY2xhc3NQcml2YXRlRmllbGRJbml0U3BlYyIsIl9kcmFnT3JpZ2luIiwid3JpdGFibGUiLCJ2YWx1ZSIsIl9vcHRpb25zIiwiX2V2ZW50SGFuZGxlcnMiLCJfY2xhc3NQcml2YXRlRmllbGRTZXQiLCJjb250YWluZXIiLCJtb3VzZWRvd24iLCJlIiwiYnV0dG9uIiwicGFnZVgiLCJ0b3VjaHN0YXJ0IiwidG91Y2hlcyIsImNsaWVudFgiLCJ0b3VjaGVuZCIsInByZXYiLCJwcmV2ZW50RGVmYXVsdCIsInBsYXkiLCJtb3VzZXVwIiwic3RvcCIsIm5leHQiLCJnbG9iYWwiLCJtb3VzZW1vdmUiLCJfY2xhc3NQcml2YXRlRmllbGRHZXQiLCJNYXRoIiwiYWJzIiwiZHJhZ1RvbGVyYW5jZSIsInRvdWNobW92ZSIsImxlbmd0aCIsInN0b3BQcm9wYWdhdGlvbiIsInN3aXBlVG9sZXJhbmNlIiwia2V5ZG93biIsImluY2x1ZGVzIiwia2V5Q29kZSIsImtleXVwIiwic3dpcGVUYXJnZXQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicGFyZW50RWxlbWVudCIsImRyYWdnYWJsZSIsImFkZEV2ZW50TGlzdGVuZXIiLCJzd2lwZWFibGUiLCJrZXlzIiwiX2luaXRFdmVudHMiXSwibWFwcGluZ3MiOiIyRkFBQSxJQUFBQSxPQUFBQyx1QkFBQUMsUUFBQSxVLDg0Q0FFTUMsTyxXQU1KLFNBQUFBLEVBQVlDLEVBQVlDLEdBQVMsSUFBQUMsRUFBQUMsS0FBQUMsZ0JBQUFELEtBQUFKLEdBQUFNLDJCQUFBRixLQUFBRyxZQUFBLENBQUFDLFVBQUEsRUFBQUMsTUFMbkIsT0FLbUJILDJCQUFBRixLQUFBTSxTQUFBLENBQUFG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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5jbGFzcyBFdmVudHMge1xuICAjZHJhZ09yaWdpbiA9IG51bGw7XG4gICNvcHRpb25zID0gbnVsbDtcblxuICAjZXZlbnRIYW5kbGVycyA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IodGhyZWVzaXh0eSwgb3B0aW9ucykge1xuICAgIHRoaXMuI29wdGlvbnMgPSBvcHRpb25zO1xuXG4gICAgdGhpcy4jZXZlbnRIYW5kbGVycyA9IHtcbiAgICAgIGNvbnRhaW5lcjoge1xuICAgICAgICBtb3VzZWRvd246IChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUuYnV0dG9uICE9PSAwKSByZXR1cm47XG4gICAgICAgICAgdGhpcy4jZHJhZ09yaWdpbiA9IGUucGFnZVg7XG4gICAgICAgIH0sXG4gICAgICAgIHRvdWNoc3RhcnQ6IChlKSA9PiB0aGlzLiNkcmFnT3JpZ2luID0gZS50b3VjaGVzWzBdLmNsaWVudFgsXG4gICAgICAgIHRvdWNoZW5kOiAoKSA9PiB0aGlzLiNkcmFnT3JpZ2luID0gbnVsbCxcbiAgICAgIH0sXG4gICAgICBwcmV2OiB7XG4gICAgICAgIG1vdXNlZG93bjogKGUpID0+IHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgdGhyZWVzaXh0eS5wbGF5KHRydWUpO1xuICAgICAgICB9LFxuICAgICAgICBtb3VzZXVwOiAoZSkgPT4ge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICB0aHJlZXNpeHR5LnN0b3AoKTtcbiAgICAgICAgfSxcbiAgICAgICAgdG91Y2hzdGFydDogKGUpID0+IHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgdGhyZWVzaXh0eS5wcmV2KCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBuZXh0OiB7XG4gICAgICAgIG1vdXNlZG93bjogKGUpID0+IHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgdGhyZWVzaXh0eS5wbGF5KCk7XG4gICAgICAgIH0sXG4gICAgICAgIG1vdXNldXA6IChlKSA9PiB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIHRocmVlc2l4dHkuc3RvcCgpO1xuICAgICAgICB9LFxuICAgICAgICB0b3VjaHN0YXJ0OiAoZSkgPT4ge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICB0aHJlZXNpeHR5Lm5leHQoKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGdsb2JhbDoge1xuICAgICAgICBtb3VzZXVwOiAoKSA9PiB0aGlzLiNkcmFnT3JpZ2luID0gbnVsbCxcbiAgICAgICAgbW91c2Vtb3ZlOiAoZSkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLiNkcmFnT3JpZ2luICYmIE1hdGguYWJzKHRoaXMuI2RyYWdPcmlnaW4gLSBlLnBhZ2VYKSA+IHRoaXMuI29wdGlvbnMuZHJhZ1RvbGVyYW5jZSkge1xuICAgICAgICAgICAgdGhyZWVzaXh0eS5zdG9wKCk7XG4gICAgICAgICAgICB0aGlzLiNkcmFnT3JpZ2luID4gZS5wYWdlWCA/IHRocmVlc2l4dHkucHJldigpIDogdGhyZWVzaXh0eS5uZXh0KCk7XG4gICAgICAgICAgICB0aGlzLiNkcmFnT3JpZ2luID0gZS5wYWdlWDtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHRvdWNobW92ZTogKGUpID0+IHtcbiAgICAgICAgICBpZiAoZS50b3VjaGVzLmxlbmd0aCA9PT0gMikgcmV0dXJuO1xuICAgICAgICAgIGlmIChlLnRvdWNoZXMubGVuZ3RoID09PSAxKSBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIGlmICh0aGlzLiNkcmFnT3JpZ2luICYmIE1hdGguYWJzKHRoaXMuI2RyYWdPcmlnaW4gLSBlLnRvdWNoZXNbMF0uY2xpZW50WCkgPiB0aGlzLiNvcHRpb25zLnN3aXBlVG9sZXJhbmNlKSB7XG4gICAgICAgICAgICB0aHJlZXNpeHR5LnN0b3AoKTtcbiAgICAgICAgICAgIHRoaXMuI2RyYWdPcmlnaW4gPiBlLnRvdWNoZXNbMF0uY2xpZW50WCA/IHRocmVlc2l4dHkucHJldigpIDogdGhyZWVzaXh0eS5uZXh0KCk7XG4gICAgICAgICAgICB0aGlzLiNkcmFnT3JpZ2luID0gZS50b3VjaGVzWzBdLmNsaWVudFg7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBrZXlkb3duOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChbMzcsIDM5XS5pbmNsdWRlcyhlLmtleUNvZGUpKSB7XG4gICAgICAgICAgICB0aHJlZXNpeHR5LnBsYXkoMzcgPT09IGUua2V5Q29kZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBrZXl1cDogKGUpID0+IHtcbiAgICAgICAgICBpZiAoWzM3LCAzOV0uaW5jbHVkZXMoZS5rZXlDb2RlKSkge1xuICAgICAgICAgICAgdGhyZWVzaXh0eS5zdG9wKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIHRoaXMuX2luaXRFdmVudHMoKTtcbiAgfVxuXG4gIGRlc3Ryb3koKSB7XG4gICAgdGhpcy4jb3B0aW9ucy5zd2lwZVRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLiNldmVudEhhbmRsZXJzLmNvbnRhaW5lci5tb3VzZWRvd24pO1xuICAgIHRoaXMuI29wdGlvbnMuc3dpcGVUYXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIHRoaXMuI2V2ZW50SGFuZGxlcnMuY29udGFpbmVyLnRvdWNoc3RhcnQpO1xuICAgIHRoaXMuI29wdGlvbnMuc3dpcGVUYXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCB0aGlzLiNldmVudEhhbmRsZXJzLmNvbnRhaW5lci50b3VjaGVuZCk7XG5cbiAgICBnbG9iYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuI2V2ZW50SGFuZGxlcnMuZ2xvYmFsLm1vdXNldXApO1xuICAgIGdsb2JhbC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLiNldmVudEhhbmRsZXJzLmdsb2JhbC5tb3VzZW1vdmUpO1xuICAgIHRoaXMuI29wdGlvbnMucGFyZW50RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLiNldmVudEhhbmRsZXJzLmdsb2JhbC50b3VjaG1vdmUpO1xuICAgIGdsb2JhbC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy4jZXZlbnRIYW5kbGVycy5nbG9iYWwua2V5ZG93bik7XG4gICAgZ2xvYmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy4jZXZlbnRIYW5kbGVycy5nbG9iYWwua2V5dXApO1xuXG4gICAgaWYgKHRoaXMuI29wdGlvbnMucHJldikge1xuICAgICAgdGhpcy4jb3B0aW9ucy5wcmV2LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMuI2V2ZW50SGFuZGxlcnMucHJldi5tb3VzZWRvd24pO1xuICAgICAgdGhpcy4jb3B0aW9ucy5wcmV2LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLiNldmVudEhhbmRsZXJzLnByZXYubW91c2V1cCk7XG4gICAgICB0aGlzLiNvcHRpb25zLnByZXYucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIHRoaXMuI2V2ZW50SGFuZGxlcnMucHJldi50b3VjaHN0YXJ0KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy4jb3B0aW9ucy5uZXh0KSB7XG4gICAgICB0aGlzLiNvcHRpb25zLm5leHQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy4jZXZlbnRIYW5kbGVycy5uZXh0Lm1vdXNlZG93bik7XG4gICAgICB0aGlzLiNvcHRpb25zLm5leHQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuI2V2ZW50SGFuZGxlcnMubmV4dC5tb3VzZXVwKTtcbiAgICAgIHRoaXMuI29wdGlvbnMubmV4dC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy4jZXZlbnRIYW5kbGVycy5uZXh0LnRvdWNoc3RhcnQpO1xuICAgIH1cbiAgfVxuXG4gIF9pbml0RXZlbnRzKCkge1xuICAgIGlmICh0aGlzLiNvcHRpb25zLmRyYWdnYWJsZSkge1xuICAgICAgdGhpcy4jb3B0aW9ucy5zd2lwZVRhcmdldC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLiNldmVudEhhbmRsZXJzLmNvbnRhaW5lci5tb3VzZWRvd24pO1xuICAgICAgZ2xvYmFsLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLiNldmVudEhhbmRsZXJzLmdsb2JhbC5tb3VzZXVwKTtcbiAgICAgIGdsb2JhbC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLiNldmVudEhhbmRsZXJzLmdsb2JhbC5tb3VzZW1vdmUpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLiNvcHRpb25zLnN3aXBlYWJsZSkge1xuICAgICAgdGhpcy4jb3B0aW9ucy5zd2lwZVRhcmdldC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy4jZXZlbnRIYW5kbGVycy5jb250YWluZXIudG91Y2hzdGFydCk7XG4gICAgICB0aGlzLiNvcHRpb25zLnN3aXBlVGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy4jZXZlbnRIYW5kbGVycy5jb250YWluZXIudG91Y2hlbmQpO1xuICAgICAgdGhpcy4jb3B0aW9ucy5wYXJlbnRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIHRoaXMuI2V2ZW50SGFuZGxlcnMuZ2xvYmFsLnRvdWNobW92ZSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuI29wdGlvbnMua2V5cykge1xuICAgICAgZ2xvYmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLiNldmVudEhhbmRsZXJzLmdsb2JhbC5rZXlkb3duKTtcbiAgICAgIGdsb2JhbC5hZGRFdmVudExpc3RlbmVyKCdrZXl1cCcsIHRoaXMuI2V2ZW50SGFuZGxlcnMuZ2xvYmFsLmtleXVwKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy4jb3B0aW9ucy5wcmV2KSB7XG4gICAgICB0aGlzLiNvcHRpb25zLnByZXYuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy4jZXZlbnRIYW5kbGVycy5wcmV2Lm1vdXNlZG93bik7XG4gICAgICB0aGlzLiNvcHRpb25zLnByZXYuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuI2V2ZW50SGFuZGxlcnMucHJldi5tb3VzZXVwKTtcbiAgICAgIHRoaXMuI29wdGlvbnMucHJldi5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy4jZXZlbnRIYW5kbGVycy5wcmV2LnRvdWNoc3RhcnQpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLiNvcHRpb25zLm5leHQpIHtcbiAgICAgIHRoaXMuI29wdGlvbnMubmV4dC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLiNldmVudEhhbmRsZXJzLm5leHQubW91c2Vkb3duKTtcbiAgICAgIHRoaXMuI29wdGlvbnMubmV4dC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy4jZXZlbnRIYW5kbGVycy5uZXh0Lm1vdXNldXApO1xuICAgICAgdGhpcy4jb3B0aW9ucy5uZXh0LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLiNldmVudEhhbmRsZXJzLm5leHQudG91Y2hzdGFydCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEV2ZW50cztcbiJdfQ==
|
@@ -1,2 +0,0 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault(require("react")),_events2=_interopRequireDefault(require("./events"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var i=0;i<t.length;i++){var s=t[i];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(e,s.key,s)}}function _createClass(e,t,i){return t&&_defineProperties(e.prototype,t),i&&_defineProperties(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function _classPrivateFieldInitSpec(e,t,i){_checkPrivateRedeclaration(e,t),t.set(e,i)}function _checkPrivateRedeclaration(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function _classPrivateFieldGet(e,t){return _classApplyDescriptorGet(e,_classExtractFieldDescriptor(e,t,"get"))}function _classApplyDescriptorGet(e,t){return t.get?t.get.call(e):t.value}function _classPrivateFieldSet(e,t,i){return _classApplyDescriptorSet(e,_classExtractFieldDescriptor(e,t,"set"),i),i}function _classExtractFieldDescriptor(e,t,i){if(t.has(e))return t.get(e);throw new TypeError("attempted to "+i+" private field on non-instance")}function _classApplyDescriptorSet(e,t,i){if(t.set)t.set.call(e,i);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=i}}var _options=new WeakMap,_index=new WeakMap,_loopTimeoutId=new WeakMap,_looping=new WeakMap,_events=new WeakMap,_sprite=new WeakMap,ThreeSixty=function(){function i(e,t){_classCallCheck(this,i),_classPrivateFieldInitSpec(this,_options,{writable:!0,value:null}),_classPrivateFieldInitSpec(this,_index,{writable:!0,value:0}),_classPrivateFieldInitSpec(this,_loopTimeoutId,{writable:!0,value:null}),_classPrivateFieldInitSpec(this,_looping,{writable:!0,value:!1}),_classPrivateFieldInitSpec(this,_events,{writable:!0,value:null}),_classPrivateFieldInitSpec(this,_sprite,{writable:!0,value:!1}),this.container=e,_classPrivateFieldSet(this,_options,Object.assign({width:300,height:300,aspectRatio:0,count:0,perRow:0,speed:100,dragTolerance:10,swipeTolerance:10,draggable:!0,swipeable:!0,keys:!0,inverted:!1},t)),_classPrivateFieldGet(this,_options).swipeTarget=_classPrivateFieldGet(this,_options).swipeTarget||this.container,_classPrivateFieldSet(this,_sprite,!Array.isArray(_classPrivateFieldGet(this,_options).image)),this.sprite||(_classPrivateFieldGet(this,_options).count=_classPrivateFieldGet(this,_options).image.length),Object.freeze(_classPrivateFieldGet(this,_options)),_classPrivateFieldSet(this,_events,new _events2.default(this,_classPrivateFieldGet(this,_options))),this._windowResizeListener=this._windowResizeListener.bind(this),this._initContainer()}return _createClass(i,[{key:"isResponsive",get:function(){return 0<_classPrivateFieldGet(this,_options).aspectRatio}},{key:"containerWidth",get:function(){return this.isResponsive?this.container.clientWidth:_classPrivateFieldGet(this,_options).width}},{key:"containerHeight",get:function(){return this.isResponsive?this.container.clientWidth*_classPrivateFieldGet(this,_options).aspectRatio:_classPrivateFieldGet(this,_options).height}},{key:"index",get:function(){return _classPrivateFieldGet(this,_index)}},{key:"looping",get:function(){return _classPrivateFieldGet(this,_looping)}},{key:"sprite",get:function(){return _classPrivateFieldGet(this,_sprite)}},{key:"next",value:function(){this.goto(_classPrivateFieldGet(this,_options).inverted?_classPrivateFieldGet(this,_index)-1:_classPrivateFieldGet(this,_index)+1)}},{key:"prev",value:function(){this.goto(_classPrivateFieldGet(this,_options).inverted?_classPrivateFieldGet(this,_index)+1:_classPrivateFieldGet(this,_index)-1)}},{key:"goto",value:function(e){_classPrivateFieldSet(this,_index,(_classPrivateFieldGet(this,_options).count+e)%_classPrivateFieldGet(this,_options).count),this._update()}},{key:"play",value:function(e){this.looping||(this._loop(e),_classPrivateFieldSet(this,_looping,!0))}},{key:"stop",value:function(){this.looping&&(global.clearTimeout(_classPrivateFieldGet(this,_loopTimeoutId)),_classPrivateFieldSet(this,_looping,!1))}},{key:"toggle",value:function(e){this.looping?this.stop():this.play(e)}},{key:"destroy",value:function(){this.stop(),_classPrivateFieldGet(this,_events).destroy(),this.container.style.width="",this.container.style.height="",this.container.style.backgroundImage="",this.container.style.backgroundPositionX="",this.container.style.backgroundPositionY="",this.container.style.backgroundSize="",this.isResponsive&&window.removeEventListener("resize",this._windowResizeListener)}},{key:"_loop",value:function(e){var t=this;e?this.prev():this.next(),_classPrivateFieldSet(this,_loopTimeoutId,global.setTimeout(function(){t._loop(e)},_classPrivateFieldGet(this,_options).speed))}},{key:"_update",value:function(){this.sprite?(this.container.style.backgroundPositionX=-(_classPrivateFieldGet(this,_index)%_classPrivateFieldGet(this,_options).perRow)*this.containerWidth+"px",this.container.style.backgroundPositionY=-Math.floor(_classPrivateFieldGet(this,_index)/_classPrivateFieldGet(this,_options).perRow)*this.containerHeight+"px"):this.container.style.backgroundImage='url("'.concat(_classPrivateFieldGet(this,_options).image[_classPrivateFieldGet(this,_index)],'")')}},{key:"_windowResizeListener",value:function(){this.container.style.height=this.containerHeight+"px",this._update()}},{key:"_initContainer",value:function(){var e,t;this.isResponsive||(this.container.style.width=this.containerWidth+"px"),this.container.style.height=this.containerHeight+"px",this.sprite&&(this.container.style.backgroundImage='url("'.concat(_classPrivateFieldGet(this,_options).image,'")'),e=_classPrivateFieldGet(this,_options).perRow,t=Math.ceil(_classPrivateFieldGet(this,_options).count/_classPrivateFieldGet(this,_options).perRow),this.container.style.backgroundSize=100*e+"% "+100*t+"%"),this.isResponsive&&window.addEventListener("resize",this._windowResizeListener),this._update()}}]),i}(),_default=ThreeSixty;exports.default=_default;
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRocmVlc2l4dHkvaW5kZXguanMiXSwibmFtZXMiOlsiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZXZlbnRzMiIsIlRocmVlU2l4dHkiLCJjb250YWluZXIiLCJvcHRpb25zIiwiX2NsYXNzQ2FsbENoZWNrIiwidGhpcyIsIl9jbGFzc1ByaXZhdGVGaWVsZEluaXRTcGVjIiwiX29wdGlvbnMiLCJ3cml0YWJsZSIsInZhbHVlIiwiX2luZGV4IiwiX2xvb3BUaW1lb3V0SWQiLCJfbG9vcGluZyIsIl9ldmVudHMiLCJfc3ByaXRlIiwiX2NsYXNzUHJpdmF0ZUZpZWxkU2V0IiwiT2JqZWN0IiwiYXNzaWduIiwid2lkdGgiLCJoZWlnaHQiLCJhc3BlY3RSYXRpbyIsImNvdW50IiwicGVyUm93Iiwic3BlZWQiLCJkcmFnVG9sZXJhbmNlIiwic3dpcGVUb2xlcmFuY2UiLCJkcmFnZ2FibGUiLCJzd2lwZWFibGUiLCJrZXlzIiwiaW52ZXJ0ZWQiLCJfY2xhc3NQcml2YXRlRmllbGRHZXQiLCJzd2lwZVRhcmdldCIsIkFycmF5IiwiaXNBcnJheSIsImltYWdlIiwic3ByaXRlIiwibGVuZ3RoIiwiZnJlZXplIiwiRXZlbnRzIiwiX3dpbmRvd1Jlc2l6ZUxpc3RlbmVyIiwiYmluZCIsImlzUmVzcG9uc2l2ZSIsImNsaWVudFdpZHRoIiwiZ290byIsImluZGV4IiwicmV2ZXJzZWQiLCJsb29waW5nIiwiZ2xvYmFsIiwiY2xlYXJUaW1lb3V0Iiwic3RvcCIsInBsYXkiLCJkZXN0cm95Iiwic3R5bGUiLCJiYWNrZ3JvdW5kSW1hZ2UiLCJiYWNrZ3JvdW5kUG9zaXRpb25YIiwiYmFja2dyb3VuZFBvc2l0aW9uWSIsImJhY2tncm91bmRTaXplIiwid2luZG93IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIl90aGlzIiwicHJldiIsIm5leHQiLCJzZXRUaW1lb3V0IiwiX2xvb3AiLCJjb250YWluZXJXaWR0aCIsIk1hdGgiLCJmbG9vciIsImNvbnRhaW5lckhlaWdodCIsImNvbmNhdCIsIl91cGRhdGUiLCJyb3dzIiwiY2VpbCIsImNvbHMiLCJhZGRFdmVudExpc3RlbmVyIl0sIm1hcHBpbmdzIjoiMkZBQUEsSUFBQUEsT0FBQUMsdUJBQUFDLFFBQUEsVUFFQUMsU0FBQUYsdUJBQUFDLFFBQUEsYSxzOENBRU1FLFcsV0FVSixTQUFBQSxFQUFZQyxFQUFXQyxHQUFTQyxnQkFBQUMsS0FBQUosR0FBQUssMkJBQUFELEtBQUFFLFNBQUEsQ0FBQUMsVUFBQSxFQUFBQyxNQVRyQixPQVNxQkgsMkJBQUFELEtBQUFLLE9BQUEsQ0FBQUYsVUFBQSxFQUFBQyxNQVJ2QixJQVF1QkgsMkJBQUFELEtBQUFNLGVBQUEsQ0FBQUgsVUFBQSxFQUFBQyxNQU5mLE9BTWVILDJCQUFBRCxLQUFBTyxTQUFBLENBQUFKLFVBQUEsRUFBQUMsT0FabEMsSUFZa0NILDJCQUFBRCxLQUFBUSxRQUFBLENBQUFMLFVBQUEsRUFBQUMsTUFIdEIsT0FHc0JILDJCQUFBRCxLQUFBUyxRQUFBLENBQUFOLFVBQUEsRUFBQUMsT0FGdEIsSUFHUkosS0FBS0gsVUFBWUEsRUFFakJhLHNCQUFBVixLQUFBRSxTQUFnQlMsT0FBT0MsT0FBTyxDQUM1QkMsTUFBTyxJQUNQQyxPQUFRLElBQ1JDLFlBQWEsRUFDYkMsTUFBTyxFQUNQQyxPQUFRLEVBQ1JDLE1BQU8sSUFDUEMsY0FBZSxHQUNmQyxlQUFnQixHQUNoQkMsV0FBVyxFQUNYQyxXQUFXLEVBQ1hDLE1BQU0sRUFDTkMsVUFBVSxHQUNUMUIsSUFFSDJCLHNCQUFBekIsS0FBQUUsVUFBY3dCLFlBQWNELHNCQUFBekIsS0FBQUUsVUFBY3dCLGFBQWUxQixLQUFLSCxVQUU5RGEsc0JBQUFWLEtBQUFTLFNBQWdCa0IsTUFBTUMsUUFBUUgsc0JBQUF6QixLQUFBRSxVQUFjMkIsUUFDdkM3QixLQUFLOEIsU0FDUkwsc0JBQUF6QixLQUFBRSxVQUFjYyxNQUFRUyxzQkFBQXpCLEtBQUFFLFVBQWMyQixNQUFNRSxRQUc1Q3BCLE9BQU9xQixPQUFQ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QUssU0FzRVQsUSxtQ0FJSixXQUNFTCxLQUFLSCxVQXZFUGtELE1BQUFqQyxPQUFPZCxLQUFBOEQsZ0JBQUEsS0F3RUw5RCxLQXZFQWdFLFksNEJBMEVGLFdBTUUsSUF0RUtBLEVBQ05DLEVBZ0VNakUsS0F4RVBvQyxlQUNFcEMsS0FBS3NDLFVBQUtTLE1BQUFsQyxNQUFBYixLQUFBMkQsZUFBY25DLE1BMEV4QnhCLEtBQUtILFVBQVVrRCxNQUFNakMsT0FBU2QsS0FBSzhELGdCQUFrQixLQUVqRDlELEtBekVOOEIsU0FDRTlCLEtBQUFILFVBQUFrRCxNQUFBQyxnQkFBQSxRQUFBZSxPQUFldEMsc0JBQUF6QixLQUFBRSxVQUFBMkIsTUFBZixNQUVLbUMsRUFBTHZDLHNCQUFBekIsS0FBQUUsVUFBQWUsT0FDRGdELEVBQUFMLEtBQUFNLEtBQUF6QyxzQkFBQXpCLEtBQUFFLFVBQUFjLE1BQUFTLHNCQUFBekIsS0FBQUUsVUFBQWUsUUEwRUdqQixLQUFLSCxVQUFVa0QsTUFBTUksZUFBeUIsSUFBUGdCLEVBQWMsS0FBZSxJQUFQRixFQUFjLEtBdkU3RWpFLEtBQUlvQyxjQTJFRmdCLE9BMUVBZ0IsaUJBQUEsU0FBQXBFLEtBQUFrQyx1QkE2RUZsQyxLQTFFQWdFLGMsY0E4RVdwRSIsImZpbGUiOiJ0aHJlZXNpeHR5L2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IEV2ZW50cyBmcm9tICcuL2V2ZW50cyc7XG5cbmNsYXNzIFRocmVlU2l4dHkge1xuICAjb3B0aW9ucyA9IG51bGw7XG4gICNpbmRleCA9IDA7XG5cbiAgI2xvb3BUaW1lb3V0SWQgPSBudWxsO1xuICAjbG9vcGluZyA9IGZhbHNlO1xuXG4gICNldmVudHMgPSBudWxsO1xuICAjc3ByaXRlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoY29udGFpbmVyLCBvcHRpb25zKSB7XG4gICAgdGhpcy5jb250YWluZXIgPSBjb250YWluZXI7XG5cbiAgICB0aGlzLiNvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7XG4gICAgICB3aWR0aDogMzAwLFxuICAgICAgaGVpZ2h0OiAzMDAsXG4gICAgICBhc3BlY3RSYXRpbzogMCxcbiAgICAgIGNvdW50OiAwLFxuICAgICAgcGVyUm93OiAwLFxuICAgICAgc3BlZWQ6IDEwMCxcbiAgICAgIGRyYWdUb2xlcmFuY2U6IDEwLFxuICAgICAgc3dpcGVUb2xlcmFuY2U6IDEwLFxuICAgICAgZHJhZ2dhYmxlOiB0cnVlLFxuICAgICAgc3dpcGVhYmxlOiB0cnVlLFxuICAgICAga2V5czogdHJ1ZSxcbiAgICAgIGludmVydGVkOiBmYWxzZVxuICAgIH0sIG9wdGlvbnMpO1xuXG4gICAgdGhpcy4jb3B0aW9ucy5zd2lwZVRhcmdldCA9IHRoaXMuI29wdGlvbnMuc3dpcGVUYXJnZXQgfHwgdGhpcy5jb250YWluZXI7XG5cbiAgICB0aGlzLiNzcHJpdGUgPSAhQXJyYXkuaXNBcnJheSh0aGlzLiNvcHRpb25zLmltYWdlKTtcbiAgICBpZiAoIXRoaXMuc3ByaXRlKSB7XG4gICAgICB0aGlzLiNvcHRpb25zLmNvdW50ID0gdGhpcy4jb3B0aW9ucy5pbWFnZS5sZW5ndGg7XG4gICAgfVxuXG4gICAgT2JqZWN0LmZyZWV6ZSh0aGlzLiNvcHRpb25zKTtcblxuICAgIHRoaXMuI2V2ZW50cyA9IG5ldyBFdmVudHModGhpcywgdGhpcy4jb3B0aW9ucyk7XG5cbiAgICB0aGlzLl93aW5kb3dSZXNpemVMaXN0ZW5lciA9IHRoaXMuX3dpbmRvd1Jlc2l6ZUxpc3RlbmVyLmJpbmQodGhpcyk7XG5cbiAgICB0aGlzLl9pbml0Q29udGFpbmVyKCk7XG4gIH1cblxuICBnZXQgaXNSZXNwb25zaXZlKCkge1xuICAgIHJldHVybiB0aGlzLiNvcHRpb25zLmFzcGVjdFJhdGlvID4gMDtcbiAgfVxuXG4gIGdldCBjb250YWluZXJXaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5pc1Jlc3BvbnNpdmUgPyB0aGlzLmNvbnRhaW5lci5jbGllbnRXaWR0aCA6IHRoaXMuI29wdGlvbnMud2lkdGg7XG4gIH1cblxuICBnZXQgY29udGFpbmVySGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLmlzUmVzcG9uc2l2ZVxuICAgICAgPyB0aGlzLmNvbnRhaW5lci5jbGllbnRXaWR0aCAqIHRoaXMuI29wdGlvbnMuYXNwZWN0UmF0aW9cbiAgICAgIDogdGhpcy4jb3B0aW9ucy5oZWlnaHQ7XG4gIH1cblxuICBnZXQgaW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2luZGV4O1xuICB9XG5cbiAgZ2V0IGxvb3BpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2xvb3Bpbmc7XG4gIH1cblxuICBnZXQgc3ByaXRlKCkge1xuICAgIHJldHVybiB0aGlzLiNzcHJpdGU7XG4gIH1cblxuICBuZXh0KCkge1xuICAgIHRoaXMuZ290byh0aGlzLiNvcHRpb25zLmludmVydGVkID8gdGhpcy4jaW5kZXggLSAxIDogdGhpcy4jaW5kZXggKyAxKTtcbiAgfVxuXG4gIHByZXYoKSB7XG4gICAgdGhpcy5nb3RvKHRoaXMuI29wdGlvbnMuaW52ZXJ0ZWQgPyB0aGlzLiNpbmRleCArIDEgOiB0aGlzLiNpbmRleCAtIDEpO1xuICB9XG5cbiAgZ290byhpbmRleCkge1xuICAgIHRoaXMuI2luZGV4ID0gKHRoaXMuI29wdGlvbnMuY291bnQgKyBpbmRleCkgJSB0aGlzLiNvcHRpb25zLmNvdW50O1xuXG4gICAgdGhpcy5fdXBkYXRlKCk7XG4gIH1cblxuICBwbGF5IChyZXZlcnNlZCkge1xuICAgIGlmICh0aGlzLmxvb3BpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9sb29wKHJldmVyc2VkKTtcbiAgICB0aGlzLiNsb29waW5nID0gdHJ1ZTtcbiAgfVxuXG4gIHN0b3AgKCkge1xuICAgIGlmICghdGhpcy5sb29waW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZ2xvYmFsLmNsZWFyVGltZW91dCh0aGlzLiNsb29wVGltZW91dElkKTtcbiAgICB0aGlzLiNsb29waW5nID0gZmFsc2U7XG4gIH1cblxuICB0b2dnbGUocmV2ZXJzZWQpIHtcbiAgICB0aGlzLmxvb3BpbmcgPyB0aGlzLnN0b3AoKSA6IHRoaXMucGxheShyZXZlcnNlZCk7XG4gIH1cblxuICBkZXN0cm95KCkge1xuICAgIHRoaXMuc3RvcCgpO1xuXG4gICAgdGhpcy4jZXZlbnRzLmRlc3Ryb3koKTtcblxuICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLndpZHRoID0gJyc7XG4gICAgdGhpcy5jb250YWluZXIuc3R5bGUuaGVpZ2h0ID0gJyc7XG4gICAgdGhpcy5jb250YWluZXIuc3R5bGUuYmFja2dyb3VuZEltYWdlID0gJyc7XG4gICAgdGhpcy5jb250YWluZXIuc3R5bGUuYmFja2dyb3VuZFBvc2l0aW9uWCA9ICcnO1xuICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLmJhY2tncm91bmRQb3NpdGlvblkgPSAnJztcbiAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5iYWNrZ3JvdW5kU2l6ZSA9ICcnO1xuXG4gICAgaWYgKHRoaXMuaXNSZXNwb25zaXZlKSB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncmVzaXplJywgdGhpcy5fd2luZG93UmVzaXplTGlzdGVuZXIpO1xuICAgIH1cbiAgfVxuXG4gIF9sb29wKHJldmVyc2VkKSB7XG4gICAgcmV2ZXJzZWQgPyB0aGlzLnByZXYoKSA6IHRoaXMubmV4dCgpO1xuXG4gICAgdGhpcy4jbG9vcFRpbWVvdXRJZCA9IGdsb2JhbC5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuX2xvb3AocmV2ZXJzZWQpO1xuICAgIH0sIHRoaXMuI29wdGlvbnMuc3BlZWQpO1xuICB9XG5cbiAgX3VwZGF0ZSAoKSB7XG4gICAgaWYgKHRoaXMuc3ByaXRlKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5iYWNrZ3JvdW5kUG9zaXRpb25YID0gLSh0aGlzLiNpbmRleCAlIHRoaXMuI29wdGlvbnMucGVyUm93KSAqIHRoaXMuY29udGFpbmVyV2lkdGggKyAncHgnO1xuICAgICAgdGhpcy5jb250YWluZXIuc3R5bGUuYmFja2dyb3VuZFBvc2l0aW9uWSA9IC1NYXRoLmZsb29yKHRoaXMuI2luZGV4IC8gdGhpcy4jb3B0aW9ucy5wZXJSb3cpICogdGhpcy5jb250YWluZXJIZWlnaHQgKyAncHgnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKFwiJHt0aGlzLiNvcHRpb25zLmltYWdlW3RoaXMuI2luZGV4XX1cIilgO1xuICAgIH1cbiAgfVxuXG4gIF93aW5kb3dSZXNpemVMaXN0ZW5lcigpIHtcbiAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5oZWlnaHQgPSB0aGlzLmNvbnRhaW5lckhlaWdodCArICdweCc7XG4gICAgdGhpcy5fdXBkYXRlKCk7XG4gIH1cblxuICBfaW5pdENvbnRhaW5lcigpIHtcbiAgICBpZiAoIXRoaXMuaXNSZXNwb25zaXZlKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS53aWR0aCA9IHRoaXMuY29udGFpbmVyV2lkdGggKyAncHgnO1xuICAgIH1cbiAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5oZWlnaHQgPSB0aGlzLmNvbnRhaW5lckhlaWdodCArICdweCc7XG5cbiAgICBpZiAodGhpcy5zcHJpdGUpIHtcbiAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLmJhY2tncm91bmRJbWFnZSA9IGB1cmwoXCIke3RoaXMuI29wdGlvbnMuaW1hZ2V9XCIpYDtcblxuICAgICAgY29uc3QgY29scyA9IHRoaXMuI29wdGlvbnMucGVyUm93O1xuICAgICAgY29uc3Qgcm93cyA9IE1hdGguY2VpbCh0aGlzLiNvcHRpb25zLmNvdW50IC8gdGhpcy4jb3B0aW9ucy5wZXJSb3cpO1xuICAgICAgdGhpcy5jb250YWluZXIuc3R5bGUuYmFja2dyb3VuZFNpemUgPSAoY29scyAqIDEwMCkgKyAnJSAnICsgKHJvd3MgKiAxMDApICsgJyUnO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzUmVzcG9uc2l2ZSkge1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMuX3dpbmRvd1Jlc2l6ZUxpc3RlbmVyKTtcbiAgICB9XG5cbiAgICB0aGlzLl91cGRhdGUoKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBUaHJlZVNpeHR5O1xuIl19
|
@@ -1,2 +0,0 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Vertex=exports.Vector=exports.Polygon=exports.Plane=exports.CSG=void 0;var _react=_interopRequireDefault(require("react"));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function _createClass(t,e,n){return e&&_defineProperties(t.prototype,e),n&&_defineProperties(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}var CSG=function(){function n(){_classCallCheck(this,n),this.polygons=[]}return _createClass(n,[{key:"clone",value:function(){var t=new n;return t.polygons=this.polygons.map(function(t){return t.clone()}),t}},{key:"toPolygons",value:function(){return this.polygons}},{key:"union",value:function(t){var e=new Node(this.clone().polygons),t=new Node(t.clone().polygons);return e.clipTo(t),t.clipTo(e),t.invert(),t.clipTo(e),t.invert(),e.build(t.allPolygons()),n.fromPolygons(e.allPolygons())}},{key:"subtract",value:function(t){var e=new Node(this.clone().polygons),t=new Node(t.clone().polygons);return e.invert(),e.clipTo(t),t.clipTo(e),t.invert(),t.clipTo(e),t.invert(),e.build(t.allPolygons()),e.invert(),n.fromPolygons(e.allPolygons())}},{key:"intersect",value:function(t){var e=new Node(this.clone().polygons),t=new Node(t.clone().polygons);return e.invert(),t.clipTo(e),t.invert(),e.clipTo(t),t.clipTo(e),e.build(t.allPolygons()),e.invert(),n.fromPolygons(e.allPolygons())}},{key:"inverse",value:function(){var t=this.clone();return t.polygons.forEach(function(t){return t.flip()}),t}}]),n}(),Vector=((exports.CSG=CSG).fromPolygons=function(t){var e=new CSG;return e.polygons=t,e},function(){function o(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0,e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:0;_classCallCheck(this,o),this.x=t,this.y=e,this.z=n}return _createClass(o,[{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}},{key:"clone",value:function(){return new o(this.x,this.y,this.z)}},{key:"negate",value:function(){return this.x*=-1,this.y*=-1,this.z*=-1,this}},{key:"add",value:function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}},{key:"sub",value:function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}},{key:"times",value:function(t){return this.x*=t,this.y*=t,this.z*=t,this}},{key:"dividedBy",value:function(t){return this.x/=t,this.y/=t,this.z/=t,this}},{key:"lerp",value:function(t,e){return this.add(tv0.copy(t).sub(this).times(e))}},{key:"unit",value:function(){return this.dividedBy(this.length())}},{key:"length",value:function(){return Math.sqrt(Math.pow(this.x,2)+Math.pow(this.y,2)+Math.pow(this.z,2))}},{key:"normalize",value:function(){return this.unit()}},{key:"cross",value:function(t){var e=this.x,n=this.y,o=this.z,i=t.x,s=t.y,t=t.z;return this.x=n*t-o*s,this.y=o*i-e*t,this.z=e*s-n*i,this}},{key:"dot",value:function(t){return this.x*t.x+this.y*t.y+this.z*t.z}}]),o}()),tv0=new(exports.Vector=Vector),tv1=new Vector,Vertex=function(){function i(t,e,n,o){_classCallCheck(this,i),this.pos=(new Vector).copy(t),this.normal=(new Vector).copy(e),n&&(this.uv=(new Vector).copy(n))&&(this.uv.z=0),o&&(this.color=(new Vector).copy(o))}return _createClass(i,[{key:"clone",value:function(){return new i(this.pos,this.normal,this.uv,this.color)}},{key:"flip",value:function(){this.normal.negate()}},{key:"interpolate",value:function(t,e){return new i(this.pos.clone().lerp(t.pos,e),this.normal.clone().lerp(t.normal,e),this.uv&&t.uv&&this.uv.clone().lerp(t.uv,e),this.color&&t.color&&this.color.clone().lerp(t.color,e))}}]),i}(),Plane=(exports.Vertex=Vertex,function(){function g(t,e){_classCallCheck(this,g),this.normal=t,this.w=e}return _createClass(g,[{key:"clone",value:function(){return new g(this.normal.clone(),this.w)}},{key:"flip",value:function(){this.normal.negate(),this.w=-this.w}},{key:"splitPolygon",value:function(t,e,n,o,i){for(var s=0,l=[],r=0;r<t.vertices.length;r++){var c=this.normal.dot(t.vertices[r].pos)-this.w,c=c<-g.EPSILON?2:g.EPSILON<c?1:0;s|=c,l.push(c)}switch(s){case 0:(0<this.normal.dot(t.plane.normal)?e:n).push(t);break;case 1:o.push(t);break;case 2:i.push(t);break;case 3:for(var a=[],h=[],u=0;u<t.vertices.length;u++){var p=(u+1)%t.vertices.length,y=l[u],f=l[p],v=t.vertices[u],p=t.vertices[p];2!=y&&a.push(v),1!=y&&h.push(2!=y?v.clone():v),3==(y|f)&&(y=(this.w-this.normal.dot(v.pos))/this.normal.dot(tv0.copy(p.pos).sub(v.pos)),f=v.interpolate(p,y),a.push(f),h.push(f.clone()))}3<=a.length&&o.push(new Polygon(a,t.shared)),3<=h.length&&i.push(new Polygon(h,t.shared))}}}]),g}()),Polygon=((exports.Plane=Plane).EPSILON=1e-5,Plane.fromPoints=function(t,e,n){e=tv0.copy(e).sub(t).cross(tv1.copy(n).sub(t)).normalize();return new Plane(e.clone(),e.dot(t))},function(){function n(t,e){_classCallCheck(this,n),this.vertices=t,this.shared=e,this.plane=Plane.fromPoints(t[0].pos,t[1].pos,t[2].pos)}return _createClass(n,[{key:"clone",value:function(){return new n(this.vertices.map(function(t){return t.clone()}),this.shared)}},{key:"flip",value:function(){this.vertices.reverse().forEach(function(t){return t.flip()}),this.plane.flip()}}]),n}()),Node=(exports.Polygon=Polygon,function(){function i(t){_classCallCheck(this,i),this.plane=null,this.front=null,this.back=null,this.polygons=[],t&&this.build(t)}return _createClass(i,[{key:"clone",value:function(){var t=new i;return t.plane=this.plane&&this.plane.clone(),t.front=this.front&&this.front.clone(),t.back=this.back&&this.back.clone(),t.polygons=this.polygons.map(function(t){return t.clone()}),t}},{key:"invert",value:function(){for(var t=0;t<this.polygons.length;t++)this.polygons[t].flip();this.plane&&this.plane.flip(),this.front&&this.front.invert(),this.back&&this.back.invert();var e=this.front;this.front=this.back,this.back=e}},{key:"clipPolygons",value:function(t){if(!this.plane)return t.slice();for(var e=[],n=[],o=0;o<t.length;o++)this.plane.splitPolygon(t[o],e,n,e,n);return this.front&&(e=this.front.clipPolygons(e)),n=this.back?this.back.clipPolygons(n):[],e.concat(n)}},{key:"clipTo",value:function(t){this.polygons=t.clipPolygons(this.polygons),this.front&&this.front.clipTo(t),this.back&&this.back.clipTo(t)}},{key:"allPolygons",value:function(){var t=this.polygons.slice();return this.front&&(t=t.concat(this.front.allPolygons())),t=this.back?t.concat(this.back.allPolygons()):t}},{key:"build",value:function(t){if(t.length){this.plane||(this.plane=t[0].plane.clone());for(var e=[],n=[],o=0;o<t.length;o++)this.plane.splitPolygon(t[o],this.polygons,this.polygons,e,n);e.length&&(this.front||(this.front=new i),this.front.build(e)),n.length&&(this.back||(this.back=new i),this.back.build(n))}}}]),i}());CSG.fromJSON=function(t){return CSG.fromPolygons(t.polygons.map(function(t){return new Polygon(t.vertices.map(function(t){return new Vertex(t.pos,t.normal,t.uv)}),t.shared)}))};
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL2NzZy9jc2ctbGliLmpzIl0sIm5hbWVzIjpbIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiQ1NHIiwiX2NsYXNzQ2FsbENoZWNrIiwidGhpcyIsInBvbHlnb25zIiwiY3NnIiwibWFwIiwicCIsImNsb25lIiwiYSIsIk5vZGUiLCJiIiwiY2xpcFRvIiwiaW52ZXJ0IiwiYnVpbGQiLCJhbGxQb2x5Z29ucyIsImZyb21Qb2x5Z29ucyIsImZvckVhY2giLCJmbGlwIiwiVmVjdG9yIiwieCIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInkiLCJ6IiwidiIsInQiLCJhZGQiLCJ0djAiLCJjb3B5Iiwic3ViIiwidGltZXMiLCJkaXZpZGVkQnkiLCJzcXJ0IiwiTWF0aCIsInBvdyIsInVuaXQiLCJheCIsImF5IiwiYXoiLCJieCIsImJ5IiwiYnoiLCJ0djEiLCJWZXJ0ZXgiLCJwb3MiLCJub3JtYWwiLCJ1diIsImNvbG9yIiwibmVnYXRlIiwib3RoZXIiLCJsZXJwIiwiUGxhbmUiLCJ3IiwicG9seWdvbiIsImNvcGxhbmFyRnJvbnQiLCJjb3BsYW5hckJhY2siLCJmcm9udCIsImJhY2siLCJwb2x5Z29uVHlwZSIsInR5cGVzIiwiaSIsInZlcnRpY2VzIiwiZG90IiwidHlwZSIsIkVQU0lMT04iLCJwdXNoIiwicGxhbmUiLCJmIiwiaiIsInRpIiwidGoiLCJ2aSIsInZqIiwiUG9seWdvbiIsInNoYXJlZCIsImZyb21Qb2ludHMiLCJjIiwibiIsImNyb3NzIiwibm9ybWFsaXplIiwibm9kZSIsIkNPUExBTkFSIiwiRlJPTlQiLCJ0ZW1wIiwic2xpY2UiLCJzcGxpdFBvbHlnb24iLCJjbGlwUG9seWdvbnMiLCJTUEFOTklORyIsImNvbmNhdCIsImJzcCIsIkJBQ0siLCJpbnRlcnBvbGF0ZSIsImZyb21KU09OIiwianNvbiJdLCJtYXBwaW5ncyI6Im1KQUFBLElBQUFBLE9BQUFDLHVCQUFBQyxRQUFBLFUscWdC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Yi5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbmNsYXNzIENTRyB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMucG9seWdvbnMgPSBbXTtcbiAgICB9XG4gICAgY2xvbmUoKSB7XG4gICAgICAgIGxldCBjc2cgPSBuZXcgQ1NHKCk7XG4gICAgICAgIGNzZy5wb2x5Z29ucyA9IHRoaXMucG9seWdvbnMubWFwKHA9PnAuY2xvbmUoKSk7XG4gICAgICAgIHJldHVybiBjc2c7XG4gICAgfVxuXG4gICAgdG9Qb2x5Z29ucygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucG9seWdvbnM7XG4gICAgfVxuXG4gICAgdW5pb24oY3NnKSB7XG4gICAgICAgIGxldCBhID0gbmV3IE5vZGUodGhpcy5jbG9uZSgpLnBvbHlnb25zKTtcbiAgICAgICAgbGV0IGIgPSBuZXcgTm9kZShjc2cuY2xvbmUoKS5wb2x5Z29ucyk7XG4gICAgICAgIGEuY2xpcFRvKGIpO1xuICAgICAgICBiLmNsaXBUbyhhKTtcbiAgICAgICAgYi5pbnZlcnQoKTtcbiAgICAgICAgYi5jbGlwVG8oYSk7XG4gICAgICAgIGIuaW52ZXJ0KCk7XG4gICAgICAgIGEuYnVpbGQoYi5hbGxQb2x5Z29ucygpKTtcbiAgICAgICAgcmV0dXJuIENTRy5mcm9tUG9seWdvbnMoYS5hbGxQb2x5Z29ucygpKTtcbiAgICB9XG5cbiAgICBzdWJ0cmFjdChjc2cpIHtcbiAgICAgICAgbGV0IGEgPSBuZXcgTm9kZSh0aGlzLmNsb25lKCkucG9seWdvbnMpO1xuICAgICAgICBsZXQgYiA9IG5ldyBOb2RlKGNzZy5jbG9uZSgpLnBvbHlnb25zKTtcbiAgICAgICAgYS5pbnZlcnQoKTtcbiAgICAgICAgYS5jbGlwVG8oYik7XG4gICAgICAgIGIuY2xpcFRvKGEpO1xuICAgICAgICBiLmludmVydCgpO1xuICAgICAgICBiLmNsaXBUbyhhKTtcbiAgICAgICAgYi5pbnZlcnQoKTtcbiAgICAgICAgYS5idWlsZChiLmFsbFBvbHlnb25zKCkpO1xuICAgICAgICBhLmludmVydCgpO1xuICAgICAgICByZXR1cm4gQ1NHLmZyb21Qb2x5Z29ucyhhLmFsbFBvbHlnb25zKCkpO1xuICAgIH1cblxuICAgIGludGVyc2VjdChjc2cpIHtcbiAgICAgICAgbGV0IGEgPSBuZXcgTm9kZSh0aGlzLmNsb25lKCkucG9seWdvbnMpO1xuICAgICAgICBsZXQgYiA9IG5ldyBOb2RlKGNzZy5jbG9uZSgpLnBvbHlnb25zKTtcbiAgICAgICAgYS5pbnZlcnQoKTtcbiAgICAgICAgYi5jbGlwVG8oYSk7XG4gICAgICAgIGIuaW52ZXJ0KCk7XG4gICAgICAgIGEuY2xpcFRvKGIpO1xuICAgICAgICBiLmNsaXBUbyhhKTtcbiAgICAgICAgYS5idWlsZChiLmFsbFBvbHlnb25zKCkpO1xuICAgICAgICBhLmludmVydCgpO1xuICAgICAgICByZXR1cm4gQ1NHLmZyb21Qb2x5Z29ucyhhLmFsbFBvbHlnb25zKCkpO1xuICAgIH1cblxuICAgIC8vIFJldHVybiBhIG5ldyBDU0cgc29saWQgd2l0aCBzb2xpZCBhbmQgZW1wdHkgc3BhY2Ugc3dpdGNoZWQuIFRoaXMgc29saWQgaXNcbiAgICAvLyBub3QgbW9kaWZpZWQuXG4gICAgaW52ZXJzZSgpIHtcbiAgICAgICAgbGV0IGNzZyA9IHRoaXMuY2xvbmUoKTtcbiAgICAgICAgY3NnLnBvbHlnb25zLmZvckVhY2gocD0+cC5mbGlwKCkpO1xuICAgICAgICByZXR1cm4gY3NnO1xuICAgIH1cbn1cblxuQ1NHLmZyb21Qb2x5Z29ucz1mdW5jdGlvbihwb2x5Z29ucykge1xuICAgIGxldCBjc2cgPSBuZXcgQ1NHKCk7XG4gICAgY3NnLnBvbHlnb25zID0gcG9seWdvbnM7XG4gICAgcmV0dXJuIGNzZztcbn07XG5cbmNsYXNzIFZlY3RvciB7XG4gICAgY29uc3RydWN0b3IoeD0wLCB5PTAsIHo9MCkge1xuICAgICAgICB0aGlzLng9eDtcbiAgICAgICAgdGhpcy55PXk7XG4gICAgICAgIHRoaXMuej16O1xuICAgIH1cbiAgICBjb3B5KHYpe1xuICAgICAgICB0aGlzLng9di54O1xuICAgICAgICB0aGlzLnk9di55O1xuICAgICAgICB0aGlzLno9di56O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgY2xvbmUoKSB7XG4gICAgICAgIHJldHVybiBuZXcgVmVjdG9yKHRoaXMueCx0aGlzLnksdGhpcy56KTtcbiAgICB9XG4gICAgbmVnYXRlKCkge1xuICAgICAgICB0aGlzLngqPS0xO1xuICAgICAgICB0aGlzLnkqPS0xO1xuICAgICAgICB0aGlzLnoqPS0xO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgYWRkKGEpIHtcbiAgICAgICAgdGhpcy54Kz1hLng7XG4gICAgICAgIHRoaXMueSs9YS55O1xuICAgICAgICB0aGlzLnorPWEuejtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHN1YihhKSB7XG4gICAgICAgIHRoaXMueC09YS54O1xuICAgICAgICB0aGlzLnktPWEueTtcbiAgICAgICAgdGhpcy56LT1hLno7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB0aW1lcyhhKSB7XG4gICAgICAgIHRoaXMueCo9YTtcbiAgICAgICAgdGhpcy55Kj1hO1xuICAgICAgICB0aGlzLnoqPWE7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICBkaXZpZGVkQnkoYSkge1xuICAgICAgICB0aGlzLngvPWE7XG4gICAgICAgIHRoaXMueS89YTtcbiAgICAgICAgdGhpcy56Lz1hO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgbGVycChhLCB0KSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFkZCh0djAuY29weShhKS5zdWIodGhpcykudGltZXModCkpO1xuICAgIH1cbiAgICB1bml0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXZpZGVkQnkodGhpcy5sZW5ndGgoKSk7XG4gICAgfVxuICAgIGxlbmd0aCgpe1xuICAgICAgICByZXR1cm4gTWF0aC5zcXJ0KCh0aGlzLngqKjIpKyh0aGlzLnkqKjIpKyh0aGlzLnoqKjIpKTtcbiAgICB9XG4gICAgbm9ybWFsaXplKCl7XG4gICAgICAgIHJldHVybiB0aGlzLnVuaXQoKTtcbiAgICB9XG4gICAgY3Jvc3MoYikge1xuICAgICAgICBsZXQgYSA9IHRoaXM7XG5cdFx0Y29uc3QgYXggPSBhLngsIGF5ID0gYS55LCBheiA9IGEuejtcblx0XHRjb25zdCBieCA9IGIueCwgYnkgPSBiLnksIGJ6ID0gYi56O1xuXG5cdFx0dGhpcy54ID0gYXkgKiBieiAtIGF6ICogYnk7XG5cdFx0dGhpcy55ID0gYXogKiBieCAtIGF4ICogYno7XG5cdFx0dGhpcy56ID0gYXggKiBieSAtIGF5ICogYng7XG5cblx0XHRyZXR1cm4gdGhpcztcbiAgICB9XG4gICAgZG90KGIpe1xuICAgICAgICByZXR1cm4gKHRoaXMueCpiLngpKyh0aGlzLnkqYi55KSsodGhpcy56KmIueik7XG4gICAgfVxufVxuXG5sZXQgdHYwPW5ldyBWZWN0b3IoKTtcbmxldCB0djE9bmV3IFZlY3RvcigpO1xuXG5jbGFzcyBWZXJ0ZXgge1xuXG4gICAgY29uc3RydWN0b3IocG9zLCBub3JtYWwsIHV2LCBjb2xvcikge1xuICAgICAgICB0aGlzLnBvcyA9IG5ldyBWZWN0b3IoKS5jb3B5KHBvcyk7XG4gICAgICAgIHRoaXMubm9ybWFsID0gbmV3IFZlY3RvcigpLmNvcHkobm9ybWFsKTtcbiAgICAgICAgdXYgJiYgKHRoaXMudXYgPSBuZXcgVmVjdG9yKCkuY29weSh1dikpICYmICh0aGlzLnV2Lno9MCk7XG4gICAgICAgIGNvbG9yICYmICh0aGlzLmNvbG9yID0gbmV3IFZlY3RvcigpLmNvcHkoY29sb3IpKTtcbiAgICB9XG5cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBWZXJ0ZXgodGhpcy5wb3MsdGhpcy5ub3JtYWwsdGhpcy51dix0aGlzLmNvbG9yKTtcbiAgICB9XG5cbiAgICBmbGlwKCkge1xuICAgICAgICB0aGlzLm5vcm1hbC5uZWdhdGUoKTtcbiAgICB9XG5cbiAgICBpbnRlcnBvbGF0ZShvdGhlciwgdCkge1xuICAgICAgICByZXR1cm4gbmV3IFZlcnRleCh0aGlzLnBvcy5jbG9uZSgpLmxlcnAob3RoZXIucG9zLCB0KSx0aGlzLm5vcm1hbC5jbG9uZSgpLmxlcnAob3RoZXIubm9ybWFsLCB0KSx0aGlzLnV2JiZvdGhlci51diYmdGhpcy51di5jbG9uZSgpLmxlcnAob3RoZXIudXYsIHQpLCB0aGlzLmNvbG9yJiZvdGhlci5jb2xvciYmdGhpcy5jb2xvci5jbG9uZSgpLmxlcnAob3RoZXIuY29sb3IsdCkpO1xuICAgIH1cbn1cblxuY2xhc3MgUGxhbmUge1xuICAgIGNvbnN0cnVjdG9yKG5vcm1hbCwgdykge1xuICAgICAgICB0aGlzLm5vcm1hbCA9IG5vcm1hbDtcbiAgICAgICAgdGhpcy53ID0gdztcbiAgICB9XG5cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQbGFuZSh0aGlzLm5vcm1hbC5jbG9uZSgpLHRoaXMudyk7XG4gICAgfVxuXG4gICAgZmxpcCgpIHtcbiAgICAgICAgdGhpcy5ub3JtYWwubmVnYXRlKCk7XG4gICAgICAgIHRoaXMudyA9IC10aGlzLnc7XG4gICAgfVxuXG4gICAgc3BsaXRQb2x5Z29uKHBvbHlnb24sIGNvcGxhbmFyRnJvbnQsIGNvcGxhbmFyQmFjaywgZnJvbnQsIGJhY2spIHtcbiAgICAgICAgY29uc3QgQ09QTEFOQVIgPSAwO1xuICAgICAgICBjb25zdCBGUk9OVCA9IDE7XG4gICAgICAgIGNvbnN0IEJBQ0sgPSAyO1xuICAgICAgICBjb25zdCBTUEFOTklORyA9IDM7XG5cbiAgICAgICAgbGV0IHBvbHlnb25UeXBlID0gMDtcbiAgICAgICAgbGV0IHR5cGVzID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcG9seWdvbi52ZXJ0aWNlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbGV0IHQgPSB0aGlzLm5vcm1hbC5kb3QocG9seWdvbi52ZXJ0aWNlc1tpXS5wb3MpIC0gdGhpcy53O1xuICAgICAgICAgICAgbGV0IHR5cGUgPSAodCA8IC1QbGFuZS5FUFNJTE9OKSA/IEJBQ0sgOiAodCA+IFBsYW5lLkVQU0lMT04pID8gRlJPTlQgOiBDT1BMQU5BUjtcbiAgICAgICAgICAgIHBvbHlnb25UeXBlIHw9IHR5cGU7XG4gICAgICAgICAgICB0eXBlcy5wdXNoKHR5cGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3dpdGNoIChwb2x5Z29uVHlwZSkge1xuICAgICAgICAgICAgY2FzZSBDT1BMQU5BUjpcbiAgICAgICAgICAgICAgICAodGhpcy5ub3JtYWwuZG90KHBvbHlnb24ucGxhbmUubm9ybWFsKSA+IDAgPyBjb3BsYW5hckZyb250IDogY29wbGFuYXJCYWNrKS5wdXNoKHBvbHlnb24pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBGUk9OVDpcbiAgICAgICAgICAgICAgICBmcm9udC5wdXNoKHBvbHlnb24pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBCQUNLOlxuICAgICAgICAgICAgICAgIGJhY2sucHVzaChwb2x5Z29uKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgU1BBTk5JTkc6XG4gICAgICAgICAgICAgICAgbGV0IGYgPSBbXTtcbiAgICAgICAgICAgICAgICBsZXQgYiA9IFtdO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcG9seWdvbi52ZXJ0aWNlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgaiA9IChpICsgMSkgJSBwb2x5Z29uLnZlcnRpY2VzLmxlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRpID0gdHlwZXNbaV1cbiAgICAgICAgICAgICAgICAgICAgLCB0aiA9IHR5cGVzW2pdO1xuICAgICAgICAgICAgICAgICAgICBsZXQgdmkgPSBwb2x5Z29uLnZlcnRpY2VzW2ldXG4gICAgICAgICAgICAgICAgICAgICwgdmogPSBwb2x5Z29uLnZlcnRpY2VzW2pdO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGkgIT0gQkFDSylcbiAgICAgICAgICAgICAgICAgICAgICAgIGYucHVzaCh2aSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aSAhPSBGUk9OVClcbiAgICAgICAgICAgICAgICAgICAgICAgIGIucHVzaCh0aSAhPSBCQUNLID8gdmkuY2xvbmUoKSA6IHZpKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCh0aSB8IHRqKSA9PSBTUEFOTklORykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHQgPSAodGhpcy53IC0gdGhpcy5ub3JtYWwuZG90KHZpLnBvcykpIC8gdGhpcy5ub3JtYWwuZG90KHR2MC5jb3B5KHZqLnBvcykuc3ViKHZpLnBvcykpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHYgPSB2aS5pbnRlcnBvbGF0ZSh2aiwgdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmLnB1c2godik7XG4gICAgICAgICAgICAgICAgICAgICAgICBiLnB1c2godi5jbG9uZSgpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoZi5sZW5ndGggPj0gMylcbiAgICAgICAgICAgICAgICAgICAgZnJvbnQucHVzaChuZXcgUG9seWdvbihmLHBvbHlnb24uc2hhcmVkKSk7XG4gICAgICAgICAgICAgICAgaWYgKGIubGVuZ3RoID49IDMpXG4gICAgICAgICAgICAgICAgICAgIGJhY2sucHVzaChuZXcgUG9seWdvbihiLHBvbHlnb24uc2hhcmVkKSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuUGxhbmUuRVBTSUxPTiA9IDFlLTU7XG5cblBsYW5lLmZyb21Qb2ludHMgPSBmdW5jdGlvbihhLCBiLCBjKSB7XG4gICAgbGV0IG4gPSB0djAuY29weShiKS5zdWIoYSkuY3Jvc3ModHYxLmNvcHkoYykuc3ViKGEpKS5ub3JtYWxpemUoKTtcbiAgICByZXR1cm4gbmV3IFBsYW5lKG4uY2xvbmUoKSxuLmRvdChhKSk7XG59O1xuXG5jbGFzcyBQb2x5Z29uIHtcbiAgICBjb25zdHJ1Y3Rvcih2ZXJ0aWNlcywgc2hhcmVkKSB7XG4gICAgICAgIHRoaXMudmVydGljZXMgPSB2ZXJ0aWNlcztcbiAgICAgICAgdGhpcy5zaGFyZWQgPSBzaGFyZWQ7XG4gICAgICAgIHRoaXMucGxhbmUgPSBQbGFuZS5mcm9tUG9pbnRzKHZlcnRpY2VzWzBdLnBvcywgdmVydGljZXNbMV0ucG9zLCB2ZXJ0aWNlc1syXS5wb3MpO1xuICAgIH1cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQb2x5Z29uKHRoaXMudmVydGljZXMubWFwKHY9PnYuY2xvbmUoKSksdGhpcy5zaGFyZWQpO1xuICAgIH1cbiAgICBmbGlwKCkge1xuICAgICAgICB0aGlzLnZlcnRpY2VzLnJldmVyc2UoKS5mb3JFYWNoKHY9PnYuZmxpcCgpKTtcbiAgICAgICAgdGhpcy5wbGFuZS5mbGlwKCk7XG4gICAgfVxufVxuXG5jbGFzcyBOb2RlIHtcbiAgICBjb25zdHJ1Y3Rvcihwb2x5Z29ucykge1xuICAgICAgICB0aGlzLnBsYW5lID0gbnVsbDtcbiAgICAgICAgdGhpcy5mcm9udCA9IG51bGw7XG4gICAgICAgIHRoaXMuYmFjayA9IG51bGw7XG4gICAgICAgIHRoaXMucG9seWdvbnMgPSBbXTtcbiAgICAgICAgaWYgKHBvbHlnb25zKVxuICAgICAgICAgICAgdGhpcy5idWlsZChwb2x5Z29ucyk7XG4gICAgfVxuICAgIGNsb25lKCkge1xuICAgICAgICBsZXQgbm9kZSA9IG5ldyBOb2RlKCk7XG4gICAgICAgIG5vZGUucGxhbmUgPSB0aGlzLnBsYW5lICYmIHRoaXMucGxhbmUuY2xvbmUoKTtcbiAgICAgICAgbm9kZS5mcm9udCA9IHRoaXMuZnJvbnQgJiYgdGhpcy5mcm9udC5jbG9uZSgpO1xuICAgICAgICBub2RlLmJhY2sgPSB0aGlzLmJhY2sgJiYgdGhpcy5iYWNrLmNsb25lKCk7XG4gICAgICAgIG5vZGUucG9seWdvbnMgPSB0aGlzLnBvbHlnb25zLm1hcChwPT5wLmNsb25lKCkpO1xuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG5cbiAgICBpbnZlcnQoKSB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wb2x5Z29ucy5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgIHRoaXMucG9seWdvbnNbaV0uZmxpcCgpO1xuICAgICAgICBcbiAgICAgICAgdGhpcy5wbGFuZSAmJiB0aGlzLnBsYW5lLmZsaXAoKTtcbiAgICAgICAgdGhpcy5mcm9udCAmJiB0aGlzLmZyb250LmludmVydCgpO1xuICAgICAgICB0aGlzLmJhY2sgJiYgdGhpcy5iYWNrLmludmVydCgpO1xuICAgICAgICBsZXQgdGVtcCA9IHRoaXMuZnJvbnQ7XG4gICAgICAgIHRoaXMuZnJvbnQgPSB0aGlzLmJhY2s7XG4gICAgICAgIHRoaXMuYmFjayA9IHRlbXA7XG4gICAgfVxuXG4gICAgY2xpcFBvbHlnb25zKHBvbHlnb25zKSB7XG4gICAgICAgIGlmICghdGhpcy5wbGFuZSlcbiAgICAgICAgICAgIHJldHVybiBwb2x5Z29ucy5zbGljZSgpO1xuICAgICAgICBsZXQgZnJvbnQgPSBbXVxuICAgICAgICAgICwgYmFjayA9IFtdO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBvbHlnb25zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICB0aGlzLnBsYW5lLnNwbGl0UG9seWdvbihwb2x5Z29uc1tpXSwgZnJvbnQsIGJhY2ssIGZyb250LCBiYWNrKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5mcm9udClcbiAgICAgICAgICAgIGZyb250ID0gdGhpcy5mcm9udC5jbGlwUG9seWdvbnMoZnJvbnQpO1xuICAgICAgICBpZiAodGhpcy5iYWNrKVxuICAgICAgICAgICAgYmFjayA9IHRoaXMuYmFjay5jbGlwUG9seWdvbnMoYmFjayk7XG4gICAgICAgIGVsc2UgXG4gICAgICAgICAgICBiYWNrID0gW107XG4gICAgICAgIHJldHVybiBmcm9udC5jb25jYXQoYmFjayk7XG4gICAgfVxuXG4gICAgY2xpcFRvKGJzcCkge1xuICAgICAgICB0aGlzLnBvbHlnb25zID0gYnNwLmNsaXBQb2x5Z29ucyh0aGlzLnBvbHlnb25zKTtcbiAgICAgICAgaWYgKHRoaXMuZnJvbnQpXG4gICAgICAgICAgICB0aGlzLmZyb250LmNsaXBUbyhic3ApO1xuICAgICAgICBpZiAodGhpcy5iYWNrKVxuICAgICAgICAgICAgdGhpcy5iYWNrLmNsaXBUbyhic3ApO1xuICAgIH1cblxuICAgIGFsbFBvbHlnb25zKCkge1xuICAgICAgICBsZXQgcG9seWdvbnMgPSB0aGlzLnBvbHlnb25zLnNsaWNlKCk7XG4gICAgICAgIGlmICh0aGlzLmZyb250KVxuICAgICAgICAgICAgcG9seWdvbnMgPSBwb2x5Z29ucy5jb25jYXQodGhpcy5mcm9udC5hbGxQb2x5Z29ucygpKTtcbiAgICAgICAgaWYgKHRoaXMuYmFjaylcbiAgICAgICAgICAgIHBvbHlnb25zID0gcG9seWdvbnMuY29uY2F0KHRoaXMuYmFjay5hbGxQb2x5Z29ucygpKTtcbiAgICAgICAgcmV0dXJuIHBvbHlnb25zO1xuICAgIH1cblxuICAgIGJ1aWxkKHBvbHlnb25zKSB7XG4gICAgICAgIGlmICghcG9seWdvbnMubGVuZ3RoKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBpZiAoIXRoaXMucGxhbmUpXG4gICAgICAgICAgICB0aGlzLnBsYW5lID0gcG9seWdvbnNbMF0ucGxhbmUuY2xvbmUoKTtcbiAgICAgICAgbGV0IGZyb250ID0gW11cbiAgICAgICAgICAsIGJhY2sgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwb2x5Z29ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdGhpcy5wbGFuZS5zcGxpdFBvbHlnb24ocG9seWdvbnNbaV0sIHRoaXMucG9seWdvbnMsIHRoaXMucG9seWdvbnMsIGZyb250LCBiYWNrKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZnJvbnQubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZnJvbnQpXG4gICAgICAgICAgICAgICAgdGhpcy5mcm9udCA9IG5ldyBOb2RlKCk7XG4gICAgICAgICAgICB0aGlzLmZyb250LmJ1aWxkKGZyb250KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYmFjay5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5iYWNrKVxuICAgICAgICAgICAgICAgIHRoaXMuYmFjayA9IG5ldyBOb2RlKCk7XG4gICAgICAgICAgICB0aGlzLmJhY2suYnVpbGQoYmFjayk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkNTRy5mcm9tSlNPTj1mdW5jdGlvbihqc29uKXtcbiAgICByZXR1cm4gQ1NHLmZyb21Qb2x5Z29ucyhqc29uLnBvbHlnb25zLm1hcChwPT5uZXcgUG9seWdvbihwLnZlcnRpY2VzLm1hcCh2PT4gbmV3IFZlcnRleCh2LnBvcyx2Lm5vcm1hbCx2LnV2KSkscC5zaGFyZWQpKSk7XG59O1xuXG5leHBvcnQgeyBDU0csIFZlcnRleCwgVmVjdG9yLCBQb2x5Z29uLCBQbGFuZSB9O1xuIl19
|
@@ -1,2 +0,0 @@
|
|
1
|
-
"use strict";var _react=_interopRequireDefault(require("react")),_csgLib=require("./csg-lib.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var gWorker,gWorkerUrl,gWorkersStarted=!1,taskId=0,tasks={},spawnWorker=function(){var e=new Worker(gWorkerUrl);return e.onmessage=function(e){var e=JSON.parse(e.data),r=tasks[e.taskId];delete tasks[e.taskId],r.resolve(_csgLib.CSG.fromJSON(e.result)),gWorker.busy=!1},gWorker={worker:e,busy:!1}},getWorker=function(){return gWorkersStarted?gWorker&&!gWorker.busy?(gWorker.busy=!0,{then:function(e){return e(gWorker)}}):{then:function(){return this}}:(gWorkersStarted=!0,fetch("../csg-lib.js").then(function(e){return e.text().then(function(e){e=e.slice(0,e.lastIndexOf("export"));e=new Blob([e+"\n self.onmessage=(message)=>{\n let task = JSON.parse(message.data)\n //console.log(\"Got task:\"+task.op+' '+task.taskId)\n postMessage(JSON.stringify({\n taskId:task.taskId,\n result : CSG.fromJSON(task.a)[task.op](CSG.fromJSON(task.b))\n }))\n }\n console.log('CSG worker started!')"],{type:"application/javascript"});gWorkerUrl=URL.createObjectURL(e)}).then(function(){return spawnWorker()})}))};_csgLib.CSG.doAsync=function(e,r,n){return getWorker().then(function(t){var s={a:e,op:r,b:n,taskId:taskId};return tasks[taskId]=s,taskId++,s.result=new Promise(function(e,r){s.resolve=e,t.busy=!0,t.worker.postMessage(JSON.stringify(s))}),s.result})};
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL2NzZy9jc2ctd29ya2VyLmpzIl0sIm5hbWVzIjpbIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2NzZ0xpYiIsImdXb3JrZXIiLCJnV29ya2VyVXJsIiwiZ1dvcmtlcnNTdGFydGVkIiwidGFza0lkIiwiV29ya2VyIiwidGFza3MiLCJvbm1lc3NhZ2UiLCJlIiwicnNsdCIsIkpTT04iLCJwYXJzZSIsImRhdGEiLCJzcGF3bldvcmtlciIsInRhc2siLCJyZXNvbHZlIiwiQ1NHIiwiZnJvbUpTT04iLCJyZXN1bHQiLCJidXN5IiwiZm4iLCJ0aGVuIiwidGhpcyIsInJlc3BvbnNlIiwid29ya2VyIiwidGV4dCIsInNsaWNlIiwibGFzdEluZGV4T2YiLCJibG9iIiwiY29kZSIsIkJsb2IiLCJ0eXBlIiwiY3JlYXRlT2JqZWN0VVJMIiwiZG9Bc3luYyIsImEiLCJvcCIsImIiLCJnZXRXb3JrZXIiLCJQcm9taXNlIiwicmVqZWN0IiwicG9zdE1lc3NhZ2UiLCJzdHJpbmdpZnkiXSwibWFwcGluZ3MiOiJhQUFBLElBQUFBLE9BQUFDLHVCQUFBQyxRQUFBLFVBQ0FDLFFBQUFELFFBQUEsZ0Isd0VBRUEsSUFGQUUsUUFJSUMsV0FGQUMsaUJBQWtCLEVBSWxCQyxPQUFTLEVBSlRELE1BQUFBLEdBQ0FGLFlBQUosV0FDSUMsSUFBQUEsRUFBSixJQUFBRyxPQUFBSCxZQVVPLE9BUEhJLEVBQUtDLFVBQVQsU0FBQUMsR0FLTyxJQUFJQyxFQUFPQyxLQUFLQyxNQUFNSCxFQUFFSSxNQUozQkMsRUFBWVAsTUFBQUcsRUFBWkksZUFDWVAsTUFBT0QsRUFBSkQsUUFNWlUsRUFBS0MsUUFBUUMsUUFBQUEsSUFBSUMsU0FBU1IsRUFBS1MsU0FIL0JqQixRQUFXUyxNQUFLQyxHQUVUTCxRQUFVLENBQUNGLE9BQUFBLEVBQWxCZSxNQUFBLElBR0FsQixVQUFRa0IsV0FOWCxPQUFBaEIsZ0JBdUNJRixVQUFlQSxRQUFma0IsTUFFQWxCLFFBQU9rQixNQUFBLEVBQW9CQyxDQUFBQSxLQUFHbkIsU0FBQUEsR0FBVixPQUFBbUIsRUFBQW5CLFlBQXBCLENBQ0hvQixLQUFBLFdBQUEsT0FBQUMsUUE3QkduQixpQkFBa0IsRUFMZkYsTUFBVSxpQkFBQW9CLEtBQUEsU0FBQUUsR0FBQ0MsT0FBREQsRUFBQUUsT0FBQUosS0FBQSxTQUFBSSxHQUFhQSxFQUFBQSxFQUFBQyxNQUFBLEVBQUFELEVBQUFFLFlBQUEsV0FtQkxDLEVBQVVDLElBQURDLEtBQU8sQ0FuQnpDTCxFQUFBLDZjQW1CeUMsQ0FDbkJNLEtBQUEsMkJBRVY3QixXQUFpQjhCLElBQUFBLGdCQUFqQkosS0FmSlAsS0FBQSxXQURKLE9BQUFSLG9CQWtDUkcsUUFBQUEsSUFBSWlCLFFBSm9CLFNBQU9DLEVBQUFDLEVBQVBDLEdBQWEsT0FBQUMsWUFBQWhCLEtBQUEsU0FBQUcsR0FEakMsSUFBQVYsRUFBQSxDQUFBb0IsRUFBQUEsRUFBQUMsR0FBQUEsRUFBQUMsRUFBQUEsRUFBQWhDLE9BQUFBLFFBT3FCQSxPQXZDekJFLE1BQUFGLFFBQUFVLEVBeUNRVixTQUpSWSxFQUFJaUIsT0FBUSxJQUFBSyxRQUFBLFNBQUdILEVBQU9JLEdBQ1hGLEVBQUFBLFFBQWlCdEIsRUFDWFMsRUFBQUwsTUFBQSxFQUFBSyxFQUFBQSxPQUFBZ0IsWUFBQTlCLEtBQUErQixVQUFBM0IsTUFBUVYsRUFBQUEiLCJmaWxlIjoidXRpbHMvY3NnL2NzZy13b3JrZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQ1NHIH0gZnJvbSAnLi9jc2ctbGliLmpzJztcblxubGV0IGdXb3JrZXJzU3RhcnRlZCA9IGZhbHNlO1xubGV0IGdXb3JrZXI7XG5sZXQgZ1dvcmtlclVybDtcblxubGV0IHRhc2tJZCA9IDA7XG5sZXQgdGFza3M9e307XG5sZXQgc3Bhd25Xb3JrZXI9KCk9PntcbiAgICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKGdXb3JrZXJVcmwpO1xuXG4gICAgd29ya2VyLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGUpIHtcbiAgICAgICBsZXQgcnNsdCA9IEpTT04ucGFyc2UoZS5kYXRhKTtcbiAgICAgICBsZXQgdGFzayA9IHRhc2tzW3JzbHQudGFza0lkXTtcbiAgICAgICBkZWxldGUgdGFza3NbcnNsdC50YXNrSWRdO1xuICAgICAgIHRhc2sucmVzb2x2ZShDU0cuZnJvbUpTT04ocnNsdC5yZXN1bHQpKTtcbiAgICAgICAvL2NvbnNvbGUubG9nKCdNZXNzYWdlIHJlY2VpdmVkIGZyb20gd29ya2VyJyk7XG4gICAgICAgZ1dvcmtlci5idXN5ID0gZmFsc2U7XG4gICAgfTtcbiAgICByZXR1cm4gZ1dvcmtlciA9IHt3b3JrZXIsYnVzeTpmYWxzZX07XG59O1xuXG5sZXQgZ2V0V29ya2VyPSgpPT57XG4gICAgaWYoIWdXb3JrZXJzU3RhcnRlZCl7XG4gICAgICAgIGdXb3JrZXJzU3RhcnRlZCA9IHRydWU7XG4gICAgICAgIHJldHVybiBmZXRjaCgnLi4vY3NnLWxpYi5qcycpLnRoZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHtcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS50ZXh0KCkudGhlbihmdW5jdGlvbih0ZXh0KSB7XG4gICAgICAgICAgICAgICAgdGV4dCA9IHRleHQuc2xpY2UoMCwgdGV4dC5sYXN0SW5kZXhPZignZXhwb3J0JykpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvZGUgPSB0ZXh0ICsgYFxuICAgICAgICAgICAgICAgICAgICBzZWxmLm9ubWVzc2FnZT0obWVzc2FnZSk9PntcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRhc2sgPSBKU09OLnBhcnNlKG1lc3NhZ2UuZGF0YSlcbiAgICAgICAgICAgICAgICAgICAgLy9jb25zb2xlLmxvZyhcIkdvdCB0YXNrOlwiK3Rhc2sub3ArJyAnK3Rhc2sudGFza0lkKVxuICAgICAgICAgICAgICAgICAgICBwb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0YXNrSWQ6dGFzay50YXNrSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQgOiBDU0cuZnJvbUpTT04odGFzay5hKVt0YXNrLm9wXShDU0cuZnJvbUpTT04odGFzay5iKSlcbiAgICAgICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdDU0cgd29ya2VyIHN0YXJ0ZWQhJylgO1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbY29kZV0se1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYXBwbGljYXRpb24vamF2YXNjcmlwdCdcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBnV29ya2VyVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcblxuXG4gICAgICAgICAgICB9KS50aGVuKCgpPT57XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNwYXduV29ya2VyKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmKGdXb3JrZXIgJiYgKCFnV29ya2VyLmJ1c3kpKXtcbiAgICAgICAgZ1dvcmtlci5idXN5ID0gdHJ1ZTtcblxuICAgICAgICByZXR1cm4ge3RoZW46KGZuKT0+e3JldHVybiBmbihnV29ya2VyKTt9fTtcbiAgICB9XG4gICAgcmV0dXJue1xuICAgICAgICB0aGVuOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXM7fVxuICAgIH07XG59O1xuXG5DU0cuZG9Bc3luYz0oYSxvcCxiKT0+e1xuICAgIHJldHVybiBnZXRXb3JrZXIoKS50aGVuKCh3b3JrZXIpPT57XG4gICAgICAgIGxldCB0YXNrPXthLG9wLGIsdGFza0lkfTtcbiAgICAgICAgdGFza3NbdGFza0lkXT10YXNrO1xuICAgICAgICB0YXNrSWQrKztcbiAgICAgICAgdGFzay5yZXN1bHQgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSxyZWplY3QpPT57XG4gICAgICAgICAgICB0YXNrLnJlc29sdmUgPSByZXNvbHZlO1xuICAgICAgICAgICAgLy9jb25zb2xlLmxvZyhcInBvc3RpbmcgdG8gd29ya2VyOlwiKVxuICAgICAgICAgICAgd29ya2VyLmJ1c3kgPSB0cnVlO1xuICAgICAgICAgICAgd29ya2VyLndvcmtlci5wb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeSh0YXNrKSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGFzay5yZXN1bHQ7ICAgICAgICBcbiAgICB9KTtcbn07XG4iXX0=
|
@@ -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")),THREE=_interopRequireWildcard(require("three")),_csgLib=require("./csg-lib.js");function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,t=new WeakMap;return(_getRequireWildcardCache=function(e){return e?t:r})(e)}function _interopRequireWildcard(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};r=_getRequireWildcardCache(r);if(r&&r.has(e))return r.get(e);var t,o,a={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(t in e)"default"!==t&&Object.prototype.hasOwnProperty.call(e,t)&&((o=n?Object.getOwnPropertyDescriptor(e,t):null)&&(o.get||o.set)?Object.defineProperty(a,t,o):a[t]=e[t]);return a.default=e,r&&r.set(e,a),a}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}require("./csg-worker.js");var Geometry=THREE.Geometry,BufferGeometry=THREE.BufferGeometry,Vector3=THREE.Vector3,Vector2=THREE.Vector2,ttvv0=(_csgLib.CSG.fromGeometry=function(e,r){var t=[];if(e.isGeometry)for(var o=e.faces,a=e.vertices,n=["a","b","c"],i=0;i<o.length;i++){for(var u=o[i],c=[],s=0;s<3;s++)c.push(new _csgLib.Vertex(a[u[n[s]]],u.vertexNormals[s],e.faceVertexUvs[0][i][s]));t.push(new _csgLib.Polygon(c,r))}else if(e.isBufferGeometry){var p=e.attributes.position,f=e.attributes.normal,y=e.attributes.uv,l=e.attributes.color;if(e.index)v=e.index.array;else for(var v=new Array(p.array.length/p.itemSize|0),m=0;m<v.length;m++)v[m]=m;for(var h=v.length/3|0,t=new Array(h),d=0,w=0,E=v.length;d<E;d+=3,w++){for(var g=new Array(3),b=0;b<3;b++){var _=v[d+b],R=3*_,_=2*_,x=p.array[R],G=p.array[1+R],H=p.array[2+R],T=f.array[R],S=f.array[1+R],R=f.array[2+R];g[b]=new _csgLib.Vertex({x:x,y:G,z:H},{x:T,y:S,z:R},y&&{x:y.array[_],y:y.array[1+_],z:0},l&&{x:l.array[_],y:l.array[1+_],z:l.array[2+_]})}t[w]=new _csgLib.Polygon(g,r)}}else console.error("Unsupported CSG input type:"+e.type);return _csgLib.CSG.fromPolygons(t)},new THREE.Vector3),tmpm3=new THREE.Matrix3,nbuf3=(_csgLib.CSG.fromMesh=function(e,r){var t=_csgLib.CSG.fromGeometry(e.geometry,r);tmpm3.getNormalMatrix(e.matrix);for(var o=0;o<t.polygons.length;o++)for(var a=t.polygons[o],n=0;n<a.vertices.length;n++){var i=a.vertices[n];i.pos.copy(ttvv0.copy(i.pos).applyMatrix4(e.matrix)),i.normal.copy(ttvv0.copy(i.normal).applyMatrix3(tmpm3))}return t},function(e){return{top:0,array:new Float32Array(e),write:function(e){this.array[this.top++]=e.x,this.array[this.top++]=e.y,this.array[this.top++]=e.z}}}),nbuf2=function(e){return{top:0,array:new Float32Array(e),write:function(e){this.array[this.top++]=e.x,this.array[this.top++]=e.y}}},_default=(_csgLib.CSG.toGeometry=function(e){var r=e.polygons;if(!(1<arguments.length&&void 0!==arguments[1])||arguments[1]){var a,n,i=0,u=(r.forEach(function(e){return i+=e.vertices.length-2}),f=new THREE.BufferGeometry,nbuf3(3*i*3)),c=nbuf3(3*i*3),s=[];if(r.forEach(function(e){var r=e.vertices,t=r.length;void 0===e.shared||s[e.shared]||(s[e.shared]=[]),t&&(void 0!==r[0].color&&(n=n||nbuf3(3*i*3)),void 0!==r[0].uv&&(a=a||nbuf2(2*i*3)));for(var o=3;o<=t;o++)void 0!==e.shared&&s[e.shared].push(u.top/3,u.top/3+1,u.top/3+2),u.write(r[0].pos),u.write(r[o-2].pos),u.write(r[o-1].pos),c.write(r[0].normal),c.write(r[o-2].normal),c.write(r[o-1].normal),a&&r[0].uv&&(a.write(r[0].uv)||a.write(r[o-2].uv)||a.write(r[o-1].uv)),!n||n.write(r[0].color)||n.write(r[o-2].color)||n.write(r[o-1].color)}),f.setAttribute("position",new THREE.BufferAttribute(u.array,3)),f.setAttribute("normal",new THREE.BufferAttribute(c.array,3)),a&&f.setAttribute("uv",new THREE.BufferAttribute(a.array,2)),n&&f.setAttribute("color",new THREE.BufferAttribute(n.array,3)),s.length){for(var t=[],o=0,p=0;p<s.length;p++)f.addGroup(o,s[p].length,p),o+=s[p].length,t=t.concat(s[p]);f.setIndex(t)}0}else{for(var f,y=(f=new Geometry).vertices,l=f.faceVertexUvs[0],v=0;v<r.length;v++){for(var m=r[v],h=m.vertices,d=y.length,w=h.length,E=0;E<w;E++)y.push((new THREE.Vector3).copy(h[E].pos));for(var g=3;g<=w;g++){var b=new THREE.Face3,_=[],R=(l.push(_),b.vertexNormals);b.a=d,b.b=d+g-2,b.c=d+g-1,R.push((new THREE.Vector3).copy(h[0].normal)),R.push((new THREE.Vector3).copy(h[g-2].normal)),R.push((new THREE.Vector3).copy(h[g-1].normal)),_.push((new THREE.Vector3).copy(h[0].uv)),_.push((new THREE.Vector3).copy(h[g-2].uv)),_.push((new THREE.Vector3).copy(h[g-1].uv)),b.normal=(new THREE.Vector3).copy(m.plane.normal),f.faces.push(b)}}(f=(new THREE.BufferGeometry).fromGeometry(f)).verticesNeedUpdate=f.elementsNeedUpdate=f.normalsNeedUpdate=!0}return f},_csgLib.CSG.toMesh=function(e,r,t){var e=_csgLib.CSG.toGeometry(e),o=(new THREE.Matrix4).copy(r).invert(),o=(e.applyMatrix4(o),e.computeBoundingSphere(),e.computeBoundingBox(),new THREE.Mesh(e,t));return o.matrix.copy(r),o.matrix.decompose(o.position,o.quaternion,o.scale),o.rotation.setFromQuaternion(o.quaternion),o.updateMatrixWorld(),o.castShadow=o.receiveShadow=!0,o},_csgLib.CSG);exports.default=_default;
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL2NzZy90aHJlZS1jc2cuanMiXSwibmFtZXMiOlsiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJUSFJFRSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2NzZ0xpYiIsIkdlb21ldHJ5IiwiQnVmZmVyR2VvbWV0cnkiLCJWZWN0b3IzIiwiVmVjdG9yMiIsInR0dnYwIiwiQ1NHIiwiZnJvbUdlb21ldHJ5IiwiZ2VvbSIsIm9iamVjdEluZGV4IiwicG9seXMiLCJpc0dlb21ldHJ5IiwiZnMiLCJmYWNlcyIsInZzIiwidmVydGljZXMiLCJmbSIsImkiLCJsZW5ndGgiLCJmIiwiaiIsInB1c2giLCJWZXJ0ZXgiLCJ2ZXJ0ZXhOb3JtYWxzIiwiZmFjZVZlcnRleFV2cyIsIlBvbHlnb24iLCJpc0J1ZmZlckdlb21ldHJ5IiwicG9zYXR0ciIsImF0dHJpYnV0ZXMiLCJwb3NpdGlvbiIsIm5vcm1hbGF0dHIiLCJub3JtYWwiLCJjb2xvcmF0dHIiLCJjb2xvciIsImluZGV4IiwiYXJyYXkiLCJBcnJheSIsIml0ZW1TaXplIiwidHJpQ291bnQiLCJsIiwicGxpIiwidmkiLCJ2dCIsIngiLCJ2cCIsInkiLCJ6Iiwibm9ybWFscyIsIm56IiwidXYiLCJueCIsInV2YXR0ciIsImNvbnNvbGUiLCJlcnJvciIsInR5cGUiLCJmcm9tUG9seWdvbnMiLCJ0bXBtMyIsIm5idWYzIiwiZnJvbU1lc2giLCJjc2ciLCJnZW9tZXRyeSIsImdldE5vcm1hbE1hdHJpeCIsInBvbHlnb25zIiwicCIsInYiLCJwb3MiLCJjb3B5IiwiYXBwbHlNYXRyaXg0IiwibWVzaCIsIm1hdHJpeCIsImN0IiwidG9wIiwid3JpdGUiLCJ0aGlzIiwibmJ1ZjIiLCJGbG9hdDMyQXJyYXkiLCJ0b0dlb21ldHJ5IiwicHMiLCJhcmd1bWVudHMiLCJ1bmRlZmluZWQiLCJidWZmZXJlZCIsImZvckVhY2giLCJncnBzIiwicHZzIiwicHZsZW4iLCJzaGFyZWQiLCJjb2xvcnMiLCJ1dnMiLCJGYWNlMyIsImZ1diIsImZubWwiLCJmYyIsIkJ1ZmZlckF0dHJpYnV0ZSIsInNldEF0dHJpYnV0ZSIsImdpIiwiYWRkR3JvdXAiLCJnYmFzZSIsInNldEluZGV4IiwidjAiLCJhcHBseU1hdHJpeDMiLCJmdnV2IiwiYSIsImIiLCJjIiwicGxhbmUiLCJ2ZXJ0aWNlc05lZWRVcGRhdGUiLCJlbGVtZW50c05lZWRVcGRhdGUiLCJub3JtYWxzTmVlZFVwZGF0ZSIsInRvTWVzaCIsInRvTWF0ZXJpYWwiLCJNYXRyaXg0IiwidG9NYXRyaXgiLCJpbnZlcnQiLCJpbnYiLCJNZXNoIiwibSIsInF1YXRlcm5pb24iLCJzY2FsZSIsInJvdGF0aW9uIiwic2V0RnJvbVF1YXRlcm5pb24iLCJ1cGRhdGVNYXRyaXhXb3JsZCIsImNhc3RTaGFkb3ciXSwibWFwcGluZ3MiOiI0VUFBQSxJQUFBQSxPQUFBQyx1QkFBQUMsUUFBQSxVQUNBQyxNQUFBQyx3QkFBQUYsUUFBQSxVQUNBRyxRQUFBSCxRQUFBLGdCLDB0QkFDQUEsUUFBQSxtQkFFQSxJQUFNSSxTQUE4Q0gsTUFBOUNHLFNBQVVDLGVBQW9DSixNQUFwQ0ksZUFBZ0JDLFFBQW9CTCxNQUFwQkssUUFBU0MsUUFBV04sTUFBWE0sUUFtRXJDQyxPQWpFSkMsUUFBQUEsSUFBSUMsYUFBZSxTQUFTQyxFQUFLQyxHQUM3QixJQUFJQyxFQUFRLEdBUmhCLEdBQUFGLEVBQUFHLFdBRUEsSUFRUSxJQUFJQyxFQUFLSixFQUFLSyxNQVR0QkMsRUFBQU4sRUFBQU8sU0FXWUMsRUFBSyxDQUFDLElBQUssSUFBSyxLQVY1QkMsRUFBQSxFQUFBQSxFQUFBTCxFQUFBTSxPQUFBRCxJQUFBLENBY1ksSUFGQSxJQUFJRSxFQUFJUCxFQUFHSyxHQVh2QkYsRUFBQSxHQWFxQkssRUFBSSxFQUFHQSxFQUFJLEVBQUdBLElBQ25CTCxFQUFTTSxLQUFLLElBQUlDLFFBQUFBLE9BQU9SLEVBQUdLLEVBQUVILEVBQUdJLEtBQUtELEVBQUVJLGNBQWNILEdBQUdaLEVBQUtn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LEVBQUM5QixlQUFlQSxFQUM3QjhCLEdBRVM3RyxRQUFBQSIsImZpbGUiOiJ1dGlscy9jc2cvdGhyZWUtY3NnLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCAqIGFzIFRIUkVFIGZyb20gJ3RocmVlJztcbmltcG9ydCB7IENTRywgVmVydGV4LCBWZWN0b3IsIFBvbHlnb24gfSBmcm9tICcuL2NzZy1saWIuanMnO1xuaW1wb3J0ICcuL2NzZy13b3JrZXIuanMnO1xuXG5sZXQgeyBHZW9tZXRyeSwgQnVmZmVyR2VvbWV0cnksIFZlY3RvcjMsIFZlY3RvcjJ9ID0gVEhSRUU7XG5cbkNTRy5mcm9tR2VvbWV0cnkgPSBmdW5jdGlvbihnZW9tLG9iamVjdEluZGV4KSB7XG4gICAgbGV0IHBvbHlzID0gW107XG4gICAgaWYgKGdlb20uaXNHZW9tZXRyeSkge1xuICAgICAgICBsZXQgZnMgPSBnZW9tLmZhY2VzO1xuICAgICAgICBsZXQgdnMgPSBnZW9tLnZlcnRpY2VzO1xuICAgICAgICBsZXQgZm0gPSBbJ2EnLCAnYicsICdjJ107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBmID0gZnNbaV07XG4gICAgICAgICAgICBsZXQgdmVydGljZXMgPSBbXTtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgMzsgaisrKVxuICAgICAgICAgICAgICAgIHZlcnRpY2VzLnB1c2gobmV3IFZlcnRleCh2c1tmW2ZtW2pdXV0sZi52ZXJ0ZXhOb3JtYWxzW2pdLGdlb20uZmFjZVZlcnRleFV2c1swXVtpXVtqXSkpO1xuICAgICAgICAgICAgcG9seXMucHVzaChuZXcgUG9seWdvbih2ZXJ0aWNlcywgb2JqZWN0SW5kZXgpKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZ2VvbS5pc0J1ZmZlckdlb21ldHJ5KSB7XG4gICAgICAgIGxldCB2ZXJ0aWNlcywgbm9ybWFscywgdXZzO1xuICAgICAgICBsZXQgcG9zYXR0ciA9IGdlb20uYXR0cmlidXRlcy5wb3NpdGlvbjtcbiAgICAgICAgbGV0IG5vcm1hbGF0dHIgPSBnZW9tLmF0dHJpYnV0ZXMubm9ybWFsO1xuICAgICAgICBsZXQgdXZhdHRyID0gZ2VvbS5hdHRyaWJ1dGVzLnV2O1xuICAgICAgICBsZXQgY29sb3JhdHRyID0gZ2VvbS5hdHRyaWJ1dGVzLmNvbG9yO1xuICAgICAgICBsZXQgaW5kZXg7XG4gICAgICAgIGlmIChnZW9tLmluZGV4KVxuICAgICAgICAgICAgaW5kZXggPSBnZW9tLmluZGV4LmFycmF5O1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGluZGV4ID0gbmV3IEFycmF5KChwb3NhdHRyLmFycmF5Lmxlbmd0aCAvIHBvc2F0dHIuaXRlbVNpemUpIHwgMCk7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGluZGV4Lmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgICAgIGluZGV4W2ldID0gaTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgdHJpQ291bnQgPSAoaW5kZXgubGVuZ3RoIC8gMykgfCAwO1xuICAgICAgICBwb2x5cyA9IG5ldyBBcnJheSh0cmlDb3VudCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBwbGkgPSAwLCBsID0gaW5kZXgubGVuZ3RoOyBpIDwgbDsgaSArPSAzLFxuICAgICAgICBwbGkrKykge1xuICAgICAgICAgICAgbGV0IHZlcnRpY2VzID0gbmV3IEFycmF5KDMpO1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCAzOyBqKyspIHtcbiAgICAgICAgICAgICAgICBsZXQgdmkgPSBpbmRleFtpICsgal07XG4gICAgICAgICAgICAgICAgbGV0IHZwID0gdmkgKiAzO1xuICAgICAgICAgICAgICAgIGxldCB2dCA9IHZpICogMjtcbiAgICAgICAgICAgICAgICBsZXQgeCA9IHBvc2F0dHIuYXJyYXlbdnBdO1xuICAgICAgICAgICAgICAgIGxldCB5ID0gcG9zYXR0ci5hcnJheVt2cCArIDFdO1xuICAgICAgICAgICAgICAgIGxldCB6ID0gcG9zYXR0ci5hcnJheVt2cCArIDJdO1xuICAgICAgICAgICAgICAgIGxldCBueCA9IG5vcm1hbGF0dHIuYXJyYXlbdnBdO1xuICAgICAgICAgICAgICAgIGxldCBueSA9IG5vcm1hbGF0dHIuYXJyYXlbdnAgKyAxXTtcbiAgICAgICAgICAgICAgICBsZXQgbnogPSBub3JtYWxhdHRyLmFycmF5W3ZwICsgMl07XG4gICAgICAgICAgICAgICAgLy9sZXQgdSA9IHV2YXR0ci5hcnJheVt2dF1cbiAgICAgICAgICAgICAgICAvL2xldCB2ID0gdXZhdHRyLmFycmF5W3Z0ICsgMV1cbiAgICAgICAgICAgICAgICB2ZXJ0aWNlc1tqXSA9IG5ldyBWZXJ0ZXgoe1xuICAgICAgICAgICAgICAgICAgICB4LFxuICAgICAgICAgICAgICAgICAgICB5LFxuICAgICAgICAgICAgICAgICAgICB6XG4gICAgICAgICAgICAgICAgfSx7XG4gICAgICAgICAgICAgICAgICAgIHg6IG54LFxuICAgICAgICAgICAgICAgICAgICB5OiBueSxcbiAgICAgICAgICAgICAgICAgICAgejogbnpcbiAgICAgICAgICAgICAgICB9LHV2YXR0ciYme1xuICAgICAgICAgICAgICAgICAgICB4OiB1dmF0dHIuYXJyYXlbdnRdLFxuICAgICAgICAgICAgICAgICAgICB5OiB1dmF0dHIuYXJyYXlbdnQrMV0sXG4gICAgICAgICAgICAgICAgICAgIHo6IDBcbiAgICAgICAgICAgICAgICB9LGNvbG9yYXR0ciYme3g6Y29sb3JhdHRyLmFycmF5W3Z0XSx5OmNvbG9yYXR0ci5hcnJheVt2dCsxXSx6OmNvbG9yYXR0ci5hcnJheVt2dCsyXX0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcG9seXNbcGxpXSA9IG5ldyBQb2x5Z29uKHZlcnRpY2VzLG9iamVjdEluZGV4KTtcbiAgICAgICAgfVxuICAgIH0gZWxzZVxuICAgICAgICBjb25zb2xlLmVycm9yKFwiVW5zdXBwb3J0ZWQgQ1NHIGlucHV0IHR5cGU6XCIgKyBnZW9tLnR5cGUpO1xuICAgIHJldHVybiBDU0cuZnJvbVBvbHlnb25zKHBvbHlzKTtcbn07XG5cbmxldCB0dHZ2MCA9IG5ldyBUSFJFRS5WZWN0b3IzKCk7XG5sZXQgdG1wbTMgPSBuZXcgVEhSRUUuTWF0cml4MygpO1xuQ1NHLmZyb21NZXNoID0gZnVuY3Rpb24obWVzaCxvYmplY3RJbmRleCkge1xuICAgIGxldCBjc2cgPSBDU0cuZnJvbUdlb21ldHJ5KG1lc2guZ2VvbWV0cnksb2JqZWN0SW5kZXgpO1xuICAgIHRtcG0zLmdldE5vcm1hbE1hdHJpeChtZXNoLm1hdHJpeCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjc2cucG9seWdvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IHAgPSBjc2cucG9seWdvbnNbaV07XG4gICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgcC52ZXJ0aWNlcy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgbGV0IHYgPSBwLnZlcnRpY2VzW2pdO1xuICAgICAgICAgICAgdi5wb3MuY29weSh0dHZ2MC5jb3B5KHYucG9zKS5hcHBseU1hdHJpeDQobWVzaC5tYXRyaXgpKTtcbiAgICAgICAgICAgIHYubm9ybWFsLmNvcHkodHR2djAuY29weSh2Lm5vcm1hbCkuYXBwbHlNYXRyaXgzKHRtcG0zKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNzZztcbn07XG5cbmxldCBuYnVmMz0oY3QpPT57XG4gICAgcmV0dXJue1xuICAgICAgICB0b3A6MCxcbiAgICAgICAgYXJyYXk6bmV3IEZsb2F0MzJBcnJheShjdCksXG4gICAgICAgIHdyaXRlOmZ1bmN0aW9uKHYpeyh0aGlzLmFycmF5W3RoaXMudG9wKytdPXYueCk7KHRoaXMuYXJyYXlbdGhpcy50b3ArK109di55KTsodGhpcy5hcnJheVt0aGlzLnRvcCsrXT12LnopO31cbiAgICB9O1xufTtcbmxldCBuYnVmMj0oY3QpPT57XG4gICAgcmV0dXJue1xuICAgICAgICB0b3A6MCxcbiAgICAgICAgYXJyYXk6bmV3IEZsb2F0MzJBcnJheShjdCksXG4gICAgICAgIHdyaXRlOmZ1bmN0aW9uKHYpeyh0aGlzLmFycmF5W3RoaXMudG9wKytdPXYueCk7KHRoaXMuYXJyYXlbdGhpcy50b3ArK109di55KTt9XG4gICAgfTtcbn07XG5cbkNTRy50b0dlb21ldHJ5ID0gZnVuY3Rpb24oY3NnLCBidWZmZXJlZD10cnVlKSB7XG4gICAgbGV0IHBzID0gY3NnLnBvbHlnb25zO1xuICAgIGxldCBnZW9tO1xuICAgIGxldCBnMjtcbiAgICBpZighYnVmZmVyZWQpIC8vT2xkIGdlb21ldHJ5IHBhdGguLi5cbiAgICB7XG4gICAgICAgIGdlb20gPSBuZXcgR2VvbWV0cnkoKTtcbiAgICAgICAgbGV0IHZzID0gZ2VvbS52ZXJ0aWNlcztcbiAgICAgICAgbGV0IGZ2dXYgPSBnZW9tLmZhY2VWZXJ0ZXhVdnNbMF07XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBwID0gcHNbaV07XG4gICAgICAgICAgICBsZXQgcHZzID0gcC52ZXJ0aWNlcztcbiAgICAgICAgICAgIGxldCB2MCA9IHZzLmxlbmd0aDtcbiAgICAgICAgICAgIGxldCBwdmxlbiA9IHB2cy5sZW5ndGg7XG5cbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgcHZsZW47IGorKylcbiAgICAgICAgICAgICAgICB2cy5wdXNoKG5ldyBUSFJFRS5WZWN0b3IzKCkuY29weShwdnNbal0ucG9zKSk7XG5cbiAgICAgICAgICAgIGZvciAobGV0IGogPSAzOyBqIDw9IHB2bGVuOyBqKyspIHtcbiAgICAgICAgICAgICAgICBsZXQgZmMgPSBuZXcgVEhSRUUuRmFjZTMoKTtcbiAgICAgICAgICAgICAgICBsZXQgZnV2ID0gW107XG4gICAgICAgICAgICAgICAgZnZ1di5wdXNoKGZ1dik7XG4gICAgICAgICAgICAgICAgbGV0IGZubWwgPSBmYy52ZXJ0ZXhOb3JtYWxzO1xuICAgICAgICAgICAgICAgIGZjLmEgPSB2MDtcbiAgICAgICAgICAgICAgICBmYy5iID0gdjAgKyBqIC0gMjtcbiAgICAgICAgICAgICAgICBmYy5jID0gdjAgKyBqIC0gMTtcblxuICAgICAgICAgICAgICAgIGZubWwucHVzaChuZXcgVEhSRUUuVmVjdG9yMygpLmNvcHkocHZzWzBdLm5vcm1hbCkpO1xuICAgICAgICAgICAgICAgIGZubWwucHVzaChuZXcgVEhSRUUuVmVjdG9yMygpLmNvcHkocHZzW2ogLSAyXS5ub3JtYWwpKTtcbiAgICAgICAgICAgICAgICBmbm1sLnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoKS5jb3B5KHB2c1tqIC0gMV0ubm9ybWFsKSk7XG4gICAgICAgICAgICAgICAgZnV2LnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoKS5jb3B5KHB2c1swXS51dikpO1xuICAgICAgICAgICAgICAgIGZ1di5wdXNoKG5ldyBUSFJFRS5WZWN0b3IzKCkuY29weShwdnNbaiAtIDJdLnV2KSk7XG4gICAgICAgICAgICAgICAgZnV2LnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoKS5jb3B5KHB2c1tqIC0gMV0udXYpKTtcblxuICAgICAgICAgICAgICAgIGZjLm5vcm1hbCA9IG5ldyBUSFJFRS5WZWN0b3IzKCkuY29weShwLnBsYW5lLm5vcm1hbCk7XG4gICAgICAgICAgICAgICAgZ2VvbS5mYWNlcy5wdXNoKGZjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBnZW9tID0gbmV3IFRIUkVFLkJ1ZmZlckdlb21ldHJ5KCkuZnJvbUdlb21ldHJ5KGdlb20pO1xuICAgICAgICBnZW9tLnZlcnRpY2VzTmVlZFVwZGF0ZSA9IGdlb20uZWxlbWVudHNOZWVkVXBkYXRlID0gZ2VvbS5ub3JtYWxzTmVlZFVwZGF0ZSA9IHRydWU7XG4gICAgfWVsc2UgeyAvL0J1ZmZlckdlb21ldHJ5IHBhdGhcbiAgICAgICAgbGV0IHRyaUNvdW50ID0gMDtcbiAgICAgICAgcHMuZm9yRWFjaChwPT50cmlDb3VudCArPSAocC52ZXJ0aWNlcy5sZW5ndGggLSAyKSk7XG4gICAgICAgICBnZW9tID0gbmV3IFRIUkVFLkJ1ZmZlckdlb21ldHJ5KCk7XG5cbiAgICAgICAgbGV0IHZlcnRpY2VzID0gbmJ1ZjModHJpQ291bnQgKiAzICogMyk7XG4gICAgICAgIGxldCBub3JtYWxzID0gbmJ1ZjModHJpQ291bnQgKiAzICogMyk7XG4gICAgICAgIGxldCB1dnM7IC8vID0gbmJ1ZjIodHJpQ291bnQgKiAyICogMylcbiAgICAgICAgbGV0IGNvbG9ycztcbiAgICAgICAgbGV0IGdycHM9W107XG4gICAgICAgIHBzLmZvckVhY2gocD0+e1xuICAgICAgICAgICAgbGV0IHB2cyA9IHAudmVydGljZXM7XG4gICAgICAgICAgICBsZXQgcHZsZW4gPSBwdnMubGVuZ3RoO1xuICAgICAgICAgICAgaWYocC5zaGFyZWQhPT11bmRlZmluZWQpe1xuICAgICAgICAgICAgICAgIGlmKCFncnBzW3Auc2hhcmVkXSlncnBzW3Auc2hhcmVkXT1bXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmKHB2bGVuKXtcbiAgICAgICAgICAgICAgICBpZihwdnNbMF0uY29sb3IhPT11bmRlZmluZWQpe1xuICAgICAgICAgICAgICAgICAgICBpZighY29sb3JzKWNvbG9ycyA9IG5idWYzKHRyaUNvdW50KjMqMyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmKHB2c1swXS51diE9PXVuZGVmaW5lZCl7XG4gICAgICAgICAgICAgICAgICAgIGlmKCF1dnMpdXZzID0gbmJ1ZjIodHJpQ291bnQgKiAyICogMyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDM7IGogPD0gcHZsZW47IGorKykge1xuICAgICAgICAgICAgICAgIChwLnNoYXJlZCE9PXVuZGVmaW5lZCkgJiYgKGdycHNbcC5zaGFyZWRdLnB1c2godmVydGljZXMudG9wLzMsKHZlcnRpY2VzLnRvcC8zKSsxLCh2ZXJ0aWNlcy50b3AvMykrMikpO1xuICAgICAgICAgICAgICAgIHZlcnRpY2VzLndyaXRlKHB2c1swXS5wb3MpO1xuICAgICAgICAgICAgICAgIHZlcnRpY2VzLndyaXRlKHB2c1tqLTJdLnBvcyk7XG4gICAgICAgICAgICAgICAgdmVydGljZXMud3JpdGUocHZzW2otMV0ucG9zKTtcbiAgICAgICAgICAgICAgICBub3JtYWxzLndyaXRlKHB2c1swXS5ub3JtYWwpO1xuICAgICAgICAgICAgICAgIG5vcm1hbHMud3JpdGUocHZzW2otMl0ubm9ybWFsKTtcbiAgICAgICAgICAgICAgICBub3JtYWxzLndyaXRlKHB2c1tqLTFdLm5vcm1hbCk7XG4gICAgICAgICAgICAgICAgdXZzJiYocHZzWzBdLnV2KSYmKHV2cy53cml0ZShwdnNbMF0udXYpfHx1dnMud3JpdGUocHZzW2otMl0udXYpfHx1dnMud3JpdGUocHZzW2otMV0udXYpKTtcbiAgICAgICAgICAgICAgICBjb2xvcnMmJihjb2xvcnMud3JpdGUocHZzWzBdLmNvbG9yKXx8Y29sb3JzLndyaXRlKHB2c1tqLTJdLmNvbG9yKXx8Y29sb3JzLndyaXRlKHB2c1tqLTFdLmNvbG9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgICAgZ2VvbS5zZXRBdHRyaWJ1dGUoJ3Bvc2l0aW9uJywgbmV3IFRIUkVFLkJ1ZmZlckF0dHJpYnV0ZSh2ZXJ0aWNlcy5hcnJheSwzKSk7XG4gICAgICAgIGdlb20uc2V0QXR0cmlidXRlKCdub3JtYWwnLCBuZXcgVEhSRUUuQnVmZmVyQXR0cmlidXRlKG5vcm1hbHMuYXJyYXksMykpO1xuICAgICAgICB1dnMgJiYgZ2VvbS5zZXRBdHRyaWJ1dGUoJ3V2JywgbmV3IFRIUkVFLkJ1ZmZlckF0dHJpYnV0ZSh1dnMuYXJyYXksMikpO1xuICAgICAgICBjb2xvcnMgJiYgZ2VvbS5zZXRBdHRyaWJ1dGUoJ2NvbG9yJywgbmV3IFRIUkVFLkJ1ZmZlckF0dHJpYnV0ZShjb2xvcnMuYXJyYXksMykpO1xuICAgICAgICBpZihncnBzLmxlbmd0aCl7XG4gICAgICAgICAgICBsZXQgaW5kZXggPSBbXTtcbiAgICAgICAgICAgIGxldCBnYmFzZT0wO1xuICAgICAgICAgICAgZm9yKGxldCBnaT0wO2dpPGdycHMubGVuZ3RoO2dpKyspe1xuICAgICAgICAgICAgICAgIGdlb20uYWRkR3JvdXAoZ2Jhc2UsZ3Jwc1tnaV0ubGVuZ3RoLGdpKTtcbiAgICAgICAgICAgICAgICBnYmFzZSs9Z3Jwc1tnaV0ubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGluZGV4PWluZGV4LmNvbmNhdChncnBzW2dpXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBnZW9tLnNldEluZGV4KGluZGV4KTtcbiAgICAgICAgfVxuICAgICAgICBnMiA9IGdlb207XG4gICAgfVxuICAgIHJldHVybiBnZW9tO1xufTtcblxuQ1NHLnRvTWVzaCA9IGZ1bmN0aW9uKGNzZywgdG9NYXRyaXgsIHRvTWF0ZXJpYWwpIHtcbiAgICBsZXQgZ2VvbSA9IENTRy50b0dlb21ldHJ5KGNzZyk7XG4gICAgbGV0IGludiA9IG5ldyBUSFJFRS5NYXRyaXg0KCkuY29weSh0b01hdHJpeCkuaW52ZXJ0KCk7XG4gICAgZ2VvbS5hcHBseU1hdHJpeDQoaW52KTtcbiAgICBnZW9tLmNvbXB1dGVCb3VuZGluZ1NwaGVyZSgpO1xuICAgIGdlb20uY29tcHV0ZUJvdW5kaW5nQm94KCk7XG4gICAgbGV0IG0gPSBuZXcgVEhSRUUuTWVzaChnZW9tLHRvTWF0ZXJpYWwpO1xuICAgIG0ubWF0cml4LmNvcHkodG9NYXRyaXgpO1xuICAgIG0ubWF0cml4LmRlY29tcG9zZShtLnBvc2l0aW9uLCBtLnF1YXRlcm5pb24sIG0uc2NhbGUpO1xuICAgIG0ucm90YXRpb24uc2V0RnJvbVF1YXRlcm5pb24obS5xdWF0ZXJuaW9uKTtcbiAgICBtLnVwZGF0ZU1hdHJpeFdvcmxkKCk7XG4gICAgbS5jYXN0U2hhZG93ID0gbS5yZWNlaXZlU2hhZG93ID0gdHJ1ZTtcbiAgICByZXR1cm4gbTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IENTRztcbiJdfQ==
|
package/build/utils/helpers.js
DELETED
@@ -1,2 +0,0 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.preventRightClick=void 0;var preventRightClick=function(e){e.preventDefault()};exports.preventRightClick=preventRightClick;
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL2hlbHBlcnMuanMiXSwibmFtZXMiOlsicHJldmVudFJpZ2h0Q2xpY2siLCJldmVudCIsInByZXZlbnREZWZhdWx0Il0sIm1hcHBpbmdzIjoicUdBQU8sSUFBTUEsa0JBQW9CLFNBQUNDLEdBQ2hDQSxFQUFNQyIsImZpbGUiOiJ1dGlscy9oZWxwZXJzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHByZXZlbnRSaWdodENsaWNrID0gKGV2ZW50KSA9PiB7XG4gIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG59O1xuIl19
|