@vaneui/ui 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +99 -0
- package/package.json +3 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to `@vaneui/ui` are recorded here.
|
|
4
|
+
|
|
5
|
+
The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the
|
|
6
|
+
package follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## Unreleased
|
|
9
|
+
|
|
10
|
+
## 1.0.2 - 2026-08-17
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- `CHANGELOG.md` now ships inside the published package. It is the single source of
|
|
15
|
+
truth for release notes, and vaneui.com/changelog renders it directly from the
|
|
16
|
+
installed package rather than keeping a second copy.
|
|
17
|
+
|
|
18
|
+
## 1.0.1 - 2026-08-17
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
- Added the missing `./table` subpath export. `import { Table } from "@vaneui/ui/table"`
|
|
23
|
+
threw `ERR_PACKAGE_PATH_NOT_EXPORTED` even though the built chunks shipped, because
|
|
24
|
+
`table` was the only component directory absent from the `exports` map. The
|
|
25
|
+
main-barrel import was never affected.
|
|
26
|
+
|
|
27
|
+
## 1.0.0 - 2026-08-16
|
|
28
|
+
|
|
29
|
+
First stable release. The `latest` dist-tag previously pointed at `0.2.0` while all
|
|
30
|
+
development shipped under the `alpha` tag, so this is the first time the current
|
|
31
|
+
architecture is installable with a plain `npm install @vaneui/ui`.
|
|
32
|
+
|
|
33
|
+
`1.0.0` marks the public API as stable: 55 exported components across layout,
|
|
34
|
+
typography, controls, and overlays, driven by the boolean props API and themed
|
|
35
|
+
through `ThemeProvider`.
|
|
36
|
+
|
|
37
|
+
### Added
|
|
38
|
+
|
|
39
|
+
- **Table family.** `Table`, `Thead`, `Tbody`, `Tfoot`, `Tr`, `Th`, `Td`, `Caption`,
|
|
40
|
+
with the size prop cascading from any container element down to the cells.
|
|
41
|
+
- **Dark mode** through the `data-theme="dark"` token contract. No component code
|
|
42
|
+
changes are required, and consumers can declare their own themes by re-declaring
|
|
43
|
+
the same tokens under any selector.
|
|
44
|
+
- **RTL support.** Logical CSS utilities behind the existing props, plus `textStart`
|
|
45
|
+
and `textEnd` alongside the physical `textLeft` and `textRight`.
|
|
46
|
+
- **Nested submenus** on `Menu`, with the full keyboard model including typeahead,
|
|
47
|
+
`Home`, `End`, and arrow-key traversal.
|
|
48
|
+
- **Icon container mode.** `Icon` gained opt-in padding, shape, border, and ring, and
|
|
49
|
+
its glyph size decoupled from the font-size variable.
|
|
50
|
+
- **List markers and spacing.** `circle`, `square`, `lowerAlpha`, `lowerRoman`,
|
|
51
|
+
inside/outside positioning, per-item gap control, automatic marker progression on
|
|
52
|
+
nested lists, and a `ListItem` `icon` prop for custom markers.
|
|
53
|
+
- **Size-driven margin props** on layout components and block typography, on the same
|
|
54
|
+
scale as gap and padding.
|
|
55
|
+
- **Per-side border widths** and logical `borderS` / `borderE` props.
|
|
56
|
+
- **`alignSelf` and `justifySelf` props**, with `Popup` edge alignment driven through
|
|
57
|
+
them.
|
|
58
|
+
- **Granular inherit props** (`inheritSize`, `inheritColor`, `inheritBg`,
|
|
59
|
+
`inheritBorder`) alongside `inheritAppearance`.
|
|
60
|
+
- **`wordBreak` category**, and `whitespace` extended to typography components.
|
|
61
|
+
- **`href` support on `Row`, `Col`, and `Stack`**, with a conditional focus ring.
|
|
62
|
+
|
|
63
|
+
### Changed
|
|
64
|
+
|
|
65
|
+
- **Breaking: prop renames.** Multi-value prop categories now follow one rule, the
|
|
66
|
+
prop name mirrors its Tailwind class and keeps the CSS-property prefix. `light`
|
|
67
|
+
became `fontLight`, `inside` became `listInside`, and so on. See
|
|
68
|
+
`.claude/rules/naming-law.md` for the full rule and the two-bucket classification.
|
|
69
|
+
- **Breaking: `brand` and `link` appearance values were removed.** `Link` renders its
|
|
70
|
+
link color by default without an appearance value.
|
|
71
|
+
- **Breaking: list position props** now default to `outside`.
|
|
72
|
+
- Gaps and padding scale on a shared accelerating curve, and the icon-to-label gap is
|
|
73
|
+
role-aware so controls and compact pills space differently at the same size.
|
|
74
|
+
- `Button` and `IconButton` share a control height.
|
|
75
|
+
- `Badge` no longer sets `uppercase` by default.
|
|
76
|
+
- `Label` defaults to a stacked column layout, which suits forms.
|
|
77
|
+
- `Modal` always offers a close button, floating it when there is no title.
|
|
78
|
+
|
|
79
|
+
### Fixed
|
|
80
|
+
|
|
81
|
+
- Popups and menus opened inside a `Modal` now render above the backdrop, and
|
|
82
|
+
<kbd>Escape</kbd> closes the innermost overlay rather than the whole modal.
|
|
83
|
+
- `Popup` gained a maximum width and an inner scroll box, so wide or tall content no
|
|
84
|
+
longer runs off-screen on small viewports.
|
|
85
|
+
- Popup arrow alignment for the `*Start` and `*End` placements, and a spurious
|
|
86
|
+
vertical flip in the JavaScript positioning fallback.
|
|
87
|
+
- Responsive breakpoints are exclusive (`width <` the boundary), and combining several
|
|
88
|
+
`*Stack` or `*Hide` props resolves to the widest.
|
|
89
|
+
- `Modal` no longer strands focus on `<body>` when the trigger unmounts.
|
|
90
|
+
- Error state is announced, not just colored: `invalid` emits `aria-invalid` and a
|
|
91
|
+
`data-status` attribute, and `Input` renders a non-color alert icon.
|
|
92
|
+
- Keyboard focus rings on `NavLink`, `MenuItem`, `Link`, `Card`, and `Chip`.
|
|
93
|
+
|
|
94
|
+
### Accessibility
|
|
95
|
+
|
|
96
|
+
- `Modal` wires `aria-labelledby` and `aria-describedby` from `ModalHeader` and
|
|
97
|
+
`ModalBody` automatically, and traps focus.
|
|
98
|
+
- `Input` gained a muted read-only treatment with `aria-readonly`.
|
|
99
|
+
- `Blockquote` gained a `cite` prop for source attribution.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vaneui/ui",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "A simple and lightweight UI component library for React, built with Tailwind CSS.",
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,7 +27,8 @@
|
|
|
27
27
|
"**/*.css"
|
|
28
28
|
],
|
|
29
29
|
"files": [
|
|
30
|
-
"dist"
|
|
30
|
+
"dist",
|
|
31
|
+
"CHANGELOG.md"
|
|
31
32
|
],
|
|
32
33
|
"exports": {
|
|
33
34
|
".": {
|