Skip to content

Commit c83a5cc

Browse files
committed
docs: Migrate from +page.md to +page.svelte
1 parent 00e03bd commit c83a5cc

7 files changed

Lines changed: 190 additions & 153 deletions

File tree

sites/docs/src/routes/docs/svelte-state/TimerState/+page.svelte

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
<script lang="ts">
2-
import { subDays, subMonths } from 'date-fns';
3-
4-
import { Switch } from 'svelte-ux';
52
import { TimerState } from '@layerstack/svelte-state';
3+
import { Switch } from 'svelte-ux';
4+
65
import Preview from '$docs/Preview.svelte';
76
import Code from '$docs/Code.svelte';
87

sites/docs/src/routes/docs/svelte-state/selectionState/+page.md

Lines changed: 0 additions & 107 deletions
This file was deleted.
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
<script lang="ts">
2+
import { SelectionState } from '@layerstack/svelte-state';
3+
import { Checkbox, Radio } from 'svelte-ux';
4+
5+
import Preview from '$docs/Preview.svelte';
6+
import Code from '$docs/Code.svelte';
7+
8+
const data = Array.from({ length: 5 }).map((_, i) => {
9+
return {
10+
id: i + 1,
11+
};
12+
});
13+
14+
const selection = new SelectionState();
15+
const selection2 = new SelectionState({ initial: [3, 4, 5] });
16+
const selection3 = new SelectionState({ all: data.map((d) => d.id) });
17+
const selection4 = new SelectionState({ single: true });
18+
const selection5 = new SelectionState({ max: 3 });
19+
</script>
20+
21+
<h1>Usage</h1>
22+
23+
<Code
24+
source={`import { SelectionState } from '@layerstack/svelte-state';
25+
26+
const state = new SelectionState();
27+
// state.current.has(value)
28+
// state.current.size
29+
// state.add(value);
30+
// state.delete(value);
31+
// state.toggle(value);
32+
`}
33+
language="javascript"
34+
/>
35+
36+
<h1>Examples</h1>
37+
38+
<h2>Basic</h2>
39+
40+
<Code source={`const selection = new SelectionState();`} language="javascript" />
41+
42+
<Preview>
43+
{#each data as d}
44+
<div>
45+
<Checkbox
46+
checked={selection.isSelected(d.id)}
47+
on:change={() => selection.toggleSelected(d.id)}
48+
>
49+
{d.id}
50+
</Checkbox>
51+
</div>
52+
{/each}
53+
selected: {JSON.stringify(selection.current)}
54+
</Preview>
55+
56+
<h2>Initial selection</h2>
57+
58+
<Code
59+
source={`const selection = new SelectionState({ initial: [3, 4, 5] });`}
60+
language="javascript"
61+
/>
62+
63+
<Preview>
64+
{#each data as d}
65+
<div>
66+
<Checkbox
67+
checked={selection2.isSelected(d.id)}
68+
on:change={() => selection2.toggleSelected(d.id)}
69+
>
70+
{d.id}
71+
</Checkbox>
72+
</div>
73+
{/each}
74+
selected: {JSON.stringify(selection2.current)}
75+
</Preview>
76+
77+
<h2>Max</h2>
78+
79+
<Code source={`const selection = new SelectionState({ max: 3 });`} language="javascript" />
80+
81+
<Preview>
82+
{#each data as d}
83+
<div>
84+
<Checkbox
85+
checked={selection5.isSelected(d.id)}
86+
on:change={() => selection5.toggleSelected(d.id)}
87+
disabled={selection5.isDisabled(d.id)}
88+
>
89+
{d.id}
90+
</Checkbox>
91+
</div>
92+
{/each}
93+
selected: {JSON.stringify(selection5.current)}
94+
</Preview>
95+
96+
<h2>Select all</h2>
97+
98+
<Code
99+
source={`const selection = new SelectionState({ all: data.map((d) => d.id) });`}
100+
language="javascript"
101+
/>
102+
103+
<Preview>
104+
<Checkbox
105+
checked={selection3.isAnySelected()}
106+
indeterminate={!selection3.isAllSelected()}
107+
on:change={() => selection3.toggleAll()}
108+
>
109+
Select all
110+
</Checkbox>
111+
{#each data as d}
112+
<div>
113+
<Checkbox
114+
checked={selection3.isSelected(d.id)}
115+
on:change={() => selection3.toggleSelected(d.id)}
116+
>
117+
{d.id}
118+
</Checkbox>
119+
</div>
120+
{/each}
121+
selected: {JSON.stringify(selection3.current)}
122+
</Preview>
123+
124+
<h2>Single</h2>
125+
126+
<Code source={`const selection = new SelectionState({ single: true });`} language="javascript" />
127+
128+
<Preview>
129+
{#each data as d}
130+
<div>
131+
<Radio
132+
group={selection4.current}
133+
value={d.id}
134+
on:change={() => selection4.toggleSelected(d.id)}
135+
>
136+
{d.id}
137+
</Radio>
138+
</div>
139+
{/each}
140+
selected: {JSON.stringify(selection4.current)}
141+
</Preview>

sites/docs/src/routes/docs/svelte-state/selectionState/+page.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import source from '$svelte-state/selectionState.svelte.ts?raw';
2-
import pageSource from './+page.md?raw';
2+
import pageSource from './+page.svelte?raw';
33

44
export async function load() {
55
return {

sites/docs/src/routes/docs/svelte-state/uniqueState/+page.md

Lines changed: 0 additions & 41 deletions
This file was deleted.
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<script lang="ts">
2+
import { UniqueState } from '@layerstack/svelte-state';
3+
import { Checkbox } from 'svelte-ux';
4+
5+
import Preview from '$docs/Preview.svelte';
6+
import Code from '$docs/Code.svelte';
7+
8+
const data = Array.from({ length: 5 }).map((_, i) => {
9+
return {
10+
id: i + 1,
11+
};
12+
});
13+
14+
const state = new UniqueState();
15+
</script>
16+
17+
<h1>Usage</h1>
18+
19+
<Code
20+
source={`import { UniqueState } from '@layerstack/svelte-state';
21+
22+
const state = new UniqueState();
23+
// state.current.has(value)
24+
// state.current.size
25+
// state.add(value);
26+
// state.delete(value);
27+
// state.toggle(value);
28+
`}
29+
language="javascript"
30+
/>
31+
32+
<h1>Examples</h1>
33+
34+
<h2>Basic</h2>
35+
36+
<Preview>
37+
{#each data as d}
38+
<div>
39+
<Checkbox checked={state.current.has(d.id)} on:change={() => state.toggle(d.id)}>
40+
{d.id}
41+
</Checkbox>
42+
</div>
43+
{/each}
44+
selected: {JSON.stringify([...state.current])}
45+
</Preview>

sites/docs/src/routes/docs/svelte-state/uniqueState/+page.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import source from '$svelte-state/uniqueState.svelte.ts?raw';
2-
import pageSource from './+page.md?raw';
2+
import pageSource from './+page.svelte?raw';
33

44
export async function load() {
55
return {

0 commit comments

Comments
 (0)