@radui/ui 1.0.1 → 1.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/components/Accordion.cjs +1 -1
- package/dist/components/Accordion.js +1 -1
- package/dist/components/AlertDialog.cjs +1 -1
- package/dist/components/AlertDialog.d.ts +61 -24
- package/dist/components/AlertDialog.js +1 -1
- package/dist/components/Avatar.cjs +1 -1
- package/dist/components/Avatar.d.ts +36 -6
- package/dist/components/Avatar.js +1 -1
- package/dist/components/AvatarGroup.cjs +1 -1
- package/dist/components/AvatarGroup.d.ts +39 -18
- package/dist/components/AvatarGroup.js +1 -1
- package/dist/components/{AvatarPrimitiveFallback-CBb0nHGD.cjs → AvatarPrimitiveFallback-BpUU1vNV.cjs} +1 -1
- package/dist/components/{AvatarPrimitiveFallback-C1siRii4.js → AvatarPrimitiveFallback-DIXB9Tnm.js} +1 -1
- package/dist/components/Badge.cjs +1 -1
- package/dist/components/Badge.js +1 -1
- package/dist/components/Breadcrumb.cjs +1 -1
- package/dist/components/Breadcrumb.js +1 -1
- package/dist/components/Button.cjs +1 -1
- package/dist/components/Button.js +1 -1
- package/dist/components/Callout.cjs +1 -1
- package/dist/components/Callout.d.ts +32 -18
- package/dist/components/Callout.js +1 -1
- package/dist/components/Card.cjs +1 -1
- package/dist/components/Card.d.ts +31 -16
- package/dist/components/Card.js +1 -1
- package/dist/components/Checkbox.cjs +1 -1
- package/dist/components/Checkbox.js +1 -1
- package/dist/components/CheckboxCards.cjs +1 -1
- package/dist/components/CheckboxCards.js +1 -1
- package/dist/components/CheckboxGroup.cjs +1 -1
- package/dist/components/CheckboxGroup.d.ts +6 -2
- package/dist/components/CheckboxGroup.js +1 -1
- package/dist/components/{CheckboxGroupPrimitive-DfHQYkep.js → CheckboxGroupPrimitive-BRCGIztp.js} +1 -1
- package/dist/components/{CheckboxGroupPrimitive-d9yBl6m5.cjs → CheckboxGroupPrimitive-C21WO4L3.cjs} +1 -1
- package/dist/components/Collapsible.cjs +1 -1
- package/dist/components/Collapsible.d.ts +34 -4
- package/dist/components/Collapsible.js +1 -1
- package/dist/components/Combobox.cjs +1 -1
- package/dist/components/Combobox.d.ts +57 -45
- package/dist/components/Combobox.js +1 -1
- package/dist/components/ComboboxPrimitive-BdX2jgpQ.js +1 -0
- package/dist/components/ComboboxPrimitive-CyO6ZH5T.cjs +1 -0
- package/dist/components/Command.cjs +1 -1
- package/dist/components/Command.d.ts +36 -8
- package/dist/components/Command.js +1 -1
- package/dist/components/ContextMenu.cjs +1 -1
- package/dist/components/ContextMenu.d.ts +25 -11
- package/dist/components/ContextMenu.js +1 -1
- package/dist/components/Dialog.cjs +1 -1
- package/dist/components/Dialog.d.ts +29 -4
- package/dist/components/Dialog.js +1 -1
- package/dist/components/Disclosure.cjs +1 -1
- package/dist/components/Disclosure.js +1 -1
- package/dist/components/Drawer.cjs +1 -1
- package/dist/components/Drawer.d.ts +31 -3
- package/dist/components/Drawer.js +1 -1
- package/dist/components/DropdownMenu.cjs +1 -1
- package/dist/components/DropdownMenu.d.ts +25 -11
- package/dist/components/DropdownMenu.js +1 -1
- package/dist/components/HoverCard.cjs +1 -1
- package/dist/components/HoverCard.d.ts +15 -1
- package/dist/components/HoverCard.js +1 -1
- package/dist/components/Label.cjs +1 -0
- package/dist/components/Label.d.ts +18 -0
- package/dist/components/Label.js +1 -0
- package/dist/components/Link.cjs +1 -1
- package/dist/components/Link.js +1 -1
- package/dist/components/LiveRegion.cjs +1 -1
- package/dist/components/LiveRegion.d.ts +2 -5
- package/dist/components/LiveRegion.js +1 -1
- package/dist/components/MenuPrimitive-Ctqo21Vd.cjs +1 -0
- package/dist/components/MenuPrimitive-Cy_MJfjG.js +1 -0
- package/dist/components/Menubar.cjs +1 -1
- package/dist/components/Menubar.d.ts +45 -16
- package/dist/components/Menubar.js +1 -1
- package/dist/components/Meter.cjs +1 -0
- package/dist/components/Meter.d.ts +44 -0
- package/dist/components/Meter.js +1 -0
- package/dist/components/Minimap.cjs +1 -1
- package/dist/components/Minimap.js +1 -1
- package/dist/components/NavigationMenu.cjs +1 -1
- package/dist/components/NavigationMenu.d.ts +2 -0
- package/dist/components/NavigationMenu.js +1 -1
- package/dist/components/Popover.cjs +1 -1
- package/dist/components/Popover.d.ts +64 -5
- package/dist/components/Popover.js +1 -1
- package/dist/components/Progress.cjs +1 -1
- package/dist/components/Progress.d.ts +14 -2
- package/dist/components/Progress.js +1 -1
- package/dist/components/Radio.cjs +1 -1
- package/dist/components/Radio.js +1 -1
- package/dist/components/RadioCards.cjs +1 -1
- package/dist/components/RadioCards.d.ts +22 -1
- package/dist/components/RadioCards.js +1 -1
- package/dist/components/RadioGroup.cjs +1 -1
- package/dist/components/RadioGroup.d.ts +27 -7
- package/dist/components/RadioGroup.js +1 -1
- package/dist/components/RadioGroupPrimitive-B0CrM2bi.cjs +1 -0
- package/dist/components/RadioGroupPrimitive-CnPy0zgW.js +1 -0
- package/dist/components/ScrollArea.cjs +1 -1
- package/dist/components/ScrollArea.d.ts +24 -13
- package/dist/components/ScrollArea.js +1 -1
- package/dist/components/Select.cjs +1 -1
- package/dist/components/Select.d.ts +52 -44
- package/dist/components/Select.js +1 -1
- package/dist/components/Separator.cjs +1 -1
- package/dist/components/Separator.d.ts +8 -1
- package/dist/components/Separator.js +1 -1
- package/dist/components/Slider.cjs +1 -1
- package/dist/components/Slider.js +1 -1
- package/dist/components/Steps.cjs +1 -1
- package/dist/components/Steps.d.ts +33 -16
- package/dist/components/Steps.js +1 -1
- package/dist/components/Switch.cjs +1 -1
- package/dist/components/Switch.d.ts +14 -2
- package/dist/components/Switch.js +1 -1
- package/dist/components/TabNav.cjs +1 -1
- package/dist/components/TabNav.d.ts +5 -0
- package/dist/components/TabNav.js +1 -1
- package/dist/components/Table.cjs +1 -1
- package/dist/components/Table.d.ts +23 -12
- package/dist/components/Table.js +1 -1
- package/dist/components/Tabs.cjs +1 -1
- package/dist/components/Tabs.js +1 -1
- package/dist/components/Theme.cjs +1 -1
- package/dist/components/Theme.d.ts +2 -0
- package/dist/components/Theme.js +1 -1
- package/dist/components/Toast.cjs +1 -1
- package/dist/components/Toast.js +1 -1
- package/dist/components/Toggle.cjs +1 -1
- package/dist/components/Toggle.js +1 -1
- package/dist/components/ToggleGroup.cjs +1 -1
- package/dist/components/ToggleGroup.js +1 -1
- package/dist/components/Toolbar.cjs +1 -1
- package/dist/components/Toolbar.d.ts +8 -1
- package/dist/components/Toolbar.js +1 -1
- package/dist/components/Tooltip.cjs +1 -1
- package/dist/components/Tooltip.d.ts +7 -1
- package/dist/components/Tooltip.js +1 -1
- package/dist/components/Tree.cjs +1 -1
- package/dist/components/Tree.d.ts +8 -1
- package/dist/components/Tree.js +1 -1
- package/dist/components/VisuallyHidden.cjs +1 -1
- package/dist/components/VisuallyHidden.d.ts +6 -1
- package/dist/components/VisuallyHidden.js +1 -1
- package/dist/components/{floating-ui.react-2kiGB4sW.js → floating-ui.react-CZf-mCiA.js} +1 -1
- package/dist/components/{index-WGIYLuwZ.cjs → index-BZO29jsF.cjs} +1 -1
- package/dist/components/index-B_OPdW20.js +1 -0
- package/dist/components/{index-436yWBk4.cjs → index-BbvJO-A-.cjs} +1 -1
- package/dist/components/index-Bg-UeWCo.cjs +1 -0
- package/dist/components/index-BidxkqdT.js +1 -0
- package/dist/components/{index-DMX7gpdp.js → index-CAD0hWja.js} +1 -1
- package/dist/components/{index-xlB--dex.js → index-CXv1Y-O3.js} +1 -1
- package/dist/components/{index-CukraWfT.cjs → index-C_Yiql9j.cjs} +1 -1
- package/dist/components/{index-nYRBURkR.js → index-Cp5L_alO.js} +1 -1
- package/dist/components/{index-C7dBo_Ry.js → index-D8QLtYJh.js} +1 -1
- package/dist/components/{index-FITGoHty.js → index-DH-14XDv.js} +1 -1
- package/dist/components/{index-CoPhBYnZ.cjs → index-K0sE1H4u.cjs} +1 -1
- package/dist/components/{index-BeakeOqt.cjs → index-rUSzFrhJ.cjs} +1 -1
- package/dist/index.cjs +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/styles/clarity/Accordion/accordion.clarity.scss +147 -0
- package/dist/styles/clarity/AlertDialog/alert-dialog.clarity.scss +199 -0
- package/dist/styles/clarity/Avatar/_avatar-base.clarity.scss +87 -0
- package/dist/styles/clarity/Avatar/avatar.clarity.scss +1 -0
- package/dist/styles/clarity/AvatarGroup/avatar-group.clarity.scss +122 -0
- package/dist/styles/clarity/Badge/badge.clarity.scss +118 -0
- package/dist/styles/clarity/BlockQuote/blockquote.clarity.scss +123 -0
- package/dist/styles/clarity/Breadcrumb/breadcrumb.clarity.scss +50 -0
- package/dist/styles/clarity/Button/button.clarity.scss +132 -0
- package/dist/styles/clarity/Callout/callout.clarity.scss +183 -0
- package/dist/styles/clarity/Card/card.clarity.scss +121 -0
- package/dist/styles/clarity/Checkbox/checkbox.clarity.scss +75 -0
- package/dist/styles/clarity/CheckboxCards/checkbox-cards.clarity.scss +143 -0
- package/dist/styles/clarity/CheckboxGroup/checkbox-group.clarity.scss +92 -0
- package/dist/styles/clarity/Code/code.clarity.scss +42 -0
- package/dist/styles/clarity/Collapsible/collapsible.clarity.scss +84 -0
- package/dist/styles/clarity/Combobox/combobox.clarity.scss +157 -0
- package/dist/styles/clarity/Command/command.clarity.scss +231 -0
- package/dist/styles/clarity/ContextMenu/context-menu.clarity.scss +272 -0
- package/dist/styles/clarity/DataList/data-list.clarity.scss +60 -0
- package/dist/styles/clarity/Dialog/dialog.clarity.scss +205 -0
- package/dist/styles/clarity/Disclosure/disclosure.clarity.scss +56 -0
- package/dist/styles/clarity/Drawer/drawer.clarity.scss +331 -0
- package/dist/styles/clarity/DropdownMenu/dropdown-menu.clarity.scss +187 -0
- package/dist/styles/clarity/Em/em.clarity.scss +3 -0
- package/dist/styles/clarity/Fieldset/fieldset.clarity.scss +49 -0
- package/dist/styles/clarity/Heading/heading.clarity.scss +46 -0
- package/dist/styles/clarity/HoverCard/hover-card.clarity.scss +43 -0
- package/dist/styles/clarity/Kbd/kbd.clarity.scss +55 -0
- package/dist/styles/clarity/Label/label.clarity.scss +11 -0
- package/dist/styles/clarity/Link/link.clarity.scss +41 -0
- package/dist/styles/clarity/Menubar/menubar.clarity.scss +149 -0
- package/dist/styles/clarity/Meter/meter.clarity.scss +39 -0
- package/dist/styles/clarity/Minimap/minimap.clarity.scss +92 -0
- package/dist/styles/clarity/NavigationMenu/navigation-menu.clarity.scss +128 -0
- package/dist/styles/clarity/NumberField/number-field.clarity.scss +135 -0
- package/dist/styles/clarity/Popover/popover.clarity.scss +106 -0
- package/dist/styles/clarity/Progress/progress.clarity.scss +38 -0
- package/dist/styles/clarity/Quote/quote.clarity.scss +26 -0
- package/dist/styles/clarity/Radio/radio.clarity.scss +76 -0
- package/dist/styles/clarity/RadioCards/radiocards.clarity.scss +134 -0
- package/dist/styles/clarity/RadioGroup/radio-group.clarity.scss +99 -0
- package/dist/styles/clarity/ScrollArea/scroll-area.clarity.scss +112 -0
- package/dist/styles/clarity/Select/select.clarity.scss +228 -0
- package/dist/styles/clarity/Separator/separator.clarity.scss +23 -0
- package/dist/styles/clarity/Skeleton/skeleton.clarity.scss +33 -0
- package/dist/styles/clarity/Slider/slider.clarity.scss +203 -0
- package/dist/styles/clarity/Spinner/spinner.clarity.scss +52 -0
- package/dist/styles/clarity/Splitter/splitter.clarity.scss +151 -0
- package/dist/styles/clarity/Steps/steps.clarity.scss +143 -0
- package/dist/styles/clarity/Strong/strong.clarity.scss +6 -0
- package/dist/styles/clarity/Switch/switch.clarity.scss +89 -0
- package/dist/styles/clarity/TabNav/tab-nav.clarity.scss +69 -0
- package/dist/styles/clarity/Table/table.clarity.scss +128 -0
- package/dist/styles/clarity/Tabs/tabs.clarity.scss +91 -0
- package/dist/styles/clarity/Text/text.clarity.scss +5 -0
- package/dist/styles/clarity/TextArea/textarea.clarity.scss +146 -0
- package/dist/styles/clarity/TextField/text-field.clarity.scss +120 -0
- package/dist/styles/clarity/Toast/toast.clarity.scss +203 -0
- package/dist/styles/clarity/Toggle/toggle.clarity.scss +51 -0
- package/dist/styles/clarity/ToggleGroup/toggle-group.clarity.scss +103 -0
- package/dist/styles/clarity/Toolbar/toolbar.clarity.scss +140 -0
- package/dist/styles/clarity/Tooltip/tooltip.clarity.scss +37 -0
- package/dist/styles/clarity/Tree/tree.clarity.scss +103 -0
- package/dist/themes/baremetal.css +1 -1
- package/dist/themes/default.css +1 -1
- package/package.json +21 -2
- package/dist/components/ComboboxPrimitive-DQcJ8pzQ.js +0 -1
- package/dist/components/ComboboxPrimitive-kFYDdMUS.cjs +0 -1
- package/dist/components/MenuPrimitive-B1-7Sfhj.cjs +0 -1
- package/dist/components/MenuPrimitive-D9VMz2TZ.js +0 -1
- package/dist/components/RadioGroupPrimitive-CpA06FS_.cjs +0 -1
- package/dist/components/RadioGroupPrimitive-D1PP4y2M.js +0 -1
- package/dist/components/index-CbKtybdA.cjs +0 -1
- package/dist/components/index-D8I-rMwz.js +0 -1
- package/dist/components/index-XF8itt-H.js +0 -1
|
@@ -25,20 +25,34 @@ declare const HoverCardRoot: React.ForwardRefExoticComponent<Omit<React.Detailed
|
|
|
25
25
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
26
26
|
|
|
27
27
|
type HoverCardTriggerProps = ComponentPropsWithoutRef<typeof Primitive.span>;
|
|
28
|
-
declare const HoverCardTrigger: React.ForwardRefExoticComponent<
|
|
28
|
+
declare const HoverCardTrigger: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
|
|
29
|
+
asChild?: boolean;
|
|
30
|
+
} & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
29
31
|
|
|
30
32
|
type HoverCardPortalProps = ComponentPropsWithoutRef<typeof Floater.Portal> & {
|
|
33
|
+
/** Element to portal into. Defaults to the Theme's portal root, then the Theme container, then `document.body`. */
|
|
34
|
+
container?: HTMLElement | null;
|
|
35
|
+
/** Keep the content mounted while closed, e.g. for exit animations. */
|
|
36
|
+
forceMount?: boolean;
|
|
37
|
+
/** @deprecated Use `container`. */
|
|
31
38
|
rootElement?: HTMLElement | React.MutableRefObject<HTMLElement | null>;
|
|
32
39
|
};
|
|
33
40
|
declare const HoverCardPortal: React.ForwardRefExoticComponent<_floating_ui_react.FloatingPortalProps & {
|
|
41
|
+
/** Element to portal into. Defaults to the Theme's portal root, then the Theme container, then `document.body`. */
|
|
42
|
+
container?: HTMLElement | null;
|
|
43
|
+
/** Keep the content mounted while closed, e.g. for exit animations. */
|
|
44
|
+
forceMount?: boolean;
|
|
45
|
+
/** @deprecated Use `container`. */
|
|
34
46
|
rootElement?: HTMLElement | React.MutableRefObject<HTMLElement | null>;
|
|
35
47
|
} & React.RefAttributes<never>>;
|
|
36
48
|
|
|
37
49
|
type HoverCardContentProps = ComponentPropsWithoutRef<'div'> & {
|
|
38
50
|
size?: string;
|
|
51
|
+
forceMount?: boolean;
|
|
39
52
|
};
|
|
40
53
|
declare const HoverCardContent: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
41
54
|
size?: string;
|
|
55
|
+
forceMount?: boolean;
|
|
42
56
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
43
57
|
|
|
44
58
|
type HoverCardArrowProps = Omit<ComponentPropsWithoutRef<typeof Floater.Arrow>, 'context'>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{createContext as
|
|
1
|
+
'use client';import e,{createContext as r,forwardRef as o,useRef as t,useEffect as n,useContext as s,useState as a}from"react";import{jsx as l}from"react/jsx-runtime";import{F as i}from"./index-B_OPdW20.js";import{u as c,c as u}from"./useComponentClass-C0isGl1z.js";import{u as d}from"./index-wRElCyvx.js";import{P as m}from"./index-BidxkqdT.js";import{T as f}from"./ThemeContext-Sm-iNANd.js";import{c as g}from"./index-eAZUMNef.js";import"./floating-ui.react-CZf-mCiA.js";import"react-dom";import"./mergeProps-0RucjqeH.js";const p=r({}),h="HoverCard",v=o((({children:e,open:r,defaultOpen:o=!1,onOpenChange:s,customRootClass:a="",className:m="",openDelay:f=100,closeDelay:g=200,collisionBoundary:v=null,collisionPadding:y=4,...C},R)=>{const P=c(a,h),w=c(a,`${h}-trigger`),x=t(null),N=(Array.isArray(v)?v:[v]).filter((e=>null!=e)),D={padding:y,boundary:N,altBoundary:N.length>0},[T,M]=d(r,o,s),j=t(T);j.current=T;const H=e=>{j.current!==e&&(j.current=e,M(e))},{refs:F,floatingStyles:W,context:A}=i.useFloating({open:T,onOpenChange:H,placement:"bottom",strategy:"fixed",middleware:[i.arrow({element:x}),i.offset(10),i.flip({mainAxis:!0,...D}),i.shift({...D})],whileElementsMounted:i.autoUpdate}),E=t(!1),O=t(null),b=t(null),B=i.useRole(A,{role:"dialog"}),L=i.useDismiss(A),{getReferenceProps:S}=i.useInteractions([L]),{getFloatingProps:$}=i.useInteractions([B,L]),z=()=>{O.current&&(clearTimeout(O.current),O.current=null),b.current&&(clearTimeout(b.current),b.current=null)};n((()=>z),[]);const I={isOpen:T,handleOpenChange:H,floatingRefs:F,floatingStyles:W,floatingContext:A,arrowRef:x,getReferenceProps:S,getFloatingProps:$,rootClass:P,rootTriggerClass:w,closeWithDelay:()=>{E.current=!0,z(),g<=0?H(!1):b.current=setTimeout((()=>{b.current=null,E.current&&H(!1)}),g)},closeWithoutDelay:()=>{z(),H(!1)},openWithDelay:()=>{E.current=!1,z(),f<=0?H(!0):O.current=setTimeout((()=>{O.current=null,H(!0)}),f)}};return l(p.Provider,{value:I,children:l("div",{ref:R,className:u(P&&`${P}-root`,m),"data-slot":"hover-card-root",...C,children:e})})}));v.displayName=h;const y=o((({children:e,className:r="",...o},t)=>{const{floatingRefs:n,getReferenceProps:a,closeWithDelay:c,openWithDelay:d,rootTriggerClass:f}=s(p),g=i.useMergeRefs([n.setReference,t]);return l(m.span,{ref:g,className:u(f,r),...a({"data-slot":"hover-card-trigger",onMouseEnter:d,onMouseLeave:c,onFocus:d,onBlur:c,...o}),children:e})}));y.displayName="HoverCardTrigger";const C=e.createContext({forceMount:!1}),R=o((({children:e,container:r,forceMount:o=!1,rootElement:t,...c},u)=>{const d=s(f),[m,g]=a(null);return n((()=>{const e=(r??(t&&"current"in t?t.current:t))||d?.portalRootRef.current||d?.containerRef.current||document.body;g(e)}),[r,t,d]),m?l(C.Provider,{value:{forceMount:o},children:l(i.Portal,{root:m,...c,children:e})}):null}));R.displayName="HoverCardPortal";const P=o((({children:e,className:r,forceMount:o=!1,size:t="",...a},c)=>{const{isOpen:d,floatingRefs:m,floatingStyles:f,getFloatingProps:h,rootClass:v,closeWithDelay:y,openWithDelay:R,closeWithoutDelay:P}=s(p),{forceMount:w}=s(C);n((()=>{if(!d)return;const e=()=>P();return window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}}),[P,d]);const x=i.useMergeRefs([m.setFloating,c]),N=g("hover-card",{size:t});return d||o||w?l("div",{className:u(v,r),ref:x,"data-state":d?"open":"closed","aria-hidden":d?void 0:"true",style:{...f,visibility:d?void 0:"hidden",pointerEvents:d?void 0:"none"},...N,...h({"data-slot":"hover-card-content",onPointerEnter:R,onPointerLeave:y,onFocus:R,onBlur:y,...a}),children:e}):null}));P.displayName="HoverCardContent";const w=o(((e,r)=>{const{floatingContext:o,arrowRef:t,rootClass:n}=s(p),a=i.useMergeRefs([t,r]);return l(i.Arrow,{className:u(n&&`${n}-arrow`),"data-slot":"hover-card-arrow",...e,context:o,ref:a})}));w.displayName="HoverCardArrow";const x=o(((e,r)=>(console.warn("Direct usage of HoverCard is not supported. Please use HoverCard.Root, HoverCard.Trigger, etc. instead."),null)));x.displayName="HoverCard",x.Root=v,x.Trigger=y,x.Portal=R,x.Content=P,x.Arrow=w;export{w as Arrow,P as Content,R as Portal,v as Root,y as Trigger,x as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),s=require("./useComponentClass-B0DF90tm.cjs"),r=require("./index-Bg-UeWCo.cjs");require("./ThemeContext-t7IX-w6i.cjs"),require("./mergeProps-DW5qFqqJ.cjs");const a="Label",o=t.forwardRef((({className:t,customRootClass:o,onMouseDown:l,...u},n)=>{const c=s.useComponentClass(o,a);return e.jsx(r.Primitive.label,{...u,ref:n,className:s.clsx(c,t),"data-slot":"label",onMouseDown:e=>{l?.(e),e.target.closest("button, input, select, textarea")||!e.defaultPrevented&&e.detail>1&&e.preventDefault()}})}));o.displayName=a,exports.default=o;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React, { ElementRef, ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
|
|
3
|
+
type LabelElement = ElementRef<'label'>;
|
|
4
|
+
type LabelProps = ComponentPropsWithoutRef<'label'> & {
|
|
5
|
+
/** Render the child element instead of a <label>, merging props onto it. */
|
|
6
|
+
asChild?: boolean;
|
|
7
|
+
/** Overrides the generated root class. */
|
|
8
|
+
customRootClass?: string;
|
|
9
|
+
};
|
|
10
|
+
declare const Label: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "ref"> & {
|
|
11
|
+
/** Render the child element instead of a <label>, merging props onto it. */
|
|
12
|
+
asChild?: boolean;
|
|
13
|
+
/** Overrides the generated root class. */
|
|
14
|
+
customRootClass?: string;
|
|
15
|
+
} & React.RefAttributes<HTMLLabelElement>>;
|
|
16
|
+
|
|
17
|
+
export { Label as default };
|
|
18
|
+
export type { LabelElement, LabelProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import{forwardRef as t}from"react";import{u as o,c as s}from"./useComponentClass-C0isGl1z.js";import{P as a}from"./index-BidxkqdT.js";import"./ThemeContext-Sm-iNANd.js";import"./mergeProps-0RucjqeH.js";const r="Label",m=t((({className:t,customRootClass:m,onMouseDown:l,...n},p)=>{const u=o(m,r);return e(a.label,{...n,ref:p,className:s(u,t),"data-slot":"label",onMouseDown:e=>{l?.(e),e.target.closest("button, input, select, textarea")||!e.defaultPrevented&&e.detail>1&&e.preventDefault()}})}));m.displayName=r;export{m as default};
|
package/dist/components/Link.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),s=require("./useComponentClass-B0DF90tm.cjs"),t=require("./index-c6NFMS_0.cjs"),i=require("./index-
|
|
1
|
+
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),s=require("./useComponentClass-B0DF90tm.cjs"),t=require("./index-c6NFMS_0.cjs"),i=require("./index-Bg-UeWCo.cjs");require("./ThemeContext-t7IX-w6i.cjs"),require("./mergeProps-DW5qFqqJ.cjs");const a="Link",c=r.forwardRef((({children:r,href:c="#",customRootClass:o,className:u,size:l="",color:n="",asChild:d=!1,...m},C)=>{const j=s.useComponentClass(o,a),p=t.composeAttributes(t.createDataAttributes("link",{size:l}),t.createDataAccentColorAttribute(n)),x=i.Primitive.a;return e.jsx(x,{ref:C,asChild:d,href:c,className:s.clsx(j,u),...p,...m,children:r})}));c.displayName=a,exports.default=c;
|
package/dist/components/Link.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as s}from"react/jsx-runtime";import r from"react";import{u as e,c as o}from"./useComponentClass-C0isGl1z.js";import{a,b as i,c as m}from"./index-eAZUMNef.js";import{P as t}from"./index-
|
|
1
|
+
'use client';import{jsx as s}from"react/jsx-runtime";import r from"react";import{u as e,c as o}from"./useComponentClass-C0isGl1z.js";import{a,b as i,c as m}from"./index-eAZUMNef.js";import{P as t}from"./index-BidxkqdT.js";import"./ThemeContext-Sm-iNANd.js";import"./mergeProps-0RucjqeH.js";const n="Link",c=r.forwardRef((({children:r,href:c="#",customRootClass:l,className:f,size:p="",color:d="",asChild:h=!1,...j},u)=>{const C=e(l,n),x=a(m("link",{size:p}),i(d)),N=t.a;return s(N,{ref:u,asChild:h,href:c,className:o(C,f),...x,...j,children:r})}));c.displayName=n;export{c as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("./useComponentClass-B0DF90tm.cjs"),i=require("./index-
|
|
1
|
+
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("./useComponentClass-B0DF90tm.cjs"),i=require("./index-Bg-UeWCo.cjs");require("./ThemeContext-t7IX-w6i.cjs"),require("./mergeProps-DW5qFqqJ.cjs");const s="LiveRegion",a={position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",whiteSpace:"nowrap",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",overflow:"hidden",pointerEvents:"none",userSelect:"none"},o=r.forwardRef((({children:r,customRootClass:o,className:n,politeness:l="polite",role:c=("assertive"===l?"alert":"status"),atomic:u=!0,relevant:d="additions text",busy:p,visuallyHidden:m=!0,style:v,...x},h)=>{const j=t.useComponentClass(o,s),y=m?{...a,...v}:v;return e.jsx(i.Primitive.div,{ref:h,role:c,"aria-live":l,"aria-atomic":u,"aria-relevant":d,"aria-busy":p,"data-slot":"live-region-root",className:t.clsx(j,n),style:y,...x,children:r})}));o.displayName=s,exports.default=o;
|
|
@@ -62,12 +62,9 @@ declare const LiveRegion: React.ForwardRefExoticComponent<{
|
|
|
62
62
|
visuallyHidden?: boolean;
|
|
63
63
|
customRootClass?: string;
|
|
64
64
|
style?: CSSProperties;
|
|
65
|
-
} & Omit<
|
|
65
|
+
} & Omit<Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
66
66
|
asChild?: boolean;
|
|
67
|
-
}
|
|
68
|
-
asChild?: boolean;
|
|
69
|
-
children?: React.ReactNode;
|
|
70
|
-
})) & React.RefAttributes<HTMLElement>>>, "role" | "aria-atomic" | "aria-busy" | "aria-live" | "aria-relevant"> & React.RefAttributes<HTMLElement>>;
|
|
67
|
+
} & React.RefAttributes<HTMLElement>, "ref">, "role" | "aria-atomic" | "aria-busy" | "aria-live" | "aria-relevant"> & React.RefAttributes<HTMLElement>>;
|
|
71
68
|
|
|
72
69
|
export { LiveRegion as default };
|
|
73
70
|
export type { LiveRegionElement, LiveRegionProps };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as e}from"react/jsx-runtime";import{forwardRef as t}from"react";import{u as i,c as o}from"./useComponentClass-C0isGl1z.js";import{P as a}from"./index-
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import{forwardRef as t}from"react";import{u as i,c as o}from"./useComponentClass-C0isGl1z.js";import{P as a}from"./index-BidxkqdT.js";import"./ThemeContext-Sm-iNANd.js";import"./mergeProps-0RucjqeH.js";const r="LiveRegion",s={position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",whiteSpace:"nowrap",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",overflow:"hidden",pointerEvents:"none",userSelect:"none"},n=t((({children:t,customRootClass:n,className:l,politeness:p="polite",role:m=("assertive"===p?"alert":"status"),atomic:c=!0,relevant:d="additions text",busy:u,visuallyHidden:v=!0,style:h,...x},f)=>{const g=i(n,r),y=v?{...s,...h}:h;return e(a.div,{ref:f,role:m,"aria-live":p,"aria-atomic":c,"aria-relevant":d,"aria-busy":u,"data-slot":"live-region-root",className:o(g,l),style:y,...x,children:t})}));n.displayName=r;export{n as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';"use strict";var e=require("react/jsx-runtime"),t=require("react"),n=require("./index-BudP4FIn.cjs"),o=require("./index-BwNOI8cB.cjs"),r=require("./index-CbdoW3TC.cjs"),i=require("./index-Bg-UeWCo.cjs"),s=require("./index-BZO29jsF.cjs"),l=require("react-dom"),a=require("./floating-ui.react-Kw0_L48Q.cjs"),d=require("./ThemeContext-t7IX-w6i.cjs");const c=t.createContext(null),u=t.forwardRef((({children:i,className:s,open:l,onOpenChange:a,defaultOpen:d=!1,crossAxisOffset:u,mainAxisOffset:f,collisionBoundary:m=null,collisionPadding:g=4,loop:x=!0,placement:p="bottom-start",avoidCollision:v=!0,rtl:h=!1,dir:F,isSubmenu:R=!1,...y},P)=>{const b=h||"rtl"===F,C=b?"rtl":F,[N,M]=o.useControllableState(l,d,a);r.useRegisterDocumentOverlayOpen(N);const[O,I]=t.useState(null),[j,w]=t.useState(void 0),T=t.useRef([]),A=t.useRef([]),S=t.useRef([]),k=t.useRef(null),q=n.Floater.useFloatingNodeId(),D=n.Floater.useFloatingParentNodeId(),H=R,E=u??0,B=void 0!==f?f:H?14:4,L=(Array.isArray(m)?m:[m]).filter((e=>null!=e)),K=L.length>0?{boundary:L,altBoundary:!0}:{},$={mainAxis:v,crossAxis:v&&!H,padding:g,...K},z={padding:g,crossAxis:!H,...K},U={padding:g,...K},{refs:W,floatingStyles:X,context:Y}=n.Floater.useFloating({open:N,nodeId:q,onOpenChange:M,strategy:"fixed",transform:!1,placement:H?b?"left-start":"right-start":p,middleware:[n.Floater.offset({mainAxis:B,crossAxis:E}),...v?[n.Floater.flip($),n.Floater.shift(z)]:[],...H?[]:[n.Floater.size({...U,apply({availableHeight:e,elements:t}){w(e),t.floating.style.maxHeight=`${e}px`}})]],whileElementsMounted:n.Floater.autoUpdate}),G=n.Floater.useListNavigation(Y,{listRef:A,activeIndex:O,nested:H,rtl:b,loop:x,onNavigate:I}),J=n.Floater.useClick(Y,{}),Q=n.Floater.useHover(Y,{enabled:H,delay:{open:75},handleClose:n.Floater.safePolygon({blockPointerEvents:!0})}),V=n.Floater.useDismiss(Y,{bubbles:H}),Z=n.Floater.useTypeahead(Y,{listRef:S,onMatch:N?I:void 0,activeIndex:O}),_=n.Floater.useRole(Y,{role:"menu"}),{getReferenceProps:ee,getFloatingProps:te,getItemProps:ne}=n.Floater.useInteractions([V,J,G,Q,Z,_]),oe=t.useContext(c),re=t.useCallback((()=>H&&oe?oe.getRootTrigger():W.domReference.current),[H,oe,W.domReference]),ie={isOpen:N,setIsOpen:M,refs:W,floatingStyles:X,maxHeight:j,getReferenceProps:ee,getFloatingProps:te,getItemProps:ne,activeIndex:O,setActiveIndex:I,listRef:T,elementsRef:A,labelsRef:S,virtualItemRef:k,nodeId:q,isNested:H,floatingContext:Y,rtl:b,dir:C,getRootTrigger:re},se=n.Floater.useFloatingTree();return t.useEffect((()=>{if(se)return se.events.on("click",e),()=>{se.events.off("click",e)};function e(){M(!1)}}),[se,q,D]),e.jsx("div",{ref:P,className:s,"data-tree":"true",dir:C,...y,children:e.jsx(c.Provider,{value:ie,children:e.jsx(n.Floater.FloatingNode,{id:q,children:i})})})}));u.displayName="MenuComponentRoot";const f=t.forwardRef((({children:t,className:o,open:r,onOpenChange:i,defaultOpen:s=!1,crossAxisOffset:l,mainAxisOffset:a,collisionBoundary:d,collisionPadding:c,...f},m)=>{const g=n.Floater.useFloatingTree(),x=e.jsx(u,{ref:m,className:o,open:r,onOpenChange:i,defaultOpen:s,crossAxisOffset:l,mainAxisOffset:a,collisionBoundary:d,collisionPadding:c,...f,children:t});return g?x:e.jsx(n.Floater.FloatingTree,{children:x})}));f.displayName="MenuPrimitiveRoot";const m=t.forwardRef((({children:o,className:r,label:s,disabled:l,asChild:a=!1,onSelect:d,...u},f)=>{const m=t.useContext(c),g=l?null:s,{ref:x,index:p}=n.Floater.useListItem({label:g}),v=n.Floater.useFloatingTree(),h=t.useCallback((e=>{"function"==typeof x?x(e):x&&(x.current=e),"function"==typeof f?f(e):f&&(f.current=e)}),[x,f]);if(!m)return null;const{activeIndex:F,getItemProps:R}=m,y=F===p,{onClick:P,onKeyDown:b,...C}=u;return e.jsx(i.Primitive.button,{ref:h,tabIndex:y?0:-1,className:r,role:"menuitem","aria-disabled":!!l||void 0,"data-disabled":l?"":void 0,"data-highlighted":y&&!l?"":void 0,...R({...C,disabled:l,onClick(e){l||(P?.(e),e.defaultPrevented||(d?.(e),e.defaultPrevented||v?.events.emit("click")))},onKeyDown(e){b?.(e)}}),asChild:a,children:o})}));m.displayName="MenuPrimitiveItem";const g=t.forwardRef((({children:o,className:r,asChild:i,...l},a)=>{const d=t.useContext(c),{ref:u,index:f}=n.Floater.useListItem(),m=n.Floater.useMergeRefs([d?.refs.setReference,u,a]);if(!d)return null;const{activeIndex:g,getReferenceProps:x,isNested:p,isOpen:v}=d;return e.jsx(s.ButtonPrimitive,{ref:m,...x({...l,className:r,"data-state":v?"open":"closed",role:l.role??(p?"menuitem":void 0),tabIndex:p?g===f?0:-1:l.tabIndex}),asChild:i,children:o})}));g.displayName="MenuPrimitiveTrigger";const x=t.createContext({forceMount:!1}),p=t.forwardRef((({children:o,className:r,initialFocus:i,focusManagerDisabled:s=!1,forceMount:d=!1,...u},f)=>{const m=t.useContext(c),g=n.Floater.useFloatingTree(),p=n.Floater.useMergeRefs([m?.refs.setFloating,f]),{forceMount:v}=t.useContext(x);if(!m)return null;const h=m.isOpen;if(!h&&!d&&!v)return null;const{floatingStyles:F,getFloatingProps:R,elementsRef:y,labelsRef:P,isNested:b,floatingContext:C,maxHeight:N,getRootTrigger:M}=m,O=u.style,I={...u};delete I.style;const j={overflowY:"auto",overflowX:"hidden",maxHeight:void 0!==N?`${N}px`:void 0,WebkitOverflowScrolling:"touch",overscrollBehavior:"contain"},w=h?R({...I,className:r,dir:m.dir,"data-state":"open",onKeyDown:e=>{I.onKeyDown?.(e),(e=>{if("Tab"!==e.key||e.defaultPrevented)return;const t=M();if(!(t instanceof HTMLElement))return;e.preventDefault(),l.flushSync((()=>{g?.events.emit("click")}));const n=!e.shiftKey;queueMicrotask((()=>{if(t.focus(),!n)return;const e=a.getNextTabbable(t);e instanceof HTMLElement&&e!==t&&e.focus()}))})(e)},style:{...O,...F}}):{...I,className:r,dir:m.dir,"data-state":"closed",style:{...O,...F,visibility:"hidden",pointerEvents:"none"}};return e.jsx(n.Floater.FloatingList,{elementsRef:y,labelsRef:P,children:e.jsx(n.Floater.FocusManager,{context:C,disabled:s||!h,modal:!1,initialFocus:i??(b?-1:0),returnFocus:!b,children:e.jsx("div",{ref:p,...w,children:e.jsx("div",{style:j,children:o})})})})}));p.displayName="MenuPrimitiveContent";const v=t.forwardRef((({children:n,className:o,open:r,onOpenChange:i,defaultOpen:s=!1,...l},a)=>{const d=t.useContext(c);return e.jsx(u,{ref:a,className:o,open:r,onOpenChange:i,defaultOpen:s,rtl:d&&d.rtl||!1,dir:d?.dir,...l,isSubmenu:!0,children:n})}));v.displayName="MenuPrimitiveSub";const h=t.forwardRef((({children:o,container:r,forceMount:i=!1,root:s,...l},a)=>{const u=t.useContext(c),f=t.useContext(d.ThemeContext),[m,g]=t.useState(null);return t.useEffect((()=>{g(r??s??f?.portalRootRef.current??f?.containerRef.current??document.body)}),[r,s,f]),u&&(u.isOpen||i)&&m?e.jsx(x.Provider,{value:{forceMount:i},children:e.jsx(n.Floater.Portal,{root:m,...l,children:e.jsx("div",{ref:a,children:o})})}):null}));h.displayName="MenuPrimitivePortal";const F=()=>(console.warn("Direct usage of MenuPrimitive is not supported. Please use MenuPrimitive.Root, MenuPrimitive.Item instead."),null);F.Root=f,F.Item=m,F.Trigger=g,F.Content=p,F.Sub=v,F.Portal=h,exports.MenuPrimitive=F,exports.MenuPrimitiveRootPrimitiveContext=c;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import t,{forwardRef as n,useState as i,useRef as o,useContext as s,useEffect as r}from"react";import{F as l}from"./index-B_OPdW20.js";import{u as a}from"./index-wRElCyvx.js";import{u as d}from"./index-CBcSLg6O.js";import{P as c}from"./index-BidxkqdT.js";import{B as u}from"./index-DH-14XDv.js";import{flushSync as f}from"react-dom";import{I as m}from"./floating-ui.react-CZf-mCiA.js";import{T as g}from"./ThemeContext-Sm-iNANd.js";const p=t.createContext(null),v=n((({children:n,className:r,open:c,onOpenChange:u,defaultOpen:f=!1,crossAxisOffset:m,mainAxisOffset:g,collisionBoundary:v=null,collisionPadding:h=4,loop:x=!0,placement:y="bottom-start",avoidCollision:P=!0,rtl:b=!1,dir:R,isSubmenu:N=!1,...C},I)=>{const M=b||"rtl"===R,O=M?"rtl":R,[F,T]=a(c,f,u);d(F);const[A,k]=i(null),[w,S]=i(void 0),j=o([]),D=o([]),H=o([]),B=o(null),E=l.useFloatingNodeId(),L=l.useFloatingParentNodeId(),K=N,$=m??0,q=void 0!==g?g:K?14:4,z=(Array.isArray(v)?v:[v]).filter((e=>null!=e)),U=z.length>0?{boundary:z,altBoundary:!0}:{},W={mainAxis:P,crossAxis:P&&!K,padding:h,...U},X={padding:h,crossAxis:!K,...U},Y={padding:h,...U},{refs:G,floatingStyles:J,context:Q}=l.useFloating({open:F,nodeId:E,onOpenChange:T,strategy:"fixed",transform:!1,placement:K?M?"left-start":"right-start":y,middleware:[l.offset({mainAxis:q,crossAxis:$}),...P?[l.flip(W),l.shift(X)]:[],...K?[]:[l.size({...Y,apply({availableHeight:e,elements:t}){S(e),t.floating.style.maxHeight=`${e}px`}})]],whileElementsMounted:l.autoUpdate}),V=l.useListNavigation(Q,{listRef:D,activeIndex:A,nested:K,rtl:M,loop:x,onNavigate:k}),Z=l.useClick(Q,{}),_=l.useHover(Q,{enabled:K,delay:{open:75},handleClose:l.safePolygon({blockPointerEvents:!0})}),ee=l.useDismiss(Q,{bubbles:K}),te=l.useTypeahead(Q,{listRef:H,onMatch:F?k:void 0,activeIndex:A}),ne=l.useRole(Q,{role:"menu"}),{getReferenceProps:ie,getFloatingProps:oe,getItemProps:se}=l.useInteractions([ee,Z,V,_,te,ne]),re=s(p),le=t.useCallback((()=>K&&re?re.getRootTrigger():G.domReference.current),[K,re,G.domReference]),ae={isOpen:F,setIsOpen:T,refs:G,floatingStyles:J,maxHeight:w,getReferenceProps:ie,getFloatingProps:oe,getItemProps:se,activeIndex:A,setActiveIndex:k,listRef:j,elementsRef:D,labelsRef:H,virtualItemRef:B,nodeId:E,isNested:K,floatingContext:Q,rtl:M,dir:O,getRootTrigger:le},de=l.useFloatingTree();return t.useEffect((()=>{if(de)return de.events.on("click",e),()=>{de.events.off("click",e)};function e(){T(!1)}}),[de,E,L]),e("div",{ref:I,className:r,"data-tree":"true",dir:O,...C,children:e(p.Provider,{value:ae,children:e(l.FloatingNode,{id:E,children:n})})})}));v.displayName="MenuComponentRoot";const h=n((({children:t,className:n,open:i,onOpenChange:o,defaultOpen:s=!1,crossAxisOffset:r,mainAxisOffset:a,collisionBoundary:d,collisionPadding:c,...u},f)=>{const m=l.useFloatingTree(),g=e(v,{ref:f,className:n,open:i,onOpenChange:o,defaultOpen:s,crossAxisOffset:r,mainAxisOffset:a,collisionBoundary:d,collisionPadding:c,...u,children:t});return m?g:e(l.FloatingTree,{children:g})}));h.displayName="MenuPrimitiveRoot";const x=n((({children:n,className:i,label:o,disabled:s,asChild:r=!1,onSelect:a,...d},u)=>{const f=t.useContext(p),m=s?null:o,{ref:g,index:v}=l.useListItem({label:m}),h=l.useFloatingTree(),x=t.useCallback((e=>{"function"==typeof g?g(e):g&&(g.current=e),"function"==typeof u?u(e):u&&(u.current=e)}),[g,u]);if(!f)return null;const{activeIndex:y,getItemProps:P}=f,b=y===v,{onClick:R,onKeyDown:N,...C}=d;return e(c.button,{ref:x,tabIndex:b?0:-1,className:i,role:"menuitem","aria-disabled":!!s||void 0,"data-disabled":s?"":void 0,"data-highlighted":b&&!s?"":void 0,...P({...C,disabled:s,onClick(e){s||(R?.(e),e.defaultPrevented||(a?.(e),e.defaultPrevented||h?.events.emit("click")))},onKeyDown(e){N?.(e)}}),asChild:r,children:n})}));x.displayName="MenuPrimitiveItem";const y=n((({children:t,className:n,asChild:i,...o},r)=>{const a=s(p),{ref:d,index:c}=l.useListItem(),f=l.useMergeRefs([a?.refs.setReference,d,r]);if(!a)return null;const{activeIndex:m,getReferenceProps:g,isNested:v,isOpen:h}=a;return e(u,{ref:f,...g({...o,className:n,"data-state":h?"open":"closed",role:o.role??(v?"menuitem":void 0),tabIndex:v?m===c?0:-1:o.tabIndex}),asChild:i,children:t})}));y.displayName="MenuPrimitiveTrigger";const P=t.createContext({forceMount:!1}),b=n((({children:t,className:n,initialFocus:i,focusManagerDisabled:o=!1,forceMount:r=!1,...a},d)=>{const c=s(p),u=l.useFloatingTree(),g=l.useMergeRefs([c?.refs.setFloating,d]),{forceMount:v}=s(P);if(!c)return null;const h=c.isOpen;if(!h&&!r&&!v)return null;const{floatingStyles:x,getFloatingProps:y,elementsRef:b,labelsRef:R,isNested:N,floatingContext:C,maxHeight:I,getRootTrigger:M}=c,O=a.style,F={...a};delete F.style;const T={overflowY:"auto",overflowX:"hidden",maxHeight:void 0!==I?`${I}px`:void 0,WebkitOverflowScrolling:"touch",overscrollBehavior:"contain"},A=h?y({...F,className:n,dir:c.dir,"data-state":"open",onKeyDown:e=>{F.onKeyDown?.(e),(e=>{if("Tab"!==e.key||e.defaultPrevented)return;const t=M();if(!(t instanceof HTMLElement))return;e.preventDefault(),f((()=>{u?.events.emit("click")}));const n=!e.shiftKey;queueMicrotask((()=>{if(t.focus(),!n)return;const e=m(t);e instanceof HTMLElement&&e!==t&&e.focus()}))})(e)},style:{...O,...x}}):{...F,className:n,dir:c.dir,"data-state":"closed",style:{...O,...x,visibility:"hidden",pointerEvents:"none"}};return e(l.FloatingList,{elementsRef:b,labelsRef:R,children:e(l.FocusManager,{context:C,disabled:o||!h,modal:!1,initialFocus:i??(N?-1:0),returnFocus:!N,children:e("div",{ref:g,...A,children:e("div",{style:T,children:t})})})})}));b.displayName="MenuPrimitiveContent";const R=n((({children:t,className:n,open:i,onOpenChange:o,defaultOpen:r=!1,...l},a)=>{const d=s(p);return e(v,{ref:a,className:n,open:i,onOpenChange:o,defaultOpen:r,rtl:d&&d.rtl||!1,dir:d?.dir,...l,isSubmenu:!0,children:t})}));R.displayName="MenuPrimitiveSub";const N=n((({children:t,container:n,forceMount:o=!1,root:a,...d},c)=>{const u=s(p),f=s(g),[m,v]=i(null);return r((()=>{v(n??a??f?.portalRootRef.current??f?.containerRef.current??document.body)}),[n,a,f]),u&&(u.isOpen||o)&&m?e(P.Provider,{value:{forceMount:o},children:e(l.Portal,{root:m,...d,children:e("div",{ref:c,children:t})})}):null}));N.displayName="MenuPrimitivePortal";const C=()=>(console.warn("Direct usage of MenuPrimitive is not supported. Please use MenuPrimitive.Root, MenuPrimitive.Item instead."),null);C.Root=h,C.Item=x,C.Trigger=y,C.Content=b,C.Sub=R,C.Portal=N;export{C as M,p as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("./useComponentClass-B0DF90tm.cjs"),n=require("./index-BudP4FIn.cjs"),o=require("./MenuPrimitive-
|
|
1
|
+
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("./useComponentClass-B0DF90tm.cjs"),n=require("./index-BudP4FIn.cjs"),o=require("./MenuPrimitive-Ctqo21Vd.cjs"),s=require("./Separator.cjs");require("./ThemeContext-t7IX-w6i.cjs"),require("./floating-ui.react-Kw0_L48Q.cjs"),require("react-dom"),require("./index-BwNOI8cB.cjs"),require("./index-CbdoW3TC.cjs"),require("./index-7Bjw6jmo.cjs"),require("./documentOverlayOpen-BbC6uByx.cjs"),require("./index-Bg-UeWCo.cjs"),require("./mergeProps-DW5qFqqJ.cjs"),require("./index-BZO29jsF.cjs");const a=r.createContext(null),u=r.forwardRef((({children:o,customRootClass:s,className:u,dir:i,loop:l,rtl:c,onKeyDown:d,...m},p)=>{const f=t.useComponentClass(s,"Menubar"),[b,x]=r.useState([]),[g,M]=r.useState(0),[h,C]=r.useState(),v=r.useRef({}),I=r.useCallback((e=>[...e].sort(((e,r)=>{const t=v.current[e.id],n=v.current[r.id];if(!t||!n)return 0;const o=t.compareDocumentPosition(n);return o&Node.DOCUMENT_POSITION_FOLLOWING?-1:o&Node.DOCUMENT_POSITION_PRECEDING?1:0}))),[]),N=r.useCallback(((e,r="closed")=>{x((t=>{const n=t.find((r=>r.id===e));return n?n.state===r?t:t.map((t=>t.id===e?{...t,state:r}:t)):I([...t,{id:e,state:r}])}))}),[I]),w=r.useCallback((e=>{x((r=>r.some((r=>r.id===e))?r.filter((r=>r.id!==e)):r))}),[]),j=r.useCallback(((e,r)=>{"open"===r&&C(void 0),x((t=>t.map((t=>t.id===e?{...t,state:r}:t))))}),[]),P=r.useCallback(((e,r)=>{r?v.current[e]=r:delete v.current[e]}),[]),R=r.useCallback((e=>{if(e===g)return;const r=b[g],t=b[e];if(r&&j(r.id,"closed"),t){const e="open"===r?.state;j(t.id,e?"open":"closed"),e&&C(-1)}M(e)}),[g,b,j]),y=r.useCallback((e=>{const r=b[e];r&&(C(-1),x((r=>r.map(((r,t)=>({...r,state:t===e?"open":"closed"}))))),M(e),v.current[r.id]?.focus())}),[b]),S=r.useCallback((e=>{if(0===b.length)return;const r=g>=0?g:b.findIndex((e=>"open"===e.state));-1!==r&&y((r+e+b.length)%b.length)}),[g,b,y]),k=r.useCallback((e=>{const r=b.findIndex((r=>r.id===e));if(-1===r)return;b.some((r=>r.id!==e&&"open"===r.state))&&"open"!==b[r].state&&y(r)}),[b,y]),T=r.useCallback((e=>{const r=b.findIndex((r=>r.id===e));-1!==r&&M(r)}),[b]),O=r.useCallback((e=>{if(d?.(e),e.defaultPrevented)return;if("Home"!==e.key&&"End"!==e.key)return;if(!Object.values(v.current).includes(e.target))return;const r="Home"===e.key?0:b.length-1,t=b[r];t&&(e.preventDefault(),R(r),v.current[t.id]?.focus())}),[R,b,d]),q=r.useMemo((()=>({rootClass:f,registerItem:N,unregisterItem:w,items:b,updateItemState:j,updateItemTrigger:P,navigateMenu:S,openMenuOnHover:k,activeIndex:g,setActiveItem:T,contentInitialFocus:h})),[f,N,w,b,j,P,S,k,g,T,h]);return e.jsx(a.Provider,{value:q,children:e.jsx(n.Floater.Composite,{ref:p,role:"menubar",className:t.clsx(f&&`${f}-root`,u),dir:i,loop:l,rtl:c??"rtl"===i,orientation:"horizontal",...m,activeIndex:g,onNavigate:R,onKeyDown:O,children:o})})}));u.displayName="MenubarRoot";const i=r.createContext(null),l=r.forwardRef((({children:s,className:u,onFocus:l,onPointerEnter:c,...d},m)=>{const p=r.useContext(a),f=r.useContext(i);if(!p)return console.warn("MenubarTrigger should be used in the MenubarRoot"),null;const{rootClass:b,updateItemTrigger:x,items:g,activeIndex:M,setActiveItem:h,openMenuOnHover:C}=p;if(!f)return console.warn("MenubarTrigger should be used in the MenubarMenu"),null;const{id:v,isOpen:I}=f,N=r.useCallback((e=>{x(v,e),"function"==typeof m?m(e):m&&(m.current=e)}),[v,m,x]),w=g.findIndex((e=>e.id===v)),j=w===M||0===w&&(M<0||M>=g.length),P=e=>{l?.(e),h(v)},R=e=>{c?.(e),e.defaultPrevented||"touch"===e.pointerType||C(v)};return e.jsx(n.Floater.CompositeItem,{render:()=>e.jsx(o.MenuPrimitive.Trigger,{ref:N,className:t.clsx(b&&`${b}-trigger`,u),role:"menuitem","aria-haspopup":"menu","aria-expanded":I,tabIndex:j?0:-1,"data-state":I?"open":"closed","data-active":I,onFocus:P,onPointerEnter:R,...d,children:s})})}));l.displayName="MenubarTrigger";const c=new Set(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"]),d=r.forwardRef((({children:n,className:s,...u},i)=>{const l=r.useContext(a);if(!l)return console.warn("MenubarContent should be used in the MenubarRoot"),null;const{rootClass:d,navigateMenu:m,contentInitialFocus:p}=l,{onKeyDown:f,...b}=u,x=r.useCallback((e=>{"function"==typeof i?i(e):i&&(i.current=e)}),[i]);return e.jsx(o.MenuPrimitive.Content,{ref:x,role:"menu","aria-orientation":"vertical",className:t.clsx(d&&`${d}-content`,s),initialFocus:p,onKeyDown:e=>{if(f?.(e),c.has(e.key)&&e.stopPropagation(),!e.defaultPrevented)return"ArrowLeft"===e.key?(e.preventDefault(),void m(-1)):void("ArrowRight"===e.key&&(e.preventDefault(),m(1)))},...b,children:n})}));d.displayName="MenubarContent";const m=r.forwardRef((({children:t,...n},s)=>r.useContext(a)?e.jsx(o.MenuPrimitive.Portal,{ref:s,...n,children:t}):(console.warn("MenubarPortal should be used in the MenubarRoot"),null)));m.displayName="MenubarPortal";const p=r.forwardRef((({children:n,className:s,label:u,...i},l)=>{const c=r.useContext(a);if(!c)return console.warn("MenubarItem should be used in the MenubarRoot"),null;const{rootClass:d}=c;return e.jsx(o.MenuPrimitive.Item,{ref:l,role:"menuitem",className:t.clsx(d&&`${d}-item`,s),label:u,...i,children:n})}));p.displayName="MenubarItem";const f=r.forwardRef((({children:n,className:s,...u},i)=>{const l=r.useContext(a);if(!l)return console.warn("MenubarSub should be used in the MenubarRoot"),null;const{rootClass:c}=l;return e.jsx(o.MenuPrimitive.Sub,{ref:i,role:"none",className:t.clsx(c&&`${c}-sub`,s),...u,children:n})}));f.displayName="MenubarSub";const b=r.forwardRef((({children:n,className:s,...u},i)=>{const l=r.useContext(a);if(!l)return console.warn("MenubarSubTrigger should be used in the MenubarRoot"),null;const{rootClass:c}=l;return e.jsx(o.MenuPrimitive.Trigger,{ref:i,role:"menuitem","aria-haspopup":"menu",className:t.clsx(c&&`${c}-sub-trigger`,s),...u,children:n})}));b.displayName="MenubarSubTrigger";const x=r.forwardRef((({children:s,className:u,onOpenChange:l,...c},d)=>{const m=r.useContext(a),p=n.Floater.useId(),f=r.useId(),b=p??f;if(!m)return console.warn("MenubarMenu should be used in the MenubarRoot"),null;const{rootClass:x,registerItem:g,unregisterItem:M,items:h,updateItemState:C}=m;r.useEffect((()=>{if(b)return g(b),()=>M(b)}),[b]);const v="open"===h.find((e=>e.id===b))?.state;return e.jsx(o.MenuPrimitive.Root,{ref:d,role:"none",className:t.clsx(x&&`${x}-menu`,u),"data-id":b,"data-active":v,open:v,onOpenChange:e=>{b&&C(b,e?"open":"closed"),l?.(e)},...c,children:e.jsx(i.Provider,{value:{id:b,isOpen:v},children:s})})}));x.displayName="MenubarMenu";const g=r.forwardRef((({className:t,...n},o)=>{const u=r.useContext(a);if(!u)return console.warn("MenubarSeparator should be used within MenubarRoot"),null;const{rootClass:i}=u;return e.jsx(s.default,{ref:o,customRootClass:i,className:t,...n})}));g.displayName="MenubarSeparator";const M=()=>(console.warn("Direct usage of Menubar is not supported. Please use Menubar.Root, Menubar.Item instead."),null);M.Root=u,M.Menu=x,M.Trigger=l,M.Content=d,M.Portal=m,M.Item=p,M.Sub=f,M.SubTrigger=b,M.Separator=g,exports.Content=d,exports.Item=p,exports.Menu=x,exports.Portal=m,exports.Root=u,exports.Separator=g,exports.Sub=f,exports.SubTrigger=b,exports.Trigger=l,exports.default=M;
|
|
@@ -3,7 +3,6 @@ import * as React$1 from 'react';
|
|
|
3
3
|
import React__default, { ComponentPropsWithoutRef } from 'react';
|
|
4
4
|
import Floater from '~/core/primitives/Floater';
|
|
5
5
|
import MenuPrimitive from '~/core/primitives/Menu/MenuPrimitive';
|
|
6
|
-
import Primitive from '~/core/primitives/Primitive';
|
|
7
6
|
|
|
8
7
|
type MenubarRootProps = {
|
|
9
8
|
children: React__default.ReactNode;
|
|
@@ -41,6 +40,7 @@ declare const MenubarContent: React__default.ForwardRefExoticComponent<{
|
|
|
41
40
|
className?: string;
|
|
42
41
|
initialFocus?: number;
|
|
43
42
|
focusManagerDisabled?: boolean;
|
|
43
|
+
forceMount?: boolean;
|
|
44
44
|
} & React__default.HTMLAttributes<HTMLDivElement> & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
|
|
45
45
|
|
|
46
46
|
type MenubarPortalProps = {
|
|
@@ -48,9 +48,12 @@ type MenubarPortalProps = {
|
|
|
48
48
|
} & ComponentPropsWithoutRef<typeof MenuPrimitive.Portal>;
|
|
49
49
|
declare const MenubarPortal: React__default.ForwardRefExoticComponent<{
|
|
50
50
|
children: React__default.ReactNode;
|
|
51
|
-
} & Omit<{
|
|
51
|
+
} & Omit<Omit<_floating_ui_react.FloatingPortalProps, "root"> & {
|
|
52
52
|
children: React__default.ReactNode;
|
|
53
|
-
|
|
53
|
+
container?: HTMLElement | null;
|
|
54
|
+
forceMount?: boolean;
|
|
55
|
+
root?: HTMLElement | null;
|
|
56
|
+
} & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
|
|
54
57
|
|
|
55
58
|
type MenubarItemProps = {
|
|
56
59
|
children: React__default.ReactNode;
|
|
@@ -97,7 +100,8 @@ declare const MenubarSub: React__default.ForwardRefExoticComponent<{
|
|
|
97
100
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
98
101
|
avoidCollision?: boolean;
|
|
99
102
|
rtl?: boolean;
|
|
100
|
-
|
|
103
|
+
dir?: "ltr" | "rtl";
|
|
104
|
+
} & Omit<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref">, "dir"> & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
|
|
101
105
|
|
|
102
106
|
type MenubarSubTriggerProps = {
|
|
103
107
|
children: React__default.ReactNode;
|
|
@@ -133,21 +137,31 @@ declare const MenubarMenu: React__default.ForwardRefExoticComponent<{
|
|
|
133
137
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
134
138
|
avoidCollision?: boolean;
|
|
135
139
|
rtl?: boolean;
|
|
136
|
-
|
|
140
|
+
dir?: "ltr" | "rtl";
|
|
141
|
+
} & Omit<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref">, "dir"> & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
|
|
137
142
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
orientation?: 'horizontal' | 'vertical';
|
|
143
|
+
declare const Separator: React__default.ForwardRefExoticComponent<{
|
|
144
|
+
orientation?: "horizontal" | "vertical";
|
|
141
145
|
customRootClass?: string;
|
|
142
146
|
color?: string;
|
|
143
147
|
decorative?: boolean;
|
|
144
|
-
} &
|
|
145
|
-
|
|
148
|
+
} & Omit<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
149
|
+
asChild?: boolean;
|
|
150
|
+
} & React__default.RefAttributes<HTMLElement>, "ref"> & React__default.RefAttributes<HTMLElement>>;
|
|
146
151
|
|
|
147
152
|
type MenubarSeparatorProps = {
|
|
148
153
|
className?: string;
|
|
149
154
|
} & ComponentPropsWithoutRef<typeof Separator>;
|
|
150
|
-
declare const MenubarSeparator: React__default.ForwardRefExoticComponent<
|
|
155
|
+
declare const MenubarSeparator: React__default.ForwardRefExoticComponent<{
|
|
156
|
+
className?: string;
|
|
157
|
+
} & Omit<{
|
|
158
|
+
orientation?: "horizontal" | "vertical";
|
|
159
|
+
customRootClass?: string;
|
|
160
|
+
color?: string;
|
|
161
|
+
decorative?: boolean;
|
|
162
|
+
} & Omit<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
163
|
+
asChild?: boolean;
|
|
164
|
+
} & React__default.RefAttributes<HTMLElement>, "ref"> & React__default.RefAttributes<HTMLElement>, "ref"> & React__default.RefAttributes<HTMLElement>>;
|
|
151
165
|
|
|
152
166
|
declare const Menubar: {
|
|
153
167
|
(): null;
|
|
@@ -173,7 +187,8 @@ declare const Menubar: {
|
|
|
173
187
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
174
188
|
avoidCollision?: boolean;
|
|
175
189
|
rtl?: boolean;
|
|
176
|
-
|
|
190
|
+
dir?: "ltr" | "rtl";
|
|
191
|
+
} & Omit<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref">, "dir"> & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
177
192
|
Trigger: React$1.ForwardRefExoticComponent<{
|
|
178
193
|
children: React.ReactNode;
|
|
179
194
|
className?: string;
|
|
@@ -190,12 +205,16 @@ declare const Menubar: {
|
|
|
190
205
|
className?: string;
|
|
191
206
|
initialFocus?: number;
|
|
192
207
|
focusManagerDisabled?: boolean;
|
|
208
|
+
forceMount?: boolean;
|
|
193
209
|
} & React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
194
210
|
Portal: React$1.ForwardRefExoticComponent<{
|
|
195
211
|
children: React.ReactNode;
|
|
196
|
-
} & Omit<{
|
|
212
|
+
} & Omit<Omit<_floating_ui_react.FloatingPortalProps, "root"> & {
|
|
197
213
|
children: React.ReactNode;
|
|
198
|
-
|
|
214
|
+
container?: HTMLElement | null;
|
|
215
|
+
forceMount?: boolean;
|
|
216
|
+
root?: HTMLElement | null;
|
|
217
|
+
} & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
199
218
|
Item: React$1.ForwardRefExoticComponent<{
|
|
200
219
|
children: React.ReactNode;
|
|
201
220
|
className?: string;
|
|
@@ -231,7 +250,8 @@ declare const Menubar: {
|
|
|
231
250
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
232
251
|
avoidCollision?: boolean;
|
|
233
252
|
rtl?: boolean;
|
|
234
|
-
|
|
253
|
+
dir?: "ltr" | "rtl";
|
|
254
|
+
} & Omit<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref">, "dir"> & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
235
255
|
SubTrigger: React$1.ForwardRefExoticComponent<{
|
|
236
256
|
children: React.ReactNode;
|
|
237
257
|
className?: string;
|
|
@@ -240,7 +260,16 @@ declare const Menubar: {
|
|
|
240
260
|
className?: string;
|
|
241
261
|
asChild?: boolean;
|
|
242
262
|
} & Omit<Omit<React$1.DetailedHTMLProps<React$1.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref">, "className" | "children"> & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
243
|
-
Separator: React$1.ForwardRefExoticComponent<
|
|
263
|
+
Separator: React$1.ForwardRefExoticComponent<{
|
|
264
|
+
className?: string;
|
|
265
|
+
} & Omit<{
|
|
266
|
+
orientation?: "horizontal" | "vertical";
|
|
267
|
+
customRootClass?: string;
|
|
268
|
+
color?: string;
|
|
269
|
+
decorative?: boolean;
|
|
270
|
+
} & Omit<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
271
|
+
asChild?: boolean;
|
|
272
|
+
} & React$1.RefAttributes<HTMLElement>, "ref"> & React$1.RefAttributes<HTMLElement>, "ref"> & React$1.RefAttributes<HTMLElement>>;
|
|
244
273
|
};
|
|
245
274
|
|
|
246
275
|
export { MenubarContent as Content, MenubarItem as Item, MenubarMenu as Menu, MenubarPortal as Portal, MenubarRoot as Root, MenubarSeparator as Separator, MenubarSub as Sub, MenubarSubTrigger as SubTrigger, MenubarTrigger as Trigger, Menubar as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as e}from"react/jsx-runtime";import t,{forwardRef as n}from"react";import{u as r,c as o}from"./useComponentClass-C0isGl1z.js";import{F as a}from"./index-
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import t,{forwardRef as n}from"react";import{u as r,c as o}from"./useComponentClass-C0isGl1z.js";import{F as a}from"./index-B_OPdW20.js";import{M as s}from"./MenuPrimitive-Cy_MJfjG.js";import u from"./Separator.js";import"./ThemeContext-Sm-iNANd.js";import"./floating-ui.react-CZf-mCiA.js";import"react-dom";import"./index-wRElCyvx.js";import"./index-CBcSLg6O.js";import"./index-CbNq68zs.js";import"./documentOverlayOpen-coyGmcyL.js";import"./index-BidxkqdT.js";import"./mergeProps-0RucjqeH.js";import"./index-DH-14XDv.js";const i=t.createContext(null),l=n((({children:n,customRootClass:s,className:u,dir:l,loop:c,rtl:d,onKeyDown:m,...p},b)=>{const f=r(s,"Menubar"),[g,h]=t.useState([]),[C,M]=t.useState(0),[I,N]=t.useState(),v=t.useRef({}),x=t.useCallback((e=>[...e].sort(((e,t)=>{const n=v.current[e.id],r=v.current[t.id];if(!n||!r)return 0;const o=n.compareDocumentPosition(r);return o&Node.DOCUMENT_POSITION_FOLLOWING?-1:o&Node.DOCUMENT_POSITION_PRECEDING?1:0}))),[]),w=t.useCallback(((e,t="closed")=>{h((n=>{const r=n.find((t=>t.id===e));return r?r.state===t?n:n.map((n=>n.id===e?{...n,state:t}:n)):x([...n,{id:e,state:t}])}))}),[x]),y=t.useCallback((e=>{h((t=>t.some((t=>t.id===e))?t.filter((t=>t.id!==e)):t))}),[]),S=t.useCallback(((e,t)=>{"open"===t&&N(void 0),h((n=>n.map((n=>n.id===e?{...n,state:t}:n))))}),[]),P=t.useCallback(((e,t)=>{t?v.current[e]=t:delete v.current[e]}),[]),k=t.useCallback((e=>{if(e===C)return;const t=g[C],n=g[e];if(t&&S(t.id,"closed"),n){const e="open"===t?.state;S(n.id,e?"open":"closed"),e&&N(-1)}M(e)}),[C,g,S]),R=t.useCallback((e=>{const t=g[e];t&&(N(-1),h((t=>t.map(((t,n)=>({...t,state:n===e?"open":"closed"}))))),M(e),v.current[t.id]?.focus())}),[g]),T=t.useCallback((e=>{if(0===g.length)return;const t=C>=0?C:g.findIndex((e=>"open"===e.state));-1!==t&&R((t+e+g.length)%g.length)}),[C,g,R]),O=t.useCallback((e=>{const t=g.findIndex((t=>t.id===e));if(-1===t)return;g.some((t=>t.id!==e&&"open"===t.state))&&"open"!==g[t].state&&R(t)}),[g,R]),j=t.useCallback((e=>{const t=g.findIndex((t=>t.id===e));-1!==t&&M(t)}),[g]),D=t.useCallback((e=>{if(m?.(e),e.defaultPrevented)return;if("Home"!==e.key&&"End"!==e.key)return;if(!Object.values(v.current).includes(e.target))return;const t="Home"===e.key?0:g.length-1,n=g[t];n&&(e.preventDefault(),k(t),v.current[n.id]?.focus())}),[k,g,m]),A=t.useMemo((()=>({rootClass:f,registerItem:w,unregisterItem:y,items:g,updateItemState:S,updateItemTrigger:P,navigateMenu:T,openMenuOnHover:O,activeIndex:C,setActiveItem:j,contentInitialFocus:I})),[f,w,y,g,S,P,T,O,C,j,I]);return e(i.Provider,{value:A,children:e(a.Composite,{ref:b,role:"menubar",className:o(f&&`${f}-root`,u),dir:l,loop:c,rtl:d??"rtl"===l,orientation:"horizontal",...p,activeIndex:C,onNavigate:k,onKeyDown:D,children:n})})}));l.displayName="MenubarRoot";const c=t.createContext(null),d=n((({children:n,className:r,onFocus:u,onPointerEnter:l,...d},m)=>{const p=t.useContext(i),b=t.useContext(c);if(!p)return console.warn("MenubarTrigger should be used in the MenubarRoot"),null;const{rootClass:f,updateItemTrigger:g,items:h,activeIndex:C,setActiveItem:M,openMenuOnHover:I}=p;if(!b)return console.warn("MenubarTrigger should be used in the MenubarMenu"),null;const{id:N,isOpen:v}=b,x=t.useCallback((e=>{g(N,e),"function"==typeof m?m(e):m&&(m.current=e)}),[N,m,g]),w=h.findIndex((e=>e.id===N)),y=w===C||0===w&&(C<0||C>=h.length),S=e=>{u?.(e),M(N)},P=e=>{l?.(e),e.defaultPrevented||"touch"===e.pointerType||I(N)};return e(a.CompositeItem,{render:()=>e(s.Trigger,{ref:x,className:o(f&&`${f}-trigger`,r),role:"menuitem","aria-haspopup":"menu","aria-expanded":v,tabIndex:y?0:-1,"data-state":v?"open":"closed","data-active":v,onFocus:S,onPointerEnter:P,...d,children:n})})}));d.displayName="MenubarTrigger";const m=new Set(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"]),p=n((({children:n,className:r,...a},u)=>{const l=t.useContext(i);if(!l)return console.warn("MenubarContent should be used in the MenubarRoot"),null;const{rootClass:c,navigateMenu:d,contentInitialFocus:p}=l,{onKeyDown:b,...f}=a,g=t.useCallback((e=>{"function"==typeof u?u(e):u&&(u.current=e)}),[u]);return e(s.Content,{ref:g,role:"menu","aria-orientation":"vertical",className:o(c&&`${c}-content`,r),initialFocus:p,onKeyDown:e=>{if(b?.(e),m.has(e.key)&&e.stopPropagation(),!e.defaultPrevented)return"ArrowLeft"===e.key?(e.preventDefault(),void d(-1)):void("ArrowRight"===e.key&&(e.preventDefault(),d(1)))},...f,children:n})}));p.displayName="MenubarContent";const b=n((({children:n,...r},o)=>t.useContext(i)?e(s.Portal,{ref:o,...r,children:n}):(console.warn("MenubarPortal should be used in the MenubarRoot"),null)));b.displayName="MenubarPortal";const f=n((({children:n,className:r,label:a,...u},l)=>{const c=t.useContext(i);if(!c)return console.warn("MenubarItem should be used in the MenubarRoot"),null;const{rootClass:d}=c;return e(s.Item,{ref:l,role:"menuitem",className:o(d&&`${d}-item`,r),label:a,...u,children:n})}));f.displayName="MenubarItem";const g=n((({children:n,className:r,...a},u)=>{const l=t.useContext(i);if(!l)return console.warn("MenubarSub should be used in the MenubarRoot"),null;const{rootClass:c}=l;return e(s.Sub,{ref:u,role:"none",className:o(c&&`${c}-sub`,r),...a,children:n})}));g.displayName="MenubarSub";const h=n((({children:n,className:r,...a},u)=>{const l=t.useContext(i);if(!l)return console.warn("MenubarSubTrigger should be used in the MenubarRoot"),null;const{rootClass:c}=l;return e(s.Trigger,{ref:u,role:"menuitem","aria-haspopup":"menu",className:o(c&&`${c}-sub-trigger`,r),...a,children:n})}));h.displayName="MenubarSubTrigger";const C=n((({children:n,className:r,onOpenChange:u,...l},d)=>{const m=t.useContext(i),p=a.useId(),b=t.useId(),f=p??b;if(!m)return console.warn("MenubarMenu should be used in the MenubarRoot"),null;const{rootClass:g,registerItem:h,unregisterItem:C,items:M,updateItemState:I}=m;t.useEffect((()=>{if(f)return h(f),()=>C(f)}),[f]);const N="open"===M.find((e=>e.id===f))?.state;return e(s.Root,{ref:d,role:"none",className:o(g&&`${g}-menu`,r),"data-id":f,"data-active":N,open:N,onOpenChange:e=>{f&&I(f,e?"open":"closed"),u?.(e)},...l,children:e(c.Provider,{value:{id:f,isOpen:N},children:n})})}));C.displayName="MenubarMenu";const M=n((({className:n,...r},o)=>{const a=t.useContext(i);if(!a)return console.warn("MenubarSeparator should be used within MenubarRoot"),null;const{rootClass:s}=a;return e(u,{ref:o,customRootClass:s,className:n,...r})}));M.displayName="MenubarSeparator";const I=()=>(console.warn("Direct usage of Menubar is not supported. Please use Menubar.Root, Menubar.Item instead."),null);I.Root=l,I.Menu=C,I.Trigger=d,I.Content=p,I.Portal=b,I.Item=f,I.Sub=g,I.SubTrigger=h,I.Separator=M;export{p as Content,f as Item,C as Menu,b as Portal,l as Root,M as Separator,g as Sub,h as SubTrigger,d as Trigger,I as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var a=require("react/jsx-runtime"),e=require("react"),t=require("./useComponentClass-B0DF90tm.cjs"),r=require("./index-Bg-UeWCo.cjs");require("./ThemeContext-t7IX-w6i.cjs"),require("./mergeProps-DW5qFqqJ.cjs");const s=e.createContext({value:0,minValue:0,maxValue:100,rootClass:"",state:"normal"}),l="Meter",i=e.forwardRef((({value:e=0,minValue:i=0,maxValue:o=100,lowValue:u,highValue:m,optimumValue:d,getValueLabel:n,customRootClass:c,className:x,children:v,...h},p)=>{const C=t.useComponentClass(c,l),V=Math.max(i,o),f=((a,e,t)=>t<=e?e:Math.min(Math.max(a,e),t))(e,i,V),j=((a,e,t,r)=>void 0!==r&&a===r?"optimum":void 0!==e&&a<e?"low":void 0!==t&&a>t?"high":"normal")(f,u,m,d),N=n?.(f,i,V),{asChild:M,...w}=h;return a.jsx(s.Provider,{value:{value:f,minValue:i,maxValue:V,lowValue:u,highValue:m,optimumValue:d,rootClass:C,state:j},children:a.jsx(r.Primitive.div,{role:"meter","aria-valuenow":f,"aria-valuemin":i,"aria-valuemax":V,"aria-valuetext":N,"data-state":j,"data-value":f,"data-min":i,"data-max":V,"data-low":u,"data-high":m,"data-optimum":d,className:t.clsx(C,x),asChild:M,ref:p,...w,children:v})})}));i.displayName=l;const o=e.forwardRef((({className:l,style:i,...o},u)=>{const{value:m,minValue:d,maxValue:n,rootClass:c,state:x}=e.useContext(s),v=n===d?0:(m-d)/(n-d)*100,{asChild:h,...p}=o;return a.jsx(r.Primitive.div,{className:t.clsx(c&&`${c}-indicator`,l),style:{transform:`translateX(-${100-v}%)`,...i},"data-state":x,"data-value":m,"data-min":d,"data-max":n,asChild:h,ref:u,...p})}));o.displayName="MeterIndicator";const u="Meter",m=e.forwardRef(((e,t)=>a.jsx(i,{ref:t,...e})));m.displayName=u,m.Root=i,m.Indicator=o,exports.COMPONENT_NAME=u,exports.Indicator=o,exports.Root=i,exports.default=m;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ElementRef } from 'react';
|
|
2
|
+
import Primitive from '~/core/primitives/Primitive';
|
|
3
|
+
|
|
4
|
+
type MeterRootElement = ElementRef<typeof Primitive.div>;
|
|
5
|
+
type MeterRootProps = {
|
|
6
|
+
value?: number;
|
|
7
|
+
minValue?: number;
|
|
8
|
+
maxValue?: number;
|
|
9
|
+
lowValue?: number;
|
|
10
|
+
highValue?: number;
|
|
11
|
+
optimumValue?: number;
|
|
12
|
+
getValueLabel?: (value: number, minValue: number, maxValue: number) => string;
|
|
13
|
+
customRootClass?: string;
|
|
14
|
+
children?: React.ReactNode;
|
|
15
|
+
} & ComponentPropsWithoutRef<typeof Primitive.div>;
|
|
16
|
+
declare const MeterRoot: React.ForwardRefExoticComponent<{
|
|
17
|
+
value?: number;
|
|
18
|
+
minValue?: number;
|
|
19
|
+
maxValue?: number;
|
|
20
|
+
lowValue?: number;
|
|
21
|
+
highValue?: number;
|
|
22
|
+
optimumValue?: number;
|
|
23
|
+
getValueLabel?: (value: number, minValue: number, maxValue: number) => string;
|
|
24
|
+
customRootClass?: string;
|
|
25
|
+
children?: React.ReactNode;
|
|
26
|
+
} & Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
27
|
+
asChild?: boolean;
|
|
28
|
+
} & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
29
|
+
|
|
30
|
+
type MeterIndicatorProps = ComponentPropsWithoutRef<typeof Primitive.div>;
|
|
31
|
+
declare const MeterIndicator: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
32
|
+
asChild?: boolean;
|
|
33
|
+
} & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
34
|
+
|
|
35
|
+
declare const COMPONENT_NAME = "Meter";
|
|
36
|
+
type MeterProps = MeterRootProps;
|
|
37
|
+
type MeterComponent = React.ForwardRefExoticComponent<MeterProps & React.RefAttributes<MeterRootElement>> & {
|
|
38
|
+
Root: typeof MeterRoot;
|
|
39
|
+
Indicator: typeof MeterIndicator;
|
|
40
|
+
};
|
|
41
|
+
declare const Meter: MeterComponent;
|
|
42
|
+
|
|
43
|
+
export { COMPONENT_NAME, MeterIndicator as Indicator, MeterRoot as Root, Meter as default };
|
|
44
|
+
export type { MeterIndicatorProps, MeterProps, MeterRootProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';import{jsx as a}from"react/jsx-runtime";import{createContext as e,forwardRef as t,useContext as l}from"react";import{u as o,c as s}from"./useComponentClass-C0isGl1z.js";import{P as m}from"./index-BidxkqdT.js";import"./ThemeContext-Sm-iNANd.js";import"./mergeProps-0RucjqeH.js";const i=e({value:0,minValue:0,maxValue:100,rootClass:"",state:"normal"}),r="Meter",u=t((({value:e=0,minValue:t=0,maxValue:l=100,lowValue:u,highValue:d,optimumValue:n,getValueLabel:c,customRootClass:h,className:v,children:p,...V},x)=>{const C=o(h,r),f=Math.max(t,l),N=((a,e,t)=>t<=e?e:Math.min(Math.max(a,e),t))(e,t,f),g=((a,e,t,l)=>void 0!==l&&a===l?"optimum":void 0!==e&&a<e?"low":void 0!==t&&a>t?"high":"normal")(N,u,d,n),M=c?.(N,t,f),{asChild:j,...w}=V;return a(i.Provider,{value:{value:N,minValue:t,maxValue:f,lowValue:u,highValue:d,optimumValue:n,rootClass:C,state:g},children:a(m.div,{role:"meter","aria-valuenow":N,"aria-valuemin":t,"aria-valuemax":f,"aria-valuetext":M,"data-state":g,"data-value":N,"data-min":t,"data-max":f,"data-low":u,"data-high":d,"data-optimum":n,className:s(C,v),asChild:j,ref:x,...w,children:p})})}));u.displayName=r;const d=t((({className:e,style:t,...o},r)=>{const{value:u,minValue:d,maxValue:n,rootClass:c,state:h}=l(i),v=n===d?0:(u-d)/(n-d)*100,{asChild:p,...V}=o;return a(m.div,{className:s(c&&`${c}-indicator`,e),style:{transform:`translateX(-${100-v}%)`,...t},"data-state":h,"data-value":u,"data-min":d,"data-max":n,asChild:p,ref:r,...V})}));d.displayName="MeterIndicator";const n="Meter",c=t(((e,t)=>a(u,{ref:t,...e})));c.displayName=n,c.Root=u,c.Indicator=d;export{n as COMPONENT_NAME,d as Indicator,u as Root,c as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./useComponentClass-B0DF90tm.cjs"),s=require("./index-
|
|
1
|
+
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./useComponentClass-B0DF90tm.cjs"),s=require("./index-Bg-UeWCo.cjs"),o=require("./index-rUSzFrhJ.cjs"),n=require("./mergeProps-DW5qFqqJ.cjs");require("./ThemeContext-t7IX-w6i.cjs"),require("./index-BZO29jsF.cjs"),require("./keyboard-BBlFllyi.cjs"),require("./mergeRefs-BUn-enYe.cjs");const l=t.createContext({rootClass:"",rootRef:null}),i=t.forwardRef((({children:i,className:a,customRootClass:c="",...u},d)=>{const m=r.useComponentClass(c,"Minimap"),f=t.useRef(null),p=t.useMemo((()=>n.composeRefs(f,d)),[d]),x=t.useMemo((()=>({rootClass:m,rootRef:f})),[m]);return e.jsx(l.Provider,{value:x,children:e.jsx(o.RovingFocusGroupUtility.Root,{loop:!0,orientation:"both",children:e.jsx(o.RovingFocusGroupUtility.Group,{children:e.jsx(s.Primitive.div,{ref:p,className:r.clsx(m,a),...u,children:i})})})})}));i.displayName="Minimap.Root";const a=t.createContext({value:"",isVisible:!1}),c=t.createContext({visibleItems:[],handleInView:()=>{},handleOutView:()=>{},scrollToItem:()=>{},registerRef:()=>{}}),u=t.forwardRef((({children:n,className:i="",value:u,...d},m)=>{const{rootClass:f}=t.useContext(l)||{rootClass:""},{visibleItems:p,scrollToItem:x}=t.useContext(c),h=p.includes(u),C=t.useMemo((()=>({value:u,isVisible:h})),[u,h]),v=t.useCallback((()=>{x(u)}),[u,x]);return e.jsx(a.Provider,{value:C,children:e.jsx(o.RovingFocusGroupUtility.Item,{children:e.jsx(s.Primitive.button,{ref:m,onClick:v,className:r.clsx(f&&`${f}-item`,i),"data-in-view":h?"true":"false",...d,children:n})})})}));u.displayName="Minimap.Item";const d=t.forwardRef((({children:s,className:o="",...n},i)=>{const{rootClass:a}=t.useContext(l);return e.jsx("span",{ref:i,className:r.clsx(a&&`${a}-track`,o),...n,children:s})}));d.displayName="Minimap.Track";const m=t.forwardRef((({children:s,className:o="",...n},i)=>{const{rootClass:u}=t.useContext(l)||{rootClass:""},{value:d}=t.useContext(a)||{value:""},{visibleItems:m}=t.useContext(c),f=m.indexOf(d),p=-1!==f,x=-1!==f&&f<m.length-1,h=p&&x;return e.jsx("span",{ref:i,className:r.clsx(u&&`${u}-line`,o),"data-in-view":h?"true":"false",...n,children:s})}));m.displayName="Minimap.Line";const f=t.forwardRef((({children:s,className:o="",...n},i)=>{const{rootClass:a}=t.useContext(l);return e.jsx("span",{ref:i,className:r.clsx(a&&`${a}-content`,o),...n,children:s})}));f.displayName="Minimap.Content";const p=t.forwardRef((({children:s,className:o="",...n},i)=>{const{rootClass:c}=t.useContext(l)||{rootClass:""},{isVisible:u}=t.useContext(a)||{isVisible:!1};return e.jsx("span",{ref:i,className:r.clsx(c&&`${c}-bubble`,o),"data-in-view":u?"true":"false",...n,children:s})}));p.displayName="Minimap.Bubble";const x=({children:r,className:s="",scrollable:o,...n})=>{const[l,i]=t.useState([]),a=t.useRef(new Map),u=t.useRef(null),d=t.useCallback(((e,t)=>{t?a.current.set(e,t):a.current.delete(e)}),[]),m=t.useCallback((e=>{i((t=>{if(null===e||t.includes(e))return t;return[...t,e].sort(((e,t)=>{const r=a.current.get(e),s=a.current.get(t);if(!r||!s)return 0;return r.compareDocumentPosition(s)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}))}))}),[]),f=t.useCallback((e=>{i((t=>null!==e&&t.includes(e)?t.filter((t=>t!==e)):t))}),[]),p=t.useCallback((e=>{const t=a.current.get(e);if(!t)return;let r=null;if(o&&u.current)r=u.current;else{const e=t=>{if(!t||t===document.body)return null;const r=window.getComputedStyle(t);return("auto"===r.overflow||"scroll"===r.overflow||"auto"===r.overflowY||"scroll"===r.overflowY)&&t.scrollHeight>t.clientHeight?t:e(t.parentElement)};r=e(t.parentElement)}if(r){const e=t.getBoundingClientRect(),s=r.getBoundingClientRect(),o=e.top-s.top+r.scrollTop,n=r.scrollHeight-r.clientHeight,l=Math.max(0,Math.min(o,n));Math.abs(l-r.scrollTop)>1&&r.scrollTo({top:l,behavior:"smooth"})}else"function"==typeof t.scrollIntoView&&t.scrollIntoView({behavior:"smooth",block:"start"})}),[o]),x=t.useMemo((()=>({visibleItems:l,handleInView:m,handleOutView:f,scrollToItem:p,registerRef:d})),[l,m,f,p,d]);return e.jsx(c.Provider,{value:x,children:e.jsx("div",{ref:u,className:`${s}`,...n,children:r})})};function h(e){if(!e)return null;const t=window.getComputedStyle(e).overflowY;return"auto"===t||"scroll"===t?e:h(e.parentElement)}function C({onEnter:e,onLeave:r,threshold:s=0,rootMargin:o="0px",root:n}){const l=t.useRef(null);return t.useEffect((()=>{if("undefined"==typeof window||!("IntersectionObserver"in window))return;if(!l.current)return;const t=n??h(l.current),i=new IntersectionObserver((t=>{t.forEach((t=>{t.isIntersecting?e?.():r?.()}))}),{threshold:s,rootMargin:o,root:t});return i.observe(l.current),()=>{l.current&&i.unobserve(l.current),i.disconnect()}}),[e,r,s,o,n]),l}const v=({children:s,className:o="",value:n="",...l})=>{const{handleInView:i,handleOutView:a,registerRef:u}=t.useContext(c),d=C({onEnter:t.useCallback((()=>{n&&i(n)}),[n,i]),onLeave:t.useCallback((()=>{n&&a(n)}),[n,a]),threshold:.1}),m=t.useCallback((e=>{d&&"current"in d&&(d.current=e),n&&u(n,e)}),[d,n,u]);return e.jsx("div",{ref:m,className:r.clsx(o),...l,children:s})},b=Object.assign((()=>(console.warn("Direct usage of Minimap is not supported. Please use Minimap.Root, Minimap.Item instead."),null)),{Root:i,Item:u,Track:d,Line:m,Content:f,Bubble:p,Provider:x,Waypoint:v});exports.Bubble=p,exports.Content=f,exports.Item=u,exports.Line=m,exports.Provider=x,exports.Root=i,exports.Track=d,exports.Waypoint=v,exports.default=b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as e}from"react/jsx-runtime";import t,{createContext as r,useRef as n,useEffect as o}from"react";import{u as s,c as l}from"./useComponentClass-C0isGl1z.js";import{P as a}from"./index-
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import t,{createContext as r,useRef as n,useEffect as o}from"react";import{u as s,c as l}from"./useComponentClass-C0isGl1z.js";import{P as a}from"./index-BidxkqdT.js";import{R as i}from"./index-D8QLtYJh.js";import{c}from"./mergeProps-0RucjqeH.js";import"./ThemeContext-Sm-iNANd.js";import"./index-DH-14XDv.js";import"./keyboard-BKF7hXqL.js";import"./mergeRefs-B8eZ_q-T.js";const u=r({rootClass:"",rootRef:null}),m=t.forwardRef((({children:r,className:n,customRootClass:o="",...m},d)=>{const f=s(o,"Minimap"),p=t.useRef(null),h=t.useMemo((()=>c(p,d)),[d]),C=t.useMemo((()=>({rootClass:f,rootRef:p})),[f]);return e(u.Provider,{value:C,children:e(i.Root,{loop:!0,orientation:"both",children:e(i.Group,{children:e(a.div,{ref:h,className:l(f,n),...m,children:r})})})})}));m.displayName="Minimap.Root";const d=r({value:"",isVisible:!1}),f=r({visibleItems:[],handleInView:()=>{},handleOutView:()=>{},scrollToItem:()=>{},registerRef:()=>{}}),p=t.forwardRef((({children:r,className:n="",value:o,...s},c)=>{const{rootClass:m}=t.useContext(u)||{rootClass:""},{visibleItems:p,scrollToItem:h}=t.useContext(f),C=p.includes(o),b=t.useMemo((()=>({value:o,isVisible:C})),[o,C]),v=t.useCallback((()=>{h(o)}),[o,h]);return e(d.Provider,{value:b,children:e(i.Item,{children:e(a.button,{ref:c,onClick:v,className:l(m&&`${m}-item`,n),"data-in-view":C?"true":"false",...s,children:r})})})}));p.displayName="Minimap.Item";const h=t.forwardRef((({children:r,className:n="",...o},s)=>{const{rootClass:a}=t.useContext(u);return e("span",{ref:s,className:l(a&&`${a}-track`,n),...o,children:r})}));h.displayName="Minimap.Track";const C=t.forwardRef((({children:r,className:n="",...o},s)=>{const{rootClass:a}=t.useContext(u)||{rootClass:""},{value:i}=t.useContext(d)||{value:""},{visibleItems:c}=t.useContext(f),m=c.indexOf(i),p=-1!==m,h=-1!==m&&m<c.length-1,C=p&&h;return e("span",{ref:s,className:l(a&&`${a}-line`,n),"data-in-view":C?"true":"false",...o,children:r})}));C.displayName="Minimap.Line";const b=t.forwardRef((({children:r,className:n="",...o},s)=>{const{rootClass:a}=t.useContext(u);return e("span",{ref:s,className:l(a&&`${a}-content`,n),...o,children:r})}));b.displayName="Minimap.Content";const v=t.forwardRef((({children:r,className:n="",...o},s)=>{const{rootClass:a}=t.useContext(u)||{rootClass:""},{isVisible:i}=t.useContext(d)||{isVisible:!1};return e("span",{ref:s,className:l(a&&`${a}-bubble`,n),"data-in-view":i?"true":"false",...o,children:r})}));v.displayName="Minimap.Bubble";const w=({children:r,className:n="",scrollable:o,...s})=>{const[l,a]=t.useState([]),i=t.useRef(new Map),c=t.useRef(null),u=t.useCallback(((e,t)=>{t?i.current.set(e,t):i.current.delete(e)}),[]),m=t.useCallback((e=>{a((t=>{if(null===e||t.includes(e))return t;return[...t,e].sort(((e,t)=>{const r=i.current.get(e),n=i.current.get(t);if(!r||!n)return 0;return r.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}))}))}),[]),d=t.useCallback((e=>{a((t=>null!==e&&t.includes(e)?t.filter((t=>t!==e)):t))}),[]),p=t.useCallback((e=>{const t=i.current.get(e);if(!t)return;let r=null;if(o&&c.current)r=c.current;else{const e=t=>{if(!t||t===document.body)return null;const r=window.getComputedStyle(t);return("auto"===r.overflow||"scroll"===r.overflow||"auto"===r.overflowY||"scroll"===r.overflowY)&&t.scrollHeight>t.clientHeight?t:e(t.parentElement)};r=e(t.parentElement)}if(r){const e=t.getBoundingClientRect(),n=r.getBoundingClientRect(),o=e.top-n.top+r.scrollTop,s=r.scrollHeight-r.clientHeight,l=Math.max(0,Math.min(o,s));Math.abs(l-r.scrollTop)>1&&r.scrollTo({top:l,behavior:"smooth"})}else"function"==typeof t.scrollIntoView&&t.scrollIntoView({behavior:"smooth",block:"start"})}),[o]),h=t.useMemo((()=>({visibleItems:l,handleInView:m,handleOutView:d,scrollToItem:p,registerRef:u})),[l,m,d,p,u]);return e(f.Provider,{value:h,children:e("div",{ref:c,className:`${n}`,...s,children:r})})};function N(e){if(!e)return null;const t=window.getComputedStyle(e).overflowY;return"auto"===t||"scroll"===t?e:N(e.parentElement)}function g({onEnter:e,onLeave:t,threshold:r=0,rootMargin:s="0px",root:l}){const a=n(null);return o((()=>{if("undefined"==typeof window||!("IntersectionObserver"in window))return;if(!a.current)return;const n=l??N(a.current),o=new IntersectionObserver((r=>{r.forEach((r=>{r.isIntersecting?e?.():t?.()}))}),{threshold:r,rootMargin:s,root:n});return o.observe(a.current),()=>{a.current&&o.unobserve(a.current),o.disconnect()}}),[e,t,r,s,l]),a}const R=({children:r,className:n="",value:o="",...s})=>{const{handleInView:a,handleOutView:i,registerRef:c}=t.useContext(f),u=g({onEnter:t.useCallback((()=>{o&&a(o)}),[o,a]),onLeave:t.useCallback((()=>{o&&i(o)}),[o,i]),threshold:.1}),m=t.useCallback((e=>{u&&"current"in u&&(u.current=e),o&&c(o,e)}),[u,o,c]);return e("div",{ref:m,className:l(n),...s,children:r})},I=Object.assign((()=>(console.warn("Direct usage of Minimap is not supported. Please use Minimap.Root, Minimap.Item instead."),null)),{Root:m,Item:p,Track:h,Line:C,Content:b,Bubble:v,Provider:w,Waypoint:R});export{v as Bubble,b as Content,p as Item,C as Line,w as Provider,m as Root,h as Track,R as Waypoint,I as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),n=require("react"),
|
|
1
|
+
'use client';"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),n=require("react"),r=require("./index-rUSzFrhJ.cjs"),t=require("./index-BwNOI8cB.cjs"),o=require("./useComponentClass-B0DF90tm.cjs"),s=require("./index-DrMwbB8q.cjs"),c=require("./keyboard-BBlFllyi.cjs"),i=require("./mergeRefs-BUn-enYe.cjs");require("./index-Bg-UeWCo.cjs"),require("./mergeProps-DW5qFqqJ.cjs"),require("./index-BZO29jsF.cjs"),require("./ThemeContext-t7IX-w6i.cjs");const u=n.createContext({isOpen:"",setIsOpen:()=>{},rootClass:"",contentLoop:!0}),l="NavigationMenu",a=n.forwardRef((({children:n,value:s,defaultValue:c="",onValueChange:i,customRootClass:a,loop:d=!0,contentLoop:f=!0,dir:p,className:m,...g},v)=>{const x=o.useComponentClass(a,l),[C,R]=t.useControllableState(s,c,i);return e.jsx("nav",{ref:v,dir:p,...g,children:e.jsx(u.Provider,{value:{isOpen:C,setIsOpen:R,rootClass:x,contentLoop:f,dir:p},children:e.jsx(r.RovingFocusGroupUtility.Root,{loop:d,dir:p,children:e.jsx(r.RovingFocusGroupUtility.Group,{className:o.clsx(x&&`${x}-root`,m),children:n})})})})}));a.displayName=l;const d=n.createContext({itemOpen:!1,handleTrigger:()=>{},triggerRef:{current:null}}),f=n.forwardRef((({value:r,children:t,className:l,onMouseEnter:a,onMouseLeave:f,onBlur:p,...m},g)=>{const{isOpen:v,setIsOpen:x,rootClass:C}=n.useContext(u),R=n.useRef(null),h=n.useRef(null),j=n.useId(),E=v===r,N=n.useRef(!1),y=n.useRef(null),O=()=>{null!==y.current&&(clearTimeout(y.current),y.current=null)};n.useEffect((()=>{E||(N.current=!1,O())}),[E]),n.useEffect((()=>O),[]);const k=n.useRef(new Set),L=n.useRef(!1),I=n.useCallback((e=>(k.current.add(e),()=>{k.current.delete(e)})),[]),F=()=>{const e=Array.from(k.current).filter((e=>e.isConnected));return 0!==e.length&&(e.sort(((e,n)=>e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1)),e[0].focus(),!0)};n.useEffect((()=>{E||(L.current=!1)}),[E]),n.useEffect((()=>{if(!E)return;const e=R.current,n=e?.ownerDocument??("undefined"!=typeof document?document:null);if(!n)return;const r=r=>{if(r.key!==c.KEYBOARD_KEYS.ESCAPE||r.defaultPrevented)return;const t=n.activeElement,o=!!e&&!!t&&e.contains(t),s=!t||t===n.body;x(""),(o||s)&&h.current?.focus()},t=n=>{const r=n.target;e&&r&&e.contains(r)||x("")};return n.addEventListener("keydown",r),n.addEventListener("pointerdown",t),()=>{n.removeEventListener("keydown",r),n.removeEventListener("pointerdown",t)}}),[E,x]);return e.jsx(d.Provider,{value:{itemOpen:E,handleTrigger:e=>{const n=!!e&&e.detail>0;E&&N.current&&n?N.current=!1:(N.current=!1,x(E?"":r))},triggerRef:h,contentId:j,registerLink:I,openAndFocusFirstLink:()=>{O(),N.current=!1,E?F():(L.current=!0,x(r))},flushPendingFocus:()=>{L.current&&(L.current=!1,F())}},children:e.jsx("div",{ref:i.mergeRefs(R,g),onMouseEnter:s.composeEventHandlers(a,(()=>{O(),E||(N.current=!0,x(r))})),onMouseLeave:s.composeEventHandlers(f,(()=>{O(),E&&(y.current=setTimeout((()=>{y.current=null,N.current=!1,x((e=>e===r?"":e))}),150))})),onBlur:s.composeEventHandlers(p,(e=>{if(!E)return;const n=e.relatedTarget;n&&!e.currentTarget.contains(n)&&x((e=>e===r?"":e))})),className:o.clsx(C&&`${C}-item`,l),...m,children:t})})}));f.displayName="NavigationMenuItem";const p=n.forwardRef((({children:t,className:l,onClick:a,onKeyDown:f,...p},m)=>{const{handleTrigger:g,itemOpen:v,triggerRef:x,contentId:C,openAndFocusFirstLink:R}=n.useContext(d),{rootClass:h}=n.useContext(u);return e.jsx(r.RovingFocusGroupUtility.Item,{children:e.jsx("button",{ref:i.mergeRefs(x,m),onClick:s.composeEventHandlers(a,g),onKeyDown:s.composeEventHandlers(f,(e=>{e.key===c.KEYBOARD_KEYS.ARROW_DOWN&&R&&(e.preventDefault(),R())})),className:o.clsx(h&&`${h}-trigger`,l),"aria-expanded":v,"aria-controls":v?C:void 0,"data-state":v?"open":"closed",...p,children:t})})}));p.displayName="NavigationMenuTrigger";const m=n.forwardRef((({children:t,className:s,loop:c,...i},l)=>{const{itemOpen:a,contentId:f,flushPendingFocus:p}=n.useContext(d),{rootClass:m,contentLoop:g,dir:v}=n.useContext(u),x=n.useRef(null),C=c??g;return n.useImperativeHandle(l,(()=>x.current)),n.useEffect((()=>{a&&p?.()}),[a]),a?e.jsx("div",{ref:x,id:f,className:o.clsx(m&&`${m}-content`,s),"data-state":a?"open":"closed",...i,children:e.jsx(r.RovingFocusGroupUtility.Root,{loop:C,orientation:"both",dir:v,children:e.jsx(r.RovingFocusGroupUtility.Group,{asChild:!1,children:t})})}):null}));m.displayName="NavigationMenuContent";const g=n.forwardRef((({children:t,href:c,className:l,onClick:a,...f},p)=>{const{rootClass:m,setIsOpen:g}=n.useContext(u),{registerLink:v}=n.useContext(d),x=n.useRef(null);n.useEffect((()=>{const e=x.current;if(e&&v)return v(e)}),[v]);return e.jsx(r.RovingFocusGroupUtility.Item,{children:e.jsx("a",{ref:i.mergeRefs(x,p),href:c,className:o.clsx(m&&`${m}-link`,l),...f,onClick:s.composeEventHandlers(a,(()=>g("")),{checkForDefaultPrevented:!1}),children:t})})}));g.displayName="NavigationMenuLink";const v={Root:a,Item:f,Trigger:p,Content:m,Link:g};exports.Content=m,exports.Item=f,exports.Link=g,exports.Root=a,exports.Trigger=p,exports.default=v;
|
|
@@ -9,6 +9,8 @@ interface NavigationMenuRootProps extends React__default.ComponentPropsWithoutRe
|
|
|
9
9
|
customRootClass?: string;
|
|
10
10
|
loop?: boolean;
|
|
11
11
|
contentLoop?: boolean;
|
|
12
|
+
/** Reading direction. In `rtl`, ArrowLeft moves to the next item. Content inherits it. */
|
|
13
|
+
dir?: 'ltr' | 'rtl';
|
|
12
14
|
}
|
|
13
15
|
declare const NavigationMenuRoot: React__default.ForwardRefExoticComponent<NavigationMenuRootProps & React__default.RefAttributes<HTMLElement>>;
|
|
14
16
|
|