This commit refactors the way the Account MFE is activated in the platform. The main objective is to control the global activation/deactivation of the MFE through the account.redirect_to_microfrontend waffle flag and use the Site Configurations to control MFE activation/deactivation with per-site granularity. Notice that the Site Configuration object will have precedence over the waffle flag value. Since the classic Account Django view will be most likely supported during Lilac, the expiration of this temporary waffle flag was extended till the end of 2021 With this commit: - There's no need to create a Site Configuration object to get the MFE activated. Setting the waffle flag to True is enough. - It helps multisite installations to better handling granular per-site activation/deactivation. BREAKING CHANGE: For operators of multisite installations, the activation of the waffle flag will now activate the MFE for all sites, unless explicitly disabled on a per-site basis. Otherwise, this is a backwards-compatible change, since the MFE will remain activated for installations where this is already enabled.
Status: Active Responsibilities ================ The user_api app is currently a catch all that is used to provide various apis that are related to the user and also to features within the platform. Intended responsibility: To manage user profile and general account information and to provide APIs to do so easily. This includes the following features: user preference, user profile, user retirement, and account activation/deactivation. Direction: Decompose =============== Currently this app is a catch all for many user related information even when that information should really belong in a different app. If you are building a feature and need to provide information about a user within the context of your feature, you should localize that API to your feature and make your assumptions about what user information you need clear. For example authentication related APIs have already been moved to the user_authn django app. Glossary ======== More Documentation ==================