You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue lays out the legacy dependencies of Graph and in what order to migrate all of the parts over to the new target architecture.
Server side
The Graph server contains two proxies forwarding regular search queries and explore queries to the respective Elasticsearch endpoints and license checking. The license is also checked client side which removes the need to do a separate check on the server side. The search endpoint can be replaced with a call to the low level search service app arch team is currently building. The proxy for explore calls can follow a similar approach as the Lens implementation.
Client side
All dependencies are included in a central app.js file which makes moving to the new platform easy because everything is already passed down from a central point. New components will never import stuff by themselves, but rely on getting all dependencies passed down from app.js.
The following files are currently imported and have to be replaced by their NP counterparts:
Done
Import
interim
👉
✅
ui/directives/saved_object_finder
❌
✅
ui/directives/input_focus
❌
✅
ui/saved_objects/ui/saved_object_save_as_checkbox
❌
{ addAppRedirectMessageToUrl, fatalError, toastNotifications } from ui/notify
LP
core.notifications
{ formatAngularHttpError } from ui/notify/lib
LP
core.notifications
✅
{ IndexPatternsProvider } from ui/index_patterns
data.indexPatterns
✅
chrome from ui/chrome
core.chrome
✅
{ capabilities } from ui/capabilities
Global Angular
core.application
$http
Global Angular
core.http
✅
config
core.uiSettings
ui/kbn_top_nav
Local Angular
{ TopNavMenu } from '../kibana_react/public' - make part of chrome component after state management is de-angularized
{ SavedObjectsClientProvider } from ui/saved_objects
Global Angular
? core.saved_objects once saved objects are de-angularized
uiRoutes from ui/routes
Local Angular
❌react router
{ uiModules } from ui/modules
Local Angular
❌
uiExports/fieldFormats
Global Angular
? probably not necessary anymore (might have been transient dependency of index patterns)
ui/autoload/all
Global Angular
❌
uiExports/savedObjectTypes
Global Angular
? app arch
{ SavedObjectRegistryProvider } from ui/saved_objects/saved_object_registry
This issue lays out the legacy dependencies of Graph and in what order to migrate all of the parts over to the new target architecture.
Server side
The Graph server contains two proxies forwarding regular search queries and explore queries to the respective Elasticsearch endpoints and license checking. The license is also checked client side which removes the need to do a separate check on the server side. The search endpoint can be replaced with a call to the low level search service app arch team is currently building. The proxy for explore calls can follow a similar approach as the Lens implementation.
Client side
All dependencies are included in a central
app.js
file which makes moving to the new platform easy because everything is already passed down from a central point. New components will never import stuff by themselves, but rely on getting all dependencies passed down fromapp.js
.The following files are currently imported and have to be replaced by their NP counterparts:
core.notifications
core.notifications
data.indexPatterns
core.chrome
core.application
core.http
core.uiSettings
{ TopNavMenu } from '../kibana_react/public'
- make part of chrome component after state management is de-angularizedcore.saved_objects
once saved objects are de-angularizedcore.overlays
npStart.core.injectedMetadata.getInjectedVar
core.overlays
The rewrite will be approached in the following order (see #44225 for tracking progress):
Reference: https://github.com/elastic/kibana/blob/master/src/core/MIGRATION.md
Approach outline slide deck: https://docs.google.com/presentation/d/1qTQlbcUpNEZRZKxLWVdGLIs85UHIEz2oHt7QPx8qcrk/edit?usp=sharing
The text was updated successfully, but these errors were encountered: