From a3c1a7c7b73eae475574a13b6ff9c75ff78cbcb6 Mon Sep 17 00:00:00 2001 From: Jonas Dellinger Date: Sun, 5 Jun 2022 15:06:06 +0200 Subject: [PATCH] feat(textfield): extract TextField component --- src/deck-components/TextField.tsx | 29 +++++++++++++++++++++++++++++ src/deck-components/index.ts | 1 + 2 files changed, 30 insertions(+) create mode 100644 src/deck-components/TextField.tsx diff --git a/src/deck-components/TextField.tsx b/src/deck-components/TextField.tsx new file mode 100644 index 0000000..868a5dd --- /dev/null +++ b/src/deck-components/TextField.tsx @@ -0,0 +1,29 @@ +import { ChangeEventHandler, ReactNode, VFC } from 'react'; + +import { CommonUIModule, Module } from '../webpack'; + +export interface TextFieldProps { + label?: ReactNode; + requiredLabel?: ReactNode; + description?: ReactNode; + bShowCopyAction?: boolean; + bShowClearAction?: boolean; + bAlwaysShowClearAction?: boolean; + bIsPassword?: boolean; + rangeMin?: number; + rangeMax?: number; + mustBeNumeric?: boolean; + mustBeURL?: boolean; + mustBeEmail?: boolean; + focusOnMount?: boolean; + tooltip?: string; + inlineControls?: ReactNode; + onChange?(event: ChangeEventHandler): void; + value?: string; +} + +export const TextField = Object.values(CommonUIModule).find( + (mod: Module) => mod?.validateUrl && mod?.validateEmail, +) as VFC; + +console.log(TextField); diff --git a/src/deck-components/index.ts b/src/deck-components/index.ts index e95cad2..bc321f9 100755 --- a/src/deck-components/index.ts +++ b/src/deck-components/index.ts @@ -8,4 +8,5 @@ export * from './Slider'; export * from './Spinner'; export * from './static-classes'; export * from './SteamSpinner'; +export * from './TextField'; export * from './Toggle';