diff --git a/package.json b/package.json index 46bc6ac..bdf00fd 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "@sveltejs/adapter-auto": "^3.3.1", "@sveltejs/kit": "^2.8.5", "@sveltejs/package": "^2.3.7", - "@sveltejs/vite-plugin-svelte": "^4.0.0", + "@sveltejs/vite-plugin-svelte": "^4.0.2", "@tailwindcss/typography": "^0.5.15", "@types/eslint": "^9.6.1", "@types/geojson": "^7946.0.14", @@ -75,13 +75,14 @@ "prettier-plugin-svelte": "^3.3.2", "prettier-plugin-tailwindcss": "^0.6.9", "publint": "^0.2.12", - "shiki": "^1.23.1", - "svelte": "^5.2.9", + "shiki": "^1.24.0", + "svelte": "^5.2.10", "svelte-check": "^4.1.0", "tailwind-merge": "^2.5.5", "tailwind-variants": "^0.3.0", "tailwindcss": "^3.4.15", "tailwindcss-animate": "^1.0.7", + "three": "^0.170.0", "typescript": "^5.7.2", "typescript-eslint": "^8.16.0", "vite": "^5.4.11", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index daa2ced..3607544 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -25,16 +25,16 @@ importers: version: 1.49.0 '@sveltejs/adapter-auto': specifier: ^3.3.1 - version: 3.3.1(@sveltejs/kit@2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11))(svelte@5.2.9)(vite@5.4.11)) + version: 3.3.1(@sveltejs/kit@2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11))(svelte@5.2.10)(vite@5.4.11)) '@sveltejs/kit': specifier: ^2.8.5 - version: 2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11))(svelte@5.2.9)(vite@5.4.11) + version: 2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11))(svelte@5.2.10)(vite@5.4.11) '@sveltejs/package': specifier: ^2.3.7 - version: 2.3.7(svelte@5.2.9)(typescript@5.7.2) + version: 2.3.7(svelte@5.2.10)(typescript@5.7.2) '@sveltejs/vite-plugin-svelte': - specifier: ^4.0.0 - version: 4.0.2(svelte@5.2.9)(vite@5.4.11) + specifier: ^4.0.2 + version: 4.0.2(svelte@5.2.10)(vite@5.4.11) '@tailwindcss/typography': specifier: ^0.5.15 version: 0.5.15(tailwindcss@3.4.15) @@ -49,7 +49,7 @@ importers: version: 10.4.20(postcss@8.4.49) bits-ui: specifier: 1.0.0-next.64 - version: 1.0.0-next.64(svelte@5.2.9) + version: 1.0.0-next.64(svelte@5.2.10) clsx: specifier: ^2.1.1 version: 2.1.1 @@ -61,13 +61,13 @@ importers: version: 9.1.0(eslint@9.15.0(jiti@1.21.6)) eslint-plugin-svelte: specifier: ^2.46.0 - version: 2.46.0(eslint@9.15.0(jiti@1.21.6))(svelte@5.2.9) + version: 2.46.0(eslint@9.15.0(jiti@1.21.6))(svelte@5.2.10) globals: specifier: ^15.12.0 version: 15.12.0 lucide-svelte: specifier: ^0.462.0 - version: 0.462.0(svelte@5.2.9) + version: 0.462.0(svelte@5.2.10) maplibre-contour: specifier: ^0.0.8 version: 0.0.8 @@ -76,10 +76,10 @@ importers: version: 5.0.0-pre.8 mdsvex: specifier: ^0.12.3 - version: 0.12.3(svelte@5.2.9) + version: 0.12.3(svelte@5.2.10) mode-watcher: specifier: ^0.5.0 - version: 0.5.0(svelte@5.2.9) + version: 0.5.0(svelte@5.2.10) pmtiles: specifier: ^4.0.1 version: 4.0.1 @@ -88,22 +88,22 @@ importers: version: 3.4.1 prettier-plugin-svelte: specifier: ^3.3.2 - version: 3.3.2(prettier@3.4.1)(svelte@5.2.9) + version: 3.3.2(prettier@3.4.1)(svelte@5.2.10) prettier-plugin-tailwindcss: specifier: ^0.6.9 - version: 0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.1)(svelte@5.2.9))(prettier@3.4.1) + version: 0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.1)(svelte@5.2.10))(prettier@3.4.1) publint: specifier: ^0.2.12 version: 0.2.12 shiki: - specifier: ^1.23.1 - version: 1.23.1 + specifier: ^1.24.0 + version: 1.24.0 svelte: - specifier: ^5.2.9 - version: 5.2.9 + specifier: ^5.2.10 + version: 5.2.10 svelte-check: specifier: ^4.1.0 - version: 4.1.0(svelte@5.2.9)(typescript@5.7.2) + version: 4.1.0(svelte@5.2.10)(typescript@5.7.2) tailwind-merge: specifier: ^2.5.5 version: 2.5.5 @@ -116,6 +116,9 @@ importers: tailwindcss-animate: specifier: ^1.0.7 version: 1.0.7(tailwindcss@3.4.15) + three: + specifier: ^0.170.0 + version: 0.170.0 typescript: specifier: ^5.7.2 version: 5.7.2 @@ -545,8 +548,8 @@ packages: resolution: {integrity: sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==} engines: {node: '>=6.0.0'} - '@maplibre/maplibre-gl-style-spec@22.0.0': - resolution: {integrity: sha512-kD8TxV6CdgHIEeam4xODVJNAT3hcvRhRl5RcNiu+FPR/JoMsExAQTruBGtv+jLppj4xt9V56pG/SHK8z6fv6xA==} + '@maplibre/maplibre-gl-style-spec@22.0.1': + resolution: {integrity: sha512-V7bSw7Ui6+NhpeeuYqGoqamvKuy+3+uCvQ/t4ZJkwN8cx527CAlQQQ2kp+w5R9q+Tw6bUAH+fsq+mPEkicgT8g==} hasBin: true '@math.gl/core@4.1.0': @@ -687,17 +690,17 @@ packages: cpu: [x64] os: [win32] - '@shikijs/core@1.23.1': - resolution: {integrity: sha512-NuOVgwcHgVC6jBVH5V7iblziw6iQbWWHrj5IlZI3Fqu2yx9awH7OIQkXIcsHsUmY19ckwSgUMgrqExEyP5A0TA==} + '@shikijs/core@1.24.0': + resolution: {integrity: sha512-6pvdH0KoahMzr6689yh0QJ3rCgF4j1XsXRHNEeEN6M4xJTfQ6QPWrmHzIddotg+xPJUPEPzYzYCKzpYyhTI6Gw==} - '@shikijs/engine-javascript@1.23.1': - resolution: {integrity: sha512-i/LdEwT5k3FVu07SiApRFwRcSJs5QM9+tod5vYCPig1Ywi8GR30zcujbxGQFJHwYD7A5BUqagi8o5KS+LEVgBg==} + '@shikijs/engine-javascript@1.24.0': + resolution: {integrity: sha512-ZA6sCeSsF3Mnlxxr+4wGEJ9Tto4RHmfIS7ox8KIAbH0MTVUkw3roHPHZN+LlJMOHJJOVupe6tvuAzRpN8qK1vA==} - '@shikijs/engine-oniguruma@1.23.1': - resolution: {integrity: sha512-KQ+lgeJJ5m2ISbUZudLR1qHeH3MnSs2mjFg7bnencgs5jDVPeJ2NVDJ3N5ZHbcTsOIh0qIueyAJnwg7lg7kwXQ==} + '@shikijs/engine-oniguruma@1.24.0': + resolution: {integrity: sha512-Eua0qNOL73Y82lGA4GF5P+G2+VXX9XnuUxkiUuwcxQPH4wom+tE39kZpBFXfUuwNYxHSkrSxpB1p4kyRW0moSg==} - '@shikijs/types@1.23.1': - resolution: {integrity: sha512-98A5hGyEhzzAgQh2dAeHKrWW4HfCMeoFER2z16p5eJ+vmPeF6lZ/elEne6/UCU551F/WqkopqRsr1l2Yu6+A0g==} + '@shikijs/types@1.24.0': + resolution: {integrity: sha512-aptbEuq1Pk88DMlCe+FzXNnBZ17LCiLIGWAeCWhoFDzia5Q5Krx3DgnULLiouSdd6+LUM39XwXGppqYE0Ghtug==} '@shikijs/vscode-textmate@9.3.0': resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} @@ -1112,8 +1115,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.5.65: - resolution: {integrity: sha512-PWVzBjghx7/wop6n22vS2MLU8tKGd4Q91aCEGhG/TYmW6PP5OcSXcdnxTe1NNt0T66N8D6jxh4kC8UsdzOGaIw==} + electron-to-chromium@1.5.67: + resolution: {integrity: sha512-nz88NNBsD7kQSAGGJyp8hS6xSPtWwqNogA0mjtc2nUYeEf3nURK9qpV18TuBdDmEDgVWotS8Wkzf+V52dSQ/LQ==} emoji-regex-xs@1.0.0: resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} @@ -1188,8 +1191,8 @@ packages: jiti: optional: true - esm-env@1.1.4: - resolution: {integrity: sha512-oO82nKPHKkzIj/hbtuDYy/JHqBHFlMIW36SDiPCVsj87ntDLcWN+sJ1erdVryd4NxODacFTsdrIE3b7IamqbOg==} + esm-env@1.2.1: + resolution: {integrity: sha512-U9JedYYjCnadUlXk7e1Kr+aENQhtUaoaV9+gZm1T8LC/YBAPJx3NSPIAurFOC0U5vrdSevnUJS2/wUVxGwPhng==} espree@10.3.0: resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} @@ -1649,8 +1652,8 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - oniguruma-to-es@0.4.1: - resolution: {integrity: sha512-rNcEohFz095QKGRovP/yqPIKc+nP+Sjs4YTHMv33nMePGKrq/r2eu9Yh4646M5XluGJsUnmwoXuiXE69KDs+fQ==} + oniguruma-to-es@0.7.0: + resolution: {integrity: sha512-HRaRh09cE0gRS3+wi2zxekB+I5L8C/gN60S+vb11eADHUaB/q4u8wGGOX3GvwvitG8ixaeycZfeoyruKQzUgNg==} optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} @@ -1912,8 +1915,8 @@ packages: resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} engines: {node: '>= 14.16.0'} - regex-recursion@4.2.1: - resolution: {integrity: sha512-QHNZyZAeKdndD1G3bKAbBEKOSSK4KOHQrAJ01N1LJeb0SoH4DJIeFhp0uUpETgONifS4+P3sOgoA1dhzgrQvhA==} + regex-recursion@4.3.0: + resolution: {integrity: sha512-5LcLnizwjcQ2ALfOj95MjcatxyqF5RPySx9yT+PaXu3Gox2vyAtLDjHB8NTJLtMGkvyau6nI3CfpwFCjPUIs/A==} regex-utilities@2.3.0: resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} @@ -1975,8 +1978,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@1.23.1: - resolution: {integrity: sha512-8kxV9TH4pXgdKGxNOkrSMydn1Xf6It8lsle0fiqxf7a1149K1WGtdOu3Zb91T5r1JpvRPxqxU3C2XdZZXQnrig==} + shiki@1.24.0: + resolution: {integrity: sha512-qIneep7QRwxRd5oiHb8jaRzH15V/S8F3saCXOdjwRLgozZJr5x2yeBhQtqkO3FSzQDwYEFAYuifg4oHjpDghrg==} siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} @@ -2073,8 +2076,8 @@ packages: svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0 typescript: ^4.9.4 || ^5.0.0 - svelte@5.2.9: - resolution: {integrity: sha512-LjO7R6K8FI8dA3l+4CcsbJ3djIe2TtokHGzfpDTro5g8nworMbTz9alCR95EQXGsqlzIAvqJtZ7Yy0o33lL09Q==} + svelte@5.2.10: + resolution: {integrity: sha512-ON0OyO7vOmSjTc9mLjusu3vf1I7BvjovbiRB7j84F1WZMXV6dR+Tj4btIzxQxMHfzbGskaFmRa7qjgmBSVBnhQ==} engines: {node: '>=18'} tailwind-merge@2.5.5: @@ -2103,6 +2106,9 @@ packages: thenify@3.3.1: resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + three@0.170.0: + resolution: {integrity: sha512-FQK+LEpYc0fBD+J8g6oSEyyNzjp+Q7Ks1C568WWaoMRLW+TkNNWmenWeGgJjV105Gd+p/2ql1ZcjYvNiPZBhuQ==} + tiny-glob@0.2.9: resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} @@ -2138,8 +2144,8 @@ packages: trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} - ts-api-utils@1.4.2: - resolution: {integrity: sha512-ZF5gQIQa/UmzfvxbHZI3JXN0/Jt+vnAfAviNRAMc491laiK6YCLpCW9ft8oaCRFOTxCZtUTE6XB0ZQAe3olntw==} + ts-api-utils@1.4.3: + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' @@ -2751,7 +2757,7 @@ snapshots: '@mapbox/whoots-js@3.1.0': {} - '@maplibre/maplibre-gl-style-spec@22.0.0': + '@maplibre/maplibre-gl-style-spec@22.0.1': dependencies: '@mapbox/jsonlint-lines-primitives': 2.0.2 '@mapbox/unitbezier': 0.0.1 @@ -2860,45 +2866,45 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.27.4': optional: true - '@shikijs/core@1.23.1': + '@shikijs/core@1.24.0': dependencies: - '@shikijs/engine-javascript': 1.23.1 - '@shikijs/engine-oniguruma': 1.23.1 - '@shikijs/types': 1.23.1 + '@shikijs/engine-javascript': 1.24.0 + '@shikijs/engine-oniguruma': 1.24.0 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 hast-util-to-html: 9.0.3 - '@shikijs/engine-javascript@1.23.1': + '@shikijs/engine-javascript@1.24.0': dependencies: - '@shikijs/types': 1.23.1 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 - oniguruma-to-es: 0.4.1 + oniguruma-to-es: 0.7.0 - '@shikijs/engine-oniguruma@1.23.1': + '@shikijs/engine-oniguruma@1.24.0': dependencies: - '@shikijs/types': 1.23.1 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 - '@shikijs/types@1.23.1': + '@shikijs/types@1.24.0': dependencies: '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 '@shikijs/vscode-textmate@9.3.0': {} - '@sveltejs/adapter-auto@3.3.1(@sveltejs/kit@2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11))(svelte@5.2.9)(vite@5.4.11))': + '@sveltejs/adapter-auto@3.3.1(@sveltejs/kit@2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11))(svelte@5.2.10)(vite@5.4.11))': dependencies: - '@sveltejs/kit': 2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11))(svelte@5.2.9)(vite@5.4.11) + '@sveltejs/kit': 2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11))(svelte@5.2.10)(vite@5.4.11) import-meta-resolve: 4.1.0 - '@sveltejs/kit@2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11))(svelte@5.2.9)(vite@5.4.11)': + '@sveltejs/kit@2.8.5(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11))(svelte@5.2.10)(vite@5.4.11)': dependencies: - '@sveltejs/vite-plugin-svelte': 4.0.2(svelte@5.2.9)(vite@5.4.11) + '@sveltejs/vite-plugin-svelte': 4.0.2(svelte@5.2.10)(vite@5.4.11) '@types/cookie': 0.6.0 cookie: 0.6.0 devalue: 5.1.1 - esm-env: 1.1.4 + esm-env: 1.2.1 import-meta-resolve: 4.1.0 kleur: 4.1.5 magic-string: 0.30.14 @@ -2906,38 +2912,38 @@ snapshots: sade: 1.8.1 set-cookie-parser: 2.7.1 sirv: 3.0.0 - svelte: 5.2.9 + svelte: 5.2.10 tiny-glob: 0.2.9 vite: 5.4.11 - '@sveltejs/package@2.3.7(svelte@5.2.9)(typescript@5.7.2)': + '@sveltejs/package@2.3.7(svelte@5.2.10)(typescript@5.7.2)': dependencies: chokidar: 4.0.1 kleur: 4.1.5 sade: 1.8.1 semver: 7.6.3 - svelte: 5.2.9 - svelte2tsx: 0.7.28(svelte@5.2.9)(typescript@5.7.2) + svelte: 5.2.10 + svelte2tsx: 0.7.28(svelte@5.2.10)(typescript@5.7.2) transitivePeerDependencies: - typescript - '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11))(svelte@5.2.9)(vite@5.4.11)': + '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11))(svelte@5.2.10)(vite@5.4.11)': dependencies: - '@sveltejs/vite-plugin-svelte': 4.0.2(svelte@5.2.9)(vite@5.4.11) + '@sveltejs/vite-plugin-svelte': 4.0.2(svelte@5.2.10)(vite@5.4.11) debug: 4.3.7 - svelte: 5.2.9 + svelte: 5.2.10 vite: 5.4.11 transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11)': + '@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11)': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.9)(vite@5.4.11))(svelte@5.2.9)(vite@5.4.11) + '@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.2.10)(vite@5.4.11))(svelte@5.2.10)(vite@5.4.11) debug: 4.3.7 deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.14 - svelte: 5.2.9 + svelte: 5.2.10 vite: 5.4.11 vitefu: 1.0.4(vite@5.4.11) transitivePeerDependencies: @@ -3014,7 +3020,7 @@ snapshots: graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 1.4.2(typescript@5.7.2) + ts-api-utils: 1.4.3(typescript@5.7.2) optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: @@ -3044,7 +3050,7 @@ snapshots: '@typescript-eslint/utils': 8.16.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.7.2) debug: 4.3.7 eslint: 9.15.0(jiti@1.21.6) - ts-api-utils: 1.4.2(typescript@5.7.2) + ts-api-utils: 1.4.3(typescript@5.7.2) optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: @@ -3061,7 +3067,7 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.4.2(typescript@5.7.2) + ts-api-utils: 1.4.3(typescript@5.7.2) optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: @@ -3200,15 +3206,15 @@ snapshots: binary-extensions@2.3.0: {} - bits-ui@1.0.0-next.64(svelte@5.2.9): + bits-ui@1.0.0-next.64(svelte@5.2.10): dependencies: '@floating-ui/core': 1.6.8 '@floating-ui/dom': 1.6.12 '@internationalized/date': 3.6.0 - esm-env: 1.1.4 - runed: 0.15.4(svelte@5.2.9) - svelte: 5.2.9 - svelte-toolbelt: 0.4.6(svelte@5.2.9) + esm-env: 1.2.1 + runed: 0.15.4(svelte@5.2.10) + svelte: 5.2.10 + svelte-toolbelt: 0.4.6(svelte@5.2.10) brace-expansion@1.1.11: dependencies: @@ -3226,7 +3232,7 @@ snapshots: browserslist@4.24.2: dependencies: caniuse-lite: 1.0.30001684 - electron-to-chromium: 1.5.65 + electron-to-chromium: 1.5.67 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.2) @@ -3329,7 +3335,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.5.65: {} + electron-to-chromium@1.5.67: {} emoji-regex-xs@1.0.0: {} @@ -3378,7 +3384,7 @@ snapshots: dependencies: eslint: 9.15.0(jiti@1.21.6) - eslint-plugin-svelte@2.46.0(eslint@9.15.0(jiti@1.21.6))(svelte@5.2.9): + eslint-plugin-svelte@2.46.0(eslint@9.15.0(jiti@1.21.6))(svelte@5.2.10): dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.15.0(jiti@1.21.6)) '@jridgewell/sourcemap-codec': 1.5.0 @@ -3391,9 +3397,9 @@ snapshots: postcss-safe-parser: 6.0.0(postcss@8.4.49) postcss-selector-parser: 6.1.2 semver: 7.6.3 - svelte-eslint-parser: 0.43.0(svelte@5.2.9) + svelte-eslint-parser: 0.43.0(svelte@5.2.10) optionalDependencies: - svelte: 5.2.9 + svelte: 5.2.10 transitivePeerDependencies: - ts-node @@ -3452,7 +3458,7 @@ snapshots: transitivePeerDependencies: - supports-color - esm-env@1.1.4: {} + esm-env@1.2.1: {} espree@10.3.0: dependencies: @@ -3740,9 +3746,9 @@ snapshots: lru-cache@10.4.3: {} - lucide-svelte@0.462.0(svelte@5.2.9): + lucide-svelte@0.462.0(svelte@5.2.10): dependencies: - svelte: 5.2.9 + svelte: 5.2.10 magic-string@0.30.14: dependencies: @@ -3759,7 +3765,7 @@ snapshots: '@mapbox/unitbezier': 0.0.1 '@mapbox/vector-tile': 1.3.1 '@mapbox/whoots-js': 3.1.0 - '@maplibre/maplibre-gl-style-spec': 22.0.0 + '@maplibre/maplibre-gl-style-spec': 22.0.1 '@types/geojson': 7946.0.14 '@types/geojson-vt': 3.2.5 '@types/mapbox__point-geometry': 0.1.4 @@ -3791,12 +3797,12 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 - mdsvex@0.12.3(svelte@5.2.9): + mdsvex@0.12.3(svelte@5.2.10): dependencies: '@types/unist': 2.0.11 prism-svelte: 0.4.7 prismjs: 1.29.0 - svelte: 5.2.9 + svelte: 5.2.10 vfile-message: 2.0.4 merge2@1.4.1: {} @@ -3844,9 +3850,9 @@ snapshots: '@types/hammerjs': 2.0.46 hammerjs: 2.0.8 - mode-watcher@0.5.0(svelte@5.2.9): + mode-watcher@0.5.0(svelte@5.2.10): dependencies: - svelte: 5.2.9 + svelte: 5.2.10 mri@1.2.0: {} @@ -3898,11 +3904,11 @@ snapshots: dependencies: wrappy: 1.0.2 - oniguruma-to-es@0.4.1: + oniguruma-to-es@0.7.0: dependencies: emoji-regex-xs: 1.0.0 regex: 5.0.2 - regex-recursion: 4.2.1 + regex-recursion: 4.3.0 optionator@0.9.4: dependencies: @@ -4035,16 +4041,16 @@ snapshots: prelude-ls@1.2.1: {} - prettier-plugin-svelte@3.3.2(prettier@3.4.1)(svelte@5.2.9): + prettier-plugin-svelte@3.3.2(prettier@3.4.1)(svelte@5.2.10): dependencies: prettier: 3.4.1 - svelte: 5.2.9 + svelte: 5.2.10 - prettier-plugin-tailwindcss@0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.1)(svelte@5.2.9))(prettier@3.4.1): + prettier-plugin-tailwindcss@0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.1)(svelte@5.2.10))(prettier@3.4.1): dependencies: prettier: 3.4.1 optionalDependencies: - prettier-plugin-svelte: 3.3.2(prettier@3.4.1)(svelte@5.2.9) + prettier-plugin-svelte: 3.3.2(prettier@3.4.1)(svelte@5.2.10) prettier@3.4.1: {} @@ -4078,7 +4084,7 @@ snapshots: readdirp@4.0.2: {} - regex-recursion@4.2.1: + regex-recursion@4.3.0: dependencies: regex-utilities: 2.3.0 @@ -4130,10 +4136,10 @@ snapshots: dependencies: queue-microtask: 1.2.3 - runed@0.15.4(svelte@5.2.9): + runed@0.15.4(svelte@5.2.10): dependencies: - esm-env: 1.1.4 - svelte: 5.2.9 + esm-env: 1.2.1 + svelte: 5.2.10 rw@1.3.3: {} @@ -4153,12 +4159,12 @@ snapshots: shebang-regex@3.0.0: {} - shiki@1.23.1: + shiki@1.24.0: dependencies: - '@shikijs/core': 1.23.1 - '@shikijs/engine-javascript': 1.23.1 - '@shikijs/engine-oniguruma': 1.23.1 - '@shikijs/types': 1.23.1 + '@shikijs/core': 1.24.0 + '@shikijs/engine-javascript': 1.24.0 + '@shikijs/engine-oniguruma': 1.24.0 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 @@ -4231,19 +4237,19 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte-check@4.1.0(svelte@5.2.9)(typescript@5.7.2): + svelte-check@4.1.0(svelte@5.2.10)(typescript@5.7.2): dependencies: '@jridgewell/trace-mapping': 0.3.25 chokidar: 4.0.1 fdir: 6.4.2 picocolors: 1.1.1 sade: 1.8.1 - svelte: 5.2.9 + svelte: 5.2.10 typescript: 5.7.2 transitivePeerDependencies: - picomatch - svelte-eslint-parser@0.43.0(svelte@5.2.9): + svelte-eslint-parser@0.43.0(svelte@5.2.10): dependencies: eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 @@ -4251,22 +4257,22 @@ snapshots: postcss: 8.4.49 postcss-scss: 4.0.9(postcss@8.4.49) optionalDependencies: - svelte: 5.2.9 + svelte: 5.2.10 - svelte-toolbelt@0.4.6(svelte@5.2.9): + svelte-toolbelt@0.4.6(svelte@5.2.10): dependencies: clsx: 2.1.1 style-to-object: 1.0.8 - svelte: 5.2.9 + svelte: 5.2.10 - svelte2tsx@0.7.28(svelte@5.2.9)(typescript@5.7.2): + svelte2tsx@0.7.28(svelte@5.2.10)(typescript@5.7.2): dependencies: dedent-js: 1.0.1 pascal-case: 3.1.2 - svelte: 5.2.9 + svelte: 5.2.10 typescript: 5.7.2 - svelte@5.2.9: + svelte@5.2.10: dependencies: '@ampproject/remapping': 2.3.0 '@jridgewell/sourcemap-codec': 1.5.0 @@ -4275,7 +4281,7 @@ snapshots: acorn-typescript: 1.4.13(acorn@8.14.0) aria-query: 5.3.2 axobject-query: 4.1.0 - esm-env: 1.1.4 + esm-env: 1.2.1 esrap: 1.2.2 is-reference: 3.0.3 locate-character: 3.0.0 @@ -4328,6 +4334,8 @@ snapshots: dependencies: any-promise: 1.3.0 + three@0.170.0: {} + tiny-glob@0.2.9: dependencies: globalyzer: 0.1.0 @@ -4353,7 +4361,7 @@ snapshots: trim-lines@3.0.1: {} - ts-api-utils@1.4.2(typescript@5.7.2): + ts-api-utils@1.4.3(typescript@5.7.2): dependencies: typescript: 5.7.2 diff --git a/src/content/examples/Index.svelte b/src/content/examples/Index.svelte index 4e99f94..f99ac28 100644 --- a/src/content/examples/Index.svelte +++ b/src/content/examples/Index.svelte @@ -8,26 +8,38 @@ '/examples/plain': 'Plain Map', '/examples/complex': 'Complex', '/examples/basestyle': 'Change Base Style', - '/examples/side-by-side': 'Side by Side', - '/examples/terrain': '3D Terrain', '/examples/hover-styles': 'Hover Styles', + '/examples/terrain': '3D Terrain', '/examples/clusters': 'Clusters', '/examples/limit-interaction': 'Limit Map Interactions', - '/examples/dynamic-image': 'Dynamic Image', '/examples/animate-images': 'Animate a Series of Images', '/examples/video-on-a-map': 'Video on a Map', - '/examples/canvas-source': 'Canvas Source', + '/examples/image-loader': 'Load Images from URLs', '/examples/fullscreen': 'Fullscreen', '/examples/geolocate': 'Locate the User', - '/examples/image-loader': 'Load Images from URLs', + '/examples/canvas-source': 'Canvas Source' + } + }, + { + title: 'Techniques', + items: { + '/examples/side-by-side': 'Side by Side' + } + }, + { + title: 'Advanced', + items: { '/examples/custom-control': 'Custom Control', '/examples/custom-protocol': 'Custom Protocols', - '/examples/custom-layer': 'Custom Layer' + '/examples/custom-layer': 'Custom Layer', + '/examples/dynamic-image': 'Dynamic Image', + '/examples/threejs-model': '3D model with three.js' } }, { title: 'Extensions', items: { + '/examples/pmtiles': 'PMTiles Protocol', '/examples/deckgl-overlay': 'deck.gl Overlay', '/examples/contour': 'Contour Lines' } diff --git a/src/content/examples/pmtiles/PMTiles.svelte b/src/content/examples/pmtiles/PMTiles.svelte new file mode 100644 index 0000000..06e7a5e --- /dev/null +++ b/src/content/examples/pmtiles/PMTiles.svelte @@ -0,0 +1,39 @@ + + + + + + + diff --git a/src/content/examples/pmtiles/content.svelte.md b/src/content/examples/pmtiles/content.svelte.md new file mode 100644 index 0000000..3723590 --- /dev/null +++ b/src/content/examples/pmtiles/content.svelte.md @@ -0,0 +1,14 @@ +--- +title: PMTiles Protocol +description: Uses the PMTiles plugin and protocol to present a map. +--- + + + + + + diff --git a/src/content/examples/threejs-model/CustomLayer.svelte b/src/content/examples/threejs-model/CustomLayer.svelte new file mode 100644 index 0000000..86344a4 --- /dev/null +++ b/src/content/examples/threejs-model/CustomLayer.svelte @@ -0,0 +1,78 @@ + + + + + diff --git a/src/content/examples/threejs-model/content.svelte.md b/src/content/examples/threejs-model/content.svelte.md new file mode 100644 index 0000000..8e4c984 --- /dev/null +++ b/src/content/examples/threejs-model/content.svelte.md @@ -0,0 +1,15 @@ +--- +title: 3D model with three.js +description: Use a custom style layer with three.js to add a 3D model to the map. +original: https://maplibre.org/maplibre-gl-js/docs/examples/add-3d-model/ +--- + + + + + + diff --git a/src/routes/components/[slug]/+page.svelte b/src/routes/components/[slug]/+page.svelte index a8e3c0d..7052126 100644 --- a/src/routes/components/[slug]/+page.svelte +++ b/src/routes/components/[slug]/+page.svelte @@ -11,7 +11,7 @@

- +