diff --git a/apps/sveltekit-example-app/src/routes/sign-up/+page.svelte b/apps/sveltekit-example-app/src/routes/sign-up/+page.svelte index 0b77f48..7e3bc43 100644 --- a/apps/sveltekit-example-app/src/routes/sign-up/+page.svelte +++ b/apps/sveltekit-example-app/src/routes/sign-up/+page.svelte @@ -3,7 +3,7 @@ import { zodClient } from 'sveltekit-superforms/adapters' import { schema } from '$lib' - import { Button } from '@packages/ui-svelte/atoms/button' + import { Button } from '@packages/ui-svelte' import type { PageData } from './$types.js' diff --git a/packages/ui-svelte/package.json b/packages/ui-svelte/package.json index 97e15cc..80f630e 100644 --- a/packages/ui-svelte/package.json +++ b/packages/ui-svelte/package.json @@ -4,7 +4,11 @@ "description": "UI Component Library for Svelte and SvelteKit", "type": "module", "exports": { - "./atoms/*": "./src/components/atoms/*/index.ts", + ".": { + "types": "./src/index.ts", + "svelte": "./src/index.ts", + "default": "./src/index.ts" + }, "./styles/*": "./src/styles/*", "./tailwind.config.js": "./tailwind.config.js" }, diff --git a/packages/ui-svelte/src/components/atoms/input/index.ts b/packages/ui-svelte/src/components/atoms/input/index.ts new file mode 100644 index 0000000..6a9ca67 --- /dev/null +++ b/packages/ui-svelte/src/components/atoms/input/index.ts @@ -0,0 +1,29 @@ +import Root from './input.svelte' + +export type FormInputEvent = T & { + currentTarget: EventTarget & HTMLInputElement +} + +export interface InputEvents { + blur: FormInputEvent + change: FormInputEvent + click: FormInputEvent + focus: FormInputEvent + focusin: FormInputEvent + focusout: FormInputEvent + keydown: FormInputEvent + keypress: FormInputEvent + keyup: FormInputEvent + mouseover: FormInputEvent + mouseenter: FormInputEvent + mouseleave: FormInputEvent + paste: FormInputEvent + input: FormInputEvent + wheel: FormInputEvent +} + +export { + Root, + // + Root as Input, +} diff --git a/packages/ui-svelte/src/components/atoms/input/input.svelte b/packages/ui-svelte/src/components/atoms/input/input.svelte new file mode 100644 index 0000000..58724bb --- /dev/null +++ b/packages/ui-svelte/src/components/atoms/input/input.svelte @@ -0,0 +1,41 @@ + + + diff --git a/packages/ui-svelte/src/index.ts b/packages/ui-svelte/src/index.ts new file mode 100644 index 0000000..3b83cae --- /dev/null +++ b/packages/ui-svelte/src/index.ts @@ -0,0 +1,44 @@ +/** + * src/components/atoms/accordion + */ +export { + Accordion, + AccordionContent, + AccordionItem, + AccordionTrigger, +} from './components/atoms/accordion/index.js' + +/** + * src/components/atoms/button + */ +export { + Button, + type ButtonEvents, + type ButtonProps, + buttonVariants, +} from './components/atoms/button/index.js' + +/** + * src/components/atoms/form + */ +export { + FormField, + FormControl, + FormDescription, + FormLabel, + FormFieldErrors, + FormFieldset, + FormLegend, + FormElementField, + FormButton, +} from './components/atoms/form/index.js' + +/** + * src/components/atoms/input + */ +export { Input } from './components/atoms/input/index.js' + +/** + * src/components/atoms/label + */ +export { Label } from './components/atoms/label/index.js'