fix: hide closed favorites drawer
This commit is contained in:
@@ -65,6 +65,7 @@ export function createFavoritesDrawer(
|
|||||||
drawer.setAttribute("aria-modal", "false");
|
drawer.setAttribute("aria-modal", "false");
|
||||||
drawer.setAttribute("aria-hidden", "true");
|
drawer.setAttribute("aria-hidden", "true");
|
||||||
applyDrawerStyles(drawer);
|
applyDrawerStyles(drawer);
|
||||||
|
drawer.style.display = "none";
|
||||||
|
|
||||||
(document.body ?? document.documentElement).append(tab, drawer);
|
(document.body ?? document.documentElement).append(tab, drawer);
|
||||||
|
|
||||||
@@ -257,6 +258,7 @@ export function createFavoritesDrawer(
|
|||||||
}
|
}
|
||||||
isOpen = true;
|
isOpen = true;
|
||||||
drawer.hidden = false;
|
drawer.hidden = false;
|
||||||
|
drawer.style.display = "flex";
|
||||||
drawer.setAttribute("aria-hidden", "false");
|
drawer.setAttribute("aria-hidden", "false");
|
||||||
tab.setAttribute("aria-expanded", "true");
|
tab.setAttribute("aria-expanded", "true");
|
||||||
renderDrawer();
|
renderDrawer();
|
||||||
@@ -276,6 +278,7 @@ export function createFavoritesDrawer(
|
|||||||
}
|
}
|
||||||
isOpen = false;
|
isOpen = false;
|
||||||
drawer.hidden = true;
|
drawer.hidden = true;
|
||||||
|
drawer.style.display = "none";
|
||||||
drawer.setAttribute("aria-hidden", "true");
|
drawer.setAttribute("aria-hidden", "true");
|
||||||
tab.setAttribute("aria-expanded", "false");
|
tab.setAttribute("aria-expanded", "false");
|
||||||
if (tab.isConnected) {
|
if (tab.isConnected) {
|
||||||
|
|||||||
@@ -139,6 +139,7 @@ describe("favorites-drawer", () => {
|
|||||||
expect(readTab().textContent).not.toMatch(/\d/);
|
expect(readTab().textContent).not.toMatch(/\d/);
|
||||||
expect(readTab().style.color).not.toMatch(/b42318|dc2626|ef4444|red/i);
|
expect(readTab().style.color).not.toMatch(/b42318|dc2626|ef4444|red/i);
|
||||||
expect(readDrawer().hidden).toBe(true);
|
expect(readDrawer().hidden).toBe(true);
|
||||||
|
expect(readDrawer().style.display).toBe("none");
|
||||||
expect(readDrawer().style.position).toBe("fixed");
|
expect(readDrawer().style.position).toBe("fixed");
|
||||||
expect(readDrawer().style.right).toBe("56px");
|
expect(readDrawer().style.right).toBe("56px");
|
||||||
expect(readDrawer().style.width).toBe("380px");
|
expect(readDrawer().style.width).toBe("380px");
|
||||||
@@ -151,6 +152,7 @@ describe("favorites-drawer", () => {
|
|||||||
|
|
||||||
readTab().click();
|
readTab().click();
|
||||||
expect(readDrawer().hidden).toBe(false);
|
expect(readDrawer().hidden).toBe(false);
|
||||||
|
expect(readDrawer().style.display).toBe("flex");
|
||||||
expect(readTab().getAttribute("aria-expanded")).toBe("true");
|
expect(readTab().getAttribute("aria-expanded")).toBe("true");
|
||||||
expect(document.activeElement).toBe(
|
expect(document.activeElement).toBe(
|
||||||
document.querySelector('[data-sces-favorites-drawer="close"]')
|
document.querySelector('[data-sces-favorites-drawer="close"]')
|
||||||
@@ -158,11 +160,14 @@ describe("favorites-drawer", () => {
|
|||||||
|
|
||||||
click('[data-sces-favorites-drawer="close"]');
|
click('[data-sces-favorites-drawer="close"]');
|
||||||
expect(readDrawer().hidden).toBe(true);
|
expect(readDrawer().hidden).toBe(true);
|
||||||
|
expect(readDrawer().style.display).toBe("none");
|
||||||
expect(document.activeElement).toBe(readTab());
|
expect(document.activeElement).toBe(readTab());
|
||||||
|
|
||||||
readTab().click();
|
readTab().click();
|
||||||
|
expect(readDrawer().style.display).toBe("flex");
|
||||||
document.dispatchEvent(new KeyboardEvent("keydown", { key: "Escape" }));
|
document.dispatchEvent(new KeyboardEvent("keydown", { key: "Escape" }));
|
||||||
expect(readDrawer().hidden).toBe(true);
|
expect(readDrawer().hidden).toBe(true);
|
||||||
|
expect(readDrawer().style.display).toBe("none");
|
||||||
expect(document.activeElement).toBe(readTab());
|
expect(document.activeElement).toBe(readTab());
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user