Codex components part 1
This MR does the following:
- Adds LESS and,
@wikimedia/codex-design-tokens
as dependencies to the project - Adds some global CSS styling (mostly resets)
- Moves the navigation element into a new stand-alone component, simplifying the
App.vue
file - Renames the top-level router view components to include "page", to help differentiate them from the smaller components used inside of them. LoginPage, OverviewPage, etc.
- Re-works the JobHistory, Backport, and Navigation components to use the Vue Composition API (this allowed for some simpler code, especially in the templates)
- Replaces the custom table in JobHistory with a Codex Table component; an inline Message component is also used to display job status. Instead of emitting events on row clicks, the job IDs are now
<router-link>
components that link to the job detail page for the relevant job. - Updates the Backport component to use a Codex ChipInput component combined with a Button inside of a Field component for the Gerrit patch lookup feature. In the future this element might be a good place for the new Codex MultiselectLookup component, but we need a way to query an API to get Gerrit patch numbers first. This component has also been re-worked to rely on computed properties for things like automatically enabling/disabling the button.