@radui/ui 0.4.0 → 0.6.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/README.md +2 -0
- package/dist/components/Accordion.d.ts +19 -33
- package/dist/components/Accordion.js +1 -1
- package/dist/components/AlertDialog.d.ts +7 -3
- package/dist/components/AlertDialog.js +1 -1
- package/dist/components/AspectRatio.d.ts +2 -2
- package/dist/components/AspectRatio.js +1 -1
- package/dist/components/Avatar.js +1 -1
- package/dist/components/AvatarGroup.js +1 -1
- package/dist/components/{AvatarPrimitiveFallback-KiY3slgV.js → AvatarPrimitiveFallback-B1u295x6.js} +1 -1
- package/dist/components/Badge.js +1 -1
- package/dist/components/BlockQuote.js +1 -1
- package/dist/components/Breadcrumb.d.ts +70 -0
- package/dist/components/Breadcrumb.js +1 -0
- package/dist/components/Button.js +1 -1
- package/dist/components/Callout.js +1 -1
- package/dist/components/Card.js +1 -1
- package/dist/components/Checkbox.js +1 -1
- package/dist/components/CheckboxCards.js +1 -1
- package/dist/components/CheckboxGroup.js +1 -1
- package/dist/components/{CheckboxGroupPrimitive-DgfnzMT9.js → CheckboxGroupPrimitive-BWGRST9p.js} +1 -1
- package/dist/components/Code.js +1 -1
- package/dist/components/Collapsible.js +1 -1
- package/dist/components/Combobox.d.ts +3 -1
- package/dist/components/Combobox.js +1 -1
- package/dist/components/ComboboxPrimitive-C2sksm48.js +1 -0
- package/dist/components/Command.d.ts +113 -0
- package/dist/components/Command.js +1 -0
- package/dist/components/ContextMenu.d.ts +14 -10
- package/dist/components/ContextMenu.js +1 -1
- package/dist/components/DataList.d.ts +7 -2
- package/dist/components/DataList.js +1 -1
- package/dist/components/Dialog.d.ts +6 -3
- package/dist/components/Dialog.js +1 -1
- package/dist/components/Disclosure.d.ts +2 -0
- package/dist/components/Disclosure.js +1 -1
- package/dist/components/Drawer.d.ts +231 -0
- package/dist/components/Drawer.js +1 -0
- package/dist/components/DropdownMenu.d.ts +10 -6
- package/dist/components/DropdownMenu.js +1 -1
- package/dist/components/Em.js +1 -1
- package/dist/components/Fieldset.d.ts +43 -0
- package/dist/components/Fieldset.js +1 -0
- package/dist/components/Heading.js +1 -1
- package/dist/components/HoverCard.d.ts +10 -2
- package/dist/components/HoverCard.js +1 -1
- package/dist/components/Kbd.js +1 -1
- package/dist/components/Link.js +1 -1
- package/dist/components/LiveRegion.d.ts +73 -0
- package/dist/components/LiveRegion.js +1 -0
- package/dist/components/MenuPrimitive-COEgTo6S.js +1 -0
- package/dist/components/Menubar.d.ts +10 -6
- package/dist/components/Menubar.js +1 -1
- package/dist/components/Minimap.js +1 -1
- package/dist/components/NavigationMenu.d.ts +3 -0
- package/dist/components/NavigationMenu.js +1 -1
- package/dist/components/NumberField.d.ts +2 -0
- package/dist/components/NumberField.js +1 -1
- package/dist/components/Popover.d.ts +68 -0
- package/dist/components/Popover.js +1 -0
- package/dist/components/Progress.js +1 -1
- package/dist/components/Quote.d.ts +2 -0
- package/dist/components/Quote.js +1 -1
- package/dist/components/Radio.js +1 -1
- package/dist/components/RadioCards.js +1 -1
- package/dist/components/RadioGroup.js +1 -1
- package/dist/components/{RadioGroupPrimitive-tlWBfWJ8.js → RadioGroupPrimitive-BWUU-0Qh.js} +1 -1
- package/dist/components/ScrollArea.d.ts +15 -3
- package/dist/components/ScrollArea.js +1 -1
- package/dist/components/Select.d.ts +3 -1
- package/dist/components/Select.js +1 -1
- package/dist/components/Separator.js +1 -1
- package/dist/components/Skeleton.js +1 -1
- package/dist/components/Slider.js +1 -1
- package/dist/components/Spinner.js +1 -1
- package/dist/components/Splitter.js +1 -1
- package/dist/components/Steps.js +1 -1
- package/dist/components/Strong.js +1 -1
- package/dist/components/Switch.js +1 -1
- package/dist/components/TabNav.js +1 -1
- package/dist/components/Table.d.ts +65 -19
- package/dist/components/Table.js +1 -1
- package/dist/components/Tabs.d.ts +2 -0
- package/dist/components/Tabs.js +1 -1
- package/dist/components/Text.js +1 -1
- package/dist/components/TextArea.js +1 -1
- package/dist/components/TextField.d.ts +41 -0
- package/dist/components/TextField.js +1 -0
- package/dist/components/Theme.d.ts +2 -0
- package/dist/components/Theme.js +1 -1
- package/dist/components/Toast.d.ts +322 -0
- package/dist/components/Toast.js +1 -0
- package/dist/components/Toggle.js +1 -1
- package/dist/components/ToggleGroup.js +1 -1
- package/dist/components/Toolbar.js +1 -1
- package/dist/components/Tooltip.d.ts +3 -0
- package/dist/components/Tooltip.js +1 -1
- package/dist/components/Tree.d.ts +1 -0
- package/dist/components/Tree.js +1 -1
- package/dist/components/VisuallyHidden.js +1 -1
- package/dist/components/documentOverlayOpen-coyGmcyL.js +1 -0
- package/dist/components/floating-ui.react-Byzse64h.js +5 -0
- package/dist/components/index-C09ZQH_q.js +1 -0
- package/dist/components/index-CD_nZA9X.js +1 -0
- package/dist/components/{index-BOy86lYu.js → index-CfC8-kd8.js} +1 -1
- package/dist/components/index-Db-tduwt.js +1 -0
- package/dist/components/index-UODM4mVT.js +1 -0
- package/dist/components/index-XF8itt-H.js +1 -0
- package/dist/components/index-YhJvxumL.js +1 -0
- package/dist/components/index-eAZUMNef.js +1 -0
- package/dist/components/index-m8Mhi26u.js +1 -0
- package/dist/components/keyboard-BKF7hXqL.js +1 -0
- package/dist/components/mergeProps-0RucjqeH.js +1 -0
- package/dist/components/useComponentClass-QwNivz0h.js +1 -0
- package/dist/themes/baremetal.css +1 -0
- package/dist/themes/default.css +1 -1
- package/dist/themes/tailwind-presets/default.css +396 -0
- package/package.json +76 -23
- package/dist/components/ComboboxPrimitive-D5wWLl2_.js +0 -1
- package/dist/components/MenuPrimitive-BvxwQFGM.js +0 -1
- package/dist/components/floating-ui.react-gB901AP2.js +0 -5
- package/dist/components/index-3dZuI04X.js +0 -1
- package/dist/components/index-6If6D2Zi.js +0 -1
- package/dist/components/index-98jQ1vTr.js +0 -1
- package/dist/components/index-BQ2Hbb_x.js +0 -1
- package/dist/components/index-BZVbVgqN.js +0 -1
- package/dist/components/index-BoRAvltW.js +0 -1
- package/dist/components/index-DTYJVF-V.js +0 -1
- package/dist/components/index-TYaYKM2M.js +0 -1
- package/dist/themes/tailwind-presets/default.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';import{createContext as e,useContext as t,forwardRef as n,useMemo as r,useState as i,useRef as o,useEffect as s,useCallback as a}from"react";import{jsx as l}from"react/jsx-runtime";import{c}from"./clsx-BaVHROc5.js";import{u}from"./index-UODM4mVT.js";import{u as d}from"./useComponentClass-QwNivz0h.js";import{D as p,a as m}from"./index-CD_nZA9X.js";import{F as f}from"./index-Db-tduwt.js";import{P as h}from"./index-XF8itt-H.js";import"./documentOverlayOpen-coyGmcyL.js";import"./ThemeContext-Sm-iNANd.js";import"./index-wRElCyvx.js";import"./index-CfC8-kd8.js";import"./floating-ui.react-Byzse64h.js";import"react-dom";import"./mergeProps-0RucjqeH.js";const g=e({rootClass:"",side:"right",dismissDirection:"right",isOpen:!1,onOpen:()=>{},snapPoints:[],activeSnapPoint:null,setActiveSnapPoint:()=>{},snapToSequentialPoints:!1,modal:!0,disablePointerDismissal:!1,shouldKeepMounted:!1,requestClose:()=>{},markIntentionalClose:()=>{},setTitleId:()=>{},setDescriptionId:()=>{},popupHeight:0,setPopupHeight:()=>{},registerContentElement:()=>{},childOpenCount:0,nestedSwiping:!1,setNestedSwiping:()=>{},depth:0}),v={movementX:"--rad-ui-drawer-swipe-movement-x",movementY:"--rad-ui-drawer-swipe-movement-y",snapPointOffset:"--rad-ui-drawer-snap-point-offset",progress:"--rad-ui-drawer-swipe-progress",strength:"--rad-ui-drawer-swipe-strength",height:"--rad-ui-drawer-height",nestedDrawers:"--rad-ui-nested-drawers"},y="[data-swipe-ignore],[data-rad-ui-swipe-ignore]";function w(e,t,n){return Math.min(Math.max(e,t),n)}function P(e,t,n){switch(e){case"up":return-n;case"down":return n;case"left":return-t;default:return t}}function C(e,t){return"left"===t||"right"===t?e.offsetWidth:e.offsetHeight}function x(e,t,n){if(!Number.isFinite(t)||t<=0)return null;if("number"==typeof e)return Number.isFinite(e)?e<=1?w(e,0,1)*t:e:null;const r=e.trim();if(r.endsWith("px")){const e=Number.parseFloat(r);return Number.isFinite(e)?e:null}if(r.endsWith("rem")){const e=Number.parseFloat(r);return Number.isFinite(e)?e*n:null}return null}function b(e,t){let n=-1,r=1/0;for(let i=0;i<e.length;i+=1){const o=Math.abs(e[i].offset-t);o<r&&(r=o,n=i)}return n}function S({snapPoints:e,currentOffset:t,popupHeight:n,dragDelta:r,directionalVelocity:i,snapToSequentialPoints:o}){if(!e.length||n<=0)return{type:"stay"};const s=Math.sign(r),a=w(t+r,0,n),l=Math.abs(i)>=.5?300*w(i,-4,4):0,c=o?a:w(a+l,0,n),u=[...e].sort(((e,t)=>e.offset-t.offset));let d=function(e,t){const n=b(e,t);return-1===n?null:e[n]}(u,c),p=c;if(o){const e=b(u,t);if(0!==s&&Math.sign(i)===s&&Math.abs(i)>=.5){const t=w(e+s,0,u.length-1);if(t!==e){const e=u[t];(s>0?c<e.offset:c>e.offset)&&(d=e,p=e.offset)}else if(s>0)return{type:"close",snapPoint:d}}}else if(i>=.5&&r>0)return{type:"close",snapPoint:d};return Math.abs(p-n)<(d?Math.abs(p-d.offset):1/0)?{type:"close",snapPoint:d}:{type:"settle",snapPoint:d}}const D=e({depth:0,onChildOpenChange:()=>{},onChildSwipingChange:()=>{}});function O(e,t){const n="open"===t?500:400;if(!e||"undefined"==typeof window||!window.getComputedStyle)return n;const r="open"===t?"--rad-ui-drawer-open-duration":"--rad-ui-drawer-close-duration";return function(e){if(!e)return null;const t=e.trim();if(!t||"auto"===t||"normal"===t)return null;const n=Number.parseFloat(t);return Number.isFinite(n)?t.endsWith("ms")?n:t.endsWith("s")?1e3*n:n:null}(window.getComputedStyle(e).getPropertyValue(r))??n}function N(e,t,n){return new Promise((r=>{if(n?.aborted||!e)return void r();let i,o,s,a=!1;const l=()=>{a||(a=!0,void 0!==i&&clearTimeout(i),void 0!==o&&cancelAnimationFrame(o),n&&s&&n.removeEventListener("abort",s),r())},c=e;if("function"!=typeof c.getAnimations)i=setTimeout(l,t);else{let e=[];try{e=c.getAnimations()}catch{e=[]}i=setTimeout(l,t),e.length?Promise.all(e.map((e=>e.finished.catch((()=>{}))))).then(l):o=requestAnimationFrame(l)}n&&(s=l,n.addEventListener("abort",s))}))}const T="Drawer",M=n((({children:e,customRootClass:n="",className:m="",defaultOpen:f=!1,open:h,onOpenChange:v,onOpenChangeComplete:y,snapPoints:w=[],defaultSnapPoint:P=null,snapPoint:C,onSnapPointChange:x,snapToSequentialPoints:b=!1,modal:S=!0,disablePointerDismissal:M=!1,swipeDirection:F="right",triggerId:E,defaultTriggerId:I,actionsRef:Y},A)=>{const H=d(n,T),X=r((()=>function(e){switch(e){case"up":return"top";case"down":return"bottom";default:return e}}(F)),[F]),q=r((()=>function(e){switch(e){case"top":return"up";case"bottom":return"down";default:return e}}(X)),[X]),$=t(D),k=void 0!==h,[L,j]=i(f),R=k?h:L;u(R);const z=o(R);z.current=R;const W=o(null),V=o(!1),K=o(M);s((()=>{K.current=M}),[M]);const[B,U]=i(!1),Z=a(((e="close-press")=>{V.current=!0,W.current=e}),[]),G=a(((e,t)=>{const n=W.current??(e?"trigger-press":"none");W.current=null;const r=V.current;if(V.current=!1,!e&&K.current&&!r)return;let i=!1,o=!1;const s={reason:n,cancel:()=>{i=!0},get isCanceled(){return i},preventUnmountOnClose:()=>{o=!0},event:t};v&&(v.length<=1?v(e):v(e,s)),i||(o&&U(!0),k||j(e))}),[k,v]);s((()=>{R&&U(!1)}),[R]);const J=void 0!==C,[Q,_]=i(P??(w.length>0?w[0]:null)),ee=J?C:Q,te=a((e=>{J||_(e),x?.(e)}),[J,x]),[ne,re]=i(0),ie=a((e=>{re((t=>t===e?t:e))}),[]),oe=a((e=>{Y&&"current"in Y&&(Y.current=e)}),[Y]);s((()=>{if(!Y)return;oe({close:()=>{Z("imperative-action"),G(!1)},unmount:()=>{U(!1),z.current&&!k&&(Z("imperative-action"),G(!1)),_(P??w[0]??null)}})}),[Y,P,G,k,Z,oe,w]);const se=o(null),ae=a((e=>{se.current=e}),[]),le=o(y);le.current=y,s((()=>{const e=new AbortController,t=R,n=requestAnimationFrame((()=>{const n=se.current;le.current&&N(n,O(n,t?"open":"close"),e.signal).then((()=>{e.signal.aborted||le.current?.(z.current)}))}));return()=>{e.abort(),cancelAnimationFrame(n)}}),[R]);const ce=o(!1);s((()=>{R&&!ce.current?(ce.current=!0,$.onChildOpenChange(!0)):!R&&ce.current&&(ce.current=!1,$.onChildOpenChange(!1))}),[R,$]),s((()=>()=>{ce.current&&($.onChildOpenChange(!1),ce.current=!1)}),[]);const[ue,de]=i(0),pe=a((e=>{de((t=>Math.max(0,t+(e?1:-1)))),$.onChildOpenChange(e)}),[$]),[me,fe]=i(!1),he=a((e=>{fe(e),$.onChildSwipingChange(e)}),[$]);s((()=>{ue||fe(!1)}),[ue]);const ge=he,ve=r((()=>({depth:$.depth+1,onChildOpenChange:pe,onChildSwipingChange:he})),[pe,he,$.depth]),ye=a(((e,t)=>{Z(e),G(!1,t)}),[G,Z]),[we,Pe]=i(void 0),[Ce,xe]=i(void 0),be=a((e=>{Pe((t=>t===e?t:e))}),[]),Se=a((e=>{xe((t=>t===e?t:e))}),[]),De=r((()=>({rootClass:H,side:X,dismissDirection:q,isOpen:R,onOpen:()=>G(!0),snapPoints:w,activeSnapPoint:ee,setActiveSnapPoint:te,snapToSequentialPoints:b,popupHeight:ne,setPopupHeight:ie,modal:S,disablePointerDismissal:M,registerContentElement:ae,shouldKeepMounted:B,requestClose:ye,markIntentionalClose:Z,childOpenCount:ue,nestedSwiping:me,setNestedSwiping:ge,titleId:we,descriptionId:Ce,setTitleId:be,setDescriptionId:Se,depth:$.depth})),[ee,ue,Ce,q,M,G,B,R,Z,S,$.depth,ne,ae,ye,H,te,Se,ge,ie,be,X,w,b,me,we]);return l(D.Provider,{value:ve,children:l(p.Root,{ref:A,open:R,onOpenChange:G,className:c(H,m),disablePointerDismissal:M,children:l(g.Provider,{value:De,children:e})})})}));M.displayName=T;const F=n((({children:e,asChild:n,className:r="",...i},o)=>{const{rootClass:s}=t(g);return l(p.Trigger,{ref:o,className:c(s&&`${s}-trigger`,r),asChild:n,...i,children:e})}));F.displayName="DrawerTrigger";const E=n((({children:e,...t},n)=>l(p.Portal,{...t,children:e})));E.displayName="DrawerPortal";const I=n((({className:e="",forceMount:n=!1,...r},a)=>{const{rootClass:u,modal:d,disablePointerDismissal:p,markIntentionalClose:h}=t(g),{isOpen:v,handleOverlayClick:y}=t(m),[w,P]=i(v),[C,x]=i(v?"open":"closed"),b=o(null);if(s((()=>(b.current&&clearTimeout(b.current),v?(P(!0),requestAnimationFrame((()=>{requestAnimationFrame((()=>x("open")))}))):(x("closed"),b.current=setTimeout((()=>{P(!1)}),400)),()=>{b.current&&clearTimeout(b.current)})),[v]),!w&&!n)return null;const S=p?void 0:()=>{h(),y()},D=!0===d;return l(f.Overlay,{lockScroll:v&&D,ref:a,onClick:S,"data-state":C,style:!1===d?{pointerEvents:"none",background:"transparent"}:void 0,className:c(u&&`${u}-overlay`,e),...r})}));I.displayName="DrawerOverlay";const Y=e({element:null,height:0,resolvedSnapPoints:[],activeSnapPointOffset:0,activeSnapPoint:null,setActiveSnapPoint:()=>{},expanded:!1,dismissDirection:"right",pointerProps:{onPointerDown:()=>{}},touchProps:{onTouchStart:()=>{},onTouchMove:()=>{},onTouchEnd:()=>{},onTouchCancel:()=>{}}});function A(){return"undefined"==typeof window?0:window.innerHeight||document.documentElement.clientHeight||0}function H(){if("undefined"==typeof window)return 16;const e=Number.parseFloat(window.getComputedStyle(document.documentElement).fontSize);return Number.isFinite(e)&&e>0?e:16}function X(e,t,n,o){const a="up"===t||"down"===t,[l,c]=i(0),[u,d]=i(16);s((()=>{if(!a||!e.length)return;c(A()),d(H());const t=()=>{c(A()),d(H())};return window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)}),[e.length,a]);const p=r((()=>a&&e.length?function(e,t,n,r){if(!e.length||n<=0)return[];const i=Math.min(n,t||n),o=e.map((e=>{const o=x(e,t,r);if(null===o)return null;const s=w(o,0,i);return{value:e,height:s,offset:Math.max(0,n-s)}})).filter((e=>null!==e));if(o.length<2)return o;const s=[];for(let e=o.length-1;e>=0;e-=1){const t=o[e];s.some((e=>Math.abs(e.height-t.height)<=1))||s.push(t)}return s.reverse()}(e,l||n,n,u):[]),[n,u,e,a,l]);return r((()=>{if(!p.length||null===o)return{resolved:p,active:null,activeOffset:0,expanded:!1};const e=p.find((e=>Object.is(e.value,o)));if(e)return{resolved:p,active:e,activeOffset:e.offset,expanded:1===o};const t=x(o,l||n,u);if(null===t)return{resolved:p,active:null,activeOffset:0,expanded:!1};const r=w(t,0,n||l||t),i=Math.max(0,(n||r)-r);return{resolved:p,active:null,activeOffset:i,expanded:1===o}}),[o,n,p,u,l])}function q(e){return e.timeStamp>0?e.timeStamp:performance.now()}function $(e,t){let n=e;for(;n&&n!==t;){const e=window.getComputedStyle(n),t=("auto"===e.overflowY||"scroll"===e.overflowY)&&n.scrollHeight>n.clientHeight,r=("auto"===e.overflowX||"scroll"===e.overflowX)&&n.scrollWidth>n.clientWidth;if(t||r)return{element:n,axis:t?"y":"x"};n=n.parentElement}return null}function k(e,t,n){return"y"===t?"down"===n?e.scrollTop<=0:e.scrollTop>=e.scrollHeight-e.clientHeight:"right"===n?e.scrollLeft<=0:e.scrollLeft>=e.scrollWidth-e.clientWidth}let L=!1;function j(e){const{elementRef:t,dismissDirection:n,axis:r,enabled:l,disabledByNestedDrawer:c=!1,snapPoints:u,popupHeight:d=0,activeSnapPointOffset:p=0,snapToSequentialPoints:m=!1,onDismiss:f,onSettle:h,onSwipingChange:g,onProgress:x}=e,[b,D]=i(!1),[O,N]=i(!1),T=o(null),M=o(0),F=o(null),E=o(null),I=o(null),Y=o(null),A=o({onDismiss:f,onSettle:h,onSwipingChange:g,onProgress:x});A.current={onDismiss:f,onSettle:h,onSwipingChange:g,onProgress:x};const H=l&&!c,X=Boolean(u?.length)&&!("left"===(j=n)||"right"===j);var j;s((()=>{if(!u||u.length<2)return void(Y.current=null);const e=u.map((e=>e.offset)).sort(((e,t)=>e-t)),t=e[1]-e[0];Y.current=t>0?{min:e[0],range:t}:null}),[u]);const R=a((e=>{D(e),A.current.onSwipingChange?.(e)}),[]),z=a((e=>{const n=t.current;n&&(X?n.style.setProperty(v.movementY,`${function(e,t){const n=e+t;return n>=0?t:-Math.sqrt(-n)-e}(p,e)}px`):"x"===r?n.style.setProperty(v.movementX,`${e}px`):n.style.setProperty(v.movementY,`${e}px`))}),[p,r,t,X]),W=a((e=>{const r=t.current;if(!r)return;const i=Y.current;let o;if(i){const t=w((p||i.min)+e,0,d||p+i.range);o=w((t-i.min)/i.range,0,1)}else{const t=C(r,n);o=t>0?w(1-Math.max(0,e)/t,0,1):1}r.style.setProperty(v.progress,String(o)),A.current.onProgress?.(o)}),[p,n,t,d]),V=a((()=>{const e=t.current;e&&(e.style.removeProperty(v.movementX),e.style.removeProperty(v.movementY),e.style.removeProperty(v.strength),e.style.setProperty(v.progress,"1"))}),[t]),K=a(((e,t,r)=>{const i=F.current;if(F.current={x:e,y:t,time:r},!i)return 0;const o=Math.max(r-i.time,16);return P(n,(e-i.x)/o,(t-i.y)/o)}),[n]),B=a((()=>{const e=t.current;if(M.current=0,R(!1),!e)return void N(!1);I.current&&clearTimeout(I.current),N(!0),V(),A.current.onProgress?.(1);const n=()=>{e.removeEventListener("transitionend",n),N(!1)};e.addEventListener("transitionend",n),I.current=setTimeout(n,400)}),[V,t,R]),U=a(((e,r)=>{const i=t.current;if(R(!1),!i)return;const o=function({element:e,direction:t,displacement:n,velocity:r,snapPointOffset:i=0}){const o=C(e,t);if(o<=0)return null;const s=Math.max(0,o-(i+n));if(s<=0)return null;if(r<=.2)return null;const a=w(r,.2,4);return.1+(w(s/a,80,360)-80)/280*.9}({element:i,direction:n,displacement:r,velocity:e,snapPointOffset:X?p:0});null!==o&&i.style.setProperty(v.strength,String(o))}),[p,n,t,R,X]),Z=a(((e,t)=>{T.current={start:e,startDisplacement:M.current,startTime:t,axis:null,dragging:!1},M.current=0,F.current={...e,time:t},R(!0)}),[R]),G=a(((e,t)=>{const r=P(n,e,t),i=(X?p:0)+r;let o;var s;i<0?(s=i,o=Math.sign(s)*Math.sqrt(Math.abs(s))):o=r<0?.2*- -r:r,M.current=o,z(o),W(o)}),[p,n,X,z,W]),J=a(((e,r)=>{const i=T.current;if(T.current=null,E.current=null,!i)return void R(!1);if(!i.dragging)return M.current=0,void R(!1);const o=M.current;M.current=0;const s=e.x-i.start.x,a=e.y-i.start.y,l=P(n,s,a),c=r-i.startTime,f=c>0?P(n,s/Math.max(c,50),a/Math.max(c,50)):0;let h=0;const g=F.current;if(g){const t=r-g.time;if(t<=80){const r=Math.max(t,16);h=P(n,(e.x-g.x)/r,(e.y-g.y)/r)}}const v=0!==h?h:f;if(u?.length){const e=S({snapPoints:u,currentOffset:p,popupHeight:d,dragDelta:l,directionalVelocity:v,snapToSequentialPoints:m});if("close"===e.type)return A.current.onSettle?.(e.snapPoint),U(v,o),void A.current.onDismiss();if("settle"===e.type)return A.current.onSettle?.(e.snapPoint),void B()}const y=t.current,w=y?function(e,t){return Math.max(.5*C(e,t),10)}(y,n):0;h>0&&h>=.5||l>=w?(U(v,o),A.current.onDismiss()):B()}),[p,U,n,t,d,B,u,m,R]),Q=a((e=>{if(!H||0!==e.button)return;if("touch"===e.pointerType)return;const r=e.target;if(r?.closest?.(y))return;if(r?.closest?.('button,a,input,select,textarea,label,summary,[role="button"],[role="slider"],[contenteditable="true"],[data-no-drag]'))return;const i=t.current;if(!i)return;const o=$(r,i);o&&!k(o.element,o.axis,n)||(e.currentTarget.setPointerCapture?.(e.pointerId),E.current=!0,Z({x:e.clientX,y:e.clientY},q(e)))}),[H,n,t,Z]);s((()=>{const e=t.current;if(!e||!H)return;L||(L=!0,"undefined"!=typeof CSS&&"function"==typeof CSS.registerProperty&&[{name:v.movementX,syntax:"<length>",initialValue:"0px"},{name:v.movementY,syntax:"<length>",initialValue:"0px"},{name:v.snapPointOffset,syntax:"<length>",initialValue:"0px"},{name:v.progress,syntax:"<number>",initialValue:"1"},{name:v.strength,syntax:"<number>",initialValue:"1"}].forEach((e=>{try{CSS.registerProperty({...e,inherits:!1})}catch{}})));let n=null;const i=e=>{const t=T.current;if(!t||null!==n&&e.pointerId!==n)return;if("touch"===e.pointerType)return;null===n&&(n=e.pointerId);const i=e.clientX-t.start.x,o=e.clientY-t.start.y,s="x"===r?Math.abs(i):Math.abs(o),a="x"===r?Math.abs(o):Math.abs(i);if(null===t.axis){if(s<6)return;if(a>s)return T.current=null,E.current=null,void R(!1);t.axis=r}t.dragging=!0,K(e.clientX,e.clientY,q(e)),G(i,o)},o=e=>{null!==n&&e.pointerId!==n||(n=null,J({x:e.clientX,y:e.clientY},q(e)))},s=()=>{n=null,T.current=null,M.current=0,B()};return e.addEventListener("pointermove",i),e.addEventListener("pointerup",o),e.addEventListener("pointercancel",s),()=>{e.removeEventListener("pointermove",i),e.removeEventListener("pointerup",o),e.removeEventListener("pointercancel",s)}}),[H,G,r,t,J,K,R,B]);const _=a((e=>{const r=e.touches[0];if(!H||!r)return void(E.current=!1);const i=e.target;if(i?.closest?.(y))return void(E.current=!1);const o=t.current;if(!o)return void(E.current=!1);const s=$(i,o);E.current=!(s&&!k(s.element,s.axis,n))&&null,!1!==E.current&&Z({x:r.clientX,y:r.clientY},q(e))}),[H,n,t,Z]),ee=a((e=>{const t=T.current;if(!1===E.current)return;if(!t)return;const i=e.touches[0];if(!i)return;const o=i.clientX-t.start.x,s=i.clientY-t.start.y,a="x"===r?o:s,l="x"===r?s:o;if(null===t.axis){if(Math.abs(a)<6)return;if(Math.abs(l)>Math.abs(a))return E.current=!1,T.current=null,void R(!1);t.axis=r}if(P(n,o,s)<0)return E.current=!1,T.current=null,void R(!1);E.current=!0,t.dragging=!0,e.cancelable&&e.preventDefault(),K(i.clientX,i.clientY,q(e)),G(o,s)}),[G,r,n,K,R]),te=a((e=>{const t=e.changedTouches[0];if(!t)return T.current=null,void B();J({x:t.clientX,y:t.clientY},q(e))}),[J,B]),ne=a((()=>{E.current=!1,T.current=null,M.current=0,B()}),[B]);return s((()=>()=>{I.current&&clearTimeout(I.current)}),[]),s((()=>{H||(T.current=null,E.current=null,M.current=0,F.current=null,R(!1))}),[H,R]),s((()=>{if(l)return;t.current&&V()}),[V,t,l]),{swiping:b,isSnapping:O,pointerProps:{onPointerDown:Q},touchProps:{onTouchStart:_,onTouchMove:ee,onTouchEnd:te,onTouchCancel:ne}}}const R=n((({children:e,className:n="",asChild:u=!1,forceMount:d=!1,role:p="dialog","aria-modal":y,"aria-labelledby":w,"aria-describedby":P,initialFocus:C=0,finalFocus:x,disableSwipeDismiss:b=!1,style:S,...D},T)=>{const{rootClass:M,side:F,dismissDirection:E,isOpen:I,modal:A,snapPoints:H,activeSnapPoint:q,setActiveSnapPoint:$,snapToSequentialPoints:k,setPopupHeight:L,registerContentElement:R,shouldKeepMounted:z,requestClose:W,childOpenCount:V,nestedSwiping:K,setNestedSwiping:B,titleId:U,descriptionId:Z}=t(g),{getFloatingProps:G,refs:J,floaterContext:Q}=t(m),_=o(null),[ee,te]=i(null),[ne,re]=i(I?"open":"closed"),ie=a((e=>{_.current=e,te(e),R(e)}),[R]),oe=f.useMergeRefs([J.setFloating,ie,T]);s((()=>{if(!ee)return;const e=()=>L(ee.offsetHeight);if(e(),"undefined"==typeof ResizeObserver)return;const t=new ResizeObserver(e);return t.observe(ee),()=>t.disconnect()}),[ee,L]);const se=ee?.offsetHeight??0,{resolved:ae,activeOffset:le,expanded:ce}=X(H,E,se,q),ue=function(e){return"left"===e||"right"===e?"x":"y"}(F),de=a((()=>{W("swipe")}),[W]),pe=a((e=>{$(e?e.value:null)}),[$]),{swiping:me,isSnapping:fe,pointerProps:he,touchProps:ge}=j({elementRef:_,dismissDirection:E,axis:ue,enabled:I&&!b,disabledByNestedDrawer:V>0,snapPoints:ae,popupHeight:se,activeSnapPointOffset:le,snapToSequentialPoints:k,onDismiss:de,onSettle:pe,onSwipingChange:B}),ve=I||d||z,[ye,we]=i(I);s((()=>{if(ve)return void we(!0);const e=new AbortController;return N(ee,O(ee,"close"),e.signal).then((()=>{e.signal.aborted||we(!1)})),()=>e.abort()}),[ee,ve]),s((()=>{if(!ye)return void re("closed");if(!I)return void re("closed");const e=requestAnimationFrame((()=>re("open")));return()=>cancelAnimationFrame(e)}),[I,ye]),s((()=>{if(I||!x?.current)return;const e=requestAnimationFrame((()=>{x.current?.focus()}));return()=>cancelAnimationFrame(e)}),[x,I]);const Pe=y??!1!==A,Ce=w??U,xe=P??Z,be={outline:"none",[v.nestedDrawers]:String(V),[v.height]:se>0?`${se}px`:void 0,[v.snapPointOffset]:`${le}px`,...V>0?{"--drawer-peek-offset":20*V+"px"}:{},...S},Se=r((()=>({element:ee,height:se,resolvedSnapPoints:ae,activeSnapPointOffset:le,activeSnapPoint:q,setActiveSnapPoint:$,expanded:ce,dismissDirection:E,pointerProps:he,touchProps:ge})),[q,le,E,ee,ce,he,se,ae,$,ge]),{style:De,...Oe}=G()??{};if(!ye)return null;const Ne=!1!==A;return l(Y.Provider,{value:Se,children:l(f.FocusManager,{context:Q,modal:Ne,initialFocus:C,returnFocus:!x,children:l(h.div,{ref:oe,asChild:u,...Oe,...he,...ge,style:be,role:p,"aria-modal":Pe,"aria-hidden":I?void 0:"true","aria-labelledby":I?Ce:void 0,"aria-describedby":I?xe:void 0,"data-state":ne,"data-swipe-direction":F,"data-swiping":me?"true":void 0,"data-snapping":fe?"true":void 0,"data-swipe-dismiss":b?void 0:"","data-expanded":ae.length>0?ce?"true":"false":void 0,"data-child-open":V>0?"true":void 0,"data-nested-drawer-open":V>0?"true":void 0,"data-nested-drawer-swiping":K?"true":void 0,className:c(M&&`${M}-content`,n),...D,children:l("div",{className:c(M&&`${M}-content-inner`),children:e})})})})}));R.displayName="DrawerContent";const z=n((({children:e,className:n="",id:r,...i},o)=>{const{rootClass:a,setTitleId:u}=t(g),d=f.useId(),p=i.id??r??d;return s((()=>(u(p),()=>u(void 0))),[u,p]),l(h.h2,{ref:o,id:p,className:c(a&&`${a}-title`,n),...i,children:e})}));z.displayName="DrawerTitle";const W=n((({children:e,className:n="",id:r,...i},o)=>{const{rootClass:a,setDescriptionId:u}=t(g),d=f.useId(),p=i.id??r??d;return s((()=>(u(p),()=>u(void 0))),[u,p]),l(h.p,{ref:o,id:p,className:c(a&&`${a}-description`,n),...i,children:e})}));W.displayName="DrawerDescription";const V=n((({children:e,asChild:n,className:r="",onClick:i,...o},s)=>{const{rootClass:a,markIntentionalClose:u}=t(g);return l(p.Cancel,{ref:s,className:c(a&&`${a}-close`,r),asChild:n,onClick:e=>{u(),i?.(e)},...o,children:e})}));V.displayName="DrawerClose";const K=n((({className:e=""},n)=>{const{rootClass:r}=t(g),{pointerProps:i,touchProps:o,dismissDirection:s}=t(Y),u=a((e=>{"Escape"!==e.key&&"Enter"!==e.key&&" "!==e.key||e.preventDefault()}),[]);return l("div",{ref:n,"aria-hidden":"true","data-direction":s,onKeyDown:u,className:c(r&&`${r}-handle`,e),...i,...o,children:l("div",{className:`${r}-handle-grip`,"aria-hidden":"true"})})}));K.displayName="DrawerHandle";const B=n((({className:e="",openThreshold:n=48,size:r=20,children:i,style:s,disabled:u=!1,...d},p)=>{const{rootClass:m,side:f,isOpen:h,onOpen:v}=t(g),y=o(null),w=o(0),P=o(null),C=a(((e,t)=>{switch(f){case"right":return-e;case"left":return e;case"bottom":return-t;case"top":return t}}),[f]),x=a((e=>{const t=P.current;if(!t)return;const n=8*e;switch(f){case"right":t.style.transform=`translateX(${-n}px)`;break;case"left":t.style.transform=`translateX(${n}px)`;break;case"bottom":t.style.transform=`translateY(${-n}px)`;break;case"top":t.style.transform=`translateY(${n}px)`}t.style.setProperty("--swipe-progress",String(e))}),[f]),b=a((e=>{const t=P.current;if(t&&(e&&(t.style.transition="transform var(--rad-ui-motion-duration-normal) var(--rad-ui-motion-easing-standard)"),t.style.transform="",t.style.removeProperty("--swipe-progress"),e)){const e=()=>{t.style.transition="",t.removeEventListener("transitionend",e)};t.addEventListener("transitionend",e)}}),[]),S=a((e=>{if(0!==e.button||h)return;e.currentTarget.setPointerCapture(e.pointerId),y.current={startX:e.clientX,startY:e.clientY},w.current=0;const t=P.current;t&&(t.style.transition="none")}),[h]),D=a((e=>{if(!y.current)return;const t=e.clientX-y.current.startX,r=e.clientY-y.current.startY,i=Math.max(0,C(t,r)),o=Math.min(i/n,1);w.current=o,x(o)}),[C,n,x]),O=a((()=>{y.current&&(y.current=null,w.current>=1?(b(!1),v()):b(!0),w.current=0)}),[v,b]),N=a((()=>{y.current&&(y.current=null,w.current=0,b(!0))}),[b]),T=(()=>{const e={position:"fixed",zIndex:"var(--rad-ui-z-index-overlay)",touchAction:"none",userSelect:"none"};switch(f){case"right":return{...e,top:0,right:0,bottom:0,width:r};case"left":return{...e,top:0,left:0,bottom:0,width:r};case"bottom":return{...e,left:0,bottom:0,right:0,height:r};case"top":return{...e,left:0,top:0,right:0,height:r}}})();return u||h?null:l("div",{ref:e=>{P.current=e,"function"==typeof p?p(e):p&&(p.current=e)},"aria-hidden":"true","data-direction":f,onPointerDown:S,onPointerMove:D,onPointerUp:O,onPointerCancel:N,style:{...T,...s},className:c(m&&`${m}-swipe-zone`,e),...d,children:i})}));B.displayName="DrawerSwipeZone";const U=n(((e,t)=>(console.warn("Direct usage of Drawer is not supported. Please use Drawer.Root, Drawer.Content, etc. instead."),null)));U.displayName="Drawer";const Z=U;Z.Root=M,Z.Trigger=F,Z.Portal=E,Z.Overlay=I,Z.Content=R,Z.Title=z,Z.Description=W,Z.Close=V,Z.Handle=K,Z.SwipeZone=B;export{Z as default};
|
|
@@ -20,6 +20,8 @@ declare const DropdownMenuRoot: React.ForwardRefExoticComponent<{
|
|
|
20
20
|
defaultOpen?: boolean;
|
|
21
21
|
crossAxisOffset?: number;
|
|
22
22
|
mainAxisOffset?: number;
|
|
23
|
+
collisionBoundary?: Element | null | Array<Element | null>;
|
|
24
|
+
collisionPadding?: number;
|
|
23
25
|
loop?: boolean;
|
|
24
26
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
25
27
|
avoidCollision?: boolean;
|
|
@@ -41,11 +43,6 @@ declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<{
|
|
|
41
43
|
className?: string;
|
|
42
44
|
} & Omit<MenuPrimitiveTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
43
45
|
|
|
44
|
-
type MenuPrimitiveContentProps = {
|
|
45
|
-
children: React.ReactNode;
|
|
46
|
-
className?: string;
|
|
47
|
-
};
|
|
48
|
-
|
|
49
46
|
type DropdownMenuContentProps = {
|
|
50
47
|
children: React.ReactNode;
|
|
51
48
|
className?: string;
|
|
@@ -53,7 +50,12 @@ type DropdownMenuContentProps = {
|
|
|
53
50
|
declare const DropdownMenuContent: React.ForwardRefExoticComponent<{
|
|
54
51
|
children: React.ReactNode;
|
|
55
52
|
className?: string;
|
|
56
|
-
} & Omit<
|
|
53
|
+
} & Omit<{
|
|
54
|
+
children: React.ReactNode;
|
|
55
|
+
className?: string;
|
|
56
|
+
initialFocus?: number;
|
|
57
|
+
focusManagerDisabled?: boolean;
|
|
58
|
+
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
57
59
|
|
|
58
60
|
type DropdownMenuPortalProps = {
|
|
59
61
|
children: React.ReactNode;
|
|
@@ -105,6 +107,8 @@ declare const DropdownMenuSub: React.ForwardRefExoticComponent<{
|
|
|
105
107
|
defaultOpen?: boolean;
|
|
106
108
|
crossAxisOffset?: number;
|
|
107
109
|
mainAxisOffset?: number;
|
|
110
|
+
collisionBoundary?: Element | null | Array<Element | null>;
|
|
111
|
+
collisionPadding?: number;
|
|
108
112
|
loop?: boolean;
|
|
109
113
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
110
114
|
avoidCollision?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import o,{forwardRef as e}from"react";import{jsx as n}from"react/jsx-runtime";import{M as r}from"./MenuPrimitive-
|
|
1
|
+
'use client';import o,{forwardRef as e}from"react";import{jsx as n}from"react/jsx-runtime";import{M as r}from"./MenuPrimitive-COEgTo6S.js";import{u as t}from"./useComponentClass-QwNivz0h.js";import{c as s}from"./clsx-BaVHROc5.js";import a from"./Separator.js";import"./index-Db-tduwt.js";import"./floating-ui.react-Byzse64h.js";import"react-dom";import"./index-wRElCyvx.js";import"./index-UODM4mVT.js";import"./documentOverlayOpen-coyGmcyL.js";import"./index-XF8itt-H.js";import"./mergeProps-0RucjqeH.js";import"./index-CfC8-kd8.js";import"./ThemeContext-Sm-iNANd.js";const l=o.createContext(null),u="DropdownMenu",i=e((({children:o,customRootClass:e,className:a,...i},d)=>{const c=t(e,u);return n(l.Provider,{value:{rootClass:c},children:n(r.Root,{ref:d,className:s(c&&`${c}-root`,a),...i,children:o})})}));i.displayName=u;const d=e((({children:e,className:t,...a},u)=>{const i=o.useContext(l);if(!i)return console.warn("DropdownMenuTrigger should be used in the DropdownMenuRoot"),null;const{rootClass:d}=i;return n(r.Trigger,{ref:u,className:s(d&&`${d}-trigger`,t),...a,children:e})}));d.displayName="DropdownMenuTrigger";const c=e((({children:e,className:t,...a},u)=>{const i=o.useContext(l);if(!i)return console.warn("DropdownMenuContent should be used in the DropdownMenuRoot"),null;const{rootClass:d}=i;return n(r.Content,{ref:u,className:s(d&&`${d}-content`,t),...a,children:e})}));c.displayName="DropdownMenuContent";const p=e((({children:e,...t},s)=>{const a=o.useContext(l);if(!a)return console.warn("DropdownMenuPortal should be used in the DropdownMenuRoot"),null;const{rootClass:u}=a;return n(r.Portal,{ref:s,...t,children:e})}));p.displayName="DropdownMenuPortal";const m=e((({children:e,className:t,label:a,...u},i)=>{const d=o.useContext(l);if(!d)return console.warn("DropdownMenuItem should be used in the DropdownMenuRoot"),null;const{rootClass:c}=d;return n(r.Item,{ref:i,className:s(c&&`${c}-item`,t),label:a,...u,children:e})}));m.displayName="DropdownMenuItem";const w=e((({children:e,className:t,...a},u)=>{const i=o.useContext(l);if(!i)return console.warn("DropdownMenuSub should be used in the DropdownMenuRoot"),null;const{rootClass:d}=i;return n(r.Sub,{ref:u,className:s(d&&`${d}-sub`,t),...a,children:e})}));w.displayName="DropdownMenuSub";const h=e((({children:e,className:t,...a},u)=>{const i=o.useContext(l);if(!i)return console.warn("DropdownMenuSubTrigger should be used in the DropdownMenuRoot"),null;const{rootClass:d}=i;return n(r.Trigger,{ref:u,className:s(d&&`${d}-sub-trigger`,t),...a,children:e})}));h.displayName="DropdownMenuSubTrigger";const M=e((({className:e,...r},t)=>{const s=o.useContext(l);if(!s)return console.warn("DropdownMenuSeparator should be used within DropdownMenuRoot"),null;const{rootClass:u}=s;return n(a,{ref:t,customRootClass:u,className:e,...r})}));M.displayName="DropdownMenuSeparator";const D=e(((o,e)=>(console.warn("Direct usage of DropdownMenu is not supported. Please use DropdownMenu.Root, DropdownMenu.Item instead."),null)));D.displayName="DropdownMenu",D.Root=i,D.Trigger=d,D.Content=c,D.Portal=p,D.Item=m,D.Sub=w,D.SubTrigger=h,D.Separator=M;export{D as default};
|
package/dist/components/Em.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as
|
|
1
|
+
'use client';import{jsx as s}from"react/jsx-runtime";import r from"react";import{u as e}from"./useComponentClass-QwNivz0h.js";import{c as m}from"./clsx-BaVHROc5.js";import"./ThemeContext-Sm-iNANd.js";const o=r.forwardRef((({children:r,customRootClass:o,className:t,...a},c)=>{const i=e(o,"Em");return s("em",{ref:c,className:m(i,t),...a,children:r})}));o.displayName="Em";export{o as default};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
type FieldsetRootElement = HTMLFieldSetElement;
|
|
4
|
+
type FieldsetRootProps = {
|
|
5
|
+
customRootClass?: string;
|
|
6
|
+
color?: string;
|
|
7
|
+
size?: string;
|
|
8
|
+
variant?: string;
|
|
9
|
+
invalid?: boolean;
|
|
10
|
+
} & React.ComponentPropsWithoutRef<'fieldset'>;
|
|
11
|
+
declare const FieldsetRoot: React.ForwardRefExoticComponent<{
|
|
12
|
+
customRootClass?: string;
|
|
13
|
+
color?: string;
|
|
14
|
+
size?: string;
|
|
15
|
+
variant?: string;
|
|
16
|
+
invalid?: boolean;
|
|
17
|
+
} & Omit<React.DetailedHTMLProps<React.FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, "ref"> & React.RefAttributes<HTMLFieldSetElement>>;
|
|
18
|
+
|
|
19
|
+
type FieldsetLegendProps = React.ComponentPropsWithoutRef<'legend'>;
|
|
20
|
+
declare const FieldsetLegend: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLLegendElement>, HTMLLegendElement>, "ref"> & React.RefAttributes<HTMLLegendElement>>;
|
|
21
|
+
|
|
22
|
+
type FieldsetDescriptionProps = React.ComponentPropsWithoutRef<'p'>;
|
|
23
|
+
declare const FieldsetDescription: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
24
|
+
|
|
25
|
+
type FieldsetMessageProps = {
|
|
26
|
+
invalid?: boolean;
|
|
27
|
+
} & React.ComponentPropsWithoutRef<'p'>;
|
|
28
|
+
declare const FieldsetMessage: React.ForwardRefExoticComponent<{
|
|
29
|
+
invalid?: boolean;
|
|
30
|
+
} & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
31
|
+
|
|
32
|
+
declare const COMPONENT_NAME = "Fieldset";
|
|
33
|
+
type FieldsetProps = FieldsetRootProps;
|
|
34
|
+
type FieldsetComponent = React.ForwardRefExoticComponent<FieldsetProps & React.RefAttributes<FieldsetRootElement>> & {
|
|
35
|
+
Root: typeof FieldsetRoot;
|
|
36
|
+
Legend: typeof FieldsetLegend;
|
|
37
|
+
Description: typeof FieldsetDescription;
|
|
38
|
+
Message: typeof FieldsetMessage;
|
|
39
|
+
};
|
|
40
|
+
declare const Fieldset: FieldsetComponent;
|
|
41
|
+
|
|
42
|
+
export { COMPONENT_NAME, Fieldset as default };
|
|
43
|
+
export type { FieldsetDescriptionProps, FieldsetLegendProps, FieldsetMessageProps, FieldsetProps, FieldsetRootProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import{forwardRef as s}from"react";import{c as i}from"./clsx-BaVHROc5.js";import{u as a}from"./useComponentClass-QwNivz0h.js";import{c as t,a as d,b as l}from"./index-eAZUMNef.js";import"./ThemeContext-Sm-iNANd.js";const o="Fieldset",r=s((({children:s,className:r="",customRootClass:n="",color:c="",disabled:m=!1,invalid:p=!1,size:f="",variant:v="",...h},g)=>{const N=a(n,o),u=t("fieldset",{disabled:m,invalid:p,size:f,variant:v}),j=l(c),x=d(u,j,{"aria-invalid":p||void 0,"data-slot":"fieldset-root"});return e("fieldset",{ref:g,className:i(N,r),...h,disabled:m,...x,children:s})}));r.displayName=o;const n=s((({children:s,...i},a)=>e("legend",{ref:a,...i,"data-slot":"fieldset-legend",children:s})));n.displayName="FieldsetLegend";const c=s((({children:s,...i},a)=>e("p",{ref:a,...i,"data-slot":"fieldset-description",children:s})));c.displayName="FieldsetDescription";const m=s((({children:s,invalid:i,role:a,...t},d)=>e("p",{ref:d,...t,role:a??(i?"alert":void 0),"data-invalid":i?"":void 0,"data-slot":"fieldset-message",children:s})));m.displayName="FieldsetMessage";const p="Fieldset",f=s(((s,i)=>e(r,{ref:i,...s})));f.displayName=p,f.Root=r,f.Legend=n,f.Description=c,f.Message=m;export{p as COMPONENT_NAME,f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import s from"react";import{c as e}from"./clsx-BaVHROc5.js";import{
|
|
1
|
+
'use client';import s from"react";import{c as e}from"./clsx-BaVHROc5.js";import{u as a}from"./useComponentClass-QwNivz0h.js";import"./ThemeContext-Sm-iNANd.js";const o=s.forwardRef((({children:o,as:t="h1",customRootClass:r="",className:m="",...c},h)=>{const l=a(r,t),n=["h1","h2","h3","h4","h5","h6"].includes(t)?t:"h1";return s.createElement(n,{className:e(l,m),ref:h,...c},o)}));o.displayName="Heading";export{o as default};
|
|
@@ -9,6 +9,8 @@ type HoverCardRootProps = ComponentPropsWithoutRef<'div'> & {
|
|
|
9
9
|
customRootClass?: string;
|
|
10
10
|
openDelay?: number;
|
|
11
11
|
closeDelay?: number;
|
|
12
|
+
collisionBoundary?: Element | null | Array<Element | null>;
|
|
13
|
+
collisionPadding?: number;
|
|
12
14
|
};
|
|
13
15
|
declare const HoverCardRoot: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
14
16
|
open?: boolean;
|
|
@@ -16,6 +18,8 @@ declare const HoverCardRoot: React.ForwardRefExoticComponent<Omit<React.Detailed
|
|
|
16
18
|
customRootClass?: string;
|
|
17
19
|
openDelay?: number;
|
|
18
20
|
closeDelay?: number;
|
|
21
|
+
collisionBoundary?: Element | null | Array<Element | null>;
|
|
22
|
+
collisionPadding?: number;
|
|
19
23
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
20
24
|
|
|
21
25
|
type HoverCardTriggerProps = ComponentPropsWithoutRef<typeof Primitive.span>;
|
|
@@ -28,8 +32,12 @@ declare const HoverCardPortal: React.ForwardRefExoticComponent<_floating_ui_reac
|
|
|
28
32
|
rootElement?: HTMLElement | React.MutableRefObject<HTMLElement | null>;
|
|
29
33
|
} & React.RefAttributes<never>>;
|
|
30
34
|
|
|
31
|
-
type HoverCardContentProps = ComponentPropsWithoutRef<'div'
|
|
32
|
-
|
|
35
|
+
type HoverCardContentProps = ComponentPropsWithoutRef<'div'> & {
|
|
36
|
+
size?: string;
|
|
37
|
+
};
|
|
38
|
+
declare const HoverCardContent: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
39
|
+
size?: string;
|
|
40
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
33
41
|
|
|
34
42
|
type HoverCardArrowProps = Omit<ComponentPropsWithoutRef<typeof Floater.Arrow>, 'context'>;
|
|
35
43
|
declare const HoverCardArrow: React.ForwardRefExoticComponent<HoverCardArrowProps & React.RefAttributes<SVGSVGElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{createContext as e,forwardRef as r,useRef as o,useState as t,useEffect as
|
|
1
|
+
'use client';import{createContext as e,forwardRef as r,useRef as o,useState as t,useEffect as n,useContext as s}from"react";import{jsx as a}from"react/jsx-runtime";import{F as l}from"./index-Db-tduwt.js";import{u as i}from"./useComponentClass-QwNivz0h.js";import{u as c}from"./index-wRElCyvx.js";import{c as u}from"./clsx-BaVHROc5.js";import{P as d}from"./index-XF8itt-H.js";import{T as m}from"./ThemeContext-Sm-iNANd.js";import{c as g}from"./index-eAZUMNef.js";import"./floating-ui.react-Byzse64h.js";import"react-dom";import"./mergeProps-0RucjqeH.js";const f=e({}),p="HoverCard",h=r((({children:e,open:r,onOpenChange:s,customRootClass:d="",className:m="",openDelay:g=100,closeDelay:h=200,collisionBoundary:y=null,collisionPadding:C=4,...v},R)=>{const P=i(d,p),w=i(d,`${p}-trigger`),x=o(null),T=(Array.isArray(y)?y:[y]).filter((e=>null!=e)),N={padding:C,boundary:T,altBoundary:T.length>0},[D,j]=c(r,!1,s),H=e=>{j(e)},{refs:W,floatingStyles:A,context:E}=l.useFloating({open:D,onOpenChange:H,placement:"bottom",strategy:"fixed",middleware:[l.arrow({element:x}),l.offset(10),l.flip({mainAxis:!0,...N}),l.shift({...N})],whileElementsMounted:l.autoUpdate}),[F,M]=t(!1),O=o(null),L=o(null),b=l.useRole(E,{role:"dialog"}),S=l.useDismiss(E),{getReferenceProps:$,getFloatingProps:z}=l.useInteractions([b,S]);n((()=>()=>{O.current&&clearTimeout(O.current),L.current&&clearTimeout(L.current)}),[]);const B={isOpen:D,handleOpenChange:H,floatingRefs:W,floatingStyles:A,floatingContext:E,arrowRef:x,getReferenceProps:$,getFloatingProps:z,rootClass:P,rootTriggerClass:w,closeWithDelay:()=>{M(!0),L.current&&clearTimeout(L.current),h<=0?H(!1):L.current=setTimeout((()=>{M((e=>(e&&H(!1),e)))}),h)},closeWithoutDelay:()=>{H(!1)},openWithDelay:()=>{M(!1),L.current&&clearTimeout(L.current),O.current&&clearTimeout(O.current),g<=0?H(!0):O.current=setTimeout((()=>{H(!0)}),g)}};return a(f.Provider,{value:B,children:a("div",{ref:R,className:u(P&&`${P}-root`,m),"data-slot":"hover-card-root",...v,children:e})})}));h.displayName=p;const y=r((({children:e,className:r="",...o},t)=>{const{floatingRefs:n,getReferenceProps:i,closeWithDelay:c,openWithDelay:m,rootTriggerClass:g}=s(f),p=l.useMergeRefs([n.setReference,t]);return a(d.span,{ref:p,className:u(g,r),...i({"data-slot":"hover-card-trigger",onMouseEnter:m,onMouseLeave:c,...o}),children:e})}));y.displayName="HoverCardTrigger";const C=r((({children:e,rootElement:r,...o},i)=>{const c=s(m),[u,d]=t(null);return n((()=>{const e=(r&&"current"in r?r.current:r)||c?.portalRootRef.current||c?.containerRef.current||document.body;d(e)}),[r,c]),u?a(l.Portal,{root:u,...o,children:e}):null}));C.displayName="HoverCardPortal";const v=r((({children:e,className:r,size:o="",...t},i)=>{const{isOpen:c,floatingRefs:d,floatingStyles:m,getFloatingProps:p,rootClass:h,closeWithDelay:y,openWithDelay:C,closeWithoutDelay:v}=s(f);n((()=>{if(!c)return;const e=()=>v();return window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}}),[v,c]);const R=l.useMergeRefs([d.setFloating,i]),P=g("hover-card",{size:o});return c?a("div",{className:u(h,r),ref:R,style:m,...P,...p({"data-slot":"hover-card-content",onPointerEnter:C,onPointerLeave:y,...t}),children:e}):null}));v.displayName="HoverCardContent";const R=r(((e,r)=>{const{floatingContext:o,arrowRef:t,rootClass:n}=s(f),i=l.useMergeRefs([t,r]);return a(l.Arrow,{className:u(n&&`${n}-arrow`),"data-slot":"hover-card-arrow",...e,context:o,ref:i})}));R.displayName="HoverCardArrow";const P=r(((e,r)=>(console.warn("Direct usage of HoverCard is not supported. Please use HoverCard.Root, HoverCard.Trigger, etc. instead."),null)));P.displayName="HoverCard",P.Root=h,P.Trigger=y,P.Portal=C,P.Content=v,P.Arrow=R;export{P as default};
|
package/dist/components/Kbd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as s}from"react/jsx-runtime";import{forwardRef as
|
|
1
|
+
'use client';import{jsx as s}from"react/jsx-runtime";import{forwardRef as e}from"react";import{u as o}from"./useComponentClass-QwNivz0h.js";import{c as r}from"./clsx-BaVHROc5.js";import{c as t}from"./index-eAZUMNef.js";import"./ThemeContext-Sm-iNANd.js";const m=e((({children:e,customRootClass:m,className:a,size:i="",...c},n)=>{const d=o(m,"Kbd"),l=t("kbd",{size:i});return s("kbd",{ref:n,className:r(d,a),...l,...c,children:e})}));m.displayName="Kbd";export{m as default};
|
package/dist/components/Link.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as s}from"react/jsx-runtime";import r from"react";import{c as
|
|
1
|
+
'use client';import{jsx as s}from"react/jsx-runtime";import r from"react";import{c as o}from"./clsx-BaVHROc5.js";import{u as e}from"./useComponentClass-QwNivz0h.js";import{a,b as m,c as i}from"./index-eAZUMNef.js";import{P as t}from"./index-XF8itt-H.js";import"./ThemeContext-Sm-iNANd.js";import"./mergeProps-0RucjqeH.js";const c="Link",l=r.forwardRef((({children:r,href:l="#",customRootClass:n,className:f,size:p="",color:d="",asChild:h=!1,...j},u)=>{const x=e(n,c),C=a(i("link",{size:p}),m(d)),N=t.a;return s(N,{ref:u,asChild:h,href:l,className:o(x,f),...C,...j,children:r})}));l.displayName=c;export{l as default};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import React, { ElementRef, CSSProperties, ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
import Primitive from '~/core/primitives/Primitive';
|
|
3
|
+
|
|
4
|
+
type LiveRegionPoliteness = 'polite' | 'assertive' | 'off';
|
|
5
|
+
type LiveRegionRole = 'status' | 'alert' | 'log';
|
|
6
|
+
type LiveRegionRelevant = 'additions' | 'removals' | 'text' | 'all' | 'additions text';
|
|
7
|
+
type LiveRegionElement = ElementRef<typeof Primitive.div>;
|
|
8
|
+
type LiveRegionProps = {
|
|
9
|
+
/**
|
|
10
|
+
* Controls how urgently assistive technology should announce updates.
|
|
11
|
+
*/
|
|
12
|
+
politeness?: LiveRegionPoliteness;
|
|
13
|
+
/**
|
|
14
|
+
* Landmark role for the live region. `status` is appropriate for most
|
|
15
|
+
* non-blocking updates; use `alert` for urgent errors.
|
|
16
|
+
*/
|
|
17
|
+
role?: LiveRegionRole;
|
|
18
|
+
/**
|
|
19
|
+
* Whether assistive technology should announce the full region on updates.
|
|
20
|
+
*/
|
|
21
|
+
atomic?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Describes which changes should be announced.
|
|
24
|
+
*/
|
|
25
|
+
relevant?: LiveRegionRelevant;
|
|
26
|
+
/**
|
|
27
|
+
* Marks the region as temporarily busy while related updates are pending.
|
|
28
|
+
*/
|
|
29
|
+
busy?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Keeps the live region in the accessibility tree while visually hiding it.
|
|
32
|
+
*/
|
|
33
|
+
visuallyHidden?: boolean;
|
|
34
|
+
customRootClass?: string;
|
|
35
|
+
style?: CSSProperties;
|
|
36
|
+
} & Omit<ComponentPropsWithoutRef<typeof Primitive.div>, 'role' | 'aria-live' | 'aria-atomic' | 'aria-relevant' | 'aria-busy'>;
|
|
37
|
+
declare const LiveRegion: React.ForwardRefExoticComponent<{
|
|
38
|
+
/**
|
|
39
|
+
* Controls how urgently assistive technology should announce updates.
|
|
40
|
+
*/
|
|
41
|
+
politeness?: LiveRegionPoliteness;
|
|
42
|
+
/**
|
|
43
|
+
* Landmark role for the live region. `status` is appropriate for most
|
|
44
|
+
* non-blocking updates; use `alert` for urgent errors.
|
|
45
|
+
*/
|
|
46
|
+
role?: LiveRegionRole;
|
|
47
|
+
/**
|
|
48
|
+
* Whether assistive technology should announce the full region on updates.
|
|
49
|
+
*/
|
|
50
|
+
atomic?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Describes which changes should be announced.
|
|
53
|
+
*/
|
|
54
|
+
relevant?: LiveRegionRelevant;
|
|
55
|
+
/**
|
|
56
|
+
* Marks the region as temporarily busy while related updates are pending.
|
|
57
|
+
*/
|
|
58
|
+
busy?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Keeps the live region in the accessibility tree while visually hiding it.
|
|
61
|
+
*/
|
|
62
|
+
visuallyHidden?: boolean;
|
|
63
|
+
customRootClass?: string;
|
|
64
|
+
style?: CSSProperties;
|
|
65
|
+
} & Omit<React.ComponentPropsWithoutRef<React.ForwardRefExoticComponent<((React.InputHTMLAttributes<HTMLInputElement> & {
|
|
66
|
+
asChild?: boolean;
|
|
67
|
+
}) | (React.HTMLAttributes<HTMLElement> & {
|
|
68
|
+
asChild?: boolean;
|
|
69
|
+
children?: React.ReactNode;
|
|
70
|
+
})) & React.RefAttributes<HTMLElement>>>, "role" | "aria-atomic" | "aria-busy" | "aria-live" | "aria-relevant"> & React.RefAttributes<HTMLElement>>;
|
|
71
|
+
|
|
72
|
+
export { LiveRegion as default };
|
|
73
|
+
export type { LiveRegionElement, LiveRegionProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import{forwardRef as t}from"react";import{c as o}from"./clsx-BaVHROc5.js";import{P as i}from"./index-XF8itt-H.js";import{u as r}from"./useComponentClass-QwNivz0h.js";import"./mergeProps-0RucjqeH.js";import"./ThemeContext-Sm-iNANd.js";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"},n=t((({children:t,customRootClass:n,className:l,politeness:m="polite",role:p=("assertive"===m?"alert":"status"),atomic:c=!0,relevant:d="additions text",busy:u,visuallyHidden:v=!0,style:h,...x},f)=>{const g=r(n,s),j=v?{...a,...h}:h;return e(i.div,{ref:f,role:p,"aria-live":m,"aria-atomic":c,"aria-relevant":d,"aria-busy":u,"data-slot":"live-region-root",className:o(g,l),style:j,...x,children:t})}));n.displayName=s;export{n as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
'use client';import{jsx as e,Fragment as n}from"react/jsx-runtime";import t,{forwardRef as i,useState as s,useRef as o,useContext as l,useEffect as a}from"react";import{F as r}from"./index-Db-tduwt.js";import{u as d}from"./index-wRElCyvx.js";import{u as c}from"./index-UODM4mVT.js";import{P as u}from"./index-XF8itt-H.js";import{B as f}from"./index-CfC8-kd8.js";import{T as m}from"./ThemeContext-Sm-iNANd.js";const p=t.createContext(null),g=i((({children:n,className:i,open:l,onOpenChange:a,defaultOpen:u=!1,crossAxisOffset:f,mainAxisOffset:m,collisionBoundary:g=null,collisionPadding:h=4,loop:v=!0,placement:x="bottom-start",avoidCollision:y=!0,rtl:P=!1,...N},b)=>{const[C,I]=d(l,u,a);c(C);const[R,O]=s(null),[F,M]=s(void 0),A=o([]),k=o([]),w=o([]),T=o(null),j=r.useFloatingNodeId(),S=r.useFloatingParentNodeId(),B=null!=S,H=f??0,D=void 0!==m?m:B?14:4,L=(Array.isArray(g)?g:[g]).filter((e=>null!=e)),E=L.length>0?{boundary:L,altBoundary:!0}:{},K={mainAxis:y,crossAxis:y&&!B,padding:h,...E},$={padding:h,crossAxis:!B,...E},z={padding:h,...E},{refs:U,floatingStyles:W,context:X}=r.useFloating({open:C,nodeId:j,onOpenChange:I,strategy:"fixed",transform:!1,placement:B?"right-start":x,middleware:[r.offset({mainAxis:D,crossAxis:H}),...y?[r.flip(K),r.shift($)]:[],...B?[]:[r.size({...z,apply({availableHeight:e,elements:n}){M(e),n.floating.style.maxHeight=`${e}px`}})]],whileElementsMounted:r.autoUpdate}),Y=r.useListNavigation(X,{listRef:k,activeIndex:R,nested:B,rtl:P,loop:v,onNavigate:O}),q=r.useClick(X,{}),G=r.useHover(X,{enabled:B,delay:{open:75},handleClose:r.safePolygon({blockPointerEvents:!0})}),J=r.useDismiss(X,{bubbles:!0}),Q=r.useTypeahead(X,{listRef:w,onMatch:C?O:void 0,activeIndex:R}),{getReferenceProps:V,getFloatingProps:Z,getItemProps:_}=r.useInteractions([J,q,Y,G,Q]),ee={isOpen:C,setIsOpen:I,refs:U,floatingStyles:W,maxHeight:F,getReferenceProps:V,getFloatingProps:Z,getItemProps:_,activeIndex:R,setActiveIndex:O,listRef:A,elementsRef:k,labelsRef:w,virtualItemRef:T,nodeId:j,isNested:B,floatingContext:X,rtl:P},ne=r.useFloatingTree();return t.useEffect((()=>{if(ne)return ne.events.on("click",e),()=>{ne.events.off("click",e)};function e(){I(!1)}}),[ne,j,S]),e("div",{ref:b,className:i,"data-tree":"true",...N,children:e(p.Provider,{value:ee,children:e(r.FloatingNode,{id:j,children:n})})})}));g.displayName="MenuComponentRoot";const h=i((({children:n,className:t,open:i,onOpenChange:s,defaultOpen:o=!1,crossAxisOffset:l,mainAxisOffset:a,collisionBoundary:d,collisionPadding:c,...u},f)=>e(r.FloatingTree,{children:e(g,{ref:f,className:t,open:i,onOpenChange:s,defaultOpen:o,crossAxisOffset:l,mainAxisOffset:a,collisionBoundary:d,collisionPadding:c,...u,children:n})})));h.displayName="MenuPrimitiveRoot";const v=i((({children:n,className:i,label:s,disabled:o,asChild:l=!1,onSelect:a,...d},c)=>{const f=t.useContext(p),m=o?null:s,{ref:g,index:h}=r.useListItem({label:m}),v=r.useFloatingTree(),x=t.useCallback((e=>{"function"==typeof g?g(e):g&&(g.current=e),"function"==typeof c?c(e):c&&(c.current=e)}),[g,c]);if(!f)return null;const{activeIndex:y,getItemProps:P}=f,N=y===h,{onClick:b,onKeyDown:C,...I}=d;return e(u.button,{ref:x,tabIndex:N?0:-1,className:i,...P({...I,disabled:o,onClick(e){o||(b?.(e),e.defaultPrevented||(a?a(e):v?.events.emit("click")))},onKeyDown(e){C?.(e)}}),asChild:l,children:n})}));v.displayName="MenuPrimitiveItem";const x=i((({children:n,className:t,asChild:i,...s},o)=>{const a=l(p),{ref:d,index:c}=r.useListItem(),u=r.useMergeRefs([a?.refs.setReference,d,o]);if(!a)return null;const{activeIndex:m,getReferenceProps:g,isNested:h}=a;return e(f,{ref:u,...g({...s,className:t,tabIndex:h?m===c?0:-1:void 0}),asChild:i,children:n})}));x.displayName="MenuPrimitiveTrigger";const y=i((({children:t,className:i,initialFocus:s,focusManagerDisabled:o=!1,...a},d)=>{const c=l(p),u=r.useMergeRefs([c?.refs.setFloating,d]);if(!c||!c.isOpen)return null;const{floatingStyles:f,getFloatingProps:m,elementsRef:g,labelsRef:h,isNested:v,floatingContext:x,maxHeight:y}=c,P=a.style,N={...a};delete N.style;const b={overflowY:"auto",overflowX:"hidden",maxHeight:void 0!==y?`${y}px`:void 0,WebkitOverflowScrolling:"touch",overscrollBehavior:"contain"};return e(n,{children:e(r.FloatingList,{elementsRef:g,labelsRef:h,children:e(r.FocusManager,{context:x,disabled:o,modal:!1,initialFocus:s??(v?-1:0),returnFocus:!v,children:e("div",{ref:u,...m({...N,className:i,style:{...P,...f}}),children:e("div",{style:b,children:t})})})})})}));y.displayName="MenuPrimitiveContent";const P=i((({children:n,className:t,open:i,onOpenChange:s,defaultOpen:o=!1,...a},r)=>{const d=l(p);return e(g,{ref:r,className:t,open:i,onOpenChange:s,defaultOpen:o,rtl:d&&d.rtl||!1,...a,children:n})}));P.displayName="MenuPrimitiveSub";const N=i((({children:n,...t},i)=>{const o=l(p),d=l(m),[c,u]=s(!1),f=d?.portalRootRef.current??d?.containerRef.current??document.body;if(a((()=>{f&&u(!0)}),[f]),!o)return null;const{isOpen:g}=o;return g&&c?e(r.Portal,{root:f,...t,children:e("div",{ref:i,children:n})}):null}));N.displayName="MenuPrimitivePortal";const b=()=>(console.warn("Direct usage of MenuPrimitive is not supported. Please use MenuPrimitive.Root, MenuPrimitive.Item instead."),null);b.Root=h,b.Item=v,b.Trigger=x,b.Content=y,b.Sub=P,b.Portal=N;export{b as M,p as a};
|
|
@@ -14,11 +14,6 @@ type MenuPrimitiveItemProps = {
|
|
|
14
14
|
onSelect?: (event: React__default.MouseEvent<HTMLButtonElement>) => void;
|
|
15
15
|
};
|
|
16
16
|
|
|
17
|
-
type MenuPrimitiveContentProps = {
|
|
18
|
-
children: React__default.ReactNode;
|
|
19
|
-
className?: string;
|
|
20
|
-
};
|
|
21
|
-
|
|
22
17
|
type MenuPrimitiveTriggerProps = {
|
|
23
18
|
children: React__default.ReactNode;
|
|
24
19
|
className?: string;
|
|
@@ -97,6 +92,8 @@ declare const Menubar: {
|
|
|
97
92
|
defaultOpen?: boolean;
|
|
98
93
|
crossAxisOffset?: number;
|
|
99
94
|
mainAxisOffset?: number;
|
|
95
|
+
collisionBoundary?: Element | null | Array<Element | null>;
|
|
96
|
+
collisionPadding?: number;
|
|
100
97
|
loop?: boolean;
|
|
101
98
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
102
99
|
avoidCollision?: boolean;
|
|
@@ -109,7 +106,12 @@ declare const Menubar: {
|
|
|
109
106
|
Content: React$1.ForwardRefExoticComponent<{
|
|
110
107
|
children: React.ReactNode;
|
|
111
108
|
className?: string;
|
|
112
|
-
} & Omit<
|
|
109
|
+
} & Omit<{
|
|
110
|
+
children: React.ReactNode;
|
|
111
|
+
className?: string;
|
|
112
|
+
initialFocus?: number;
|
|
113
|
+
focusManagerDisabled?: boolean;
|
|
114
|
+
} & React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
113
115
|
Portal: React$1.ForwardRefExoticComponent<{
|
|
114
116
|
children: React.ReactNode;
|
|
115
117
|
} & Omit<{
|
|
@@ -137,6 +139,8 @@ declare const Menubar: {
|
|
|
137
139
|
defaultOpen?: boolean;
|
|
138
140
|
crossAxisOffset?: number;
|
|
139
141
|
mainAxisOffset?: number;
|
|
142
|
+
collisionBoundary?: Element | null | Array<Element | null>;
|
|
143
|
+
collisionPadding?: number;
|
|
140
144
|
loop?: boolean;
|
|
141
145
|
placement?: "top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end";
|
|
142
146
|
avoidCollision?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as e}from"react/jsx-runtime";import t,{forwardRef as n}from"react";import{
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import t,{forwardRef as n}from"react";import{u as r}from"./useComponentClass-QwNivz0h.js";import{c as o}from"./clsx-BaVHROc5.js";import{F as s}from"./index-Db-tduwt.js";import{M as a}from"./MenuPrimitive-COEgTo6S.js";import u from"./Separator.js";import"./ThemeContext-Sm-iNANd.js";import"./floating-ui.react-Byzse64h.js";import"react-dom";import"./index-wRElCyvx.js";import"./index-UODM4mVT.js";import"./documentOverlayOpen-coyGmcyL.js";import"./index-XF8itt-H.js";import"./mergeProps-0RucjqeH.js";import"./index-CfC8-kd8.js";const l=t.createContext(null),i=n((({children:n,customRootClass:a,className:u,dir:i,loop:c,...d},m)=>{const p=r(a,"Menubar"),[b,f]=t.useState([]),[h,g]=t.useState(0),[M,C]=t.useState(),v=t.useRef({}),N=t.useCallback(((e,t="closed")=>{f((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)):[...n,{id:e,state:t}]}))}),[]),x=t.useCallback(((e,t)=>{"open"===t&&C((e=>-1===e?e:void 0)),f((n=>n.map((n=>n.id===e?{...n,state:t}:n))))}),[]),y=t.useCallback(((e,t)=>{t?v.current[e]=t:delete v.current[e]}),[]),w=t.useCallback((e=>{const t=b[h],n=b[e];if(t&&x(t.id,"closed"),n){const e="open"===t?.state;x(n.id,e?"open":"closed")}g(e)}),[h,b,x]),I=t.useCallback((e=>{if(0===b.length)return;const t=h>=0?h:b.findIndex((e=>"open"===e.state));if(-1===t)return;const n=(t+e+b.length)%b.length,r=b[n];r&&(C(-1),f((e=>e.map(((e,t)=>({...e,state:t===n?"open":"closed"}))))),g(n),v.current[r.id]?.focus())}),[h,b]),R=t.useMemo((()=>({rootClass:p,registerItem:N,items:b,updateItemState:x,updateItemTrigger:y,navigateMenu:I,contentInitialFocus:M})),[p,N,b,x,y,I,M]);return e(l.Provider,{value:R,children:e(s.Composite,{ref:m,className:o(p&&`${p}-root`,u),dir:i,loop:c,...d,activeIndex:h,onNavigate:w,children:n})})}));i.displayName="MenubarRoot";const c=t.createContext(null),d=n((({children:n,className:r,...u},i)=>{const d=t.useContext(l),m=t.useContext(c);if(!d)return console.warn("MenubarTrigger should be used in the MenubarRoot"),null;const{rootClass:p,updateItemTrigger:b}=d;if(!m)return console.warn("MenubarTrigger should be used in the MenubarMenu"),null;const{id:f,isOpen:h}=m,g=t.useCallback((e=>{b(f,e),"function"==typeof i?i(e):i&&(i.current=e)}),[f,i,b]);return e(s.CompositeItem,{render:()=>e(a.Trigger,{ref:g,className:o(p&&`${p}-trigger`,r),"data-active":h,...u,children:n})})}));d.displayName="MenubarTrigger";const m=n((({children:n,className:r,...s},u)=>{const i=t.useContext(l);if(!i)return console.warn("MenubarContent should be used in the MenubarRoot"),null;const{rootClass:c,navigateMenu:d,contentInitialFocus:m}=i,{onKeyDown:p,...b}=s,f=t.useCallback((e=>{"function"==typeof u?u(e):u&&(u.current=e)}),[u]);t.useEffect((()=>{const e=e=>{if(!e.defaultPrevented)return"ArrowLeft"===e.key?(e.preventDefault(),void d(-1)):void("ArrowRight"===e.key&&(e.preventDefault(),d(1)))};return document.addEventListener("keydown",e,!0),()=>{document.removeEventListener("keydown",e,!0)}}),[d]);return e(a.Content,{ref:f,className:o(c&&`${c}-content`,r),focusManagerDisabled:-1===m,initialFocus:m,onKeyDown:e=>{if(p?.(e),!e.defaultPrevented)return"ArrowLeft"===e.key?(e.preventDefault(),void d(-1)):void("ArrowRight"===e.key&&(e.preventDefault(),d(1)))},...b,children:n})}));m.displayName="MenubarContent";const p=n((({children:n,...r},o)=>t.useContext(l)?e(a.Portal,{ref:o,...r,children:n}):(console.warn("MenubarPortal should be used in the MenubarRoot"),null)));p.displayName="MenubarPortal";const b=n((({children:n,className:r,label:s,...u},i)=>{const c=t.useContext(l);if(!c)return console.warn("MenubarItem should be used in the MenubarRoot"),null;const{rootClass:d}=c;return e(a.Item,{ref:i,className:o(d&&`${d}-item`,r),label:s,...u,children:n})}));b.displayName="MenubarItem";const f=n((({children:n,className:r,...s},u)=>{const i=t.useContext(l);if(!i)return console.warn("MenubarSub should be used in the MenubarRoot"),null;const{rootClass:c}=i;return e(a.Sub,{ref:u,className:o(c&&`${c}-sub`,r),...s,children:n})}));f.displayName="MenubarSub";const h=n((({children:n,className:r,...s},u)=>{const i=t.useContext(l);if(!i)return console.warn("MenubarSubTrigger should be used in the MenubarRoot"),null;const{rootClass:c}=i;return e(a.Trigger,{ref:u,className:o(c&&`${c}-sub-trigger`,r),...s,children:n})}));h.displayName="MenubarSubTrigger";const g=n((({children:n,className:r,...u},i)=>{const d=t.useContext(l),m=s.useId(),p=t.useId(),b=m??p;if(!d)return console.warn("MenubarMenu should be used in the MenubarRoot"),null;const{rootClass:f,registerItem:h,items:g,updateItemState:M}=d;t.useEffect((()=>{b&&h(b)}),[b]);const C="open"===g.find((e=>e.id===b))?.state;return e(a.Root,{ref:i,className:o(f&&`${f}-menu`,r),"data-id":b,"data-active":C,open:C,onOpenChange:e=>b&&M(b,e?"open":"closed"),...u,children:e(c.Provider,{value:{id:b,isOpen:C},children:n})})}));g.displayName="MenubarMenu";const M=n((({className:n,...r},o)=>{const s=t.useContext(l);if(!s)return console.warn("MenubarSeparator should be used within MenubarRoot"),null;const{rootClass:a}=s;return e(u,{ref:o,customRootClass:a,className:n,...r})}));M.displayName="MenubarSeparator";const C=()=>(console.warn("Direct usage of Menubar is not supported. Please use Menubar.Root, Menubar.Item instead."),null);C.Root=i,C.Menu=g,C.Trigger=d,C.Content=m,C.Portal=p,C.Item=b,C.Sub=f,C.SubTrigger=h,C.Separator=M;export{C as default};
|
|
@@ -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{c as s}from"./clsx-BaVHROc5.js";import{
|
|
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{c as s}from"./clsx-BaVHROc5.js";import{u as l}from"./useComponentClass-QwNivz0h.js";import{P as i}from"./index-XF8itt-H.js";import{R as a}from"./index-m8Mhi26u.js";import"./ThemeContext-Sm-iNANd.js";import"./mergeProps-0RucjqeH.js";import"./index-CfC8-kd8.js";import"./keyboard-BKF7hXqL.js";import"./mergeRefs-B8eZ_q-T.js";const c=r({rootClass:"",rootRef:null}),u=r({value:"",isVisible:!1}),d=r({visibleItems:[],handleInView:()=>{},handleOutView:()=>{},scrollToItem:()=>{},registerRef:()=>{}});function m(e){if(!e)return null;const t=window.getComputedStyle(e).overflowY;return"auto"===t||"scroll"===t?e:m(e.parentElement)}function h({onEnter:e,onLeave:t,threshold:r=0,rootMargin:s="0px",root:l}){const i=n(null);return o((()=>{if("undefined"==typeof window||!("IntersectionObserver"in window))return;if(!i.current)return;const n=l??m(i.current),o=new IntersectionObserver((r=>{r.forEach((r=>{r.isIntersecting?e?.():t?.()}))}),{threshold:r,rootMargin:s,root:n});return o.observe(i.current),()=>{i.current&&o.unobserve(i.current),o.disconnect()}}),[e,t,r,s,l]),i}const f=Object.assign((()=>(console.warn("Direct usage of Minimap is not supported. Please use Minimap.Root, Minimap.Item instead."),null)),{Root:({children:r,className:n,customRootClass:o="",...u})=>{const d=l(o,"Minimap"),m=t.useRef(null);return e(c.Provider,{value:{rootClass:d,rootRef:m},children:e(a.Root,{loop:!0,orientation:"both",children:e(a.Group,{children:e(i.div,{ref:m,className:s(d,n),...u,children:r})})})})},Item:({children:r,className:n="",value:o,...l})=>{const{rootClass:m}=t.useContext(c)||{rootClass:""},{visibleItems:h,scrollToItem:f}=t.useContext(d),v=h.includes(o),p=t.useMemo((()=>({value:o,isVisible:v})),[o,v]),C=t.useCallback((()=>{f(o)}),[o,f]);return e(u.Provider,{value:p,children:e(a.Item,{value:o,children:e(i.button,{onClick:C,className:s(m&&`${m}-item`,n),"data-in-view":v?"true":"false",...l,children:r})})})},Track:({children:r,className:n="",...o})=>{const{rootClass:l}=t.useContext(c);return e("div",{className:s(l&&`${l}-track`,n),...o,children:r})},Line:({children:r,className:n="",...o})=>{const{rootClass:l}=t.useContext(c)||{rootClass:""},{value:i}=t.useContext(u)||{value:""},{visibleItems:a}=t.useContext(d),m=a.indexOf(i),h=-1!==m,f=-1!==m&&m<a.length-1,v=h&&f;return e("div",{className:s(l&&`${l}-line`,n),"data-in-view":v?"true":"false",...o,children:r})},Content:({children:r,className:n="",...o})=>{const{rootClass:l}=t.useContext(c);return e("div",{className:s(l&&`${l}-content`,n),...o,children:r})},Bubble:({children:r,className:n="",...o})=>{const{rootClass:l}=t.useContext(c)||{rootClass:""},{isVisible:i}=t.useContext(u)||{isVisible:!1};return e("div",{className:s(l&&`${l}-bubble`,n),"data-in-view":i?"true":"false",...o,children:r})},Provider:({children:r,className:n="",scrollable:o,...s})=>{const[l,i]=t.useState([]),a=t.useRef(new Map),c=t.useRef(null),u=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),n=a.current.get(t);if(!r||!n)return 0;return r.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}))}))}),[]),h=t.useCallback((e=>{i((t=>null!==e&&t.includes(e)?t.filter((t=>t!==e)):t))}),[]),f=t.useCallback((e=>{const t=a.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"})}}),[]),v=t.useMemo((()=>({visibleItems:l,handleInView:m,handleOutView:h,scrollToItem:f,registerRef:u})),[l,m,h,f,u]);return e(d.Provider,{value:v,children:e("div",{ref:c,className:`${n}`,...s,children:r})})},Waypoint:({children:r,className:n="",value:o="",...l})=>{const{handleInView:i,handleOutView:a,registerRef:c}=t.useContext(d),u=h({onEnter:t.useCallback((()=>{console.log("waypoint",o,"in view"),i(o)}),[o,i]),onLeave:t.useCallback((()=>{console.log("waypoint",o,"out of view"),a(o)}),[o,a]),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:s(n),...l,children:r})}});export{f as default};
|
|
@@ -7,6 +7,8 @@ interface NavigationMenuRootProps extends React__default.ComponentPropsWithoutRe
|
|
|
7
7
|
defaultValue?: string;
|
|
8
8
|
onValueChange?: (value: string) => void;
|
|
9
9
|
customRootClass?: string;
|
|
10
|
+
loop?: boolean;
|
|
11
|
+
contentLoop?: boolean;
|
|
10
12
|
}
|
|
11
13
|
|
|
12
14
|
interface NavigationMenuItemProps extends React__default.ComponentPropsWithoutRef<'div'> {
|
|
@@ -18,6 +20,7 @@ interface NavigationMenuTriggerProps extends React__default.ComponentPropsWithou
|
|
|
18
20
|
|
|
19
21
|
interface NavigationMenuContentProps extends React__default.ComponentPropsWithoutRef<'div'> {
|
|
20
22
|
children: React__default.ReactNode;
|
|
23
|
+
loop?: boolean;
|
|
21
24
|
}
|
|
22
25
|
|
|
23
26
|
interface NavigationMenuLinkProps extends React__default.ComponentPropsWithoutRef<'a'> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as e}from"react/jsx-runtime";import
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import o from"react";import{R as n}from"./index-m8Mhi26u.js";import{u as t}from"./index-wRElCyvx.js";import{u as r}from"./useComponentClass-QwNivz0h.js";import{c as s}from"./clsx-BaVHROc5.js";import{c as a}from"./index-CXzybYmm.js";import{K as i}from"./keyboard-BKF7hXqL.js";import"./index-XF8itt-H.js";import"./mergeProps-0RucjqeH.js";import"./index-CfC8-kd8.js";import"./mergeRefs-B8eZ_q-T.js";import"./ThemeContext-Sm-iNANd.js";const l=o.createContext({isOpen:"",setIsOpen:()=>{},rootClass:"",contentLoop:!0}),c="NavigationMenu",m=o.forwardRef((({children:o,value:a,defaultValue:i="",onValueChange:m,customRootClass:d,loop:p=!0,contentLoop:u=!0,className:f,...h},C)=>{const g=r(d,c),[N,x]=t(a,i,m);return e("div",{ref:C,...h,children:e(l.Provider,{value:{isOpen:N,setIsOpen:x,rootClass:g,contentLoop:u},children:e(n.Root,{loop:p,children:e(n.Group,{className:s(g&&`${g}-root`,f),children:o})})})})}));m.displayName=c;const d=o.createContext({itemOpen:!1,handleTrigger:()=>{}}),p=o.forwardRef((({value:n,children:t,className:r,onMouseEnter:c,onMouseLeave:m,onKeyDown:p,...u},f)=>{const{isOpen:h,setIsOpen:C,rootClass:g}=o.useContext(l),N=h===n,x=()=>{C(N?"":n)};return e(d.Provider,{value:{itemOpen:N,handleTrigger:x},children:e("div",{ref:f,onMouseEnter:a(c,x),onMouseLeave:a(m,x),className:s(g&&`${g}-item`,r),onKeyDown:a(p,(e=>{e.key===i.ESCAPE&&C("")})),...u,children:t})})}));p.displayName="NavigationMenuItem";const u=o.forwardRef((({children:t,className:r,onClick:i,...c},m)=>{const{handleTrigger:p,itemOpen:u}=o.useContext(d),{rootClass:f}=o.useContext(l);return e(n.Item,{children:e("button",{ref:m,onClick:a(i,p),className:s(f&&`${f}-trigger`,r),"aria-expanded":u,"data-state":u?"open":"closed",...c,children:t})})}));u.displayName="NavigationMenuTrigger";const f=o.forwardRef((({children:t,className:r,loop:a,...i},c)=>{const{itemOpen:m}=o.useContext(d),{rootClass:p,contentLoop:u}=o.useContext(l),f=o.useRef(null),h=a??u;return o.useImperativeHandle(c,(()=>f.current)),m?e("div",{ref:f,className:s(p&&`${p}-content`,r),"data-state":m?"open":"closed",...i,children:e(n.Root,{loop:h,children:e(n.Group,{children:t})})}):null}));f.displayName="NavigationMenuContent";const h=o.forwardRef((({children:t,href:r,className:a,...i},c)=>{const{rootClass:m}=o.useContext(l);return e(n.Item,{children:e("a",{ref:c,href:r,className:s(m&&`${m}-link`,a),...i,children:t})})}));h.displayName="NavigationMenuLink";const C={Root:m,Item:p,Trigger:u,Content:f,Link:h};export{C as default};
|
|
@@ -2,6 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { ComponentPropsWithoutRef } from 'react';
|
|
3
3
|
|
|
4
4
|
type NumberFieldRootProps = {
|
|
5
|
+
customRootClass?: string;
|
|
5
6
|
name?: string;
|
|
6
7
|
defaultValue?: number | '';
|
|
7
8
|
value?: number | '';
|
|
@@ -24,6 +25,7 @@ type NumberFieldDecrementProps = ComponentPropsWithoutRef<'button'>;
|
|
|
24
25
|
declare const NumberField: {
|
|
25
26
|
(): null;
|
|
26
27
|
Root: React.ForwardRefExoticComponent<{
|
|
28
|
+
customRootClass?: string;
|
|
27
29
|
name?: string;
|
|
28
30
|
defaultValue?: number | "";
|
|
29
31
|
value?: number | "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use client';import{jsx as e}from"react/jsx-runtime";import
|
|
1
|
+
'use client';import{jsx as e}from"react/jsx-runtime";import t,{forwardRef as n,useContext as r}from"react";import{u as l}from"./index-wRElCyvx.js";import{u as a}from"./useComponentClass-QwNivz0h.js";import{c as s}from"./clsx-BaVHROc5.js";import{K as i}from"./keyboard-BKF7hXqL.js";import"./ThemeContext-Sm-iNANd.js";const o=t.createContext(null),d="NumberField",u=n((({children:t,customRootClass:n="",name:r,defaultValue:i="",value:u,onValueChange:m,largeStep:c,step:p,min:b,max:f,disabled:y,readOnly:N,required:h,id:v,className:D="",...C},O)=>{const F=a(n,d),[R,g]=l(u,i,m),w={inputValue:R,handleOnChange:e=>{g(""!==e?void 0!==f&&e>f?f:void 0!==b&&e<b?b:e:"")},handleStep:({type:e,direction:t})=>{let n=0;switch(e){case"small":if(!p)return;n=p;break;case"large":if(!c)return;n=c}"decrement"===t&&(n*=-1),(e=>{g((t=>{let n=t;""===n&&(n=void 0!==b?b:-1);const r=n+e;return void 0!==f&&r>f?f:void 0!==b&&r<b?b:r}))})(n)},id:v,name:r,disabled:y,readOnly:N,required:h,rootClass:F};return e("div",{ref:O,className:s(F&&`${F}-root`,D),...C,children:e(o.Provider,{value:w,children:t})})}));u.displayName=d;const m=n((({className:t,...n},l)=>{const a=r(o);if(!a)return console.error("NumberFieldInput must be used within a NumberField"),null;const{inputValue:d,handleOnChange:u,handleStep:m,id:c,name:p,disabled:b,readOnly:f,required:y,rootClass:N}=a;return e("input",{ref:l,type:"number",onKeyDown:e=>{e.key!==i.ARROW_UP||e.shiftKey||(e.preventDefault(),m({direction:"increment",type:"small"})),e.key!==i.ARROW_DOWN||e.shiftKey||(e.preventDefault(),m({direction:"decrement",type:"small"})),e.key===i.ARROW_UP&&e.shiftKey&&(e.preventDefault(),m({direction:"increment",type:"large"})),e.key===i.ARROW_DOWN&&e.shiftKey&&(e.preventDefault(),m({direction:"decrement",type:"large"}))},value:""===d?"":d,onChange:e=>{const t=e.target.value;u(""===t?"":Number(t))},id:c,name:p,disabled:b,readOnly:f,required:y,className:s(N&&`${N}-input`,t),...n})}));m.displayName="NumberFieldInput";const c=n((({children:t,className:n,onMouseDown:l,...a},i)=>{const d=r(o);if(!d)return console.error("NumberFieldIncrement must be used within a NumberField"),null;const{handleStep:u,rootClass:m,disabled:c,readOnly:p}=d;return e("button",{ref:i,onClick:()=>u({direction:"increment",type:"small"}),className:s(m&&`${m}-increment`,n),disabled:c||p,type:"button",...a,tabIndex:-1,onMouseDown:e=>{l?.(e),e.defaultPrevented||e.preventDefault()},children:t})}));c.displayName="NumberFieldIncrement";const p=n((({children:t,className:n,onMouseDown:l,...a},i)=>{const d=r(o);if(!d)return console.error("NumberFieldDecrement must be used within a NumberField"),null;const{handleStep:u,rootClass:m,disabled:c,readOnly:p}=d;return e("button",{ref:i,onClick:()=>u({direction:"decrement",type:"small"}),className:s(m&&`${m}-decrement`,n),disabled:c||p,type:"button",...a,tabIndex:-1,onMouseDown:e=>{l?.(e),e.defaultPrevented||e.preventDefault()},children:t})}));p.displayName="NumberFieldDecrement";const b=()=>(console.warn("Direct usage of NumberField is not supported. Please use NumberField.Root, NumberField.Item instead."),null);b.Root=u,b.Input=m,b.Increment=c,b.Decrement=p;export{b as default};
|