(_ref6)
| 45642 | |
| 45643 | |
| 45644 | function processPickInfo(_ref6) { |
| 45645 | var pickInfo = _ref6.pickInfo, |
| 45646 | lastPickedInfo = _ref6.lastPickedInfo, |
| 45647 | mode = _ref6.mode, |
| 45648 | layers = _ref6.layers, |
| 45649 | viewports = _ref6.viewports, |
| 45650 | x = _ref6.x, |
| 45651 | y = _ref6.y, |
| 45652 | deviceX = _ref6.deviceX, |
| 45653 | deviceY = _ref6.deviceY, |
| 45654 | pixelRatio = _ref6.pixelRatio; |
| 45655 | var pickedColor = pickInfo.pickedColor, |
| 45656 | pickedLayer = pickInfo.pickedLayer, |
| 45657 | pickedObjectIndex = pickInfo.pickedObjectIndex; |
| 45658 | var affectedLayers = pickedLayer ? [pickedLayer] : []; |
| 45659 | |
| 45660 | if (mode === 'hover') { |
| 45661 | // only invoke onHover events if picked object has changed |
| 45662 | var lastPickedObjectIndex = lastPickedInfo.index; |
| 45663 | var lastPickedLayerId = lastPickedInfo.layerId; |
| 45664 | var pickedLayerId = pickedLayer && pickedLayer.props.id; // proceed only if picked object changed |
| 45665 | |
| 45666 | if (pickedLayerId !== lastPickedLayerId || pickedObjectIndex !== lastPickedObjectIndex) { |
| 45667 | if (pickedLayerId !== lastPickedLayerId) { |
| 45668 | // We cannot store a ref to lastPickedLayer in the context because |
| 45669 | // the state of an outdated layer is no longer valid |
| 45670 | // and the props may have changed |
| 45671 | var lastPickedLayer = layers.find(function (layer) { |
| 45672 | return layer.props.id === lastPickedLayerId; |
| 45673 | }); |
| 45674 | |
| 45675 | if (lastPickedLayer) { |
| 45676 | // Let leave event fire before enter event |
| 45677 | affectedLayers.unshift(lastPickedLayer); |
| 45678 | } |
| 45679 | } // Update layer manager context |
| 45680 | |
| 45681 | |
| 45682 | lastPickedInfo.layerId = pickedLayerId; |
| 45683 | lastPickedInfo.index = pickedObjectIndex; |
| 45684 | lastPickedInfo.info = null; |
| 45685 | } |
| 45686 | } |
| 45687 | |
| 45688 | var viewport = getViewportFromCoordinates({ |
| 45689 | viewports: viewports |
| 45690 | }); // TODO - add coords |
| 45691 | |
| 45692 | var coordinate = viewport && viewport.unproject([x, y]); |
| 45693 | var baseInfo = { |
| 45694 | color: null, |
| 45695 | layer: null, |
| 45696 | index: -1, |
| 45697 | picked: false, |
| 45698 | x: x, |
| 45699 | y: y, |
| 45700 | pixel: [x, y], |
| 45701 | coordinate: coordinate, |
no test coverage detected