wabi 0.18.0 → 0.19.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2992f3b45a6bfd70ff6a485e22bc4956fbee2f40bf0a55ec267e799f2d44aba4
4
- data.tar.gz: ade7d69e4c01fe3558a142fc7f7b1e95367cedcece5763180672e2e53e9b4e5d
3
+ metadata.gz: 6aef01aa58d7bbeec405a5fe78738d296ca768feadba9a7324f882508db7523a
4
+ data.tar.gz: 861c25b6e38a6e0af1a72e2f3549c0500585cf8885f61351dfd6c7a6d8cc08f7
5
5
  SHA512:
6
- metadata.gz: f7835b455ad8eed29127998cd522751bc3a229061aebeb36d2e3068b4858e715c78d527391dc046e1beafd1e42a69e47e2087319ab19cd5d3194c3fd7b509a24
7
- data.tar.gz: 61d5bb3eac3d92faf7c3a5af818d3ebc191c5092aa9bf1c1032c60916280d69cfe9f4ec5c2e97bd2d5ec3fe581b0d745a1ef78be524990e8dcb5d5d58de734e0
6
+ metadata.gz: eadd26f25642aef2d0ebb1c931fc89fcb1a3a2fe17bff0365c3d4125c590b608bbd25e0ee69abdd9e589f533abcfec9599cddb05604515e40a39cd0a7d8737ae
7
+ data.tar.gz: ab2c3531a780efe9321348bcdd615234ed8981ee17e1c90d01dbe803ad9ca39f00355f044993c8e1dfacc907eab548d8ea0601ba7324ffadc24c7d6a697cc924
data/CHANGELOG.md CHANGED
@@ -2,6 +2,46 @@
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.19.1 - 2026-06-03
6
+
7
+ ### Fixed
8
+
9
+ - **Sidebar collapsed-only tooltips showed when expanded too.** The menu-button
10
+ tooltip's content portals to `<body>` (Zag default), which escaped the
11
+ `group/sidebar` scope, so the `group-data-[state=expanded]/sidebar:hidden` gate
12
+ never matched and the label tooltip appeared even when the rail was expanded
13
+ (redundant with the visible label). The `wabi--sidebar` controller now mirrors
14
+ collapse state to `<html data-wabi-sidebar="…">` (same idiom as the theme
15
+ controller's `data-mode`), and the tooltip content gates on that marker — which
16
+ reaches the portaled content. Tooltips now appear only when collapsed.
17
+
18
+ ## 0.19.0 - 2026-06-03
19
+
20
+ Sidebar v2 — a richer, themeable Sidebar. No breaking changes (existing v1
21
+ sidebars keep working and pick up the new surface tokens).
22
+
23
+ ### Added
24
+
25
+ - **Dedicated `--sidebar*` color tokens** (full shadcn-style palette: `--sidebar`,
26
+ `--sidebar-foreground`, `--sidebar-primary(-foreground)`, `--sidebar-accent(-foreground)`,
27
+ `--sidebar-border`, `--sidebar-ring`) across all 8 themes (light + dark). The
28
+ sidebar now reads as its own surface; the tokens are exposed as `bg-sidebar`,
29
+ `text-sidebar-foreground`, `bg-sidebar-accent`, `border-sidebar-border`,
30
+ `ring-sidebar-ring`, etc., and are independently re-themeable.
31
+ - **⌘/Ctrl+B** toggles the sidebar (collapse on desktop, open/close on mobile).
32
+ - **Nested submenus** — `SidebarMenuCollapsible` (native `<details>`, no JS) with
33
+ `SidebarMenuSub`/`SidebarMenuSubItem`/`SidebarMenuSubButton`. Expand inline when
34
+ the rail is expanded; hidden in collapsed (icon) mode. The chevron rotates on open.
35
+ - **`SidebarMenuBadge`** — a trailing count badge (hidden in icon mode).
36
+ - **`SidebarMenuAction`** — a secondary per-item button revealed on hover/focus
37
+ (hidden in icon mode).
38
+
39
+ ### Changed
40
+
41
+ - `Sidebar`, `SidebarMenuButton`, and `SidebarTrigger` recolored to the new
42
+ `--sidebar*` surface tokens (active/hover use `--sidebar-accent`); `SidebarMenuItem`
43
+ is now a `group/menu-item` hover context for badges/actions.
44
+
5
45
  ## 0.18.0 - 2026-06-03
6
46
 
7
47
  Adds the **Sidebar** component (#36).
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.18.0 alpha — [available on RubyGems](https://rubygems.org/gems/wabi). 36 components, 8 theme palettes, WCAG-AA targeted, live docs + registry at [wabi-docs.onrender.com](https://wabi-docs.onrender.com).
7
+ 🎉 **Status:** v0.19.1 alpha — [available on RubyGems](https://rubygems.org/gems/wabi). 36 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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Wabi
4
- VERSION = "0.18.0"
4
+ VERSION = "0.19.1"
5
5
  end
data/templates/tokens.css CHANGED
@@ -33,6 +33,24 @@
33
33
  }
34
34
  }
35
35
 
36
+ /* Sidebar surface tokens (full shadcn-style palette). Seven mirror the active
37
+ * theme's base tokens via var() so they stay correct per-theme and per-mode;
38
+ * --sidebar is a tuned neutral chrome surface, distinct from both the page
39
+ * background and the accent (so the active/hover --sidebar-accent stays visible). */
40
+ :root, [data-theme] {
41
+ --sidebar: 0 0% 98%;
42
+ --sidebar-foreground: var(--foreground);
43
+ --sidebar-primary: var(--primary);
44
+ --sidebar-primary-foreground: var(--primary-foreground);
45
+ --sidebar-accent: var(--accent);
46
+ --sidebar-accent-foreground: var(--accent-foreground);
47
+ --sidebar-border: var(--border);
48
+ --sidebar-ring: var(--ring);
49
+ }
50
+ [data-mode="dark"] {
51
+ --sidebar: 240 5.9% 10%;
52
+ }
53
+
36
54
  @theme inline {
37
55
  --color-background: hsl(var(--background));
38
56
  --color-foreground: hsl(var(--foreground));
@@ -53,6 +71,14 @@
53
71
  --color-border: hsl(var(--border));
54
72
  --color-input: hsl(var(--input));
55
73
  --color-ring: hsl(var(--ring));
74
+ --color-sidebar: hsl(var(--sidebar));
75
+ --color-sidebar-foreground: hsl(var(--sidebar-foreground));
76
+ --color-sidebar-primary: hsl(var(--sidebar-primary));
77
+ --color-sidebar-primary-foreground: hsl(var(--sidebar-primary-foreground));
78
+ --color-sidebar-accent: hsl(var(--sidebar-accent));
79
+ --color-sidebar-accent-foreground: hsl(var(--sidebar-accent-foreground));
80
+ --color-sidebar-border: hsl(var(--sidebar-border));
81
+ --color-sidebar-ring: hsl(var(--sidebar-ring));
56
82
  --radius-lg: var(--radius);
57
83
  --radius-md: calc(var(--radius) - 2px);
58
84
  --radius-sm: calc(var(--radius) - 4px);
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wabi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.0
4
+ version: 0.19.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oscar Ortega