contribs/gmf/src/contextualdata/component.js
function contextualDataComponent() {
  return {
    restrict: 'A',
    scope: false,
    controller: 'GmfContextualdataController as cdCtrl',
    bindToController: {
      'map': '<gmfContextualdataMap',
      'projections': '<gmfContextualdataProjections',
      'callback': '<gmfContextualdataCallback'
    },
    /**
     * @param {angular.IScope} scope Scope.
     * @param {JQuery} element Element.
     * @param {angular.IAttributes} attrs Attributes.
     * @param {angular.IController=} controller Controller.
     */
    link: (scope, element, attrs, controller) => {
      if (!controller) {
        throw new Error('Missing controller');
      }
      controller.init();
    }
  };
}
function contextualDataComponent() {
  return {
    restrict: 'A',
    scope: false,
    controller: 'GmfContextualdataController as cdCtrl',
    bindToController: {
      'map': '<gmfContextualdataMap',
      'projections': '<gmfContextualdataProjections',
      'callback': '<gmfContextualdataCallback'
    },
    /**
     * @param {angular.IScope} scope Scope.
     * @param {JQuery} element Element.
     * @param {angular.IAttributes} attrs Attributes.
     * @param {angular.IController=} controller Controller.
     */
    link: (scope, element, attrs, controller) => {
      if (!controller) {
        throw new Error('Missing controller');
      }
      controller.init();
    }
  };
}
function contextualDataComponent ( ) { return { restrict : 'A' , scope : false , controller : 'GmfContextualdataController as cdCtrl' , bindToController : { 'map' : '<gmfContextualdataMap' , 'projections' : '<gmfContextualdataProjections' , 'callback' : '<gmfContextualdataCallback' } , /**
     * @param {angular.IScope} scope Scope.
     * @param {JQuery} element Element.
     * @param {angular.IAttributes} attrs Attributes.
     * @param {angular.IController=} controller Controller.
     */ link : ( scope , element , attrs , controller ) => { if ( ! controller ) { throw new Error ( 'Missing controller' ) ; } controller . init ( ) ; } } ; }
Provide a directive responsible of displaying contextual data after a right
click on the map.

This directive doesn't require being rendered in a visible DOM element.
It's usually added to the element where the map directive is also added.

Example:

<gmf-map gmf-map-map="mainCtrl.map"
gmf-contextualdata
gmf-contextualdata-map="::mainCtrl.map"
gmf-contextualdata-projections="::[21781,4326]">

The content of the popover is managed in a partial that must be defined
using the `gmfContextualdatacontentTemplateUrl` value. See
{@link import("gmf/contextualdatacontentDirective.js").default} for more details.

One can also provide a `gmf-contextualdata-callback` attribute in order to
do some additional computing on the coordinate or the values received for
the raster service. The callback function is called with the coordinate of
the clicked point and the response data from the server. It is intended to
return an object of additional properties to add to the scope.

See the [../examples/contribs/gmf/contextualdata.html](../examples/contribs/gmf/contextualdata.html)
example for a usage sample.

@htmlAttribute {import("ol/Map.js").default} map The map.
@htmlAttribute {Array<number>} projections The list of projections.
@htmlAttribute {Function} callback A function called after server
(raster) data is received in case some additional computing is required.
Optional.
@return {angular.IDirective} The directive specs.
@ngdoc directive
@ngname gmfContextualdata
Provide a directive responsible of displaying contextual data after a right click on the map .