Premium support for our pure JavaScript UI components


Post by JussiSa »

Hi,

We have a large Angular app with Bryntum components (Grid, Calendar and Scheduler) and now we're implementing Finnish locale to it (some parts of it discussed here, but this is a new issue).

The problem currently is, that during app's initialization we set up localization, so it's done in AppModule. By our understanding, to localize all used components, we have to import LocaleManager from each component (@bryntum/grid, @bryntum/calendar, and so on..). All those imports from Bryntum packages makes our production initial.js -files 10-11MB and without the localization imports they're half that, around 5MB. The bundled main.js is about 11MB. That's just too large. Our budget's maximumError is 6MB in angular.json file.

Is there something we're implementing wrong or is the bundling something you'd have to pay attention to?

Details about our project:

  • Angular v12, contains 3 Angular projects
  • Latest verisons of Bryntum-components
  • Build optimizing is on
  • AOT is on

Post by saki »

In the above scenario: Scheduler + Grid, Calendar, you can save on Grid that you can import from Scheduler that extends it and the Scheduler package contains also Grid. (You need a separate license, however.)

We currently bundle Core packages (data, fields, stores, etc.) in each production package so there's Core in Grid, Core in Scheduler, etc. which can make the them bigger. We are planning to change it and have more granular packages in 5.0.

If saving on Grid won't be enough, prepare please a runnable showcase and we will try make the bundles smaller before the final solution in 5.0.


Post Reply