Skip to content

Commit 82b5fee

Browse files
🐛 fix: Fix Enum
1 parent ebdf6b9 commit 82b5fee

File tree

3 files changed

+31
-12
lines changed

3 files changed

+31
-12
lines changed

src/ProviderCombine/const.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import Baichuan from '@/Baichuan';
1212
import Bedrock from '@/Bedrock';
1313
import Claude from '@/Claude';
1414
import DeepSeek from '@/DeepSeek';
15+
import Fireworks from '@/Fireworks';
1516
import Gemini from '@/Gemini';
1617
import Google from '@/Google';
1718
import Groq from '@/Groq';
@@ -27,6 +28,7 @@ import Perplexity from '@/Perplexity';
2728
import { ModelProvider } from '@/ProviderIcon/const';
2829
import Qwen from '@/Qwen';
2930
import SiliconCloud from '@/SiliconCloud';
31+
import Spark from '@/Spark';
3032
import Stepfun from '@/Stepfun';
3133
import Together from '@/Together';
3234
import Upstage from '@/Upstage';
@@ -127,6 +129,8 @@ export const providerMappings: ProviderMapping[] = [
127129
{ Icon: OpenRouter.Combine, keywords: [ModelProvider.OpenRouter], multiple: 0.8 },
128130
{ Icon: ZeroOne.Combine, keywords: [ModelProvider.ZeroOne], multiple: 0.9 },
129131
{ Icon: Together.Combine, keywords: [ModelProvider.TogetherAI] },
132+
{ Icon: Fireworks.Combine, keywords: [ModelProvider.FireworksAI], multiple: 1.14 },
133+
{ Icon: Spark.Combine, keywords: [ModelProvider.Spark], multiple: 0.92 },
130134
{ Icon: Qwen.Combine, keywords: [ModelProvider.Qwen] },
131135
{ Icon: Stepfun.Combine, keywords: [ModelProvider.Stepfun], multiple: 0.83 },
132136
{ Icon: Baichuan.Combine, keywords: [ModelProvider.Baichuan], multiple: 0.83 },

src/ProviderCombine/index.tsx

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
import { CSSProperties, memo, useMemo } from 'react';
1+
import { forwardRef, useMemo } from 'react';
2+
import { Flexbox, FlexboxProps } from 'react-layout-kit';
23

34
import DefaultIcon from '@/ProviderIcon/DefaultIcon';
45
import { ModelProviderKey } from '@/ProviderIcon/const';
56

67
import { providerMappings } from './const';
78

8-
export interface ProviderCombineProps {
9-
className?: string;
9+
export interface ProviderCombineProps
10+
extends Omit<FlexboxProps, 'children' | 'horizontal' | 'height' | 'width' | 'align' | 'justify'> {
1011
provider?: ModelProviderKey | string;
1112
size?: number;
12-
style?: CSSProperties;
1313
type?: 'mono' | 'color';
1414
}
1515

16-
const ProviderCombine = memo<ProviderCombineProps>(
17-
({ provider: originProvider, size = 12, type = 'color', ...rest }) => {
16+
const ProviderCombine = forwardRef<HTMLDivElement, ProviderCombineProps>(
17+
({ provider: originProvider, size = 12, type = 'color', ...rest }, ref) => {
1818
const Render = useMemo(() => {
1919
if (!originProvider) return;
2020
const provider = originProvider.toLowerCase();
@@ -26,15 +26,24 @@ const ProviderCombine = memo<ProviderCombineProps>(
2626
}
2727
}, [originProvider]);
2828

29-
if (!Render?.Icon) return <DefaultIcon size={size} {...rest} />;
29+
let icon = Render?.Icon ? (
30+
<Render.Icon size={size * (Render?.multiple || 1)} type={type} {...(Render?.props || {})} />
31+
) : (
32+
<DefaultIcon size={size} />
33+
);
3034

3135
return (
32-
<Render.Icon
33-
size={size * (Render?.multiple || 1)}
34-
type={type}
35-
{...(Render?.props || {})}
36+
<Flexbox
37+
align={'center'}
38+
flex={'none'}
39+
height={size * 1.5}
40+
horizontal
41+
ref={ref}
42+
width={'fit-content'}
3643
{...rest}
37-
/>
44+
>
45+
{icon}
46+
</Flexbox>
3847
);
3948
},
4049
);

src/ProviderIcon/const.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import Azure from '@/Azure';
77
import Baichuan from '@/Baichuan';
88
import Bedrock from '@/Bedrock';
99
import DeepSeek from '@/DeepSeek';
10+
import Fireworks from '@/Fireworks';
1011
import Google from '@/Google';
1112
import Groq from '@/Groq';
1213
import type { IconAvatarProps } from '@/IconAvatar';
@@ -22,6 +23,7 @@ import OpenRouter from '@/OpenRouter';
2223
import Perplexity from '@/Perplexity';
2324
import Qwen from '@/Qwen';
2425
import SiliconCloud from '@/SiliconCloud';
26+
import Spark from '@/Spark';
2527
import Stepfun from '@/Stepfun';
2628
import Together from '@/Together';
2729
import Upstage from '@/Upstage';
@@ -51,6 +53,7 @@ export enum ModelProvider {
5153
Baichuan = 'baichuan',
5254
Bedrock = 'bedrock',
5355
DeepSeek = 'deepseek',
56+
FireworksAI = 'fireworksai',
5457
Google = 'google',
5558
Groq = 'groq',
5659
LobeHub = 'lobehub',
@@ -64,6 +67,7 @@ export enum ModelProvider {
6467
Perplexity = 'perplexity',
6568
Qwen = 'qwen',
6669
SiliconCloud = 'siliconcloud',
70+
Spark = 'spark',
6771
Stepfun = 'stepfun',
6872
Taichu = 'taichu',
6973
TogetherAI = 'togetherai',
@@ -95,6 +99,8 @@ export const providerMappings: ProviderMapping[] = [
9599
{ Icon: Together, keywords: [ModelProvider.TogetherAI] },
96100
{ Icon: Qwen, keywords: [ModelProvider.Qwen] },
97101
{ Icon: Stepfun, keywords: [ModelProvider.Stepfun] },
102+
{ Icon: Spark, keywords: [ModelProvider.Spark] },
103+
{ Icon: Fireworks, keywords: [ModelProvider.FireworksAI] },
98104
{ Icon: Baichuan, keywords: [ModelProvider.Baichuan] },
99105
{ Icon: AiMass, keywords: [ModelProvider.Taichu] },
100106
{ Icon: Ai360, keywords: [ModelProvider.Ai360] },

0 commit comments

Comments
 (0)