Moves the Program Dashboard APIs out of the deprecated remnants of the legacy learner dashboard, into the Programs djangoapp.
Keeps the old legacy routes for this API, left over from the deprecated remnants of the legacy learner dashboard, alongside future-proofed routes which will work when the deprecated, legacy Program Dashboard is eventually replaced with functionality in the Learner Dashboard MFE.
FIXES: APER-3949
After moving the recommendations code from learner_home to learner_recommendations we need to remove the legacy code.
Point the learner dashboard recommendations API from legacy to new endpoint.
VAN-1310
* refactor: remove old profiling function
* refactor: move mocks into separate directory
* refactor: move recommendations code into a new dir
* docs: docstring consistency and branding updates
* docs: add ADR for core versus experimental code
* refactor: remove resume url checks for performance
Existing "get resume urls" loads the course structure to verify the last
completed block actually exists. This is a potentially very expensive
operation, especially for users with many enrollments. This isn't a huge
issue since Learning MFE already has a fallback behavior for this case.
* refactor: remove now-unnecessary serializer check
Old behavior passed an empty string for missing resume URL and
serializer would cast to None. Instead, update simply passes through
None for missing resume url
* style: update dependency ordering
* style: run black on some more files
* fix: update learner home api
* refactor: update learner home API pathing
* fix: remove unused logger
* fix: remove unused import
* style: make pylint happy
* style: remove extra space
* style: remove extra space
Co-authored-by: nsprenkle <nsprenkle@2u.com>
Co-authored-by: Nathan Sprenkle <nsprenkle@users.noreply.github.com>
* feat: fill out enrollment serializer
* test: add basic integration tests for enrollments
* feat: get info for user account activation
* test: test integrating user account activation
* feat: get course enrollments
* feat: get course email settings
* feat: add ecommerce info
* feat: add resume urls
* refactor: move learner home to separate app
* refactor: remove course limit
Co-authored-by: nsprenkle <nsprenkle@2u.com>