This PR adds MFE API. This is part of the work that is being done to obtain the MFE Runtime Configurations and that has been discussed in the BTR WG.
Discussion: https://discuss.openedx.org/t/how-to-use-microfrontend-in-a-multitenant-instance/6936/14?u=mafermazu
MFE Runtime configuration - eduNEXT: https://docs.google.com/document/d/1-FHIQmyeQZu3311x8eYUNMru4JX7Yb3UlqjmJxvM8do/edit?usp=sharing
feat: add lms setting to set mfe config cache (#262)
Co-authored-by: María Fernanda Magallanes Z <maria.magallanes@edunext.co>
feat: make mfe config api disabled by default (#263)
* feat: make mfe config api disabled by default
* fix: simple is better than complex
test: add mfe config tests (#264)
* test: add mfe config tests
* test: fix it and simplify it
* test: correct pylint issues
fix: correct pep 8 violations
fix: add mfe api unit test in github workflow
fix: correct unit tests
refactor: move mfe api to lms
fix: try mfe api urls without regex
fix: add app_namespace in lms urls
fix: try url without conditional
Revert "fix: try url without conditional"
This reverts commit 694aab546134b4bd9ad2642e24927b42cac24459.
fix: set enable_mfe_config_api feature to true in the tests
test: try to add failed test case
Revert "test: try to add failed test case"
This reverts commit cee6bf656ab1b96492b0b6199ddff32a6d6a65bd.
docs: improve explanation and documentation
fix: ensure the response is a json object
refactor: be consistent with the variable names
fix: allow overriding mfe api config cache timeout in production
fix: handle 404 response in view
refactor: use a guard instead if-else
feat: add the possibility to show mfe specific config
It's safe to remove this because non-staff [1] users cannot access [2]
an `ErrorBlock`. We were able to reproduce this with and without this commit
with the following results:
1. Staff users were seeing the `ErrorBlock`.
2. Non-staff users were getting an empty `<div class="vert-mod"></div>`.
In theory, error blocks should be hidden in the Learning MFE because of this
option [3]. However, when we manually set `hide_access_error_blocks` to
`False`, we kept getting identical results (with and without this commit), so
it looks that the removal `NonStaffErrorBlock` was just omitted at some point.
[1] a4ec4c1b8e/lms/djangoapps/courseware/access.py (L419-L436)
[2] a4ec4c1b8e/lms/djangoapps/courseware/access.py (L150-L151)
[3] 92ca176fde/lms/djangoapps/courseware/views/views.py (L1547-L1551)
JIRA: https://openedx.atlassian.net/browse/BOM-2580
This PR aims at refactoring the discussion xblock sub project and moving it within the xmodule directory effectively removing its position as a sub project within edx-platform
* feat: added new live provider and fixed tests
* feat: added free_tier compatiblity
* fix: resolved linter issues and other refactors
* fix: ran makemigration to generate migrations
* fix: Implemeted key retrival for tabs
Co-authored-by: AhtishamShahid <ahtishamshahid@A006-00850.local>
* feat: add top-level serializer classes
List serializer classes stubbed, to be filled out later.
* test: add basic test for high-level serializer.
Includes 2 examples of how to patch sub-serializers.
Co-authored-by: nsprenkle <nsprenkle@2u.com>
- Moving xmodule folder to root as we're dissolving sub-projects of common folder in edx-platform
- More info: https://openedx.atlassian.net/browse/BOM-2579
- -e common/lib/xmodule has been removed from the requirements as xmodule has itself become the part of edx-platform and not being installed through requirements
- The test files common/lib/xmodule/test_files/ have been removed as they are not being used anymore