diff --git a/src/hooks/auth/login.hook.ts b/src/hooks/auth/login.hook.ts new file mode 100644 index 0000000..8b4cb7d --- /dev/null +++ b/src/hooks/auth/login.hook.ts @@ -0,0 +1,21 @@ +import { createSignal } from "solid-js"; +import { createStore } from "solid-js/store"; + +const useLogin = () => { + const [loading, setLoading] = createSignal(false); + const [form, setForm] = createStore({ + username: "", + password: "", + }); + const handleInput = (ev: any) => { + setForm([ev.currentTarget.name], ev.currentTarget.value); + }; + const handleLogin = (ev: any) => { + ev.preventDefault(); + setLoading(true); + }; + + return { handleInput, loading, handleLogin, form }; +}; + +export default useLogin; diff --git a/src/index.css b/src/index.css index e69de29..9697aeb 100644 --- a/src/index.css +++ b/src/index.css @@ -0,0 +1,8 @@ +form { + display: flex; + flex-direction: column; + flex-wrap: nowrap; + justify-content: center; + align-items: center; + align-content: center; +} diff --git a/src/routes/views/auth/Login.tsx b/src/routes/views/auth/Login.tsx index cb560ac..0e316a5 100644 --- a/src/routes/views/auth/Login.tsx +++ b/src/routes/views/auth/Login.tsx @@ -1,10 +1,39 @@ -import type { Component } from "solid-js"; +import { Component, Show } from "solid-js"; +import useLogin from "../../../hooks/auth/login.hook"; +const { handleLogin, handleInput, loading, form } = useLogin(); const Login: Component = () => { - return ( + return ( +