1cfd3f81fb
* added extensions to plugin.json and exposing it via frontend settings. * added extensions to the plugin.json schema. * changing the extensions in frontend settings to a map instead of an array. * wip * feat(pluginregistry): begin wiring up registry * feat(pluginextensions): prevent duplicate links and clean up * added test case for link extensions. * added tests and implemented the getPluginLink function. * wip * feat(pluginextensions): expose plugin extension registry * fix(pluginextensions): appease the typescript gods post rename * renamed file and will throw error if trying to call setExtensionsRegistry if trying to call it twice. * added reafactorings. * fixed failing test. * minor refactorings to make sure we only include extensions if the app is enabled. * fixed some nits. * Update public/app/features/plugins/extensions/registry.test.ts Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com> * Update packages/grafana-runtime/src/services/pluginExtensions/registry.ts Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com> * Update packages/grafana-runtime/src/services/pluginExtensions/registry.ts Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com> * Update public/app/features/plugins/extensions/registry.test.ts Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com> * Moved types for extensions from data to runtime. * added a small example on how you could consume link extensions. * renamed after feedback from levi. * updated the plugindef.cue. * using the generated plugin def. * added tests for apps and extensions. * fixed linting issues. * wip * wip * wip * wip * test(extensions): fix up failing tests * feat(extensions): freeze registry extension arrays, include type in registry items * added restrictions in the pugindef cue schema. * wip * added required fields. * added key to uniquely identify each item. * test(pluginextensions): align tests with implementation * chore(schema): refresh reference.md --------- Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com> Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
56 lines
1.2 KiB
JSON
56 lines
1.2 KiB
JSON
{
|
|
"type": "app",
|
|
"name": "Test App",
|
|
"id": "test-app",
|
|
"info": {
|
|
"description": "Official Grafana Test App & Dashboard bundle",
|
|
"author": {
|
|
"name": "Test Inc.",
|
|
"url": "http://test.com"
|
|
},
|
|
"keywords": [
|
|
"test"
|
|
],
|
|
"links": [
|
|
{
|
|
"name": "Project site",
|
|
"url": "http://project.com"
|
|
},
|
|
{
|
|
"name": "License & Terms",
|
|
"url": "http://license.com"
|
|
}
|
|
],
|
|
"version": "1.0.0",
|
|
"updated": "2015-02-10"
|
|
},
|
|
"includes": [
|
|
{
|
|
"type": "page",
|
|
"name": "Root Page (react)",
|
|
"path": "/a/my-simple-app",
|
|
"role": "Viewer",
|
|
"addToNav": true,
|
|
"defaultNav": true
|
|
}
|
|
],
|
|
"extensions": [
|
|
{
|
|
"target": "plugins/grafana-slo-app/slo-breach",
|
|
"type": "link",
|
|
"title": "Declare incident",
|
|
"description": "Declares a new incident",
|
|
"path": "/incidents/declare"
|
|
},
|
|
{
|
|
"target": "plugins/grafana-slo-app/slo-breach",
|
|
"type": "link",
|
|
"title": "Declare incident",
|
|
"description": "Declares a new incident (path without backslash)",
|
|
"path": "incidents/declare"
|
|
}
|
|
],
|
|
"dependencies": {
|
|
"grafanaDependency": ">=8.0.0"
|
|
}
|
|
} |