Skip to content

Commit 9d51679

Browse files
Merge pull request #144 from jeffreylauwers/fix/input-button-height
docs: Menu component en token fix documenteren (v5.19.0 + v5.19.1)
2 parents ac4ea57 + bebba2b commit 9d51679

3 files changed

Lines changed: 113 additions & 3 deletions

File tree

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ pnpm --filter @dsn/design-tokens watch
6565
# Start Storybook in development mode
6666
pnpm dev
6767

68-
# Run tests (1225 tests across 60 test suites)
68+
# Run tests (1234 tests across 61 test suites)
6969
pnpm test
7070

7171
# Run tests in watch mode
@@ -201,11 +201,12 @@ All components are fully typed with TypeScript and include comprehensive JSDoc d
201201
| **StatusBadge** | Yes | Yes ||
202202
| **Table** | Yes | Yes ||
203203

204-
**Navigation Components (3)**
204+
**Navigation Components (4)**
205205

206206
| Component | HTML/CSS | React | Web Component |
207207
| ------------------------ | -------- | ----- | ------------- |
208208
| **BreadcrumbNavigation** | Yes | Yes ||
209+
| **Menu** | Yes | Yes ||
209210
| **MenuButton** | Yes | Yes ||
210211
| **MenuLink** | Yes | Yes ||
211212

docs/03-components.md

Lines changed: 75 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1587,7 +1587,81 @@ const [isOpen, setIsOpen] = React.useState(false);
15871587

15881588
## Navigation Components
15891589

1590-
**Status:** Complete (HTML/CSS, React) — 3 components total
1590+
**Status:** Complete (HTML/CSS, React) — 4 components total
1591+
1592+
### Menu
1593+
1594+
**Status:** Complete (HTML/CSS, React)
1595+
1596+
**Location:** `packages/components-{html|react}/src/Menu/`
1597+
1598+
**Tokens:** `tokens/components/menu.json`
1599+
1600+
**Props:** `orientation` (`'vertical'` | `'horizontal'`), `children`, `className` + alle native `<ul>` attributen
1601+
1602+
**Features:**
1603+
1604+
- Containercomponent voor `MenuLink`- en `MenuButton`-items — rendert een `<ul>` met `list-style: none`
1605+
- `orientation="vertical"` (standaard): `flex-direction: column`, items op volledige breedte
1606+
- `orientation="horizontal"`: `flex-direction: row`, items naast elkaar op inhoudsbreedte
1607+
- Horizontale current-staat gebruikt `border-block-end` (i.p.v. `border-inline-start`) — context-override via `.dsn-menu--horizontal` in `menu-link.css`
1608+
- De `<nav>`-wrapper is de verantwoordelijkheid van de ouder
1609+
1610+
**CSS-klassen:**
1611+
1612+
| Klasse | Element | Beschrijving |
1613+
| ---------------------- | ------- | ------------------------------------------ |
1614+
| `dsn-menu` | `<ul>` | Basiscomponent — altijd aanwezig |
1615+
| `dsn-menu--horizontal` | `<ul>` | Horizontale oriëntatie: items naast elkaar |
1616+
1617+
**Design tokens:**
1618+
1619+
| Token | Waarde | Beschrijving |
1620+
| --------------------------- | ----------------------------- | --------------------------------------------- |
1621+
| `--dsn-menu-gap-vertical` | `{dsn.space.block.xs}` (2px) | Ruimte tussen items in verticale oriëntatie |
1622+
| `--dsn-menu-gap-horizontal` | `{dsn.space.inline.sm}` (4px) | Ruimte tussen items in horizontale oriëntatie |
1623+
1624+
**Usage:**
1625+
1626+
```html
1627+
<!-- HTML/CSS — verticaal (standaard) -->
1628+
<nav aria-label="Hoofdnavigatie">
1629+
<ul class="dsn-menu">
1630+
<li class="dsn-menu-link">...</li>
1631+
<li class="dsn-menu-button">...</li>
1632+
</ul>
1633+
</nav>
1634+
1635+
<!-- HTML/CSS — horizontaal -->
1636+
<nav aria-label="Paginanavigatie">
1637+
<ul class="dsn-menu dsn-menu--horizontal">
1638+
<li class="dsn-menu-link">...</li>
1639+
<li class="dsn-menu-link">...</li>
1640+
</ul>
1641+
</nav>
1642+
```
1643+
1644+
```tsx
1645+
// React — verticaal (standaard)
1646+
<nav aria-label="Hoofdnavigatie">
1647+
<Menu>
1648+
<MenuLink href="/home">Home</MenuLink>
1649+
<MenuButton onClick={handleLogout}>Uitloggen</MenuButton>
1650+
</Menu>
1651+
</nav>
1652+
1653+
// React — horizontaal
1654+
<nav aria-label="Paginanavigatie">
1655+
<Menu orientation="horizontal">
1656+
<MenuLink href="/home" current>Home</MenuLink>
1657+
<MenuLink href="/over">Over ons</MenuLink>
1658+
</Menu>
1659+
</nav>
1660+
```
1661+
1662+
**Tests:** React (9 tests)
1663+
1664+
---
15911665

15921666
### BreadcrumbNavigation
15931667

docs/changelog.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,41 @@ All notable changes to this project are documented in this file.
2323

2424
---
2525

26+
## Version 5.19.1 (April 6, 2026)
27+
28+
### Fix: gelijke hoogte voor input fields en buttons (issue #141, PR #143)
29+
30+
#### Fixed
31+
32+
- `dsn.form-control.padding-block-start/end` verlaagd van `{dsn.space.block.lg}` (12px) naar `{dsn.space.block.md}` (8px) — `min-block-size` (48px) bepaalt nu de hoogte van alle form controls, gelijk aan de button
33+
- Cascadeert automatisch naar **TextInput**, **TextArea**, **Select**, **SearchInput**, **DateInput** en **TimeInput**
34+
- Tijdelijke token-override in `page-header.css` (`.dsn-page-header__search-inner .dsn-text-input`) verwijderd
35+
36+
#### Changed
37+
38+
- `dsn.date-input.button-inset-inline-end` en `dsn.time-input.button-inset-inline-end`: van `{dsn.space.inline.md}` (8px) naar `{dsn.space.inline.sm}` (4px) — icoonknop staat compacter tegen de border
39+
40+
---
41+
42+
## Version 5.19.0 (April 4, 2026)
43+
44+
### Menu component (issue #129, PR #136)
45+
46+
#### Added
47+
48+
- **Menu** component — containercomponent voor `MenuLink`- en `MenuButton`-items
49+
- Rendert een `<ul>` met `list-style: none`; verantwoordelijkheid voor de `<nav>`-wrapper ligt bij de ouder
50+
- `orientation` prop: `vertical` (standaard, `flex-direction: column`) of `horizontal` (`flex-direction: row`)
51+
- Horizontale current-indicator via `border-block-end` (i.p.v. `border-inline-start` in verticale oriëntatie) — context-override in `menu-link.css`
52+
- 2 design tokens: `dsn.menu.gap.vertical` (`{dsn.space.block.xs}`, 2px) en `dsn.menu.gap.horizontal` (`{dsn.space.inline.sm}`, 4px)
53+
- 9 React tests
54+
55+
#### Changed
56+
57+
- `dsn.menu-item.min-block-size``{dsn.pointer-target.min-block-size}` (48px) — MenuLink en MenuButton voldoen nu altijd aan WCAG touch target
58+
59+
---
60+
2661
## Version 5.18.0 (April 4, 2026)
2762

2863
### MenuButton component + gedeelde menu-item tokens

0 commit comments

Comments
 (0)