Skip to content

Commit 69055f6

Browse files
committed
feat: migrate components in tooltip to runes
1 parent 30ad599 commit 69055f6

File tree

8 files changed

+198
-114
lines changed

8 files changed

+198
-114
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ Svelte 5 Runes mode is being migrated to slowly. This is the todo list of compon
197197
- Tabs
198198
- [x] Tab
199199
- [x] Tab Bar
200-
- [ ] Tooltip
200+
- [x] Tooltip
201201
- [ ] Touch Target
202202

203203
Note to Devs: update `indexOf()` on any `$state` array to `findIndex()`.

packages/site/src/routes/demo/tooltip/+page.svelte

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
</Demo>
2424

2525
<Demo component={Rich} file="tooltip/_Rich.svelte">Rich</Demo>
26+
27+
<Demo component={Delayed} file="tooltip/_Delayed.svelte">Delayed</Demo>
2628
</section>
2729

2830
<script lang="ts">
@@ -31,4 +33,5 @@
3133
import Simple from './_Simple.svelte';
3234
import Positioning from './_Positioning.svelte';
3335
import Rich from './_Rich.svelte';
36+
import Delayed from './_Delayed.svelte';
3437
</script>
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<div>
2+
<Wrapper>
3+
<Button touch>
4+
<Label>Show Delay: 1s, Hide Delay: 2s</Label>
5+
</Button>
6+
<Tooltip showDelay={1000} hideDelay={2000}>I am a delayed tooltip.</Tooltip>
7+
</Wrapper>
8+
</div>
9+
10+
<script lang="ts">
11+
import Tooltip, { Wrapper } from '@smui/tooltip';
12+
import Button, { Label } from '@smui/button';
13+
</script>

packages/site/src/routes/demo/tooltip/_Positioning.svelte

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
<svelte:options runes={false} />
2-
31
<div style="display: flex; flex-wrap: wrap; align-items: center;">
42
<Wrapper>
53
<Button touch>

packages/site/src/routes/demo/tooltip/_Rich.svelte

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
<svelte:options runes={false} />
2-
31
<div style="display: flex; flex-wrap: wrap; align-items: center;">
42
<!--
53
Note: the wrapper on a rich tooltip
@@ -64,5 +62,5 @@
6462
} from '@smui/tooltip';
6563
import Button, { Label } from '@smui/button';
6664
67-
let clicked = 0;
65+
let clicked = $state(0);
6866
</script>

packages/site/src/routes/demo/tooltip/_Simple.svelte

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
<svelte:options runes={false} />
2-
31
<div
42
class="container"
53
style="display: flex; flex-wrap: wrap; align-items: center;"
@@ -23,7 +21,8 @@
2321
<Fab onclick={() => clicked++} mini>
2422
<Icon class="material-icons">favorite</Icon>
2523
</Fab>
26-
<Tooltip>Tooltip on a FAB.</Tooltip>
24+
<!-- The unbounded prop adds more gap between the tooltip and anchor. -->
25+
<Tooltip unbounded>Tooltip on a FAB.</Tooltip>
2726
</Wrapper>
2827

2928
<Wrapper>
@@ -43,13 +42,7 @@
4342

4443
<Wrapper>
4544
<span tabindex="0" role="button">I'm a span element.</span>
46-
<!--
47-
For tooltips on things that don't have a
48-
visually declared boundary, like plain text,
49-
use the `unbounded` prop to remove the gap
50-
between the element and the tooltip.
51-
-->
52-
<Tooltip unbounded>Tooltip on a span.</Tooltip>
45+
<Tooltip>Tooltip on a span.</Tooltip>
5346
</Wrapper>
5447
</div>
5548

@@ -80,9 +73,9 @@
8073
import Radio from '@smui/radio';
8174
import { Label, Icon } from '@smui/common';
8275
83-
let clicked = 0;
84-
let checked = false;
85-
let selected = 'on';
76+
let clicked = $state(0);
77+
let checked = $state(false);
78+
let selected = $state('on');
8679
</script>
8780

8881
<style>

0 commit comments

Comments
 (0)