Build out components #45
3 changed files with 31 additions and 0 deletions
18
src/lib/components/Feedback/Skeleton.stories.svelte
Normal file
18
src/lib/components/Feedback/Skeleton.stories.svelte
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
<script module lang="ts">
|
||||||
|
import { defineMeta } from '@storybook/addon-svelte-csf';
|
||||||
|
import Skeleton from './Skeleton.svelte';
|
||||||
|
import type { ComponentProps } from 'svelte';
|
||||||
|
|
||||||
|
const { Story } = defineMeta({
|
||||||
|
title: 'Feedback/Skeleton',
|
||||||
|
component: Skeleton,
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
{#snippet template(props: ComponentProps<typeof Skeleton>)}
|
||||||
|
<Skeleton {...props} />
|
||||||
|
{/snippet}
|
||||||
|
|
||||||
|
<Story name="Default" args={{ class: 'h-32 w-32' }} children={template} />
|
||||||
|
|
||||||
|
<Story name="Circle" args={{ class: 'h-32 w-32 rounded-full' }} children={template} />
|
||||||
12
src/lib/components/Feedback/Skeleton.svelte
Normal file
12
src/lib/components/Feedback/Skeleton.svelte
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
<script lang="ts">
|
||||||
|
import type { Snippet } from 'svelte';
|
||||||
|
import type { SvelteHTMLElements } from 'svelte/elements';
|
||||||
|
import { twMerge } from 'tailwind-merge';
|
||||||
|
|
||||||
|
type Props = {
|
||||||
|
children?: Snippet;
|
||||||
|
} & SvelteHTMLElements['div'];
|
||||||
|
let { children, class: className, ...props }: Props = $props();
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div {...props} class={twMerge('skeleton', className)}>{@render children?.()}</div>
|
||||||
|
|
@ -2,4 +2,5 @@ export { default as Alert } from './Alert.svelte';
|
||||||
export { default as Loader } from './Loader.svelte';
|
export { default as Loader } from './Loader.svelte';
|
||||||
export { default as Loading } from './Loading.svelte';
|
export { default as Loading } from './Loading.svelte';
|
||||||
export { default as Progress } from './Progress.svelte';
|
export { default as Progress } from './Progress.svelte';
|
||||||
|
export { default as Skeleton } from './Skeleton.svelte';
|
||||||
export { default as Tooltip } from './Tooltip.svelte';
|
export { default as Tooltip } from './Tooltip.svelte';
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue