@backbay/glia 0.2.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +492 -0
- package/dist/audio/hooks/index.d.ts +15 -0
- package/dist/audio/hooks/index.d.ts.map +1 -0
- package/dist/audio/hooks/index.js +7 -0
- package/dist/audio/hooks/useAudioOverlay.d.ts +43 -0
- package/dist/audio/hooks/useAudioOverlay.d.ts.map +1 -0
- package/dist/audio/hooks/useAudioOverlay.js +48 -0
- package/dist/audio/hooks/useAudioPlayer.d.ts +14 -0
- package/dist/audio/hooks/useAudioPlayer.d.ts.map +1 -0
- package/dist/audio/hooks/useAudioPlayer.js +96 -0
- package/dist/audio/hooks/useBargeIn.d.ts +27 -0
- package/dist/audio/hooks/useBargeIn.d.ts.map +1 -0
- package/dist/audio/hooks/useBargeIn.js +65 -0
- package/dist/audio/hooks/useCognitionSpeech.d.ts +52 -0
- package/dist/audio/hooks/useCognitionSpeech.d.ts.map +1 -0
- package/dist/audio/hooks/useCognitionSpeech.js +77 -0
- package/dist/audio/hooks/useHybridSpeech.d.ts +24 -0
- package/dist/audio/hooks/useHybridSpeech.d.ts.map +1 -0
- package/dist/audio/hooks/useHybridSpeech.js +40 -0
- package/dist/audio/hooks/useRunSpeechCues.d.ts +28 -0
- package/dist/audio/hooks/useRunSpeechCues.d.ts.map +1 -0
- package/dist/audio/hooks/useRunSpeechCues.js +47 -0
- package/dist/audio/hooks/useSpeechSynthesis.d.ts +58 -0
- package/dist/audio/hooks/useSpeechSynthesis.d.ts.map +1 -0
- package/dist/audio/hooks/useSpeechSynthesis.js +154 -0
- package/dist/audio/index.d.ts +12 -0
- package/dist/audio/index.d.ts.map +1 -0
- package/dist/audio/index.js +24 -0
- package/dist/audio/overlay.d.ts +9 -0
- package/dist/audio/overlay.d.ts.map +1 -0
- package/dist/audio/overlay.js +15 -0
- package/dist/audio/planner.d.ts +51 -0
- package/dist/audio/planner.d.ts.map +1 -0
- package/dist/audio/planner.js +122 -0
- package/dist/audio/providers/httpSpeechSynthesisProvider.d.ts +33 -0
- package/dist/audio/providers/httpSpeechSynthesisProvider.d.ts.map +1 -0
- package/dist/audio/providers/httpSpeechSynthesisProvider.js +83 -0
- package/dist/audio/schema.d.ts +1741 -0
- package/dist/audio/schema.d.ts.map +1 -0
- package/dist/audio/schema.js +116 -0
- package/dist/audio/types.d.ts +175 -0
- package/dist/audio/types.d.ts.map +1 -0
- package/dist/audio/types.js +18 -0
- package/dist/cognition/controller.d.ts +97 -0
- package/dist/cognition/controller.d.ts.map +1 -0
- package/dist/cognition/controller.js +145 -0
- package/dist/cognition/hooks/index.d.ts +3 -0
- package/dist/cognition/hooks/index.d.ts.map +1 -0
- package/dist/cognition/hooks/index.js +1 -0
- package/dist/cognition/hooks/useCognition.d.ts +36 -0
- package/dist/cognition/hooks/useCognition.d.ts.map +1 -0
- package/dist/cognition/hooks/useCognition.js +88 -0
- package/dist/cognition/index.d.ts +10 -0
- package/dist/cognition/index.d.ts.map +1 -0
- package/dist/cognition/index.js +20 -0
- package/dist/cognition/reducers.d.ts +27 -0
- package/dist/cognition/reducers.d.ts.map +1 -0
- package/dist/cognition/reducers.js +152 -0
- package/dist/cognition/schema.d.ts +594 -0
- package/dist/cognition/schema.d.ts.map +1 -0
- package/dist/cognition/schema.js +102 -0
- package/dist/cognition/types.d.ts +123 -0
- package/dist/cognition/types.d.ts.map +1 -0
- package/dist/cognition/types.js +26 -0
- package/dist/components/AgentPanel.d.ts +71 -0
- package/dist/components/AgentPanel.d.ts.map +1 -0
- package/dist/components/AgentPanel.js +55 -0
- package/dist/components/BBProvider.d.ts +47 -0
- package/dist/components/BBProvider.d.ts.map +1 -0
- package/dist/components/BBProvider.js +80 -0
- package/dist/components/ClusterHero/BriefingPanel.d.ts +15 -0
- package/dist/components/ClusterHero/BriefingPanel.d.ts.map +1 -0
- package/dist/components/ClusterHero/BriefingPanel.js +54 -0
- package/dist/components/ClusterHero/ClusterAtmosphere.d.ts +8 -0
- package/dist/components/ClusterHero/ClusterAtmosphere.d.ts.map +1 -0
- package/dist/components/ClusterHero/ClusterAtmosphere.js +9 -0
- package/dist/components/ClusterHero/ClusterHero.d.ts +22 -0
- package/dist/components/ClusterHero/ClusterHero.d.ts.map +1 -0
- package/dist/components/ClusterHero/ClusterHero.js +42 -0
- package/dist/components/ClusterHero/ClusterHeroPage.d.ts +27 -0
- package/dist/components/ClusterHero/ClusterHeroPage.d.ts.map +1 -0
- package/dist/components/ClusterHero/ClusterHeroPage.js +189 -0
- package/dist/components/ClusterHero/ClusterRail.d.ts +13 -0
- package/dist/components/ClusterHero/ClusterRail.d.ts.map +1 -0
- package/dist/components/ClusterHero/ClusterRail.js +84 -0
- package/dist/components/ClusterHero/GradientVeil.d.ts +11 -0
- package/dist/components/ClusterHero/GradientVeil.d.ts.map +1 -0
- package/dist/components/ClusterHero/GradientVeil.js +22 -0
- package/dist/components/ClusterHero/HeroContent.d.ts +14 -0
- package/dist/components/ClusterHero/HeroContent.d.ts.map +1 -0
- package/dist/components/ClusterHero/HeroContent.js +49 -0
- package/dist/components/ClusterHero/LiveStrip.d.ts +8 -0
- package/dist/components/ClusterHero/LiveStrip.d.ts.map +1 -0
- package/dist/components/ClusterHero/LiveStrip.js +26 -0
- package/dist/components/ClusterHero/ScrollIndicator.d.ts +10 -0
- package/dist/components/ClusterHero/ScrollIndicator.d.ts.map +1 -0
- package/dist/components/ClusterHero/ScrollIndicator.js +18 -0
- package/dist/components/ClusterHero/SigilMonument.d.ts +13 -0
- package/dist/components/ClusterHero/SigilMonument.d.ts.map +1 -0
- package/dist/components/ClusterHero/SigilMonument.js +87 -0
- package/dist/components/ClusterHero/StructuralElements.d.ts +8 -0
- package/dist/components/ClusterHero/StructuralElements.d.ts.map +1 -0
- package/dist/components/ClusterHero/StructuralElements.js +47 -0
- package/dist/components/ClusterHero/VideoBackground.d.ts +37 -0
- package/dist/components/ClusterHero/VideoBackground.d.ts.map +1 -0
- package/dist/components/ClusterHero/VideoBackground.js +135 -0
- package/dist/components/ClusterHero/config.d.ts +20 -0
- package/dist/components/ClusterHero/config.d.ts.map +1 -0
- package/dist/components/ClusterHero/config.js +289 -0
- package/dist/components/ClusterHero/index.d.ts +17 -0
- package/dist/components/ClusterHero/index.d.ts.map +1 -0
- package/dist/components/ClusterHero/index.js +20 -0
- package/dist/components/ClusterHero/sections/CTASection.d.ts +14 -0
- package/dist/components/ClusterHero/sections/CTASection.d.ts.map +1 -0
- package/dist/components/ClusterHero/sections/CTASection.js +105 -0
- package/dist/components/ClusterHero/sections/ClusterStatsSection.d.ts +11 -0
- package/dist/components/ClusterHero/sections/ClusterStatsSection.d.ts.map +1 -0
- package/dist/components/ClusterHero/sections/ClusterStatsSection.js +121 -0
- package/dist/components/ClusterHero/sections/FeatureCardsSection.d.ts +15 -0
- package/dist/components/ClusterHero/sections/FeatureCardsSection.d.ts.map +1 -0
- package/dist/components/ClusterHero/sections/FeatureCardsSection.js +187 -0
- package/dist/components/ClusterHero/sections/index.d.ts +4 -0
- package/dist/components/ClusterHero/sections/index.d.ts.map +1 -0
- package/dist/components/ClusterHero/sections/index.js +3 -0
- package/dist/components/ClusterHero/types.d.ts +111 -0
- package/dist/components/ClusterHero/types.d.ts.map +1 -0
- package/dist/components/ClusterHero/types.js +1 -0
- package/dist/components/ClusterHero/useVideoPreload.d.ts +28 -0
- package/dist/components/ClusterHero/useVideoPreload.d.ts.map +1 -0
- package/dist/components/ClusterHero/useVideoPreload.js +60 -0
- package/dist/components/PlaySession.d.ts +48 -0
- package/dist/components/PlaySession.d.ts.map +1 -0
- package/dist/components/PlaySession.js +51 -0
- package/dist/components/SyncDocument.d.ts +50 -0
- package/dist/components/SyncDocument.d.ts.map +1 -0
- package/dist/components/SyncDocument.js +37 -0
- package/dist/components/index.d.ts +9 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +8 -0
- package/dist/core.d.ts +19 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +24 -0
- package/dist/desktop/components/desktop/Desktop.d.ts +49 -0
- package/dist/desktop/components/desktop/Desktop.d.ts.map +1 -0
- package/dist/desktop/components/desktop/Desktop.js +110 -0
- package/dist/desktop/components/desktop/DesktopIcon.d.ts +52 -0
- package/dist/desktop/components/desktop/DesktopIcon.d.ts.map +1 -0
- package/dist/desktop/components/desktop/DesktopIcon.js +185 -0
- package/dist/desktop/components/desktop/SnapZoneOverlay.d.ts +68 -0
- package/dist/desktop/components/desktop/SnapZoneOverlay.d.ts.map +1 -0
- package/dist/desktop/components/desktop/SnapZoneOverlay.js +138 -0
- package/dist/desktop/components/desktop/index.d.ts +9 -0
- package/dist/desktop/components/desktop/index.d.ts.map +1 -0
- package/dist/desktop/components/desktop/index.js +8 -0
- package/dist/desktop/components/index.d.ts +11 -0
- package/dist/desktop/components/index.d.ts.map +1 -0
- package/dist/desktop/components/index.js +13 -0
- package/dist/desktop/components/shell/Clock.d.ts +35 -0
- package/dist/desktop/components/shell/Clock.d.ts.map +1 -0
- package/dist/desktop/components/shell/Clock.js +159 -0
- package/dist/desktop/components/shell/ContextMenu.d.ts +44 -0
- package/dist/desktop/components/shell/ContextMenu.d.ts.map +1 -0
- package/dist/desktop/components/shell/ContextMenu.js +158 -0
- package/dist/desktop/components/shell/Taskbar.d.ts +111 -0
- package/dist/desktop/components/shell/Taskbar.d.ts.map +1 -0
- package/dist/desktop/components/shell/Taskbar.js +182 -0
- package/dist/desktop/components/shell/TaskbarButton.d.ts +54 -0
- package/dist/desktop/components/shell/TaskbarButton.d.ts.map +1 -0
- package/dist/desktop/components/shell/TaskbarButton.js +116 -0
- package/dist/desktop/components/shell/index.d.ts +31 -0
- package/dist/desktop/components/shell/index.d.ts.map +1 -0
- package/dist/desktop/components/shell/index.js +31 -0
- package/dist/desktop/components/window/Window.d.ts +122 -0
- package/dist/desktop/components/window/Window.d.ts.map +1 -0
- package/dist/desktop/components/window/Window.js +416 -0
- package/dist/desktop/components/window/WindowTitlebar.d.ts +71 -0
- package/dist/desktop/components/window/WindowTitlebar.d.ts.map +1 -0
- package/dist/desktop/components/window/WindowTitlebar.js +191 -0
- package/dist/desktop/components/window/index.d.ts +10 -0
- package/dist/desktop/components/window/index.d.ts.map +1 -0
- package/dist/desktop/components/window/index.js +9 -0
- package/dist/desktop/core/desktop/index.d.ts +6 -0
- package/dist/desktop/core/desktop/index.d.ts.map +1 -0
- package/dist/desktop/core/desktop/index.js +5 -0
- package/dist/desktop/core/desktop/types.d.ts +185 -0
- package/dist/desktop/core/desktop/types.d.ts.map +1 -0
- package/dist/desktop/core/desktop/types.js +6 -0
- package/dist/desktop/core/desktop/useSnapZones.d.ts +52 -0
- package/dist/desktop/core/desktop/useSnapZones.d.ts.map +1 -0
- package/dist/desktop/core/desktop/useSnapZones.js +128 -0
- package/dist/desktop/core/index.d.ts +10 -0
- package/dist/desktop/core/index.d.ts.map +1 -0
- package/dist/desktop/core/index.js +9 -0
- package/dist/desktop/core/shell/index.d.ts +6 -0
- package/dist/desktop/core/shell/index.d.ts.map +1 -0
- package/dist/desktop/core/shell/index.js +5 -0
- package/dist/desktop/core/shell/types.d.ts +169 -0
- package/dist/desktop/core/shell/types.d.ts.map +1 -0
- package/dist/desktop/core/shell/types.js +6 -0
- package/dist/desktop/core/shell/useTaskbar.d.ts +65 -0
- package/dist/desktop/core/shell/useTaskbar.d.ts.map +1 -0
- package/dist/desktop/core/shell/useTaskbar.js +221 -0
- package/dist/desktop/core/window/index.d.ts +6 -0
- package/dist/desktop/core/window/index.d.ts.map +1 -0
- package/dist/desktop/core/window/index.js +5 -0
- package/dist/desktop/core/window/types.d.ts +167 -0
- package/dist/desktop/core/window/types.d.ts.map +1 -0
- package/dist/desktop/core/window/types.js +7 -0
- package/dist/desktop/core/window/useWindowManager.d.ts +165 -0
- package/dist/desktop/core/window/useWindowManager.d.ts.map +1 -0
- package/dist/desktop/core/window/useWindowManager.js +953 -0
- package/dist/desktop/index.d.ts +40 -0
- package/dist/desktop/index.d.ts.map +1 -0
- package/dist/desktop/index.js +50 -0
- package/dist/desktop/providers/DesktopOSProvider.d.ts +93 -0
- package/dist/desktop/providers/DesktopOSProvider.d.ts.map +1 -0
- package/dist/desktop/providers/DesktopOSProvider.js +246 -0
- package/dist/desktop/providers/ThemeProvider.d.ts +51 -0
- package/dist/desktop/providers/ThemeProvider.d.ts.map +1 -0
- package/dist/desktop/providers/ThemeProvider.js +93 -0
- package/dist/desktop/providers/index.d.ts +6 -0
- package/dist/desktop/providers/index.d.ts.map +1 -0
- package/dist/desktop/providers/index.js +5 -0
- package/dist/desktop/themes/default.d.ts +18 -0
- package/dist/desktop/themes/default.d.ts.map +1 -0
- package/dist/desktop/themes/default.js +90 -0
- package/dist/desktop/themes/index.d.ts +6 -0
- package/dist/desktop/themes/index.d.ts.map +1 -0
- package/dist/desktop/themes/index.js +5 -0
- package/dist/desktop/themes/types.d.ts +147 -0
- package/dist/desktop/themes/types.d.ts.map +1 -0
- package/dist/desktop/themes/types.js +71 -0
- package/dist/emotion/constants.d.ts +35 -0
- package/dist/emotion/constants.d.ts.map +1 -0
- package/dist/emotion/constants.js +86 -0
- package/dist/emotion/controller.d.ts +97 -0
- package/dist/emotion/controller.d.ts.map +1 -0
- package/dist/emotion/controller.js +203 -0
- package/dist/emotion/hooks/index.d.ts +3 -0
- package/dist/emotion/hooks/index.d.ts.map +1 -0
- package/dist/emotion/hooks/index.js +2 -0
- package/dist/emotion/hooks/useEmotion.d.ts +60 -0
- package/dist/emotion/hooks/useEmotion.d.ts.map +1 -0
- package/dist/emotion/hooks/useEmotion.js +121 -0
- package/dist/emotion/index.d.ts +10 -0
- package/dist/emotion/index.d.ts.map +1 -0
- package/dist/emotion/index.js +13 -0
- package/dist/emotion/mapping.d.ts +55 -0
- package/dist/emotion/mapping.d.ts.map +1 -0
- package/dist/emotion/mapping.js +118 -0
- package/dist/emotion/micro-expressions.d.ts +19 -0
- package/dist/emotion/micro-expressions.d.ts.map +1 -0
- package/dist/emotion/micro-expressions.js +75 -0
- package/dist/emotion/transitions.d.ts +29 -0
- package/dist/emotion/transitions.d.ts.map +1 -0
- package/dist/emotion/transitions.js +74 -0
- package/dist/emotion/types.d.ts +84 -0
- package/dist/emotion/types.d.ts.map +1 -0
- package/dist/emotion/types.js +2 -0
- package/dist/hooks/index.d.ts +9 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +8 -0
- package/dist/hooks/useAgentRun.d.ts +36 -0
- package/dist/hooks/useAgentRun.d.ts.map +1 -0
- package/dist/hooks/useAgentRun.js +140 -0
- package/dist/hooks/useIntensity.d.ts +33 -0
- package/dist/hooks/useIntensity.d.ts.map +1 -0
- package/dist/hooks/useIntensity.js +128 -0
- package/dist/hooks/usePlaySession.d.ts +50 -0
- package/dist/hooks/usePlaySession.d.ts.map +1 -0
- package/dist/hooks/usePlaySession.js +208 -0
- package/dist/hooks/useRunStream.d.ts +39 -0
- package/dist/hooks/useRunStream.d.ts.map +1 -0
- package/dist/hooks/useRunStream.js +230 -0
- package/dist/hooks/useSync.d.ts +50 -0
- package/dist/hooks/useSync.d.ts.map +1 -0
- package/dist/hooks/useSync.js +336 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +52 -0
- package/dist/lib/motion.d.ts +30 -0
- package/dist/lib/motion.d.ts.map +1 -0
- package/dist/lib/motion.js +21 -0
- package/dist/lib/utils.d.ts +35 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +102 -0
- package/dist/primitives/ambient/DustMotesLayer.d.ts +16 -0
- package/dist/primitives/ambient/DustMotesLayer.d.ts.map +1 -0
- package/dist/primitives/ambient/DustMotesLayer.js +93 -0
- package/dist/primitives/ambient/NebulaStarsLayer.d.ts +12 -0
- package/dist/primitives/ambient/NebulaStarsLayer.d.ts.map +1 -0
- package/dist/primitives/ambient/NebulaStarsLayer.js +99 -0
- package/dist/primitives/ambient/ThemedAmbientLayer.d.ts +15 -0
- package/dist/primitives/ambient/ThemedAmbientLayer.d.ts.map +1 -0
- package/dist/primitives/ambient/ThemedAmbientLayer.js +23 -0
- package/dist/primitives/ambient/index.d.ts +4 -0
- package/dist/primitives/ambient/index.d.ts.map +1 -0
- package/dist/primitives/ambient/index.js +3 -0
- package/dist/primitives/atoms/AuroraBackground/AuroraBackground.d.ts +8 -0
- package/dist/primitives/atoms/AuroraBackground/AuroraBackground.d.ts.map +1 -0
- package/dist/primitives/atoms/AuroraBackground/AuroraBackground.js +16 -0
- package/dist/primitives/atoms/AuroraBackground/index.d.ts +2 -0
- package/dist/primitives/atoms/AuroraBackground/index.d.ts.map +1 -0
- package/dist/primitives/atoms/AuroraBackground/index.js +1 -0
- package/dist/primitives/atoms/GlitchText/GlitchText.d.ts +9 -0
- package/dist/primitives/atoms/GlitchText/GlitchText.d.ts.map +1 -0
- package/dist/primitives/atoms/GlitchText/GlitchText.js +46 -0
- package/dist/primitives/atoms/GlitchText/index.d.ts +2 -0
- package/dist/primitives/atoms/GlitchText/index.d.ts.map +1 -0
- package/dist/primitives/atoms/GlitchText/index.js +1 -0
- package/dist/primitives/atoms/GlowButton/GlowButton.d.ts +19 -0
- package/dist/primitives/atoms/GlowButton/GlowButton.d.ts.map +1 -0
- package/dist/primitives/atoms/GlowButton/GlowButton.js +59 -0
- package/dist/primitives/atoms/GlowButton/index.d.ts +2 -0
- package/dist/primitives/atoms/GlowButton/index.d.ts.map +1 -0
- package/dist/primitives/atoms/GlowButton/index.js +1 -0
- package/dist/primitives/atoms/GlowInput/GlowInput.d.ts +25 -0
- package/dist/primitives/atoms/GlowInput/GlowInput.d.ts.map +1 -0
- package/dist/primitives/atoms/GlowInput/GlowInput.js +55 -0
- package/dist/primitives/atoms/GlowInput/index.d.ts +2 -0
- package/dist/primitives/atoms/GlowInput/index.d.ts.map +1 -0
- package/dist/primitives/atoms/GlowInput/index.js +1 -0
- package/dist/primitives/atoms/HUDProgressRing/HUDProgressRing.d.ts +27 -0
- package/dist/primitives/atoms/HUDProgressRing/HUDProgressRing.d.ts.map +1 -0
- package/dist/primitives/atoms/HUDProgressRing/HUDProgressRing.js +71 -0
- package/dist/primitives/atoms/HUDProgressRing/index.d.ts +2 -0
- package/dist/primitives/atoms/HUDProgressRing/index.d.ts.map +1 -0
- package/dist/primitives/atoms/HUDProgressRing/index.js +1 -0
- package/dist/primitives/atoms/IconPulse/IconPulse.d.ts +25 -0
- package/dist/primitives/atoms/IconPulse/IconPulse.d.ts.map +1 -0
- package/dist/primitives/atoms/IconPulse/IconPulse.js +111 -0
- package/dist/primitives/atoms/IconPulse/index.d.ts +2 -0
- package/dist/primitives/atoms/IconPulse/index.d.ts.map +1 -0
- package/dist/primitives/atoms/IconPulse/index.js +1 -0
- package/dist/primitives/atoms/PixelCanvas/PixelCanvas.d.ts +17 -0
- package/dist/primitives/atoms/PixelCanvas/PixelCanvas.d.ts.map +1 -0
- package/dist/primitives/atoms/PixelCanvas/PixelCanvas.js +340 -0
- package/dist/primitives/atoms/PixelCanvas/index.d.ts +2 -0
- package/dist/primitives/atoms/PixelCanvas/index.d.ts.map +1 -0
- package/dist/primitives/atoms/PixelCanvas/index.js +1 -0
- package/dist/primitives/atoms/StatBadge/StatBadge.d.ts +26 -0
- package/dist/primitives/atoms/StatBadge/StatBadge.d.ts.map +1 -0
- package/dist/primitives/atoms/StatBadge/StatBadge.js +73 -0
- package/dist/primitives/atoms/StatBadge/index.d.ts +2 -0
- package/dist/primitives/atoms/StatBadge/index.d.ts.map +1 -0
- package/dist/primitives/atoms/StatBadge/index.js +1 -0
- package/dist/primitives/atoms/TextGenerateEffect/TextGenerateEffect.d.ts +7 -0
- package/dist/primitives/atoms/TextGenerateEffect/TextGenerateEffect.d.ts.map +1 -0
- package/dist/primitives/atoms/TextGenerateEffect/TextGenerateEffect.js +26 -0
- package/dist/primitives/atoms/TextGenerateEffect/index.d.ts +2 -0
- package/dist/primitives/atoms/TextGenerateEffect/index.d.ts.map +1 -0
- package/dist/primitives/atoms/TextGenerateEffect/index.js +1 -0
- package/dist/primitives/atoms/TypingAnimation/TypingAnimation.d.ts +20 -0
- package/dist/primitives/atoms/TypingAnimation/TypingAnimation.d.ts.map +1 -0
- package/dist/primitives/atoms/TypingAnimation/TypingAnimation.js +84 -0
- package/dist/primitives/atoms/TypingAnimation/index.d.ts +2 -0
- package/dist/primitives/atoms/TypingAnimation/index.d.ts.map +1 -0
- package/dist/primitives/atoms/TypingAnimation/index.js +1 -0
- package/dist/primitives/atoms/VoiceCaptions/VoiceCaptions.d.ts +16 -0
- package/dist/primitives/atoms/VoiceCaptions/VoiceCaptions.d.ts.map +1 -0
- package/dist/primitives/atoms/VoiceCaptions/VoiceCaptions.js +192 -0
- package/dist/primitives/atoms/VoiceCaptions/index.d.ts +3 -0
- package/dist/primitives/atoms/VoiceCaptions/index.d.ts.map +1 -0
- package/dist/primitives/atoms/VoiceCaptions/index.js +1 -0
- package/dist/primitives/atoms/index.d.ts +12 -0
- package/dist/primitives/atoms/index.d.ts.map +1 -0
- package/dist/primitives/atoms/index.js +12 -0
- package/dist/primitives/environment/AuroraLayer/AuroraLayer.d.ts +3 -0
- package/dist/primitives/environment/AuroraLayer/AuroraLayer.d.ts.map +1 -0
- package/dist/primitives/environment/AuroraLayer/AuroraLayer.js +158 -0
- package/dist/primitives/environment/AuroraLayer/index.d.ts +3 -0
- package/dist/primitives/environment/AuroraLayer/index.d.ts.map +1 -0
- package/dist/primitives/environment/AuroraLayer/index.js +1 -0
- package/dist/primitives/environment/AuroraLayer/types.d.ts +16 -0
- package/dist/primitives/environment/AuroraLayer/types.d.ts.map +1 -0
- package/dist/primitives/environment/AuroraLayer/types.js +12 -0
- package/dist/primitives/environment/EnvironmentLayer/EnvironmentLayer.d.ts +23 -0
- package/dist/primitives/environment/EnvironmentLayer/EnvironmentLayer.d.ts.map +1 -0
- package/dist/primitives/environment/EnvironmentLayer/EnvironmentLayer.js +25 -0
- package/dist/primitives/environment/EnvironmentLayer/index.d.ts +5 -0
- package/dist/primitives/environment/EnvironmentLayer/index.d.ts.map +1 -0
- package/dist/primitives/environment/EnvironmentLayer/index.js +2 -0
- package/dist/primitives/environment/EnvironmentLayer/presets.d.ts +13 -0
- package/dist/primitives/environment/EnvironmentLayer/presets.d.ts.map +1 -0
- package/dist/primitives/environment/EnvironmentLayer/presets.js +98 -0
- package/dist/primitives/environment/FogLayer/FogLayer.d.ts +3 -0
- package/dist/primitives/environment/FogLayer/FogLayer.d.ts.map +1 -0
- package/dist/primitives/environment/FogLayer/FogLayer.js +77 -0
- package/dist/primitives/environment/FogLayer/index.d.ts +3 -0
- package/dist/primitives/environment/FogLayer/index.d.ts.map +1 -0
- package/dist/primitives/environment/FogLayer/index.js +1 -0
- package/dist/primitives/environment/FogLayer/types.d.ts +17 -0
- package/dist/primitives/environment/FogLayer/types.d.ts.map +1 -0
- package/dist/primitives/environment/FogLayer/types.js +26 -0
- package/dist/primitives/environment/VolumetricLight/VolumetricLight.d.ts +3 -0
- package/dist/primitives/environment/VolumetricLight/VolumetricLight.d.ts.map +1 -0
- package/dist/primitives/environment/VolumetricLight/VolumetricLight.js +145 -0
- package/dist/primitives/environment/VolumetricLight/index.d.ts +3 -0
- package/dist/primitives/environment/VolumetricLight/index.d.ts.map +1 -0
- package/dist/primitives/environment/VolumetricLight/index.js +1 -0
- package/dist/primitives/environment/VolumetricLight/types.d.ts +22 -0
- package/dist/primitives/environment/VolumetricLight/types.d.ts.map +1 -0
- package/dist/primitives/environment/VolumetricLight/types.js +12 -0
- package/dist/primitives/environment/WeatherLayer/WeatherLayer.d.ts +3 -0
- package/dist/primitives/environment/WeatherLayer/WeatherLayer.d.ts.map +1 -0
- package/dist/primitives/environment/WeatherLayer/WeatherLayer.js +157 -0
- package/dist/primitives/environment/WeatherLayer/cinematicCanvas.d.ts +6 -0
- package/dist/primitives/environment/WeatherLayer/cinematicCanvas.d.ts.map +1 -0
- package/dist/primitives/environment/WeatherLayer/cinematicCanvas.js +625 -0
- package/dist/primitives/environment/WeatherLayer/colors.d.ts +10 -0
- package/dist/primitives/environment/WeatherLayer/colors.d.ts.map +1 -0
- package/dist/primitives/environment/WeatherLayer/colors.js +14 -0
- package/dist/primitives/environment/WeatherLayer/index.d.ts +5 -0
- package/dist/primitives/environment/WeatherLayer/index.d.ts.map +1 -0
- package/dist/primitives/environment/WeatherLayer/index.js +2 -0
- package/dist/primitives/environment/WeatherLayer/leafPresets.d.ts +11 -0
- package/dist/primitives/environment/WeatherLayer/leafPresets.d.ts.map +1 -0
- package/dist/primitives/environment/WeatherLayer/leafPresets.js +9 -0
- package/dist/primitives/environment/WeatherLayer/particles.d.ts +12 -0
- package/dist/primitives/environment/WeatherLayer/particles.d.ts.map +1 -0
- package/dist/primitives/environment/WeatherLayer/particles.js +174 -0
- package/dist/primitives/environment/WeatherLayer/types.d.ts +49 -0
- package/dist/primitives/environment/WeatherLayer/types.d.ts.map +1 -0
- package/dist/primitives/environment/WeatherLayer/types.js +92 -0
- package/dist/primitives/environment/index.d.ts +17 -0
- package/dist/primitives/environment/index.d.ts.map +1 -0
- package/dist/primitives/environment/index.js +16 -0
- package/dist/primitives/environment/shared/index.d.ts +3 -0
- package/dist/primitives/environment/shared/index.d.ts.map +1 -0
- package/dist/primitives/environment/shared/index.js +2 -0
- package/dist/primitives/environment/shared/noise.d.ts +2 -0
- package/dist/primitives/environment/shared/noise.d.ts.map +1 -0
- package/dist/primitives/environment/shared/noise.js +8 -0
- package/dist/primitives/environment/shared/performance.d.ts +4 -0
- package/dist/primitives/environment/shared/performance.d.ts.map +1 -0
- package/dist/primitives/environment/shared/performance.js +28 -0
- package/dist/primitives/environment/shared/types.d.ts +18 -0
- package/dist/primitives/environment/shared/types.d.ts.map +1 -0
- package/dist/primitives/environment/shared/types.js +6 -0
- package/dist/primitives/index.d.ts +20 -0
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/index.js +19 -0
- package/dist/primitives/molecules/KPIStat/KPIStat.d.ts +37 -0
- package/dist/primitives/molecules/KPIStat/KPIStat.d.ts.map +1 -0
- package/dist/primitives/molecules/KPIStat/KPIStat.js +84 -0
- package/dist/primitives/molecules/KPIStat/index.d.ts +2 -0
- package/dist/primitives/molecules/KPIStat/index.d.ts.map +1 -0
- package/dist/primitives/molecules/KPIStat/index.js +1 -0
- package/dist/primitives/molecules/NeonToast/NeonToast.d.ts +84 -0
- package/dist/primitives/molecules/NeonToast/NeonToast.d.ts.map +1 -0
- package/dist/primitives/molecules/NeonToast/NeonToast.js +110 -0
- package/dist/primitives/molecules/NeonToast/index.d.ts +2 -0
- package/dist/primitives/molecules/NeonToast/index.d.ts.map +1 -0
- package/dist/primitives/molecules/NeonToast/index.js +1 -0
- package/dist/primitives/molecules/ThreeDCard/ThreeDCard.d.ts +24 -0
- package/dist/primitives/molecules/ThreeDCard/ThreeDCard.d.ts.map +1 -0
- package/dist/primitives/molecules/ThreeDCard/ThreeDCard.js +67 -0
- package/dist/primitives/molecules/ThreeDCard/index.d.ts +2 -0
- package/dist/primitives/molecules/ThreeDCard/index.d.ts.map +1 -0
- package/dist/primitives/molecules/ThreeDCard/index.js +1 -0
- package/dist/primitives/molecules/index.d.ts +4 -0
- package/dist/primitives/molecules/index.d.ts.map +1 -0
- package/dist/primitives/molecules/index.js +4 -0
- package/dist/primitives/organisms/BentoGrid/BentoGrid.d.ts +13 -0
- package/dist/primitives/organisms/BentoGrid/BentoGrid.d.ts.map +1 -0
- package/dist/primitives/organisms/BentoGrid/BentoGrid.js +9 -0
- package/dist/primitives/organisms/BentoGrid/index.d.ts +2 -0
- package/dist/primitives/organisms/BentoGrid/index.d.ts.map +1 -0
- package/dist/primitives/organisms/BentoGrid/index.js +1 -0
- package/dist/primitives/organisms/CommandPalette/CommandPalette.d.ts +39 -0
- package/dist/primitives/organisms/CommandPalette/CommandPalette.d.ts.map +1 -0
- package/dist/primitives/organisms/CommandPalette/CommandPalette.js +185 -0
- package/dist/primitives/organisms/CommandPalette/index.d.ts +2 -0
- package/dist/primitives/organisms/CommandPalette/index.d.ts.map +1 -0
- package/dist/primitives/organisms/CommandPalette/index.js +1 -0
- package/dist/primitives/organisms/Glass/GlassPanel.d.ts +46 -0
- package/dist/primitives/organisms/Glass/GlassPanel.d.ts.map +1 -0
- package/dist/primitives/organisms/Glass/GlassPanel.js +124 -0
- package/dist/primitives/organisms/Glass/index.d.ts +3 -0
- package/dist/primitives/organisms/Glass/index.d.ts.map +1 -0
- package/dist/primitives/organisms/Glass/index.js +1 -0
- package/dist/primitives/organisms/index.d.ts +4 -0
- package/dist/primitives/organisms/index.d.ts.map +1 -0
- package/dist/primitives/organisms/index.js +4 -0
- package/dist/primitives/three/AgentConsole/AgentConsole.d.ts +3 -0
- package/dist/primitives/three/AgentConsole/AgentConsole.d.ts.map +1 -0
- package/dist/primitives/three/AgentConsole/AgentConsole.js +40 -0
- package/dist/primitives/three/AgentConsole/ConsoleChat.d.ts +3 -0
- package/dist/primitives/three/AgentConsole/ConsoleChat.d.ts.map +1 -0
- package/dist/primitives/three/AgentConsole/ConsoleChat.js +74 -0
- package/dist/primitives/three/AgentConsole/FocusConstellation.d.ts +3 -0
- package/dist/primitives/three/AgentConsole/FocusConstellation.d.ts.map +1 -0
- package/dist/primitives/three/AgentConsole/FocusConstellation.js +111 -0
- package/dist/primitives/three/AgentConsole/GlyphAvatar.d.ts +3 -0
- package/dist/primitives/three/AgentConsole/GlyphAvatar.d.ts.map +1 -0
- package/dist/primitives/three/AgentConsole/GlyphAvatar.js +80 -0
- package/dist/primitives/three/AgentConsole/QuickActions.d.ts +3 -0
- package/dist/primitives/three/AgentConsole/QuickActions.d.ts.map +1 -0
- package/dist/primitives/three/AgentConsole/QuickActions.js +43 -0
- package/dist/primitives/three/AgentConsole/index.d.ts +14 -0
- package/dist/primitives/three/AgentConsole/index.d.ts.map +1 -0
- package/dist/primitives/three/AgentConsole/index.js +15 -0
- package/dist/primitives/three/AgentConsole/types.d.ts +155 -0
- package/dist/primitives/three/AgentConsole/types.d.ts.map +1 -0
- package/dist/primitives/three/AgentConsole/types.js +38 -0
- package/dist/primitives/three/AmbientField/AmbientField.d.ts +32 -0
- package/dist/primitives/three/AmbientField/AmbientField.d.ts.map +1 -0
- package/dist/primitives/three/AmbientField/AmbientField.js +156 -0
- package/dist/primitives/three/AmbientField/BackbayFieldBus.d.ts +10 -0
- package/dist/primitives/three/AmbientField/BackbayFieldBus.d.ts.map +1 -0
- package/dist/primitives/three/AmbientField/BackbayFieldBus.js +264 -0
- package/dist/primitives/three/AmbientField/FieldProvider.d.ts +21 -0
- package/dist/primitives/three/AmbientField/FieldProvider.d.ts.map +1 -0
- package/dist/primitives/three/AmbientField/FieldProvider.js +48 -0
- package/dist/primitives/three/AmbientField/index.d.ts +12 -0
- package/dist/primitives/three/AmbientField/index.d.ts.map +1 -0
- package/dist/primitives/three/AmbientField/index.js +8 -0
- package/dist/primitives/three/AmbientField/shaders/constellation.d.ts +17 -0
- package/dist/primitives/three/AmbientField/shaders/constellation.d.ts.map +1 -0
- package/dist/primitives/three/AmbientField/shaders/constellation.js +359 -0
- package/dist/primitives/three/AmbientField/types.d.ts +157 -0
- package/dist/primitives/three/AmbientField/types.d.ts.map +1 -0
- package/dist/primitives/three/AmbientField/types.js +20 -0
- package/dist/primitives/three/AttackGraph/AttackGraph.d.ts +3 -0
- package/dist/primitives/three/AttackGraph/AttackGraph.d.ts.map +1 -0
- package/dist/primitives/three/AttackGraph/AttackGraph.js +159 -0
- package/dist/primitives/three/AttackGraph/index.d.ts +14 -0
- package/dist/primitives/three/AttackGraph/index.d.ts.map +1 -0
- package/dist/primitives/three/AttackGraph/index.js +12 -0
- package/dist/primitives/three/AttackGraph/types.d.ts +42 -0
- package/dist/primitives/three/AttackGraph/types.d.ts.map +1 -0
- package/dist/primitives/three/AttackGraph/types.js +46 -0
- package/dist/primitives/three/AuditTrail/AuditTrail.d.ts +6 -0
- package/dist/primitives/three/AuditTrail/AuditTrail.d.ts.map +1 -0
- package/dist/primitives/three/AuditTrail/AuditTrail.js +294 -0
- package/dist/primitives/three/AuditTrail/index.d.ts +21 -0
- package/dist/primitives/three/AuditTrail/index.d.ts.map +1 -0
- package/dist/primitives/three/AuditTrail/index.js +19 -0
- package/dist/primitives/three/AuditTrail/types.d.ts +113 -0
- package/dist/primitives/three/AuditTrail/types.d.ts.map +1 -0
- package/dist/primitives/three/AuditTrail/types.js +78 -0
- package/dist/primitives/three/CrystallineOrganism/Breadcrumb.d.ts +8 -0
- package/dist/primitives/three/CrystallineOrganism/Breadcrumb.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/Breadcrumb.js +20 -0
- package/dist/primitives/three/CrystallineOrganism/CrystallineOrganism.d.ts +12 -0
- package/dist/primitives/three/CrystallineOrganism/CrystallineOrganism.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/CrystallineOrganism.js +143 -0
- package/dist/primitives/three/CrystallineOrganism/LatticeEdge.d.ts +8 -0
- package/dist/primitives/three/CrystallineOrganism/LatticeEdge.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/LatticeEdge.js +46 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismLattice.d.ts +8 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismLattice.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismLattice.js +100 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismParticles.d.ts +9 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismParticles.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismParticles.js +97 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismShell.d.ts +9 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismShell.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/OrganismShell.js +110 -0
- package/dist/primitives/three/CrystallineOrganism/constants.d.ts +84 -0
- package/dist/primitives/three/CrystallineOrganism/constants.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/constants.js +128 -0
- package/dist/primitives/three/CrystallineOrganism/index.d.ts +17 -0
- package/dist/primitives/three/CrystallineOrganism/index.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/index.js +16 -0
- package/dist/primitives/three/CrystallineOrganism/layouts/hexGrid.d.ts +19 -0
- package/dist/primitives/three/CrystallineOrganism/layouts/hexGrid.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/layouts/hexGrid.js +71 -0
- package/dist/primitives/three/CrystallineOrganism/layouts/index.d.ts +2 -0
- package/dist/primitives/three/CrystallineOrganism/layouts/index.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/layouts/index.js +1 -0
- package/dist/primitives/three/CrystallineOrganism/types.d.ts +100 -0
- package/dist/primitives/three/CrystallineOrganism/types.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/types.js +18 -0
- package/dist/primitives/three/CrystallineOrganism/useOrganismEmotion.d.ts +31 -0
- package/dist/primitives/three/CrystallineOrganism/useOrganismEmotion.d.ts.map +1 -0
- package/dist/primitives/three/CrystallineOrganism/useOrganismEmotion.js +59 -0
- package/dist/primitives/three/FirewallBarrier/FirewallBarrier.d.ts +3 -0
- package/dist/primitives/three/FirewallBarrier/FirewallBarrier.d.ts.map +1 -0
- package/dist/primitives/three/FirewallBarrier/FirewallBarrier.js +101 -0
- package/dist/primitives/three/FirewallBarrier/index.d.ts +14 -0
- package/dist/primitives/three/FirewallBarrier/index.d.ts.map +1 -0
- package/dist/primitives/three/FirewallBarrier/index.js +12 -0
- package/dist/primitives/three/FirewallBarrier/types.d.ts +41 -0
- package/dist/primitives/three/FirewallBarrier/types.d.ts.map +1 -0
- package/dist/primitives/three/FirewallBarrier/types.js +14 -0
- package/dist/primitives/three/Glyph/GlyphObject.d.ts +3 -0
- package/dist/primitives/three/Glyph/GlyphObject.d.ts.map +1 -0
- package/dist/primitives/three/Glyph/GlyphObject.js +311 -0
- package/dist/primitives/three/Glyph/index.d.ts +10 -0
- package/dist/primitives/three/Glyph/index.d.ts.map +1 -0
- package/dist/primitives/three/Glyph/index.js +9 -0
- package/dist/primitives/three/Glyph/types.d.ts +33 -0
- package/dist/primitives/three/Glyph/types.d.ts.map +1 -0
- package/dist/primitives/three/Glyph/types.js +1 -0
- package/dist/primitives/three/Glyph/useGlyphController.d.ts +24 -0
- package/dist/primitives/three/Glyph/useGlyphController.d.ts.map +1 -0
- package/dist/primitives/three/Glyph/useGlyphController.js +182 -0
- package/dist/primitives/three/Glyph/useGlyphEmotion.d.ts +26 -0
- package/dist/primitives/three/Glyph/useGlyphEmotion.d.ts.map +1 -0
- package/dist/primitives/three/Glyph/useGlyphEmotion.js +44 -0
- package/dist/primitives/three/Graph3D/Graph3D.d.ts +25 -0
- package/dist/primitives/three/Graph3D/Graph3D.d.ts.map +1 -0
- package/dist/primitives/three/Graph3D/Graph3D.js +120 -0
- package/dist/primitives/three/Graph3D/GraphEdge.d.ts +12 -0
- package/dist/primitives/three/Graph3D/GraphEdge.d.ts.map +1 -0
- package/dist/primitives/three/Graph3D/GraphEdge.js +45 -0
- package/dist/primitives/three/Graph3D/GraphNode.d.ts +17 -0
- package/dist/primitives/three/Graph3D/GraphNode.d.ts.map +1 -0
- package/dist/primitives/three/Graph3D/GraphNode.js +104 -0
- package/dist/primitives/three/Graph3D/types.d.ts +62 -0
- package/dist/primitives/three/Graph3D/types.d.ts.map +1 -0
- package/dist/primitives/three/Graph3D/types.js +1 -0
- package/dist/primitives/three/Graph3D/utils.d.ts +10 -0
- package/dist/primitives/three/Graph3D/utils.d.ts.map +1 -0
- package/dist/primitives/three/Graph3D/utils.js +145 -0
- package/dist/primitives/three/IntelFeed/IntelFeed.d.ts +3 -0
- package/dist/primitives/three/IntelFeed/IntelFeed.d.ts.map +1 -0
- package/dist/primitives/three/IntelFeed/IntelFeed.js +130 -0
- package/dist/primitives/three/IntelFeed/index.d.ts +14 -0
- package/dist/primitives/three/IntelFeed/index.d.ts.map +1 -0
- package/dist/primitives/three/IntelFeed/index.js +12 -0
- package/dist/primitives/three/IntelFeed/types.d.ts +42 -0
- package/dist/primitives/three/IntelFeed/types.d.ts.map +1 -0
- package/dist/primitives/three/IntelFeed/types.js +20 -0
- package/dist/primitives/three/NetworkTopology/NetworkTopology.d.ts +3 -0
- package/dist/primitives/three/NetworkTopology/NetworkTopology.d.ts.map +1 -0
- package/dist/primitives/three/NetworkTopology/NetworkTopology.js +208 -0
- package/dist/primitives/three/NetworkTopology/index.d.ts +20 -0
- package/dist/primitives/three/NetworkTopology/index.d.ts.map +1 -0
- package/dist/primitives/three/NetworkTopology/index.js +18 -0
- package/dist/primitives/three/NetworkTopology/types.d.ts +59 -0
- package/dist/primitives/three/NetworkTopology/types.d.ts.map +1 -0
- package/dist/primitives/three/NetworkTopology/types.js +56 -0
- package/dist/primitives/three/ParticleField/ParticleField.d.ts +8 -0
- package/dist/primitives/three/ParticleField/ParticleField.d.ts.map +1 -0
- package/dist/primitives/three/ParticleField/ParticleField.js +44 -0
- package/dist/primitives/three/ParticleField/index.d.ts +2 -0
- package/dist/primitives/three/ParticleField/index.d.ts.map +1 -0
- package/dist/primitives/three/ParticleField/index.js +1 -0
- package/dist/primitives/three/PermissionMatrix/PermissionMatrix.d.ts +14 -0
- package/dist/primitives/three/PermissionMatrix/PermissionMatrix.d.ts.map +1 -0
- package/dist/primitives/three/PermissionMatrix/PermissionMatrix.js +99 -0
- package/dist/primitives/three/PermissionMatrix/index.d.ts +10 -0
- package/dist/primitives/three/PermissionMatrix/index.d.ts.map +1 -0
- package/dist/primitives/three/PermissionMatrix/index.js +8 -0
- package/dist/primitives/three/PermissionMatrix/types.d.ts +44 -0
- package/dist/primitives/three/PermissionMatrix/types.d.ts.map +1 -0
- package/dist/primitives/three/PermissionMatrix/types.js +12 -0
- package/dist/primitives/three/QuantumField/ConstellationField.d.ts +9 -0
- package/dist/primitives/three/QuantumField/ConstellationField.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/ConstellationField.js +185 -0
- package/dist/primitives/three/QuantumField/FieldBus.d.ts +34 -0
- package/dist/primitives/three/QuantumField/FieldBus.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/FieldBus.js +278 -0
- package/dist/primitives/three/QuantumField/FieldLayer.d.ts +22 -0
- package/dist/primitives/three/QuantumField/FieldLayer.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/FieldLayer.js +307 -0
- package/dist/primitives/three/QuantumField/FieldProvider.d.ts +75 -0
- package/dist/primitives/three/QuantumField/FieldProvider.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/FieldProvider.js +313 -0
- package/dist/primitives/three/QuantumField/PcbField.d.ts +18 -0
- package/dist/primitives/three/QuantumField/PcbField.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/PcbField.js +317 -0
- package/dist/primitives/three/QuantumField/TrailRTT.d.ts +54 -0
- package/dist/primitives/three/QuantumField/TrailRTT.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/TrailRTT.js +176 -0
- package/dist/primitives/three/QuantumField/WaterField.d.ts +9 -0
- package/dist/primitives/three/QuantumField/WaterField.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/WaterField.js +179 -0
- package/dist/primitives/three/QuantumField/WaterSimRTT.d.ts +75 -0
- package/dist/primitives/three/QuantumField/WaterSimRTT.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/WaterSimRTT.js +238 -0
- package/dist/primitives/three/QuantumField/domMapping.d.ts +110 -0
- package/dist/primitives/three/QuantumField/domMapping.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/domMapping.js +124 -0
- package/dist/primitives/three/QuantumField/index.d.ts +29 -0
- package/dist/primitives/three/QuantumField/index.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/index.js +26 -0
- package/dist/primitives/three/QuantumField/styles/index.d.ts +9 -0
- package/dist/primitives/three/QuantumField/styles/index.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/styles/index.js +8 -0
- package/dist/primitives/three/QuantumField/styles/styleA.d.ts +56 -0
- package/dist/primitives/three/QuantumField/styles/styleA.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/styles/styleA.js +484 -0
- package/dist/primitives/three/QuantumField/styles/styleB.d.ts +128 -0
- package/dist/primitives/three/QuantumField/styles/styleB.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/styles/styleB.js +1134 -0
- package/dist/primitives/three/QuantumField/styles/styleC.d.ts +42 -0
- package/dist/primitives/three/QuantumField/styles/styleC.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/styles/styleC.js +244 -0
- package/dist/primitives/three/QuantumField/themes.d.ts +60 -0
- package/dist/primitives/three/QuantumField/themes.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/themes.js +182 -0
- package/dist/primitives/three/QuantumField/types.d.ts +261 -0
- package/dist/primitives/three/QuantumField/types.d.ts.map +1 -0
- package/dist/primitives/three/QuantumField/types.js +100 -0
- package/dist/primitives/three/SOCCommandCenter/SOCCommandCenter.d.ts +3 -0
- package/dist/primitives/three/SOCCommandCenter/SOCCommandCenter.d.ts.map +1 -0
- package/dist/primitives/three/SOCCommandCenter/SOCCommandCenter.js +80 -0
- package/dist/primitives/three/SOCCommandCenter/index.d.ts +20 -0
- package/dist/primitives/three/SOCCommandCenter/index.d.ts.map +1 -0
- package/dist/primitives/three/SOCCommandCenter/index.js +18 -0
- package/dist/primitives/three/SOCCommandCenter/types.d.ts +42 -0
- package/dist/primitives/three/SOCCommandCenter/types.d.ts.map +1 -0
- package/dist/primitives/three/SOCCommandCenter/types.js +157 -0
- package/dist/primitives/three/SecurityDashboard/SecurityDashboard.d.ts +6 -0
- package/dist/primitives/three/SecurityDashboard/SecurityDashboard.d.ts.map +1 -0
- package/dist/primitives/three/SecurityDashboard/SecurityDashboard.js +187 -0
- package/dist/primitives/three/SecurityDashboard/index.d.ts +29 -0
- package/dist/primitives/three/SecurityDashboard/index.d.ts.map +1 -0
- package/dist/primitives/three/SecurityDashboard/index.js +27 -0
- package/dist/primitives/three/SecurityDashboard/types.d.ts +110 -0
- package/dist/primitives/three/SecurityDashboard/types.d.ts.map +1 -0
- package/dist/primitives/three/SecurityDashboard/types.js +38 -0
- package/dist/primitives/three/SecurityShield/SecurityShield.d.ts +6 -0
- package/dist/primitives/three/SecurityShield/SecurityShield.d.ts.map +1 -0
- package/dist/primitives/three/SecurityShield/SecurityShield.js +200 -0
- package/dist/primitives/three/SecurityShield/index.d.ts +20 -0
- package/dist/primitives/three/SecurityShield/index.d.ts.map +1 -0
- package/dist/primitives/three/SecurityShield/index.js +18 -0
- package/dist/primitives/three/SecurityShield/types.d.ts +39 -0
- package/dist/primitives/three/SecurityShield/types.d.ts.map +1 -0
- package/dist/primitives/three/SecurityShield/types.js +27 -0
- package/dist/primitives/three/Sentinel/AvatarMode.d.ts +4 -0
- package/dist/primitives/three/Sentinel/AvatarMode.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/AvatarMode.js +443 -0
- package/dist/primitives/three/Sentinel/AvatarRenderer.d.ts +23 -0
- package/dist/primitives/three/Sentinel/AvatarRenderer.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/AvatarRenderer.js +112 -0
- package/dist/primitives/three/Sentinel/CameraPip.d.ts +10 -0
- package/dist/primitives/three/Sentinel/CameraPip.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/CameraPip.js +76 -0
- package/dist/primitives/three/Sentinel/CardinalItem.d.ts +5 -0
- package/dist/primitives/three/Sentinel/CardinalItem.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/CardinalItem.js +52 -0
- package/dist/primitives/three/Sentinel/CardinalMenu.d.ts +5 -0
- package/dist/primitives/three/Sentinel/CardinalMenu.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/CardinalMenu.js +255 -0
- package/dist/primitives/three/Sentinel/DockedMiniOrb.d.ts +4 -0
- package/dist/primitives/three/Sentinel/DockedMiniOrb.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/DockedMiniOrb.js +97 -0
- package/dist/primitives/three/Sentinel/RadialSubmenu.d.ts +5 -0
- package/dist/primitives/three/Sentinel/RadialSubmenu.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/RadialSubmenu.js +187 -0
- package/dist/primitives/three/Sentinel/SentinelConversation.d.ts +4 -0
- package/dist/primitives/three/Sentinel/SentinelConversation.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/SentinelConversation.js +405 -0
- package/dist/primitives/three/Sentinel/SentinelOrb.d.ts +4 -0
- package/dist/primitives/three/Sentinel/SentinelOrb.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/SentinelOrb.js +239 -0
- package/dist/primitives/three/Sentinel/SentinelOverlay.d.ts +4 -0
- package/dist/primitives/three/Sentinel/SentinelOverlay.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/SentinelOverlay.js +90 -0
- package/dist/primitives/three/Sentinel/SentinelProvider.d.ts +12 -0
- package/dist/primitives/three/Sentinel/SentinelProvider.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/SentinelProvider.js +81 -0
- package/dist/primitives/three/Sentinel/SentinelTether.d.ts +4 -0
- package/dist/primitives/three/Sentinel/SentinelTether.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/SentinelTether.js +71 -0
- package/dist/primitives/three/Sentinel/SigilPlaceholder.d.ts +6 -0
- package/dist/primitives/three/Sentinel/SigilPlaceholder.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/SigilPlaceholder.js +65 -0
- package/dist/primitives/three/Sentinel/VerticalSubmenu.d.ts +5 -0
- package/dist/primitives/three/Sentinel/VerticalSubmenu.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/VerticalSubmenu.js +105 -0
- package/dist/primitives/three/Sentinel/index.d.ts +67 -0
- package/dist/primitives/three/Sentinel/index.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/index.js +86 -0
- package/dist/primitives/three/Sentinel/sentinelStore.d.ts +33 -0
- package/dist/primitives/three/Sentinel/sentinelStore.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/sentinelStore.js +125 -0
- package/dist/primitives/three/Sentinel/types.d.ts +337 -0
- package/dist/primitives/three/Sentinel/types.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/types.js +6 -0
- package/dist/primitives/three/Sentinel/useCameraPermission.d.ts +9 -0
- package/dist/primitives/three/Sentinel/useCameraPermission.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/useCameraPermission.js +138 -0
- package/dist/primitives/three/Sentinel/useThrowPhysics.d.ts +9 -0
- package/dist/primitives/three/Sentinel/useThrowPhysics.d.ts.map +1 -0
- package/dist/primitives/three/Sentinel/useThrowPhysics.js +167 -0
- package/dist/primitives/three/SpatialWorkspace/CyntraWorkspace.d.ts +8 -0
- package/dist/primitives/three/SpatialWorkspace/CyntraWorkspace.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/CyntraWorkspace.js +54 -0
- package/dist/primitives/three/SpatialWorkspace/JobCluster.d.ts +3 -0
- package/dist/primitives/three/SpatialWorkspace/JobCluster.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/JobCluster.js +126 -0
- package/dist/primitives/three/SpatialWorkspace/NodeGraph.d.ts +3 -0
- package/dist/primitives/three/SpatialWorkspace/NodeGraph.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/NodeGraph.js +154 -0
- package/dist/primitives/three/SpatialWorkspace/ReceiptOrbit.d.ts +3 -0
- package/dist/primitives/three/SpatialWorkspace/ReceiptOrbit.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/ReceiptOrbit.js +135 -0
- package/dist/primitives/three/SpatialWorkspace/SpatialWorkspace.d.ts +3 -0
- package/dist/primitives/three/SpatialWorkspace/SpatialWorkspace.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/SpatialWorkspace.js +189 -0
- package/dist/primitives/three/SpatialWorkspace/TrustRings.d.ts +3 -0
- package/dist/primitives/three/SpatialWorkspace/TrustRings.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/TrustRings.js +63 -0
- package/dist/primitives/three/SpatialWorkspace/adapters.d.ts +56 -0
- package/dist/primitives/three/SpatialWorkspace/adapters.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/adapters.js +253 -0
- package/dist/primitives/three/SpatialWorkspace/index.d.ts +22 -0
- package/dist/primitives/three/SpatialWorkspace/index.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/index.js +17 -0
- package/dist/primitives/three/SpatialWorkspace/nexusAdapter.d.ts +53 -0
- package/dist/primitives/three/SpatialWorkspace/nexusAdapter.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/nexusAdapter.js +107 -0
- package/dist/primitives/three/SpatialWorkspace/types.d.ts +173 -0
- package/dist/primitives/three/SpatialWorkspace/types.d.ts.map +1 -0
- package/dist/primitives/three/SpatialWorkspace/types.js +170 -0
- package/dist/primitives/three/ThreatRadar/ThreatRadar.d.ts +12 -0
- package/dist/primitives/three/ThreatRadar/ThreatRadar.d.ts.map +1 -0
- package/dist/primitives/three/ThreatRadar/ThreatRadar.js +223 -0
- package/dist/primitives/three/ThreatRadar/index.d.ts +4 -0
- package/dist/primitives/three/ThreatRadar/index.d.ts.map +1 -0
- package/dist/primitives/three/ThreatRadar/index.js +2 -0
- package/dist/primitives/three/ThreatRadar/types.d.ts +74 -0
- package/dist/primitives/three/ThreatRadar/types.d.ts.map +1 -0
- package/dist/primitives/three/ThreatRadar/types.js +20 -0
- package/dist/primitives/three/index.d.ts +22 -0
- package/dist/primitives/three/index.d.ts.map +1 -0
- package/dist/primitives/three/index.js +37 -0
- package/dist/primitives/ui/alert-dialog.d.ts +15 -0
- package/dist/primitives/ui/alert-dialog.d.ts.map +1 -0
- package/dist/primitives/ui/alert-dialog.js +39 -0
- package/dist/primitives/ui/avatar.d.ts +7 -0
- package/dist/primitives/ui/avatar.d.ts.map +1 -0
- package/dist/primitives/ui/avatar.js +14 -0
- package/dist/primitives/ui/badge.d.ts +10 -0
- package/dist/primitives/ui/badge.d.ts.map +1 -0
- package/dist/primitives/ui/badge.js +22 -0
- package/dist/primitives/ui/button.d.ts +11 -0
- package/dist/primitives/ui/button.d.ts.map +1 -0
- package/dist/primitives/ui/button.js +33 -0
- package/dist/primitives/ui/dialog.d.ts +16 -0
- package/dist/primitives/ui/dialog.d.ts.map +1 -0
- package/dist/primitives/ui/dialog.js +36 -0
- package/dist/primitives/ui/dropdown-menu.d.ts +26 -0
- package/dist/primitives/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/primitives/ui/dropdown-menu.js +51 -0
- package/dist/primitives/ui/index.d.ts +19 -0
- package/dist/primitives/ui/index.d.ts.map +1 -0
- package/dist/primitives/ui/index.js +23 -0
- package/dist/primitives/ui/input.d.ts +4 -0
- package/dist/primitives/ui/input.d.ts.map +1 -0
- package/dist/primitives/ui/input.js +6 -0
- package/dist/primitives/ui/label.d.ts +5 -0
- package/dist/primitives/ui/label.d.ts.map +1 -0
- package/dist/primitives/ui/label.js +8 -0
- package/dist/primitives/ui/popover.d.ts +8 -0
- package/dist/primitives/ui/popover.d.ts.map +1 -0
- package/dist/primitives/ui/popover.js +17 -0
- package/dist/primitives/ui/scroll-area.d.ts +6 -0
- package/dist/primitives/ui/scroll-area.d.ts.map +1 -0
- package/dist/primitives/ui/scroll-area.js +11 -0
- package/dist/primitives/ui/select.d.ts +16 -0
- package/dist/primitives/ui/select.d.ts.map +1 -0
- package/dist/primitives/ui/select.js +38 -0
- package/dist/primitives/ui/separator.d.ts +5 -0
- package/dist/primitives/ui/separator.d.ts.map +1 -0
- package/dist/primitives/ui/separator.js +8 -0
- package/dist/primitives/ui/skeleton.d.ts +4 -0
- package/dist/primitives/ui/skeleton.d.ts.map +1 -0
- package/dist/primitives/ui/skeleton.js +6 -0
- package/dist/primitives/ui/switch.d.ts +5 -0
- package/dist/primitives/ui/switch.d.ts.map +1 -0
- package/dist/primitives/ui/switch.js +8 -0
- package/dist/primitives/ui/tabs.d.ts +8 -0
- package/dist/primitives/ui/tabs.d.ts.map +1 -0
- package/dist/primitives/ui/tabs.js +17 -0
- package/dist/primitives/ui/textarea.d.ts +4 -0
- package/dist/primitives/ui/textarea.d.ts.map +1 -0
- package/dist/primitives/ui/textarea.js +6 -0
- package/dist/primitives/ui/toggle.d.ts +10 -0
- package/dist/primitives/ui/toggle.d.ts.map +1 -0
- package/dist/primitives/ui/toggle.js +26 -0
- package/dist/primitives/ui/tooltip.d.ts +8 -0
- package/dist/primitives/ui/tooltip.d.ts.map +1 -0
- package/dist/primitives/ui/tooltip.js +17 -0
- package/dist/protocol/branded.d.ts +131 -0
- package/dist/protocol/branded.d.ts.map +1 -0
- package/dist/protocol/branded.js +133 -0
- package/dist/protocol/dom.d.ts +148 -0
- package/dist/protocol/dom.d.ts.map +1 -0
- package/dist/protocol/dom.js +300 -0
- package/dist/protocol/index.d.ts +9 -0
- package/dist/protocol/index.d.ts.map +1 -0
- package/dist/protocol/index.js +30 -0
- package/dist/protocol/schema.d.ts +854 -0
- package/dist/protocol/schema.d.ts.map +1 -0
- package/dist/protocol/schema.js +155 -0
- package/dist/protocol/types.d.ts +256 -0
- package/dist/protocol/types.d.ts.map +1 -0
- package/dist/protocol/types.js +6 -0
- package/dist/speakeasy/SpeakeasyProvider.d.ts +57 -0
- package/dist/speakeasy/SpeakeasyProvider.d.ts.map +1 -0
- package/dist/speakeasy/SpeakeasyProvider.js +249 -0
- package/dist/speakeasy/auth/CapabilityIssuer.d.ts +22 -0
- package/dist/speakeasy/auth/CapabilityIssuer.d.ts.map +1 -0
- package/dist/speakeasy/auth/CapabilityIssuer.js +70 -0
- package/dist/speakeasy/auth/SpeakeasyAuth.d.ts +43 -0
- package/dist/speakeasy/auth/SpeakeasyAuth.d.ts.map +1 -0
- package/dist/speakeasy/auth/SpeakeasyAuth.js +147 -0
- package/dist/speakeasy/auth/crypto.d.ts +12 -0
- package/dist/speakeasy/auth/crypto.d.ts.map +1 -0
- package/dist/speakeasy/auth/crypto.js +68 -0
- package/dist/speakeasy/auth/deviceSecret.d.ts +17 -0
- package/dist/speakeasy/auth/deviceSecret.d.ts.map +1 -0
- package/dist/speakeasy/auth/deviceSecret.js +62 -0
- package/dist/speakeasy/auth/storage.d.ts +62 -0
- package/dist/speakeasy/auth/storage.d.ts.map +1 -0
- package/dist/speakeasy/auth/storage.js +344 -0
- package/dist/speakeasy/components/SpeakeasyConsentDialog.d.ts +24 -0
- package/dist/speakeasy/components/SpeakeasyConsentDialog.d.ts.map +1 -0
- package/dist/speakeasy/components/SpeakeasyConsentDialog.js +181 -0
- package/dist/speakeasy/components/SpeakeasyOrb.d.ts +14 -0
- package/dist/speakeasy/components/SpeakeasyOrb.d.ts.map +1 -0
- package/dist/speakeasy/components/SpeakeasyOrb.js +128 -0
- package/dist/speakeasy/components/SpeakeasyRegistrationDialog.d.ts +9 -0
- package/dist/speakeasy/components/SpeakeasyRegistrationDialog.d.ts.map +1 -0
- package/dist/speakeasy/components/SpeakeasyRegistrationDialog.js +93 -0
- package/dist/speakeasy/components/SpeakeasyRitualPad.d.ts +18 -0
- package/dist/speakeasy/components/SpeakeasyRitualPad.d.ts.map +1 -0
- package/dist/speakeasy/components/SpeakeasyRitualPad.js +63 -0
- package/dist/speakeasy/doorman/DoormanStateMachine.d.ts +40 -0
- package/dist/speakeasy/doorman/DoormanStateMachine.d.ts.map +1 -0
- package/dist/speakeasy/doorman/DoormanStateMachine.js +393 -0
- package/dist/speakeasy/doorman/panic.d.ts +10 -0
- package/dist/speakeasy/doorman/panic.d.ts.map +1 -0
- package/dist/speakeasy/doorman/panic.js +28 -0
- package/dist/speakeasy/hooks/useGestureRecognizer.d.ts +48 -0
- package/dist/speakeasy/hooks/useGestureRecognizer.d.ts.map +1 -0
- package/dist/speakeasy/hooks/useGestureRecognizer.js +337 -0
- package/dist/speakeasy/index.d.ts +47 -0
- package/dist/speakeasy/index.d.ts.map +1 -0
- package/dist/speakeasy/index.js +53 -0
- package/dist/speakeasy/types.d.ts +203 -0
- package/dist/speakeasy/types.d.ts.map +1 -0
- package/dist/speakeasy/types.js +52 -0
- package/dist/speakeasy/useSpeakeasy.d.ts +2 -0
- package/dist/speakeasy/useSpeakeasy.d.ts.map +1 -0
- package/dist/speakeasy/useSpeakeasy.js +1 -0
- package/dist/styles.css +1 -0
- package/dist/theme/UiThemeProvider.d.ts +42 -0
- package/dist/theme/UiThemeProvider.d.ts.map +1 -0
- package/dist/theme/UiThemeProvider.js +126 -0
- package/dist/theme/index.d.ts +12 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +12 -0
- package/dist/theme/nebula.d.ts +9 -0
- package/dist/theme/nebula.d.ts.map +1 -0
- package/dist/theme/nebula.js +113 -0
- package/dist/theme/registry.d.ts +24 -0
- package/dist/theme/registry.d.ts.map +1 -0
- package/dist/theme/registry.js +250 -0
- package/dist/theme/solarpunk.d.ts +9 -0
- package/dist/theme/solarpunk.d.ts.map +1 -0
- package/dist/theme/solarpunk.js +118 -0
- package/dist/theme/types.d.ts +233 -0
- package/dist/theme/types.d.ts.map +1 -0
- package/dist/theme/types.js +7 -0
- package/dist/vision/adapters/canvasCapture.d.ts +24 -0
- package/dist/vision/adapters/canvasCapture.d.ts.map +1 -0
- package/dist/vision/adapters/canvasCapture.js +64 -0
- package/dist/vision/adapters/raymondAdapter.d.ts +62 -0
- package/dist/vision/adapters/raymondAdapter.d.ts.map +1 -0
- package/dist/vision/adapters/raymondAdapter.js +227 -0
- package/dist/vision/hooks/useVisionCaptureController.d.ts +21 -0
- package/dist/vision/hooks/useVisionCaptureController.d.ts.map +1 -0
- package/dist/vision/hooks/useVisionCaptureController.js +55 -0
- package/dist/vision/index.d.ts +6 -0
- package/dist/vision/index.d.ts.map +1 -0
- package/dist/vision/index.js +5 -0
- package/dist/vision/raymond/camera.d.ts +36 -0
- package/dist/vision/raymond/camera.d.ts.map +1 -0
- package/dist/vision/raymond/camera.js +129 -0
- package/dist/vision/raymond/canvas/Eye.d.ts +12 -0
- package/dist/vision/raymond/canvas/Eye.d.ts.map +1 -0
- package/dist/vision/raymond/canvas/Eye.js +50 -0
- package/dist/vision/raymond/canvas/PointLight.d.ts +12 -0
- package/dist/vision/raymond/canvas/PointLight.d.ts.map +1 -0
- package/dist/vision/raymond/canvas/PointLight.js +20 -0
- package/dist/vision/raymond/canvas/lightingModel.d.ts +26 -0
- package/dist/vision/raymond/canvas/lightingModel.d.ts.map +1 -0
- package/dist/vision/raymond/canvas/lightingModel.js +1 -0
- package/dist/vision/raymond/canvas/lightingModelRegistry.d.ts +12 -0
- package/dist/vision/raymond/canvas/lightingModelRegistry.d.ts.map +1 -0
- package/dist/vision/raymond/canvas/lightingModelRegistry.js +33 -0
- package/dist/vision/raymond/canvas/models/phongTracingModel.d.ts +13 -0
- package/dist/vision/raymond/canvas/models/phongTracingModel.d.ts.map +1 -0
- package/dist/vision/raymond/canvas/models/phongTracingModel.js +72 -0
- package/dist/vision/raymond/canvas/optics.d.ts +37 -0
- package/dist/vision/raymond/canvas/optics.d.ts.map +1 -0
- package/dist/vision/raymond/canvas/optics.js +343 -0
- package/dist/vision/raymond/index.d.ts +15 -0
- package/dist/vision/raymond/index.d.ts.map +1 -0
- package/dist/vision/raymond/index.js +14 -0
- package/dist/vision/raymond/math.d.ts +39 -0
- package/dist/vision/raymond/math.d.ts.map +1 -0
- package/dist/vision/raymond/math.js +162 -0
- package/dist/vision/raymond/shapes.d.ts +37 -0
- package/dist/vision/raymond/shapes.d.ts.map +1 -0
- package/dist/vision/raymond/shapes.js +123 -0
- package/dist/vision/raymond/shared/color.d.ts +18 -0
- package/dist/vision/raymond/shared/color.d.ts.map +1 -0
- package/dist/vision/raymond/shared/color.js +12 -0
- package/dist/vision/raymond/shared/material.d.ts +13 -0
- package/dist/vision/raymond/shared/material.d.ts.map +1 -0
- package/dist/vision/raymond/shared/material.js +12 -0
- package/dist/vision/raymond/shared/util.d.ts +2 -0
- package/dist/vision/raymond/shared/util.d.ts.map +1 -0
- package/dist/vision/raymond/shared/util.js +3 -0
- package/dist/vision/raymond/transform.d.ts +24 -0
- package/dist/vision/raymond/transform.d.ts.map +1 -0
- package/dist/vision/raymond/transform.js +86 -0
- package/dist/vision/raymond/types.d.ts +33 -0
- package/dist/vision/raymond/types.d.ts.map +1 -0
- package/dist/vision/raymond/types.js +1 -0
- package/dist/vision/types.d.ts +72 -0
- package/dist/vision/types.d.ts.map +1 -0
- package/dist/vision/types.js +1 -0
- package/dist/workspace/WorkspaceRenderer.d.ts +34 -0
- package/dist/workspace/WorkspaceRenderer.d.ts.map +1 -0
- package/dist/workspace/WorkspaceRenderer.js +292 -0
- package/dist/workspace/componentBindings.d.ts +26 -0
- package/dist/workspace/componentBindings.d.ts.map +1 -0
- package/dist/workspace/componentBindings.js +260 -0
- package/dist/workspace/index.d.ts +28 -0
- package/dist/workspace/index.d.ts.map +1 -0
- package/dist/workspace/index.js +27 -0
- package/dist/workspace/registry/index.d.ts +24 -0
- package/dist/workspace/registry/index.d.ts.map +1 -0
- package/dist/workspace/registry/index.js +23 -0
- package/dist/workspace/registry/manifests/atoms.d.ts +13 -0
- package/dist/workspace/registry/manifests/atoms.d.ts.map +1 -0
- package/dist/workspace/registry/manifests/atoms.js +462 -0
- package/dist/workspace/registry/manifests/index.d.ts +23 -0
- package/dist/workspace/registry/manifests/index.d.ts.map +1 -0
- package/dist/workspace/registry/manifests/index.js +38 -0
- package/dist/workspace/registry/manifests/layouts.d.ts +10 -0
- package/dist/workspace/registry/manifests/layouts.d.ts.map +1 -0
- package/dist/workspace/registry/manifests/layouts.js +268 -0
- package/dist/workspace/registry/manifests/molecules.d.ts +10 -0
- package/dist/workspace/registry/manifests/molecules.d.ts.map +1 -0
- package/dist/workspace/registry/manifests/molecules.js +276 -0
- package/dist/workspace/registry/manifests/organisms.d.ts +10 -0
- package/dist/workspace/registry/manifests/organisms.d.ts.map +1 -0
- package/dist/workspace/registry/manifests/organisms.js +267 -0
- package/dist/workspace/registry/manifests/three.d.ts +9 -0
- package/dist/workspace/registry/manifests/three.d.ts.map +1 -0
- package/dist/workspace/registry/manifests/three.js +210 -0
- package/dist/workspace/registry/registry.d.ts +22 -0
- package/dist/workspace/registry/registry.d.ts.map +1 -0
- package/dist/workspace/registry/registry.js +232 -0
- package/dist/workspace/registry/types.d.ts +133 -0
- package/dist/workspace/registry/types.d.ts.map +1 -0
- package/dist/workspace/registry/types.js +7 -0
- package/dist/workspace/types.d.ts +263 -0
- package/dist/workspace/types.d.ts.map +1 -0
- package/dist/workspace/types.js +7 -0
- package/dist/workspace/validation.d.ts +19 -0
- package/dist/workspace/validation.d.ts.map +1 -0
- package/dist/workspace/validation.js +331 -0
- package/package.json +172 -0
|
@@ -0,0 +1,1134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Style B - "PCB Vector Field (Sci-Fi/Engineering)"
|
|
3
|
+
*
|
|
4
|
+
* A technical substrate: circuit-board routing traces and vector-field arrows that "route"
|
|
5
|
+
* energy around UI surfaces. Hover creates a "routing negotiation" (signals bend into nearest tracks);
|
|
6
|
+
* etch draws crisp conductor paths; click bursts like an oscilloscope impulse;
|
|
7
|
+
* latch becomes a pin/via node with persistent trace to origin.
|
|
8
|
+
*/
|
|
9
|
+
import * as THREE from "three";
|
|
10
|
+
// -----------------------------------------------------------------------------
|
|
11
|
+
// Shader Code
|
|
12
|
+
// -----------------------------------------------------------------------------
|
|
13
|
+
export const PCB_VERTEX_SHADER = /* glsl */ `
|
|
14
|
+
varying vec2 vUv;
|
|
15
|
+
varying vec3 vPosition;
|
|
16
|
+
|
|
17
|
+
void main() {
|
|
18
|
+
vUv = uv;
|
|
19
|
+
vPosition = position;
|
|
20
|
+
gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
|
|
21
|
+
}
|
|
22
|
+
`;
|
|
23
|
+
export const PCB_FRAGMENT_SHADER = /* glsl */ `
|
|
24
|
+
uniform float uTime;
|
|
25
|
+
uniform vec2 uResolution;
|
|
26
|
+
uniform vec4 uHover; // xy = uv, z = intent (0=probe, 1=etch), w = active
|
|
27
|
+
uniform vec4 uImpulses[24]; // xy = uv, z = radius, w = amp
|
|
28
|
+
uniform float uImpulsesAge[24];
|
|
29
|
+
uniform int uImpulseCount;
|
|
30
|
+
uniform vec4 uAnchors[8]; // xy = uv, z = strength, w = phase
|
|
31
|
+
uniform int uAnchorCount;
|
|
32
|
+
uniform sampler2D uTrailTex;
|
|
33
|
+
uniform float uTrailEnabled;
|
|
34
|
+
uniform float uProbeRadius;
|
|
35
|
+
|
|
36
|
+
// === Ultra-Fine Lattice Uniforms ===
|
|
37
|
+
uniform float uMicroGrid1; // Fine grid frequency (default ~60)
|
|
38
|
+
uniform float uMicroGrid2; // Ultra-fine grid frequency (default ~200)
|
|
39
|
+
uniform float uMicroGridStrength; // Overall micro-lattice visibility (0-1)
|
|
40
|
+
uniform float uRevealStrength; // How much hover reveals the lattice (0-1)
|
|
41
|
+
uniform float uBaseVisibility; // Base visibility without hover (0-1, default 0.05)
|
|
42
|
+
uniform float uMicroWarp; // Domain warp amount (subtle, ~0.01-0.05)
|
|
43
|
+
uniform float uEtchDistortion; // UV distortion in etched areas (0-0.02)
|
|
44
|
+
|
|
45
|
+
// === Phase Lens Uniforms ===
|
|
46
|
+
uniform vec4 uLens; // xy = center uv, z = radius, w = magnification
|
|
47
|
+
uniform float uLensVelocity; // 0..1 normalized cursor velocity
|
|
48
|
+
uniform float uLensChromatic; // chromatic aberration intensity (0-1)
|
|
49
|
+
uniform float uLensEnabled; // 0 or 1
|
|
50
|
+
|
|
51
|
+
// === Lattice Mode Uniform ===
|
|
52
|
+
uniform int uLatticeMode; // 0=rect, 1=hex, 2=tri
|
|
53
|
+
|
|
54
|
+
// === Etch Velocity Uniform ===
|
|
55
|
+
uniform float uEtchVelocity; // 0..1 for visual feedback in etch
|
|
56
|
+
|
|
57
|
+
// === Palette / Atmosphere Uniforms ===
|
|
58
|
+
uniform int uPaletteMode; // 0=glia-cyan, 1=orchid, 2=amber, 3=mono, 4=ice
|
|
59
|
+
uniform float uAccentIntensity; // 0-2, default 1.0
|
|
60
|
+
uniform float uIridescenceStrength; // 0-1
|
|
61
|
+
uniform float uIridescenceScale; // 1-40
|
|
62
|
+
uniform float uExposure; // 0.6-2.0
|
|
63
|
+
uniform float uFilmic; // 0-1
|
|
64
|
+
uniform float uGrainStrength; // 0-0.08
|
|
65
|
+
uniform float uCrtStrength; // 0-1
|
|
66
|
+
uniform float uCopperStrength; // 0-1
|
|
67
|
+
|
|
68
|
+
varying vec2 vUv;
|
|
69
|
+
varying vec3 vPosition;
|
|
70
|
+
|
|
71
|
+
const float PI = 3.14159265359;
|
|
72
|
+
|
|
73
|
+
// ============================================================================
|
|
74
|
+
// Noise Functions
|
|
75
|
+
// ============================================================================
|
|
76
|
+
|
|
77
|
+
float hash(vec2 p) {
|
|
78
|
+
return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
vec2 hash2(vec2 p) {
|
|
82
|
+
p = vec2(dot(p, vec2(127.1, 311.7)), dot(p, vec2(269.5, 183.3)));
|
|
83
|
+
return fract(sin(p) * 43758.5453);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
float noise(vec2 p) {
|
|
87
|
+
vec2 i = floor(p);
|
|
88
|
+
vec2 f = fract(p);
|
|
89
|
+
f = f * f * (3.0 - 2.0 * f);
|
|
90
|
+
|
|
91
|
+
float a = hash(i);
|
|
92
|
+
float b = hash(i + vec2(1.0, 0.0));
|
|
93
|
+
float c = hash(i + vec2(0.0, 1.0));
|
|
94
|
+
float d = hash(i + vec2(1.0, 1.0));
|
|
95
|
+
|
|
96
|
+
return mix(mix(a, b, f.x), mix(c, d, f.x), f.y);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
// Curl noise for vector field
|
|
100
|
+
vec2 curlNoise(vec2 p) {
|
|
101
|
+
float eps = 0.01;
|
|
102
|
+
float n1 = noise(p + vec2(eps, 0.0));
|
|
103
|
+
float n2 = noise(p - vec2(eps, 0.0));
|
|
104
|
+
float n3 = noise(p + vec2(0.0, eps));
|
|
105
|
+
float n4 = noise(p - vec2(0.0, eps));
|
|
106
|
+
|
|
107
|
+
return vec2(n3 - n4, n1 - n2) / (2.0 * eps);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// ============================================================================
|
|
111
|
+
// Ultra-Fine Micro-Lattice Functions
|
|
112
|
+
// ============================================================================
|
|
113
|
+
|
|
114
|
+
// Anti-aliased grid line using fwidth for stable rendering at any zoom
|
|
115
|
+
// Returns 0-1 where 1 = on the grid line
|
|
116
|
+
float gridAA(vec2 uv, float freq, float thickness) {
|
|
117
|
+
vec2 gridUv = fract(uv * freq);
|
|
118
|
+
vec2 gridDeriv = fwidth(uv * freq);
|
|
119
|
+
|
|
120
|
+
// Distance to nearest grid line (horizontal + vertical)
|
|
121
|
+
vec2 lineDistH = abs(gridUv - 0.5);
|
|
122
|
+
vec2 lineDistV = abs(gridUv);
|
|
123
|
+
|
|
124
|
+
// Use smoothstep with fwidth for anti-aliasing
|
|
125
|
+
float lineH = 1.0 - smoothstep(thickness - gridDeriv.y, thickness + gridDeriv.y, lineDistH.y);
|
|
126
|
+
float lineV = 1.0 - smoothstep(thickness - gridDeriv.x, thickness + gridDeriv.x, lineDistH.x);
|
|
127
|
+
|
|
128
|
+
// Also check lines at cell edges (0/1)
|
|
129
|
+
float edgeH = 1.0 - smoothstep(thickness - gridDeriv.y, thickness + gridDeriv.y, min(gridUv.y, 1.0 - gridUv.y));
|
|
130
|
+
float edgeV = 1.0 - smoothstep(thickness - gridDeriv.x, thickness + gridDeriv.x, min(gridUv.x, 1.0 - gridUv.x));
|
|
131
|
+
|
|
132
|
+
return max(max(lineH, lineV), max(edgeH, edgeV));
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// Rotated grid lines for hex/tri lattice - returns AA line intensity
|
|
136
|
+
float gridRotatedAA(vec2 uv, float freq, float thickness, float angleDeg) {
|
|
137
|
+
float rad = angleDeg * PI / 180.0;
|
|
138
|
+
float c = cos(rad);
|
|
139
|
+
float s = sin(rad);
|
|
140
|
+
mat2 rot = mat2(c, -s, s, c);
|
|
141
|
+
vec2 rotUv = rot * uv;
|
|
142
|
+
|
|
143
|
+
float lineCoord = rotUv.x * freq;
|
|
144
|
+
float lineDeriv = fwidth(lineCoord);
|
|
145
|
+
float lineDist = abs(fract(lineCoord) - 0.5);
|
|
146
|
+
|
|
147
|
+
return 1.0 - smoothstep(thickness - lineDeriv, thickness + lineDeriv, lineDist);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// Triangular lattice: 3 sets of parallel lines at 0°, 60°, 120°
|
|
151
|
+
// Creates a hexagonal cell pattern with triangular subdivisions
|
|
152
|
+
float triLatticeAA(vec2 uv, float freq, float thickness) {
|
|
153
|
+
float line0 = gridRotatedAA(uv, freq, thickness, 0.0);
|
|
154
|
+
float line60 = gridRotatedAA(uv, freq, thickness, 60.0);
|
|
155
|
+
float line120 = gridRotatedAA(uv, freq, thickness, 120.0);
|
|
156
|
+
|
|
157
|
+
return max(line0, max(line60, line120));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
// Hexagonal lattice with node emphasis at hex centers
|
|
161
|
+
float hexLatticeAA(vec2 uv, float freq, float thickness) {
|
|
162
|
+
// Base tri lattice already gives you the hex look.
|
|
163
|
+
float tri = triLatticeAA(uv, freq, thickness);
|
|
164
|
+
return tri; // <-- removes center “bulbs”
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
// Unified lattice function that selects mode
|
|
169
|
+
// mode: 0=rect, 1=hex, 2=tri
|
|
170
|
+
float latticeLines(vec2 uv, float freq, float thickness, int mode) {
|
|
171
|
+
if (mode == 1) {
|
|
172
|
+
return hexLatticeAA(uv, freq, thickness);
|
|
173
|
+
} else if (mode == 2) {
|
|
174
|
+
return triLatticeAA(uv, freq, thickness);
|
|
175
|
+
}
|
|
176
|
+
// Default: rect
|
|
177
|
+
return gridAA(uv, freq, thickness);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
// ============================================================================
|
|
181
|
+
// Phase Lens Functions (WebGL1 compatible - no struct returns)
|
|
182
|
+
// ============================================================================
|
|
183
|
+
|
|
184
|
+
// Compute lens mask (0=outside, 1=center) for given UV
|
|
185
|
+
float computeLensMask(vec2 uv, vec2 lensCenter, float lensRadius) {
|
|
186
|
+
float lensDist = length(uv - lensCenter);
|
|
187
|
+
return smoothstep(lensRadius, lensRadius * 0.4, lensDist);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
// Compute lens rim highlight (chromatic fringe zone)
|
|
191
|
+
float computeLensRim(vec2 uv, vec2 lensCenter, float lensRadius, float velocity) {
|
|
192
|
+
float lensDist = length(uv - lensCenter);
|
|
193
|
+
float rimInner = smoothstep(lensRadius * 0.75, lensRadius * 0.88, lensDist);
|
|
194
|
+
float rimOuter = smoothstep(lensRadius * 1.05, lensRadius * 0.92, lensDist);
|
|
195
|
+
float rim = rimInner * rimOuter;
|
|
196
|
+
return rim * (1.0 + velocity * 0.5);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
// Compute lens-distorted UV for magnification effect
|
|
200
|
+
vec2 computeLensDistortedUv(vec2 uv, vec2 lensCenter, float lensRadius, float magnification) {
|
|
201
|
+
vec2 toLens = uv - lensCenter;
|
|
202
|
+
float lensDist = length(toLens);
|
|
203
|
+
float mask = smoothstep(lensRadius, lensRadius * 0.4, lensDist);
|
|
204
|
+
|
|
205
|
+
// Magnification distortion: pull UVs toward center inside lens
|
|
206
|
+
float distortionStrength = mask * (magnification - 1.0) * 0.25;
|
|
207
|
+
vec2 distortDir = normalize(toLens + 0.0001);
|
|
208
|
+
return uv - distortDir * distortionStrength * lensDist;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
// Domain warping for organic feel - returns warped UV
|
|
212
|
+
vec2 warpUV(vec2 uv, float amount, float time) {
|
|
213
|
+
// Use curl noise for divergence-free warping (feels more natural)
|
|
214
|
+
vec2 warp = curlNoise(uv * 5.0 + time * 0.05);
|
|
215
|
+
return uv + warp * amount;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
// Compute reveal mask - how much the lattice should be visible
|
|
219
|
+
// Based on distance to hover point, anchors, and etch trails
|
|
220
|
+
float computeReveal(vec2 uv, vec2 hoverUv, float hoverActive, float probeRadius, float revealStr) {
|
|
221
|
+
float reveal = 0.0;
|
|
222
|
+
|
|
223
|
+
// Hover probe reveals the lattice
|
|
224
|
+
if (hoverActive > 0.5) {
|
|
225
|
+
float hoverDist = length(uv - hoverUv);
|
|
226
|
+
// Wider, softer reveal zone
|
|
227
|
+
reveal = smoothstep(probeRadius * 3.0, probeRadius * 0.3, hoverDist) * revealStr;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
return reveal;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
// ============================================================================
|
|
234
|
+
// Palette System (Cinematic Color Scarcity)
|
|
235
|
+
// ============================================================================
|
|
236
|
+
|
|
237
|
+
// Get base/background color for palette mode
|
|
238
|
+
vec3 paletteBase(int mode) {
|
|
239
|
+
// All modes start near-black for scarcity
|
|
240
|
+
if (mode == 0) return vec3(0.003, 0.012, 0.010); // glia-cyan: deep teal-black
|
|
241
|
+
if (mode == 1) return vec3(0.008, 0.005, 0.015); // orchid: deep purple-black
|
|
242
|
+
if (mode == 2) return vec3(0.012, 0.008, 0.003); // amber: warm black
|
|
243
|
+
if (mode == 3) return vec3(0.008, 0.012, 0.008); // mono: green-black
|
|
244
|
+
if (mode == 4) return vec3(0.005, 0.010, 0.018); // ice: cold blue-black
|
|
245
|
+
// Techno-Gothic themes
|
|
246
|
+
if (mode == 5) return vec3(0.012, 0.005, 0.020); // gothic-cathedral: deep ecclesiastical purple
|
|
247
|
+
if (mode == 6) return vec3(0.008, 0.002, 0.002); // gothic-void: abyssal black with blood tint
|
|
248
|
+
if (mode == 7) return vec3(0.008, 0.010, 0.008); // gothic-sanctum: oxidized bronze black
|
|
249
|
+
if (mode == 8) return vec3(0.015, 0.003, 0.008); // gothic-rose: deep crimson black
|
|
250
|
+
return vec3(0.005, 0.010, 0.008);
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
// Get lattice color for palette mode (revealed state)
|
|
254
|
+
vec3 paletteLattice(int mode, float reveal) {
|
|
255
|
+
vec3 dim, bright;
|
|
256
|
+
|
|
257
|
+
if (mode == 0) { // glia-cyan - boosted for visibility
|
|
258
|
+
dim = vec3(0.03, 0.10, 0.08);
|
|
259
|
+
bright = vec3(0.08, 0.50, 0.42);
|
|
260
|
+
} else if (mode == 1) { // orchid
|
|
261
|
+
dim = vec3(0.04, 0.02, 0.06);
|
|
262
|
+
bright = vec3(0.25, 0.12, 0.45);
|
|
263
|
+
} else if (mode == 2) { // amber
|
|
264
|
+
dim = vec3(0.06, 0.04, 0.02);
|
|
265
|
+
bright = vec3(0.45, 0.30, 0.08);
|
|
266
|
+
} else if (mode == 3) { // mono
|
|
267
|
+
dim = vec3(0.02, 0.05, 0.02);
|
|
268
|
+
bright = vec3(0.08, 0.35, 0.12);
|
|
269
|
+
} else if (mode == 4) { // ice
|
|
270
|
+
dim = vec3(0.03, 0.05, 0.08);
|
|
271
|
+
bright = vec3(0.15, 0.35, 0.55);
|
|
272
|
+
} else if (mode == 5) { // gothic-cathedral: stained glass purple/gold
|
|
273
|
+
dim = vec3(0.06, 0.02, 0.10);
|
|
274
|
+
bright = vec3(0.35, 0.15, 0.55);
|
|
275
|
+
} else if (mode == 6) { // gothic-void: blood red tracery
|
|
276
|
+
dim = vec3(0.08, 0.01, 0.01);
|
|
277
|
+
bright = vec3(0.45, 0.05, 0.08);
|
|
278
|
+
} else if (mode == 7) { // gothic-sanctum: verdigris bronze
|
|
279
|
+
dim = vec3(0.04, 0.06, 0.04);
|
|
280
|
+
bright = vec3(0.15, 0.35, 0.20);
|
|
281
|
+
} else if (mode == 8) { // gothic-rose: crimson with gold
|
|
282
|
+
dim = vec3(0.10, 0.02, 0.04);
|
|
283
|
+
bright = vec3(0.50, 0.10, 0.15);
|
|
284
|
+
} else {
|
|
285
|
+
dim = vec3(0.03, 0.05, 0.08);
|
|
286
|
+
bright = vec3(0.15, 0.35, 0.55);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
return mix(dim, bright, reveal);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
// Get accent color for palette mode (etch, impulses, rim)
|
|
293
|
+
vec3 paletteAccent(int mode) {
|
|
294
|
+
if (mode == 0) return vec3(0.15, 1.0, 0.7); // glia-cyan: neon mint
|
|
295
|
+
if (mode == 1) return vec3(0.4, 0.9, 1.0); // orchid: cyan fringe
|
|
296
|
+
if (mode == 2) return vec3(0.2, 0.8, 0.7); // amber: teal edge
|
|
297
|
+
if (mode == 3) return vec3(0.3, 1.0, 0.4); // mono: bright green
|
|
298
|
+
if (mode == 4) return vec3(0.6, 0.85, 1.0); // ice: pale blue-white
|
|
299
|
+
// Techno-Gothic accents
|
|
300
|
+
if (mode == 5) return vec3(1.0, 0.85, 0.3); // gothic-cathedral: sacred gold
|
|
301
|
+
if (mode == 6) return vec3(1.0, 0.15, 0.2); // gothic-void: arterial red
|
|
302
|
+
if (mode == 7) return vec3(0.4, 0.9, 0.6); // gothic-sanctum: patina green
|
|
303
|
+
if (mode == 8) return vec3(1.0, 0.7, 0.2); // gothic-rose: gilded gold
|
|
304
|
+
return vec3(0.2, 1.0, 0.6);
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
// Get copper/trace color for palette mode (subdued)
|
|
308
|
+
vec3 paletteCopper(int mode) {
|
|
309
|
+
if (mode == 0) return vec3(0.06, 0.15, 0.12); // glia-cyan: dark teal
|
|
310
|
+
if (mode == 1) return vec3(0.12, 0.06, 0.18); // orchid: dark purple
|
|
311
|
+
if (mode == 2) return vec3(0.18, 0.12, 0.04); // amber: dark gold
|
|
312
|
+
if (mode == 3) return vec3(0.06, 0.12, 0.06); // mono: dark green
|
|
313
|
+
if (mode == 4) return vec3(0.08, 0.12, 0.18); // ice: dark blue
|
|
314
|
+
// Techno-Gothic copper/trace colors
|
|
315
|
+
if (mode == 5) return vec3(0.15, 0.08, 0.22); // gothic-cathedral: ecclesiastical purple
|
|
316
|
+
if (mode == 6) return vec3(0.18, 0.04, 0.06); // gothic-void: dried blood
|
|
317
|
+
if (mode == 7) return vec3(0.10, 0.14, 0.08); // gothic-sanctum: oxidized bronze
|
|
318
|
+
if (mode == 8) return vec3(0.20, 0.08, 0.10); // gothic-rose: aged crimson
|
|
319
|
+
return vec3(0.08, 0.15, 0.10);
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
// ============================================================================
|
|
323
|
+
// Iridescent Interference (Thin-Film Spectral Shimmer)
|
|
324
|
+
// ============================================================================
|
|
325
|
+
|
|
326
|
+
// Spectral color from phase (cheap cosine-based rainbow)
|
|
327
|
+
vec3 spectral(float t) {
|
|
328
|
+
// Phase-offset cosines for RGB
|
|
329
|
+
vec3 a = vec3(0.5, 0.5, 0.5);
|
|
330
|
+
vec3 b = vec3(0.5, 0.5, 0.5);
|
|
331
|
+
vec3 c = vec3(1.0, 1.0, 1.0);
|
|
332
|
+
vec3 d = vec3(0.0, 0.33, 0.67); // Phase offsets for rainbow
|
|
333
|
+
return a + b * cos(6.28318 * (c * t + d));
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
// Compute iridescence for a surface point
|
|
337
|
+
vec3 iridescence(vec2 uv, float time, float scale, float strength) {
|
|
338
|
+
// Phase based on UV position + time + noise for organic feel
|
|
339
|
+
float phase = dot(uv, vec2(0.7, 0.3)) * scale + time * 0.06;
|
|
340
|
+
phase += noise(uv * 12.0) * 0.3;
|
|
341
|
+
|
|
342
|
+
vec3 spec = spectral(phase);
|
|
343
|
+
// Return as deviation from neutral (centered around 0.5)
|
|
344
|
+
return (spec - 0.5) * strength;
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
// ============================================================================
|
|
348
|
+
// Atmosphere (Filmic Tonemap + Grain + CRT)
|
|
349
|
+
// ============================================================================
|
|
350
|
+
|
|
351
|
+
// ACES-ish filmic tonemap approximation
|
|
352
|
+
vec3 filmicTonemap(vec3 x) {
|
|
353
|
+
float a = 2.51;
|
|
354
|
+
float b = 0.03;
|
|
355
|
+
float c = 2.43;
|
|
356
|
+
float d = 0.59;
|
|
357
|
+
float e = 0.14;
|
|
358
|
+
return clamp((x * (a * x + b)) / (x * (c * x + d) + e), 0.0, 1.0);
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
// Film grain (stable, not flickery)
|
|
362
|
+
float filmGrain(vec2 uv, vec2 resolution, float time) {
|
|
363
|
+
vec2 px = uv * resolution;
|
|
364
|
+
// Use floor to get per-pixel noise, add time for subtle animation
|
|
365
|
+
float grain = hash(floor(px * 0.5) + floor(time * 30.0));
|
|
366
|
+
return grain - 0.5; // Center around 0
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
// CRT scanline + aperture grille effect
|
|
370
|
+
float crtEffect(vec2 uv, float time, float strength) {
|
|
371
|
+
// Scanlines (horizontal)
|
|
372
|
+
float scanline = sin(uv.y * 900.0 + time * 1.5) * 0.5 + 0.5;
|
|
373
|
+
scanline = pow(scanline, 1.5) * 0.15;
|
|
374
|
+
|
|
375
|
+
// Aperture grille (vertical RGB stripes, very subtle)
|
|
376
|
+
float grille = sin(uv.x * 1400.0) * 0.5 + 0.5;
|
|
377
|
+
grille = pow(grille, 2.0) * 0.08;
|
|
378
|
+
|
|
379
|
+
// Combine with vignette falloff (stronger at edges)
|
|
380
|
+
vec2 vigUv = uv * 2.0 - 1.0;
|
|
381
|
+
float vigDist = length(vigUv);
|
|
382
|
+
float edgeFalloff = smoothstep(0.3, 1.2, vigDist);
|
|
383
|
+
|
|
384
|
+
return (scanline + grille) * strength * (0.3 + edgeFalloff * 0.7);
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
// ============================================================================
|
|
388
|
+
// PCB Trace SDFs
|
|
389
|
+
// ============================================================================
|
|
390
|
+
|
|
391
|
+
// Manhattan distance grid
|
|
392
|
+
float manhattanGrid(vec2 uv, float spacing) {
|
|
393
|
+
vec2 grid = abs(fract(uv * spacing) - 0.5);
|
|
394
|
+
float manhattan = min(grid.x, grid.y);
|
|
395
|
+
return manhattan;
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
// Horizontal trace
|
|
399
|
+
float hTrace(vec2 uv, float y, float width) {
|
|
400
|
+
return abs(uv.y - y) - width * 0.5;
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
// Vertical trace
|
|
404
|
+
float vTrace(vec2 uv, float x, float width) {
|
|
405
|
+
return abs(uv.x - x) - width * 0.5;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
// Via (circular pad)
|
|
409
|
+
float via(vec2 uv, vec2 center, float radius) {
|
|
410
|
+
return length(uv - center) - radius;
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
// Combined trace network (procedural)
|
|
414
|
+
float traceNetwork(vec2 uv, float scale) {
|
|
415
|
+
uv *= scale;
|
|
416
|
+
|
|
417
|
+
// Main grid lines
|
|
418
|
+
float gridSpacing = 0.2;
|
|
419
|
+
float traceWidth = 0.01;
|
|
420
|
+
|
|
421
|
+
vec2 gridUv = mod(uv, gridSpacing) - gridSpacing * 0.5;
|
|
422
|
+
float hLine = abs(gridUv.y) - traceWidth;
|
|
423
|
+
float vLine = abs(gridUv.x) - traceWidth;
|
|
424
|
+
|
|
425
|
+
// Create Manhattan-style traces with some randomization
|
|
426
|
+
float h1 = hTrace(uv, 0.1, traceWidth);
|
|
427
|
+
float h2 = hTrace(uv, 0.3, traceWidth * 0.8);
|
|
428
|
+
float h3 = hTrace(uv, 0.5, traceWidth);
|
|
429
|
+
float h4 = hTrace(uv, 0.7, traceWidth * 0.8);
|
|
430
|
+
float h5 = hTrace(uv, 0.9, traceWidth);
|
|
431
|
+
|
|
432
|
+
float v1 = vTrace(uv, 0.15, traceWidth);
|
|
433
|
+
float v2 = vTrace(uv, 0.35, traceWidth * 0.8);
|
|
434
|
+
float v3 = vTrace(uv, 0.55, traceWidth);
|
|
435
|
+
float v4 = vTrace(uv, 0.75, traceWidth * 0.8);
|
|
436
|
+
float v5 = vTrace(uv, 0.95, traceWidth);
|
|
437
|
+
|
|
438
|
+
float traces = min(min(min(min(h1, h2), min(h3, h4)), h5),
|
|
439
|
+
min(min(min(v1, v2), min(v3, v4)), v5));
|
|
440
|
+
|
|
441
|
+
return min(traces, min(hLine, vLine));
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
// ============================================================================
|
|
445
|
+
// Main Shader
|
|
446
|
+
// ============================================================================
|
|
447
|
+
|
|
448
|
+
void main() {
|
|
449
|
+
vec2 uv = vUv;
|
|
450
|
+
|
|
451
|
+
// Base: use palette-defined substrate color (near-black, cinematic)
|
|
452
|
+
vec3 baseColor = paletteBase(uPaletteMode);
|
|
453
|
+
vec3 color = baseColor;
|
|
454
|
+
|
|
455
|
+
// ========================================================================
|
|
456
|
+
// Sample Etch Trail Early (for UV distortion + reveal boost)
|
|
457
|
+
// ========================================================================
|
|
458
|
+
|
|
459
|
+
float trailIntensity = 0.0;
|
|
460
|
+
if (uTrailEnabled > 0.5) {
|
|
461
|
+
vec4 trailSample = texture2D(uTrailTex, uv);
|
|
462
|
+
trailIntensity = trailSample.r;
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
// ========================================================================
|
|
466
|
+
// UV Distortion in Etched Areas (makes it feel engraved)
|
|
467
|
+
// ========================================================================
|
|
468
|
+
|
|
469
|
+
vec2 distortedUv = uv;
|
|
470
|
+
if (trailIntensity > 0.01) {
|
|
471
|
+
// Add subtle UV distortion based on trail + noise
|
|
472
|
+
vec2 distortNoise = curlNoise(uv * 30.0 + uTime * 0.2);
|
|
473
|
+
distortedUv += distortNoise * trailIntensity * uEtchDistortion;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
// ========================================================================
|
|
477
|
+
// Compute Reveal Mask (etch/anchor proximity increases lattice visibility)
|
|
478
|
+
// Only respond to ETCH (click+drag), not probe hover. uHover.z = 1 for etch.
|
|
479
|
+
// ========================================================================
|
|
480
|
+
|
|
481
|
+
// Only compute reveal from cursor if in etch mode (uHover.z > 0.5)
|
|
482
|
+
float isEtchMode = step(0.5, uHover.z);
|
|
483
|
+
float reveal = computeReveal(uv, uHover.xy, uHover.w * isEtchMode, uProbeRadius, uRevealStrength);
|
|
484
|
+
|
|
485
|
+
// Anchors also reveal the lattice
|
|
486
|
+
for (int i = 0; i < 8; i++) {
|
|
487
|
+
if (i >= uAnchorCount) break;
|
|
488
|
+
float anchorDist = length(uv - uAnchors[i].xy);
|
|
489
|
+
reveal = max(reveal, smoothstep(0.15, 0.02, anchorDist) * uAnchors[i].z * uRevealStrength);
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
// Etched areas (trails) are always revealed
|
|
493
|
+
reveal = max(reveal, trailIntensity * 1.5);
|
|
494
|
+
reveal = clamp(reveal, 0.0, 1.0);
|
|
495
|
+
|
|
496
|
+
// ========================================================================
|
|
497
|
+
// Phase Lens Setup (if enabled) - only active during ETCH, not hover
|
|
498
|
+
// ========================================================================
|
|
499
|
+
|
|
500
|
+
float lensMask = 0.0;
|
|
501
|
+
float lensRim = 0.0;
|
|
502
|
+
vec2 lensDistortedUv = distortedUv;
|
|
503
|
+
|
|
504
|
+
// Lens only activates in etch mode (click+drag), not probe hover
|
|
505
|
+
if (uLensEnabled > 0.5 && uHover.w > 0.5 && uHover.z > 0.5) {
|
|
506
|
+
vec2 lensCenter = uLens.xy;
|
|
507
|
+
float lensRadius = uLens.z;
|
|
508
|
+
float lensMag = uLens.w;
|
|
509
|
+
|
|
510
|
+
lensMask = computeLensMask(distortedUv, lensCenter, lensRadius);
|
|
511
|
+
lensRim = computeLensRim(distortedUv, lensCenter, lensRadius, uLensVelocity);
|
|
512
|
+
lensDistortedUv = computeLensDistortedUv(distortedUv, lensCenter, lensRadius, lensMag);
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
// ========================================================================
|
|
516
|
+
// Ultra-Fine Micro-Lattice Layer (THE STAR)
|
|
517
|
+
// ========================================================================
|
|
518
|
+
|
|
519
|
+
// Apply domain warping for organic, alive feel
|
|
520
|
+
vec2 warpedUv = warpUV(distortedUv, uMicroWarp, uTime);
|
|
521
|
+
vec2 warpedLensUv = warpUV(lensDistortedUv, uMicroWarp, uTime);
|
|
522
|
+
|
|
523
|
+
// Two-frequency micro-grid using selected lattice mode
|
|
524
|
+
float microGrid1 = latticeLines(warpedUv, uMicroGrid1, 0.02, uLatticeMode);
|
|
525
|
+
float microGrid2 = latticeLines(warpedUv, uMicroGrid2, 0.015, uLatticeMode);
|
|
526
|
+
|
|
527
|
+
// Lens-magnified versions (higher detail inside lens)
|
|
528
|
+
float microGrid1Lens = latticeLines(warpedLensUv, uMicroGrid1 * 1.3, 0.018, uLatticeMode);
|
|
529
|
+
float microGrid2Lens = latticeLines(warpedLensUv, uMicroGrid2 * 1.2, 0.012, uLatticeMode);
|
|
530
|
+
|
|
531
|
+
// Blend between normal and lens-magnified based on lens mask
|
|
532
|
+
float effectiveMicroGrid1 = mix(microGrid1, microGrid1Lens, lensMask);
|
|
533
|
+
float effectiveMicroGrid2 = mix(microGrid2, microGrid2Lens, lensMask);
|
|
534
|
+
|
|
535
|
+
// Combine grids with different weights
|
|
536
|
+
float microLattice = max(effectiveMicroGrid1 * 0.7, effectiveMicroGrid2 * 0.4);
|
|
537
|
+
|
|
538
|
+
// Lens boosts reveal effect (magnification = amplified visibility)
|
|
539
|
+
float lensRevealBoost = lensMask * 0.6;
|
|
540
|
+
float effectiveReveal = min(reveal + lensRevealBoost, 1.0);
|
|
541
|
+
|
|
542
|
+
// Base visibility can be set via uBaseVisibility; reveal increases it to full
|
|
543
|
+
// COLOR SCARCITY: Use baseVisibility for always-on backgrounds, low for reveal-based UX
|
|
544
|
+
float latticeVis = uMicroGridStrength * (uBaseVisibility + effectiveReveal * (1.0 - uBaseVisibility));
|
|
545
|
+
|
|
546
|
+
// Lattice color: use palette system
|
|
547
|
+
// IMPORTANT: Use max of baseVisibility and reveal for color lookup so lattice is visible
|
|
548
|
+
// without hover when baseVisibility is high (for always-on backgrounds)
|
|
549
|
+
float latticeColorMix = max(uBaseVisibility, effectiveReveal);
|
|
550
|
+
vec3 baseLatticeColor = paletteLattice(uPaletteMode, latticeColorMix);
|
|
551
|
+
|
|
552
|
+
// Inside lens: boost saturation + add iridescence
|
|
553
|
+
vec3 lensLatticeColor = baseLatticeColor * 1.3;
|
|
554
|
+
vec3 iridescentShift = iridescence(warpedLensUv, uTime, uIridescenceScale, uIridescenceStrength);
|
|
555
|
+
lensLatticeColor += iridescentShift * lensMask * 0.4;
|
|
556
|
+
|
|
557
|
+
vec3 latticeColor = mix(baseLatticeColor, lensLatticeColor, lensMask);
|
|
558
|
+
|
|
559
|
+
// Base energy from baseVisibility + boost from reveal/lens
|
|
560
|
+
float latticeEnergy = max(uBaseVisibility * 0.5, max(effectiveReveal, lensMask * 0.6));
|
|
561
|
+
// When baseVisibility is high, don't penalize - scale from 0.7 to 1.0
|
|
562
|
+
float baseMult = 0.7 + uBaseVisibility * 0.3;
|
|
563
|
+
color += latticeColor * microLattice * latticeVis * (baseMult + latticeEnergy * 0.3);
|
|
564
|
+
|
|
565
|
+
// Energy nodes at grid intersections - DISABLED for cleaner look
|
|
566
|
+
// (uncomment to re-enable pulsing intersection dots)
|
|
567
|
+
|
|
568
|
+
// ========================================================================
|
|
569
|
+
// Phase Lens Rim Effect (iridescent + chromatic fringe)
|
|
570
|
+
// ========================================================================
|
|
571
|
+
|
|
572
|
+
if (lensRim > 0.01) {
|
|
573
|
+
// Get accent color from palette
|
|
574
|
+
vec3 accentColor = paletteAccent(uPaletteMode);
|
|
575
|
+
|
|
576
|
+
// Chromatic aberration on rim
|
|
577
|
+
float rimOffset = lensRim * uLensChromatic;
|
|
578
|
+
|
|
579
|
+
// Iridescent shimmer on rim (the wow factor)
|
|
580
|
+
vec3 rimIridescence = iridescence(distortedUv, uTime * 1.5, uIridescenceScale * 2.0, 1.0);
|
|
581
|
+
|
|
582
|
+
// Base rim color from accent
|
|
583
|
+
vec3 rimColor = accentColor * 0.6;
|
|
584
|
+
|
|
585
|
+
// Add chromatic split
|
|
586
|
+
rimColor.r += rimOffset * 0.2;
|
|
587
|
+
rimColor.b -= rimOffset * 0.15;
|
|
588
|
+
|
|
589
|
+
// Add iridescence to rim
|
|
590
|
+
rimColor += rimIridescence * uIridescenceStrength * 0.5;
|
|
591
|
+
|
|
592
|
+
// Velocity adds warmth to rim
|
|
593
|
+
rimColor = mix(rimColor, accentColor * vec3(1.2, 0.8, 0.6), uLensVelocity * 0.3);
|
|
594
|
+
|
|
595
|
+
color += rimColor * lensRim * 0.3 * uAccentIntensity;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
// ========================================================================
|
|
599
|
+
// PCB Traces Layer (SUBDUED - rails under the lattice, not the main show)
|
|
600
|
+
// ========================================================================
|
|
601
|
+
|
|
602
|
+
float traceScale = 5.0;
|
|
603
|
+
float traceSdf = traceNetwork(distortedUv, traceScale);
|
|
604
|
+
float traceEdge = smoothstep(0.002, -0.002, traceSdf);
|
|
605
|
+
|
|
606
|
+
// Copper color from palette (subdued to match theme)
|
|
607
|
+
vec3 copperColor = paletteCopper(uPaletteMode) * (0.8 + 0.2 * noise(uv * 20.0));
|
|
608
|
+
|
|
609
|
+
// Traces are very faint - controlled by copperStrength
|
|
610
|
+
// COLOR SCARCITY: Traces are just "rails", not the star
|
|
611
|
+
float traceVis = (0.05 + reveal * 0.3) * uCopperStrength;
|
|
612
|
+
color += copperColor * traceEdge * traceVis;
|
|
613
|
+
|
|
614
|
+
// ========================================================================
|
|
615
|
+
// Trail Layer (Etched Inscription - enhanced with char edge + velocity)
|
|
616
|
+
// ========================================================================
|
|
617
|
+
|
|
618
|
+
// Track etch mask for color scarcity
|
|
619
|
+
float etchMask = 0.0;
|
|
620
|
+
|
|
621
|
+
if (uTrailEnabled > 0.5 && trailIntensity > 0.01) {
|
|
622
|
+
// Sharpened edge for crisp inscription look
|
|
623
|
+
float sharpTrail = smoothstep(0.05, 0.3, trailIntensity);
|
|
624
|
+
etchMask = sharpTrail; // Store for accent calculation
|
|
625
|
+
|
|
626
|
+
// === Char Edge Detection (burned/charred rim around inscription) ===
|
|
627
|
+
vec2 texelSize = vec2(1.0 / 512.0);
|
|
628
|
+
float trailN = texture2D(uTrailTex, uv + vec2(0.0, texelSize.y)).r;
|
|
629
|
+
float trailS = texture2D(uTrailTex, uv - vec2(0.0, texelSize.y)).r;
|
|
630
|
+
float trailE = texture2D(uTrailTex, uv + vec2(texelSize.x, 0.0)).r;
|
|
631
|
+
float trailW = texture2D(uTrailTex, uv - vec2(texelSize.x, 0.0)).r;
|
|
632
|
+
|
|
633
|
+
vec2 trailGrad = vec2(trailE - trailW, trailN - trailS);
|
|
634
|
+
float edgeStrength = clamp(length(trailGrad) * 8.0, 0.0, 1.0);
|
|
635
|
+
|
|
636
|
+
// Char color: palette-aware burned edge
|
|
637
|
+
vec3 charColor = paletteCopper(uPaletteMode) * 0.5;
|
|
638
|
+
|
|
639
|
+
// Core glow: use palette accent for inscription
|
|
640
|
+
float velocityDim = 1.0 - uEtchVelocity * 0.2;
|
|
641
|
+
vec3 accentColor = paletteAccent(uPaletteMode);
|
|
642
|
+
vec3 coreColor = accentColor * velocityDim;
|
|
643
|
+
|
|
644
|
+
// Add subtle iridescence to inscription core
|
|
645
|
+
vec3 etchIridescence = iridescence(uv, uTime, uIridescenceScale * 0.5, uIridescenceStrength);
|
|
646
|
+
coreColor += etchIridescence * 0.2;
|
|
647
|
+
|
|
648
|
+
color += coreColor * sharpTrail * 0.5 * uAccentIntensity;
|
|
649
|
+
|
|
650
|
+
// Char edge: subtract warm dark at edges
|
|
651
|
+
color = mix(color, charColor, edgeStrength * sharpTrail * 0.35);
|
|
652
|
+
|
|
653
|
+
// Soft bloom edge using palette lattice color
|
|
654
|
+
float softTrail = smoothstep(0.0, 0.15, trailIntensity);
|
|
655
|
+
vec3 bloomColor = paletteLattice(uPaletteMode, 0.5);
|
|
656
|
+
float bloomFactor = 1.0 - uEtchVelocity * 0.4;
|
|
657
|
+
color += bloomColor * softTrail * 0.25 * bloomFactor;
|
|
658
|
+
|
|
659
|
+
// Increase micro-lattice visibility in etched areas
|
|
660
|
+
float latticeAcceptance = sharpTrail * (1.0 + edgeStrength * 0.3);
|
|
661
|
+
color += latticeColor * microLattice * latticeAcceptance * 0.35;
|
|
662
|
+
|
|
663
|
+
// Subtle sparkle using palette accent
|
|
664
|
+
float sparkleGate = sharpTrail * (1.0 - edgeStrength * 0.5);
|
|
665
|
+
float sparkle = noise(uv * 500.0 + uTime * 5.0);
|
|
666
|
+
color += accentColor * 0.3 * sparkle * sparkleGate * 0.12;
|
|
667
|
+
|
|
668
|
+
// Velocity streaking
|
|
669
|
+
if (uEtchVelocity > 0.3) {
|
|
670
|
+
float streak = noise(uv * 200.0 + uTime * 8.0) * uEtchVelocity;
|
|
671
|
+
color += accentColor * 0.4 * streak * sharpTrail * 0.08;
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
// ========================================================================
|
|
676
|
+
// Hover Probe Effect (enhanced with Phase Lens integration)
|
|
677
|
+
// ========================================================================
|
|
678
|
+
|
|
679
|
+
if (uHover.w > 0.5) {
|
|
680
|
+
vec2 hoverUv = uHover.xy;
|
|
681
|
+
float isEtch = uHover.z;
|
|
682
|
+
float hoverDist = length(uv - hoverUv);
|
|
683
|
+
|
|
684
|
+
// Routing highlight zone
|
|
685
|
+
float highlightZone = smoothstep(uProbeRadius * 2.0, uProbeRadius * 0.5, hoverDist);
|
|
686
|
+
|
|
687
|
+
// Highlight nearby traces using palette
|
|
688
|
+
float nearbyTraces = traceEdge * highlightZone;
|
|
689
|
+
vec3 accentColor = paletteAccent(uPaletteMode);
|
|
690
|
+
vec3 highlightColor = isEtch > 0.5
|
|
691
|
+
? accentColor * vec3(1.2, 0.6, 0.3) // Warm accent for etch
|
|
692
|
+
: accentColor; // Cool accent for probe
|
|
693
|
+
|
|
694
|
+
color += highlightColor * nearbyTraces * 0.5 * uAccentIntensity;
|
|
695
|
+
|
|
696
|
+
// If lens is enabled, the lens rim acts as indicator (no square needed)
|
|
697
|
+
if (uLensEnabled < 0.5) {
|
|
698
|
+
float indicator = smoothstep(uProbeRadius * 0.4, uProbeRadius * 0.3, hoverDist);
|
|
699
|
+
indicator *= smoothstep(uProbeRadius * 0.2, uProbeRadius * 0.3, hoverDist);
|
|
700
|
+
color += highlightColor * indicator * 0.35;
|
|
701
|
+
}
|
|
702
|
+
|
|
703
|
+
// Data packet flow animation using lattice color
|
|
704
|
+
float flow = sin((hoverDist - uTime * 2.0) * 50.0) * 0.5 + 0.5;
|
|
705
|
+
float flowZone = smoothstep(uProbeRadius * 1.5, uProbeRadius * 0.3, hoverDist);
|
|
706
|
+
color += paletteLattice(uPaletteMode, 0.8) * flow * flowZone * nearbyTraces * 0.25;
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
// ========================================================================
|
|
710
|
+
// Impulse Rings (Square Engineering Bursts)
|
|
711
|
+
// ========================================================================
|
|
712
|
+
|
|
713
|
+
for (int i = 0; i < 24; i++) {
|
|
714
|
+
if (i >= uImpulseCount) break;
|
|
715
|
+
|
|
716
|
+
vec4 imp = uImpulses[i];
|
|
717
|
+
float age = uImpulsesAge[i];
|
|
718
|
+
|
|
719
|
+
if (age >= 1.0) continue;
|
|
720
|
+
|
|
721
|
+
vec2 impUv = imp.xy;
|
|
722
|
+
float baseRadius = imp.z;
|
|
723
|
+
float amp = imp.w;
|
|
724
|
+
|
|
725
|
+
// Square expanding ring (Manhattan distance)
|
|
726
|
+
vec2 toImp = abs(uv - impUv);
|
|
727
|
+
float sqDist = max(toImp.x, toImp.y);
|
|
728
|
+
float expandedRadius = baseRadius + age * 0.3;
|
|
729
|
+
|
|
730
|
+
// Ring with thickness
|
|
731
|
+
float ringThickness = 0.01 + (1.0 - age) * 0.015;
|
|
732
|
+
float ringOuter = smoothstep(expandedRadius + ringThickness, expandedRadius, sqDist);
|
|
733
|
+
float ringInner = smoothstep(expandedRadius - ringThickness, expandedRadius, sqDist);
|
|
734
|
+
float squareRing = ringOuter * ringInner;
|
|
735
|
+
|
|
736
|
+
// Fade with age
|
|
737
|
+
float fade = (1.0 - age * age) * amp;
|
|
738
|
+
|
|
739
|
+
// Burst color from palette accent with age transition
|
|
740
|
+
vec3 accentColor = paletteAccent(uPaletteMode);
|
|
741
|
+
vec3 burstColor = mix(
|
|
742
|
+
accentColor,
|
|
743
|
+
accentColor * vec3(1.3, 1.0, 0.6), // Warmer as it fades
|
|
744
|
+
age
|
|
745
|
+
);
|
|
746
|
+
|
|
747
|
+
color += burstColor * squareRing * fade * 0.7 * uAccentIntensity;
|
|
748
|
+
|
|
749
|
+
// Data traveling along traces from burst
|
|
750
|
+
float impDist = length(uv - impUv);
|
|
751
|
+
float traceActivation = smoothstep(0.3, 0.0, abs(traceSdf)) *
|
|
752
|
+
smoothstep(expandedRadius * 1.5, expandedRadius * 0.5, impDist) *
|
|
753
|
+
(1.0 - age);
|
|
754
|
+
color += paletteLattice(uPaletteMode, 0.7) * traceActivation * fade * 0.25;
|
|
755
|
+
}
|
|
756
|
+
|
|
757
|
+
// ========================================================================
|
|
758
|
+
// Anchors (Vias/Pins)
|
|
759
|
+
// ========================================================================
|
|
760
|
+
|
|
761
|
+
for (int i = 0; i < 8; i++) {
|
|
762
|
+
if (i >= uAnchorCount) break;
|
|
763
|
+
|
|
764
|
+
vec4 anchor = uAnchors[i];
|
|
765
|
+
vec2 anchorUv = anchor.xy;
|
|
766
|
+
float strength = anchor.z;
|
|
767
|
+
float phase = anchor.w;
|
|
768
|
+
|
|
769
|
+
float anchorDist = length(uv - anchorUv);
|
|
770
|
+
|
|
771
|
+
// Via pad (circular)
|
|
772
|
+
float viaPad = smoothstep(0.025, 0.02, anchorDist);
|
|
773
|
+
|
|
774
|
+
// Via hole (inner dark circle)
|
|
775
|
+
float viaHole = smoothstep(0.008, 0.012, anchorDist);
|
|
776
|
+
|
|
777
|
+
// Ring around via
|
|
778
|
+
float viaRing = smoothstep(0.03, 0.028, anchorDist) * smoothstep(0.025, 0.028, anchorDist);
|
|
779
|
+
|
|
780
|
+
// Pulsing glow
|
|
781
|
+
float pulse = 0.6 + 0.4 * sin(uTime * 2.0 + phase);
|
|
782
|
+
|
|
783
|
+
// Via color using palette
|
|
784
|
+
vec3 padColor = paletteCopper(uPaletteMode) * 2.0;
|
|
785
|
+
vec3 ringColor = paletteAccent(uPaletteMode);
|
|
786
|
+
|
|
787
|
+
color += padColor * viaPad * viaHole * strength * 0.7 * uCopperStrength;
|
|
788
|
+
color += ringColor * viaRing * strength * pulse * uAccentIntensity;
|
|
789
|
+
|
|
790
|
+
// Emanating trace activation
|
|
791
|
+
float emanate = smoothstep(0.15, 0.03, anchorDist) * traceEdge * strength;
|
|
792
|
+
float emanatePulse = sin(anchorDist * 50.0 - uTime * 3.0 + phase) * 0.5 + 0.5;
|
|
793
|
+
color += ringColor * emanate * emanatePulse * 0.25;
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
// ========================================================================
|
|
797
|
+
// Vector Field Visualization (Subtle, palette-aware)
|
|
798
|
+
// ========================================================================
|
|
799
|
+
|
|
800
|
+
vec2 flowDir = curlNoise(uv * 3.0 + uTime * 0.1);
|
|
801
|
+
float flowMag = length(flowDir);
|
|
802
|
+
|
|
803
|
+
// Subtle directional lines using palette lattice color
|
|
804
|
+
vec2 lineUv = uv + flowDir * 0.01;
|
|
805
|
+
float flowLine = abs(fract(dot(lineUv, normalize(flowDir + 0.001)) * 20.0) - 0.5);
|
|
806
|
+
float flowVis = smoothstep(0.1, 0.05, flowLine) * flowMag * 0.06;
|
|
807
|
+
color += paletteLattice(uPaletteMode, 0.2) * flowVis;
|
|
808
|
+
|
|
809
|
+
// ========================================================================
|
|
810
|
+
// Atmosphere Pass (Exposure + Filmic + Grain + CRT + Vignette)
|
|
811
|
+
// ========================================================================
|
|
812
|
+
|
|
813
|
+
// Apply exposure
|
|
814
|
+
color *= uExposure;
|
|
815
|
+
|
|
816
|
+
// Filmic tonemapping (blend between linear and filmic)
|
|
817
|
+
vec3 filmicColor = filmicTonemap(color);
|
|
818
|
+
color = mix(color, filmicColor, uFilmic);
|
|
819
|
+
|
|
820
|
+
// Film grain (subtle, stable)
|
|
821
|
+
if (uGrainStrength > 0.001) {
|
|
822
|
+
float grain = filmGrain(uv, uResolution, uTime);
|
|
823
|
+
color += grain * uGrainStrength;
|
|
824
|
+
}
|
|
825
|
+
|
|
826
|
+
// CRT effect (scanlines + aperture grille, gated by vignette)
|
|
827
|
+
if (uCrtStrength > 0.01) {
|
|
828
|
+
float crt = crtEffect(uv, uTime, uCrtStrength);
|
|
829
|
+
color -= crt * 0.1;
|
|
830
|
+
}
|
|
831
|
+
|
|
832
|
+
// Vignette (slightly stronger for cinematic focus)
|
|
833
|
+
vec2 vignetteUv = uv * 2.0 - 1.0;
|
|
834
|
+
float vignetteDist = length(vignetteUv);
|
|
835
|
+
float vignette = 1.0 - vignetteDist * vignetteDist * 0.2;
|
|
836
|
+
color *= vignette;
|
|
837
|
+
|
|
838
|
+
// Clamp to prevent negative values from grain/CRT
|
|
839
|
+
color = max(color, vec3(0.0));
|
|
840
|
+
|
|
841
|
+
gl_FragColor = vec4(color, 1.0);
|
|
842
|
+
}
|
|
843
|
+
`;
|
|
844
|
+
// -----------------------------------------------------------------------------
|
|
845
|
+
// Arrow Instance Shader
|
|
846
|
+
// -----------------------------------------------------------------------------
|
|
847
|
+
export const PCB_ARROWS_VERTEX_SHADER = /* glsl */ `
|
|
848
|
+
uniform float uTime;
|
|
849
|
+
uniform vec4 uHover;
|
|
850
|
+
uniform vec4 uAnchors[8];
|
|
851
|
+
uniform int uAnchorCount;
|
|
852
|
+
uniform float uProbeRadius;
|
|
853
|
+
// FIX: Add plane size uniform for correct UV normalization
|
|
854
|
+
uniform vec2 uPlaneSize;
|
|
855
|
+
// FIX: Add max point size uniform to prevent blowout
|
|
856
|
+
uniform float uMaxPointSize;
|
|
857
|
+
|
|
858
|
+
attribute float aPhase;
|
|
859
|
+
attribute float aSize;
|
|
860
|
+
|
|
861
|
+
varying float vBrightness;
|
|
862
|
+
varying float vPhase;
|
|
863
|
+
varying vec2 vArrowDir;
|
|
864
|
+
|
|
865
|
+
// Curl noise
|
|
866
|
+
float hash(vec2 p) {
|
|
867
|
+
return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453);
|
|
868
|
+
}
|
|
869
|
+
|
|
870
|
+
float noise(vec2 p) {
|
|
871
|
+
vec2 i = floor(p);
|
|
872
|
+
vec2 f = fract(p);
|
|
873
|
+
f = f * f * (3.0 - 2.0 * f);
|
|
874
|
+
|
|
875
|
+
float a = hash(i);
|
|
876
|
+
float b = hash(i + vec2(1.0, 0.0));
|
|
877
|
+
float c = hash(i + vec2(0.0, 1.0));
|
|
878
|
+
float d = hash(i + vec2(1.0, 1.0));
|
|
879
|
+
|
|
880
|
+
return mix(mix(a, b, f.x), mix(c, d, f.x), f.y);
|
|
881
|
+
}
|
|
882
|
+
|
|
883
|
+
vec2 curlNoise(vec2 p) {
|
|
884
|
+
float eps = 0.01;
|
|
885
|
+
float n1 = noise(p + vec2(eps, 0.0));
|
|
886
|
+
float n2 = noise(p - vec2(eps, 0.0));
|
|
887
|
+
float n3 = noise(p + vec2(0.0, eps));
|
|
888
|
+
float n4 = noise(p - vec2(0.0, eps));
|
|
889
|
+
|
|
890
|
+
return vec2(n3 - n4, n1 - n2) / (2.0 * eps);
|
|
891
|
+
}
|
|
892
|
+
|
|
893
|
+
void main() {
|
|
894
|
+
vec3 pos = position;
|
|
895
|
+
|
|
896
|
+
// FIX: Correct UV normalization - plane positions are in world coords (e.g. -10 to +10)
|
|
897
|
+
// Convert to 0-1 UV space by dividing by plane size
|
|
898
|
+
vec2 posUv = (pos.xy / uPlaneSize) + 0.5;
|
|
899
|
+
|
|
900
|
+
// Get flow direction from curl noise
|
|
901
|
+
vec2 flowDir = curlNoise(posUv * 3.0 + uTime * 0.1);
|
|
902
|
+
|
|
903
|
+
// Modify flow toward hover point (subtle)
|
|
904
|
+
if (uHover.w > 0.5) {
|
|
905
|
+
vec2 toHover = uHover.xy - posUv;
|
|
906
|
+
float hoverDist = length(toHover);
|
|
907
|
+
// FIX: Reduce attraction strength to prevent warping entire field
|
|
908
|
+
float attraction = smoothstep(uProbeRadius * 3.0, 0.0, hoverDist);
|
|
909
|
+
flowDir = mix(flowDir, normalize(toHover + 0.001), attraction * 0.3);
|
|
910
|
+
}
|
|
911
|
+
|
|
912
|
+
// Modify flow toward anchors (subtle)
|
|
913
|
+
for (int i = 0; i < 8; i++) {
|
|
914
|
+
if (i >= uAnchorCount) break;
|
|
915
|
+
vec2 anchorUv = uAnchors[i].xy;
|
|
916
|
+
float strength = uAnchors[i].z;
|
|
917
|
+
vec2 toAnchor = anchorUv - posUv;
|
|
918
|
+
float anchorDist = length(toAnchor);
|
|
919
|
+
float pull = smoothstep(0.2, 0.0, anchorDist) * strength;
|
|
920
|
+
flowDir = mix(flowDir, normalize(toAnchor + 0.001), pull * 0.3);
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
vArrowDir = normalize(flowDir + 0.001);
|
|
924
|
+
|
|
925
|
+
// Base brightness (reduced to prevent blowout)
|
|
926
|
+
float brightness = 0.15 + length(flowDir) * 1.0;
|
|
927
|
+
|
|
928
|
+
// Hover boost (reduced)
|
|
929
|
+
if (uHover.w > 0.5) {
|
|
930
|
+
float hoverDist = length(posUv - uHover.xy);
|
|
931
|
+
float hoverBoost = smoothstep(uProbeRadius * 2.0, uProbeRadius * 0.5, hoverDist);
|
|
932
|
+
brightness += hoverBoost * 0.3;
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
vBrightness = clamp(brightness, 0.0, 1.0);
|
|
936
|
+
vPhase = aPhase;
|
|
937
|
+
|
|
938
|
+
// FIX: REMOVED the rotation that was clustering everything toward origin
|
|
939
|
+
// The old code: pos.xy = rotation * pos.xy * 0.5; was scaling positions down by 0.5
|
|
940
|
+
// This caused all points to cluster in a small area
|
|
941
|
+
// Instead, just apply a tiny jitter for animation
|
|
942
|
+
pos.xy += flowDir * sin(uTime * 2.0 + aPhase * 6.28) * 0.02;
|
|
943
|
+
|
|
944
|
+
vec4 mvPosition = modelViewMatrix * vec4(pos, 1.0);
|
|
945
|
+
gl_Position = projectionMatrix * mvPosition;
|
|
946
|
+
|
|
947
|
+
// FIX: Safer point size calculation with clamp to prevent giant points
|
|
948
|
+
float rawSize = aSize * (0.5 + brightness * 0.3) * (60.0 / -mvPosition.z);
|
|
949
|
+
gl_PointSize = clamp(rawSize, 1.0, uMaxPointSize);
|
|
950
|
+
}
|
|
951
|
+
`;
|
|
952
|
+
export const PCB_ARROWS_FRAGMENT_SHADER = /* glsl */ `
|
|
953
|
+
uniform float uTime;
|
|
954
|
+
uniform int uPaletteMode;
|
|
955
|
+
uniform float uAccentIntensity;
|
|
956
|
+
|
|
957
|
+
varying float vBrightness;
|
|
958
|
+
varying float vPhase;
|
|
959
|
+
varying vec2 vArrowDir;
|
|
960
|
+
|
|
961
|
+
// Palette-aware arrow colors (simplified versions of main shader palettes)
|
|
962
|
+
vec3 arrowColorDim(int mode) {
|
|
963
|
+
if (mode == 0) return vec3(0.03, 0.12, 0.10); // glia-cyan
|
|
964
|
+
if (mode == 1) return vec3(0.08, 0.04, 0.12); // orchid
|
|
965
|
+
if (mode == 2) return vec3(0.12, 0.08, 0.03); // amber
|
|
966
|
+
if (mode == 3) return vec3(0.04, 0.10, 0.04); // mono
|
|
967
|
+
if (mode == 4) return vec3(0.05, 0.10, 0.15); // ice
|
|
968
|
+
// Techno-Gothic arrow dims
|
|
969
|
+
if (mode == 5) return vec3(0.08, 0.03, 0.12); // gothic-cathedral
|
|
970
|
+
if (mode == 6) return vec3(0.10, 0.02, 0.03); // gothic-void
|
|
971
|
+
if (mode == 7) return vec3(0.06, 0.08, 0.05); // gothic-sanctum
|
|
972
|
+
if (mode == 8) return vec3(0.12, 0.03, 0.05); // gothic-rose
|
|
973
|
+
return vec3(0.05, 0.12, 0.10);
|
|
974
|
+
}
|
|
975
|
+
|
|
976
|
+
vec3 arrowColorBright(int mode) {
|
|
977
|
+
if (mode == 0) return vec3(0.08, 0.35, 0.30); // glia-cyan
|
|
978
|
+
if (mode == 1) return vec3(0.20, 0.15, 0.35); // orchid
|
|
979
|
+
if (mode == 2) return vec3(0.30, 0.22, 0.08); // amber
|
|
980
|
+
if (mode == 3) return vec3(0.10, 0.30, 0.12); // mono
|
|
981
|
+
if (mode == 4) return vec3(0.12, 0.28, 0.40); // ice
|
|
982
|
+
// Techno-Gothic arrow brights
|
|
983
|
+
if (mode == 5) return vec3(0.30, 0.15, 0.45); // gothic-cathedral: purple glow
|
|
984
|
+
if (mode == 6) return vec3(0.40, 0.08, 0.10); // gothic-void: blood glow
|
|
985
|
+
if (mode == 7) return vec3(0.18, 0.32, 0.22); // gothic-sanctum: verdigris
|
|
986
|
+
if (mode == 8) return vec3(0.45, 0.12, 0.18); // gothic-rose: rose glow
|
|
987
|
+
return vec3(0.10, 0.30, 0.25);
|
|
988
|
+
}
|
|
989
|
+
|
|
990
|
+
void main() {
|
|
991
|
+
vec2 center = gl_PointCoord - 0.5;
|
|
992
|
+
|
|
993
|
+
// Arrow shape (triangle pointing in flow direction)
|
|
994
|
+
float angle = atan(vArrowDir.y, vArrowDir.x);
|
|
995
|
+
mat2 rot = mat2(cos(-angle), -sin(-angle), sin(-angle), cos(-angle));
|
|
996
|
+
vec2 p = rot * center;
|
|
997
|
+
|
|
998
|
+
// Triangle SDF approximation
|
|
999
|
+
float arrow = max(abs(p.y) - (0.3 - p.x * 0.8), p.x - 0.25);
|
|
1000
|
+
|
|
1001
|
+
if (arrow > 0.0) discard;
|
|
1002
|
+
|
|
1003
|
+
float alpha = smoothstep(0.0, -0.05, arrow);
|
|
1004
|
+
|
|
1005
|
+
// Flow animation (subtle)
|
|
1006
|
+
float flow = sin(uTime * 4.0 + vPhase * 6.28) * 0.2 + 0.8;
|
|
1007
|
+
|
|
1008
|
+
// Color from palette (darker base, brighter tips)
|
|
1009
|
+
vec3 color = mix(
|
|
1010
|
+
arrowColorDim(uPaletteMode),
|
|
1011
|
+
arrowColorBright(uPaletteMode),
|
|
1012
|
+
vBrightness
|
|
1013
|
+
);
|
|
1014
|
+
|
|
1015
|
+
// Apply accent intensity
|
|
1016
|
+
color *= (0.8 + uAccentIntensity * 0.2);
|
|
1017
|
+
|
|
1018
|
+
// Reduced alpha to prevent additive blowout
|
|
1019
|
+
gl_FragColor = vec4(color, alpha * vBrightness * flow * 0.22);
|
|
1020
|
+
}
|
|
1021
|
+
`;
|
|
1022
|
+
export function createPcbUniforms() {
|
|
1023
|
+
return {
|
|
1024
|
+
uTime: { value: 0 },
|
|
1025
|
+
uResolution: { value: new THREE.Vector2(1920, 1080) },
|
|
1026
|
+
uHover: { value: new THREE.Vector4(0.5, 0.5, 0, 0) },
|
|
1027
|
+
uImpulses: {
|
|
1028
|
+
value: Array(24)
|
|
1029
|
+
.fill(null)
|
|
1030
|
+
.map(() => new THREE.Vector4(0, 0, 0, 0)),
|
|
1031
|
+
},
|
|
1032
|
+
uImpulsesAge: { value: new Float32Array(24) },
|
|
1033
|
+
uImpulseCount: { value: 0 },
|
|
1034
|
+
uAnchors: {
|
|
1035
|
+
value: Array(8)
|
|
1036
|
+
.fill(null)
|
|
1037
|
+
.map(() => new THREE.Vector4(0, 0, 0, 0)),
|
|
1038
|
+
},
|
|
1039
|
+
uAnchorCount: { value: 0 },
|
|
1040
|
+
uTrailTex: { value: null },
|
|
1041
|
+
uTrailEnabled: { value: 0 },
|
|
1042
|
+
uProbeRadius: { value: 0.08 },
|
|
1043
|
+
// FIX: New uniforms - will be set from PcbField.tsx
|
|
1044
|
+
uPlaneSize: { value: new THREE.Vector2(20, 15) },
|
|
1045
|
+
uMaxPointSize: { value: 8 },
|
|
1046
|
+
// === Ultra-Fine Lattice Uniforms ===
|
|
1047
|
+
uMicroGrid1: { value: 60 }, // Fine grid frequency
|
|
1048
|
+
uMicroGrid2: { value: 200 }, // Ultra-fine grid frequency
|
|
1049
|
+
uMicroGridStrength: { value: 0.8 }, // Overall lattice visibility
|
|
1050
|
+
uRevealStrength: { value: 1.0 }, // How much hover reveals lattice
|
|
1051
|
+
uBaseVisibility: { value: 0.05 }, // Base visibility without hover (0-1)
|
|
1052
|
+
uMicroWarp: { value: 0.015 }, // Subtle domain warping
|
|
1053
|
+
uEtchDistortion: { value: 0.008 }, // UV distortion in etched areas
|
|
1054
|
+
// === Phase Lens Uniforms ===
|
|
1055
|
+
uLens: { value: new THREE.Vector4(0.5, 0.5, 0.12, 1.0) }, // center, radius, mag
|
|
1056
|
+
uLensVelocity: { value: 0 },
|
|
1057
|
+
uLensChromatic: { value: 0.35 },
|
|
1058
|
+
uLensEnabled: { value: 1 },
|
|
1059
|
+
// === Lattice Mode Uniform ===
|
|
1060
|
+
uLatticeMode: { value: 0 }, // 0=rect, 1=hex, 2=tri
|
|
1061
|
+
// === Etch Velocity Uniform ===
|
|
1062
|
+
uEtchVelocity: { value: 0 },
|
|
1063
|
+
// === Palette / Atmosphere Uniforms ===
|
|
1064
|
+
uPaletteMode: { value: 1 }, // Default: orchid (museum-grade)
|
|
1065
|
+
uAccentIntensity: { value: 1.1 },
|
|
1066
|
+
uIridescenceStrength: { value: 0.35 },
|
|
1067
|
+
uIridescenceScale: { value: 14 },
|
|
1068
|
+
uExposure: { value: 1.0 },
|
|
1069
|
+
uFilmic: { value: 0.85 },
|
|
1070
|
+
uGrainStrength: { value: 0.015 },
|
|
1071
|
+
uCrtStrength: { value: 0.25 },
|
|
1072
|
+
uCopperStrength: { value: 0.15 },
|
|
1073
|
+
};
|
|
1074
|
+
}
|
|
1075
|
+
export function createPcbMaterial(uniforms) {
|
|
1076
|
+
return new THREE.ShaderMaterial({
|
|
1077
|
+
vertexShader: PCB_VERTEX_SHADER,
|
|
1078
|
+
fragmentShader: PCB_FRAGMENT_SHADER,
|
|
1079
|
+
uniforms,
|
|
1080
|
+
transparent: true,
|
|
1081
|
+
depthWrite: false,
|
|
1082
|
+
});
|
|
1083
|
+
}
|
|
1084
|
+
export function createPcbArrowsMaterial(uniforms, blending = "normal") {
|
|
1085
|
+
return new THREE.ShaderMaterial({
|
|
1086
|
+
vertexShader: PCB_ARROWS_VERTEX_SHADER,
|
|
1087
|
+
fragmentShader: PCB_ARROWS_FRAGMENT_SHADER,
|
|
1088
|
+
uniforms: {
|
|
1089
|
+
uTime: uniforms.uTime,
|
|
1090
|
+
uHover: uniforms.uHover,
|
|
1091
|
+
uAnchors: uniforms.uAnchors,
|
|
1092
|
+
uAnchorCount: uniforms.uAnchorCount,
|
|
1093
|
+
uProbeRadius: uniforms.uProbeRadius,
|
|
1094
|
+
// UV normalization and point size control
|
|
1095
|
+
uPlaneSize: uniforms.uPlaneSize,
|
|
1096
|
+
uMaxPointSize: uniforms.uMaxPointSize,
|
|
1097
|
+
// Palette uniforms for arrows
|
|
1098
|
+
uPaletteMode: uniforms.uPaletteMode,
|
|
1099
|
+
uAccentIntensity: uniforms.uAccentIntensity,
|
|
1100
|
+
},
|
|
1101
|
+
transparent: true,
|
|
1102
|
+
depthWrite: false,
|
|
1103
|
+
// FIX: Default to normal blending for debugging; additive can be enabled via config
|
|
1104
|
+
blending: blending === "additive" ? THREE.AdditiveBlending : THREE.NormalBlending,
|
|
1105
|
+
});
|
|
1106
|
+
}
|
|
1107
|
+
// -----------------------------------------------------------------------------
|
|
1108
|
+
// Arrows Geometry Factory
|
|
1109
|
+
// -----------------------------------------------------------------------------
|
|
1110
|
+
export function createPcbArrowsGeometry(count, planeWidth, planeHeight) {
|
|
1111
|
+
const geometry = new THREE.BufferGeometry();
|
|
1112
|
+
const positions = new Float32Array(count * 3);
|
|
1113
|
+
const phases = new Float32Array(count);
|
|
1114
|
+
const sizes = new Float32Array(count);
|
|
1115
|
+
// Grid distribution for arrows
|
|
1116
|
+
const gridSizeX = Math.ceil(Math.sqrt(count * (planeWidth / planeHeight)));
|
|
1117
|
+
const gridSizeY = Math.ceil(count / gridSizeX);
|
|
1118
|
+
for (let i = 0; i < count; i++) {
|
|
1119
|
+
const gx = i % gridSizeX;
|
|
1120
|
+
const gy = Math.floor(i / gridSizeX);
|
|
1121
|
+
// Position with slight jitter
|
|
1122
|
+
const jitterX = (Math.random() - 0.5) * 0.3;
|
|
1123
|
+
const jitterY = (Math.random() - 0.5) * 0.3;
|
|
1124
|
+
positions[i * 3] = ((gx + 0.5 + jitterX) / gridSizeX - 0.5) * planeWidth;
|
|
1125
|
+
positions[i * 3 + 1] = ((gy + 0.5 + jitterY) / gridSizeY - 0.5) * planeHeight;
|
|
1126
|
+
positions[i * 3 + 2] = 0.02;
|
|
1127
|
+
phases[i] = Math.random();
|
|
1128
|
+
sizes[i] = 2.0 + Math.random() * 1.5;
|
|
1129
|
+
}
|
|
1130
|
+
geometry.setAttribute("position", new THREE.BufferAttribute(positions, 3));
|
|
1131
|
+
geometry.setAttribute("aPhase", new THREE.BufferAttribute(phases, 1));
|
|
1132
|
+
geometry.setAttribute("aSize", new THREE.BufferAttribute(sizes, 1));
|
|
1133
|
+
return geometry;
|
|
1134
|
+
}
|