mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-07-06 22:12:12 +02:00
feat(models): add refresh control enhancements to model selection and provider connect dialogs
- Introduced `isRefreshDisabled` prop to `ModelsSelectionPanel` to control refresh button state. - Updated `ProviderConnectDialog` to conditionally enable refresh functionality based on model support and submission status.
This commit is contained in:
parent
281b66f16f
commit
4ceb5827f1
2 changed files with 7 additions and 3 deletions
|
|
@ -17,6 +17,7 @@ interface ModelsSelectionPanelProps {
|
|||
emptyMessage?: string;
|
||||
refreshLabel?: string;
|
||||
isRefreshing?: boolean;
|
||||
isRefreshDisabled?: boolean;
|
||||
isUpdatingModel?: boolean;
|
||||
isBulkUpdating?: boolean;
|
||||
onRefresh?: () => void;
|
||||
|
|
@ -30,6 +31,7 @@ export function ModelsSelectionPanel({
|
|||
emptyMessage = "No models available.",
|
||||
refreshLabel = "Refresh models",
|
||||
isRefreshing = false,
|
||||
isRefreshDisabled = false,
|
||||
isUpdatingModel = false,
|
||||
isBulkUpdating = false,
|
||||
onRefresh,
|
||||
|
|
@ -74,7 +76,7 @@ export function ModelsSelectionPanel({
|
|||
size="icon"
|
||||
type="button"
|
||||
onClick={onRefresh}
|
||||
disabled={isRefreshing}
|
||||
disabled={isRefreshing || isRefreshDisabled}
|
||||
aria-label={refreshLabel}
|
||||
>
|
||||
<RefreshCw className={`h-4 w-4 ${isRefreshing ? "animate-spin" : ""}`} />
|
||||
|
|
|
|||
|
|
@ -92,7 +92,8 @@ export function ProviderConnectDialog({
|
|||
return "Select the models to enable for this provider";
|
||||
})();
|
||||
|
||||
const canRefreshModels = !isAzure && !isVertex && (!isBedrock || canSubmit);
|
||||
const supportsModelRefresh = !isAzure && !isVertex;
|
||||
const canRefreshModels = supportsModelRefresh && canSubmit;
|
||||
const hasEnabledModel =
|
||||
previewModels.some((model) => model.enabled) || Boolean(currentDraft.seedModelId);
|
||||
const canConnect = canSubmit && hasEnabledModel;
|
||||
|
|
@ -136,8 +137,9 @@ export function ProviderConnectDialog({
|
|||
models={previewModels}
|
||||
description={modelDescription}
|
||||
isRefreshing={isPreviewingModels}
|
||||
isRefreshDisabled={!canRefreshModels}
|
||||
refreshLabel={`Refresh ${meta.name} models`}
|
||||
onRefresh={canRefreshModels ? () => onPreviewModels?.(currentDraft) : undefined}
|
||||
onRefresh={supportsModelRefresh ? () => onPreviewModels?.(currentDraft) : undefined}
|
||||
onToggleModel={onTogglePreviewModel}
|
||||
onBulkToggle={onBulkTogglePreviewModels}
|
||||
/>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue