Skip to content

Commit 13a6999

Browse files
fix: removed ariaDescribedby on conditionally joined ariadescribedBy (#1012)
* fix: removed ariaDescribedby on conditionally joined ariadescribedBy * fix: added props for aria-describedby and aria-labelledby * fix: remove unnecessary rest spread operator from Upload component --------- Co-authored-by: ypatadia-eightfold <ypatadia@eightfold.ai>
1 parent 4c3c746 commit 13a6999

File tree

3 files changed

+16
-3
lines changed

3 files changed

+16
-3
lines changed

src/components/Inputs/TextInput/TextInput.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@ export const TextInput: FC<TextInputProps> = React.forwardRef(
134134
const ariaInvalid = ariaInvalidProp || mergedStatus === 'error';
135135
const ariaDescribedBy =
136136
mergedStatus === 'error'
137-
? ariaDescribedByProp || errorMessageId
138-
: undefined;
137+
? [ariaDescribedByProp, errorMessageId].filter(Boolean).join(' ')
138+
: ariaDescribedByProp;
139139

140140
// Needed for form error scroll-into-view by id
141141
const mergedFormItemInput: boolean = isFormItemInput || formItemInput;

src/components/Upload/Upload.tsx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ const InternalUpload: React.ForwardRefRenderFunction<unknown, UploadProps> = (
4747
accept = '',
4848
acceptedFileTypesText: defaultAcceptedFileTypesText,
4949
action = '',
50+
'aria-describedby': ariaDescribedBy,
51+
'aria-labelledby': ariaLabelledBy,
5052
children,
5153
classNames,
5254
configContextProps = {
@@ -577,6 +579,8 @@ const InternalUpload: React.ForwardRefRenderFunction<unknown, UploadProps> = (
577579
);
578580
const renderButton = (): JSX.Element => (
579581
<Button
582+
aria-describedby={ariaDescribedBy}
583+
aria-labelledby={ariaLabelledBy}
580584
classNames={styles.uploadDropButton}
581585
configContextProps={configContextProps}
582586
disabled={mergedDisabled}
@@ -699,7 +703,12 @@ const InternalUpload: React.ForwardRefRenderFunction<unknown, UploadProps> = (
699703
const renderUploadButton = (
700704
uploadButtonStyle?: React.CSSProperties
701705
): JSX.Element => (
702-
<div className={uploadButtonClassNames} style={uploadButtonStyle}>
706+
<div
707+
aria-describedby={ariaDescribedBy}
708+
aria-labelledby={ariaLabelledBy}
709+
className={uploadButtonClassNames}
710+
style={uploadButtonStyle}
711+
>
703712
<OcUpload {...ocUploadProps} ref={upload} />
704713
</div>
705714
);

src/components/Upload/Upload.types.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -314,6 +314,10 @@ export interface UploadProps<T = any> extends Pick<OcUploadProps, 'capture'> {
314314
* Upload URL
315315
*/
316316
action?: Action;
317+
318+
'aria-describedby'?: string;
319+
320+
'aria-labelledby'?: string;
317321
/**
318322
* Hook executed before uploading.
319323
* Uploading will be stopped with false or a rejected Promise returned.

0 commit comments

Comments
 (0)