mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-18 11:36:36 +00:00
feat(tag): dispatch close event
This commit is contained in:
parent
c0dd80d149
commit
c37890d4b4
6 changed files with 19 additions and 9 deletions
|
@ -3640,12 +3640,13 @@ None.
|
||||||
|
|
||||||
### Events
|
### Events
|
||||||
|
|
||||||
| Event name | Type | Detail |
|
| Event name | Type | Detail |
|
||||||
| :--------- | :-------- | :----- |
|
| :--------- | :--------- | :----- |
|
||||||
| click | forwarded | -- |
|
| click | forwarded | -- |
|
||||||
| mouseover | forwarded | -- |
|
| mouseover | forwarded | -- |
|
||||||
| mouseenter | forwarded | -- |
|
| mouseenter | forwarded | -- |
|
||||||
| mouseleave | forwarded | -- |
|
| mouseleave | forwarded | -- |
|
||||||
|
| close | dispatched | -- |
|
||||||
|
|
||||||
## `TagSkeleton`
|
## `TagSkeleton`
|
||||||
|
|
||||||
|
|
|
@ -7859,7 +7859,8 @@
|
||||||
{ "type": "forwarded", "name": "click", "element": "TagSkeleton" },
|
{ "type": "forwarded", "name": "click", "element": "TagSkeleton" },
|
||||||
{ "type": "forwarded", "name": "mouseover", "element": "TagSkeleton" },
|
{ "type": "forwarded", "name": "mouseover", "element": "TagSkeleton" },
|
||||||
{ "type": "forwarded", "name": "mouseenter", "element": "TagSkeleton" },
|
{ "type": "forwarded", "name": "mouseenter", "element": "TagSkeleton" },
|
||||||
{ "type": "forwarded", "name": "mouseleave", "element": "TagSkeleton" }
|
{ "type": "forwarded", "name": "mouseleave", "element": "TagSkeleton" },
|
||||||
|
{ "type": "dispatched", "name": "close" }
|
||||||
],
|
],
|
||||||
"typedefs": [],
|
"typedefs": [],
|
||||||
"rest_props": { "type": "Element", "name": "div | span" }
|
"rest_props": { "type": "Element", "name": "div | span" }
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
|
|
||||||
### Filterable
|
### Filterable
|
||||||
|
|
||||||
<Tag filter on:click>Filterable</Tag>
|
<Tag filter on:close>Filterable</Tag>
|
||||||
|
|
||||||
### Custom icon
|
### Custom icon
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,10 @@
|
||||||
|
|
||||||
import Close16 from "carbon-icons-svelte/lib/Close16/Close16.svelte";
|
import Close16 from "carbon-icons-svelte/lib/Close16/Close16.svelte";
|
||||||
import TagSkeleton from "./TagSkeleton.svelte";
|
import TagSkeleton from "./TagSkeleton.svelte";
|
||||||
|
|
||||||
|
import { createEventDispatcher } from "svelte";
|
||||||
|
|
||||||
|
const dispatch = createEventDispatcher();
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#if skeleton}
|
{#if skeleton}
|
||||||
|
@ -70,6 +74,9 @@
|
||||||
disabled="{disabled}"
|
disabled="{disabled}"
|
||||||
title="{title}"
|
title="{title}"
|
||||||
on:click|stopPropagation
|
on:click|stopPropagation
|
||||||
|
on:click|stopPropagation="{() => {
|
||||||
|
dispatch('close');
|
||||||
|
}}"
|
||||||
on:mouseover
|
on:mouseover
|
||||||
on:mouseenter
|
on:mouseenter
|
||||||
on:mouseleave
|
on:mouseleave
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
<Tag type="high-contrast">high-contrast</Tag>
|
<Tag type="high-contrast">high-contrast</Tag>
|
||||||
|
|
||||||
<Tag filter on:click>Filterable</Tag>
|
<Tag filter on:click on:close>Filterable</Tag>
|
||||||
|
|
||||||
<Tag icon="{Add16}">Custom icon</Tag>
|
<Tag icon="{Add16}">Custom icon</Tag>
|
||||||
|
|
||||||
|
|
1
types/Tag/Tag.d.ts
vendored
1
types/Tag/Tag.d.ts
vendored
|
@ -65,5 +65,6 @@ export default class Tag {
|
||||||
$on(eventname: "mouseover", cb: (event: WindowEventMap["mouseover"]) => void): () => void;
|
$on(eventname: "mouseover", cb: (event: WindowEventMap["mouseover"]) => void): () => void;
|
||||||
$on(eventname: "mouseenter", cb: (event: WindowEventMap["mouseenter"]) => void): () => void;
|
$on(eventname: "mouseenter", cb: (event: WindowEventMap["mouseenter"]) => void): () => void;
|
||||||
$on(eventname: "mouseleave", cb: (event: WindowEventMap["mouseleave"]) => void): () => void;
|
$on(eventname: "mouseleave", cb: (event: WindowEventMap["mouseleave"]) => void): () => void;
|
||||||
|
$on(eventname: "close", cb: (event: CustomEvent<any>) => void): () => void;
|
||||||
$on(eventname: string, cb: (event: Event) => void): () => void;
|
$on(eventname: string, cb: (event: Event) => void): () => void;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue