@dloizides/marketing-astro-kit 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.2.1
4
+
5
+ - **a11y fix (serious): the pricing comparison was SILENT to screen readers.**
6
+ `PricingComparison.astro` marked each cell with `aria-label` on a bare
7
+ `<span>`. `aria-label` is *prohibited* on a roleless generic element, so
8
+ assistive tech ignored it — and the inner `<svg>` is `aria-hidden`. Net
9
+ effect: a screen-reader user reached every included/not-included cell and
10
+ heard **nothing**, so they could not tell which plan carried which feature,
11
+ on a public pricing page. Fixed by giving the span `role="img"` alongside
12
+ the existing label. Found by the `a11y-public` E2E axe scan against the live
13
+ kefi landing: `aria-prohibited-attr`, 27 nodes. Swept the rest of the kit —
14
+ no other instances of this shape.
15
+
3
16
  ## 1.2.0
4
17
 
5
18
  - New `DemoFrame.astro` — a themeable, **client-side "try it" demo** shell for
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dloizides/marketing-astro-kit",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "Reusable, themeable Astro marketing sections for product sites — a Free-vs-Pro pricing comparison table, a trust / credibility section (security cards, customer-logo + testimonial placeholders, discreet built-by), a client-side \"try it\" demo shell, and an SEO guides/content-hub card + frontmatter schema. Data-driven via a shared TypeScript schema; themed entirely through the host site's CSS custom properties.",
5
5
  "keywords": [
6
6
  "astro",
@@ -71,11 +71,11 @@ const { tiers, groups } = data;
71
71
  >
72
72
  {typeof cell === 'boolean' ? (
73
73
  cell ? (
74
- <span class="pmk-yes" aria-label="Included">
74
+ <span class="pmk-yes" role="img" aria-label="Included">
75
75
  <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12.5l4.5 4.5L19 7" /></svg>
76
76
  </span>
77
77
  ) : (
78
- <span class="pmk-no" aria-label="Not included">
78
+ <span class="pmk-no" role="img" aria-label="Not included">
79
79
  <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" aria-hidden="true"><path d="M7 7l10 10M17 7L7 17" /></svg>
80
80
  </span>
81
81
  )