wabi 0.21.2 → 0.22.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +51 -0
- data/README.md +1 -1
- data/lib/wabi/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: aa63829705ff18ed6da1a4660d01d2792512970909a398e0f6149349edf653d7
|
|
4
|
+
data.tar.gz: 78fff47da0345750763544c33826377e50cdbbe3029cc4ffbb8221d6cae54448
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0173a3c1b910b76c02c3d12c9f9d2d1b72fc1f82df3e24d1758dfa07509660eee1a50b65c10e7ff6079e914c16e7f8bb37375cd73fc64f308b4b52eba28e4fd5
|
|
7
|
+
data.tar.gz: 9f0cbb4aeb4f0e79fff40c07dbe8cc2816a03a01ff6191d25c64ced171aa2fb7a5f5174d3b46fd0538cef1653636c3c86601ddd20f5f61df67af9f60868ddcda
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,57 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to Wabi land here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); versions follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
4
4
|
|
|
5
|
+
## 0.22.0 - 2026-06-05
|
|
6
|
+
|
|
7
|
+
Four new components (36 → 40), all backed by Zag.js 1.41 via `@zag-js/vanilla`.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- **Date Picker + Calendar** (`date_picker`, `@zag-js/date-picker`). A localized date
|
|
12
|
+
field (input + popover calendar) and a standalone inline `Calendar`. Single and range
|
|
13
|
+
selection; the day grid is built from the machine at runtime; submits ISO `YYYY-MM-DD`
|
|
14
|
+
via hidden inputs (single → `name`; range → `name[start]` + `name[end]`). The range
|
|
15
|
+
shows a connecting band between the start/end days (plus a hover preview). The field
|
|
16
|
+
input has an accessible name (`aria-label`, default "Choose date", overridable).
|
|
17
|
+
- **Input OTP** (`input_otp`, `@zag-js/pin-input`). One-time-code / PIN input — N
|
|
18
|
+
single-character slots (default 6) that submit a single concatenated hidden value.
|
|
19
|
+
`length`, `type` (`:numeric` / `:alphanumeric`), `mask`, and `otp`
|
|
20
|
+
(`autocomplete="one-time-code"`) are configurable.
|
|
21
|
+
- **File Upload** (`file_upload`, `@zag-js/file-upload`). Drag-and-drop dropzone + browse
|
|
22
|
+
button + a file list (name, size, remove, image thumbnail) rendered from the accepted
|
|
23
|
+
files. Backed by a real `<input type="file">` so a standard Rails multipart submit posts
|
|
24
|
+
the files; `name` gains `[]` and `multiple` when `max_files > 1`. `accept` / `max_size`
|
|
25
|
+
constraints supported.
|
|
26
|
+
- **Context Menu** (`context_menu`, `@zag-js/menu`). Right-click menu opening at the
|
|
27
|
+
cursor, with full DropdownMenu parity — items, label, separator, shortcut, checkbox and
|
|
28
|
+
radio items, and N-level submenus.
|
|
29
|
+
|
|
30
|
+
### Deferred
|
|
31
|
+
|
|
32
|
+
- Date Picker: multi-month side-by-side view (range still spans months via prev/next).
|
|
33
|
+
- Input OTP: groups + separator (e.g. 3-3).
|
|
34
|
+
- File Upload: ActiveStorage direct-upload, chunked/resumable uploads, progress bars.
|
|
35
|
+
|
|
36
|
+
## 0.21.3 - 2026-06-05
|
|
37
|
+
|
|
38
|
+
### Accessibility
|
|
39
|
+
|
|
40
|
+
- **`SidebarTrigger` now announces state.** It registers as a `wabi--sidebar`
|
|
41
|
+
controller target, and the controller reflects `aria-expanded` (expanded vs.
|
|
42
|
+
collapsed on desktop, off-canvas open vs. closed on mobile) and points
|
|
43
|
+
`aria-controls` at the sidebar panel (which is given a stable id).
|
|
44
|
+
- **Mobile panel is a proper modal.** When the sidebar opens off-canvas on mobile
|
|
45
|
+
it becomes `role="dialog"` with `aria-modal="true"` (cleared on close); the panel
|
|
46
|
+
also carries a default `aria-label` ("Sidebar"), overridable via `aria-label:`.
|
|
47
|
+
- **`⌘/Ctrl+B` is scoped.** The toggle shortcut is now ignored while focus is in an
|
|
48
|
+
`input`, `textarea`, `select`, or `contenteditable` element, so it no longer
|
|
49
|
+
collides with editors' bold shortcut.
|
|
50
|
+
|
|
51
|
+
### Changed
|
|
52
|
+
|
|
53
|
+
- **Docs:** the sidebar page now shows the shell variants (floating / inset)
|
|
54
|
+
directly under the main example, matching the other component pages.
|
|
55
|
+
|
|
5
56
|
## 0.21.2 - 2026-06-04
|
|
6
57
|
|
|
7
58
|
### Added
|
data/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Wabi is an open-source UI component library for **Ruby on Rails 8**, built on **Phlex + Tailwind 4 + Stimulus + Hotwire**. Inspired by shadcn/ui, components are *copied* into your app — you own the code, customize freely, no upstream API to drift away from.
|
|
6
6
|
|
|
7
|
-
🎉 **Status:** v0.
|
|
7
|
+
🎉 **Status:** v0.22.0 alpha — [available on RubyGems](https://rubygems.org/gems/wabi). 40 components, 8 theme palettes, WCAG-AA targeted, live docs + registry at [wabi-docs.onrender.com](https://wabi-docs.onrender.com).
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
data/lib/wabi/version.rb
CHANGED