@autobusal/common 1.4.6 → 1.4.7

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.
@@ -2,7 +2,7 @@ import { TFunction } from 'i18next';
2
2
  import { FiCalendar } from 'react-icons/fi';
3
3
  import { sanitizeHtml } from '@autobusal/utilities';
4
4
  import Image from './Image';
5
- import { LinkTitle, Details, DisplayDate, TextPreview, TextView, ButtonLink } from './styles';
5
+ import { LinkTitle, Title, Details, DisplayDate, TextPreview, TextView, ButtonLink } from './styles';
6
6
  import { ArticleData } from '@autobusal/providers/types/articles';
7
7
 
8
8
  interface Props {
@@ -13,9 +13,12 @@ interface Props {
13
13
 
14
14
  const BlogItem = ({ article, type, t }: Props): JSX.Element => (
15
15
  <div className="box">
16
- { article.image_url !== null && <Image type={ type } internal={ article.internal } image_url={ article.image_url } /> }
16
+ { article.image_url !== null && <Image type={ type } internal={ article.internal } image_url={ article.image_url } title={ article.title } /> }
17
17
 
18
- <LinkTitle to={ `/blog/article/${ article.internal }` }>{ article.title }</LinkTitle>
18
+ { type === 'view'
19
+ ? <Title>{ article.title }</Title>
20
+ : <LinkTitle to={ `/blog/article/${ article.internal }` }>{ article.title }</LinkTitle>
21
+ }
19
22
 
20
23
  <Details>
21
24
  <DisplayDate>
@@ -4,19 +4,20 @@ interface Props {
4
4
  type: 'preview' | 'view' | 'short'
5
5
  internal: string
6
6
  image_url: string
7
+ title: string
7
8
  }
8
9
 
9
- const Image = ({ type, internal, image_url }: Props): JSX.Element => {
10
+ const Image = ({ type, internal, image_url, title }: Props): JSX.Element => {
10
11
  if (type === 'preview' || type === 'short') {
11
12
  return (
12
13
  <ImageLink to={ `/blog/article/${ internal }` }>
13
- <ContainerImage src={ image_url } />
14
+ <ContainerImage src={ image_url } alt={ title } />
14
15
  </ImageLink>
15
16
  );
16
17
  }
17
18
 
18
19
  return (
19
- <ContainerImage src={ image_url } />
20
+ <ContainerImage src={ image_url } alt={ title } />
20
21
  );
21
22
  };
22
23
 
@@ -28,6 +28,14 @@ export const LinkTitle = styled(Link)`
28
28
  }
29
29
  `;
30
30
 
31
+ // Single-article view renders the title as a real <h1> instead of a
32
+ // self-link back to the same page - same visual weight as LinkTitle.
33
+ export const Title = styled.h1`
34
+ font-size: ${ props => props.theme.size.xl };
35
+ font-weight: 700;
36
+ margin: 0;
37
+ `;
38
+
31
39
  export const Details = styled.div`
32
40
  display: flex;
33
41
  gap: 15px;
package/CHANGELOG.md CHANGED
@@ -3,6 +3,15 @@
3
3
  All notable changes to `@autobusal/common` are documented here. This project follows
4
4
  [Keep a Changelog](https://keepachangelog.com/) and [Semantic Versioning](https://semver.org/).
5
5
 
6
+ ## [1.4.7] - 2026-07-30
7
+
8
+ ### Fixed
9
+
10
+ - **Blog thumbnails missing `alt` text (`BlogItem/Image.tsx`).** Neither the
11
+ preview/short grid thumbnail nor the full article image had `alt` - added a
12
+ required `title` prop (threaded through from `BlogItem.tsx`'s
13
+ `article.title`) used as the `alt` text on both.
14
+
6
15
  ## [1.4.6] - 2026-07-29
7
16
 
8
17
  ### Fixed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autobusal/common",
3
- "version": "1.4.6",
3
+ "version": "1.4.7",
4
4
  "author": "Ferjolt Ozuni",
5
5
  "type": "module",
6
6
  "main": "index.ts"