/
kaws
/
ui-kit-ce
Обзор
Документация
Войти
/
kaws
/
ui-kit-ce
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
packages/button/src/interfaces/index.ts
66 строк
2 KB
Kalinichenko.N.A
feat(loading-button): реализован новый компонент LoadingButton
17 фев 2025, 17:19
17 фев 2025, 17:19
a139ee5
Код
Авторство
О чём код?
import React from 'react' import { Classes } from '../classes' import { ElementSizeType, ComponentPropsWithAttributes } from '@v-uik/common' import { TextProps } from '@v-uik/typography' export const ButtonKinds = { contained: 'contained', outlined: 'outlined', ghost: 'ghost', } as const export type TButtonKinds = keyof typeof ButtonKinds export const ButtonColor = { primary: 'primary', secondary: 'secondary', error: 'error', } as const export type TButtonColor = keyof typeof ButtonColor export interface ButtonBaseProps { /** * JSS-классы для стилизации. */ classes?: Partial<Classes> /** * Тип кнопки. * Primary - стандартная, * ghost - текстовая, * outlined - контурная. */ kind?: TButtonKinds /** * Цветовая схема кнопки. * Primary - по умолчанию, * secondary - черно-белая, * error - предупреждающая необратимое действие. */ color?: TButtonColor /** * Размер кнопки. */ size?: ElementSizeType /** * Растянуть кнопку во всю ширину родительского контейнера. */ fullWidth?: boolean /** * Настраивает состояние кнопки отключено. В этом состоянии пользователь не может * взаимодействовать с кнопкой. */ disabled?: boolean /** * Свойства компонента Text. */ textProps?: ComponentPropsWithAttributes<TextProps> /** * Вспомогательный компонент перед дочерним `JSX`. */ prefixIcon?: React.ReactNode /** * Вспомогательный компонент после дочернего `JSX`. */ suffixIcon?: React.ReactNode }