Skip to content

Commit

Permalink
[PR Feedback]
Browse files Browse the repository at this point in the history
- Remove fragment surrounding inline edit component
- Trim title before saving
- Add onChange listener to input to reset errors upon input change
  • Loading branch information
breehall committed Jul 28, 2023
1 parent ab5bec5 commit 56dabbd
Showing 1 changed file with 40 additions and 37 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ const EditableTitleComponent: React.FC<EditableTitleProps> = ({ onSubmit, isLoad
}

if (newTitleValue !== title) {
onSubmit(newTitleValue);
onSubmit(newTitleValue.trim());
}
setEditMode(false);
setErrors([]);
Expand All @@ -56,43 +56,46 @@ const EditableTitleComponent: React.FC<EditableTitleProps> = ({ onSubmit, isLoad
const hasErrors = errors.length > 0;

return (
<>
<EuiFlexGroup>
<EuiFlexItem grow={true} css={releasePhase && { overflow: 'hidden' }}>
<EuiInlineEditTitle
defaultValue={title}
readModeProps={{
onClick: () => setEditMode(true),
'data-test-subj': 'editable-title-header-value',
}}
editModeProps={{
formRowProps: { error: errors },
inputProps: { 'data-test-subj': 'editable-title-input-field' },
saveButtonProps: { 'data-test-subj': 'editable-title-submit-btn' },
cancelButtonProps: {
onClick: () => onCancel(),
'data-test-subj': 'editable-title-cancel-btn',
<EuiFlexGroup>
<EuiFlexItem grow={true} css={releasePhase && { overflow: 'hidden' }}>
<EuiInlineEditTitle
defaultValue={title}
readModeProps={{
onClick: () => setEditMode(true),
'data-test-subj': 'editable-title-header-value',
}}
editModeProps={{
formRowProps: { error: errors },
inputProps: {
'data-test-subj': 'editable-title-input-field',
onChange: () => {
setErrors([]);
},
}}
inputAriaLabel="Editable title input field"
heading="h1"
size="s"
isInvalid={hasErrors}
isLoading={isLoading}
isReadOnly={!permissions.update}
onSave={(value) => {
return onClickSubmit(value);
}}
startWithEditOpen={editMode}
data-test-subj="header-page-title"
/>
</EuiFlexItem>
<EuiFlexItem grow={false}>
{releasePhase === 'experimental' && <TitleExperimentalBadge />}
{releasePhase === 'beta' && <TitleBetaBadge />}
</EuiFlexItem>
</EuiFlexGroup>
</>
},
saveButtonProps: { 'data-test-subj': 'editable-title-submit-btn' },
cancelButtonProps: {
onClick: () => onCancel(),
'data-test-subj': 'editable-title-cancel-btn',
},
}}
inputAriaLabel="Editable title input field"
heading="h1"
size="s"
isInvalid={hasErrors}
isLoading={isLoading}
isReadOnly={!permissions.update}
onSave={(value) => {
return onClickSubmit(value);
}}
startWithEditOpen={editMode}
data-test-subj="header-page-title"
/>
</EuiFlexItem>
<EuiFlexItem grow={false}>
{releasePhase === 'experimental' && <TitleExperimentalBadge />}
{releasePhase === 'beta' && <TitleBetaBadge />}
</EuiFlexItem>
</EuiFlexGroup>
);
};
EditableTitleComponent.displayName = 'EditableTitle';
Expand Down

0 comments on commit 56dabbd

Please sign in to comment.