mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-15 02:11:05 +00:00
* feat(icons): inline carbon icons used by components * feat(icons): update svelte components to use inlined carbon icons * breaking(deps): remove carbon-icons-svelte * chore(deps-dev): install carbon-icons-svelte as a devDependency
49 lines
1.1 KiB
Svelte
49 lines
1.1 KiB
Svelte
<script>
|
|
let className = undefined;
|
|
export { className as class };
|
|
export let id = undefined;
|
|
export let tabindex = undefined;
|
|
export let focusable = false;
|
|
export let title = undefined;
|
|
export let style = undefined;
|
|
|
|
$: ariaLabel = $$props["aria-label"];
|
|
$: ariaLabelledBy = $$props["aria-labelledby"];
|
|
$: labelled = ariaLabel || ariaLabelledBy || title;
|
|
$: attributes = {
|
|
"aria-label": ariaLabel,
|
|
"aria-labelledby": ariaLabelledBy,
|
|
"aria-hidden": labelled ? undefined : true,
|
|
role: labelled ? "img" : undefined,
|
|
focusable: tabindex === "0" ? true : focusable,
|
|
tabindex,
|
|
};
|
|
</script>
|
|
|
|
<!-- svelte-ignore a11y-mouse-events-have-key-events -->
|
|
<svg
|
|
data-carbon-icon="Subtract16"
|
|
on:click
|
|
on:mouseover
|
|
on:mouseenter
|
|
on:mouseleave
|
|
on:keyup
|
|
on:keydown
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
viewBox="0 0 32 32"
|
|
fill="currentColor"
|
|
width="16"
|
|
height="16"
|
|
class="{className}"
|
|
preserveAspectRatio="xMidYMid meet"
|
|
style="{style}"
|
|
id="{id}"
|
|
{...attributes}
|
|
>
|
|
<path d="M8 15H24V17H8z"></path>
|
|
<slot>
|
|
{#if title}
|
|
<title>{title}</title>
|
|
{/if}
|
|
</slot>
|
|
</svg>
|