diff --git a/src/components/onboarding/workflow-import.tsx b/src/components/onboarding/workflow-import.tsx index 618c5e23..63ed8088 100644 --- a/src/components/onboarding/workflow-import.tsx +++ b/src/components/onboarding/workflow-import.tsx @@ -30,12 +30,12 @@ import { api } from "@/lib/api"; import { cn } from "@/lib/utils"; import { comfyui_hash } from "@/utils/comfydeploy-hash"; import { defaultWorkflowTemplates } from "@/utils/default-workflow"; -import { useNavigate, useSearch } from "@tanstack/react-router"; -import { CheckCircle2, Circle, CircleCheckBig } from "lucide-react"; -import { useSearchParams } from "next/navigation"; +import { useNavigate } from "@tanstack/react-router"; +import { CheckCircle2, Circle, CircleCheckBig, Lightbulb } from "lucide-react"; import { useQueryState } from "nuqs"; import { useCallback, useEffect, useRef, useState } from "react"; import { toast } from "sonner"; +import { FileURLRender } from "../workflows/OutputRender"; // Add these interfaces export interface StepValidation { @@ -647,12 +647,37 @@ function DefaultOption({ ); if (selectedTemplate && validation.importOption === "default") { - setValidation({ + const updatedValidation = { ...validation, workflowJson: selectedTemplate.workflowJson, workflowApi: selectedTemplate.workflowApi, importJson: "", - }); + hasEnvironment: selectedTemplate.hasEnvironment || false, + }; + + // If the template has environment data, include those properties + if (selectedTemplate.hasEnvironment) { + try { + const workflowData = JSON.parse(selectedTemplate.workflowJson); + const environment = workflowData.environment; + + if (environment) { + Object.assign(updatedValidation, { + docker_command_steps: environment.docker_command_steps, + gpuType: environment.gpu, + comfyUiHash: environment.comfyui_version, + install_custom_node_with_gpu: + environment.install_custom_node_with_gpu, + base_docker_image: environment.base_docker_image, + python_version: environment.python_version, + }); + } + } catch (error) { + console.error("Error parsing workflow JSON:", error); + } + } + + setValidation(updatedValidation); } }, [workflowSelected, validation.importOption]); @@ -668,40 +693,45 @@ function DefaultOption({ Select a workflow as your starting point.{" "} -
- Current workflows: {sub?.features.currentWorkflowCount} / Max:{" "} - {sub?.features.workflowLimit} -
-+ Current workflows: {sub?.features.currentWorkflowCount} / Max:{" "} + {sub?.features.workflowLimit} +
+