Column visibility

const view = table.createView([
    { index: 0, name: 'ID', isVisible: false },
    { index: 1, name: 'Name' },
    { index: 2, name: 'Email' },
    { index: 3, name: 'Comment' },
])
{#each view.columns as column}
    <button type="button" 
        class:active={column.isVisible}
        onclick={() => column.toggle()}
    >
        {column.name}
    </button>
{/each}
ID
Name
Email
Comment
1id laborEliseo@gardner.biz

laudantium enim quasi est quidem magnam ...

2quo veroJayne_Kuhic@sydney.com

est natus enim nihil est dolore omnis vo...

3odio adiNikita@garfield.biz

quia molestiae reprehenderit quasi asper...

4alias odLew@alysha.tv

non et atque occaecati deserunt quas acc...

5vero eaqHayden@althea.biz

harum non quasi et ratione tempore iure ...

6et fugitPresley.Mueller@myrl.com

doloribus at sed quis culpa deserunt con...

7repellatDallas@ole.me

maiores sed dolores similique labore et ...

8et omnisMallory_Kunze@marie.org

ut voluptatem corrupti velit ad voluptat...

9providenMeghan_Littel@rene.us

sapiente assumenda molestiae atque adipi...

10eaque etCarmen_Keeling@caroline.name

voluptate iusto quis nobis reprehenderit...

11fugit laVeronica_Goodwin@timmothy.net

ut dolorum nostrum id quia aut est fuga ...

12modi ut Oswald.Vandervort@leanne.org

expedita maiores dignissimos facilis ips...

13aut inveKariane@jadyn.tv

fuga eos qui dolor rerum inventore corpo...

14et officNathan@solon.io

vel quae voluptas qui exercitationem vol...

15debitis Maynard.Hodkiewicz@roberta.com

nihil ut voluptates blanditiis autem odi...

16perferenChristine@ayana.info

iste ut laborum aliquid velit facere ita...

17eos est Preston_Hudson@blaise.tv

consequatur necessitatibus totam sed sit...

18aut et tVincenza_Klocko@albertha.name

veritatis voluptates necessitatibus maio...

19sed impeMadelynn.Gorczany@darion.biz

doloribus est illo sed minima aperiam ut...

20molestiaMariana_Orn@preston.org

qui harum consequatur fugiat et eligendi...