Browse Source

feat(28-01): wire up model selection dialogs for node defaults

- Add ModelSearchDialog renders for image and video model selection
- Dialogs use onModelSelected callback to update local state
- Image dialog uses initialCapabilityFilter='image'
- Video dialog uses initialCapabilityFilter='video'
- Selected models are stored with provider, modelId, and displayName
handoff-20260429-1057
shrimbly 6 months ago
parent
commit
ccdd5509ef
  1. 44
      src/components/ProjectSetupModal.tsx

44
src/components/ProjectSetupModal.tsx

@ -806,6 +806,50 @@ export function ProjectSetupModal({
</button>
</div>
</div>
{/* Model Selection Dialogs */}
{showImageModelDialog && (
<ModelSearchDialog
isOpen={showImageModelDialog}
onClose={() => setShowImageModelDialog(false)}
onModelSelected={(model: ProviderModel) => {
setLocalNodeDefaults(prev => ({
...prev,
generateImage: {
...prev.generateImage,
selectedModel: {
provider: model.provider,
modelId: model.id,
displayName: model.name,
}
}
}));
setShowImageModelDialog(false);
}}
initialCapabilityFilter="image"
/>
)}
{showVideoModelDialog && (
<ModelSearchDialog
isOpen={showVideoModelDialog}
onClose={() => setShowVideoModelDialog(false)}
onModelSelected={(model: ProviderModel) => {
setLocalNodeDefaults(prev => ({
...prev,
generateVideo: {
...prev.generateVideo,
selectedModel: {
provider: model.provider,
modelId: model.id,
displayName: model.name,
}
}
}));
setShowVideoModelDialog(false);
}}
initialCapabilityFilter="video"
/>
)}
</div>
);
}

Loading…
Cancel
Save