Originally posted by **wa0x6e** February 11, 2024
Following https://github.com/wa0x6e/cal-heatmap/issues/366
The current plugin files are not exported correctly. I made some tests, by trying to add all plugins files and types to the `export` property in package.json, and got it working only on when `moduleResolution` is set to `Node16` in tsconfig, and `type` set to `module` in package.json in the package importing cal-heatmap.
Multiple export from package.json is available only on recent config, and broken on package using `node`, or `esnext`. To ensure the broadest support of setup, multiple export is not a solution.
This left us with 2 solutions:
1. merge the plugins inside the core package, and import them with `import { Tooltip } from 'cal-heatmap'` => will increase build size
2. externalize the plugins to their own NPM package => will require installing each plugin as a new dependency
Solution 2 has been retained, and all plugins will have their own repositories in https://github.com/cal-heatmap/
Refactoring is in progress, and next release (4.3.0, or maybe even 5) will incorporate this breaking changes.
Discussed in https://github.com/wa0x6e/cal-heatmap/discussions/486