https://www.kikk.be/2017/en/home
http://www.espn.com/espn/feature/story/_/id/19742921/espn-body-issue-2017#!
| 'use server'; | |
| import { signInSchema } from '@/schema'; | |
| import { ZodType } from 'zod'; | |
| export async function action<T>( | |
| formData: FormData, | |
| schema: ZodType<T> | |
| ): Promise<TFormState<T>> { | |
| const data = Object.fromEntries(formData.entries()); |
| import { useState } from 'react'; | |
| import useValidation from './hooks/useValidation'; | |
| import Joi from 'joi'; | |
| const schema = Joi.object({ | |
| email: Joi.string() | |
| .email({ tlds: { allow: false } }) | |
| .required(), | |
| password: Joi.string().min(8).required(), | |
| }); |
| sass/ | |
| | | |
| |– abstracts/ | |
| | |– _variables.scss # Sass Variables | |
| | |– _functions.scss # Sass Functions | |
| | |– _mixins.scss # Sass Mixins | |
| | |– _placeholders.scss # Sass Placeholders | |
| | | |
| |– base/ | |
| | |– _reset.scss # Reset/normalize |
| var SELECTORS = { | |
| state: [ | |
| 'inverse', | |
| 'toggled', | |
| 'switched', | |
| 'original', | |
| 'initial', | |
| 'identified', | |
| 'disabled', | |
| 'loading', |