diff --git a/src/components/date_picker/super_date_picker/date_popover/relative_tab.tsx b/src/components/date_picker/super_date_picker/date_popover/relative_tab.tsx index 109ff14dd63..1bd58c13737 100644 --- a/src/components/date_picker/super_date_picker/date_popover/relative_tab.tsx +++ b/src/components/date_picker/super_date_picker/date_popover/relative_tab.tsx @@ -59,7 +59,7 @@ export class EuiRelativeTab extends Component< sentenceCasedPosition: toSentenceCase(this.props.position), }; - generateId = htmlIdGenerator(); + relativeDateInputNumberDescriptionId = htmlIdGenerator()(); onCountChange: ChangeEventHandler = (event) => { const sanitizedValue = parseInt(event.target.value, 10); @@ -106,7 +106,6 @@ export class EuiRelativeTab extends Component< render() { const { count, unit } = this.state; - const relativeDateInputNumberDescriptionId = this.generateId(); const isInvalid = count === undefined || count < 0; const parsedValue = dateMath.parse(this.props.value, { roundUp: this.props.roundUp, @@ -136,7 +135,7 @@ export class EuiRelativeTab extends Component< -

+

{ - const legendId = generateId(); + const legendId = useGeneratedHtmlId(); const links = commonlyUsedRanges.map(({ start, end, label }) => { const applyCommonlyUsed = () => { applyTime({ start, end }); diff --git a/src/components/date_picker/super_date_picker/quick_select_popover/quick_select.tsx b/src/components/date_picker/super_date_picker/quick_select_popover/quick_select.tsx index da58ba27ffe..ed5ff22c28e 100644 --- a/src/components/date_picker/super_date_picker/quick_select_popover/quick_select.tsx +++ b/src/components/date_picker/super_date_picker/quick_select_popover/quick_select.tsx @@ -77,6 +77,8 @@ export class EuiQuickSelect extends Component< } generateId = htmlIdGenerator(); + timeSelectionId = this.generateId(); + legendId = this.generateId(); onTimeTenseChange: ChangeEventHandler = (event) => { this.setState({ @@ -160,8 +162,6 @@ export class EuiQuickSelect extends Component< render() { const { timeTense, timeValue, timeUnits } = this.state; - const timeSelectionId = this.generateId(); - const legendId = this.generateId(); const matchedTimeUnit = timeUnitsOptions.find( ({ value }) => value === timeUnits ); @@ -177,7 +177,7 @@ export class EuiQuickSelect extends Component< // Legend needs to be the first thing in a fieldset, but we want the visible title within the flex. // So we hide it, but allow screen readers to see it - + {legendText} @@ -247,7 +247,7 @@ export class EuiQuickSelect extends Component< compressed onKeyDown={this.handleKeyDown} aria-label={tenseLabel} - aria-describedby={`${timeSelectionId} ${legendId}`} + aria-describedby={`${this.timeSelectionId} ${this.legendId}`} value={timeTense} options={timeTenseOptions} onChange={this.onTimeTenseChange} @@ -261,7 +261,7 @@ export class EuiQuickSelect extends Component< -

+

= ({ dateFormat, recentlyUsedRanges = [], }) => { - const legendId = generateId(); + const legendId = useGeneratedHtmlId(); if (recentlyUsedRanges.length === 0) { return null; diff --git a/src/components/date_picker/super_date_picker/quick_select_popover/refresh_interval.tsx b/src/components/date_picker/super_date_picker/quick_select_popover/refresh_interval.tsx index 58ac9738d49..fbb6ab464c0 100644 --- a/src/components/date_picker/super_date_picker/quick_select_popover/refresh_interval.tsx +++ b/src/components/date_picker/super_date_picker/quick_select_popover/refresh_interval.tsx @@ -90,6 +90,8 @@ export class EuiRefreshInterval extends Component< state: EuiRefreshIntervalState = fromMilliseconds(this.props.refreshInterval); generateId = htmlIdGenerator(); + legendId = this.generateId(); + refreshSelectionId = this.generateId(); onValueChange: ChangeEventHandler = (event) => { const sanitizedValue = parseFloat(event.target.value); @@ -162,8 +164,6 @@ export class EuiRefreshInterval extends Component< render() { const { applyRefreshInterval, isPaused } = this.props; const { value, units } = this.state; - const legendId = this.generateId(); - const refreshSelectionId = this.generateId(); if (!applyRefreshInterval) { return null; @@ -175,7 +175,7 @@ export class EuiRefreshInterval extends Component< return (

- + @@ -199,7 +199,7 @@ export class EuiRefreshInterval extends Component< {isPaused ? ( @@ -226,7 +226,7 @@ export class EuiRefreshInterval extends Component< -

+