diff --git a/src/plugins/home/public/application/components/tutorial_directory.js b/src/plugins/home/public/application/components/tutorial_directory.js
index 1fda865ebd847..d7e6c07d6dd18 100644
--- a/src/plugins/home/public/application/components/tutorial_directory.js
+++ b/src/plugins/home/public/application/components/tutorial_directory.js
@@ -9,27 +9,15 @@
import _ from 'lodash';
import React from 'react';
import PropTypes from 'prop-types';
+import { EuiFlexItem, EuiFlexGrid, EuiFlexGroup, EuiSpacer } from '@elastic/eui';
+import { injectI18n, FormattedMessage } from '@kbn/i18n/react';
+import { i18n } from '@kbn/i18n';
import { Synopsis } from './synopsis';
import { SampleDataSetCards } from './sample_data_set_cards';
import { getServices } from '../kibana_services';
-
-import {
- EuiPage,
- EuiTabs,
- EuiTab,
- EuiFlexItem,
- EuiFlexGrid,
- EuiFlexGroup,
- EuiSpacer,
- EuiTitle,
- EuiPageBody,
-} from '@elastic/eui';
-
+import { KibanaPageTemplate } from '../../../../kibana_react/public';
import { getTutorials } from '../load_tutorials';
-import { injectI18n, FormattedMessage } from '@kbn/i18n/react';
-import { i18n } from '@kbn/i18n';
-
const ALL_TAB_ID = 'all';
const SAMPLE_DATA_TAB_ID = 'sampleData';
@@ -184,17 +172,13 @@ class TutorialDirectoryUi extends React.Component {
});
};
- renderTabs = () => {
- return this.tabs.map((tab, index) => (
- this.onSelectedTabChanged(tab.id)}
- isSelected={tab.id === this.state.selectedTabId}
- key={index}
- >
- {tab.name}
-
- ));
+ getTabs = () => {
+ return this.tabs.map((tab) => ({
+ label: tab.name,
+ onClick: () => this.onSelectedTabChanged(tab.id),
+ isSelected: tab.id === this.state.selectedTabId,
+ 'data-test-subj': `homeTab-${tab.id}`,
+ }));
};
renderTabContent = () => {
@@ -258,41 +242,31 @@ class TutorialDirectoryUi extends React.Component {
) : null;
};
- renderHeader = () => {
- const notices = this.renderNotices();
+ render() {
const headerLinks = this.renderHeaderLinks();
+ const tabs = this.getTabs();
+ const notices = this.renderNotices();
return (
- <>
-
-
-
-
-
-
-
-
- {headerLinks ? {headerLinks} : null}
-
- {notices}
- >
- );
- };
-
- render() {
- return (
-
-
- {this.renderHeader()}
-
- {this.renderTabs()}
-
- {this.renderTabContent()}
-
-
+
+ ),
+ tabs,
+ rightSideItems: headerLinks ? [headerLinks] : [],
+ }}
+ >
+ {notices && (
+ <>
+ {notices}
+
+ >
+ )}
+ {this.renderTabContent()}
+
);
}
}