Skip to content

Commit dfcc42d

Browse files
Change mediaAppearance to the more generic config
1 parent ad0f857 commit dfcc42d

File tree

5 files changed

+34
-22
lines changed

5 files changed

+34
-22
lines changed

packages/dataviews/src/dataviews-layouts/grid/index.tsx

Lines changed: 28 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ interface GridItemProps< Item > {
6161
regularFields: NormalizedField< Item >[];
6262
badgeFields: NormalizedField< Item >[];
6363
hasBulkActions: boolean;
64-
mediaAppearance: {
65-
maxImageWidth: string;
64+
config: {
65+
size: string;
6666
};
6767
}
6868

@@ -82,7 +82,7 @@ function GridItem< Item >( {
8282
regularFields,
8383
badgeFields,
8484
hasBulkActions,
85-
mediaAppearance,
85+
config,
8686
}: GridItemProps< Item > ) {
8787
const { showTitle = true, showMedia = true, showDescription = true } = view;
8888
const hasBulkAction = useHasAPossibleBulkAction( actions, item );
@@ -93,7 +93,7 @@ function GridItem< Item >( {
9393
<mediaField.render
9494
item={ item }
9595
field={ mediaField }
96-
mediaAppearance={ mediaAppearance }
96+
config={ config }
9797
/>
9898
) : null;
9999
const renderedTitleField =
@@ -297,6 +297,8 @@ function ViewGrid< Item >( {
297297
const hasData = !! data?.length;
298298
const hasBulkActions = useSomeItemHasAPossibleBulkAction( actions, data );
299299
const usedPreviewSize = view.layout?.previewSize;
300+
// This is the maximum width that an image can achieve in the grid.
301+
const size = '900px';
300302

301303
const groupField = view.groupByField
302304
? fields.find( ( f ) => f.id === view.groupByField )
@@ -331,16 +333,18 @@ function ViewGrid< Item >( {
331333
groupName
332334
) }
333335
</h3>
334-
<Grid
335-
gap={ 8 }
336-
columns={ 2 }
337-
alignment="top"
336+
<div
338337
className={ clsx(
339338
'dataviews-view-grid',
340339
className
341340
) }
342-
style={ gridStyle }
341+
style={ {
342+
gridTemplateColumns:
343+
usedPreviewSize &&
344+
`repeat(auto-fill, minmax(${ usedPreviewSize }px, 1fr))`,
345+
} }
343346
aria-busy={ isLoading }
347+
ref={ resizeObserverRef }
344348
>
345349
{ groupItems.map( ( item ) => {
346350
return (
@@ -373,10 +377,13 @@ function ViewGrid< Item >( {
373377
hasBulkActions={
374378
hasBulkActions
375379
}
380+
config={ {
381+
size,
382+
} }
376383
/>
377384
);
378385
} ) }
379-
</Grid>
386+
</div>
380387
</VStack>
381388
)
382389
) }
@@ -387,13 +394,15 @@ function ViewGrid< Item >( {
387394
{
388395
// Render a single grid with all data.
389396
hasData && ! dataByGroup && (
390-
<Grid
391-
gap={ 8 }
392-
columns={ 2 }
393-
alignment="top"
397+
<div
394398
className={ clsx( 'dataviews-view-grid', className ) }
395-
style={ gridStyle }
399+
style={ {
400+
gridTemplateColumns:
401+
usedPreviewSize &&
402+
`repeat(auto-fill, minmax(${ usedPreviewSize }px, 1fr))`,
403+
} }
396404
aria-busy={ isLoading }
405+
ref={ resizeObserverRef }
397406
>
398407
{ data.map( ( item ) => {
399408
return (
@@ -414,10 +423,13 @@ function ViewGrid< Item >( {
414423
regularFields={ regularFields }
415424
badgeFields={ badgeFields }
416425
hasBulkActions={ hasBulkActions }
426+
config={ {
427+
size,
428+
} }
417429
/>
418430
);
419431
} ) }
420-
</Grid>
432+
</div>
421433
)
422434
}
423435
{

packages/dataviews/src/dataviews-layouts/list/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ function ListItem< Item >( {
202202
<mediaField.render
203203
item={ item }
204204
field={ mediaField }
205-
mediaAppearance={ { maxImageWidth: '52px' } }
205+
config={ { size: '52px' } }
206206
/>
207207
</div>
208208
) : null;

packages/dataviews/src/dataviews-layouts/table/column-primary.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ function ColumnPrimary< Item >( {
4747
<mediaField.render
4848
item={ item }
4949
field={ mediaField }
50-
mediaAppearance={ { maxImageWidth: '60px' } }
50+
config={ { size: '32px' } }
5151
/>
5252
</div>
5353
) }

packages/dataviews/src/types.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -280,8 +280,8 @@ export type DataFormControlProps< Item > = {
280280
export type DataViewRenderFieldProps< Item > = {
281281
item: Item;
282282
field: NormalizedField< Item >;
283-
mediaAppearance?: {
284-
maxImageWidth: string;
283+
config?: {
284+
size: string;
285285
};
286286
};
287287

packages/fields/src/fields/featured-image/featured-image-view.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import type { BasePost } from '../../types';
1212

1313
export const FeaturedImageView = ( {
1414
item,
15-
mediaAppearance,
15+
config,
1616
}: DataViewRenderFieldProps< BasePost > ) => {
1717
const mediaId = item.featured_media;
1818

@@ -42,7 +42,7 @@ export const FeaturedImageView = ( {
4242
.join( ', ' )
4343
: undefined
4444
}
45-
sizes={ mediaAppearance?.maxImageWidth || '100vw' }
45+
sizes={ config?.size || '100vw' }
4646
/>
4747
);
4848
}

0 commit comments

Comments
 (0)