abstract-3d 0.9.2 → 0.9.4
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/lib/renderers/react/index.d.ts +1 -1
- package/lib/renderers/react/index.d.ts.map +1 -1
- package/lib/renderers/react/react-group.d.ts +2 -2
- package/lib/renderers/react/react-group.d.ts.map +1 -1
- package/lib/renderers/react/react-group.js +3 -3
- package/lib/renderers/react/react-group.js.map +1 -1
- package/lib/renderers/react/react-material.d.ts +2 -2
- package/lib/renderers/react/react-material.d.ts.map +1 -1
- package/lib/renderers/react/react-material.js +3 -3
- package/lib/renderers/react/react-material.js.map +1 -1
- package/lib/renderers/react/react-scene.d.ts +2 -2
- package/lib/renderers/react/react-scene.d.ts.map +1 -1
- package/lib/renderers/react/react-scene.js +2 -2
- package/lib/renderers/react/react-scene.js.map +1 -1
- package/lib/renderers/react/react.js +1 -1
- package/lib/renderers/react/react.js.map +1 -1
- package/package.json +2 -2
- package/src/renderers/react/index.ts +1 -1
- package/src/renderers/react/react-group.tsx +4 -4
- package/src/renderers/react/react-material.tsx +16 -18
- package/src/renderers/react/react-scene.tsx +3 -3
- package/src/renderers/react/react.tsx +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export * from "./react.js";
|
|
2
|
-
export type { ReactPopover } from "./react-scene.js";
|
|
2
|
+
export type { ReactPopover, SceneMouseEvent } from "./react-scene.js";
|
|
3
3
|
export type { HotSpotInfo } from "./react-hotspot.js";
|
|
4
4
|
export type { CameraType, Camera, ControlsHelper } from "./react-camera.js";
|
|
5
5
|
export type { MaterialState } from "./react-material.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACtE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC5E,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -2,12 +2,12 @@ import React from "react";
|
|
|
2
2
|
import { ThreeEvent } from "@react-three/fiber";
|
|
3
3
|
import { Group as Group_1 } from "../../abstract-3d.js";
|
|
4
4
|
import { MaterialState } from "./react-material.js";
|
|
5
|
-
export declare function ReactGroup({ g, materialStateImages, hoveredId, hoveredIdExternal,
|
|
5
|
+
export declare function ReactGroup({ g, materialStateImages, hoveredId, hoveredIdExternal, selectedIds, hotSpotsActive, activeComponents, id, rootData, onClickGroup, onHoverGroup, onContextMenuGroup, createGroupKey, }: {
|
|
6
6
|
readonly g: Group_1;
|
|
7
7
|
readonly materialStateImages?: Record<string, string>;
|
|
8
8
|
readonly hoveredId: string | undefined;
|
|
9
9
|
readonly hoveredIdExternal: string | undefined;
|
|
10
|
-
readonly
|
|
10
|
+
readonly selectedIds: Record<string, boolean> | undefined;
|
|
11
11
|
readonly hotSpotsActive: boolean;
|
|
12
12
|
readonly activeComponents: Record<string, MaterialState> | undefined;
|
|
13
13
|
readonly id: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-group.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/react-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAU,UAAU,EAAY,MAAM,oBAAoB,CAAC;AAElE,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAiB,MAAM,qBAAqB,CAAC;AAKnE,wBAAgB,UAAU,CAAC,EACzB,CAAC,EACD,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"react-group.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/react-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAU,UAAU,EAAY,MAAM,oBAAoB,CAAC;AAElE,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAiB,MAAM,qBAAqB,CAAC;AAKnE,wBAAgB,UAAU,CAAC,EACzB,CAAC,EACD,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,EAAE,EACF,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,cAAc,GACf,EAAE;IACD,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC1D,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,SAAS,CAAC;IACrE,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,YAAY,CAAC,EAAE,CACtB,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC5C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACxC,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,KACtB,IAAI,CAAC;IACV,QAAQ,CAAC,YAAY,EAAE,CACrB,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC5C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACxC,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,KACtB,IAAI,CAAC;IACV,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAC5B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC5C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACxC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,KACtB,IAAI,CAAC;IACV,QAAQ,CAAC,cAAc,CAAC,EAAE,CACxB,CAAC,EAAE,OAAO,EACV,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC5C,EAAE,EAAE,MAAM,KACP,MAAM,CAAC;CACb,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAmFpB"}
|
|
@@ -4,7 +4,7 @@ import { Group } from "three";
|
|
|
4
4
|
import { ReactMaterial } from "./react-material.js";
|
|
5
5
|
import { ReactMesh } from "./react-mesh.js";
|
|
6
6
|
extend({ Group });
|
|
7
|
-
export function ReactGroup({ g, materialStateImages, hoveredId, hoveredIdExternal,
|
|
7
|
+
export function ReactGroup({ g, materialStateImages, hoveredId, hoveredIdExternal, selectedIds, hotSpotsActive, activeComponents, id, rootData, onClickGroup, onHoverGroup, onContextMenuGroup, createGroupKey, }) {
|
|
8
8
|
const ref = React.useRef(undefined);
|
|
9
9
|
useFrame(({ invalidate }, delta) => {
|
|
10
10
|
if (g.animation) {
|
|
@@ -48,8 +48,8 @@ export function ReactGroup({ g, materialStateImages, hoveredId, hoveredIdExterna
|
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
}) },
|
|
51
|
-
g.groups?.map((g, i) => (React.createElement(ReactGroup, { key: createGroupKey ? createGroupKey(g, i, rootData, id ?? "") : i, g: g,
|
|
51
|
+
g.groups?.map((g, i) => (React.createElement(ReactGroup, { key: createGroupKey ? createGroupKey(g, i, rootData, id ?? "") : i, g: g, selectedIds: selectedIds, hotSpotsActive: hotSpotsActive, activeComponents: activeComponents, materialStateImages: materialStateImages, hoveredId: hoveredId, hoveredIdExternal: hoveredIdExternal, onClickGroup: onClickGroup, onHoverGroup: onHoverGroup, onContextMenuGroup: onContextMenuGroup, id: id, rootData: rootData, createGroupKey: createGroupKey }))),
|
|
52
52
|
g.meshes?.map((m, i) => (React.createElement(ReactMesh, { key: `mesh_${i}`, mesh: m },
|
|
53
|
-
React.createElement(ReactMaterial, { material: m.material, id: id,
|
|
53
|
+
React.createElement(ReactMaterial, { material: m.material, id: id, selectedIds: selectedIds, isText: m.geometry.type === "Text", hoveredId: hoveredId || hoveredIdExternal, materialStateImages: materialStateImages, disabled: disabled, state: materialState }))))));
|
|
54
54
|
}
|
|
55
55
|
//# sourceMappingURL=react-group.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-group.js","sourceRoot":"","sources":["../../../src/renderers/react/react-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAc,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAE9B,OAAO,EAAiB,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAElB,MAAM,UAAU,UAAU,CAAC,EACzB,CAAC,EACD,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"react-group.js","sourceRoot":"","sources":["../../../src/renderers/react/react-group.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,11 +2,11 @@ import React from "react";
|
|
|
2
2
|
import { Material } from "../../abstract-3d.js";
|
|
3
3
|
export type MaterialState = "Accept" | "Error" | "Warning";
|
|
4
4
|
export declare const ERROR_IMG_KEY = "error";
|
|
5
|
-
export declare function ReactMaterial({ material, id,
|
|
5
|
+
export declare function ReactMaterial({ material, id, selectedIds, hoveredId, disabled, materialStateImages, state, isText, isHotSpot, }: {
|
|
6
6
|
readonly material: Material;
|
|
7
7
|
readonly id?: string;
|
|
8
8
|
readonly hoveredId?: string | undefined;
|
|
9
|
-
readonly
|
|
9
|
+
readonly selectedIds?: Record<string, boolean> | undefined;
|
|
10
10
|
readonly disabled?: boolean;
|
|
11
11
|
readonly materialStateImages?: Record<string, string>;
|
|
12
12
|
readonly state?: MaterialState | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-material.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/react-material.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAGzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAC3D,eAAO,MAAM,aAAa,UAAU,CAAC;AAErC,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,EAAO,EACP,
|
|
1
|
+
{"version":3,"file":"react-material.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/react-material.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAGzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAC3D,eAAO,MAAM,aAAa,UAAU,CAAC;AAErC,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,EAAO,EACP,WAAW,EACX,SAAS,EACT,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACL,MAAM,EACN,SAAS,GACV,EAAE;IACD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC3D,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAyDpB"}
|
|
@@ -4,7 +4,7 @@ import { DoubleSide, SRGBColorSpace, TextureLoader } from "three";
|
|
|
4
4
|
import { shade } from "../shared.js";
|
|
5
5
|
const decreasedOpacity = 0.2;
|
|
6
6
|
export const ERROR_IMG_KEY = "error";
|
|
7
|
-
export function ReactMaterial({ material, id = "",
|
|
7
|
+
export function ReactMaterial({ material, id = "", selectedIds, hoveredId, disabled, materialStateImages, state, isText, isHotSpot, }) {
|
|
8
8
|
const mat = !state || material.imageUrl === "UrlImage"
|
|
9
9
|
? material
|
|
10
10
|
: state === "Accept"
|
|
@@ -12,14 +12,14 @@ export function ReactMaterial({ material, id = "", selectedId, hoveredId, disabl
|
|
|
12
12
|
: state === "Error"
|
|
13
13
|
? errorMar
|
|
14
14
|
: warningMat;
|
|
15
|
-
const color =
|
|
15
|
+
const color = selectedIds?.[id]
|
|
16
16
|
? hoveredId === id
|
|
17
17
|
? shade(-0.4, selectMat.normal)
|
|
18
18
|
: selectMat.normal
|
|
19
19
|
: hoveredId === id
|
|
20
20
|
? shade(-0.4, mat.normal)
|
|
21
21
|
: mat.normal;
|
|
22
|
-
const colorText =
|
|
22
|
+
const colorText = selectedIds?.[id]
|
|
23
23
|
? hoveredId === id
|
|
24
24
|
? shade(-0.4, textSelectMat.normal)
|
|
25
25
|
: textSelectMat.normal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-material.js","sourceRoot":"","sources":["../../../src/renderers/react/react-material.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAS,UAAU,EAAsB,cAAc,EAAW,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtG,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAG7B,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC;AAErC,MAAM,UAAU,aAAa,CAAC,EAC5B,QAAQ,EACR,EAAE,GAAG,EAAE,EACP,
|
|
1
|
+
{"version":3,"file":"react-material.js","sourceRoot":"","sources":["../../../src/renderers/react/react-material.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,9 +9,9 @@ export interface ReactPopover {
|
|
|
9
9
|
readonly content: React.ReactNode;
|
|
10
10
|
}
|
|
11
11
|
export type SceneMouseEvent = ThreeEvent<MouseEvent>;
|
|
12
|
-
export declare function ReactScene({ scene,
|
|
12
|
+
export declare function ReactScene({ scene, selectedIds, hoveredIdExternal, activeHotSpots, activeComponents, hotSpotTexts, showHotSpotTexts, showDimensions, materialStateImages, reactPopovers, onClickGroup, onHoverGroup, onContextMenuGroup, onClickHotSpot, createGroupKey, createGroupId, }: {
|
|
13
13
|
readonly scene: Scene;
|
|
14
|
-
readonly
|
|
14
|
+
readonly selectedIds: Record<string, boolean> | undefined;
|
|
15
15
|
readonly hoveredIdExternal: string | undefined;
|
|
16
16
|
readonly activeHotSpots: Record<string, HotSpotInfo> | undefined;
|
|
17
17
|
readonly activeComponents: Record<string, MaterialState> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-scene.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/react-scene.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAiB,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;CACnC;AACD,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;AAErD,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,
|
|
1
|
+
{"version":3,"file":"react-scene.d.ts","sourceRoot":"","sources":["../../../src/renderers/react/react-scene.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { ReactHotSpots } from "./react-hotspot.js";
|
|
|
3
3
|
import { ReactDimensions } from "./react-dimension.js";
|
|
4
4
|
import { ReactGroup } from "./react-group.js";
|
|
5
5
|
import { Html } from "@react-three/drei";
|
|
6
|
-
export function ReactScene({ scene,
|
|
6
|
+
export function ReactScene({ scene, selectedIds, hoveredIdExternal, activeHotSpots, activeComponents, hotSpotTexts, showHotSpotTexts, showDimensions, materialStateImages, reactPopovers, onClickGroup, onHoverGroup, onContextMenuGroup, onClickHotSpot, createGroupKey, createGroupId, }) {
|
|
7
7
|
const [hoveredId, setHoveredId] = React.useState(undefined);
|
|
8
8
|
return (React.createElement("group", { rotation: [
|
|
9
9
|
scene.rotation_deprecated?.x ?? 0,
|
|
@@ -16,7 +16,7 @@ export function ReactScene({ scene, selectedId, hoveredIdExternal, activeHotSpot
|
|
|
16
16
|
] },
|
|
17
17
|
scene.groups.map((g, i) => {
|
|
18
18
|
const id = createGroupId ? createGroupId(g) : "";
|
|
19
|
-
return (React.createElement(ReactGroup, { key: createGroupKey ? createGroupKey(g, 0, g.data, id) : i, g: g,
|
|
19
|
+
return (React.createElement(ReactGroup, { key: createGroupKey ? createGroupKey(g, 0, g.data, id) : i, g: g, selectedIds: selectedIds, hotSpotsActive: activeHotSpots !== undefined, activeComponents: activeComponents, materialStateImages: materialStateImages, hoveredId: hoveredId, hoveredIdExternal: hoveredIdExternal, onClickGroup: onClickGroup, onHoverGroup: (id, rootData, data, e) => {
|
|
20
20
|
setHoveredId(id);
|
|
21
21
|
if (onHoverGroup) {
|
|
22
22
|
onHoverGroup(id, rootData, data, e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-scene.js","sourceRoot":"","sources":["../../../src/renderers/react/react-scene.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAe,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAUzC,MAAM,UAAU,UAAU,CAAC,EACzB,KAAK,EACL,
|
|
1
|
+
{"version":3,"file":"react-scene.js","sourceRoot":"","sources":["../../../src/renderers/react/react-scene.tsx"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,6 @@ export const toReact = memo(({ scene, selectedId, activeHotSpots, activeComponen
|
|
|
32
32
|
-(scene.center_deprecated?.z ?? 0),
|
|
33
33
|
], intensity: 0.4 }),
|
|
34
34
|
React.createElement(React.Suspense, { fallback: React.createElement(React.Fragment, null) },
|
|
35
|
-
React.createElement(ReactScene, { scene: scene, selectedId:
|
|
35
|
+
React.createElement(ReactScene, { scene: scene, selectedIds: selectedId ? { [selectedId]: true } : undefined, activeHotSpots: activeHotSpots, activeComponents: activeComponents, showDimensions: showDimensions, showHotSpotTexts: showHotSpotTexts, hoveredIdExternal: hoveredIdExternal, hotSpotTexts: hotSpotTexts, reactPopovers: reactPopovers, materialStateImages: materialStateImages, onClickGroup: onClickGroup, onHoverGroup: onHoverGroup, onContextMenuGroup: onContextMenuGroup, onClickHotSpot: onClickHotSpot, createGroupKey: createGroupKey, createGroupId: createGroupId }))));
|
|
36
36
|
});
|
|
37
37
|
//# sourceMappingURL=react.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.js","sourceRoot":"","sources":["../../../src/renderers/react/react.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"react.js","sourceRoot":"","sources":["../../../src/renderers/react/react.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "abstract-3d",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.4",
|
|
4
4
|
"description": "Abstract 3D",
|
|
5
5
|
"author": "Divid AB <info@divid.se>",
|
|
6
6
|
"repository": "https://github.com/dividab/abstract-visuals/tree/master/packages/abstract-3d",
|
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
"@types/three": "^0.174.0",
|
|
34
34
|
"react": "^19.0.0"
|
|
35
35
|
},
|
|
36
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "801a5ddced092ff50c1698aa1cbc155dfe1f897c"
|
|
37
37
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export * from "./react.js";
|
|
2
|
-
export type { ReactPopover } from "./react-scene.js";
|
|
2
|
+
export type { ReactPopover, SceneMouseEvent } from "./react-scene.js";
|
|
3
3
|
export type { HotSpotInfo } from "./react-hotspot.js";
|
|
4
4
|
export type { CameraType, Camera, ControlsHelper } from "./react-camera.js";
|
|
5
5
|
export type { MaterialState } from "./react-material.js";
|
|
@@ -12,7 +12,7 @@ export function ReactGroup({
|
|
|
12
12
|
materialStateImages,
|
|
13
13
|
hoveredId,
|
|
14
14
|
hoveredIdExternal,
|
|
15
|
-
|
|
15
|
+
selectedIds,
|
|
16
16
|
hotSpotsActive,
|
|
17
17
|
activeComponents,
|
|
18
18
|
id,
|
|
@@ -26,7 +26,7 @@ export function ReactGroup({
|
|
|
26
26
|
readonly materialStateImages?: Record<string, string>;
|
|
27
27
|
readonly hoveredId: string | undefined;
|
|
28
28
|
readonly hoveredIdExternal: string | undefined;
|
|
29
|
-
readonly
|
|
29
|
+
readonly selectedIds: Record<string, boolean> | undefined;
|
|
30
30
|
readonly hotSpotsActive: boolean;
|
|
31
31
|
readonly activeComponents: Record<string, MaterialState> | undefined;
|
|
32
32
|
readonly id: string | undefined;
|
|
@@ -110,7 +110,7 @@ export function ReactGroup({
|
|
|
110
110
|
<ReactGroup
|
|
111
111
|
key={createGroupKey ? createGroupKey(g, i, rootData, id ?? "") : i}
|
|
112
112
|
g={g}
|
|
113
|
-
|
|
113
|
+
selectedIds={selectedIds}
|
|
114
114
|
hotSpotsActive={hotSpotsActive}
|
|
115
115
|
activeComponents={activeComponents}
|
|
116
116
|
materialStateImages={materialStateImages}
|
|
@@ -129,7 +129,7 @@ export function ReactGroup({
|
|
|
129
129
|
<ReactMaterial
|
|
130
130
|
material={m.material}
|
|
131
131
|
id={id}
|
|
132
|
-
|
|
132
|
+
selectedIds={selectedIds}
|
|
133
133
|
isText={m.geometry.type === "Text"}
|
|
134
134
|
hoveredId={hoveredId || hoveredIdExternal}
|
|
135
135
|
materialStateImages={materialStateImages}
|
|
@@ -12,7 +12,7 @@ export const ERROR_IMG_KEY = "error";
|
|
|
12
12
|
export function ReactMaterial({
|
|
13
13
|
material,
|
|
14
14
|
id = "",
|
|
15
|
-
|
|
15
|
+
selectedIds,
|
|
16
16
|
hoveredId,
|
|
17
17
|
disabled,
|
|
18
18
|
materialStateImages,
|
|
@@ -23,7 +23,7 @@ export function ReactMaterial({
|
|
|
23
23
|
readonly material: Material;
|
|
24
24
|
readonly id?: string;
|
|
25
25
|
readonly hoveredId?: string | undefined;
|
|
26
|
-
readonly
|
|
26
|
+
readonly selectedIds?: Record<string, boolean> | undefined;
|
|
27
27
|
readonly disabled?: boolean;
|
|
28
28
|
readonly materialStateImages?: Record<string, string>;
|
|
29
29
|
readonly state?: MaterialState | undefined;
|
|
@@ -38,22 +38,20 @@ export function ReactMaterial({
|
|
|
38
38
|
: state === "Error"
|
|
39
39
|
? errorMar
|
|
40
40
|
: warningMat;
|
|
41
|
-
const color =
|
|
42
|
-
|
|
43
|
-
?
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
? shade(-0.4, mat.normal)
|
|
56
|
-
: mat.normal;
|
|
41
|
+
const color = selectedIds?.[id]
|
|
42
|
+
? hoveredId === id
|
|
43
|
+
? shade(-0.4, selectMat.normal)
|
|
44
|
+
: selectMat.normal
|
|
45
|
+
: hoveredId === id
|
|
46
|
+
? shade(-0.4, mat.normal)
|
|
47
|
+
: mat.normal;
|
|
48
|
+
const colorText = selectedIds?.[id]
|
|
49
|
+
? hoveredId === id
|
|
50
|
+
? shade(-0.4, textSelectMat.normal)
|
|
51
|
+
: textSelectMat.normal
|
|
52
|
+
: hoveredId === id
|
|
53
|
+
? shade(-0.4, mat.normal)
|
|
54
|
+
: mat.normal;
|
|
57
55
|
const opacity = material.opacity !== undefined ? material.opacity : materialDefaults.opacity!;
|
|
58
56
|
if (material.imageUrl) {
|
|
59
57
|
return (
|
|
@@ -16,7 +16,7 @@ export type SceneMouseEvent = ThreeEvent<MouseEvent>;
|
|
|
16
16
|
|
|
17
17
|
export function ReactScene({
|
|
18
18
|
scene,
|
|
19
|
-
|
|
19
|
+
selectedIds,
|
|
20
20
|
hoveredIdExternal,
|
|
21
21
|
activeHotSpots,
|
|
22
22
|
activeComponents,
|
|
@@ -33,7 +33,7 @@ export function ReactScene({
|
|
|
33
33
|
createGroupId,
|
|
34
34
|
}: {
|
|
35
35
|
readonly scene: Scene;
|
|
36
|
-
readonly
|
|
36
|
+
readonly selectedIds: Record<string, boolean> | undefined;
|
|
37
37
|
readonly hoveredIdExternal: string | undefined;
|
|
38
38
|
readonly activeHotSpots: Record<string, HotSpotInfo> | undefined;
|
|
39
39
|
readonly activeComponents: Record<string, MaterialState> | undefined;
|
|
@@ -86,7 +86,7 @@ export function ReactScene({
|
|
|
86
86
|
<ReactGroup
|
|
87
87
|
key={createGroupKey ? createGroupKey(g, 0, g.data, id) : i}
|
|
88
88
|
g={g}
|
|
89
|
-
|
|
89
|
+
selectedIds={selectedIds}
|
|
90
90
|
hotSpotsActive={activeHotSpots !== undefined}
|
|
91
91
|
activeComponents={activeComponents}
|
|
92
92
|
materialStateImages={materialStateImages}
|
|
@@ -129,7 +129,7 @@ export const toReact = memo(
|
|
|
129
129
|
<React.Suspense fallback={<></>}>
|
|
130
130
|
<ReactScene
|
|
131
131
|
scene={scene}
|
|
132
|
-
|
|
132
|
+
selectedIds={selectedId ? { [selectedId]: true } : undefined}
|
|
133
133
|
activeHotSpots={activeHotSpots}
|
|
134
134
|
activeComponents={activeComponents}
|
|
135
135
|
showDimensions={showDimensions}
|