-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Shim dev tools #49349
Shim dev tools #49349
Conversation
💔 Build Failed |
…pplication-service
…h1293/kibana into flash1293/local-application-service
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one looks kinda weird, was Kibana server running?
Fwiw, it looks like may be an EUI problem; created this issue: elastic/eui#2517 Update: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Platform glue code LGTM
}); | ||
} | ||
|
||
start(core: CoreStart, { newPlatformDevTools }: DevToolsPluginStartDependencies) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
start(core: CoreStart, { newPlatformDevTools }: DevToolsPluginStartDependencies) { | |
public start(core: CoreStart, { newPlatformDevTools }: DevToolsPluginStartDependencies) { |
start(core: CoreStart, { newPlatformDevTools }: DevToolsPluginStartDependencies) { | ||
this.getSortedDevTools = newPlatformDevTools.getSortedDevTools; | ||
if (this.getSortedDevTools().length === 0) { | ||
core.chrome.navLinks.update('kibana:dev_tools', { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI this API will be replaced by the AppUpdater mechanism proposed in #45291
if (!this.getSortedDevTools) { | ||
throw new Error('not started yet'); | ||
} | ||
const { renderApp } = await import('./render_app'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By convention, this module should live in ./application
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@maryia-lapata @kertal we probably have to fix that in a few places ;)
could be the case, I |
@elasticmachine merge upstream |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code LGTM 👍 , tested today, a kbn bootstrap in between, works
💔 Build Failed |
💔 Build Failed |
@elasticmachine merge upstream |
💚 Build Succeeded |
Pinging @elastic/kibana-app (Team:KibanaApp) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
I just created a PR with a design suggestion.
Merging this, @miukimiu s suggestion can get in as a separate PR. |
This PR shims the dev tools app and removes the last bits of angular. By providing a registry similar to the application service dev tools can register themselves without using
uiRoutes
or directives.Dev docs
The
ui/registry/dev_tools
is removed in favor of theDevTools
plugin which exposes aregister
method in the setup contract. Registering app works mostly the same as registering apps incore.application.register
. Routing will be handled by the id of the dev tool - your dev tool will be mounted when the URL matches/app/kibana#/dev_tools/<YOUR ID>
. This API doesn't support angular, for registering angular dev tools, bootstrap a local module on mount into the given HTML element.