From 7cdc0dc2d31ac798a91bb1e51f7ddaba94dea46e Mon Sep 17 00:00:00 2001 From: Nicolas Echezarreta Date: Tue, 4 Feb 2025 17:26:42 -0300 Subject: [PATCH] remove 'lods' step on deployment for worlds --- .../PublishProject/steps/Deploy/component.tsx | 20 ++++++++++++------- .../PublishProject/steps/Deploy/utils.ts | 7 ++++--- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/component.tsx b/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/component.tsx index 5b7caae..fec9595 100644 --- a/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/component.tsx +++ b/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/component.tsx @@ -407,13 +407,13 @@ type DeployingProps = { function Deploying({ info, url, onSuccess, onClick, onRetry }: DeployingProps) { const { wallet } = useAuth(); - const [deployState, setDeployState] = useState(getInitialDeploymentStatus()); + const [deployState, setDeployState] = useState(getInitialDeploymentStatus(info.isWorld)); const getDeploymentStatus = useCallback((): Promise => { if (!wallet) throw new Error('No wallet provided'); const identity = localStorageGetIdentity(wallet); if (!identity) throw new Error(`No identity found for wallet ${wallet}`); - return fetchDeploymentStatus(info.rootCID, identity); + return fetchDeploymentStatus(info.rootCID, identity, info.isWorld); }, [wallet, info]); const onReportIssue = useCallback(() => { @@ -482,7 +482,7 @@ function Deploying({ info, url, onSuccess, onClick, onRetry }: DeployingProps) { const steps: Step[] = useMemo(() => { const { catalyst, assetBundle, lods } = deployState; - return [ + const baseSteps = [ { bulletText: '1', name: t('modal.publish_project.deploy.deploying.step.catalyst'), @@ -495,14 +495,20 @@ function Deploying({ info, url, onSuccess, onClick, onRetry }: DeployingProps) { description: getStepDescription(assetBundle), state: assetBundle, }, - { + ]; + + // Only add LODs step for non-world deployments + if (!info.isWorld) { + baseSteps.push({ bulletText: '3', name: t('modal.publish_project.deploy.deploying.step.lods'), description: getStepDescription(lods), state: lods, - }, - ]; - }, [deployState, getStepDescription]); + }); + } + + return baseSteps; + }, [deployState, getStepDescription, info.isWorld]); const isFinishing = useMemo(() => isDeployFinishing(deployState), [deployState]); const overallStatus = useMemo(() => deriveOverallStatus(deployState), [deployState]); diff --git a/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/utils.ts b/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/utils.ts index ac5638b..0c5be50 100644 --- a/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/utils.ts +++ b/packages/renderer/src/components/Modals/PublishProject/steps/Deploy/utils.ts @@ -14,10 +14,10 @@ import { DeploymentError, } from './types'; -export const getInitialDeploymentStatus = (): DeploymentStatus => ({ +export const getInitialDeploymentStatus = (isWorld: boolean = false): DeploymentStatus => ({ catalyst: 'idle', assetBundle: 'idle', - lods: 'idle', + lods: isWorld ? 'complete' : 'idle', // Auto-complete for worlds }); export const retryDelayInMs = seconds(10); @@ -102,6 +102,7 @@ export function cleanPendingsFromDeploymentStatus(status: DeploymentStatus): Dep export async function fetchDeploymentStatus( sceneId: string, identity: AuthIdentity, + isWorld: boolean = false, ): Promise { const method = 'get'; const path = `/entities/status/${sceneId}`; @@ -119,7 +120,7 @@ export async function fetchDeploymentStatus( return { catalyst: validateStatus(json.catalyst), assetBundle: deriveOverallStatus(json.assetBundles), - lods: deriveOverallStatus(json.lods), + lods: isWorld ? 'complete' : deriveOverallStatus(json.lods), // Skip lods for worlds }; }