mirror of
https://github.com/hanzoai/icons.git
synced 2026-09-24 16:59:52 +00:00
✨ feat: Add AiHubMix, AionLabs, Crusoe, Featherless, Inference, Infermatic, Inflection, LeptonAI, Parasail, Targon (#95)
* ✨ feat: Add AihubMix (#93) * 🐛 fix: remove unused background prop in AiHubMix Avatar component * 🐛 fix: 修复text暗色兼容、修复Avatar显示、移除packages目录下关联的静态资源 * ✨ feat: Add AiHubMix, AionLabs, Crusoe, Featherless, Inference, Infermatic, Inflection, LeptonAI, Parasail, Targon (resolve #94) --------- Co-authored-by: jerlin <[email protected]>
This commit is contained in:
committed by
GitHub
co-authored by
jerlin
parent
856a272d01
commit
7b9c515a25
@@ -0,0 +1,25 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Inner from './Inner';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Inner}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#fff'}
|
||||
iconMultiple={0.7}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,35 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
d="M12 24c6.627 0 12-5.373 12-12S18.627 0 12 0 0 5.373 0 12s5.373 12 12 12z"
|
||||
fill="#006FFB"
|
||||
/>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M11.24 8.393c.095-.644.302-1.47.624-2.48L12 5.496l.136.417c.322 1.01.53 1.836.624 2.48.071.472.071 1.072 0 1.8-.072.731-.072 1.336 0 1.814.106.7.426 1.281.96 1.744a2.795 2.795 0 001.89.708 2.78 2.78 0 002.034-.84c.56-.559.842-1.234.848-2.024.003-.7.075-1.472.216-2.316.069-.422.14-.775.21-1.06l.095-.384.168.356a7.862 7.862 0 01.76 3.244v.16a7.84 7.84 0 01-.624 3.089 7.952 7.952 0 01-4.228 4.228 7.841 7.841 0 01-3.089.623 7.84 7.84 0 01-3.089-.623 7.952 7.952 0 01-4.228-4.228 7.84 7.84 0 01-.623-3.09v-.159a7.862 7.862 0 01.759-3.244l.169-.356.093.385c.072.284.143.637.211 1.059.141.844.213 1.616.216 2.316.006.79.29 1.465.848 2.024.563.56 1.241.84 2.035.84.715 0 1.345-.236 1.889-.708a2.79 2.79 0 00.96-1.744c.073-.478.073-1.083 0-1.814-.071-.728-.071-1.328 0-1.8zm.76 9.694c1.097 0 2.125-.26 3.085-.778a6.379 6.379 0 001.77-1.399c.063-.07-.01-.178-.101-.153-.37.1-.75.15-1.144.15a4.236 4.236 0 01-2.18-.59 4.253 4.253 0 01-1.35-1.233.099.099 0 00-.16 0 4.253 4.253 0 01-1.35 1.232 4.236 4.236 0 01-2.18.591c-.393 0-.774-.05-1.143-.15-.091-.025-.165.083-.102.153a6.38 6.38 0 001.77 1.399c.96.518 1.988.778 3.085.778z"
|
||||
fill="#fff"
|
||||
fillRule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export interface CombineProps extends Omit<IconCombineProps, 'Icon' | 'Text'> {
|
||||
type?: 'color' | 'mono';
|
||||
}
|
||||
const Combine = memo<CombineProps>(({ type = 'mono', ...rest }) => {
|
||||
const Icon = type === 'color' ? Color : Mono;
|
||||
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Icon}
|
||||
Text={Text}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,38 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<g clipPath="url(#a)">
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M10.853 6.285c.141-.972.455-2.221.942-3.747l.205-.63.206.63c.486 1.526.8 2.775.942 3.748.108.713.108 1.62 0 2.72-.109 1.105-.109 2.019 0 2.741a4.218 4.218 0 001.452 2.635 4.224 4.224 0 002.855 1.07c1.2 0 2.224-.423 3.074-1.268.846-.845 1.273-1.865 1.282-3.06.005-1.058.114-2.225.326-3.5.104-.637.21-1.17.319-1.6l.142-.581.255.538A11.88 11.88 0 0124 10.883v.24c0 1.63-.314 3.186-.942 4.669a12.017 12.017 0 01-6.39 6.39 11.848 11.848 0 01-4.668.942c-1.629 0-3.185-.314-4.668-.942a12.016 12.016 0 01-6.39-6.39A11.848 11.848 0 010 11.124v-.241A11.881 11.881 0 011.148 5.98l.255-.538.141.58c.11.43.215.964.32 1.601.212 1.275.32 2.442.325 3.5.01 1.195.437 2.215 1.282 3.06.85.845 1.875 1.268 3.075 1.268a4.225 4.225 0 002.854-1.07 4.218 4.218 0 001.453-2.635c.108-.722.108-1.636 0-2.741-.109-1.1-.109-2.007 0-2.72zM12 20.936a9.651 9.651 0 004.661-1.176 9.643 9.643 0 002.677-2.113c.095-.107-.017-.27-.154-.232a6.574 6.574 0 01-1.73.227 6.402 6.402 0 01-3.293-.893c-.82-.478-1.5-1.099-2.04-1.862a.149.149 0 00-.242 0 6.427 6.427 0 01-2.04 1.862 6.402 6.402 0 01-3.293.893 6.574 6.574 0 01-1.73-.227c-.137-.037-.248.125-.154.232a9.643 9.643 0 002.677 2.113A9.651 9.651 0 0012 20.935z"
|
||||
/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="a">
|
||||
<path d="M0 0h24v24H0z" />
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,31 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M24 12c0 6.627-5.373 12-12 12S0 18.627 0 12 5.373 0 12 0s12 5.373 12 12zM11.864 5.913c-.322 1.01-.53 1.836-.623 2.48-.072.472-.072 1.072 0 1.8.072.731.072 1.336 0 1.814a2.79 2.79 0 01-.961 1.744 2.795 2.795 0 01-1.89.708 2.78 2.78 0 01-2.034-.84 2.792 2.792 0 01-.848-2.024c-.003-.7-.075-1.472-.216-2.316-.068-.422-.139-.775-.21-1.06l-.094-.384-.17.356a7.862 7.862 0 00-.758 3.244v.16a7.84 7.84 0 00.623 3.089 7.952 7.952 0 004.228 4.228 7.84 7.84 0 003.09.623 7.841 7.841 0 003.088-.623 7.952 7.952 0 004.228-4.228 7.84 7.84 0 00.624-3.09v-.159a7.862 7.862 0 00-.76-3.244l-.168-.356-.094.385c-.072.284-.142.637-.211 1.059-.14.844-.212 1.616-.216 2.316a2.793 2.793 0 01-.848 2.024 2.78 2.78 0 01-2.034.84 2.795 2.795 0 01-1.89-.708 2.79 2.79 0 01-.96-1.744c-.072-.478-.072-1.083 0-1.814.071-.728.071-1.328 0-1.8-.094-.644-.302-1.47-.624-2.48L12 5.496l-.136.417zm3.22 11.396a6.387 6.387 0 01-3.084.778 6.387 6.387 0 01-3.084-.778 6.38 6.38 0 01-1.771-1.399c-.063-.07.01-.178.102-.153.369.1.75.15 1.144.15.781 0 1.508-.197 2.18-.59a4.253 4.253 0 001.349-1.233.099.099 0 01.16 0c.357.505.807.916 1.35 1.232.672.394 1.398.591 2.18.591.393 0 .775-.05 1.144-.15.09-.025.164.083.102.153a6.379 6.379 0 01-1.771 1.399z"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 144 24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M2 22.569L8.27 1h5.957l6.238 21.569h-3.48l-1.442-5.084h-8.59l-1.442 5.084H2zm5.8-8.166h6.897L11.499 3.064h-.502L7.8 14.404zM23.532 22.569V7.379h3.23v15.19h-3.23zm1.63-17.255c-.627 0-1.16-.195-1.598-.586-.418-.41-.627-.934-.627-1.571 0-.637.209-1.15.627-1.54.439-.412.971-.617 1.599-.617.647 0 1.18.205 1.598.616.418.39.627.904.627 1.54 0 .638-.209 1.161-.627 1.572-.418.39-.95.586-1.598.586zM31.46 22.569V1h3.385v9.244h9.217V1h3.386v21.569h-3.386v-9.306h-9.217v9.306H31.46zM58.052 22.846c-1.17 0-2.215-.257-3.135-.77a5.497 5.497 0 01-2.163-2.188c-.523-.945-.784-2.075-.784-3.39v-9.12h3.23v8.905c0 1.314.333 2.29 1.002 2.927.67.616 1.6.924 2.79.924 1.317 0 2.373-.431 3.167-1.294.815-.883 1.223-2.146 1.223-3.79V7.378h3.229v15.19h-3.167v-2.28h-.502c-.292.616-.815 1.202-1.567 1.757-.752.534-1.86.8-3.323.8zM80.319 23c-1.505 0-2.665-.267-3.48-.801-.794-.534-1.39-1.13-1.787-1.787h-.502v2.157h-3.166V1h3.23v8.443h.5c.251-.411.586-.802 1.004-1.171.418-.39.972-.709 1.661-.955.69-.247 1.536-.37 2.54-.37 1.296 0 2.487.308 3.574.924 1.086.616 1.954 1.51 2.602 2.68.647 1.172.971 2.569.971 4.191v.462c0 1.644-.334 3.05-1.003 4.222-.648 1.15-1.515 2.033-2.602 2.65-1.066.616-2.246.924-3.542.924zm-.94-2.773c1.4 0 2.549-.442 3.448-1.325.92-.883 1.38-2.147 1.38-3.79v-.277c0-1.623-.45-2.876-1.349-3.76-.899-.883-2.059-1.324-3.48-1.324-1.38 0-2.529.441-3.448 1.325-.9.883-1.349 2.136-1.349 3.759v.277c0 1.643.45 2.907 1.349 3.79.92.883 2.069 1.325 3.448 1.325zM91.374 22.569V1h6.364l4.796 19.35h.502L107.832 1h6.364v21.569h-3.292V3.342h-.501l-4.765 19.227h-5.706L95.167 3.342h-.502v19.227h-3.291zM118.868 22.569V7.379h3.229v15.19h-3.229zm1.63-17.255c-.627 0-1.16-.195-1.599-.586-.418-.41-.627-.934-.627-1.571 0-.637.209-1.15.627-1.54.439-.412.972-.617 1.599-.617.648 0 1.181.205 1.599.616.418.39.627.904.627 1.54 0 .638-.209 1.161-.627 1.572-.418.39-.951.586-1.599.586zM125.573 22.568l5.894-7.672-5.769-7.518h3.793l4.044 5.454h.502l4.044-5.454h3.825l-5.8 7.518L142 22.568h-3.856l-4.107-5.577h-.502l-4.106 5.577h-3.856z"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,72 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: AiHubMix (推理时代)
|
||||
atomId: AiHubMix
|
||||
description: https://aihubmix.com
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { AiHubMix } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<AiHubMix size={64} />
|
||||
<AiHubMix.Color size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { AiHubMix } from '@lobehub/icons';
|
||||
|
||||
export default () => <AiHubMix.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { AiHubMix } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<AiHubMix.Combine size={64} />
|
||||
<AiHubMix.Combine size={64} type={'color'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { AiHubMix } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<AiHubMix.Avatar size={64} />
|
||||
<AiHubMix.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { AiHubMix } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={AiHubMix.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Color from './components/Color';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Color: typeof Color;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Color = Color;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'AiHubMix';
|
||||
export const TEXT_MULTIPLE = 0.7;
|
||||
export const SPACE_MULTIPLE = 0.2;
|
||||
export const COLOR_PRIMARY = '#006FFB';
|
||||
@@ -0,0 +1,25 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, size, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Mono}
|
||||
aria-label={TITLE}
|
||||
background={background || '#F9FBFC'}
|
||||
color={COLOR_PRIMARY}
|
||||
size={size}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export interface CombineProps extends Omit<IconCombineProps, 'Icon' | 'Text'> {
|
||||
type?: 'color' | 'mono';
|
||||
}
|
||||
const Combine = memo<CombineProps>(({ type = 'mono', ...rest }) => {
|
||||
const Icon = type === 'color' ? Color : Mono;
|
||||
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Icon}
|
||||
Text={Text}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="nonzero"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 135 24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M131.939 10.694l-3.909.241a2.018 2.018 0 00-.431-.902 2.283 2.283 0 00-.872-.652c-.354-.167-.778-.25-1.273-.25-.661 0-1.219.14-1.673.42-.455.275-.682.642-.682 1.103 0 .368.147.678.441.932.294.254.799.458 1.513.612l2.787.561c1.497.307 2.612.802 3.347 1.483.735.682 1.103 1.577 1.103 2.687 0 1.009-.297 1.894-.892 2.656-.588.761-1.397 1.356-2.426 1.784-1.022.42-2.201.631-3.538.631-2.038 0-3.661-.424-4.871-1.273-1.202-.855-1.907-2.018-2.115-3.488l4.2-.22c.127.621.434 1.096.922 1.423.488.32 1.113.481 1.874.481.749 0 1.35-.144 1.804-.43.461-.295.695-.672.702-1.133a1.178 1.178 0 00-.491-.953c-.321-.253-.815-.447-1.483-.58l-2.666-.532c-1.504-.3-2.623-.822-3.358-1.564-.728-.741-1.093-1.687-1.093-2.836 0-.989.268-1.841.802-2.556.541-.715 1.3-1.266 2.275-1.654.983-.387 2.132-.581 3.448-.581 1.945 0 3.475.41 4.591 1.233 1.122.822 1.777 1.94 1.964 3.357zM101.831 21.7V1.174h4.27V8.89h.13a5.65 5.65 0 01.812-1.263c.361-.434.829-.795 1.403-1.082.582-.294 1.303-.441 2.165-.441 1.123 0 2.159.294 3.107.882.949.581 1.708 1.46 2.276 2.636.568 1.17.851 2.636.851 4.4 0 1.717-.277 3.167-.831 4.35-.548 1.176-1.297 2.068-2.245 2.676-.943.601-1.998.902-3.168.902-.828 0-1.533-.137-2.114-.411-.575-.274-1.046-.618-1.414-1.032a5.266 5.266 0 01-.842-1.273h-.19V21.7h-4.21zm4.18-7.697c0 .915.127 1.714.381 2.395.254.682.621 1.213 1.102 1.594.481.374 1.066.561 1.754.561.695 0 1.283-.19 1.764-.571.481-.388.845-.922 1.093-1.604.254-.688.381-1.48.381-2.375 0-.889-.124-1.67-.371-2.345-.247-.675-.612-1.203-1.093-1.584-.481-.38-1.072-.571-1.774-.571-.695 0-1.283.183-1.764.551-.474.367-.838.889-1.092 1.563-.254.675-.381 1.47-.381 2.386zM90.334 21.99c-.983 0-1.858-.17-2.626-.511a4.228 4.228 0 01-1.824-1.534c-.441-.681-.662-1.53-.662-2.545 0-.856.157-1.574.471-2.155a3.814 3.814 0 011.283-1.403 6.222 6.222 0 011.844-.802 14.06 14.06 0 012.185-.381 55.38 55.38 0 002.165-.26c.548-.088.946-.214 1.193-.382.247-.167.37-.414.37-.741v-.06c0-.635-.2-1.126-.6-1.474-.395-.347-.956-.52-1.684-.52-.769 0-1.38.17-1.835.51a2.352 2.352 0 00-.902 1.263l-3.949-.32c.2-.936.595-1.745 1.183-2.426.588-.688 1.347-1.216 2.275-1.584.936-.374 2.018-.561 3.248-.561.855 0 1.673.1 2.455.3.789.201 1.487.512 2.095.933.615.42 1.1.962 1.453 1.623.354.655.531 1.44.531 2.356v10.383h-4.049v-2.135h-.12a4.346 4.346 0 01-.992 1.273c-.415.361-.912.645-1.494.852-.581.2-1.252.301-2.014.301zm1.222-2.947c.629 0 1.183-.123 1.664-.37a2.948 2.948 0 001.133-1.023c.274-.427.41-.912.41-1.453v-1.634a2.286 2.286 0 01-.55.24c-.228.068-.485.131-.772.191-.288.054-.575.104-.862.15l-.782.11a5.28 5.28 0 00-1.313.352c-.374.16-.665.377-.872.651-.207.267-.31.601-.31 1.002 0 .582.21 1.026.63 1.333.428.301.97.451 1.624.451zM70.574 21.7V1.174h4.34v16.948h8.8V21.7h-13.14zM51.803 12.8v8.9h-4.27V6.303h4.07v2.717h.18a4.295 4.295 0 011.714-2.125c.802-.528 1.774-.792 2.917-.792 1.069 0 2 .234 2.796.702.795.467 1.413 1.135 1.854 2.004.441.862.662 1.891.662 3.087V21.7h-4.27v-9.04c.007-.942-.234-1.677-.722-2.205-.487-.535-1.159-.802-2.014-.802-.575 0-1.083.124-1.524.37a2.584 2.584 0 00-1.022 1.083c-.24.468-.364 1.033-.37 1.694zM37.745 22c-1.557 0-2.904-.33-4.04-.992a6.79 6.79 0 01-2.615-2.787c-.615-1.196-.922-2.582-.922-4.159 0-1.59.307-2.98.922-4.17.614-1.195 1.486-2.124 2.616-2.786 1.135-.668 2.482-1.002 4.039-1.002 1.556 0 2.9.334 4.029 1.002A6.691 6.691 0 0144.4 9.893c.614 1.189.922 2.579.922 4.17 0 1.576-.308 2.962-.922 4.158a6.771 6.771 0 01-2.626 2.787c-1.13.661-2.473.992-4.03.992zm.02-3.307c.708 0 1.3-.2 1.774-.602.474-.407.832-.962 1.072-1.664.247-.701.371-1.5.371-2.395s-.124-1.694-.37-2.395c-.241-.702-.599-1.257-1.073-1.664-.475-.408-1.066-.612-1.774-.612-.715 0-1.317.204-1.804.612-.481.407-.846.962-1.093 1.664-.24.701-.36 1.5-.36 2.395s.12 1.694.36 2.395c.247.702.611 1.257 1.093 1.664.487.401 1.089.602 1.804.602zM23.663 21.7V6.303h4.27V21.7h-4.27zm2.145-17.38a2.32 2.32 0 01-1.633-.632c-.448-.427-.672-.938-.672-1.533 0-.588.224-1.093.672-1.514A2.3 2.3 0 0125.808 0c.635 0 1.176.214 1.624.641.454.421.681.926.681 1.514 0 .595-.227 1.106-.681 1.533a2.285 2.285 0 01-1.624.632zM6.65 21.7H2L9.086 1.174h5.593L21.755 21.7h-4.65L11.962 5.864h-.16L6.65 21.7zm-.29-8.068h10.985v3.388H6.36v-3.388z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,72 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Model
|
||||
title: AionLabs
|
||||
atomId: AionLabs
|
||||
description: https://aionlabs.ai
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { AionLabs } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<AionLabs size={64} />
|
||||
<AionLabs.Color size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { AionLabs } from '@lobehub/icons';
|
||||
|
||||
export default () => <AionLabs.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { AionLabs } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<AionLabs.Combine size={64} />
|
||||
<AionLabs.Combine size={64} type={'color'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { AionLabs } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<AionLabs.Avatar size={64} />
|
||||
<AionLabs.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { AionLabs } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={AionLabs.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Color from './components/Color';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Color: typeof Color;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Color = Color;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'AionLabs';
|
||||
export const TEXT_MULTIPLE = 0.8;
|
||||
export const SPACE_MULTIPLE = 0.2;
|
||||
export const COLOR_PRIMARY = '#0f172a';
|
||||
@@ -0,0 +1,24 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Color}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#fff'}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,46 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import { useFillId } from '@/hooks/useFillId';
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
const { id, fill } = useFillId(TITLE);
|
||||
return (
|
||||
<svg
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
d="M12 0L4.583 6.583c-3.23 2.869-3.23 7.965 0 10.834L12 24l7.417-6.583c3.23-2.869 3.23-7.965 0-10.834L12 0z"
|
||||
fill={fill}
|
||||
/>
|
||||
<defs>
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
id={id}
|
||||
x1="18.919"
|
||||
x2="4.853"
|
||||
y1="5.595"
|
||||
y2="18.301"
|
||||
>
|
||||
<stop stopColor="#F4BF45" />
|
||||
<stop offset=".35" stopColor="#E48047" />
|
||||
<stop offset=".69" stopColor="#C73361" />
|
||||
<stop offset="1" stopColor="#A42F5F" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export interface CombineProps extends Omit<IconCombineProps, 'Icon' | 'Text'> {
|
||||
type?: 'color' | 'mono';
|
||||
}
|
||||
const Combine = memo<CombineProps>(({ type = 'mono', ...rest }) => {
|
||||
const Icon = type === 'color' ? Color : Mono;
|
||||
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Icon}
|
||||
Text={Text}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,43 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M12 0L4.583 6.583c-3.23 2.869-3.23 7.965 0 10.834L12 24l7.417-6.583c3.23-2.869 3.23-7.965 0-10.834L12 0z" />
|
||||
<defs>
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
id="a"
|
||||
x1="18.919"
|
||||
x2="4.853"
|
||||
y1="5.595"
|
||||
y2="18.301"
|
||||
>
|
||||
<stop stopColor="#F4BF45" />
|
||||
<stop offset=".35" stopColor="#E48047" />
|
||||
<stop offset=".69" stopColor="#C73361" />
|
||||
<stop offset="1" stopColor="#A42F5F" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 102 24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M11.928 22c5.07 0 8.64-3.05 9.196-7.354h-3.977c-.706 2.9-2.755 4.013-5.273 4.013-3.047 0-5.538-2.838-5.538-7.761s2.49-7.557 5.68-7.557c2.342 0 4.337.964 5.124 3.924h3.984C20.418 2.845 17.024 0 12.044 0 5.868 0 2 4.101 2 10.898s3.603 11.101 9.928 11.101zM31.043 9.67c.583 0 1.086 0 1.67.088V5.955a7.48 7.48 0 00-.876-.06c-1.846 0-3.25.76-4.16 2.722V5.86h-3.984v15.767h4.038v-8.264c0-2.96 1.323-3.693 3.312-3.693zm13.445 9.872c-.91 1.61-2.633 2.458-4.594 2.458-3.78 0-5.3-2.315-5.3-6.179v-9.96h4.037v9.084c0 2.112.32 3.81 2.58 3.81 2.693 0 3.277-2.2 3.277-4.686V5.867h4.038v15.76h-4.038v-2.085zM57.66 8.349c1.874 0 3.048.937 3.367 2.255H64.814c-.556-3.633-3.549-5.154-6.942-5.154-3.393 0-6.44 1.813-6.44 4.685s1.961 4.101 4.92 4.72l2.341.495c1.378.326 2.579.794 2.579 1.935 0 1.14-1.08 1.786-2.837 1.786-2.11 0-3.169-1.148-3.4-2.669H51.14c.38 3.606 3.305 5.595 7.173 5.595 3.57 0 6.82-1.847 6.82-5.1 0-3.251-2.66-4.04-5.795-4.745l-2.11-.469c-1.494-.319-2.111-.964-2.111-1.813 0-.964 1.052-1.52 2.544-1.52zm9.068 5.419c0-5.54 3.923-8.263 7.906-8.263 3.984 0 7.906 2.722 7.906 8.263 0 5.54-3.922 8.23-7.906 8.23-3.983 0-7.906-2.724-7.906-8.23zm4.099 0c0 3.313 1.581 5.065 3.807 5.065s3.807-1.758 3.807-5.065c0-3.307-1.581-5.1-3.807-5.1s-3.807 1.786-3.807 5.1zm21.494 5.1c-1.934 0-3.752-1.318-3.983-4.014l.007-.007H99.97c.15-5.56-3.074-9.342-7.729-9.342s-7.906 3.639-7.906 8.175c0 4.535 2.959 8.317 8.021 8.317 4.303 0 6.59-2.607 7.438-4.95h-4.16c-.821 1.379-2.05 1.82-3.312 1.82zm3.543-6.798H88.4c.326-2.668 2.287-3.605 3.807-3.605 1.697 0 3.57.937 3.658 3.605z"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,72 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: Crusoe
|
||||
atomId: Crusoe
|
||||
description: https://crusoe.ai
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { Crusoe } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Crusoe size={64} />
|
||||
<Crusoe.Color size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { Crusoe } from '@lobehub/icons';
|
||||
|
||||
export default () => <Crusoe.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { Crusoe } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<Crusoe.Combine size={64} />
|
||||
<Crusoe.Combine size={64} type={'color'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { Crusoe } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Crusoe.Avatar size={64} />
|
||||
<Crusoe.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { Crusoe } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={Crusoe.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Color from './components/Color';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Color: typeof Color;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Color = Color;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'Crusoe';
|
||||
export const TEXT_MULTIPLE = 0.75;
|
||||
export const SPACE_MULTIPLE = 0.15;
|
||||
export const COLOR_PRIMARY = '#fff';
|
||||
@@ -0,0 +1,29 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, size, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Mono}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#000'}
|
||||
iconStyle={{
|
||||
marginLeft: '10%',
|
||||
marginTop: '5%',
|
||||
}}
|
||||
size={size}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,29 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
d="M22.724 3.088C21.527 2.376 19.91 2 18.044 2c-2.854 0-6 .877-8.826 2.403l-.02-.007-.004.021c-.855.464-1.684.981-2.462 1.558C2.147 9.376.863 13.412 1.947 15.57.76 17.542.03 19.583 0 22c2.28-4.233 3.648-7.663 11.076-13.438-2.122.443-5.79 2.545-8.258 5.735-.233-1.866 1.28-4.879 4.65-7.379.428-.316.871-.612 1.324-.893-.354 1.071-.24.805-.975 2.307 1.086-1.001 1.8-1.62 2.873-3.335a18.995 18.995 0 014.276-1.465c-.238.767-.69 2.067-1.302 3.095 0 0 1.553-.324 2.837-.25-.701.753-1.333 1.569-1.973 2.403-.876 1.142-1.782 2.322-2.943 3.421-.14.133-.273.253-.408.377-1.784-.167-2.961.483-4.065 1.63.87-.395 2.04-.72 2.772-.524-1.35 1.073-3.477 2.487-5.224 2.37-.332.492-.353.507-.717 1.1 2.835.688 6.395-2.118 8.49-4.103 1.229-1.164 2.165-2.383 3.07-3.56 1.862-2.427 3.471-4.523 7.04-5.32L24 3.846l-1.276-.758z"
|
||||
fill="#FFE184"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export interface CombineProps extends Omit<IconCombineProps, 'Icon' | 'Text'> {
|
||||
type?: 'color' | 'mono';
|
||||
}
|
||||
const Combine = memo<CombineProps>(({ type = 'mono', ...rest }) => {
|
||||
const Icon = type === 'color' ? Color : Mono;
|
||||
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Icon}
|
||||
Text={Text}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,28 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M22.724 3.088C21.527 2.376 19.91 2 18.044 2c-2.854 0-6 .877-8.826 2.403l-.02-.007-.004.021c-.855.464-1.684.981-2.462 1.558C2.147 9.376.863 13.412 1.947 15.57.76 17.542.03 19.583 0 22c2.28-4.233 3.648-7.663 11.076-13.438-2.122.443-5.79 2.545-8.258 5.735-.233-1.866 1.28-4.879 4.65-7.379.428-.316.871-.612 1.324-.893-.354 1.071-.24.805-.975 2.307 1.086-1.001 1.8-1.62 2.873-3.335a18.995 18.995 0 014.276-1.465c-.238.767-.69 2.067-1.302 3.095 0 0 1.553-.324 2.837-.25-.701.753-1.333 1.569-1.973 2.403-.876 1.142-1.782 2.322-2.943 3.421-.14.133-.273.253-.408.377-1.784-.167-2.961.483-4.065 1.63.87-.395 2.04-.72 2.772-.524-1.35 1.073-3.477 2.487-5.224 2.37-.332.492-.353.507-.717 1.1 2.835.688 6.395-2.118 8.49-4.103 1.229-1.164 2.165-2.383 3.07-3.56 1.862-2.427 3.471-4.523 7.04-5.32L24 3.846l-1.276-.758z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,72 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: Featherless.ai
|
||||
atomId: Featherless
|
||||
description: https://featherless.ai
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { Featherless } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Featherless size={64} />
|
||||
<Featherless.Color size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { Featherless } from '@lobehub/icons';
|
||||
|
||||
export default () => <Featherless.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { Featherless } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<Featherless.Combine size={64} />
|
||||
<Featherless.Combine size={64} type={'color'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { Featherless } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Featherless.Avatar size={64} />
|
||||
<Featherless.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { Featherless } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={Featherless.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Color from './components/Color';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Color: typeof Color;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Color = Color;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'featherless.ai';
|
||||
export const TEXT_MULTIPLE = 0.7;
|
||||
export const SPACE_MULTIPLE = 0.2;
|
||||
export const COLOR_PRIMARY = '#FFE184';
|
||||
@@ -0,0 +1,24 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Mono}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#fff'}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,24 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Text from './Text';
|
||||
|
||||
export type CombineProps = Omit<IconCombineProps, 'Icon' | 'Text'>;
|
||||
|
||||
const Combine = memo<CombineProps>(({ ...rest }) => {
|
||||
return (
|
||||
<IconCombine
|
||||
Text={Text as any}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,28 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M22 21.376h-4.89V2.62H22v18.756zM14.532 21.376h-3.469V2.62h3.469v18.756zM8.764 21.376h-2.66V2.62h2.66v18.756zM3.903 21.376H2V2.62h1.903v18.756z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 158 24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M22.667 21.689h-5.053V2.308h5.053v19.38zM14.95 21.689h-3.585V2.308h3.584v19.38zM8.99 21.689H6.24V2.308h2.75v19.38zM3.966 21.689H2V2.308h1.966v19.38zM30.247 2.308l8.25 11.312V2.308h4.85v19.38H39.04l-8.537-11.49v11.49h-4.848V2.309h4.591zM46.339 2.308h11.913v4.14h-6.96v3.495h6.703v4.14H51.29v7.61H46.34V2.307zM60.52 2.308h12.146v4.14h-7.194v3.265h6.937v4.14h-6.937v3.702h7.194v4.14H60.52V2.308zM80.192 14.75v6.942h-5V2.308h6.42c4.614 0 7.786 2.26 7.786 6.22 0 2.594-1.573 4.499-3.997 5.474l6.187 7.687h-6.086l-5.313-6.942.003.003zm0-3.754h1.39c1.678 0 2.682-.9 2.682-2.313 0-1.413-1.004-2.287-2.681-2.287h-1.39v4.6zM92.286 2.308h12.144v4.14h-7.195v3.265h6.938v4.14h-6.938v3.702h7.195v4.14H92.286V2.308zM111.549 2.308L119.8 13.62V2.308h4.848v19.38h-4.306l-8.536-11.49v11.49h-4.848V2.309h4.591zM136.999 17.27c1.907 0 3.455-.77 4.384-1.775v5.579c-1.342.615-2.915.926-4.488.926-5.673 0-10.236-4.5-10.236-10s4.563-10 10.236-10c1.573 0 3.146.334 4.488.926v5.579c-.929-1.001-2.477-1.775-4.384-1.775-3.067 0-5.286 2.235-5.286 5.27 0 3.035 2.215 5.27 5.286 5.27zM143.703 2.308h12.143v4.14h-7.195v3.265h6.939v4.14h-6.939v3.702h7.195v4.14h-12.143V2.308z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,66 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: Inference
|
||||
atomId: Inference
|
||||
description: https://inference.net
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { Inference } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => <Inference size={64} />;
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { Inference } from '@lobehub/icons';
|
||||
|
||||
export default () => <Inference.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { Inference } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<Inference.Combine size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { Inference } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Inference.Avatar size={64} />
|
||||
<Inference.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { Inference } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={Inference.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,23 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'Inference';
|
||||
export const TEXT_MULTIPLE = 1;
|
||||
export const SPACE_MULTIPLE = 0;
|
||||
export const COLOR_PRIMARY = '#000';
|
||||
@@ -0,0 +1,26 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, size, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Mono}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#fff'}
|
||||
iconMultiple={0.7}
|
||||
size={size}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,29 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
d="M9.686 11.976a6297.72 6297.72 0 00-.006-5.112.353.353 0 00-.355-.35H2.279A.28.28 0 012 6.234V2.226c0-.06.023-.117.065-.16A.22.22 0 012.222 2h11.665a.274.274 0 01.273.262c.14 3.141.023 6.296.026 9.762l.008 5.11a.353.353 0 00.353.352h7.046a.28.28 0 01.279.28v4.009a.227.227 0 01-.137.208.22.22 0 01-.085.017H9.985a.273.273 0 01-.273-.262c-.14-3.141-.02-6.296-.026-9.762zM21.619 2.041l-3.896-.02a.282.282 0 00-.283.28l-.02 3.902c-.002.156.124.282.28.283l3.895.02a.282.282 0 00.284-.28l.02-3.901a.282.282 0 00-.28-.284zM6.166 17.518H2.31a.299.299 0 00-.299.299v3.855c0 .166.134.3.3.3h3.855a.299.299 0 00.3-.3v-3.855a.299.299 0 00-.3-.3z"
|
||||
fill="#4334F5"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export interface CombineProps extends Omit<IconCombineProps, 'Icon' | 'Text'> {
|
||||
type?: 'color' | 'mono';
|
||||
}
|
||||
const Combine = memo<CombineProps>(({ type = 'mono', ...rest }) => {
|
||||
const Icon = type === 'color' ? Color : Mono;
|
||||
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Icon}
|
||||
Text={Text}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,28 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M9.686 11.976a6297.72 6297.72 0 00-.006-5.112.353.353 0 00-.355-.35H2.279A.28.28 0 012 6.234V2.226c0-.06.023-.117.065-.16A.22.22 0 012.222 2h11.665a.274.274 0 01.273.262c.14 3.141.023 6.296.026 9.762l.008 5.11a.353.353 0 00.353.352h7.046a.28.28 0 01.279.28v4.009a.227.227 0 01-.137.208.22.22 0 01-.085.017H9.985a.273.273 0 01-.273-.262c-.14-3.141-.02-6.296-.026-9.762zM21.619 2.041l-3.896-.02a.282.282 0 00-.283.28l-.02 3.902c-.002.156.124.282.28.283l3.895.02a.282.282 0 00.284-.28l.02-3.901a.282.282 0 00-.28-.284zM6.166 17.518H2.31a.299.299 0 00-.299.299v3.855c0 .166.134.3.3.3h3.855a.299.299 0 00.3-.3v-3.855a.299.299 0 00-.3-.3z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,72 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: Infermatic
|
||||
atomId: Infermatic
|
||||
description: https://infermatic.ai
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { Infermatic } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Infermatic size={64} />
|
||||
<Infermatic.Color size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { Infermatic } from '@lobehub/icons';
|
||||
|
||||
export default () => <Infermatic.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { Infermatic } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<Infermatic.Combine size={64} />
|
||||
<Infermatic.Combine size={64} type={'color'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { Infermatic } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Infermatic.Avatar size={64} />
|
||||
<Infermatic.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { Infermatic } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={Infermatic.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Color from './components/Color';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Color: typeof Color;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Color = Color;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'Infermatic';
|
||||
export const TEXT_MULTIPLE = 0.8;
|
||||
export const SPACE_MULTIPLE = 0.3;
|
||||
export const COLOR_PRIMARY = '#4334F5';
|
||||
@@ -0,0 +1,25 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Mono}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#fff'}
|
||||
iconMultiple={0.7}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,24 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Text from './Text';
|
||||
|
||||
export type CombineProps = Omit<IconCombineProps, 'Icon' | 'Text'>;
|
||||
|
||||
const Combine = memo<CombineProps>(({ ...rest }) => {
|
||||
return (
|
||||
<IconCombine
|
||||
Text={Text as any}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,28 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M8.341 24c-.53 0-.841-.308-.841-.824v-.271c0-.514.248-.755.708-.926l1.025-.343c.708-.271.954-.583.954-1.303V3.667c0-.72-.246-1.029-.954-1.303L8.2 2.02c-.46-.171-.701-.408-.701-.926V.824C7.5.309 7.818 0 8.348 0h6.968c.531 0 .85.309.85.824v.271c0 .514-.249.755-.709.926l-1.031.34c-.743.272-.992.583-.992 1.303v16.664c0 .72.249 1.028.992 1.303l1.024.342c.46.172.708.408.708.926v.272c0 .515-.318.824-.85.824L8.342 24z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,66 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Model
|
||||
title: Inflection
|
||||
atomId: Inflection
|
||||
description: https://inflection.ai
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { Inflection } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => <Inflection size={64} />;
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { Inflection } from '@lobehub/icons';
|
||||
|
||||
export default () => <Inflection.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { Inflection } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<Inflection.Combine size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { Inflection } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Inflection.Avatar size={64} />
|
||||
<Inflection.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { Inflection } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={Inflection.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,23 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'Inflection';
|
||||
export const TEXT_MULTIPLE = 1;
|
||||
export const SPACE_MULTIPLE = 0;
|
||||
export const COLOR_PRIMARY = '#038247';
|
||||
@@ -0,0 +1,25 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, size, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Mono}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#fff'}
|
||||
size={size}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,48 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<g clipPath="url(#a)">
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M21.473 13.1V9.937c0-.56 0-.875-.014-1.106a1.058 1.058 0 00-.021-.196.786.786 0 00-.12-.21.916.916 0 00-.16-.112 21.078 21.078 0 00-.953-.568l-2.744-1.582c-.483-.28-.756-.434-.966-.538a.702.702 0 00-.175-.077.722.722 0 00-.245 0c-.021 0-.07.027-.175.077-.21.104-.476.258-.967.538L12.19 7.744c-.483.28-.756.434-.952.568-.098.063-.14.098-.161.112a.523.523 0 00-.12.21c0 .021-.013.077-.02.196-.014.23-.014.546-.014 1.106v3.165c0 .56 0 .875.014 1.106.007.119.014.175.02.195.029.078.071.148.12.21.013.015.055.05.16.113.197.126.463.287.953.567l2.744 1.582c.483.28.756.434.966.54a.698.698 0 00.176.076.72.72 0 00.245 0c.02 0 .07-.028.175-.077.21-.105.476-.259.966-.539l2.744-1.582c.483-.28.756-.434.953-.567.098-.063.14-.098.16-.112a.523.523 0 00.12-.21c0-.022.014-.077.02-.196.015-.231.015-.546.015-1.106zm1.715-6.377c-.336-.371-.798-.638-1.715-1.17l-2.745-1.582c-.924-.532-1.38-.798-1.87-.903a3.21 3.21 0 00-1.316 0c-.49.105-.952.371-1.869.903L10.93 5.553c-.925.532-1.38.799-1.715 1.17-.294.329-.519.714-.659 1.134-.154.475-.154 1.008-.154 2.072v3.164c0 1.065 0 1.597.154 2.073.14.42.365.812.659 1.134.335.37.798.637 1.715 1.169l2.744 1.582c.925.532 1.38.798 1.87.903.434.09.881.09 1.316 0 .49-.105.952-.371 1.87-.903l2.744-1.582c.924-.532 1.38-.798 1.715-1.17.294-.328.518-.713.658-1.133.154-.476.154-1.008.154-2.073V9.93c0-1.064 0-1.597-.154-2.072a3.131 3.131 0 00-.658-1.135z"
|
||||
fill="#2D9CDB"
|
||||
fillRule="evenodd"
|
||||
/>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M13.071 13.1V9.937c0-.56 0-.875-.014-1.106a1.048 1.048 0 00-.02-.196.786.786 0 00-.12-.21.916.916 0 00-.16-.112 21.078 21.078 0 00-.953-.568L9.059 6.162c-.483-.28-.755-.434-.966-.538a.7.7 0 00-.175-.077.722.722 0 00-.245 0c-.02 0-.07.027-.175.077-.21.104-.476.258-.966.538L3.788 7.744c-.483.28-.756.434-.953.568-.098.063-.14.098-.16.112a.523.523 0 00-.12.21c0 .021-.014.077-.02.196-.015.23-.015.546-.015 1.106v3.165c0 .56 0 .875.014 1.106 0 .119.014.175.021.195.028.078.07.148.12.21a.91.91 0 00.16.113c.196.126.462.287.953.567l2.744 1.582c.483.28.756.434.966.54a.699.699 0 00.175.076.72.72 0 00.245 0c.021 0 .07-.028.175-.077.21-.105.476-.259.966-.539l2.745-1.582c.483-.28.756-.434.952-.567.098-.063.14-.098.161-.112a.522.522 0 00.12-.21c0-.022.013-.077.02-.196.014-.231.014-.546.014-1.106zm1.716-6.377c-.336-.371-.799-.638-1.716-1.17l-2.744-1.582c-.924-.532-1.38-.798-1.87-.903a3.21 3.21 0 00-1.316 0c-.49.105-.952.371-1.87.903L2.528 5.553c-.924.532-1.379.799-1.715 1.17-.294.329-.518.714-.658 1.134C0 8.332 0 8.865 0 9.929v3.164c0 1.065 0 1.597.154 2.073.14.42.364.812.658 1.134.336.37.798.637 1.715 1.169l2.745 1.582c.924.532 1.38.798 1.87.903.433.09.881.09 1.316 0 .49-.105.952-.371 1.869-.903l2.744-1.582c.925-.532 1.38-.798 1.716-1.17a3.24 3.24 0 00.658-1.133c.154-.476.154-1.008.154-2.073V9.93c0-1.064 0-1.597-.154-2.072a3.134 3.134 0 00-.658-1.135z"
|
||||
fill="#2F80ED"
|
||||
fillRule="evenodd"
|
||||
/>
|
||||
<path
|
||||
d="M12.007 15.173c.063.035.127.07.196.112l2.276 1.316c-.308.245-.736.49-1.4.876l-1.072.615-1.07-.615c-.666-.385-1.093-.63-1.4-.876l2.275-1.316c.07-.042.132-.077.195-.112z"
|
||||
fill="#2F80ED"
|
||||
/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="a">
|
||||
<path d="M0 0h24v24H0z" fill="#fff" />
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export interface CombineProps extends Omit<IconCombineProps, 'Icon' | 'Text'> {
|
||||
type?: 'color' | 'mono';
|
||||
}
|
||||
const Combine = memo<CombineProps>(({ type = 'mono', ...rest }) => {
|
||||
const Icon = type === 'color' ? Color : Mono;
|
||||
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Icon}
|
||||
Text={Text}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,43 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<g clipPath="url(#a)">
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M21.473 13.1V9.937c0-.56 0-.875-.014-1.106a1.058 1.058 0 00-.021-.196.786.786 0 00-.12-.21.916.916 0 00-.16-.112 21.078 21.078 0 00-.953-.568l-2.744-1.582c-.483-.28-.756-.434-.966-.538a.702.702 0 00-.175-.077.722.722 0 00-.245 0c-.021 0-.07.027-.175.077-.21.104-.476.258-.967.538L12.19 7.744c-.483.28-.756.434-.952.568-.098.063-.14.098-.161.112a.523.523 0 00-.12.21c0 .021-.013.077-.02.196-.014.23-.014.546-.014 1.106v3.165c0 .56 0 .875.014 1.106.007.119.014.175.02.195.029.078.071.148.12.21.013.015.055.05.16.113.197.126.463.287.953.567l2.744 1.582c.483.28.756.434.966.54a.698.698 0 00.176.076.72.72 0 00.245 0c.02 0 .07-.028.175-.077.21-.105.476-.259.966-.539l2.744-1.582c.483-.28.756-.434.953-.567.098-.063.14-.098.16-.112a.523.523 0 00.12-.21c0-.022.014-.077.02-.196.015-.231.015-.546.015-1.106zm1.715-6.377c-.336-.371-.798-.638-1.715-1.17l-2.745-1.582c-.924-.532-1.38-.798-1.87-.903a3.21 3.21 0 00-1.316 0c-.49.105-.952.371-1.869.903L10.93 5.553c-.925.532-1.38.799-1.715 1.17-.294.329-.519.714-.659 1.134-.154.475-.154 1.008-.154 2.072v3.164c0 1.065 0 1.597.154 2.073.14.42.365.812.659 1.134.335.37.798.637 1.715 1.169l2.744 1.582c.925.532 1.38.798 1.87.903.434.09.881.09 1.316 0 .49-.105.952-.371 1.87-.903l2.744-1.582c.924-.532 1.38-.798 1.715-1.17.294-.328.518-.713.658-1.133.154-.476.154-1.008.154-2.073V9.93c0-1.064 0-1.597-.154-2.072a3.131 3.131 0 00-.658-1.135z"
|
||||
/>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M13.071 13.1V9.937c0-.56 0-.875-.014-1.106a1.048 1.048 0 00-.02-.196.786.786 0 00-.12-.21.916.916 0 00-.16-.112 21.078 21.078 0 00-.953-.568L9.059 6.162c-.483-.28-.755-.434-.966-.538a.7.7 0 00-.175-.077.722.722 0 00-.245 0c-.02 0-.07.027-.175.077-.21.104-.476.258-.966.538L3.788 7.744c-.483.28-.756.434-.953.568-.098.063-.14.098-.16.112a.523.523 0 00-.12.21c0 .021-.014.077-.02.196-.015.23-.015.546-.015 1.106v3.165c0 .56 0 .875.014 1.106 0 .119.014.175.021.195.028.078.07.148.12.21a.91.91 0 00.16.113c.196.126.462.287.953.567l2.744 1.582c.483.28.756.434.966.54a.699.699 0 00.175.076.72.72 0 00.245 0c.021 0 .07-.028.175-.077.21-.105.476-.259.966-.539l2.745-1.582c.483-.28.756-.434.952-.567.098-.063.14-.098.161-.112a.522.522 0 00.12-.21c0-.022.013-.077.02-.196.014-.231.014-.546.014-1.106zm1.716-6.377c-.336-.371-.799-.638-1.716-1.17l-2.744-1.582c-.924-.532-1.38-.798-1.87-.903a3.21 3.21 0 00-1.316 0c-.49.105-.952.371-1.87.903L2.528 5.553c-.924.532-1.379.799-1.715 1.17-.294.329-.518.714-.658 1.134C0 8.332 0 8.865 0 9.929v3.164c0 1.065 0 1.597.154 2.073.14.42.364.812.658 1.134.336.37.798.637 1.715 1.169l2.745 1.582c.924.532 1.38.798 1.87.903.433.09.881.09 1.316 0 .49-.105.952-.371 1.869-.903l2.744-1.582c.925-.532 1.38-.798 1.716-1.17a3.24 3.24 0 00.658-1.133c.154-.476.154-1.008.154-2.073V9.93c0-1.064 0-1.597-.154-2.072a3.134 3.134 0 00-.658-1.135z"
|
||||
/>
|
||||
<path d="M12.007 15.173c.063.035.127.07.196.112l2.276 1.316c-.308.245-.736.49-1.4.876l-1.072.615-1.07-.615c-.666-.385-1.093-.63-1.4-.876l2.275-1.316c.07-.042.132-.077.195-.112z" />
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="a">
|
||||
<path d="M0 0h24v24H0z" />
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="nonzero"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 108 24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M105.633 2v17.171h-3.63V2h3.63zM87.773 19.171h-3.89L89.81 2h4.679l5.919 17.171h-3.89L92.217 5.924h-.135l-4.31 13.247zm-.243-6.75h9.189v2.835h-9.19v-2.834zM69.11 11.725v7.446h-3.572V6.292h3.404v2.272h.152a3.592 3.592 0 011.433-1.777c.671-.442 1.484-.662 2.44-.662.894 0 1.674.195 2.34.586a3.99 3.99 0 011.55 1.677c.37.721.554 1.582.554 2.583v8.2h-3.572v-7.563c.006-.788-.196-1.403-.604-1.845-.408-.447-.97-.67-1.685-.67-.48 0-.905.103-1.274.31a2.162 2.162 0 00-.855.905c-.202.392-.305.864-.31 1.417zM57.35 19.422c-1.303 0-2.43-.276-3.38-.83a5.68 5.68 0 01-2.188-2.33c-.514-1.001-.771-2.161-.771-3.48 0-1.33.257-2.493.771-3.488a5.612 5.612 0 012.189-2.331c.95-.559 2.076-.838 3.379-.838 1.302 0 2.425.279 3.37.838a5.597 5.597 0 012.197 2.33c.514.996.771 2.158.771 3.489 0 1.319-.257 2.479-.771 3.48a5.664 5.664 0 01-2.197 2.33c-.944.554-2.068.83-3.37.83zm.016-2.767c.593 0 1.088-.167 1.484-.503.397-.34.696-.805.898-1.392.206-.586.31-1.254.31-2.003 0-.75-.104-1.417-.31-2.004-.202-.587-.5-1.051-.898-1.392-.396-.341-.891-.512-1.484-.512-.598 0-1.1.17-1.509.512-.402.34-.707.805-.914 1.392-.2.587-.302 1.255-.302 2.004 0 .749.101 1.417.302 2.004.207.586.512 1.05.914 1.391.408.336.911.503 1.51.503zM49.815 6.292v2.683h-7.756V6.292h7.756zM43.82 3.207h3.572v12.006c0 .33.05.587.15.771.101.18.24.305.42.378.184.072.397.109.637.109.168 0 .335-.014.503-.042l.386-.076.562 2.658c-.18.056-.43.12-.755.193a6.058 6.058 0 01-1.182.143c-.861.033-1.616-.081-2.264-.344a3.16 3.16 0 01-1.501-1.224c-.358-.554-.534-1.252-.528-2.096V3.207zM28.496 24V6.292h3.521v2.163h.16c.156-.346.382-.698.678-1.056a3.581 3.581 0 011.174-.906c.487-.246 1.09-.368 1.811-.368.94 0 1.806.245 2.6.737.793.487 1.428 1.222 1.903 2.205.475.979.712 2.206.712 3.681 0 1.437-.231 2.65-.695 3.64-.459.983-1.085 1.73-1.879 2.238-.788.503-1.67.754-2.649.754-.693 0-1.283-.114-1.77-.343a3.66 3.66 0 01-1.181-.864 4.384 4.384 0 01-.705-1.065h-.109V24h-3.571zm3.496-11.268c0 .765.106 1.433.318 2.003.213.57.52 1.015.923 1.334.402.313.891.469 1.467.469.581 0 1.073-.16 1.476-.478.402-.324.707-.771.914-1.341.212-.576.318-1.239.318-1.987 0-.744-.103-1.398-.31-1.962-.207-.565-.511-1.007-.914-1.325-.402-.319-.897-.478-1.484-.478-.581 0-1.073.154-1.476.461-.396.307-.701.743-.913 1.308-.213.564-.32 1.23-.32 1.995zM20.726 19.422c-1.325 0-2.465-.268-3.42-.805a5.513 5.513 0 01-2.198-2.297c-.514-.995-.771-2.172-.771-3.53 0-1.325.257-2.487.771-3.488.515-1 1.238-1.78 2.172-2.339.939-.559 2.04-.838 3.303-.838.85 0 1.641.136 2.373.41.738.269 1.38.674 1.929 1.216.553.542.983 1.224 1.29 2.046.308.816.462 1.772.462 2.867v.981H15.762v-2.213h7.513c0-.514-.112-.97-.335-1.367a2.402 2.402 0 00-.931-.93c-.392-.23-.847-.344-1.367-.344-.542 0-1.023.126-1.442.377a2.646 2.646 0 00-.973.998 2.818 2.818 0 00-.36 1.383v2.105c0 .637.117 1.188.352 1.652.24.463.579.821 1.015 1.073.435.251.953.377 1.55.377.398 0 .76-.056 1.09-.168.33-.111.613-.28.848-.503.234-.223.413-.497.536-.821l3.304.218a4.511 4.511 0 01-1.032 2.079c-.514.587-1.18 1.045-1.995 1.375-.81.324-1.747.486-2.809.486zM2 19.171V2h3.63v14.178h7.362v2.993H2z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,72 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: LeptonAI
|
||||
atomId: LeptonAI
|
||||
description: https://lepton.ai
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { LeptonAI } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<LeptonAI size={64} />
|
||||
<LeptonAI.Color size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { LeptonAI } from '@lobehub/icons';
|
||||
|
||||
export default () => <LeptonAI.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { LeptonAI } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<LeptonAI.Combine size={64} />
|
||||
<LeptonAI.Combine size={64} type={'color'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { LeptonAI } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<LeptonAI.Avatar size={64} />
|
||||
<LeptonAI.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { LeptonAI } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={LeptonAI.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Color from './components/Color';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Color: typeof Color;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Color = Color;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'LeptonAI';
|
||||
export const TEXT_MULTIPLE = 0.8;
|
||||
export const SPACE_MULTIPLE = 0.3;
|
||||
export const COLOR_PRIMARY = '#2F80ED';
|
||||
@@ -0,0 +1,25 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Mono}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#fff'}
|
||||
iconMultiple={0.65}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export type CombineProps = Omit<IconCombineProps, 'Icon' | 'Text'>;
|
||||
|
||||
const Combine = memo<CombineProps>(({ ...rest }) => {
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Mono}
|
||||
Text={Text as any}
|
||||
aria-label={TITLE}
|
||||
inverse
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,32 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M0 15.852c4.5 0 8.147 3.648 8.147 8.148H0v-8.148z" />
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M0 7.688v.018C9 7.706 16.294 15 16.294 24h.019l-.018-.036c3.33-.2 8.864-2.447 7.49-9.58A19.95 19.95 0 009.61.213C2.482-1.155.235 4.374.036 7.704L0 7.688z"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 125 24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M2 23.503V.298h7.668c4.017 0 7.636 2.42 7.636 7.26 0 4.972-3.619 7.757-7.636 7.757H5.884v8.188H2zm3.884-11.835h3.784c1.727 0 3.752-1.226 3.752-3.845 0-2.652-2.025-3.878-3.752-3.878H5.884v7.723zM27.557 24c-4.846 0-8.564-3.978-8.564-8.818 0-4.873 3.718-8.85 8.564-8.85 2.69 0 4.714 1.425 5.976 3.414V6.829h3.651v16.674h-3.651v-2.917C32.27 22.575 30.246 24 27.557 24zm-4.913-8.818c0 2.95 2.357 5.172 5.445 5.172 3.087 0 5.444-2.188 5.444-5.172 0-3.016-2.357-5.204-5.444-5.204-3.088 0-5.445 2.22-5.445 5.204zm18.51 8.32V6.83h3.619v2.718c.863-1.757 2.39-2.95 4.98-2.95v3.68c-2.69-.167-4.98 1.06-4.98 4.905v8.32h-3.619zm18.66.498c-4.846 0-8.565-3.978-8.565-8.818 0-4.873 3.718-8.85 8.565-8.85 2.69 0 4.714 1.425 5.976 3.414V6.829h3.651v16.674H65.79v-2.917C64.528 22.575 62.503 24 59.814 24zm-4.913-8.818c0 2.95 2.357 5.172 5.444 5.172 3.088 0 5.445-2.188 5.445-5.172 0-3.016-2.357-5.204-5.445-5.204-3.087 0-5.444 2.22-5.444 5.204zM79.718 24c-3.087 0-6.24-1.392-7.303-3.348l2.59-2.155c.796 1.028 2.556 1.956 4.713 1.956 1.162 0 2.855-.398 2.855-1.823 0-1.425-1.892-1.459-3.751-1.89-4.017-.895-5.677-2.353-5.677-5.105 0-3.414 2.922-5.304 6.241-5.304a9.55 9.55 0 015.943 2.023l-1.76 2.85c-.963-.762-2.888-1.326-4.183-1.326-1.328 0-2.556.597-2.556 1.658 0 1.06.963 1.392 2.59 1.79 2.655.63 6.838 1.028 6.838 5.105 0 4.144-3.585 5.569-6.54 5.569zm17.605 0c-4.847 0-8.565-3.978-8.565-8.818 0-4.873 3.718-8.85 8.565-8.85 2.689 0 4.714 1.425 5.975 3.414V6.829h3.652v16.674h-3.652v-2.917C102.037 22.575 100.012 24 97.323 24zm-4.913-8.818c0 2.95 2.357 5.172 5.444 5.172 3.087 0 5.444-2.188 5.444-5.172 0-3.016-2.357-5.204-5.444-5.204-3.087 0-5.444 2.22-5.444 5.204zm18.941 8.32V6.83h3.618v16.674h-3.618zm-.431-21.281c0-1.227.995-2.221 2.224-2.221 1.228 0 2.224.994 2.224 2.221a2.223 2.223 0 01-2.224 2.221 2.222 2.222 0 01-2.224-2.221zm8.428 21.282V.298H123v23.205h-3.652z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,66 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: Parasail
|
||||
atomId: Parasail
|
||||
description: https://parasail.io/
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { Parasail } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => <Parasail size={64} />;
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { Parasail } from '@lobehub/icons';
|
||||
|
||||
export default () => <Parasail.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { Parasail } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<Parasail.Combine size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { Parasail } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Parasail.Avatar size={64} />
|
||||
<Parasail.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { Parasail } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={Parasail.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,23 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'Parasail';
|
||||
export const TEXT_MULTIPLE = 1;
|
||||
export const SPACE_MULTIPLE = 0.3;
|
||||
export const COLOR_PRIMARY = '#000';
|
||||
@@ -0,0 +1,25 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconAvatar, { type IconAvatarProps } from '@/features/IconAvatar';
|
||||
|
||||
import { COLOR_PRIMARY, TITLE } from '../style';
|
||||
import Inner from './Inner';
|
||||
|
||||
export type AvatarProps = Omit<IconAvatarProps, 'Icon'>;
|
||||
|
||||
const Avatar = memo<AvatarProps>(({ background, ...rest }) => {
|
||||
return (
|
||||
<IconAvatar
|
||||
Icon={Inner}
|
||||
aria-label={TITLE}
|
||||
background={background || COLOR_PRIMARY}
|
||||
color={'#191B20'}
|
||||
iconMultiple={0.7}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Avatar;
|
||||
@@ -0,0 +1,35 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 25 25"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
d="M20.297.7H5.289A4.496 4.496 0 00.793 5.195v15.007a4.496 4.496 0 004.496 4.496h15.008a4.496 4.496 0 004.496-4.496V5.196A4.497 4.497 0 0020.297.699z"
|
||||
fill="#68C3FF"
|
||||
/>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M19.779 5.834a.03.03 0 01.036-.01.03.03 0 01.018.024c.005.04.009.08.01.12.012.61.015 1.221.01 1.832a4.443 4.443 0 01-.547 2.138 4.162 4.162 0 01-2.277 1.882c-.34.12-.691.189-1.053.205-3.392.004-6.784.004-10.177 0-.071-.004-.149-.04-.159-.11a.156.156 0 01-.001-.014c-.03-1.067.317-1.988 1.042-2.764a3.855 3.855 0 012.43-1.208c2.016-.016 4.033-.025 6.05-.026a8.74 8.74 0 001.437-.195 5.856 5.856 0 001.737-.632c.208-.11.409-.233.6-.368.205-.156.394-.33.566-.524.094-.116.186-.233.278-.35zM19.721 12.098c.025-.033.075-.026.081.015.01.564.016 1.127.016 1.69.005.435-.038.865-.132 1.29a4.071 4.071 0 01-1.76 2.498c-.499.32-1.041.53-1.628.627a7.12 7.12 0 01-.326.031c-3.417.004-6.834.004-10.25 0a.123.123 0 01-.114-.076.439.439 0 01-.021-.11 4.007 4.007 0 01.605-2.117 4.08 4.08 0 011.535-1.398 3.83 3.83 0 01.76-.293c.224-.06.457-.076.688-.078l5.907-.05a7.493 7.493 0 003.343-.89c.41-.24.775-.536 1.098-.887a4.68 4.68 0 00.198-.252z"
|
||||
fill="#191B20"
|
||||
fillRule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,30 @@
|
||||
'use client';
|
||||
|
||||
import { memo } from 'react';
|
||||
|
||||
import IconCombine, { type IconCombineProps } from '@/features/IconCombine';
|
||||
|
||||
import { SPACE_MULTIPLE, TEXT_MULTIPLE, TITLE } from '../style';
|
||||
import Color from './Color';
|
||||
import Mono from './Mono';
|
||||
import Text from './Text';
|
||||
|
||||
export interface CombineProps extends Omit<IconCombineProps, 'Icon' | 'Text'> {
|
||||
type?: 'color' | 'mono';
|
||||
}
|
||||
const Combine = memo<CombineProps>(({ type = 'mono', ...rest }) => {
|
||||
const Icon = type === 'color' ? Color : Mono;
|
||||
|
||||
return (
|
||||
<IconCombine
|
||||
Icon={Icon}
|
||||
Text={Text}
|
||||
aria-label={TITLE}
|
||||
spaceMultiple={SPACE_MULTIPLE}
|
||||
textMultiple={TEXT_MULTIPLE}
|
||||
{...rest}
|
||||
/>
|
||||
);
|
||||
});
|
||||
|
||||
export default Combine;
|
||||
@@ -0,0 +1,31 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 24 24"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M21.892 2.018a.043.043 0 01.051-.015.043.043 0 01.025.034c.008.056.012.112.015.169.016.856.02 1.712.014 2.568a6.228 6.228 0 01-.767 2.996 5.834 5.834 0 01-3.192 2.638c-.477.169-.97.265-1.476.288-4.755.005-9.51.005-14.264 0-.1-.006-.21-.056-.224-.156a.226.226 0 01-.001-.018c-.043-1.496.445-2.787 1.46-3.874A5.404 5.404 0 016.94 4.954c2.827-.023 5.653-.035 8.48-.036.679-.036 1.35-.127 2.014-.274a8.208 8.208 0 002.435-.885c.293-.155.573-.327.842-.517.287-.218.551-.463.793-.734.131-.162.261-.326.39-.49zM21.812 10.798c.034-.047.104-.036.113.021.015.79.022 1.58.022 2.369a7.908 7.908 0 01-.184 1.808c-.37 1.49-1.193 2.658-2.469 3.501a5.975 5.975 0 01-2.28.879 9.859 9.859 0 01-.458.044c-4.79.005-9.578.005-14.368 0a.172.172 0 01-.158-.107.616.616 0 01-.03-.155 5.616 5.616 0 01.849-2.967 5.719 5.719 0 012.15-1.959 5.381 5.381 0 011.067-.412c.314-.084.64-.106.964-.108l8.279-.07a10.5 10.5 0 004.686-1.247 6.666 6.666 0 001.539-1.244c.097-.115.19-.233.278-.353z"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,31 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 25 25"
|
||||
width={size}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path
|
||||
clipRule="evenodd"
|
||||
d="M20.297.7H5.289A4.496 4.496 0 00.793 5.195v15.007a4.496 4.496 0 004.496 4.496h15.008a4.496 4.496 0 004.496-4.496V5.196A4.497 4.497 0 0020.297.699zm-.518 5.134a.03.03 0 01.036-.01.03.03 0 01.018.024c.005.04.009.08.01.12.012.61.015 1.221.01 1.832a4.442 4.442 0 01-.547 2.138 4.162 4.162 0 01-2.277 1.882c-.34.12-.691.189-1.053.205-3.392.004-6.784.004-10.177 0-.071-.004-.149-.04-.159-.11a.156.156 0 01-.001-.014c-.03-1.067.317-1.988 1.042-2.764a3.855 3.855 0 012.43-1.208c2.016-.016 4.033-.025 6.05-.026.484-.025.963-.09 1.437-.195a5.856 5.856 0 001.737-.632c.208-.11.409-.233.6-.368.205-.156.394-.33.566-.524.094-.116.186-.233.278-.35zm.023 6.28c-.006-.042-.056-.05-.08-.016a4.68 4.68 0 01-.199.252 4.758 4.758 0 01-1.098.887 7.493 7.493 0 01-3.343.89l-5.907.05a2.735 2.735 0 00-.687.078 3.83 3.83 0 00-.76.293 4.08 4.08 0 00-1.536 1.398 4.007 4.007 0 00-.605 2.117c.002.037.01.074.021.11.022.048.06.074.113.076 3.417.004 6.834.004 10.25 0a7.12 7.12 0 00.327-.031 4.264 4.264 0 001.627-.627 4.071 4.071 0 001.761-2.498c.094-.425.137-.855.132-1.29 0-.563-.005-1.127-.016-1.69z"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
import type { IconType } from '@/types';
|
||||
|
||||
import { TITLE } from '../style';
|
||||
|
||||
const Icon: IconType = forwardRef(({ size = '1em', style, ...rest }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
fill="currentColor"
|
||||
fillRule="evenodd"
|
||||
height={size}
|
||||
ref={ref}
|
||||
style={{ flex: 'none', lineHeight: 1, ...style }}
|
||||
viewBox="0 0 110 24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
{...rest}
|
||||
>
|
||||
<title>{TITLE}</title>
|
||||
<path d="M107.893 2.31V21.69h-4.575l-7.666-11.19v11.19H91.17V2.31h4.544l7.697 11.622V2.31h4.482zM88.865 11.985c0 3.524-.721 6.079-2.164 7.666C85.279 21.217 82.96 22 79.746 22c-3.36 0-5.719-.742-7.08-2.226-1.36-1.483-2.04-4.08-2.04-7.79 0-3.523.712-6.068 2.134-7.635C74.202 2.783 76.53 2 79.746 2c3.359 0 5.718.742 7.079 2.226 1.36 1.483 2.04 4.07 2.04 7.759zm-12.798 4.142c.268.515.66.876 1.175 1.082.536.206 1.37.309 2.504.309 1.133 0 1.958-.103 2.473-.31a2.215 2.215 0 001.205-1.081c.206-.412.35-.948.433-1.608.103-.66.155-1.504.155-2.534 0-1.051-.052-1.907-.155-2.566-.082-.68-.227-1.226-.433-1.638a2.075 2.075 0 00-1.174-1.113c-.516-.227-1.35-.34-2.504-.34s-2 .113-2.535.34c-.515.206-.897.577-1.144 1.113-.206.412-.36.958-.463 1.638-.083.66-.124 1.514-.124 2.566 0 1.03.041 1.875.123 2.534.104.66.258 1.196.464 1.608zM64.379 14.488H61.04v-3.864h7.82v10.201c-.576.268-1.607.536-3.09.804-1.484.247-2.834.371-4.05.371-3.359 0-5.698-.773-7.017-2.318-1.298-1.546-1.947-4.112-1.947-7.697 0-3.463.762-5.987 2.287-7.574C56.568 2.804 59 2 62.338 2c1.216 0 2.298.03 3.246.093.969.041 1.71.113 2.226.216v4.204a36.188 36.188 0 00-2.442-.124 68.55 68.55 0 00-3.03-.061c-1.174 0-2.05.103-2.627.309a2.34 2.34 0 00-1.267 1.082c-.268.412-.464.968-.588 1.669-.103.68-.154 1.546-.154 2.597 0 1.01.051 1.854.154 2.534.103.68.268 1.226.495 1.639.288.556.69.948 1.205 1.174.536.227 1.36.34 2.473.34.371 0 .752-.01 1.144-.03.412-.042.814-.093 1.206-.155v-2.999zM40.567 15.447v6.244h-4.791V2.31h7.078c2.989 0 5.111.504 6.368 1.514 1.257 1.01 1.886 2.69 1.886 5.039 0 1.587-.34 2.885-1.02 3.895-.66.989-1.67 1.71-3.03 2.164l4.73 6.77h-5.75l-4.018-6.245h-1.453zm5.688-6.584c0-.824-.248-1.401-.742-1.731-.495-.33-1.38-.495-2.658-.495h-2.288v4.946h2.288c1.277 0 2.163-.196 2.658-.587.495-.412.742-1.123.742-2.133zM20.22 21.691h-5.04L22.353 2.31h4.977l6.986 19.381h-5.007l-1.02-3.245H21.24l-1.02 3.245zM24.733 7.07c-.165.577-.35 1.195-.557 1.855-.185.639-.505 1.69-.958 3.153l-.804 2.565h4.668l-.804-2.565a88.43 88.43 0 01-.803-2.473c-.268-.886-.516-1.731-.742-2.535zM17.363 2.31v4.327h-5.286v15.054H7.286V6.637H2V2.31h15.363z" />
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
|
||||
export default Icon;
|
||||
@@ -0,0 +1,72 @@
|
||||
---
|
||||
nav: Components
|
||||
group: Provider
|
||||
title: Targon
|
||||
atomId: Targon
|
||||
description: https://targon.com
|
||||
---
|
||||
|
||||
## Icons
|
||||
|
||||
```tsx
|
||||
import { Targon } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Targon size={64} />
|
||||
<Targon.Color size={64} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Text
|
||||
|
||||
```tsx
|
||||
import { Targon } from '@lobehub/icons';
|
||||
|
||||
export default () => <Targon.Text size={48} />;
|
||||
```
|
||||
|
||||
## Combine
|
||||
|
||||
```tsx
|
||||
import { Targon } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} align={'flex-start'}>
|
||||
<Targon.Combine size={64} />
|
||||
<Targon.Combine size={64} type={'color'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Avatars
|
||||
|
||||
```tsx
|
||||
import { Targon } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<Targon.Avatar size={64} />
|
||||
<Targon.Avatar size={64} shape={'square'} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
|
||||
## Colors
|
||||
|
||||
```tsx
|
||||
import { Targon } from '@lobehub/icons';
|
||||
import { Flexbox } from 'react-layout-kit';
|
||||
|
||||
import ColorPreview from '../components/ColorPreview';
|
||||
|
||||
export default () => (
|
||||
<Flexbox gap={16} horizontal>
|
||||
<ColorPreview color={Targon.colorPrimary} />
|
||||
</Flexbox>
|
||||
);
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import Avatar from './components/Avatar';
|
||||
import Color from './components/Color';
|
||||
import Combine from './components/Combine';
|
||||
import Mono from './components/Mono';
|
||||
import Text from './components/Text';
|
||||
import { COLOR_PRIMARY, TITLE } from './style';
|
||||
|
||||
export type CompoundedIcon = typeof Mono & {
|
||||
Avatar: typeof Avatar;
|
||||
Color: typeof Color;
|
||||
Combine: typeof Combine;
|
||||
Text: typeof Text;
|
||||
colorPrimary: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
const Icons = Mono as CompoundedIcon;
|
||||
Icons.Color = Color;
|
||||
Icons.Text = Text;
|
||||
Icons.Combine = Combine;
|
||||
Icons.Avatar = Avatar;
|
||||
Icons.colorPrimary = COLOR_PRIMARY;
|
||||
Icons.title = TITLE;
|
||||
|
||||
export default Icons;
|
||||
@@ -0,0 +1,4 @@
|
||||
export const TITLE = 'Targon';
|
||||
export const TEXT_MULTIPLE = 0.75;
|
||||
export const SPACE_MULTIPLE = 0.2;
|
||||
export const COLOR_PRIMARY = '#68C3FF';
|
||||
@@ -7,7 +7,7 @@ import IconAvatar, { IconAvatarProps } from '@/features/IconAvatar';
|
||||
import { IconType } from '@/types';
|
||||
|
||||
export interface IconCombineProps extends FlexboxProps {
|
||||
Icon: IconType | typeof IconAvatar;
|
||||
Icon?: IconType | typeof IconAvatar;
|
||||
Text?: IconType;
|
||||
color?: string;
|
||||
extra?: string;
|
||||
@@ -42,7 +42,7 @@ const IconCombine = forwardRef<HTMLDivElement, IconCombineProps>(
|
||||
},
|
||||
ref,
|
||||
) => {
|
||||
const logo = showLogo && (
|
||||
const logo = Icon && showLogo && (
|
||||
<Icon
|
||||
size={size}
|
||||
{...(iconProps as any)}
|
||||
|
||||
@@ -4,6 +4,7 @@ import Adobe from '@/Adobe';
|
||||
import Ai21 from '@/Ai21';
|
||||
import Ai360 from '@/Ai360';
|
||||
import AiMass from '@/AiMass';
|
||||
import AionLabs from '@/AionLabs';
|
||||
import AssemblyAI from '@/AssemblyAI';
|
||||
import Aws from '@/Aws';
|
||||
import Aya from '@/Aya';
|
||||
@@ -26,6 +27,7 @@ import Google from '@/Google';
|
||||
import Grok from '@/Grok';
|
||||
import Hunyuan from '@/Hunyuan';
|
||||
import Ideogram from '@/Ideogram';
|
||||
import Inflection from '@/Inflection';
|
||||
import InternLM from '@/InternLM';
|
||||
import Jina from '@/Jina';
|
||||
import LLaVA from '@/LLaVA';
|
||||
@@ -157,4 +159,6 @@ export const modelMappings: ModelMapping[] = [
|
||||
{ Icon: Voyage, keywords: ['voyage'] },
|
||||
{ Icon: AssemblyAI, keywords: ['assemblyai'] },
|
||||
{ Icon: Liquid, keywords: ['liquid', 'lfm'] },
|
||||
{ Icon: Inflection, keywords: ['inflection-'] },
|
||||
{ Icon: AionLabs, keywords: ['aion-'] },
|
||||
];
|
||||
|
||||
@@ -2,7 +2,9 @@ export { default as Adobe, type CompoundedIcon as AdobeProps } from './Adobe';
|
||||
export { default as AdobeFirefly, type CompoundedIcon as AdobeFireflyProps } from './AdobeFirefly';
|
||||
export { default as Ai21, type CompoundedIcon as Ai21Props } from './Ai21';
|
||||
export { default as Ai360, type CompoundedIcon as Ai360Props } from './Ai360';
|
||||
export { default as AiHubMix, type CompoundedIcon as AiHubMixProps } from './AiHubMix';
|
||||
export { default as AiMass, type CompoundedIcon as AiMassProps } from './AiMass';
|
||||
export { default as AionLabs, type CompoundedIcon as AionLabsProps } from './AionLabs';
|
||||
export { default as AiStudio, type CompoundedIcon as AiStudioProps } from './AiStudio';
|
||||
export { default as AlephAlpha, type CompoundedIcon as AlephAlphaProps } from './AlephAlpha';
|
||||
export { default as Alibaba, type CompoundedIcon as AlibabaProps } from './Alibaba';
|
||||
@@ -42,6 +44,7 @@ export { default as Copilot, type CompoundedIcon as CopilotProps } from './Copil
|
||||
export { default as Coqui, type CompoundedIcon as CoquiProps } from './Coqui';
|
||||
export { default as Coze, type CompoundedIcon as CozeProps } from './Coze';
|
||||
export { default as CrewAI, type CompoundedIcon as CrewAIrops } from './CrewAI';
|
||||
export { default as Crusoe, type CompoundedIcon as CrusoeProps } from './Crusoe';
|
||||
export { default as Cursor, type CompoundedIcon as CursorProps } from './Cursor';
|
||||
export { default as Dalle, type CompoundedIcon as DalleProps } from './Dalle';
|
||||
export { default as Dbrx, type CompoundedIcon as DbrxProps } from './Dbrx';
|
||||
@@ -56,6 +59,7 @@ export { default as Doubao, type CompoundedIcon as DoubaoProps } from './Doubao'
|
||||
export { default as DreamMachine, type CompoundedIcon as DreamMachineProps } from './DreamMachine';
|
||||
export { default as Exa, type CompoundedIcon as ExaProps } from './Exa';
|
||||
export { default as Fal, type CompoundedIcon as FalProps } from './Fal';
|
||||
export { default as Featherless, type CompoundedIcon as FeatherlessProps } from './Featherless';
|
||||
export { default as Fireworks, type CompoundedIcon as FireworksProps } from './Fireworks';
|
||||
export { default as FishAudio, type CompoundedIcon as FishAudioProps } from './FishAudio';
|
||||
export { default as Flora, type CompoundedIcon as FloraProps } from './Flora';
|
||||
@@ -86,7 +90,10 @@ export { default as Hunyuan, type CompoundedIcon as HunyuanProps } from './Hunyu
|
||||
export { default as Hyperbolic, type CompoundedIcon as HyperbolicProps } from './Hyperbolic';
|
||||
export { default as Ideogram, type CompoundedIcon as IdeogramProps } from './Ideogram';
|
||||
export { default as IFlyTekCloud, type CompoundedIcon as IFlyTekCloudProps } from './IFlyTekCloud';
|
||||
export { default as Inference, type CompoundedIcon as InferenceProps } from './Inference';
|
||||
export { default as Infermatic, type CompoundedIcon as InfermaticProps } from './Infermatic';
|
||||
export { default as Infinigence, type CompoundedIcon as InfinigenceProps } from './Infinigence';
|
||||
export { default as Inflection, type CompoundedIcon as InflectionProps } from './Inflection';
|
||||
export { default as InternLM, type CompoundedIcon as InternLMProps } from './InternLM';
|
||||
export { default as Jina, type CompoundedIcon as JinaProps } from './Jina';
|
||||
export { default as Kera, type CompoundedIcon as KeraProps } from './Kera';
|
||||
@@ -98,6 +105,7 @@ export { default as LangChain, type CompoundedIcon as LangChainProps } from './L
|
||||
export { default as Langfuse, type CompoundedIcon as LangfuseProps } from './Langfuse';
|
||||
export { default as LangGraph, type CompoundedIcon as LangGraphProps } from './LangGraph';
|
||||
export { default as LangSmith, type CompoundedIcon as LangSmithProps } from './LangSmith';
|
||||
export { default as LeptonAI, type CompoundedIcon as LeptonAIProps } from './LeptonAI';
|
||||
export { default as Lightricks, type CompoundedIcon as LightricksProps } from './Lightricks';
|
||||
export { default as Liquid, type CompoundedIcon as LiquidProps } from './Liquid';
|
||||
export { default as LiveKit, type CompoundedIcon as LiveKitProps } from './LiveKit';
|
||||
@@ -133,6 +141,7 @@ export { default as OpenChat, type CompoundedIcon as OpenChatProps } from './Ope
|
||||
export { default as OpenRouter, type CompoundedIcon as OpenRouterProps } from './OpenRouter';
|
||||
export { default as OpenWebUI, type CompoundedIcon as OpenWebUIProps } from './OpenWebUI';
|
||||
export { default as PaLM, type CompoundedIcon as PaLMProps } from './PaLM';
|
||||
export { default as Parasail, type CompoundedIcon as ParasailProps } from './Parasail';
|
||||
export { default as Perplexity, type CompoundedIcon as PerplexityProps } from './Perplexity';
|
||||
export { default as Phidata, type CompoundedIcon as PhidataProps } from './Phidata';
|
||||
export { default as Pika, type CompoundedIcon as PikaProps } from './Pika';
|
||||
@@ -161,6 +170,7 @@ export { default as StateCloud, type CompoundedIcon as StateCloudProps } from '.
|
||||
export { default as Stepfun, type CompoundedIcon as StepfunProps } from './Stepfun';
|
||||
export { default as Suno, type CompoundedIcon as SunoProps } from './Suno';
|
||||
export { default as Sync, type CompoundedIcon as SyncProps } from './Sync';
|
||||
export { default as Targon, type CompoundedIcon as TargonProps } from './Targon';
|
||||
export { default as Tencent, type CompoundedIcon as TencentProps } from './Tencent';
|
||||
export { default as TencentCloud, type CompoundedIcon as TencentCloudProps } from './TencentCloud';
|
||||
export { default as Tiangong, type CompoundedIcon as TiangongProps } from './Tiangong';
|
||||
|
||||
+190
@@ -98,6 +98,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'AI360',
|
||||
},
|
||||
{
|
||||
color: '#006FFB',
|
||||
desc: 'https://aihubmix.com',
|
||||
docsUrl: 'ai-hub-mix',
|
||||
fullTitle: 'AiHubMix (推理时代)',
|
||||
group: 'provider',
|
||||
id: 'AiHubMix',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: true,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'AiHubMix',
|
||||
},
|
||||
{
|
||||
color: '#fff',
|
||||
desc: 'https://ai-maas.wair.ac.cn',
|
||||
@@ -136,6 +155,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'Google AI Studio',
|
||||
},
|
||||
{
|
||||
color: '#0f172a',
|
||||
desc: 'https://aionlabs.ai',
|
||||
docsUrl: 'aion-labs',
|
||||
fullTitle: 'AionLabs',
|
||||
group: 'model',
|
||||
id: 'AionLabs',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: true,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'AionLabs',
|
||||
},
|
||||
{
|
||||
color: '#fff',
|
||||
desc: 'https://aleph-alpha.com',
|
||||
@@ -864,6 +902,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'CrewAI',
|
||||
},
|
||||
{
|
||||
color: '#fff',
|
||||
desc: 'https://crusoe.ai',
|
||||
docsUrl: 'crusoe',
|
||||
fullTitle: 'Crusoe',
|
||||
group: 'provider',
|
||||
id: 'Crusoe',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: true,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'Crusoe',
|
||||
},
|
||||
{
|
||||
color: '#000',
|
||||
desc: 'https://cursor.com',
|
||||
@@ -1132,6 +1189,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'Fal',
|
||||
},
|
||||
{
|
||||
color: '#FFE184',
|
||||
desc: 'https://featherless.ai',
|
||||
docsUrl: 'featherless',
|
||||
fullTitle: 'Featherless.ai',
|
||||
group: 'provider',
|
||||
id: 'Featherless',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: true,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'featherless.ai',
|
||||
},
|
||||
{
|
||||
color: '#5019C5',
|
||||
desc: 'https://fireworks.ai',
|
||||
@@ -1649,6 +1725,44 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'Ideogram',
|
||||
},
|
||||
{
|
||||
color: '#000',
|
||||
desc: 'https://inference.net',
|
||||
docsUrl: 'inference',
|
||||
fullTitle: 'Inference',
|
||||
group: 'provider',
|
||||
id: 'Inference',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: false,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'Inference',
|
||||
},
|
||||
{
|
||||
color: '#4334F5',
|
||||
desc: 'https://infermatic.ai',
|
||||
docsUrl: 'infermatic',
|
||||
fullTitle: 'Infermatic',
|
||||
group: 'provider',
|
||||
id: 'Infermatic',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: true,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'Infermatic',
|
||||
},
|
||||
{
|
||||
color: '#7952ea',
|
||||
desc: 'https://cloud.infini-ai.com',
|
||||
@@ -1668,6 +1782,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'Infinigence',
|
||||
},
|
||||
{
|
||||
color: '#038247',
|
||||
desc: 'https://inflection.ai',
|
||||
docsUrl: 'inflection',
|
||||
fullTitle: 'Inflection',
|
||||
group: 'model',
|
||||
id: 'Inflection',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: false,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'Inflection',
|
||||
},
|
||||
{
|
||||
color: '#1B3882',
|
||||
desc: 'https://internlm.intern-ai.org.cn',
|
||||
@@ -1898,6 +2031,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'Langfuse',
|
||||
},
|
||||
{
|
||||
color: '#2F80ED',
|
||||
desc: 'https://lepton.ai',
|
||||
docsUrl: 'lepton-ai',
|
||||
fullTitle: 'LeptonAI',
|
||||
group: 'provider',
|
||||
id: 'LeptonAI',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: true,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'LeptonAI',
|
||||
},
|
||||
{
|
||||
color: '#000',
|
||||
desc: 'https://lightricks.com',
|
||||
@@ -2568,6 +2720,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'PaLM',
|
||||
},
|
||||
{
|
||||
color: '#000',
|
||||
desc: 'https://parasail.io/',
|
||||
docsUrl: 'parasail',
|
||||
fullTitle: 'Parasail',
|
||||
group: 'provider',
|
||||
id: 'Parasail',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: false,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'Parasail',
|
||||
},
|
||||
{
|
||||
color: '#22B8CD',
|
||||
desc: 'https://perplexity.ai',
|
||||
@@ -3104,6 +3275,25 @@ const toc: IconToc[] = [
|
||||
},
|
||||
title: 'Technology Innovation Institute',
|
||||
},
|
||||
{
|
||||
color: '#68C3FF',
|
||||
desc: 'https://targon.com',
|
||||
docsUrl: 'targon',
|
||||
fullTitle: 'Targon',
|
||||
group: 'provider',
|
||||
id: 'Targon',
|
||||
param: {
|
||||
hasAvatar: true,
|
||||
hasBrand: false,
|
||||
hasBrandColor: false,
|
||||
hasColor: true,
|
||||
hasCombine: true,
|
||||
hasText: true,
|
||||
hasTextCn: false,
|
||||
hasTextColor: false,
|
||||
},
|
||||
title: 'Targon',
|
||||
},
|
||||
{
|
||||
color: '#0052D9',
|
||||
desc: 'https://tencent.com',
|
||||
|
||||
Reference in New Issue
Block a user