UNPKG

@nipe-solutions/react-spring-bottom-sheet

Version:

React 18, XState v5 - ✨ Accessible, 🪄 Delightful, and 🤯 Performant. Built on react-spring for the web, and react-use-gesture.

1 lines 152 kB
import*as e from"react";import n,{useRef as t,useDebugValue as r,useEffect as a,useLayoutEffect as l,useState as o,useCallback as i,useMemo as u,useImperativeHandle as s,forwardRef as c}from"react";import{useMachine as f}from"@xstate/react";import{useSpring as d,interpolate as p,animated as m,config as h}from"react-spring";import{useDrag as g,rubberbandIfOutOfBounds as v}from"react-use-gesture";import{createFocusTrap as y}from"focus-trap";import{disableBodyScroll as b,enableBodyScroll as S}from"body-scroll-lock";import{ResizeObserver as w}from"@juggle/resize-observer";import{createMachine as k,assign as E,fromPromise as x}from"xstate";function C(){return C=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},C.apply(this,arguments)}function N(e,n){if(null==e)return{};var t,r,a={},l=Object.keys(e);for(r=0;r<l.length;r++)n.indexOf(t=l[r])>=0||(a[t]=e[t]);return a}const z="undefined"!=typeof window?l:a;function P(e,n,t){return n=(n=+n)==n?n:0,t=(t=+t)==t?t:0,(e=+e)==e&&(e=(e=e<=t?e:t)>=n?e:n),e}function _(e){const n=Math.round(e);if(Number.isNaN(e))throw new TypeError("Found a NaN! Check your snapPoints / defaultSnap / snapTo ");return n}const R={box:"border-box"};function L(e,{label:n,enabled:t,resizeSourceRef:a}){let[l,u]=o(0);r(`${n}: ${l}`);const s=i(e=>{u(e[0].borderBoxSize[0].blockSize),a.current="element"},[a]);return z(()=>{if(!e.current||!t)return;const n=new w(s);return n.observe(e.current,R),()=>{n.disconnect()}},[e,s,t]),t?l:0}function T(e=1e3){return new Promise(n=>setTimeout(n,e))}const O={DRAG:{target:"#overlay.dragging",actions:"onOpenEnd"}},D={RESIZE:{target:"#overlay.resizing",actions:"onOpenEnd"}},M=k({types:{},id:"overlay",initial:"closed",context:{initialState:"CLOSED"},states:{closed:{on:{OPEN:"opening",CLOSE:void 0}},opening:{initial:"start",states:{start:{invoke:{src:"onOpenStart",onDone:"transition"}},transition:{always:[{target:"immediately",guard:"initiallyOpen"},{target:"smoothly",guard:"initiallyClosed"}]},immediately:{initial:"open",states:{open:{invoke:{src:"openImmediately",onDone:"activating"}},activating:{invoke:{src:"activate",onDone:"#overlay.opening.end"},on:C({},O,D)}}},smoothly:{initial:"visuallyHidden",states:{visuallyHidden:{invoke:{src:"renderVisuallyHidden",onDone:"activating"}},activating:{invoke:{src:"activate",onDone:"open"}},open:{invoke:{src:"openSmoothly",onDone:"#overlay.opening.end"},on:C({},O,D)}}},end:{invoke:{src:"onOpenEnd",onDone:"done"},on:{CLOSE:"#overlay.closing",DRAG:"#overlay.dragging"}},done:{type:"final"}},on:C({},{CLOSE:{target:"#overlay.closing",actions:"onOpenCancel"}}),onDone:"open"},open:{on:{DRAG:"#overlay.dragging",SNAP:"snapping",RESIZE:"resizing"}},dragging:{on:{SNAP:"snapping"}},snapping:{initial:"start",states:{start:{invoke:{src:"onSnapStart",onDone:"snappingSmoothly",input:({event:{payload:e}})=>({y:e.y,velocity:e.velocity,snapSource:e.source||"custom"})},entry:[E(({event:{payload:e}})=>({y:e.y,velocity:e.velocity,snapSource:e.source||"custom"}))]},snappingSmoothly:{invoke:{src:"snapSmoothly",onDone:"end",input:({context:e})=>({y:e.y,velocity:e.velocity,snapSource:e.snapSource})}},end:{invoke:{src:"onSnapEnd",onDone:"done"},on:{RESIZE:"#overlay.resizing",SNAP:"#overlay.snapping",CLOSE:"#overlay.closing",DRAG:"#overlay.dragging"}},done:{type:"final"}},on:{SNAP:{target:"snapping",actions:"onSnapEnd"},RESIZE:{target:"#overlay.resizing",actions:"onSnapCancel"},DRAG:{target:"#overlay.dragging",actions:"onSnapCancel"},CLOSE:{target:"#overlay.closing",actions:"onSnapCancel"}},onDone:"open"},resizing:{initial:"start",states:{start:{invoke:{src:"onResizeStart",onDone:"resizingSmoothly"}},resizingSmoothly:{invoke:{src:"resizeSmoothly",onDone:"end"}},end:{invoke:{src:"onResizeEnd",onDone:"done"},on:{SNAP:"#overlay.snapping",CLOSE:"#overlay.closing",DRAG:"#overlay.dragging"}},done:{type:"final"}},on:{RESIZE:{target:"resizing",actions:"onResizeEnd"},SNAP:{target:"snapping",actions:"onResizeCancel"},DRAG:{target:"#overlay.dragging",actions:"onResizeCancel"},CLOSE:{target:"#overlay.closing",actions:"onResizeCancel"}},onDone:"open"},closing:{initial:"start",states:{start:{invoke:{src:"onCloseStart",onDone:"deactivating"},on:{OPEN:{target:"#overlay.open",actions:"onCloseCancel"}}},deactivating:{invoke:{src:"deactivate",onDone:"closingSmoothly"}},closingSmoothly:{invoke:{src:"closeSmoothly",onDone:"end"}},end:{invoke:{src:"onCloseEnd",onDone:"done"},on:{OPEN:{target:"#overlay.opening",actions:"onCloseCancel"}}},done:{type:"final"}},on:{CLOSE:void 0,OPEN:{target:"#overlay.opening",actions:"onCloseCancel"}},onDone:"closed"}},on:{CLOSE:".closing"}},{actions:{onOpenCancel:(e,n)=>{},onSnapCancel:(e,n)=>{},onResizeCancel:(e,n)=>{},onCloseCancel:(e,n)=>{},onOpenEnd:(e,n)=>{},onSnapEnd:(e,n)=>{},onRezizeEnd:(e,n)=>{}},actors:{onSnapStart:x(async()=>{await T()}),onOpenStart:x(async()=>{await T()}),onCloseStart:x(async()=>{await T()}),onResizeStart:x(async()=>{await T()}),onSnapEnd:x(async()=>{await T()}),onOpenEnd:x(async()=>{await T()}),onCloseEnd:x(async()=>{await T()}),onResizeEnd:x(async()=>{await T()}),renderVisuallyHidden:x(async({})=>{await T()}),activate:x(async({})=>{await T()}),deactivate:x(async({})=>{await T()}),openSmoothly:x(async({})=>{await T()}),openImmediately:x(async({})=>{await T()}),snapSmoothly:x(async({})=>{await T()}),resizeSmoothly:x(async({})=>{await T()}),closeSmoothly:x(async({})=>{await T()})},guards:{initiallyClosed:({context:e})=>"CLOSED"===e.initialState,initiallyOpen:({context:e})=>"OPEN"===e.initialState}}),F=["children","sibling","className","footer","header","open","initialState","lastSnapRef","initialFocusRef","onDismiss","maxHeight","defaultSnap","snapPoints","blocking","scrollLocking","style","springConfig","onSpringStart","onSpringCancel","onSpringEnd","reserveScrollBarGap","expandOnContentDrag"],I=["velocity"],H=["onRest","config"],{tension:A,friction:U}=h.default,V=n.forwardRef(function(e,l){let{children:c,sibling:h,className:w,footer:k,header:E,open:R,lastSnapRef:T,initialFocusRef:O,onDismiss:D,maxHeight:V,defaultSnap:j=W,snapPoints:$=Q,blocking:q=!0,scrollLocking:K=!0,style:G,springConfig:Y,onSpringStart:X,onSpringCancel:Z,onSpringEnd:J,reserveScrollBarGap:ee=q,expandOnContentDrag:ne=!1}=e,te=N(e,F);const{ready:re,registerReady:ae}=function(){const[e,n]=o(!1),[t,r]=o({}),l=i(e=>(r(n=>C({},n,{[e]:!1})),()=>{r(n=>C({},n,{[e]:!0}))}),[]);return a(()=>{const e=Object.values(t);0!==e.length&&e.every(Boolean)&&n(!0)},[t]),{ready:e,registerReady:l}}(),le=t(!1),oe=t(X),ie=t(Z),ue=t(J);a(()=>{oe.current=X,ie.current=Z,ue.current=J},[Z,X,J]);const[se,ce]=d(()=>({y:0,ready:0,maxHeight:0,minSnap:0,maxSnap:0})),fe=t(null),de=t(null),pe=t(null),me=t(null),he=t(null),ge=t(null),ve=t(0),ye=t(),be=t(!1),Se=function(){const e=u(()=>"undefined"!=typeof window?window.matchMedia("(prefers-reduced-motion: reduce)"):null,[]),n=t(null==e?void 0:e.matches);return r(n.current?"reduce":"no-preference"),a(()=>{const t=e=>{n.current=e.matches};return null==e||e.addListener(t),()=>null==e?void 0:e.removeListener(t)},[e]),n}(),we=function({targetRef:e,enabled:n,reserveScrollBarGap:l}){const o=t({activate:()=>{throw new TypeError("Tried to activate scroll lock too early")},deactivate:()=>{}});return r(n?"Enabled":"Disabled"),a(()=>{if(!n)return o.current.deactivate(),void(o.current={activate:()=>{},deactivate:()=>{}});const t=e.current;let r=!1;o.current={activate:()=>{r||(r=!0,b(t,{allowTouchMove:e=>e.closest("[data-body-scroll-lock-ignore]"),reserveScrollBarGap:l}))},deactivate:()=>{r&&(r=!1,S(t))}}},[n,e,l]),o}({targetRef:de,enabled:re&&K,reserveScrollBarGap:ee}),ke=function({targetRef:e,enabled:n}){const l=t({activate:()=>{throw new TypeError("Tried to activate aria hider too early")},deactivate:()=>{}});return r(n?"Enabled":"Disabled"),a(()=>{if(!n)return l.current.deactivate(),void(l.current={activate:()=>{},deactivate:()=>{}});const t=e.current;let r=!1,a=[],o=[];l.current={activate:()=>{if(r)return;r=!0;const e=t.parentNode;document.querySelectorAll("body > *").forEach(n=>{if(n===e)return;let t=n.getAttribute("aria-hidden");null!==t&&"false"!==t||(a.push(t),o.push(n),n.setAttribute("aria-hidden","true"))})},deactivate:()=>{r&&(r=!1,o.forEach((e,n)=>{let t=a[n];null===t?e.removeAttribute("aria-hidden"):e.setAttribute("aria-hidden",t)}),a=[],o=[])}}},[e,n]),l}({targetRef:fe,enabled:re&&q}),Ee=function({targetRef:e,fallbackRef:n,initialFocusRef:l,enabled:o}){const i=t({activate:()=>{throw new TypeError("Tried to activate focus trap too early")},deactivate:()=>{}});return r(o?"Enabled":"Disabled"),a(()=>{if(!o)return i.current.deactivate(),void(i.current={activate:()=>{},deactivate:()=>{}});const t=n.current,r=y(e.current,{onActivate:void 0,initialFocus:l?()=>(null==l?void 0:l.current)||t:void 0,fallbackFocus:t,escapeDeactivates:!1,clickOutsideDeactivates:!1});let a=!1;i.current={activate:async()=>{a||(a=!0,await r.activate(),await new Promise(e=>setTimeout(()=>e(void 0),0)))},deactivate:()=>{a&&(a=!1,r.deactivate())}}},[o,n,l,e]),i}({targetRef:fe,fallbackRef:ge,initialFocusRef:O||void 0,enabled:re&&q&&!1!==O}),{minSnap:xe,maxSnap:Ce,maxHeight:Ne,findSnap:ze}=function({contentRef:e,controlledMaxHeight:n,footerEnabled:l,footerRef:i,getSnapPoints:s,headerEnabled:c,headerRef:f,heightRef:d,lastSnapRef:p,ready:m,registerReady:h,resizeSourceRef:g}){const{maxHeight:v,minHeight:y,headerHeight:b,footerHeight:S}=function({contentRef:e,controlledMaxHeight:n,footerEnabled:l,footerRef:i,headerEnabled:s,headerRef:c,registerReady:f,resizeSourceRef:d}){const p=u(()=>f("contentHeight"),[f]),m=function(e,n,l){const i=u(()=>n("maxHeight"),[n]),[s,c]=o(()=>_(e)||"undefined"!=typeof window?window.innerHeight:0),f=s>0,d=t(0);return r(e?"controlled":"auto"),a(()=>{f&&i()},[f,i]),z(()=>{if(e)return c(_(e)),void(l.current="maxheightprop");const n=()=>{d.current||(d.current=requestAnimationFrame(()=>{c(window.innerHeight),l.current="window",d.current=0}))};return window.addEventListener("resize",n),c(window.innerHeight),l.current="window",i(),()=>{window.removeEventListener("resize",n),cancelAnimationFrame(d.current)}},[e,i,l]),s}(n,f,d),h=L(c,{label:"headerHeight",enabled:s,resizeSourceRef:d}),g=L(e,{label:"contentHeight",enabled:!0,resizeSourceRef:d}),v=L(i,{label:"footerHeight",enabled:l,resizeSourceRef:d}),y=Math.min(m-h-v,g)+h+v;r(`minHeight: ${y}`);const b=g>0;return a(()=>{b&&p()},[b,p]),{maxHeight:m,minHeight:y,headerHeight:h,footerHeight:v}}({contentRef:e,controlledMaxHeight:n,footerEnabled:l,footerRef:i,headerEnabled:c,headerRef:f,registerReady:h,resizeSourceRef:g}),{snapPoints:w,minSnap:k,maxSnap:E}=function(e,n){const t=[].concat(e).map(_).reduce((e,t)=>(e.add(P(t,0,n)),e),new Set),r=Array.from(t),a=Math.min(...r);if(Number.isNaN(a))throw new TypeError("minSnap is NaN");const l=Math.max(...r);if(Number.isNaN(l))throw new TypeError("maxSnap is NaN");return{snapPoints:r,minSnap:a,maxSnap:l}}(m?s({height:d.current,footerHeight:S,headerHeight:b,minHeight:y,maxHeight:v}):[0],v);return r(`minSnap: ${k}, maxSnap:${E}`),{minSnap:k,maxSnap:E,findSnap:function(e){let n;n="function"==typeof e?e({footerHeight:S,headerHeight:b,height:d.current,minHeight:y,maxHeight:v,snapPoints:w,lastSnap:p.current}):e;const t=_(n);return w.reduce((e,n)=>Math.abs(n-t)<Math.abs(e-t)?n:e,k)},maxHeight:v}}({contentRef:pe,controlledMaxHeight:V,footerEnabled:!!k,footerRef:he,getSnapPoints:$,headerEnabled:!1!==E,headerRef:me,heightRef:ve,lastSnapRef:T,ready:re,registerReady:ae,resizeSourceRef:ye}),Pe=t(Ne),_e=t(xe),Re=t(Ce),Le=t(ze),Te=t(0);z(()=>{Pe.current=Ne,Re.current=Ce,_e.current=xe,Le.current=ze,Te.current=ze(j)},[ze,j,Ne,Ce,xe]);const Oe=i(e=>{let{onRest:n,config:{velocity:t=1}={}}=e,r=N(e.config,I),a=N(e,H);return new Promise(e=>ce(C({},a,{config:C({velocity:t},r,{mass:1,tension:A,friction:Math.max(U,U+(U-U*t))},Y),onRest:(...t)=>{e(...t),null==n||n(...t)}})))},[ce]),[De,Me]=f(M.provide({actions:{onOpenCancel:i(()=>null==ie.current?void 0:ie.current({type:"OPEN"}),[]),onSnapCancel:i(e=>null==ie.current?void 0:ie.current({type:"SNAP",source:e.context.snapSource}),[]),onCloseCancel:i(()=>null==ie.current?void 0:ie.current({type:"CLOSE"}),[]),onResizeCancel:i(()=>null==ie.current?void 0:ie.current({type:"RESIZE",source:ye.current}),[]),onOpenEnd:i(()=>null==ue.current?void 0:ue.current({type:"OPEN"}),[]),onSnapEnd:i((e,n)=>null==ue.current?void 0:ue.current({type:"SNAP",source:e.context.snapSource}),[]),onResizeEnd:i(()=>null==ue.current?void 0:ue.current({type:"RESIZE",source:ye.current}),[])},actors:{onSnapStart:x(async({input:e})=>{null==oe.current||oe.current({type:"SNAP",source:e.snapSource||"custom"})}),onOpenStart:x(async e=>{null==oe.current||oe.current({type:"OPEN"})}),onCloseStart:x(async()=>null==oe.current?void 0:oe.current({type:"CLOSE"})),onResizeStart:x(async()=>null==oe.current?void 0:oe.current({type:"RESIZE",source:ye.current})),onSnapEnd:x(async()=>{null==ue.current||ue.current({type:"SNAP",source:De.context.snapSource})}),onOpenEnd:x(async()=>null==ue.current?void 0:ue.current({type:"OPEN"})),onCloseEnd:x(async()=>null==ue.current?void 0:ue.current({type:"CLOSE"})),onResizeEnd:x(async()=>null==ue.current?void 0:ue.current({type:"RESIZE",source:ye.current})),renderVisuallyHidden:x(async()=>{await Oe({y:Te.current,ready:0,maxHeight:Pe.current,maxSnap:Re.current,minSnap:Te.current,immediate:!0})}),activate:x(async()=>{le.current=!0,await Promise.all([we.current.activate(),Ee.current.activate(),ke.current.activate()])}),deactivate:x(async()=>{we.current.deactivate(),Ee.current.deactivate(),ke.current.deactivate(),le.current=!1}),openImmediately:x(async()=>{ve.current=Te.current,await Oe({y:Te.current,ready:1,maxHeight:Pe.current,maxSnap:Re.current,minSnap:Te.current,immediate:!0})}),openSmoothly:x(async()=>{await Oe({y:0,ready:1,maxHeight:Pe.current,maxSnap:Re.current,minSnap:Te.current,immediate:!0}),ve.current=Te.current,await Oe({y:Te.current,ready:1,maxHeight:Pe.current,maxSnap:Re.current,minSnap:Te.current,immediate:Se.current})}),snapSmoothly:x(async({input:e})=>{const n=Le.current(e.y);ve.current=n,T.current=n,await Oe({y:n,ready:1,maxHeight:Pe.current,maxSnap:Re.current,minSnap:_e.current,immediate:Se.current,config:{velocity:e.velocity}})}),resizeSmoothly:x(async()=>{const e=Le.current(ve.current);ve.current=e,T.current=e,await Oe({y:e,ready:1,maxHeight:Pe.current,maxSnap:Re.current,minSnap:_e.current,immediate:"element"!==ye.current||Se.current})}),closeSmoothly:x(async()=>{Oe({minSnap:ve.current,immediate:!0}),ve.current=0,await Oe({y:0,maxHeight:Pe.current,maxSnap:Re.current,immediate:Se.current}),await Oe({ready:0,immediate:!0})})}}));a(()=>{re&&Me(R?{type:"OPEN"}:{type:"CLOSE"})},[R,Me,re]),z(()=>{(Ne||Ce||xe)&&Me({type:"RESIZE"})},[Ne,Ce,xe,Me]),a(()=>()=>{we.current.deactivate(),Ee.current.deactivate(),ke.current.deactivate()},[ke,Ee,we]),s(l,()=>({snapTo:(e,{velocity:n=1,source:t="custom"}={})=>{Me({type:"SNAP",payload:{y:Le.current(e),velocity:n,source:t}})},get height(){return ve.current}}),[Me]),a(()=>{const e=de.current,n=e=>{be.current&&e.preventDefault()},t=n=>{e.scrollTop<0&&(requestAnimationFrame(()=>{e.style.overflow="hidden",e.scrollTop=0,e.style.removeProperty("overflow")}),n.preventDefault())};return ne&&(e.addEventListener("scroll",n),e.addEventListener("touchmove",n),e.addEventListener("touchstart",t)),()=>{e.removeEventListener("scroll",n),e.removeEventListener("touchmove",n),e.removeEventListener("touchstart",t)}},[ne,de]);const Fe=g(({args:[{closeOnTap:e=!1,isContentDragging:n=!1}={}]=[],cancel:t,direction:[,r],down:a,first:l,last:o,memo:i=se.y.getValue(),movement:[,u],tap:s,velocity:c})=>{const f=-1*u;if(!le.current)return t(),i;if(D&&e&&s)return t(),setTimeout(()=>D(),0),i;if(s)return i;const d=i+f,p=f*c,m=Math.max(_e.current,Math.min(Re.current,d+2*p));if(!a&&D&&r>0&&d+p<_e.current/2)return t(),D(),i;let h=a?D||_e.current!==Re.current?v(d,D?0:_e.current,Re.current,.55):d<_e.current?v(d,_e.current,2*Re.current,.55):v(d,_e.current/2,Re.current,.55):m;return ne&&n?(h>=Re.current&&(h=Re.current),i===Re.current&&de.current.scrollTop>0&&(h=Re.current),be.current=h<Re.current):be.current=!1,l&&Me({type:"DRAG"}),o?(Me({type:"SNAP",payload:{y:h,velocity:c>.05?c:1,source:"dragging"}}),i):(ce({y:h,ready:1,maxHeight:Pe.current,maxSnap:Re.current,minSnap:_e.current,immediate:!0,config:{velocity:c}}),i)},{filterTaps:!0});if(Number.isNaN(Re.current))throw new TypeError("maxSnapRef is NaN!!");if(Number.isNaN(_e.current))throw new TypeError("minSnapRef is NaN!!");const Ie=function({spring:e}){const n=p([e.y,e.maxHeight],(e,n)=>`${Math.round(P(n-e,0,16))}px`),t=p([e.y,e.minSnap,e.maxSnap],(e,n,t)=>`${P(e,n,t)}px`),r=p([e.y,e.minSnap,e.maxSnap],(e,n,t)=>e<n?n-e+"px":e>t?t-e+"px":"0px"),a=p([e.y,e.maxSnap],(e,n)=>e>=n?Math.ceil(e-n):0);return{"--rsbs-content-opacity":p([e.y,e.minSnap],(e,n)=>{if(!n)return 0;const t=Math.max(n/2-45,0);return P((e-t)*(1/(Math.min(n/2+45,n)-t)+0),0,1)}),"--rsbs-backdrop-opacity":p([e.y,e.minSnap],(e,n)=>n?P(e/n,0,1):0),"--rsbs-antigap-scale-y":a,"--rsbs-overlay-translate-y":r,"--rsbs-overlay-rounded":n,"--rsbs-overlay-h":t}}({spring:se});/*#__PURE__*/return n.createElement(m.div,C({},te,{"data-rsbs-root":!0,"data-rsbs-state":B.find(e=>(null==De?void 0:De.value)===e),"data-rsbs-is-blocking":q,"data-rsbs-is-dismissable":!!D,"data-rsbs-has-header":!!E,"data-rsbs-has-footer":!!k,className:w,ref:fe,style:C({},Ie,G,{opacity:se.ready})}),h,q&&/*#__PURE__*/n.createElement("div",C({key:"backdrop","data-rsbs-backdrop":!0},Fe({closeOnTap:!0}))),/*#__PURE__*/n.createElement("div",{key:"overlay","aria-modal":"true",role:"dialog","data-rsbs-overlay":!0,tabIndex:-1,ref:ge,onKeyDown:e=>{"Escape"===e.key&&(e.stopPropagation(),D&&D())}},!1!==E&&/*#__PURE__*/n.createElement("div",C({key:"header","data-rsbs-header":!0,ref:me},Fe()),E),/*#__PURE__*/n.createElement("div",C({key:"scroll","data-rsbs-scroll":!0,ref:de},ne?Fe({isContentDragging:!0}):{}),/*#__PURE__*/n.createElement("div",{"data-rsbs-content":!0,ref:pe},c)),k&&/*#__PURE__*/n.createElement("div",C({key:"footer",ref:he,"data-rsbs-footer":!0},Fe()),k)))}),B=["closed","opening","open","closing","dragging","snapping","resizing"];function W({snapPoints:e,lastSnap:n}){return null!=n?n:Math.min(...e)}function Q({minHeight:e}){return e}const j="undefined"!=typeof window&&window.document&&window.document.createElement?l:a;function $(e){var n={exports:{}};return e(n,n.exports),n.exports}var q=$(function(e,n){function t(e,n){var t=e.length;e.push(n);e:for(;0<t;){var r=t-1>>>1,a=e[r];if(!(0<l(a,n)))break e;e[r]=n,e[t]=a,t=r}}function r(e){return 0===e.length?null:e[0]}function a(e){if(0===e.length)return null;var n=e[0],t=e.pop();if(t!==n){e[0]=t;e:for(var r=0,a=e.length,o=a>>>1;r<o;){var i=2*(r+1)-1,u=e[i],s=i+1,c=e[s];if(0>l(u,t))s<a&&0>l(c,u)?(e[r]=c,e[s]=t,r=s):(e[r]=u,e[i]=t,r=i);else{if(!(s<a&&0>l(c,t)))break e;e[r]=c,e[s]=t,r=s}}}return n}function l(e,n){var t=e.sortIndex-n.sortIndex;return 0!==t?t:e.id-n.id}if("object"==typeof performance&&"function"==typeof performance.now){var o=performance;n.unstable_now=function(){return o.now()}}else{var i=Date,u=i.now();n.unstable_now=function(){return i.now()-u}}var s=[],c=[],f=1,d=null,p=3,m=!1,h=!1,g=!1,v="function"==typeof setTimeout?setTimeout:null,y="function"==typeof clearTimeout?clearTimeout:null,b="undefined"!=typeof setImmediate?setImmediate:null;function S(e){for(var n=r(c);null!==n;){if(null===n.callback)a(c);else{if(!(n.startTime<=e))break;a(c),n.sortIndex=n.expirationTime,t(s,n)}n=r(c)}}function w(e){if(g=!1,S(e),!h)if(null!==r(s))h=!0,O(k);else{var n=r(c);null!==n&&D(w,n.startTime-e)}}function k(e,t){h=!1,g&&(g=!1,y(N),N=-1),m=!0;var l=p;try{for(S(t),d=r(s);null!==d&&(!(d.expirationTime>t)||e&&!_());){var o=d.callback;if("function"==typeof o){d.callback=null,p=d.priorityLevel;var i=o(d.expirationTime<=t);t=n.unstable_now(),"function"==typeof i?d.callback=i:d===r(s)&&a(s),S(t)}else a(s);d=r(s)}if(null!==d)var u=!0;else{var f=r(c);null!==f&&D(w,f.startTime-t),u=!1}return u}finally{d=null,p=l,m=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var E,x=!1,C=null,N=-1,z=5,P=-1;function _(){return!(n.unstable_now()-P<z)}function R(){if(null!==C){var e=n.unstable_now();P=e;var t=!0;try{t=C(!0,e)}finally{t?E():(x=!1,C=null)}}else x=!1}if("function"==typeof b)E=function(){b(R)};else if("undefined"!=typeof MessageChannel){var L=new MessageChannel,T=L.port2;L.port1.onmessage=R,E=function(){T.postMessage(null)}}else E=function(){v(R,0)};function O(e){C=e,x||(x=!0,E())}function D(e,t){N=v(function(){e(n.unstable_now())},t)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(e){e.callback=null},n.unstable_continueExecution=function(){h||m||(h=!0,O(k))},n.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):z=0<e?Math.floor(1e3/e):5},n.unstable_getCurrentPriorityLevel=function(){return p},n.unstable_getFirstCallbackNode=function(){return r(s)},n.unstable_next=function(e){switch(p){case 1:case 2:case 3:var n=3;break;default:n=p}var t=p;p=n;try{return e()}finally{p=t}},n.unstable_pauseExecution=function(){},n.unstable_requestPaint=function(){},n.unstable_runWithPriority=function(e,n){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var t=p;p=e;try{return n()}finally{p=t}},n.unstable_scheduleCallback=function(e,a,l){var o=n.unstable_now();switch(l="object"==typeof l&&null!==l&&"number"==typeof(l=l.delay)&&0<l?o+l:o,e){case 1:var i=-1;break;case 2:i=250;break;case 5:i=1073741823;break;case 4:i=1e4;break;default:i=5e3}return e={id:f++,callback:a,priorityLevel:e,startTime:l,expirationTime:i=l+i,sortIndex:-1},l>o?(e.sortIndex=l,t(c,e),null===r(s)&&e===r(c)&&(g?(y(N),N=-1):g=!0,D(w,l-o))):(e.sortIndex=i,t(s,e),h||m||(h=!0,O(k))),e},n.unstable_shouldYield=_,n.unstable_wrapCallback=function(e){var n=p;return function(){var t=p;p=n;try{return e.apply(this,arguments)}finally{p=t}}}});$(function(e,n){});var K=$(function(e){e.exports=q});function G(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,t=1;t<arguments.length;t++)n+="&args[]="+encodeURIComponent(arguments[t]);return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var Y=new Set,X={};function Z(e,n){J(e,n),J(e+"Capture",n)}function J(e,n){for(X[e]=n,e=0;e<n.length;e++)Y.add(n[e])}var ee=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),ne=Object.prototype.hasOwnProperty,te=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,re={},ae={};function le(e,n,t,r,a,l,o){this.acceptsBooleans=2===n||3===n||4===n,this.attributeName=r,this.attributeNamespace=a,this.mustUseProperty=t,this.propertyName=e,this.type=n,this.sanitizeURL=l,this.removeEmptyString=o}var oe={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){oe[e]=new le(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var n=e[0];oe[n]=new le(n,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){oe[e]=new le(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){oe[e]=new le(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){oe[e]=new le(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){oe[e]=new le(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){oe[e]=new le(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){oe[e]=new le(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){oe[e]=new le(e,5,!1,e.toLowerCase(),null,!1,!1)});var ie=/[\-:]([a-z])/g;function ue(e){return e[1].toUpperCase()}function se(e,n,t,r){var a=oe.hasOwnProperty(n)?oe[n]:null;(null!==a?0!==a.type:r||!(2<n.length)||"o"!==n[0]&&"O"!==n[0]||"n"!==n[1]&&"N"!==n[1])&&(function(e,n,t,r){if(null==n||function(e,n,t,r){if(null!==t&&0===t.type)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==t?!t.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,n,t,r))return!0;if(r)return!1;if(null!==t)switch(t.type){case 3:return!n;case 4:return!1===n;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}(n,t,a,r)&&(t=null),r||null===a?function(e){return!!ne.call(ae,e)||!ne.call(re,e)&&(te.test(e)?ae[e]=!0:(re[e]=!0,!1))}(n)&&(null===t?e.removeAttribute(n):e.setAttribute(n,""+t)):a.mustUseProperty?e[a.propertyName]=null===t?3!==a.type&&"":t:(n=a.attributeName,r=a.attributeNamespace,null===t?e.removeAttribute(n):(t=3===(a=a.type)||4===a&&!0===t?"":""+t,r?e.setAttributeNS(r,n,t):e.setAttribute(n,t))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var n=e.replace(ie,ue);oe[n]=new le(n,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var n=e.replace(ie,ue);oe[n]=new le(n,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var n=e.replace(ie,ue);oe[n]=new le(n,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){oe[e]=new le(e,1,!1,e.toLowerCase(),null,!1,!1)}),oe.xlinkHref=new le("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){oe[e]=new le(e,1,!1,e.toLowerCase(),null,!0,!0)});var ce=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,fe=Symbol.for("react.element"),de=Symbol.for("react.portal"),pe=Symbol.for("react.fragment"),me=Symbol.for("react.strict_mode"),he=Symbol.for("react.profiler"),ge=Symbol.for("react.provider"),ve=Symbol.for("react.context"),ye=Symbol.for("react.forward_ref"),be=Symbol.for("react.suspense"),Se=Symbol.for("react.suspense_list"),we=Symbol.for("react.memo"),ke=Symbol.for("react.lazy"),Ee=Symbol.for("react.offscreen"),xe=Symbol.iterator;function Ce(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=xe&&e[xe]||e["@@iterator"])?e:null}var Ne,ze=Object.assign;function Pe(e){if(void 0===Ne)try{throw Error()}catch(e){var n=e.stack.trim().match(/\n( *(at )?)/);Ne=n&&n[1]||""}return"\n"+Ne+e}var _e=!1;function Re(e,n){if(!e||_e)return"";_e=!0;var t=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(n)if(n=function(){throw Error()},Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(n){if(n&&r&&"string"==typeof n.stack){for(var a=n.stack.split("\n"),l=r.stack.split("\n"),o=a.length-1,i=l.length-1;1<=o&&0<=i&&a[o]!==l[i];)i--;for(;1<=o&&0<=i;o--,i--)if(a[o]!==l[i]){if(1!==o||1!==i)do{if(o--,0>--i||a[o]!==l[i]){var u="\n"+a[o].replace(" at new "," at ");return e.displayName&&u.includes("<anonymous>")&&(u=u.replace("<anonymous>",e.displayName)),u}}while(1<=o&&0<=i);break}}}finally{_e=!1,Error.prepareStackTrace=t}return(e=e?e.displayName||e.name:"")?Pe(e):""}function Le(e){switch(e.tag){case 5:return Pe(e.type);case 16:return Pe("Lazy");case 13:return Pe("Suspense");case 19:return Pe("SuspenseList");case 0:case 2:case 15:return Re(e.type,!1);case 11:return Re(e.type.render,!1);case 1:return Re(e.type,!0);default:return""}}function Te(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case pe:return"Fragment";case de:return"Portal";case he:return"Profiler";case me:return"StrictMode";case be:return"Suspense";case Se:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case ve:return(e.displayName||"Context")+".Consumer";case ge:return(e._context.displayName||"Context")+".Provider";case ye:var n=e.render;return(e=e.displayName)||(e=""!==(e=n.displayName||n.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case we:return null!==(n=e.displayName||null)?n:Te(e.type)||"Memo";case ke:n=e._payload,e=e._init;try{return Te(e(n))}catch(e){}}return null}function Oe(e){var n=e.type;switch(e.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=n.render).displayName||e.name||"",n.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Te(n);case 8:return n===me?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof n)return n.displayName||n.name||null;if("string"==typeof n)return n}return null}function De(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function Me(e){var n=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===n||"radio"===n)}function Fe(e){e._valueTracker||(e._valueTracker=function(e){var n=Me(e)?"checked":"value",t=Object.getOwnPropertyDescriptor(e.constructor.prototype,n),r=""+e[n];if(!e.hasOwnProperty(n)&&void 0!==t&&"function"==typeof t.get&&"function"==typeof t.set){var a=t.get,l=t.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return a.call(this)},set:function(e){r=""+e,l.call(this,e)}}),Object.defineProperty(e,n,{enumerable:t.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}(e))}function Ie(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var t=n.getValue(),r="";return e&&(r=Me(e)?e.checked?"true":"false":e.value),(e=r)!==t&&(n.setValue(e),!0)}function He(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(n){return e.body}}function Ae(e,n){var t=n.checked;return ze({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=t?t:e._wrapperState.initialChecked})}function Ue(e,n){var t=null==n.defaultValue?"":n.defaultValue,r=null!=n.checked?n.checked:n.defaultChecked;t=De(null!=n.value?n.value:t),e._wrapperState={initialChecked:r,initialValue:t,controlled:"checkbox"===n.type||"radio"===n.type?null!=n.checked:null!=n.value}}function Ve(e,n){null!=(n=n.checked)&&se(e,"checked",n,!1)}function Be(e,n){Ve(e,n);var t=De(n.value),r=n.type;if(null!=t)"number"===r?(0===t&&""===e.value||e.value!=t)&&(e.value=""+t):e.value!==""+t&&(e.value=""+t);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");n.hasOwnProperty("value")?Qe(e,n.type,t):n.hasOwnProperty("defaultValue")&&Qe(e,n.type,De(n.defaultValue)),null==n.checked&&null!=n.defaultChecked&&(e.defaultChecked=!!n.defaultChecked)}function We(e,n,t){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var r=n.type;if(("submit"===r||"reset"===r)&&null==n.value)return;n=""+e._wrapperState.initialValue,t||n===e.value||(e.value=n),e.defaultValue=n}""!==(t=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==t&&(e.name=t)}function Qe(e,n,t){"number"===n&&He(e.ownerDocument)===e||(null==t?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+t&&(e.defaultValue=""+t))}var je=Array.isArray;function $e(e,n,t,r){if(e=e.options,n){n={};for(var a=0;a<t.length;a++)n["$"+t[a]]=!0;for(t=0;t<e.length;t++)a=n.hasOwnProperty("$"+e[t].value),e[t].selected!==a&&(e[t].selected=a),a&&r&&(e[t].defaultSelected=!0)}else{for(t=""+De(t),n=null,a=0;a<e.length;a++){if(e[a].value===t)return e[a].selected=!0,void(r&&(e[a].defaultSelected=!0));null!==n||e[a].disabled||(n=e[a])}null!==n&&(n.selected=!0)}}function qe(e,n){if(null!=n.dangerouslySetInnerHTML)throw Error(G(91));return ze({},n,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Ke(e,n){var t=n.value;if(null==t){if(t=n.children,n=n.defaultValue,null!=t){if(null!=n)throw Error(G(92));if(je(t)){if(1<t.length)throw Error(G(93));t=t[0]}n=t}null==n&&(n=""),t=n}e._wrapperState={initialValue:De(t)}}function Ge(e,n){var t=De(n.value),r=De(n.defaultValue);null!=t&&((t=""+t)!==e.value&&(e.value=t),null==n.defaultValue&&e.defaultValue!==t&&(e.defaultValue=t)),null!=r&&(e.defaultValue=""+r)}function Ye(e){var n=e.textContent;n===e._wrapperState.initialValue&&""!==n&&null!==n&&(e.value=n)}function Xe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Ze(e,n){return null==e||"http://www.w3.org/1999/xhtml"===e?Xe(n):"http://www.w3.org/2000/svg"===e&&"foreignObject"===n?"http://www.w3.org/1999/xhtml":e}var Je,en,nn=(en=function(e,n){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=n;else{for((Je=Je||document.createElement("div")).innerHTML="<svg>"+n.valueOf().toString()+"</svg>",n=Je.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;n.firstChild;)e.appendChild(n.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,n,t,r){MSApp.execUnsafeLocalFunction(function(){return en(e,n)})}:en);function tn(e,n){if(n){var t=e.firstChild;if(t&&t===e.lastChild&&3===t.nodeType)return void(t.nodeValue=n)}e.textContent=n}var rn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},an=["Webkit","ms","Moz","O"];function ln(e,n,t){return null==n||"boolean"==typeof n||""===n?"":t||"number"!=typeof n||0===n||rn.hasOwnProperty(e)&&rn[e]?(""+n).trim():n+"px"}function on(e,n){for(var t in e=e.style,n)if(n.hasOwnProperty(t)){var r=0===t.indexOf("--"),a=ln(t,n[t],r);"float"===t&&(t="cssFloat"),r?e.setProperty(t,a):e[t]=a}}Object.keys(rn).forEach(function(e){an.forEach(function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1),rn[n]=rn[e]})});var un=ze({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function sn(e,n){if(n){if(un[e]&&(null!=n.children||null!=n.dangerouslySetInnerHTML))throw Error(G(137,e));if(null!=n.dangerouslySetInnerHTML){if(null!=n.children)throw Error(G(60));if("object"!=typeof n.dangerouslySetInnerHTML||!("__html"in n.dangerouslySetInnerHTML))throw Error(G(61))}if(null!=n.style&&"object"!=typeof n.style)throw Error(G(62))}}function cn(e,n){if(-1===e.indexOf("-"))return"string"==typeof n.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var fn=null;function dn(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var pn=null,mn=null,hn=null;function gn(e){if(e=sl(e)){if("function"!=typeof pn)throw Error(G(280));var n=e.stateNode;n&&(n=fl(n),pn(e.stateNode,e.type,n))}}function vn(e){mn?hn?hn.push(e):hn=[e]:mn=e}function yn(){if(mn){var e=mn,n=hn;if(hn=mn=null,gn(e),n)for(e=0;e<n.length;e++)gn(n[e])}}function bn(e,n){return e(n)}function Sn(){}var wn=!1;function kn(e,n,t){if(wn)return e(n,t);wn=!0;try{return bn(e,n,t)}finally{wn=!1,(null!==mn||null!==hn)&&(Sn(),yn())}}function En(e,n){var t=e.stateNode;if(null===t)return null;var r=fl(t);if(null===r)return null;t=r[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(t&&"function"!=typeof t)throw Error(G(231,n,typeof t));return t}var xn=!1;if(ee)try{var Cn={};Object.defineProperty(Cn,"passive",{get:function(){xn=!0}}),window.addEventListener("test",Cn,Cn),window.removeEventListener("test",Cn,Cn)}catch(en){xn=!1}function Nn(e,n,t,r,a,l,o,i,u){var s=Array.prototype.slice.call(arguments,3);try{n.apply(t,s)}catch(e){this.onError(e)}}var zn=!1,Pn=null,_n=!1,Rn=null,Ln={onError:function(e){zn=!0,Pn=e}};function Tn(e,n,t,r,a,l,o,i,u){zn=!1,Pn=null,Nn.apply(Ln,arguments)}function On(e){var n=e,t=e;if(e.alternate)for(;n.return;)n=n.return;else{e=n;do{!!(4098&(n=e).flags)&&(t=n.return),e=n.return}while(e)}return 3===n.tag?t:null}function Dn(e){if(13===e.tag){var n=e.memoizedState;if(null===n&&null!==(e=e.alternate)&&(n=e.memoizedState),null!==n)return n.dehydrated}return null}function Mn(e){if(On(e)!==e)throw Error(G(188))}function Fn(e){return null!==(e=function(e){var n=e.alternate;if(!n){if(null===(n=On(e)))throw Error(G(188));return n!==e?null:e}for(var t=e,r=n;;){var a=t.return;if(null===a)break;var l=a.alternate;if(null===l){if(null!==(r=a.return)){t=r;continue}break}if(a.child===l.child){for(l=a.child;l;){if(l===t)return Mn(a),e;if(l===r)return Mn(a),n;l=l.sibling}throw Error(G(188))}if(t.return!==r.return)t=a,r=l;else{for(var o=!1,i=a.child;i;){if(i===t){o=!0,t=a,r=l;break}if(i===r){o=!0,r=a,t=l;break}i=i.sibling}if(!o){for(i=l.child;i;){if(i===t){o=!0,t=l,r=a;break}if(i===r){o=!0,r=l,t=a;break}i=i.sibling}if(!o)throw Error(G(189))}}if(t.alternate!==r)throw Error(G(190))}if(3!==t.tag)throw Error(G(188));return t.stateNode.current===t?e:n}(e))?In(e):null}function In(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var n=In(e);if(null!==n)return n;e=e.sibling}return null}var Hn=K.unstable_scheduleCallback,An=K.unstable_cancelCallback,Un=K.unstable_shouldYield,Vn=K.unstable_requestPaint,Bn=K.unstable_now,Wn=K.unstable_getCurrentPriorityLevel,Qn=K.unstable_ImmediatePriority,jn=K.unstable_UserBlockingPriority,$n=K.unstable_NormalPriority,qn=K.unstable_LowPriority,Kn=K.unstable_IdlePriority,Gn=null,Yn=null,Xn=Math.clz32?Math.clz32:function(e){return 0==(e>>>=0)?32:31-(Zn(e)/Jn|0)|0},Zn=Math.log,Jn=Math.LN2,et=64,nt=4194304;function tt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function rt(e,n){var t=e.pendingLanes;if(0===t)return 0;var r=0,a=e.suspendedLanes,l=e.pingedLanes,o=268435455&t;if(0!==o){var i=o&~a;0!==i?r=tt(i):0!=(l&=o)&&(r=tt(l))}else 0!=(o=t&~a)?r=tt(o):0!==l&&(r=tt(l));if(0===r)return 0;if(0!==n&&n!==r&&!(n&a)&&((a=r&-r)>=(l=n&-n)||16===a&&4194240&l))return n;if(4&r&&(r|=16&t),0!==(n=e.entangledLanes))for(e=e.entanglements,n&=r;0<n;)r|=e[t=31-Xn(n)],n&=~(a=1<<t);return r}function at(e,n){switch(e){case 1:case 2:case 4:return n+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;default:return-1}}function lt(e){return 0!=(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function ot(){var e=et;return!(4194240&(et<<=1))&&(et=64),e}function it(e){for(var n=[],t=0;31>t;t++)n.push(e);return n}function ut(e,n,t){e.pendingLanes|=n,536870912!==n&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[n=31-Xn(n)]=t}function st(e,n){var t=e.entangledLanes|=n;for(e=e.entanglements;t;){var r=31-Xn(t),a=1<<r;a&n|e[r]&n&&(e[r]|=n),t&=~a}}var ct=0;function ft(e){return 1<(e&=-e)?4<e?268435455&e?16:536870912:4:1}var dt,pt,mt,ht,gt,vt=!1,yt=[],bt=null,St=null,wt=null,kt=new Map,Et=new Map,xt=[],Ct="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Nt(e,n){switch(e){case"focusin":case"focusout":bt=null;break;case"dragenter":case"dragleave":St=null;break;case"mouseover":case"mouseout":wt=null;break;case"pointerover":case"pointerout":kt.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":Et.delete(n.pointerId)}}function zt(e,n,t,r,a,l){return null===e||e.nativeEvent!==l?(e={blockedOn:n,domEventName:t,eventSystemFlags:r,nativeEvent:l,targetContainers:[a]},null!==n&&null!==(n=sl(n))&&pt(n),e):(e.eventSystemFlags|=r,n=e.targetContainers,null!==a&&-1===n.indexOf(a)&&n.push(a),e)}function Pt(e){var n=ul(e.target);if(null!==n){var t=On(n);if(null!==t)if(13===(n=t.tag)){if(null!==(n=Dn(t)))return e.blockedOn=n,void gt(e.priority,function(){mt(t)})}else if(3===n&&t.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===t.tag?t.stateNode.containerInfo:null)}e.blockedOn=null}function _t(e){if(null!==e.blockedOn)return!1;for(var n=e.targetContainers;0<n.length;){var t=Ut(e.domEventName,e.eventSystemFlags,n[0],e.nativeEvent);if(null!==t)return null!==(n=sl(t))&&pt(n),e.blockedOn=t,!1;var r=new(t=e.nativeEvent).constructor(t.type,t);fn=r,t.target.dispatchEvent(r),fn=null,n.shift()}return!0}function Rt(e,n,t){_t(e)&&t.delete(n)}function Lt(){vt=!1,null!==bt&&_t(bt)&&(bt=null),null!==St&&_t(St)&&(St=null),null!==wt&&_t(wt)&&(wt=null),kt.forEach(Rt),Et.forEach(Rt)}function Tt(e,n){e.blockedOn===n&&(e.blockedOn=null,vt||(vt=!0,K.unstable_scheduleCallback(K.unstable_NormalPriority,Lt)))}function Ot(e){function n(n){return Tt(n,e)}if(0<yt.length){Tt(yt[0],e);for(var t=1;t<yt.length;t++){var r=yt[t];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==bt&&Tt(bt,e),null!==St&&Tt(St,e),null!==wt&&Tt(wt,e),kt.forEach(n),Et.forEach(n),t=0;t<xt.length;t++)(r=xt[t]).blockedOn===e&&(r.blockedOn=null);for(;0<xt.length&&null===(t=xt[0]).blockedOn;)Pt(t),null===t.blockedOn&&xt.shift()}var Dt=ce.ReactCurrentBatchConfig,Mt=!0;function Ft(e,n,t,r){var a=ct,l=Dt.transition;Dt.transition=null;try{ct=1,Ht(e,n,t,r)}finally{ct=a,Dt.transition=l}}function It(e,n,t,r){var a=ct,l=Dt.transition;Dt.transition=null;try{ct=4,Ht(e,n,t,r)}finally{ct=a,Dt.transition=l}}function Ht(e,n,t,r){if(Mt){var a=Ut(e,n,t,r);if(null===a)Da(e,n,r,At,t),Nt(e,r);else if(function(e,n,t,r,a){switch(n){case"focusin":return bt=zt(bt,e,n,t,r,a),!0;case"dragenter":return St=zt(St,e,n,t,r,a),!0;case"mouseover":return wt=zt(wt,e,n,t,r,a),!0;case"pointerover":var l=a.pointerId;return kt.set(l,zt(kt.get(l)||null,e,n,t,r,a)),!0;case"gotpointercapture":return Et.set(l=a.pointerId,zt(Et.get(l)||null,e,n,t,r,a)),!0}return!1}(a,e,n,t,r))r.stopPropagation();else if(Nt(e,r),4&n&&-1<Ct.indexOf(e)){for(;null!==a;){var l=sl(a);if(null!==l&&dt(l),null===(l=Ut(e,n,t,r))&&Da(e,n,r,At,t),l===a)break;a=l}null!==a&&r.stopPropagation()}else Da(e,n,r,null,t)}}var At=null;function Ut(e,n,t,r){if(At=null,null!==(e=ul(e=dn(r))))if(null===(n=On(e)))e=null;else if(13===(t=n.tag)){if(null!==(e=Dn(n)))return e;e=null}else if(3===t){if(n.stateNode.current.memoizedState.isDehydrated)return 3===n.tag?n.stateNode.containerInfo:null;e=null}else n!==e&&(e=null);return At=e,null}function Vt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Wn()){case Qn:return 1;case jn:return 4;case $n:case qn:return 16;case Kn:return 536870912;default:return 16}default:return 16}}var Bt=null,Wt=null,Qt=null;function jt(){if(Qt)return Qt;var e,n,t=Wt,r=t.length,a="value"in Bt?Bt.value:Bt.textContent,l=a.length;for(e=0;e<r&&t[e]===a[e];e++);var o=r-e;for(n=1;n<=o&&t[r-n]===a[l-n];n++);return Qt=a.slice(e,1<n?1-n:void 0)}function $t(e){var n=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===n&&(e=13):e=n,10===e&&(e=13),32<=e||13===e?e:0}function qt(){return!0}function Kt(){return!1}function Gt(e){function n(n,t,r,a,l){for(var o in this._reactName=n,this._targetInst=r,this.type=t,this.nativeEvent=a,this.target=l,this.currentTarget=null,e)e.hasOwnProperty(o)&&(this[o]=(n=e[o])?n(a):a[o]);return this.isDefaultPrevented=(null!=a.defaultPrevented?a.defaultPrevented:!1===a.returnValue)?qt:Kt,this.isPropagationStopped=Kt,this}return ze(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=qt)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=qt)},persist:function(){},isPersistent:qt}),n}var Yt,Xt,Zt,Jt={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},er=Gt(Jt),nr=ze({},Jt,{view:0,detail:0}),tr=Gt(nr),rr=ze({},nr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:hr,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==Zt&&(Zt&&"mousemove"===e.type?(Yt=e.screenX-Zt.screenX,Xt=e.screenY-Zt.screenY):Xt=Yt=0,Zt=e),Yt)},movementY:function(e){return"movementY"in e?e.movementY:Xt}}),ar=Gt(rr),lr=Gt(ze({},rr,{dataTransfer:0})),or=Gt(ze({},nr,{relatedTarget:0})),ir=Gt(ze({},Jt,{animationName:0,elapsedTime:0,pseudoElement:0})),ur=ze({},Jt,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),sr=Gt(ur),cr=Gt(ze({},Jt,{data:0})),fr={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},dr={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121