import React from 'react' import { PageBlock } from 'notion-types' import { CollectionViewProps } from '../types' import { cs } from '../utils' import { CollectionCard } from './collection-card' import { EmptyIcon } from '../icons/empty-icon' import { Property } from './property' import { useNotionContext } from '../context' export const CollectionViewBoard: React.FC = ({ collection, collectionView, collectionData, padding }) => { const { recordMap } = useNotionContext() const { board_cover = { type: 'none' }, board_cover_size = 'medium', board_cover_aspect = 'cover' } = collectionView.format || {} // console.log('board', { collection, collectionView, collectionData }) const boardGroups = collectionView.format.board_groups2 || collectionView.format.board_columns return (
{boardGroups.map((p, index) => { if (!collectionData.groupResults) { //no groupResults in the data when collection is in a toggle return null } const group = collectionData.groupResults![index] const schema = collection.schema[p.property] if (!group || !schema || p.hidden) { return null } return (
{group.value?.value ? ( ) : ( No Select )} {group.total}
) })}
{boardGroups.map((p, index) => { if (!collectionData.groupResults) { return null } const group = collectionData.groupResults![index] const schema = collection.schema[p.property] if (!group || !schema || p.hidden) { return null } return (
{group.blockIds.map((blockId) => { const block = recordMap.block[blockId]?.value as PageBlock if (!block) return null return ( ) })}
) })}
) }