Initial commit
This commit is contained in:
303
node_modules/@radix-ui/react-dropdown-menu/dist/index.mjs
generated
vendored
Normal file
303
node_modules/@radix-ui/react-dropdown-menu/dist/index.mjs
generated
vendored
Normal file
@ -0,0 +1,303 @@
|
||||
"use client";
|
||||
|
||||
// packages/react/dropdown-menu/src/DropdownMenu.tsx
|
||||
import * as React from "react";
|
||||
import { composeEventHandlers } from "@radix-ui/primitive";
|
||||
import { composeRefs } from "@radix-ui/react-compose-refs";
|
||||
import { createContextScope } from "@radix-ui/react-context";
|
||||
import { useControllableState } from "@radix-ui/react-use-controllable-state";
|
||||
import { Primitive } from "@radix-ui/react-primitive";
|
||||
import * as MenuPrimitive from "@radix-ui/react-menu";
|
||||
import { createMenuScope } from "@radix-ui/react-menu";
|
||||
import { useId } from "@radix-ui/react-id";
|
||||
import { jsx } from "react/jsx-runtime";
|
||||
var DROPDOWN_MENU_NAME = "DropdownMenu";
|
||||
var [createDropdownMenuContext, createDropdownMenuScope] = createContextScope(
|
||||
DROPDOWN_MENU_NAME,
|
||||
[createMenuScope]
|
||||
);
|
||||
var useMenuScope = createMenuScope();
|
||||
var [DropdownMenuProvider, useDropdownMenuContext] = createDropdownMenuContext(DROPDOWN_MENU_NAME);
|
||||
var DropdownMenu = (props) => {
|
||||
const {
|
||||
__scopeDropdownMenu,
|
||||
children,
|
||||
dir,
|
||||
open: openProp,
|
||||
defaultOpen,
|
||||
onOpenChange,
|
||||
modal = true
|
||||
} = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
const triggerRef = React.useRef(null);
|
||||
const [open = false, setOpen] = useControllableState({
|
||||
prop: openProp,
|
||||
defaultProp: defaultOpen,
|
||||
onChange: onOpenChange
|
||||
});
|
||||
return /* @__PURE__ */ jsx(
|
||||
DropdownMenuProvider,
|
||||
{
|
||||
scope: __scopeDropdownMenu,
|
||||
triggerId: useId(),
|
||||
triggerRef,
|
||||
contentId: useId(),
|
||||
open,
|
||||
onOpenChange: setOpen,
|
||||
onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
|
||||
modal,
|
||||
children: /* @__PURE__ */ jsx(MenuPrimitive.Root, { ...menuScope, open, onOpenChange: setOpen, dir, modal, children })
|
||||
}
|
||||
);
|
||||
};
|
||||
DropdownMenu.displayName = DROPDOWN_MENU_NAME;
|
||||
var TRIGGER_NAME = "DropdownMenuTrigger";
|
||||
var DropdownMenuTrigger = React.forwardRef(
|
||||
(props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, disabled = false, ...triggerProps } = props;
|
||||
const context = useDropdownMenuContext(TRIGGER_NAME, __scopeDropdownMenu);
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Anchor, { asChild: true, ...menuScope, children: /* @__PURE__ */ jsx(
|
||||
Primitive.button,
|
||||
{
|
||||
type: "button",
|
||||
id: context.triggerId,
|
||||
"aria-haspopup": "menu",
|
||||
"aria-expanded": context.open,
|
||||
"aria-controls": context.open ? context.contentId : void 0,
|
||||
"data-state": context.open ? "open" : "closed",
|
||||
"data-disabled": disabled ? "" : void 0,
|
||||
disabled,
|
||||
...triggerProps,
|
||||
ref: composeRefs(forwardedRef, context.triggerRef),
|
||||
onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {
|
||||
if (!disabled && event.button === 0 && event.ctrlKey === false) {
|
||||
context.onOpenToggle();
|
||||
if (!context.open) event.preventDefault();
|
||||
}
|
||||
}),
|
||||
onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
|
||||
if (disabled) return;
|
||||
if (["Enter", " "].includes(event.key)) context.onOpenToggle();
|
||||
if (event.key === "ArrowDown") context.onOpenChange(true);
|
||||
if (["Enter", " ", "ArrowDown"].includes(event.key)) event.preventDefault();
|
||||
})
|
||||
}
|
||||
) });
|
||||
}
|
||||
);
|
||||
DropdownMenuTrigger.displayName = TRIGGER_NAME;
|
||||
var PORTAL_NAME = "DropdownMenuPortal";
|
||||
var DropdownMenuPortal = (props) => {
|
||||
const { __scopeDropdownMenu, ...portalProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Portal, { ...menuScope, ...portalProps });
|
||||
};
|
||||
DropdownMenuPortal.displayName = PORTAL_NAME;
|
||||
var CONTENT_NAME = "DropdownMenuContent";
|
||||
var DropdownMenuContent = React.forwardRef(
|
||||
(props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...contentProps } = props;
|
||||
const context = useDropdownMenuContext(CONTENT_NAME, __scopeDropdownMenu);
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
const hasInteractedOutsideRef = React.useRef(false);
|
||||
return /* @__PURE__ */ jsx(
|
||||
MenuPrimitive.Content,
|
||||
{
|
||||
id: context.contentId,
|
||||
"aria-labelledby": context.triggerId,
|
||||
...menuScope,
|
||||
...contentProps,
|
||||
ref: forwardedRef,
|
||||
onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {
|
||||
if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();
|
||||
hasInteractedOutsideRef.current = false;
|
||||
event.preventDefault();
|
||||
}),
|
||||
onInteractOutside: composeEventHandlers(props.onInteractOutside, (event) => {
|
||||
const originalEvent = event.detail.originalEvent;
|
||||
const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;
|
||||
const isRightClick = originalEvent.button === 2 || ctrlLeftClick;
|
||||
if (!context.modal || isRightClick) hasInteractedOutsideRef.current = true;
|
||||
}),
|
||||
style: {
|
||||
...props.style,
|
||||
// re-namespace exposed content custom properties
|
||||
...{
|
||||
"--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)"
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
DropdownMenuContent.displayName = CONTENT_NAME;
|
||||
var GROUP_NAME = "DropdownMenuGroup";
|
||||
var DropdownMenuGroup = React.forwardRef(
|
||||
(props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...groupProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Group, { ...menuScope, ...groupProps, ref: forwardedRef });
|
||||
}
|
||||
);
|
||||
DropdownMenuGroup.displayName = GROUP_NAME;
|
||||
var LABEL_NAME = "DropdownMenuLabel";
|
||||
var DropdownMenuLabel = React.forwardRef(
|
||||
(props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...labelProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Label, { ...menuScope, ...labelProps, ref: forwardedRef });
|
||||
}
|
||||
);
|
||||
DropdownMenuLabel.displayName = LABEL_NAME;
|
||||
var ITEM_NAME = "DropdownMenuItem";
|
||||
var DropdownMenuItem = React.forwardRef(
|
||||
(props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...itemProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Item, { ...menuScope, ...itemProps, ref: forwardedRef });
|
||||
}
|
||||
);
|
||||
DropdownMenuItem.displayName = ITEM_NAME;
|
||||
var CHECKBOX_ITEM_NAME = "DropdownMenuCheckboxItem";
|
||||
var DropdownMenuCheckboxItem = React.forwardRef((props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...checkboxItemProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.CheckboxItem, { ...menuScope, ...checkboxItemProps, ref: forwardedRef });
|
||||
});
|
||||
DropdownMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
|
||||
var RADIO_GROUP_NAME = "DropdownMenuRadioGroup";
|
||||
var DropdownMenuRadioGroup = React.forwardRef((props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...radioGroupProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.RadioGroup, { ...menuScope, ...radioGroupProps, ref: forwardedRef });
|
||||
});
|
||||
DropdownMenuRadioGroup.displayName = RADIO_GROUP_NAME;
|
||||
var RADIO_ITEM_NAME = "DropdownMenuRadioItem";
|
||||
var DropdownMenuRadioItem = React.forwardRef((props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...radioItemProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.RadioItem, { ...menuScope, ...radioItemProps, ref: forwardedRef });
|
||||
});
|
||||
DropdownMenuRadioItem.displayName = RADIO_ITEM_NAME;
|
||||
var INDICATOR_NAME = "DropdownMenuItemIndicator";
|
||||
var DropdownMenuItemIndicator = React.forwardRef((props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...itemIndicatorProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.ItemIndicator, { ...menuScope, ...itemIndicatorProps, ref: forwardedRef });
|
||||
});
|
||||
DropdownMenuItemIndicator.displayName = INDICATOR_NAME;
|
||||
var SEPARATOR_NAME = "DropdownMenuSeparator";
|
||||
var DropdownMenuSeparator = React.forwardRef((props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...separatorProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Separator, { ...menuScope, ...separatorProps, ref: forwardedRef });
|
||||
});
|
||||
DropdownMenuSeparator.displayName = SEPARATOR_NAME;
|
||||
var ARROW_NAME = "DropdownMenuArrow";
|
||||
var DropdownMenuArrow = React.forwardRef(
|
||||
(props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...arrowProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Arrow, { ...menuScope, ...arrowProps, ref: forwardedRef });
|
||||
}
|
||||
);
|
||||
DropdownMenuArrow.displayName = ARROW_NAME;
|
||||
var DropdownMenuSub = (props) => {
|
||||
const { __scopeDropdownMenu, children, open: openProp, onOpenChange, defaultOpen } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
const [open = false, setOpen] = useControllableState({
|
||||
prop: openProp,
|
||||
defaultProp: defaultOpen,
|
||||
onChange: onOpenChange
|
||||
});
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.Sub, { ...menuScope, open, onOpenChange: setOpen, children });
|
||||
};
|
||||
var SUB_TRIGGER_NAME = "DropdownMenuSubTrigger";
|
||||
var DropdownMenuSubTrigger = React.forwardRef((props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...subTriggerProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(MenuPrimitive.SubTrigger, { ...menuScope, ...subTriggerProps, ref: forwardedRef });
|
||||
});
|
||||
DropdownMenuSubTrigger.displayName = SUB_TRIGGER_NAME;
|
||||
var SUB_CONTENT_NAME = "DropdownMenuSubContent";
|
||||
var DropdownMenuSubContent = React.forwardRef((props, forwardedRef) => {
|
||||
const { __scopeDropdownMenu, ...subContentProps } = props;
|
||||
const menuScope = useMenuScope(__scopeDropdownMenu);
|
||||
return /* @__PURE__ */ jsx(
|
||||
MenuPrimitive.SubContent,
|
||||
{
|
||||
...menuScope,
|
||||
...subContentProps,
|
||||
ref: forwardedRef,
|
||||
style: {
|
||||
...props.style,
|
||||
// re-namespace exposed content custom properties
|
||||
...{
|
||||
"--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)"
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
});
|
||||
DropdownMenuSubContent.displayName = SUB_CONTENT_NAME;
|
||||
var Root2 = DropdownMenu;
|
||||
var Trigger = DropdownMenuTrigger;
|
||||
var Portal2 = DropdownMenuPortal;
|
||||
var Content2 = DropdownMenuContent;
|
||||
var Group2 = DropdownMenuGroup;
|
||||
var Label2 = DropdownMenuLabel;
|
||||
var Item2 = DropdownMenuItem;
|
||||
var CheckboxItem2 = DropdownMenuCheckboxItem;
|
||||
var RadioGroup2 = DropdownMenuRadioGroup;
|
||||
var RadioItem2 = DropdownMenuRadioItem;
|
||||
var ItemIndicator2 = DropdownMenuItemIndicator;
|
||||
var Separator2 = DropdownMenuSeparator;
|
||||
var Arrow2 = DropdownMenuArrow;
|
||||
var Sub2 = DropdownMenuSub;
|
||||
var SubTrigger2 = DropdownMenuSubTrigger;
|
||||
var SubContent2 = DropdownMenuSubContent;
|
||||
export {
|
||||
Arrow2 as Arrow,
|
||||
CheckboxItem2 as CheckboxItem,
|
||||
Content2 as Content,
|
||||
DropdownMenu,
|
||||
DropdownMenuArrow,
|
||||
DropdownMenuCheckboxItem,
|
||||
DropdownMenuContent,
|
||||
DropdownMenuGroup,
|
||||
DropdownMenuItem,
|
||||
DropdownMenuItemIndicator,
|
||||
DropdownMenuLabel,
|
||||
DropdownMenuPortal,
|
||||
DropdownMenuRadioGroup,
|
||||
DropdownMenuRadioItem,
|
||||
DropdownMenuSeparator,
|
||||
DropdownMenuSub,
|
||||
DropdownMenuSubContent,
|
||||
DropdownMenuSubTrigger,
|
||||
DropdownMenuTrigger,
|
||||
Group2 as Group,
|
||||
Item2 as Item,
|
||||
ItemIndicator2 as ItemIndicator,
|
||||
Label2 as Label,
|
||||
Portal2 as Portal,
|
||||
RadioGroup2 as RadioGroup,
|
||||
RadioItem2 as RadioItem,
|
||||
Root2 as Root,
|
||||
Separator2 as Separator,
|
||||
Sub2 as Sub,
|
||||
SubContent2 as SubContent,
|
||||
SubTrigger2 as SubTrigger,
|
||||
Trigger,
|
||||
createDropdownMenuScope
|
||||
};
|
||||
//# sourceMappingURL=index.mjs.map
|
||||
Reference in New Issue
Block a user