File tree Expand file tree Collapse file tree 2 files changed +43
-11
lines changed
src/lib/holocene/skeleton Expand file tree Collapse file tree 2 files changed +43
-11
lines changed Original file line number Diff line number Diff line change 3
3
import Skeleton from ' ./index.svelte' ;
4
4
import SkeletonTable from ' ./table.svelte' ;
5
5
6
+ let rows: number = 10 ;
7
+ let columns: number = 4 ;
8
+ let columnWidths: number [] = [25 , 25 , 25 , 25 ];
9
+
10
+ $ : {
11
+ columnWidths = Array .from (new Array (columns )).fill (100 / columns );
12
+ }
6
13
export let Hst: HST ;
7
14
</script >
8
15
16
23
</Hst .Variant >
17
24
18
25
<Hst .Variant title =" A Table Skeleton Loader" >
19
- <SkeletonTable />
26
+ <SkeletonTable bind:rows bind:columns bind:columnWidths />
27
+ </Hst .Variant >
28
+
29
+ <Hst .Variant title =" A Table Skeleton Loader with column widths" >
30
+ <SkeletonTable columns ={4 }>
31
+ <svelte:fragment slot =" headers" >
32
+ <th class =" w-1/4" >Header 1</th >
33
+ <th class =" w-1/2" >Header 2</th >
34
+ <th >Header 3</th >
35
+ <th class =" w-1/12" >Header 4</th >
36
+ </svelte:fragment >
37
+ </SkeletonTable >
20
38
</Hst .Variant >
39
+
40
+ <svelte:fragment slot =" controls" >
41
+ <Hst .Number bind:value ={rows } title =" Rows: " />
42
+ <Hst .Number bind:value ={columns } title =" Columns: " />
43
+ </svelte:fragment >
21
44
</Hst .Story >
Original file line number Diff line number Diff line change 1
1
<script lang =" ts" >
2
2
import Table from ' $lib/holocene/table/table.svelte' ;
3
+ import TableHeaderRow from ' ../table/table-header-row.svelte' ;
4
+ import TableRow from ' ../table/table-row.svelte' ;
3
5
import Skeleton from ' ./index.svelte' ;
4
6
5
7
export let rows = 10 ;
8
+ export let columns = 4 ;
9
+ export let columnWidths: number [] = new Array (columns ).fill (100 / columns );
6
10
</script >
7
11
8
- <Table class =" w-full border" variant =" fancy" >
9
- <tr slot =" headers" class =" h-8" >
10
- <th />
11
- </tr >
12
+ <Table class =" w-full table-fixed" variant =" fancy" >
13
+ <TableHeaderRow slot =" headers" class =" h-8" >
14
+ <slot name =" headers" >
15
+ {#each Array .from (new Array (columns )) as _column , i }
16
+ <th style ="width: {columnWidths [i ]}%" />
17
+ {/each }
18
+ </slot >
19
+ </TableHeaderRow >
12
20
{#each Array .from (Array (rows ).keys ()) as _row }
13
- <tr class =" flex items-center gap-4 p-3" >
14
- <Skeleton class =" h-5 w-44" />
15
- <Skeleton class =" h-5" />
16
- <Skeleton class =" h-5 w-96" />
17
- <Skeleton class =" h-5 w-96" />
18
- </tr >
21
+ <TableRow >
22
+ {#each Array .from (new Array (columns )) as _column }
23
+ <td style =" padding-right: 0.5rem;" >
24
+ <Skeleton class =" h-4 w-full" />
25
+ </td >
26
+ {/each }
27
+ </TableRow >
19
28
{/each }
20
29
</Table >
You can’t perform that action at this time.
0 commit comments