The old tool had a button in the modal used to view past emails that
allowed you to copy the content into the editor. This replicates that
functionality, but without the ability to fill in the subject field of
the email. This was done to keep certain components more seperate.
[MICROBA-1621]
* Fix display bug for the error Alert component found during test writing
* Add tests for BulkEmailTaskHistory component
* Fix bug with a column name in the bulk course email content history table
* Add tests for the BulkEmailContentHistory component
* Add tests for the BulkEmailPendingTasks component
- Wires up the BulkEmailForm to be able to actually send email tasks to
the instructor api
- Adds testing for the BulkEmailForm, as well as BulkEmailTool itself
- Does some cleanup, and adds some additional testing tools as needed
[MICROBA-1621]
* Add a table to the BulkEmailTaskHistory component of the task manager.
* Add a table to the BulkEmailPendingTasks component of the task manager.
* Extract messages to messages.js.
* Add custom hook used to make REST API calls to edx-platform on a regular cadence (every 30 seconds).
* Use the new hook in BulkEmailPendingTasks to retrieve pending instructor tasks for display in a table.
* Create a new BulkEmailHistoryTable component to cutdown on code duplication between task manager componenets that display tables.
* Refactor existing components to use the new BulkEmailHistoryTable component (and reduce amount of duplicate code in the task manager)
* Use a StatefulButton (over a regular button) to show a spinner/loading icon when fetching data for our tables.
[MICROBA-1621]
* Add table that displays info about previously sent bulk course email messages through our tool.
* Add modal to view the contents of previously sent messages.
* Extract strings to a dedicated `messages.js` file to help make the `BulkEmailContentHistory.jsx` file more readable.
During our CI checks on PRs, we check to see if all code can be properly
transpiled into es5 to support IE11. We've since dropped support
officially for IE11, but the check is still present. A dependency of
TinyMCE is triggering an error in the is-es5 check.
Adding this webpack config will except the package from the check, to
prevent the CI from failing. Since we no longer support IE11, This check
is not needed, and ok to bypass.
[MICROBA-1621]
* Add support to the Instructor Dashboard `list_instructor_tasks`, `list_email_content`, and `list_background_email_tasks` REST API endpoints of edx-platform.
This will protect the bulk email tool and ONLY the bulk email tool from non-staff users if they know the direct URL. this will not protect the entire app from non-staff entirely.
[MICROBA-1621]
* Adds a section for the pending tasks section of the task manager
* Adds a section for the bulk course email task history data
* Adds a section for the bulk course email content history data