* If a MapLibre source has empty bounds, no tiles will be displayed.
* js: maplibre protocol has option to throw on missing tile [#321] * js: update docs copy for errorOnMissingTile * js: 4.1.0
* pmtiles js v4: remove pmtiles spec v2 compatibility [#287] * restructure ts files into src * add tsup for building ESM/CJS and making types work in ESM * bump fflate dependency * update CHANGELOG for js 4.0.0