Basic discussions forum framework
Adds the basic structure for the Discussions MFE around which future development will happen.
This commit is contained in:
30
src/discussions/topics/TopicsView.jsx
Normal file
30
src/discussions/topics/TopicsView.jsx
Normal file
@@ -0,0 +1,30 @@
|
||||
import PropTypes from 'prop-types';
|
||||
import React from 'react';
|
||||
import { topicShape } from './topic-group/topic/Topic';
|
||||
import TopicGroup from './topic-group/TopicGroup';
|
||||
|
||||
function TopicsView({ coursewareTopics, nonCoursewareTopics }) {
|
||||
return (
|
||||
<div className="discussion-topics d-flex flex-column">
|
||||
{ nonCoursewareTopics
|
||||
&& <TopicGroup topics={nonCoursewareTopics} /> }
|
||||
{ coursewareTopics.map(
|
||||
topicGroup => (
|
||||
<TopicGroup
|
||||
id={topicGroup.id}
|
||||
name={topicGroup.name}
|
||||
topics={topicGroup.children}
|
||||
key={topicGroup.name}
|
||||
/>
|
||||
),
|
||||
) }
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
TopicsView.propTypes = {
|
||||
coursewareTopics: PropTypes.arrayOf(PropTypes.shape(topicShape)).isRequired,
|
||||
nonCoursewareTopics: PropTypes.arrayOf(PropTypes.shape(topicShape)).isRequired,
|
||||
};
|
||||
|
||||
export default TopicsView;
|
||||
Reference in New Issue
Block a user