@kolkrabbi/kol-component 0.122.0 → 0.123.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-component",
3
- "version": "0.122.0",
3
+ "version": "0.123.0",
4
4
  "description": "KOL design-system components — atoms through organisms, emitting canonical kol-* classes. Pairs with @kolkrabbi/kol-theme for styling.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -148,6 +148,13 @@ const Dropdown = ({
148
148
  return (
149
149
  <MenuDropdownItem
150
150
  key={option.value}
151
+ /* NO HOVER STATE ANYWHERE ON A DROPDOWN (user 2026-08-28,
152
+ * "delete any hover state on dropdowns"): the trigger was
153
+ * already pinned in all three variants — primary and outline
154
+ * back to rest in kol-theme, grey carrying no hover rule at
155
+ * all — and this was the last one left, the option row's ink
156
+ * brighten. The check mark is what marks the current value. */
157
+ hover={false}
151
158
  onClick={() => handleSelect(option)}
152
159
  shortcut={isActive ? <Icon name="check" size={11} /> : undefined}
153
160
  >
@@ -78,6 +78,11 @@ export function MenuItem({
78
78
 
79
79
  /**
80
80
  * MenuDropdownItem — action row inside a MenuItem's dropdown panel.
81
+ *
82
+ * `hover` (default true) — `false` drops the ink brighten, for a panel ruled
83
+ * to carry NO hover state at all (user 2026-08-28, on `Dropdown`: "delete any
84
+ * hover state on dropdowns"). Scoped to the caller: a MenuItem's own menu keeps
85
+ * its hover, because that ruling was about the select, not every panel.
81
86
  * Renders as a button so it picks up disabled, focus, and keyboard
82
87
  * activation. The parent MenuItem closes automatically on click via a
83
88
  * delegated handler that matches the `data-menu-item` attr.
@@ -89,7 +94,7 @@ export function MenuItem({
89
94
  * - children — main label, flex-1.
90
95
  * - shortcut — trailing content (text shortcut hint, ✓ marker, or icon).
91
96
  */
92
- export function MenuDropdownItem({ onClick, disabled, prefix, iconLeft, shortcut, children }) {
97
+ export function MenuDropdownItem({ onClick, disabled, prefix, iconLeft, shortcut, hover = true, children }) {
93
98
  return (
94
99
  <button
95
100
  type="button"
@@ -97,7 +102,7 @@ export function MenuDropdownItem({ onClick, disabled, prefix, iconLeft, shortcut
97
102
  onClick={onClick}
98
103
  disabled={disabled}
99
104
  role="menuitem"
100
- className="w-full kol-helper-12 px-3 h-8 shrink-0 inline-flex items-center gap-2 text-body hover:text-emphasis disabled:opacity-40 disabled:cursor-not-allowed text-left"
105
+ className={`w-full kol-helper-12 px-3 h-8 shrink-0 inline-flex items-center gap-2 text-body ${hover ? 'hover:text-emphasis' : ''} disabled:opacity-40 disabled:cursor-not-allowed text-left`}
101
106
  >
102
107
  {prefix && <span className="shrink-0 inline-flex items-center">{prefix}</span>}
103
108
  {iconLeft && <span className="shrink-0 w-4 inline-flex items-center justify-center">{iconLeft}</span>}