@equinor/videx-3d 5.1.0-beta
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/LICENSE.md +21 -0
- package/README.md +120 -0
- package/dist/chunk-BX-cez1_.js +23 -0
- package/dist/chunk-CnY6Tmof.js +358 -0
- package/dist/chunk-MFzFdEWm.js +591 -0
- package/dist/chunk-iY0wQ9Z6.js +887 -0
- package/dist/generators.js +711 -0
- package/dist/main.js +8405 -0
- package/dist/sdk.js +610 -0
- package/dist/shaderLib/color-conversion.glsl +33 -0
- package/dist/shaderLib/colors.glsl +8 -0
- package/dist/shaderLib/glyphs.glsl +78 -0
- package/dist/shaderLib/random.glsl +3 -0
- package/dist/shaderLib/remap.glsl +13 -0
- package/dist/shaderLib/render-number.glsl +74 -0
- package/dist/shaderLib/render-text.glsl +66 -0
- package/dist/shaderLib/rotation.glsl +19 -0
- package/dist/shaderLib/sdf-functions.glsl +18 -0
- package/dist/textures/normal_map.jpg +0 -0
- package/dist/types/common/color-ramps.d.ts +5 -0
- package/dist/types/common/types.d.ts +25 -0
- package/dist/types/components/Annotations/Annotations.d.ts +42 -0
- package/dist/types/components/Annotations/AnnotationsHMTL.d.ts +1 -0
- package/dist/types/components/Annotations/AnnotationsLayer.d.ts +46 -0
- package/dist/types/components/Annotations/AutoUpdate.d.ts +3 -0
- package/dist/types/components/Annotations/DefaultLabelComponent.d.ts +11 -0
- package/dist/types/components/Annotations/TestAnnotations.d.ts +12 -0
- package/dist/types/components/Annotations/annotations-renderer.d.ts +26 -0
- package/dist/types/components/Annotations/annotations-state.d.ts +88 -0
- package/dist/types/components/Annotations/helpers.d.ts +11 -0
- package/dist/types/components/Annotations/index.d.ts +8 -0
- package/dist/types/components/Annotations/types.d.ts +80 -0
- package/dist/types/components/Annotations/update-annotations.d.ts +12 -0
- package/dist/types/components/CameraTargetMarker/CameraTargetMarker.d.ts +29 -0
- package/dist/types/components/Distance/Distance.d.ts +35 -0
- package/dist/types/components/Distance/DistanceContext.d.ts +12 -0
- package/dist/types/components/Distance/index.d.ts +2 -0
- package/dist/types/components/EventEmitter/EventEmitter.d.ts +20 -0
- package/dist/types/components/EventEmitter/EventEmitterContext.d.ts +90 -0
- package/dist/types/components/EventEmitter/index.d.ts +3 -0
- package/dist/types/components/EventEmitter/picking-helper.d.ts +32 -0
- package/dist/types/components/EventEmitter/picking-material.d.ts +11 -0
- package/dist/types/components/Grids/BoxGrid/BoxGrid.d.ts +52 -0
- package/dist/types/components/Grids/Grid/Grid.d.ts +62 -0
- package/dist/types/components/Grids/Grid/GridAxesLabels.d.ts +24 -0
- package/dist/types/components/Grids/Grid/UtmGrid.d.ts +30 -0
- package/dist/types/components/Grids/Grid/grid-helpers.d.ts +2 -0
- package/dist/types/components/Grids/index.d.ts +5 -0
- package/dist/types/components/Highlighter/Highlighter.d.ts +23 -0
- package/dist/types/components/Highlighter/highlight-state.d.ts +43 -0
- package/dist/types/components/Highlighter/index.d.ts +2 -0
- package/dist/types/components/Html/DepthSelector.d.ts +1 -0
- package/dist/types/components/Html/OutputPanel/OutputPanel.d.ts +10 -0
- package/dist/types/components/Html/OutputPanel/index.d.ts +2 -0
- package/dist/types/components/Html/OutputPanel/output-panel-state.d.ts +38 -0
- package/dist/types/components/Html/Panel/Panel.d.ts +20 -0
- package/dist/types/components/Html/WellMap/ActiveTrack.d.ts +9 -0
- package/dist/types/components/Html/WellMap/DepthCursor.d.ts +8 -0
- package/dist/types/components/Html/WellMap/DepthReadout.d.ts +6 -0
- package/dist/types/components/Html/WellMap/Schematic.d.ts +15 -0
- package/dist/types/components/Html/WellMap/Track.d.ts +13 -0
- package/dist/types/components/Html/WellMap/WellMap.d.ts +47 -0
- package/dist/types/components/Html/WellMap/addons/WellMapCasingShoes.d.ts +14 -0
- package/dist/types/components/Html/WellMap/addons/WellMapCompletionIntervals.d.ts +15 -0
- package/dist/types/components/Html/WellMap/addons/WellMapFormations.d.ts +14 -0
- package/dist/types/components/Html/WellMap/addons/WellMapTvd.d.ts +14 -0
- package/dist/types/components/Html/WellMap/addons/index.d.ts +4 -0
- package/dist/types/components/Html/WellMap/index.d.ts +4 -0
- package/dist/types/components/Html/WellMap/themes.d.ts +13 -0
- package/dist/types/components/Html/WellMap/well-map-context.d.ts +34 -0
- package/dist/types/components/Html/WellMap/well-map-state.d.ts +38 -0
- package/dist/types/components/Html/index.d.ts +5 -0
- package/dist/types/components/ObservableGroup/ObservableGroup.d.ts +38 -0
- package/dist/types/components/SDFTest/SDFTest.d.ts +12 -0
- package/dist/types/components/Surfaces/Surface.d.ts +46 -0
- package/dist/types/components/Surfaces/SurfaceMaterial.d.ts +53 -0
- package/dist/types/components/Surfaces/index.d.ts +4 -0
- package/dist/types/components/Surfaces/surface-defs.d.ts +7 -0
- package/dist/types/components/Symbol/Symbol.d.ts +45 -0
- package/dist/types/components/Symbol/index.d.ts +1 -0
- package/dist/types/components/UtmArea/UtmArea.d.ts +37 -0
- package/dist/types/components/UtmArea/UtmAreaContext.d.ts +32 -0
- package/dist/types/components/UtmArea/UtmPosition.d.ts +26 -0
- package/dist/types/components/UtmArea/Wgs84Position.d.ts +26 -0
- package/dist/types/components/UtmArea/index.d.ts +4 -0
- package/dist/types/components/Wellbores/BasicTrajectory/BasicTrajectory.d.ts +27 -0
- package/dist/types/components/Wellbores/BasicTrajectory/basic-trajectory-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/BasicTrajectory/index.d.ts +2 -0
- package/dist/types/components/Wellbores/Casings/CasingAnnotations/CasingAnnotations.d.ts +9 -0
- package/dist/types/components/Wellbores/Casings/CasingAnnotations/CasingLabel.d.ts +9 -0
- package/dist/types/components/Wellbores/Casings/CasingAnnotations/casing-annotations-defs.d.ts +1 -0
- package/dist/types/components/Wellbores/Casings/Casings.d.ts +42 -0
- package/dist/types/components/Wellbores/Casings/casings-defs.d.ts +6 -0
- package/dist/types/components/Wellbores/Casings/index.d.ts +5 -0
- package/dist/types/components/Wellbores/CompletionTools/CompletionAnnotations/CompletionAnnotations.d.ts +9 -0
- package/dist/types/components/Wellbores/CompletionTools/CompletionAnnotations/completion-annotations-defs.d.ts +1 -0
- package/dist/types/components/Wellbores/CompletionTools/CompletionTools.d.ts +31 -0
- package/dist/types/components/Wellbores/CompletionTools/Screen/screen-material.d.ts +8 -0
- package/dist/types/components/Wellbores/CompletionTools/completion-tools-defs.d.ts +4 -0
- package/dist/types/components/Wellbores/CompletionTools/index.d.ts +5 -0
- package/dist/types/components/Wellbores/DepthMarkers/DepthMarkerLabel.d.ts +11 -0
- package/dist/types/components/Wellbores/DepthMarkers/DepthMarkers.d.ts +27 -0
- package/dist/types/components/Wellbores/DepthMarkers/depth-markers-defs.d.ts +1 -0
- package/dist/types/components/Wellbores/DepthMarkers/index.d.ts +3 -0
- package/dist/types/components/Wellbores/FormationMarkers/FormationMarkerLabel.d.ts +10 -0
- package/dist/types/components/Wellbores/FormationMarkers/FormationMarkers.d.ts +33 -0
- package/dist/types/components/Wellbores/FormationMarkers/formation-markers-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/FormationMarkers/index.d.ts +3 -0
- package/dist/types/components/Wellbores/Perforations/Perforations.d.ts +32 -0
- package/dist/types/components/Wellbores/Perforations/index.d.ts +2 -0
- package/dist/types/components/Wellbores/Perforations/perforations-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/Perimeter/Perimeter.d.ts +29 -0
- package/dist/types/components/Wellbores/Perimeter/index.d.ts +2 -0
- package/dist/types/components/Wellbores/Perimeter/perimeter-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/PositionMarkers/PositionMarkers.d.ts +12 -0
- package/dist/types/components/Wellbores/PositionMarkers/position-markers-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/Shoes/Shoes.d.ts +34 -0
- package/dist/types/components/Wellbores/Shoes/index.d.ts +2 -0
- package/dist/types/components/Wellbores/Shoes/shoes-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/TubeTrajectory/TubeTrajectory.d.ts +25 -0
- package/dist/types/components/Wellbores/TubeTrajectory/index.d.ts +2 -0
- package/dist/types/components/Wellbores/TubeTrajectory/tube-geometry-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/Wellbore/Wellbore.d.ts +45 -0
- package/dist/types/components/Wellbores/Wellbore/WellboreContext.d.ts +19 -0
- package/dist/types/components/Wellbores/Wellbore/index.d.ts +2 -0
- package/dist/types/components/Wellbores/WellboreBounds/WellboreBounds.d.ts +47 -0
- package/dist/types/components/Wellbores/WellboreBounds/index.d.ts +2 -0
- package/dist/types/components/Wellbores/WellboreBounds/wellbore-bounds-defs.d.ts +1 -0
- package/dist/types/components/Wellbores/WellboreFormationColumn/WellboreFormationColumn.d.ts +30 -0
- package/dist/types/components/Wellbores/WellboreFormationColumn/index.d.ts +2 -0
- package/dist/types/components/Wellbores/WellboreFormationColumn/wellbore-formation-column-defs.d.ts +3 -0
- package/dist/types/components/Wellbores/WellboreLabel/WellboreAnnotationLabel.d.ts +10 -0
- package/dist/types/components/Wellbores/WellboreLabel/WellboreLabel.d.ts +25 -0
- package/dist/types/components/Wellbores/WellboreLabel/index.d.ts +3 -0
- package/dist/types/components/Wellbores/WellboreLabel/wellbore-label-defs.d.ts +1 -0
- package/dist/types/components/Wellbores/WellboreRibbon/WellboreRibbon.d.ts +22 -0
- package/dist/types/components/Wellbores/WellboreRibbon/WellboreRibbonContext.d.ts +16 -0
- package/dist/types/components/Wellbores/WellboreRibbon/index.d.ts +4 -0
- package/dist/types/components/Wellbores/WellboreRibbon/stripes/FormationsStripe.d.ts +30 -0
- package/dist/types/components/Wellbores/WellboreRibbon/stripes/MeasuredDepthStripe.d.ts +28 -0
- package/dist/types/components/Wellbores/WellboreSeismicSection/WellboreSeismicSection.d.ts +34 -0
- package/dist/types/components/Wellbores/WellboreSeismicSection/index.d.ts +2 -0
- package/dist/types/components/Wellbores/WellboreSeismicSection/wellbore-seismic-section-defs.d.ts +12 -0
- package/dist/types/components/Wellbores/Wells/Wells.d.ts +43 -0
- package/dist/types/components/Wellbores/Wells/index.d.ts +1 -0
- package/dist/types/contexts/DataContext.d.ts +15 -0
- package/dist/types/contexts/DataContextProvider.d.ts +33 -0
- package/dist/types/contexts/GeneratorsContext.d.ts +13 -0
- package/dist/types/contexts/GeneratorsContextProvider.d.ts +34 -0
- package/dist/types/contexts/GlyphsContext.d.ts +19 -0
- package/dist/types/contexts/GlyphsContextProvider.d.ts +29 -0
- package/dist/types/events/camera-events.d.ts +34 -0
- package/dist/types/events/depth-events.d.ts +22 -0
- package/dist/types/events/interaction-events.d.ts +7 -0
- package/dist/types/events/wellbore-events.d.ts +46 -0
- package/dist/types/generators/basic-trajectory-generator.d.ts +2 -0
- package/dist/types/generators/casing-annotations-generator.d.ts +8 -0
- package/dist/types/generators/casings-generator.d.ts +4 -0
- package/dist/types/generators/completion-annotations-generator.d.ts +7 -0
- package/dist/types/generators/completion-tools-generator.d.ts +2 -0
- package/dist/types/generators/depth-markers-generator.d.ts +3 -0
- package/dist/types/generators/formation-markers-generator.d.ts +2 -0
- package/dist/types/generators/index.d.ts +20 -0
- package/dist/types/generators/perforations-generator.d.ts +2 -0
- package/dist/types/generators/perimieter-generator.d.ts +2 -0
- package/dist/types/generators/position-markers-generator.d.ts +2 -0
- package/dist/types/generators/shoes-generator.d.ts +2 -0
- package/dist/types/generators/surface-generator.d.ts +4 -0
- package/dist/types/generators/tube-trajectory-generator.d.ts +2 -0
- package/dist/types/generators/wellbore-bounds-generator.d.ts +2 -0
- package/dist/types/generators/wellbore-formation-column-generator.d.ts +2 -0
- package/dist/types/generators/wellbore-label-generator.d.ts +7 -0
- package/dist/types/generators/wellbore-seismic-section-generator.d.ts +3 -0
- package/dist/types/hooks/useData.d.ts +25 -0
- package/dist/types/hooks/useGenerator.d.ts +43 -0
- package/dist/types/hooks/useWellboreContext.d.ts +13 -0
- package/dist/types/layers/layers.d.ts +6 -0
- package/dist/types/main.d.ts +48 -0
- package/dist/types/rendering/fullscreen-renderer.d.ts +9 -0
- package/dist/types/rendering/index.d.ts +2 -0
- package/dist/types/rendering/render-passes.d.ts +16 -0
- package/dist/types/sdk/data/DataLoader.d.ts +54 -0
- package/dist/types/sdk/data/GeneratorRegistry.d.ts +15 -0
- package/dist/types/sdk/data/Store.d.ts +29 -0
- package/dist/types/sdk/data/helpers/formations-helpers.d.ts +24 -0
- package/dist/types/sdk/data/helpers/well-helpers.d.ts +9 -0
- package/dist/types/sdk/data/types/Casing.d.ts +8 -0
- package/dist/types/sdk/data/types/CompletionTool.d.ts +11 -0
- package/dist/types/sdk/data/types/DepthReferencePoint.d.ts +1 -0
- package/dist/types/sdk/data/types/Formation.d.ts +32 -0
- package/dist/types/sdk/data/types/PerforationInterval.d.ts +9 -0
- package/dist/types/sdk/data/types/Pick.d.ts +8 -0
- package/dist/types/sdk/data/types/PositionLog.d.ts +17 -0
- package/dist/types/sdk/data/types/StratColumn.d.ts +18 -0
- package/dist/types/sdk/data/types/SurfaceMeta.d.ts +23 -0
- package/dist/types/sdk/data/types/SurfaceValues.d.ts +1 -0
- package/dist/types/sdk/data/types/Symbol.d.ts +6 -0
- package/dist/types/sdk/data/types/VerticalSlice.d.ts +9 -0
- package/dist/types/sdk/data/types/WellboreHeader.d.ts +15 -0
- package/dist/types/sdk/data/types/index.d.ts +11 -0
- package/dist/types/sdk/geometries/curve/curve-3d.d.ts +46 -0
- package/dist/types/sdk/geometries/curve/tube-geometry.d.ts +34 -0
- package/dist/types/sdk/geometries/delatin.d.ts +44 -0
- package/dist/types/sdk/geometries/fence.d.ts +3 -0
- package/dist/types/sdk/geometries/packing.d.ts +46 -0
- package/dist/types/sdk/geometries/triangulate-grid-delaunay.d.ts +8 -0
- package/dist/types/sdk/geometries/triangulate-grid.d.ts +28 -0
- package/dist/types/sdk/index.d.ts +39 -0
- package/dist/types/sdk/managers/CameraManager.d.ts +11 -0
- package/dist/types/sdk/managers/WellboreManager.d.ts +18 -0
- package/dist/types/sdk/materials/depth-material.d.ts +4 -0
- package/dist/types/sdk/materials/ribbon-material.d.ts +24 -0
- package/dist/types/sdk/materials/tube-material.d.ts +7 -0
- package/dist/types/sdk/materials/uv-material.d.ts +2 -0
- package/dist/types/sdk/projection/crs.d.ts +37 -0
- package/dist/types/sdk/types/common.d.ts +4 -0
- package/dist/types/sdk/utils/array.d.ts +0 -0
- package/dist/types/sdk/utils/colors.d.ts +2 -0
- package/dist/types/sdk/utils/conversions.d.ts +5 -0
- package/dist/types/sdk/utils/depth-reader.d.ts +5 -0
- package/dist/types/sdk/utils/elevation-map.d.ts +15 -0
- package/dist/types/sdk/utils/glyphs.d.ts +50 -0
- package/dist/types/sdk/utils/irapbin-parser.d.ts +17 -0
- package/dist/types/sdk/utils/num-array.d.ts +2 -0
- package/dist/types/sdk/utils/numbers.d.ts +5 -0
- package/dist/types/sdk/utils/packing.d.ts +1 -0
- package/dist/types/sdk/utils/scene.d.ts +2 -0
- package/dist/types/sdk/utils/segments.d.ts +4 -0
- package/dist/types/sdk/utils/strings.d.ts +2 -0
- package/dist/types/sdk/utils/trajectory.d.ts +59 -0
- package/dist/types/sdk/utils/trigonometry.d.ts +12 -0
- package/dist/types/sdk/utils/typed-2d-array.d.ts +52 -0
- package/dist/types/sdk/utils/typed-array.d.ts +2 -0
- package/dist/types/sdk/utils/vector-operations.d.ts +29 -0
- package/package.json +127 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module sdk
|
|
3
|
+
*/
|
|
4
|
+
export * from './data/DataLoader';
|
|
5
|
+
export * from './data/GeneratorRegistry';
|
|
6
|
+
export * from './data/helpers/formations-helpers';
|
|
7
|
+
export * from './data/helpers/well-helpers';
|
|
8
|
+
export * from './data/Store';
|
|
9
|
+
export * from './data/types';
|
|
10
|
+
export * from './geometries/curve/curve-3d';
|
|
11
|
+
export * from './geometries/curve/tube-geometry';
|
|
12
|
+
export * from './geometries/delatin';
|
|
13
|
+
export * from './geometries/fence';
|
|
14
|
+
export * from './geometries/packing';
|
|
15
|
+
export * from './geometries/triangulate-grid';
|
|
16
|
+
export * from './geometries/triangulate-grid-delaunay';
|
|
17
|
+
export * from './managers/CameraManager';
|
|
18
|
+
export * from './managers/WellboreManager';
|
|
19
|
+
export * from './projection/crs';
|
|
20
|
+
export * from './types/common';
|
|
21
|
+
export * from './utils/colors';
|
|
22
|
+
export * from './utils/conversions';
|
|
23
|
+
export * from './utils/depth-reader';
|
|
24
|
+
export * from './utils/elevation-map';
|
|
25
|
+
export * from './utils/glyphs';
|
|
26
|
+
export * from './utils/irapbin-parser';
|
|
27
|
+
export * from './utils/num-array';
|
|
28
|
+
export * from './utils/numbers';
|
|
29
|
+
export * from './utils/scene';
|
|
30
|
+
export * from './utils/segments';
|
|
31
|
+
export * from './utils/strings';
|
|
32
|
+
export * from './utils/trajectory';
|
|
33
|
+
export * from './utils/trigonometry';
|
|
34
|
+
export * from './utils/typed-2d-array';
|
|
35
|
+
export * from './utils/typed-array';
|
|
36
|
+
export * from './utils/vector-operations';
|
|
37
|
+
export * from './materials/depth-material';
|
|
38
|
+
export * from './materials/tube-material';
|
|
39
|
+
export * from './materials/uv-material';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CameraControls } from '@react-three/drei';
|
|
2
|
+
import { Vec3 } from '../types/common';
|
|
3
|
+
export declare class CameraManager {
|
|
4
|
+
controls: CameraControls | null;
|
|
5
|
+
removeEventlisteners: (() => void) | null;
|
|
6
|
+
constructor();
|
|
7
|
+
private addEventListeners;
|
|
8
|
+
setTarget(target: Vec3): Promise<void | null>;
|
|
9
|
+
setControls(controls: CameraControls): void;
|
|
10
|
+
dispose(): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Object3D } from 'three';
|
|
2
|
+
import { Vec3 } from '../types/common';
|
|
3
|
+
export type WellboreManagerRecord = {
|
|
4
|
+
wellboreId: string;
|
|
5
|
+
object: Object3D;
|
|
6
|
+
};
|
|
7
|
+
export declare class WellboreManager {
|
|
8
|
+
private map;
|
|
9
|
+
constructor();
|
|
10
|
+
private onWellboreAdded;
|
|
11
|
+
private onWellboreRemoved;
|
|
12
|
+
getInfo(id: string): {
|
|
13
|
+
position: Vec3;
|
|
14
|
+
wellboreId: string;
|
|
15
|
+
object: Object3D;
|
|
16
|
+
} | undefined;
|
|
17
|
+
dispose(): void;
|
|
18
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Color, MeshLambertMaterialParameters, ShaderMaterial, Texture } from 'three';
|
|
2
|
+
export type RibonMaterialParams = MeshLambertMaterialParameters & {
|
|
3
|
+
angle?: number;
|
|
4
|
+
width?: number;
|
|
5
|
+
offset?: number;
|
|
6
|
+
ignoreLight?: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare class RibbonMaterial extends ShaderMaterial {
|
|
9
|
+
isRibbonMaterial: boolean;
|
|
10
|
+
constructor(parameters?: RibonMaterialParams);
|
|
11
|
+
get color(): Color;
|
|
12
|
+
set color(color: Color);
|
|
13
|
+
get angle(): number;
|
|
14
|
+
set angle(a: number);
|
|
15
|
+
get offset(): number;
|
|
16
|
+
set offset(o: number);
|
|
17
|
+
get width(): number;
|
|
18
|
+
set width(w: number);
|
|
19
|
+
get map(): Texture | null;
|
|
20
|
+
set map(m: Texture | null);
|
|
21
|
+
get ignoreLight(): boolean;
|
|
22
|
+
set ignoreLight(f: boolean);
|
|
23
|
+
onBeforeCompile(): void;
|
|
24
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Color, MeshBasicMaterialParameters, ShaderMaterial } from 'three';
|
|
2
|
+
export declare class TubeMaterial extends ShaderMaterial {
|
|
3
|
+
isTubeMaterial: boolean;
|
|
4
|
+
constructor(parameters?: MeshBasicMaterialParameters);
|
|
5
|
+
get color(): Color;
|
|
6
|
+
set color(color: Color);
|
|
7
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Converter } from 'proj4';
|
|
2
|
+
export declare const wgs84Def = "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs";
|
|
3
|
+
/**
|
|
4
|
+
* Maps between real world UTM coordinates and 3d world coordinates by assigning a known real world
|
|
5
|
+
* position to the center of the 3d world and specifying an UTM zone.
|
|
6
|
+
*/
|
|
7
|
+
export declare class CRS {
|
|
8
|
+
utmDef: string;
|
|
9
|
+
originWgs84: [number, number];
|
|
10
|
+
originUtm: [number, number];
|
|
11
|
+
_projection: Converter;
|
|
12
|
+
constructor(utmDef: string, origin: [number, number], originUnits?: 'utm' | 'lnglat');
|
|
13
|
+
utmToWgs84(eastingNorthing: [number, number]): [number, number];
|
|
14
|
+
wgs84ToUtm(lngLat: [number, number]): [number, number];
|
|
15
|
+
utmToWorld(easting: number, northing: number, altitude: number): {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
z: number;
|
|
19
|
+
};
|
|
20
|
+
worldToUtm(x: number, y: number, z: number): {
|
|
21
|
+
easting: number;
|
|
22
|
+
altitude: number;
|
|
23
|
+
northing: number;
|
|
24
|
+
};
|
|
25
|
+
wgs84ToWorld(lng: number, lat: number, altitude?: number): {
|
|
26
|
+
x: number;
|
|
27
|
+
y: number;
|
|
28
|
+
z: number;
|
|
29
|
+
};
|
|
30
|
+
worldToWgs84(x: number, y: number, z: number): {
|
|
31
|
+
lng: number;
|
|
32
|
+
lat: number;
|
|
33
|
+
alt: number;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export declare function getProjectionDefFromUtmZone(utmZone: string): string;
|
|
37
|
+
export declare function getUtmZoneFromLatLng([lng, lat]: [number, number]): string;
|
|
File without changes
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Vec2 } from '../types/common';
|
|
2
|
+
export declare function feetToMeters(feet: number): number;
|
|
3
|
+
export declare function degreesToRadians(deg: number): number;
|
|
4
|
+
export declare const screenToNormalizedDevice: (pos: Vec2, width?: number, height?: number) => Vec2;
|
|
5
|
+
export declare const normalizedDeviceToScreen: (pos: Vec2, width?: number, height?: number) => Vec2;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PerspectiveCamera, Texture, WebGLRenderer } from 'three';
|
|
2
|
+
/**
|
|
3
|
+
* Read-back the normalized device coordinates from a depth texture
|
|
4
|
+
*/
|
|
5
|
+
export declare function readDepth(depthTexture: Texture, renderer: WebGLRenderer, camera: PerspectiveCamera, idx?: number): Promise<number | number[] | null>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DataTexture } from 'three';
|
|
2
|
+
import { Vec3 } from '../../sdk';
|
|
3
|
+
export declare function triangleNormal(p0: Vec3, p1: Vec3, p2: Vec3): Vec3;
|
|
4
|
+
/**
|
|
5
|
+
* Calcukate and encode surface normals from an elevation grid as RGBA image values.
|
|
6
|
+
*/
|
|
7
|
+
export declare function elevationMapNormalsToRGBA(data: Float32Array, columns: number, xScale: number, yScale: number, rotation?: number, nullValue?: number): Uint8Array<ArrayBuffer>;
|
|
8
|
+
/**
|
|
9
|
+
* Create a data texture from RGBA encoded normals
|
|
10
|
+
*/
|
|
11
|
+
export declare function createNormalTexture(buffer: Uint8Array, width: number, height: number): DataTexture;
|
|
12
|
+
/**
|
|
13
|
+
* Create a data texture from RGBA encoded depth values
|
|
14
|
+
*/
|
|
15
|
+
export declare function createElevationTexture(buffer: Float32Array, width: number, height: number): DataTexture;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { DataTexture, UniformsGroup } from 'three';
|
|
2
|
+
export type Glyph = {
|
|
3
|
+
position: [number, number];
|
|
4
|
+
dimension: [number, number];
|
|
5
|
+
offset: [number, number];
|
|
6
|
+
spacing: number;
|
|
7
|
+
};
|
|
8
|
+
export type EncodedTextSegment = {
|
|
9
|
+
indices: number[];
|
|
10
|
+
width: number;
|
|
11
|
+
};
|
|
12
|
+
export type EncodedTextTexture = {
|
|
13
|
+
texture: DataTexture;
|
|
14
|
+
textPointersOffset: number;
|
|
15
|
+
textPointersCount: number;
|
|
16
|
+
};
|
|
17
|
+
export type GlyphConfig = {
|
|
18
|
+
glyphsCount: number;
|
|
19
|
+
glyphData: UniformsGroup;
|
|
20
|
+
encodeText: (text: string) => EncodedTextSegment;
|
|
21
|
+
encodeTextTexture: (textSegments: string[] | string) => EncodedTextTexture;
|
|
22
|
+
dispose: () => void;
|
|
23
|
+
};
|
|
24
|
+
export interface MsdfFontJson {
|
|
25
|
+
info: {
|
|
26
|
+
size: number;
|
|
27
|
+
};
|
|
28
|
+
common: {
|
|
29
|
+
scaleW: number;
|
|
30
|
+
scaleH: number;
|
|
31
|
+
lineHeight: number;
|
|
32
|
+
base: number;
|
|
33
|
+
};
|
|
34
|
+
chars: {
|
|
35
|
+
id: number;
|
|
36
|
+
index: number;
|
|
37
|
+
char: string;
|
|
38
|
+
width: number;
|
|
39
|
+
height: number;
|
|
40
|
+
xoffset: number;
|
|
41
|
+
yoffset: number;
|
|
42
|
+
xadvance: number;
|
|
43
|
+
x: number;
|
|
44
|
+
y: number;
|
|
45
|
+
}[];
|
|
46
|
+
distanceField: {
|
|
47
|
+
distanceRange: number;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export declare function createConfig(json: MsdfFontJson): GlyphConfig;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parses irabin surface/horizon binary files and return the header information and elevation data
|
|
3
|
+
*/
|
|
4
|
+
export declare function parseIrapbin(blob: Blob, nullValue?: number, refDepth?: number | null): Promise<{
|
|
5
|
+
header: {
|
|
6
|
+
ny: number;
|
|
7
|
+
xori: number;
|
|
8
|
+
xmax: number;
|
|
9
|
+
yori: number;
|
|
10
|
+
ymax: number;
|
|
11
|
+
xinc: number;
|
|
12
|
+
yinc: number;
|
|
13
|
+
nx: number;
|
|
14
|
+
rot: number;
|
|
15
|
+
};
|
|
16
|
+
data: Float32Array<ArrayBuffer>;
|
|
17
|
+
}>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare function clamp(value: number, min?: number, max?: number): number;
|
|
2
|
+
export declare function lerp(from: number, to: number, t: number): number;
|
|
3
|
+
export declare function inverseLerp(v: number, minValue: number, maxValue: number): number;
|
|
4
|
+
export declare function remap(v: number, inMin: number, inMax: number, outMin: number, outMax: number): number;
|
|
5
|
+
export declare const toRGB: (v: number) => number[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function unpackRGBAToDepth(r: number, g: number, b: number, a: number): number;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { PositionLog } from '../data/types/PositionLog';
|
|
2
|
+
import { Curve3D } from '../geometries/curve/curve-3d';
|
|
3
|
+
import { Vec2, Vec3 } from '../types/common';
|
|
4
|
+
/**
|
|
5
|
+
* Interface for defining a trajectory. This can be used to work with wellbore trajectories,
|
|
6
|
+
* where the measured top, termination point and length are known. The measured length should
|
|
7
|
+
* be used when calculating positions of data given in MD, so that the position on the curve is
|
|
8
|
+
* given by:
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* const pos = (md - trajectory.measuredTop) / trajectory.measuredLength
|
|
12
|
+
*
|
|
13
|
+
* @remarks
|
|
14
|
+
* Avoid using the calculated length of the curve for this purpose, as this may potentially be less precise/consistant.
|
|
15
|
+
* The `getPointAtDepth` function in this interface is calculated as in the above example when created using the `getTrajectory` function.
|
|
16
|
+
*
|
|
17
|
+
* @see {@link getTrajectory}
|
|
18
|
+
* @see {@link Curve3D}
|
|
19
|
+
*/
|
|
20
|
+
export interface Trajectory {
|
|
21
|
+
id: string | number;
|
|
22
|
+
measuredLength: number;
|
|
23
|
+
measuredTop: number;
|
|
24
|
+
measuredBottom: number;
|
|
25
|
+
curve: Curve3D;
|
|
26
|
+
getPointAtDepth: (md: number, clamped?: boolean) => Vec3 | null;
|
|
27
|
+
getPositionAtDepth: (md: number, clamped?: boolean) => number | null;
|
|
28
|
+
}
|
|
29
|
+
export type ProjectedTrajectory = {
|
|
30
|
+
positions: Vec2[];
|
|
31
|
+
length: number;
|
|
32
|
+
top: number;
|
|
33
|
+
bottom: number;
|
|
34
|
+
} | null;
|
|
35
|
+
/**
|
|
36
|
+
* Creates an instance conforming to the `Trajectory` interface, given an id and a position log normalized to MSL depths.
|
|
37
|
+
*
|
|
38
|
+
* @see {@link Trajectory}
|
|
39
|
+
*/
|
|
40
|
+
export declare function getTrajectory(id: string, poslogMsl: PositionLog | null): Trajectory | null;
|
|
41
|
+
/**
|
|
42
|
+
* Simplifies a linear 2d curve by comparing direction changes to a threshold value.
|
|
43
|
+
* @param array input array
|
|
44
|
+
* @param accessor accessor to array coordinate element
|
|
45
|
+
* @param threshold threshold value (default 1e-7)
|
|
46
|
+
* @returns T[] array of same type as input array
|
|
47
|
+
*/
|
|
48
|
+
export declare function simplifyCurve2D<T>(array: Array<T>, accessor?: (e: T) => Vec2, threshold?: number): T[];
|
|
49
|
+
/**
|
|
50
|
+
* Generate a equaly spaced trajectory along XZ plane from a linear 3d curve
|
|
51
|
+
* where the distance between coordinates corresponds to stepSize.
|
|
52
|
+
* @param path 3d curve
|
|
53
|
+
* @param stepSize distance between corrdinates in output trajectory
|
|
54
|
+
* @param extension optional extension of original path (extrapolation)
|
|
55
|
+
* @param minSize a minimum size of the output. If less, points will be extrapolated in both ends
|
|
56
|
+
* @param defaultExtensionAngle if there is not enough deviation in the input path to determine an extrapolation angle, this angle will be used (default: 0 radians)
|
|
57
|
+
* @returns 2d curve along the XZ plane
|
|
58
|
+
*/
|
|
59
|
+
export declare function getProjectedTrajectory(path: Vec3[], stepSize: number, extension?: number, minSize?: number, defaultExtensionAngle?: number): ProjectedTrajectory;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Vec2 } from '../types/common';
|
|
2
|
+
export declare const PI: number;
|
|
3
|
+
export declare const TAU: number;
|
|
4
|
+
export declare const PI2: number;
|
|
5
|
+
export declare const PI4: number;
|
|
6
|
+
export declare const PI8: number;
|
|
7
|
+
/**
|
|
8
|
+
* Given a 2D rectangle and an angle off the center, find the point
|
|
9
|
+
* of the closest corner. Used for anchoring connector lines
|
|
10
|
+
* to annotation labels.
|
|
11
|
+
*/
|
|
12
|
+
export declare function edgeOfRectangle(rect: Vec2, theta: number): Vec2;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This class makes it easier to worked with typed arrray used in a 2d grid.
|
|
3
|
+
* It allow you to read from and write to a flat typed array using columns, rows
|
|
4
|
+
* and blocks. It alow you to specify the stride per grid cell, so if you need
|
|
5
|
+
* a grid og RGB colors, you set the stride to 3.
|
|
6
|
+
*
|
|
7
|
+
* Another useful feature of this class is that it will use bilinear interpolation
|
|
8
|
+
* if you reference columns and/or rows with decimal indexes.
|
|
9
|
+
*
|
|
10
|
+
* @author Kjerand Pedersen
|
|
11
|
+
*/
|
|
12
|
+
export type TypedArrayArrayType = Float32Array | Uint8Array | Uint16Array | Uint32Array;
|
|
13
|
+
export type TypedArrayOutputArray = TypedArrayArrayType | undefined;
|
|
14
|
+
export type TypedArrayInputArray = number[];
|
|
15
|
+
export type TypedArrayMapFunction = (input: number | TypedArrayArrayType) => number | TypedArrayArrayType;
|
|
16
|
+
export type InterpolationFunction = (a: number, b: number, c: number, d: number, t1: number, t2: number) => number;
|
|
17
|
+
export declare class Typed2DArray {
|
|
18
|
+
data: TypedArrayArrayType;
|
|
19
|
+
columns: number;
|
|
20
|
+
rows: number;
|
|
21
|
+
stride: number;
|
|
22
|
+
private _rowLength;
|
|
23
|
+
private _lerpFn;
|
|
24
|
+
private arrayConstructor;
|
|
25
|
+
constructor(data: TypedArrayArrayType, columns: number, stride?: number);
|
|
26
|
+
static readWriteBlock(source: Typed2DArray, sourceCol: number, sourceRow: number, sourceColumns: number, sourceRows: number, target: Typed2DArray, targetCol: number, targetRow: number, targetColumns: number, targetRows: number, mapFunction?: TypedArrayMapFunction | null): typeof Typed2DArray;
|
|
27
|
+
static logInterp(a: number, b: number, c: number, d: number, t1: number, t2: number): number;
|
|
28
|
+
static linearInterp(a: number, b: number, c: number, d: number, t1: number, t2: number): number;
|
|
29
|
+
static nearestInterp(a: number, b: number, c: number, d: number, t1: number, t2: number): number;
|
|
30
|
+
get width(): number;
|
|
31
|
+
get height(): number;
|
|
32
|
+
index(col: number, row: number): number;
|
|
33
|
+
positionOf(index: number): {
|
|
34
|
+
row: number;
|
|
35
|
+
col: number;
|
|
36
|
+
} | undefined;
|
|
37
|
+
setInterpolator(...interpolatorFunction: InterpolationFunction[]): this;
|
|
38
|
+
getInterpolator(component: number): InterpolationFunction;
|
|
39
|
+
col(col: number, out: TypedArrayOutputArray): TypedArrayArrayType;
|
|
40
|
+
row(row: number, out: TypedArrayOutputArray): Float32Array<ArrayBufferLike> | Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike> | Uint32Array<ArrayBufferLike>;
|
|
41
|
+
setValue(col: number, row: number, ...value: TypedArrayInputArray): this;
|
|
42
|
+
readBlock(fromCol: number, fromRow: number, columns: number, rows: number, targetColumns?: number, targetRows?: number, out?: TypedArrayOutputArray): TypedArrayArrayType;
|
|
43
|
+
upscale(newColumns: number, newRows: number): this;
|
|
44
|
+
writeBlock(fromCol: number, fromRow: number, columns: number, rows: number, values: number[]): this;
|
|
45
|
+
fillBlock(fromCol: number, fromRow: number, cols: number, rows: number, value: number | ((c: number, r: number, i: number) => number | number[])): this;
|
|
46
|
+
valueOf(index: number, out?: TypedArrayOutputArray): number | TypedArrayArrayType;
|
|
47
|
+
valueAt(col: number, row: number, out?: TypedArrayOutputArray): number | TypedArrayArrayType;
|
|
48
|
+
swapRows(r1: number, r2: number, temp: TypedArrayArrayType): this;
|
|
49
|
+
invertRows(): this;
|
|
50
|
+
copyInto(target: TypedArrayArrayType, fromCol?: number, fromRow?: number, columns?: number, rows?: number): this;
|
|
51
|
+
toJsArray(): any[];
|
|
52
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Vec2, Vec3 } from '../types/common';
|
|
2
|
+
export declare function negateVec3(vec: Vec3): Vec3;
|
|
3
|
+
export declare function getVec3(buffer: number[], id: number): Vec3;
|
|
4
|
+
export declare function setVec3(buffer: number[], id: number, value: Vec3): void;
|
|
5
|
+
export declare function addVec3(v1: Vec3, v2: Vec3): Vec3;
|
|
6
|
+
export declare function subVec3(v1: Vec3, v2: Vec3): Vec3;
|
|
7
|
+
export declare function scaleVec3(vec: Vec3, factor: number): Vec3;
|
|
8
|
+
export declare function lengthVec3(vec: Vec3): number;
|
|
9
|
+
export declare function crossVec3(v1: Vec3, v2: Vec3): Vec3;
|
|
10
|
+
export declare function dotVec3(v1: Vec3, v2: Vec3): number;
|
|
11
|
+
export declare function normalizeVec3(v: Vec3): Vec3;
|
|
12
|
+
export declare function mixVec3(v1: Vec3, v2: Vec3, t?: number): Vec3;
|
|
13
|
+
export declare function copyVec3(vec: Vec3): Vec3;
|
|
14
|
+
export declare function angleVec3(v1: Vec3, v2: Vec3): number;
|
|
15
|
+
export declare function rotateVec3(vector: Vec3, axis?: Vec3, angle?: number): Vec3;
|
|
16
|
+
export declare function directionVec3(v1: Vec3, v2: Vec3): Vec3;
|
|
17
|
+
export declare function distanceVec3(v1: Vec3, v2: Vec3): number;
|
|
18
|
+
export declare function getVec2(buffer: number[], id: number): Vec2;
|
|
19
|
+
export declare function setVec2(buffer: number[], id: number, value: Vec2): void;
|
|
20
|
+
export declare function normalizeVec2(v: Vec2): Vec2;
|
|
21
|
+
export declare function addVec2(v1: Vec2, v2: Vec2): Vec2;
|
|
22
|
+
export declare function subVec2(v1: Vec2, v2: Vec2): Vec2;
|
|
23
|
+
export declare function dotVec2(v1: Vec2, v2: Vec2): number;
|
|
24
|
+
export declare function negateVec2(vec: Vec2): Vec2;
|
|
25
|
+
export declare function scaleVec2(vec: Vec2, factor: number): Vec2;
|
|
26
|
+
export declare function lengthVec2(vec: Vec2): number;
|
|
27
|
+
export declare function mixVec2(v1: Vec2, v2: Vec2, t?: number): Vec2;
|
|
28
|
+
export declare function directionVec2(v1: Vec2, v2: Vec2): Vec2;
|
|
29
|
+
export declare function distanceVec2(v1: Vec2, v2: Vec2): number;
|
package/package.json
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@equinor/videx-3d",
|
|
3
|
+
"version": "5.1.0-beta",
|
|
4
|
+
"private": false,
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"description": "React 3D component library designed for sub surface visualizations in the browser",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/equinor/videx-3d.git"
|
|
11
|
+
},
|
|
12
|
+
"keywords": [
|
|
13
|
+
"3d",
|
|
14
|
+
"React",
|
|
15
|
+
"threejs",
|
|
16
|
+
"Subsurface",
|
|
17
|
+
"visualization"
|
|
18
|
+
],
|
|
19
|
+
"files": [
|
|
20
|
+
"dist"
|
|
21
|
+
],
|
|
22
|
+
"engines": {
|
|
23
|
+
"npm": "^11.7.0"
|
|
24
|
+
},
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"import": "./dist/main.js",
|
|
28
|
+
"types": "./dist/types/main.d.ts"
|
|
29
|
+
},
|
|
30
|
+
"./sdk": {
|
|
31
|
+
"import": "./dist/sdk.js",
|
|
32
|
+
"types": "./dist/types/sdk/index.d.ts"
|
|
33
|
+
},
|
|
34
|
+
"./generators": {
|
|
35
|
+
"import": "./dist/generators.js",
|
|
36
|
+
"types": "./dist/types/generators/index.d.ts"
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"scripts": {
|
|
40
|
+
"start": "npm run storybook",
|
|
41
|
+
"build": "npm run build-lib && npm run build-static",
|
|
42
|
+
"build-lib": "tsc && vite build",
|
|
43
|
+
"build-static": "node scripts/generate-story-args.js && storybook build -o static && typedoc",
|
|
44
|
+
"lint": "eslint .",
|
|
45
|
+
"storybook": "node scripts/generate-story-args.js && storybook dev -p 6006",
|
|
46
|
+
"test": "vitest",
|
|
47
|
+
"coverage": "vitest --coverage"
|
|
48
|
+
},
|
|
49
|
+
"dependencies": {
|
|
50
|
+
"curve-interpolator": "^3.3.1",
|
|
51
|
+
"d3-array": "^3.2.4",
|
|
52
|
+
"d3-axis": "^3.0.0",
|
|
53
|
+
"d3-drag": "^3.0.0",
|
|
54
|
+
"d3-format": "^3.1.2",
|
|
55
|
+
"d3-interpolate": "^3.0.1",
|
|
56
|
+
"d3-path": "^3.1.0",
|
|
57
|
+
"d3-scale": "^4.0.2",
|
|
58
|
+
"d3-selection": "^3.0.0",
|
|
59
|
+
"lodash.filter": "^4.6.0",
|
|
60
|
+
"nanoid": "^5.1.2",
|
|
61
|
+
"p-limit": "^6.2.0",
|
|
62
|
+
"p-queue": "^8.1.0",
|
|
63
|
+
"proj4": "^2.20.3",
|
|
64
|
+
"rbush": "^4.0.1",
|
|
65
|
+
"react-use-measure": "^2.1.7",
|
|
66
|
+
"use-zustand": "^0.2.0",
|
|
67
|
+
"zustand": "^5.0.3"
|
|
68
|
+
},
|
|
69
|
+
"devDependencies": {
|
|
70
|
+
"@chromatic-com/storybook": "^5.0.1",
|
|
71
|
+
"@eslint/js": "^9.39.3",
|
|
72
|
+
"@react-three/drei": "^10.7.7",
|
|
73
|
+
"@react-three/fiber": "^9.5.0",
|
|
74
|
+
"@storybook/addon-docs": "^10.2.13",
|
|
75
|
+
"@storybook/react-vite": "^10.2.13",
|
|
76
|
+
"@types/d3-array": "^3.2.1",
|
|
77
|
+
"@types/d3-axis": "^3.0.6",
|
|
78
|
+
"@types/d3-drag": "^3.0.7",
|
|
79
|
+
"@types/d3-format": "^3.0.4",
|
|
80
|
+
"@types/d3-interpolate": "^3.0.4",
|
|
81
|
+
"@types/d3-path": "^3.1.0",
|
|
82
|
+
"@types/d3-scale": "^4.0.8",
|
|
83
|
+
"@types/d3-selection": "^3.0.11",
|
|
84
|
+
"@types/lodash.filter": "^4.6.9",
|
|
85
|
+
"@types/node": "^22.19.13",
|
|
86
|
+
"@types/proj4": "^2.5.5",
|
|
87
|
+
"@types/rbush": "^3.0.3",
|
|
88
|
+
"@types/react": "^19.2.14",
|
|
89
|
+
"@types/react-dom": "^19.0.4",
|
|
90
|
+
"@typescript-eslint/eslint-plugin": "^8.56.1",
|
|
91
|
+
"@typescript-eslint/parser": "8.56.1",
|
|
92
|
+
"@vitejs/plugin-react": "^5.1.4",
|
|
93
|
+
"@vitest/coverage-v8": "^4.0.18",
|
|
94
|
+
"@vitest/ui": "^4.0.18",
|
|
95
|
+
"eslint": "^9.39.3",
|
|
96
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
97
|
+
"eslint-plugin-react-refresh": "^0.5.2",
|
|
98
|
+
"eslint-plugin-storybook": "^10.2.13",
|
|
99
|
+
"globals": "^17.4.0",
|
|
100
|
+
"lodash": "^4.17.23",
|
|
101
|
+
"minimist": "^1.2.8",
|
|
102
|
+
"prettier": "^3.8.1",
|
|
103
|
+
"react": "^19.2.4",
|
|
104
|
+
"react-dom": "^19.2.4",
|
|
105
|
+
"rimraf": "^6.1.3",
|
|
106
|
+
"sass": "^1.97.3",
|
|
107
|
+
"storybook": "^10.2.13",
|
|
108
|
+
"typedoc": "^0.28.17",
|
|
109
|
+
"typescript": "^5.9.3",
|
|
110
|
+
"typescript-eslint": "^8.56.1",
|
|
111
|
+
"unplugin-dts": "^1.0.0-beta.6",
|
|
112
|
+
"vite": "^7.3.1",
|
|
113
|
+
"vite-plugin-css-injected-by-js": "^4.0.1",
|
|
114
|
+
"vite-plugin-externalize-deps": "^0.10.0",
|
|
115
|
+
"vite-plugin-glsl": "^1.5.5",
|
|
116
|
+
"vite-plugin-static-copy": "^3.2.0",
|
|
117
|
+
"vitest": "^4.0.18"
|
|
118
|
+
},
|
|
119
|
+
"peerDependencies": {
|
|
120
|
+
"@react-three/drei": ">=9",
|
|
121
|
+
"@react-three/fiber": ">=8",
|
|
122
|
+
"comlink": ">=4.4",
|
|
123
|
+
"react": ">=18",
|
|
124
|
+
"react-dom": ">=18",
|
|
125
|
+
"three": ">=0.179"
|
|
126
|
+
}
|
|
127
|
+
}
|