diff --git a/.changeset/solid-button-backgrounds.md b/.changeset/solid-button-backgrounds.md new file mode 100644 index 0000000000..80428db80a --- /dev/null +++ b/.changeset/solid-button-backgrounds.md @@ -0,0 +1,5 @@ +--- +"@stackoverflow/stacks": patch +--- + +Use solid backgrounds for buttons so APCA checks can measure their base color contrast. Render the two-tone selected styling on an inner decorative layer for buttons and checked radio labels, with separate regression tests for contrast against both visible colors. Transparent borders now show a thin solid-color rim around that layer. Axe's built-in WCAG contrast rules still report selected pseudo-element backgrounds as incomplete. diff --git a/packages/stacks-classic/lib/__snapshots__/stacks.less.test.ts.snap b/packages/stacks-classic/lib/__snapshots__/stacks.less.test.ts.snap index d8d51ca299..ab5934be82 100644 --- a/packages/stacks-classic/lib/__snapshots__/stacks.less.test.ts.snap +++ b/packages/stacks-classic/lib/__snapshots__/stacks.less.test.ts.snap @@ -12250,7 +12250,7 @@ body.theme-highcontrast.theme-dark .s-bling.s-bling__filled.s-bling__bronze { --_bu-badge-px: var(--su6); --_bu-badge-py: var(--su2); --_bu-dropdown-bw: var(--su4); - background: linear-gradient(0deg, var(--_bu-bg-selected-overlay, var(--_bu-bg)) 50%, var(--_bu-bg) 50%) padding-box, linear-gradient(0deg, var(--_bu-bg-selected-overlay, var(--_bu-bg)) 50%, var(--_bu-bg) 50%) border-box; + background: var(--_bu-bg); border: var(--_bu-baw) solid var(--_bu-bc, transparent); color: var(--_bu-fc); font-size: var(--_bu-fs); @@ -12611,8 +12611,9 @@ p .s-btn.s-btn__link { --_bu-bg-selected-overlay: color-mix(in srgb, var(--_bu-bg-selected, var(--_bu-bg)), var(--white) var(--_bu-bg-selected-overlay-o)); --_bu-bg-gradient-top: var(--_bu-bg-selected-overlay, var(--_bu-bg)); --_bu-bg-gradient-bottom: var(--_bu-bg-selected, var(--_bu-bg)); - background: linear-gradient(0deg, var(--_bu-bg-gradient-top) 50%, var(--_bu-bg-gradient-bottom) 50%) padding-box, linear-gradient(0deg, var(--_bu-bg-gradient-top) 50%, var(--_bu-bg-gradient-bottom) 50%) border-box; + background: var(--_bu-bg-selected, var(--_bu-bg)); color: var(--_bu-fc-selected, var(--_bu-fc)); + isolation: isolate; } @media (prefers-color-scheme: dark) { body.theme-system .s-btn.is-selected, @@ -12640,6 +12641,23 @@ body.theme-system .theme-dark__forced .s-btn--radio:checked + .s-btn { .s-btn--radio:checked + .s-btn .s-btn--badge .s-btn--number { color: var(--_bu-badge-fc, var(--_bu-fc)); } +.s-btn.is-selected:before, +.s-btn--radio:checked + .s-btn:before { + background: linear-gradient(0deg, var(--_bu-bg-gradient-top) 50%, var(--_bu-bg-gradient-bottom) 50%) padding-box, linear-gradient(0deg, var(--_bu-bg-gradient-top) 50%, var(--_bu-bg-gradient-bottom) 50%) border-box; + border: 0; + border-radius: inherit; + content: ""; + inset: 0; + pointer-events: none; + position: absolute; + z-index: -1; +} +@media (forced-colors: active) { + .s-btn.is-selected:before, + .s-btn--radio:checked + .s-btn:before { + display: none; + } +} .s-btn .s-btn--badge { background-color: var(--_bu-badge-bg); border-radius: var(--br-pill); @@ -12697,9 +12715,15 @@ body.theme-system .theme-dark__forced .s-btn--radio:checked + .s-btn { outline: var(--su2) solid transparent !important; } .s-btn:not(.is-selected):hover { - background: linear-gradient(0deg, var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50%) padding-box, linear-gradient(0deg, var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50%) border-box; + background: var(--_bu-bg-hover, var(--_bu-bg)); color: var(--_bu-fc-hover, var(--_bu-fc)); } +.s-btn--radio:checked + .s-btn:where(:not(.is-selected):hover) { + background: var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))); +} +.s-btn--radio:checked + .s-btn:where(:not(.is-selected):hover):before { + background: linear-gradient(0deg, var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50%) padding-box, linear-gradient(0deg, var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50%) border-box; +} fieldset[disabled] .s-btn, .s-btn[disabled], .s-btn[aria-disabled="true"] { @@ -12715,6 +12739,14 @@ fieldset[disabled] .s-btn:hover, border-color: var(--_bu-bc-disabled, var(--_bu-bc, transparent)); color: var(--_bu-fc-disabled, var(--_bu-fc)); } +fieldset[disabled] .s-btn:before, +.s-btn[disabled]:before, +.s-btn[aria-disabled="true"]:before, +fieldset[disabled] .s-btn:hover:before, +.s-btn[disabled]:hover:before, +.s-btn[aria-disabled="true"]:hover:before { + content: none; +} fieldset[disabled] .s-btn .s-btn--badge, .s-btn[disabled] .s-btn--badge, .s-btn[aria-disabled="true"] .s-btn--badge, diff --git a/packages/stacks-classic/lib/components/button/button.a11y.test.ts b/packages/stacks-classic/lib/components/button/button.a11y.test.ts index a670beacb8..1c03f20d84 100644 --- a/packages/stacks-classic/lib/components/button/button.a11y.test.ts +++ b/packages/stacks-classic/lib/components/button/button.a11y.test.ts @@ -1,5 +1,9 @@ import testArgs from "./button.test.setup"; import { runA11yTests } from "../../test/a11y-test-utils"; +import { expect, fixture, html } from "@open-wc/testing"; +import { resetMouse, sendMouse } from "@web/test-runner-commands"; +import axe from "axe-core"; +import Color from "colorjs.io"; import "../../index"; describe("button", () => { @@ -9,4 +13,121 @@ describe("button", () => { /^s-btn-(?=.*unset).*badge$/, // s-btn with badge and unset variant not supported ], }); + + [ + "theme-light", + "theme-dark", + "theme-light theme-highcontrast", + "theme-dark theme-highcontrast", + ].forEach((theme) => { + it(`measures ordinary and selected backgrounds in ${theme}, including hover`, async () => { + const originalTheme = document.body.className; + try { + document.body.className = theme; + const el = await fixture(html` +
+ + ${[ + "", + "s-btn__danger", + "s-btn__featured", + "s-btn__tonal", + "s-btn__clear", + "s-btn__danger s-btn__clear", + ].map( + (variant) => html` + + ` + )} + + +
+ `); + for (const hovered of [false, true]) { + for (const button of el.querySelectorAll( + ".s-btn" + )) { + if (hovered) { + const before = getComputedStyle( + button, + "::before" + ).backgroundImage; + const { x, y, width, height } = + button.getBoundingClientRect(); + await sendMouse({ + type: "move", + position: [ + Math.round(x + width / 2), + Math.round(y + height / 2), + ], + }); + if (button.matches("label")) { + expect( + getComputedStyle(button, "::before") + .backgroundImage + ).not.to.equal(before); + } + } + expect( + getComputedStyle(button).backgroundImage + ).to.equal("none"); + const rule = "color-contrast-apca-custom"; + const results = await axe.run(button, { + runOnly: [rule], + rules: { [rule]: { enabled: true } }, + }); + expect(results.incomplete).to.be.empty; + expect(results.violations).to.be.empty; + expect(results.passes).to.have.lengthOf(1); + expect(results.passes[0].nodes).to.have.lengthOf(1); + + if (!button.matches(".is-selected, label")) { + continue; + } + // Axe measures the solid base, so check both visible gradient colors separately. + const stops = getComputedStyle( + button, + "::before" + ).backgroundImage.match(/(?:rgba?|color)\([^)]*\)/g); + expect(stops).to.have.lengthOf(4); + const foreground = new Color( + getComputedStyle(button).color + ); + const highcontrast = theme.includes("highcontrast"); + for (const stop of stops!.slice(0, 2)) { + const background = new Color(stop); + const contrast = Math.abs( + background.contrast( + foreground, + highcontrast ? "WCAG21" : "APCA" + ) + ); + expect( + contrast, + `${theme}: ${button.className} against ${stop}` + ).to.be.at.least(highcontrast ? 7 : 60); + } + } + } + } finally { + document.body.className = originalTheme; + await resetMouse(); + } + }); + }); }); diff --git a/packages/stacks-classic/lib/components/button/button.less b/packages/stacks-classic/lib/components/button/button.less index e9d6a4ee62..417307ce18 100644 --- a/packages/stacks-classic/lib/components/button/button.less +++ b/packages/stacks-classic/lib/components/button/button.less @@ -284,15 +284,33 @@ background-color: var(--_bu-badge-bg); } - background: linear-gradient(0deg, - var(--_bu-bg-gradient-top) 50%, - var(--_bu-bg-gradient-bottom) 50% - ) padding-box, - linear-gradient(0deg, - var(--_bu-bg-gradient-top) 50%, - var(--_bu-bg-gradient-bottom) 50% - ) border-box; + &:before { + // Keep decoration inside the actual border, including border-width utility overrides. + background: linear-gradient(0deg, + var(--_bu-bg-gradient-top) 50%, + var(--_bu-bg-gradient-bottom) 50% + ) padding-box, + linear-gradient(0deg, + var(--_bu-bg-gradient-top) 50%, + var(--_bu-bg-gradient-bottom) 50% + ) border-box; + border: 0; + border-radius: inherit; + content: ""; + inset: 0; + pointer-events: none; + position: absolute; + z-index: -1; + + @media (forced-colors: active) { + display: none; + } + } + + // The solid base is measurable by axe; tests check both decorative colors separately. + background: var(--_bu-bg-selected, var(--_bu-bg)); color: var(--_bu-fc-selected, var(--_bu-fc)); + isolation: isolate; } // CHILD ELEMENTS @@ -359,23 +377,36 @@ } &:not(.is-selected):hover { - background: - linear-gradient(0deg, - var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, - var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50% - ) padding-box, - linear-gradient(0deg, - var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, - var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50% - ) border-box; + background: var(--_bu-bg-hover, var(--_bu-bg)); color: var(--_bu-fc-hover, var(--_bu-fc)); } + // Preserve checked radio hover colors, without increasing specificity over disabled states. + .s-btn--radio:checked + &:where(:not(.is-selected):hover) { + &:before { + background: + linear-gradient(0deg, + var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, + var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50% + ) padding-box, + linear-gradient(0deg, + var(--_bu-bg-selected-overlay, var(--_bu-bg-hover, var(--_bu-bg))) 50%, + var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))) 50% + ) border-box; + } + + background: var(--_bu-bg-hover, var(--_bu-bg-selected, var(--_bu-bg))); + } + fieldset[disabled] &, &[disabled], &[aria-disabled="true"] { &, &:hover { + &:before { + content: none; + } + .s-btn--badge { .s-btn--number { color: var(--_bu-badge-fc-disabled); @@ -392,15 +423,8 @@ cursor: auto; } - background: - linear-gradient(0deg, - var(--_bu-bg-selected-overlay, var(--_bu-bg)) 50%, - var(--_bu-bg) 50% - ) padding-box, - linear-gradient(0deg, - var(--_bu-bg-selected-overlay, var(--_bu-bg)) 50%, - var(--_bu-bg) 50% - ) border-box; + // Selected gradients are decorative layers; the button itself always has a solid background. + background: var(--_bu-bg); border: var(--_bu-baw) solid var(--_bu-bc, transparent); color: var(--_bu-fc); font-size: var(--_bu-fs); diff --git a/packages/stacks-classic/lib/components/button/button.visual.test.ts b/packages/stacks-classic/lib/components/button/button.visual.test.ts index f801287a85..bf473cb300 100644 --- a/packages/stacks-classic/lib/components/button/button.visual.test.ts +++ b/packages/stacks-classic/lib/components/button/button.visual.test.ts @@ -15,4 +15,39 @@ describe("button", () => { `, }); + + runVisualTests({ + baseClass: "s-btn-selected", + template: ({ testid }) => html` +
+ ${[ + "", + "s-btn__danger", + "s-btn__featured", + "s-btn__tonal", + "s-btn__clear", + "s-btn__danger s-btn__clear", + ].map( + (variant) => html` + + ` + )} + + +
+ `, + }); }); diff --git a/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-dark.ico b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-dark.ico new file mode 100644 index 0000000000..3f1b42e01e --- /dev/null +++ b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-dark.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29d5b1e033606792fc68dd5926aad550f2a90875a07f83908995102b365d1c59 +size 13604 diff --git a/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-highcontrast-dark.ico b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-highcontrast-dark.ico new file mode 100644 index 0000000000..43eeb79c9e --- /dev/null +++ b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-highcontrast-dark.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b8d97f4060f7cc9a667086be373d652b122d7e48f81f84338ac4724051f9672 +size 14432 diff --git a/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-highcontrast-light.ico b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-highcontrast-light.ico new file mode 100644 index 0000000000..bcc04d1cc3 --- /dev/null +++ b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-highcontrast-light.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e477bba3273bb749d1fb83ce5681bdb211678e78c5487aa898cde7f5003953b +size 14870 diff --git a/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-light.ico b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-light.ico new file mode 100644 index 0000000000..b0af99201d --- /dev/null +++ b/packages/stacks-classic/screenshots/Chromium/baseline/s-btn-selected-light.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad477a98060bb458064831cfd0736eec5c6be44fd2b39a3942dda4a012108245 +size 14013 diff --git a/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-dark.ico b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-dark.ico new file mode 100644 index 0000000000..bdba2e251e --- /dev/null +++ b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-dark.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35a37e3f07e923aaae170984cb213fb71f449240672c24a5d910866f0b5761a3 +size 14219 diff --git a/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-highcontrast-dark.ico b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-highcontrast-dark.ico new file mode 100644 index 0000000000..bab3fcaa70 --- /dev/null +++ b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-highcontrast-dark.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78b4f6d46fdf7a0fb82e97c3a1d5481fb80673a96afa558c5a04214222813864 +size 15759 diff --git a/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-highcontrast-light.ico b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-highcontrast-light.ico new file mode 100644 index 0000000000..3ea65b5985 --- /dev/null +++ b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-highcontrast-light.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:882bd62dc12024249b2ec925f05ae73036b6a2bdf15b52b3dc489d939483412b +size 16503 diff --git a/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-light.ico b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-light.ico new file mode 100644 index 0000000000..6026559325 --- /dev/null +++ b/packages/stacks-classic/screenshots/Firefox/baseline/s-btn-selected-light.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:391a9df70c6b1bd980704a15e3cf81d4ff2d0a1d46a86325b7cddc97fdc68348 +size 15055 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-badge.ico index c1ce62d987..a6f1b24012 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:84e2787a5bc7d3dc8e244fdec635751d4a18aefd8345563ea595b14ecd1b1984 -size 4685 +oid sha256:745ccb26438509b59bc417a9ac2a9d20d215ec75a53966421da44bbe15b43775 +size 4757 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-is-loading-badge.ico index c1ce62d987..a6f1b24012 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-dropdown-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:84e2787a5bc7d3dc8e244fdec635751d4a18aefd8345563ea595b14ecd1b1984 -size 4685 +oid sha256:745ccb26438509b59bc417a9ac2a9d20d215ec75a53966421da44bbe15b43775 +size 4757 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-badge.ico index c1ce62d987..a6f1b24012 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:84e2787a5bc7d3dc8e244fdec635751d4a18aefd8345563ea595b14ecd1b1984 -size 4685 +oid sha256:745ccb26438509b59bc417a9ac2a9d20d215ec75a53966421da44bbe15b43775 +size 4757 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-is-loading-badge.ico index c1ce62d987..a6f1b24012 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-dropdown-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:84e2787a5bc7d3dc8e244fdec635751d4a18aefd8345563ea595b14ecd1b1984 -size 4685 +oid sha256:745ccb26438509b59bc417a9ac2a9d20d215ec75a53966421da44bbe15b43775 +size 4757 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-is-loading-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-icon-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-is-loading-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-is-loading-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-filled-md-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-is-loading-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-icon-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-is-loading-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-is-loading-badge.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-is-loading-badge.ico index 59ecf6b001..009da48810 100644 --- a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-is-loading-badge.ico +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-highcontrast-dark-tonal-md-is-loading-badge.ico @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c2e8bd74c65e1d174f024cd4b779a34f52292b9d50cfe870a2647bbd41a526c -size 4607 +oid sha256:00638d2a755c142807d8b4fcf9da03f6d904dc6f5bee6677d97a645e66e53cae +size 4690 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-dark.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-dark.ico new file mode 100644 index 0000000000..e7941bcd94 --- /dev/null +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-dark.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91444ab40822a50307a85d3e292163df451182c152303c59562127aea8bb348f +size 15860 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-highcontrast-dark.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-highcontrast-dark.ico new file mode 100644 index 0000000000..5396a91d30 --- /dev/null +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-highcontrast-dark.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4897dfcab3f030483cb586c2fa4ec4cda66e7e6504ff1dc29011a7dbfcf94e10 +size 17166 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-highcontrast-light.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-highcontrast-light.ico new file mode 100644 index 0000000000..e9993fb611 --- /dev/null +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-highcontrast-light.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:069883d8428d8be2a11d8a30503c8fdf4f788dddef0e2be66ce511385c7a4115 +size 17184 diff --git a/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-light.ico b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-light.ico new file mode 100644 index 0000000000..c73332866f --- /dev/null +++ b/packages/stacks-classic/screenshots/Webkit/baseline/s-btn-selected-light.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dcb243a5d30026c0bbac8ffe12fe67ad0454c85720cb489f781f40591ad3e8a +size 15769