diff --git a/react-components/package.json b/react-components/package.json index 52380df5c4f..d9b0d9d1d4c 100644 --- a/react-components/package.json +++ b/react-components/package.json @@ -25,8 +25,9 @@ "@babel/preset-env": "7.22.5", "@babel/preset-react": "7.22.5", "@babel/preset-typescript": "7.22.5", - "@cognite/cogs.js": "^9.13.2", - "@cognite/reveal": "^4.3.1", + "@cognite/cogs.js": "^9.17.0", + "@cognite/reveal": "4.3.4", + "@cognite/sdk": "^8.2.0", "@storybook/addon-essentials": "7.0.23", "@storybook/addon-interactions": "7.0.23", "@storybook/addon-links": "7.0.23", @@ -35,7 +36,7 @@ "@storybook/react-webpack5": "7.0.23", "@storybook/testing-library": "0.2.0", "@types/lodash": "^4.14.190", - "@types/react": "18.2.12", + "@types/react": "18.2.7", "@types/styled-components": "5.1.26", "@types/three": "0.152.0", "moq.ts": "^10.0.6", @@ -44,6 +45,7 @@ "react-dom": "18.2.0", "storybook": "7.0.23", "styled-components": "5.3.11", + "three": "0.152.2", "ts-loader": "9.4.3", "typescript": "5.1.3", "webpack": "5.87.0", diff --git a/react-components/src/components/CogniteCadModelContainer/CogniteCadModelContainer.tsx b/react-components/src/components/CogniteCadModelContainer/CogniteCadModelContainer.tsx new file mode 100644 index 00000000000..f53f939b553 --- /dev/null +++ b/react-components/src/components/CogniteCadModelContainer/CogniteCadModelContainer.tsx @@ -0,0 +1,51 @@ +import { useEffect, useRef } from "react"; +import { AddModelOptions, CogniteCadModel } from "@cognite/reveal"; +import { useReveal } from "../RevealContainer/RevealContext"; +import { Matrix4 } from "three"; + +type Cognite3dModelProps = { + addModelOptions: AddModelOptions; + transform?: THREE.Matrix4; +}; + +export default function CogniteCadModelContainer({ + addModelOptions, + transform, +}: Cognite3dModelProps) { + const modelRef = useRef(); + const viewer = useReveal(); + const { modelId, revisionId } = addModelOptions; + + useEffect(() => { + addModel(modelId, revisionId, transform).catch(console.error); + return () => { + if ( + modelRef.current === undefined || + !viewer.models.includes(modelRef.current) + ) { + return; + } + viewer.removeModel(modelRef.current); + modelRef.current = undefined; + }; + }, [addModelOptions]); + + useEffect(() => { + if (modelRef.current === undefined || transform === undefined) return; + modelRef.current.setModelTransformation(transform); + }, [transform]); + + return <>; + + async function addModel( + modelId: number, + revisionId: number, + transform?: Matrix4 + ) { + const cadModel = await viewer.addCadModel({ modelId, revisionId }); + if (transform !== undefined) { + cadModel.setModelTransformation(transform); + } + modelRef.current = cadModel; + } +} diff --git a/react-components/src/components/View/Image360HistoricalDetails.tsx b/react-components/src/components/Image360HistoricalDetails/Image360HistoricalDetails.tsx similarity index 90% rename from react-components/src/components/View/Image360HistoricalDetails.tsx rename to react-components/src/components/Image360HistoricalDetails/Image360HistoricalDetails.tsx index e77a1007f6f..3c7f76bc718 100644 --- a/react-components/src/components/View/Image360HistoricalDetails.tsx +++ b/react-components/src/components/Image360HistoricalDetails/Image360HistoricalDetails.tsx @@ -4,12 +4,11 @@ import { Cognite3DViewer, Image360 } from '@cognite/reveal'; import React, { useEffect, useRef, useState } from 'react'; -import { Image360HistoricalPanel } from '../Panel/Image360HistoricalPanel'; -import { Image360HistoricalSummary } from '../Toolbar/Image360HistoricalSummary'; -import { formatDate } from '../utils/FormatDate'; +import { Image360HistoricalPanel } from './Panel/Image360HistoricalPanel'; +import { Image360HistoricalSummary } from './Toolbar/Image360HistoricalSummary'; +import { formatDate } from './utils/FormatDate'; import styled from 'styled-components'; -// Using named import to avoid react component creation error when default import is used. -import { uniqueId } from 'lodash'; +import uniqueId from 'lodash/uniqueId'; export interface Image360HistoricalDetailsProps { viewer: Cognite3DViewer; diff --git a/react-components/src/components/Panel/Image360HistoricalPanel.tsx b/react-components/src/components/Image360HistoricalDetails/Panel/Image360HistoricalPanel.tsx similarity index 100% rename from react-components/src/components/Panel/Image360HistoricalPanel.tsx rename to react-components/src/components/Image360HistoricalDetails/Panel/Image360HistoricalPanel.tsx diff --git a/react-components/src/components/Panel/index.ts b/react-components/src/components/Image360HistoricalDetails/Panel/index.ts similarity index 100% rename from react-components/src/components/Panel/index.ts rename to react-components/src/components/Image360HistoricalDetails/Panel/index.ts diff --git a/react-components/src/components/Toolbar/Image360HistoricalSummary.tsx b/react-components/src/components/Image360HistoricalDetails/Toolbar/Image360HistoricalSummary.tsx similarity index 100% rename from react-components/src/components/Toolbar/Image360HistoricalSummary.tsx rename to react-components/src/components/Image360HistoricalDetails/Toolbar/Image360HistoricalSummary.tsx diff --git a/react-components/src/components/Toolbar/index.ts b/react-components/src/components/Image360HistoricalDetails/Toolbar/index.ts similarity index 100% rename from react-components/src/components/Toolbar/index.ts rename to react-components/src/components/Image360HistoricalDetails/Toolbar/index.ts diff --git a/react-components/src/components/utils/FormatDate.ts b/react-components/src/components/Image360HistoricalDetails/utils/FormatDate.ts similarity index 100% rename from react-components/src/components/utils/FormatDate.ts rename to react-components/src/components/Image360HistoricalDetails/utils/FormatDate.ts diff --git a/react-components/src/components/utils/Thumbnail.tsx b/react-components/src/components/Image360HistoricalDetails/utils/Thumbnail.tsx similarity index 100% rename from react-components/src/components/utils/Thumbnail.tsx rename to react-components/src/components/Image360HistoricalDetails/utils/Thumbnail.tsx diff --git a/react-components/src/components/RevealContainer/RevealContainer.tsx b/react-components/src/components/RevealContainer/RevealContainer.tsx new file mode 100644 index 00000000000..8346e841f60 --- /dev/null +++ b/react-components/src/components/RevealContainer/RevealContainer.tsx @@ -0,0 +1,43 @@ +import { CogniteClient } from "@cognite/sdk"; +import { useEffect, useRef, ReactNode, useState, useMemo } from "react"; +import { Cognite3DViewer } from '@cognite/reveal'; +import { RevealContext } from "./RevealContext"; +import { Color } from "three"; + +type RevealContainerProps = { + color?: Color; + sdk: CogniteClient; + children?: ReactNode; +} + +export default function RevealContainer({ children, sdk, color }: RevealContainerProps) { + const [viewer, setViewer] = useState(); + const revealDomElementRef = useRef(null); + + useEffect(() => { + const viewer = new Cognite3DViewer({ sdk, domElement: revealDomElementRef.current! }); + viewer.setBackgroundColor({ color, alpha: 1 }) + setViewer(viewer); + return () => { + viewer.dispose(); + setViewer(undefined); + } + }, []); + + const mountChildren = (viewer: Cognite3DViewer | undefined) => { + if (viewer === undefined) return <>; + return ( + <> + + {children} + + + ) + } + + return ( +
+ {mountChildren(viewer)} +
+ ); +} \ No newline at end of file diff --git a/react-components/src/components/RevealContainer/RevealContext.ts b/react-components/src/components/RevealContainer/RevealContext.ts new file mode 100644 index 00000000000..bd81c714aad --- /dev/null +++ b/react-components/src/components/RevealContainer/RevealContext.ts @@ -0,0 +1,12 @@ +import { Cognite3DViewer } from '@cognite/reveal'; +import {createContext, useContext} from 'react'; + +export const RevealContext = createContext(null); + +export const useReveal = () => { + const reveal = useContext(RevealContext); + if (!reveal) { + throw new Error('useReveal must be used within a RevealProvider'); + } + return reveal; +} \ No newline at end of file diff --git a/react-components/src/components/View/index.ts b/react-components/src/components/View/index.ts deleted file mode 100644 index 1a4006d0b75..00000000000 --- a/react-components/src/components/View/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { Image360HistoricalDetails } from "./Image360HistoricalDetails"; diff --git a/react-components/src/components/index.ts b/react-components/src/components/index.ts index d1b2e4714bc..05db4253a3b 100644 --- a/react-components/src/components/index.ts +++ b/react-components/src/components/index.ts @@ -1,2 +1,4 @@ import '@cognite/cogs.js/dist/cogs.css'; -export { Image360HistoricalDetails } from './View'; +export { default as RevealContainer } from './RevealContainer/RevealContainer'; +export { default as CogniteCadModelContainer } from './CogniteCadModelContainer/CogniteCadModelContainer'; +export { Image360HistoricalDetails } from './Image360HistoricalDetails/Image360HistoricalDetails'; diff --git a/react-components/src/stories/CogniteCadModelContainer.stories.tsx b/react-components/src/stories/CogniteCadModelContainer.stories.tsx new file mode 100644 index 00000000000..549b14401eb --- /dev/null +++ b/react-components/src/stories/CogniteCadModelContainer.stories.tsx @@ -0,0 +1,41 @@ +import type { Meta, StoryObj } from "@storybook/react"; +import { CogniteCadModelContainer, RevealContainer } from ".."; +import { CogniteClient } from "@cognite/sdk"; +import { Color, Matrix4 } from "three"; + +const meta = { + title: "Example/CogniteCadModelContainer", + component: CogniteCadModelContainer, + tags: ["autodocs"], +} satisfies Meta; + +export default meta; +type Story = StoryObj; + +// TODO: See if we can improve this with some proper authentication +const token = new URLSearchParams(window.location.search).get("token")!; +const sdk = new CogniteClient({ + appId: "reveal.example", + baseUrl: "https://greenfield.cognitedata.com", + project: "3d-test", + getToken: () => Promise.resolve(token), +}); + +export const Main: Story = { + args: { + addModelOptions: { + modelId: 1791160622840317, + revisionId: 498427137020189, + }, + transform: new Matrix4().makeTranslation(0, 10, 0), + }, + render: ({ addModelOptions, transform }) => ( + + + + + ), +}; diff --git a/react-components/src/stories/Image360HistoricalDetails.stories.ts b/react-components/src/stories/Image360HistoricalDetails.stories.ts index 001607c803d..cc3f007692b 100644 --- a/react-components/src/stories/Image360HistoricalDetails.stories.ts +++ b/react-components/src/stories/Image360HistoricalDetails.stories.ts @@ -1,5 +1,5 @@ import type { Meta, StoryObj } from '@storybook/react'; -import { Image360HistoricalDetails } from '../components/View'; +import { Image360HistoricalDetails } from '..'; import { It, Mock } from 'moq.ts'; import { Cognite3DViewer, Image360, Image360Revision } from '@cognite/reveal'; diff --git a/react-components/tsconfig.json b/react-components/tsconfig.json index 94cbe3a1ab1..f0d31066786 100644 --- a/react-components/tsconfig.json +++ b/react-components/tsconfig.json @@ -1,10 +1,9 @@ { "compilerOptions": { "target": "ES6", - "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, - "skipLibCheck": true, + "skipLibCheck": false, "jsx": "react-jsx", "module": "ESNext", "declaration": true, @@ -21,4 +20,4 @@ "exclude": [ "**/*.stories.ts" ] -} +} \ No newline at end of file diff --git a/react-components/yarn.lock b/react-components/yarn.lock index 85f9b4cd1f6..cf6e8461d5e 100644 --- a/react-components/yarn.lock +++ b/react-components/yarn.lock @@ -2645,41 +2645,6 @@ __metadata: languageName: node linkType: hard -"@chevrotain/cst-dts-gen@npm:10.5.0": - version: 10.5.0 - resolution: "@chevrotain/cst-dts-gen@npm:10.5.0" - dependencies: - "@chevrotain/gast": 10.5.0 - "@chevrotain/types": 10.5.0 - lodash: 4.17.21 - checksum: 3ff851d5cbccc509269bb77078dafd7acfcd2e128e7d362718cde728f3fa95f4dd58eb1eea67ecf11453fba70bded97df55c5ba31ed93fb2dec4324663bd2eee - languageName: node - linkType: hard - -"@chevrotain/gast@npm:10.5.0": - version: 10.5.0 - resolution: "@chevrotain/gast@npm:10.5.0" - dependencies: - "@chevrotain/types": 10.5.0 - lodash: 4.17.21 - checksum: 35183e7067bc936db9ecfea7624ee3178634618cf1518ea3470b4ed208fb19454dc3ed990a0de2dab80794251398a857ad17d26cc552eac497a2aa974f76b86d - languageName: node - linkType: hard - -"@chevrotain/types@npm:10.5.0": - version: 10.5.0 - resolution: "@chevrotain/types@npm:10.5.0" - checksum: 72f7b48de1888ab14831108da4b0ab3ef244e1101a4094240382e4983a9e71aae6f8a87e09b819854d1028cee08f97b7d2a81fce935742c55d2bc497b7cad350 - languageName: node - linkType: hard - -"@chevrotain/utils@npm:10.5.0": - version: 10.5.0 - resolution: "@chevrotain/utils@npm:10.5.0" - checksum: f3ae9e0fea2e928a1a4930311d3ef04f45c29fa58ba4d5d2ca43c33355ac47f95ce99a98d6496706e2e7f773ef684a9a7e7cbd7b77c00af9158f08c82d88212b - languageName: node - linkType: hard - "@choojs/findup@npm:^0.2.0": version: 0.2.1 resolution: "@choojs/findup@npm:0.2.1" @@ -2691,9 +2656,9 @@ __metadata: languageName: node linkType: hard -"@cognite/cogs.js@npm:^9.13.2": - version: 9.13.4 - resolution: "@cognite/cogs.js@npm:9.13.4" +"@cognite/cogs.js@npm:^9.17.0": + version: 9.17.0 + resolution: "@cognite/cogs.js@npm:9.17.0" dependencies: "@emotion/react": 11.10.6 "@emotion/styled": 11.10.6 @@ -2730,7 +2695,7 @@ __metadata: peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: c66bf4a2b600acefb0dbb46dfd7a2a01de47bc80d04b1239cb20482e07dd2ad8a55c008eaf4c4084bf372571b39434badc08bbe30d6a0ea2d41d989abb76fdb4 + checksum: f2098b89053ce90e8413953170d2504f2d616da5afe942c536c391880e41d7c0d41291e490e6cfec15f0a96f4a43a91689fb67b85fc8aaaf72482f8e4db03af9 languageName: node linkType: hard @@ -2741,6 +2706,18 @@ __metadata: "@babel/preset-env": 7.22.5 "@babel/preset-react": 7.22.5 "@babel/preset-typescript": 7.22.5 +<<<<<<< HEAD + "@cognite/cogs.js": ^9.17.0 + "@cognite/reveal": 4.3.4 + "@cognite/sdk": ^8.2.0 + "@storybook/addon-essentials": 7.0.22 + "@storybook/addon-interactions": 7.0.22 + "@storybook/addon-links": 7.0.22 + "@storybook/blocks": 7.0.22 + "@storybook/react": 7.0.22 + "@storybook/react-webpack5": 7.0.22 + "@storybook/testing-library": 0.1.0 +======= "@cognite/cogs.js": ^9.13.2 "@cognite/reveal": ^4.3.1 "@storybook/addon-essentials": 7.0.23 @@ -2750,8 +2727,9 @@ __metadata: "@storybook/react": 7.0.23 "@storybook/react-webpack5": 7.0.23 "@storybook/testing-library": 0.2.0 +>>>>>>> e6130fae9784df1423fe0ae8b393c81a99d5bfdf "@types/lodash": ^4.14.190 - "@types/react": 18.2.12 + "@types/react": 18.2.7 "@types/styled-components": 5.1.26 "@types/three": 0.152.0 lodash: ^4.17.21 @@ -2762,6 +2740,7 @@ __metadata: storybook: 7.0.23 style-loader: ^3.3.3 styled-components: 5.3.11 + three: 0.152.2 ts-loader: 9.4.3 typescript: 5.1.3 webpack: 5.87.0 @@ -2775,9 +2754,9 @@ __metadata: languageName: unknown linkType: soft -"@cognite/reveal@npm:^4.3.1": - version: 4.3.1 - resolution: "@cognite/reveal@npm:4.3.1" +"@cognite/reveal@npm:4.3.4": + version: 4.3.4 + resolution: "@cognite/reveal@npm:4.3.4" dependencies: "@tweenjs/tween.js": 19.0.0 assert: 2.0.0 @@ -2792,12 +2771,36 @@ __metadata: random-seed: 0.3.0 rxjs: 7.8.1 skmeans: 0.11.3 - sparse-octree: 7.1.6 - three-stdlib: 2.23.4 + sparse-octree: 7.1.8 peerDependencies: "@cognite/sdk": ^7.16.0 || ^8.0.0 three: 0.152.2 - checksum: a93a1ddfdd80d9501950f1da35ae1117102f5e9e6ce1fa580f956323cfdd12e65ae72670a475ecb4ae01eb530b32ac2bbb5e05a421350b6adb39a372e6460b08 + checksum: 7675de40b153a4f4fd0aaeedfd1a2ca50a5ec1ca733109d49981a47d07d1f43b1d2dab3102f53279350db37f535e09b2865c7dcc63e6a49ce98ebe4a4efdc699 + languageName: node + linkType: hard + +"@cognite/sdk-core@npm:^4.9.0": + version: 4.9.0 + resolution: "@cognite/sdk-core@npm:4.9.0" + dependencies: + cross-fetch: ^3.0.4 + is-buffer: ^2.0.5 + lodash: ^4.17.11 + query-string: ^5.1.1 + url: ^0.11.0 + checksum: 257c627de952d8b6a1396c71f58c269d254d05648076072ab709708ba98495253062cb1299b113dc0fd9a40a228dddd9984e90b1ef2d2abb6aa926285cbe36ce + languageName: node + linkType: hard + +"@cognite/sdk@npm:^8.2.0": + version: 8.2.0 + resolution: "@cognite/sdk@npm:8.2.0" + dependencies: + "@cognite/sdk-core": ^4.9.0 + "@types/geojson": ^7946.0.8 + geojson: ^0.5.0 + lodash: ^4.17.11 + checksum: f65f00f6941522b2828f637fd8ae0f5b09fdf8e849fe0ad74857baf789b4479471f04cda265fceca6cd1ddd301ee2d2554a33e212513db4df5121549a475f787 languageName: node linkType: hard @@ -5043,13 +5046,6 @@ __metadata: languageName: node linkType: hard -"@types/draco3d@npm:^1.4.0": - version: 1.4.2 - resolution: "@types/draco3d@npm:1.4.2" - checksum: d8e60db5e7e51081b32700d8f0defa537b41249eac6fe39e4af4e3e002f131acfd2a5e993bcfde9b597b30413726fbe6189a7b3bd970a3d7e9da93ef2e098283 - languageName: node - linkType: hard - "@types/ejs@npm:^3.1.1": version: 3.1.2 resolution: "@types/ejs@npm:3.1.2" @@ -5129,6 +5125,13 @@ __metadata: languageName: node linkType: hard +"@types/geojson@npm:^7946.0.8": + version: 7946.0.10 + resolution: "@types/geojson@npm:7946.0.10" + checksum: 12c407c2dc93ecb26c08af533ee732f1506a9b29456616ba7ba1d525df96206c28ddf44a528f6a5415d7d22893e9d967420940a9c095ee5e539c1eba5fefc1f4 + languageName: node + linkType: hard + "@types/glob@npm:^8.0.0": version: 8.1.0 resolution: "@types/glob@npm:8.1.0" @@ -5294,13 +5297,6 @@ __metadata: languageName: node linkType: hard -"@types/offscreencanvas@npm:^2019.6.4": - version: 2019.7.0 - resolution: "@types/offscreencanvas@npm:2019.7.0" - checksum: 018cfcd19e0c59c44d14ba61caaca7246f77fbb512839c7881654b7f2b6591dbdd5857362eccbf49f29cdc93724e71a4b37c8b6cf203388f9c04e913a53ea390 - languageName: node - linkType: hard - "@types/parse-json@npm:^4.0.0": version: 4.0.0 resolution: "@types/parse-json@npm:4.0.0" @@ -5375,14 +5371,14 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:18.2.12": - version: 18.2.12 - resolution: "@types/react@npm:18.2.12" +"@types/react@npm:18.2.7": + version: 18.2.7 + resolution: "@types/react@npm:18.2.7" dependencies: "@types/prop-types": "*" "@types/scheduler": "*" csstype: ^3.0.2 - checksum: ad85a7eadaf1b35cfeee9f715b39311420ff46d46e0650377d918b3f888c2e47416037da4a765e1dccd3d1916abd54c105a3bee803c971ba56c955a7768ce976 + checksum: caa5da4cf929766738ec789301dc6fb6624bd48dd317d851c4c9b84b1f47cd8ebe17fe01398cadaa0bc938cd4d502d67f4b9de9ff771dc132096bdc86228efba languageName: node linkType: hard @@ -5469,7 +5465,7 @@ __metadata: languageName: node linkType: hard -"@types/webxr@npm:*, @types/webxr@npm:^0.5.2": +"@types/webxr@npm:*": version: 0.5.2 resolution: "@types/webxr@npm:0.5.2" checksum: e3387c3d64c140557796a4bcececd82d912a88f73ff8e34bf51c04d44078390fbe4756b256b2844b1ae4664a883d46f96bb40913d21f12e9ab484d9d8dbc68c3 @@ -6644,20 +6640,6 @@ __metadata: languageName: node linkType: hard -"chevrotain@npm:^10.1.2": - version: 10.5.0 - resolution: "chevrotain@npm:10.5.0" - dependencies: - "@chevrotain/cst-dts-gen": 10.5.0 - "@chevrotain/gast": 10.5.0 - "@chevrotain/types": 10.5.0 - "@chevrotain/utils": 10.5.0 - lodash: 4.17.21 - regexp-to-ast: 0.5.0 - checksum: b641f149f60979a29eff2434d745e9565a7c89422b601d554bcf8f047f7d8ff776b9a54b1b36085a622e3f1ed7eb4b8721b5a5348d90ae2567ce7594b10f25aa - languageName: node - linkType: hard - "chokidar@npm:^3.5.3": version: 3.5.3 resolution: "chokidar@npm:3.5.3" @@ -7078,6 +7060,15 @@ __metadata: languageName: node linkType: hard +"cross-fetch@npm:^3.0.4": + version: 3.1.6 + resolution: "cross-fetch@npm:3.1.6" + dependencies: + node-fetch: ^2.6.11 + checksum: 704b3519ab7de488328cc49a52cf1aa14132ec748382be5b9557b22398c33ffa7f8c2530e8a97ed8cb55da52b0a9740a9791d361271c4591910501682d981d9c + languageName: node + linkType: hard + "cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" @@ -7238,6 +7229,13 @@ __metadata: languageName: node linkType: hard +"decode-uri-component@npm:^0.2.0": + version: 0.2.2 + resolution: "decode-uri-component@npm:0.2.2" + checksum: 95476a7d28f267292ce745eac3524a9079058bbb35767b76e3ee87d42e34cd0275d2eb19d9d08c3e167f97556e8a2872747f5e65cbebcac8b0c98d83e285f139 + languageName: node + linkType: hard + "dedent@npm:^0.7.0": version: 0.7.0 resolution: "dedent@npm:0.7.0" @@ -7547,13 +7545,6 @@ __metadata: languageName: node linkType: hard -"draco3d@npm:^1.4.1": - version: 1.5.6 - resolution: "draco3d@npm:1.5.6" - checksum: ae1080c02c5bb95b3e4ce6bbd2b8c61a30e44ccc421648acdf5d261c3eb980210d7da2a562b2009bcf782d5193cbafc722e153ba8aafbaf30a072946007d2183 - languageName: node - linkType: hard - "duplexify@npm:^3.4.5, duplexify@npm:^3.5.0, duplexify@npm:^3.6.0": version: 3.7.1 resolution: "duplexify@npm:3.7.1" @@ -8145,7 +8136,7 @@ __metadata: languageName: node linkType: hard -"fflate@npm:^0.6.9, fflate@npm:~0.6.9": +"fflate@npm:~0.6.9": version: 0.6.10 resolution: "fflate@npm:0.6.10" checksum: 96384bc4090987fe565c0de8204e3830f538144ec950576fea50aee1b42adbe9fc3ed5e7905dfa7979faaa20979def330dbebce548f3dcafc3e118cc9838526d @@ -8548,6 +8539,13 @@ __metadata: languageName: node linkType: hard +"geojson@npm:^0.5.0": + version: 0.5.0 + resolution: "geojson@npm:0.5.0" + checksum: 44fbf916dc66d17f1561fb56fd2741f21e26da5dd7daf842a794119c841c7f6d611ccc21d9797c9c62a78c41a0f841c0648042989a5a5a05045835c6ada8612f + languageName: node + linkType: hard + "get-caller-file@npm:^2.0.5": version: 2.0.5 resolution: "get-caller-file@npm:2.0.5" @@ -9359,6 +9357,13 @@ __metadata: languageName: node linkType: hard +"is-buffer@npm:^2.0.5": + version: 2.0.5 + resolution: "is-buffer@npm:2.0.5" + checksum: 764c9ad8b523a9f5a32af29bdf772b08eb48c04d2ad0a7240916ac2688c983bf5f8504bf25b35e66240edeb9d9085461f9b5dae1f3d2861c6b06a65fe983de42 + languageName: node + linkType: hard + "is-callable@npm:^1.1.3": version: 1.2.7 resolution: "is-callable@npm:1.2.7" @@ -9922,13 +9927,6 @@ __metadata: languageName: node linkType: hard -"ktx-parse@npm:^0.4.5": - version: 0.4.5 - resolution: "ktx-parse@npm:0.4.5" - checksum: f82d8b5dfd0ede05d5e4a2d90ad5114c83d8f708431e3fce2c3e6e0a0e1fe1b1649cb6f3de35b429ef636ce9a92a3897295198e94b46bba24bc3268c6ae9cc42 - languageName: node - linkType: hard - "lazy-universal-dotenv@npm:^4.0.0": version: 4.0.0 resolution: "lazy-universal-dotenv@npm:4.0.0" @@ -10031,7 +10029,7 @@ __metadata: languageName: node linkType: hard -"lodash@npm:4.17.21, lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21": +"lodash@npm:4.17.21, lodash@npm:^4.17.11, lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 @@ -10466,13 +10464,6 @@ __metadata: languageName: node linkType: hard -"mmd-parser@npm:^1.0.4": - version: 1.0.4 - resolution: "mmd-parser@npm:1.0.4" - checksum: 892cc317598440c43919250ec95aec26349db977e64bbe37d0fa8d6a8076e190105e5e687221225dd9afa8937d9d2d06ddab77586c2bc4781cb6855a2938d95b - languageName: node - linkType: hard - "moq.ts@npm:^10.0.6": version: 10.0.8 resolution: "moq.ts@npm:10.0.8" @@ -10580,7 +10571,7 @@ __metadata: languageName: node linkType: hard -"node-fetch@npm:^2.0.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.7": +"node-fetch@npm:^2.0.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.11, node-fetch@npm:^2.6.7": version: 2.6.11 resolution: "node-fetch@npm:2.6.11" dependencies: @@ -10700,7 +10691,7 @@ __metadata: languageName: node linkType: hard -"object-assign@npm:4.x, object-assign@npm:^4.1.1": +"object-assign@npm:4.x, object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": version: 4.1.1 resolution: "object-assign@npm:4.1.1" checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f @@ -10814,18 +10805,6 @@ __metadata: languageName: node linkType: hard -"opentype.js@npm:^1.3.3": - version: 1.3.4 - resolution: "opentype.js@npm:1.3.4" - dependencies: - string.prototype.codepointat: ^0.2.1 - tiny-inflate: ^1.0.3 - bin: - ot: bin/ot - checksum: 365af0f9a8bd87b772c794502a9e53a6d286faf2bafda51f3016acab21bd6202a0d6a1260d7b71f1d6ad8076ccedfe84f76bd6aabb14704ce42ac9a9f96bae21 - languageName: node - linkType: hard - "optionator@npm:^0.8.1": version: 0.8.3 resolution: "optionator@npm:0.8.3" @@ -11209,13 +11188,6 @@ __metadata: languageName: node linkType: hard -"potpack@npm:^1.0.1": - version: 1.0.2 - resolution: "potpack@npm:1.0.2" - checksum: 9dfdbbce012ce80842249abcdd89e20222eb8ae96beba8d578b7e41e78feefc7e33b5c72d46fb8dd3a1e382cb4da9c34574764d88aa8849ab36f542fd2088b42 - languageName: node - linkType: hard - "prelude-ls@npm:~1.1.2": version: 1.1.2 resolution: "prelude-ls@npm:1.1.2" @@ -11367,6 +11339,13 @@ __metadata: languageName: node linkType: hard +"punycode@npm:^1.4.1": + version: 1.4.1 + resolution: "punycode@npm:1.4.1" + checksum: fa6e698cb53db45e4628559e557ddaf554103d2a96a1d62892c8f4032cd3bc8871796cae9eabc1bc700e2b6677611521ce5bb1d9a27700086039965d0cf34518 + languageName: node + linkType: hard + "punycode@npm:^2.1.0": version: 2.3.0 resolution: "punycode@npm:2.3.0" @@ -11410,6 +11389,26 @@ __metadata: languageName: node linkType: hard +"qs@npm:^6.11.0": + version: 6.11.2 + resolution: "qs@npm:6.11.2" + dependencies: + side-channel: ^1.0.4 + checksum: e812f3c590b2262548647d62f1637b6989cc56656dc960b893fe2098d96e1bd633f36576f4cd7564dfbff9db42e17775884db96d846bebe4f37420d073ecdc0b + languageName: node + linkType: hard + +"query-string@npm:^5.1.1": + version: 5.1.1 + resolution: "query-string@npm:5.1.1" + dependencies: + decode-uri-component: ^0.2.0 + object-assign: ^4.1.0 + strict-uri-encode: ^1.0.0 + checksum: 4ac760d9778d413ef5f94f030ed14b1a07a1708dd13fd3bc54f8b9ef7b425942c7577f30de0bf5a7d227ee65a9a0350dfa3a43d1d266880882fb7ce4c434a4dd + languageName: node + linkType: hard + "queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" @@ -12066,13 +12065,6 @@ __metadata: languageName: node linkType: hard -"regexp-to-ast@npm:0.5.0": - version: 0.5.0 - resolution: "regexp-to-ast@npm:0.5.0" - checksum: 72e32f2a1217bb22398ac30867ddd43e16943b6b569dd4eb472de47494c7a39e34f47ee3e92ad4cbf92308f98997da366fe094a0e58eb6b93eab0ee956fff86d - languageName: node - linkType: hard - "regexp.prototype.flags@npm:^1.5.0": version: 1.5.0 resolution: "regexp.prototype.flags@npm:1.5.0" @@ -12686,12 +12678,12 @@ __metadata: languageName: node linkType: hard -"sparse-octree@npm:7.1.6": - version: 7.1.6 - resolution: "sparse-octree@npm:7.1.6" +"sparse-octree@npm:7.1.8": + version: 7.1.8 + resolution: "sparse-octree@npm:7.1.8" peerDependencies: three: 0.x.x - checksum: 310fa0472815a15a2b6f04baf108720a9a953fc6f3e54318a18bd31f613a333a922ca3240306f678e075612a3adab06f63dd4cca73edc974fde73eaac2689798 + checksum: 07074c703cd9cee9e3c1becc0b125356ffcea72713d47c4229b1ba3cd56ffbf68223c4a75586a0c6923a56e322b6383dd37b37e58c83471d2632e111a60c0a71 languageName: node linkType: hard @@ -12810,6 +12802,13 @@ __metadata: languageName: node linkType: hard +"strict-uri-encode@npm:^1.0.0": + version: 1.1.0 + resolution: "strict-uri-encode@npm:1.1.0" + checksum: 9466d371f7b36768d43f7803f26137657559e4c8b0161fb9e320efb8edba3ae22f8e99d4b0d91da023b05a13f62ec5412c3f4f764b5788fac11d1fea93720bb3 + languageName: node + linkType: hard + "string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -12821,13 +12820,6 @@ __metadata: languageName: node linkType: hard -"string.prototype.codepointat@npm:^0.2.1": - version: 0.2.1 - resolution: "string.prototype.codepointat@npm:0.2.1" - checksum: bafa15844d7ea5bed24a01fa8954327c0c49226cefe68ab70573f1338f6a4680587db962724924f2cceb91abe408e11bd38c80095f25ee080f136a6c9d300f00 - languageName: node - linkType: hard - "string_decoder@npm:^1.1.1": version: 1.3.0 resolution: "string_decoder@npm:1.3.0" @@ -13123,24 +13115,10 @@ __metadata: languageName: node linkType: hard -"three-stdlib@npm:2.23.4": - version: 2.23.4 - resolution: "three-stdlib@npm:2.23.4" - dependencies: - "@types/draco3d": ^1.4.0 - "@types/offscreencanvas": ^2019.6.4 - "@types/webxr": ^0.5.2 - chevrotain: ^10.1.2 - draco3d: ^1.4.1 - fflate: ^0.6.9 - ktx-parse: ^0.4.5 - mmd-parser: ^1.0.4 - opentype.js: ^1.3.3 - potpack: ^1.0.1 - zstddec: ^0.0.2 - peerDependencies: - three: ">=0.128.0" - checksum: da676dca345841c11c9129d3d8cdf15e7d84dc958fd80833e48b9f3faf1ce166989dc17bf3aad3d70856785efdde890f4194f78b740c9f2a043a8ca1b295a407 +"three@npm:0.152.2": + version: 0.152.2 + resolution: "three@npm:0.152.2" + checksum: 6d2d990dbff60b99c7e58b7f1446bb4bd235c7db5dd848a671385e01ae5c72bec865265be7f5a82907ecc96186acc13177d7de1252bc9592f5c9ebaffd1da1e7 languageName: node linkType: hard @@ -13164,13 +13142,6 @@ __metadata: languageName: node linkType: hard -"tiny-inflate@npm:^1.0.3": - version: 1.0.3 - resolution: "tiny-inflate@npm:1.0.3" - checksum: 4086a1f8938dafa4a20c63b099aeb47bf8fef5aca991bf4ea4b35dd2684fa52363b2c19b3e76660311e7613cb7c4f063bc48751b9bdf9555e498d997c30bc2d6 - languageName: node - linkType: hard - "tippy.js@npm:6.3.7, tippy.js@npm:^6.3.1": version: 6.3.7 resolution: "tippy.js@npm:6.3.7" @@ -13485,6 +13456,16 @@ __metadata: languageName: node linkType: hard +"url@npm:^0.11.0": + version: 0.11.1 + resolution: "url@npm:0.11.1" + dependencies: + punycode: ^1.4.1 + qs: ^6.11.0 + checksum: a7de4b37bbcbe60ef199acda4ce437ef843c0ef3a4b34ec3e3d97e0446a5f50dc7bfeafbe33ad118cf4e5aa04805e1328f0d0126e254f2b77bb8498fa395c596 + languageName: node + linkType: hard + "use-resize-observer@npm:^9.1.0": version: 9.1.0 resolution: "use-resize-observer@npm:9.1.0" @@ -14008,10 +13989,3 @@ __metadata: checksum: f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700 languageName: node linkType: hard - -"zstddec@npm:^0.0.2": - version: 0.0.2 - resolution: "zstddec@npm:0.0.2" - checksum: 107334442a34590173cda03614006337712658fd043fa79f72bd486de527e2a16da474d7b20d4a171f086b334c2ad8a72afb634776d79bc2c36aee065babe31b - languageName: node - linkType: hard