Files
sanasto-app/components/pages/Lists.jsx
2021-01-11 18:56:03 -06:00

68 lines
1.3 KiB
JavaScript

import Link from '../../components/Link';
import Store from '../../store';
import * as selectors from '../../store/selectors';
// import VirtualScroll from '../ui/VirtualScroll';
import {
IonPage,
IonHeader,
IonToolbar,
IonTitle,
IonContent,
IonItem,
IonLabel,
} from '@ionic/react';
import { useEffect, useState } from 'react';
const ListEntry = ({ list, ...props }) => (
<IonItem href={`/tabs/lists/${list.id}`} className="list-entry">
<IonLabel>{list.name}</IonLabel>
</IonItem>
);
const AllLists = ({ onSelect }) => {
const lists = Store.useState(selectors.getLists);
/*
return (
<VirtualScroll
data={lists}
totalCount={lists.length}
style={{ height: '100%', width: '100%', minHeight: '1px' }}
itemContent={(i, list) => <ListEntry list={list} />}
/>
);
*/
return (
<>
{lists.map(list => (
<ListEntry list={list} />
))}
</>
);
};
const Lists = () => {
return (
<IonPage>
<IonHeader>
<IonToolbar>
<IonTitle>Lists</IonTitle>
</IonToolbar>
</IonHeader>
<IonContent fullscreen>
<IonHeader collapse="condense">
<IonToolbar>
<IonTitle size="large">Lists</IonTitle>
</IonToolbar>
</IonHeader>
<AllLists />
</IonContent>
</IonPage>
);
};
export default Lists;