* feat(Extensions): expose an observable API for added links and components
* refactor: make `getObservablePluginExtensions()` more RxJS style
* refactor(getPluginExtensions): remove unnecessary types
* fix(getPluginExtensions): remove unused imports
* Apply suggestions from code review
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
* refactor(getPluginExtensions): stop using `shareReply()`
* fix(grafana-runtime/extensions): typo in error messages
---------
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
* feat(grafana-data): introduce unstable entrypoint to package
* feat(grafana-runtime): introduce unstable entrypoint to package
* feat(plugins): expose unstable entrypoints for data and runtime to plugins
* feat(packages): dummy exports so package verification and shared deps imports work