@ntalmagor/3drize-viewer 0.1.11 → 0.1.13

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.
Files changed (72) hide show
  1. package/dist/components/AnimatedObject.js +5 -5
  2. package/dist/components/CameraController.js +4 -4
  3. package/dist/components/Clouds.js +2 -2
  4. package/dist/components/CreatedObject.js +6 -6
  5. package/dist/components/CustomPrimitive.js +4 -4
  6. package/dist/components/EffectsGenerator.js +19 -19
  7. package/dist/components/EffectsGroup.js +1 -1
  8. package/dist/components/EnvironmentManager.js +2 -2
  9. package/dist/components/Frame.js +5 -5
  10. package/dist/components/FrameImage.js +1 -1
  11. package/dist/components/Galaxy.js +2 -2
  12. package/dist/components/GalleryLayout.js +3 -3
  13. package/dist/components/Lensflare.js +1 -1
  14. package/dist/components/Letter.js +2 -2
  15. package/dist/components/Letters.js +1 -1
  16. package/dist/components/LightsManager.js +2 -2
  17. package/dist/components/Lines.js +1 -1
  18. package/dist/components/ObjectNode.js +7 -7
  19. package/dist/components/ObjectsRenderer.js +1 -1
  20. package/dist/components/ObjectsRendererApi.js +2 -2
  21. package/dist/components/Ocean.js +5 -5
  22. package/dist/components/ParticlesR3f.js +4 -4
  23. package/dist/components/PathRenderer.js +1 -1
  24. package/dist/components/ProductionScene.d.ts +1 -29
  25. package/dist/components/ProductionScene.d.ts.map +1 -1
  26. package/dist/components/ProductionScene.js +8 -12
  27. package/dist/components/ProjectLoader.js +4 -4
  28. package/dist/components/Rain.js +1 -1
  29. package/dist/components/SceneBuilder.d.ts.map +1 -1
  30. package/dist/components/SceneBuilder.js +3 -3
  31. package/dist/components/ShootingStar.js +1 -1
  32. package/dist/components/ShootingStars.js +1 -1
  33. package/dist/components/SkyController.js +6 -6
  34. package/dist/components/SkySystem.js +8 -8
  35. package/dist/components/Skybox.js +2 -2
  36. package/dist/components/Stars.js +3 -3
  37. package/dist/components/SunLight.js +1 -1
  38. package/dist/components/Text2D.js +1 -1
  39. package/dist/components/Text3D.js +1 -1
  40. package/dist/components/effects/AuraEffect.js +1 -1
  41. package/dist/components/effects/AuroraEffect.js +1 -1
  42. package/dist/components/effects/BlackHoleEffect.js +1 -1
  43. package/dist/components/effects/ConstellationEffect.js +1 -1
  44. package/dist/components/effects/DataStreamEffect.js +1 -1
  45. package/dist/components/effects/DnaHelixEffect.js +1 -1
  46. package/dist/components/effects/FireEffect.js +1 -1
  47. package/dist/components/effects/ForcefieldEffect.js +1 -1
  48. package/dist/components/effects/HologramEffect.js +1 -1
  49. package/dist/components/effects/IceCrystalsEffect.js +1 -1
  50. package/dist/components/effects/LightningEffect.js +1 -1
  51. package/dist/components/effects/MoleculesEffect.js +1 -1
  52. package/dist/components/effects/NeuralNetworkEffect.js +1 -1
  53. package/dist/components/effects/OrbEffect.js +1 -1
  54. package/dist/components/effects/PortalEffect.js +1 -1
  55. package/dist/components/effects/ShockwaveEffect.js +1 -1
  56. package/dist/components/effects/SmokePlumeEffect.js +1 -1
  57. package/dist/components/effects/SmokeRingEffect.js +1 -1
  58. package/dist/components/effects/VolumetricFogEffect.js +1 -1
  59. package/dist/hooks/useCameraAnimation.js +3 -3
  60. package/dist/hooks/useContinuousEffects.js +1 -1
  61. package/dist/hooks/useFrameAnimations.js +3 -3
  62. package/dist/hooks/useInteraction.d.ts.map +1 -1
  63. package/dist/hooks/useInteraction.js +4 -4
  64. package/dist/hooks/useObjectAnimation.js +2 -2
  65. package/dist/hooks/useObjectEdges.js +1 -1
  66. package/dist/hooks/useSkyUniforms.js +1 -1
  67. package/dist/hooks/useTransformControls.js +1 -1
  68. package/dist/index.js +102 -102
  69. package/dist/shaders/ShaderEffectsMaterial.js +1 -1
  70. package/dist/utils/anchorUtils.js +1 -1
  71. package/dist/utils/utils3d.js +1 -1
  72. package/package.json +7 -5
@@ -1,12 +1,12 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useRef, useEffect, useCallback, memo } from 'react';
3
3
  import { useFrame } from '@react-three/fiber';
4
- import { useAnimationEvents } from '../hooks/useAnimationEvents';
5
- import { usePathAnimation } from '../hooks/usePathAnimation';
4
+ import { useAnimationEvents } from '../hooks/useAnimationEvents.js';
5
+ import { usePathAnimation } from '../hooks/usePathAnimation.js';
6
6
  import { AnimationsManager } from '@ntalmagor/3drize-core';
7
- import { applyAnchorSettings } from '../utils/anchorUtils';
8
- import EffectsGroup from './EffectsGroup';
9
- import { useObjectAnimation } from '../hooks/useObjectAnimation';
7
+ import { applyAnchorSettings } from '../utils/anchorUtils.js';
8
+ import EffectsGroup from './EffectsGroup.js';
9
+ import { useObjectAnimation } from '../hooks/useObjectAnimation.js';
10
10
  export const AnimatedObject = memo(({ stateKey, transitionSettings, createdObject,
11
11
  // speed = 1,
12
12
  visible = true, children, parentRef, handleObjectClick, onPointerEnter, onPointerLeave, anchor, hovered = false, animateMaterial = true,
@@ -1,9 +1,9 @@
1
1
  import { useEffect, useRef } from 'react';
2
2
  import { useFrame, useThree } from '@react-three/fiber';
3
- import { useCameraAnimation } from '../hooks/useCameraAnimation';
4
- import { cameraManager } from '../utils/CameraSingleton';
5
- import { useAnimationEvents } from '../hooks/useAnimationEvents';
6
- import { usePathAnimation } from '../hooks/usePathAnimation';
3
+ import { useCameraAnimation } from '../hooks/useCameraAnimation.js';
4
+ import { cameraManager } from '../utils/CameraSingleton.js';
5
+ import { useAnimationEvents } from '../hooks/useAnimationEvents.js';
6
+ import { usePathAnimation } from '../hooks/usePathAnimation.js';
7
7
  export const CameraController = ({ enableAutoAnimation = true, animationDuration = 1, animationEase = "power2.out", settings }) => {
8
8
  const { camera, set } = useThree();
9
9
  const cameraRef = useRef(camera);
@@ -2,8 +2,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef, useState, useCallback } from 'react';
3
3
  import * as THREE from 'three';
4
4
  import { useThree, useFrame } from '@react-three/fiber';
5
- import { useMaterialApplication } from '../hooks/useMaterialApplication';
6
- import { useSkySystem } from '../hooks/useSkySystem';
5
+ import { useMaterialApplication } from '../hooks/useMaterialApplication.js';
6
+ import { useSkySystem } from '../hooks/useSkySystem.js';
7
7
  const CLOUD_COLORS = {
8
8
  night: new THREE.Color(0.1, 0.1, 0.2),
9
9
  sunrise: new THREE.Color(0.8, 0.4, 0.4),
@@ -1,14 +1,14 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef, useEffect, useState, memo } from "react";
3
3
  import { DEFAULT_EDGES_SETTINGS } from "@ntalmagor/3drize-core";
4
- import { useMaterialApplication } from "../hooks/useMaterialApplication";
5
- import { useTransformControls } from "../hooks/useTransformControls";
4
+ import { useMaterialApplication } from "../hooks/useMaterialApplication.js";
5
+ import { useTransformControls } from "../hooks/useTransformControls.js";
6
6
  import { RigidBody } from '@react-three/rapier';
7
- import { cameraManager } from "../utils/CameraSingleton";
8
- import AnimatedObject from "./AnimatedObject";
9
- import { useFrameEffects } from "../hooks/useFrameEffects";
7
+ import { cameraManager } from "../utils/CameraSingleton.js";
8
+ import AnimatedObject from "./AnimatedObject.js";
9
+ import { useFrameEffects } from "../hooks/useFrameEffects.js";
10
10
  // import { useSceneClick } from "~/contextProviders/SceneClickContext";
11
- import { useObjectEdges } from "../hooks/useObjectEdges";
11
+ import { useObjectEdges } from "../hooks/useObjectEdges.js";
12
12
  const CreatedObject = memo(({ createdObject, children, shouldApply3driseMaterial = true, onObjectReady, handleObjectClick, }) => {
13
13
  const isSelected = false;
14
14
  // const isSelected = useObjectSelection(createdObject.id);
@@ -2,12 +2,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import React, { useRef, useEffect, memo, useState } from "react";
3
3
  import { ObjectManager, createDefaultEffectState, applyTransformEffects } from "@ntalmagor/3drize-core";
4
4
  // import ObjectManager from "~/utils/ObjectManager";
5
- import { useMaterialApplication } from "../hooks/useMaterialApplication";
5
+ import { useMaterialApplication } from "../hooks/useMaterialApplication.js";
6
6
  import { useFrame } from "@react-three/fiber";
7
- import MaterialLibrary from "./MaterialLibrary";
7
+ import MaterialLibrary from "./MaterialLibrary.js";
8
8
  // import type { AnimatedTransform } from "~/types/mesh";
9
- import CreatedObject from "./CreatedObject";
10
- import { useFrameEffects } from "../hooks/useFrameEffects";
9
+ import CreatedObject from "./CreatedObject.js";
10
+ import { useFrameEffects } from "../hooks/useFrameEffects.js";
11
11
  const CustomPrimitive = memo(({ createdObject, cameraSettings, updateObjectSettings, onObjectReady, handleObjectClick, }) => {
12
12
  // const { handleObjectClick } = useSceneClick();
13
13
  // console.log("Rendering CustomPrimitive with settings:", createdObject.name, createdObject);
@@ -1,25 +1,25 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useMemo } from 'react';
3
3
  import { Box3, Sphere } from 'three';
4
- import MoleculesEffect from './effects/MoleculesEffect';
5
- import ShockwaveEffect from './effects/ShockwaveEffect';
6
- import AuraEffect from './effects/AuraEffect';
7
- import DataStreamEffect from './effects/DataStreamEffect';
8
- import ConstellationEffect from './effects/ConstellationEffect';
9
- import HologramEffect from './effects/HologramEffect';
10
- import PortalEffect from './effects/PortalEffect';
11
- import DnaHelixEffect from './effects/DnaHelixEffect';
12
- import OrbEffect from './effects/OrbEffect';
13
- import LightningEffect from './effects/LightningEffect';
14
- import AuroraEffect from './effects/AuroraEffect';
15
- import FireEffect from './effects/FireEffect';
16
- import ForcefieldEffect from './effects/ForcefieldEffect';
17
- import NeuralNetworkEffect from './effects/NeuralNetworkEffect';
18
- import BlackHoleEffect from './effects/BlackHoleEffect';
19
- import IceCrystalsEffect from './effects/IceCrystalsEffect';
20
- import SmokePlumeEffect from './effects/SmokePlumeEffect';
21
- import VolumetricFogEffect from './effects/VolumetricFogEffect';
22
- import SmokeRingEffect from './effects/SmokeRingEffect';
4
+ import MoleculesEffect from './effects/MoleculesEffect.js';
5
+ import ShockwaveEffect from './effects/ShockwaveEffect.js';
6
+ import AuraEffect from './effects/AuraEffect.js';
7
+ import DataStreamEffect from './effects/DataStreamEffect.js';
8
+ import ConstellationEffect from './effects/ConstellationEffect.js';
9
+ import HologramEffect from './effects/HologramEffect.js';
10
+ import PortalEffect from './effects/PortalEffect.js';
11
+ import DnaHelixEffect from './effects/DnaHelixEffect.js';
12
+ import OrbEffect from './effects/OrbEffect.js';
13
+ import LightningEffect from './effects/LightningEffect.js';
14
+ import AuroraEffect from './effects/AuroraEffect.js';
15
+ import FireEffect from './effects/FireEffect.js';
16
+ import ForcefieldEffect from './effects/ForcefieldEffect.js';
17
+ import NeuralNetworkEffect from './effects/NeuralNetworkEffect.js';
18
+ import BlackHoleEffect from './effects/BlackHoleEffect.js';
19
+ import IceCrystalsEffect from './effects/IceCrystalsEffect.js';
20
+ import SmokePlumeEffect from './effects/SmokePlumeEffect.js';
21
+ import VolumetricFogEffect from './effects/VolumetricFogEffect.js';
22
+ import SmokeRingEffect from './effects/SmokeRingEffect.js';
23
23
  const EffectsGenerator = ({ settings, object }) => {
24
24
  if (!settings.enabled)
25
25
  return null;
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import EffectsGenerator from './EffectsGenerator';
2
+ import EffectsGenerator from './EffectsGenerator.js';
3
3
  const EffectsGroup = ({ createdObject }) => {
4
4
  if (!createdObject.effects || createdObject.effects.length === 0)
5
5
  return null;
@@ -2,8 +2,8 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
2
2
  import { useMemo, forwardRef } from 'react';
3
3
  import { Environment } from '@react-three/drei';
4
4
  import { useThree } from '@react-three/fiber';
5
- import SkySystem from './SkySystem';
6
- import { useCubeCamera } from '../hooks/useCubeCamera';
5
+ import SkySystem from './SkySystem.js';
6
+ import { useCubeCamera } from '../hooks/useCubeCamera.js';
7
7
  const EnvironmentManager = forwardRef(({ hdrSettings, cubeCameraResolution = 512,
8
8
  // SkySystemProps — all forwarded to SkySystem
9
9
  timeSettings, visible = true, sunSystemVisible = false, sunSize, moonSize, skyboxScale, sunIntensity, castShadow, shadowMapSize, playerPosition, starsSettings, cloudsSettings, cloudsMaterialSettings, skyControllerSettings, rainSettings, fogSettings, onTimeOfDayChange, onTimeUpdate, }, ref) => {
@@ -3,11 +3,11 @@ import { useRef, useState, useEffect } from "react";
3
3
  import { useCursor } from "@react-three/drei";
4
4
  import { BackSide, DoubleSide, FrontSide, Mesh } from "three";
5
5
  import { texturesManager } from "@ntalmagor/3drize-core";
6
- import { FrameGeometry } from "./FrameGeometry";
7
- import { FrameImage } from "./FrameImage";
8
- import MaterialLibrary from "./MaterialLibrary";
9
- import { useFrameEffects } from "../hooks/useFrameEffects";
10
- import { useObjectAnimation } from "../hooks/useObjectAnimation";
6
+ import { FrameGeometry } from "./FrameGeometry.js";
7
+ import { FrameImage } from "./FrameImage.js";
8
+ import MaterialLibrary from "./MaterialLibrary.js";
9
+ import { useFrameEffects } from "../hooks/useFrameEffects.js";
10
+ import { useObjectAnimation } from "../hooks/useObjectAnimation.js";
11
11
  export default function Frame({ url, isActive, createdObject, position, rotation, shapeType = 'circle', hoverSettings, transformEffects = [], colorEffects = [], layoutSettings, side, materialSettings, children, handleObjectClick, }) {
12
12
  const frameRef = useRef(new Mesh());
13
13
  const imageRef = useRef(null);
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
- import { FrameGeometry } from "./FrameGeometry";
3
+ import { FrameGeometry } from "./FrameGeometry.js";
4
4
  export const FrameImage = forwardRef(({ texture, shapeType, position, rotation, isBack = false, layoutSettings, }, ref) => {
5
5
  const width = layoutSettings?.width || 1;
6
6
  const height = layoutSettings?.height || 1;
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import Stars from './Stars';
3
- import ShootingStars from './ShootingStars';
2
+ import Stars from './Stars.js';
3
+ import ShootingStars from './ShootingStars.js';
4
4
  const Galaxy = ({ settings }) => {
5
5
  if (!settings.visible)
6
6
  return null;
@@ -1,9 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useMemo, useRef } from 'react';
3
3
  import { updateCurrentLayoutSettings } from '@ntalmagor/3drize-core';
4
- import Frame from './Frame';
5
- import EffectsGenerator from './EffectsGenerator';
6
- import { ImageGeometry } from './ImageGeometry';
4
+ import Frame from './Frame.js';
5
+ import EffectsGenerator from './EffectsGenerator.js';
6
+ import { ImageGeometry } from './ImageGeometry.js';
7
7
  const GalleryLayout = ({ createdObject, selectedFrameUrl, handleObjectClick, }) => {
8
8
  const groupRef = useRef(null);
9
9
  const { config, materialSettings, animations } = createdObject;
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef, useMemo, useCallback } from 'react';
3
3
  import * as THREE from 'three';
4
4
  import { useThree } from '@react-three/fiber';
5
- import { useSkySystem } from '../hooks/useSkySystem';
5
+ import { useSkySystem } from '../hooks/useSkySystem.js';
6
6
  export function createFlareTexture(type) {
7
7
  const canvas = document.createElement('canvas');
8
8
  canvas.width = 256;
@@ -2,9 +2,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useRef, useState, useEffect } from 'react';
3
3
  import { useFrame } from '@react-three/fiber';
4
4
  import { useCursor, Text, Text3D, Center } from '@react-three/drei';
5
- import MaterialLibrary from './MaterialLibrary';
5
+ import MaterialLibrary from './MaterialLibrary.js';
6
6
  import { createDefaultEffectState, applyTransformEffects } from '@ntalmagor/3drize-core';
7
- import { useFrameEffects } from '../hooks/useFrameEffects';
7
+ import { useFrameEffects } from '../hooks/useFrameEffects.js';
8
8
  import { fontManager } from '@ntalmagor/3drize-core';
9
9
  const getText3DConfig = (config) => {
10
10
  const c = config;
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef } from 'react';
3
- import Letter from './Letter';
3
+ import Letter from './Letter.js';
4
4
  export default function Letters({ text, config, materialSettings, hoverSettings, transformEffects = [], colorEffects = [], onLetterClick, }) {
5
5
  const ref = useRef(null);
6
6
  const characters = text.split('');
@@ -2,8 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  import { useRef, useEffect, useMemo } from 'react';
3
3
  import { useFrame, useThree } from '@react-three/fiber';
4
4
  import { useHelper } from '@react-three/drei';
5
- import { createSunPosition } from '../utils/utils3d';
6
- import { useLightHandlers } from '../hooks/useLightHandlers';
5
+ import { createSunPosition } from '../utils/utils3d.js';
6
+ import { useLightHandlers } from '../hooks/useLightHandlers.js';
7
7
  import { Color, DirectionalLightHelper, SpotLightHelper, PointLightHelper, } from 'three';
8
8
  const LightHelperMesh = ({ position, lightName, lightColor, hasHandlers, onEnter, onLeave, size = 0.5, }) => {
9
9
  if (!hasHandlers)
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useMemo } from 'react';
3
3
  import { PositionsCreator } from '@ntalmagor/3drize-core';
4
- import Path from './Path';
4
+ import Path from './Path.js';
5
5
  const Lines = ({ createdObject, transitionSettings }) => {
6
6
  if (!createdObject)
7
7
  return null;
@@ -1,15 +1,15 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useCallback, useMemo } from "react";
3
- import CustomPrimitive from "./CustomPrimitive";
3
+ import CustomPrimitive from "./CustomPrimitive.js";
4
4
  import CreatedObject from "./CreatedObject.js";
5
- import Text3D from './Text3D';
6
- import Text2D from './Text2D';
7
- import PathRenderer from './PathRenderer';
8
- import GalleryLayout from './GalleryLayout';
9
- import EffectsGenerator from './EffectsGenerator';
5
+ import Text3D from './Text3D.js';
6
+ import Text2D from './Text2D.js';
7
+ import PathRenderer from './PathRenderer.js';
8
+ import GalleryLayout from './GalleryLayout.js';
9
+ import EffectsGenerator from './EffectsGenerator.js';
10
10
  import ParticlesR3f from "./ParticlesR3f.js";
11
11
  import Lines from "./Lines.js";
12
- import GridHelper from "./GridHelper";
12
+ import GridHelper from "./GridHelper.js";
13
13
  const EffectsLayer = ({ effects }) => effects?.length ? (_jsx(_Fragment, { children: effects.map((effect, index) => (_jsx(EffectsGenerator, { settings: effect }, index))) })) : null;
14
14
  const GroupWithChildren = ({ createdObject, children, cameraSettings, onObjectReady, handleObjectClick, renderObject }) => {
15
15
  const meshSettings = createdObject.meshSettings;
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { memo, useRef, useCallback, useMemo } from 'react';
3
3
  import { buildObjectTree } from '@ntalmagor/3drize-core';
4
- import ObjectNode from './ObjectNode';
4
+ import ObjectNode from './ObjectNode.js';
5
5
  const ObjectsRenderer = memo(({ cameraSettings, createdObjects, generalObjectSettings, onObjectsReady, handleObjectClick }) => {
6
6
  const groupRef = useRef(null);
7
7
  const objectsTree = useMemo(() => buildObjectTree(createdObjects), [createdObjects]);
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from 'react';
3
- import ObjectsRenderer from './ObjectsRenderer';
3
+ import ObjectsRenderer from './ObjectsRenderer.js';
4
4
  /**
5
5
  * ObjectsRendererApi
6
6
  *
@@ -15,7 +15,7 @@ import ObjectsRenderer from './ObjectsRenderer';
15
15
  * apiBaseUrl="http://localhost:3001"
16
16
  * />
17
17
  */
18
- const ObjectsRendererApi = ({ objectIds, cameraSettings, generalObjectSettings, apiBaseUrl = process.env.REACT_APP_API_BASE_URL || 'http://localhost:3001', onObjectsReady, handleObjectClick, onError, onLoading, }) => {
18
+ const ObjectsRendererApi = ({ objectIds, cameraSettings, generalObjectSettings, apiBaseUrl = 'http://localhost:3001', onObjectsReady, handleObjectClick, onError, onLoading, }) => {
19
19
  const [createdObjects, setCreatedObjects] = useState([]);
20
20
  const [isLoading, setIsLoading] = useState(true);
21
21
  const [error, setError] = useState(null);
@@ -2,11 +2,11 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef } from 'react';
3
3
  import * as THREE from 'three';
4
4
  import { useFrame } from '@react-three/fiber';
5
- import { useMaterialApplication } from '../hooks/useMaterialApplication';
6
- import { useWaterEnvironment } from '../hooks/useWaterEnvironment';
7
- import { useWaterReflections } from '../hooks/useWaterReflections';
8
- import { update3driseShaderUniforms } from '../utils/shaderUtils';
9
- import { useMouseHandlers } from '../hooks/useMouseHandlers';
5
+ import { useMaterialApplication } from '../hooks/useMaterialApplication.js';
6
+ import { useWaterEnvironment } from '../hooks/useWaterEnvironment.js';
7
+ import { useWaterReflections } from '../hooks/useWaterReflections.js';
8
+ import { update3driseShaderUniforms } from '../utils/shaderUtils.js';
9
+ import { useMouseHandlers } from '../hooks/useMouseHandlers.js';
10
10
  function getValueType(property, value) {
11
11
  if (Array.isArray(value)) {
12
12
  if (value.length === 3)
@@ -2,10 +2,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useRef } from 'react';
3
3
  import { extend, useFrame } from '@react-three/fiber';
4
4
  import { Color } from 'three';
5
- import { ShaderEffectsMaterial } from '../shaders/ShaderEffectsMaterial';
6
- import { useParticlePositions } from '../hooks/useParticlePositions';
7
- import { useParticlesColors } from '../hooks/useParticlesColors';
8
- import { useParticlesTextures } from '../hooks/useParticlesTextures';
5
+ import { ShaderEffectsMaterial } from '../shaders/ShaderEffectsMaterial.js';
6
+ import { useParticlePositions } from '../hooks/useParticlePositions.js';
7
+ import { useParticlesColors } from '../hooks/useParticlesColors.js';
8
+ import { useParticlesTextures } from '../hooks/useParticlesTextures.js';
9
9
  import { handleShapeAnimation } from '@ntalmagor/3drize-core';
10
10
  extend({ ShaderEffectsMaterial });
11
11
  const ParticlesR3f = ({ particlesSettings, duration = 1, transitionSettings, }) => {
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useMemo } from 'react';
3
3
  import { Sphere, Line } from '@react-three/drei';
4
4
  import { smoothPathCorners, createPathSpline, sampleSplinePoints } from '@ntalmagor/3drize-core';
5
- import PathGeometry from './PathGeometry';
5
+ import PathGeometry from './PathGeometry.js';
6
6
  const PathRenderer = ({ pathSettings, color = '#ffa500', showPoints = true, showLine = true, showCurve = true, pointSize = 0.15, lineWidth = 2, }) => {
7
7
  const points = pathSettings?.points || [];
8
8
  const curve = pathSettings?.curve ?? 1;
@@ -1,33 +1,5 @@
1
1
  import React from "react";
2
- import { Object3D } from "three";
3
- import type { AnimationSequence, CameraState, CreatedObjectSettings, DeviceType, FogSettings, GeneralObjectSettings, GridConfig, HdrSettings, OceanSettings, PhysicsSettings, RainSettings, SkySettings, StarsSettings, TimeSettings } from "@ntalmagor/3drize-core";
4
- import { type ThreeEvent } from '@react-three/fiber';
5
- type ProductionSceneProps = {
6
- device: DeviceType;
7
- onObjectsReady?: () => void;
8
- gridSettings: GridConfig;
9
- hdr: HdrSettings;
10
- physicsSettings: PhysicsSettings;
11
- generalObjectSettings: GeneralObjectSettings;
12
- ocean: OceanSettings;
13
- cameraSettings: CameraState;
14
- selectedLight: any;
15
- objects: CreatedObjectSettings[];
16
- lighting: any;
17
- controls: any;
18
- geometry: any;
19
- structure: any;
20
- isPathMode: boolean;
21
- editingPath: any;
22
- sky: SkySettings;
23
- timeSettings: TimeSettings;
24
- starsSettings: StarsSettings;
25
- clouds: any;
26
- rainSettings: RainSettings;
27
- fogSettings: FogSettings;
28
- animationSequences: AnimationSequence[];
29
- onObjectClick?: (object: CreatedObjectSettings, ref: Object3D, event: ThreeEvent<MouseEvent>) => void;
30
- };
2
+ import type { ProductionSceneProps } from "@ntalmagor/3drize-core";
31
3
  declare const ProductionScene: React.FC<ProductionSceneProps>;
32
4
  export default ProductionScene;
33
5
  //# sourceMappingURL=ProductionScene.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProductionScene.d.ts","sourceRoot":"","sources":["../../src/components/ProductionScene.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAW,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,qBAAqB,EAAE,UAAU,EAAE,WAAW,EAAE,qBAAqB,EAAE,UAAU,EAAE,WAAW,EAAe,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClR,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAYrD,KAAK,oBAAoB,GAAG;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,YAAY,EAAE,UAAU,CAAC;IACzB,GAAG,EAAE,WAAW,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,KAAK,EAAE,aAAa,CAAC;IACrB,cAAc,EAAE,WAAW,CAAC;IAC5B,aAAa,EAAE,GAAG,CAAC;IACnB,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,GAAG,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;IACjB,GAAG,EAAE,WAAW,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,GAAG,CAAC;IACZ,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,WAAW,CAAC;IACzB,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;CACvG,CAAC;AAEF,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA6HnD,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"ProductionScene.d.ts","sourceRoot":"","sources":["../../src/components/ProductionScene.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAAsC,oBAAoB,EAAG,MAAM,wBAAwB,CAAC;AAexG,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA2HnD,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -2,17 +2,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { OrbitControls } from "@react-three/drei";
3
3
  import { Physics } from "@react-three/rapier";
4
4
  import { Vector3 } from "three";
5
- // import GridHelper from "/GridHelper";
6
- // import { ShaderMesh } from "~/components/MaterialCreator/components";
7
- // import StructureRenderer from "~/components/StructureRenderer/StructureRenderer";
8
- import PathRenderer from "./PathRenderer";
9
- import LightsManager from "./LightsManager";
10
- import EnvironmentManager from "./EnvironmentManager";
11
- import CameraController from "./CameraController";
12
- import Ocean from "./Ocean";
13
- import ObjectsRenderer from "./ObjectsRenderer";
14
- import { useInteraction } from "../hooks/useInteraction";
15
- const ProductionScene = ({ onObjectsReady, onObjectClick, gridSettings, hdr, physicsSettings, generalObjectSettings, ocean, cameraSettings, selectedLight, objects, lighting, controls, geometry, structure, isPathMode, editingPath, sky, timeSettings, starsSettings, clouds, rainSettings, fogSettings, animationSequences, }) => {
5
+ import LightsManager from "./LightsManager.js";
6
+ import EnvironmentManager from "./EnvironmentManager.js";
7
+ import CameraController from "./CameraController.js";
8
+ import Ocean from "./Ocean.js";
9
+ import ObjectsRenderer from "./ObjectsRenderer.js";
10
+ import { useInteraction } from "../hooks/useInteraction.js";
11
+ const ProductionScene = ({ onObjectsReady, onObjectClick, gridSettings, hdr, physicsSettings, generalObjectSettings, ocean, cameraSettings, selectedLight, objects, lighting, controls, geometry, structure, sky, timeSettings, starsSettings, clouds, rainSettings, fogSettings, animationSequences, }) => {
16
12
  const sunSystem = sky.sunSystem;
17
13
  const mode = 'default';
18
14
  // console.log({animationSequences})
@@ -34,6 +30,6 @@ const ProductionScene = ({ onObjectsReady, onObjectClick, gridSettings, hdr, phy
34
30
  });
35
31
  onObjectClick && onObjectClick(createdObject, ref, event);
36
32
  };
37
- return (_jsxs(Physics, { gravity: physicsSettings.gravity, paused: !physicsSettings.enabled, debug: physicsSettings.debug, children: [_jsx(LightsManager, { lights: lighting, selectedLight: selectedLight }), _jsx(EnvironmentManager, { hdrSettings: hdr, timeSettings: timeSettings, visible: true, sunSystemVisible: sunSystem.visible, sunSize: sunSystem.sunSize, moonSize: sunSystem.moonSize, sunIntensity: sunSystem.intensity, castShadow: sunSystem.castShadow, shadowMapSize: sunSystem.shadowMapSize, starsSettings: starsSettings, skyControllerSettings: sky.visible && !sunSystem.visible ? sky : undefined, cloudsSettings: clouds, cloudsMaterialSettings: clouds.materialSettings, rainSettings: rainSettings, fogSettings: fogSettings }), _jsx(CameraController, { settings: cameraSettings }), _jsx(Ocean, { settings: ocean }), _jsx(ObjectsRenderer, { cameraSettings: cameraSettings, generalObjectSettings: generalObjectSettings, createdObjects: objects, onObjectsReady: onObjectsReady, handleObjectClick: handleObjectClick }), isPathMode && editingPath && _jsx(PathRenderer, { pathSettings: editingPath }), _jsx(OrbitControls, { makeDefault: true, enabled: controls.enabled, target: new Vector3(...controls.target), enablePan: controls.enablePan, enableRotate: controls.enableRotate, autoRotate: controls.autoRotate, autoRotateSpeed: controls.autoRotateSpeed, zoomSpeed: controls.zoomSpeed, panSpeed: controls.panSpeed, rotateSpeed: controls.rotateSpeed, minDistance: controls.minDistance, maxDistance: controls.maxDistance, minPolarAngle: controls.minPolarAngle ? controls.minPolarAngle : -Infinity, maxPolarAngle: controls.maxPolarAngle ? controls.maxPolarAngle : Infinity, minAzimuthAngle: controls.minAzimuthAngle ? controls.minAzimuthAngle : -Infinity, maxAzimuthAngle: controls.maxAzimuthAngle ? controls.maxAzimuthAngle : Infinity })] }));
33
+ return (_jsxs(Physics, { gravity: physicsSettings.gravity, paused: !physicsSettings.enabled, debug: physicsSettings.debug, children: [_jsx(LightsManager, { lights: lighting, selectedLight: selectedLight }), _jsx(EnvironmentManager, { hdrSettings: hdr, timeSettings: timeSettings, visible: true, sunSystemVisible: sunSystem.visible, sunSize: sunSystem.sunSize, moonSize: sunSystem.moonSize, sunIntensity: sunSystem.intensity, castShadow: sunSystem.castShadow, shadowMapSize: sunSystem.shadowMapSize, starsSettings: starsSettings, skyControllerSettings: sky.visible && !sunSystem.visible ? sky : undefined, cloudsSettings: clouds, cloudsMaterialSettings: clouds.materialSettings, rainSettings: rainSettings, fogSettings: fogSettings }), _jsx(CameraController, { settings: cameraSettings }), _jsx(Ocean, { settings: ocean }), _jsx(ObjectsRenderer, { cameraSettings: cameraSettings, generalObjectSettings: generalObjectSettings, createdObjects: objects, onObjectsReady: onObjectsReady, handleObjectClick: handleObjectClick }), _jsx(OrbitControls, { makeDefault: true, enabled: controls.enabled, target: new Vector3(...controls.target), enablePan: controls.enablePan, enableRotate: controls.enableRotate, autoRotate: controls.autoRotate, autoRotateSpeed: controls.autoRotateSpeed, zoomSpeed: controls.zoomSpeed, panSpeed: controls.panSpeed, rotateSpeed: controls.rotateSpeed, minDistance: controls.minDistance, maxDistance: controls.maxDistance, minPolarAngle: controls.minPolarAngle ? controls.minPolarAngle : -Infinity, maxPolarAngle: controls.maxPolarAngle ? controls.maxPolarAngle : Infinity, minAzimuthAngle: controls.minAzimuthAngle ? controls.minAzimuthAngle : -Infinity, maxAzimuthAngle: controls.maxAzimuthAngle ? controls.maxAzimuthAngle : Infinity })] }));
38
34
  };
39
35
  export default ProductionScene;
@@ -1,13 +1,13 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from "react";
3
3
  // import type { GetProjectPayload, Project } from '~/types/users';
4
- import { dataCenterServer } from '../constants';
4
+ import { dataCenterServer } from '../constants.js';
5
5
  // import { buildQueryString } from "~/utils/utils";
6
- import SceneBuilder from "./SceneBuilder";
6
+ import SceneBuilder from "./SceneBuilder.js";
7
7
  import { loadAssets } from "@ntalmagor/3drize-core";
8
8
  import { buildQueryString } from "@ntalmagor/3drize-core";
9
- import useMeshController from '../hooks/useMeshController';
10
- import LoadingIndicator from "./LoadingIndicator";
9
+ import useMeshController from '../hooks/useMeshController.js';
10
+ import LoadingIndicator from "./LoadingIndicator.js";
11
11
  const ProjectLoader = ({ projectId, onObjectClick, onObjectHover, onElementClick, onElementHover, onSceneInitialized }) => {
12
12
  const [project, setProject] = useState(null);
13
13
  const meshController = useMeshController();
@@ -1,7 +1,7 @@
1
1
  import { useEffect, useRef, useMemo } from 'react';
2
2
  import * as THREE from 'three';
3
3
  import { useThree, useFrame } from '@react-three/fiber';
4
- import { RainMaterial } from '../shaders/RainMaterial';
4
+ import { RainMaterial } from '../shaders/RainMaterial.js';
5
5
  const MAX_PARTICLES = 20000;
6
6
  const DEG_TO_RAD = Math.PI / 180;
7
7
  const Rain = ({ settings }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"SceneBuilder.d.ts","sourceRoot":"","sources":["../../src/components/SceneBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD,OAAO,KAAK,EAAa,iBAAiB,EAAe,MAAM,wBAAwB,CAAC;AAQxF,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA2K7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"SceneBuilder.d.ts","sourceRoot":"","sources":["../../src/components/SceneBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD,OAAO,KAAK,EAAa,iBAAiB,EAAe,MAAM,wBAAwB,CAAC;AAQxF,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAyK7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -2,10 +2,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from "react";
3
3
  import { Canvas } from "@react-three/fiber";
4
4
  // import type { SceneBuilderProps } from "~/types/types";
5
- import useMeshController from "../hooks/useMeshController";
5
+ import useMeshController from "../hooks/useMeshController.js";
6
6
  import { loadAssets } from "@ntalmagor/3drize-core";
7
7
  import { NoToneMapping } from "three";
8
- import ProductionScene from "./ProductionScene";
8
+ import ProductionScene from "./ProductionScene.js";
9
9
  // import UiController from "./UiController";
10
10
  // import type { HtmlElement } from "~/types/uiController";
11
11
  const SceneBuilder = ({ project, width = "100%", height = "100vh", style = {}, className = '', onSceneInitialized, onUiElementClick, onObjectClick, }) => {
@@ -100,6 +100,6 @@ const SceneBuilder = ({ project, width = "100%", height = "100vh", style = {}, c
100
100
  if (onSceneInitialized) {
101
101
  onSceneInitialized();
102
102
  }
103
- }, children: _jsx(ProductionScene, { device: "desktop", onObjectsReady: undefined, gridSettings: environment.grid, hdr: environment.hdr, physicsSettings: physicsSettings, generalObjectSettings: generalObjectSettings, ocean: environment.ocean, cameraSettings: camera, selectedLight: null, objects: sceneObjects, lighting: project.lights || [], controls: controls, geometry: project.settings?.materialCreator?.geometry || null, structure: project.settings?.structure || null, isPathMode: false, editingPath: null, sky: environment.sky, timeSettings: timeSettings, starsSettings: environment.stars, clouds: environment.clouds, rainSettings: environment.rain, fogSettings: environment.fog, onObjectClick: onObjectClick, animationSequences: animationSequences }) }) }));
103
+ }, children: _jsx(ProductionScene, { device: "desktop", onObjectsReady: undefined, gridSettings: environment.grid, hdr: environment.hdr, physicsSettings: physicsSettings, generalObjectSettings: generalObjectSettings, ocean: environment.ocean, cameraSettings: camera, selectedLight: null, objects: sceneObjects, lighting: project.lights || [], controls: controls, geometry: project.settings?.materialCreator?.geometry || null, structure: project.settings?.structure || null, sky: environment.sky, timeSettings: timeSettings, starsSettings: environment.stars, clouds: environment.clouds, rainSettings: environment.rain, fogSettings: environment.fog, onObjectClick: onObjectClick, animationSequences: animationSequences }) }) }));
104
104
  };
105
105
  export default SceneBuilder;
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useRef, useMemo, useEffect } from 'react';
3
3
  import { useFrame } from '@react-three/fiber';
4
4
  import { Vector3, BufferGeometry, BufferAttribute, AdditiveBlending, Color } from 'three';
5
- import { ShootingStarMaterial } from '../shaders/ShootingStarMaterial';
5
+ import { ShootingStarMaterial } from '../shaders/ShootingStarMaterial.js';
6
6
  const ShootingStar = ({ position = [0, 0, 0], direction = [1, -1, 0], speed = 0.05, color = '#ffffff', trailLength = 30, size = 0.1, opacity = 1.0, onComplete, maxDistance = 50, followMouse = true, }) => {
7
7
  const starRef = useRef(null);
8
8
  const glowRef = useRef(null);
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useRef, useState, useEffect, useCallback } from 'react';
3
3
  import { generateShootingStar, generateShootingStars } from '@ntalmagor/3drize-core';
4
- import ShootingStar from './ShootingStar';
4
+ import ShootingStar from './ShootingStar.js';
5
5
  const ShootingStars = ({ settings }) => {
6
6
  const [shootingStars, setShootingStars] = useState(() => {
7
7
  if (settings?.enabled)
@@ -1,12 +1,12 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useRef, useEffect, useCallback, useState } from 'react';
3
3
  import { useFrame } from '@react-three/fiber';
4
- import { useAnimationEvents } from '../hooks/useAnimationEvents';
5
- import { useSkyUniforms } from '../hooks/useSkyUniforms';
6
- import { useSkyAnimation } from '../hooks/useSkyAnimation';
7
- import { useSkySystem } from '../hooks/useSkySystem';
8
- import { findById } from '../utils/sceneQuery';
9
- import SkyMesh from './SkyMesh';
4
+ import { useAnimationEvents } from '../hooks/useAnimationEvents.js';
5
+ import { useSkyUniforms } from '../hooks/useSkyUniforms.js';
6
+ import { useSkyAnimation } from '../hooks/useSkyAnimation.js';
7
+ import { useSkySystem } from '../hooks/useSkySystem.js';
8
+ import { findById } from '../utils/sceneQuery.js';
9
+ import SkyMesh from './SkyMesh.js';
10
10
  function SkyController({ settings, timeSettings, scale = 1000, onSettingsChange, }) {
11
11
  const skyRef = useRef(null);
12
12
  const sunLightRef = useRef(null);
@@ -3,14 +3,14 @@ import { useEffect, useRef, forwardRef, useImperativeHandle } from 'react';
3
3
  import * as THREE from 'three';
4
4
  import { useFrame } from '@react-three/fiber';
5
5
  import { skySystemManager } from '@ntalmagor/3drize-core';
6
- import Skybox from './Skybox';
7
- import Lensflare from './Lensflare';
8
- import SunLight from './SunLight';
9
- import Clouds from './Clouds';
10
- import Galaxy from './Galaxy';
11
- import SkyController from './SkyController';
12
- import Rain from './Rain';
13
- import SceneFog from './SceneFog';
6
+ import Skybox from './Skybox.js';
7
+ import Lensflare from './Lensflare.js';
8
+ import SunLight from './SunLight.js';
9
+ import Clouds from './Clouds.js';
10
+ import Galaxy from './Galaxy.js';
11
+ import SkyController from './SkyController.js';
12
+ import Rain from './Rain.js';
13
+ import SceneFog from './SceneFog.js';
14
14
  const SkySystem = forwardRef(({ timeSettings, visible = true, sunSystemVisible = false, sunSize = 1, moonSize = 1, skyboxScale = 100000, sunIntensity = 1, castShadow = true, shadowMapSize = 2048, playerPosition = new THREE.Vector3(0, 0, 0), starsSettings, cloudsSettings, cloudsMaterialSettings, skyControllerSettings, rainSettings, fogSettings, onTimeOfDayChange, onTimeUpdate, }, ref) => {
15
15
  const previousTimeOfDayRef = useRef(null);
16
16
  useImperativeHandle(ref, () => ({
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useRef, useCallback } from 'react';
3
3
  import * as THREE from 'three';
4
- import { SkyboxMaterial } from '../shaders/SkyboxMaterial';
5
- import { useSkySystem } from '../hooks/useSkySystem';
4
+ import { SkyboxMaterial } from '../shaders/SkyboxMaterial.js';
5
+ import { useSkySystem } from '../hooks/useSkySystem.js';
6
6
  // Extend R3F with skyboxMaterial
7
7
  import { extend } from '@react-three/fiber';
8
8
  extend({ SkyboxMaterial });
@@ -2,9 +2,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef, useMemo, useCallback, useState, useEffect } from 'react';
3
3
  import * as THREE from 'three';
4
4
  import { useFrame } from '@react-three/fiber';
5
- import { useSkySystem } from '../hooks/useSkySystem';
6
- import { useParticlesColors } from '../hooks/useParticlesColors';
7
- import { useAnimationEvents } from '../hooks/useAnimationEvents';
5
+ import { useSkySystem } from '../hooks/useSkySystem.js';
6
+ import { useParticlesColors } from '../hooks/useParticlesColors.js';
7
+ import { useAnimationEvents } from '../hooks/useAnimationEvents.js';
8
8
  export function generateStarsGeometry(count) {
9
9
  const halfCount = Math.floor(count / 2);
10
10
  const geometry = new THREE.BufferGeometry();
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef, useCallback } from 'react';
3
3
  import * as THREE from 'three';
4
- import { useSkySystem } from '../hooks/useSkySystem';
4
+ import { useSkySystem } from '../hooks/useSkySystem.js';
5
5
  const COLORS = {
6
6
  white: new THREE.Color(0xffffff),
7
7
  orange: new THREE.Color(0xff4500),