diff --git a/x-pack/plugins/ml/public/file_datavisualizer/components/file_datavisualizer_view/file_datavisualizer_view.js b/x-pack/plugins/ml/public/file_datavisualizer/components/file_datavisualizer_view/file_datavisualizer_view.js index e3c7708cc1d0a..efa3bd1f83ff8 100644 --- a/x-pack/plugins/ml/public/file_datavisualizer/components/file_datavisualizer_view/file_datavisualizer_view.js +++ b/x-pack/plugins/ml/public/file_datavisualizer/components/file_datavisualizer_view/file_datavisualizer_view.js @@ -308,6 +308,7 @@ export class FileDataVisualizerView extends Component { fileContents={fileContents} fileSize={fileSize} indexPatterns={this.props.indexPatterns} + kibanaConfig={this.props.kibanaConfig} showBottomBar={this.showBottomBar} hideBottomBar={this.hideBottomBar} /> diff --git a/x-pack/plugins/ml/public/file_datavisualizer/components/import_view/import_view.js b/x-pack/plugins/ml/public/file_datavisualizer/components/import_view/import_view.js index 1297387c09e3c..a178cd4aba8b9 100644 --- a/x-pack/plugins/ml/public/file_datavisualizer/components/import_view/import_view.js +++ b/x-pack/plugins/ml/public/file_datavisualizer/components/import_view/import_view.js @@ -170,7 +170,11 @@ export class ImportView extends Component { if (success && createIndexPattern) { const indexPatternName = (indexPattern === '') ? index : indexPattern; - const indexPatternResp = await createKibanaIndexPattern(indexPatternName, this.props.indexPatterns); + const indexPatternResp = await createKibanaIndexPattern( + indexPatternName, + this.props.indexPatterns, + this.props.kibanaConfig, + ); success = indexPatternResp.success; this.setState({ indexPatternCreatedStatus: indexPatternResp.success ? IMPORT_STATUS.COMPLETE : IMPORT_STATUS.FAILED, @@ -427,7 +431,7 @@ export class ImportView extends Component { } } -async function createKibanaIndexPattern(indexPatternName, indexPatterns, timeFieldName = DEFAULT_TIME_FIELD) { +async function createKibanaIndexPattern(indexPatternName, indexPatterns, kibanaConfig, timeFieldName = DEFAULT_TIME_FIELD) { try { const emptyPattern = await indexPatterns.get(); @@ -438,6 +442,13 @@ async function createKibanaIndexPattern(indexPatternName, indexPatterns, timeFie }); const id = await emptyPattern.create(); + + // check if there's a default index pattern, if not, + // set the newly created one as the default index pattern. + if (!kibanaConfig.get('defaultIndex')) { + await kibanaConfig.set('defaultIndex', id); + } + return { success: true, id, @@ -503,5 +514,3 @@ function isIndexPatternNameValid(name, indexPatternNames, index) { return ''; } - - diff --git a/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer.js b/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer.js index 408e9028a2cf0..f59788329da34 100644 --- a/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer.js +++ b/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer.js @@ -9,10 +9,10 @@ import { FileDataVisualizerView } from './components/file_datavisualizer_view'; import React from 'react'; -export function FileDataVisualizerPage({ indexPatterns }) { +export function FileDataVisualizerPage({ indexPatterns, kibanaConfig }) { return (
- +
); } diff --git a/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer_directive.js b/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer_directive.js index 1b33ababbefa6..5ccce13309927 100644 --- a/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer_directive.js +++ b/x-pack/plugins/ml/public/file_datavisualizer/file_datavisualizer_directive.js @@ -41,6 +41,7 @@ import { FileDataVisualizerPage } from './file_datavisualizer'; module.directive('fileDatavisualizerPage', function ($injector) { const reactDirective = $injector.get('reactDirective'); const indexPatterns = $injector.get('indexPatterns'); + const kibanaConfig = $injector.get('config'); - return reactDirective(FileDataVisualizerPage, undefined, { restrict: 'E' }, { indexPatterns }); + return reactDirective(FileDataVisualizerPage, undefined, { restrict: 'E' }, { indexPatterns, kibanaConfig }); });