#!/bin/bash

rm -rvf world

world_shp() {
  mkdir -p build
  curl -z build/ne_$1_admin_0_countries.zip -o build/ne_$1_admin_0_countries.zip http://naciscdn.org/naturalearth/$1/cultural/ne_$1_admin_0_countries.zip
  unzip -od build build/ne_$1_admin_0_countries.zip
  chmod a-x build/ne_$1_admin_0_countries.*
}

world() {
  world_shp $1
  mkdir -p world
  geo2topo -q 1e5 -n countries=<( \
      shp2json -n build/ne_$1_admin_0_countries.shp \
        | ndjson-map '(d.id = d.properties.iso_n3, delete d.properties, d)' \
        | geostitch -n) \
    | topomerge land=countries \
    > world/$1.json
  shp2json -n build/ne_$1_admin_0_countries.shp \
    | ndjson-map 'd.properties' \
    | ndjson-sort 'a.iso_a3.localeCompare(b.iso_a3)' \
    | json2tsv -n \
    > world/$1.tsv
}

world 110m
world 50m
