feat: add Spark Plug module for PDF to 3D generation and move API settings to Dashboard
Build and Deploy / build-and-push (push) Successful in 45s

This commit is contained in:
AI Bot
2026-09-02 10:50:20 +05:30
parent 76f03b4251
commit 9fe22f9210
5 changed files with 399 additions and 32 deletions
+3 -29
View File
@@ -52,7 +52,7 @@ import { UnifiedMappingMaterial } from '../components/UnifiedMappingMaterial';
import { ImageTo3DModal } from "../components/ImageTo3DModal";
import { UVEditor } from "../components/UVEditor";
import { VizAiModal } from "../components/VizAiModal";
import { ApiSettingsModal } from "../components/ApiSettingsModal";
import { EffectComposer, DepthOfField, Bloom, Vignette, BrightnessContrast, HueSaturation } from "@react-three/postprocessing";
import { cn } from "../lib/utils";
import * as THREE from "three";
@@ -519,7 +519,7 @@ export default function Editor() {
const [showGrid, setShowGrid] = useState(true);
const [showRenderModal, setShowRenderModal] = useState(false);
const [showVizAi, setShowVizAi] = useState(false);
const [showApiSettings, setShowApiSettings] = useState(false);
const [vizAiBaseImage, setVizAiBaseImage] = useState<string | null>(null);
const [renderRequest, setRenderRequest] = useState<RenderSettings | null>(null);
const [exportRequest, setExportRequest] = useState(false);
@@ -2087,28 +2087,7 @@ export default function Editor() {
<span className="hover:text-white cursor-pointer">Camera</span>
<span className="hover:text-white cursor-pointer">Image</span>
<span className="hover:text-white cursor-pointer">Render</span>
<div className="relative">
<span
className="hover:text-primary cursor-pointer px-1 py-0.5 rounded hover:bg-white/40 dark:hover:bg-white/5 transition-colors"
onClick={() => setOpenMenu(openMenu === 'tools' ? null : 'tools')}
>
Tools
</span>
{openMenu === 'tools' && (
<div className="absolute top-full left-0 mt-1 w-48 bg-white dark:bg-[#1a1a1a] border border-zinc-200 dark:border-zinc-800 rounded-xl shadow-[0_10px_40px_rgba(0,0,0,0.15)] dark:shadow-[0_10px_40px_rgba(0,0,0,0.5)] z-50 py-1 overflow-hidden">
<button
className="w-full flex items-center gap-2 px-4 py-2 text-xs text-zinc-300 hover:bg-zinc-800 hover:text-white"
onClick={() => {
setShowApiSettings(true);
setOpenMenu(null);
}}
>
<Settings size={14} />
<span>API Settings</span>
</button>
</div>
)}
</div>
<div className="relative">
<span
className="hover:text-primary cursor-pointer px-1 py-0.5 rounded hover:bg-white/40 dark:hover:bg-white/5 transition-colors"
@@ -2782,11 +2761,6 @@ export default function Editor() {
baseImage={vizAiBaseImage}
/>
<ApiSettingsModal
isOpen={showApiSettings}
onClose={() => setShowApiSettings(false)}
/>
{/* Export / Save Dialog */}
{exportDialog && (
<div className="fixed inset-0 z-[200] flex items-center justify-center bg-black/60 backdrop-blur-sm"