diff --git a/.changeset/thin-bears-train.md b/.changeset/thin-bears-train.md new file mode 100644 index 0000000..3cfc1a7 --- /dev/null +++ b/.changeset/thin-bears-train.md @@ -0,0 +1,5 @@ +--- +"react-three-map": patch +--- + +Support maplibre@v5 diff --git a/README.md b/README.md index ab09603..744456b 100644 --- a/README.md +++ b/README.md @@ -73,7 +73,9 @@ import { Canvas } from "react-three-map/maplibre" function BasicExample() { return = ({ return
(({ } }, -Infinity) - const onRender = useFunction((viewProjMx: Matrix4Tuple) => { + const onRender = useFunction((viewProjMx: Matrix4Tuple | {defaultProjectionData: {mainMatrix: Record}}) => { map.triggerRepaint = triggerRepaintOff; if (threeCanvas.width !== mapCanvas.width || threeCanvas.height !== mapCanvas.height) { @@ -70,7 +70,8 @@ export const SyncCameraFC = memo(({ ); } - r3m.viewProjMx = viewProjMx; + const pVMx = 'defaultProjectionData' in viewProjMx ? Object.values(viewProjMx.defaultProjectionData.mainMatrix) : viewProjMx; + r3m.viewProjMx = pVMx as Matrix4Tuple; if (!ready.current && onReady) { ready.current = true; onReady(); diff --git a/stories/package.json b/stories/package.json index b9e26eb..99d79ae 100644 --- a/stories/package.json +++ b/stories/package.json @@ -16,7 +16,7 @@ "leva": "^0.9.35", "luxon": "^3.4.4", "mapbox-gl": "^3.9.4", - "maplibre-gl": "^4.7.1", + "maplibre-gl": "^5.4.0", "react": "^18.2.0", "react-dom": "^18.2.0", "react-map-gl": "^8.0.1", diff --git a/stories/src/canvas/maplibre.stories.tsx b/stories/src/canvas/maplibre.stories.tsx index 6eaee01..f8141d3 100644 --- a/stories/src/canvas/maplibre.stories.tsx +++ b/stories/src/canvas/maplibre.stories.tsx @@ -13,7 +13,9 @@ export function Maplibre() {
> = ({ return