<!DOCTYPE html>
<html>
    <head>
        <meta charset='utf-8' />
        <title>Add style control</title>
        <meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' />
        <script src='https://tiles.locationiq.com/v2/libs/maplibre-gl/1.15.2/maplibre-gl.js'></script>
        <link href='https://tiles.locationiq.com/v2/libs/maplibre-gl/1.15.2/maplibre-gl.css' rel='stylesheet' />

        <!-- 
            Use LocationIQ style control JS & CSS in addition to Mapbox's GL library for the simplest implementation of LocationIQ Maps
        -->
        <script src='https://tiles.locationiq.com/v2/js/liq-styles-ctrl-gl.js?v=0.1.8'></script>
        <link href='https://tiles.locationiq.com/v2/css/liq-styles-ctrl-gl.css?v=0.1.8' rel='stylesheet' />
        
        <style>
            body { margin:0px; padding:0px; }
            #map { position:absolute; top:0px; bottom:0px; width:100%; }
        </style>
    </head>
    <body>
        <div id='map'></div>
        <script>
            //Add your LocationIQ Maps Access Token here (not the API token!)
            locationiq.key = 'pk.a5c3fbf2119bfb2275b62eddbccd76b3';
            //Define the map and configure the map's theme
            var map = new mapboxgl.Map({
                container: 'map',
                attributionControl: false, //need this to show a compact attribution icon (i) instead of the whole text
                zoom: 12,
                center: [-122.42, 37.779]
            });
            
            //Define layers you want to add to the layer controls; the first element will be the default layer
            var layerStyles = {
                "Streets": "streets/vector",
                "Dark": "dark/vector",
                "Light": "light/vector"
            };
            
            map.addControl(new locationiqLayerControl({
                key: locationiq.key,
                layerStyles: layerStyles
            }), 'top-left');

        </script>
    </body>
</html>