Skip to content

Lazy-load Dashboard component to reduce the size of the main bundle.

Antoine requested to merge ZeHiro/kresus:lazyload-dashboard into master

This MR aims at reducing the main bundle size from 1.58MiB to 1.24MiB (in production) by lazy loading the charts more intelligently.

The first commit extracts the selects from all the chart files to put them in a single file (one of the reason the charts were included in the bundle was due to the selects being shared between lazy-loaded modules and non lazy-loaded ones.

The second commit exposes the charts from a single file and lazy load all of the charts from there.

The file charts/charts.js is not written in ts because this would require modifying the target version of JS of ts-loader, which I prefer to leave it as is (it seems we are not very consistent across babel, ts etc see #1036 ).

Edited by Antoine

Merge request reports