From 622fcbced9cea53a7b8ea1cda776cd439ece3129 Mon Sep 17 00:00:00 2001 From: endigo9740 Date: Fri, 16 Dec 2022 11:47:20 -0600 Subject: [PATCH 1/4] Improved component events and event docs --- .../Accordion/AccordionGroup.svelte | 4 +--- src/lib/components/AppRail/AppRailTile.svelte | 12 +++++----- src/lib/components/Breadcrumb/Crumb.svelte | 4 ++++ .../ConicGradient/ConicGradient.svelte | 2 +- .../components/FileButton/FileButton.svelte | 2 +- .../FileDropzone/FileDropzone.svelte | 4 ++++ src/lib/components/ListBox/ListBoxItem.svelte | 2 ++ src/lib/components/Radio/RadioItem.svelte | 2 ++ .../components/SlideToggle/SlideToggle.svelte | 5 ++++- src/lib/components/Stepper/Step.svelte | 7 +++++- src/lib/components/Tab/Tab.svelte | 19 +++++++++++++--- src/lib/components/Table/Table.svelte | 6 ++--- src/lib/utilities/CodeBlock/CodeBlock.svelte | 7 ++++++ src/lib/utilities/Drawer/Drawer.svelte | 22 ++++++++++--------- .../utilities/LightSwitch/LightSwitch.svelte | 14 ++++++++---- src/lib/utilities/Modal/Modal.svelte | 15 ++++++++----- .../(inner)/components/app-rail/+page.svelte | 2 +- 17 files changed, 90 insertions(+), 39 deletions(-) diff --git a/src/lib/components/Accordion/AccordionGroup.svelte b/src/lib/components/Accordion/AccordionGroup.svelte index 3e27f45248..d3c3b40686 100644 --- a/src/lib/components/Accordion/AccordionGroup.svelte +++ b/src/lib/components/Accordion/AccordionGroup.svelte @@ -36,9 +36,7 @@ details.forEach((detail) => { detail.addEventListener('click', (e: any) => { const active = details.find((d) => d.open); - if (!e.currentTarget.open && active) { - active.open = false; - } + if (!e.currentTarget.open && active) active.open = false; }); }); } diff --git a/src/lib/components/AppRail/AppRailTile.svelte b/src/lib/components/AppRail/AppRailTile.svelte index 870d45b5bf..5caed9b438 100644 --- a/src/lib/components/AppRail/AppRailTile.svelte +++ b/src/lib/components/AppRail/AppRailTile.svelte @@ -20,7 +20,7 @@ /** Provide abitrary classes to style the icon region. */ export let regionIcon = ''; /** Provide abitrary classes to style the label region. */ - export let regionLabel = 'text-xs'; + export let regionLabel = ''; // Context export let selected: Writable = getContext('selected'); @@ -28,19 +28,21 @@ export let hover: Writable = getContext('hover'); // Base Classes - const cBase = 'grid place-content-center place-items-center w-full aspect-square space-y-1.5'; + const cBase = 'unstyled grid place-content-center place-items-center w-full aspect-square space-y-1.5 cursor-pointer'; + const cLabel = 'text-xs text-center'; // Input Handler function onClickHandler(event: any): void { - /** @event {{ event }} click - Fires when the component is clicked. */ - dispatch('click', event); if (!$selected || !value) return; $selected = value; + /** @event {{ event }} click - Fires when the component is clicked. */ + dispatch('click', event); } // Reactive $: classesActive = $selected && value && $selected === value ? `${active}` : ''; $: classesBase = `${cBase} ${hover} ${classesActive} ${$$props.class || ''}`; + $: classesLabel = `${cLabel} ${regionLabel}`; // RestProps function prunedRestProps(): any { @@ -63,5 +65,5 @@
- {#if label}
{label}
{/if} + {#if label}
{label}
{/if} diff --git a/src/lib/components/Breadcrumb/Crumb.svelte b/src/lib/components/Breadcrumb/Crumb.svelte index 6bb58cca54..790ba2d5eb 100644 --- a/src/lib/components/Breadcrumb/Crumb.svelte +++ b/src/lib/components/Breadcrumb/Crumb.svelte @@ -31,6 +31,10 @@ class="crumb-anchor {cAnchor}" data-testid="crumb-anchor" aria-current={!$$props.href ? 'page' : undefined} + on:click + on:keydown + on:keyup + on:keypress > {#if $$slots.lead}{/if} diff --git a/src/lib/components/ConicGradient/ConicGradient.svelte b/src/lib/components/ConicGradient/ConicGradient.svelte index 5d58fc5855..5ed00fe761 100644 --- a/src/lib/components/ConicGradient/ConicGradient.svelte +++ b/src/lib/components/ConicGradient/ConicGradient.svelte @@ -77,7 +77,7 @@ {#if legend && generatedLegendList}
    {#each generatedLegendList as { color, label, value }} -
  • +
  • {label} {value}% diff --git a/src/lib/components/FileButton/FileButton.svelte b/src/lib/components/FileButton/FileButton.svelte index 416a66cd22..b87dfe03b0 100644 --- a/src/lib/components/FileButton/FileButton.svelte +++ b/src/lib/components/FileButton/FileButton.svelte @@ -23,7 +23,7 @@ - diff --git a/src/lib/components/FileDropzone/FileDropzone.svelte b/src/lib/components/FileDropzone/FileDropzone.svelte index 56c43bd6fc..50a6bd7314 100644 --- a/src/lib/components/FileDropzone/FileDropzone.svelte +++ b/src/lib/components/FileDropzone/FileDropzone.svelte @@ -72,6 +72,10 @@ on:dragover={onDragOver} on:dragleave={onDragLeave} on:drop={onDrop} + on:click + on:keydown + on:keyup + on:keypress >
    diff --git a/src/lib/components/ListBox/ListBoxItem.svelte b/src/lib/components/ListBox/ListBoxItem.svelte index 4e320fc7b5..b9126a2bd0 100644 --- a/src/lib/components/ListBox/ListBoxItem.svelte +++ b/src/lib/components/ListBox/ListBoxItem.svelte @@ -85,6 +85,8 @@ {id} on:click={onClickHandler} on:keydown={onKeyDown} + on:keyup + on:keypress role="option" aria-selected={isSelected} tabindex="0" diff --git a/src/lib/components/Radio/RadioItem.svelte b/src/lib/components/Radio/RadioItem.svelte index 46b626ca2f..efca2709db 100644 --- a/src/lib/components/Radio/RadioItem.svelte +++ b/src/lib/components/Radio/RadioItem.svelte @@ -61,6 +61,8 @@ data-testid="radio-item" on:click on:keydown={onKeyDown} + on:keyup + on:keypress >