Implement dashboards as web components
/-/ddd/dashboard/* is now a collection of web components in typescript.
www/static/DashboardApp.ts
is the entry point and the main controller of the dashboard UI.
The other major parts are:
- the chart widget is in
vega-tonic.ts
- the search form / filter interface is in
filter-input.ts
Other significant changes:
- Move charts to separate yaml files and queries to separate sql files
-- Instead of everything in one big yaml file
--- move the definition of each chart into
www/templates/views/charts/*.yaml
--- "canned queries" are now inwww/sql/*.sql
--- Dashboards and tabs are still defined inwww/metadata.yaml
Plus some other smaller fixes:
- Make phid links work with base_url in datasette
- fixup ci & deployment issues in
.gitlab-ci.yaml
- Fix the metrics mapper cli tool to properly handle cursors. Now it can automatically resume importing at the point where the previous run left off.