@radix-ui/react-dropdown-menu 0.0.22 → 0.1.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/dist/index.d.ts CHANGED
@@ -1,43 +1,78 @@
1
1
  import * as React from "react";
2
+ import * as Radix from "@radix-ui/react-primitive";
3
+ import { Primitive } from "@radix-ui/react-primitive";
2
4
  import * as MenuPrimitive from "@radix-ui/react-menu";
3
- import * as Polymorphic from "@radix-ui/react-polymorphic";
4
5
  type Direction = 'ltr' | 'rtl';
5
- type DropdownMenuOwnProps = {
6
+ export interface DropdownMenuProps {
6
7
  dir?: Direction;
7
8
  open?: boolean;
8
9
  defaultOpen?: boolean;
9
10
  onOpenChange?(open: boolean): void;
10
- };
11
- export const DropdownMenu: React.FC<DropdownMenuOwnProps>;
12
- declare const TRIGGER_DEFAULT_TAG = "button";
13
- type DropdownMenuTriggerOwnProps = Omit<Polymorphic.OwnProps<typeof MenuPrimitive.Anchor>, 'virtualRef'>;
14
- export type DropdownMenuTriggerPrimitive = Polymorphic.ForwardRefComponent<typeof TRIGGER_DEFAULT_TAG, DropdownMenuTriggerOwnProps>;
15
- export const DropdownMenuTrigger: DropdownMenuTriggerPrimitive;
16
- type DropdownMenuContentOwnProps = Omit<Polymorphic.OwnProps<typeof MenuPrimitive.Content>, 'trapFocus'>;
17
- export type DropdownMenuContentPrimitive = Polymorphic.ForwardRefComponent<Polymorphic.IntrinsicElement<typeof MenuPrimitive.Content>, DropdownMenuContentOwnProps>;
18
- export const DropdownMenuContent: DropdownMenuContentPrimitive;
19
- export const DropdownMenuGroup: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").PrimitivePrimitive, "div">, "div">;
20
- export const DropdownMenuLabel: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").PrimitivePrimitive, "div">, "div">;
21
- export const DropdownMenuTriggerItem: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuSubTriggerPrimitive, "div">;
22
- export const DropdownMenuItem: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuItemPrimitive, "div">;
23
- export const DropdownMenuCheckboxItem: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuCheckboxItemPrimitive, "div">;
24
- export const DropdownMenuRadioGroup: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuRadioGroupPrimitive, "div">;
25
- export const DropdownMenuRadioItem: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuRadioItemPrimitive, "div">;
26
- export const DropdownMenuItemIndicator: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuItemIndicatorPrimitive, "span">;
27
- export const DropdownMenuSeparator: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").PrimitivePrimitive, "div">, "div">;
28
- export const DropdownMenuArrow: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-popper").PopperArrowPrimitive, "svg">, "svg">;
29
- export const Root: React.FC<DropdownMenuOwnProps>;
30
- export const Trigger: DropdownMenuTriggerPrimitive;
31
- export const Content: DropdownMenuContentPrimitive;
32
- export const Group: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").PrimitivePrimitive, "div">, "div">;
33
- export const Label: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").PrimitivePrimitive, "div">, "div">;
34
- export const Item: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuItemPrimitive, "div">;
35
- export const TriggerItem: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuSubTriggerPrimitive, "div">;
36
- export const CheckboxItem: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuCheckboxItemPrimitive, "div">;
37
- export const RadioGroup: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuRadioGroupPrimitive, "div">;
38
- export const RadioItem: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuRadioItemPrimitive, "div">;
39
- export const ItemIndicator: import("@radix-ui/react-primitive").ExtendedPrimitive<MenuPrimitive.MenuItemIndicatorPrimitive, "span">;
40
- export const Separator: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").PrimitivePrimitive, "div">, "div">;
41
- export const Arrow: import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-primitive").ExtendedPrimitive<import("@radix-ui/react-popper").PopperArrowPrimitive, "svg">, "svg">;
11
+ modal?: boolean;
12
+ }
13
+ export const DropdownMenu: React.FC<DropdownMenuProps>;
14
+ type PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;
15
+ export interface DropdownMenuTriggerProps extends PrimitiveButtonProps {
16
+ }
17
+ export const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
18
+ type MenuContentProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Content>;
19
+ export interface DropdownMenuContentProps extends DropdownMenuRootContentProps, MenuContentProps {
20
+ }
21
+ export const DropdownMenuContent: React.ForwardRefExoticComponent<DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>>;
22
+ interface DropdownMenuRootContentProps extends MenuContentProps {
23
+ }
24
+ type MenuGroupProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Group>;
25
+ export interface DropdownMenuGroupProps extends MenuGroupProps {
26
+ }
27
+ export const DropdownMenuGroup: React.ForwardRefExoticComponent<DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
28
+ type MenuLabelProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Label>;
29
+ export interface DropdownMenuLabelProps extends MenuLabelProps {
30
+ }
31
+ export const DropdownMenuLabel: React.ForwardRefExoticComponent<DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>>;
32
+ type MenuItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Item>;
33
+ export interface DropdownMenuItemProps extends MenuItemProps {
34
+ }
35
+ export const DropdownMenuItem: React.ForwardRefExoticComponent<DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>>;
36
+ type MenuSubTriggerProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.SubTrigger>;
37
+ export interface DropdownMenuTriggerItemProps extends MenuSubTriggerProps {
38
+ }
39
+ export const DropdownMenuTriggerItem: React.ForwardRefExoticComponent<DropdownMenuTriggerItemProps & React.RefAttributes<HTMLDivElement>>;
40
+ type MenuCheckboxItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.CheckboxItem>;
41
+ export interface DropdownMenuCheckboxItemProps extends MenuCheckboxItemProps {
42
+ }
43
+ export const DropdownMenuCheckboxItem: React.ForwardRefExoticComponent<DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>>;
44
+ type MenuRadioGroupProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.RadioGroup>;
45
+ export interface DropdownMenuRadioGroupProps extends MenuRadioGroupProps {
46
+ }
47
+ export const DropdownMenuRadioGroup: React.ForwardRefExoticComponent<DropdownMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
48
+ type MenuRadioItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.RadioItem>;
49
+ export interface DropdownMenuRadioItemProps extends MenuRadioItemProps {
50
+ }
51
+ export const DropdownMenuRadioItem: React.ForwardRefExoticComponent<DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>>;
52
+ type MenuItemIndicatorProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.ItemIndicator>;
53
+ export interface DropdownMenuItemIndicatorProps extends MenuItemIndicatorProps {
54
+ }
55
+ export const DropdownMenuItemIndicator: React.ForwardRefExoticComponent<DropdownMenuItemIndicatorProps & React.RefAttributes<HTMLSpanElement>>;
56
+ type MenuSeparatorProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Separator>;
57
+ export interface DropdownMenuSeparatorProps extends MenuSeparatorProps {
58
+ }
59
+ export const DropdownMenuSeparator: React.ForwardRefExoticComponent<DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>>;
60
+ type MenuArrowProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Arrow>;
61
+ export interface DropdownMenuArrowProps extends MenuArrowProps {
62
+ }
63
+ export const DropdownMenuArrow: React.ForwardRefExoticComponent<DropdownMenuArrowProps & React.RefAttributes<SVGSVGElement>>;
64
+ export const Root: React.FC<DropdownMenuProps>;
65
+ export const Trigger: React.ForwardRefExoticComponent<DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
66
+ export const Content: React.ForwardRefExoticComponent<DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>>;
67
+ export const Group: React.ForwardRefExoticComponent<DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
68
+ export const Label: React.ForwardRefExoticComponent<DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>>;
69
+ export const Item: React.ForwardRefExoticComponent<DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>>;
70
+ export const TriggerItem: React.ForwardRefExoticComponent<DropdownMenuTriggerItemProps & React.RefAttributes<HTMLDivElement>>;
71
+ export const CheckboxItem: React.ForwardRefExoticComponent<DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>>;
72
+ export const RadioGroup: React.ForwardRefExoticComponent<DropdownMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
73
+ export const RadioItem: React.ForwardRefExoticComponent<DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>>;
74
+ export const ItemIndicator: React.ForwardRefExoticComponent<DropdownMenuItemIndicatorProps & React.RefAttributes<HTMLSpanElement>>;
75
+ export const Separator: React.ForwardRefExoticComponent<DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>>;
76
+ export const Arrow: React.ForwardRefExoticComponent<DropdownMenuArrowProps & React.RefAttributes<SVGSVGElement>>;
42
77
 
43
78
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"mappings":"A;A;A;AAWA,iBAAiB,KAAK,GAAG,KAAK,CAAC;AA6B/B,4BAA4B;IAC1B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF,OAAA,MAAM,cAAc,MAAM,EAAE,CAAC,oBAAoB,CA2BhD,CAAC;AAsCF,QAAA,MAAM,8BAA8B,CAAC;AAErC,mCAAmC,IAAI,CACrC,YAAY,QAAQ,CAAC,OAAO,cAAc,MAAM,CAAC,EACjD,YAAY,CACb,CAAC;AACF,2CAAoC,YAAY,mBAAmB,CACjE,0BAA0B,EAC1B,2BAA2B,CAC5B,CAAC;AAEF,OAAA,MAAM,iDA6B4B,CAAC;AAYnC,mCAAmC,IAAI,CACrC,YAAY,QAAQ,CAAC,OAAO,cAAc,OAAO,CAAC,EAClD,WAAW,CACZ,CAAC;AAEF,2CAAoC,YAAY,mBAAmB,CACjE,YAAY,gBAAgB,CAAC,OAAO,cAAc,OAAO,CAAC,EAC1D,2BAA2B,CAC5B,CAAC;AAEF,OAAA,MAAM,iDAoB4B,CAAC;AAoDnC,OAAA,MAAM,2PAEJ,CAAC;AACH,OAAA,MAAM,2PAEJ,CAAC;AACH,OAAA,MAAM,gJAEJ,CAAC;AACH,OAAA,MAAM,mIAA2F,CAAC;AAClG,OAAA,MAAM,mJAEJ,CAAC;AACH,OAAA,MAAM,+IAEJ,CAAC;AACH,OAAA,MAAM,6IAEJ,CAAC;AACH,OAAA,MAAM,sJAEJ,CAAC;AACH,OAAA,MAAM,+PAEJ,CAAC;AACH,OAAA,MAAM,uPAEJ,CAAC;AAIH,OAAA,MAAM,oCAAmB,CAAC;AAC1B,OAAA,MAAM,qCAA6B,CAAC;AACpC,OAAA,MAAM,qCAA6B,CAAC;AACpC,OAAA,MAAM,+OAAyB,CAAC;AAChC,OAAA,MAAM,+OAAyB,CAAC;AAChC,OAAA,MAAM,uHAAuB,CAAC;AAC9B,OAAA,MAAM,oIAAqC,CAAC;AAC5C,OAAA,MAAM,uIAAuC,CAAC;AAC9C,OAAA,MAAM,mIAAmC,CAAC;AAC1C,OAAA,MAAM,iIAAiC,CAAC;AACxC,OAAA,MAAM,0IAAyC,CAAC;AAChD,OAAA,MAAM,mPAAiC,CAAC;AACxC,OAAA,MAAM,2OAAyB,CAAC","sources":["./packages/react/dropdown-menu/src/packages/react/dropdown-menu/src/DropdownMenu.tsx","./packages/react/dropdown-menu/src/packages/react/dropdown-menu/src/index.ts"],"sourcesContent":[null,null],"names":[],"version":3,"file":"index.d.ts.map"}
1
+ {"mappings":"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","sources":["./packages/react/dropdown-menu/src/packages/react/dropdown-menu/src/DropdownMenu.tsx","./packages/react/dropdown-menu/src/packages/react/dropdown-menu/src/index.ts"],"sourcesContent":[null,null],"names":[],"version":3,"file":"index.d.ts.map"}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var e,o=require("@radix-ui/react-id").useId,n=d({},require("@radix-ui/react-menu")),r=require("@radix-ui/react-primitive").extendPrimitive,t=require("@radix-ui/react-use-controllable-state").useControllableState,a=require("@radix-ui/react-context").createContext,p=require("@radix-ui/react-compose-refs").composeRefs,s=require("@radix-ui/primitive").composeEventHandlers,i=d({},require("react")),u=(e=require("@babel/runtime/helpers/extends"))&&e.__esModule?e.default:e;function d(e,o){return Object.keys(o).forEach((function(n){"default"!==n&&"__esModule"!==n&&Object.defineProperty(e,n,{enumerable:!0,get:function(){return o[n]}})})),e}const[c,l]=a("DropdownMenu"),m=e=>{const{children:o,open:r,defaultOpen:a,onOpenChange:p,dir:s}=e,u=i.useContext(D),[d=!1,l]=t({prop:r,defaultProp:a,onChange:p}),m=i.useCallback((()=>l((e=>!e))),[l]);return u?/*#__PURE__*/i.createElement(c,{isRootMenu:!1,open:d,onOpenChange:l,onOpenToggle:m},/*#__PURE__*/i.createElement(n.Sub,{open:d,onOpenChange:l},o)):/*#__PURE__*/i.createElement(g,{dir:s,open:d,onOpenChange:l,onOpenToggle:m},o)};exports.DropdownMenu=m;const g=e=>{const{children:r,dir:t,open:a,onOpenChange:p,onOpenToggle:s}=e,u=i.useRef(null);/*#__PURE__*/return i.createElement(c,{isRootMenu:!0,triggerId:o(),triggerRef:u,contentId:o(),open:a,onOpenChange:p,onOpenToggle:s},/*#__PURE__*/i.createElement(n.Root,{open:a,onOpenChange:p,dir:t},r))},x="button",w=/*#__PURE__*/i.forwardRef(((e,o)=>{const{as:r=x,...t}=e,a=l("DropdownMenuTrigger");return a.isRootMenu?/*#__PURE__*/i.createElement(n.Anchor,u({type:"button",id:a.triggerId,"aria-haspopup":"menu","aria-expanded":!!a.open||void 0,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?"open":"closed"},t,{as:r,ref:p(o,a.triggerRef),onMouseDown:s(e.onMouseDown,(e=>{0===e.button&&!1===e.ctrlKey&&a.onOpenToggle()})),onKeyDown:s(e.onKeyDown,(e=>{[" ","Enter","ArrowDown"].includes(e.key)&&(e.preventDefault(),a.onOpenChange(!0))}))})):null}));exports.DropdownMenuTrigger=w;const D=/*#__PURE__*/i.createContext(!1),M=/*#__PURE__*/i.forwardRef(((e,o)=>{const r=l("DropdownMenuContent"),t={...e,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)"}};/*#__PURE__*/return i.createElement(D.Provider,{value:!0},r.isRootMenu?/*#__PURE__*/i.createElement(f,u({},t,{ref:o})):/*#__PURE__*/i.createElement(n.Content,u({},t,{ref:o})))}));exports.DropdownMenuContent=M;const f=/*#__PURE__*/i.forwardRef(((e,o)=>{const{disableOutsidePointerEvents:r=!0,disableOutsideScroll:t=!0,portalled:a=!0,...p}=e,d=l("DropdownMenuContent");return d.isRootMenu?/*#__PURE__*/i.createElement(n.Content,u({id:d.contentId,"aria-labelledby":d.triggerId},p,{ref:o,disableOutsidePointerEvents:r,disableOutsideScroll:t,portalled:a,trapFocus:!0,onCloseAutoFocus:s(e.onCloseAutoFocus,(e=>{var o;e.preventDefault(),null===(o=d.triggerRef.current)||void 0===o||o.focus()})),onPointerDownOutside:s(e.onPointerDownOutside,(e=>{var o;const n=e.target;(null===(o=d.triggerRef.current)||void 0===o?void 0:o.contains(n))&&e.preventDefault()}),{checkForDefaultPrevented:!1})})):null})),I=r(n.Group,{displayName:"DropdownMenuGroup"});exports.DropdownMenuGroup=I;const b=r(n.Label,{displayName:"DropdownMenuLabel"});exports.DropdownMenuLabel=b;const C=r(n.SubTrigger,{displayName:"DropdownMenuTriggerItem"});exports.DropdownMenuTriggerItem=C;const R=r(n.Item,{displayName:"DropdownMenuItem"});exports.DropdownMenuItem=R;const O=r(n.CheckboxItem,{displayName:"DropdownMenuCheckboxItem"});exports.DropdownMenuCheckboxItem=O;const v=r(n.RadioGroup,{displayName:"DropdownMenuRadioGroup"});exports.DropdownMenuRadioGroup=v;const h=r(n.RadioItem,{displayName:"DropdownMenuRadioItem"});exports.DropdownMenuRadioItem=h;const y=r(n.ItemIndicator,{displayName:"DropdownMenuItemIndicator"});exports.DropdownMenuItemIndicator=y;const E=r(n.Separator,{displayName:"DropdownMenuSeparator"});exports.DropdownMenuSeparator=E;const T=r(n.Arrow,{displayName:"DropdownMenuArrow"});exports.DropdownMenuArrow=T;const N=m;exports.Root=N;const q=w;exports.Trigger=q;const P=M;exports.Content=P;const S=I;exports.Group=S;const k=b;exports.Label=k;const A=R;exports.Item=A;const G=C;exports.TriggerItem=G;const F=O;exports.CheckboxItem=F;const L=v;exports.RadioGroup=L;const _=h;exports.RadioItem=_;const K=y;exports.ItemIndicator=K;const j=E;exports.Separator=j;const H=T;exports.Arrow=H;
1
+ var e,r=require("@radix-ui/react-id").useId,o=i({},require("@radix-ui/react-menu")),t=require("@radix-ui/react-primitive").Primitive,n=require("@radix-ui/react-use-controllable-state").useControllableState,a=require("@radix-ui/react-context").createContext,u=require("@radix-ui/react-compose-refs").composeRefs,c=require("@radix-ui/primitive").composeEventHandlers,d=i({},require("react")),p=(e=require("@babel/runtime/helpers/extends"))&&e.__esModule?e.default:e;function i(e,r){return Object.keys(r).forEach((function(o){"default"!==o&&"__esModule"!==o&&Object.defineProperty(e,o,{enumerable:!0,get:function(){return r[o]}})})),e}const[s,l]=a("DropdownMenu"),f=e=>{const{children:r,open:t,defaultOpen:a,onOpenChange:u,dir:c,modal:p=!0}=e,i=d.useContext(x),[l=!1,f]=n({prop:t,defaultProp:a,onChange:u}),g=d.useCallback((()=>f((e=>!e))),[f]);return i?/*#__PURE__*/d.createElement(s,{isRootMenu:!1,open:l,onOpenChange:f,onOpenToggle:g},/*#__PURE__*/d.createElement(o.Sub,{open:l,onOpenChange:f},r)):/*#__PURE__*/d.createElement(m,{dir:c,open:l,onOpenChange:f,onOpenToggle:g,modal:p},r)};exports.DropdownMenu=f;const m=e=>{const{children:t,dir:n,open:a,onOpenChange:u,onOpenToggle:c,modal:p=!0}=e,i=d.useRef(null);/*#__PURE__*/return d.createElement(s,{isRootMenu:!0,triggerId:r(),triggerRef:i,contentId:r(),open:a,onOpenChange:u,onOpenToggle:c,modal:p},/*#__PURE__*/d.createElement(o.Root,{open:a,onOpenChange:u,dir:n,modal:p},t))},g=/*#__PURE__*/d.forwardRef(((e,r)=>{const n=l("DropdownMenuTrigger");return n.isRootMenu?/*#__PURE__*/d.createElement(o.Anchor,{asChild:!0},/*#__PURE__*/d.createElement(t.button,p({type:"button",id:n.triggerId,"aria-haspopup":"menu","aria-expanded":!!n.open||void 0,"aria-controls":n.open?n.contentId:void 0,"data-state":n.open?"open":"closed"},e,{ref:u(r,n.triggerRef),onPointerDown:c(e.onPointerDown,(e=>{0===e.button&&!1===e.ctrlKey&&(n.open||e.preventDefault(),n.onOpenToggle())})),onKeyDown:c(e.onKeyDown,(e=>{[" ","Enter","ArrowDown"].includes(e.key)&&(e.preventDefault(),n.onOpenChange(!0))}))}))):null}));exports.DropdownMenuTrigger=g;const x=/*#__PURE__*/d.createContext(!1),w=/*#__PURE__*/d.forwardRef(((e,r)=>{const t=l("DropdownMenuContent"),n={...e,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)"}};/*#__PURE__*/return d.createElement(x.Provider,{value:!0},t.isRootMenu?/*#__PURE__*/d.createElement(R,p({},n,{ref:r})):/*#__PURE__*/d.createElement(o.Content,p({},n,{ref:r})))}));exports.DropdownMenuContent=w;const R=/*#__PURE__*/d.forwardRef(((e,r)=>{const{portalled:t=!0,...n}=e,a=l("DropdownMenuContent"),u=d.useRef(!1);return a.isRootMenu?/*#__PURE__*/d.createElement(o.Content,p({id:a.contentId,"aria-labelledby":a.triggerId},n,{ref:r,portalled:t,onCloseAutoFocus:r=>{var o,t;(null===(o=e.onCloseAutoFocus)||void 0===o||o.call(e,r),r.defaultPrevented)||(u.current||null===(t=a.triggerRef.current)||void 0===t||t.focus(),r.preventDefault());u.current=!1},onInteractOutside:r=>{var o,t;if(null===(o=e.onInteractOutside)||void 0===o||o.call(e,r),!r.defaultPrevented){const e=r.detail.originalEvent,o=0===e.button&&!0===e.ctrlKey,t=2===e.button||o;a.modal&&!t||(u.current=!0)}const n=r.target;(null===(t=a.triggerRef.current)||void 0===t?void 0:t.contains(n))&&r.preventDefault()}})):null})),C=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Group,p({},e,{ref:r}))));exports.DropdownMenuGroup=C;const D=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Label,p({},e,{ref:r}))));exports.DropdownMenuLabel=D;const I=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Item,p({},e,{ref:r}))));exports.DropdownMenuItem=I;const E=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.SubTrigger,p({},e,{ref:r}))));exports.DropdownMenuTriggerItem=E;const v=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.CheckboxItem,p({},e,{ref:r}))));exports.DropdownMenuCheckboxItem=v;const M=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.RadioGroup,p({},e,{ref:r}))));exports.DropdownMenuRadioGroup=M;const b=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.RadioItem,p({},e,{ref:r}))));exports.DropdownMenuRadioItem=b;const h=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.ItemIndicator,p({},e,{ref:r}))));exports.DropdownMenuItemIndicator=h;const O=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Separator,p({},e,{ref:r}))));exports.DropdownMenuSeparator=O;const y=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Arrow,p({},e,{ref:r}))));exports.DropdownMenuArrow=y;const T=f;exports.Root=T;const q=g;exports.Trigger=q;const P=w;exports.Content=P;const A=C;exports.Group=A;const k=D;exports.Label=k;const G=I;exports.Item=G;const S=E;exports.TriggerItem=S;const K=v;exports.CheckboxItem=K;const _=M;exports.RadioGroup=_;const L=b;exports.RadioItem=L;const j=h;exports.ItemIndicator=j;const F=O;exports.Separator=F;const H=y;exports.Arrow=H;
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":"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","sources":["./node_modules/@parcel/scope-hoisting/lib/helpers.js","./packages/react/dropdown-menu/src/DropdownMenu.tsx"],"sourcesContent":["function $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$defineInteropFlag(a) {\n Object.defineProperty(a, '__esModule', {value: true});\n}\n\nfunction $parcel$reexport(e, n, v) {\n Object.defineProperty(e, n, {get: v, enumerable: true});\n}\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule') {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n },\n });\n });\n\n return dest;\n}\n\nfunction $parcel$missingModule(name) {\n var err = new Error(\"Cannot find module '\" + name + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n}\n\nvar $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { composeRefs } from '@radix-ui/react-compose-refs';\nimport { createContext } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { extendPrimitive } from '@radix-ui/react-primitive';\nimport * as MenuPrimitive from '@radix-ui/react-menu';\nimport { useId } from '@radix-ui/react-id';\n\nimport type * as Polymorphic from '@radix-ui/react-polymorphic';\n\ntype Direction = 'ltr' | 'rtl';\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenu\n * -----------------------------------------------------------------------------------------------*/\n\nconst DROPDOWN_MENU_NAME = 'DropdownMenu';\n\ntype DropdownMenuRootContextValue = {\n isRootMenu: true;\n triggerId: string;\n triggerRef: React.RefObject<HTMLButtonElement>;\n contentId: string;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\ntype DropdownMenuSubContextValue = {\n isRootMenu: false;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\nconst [DropdownMenuProvider, useDropdownMenuContext] = createContext<\n DropdownMenuRootContextValue | DropdownMenuSubContextValue\n>(DROPDOWN_MENU_NAME);\n\ntype DropdownMenuOwnProps = {\n dir?: Direction;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?(open: boolean): void;\n};\n\nconst DropdownMenu: React.FC<DropdownMenuOwnProps> = (props) => {\n const { children, open: openProp, defaultOpen, onOpenChange, dir } = props;\n const isInsideContent = React.useContext(ContentContext);\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const handleOpenToggle = React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]);\n\n return isInsideContent ? (\n <DropdownMenuProvider\n isRootMenu={false}\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={handleOpenToggle}\n >\n <MenuPrimitive.Sub open={open} onOpenChange={setOpen}>\n {children}\n </MenuPrimitive.Sub>\n </DropdownMenuProvider>\n ) : (\n <DropdownMenuRoot dir={dir} open={open} onOpenChange={setOpen} onOpenToggle={handleOpenToggle}>\n {children}\n </DropdownMenuRoot>\n );\n};\n\nDropdownMenu.displayName = DROPDOWN_MENU_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype DropdownMenuRootOwnProps = {\n dir?: Direction;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\nconst DropdownMenuRoot: React.FC<DropdownMenuRootOwnProps> = (props) => {\n const { children, dir, open, onOpenChange, onOpenToggle } = props;\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n return (\n <DropdownMenuProvider\n isRootMenu={true}\n triggerId={useId()}\n triggerRef={triggerRef}\n contentId={useId()}\n open={open}\n onOpenChange={onOpenChange}\n onOpenToggle={onOpenToggle}\n >\n <MenuPrimitive.Root open={open} onOpenChange={onOpenChange} dir={dir}>\n {children}\n </MenuPrimitive.Root>\n </DropdownMenuProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'DropdownMenuTrigger';\nconst TRIGGER_DEFAULT_TAG = 'button';\n\ntype DropdownMenuTriggerOwnProps = Omit<\n Polymorphic.OwnProps<typeof MenuPrimitive.Anchor>,\n 'virtualRef'\n>;\ntype DropdownMenuTriggerPrimitive = Polymorphic.ForwardRefComponent<\n typeof TRIGGER_DEFAULT_TAG,\n DropdownMenuTriggerOwnProps\n>;\n\nconst DropdownMenuTrigger = React.forwardRef((props, forwardedRef) => {\n const { as = TRIGGER_DEFAULT_TAG, ...triggerProps } = props;\n const context = useDropdownMenuContext(TRIGGER_NAME);\n return context.isRootMenu ? (\n <MenuPrimitive.Anchor\n type=\"button\"\n id={context.triggerId}\n aria-haspopup=\"menu\"\n aria-expanded={context.open ? true : undefined}\n aria-controls={context.open ? context.contentId : undefined}\n data-state={context.open ? 'open' : 'closed'}\n {...triggerProps}\n as={as}\n ref={composeRefs(forwardedRef, context.triggerRef)}\n onMouseDown={composeEventHandlers(props.onMouseDown, (event) => {\n // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)\n // but not when the control key is pressed (avoiding MacOS right click)\n if (event.button === 0 && event.ctrlKey === false) {\n context.onOpenToggle();\n }\n })}\n onKeyDown={composeEventHandlers(props.onKeyDown, (event: React.KeyboardEvent) => {\n if ([' ', 'Enter', 'ArrowDown'].includes(event.key)) {\n event.preventDefault();\n context.onOpenChange(true);\n }\n })}\n />\n ) : null;\n}) as DropdownMenuTriggerPrimitive;\n\nDropdownMenuTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'DropdownMenuContent';\n\nconst ContentContext = React.createContext(false);\n\ntype DropdownMenuContentOwnProps = Omit<\n Polymorphic.OwnProps<typeof MenuPrimitive.Content>,\n 'trapFocus'\n>;\n\ntype DropdownMenuContentPrimitive = Polymorphic.ForwardRefComponent<\n Polymorphic.IntrinsicElement<typeof MenuPrimitive.Content>,\n DropdownMenuContentOwnProps\n>;\n\nconst DropdownMenuContent = React.forwardRef((props, forwardedRef) => {\n const context = useDropdownMenuContext(CONTENT_NAME);\n const commonProps = {\n ...props,\n style: {\n ...props.style,\n // re-namespace exposed content custom property\n ['--radix-dropdown-menu-content-transform-origin' as any]: 'var(--radix-popper-transform-origin)',\n },\n };\n\n return (\n <ContentContext.Provider value={true}>\n {context.isRootMenu ? (\n <DropdownMenuRootContent {...commonProps} ref={forwardedRef} />\n ) : (\n <MenuPrimitive.Content {...commonProps} ref={forwardedRef} />\n )}\n </ContentContext.Provider>\n );\n}) as DropdownMenuContentPrimitive;\n\nDropdownMenuContent.displayName = CONTENT_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype DropdownMenuRootContentOwnProps = Polymorphic.OwnProps<typeof MenuPrimitive.Content>;\ntype DropdownMenuRootContentPrimitive = Polymorphic.ForwardRefComponent<\n Polymorphic.IntrinsicElement<typeof MenuPrimitive.Content>,\n DropdownMenuRootContentOwnProps\n>;\n\nconst DropdownMenuRootContent = React.forwardRef((props, forwardedRef) => {\n const {\n disableOutsidePointerEvents = true,\n disableOutsideScroll = true,\n portalled = true,\n ...contentProps\n } = props;\n const context = useDropdownMenuContext(CONTENT_NAME);\n\n return context.isRootMenu ? (\n <MenuPrimitive.Content\n id={context.contentId}\n aria-labelledby={context.triggerId}\n {...contentProps}\n ref={forwardedRef}\n disableOutsidePointerEvents={disableOutsidePointerEvents}\n disableOutsideScroll={disableOutsideScroll}\n portalled={portalled}\n trapFocus\n onCloseAutoFocus={composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n context.triggerRef.current?.focus();\n })}\n onPointerDownOutside={composeEventHandlers(\n props.onPointerDownOutside,\n (event) => {\n const target = event.target as HTMLElement;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n // prevent dismissing when clicking the trigger\n // as it's already setup to close, otherwise it would close and immediately open.\n if (targetIsTrigger) event.preventDefault();\n },\n { checkForDefaultPrevented: false }\n )}\n />\n ) : null;\n}) as DropdownMenuRootContentPrimitive;\n\n/* ---------------------------------------------------------------------------------------------- */\n\nconst DropdownMenuGroup = extendPrimitive(MenuPrimitive.Group, {\n displayName: 'DropdownMenuGroup',\n});\nconst DropdownMenuLabel = extendPrimitive(MenuPrimitive.Label, {\n displayName: 'DropdownMenuLabel',\n});\nconst DropdownMenuTriggerItem = extendPrimitive(MenuPrimitive.SubTrigger, {\n displayName: 'DropdownMenuTriggerItem',\n});\nconst DropdownMenuItem = extendPrimitive(MenuPrimitive.Item, { displayName: 'DropdownMenuItem' });\nconst DropdownMenuCheckboxItem = extendPrimitive(MenuPrimitive.CheckboxItem, {\n displayName: 'DropdownMenuCheckboxItem',\n});\nconst DropdownMenuRadioGroup = extendPrimitive(MenuPrimitive.RadioGroup, {\n displayName: 'DropdownMenuRadioGroup',\n});\nconst DropdownMenuRadioItem = extendPrimitive(MenuPrimitive.RadioItem, {\n displayName: 'DropdownMenuRadioItem',\n});\nconst DropdownMenuItemIndicator = extendPrimitive(MenuPrimitive.ItemIndicator, {\n displayName: 'DropdownMenuItemIndicator',\n});\nconst DropdownMenuSeparator = extendPrimitive(MenuPrimitive.Separator, {\n displayName: 'DropdownMenuSeparator',\n});\nconst DropdownMenuArrow = extendPrimitive(MenuPrimitive.Arrow, {\n displayName: 'DropdownMenuArrow',\n});\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = DropdownMenu;\nconst Trigger = DropdownMenuTrigger;\nconst Content = DropdownMenuContent;\nconst Group = DropdownMenuGroup;\nconst Label = DropdownMenuLabel;\nconst Item = DropdownMenuItem;\nconst TriggerItem = DropdownMenuTriggerItem;\nconst CheckboxItem = DropdownMenuCheckboxItem;\nconst RadioGroup = DropdownMenuRadioGroup;\nconst RadioItem = DropdownMenuRadioItem;\nconst ItemIndicator = DropdownMenuItemIndicator;\nconst Separator = DropdownMenuSeparator;\nconst Arrow = DropdownMenuArrow;\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuTriggerItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuItemIndicator,\n DropdownMenuSeparator,\n DropdownMenuArrow,\n //\n Root,\n Trigger,\n Content,\n Group,\n Label,\n Item,\n TriggerItem,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n};\nexport type { DropdownMenuTriggerPrimitive, DropdownMenuContentPrimitive };\n"],"names":["a","__esModule","default","$parcel$exportWildcard","dest","source","Object","keys","forEach","key","defineProperty","enumerable","get","DropdownMenuProvider","useDropdownMenuContext","createContext","DropdownMenu","props","children","open","openProp","defaultOpen","onOpenChange","dir","isInsideContent","React","useContext","ContentContext","setOpen","useControllableState","prop","defaultProp","onChange","handleOpenToggle","useCallback","prevOpen","_react","createElement","$e185b8015793f9eefe208950c9dca8be$var$DropdownMenuProvider","isRootMenu","onOpenToggle","_radixUiReactMenu","Sub","$e185b8015793f9eefe208950c9dca8be$var$DropdownMenuRoot","DropdownMenuRoot","triggerRef","useRef","triggerId","useId","contentId","Root","TRIGGER_DEFAULT_TAG","DropdownMenuTrigger","forwardRef","forwardedRef","as","triggerProps","context","Anchor","_babelRuntimeHelpersExtends","type","id","aria-haspopup","aria-expanded","undefined","aria-controls","data-state","ref","composeRefs","onMouseDown","composeEventHandlers","event","button","ctrlKey","onKeyDown","includes","preventDefault","DropdownMenuContent","commonProps","style","--radix-dropdown-menu-content-transform-origin","$e185b8015793f9eefe208950c9dca8be$var$ContentContext","Provider","value","$e185b8015793f9eefe208950c9dca8be$var$DropdownMenuRootContent","Content","DropdownMenuRootContent","disableOutsidePointerEvents","disableOutsideScroll","portalled","contentProps","aria-labelledby","trapFocus","onCloseAutoFocus","_context$triggerRef$c","current","focus","onPointerDownOutside","_context$triggerRef$c2","target","contains","checkForDefaultPrevented","DropdownMenuGroup","extendPrimitive","MenuPrimitive","Group","displayName","DropdownMenuLabel","Label","DropdownMenuTriggerItem","SubTrigger","DropdownMenuItem","Item","DropdownMenuCheckboxItem","CheckboxItem","DropdownMenuRadioGroup","RadioGroup","DropdownMenuRadioItem","RadioItem","DropdownMenuItemIndicator","ItemIndicator","DropdownMenuSeparator","Separator","DropdownMenuArrow","Arrow","Trigger","TriggerItem"],"version":3,"file":"index.js.map"}
1
+ {"mappings":"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","sources":["./node_modules/@parcel/scope-hoisting/lib/helpers.js","./packages/react/dropdown-menu/src/DropdownMenu.tsx"],"sourcesContent":["function $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$defineInteropFlag(a) {\n Object.defineProperty(a, '__esModule', {value: true});\n}\n\nfunction $parcel$reexport(e, n, v) {\n Object.defineProperty(e, n, {get: v, enumerable: true});\n}\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule') {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n },\n });\n });\n\n return dest;\n}\n\nfunction $parcel$missingModule(name) {\n var err = new Error(\"Cannot find module '\" + name + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n}\n\nvar $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { composeRefs } from '@radix-ui/react-compose-refs';\nimport { createContext } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport * as MenuPrimitive from '@radix-ui/react-menu';\nimport { useId } from '@radix-ui/react-id';\n\nimport type * as Radix from '@radix-ui/react-primitive';\n\ntype Direction = 'ltr' | 'rtl';\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenu\n * -----------------------------------------------------------------------------------------------*/\n\nconst DROPDOWN_MENU_NAME = 'DropdownMenu';\n\ntype DropdownMenuRootContextValue = {\n isRootMenu: true;\n triggerId: string;\n triggerRef: React.RefObject<HTMLButtonElement>;\n contentId: string;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n modal: boolean;\n};\n\ntype DropdownMenuSubContextValue = {\n isRootMenu: false;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\nconst [DropdownMenuProvider, useDropdownMenuContext] = createContext<\n DropdownMenuRootContextValue | DropdownMenuSubContextValue\n>(DROPDOWN_MENU_NAME);\n\ninterface DropdownMenuProps {\n dir?: Direction;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?(open: boolean): void;\n modal?: boolean;\n}\n\nconst DropdownMenu: React.FC<DropdownMenuProps> = (props) => {\n const { children, open: openProp, defaultOpen, onOpenChange, dir, modal = true } = props;\n const isInsideContent = React.useContext(ContentContext);\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const handleOpenToggle = React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]);\n\n return isInsideContent ? (\n <DropdownMenuProvider\n isRootMenu={false}\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={handleOpenToggle}\n >\n <MenuPrimitive.Sub open={open} onOpenChange={setOpen}>\n {children}\n </MenuPrimitive.Sub>\n </DropdownMenuProvider>\n ) : (\n <DropdownMenuRoot\n dir={dir}\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={handleOpenToggle}\n modal={modal}\n >\n {children}\n </DropdownMenuRoot>\n );\n};\n\nDropdownMenu.displayName = DROPDOWN_MENU_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ninterface DropdownMenuRootProps {\n dir?: Direction;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n modal?: boolean;\n}\n\nconst DropdownMenuRoot: React.FC<DropdownMenuRootProps> = (props) => {\n const { children, dir, open, onOpenChange, onOpenToggle, modal = true } = props;\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n return (\n <DropdownMenuProvider\n isRootMenu={true}\n triggerId={useId()}\n triggerRef={triggerRef}\n contentId={useId()}\n open={open}\n onOpenChange={onOpenChange}\n onOpenToggle={onOpenToggle}\n modal={modal}\n >\n <MenuPrimitive.Root open={open} onOpenChange={onOpenChange} dir={dir} modal={modal}>\n {children}\n </MenuPrimitive.Root>\n </DropdownMenuProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'DropdownMenuTrigger';\n\ntype DropdownMenuTriggerElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface DropdownMenuTriggerProps extends PrimitiveButtonProps {}\n\nconst DropdownMenuTrigger = React.forwardRef<DropdownMenuTriggerElement, DropdownMenuTriggerProps>(\n (props, forwardedRef) => {\n const context = useDropdownMenuContext(TRIGGER_NAME);\n return context.isRootMenu ? (\n <MenuPrimitive.Anchor asChild>\n <Primitive.button\n type=\"button\"\n id={context.triggerId}\n aria-haspopup=\"menu\"\n aria-expanded={context.open ? true : undefined}\n aria-controls={context.open ? context.contentId : undefined}\n data-state={context.open ? 'open' : 'closed'}\n {...props}\n ref={composeRefs(forwardedRef, context.triggerRef)}\n onPointerDown={composeEventHandlers(props.onPointerDown, (event) => {\n // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)\n // but not when the control key is pressed (avoiding MacOS right click)\n if (event.button === 0 && event.ctrlKey === false) {\n // prevent trigger focusing when opening\n // this allows the content to be given focus without competition\n if (!context.open) event.preventDefault();\n context.onOpenToggle();\n }\n })}\n onKeyDown={composeEventHandlers(props.onKeyDown, (event: React.KeyboardEvent) => {\n if ([' ', 'Enter', 'ArrowDown'].includes(event.key)) {\n event.preventDefault();\n context.onOpenChange(true);\n }\n })}\n />\n </MenuPrimitive.Anchor>\n ) : null;\n }\n);\n\nDropdownMenuTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'DropdownMenuContent';\n\nconst ContentContext = React.createContext(false);\n\ntype DropdownMenuContentElement =\n | DropdownMenuRootContentElement\n | React.ElementRef<typeof MenuPrimitive.Content>;\ntype MenuContentProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Content>;\ninterface DropdownMenuContentProps extends DropdownMenuRootContentProps, MenuContentProps {}\n\nconst DropdownMenuContent = React.forwardRef<DropdownMenuContentElement, DropdownMenuContentProps>(\n (props, forwardedRef) => {\n const context = useDropdownMenuContext(CONTENT_NAME);\n const commonProps = {\n ...props,\n style: {\n ...props.style,\n // re-namespace exposed content custom property\n ['--radix-dropdown-menu-content-transform-origin' as any]:\n 'var(--radix-popper-transform-origin)',\n },\n };\n\n return (\n <ContentContext.Provider value={true}>\n {context.isRootMenu ? (\n <DropdownMenuRootContent {...commonProps} ref={forwardedRef} />\n ) : (\n <MenuPrimitive.Content {...commonProps} ref={forwardedRef} />\n )}\n </ContentContext.Provider>\n );\n }\n);\n\nDropdownMenuContent.displayName = CONTENT_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype DropdownMenuRootContentElement = React.ElementRef<typeof MenuPrimitive.Content>;\ninterface DropdownMenuRootContentProps extends MenuContentProps {}\n\nconst DropdownMenuRootContent = React.forwardRef<\n DropdownMenuRootContentElement,\n DropdownMenuRootContentProps\n>((props, forwardedRef) => {\n const { portalled = true, ...contentProps } = props;\n const context = useDropdownMenuContext(CONTENT_NAME);\n const hasInteractedOutsideRef = React.useRef(false);\n\n return context.isRootMenu ? (\n <MenuPrimitive.Content\n id={context.contentId}\n aria-labelledby={context.triggerId}\n {...contentProps}\n ref={forwardedRef}\n portalled={portalled}\n onCloseAutoFocus={(event) => {\n props.onCloseAutoFocus?.(event);\n\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\n\n hasInteractedOutsideRef.current = false;\n }}\n onInteractOutside={(event) => {\n props.onInteractOutside?.(event);\n\n if (!event.defaultPrevented) {\n const originalEvent = event.detail.originalEvent as PointerEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n\n if (!context.modal || isRightClick) hasInteractedOutsideRef.current = true;\n }\n\n // Prevent dismissing when clicking the trigger.\n // As the trigger is already setup to close, without doing so would\n // cause it to close and immediately open.\n //\n // We use `onInteractOutside` as some browsers also\n // focus on pointer down, creating the same issue.\n const target = event.target as HTMLElement;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n }}\n />\n ) : null;\n});\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst GROUP_NAME = 'DropdownMenuGroup';\n\ntype DropdownMenuGroupElement = React.ElementRef<typeof MenuPrimitive.Group>;\ntype MenuGroupProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Group>;\ninterface DropdownMenuGroupProps extends MenuGroupProps {}\n\nconst DropdownMenuGroup = React.forwardRef<DropdownMenuGroupElement, DropdownMenuGroupProps>(\n (props, forwardedRef) => <MenuPrimitive.Group {...props} ref={forwardedRef} />\n);\n\nDropdownMenuGroup.displayName = GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuLabel\n * -----------------------------------------------------------------------------------------------*/\n\nconst LABEL_NAME = 'DropdownMenuLabel';\n\ntype DropdownMenuLabelElement = React.ElementRef<typeof MenuPrimitive.Label>;\ntype MenuLabelProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Label>;\ninterface DropdownMenuLabelProps extends MenuLabelProps {}\n\nconst DropdownMenuLabel = React.forwardRef<DropdownMenuLabelElement, DropdownMenuLabelProps>(\n (props, forwardedRef) => <MenuPrimitive.Label {...props} ref={forwardedRef} />\n);\n\nDropdownMenuLabel.displayName = LABEL_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'DropdownMenuItem';\n\ntype DropdownMenuItemElement = React.ElementRef<typeof MenuPrimitive.Item>;\ntype MenuItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Item>;\ninterface DropdownMenuItemProps extends MenuItemProps {}\n\nconst DropdownMenuItem = React.forwardRef<DropdownMenuItemElement, DropdownMenuItemProps>(\n (props, forwardedRef) => <MenuPrimitive.Item {...props} ref={forwardedRef} />\n);\n\nDropdownMenuItem.displayName = ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuTriggerItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_ITEM_NAME = 'DropdownMenuTriggerItem';\n\ntype DropdownMenuTriggerItemElement = React.ElementRef<typeof MenuPrimitive.SubTrigger>;\ntype MenuSubTriggerProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.SubTrigger>;\ninterface DropdownMenuTriggerItemProps extends MenuSubTriggerProps {}\n\nconst DropdownMenuTriggerItem = React.forwardRef<\n DropdownMenuTriggerItemElement,\n DropdownMenuTriggerItemProps\n>((props, forwardedRef) => <MenuPrimitive.SubTrigger {...props} ref={forwardedRef} />);\n\nDropdownMenuTriggerItem.displayName = TRIGGER_ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuCheckboxItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst CHECKBOX_ITEM_NAME = 'DropdownMenuCheckboxItem';\n\ntype DropdownMenuCheckboxItemElement = React.ElementRef<typeof MenuPrimitive.CheckboxItem>;\ntype MenuCheckboxItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.CheckboxItem>;\ninterface DropdownMenuCheckboxItemProps extends MenuCheckboxItemProps {}\n\nconst DropdownMenuCheckboxItem = React.forwardRef<\n DropdownMenuCheckboxItemElement,\n DropdownMenuCheckboxItemProps\n>((props, forwardedRef) => <MenuPrimitive.CheckboxItem {...props} ref={forwardedRef} />);\n\nDropdownMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuRadioGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_GROUP_NAME = 'DropdownMenuRadioGroup';\n\ntype DropdownMenuRadioGroupElement = React.ElementRef<typeof MenuPrimitive.RadioGroup>;\ntype MenuRadioGroupProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.RadioGroup>;\ninterface DropdownMenuRadioGroupProps extends MenuRadioGroupProps {}\n\nconst DropdownMenuRadioGroup = React.forwardRef<\n DropdownMenuRadioGroupElement,\n DropdownMenuRadioGroupProps\n>((props, forwardedRef) => <MenuPrimitive.RadioGroup {...props} ref={forwardedRef} />);\n\nDropdownMenuRadioGroup.displayName = RADIO_GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuRadioItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_ITEM_NAME = 'DropdownMenuRadioItem';\n\ntype DropdownMenuRadioItemElement = React.ElementRef<typeof MenuPrimitive.RadioItem>;\ntype MenuRadioItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.RadioItem>;\ninterface DropdownMenuRadioItemProps extends MenuRadioItemProps {}\n\nconst DropdownMenuRadioItem = React.forwardRef<\n DropdownMenuRadioItemElement,\n DropdownMenuRadioItemProps\n>((props, forwardedRef) => <MenuPrimitive.RadioItem {...props} ref={forwardedRef} />);\n\nDropdownMenuRadioItem.displayName = RADIO_ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuItemIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'DropdownMenuItemIndicator';\n\ntype DropdownMenuItemIndicatorElement = React.ElementRef<typeof MenuPrimitive.ItemIndicator>;\ntype MenuItemIndicatorProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.ItemIndicator>;\ninterface DropdownMenuItemIndicatorProps extends MenuItemIndicatorProps {}\n\nconst DropdownMenuItemIndicator = React.forwardRef<\n DropdownMenuItemIndicatorElement,\n DropdownMenuItemIndicatorProps\n>((props, forwardedRef) => <MenuPrimitive.ItemIndicator {...props} ref={forwardedRef} />);\n\nDropdownMenuItemIndicator.displayName = INDICATOR_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuSeparator\n * -----------------------------------------------------------------------------------------------*/\n\nconst SEPARATOR_NAME = 'DropdownMenuSeparator';\n\ntype DropdownMenuSeparatorElement = React.ElementRef<typeof MenuPrimitive.Separator>;\ntype MenuSeparatorProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Separator>;\ninterface DropdownMenuSeparatorProps extends MenuSeparatorProps {}\n\nconst DropdownMenuSeparator = React.forwardRef<\n DropdownMenuSeparatorElement,\n DropdownMenuSeparatorProps\n>((props, forwardedRef) => <MenuPrimitive.Separator {...props} ref={forwardedRef} />);\n\nDropdownMenuSeparator.displayName = SEPARATOR_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuArrow\n * -----------------------------------------------------------------------------------------------*/\n\nconst ARROW_NAME = 'DropdownMenuArrow';\n\ntype DropdownMenuArrowElement = React.ElementRef<typeof MenuPrimitive.Arrow>;\ntype MenuArrowProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Arrow>;\ninterface DropdownMenuArrowProps extends MenuArrowProps {}\n\nconst DropdownMenuArrow = React.forwardRef<DropdownMenuArrowElement, DropdownMenuArrowProps>(\n (props, forwardedRef) => <MenuPrimitive.Arrow {...props} ref={forwardedRef} />\n);\n\nDropdownMenuArrow.displayName = ARROW_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = DropdownMenu;\nconst Trigger = DropdownMenuTrigger;\nconst Content = DropdownMenuContent;\nconst Group = DropdownMenuGroup;\nconst Label = DropdownMenuLabel;\nconst Item = DropdownMenuItem;\nconst TriggerItem = DropdownMenuTriggerItem;\nconst CheckboxItem = DropdownMenuCheckboxItem;\nconst RadioGroup = DropdownMenuRadioGroup;\nconst RadioItem = DropdownMenuRadioItem;\nconst ItemIndicator = DropdownMenuItemIndicator;\nconst Separator = DropdownMenuSeparator;\nconst Arrow = DropdownMenuArrow;\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuTriggerItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuItemIndicator,\n DropdownMenuSeparator,\n DropdownMenuArrow,\n //\n Root,\n Trigger,\n Content,\n Group,\n Label,\n Item,\n TriggerItem,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n};\nexport type {\n DropdownMenuProps,\n DropdownMenuTriggerProps,\n DropdownMenuContentProps,\n DropdownMenuGroupProps,\n DropdownMenuLabelProps,\n DropdownMenuItemProps,\n DropdownMenuTriggerItemProps,\n DropdownMenuCheckboxItemProps,\n DropdownMenuRadioGroupProps,\n DropdownMenuRadioItemProps,\n DropdownMenuItemIndicatorProps,\n DropdownMenuSeparatorProps,\n DropdownMenuArrowProps,\n};\n"],"names":["a","__esModule","default","$parcel$exportWildcard","dest","source","Object","keys","forEach","key","defineProperty","enumerable","get","DropdownMenuProvider","useDropdownMenuContext","createContext","DropdownMenu","props","children","open","openProp","defaultOpen","onOpenChange","dir","modal","isInsideContent","React","useContext","ContentContext","setOpen","useControllableState","prop","defaultProp","onChange","handleOpenToggle","useCallback","prevOpen","_react","createElement","$e185b8015793f9eefe208950c9dca8be$var$DropdownMenuProvider","isRootMenu","onOpenToggle","_radixUiReactMenu","Sub","$e185b8015793f9eefe208950c9dca8be$var$DropdownMenuRoot","DropdownMenuRoot","triggerRef","useRef","triggerId","useId","contentId","Root","DropdownMenuTrigger","forwardRef","forwardedRef","context","Anchor","asChild","Primitive","button","_babelRuntimeHelpersExtends","type","id","undefined","ref","composeRefs","onPointerDown","composeEventHandlers","event","ctrlKey","preventDefault","onKeyDown","includes","DropdownMenuContent","commonProps","style","$e185b8015793f9eefe208950c9dca8be$var$ContentContext","Provider","value","$e185b8015793f9eefe208950c9dca8be$var$DropdownMenuRootContent","Content","DropdownMenuRootContent","portalled","contentProps","hasInteractedOutsideRef","onCloseAutoFocus","_props$onCloseAutoFoc","_context$triggerRef$c","call","defaultPrevented","current","focus","onInteractOutside","_props$onInteractOuts","_context$triggerRef$c2","originalEvent","detail","ctrlLeftClick","isRightClick","target","contains","DropdownMenuGroup","Group","DropdownMenuLabel","Label","DropdownMenuItem","Item","DropdownMenuTriggerItem","SubTrigger","DropdownMenuCheckboxItem","CheckboxItem","DropdownMenuRadioGroup","RadioGroup","DropdownMenuRadioItem","RadioItem","DropdownMenuItemIndicator","ItemIndicator","DropdownMenuSeparator","Separator","DropdownMenuArrow","Arrow","Trigger","TriggerItem"],"version":3,"file":"index.js.map"}
@@ -1,2 +1,2 @@
1
- import{useId as e}from"@radix-ui/react-id";import*as o from"@radix-ui/react-menu";import{extendPrimitive as n}from"@radix-ui/react-primitive";import{useControllableState as r}from"@radix-ui/react-use-controllable-state";import{createContext as t}from"@radix-ui/react-context";import{composeRefs as p}from"@radix-ui/react-compose-refs";import{composeEventHandlers as a}from"@radix-ui/primitive";import*as d from"react";import i from"@babel/runtime/helpers/esm/extends";const[u,s]=t("DropdownMenu");export const DropdownMenu=e=>{const{children:n,open:t,defaultOpen:p,onOpenChange:a,dir:i}=e,s=d.useContext(m),[l=!1,w]=r({prop:t,defaultProp:p,onChange:a}),g=d.useCallback((()=>w((e=>!e))),[w]);return s?/*#__PURE__*/d.createElement(u,{isRootMenu:!1,open:l,onOpenChange:w,onOpenToggle:g},/*#__PURE__*/d.createElement(o.Sub,{open:l,onOpenChange:w},n)):/*#__PURE__*/d.createElement(c,{dir:i,open:l,onOpenChange:w,onOpenToggle:g},n)};/*#__PURE__*/const c=n=>{const{children:r,dir:t,open:p,onOpenChange:a,onOpenToggle:i}=n,s=d.useRef(null);/*#__PURE__*/return d.createElement(u,{isRootMenu:!0,triggerId:e(),triggerRef:s,contentId:e(),open:p,onOpenChange:a,onOpenToggle:i},/*#__PURE__*/d.createElement(o.Root,{open:p,onOpenChange:a,dir:t},r))},l="button";export const DropdownMenuTrigger=/*#__PURE__*/d.forwardRef(((e,n)=>{const{as:r=l,...t}=e,u=s("DropdownMenuTrigger");return u.isRootMenu?/*#__PURE__*/d.createElement(o.Anchor,i({type:"button",id:u.triggerId,"aria-haspopup":"menu","aria-expanded":!!u.open||void 0,"aria-controls":u.open?u.contentId:void 0,"data-state":u.open?"open":"closed"},t,{as:r,ref:p(n,u.triggerRef),onMouseDown:a(e.onMouseDown,(e=>{0===e.button&&!1===e.ctrlKey&&u.onOpenToggle()})),onKeyDown:a(e.onKeyDown,(e=>{[" ","Enter","ArrowDown"].includes(e.key)&&(e.preventDefault(),u.onOpenChange(!0))}))})):null}));/*#__PURE__*/const m=/*#__PURE__*/d.createContext(!1);export const DropdownMenuContent=/*#__PURE__*/d.forwardRef(((e,n)=>{const r=s("DropdownMenuContent"),t={...e,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)"}};/*#__PURE__*/return d.createElement(m.Provider,{value:!0},r.isRootMenu?/*#__PURE__*/d.createElement(w,i({},t,{ref:n})):/*#__PURE__*/d.createElement(o.Content,i({},t,{ref:n})))}));/*#__PURE__*/const w=/*#__PURE__*/d.forwardRef(((e,n)=>{const{disableOutsidePointerEvents:r=!0,disableOutsideScroll:t=!0,portalled:p=!0,...u}=e,c=s("DropdownMenuContent");return c.isRootMenu?/*#__PURE__*/d.createElement(o.Content,i({id:c.contentId,"aria-labelledby":c.triggerId},u,{ref:n,disableOutsidePointerEvents:r,disableOutsideScroll:t,portalled:p,trapFocus:!0,onCloseAutoFocus:a(e.onCloseAutoFocus,(e=>{var o;e.preventDefault(),null===(o=c.triggerRef.current)||void 0===o||o.focus()})),onPointerDownOutside:a(e.onPointerDownOutside,(e=>{var o;const n=e.target;(null===(o=c.triggerRef.current)||void 0===o?void 0:o.contains(n))&&e.preventDefault()}),{checkForDefaultPrevented:!1})})):null}));export const DropdownMenuGroup=n(o.Group,{displayName:"DropdownMenuGroup"});export const DropdownMenuLabel=n(o.Label,{displayName:"DropdownMenuLabel"});export const DropdownMenuTriggerItem=n(o.SubTrigger,{displayName:"DropdownMenuTriggerItem"});export const DropdownMenuItem=n(o.Item,{displayName:"DropdownMenuItem"});export const DropdownMenuCheckboxItem=n(o.CheckboxItem,{displayName:"DropdownMenuCheckboxItem"});export const DropdownMenuRadioGroup=n(o.RadioGroup,{displayName:"DropdownMenuRadioGroup"});export const DropdownMenuRadioItem=n(o.RadioItem,{displayName:"DropdownMenuRadioItem"});export const DropdownMenuItemIndicator=n(o.ItemIndicator,{displayName:"DropdownMenuItemIndicator"});export const DropdownMenuSeparator=n(o.Separator,{displayName:"DropdownMenuSeparator"});export const DropdownMenuArrow=n(o.Arrow,{displayName:"DropdownMenuArrow"});export const Root=DropdownMenu;export const Trigger=DropdownMenuTrigger;export const Content=DropdownMenuContent;export const Group=DropdownMenuGroup;export const Label=DropdownMenuLabel;export const Item=DropdownMenuItem;export const TriggerItem=DropdownMenuTriggerItem;export const CheckboxItem=DropdownMenuCheckboxItem;export const RadioGroup=DropdownMenuRadioGroup;export const RadioItem=DropdownMenuRadioItem;export const ItemIndicator=DropdownMenuItemIndicator;export const Separator=DropdownMenuSeparator;export const Arrow=DropdownMenuArrow;
1
+ import{useId as e}from"@radix-ui/react-id";import*as o from"@radix-ui/react-menu";import{Primitive as r}from"@radix-ui/react-primitive";import{useControllableState as n}from"@radix-ui/react-use-controllable-state";import{createContext as t}from"@radix-ui/react-context";import{composeRefs as a}from"@radix-ui/react-compose-refs";import{composeEventHandlers as p}from"@radix-ui/primitive";import*as d from"react";import c from"@babel/runtime/helpers/esm/extends";const[u,i]=t("DropdownMenu");export const DropdownMenu=e=>{const{children:r,open:t,defaultOpen:a,onOpenChange:p,dir:c,modal:i=!0}=e,s=d.useContext(m),[f=!1,w]=n({prop:t,defaultProp:a,onChange:p}),g=d.useCallback((()=>w((e=>!e))),[w]);return s?/*#__PURE__*/d.createElement(u,{isRootMenu:!1,open:f,onOpenChange:w,onOpenToggle:g},/*#__PURE__*/d.createElement(o.Sub,{open:f,onOpenChange:w},r)):/*#__PURE__*/d.createElement(l,{dir:c,open:f,onOpenChange:w,onOpenToggle:g,modal:i},r)};/*#__PURE__*/const l=r=>{const{children:n,dir:t,open:a,onOpenChange:p,onOpenToggle:c,modal:i=!0}=r,l=d.useRef(null);/*#__PURE__*/return d.createElement(u,{isRootMenu:!0,triggerId:e(),triggerRef:l,contentId:e(),open:a,onOpenChange:p,onOpenToggle:c,modal:i},/*#__PURE__*/d.createElement(o.Root,{open:a,onOpenChange:p,dir:t,modal:i},n))};export const DropdownMenuTrigger=/*#__PURE__*/d.forwardRef(((e,n)=>{const t=i("DropdownMenuTrigger");return t.isRootMenu?/*#__PURE__*/d.createElement(o.Anchor,{asChild:!0},/*#__PURE__*/d.createElement(r.button,c({type:"button",id:t.triggerId,"aria-haspopup":"menu","aria-expanded":!!t.open||void 0,"aria-controls":t.open?t.contentId:void 0,"data-state":t.open?"open":"closed"},e,{ref:a(n,t.triggerRef),onPointerDown:p(e.onPointerDown,(e=>{0===e.button&&!1===e.ctrlKey&&(t.open||e.preventDefault(),t.onOpenToggle())})),onKeyDown:p(e.onKeyDown,(e=>{[" ","Enter","ArrowDown"].includes(e.key)&&(e.preventDefault(),t.onOpenChange(!0))}))}))):null}));/*#__PURE__*/const m=/*#__PURE__*/d.createContext(!1);export const DropdownMenuContent=/*#__PURE__*/d.forwardRef(((e,r)=>{const n=i("DropdownMenuContent"),t={...e,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)"}};/*#__PURE__*/return d.createElement(m.Provider,{value:!0},n.isRootMenu?/*#__PURE__*/d.createElement(s,c({},t,{ref:r})):/*#__PURE__*/d.createElement(o.Content,c({},t,{ref:r})))}));/*#__PURE__*/const s=/*#__PURE__*/d.forwardRef(((e,r)=>{const{portalled:n=!0,...t}=e,a=i("DropdownMenuContent"),p=d.useRef(!1);return a.isRootMenu?/*#__PURE__*/d.createElement(o.Content,c({id:a.contentId,"aria-labelledby":a.triggerId},t,{ref:r,portalled:n,onCloseAutoFocus:o=>{var r,n;(null===(r=e.onCloseAutoFocus)||void 0===r||r.call(e,o),o.defaultPrevented)||(p.current||null===(n=a.triggerRef.current)||void 0===n||n.focus(),o.preventDefault());p.current=!1},onInteractOutside:o=>{var r,n;if(null===(r=e.onInteractOutside)||void 0===r||r.call(e,o),!o.defaultPrevented){const e=o.detail.originalEvent,r=0===e.button&&!0===e.ctrlKey,n=2===e.button||r;a.modal&&!n||(p.current=!0)}const t=o.target;(null===(n=a.triggerRef.current)||void 0===n?void 0:n.contains(t))&&o.preventDefault()}})):null}));export const DropdownMenuGroup=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Group,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuLabel=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Label,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuItem=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Item,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuTriggerItem=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.SubTrigger,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuCheckboxItem=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.CheckboxItem,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuRadioGroup=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.RadioGroup,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuRadioItem=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.RadioItem,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuItemIndicator=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.ItemIndicator,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuSeparator=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Separator,c({},e,{ref:r}))));/*#__PURE__*/export const DropdownMenuArrow=/*#__PURE__*/d.forwardRef(((e,r)=>/*#__PURE__*/d.createElement(o.Arrow,c({},e,{ref:r}))));/*#__PURE__*/export const Root=DropdownMenu;export const Trigger=DropdownMenuTrigger;export const Content=DropdownMenuContent;export const Group=DropdownMenuGroup;export const Label=DropdownMenuLabel;export const Item=DropdownMenuItem;export const TriggerItem=DropdownMenuTriggerItem;export const CheckboxItem=DropdownMenuCheckboxItem;export const RadioGroup=DropdownMenuRadioGroup;export const RadioItem=DropdownMenuRadioItem;export const ItemIndicator=DropdownMenuItemIndicator;export const Separator=DropdownMenuSeparator;export const Arrow=DropdownMenuArrow;
2
2
  //# sourceMappingURL=index.module.js.map
@@ -1 +1 @@
1
- {"mappings":"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","sources":["./packages/react/dropdown-menu/src/DropdownMenu.tsx"],"sourcesContent":["import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { composeRefs } from '@radix-ui/react-compose-refs';\nimport { createContext } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { extendPrimitive } from '@radix-ui/react-primitive';\nimport * as MenuPrimitive from '@radix-ui/react-menu';\nimport { useId } from '@radix-ui/react-id';\n\nimport type * as Polymorphic from '@radix-ui/react-polymorphic';\n\ntype Direction = 'ltr' | 'rtl';\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenu\n * -----------------------------------------------------------------------------------------------*/\n\nconst DROPDOWN_MENU_NAME = 'DropdownMenu';\n\ntype DropdownMenuRootContextValue = {\n isRootMenu: true;\n triggerId: string;\n triggerRef: React.RefObject<HTMLButtonElement>;\n contentId: string;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\ntype DropdownMenuSubContextValue = {\n isRootMenu: false;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\nconst [DropdownMenuProvider, useDropdownMenuContext] = createContext<\n DropdownMenuRootContextValue | DropdownMenuSubContextValue\n>(DROPDOWN_MENU_NAME);\n\ntype DropdownMenuOwnProps = {\n dir?: Direction;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?(open: boolean): void;\n};\n\nconst DropdownMenu: React.FC<DropdownMenuOwnProps> = (props) => {\n const { children, open: openProp, defaultOpen, onOpenChange, dir } = props;\n const isInsideContent = React.useContext(ContentContext);\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const handleOpenToggle = React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]);\n\n return isInsideContent ? (\n <DropdownMenuProvider\n isRootMenu={false}\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={handleOpenToggle}\n >\n <MenuPrimitive.Sub open={open} onOpenChange={setOpen}>\n {children}\n </MenuPrimitive.Sub>\n </DropdownMenuProvider>\n ) : (\n <DropdownMenuRoot dir={dir} open={open} onOpenChange={setOpen} onOpenToggle={handleOpenToggle}>\n {children}\n </DropdownMenuRoot>\n );\n};\n\nDropdownMenu.displayName = DROPDOWN_MENU_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype DropdownMenuRootOwnProps = {\n dir?: Direction;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\nconst DropdownMenuRoot: React.FC<DropdownMenuRootOwnProps> = (props) => {\n const { children, dir, open, onOpenChange, onOpenToggle } = props;\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n return (\n <DropdownMenuProvider\n isRootMenu={true}\n triggerId={useId()}\n triggerRef={triggerRef}\n contentId={useId()}\n open={open}\n onOpenChange={onOpenChange}\n onOpenToggle={onOpenToggle}\n >\n <MenuPrimitive.Root open={open} onOpenChange={onOpenChange} dir={dir}>\n {children}\n </MenuPrimitive.Root>\n </DropdownMenuProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'DropdownMenuTrigger';\nconst TRIGGER_DEFAULT_TAG = 'button';\n\ntype DropdownMenuTriggerOwnProps = Omit<\n Polymorphic.OwnProps<typeof MenuPrimitive.Anchor>,\n 'virtualRef'\n>;\ntype DropdownMenuTriggerPrimitive = Polymorphic.ForwardRefComponent<\n typeof TRIGGER_DEFAULT_TAG,\n DropdownMenuTriggerOwnProps\n>;\n\nconst DropdownMenuTrigger = React.forwardRef((props, forwardedRef) => {\n const { as = TRIGGER_DEFAULT_TAG, ...triggerProps } = props;\n const context = useDropdownMenuContext(TRIGGER_NAME);\n return context.isRootMenu ? (\n <MenuPrimitive.Anchor\n type=\"button\"\n id={context.triggerId}\n aria-haspopup=\"menu\"\n aria-expanded={context.open ? true : undefined}\n aria-controls={context.open ? context.contentId : undefined}\n data-state={context.open ? 'open' : 'closed'}\n {...triggerProps}\n as={as}\n ref={composeRefs(forwardedRef, context.triggerRef)}\n onMouseDown={composeEventHandlers(props.onMouseDown, (event) => {\n // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)\n // but not when the control key is pressed (avoiding MacOS right click)\n if (event.button === 0 && event.ctrlKey === false) {\n context.onOpenToggle();\n }\n })}\n onKeyDown={composeEventHandlers(props.onKeyDown, (event: React.KeyboardEvent) => {\n if ([' ', 'Enter', 'ArrowDown'].includes(event.key)) {\n event.preventDefault();\n context.onOpenChange(true);\n }\n })}\n />\n ) : null;\n}) as DropdownMenuTriggerPrimitive;\n\nDropdownMenuTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'DropdownMenuContent';\n\nconst ContentContext = React.createContext(false);\n\ntype DropdownMenuContentOwnProps = Omit<\n Polymorphic.OwnProps<typeof MenuPrimitive.Content>,\n 'trapFocus'\n>;\n\ntype DropdownMenuContentPrimitive = Polymorphic.ForwardRefComponent<\n Polymorphic.IntrinsicElement<typeof MenuPrimitive.Content>,\n DropdownMenuContentOwnProps\n>;\n\nconst DropdownMenuContent = React.forwardRef((props, forwardedRef) => {\n const context = useDropdownMenuContext(CONTENT_NAME);\n const commonProps = {\n ...props,\n style: {\n ...props.style,\n // re-namespace exposed content custom property\n ['--radix-dropdown-menu-content-transform-origin' as any]: 'var(--radix-popper-transform-origin)',\n },\n };\n\n return (\n <ContentContext.Provider value={true}>\n {context.isRootMenu ? (\n <DropdownMenuRootContent {...commonProps} ref={forwardedRef} />\n ) : (\n <MenuPrimitive.Content {...commonProps} ref={forwardedRef} />\n )}\n </ContentContext.Provider>\n );\n}) as DropdownMenuContentPrimitive;\n\nDropdownMenuContent.displayName = CONTENT_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype DropdownMenuRootContentOwnProps = Polymorphic.OwnProps<typeof MenuPrimitive.Content>;\ntype DropdownMenuRootContentPrimitive = Polymorphic.ForwardRefComponent<\n Polymorphic.IntrinsicElement<typeof MenuPrimitive.Content>,\n DropdownMenuRootContentOwnProps\n>;\n\nconst DropdownMenuRootContent = React.forwardRef((props, forwardedRef) => {\n const {\n disableOutsidePointerEvents = true,\n disableOutsideScroll = true,\n portalled = true,\n ...contentProps\n } = props;\n const context = useDropdownMenuContext(CONTENT_NAME);\n\n return context.isRootMenu ? (\n <MenuPrimitive.Content\n id={context.contentId}\n aria-labelledby={context.triggerId}\n {...contentProps}\n ref={forwardedRef}\n disableOutsidePointerEvents={disableOutsidePointerEvents}\n disableOutsideScroll={disableOutsideScroll}\n portalled={portalled}\n trapFocus\n onCloseAutoFocus={composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n context.triggerRef.current?.focus();\n })}\n onPointerDownOutside={composeEventHandlers(\n props.onPointerDownOutside,\n (event) => {\n const target = event.target as HTMLElement;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n // prevent dismissing when clicking the trigger\n // as it's already setup to close, otherwise it would close and immediately open.\n if (targetIsTrigger) event.preventDefault();\n },\n { checkForDefaultPrevented: false }\n )}\n />\n ) : null;\n}) as DropdownMenuRootContentPrimitive;\n\n/* ---------------------------------------------------------------------------------------------- */\n\nconst DropdownMenuGroup = extendPrimitive(MenuPrimitive.Group, {\n displayName: 'DropdownMenuGroup',\n});\nconst DropdownMenuLabel = extendPrimitive(MenuPrimitive.Label, {\n displayName: 'DropdownMenuLabel',\n});\nconst DropdownMenuTriggerItem = extendPrimitive(MenuPrimitive.SubTrigger, {\n displayName: 'DropdownMenuTriggerItem',\n});\nconst DropdownMenuItem = extendPrimitive(MenuPrimitive.Item, { displayName: 'DropdownMenuItem' });\nconst DropdownMenuCheckboxItem = extendPrimitive(MenuPrimitive.CheckboxItem, {\n displayName: 'DropdownMenuCheckboxItem',\n});\nconst DropdownMenuRadioGroup = extendPrimitive(MenuPrimitive.RadioGroup, {\n displayName: 'DropdownMenuRadioGroup',\n});\nconst DropdownMenuRadioItem = extendPrimitive(MenuPrimitive.RadioItem, {\n displayName: 'DropdownMenuRadioItem',\n});\nconst DropdownMenuItemIndicator = extendPrimitive(MenuPrimitive.ItemIndicator, {\n displayName: 'DropdownMenuItemIndicator',\n});\nconst DropdownMenuSeparator = extendPrimitive(MenuPrimitive.Separator, {\n displayName: 'DropdownMenuSeparator',\n});\nconst DropdownMenuArrow = extendPrimitive(MenuPrimitive.Arrow, {\n displayName: 'DropdownMenuArrow',\n});\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = DropdownMenu;\nconst Trigger = DropdownMenuTrigger;\nconst Content = DropdownMenuContent;\nconst Group = DropdownMenuGroup;\nconst Label = DropdownMenuLabel;\nconst Item = DropdownMenuItem;\nconst TriggerItem = DropdownMenuTriggerItem;\nconst CheckboxItem = DropdownMenuCheckboxItem;\nconst RadioGroup = DropdownMenuRadioGroup;\nconst RadioItem = DropdownMenuRadioItem;\nconst ItemIndicator = DropdownMenuItemIndicator;\nconst Separator = DropdownMenuSeparator;\nconst Arrow = DropdownMenuArrow;\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuTriggerItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuItemIndicator,\n DropdownMenuSeparator,\n DropdownMenuArrow,\n //\n Root,\n Trigger,\n Content,\n Group,\n Label,\n Item,\n TriggerItem,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n};\nexport type { DropdownMenuTriggerPrimitive, DropdownMenuContentPrimitive };\n"],"names":["DropdownMenuProvider","useDropdownMenuContext","createContext","DropdownMenu","props","children","open","openProp","defaultOpen","onOpenChange","dir","isInsideContent","React","useContext","ContentContext","setOpen","useControllableState","prop","defaultProp","onChange","handleOpenToggle","useCallback","prevOpen","_react","createElement","$c7ff2201b6eec7866a95d2679b05981$var$DropdownMenuProvider","isRootMenu","onOpenToggle","_radixUiReactMenu","Sub","$c7ff2201b6eec7866a95d2679b05981$var$DropdownMenuRoot","DropdownMenuRoot","triggerRef","useRef","triggerId","useId","contentId","Root","TRIGGER_DEFAULT_TAG","DropdownMenuTrigger","forwardRef","forwardedRef","as","triggerProps","context","Anchor","_babelRuntimeHelpersEsmExtends","type","id","aria-haspopup","aria-expanded","undefined","aria-controls","data-state","ref","composeRefs","onMouseDown","composeEventHandlers","event","button","ctrlKey","onKeyDown","includes","key","preventDefault","DropdownMenuContent","commonProps","style","--radix-dropdown-menu-content-transform-origin","$c7ff2201b6eec7866a95d2679b05981$var$ContentContext","Provider","value","$c7ff2201b6eec7866a95d2679b05981$var$DropdownMenuRootContent","Content","DropdownMenuRootContent","disableOutsidePointerEvents","disableOutsideScroll","portalled","contentProps","aria-labelledby","trapFocus","onCloseAutoFocus","_context$triggerRef$c","current","focus","onPointerDownOutside","_context$triggerRef$c2","target","contains","checkForDefaultPrevented","DropdownMenuGroup","extendPrimitive","MenuPrimitive","Group","displayName","DropdownMenuLabel","Label","DropdownMenuTriggerItem","SubTrigger","DropdownMenuItem","Item","DropdownMenuCheckboxItem","CheckboxItem","DropdownMenuRadioGroup","RadioGroup","DropdownMenuRadioItem","RadioItem","DropdownMenuItemIndicator","ItemIndicator","DropdownMenuSeparator","Separator","DropdownMenuArrow","Arrow","Trigger","TriggerItem"],"version":3,"file":"index.module.js.map"}
1
+ {"mappings":"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","sources":["./packages/react/dropdown-menu/src/DropdownMenu.tsx"],"sourcesContent":["import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { composeRefs } from '@radix-ui/react-compose-refs';\nimport { createContext } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport * as MenuPrimitive from '@radix-ui/react-menu';\nimport { useId } from '@radix-ui/react-id';\n\nimport type * as Radix from '@radix-ui/react-primitive';\n\ntype Direction = 'ltr' | 'rtl';\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenu\n * -----------------------------------------------------------------------------------------------*/\n\nconst DROPDOWN_MENU_NAME = 'DropdownMenu';\n\ntype DropdownMenuRootContextValue = {\n isRootMenu: true;\n triggerId: string;\n triggerRef: React.RefObject<HTMLButtonElement>;\n contentId: string;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n modal: boolean;\n};\n\ntype DropdownMenuSubContextValue = {\n isRootMenu: false;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n};\n\nconst [DropdownMenuProvider, useDropdownMenuContext] = createContext<\n DropdownMenuRootContextValue | DropdownMenuSubContextValue\n>(DROPDOWN_MENU_NAME);\n\ninterface DropdownMenuProps {\n dir?: Direction;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?(open: boolean): void;\n modal?: boolean;\n}\n\nconst DropdownMenu: React.FC<DropdownMenuProps> = (props) => {\n const { children, open: openProp, defaultOpen, onOpenChange, dir, modal = true } = props;\n const isInsideContent = React.useContext(ContentContext);\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const handleOpenToggle = React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]);\n\n return isInsideContent ? (\n <DropdownMenuProvider\n isRootMenu={false}\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={handleOpenToggle}\n >\n <MenuPrimitive.Sub open={open} onOpenChange={setOpen}>\n {children}\n </MenuPrimitive.Sub>\n </DropdownMenuProvider>\n ) : (\n <DropdownMenuRoot\n dir={dir}\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={handleOpenToggle}\n modal={modal}\n >\n {children}\n </DropdownMenuRoot>\n );\n};\n\nDropdownMenu.displayName = DROPDOWN_MENU_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ninterface DropdownMenuRootProps {\n dir?: Direction;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n modal?: boolean;\n}\n\nconst DropdownMenuRoot: React.FC<DropdownMenuRootProps> = (props) => {\n const { children, dir, open, onOpenChange, onOpenToggle, modal = true } = props;\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n return (\n <DropdownMenuProvider\n isRootMenu={true}\n triggerId={useId()}\n triggerRef={triggerRef}\n contentId={useId()}\n open={open}\n onOpenChange={onOpenChange}\n onOpenToggle={onOpenToggle}\n modal={modal}\n >\n <MenuPrimitive.Root open={open} onOpenChange={onOpenChange} dir={dir} modal={modal}>\n {children}\n </MenuPrimitive.Root>\n </DropdownMenuProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'DropdownMenuTrigger';\n\ntype DropdownMenuTriggerElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface DropdownMenuTriggerProps extends PrimitiveButtonProps {}\n\nconst DropdownMenuTrigger = React.forwardRef<DropdownMenuTriggerElement, DropdownMenuTriggerProps>(\n (props, forwardedRef) => {\n const context = useDropdownMenuContext(TRIGGER_NAME);\n return context.isRootMenu ? (\n <MenuPrimitive.Anchor asChild>\n <Primitive.button\n type=\"button\"\n id={context.triggerId}\n aria-haspopup=\"menu\"\n aria-expanded={context.open ? true : undefined}\n aria-controls={context.open ? context.contentId : undefined}\n data-state={context.open ? 'open' : 'closed'}\n {...props}\n ref={composeRefs(forwardedRef, context.triggerRef)}\n onPointerDown={composeEventHandlers(props.onPointerDown, (event) => {\n // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)\n // but not when the control key is pressed (avoiding MacOS right click)\n if (event.button === 0 && event.ctrlKey === false) {\n // prevent trigger focusing when opening\n // this allows the content to be given focus without competition\n if (!context.open) event.preventDefault();\n context.onOpenToggle();\n }\n })}\n onKeyDown={composeEventHandlers(props.onKeyDown, (event: React.KeyboardEvent) => {\n if ([' ', 'Enter', 'ArrowDown'].includes(event.key)) {\n event.preventDefault();\n context.onOpenChange(true);\n }\n })}\n />\n </MenuPrimitive.Anchor>\n ) : null;\n }\n);\n\nDropdownMenuTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'DropdownMenuContent';\n\nconst ContentContext = React.createContext(false);\n\ntype DropdownMenuContentElement =\n | DropdownMenuRootContentElement\n | React.ElementRef<typeof MenuPrimitive.Content>;\ntype MenuContentProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Content>;\ninterface DropdownMenuContentProps extends DropdownMenuRootContentProps, MenuContentProps {}\n\nconst DropdownMenuContent = React.forwardRef<DropdownMenuContentElement, DropdownMenuContentProps>(\n (props, forwardedRef) => {\n const context = useDropdownMenuContext(CONTENT_NAME);\n const commonProps = {\n ...props,\n style: {\n ...props.style,\n // re-namespace exposed content custom property\n ['--radix-dropdown-menu-content-transform-origin' as any]:\n 'var(--radix-popper-transform-origin)',\n },\n };\n\n return (\n <ContentContext.Provider value={true}>\n {context.isRootMenu ? (\n <DropdownMenuRootContent {...commonProps} ref={forwardedRef} />\n ) : (\n <MenuPrimitive.Content {...commonProps} ref={forwardedRef} />\n )}\n </ContentContext.Provider>\n );\n }\n);\n\nDropdownMenuContent.displayName = CONTENT_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype DropdownMenuRootContentElement = React.ElementRef<typeof MenuPrimitive.Content>;\ninterface DropdownMenuRootContentProps extends MenuContentProps {}\n\nconst DropdownMenuRootContent = React.forwardRef<\n DropdownMenuRootContentElement,\n DropdownMenuRootContentProps\n>((props, forwardedRef) => {\n const { portalled = true, ...contentProps } = props;\n const context = useDropdownMenuContext(CONTENT_NAME);\n const hasInteractedOutsideRef = React.useRef(false);\n\n return context.isRootMenu ? (\n <MenuPrimitive.Content\n id={context.contentId}\n aria-labelledby={context.triggerId}\n {...contentProps}\n ref={forwardedRef}\n portalled={portalled}\n onCloseAutoFocus={(event) => {\n props.onCloseAutoFocus?.(event);\n\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\n\n hasInteractedOutsideRef.current = false;\n }}\n onInteractOutside={(event) => {\n props.onInteractOutside?.(event);\n\n if (!event.defaultPrevented) {\n const originalEvent = event.detail.originalEvent as PointerEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n\n if (!context.modal || isRightClick) hasInteractedOutsideRef.current = true;\n }\n\n // Prevent dismissing when clicking the trigger.\n // As the trigger is already setup to close, without doing so would\n // cause it to close and immediately open.\n //\n // We use `onInteractOutside` as some browsers also\n // focus on pointer down, creating the same issue.\n const target = event.target as HTMLElement;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n }}\n />\n ) : null;\n});\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst GROUP_NAME = 'DropdownMenuGroup';\n\ntype DropdownMenuGroupElement = React.ElementRef<typeof MenuPrimitive.Group>;\ntype MenuGroupProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Group>;\ninterface DropdownMenuGroupProps extends MenuGroupProps {}\n\nconst DropdownMenuGroup = React.forwardRef<DropdownMenuGroupElement, DropdownMenuGroupProps>(\n (props, forwardedRef) => <MenuPrimitive.Group {...props} ref={forwardedRef} />\n);\n\nDropdownMenuGroup.displayName = GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuLabel\n * -----------------------------------------------------------------------------------------------*/\n\nconst LABEL_NAME = 'DropdownMenuLabel';\n\ntype DropdownMenuLabelElement = React.ElementRef<typeof MenuPrimitive.Label>;\ntype MenuLabelProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Label>;\ninterface DropdownMenuLabelProps extends MenuLabelProps {}\n\nconst DropdownMenuLabel = React.forwardRef<DropdownMenuLabelElement, DropdownMenuLabelProps>(\n (props, forwardedRef) => <MenuPrimitive.Label {...props} ref={forwardedRef} />\n);\n\nDropdownMenuLabel.displayName = LABEL_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'DropdownMenuItem';\n\ntype DropdownMenuItemElement = React.ElementRef<typeof MenuPrimitive.Item>;\ntype MenuItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Item>;\ninterface DropdownMenuItemProps extends MenuItemProps {}\n\nconst DropdownMenuItem = React.forwardRef<DropdownMenuItemElement, DropdownMenuItemProps>(\n (props, forwardedRef) => <MenuPrimitive.Item {...props} ref={forwardedRef} />\n);\n\nDropdownMenuItem.displayName = ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuTriggerItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_ITEM_NAME = 'DropdownMenuTriggerItem';\n\ntype DropdownMenuTriggerItemElement = React.ElementRef<typeof MenuPrimitive.SubTrigger>;\ntype MenuSubTriggerProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.SubTrigger>;\ninterface DropdownMenuTriggerItemProps extends MenuSubTriggerProps {}\n\nconst DropdownMenuTriggerItem = React.forwardRef<\n DropdownMenuTriggerItemElement,\n DropdownMenuTriggerItemProps\n>((props, forwardedRef) => <MenuPrimitive.SubTrigger {...props} ref={forwardedRef} />);\n\nDropdownMenuTriggerItem.displayName = TRIGGER_ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuCheckboxItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst CHECKBOX_ITEM_NAME = 'DropdownMenuCheckboxItem';\n\ntype DropdownMenuCheckboxItemElement = React.ElementRef<typeof MenuPrimitive.CheckboxItem>;\ntype MenuCheckboxItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.CheckboxItem>;\ninterface DropdownMenuCheckboxItemProps extends MenuCheckboxItemProps {}\n\nconst DropdownMenuCheckboxItem = React.forwardRef<\n DropdownMenuCheckboxItemElement,\n DropdownMenuCheckboxItemProps\n>((props, forwardedRef) => <MenuPrimitive.CheckboxItem {...props} ref={forwardedRef} />);\n\nDropdownMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuRadioGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_GROUP_NAME = 'DropdownMenuRadioGroup';\n\ntype DropdownMenuRadioGroupElement = React.ElementRef<typeof MenuPrimitive.RadioGroup>;\ntype MenuRadioGroupProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.RadioGroup>;\ninterface DropdownMenuRadioGroupProps extends MenuRadioGroupProps {}\n\nconst DropdownMenuRadioGroup = React.forwardRef<\n DropdownMenuRadioGroupElement,\n DropdownMenuRadioGroupProps\n>((props, forwardedRef) => <MenuPrimitive.RadioGroup {...props} ref={forwardedRef} />);\n\nDropdownMenuRadioGroup.displayName = RADIO_GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuRadioItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_ITEM_NAME = 'DropdownMenuRadioItem';\n\ntype DropdownMenuRadioItemElement = React.ElementRef<typeof MenuPrimitive.RadioItem>;\ntype MenuRadioItemProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.RadioItem>;\ninterface DropdownMenuRadioItemProps extends MenuRadioItemProps {}\n\nconst DropdownMenuRadioItem = React.forwardRef<\n DropdownMenuRadioItemElement,\n DropdownMenuRadioItemProps\n>((props, forwardedRef) => <MenuPrimitive.RadioItem {...props} ref={forwardedRef} />);\n\nDropdownMenuRadioItem.displayName = RADIO_ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuItemIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'DropdownMenuItemIndicator';\n\ntype DropdownMenuItemIndicatorElement = React.ElementRef<typeof MenuPrimitive.ItemIndicator>;\ntype MenuItemIndicatorProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.ItemIndicator>;\ninterface DropdownMenuItemIndicatorProps extends MenuItemIndicatorProps {}\n\nconst DropdownMenuItemIndicator = React.forwardRef<\n DropdownMenuItemIndicatorElement,\n DropdownMenuItemIndicatorProps\n>((props, forwardedRef) => <MenuPrimitive.ItemIndicator {...props} ref={forwardedRef} />);\n\nDropdownMenuItemIndicator.displayName = INDICATOR_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuSeparator\n * -----------------------------------------------------------------------------------------------*/\n\nconst SEPARATOR_NAME = 'DropdownMenuSeparator';\n\ntype DropdownMenuSeparatorElement = React.ElementRef<typeof MenuPrimitive.Separator>;\ntype MenuSeparatorProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Separator>;\ninterface DropdownMenuSeparatorProps extends MenuSeparatorProps {}\n\nconst DropdownMenuSeparator = React.forwardRef<\n DropdownMenuSeparatorElement,\n DropdownMenuSeparatorProps\n>((props, forwardedRef) => <MenuPrimitive.Separator {...props} ref={forwardedRef} />);\n\nDropdownMenuSeparator.displayName = SEPARATOR_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DropdownMenuArrow\n * -----------------------------------------------------------------------------------------------*/\n\nconst ARROW_NAME = 'DropdownMenuArrow';\n\ntype DropdownMenuArrowElement = React.ElementRef<typeof MenuPrimitive.Arrow>;\ntype MenuArrowProps = Radix.ComponentPropsWithoutRef<typeof MenuPrimitive.Arrow>;\ninterface DropdownMenuArrowProps extends MenuArrowProps {}\n\nconst DropdownMenuArrow = React.forwardRef<DropdownMenuArrowElement, DropdownMenuArrowProps>(\n (props, forwardedRef) => <MenuPrimitive.Arrow {...props} ref={forwardedRef} />\n);\n\nDropdownMenuArrow.displayName = ARROW_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = DropdownMenu;\nconst Trigger = DropdownMenuTrigger;\nconst Content = DropdownMenuContent;\nconst Group = DropdownMenuGroup;\nconst Label = DropdownMenuLabel;\nconst Item = DropdownMenuItem;\nconst TriggerItem = DropdownMenuTriggerItem;\nconst CheckboxItem = DropdownMenuCheckboxItem;\nconst RadioGroup = DropdownMenuRadioGroup;\nconst RadioItem = DropdownMenuRadioItem;\nconst ItemIndicator = DropdownMenuItemIndicator;\nconst Separator = DropdownMenuSeparator;\nconst Arrow = DropdownMenuArrow;\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuTriggerItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuItemIndicator,\n DropdownMenuSeparator,\n DropdownMenuArrow,\n //\n Root,\n Trigger,\n Content,\n Group,\n Label,\n Item,\n TriggerItem,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n};\nexport type {\n DropdownMenuProps,\n DropdownMenuTriggerProps,\n DropdownMenuContentProps,\n DropdownMenuGroupProps,\n DropdownMenuLabelProps,\n DropdownMenuItemProps,\n DropdownMenuTriggerItemProps,\n DropdownMenuCheckboxItemProps,\n DropdownMenuRadioGroupProps,\n DropdownMenuRadioItemProps,\n DropdownMenuItemIndicatorProps,\n DropdownMenuSeparatorProps,\n DropdownMenuArrowProps,\n};\n"],"names":["DropdownMenuProvider","useDropdownMenuContext","createContext","DropdownMenu","props","children","open","openProp","defaultOpen","onOpenChange","dir","modal","isInsideContent","React","useContext","ContentContext","setOpen","useControllableState","prop","defaultProp","onChange","handleOpenToggle","useCallback","prevOpen","_react","createElement","$c7ff2201b6eec7866a95d2679b05981$var$DropdownMenuProvider","isRootMenu","onOpenToggle","_radixUiReactMenu","Sub","$c7ff2201b6eec7866a95d2679b05981$var$DropdownMenuRoot","DropdownMenuRoot","triggerRef","useRef","triggerId","useId","contentId","Root","DropdownMenuTrigger","forwardRef","forwardedRef","context","Anchor","asChild","Primitive","button","_babelRuntimeHelpersEsmExtends","type","id","undefined","ref","composeRefs","onPointerDown","composeEventHandlers","event","ctrlKey","preventDefault","onKeyDown","includes","key","DropdownMenuContent","commonProps","style","$c7ff2201b6eec7866a95d2679b05981$var$ContentContext","Provider","value","$c7ff2201b6eec7866a95d2679b05981$var$DropdownMenuRootContent","Content","DropdownMenuRootContent","portalled","contentProps","hasInteractedOutsideRef","onCloseAutoFocus","_props$onCloseAutoFoc","_context$triggerRef$c","call","defaultPrevented","current","focus","onInteractOutside","_props$onInteractOuts","_context$triggerRef$c2","originalEvent","detail","ctrlLeftClick","isRightClick","target","contains","DropdownMenuGroup","Group","DropdownMenuLabel","Label","DropdownMenuItem","Item","DropdownMenuTriggerItem","SubTrigger","DropdownMenuCheckboxItem","CheckboxItem","DropdownMenuRadioGroup","RadioGroup","DropdownMenuRadioItem","RadioItem","DropdownMenuItemIndicator","ItemIndicator","DropdownMenuSeparator","Separator","DropdownMenuArrow","Arrow","Trigger","TriggerItem"],"version":3,"file":"index.module.js.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@radix-ui/react-dropdown-menu",
3
- "version": "0.0.22",
3
+ "version": "0.1.0",
4
4
  "license": "MIT",
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/index.js",
@@ -13,19 +13,17 @@
13
13
  "sideEffects": false,
14
14
  "scripts": {
15
15
  "clean": "rm -rf dist",
16
- "prepublish": "yarn clean",
17
16
  "version": "yarn version"
18
17
  },
19
18
  "dependencies": {
20
19
  "@babel/runtime": "^7.13.10",
21
- "@radix-ui/primitive": "0.0.5",
22
- "@radix-ui/react-compose-refs": "0.0.5",
23
- "@radix-ui/react-context": "0.0.5",
24
- "@radix-ui/react-id": "0.0.6",
25
- "@radix-ui/react-menu": "0.0.21",
26
- "@radix-ui/react-polymorphic": "0.0.12",
27
- "@radix-ui/react-primitive": "0.0.14",
28
- "@radix-ui/react-use-controllable-state": "0.0.6"
20
+ "@radix-ui/primitive": "0.1.0",
21
+ "@radix-ui/react-compose-refs": "0.1.0",
22
+ "@radix-ui/react-context": "0.1.0",
23
+ "@radix-ui/react-id": "0.1.0",
24
+ "@radix-ui/react-menu": "0.1.0",
25
+ "@radix-ui/react-primitive": "0.1.0",
26
+ "@radix-ui/react-use-controllable-state": "0.1.0"
29
27
  },
30
28
  "peerDependencies": {
31
29
  "react": "^16.8 || ^17.0",