CardProductSkeleton
The CardProductSkeleton component acts as a placeholder for CardProduct and match the dimensions and variants. They can be used temporarily while a page is loading or as a static element to reflect an empty state.
Component
Storybook
Storybook - CardProductSkeleton DocumentationFigma Demo
Guidelines
Variations
The CardProductSkeleton matches the dimensions and variants of the CardProduct component. As new card types are explored, other sizes may be added to the component.
- default: The default CardProduct skeleton.
 - carousel: The carousel CardProduct skeleton.
 - list: The list CardProduct skeleton.
 
Usage
Skeleton card dimensions should match their actual component counterparts so that it isn’t jarring when real cards load in.
Component Specs
API
- testId: 
string| Default:undefined
A test ID for the component, useful for testing purposes. - variant: 
'default' | 'carousel' | 'list'| Default:'default'The variant of the CardProductSkeleton to render. 
Example
<script lang="ts">
	import { CardProductSkeleton } from '@getprovi/craft-svelte';
	let loading = true;
</script>
{#if loading}
	<CardProductSkeleton />
	<CardProductSkeleton variant="carousel" testId="test-carousel-skeleton" />
	<CardProductSkeleton variant="list" />
{:else}
	<CardProduct />
	<CardProduct variant="carousel" />
	<CardProduct variant="list" />
{/if}
 Craft Design System