* initial set-up for the firefox device migration project
* add HTML file for UI wizard and more (#5449)
* Break out related documents to macro
* Tabbed menu scaffolding
* switching devices -- add wiki "UI" hook for device-migration wizard (#5455)
* add new UI component hook to wiki parser
* address feedback
* forgot to remove this
* add tests
* add stage/prod fxa metrics-flow endpoints to connect-src CSP (#5457)
* Use the is_switching_devices tag in document.html for script injection.
This also adds some default values for the FIREFOX_SWITCHING_DEVICES_ARTICLES
and FIREFOX_SWITCHING_DEVICES_TOPIC settings.
* Stub out SwitchingDevicesWizardManager class with a simple test, and add instantiator (#1254) (#5461)
* load device-migration-wizard JS in all places needed (#5462)
* load device-migration-wizard JS in all places needed
* make is_switching_device_document a property on the model
* ensure ui/youtube embeds are not wrapped with p tag
* setting up form-wizard skeleton
* Cleanup and formatting, load form-wizard in specific places
* Simplify data since we don't need to account for going between steps, cleanup entrypoints.js change
* add stage & prod FxA servers to form-action CSP (#5467)
* load switching-devices.js bundle for preview cases (#5466)
* load switching-devices.js bundle for preview cases (#5466)
* load switching-devices.js bundle for preview cases (#5466)
* Make SwitchingDevicesWizardManager request FxA metrics immediately after construction. (#1261)
This also:
* exposes the settings Django object to UI components
* adds a new FXA_ROOT settings value
* Add progress indicator and header to the wizard
* Call gettext for header string, change #steps to private field
* Lint fix
* create current_user graphql query
---------
Co-authored-by: Ryan Johnson <rjohnson@mozilla.com>
Co-authored-by: Ryan Johnson <escattone@gmail.com>
Co-authored-by: Mike Conley <mike.d.conley@gmail.com>
Co-authored-by: hannajones <jones.hanna.m@gmail.com>
Co-authored-by: Hanna Jones <hjones@mozilla.com>
involved some re-jigging of our scss files to ensure that unnecessary
bits of css weren't imported into svelte components when attempting to
import mixins or variables, as well as ensure imports are resolvable
by svelte-preprocess