From aa3f7f819bb9bba5b215089618c7394890dd9085 Mon Sep 17 00:00:00 2001 From: Nikita Grevtsov Date: Thu, 6 Aug 2026 18:13:00 +0500 Subject: [PATCH] =?UTF-8?q?feat(Input):=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=20=D1=80=D0=B0=D0=B7=D0=BC=D0=B5=D1=80=20med?= =?UTF-8?q?ium?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Input/InputTextBase/types.ts | 2 +- src/components/Input/InputTextBase/useInputStyles.ts | 1 + src/components/Input/stories/InputGroup.stories.tsx | 2 +- src/components/Input/stories/InputText.stories.tsx | 2 +- src/theme/assets/InputSize/index.ts | 3 ++- src/theme/assets/InputSize/medium.json | 1 + 6 files changed, 7 insertions(+), 4 deletions(-) create mode 100644 src/theme/assets/InputSize/medium.json diff --git a/src/components/Input/InputTextBase/types.ts b/src/components/Input/InputTextBase/types.ts index 34f29fa5..6cc689b3 100644 --- a/src/components/Input/InputTextBase/types.ts +++ b/src/components/Input/InputTextBase/types.ts @@ -50,7 +50,7 @@ export interface InputTextBaseProps extends Omit< * Можно передать число. Если переданное число меньше размера base, будет использован размер base. * @default 'base' */ - size?: 'base' | 'large' | 'xlarge' | number + size?: 'base' | 'medium' | 'large' | 'xlarge' | number } export type RenderTextInputArgs = TextInputProps & { inputRef: Ref } diff --git a/src/components/Input/InputTextBase/useInputStyles.ts b/src/components/Input/InputTextBase/useInputStyles.ts index 0d751e34..a4fa3689 100644 --- a/src/components/Input/InputTextBase/useInputStyles.ts +++ b/src/components/Input/InputTextBase/useInputStyles.ts @@ -20,6 +20,7 @@ export const useInputContainerMinHeight = ( const containerMinHeight = StyleSheet.create(({ theme }) => ({ base: { minHeight: theme.InputSize.base['min-height'] }, + medium: { minHeight: theme.InputSize.medium['min-height'] }, large: { minHeight: theme.InputSize.large['min-height'] }, xlarge: { minHeight: theme.InputSize.xlarge['min-height'] }, })) diff --git a/src/components/Input/stories/InputGroup.stories.tsx b/src/components/Input/stories/InputGroup.stories.tsx index f388ba9b..63f28ecf 100644 --- a/src/components/Input/stories/InputGroup.stories.tsx +++ b/src/components/Input/stories/InputGroup.stories.tsx @@ -18,7 +18,7 @@ const meta: Meta = { }, argTypes: { state: { control: 'radio', options: ['default', 'danger'] }, - size: { control: 'radio', options: ['base', 'large', 'xlarge'] }, + size: { control: 'radio', options: ['base', 'medium', 'large', 'xlarge'] }, }, render: (args) => { const [, updateArgs] = useArgs() diff --git a/src/components/Input/stories/InputText.stories.tsx b/src/components/Input/stories/InputText.stories.tsx index 06e5b929..8d7fdb7f 100644 --- a/src/components/Input/stories/InputText.stories.tsx +++ b/src/components/Input/stories/InputText.stories.tsx @@ -26,7 +26,7 @@ const meta: Meta = { options: ['true', 'false', 'toggleable'], mapping: { true: true, false: false, toggleable: 'toggleable' }, }, - size: { control: 'radio', options: ['base', 'large', 'xlarge'] }, + size: { control: 'radio', options: ['base', 'medium', 'large', 'xlarge'] }, }, render: (args) => { const [, updateArgs] = useArgs() diff --git a/src/theme/assets/InputSize/index.ts b/src/theme/assets/InputSize/index.ts index a54be127..92ac57b3 100644 --- a/src/theme/assets/InputSize/index.ts +++ b/src/theme/assets/InputSize/index.ts @@ -1,5 +1,6 @@ import base from './base.json' import large from './large.json' +import medium from './medium.json' import xlarge from './xlarge.json' -export const InputSize = { base, large, xlarge } +export const InputSize = { base, medium, large, xlarge } diff --git a/src/theme/assets/InputSize/medium.json b/src/theme/assets/InputSize/medium.json new file mode 100644 index 00000000..3bf8e2c7 --- /dev/null +++ b/src/theme/assets/InputSize/medium.json @@ -0,0 +1 @@ +{ "min-height": 42 }