(opts)
| 92089 | }; |
| 92090 | } |
| 92091 | function processPickInfo(opts) { |
| 92092 | var pickInfo = opts.pickInfo, lastPickedInfo = opts.lastPickedInfo, mode = opts.mode, layers = opts.layers; |
| 92093 | var pickedColor = pickInfo.pickedColor, pickedLayer = pickInfo.pickedLayer, pickedObjectIndex = pickInfo.pickedObjectIndex; |
| 92094 | var affectedLayers = pickedLayer ? [ |
| 92095 | pickedLayer |
| 92096 | ] : []; |
| 92097 | if (mode === "hover") { |
| 92098 | var lastPickedObjectIndex = lastPickedInfo.index; |
| 92099 | var lastPickedLayerId = lastPickedInfo.layerId; |
| 92100 | var pickedLayerId = pickedLayer && pickedLayer.props.id; |
| 92101 | if (pickedLayerId !== lastPickedLayerId || pickedObjectIndex !== lastPickedObjectIndex) { |
| 92102 | if (pickedLayerId !== lastPickedLayerId) { |
| 92103 | var lastPickedLayer = layers.find(function(layer) { |
| 92104 | return layer.props.id === lastPickedLayerId; |
| 92105 | }); |
| 92106 | if (lastPickedLayer) affectedLayers.unshift(lastPickedLayer); |
| 92107 | } |
| 92108 | lastPickedInfo.layerId = pickedLayerId; |
| 92109 | lastPickedInfo.index = pickedObjectIndex; |
| 92110 | lastPickedInfo.info = null; |
| 92111 | } |
| 92112 | } |
| 92113 | var baseInfo = getEmptyPickingInfo(opts); |
| 92114 | var infos = new Map(); |
| 92115 | infos.set(null, baseInfo); |
| 92116 | affectedLayers.forEach(function(layer) { |
| 92117 | var info = Object.assign({}, baseInfo); |
| 92118 | if (layer === pickedLayer) { |
| 92119 | info.color = pickedColor; |
| 92120 | info.index = pickedObjectIndex; |
| 92121 | info.picked = true; |
| 92122 | } |
| 92123 | info = getLayerPickingInfo({ |
| 92124 | layer: layer, |
| 92125 | info: info, |
| 92126 | mode: mode |
| 92127 | }); |
| 92128 | if (layer === pickedLayer && mode === "hover") lastPickedInfo.info = info; |
| 92129 | if (info) infos.set(info.layer.id, info); |
| 92130 | if (mode === "hover" && layer.props.autoHighlight) { |
| 92131 | var pickingModuleParameters = { |
| 92132 | pickingSelectedColor: pickedLayer === layer ? pickedColor : null |
| 92133 | }; |
| 92134 | var highlightColor = layer.props.highlightColor; |
| 92135 | if (pickedLayer === layer && typeof highlightColor === "function") pickingModuleParameters.pickingHighlightColor = highlightColor(info); |
| 92136 | layer.setModuleParameters(pickingModuleParameters); |
| 92137 | layer.setNeedsRedraw(); |
| 92138 | } |
| 92139 | }); |
| 92140 | return infos; |
| 92141 | } |
| 92142 | function getLayerPickingInfo(_ref2) { |
| 92143 | var layer = _ref2.layer, info = _ref2.info, mode = _ref2.mode; |
| 92144 | while(layer && info){ |
nothing calls this directly
no test coverage detected