What's the different between sideBundle and bundle

i am wondering what is the different between

maybe i can answer this question, and metthew can say if i am right.

to use sideBundle the module that module have to be in the dependencyGraph while the build. if the module is not found in the dependencyGraph, that module would not be bundled.

this give you the possibility to bundle a module that is not explicit in the dependencyGraph. e.g. you using this:

System.import("multi-main/app_c").then(function(module) {});

Yes, pretty much exactly right. A sideBundle is for modules that are used only some of the time and doesn’t need to be part of the main bundle. An example is can/util/vdom/vdom which is the virtual DOM we use for server-side rendering. It is not needed in the client, so we put it in a side bundle so the client doesn’t need to load it.