aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src
diff options
context:
space:
mode:
authorAmbroise C <ambroise.christea@sonarsource.com>2024-11-22 11:13:54 +0100
committersonartech <sonartech@sonarsource.com>2024-11-22 20:03:09 +0000
commit7a9d3ce2bccf2779a492eeaec43a1a0b6f938070 (patch)
tree7a5757f3cd33f4587e285ec682b0e7ba168c2175 /server/sonar-web/src
parent192e1abe0f4399572f92551eaa19a5c5f7e597d5 (diff)
downloadsonarqube-7a9d3ce2bccf2779a492eeaec43a1a0b6f938070.tar.gz
sonarqube-7a9d3ce2bccf2779a492eeaec43a1a0b6f938070.zip
SONAR-22316 Fix a11y issues on Project's Quality Gate page
Diffstat (limited to 'server/sonar-web/src')
-rw-r--r--server/sonar-web/src/main/js/apps/projectQualityGate/ProjectQualityGateAppRenderer.tsx114
1 files changed, 58 insertions, 56 deletions
diff --git a/server/sonar-web/src/main/js/apps/projectQualityGate/ProjectQualityGateAppRenderer.tsx b/server/sonar-web/src/main/js/apps/projectQualityGate/ProjectQualityGateAppRenderer.tsx
index 0c7f724fa00..07788dace9f 100644
--- a/server/sonar-web/src/main/js/apps/projectQualityGate/ProjectQualityGateAppRenderer.tsx
+++ b/server/sonar-web/src/main/js/apps/projectQualityGate/ProjectQualityGateAppRenderer.tsx
@@ -243,68 +243,70 @@ function ProjectQualityGateAppRenderer(props: Readonly<ProjectQualityGateAppRend
/>
</div>
- {isAiAssured && (
- <>
- <p className="sw-w-abs-400 sw-mt-6">
- <FormattedMessage
- id="project_quality_gate.ai_assured.message1"
- defaultMessage={translate('project_quality_gate.ai_assured.message1')}
- values={{
- link: (
- <DocumentationLink to={DocLink.AiCodeAssurance}>
- {translate('project_quality_gate.ai_assured.message1.link')}
- </DocumentationLink>
- ),
- }}
- />
- </p>
- <p className="sw-w-abs-400 sw-mt-6">
+ <div aria-live="polite">
+ {isAiAssured && (
+ <>
+ <p className="sw-w-abs-400 sw-mt-6">
+ <FormattedMessage
+ id="project_quality_gate.ai_assured.message1"
+ defaultMessage={translate('project_quality_gate.ai_assured.message1')}
+ values={{
+ link: (
+ <DocumentationLink to={DocLink.AiCodeAssurance}>
+ {translate('project_quality_gate.ai_assured.message1.link')}
+ </DocumentationLink>
+ ),
+ }}
+ />
+ </p>
+ <p className="sw-w-abs-400 sw-mt-6">
+ <FormattedMessage
+ id="project_quality_gate.ai_assured.message2"
+ defaultMessage={translate('project_quality_gate.ai_assured.message2')}
+ values={{
+ link: (
+ <LinkStandalone
+ className="sw-shrink-0"
+ to={{
+ pathname:
+ '/project/admin/extension/developer-server/ai-project-settings',
+ search: queryToSearchString({
+ ...location.query,
+ qualifier: ComponentQualifier.Project,
+ }),
+ }}
+ >
+ {translate('project_quality_gate.ai_assured.message2.link')}
+ </LinkStandalone>
+ ),
+ value: <b>{translate('false')}</b>,
+ }}
+ />
+ </p>
+ </>
+ )}
+
+ {selectedQualityGate && !hasConditionOnNewCode(selectedQualityGate) && (
+ <FlagMessage variant="warning">
<FormattedMessage
- id="project_quality_gate.ai_assured.message2"
- defaultMessage={translate('project_quality_gate.ai_assured.message2')}
+ id="project_quality_gate.no_condition_on_new_code"
+ defaultMessage={translate('project_quality_gate.no_condition_on_new_code')}
values={{
link: (
- <LinkStandalone
- className="sw-shrink-0"
- to={{
- pathname:
- '/project/admin/extension/developer-server/ai-project-settings',
- search: queryToSearchString({
- ...location.query,
- qualifier: ComponentQualifier.Project,
- }),
- }}
- >
- {translate('project_quality_gate.ai_assured.message2.link')}
- </LinkStandalone>
+ <Link to={getQualityGateUrl(selectedQualityGate.name)}>
+ {translate('project_quality_gate.no_condition.link')}
+ </Link>
),
- value: <b>{translate('false')}</b>,
}}
/>
- </p>
- </>
- )}
-
- {selectedQualityGate && !hasConditionOnNewCode(selectedQualityGate) && (
- <FlagMessage variant="warning">
- <FormattedMessage
- id="project_quality_gate.no_condition_on_new_code"
- defaultMessage={translate('project_quality_gate.no_condition_on_new_code')}
- values={{
- link: (
- <Link to={getQualityGateUrl(selectedQualityGate.name)}>
- {translate('project_quality_gate.no_condition.link')}
- </Link>
- ),
- }}
- />
- </FlagMessage>
- )}
- {needsReanalysis && (
- <FlagMessage className="sw-mt-4 sw-w-abs-600" variant="warning">
- {translate('project_quality_gate.requires_new_analysis')}
- </FlagMessage>
- )}
+ </FlagMessage>
+ )}
+ {needsReanalysis && (
+ <FlagMessage className="sw-mt-4 sw-w-abs-600" variant="warning">
+ {translate('project_quality_gate.requires_new_analysis')}
+ </FlagMessage>
+ )}
+ </div>
</div>
<div>