import maplibregl from 'maplibre-gl'
import 'maplibre-gl/dist/maplibre-gl.css'
import { style } from '../style'

export function useMapbox() {
  return {
    initMapbox,
  }
}

function initMapbox() {
  const map = new maplibregl.Map({
    container: 'place-earth', // container id
    // style: 'https://demotiles.maplibre.org/style.json', // style URL
    // style: '/style.json', // style URL
    style, // style URL

    center: [121, 19], // starting position [lng, lat]
    zoom: 5,
  })

  map.on('load', function () {
    console.log(style)

    // map.addSource('openmaptiles', {
    //   type: 'vector',
    //   scheme: 'tms',
    //   tiles: ['http://192.168.10.187:8080/tmp/pbfMulti/{z}/{x}/{y}.pbf'],
    //   // tiles: [
    //   //   'https://api.maptiler.com/tiles/countries/{z}/{x}/{y}.pbf?key=bydP6fjhLOyifgD8sPeV',
    //   // ],
    //   glyphs:
    //     'https://api.maptiler.com/fonts/{fontstack}/{range}.pbf?key=bydP6fjhLOyifgD8sPeV',
    //   sprite:
    //     'https://cloud.maptiler.com/api/v1/sprites/fc5c10f7-9003-43f2-bc30-3834f546927c/content',
    // })
    // style.layers.forEach(layer => {
    //   // console.log(layer)
    //   map.addLayer(layer)
    // })
  })

  map.on('click', e => {
    const features = map.queryRenderedFeatures(e.point)
    console.log(features)
  })
}
