@skdx/react 0.38.0 → 0.39.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.
@@ -189,7 +189,7 @@ export interface AutocompleteProps extends PassThroughProps {
189
189
  loop?: boolean | undefined;
190
190
  /**
191
191
  * Filters and ranks Items: `'manual'` filters nothing (default), a predicate filters and ranks by score.
192
- * @default undefined — nothing is filtered; the consumer renders only the matching items, which is what an async or server-side search needs.
192
+ * @default undefined — with `options`, a case-insensitive substring match on each option's text; with hand-composed Items, nothing is filtered and the consumer renders only the matches.
193
193
  */
194
194
  filter?: AutocompleteFilter | undefined;
195
195
  /**
@@ -189,7 +189,7 @@ export interface AutocompleteProps extends PassThroughProps {
189
189
  loop?: boolean | undefined;
190
190
  /**
191
191
  * Filters and ranks Items: `'manual'` filters nothing (default), a predicate filters and ranks by score.
192
- * @default undefined — nothing is filtered; the consumer renders only the matching items, which is what an async or server-side search needs.
192
+ * @default undefined — with `options`, a case-insensitive substring match on each option's text; with hand-composed Items, nothing is filtered and the consumer renders only the matches.
193
193
  */
194
194
  filter?: AutocompleteFilter | undefined;
195
195
  /**
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";var Ma=Object.create;var Re=Object.defineProperty;var Na=Object.getOwnPropertyDescriptor;var Sa=Object.getOwnPropertyNames;var Ta=Object.getPrototypeOf,Va=Object.prototype.hasOwnProperty;var Aa=(e,t)=>{for(var n in t)Re(e,n,{get:t[n],enumerable:!0})},bt=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Sa(t))!Va.call(e,r)&&r!==n&&Re(e,r,{get:()=>t[r],enumerable:!(a=Na(t,r))||a.enumerable});return e};var Pe=(e,t,n)=>(n=e!=null?Ma(Ta(e)):{},bt(t||!e||!e.__esModule?Re(n,"default",{value:e,enumerable:!0}):n,e)),Ga=e=>bt(Re({},"__esModule",{value:!0}),e);var La={};Aa(La,{CALENDAR_VIEWS:()=>M,CALENDAR_YEAR_PAGE:()=>Q,Calendar:()=>pa,CalendarCell:()=>Fe,CalendarGrid:()=>Te,CalendarGridBody:()=>He,CalendarGridContext:()=>Ae,CalendarGridHead:()=>Le,CalendarHeader:()=>Ie,CalendarHeading:()=>Ce,CalendarMonthGrid:()=>Je,CalendarNextButton:()=>Be,CalendarPreviousButton:()=>$e,CalendarProvider:()=>fa,CalendarRootContext:()=>ae,CalendarRow:()=>ne,CalendarWeekDay:()=>Ee,CalendarWeekNumber:()=>Ye,CalendarWeekNumberHeader:()=>We,CalendarYearGrid:()=>Xe,addDays:()=>F,addMonths:()=>N,addYears:()=>ke,anchorOf:()=>_,clampToDateRange:()=>Ve,clampToMonth:()=>Qe,clampView:()=>ft,clearLocaleNameCache:()=>y.clearLocaleNameCache,emptySelection:()=>pt,endOfWeek:()=>nt,formatDateLabel:()=>y.formatDateLabel,formatMonthLabel:()=>y.formatMonthLabel,formatViewPageLabel:()=>Y,formatYear:()=>y.formatYear,formatYearRange:()=>y.formatYearRange,getDaysInMonth:()=>he,getISOWeek:()=>it,getLocaleWeekStartsOn:()=>y.getLocaleWeekStartsOn,getMonthNames:()=>y.getMonthNames,getVisibleWeeks:()=>dt,getWeekDayNames:()=>y.getWeekDayNames,hasAvailableDate:()=>ut,isDateDisabled:()=>rt,isDateRange:()=>J,isDateSelected:()=>ot,isSameDay:()=>K,isSameMonth:()=>V,nextSelection:()=>ua,rangePositionOf:()=>Oe,resetInstantDateWarning:()=>Ha,resolveCalendarDisabled:()=>la,resolveLocale:()=>y.resolveLocale,selectionAnnouncement:()=>ma,startOfMonth:()=>O,startOfWeek:()=>ue,stripTime:()=>p,toISODateString:()=>me,useCalendarContext:()=>Ea,useCalendarContextInternal:()=>f,useCalendarGridMonth:()=>fe,warnInstantDate:()=>ca,yearPageStart:()=>Ze});module.exports=Ga(La);var s=Pe(require("react"),1),R=require("../utils/calendar-locale.cjs"),ra=require("../utils/composeRefs.cjs"),oa=require("../utils/createContext.cjs"),S=require("../utils/date-value.cjs"),ia=require("../utils/dev-mode.cjs"),je=require("../utils/liveAnnouncer.cjs"),da=require("../utils/part.cjs"),sa=require("../utils/primitive.cjs"),ge=require("../utils/useControllableState.cjs");var ta=Pe(require("react"),1),aa=require("../utils/Glyph.cjs");var Me=Pe(require("react"),1),xt=require("../utils/calendar-locale.cjs"),Ne=require("../utils/direction.cjs"),wt=require("../utils/part.cjs"),Se=require("../utils/primitive.cjs");var at=require("react/jsx-runtime"),Te=({monthOffset:e=0,ref:t,...n})=>{let a=f("CalendarGrid"),r=(0,Ne.useDirection)(),o=a.months[e]??a.month,d=Me.useMemo(()=>({gridMonth:o}),[o]),i=Me.useContext(ae),c=D=>{let l=Ve(D,a.minDate,a.maxDate);a.months.some(v=>V(l,v))||a.onMonthChange(O(l)),a.setFocusedDate(l),requestAnimationFrame(()=>{let v=me(l);(i?.current??document).querySelector(`[data-skdx-calendar-cell="${v}"]:not([disabled])`)?.focus()})},b=D=>{let l;switch((0,Ne.directionalKey)(D.key,D.currentTarget,r)){case"ArrowLeft":l=F(a.focusedDate,-1);break;case"ArrowRight":l=F(a.focusedDate,1);break;case"ArrowUp":l=F(a.focusedDate,-7);break;case"ArrowDown":l=F(a.focusedDate,7);break;case"Home":l=ue(a.focusedDate,a.weekStartsOn);break;case"End":l=nt(a.focusedDate,a.weekStartsOn);break;case"PageUp":l=D.shiftKey?ke(a.focusedDate,-1):N(a.focusedDate,-1);break;case"PageDown":l=D.shiftKey?ke(a.focusedDate,1):N(a.focusedDate,1);break;default:return}D.preventDefault(),c(l)},w=(0,Se.useComposedEventHandlers)(n.onKeyDown,b);return a.view!=="day"?null:(0,at.jsx)(Ae.Provider,{value:d,children:(0,at.jsx)(Se.Primitive.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:(0,xt.formatMonthLabel)(o,a.locale),"aria-multiselectable":a.selectionMode!=="single","aria-readonly":a.readOnly||void 0,"aria-disabled":a.disabled||void 0,...n,...(0,wt.skdxPart)("calendar","grid",n.className),ref:t,onKeyDown:w})})};Te.displayName="CalendarGrid";var Ft=require("../utils/part.cjs"),Ot=require("../utils/primitive.cjs");var vt=require("../utils/calendar-locale.cjs"),Rt=require("../utils/date-value.cjs"),Pt=require("../utils/part.cjs"),Ge=require("../utils/primitive.cjs");var kt=require("react/jsx-runtime");function Fa(e){return{"aria-selected":e.isSelected,"aria-disabled":e.isUnavailable||void 0,"aria-current":e.isToday?"date":void 0,"data-state":e.isSelected?"selected":void 0,"data-today":e.isToday?"":void 0,"data-outside-month":e.isOutsideMonth?"":void 0,"data-disabled":e.isDisabled?"":void 0,"data-unavailable":e.isUnavailable?"":void 0,"data-range-start":e.rangePosition==="start"?"":void 0,"data-range-middle":e.rangePosition==="middle"?"":void 0,"data-range-end":e.rangePosition==="end"?"":void 0,tabIndex:e.isFocused?0:-1}}var Fe=({date:e,ref:t,...n})=>{let a=f("CalendarCell"),r=fe(a.month),o=(0,Rt.toDate)(e,"date")??r,d=me(o),i=!V(o,r),c=a.disabled||i&&!a.outsideDaySelectable||rt(o,a.minDate,a.maxDate,a.isDateDisabled),b=!c&&(a.isDateUnavailable?.(o)??!1),w=ot(a.value,o),D=J(a.value)?Oe(a.value,o):void 0,l=K(o,a.today),v=K(o,a.focusedDate);return(0,kt.jsx)(Ge.Primitive.button,{type:"button",role:"gridcell","aria-label":(0,vt.formatDateLabel)(o,a.locale),"data-skdx-calendar-cell":d,...Fa({isSelected:w,isToday:l,isOutsideMonth:i,isDisabled:c,isUnavailable:b,isFocused:v,rangePosition:D}),disabled:c,...n,...(0,Pt.skdxPart)("calendar","cell",n.className),ref:t,onClick:(0,Ge.composeEventHandlers)(n.onClick,()=>{if(!c){if(b){a.setFocusedDate(o);return}a.onValueChange(o),a.setFocusedDate(o),i&&!a.months.some(E=>V(o,E))&&a.onMonthChange(o)}}),children:n.children??o.getDate()})};Fe.displayName="CalendarCell";var Mt=require("../utils/part.cjs"),Nt=require("../utils/primitive.cjs"),St=require("react/jsx-runtime"),ne=({ref:e,...t})=>(0,St.jsx)(Nt.Primitive.div,{role:"row",...t,...(0,Mt.skdxPart)("calendar","row",t.className),ref:e});ne.displayName="CalendarRow";var Tt=require("../utils/date-value.cjs"),Vt=require("../utils/part.cjs"),At=require("../utils/primitive.cjs");var Gt=require("react/jsx-runtime"),Ye=({date:e,children:t,ref:n,...a})=>{let r=f("CalendarWeekNumber"),o=(0,Tt.toDate)(e,"date")??r.month,d=it(o);return(0,Gt.jsx)(At.Primitive.div,{role:"rowheader","aria-label":`Week ${d}`,...a,...(0,Vt.skdxPart)("calendar","week-number",a.className),ref:n,children:t??d})};Ye.displayName="CalendarWeekNumber";var re=require("react/jsx-runtime"),He=({children:e,ref:t,...n})=>{let a=f("CalendarGridBody"),r=fe(a.month),o=dt(r,a.weekStartsOn);return(0,re.jsx)(Ot.Primitive.div,{role:"rowgroup",...n,...(0,Ft.skdxPart)("calendar","grid-body",n.className),ref:t,children:e??o.map(d=>(0,re.jsxs)(ne,{children:[a.weekNumbers?(0,re.jsx)(Ye,{date:d[0].date}):null,d.map(({date:i})=>(0,re.jsx)(Fe,{date:i},i.toISOString()))]},d[0].date.toISOString()))})};He.displayName="CalendarGridBody";var Ut=require("../utils/part.cjs"),Bt=require("../utils/primitive.cjs");var Yt=require("../utils/part.cjs"),Ht=require("../utils/primitive.cjs"),Et=require("react/jsx-runtime"),Ee=({ref:e,...t})=>(0,Et.jsx)(Ht.Primitive.div,{role:"columnheader",...t,...(0,Yt.skdxPart)("calendar","week-day",t.className),ref:e});Ee.displayName="CalendarWeekDay";var Wt=require("../utils/part.cjs"),Lt=require("../utils/primitive.cjs"),It=require("react/jsx-runtime"),We=({ref:e,...t})=>(0,It.jsx)(Lt.Primitive.div,{role:"columnheader","aria-label":"Week number",...t,...(0,Wt.skdxPart)("calendar","week-number-header",t.className),ref:e});We.displayName="CalendarWeekNumberHeader";var oe=require("react/jsx-runtime"),Le=({children:e,ref:t,...n})=>{let a=f("CalendarGridHead");return(0,oe.jsx)(Bt.Primitive.div,{role:"rowgroup",...n,...(0,Ut.skdxPart)("calendar","grid-head",n.className),ref:t,children:e??(0,oe.jsxs)(ne,{children:[a.weekNumbers?(0,oe.jsx)(We,{}):null,a.weekDayNames.map(r=>(0,oe.jsx)(Ee,{"aria-label":r.long,children:r.short},r.long))]})})};Le.displayName="CalendarGridHead";var Kt=require("../utils/part.cjs"),$t=require("../utils/primitive.cjs"),_t=require("react/jsx-runtime"),Ie=({ref:e,...t})=>(0,_t.jsx)($t.Primitive.div,{...t,...(0,Kt.skdxPart)("calendar","header",t.className),ref:e});Ie.displayName="CalendarHeader";var st=require("../utils/part.cjs"),pe=require("../utils/primitive.cjs");var lt=require("react/jsx-runtime"),Ce=({monthOffset:e=0,children:t,ref:n,...a})=>{let r=f("CalendarHeading"),o=r.months[e]??r.month,d=r.view==="day"?o:r.focusedDate,i=Y(d,r.view,r.locale),c=M[M.indexOf(r.view)+1];return c!==void 0&&M.indexOf(r.view)<M.indexOf(r.maxView)?(0,lt.jsx)(pe.Primitive.button,{type:"button",...a,...(0,st.skdxPart)("calendar","heading",a.className),ref:n,onClick:(0,pe.composeEventHandlers)(a.onClick,()=>r.setView(c)),children:t??i}):(0,lt.jsx)(pe.Primitive.div,{...a,...(0,st.skdxPart)("calendar","heading",a.className),ref:n,children:t??i})};Ce.displayName="CalendarHeading";var qt=require("../utils/part.cjs"),Ue=require("../utils/primitive.cjs");var zt=require("react/jsx-runtime"),Oa={day:"Next month",month:"Next year",year:"Next 20 years"},Be=({ref:e,...t})=>{let n=f("CalendarNextButton");return(0,zt.jsx)(Ue.Primitive.button,{type:"button","aria-label":Oa[n.view],...t,...(0,qt.skdxPart)("calendar","next-button",t.className),ref:e,onClick:(0,Ue.composeEventHandlers)(t.onClick,()=>n.pageMonths(1))})};Be.displayName="CalendarNextButton";var Jt=require("../utils/part.cjs"),Ke=require("../utils/primitive.cjs");var Xt=require("react/jsx-runtime"),Ya={day:"Previous month",month:"Previous year",year:"Previous 20 years"},$e=({ref:e,...t})=>{let n=f("CalendarPreviousButton");return(0,Xt.jsx)(Ke.Primitive.button,{type:"button","aria-label":Ya[n.view],...t,...(0,Jt.skdxPart)("calendar","previous-button",t.className),ref:e,onClick:(0,Ke.composeEventHandlers)(t.onClick,()=>n.pageMonths(-1))})};$e.displayName="CalendarPreviousButton";var _e=Pe(require("react"),1),X=require("../utils/calendar-locale.cjs"),qe=require("../utils/direction.cjs"),Qt=require("../utils/liveAnnouncer.cjs"),ze=require("../utils/part.cjs"),H=require("../utils/primitive.cjs");var $=require("react/jsx-runtime");function ct(){return 4}function Zt(e,t){let n=f(t),a=_e.useContext(ae),r=(0,qe.useDirection)(),o=e,d=e==="month"?1:12,i=e==="month"?12:Q,c=n.focusedDate,b=e==="month"?c.getMonth():c.getFullYear()-Ze(c.getFullYear()),{locale:w,minDate:D,maxDate:l,isDateDisabled:v,today:E,value:W}=n,P=_(W),q=_e.useMemo(()=>{let g=(0,X.getMonthNames)(w,"short"),u=c.getFullYear();return Array.from({length:i},(Z,C)=>{let A=e==="month"?Qe(c,new Date(u,C,1)):N(c,(C-b)*d),x=e==="month"?u:A.getFullYear(),ie=e==="month"?new Date(x,C,1):new Date(x,0,1),de=e==="month"?new Date(x,C,he(x,C)):new Date(x,11,31),L=T=>T!==null&&T.getFullYear()===x&&(e==="year"||T.getMonth()===C);return{date:A,key:e==="month"?`${x}-${C}`:String(x),text:e==="month"?g[C]:(0,X.formatYear)(x,w),label:e==="month"?(0,X.formatMonthLabel)(new Date(x,C,1),w):(0,X.formatYear)(x,w),refused:!ut(ie,de,D,l,v),selected:L(P),today:L(E)}})},[e,i,d,c,b,w,D,l,v,P,E]),z=g=>{let u=N(c,g*d),Z=Y(c,o,w),C=Y(u,o,w);n.setFocusedDate(u),C!==Z&&(0,Qt.announce)(C),requestAnimationFrame(()=>{let A=e==="month"?`${u.getFullYear()}-${u.getMonth()}`:String(u.getFullYear());(a?.current??document).querySelector(`[data-skdx-calendar-view-cell="${A}"]`)?.focus({preventScroll:!0})})};return{context:n,cells:q,focusedIndex:b,handleKeyDown:g=>{let u;switch((0,qe.directionalKey)(g.key,g.currentTarget,r)){case"ArrowLeft":u=-1;break;case"ArrowRight":u=1;break;case"ArrowUp":u=-ct();break;case"ArrowDown":u=ct();break;case"Home":u=-b;break;case"End":u=i-1-b;break;case"PageUp":u=-i*(g.shiftKey?10:1);break;case"PageDown":u=i*(g.shiftKey?10:1);break;default:return}g.preventDefault(),u!==0&&z(u)}}}function jt({cells:e,focusedIndex:t,navigate:n}){let a=[],r=ct();for(let o=0;o<e.length;o+=r)a.push(e.slice(o,o+r));return(0,$.jsx)(H.Primitive.div,{role:"rowgroup",children:a.map((o,d)=>(0,$.jsx)(H.Primitive.div,{role:"row",children:o.map((i,c)=>{let b=d*r+c;return(0,$.jsx)(H.Primitive.button,{type:"button",role:"gridcell","aria-disabled":i.refused||void 0,"aria-selected":i.selected,"aria-current":i.today?"date":void 0,"aria-label":i.label,"data-skdx-calendar-view-cell":i.key,"data-state":i.selected?"selected":void 0,"data-today":i.today?"":void 0,"data-disabled":i.refused?"":void 0,tabIndex:b===t?0:-1,...(0,ze.skdxPart)("calendar","view-cell"),onClick:()=>{i.refused||n(i.date)},children:i.text},i.key)})},o[0].key))})}var Je=({children:e,ref:t,...n})=>{let{context:a,cells:r,focusedIndex:o,handleKeyDown:d}=Zt("month","CalendarMonthGrid");return a.view!=="month"?null:(0,$.jsx)(H.Primitive.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:Y(a.focusedDate,"month",a.locale),"aria-readonly":a.readOnly||void 0,"aria-disabled":a.disabled||void 0,...n,...(0,ze.skdxPart)("calendar","month-grid",n.className),ref:t,onKeyDown:(0,H.composeEventHandlers)(n.onKeyDown,d),children:e??(0,$.jsx)(jt,{cells:r,focusedIndex:o,navigate:a.navigateToUnit})})};Je.displayName="CalendarMonthGrid";var Xe=({children:e,ref:t,...n})=>{let{context:a,cells:r,focusedIndex:o,handleKeyDown:d}=Zt("year","CalendarYearGrid");return a.view!=="year"?null:(0,$.jsx)(H.Primitive.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:Y(a.focusedDate,"year",a.locale),"aria-readonly":a.readOnly||void 0,"aria-disabled":a.disabled||void 0,...n,...(0,ze.skdxPart)("calendar","year-grid",n.className),ref:t,onKeyDown:(0,H.composeEventHandlers)(n.onKeyDown,d),children:e??(0,$.jsx)(jt,{cells:r,focusedIndex:o,navigate:a.navigateToUnit})})};Xe.displayName="CalendarYearGrid";var h=require("react/jsx-runtime"),ea=({dir:e})=>(0,h.jsx)(aa.Glyph,{name:e==="left"?"chevron-left":"chevron-right"}),na=()=>{let{months:e}=f("CalendarAnatomy"),t=e.length>1;return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsxs)(Ie,{children:[(0,h.jsx)($e,{children:(0,h.jsx)(ea,{dir:"left"})}),t?null:(0,h.jsx)(Ce,{}),(0,h.jsx)(Be,{children:(0,h.jsx)(ea,{dir:"right"})})]}),e.map((n,a)=>(0,h.jsxs)(ta.Fragment,{children:[t?(0,h.jsx)(Ce,{monthOffset:a}):null,(0,h.jsxs)(Te,{monthOffset:a,children:[(0,h.jsx)(Le,{}),(0,h.jsx)(He,{})]})]},n.toISOString())),(0,h.jsx)(Je,{}),(0,h.jsx)(Xe,{})]})};var De=require("react/jsx-runtime");function he(e,t){return new Date(e,t+1,0).getDate()}function O(e){return new Date(e.getFullYear(),e.getMonth(),1)}function N(e,t){let n=e.getDate(),a=new Date(e.getFullYear(),e.getMonth(),1);a.setMonth(a.getMonth()+t);let r=he(a.getFullYear(),a.getMonth());return a.setDate(Math.min(n,r)),a}function ke(e,t){return N(e,t*12)}function F(e,t){let n=new Date(e);return n.setDate(n.getDate()+t),n}function K(e,t){return!e||!t?!1:e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function V(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()}function ue(e,t){let n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),a=(n.getDay()-t+7)%7;return n.setDate(n.getDate()-a),n}function nt(e,t){return F(ue(e,t),6)}function p(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}function rt(e,t,n,a){let r=p(e).getTime();return!!(t&&r<p(t).getTime()||n&&r>p(n).getTime()||a?.(e))}function Ve(e,t,n){return t&&p(e).getTime()<p(t).getTime()?t:n&&p(e).getTime()>p(n).getTime()?n:e}function la(e,t){return{disabled:e??!1,isDateDisabled:t}}var mt=!1;function Ha(){mt=!1}function ca(e,t){!e||mt||!(e.getUTCHours()===0&&e.getUTCMinutes()===0&&e.getUTCSeconds()===0&&e.getUTCMilliseconds()===0)||e.getDate()===e.getUTCDate()&&e.getMonth()===e.getUTCMonth()||(mt=!0,(0,ia.isDevMode)()&&console.warn(`[skdx] Calendar: \`${t}\` was given ${e.toISOString()}, which is midnight UTC and therefore ${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} in this time zone \u2014 a different day from the one the string says. A selection here is a local wall-clock date, never an instant: build it as \`new Date(year, monthIndex, day)\` rather than \`new Date('YYYY-MM-DD')\`, which the platform reads as UTC.`))}function it(e){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate());t.setDate(t.getDate()-(t.getDay()+6)%7+3);let n=new Date(t.getFullYear(),0,4);return n.setDate(n.getDate()-(n.getDay()+6)%7+3),1+Math.round((t.getTime()-n.getTime())/(10080*60*1e3))}function me(e){let t=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0");return`${t}-${n}-${a}`}function Qe(e,t){if(V(e,t))return e;let n=he(t.getFullYear(),t.getMonth());return new Date(t.getFullYear(),t.getMonth(),Math.min(e.getDate(),n))}var M=["day","month","year"],Q=20;function ft(e,t,n){let a=M.indexOf(t),r=Math.max(a,M.indexOf(n));return M[Math.min(Math.max(M.indexOf(e),a),r)]}function Ze(e){return Math.floor(e/Q)*Q}function ut(e,t,n,a,r){let o=n&&p(n)>p(e)?p(n):p(e),d=a&&p(a)<p(t)?p(a):p(t);if(o.getTime()>d.getTime())return!1;if(!r)return!0;for(let i=o;i.getTime()<=d.getTime();i=F(i,1))if(!r(i))return!0;return!1}function Y(e,t,n){if(t==="day")return(0,R.formatMonthLabel)(e,n);if(t==="month")return(0,R.formatYear)(e.getFullYear(),n);let a=Ze(e.getFullYear());return(0,R.formatYearRange)(a,a+Q-1,n)}function dt(e,t=0){let n=ue(O(e),t),a=[],r=n;for(let o=0;o<6;o++){let d=[];for(let i=0;i<7;i++)d.push({date:r,outsideMonth:!V(r,e)}),r=F(r,1);a.push(d)}return a}function J(e){return e!==null&&!Array.isArray(e)&&!(e instanceof Date)}function pt(e){return e==="multiple"?[]:null}function ot(e,t){return e===null?!1:Array.isArray(e)?e.some(n=>K(n,t)):J(e)?Oe(e,t)!==void 0:K(e,t)}function Oe(e,t){let n=p(t).getTime(),a=p(e.start).getTime();if(e.end===null)return n===a?"start":void 0;let r=p(e.end).getTime();if(!(n<a||n>r))return n===a?"start":n===r?"end":"middle"}function ua(e,t,n){if(e==="single")return n;if(e==="multiple"){let r=Array.isArray(t)?t:[],o=r.filter(d=>!K(d,n));return o.length!==r.length?o:[...r,n].sort((d,i)=>d.getTime()-i.getTime())}let a=J(t)&&t.end===null?t:void 0;return a?p(n).getTime()<p(a.start).getTime()?{start:n,end:a.start}:{start:a.start,end:n}:{start:n,end:null}}function ma(e,t){return J(e)?e.end===null?`${(0,R.formatDateLabel)(e.start,t)} selected as the range start. Select an end date.`:`Range selected, ${(0,R.formatDateLabel)(e.start,t)} to ${(0,R.formatDateLabel)(e.end,t)}.`:Array.isArray(e)?`${e.length} ${e.length===1?"date":"dates"} selected.`:""}var[fa,f]=(0,oa.createSafeContext)("Calendar");function Ea(){return f("useCalendarContext")}var Ae=s.createContext(null);function fe(e){return s.useContext(Ae)?.gridMonth??e}var ae=s.createContext(null);function _(e){return e===null?null:Array.isArray(e)?e[0]??null:J(e)?e.start:e}function Wa({selectionMode:e,value:t,defaultValue:n,onValueChange:a,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:b,minDate:w,maxDate:D,today:l}){let v=s.useMemo(()=>(0,S.toCalendarValue)(t,e,"value"),[t,e]),E=s.useMemo(()=>(0,S.toCalendarValue)(n,e,"defaultValue"),[n,e]),W=s.useMemo(()=>(0,S.toDate)(r,"month")??void 0,[r]),P=s.useMemo(()=>(0,S.toDate)(o,"defaultMonth")??void 0,[o]),q=s.useMemo(()=>(0,S.toDate)(w,"minDate")??void 0,[w]),z=s.useMemo(()=>(0,S.toDate)(D,"maxDate")??void 0,[D]),ye=s.useMemo(()=>(0,S.toDate)(l,"today")??void 0,[l]),[g=null,u]=(0,ge.useControllableState)({prop:v,defaultProp:E??pt(e),onChange:j=>a?.(j??pt(e))}),[Z]=s.useState(()=>new Date),C=ye??Z;ca(_(g),"value");let A=O(P??_(g)??C),[x=A,ie]=(0,ge.useControllableState)({prop:W,defaultProp:A,onChange:d}),de=s.useMemo(()=>(0,S.toDate)(i,"focusedDate")??void 0,[i]),L=s.useMemo(()=>(0,S.toDate)(c,"defaultFocusedDate")??void 0,[c]),[T=L??_(g)??x,be]=(0,ge.useControllableState)({prop:de,defaultProp:L??_(g)??x,onChange:b}),et=s.useCallback(j=>{let ee=Ve(j,q,z);K(ee,T)||be(ee)},[T,be,q,z]);return{value:g,setValue:u,month:x,setMonth:ie,today:C,minDate:q,maxDate:z,focusedDate:T,moveFocus:et}}var pa=({selectionMode:e="single",value:t,defaultValue:n,onValueChange:a,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:b,view:w,defaultView:D="day",minView:l="day",maxView:v="year",onViewChange:E,numberOfMonths:W=1,locale:P,minDate:q,maxDate:z,weekStartsOn:ye,pageBehavior:g="visible",weekNumbers:u=!1,today:Z,readOnly:C=!1,disabled:A,outsideDaySelectable:x=!1,isDateDisabled:ie,isDateUnavailable:de,getSelectionAnnouncement:L,getMonthAnnouncement:T,children:be,ref:et,...j})=>{let{disabled:ee,isDateDisabled:Ca}=la(A,ie),Ct=s.useRef(null),ha=(0,ra.useComposedRefs)(et,Ct),{value:se,setValue:ht,month:le,setMonth:I,today:Da,minDate:ga,maxDate:ya,focusedDate:xe,moveFocus:U}=Wa({selectionMode:e,value:t,defaultValue:n,onValueChange:a,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:b,minDate:q,maxDate:z,today:Z}),[ba=D,Dt]=(0,ge.useControllableState)({prop:w,defaultProp:D,onChange:E}),G=ft(ba,l,v),tt=s.useCallback(m=>{let k=ft(m,l,v);k!==G&&Dt(k)},[G,l,v,Dt]),we=ye??(0,R.getLocaleWeekStartsOn)(P),xa=s.useMemo(()=>{let m=(0,R.getWeekDayNames)(P,we,"short"),k=(0,R.getWeekDayNames)(P,we,"long");return m.map((B,ve)=>({short:B,long:k[ve]}))},[P,we]),ce=s.useMemo(()=>Array.from({length:Math.max(1,W)},(m,k)=>N(le,k)),[le,W]),wa=s.useCallback(m=>{if(C||ee)return;let k=ua(e,se,m);ht(k);let B=(L??ma)(k,P);B&&(0,je.announce)(B)},[C,ee,e,se,ht,P,L]),va=s.useCallback(m=>I(O(m)),[I]),Ra=s.useCallback(m=>{if(G!=="day"){let ka=G==="month"?12:12*Q,yt=N(xe,m*ka);U(yt),(0,je.announce)(Y(yt,G,P));return}let k=g==="single"?1:Math.max(1,W),B=N(le,m*k);I(O(B)),U(Qe(xe,B));let ve=(T??R.formatMonthLabel)(B,P);ve&&(0,je.announce)(ve)},[G,g,W,le,I,xe,U,T,P]),Pa=s.useCallback(m=>{U(m),ce.some(k=>V(m,k))||I(O(m)),tt(M[M.indexOf(G)-1]??"day")},[U,ce,I,tt,G]),te=s.useMemo(()=>{let m=_(se);return m?p(m).getTime():null},[se]),gt=s.useRef(te);return s.useEffect(()=>{if(te===null||te===gt.current)return;gt.current=te;let m=new Date(te);ce.some(k=>V(m,k))||(U(m),I(O(m)))},[te,ce,I,U]),(0,De.jsx)(fa,{value:se,selectionMode:e,month:le,months:ce,focusedDate:xe,today:Da,weekStartsOn:we,weekNumbers:u,locale:P,weekDayNames:xa,minDate:ga,maxDate:ya,readOnly:C,disabled:ee,outsideDaySelectable:x,isDateDisabled:Ca,isDateUnavailable:de,onValueChange:wa,onMonthChange:va,pageMonths:Ra,setFocusedDate:U,view:G,minView:l,maxView:v,setView:tt,navigateToUnit:Pa,children:(0,De.jsx)(sa.Primitive.div,{...j,...(0,da.skdxPart)("calendar","root",j.className),ref:ha,children:(0,De.jsx)(ae.Provider,{value:Ct,children:be??(0,De.jsx)(na,{})})})})};pa.displayName="Calendar";var y=require("../utils/calendar-locale.cjs");0&&(module.exports={CALENDAR_VIEWS,CALENDAR_YEAR_PAGE,Calendar,CalendarCell,CalendarGrid,CalendarGridBody,CalendarGridContext,CalendarGridHead,CalendarHeader,CalendarHeading,CalendarMonthGrid,CalendarNextButton,CalendarPreviousButton,CalendarProvider,CalendarRootContext,CalendarRow,CalendarWeekDay,CalendarWeekNumber,CalendarWeekNumberHeader,CalendarYearGrid,addDays,addMonths,addYears,anchorOf,clampToDateRange,clampToMonth,clampView,clearLocaleNameCache,emptySelection,endOfWeek,formatDateLabel,formatMonthLabel,formatViewPageLabel,formatYear,formatYearRange,getDaysInMonth,getISOWeek,getLocaleWeekStartsOn,getMonthNames,getVisibleWeeks,getWeekDayNames,hasAvailableDate,isDateDisabled,isDateRange,isDateSelected,isSameDay,isSameMonth,nextSelection,rangePositionOf,resetInstantDateWarning,resolveCalendarDisabled,resolveLocale,selectionAnnouncement,startOfMonth,startOfWeek,stripTime,toISODateString,useCalendarContext,useCalendarContextInternal,useCalendarGridMonth,warnInstantDate,yearPageStart});
2
+ "use strict";var Ma=Object.create;var ke=Object.defineProperty;var Na=Object.getOwnPropertyDescriptor;var Sa=Object.getOwnPropertyNames;var Ta=Object.getPrototypeOf,Va=Object.prototype.hasOwnProperty;var Fa=(e,t)=>{for(var n in t)ke(e,n,{get:t[n],enumerable:!0})},xt=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Sa(t))!Va.call(e,r)&&r!==n&&ke(e,r,{get:()=>t[r],enumerable:!(a=Na(t,r))||a.enumerable});return e};var Me=(e,t,n)=>(n=e!=null?Ma(Ta(e)):{},xt(t||!e||!e.__esModule?ke(n,"default",{value:e,enumerable:!0}):n,e)),Aa=e=>xt(ke({},"__esModule",{value:!0}),e);var La={};Fa(La,{CALENDAR_VIEWS:()=>M,CALENDAR_YEAR_PAGE:()=>X,Calendar:()=>Ca,CalendarCell:()=>Ye,CalendarGrid:()=>Fe,CalendarGridBody:()=>We,CalendarGridContext:()=>Ge,CalendarGridHead:()=>Ue,CalendarHeader:()=>Be,CalendarHeading:()=>Ce,CalendarMonthGrid:()=>Qe,CalendarNextButton:()=>$e,CalendarPreviousButton:()=>qe,CalendarProvider:()=>pa,CalendarRootContext:()=>te,CalendarRow:()=>ae,CalendarWeekDay:()=>Le,CalendarWeekNumber:()=>Ee,CalendarWeekNumberHeader:()=>Ie,CalendarYearGrid:()=>Ze,addDays:()=>G,addMonths:()=>N,addYears:()=>Ne,anchorOf:()=>Q,clampToDateRange:()=>Ae,clampToMonth:()=>je,clampView:()=>pt,clearLocaleNameCache:()=>g.clearLocaleNameCache,emptySelection:()=>Ct,endOfWeek:()=>rt,formatDateLabel:()=>g.formatDateLabel,formatMonthLabel:()=>g.formatMonthLabel,formatViewPageLabel:()=>Y,formatYear:()=>g.formatYear,formatYearRange:()=>g.formatYearRange,getDaysInMonth:()=>De,getISOWeek:()=>dt,getLocaleWeekStartsOn:()=>g.getLocaleWeekStartsOn,getMonthNames:()=>g.getMonthNames,getVisibleWeeks:()=>st,getWeekDayNames:()=>g.getWeekDayNames,hasAvailableDate:()=>mt,isDateDisabled:()=>ot,isDateRange:()=>z,isDateSelected:()=>it,isSameDay:()=>B,isSameMonth:()=>S,nextSelection:()=>ma,rangePositionOf:()=>He,resetInstantDateWarning:()=>Ha,resolveCalendarDisabled:()=>ca,resolveLocale:()=>g.resolveLocale,selectionAnnouncement:()=>fa,startOfMonth:()=>O,startOfWeek:()=>ue,stripTime:()=>p,toISODateString:()=>me,useCalendarContext:()=>Ea,useCalendarContextInternal:()=>f,useCalendarGridMonth:()=>fe,warnInstantDate:()=>ua,yearPageStart:()=>et});module.exports=Aa(La);var s=Me(require("react"),1),R=require("../utils/calendar-locale.cjs"),oa=require("../utils/composeRefs.cjs"),ia=require("../utils/createContext.cjs"),T=require("../utils/date-value.cjs"),da=require("../utils/dev-mode.cjs"),tt=require("../utils/liveAnnouncer.cjs"),sa=require("../utils/part.cjs"),la=require("../utils/primitive.cjs"),ge=require("../utils/useControllableState.cjs");var aa=Me(require("react"),1),na=require("../utils/Glyph.cjs");var Se=Me(require("react"),1),wt=require("../utils/calendar-locale.cjs"),Te=require("../utils/direction.cjs"),vt=require("../utils/part.cjs"),Ve=require("../utils/primitive.cjs");var nt=require("react/jsx-runtime"),Fe=({monthOffset:e=0,ref:t,...n})=>{let a=f("CalendarGrid"),r=(0,Te.useDirection)(),o=a.months[e]??a.month,d=Se.useMemo(()=>({gridMonth:o}),[o]),i=Se.useContext(te),c=h=>{let l=Ae(h,a.minDate,a.maxDate);a.months.some(v=>S(l,v))||a.onMonthChange(O(l)),a.setFocusedDate(l),requestAnimationFrame(()=>{let v=me(l);(i?.current??document).querySelector(`[data-skdx-calendar-cell="${v}"]:not([disabled])`)?.focus()})},y=h=>{let l;switch((0,Te.directionalKey)(h.key,h.currentTarget,r)){case"ArrowLeft":l=G(a.focusedDate,-1);break;case"ArrowRight":l=G(a.focusedDate,1);break;case"ArrowUp":l=G(a.focusedDate,-7);break;case"ArrowDown":l=G(a.focusedDate,7);break;case"Home":l=ue(a.focusedDate,a.weekStartsOn);break;case"End":l=rt(a.focusedDate,a.weekStartsOn);break;case"PageUp":l=h.shiftKey?Ne(a.focusedDate,-1):N(a.focusedDate,-1);break;case"PageDown":l=h.shiftKey?Ne(a.focusedDate,1):N(a.focusedDate,1);break;default:return}h.preventDefault(),c(l)},w=(0,Ve.useComposedEventHandlers)(n.onKeyDown,y);return a.view!=="day"?null:(0,nt.jsx)(Ge.Provider,{value:d,children:(0,nt.jsx)(Ve.Primitive.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:(0,wt.formatMonthLabel)(o,a.locale),"aria-multiselectable":a.selectionMode!=="single","aria-readonly":a.readOnly||void 0,"aria-disabled":a.disabled||void 0,...n,...(0,vt.skdxPart)("calendar","grid",n.className),ref:t,onKeyDown:w})})};Fe.displayName="CalendarGrid";var Ot=require("../utils/part.cjs"),Yt=require("../utils/primitive.cjs");var Rt=require("../utils/calendar-locale.cjs"),Pt=require("../utils/date-value.cjs"),kt=require("../utils/part.cjs"),Oe=require("../utils/primitive.cjs");var Mt=require("react/jsx-runtime");function Ga(e){return{"aria-selected":e.isSelected,"aria-disabled":e.isUnavailable||void 0,"aria-current":e.isToday?"date":void 0,"data-state":e.isSelected?"selected":void 0,"data-today":e.isToday?"":void 0,"data-outside-month":e.isOutsideMonth?"":void 0,"data-disabled":e.isDisabled?"":void 0,"data-unavailable":e.isUnavailable?"":void 0,"data-range-start":e.rangePosition==="start"?"":void 0,"data-range-middle":e.rangePosition==="middle"?"":void 0,"data-range-end":e.rangePosition==="end"?"":void 0,tabIndex:e.isFocused?0:-1}}var Ye=({date:e,ref:t,...n})=>{let a=f("CalendarCell"),r=fe(a.month),o=(0,Pt.toDate)(e,"date")??r,d=me(o),i=!S(o,r),c=a.disabled||i&&!a.outsideDaySelectable||ot(o,a.minDate,a.maxDate,a.isDateDisabled),y=!c&&(a.isDateUnavailable?.(o)??!1),w=it(a.value,o),h=z(a.value)?He(a.value,o):void 0,l=B(o,a.today),v=B(o,a.focusedDate);return(0,Mt.jsx)(Oe.Primitive.button,{type:"button",role:"gridcell","aria-label":(0,Rt.formatDateLabel)(o,a.locale),"data-skdx-calendar-cell":d,...Ga({isSelected:w,isToday:l,isOutsideMonth:i,isDisabled:c,isUnavailable:y,isFocused:v,rangePosition:h}),disabled:c,...n,...(0,kt.skdxPart)("calendar","cell",n.className),ref:t,onClick:(0,Oe.composeEventHandlers)(n.onClick,()=>{if(!c){if(y){a.setFocusedDate(o);return}a.onValueChange(o),a.setFocusedDate(o),i&&!a.months.some(E=>S(o,E))&&a.onMonthChange(o)}}),children:n.children??o.getDate()})};Ye.displayName="CalendarCell";var Nt=require("../utils/part.cjs"),St=require("../utils/primitive.cjs"),Tt=require("react/jsx-runtime"),ae=({ref:e,...t})=>(0,Tt.jsx)(St.Primitive.div,{role:"row",...t,...(0,Nt.skdxPart)("calendar","row",t.className),ref:e});ae.displayName="CalendarRow";var Vt=require("../utils/date-value.cjs"),Ft=require("../utils/part.cjs"),At=require("../utils/primitive.cjs");var Gt=require("react/jsx-runtime"),Ee=({date:e,children:t,ref:n,...a})=>{let r=f("CalendarWeekNumber"),o=(0,Vt.toDate)(e,"date")??r.month,d=dt(o);return(0,Gt.jsx)(At.Primitive.div,{role:"rowheader","aria-label":`Week ${d}`,...a,...(0,Ft.skdxPart)("calendar","week-number",a.className),ref:n,children:t??d})};Ee.displayName="CalendarWeekNumber";var ne=require("react/jsx-runtime"),We=({children:e,ref:t,...n})=>{let a=f("CalendarGridBody"),r=fe(a.month),o=st(r,a.weekStartsOn);return(0,ne.jsx)(Yt.Primitive.div,{role:"rowgroup",...n,...(0,Ot.skdxPart)("calendar","grid-body",n.className),ref:t,children:e??o.map(d=>(0,ne.jsxs)(ae,{children:[a.weekNumbers?(0,ne.jsx)(Ee,{date:d[0].date}):null,d.map(({date:i})=>(0,ne.jsx)(Ye,{date:i},i.toISOString()))]},d[0].date.toISOString()))})};We.displayName="CalendarGridBody";var Bt=require("../utils/part.cjs"),Kt=require("../utils/primitive.cjs");var Ht=require("../utils/part.cjs"),Et=require("../utils/primitive.cjs"),Wt=require("react/jsx-runtime"),Le=({ref:e,...t})=>(0,Wt.jsx)(Et.Primitive.div,{role:"columnheader",...t,...(0,Ht.skdxPart)("calendar","week-day",t.className),ref:e});Le.displayName="CalendarWeekDay";var Lt=require("../utils/part.cjs"),It=require("../utils/primitive.cjs"),Ut=require("react/jsx-runtime"),Ie=({ref:e,...t})=>(0,Ut.jsx)(It.Primitive.div,{role:"columnheader","aria-label":"Week number",...t,...(0,Lt.skdxPart)("calendar","week-number-header",t.className),ref:e});Ie.displayName="CalendarWeekNumberHeader";var re=require("react/jsx-runtime"),Ue=({children:e,ref:t,...n})=>{let a=f("CalendarGridHead");return(0,re.jsx)(Kt.Primitive.div,{role:"rowgroup",...n,...(0,Bt.skdxPart)("calendar","grid-head",n.className),ref:t,children:e??(0,re.jsxs)(ae,{children:[a.weekNumbers?(0,re.jsx)(Ie,{}):null,a.weekDayNames.map(r=>(0,re.jsx)(Le,{"aria-label":r.long,children:r.short},r.long))]})})};Ue.displayName="CalendarGridHead";var $t=require("../utils/part.cjs"),_t=require("../utils/primitive.cjs"),qt=require("react/jsx-runtime"),Be=({ref:e,...t})=>(0,qt.jsx)(_t.Primitive.div,{...t,...(0,$t.skdxPart)("calendar","header",t.className),ref:e});Be.displayName="CalendarHeader";var lt=require("../utils/part.cjs"),pe=require("../utils/primitive.cjs");var ct=require("react/jsx-runtime"),Ce=({monthOffset:e=0,children:t,ref:n,...a})=>{let r=f("CalendarHeading"),o=r.months[e]??r.month,d=r.view==="day"?o:r.focusedDate,i=Y(d,r.view,r.locale),c=M[M.indexOf(r.view)+1];return c!==void 0&&M.indexOf(r.view)<M.indexOf(r.maxView)?(0,ct.jsx)(pe.Primitive.button,{type:"button",...a,...(0,lt.skdxPart)("calendar","heading",a.className),ref:n,onClick:(0,pe.composeEventHandlers)(a.onClick,()=>r.setView(c)),children:t??i}):(0,ct.jsx)(pe.Primitive.div,{...a,...(0,lt.skdxPart)("calendar","heading",a.className),ref:n,children:t??i})};Ce.displayName="CalendarHeading";var zt=require("../utils/part.cjs"),Ke=require("../utils/primitive.cjs");var Jt=require("react/jsx-runtime"),Oa={day:"Next month",month:"Next year",year:"Next 20 years"},$e=({ref:e,...t})=>{let n=f("CalendarNextButton");return(0,Jt.jsx)(Ke.Primitive.button,{type:"button","aria-label":Oa[n.view],...t,...(0,zt.skdxPart)("calendar","next-button",t.className),ref:e,onClick:(0,Ke.composeEventHandlers)(t.onClick,()=>n.pageMonths(1))})};$e.displayName="CalendarNextButton";var Xt=require("../utils/part.cjs"),_e=require("../utils/primitive.cjs");var Qt=require("react/jsx-runtime"),Ya={day:"Previous month",month:"Previous year",year:"Previous 20 years"},qe=({ref:e,...t})=>{let n=f("CalendarPreviousButton");return(0,Qt.jsx)(_e.Primitive.button,{type:"button","aria-label":Ya[n.view],...t,...(0,Xt.skdxPart)("calendar","previous-button",t.className),ref:e,onClick:(0,_e.composeEventHandlers)(t.onClick,()=>n.pageMonths(-1))})};qe.displayName="CalendarPreviousButton";var ze=Me(require("react"),1),J=require("../utils/calendar-locale.cjs"),Je=require("../utils/direction.cjs"),Zt=require("../utils/liveAnnouncer.cjs"),Xe=require("../utils/part.cjs"),H=require("../utils/primitive.cjs");var K=require("react/jsx-runtime");function ut(){return 4}function jt(e,t){let n=f(t),a=ze.useContext(te),r=(0,Je.useDirection)(),o=e,d=e==="month"?1:12,i=e==="month"?12:X,c=n.focusedDate,y=e==="month"?c.getMonth():c.getFullYear()-et(c.getFullYear()),{locale:w,minDate:h,maxDate:l,isDateDisabled:v,today:E,value:W}=n,P=Q(W),$=ze.useMemo(()=>{let b=(0,J.getMonthNames)(w,"short"),u=c.getFullYear();return Array.from({length:i},(Z,C)=>{let V=e==="month"?je(c,new Date(u,C,1)):N(c,(C-y)*d),x=e==="month"?u:V.getFullYear(),oe=e==="month"?new Date(x,C,1):new Date(x,0,1),ie=e==="month"?new Date(x,C,De(x,C)):new Date(x,11,31),j=F=>F!==null&&F.getFullYear()===x&&(e==="year"||F.getMonth()===C);return{date:V,key:e==="month"?`${x}-${C}`:String(x),text:e==="month"?b[C]:(0,J.formatYear)(x,w),label:e==="month"?(0,J.formatMonthLabel)(new Date(x,C,1),w):(0,J.formatYear)(x,w),refused:!mt(oe,ie,h,l,v),selected:j(P),today:j(E)}})},[e,i,d,c,y,w,h,l,v,P,E]),_=b=>{let u=N(c,b*d),Z=Y(c,o,w),C=Y(u,o,w);n.setFocusedDate(u),C!==Z&&(0,Zt.announce)(C),requestAnimationFrame(()=>{let V=e==="month"?`${u.getFullYear()}-${u.getMonth()}`:String(u.getFullYear());(a?.current??document).querySelector(`[data-skdx-calendar-view-cell="${V}"]`)?.focus({preventScroll:!0})})};return{context:n,cells:$,focusedIndex:y,handleKeyDown:b=>{let u;switch((0,Je.directionalKey)(b.key,b.currentTarget,r)){case"ArrowLeft":u=-1;break;case"ArrowRight":u=1;break;case"ArrowUp":u=-ut();break;case"ArrowDown":u=ut();break;case"Home":u=-y;break;case"End":u=i-1-y;break;case"PageUp":u=-i*(b.shiftKey?10:1);break;case"PageDown":u=i*(b.shiftKey?10:1);break;default:return}b.preventDefault(),u!==0&&_(u)}}}function ea({cells:e,focusedIndex:t,navigate:n}){let a=[],r=ut();for(let o=0;o<e.length;o+=r)a.push(e.slice(o,o+r));return(0,K.jsx)(H.Primitive.div,{role:"rowgroup",children:a.map((o,d)=>(0,K.jsx)(H.Primitive.div,{role:"row",children:o.map((i,c)=>{let y=d*r+c;return(0,K.jsx)(H.Primitive.button,{type:"button",role:"gridcell","aria-disabled":i.refused||void 0,"aria-selected":i.selected,"aria-current":i.today?"date":void 0,"aria-label":i.label,"data-skdx-calendar-view-cell":i.key,"data-state":i.selected?"selected":void 0,"data-today":i.today?"":void 0,"data-disabled":i.refused?"":void 0,tabIndex:y===t?0:-1,...(0,Xe.skdxPart)("calendar","view-cell"),onClick:()=>{i.refused||n(i.date)},children:i.text},i.key)})},o[0].key))})}var Qe=({children:e,ref:t,...n})=>{let{context:a,cells:r,focusedIndex:o,handleKeyDown:d}=jt("month","CalendarMonthGrid");return a.view!=="month"?null:(0,K.jsx)(H.Primitive.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:Y(a.focusedDate,"month",a.locale),"aria-readonly":a.readOnly||void 0,"aria-disabled":a.disabled||void 0,...n,...(0,Xe.skdxPart)("calendar","month-grid",n.className),ref:t,onKeyDown:(0,H.composeEventHandlers)(n.onKeyDown,d),children:e??(0,K.jsx)(ea,{cells:r,focusedIndex:o,navigate:a.navigateToUnit})})};Qe.displayName="CalendarMonthGrid";var Ze=({children:e,ref:t,...n})=>{let{context:a,cells:r,focusedIndex:o,handleKeyDown:d}=jt("year","CalendarYearGrid");return a.view!=="year"?null:(0,K.jsx)(H.Primitive.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:Y(a.focusedDate,"year",a.locale),"aria-readonly":a.readOnly||void 0,"aria-disabled":a.disabled||void 0,...n,...(0,Xe.skdxPart)("calendar","year-grid",n.className),ref:t,onKeyDown:(0,H.composeEventHandlers)(n.onKeyDown,d),children:e??(0,K.jsx)(ea,{cells:r,focusedIndex:o,navigate:a.navigateToUnit})})};Ze.displayName="CalendarYearGrid";var D=require("react/jsx-runtime"),ta=({dir:e})=>(0,D.jsx)(na.Glyph,{name:e==="left"?"chevron-left":"chevron-right"}),ra=()=>{let{months:e}=f("CalendarAnatomy"),t=e.length>1;return(0,D.jsxs)(D.Fragment,{children:[(0,D.jsxs)(Be,{children:[(0,D.jsx)(qe,{children:(0,D.jsx)(ta,{dir:"left"})}),t?null:(0,D.jsx)(Ce,{}),(0,D.jsx)($e,{children:(0,D.jsx)(ta,{dir:"right"})})]}),e.map((n,a)=>(0,D.jsxs)(aa.Fragment,{children:[t?(0,D.jsx)(Ce,{monthOffset:a}):null,(0,D.jsxs)(Fe,{monthOffset:a,children:[(0,D.jsx)(Ue,{}),(0,D.jsx)(We,{})]})]},n.toISOString())),(0,D.jsx)(Qe,{}),(0,D.jsx)(Ze,{})]})};var he=require("react/jsx-runtime");function De(e,t){return new Date(e,t+1,0).getDate()}function O(e){return new Date(e.getFullYear(),e.getMonth(),1)}function N(e,t){let n=e.getDate(),a=new Date(e.getFullYear(),e.getMonth(),1);a.setMonth(a.getMonth()+t);let r=De(a.getFullYear(),a.getMonth());return a.setDate(Math.min(n,r)),a}function Ne(e,t){return N(e,t*12)}function G(e,t){let n=new Date(e);return n.setDate(n.getDate()+t),n}function B(e,t){return!e||!t?!1:e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function S(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()}function ue(e,t){let n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),a=(n.getDay()-t+7)%7;return n.setDate(n.getDate()-a),n}function rt(e,t){return G(ue(e,t),6)}function p(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}function ot(e,t,n,a){let r=p(e).getTime();return!!(t&&r<p(t).getTime()||n&&r>p(n).getTime()||a?.(e))}function Ae(e,t,n){return t&&p(e).getTime()<p(t).getTime()?t:n&&p(e).getTime()>p(n).getTime()?n:e}function ca(e,t){return{disabled:e??!1,isDateDisabled:t}}var ft=!1;function Ha(){ft=!1}function ua(e,t){!e||ft||!(e.getUTCHours()===0&&e.getUTCMinutes()===0&&e.getUTCSeconds()===0&&e.getUTCMilliseconds()===0)||e.getDate()===e.getUTCDate()&&e.getMonth()===e.getUTCMonth()||(ft=!0,(0,da.isDevMode)()&&console.warn(`[skdx] Calendar: \`${t}\` was given ${e.toISOString()}, which is midnight UTC and therefore ${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} in this time zone \u2014 a different day from the one the string says. A selection here is a local wall-clock date, never an instant: build it as \`new Date(year, monthIndex, day)\` rather than \`new Date('YYYY-MM-DD')\`, which the platform reads as UTC.`))}function dt(e){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate());t.setDate(t.getDate()-(t.getDay()+6)%7+3);let n=new Date(t.getFullYear(),0,4);return n.setDate(n.getDate()-(n.getDay()+6)%7+3),1+Math.round((t.getTime()-n.getTime())/(10080*60*1e3))}function me(e){let t=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0");return`${t}-${n}-${a}`}function je(e,t){if(S(e,t))return e;let n=De(t.getFullYear(),t.getMonth());return new Date(t.getFullYear(),t.getMonth(),Math.min(e.getDate(),n))}var M=["day","month","year"],X=20;function pt(e,t,n){let a=M.indexOf(t),r=Math.max(a,M.indexOf(n));return M[Math.min(Math.max(M.indexOf(e),a),r)]}function et(e){return Math.floor(e/X)*X}function mt(e,t,n,a,r){let o=n&&p(n)>p(e)?p(n):p(e),d=a&&p(a)<p(t)?p(a):p(t);if(o.getTime()>d.getTime())return!1;if(!r)return!0;for(let i=o;i.getTime()<=d.getTime();i=G(i,1))if(!r(i))return!0;return!1}function Y(e,t,n){if(t==="day")return(0,R.formatMonthLabel)(e,n);if(t==="month")return(0,R.formatYear)(e.getFullYear(),n);let a=et(e.getFullYear());return(0,R.formatYearRange)(a,a+X-1,n)}function st(e,t=0){let n=ue(O(e),t),a=[],r=n;for(let o=0;o<6;o++){let d=[];for(let i=0;i<7;i++)d.push({date:r,outsideMonth:!S(r,e)}),r=G(r,1);a.push(d)}return a}function z(e){return e!==null&&!Array.isArray(e)&&!(e instanceof Date)}function Ct(e){return e==="multiple"?[]:null}function it(e,t){return e===null?!1:Array.isArray(e)?e.some(n=>B(n,t)):z(e)?He(e,t)!==void 0:B(e,t)}function He(e,t){let n=p(t).getTime(),a=p(e.start).getTime();if(e.end===null)return n===a?"start":void 0;let r=p(e.end).getTime();if(!(n<a||n>r))return n===a?"start":n===r?"end":"middle"}function ma(e,t,n){if(e==="single")return n;if(e==="multiple"){let r=Array.isArray(t)?t:[],o=r.filter(d=>!B(d,n));return o.length!==r.length?o:[...r,n].sort((d,i)=>d.getTime()-i.getTime())}let a=z(t)&&t.end===null?t:void 0;return a?p(n).getTime()<p(a.start).getTime()?{start:n,end:a.start}:{start:a.start,end:n}:{start:n,end:null}}function fa(e,t){return z(e)?e.end===null?`${(0,R.formatDateLabel)(e.start,t)} selected as the range start. Select an end date.`:`Range selected, ${(0,R.formatDateLabel)(e.start,t)} to ${(0,R.formatDateLabel)(e.end,t)}.`:Array.isArray(e)?`${e.length} ${e.length===1?"date":"dates"} selected.`:""}var[pa,f]=(0,ia.createSafeContext)("Calendar");function Ea(){return f("useCalendarContext")}var Ge=s.createContext(null);function fe(e){return s.useContext(Ge)?.gridMonth??e}var te=s.createContext(null);function Q(e){return e===null?null:Array.isArray(e)?e[0]??null:z(e)?e.start:e}function Wa({selectionMode:e,value:t,defaultValue:n,onValueChange:a,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:y,minDate:w,maxDate:h,today:l}){let v=s.useMemo(()=>(0,T.toCalendarValue)(t,e,"value"),[t,e]),E=s.useMemo(()=>(0,T.toCalendarValue)(n,e,"defaultValue"),[n,e]),W=s.useMemo(()=>(0,T.toDate)(r,"month")??void 0,[r]),P=s.useMemo(()=>(0,T.toDate)(o,"defaultMonth")??void 0,[o]),$=s.useMemo(()=>(0,T.toDate)(w,"minDate")??void 0,[w]),_=s.useMemo(()=>(0,T.toDate)(h,"maxDate")??void 0,[h]),ye=s.useMemo(()=>(0,T.toDate)(l,"today")??void 0,[l]),[b=null,u]=(0,ge.useControllableState)({prop:v,defaultProp:E??Ct(e),onChange:q=>a?.(q??Ct(e))}),[Z]=s.useState(()=>new Date),C=ye??Z;ua(Q(b),"value");let V=O(P??Q(b)??C),[x=V,oe]=(0,ge.useControllableState)({prop:W,defaultProp:V,onChange:d}),ie=s.useMemo(()=>(0,T.toDate)(i,"focusedDate")??void 0,[i]),F=s.useMemo(()=>(0,T.toDate)(c,"defaultFocusedDate")??void 0,[c])??Q(b)??(S(C,x)?C:x),[de=F,be]=(0,ge.useControllableState)({prop:ie,defaultProp:F,onChange:y}),xe=s.useCallback(q=>{let we=Ae(q,$,_);B(we,de)||be(we)},[de,be,$,_]);return{value:b,setValue:u,month:x,setMonth:oe,today:C,minDate:$,maxDate:_,focusedDate:de,moveFocus:xe}}var Ca=({selectionMode:e="single",value:t,defaultValue:n,onValueChange:a,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:y,view:w,defaultView:h="day",minView:l="day",maxView:v="year",onViewChange:E,numberOfMonths:W=1,locale:P,minDate:$,maxDate:_,weekStartsOn:ye,pageBehavior:b="visible",weekNumbers:u=!1,today:Z,readOnly:C=!1,disabled:V,outsideDaySelectable:x=!1,isDateDisabled:oe,isDateUnavailable:ie,getSelectionAnnouncement:j,getMonthAnnouncement:F,children:de,ref:be,...xe})=>{let{disabled:q,isDateDisabled:we}=ca(V,oe),Dt=s.useRef(null),Da=(0,oa.useComposedRefs)(be,Dt),{value:se,setValue:ht,month:le,setMonth:L,today:ha,minDate:ga,maxDate:ya,focusedDate:ve,moveFocus:I}=Wa({selectionMode:e,value:t,defaultValue:n,onValueChange:a,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:y,minDate:$,maxDate:_,today:Z}),[ba=h,gt]=(0,ge.useControllableState)({prop:w,defaultProp:h,onChange:E}),A=pt(ba,l,v),at=s.useCallback(m=>{let k=pt(m,l,v);k!==A&&gt(k)},[A,l,v,gt]),Re=ye??(0,R.getLocaleWeekStartsOn)(P),xa=s.useMemo(()=>{let m=(0,R.getWeekDayNames)(P,Re,"short"),k=(0,R.getWeekDayNames)(P,Re,"long");return m.map((U,Pe)=>({short:U,long:k[Pe]}))},[P,Re]),ce=s.useMemo(()=>Array.from({length:Math.max(1,W)},(m,k)=>N(le,k)),[le,W]),wa=s.useCallback(m=>{if(C||q)return;let k=ma(e,se,m);ht(k);let U=(j??fa)(k,P);U&&(0,tt.announce)(U)},[C,q,e,se,ht,P,j]),va=s.useCallback(m=>L(O(m)),[L]),Ra=s.useCallback(m=>{if(A!=="day"){let ka=A==="month"?12:12*X,bt=N(ve,m*ka);I(bt),(0,tt.announce)(Y(bt,A,P));return}let k=b==="single"?1:Math.max(1,W),U=N(le,m*k);L(O(U)),I(je(ve,U));let Pe=(F??R.formatMonthLabel)(U,P);Pe&&(0,tt.announce)(Pe)},[A,b,W,le,L,ve,I,F,P]),Pa=s.useCallback(m=>{I(m),ce.some(k=>S(m,k))||L(O(m)),at(M[M.indexOf(A)-1]??"day")},[I,ce,L,at,A]),ee=s.useMemo(()=>{let m=Q(se);return m?p(m).getTime():null},[se]),yt=s.useRef(ee);return s.useEffect(()=>{if(ee===null||ee===yt.current)return;yt.current=ee;let m=new Date(ee);ce.some(k=>S(m,k))||(I(m),L(O(m)))},[ee,ce,L,I]),(0,he.jsx)(pa,{value:se,selectionMode:e,month:le,months:ce,focusedDate:ve,today:ha,weekStartsOn:Re,weekNumbers:u,locale:P,weekDayNames:xa,minDate:ga,maxDate:ya,readOnly:C,disabled:q,outsideDaySelectable:x,isDateDisabled:we,isDateUnavailable:ie,onValueChange:wa,onMonthChange:va,pageMonths:Ra,setFocusedDate:I,view:A,minView:l,maxView:v,setView:at,navigateToUnit:Pa,children:(0,he.jsx)(la.Primitive.div,{...xe,...(0,sa.skdxPart)("calendar","root",xe.className),ref:Da,children:(0,he.jsx)(te.Provider,{value:Dt,children:de??(0,he.jsx)(ra,{})})})})};Ca.displayName="Calendar";var g=require("../utils/calendar-locale.cjs");0&&(module.exports={CALENDAR_VIEWS,CALENDAR_YEAR_PAGE,Calendar,CalendarCell,CalendarGrid,CalendarGridBody,CalendarGridContext,CalendarGridHead,CalendarHeader,CalendarHeading,CalendarMonthGrid,CalendarNextButton,CalendarPreviousButton,CalendarProvider,CalendarRootContext,CalendarRow,CalendarWeekDay,CalendarWeekNumber,CalendarWeekNumberHeader,CalendarYearGrid,addDays,addMonths,addYears,anchorOf,clampToDateRange,clampToMonth,clampView,clearLocaleNameCache,emptySelection,endOfWeek,formatDateLabel,formatMonthLabel,formatViewPageLabel,formatYear,formatYearRange,getDaysInMonth,getISOWeek,getLocaleWeekStartsOn,getMonthNames,getVisibleWeeks,getWeekDayNames,hasAvailableDate,isDateDisabled,isDateRange,isDateSelected,isSameDay,isSameMonth,nextSelection,rangePositionOf,resetInstantDateWarning,resolveCalendarDisabled,resolveLocale,selectionAnnouncement,startOfMonth,startOfWeek,stripTime,toISODateString,useCalendarContext,useCalendarContextInternal,useCalendarGridMonth,warnInstantDate,yearPageStart});
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import*as s from"react";import{formatDateLabel as $e,formatMonthLabel as bt,formatYear as Aa,formatYearRange as Ga,getLocaleWeekStartsOn as Fa,getWeekDayNames as ht}from"../utils/calendar-locale.js";import{useComposedRefs as Oa}from"../utils/composeRefs.js";import{createSafeContext as Ya}from"../utils/createContext.js";import{toCalendarValue as Dt,toDate as $}from"../utils/date-value.js";import{isDevMode as Ha}from"../utils/dev-mode.js";import{announce as _e}from"../utils/liveAnnouncer.js";import{skdxPart as Ea}from"../utils/part.js";import{Primitive as Wa}from"../utils/primitive.js";import{useControllableState as be}from"../utils/useControllableState.js";import*as pt from"react";import{Glyph as Ta}from"../utils/Glyph.js";import*as ue from"react";import{formatMonthLabel as Gt}from"../utils/calendar-locale.js";import{directionalKey as Ft,useDirection as Ot}from"../utils/direction.js";import{skdxPart as Yt}from"../utils/part.js";import{Primitive as Ht,useComposedEventHandlers as Et}from"../utils/primitive.js";import{jsx as je}from"react/jsx-runtime";var Re=({monthOffset:e=0,ref:a,...n})=>{let t=f("CalendarGrid"),r=Ot(),o=t.months[e]??t.month,d=ue.useMemo(()=>({gridMonth:o}),[o]),i=ue.useContext(ne),c=h=>{let l=Pe(h,t.minDate,t.maxDate);t.months.some(x=>T(l,x))||t.onMonthChange(E(l)),t.setFocusedDate(l),requestAnimationFrame(()=>{let x=fe(l);(i?.current??document).querySelector(`[data-skdx-calendar-cell="${x}"]:not([disabled])`)?.focus()})},g=h=>{let l;switch(Ft(h.key,h.currentTarget,r)){case"ArrowLeft":l=H(t.focusedDate,-1);break;case"ArrowRight":l=H(t.focusedDate,1);break;case"ArrowUp":l=H(t.focusedDate,-7);break;case"ArrowDown":l=H(t.focusedDate,7);break;case"Home":l=me(t.focusedDate,t.weekStartsOn);break;case"End":l=et(t.focusedDate,t.weekStartsOn);break;case"PageUp":l=h.shiftKey?ve(t.focusedDate,-1):M(t.focusedDate,-1);break;case"PageDown":l=h.shiftKey?ve(t.focusedDate,1):M(t.focusedDate,1);break;default:return}h.preventDefault(),c(l)},b=Et(n.onKeyDown,g);return t.view!=="day"?null:je(ke.Provider,{value:d,children:je(Ht.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:Gt(o,t.locale),"aria-multiselectable":t.selectionMode!=="single","aria-readonly":t.readOnly||void 0,"aria-disabled":t.disabled||void 0,...n,...Yt("calendar","grid",n.className),ref:a,onKeyDown:b})})};Re.displayName="CalendarGrid";import{skdxPart as jt}from"../utils/part.js";import{Primitive as ea}from"../utils/primitive.js";import{formatDateLabel as Wt}from"../utils/calendar-locale.js";import{toDate as Lt}from"../utils/date-value.js";import{skdxPart as It}from"../utils/part.js";import{composeEventHandlers as Ut,Primitive as Bt}from"../utils/primitive.js";import{jsx as $t}from"react/jsx-runtime";function Kt(e){return{"aria-selected":e.isSelected,"aria-disabled":e.isUnavailable||void 0,"aria-current":e.isToday?"date":void 0,"data-state":e.isSelected?"selected":void 0,"data-today":e.isToday?"":void 0,"data-outside-month":e.isOutsideMonth?"":void 0,"data-disabled":e.isDisabled?"":void 0,"data-unavailable":e.isUnavailable?"":void 0,"data-range-start":e.rangePosition==="start"?"":void 0,"data-range-middle":e.rangePosition==="middle"?"":void 0,"data-range-end":e.rangePosition==="end"?"":void 0,tabIndex:e.isFocused?0:-1}}var Me=({date:e,ref:a,...n})=>{let t=f("CalendarCell"),r=pe(t.month),o=Lt(e,"date")??r,d=fe(o),i=!T(o,r),c=t.disabled||i&&!t.outsideDaySelectable||tt(o,t.minDate,t.maxDate,t.isDateDisabled),g=!c&&(t.isDateUnavailable?.(o)??!1),b=at(t.value,o),h=X(t.value)?Ne(t.value,o):void 0,l=U(o,t.today),x=U(o,t.focusedDate);return $t(Bt.button,{type:"button",role:"gridcell","aria-label":Wt(o,t.locale),"data-skdx-calendar-cell":d,...Kt({isSelected:b,isToday:l,isOutsideMonth:i,isDisabled:c,isUnavailable:g,isFocused:x,rangePosition:h}),disabled:c,...n,...It("calendar","cell",n.className),ref:a,onClick:Ut(n.onClick,()=>{if(!c){if(g){t.setFocusedDate(o);return}t.onValueChange(o),t.setFocusedDate(o),i&&!t.months.some(V=>T(o,V))&&t.onMonthChange(o)}}),children:n.children??o.getDate()})};Me.displayName="CalendarCell";import{skdxPart as _t}from"../utils/part.js";import{Primitive as qt}from"../utils/primitive.js";import{jsx as zt}from"react/jsx-runtime";var re=({ref:e,...a})=>zt(qt.div,{role:"row",...a,..._t("calendar","row",a.className),ref:e});re.displayName="CalendarRow";import{toDate as Jt}from"../utils/date-value.js";import{skdxPart as Xt}from"../utils/part.js";import{Primitive as Qt}from"../utils/primitive.js";import{jsx as Zt}from"react/jsx-runtime";var Se=({date:e,children:a,ref:n,...t})=>{let r=f("CalendarWeekNumber"),o=Jt(e,"date")??r.month,d=nt(o);return Zt(Qt.div,{role:"rowheader","aria-label":`Week ${d}`,...t,...Xt("calendar","week-number",t.className),ref:n,children:a??d})};Se.displayName="CalendarWeekNumber";import{jsx as Te,jsxs as ta}from"react/jsx-runtime";var Ve=({children:e,ref:a,...n})=>{let t=f("CalendarGridBody"),r=pe(t.month),o=rt(r,t.weekStartsOn);return Te(ea.div,{role:"rowgroup",...n,...jt("calendar","grid-body",n.className),ref:a,children:e??o.map(d=>ta(re,{children:[t.weekNumbers?Te(Se,{date:d[0].date}):null,d.map(({date:i})=>Te(Me,{date:i},i.toISOString()))]},d[0].date.toISOString()))})};Ve.displayName="CalendarGridBody";import{skdxPart as sa}from"../utils/part.js";import{Primitive as la}from"../utils/primitive.js";import{skdxPart as aa}from"../utils/part.js";import{Primitive as na}from"../utils/primitive.js";import{jsx as ra}from"react/jsx-runtime";var Ae=({ref:e,...a})=>ra(na.div,{role:"columnheader",...a,...aa("calendar","week-day",a.className),ref:e});Ae.displayName="CalendarWeekDay";import{skdxPart as oa}from"../utils/part.js";import{Primitive as ia}from"../utils/primitive.js";import{jsx as da}from"react/jsx-runtime";var Ge=({ref:e,...a})=>da(ia.div,{role:"columnheader","aria-label":"Week number",...a,...oa("calendar","week-number-header",a.className),ref:e});Ge.displayName="CalendarWeekNumberHeader";import{jsx as Fe,jsxs as ca}from"react/jsx-runtime";var Oe=({children:e,ref:a,...n})=>{let t=f("CalendarGridHead");return Fe(la.div,{role:"rowgroup",...n,...sa("calendar","grid-head",n.className),ref:a,children:e??ca(re,{children:[t.weekNumbers?Fe(Ge,{}):null,t.weekDayNames.map(r=>Fe(Ae,{"aria-label":r.long,children:r.short},r.long))]})})};Oe.displayName="CalendarGridHead";import{skdxPart as ua}from"../utils/part.js";import{Primitive as ma}from"../utils/primitive.js";import{jsx as fa}from"react/jsx-runtime";var Ye=({ref:e,...a})=>fa(ma.div,{...a,...ua("calendar","header",a.className),ref:e});Ye.displayName="CalendarHeader";import{skdxPart as ot}from"../utils/part.js";import{composeEventHandlers as pa,Primitive as it}from"../utils/primitive.js";import{jsx as dt}from"react/jsx-runtime";var Ce=({monthOffset:e=0,children:a,ref:n,...t})=>{let r=f("CalendarHeading"),o=r.months[e]??r.month,d=r.view==="day"?o:r.focusedDate,i=W(d,r.view,r.locale),c=R[R.indexOf(r.view)+1];return c!==void 0&&R.indexOf(r.view)<R.indexOf(r.maxView)?dt(it.button,{type:"button",...t,...ot("calendar","heading",t.className),ref:n,onClick:pa(t.onClick,()=>r.setView(c)),children:a??i}):dt(it.div,{...t,...ot("calendar","heading",t.className),ref:n,children:a??i})};Ce.displayName="CalendarHeading";import{skdxPart as Ca}from"../utils/part.js";import{composeEventHandlers as ha,Primitive as Da}from"../utils/primitive.js";import{jsx as ya}from"react/jsx-runtime";var ga={day:"Next month",month:"Next year",year:"Next 20 years"},He=({ref:e,...a})=>{let n=f("CalendarNextButton");return ya(Da.button,{type:"button","aria-label":ga[n.view],...a,...Ca("calendar","next-button",a.className),ref:e,onClick:ha(a.onClick,()=>n.pageMonths(1))})};He.displayName="CalendarNextButton";import{skdxPart as ba}from"../utils/part.js";import{composeEventHandlers as xa,Primitive as wa}from"../utils/primitive.js";import{jsx as Ra}from"react/jsx-runtime";var va={day:"Previous month",month:"Previous year",year:"Previous 20 years"},Ee=({ref:e,...a})=>{let n=f("CalendarPreviousButton");return Ra(wa.button,{type:"button","aria-label":va[n.view],...a,...ba("calendar","previous-button",a.className),ref:e,onClick:xa(a.onClick,()=>n.pageMonths(-1))})};Ee.displayName="CalendarPreviousButton";import*as he from"react";import{formatMonthLabel as Pa,formatYear as st,getMonthNames as ka}from"../utils/calendar-locale.js";import{directionalKey as Ma,useDirection as Na}from"../utils/direction.js";import{announce as Sa}from"../utils/liveAnnouncer.js";import{skdxPart as Le}from"../utils/part.js";import{composeEventHandlers as lt,Primitive as oe}from"../utils/primitive.js";import{jsx as B}from"react/jsx-runtime";function We(){return 4}function ct(e,a){let n=f(a),t=he.useContext(ne),r=Na(),o=e,d=e==="month"?1:12,i=e==="month"?12:Q,c=n.focusedDate,g=e==="month"?c.getMonth():c.getFullYear()-Ke(c.getFullYear()),{locale:b,minDate:h,maxDate:l,isDateDisabled:x,today:V,value:A}=n,w=K(A),L=he.useMemo(()=>{let D=ka(b,"short"),u=c.getFullYear();return Array.from({length:i},(_,C)=>{let N=e==="month"?Be(c,new Date(u,C,1)):M(c,(C-g)*d),y=e==="month"?u:N.getFullYear(),Z=e==="month"?new Date(y,C,1):new Date(y,0,1),j=e==="month"?new Date(y,C,De(y,C)):new Date(y,11,31),G=k=>k!==null&&k.getFullYear()===y&&(e==="year"||k.getMonth()===C);return{date:N,key:e==="month"?`${y}-${C}`:String(y),text:e==="month"?D[C]:st(y,b),label:e==="month"?Pa(new Date(y,C,1),b):st(y,b),refused:!mt(Z,j,h,l,x),selected:G(w),today:G(V)}})},[e,i,d,c,g,b,h,l,x,w,V]),I=D=>{let u=M(c,D*d),_=W(c,o,b),C=W(u,o,b);n.setFocusedDate(u),C!==_&&Sa(C),requestAnimationFrame(()=>{let N=e==="month"?`${u.getFullYear()}-${u.getMonth()}`:String(u.getFullYear());(t?.current??document).querySelector(`[data-skdx-calendar-view-cell="${N}"]`)?.focus({preventScroll:!0})})};return{context:n,cells:L,focusedIndex:g,handleKeyDown:D=>{let u;switch(Ma(D.key,D.currentTarget,r)){case"ArrowLeft":u=-1;break;case"ArrowRight":u=1;break;case"ArrowUp":u=-We();break;case"ArrowDown":u=We();break;case"Home":u=-g;break;case"End":u=i-1-g;break;case"PageUp":u=-i*(D.shiftKey?10:1);break;case"PageDown":u=i*(D.shiftKey?10:1);break;default:return}D.preventDefault(),u!==0&&I(u)}}}function ut({cells:e,focusedIndex:a,navigate:n}){let t=[],r=We();for(let o=0;o<e.length;o+=r)t.push(e.slice(o,o+r));return B(oe.div,{role:"rowgroup",children:t.map((o,d)=>B(oe.div,{role:"row",children:o.map((i,c)=>{let g=d*r+c;return B(oe.button,{type:"button",role:"gridcell","aria-disabled":i.refused||void 0,"aria-selected":i.selected,"aria-current":i.today?"date":void 0,"aria-label":i.label,"data-skdx-calendar-view-cell":i.key,"data-state":i.selected?"selected":void 0,"data-today":i.today?"":void 0,"data-disabled":i.refused?"":void 0,tabIndex:g===a?0:-1,...Le("calendar","view-cell"),onClick:()=>{i.refused||n(i.date)},children:i.text},i.key)})},o[0].key))})}var Ie=({children:e,ref:a,...n})=>{let{context:t,cells:r,focusedIndex:o,handleKeyDown:d}=ct("month","CalendarMonthGrid");return t.view!=="month"?null:B(oe.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:W(t.focusedDate,"month",t.locale),"aria-readonly":t.readOnly||void 0,"aria-disabled":t.disabled||void 0,...n,...Le("calendar","month-grid",n.className),ref:a,onKeyDown:lt(n.onKeyDown,d),children:e??B(ut,{cells:r,focusedIndex:o,navigate:t.navigateToUnit})})};Ie.displayName="CalendarMonthGrid";var Ue=({children:e,ref:a,...n})=>{let{context:t,cells:r,focusedIndex:o,handleKeyDown:d}=ct("year","CalendarYearGrid");return t.view!=="year"?null:B(oe.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:W(t.focusedDate,"year",t.locale),"aria-readonly":t.readOnly||void 0,"aria-disabled":t.disabled||void 0,...n,...Le("calendar","year-grid",n.className),ref:a,onKeyDown:lt(n.onKeyDown,d),children:e??B(ut,{cells:r,focusedIndex:o,navigate:t.navigateToUnit})})};Ue.displayName="CalendarYearGrid";import{Fragment as Va,jsx as P,jsxs as ge}from"react/jsx-runtime";var ft=({dir:e})=>P(Ta,{name:e==="left"?"chevron-left":"chevron-right"}),Ct=()=>{let{months:e}=f("CalendarAnatomy"),a=e.length>1;return ge(Va,{children:[ge(Ye,{children:[P(Ee,{children:P(ft,{dir:"left"})}),a?null:P(Ce,{}),P(He,{children:P(ft,{dir:"right"})})]}),e.map((n,t)=>ge(pt.Fragment,{children:[a?P(Ce,{monthOffset:t}):null,ge(Re,{monthOffset:t,children:[P(Oe,{}),P(Ve,{})]})]},n.toISOString())),P(Ie,{}),P(Ue,{})]})};import{jsx as ye}from"react/jsx-runtime";function De(e,a){return new Date(e,a+1,0).getDate()}function E(e){return new Date(e.getFullYear(),e.getMonth(),1)}function M(e,a){let n=e.getDate(),t=new Date(e.getFullYear(),e.getMonth(),1);t.setMonth(t.getMonth()+a);let r=De(t.getFullYear(),t.getMonth());return t.setDate(Math.min(n,r)),t}function ve(e,a){return M(e,a*12)}function H(e,a){let n=new Date(e);return n.setDate(n.getDate()+a),n}function U(e,a){return!e||!a?!1:e.getFullYear()===a.getFullYear()&&e.getMonth()===a.getMonth()&&e.getDate()===a.getDate()}function T(e,a){return e.getFullYear()===a.getFullYear()&&e.getMonth()===a.getMonth()}function me(e,a){let n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),t=(n.getDay()-a+7)%7;return n.setDate(n.getDate()-t),n}function et(e,a){return H(me(e,a),6)}function p(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}function tt(e,a,n,t){let r=p(e).getTime();return!!(a&&r<p(a).getTime()||n&&r>p(n).getTime()||t?.(e))}function Pe(e,a,n){return a&&p(e).getTime()<p(a).getTime()?a:n&&p(e).getTime()>p(n).getTime()?n:e}function La(e,a){return{disabled:e??!1,isDateDisabled:a}}var qe=!1;function Hr(){qe=!1}function Ia(e,a){!e||qe||!(e.getUTCHours()===0&&e.getUTCMinutes()===0&&e.getUTCSeconds()===0&&e.getUTCMilliseconds()===0)||e.getDate()===e.getUTCDate()&&e.getMonth()===e.getUTCMonth()||(qe=!0,Ha()&&console.warn(`[skdx] Calendar: \`${a}\` was given ${e.toISOString()}, which is midnight UTC and therefore ${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} in this time zone \u2014 a different day from the one the string says. A selection here is a local wall-clock date, never an instant: build it as \`new Date(year, monthIndex, day)\` rather than \`new Date('YYYY-MM-DD')\`, which the platform reads as UTC.`))}function nt(e){let a=new Date(e.getFullYear(),e.getMonth(),e.getDate());a.setDate(a.getDate()-(a.getDay()+6)%7+3);let n=new Date(a.getFullYear(),0,4);return n.setDate(n.getDate()-(n.getDay()+6)%7+3),1+Math.round((a.getTime()-n.getTime())/(10080*60*1e3))}function fe(e){let a=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),t=String(e.getDate()).padStart(2,"0");return`${a}-${n}-${t}`}function Be(e,a){if(T(e,a))return e;let n=De(a.getFullYear(),a.getMonth());return new Date(a.getFullYear(),a.getMonth(),Math.min(e.getDate(),n))}var R=["day","month","year"],Q=20;function gt(e,a,n){let t=R.indexOf(a),r=Math.max(t,R.indexOf(n));return R[Math.min(Math.max(R.indexOf(e),t),r)]}function Ke(e){return Math.floor(e/Q)*Q}function mt(e,a,n,t,r){let o=n&&p(n)>p(e)?p(n):p(e),d=t&&p(t)<p(a)?p(t):p(a);if(o.getTime()>d.getTime())return!1;if(!r)return!0;for(let i=o;i.getTime()<=d.getTime();i=H(i,1))if(!r(i))return!0;return!1}function W(e,a,n){if(a==="day")return bt(e,n);if(a==="month")return Aa(e.getFullYear(),n);let t=Ke(e.getFullYear());return Ga(t,t+Q-1,n)}function rt(e,a=0){let n=me(E(e),a),t=[],r=n;for(let o=0;o<6;o++){let d=[];for(let i=0;i<7;i++)d.push({date:r,outsideMonth:!T(r,e)}),r=H(r,1);t.push(d)}return t}function X(e){return e!==null&&!Array.isArray(e)&&!(e instanceof Date)}function yt(e){return e==="multiple"?[]:null}function at(e,a){return e===null?!1:Array.isArray(e)?e.some(n=>U(n,a)):X(e)?Ne(e,a)!==void 0:U(e,a)}function Ne(e,a){let n=p(a).getTime(),t=p(e.start).getTime();if(e.end===null)return n===t?"start":void 0;let r=p(e.end).getTime();if(!(n<t||n>r))return n===t?"start":n===r?"end":"middle"}function Ua(e,a,n){if(e==="single")return n;if(e==="multiple"){let r=Array.isArray(a)?a:[],o=r.filter(d=>!U(d,n));return o.length!==r.length?o:[...r,n].sort((d,i)=>d.getTime()-i.getTime())}let t=X(a)&&a.end===null?a:void 0;return t?p(n).getTime()<p(t.start).getTime()?{start:n,end:t.start}:{start:t.start,end:n}:{start:n,end:null}}function Ba(e,a){return X(e)?e.end===null?`${$e(e.start,a)} selected as the range start. Select an end date.`:`Range selected, ${$e(e.start,a)} to ${$e(e.end,a)}.`:Array.isArray(e)?`${e.length} ${e.length===1?"date":"dates"} selected.`:""}var[Ka,f]=Ya("Calendar");function Er(){return f("useCalendarContext")}var ke=s.createContext(null);function pe(e){return s.useContext(ke)?.gridMonth??e}var ne=s.createContext(null);function K(e){return e===null?null:Array.isArray(e)?e[0]??null:X(e)?e.start:e}function $a({selectionMode:e,value:a,defaultValue:n,onValueChange:t,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:g,minDate:b,maxDate:h,today:l}){let x=s.useMemo(()=>Dt(a,e,"value"),[a,e]),V=s.useMemo(()=>Dt(n,e,"defaultValue"),[n,e]),A=s.useMemo(()=>$(r,"month")??void 0,[r]),w=s.useMemo(()=>$(o,"defaultMonth")??void 0,[o]),L=s.useMemo(()=>$(b,"minDate")??void 0,[b]),I=s.useMemo(()=>$(h,"maxDate")??void 0,[h]),ie=s.useMemo(()=>$(l,"today")??void 0,[l]),[D=null,u]=be({prop:x,defaultProp:V??yt(e),onChange:q=>t?.(q??yt(e))}),[_]=s.useState(()=>new Date),C=ie??_;Ia(K(D),"value");let N=E(w??K(D)??C),[y=N,Z]=be({prop:A,defaultProp:N,onChange:d}),j=s.useMemo(()=>$(i,"focusedDate")??void 0,[i]),G=s.useMemo(()=>$(c,"defaultFocusedDate")??void 0,[c]),[k=G??K(D)??y,de]=be({prop:j,defaultProp:G??K(D)??y,onChange:g}),xe=s.useCallback(q=>{let z=Pe(q,L,I);U(z,k)||de(z)},[k,de,L,I]);return{value:D,setValue:u,month:y,setMonth:Z,today:C,minDate:L,maxDate:I,focusedDate:k,moveFocus:xe}}var _a=({selectionMode:e="single",value:a,defaultValue:n,onValueChange:t,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:g,view:b,defaultView:h="day",minView:l="day",maxView:x="year",onViewChange:V,numberOfMonths:A=1,locale:w,minDate:L,maxDate:I,weekStartsOn:ie,pageBehavior:D="visible",weekNumbers:u=!1,today:_,readOnly:C=!1,disabled:N,outsideDaySelectable:y=!1,isDateDisabled:Z,isDateUnavailable:j,getSelectionAnnouncement:G,getMonthAnnouncement:k,children:de,ref:xe,...q})=>{let{disabled:z,isDateDisabled:xt}=La(N,Z),ze=s.useRef(null),wt=Oa(xe,ze),{value:ee,setValue:Je,month:te,setMonth:F,today:vt,minDate:Rt,maxDate:Pt,focusedDate:se,moveFocus:O}=$a({selectionMode:e,value:a,defaultValue:n,onValueChange:t,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:g,minDate:L,maxDate:I,today:_}),[kt=h,Xe]=be({prop:b,defaultProp:h,onChange:V}),S=gt(kt,l,x),we=s.useCallback(m=>{let v=gt(m,l,x);v!==S&&Xe(v)},[S,l,x,Xe]),le=ie??Fa(w),Mt=s.useMemo(()=>{let m=ht(w,le,"short"),v=ht(w,le,"long");return m.map((Y,ce)=>({short:Y,long:v[ce]}))},[w,le]),ae=s.useMemo(()=>Array.from({length:Math.max(1,A)},(m,v)=>M(te,v)),[te,A]),Nt=s.useCallback(m=>{if(C||z)return;let v=Ua(e,ee,m);Je(v);let Y=(G??Ba)(v,w);Y&&_e(Y)},[C,z,e,ee,Je,w,G]),St=s.useCallback(m=>F(E(m)),[F]),Tt=s.useCallback(m=>{if(S!=="day"){let At=S==="month"?12:12*Q,Ze=M(se,m*At);O(Ze),_e(W(Ze,S,w));return}let v=D==="single"?1:Math.max(1,A),Y=M(te,m*v);F(E(Y)),O(Be(se,Y));let ce=(k??bt)(Y,w);ce&&_e(ce)},[S,D,A,te,F,se,O,k,w]),Vt=s.useCallback(m=>{O(m),ae.some(v=>T(m,v))||F(E(m)),we(R[R.indexOf(S)-1]??"day")},[O,ae,F,we,S]),J=s.useMemo(()=>{let m=K(ee);return m?p(m).getTime():null},[ee]),Qe=s.useRef(J);return s.useEffect(()=>{if(J===null||J===Qe.current)return;Qe.current=J;let m=new Date(J);ae.some(v=>T(m,v))||(O(m),F(E(m)))},[J,ae,F,O]),ye(Ka,{value:ee,selectionMode:e,month:te,months:ae,focusedDate:se,today:vt,weekStartsOn:le,weekNumbers:u,locale:w,weekDayNames:Mt,minDate:Rt,maxDate:Pt,readOnly:C,disabled:z,outsideDaySelectable:y,isDateDisabled:xt,isDateUnavailable:j,onValueChange:Nt,onMonthChange:St,pageMonths:Tt,setFocusedDate:O,view:S,minView:l,maxView:x,setView:we,navigateToUnit:Vt,children:ye(Wa.div,{...q,...Ea("calendar","root",q.className),ref:wt,children:ye(ne.Provider,{value:ze,children:de??ye(Ct,{})})})})};_a.displayName="Calendar";import{clearLocaleNameCache as Kr,formatDateLabel as $r,formatMonthLabel as _r,formatYear as qr,formatYearRange as zr,getLocaleWeekStartsOn as Jr,getMonthNames as Xr,getWeekDayNames as Qr,resolveLocale as Zr}from"../utils/calendar-locale.js";export{R as CALENDAR_VIEWS,Q as CALENDAR_YEAR_PAGE,_a as Calendar,Me as CalendarCell,Re as CalendarGrid,Ve as CalendarGridBody,ke as CalendarGridContext,Oe as CalendarGridHead,Ye as CalendarHeader,Ce as CalendarHeading,Ie as CalendarMonthGrid,He as CalendarNextButton,Ee as CalendarPreviousButton,Ka as CalendarProvider,ne as CalendarRootContext,re as CalendarRow,Ae as CalendarWeekDay,Se as CalendarWeekNumber,Ge as CalendarWeekNumberHeader,Ue as CalendarYearGrid,H as addDays,M as addMonths,ve as addYears,K as anchorOf,Pe as clampToDateRange,Be as clampToMonth,gt as clampView,Kr as clearLocaleNameCache,yt as emptySelection,et as endOfWeek,$r as formatDateLabel,_r as formatMonthLabel,W as formatViewPageLabel,qr as formatYear,zr as formatYearRange,De as getDaysInMonth,nt as getISOWeek,Jr as getLocaleWeekStartsOn,Xr as getMonthNames,rt as getVisibleWeeks,Qr as getWeekDayNames,mt as hasAvailableDate,tt as isDateDisabled,X as isDateRange,at as isDateSelected,U as isSameDay,T as isSameMonth,Ua as nextSelection,Ne as rangePositionOf,Hr as resetInstantDateWarning,La as resolveCalendarDisabled,Zr as resolveLocale,Ba as selectionAnnouncement,E as startOfMonth,me as startOfWeek,p as stripTime,fe as toISODateString,Er as useCalendarContext,f as useCalendarContextInternal,pe as useCalendarGridMonth,Ia as warnInstantDate,Ke as yearPageStart};
2
+ import*as s from"react";import{formatDateLabel as _e,formatMonthLabel as xt,formatYear as Fa,formatYearRange as Aa,getLocaleWeekStartsOn as Ga,getWeekDayNames as ht}from"../utils/calendar-locale.js";import{useComposedRefs as Oa}from"../utils/composeRefs.js";import{createSafeContext as Ya}from"../utils/createContext.js";import{toCalendarValue as gt,toDate as K}from"../utils/date-value.js";import{isDevMode as Ha}from"../utils/dev-mode.js";import{announce as qe}from"../utils/liveAnnouncer.js";import{skdxPart as Ea}from"../utils/part.js";import{Primitive as Wa}from"../utils/primitive.js";import{useControllableState as we}from"../utils/useControllableState.js";import*as Ct from"react";import{Glyph as Ta}from"../utils/Glyph.js";import*as fe from"react";import{formatMonthLabel as At}from"../utils/calendar-locale.js";import{directionalKey as Gt,useDirection as Ot}from"../utils/direction.js";import{skdxPart as Yt}from"../utils/part.js";import{Primitive as Ht,useComposedEventHandlers as Et}from"../utils/primitive.js";import{jsx as et}from"react/jsx-runtime";var Pe=({monthOffset:e=0,ref:a,...n})=>{let t=p("CalendarGrid"),r=Ot(),o=t.months[e]??t.month,d=fe.useMemo(()=>({gridMonth:o}),[o]),i=fe.useContext(ne),c=D=>{let l=ke(D,t.minDate,t.maxDate);t.months.some(x=>M(l,x))||t.onMonthChange(H(l)),t.setFocusedDate(l),requestAnimationFrame(()=>{let x=Ce(l);(i?.current??document).querySelector(`[data-skdx-calendar-cell="${x}"]:not([disabled])`)?.focus()})},h=D=>{let l;switch(Gt(D.key,D.currentTarget,r)){case"ArrowLeft":l=Y(t.focusedDate,-1);break;case"ArrowRight":l=Y(t.focusedDate,1);break;case"ArrowUp":l=Y(t.focusedDate,-7);break;case"ArrowDown":l=Y(t.focusedDate,7);break;case"Home":l=pe(t.focusedDate,t.weekStartsOn);break;case"End":l=tt(t.focusedDate,t.weekStartsOn);break;case"PageUp":l=D.shiftKey?Re(t.focusedDate,-1):k(t.focusedDate,-1);break;case"PageDown":l=D.shiftKey?Re(t.focusedDate,1):k(t.focusedDate,1);break;default:return}D.preventDefault(),c(l)},b=Et(n.onKeyDown,h);return t.view!=="day"?null:et(Me.Provider,{value:d,children:et(Ht.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:At(o,t.locale),"aria-multiselectable":t.selectionMode!=="single","aria-readonly":t.readOnly||void 0,"aria-disabled":t.disabled||void 0,...n,...Yt("calendar","grid",n.className),ref:a,onKeyDown:b})})};Pe.displayName="CalendarGrid";import{skdxPart as jt}from"../utils/part.js";import{Primitive as ea}from"../utils/primitive.js";import{formatDateLabel as Wt}from"../utils/calendar-locale.js";import{toDate as Lt}from"../utils/date-value.js";import{skdxPart as It}from"../utils/part.js";import{composeEventHandlers as Ut,Primitive as Bt}from"../utils/primitive.js";import{jsx as $t}from"react/jsx-runtime";function Kt(e){return{"aria-selected":e.isSelected,"aria-disabled":e.isUnavailable||void 0,"aria-current":e.isToday?"date":void 0,"data-state":e.isSelected?"selected":void 0,"data-today":e.isToday?"":void 0,"data-outside-month":e.isOutsideMonth?"":void 0,"data-disabled":e.isDisabled?"":void 0,"data-unavailable":e.isUnavailable?"":void 0,"data-range-start":e.rangePosition==="start"?"":void 0,"data-range-middle":e.rangePosition==="middle"?"":void 0,"data-range-end":e.rangePosition==="end"?"":void 0,tabIndex:e.isFocused?0:-1}}var Ne=({date:e,ref:a,...n})=>{let t=p("CalendarCell"),r=De(t.month),o=Lt(e,"date")??r,d=Ce(o),i=!M(o,r),c=t.disabled||i&&!t.outsideDaySelectable||at(o,t.minDate,t.maxDate,t.isDateDisabled),h=!c&&(t.isDateUnavailable?.(o)??!1),b=nt(t.value,o),D=z(t.value)?Se(t.value,o):void 0,l=U(o,t.today),x=U(o,t.focusedDate);return $t(Bt.button,{type:"button",role:"gridcell","aria-label":Wt(o,t.locale),"data-skdx-calendar-cell":d,...Kt({isSelected:b,isToday:l,isOutsideMonth:i,isDisabled:c,isUnavailable:h,isFocused:x,rangePosition:D}),disabled:c,...n,...It("calendar","cell",n.className),ref:a,onClick:Ut(n.onClick,()=>{if(!c){if(h){t.setFocusedDate(o);return}t.onValueChange(o),t.setFocusedDate(o),i&&!t.months.some(V=>M(o,V))&&t.onMonthChange(o)}}),children:n.children??o.getDate()})};Ne.displayName="CalendarCell";import{skdxPart as _t}from"../utils/part.js";import{Primitive as qt}from"../utils/primitive.js";import{jsx as zt}from"react/jsx-runtime";var re=({ref:e,...a})=>zt(qt.div,{role:"row",...a,..._t("calendar","row",a.className),ref:e});re.displayName="CalendarRow";import{toDate as Jt}from"../utils/date-value.js";import{skdxPart as Xt}from"../utils/part.js";import{Primitive as Qt}from"../utils/primitive.js";import{jsx as Zt}from"react/jsx-runtime";var Te=({date:e,children:a,ref:n,...t})=>{let r=p("CalendarWeekNumber"),o=Jt(e,"date")??r.month,d=rt(o);return Zt(Qt.div,{role:"rowheader","aria-label":`Week ${d}`,...t,...Xt("calendar","week-number",t.className),ref:n,children:a??d})};Te.displayName="CalendarWeekNumber";import{jsx as Ve,jsxs as ta}from"react/jsx-runtime";var Fe=({children:e,ref:a,...n})=>{let t=p("CalendarGridBody"),r=De(t.month),o=ot(r,t.weekStartsOn);return Ve(ea.div,{role:"rowgroup",...n,...jt("calendar","grid-body",n.className),ref:a,children:e??o.map(d=>ta(re,{children:[t.weekNumbers?Ve(Te,{date:d[0].date}):null,d.map(({date:i})=>Ve(Ne,{date:i},i.toISOString()))]},d[0].date.toISOString()))})};Fe.displayName="CalendarGridBody";import{skdxPart as sa}from"../utils/part.js";import{Primitive as la}from"../utils/primitive.js";import{skdxPart as aa}from"../utils/part.js";import{Primitive as na}from"../utils/primitive.js";import{jsx as ra}from"react/jsx-runtime";var Ae=({ref:e,...a})=>ra(na.div,{role:"columnheader",...a,...aa("calendar","week-day",a.className),ref:e});Ae.displayName="CalendarWeekDay";import{skdxPart as oa}from"../utils/part.js";import{Primitive as ia}from"../utils/primitive.js";import{jsx as da}from"react/jsx-runtime";var Ge=({ref:e,...a})=>da(ia.div,{role:"columnheader","aria-label":"Week number",...a,...oa("calendar","week-number-header",a.className),ref:e});Ge.displayName="CalendarWeekNumberHeader";import{jsx as Oe,jsxs as ca}from"react/jsx-runtime";var Ye=({children:e,ref:a,...n})=>{let t=p("CalendarGridHead");return Oe(la.div,{role:"rowgroup",...n,...sa("calendar","grid-head",n.className),ref:a,children:e??ca(re,{children:[t.weekNumbers?Oe(Ge,{}):null,t.weekDayNames.map(r=>Oe(Ae,{"aria-label":r.long,children:r.short},r.long))]})})};Ye.displayName="CalendarGridHead";import{skdxPart as ua}from"../utils/part.js";import{Primitive as ma}from"../utils/primitive.js";import{jsx as fa}from"react/jsx-runtime";var He=({ref:e,...a})=>fa(ma.div,{...a,...ua("calendar","header",a.className),ref:e});He.displayName="CalendarHeader";import{skdxPart as it}from"../utils/part.js";import{composeEventHandlers as pa,Primitive as dt}from"../utils/primitive.js";import{jsx as st}from"react/jsx-runtime";var he=({monthOffset:e=0,children:a,ref:n,...t})=>{let r=p("CalendarHeading"),o=r.months[e]??r.month,d=r.view==="day"?o:r.focusedDate,i=E(d,r.view,r.locale),c=R[R.indexOf(r.view)+1];return c!==void 0&&R.indexOf(r.view)<R.indexOf(r.maxView)?st(dt.button,{type:"button",...t,...it("calendar","heading",t.className),ref:n,onClick:pa(t.onClick,()=>r.setView(c)),children:a??i}):st(dt.div,{...t,...it("calendar","heading",t.className),ref:n,children:a??i})};he.displayName="CalendarHeading";import{skdxPart as Ca}from"../utils/part.js";import{composeEventHandlers as Da,Primitive as ha}from"../utils/primitive.js";import{jsx as ya}from"react/jsx-runtime";var ga={day:"Next month",month:"Next year",year:"Next 20 years"},Ee=({ref:e,...a})=>{let n=p("CalendarNextButton");return ya(ha.button,{type:"button","aria-label":ga[n.view],...a,...Ca("calendar","next-button",a.className),ref:e,onClick:Da(a.onClick,()=>n.pageMonths(1))})};Ee.displayName="CalendarNextButton";import{skdxPart as ba}from"../utils/part.js";import{composeEventHandlers as xa,Primitive as wa}from"../utils/primitive.js";import{jsx as Ra}from"react/jsx-runtime";var va={day:"Previous month",month:"Previous year",year:"Previous 20 years"},We=({ref:e,...a})=>{let n=p("CalendarPreviousButton");return Ra(wa.button,{type:"button","aria-label":va[n.view],...a,...ba("calendar","previous-button",a.className),ref:e,onClick:xa(a.onClick,()=>n.pageMonths(-1))})};We.displayName="CalendarPreviousButton";import*as ge from"react";import{formatMonthLabel as Pa,formatYear as lt,getMonthNames as ka}from"../utils/calendar-locale.js";import{directionalKey as Ma,useDirection as Na}from"../utils/direction.js";import{announce as Sa}from"../utils/liveAnnouncer.js";import{skdxPart as Ie}from"../utils/part.js";import{composeEventHandlers as ct,Primitive as oe}from"../utils/primitive.js";import{jsx as B}from"react/jsx-runtime";function Le(){return 4}function ut(e,a){let n=p(a),t=ge.useContext(ne),r=Na(),o=e,d=e==="month"?1:12,i=e==="month"?12:J,c=n.focusedDate,h=e==="month"?c.getMonth():c.getFullYear()-$e(c.getFullYear()),{locale:b,minDate:D,maxDate:l,isDateDisabled:x,today:V,value:F}=n,w=X(F),W=ge.useMemo(()=>{let g=ka(b,"short"),u=c.getFullYear();return Array.from({length:i},($,f)=>{let N=e==="month"?Ke(c,new Date(u,f,1)):k(c,(f-h)*d),y=e==="month"?u:N.getFullYear(),Q=e==="month"?new Date(y,f,1):new Date(y,0,1),Z=e==="month"?new Date(y,f,ye(y,f)):new Date(y,11,31),_=S=>S!==null&&S.getFullYear()===y&&(e==="year"||S.getMonth()===f);return{date:N,key:e==="month"?`${y}-${f}`:String(y),text:e==="month"?g[f]:lt(y,b),label:e==="month"?Pa(new Date(y,f,1),b):lt(y,b),refused:!ft(Q,Z,D,l,x),selected:_(w),today:_(V)}})},[e,i,d,c,h,b,D,l,x,w,V]),L=g=>{let u=k(c,g*d),$=E(c,o,b),f=E(u,o,b);n.setFocusedDate(u),f!==$&&Sa(f),requestAnimationFrame(()=>{let N=e==="month"?`${u.getFullYear()}-${u.getMonth()}`:String(u.getFullYear());(t?.current??document).querySelector(`[data-skdx-calendar-view-cell="${N}"]`)?.focus({preventScroll:!0})})};return{context:n,cells:W,focusedIndex:h,handleKeyDown:g=>{let u;switch(Ma(g.key,g.currentTarget,r)){case"ArrowLeft":u=-1;break;case"ArrowRight":u=1;break;case"ArrowUp":u=-Le();break;case"ArrowDown":u=Le();break;case"Home":u=-h;break;case"End":u=i-1-h;break;case"PageUp":u=-i*(g.shiftKey?10:1);break;case"PageDown":u=i*(g.shiftKey?10:1);break;default:return}g.preventDefault(),u!==0&&L(u)}}}function mt({cells:e,focusedIndex:a,navigate:n}){let t=[],r=Le();for(let o=0;o<e.length;o+=r)t.push(e.slice(o,o+r));return B(oe.div,{role:"rowgroup",children:t.map((o,d)=>B(oe.div,{role:"row",children:o.map((i,c)=>{let h=d*r+c;return B(oe.button,{type:"button",role:"gridcell","aria-disabled":i.refused||void 0,"aria-selected":i.selected,"aria-current":i.today?"date":void 0,"aria-label":i.label,"data-skdx-calendar-view-cell":i.key,"data-state":i.selected?"selected":void 0,"data-today":i.today?"":void 0,"data-disabled":i.refused?"":void 0,tabIndex:h===a?0:-1,...Ie("calendar","view-cell"),onClick:()=>{i.refused||n(i.date)},children:i.text},i.key)})},o[0].key))})}var Ue=({children:e,ref:a,...n})=>{let{context:t,cells:r,focusedIndex:o,handleKeyDown:d}=ut("month","CalendarMonthGrid");return t.view!=="month"?null:B(oe.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:E(t.focusedDate,"month",t.locale),"aria-readonly":t.readOnly||void 0,"aria-disabled":t.disabled||void 0,...n,...Ie("calendar","month-grid",n.className),ref:a,onKeyDown:ct(n.onKeyDown,d),children:e??B(mt,{cells:r,focusedIndex:o,navigate:t.navigateToUnit})})};Ue.displayName="CalendarMonthGrid";var Be=({children:e,ref:a,...n})=>{let{context:t,cells:r,focusedIndex:o,handleKeyDown:d}=ut("year","CalendarYearGrid");return t.view!=="year"?null:B(oe.div,{role:"grid","aria-label":n["aria-label"]||n["aria-labelledby"]?void 0:E(t.focusedDate,"year",t.locale),"aria-readonly":t.readOnly||void 0,"aria-disabled":t.disabled||void 0,...n,...Ie("calendar","year-grid",n.className),ref:a,onKeyDown:ct(n.onKeyDown,d),children:e??B(mt,{cells:r,focusedIndex:o,navigate:t.navigateToUnit})})};Be.displayName="CalendarYearGrid";import{Fragment as Va,jsx as P,jsxs as be}from"react/jsx-runtime";var pt=({dir:e})=>P(Ta,{name:e==="left"?"chevron-left":"chevron-right"}),Dt=()=>{let{months:e}=p("CalendarAnatomy"),a=e.length>1;return be(Va,{children:[be(He,{children:[P(We,{children:P(pt,{dir:"left"})}),a?null:P(he,{}),P(Ee,{children:P(pt,{dir:"right"})})]}),e.map((n,t)=>be(Ct.Fragment,{children:[a?P(he,{monthOffset:t}):null,be(Pe,{monthOffset:t,children:[P(Ye,{}),P(Fe,{})]})]},n.toISOString())),P(Ue,{}),P(Be,{})]})};import{jsx as xe}from"react/jsx-runtime";function ye(e,a){return new Date(e,a+1,0).getDate()}function H(e){return new Date(e.getFullYear(),e.getMonth(),1)}function k(e,a){let n=e.getDate(),t=new Date(e.getFullYear(),e.getMonth(),1);t.setMonth(t.getMonth()+a);let r=ye(t.getFullYear(),t.getMonth());return t.setDate(Math.min(n,r)),t}function Re(e,a){return k(e,a*12)}function Y(e,a){let n=new Date(e);return n.setDate(n.getDate()+a),n}function U(e,a){return!e||!a?!1:e.getFullYear()===a.getFullYear()&&e.getMonth()===a.getMonth()&&e.getDate()===a.getDate()}function M(e,a){return e.getFullYear()===a.getFullYear()&&e.getMonth()===a.getMonth()}function pe(e,a){let n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),t=(n.getDay()-a+7)%7;return n.setDate(n.getDate()-t),n}function tt(e,a){return Y(pe(e,a),6)}function C(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}function at(e,a,n,t){let r=C(e).getTime();return!!(a&&r<C(a).getTime()||n&&r>C(n).getTime()||t?.(e))}function ke(e,a,n){return a&&C(e).getTime()<C(a).getTime()?a:n&&C(e).getTime()>C(n).getTime()?n:e}function La(e,a){return{disabled:e??!1,isDateDisabled:a}}var ze=!1;function Hr(){ze=!1}function Ia(e,a){!e||ze||!(e.getUTCHours()===0&&e.getUTCMinutes()===0&&e.getUTCSeconds()===0&&e.getUTCMilliseconds()===0)||e.getDate()===e.getUTCDate()&&e.getMonth()===e.getUTCMonth()||(ze=!0,Ha()&&console.warn(`[skdx] Calendar: \`${a}\` was given ${e.toISOString()}, which is midnight UTC and therefore ${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} in this time zone \u2014 a different day from the one the string says. A selection here is a local wall-clock date, never an instant: build it as \`new Date(year, monthIndex, day)\` rather than \`new Date('YYYY-MM-DD')\`, which the platform reads as UTC.`))}function rt(e){let a=new Date(e.getFullYear(),e.getMonth(),e.getDate());a.setDate(a.getDate()-(a.getDay()+6)%7+3);let n=new Date(a.getFullYear(),0,4);return n.setDate(n.getDate()-(n.getDay()+6)%7+3),1+Math.round((a.getTime()-n.getTime())/(10080*60*1e3))}function Ce(e){let a=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),t=String(e.getDate()).padStart(2,"0");return`${a}-${n}-${t}`}function Ke(e,a){if(M(e,a))return e;let n=ye(a.getFullYear(),a.getMonth());return new Date(a.getFullYear(),a.getMonth(),Math.min(e.getDate(),n))}var R=["day","month","year"],J=20;function yt(e,a,n){let t=R.indexOf(a),r=Math.max(t,R.indexOf(n));return R[Math.min(Math.max(R.indexOf(e),t),r)]}function $e(e){return Math.floor(e/J)*J}function ft(e,a,n,t,r){let o=n&&C(n)>C(e)?C(n):C(e),d=t&&C(t)<C(a)?C(t):C(a);if(o.getTime()>d.getTime())return!1;if(!r)return!0;for(let i=o;i.getTime()<=d.getTime();i=Y(i,1))if(!r(i))return!0;return!1}function E(e,a,n){if(a==="day")return xt(e,n);if(a==="month")return Fa(e.getFullYear(),n);let t=$e(e.getFullYear());return Aa(t,t+J-1,n)}function ot(e,a=0){let n=pe(H(e),a),t=[],r=n;for(let o=0;o<6;o++){let d=[];for(let i=0;i<7;i++)d.push({date:r,outsideMonth:!M(r,e)}),r=Y(r,1);t.push(d)}return t}function z(e){return e!==null&&!Array.isArray(e)&&!(e instanceof Date)}function bt(e){return e==="multiple"?[]:null}function nt(e,a){return e===null?!1:Array.isArray(e)?e.some(n=>U(n,a)):z(e)?Se(e,a)!==void 0:U(e,a)}function Se(e,a){let n=C(a).getTime(),t=C(e.start).getTime();if(e.end===null)return n===t?"start":void 0;let r=C(e.end).getTime();if(!(n<t||n>r))return n===t?"start":n===r?"end":"middle"}function Ua(e,a,n){if(e==="single")return n;if(e==="multiple"){let r=Array.isArray(a)?a:[],o=r.filter(d=>!U(d,n));return o.length!==r.length?o:[...r,n].sort((d,i)=>d.getTime()-i.getTime())}let t=z(a)&&a.end===null?a:void 0;return t?C(n).getTime()<C(t.start).getTime()?{start:n,end:t.start}:{start:t.start,end:n}:{start:n,end:null}}function Ba(e,a){return z(e)?e.end===null?`${_e(e.start,a)} selected as the range start. Select an end date.`:`Range selected, ${_e(e.start,a)} to ${_e(e.end,a)}.`:Array.isArray(e)?`${e.length} ${e.length===1?"date":"dates"} selected.`:""}var[Ka,p]=Ya("Calendar");function Er(){return p("useCalendarContext")}var Me=s.createContext(null);function De(e){return s.useContext(Me)?.gridMonth??e}var ne=s.createContext(null);function X(e){return e===null?null:Array.isArray(e)?e[0]??null:z(e)?e.start:e}function $a({selectionMode:e,value:a,defaultValue:n,onValueChange:t,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:h,minDate:b,maxDate:D,today:l}){let x=s.useMemo(()=>gt(a,e,"value"),[a,e]),V=s.useMemo(()=>gt(n,e,"defaultValue"),[n,e]),F=s.useMemo(()=>K(r,"month")??void 0,[r]),w=s.useMemo(()=>K(o,"defaultMonth")??void 0,[o]),W=s.useMemo(()=>K(b,"minDate")??void 0,[b]),L=s.useMemo(()=>K(D,"maxDate")??void 0,[D]),ie=s.useMemo(()=>K(l,"today")??void 0,[l]),[g=null,u]=we({prop:x,defaultProp:V??bt(e),onChange:I=>t?.(I??bt(e))}),[$]=s.useState(()=>new Date),f=ie??$;Ia(X(g),"value");let N=H(w??X(g)??f),[y=N,Q]=we({prop:F,defaultProp:N,onChange:d}),Z=s.useMemo(()=>K(i,"focusedDate")??void 0,[i]),S=s.useMemo(()=>K(c,"defaultFocusedDate")??void 0,[c])??X(g)??(M(f,y)?f:y),[j=S,de]=we({prop:Z,defaultProp:S,onChange:h}),se=s.useCallback(I=>{let le=ke(I,W,L);U(le,j)||de(le)},[j,de,W,L]);return{value:g,setValue:u,month:y,setMonth:Q,today:f,minDate:W,maxDate:L,focusedDate:j,moveFocus:se}}var _a=({selectionMode:e="single",value:a,defaultValue:n,onValueChange:t,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:h,view:b,defaultView:D="day",minView:l="day",maxView:x="year",onViewChange:V,numberOfMonths:F=1,locale:w,minDate:W,maxDate:L,weekStartsOn:ie,pageBehavior:g="visible",weekNumbers:u=!1,today:$,readOnly:f=!1,disabled:N,outsideDaySelectable:y=!1,isDateDisabled:Q,isDateUnavailable:Z,getSelectionAnnouncement:_,getMonthAnnouncement:S,children:j,ref:de,...se})=>{let{disabled:I,isDateDisabled:le}=La(N,Q),Je=s.useRef(null),wt=Oa(de,Je),{value:ee,setValue:Xe,month:te,setMonth:A,today:vt,minDate:Rt,maxDate:Pt,focusedDate:ce,moveFocus:G}=$a({selectionMode:e,value:a,defaultValue:n,onValueChange:t,month:r,defaultMonth:o,onMonthChange:d,focusedDate:i,defaultFocusedDate:c,onFocusChange:h,minDate:W,maxDate:L,today:$}),[kt=D,Qe]=we({prop:b,defaultProp:D,onChange:V}),T=yt(kt,l,x),ve=s.useCallback(m=>{let v=yt(m,l,x);v!==T&&Qe(v)},[T,l,x,Qe]),ue=ie??Ga(w),Mt=s.useMemo(()=>{let m=ht(w,ue,"short"),v=ht(w,ue,"long");return m.map((O,me)=>({short:O,long:v[me]}))},[w,ue]),ae=s.useMemo(()=>Array.from({length:Math.max(1,F)},(m,v)=>k(te,v)),[te,F]),Nt=s.useCallback(m=>{if(f||I)return;let v=Ua(e,ee,m);Xe(v);let O=(_??Ba)(v,w);O&&qe(O)},[f,I,e,ee,Xe,w,_]),St=s.useCallback(m=>A(H(m)),[A]),Tt=s.useCallback(m=>{if(T!=="day"){let Ft=T==="month"?12:12*J,je=k(ce,m*Ft);G(je),qe(E(je,T,w));return}let v=g==="single"?1:Math.max(1,F),O=k(te,m*v);A(H(O)),G(Ke(ce,O));let me=(S??xt)(O,w);me&&qe(me)},[T,g,F,te,A,ce,G,S,w]),Vt=s.useCallback(m=>{G(m),ae.some(v=>M(m,v))||A(H(m)),ve(R[R.indexOf(T)-1]??"day")},[G,ae,A,ve,T]),q=s.useMemo(()=>{let m=X(ee);return m?C(m).getTime():null},[ee]),Ze=s.useRef(q);return s.useEffect(()=>{if(q===null||q===Ze.current)return;Ze.current=q;let m=new Date(q);ae.some(v=>M(m,v))||(G(m),A(H(m)))},[q,ae,A,G]),xe(Ka,{value:ee,selectionMode:e,month:te,months:ae,focusedDate:ce,today:vt,weekStartsOn:ue,weekNumbers:u,locale:w,weekDayNames:Mt,minDate:Rt,maxDate:Pt,readOnly:f,disabled:I,outsideDaySelectable:y,isDateDisabled:le,isDateUnavailable:Z,onValueChange:Nt,onMonthChange:St,pageMonths:Tt,setFocusedDate:G,view:T,minView:l,maxView:x,setView:ve,navigateToUnit:Vt,children:xe(Wa.div,{...se,...Ea("calendar","root",se.className),ref:wt,children:xe(ne.Provider,{value:Je,children:j??xe(Dt,{})})})})};_a.displayName="Calendar";import{clearLocaleNameCache as Kr,formatDateLabel as $r,formatMonthLabel as _r,formatYear as qr,formatYearRange as zr,getLocaleWeekStartsOn as Jr,getMonthNames as Xr,getWeekDayNames as Qr,resolveLocale as Zr}from"../utils/calendar-locale.js";export{R as CALENDAR_VIEWS,J as CALENDAR_YEAR_PAGE,_a as Calendar,Ne as CalendarCell,Pe as CalendarGrid,Fe as CalendarGridBody,Me as CalendarGridContext,Ye as CalendarGridHead,He as CalendarHeader,he as CalendarHeading,Ue as CalendarMonthGrid,Ee as CalendarNextButton,We as CalendarPreviousButton,Ka as CalendarProvider,ne as CalendarRootContext,re as CalendarRow,Ae as CalendarWeekDay,Te as CalendarWeekNumber,Ge as CalendarWeekNumberHeader,Be as CalendarYearGrid,Y as addDays,k as addMonths,Re as addYears,X as anchorOf,ke as clampToDateRange,Ke as clampToMonth,yt as clampView,Kr as clearLocaleNameCache,bt as emptySelection,tt as endOfWeek,$r as formatDateLabel,_r as formatMonthLabel,E as formatViewPageLabel,qr as formatYear,zr as formatYearRange,ye as getDaysInMonth,rt as getISOWeek,Jr as getLocaleWeekStartsOn,Xr as getMonthNames,ot as getVisibleWeeks,Qr as getWeekDayNames,ft as hasAvailableDate,at as isDateDisabled,z as isDateRange,nt as isDateSelected,U as isSameDay,M as isSameMonth,Ua as nextSelection,Se as rangePositionOf,Hr as resetInstantDateWarning,La as resolveCalendarDisabled,Zr as resolveLocale,Ba as selectionAnnouncement,H as startOfMonth,pe as startOfWeek,C as stripTime,Ce as toISODateString,Er as useCalendarContext,p as useCalendarContextInternal,De as useCalendarGridMonth,Ia as warnInstantDate,$e as yearPageStart};
@@ -127,7 +127,7 @@ export interface CalendarProps extends Omit<PrimitivePropsWithRef<'div'>, 'defau
127
127
  focusedDate?: DateInput | undefined;
128
128
  /**
129
129
  * Initially focused date, for uncontrolled usage.
130
- * @default undefined — the selection's anchor date, else the displayed month.
130
+ * @default undefined — the selection's anchor date, else today when it is displayed, else the month.
131
131
  */
132
132
  defaultFocusedDate?: DateInput | undefined;
133
133
  /**
@@ -127,7 +127,7 @@ export interface CalendarProps extends Omit<PrimitivePropsWithRef<'div'>, 'defau
127
127
  focusedDate?: DateInput | undefined;
128
128
  /**
129
129
  * Initially focused date, for uncontrolled usage.
130
- * @default undefined — the selection's anchor date, else the displayed month.
130
+ * @default undefined — the selection's anchor date, else today when it is displayed, else the month.
131
131
  */
132
132
  defaultFocusedDate?: DateInput | undefined;
133
133
  /**
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";var $e=Object.create;var I=Object.defineProperty;var je=Object.getOwnPropertyDescriptor;var eo=Object.getOwnPropertyNames;var oo=Object.getPrototypeOf,to=Object.prototype.hasOwnProperty;var ao=(e,o)=>{for(var t in o)I(e,t,{get:o[t],enumerable:!0})},le=(e,o,t,a)=>{if(o&&typeof o=="object"||typeof o=="function")for(let l of eo(o))!to.call(e,l)&&l!==t&&I(e,l,{get:()=>o[l],enumerable:!(a=je(o,l))||a.enumerable});return e};var T=(e,o,t)=>(t=e!=null?$e(oo(e)):{},le(o||!e||!e.__esModule?I(t,"default",{value:e,enumerable:!0}):t,e)),io=e=>le(I({},"__esModule",{value:!0}),e);var so={};ao(so,{Dialog:()=>q,DialogAction:()=>M,DialogCancel:()=>w,DialogClose:()=>F,DialogContent:()=>B,DialogDescription:()=>V,DialogOverlay:()=>G,DialogPortal:()=>W,DialogProvider:()=>Fe,DialogRoot:()=>oe,DialogStateProvider:()=>ee,DialogTitle:()=>_,DialogTrigger:()=>Ge,Dialogs:()=>ae,OverlayPortal:()=>ke,createDialogs:()=>ie.createDialogs,useDialogContext:()=>r,useDialogs:()=>te});module.exports=io(so);var R=T(require("react"),1),Xe=require("../utils/createContext.cjs"),j=require("../utils/recipeAxis.cjs"),we=require("../utils/useControllableState.cjs"),Ae=require("../utils/useOpenChangeComplete.cjs");var Je=require("../utils/Glyph.cjs");var re=require("../utils/appearance.cjs"),se=require("../utils/part.cjs"),J=require("../utils/primitive.cjs");var pe=require("react/jsx-runtime");function M({ref:e,...o}){let t=r("DialogAction"),{disabled:a=!1}=o;return(0,pe.jsx)(J.Primitive.button,{type:"button",...o,...(0,re.appearanceAttrs)({status:t.status},o),...(0,se.skdxPart)("dialog","action",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:(0,J.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!1))})}M.displayName="DialogAction";var me=require("../utils/part.cjs"),X=require("../utils/primitive.cjs");var ce=require("react/jsx-runtime");function w({ref:e,...o}){let t=r("DialogCancel"),{disabled:a=!1}=o;return(0,ce.jsx)(X.Primitive.button,{type:"button","data-skdx-dialog-cancel":"",...o,...(0,me.skdxPart)("dialog","cancel",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:(0,X.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!1))})}w.displayName="DialogCancel";var de=require("../utils/part.cjs"),A=require("../utils/primitive.cjs");var fe=require("react/jsx-runtime");function F({ref:e,...o}){let t=r("DialogClose");return(0,fe.jsx)(A.Primitive.button,{type:"button",...o,...(0,de.skdxPart)(t.family,"close",o.className),ref:e,onClick:(0,A.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!1))})}F.displayName="DialogClose";var K=T(require("react"),1),ge=require("../utils/appearance.cjs"),ue=require("../utils/composeRefs.cjs"),v=require("../utils/dismissal.cjs"),z=require("../utils/focus-targets.cjs"),De=require("../utils/part.cjs"),O=require("../utils/primitive.cjs"),ye=require("../utils/tabbable.cjs"),Ce=require("../utils/useBodyScrollLock.cjs"),k=require("../utils/useCallbackRef.cjs"),Re=require("../utils/useDismiss.cjs");var Pe=require("react/jsx-runtime");function B({ref:e,initialFocus:o,finalFocus:t,onEscapeKeyDown:a,onPointerDownOutside:l,onFocusOutside:c,onInteractOutside:s,onOpenAutoFocus:D,onCloseAutoFocus:d,onCancel:P,onClose:f,onPointerDown:y,size:g,...u}){let i=r("DialogContent"),{open:C,modal:p,onOpenChange:E,contentRef:h}=i,b=h,_e=(0,ue.useComposedRefs)(e,b),qe=i.dismiss==="any"||i.dismiss==="escape",Z=i.dismiss==="any"||i.dismiss==="outside";(0,Ce.useBodyScrollLock)(C&&p);let H=K.useRef(!1),L=(0,k.useCallbackRef)(()=>{H.current=!(0,v.autoFocusEvent)("close-auto-focus",d),b.current?.close?.()}),ne=(0,k.useCallbackRef)(()=>{let n=b.current;if(n)if(C&&!n.open){let x=document.activeElement;p?(0,v.focusOnOpen)(()=>n.showModal?.()):(0,v.focusOnOpen)(()=>n.show?.()),(0,z.applyOpenAutoFocus)(n,o,"Dialog",D,x)}else!C&&n.open&&L()});K.useEffect(()=>{ne()},[C,p,ne]),(0,Re.useDismiss)({enabled:C,onInteractOutside:s,onPointerDownOutside:n=>{l?.(n),!n.defaultPrevented&&p&&Z&&L()},onFocusOutside:n=>{c?.(n),!n.defaultPrevented&&p&&Z&&L()}},[b,i.triggerRef]);let Qe=(0,k.useCallbackRef)(n=>{let x=n.nativeEvent;if(a?.(x),!qe){n.preventDefault();return}x.defaultPrevented||(H.current=!(0,v.autoFocusEvent)("close-auto-focus",d))}),Ue=(0,k.useCallbackRef)(()=>{H.current?(H.current=!1,document.activeElement?.blur?.()):(0,z.applyFinalFocus)(t,"Dialog"),E(!1)});function Ye(n){p&&(0,ye.wrapTabWithin)(n.currentTarget,n.nativeEvent)}function Ze(n){let x=(0,v.backdropPointerDown)(n.nativeEvent,n.currentTarget);x&&(s?.(x),l?.(x),!x.defaultPrevented&&p&&Z&&L())}return(0,Pe.jsx)("dialog",{role:i.role,"aria-modal":p||void 0,"aria-labelledby":i.hasTitle?i.titleId:void 0,"aria-describedby":i.hasDescription?i.descriptionId:void 0,id:i.contentId,"data-state":C?"open":"closed","data-dismiss":i.dismiss,...u,...(0,ge.appearanceAttrs)({size:g,status:i.status},u),...(0,De.skdxPart)("dialog","content",u.className),ref:_e,onCancel:(0,O.composeEventHandlers)(P,Qe),onClose:(0,O.composeEventHandlers)(f,Ue),onPointerDown:(0,O.composeEventHandlers)(y,Ze),onKeyDown:(0,O.composeEventHandlers)(u.onKeyDown,Ye)})}B.displayName="DialogContent";var xe=T(require("react"),1),ve=require("../utils/part.cjs"),he=require("../utils/primitive.cjs");var Ee=require("react/jsx-runtime");function V({ref:e,...o}){let t=r("DialogDescription"),{setHasDescription:a}=t;return xe.useEffect(()=>(a(!0),()=>a(!1)),[a]),(0,Ee.jsx)(he.Primitive.p,{id:t.descriptionId,...o,...(0,ve.skdxPart)(t.family,"description",o.className),ref:e})}V.displayName="DialogDescription";var be=require("../utils/part.cjs"),Se=require("../utils/primitive.cjs");var Te=require("react/jsx-runtime");function G({ref:e,forceMount:o,...t}){let a=r("DialogOverlay");return o||a.open?(0,Te.jsx)(Se.Primitive.div,{"data-state":a.open?"open":"closed",...t,...(0,be.skdxPart)(a.family,"overlay",t.className),ref:e,style:{pointerEvents:a.modal&&a.open?"auto":"none",...t.style}}):null}G.displayName="DialogOverlay";var Oe=require("../utils/portal.cjs");var $=require("react/jsx-runtime"),ke=({forceMount:e,children:o,...t})=>{let a=r("Portal");return a.family==="dialog"||e||a.open?(0,$.jsx)(Oe.Portal,{...t,children:o}):null},W=({children:e,...o})=>(0,$.jsx)(ke,{...o,children:e});W.displayName="DialogPortal";var Ne=T(require("react"),1),He=require("../utils/part.cjs"),Le=require("../utils/primitive.cjs");var Ie=require("react/jsx-runtime");function _({ref:e,...o}){let t=r("DialogTitle"),{setHasTitle:a}=t;return Ne.useEffect(()=>(a(!0),()=>a(!1)),[a]),(0,Ie.jsx)(Le.Primitive.h2,{id:t.titleId,...o,...(0,He.skdxPart)(t.family,"title",o.className),ref:e})}_.displayName="DialogTitle";var m=require("react/jsx-runtime"),no=()=>(0,m.jsx)(Je.Glyph,{name:"close"}),Me=({size:e,title:o,description:t,footer:a,dismissible:l,role:c,confirmLabel:s,cancelLabel:D,onConfirm:d,onCancel:P,children:f,passThrough:y})=>{let g=c==="alertdialog",u=g?s??"Confirm":s,i=g?D??"Cancel":D;return(0,m.jsxs)(W,{children:[(0,m.jsx)(G,{}),(0,m.jsxs)(B,{...y,size:e,children:[o?(0,m.jsx)(_,{children:o}):null,t?(0,m.jsx)(V,{children:t}):null,f,a,i?(0,m.jsx)(w,{onClick:P,children:i}):null,u?(0,m.jsx)(M,{onClick:d,children:u}):null,l&&!g?(0,m.jsx)(F,{"aria-label":"Close",children:(0,m.jsx)(no,{})}):null]})]})};var N=require("react/jsx-runtime"),[Fe,r]=(0,Xe.createSafeContext)("Dialog");function ee({children:e,family:o,open:t,defaultOpen:a=!1,onOpenChange:l,onOpenChangeComplete:c,modal:s,dismiss:D,role:d="dialog",status:P,placement:f="end"}){let y=R.useRef(null),g=R.useRef(null),[u,i]=R.useState(!1),[C,p]=R.useState(!1),[E=!1,h]=(0,we.useControllableState)({prop:t,defaultProp:a,onChange:l});return(0,Ae.useOpenChangeComplete)(E,g,c),(0,N.jsx)(Fe,{family:o,triggerRef:y,contentRef:g,contentId:R.useId(),titleId:R.useId(),descriptionId:R.useId(),hasTitle:u,setHasTitle:i,hasDescription:C,setHasDescription:p,open:E,onOpenChange:h,modal:s,dismiss:D,role:d,status:P,placement:f,children:e})}ee.displayName="DialogStateProvider";var lo={any:"escape",escape:"escape",outside:"none",none:"none"};function oe({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:c=!0,dismiss:s="any",dismissible:D=!0,role:d="dialog",status:P}){let f=d==="alertdialog",y=f?lo[s]:s;return D||(y="none"),(0,N.jsx)(ee,{family:"dialog",open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:f||c,dismiss:y,role:d,status:P,children:e})}oe.displayName="DialogRoot";function q({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:c,dismiss:s,title:D,description:d,footer:P,dismissible:f=!0,size:y,role:g="dialog",status:u,confirmLabel:i,cancelLabel:C,onConfirm:p,onCancel:E,...h}){let b=(0,j.recipeAxis)(u,h,"data-status");return(0,N.jsx)(oe,{open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:c,dismiss:s,dismissible:f,role:g,status:b,children:(0,N.jsx)(Me,{size:(0,j.recipeAxis)(y,h,"data-size"),title:D,description:d,footer:P,dismissible:f,role:g,confirmLabel:i,cancelLabel:C,onConfirm:p,onCancel:E,passThrough:h,children:e})})}q.displayName="Dialog";var Q=T(require("react"),1),Ke=require("../label/Label.cjs"),ze=require("../text-field/TextField.cjs"),U=require("../utils/dialogs.cjs");var ie=require("../utils/dialogs.cjs"),S=require("react/jsx-runtime");function te(e){return Q.useSyncExternalStore(e.subscribe,e.getCurrent,e.getCurrent)}function ro({entry:e,dialogs:o}){let[t,a]=Q.useState(e.defaultValue??""),l=()=>o.settle(e.id,(0,U.dialogsCancelResult)(e));return(0,S.jsx)(q,{open:!0,role:e.kind==="confirm"?"alertdialog":"dialog",title:e.title,description:e.description,status:e.status,confirmLabel:e.confirmLabel,cancelLabel:e.cancelLabel,"data-kind":e.kind,onConfirm:()=>o.settle(e.id,(0,U.dialogsConfirmResult)(e,t)),onCancel:l,onOpenChange:c=>{c||l()},children:e.kind==="prompt"?(0,S.jsxs)(Ke.Label,{style:{display:"grid",gap:"0.5rem"},children:[e.label??"Value",(0,S.jsx)(ze.TextField,{value:t,onValueChange:a,placeholder:e.placeholder})]}):null})}function ae({dialogs:e}){let o=te(e);return o?(0,S.jsx)(ro,{entry:o,dialogs:e},o.id):null}ae.displayName="Dialogs";var Be=require("../utils/composeRefs.cjs"),Ve=require("../utils/part.cjs"),Y=require("../utils/primitive.cjs");var We=require("react/jsx-runtime");function Ge({ref:e,...o}){let t=r("DialogTrigger"),a=(0,Be.useComposedRefs)(e,t.triggerRef);return(0,We.jsx)(Y.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":t.open,"aria-controls":t.contentId,"data-state":t.open?"open":"closed",...o,...(0,Ve.skdxPart)(t.family,"trigger",o.className),ref:a,onClick:(0,Y.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!0))})}Ge.displayName="DialogTrigger";0&&(module.exports={Dialog,DialogAction,DialogCancel,DialogClose,DialogContent,DialogDescription,DialogOverlay,DialogPortal,DialogProvider,DialogRoot,DialogStateProvider,DialogTitle,DialogTrigger,Dialogs,OverlayPortal,createDialogs,useDialogContext,useDialogs});
2
+ "use strict";var eo=Object.create;var J=Object.defineProperty;var oo=Object.getOwnPropertyDescriptor;var to=Object.getOwnPropertyNames;var ao=Object.getPrototypeOf,io=Object.prototype.hasOwnProperty;var no=(e,o)=>{for(var t in o)J(e,t,{get:o[t],enumerable:!0})},se=(e,o,t,a)=>{if(o&&typeof o=="object"||typeof o=="function")for(let l of to(o))!io.call(e,l)&&l!==t&&J(e,l,{get:()=>o[l],enumerable:!(a=oo(o,l))||a.enumerable});return e};var N=(e,o,t)=>(t=e!=null?eo(ao(e)):{},se(o||!e||!e.__esModule?J(t,"default",{value:e,enumerable:!0}):t,e)),lo=e=>se(J({},"__esModule",{value:!0}),e);var mo={};no(mo,{Dialog:()=>Q,DialogAction:()=>w,DialogCancel:()=>F,DialogClose:()=>z,DialogContent:()=>V,DialogDescription:()=>G,DialogOverlay:()=>W,DialogPortal:()=>_,DialogProvider:()=>ze,DialogRoot:()=>ae,DialogStateProvider:()=>te,DialogTitle:()=>q,DialogTrigger:()=>_e,Dialogs:()=>ne,OverlayPortal:()=>He,createDialogs:()=>le.createDialogs,useDialogContext:()=>r,useDialogs:()=>ie});module.exports=lo(mo);var R=N(require("react"),1),Ae=require("../utils/createContext.cjs"),oe=require("../utils/recipeAxis.cjs"),Fe=require("../utils/useControllableState.cjs"),Ke=require("../utils/useOpenChangeComplete.cjs");var Xe=require("../utils/Glyph.cjs");var pe=require("../utils/appearance.cjs"),me=require("../utils/part.cjs"),X=require("../utils/primitive.cjs");var ce=require("react/jsx-runtime");function w({ref:e,...o}){let t=r("DialogAction"),{disabled:a=!1}=o;return(0,ce.jsx)(X.Primitive.button,{type:"button",...o,...(0,pe.appearanceAttrs)({status:t.status},o),...(0,me.skdxPart)("dialog","action",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:(0,X.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!1))})}w.displayName="DialogAction";var de=require("../utils/part.cjs"),A=require("../utils/primitive.cjs");var fe=require("react/jsx-runtime");function F({ref:e,...o}){let t=r("DialogCancel"),{disabled:a=!1}=o;return(0,fe.jsx)(A.Primitive.button,{type:"button","data-skdx-dialog-cancel":"",...o,...(0,de.skdxPart)("dialog","cancel",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:(0,A.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!1))})}F.displayName="DialogCancel";var ge=require("../utils/part.cjs"),K=require("../utils/primitive.cjs");var ue=require("react/jsx-runtime");function z({ref:e,...o}){let t=r("DialogClose");return(0,ue.jsx)(K.Primitive.button,{type:"button",...o,...(0,ge.skdxPart)(t.family,"close",o.className),ref:e,onClick:(0,K.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!1))})}z.displayName="DialogClose";var O=N(require("react"),1),De=require("../utils/appearance.cjs"),ye=require("../utils/composeRefs.cjs"),v=require("../utils/dismissal.cjs"),B=require("../utils/focus-targets.cjs"),Ce=require("../utils/part.cjs"),H=require("../utils/primitive.cjs"),Re=require("../utils/tabbable.cjs"),Pe=require("../utils/useBodyScrollLock.cjs"),S=require("../utils/useCallbackRef.cjs"),xe=require("../utils/useDismiss.cjs");var ve=require("react/jsx-runtime");function V({ref:e,initialFocus:o,finalFocus:t,onEscapeKeyDown:a,onPointerDownOutside:l,onFocusOutside:c,onInteractOutside:s,onOpenAutoFocus:D,onCloseAutoFocus:d,onCancel:P,onClose:f,onPointerDown:y,size:g,...u}){let n=r("DialogContent"),{open:C,modal:p,onOpenChange:b,contentRef:E}=n,x=E,Qe=(0,ye.useComposedRefs)(e,x),Ue=n.dismiss==="any"||n.dismiss==="escape",$=n.dismiss==="any"||n.dismiss==="outside";(0,Pe.useBodyScrollLock)(C&&p);let M=O.useRef(!1),T=O.useRef(null),I=(0,S.useCallbackRef)(()=>{M.current=!(0,v.autoFocusEvent)("close-auto-focus",d),x.current?.close?.()}),re=(0,S.useCallbackRef)(()=>{let i=x.current;i&&(C&&!i.open?(T.current=document.activeElement,p?(0,v.focusOnOpen)(()=>i.showModal?.()):(0,v.focusOnOpen)(()=>i.show?.()),(0,B.applyOpenAutoFocus)(i,o,"Dialog",D,T.current)):!C&&i.open&&I())});O.useEffect(()=>{re()},[C,p,re]),(0,xe.useDismiss)({enabled:C,onInteractOutside:s,onPointerDownOutside:i=>{l?.(i),!i.defaultPrevented&&p&&$&&I()},onFocusOutside:i=>{c?.(i),!i.defaultPrevented&&p&&$&&I()}},[x,n.triggerRef]);let Ye=(0,S.useCallbackRef)(i=>{let h=i.nativeEvent;if(a?.(h),!Ue){i.preventDefault();return}h.defaultPrevented||(M.current=!(0,v.autoFocusEvent)("close-auto-focus",d))}),j=(0,S.useCallbackRef)(()=>{let i=T.current;T.current=null,(0,B.returnFocus)(t,"Dialog",i)});O.useEffect(()=>()=>{T.current&&!x.current?.isConnected&&j()},[x,j]);let Ze=(0,S.useCallbackRef)(()=>{M.current?(M.current=!1,T.current=null,document.activeElement?.blur?.()):j(),b(!1)});function $e(i){p&&(0,Re.wrapTabWithin)(i.currentTarget,i.nativeEvent)}function je(i){let h=(0,v.backdropPointerDown)(i.nativeEvent,i.currentTarget);h&&(s?.(h),l?.(h),!h.defaultPrevented&&p&&$&&I())}return(0,ve.jsx)("dialog",{role:n.role,"aria-modal":p||void 0,"aria-labelledby":n.hasTitle?n.titleId:void 0,"aria-describedby":n.hasDescription?n.descriptionId:void 0,id:n.contentId,"data-state":C?"open":"closed","data-dismiss":n.dismiss,...u,...(0,De.appearanceAttrs)({size:g,status:n.status},u),...(0,Ce.skdxPart)("dialog","content",u.className),ref:Qe,onCancel:(0,H.composeEventHandlers)(P,Ye),onClose:(0,H.composeEventHandlers)(f,Ze),onPointerDown:(0,H.composeEventHandlers)(y,je),onKeyDown:(0,H.composeEventHandlers)(u.onKeyDown,$e)})}V.displayName="DialogContent";var Ee=N(require("react"),1),he=require("../utils/part.cjs"),be=require("../utils/primitive.cjs");var Te=require("react/jsx-runtime");function G({ref:e,...o}){let t=r("DialogDescription"),{setHasDescription:a}=t;return Ee.useEffect(()=>(a(!0),()=>a(!1)),[a]),(0,Te.jsx)(be.Primitive.p,{id:t.descriptionId,...o,...(0,he.skdxPart)(t.family,"description",o.className),ref:e})}G.displayName="DialogDescription";var Se=require("../utils/part.cjs"),Oe=require("../utils/primitive.cjs");var ke=require("react/jsx-runtime");function W({ref:e,forceMount:o,...t}){let a=r("DialogOverlay");return o||a.open?(0,ke.jsx)(Oe.Primitive.div,{"data-state":a.open?"open":"closed",...t,...(0,Se.skdxPart)(a.family,"overlay",t.className),ref:e,style:{pointerEvents:a.modal&&a.open?"auto":"none",...t.style}}):null}W.displayName="DialogOverlay";var Ne=require("../utils/portal.cjs");var ee=require("react/jsx-runtime"),He=({forceMount:e,children:o,...t})=>{let a=r("Portal");return a.family==="dialog"||e||a.open?(0,ee.jsx)(Ne.Portal,{...t,children:o}):null},_=({children:e,...o})=>(0,ee.jsx)(He,{...o,children:e});_.displayName="DialogPortal";var Le=N(require("react"),1),Me=require("../utils/part.cjs"),Ie=require("../utils/primitive.cjs");var Je=require("react/jsx-runtime");function q({ref:e,...o}){let t=r("DialogTitle"),{setHasTitle:a}=t;return Le.useEffect(()=>(a(!0),()=>a(!1)),[a]),(0,Je.jsx)(Ie.Primitive.h2,{id:t.titleId,...o,...(0,Me.skdxPart)(t.family,"title",o.className),ref:e})}q.displayName="DialogTitle";var m=require("react/jsx-runtime"),ro=()=>(0,m.jsx)(Xe.Glyph,{name:"close"}),we=({size:e,title:o,description:t,footer:a,dismissible:l,role:c,confirmLabel:s,cancelLabel:D,onConfirm:d,onCancel:P,children:f,passThrough:y})=>{let g=c==="alertdialog",u=g?s??"Confirm":s,n=g?D??"Cancel":D;return(0,m.jsxs)(_,{children:[(0,m.jsx)(W,{}),(0,m.jsxs)(V,{...y,size:e,children:[o?(0,m.jsx)(q,{children:o}):null,t?(0,m.jsx)(G,{children:t}):null,f,a,n?(0,m.jsx)(F,{onClick:P,children:n}):null,u?(0,m.jsx)(w,{onClick:d,children:u}):null,l&&!g?(0,m.jsx)(z,{"aria-label":"Close",children:(0,m.jsx)(ro,{})}):null]})]})};var L=require("react/jsx-runtime"),[ze,r]=(0,Ae.createSafeContext)("Dialog");function te({children:e,family:o,open:t,defaultOpen:a=!1,onOpenChange:l,onOpenChangeComplete:c,modal:s,dismiss:D,role:d="dialog",status:P,placement:f="end"}){let y=R.useRef(null),g=R.useRef(null),[u,n]=R.useState(!1),[C,p]=R.useState(!1),[b=!1,E]=(0,Fe.useControllableState)({prop:t,defaultProp:a,onChange:l});return(0,Ke.useOpenChangeComplete)(b,g,c),(0,L.jsx)(ze,{family:o,triggerRef:y,contentRef:g,contentId:R.useId(),titleId:R.useId(),descriptionId:R.useId(),hasTitle:u,setHasTitle:n,hasDescription:C,setHasDescription:p,open:b,onOpenChange:E,modal:s,dismiss:D,role:d,status:P,placement:f,children:e})}te.displayName="DialogStateProvider";var so={any:"escape",escape:"escape",outside:"none",none:"none"};function ae({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:c=!0,dismiss:s="any",dismissible:D=!0,role:d="dialog",status:P}){let f=d==="alertdialog",y=f?so[s]:s;return D||(y="none"),(0,L.jsx)(te,{family:"dialog",open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:f||c,dismiss:y,role:d,status:P,children:e})}ae.displayName="DialogRoot";function Q({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:c,dismiss:s,title:D,description:d,footer:P,dismissible:f=!0,size:y,role:g="dialog",status:u,confirmLabel:n,cancelLabel:C,onConfirm:p,onCancel:b,...E}){let x=(0,oe.recipeAxis)(u,E,"data-status");return(0,L.jsx)(ae,{open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:l,modal:c,dismiss:s,dismissible:f,role:g,status:x,children:(0,L.jsx)(we,{size:(0,oe.recipeAxis)(y,E,"data-size"),title:D,description:d,footer:P,dismissible:f,role:g,confirmLabel:n,cancelLabel:C,onConfirm:p,onCancel:b,passThrough:E,children:e})})}Q.displayName="Dialog";var U=N(require("react"),1),Be=require("../label/Label.cjs"),Ve=require("../text-field/TextField.cjs"),Y=require("../utils/dialogs.cjs");var le=require("../utils/dialogs.cjs"),k=require("react/jsx-runtime");function ie(e){return U.useSyncExternalStore(e.subscribe,e.getCurrent,e.getCurrent)}function po({entry:e,dialogs:o}){let[t,a]=U.useState(e.defaultValue??""),l=()=>o.settle(e.id,(0,Y.dialogsCancelResult)(e));return(0,k.jsx)(Q,{open:!0,role:e.kind==="confirm"?"alertdialog":"dialog",title:e.title,description:e.description,status:e.status,confirmLabel:e.confirmLabel,cancelLabel:e.cancelLabel,"data-kind":e.kind,onConfirm:()=>o.settle(e.id,(0,Y.dialogsConfirmResult)(e,t)),onCancel:l,onOpenChange:c=>{c||l()},children:e.kind==="prompt"?(0,k.jsxs)(Be.Label,{style:{display:"grid",gap:"0.5rem"},children:[e.label??"Value",(0,k.jsx)(Ve.TextField,{value:t,onValueChange:a,placeholder:e.placeholder})]}):null})}function ne({dialogs:e}){let o=ie(e);return o?(0,k.jsx)(po,{entry:o,dialogs:e},o.id):null}ne.displayName="Dialogs";var Ge=require("../utils/composeRefs.cjs"),We=require("../utils/part.cjs"),Z=require("../utils/primitive.cjs");var qe=require("react/jsx-runtime");function _e({ref:e,...o}){let t=r("DialogTrigger"),a=(0,Ge.useComposedRefs)(e,t.triggerRef);return(0,qe.jsx)(Z.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":t.open,"aria-controls":t.contentId,"data-state":t.open?"open":"closed",...o,...(0,We.skdxPart)(t.family,"trigger",o.className),ref:a,onClick:(0,Z.composeEventHandlers)(o.onClick,()=>t.onOpenChange(!0))})}_e.displayName="DialogTrigger";0&&(module.exports={Dialog,DialogAction,DialogCancel,DialogClose,DialogContent,DialogDescription,DialogOverlay,DialogPortal,DialogProvider,DialogRoot,DialogStateProvider,DialogTitle,DialogTrigger,Dialogs,OverlayPortal,createDialogs,useDialogContext,useDialogs});
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import*as C from"react";import{createSafeContext as Ge}from"../utils/createContext.js";import{recipeAxis as Z}from"../utils/recipeAxis.js";import{useControllableState as We}from"../utils/useControllableState.js";import{useOpenChangeComplete as _e}from"../utils/useOpenChangeComplete.js";import{Glyph as Be}from"../utils/Glyph.js";import{appearanceAttrs as se}from"../utils/appearance.js";import{skdxPart as pe}from"../utils/part.js";import{composeEventHandlers as me,Primitive as ce}from"../utils/primitive.js";import{jsx as de}from"react/jsx-runtime";function I({ref:e,...o}){let t=l("DialogAction"),{disabled:a=!1}=o;return de(ce.button,{type:"button",...o,...se({status:t.status},o),...pe("dialog","action",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:me(o.onClick,()=>t.onOpenChange(!1))})}I.displayName="DialogAction";import{skdxPart as fe}from"../utils/part.js";import{composeEventHandlers as ge,Primitive as ue}from"../utils/primitive.js";import{jsx as De}from"react/jsx-runtime";function J({ref:e,...o}){let t=l("DialogCancel"),{disabled:a=!1}=o;return De(ue.button,{type:"button","data-skdx-dialog-cancel":"",...o,...fe("dialog","cancel",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:ge(o.onClick,()=>t.onOpenChange(!1))})}J.displayName="DialogCancel";import{skdxPart as ye}from"../utils/part.js";import{composeEventHandlers as Ce,Primitive as Re}from"../utils/primitive.js";import{jsx as Pe}from"react/jsx-runtime";function M({ref:e,...o}){let t=l("DialogClose");return Pe(Re.button,{type:"button",...o,...ye(t.family,"close",o.className),ref:e,onClick:Ce(o.onClick,()=>t.onOpenChange(!1))})}M.displayName="DialogClose";import*as k from"react";import{appearanceAttrs as xe}from"../utils/appearance.js";import{useComposedRefs as ve}from"../utils/composeRefs.js";import{autoFocusEvent as G,backdropPointerDown as he,focusOnOpen as W}from"../utils/dismissal.js";import{applyFinalFocus as Ee,applyOpenAutoFocus as be}from"../utils/focus-targets.js";import{skdxPart as Se}from"../utils/part.js";import{composeEventHandlers as T}from"../utils/primitive.js";import{wrapTabWithin as Te}from"../utils/tabbable.js";import{useBodyScrollLock as Oe}from"../utils/useBodyScrollLock.js";import{useCallbackRef as O}from"../utils/useCallbackRef.js";import{useDismiss as ke}from"../utils/useDismiss.js";import{jsx as Ne}from"react/jsx-runtime";function X({ref:e,initialFocus:o,finalFocus:t,onEscapeKeyDown:a,onPointerDownOutside:r,onFocusOutside:m,onInteractOutside:s,onOpenAutoFocus:u,onCloseAutoFocus:c,onCancel:R,onClose:d,onPointerDown:D,size:f,...g}){let i=l("DialogContent"),{open:y,modal:p,onOpenChange:h,contentRef:v}=i,E=v,te=ve(e,E),ae=i.dismiss==="any"||i.dismiss==="escape",L=i.dismiss==="any"||i.dismiss==="outside";Oe(y&&p);let b=k.useRef(!1),S=O(()=>{b.current=!G("close-auto-focus",c),E.current?.close?.()}),V=O(()=>{let n=E.current;if(n)if(y&&!n.open){let P=document.activeElement;p?W(()=>n.showModal?.()):W(()=>n.show?.()),be(n,o,"Dialog",u,P)}else!y&&n.open&&S()});k.useEffect(()=>{V()},[y,p,V]),ke({enabled:y,onInteractOutside:s,onPointerDownOutside:n=>{r?.(n),!n.defaultPrevented&&p&&L&&S()},onFocusOutside:n=>{m?.(n),!n.defaultPrevented&&p&&L&&S()}},[E,i.triggerRef]);let ie=O(n=>{let P=n.nativeEvent;if(a?.(P),!ae){n.preventDefault();return}P.defaultPrevented||(b.current=!G("close-auto-focus",c))}),ne=O(()=>{b.current?(b.current=!1,document.activeElement?.blur?.()):Ee(t,"Dialog"),h(!1)});function le(n){p&&Te(n.currentTarget,n.nativeEvent)}function re(n){let P=he(n.nativeEvent,n.currentTarget);P&&(s?.(P),r?.(P),!P.defaultPrevented&&p&&L&&S())}return Ne("dialog",{role:i.role,"aria-modal":p||void 0,"aria-labelledby":i.hasTitle?i.titleId:void 0,"aria-describedby":i.hasDescription?i.descriptionId:void 0,id:i.contentId,"data-state":y?"open":"closed","data-dismiss":i.dismiss,...g,...xe({size:f,status:i.status},g),...Se("dialog","content",g.className),ref:te,onCancel:T(R,ie),onClose:T(d,ne),onPointerDown:T(D,re),onKeyDown:T(g.onKeyDown,le)})}X.displayName="DialogContent";import*as _ from"react";import{skdxPart as He}from"../utils/part.js";import{Primitive as Le}from"../utils/primitive.js";import{jsx as Ie}from"react/jsx-runtime";function w({ref:e,...o}){let t=l("DialogDescription"),{setHasDescription:a}=t;return _.useEffect(()=>(a(!0),()=>a(!1)),[a]),Ie(Le.p,{id:t.descriptionId,...o,...He(t.family,"description",o.className),ref:e})}w.displayName="DialogDescription";import{skdxPart as Je}from"../utils/part.js";import{Primitive as Me}from"../utils/primitive.js";import{jsx as Xe}from"react/jsx-runtime";function A({ref:e,forceMount:o,...t}){let a=l("DialogOverlay");return o||a.open?Xe(Me.div,{"data-state":a.open?"open":"closed",...t,...Je(a.family,"overlay",t.className),ref:e,style:{pointerEvents:a.modal&&a.open?"auto":"none",...t.style}}):null}A.displayName="DialogOverlay";import{Portal as we}from"../utils/portal.js";import{jsx as q}from"react/jsx-runtime";var Ae=({forceMount:e,children:o,...t})=>{let a=l("Portal");return a.family==="dialog"||e||a.open?q(we,{...t,children:o}):null},F=({children:e,...o})=>q(Ae,{...o,children:e});F.displayName="DialogPortal";import*as Q from"react";import{skdxPart as Fe}from"../utils/part.js";import{Primitive as Ke}from"../utils/primitive.js";import{jsx as ze}from"react/jsx-runtime";function K({ref:e,...o}){let t=l("DialogTitle"),{setHasTitle:a}=t;return Q.useEffect(()=>(a(!0),()=>a(!1)),[a]),ze(Ke.h2,{id:t.titleId,...o,...Fe(t.family,"title",o.className),ref:e})}K.displayName="DialogTitle";import{jsx as x,jsxs as U}from"react/jsx-runtime";var Ve=()=>x(Be,{name:"close"}),Y=({size:e,title:o,description:t,footer:a,dismissible:r,role:m,confirmLabel:s,cancelLabel:u,onConfirm:c,onCancel:R,children:d,passThrough:D})=>{let f=m==="alertdialog",g=f?s??"Confirm":s,i=f?u??"Cancel":u;return U(F,{children:[x(A,{}),U(X,{...D,size:e,children:[o?x(K,{children:o}):null,t?x(w,{children:t}):null,d,a,i?x(J,{onClick:R,children:i}):null,g?x(I,{onClick:c,children:g}):null,r&&!f?x(M,{"aria-label":"Close",children:x(Ve,{})}):null]})]})};import{jsx as N}from"react/jsx-runtime";var[qe,l]=Ge("Dialog");function $({children:e,family:o,open:t,defaultOpen:a=!1,onOpenChange:r,onOpenChangeComplete:m,modal:s,dismiss:u,role:c="dialog",status:R,placement:d="end"}){let D=C.useRef(null),f=C.useRef(null),[g,i]=C.useState(!1),[y,p]=C.useState(!1),[h=!1,v]=We({prop:t,defaultProp:a,onChange:r});return _e(h,f,m),N(qe,{family:o,triggerRef:D,contentRef:f,contentId:C.useId(),titleId:C.useId(),descriptionId:C.useId(),hasTitle:g,setHasTitle:i,hasDescription:y,setHasDescription:p,open:h,onOpenChange:v,modal:s,dismiss:u,role:c,status:R,placement:d,children:e})}$.displayName="DialogStateProvider";var Qe={any:"escape",escape:"escape",outside:"none",none:"none"};function j({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:m=!0,dismiss:s="any",dismissible:u=!0,role:c="dialog",status:R}){let d=c==="alertdialog",D=d?Qe[s]:s;return u||(D="none"),N($,{family:"dialog",open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:d||m,dismiss:D,role:c,status:R,children:e})}j.displayName="DialogRoot";function z({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:m,dismiss:s,title:u,description:c,footer:R,dismissible:d=!0,size:D,role:f="dialog",status:g,confirmLabel:i,cancelLabel:y,onConfirm:p,onCancel:h,...v}){let E=Z(g,v,"data-status");return N(j,{open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:m,dismiss:s,dismissible:d,role:f,status:E,children:N(Y,{size:Z(D,v,"data-size"),title:u,description:c,footer:R,dismissible:d,role:f,confirmLabel:i,cancelLabel:y,onConfirm:p,onCancel:h,passThrough:v,children:e})})}z.displayName="Dialog";import*as H from"react";import{Label as Ue}from"../label/Label.js";import{TextField as Ye}from"../text-field/TextField.js";import{dialogsCancelResult as Ze,dialogsConfirmResult as $e}from"../utils/dialogs.js";import{createDialogs as eo}from"../utils/dialogs.js";import{jsx as B,jsxs as oo}from"react/jsx-runtime";function ee(e){return H.useSyncExternalStore(e.subscribe,e.getCurrent,e.getCurrent)}function je({entry:e,dialogs:o}){let[t,a]=H.useState(e.defaultValue??""),r=()=>o.settle(e.id,Ze(e));return B(z,{open:!0,role:e.kind==="confirm"?"alertdialog":"dialog",title:e.title,description:e.description,status:e.status,confirmLabel:e.confirmLabel,cancelLabel:e.cancelLabel,"data-kind":e.kind,onConfirm:()=>o.settle(e.id,$e(e,t)),onCancel:r,onOpenChange:m=>{m||r()},children:e.kind==="prompt"?oo(Ue,{style:{display:"grid",gap:"0.5rem"},children:[e.label??"Value",B(Ye,{value:t,onValueChange:a,placeholder:e.placeholder})]}):null})}function oe({dialogs:e}){let o=ee(e);return o?B(je,{entry:o,dialogs:e},o.id):null}oe.displayName="Dialogs";import{useComposedRefs as to}from"../utils/composeRefs.js";import{skdxPart as ao}from"../utils/part.js";import{composeEventHandlers as io,Primitive as no}from"../utils/primitive.js";import{jsx as ro}from"react/jsx-runtime";function lo({ref:e,...o}){let t=l("DialogTrigger"),a=to(e,t.triggerRef);return ro(no.button,{type:"button","aria-haspopup":"dialog","aria-expanded":t.open,"aria-controls":t.contentId,"data-state":t.open?"open":"closed",...o,...ao(t.family,"trigger",o.className),ref:a,onClick:io(o.onClick,()=>t.onOpenChange(!0))})}lo.displayName="DialogTrigger";export{z as Dialog,I as DialogAction,J as DialogCancel,M as DialogClose,X as DialogContent,w as DialogDescription,A as DialogOverlay,F as DialogPortal,qe as DialogProvider,j as DialogRoot,$ as DialogStateProvider,K as DialogTitle,lo as DialogTrigger,oe as Dialogs,Ae as OverlayPortal,eo as createDialogs,l as useDialogContext,ee as useDialogs};
2
+ import*as C from"react";import{createSafeContext as _e}from"../utils/createContext.js";import{recipeAxis as j}from"../utils/recipeAxis.js";import{useControllableState as qe}from"../utils/useControllableState.js";import{useOpenChangeComplete as Qe}from"../utils/useOpenChangeComplete.js";import{Glyph as Ge}from"../utils/Glyph.js";import{appearanceAttrs as me}from"../utils/appearance.js";import{skdxPart as ce}from"../utils/part.js";import{composeEventHandlers as de,Primitive as fe}from"../utils/primitive.js";import{jsx as ge}from"react/jsx-runtime";function J({ref:e,...o}){let t=l("DialogAction"),{disabled:a=!1}=o;return ge(fe.button,{type:"button",...o,...me({status:t.status},o),...ce("dialog","action",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:de(o.onClick,()=>t.onOpenChange(!1))})}J.displayName="DialogAction";import{skdxPart as ue}from"../utils/part.js";import{composeEventHandlers as De,Primitive as ye}from"../utils/primitive.js";import{jsx as Ce}from"react/jsx-runtime";function X({ref:e,...o}){let t=l("DialogCancel"),{disabled:a=!1}=o;return Ce(ye.button,{type:"button","data-skdx-dialog-cancel":"",...o,...ue("dialog","cancel",o.className),ref:e,disabled:a,"data-disabled":a?"":void 0,onClick:De(o.onClick,()=>t.onOpenChange(!1))})}X.displayName="DialogCancel";import{skdxPart as Re}from"../utils/part.js";import{composeEventHandlers as Pe,Primitive as xe}from"../utils/primitive.js";import{jsx as ve}from"react/jsx-runtime";function w({ref:e,...o}){let t=l("DialogClose");return ve(xe.button,{type:"button",...o,...Re(t.family,"close",o.className),ref:e,onClick:Pe(o.onClick,()=>t.onOpenChange(!1))})}w.displayName="DialogClose";import*as T from"react";import{appearanceAttrs as Ee}from"../utils/appearance.js";import{useComposedRefs as he}from"../utils/composeRefs.js";import{autoFocusEvent as _,backdropPointerDown as be,focusOnOpen as q}from"../utils/dismissal.js";import{applyOpenAutoFocus as Te,returnFocus as Se}from"../utils/focus-targets.js";import{skdxPart as Oe}from"../utils/part.js";import{composeEventHandlers as N}from"../utils/primitive.js";import{wrapTabWithin as ke}from"../utils/tabbable.js";import{useBodyScrollLock as Ne}from"../utils/useBodyScrollLock.js";import{useCallbackRef as S}from"../utils/useCallbackRef.js";import{useDismiss as He}from"../utils/useDismiss.js";import{jsx as Le}from"react/jsx-runtime";function A({ref:e,initialFocus:o,finalFocus:t,onEscapeKeyDown:a,onPointerDownOutside:r,onFocusOutside:m,onInteractOutside:s,onOpenAutoFocus:u,onCloseAutoFocus:c,onCancel:R,onClose:d,onPointerDown:D,size:f,...g}){let n=l("DialogContent"),{open:y,modal:p,onOpenChange:h,contentRef:v}=n,P=v,ie=he(e,P),ne=n.dismiss==="any"||n.dismiss==="escape",M=n.dismiss==="any"||n.dismiss==="outside";Ne(y&&p);let O=T.useRef(!1),b=T.useRef(null),k=S(()=>{O.current=!_("close-auto-focus",c),P.current?.close?.()}),W=S(()=>{let i=P.current;i&&(y&&!i.open?(b.current=document.activeElement,p?q(()=>i.showModal?.()):q(()=>i.show?.()),Te(i,o,"Dialog",u,b.current)):!y&&i.open&&k())});T.useEffect(()=>{W()},[y,p,W]),He({enabled:y,onInteractOutside:s,onPointerDownOutside:i=>{r?.(i),!i.defaultPrevented&&p&&M&&k()},onFocusOutside:i=>{m?.(i),!i.defaultPrevented&&p&&M&&k()}},[P,n.triggerRef]);let le=S(i=>{let E=i.nativeEvent;if(a?.(E),!ne){i.preventDefault();return}E.defaultPrevented||(O.current=!_("close-auto-focus",c))}),I=S(()=>{let i=b.current;b.current=null,Se(t,"Dialog",i)});T.useEffect(()=>()=>{b.current&&!P.current?.isConnected&&I()},[P,I]);let re=S(()=>{O.current?(O.current=!1,b.current=null,document.activeElement?.blur?.()):I(),h(!1)});function se(i){p&&ke(i.currentTarget,i.nativeEvent)}function pe(i){let E=be(i.nativeEvent,i.currentTarget);E&&(s?.(E),r?.(E),!E.defaultPrevented&&p&&M&&k())}return Le("dialog",{role:n.role,"aria-modal":p||void 0,"aria-labelledby":n.hasTitle?n.titleId:void 0,"aria-describedby":n.hasDescription?n.descriptionId:void 0,id:n.contentId,"data-state":y?"open":"closed","data-dismiss":n.dismiss,...g,...Ee({size:f,status:n.status},g),...Oe("dialog","content",g.className),ref:ie,onCancel:N(R,le),onClose:N(d,re),onPointerDown:N(D,pe),onKeyDown:N(g.onKeyDown,se)})}A.displayName="DialogContent";import*as Q from"react";import{skdxPart as Me}from"../utils/part.js";import{Primitive as Ie}from"../utils/primitive.js";import{jsx as Je}from"react/jsx-runtime";function F({ref:e,...o}){let t=l("DialogDescription"),{setHasDescription:a}=t;return Q.useEffect(()=>(a(!0),()=>a(!1)),[a]),Je(Ie.p,{id:t.descriptionId,...o,...Me(t.family,"description",o.className),ref:e})}F.displayName="DialogDescription";import{skdxPart as Xe}from"../utils/part.js";import{Primitive as we}from"../utils/primitive.js";import{jsx as Ae}from"react/jsx-runtime";function K({ref:e,forceMount:o,...t}){let a=l("DialogOverlay");return o||a.open?Ae(we.div,{"data-state":a.open?"open":"closed",...t,...Xe(a.family,"overlay",t.className),ref:e,style:{pointerEvents:a.modal&&a.open?"auto":"none",...t.style}}):null}K.displayName="DialogOverlay";import{Portal as Fe}from"../utils/portal.js";import{jsx as U}from"react/jsx-runtime";var Ke=({forceMount:e,children:o,...t})=>{let a=l("Portal");return a.family==="dialog"||e||a.open?U(Fe,{...t,children:o}):null},z=({children:e,...o})=>U(Ke,{...o,children:e});z.displayName="DialogPortal";import*as Y from"react";import{skdxPart as ze}from"../utils/part.js";import{Primitive as Be}from"../utils/primitive.js";import{jsx as Ve}from"react/jsx-runtime";function B({ref:e,...o}){let t=l("DialogTitle"),{setHasTitle:a}=t;return Y.useEffect(()=>(a(!0),()=>a(!1)),[a]),Ve(Be.h2,{id:t.titleId,...o,...ze(t.family,"title",o.className),ref:e})}B.displayName="DialogTitle";import{jsx as x,jsxs as Z}from"react/jsx-runtime";var We=()=>x(Ge,{name:"close"}),$=({size:e,title:o,description:t,footer:a,dismissible:r,role:m,confirmLabel:s,cancelLabel:u,onConfirm:c,onCancel:R,children:d,passThrough:D})=>{let f=m==="alertdialog",g=f?s??"Confirm":s,n=f?u??"Cancel":u;return Z(z,{children:[x(K,{}),Z(A,{...D,size:e,children:[o?x(B,{children:o}):null,t?x(F,{children:t}):null,d,a,n?x(X,{onClick:R,children:n}):null,g?x(J,{onClick:c,children:g}):null,r&&!f?x(w,{"aria-label":"Close",children:x(We,{})}):null]})]})};import{jsx as H}from"react/jsx-runtime";var[Ue,l]=_e("Dialog");function ee({children:e,family:o,open:t,defaultOpen:a=!1,onOpenChange:r,onOpenChangeComplete:m,modal:s,dismiss:u,role:c="dialog",status:R,placement:d="end"}){let D=C.useRef(null),f=C.useRef(null),[g,n]=C.useState(!1),[y,p]=C.useState(!1),[h=!1,v]=qe({prop:t,defaultProp:a,onChange:r});return Qe(h,f,m),H(Ue,{family:o,triggerRef:D,contentRef:f,contentId:C.useId(),titleId:C.useId(),descriptionId:C.useId(),hasTitle:g,setHasTitle:n,hasDescription:y,setHasDescription:p,open:h,onOpenChange:v,modal:s,dismiss:u,role:c,status:R,placement:d,children:e})}ee.displayName="DialogStateProvider";var Ye={any:"escape",escape:"escape",outside:"none",none:"none"};function oe({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:m=!0,dismiss:s="any",dismissible:u=!0,role:c="dialog",status:R}){let d=c==="alertdialog",D=d?Ye[s]:s;return u||(D="none"),H(ee,{family:"dialog",open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:d||m,dismiss:D,role:c,status:R,children:e})}oe.displayName="DialogRoot";function V({children:e,open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:m,dismiss:s,title:u,description:c,footer:R,dismissible:d=!0,size:D,role:f="dialog",status:g,confirmLabel:n,cancelLabel:y,onConfirm:p,onCancel:h,...v}){let P=j(g,v,"data-status");return H(oe,{open:o,defaultOpen:t,onOpenChange:a,onOpenChangeComplete:r,modal:m,dismiss:s,dismissible:d,role:f,status:P,children:H($,{size:j(D,v,"data-size"),title:u,description:c,footer:R,dismissible:d,role:f,confirmLabel:n,cancelLabel:y,onConfirm:p,onCancel:h,passThrough:v,children:e})})}V.displayName="Dialog";import*as L from"react";import{Label as Ze}from"../label/Label.js";import{TextField as $e}from"../text-field/TextField.js";import{dialogsCancelResult as je,dialogsConfirmResult as eo}from"../utils/dialogs.js";import{createDialogs as to}from"../utils/dialogs.js";import{jsx as G,jsxs as ao}from"react/jsx-runtime";function te(e){return L.useSyncExternalStore(e.subscribe,e.getCurrent,e.getCurrent)}function oo({entry:e,dialogs:o}){let[t,a]=L.useState(e.defaultValue??""),r=()=>o.settle(e.id,je(e));return G(V,{open:!0,role:e.kind==="confirm"?"alertdialog":"dialog",title:e.title,description:e.description,status:e.status,confirmLabel:e.confirmLabel,cancelLabel:e.cancelLabel,"data-kind":e.kind,onConfirm:()=>o.settle(e.id,eo(e,t)),onCancel:r,onOpenChange:m=>{m||r()},children:e.kind==="prompt"?ao(Ze,{style:{display:"grid",gap:"0.5rem"},children:[e.label??"Value",G($e,{value:t,onValueChange:a,placeholder:e.placeholder})]}):null})}function ae({dialogs:e}){let o=te(e);return o?G(oo,{entry:o,dialogs:e},o.id):null}ae.displayName="Dialogs";import{useComposedRefs as io}from"../utils/composeRefs.js";import{skdxPart as no}from"../utils/part.js";import{composeEventHandlers as lo,Primitive as ro}from"../utils/primitive.js";import{jsx as po}from"react/jsx-runtime";function so({ref:e,...o}){let t=l("DialogTrigger"),a=io(e,t.triggerRef);return po(ro.button,{type:"button","aria-haspopup":"dialog","aria-expanded":t.open,"aria-controls":t.contentId,"data-state":t.open?"open":"closed",...o,...no(t.family,"trigger",o.className),ref:a,onClick:lo(o.onClick,()=>t.onOpenChange(!0))})}so.displayName="DialogTrigger";export{V as Dialog,J as DialogAction,X as DialogCancel,w as DialogClose,A as DialogContent,F as DialogDescription,K as DialogOverlay,z as DialogPortal,Ue as DialogProvider,oe as DialogRoot,ee as DialogStateProvider,B as DialogTitle,so as DialogTrigger,ae as Dialogs,Ke as OverlayPortal,to as createDialogs,l as useDialogContext,te as useDialogs};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";var ft=Object.create;var J=Object.defineProperty;var pt=Object.getOwnPropertyDescriptor;var Pt=Object.getOwnPropertyNames;var ht=Object.getPrototypeOf,yt=Object.prototype.hasOwnProperty;var Rt=(e,o)=>{for(var n in o)J(e,n,{get:o[n],enumerable:!0})},xe=(e,o,n,t)=>{if(o&&typeof o=="object"||typeof o=="function")for(let a of Pt(o))!yt.call(e,a)&&a!==n&&J(e,a,{get:()=>o[a],enumerable:!(t=pt(o,a))||t.enumerable});return e};var X=(e,o,n)=>(n=e!=null?ft(ht(e)):{},xe(o||!e||!e.__esModule?J(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>xe(J({},"__esModule",{value:!0}),e);var Nt={};Rt(Nt,{FloatingPanel:()=>Re,FloatingPanelCloseTrigger:()=>W,FloatingPanelContent:()=>Z,FloatingPanelHeader:()=>Q,FloatingPanelPortal:()=>j,FloatingPanelProvider:()=>Je,FloatingPanelResizeTrigger:()=>te,FloatingPanelRoot:()=>ye,FloatingPanelStageTrigger:()=>oe,FloatingPanelTitle:()=>ae,FloatingPanelTrigger:()=>Ze,gestureAnnouncement:()=>he,useFloatingPanelContext:()=>p});module.exports=Ft(Nt);var m=X(require("react"),1),L=require("../utils/clamp.cjs"),_e=require("../utils/createContext.cjs"),Ge=require("../utils/liveAnnouncer.cjs"),re=require("../utils/useCallbackRef.cjs"),_=require("../utils/useControllableState.cjs"),Ye=require("../utils/useOpenChangeComplete.cjs");var $e=require("../utils/Glyph.cjs");var be=require("../utils/part.cjs"),V=require("../utils/primitive.cjs");var we=require("react/jsx-runtime"),W=({ref:e,...o})=>{let n=p("FloatingPanelCloseTrigger");return(0,we.jsx)(V.Primitive.button,{type:"button",...o,...(0,be.skdxPart)("floating-panel","close-trigger",o.className),ref:e,onClick:(0,V.composeEventHandlers)(o.onClick,()=>n.onOpenChange(!1))})};W.displayName="FloatingPanelCloseTrigger";var me=X(require("react"),1),Te=require("../utils/composeRefs.cjs"),Ce=require("../utils/part.cjs"),ze=require("../utils/presence.cjs"),Ee=require("../utils/primitive.cjs"),ve=require("../utils/useDismiss.cjs");var De=require("react/jsx-runtime"),Z=({forceMount:e,onEscapeKeyDown:o,onPointerDownOutside:n,onFocusOutside:t,onInteractOutside:a,style:g,ref:s,...c})=>{let r=p("FloatingPanelContent"),v=(0,Te.useComposedRefs)(s,r.contentRef),{setContentPresent:h}=r,F=(0,ze.usePresence)(r.open,r.contentRef);if(me.useEffect(()=>{h(F)},[F,h]),me.useEffect(()=>()=>h(!1),[h]),(0,ve.useDismiss)({enabled:r.open,onEscapeKeyDown:l=>{o?.(l),l.defaultPrevented||r.onOpenChange(!1)},onInteractOutside:a,onPointerDownOutside:l=>{n?.(l),l.defaultPrevented||r.onOpenChange(!1)},onFocusOutside:t},[r.contentRef,r.triggerRef]),!e&&!F)return null;let{position:x,size:i,stage:d,origin:y,bounded:R,bounds:C}=r,z=d==="maximized"?{x:`${y.x}px`,y:`${y.y}px`,width:R&&C?`${C.width}px`:"100%",height:R&&C?`${C.height}px`:"100%"}:{x:`${y.x+x.x}px`,y:`${y.y+x.y}px`,width:`${i.width}px`,height:d==="minimized"?"auto":`${i.height}px`};return(0,De.jsx)(Ee.Primitive.div,{role:"dialog","aria-modal":!1,"aria-labelledby":r.hasTitle?r.titleId:void 0,id:r.contentId,"data-state":r.open?"open":"closed","data-stage":d,"data-dragging":r.dragging?"":void 0,"data-resizing":r.resizing?"":void 0,"data-disabled":r.disabled?"":void 0,...c,...(0,Ce.skdxPart)("floating-panel","content",c.className),ref:v,style:{"--skdx-floating-panel-x":z.x,"--skdx-floating-panel-y":z.y,"--skdx-floating-panel-width":z.width,"--skdx-floating-panel-height":z.height,...g}})};Z.displayName="FloatingPanelContent";var fe=X(require("react"),1),q=require("../utils/direction.cjs"),Se=require("../utils/part.cjs"),I=require("../utils/primitive.cjs");var Ie=require("react/jsx-runtime"),xt=10,bt={ArrowLeft:{dx:-1,dy:0},ArrowRight:{dx:1,dy:0},ArrowUp:{dx:0,dy:-1},ArrowDown:{dx:0,dy:1}},Q=({style:e,ref:o,...n})=>{let t=p("FloatingPanelHeader"),a=(0,q.useDirection)(),g=fe.useRef(null),s=fe.useRef(!1),c=t.draggable&&!t.disabled,r=i=>{c&&(i.currentTarget.setPointerCapture?.(i.pointerId),g.current={x:i.clientX,y:i.clientY},t.setDragging(!0))},v=i=>{let d=g.current;!c||!d||(t.moveBy(i.clientX-d.x,i.clientY-d.y),g.current={x:i.clientX,y:i.clientY})},h=i=>{g.current&&(i.currentTarget.releasePointerCapture?.(i.pointerId),g.current=null,t.setDragging(!1),t.announceRelease("move"))},F=i=>{if(!c)return;let d=t.step*(i.shiftKey?xt:1),y=(0,q.directionalKey)(i.key,i.currentTarget,a),R=bt[y];R&&(i.preventDefault(),s.current=!0,t.moveBy(R.dx*d,R.dy*d))},x=()=>{s.current&&(s.current=!1,t.announceRelease("move"))};return(0,Ie.jsx)(I.Primitive.div,{role:"group","aria-disabled":t.disabled||void 0,"aria-keyshortcuts":t.draggable?"ArrowUp ArrowDown ArrowLeft ArrowRight":void 0,"data-dragging":t.dragging?"":void 0,"data-disabled":t.disabled?"":void 0,tabIndex:t.draggable?0:void 0,...n,...(0,Se.skdxPart)("floating-panel","header",n.className),ref:o,onPointerDown:(0,I.useComposedEventHandlers)(n.onPointerDown,r),onPointerMove:(0,I.useComposedEventHandlers)(n.onPointerMove,v),onPointerUp:(0,I.useComposedEventHandlers)(n.onPointerUp,h),onPointerCancel:(0,I.useComposedEventHandlers)(n.onPointerCancel,h),onKeyDown:(0,I.useComposedEventHandlers)(n.onKeyDown,F),onKeyUp:(0,I.useComposedEventHandlers)(n.onKeyUp,x),style:{touchAction:"none",cursor:c?"move":void 0,...e}})};Q.displayName="FloatingPanelHeader";var Me=require("../utils/portal.cjs");var Ne=require("react/jsx-runtime"),j=({forceMount:e,children:o,...n})=>{let t=p("FloatingPanelPortal");return e||t.open||t.contentPresent?(0,Ne.jsx)(Me.Portal,{...n,children:o}):null};j.displayName="FloatingPanelPortal";var pe=X(require("react"),1),ee=require("../utils/direction.cjs"),Ae=require("../utils/part.cjs"),M=require("../utils/primitive.cjs");var He=require("react/jsx-runtime"),wt=10,Tt={ArrowLeft:{dx:-1,dy:0},ArrowRight:{dx:1,dy:0},ArrowUp:{dx:0,dy:-1},ArrowDown:{dx:0,dy:1}};function Ct(e){if(e==="e"||e==="w")return"vertical";if(e==="n"||e==="s")return"horizontal"}function zt(e,o){let n=o?e.size.width:e.size.height,t=o?e.minSize.width:e.minSize.height,a=o?e.maxSize.width:e.maxSize.height,g=Number.POSITIVE_INFINITY;e.bounds&&(g=o?e.bounds.width-e.position.x:e.bounds.height-e.position.y);let s=Math.max(t,Math.min(a,g));return{current:n,minimum:t,maximum:s}}var te=({direction:e,style:o,ref:n,...t})=>{let a=p("FloatingPanelResizeTrigger"),g=(0,ee.useDirection)(),s=pe.useRef(null),c=pe.useRef(!1),r=a.resizable&&!a.disabled,v=e.includes("e")||e.includes("w"),{current:h,minimum:F,maximum:x}=zt(a,v),i=Ct(e),d=l=>{r&&(l.currentTarget.setPointerCapture?.(l.pointerId),s.current={x:l.clientX,y:l.clientY},a.setResizing(!0))},y=l=>{let b=s.current;!r||!b||(a.resizeBy(e,l.clientX-b.x,l.clientY-b.y),s.current={x:l.clientX,y:l.clientY})},R=l=>{s.current&&(l.currentTarget.releasePointerCapture?.(l.pointerId),s.current=null,a.setResizing(!1),a.announceRelease("resize"))},C=l=>{if(!r)return;let b=a.step*(l.shiftKey?wt:1),k=(0,ee.directionalKey)(l.key,l.currentTarget,g),D=Tt[k];D&&(l.preventDefault(),c.current=!0,a.resizeBy(e,D.dx*b,D.dy*b))},z=()=>{c.current&&(c.current=!1,a.announceRelease("resize"))};return(0,He.jsx)(M.Primitive.div,{role:"separator","aria-orientation":i,"aria-valuenow":Math.round(h),"aria-valuemin":Math.round(F),"aria-valuemax":Number.isFinite(x)?Math.round(x):void 0,"aria-disabled":a.disabled||void 0,"aria-keyshortcuts":a.resizable?"ArrowUp ArrowDown ArrowLeft ArrowRight":void 0,"data-direction":e,"data-resizing":a.resizing?"":void 0,"data-disabled":a.disabled?"":void 0,tabIndex:a.resizable?0:void 0,...t,...(0,Ae.skdxPart)("floating-panel","resize-trigger",t.className),ref:n,onPointerDown:(0,M.useComposedEventHandlers)(t.onPointerDown,d),onPointerMove:(0,M.useComposedEventHandlers)(t.onPointerMove,y),onPointerUp:(0,M.useComposedEventHandlers)(t.onPointerUp,R),onPointerCancel:(0,M.useComposedEventHandlers)(t.onPointerCancel,R),onKeyDown:(0,M.useComposedEventHandlers)(t.onKeyDown,C),onKeyUp:(0,M.useComposedEventHandlers)(t.onKeyUp,z),style:{touchAction:"none",cursor:r?`${e}-resize`:void 0,...o}})};te.displayName="FloatingPanelResizeTrigger";var Oe=require("../utils/part.cjs"),ne=require("../utils/primitive.cjs");var Le=require("react/jsx-runtime"),oe=({stage:e,ref:o,...n})=>{let t=p("FloatingPanelStageTrigger"),a=t.stage===e;return(0,Le.jsx)(ne.Primitive.button,{type:"button","aria-pressed":a,"aria-disabled":t.disabled||void 0,"data-stage":t.stage,"data-state":a?"on":"off","data-disabled":t.disabled?"":void 0,...n,...(0,Oe.skdxPart)("floating-panel","stage-trigger",n.className),ref:o,onClick:(0,ne.composeEventHandlers)(n.onClick,()=>{t.disabled||t.onStageChange(a?"default":e)})})};oe.displayName="FloatingPanelStageTrigger";var ke=X(require("react"),1),Ue=require("../utils/part.cjs"),Ke=require("../utils/primitive.cjs");var Be=require("react/jsx-runtime"),ae=({ref:e,...o})=>{let n=p("FloatingPanelTitle"),{setHasTitle:t}=n;return ke.useEffect(()=>(t(!0),()=>t(!1)),[t]),(0,Be.jsx)(Ke.Primitive.h2,{id:n.titleId,...o,...(0,Ue.skdxPart)("floating-panel","title",o.className),ref:e})};ae.displayName="FloatingPanelTitle";var T=require("react/jsx-runtime"),Et=()=>(0,T.jsx)($e.Glyph,{name:"close"}),Xe=({title:e,stages:o=[],dismissible:n,resizable:t,children:a,passThrough:g})=>(0,T.jsx)(j,{children:(0,T.jsxs)(Z,{...g,children:[(0,T.jsxs)(Q,{"aria-label":"Drag to move panel",children:[e?(0,T.jsx)(ae,{children:e}):null,o.map(s=>(0,T.jsx)(oe,{stage:s.stage,children:s.label},s.stage)),n?(0,T.jsx)(W,{"aria-label":"Close",children:(0,T.jsx)(Et,{})}):null]}),a,t?(0,T.jsx)(te,{direction:"se","aria-label":"Resize panel"}):null]})});var le=require("react/jsx-runtime");function he(e,{position:o,size:n}){return e==="move"?`Panel moved to ${o.x}, ${o.y}`:`Panel resized to ${n.width} by ${n.height}`}var[Je,p]=(0,_e.createSafeContext)("FloatingPanel"),vt={x:0,y:0},Dt={width:320,height:240},St={width:160,height:120},It={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY};function Pe(e){let o=e?.current;if(o){let n=o.getBoundingClientRect();return{width:n.width,height:n.height}}return{width:window.innerWidth,height:window.innerHeight}}function ie(e,o,n,t){return(0,L.clamp)(e,o,Math.max(o,Math.min(n,t)))}function Mt(e,o,n){return m.useEffect(()=>{let t=e?.current,a=()=>{o(Pe(e));let g=t?.getBoundingClientRect(),s=g?{x:g.left||0,y:g.top||0}:{x:0,y:0};n(c=>c.x===s.x&&c.y===s.y?c:s)};if(a(),t&&typeof ResizeObserver<"u"){let g=new ResizeObserver(a);return g.observe(t),window.addEventListener("scroll",a,!0),()=>{g.disconnect(),window.removeEventListener("scroll",a,!0)}}return window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[e,o,n]),!!e?.current}function ye({children:e,open:o,defaultOpen:n=!1,onOpenChange:t,onOpenChangeComplete:a,position:g,defaultPosition:s=vt,onPositionChange:c,onPositionCommit:r,size:v,defaultSize:h=Dt,onSizeChange:F,onSizeCommit:x,minSize:i=St,maxSize:d=It,boundary:y,stage:R,defaultStage:C="default",onStageChange:z,draggable:l=!0,resizable:b=!0,step:k=10,disabled:D=!1,getGestureAnnouncement:ge}){let G=m.useRef(null),U=m.useRef(null),[de,ce]=m.useState(!1),[Qe,je]=m.useState(!1),[et,tt]=m.useState(!1),[nt,ot]=m.useState(!1),[N,at]=m.useState(null),[it,rt]=m.useState({x:0,y:0}),[A=!1,lt]=(0,_.useControllableState)({prop:o,defaultProp:n,onChange:t}),[P=s,Y]=(0,_.useControllableState)({prop:g,defaultProp:s,onChange:c}),[u=h,ue]=(0,_.useControllableState)({prop:v,defaultProp:h,onChange:F}),[st="default",gt]=(0,_.useControllableState)({prop:R,defaultProp:C,onChange:z});(0,Ye.useOpenChangeComplete)(A,U,a);let dt=Mt(y,at,rt);m.useEffect(()=>{if(!N)return;let f=Math.min(u.width,Math.max(i.width,N.width)),E=Math.min(u.height,Math.max(i.height,N.height));(f!==u.width||E!==u.height)&&ue({width:f,height:E});let w=(0,L.clamp)(P.x,0,Math.max(0,N.width-f)),S=(0,L.clamp)(P.y,0,Math.max(0,N.height-E));(w!==P.x||S!==P.y)&&Y({x:w,y:S})},[N,u,i,P,ue,Y]);let Fe=m.useRef(A);m.useEffect(()=>{if(Fe.current&&!A){let f=document.activeElement;(!f||f===document.body||U.current?.contains(f))&&G.current?.focus()}Fe.current=A},[A]);let ct=(0,re.useCallbackRef)((f,E)=>{if(D||!l)return;let w=Pe(y),S={x:(0,L.clamp)(P.x+f,0,Math.max(0,w.width-u.width)),y:(0,L.clamp)(P.y+E,0,Math.max(0,w.height-u.height))};(S.x!==P.x||S.y!==P.y)&&Y(S)}),ut=(0,re.useCallbackRef)((f,E,w)=>{if(D||!b)return;let S=Pe(y),{x:K,y:B}=P,{width:H,height:O}=u;if(f.includes("e")&&(H=ie(u.width+E,i.width,d.width,S.width-K)),f.includes("w")){let $=K+H;H=ie(u.width-E,i.width,d.width,$),K=$-H}if(f.includes("s")&&(O=ie(u.height+w,i.height,d.height,S.height-B)),f.includes("n")){let $=B+O;O=ie(u.height-w,i.height,d.height,$),B=$-O}(H!==u.width||O!==u.height)&&ue({width:H,height:O}),(K!==P.x||B!==P.y)&&Y({x:K,y:B})}),mt=(0,re.useCallbackRef)(f=>{f==="resize"&&x?.(u),r?.(P);let E={position:{x:Math.round(P.x),y:Math.round(P.y)},size:{width:Math.round(u.width),height:Math.round(u.height)}},w=(ge??he)(f,E);w&&(0,Ge.announce)(w)});return(0,le.jsx)(Je,{triggerRef:G,contentRef:U,contentId:m.useId(),titleId:m.useId(),hasTitle:nt,setHasTitle:ot,open:A,onOpenChange:lt,position:P,size:u,minSize:i,maxSize:d,bounds:N,origin:it,bounded:dt,stage:st,onStageChange:gt,moveBy:ct,resizeBy:ut,announceRelease:mt,draggable:l,resizable:b,disabled:D,step:k,dragging:de,setDragging:ce,resizing:Qe,setResizing:je,contentPresent:et,setContentPresent:tt,children:e})}ye.displayName="FloatingPanelRoot";function Re({children:e,title:o,stages:n,dismissible:t=!0,resizable:a=!0,open:g,defaultOpen:s,onOpenChange:c,onOpenChangeComplete:r,position:v,defaultPosition:h,onPositionChange:F,onPositionCommit:x,size:i,defaultSize:d,onSizeChange:y,onSizeCommit:R,minSize:C,maxSize:z,boundary:l,stage:b,defaultStage:k,onStageChange:D,draggable:ge,step:G,disabled:U,getGestureAnnouncement:de,...ce}){return(0,le.jsx)(ye,{open:g,defaultOpen:s,onOpenChange:c,onOpenChangeComplete:r,position:v,defaultPosition:h,onPositionChange:F,onPositionCommit:x,size:i,defaultSize:d,onSizeChange:y,onSizeCommit:R,minSize:C,maxSize:z,boundary:l,stage:b,defaultStage:k,onStageChange:D,draggable:ge,resizable:a,step:G,disabled:U,getGestureAnnouncement:de,children:(0,le.jsx)(Xe,{title:o,stages:n,dismissible:t,resizable:a,passThrough:ce,children:e})})}Re.displayName="FloatingPanel";var Ve=require("../utils/composeRefs.cjs"),We=require("../utils/part.cjs"),se=require("../utils/primitive.cjs");var qe=require("react/jsx-runtime"),Ze=({ref:e,...o})=>{let n=p("FloatingPanelTrigger"),t=(0,Ve.useComposedRefs)(e,n.triggerRef);return(0,qe.jsx)(se.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":n.open,"aria-controls":n.contentId,"data-state":n.open?"open":"closed",...o,...(0,We.skdxPart)("floating-panel","trigger",o.className),ref:t,onClick:(0,se.composeEventHandlers)(o.onClick,()=>n.onOpenChange(!n.open))})};Ze.displayName="FloatingPanelTrigger";0&&(module.exports={FloatingPanel,FloatingPanelCloseTrigger,FloatingPanelContent,FloatingPanelHeader,FloatingPanelPortal,FloatingPanelProvider,FloatingPanelResizeTrigger,FloatingPanelRoot,FloatingPanelStageTrigger,FloatingPanelTitle,FloatingPanelTrigger,gestureAnnouncement,useFloatingPanelContext});
2
+ "use strict";var ft=Object.create;var V=Object.defineProperty;var pt=Object.getOwnPropertyDescriptor;var Pt=Object.getOwnPropertyNames;var ht=Object.getPrototypeOf,yt=Object.prototype.hasOwnProperty;var Rt=(e,o)=>{for(var n in o)V(e,n,{get:o[n],enumerable:!0})},be=(e,o,n,t)=>{if(o&&typeof o=="object"||typeof o=="function")for(let a of Pt(o))!yt.call(e,a)&&a!==n&&V(e,a,{get:()=>o[a],enumerable:!(t=pt(o,a))||t.enumerable});return e};var $=(e,o,n)=>(n=e!=null?ft(ht(e)):{},be(o||!e||!e.__esModule?V(n,"default",{value:e,enumerable:!0}):n,e)),Ft=e=>be(V({},"__esModule",{value:!0}),e);var At={};Rt(At,{FloatingPanel:()=>Re,FloatingPanelCloseTrigger:()=>W,FloatingPanelContent:()=>Z,FloatingPanelHeader:()=>Q,FloatingPanelPortal:()=>j,FloatingPanelProvider:()=>Ve,FloatingPanelResizeTrigger:()=>te,FloatingPanelRoot:()=>ye,FloatingPanelStageTrigger:()=>oe,FloatingPanelTitle:()=>ae,FloatingPanelTrigger:()=>Ze,gestureAnnouncement:()=>he,useFloatingPanelContext:()=>p});module.exports=Ft(At);var m=$(require("react"),1),O=require("../utils/clamp.cjs"),Xe=require("../utils/createContext.cjs"),Ge=require("../utils/liveAnnouncer.cjs"),re=require("../utils/useCallbackRef.cjs"),X=require("../utils/useControllableState.cjs"),Ye=require("../utils/useOpenChangeComplete.cjs");var _e=require("../utils/Glyph.cjs");var xe=require("../utils/part.cjs"),J=require("../utils/primitive.cjs");var we=require("react/jsx-runtime"),W=({ref:e,...o})=>{let n=p("FloatingPanelCloseTrigger");return(0,we.jsx)(J.Primitive.button,{type:"button",...o,...(0,xe.skdxPart)("floating-panel","close-trigger",o.className),ref:e,onClick:(0,J.composeEventHandlers)(o.onClick,()=>n.onOpenChange(!1))})};W.displayName="FloatingPanelCloseTrigger";var me=$(require("react"),1),Te=require("../utils/composeRefs.cjs"),Ce=require("../utils/part.cjs"),ze=require("../utils/presence.cjs"),Ee=require("../utils/primitive.cjs"),ve=require("../utils/useDismiss.cjs");var Ie=require("react/jsx-runtime"),Z=({forceMount:e,onEscapeKeyDown:o,onPointerDownOutside:n,onFocusOutside:t,onInteractOutside:a,style:g,ref:s,...c})=>{let r=p("FloatingPanelContent"),v=(0,Te.useComposedRefs)(s,r.contentRef),{setContentPresent:h}=r,F=(0,ze.usePresence)(r.open,r.contentRef);if(me.useEffect(()=>{h(F)},[F,h]),me.useEffect(()=>()=>h(!1),[h]),(0,ve.useDismiss)({enabled:r.open,onEscapeKeyDown:l=>{o?.(l),l.defaultPrevented||r.onOpenChange(!1)},onInteractOutside:a,onPointerDownOutside:l=>{n?.(l),l.defaultPrevented||r.onOpenChange(!1)},onFocusOutside:t},[r.contentRef,r.triggerRef]),!e&&!F)return null;let{position:b,size:i,stage:d,origin:y,bounded:R,bounds:C}=r,z=d==="maximized"?{x:`${y.x}px`,y:`${y.y}px`,width:R&&C?`${C.width}px`:"100%",height:R&&C?`${C.height}px`:"100%"}:{x:`${y.x+b.x}px`,y:`${y.y+b.y}px`,width:`${i.width}px`,height:d==="minimized"?"auto":`${i.height}px`};return(0,Ie.jsx)(Ee.Primitive.div,{role:"dialog","aria-modal":!1,"aria-labelledby":r.hasTitle?r.titleId:void 0,id:r.contentId,"data-state":r.open?"open":"closed","data-stage":d,"data-dragging":r.dragging?"":void 0,"data-resizing":r.resizing?"":void 0,"data-disabled":r.disabled?"":void 0,...c,...(0,Ce.skdxPart)("floating-panel","content",c.className),ref:v,style:{"--skdx-floating-panel-x":z.x,"--skdx-floating-panel-y":z.y,"--skdx-floating-panel-width":z.width,"--skdx-floating-panel-height":z.height,...g}})};Z.displayName="FloatingPanelContent";var fe=$(require("react"),1),q=require("../utils/direction.cjs"),Se=require("../utils/part.cjs"),D=require("../utils/primitive.cjs");var De=require("react/jsx-runtime"),bt=10,xt='button, a, input, select, textarea, [role="button"]',wt={ArrowLeft:{dx:-1,dy:0},ArrowRight:{dx:1,dy:0},ArrowUp:{dx:0,dy:-1},ArrowDown:{dx:0,dy:1}},Q=({style:e,ref:o,...n})=>{let t=p("FloatingPanelHeader"),a=(0,q.useDirection)(),g=fe.useRef(null),s=fe.useRef(!1),c=t.draggable&&!t.disabled,r=i=>{c&&(i.target.closest?.(xt)||(i.currentTarget.setPointerCapture?.(i.pointerId),g.current={x:i.clientX,y:i.clientY},t.setDragging(!0)))},v=i=>{let d=g.current;!c||!d||(t.moveBy(i.clientX-d.x,i.clientY-d.y),g.current={x:i.clientX,y:i.clientY})},h=i=>{g.current&&(i.currentTarget.releasePointerCapture?.(i.pointerId),g.current=null,t.setDragging(!1),t.announceRelease("move"))},F=i=>{if(!c)return;let d=t.step*(i.shiftKey?bt:1),y=(0,q.directionalKey)(i.key,i.currentTarget,a),R=wt[y];R&&(i.preventDefault(),s.current=!0,t.moveBy(R.dx*d,R.dy*d))},b=()=>{s.current&&(s.current=!1,t.announceRelease("move"))};return(0,De.jsx)(D.Primitive.div,{role:"group","aria-disabled":t.disabled||void 0,"aria-keyshortcuts":t.draggable?"ArrowUp ArrowDown ArrowLeft ArrowRight":void 0,"data-dragging":t.dragging?"":void 0,"data-disabled":t.disabled?"":void 0,tabIndex:t.draggable?0:void 0,...n,...(0,Se.skdxPart)("floating-panel","header",n.className),ref:o,onPointerDown:(0,D.useComposedEventHandlers)(n.onPointerDown,r),onPointerMove:(0,D.useComposedEventHandlers)(n.onPointerMove,v),onPointerUp:(0,D.useComposedEventHandlers)(n.onPointerUp,h),onPointerCancel:(0,D.useComposedEventHandlers)(n.onPointerCancel,h),onKeyDown:(0,D.useComposedEventHandlers)(n.onKeyDown,F),onKeyUp:(0,D.useComposedEventHandlers)(n.onKeyUp,b),style:{touchAction:"none",cursor:c?"move":void 0,...e}})};Q.displayName="FloatingPanelHeader";var Me=require("../utils/portal.cjs");var Ne=require("react/jsx-runtime"),j=({forceMount:e,children:o,...n})=>{let t=p("FloatingPanelPortal");return e||t.open||t.contentPresent?(0,Ne.jsx)(Me.Portal,{...n,children:o}):null};j.displayName="FloatingPanelPortal";var pe=$(require("react"),1),ee=require("../utils/direction.cjs"),Ae=require("../utils/part.cjs"),M=require("../utils/primitive.cjs");var He=require("react/jsx-runtime"),Tt=10,Ct={ArrowLeft:{dx:-1,dy:0},ArrowRight:{dx:1,dy:0},ArrowUp:{dx:0,dy:-1},ArrowDown:{dx:0,dy:1}};function zt(e){if(e==="e"||e==="w")return"vertical";if(e==="n"||e==="s")return"horizontal"}function Et(e,o){let n=o?e.size.width:e.size.height,t=o?e.minSize.width:e.minSize.height,a=o?e.maxSize.width:e.maxSize.height,g=Number.POSITIVE_INFINITY;e.bounds&&(g=o?e.bounds.width-e.position.x:e.bounds.height-e.position.y);let s=Math.max(t,Math.min(a,g));return{current:n,minimum:t,maximum:s}}var te=({direction:e,style:o,ref:n,...t})=>{let a=p("FloatingPanelResizeTrigger"),g=(0,ee.useDirection)(),s=pe.useRef(null),c=pe.useRef(!1),r=a.resizable&&!a.disabled,v=e.includes("e")||e.includes("w"),{current:h,minimum:F,maximum:b}=Et(a,v),i=zt(e),d=l=>{r&&(l.currentTarget.setPointerCapture?.(l.pointerId),s.current={x:l.clientX,y:l.clientY},a.setResizing(!0))},y=l=>{let x=s.current;!r||!x||(a.resizeBy(e,l.clientX-x.x,l.clientY-x.y),s.current={x:l.clientX,y:l.clientY})},R=l=>{s.current&&(l.currentTarget.releasePointerCapture?.(l.pointerId),s.current=null,a.setResizing(!1),a.announceRelease("resize"))},C=l=>{if(!r)return;let x=a.step*(l.shiftKey?Tt:1),k=(0,ee.directionalKey)(l.key,l.currentTarget,g),I=Ct[k];I&&(l.preventDefault(),c.current=!0,a.resizeBy(e,I.dx*x,I.dy*x))},z=()=>{c.current&&(c.current=!1,a.announceRelease("resize"))};return(0,He.jsx)(M.Primitive.div,{role:"separator","aria-orientation":i,"aria-valuenow":Math.round(h),"aria-valuemin":Math.round(F),"aria-valuemax":Number.isFinite(b)?Math.round(b):void 0,"aria-disabled":a.disabled||void 0,"aria-keyshortcuts":a.resizable?"ArrowUp ArrowDown ArrowLeft ArrowRight":void 0,"data-direction":e,"data-resizing":a.resizing?"":void 0,"data-disabled":a.disabled?"":void 0,tabIndex:a.resizable?0:void 0,...t,...(0,Ae.skdxPart)("floating-panel","resize-trigger",t.className),ref:n,onPointerDown:(0,M.useComposedEventHandlers)(t.onPointerDown,d),onPointerMove:(0,M.useComposedEventHandlers)(t.onPointerMove,y),onPointerUp:(0,M.useComposedEventHandlers)(t.onPointerUp,R),onPointerCancel:(0,M.useComposedEventHandlers)(t.onPointerCancel,R),onKeyDown:(0,M.useComposedEventHandlers)(t.onKeyDown,C),onKeyUp:(0,M.useComposedEventHandlers)(t.onKeyUp,z),style:{touchAction:"none",cursor:r?`${e}-resize`:void 0,...o}})};te.displayName="FloatingPanelResizeTrigger";var Le=require("../utils/part.cjs"),ne=require("../utils/primitive.cjs");var Oe=require("react/jsx-runtime"),oe=({stage:e,ref:o,...n})=>{let t=p("FloatingPanelStageTrigger"),a=t.stage===e;return(0,Oe.jsx)(ne.Primitive.button,{type:"button","aria-pressed":a,"aria-disabled":t.disabled||void 0,"data-stage":t.stage,"data-state":a?"on":"off","data-disabled":t.disabled?"":void 0,...n,...(0,Le.skdxPart)("floating-panel","stage-trigger",n.className),ref:o,onClick:(0,ne.composeEventHandlers)(n.onClick,()=>{t.disabled||t.onStageChange(a?"default":e)})})};oe.displayName="FloatingPanelStageTrigger";var ke=$(require("react"),1),Ue=require("../utils/part.cjs"),Ke=require("../utils/primitive.cjs");var Be=require("react/jsx-runtime"),ae=({ref:e,...o})=>{let n=p("FloatingPanelTitle"),{setHasTitle:t}=n;return ke.useEffect(()=>(t(!0),()=>t(!1)),[t]),(0,Be.jsx)(Ke.Primitive.h2,{id:n.titleId,...o,...(0,Ue.skdxPart)("floating-panel","title",o.className),ref:e})};ae.displayName="FloatingPanelTitle";var T=require("react/jsx-runtime"),vt=()=>(0,T.jsx)(_e.Glyph,{name:"close"}),$e=({title:e,stages:o=[],dismissible:n,resizable:t,children:a,passThrough:g})=>(0,T.jsx)(j,{children:(0,T.jsxs)(Z,{...g,children:[(0,T.jsxs)(Q,{"aria-label":"Drag to move panel",children:[e?(0,T.jsx)(ae,{children:e}):null,o.map(s=>(0,T.jsx)(oe,{stage:s.stage,children:s.label},s.stage)),n?(0,T.jsx)(W,{"aria-label":"Close",children:(0,T.jsx)(vt,{})}):null]}),a,t?(0,T.jsx)(te,{direction:"se","aria-label":"Resize panel"}):null]})});var le=require("react/jsx-runtime");function he(e,{position:o,size:n}){return e==="move"?`Panel moved to ${o.x}, ${o.y}`:`Panel resized to ${n.width} by ${n.height}`}var[Ve,p]=(0,Xe.createSafeContext)("FloatingPanel"),It={x:0,y:0},St={width:320,height:240},Dt={width:160,height:120},Mt={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY};function Pe(e){let o=e?.current;if(o){let n=o.getBoundingClientRect();return{width:n.width,height:n.height}}return{width:window.innerWidth,height:window.innerHeight}}function ie(e,o,n,t){return(0,O.clamp)(e,o,Math.max(o,Math.min(n,t)))}function Nt(e,o,n){return m.useEffect(()=>{let t=e?.current,a=()=>{o(Pe(e));let g=t?.getBoundingClientRect(),s=g?{x:g.left||0,y:g.top||0}:{x:0,y:0};n(c=>c.x===s.x&&c.y===s.y?c:s)};if(a(),t&&typeof ResizeObserver<"u"){let g=new ResizeObserver(a);return g.observe(t),window.addEventListener("scroll",a,!0),()=>{g.disconnect(),window.removeEventListener("scroll",a,!0)}}return window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[e,o,n]),!!e?.current}function ye({children:e,open:o,defaultOpen:n=!1,onOpenChange:t,onOpenChangeComplete:a,position:g,defaultPosition:s=It,onPositionChange:c,onPositionCommit:r,size:v,defaultSize:h=St,onSizeChange:F,onSizeCommit:b,minSize:i=Dt,maxSize:d=Mt,boundary:y,stage:R,defaultStage:C="default",onStageChange:z,draggable:l=!0,resizable:x=!0,step:k=10,disabled:I=!1,getGestureAnnouncement:ge}){let G=m.useRef(null),U=m.useRef(null),[de,ce]=m.useState(!1),[Qe,je]=m.useState(!1),[et,tt]=m.useState(!1),[nt,ot]=m.useState(!1),[N,at]=m.useState(null),[it,rt]=m.useState({x:0,y:0}),[A=!1,lt]=(0,X.useControllableState)({prop:o,defaultProp:n,onChange:t}),[P=s,Y]=(0,X.useControllableState)({prop:g,defaultProp:s,onChange:c}),[u=h,ue]=(0,X.useControllableState)({prop:v,defaultProp:h,onChange:F}),[st="default",gt]=(0,X.useControllableState)({prop:R,defaultProp:C,onChange:z});(0,Ye.useOpenChangeComplete)(A,U,a);let dt=Nt(y,at,rt);m.useEffect(()=>{if(!N)return;let f=Math.min(u.width,Math.max(i.width,N.width)),E=Math.min(u.height,Math.max(i.height,N.height));(f!==u.width||E!==u.height)&&ue({width:f,height:E});let w=(0,O.clamp)(P.x,0,Math.max(0,N.width-f)),S=(0,O.clamp)(P.y,0,Math.max(0,N.height-E));(w!==P.x||S!==P.y)&&Y({x:w,y:S})},[N,u,i,P,ue,Y]);let Fe=m.useRef(A);m.useEffect(()=>{if(Fe.current&&!A){let f=document.activeElement;(!f||f===document.body||U.current?.contains(f))&&G.current?.focus()}Fe.current=A},[A]);let ct=(0,re.useCallbackRef)((f,E)=>{if(I||!l)return;let w=Pe(y),S={x:(0,O.clamp)(P.x+f,0,Math.max(0,w.width-u.width)),y:(0,O.clamp)(P.y+E,0,Math.max(0,w.height-u.height))};(S.x!==P.x||S.y!==P.y)&&Y(S)}),ut=(0,re.useCallbackRef)((f,E,w)=>{if(I||!x)return;let S=Pe(y),{x:K,y:B}=P,{width:H,height:L}=u;if(f.includes("e")&&(H=ie(u.width+E,i.width,d.width,S.width-K)),f.includes("w")){let _=K+H;H=ie(u.width-E,i.width,d.width,_),K=_-H}if(f.includes("s")&&(L=ie(u.height+w,i.height,d.height,S.height-B)),f.includes("n")){let _=B+L;L=ie(u.height-w,i.height,d.height,_),B=_-L}(H!==u.width||L!==u.height)&&ue({width:H,height:L}),(K!==P.x||B!==P.y)&&Y({x:K,y:B})}),mt=(0,re.useCallbackRef)(f=>{f==="resize"&&b?.(u),r?.(P);let E={position:{x:Math.round(P.x),y:Math.round(P.y)},size:{width:Math.round(u.width),height:Math.round(u.height)}},w=(ge??he)(f,E);w&&(0,Ge.announce)(w)});return(0,le.jsx)(Ve,{triggerRef:G,contentRef:U,contentId:m.useId(),titleId:m.useId(),hasTitle:nt,setHasTitle:ot,open:A,onOpenChange:lt,position:P,size:u,minSize:i,maxSize:d,bounds:N,origin:it,bounded:dt,stage:st,onStageChange:gt,moveBy:ct,resizeBy:ut,announceRelease:mt,draggable:l,resizable:x,disabled:I,step:k,dragging:de,setDragging:ce,resizing:Qe,setResizing:je,contentPresent:et,setContentPresent:tt,children:e})}ye.displayName="FloatingPanelRoot";function Re({children:e,title:o,stages:n,dismissible:t=!0,resizable:a=!0,open:g,defaultOpen:s,onOpenChange:c,onOpenChangeComplete:r,position:v,defaultPosition:h,onPositionChange:F,onPositionCommit:b,size:i,defaultSize:d,onSizeChange:y,onSizeCommit:R,minSize:C,maxSize:z,boundary:l,stage:x,defaultStage:k,onStageChange:I,draggable:ge,step:G,disabled:U,getGestureAnnouncement:de,...ce}){return(0,le.jsx)(ye,{open:g,defaultOpen:s,onOpenChange:c,onOpenChangeComplete:r,position:v,defaultPosition:h,onPositionChange:F,onPositionCommit:b,size:i,defaultSize:d,onSizeChange:y,onSizeCommit:R,minSize:C,maxSize:z,boundary:l,stage:x,defaultStage:k,onStageChange:I,draggable:ge,resizable:a,step:G,disabled:U,getGestureAnnouncement:de,children:(0,le.jsx)($e,{title:o,stages:n,dismissible:t,resizable:a,passThrough:ce,children:e})})}Re.displayName="FloatingPanel";var Je=require("../utils/composeRefs.cjs"),We=require("../utils/part.cjs"),se=require("../utils/primitive.cjs");var qe=require("react/jsx-runtime"),Ze=({ref:e,...o})=>{let n=p("FloatingPanelTrigger"),t=(0,Je.useComposedRefs)(e,n.triggerRef);return(0,qe.jsx)(se.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":n.open,"aria-controls":n.contentId,"data-state":n.open?"open":"closed",...o,...(0,We.skdxPart)("floating-panel","trigger",o.className),ref:t,onClick:(0,se.composeEventHandlers)(o.onClick,()=>n.onOpenChange(!n.open))})};Ze.displayName="FloatingPanelTrigger";0&&(module.exports={FloatingPanel,FloatingPanelCloseTrigger,FloatingPanelContent,FloatingPanelHeader,FloatingPanelPortal,FloatingPanelProvider,FloatingPanelResizeTrigger,FloatingPanelRoot,FloatingPanelStageTrigger,FloatingPanelTitle,FloatingPanelTrigger,gestureAnnouncement,useFloatingPanelContext});
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { FloatingPanelContextValue, FloatingPanelGeometry, FloatingPanelGesture, FloatingPanelProps } from './types.cjs';
2
+ import type { FloatingPanelContextValue, FloatingPanelGeometry, FloatingPanelGesture, FloatingPanelProps, FloatingPanelRootProps } from './types.cjs';
3
3
  /**
4
4
  * Default release announcement for {@link FloatingPanelProps.getGestureAnnouncement}.
5
5
  */
@@ -7,8 +7,6 @@ export declare function gestureAnnouncement(gesture: FloatingPanelGesture, { pos
7
7
  export declare const FloatingPanelProvider: React.FC<FloatingPanelContextValue & {
8
8
  children: React.ReactNode;
9
9
  }>, useFloatingPanelContext: (consumerName: string) => FloatingPanelContextValue;
10
- /** Props for {@link FloatingPanelRoot}: {@link FloatingPanelProps} minus the derived-anatomy-only props. */
11
- export type FloatingPanelRootProps = Omit<FloatingPanelProps, 'title' | 'stages' | 'dismissible'>;
12
10
  /**
13
11
  * FloatingPanel's state/context primitive: owns open state, position, size
14
12
  * and stage, and renders `children` verbatim with no DOM element of its own.
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { FloatingPanelContextValue, FloatingPanelGeometry, FloatingPanelGesture, FloatingPanelProps } from './types.js';
2
+ import type { FloatingPanelContextValue, FloatingPanelGeometry, FloatingPanelGesture, FloatingPanelProps, FloatingPanelRootProps } from './types.js';
3
3
  /**
4
4
  * Default release announcement for {@link FloatingPanelProps.getGestureAnnouncement}.
5
5
  */
@@ -7,8 +7,6 @@ export declare function gestureAnnouncement(gesture: FloatingPanelGesture, { pos
7
7
  export declare const FloatingPanelProvider: React.FC<FloatingPanelContextValue & {
8
8
  children: React.ReactNode;
9
9
  }>, useFloatingPanelContext: (consumerName: string) => FloatingPanelContextValue;
10
- /** Props for {@link FloatingPanelRoot}: {@link FloatingPanelProps} minus the derived-anatomy-only props. */
11
- export type FloatingPanelRootProps = Omit<FloatingPanelProps, 'title' | 'stages' | 'dismissible'>;
12
10
  /**
13
11
  * FloatingPanel's state/context primitive: owns open state, position, size
14
12
  * and stage, and renders `children` verbatim with no DOM element of its own.