import * as React from 'react' import { PageBlock } from 'notion-types' import { CollectionViewProps } from '../types' import { cs } from '../utils' import { getCollectionGroups } from './collection-utils' import { useNotionContext } from '../context' import { CollectionCard } from './collection-card' import { CollectionGroup } from './collection-group' const defaultBlockIds = [] export const CollectionViewGallery: React.FC = ({ collection, collectionView, collectionData }) => { const isGroupedCollection = collectionView?.format?.collection_group_by if (isGroupedCollection) { const collectionGroups = getCollectionGroups( collection, collectionView, collectionData ) return collectionGroups.map((group, index) => ( )) } const blockIds = (collectionData['collection_group_results']?.blockIds ?? collectionData['results:relation:uncategorized']?.blockIds ?? collectionData.blockIds) || defaultBlockIds return ( ) } function Gallery({ blockIds, collectionView, collection }) { const { recordMap } = useNotionContext() const { gallery_cover = { type: 'none' }, gallery_cover_size = 'medium', gallery_cover_aspect = 'cover' } = collectionView.format || {} return (
{blockIds?.map((blockId) => { const block = recordMap.block[blockId]?.value as PageBlock if (!block) return null return ( ) })}
) }