function updateSelectedItem(datum) {
    d3.event.stopPropagation();

    selection = utils.setSelection(
      datum == selection.current() ? null : datum,
      options);
    var item = selection.current() || geoObject;

    options.updateInfoCard(selection.info());

    var projection = path.projection();
    projection
      .center(item.center)
      .scale(item.scale);

    mapLayer.selectAll('path')
      .attr('stroke', selection.strokeColor)
      .attr('fill', selection.fillColor)
      .attr('class', selection.className)
      .transition()
      .duration(600)
      .ease('cubic-in-out')
      .attr('d', path);

    textLayer
      .attr('hidden', selection.hideLabels);

    textLayer.selectAll('text')
      .attr('fill', selection.textFill)
      .transition()
      .duration(400)
      .ease('cubic-in-out')
      .attr('font-size', selection.textSize)
      .attr('transform', selection.textPosition);
  }
function updateSelectedItem(datum) {
    d3.event.stopPropagation();

    selection = utils.setSelection(
      datum == selection.current() ? null : datum,
      options);
    var item = selection.current() || geoObject;

    options.updateInfoCard(selection.info());

    var projection = path.projection();
    projection
      .center(item.center)
      .scale(item.scale);

    mapLayer.selectAll('path')
      .attr('stroke', selection.strokeColor)
      .attr('fill', selection.fillColor)
      .attr('class', selection.className)
      .transition()
      .duration(600)
      .ease('cubic-in-out')
      .attr('d', path);

    textLayer
      .attr('hidden', selection.hideLabels);

    textLayer.selectAll('text')
      .attr('fill', selection.textFill)
      .transition()
      .duration(400)
      .ease('cubic-in-out')
      .attr('font-size', selection.textSize)
      .attr('transform', selection.textPosition);
  }
function updateSelectedItem ( datum ) { d3 . event . stopPropagation ( ) ; selection = utils . setSelection ( datum == selection . current ( ) ? null : datum , options ) ; var item = selection . current ( ) || geoObject ; options . updateInfoCard ( selection . info ( ) ) ; var projection = path . projection ( ) ; projection . center ( item . center ) . scale ( item . scale ) ; mapLayer . selectAll ( 'path' ) . attr ( 'stroke' , selection . strokeColor ) . attr ( 'fill' , selection . fillColor ) . attr ( 'class' , selection . className ) . transition ( ) . duration ( 600 ) . ease ( 'cubic-in-out' ) . attr ( 'd' , path ) ; textLayer . attr ( 'hidden' , selection . hideLabels ) ; textLayer . selectAll ( 'text' ) . attr ( 'fill' , selection . textFill ) . transition ( ) . duration ( 400 ) . ease ( 'cubic-in-out' ) . attr ( 'font-size' , selection . textSize ) . attr ( 'transform' , selection . textPosition ) ; }
Click handler
Click handler