Skip to content

Commit bd8e5d3

Browse files
committed
feat: map fullscreen control & m/ft scale
1 parent 9f50f97 commit bd8e5d3

File tree

5 files changed

+35
-1
lines changed

5 files changed

+35
-1
lines changed

package-lock.json

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,10 @@
3232
},
3333
"devDependencies": {
3434
"@types/leaflet": "^1.9.8",
35+
"@types/leaflet-fullscreen": "^1.0.9",
3536
"@types/webextension-polyfill": "^0.10.6",
3637
"@vitest/coverage-v8": "^0.34.6",
38+
"leaflet-fullscreen": "^1.0.2",
3739
"npm-run-all": "^4.1.5",
3840
"prettier": "^3.1.0",
3941
"release-it": "^17.0.0",

src/map.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
77
<link rel="stylesheet" href="/styles/map.css" />
88
<link rel="stylesheet" href="/leaflet.css" />
9+
<link rel="stylesheet" href="/leaflet.fullscreen.css" />
910
<title>Leaflet Map</title>
1011
</head>
1112

src/map/map.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import L from 'leaflet';
2+
import 'leaflet-fullscreen';
23

34
import { readPB, readQ, type MapData } from './utils/read';
45
import { type TileType, tileTypes } from './utils/parsePB';
@@ -44,7 +45,8 @@ if (params.has(gZoom)) {
4445
}
4546

4647
const map: L.Map = L.map('map', {
47-
scrollWheelZoom: false, // TODO: on pc allow ctrl + scroll
48+
fullscreenControl: true,
49+
scrollWheelZoom: true, // TODO: on pc allow ctrl + scroll
4850
zoom: mapData.zoom ?? 17,
4951
zoomSnap: 0.1,
5052
zoomDelta: 0.5,
@@ -71,3 +73,7 @@ L.tileLayer(tileProviders[mapData.tile || tileTypes[0]].layer, {
7173
maxZoom: 19,
7274
attribution: tileProviders[mapData.tile || tileTypes[0]].attr,
7375
}).addTo(map);
76+
77+
L.control.scale().addTo(map);
78+
// TODO: fix layer loading
79+
//L.control.layers({}, {}, { hideSingleBase: true }).addTo(map)

vite.config.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@ export default defineConfig({
1818
src: normalizePath(resolve(__dirname, 'node_modules/leaflet/dist/images')),
1919
dest: '.',
2020
},
21+
{
22+
src: normalizePath(resolve(__dirname, 'node_modules/leaflet-fullscreen/dist/leaflet.fullscreen.css')),
23+
dest: '.',
24+
},
25+
{
26+
src: normalizePath(resolve(__dirname, 'node_modules/leaflet-fullscreen/dist/*.png')),
27+
dest: '.',
28+
},
2129
{
2230
src: normalizePath(resolve(__dirname, 'LICENSE')),
2331
dest: '.',

0 commit comments

Comments
 (0)