UI acp migratoin: Decouple desktop UI types from generated OpenAPI types (Part 2) (#10149)

This commit is contained in:
Lifei Zhou
2026-07-01 12:44:08 +10:00
committed by GitHub
parent 66ce9a6beb
commit 82c0b0dfd9
19 changed files with 69 additions and 25 deletions
@@ -1,6 +1,5 @@
import { useState, useEffect } from 'react';
import { ChevronDown } from 'lucide-react';
import { DictationProvider } from '../../../api';
import { getDictationConfig, DictationProviderStatusEntry } from '../../../acp/dictation';
import { useConfig } from '../../ConfigContext';
import { Input } from '../../ui/input';
@@ -10,6 +9,7 @@ import { LocalModelManager } from './LocalModelManager';
import { MicrophoneSelector } from './MicrophoneSelector';
import { DICTATION_ALLOWED_PROVIDERS } from '../../../updates';
import { useFeatures } from '../../../contexts/FeaturesContext';
import type { DictationProvider } from '../../../types/dictation';
import {
DropdownMenu,
DropdownMenuContent,
@@ -1,6 +1,6 @@
import { ProviderDetails, ThinkingEffort } from '../../../api';
import { listLocalModels } from '../../../acp/local-inference';
import { acpListProviderDetails, acpListProviderModels } from '../../../acp/providers';
import type { ProviderDetails, ThinkingEffort } from '../../../types/providers';
import { errorMessage as getErrorMessage } from '../../../utils/conversionUtils';
export default interface Model {
@@ -27,7 +27,7 @@ import Model, {
getProviderMetadata,
} from '../modelInterface';
import { getPredefinedModelsFromEnv, shouldShowPredefinedModels } from '../predefinedModelsUtils';
import type { ProviderType, ThinkingEffort } from '../../../../api';
import type { ProviderDetails, ProviderType, ThinkingEffort } from '../../../../types/providers';
import { trackModelChanged } from '../../../../utils/analytics';
const i18n = defineMessages({
@@ -305,9 +305,7 @@ export const SwitchModelModal = ({
const [userClearedModel, setUserClearedModel] = useState(false);
const [providerErrors, setProviderErrors] = useState<Record<string, string>>({});
const [providerWarnings, setProviderWarnings] = useState<Record<string, string>>({});
const [activeProvidersList, setActiveProvidersList] = useState<
import('../../../../api').ProviderDetails[]
>([]);
const [activeProvidersList, setActiveProvidersList] = useState<ProviderDetails[]>([]);
const fetchedProviders = useRef<Set<string>>(new Set());
const reasoningRequestId = useRef(0);
const [thinkingEffort, setThinkingEffort] = useState<ThinkingEffort | null>(null);
@@ -2,9 +2,8 @@ import React, { memo, useMemo, useCallback, useState } from 'react';
import { ProviderCard } from './subcomponents/ProviderCard';
import CardContainer from './subcomponents/CardContainer';
import ProviderConfigurationModal from './modal/ProviderConfigurationModal';
import type { ProviderDetails } from '../../../api';
import type { CustomProviderConfigDto } from '@aaif/goose-sdk';
import type { UpdateCustomProviderRequest } from '../../../types/providers';
import type { ProviderDetails, UpdateCustomProviderRequest } from '../../../types/providers';
import {
acpCreateCustomProviderFromRequest,
acpGetCustomProvider,
@@ -4,7 +4,7 @@ import { ScrollArea } from '../../ui/scroll-area';
import BackButton from '../../ui/BackButton';
import ProviderGrid from './ProviderGrid';
import { acpListProviderDetails } from '../../../acp/providers';
import { ProviderDetails } from '../../../api';
import type { ProviderDetails } from '../../../types/providers';
import { createNavigationHandler } from '../../../utils/navigationUtils';
import { defineMessages, useIntl } from '../../../i18n';
@@ -22,7 +22,7 @@ import {
} from '../../../../acp/providers';
import { useModelAndProvider } from '../../../ModelAndProviderContext';
import { AlertTriangle, LogIn } from 'lucide-react';
import { ProviderDetails } from '../../../../api';
import type { ProviderDetails } from '../../../../types/providers';
import { Button } from '../../../../components/ui/button';
import { errorMessage } from '../../../../utils/conversionUtils';
import { defineMessages, useIntl } from '../../../../i18n';
@@ -1,7 +1,7 @@
import { SyntheticEvent } from 'react';
import { Button } from '../../../../ui/button';
import { Trash2, AlertTriangle } from 'lucide-react';
import { ConfigKey } from '../../../../../api';
import type { ConfigKey } from '../../../../../types/providers';
import { defineMessages, useIntl } from '../../../../../i18n';
const i18n = defineMessages({
@@ -1,8 +1,8 @@
import React, { useEffect, useMemo, useState, useCallback } from 'react';
import { Input } from '../../../../../ui/input';
import { acpReadProviderConfig } from '../../../../../../acp/providers';
import { ProviderDetails, ConfigKey } from '../../../../../../api';
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../../../../../ui/collapsible';
import type { ConfigKey, ProviderDetails } from '../../../../../../types/providers';
import { configLabels, configPlaceholders } from '../../../../../../utils/configUtils';
import { defineMessages, useIntl } from '../../../../../../i18n';
@@ -3,7 +3,7 @@ import CardContainer from './CardContainer';
import CardHeader from './CardHeader';
import CardBody from './CardBody';
import DefaultCardButtons from './buttons/DefaultCardButtons';
import { ProviderDetails, ProviderMetadata } from '../../../../api';
import type { ProviderDetails, ProviderMetadata } from '../../../../types/providers';
import { defineMessages, useIntl } from '../../../../i18n';
const i18n = defineMessages({
@@ -1,5 +1,5 @@
import { ConfigureSettingsButton, RocketButton } from './CardButtons';
import { ProviderDetails } from '../../../../../api';
import type { ProviderDetails } from '../../../../../types/providers';
import { defineMessages, useIntl } from '../../../../../i18n';
const i18n = defineMessages({