* Prepare some initial test refactoring
- Expand test data for course home metadata
- Don't test courseware metadata in course-home redux tests
This is Dillon's work.
* AA-265: Add more tests for the dates tab
Add an ADR to talk about how we want to test in this repo.
And refactor the fake dates tab data used for debugging to also be
used for tests.
- Changed it to use its own normalizeBlocks call (and stop sharing
with courseware)
- Add green checkmarks for complete blocks
- Added icons, descriptions, and due dates for subsections
- Updated look of subsections to match LMS a bit more
The new version of Paragon includes a “dialogClassName” property on Modal which lets us set the modal width to ‘modal-lg’ or ‘modal-sm’ - we’re using the former here.
* AA-305: Update Masquerade Widget UI
This will start showing the user being masqueraded as in the Toolbar
and will show any error messages next to the Toolbar as well.
* Further masquerade widget fixes
Co-authored-by: Dillon Dumesnil <ddumesnil@edx.org>
* Updating Dropdown and Button.
* Fixing broken tests and test warnings.
* Remove comment block.
* Using variant=“link” on the Tabs Dropdown.Toggle.
* Fixing some merge conflicts.
This is used by LTI blocks configured to launch in a modal window. Instead of opening a modal in our unit iframe, the component will send a message to the parent window (the courseware mfe) requesting it to open its own modal, containing a URL to launch the LTI tool.
to redirect to the current unit’s lmsWebUrl if the MFE is disabled
If we receive an error_code of 'microfrontend_disabled',
go to the equivalent unit in the LMS experience.
Fixes: TNL-7362
Co-authored-by: stvn <stvn@mit.edu>
* Wrap all alert payloads in useMemo to avoid infinite re-rendering
This manifested in production as a browser freeze for any
user who saw the 15%-off-to-upgrade message.
TNL-7400
* fixup! meant to say identity, not equality
We were assuming a prop named unitId existed in CoursewareContainer - it doesn’t. unitId is not in redux. What we do have, is the unitId in the route params - what we refer to as routeUnitId. If we use this instead of the non-existent unitId, then life is good.
I wrote a test (that breaks!) prior to implementing the fix. The fix satisfies the test. 🎉
We want to be able to know if both the original user is a Staff user
as well as if the user being masqueraded as is staff. This updates
to accept both of these fields
* AA-278: Add offer alert to outline
It was previously only used in the courseware. But to match the
LMS, we also want to show it on the outline tab.
* AA-279: Add course expired alert to outline
It was previously only used in the courseware. But to match the
LMS, we also want to show it on the outline tab.