mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-21 04:39:19 +00:00
51 lines
1.3 KiB
Svelte
51 lines
1.3 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="Search16"
|
|
on:click
|
|
on:mouseover
|
|
on:mouseenter
|
|
on:mouseleave
|
|
on:keyup
|
|
on:keydown
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
viewBox="0 0 16 16"
|
|
fill="currentColor"
|
|
width="16"
|
|
height="16"
|
|
class="{className}"
|
|
preserveAspectRatio="xMidYMid meet"
|
|
style="{style}"
|
|
id="{id}"
|
|
{...attributes}
|
|
>
|
|
<path
|
|
d="M15,14.3L10.7,10c1.9-2.3,1.6-5.8-0.7-7.7S4.2,0.7,2.3,3S0.7,8.8,3,10.7c2,1.7,5,1.7,7,0l4.3,4.3L15,14.3z M2,6.5 C2,4,4,2,6.5,2S11,4,11,6.5S9,11,6.5,11S2,9,2,6.5z"
|
|
></path>
|
|
<slot>
|
|
{#if title}
|
|
<title>{title}</title>
|
|
{/if}
|
|
</slot>
|
|
</svg>
|