fix(tag): set restProps.class after class value

This commit is contained in:
Eric Liu 2020-07-19 12:20:36 -07:00
commit 6c6defc4c9
3 changed files with 17 additions and 9 deletions

View file

@ -1,9 +1,6 @@
<script> <script>
export let disabled = undefined;
export let filter = undefined;
export let slot = undefined; export let slot = undefined;
export let story = undefined; export let story = undefined;
export let type = undefined;
import Tag from "./Tag.svelte"; import Tag from "./Tag.svelte";
import TagSkeleton from "./Tag.Skeleton.svelte"; import TagSkeleton from "./Tag.Skeleton.svelte";
@ -12,7 +9,7 @@
<div> <div>
{#if story === 'filter'} {#if story === 'filter'}
<Tag <Tag
{filter} {...$$restProps}
on:click={() => { on:click={() => {
console.log('click'); console.log('click');
}}> }}>
@ -21,6 +18,6 @@
{:else if story === 'skeleton'} {:else if story === 'skeleton'}
<TagSkeleton /> <TagSkeleton />
{:else} {:else}
<Tag {disabled} {type} class="class">{slot}</Tag> <Tag {...$$restProps} class="class">{slot}</Tag>
{/if} {/if}
</div> </div>

View file

@ -38,6 +38,15 @@ export const Filter = () => ({
props: { props: {
story: "filter", story: "filter",
filter: true, filter: true,
type: select(
"Tag type (type)",
Object.keys(TYPES).reduce(
(items, item) => ({ ...items, [`${item} (${item})`]: item }),
{}
),
"red"
),
disabled: boolean("Disabled (disabled)", false),
slot: text("Content ($$slot)", "This is a tag"), slot: text("Content ($$slot)", "This is a tag"),
}, },
}); });

View file

@ -11,12 +11,13 @@
{#if filter} {#if filter}
<div <div
aria-label={title} aria-label={title}
{id}
class:bx--tag={true} class:bx--tag={true}
class:bx--tag--disabled={disabled} class:bx--tag--disabled={disabled}
class:bx--tag--filter={filter} class:bx--tag--filter={filter}
class="bx--tag--{type}" {...$$restProps}
{id} class="{type && `bx--tag--${type}`}
{...$$restProps}> {$$restProps.class}">
<slot props={{ class: 'bx--tag__label' }}> <slot props={{ class: 'bx--tag__label' }}>
<span class:bx--tag__label={true}>{type}</span> <span class:bx--tag__label={true}>{type}</span>
</slot> </slot>
@ -36,8 +37,9 @@
<span <span
class:bx--tag={true} class:bx--tag={true}
class:bx--tag--disabled={disabled} class:bx--tag--disabled={disabled}
class="bx--tag--{type}"
{...$$restProps} {...$$restProps}
class="{type && `bx--tag--${type}`}
{$$restProps.class}"
on:click on:click
on:mouseover on:mouseover
on:mouseenter on:mouseenter