File tree 4 files changed +21
-7
lines changed
src/project/types/website
4 files changed +21
-7
lines changed Original file line number Diff line number Diff line change @@ -163,7 +163,7 @@ export async function createFeed(
163
163
164
164
// Add any image metadata
165
165
const image = options . image || format . metadata [ kImage ] as string ||
166
- websiteImage ( project . config ) ;
166
+ websiteImage ( project . config ) ?. src ;
167
167
if ( image ) {
168
168
feed . image = {
169
169
title : feedTitle ,
Original file line number Diff line number Diff line change @@ -41,12 +41,16 @@ export function findDescription(doc: Document): string | undefined {
41
41
42
42
export function findPreviewImg (
43
43
doc : Document ,
44
- ) : string | undefined {
44
+ ) : { src : string ; alt ?: string } | undefined {
45
45
const imgEl = findPreviewImgEl ( doc ) ;
46
46
if ( imgEl ) {
47
47
const src = getDecodedAttribute ( imgEl , "src" ) ;
48
+ const alt = getDecodedAttribute ( imgEl , "alt" ) ;
48
49
if ( src !== null ) {
49
- return src ;
50
+ return {
51
+ src,
52
+ alt : alt ?? undefined ,
53
+ } ;
50
54
} else {
51
55
return undefined ;
52
56
}
Original file line number Diff line number Diff line change @@ -50,6 +50,7 @@ import { join } from "../../../deno_ral/path.ts";
50
50
type WebsiteConfigKey =
51
51
| "title"
52
52
| "image"
53
+ | "image-alt"
53
54
| "description"
54
55
| "favicon"
55
56
| "site-url"
@@ -173,8 +174,16 @@ export function websiteBaseurl(project?: ProjectConfig): string | undefined {
173
174
return websiteConfigString ( kSiteUrl , project ) ;
174
175
}
175
176
176
- export function websiteImage ( project ?: ProjectConfig ) : string | undefined {
177
- return websiteConfigString ( kImage , project ) ;
177
+ export function websiteImage (
178
+ project ?: ProjectConfig ,
179
+ ) : { src : string ; alt ?: string } | undefined {
180
+ const src = websiteConfigString ( kImage , project ) ;
181
+ if ( src ) {
182
+ const alt = websiteConfigString ( "image-alt" , project ) ;
183
+ return { src, alt } ;
184
+ } else {
185
+ return undefined ;
186
+ }
178
187
}
179
188
180
189
export function websiteDescription (
Original file line number Diff line number Diff line change @@ -180,8 +180,9 @@ export function metadataHtmlPostProcessor(
180
180
181
181
// find a preview image if one is not provided
182
182
if ( metadata [ kImage ] === undefined && format . metadata [ kImage ] !== false ) {
183
- metadata [ kImage ] = findPreviewImg ( doc ) ||
184
- websiteImage ( project . config ) ;
183
+ const previewImg = findPreviewImg ( doc ) || websiteImage ( project . config ) ;
184
+ metadata [ kImage ] = previewImg ? previewImg . src : undefined ;
185
+ metadata [ kImageAlt ] = previewImg ? previewImg . alt : undefined ;
185
186
}
186
187
187
188
// cook up a description if one is not provided
You can’t perform that action at this time.
0 commit comments