awv3
Version:
AWV client CAD framework
1 lines • 2.7 kB
JavaScript
;function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}exports.__esModule=!0,exports.lastCreated=exports.version=void 0;var _getIterator2=require("babel-runtime/core-js/get-iterator"),_getIterator3=_interopRequireDefault(_getIterator2),_map=require("babel-runtime/core-js/map"),_map2=_interopRequireDefault(_map),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_helpers=require("../core/helpers"),_parser=require("../core/parser"),_parser2=_interopRequireDefault(_parser),_events=require("../core/events"),_events2=_interopRequireDefault(_events),_renderer=require("../core/renderer"),_renderer2=_interopRequireDefault(_renderer),version=exports.version="1.0.0",lastCreated=exports.lastCreated=void 0,Canvas=function e(){var r=this,t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];if((0,_classCallCheck3.default)(this,e),this.version=version,this.id=(0,_helpers.guid)(),this.views=[],t.dom||(t.dom=document.createElement("div"),t.dom.style.cssText="position: relative; width: 100%; height: 100%; overflow: hidden; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none;"),this.dom=(0,_helpers.queryDom)(t.dom),this.dom.addEventListener("contextmenu",function(e){return e.preventDefault()},!1),this.debugLevel=t.debugLevel||parseInt((0,_helpers.url)("debugLevel"))||0,!lastCreated){var a="%c AWV.3 %c ES2015 %c "+version+" %c Resolution:"+(t.resolution||parseFloat((0,_helpers.url)("resolution"))||1)+" %c Cores:"+(navigator.hardwareConcurrency||4)+" ";console.log(a,"background: black; color: white;","background: gray; color: white;","background: #c23369; color: white;","background: #28d79f; color: white;","background: #28b4d7; color: white;")}this.events=new _events2.default,this.renderer=new _renderer2.default(this,t),this.parser=new _parser2.default,this.scopes=new _map2.default;var s=this,o=new MutationObserver(function(e){for(var t=e,a=Array.isArray(t),o=0,t=a?t:(0,_getIterator3.default)(t);;){var i;if(a){if(o>=t.length)break;i=t[o++]}else{if(o=t.next(),o.done)break;i=o.value}var l=i;if(l.addedNodes.length>0||l.removedNodes.length>0){s.scopes.clear();for(var n=s.views,u=Array.isArray(n),d=0,n=u?n:(0,_getIterator3.default)(n);;){var c;if(u){if(d>=n.length)break;c=n[d++]}else{if(d=n.next(),d.done)break;c=d.value}var h=c;h.updateScopes()}}l.target===r.dom?s.renderer.invalidateCanvas(30):s.renderer.invalidateViews(30)}});o.observe(this.dom,{childList:!0,subtree:!0,attributes:!0,characterData:!1,attributeOldValue:!1,characterDataOldValue:!1}),exports.lastCreated=lastCreated=this};exports.default=Canvas;