Files
nebula.js/commands/serve/web/components/Collection.jsx
Christoffer Åström a57abf1ead refactor: internal packages structure (#94)
* refactor: internal packages structure

* refactor: internal packages structure
2019-08-27 09:57:04 +02:00

46 lines
954 B
JavaScript

import React, {
useEffect,
useContext,
useState,
} from 'react';
import useLayout from '@nebula.js/nucleus/src/hooks/useLayout';
import {
Grid,
} from '@nebula.js/ui/components';
import AppContext from '../contexts/AppContext';
import Cell from './Cell';
export default function Collection({
type,
onSelectedCell,
}) {
const app = useContext(AppContext);
const [layout] = useLayout(app);
const [objects, setObjects] = useState([]);
useEffect(() => {
app.getObjects({
qTypes: [type],
qIncludeSessionObjects: true,
qData: {
title: '/qMetaDef/title',
},
}).then((list) => {
setObjects(list);
});
}, [layout, type]);
return (
<Grid container spacing={2} style={{ padding: '12px' }}>
{objects.map((c) => (
<Grid item xs={12} md={6} lg={4} key={c.qInfo.qId}>
<Cell object={c} onSelected={onSelectedCell} />
</Grid>
))}
</Grid>
);
}