import * as d3 from 'd3-geo-projection';
import {projection} from 'vega-projection';

[
  'airy',
  'aitoff',
  'armadillo',
  'august',
  'baker',
  'berghaus',
  'bertin1953',
  'boggs',
  'bonne',
  'bottomley',
  'bromley',
  'chamberlinAfrica',
  'collignon',
  'craig',
  'craster',
  'cylindricalEqualArea',
  'cylindricalStereographic',
  'eckert1',
  'eckert2',
  'eckert3',
  'eckert4',
  'eckert5',
  'eckert6',
  'eisenlohr',
  'fahey',
  'foucaut',
  'foucautSinusoidal',
  'gilbert',
  'gingery',
  'ginzburg4',
  'ginzburg5',
  'ginzburg6',
  'ginzburg8',
  'ginzburg9',
  'gringorten',
  'guyou',
  'hammer',
  'hammerRetroazimuthal',
  'healpix',
  'hill',
  'homolosine',
  'hufnagel',
  'hyperElliptical',
  'interruptedBoggs',
  'interruptedHomolosine',
  'interruptedMollweide',
  'interruptedMollweideHemispheres',
  'interruptedSinuMollweide',
  'interruptedSinusoidal',
  'interruptedQuarticAuthalic',
  'kavrayskiy7',
  'lagrange',
  'larrivee',
  'laskowski',
  'littrow',
  'loximuthal',
  'miller',
  'modifiedStereographicAlaska',
  'modifiedStereographicGs48',
  'modifiedStereographicGs50',
  'modifiedStereographicMiller',
  'modifiedStereographicLee',
  // 'mollweide', // included in vega-projection
  'mtFlatPolarParabolic',
  'mtFlatPolarQuartic',
  'mtFlatPolarSinusoidal',
  'naturalEarth2',
  'nellHammer',
  'nicolosi',
  'patterson',
  'polyconic',
  'polyhedralButterfly',
  'polyhedralCollignon',
  'polyhedralWaterman',
  'gringortenQuincuncial',
  'peirceQuincuncial',
  'rectangularPolyconic',
  'robinson',
  'satellite',
  'sinuMollweide',
  'sinusoidal',
  'times',
  'twoPointAzimuthalUsa',
  'twoPointEquidistantUsa',
  'vanDerGrinten',
  'vanDerGrinten2',
  'vanDerGrinten3',
  'vanDerGrinten4',
  'wagner',
  'wagner4',
  'wagner6',
  'wagner7',
  'wiechel',
  'winkel3'
].forEach(function(p) {
  projection(p, d3['geo' + p[0].toUpperCase() + p.slice(1)]);
});
