diff --git a/x-pack/legacy/plugins/maps/public/actions/map_actions.test.js b/x-pack/legacy/plugins/maps/public/actions/map_actions.test.js
index c280b8af7ab80d..7e2a3c827fa88f 100644
--- a/x-pack/legacy/plugins/maps/public/actions/map_actions.test.js
+++ b/x-pack/legacy/plugins/maps/public/actions/map_actions.test.js
@@ -5,7 +5,7 @@
*/
jest.mock('../selectors/map_selectors', () => ({}));
-jest.mock('../kibana_services', () => ({}));
+jest.mock('../../../../../plugins/maps/public/kibana_services', () => ({}));
import { mapExtentChanged, setMouseCoordinates } from './map_actions';
diff --git a/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js b/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js
index 5e497ff0736b2c..686259aeaaba44 100644
--- a/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js
+++ b/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js
@@ -4,11 +4,28 @@
* you may not use this file except in compliance with the Elastic License.
*/
import _ from 'lodash';
+// Import each layer type, even those not used, to init in registry
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../../plugins/maps/public/layers/sources/wms_source';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../../plugins/maps/public/layers/sources/ems_file_source';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../../plugins/maps/public/layers/sources/es_search_source';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../../plugins/maps/public/layers/sources/es_pew_pew_source/es_pew_pew_source';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../../plugins/maps/public/layers/sources/kibana_regionmap_source';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../../plugins/maps/public/layers/sources/es_geo_grid_source';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../../plugins/maps/public/layers/sources/xyz_tms_source';
+
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { KibanaTilemapSource } from '../../../../../plugins/maps/public/layers/sources/kibana_tilemap_source';
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { EMSTMSSource } from '../../../../../plugins/maps/public/layers/sources/ems_tms_source';
-import { getInjectedVarFunc } from '../kibana_services';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getInjectedVarFunc } from '../../../../../plugins/maps/public/kibana_services';
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { getKibanaTileMap } from '../../../../../plugins/maps/public/meta';
diff --git a/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.test.js b/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.test.js
index 5334beaaf714ac..8c9185a16ea0e7 100644
--- a/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.test.js
+++ b/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.test.js
@@ -7,7 +7,7 @@
jest.mock('../../../../../plugins/maps/public/meta', () => {
return {};
});
-jest.mock('../kibana_services');
+jest.mock('../../../../../plugins/maps/public/kibana_services');
import { getInitialLayers } from './get_initial_layers';
@@ -15,7 +15,8 @@ const layerListNotProvided = undefined;
describe('Saved object has layer list', () => {
beforeEach(() => {
- require('../kibana_services').getInjectedVarFunc = () => jest.fn();
+ require('../../../../../plugins/maps/public/kibana_services').getInjectedVarFunc = () =>
+ jest.fn();
});
it('Should get initial layers from saved object', () => {
@@ -65,7 +66,7 @@ describe('EMS is enabled', () => {
require('../../../../../plugins/maps/public/meta').getKibanaTileMap = () => {
return null;
};
- require('../kibana_services').getInjectedVarFunc = () => key => {
+ require('../../../../../plugins/maps/public/kibana_services').getInjectedVarFunc = () => key => {
switch (key) {
case 'emsTileLayerId':
return {
@@ -110,7 +111,7 @@ describe('EMS is not enabled', () => {
return null;
};
- require('../kibana_services').getInjectedVarFunc = () => key => {
+ require('../../../../../plugins/maps/public/kibana_services').getInjectedVarFunc = () => key => {
switch (key) {
case 'isEmsEnabled':
return false;
diff --git a/x-pack/legacy/plugins/maps/public/angular/get_initial_query.js b/x-pack/legacy/plugins/maps/public/angular/get_initial_query.js
index fc8305b252cc38..c50ecb2b05dc07 100644
--- a/x-pack/legacy/plugins/maps/public/angular/get_initial_query.js
+++ b/x-pack/legacy/plugins/maps/public/angular/get_initial_query.js
@@ -4,11 +4,12 @@
* you may not use this file except in compliance with the Elastic License.
*/
-import chrome from 'ui/chrome';
-
-const settings = chrome.getUiSettingsClient();
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getUiSettings } from '../../../../../plugins/maps/public/kibana_services';
export function getInitialQuery({ mapStateJSON, appState = {}, userQueryLanguage }) {
+ const settings = getUiSettings();
+
if (appState.query) {
return appState.query;
}
diff --git a/x-pack/legacy/plugins/maps/public/angular/get_initial_refresh_config.js b/x-pack/legacy/plugins/maps/public/angular/get_initial_refresh_config.js
index 10a2580b78e6d0..8735d45debfc4c 100644
--- a/x-pack/legacy/plugins/maps/public/angular/get_initial_refresh_config.js
+++ b/x-pack/legacy/plugins/maps/public/angular/get_initial_refresh_config.js
@@ -3,11 +3,12 @@
* or more contributor license agreements. Licensed under the Elastic License;
* you may not use this file except in compliance with the Elastic License.
*/
-import chrome from 'ui/chrome';
-
-const uiSettings = chrome.getUiSettingsClient();
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getUiSettings } from '../../../../../plugins/maps/public/kibana_services';
export function getInitialRefreshConfig({ mapStateJSON, globalState = {} }) {
+ const uiSettings = getUiSettings();
+
if (mapStateJSON) {
const mapState = JSON.parse(mapStateJSON);
if (mapState.refreshConfig) {
diff --git a/x-pack/legacy/plugins/maps/public/angular/get_initial_time_filters.js b/x-pack/legacy/plugins/maps/public/angular/get_initial_time_filters.js
index 82439175841b26..74fbf603e99f5e 100644
--- a/x-pack/legacy/plugins/maps/public/angular/get_initial_time_filters.js
+++ b/x-pack/legacy/plugins/maps/public/angular/get_initial_time_filters.js
@@ -3,9 +3,8 @@
* or more contributor license agreements. Licensed under the Elastic License;
* you may not use this file except in compliance with the Elastic License.
*/
-import chrome from 'ui/chrome';
-
-const uiSettings = chrome.getUiSettingsClient();
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getUiSettings } from '../../../../../plugins/maps/public/kibana_services';
export function getInitialTimeFilters({ mapStateJSON, globalState = {} }) {
if (mapStateJSON) {
@@ -15,6 +14,6 @@ export function getInitialTimeFilters({ mapStateJSON, globalState = {} }) {
}
}
- const defaultTime = uiSettings.get('timepicker:timeDefaults');
+ const defaultTime = getUiSettings().get('timepicker:timeDefaults');
return { ...defaultTime, ...globalState.time };
}
diff --git a/x-pack/legacy/plugins/maps/public/angular/map.html b/x-pack/legacy/plugins/maps/public/angular/map.html
index 2f34ffa660d6ef..7d7dcf6f9c9a95 100644
--- a/x-pack/legacy/plugins/maps/public/angular/map.html
+++ b/x-pack/legacy/plugins/maps/public/angular/map.html
@@ -3,11 +3,11 @@
{
- const { filterManager } = npStart.plugins.data.query;
+ const savedQueryService = getData().query.savedQueries;
+ const { filterManager } = getData().query;
const savedMap = $route.current.locals.map;
$scope.screenTitle = savedMap.title;
let unsubscribe;
@@ -115,6 +129,14 @@ app.controller(
return _.get($state, 'filters', []);
}
+ const visibleSubscription = getCoreChrome()
+ .getIsVisible$()
+ .subscribe(isVisible => {
+ $scope.$evalAsync(() => {
+ $scope.isVisible = isVisible;
+ });
+ });
+
$scope.$listen(globalState, 'fetch_with_changes', diff => {
if (diff.includes('time') || diff.includes('filters')) {
onQueryChange({
@@ -169,10 +191,10 @@ app.controller(
});
/* Saved Queries */
- $scope.showSaveQuery = capabilities.get().maps.saveQuery;
+ $scope.showSaveQuery = getMapsCapabilities().saveQuery;
$scope.$watch(
- () => capabilities.get().maps.saveQuery,
+ () => getMapsCapabilities().saveQuery,
newCapability => {
$scope.showSaveQuery = newCapability;
}
@@ -342,7 +364,7 @@ app.controller(
// clear old UI state
store.dispatch(setSelectedLayer(null));
store.dispatch(updateFlyout(FLYOUT_STATE.NONE));
- store.dispatch(setReadOnly(!capabilities.get().maps.save));
+ store.dispatch(setReadOnly(!getMapsCapabilities().save));
handleStoreChanges(store);
unsubscribe = store.subscribe(() => {
@@ -446,6 +468,8 @@ app.controller(
$scope.$on('$destroy', () => {
window.removeEventListener('beforeunload', beforeUnload);
+ visibleSubscription.unsubscribe();
+ getCoreChrome().setIsVisible(true);
if (unsubscribe) {
unsubscribe();
@@ -457,7 +481,7 @@ app.controller(
});
const updateBreadcrumbs = () => {
- chrome.breadcrumbs.set([
+ getCoreChrome().setBreadcrumbs([
{
text: i18n.translate('xpack.maps.mapController.mapsBreadcrumbLabel', {
defaultMessage: 'Maps',
@@ -482,7 +506,7 @@ app.controller(
};
updateBreadcrumbs();
- addHelpMenuToAppChrome(chrome);
+ addHelpMenuToAppChrome();
async function doSave(saveOptions) {
await store.dispatch(clearTransientLayerStateAndCloseFlyout());
@@ -491,9 +515,9 @@ app.controller(
try {
id = await savedMap.save(saveOptions);
- docTitle.change(savedMap.title);
+ getCoreChrome().docTitle.change(savedMap.title);
} catch (err) {
- toastNotifications.addDanger({
+ getToasts().addDanger({
title: i18n.translate('xpack.maps.mapController.saveErrorMessage', {
defaultMessage: `Error on saving '{title}'`,
values: { title: savedMap.title },
@@ -505,7 +529,7 @@ app.controller(
}
if (id) {
- toastNotifications.addSuccess({
+ getToasts().addSuccess({
title: i18n.translate('xpack.maps.mapController.saveSuccessMessage', {
defaultMessage: `Saved '{title}'`,
values: { title: savedMap.title },
@@ -539,6 +563,7 @@ app.controller(
}),
testId: 'mapsFullScreenMode',
run() {
+ getCoreChrome().setIsVisible(false);
store.dispatch(enableFullScreen());
},
},
@@ -556,7 +581,7 @@ app.controller(
getInspector().open(inspectorAdapters, {});
},
},
- ...(capabilities.get().maps.save
+ ...(getMapsCapabilities().save
? [
{
id: 'save',
@@ -611,7 +636,7 @@ app.controller(
showDescription={false}
/>
);
- showSaveModal(saveModal, npStart.core.i18n.Context);
+ showSaveModal(saveModal, getCoreI18n().Context);
},
},
]
diff --git a/x-pack/legacy/plugins/maps/public/angular/services/gis_map_saved_object_loader.js b/x-pack/legacy/plugins/maps/public/angular/services/gis_map_saved_object_loader.js
index bc636c0b200f84..710997a9c0d7f3 100644
--- a/x-pack/legacy/plugins/maps/public/angular/services/gis_map_saved_object_loader.js
+++ b/x-pack/legacy/plugins/maps/public/angular/services/gis_map_saved_object_loader.js
@@ -4,24 +4,27 @@
* you may not use this file except in compliance with the Elastic License.
*/
+import _ from 'lodash';
import { createSavedGisMapClass } from './saved_gis_map';
-import { uiModules } from 'ui/modules';
import { SavedObjectLoader } from '../../../../../../../src/plugins/saved_objects/public';
-import { npStart } from '../../../../../../../src/legacy/ui/public/new_platform';
+import {
+ getCoreChrome,
+ getSavedObjectsClient,
+ getIndexPatternService,
+ getCoreOverlays,
+ getData,
+ // eslint-disable-next-line @kbn/eslint/no-restricted-paths
+} from '../../../../../../plugins/maps/public/kibana_services';
-const module = uiModules.get('app/maps');
-
-// This is the only thing that gets injected into controllers
-module.service('gisMapSavedObjectLoader', function() {
- const savedObjectsClient = npStart.core.savedObjects.client;
+export const getMapsSavedObjectLoader = _.once(function() {
const services = {
- savedObjectsClient,
- indexPatterns: npStart.plugins.data.indexPatterns,
- search: npStart.plugins.data.search,
- chrome: npStart.core.chrome,
- overlays: npStart.core.overlays,
+ savedObjectsClient: getSavedObjectsClient(),
+ indexPatterns: getIndexPatternService(),
+ search: getData().search,
+ chrome: getCoreChrome(),
+ overlays: getCoreOverlays(),
};
const SavedGisMap = createSavedGisMapClass(services);
- return new SavedObjectLoader(SavedGisMap, npStart.core.savedObjects.client, npStart.core.chrome);
+ return new SavedObjectLoader(SavedGisMap, getSavedObjectsClient(), getCoreChrome());
});
diff --git a/x-pack/legacy/plugins/maps/public/components/map_listing.js b/x-pack/legacy/plugins/maps/public/components/map_listing.js
index 6fb5930e81a209..ef1d524cb91dd2 100644
--- a/x-pack/legacy/plugins/maps/public/components/map_listing.js
+++ b/x-pack/legacy/plugins/maps/public/components/map_listing.js
@@ -7,7 +7,8 @@
import React from 'react';
import PropTypes from 'prop-types';
import _ from 'lodash';
-import { toastNotifications } from 'ui/notify';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getToasts } from '../../../../../plugins/maps/public/kibana_services';
import {
EuiTitle,
EuiFieldSearch,
@@ -27,7 +28,6 @@ import {
import { i18n } from '@kbn/i18n';
import { FormattedMessage } from '@kbn/i18n/react';
import { addHelpMenuToAppChrome } from '../help_menu_util';
-import chrome from 'ui/chrome';
export const EMPTY_FILTER = '';
@@ -55,7 +55,7 @@ export class MapListing extends React.Component {
componentDidMount() {
this.fetchItems();
- addHelpMenuToAppChrome(chrome);
+ addHelpMenuToAppChrome();
}
debouncedFetch = _.debounce(async filter => {
@@ -91,7 +91,7 @@ export class MapListing extends React.Component {
try {
await this.props.delete(this.state.selectedIds);
} catch (error) {
- toastNotifications.addDanger({
+ getToasts().addDanger({
title: i18n.translate('xpack.maps.mapListing.unableToDeleteToastTitle', {
defaultMessage: `Unable to delete map(s)`,
}),
diff --git a/x-pack/legacy/plugins/maps/public/connected_components/gis_map/index.js b/x-pack/legacy/plugins/maps/public/connected_components/gis_map/index.js
index 39cb2c469e0544..2d8265bae93878 100644
--- a/x-pack/legacy/plugins/maps/public/connected_components/gis_map/index.js
+++ b/x-pack/legacy/plugins/maps/public/connected_components/gis_map/index.js
@@ -18,6 +18,8 @@ import {
getQueryableUniqueIndexPatternIds,
isToolbarOverlayHidden,
} from '../../selectors/map_selectors';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getCoreChrome } from '../../../../../../plugins/maps/public/kibana_services';
function mapStateToProps(state = {}) {
const flyoutDisplay = getFlyoutDisplay(state);
@@ -37,7 +39,10 @@ function mapStateToProps(state = {}) {
function mapDispatchToProps(dispatch) {
return {
triggerRefreshTimer: () => dispatch(triggerRefreshTimer()),
- exitFullScreen: () => dispatch(exitFullScreen()),
+ exitFullScreen: () => {
+ dispatch(exitFullScreen());
+ getCoreChrome().setIsVisible(true);
+ },
cancelAllInFlightRequests: () => dispatch(cancelAllInFlightRequests()),
};
}
diff --git a/x-pack/legacy/plugins/maps/public/connected_components/gis_map/view.js b/x-pack/legacy/plugins/maps/public/connected_components/gis_map/view.js
index 358313b8f5b6dd..06097ebea1900a 100644
--- a/x-pack/legacy/plugins/maps/public/connected_components/gis_map/view.js
+++ b/x-pack/legacy/plugins/maps/public/connected_components/gis_map/view.js
@@ -12,7 +12,8 @@ import { ToolbarOverlay } from '../toolbar_overlay/index';
import { LayerPanel } from '../layer_panel/index';
import { AddLayerPanel } from '../layer_addpanel/index';
import { EuiFlexGroup, EuiFlexItem, EuiCallOut } from '@elastic/eui';
-import { ExitFullScreenButton } from 'ui/exit_full_screen';
+import { ExitFullScreenButton } from '../../../../../../../src/plugins/kibana_react/public';
+
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { getIndexPatternsFromIds } from '../../../../../../plugins/maps/public/index_pattern_util';
import { ES_GEO_FIELD_TYPE } from '../../../common/constants';
diff --git a/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/filter_editor/filter_editor.js b/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/filter_editor/filter_editor.js
index f6bcac0dfc3391..40fdac38493d4b 100644
--- a/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/filter_editor/filter_editor.js
+++ b/x-pack/legacy/plugins/maps/public/connected_components/layer_panel/filter_editor/filter_editor.js
@@ -20,12 +20,14 @@ import {
import { FormattedMessage } from '@kbn/i18n/react';
import { i18n } from '@kbn/i18n';
-import { getIndexPatternService } from '../../../kibana_services';
+import {
+ getIndexPatternService,
+ getUiSettings,
+ getData,
+ // eslint-disable-next-line @kbn/eslint/no-restricted-paths
+} from '../../../../../../../plugins/maps/public/kibana_services';
import { GlobalFilterCheckbox } from '../../../components/global_filter_checkbox';
-import { npStart } from 'ui/new_platform';
-const { SearchBar } = npStart.plugins.data.ui;
-
export class FilterEditor extends Component {
state = {
isPopoverOpen: false,
@@ -84,7 +86,8 @@ export class FilterEditor extends Component {
_renderQueryPopover() {
const layerQuery = this.props.layer.getQuery();
- const { uiSettings } = npStart.core;
+ const uiSettings = getUiSettings();
+ const { SearchBar } = getData().ui;
return (
diff --git a/x-pack/legacy/plugins/maps/public/connected_components/map/features_tooltip/feature_geometry_filter_form.js b/x-pack/legacy/plugins/maps/public/connected_components/map/features_tooltip/feature_geometry_filter_form.js
index 7063c50edad6a0..15824b82965e83 100644
--- a/x-pack/legacy/plugins/maps/public/connected_components/map/features_tooltip/feature_geometry_filter_form.js
+++ b/x-pack/legacy/plugins/maps/public/connected_components/map/features_tooltip/feature_geometry_filter_form.js
@@ -12,7 +12,8 @@ import { i18n } from '@kbn/i18n';
import { createSpatialFilterWithGeometry } from '../../../../../../../plugins/maps/public/elasticsearch_geo_utils';
import { GEO_JSON_TYPE } from '../../../../common/constants';
import { GeometryFilterForm } from '../../../components/geometry_filter_form';
-import { UrlOverflowService } from 'ui/error_url_overflow';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { UrlOverflowService } from '../../../../../../../../src/plugins/kibana_legacy/public';
import rison from 'rison-node';
// over estimated and imprecise value to ensure filter has additional room for any meta keys added when filter is mapped.
diff --git a/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js b/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js
index fedc1902d80a25..1fe3d0d493ee79 100644
--- a/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js
+++ b/x-pack/legacy/plugins/maps/public/connected_components/map/mb/view.js
@@ -18,7 +18,6 @@ import { DECIMAL_DEGREES_PRECISION, ZOOM_PRECISION } from '../../../../common/co
import mapboxgl from 'mapbox-gl/dist/mapbox-gl-csp';
import mbWorkerUrl from '!!file-loader!mapbox-gl/dist/mapbox-gl-csp-worker';
import mbRtlPlugin from '!!file-loader!@mapbox/mapbox-gl-rtl-text/mapbox-gl-rtl-text.min.js';
-import chrome from 'ui/chrome';
import { spritesheet } from '@elastic/maki';
import sprites1 from '@elastic/maki/dist/sprite@1.png';
import sprites2 from '@elastic/maki/dist/sprite@2.png';
@@ -29,6 +28,8 @@ import {
clampToLonBounds,
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
} from '../../../../../../../plugins/maps/public/elasticsearch_geo_utils';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getInjectedVarFunc } from '../../../../../../../plugins/maps/public/kibana_services';
mapboxgl.workerUrl = mbWorkerUrl;
mapboxgl.setRTLTextPlugin(mbRtlPlugin);
@@ -129,7 +130,7 @@ export class MBMapContainer extends React.Component {
container: this.refs.mapContainer,
style: mbStyle,
scrollZoom: this.props.scrollZoom,
- preserveDrawingBuffer: chrome.getInjected('preserveDrawingBuffer', false),
+ preserveDrawingBuffer: getInjectedVarFunc()('preserveDrawingBuffer', false),
interactive: !this.props.disableInteractive,
};
const initialView = _.get(this.props.goto, 'center');
diff --git a/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable.tsx b/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable.tsx
index bdd2d863e6920a..b8e4c84ad56a17 100644
--- a/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable.tsx
+++ b/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable.tsx
@@ -11,7 +11,6 @@ import { render, unmountComponentAtNode } from 'react-dom';
import 'mapbox-gl/dist/mapbox-gl.css';
import { I18nContext } from 'ui/i18n';
-import { npStart } from 'ui/new_platform';
import { Subscription } from 'rxjs';
import { Unsubscribe } from 'redux';
import {
@@ -59,6 +58,8 @@ import { getMapCenter, getMapZoom, getHiddenLayerIds } from '../selectors/map_se
import { MAP_SAVED_OBJECT_TYPE } from '../../common/constants';
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { RenderToolTipContent } from '../../../../../plugins/maps/public/layers/tooltips/tooltip_property';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getUiActions } from '../../../../../plugins/maps/public/kibana_services';
interface MapEmbeddableConfig {
editUrl?: string;
@@ -269,7 +270,7 @@ export class MapEmbeddable extends Embeddable {
- npStart.plugins.uiActions.executeTriggerActions(APPLY_FILTER_TRIGGER, {
+ getUiActions().executeTriggerActions(APPLY_FILTER_TRIGGER, {
embeddable: this,
filters,
});
diff --git a/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.ts b/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.ts
index 5deb3057a449ee..96c3baf634a834 100644
--- a/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.ts
+++ b/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.ts
@@ -5,14 +5,18 @@
*/
import _ from 'lodash';
-import chrome from 'ui/chrome';
-import { capabilities } from 'ui/capabilities';
import { i18n } from '@kbn/i18n';
import { npSetup, npStart } from 'ui/new_platform';
-import { SavedObjectLoader } from 'src/plugins/saved_objects/public';
import { IIndexPattern } from 'src/plugins/data/public';
+// @ts-ignore
+import { getMapsSavedObjectLoader } from '../angular/services/gis_map_saved_object_loader';
import { MapEmbeddable, MapEmbeddableInput } from './map_embeddable';
-import { getIndexPatternService } from '../kibana_services';
+import {
+ getIndexPatternService,
+ getHttp,
+ getMapsCapabilities,
+ // eslint-disable-next-line @kbn/eslint/no-restricted-paths
+} from '../../../../../plugins/maps/public/kibana_services';
import {
EmbeddableFactoryDefinition,
IContainer,
@@ -26,7 +30,6 @@ import { getQueryableUniqueIndexPatternIds } from '../selectors/map_selectors';
import { getInitialLayers } from '../angular/get_initial_layers';
import { mergeInputWithSavedMap } from './merge_input_with_saved_map';
import '../angular/services/gis_map_saved_object_loader';
-import { bindSetupCoreAndPlugins, bindStartCoreAndPlugins } from '../plugin';
// @ts-ignore
import {
bindSetupCoreAndPlugins as bindNpSetupCoreAndPlugins,
@@ -44,14 +47,12 @@ export class MapEmbeddableFactory implements EmbeddableFactoryDefinition {
};
constructor() {
// Init required services. Necessary while in legacy
- bindSetupCoreAndPlugins(npSetup.core, npSetup.plugins);
bindNpSetupCoreAndPlugins(npSetup.core, npSetup.plugins);
- bindStartCoreAndPlugins(npStart.core, npStart.plugins);
bindNpStartCoreAndPlugins(npStart.core, npStart.plugins);
}
async isEditable() {
- return capabilities.get().maps.save as boolean;
+ return getMapsCapabilities().save as boolean;
}
// Not supported yet for maps types.
@@ -96,8 +97,7 @@ export class MapEmbeddableFactory implements EmbeddableFactoryDefinition {
}
async _fetchSavedMap(savedObjectId: string) {
- const $injector = await chrome.dangerouslyGetActiveInjector();
- const savedObjectLoader = $injector.get('gisMapSavedObjectLoader');
+ const savedObjectLoader = getMapsSavedObjectLoader();
return await savedObjectLoader.get(savedObjectId);
}
@@ -114,7 +114,7 @@ export class MapEmbeddableFactory implements EmbeddableFactoryDefinition {
{
layerList,
title: savedMap.title,
- editUrl: chrome.addBasePath(createMapPath(savedObjectId)),
+ editUrl: getHttp().basePath.prepend(createMapPath(savedObjectId)),
indexPatterns,
editable: await this.isEditable(),
},
diff --git a/x-pack/legacy/plugins/maps/public/help_menu_util.js b/x-pack/legacy/plugins/maps/public/help_menu_util.js
index 72d51cc180eb37..70b9340b562cd1 100644
--- a/x-pack/legacy/plugins/maps/public/help_menu_util.js
+++ b/x-pack/legacy/plugins/maps/public/help_menu_util.js
@@ -3,10 +3,13 @@
* or more contributor license agreements. Licensed under the Elastic License;
* you may not use this file except in compliance with the Elastic License.
*/
-import { ELASTIC_WEBSITE_URL, DOC_LINK_VERSION } from 'ui/documentation_links';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getDocLinks, getCoreChrome } from '../../../../plugins/maps/public/kibana_services';
-export function addHelpMenuToAppChrome(chrome) {
- chrome.helpExtension.set({
+export function addHelpMenuToAppChrome() {
+ const { ELASTIC_WEBSITE_URL, DOC_LINK_VERSION } = getDocLinks();
+
+ getCoreChrome().setHelpExtension({
appName: 'Maps',
links: [
{
diff --git a/x-pack/legacy/plugins/maps/public/index.ts b/x-pack/legacy/plugins/maps/public/index.ts
index b69485e251be45..8555594e909d38 100644
--- a/x-pack/legacy/plugins/maps/public/index.ts
+++ b/x-pack/legacy/plugins/maps/public/index.ts
@@ -4,7 +4,8 @@
* you may not use this file except in compliance with the Elastic License.
*/
-import './kibana_services';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import '../../../../plugins/maps/public/kibana_services';
// import the uiExports that we want to "use"
import 'uiExports/inspectorViews';
diff --git a/x-pack/legacy/plugins/maps/public/kibana_services.d.ts b/x-pack/legacy/plugins/maps/public/kibana_services.d.ts
deleted file mode 100644
index 89b1fee1aa842d..00000000000000
--- a/x-pack/legacy/plugins/maps/public/kibana_services.d.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
- * or more contributor license agreements. Licensed under the Elastic License;
- * you may not use this file except in compliance with the Elastic License.
- */
-
-import { IIndexPattern } from 'src/plugins/data/public';
-
-export function getIndexPatternService(): {
- get: (id: string) => IIndexPattern | undefined;
-};
-
-export function setLicenseId(args: unknown): void;
-export function setInspector(args: unknown): void;
-export function setFileUpload(args: unknown): void;
-export function setIndexPatternSelect(args: unknown): void;
-export function setHttp(args: unknown): void;
-export function setTimeFilter(args: unknown): void;
-export function setUiSettings(args: unknown): void;
-export function setInjectedVarFunc(args: unknown): void;
-export function setToasts(args: unknown): void;
-export function setIndexPatternService(args: unknown): void;
-export function setAutocompleteService(args: unknown): void;
diff --git a/x-pack/legacy/plugins/maps/public/kibana_services.js b/x-pack/legacy/plugins/maps/public/kibana_services.js
deleted file mode 100644
index a6491fe1aa6d42..00000000000000
--- a/x-pack/legacy/plugins/maps/public/kibana_services.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
- * or more contributor license agreements. Licensed under the Elastic License;
- * you may not use this file except in compliance with the Elastic License.
- */
-
-let indexPatternService;
-export const setIndexPatternService = dataIndexPatterns =>
- (indexPatternService = dataIndexPatterns);
-export const getIndexPatternService = () => indexPatternService;
-
-let inspector;
-export const setInspector = newInspector => (inspector = newInspector);
-export const getInspector = () => {
- return inspector;
-};
-
-let getInjectedVar;
-export const setInjectedVarFunc = getInjectedVarFunc => (getInjectedVar = getInjectedVarFunc);
-export const getInjectedVarFunc = () => getInjectedVar;
-
-let indexPatternSelectComponent;
-export const setIndexPatternSelect = indexPatternSelect =>
- (indexPatternSelectComponent = indexPatternSelect);
-export const getIndexPatternSelectComponent = () => indexPatternSelectComponent;
-
-let dataTimeFilter;
-export const setTimeFilter = timeFilter => (dataTimeFilter = timeFilter);
-export const getTimeFilter = () => dataTimeFilter;
diff --git a/x-pack/legacy/plugins/maps/public/plugin.ts b/x-pack/legacy/plugins/maps/public/plugin.ts
index 0fa7e1106a6df1..4ec068ff440294 100644
--- a/x-pack/legacy/plugins/maps/public/plugin.ts
+++ b/x-pack/legacy/plugins/maps/public/plugin.ts
@@ -13,19 +13,11 @@ import '../../../../plugins/maps/public/layers/load_layer_wizards';
import { Plugin, CoreStart, CoreSetup } from 'src/core/public';
// @ts-ignore
-import { wrapInI18nContext } from 'ui/i18n';
-// @ts-ignore
import { Start as InspectorStartContract } from 'src/plugins/inspector/public';
// @ts-ignore
+import { wrapInI18nContext } from 'ui/i18n';
+// @ts-ignore
import { MapListing } from './components/map_listing';
-// eslint-disable-next-line @kbn/eslint/no-restricted-paths
-import {
- setInspector,
- setIndexPatternSelect,
- setTimeFilter,
- setInjectedVarFunc,
- setIndexPatternService,
-} from './kibana_services';
// @ts-ignore
import {
bindSetupCoreAndPlugins as bindNpSetupCoreAndPlugins,
@@ -62,20 +54,6 @@ interface MapsPluginStartDependencies {
// file_upload TODO: Export type from file upload and use here
}
-export const bindSetupCoreAndPlugins = (core: CoreSetup, plugins: any) => {
- const { injectedMetadata } = core;
- setInjectedVarFunc(injectedMetadata.getInjectedVar);
- setInjectedVarFunc(core.injectedMetadata.getInjectedVar);
-};
-
-export const bindStartCoreAndPlugins = (core: CoreStart, plugins: any) => {
- const { data, inspector } = plugins;
- setInspector(inspector);
- setIndexPatternSelect(data.ui.IndexPatternSelect);
- setTimeFilter(data.query.timefilter.timefilter);
- setIndexPatternService(data.indexPatterns);
-};
-
/** @internal */
export class MapsPlugin implements Plugin {
public setup(core: CoreSetup, { __LEGACY: { uiModules }, np }: MapsPluginSetupDependencies) {
@@ -85,14 +63,12 @@ export class MapsPlugin implements Plugin {
return reactDirective(wrapInI18nContext(MapListing));
});
- bindSetupCoreAndPlugins(core, np);
bindNpSetupCoreAndPlugins(core, np);
np.home.featureCatalogue.register(featureCatalogueEntry);
}
public start(core: CoreStart, plugins: MapsPluginStartDependencies) {
- bindStartCoreAndPlugins(core, plugins);
bindNpStartCoreAndPlugins(core, plugins);
}
}
diff --git a/x-pack/legacy/plugins/maps/public/register_vis_type_alias.js b/x-pack/legacy/plugins/maps/public/register_vis_type_alias.js
index 64a42173098eea..9dc07bcb5dc0e9 100644
--- a/x-pack/legacy/plugins/maps/public/register_vis_type_alias.js
+++ b/x-pack/legacy/plugins/maps/public/register_vis_type_alias.js
@@ -4,12 +4,20 @@
* you may not use this file except in compliance with the Elastic License.
*/
-import chrome from 'ui/chrome';
-import { npSetup } from '../../../../../src/legacy/ui/public/new_platform';
import { i18n } from '@kbn/i18n';
import { APP_ID, APP_ICON, MAP_BASE_URL } from '../common/constants';
+import {
+ getInjectedVarFunc,
+ getVisualizations,
+ // eslint-disable-next-line @kbn/eslint/no-restricted-paths
+} from '../../../../plugins/maps/public/kibana_services';
+import { npSetup } from 'ui/new_platform';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { bindSetupCoreAndPlugins } from '../../../../plugins/maps/public/plugin';
-const showMapVisualizationTypes = chrome.getInjected('showMapVisualizationTypes', false);
+bindSetupCoreAndPlugins(npSetup.core, npSetup.plugins);
+
+const showMapVisualizationTypes = getInjectedVarFunc()('showMapVisualizationTypes', false);
const description = i18n.translate('xpack.maps.visTypeAlias.description', {
defaultMessage: 'Create and style maps with multiple layers and indices.',
@@ -23,7 +31,7 @@ The Maps app offers more functionality and is easier to use.`,
}
);
-npSetup.plugins.visualizations.registerAlias({
+getVisualizations().registerAlias({
aliasUrl: MAP_BASE_URL,
name: APP_ID,
title: i18n.translate('xpack.maps.visTypeAlias.title', {
@@ -37,5 +45,5 @@ npSetup.plugins.visualizations.registerAlias({
});
if (!showMapVisualizationTypes) {
- npSetup.plugins.visualizations.hideTypes(['region_map', 'tile_map']);
+ getVisualizations().hideTypes(['region_map', 'tile_map']);
}
diff --git a/x-pack/legacy/plugins/maps/public/routes.js b/x-pack/legacy/plugins/maps/public/routes.js
index 49705acb417e21..c082e0e1352c0e 100644
--- a/x-pack/legacy/plugins/maps/public/routes.js
+++ b/x-pack/legacy/plugins/maps/public/routes.js
@@ -5,20 +5,23 @@
*/
import { i18n } from '@kbn/i18n';
-import { capabilities } from 'ui/capabilities';
-import chrome from 'ui/chrome';
import routes from 'ui/routes';
-import { docTitle } from 'ui/doc_title';
import listingTemplate from './angular/listing_ng_wrapper.html';
import mapTemplate from './angular/map.html';
-import { npStart } from 'ui/new_platform';
+import {
+ getSavedObjectsClient,
+ getCoreChrome,
+ getMapsCapabilities,
+ // eslint-disable-next-line @kbn/eslint/no-restricted-paths
+} from '../../../../plugins/maps/public/kibana_services';
+import { getMapsSavedObjectLoader } from './angular/services/gis_map_saved_object_loader';
routes.enable();
routes
.defaults(/.*/, {
- badge: uiCapabilities => {
- if (uiCapabilities.maps.save) {
+ badge: () => {
+ if (getMapsCapabilities().save) {
return undefined;
}
@@ -35,7 +38,8 @@ routes
})
.when('/', {
template: listingTemplate,
- controller($scope, gisMapSavedObjectLoader, config) {
+ controller($scope, config) {
+ const gisMapSavedObjectLoader = getMapsSavedObjectLoader();
$scope.listingLimit = config.get('savedObjects:listingLimit');
$scope.find = search => {
return gisMapSavedObjectLoader.find(search, $scope.listingLimit);
@@ -43,19 +47,17 @@ routes
$scope.delete = ids => {
return gisMapSavedObjectLoader.delete(ids);
};
- $scope.readOnly = !capabilities.get().maps.save;
+ $scope.readOnly = !getMapsCapabilities().save;
},
resolve: {
hasMaps: function(kbnUrl) {
- chrome
- .getSavedObjectsClient()
+ getSavedObjectsClient()
.find({ type: 'map', perPage: 1 })
.then(resp => {
// Do not show empty listing page, just redirect to a new map
if (resp.savedObjects.length === 0) {
kbnUrl.redirect('/map');
}
-
return true;
});
},
@@ -65,7 +67,8 @@ routes
template: mapTemplate,
controller: 'GisMapController',
resolve: {
- map: function(gisMapSavedObjectLoader, redirectWhenMissing) {
+ map: function(redirectWhenMissing) {
+ const gisMapSavedObjectLoader = getMapsSavedObjectLoader();
return gisMapSavedObjectLoader.get().catch(
redirectWhenMissing({
map: '/',
@@ -78,13 +81,14 @@ routes
template: mapTemplate,
controller: 'GisMapController',
resolve: {
- map: function(gisMapSavedObjectLoader, redirectWhenMissing, $route) {
+ map: function(redirectWhenMissing, $route) {
+ const gisMapSavedObjectLoader = getMapsSavedObjectLoader();
const id = $route.current.params.id;
return gisMapSavedObjectLoader
.get(id)
.then(savedMap => {
- npStart.core.chrome.recentlyAccessed.add(savedMap.getFullPath(), savedMap.title, id);
- docTitle.change(savedMap.title);
+ getCoreChrome().recentlyAccessed.add(savedMap.getFullPath(), savedMap.title, id);
+ getCoreChrome().docTitle.change(savedMap.title);
return savedMap;
})
.catch(
diff --git a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js
index 59346e4c6fb989..f350a2c9447563 100644
--- a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js
+++ b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js
@@ -16,7 +16,8 @@ import { VectorLayer } from '../../../../../plugins/maps/public/layers/vector_la
import { HeatmapLayer } from '../../../../../plugins/maps/public/layers/heatmap_layer';
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { BlendedVectorLayer } from '../../../../../plugins/maps/public/layers/blended_vector_layer';
-import { getTimeFilter } from '../kibana_services';
+// eslint-disable-next-line @kbn/eslint/no-restricted-paths
+import { getTimeFilter } from '../../../../../plugins/maps/public/kibana_services';
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { getInspectorAdapters } from '../../../../../plugins/maps/public/reducers/non_serializable_instances';
import {
diff --git a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js
index 77bd29259647ce..b83be301653b80 100644
--- a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js
+++ b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js
@@ -14,7 +14,7 @@ jest.mock('../../../../../plugins/maps/public/reducers/non_serializable_instance
return {};
},
}));
-jest.mock('../kibana_services', () => ({
+jest.mock('../../../../../plugins/maps/public/kibana_services', () => ({
getTimeFilter: () => ({
getTime: () => {
return {
diff --git a/x-pack/plugins/maps/public/kibana_services.d.ts b/x-pack/plugins/maps/public/kibana_services.d.ts
new file mode 100644
index 00000000000000..867557c2962921
--- /dev/null
+++ b/x-pack/plugins/maps/public/kibana_services.d.ts
@@ -0,0 +1,55 @@
+/*
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
+ * or more contributor license agreements. Licensed under the Elastic License;
+ * you may not use this file except in compliance with the Elastic License.
+ */
+
+import { IIndexPattern } from 'src/plugins/data/public';
+
+export function getLicenseId(): any;
+export function getInspector(): any;
+export function getFileUploadComponent(): any;
+export function getIndexPatternSelectComponent(): any;
+export function getHttp(): any;
+export function getTimeFilter(): any;
+export function getInjectedVarFunc(): any;
+export function getToasts(): any;
+export function getIndexPatternService(): {
+ get: (id: string) => IIndexPattern | undefined;
+};
+export function getAutocompleteService(): any;
+export function getSavedObjectsClient(): any;
+export function getMapsCapabilities(): any;
+export function getVisualizations(): any;
+export function getDocLinks(): any;
+export function getCoreChrome(): any;
+export function getUiSettings(): any;
+export function getCoreOverlays(): any;
+export function getData(): any;
+export function getUiActions(): any;
+export function getCore(): any;
+export function getNavigation(): any;
+export function getCoreI18n(): any;
+
+export function setLicenseId(args: unknown): void;
+export function setInspector(args: unknown): void;
+export function setFileUpload(args: unknown): void;
+export function setIndexPatternSelect(args: unknown): void;
+export function setHttp(args: unknown): void;
+export function setTimeFilter(args: unknown): void;
+export function setInjectedVarFunc(args: unknown): void;
+export function setToasts(args: unknown): void;
+export function setIndexPatternService(args: unknown): void;
+export function setAutocompleteService(args: unknown): void;
+export function setSavedObjectsClient(args: unknown): void;
+export function setMapsCapabilities(args: unknown): void;
+export function setVisualizations(args: unknown): void;
+export function setDocLinks(args: unknown): void;
+export function setCoreChrome(args: unknown): void;
+export function setUiSettings(args: unknown): void;
+export function setCoreOverlays(args: unknown): void;
+export function setData(args: unknown): void;
+export function setUiActions(args: unknown): void;
+export function setCore(args: unknown): void;
+export function setNavigation(args: unknown): void;
+export function setCoreI18n(args: unknown): void;
diff --git a/x-pack/plugins/maps/public/kibana_services.js b/x-pack/plugins/maps/public/kibana_services.js
index d2ddecfdf915bb..2a793143803304 100644
--- a/x-pack/plugins/maps/public/kibana_services.js
+++ b/x-pack/plugins/maps/public/kibana_services.js
@@ -89,3 +89,49 @@ export async function fetchSearchSourceAndRecordWithInspector({
return resp;
}
+
+let savedObjectsClient;
+export const setSavedObjectsClient = coreSavedObjectsClient =>
+ (savedObjectsClient = coreSavedObjectsClient);
+export const getSavedObjectsClient = () => savedObjectsClient;
+
+let chrome;
+export const setCoreChrome = coreChrome => (chrome = coreChrome);
+export const getCoreChrome = () => chrome;
+
+let mapsCapabilities;
+export const setMapsCapabilities = coreAppMapsCapabilities =>
+ (mapsCapabilities = coreAppMapsCapabilities);
+export const getMapsCapabilities = () => mapsCapabilities;
+
+let visualizations;
+export const setVisualizations = visPlugin => (visualizations = visPlugin);
+export const getVisualizations = () => visualizations;
+
+let docLinks;
+export const setDocLinks = coreDocLinks => (docLinks = coreDocLinks);
+export const getDocLinks = () => docLinks;
+
+let overlays;
+export const setCoreOverlays = coreOverlays => (overlays = coreOverlays);
+export const getCoreOverlays = () => overlays;
+
+let data;
+export const setData = dataPlugin => (data = dataPlugin);
+export const getData = () => data;
+
+let uiActions;
+export const setUiActions = pluginUiActions => (uiActions = pluginUiActions);
+export const getUiActions = () => uiActions;
+
+let core;
+export const setCore = kibanaCore => (core = kibanaCore);
+export const getCore = () => core;
+
+let navigation;
+export const setNavigation = pluginNavigation => (navigation = pluginNavigation);
+export const getNavigation = () => navigation;
+
+let coreI18n;
+export const setCoreI18n = kibanaCoreI18n => (coreI18n = kibanaCoreI18n);
+export const getCoreI18n = () => coreI18n;
diff --git a/x-pack/plugins/maps/public/plugin.ts b/x-pack/plugins/maps/public/plugin.ts
index 14487b615e759a..649627690ec9a6 100644
--- a/x-pack/plugins/maps/public/plugin.ts
+++ b/x-pack/plugins/maps/public/plugin.ts
@@ -10,6 +10,12 @@ import { Setup as InspectorSetupContract } from 'src/plugins/inspector/public';
import { MapView } from './inspector/views/map_view';
import {
setAutocompleteService,
+ setCore,
+ setCoreChrome,
+ setCoreI18n,
+ setCoreOverlays,
+ setData,
+ setDocLinks,
setFileUpload,
setHttp,
setIndexPatternSelect,
@@ -17,9 +23,14 @@ import {
setInjectedVarFunc,
setInspector,
setLicenseId,
+ setMapsCapabilities,
+ setNavigation,
+ setSavedObjectsClient,
setTimeFilter,
setToasts,
+ setUiActions,
setUiSettings,
+ setVisualizations,
// @ts-ignore
} from './kibana_services';
@@ -31,15 +42,16 @@ export interface MapsPluginStartDependencies {}
export const bindSetupCoreAndPlugins = (core: CoreSetup, plugins: any) => {
const { licensing } = plugins;
- const { injectedMetadata, http } = core;
+ const { injectedMetadata, uiSettings, http, notifications } = core;
if (licensing) {
licensing.license$.subscribe(({ uid }: { uid: string }) => setLicenseId(uid));
}
setInjectedVarFunc(injectedMetadata.getInjectedVar);
setHttp(http);
- setUiSettings(core.uiSettings);
- setInjectedVarFunc(core.injectedMetadata.getInjectedVar);
- setToasts(core.notifications.toasts);
+ setToasts(notifications.toasts);
+ setInjectedVarFunc(injectedMetadata.getInjectedVar);
+ setVisualizations(plugins.visualizations);
+ setUiSettings(uiSettings);
};
export const bindStartCoreAndPlugins = (core: CoreStart, plugins: any) => {
@@ -50,6 +62,16 @@ export const bindStartCoreAndPlugins = (core: CoreStart, plugins: any) => {
setTimeFilter(data.query.timefilter.timefilter);
setIndexPatternService(data.indexPatterns);
setAutocompleteService(data.autocomplete);
+ setCore(core);
+ setSavedObjectsClient(core.savedObjects.client);
+ setCoreChrome(core.chrome);
+ setCoreOverlays(core.overlays);
+ setMapsCapabilities(core.application.capabilities.maps);
+ setDocLinks(core.docLinks);
+ setData(plugins.data);
+ setUiActions(plugins.uiActions);
+ setNavigation(plugins.navigation);
+ setCoreI18n(core.i18n);
};
/**