import leafmap.foliumap as leafmap

# +
usgs = "https://data.source.coop/cboettig/fire/usgs-mtbs.pmtiles"
calfire = "https://data.source.coop/cboettig/fire/calfire-2022.pmtiles"

#usgs = "https://minio.carlboettiger.info/public-fire/fire/usgs-mtbs.pmtiles"
#calfire = "https://minio.carlboettiger.info/public-fire/fire/calfire-2022.pmtiles"

metadata = leafmap.pmtiles_metadata(calfire)
print(f"layer names: {metadata['layer_names']}")
#metadata

# +
red = "#850101"
lightred="#FF474C"
orange="#FFA500"
purple="#BF40BF"
usgs_style = {
    "version": 8,
    "sources": {
        "source1": {
            "type": "vector",
            "url": "pmtiles://" + usgs,
            "attribution": "USGS"},
    "layers": [{
            "id": "mtbs_perims_DD",
            "source": "source1",
            "source-layer": "mtbs_perims_DD",
            "type": "fill",
            "paint": {"fill-color": red, "fill-opacity": 0.5}}]}}

calfire_style = {
    "version": 8,
    "sources": {
         "source2": {
            "type": "vector",
            "url": "pmtiles://" + calfire,
            "attribution": "CalFire"}},
    "layers": [{
            "id": "firep22_1",
            "source": "source2",
            "source-layer": "firep22_1",
            "type": "fill",
            "paint": {"fill-color": orange, "fill-opacity": 0.5}}]}

calfire_rx_style = {
    "version": 8,
    "sources": {
         "source2": {
            "type": "vector",
            "url": "pmtiles://" + calfire,
            "attribution": "CalFire"}},
    "layers": [{
            "id": "rxburn22_1",
            "source": "source2",
            "source-layer": "rxburn22_1",
            "type": "fill",
            "paint": {"fill-color": purple, "fill-opacity": 0.5}}]}

combined_style = {
    "version": 8,
    "sources": {
        "source1": {
            "type": "vector",
            "url": "pmtiles://" + usgs,
            "attribution": "USGS",
        },
         "source2": {
            "type": "vector",
            "url": "pmtiles://" + calfire,
            "attribution": "CalFire",
        },
    },
    "layers": [
        {
            "id": "usgs",
            "source": "source1",
            "source-layer": "mtbs_perims_DD",
            "type": "fill",
            "paint": {"fill-color": red, "fill-opacity": 0.5}
        },
        {
            "id": "firep22_1",
            "source": "source2",
            "source-layer": "firep22_1",
            "type": "fill",
            "paint": {"fill-color": orange, "fill-opacity": 0.}
        },
        {
            "id": "rxburn22_1",
            "source": "source2",
            "source-layer": "rxburn22_1",
            "type": "fill",
            "paint": {"fill-color": purple, "fill-opacity": 0.}
        }
    ]
}
# -

m = leafmap.Map(center=[35, -100], zoom=4)
m.add_basemap("Esri.WorldShadedRelief")
m.add_pmtiles(calfire, name="calfire", style=calfire_style, overlay=True, show=True, zoom_to_layer=False)
m.add_pmtiles(calfire, name="Cal RX", style=calfire_rx_style, overlay=True, show=True, zoom_to_layer=False)
m.add_pmtiles(usgs, name="usgs", style=combined_style, overlay=True, show=True, zoom_to_layer=False)
m.to_html("fire-pmtiles.html")
m


