Create a base comment structure, and make sub classes that inherit from it for the different structures that can have comments (announcements, calendar event, docs, forum). Can be split up into multiple PRs, doesn't have to be all in one lump-sum, but the base comment model should be done before working on any sub structures. The goal of the base comment model is that sub classes can be created with as little redundancy as possible.
class Comment extends Base {
// props that are shared by all comments
}
class AnnouncementComment extends Comment {
// props specific to this comment
}
Create a base comment structure, and make sub classes that inherit from it for the different structures that can have comments (announcements, calendar event, docs, forum). Can be split up into multiple PRs, doesn't have to be all in one lump-sum, but the base comment model should be done before working on any sub structures. The goal of the base comment model is that sub classes can be created with as little redundancy as possible.