From 221bb70a000be94b4daeddd9f1ba132141d68b6d Mon Sep 17 00:00:00 2001 From: MinamiFunakoshiTR Date: Wed, 12 Mar 2025 15:53:46 -0700 Subject: [PATCH 01/12] svelte 5 set up but before/after not quite working --- src/components/BeforeAfter/BeforeAfter.mdx | 103 +++++++ .../BeforeAfter/BeforeAfter.stories.svelte | 51 ++-- src/components/BeforeAfter/BeforeAfter.svelte | 256 +++++++++--------- .../{stories => images}/myrne-after.jpg | Bin .../{stories => images}/myrne-before.jpg | Bin .../stories/docs/ariaDescriptions.md | 35 --- .../BeforeAfter/stories/docs/component.md | 15 - .../BeforeAfter/stories/docs/withOverlays.md | 33 --- src/components/Byline/Byline.svelte | 14 +- 9 files changed, 258 insertions(+), 249 deletions(-) create mode 100644 src/components/BeforeAfter/BeforeAfter.mdx rename src/components/BeforeAfter/{stories => images}/myrne-after.jpg (100%) rename src/components/BeforeAfter/{stories => images}/myrne-before.jpg (100%) delete mode 100644 src/components/BeforeAfter/stories/docs/ariaDescriptions.md delete mode 100644 src/components/BeforeAfter/stories/docs/component.md delete mode 100644 src/components/BeforeAfter/stories/docs/withOverlays.md diff --git a/src/components/BeforeAfter/BeforeAfter.mdx b/src/components/BeforeAfter/BeforeAfter.mdx new file mode 100644 index 00000000..dfb459f8 --- /dev/null +++ b/src/components/BeforeAfter/BeforeAfter.mdx @@ -0,0 +1,103 @@ +import { Meta, Canvas } from '@storybook/blocks'; + +import * as BeforeAfterStories from './BeforeAfter.stories.svelte'; + + + +# BeforeAfter + +The `BeforeAfter` component shows a before-and-after comparison of an image. + +```svelte + + + +``` + + + +## Using with overlays + +Add overlays with the `beforeOverlay` and `afterOverlay` slots and a caption to the `caption` slot, then style these elements to match your page design as below. + +```svelte + +
+

July 7, 2020

+

Initially, this site was far smaller.

+
+
+

Oct. 20, 2020

+

But then forces built up.

+
+

Photos by MAXAR Technologies, 2021.

+
+ + +``` + + + +## Adding ARIA descriptions + +Use text elements in your overlays as [ARIA descriptions](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-describedby) for your images by setting an ID on text elements within each overlay with the `description` [slot prop](https://svelte.dev/tutorial/slot-props). + +> **💡 TIP:** You must always use the `beforeAlt` / `afterAlt` props to label your image for visually impaired readers, but you can use these descriptions to provide more information or context that the reader might also need. + +```svelte + +
+

July 7, 2020

+

Initially, this site was far smaller.

+
+
+

Oct. 20, 2020

+

But then forces built up.

+
+

Photos by MAXAR Technologies, 2021.

+
+ + +``` + + diff --git a/src/components/BeforeAfter/BeforeAfter.stories.svelte b/src/components/BeforeAfter/BeforeAfter.stories.svelte index d2f79821..4b4ed935 100644 --- a/src/components/BeforeAfter/BeforeAfter.stories.svelte +++ b/src/components/BeforeAfter/BeforeAfter.stories.svelte @@ -1,19 +1,10 @@ - - - - - +
@@ -81,19 +64,19 @@ - + -
+

On July 7, 2020, the base contained only a few transport vehicles.

-
+

diff --git a/src/components/BeforeAfter/BeforeAfter.svelte b/src/components/BeforeAfter/BeforeAfter.svelte index e6229af5..293bb582 100644 --- a/src/components/BeforeAfter/BeforeAfter.svelte +++ b/src/components/BeforeAfter/BeforeAfter.svelte @@ -1,73 +1,92 @@ - {#if beforeSrc && beforeAlt && afterSrc && afterAlt} -

- +
+
+ {afterAlt} - + {beforeAlt} - {#if $$slots.beforeOverlay} + {#if beforeOverlay}
- + {@render beforeOverlay()}
{/if} - {#if $$slots.afterOverlay} + {#if afterOverlay}
- + {@render afterOverlay()}
{/if}
- {#if $$slots.caption} - -