mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 17:59:23 -04:00
[k7/breadcrumbs] add standard data-test-subjects (#28738)
* [k7/breadcrumbs] add standard data-test-subjects * [k7/breadcrumbs] update snapshots
This commit is contained in:
parent
3c8a16975c
commit
85fa8290fb
3 changed files with 28 additions and 7 deletions
|
@ -37,6 +37,7 @@ export interface Brand {
|
|||
export interface Breadcrumb {
|
||||
text: string;
|
||||
href?: string;
|
||||
'data-test-subj'?: string;
|
||||
}
|
||||
|
||||
export class ChromeService {
|
||||
|
|
|
@ -4,6 +4,7 @@ exports[`HeaderBreadcrumbs renders updates to the breadcrumbs$ observable 1`] =
|
|||
<span
|
||||
aria-current="page"
|
||||
className="euiBreadcrumb euiBreadcrumb--last"
|
||||
data-test-subj="breadcrumb first last"
|
||||
title="First"
|
||||
>
|
||||
First
|
||||
|
@ -15,11 +16,13 @@ Array [
|
|||
<EuiLink
|
||||
className="euiBreadcrumb"
|
||||
color="subdued"
|
||||
data-test-subj="breadcrumb first"
|
||||
title="First"
|
||||
type="button"
|
||||
>
|
||||
<button
|
||||
className="euiLink euiLink--subdued euiBreadcrumb"
|
||||
data-test-subj="breadcrumb first"
|
||||
title="First"
|
||||
type="button"
|
||||
>
|
||||
|
@ -28,6 +31,7 @@ Array [
|
|||
</EuiLink>,
|
||||
<button
|
||||
className="euiLink euiLink--subdued euiBreadcrumb"
|
||||
data-test-subj="breadcrumb first"
|
||||
title="First"
|
||||
type="button"
|
||||
>
|
||||
|
@ -36,6 +40,7 @@ Array [
|
|||
<span
|
||||
aria-current="page"
|
||||
className="euiBreadcrumb euiBreadcrumb--last"
|
||||
data-test-subj="breadcrumb last"
|
||||
title="Second"
|
||||
>
|
||||
Second
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
* under the License.
|
||||
*/
|
||||
|
||||
import classNames from 'classnames';
|
||||
import React, { Component } from 'react';
|
||||
import * as Rx from 'rxjs';
|
||||
|
||||
|
@ -63,13 +64,9 @@ export class HeaderBreadcrumbs extends Component<Props, State> {
|
|||
}
|
||||
|
||||
public render() {
|
||||
let breadcrumbs = this.state.breadcrumbs;
|
||||
|
||||
if (breadcrumbs.length === 0 && this.props.appTitle) {
|
||||
breadcrumbs = [{ text: this.props.appTitle }];
|
||||
}
|
||||
|
||||
return <EuiHeaderBreadcrumbs breadcrumbs={breadcrumbs} />;
|
||||
return (
|
||||
<EuiHeaderBreadcrumbs breadcrumbs={this.getBreadcrumbs()} data-test-subj="breadcrumbs" />
|
||||
);
|
||||
}
|
||||
|
||||
private subscribe() {
|
||||
|
@ -86,4 +83,22 @@ export class HeaderBreadcrumbs extends Component<Props, State> {
|
|||
delete this.subscription;
|
||||
}
|
||||
}
|
||||
|
||||
private getBreadcrumbs() {
|
||||
let breadcrumbs = this.state.breadcrumbs;
|
||||
|
||||
if (breadcrumbs.length === 0 && this.props.appTitle) {
|
||||
breadcrumbs = [{ text: this.props.appTitle }];
|
||||
}
|
||||
|
||||
return breadcrumbs.map((breadcrumb, i) => ({
|
||||
...breadcrumb,
|
||||
'data-test-subj': classNames(
|
||||
'breadcrumb',
|
||||
breadcrumb['data-test-subj'],
|
||||
i === 0 && 'first',
|
||||
i === breadcrumbs.length - 1 && 'last'
|
||||
),
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue