fix(ui): render drawer close glyph and tighten mobile heading
This commit is contained in:
1 parent
b1db287f2a
commit
6dea64b84c
4 files changed
+27
-4
No files matched your search
@@ -688,7 +688,7 @@
|
|||||||
},
|
},
|
||||||
"packages/ui": {
|
"packages/ui": {
|
||||||
"name": "@wrnexus/ui",
|
"name": "@wrnexus/ui",
|
||||||
"version": "0.8.65",
|
"version": "0.8.66",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/core": "workspace:*",
|
"@wrnexus/core": "workspace:*",
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -150,7 +150,7 @@ open: boolean = false
|
|||||||
aria-label='{closeLabel}'
|
aria-label='{closeLabel}'
|
||||||
@click='hideDrawer("close-button", event)'
|
@click='hideDrawer("close-button", event)'
|
||||||
>
|
>
|
||||||
<span class="icon-[lucide--x]" aria-hidden="true"></span>
|
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" aria-hidden="true" focusable="false"><path d="M6 6l12 12M18 6 6 18" /></svg>
|
||||||
</button>
|
</button>
|
||||||
{/if}
|
{/if}
|
||||||
</header>
|
</header>
|
||||||
@@ -397,7 +397,7 @@ open: boolean = false
|
|||||||
|
|
||||||
.wrn-drawer__header {
|
.wrn-drawer__header {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: flex-start;
|
align-items: center;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
gap: 1rem;
|
gap: 1rem;
|
||||||
padding: 1.35rem 1.35rem 1.1rem;
|
padding: 1.35rem 1.35rem 1.1rem;
|
||||||
@@ -519,6 +519,12 @@ open: boolean = false
|
|||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (max-width: 767px) {
|
||||||
|
.wrn-drawer__header {
|
||||||
|
padding-block: 0.75rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width: 639px) {
|
@media (max-width: 639px) {
|
||||||
.wrn-drawer[data-placement="right"] .wrn-drawer__panel,
|
.wrn-drawer[data-placement="right"] .wrn-drawer__panel,
|
||||||
.wrn-drawer[data-placement="left"] .wrn-drawer__panel {
|
.wrn-drawer[data-placement="left"] .wrn-drawer__panel {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/ui",
|
"name": "@wrnexus/ui",
|
||||||
"version": "0.8.65",
|
"version": "0.8.66",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
|||||||
@@ -8,6 +8,23 @@ import { Window } from "happy-dom";
|
|||||||
const source = (name: string) => readFileSync(uiComponentPath(name), "utf8");
|
const source = (name: string) => readFileSync(uiComponentPath(name), "utf8");
|
||||||
|
|
||||||
describe("account shell UI regressions", () => {
|
describe("account shell UI regressions", () => {
|
||||||
|
test("Drawer has a self-contained close icon and a compact centered mobile header", async () => {
|
||||||
|
const dom = mountHtml(
|
||||||
|
await renderComponent(source("Drawer"), { title: "Account center", open: true, duration: 0 }),
|
||||||
|
);
|
||||||
|
const close = dom.querySelector(".wrn-drawer__close") as HTMLButtonElement;
|
||||||
|
expect(close.getAttribute("aria-label")).toBe("Close drawer");
|
||||||
|
expect(close.querySelector('svg[aria-hidden="true"] path')).not.toBeNull();
|
||||||
|
expect(close.querySelector('[class*="icon-"]')).toBeNull();
|
||||||
|
expect(source("Drawer")).toMatch(/\.wrn-drawer__header\s*\{[^}]*align-items: center;/);
|
||||||
|
expect(source("Drawer")).toContain("padding-block: 0.75rem;");
|
||||||
|
let closed = false;
|
||||||
|
dom.querySelector('[data-ui-component="Drawer"]')?.addEventListener("wrnexus:close", () => {
|
||||||
|
closed = true;
|
||||||
|
});
|
||||||
|
close.click();
|
||||||
|
expect(closed).toBe(true);
|
||||||
|
});
|
||||||
test("Dropdown allows anchored mobile menus without changing existing sheet defaults", async () => {
|
test("Dropdown allows anchored mobile menus without changing existing sheet defaults", async () => {
|
||||||
for (const mobilePanel of [undefined, "dropdown", "sheet"]) {
|
for (const mobilePanel of [undefined, "dropdown", "sheet"]) {
|
||||||
const dom = mountHtml(
|
const dom = mountHtml(
|
||||||
|
|||||||
Reference in new issue
Block a user