Remove reference to ui/chrome Breadcrumb type. (#28526) (#28529)

* Remove reference to ui/chrome Breadcrumb type. (#28526)

* Add sort to tests to prevent uncertainty in the API call result. (#28544)

Necessary fix to make 6.x green again.
This commit is contained in:
Justin Kambic 2019-01-11 08:29:43 -05:00 committed by GitHub
parent 8b3f0adcd7
commit f46d8a22dc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 25 additions and 19 deletions

View file

@ -4,17 +4,23 @@
* you may not use this file except in compliance with the Elastic License.
*/
import { Breadcrumb } from 'ui/chrome';
export interface UMBreadcrumb {
text: string;
href?: string;
}
export const monitorBreadcrumb: Breadcrumb = {
export const monitorBreadcrumb: UMBreadcrumb = {
text: 'Monitor',
};
export const overviewBreadcrumb: Breadcrumb = {
export const overviewBreadcrumb: UMBreadcrumb = {
text: 'Overview',
href: '#/',
};
export const getOverviewPageBreadcrumbs = (): Breadcrumb[] => [overviewBreadcrumb];
export const getOverviewPageBreadcrumbs = (): UMBreadcrumb[] => [overviewBreadcrumb];
export const getMonitorPageBreadcrumb = (): Breadcrumb[] => [overviewBreadcrumb, monitorBreadcrumb];
export const getMonitorPageBreadcrumb = (): UMBreadcrumb[] => [
overviewBreadcrumb,
monitorBreadcrumb,
];

View file

@ -7,8 +7,9 @@
import moment from 'moment';
import ReactDOM from 'react-dom';
import { unmountComponentAtNode } from 'react-dom';
import chrome, { Breadcrumb } from 'ui/chrome';
import chrome from 'ui/chrome';
import { PLUGIN } from '../../../../common/constants';
import { UMBreadcrumb } from '../../../breadcrumbs';
import { UptimePersistedState } from '../../../uptime_monitoring_app';
import { BootstrapUptimeApp, UMFrameworkAdapter } from '../../lib';
import { CreateGraphQLClient } from './framework_adapter_types';
@ -35,10 +36,10 @@ export class UMKibanaFrameworkAdapter implements UMFrameworkAdapter {
const graphQLClient = createGraphQLClient(this.uriPath, this.xsrfHeader);
config.bindToScope($scope, 'k7design');
$scope.$$postDigest(() => {
const elem = document.getElementById('uptimeMonitoringReactRoot');
let kibanaBreadcrumbs: Breadcrumb[] = [];
const elem = document.getElementById('uptimeReactRoot');
let kibanaBreadcrumbs: UMBreadcrumb[] = [];
if ($scope.k7design) {
chrome.breadcrumbs.get$().subscribe((breadcrumbs: Breadcrumb[]) => {
chrome.breadcrumbs.get$().subscribe((breadcrumbs: UMBreadcrumb[]) => {
kibanaBreadcrumbs = breadcrumbs;
});
}

View file

@ -7,7 +7,7 @@
import { NormalizedCacheObject } from 'apollo-cache-inmemory';
import ApolloClient from 'apollo-client';
import React from 'react';
import { Breadcrumb } from 'ui/chrome';
import { UMBreadcrumb } from '../breadcrumbs';
import { UptimePersistedState } from '../uptime_monitoring_app';
import { CreateGraphQLClient } from './adapters/framework/framework_adapter_types';
@ -15,12 +15,12 @@ export interface UMFrontendLibs {
framework: UMFrameworkAdapter;
}
export type UMUpdateBreadcrumbs = (breadcrumbs: Breadcrumb[]) => void;
export type UMUpdateBreadcrumbs = (breadcrumbs: UMBreadcrumb[]) => void;
export interface UptimeAppProps {
isUsingK7Design: boolean;
updateBreadcrumbs: UMUpdateBreadcrumbs;
kibanaBreadcrumbs: Breadcrumb[];
kibanaBreadcrumbs: UMBreadcrumb[];
routerBasename: string;
graphQLClient: ApolloClient<NormalizedCacheObject>;
initialDateRangeStart?: number;

View file

@ -32,8 +32,7 @@ import moment, { Moment } from 'moment';
import React from 'react';
import { ApolloProvider } from 'react-apollo';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import { Breadcrumb } from 'ui/chrome';
import { overviewBreadcrumb } from './breadcrumbs';
import { overviewBreadcrumb, UMBreadcrumb } from './breadcrumbs';
import { UMUpdateBreadcrumbs, UptimeAppProps } from './lib/lib';
import { MonitorPage, OverviewPage } from './pages';
@ -45,7 +44,7 @@ export interface UptimePersistedState {
}
interface UptimeAppState {
breadcrumbs: Breadcrumb[];
breadcrumbs: UMBreadcrumb[];
autorefreshEnabled: boolean;
popoverIsOpen: boolean;
// TODO: these get passed as props to most components in this plugin,
@ -71,7 +70,7 @@ class Application extends React.Component<UptimeAppProps, UptimeAppState> {
initialDateRangeEnd,
} = props;
let initialBreadcrumbs: Breadcrumb[];
let initialBreadcrumbs: UMBreadcrumb[];
const dateRangeStart =
initialDateRangeStart ||
moment()
@ -90,7 +89,7 @@ class Application extends React.Component<UptimeAppProps, UptimeAppState> {
this.setBreadcrumbs = updateBreadcrumbs;
initialBreadcrumbs = kibanaBreadcrumbs;
} else {
this.setBreadcrumbs = (breadcrumbs: Breadcrumb[]) => this.setState({ breadcrumbs });
this.setBreadcrumbs = (breadcrumbs: UMBreadcrumb[]) => this.setState({ breadcrumbs });
initialBreadcrumbs = [overviewBreadcrumb];
}

View file

@ -22,7 +22,7 @@ export default function ({ getService }) {
it('should get all pings stored in index', async () => {
const { body: apiResponse } = await supertest
.get(
`/api/uptime_monitoring/pings?dateRangeStart=${dateRangeStart}&dateRangeEnd=${dateRangeEnd}`
`/api/uptime_monitoring/pings?sort=desc&dateRangeStart=${dateRangeStart}&dateRangeEnd=${dateRangeEnd}`
)
.expect(200);
@ -44,7 +44,7 @@ export default function ({ getService }) {
it('should return results of n length', async () => {
const { body: apiResponse } = await supertest
.get(
`/api/uptime_monitoring/pings?size=1&dateRangeStart=${dateRangeStart}&dateRangeEnd=${dateRangeEnd}`
`/api/uptime_monitoring/pings?sort=desc&size=1&dateRangeStart=${dateRangeStart}&dateRangeEnd=${dateRangeEnd}`
)
.expect(200);