@anoki/fse-marche-ui
Version:
FSE UI components library
211 lines (210 loc) • 7.38 kB
JavaScript
import * as p from "react";
import { composeEventHandlers as m } from "./index.es235.js";
import { composeRefs as E } from "./index.es236.js";
import { createContextScope as S } from "./index.es237.js";
import { useControllableState as P } from "./index.es238.js";
import { Primitive as y } from "./index.es239.js";
import { createMenuScope as D, Root as O, Anchor as T, Portal as j, Content as G, Group as k, Item as L, Label as K, CheckboxItem as U, RadioGroup as B, RadioItem as F, ItemIndicator as H, Separator as W, Arrow as $, SubTrigger as X, SubContent as q } from "./index.es240.js";
import { useId as g } from "./index.es241.js";
import { j as a } from "./index.es137.js";
var M = "DropdownMenu", [z, bo] = S(
M,
[D]
), s = D(), [J, v] = z(M), _ = (o) => {
const {
__scopeDropdownMenu: n,
children: r,
dir: e,
open: t,
defaultOpen: i,
onOpenChange: c,
modal: d = !0
} = o, u = s(n), f = p.useRef(null), [w = !1, l] = P({
prop: t,
defaultProp: i,
onChange: c
});
return /* @__PURE__ */ a.jsx(
J,
{
scope: n,
triggerId: g(),
triggerRef: f,
contentId: g(),
open: w,
onOpenChange: l,
onOpenToggle: p.useCallback(() => l((C) => !C), [l]),
modal: d,
children: /* @__PURE__ */ a.jsx(O, { ...u, open: w, onOpenChange: l, dir: e, modal: d, children: r })
}
);
};
_.displayName = M;
var x = "DropdownMenuTrigger", R = p.forwardRef(
(o, n) => {
const { __scopeDropdownMenu: r, disabled: e = !1, ...t } = o, i = v(x, r), c = s(r);
return /* @__PURE__ */ a.jsx(T, { asChild: !0, ...c, children: /* @__PURE__ */ a.jsx(
y.button,
{
type: "button",
id: i.triggerId,
"aria-haspopup": "menu",
"aria-expanded": i.open,
"aria-controls": i.open ? i.contentId : void 0,
"data-state": i.open ? "open" : "closed",
"data-disabled": e ? "" : void 0,
disabled: e,
...t,
ref: E(n, i.triggerRef),
onPointerDown: m(o.onPointerDown, (d) => {
!e && d.button === 0 && d.ctrlKey === !1 && (i.onOpenToggle(), i.open || d.preventDefault());
}),
onKeyDown: m(o.onKeyDown, (d) => {
e || (["Enter", " "].includes(d.key) && i.onOpenToggle(), d.key === "ArrowDown" && i.onOpenChange(!0), ["Enter", " ", "ArrowDown"].includes(d.key) && d.preventDefault());
})
}
) });
}
);
R.displayName = x;
var Q = "DropdownMenuPortal", h = (o) => {
const { __scopeDropdownMenu: n, ...r } = o, e = s(n);
return /* @__PURE__ */ a.jsx(j, { ...e, ...r });
};
h.displayName = Q;
var I = "DropdownMenuContent", N = p.forwardRef(
(o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = v(I, r), i = s(r), c = p.useRef(!1);
return /* @__PURE__ */ a.jsx(
G,
{
id: t.contentId,
"aria-labelledby": t.triggerId,
...i,
...e,
ref: n,
onCloseAutoFocus: m(o.onCloseAutoFocus, (d) => {
var u;
c.current || (u = t.triggerRef.current) == null || u.focus(), c.current = !1, d.preventDefault();
}),
onInteractOutside: m(o.onInteractOutside, (d) => {
const u = d.detail.originalEvent, f = u.button === 0 && u.ctrlKey === !0, w = u.button === 2 || f;
(!t.modal || w) && (c.current = !0);
}),
style: {
...o.style,
"--radix-dropdown-menu-content-transform-origin": "var(--radix-popper-transform-origin)",
"--radix-dropdown-menu-content-available-width": "var(--radix-popper-available-width)",
"--radix-dropdown-menu-content-available-height": "var(--radix-popper-available-height)",
"--radix-dropdown-menu-trigger-width": "var(--radix-popper-anchor-width)",
"--radix-dropdown-menu-trigger-height": "var(--radix-popper-anchor-height)"
}
}
);
}
);
N.displayName = I;
var V = "DropdownMenuGroup", b = p.forwardRef(
(o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(k, { ...t, ...e, ref: n });
}
);
b.displayName = V;
var Y = "DropdownMenuLabel", Z = p.forwardRef(
(o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(K, { ...t, ...e, ref: n });
}
);
Z.displayName = Y;
var oo = "DropdownMenuItem", A = p.forwardRef(
(o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(L, { ...t, ...e, ref: n });
}
);
A.displayName = oo;
var eo = "DropdownMenuCheckboxItem", ro = p.forwardRef((o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(U, { ...t, ...e, ref: n });
});
ro.displayName = eo;
var no = "DropdownMenuRadioGroup", to = p.forwardRef((o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(B, { ...t, ...e, ref: n });
});
to.displayName = no;
var ao = "DropdownMenuRadioItem", po = p.forwardRef((o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(F, { ...t, ...e, ref: n });
});
po.displayName = ao;
var so = "DropdownMenuItemIndicator", io = p.forwardRef((o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(H, { ...t, ...e, ref: n });
});
io.displayName = so;
var uo = "DropdownMenuSeparator", co = p.forwardRef((o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(W, { ...t, ...e, ref: n });
});
co.displayName = uo;
var wo = "DropdownMenuArrow", lo = p.forwardRef(
(o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx($, { ...t, ...e, ref: n });
}
);
lo.displayName = wo;
var mo = "DropdownMenuSubTrigger", fo = p.forwardRef((o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(X, { ...t, ...e, ref: n });
});
fo.displayName = mo;
var Mo = "DropdownMenuSubContent", go = p.forwardRef((o, n) => {
const { __scopeDropdownMenu: r, ...e } = o, t = s(r);
return /* @__PURE__ */ a.jsx(
q,
{
...t,
...e,
ref: n,
style: {
...o.style,
"--radix-dropdown-menu-content-transform-origin": "var(--radix-popper-transform-origin)",
"--radix-dropdown-menu-content-available-width": "var(--radix-popper-available-width)",
"--radix-dropdown-menu-content-available-height": "var(--radix-popper-available-height)",
"--radix-dropdown-menu-trigger-width": "var(--radix-popper-anchor-width)",
"--radix-dropdown-menu-trigger-height": "var(--radix-popper-anchor-height)"
}
}
);
});
go.displayName = Mo;
var Ao = _, Co = R, Eo = h, So = N, Po = b, yo = A;
export {
So as Content,
_ as DropdownMenu,
lo as DropdownMenuArrow,
ro as DropdownMenuCheckboxItem,
N as DropdownMenuContent,
b as DropdownMenuGroup,
A as DropdownMenuItem,
io as DropdownMenuItemIndicator,
Z as DropdownMenuLabel,
h as DropdownMenuPortal,
to as DropdownMenuRadioGroup,
po as DropdownMenuRadioItem,
co as DropdownMenuSeparator,
go as DropdownMenuSubContent,
fo as DropdownMenuSubTrigger,
R as DropdownMenuTrigger,
Po as Group,
yo as Item,
Eo as Portal,
Ao as Root,
Co as Trigger,
bo as createDropdownMenuScope
};
//# sourceMappingURL=index.es159.js.map