From f51e5373c929dd9701ac498959ef47e2e6e8d51e Mon Sep 17 00:00:00 2001 From: Bernard Wang Date: Mon, 4 Nov 2019 15:21:50 -0600 Subject: [PATCH 1/5] Move hint and error outside legend --- .../src/components/FormLabel/FormLabel.jsx | 37 ++++++++++++------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/packages/core/src/components/FormLabel/FormLabel.jsx b/packages/core/src/components/FormLabel/FormLabel.jsx index 178d6b6300..aca6663a01 100644 --- a/packages/core/src/components/FormLabel/FormLabel.jsx +++ b/packages/core/src/components/FormLabel/FormLabel.jsx @@ -1,5 +1,5 @@ +import React, { Fragment } from 'react'; import PropTypes from 'prop-types'; -import React from 'react'; import classNames from 'classnames'; export class FormLabel extends React.PureComponent { @@ -10,11 +10,7 @@ export class FormLabel extends React.PureComponent { }); return ( - + {this.props.errorMessage} ); @@ -55,19 +51,32 @@ export class FormLabel extends React.PureComponent { render() { const { fieldId, id, children } = this.props; - const ComponentType = this.props.component; const labelTextClasses = classNames(this.props.labelClassName); const classes = classNames('ds-c-label', this.props.className, { 'ds-c-label--inverse': this.props.inversed }); - return ( - - {children} - {this.hint()} - {this.errorMessage()} - - ); + // Hint and error message are outside of the legend + // https://www.powermapper.com/tests/screen-readers/labelling/fieldset-links/ + if (this.props.component === 'legend') { + return ( + + + {children} + + {this.hint()} + {this.errorMessage()} + + ); + } else if (this.props.component === 'legend') { + return ( + + ); + } } } From d3b166010ef9472fd019251635f9495d83f10887 Mon Sep 17 00:00:00 2001 From: Bernard Wang Date: Mon, 4 Nov 2019 15:23:52 -0600 Subject: [PATCH 2/5] Update FormLabel example --- .../FormLabel/FormLabel.example.jsx | 37 ++++++++++++++----- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/packages/core/src/components/FormLabel/FormLabel.example.jsx b/packages/core/src/components/FormLabel/FormLabel.example.jsx index 0384f5c1b1..76af96273e 100644 --- a/packages/core/src/components/FormLabel/FormLabel.example.jsx +++ b/packages/core/src/components/FormLabel/FormLabel.example.jsx @@ -1,15 +1,34 @@ +import React, { Fragment } from 'react'; import FormLabel from './FormLabel'; -import React from 'react'; import ReactDOM from 'react-dom'; ReactDOM.render( - - Phone number - , + +
+ + Phone number + +
+
+ + Select all that apply.{' '} + Learn more about these documents. + + } + fieldId="document-field-id" + > + Select a document type + +
+
, document.getElementById('js-example') ); From e65932002e03885decb7cea326b97a8e5f063824 Mon Sep 17 00:00:00 2001 From: Bernard Wang Date: Mon, 4 Nov 2019 15:45:41 -0600 Subject: [PATCH 3/5] Update DateField example --- packages/core/src/components/DateField/datefield.example.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/components/DateField/datefield.example.html b/packages/core/src/components/DateField/datefield.example.html index 46d64bc188..db0aaff4f5 100644 --- a/packages/core/src/components/DateField/datefield.example.html +++ b/packages/core/src/components/DateField/datefield.example.html @@ -1,8 +1,8 @@
Date of birth - For example: 4 / 28 / 1986 + For example: 4 / 28 / 1986