From 613691f529c3f5a63723bd2ab57560555a1187cd Mon Sep 17 00:00:00 2001 From: Ray Lee Date: Mon, 5 Feb 2024 18:10:56 -0500 Subject: [PATCH] Add labels to structured date input fields. --- src/components/StructuredDateInput.jsx | 52 ++++++++++++++++++++------ 1 file changed, 40 insertions(+), 12 deletions(-) diff --git a/src/components/StructuredDateInput.jsx b/src/components/StructuredDateInput.jsx index 43f3f52..cec57be 100644 --- a/src/components/StructuredDateInput.jsx +++ b/src/components/StructuredDateInput.jsx @@ -288,7 +288,7 @@ export default class StructuredDateInput extends Component { ); } - renderDropdownInput(fieldName, listName, embedded = false) { + renderDropdownInput(fieldName, listName, label, embedded = false) { // Render an appropriate dropdown input for the given list name. If the name is the name of a // term list provided in the terms prop, a TermPickerInput is rendered. Otherwise, if the name // is the name of an option list provided in the optionLists prop, a @@ -307,6 +307,7 @@ export default class StructuredDateInput extends Component { if (embedded) { return (
- {this.renderDropdownInput('dateAssociation', 'dateassociation')} + {this.renderDropdownInput('dateAssociation', 'dateassociation', formatFieldLabel('dateAssociation'))}
@@ -440,6 +443,7 @@ export default class StructuredDateInput extends Component { + {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */} @@ -458,6 +462,8 @@ export default class StructuredDateInput extends Component { @@ -510,6 +526,8 @@ export default class StructuredDateInput extends Component {
@@ -474,6 +482,8 @@ export default class StructuredDateInput extends Component { - {this.renderDropdownInput('dateEarliestSingleEra', 'dateera', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateEarliestSingleEra', 'dateera', formatFieldLabel('earliestSingle') + ' ' + formatFieldLabel('dateEra'), true)} - {this.renderDropdownInput('dateEarliestSingleCertainty', 'datecertainty', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateEarliestSingleCertainty', 'datecertainty', formatFieldLabel('earliestSingle') + ' ' + formatFieldLabel('dateCertainty'), true)} - {this.renderDropdownInput('dateEarliestSingleQualifier', 'dateQualifiers', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateEarliestSingleQualifier', 'dateQualifiers', formatFieldLabel('earliestSingle') + ' ' + formatFieldLabel('dateQualifier'), true)} - {this.renderDropdownInput('dateEarliestSingleQualifierUnit', 'datequalifier', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateEarliestSingleQualifierUnit', 'datequalifier', formatFieldLabel('earliestSingle') + ' ' + formatFieldLabel('dateQualifierUnit'), true)}
- {this.renderDropdownInput('dateLatestEra', 'dateera', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateLatestEra', 'dateera', formatFieldLabel('latest') + ' ' + formatFieldLabel('dateEra'), true)} - {this.renderDropdownInput('dateLatestCertainty', 'datecertainty', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateLatestCertainty', 'datecertainty', formatFieldLabel('latest') + ' ' + formatFieldLabel('dateCertainty'), true)} - {this.renderDropdownInput('dateLatestQualifier', 'dateQualifiers', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateLatestQualifier', 'dateQualifiers', formatFieldLabel('latest') + ' ' + formatFieldLabel('dateQualifier'), true)} - {this.renderDropdownInput('dateLatestQualifierUnit', 'datequalifier', true)} + {/* eslint-disable-next-line prefer-template */} + {this.renderDropdownInput('dateLatestQualifierUnit', 'datequalifier', formatFieldLabel('latest') + ' ' + formatFieldLabel('dateQualifierUnit'), true)}