react-three-map 0.7.2 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/README.md +57 -4
- package/dist/cjs/main.js +386 -181
- package/dist/es/main.mjs +9 -3
- package/dist/es/main.mjs.map +1 -1
- package/dist/es/main10.mjs +8 -20
- package/dist/es/main10.mjs.map +1 -1
- package/dist/es/main11.mjs +33 -19
- package/dist/es/main11.mjs.map +1 -1
- package/dist/es/main12.mjs +11 -87
- package/dist/es/main12.mjs.map +1 -1
- package/dist/es/main13.mjs +23 -9
- package/dist/es/main13.mjs.map +1 -1
- package/dist/es/main14.mjs +2 -68
- package/dist/es/main14.mjs.map +1 -1
- package/dist/es/main15.mjs +33 -0
- package/dist/es/main15.mjs.map +1 -0
- package/dist/es/main16.mjs +26 -0
- package/dist/es/main16.mjs.map +1 -0
- package/dist/es/main17.mjs +98 -0
- package/dist/es/main17.mjs.map +1 -0
- package/dist/es/main18.mjs +66 -0
- package/dist/es/main18.mjs.map +1 -0
- package/dist/es/main19.mjs +23 -0
- package/dist/es/main19.mjs.map +1 -0
- package/dist/es/main2.mjs.map +1 -1
- package/dist/es/main20.mjs +27 -0
- package/dist/es/main20.mjs.map +1 -0
- package/dist/es/main21.mjs +19 -0
- package/dist/es/main21.mjs.map +1 -0
- package/dist/es/main22.mjs +83 -0
- package/dist/es/main22.mjs.map +1 -0
- package/dist/es/main3.mjs +43 -50
- package/dist/es/main3.mjs.map +1 -1
- package/dist/es/main4.mjs +50 -24
- package/dist/es/main4.mjs.map +1 -1
- package/dist/es/main5.mjs +12 -3
- package/dist/es/main5.mjs.map +1 -1
- package/dist/es/main6.mjs +19 -34
- package/dist/es/main6.mjs.map +1 -1
- package/dist/es/main7.mjs +10 -11
- package/dist/es/main7.mjs.map +1 -1
- package/dist/es/main8.mjs +17 -16
- package/dist/es/main8.mjs.map +1 -1
- package/dist/es/main9.mjs +27 -15
- package/dist/es/main9.mjs.map +1 -1
- package/dist/maplibre/cjs/main.js +386 -181
- package/dist/maplibre/es/main.mjs +9 -3
- package/dist/maplibre/es/main.mjs.map +1 -1
- package/dist/maplibre/es/main10.mjs +9 -20
- package/dist/maplibre/es/main10.mjs.map +1 -1
- package/dist/maplibre/es/main11.mjs +33 -14
- package/dist/maplibre/es/main11.mjs.map +1 -1
- package/dist/maplibre/es/main12.mjs +11 -87
- package/dist/maplibre/es/main12.mjs.map +1 -1
- package/dist/maplibre/es/main13.mjs +23 -9
- package/dist/maplibre/es/main13.mjs.map +1 -1
- package/dist/maplibre/es/main14.mjs +2 -68
- package/dist/maplibre/es/main14.mjs.map +1 -1
- package/dist/maplibre/es/main15.mjs +33 -0
- package/dist/maplibre/es/main15.mjs.map +1 -0
- package/dist/maplibre/es/main16.mjs +26 -0
- package/dist/maplibre/es/main16.mjs.map +1 -0
- package/dist/maplibre/es/main17.mjs +98 -0
- package/dist/maplibre/es/main17.mjs.map +1 -0
- package/dist/maplibre/es/main18.mjs +66 -0
- package/dist/maplibre/es/main18.mjs.map +1 -0
- package/dist/maplibre/es/main19.mjs +23 -0
- package/dist/maplibre/es/main19.mjs.map +1 -0
- package/dist/maplibre/es/main2.mjs.map +1 -1
- package/dist/maplibre/es/main20.mjs +27 -0
- package/dist/maplibre/es/main20.mjs.map +1 -0
- package/dist/maplibre/es/main21.mjs +19 -0
- package/dist/maplibre/es/main21.mjs.map +1 -0
- package/dist/maplibre/es/main22.mjs +83 -0
- package/dist/maplibre/es/main22.mjs.map +1 -0
- package/dist/maplibre/es/main3.mjs +43 -50
- package/dist/maplibre/es/main3.mjs.map +1 -1
- package/dist/maplibre/es/main4.mjs +50 -24
- package/dist/maplibre/es/main4.mjs.map +1 -1
- package/dist/maplibre/es/main5.mjs +12 -3
- package/dist/maplibre/es/main5.mjs.map +1 -1
- package/dist/maplibre/es/main6.mjs +19 -34
- package/dist/maplibre/es/main6.mjs.map +1 -1
- package/dist/maplibre/es/main7.mjs +10 -11
- package/dist/maplibre/es/main7.mjs.map +1 -1
- package/dist/maplibre/es/main8.mjs +17 -16
- package/dist/maplibre/es/main8.mjs.map +1 -1
- package/dist/maplibre/es/main9.mjs +25 -19
- package/dist/maplibre/es/main9.mjs.map +1 -1
- package/dist/maplibre/types/api/canvas-props.d.ts +4 -4
- package/dist/maplibre/types/api/coords-to-vector-3.d.ts +3 -0
- package/dist/maplibre/types/api/coords.d.ts +5 -0
- package/dist/maplibre/types/api/index.d.ts +6 -0
- package/dist/maplibre/types/api/near-coordinates.d.ts +3 -0
- package/dist/maplibre/types/api/use-map.d.ts +1 -1
- package/dist/maplibre/types/api/vector-3-to-coords.d.ts +3 -0
- package/dist/maplibre/types/core/canvas-in-layer/use-canvas-in-layer.d.ts +11 -0
- package/dist/maplibre/types/core/canvas-in-layer/use-render.d.ts +12 -0
- package/dist/maplibre/types/core/canvas-in-layer/use-root.d.ts +7 -0
- package/dist/maplibre/types/core/canvas-overlay/canvas-portal.d.ts +11 -0
- package/dist/maplibre/types/core/canvas-overlay/init-canvas-fc.d.ts +12 -0
- package/dist/maplibre/types/core/canvas-overlay/init-r3m.d.ts +10 -0
- package/dist/maplibre/types/core/canvas-overlay/render.d.ts +1 -0
- package/dist/maplibre/types/core/canvas-overlay/sync-camera-fc.d.ts +14 -0
- package/dist/maplibre/types/core/coords-to-matrix.d.ts +2 -4
- package/dist/maplibre/types/core/earth-radius.d.ts +1 -0
- package/dist/maplibre/types/core/events.d.ts +4 -0
- package/dist/maplibre/types/core/use-coords-to-matrix.d.ts +5 -0
- package/dist/maplibre/types/core/use-coords.d.ts +7 -5
- package/dist/maplibre/types/core/use-r3m.d.ts +22 -0
- package/dist/maplibre/types/{maplibre → mapbox}/canvas.d.ts +1 -1
- package/dist/maplibre/types/maplibre.index.d.ts +3 -4
- package/dist/types/api/canvas-props.d.ts +4 -4
- package/dist/types/api/coords-to-vector-3.d.ts +3 -0
- package/dist/types/api/coords.d.ts +5 -0
- package/dist/types/api/index.d.ts +6 -0
- package/dist/types/api/near-coordinates.d.ts +3 -0
- package/dist/types/api/use-map.d.ts +1 -1
- package/dist/types/api/vector-3-to-coords.d.ts +3 -0
- package/dist/types/core/canvas-in-layer/use-canvas-in-layer.d.ts +11 -0
- package/dist/types/core/canvas-in-layer/use-render.d.ts +12 -0
- package/dist/types/core/canvas-in-layer/use-root.d.ts +7 -0
- package/dist/types/core/canvas-overlay/canvas-portal.d.ts +11 -0
- package/dist/types/core/canvas-overlay/init-canvas-fc.d.ts +12 -0
- package/dist/types/core/canvas-overlay/init-r3m.d.ts +10 -0
- package/dist/types/core/canvas-overlay/render.d.ts +1 -0
- package/dist/types/core/canvas-overlay/sync-camera-fc.d.ts +14 -0
- package/dist/types/core/coords-to-matrix.d.ts +2 -4
- package/dist/types/core/earth-radius.d.ts +1 -0
- package/dist/types/core/events.d.ts +4 -0
- package/dist/types/core/use-coords-to-matrix.d.ts +5 -0
- package/dist/types/core/use-coords.d.ts +7 -5
- package/dist/types/core/use-r3m.d.ts +22 -0
- package/dist/types/mapbox.index.d.ts +2 -3
- package/package.json +12 -12
- package/stories/package.json +15 -8
- package/stories/yarn.lock +2033 -1194
- package/vitest.config.ts +1 -5
- package/dist/maplibre/types/core/create-events.d.ts +0 -3
- package/dist/maplibre/types/core/store.d.ts +0 -12
- package/dist/maplibre/types/core/use-canvas.d.ts +0 -11
- package/dist/maplibre/types/core/use-create-root.d.ts +0 -13
- package/dist/maplibre/types/core/use-on-add.d.ts +0 -10
- package/dist/maplibre/types/core/use-render.d.ts +0 -4
- package/dist/types/core/create-events.d.ts +0 -3
- package/dist/types/core/store.d.ts +0 -12
- package/dist/types/core/use-canvas.d.ts +0 -11
- package/dist/types/core/use-create-root.d.ts +0 -13
- package/dist/types/core/use-on-add.d.ts +0 -10
- package/dist/types/core/use-render.d.ts +0 -4
package/dist/es/main7.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main7.mjs","sources":["../../src/
|
|
1
|
+
{"version":3,"file":"main7.mjs","sources":["../../src/api/vector-3-to-coords.ts"],"sourcesContent":["import { MathUtils, Vector3Tuple } from \"three\";\nimport { Coords } from \"./coords\";\nimport { earthRadius } from \"../core/earth-radius\";\n\nexport function vector3ToCoords(position: Vector3Tuple, origin: Coords): Coords {\n const [x, y, z] = position;\n const latitude = origin.latitude + (-z / earthRadius) * MathUtils.RAD2DEG;\n const longitude = origin.longitude + (x / earthRadius) * MathUtils.RAD2DEG / Math.cos(origin.latitude * MathUtils.DEG2RAD);\n const altitude = (origin.altitude || 0) + y;\n const coords: Coords = { latitude, longitude, altitude };\n return coords;\n}"],"names":[],"mappings":";;AAIgB,SAAA,gBAAgB,UAAwB,QAAwB;AAC9E,QAAM,CAAC,GAAG,GAAG,CAAC,IAAI;AAClB,QAAM,WAAW,OAAO,WAAY,CAAC,IAAI,cAAe,UAAU;AAClE,QAAM,YAAY,OAAO,YAAa,IAAI,cAAe,UAAU,UAAU,KAAK,IAAI,OAAO,WAAW,UAAU,OAAO;AACnH,QAAA,YAAY,OAAO,YAAY,KAAK;AAC1C,QAAM,SAAiB,EAAE,UAAU,WAAW,SAAS;AAChD,SAAA;AACT;"}
|
package/dist/es/main8.mjs
CHANGED
|
@@ -1,25 +1,26 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
function
|
|
5
|
-
longitude,
|
|
6
|
-
|
|
7
|
-
altitude = 0,
|
|
8
|
-
frameloop = "always",
|
|
9
|
-
fromLngLat,
|
|
10
|
-
...renderProps
|
|
11
|
-
}) {
|
|
12
|
-
const m4 = useCoords({
|
|
1
|
+
import { useCoordsToMatrix } from "./main12.mjs";
|
|
2
|
+
import { useRender } from "./main16.mjs";
|
|
3
|
+
import { useRoot } from "./main17.mjs";
|
|
4
|
+
function useCanvasInLayer(props, fromLngLat, map) {
|
|
5
|
+
const { latitude, longitude, altitude, frameloop } = props;
|
|
6
|
+
const origin = useCoordsToMatrix({
|
|
13
7
|
latitude,
|
|
14
8
|
longitude,
|
|
15
9
|
altitude,
|
|
16
10
|
fromLngLat
|
|
17
11
|
});
|
|
18
|
-
const {
|
|
19
|
-
const render = useRender(
|
|
20
|
-
return {
|
|
12
|
+
const { onRemove, useThree, r3m } = useRoot(fromLngLat, map, props);
|
|
13
|
+
const render = useRender({ origin, frameloop, useThree, map, r3m });
|
|
14
|
+
return {
|
|
15
|
+
id: props.id,
|
|
16
|
+
beforeId: props.beforeId,
|
|
17
|
+
onRemove,
|
|
18
|
+
render,
|
|
19
|
+
type: "custom",
|
|
20
|
+
renderingMode: "3d"
|
|
21
|
+
};
|
|
21
22
|
}
|
|
22
23
|
export {
|
|
23
|
-
|
|
24
|
+
useCanvasInLayer
|
|
24
25
|
};
|
|
25
26
|
//# sourceMappingURL=main8.mjs.map
|
package/dist/es/main8.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main8.mjs","sources":["../../src/core/use-canvas.
|
|
1
|
+
{"version":3,"file":"main8.mjs","sources":["../../src/core/canvas-in-layer/use-canvas-in-layer.tsx"],"sourcesContent":["import { CanvasProps } from \"../../api/canvas-props\";\nimport { FromLngLat, MapInstance } from \"../generic-map\";\nimport { useCoordsToMatrix } from \"../use-coords-to-matrix\";\nimport { useRender } from \"./use-render\";\nimport { useRoot } from \"./use-root\";\n\n/** get all the properties that you need to render as a map `<Layer>` */\nexport function useCanvasInLayer(props: CanvasProps,fromLngLat: FromLngLat, map: MapInstance) {\n\n const {latitude, longitude, altitude, frameloop } = props;\n\n const origin = useCoordsToMatrix({\n latitude, longitude, altitude, fromLngLat,\n });\n\n const { onRemove, useThree, r3m } = useRoot(fromLngLat, map, props);\n \n const render = useRender({origin, frameloop, useThree, map, r3m});\n \n return {\n id: props.id,\n beforeId: props.beforeId,\n onRemove,\n render,\n type: 'custom',\n renderingMode: '3d'\n } as const\n\n}"],"names":[],"mappings":";;;AAOgB,SAAA,iBAAiB,OAAmB,YAAwB,KAAkB;AAE5F,QAAM,EAAC,UAAU,WAAW,UAAU,cAAc;AAElD,QAAM,SAAS,kBAAkB;AAAA,IAC/B;AAAA,IAAU;AAAA,IAAW;AAAA,IAAU;AAAA,EAAA,CAChC;AAEK,QAAA,EAAE,UAAU,UAAU,IAAA,IAAQ,QAAQ,YAAY,KAAK,KAAK;AAE5D,QAAA,SAAS,UAAU,EAAC,QAAQ,WAAW,UAAU,KAAK,KAAI;AAEzD,SAAA;AAAA,IACL,IAAI,MAAM;AAAA,IACV,UAAU,MAAM;AAAA,IAChB;AAAA,IACA;AAAA,IACA,MAAM;AAAA,IACN,eAAe;AAAA,EAAA;AAGrB;"}
|
package/dist/es/main9.mjs
CHANGED
|
@@ -1,18 +1,30 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
import { jsx, Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { memo, useState, useEffect } from "react";
|
|
3
|
+
import { createPortal } from "react-dom";
|
|
4
|
+
import { CanvasPortal } from "./main18.mjs";
|
|
5
|
+
const InitCanvasFC = memo((props) => {
|
|
6
|
+
const canvas = props.map.getCanvas();
|
|
7
|
+
const [el] = useState(() => {
|
|
8
|
+
const el2 = document.createElement("div");
|
|
9
|
+
el2.style.position = "absolute";
|
|
10
|
+
el2.style.top = "0";
|
|
11
|
+
el2.style.bottom = "0";
|
|
12
|
+
el2.style.left = "0";
|
|
13
|
+
el2.style.right = "0";
|
|
14
|
+
el2.style.pointerEvents = "none";
|
|
15
|
+
return el2;
|
|
16
|
+
});
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
const parent = canvas.parentElement;
|
|
19
|
+
parent.appendChild(el);
|
|
20
|
+
return () => {
|
|
21
|
+
parent.removeChild(el);
|
|
22
|
+
};
|
|
23
|
+
}, []);
|
|
24
|
+
return /* @__PURE__ */ jsx(Fragment, { children: createPortal(/* @__PURE__ */ jsx(CanvasPortal, { ...props }), el) });
|
|
25
|
+
});
|
|
26
|
+
InitCanvasFC.displayName = "InitCanvasFC";
|
|
15
27
|
export {
|
|
16
|
-
|
|
28
|
+
InitCanvasFC
|
|
17
29
|
};
|
|
18
30
|
//# sourceMappingURL=main9.mjs.map
|
package/dist/es/main9.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main9.mjs","sources":["../../src/core/
|
|
1
|
+
{"version":3,"file":"main9.mjs","sources":["../../src/core/canvas-overlay/init-canvas-fc.tsx"],"sourcesContent":["import { memo, useEffect, useState } from \"react\";\nimport { createPortal } from 'react-dom';\nimport { Matrix4Tuple } from \"three\";\nimport { CanvasProps } from \"../../api/canvas-props\";\nimport { FromLngLat, MapInstance } from \"../generic-map\";\nimport { CanvasPortal } from \"./canvas-portal\";\n\ninterface InitCanvasFCProps extends CanvasProps {\n map: MapInstance,\n setOnRender: (callback: () => (mx: Matrix4Tuple) => void) => void,\n frameloop?: 'always' | 'demand',\n fromLngLat: FromLngLat,\n}\nexport const InitCanvasFC = memo<InitCanvasFCProps>((props) => {\n const canvas = props.map.getCanvas() // eslint-disable-line @typescript-eslint/no-non-null-assertion\n\n const [el] = useState(() => {\n const el = document.createElement('div');\n el.style.position = 'absolute';\n el.style.top = '0';\n el.style.bottom = '0';\n el.style.left = '0';\n el.style.right = '0';\n el.style.pointerEvents = 'none';\n return el\n })\n\n useEffect(() => {\n const parent = canvas.parentElement!; // eslint-disable-line @typescript-eslint/no-non-null-assertion\n parent.appendChild(el);\n return () => {\n parent.removeChild(el);\n }\n }, []) // eslint-disable-line react-hooks/exhaustive-deps\n return <>\n {createPortal((\n <CanvasPortal {...props} />\n ), el)}\n </>\n})\nInitCanvasFC.displayName = 'InitCanvasFC';\n"],"names":["el"],"mappings":";;;;AAaa,MAAA,eAAe,KAAwB,CAAC,UAAU;AACvD,QAAA,SAAS,MAAM,IAAI,UAAU;AAEnC,QAAM,CAAC,EAAE,IAAI,SAAS,MAAM;AACpBA,UAAAA,MAAK,SAAS,cAAc,KAAK;AACvCA,QAAG,MAAM,WAAW;AACpBA,QAAG,MAAM,MAAM;AACfA,QAAG,MAAM,SAAS;AAClBA,QAAG,MAAM,OAAO;AAChBA,QAAG,MAAM,QAAQ;AACjBA,QAAG,MAAM,gBAAgB;AAClBA,WAAAA;AAAAA,EAAA,CACR;AAED,YAAU,MAAM;AACd,UAAM,SAAS,OAAO;AACtB,WAAO,YAAY,EAAE;AACrB,WAAO,MAAM;AACX,aAAO,YAAY,EAAE;AAAA,IAAA;AAAA,EAEzB,GAAG,CAAE,CAAA;AACE,SAAA,oBAAA,UAAA,EACJ,uBACE,oBAAA,cAAA,EAAc,GAAG,MAAO,CAAA,GACxB,EAAE,EACP,CAAA;AACF,CAAC;AACD,aAAa,cAAc;"}
|