@sps-woodland/modal 8.7.1 → 8.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.cjs.js +1 -1
- package/lib/index.es.js +18 -19
- package/package.json +7 -7
package/lib/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const P=require("@sps-woodland/core"),he=require("@sps-woodland/buttons"),m=require("react"),tt=require("react-dom"),v=require("@spscommerce/utils"),Fe=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ot(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const w=Fe(m),u=ot(m),rt=Fe(tt);function nt(e,t,o){let[r,n]=m.useState(e||t),l=m.useRef(e!==void 0),a=e!==void 0;m.useEffect(()=>{let d=l.current;d!==a&&console.warn(`WARN: A component changed from ${d?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}.`),l.current=a},[a]);let s=a?e:r,c=m.useCallback((d,...i)=>{let p=(f,...b)=>{o&&(Object.is(s,f)||o(f,...b)),a||(s=f)};typeof d=="function"?(console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"),n((b,...g)=>{let T=d(a?s:b,...g);return p(T,...i),a?b:T})):(a||n(d),p(d,...i))},[a,s,o]);return[s,c]}const V={prefix:String(Math.round(Math.random()*1e10)),current:0},Le=w.default.createContext(V),at=w.default.createContext(!1);let lt=Boolean(typeof window<"u"&&window.document&&window.document.createElement),oe=new WeakMap;function it(e=!1){let t=m.useContext(Le),o=m.useRef(null);if(o.current===null&&!e){var r,n;let l=(n=w.default.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)===null||n===void 0||(r=n.ReactCurrentOwner)===null||r===void 0?void 0:r.current;if(l){let a=oe.get(l);a==null?oe.set(l,{id:t.current,state:l.memoizedState}):l.memoizedState!==a.state&&(t.current=a.id,oe.delete(l))}o.current=++t.current}return o.current}function st(e){let t=m.useContext(Le);t===V&&!lt&&console.warn("When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.");let o=it(!!e),r=t===V&&process.env.NODE_ENV==="test"?"react-aria":`react-aria${t.prefix}`;return e||`${r}-${o}`}function dt(e){let t=w.default.useId(),[o]=m.useState(Ce()),r=o||process.env.NODE_ENV==="test"?"react-aria":`react-aria${V.prefix}`;return e||`${r}-${t}`}const ut=typeof w.default.useId=="function"?dt:st;function ct(){return!1}function mt(){return!0}function ft(e){return()=>{}}function Ce(){return typeof w.default.useSyncExternalStore=="function"?w.default.useSyncExternalStore(ft,ct,mt):m.useContext(at)}function Be(e){var t,o,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(o=Be(e[t]))&&(r&&(r+=" "),r+=o)}else for(o in e)e[o]&&(r&&(r+=" "),r+=o);return r}function pt(){for(var e,t,o=0,r="",n=arguments.length;o<n;o++)(e=arguments[o])&&(t=Be(e))&&(r&&(r+=" "),r+=t);return r}const E=typeof document<"u"?w.default.useLayoutEffect:()=>{};function I(e){const t=m.useRef(null);return E(()=>{t.current=e},[e]),m.useCallback((...o)=>{const r=t.current;return r==null?void 0:r(...o)},[])}function gt(e){let[t,o]=m.useState(e),r=m.useRef(null),n=I(()=>{if(!r.current)return;let a=r.current.next();if(a.done){r.current=null;return}t===a.value?n():o(a.value)});E(()=>{r.current&&n()});let l=I(a=>{r.current=a(t),n()});return[t,l]}let bt=Boolean(typeof window<"u"&&window.document&&window.document.createElement),j=new Map;function Ne(e){let[t,o]=m.useState(e),r=m.useRef(null),n=ut(t),l=m.useCallback(a=>{r.current=a},[]);return bt&&j.set(n,l),E(()=>{let a=n;return()=>{j.delete(a)}},[n]),m.useEffect(()=>{let a=r.current;a&&(r.current=null,o(a))}),n}function vt(e,t){if(e===t)return e;let o=j.get(e);if(o)return o(t),t;let r=j.get(t);return r?(r(e),e):t}function $t(e=[]){let t=Ne(),[o,r]=gt(t),n=m.useCallback(()=>{r(function*(){yield t,yield document.getElementById(t)?t:void 0})},[t,r]);return E(n,[t,n,...e]),o}function K(...e){return(...t)=>{for(let o of e)typeof o=="function"&&o(...t)}}const M=e=>{var t;return(t=e==null?void 0:e.ownerDocument)!==null&&t!==void 0?t:document},U=e=>e&&"window"in e&&e.window===e?e:M(e).defaultView||window;function ht(...e){let t={...e[0]};for(let o=1;o<e.length;o++){let r=e[o];for(let n in r){let l=t[n],a=r[n];typeof l=="function"&&typeof a=="function"&&n[0]==="o"&&n[1]==="n"&&n.charCodeAt(2)>=65&&n.charCodeAt(2)<=90?t[n]=K(l,a):(n==="className"||n==="UNSAFE_className")&&typeof l=="string"&&typeof a=="string"?t[n]=pt(l,a):n==="id"&&l&&a?t.id=vt(l,a):t[n]=a!==void 0?a:l}}return t}const wt=new Set(["id"]),Et=new Set(["aria-label","aria-labelledby","aria-describedby","aria-details"]),Mt=new Set(["href","target","rel","download","ping","referrerPolicy"]),yt=/^(data-.*)$/;function Pt(e,t={}){let{labelable:o,isLink:r,propNames:n}=t,l={};for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(wt.has(a)||o&&Et.has(a)||r&&Mt.has(a)||(n==null?void 0:n.has(a))||yt.test(a))&&(l[a]=e[a]);return l}function we(e){if(kt())e.focus({preventScroll:!0});else{let t=xt(e);e.focus(),Tt(t)}}let q=null;function kt(){if(q==null){q=!1;try{document.createElement("div").focus({get preventScroll(){return q=!0,!0}})}catch{}}return q}function xt(e){let t=e.parentNode,o=[],r=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==r;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&o.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return r instanceof HTMLElement&&o.push({element:r,scrollTop:r.scrollTop,scrollLeft:r.scrollLeft}),o}function Tt(e){for(let{element:t,scrollTop:o,scrollLeft:r}of e)t.scrollTop=o,t.scrollLeft=r}function St(e){var t;return typeof window>"u"||window.navigator==null?!1:((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.brands.some(o=>e.test(o.brand)))||e.test(window.navigator.userAgent)}function ue(e){var t;return typeof window<"u"&&window.navigator!=null?e.test(((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.platform)||window.navigator.platform):!1}function Oe(){return ue(/^Mac/i)}function Ft(){return ue(/^iPhone/i)}function Lt(){return ue(/^iPad/i)||Oe()&&navigator.maxTouchPoints>1}function Ct(){return Ft()||Lt()}function Bt(){return St(/Android/i)}let N=new Map,ae=new Set;function Ee(){if(typeof window>"u")return;function e(r){return"propertyName"in r}let t=r=>{if(!e(r)||!r.target)return;let n=N.get(r.target);n||(n=new Set,N.set(r.target,n),r.target.addEventListener("transitioncancel",o,{once:!0})),n.add(r.propertyName)},o=r=>{if(!e(r)||!r.target)return;let n=N.get(r.target);if(!!n&&(n.delete(r.propertyName),n.size===0&&(r.target.removeEventListener("transitioncancel",o),N.delete(r.target)),N.size===0)){for(let l of ae)l();ae.clear()}};document.body.addEventListener("transitionrun",t),document.body.addEventListener("transitionend",o)}typeof document<"u"&&(document.readyState!=="loading"?Ee():document.addEventListener("DOMContentLoaded",Ee));function Nt(e){requestAnimationFrame(()=>{N.size===0?e():ae.add(e)})}function De(e,t){let o=e;for(Me(o,t)&&(o=o.parentElement);o&&!Me(o,t);)o=o.parentElement;return o||document.scrollingElement||document.documentElement}function Me(e,t){let o=window.getComputedStyle(e),r=/(auto|scroll)/.test(o.overflow+o.overflowX+o.overflowY);return r&&t&&(r=e.scrollHeight!==e.clientHeight||e.scrollWidth!==e.clientWidth),r}function Ot(e){return e.mozInputSource===0&&e.isTrusted?!0:Bt()&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}const Re=w.default.createContext({register:()=>{}});Re.displayName="PressResponderContext";function Dt({children:e}){let t=m.useMemo(()=>({register:()=>{}}),[]);return w.default.createElement(Re.Provider,{value:t},e)}class Rt{isDefaultPrevented(){return this.nativeEvent.defaultPrevented}preventDefault(){this.defaultPrevented=!0,this.nativeEvent.preventDefault()}stopPropagation(){this.nativeEvent.stopPropagation(),this.isPropagationStopped=()=>!0}isPropagationStopped(){return!1}persist(){}constructor(t,o){this.nativeEvent=o,this.target=o.target,this.currentTarget=o.currentTarget,this.relatedTarget=o.relatedTarget,this.bubbles=o.bubbles,this.cancelable=o.cancelable,this.defaultPrevented=o.defaultPrevented,this.eventPhase=o.eventPhase,this.isTrusted=o.isTrusted,this.timeStamp=o.timeStamp,this.type=t}}function Wt(e){let t=m.useRef({isFocused:!1,observer:null});E(()=>{const r=t.current;return()=>{r.observer&&(r.observer.disconnect(),r.observer=null)}},[]);let o=I(r=>{e==null||e(r)});return m.useCallback(r=>{if(r.target instanceof HTMLButtonElement||r.target instanceof HTMLInputElement||r.target instanceof HTMLTextAreaElement||r.target instanceof HTMLSelectElement){t.current.isFocused=!0;let n=r.target,l=a=>{t.current.isFocused=!1,n.disabled&&o(new Rt("blur",a)),t.current.observer&&(t.current.observer.disconnect(),t.current.observer=null)};n.addEventListener("focusout",l,{once:!0}),t.current.observer=new MutationObserver(()=>{if(t.current.isFocused&&n.disabled){var a;(a=t.current.observer)===null||a===void 0||a.disconnect();let s=n===document.activeElement?null:document.activeElement;n.dispatchEvent(new FocusEvent("blur",{relatedTarget:s})),n.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:s}))}}),t.current.observer.observe(n,{attributes:!0,attributeFilter:["disabled"]})}},[o])}let z=null,At=new Set,A=new Map,B=!1,le=!1;function ce(e,t){for(let o of At)o(e,t)}function It(e){return!(e.metaKey||!Oe()&&e.altKey||e.ctrlKey||e.key==="Control"||e.key==="Shift"||e.key==="Meta")}function G(e){B=!0,It(e)&&(z="keyboard",ce("keyboard",e))}function x(e){z="pointer",(e.type==="mousedown"||e.type==="pointerdown")&&(B=!0,ce("pointer",e))}function We(e){Ot(e)&&(B=!0,z="virtual")}function Ae(e){e.target===window||e.target===document||(!B&&!le&&(z="virtual",ce("virtual",e)),B=!1,le=!1)}function Ie(){B=!1,le=!0}function ye(e){if(typeof window>"u"||A.get(U(e)))return;const t=U(e),o=M(e);let r=t.HTMLElement.prototype.focus;t.HTMLElement.prototype.focus=function(){B=!0,r.apply(this,arguments)},o.addEventListener("keydown",G,!0),o.addEventListener("keyup",G,!0),o.addEventListener("click",We,!0),t.addEventListener("focus",Ae,!0),t.addEventListener("blur",Ie,!1),typeof PointerEvent<"u"?(o.addEventListener("pointerdown",x,!0),o.addEventListener("pointermove",x,!0),o.addEventListener("pointerup",x,!0)):(o.addEventListener("mousedown",x,!0),o.addEventListener("mousemove",x,!0),o.addEventListener("mouseup",x,!0)),t.addEventListener("beforeunload",()=>{ze(e)},{once:!0}),A.set(t,{focus:r})}const ze=(e,t)=>{const o=U(e),r=M(e);t&&r.removeEventListener("DOMContentLoaded",t),A.has(o)&&(o.HTMLElement.prototype.focus=A.get(o).focus,r.removeEventListener("keydown",G,!0),r.removeEventListener("keyup",G,!0),r.removeEventListener("click",We,!0),o.removeEventListener("focus",Ae,!0),o.removeEventListener("blur",Ie,!1),typeof PointerEvent<"u"?(r.removeEventListener("pointerdown",x,!0),r.removeEventListener("pointermove",x,!0),r.removeEventListener("pointerup",x,!0)):(r.removeEventListener("mousedown",x,!0),r.removeEventListener("mousemove",x,!0),r.removeEventListener("mouseup",x,!0)),A.delete(o))};function zt(e){const t=M(e);let o;return t.readyState!=="loading"?ye(e):(o=()=>{ye(e)},t.addEventListener("DOMContentLoaded",o)),()=>ze(e,o)}typeof document<"u"&&zt();function qt(){return z}function _t(e){let{isDisabled:t,onBlurWithin:o,onFocusWithin:r,onFocusWithinChange:n}=e,l=m.useRef({isFocusWithin:!1}),a=m.useCallback(d=>{l.current.isFocusWithin&&!d.currentTarget.contains(d.relatedTarget)&&(l.current.isFocusWithin=!1,o&&o(d),n&&n(!1))},[o,n,l]),s=Wt(a),c=m.useCallback(d=>{!l.current.isFocusWithin&&document.activeElement===d.target&&(r&&r(d),n&&n(!0),l.current.isFocusWithin=!0,s(d))},[r,n,s]);return t?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:c,onBlur:a}}}function Ht(e){let{ref:t,onInteractOutside:o,isDisabled:r,onInteractOutsideStart:n}=e,l=m.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}),a=I(c=>{o&&_(c,t)&&(n&&n(c),l.current.isPointerDown=!0)}),s=I(c=>{o&&o(c)});m.useEffect(()=>{let c=l.current;if(r)return;const d=t.current,i=M(d);if(typeof PointerEvent<"u"){let p=f=>{c.isPointerDown&&_(f,t)&&s(f),c.isPointerDown=!1};return i.addEventListener("pointerdown",a,!0),i.addEventListener("pointerup",p,!0),()=>{i.removeEventListener("pointerdown",a,!0),i.removeEventListener("pointerup",p,!0)}}else{let p=b=>{c.ignoreEmulatedMouseEvents?c.ignoreEmulatedMouseEvents=!1:c.isPointerDown&&_(b,t)&&s(b),c.isPointerDown=!1},f=b=>{c.ignoreEmulatedMouseEvents=!0,c.isPointerDown&&_(b,t)&&s(b),c.isPointerDown=!1};return i.addEventListener("mousedown",a,!0),i.addEventListener("mouseup",p,!0),i.addEventListener("touchstart",a,!0),i.addEventListener("touchend",f,!0),()=>{i.removeEventListener("mousedown",a,!0),i.removeEventListener("mouseup",p,!0),i.removeEventListener("touchstart",a,!0),i.removeEventListener("touchend",f,!0)}}},[t,r,a,s])}function _(e,t){if(e.button>0)return!1;if(e.target){const o=e.target.ownerDocument;if(!o||!o.documentElement.contains(e.target)||e.target.closest("[data-react-aria-top-layer]"))return!1}return t.current&&!t.current.contains(e.target)}function ie(e){const t=M(e);if(qt()==="virtual"){let o=t.activeElement;Nt(()=>{t.activeElement===o&&e.isConnected&&we(e)})}else we(e)}function Vt(e){const t=U(e);if(!(e instanceof t.HTMLElement)&&!(e instanceof t.SVGElement))return!1;let{display:o,visibility:r}=e.style,n=o!=="none"&&r!=="hidden"&&r!=="collapse";if(n){const{getComputedStyle:l}=e.ownerDocument.defaultView;let{display:a,visibility:s}=l(e);n=a!=="none"&&s!=="hidden"&&s!=="collapse"}return n}function jt(e,t){return!e.hasAttribute("hidden")&&(e.nodeName==="DETAILS"&&t&&t.nodeName!=="SUMMARY"?e.hasAttribute("open"):!0)}function qe(e,t){return e.nodeName!=="#comment"&&Vt(e)&&jt(e,t)&&(!e.parentElement||qe(e.parentElement,e))}const Pe=w.default.createContext(null);let $=null;function Kt(e){let{children:t,contain:o,restoreFocus:r,autoFocus:n}=e,l=m.useRef(null),a=m.useRef(null),s=m.useRef([]),{parentNode:c}=m.useContext(Pe)||{},d=m.useMemo(()=>new se({scopeRef:s}),[s]);E(()=>{let f=c||h.root;if(h.getTreeNode(f.scopeRef)&&$&&!J($,f.scopeRef)){let b=h.getTreeNode($);b&&(f=b)}f.addChild(d),h.addNode(d)},[d,c]),E(()=>{let f=h.getTreeNode(s);f&&(f.contain=!!o)},[o]),E(()=>{var f;let b=(f=l.current)===null||f===void 0?void 0:f.nextSibling,g=[];for(;b&&b!==a.current;)g.push(b),b=b.nextSibling;s.current=g},[t]),Zt(s,r,o),Jt(s,o),to(s,r,o),Qt(s,n),m.useEffect(()=>{const f=M(s.current?s.current[0]:void 0).activeElement;let b=null;if(y(f,s.current)){for(let g of h.traverse())g.scopeRef&&y(f,g.scopeRef.current)&&(b=g);b===h.getTreeNode(s)&&($=b.scopeRef)}},[s]),E(()=>()=>{var f,b,g;let T=(g=(b=h.getTreeNode(s))===null||b===void 0||(f=b.parent)===null||f===void 0?void 0:f.scopeRef)!==null&&g!==void 0?g:null;(s===$||J(s,$))&&(!T||h.getTreeNode(T))&&($=T),h.removeTreeNode(s)},[s]);let i=m.useMemo(()=>Ut(s),[]),p=m.useMemo(()=>({focusManager:i,parentNode:d}),[d,i]);return w.default.createElement(Pe.Provider,{value:p},w.default.createElement("span",{"data-focus-scope-start":!0,hidden:!0,ref:l}),t,w.default.createElement("span",{"data-focus-scope-end":!0,hidden:!0,ref:a}))}function Ut(e){return{focusNext(t={}){let o=e.current,{from:r,tabbable:n,wrap:l,accept:a}=t,s=r||M(o[0]).activeElement,c=o[0].previousElementSibling,d=C(o),i=L(d,{tabbable:n,accept:a},o);i.currentNode=y(s,o)?s:c;let p=i.nextNode();return!p&&l&&(i.currentNode=c,p=i.nextNode()),p&&F(p,!0),p},focusPrevious(t={}){let o=e.current,{from:r,tabbable:n,wrap:l,accept:a}=t,s=r||M(o[0]).activeElement,c=o[o.length-1].nextElementSibling,d=C(o),i=L(d,{tabbable:n,accept:a},o);i.currentNode=y(s,o)?s:c;let p=i.previousNode();return!p&&l&&(i.currentNode=c,p=i.previousNode()),p&&F(p,!0),p},focusFirst(t={}){let o=e.current,{tabbable:r,accept:n}=t,l=C(o),a=L(l,{tabbable:r,accept:n},o);a.currentNode=o[0].previousElementSibling;let s=a.nextNode();return s&&F(s,!0),s},focusLast(t={}){let o=e.current,{tabbable:r,accept:n}=t,l=C(o),a=L(l,{tabbable:r,accept:n},o);a.currentNode=o[o.length-1].nextElementSibling;let s=a.previousNode();return s&&F(s,!0),s}}}const me=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[contenteditable]"],Gt=me.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";me.push('[tabindex]:not([tabindex="-1"]):not([disabled])');const Xt=me.join(':not([hidden]):not([tabindex="-1"]),');function C(e){return e[0].parentElement}function W(e){let t=h.getTreeNode($);for(;t&&t.scopeRef!==e;){if(t.contain)return!1;t=t.parent}return!0}function Jt(e,t){let o=m.useRef(),r=m.useRef();E(()=>{let n=e.current;if(!t){r.current&&(cancelAnimationFrame(r.current),r.current=void 0);return}const l=M(n?n[0]:void 0);let a=d=>{if(d.key!=="Tab"||d.altKey||d.ctrlKey||d.metaKey||!W(e))return;let i=l.activeElement,p=e.current;if(!p||!y(i,p))return;let f=C(p),b=L(f,{tabbable:!0},p);if(!i)return;b.currentNode=i;let g=d.shiftKey?b.previousNode():b.nextNode();g||(b.currentNode=d.shiftKey?p[p.length-1].nextElementSibling:p[0].previousElementSibling,g=d.shiftKey?b.previousNode():b.nextNode()),d.preventDefault(),g&&F(g,!0)},s=d=>{(!$||J($,e))&&y(d.target,e.current)?($=e,o.current=d.target):W(e)&&!X(d.target,e)?o.current?o.current.focus():$&&$.current&&Y($.current):W(e)&&(o.current=d.target)},c=d=>{r.current&&cancelAnimationFrame(r.current),r.current=requestAnimationFrame(()=>{if(l.activeElement&&W(e)&&!X(l.activeElement,e))if($=e,l.body.contains(d.target)){var i;o.current=d.target,(i=o.current)===null||i===void 0||i.focus()}else $.current&&Y($.current)})};return l.addEventListener("keydown",a,!1),l.addEventListener("focusin",s,!1),n==null||n.forEach(d=>d.addEventListener("focusin",s,!1)),n==null||n.forEach(d=>d.addEventListener("focusout",c,!1)),()=>{l.removeEventListener("keydown",a,!1),l.removeEventListener("focusin",s,!1),n==null||n.forEach(d=>d.removeEventListener("focusin",s,!1)),n==null||n.forEach(d=>d.removeEventListener("focusout",c,!1))}},[e,t]),E(()=>()=>{r.current&&cancelAnimationFrame(r.current)},[r])}function _e(e){return X(e)}function y(e,t){return!e||!t?!1:t.some(o=>o.contains(e))}function X(e,t=null){if(e instanceof Element&&e.closest("[data-react-aria-top-layer]"))return!0;for(let{scopeRef:o}of h.traverse(h.getTreeNode(t)))if(o&&y(e,o.current))return!0;return!1}function Yt(e){return X(e,$)}function J(e,t){var o;let r=(o=h.getTreeNode(t))===null||o===void 0?void 0:o.parent;for(;r;){if(r.scopeRef===e)return!0;r=r.parent}return!1}function F(e,t=!1){if(e!=null&&!t)try{ie(e)}catch{}else if(e!=null)try{e.focus()}catch{}}function Y(e,t=!0){let o=e[0].previousElementSibling,r=C(e),n=L(r,{tabbable:t},e);n.currentNode=o;let l=n.nextNode();t&&!l&&(r=C(e),n=L(r,{tabbable:!1},e),n.currentNode=o,l=n.nextNode()),F(l)}function Qt(e,t){const o=w.default.useRef(t);m.useEffect(()=>{if(o.current){$=e;const r=M(e.current?e.current[0]:void 0);!y(r.activeElement,$.current)&&e.current&&Y(e.current)}o.current=!1},[e])}function Zt(e,t,o){E(()=>{if(t||o)return;let r=e.current;const n=M(r?r[0]:void 0);let l=a=>{let s=a.target;y(s,e.current)?$=e:_e(s)||($=null)};return n.addEventListener("focusin",l,!1),r==null||r.forEach(a=>a.addEventListener("focusin",l,!1)),()=>{n.removeEventListener("focusin",l,!1),r==null||r.forEach(a=>a.removeEventListener("focusin",l,!1))}},[e,t,o])}function eo(e){let t=h.getTreeNode($);for(;t&&t.scopeRef!==e;){if(t.nodeToRestore)return!1;t=t.parent}return(t==null?void 0:t.scopeRef)===e}function to(e,t,o){const r=m.useRef(typeof document<"u"?M(e.current?e.current[0]:void 0).activeElement:null);E(()=>{let n=e.current;const l=M(n?n[0]:void 0);if(!t||o)return;let a=()=>{(!$||J($,e))&&y(l.activeElement,e.current)&&($=e)};return l.addEventListener("focusin",a,!1),n==null||n.forEach(s=>s.addEventListener("focusin",a,!1)),()=>{l.removeEventListener("focusin",a,!1),n==null||n.forEach(s=>s.removeEventListener("focusin",a,!1))}},[e,o]),E(()=>{const n=M(e.current?e.current[0]:void 0);if(!t)return;let l=a=>{if(a.key!=="Tab"||a.altKey||a.ctrlKey||a.metaKey||!W(e))return;let s=n.activeElement;if(!y(s,e.current))return;let c=h.getTreeNode(e);if(!c)return;let d=c.nodeToRestore,i=L(n.body,{tabbable:!0});i.currentNode=s;let p=a.shiftKey?i.previousNode():i.nextNode();if((!d||!n.body.contains(d)||d===n.body)&&(d=void 0,c.nodeToRestore=void 0),(!p||!y(p,e.current))&&d){i.currentNode=d;do p=a.shiftKey?i.previousNode():i.nextNode();while(y(p,e.current));a.preventDefault(),a.stopPropagation(),p?F(p,!0):_e(d)?F(d,!0):s.blur()}};return o||n.addEventListener("keydown",l,!0),()=>{o||n.removeEventListener("keydown",l,!0)}},[e,t,o]),E(()=>{const n=M(e.current?e.current[0]:void 0);if(!t)return;let l=h.getTreeNode(e);if(!!l){var a;return l.nodeToRestore=(a=r.current)!==null&&a!==void 0?a:void 0,()=>{let s=h.getTreeNode(e);if(!s)return;let c=s.nodeToRestore;if(t&&c&&(y(n.activeElement,e.current)||n.activeElement===n.body&&eo(e))){let d=h.clone();requestAnimationFrame(()=>{if(n.activeElement===n.body){let i=d.getTreeNode(e);for(;i;){if(i.nodeToRestore&&i.nodeToRestore.isConnected){F(i.nodeToRestore);return}i=i.parent}for(i=d.getTreeNode(e);i;){if(i.scopeRef&&i.scopeRef.current&&h.getTreeNode(i.scopeRef)){Y(i.scopeRef.current,!0);return}i=i.parent}}})}}}},[e,t])}function L(e,t,o){let r=t!=null&&t.tabbable?Xt:Gt,n=M(e).createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode(l){var a;return!(t==null||(a=t.from)===null||a===void 0)&&a.contains(l)?NodeFilter.FILTER_REJECT:l.matches(r)&&qe(l)&&(!o||y(l,o))&&(!(t!=null&&t.accept)||t.accept(l))?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t!=null&&t.from&&(n.currentNode=t.from),n}class fe{get size(){return this.fastMap.size}getTreeNode(t){return this.fastMap.get(t)}addTreeNode(t,o,r){let n=this.fastMap.get(o!=null?o:null);if(!n)return;let l=new se({scopeRef:t});n.addChild(l),l.parent=n,this.fastMap.set(t,l),r&&(l.nodeToRestore=r)}addNode(t){this.fastMap.set(t.scopeRef,t)}removeTreeNode(t){if(t===null)return;let o=this.fastMap.get(t);if(!o)return;let r=o.parent;for(let l of this.traverse())l!==o&&o.nodeToRestore&&l.nodeToRestore&&o.scopeRef&&o.scopeRef.current&&y(l.nodeToRestore,o.scopeRef.current)&&(l.nodeToRestore=o.nodeToRestore);let n=o.children;r&&(r.removeChild(o),n.size>0&&n.forEach(l=>r&&r.addChild(l))),this.fastMap.delete(o.scopeRef)}*traverse(t=this.root){if(t.scopeRef!=null&&(yield t),t.children.size>0)for(let o of t.children)yield*this.traverse(o)}clone(){var t;let o=new fe;var r;for(let n of this.traverse())o.addTreeNode(n.scopeRef,(r=(t=n.parent)===null||t===void 0?void 0:t.scopeRef)!==null&&r!==void 0?r:null,n.nodeToRestore);return o}constructor(){this.fastMap=new Map,this.root=new se({scopeRef:null}),this.fastMap.set(null,this.root)}}class se{addChild(t){this.children.add(t),t.parent=this}removeChild(t){this.children.delete(t),t.parent=void 0}constructor(t){this.children=new Set,this.contain=!1,this.scopeRef=t.scopeRef}}let h=new fe;const oo=new WeakMap,S=[];function ro(e,t){let{onClose:o,shouldCloseOnBlur:r,isOpen:n,isDismissable:l=!1,isKeyboardDismissDisabled:a=!1,shouldCloseOnInteractOutside:s}=e;m.useEffect(()=>(n&&S.push(t),()=>{let g=S.indexOf(t);g>=0&&S.splice(g,1)}),[n,t]);let c=()=>{S[S.length-1]===t&&o&&o()},d=g=>{(!s||s(g.target))&&S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault())},i=g=>{(!s||s(g.target))&&(S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault()),c())},p=g=>{g.key==="Escape"&&!a&&(g.stopPropagation(),g.preventDefault(),c())};Ht({ref:t,onInteractOutside:l&&n?i:null,onInteractOutsideStart:d});let{focusWithinProps:f}=_t({isDisabled:!r,onBlurWithin:g=>{!g.relatedTarget||Yt(g.relatedTarget)||(!s||s(g.relatedTarget))&&o()}}),b=g=>{g.target===g.currentTarget&&g.preventDefault()};return{overlayProps:{onKeyDown:p,...f},underlayProps:{onPointerDown:b}}}function no(e,t,o){let{type:r}=e,{isOpen:n}=t;m.useEffect(()=>{o&&o.current&&oo.set(o.current,t.close)});let l;r==="menu"?l=!0:r==="listbox"&&(l="listbox");let a=Ne();return{triggerProps:{"aria-haspopup":l,"aria-expanded":n,"aria-controls":n?a:null,onPress:t.toggle},overlayProps:{id:a}}}const re=typeof document<"u"&&window.visualViewport,ao=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let H=0,ne;function lo(e={}){let{isDisabled:t}=e;E(()=>{if(!t)return H++,H===1&&(Ct()?ne=so():ne=io()),()=>{H--,H===0&&ne()}},[t])}function io(){return K(O(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),O(document.documentElement,"overflow","hidden"))}function so(){let e,t,o=d=>{e=De(d.target,!0),!(e===document.documentElement&&e===document.body)&&e instanceof HTMLElement&&window.getComputedStyle(e).overscrollBehavior==="auto"&&(t=O(e,"overscrollBehavior","contain"))},r=d=>{if(!e||e===document.documentElement||e===document.body){d.preventDefault();return}e.scrollHeight===e.clientHeight&&e.scrollWidth===e.clientWidth&&d.preventDefault()},n=d=>{let i=d.target;xe(i)&&i!==document.activeElement&&(d.preventDefault(),s(),i.style.transform="translateY(-2000px)",i.focus(),requestAnimationFrame(()=>{i.style.transform=""})),t&&t()},l=d=>{let i=d.target;xe(i)&&(s(),i.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{i.style.transform="",re&&(re.height<window.innerHeight?requestAnimationFrame(()=>{ke(i)}):re.addEventListener("resize",()=>ke(i),{once:!0}))}))},a=null,s=()=>{if(a)return;let d=()=>{window.scrollTo(0,0)},i=window.pageXOffset,p=window.pageYOffset;a=K(D(window,"scroll",d),O(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),O(document.documentElement,"overflow","hidden"),O(document.body,"marginTop",`-${p}px`),()=>{window.scrollTo(i,p)}),window.scrollTo(0,0)},c=K(D(document,"touchstart",o,{passive:!1,capture:!0}),D(document,"touchmove",r,{passive:!1,capture:!0}),D(document,"touchend",n,{passive:!1,capture:!0}),D(document,"focus",l,!0));return()=>{t==null||t(),a==null||a(),c()}}function O(e,t,o){let r=e.style[t];return e.style[t]=o,()=>{e.style[t]=r}}function D(e,t,o,r){return e.addEventListener(t,o,r),()=>{e.removeEventListener(t,o,r)}}function ke(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let o=De(e);if(o!==document.documentElement&&o!==document.body&&o!==e){let r=o.getBoundingClientRect().top,n=e.getBoundingClientRect().top;n>r+e.clientHeight&&(o.scrollTop+=n-r)}e=o.parentElement}}function xe(e){return e instanceof HTMLInputElement&&!ao.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}let R=new WeakMap,k=[];function uo(e,t=document.body){let o=new Set(e),r=new Set,n=c=>{for(let f of c.querySelectorAll("[data-live-announcer], [data-react-aria-top-layer]"))o.add(f);let d=f=>{if(o.has(f)||r.has(f.parentElement)&&f.parentElement.getAttribute("role")!=="row")return NodeFilter.FILTER_REJECT;for(let b of o)if(f.contains(b))return NodeFilter.FILTER_SKIP;return NodeFilter.FILTER_ACCEPT},i=document.createTreeWalker(c,NodeFilter.SHOW_ELEMENT,{acceptNode:d}),p=d(c);if(p===NodeFilter.FILTER_ACCEPT&&l(c),p!==NodeFilter.FILTER_REJECT){let f=i.nextNode();for(;f!=null;)l(f),f=i.nextNode()}},l=c=>{var d;let i=(d=R.get(c))!==null&&d!==void 0?d:0;c.getAttribute("aria-hidden")==="true"&&i===0||(i===0&&c.setAttribute("aria-hidden","true"),r.add(c),R.set(c,i+1))};k.length&&k[k.length-1].disconnect(),n(t);let a=new MutationObserver(c=>{for(let d of c)if(!(d.type!=="childList"||d.addedNodes.length===0)&&![...o,...r].some(i=>i.contains(d.target))){for(let i of d.removedNodes)i instanceof Element&&(o.delete(i),r.delete(i));for(let i of d.addedNodes)(i instanceof HTMLElement||i instanceof SVGElement)&&(i.dataset.liveAnnouncer==="true"||i.dataset.reactAriaTopLayer==="true")?o.add(i):i instanceof Element&&n(i)}});a.observe(t,{childList:!0,subtree:!0});let s={observe(){a.observe(t,{childList:!0,subtree:!0})},disconnect(){a.disconnect()}};return k.push(s),()=>{a.disconnect();for(let c of r){let d=R.get(c);d===1?(c.removeAttribute("aria-hidden"),R.delete(c)):R.set(c,d-1)}s===k[k.length-1]?(k.pop(),k.length&&k[k.length-1].observe()):k.splice(k.indexOf(s),1)}}const He=w.default.createContext(null);function co(e){let t=Ce(),{portalContainer:o=t?null:document.body,isExiting:r}=e,[n,l]=m.useState(!1),a=m.useMemo(()=>({contain:n,setContain:l}),[n,l]);if(!o)return null;let s=e.children;return e.disableFocusManagement||(s=w.default.createElement(Kt,{restoreFocus:!0,contain:n&&!r},s)),s=w.default.createElement(He.Provider,{value:a},w.default.createElement(Dt,null,s)),rt.default.createPortal(s,o)}function Ve(){let e=m.useContext(He),t=e==null?void 0:e.setContain;E(()=>{t==null||t(!0)},[t])}function mo(e,t,o){let{overlayProps:r,underlayProps:n}=ro({...e,isOpen:t.isOpen,onClose:t.close},o);return lo({isDisabled:!t.isOpen}),Ve(),m.useEffect(()=>{if(t.isOpen)return uo([o.current])},[t.isOpen,o]),{modalProps:ht(r),underlayProps:n}}function fo(e,t){let{role:o="dialog"}=e,r=$t();r=e["aria-label"]?void 0:r;let n=m.useRef(!1);return m.useEffect(()=>{if(t.current&&!t.current.contains(document.activeElement)){ie(t.current);let l=setTimeout(()=>{document.activeElement===t.current&&(n.current=!0,t.current&&(t.current.blur(),ie(t.current)),n.current=!1)},500);return()=>{clearTimeout(l)}}},[t]),Ve(),{dialogProps:{...Pt(e,{labelable:!0}),role:o,tabIndex:-1,"aria-labelledby":e["aria-labelledby"]||r,onBlur:l=>{n.current&&l.stopPropagation()}},titleProps:{id:r}}}function po(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function Te(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),o.push.apply(o,r)}return o}function Se(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?Te(Object(o),!0).forEach(function(r){po(e,r,o[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):Te(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}var go=(e,t,o)=>{for(var r of Object.keys(e)){var n;if(e[r]!==((n=t[r])!==null&&n!==void 0?n:o[r]))return!1}return!0},je=e=>t=>{var o=e.defaultClassName,r=Se(Se({},e.defaultVariants),t);for(var n in r){var l,a=(l=r[n])!==null&&l!==void 0?l:e.defaultVariants[n];if(a!=null){var s=a;typeof s=="boolean"&&(s=s===!0?"true":"false");var c=e.variantClassNames[n][s];c&&(o+=" "+c)}}for(var[d,i]of e.compoundVariants)go(d,r,e.defaultVariants)&&(o+=" "+i);return o},bo="_3moto2o",vo="_3moto2q",$o="_3moto2r",Ke="_3moto2p",ho=je({defaultClassName:"_3moto20",variantClassNames:{kind:{informational:"_3moto21",delete:"_3moto22",failure:"_3moto23",success:"_3moto24",warning:"_3moto25",successWithFailures:"_3moto26",form:"_3moto27"},size:{sm:"_3moto28",md:"_3moto29",lg:"_3moto2a",xl:"_3moto2b"},fullHeight:{true:"_3moto2c",false:"_3moto2d"}},defaultVariants:{},compoundVariants:[]}),wo="_3moto2n",Eo=je({defaultClassName:"_3moto2e",variantClassNames:{kind:{form:"_3moto2f",delete:"_3moto2g",failure:"_3moto2h",informational:"_3moto2i",success:"_3moto2j",warning:"_3moto2k",successWithFailures:"_3moto2l"}},defaultVariants:{},compoundVariants:[]}),Mo="_3moto2m",yo="_3moto2s";function pe({children:e,className:t="",...o}){return u.createElement("div",{className:P.cl(Ke,t),...o},e)}P.Metadata.set(pe,{name:"ModalFooter"});const de=Object.freeze({form:"pencil",delete:"trash",failure:"status-error",informational:"info-circle",success:"status-ok",successWithFailures:"status-warning",warning:"status-warning"});function Po({children:e,className:t,"data-testid":o,kind:r="informational",onBlur:n,onFocus:l,overlayProps:a,size:s="sm",state:c,title:d,dismissible:i,dismissable:p=!0,onClose:f,fullHeight:b=!1,...g}){const T=i!=null?i:p,Q=u.useRef(null),{modalProps:Z,underlayProps:Ue}=mo({isDismissable:T,isKeyboardDismissDisabled:!T,...g},c,Q),{dialogProps:ee,titleProps:Ge}=fo(g,Q),Xe=P.combineEventHandlers(Z.onFocus,ee.onFocus,l),Je=P.combineEventHandlers(Z.onBlur,ee.onBlur,n),{t:Ye}=u.useContext(P.I18nContext),Qe=P.useChildTestIdAttrBuilder({"data-testid":o}),[te,Ze]=P.selectChildren(e,[{type:pe}]);function be(){f&&typeof f=="function"&&f(),c.close()}const ve=function(){return T?u.createElement(he.Button,{"aria-label":"Close",onClick:be,kind:"icon",icon:"x",className:vo}):null},et=P.modChildren(Ze,$e=>$e.type===ve?[{className:P.cl($e.props.classname,$o)}]:[]);return u.createElement(co,null,u.createElement("div",{className:yo,...Ue,...g},u.createElement("div",{...Z,...ee,...a,onFocus:Xe,onBlur:Je,...Qe("dialog"),ref:Q,className:P.cl(ho({kind:r,size:s,fullHeight:b}),t)},u.createElement("div",{...Ge,className:Eo({kind:r})},r&&u.createElement(P.Icon,{icon:de[r]||de.informational,className:wo}),u.createElement("div",{className:Mo},P.contentOf(d,c.close)),u.createElement(ve,null)),u.createElement("div",{className:bo},P.contentOf(et,c.close)),te&&te.length>0?u.createElement(u.Fragment,null,P.contentOf(te,c.close)):u.createElement("div",{className:Ke},u.createElement(he.Button,{kind:"key",onClick:be},Ye("design-system:modal.defaultButtonLabel"))))))}function ge(e){return e.state.isOpen?u.createElement(Po,{...e},e.children):u.createElement(u.Fragment,null)}P.Metadata.set(ge,{name:"Modal",props:{dismissable:{type:"boolean",default:"true"},fullHeight:{type:"boolean",default:"false"},kind:{type:"ModalKind",default:"informational"},onBlur:{type:"() => void"},onClose:{type:"() => void"},onFocus:{type:"() => void"},size:{type:"ModalSize",default:"sm"},title:{type:"string"}}});function ko(e){let[t,o]=nt(e.isOpen,e.defaultOpen||!1,e.onOpenChange);const r=m.useCallback(()=>{o(!0)},[o]),n=m.useCallback(()=>{o(!1)},[o]),l=m.useCallback(()=>{o(!t)},[o,t]);return{isOpen:t,setOpen:o,open:r,close:n,toggle:l}}function xo(e={}){const t=ko(e),o=m.useRef(null),{triggerProps:r,overlayProps:n}=no({type:"dialog"},t,o),{onPress:l,...a}=r;return{triggerProps:{...a,onClick:l,ref:o},modalState:t,modalProps:{overlayProps:n,state:t}}}const To={description:()=>u.createElement("p",null,"Modals are overlays on a page that focus a user\u2019s attention on an important message or a simple action. Examples of a Modal include confirming the deletion of a record, or making a single selection."),components:[ge],examples:{general:{label:"Usage",description:({NavigateTo:e})=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Use a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When the user needs to confirm a basic decision, such as deleting a record."),u.createElement("li",null,"When important information needs to be displayed to the user before continuing."),u.createElement("li",null,"When a simple selection, such as a single form input, is required before proceeding.")),u.createElement("h5",null,"Avoid a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When a complex form is required. Use a ",u.createElement(e,{to:"focused-task"},"Focused Task View")," instead."),u.createElement("li",null,"When sharing non-critical or tertiary information. Use a ",u.createElement(e,{to:"growlers"},"Growler")," instead.")))},implementation:{label:"Close Button",description:()=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Close Button and Modal dismissiability"),u.createElement("p",null,"Remove the Close Button in the upper right of the Modal if the user must choose the course of action before proceeding."),u.createElement("p",null,"The close button is included by default and omitted when the prop ",u.createElement("code",null,"dismissable")," is set to ",u.createElement("strong",null,"false"),"."),u.createElement("p",null,"Setting the ",u.createElement("code",null,"dismissable")," prop to false also prevents dismissing the modal by clicking outside of the modal or by using the"," ",u.createElement("strong",null,"escape")," key.")),examples:{basic:{react:v.code`
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const P=require("@sps-woodland/core"),he=require("@sps-woodland/buttons"),m=require("react"),tt=require("react-dom"),v=require("@spscommerce/utils"),Fe=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function ot(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const w=Fe(m),u=ot(m),rt=Fe(tt);function nt(e,t,o){let[r,n]=m.useState(e||t),l=m.useRef(e!==void 0),a=e!==void 0;m.useEffect(()=>{let d=l.current;d!==a&&console.warn(`WARN: A component changed from ${d?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}.`),l.current=a},[a]);let s=a?e:r,c=m.useCallback((d,...i)=>{let p=(f,...b)=>{o&&(Object.is(s,f)||o(f,...b)),a||(s=f)};typeof d=="function"?(console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"),n((b,...g)=>{let T=d(a?s:b,...g);return p(T,...i),a?b:T})):(a||n(d),p(d,...i))},[a,s,o]);return[s,c]}const V={prefix:String(Math.round(Math.random()*1e10)),current:0},Le=w.default.createContext(V),at=w.default.createContext(!1);let lt=Boolean(typeof window<"u"&&window.document&&window.document.createElement),oe=new WeakMap;function it(e=!1){let t=m.useContext(Le),o=m.useRef(null);if(o.current===null&&!e){var r,n;let l=(n=w.default.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)===null||n===void 0||(r=n.ReactCurrentOwner)===null||r===void 0?void 0:r.current;if(l){let a=oe.get(l);a==null?oe.set(l,{id:t.current,state:l.memoizedState}):l.memoizedState!==a.state&&(t.current=a.id,oe.delete(l))}o.current=++t.current}return o.current}function st(e){let t=m.useContext(Le);t===V&&!lt&&console.warn("When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.");let o=it(!!e),r=t===V&&process.env.NODE_ENV==="test"?"react-aria":`react-aria${t.prefix}`;return e||`${r}-${o}`}function dt(e){let t=w.default.useId(),[o]=m.useState(Ce()),r=o||process.env.NODE_ENV==="test"?"react-aria":`react-aria${V.prefix}`;return e||`${r}-${t}`}const ut=typeof w.default.useId=="function"?dt:st;function ct(){return!1}function mt(){return!0}function ft(e){return()=>{}}function Ce(){return typeof w.default.useSyncExternalStore=="function"?w.default.useSyncExternalStore(ft,ct,mt):m.useContext(at)}function Be(e){var t,o,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(o=Be(e[t]))&&(r&&(r+=" "),r+=o)}else for(o in e)e[o]&&(r&&(r+=" "),r+=o);return r}function pt(){for(var e,t,o=0,r="",n=arguments.length;o<n;o++)(e=arguments[o])&&(t=Be(e))&&(r&&(r+=" "),r+=t);return r}const E=typeof document<"u"?w.default.useLayoutEffect:()=>{};function I(e){const t=m.useRef(null);return E(()=>{t.current=e},[e]),m.useCallback((...o)=>{const r=t.current;return r==null?void 0:r(...o)},[])}function gt(e){let[t,o]=m.useState(e),r=m.useRef(null),n=I(()=>{if(!r.current)return;let a=r.current.next();if(a.done){r.current=null;return}t===a.value?n():o(a.value)});E(()=>{r.current&&n()});let l=I(a=>{r.current=a(t),n()});return[t,l]}let bt=Boolean(typeof window<"u"&&window.document&&window.document.createElement),j=new Map;function Ne(e){let[t,o]=m.useState(e),r=m.useRef(null),n=ut(t),l=m.useCallback(a=>{r.current=a},[]);return bt&&j.set(n,l),E(()=>{let a=n;return()=>{j.delete(a)}},[n]),m.useEffect(()=>{let a=r.current;a&&(r.current=null,o(a))}),n}function vt(e,t){if(e===t)return e;let o=j.get(e);if(o)return o(t),t;let r=j.get(t);return r?(r(e),e):t}function $t(e=[]){let t=Ne(),[o,r]=gt(t),n=m.useCallback(()=>{r(function*(){yield t,yield document.getElementById(t)?t:void 0})},[t,r]);return E(n,[t,n,...e]),o}function K(...e){return(...t)=>{for(let o of e)typeof o=="function"&&o(...t)}}const M=e=>{var t;return(t=e==null?void 0:e.ownerDocument)!==null&&t!==void 0?t:document},U=e=>e&&"window"in e&&e.window===e?e:M(e).defaultView||window;function ht(...e){let t={...e[0]};for(let o=1;o<e.length;o++){let r=e[o];for(let n in r){let l=t[n],a=r[n];typeof l=="function"&&typeof a=="function"&&n[0]==="o"&&n[1]==="n"&&n.charCodeAt(2)>=65&&n.charCodeAt(2)<=90?t[n]=K(l,a):(n==="className"||n==="UNSAFE_className")&&typeof l=="string"&&typeof a=="string"?t[n]=pt(l,a):n==="id"&&l&&a?t.id=vt(l,a):t[n]=a!==void 0?a:l}}return t}const wt=new Set(["id"]),Et=new Set(["aria-label","aria-labelledby","aria-describedby","aria-details"]),Mt=new Set(["href","target","rel","download","ping","referrerPolicy"]),yt=/^(data-.*)$/;function Pt(e,t={}){let{labelable:o,isLink:r,propNames:n}=t,l={};for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(wt.has(a)||o&&Et.has(a)||r&&Mt.has(a)||(n==null?void 0:n.has(a))||yt.test(a))&&(l[a]=e[a]);return l}function we(e){if(kt())e.focus({preventScroll:!0});else{let t=xt(e);e.focus(),Tt(t)}}let q=null;function kt(){if(q==null){q=!1;try{document.createElement("div").focus({get preventScroll(){return q=!0,!0}})}catch{}}return q}function xt(e){let t=e.parentNode,o=[],r=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==r;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&o.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return r instanceof HTMLElement&&o.push({element:r,scrollTop:r.scrollTop,scrollLeft:r.scrollLeft}),o}function Tt(e){for(let{element:t,scrollTop:o,scrollLeft:r}of e)t.scrollTop=o,t.scrollLeft=r}function St(e){var t;return typeof window>"u"||window.navigator==null?!1:((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.brands.some(o=>e.test(o.brand)))||e.test(window.navigator.userAgent)}function ue(e){var t;return typeof window<"u"&&window.navigator!=null?e.test(((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.platform)||window.navigator.platform):!1}function Oe(){return ue(/^Mac/i)}function Ft(){return ue(/^iPhone/i)}function Lt(){return ue(/^iPad/i)||Oe()&&navigator.maxTouchPoints>1}function Ct(){return Ft()||Lt()}function Bt(){return St(/Android/i)}let N=new Map,ae=new Set;function Ee(){if(typeof window>"u")return;function e(r){return"propertyName"in r}let t=r=>{if(!e(r)||!r.target)return;let n=N.get(r.target);n||(n=new Set,N.set(r.target,n),r.target.addEventListener("transitioncancel",o,{once:!0})),n.add(r.propertyName)},o=r=>{if(!e(r)||!r.target)return;let n=N.get(r.target);if(!!n&&(n.delete(r.propertyName),n.size===0&&(r.target.removeEventListener("transitioncancel",o),N.delete(r.target)),N.size===0)){for(let l of ae)l();ae.clear()}};document.body.addEventListener("transitionrun",t),document.body.addEventListener("transitionend",o)}typeof document<"u"&&(document.readyState!=="loading"?Ee():document.addEventListener("DOMContentLoaded",Ee));function Nt(e){requestAnimationFrame(()=>{N.size===0?e():ae.add(e)})}function De(e,t){let o=e;for(Me(o,t)&&(o=o.parentElement);o&&!Me(o,t);)o=o.parentElement;return o||document.scrollingElement||document.documentElement}function Me(e,t){let o=window.getComputedStyle(e),r=/(auto|scroll)/.test(o.overflow+o.overflowX+o.overflowY);return r&&t&&(r=e.scrollHeight!==e.clientHeight||e.scrollWidth!==e.clientWidth),r}function Ot(e){return e.mozInputSource===0&&e.isTrusted?!0:Bt()&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}const Re=w.default.createContext({register:()=>{}});Re.displayName="PressResponderContext";function Dt({children:e}){let t=m.useMemo(()=>({register:()=>{}}),[]);return w.default.createElement(Re.Provider,{value:t},e)}class Rt{isDefaultPrevented(){return this.nativeEvent.defaultPrevented}preventDefault(){this.defaultPrevented=!0,this.nativeEvent.preventDefault()}stopPropagation(){this.nativeEvent.stopPropagation(),this.isPropagationStopped=()=>!0}isPropagationStopped(){return!1}persist(){}constructor(t,o){this.nativeEvent=o,this.target=o.target,this.currentTarget=o.currentTarget,this.relatedTarget=o.relatedTarget,this.bubbles=o.bubbles,this.cancelable=o.cancelable,this.defaultPrevented=o.defaultPrevented,this.eventPhase=o.eventPhase,this.isTrusted=o.isTrusted,this.timeStamp=o.timeStamp,this.type=t}}function Wt(e){let t=m.useRef({isFocused:!1,observer:null});E(()=>{const r=t.current;return()=>{r.observer&&(r.observer.disconnect(),r.observer=null)}},[]);let o=I(r=>{e==null||e(r)});return m.useCallback(r=>{if(r.target instanceof HTMLButtonElement||r.target instanceof HTMLInputElement||r.target instanceof HTMLTextAreaElement||r.target instanceof HTMLSelectElement){t.current.isFocused=!0;let n=r.target,l=a=>{t.current.isFocused=!1,n.disabled&&o(new Rt("blur",a)),t.current.observer&&(t.current.observer.disconnect(),t.current.observer=null)};n.addEventListener("focusout",l,{once:!0}),t.current.observer=new MutationObserver(()=>{if(t.current.isFocused&&n.disabled){var a;(a=t.current.observer)===null||a===void 0||a.disconnect();let s=n===document.activeElement?null:document.activeElement;n.dispatchEvent(new FocusEvent("blur",{relatedTarget:s})),n.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:s}))}}),t.current.observer.observe(n,{attributes:!0,attributeFilter:["disabled"]})}},[o])}let z=null,At=new Set,A=new Map,B=!1,le=!1;function ce(e,t){for(let o of At)o(e,t)}function It(e){return!(e.metaKey||!Oe()&&e.altKey||e.ctrlKey||e.key==="Control"||e.key==="Shift"||e.key==="Meta")}function G(e){B=!0,It(e)&&(z="keyboard",ce("keyboard",e))}function x(e){z="pointer",(e.type==="mousedown"||e.type==="pointerdown")&&(B=!0,ce("pointer",e))}function We(e){Ot(e)&&(B=!0,z="virtual")}function Ae(e){e.target===window||e.target===document||(!B&&!le&&(z="virtual",ce("virtual",e)),B=!1,le=!1)}function Ie(){B=!1,le=!0}function ye(e){if(typeof window>"u"||A.get(U(e)))return;const t=U(e),o=M(e);let r=t.HTMLElement.prototype.focus;t.HTMLElement.prototype.focus=function(){B=!0,r.apply(this,arguments)},o.addEventListener("keydown",G,!0),o.addEventListener("keyup",G,!0),o.addEventListener("click",We,!0),t.addEventListener("focus",Ae,!0),t.addEventListener("blur",Ie,!1),typeof PointerEvent<"u"?(o.addEventListener("pointerdown",x,!0),o.addEventListener("pointermove",x,!0),o.addEventListener("pointerup",x,!0)):(o.addEventListener("mousedown",x,!0),o.addEventListener("mousemove",x,!0),o.addEventListener("mouseup",x,!0)),t.addEventListener("beforeunload",()=>{ze(e)},{once:!0}),A.set(t,{focus:r})}const ze=(e,t)=>{const o=U(e),r=M(e);t&&r.removeEventListener("DOMContentLoaded",t),A.has(o)&&(o.HTMLElement.prototype.focus=A.get(o).focus,r.removeEventListener("keydown",G,!0),r.removeEventListener("keyup",G,!0),r.removeEventListener("click",We,!0),o.removeEventListener("focus",Ae,!0),o.removeEventListener("blur",Ie,!1),typeof PointerEvent<"u"?(r.removeEventListener("pointerdown",x,!0),r.removeEventListener("pointermove",x,!0),r.removeEventListener("pointerup",x,!0)):(r.removeEventListener("mousedown",x,!0),r.removeEventListener("mousemove",x,!0),r.removeEventListener("mouseup",x,!0)),A.delete(o))};function zt(e){const t=M(e);let o;return t.readyState!=="loading"?ye(e):(o=()=>{ye(e)},t.addEventListener("DOMContentLoaded",o)),()=>ze(e,o)}typeof document<"u"&&zt();function qt(){return z}function _t(e){let{isDisabled:t,onBlurWithin:o,onFocusWithin:r,onFocusWithinChange:n}=e,l=m.useRef({isFocusWithin:!1}),a=m.useCallback(d=>{l.current.isFocusWithin&&!d.currentTarget.contains(d.relatedTarget)&&(l.current.isFocusWithin=!1,o&&o(d),n&&n(!1))},[o,n,l]),s=Wt(a),c=m.useCallback(d=>{!l.current.isFocusWithin&&document.activeElement===d.target&&(r&&r(d),n&&n(!0),l.current.isFocusWithin=!0,s(d))},[r,n,s]);return t?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:c,onBlur:a}}}function Ht(e){let{ref:t,onInteractOutside:o,isDisabled:r,onInteractOutsideStart:n}=e,l=m.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}),a=I(c=>{o&&_(c,t)&&(n&&n(c),l.current.isPointerDown=!0)}),s=I(c=>{o&&o(c)});m.useEffect(()=>{let c=l.current;if(r)return;const d=t.current,i=M(d);if(typeof PointerEvent<"u"){let p=f=>{c.isPointerDown&&_(f,t)&&s(f),c.isPointerDown=!1};return i.addEventListener("pointerdown",a,!0),i.addEventListener("pointerup",p,!0),()=>{i.removeEventListener("pointerdown",a,!0),i.removeEventListener("pointerup",p,!0)}}else{let p=b=>{c.ignoreEmulatedMouseEvents?c.ignoreEmulatedMouseEvents=!1:c.isPointerDown&&_(b,t)&&s(b),c.isPointerDown=!1},f=b=>{c.ignoreEmulatedMouseEvents=!0,c.isPointerDown&&_(b,t)&&s(b),c.isPointerDown=!1};return i.addEventListener("mousedown",a,!0),i.addEventListener("mouseup",p,!0),i.addEventListener("touchstart",a,!0),i.addEventListener("touchend",f,!0),()=>{i.removeEventListener("mousedown",a,!0),i.removeEventListener("mouseup",p,!0),i.removeEventListener("touchstart",a,!0),i.removeEventListener("touchend",f,!0)}}},[t,r,a,s])}function _(e,t){if(e.button>0)return!1;if(e.target){const o=e.target.ownerDocument;if(!o||!o.documentElement.contains(e.target)||e.target.closest("[data-react-aria-top-layer]"))return!1}return t.current&&!t.current.contains(e.target)}function ie(e){const t=M(e);if(qt()==="virtual"){let o=t.activeElement;Nt(()=>{t.activeElement===o&&e.isConnected&&we(e)})}else we(e)}function Vt(e){const t=U(e);if(!(e instanceof t.HTMLElement)&&!(e instanceof t.SVGElement))return!1;let{display:o,visibility:r}=e.style,n=o!=="none"&&r!=="hidden"&&r!=="collapse";if(n){const{getComputedStyle:l}=e.ownerDocument.defaultView;let{display:a,visibility:s}=l(e);n=a!=="none"&&s!=="hidden"&&s!=="collapse"}return n}function jt(e,t){return!e.hasAttribute("hidden")&&(e.nodeName==="DETAILS"&&t&&t.nodeName!=="SUMMARY"?e.hasAttribute("open"):!0)}function qe(e,t){return e.nodeName!=="#comment"&&Vt(e)&&jt(e,t)&&(!e.parentElement||qe(e.parentElement,e))}const Pe=w.default.createContext(null);let $=null;function Kt(e){let{children:t,contain:o,restoreFocus:r,autoFocus:n}=e,l=m.useRef(null),a=m.useRef(null),s=m.useRef([]),{parentNode:c}=m.useContext(Pe)||{},d=m.useMemo(()=>new se({scopeRef:s}),[s]);E(()=>{let f=c||h.root;if(h.getTreeNode(f.scopeRef)&&$&&!J($,f.scopeRef)){let b=h.getTreeNode($);b&&(f=b)}f.addChild(d),h.addNode(d)},[d,c]),E(()=>{let f=h.getTreeNode(s);f&&(f.contain=!!o)},[o]),E(()=>{var f;let b=(f=l.current)===null||f===void 0?void 0:f.nextSibling,g=[];for(;b&&b!==a.current;)g.push(b),b=b.nextSibling;s.current=g},[t]),Zt(s,r,o),Jt(s,o),to(s,r,o),Qt(s,n),m.useEffect(()=>{const f=M(s.current?s.current[0]:void 0).activeElement;let b=null;if(y(f,s.current)){for(let g of h.traverse())g.scopeRef&&y(f,g.scopeRef.current)&&(b=g);b===h.getTreeNode(s)&&($=b.scopeRef)}},[s]),E(()=>()=>{var f,b,g;let T=(g=(b=h.getTreeNode(s))===null||b===void 0||(f=b.parent)===null||f===void 0?void 0:f.scopeRef)!==null&&g!==void 0?g:null;(s===$||J(s,$))&&(!T||h.getTreeNode(T))&&($=T),h.removeTreeNode(s)},[s]);let i=m.useMemo(()=>Ut(s),[]),p=m.useMemo(()=>({focusManager:i,parentNode:d}),[d,i]);return w.default.createElement(Pe.Provider,{value:p},w.default.createElement("span",{"data-focus-scope-start":!0,hidden:!0,ref:l}),t,w.default.createElement("span",{"data-focus-scope-end":!0,hidden:!0,ref:a}))}function Ut(e){return{focusNext(t={}){let o=e.current,{from:r,tabbable:n,wrap:l,accept:a}=t,s=r||M(o[0]).activeElement,c=o[0].previousElementSibling,d=C(o),i=L(d,{tabbable:n,accept:a},o);i.currentNode=y(s,o)?s:c;let p=i.nextNode();return!p&&l&&(i.currentNode=c,p=i.nextNode()),p&&F(p,!0),p},focusPrevious(t={}){let o=e.current,{from:r,tabbable:n,wrap:l,accept:a}=t,s=r||M(o[0]).activeElement,c=o[o.length-1].nextElementSibling,d=C(o),i=L(d,{tabbable:n,accept:a},o);i.currentNode=y(s,o)?s:c;let p=i.previousNode();return!p&&l&&(i.currentNode=c,p=i.previousNode()),p&&F(p,!0),p},focusFirst(t={}){let o=e.current,{tabbable:r,accept:n}=t,l=C(o),a=L(l,{tabbable:r,accept:n},o);a.currentNode=o[0].previousElementSibling;let s=a.nextNode();return s&&F(s,!0),s},focusLast(t={}){let o=e.current,{tabbable:r,accept:n}=t,l=C(o),a=L(l,{tabbable:r,accept:n},o);a.currentNode=o[o.length-1].nextElementSibling;let s=a.previousNode();return s&&F(s,!0),s}}}const me=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[contenteditable]"],Gt=me.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";me.push('[tabindex]:not([tabindex="-1"]):not([disabled])');const Xt=me.join(':not([hidden]):not([tabindex="-1"]),');function C(e){return e[0].parentElement}function W(e){let t=h.getTreeNode($);for(;t&&t.scopeRef!==e;){if(t.contain)return!1;t=t.parent}return!0}function Jt(e,t){let o=m.useRef(),r=m.useRef();E(()=>{let n=e.current;if(!t){r.current&&(cancelAnimationFrame(r.current),r.current=void 0);return}const l=M(n?n[0]:void 0);let a=d=>{if(d.key!=="Tab"||d.altKey||d.ctrlKey||d.metaKey||!W(e))return;let i=l.activeElement,p=e.current;if(!p||!y(i,p))return;let f=C(p),b=L(f,{tabbable:!0},p);if(!i)return;b.currentNode=i;let g=d.shiftKey?b.previousNode():b.nextNode();g||(b.currentNode=d.shiftKey?p[p.length-1].nextElementSibling:p[0].previousElementSibling,g=d.shiftKey?b.previousNode():b.nextNode()),d.preventDefault(),g&&F(g,!0)},s=d=>{(!$||J($,e))&&y(d.target,e.current)?($=e,o.current=d.target):W(e)&&!X(d.target,e)?o.current?o.current.focus():$&&$.current&&Y($.current):W(e)&&(o.current=d.target)},c=d=>{r.current&&cancelAnimationFrame(r.current),r.current=requestAnimationFrame(()=>{if(l.activeElement&&W(e)&&!X(l.activeElement,e))if($=e,l.body.contains(d.target)){var i;o.current=d.target,(i=o.current)===null||i===void 0||i.focus()}else $.current&&Y($.current)})};return l.addEventListener("keydown",a,!1),l.addEventListener("focusin",s,!1),n==null||n.forEach(d=>d.addEventListener("focusin",s,!1)),n==null||n.forEach(d=>d.addEventListener("focusout",c,!1)),()=>{l.removeEventListener("keydown",a,!1),l.removeEventListener("focusin",s,!1),n==null||n.forEach(d=>d.removeEventListener("focusin",s,!1)),n==null||n.forEach(d=>d.removeEventListener("focusout",c,!1))}},[e,t]),E(()=>()=>{r.current&&cancelAnimationFrame(r.current)},[r])}function _e(e){return X(e)}function y(e,t){return!e||!t?!1:t.some(o=>o.contains(e))}function X(e,t=null){if(e instanceof Element&&e.closest("[data-react-aria-top-layer]"))return!0;for(let{scopeRef:o}of h.traverse(h.getTreeNode(t)))if(o&&y(e,o.current))return!0;return!1}function Yt(e){return X(e,$)}function J(e,t){var o;let r=(o=h.getTreeNode(t))===null||o===void 0?void 0:o.parent;for(;r;){if(r.scopeRef===e)return!0;r=r.parent}return!1}function F(e,t=!1){if(e!=null&&!t)try{ie(e)}catch{}else if(e!=null)try{e.focus()}catch{}}function Y(e,t=!0){let o=e[0].previousElementSibling,r=C(e),n=L(r,{tabbable:t},e);n.currentNode=o;let l=n.nextNode();t&&!l&&(r=C(e),n=L(r,{tabbable:!1},e),n.currentNode=o,l=n.nextNode()),F(l)}function Qt(e,t){const o=w.default.useRef(t);m.useEffect(()=>{if(o.current){$=e;const r=M(e.current?e.current[0]:void 0);!y(r.activeElement,$.current)&&e.current&&Y(e.current)}o.current=!1},[e])}function Zt(e,t,o){E(()=>{if(t||o)return;let r=e.current;const n=M(r?r[0]:void 0);let l=a=>{let s=a.target;y(s,e.current)?$=e:_e(s)||($=null)};return n.addEventListener("focusin",l,!1),r==null||r.forEach(a=>a.addEventListener("focusin",l,!1)),()=>{n.removeEventListener("focusin",l,!1),r==null||r.forEach(a=>a.removeEventListener("focusin",l,!1))}},[e,t,o])}function eo(e){let t=h.getTreeNode($);for(;t&&t.scopeRef!==e;){if(t.nodeToRestore)return!1;t=t.parent}return(t==null?void 0:t.scopeRef)===e}function to(e,t,o){const r=m.useRef(typeof document<"u"?M(e.current?e.current[0]:void 0).activeElement:null);E(()=>{let n=e.current;const l=M(n?n[0]:void 0);if(!t||o)return;let a=()=>{(!$||J($,e))&&y(l.activeElement,e.current)&&($=e)};return l.addEventListener("focusin",a,!1),n==null||n.forEach(s=>s.addEventListener("focusin",a,!1)),()=>{l.removeEventListener("focusin",a,!1),n==null||n.forEach(s=>s.removeEventListener("focusin",a,!1))}},[e,o]),E(()=>{const n=M(e.current?e.current[0]:void 0);if(!t)return;let l=a=>{if(a.key!=="Tab"||a.altKey||a.ctrlKey||a.metaKey||!W(e))return;let s=n.activeElement;if(!y(s,e.current))return;let c=h.getTreeNode(e);if(!c)return;let d=c.nodeToRestore,i=L(n.body,{tabbable:!0});i.currentNode=s;let p=a.shiftKey?i.previousNode():i.nextNode();if((!d||!n.body.contains(d)||d===n.body)&&(d=void 0,c.nodeToRestore=void 0),(!p||!y(p,e.current))&&d){i.currentNode=d;do p=a.shiftKey?i.previousNode():i.nextNode();while(y(p,e.current));a.preventDefault(),a.stopPropagation(),p?F(p,!0):_e(d)?F(d,!0):s.blur()}};return o||n.addEventListener("keydown",l,!0),()=>{o||n.removeEventListener("keydown",l,!0)}},[e,t,o]),E(()=>{const n=M(e.current?e.current[0]:void 0);if(!t)return;let l=h.getTreeNode(e);if(!!l){var a;return l.nodeToRestore=(a=r.current)!==null&&a!==void 0?a:void 0,()=>{let s=h.getTreeNode(e);if(!s)return;let c=s.nodeToRestore;if(t&&c&&(y(n.activeElement,e.current)||n.activeElement===n.body&&eo(e))){let d=h.clone();requestAnimationFrame(()=>{if(n.activeElement===n.body){let i=d.getTreeNode(e);for(;i;){if(i.nodeToRestore&&i.nodeToRestore.isConnected){F(i.nodeToRestore);return}i=i.parent}for(i=d.getTreeNode(e);i;){if(i.scopeRef&&i.scopeRef.current&&h.getTreeNode(i.scopeRef)){Y(i.scopeRef.current,!0);return}i=i.parent}}})}}}},[e,t])}function L(e,t,o){let r=t!=null&&t.tabbable?Xt:Gt,n=M(e).createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode(l){var a;return!(t==null||(a=t.from)===null||a===void 0)&&a.contains(l)?NodeFilter.FILTER_REJECT:l.matches(r)&&qe(l)&&(!o||y(l,o))&&(!(t!=null&&t.accept)||t.accept(l))?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t!=null&&t.from&&(n.currentNode=t.from),n}class fe{get size(){return this.fastMap.size}getTreeNode(t){return this.fastMap.get(t)}addTreeNode(t,o,r){let n=this.fastMap.get(o!=null?o:null);if(!n)return;let l=new se({scopeRef:t});n.addChild(l),l.parent=n,this.fastMap.set(t,l),r&&(l.nodeToRestore=r)}addNode(t){this.fastMap.set(t.scopeRef,t)}removeTreeNode(t){if(t===null)return;let o=this.fastMap.get(t);if(!o)return;let r=o.parent;for(let l of this.traverse())l!==o&&o.nodeToRestore&&l.nodeToRestore&&o.scopeRef&&o.scopeRef.current&&y(l.nodeToRestore,o.scopeRef.current)&&(l.nodeToRestore=o.nodeToRestore);let n=o.children;r&&(r.removeChild(o),n.size>0&&n.forEach(l=>r&&r.addChild(l))),this.fastMap.delete(o.scopeRef)}*traverse(t=this.root){if(t.scopeRef!=null&&(yield t),t.children.size>0)for(let o of t.children)yield*this.traverse(o)}clone(){var t;let o=new fe;var r;for(let n of this.traverse())o.addTreeNode(n.scopeRef,(r=(t=n.parent)===null||t===void 0?void 0:t.scopeRef)!==null&&r!==void 0?r:null,n.nodeToRestore);return o}constructor(){this.fastMap=new Map,this.root=new se({scopeRef:null}),this.fastMap.set(null,this.root)}}class se{addChild(t){this.children.add(t),t.parent=this}removeChild(t){this.children.delete(t),t.parent=void 0}constructor(t){this.children=new Set,this.contain=!1,this.scopeRef=t.scopeRef}}let h=new fe;const oo=new WeakMap,S=[];function ro(e,t){let{onClose:o,shouldCloseOnBlur:r,isOpen:n,isDismissable:l=!1,isKeyboardDismissDisabled:a=!1,shouldCloseOnInteractOutside:s}=e;m.useEffect(()=>(n&&S.push(t),()=>{let g=S.indexOf(t);g>=0&&S.splice(g,1)}),[n,t]);let c=()=>{S[S.length-1]===t&&o&&o()},d=g=>{(!s||s(g.target))&&S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault())},i=g=>{(!s||s(g.target))&&(S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault()),c())},p=g=>{g.key==="Escape"&&!a&&(g.stopPropagation(),g.preventDefault(),c())};Ht({ref:t,onInteractOutside:l&&n?i:null,onInteractOutsideStart:d});let{focusWithinProps:f}=_t({isDisabled:!r,onBlurWithin:g=>{!g.relatedTarget||Yt(g.relatedTarget)||(!s||s(g.relatedTarget))&&o()}}),b=g=>{g.target===g.currentTarget&&g.preventDefault()};return{overlayProps:{onKeyDown:p,...f},underlayProps:{onPointerDown:b}}}function no(e,t,o){let{type:r}=e,{isOpen:n}=t;m.useEffect(()=>{o&&o.current&&oo.set(o.current,t.close)});let l;r==="menu"?l=!0:r==="listbox"&&(l="listbox");let a=Ne();return{triggerProps:{"aria-haspopup":l,"aria-expanded":n,"aria-controls":n?a:null,onPress:t.toggle},overlayProps:{id:a}}}const re=typeof document<"u"&&window.visualViewport,ao=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let H=0,ne;function lo(e={}){let{isDisabled:t}=e;E(()=>{if(!t)return H++,H===1&&(Ct()?ne=so():ne=io()),()=>{H--,H===0&&ne()}},[t])}function io(){return K(O(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),O(document.documentElement,"overflow","hidden"))}function so(){let e,t,o=d=>{e=De(d.target,!0),!(e===document.documentElement&&e===document.body)&&e instanceof HTMLElement&&window.getComputedStyle(e).overscrollBehavior==="auto"&&(t=O(e,"overscrollBehavior","contain"))},r=d=>{if(!e||e===document.documentElement||e===document.body){d.preventDefault();return}e.scrollHeight===e.clientHeight&&e.scrollWidth===e.clientWidth&&d.preventDefault()},n=d=>{let i=d.target;xe(i)&&i!==document.activeElement&&(d.preventDefault(),s(),i.style.transform="translateY(-2000px)",i.focus(),requestAnimationFrame(()=>{i.style.transform=""})),t&&t()},l=d=>{let i=d.target;xe(i)&&(s(),i.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{i.style.transform="",re&&(re.height<window.innerHeight?requestAnimationFrame(()=>{ke(i)}):re.addEventListener("resize",()=>ke(i),{once:!0}))}))},a=null,s=()=>{if(a)return;let d=()=>{window.scrollTo(0,0)},i=window.pageXOffset,p=window.pageYOffset;a=K(D(window,"scroll",d),O(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),O(document.documentElement,"overflow","hidden"),O(document.body,"marginTop",`-${p}px`),()=>{window.scrollTo(i,p)}),window.scrollTo(0,0)},c=K(D(document,"touchstart",o,{passive:!1,capture:!0}),D(document,"touchmove",r,{passive:!1,capture:!0}),D(document,"touchend",n,{passive:!1,capture:!0}),D(document,"focus",l,!0));return()=>{t==null||t(),a==null||a(),c()}}function O(e,t,o){let r=e.style[t];return e.style[t]=o,()=>{e.style[t]=r}}function D(e,t,o,r){return e.addEventListener(t,o,r),()=>{e.removeEventListener(t,o,r)}}function ke(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let o=De(e);if(o!==document.documentElement&&o!==document.body&&o!==e){let r=o.getBoundingClientRect().top,n=e.getBoundingClientRect().top;n>r+e.clientHeight&&(o.scrollTop+=n-r)}e=o.parentElement}}function xe(e){return e instanceof HTMLInputElement&&!ao.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}let R=new WeakMap,k=[];function uo(e,t=document.body){let o=new Set(e),r=new Set,n=c=>{for(let f of c.querySelectorAll("[data-live-announcer], [data-react-aria-top-layer]"))o.add(f);let d=f=>{if(o.has(f)||r.has(f.parentElement)&&f.parentElement.getAttribute("role")!=="row")return NodeFilter.FILTER_REJECT;for(let b of o)if(f.contains(b))return NodeFilter.FILTER_SKIP;return NodeFilter.FILTER_ACCEPT},i=document.createTreeWalker(c,NodeFilter.SHOW_ELEMENT,{acceptNode:d}),p=d(c);if(p===NodeFilter.FILTER_ACCEPT&&l(c),p!==NodeFilter.FILTER_REJECT){let f=i.nextNode();for(;f!=null;)l(f),f=i.nextNode()}},l=c=>{var d;let i=(d=R.get(c))!==null&&d!==void 0?d:0;c.getAttribute("aria-hidden")==="true"&&i===0||(i===0&&c.setAttribute("aria-hidden","true"),r.add(c),R.set(c,i+1))};k.length&&k[k.length-1].disconnect(),n(t);let a=new MutationObserver(c=>{for(let d of c)if(!(d.type!=="childList"||d.addedNodes.length===0)&&![...o,...r].some(i=>i.contains(d.target))){for(let i of d.removedNodes)i instanceof Element&&(o.delete(i),r.delete(i));for(let i of d.addedNodes)(i instanceof HTMLElement||i instanceof SVGElement)&&(i.dataset.liveAnnouncer==="true"||i.dataset.reactAriaTopLayer==="true")?o.add(i):i instanceof Element&&n(i)}});a.observe(t,{childList:!0,subtree:!0});let s={observe(){a.observe(t,{childList:!0,subtree:!0})},disconnect(){a.disconnect()}};return k.push(s),()=>{a.disconnect();for(let c of r){let d=R.get(c);d===1?(c.removeAttribute("aria-hidden"),R.delete(c)):R.set(c,d-1)}s===k[k.length-1]?(k.pop(),k.length&&k[k.length-1].observe()):k.splice(k.indexOf(s),1)}}const He=w.default.createContext(null);function co(e){let t=Ce(),{portalContainer:o=t?null:document.body,isExiting:r}=e,[n,l]=m.useState(!1),a=m.useMemo(()=>({contain:n,setContain:l}),[n,l]);if(!o)return null;let s=e.children;return e.disableFocusManagement||(s=w.default.createElement(Kt,{restoreFocus:!0,contain:n&&!r},s)),s=w.default.createElement(He.Provider,{value:a},w.default.createElement(Dt,null,s)),rt.default.createPortal(s,o)}function Ve(){let e=m.useContext(He),t=e==null?void 0:e.setContain;E(()=>{t==null||t(!0)},[t])}function mo(e,t,o){let{overlayProps:r,underlayProps:n}=ro({...e,isOpen:t.isOpen,onClose:t.close},o);return lo({isDisabled:!t.isOpen}),Ve(),m.useEffect(()=>{if(t.isOpen)return uo([o.current])},[t.isOpen,o]),{modalProps:ht(r),underlayProps:n}}function fo(e,t){let{role:o="dialog"}=e,r=$t();r=e["aria-label"]?void 0:r;let n=m.useRef(!1);return m.useEffect(()=>{if(t.current&&!t.current.contains(document.activeElement)){ie(t.current);let l=setTimeout(()=>{document.activeElement===t.current&&(n.current=!0,t.current&&(t.current.blur(),ie(t.current)),n.current=!1)},500);return()=>{clearTimeout(l)}}},[t]),Ve(),{dialogProps:{...Pt(e,{labelable:!0}),role:o,tabIndex:-1,"aria-labelledby":e["aria-labelledby"]||r,onBlur:l=>{n.current&&l.stopPropagation()}},titleProps:{id:r}}}function po(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function Te(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),o.push.apply(o,r)}return o}function Se(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?Te(Object(o),!0).forEach(function(r){po(e,r,o[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):Te(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}var go=(e,t,o)=>{for(var r of Object.keys(e)){var n;if(e[r]!==((n=t[r])!==null&&n!==void 0?n:o[r]))return!1}return!0},je=e=>t=>{var o=e.defaultClassName,r=Se(Se({},e.defaultVariants),t);for(var n in r){var l,a=(l=r[n])!==null&&l!==void 0?l:e.defaultVariants[n];if(a!=null){var s=a;typeof s=="boolean"&&(s=s===!0?"true":"false");var c=e.variantClassNames[n][s];c&&(o+=" "+c)}}for(var[d,i]of e.compoundVariants)go(d,r,e.defaultVariants)&&(o+=" "+i);return o},bo="_3moto2o",vo="_3moto2q",$o="_3moto2r",Ke="_3moto2p",ho=je({defaultClassName:"_3moto20",variantClassNames:{kind:{informational:"_3moto21",delete:"_3moto22",failure:"_3moto23",success:"_3moto24",warning:"_3moto25",successWithFailures:"_3moto26",form:"_3moto27"},size:{sm:"_3moto28",md:"_3moto29",lg:"_3moto2a",xl:"_3moto2b"},fullHeight:{true:"_3moto2c",false:"_3moto2d"}},defaultVariants:{},compoundVariants:[]}),wo="_3moto2n",Eo=je({defaultClassName:"_3moto2e",variantClassNames:{kind:{form:"_3moto2f",delete:"_3moto2g",failure:"_3moto2h",informational:"_3moto2i",success:"_3moto2j",warning:"_3moto2k",successWithFailures:"_3moto2l"}},defaultVariants:{},compoundVariants:[]}),Mo="_3moto2m",yo="_3moto2s";function pe({children:e,className:t="",...o}){return u.createElement("div",{className:P.cl(Ke,t),...o},e)}P.Metadata.set(pe,{name:"ModalFooter"});const de=Object.freeze({form:"pencil",delete:"trash",failure:"status-error",informational:"info-circle",success:"status-ok",successWithFailures:"status-warning",warning:"status-warning"});function Po({children:e,className:t,"data-testid":o,kind:r="informational",onBlur:n,onFocus:l,overlayProps:a,size:s="sm",state:c,title:d,dismissible:i,dismissable:p=!0,onClose:f,fullHeight:b=!1,...g}){const T=i!=null?i:p,Q=u.useRef(null),{modalProps:Z,underlayProps:Ue}=mo({isKeyboardDismissDisabled:!T,...g},c,Q),{dialogProps:ee,titleProps:Ge}=fo(g,Q),Xe=P.combineEventHandlers(Z.onFocus,ee.onFocus,l),Je=P.combineEventHandlers(Z.onBlur,ee.onBlur,n),{t:Ye}=u.useContext(P.I18nContext),Qe=P.useChildTestIdAttrBuilder({"data-testid":o}),[te,Ze]=P.selectChildren(e,[{type:pe}]);function be(){f&&typeof f=="function"&&f(),c.close()}const ve=function(){return T?u.createElement(he.Button,{"aria-label":"Close",onClick:be,kind:"icon",icon:"x",className:vo}):null},et=P.modChildren(Ze,$e=>$e.type===ve?[{className:P.cl($e.props.classname,$o)}]:[]);return u.createElement(co,null,u.createElement("div",{className:yo,...Ue,...g},u.createElement("div",{...Z,...ee,...a,onFocus:Xe,onBlur:Je,...Qe("dialog"),ref:Q,className:P.cl(ho({kind:r,size:s,fullHeight:b}),t)},u.createElement("div",{...Ge,className:Eo({kind:r})},r&&u.createElement(P.Icon,{icon:de[r]||de.informational,className:wo}),u.createElement("div",{className:Mo},P.contentOf(d,c.close)),u.createElement(ve,null)),u.createElement("div",{className:bo},P.contentOf(et,c.close)),te&&te.length>0?u.createElement(u.Fragment,null,P.contentOf(te,c.close)):u.createElement("div",{className:Ke},u.createElement(he.Button,{kind:"key",onClick:be},Ye("design-system:modal.defaultButtonLabel"))))))}function ge(e){return e.state.isOpen?u.createElement(Po,{...e},e.children):u.createElement(u.Fragment,null)}P.Metadata.set(ge,{name:"Modal",props:{dismissable:{type:"boolean",default:"true"},fullHeight:{type:"boolean",default:"false"},kind:{type:"ModalKind",default:"informational"},onBlur:{type:"() => void"},onClose:{type:"() => void"},onFocus:{type:"() => void"},size:{type:"ModalSize",default:"sm"},title:{type:"string"}}});function ko(e){let[t,o]=nt(e.isOpen,e.defaultOpen||!1,e.onOpenChange);const r=m.useCallback(()=>{o(!0)},[o]),n=m.useCallback(()=>{o(!1)},[o]),l=m.useCallback(()=>{o(!t)},[o,t]);return{isOpen:t,setOpen:o,open:r,close:n,toggle:l}}function xo(e={}){const t=ko(e),o=m.useRef(null),{triggerProps:r,overlayProps:n}=no({type:"dialog"},t,o),{onPress:l,...a}=r;return{triggerProps:{...a,onClick:l,ref:o},modalState:t,modalProps:{overlayProps:n,state:t}}}const To={description:()=>u.createElement("p",null,"Modals are overlays on a page that focus a user\u2019s attention on an important message or a simple action. Examples of a Modal include confirming the deletion of a record, or making a single selection."),components:[ge],examples:{general:{label:"Usage",description:({NavigateTo:e})=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Use a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When the user needs to confirm a basic decision, such as deleting a record."),u.createElement("li",null,"When important information needs to be displayed to the user before continuing."),u.createElement("li",null,"When a simple selection, such as a single form input, is required before proceeding.")),u.createElement("h5",null,"Avoid a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When a complex form is required. Use a ",u.createElement(e,{to:"focused-task"},"Focused Task View")," instead."),u.createElement("li",null,"When sharing non-critical or tertiary information. Use a ",u.createElement(e,{to:"growlers"},"Growler")," instead.")))},implementation:{label:"Close Button",description:()=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Close Button and Modal dismissiability"),u.createElement("p",null,"Remove the Close Button in the upper right of the Modal if the user must choose the course of action before proceeding."),u.createElement("p",null,"The close button is included by default and omitted when the prop ",u.createElement("code",null,"dismissable")," is set to ",u.createElement("strong",null,"false"),"."),u.createElement("p",null,"Setting the ",u.createElement("code",null,"dismissable")," prop to false also prevents dismissing the modal by clicking outside of the modal or by using the"," ",u.createElement("strong",null,"escape")," key.")),examples:{basic:{react:v.code`
|
|
2
2
|
import { Modal, ModalFooter, useModal } from "@sps-woodland/modal";
|
|
3
3
|
import { sprinkles } from "@sps-woodland/tokens";
|
|
4
4
|
import { Button } from "@sps-woodland/buttons";
|
package/lib/index.es.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Metadata as Oe, cl as ue, combineEventHandlers as Me, I18nContext as st, useChildTestIdAttrBuilder as dt, selectChildren as ut, modChildren as ct, Icon as mt, contentOf as le } from "@sps-woodland/core";
|
|
2
2
|
import { Button as ye } from "@sps-woodland/buttons";
|
|
3
3
|
import * as u from "react";
|
|
4
|
-
import h, { useState as H, useRef as y, useEffect as F, useCallback as
|
|
4
|
+
import h, { useState as H, useRef as y, useEffect as F, useCallback as x, useContext as V, useMemo as z } from "react";
|
|
5
5
|
import ft from "react-dom";
|
|
6
6
|
import { code as b } from "@spscommerce/utils";
|
|
7
7
|
function pt(e, t, o) {
|
|
@@ -12,13 +12,13 @@ function pt(e, t, o) {
|
|
|
12
12
|
}, [
|
|
13
13
|
a
|
|
14
14
|
]);
|
|
15
|
-
let s = a ? e : r, c =
|
|
15
|
+
let s = a ? e : r, c = x((d, ...i) => {
|
|
16
16
|
let f = (m, ...g) => {
|
|
17
17
|
o && (Object.is(s, m) || o(m, ...g)), a || (s = m);
|
|
18
18
|
};
|
|
19
19
|
typeof d == "function" ? (console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"), n((g, ...p) => {
|
|
20
|
-
let
|
|
21
|
-
return f(
|
|
20
|
+
let T = d(a ? s : g, ...p);
|
|
21
|
+
return f(T, ...i), a ? g : T;
|
|
22
22
|
})) : (a || n(d), f(d, ...i));
|
|
23
23
|
}, [
|
|
24
24
|
a,
|
|
@@ -102,7 +102,7 @@ function R(e) {
|
|
|
102
102
|
t.current = e;
|
|
103
103
|
}, [
|
|
104
104
|
e
|
|
105
|
-
]),
|
|
105
|
+
]), x((...o) => {
|
|
106
106
|
const r = t.current;
|
|
107
107
|
return r == null ? void 0 : r(...o);
|
|
108
108
|
}, []);
|
|
@@ -131,7 +131,7 @@ function kt(e) {
|
|
|
131
131
|
}
|
|
132
132
|
let xt = Boolean(typeof window < "u" && window.document && window.document.createElement), X = /* @__PURE__ */ new Map();
|
|
133
133
|
function Ie(e) {
|
|
134
|
-
let [t, o] = H(e), r = y(null), n = wt(t), l =
|
|
134
|
+
let [t, o] = H(e), r = y(null), n = wt(t), l = x((a) => {
|
|
135
135
|
r.current = a;
|
|
136
136
|
}, []);
|
|
137
137
|
return xt && X.set(n, l), w(() => {
|
|
@@ -156,7 +156,7 @@ function Tt(e, t) {
|
|
|
156
156
|
return r ? (r(e), e) : t;
|
|
157
157
|
}
|
|
158
158
|
function St(e = []) {
|
|
159
|
-
let t = Ie(), [o, r] = kt(t), n =
|
|
159
|
+
let t = Ie(), [o, r] = kt(t), n = x(() => {
|
|
160
160
|
r(function* () {
|
|
161
161
|
yield t, yield document.getElementById(t) ? t : void 0;
|
|
162
162
|
});
|
|
@@ -372,7 +372,7 @@ function Ut(e) {
|
|
|
372
372
|
let o = R((r) => {
|
|
373
373
|
e == null || e(r);
|
|
374
374
|
});
|
|
375
|
-
return
|
|
375
|
+
return x((r) => {
|
|
376
376
|
if (r.target instanceof HTMLButtonElement || r.target instanceof HTMLInputElement || r.target instanceof HTMLTextAreaElement || r.target instanceof HTMLSelectElement) {
|
|
377
377
|
t.current.isFocused = !0;
|
|
378
378
|
let n = r.target, l = (a) => {
|
|
@@ -459,13 +459,13 @@ function Yt() {
|
|
|
459
459
|
function Qt(e) {
|
|
460
460
|
let { isDisabled: t, onBlurWithin: o, onFocusWithin: r, onFocusWithinChange: n } = e, l = y({
|
|
461
461
|
isFocusWithin: !1
|
|
462
|
-
}), a =
|
|
462
|
+
}), a = x((d) => {
|
|
463
463
|
l.current.isFocusWithin && !d.currentTarget.contains(d.relatedTarget) && (l.current.isFocusWithin = !1, o && o(d), n && n(!1));
|
|
464
464
|
}, [
|
|
465
465
|
o,
|
|
466
466
|
n,
|
|
467
467
|
l
|
|
468
|
-
]), s = Ut(a), c =
|
|
468
|
+
]), s = Ut(a), c = x((d) => {
|
|
469
469
|
!l.current.isFocusWithin && document.activeElement === d.target && (r && r(d), n && n(!0), l.current.isFocusWithin = !0, s(d));
|
|
470
470
|
}, [
|
|
471
471
|
r,
|
|
@@ -603,8 +603,8 @@ function oo(e) {
|
|
|
603
603
|
s
|
|
604
604
|
]), w(() => () => {
|
|
605
605
|
var m, g, p;
|
|
606
|
-
let
|
|
607
|
-
(s === v || ee(s, v)) && (!
|
|
606
|
+
let T = (p = (g = $.getTreeNode(s)) === null || g === void 0 || (m = g.parent) === null || m === void 0 ? void 0 : m.scopeRef) !== null && p !== void 0 ? p : null;
|
|
607
|
+
(s === v || ee(s, v)) && (!T || $.getTreeNode(T)) && (v = T), $.removeTreeNode(s);
|
|
608
608
|
}, [
|
|
609
609
|
s
|
|
610
610
|
]);
|
|
@@ -1381,10 +1381,9 @@ function Oo({
|
|
|
1381
1381
|
fullHeight: g = !1,
|
|
1382
1382
|
...p
|
|
1383
1383
|
}) {
|
|
1384
|
-
const
|
|
1384
|
+
const T = i != null ? i : f, oe = u.useRef(null), { modalProps: re, underlayProps: et } = Mo(
|
|
1385
1385
|
{
|
|
1386
|
-
|
|
1387
|
-
isKeyboardDismissDisabled: !x,
|
|
1386
|
+
isKeyboardDismissDisabled: !T,
|
|
1388
1387
|
...p
|
|
1389
1388
|
},
|
|
1390
1389
|
c,
|
|
@@ -1397,7 +1396,7 @@ function Oo({
|
|
|
1397
1396
|
m && typeof m == "function" && m(), c.close();
|
|
1398
1397
|
}
|
|
1399
1398
|
const we = function() {
|
|
1400
|
-
return
|
|
1399
|
+
return T ? /* @__PURE__ */ u.createElement(
|
|
1401
1400
|
ye,
|
|
1402
1401
|
{
|
|
1403
1402
|
"aria-label": "Close",
|
|
@@ -1449,15 +1448,15 @@ Oe.set(Ze, {
|
|
|
1449
1448
|
});
|
|
1450
1449
|
function Do(e) {
|
|
1451
1450
|
let [t, o] = pt(e.isOpen, e.defaultOpen || !1, e.onOpenChange);
|
|
1452
|
-
const r =
|
|
1451
|
+
const r = x(() => {
|
|
1453
1452
|
o(!0);
|
|
1454
1453
|
}, [
|
|
1455
1454
|
o
|
|
1456
|
-
]), n =
|
|
1455
|
+
]), n = x(() => {
|
|
1457
1456
|
o(!1);
|
|
1458
1457
|
}, [
|
|
1459
1458
|
o
|
|
1460
|
-
]), l =
|
|
1459
|
+
]), l = x(() => {
|
|
1461
1460
|
o(!t);
|
|
1462
1461
|
}, [
|
|
1463
1462
|
o,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sps-woodland/modal",
|
|
3
3
|
"description": "SPS Woodland Design System modal component",
|
|
4
|
-
"version": "8.7.
|
|
4
|
+
"version": "8.7.3",
|
|
5
5
|
"author": "SPS Commerce",
|
|
6
6
|
"license": "UNLICENSED",
|
|
7
7
|
"repository": "https://github.com/SPSCommerce/woodland/tree/main/packages/@sps-woodland/modal",
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
"@spscommerce/utils": "^6.12.1",
|
|
30
30
|
"react": "^16.9.0",
|
|
31
31
|
"react-dom": "^16.9.0",
|
|
32
|
-
"@sps-woodland/core": "8.7.
|
|
33
|
-
"@sps-woodland/tokens": "8.7.
|
|
34
|
-
"@sps-woodland/buttons": "8.7.
|
|
32
|
+
"@sps-woodland/core": "8.7.3",
|
|
33
|
+
"@sps-woodland/tokens": "8.7.3",
|
|
34
|
+
"@sps-woodland/buttons": "8.7.3"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@spscommerce/utils": "^6.12.1",
|
|
@@ -43,9 +43,9 @@
|
|
|
43
43
|
"react": "^16.9.0",
|
|
44
44
|
"react-dom": "^16.9.0",
|
|
45
45
|
"vite": "^3.1.4",
|
|
46
|
-
"@sps-woodland/core": "8.7.
|
|
47
|
-
"@sps-woodland/buttons": "8.7.
|
|
48
|
-
"@sps-woodland/tokens": "8.7.
|
|
46
|
+
"@sps-woodland/core": "8.7.3",
|
|
47
|
+
"@sps-woodland/buttons": "8.7.3",
|
|
48
|
+
"@sps-woodland/tokens": "8.7.3"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"react-aria": "^3.21.0",
|