chore: perfect type definition (#940)

This commit is contained in:
bowen
2023-08-22 10:58:06 +08:00
committed by GitHub
parent b346bd9b83
commit 5e0540077a
25 changed files with 97 additions and 70 deletions

View File

@@ -15,6 +15,7 @@ import ModelIcon from '@/app/components/app/configuration/config-model/model-ico
import ModelName, { supportI18nModelName } from '@/app/components/app/configuration/config-model/model-name'
import ProviderName from '@/app/components/app/configuration/config-model/provider-name'
import { useProviderContext } from '@/context/provider-context'
type Props = {
value: {
providerName: ProviderEnum
@@ -28,6 +29,16 @@ type Props = {
triggerIconSmall?: boolean
}
type ModelOption = {
type: 'model'
value: string
providerName: ProviderEnum
modelDisplayName: string
} | {
type: 'provider'
value: ProviderEnum
}
const ModelSelector: FC<Props> = ({
value,
modelType,
@@ -69,9 +80,9 @@ const ModelSelector: FC<Props> = ({
const hasRemoved = value && !modelList.find(({ model_name }) => model_name === value.modelName)
const modelOptions: any[] = (() => {
const modelOptions: ModelOption[] = (() => {
const providers = _.uniq(filteredModelList.map(item => item.model_provider.provider_name))
const res: any[] = []
const res: ModelOption[] = []
providers.forEach((providerName) => {
res.push({
type: 'provider',
@@ -162,7 +173,7 @@ const ModelSelector: FC<Props> = ({
</div>
</div>
{
modelOptions.map((model: any) => {
modelOptions.map((model) => {
if (model.type === 'provider') {
return (
<div