From f0e1c0e0b43f2fc036a3943447f034b6a46b312b Mon Sep 17 00:00:00 2001 From: Trevor Burnham Date: Tue, 26 Aug 2025 13:09:32 -0400 Subject: [PATCH] perf: Replace use of :focus-visible shim All targeted browsers now support :focus-visible. This commit removes the use of the shim defined in @cloudscape-design/component-toolkit. Once this change is merged, the shim can be removed. --- src/alert/styles.scss | 3 +-- src/anchor-navigation/styles.scss | 3 +-- src/annotation-context/annotation/styles.scss | 3 +-- src/app-layout/drawer/styles.scss | 1 - src/app-layout/toggles/styles.scss | 3 +-- .../toolbar/trigger-button/styles.scss | 1 - src/app-layout/visual-refresh/trigger-button.scss | 3 +-- src/breadcrumb-group/item/styles.scss | 3 +-- src/breadcrumb-group/styles.scss | 3 +-- src/button/styles.scss | 3 +-- src/calendar/styles.scss | 5 ++--- src/checkbox/styles.scss | 1 - src/code-editor/ace-editor.scss | 5 ++--- src/code-editor/pane.scss | 1 - src/code-editor/resizable-box/styles.scss | 1 - src/code-editor/styles.scss | 3 +-- src/date-picker/styles.scss | 3 +-- src/date-range-picker/calendar/grids/styles.scss | 5 ++--- src/date-range-picker/styles.scss | 3 +-- src/expandable-section/styles.scss | 9 ++++----- src/file-input/styles.scss | 3 +-- src/file-token-group/styles.scss | 1 - src/flashbar/collapsible.scss | 3 +-- src/flashbar/styles.scss | 3 +-- src/form-field/styles.scss | 1 - src/internal/components/abstract-switch/styles.scss | 4 ++-- src/internal/components/button-trigger/styles.scss | 5 ++--- src/internal/components/chart-legend/styles.scss | 3 +-- src/internal/components/drag-handle/styles.scss | 3 +-- src/internal/components/expand-toggle-button/styles.scss | 3 +-- src/internal/components/menu-dropdown/styles.scss | 3 +-- src/internal/components/panel-resize-handle/styles.scss | 3 +-- src/internal/components/sortable-area/styles.scss | 1 - src/internal/components/token-list/styles.scss | 3 +-- src/internal/styles/links.scss | 1 - src/link/styles.scss | 3 +-- src/pagination/styles.scss | 3 +-- src/popover/styles.scss | 3 +-- src/prompt-input/styles.scss | 1 - src/property-filter/filtering-token/styles.scss | 3 +-- src/radio-group/styles.scss | 1 - src/segmented-control/segment.scss | 3 +-- src/select/parts/styles.scss | 1 - src/side-navigation/styles.scss | 3 +-- src/split-panel/styles.scss | 1 - src/table/body-cell/styles.scss | 5 ++--- src/table/header-cell/styles.scss | 5 ++--- src/table/resizer/styles.scss | 7 ++----- src/table/styles.scss | 3 +-- src/tabs/styles.scss | 3 +-- src/tabs/tab-header-bar.scss | 3 +-- src/tag-editor/styles.scss | 3 +-- src/toggle/styles.scss | 1 - src/token-group/styles.scss | 3 +-- src/top-navigation/styles.scss | 5 ++--- src/tutorial-panel/components/tutorial-list/styles.scss | 3 +-- src/wizard/styles.scss | 5 ++--- 57 files changed, 56 insertions(+), 114 deletions(-) diff --git a/src/alert/styles.scss b/src/alert/styles.scss index 77f3a651ef..af89689936 100644 --- a/src/alert/styles.scss +++ b/src/alert/styles.scss @@ -6,7 +6,6 @@ @use 'sass:map'; @use '../internal/styles/tokens' as awsui; @use '../internal/styles' as styles; -@use '@cloudscape-design/component-toolkit/internal/focus-visible' as focus-visible; @use '../internal/generated/custom-css-properties/index.scss' as custom-props; @use '../internal/styles/foundation' as foundation; @@ -82,7 +81,7 @@ &:focus { outline: none; } - @include focus-visible.when-visible { + &:focus-visible { @include styles.focus-highlight( $gutter: awsui.$space-button-focus-outline-gutter, $border-radius: var(#{custom-props.$alertFocusRingBorderRadius}, awsui.$border-radius-control-default-focus-ring), diff --git a/src/anchor-navigation/styles.scss b/src/anchor-navigation/styles.scss index 68fcc8f0e0..45268222ff 100644 --- a/src/anchor-navigation/styles.scss +++ b/src/anchor-navigation/styles.scss @@ -4,7 +4,6 @@ */ @use '../internal/styles/tokens' as awsui; @use '../internal/styles' as styles; -@use '@cloudscape-design/component-toolkit/internal/focus-visible' as focus-visible; @use '../internal/styles/typography/constants.scss' as typography; $guide-line-width: 2px; @@ -85,7 +84,7 @@ $guide-line-offset: -2px; // Negative to expand 2px beyond the element transition-property: all; } - @include focus-visible.when-visible { + &:focus-visible { @include styles.link-focus; } diff --git a/src/annotation-context/annotation/styles.scss b/src/annotation-context/annotation/styles.scss index f01587f5c8..1b5bb6b925 100644 --- a/src/annotation-context/annotation/styles.scss +++ b/src/annotation-context/annotation/styles.scss @@ -5,7 +5,6 @@ @use '../../internal/styles/tokens' as awsui; @use '../../internal/styles' as styles; -@use '@cloudscape-design/component-toolkit/internal/focus-visible' as focus-visible; @use '../../internal/generated/custom-css-properties/index.scss' as custom-props; @use './arrow'; @@ -66,7 +65,7 @@ outline: none; } - @include focus-visible.when-visible { + &:focus-visible { @include styles.focus-highlight(2px, awsui.$border-radius-control-circular-focus-ring); } diff --git a/src/app-layout/drawer/styles.scss b/src/app-layout/drawer/styles.scss index bbdd100366..7e2e4433ac 100644 --- a/src/app-layout/drawer/styles.scss +++ b/src/app-layout/drawer/styles.scss @@ -4,7 +4,6 @@ */ @use '../../internal/styles/tokens' as awsui; @use '../../internal/styles' as styles; -@use '@cloudscape-design/component-toolkit/internal/focus-visible' as focus-visible; @use '../constants' as constants; .toggle { diff --git a/src/app-layout/toggles/styles.scss b/src/app-layout/toggles/styles.scss index 52482c2b31..ac76f9b96d 100644 --- a/src/app-layout/toggles/styles.scss +++ b/src/app-layout/toggles/styles.scss @@ -5,7 +5,6 @@ @use '../../internal/styles/tokens' as awsui; @use '../../internal/styles' as styles; -@use '@cloudscape-design/component-toolkit/internal/focus-visible' as focus-visible; .toggle-button { cursor: pointer; @@ -22,7 +21,7 @@ outline: none; text-decoration: none; } - @include focus-visible.when-visible { + &:focus-visible { @include styles.focus-highlight(awsui.$space-button-inline-icon-focus-outline-gutter); } } diff --git a/src/app-layout/visual-refresh-toolbar/toolbar/trigger-button/styles.scss b/src/app-layout/visual-refresh-toolbar/toolbar/trigger-button/styles.scss index c11d6d7674..b53f842ca5 100644 --- a/src/app-layout/visual-refresh-toolbar/toolbar/trigger-button/styles.scss +++ b/src/app-layout/visual-refresh-toolbar/toolbar/trigger-button/styles.scss @@ -5,7 +5,6 @@ @use '../../../../internal/styles' as styles; @use '../../../../internal/styles/tokens' as awsui; -@use '@cloudscape-design/component-toolkit/internal/focus-visible' as focus-visible; .trigger { // reset native