1 line
29 KiB
JSON
1 line
29 KiB
JSON
{"ast":null,"code":"import { __extends } from \"tslib\";\nimport * as util from './core/util.js';\nimport * as vec2 from './core/vector.js';\nimport Draggable from './mixin/Draggable.js';\nimport Eventful from './core/Eventful.js';\nimport * as eventTool from './core/event.js';\nimport { GestureMgr } from './core/GestureMgr.js';\nvar SILENT = 'silent';\n\nfunction makeEventPacket(eveType, targetInfo, event) {\n return {\n type: eveType,\n event: event,\n target: targetInfo.target,\n topTarget: targetInfo.topTarget,\n cancelBubble: false,\n offsetX: event.zrX,\n offsetY: event.zrY,\n gestureEvent: event.gestureEvent,\n pinchX: event.pinchX,\n pinchY: event.pinchY,\n pinchScale: event.pinchScale,\n wheelDelta: event.zrDelta,\n zrByTouch: event.zrByTouch,\n which: event.which,\n stop: stopEvent\n };\n}\n\nfunction stopEvent() {\n eventTool.stop(this.event);\n}\n\nvar EmptyProxy = function (_super) {\n __extends(EmptyProxy, _super);\n\n function EmptyProxy() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n\n _this.handler = null;\n return _this;\n }\n\n EmptyProxy.prototype.dispose = function () {};\n\n EmptyProxy.prototype.setCursor = function () {};\n\n return EmptyProxy;\n}(Eventful);\n\nvar HoveredResult = function () {\n function HoveredResult(x, y) {\n this.x = x;\n this.y = y;\n }\n\n return HoveredResult;\n}();\n\nvar handlerNames = ['click', 'dblclick', 'mousewheel', 'mouseout', 'mouseup', 'mousedown', 'mousemove', 'contextmenu'];\n\nvar Handler = function (_super) {\n __extends(Handler, _super);\n\n function Handler(storage, painter, proxy, painterRoot) {\n var _this = _super.call(this) || this;\n\n _this._hovered = new HoveredResult(0, 0);\n _this.storage = storage;\n _this.painter = painter;\n _this.painterRoot = painterRoot;\n proxy = proxy || new EmptyProxy();\n _this.proxy = null;\n\n _this.setHandlerProxy(proxy);\n\n _this._draggingMgr = new Draggable(_this);\n return _this;\n }\n\n Handler.prototype.setHandlerProxy = function (proxy) {\n if (this.proxy) {\n this.proxy.dispose();\n }\n\n if (proxy) {\n util.each(handlerNames, function (name) {\n proxy.on && proxy.on(name, this[name], this);\n }, this);\n proxy.handler = this;\n }\n\n this.proxy = proxy;\n };\n\n Handler.prototype.mousemove = function (event) {\n var x = event.zrX;\n var y = event.zrY;\n var isOutside = isOutsideBoundary(this, x, y);\n var lastHovered = this._hovered;\n var lastHoveredTarget = lastHovered.target;\n\n if (lastHoveredTarget && !lastHoveredTarget.__zr) {\n lastHovered = this.findHover(lastHovered.x, lastHovered.y);\n lastHoveredTarget = lastHovered.target;\n }\n\n var hovered = this._hovered = isOutside ? new HoveredResult(x, y) : this.findHover(x, y);\n var hoveredTarget = hovered.target;\n var proxy = this.proxy;\n proxy.setCursor && proxy.setCursor(hoveredTarget ? hoveredTarget.cursor : 'default');\n\n if (lastHoveredTarget && hoveredTarget !== lastHoveredTarget) {\n this.dispatchToElement(lastHovered, 'mouseout', event);\n }\n\n this.dispatchToElement(hovered, 'mousemove', event);\n\n if (hoveredTarget && hoveredTarget !== lastHoveredTarget) {\n this.dispatchToElement(hovered, 'mouseover', event);\n }\n };\n\n Handler.prototype.mouseout = function (event) {\n var eventControl = event.zrEventControl;\n\n if (eventControl !== 'only_globalout') {\n this.dispatchToElement(this._hovered, 'mouseout', event);\n }\n\n if (eventControl !== 'no_globalout') {\n this.trigger('globalout', {\n type: 'globalout',\n event: event\n });\n }\n };\n\n Handler.prototype.resize = function () {\n this._hovered = new HoveredResult(0, 0);\n };\n\n Handler.prototype.dispatch = function (eventName, eventArgs) {\n var handler = this[eventName];\n handler && handler.call(this, eventArgs);\n };\n\n Handler.prototype.dispose = function () {\n this.proxy.dispose();\n this.storage = null;\n this.proxy = null;\n this.painter = null;\n };\n\n Handler.prototype.setCursorStyle = function (cursorStyle) {\n var proxy = this.proxy;\n proxy.setCursor && proxy.setCursor(cursorStyle);\n };\n\n Handler.prototype.dispatchToElement = function (targetInfo, eventName, event) {\n targetInfo = targetInfo || {};\n var el = targetInfo.target;\n\n if (el && el.silent) {\n return;\n }\n\n var eventKey = 'on' + eventName;\n var eventPacket = makeEventPacket(eventName, targetInfo, event);\n\n while (el) {\n el[eventKey] && (eventPacket.cancelBubble = !!el[eventKey].call(el, eventPacket));\n el.trigger(eventName, eventPacket);\n el = el.__hostTarget ? el.__hostTarget : el.parent;\n\n if (eventPacket.cancelBubble) {\n break;\n }\n }\n\n if (!eventPacket.cancelBubble) {\n this.trigger(eventName, eventPacket);\n\n if (this.painter && this.painter.eachOtherLayer) {\n this.painter.eachOtherLayer(function (layer) {\n if (typeof layer[eventKey] === 'function') {\n layer[eventKey].call(layer, eventPacket);\n }\n\n if (layer.trigger) {\n layer.trigger(eventName, eventPacket);\n }\n });\n }\n }\n };\n\n Handler.prototype.findHover = function (x, y, exclude) {\n var list = this.storage.getDisplayList();\n var out = new HoveredResult(x, y);\n\n for (var i = list.length - 1; i >= 0; i--) {\n var hoverCheckResult = void 0;\n\n if (list[i] !== exclude && !list[i].ignore && (hoverCheckResult = isHover(list[i], x, y))) {\n !out.topTarget && (out.topTarget = list[i]);\n\n if (hoverCheckResult !== SILENT) {\n out.target = list[i];\n break;\n }\n }\n }\n\n return out;\n };\n\n Handler.prototype.processGesture = function (event, stage) {\n if (!this._gestureMgr) {\n this._gestureMgr = new GestureMgr();\n }\n\n var gestureMgr = this._gestureMgr;\n stage === 'start' && gestureMgr.clear();\n var gestureInfo = gestureMgr.recognize(event, this.findHover(event.zrX, event.zrY, null).target, this.proxy.dom);\n stage === 'end' && gestureMgr.clear();\n\n if (gestureInfo) {\n var type = gestureInfo.type;\n event.gestureEvent = type;\n var res = new HoveredResult();\n res.target = gestureInfo.target;\n this.dispatchToElement(res, type, gestureInfo.event);\n }\n };\n\n return Handler;\n}(Eventful);\n\nutil.each(['click', 'mousedown', 'mouseup', 'mousewheel', 'dblclick', 'contextmenu'], function (name) {\n Handler.prototype[name] = function (event) {\n var x = event.zrX;\n var y = event.zrY;\n var isOutside = isOutsideBoundary(this, x, y);\n var hovered;\n var hoveredTarget;\n\n if (name !== 'mouseup' || !isOutside) {\n hovered = this.findHover(x, y);\n hoveredTarget = hovered.target;\n }\n\n if (name === 'mousedown') {\n this._downEl = hoveredTarget;\n this._downPoint = [event.zrX, event.zrY];\n this._upEl = hoveredTarget;\n } else if (name === 'mouseup') {\n this._upEl = hoveredTarget;\n } else if (name === 'click') {\n if (this._downEl !== this._upEl || !this._downPoint || vec2.dist(this._downPoint, [event.zrX, event.zrY]) > 4) {\n return;\n }\n\n this._downPoint = null;\n }\n\n this.dispatchToElement(hovered, name, event);\n };\n});\n\nfunction isHover(displayable, x, y) {\n if (displayable[displayable.rectHover ? 'rectContain' : 'contain'](x, y)) {\n var el = displayable;\n var isSilent = void 0;\n var ignoreClip = false;\n\n while (el) {\n if (el.ignoreClip) {\n ignoreClip = true;\n }\n\n if (!ignoreClip) {\n var clipPath = el.getClipPath();\n\n if (clipPath && !clipPath.contain(x, y)) {\n return false;\n }\n\n if (el.silent) {\n isSilent = true;\n }\n }\n\n var hostEl = el.__hostTarget;\n el = hostEl ? hostEl : el.parent;\n }\n\n return isSilent ? SILENT : true;\n }\n\n return false;\n}\n\nfunction isOutsideBoundary(handlerInstance, x, y) {\n var painter = handlerInstance.painter;\n return x < 0 || x > painter.getWidth() || y < 0 || y > painter.getHeight();\n}\n\nexport default Handler;","map":{"version":3,"sources":["D:/Work/WorkSpace/GitWorkSpace/TenShop/resource/ElectronicMall/src/qingge-Market/qingge-vue/node_modules/zrender/lib/Handler.js"],"names":["__extends","util","vec2","Draggable","Eventful","eventTool","GestureMgr","SILENT","makeEventPacket","eveType","targetInfo","event","type","target","topTarget","cancelBubble","offsetX","zrX","offsetY","zrY","gestureEvent","pinchX","pinchY","pinchScale","wheelDelta","zrDelta","zrByTouch","which","stop","stopEvent","EmptyProxy","_super","_this","apply","arguments","handler","prototype","dispose","setCursor","HoveredResult","x","y","handlerNames","Handler","storage","painter","proxy","painterRoot","call","_hovered","setHandlerProxy","_draggingMgr","each","name","on","mousemove","isOutside","isOutsideBoundary","lastHovered","lastHoveredTarget","__zr","findHover","hovered","hoveredTarget","cursor","dispatchToElement","mouseout","eventControl","zrEventControl","trigger","resize","dispatch","eventName","eventArgs","setCursorStyle","cursorStyle","el","silent","eventKey","eventPacket","__hostTarget","parent","eachOtherLayer","layer","exclude","list","getDisplayList","out","i","length","hoverCheckResult","ignore","isHover","processGesture","stage","_gestureMgr","gestureMgr","clear","gestureInfo","recognize","dom","res","_downEl","_downPoint","_upEl","dist","displayable","rectHover","isSilent","ignoreClip","clipPath","getClipPath","contain","hostEl","handlerInstance","getWidth","getHeight"],"mappings":"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","sourcesContent":["import { __extends } from \"tslib\";\r\nimport * as util from './core/util.js';\r\nimport * as vec2 from './core/vector.js';\r\nimport Draggable from './mixin/Draggable.js';\r\nimport Eventful from './core/Eventful.js';\r\nimport * as eventTool from './core/event.js';\r\nimport { GestureMgr } from './core/GestureMgr.js';\r\nvar SILENT = 'silent';\r\nfunction makeEventPacket(eveType, targetInfo, event) {\r\n return {\r\n type: eveType,\r\n event: event,\r\n target: targetInfo.target,\r\n topTarget: targetInfo.topTarget,\r\n cancelBubble: false,\r\n offsetX: event.zrX,\r\n offsetY: event.zrY,\r\n gestureEvent: event.gestureEvent,\r\n pinchX: event.pinchX,\r\n pinchY: event.pinchY,\r\n pinchScale: event.pinchScale,\r\n wheelDelta: event.zrDelta,\r\n zrByTouch: event.zrByTouch,\r\n which: event.which,\r\n stop: stopEvent\r\n };\r\n}\r\nfunction stopEvent() {\r\n eventTool.stop(this.event);\r\n}\r\nvar EmptyProxy = (function (_super) {\r\n __extends(EmptyProxy, _super);\r\n function EmptyProxy() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.handler = null;\r\n return _this;\r\n }\r\n EmptyProxy.prototype.dispose = function () { };\r\n EmptyProxy.prototype.setCursor = function () { };\r\n return EmptyProxy;\r\n}(Eventful));\r\nvar HoveredResult = (function () {\r\n function HoveredResult(x, y) {\r\n this.x = x;\r\n this.y = y;\r\n }\r\n return HoveredResult;\r\n}());\r\nvar handlerNames = [\r\n 'click', 'dblclick', 'mousewheel', 'mouseout',\r\n 'mouseup', 'mousedown', 'mousemove', 'contextmenu'\r\n];\r\nvar Handler = (function (_super) {\r\n __extends(Handler, _super);\r\n function Handler(storage, painter, proxy, painterRoot) {\r\n var _this = _super.call(this) || this;\r\n _this._hovered = new HoveredResult(0, 0);\r\n _this.storage = storage;\r\n _this.painter = painter;\r\n _this.painterRoot = painterRoot;\r\n proxy = proxy || new EmptyProxy();\r\n _this.proxy = null;\r\n _this.setHandlerProxy(proxy);\r\n _this._draggingMgr = new Draggable(_this);\r\n return _this;\r\n }\r\n Handler.prototype.setHandlerProxy = function (proxy) {\r\n if (this.proxy) {\r\n this.proxy.dispose();\r\n }\r\n if (proxy) {\r\n util.each(handlerNames, function (name) {\r\n proxy.on && proxy.on(name, this[name], this);\r\n }, this);\r\n proxy.handler = this;\r\n }\r\n this.proxy = proxy;\r\n };\r\n Handler.prototype.mousemove = function (event) {\r\n var x = event.zrX;\r\n var y = event.zrY;\r\n var isOutside = isOutsideBoundary(this, x, y);\r\n var lastHovered = this._hovered;\r\n var lastHoveredTarget = lastHovered.target;\r\n if (lastHoveredTarget && !lastHoveredTarget.__zr) {\r\n lastHovered = this.findHover(lastHovered.x, lastHovered.y);\r\n lastHoveredTarget = lastHovered.target;\r\n }\r\n var hovered = this._hovered = isOutside ? new HoveredResult(x, y) : this.findHover(x, y);\r\n var hoveredTarget = hovered.target;\r\n var proxy = this.proxy;\r\n proxy.setCursor && proxy.setCursor(hoveredTarget ? hoveredTarget.cursor : 'default');\r\n if (lastHoveredTarget && hoveredTarget !== lastHoveredTarget) {\r\n this.dispatchToElement(lastHovered, 'mouseout', event);\r\n }\r\n this.dispatchToElement(hovered, 'mousemove', event);\r\n if (hoveredTarget && hoveredTarget !== lastHoveredTarget) {\r\n this.dispatchToElement(hovered, 'mouseover', event);\r\n }\r\n };\r\n Handler.prototype.mouseout = function (event) {\r\n var eventControl = event.zrEventControl;\r\n if (eventControl !== 'only_globalout') {\r\n this.dispatchToElement(this._hovered, 'mouseout', event);\r\n }\r\n if (eventControl !== 'no_globalout') {\r\n this.trigger('globalout', { type: 'globalout', event: event });\r\n }\r\n };\r\n Handler.prototype.resize = function () {\r\n this._hovered = new HoveredResult(0, 0);\r\n };\r\n Handler.prototype.dispatch = function (eventName, eventArgs) {\r\n var handler = this[eventName];\r\n handler && handler.call(this, eventArgs);\r\n };\r\n Handler.prototype.dispose = function () {\r\n this.proxy.dispose();\r\n this.storage = null;\r\n this.proxy = null;\r\n this.painter = null;\r\n };\r\n Handler.prototype.setCursorStyle = function (cursorStyle) {\r\n var proxy = this.proxy;\r\n proxy.setCursor && proxy.setCursor(cursorStyle);\r\n };\r\n Handler.prototype.dispatchToElement = function (targetInfo, eventName, event) {\r\n targetInfo = targetInfo || {};\r\n var el = targetInfo.target;\r\n if (el && el.silent) {\r\n return;\r\n }\r\n var eventKey = ('on' + eventName);\r\n var eventPacket = makeEventPacket(eventName, targetInfo, event);\r\n while (el) {\r\n el[eventKey]\r\n && (eventPacket.cancelBubble = !!el[eventKey].call(el, eventPacket));\r\n el.trigger(eventName, eventPacket);\r\n el = el.__hostTarget ? el.__hostTarget : el.parent;\r\n if (eventPacket.cancelBubble) {\r\n break;\r\n }\r\n }\r\n if (!eventPacket.cancelBubble) {\r\n this.trigger(eventName, eventPacket);\r\n if (this.painter && this.painter.eachOtherLayer) {\r\n this.painter.eachOtherLayer(function (layer) {\r\n if (typeof (layer[eventKey]) === 'function') {\r\n layer[eventKey].call(layer, eventPacket);\r\n }\r\n if (layer.trigger) {\r\n layer.trigger(eventName, eventPacket);\r\n }\r\n });\r\n }\r\n }\r\n };\r\n Handler.prototype.findHover = function (x, y, exclude) {\r\n var list = this.storage.getDisplayList();\r\n var out = new HoveredResult(x, y);\r\n for (var i = list.length - 1; i >= 0; i--) {\r\n var hoverCheckResult = void 0;\r\n if (list[i] !== exclude\r\n && !list[i].ignore\r\n && (hoverCheckResult = isHover(list[i], x, y))) {\r\n !out.topTarget && (out.topTarget = list[i]);\r\n if (hoverCheckResult !== SILENT) {\r\n out.target = list[i];\r\n break;\r\n }\r\n }\r\n }\r\n return out;\r\n };\r\n Handler.prototype.processGesture = function (event, stage) {\r\n if (!this._gestureMgr) {\r\n this._gestureMgr = new GestureMgr();\r\n }\r\n var gestureMgr = this._gestureMgr;\r\n stage === 'start' && gestureMgr.clear();\r\n var gestureInfo = gestureMgr.recognize(event, this.findHover(event.zrX, event.zrY, null).target, this.proxy.dom);\r\n stage === 'end' && gestureMgr.clear();\r\n if (gestureInfo) {\r\n var type = gestureInfo.type;\r\n event.gestureEvent = type;\r\n var res = new HoveredResult();\r\n res.target = gestureInfo.target;\r\n this.dispatchToElement(res, type, gestureInfo.event);\r\n }\r\n };\r\n return Handler;\r\n}(Eventful));\r\nutil.each(['click', 'mousedown', 'mouseup', 'mousewheel', 'dblclick', 'contextmenu'], function (name) {\r\n Handler.prototype[name] = function (event) {\r\n var x = event.zrX;\r\n var y = event.zrY;\r\n var isOutside = isOutsideBoundary(this, x, y);\r\n var hovered;\r\n var hoveredTarget;\r\n if (name !== 'mouseup' || !isOutside) {\r\n hovered = this.findHover(x, y);\r\n hoveredTarget = hovered.target;\r\n }\r\n if (name === 'mousedown') {\r\n this._downEl = hoveredTarget;\r\n this._downPoint = [event.zrX, event.zrY];\r\n this._upEl = hoveredTarget;\r\n }\r\n else if (name === 'mouseup') {\r\n this._upEl = hoveredTarget;\r\n }\r\n else if (name === 'click') {\r\n if (this._downEl !== this._upEl\r\n || !this._downPoint\r\n || vec2.dist(this._downPoint, [event.zrX, event.zrY]) > 4) {\r\n return;\r\n }\r\n this._downPoint = null;\r\n }\r\n this.dispatchToElement(hovered, name, event);\r\n };\r\n});\r\nfunction isHover(displayable, x, y) {\r\n if (displayable[displayable.rectHover ? 'rectContain' : 'contain'](x, y)) {\r\n var el = displayable;\r\n var isSilent = void 0;\r\n var ignoreClip = false;\r\n while (el) {\r\n if (el.ignoreClip) {\r\n ignoreClip = true;\r\n }\r\n if (!ignoreClip) {\r\n var clipPath = el.getClipPath();\r\n if (clipPath && !clipPath.contain(x, y)) {\r\n return false;\r\n }\r\n if (el.silent) {\r\n isSilent = true;\r\n }\r\n }\r\n var hostEl = el.__hostTarget;\r\n el = hostEl ? hostEl : el.parent;\r\n }\r\n return isSilent ? SILENT : true;\r\n }\r\n return false;\r\n}\r\nfunction isOutsideBoundary(handlerInstance, x, y) {\r\n var painter = handlerInstance.painter;\r\n return x < 0 || x > painter.getWidth() || y < 0 || y > painter.getHeight();\r\n}\r\nexport default Handler;\r\n"]},"metadata":{},"sourceType":"module"} |