@justanarthur/modo-ui 0.6.0-canary.3 → 0.6.0-canary.4

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.
@@ -424,6 +424,10 @@ function DropdownSub({ children, open, defaultOpen = false, onOpenChange, disabl
424
424
  open={current}
425
425
  disabled={disabled}
426
426
  onOpenChange={(next, details) => {
427
+ // Base UI re-reports a sub that is already closed as closed (reason `sibling-open`,
428
+ // once per sibling that opens). The caller hears changes only, as it did through
429
+ // useControllableState's no-op skip: a handler shared with the root must not see them.
430
+ if (next === current) return
427
431
  onOpenChange?.(next, details)
428
432
  if (details.isCanceled) return
429
433
  if (next) capture(details)
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SidebarApp2
3
- } from "../../shared/components-e5jyw7g9.js";
3
+ } from "../../shared/components-58rjf115.js";
4
4
  import"../../shared/components-cfn30fa8.js";
5
5
  import"../../shared/components-kswxnm3h.js";
6
6
  import"../../shared/components-rrbpmfx4.js";
@@ -8,7 +8,7 @@ import"../../shared/components-f1f0qvxg.js";
8
8
  import"../../shared/components-6zng858q.js";
9
9
  import"../../shared/components-124epb7f.js";
10
10
  import"../../shared/components-z3v0n0de.js";
11
- import"../../shared/components-avrrksxk.js";
11
+ import"../../shared/components-tknms5b7.js";
12
12
  import"../../shared/components-8tt3xbb5.js";
13
13
  import"../../shared/components-tz4gaf1v.js";
14
14
  import"../../shared/components-8nwsqjn8.js";
@@ -3,8 +3,8 @@ import {
3
3
  ContextMenuContent2,
4
4
  ContextMenu2,
5
5
  context_menu_default
6
- } from "../../../shared/components-6mwvgrq9.js";
7
- import"../../../shared/components-avrrksxk.js";
6
+ } from "../../../shared/components-waz4pq58.js";
7
+ import"../../../shared/components-tknms5b7.js";
8
8
  import"../../../shared/components-8tt3xbb5.js";
9
9
  import"../../../shared/components-tz4gaf1v.js";
10
10
  import"../../../shared/components-8nwsqjn8.js";
@@ -19,7 +19,7 @@ import {
19
19
  DropdownLabel2,
20
20
  DropdownSeparator2,
21
21
  dropdown_default
22
- } from "../../../shared/components-avrrksxk.js";
22
+ } from "../../../shared/components-tknms5b7.js";
23
23
  import"../../../shared/components-8tt3xbb5.js";
24
24
  import"../../../shared/components-tz4gaf1v.js";
25
25
  import"../../../shared/components-8nwsqjn8.js";
package/dist/index.js CHANGED
@@ -157,11 +157,11 @@ import {
157
157
  DropdownContent2,
158
158
  DropdownLabel2,
159
159
  DropdownSeparator2
160
- } from "./shared/components-avrrksxk.js";
160
+ } from "./shared/components-tknms5b7.js";
161
161
  import"./shared/components-tz4gaf1v.js";
162
162
  import {
163
163
  SidebarApp2
164
- } from "./shared/components-e5jyw7g9.js";
164
+ } from "./shared/components-58rjf115.js";
165
165
  import {
166
166
  FileThumbnail2,
167
167
  InputMessage2
@@ -364,7 +364,7 @@ import {
364
364
  ContextMenuItem2,
365
365
  ContextMenuContent2,
366
366
  ContextMenu2
367
- } from "./shared/components-6mwvgrq9.js";
367
+ } from "./shared/components-waz4pq58.js";
368
368
  import {
369
369
  PopoverTrigger2,
370
370
  PopoverClose2,
@@ -30,7 +30,7 @@ import {
30
30
  DropdownMenu2,
31
31
  DropdownTrigger2,
32
32
  DropdownContent2
33
- } from "./components-avrrksxk.js";
33
+ } from "./components-tknms5b7.js";
34
34
 
35
35
  // blocks/sidebar-app/index.tsx
36
36
  import { useState } from "react";
@@ -764,6 +764,8 @@ function DropdownSub2({ children, open, defaultOpen = false, onOpenChange, disab
764
764
  open: current,
765
765
  disabled,
766
766
  onOpenChange: (next, details) => {
767
+ if (next === current)
768
+ return;
767
769
  onOpenChange?.(next, details);
768
770
  if (details.isCanceled)
769
771
  return;
@@ -48,7 +48,7 @@ import {
48
48
  MenuItem2,
49
49
  DropdownLabel2,
50
50
  DropdownSeparator2
51
- } from "./components-avrrksxk.js";
51
+ } from "./components-tknms5b7.js";
52
52
 
53
53
  // components/overlays/context-menu/index.tsx
54
54
  import { ContextMenu as ContextMenuPrimitive } from "@base-ui/react/context-menu";
package/dist/styles.css CHANGED
@@ -60,7 +60,7 @@
60
60
  }
61
61
  /* layer: theme */
62
62
  @layer theme{
63
- :root, :host { --spacing: 0.25rem; --default-transition-timingFunction: cubic-bezier(0.4, 0, 0.2, 1); --default-transition-duration: 150ms; --leading-snug: 1.375; --leading-normal: 1.5; --radius-xs: 0.125rem; --tracking-wide: 0.025em; --leading-relaxed: 1.625; --leading-tight: 1.25; --radius-DEFAULT: 0.25rem; --radius-sm: 0.25rem; --ease-out: cubic-bezier(0, 0, 0.2, 1); --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1); --radius-xl: 0.75rem; --font-mono: ui-monospace, 'SF Mono', SFMono-Regular, Menlo, Consolas, monospace; --ease-DEFAULT: cubic-bezier(0.4, 0, 0.2, 1); --radius-md: 0.375rem; --radius-none: 0; --font-sans: 'Inter Variable', ui-sans-serif, system-ui, sans-serif; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-lg: 0.5rem; --leading-none: 1; --default-font-family: var(--font-sans); --default-monoFont-family: var(--font-mono); }
63
+ :root, :host { --spacing: 0.25rem; --default-transition-timingFunction: cubic-bezier(0.4, 0, 0.2, 1); --default-transition-duration: 150ms; --leading-snug: 1.375; --leading-normal: 1.5; --radius-xs: 0.125rem; --tracking-wide: 0.025em; --leading-relaxed: 1.625; --leading-tight: 1.25; --radius-DEFAULT: 0.25rem; --radius-sm: 0.25rem; --ease-out: cubic-bezier(0, 0, 0.2, 1); --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1); --radius-xl: 0.75rem; --font-mono: ui-monospace, 'SF Mono', SFMono-Regular, Menlo, Consolas, monospace; --ease-DEFAULT: cubic-bezier(0.4, 0, 0.2, 1); --font-sans: 'Inter Variable', ui-sans-serif, system-ui, sans-serif; --radius-md: 0.375rem; --radius-none: 0; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-lg: 0.5rem; --leading-none: 1; --default-font-family: var(--font-sans); --default-monoFont-family: var(--font-mono); }
64
64
  }
65
65
  /* layer: base */
66
66
  @layer base{
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@justanarthur/modo-ui",
3
3
  "type": "module",
4
- "version": "0.6.0-canary.3",
4
+ "version": "0.6.0-canary.4",
5
5
  "description": "Fluid Functionalism (Base UI flavor, MIT © 2026 Micka Touillaud) ported to UnoCSS: motion springs, fluid hover, a two-step size ladder and an eight-level elevated surface system. Documented with modo.",
6
6
  "license": "MIT",
7
7
  "keywords": [