diff --git a/fwt/components/Column/Column.tsx b/fwt/components/Column/Column.tsx index 9e84a11..27e0e05 100644 --- a/fwt/components/Column/Column.tsx +++ b/fwt/components/Column/Column.tsx @@ -1,7 +1,8 @@ +import type { JSXElement } from 'solid-js' import './Column.sass' interface Props { - children: any + children: JSXElement content: 'top' | 'center' | 'right' | 'split' | 'spaced' gap?: number } diff --git a/fwt/components/Footer/Footer.tsx b/fwt/components/Footer/Footer.tsx index ca71e92..b5fe510 100644 --- a/fwt/components/Footer/Footer.tsx +++ b/fwt/components/Footer/Footer.tsx @@ -1,7 +1,8 @@ import './Footer.sass' +import type { JSXElement } from 'solid-js' interface Props { - children: any + children: JSXElement } export default (props: Props) => { diff --git a/fwt/components/HTML/HTML.tsx b/fwt/components/HTML/HTML.tsx index b5ead9e..3fd7566 100644 --- a/fwt/components/HTML/HTML.tsx +++ b/fwt/components/HTML/HTML.tsx @@ -4,7 +4,7 @@ interface Props { title: string name: string description: string - children: any + children: HTMLElement font?: string } diff --git a/fwt/components/Input/Input.sass b/fwt/components/Input/Input.sass new file mode 100644 index 0000000..fc8e6cf --- /dev/null +++ b/fwt/components/Input/Input.sass @@ -0,0 +1,3 @@ +.input + font-size: 1rem + padding: 0.5rem 1rem diff --git a/fwt/components/Input/Input.tsx b/fwt/components/Input/Input.tsx new file mode 100644 index 0000000..c0f7c97 --- /dev/null +++ b/fwt/components/Input/Input.tsx @@ -0,0 +1,27 @@ +import './Input.sass' +import { createSignal } from 'solid-js' + +interface Props { + placeholder?: string + value?: string + onChange?: (value: string) => void +} + +export default (props: Props) => { + const [inputValue, setInputValue] = createSignal(props.value || '') + + const handleChange = (event: Event) => { + const target = event.target as HTMLInputElement + const newValue = target.value + setInputValue(newValue) + if (props.onChange) { + props.onChange(newValue) + } + } + + return ( + <> + + + ) +} diff --git a/fwt/components/Navbar/Navbar.tsx b/fwt/components/Navbar/Navbar.tsx index 81f39c4..3b0c688 100644 --- a/fwt/components/Navbar/Navbar.tsx +++ b/fwt/components/Navbar/Navbar.tsx @@ -4,7 +4,7 @@ import Row from '../Row/Row' interface Props { transparent?: boolean - children: any + children: HTMLElement } export default (props: Props) => { diff --git a/fwt/components/Row/Row.tsx b/fwt/components/Row/Row.tsx index f5d1b97..0e3176b 100644 --- a/fwt/components/Row/Row.tsx +++ b/fwt/components/Row/Row.tsx @@ -1,8 +1,8 @@ import './Row.sass' -import { Show } from 'solid-js' +import { Show, type JSXElement } from 'solid-js' interface Props { - children: any + children: JSXElement content: 'left' | 'center' | 'right' | 'split' | 'spaced' | 'even' gap?: number } @@ -17,9 +17,7 @@ export default (props: Props) => { -
- {props.children} -
+
{props.children}
)