@medplum/app 5.1.6 → 5.1.7
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.
|
@@ -50,10 +50,10 @@ ${o?`${s(`light`)}{${o}}`:``}`}function Er({color:e,theme:t,autoContrast:n}){ret
|
|
|
50
50
|
Prefix can't start with '-' when allowNegative is true.
|
|
51
51
|
prefix: `+i+`
|
|
52
52
|
allowNegative: `+a+`
|
|
53
|
-
`),a=!1),Object.assign(Object.assign({},e),{allowNegative:a})}function __(e){e=g_(e),e.decimalSeparator,e.allowedDecimalSeparators,e.thousandsGroupStyle;var t=e.suffix,n=e.allowNegative,r=e.allowLeadingZeros,i=e.onKeyDown;i===void 0&&(i=Mg);var a=e.onBlur;a===void 0&&(a=Mg);var o=e.thousandSeparator,s=e.decimalScale,c=e.fixedDecimalScale,l=e.prefix;l===void 0&&(l=``);var u=e.defaultValue,d=e.value,f=e.valueIsNumericString,p=e.onValueChange,m=Ag(e,[`decimalSeparator`,`allowedDecimalSeparators`,`thousandsGroupStyle`,`suffix`,`allowNegative`,`allowLeadingZeros`,`onKeyDown`,`onBlur`,`thousandSeparator`,`decimalScale`,`fixedDecimalScale`,`prefix`,`defaultValue`,`value`,`valueIsNumericString`,`onValueChange`]),h=u_(e),g=h.decimalSeparator,_=h.allowedDecimalSeparators,v=function(t){return l_(t,e)},y=function(t,n){return m_(t,n,e)},b=Fg(d)?u:d,x=f??p_(b,l,t);Fg(d)?Fg(u)||(x||=typeof u==`number`):x||=typeof d==`number`;var S=function(e){return Lg(e)?e:(typeof e==`number`&&(e=Kg(e)),x&&typeof s==`number`?qg(e,s,!!c):e)},C=a_(S(d),S(u),!!x,v,y,p),w=C[0],T=w.numAsString,E=w.formattedValue,D=C[1];return Object.assign(Object.assign({},m),{value:E,valueIsNumericString:!1,isValidInputCharacter:function(e){return e===g?!0:Pg(e)},isCharacterSame:function(e){var t=e.currentValue,n=e.lastValue,r=e.formattedValue,i=e.currentValueIndex,a=e.formattedValueIndex,o=t[i],u=r[a],f=Yg(n,t).to,p=function(e){return y(e).indexOf(`.`)+l.length};return d===0&&c&&s&&t[f.start]===g&&p(t)<i&&p(r)>a?!1:i>=f.start&&i<f.end&&_&&_.includes(o)&&u===g?!0:o===u},onValueChange:D,format:v,removeFormatting:y,getCaretBoundary:function(t){return h_(t,e)},onKeyDown:function(e){var t=e.target,r=e.key,a=t.selectionStart,u=t.selectionEnd,d=t.value;if(d===void 0&&(d=``),(r===`Backspace`||r===`Delete`)&&u<l.length&&d!==`-`){e.preventDefault();return}if(a!==u){i(e);return}r===`Backspace`&&d[0]===`-`&&a===l.length+1&&n&&Jg(t,1),s&&c&&(r===`Backspace`&&d[a-1]===g?(Jg(t,a-1),e.preventDefault()):r===`Delete`&&d[a]===g&&e.preventDefault()),_?.includes(r)&&d[a]===g&&Jg(t,a+1);var f=o===!0?`,`:o;r===`Backspace`&&d[a-1]===f&&Jg(t,a-1),r===`Delete`&&d[a]===f&&Jg(t,a+1),i(e)},onBlur:function(t){var n=T;n.match(/\d/g)||(n=``),r||(n=Ug(n)),c&&s&&(n=qg(n,s,c)),n!==T&&D({formattedValue:l_(n,e),value:n,floatValue:parseFloat(n)},{event:t,source:jg.event}),a(t)}})}function v_(e){var t=__(e);return b.createElement(c_,Object.assign({},t))}var y_={root:`m_e2f5cd4e`,controls:`m_95e17d22`,control:`m_80b4b171`};function b_({direction:e,style:t,...n}){return(0,L.jsx)(`svg`,{style:{width:`var(--ni-chevron-size)`,height:`var(--ni-chevron-size)`,transform:e===`up`?`rotate(180deg)`:void 0,...t},viewBox:`0 0 15 15`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...n,children:(0,L.jsx)(`path`,{d:`M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z`,fill:`currentColor`,fillRule:`evenodd`,clipRule:`evenodd`})})}var x_=/^(0\.0*|-0(\.0*)?)$/,S_=/^-?0\d+(\.\d+)?\.?$/,C_=/\.\d*0$/,w_=/^-?\d+\.$/;function T_(e){return typeof e==`string`&&e!==``&&!Number.isNaN(Number(e))}function E_(e){return typeof e==`number`?e<2**53-1:e===``||T_(e)&&Number(e)<2**53-1}function D_(e){return e.toString().replace(`.`,``).length}function O_(e,t){return(typeof e==`number`?e<2**53-1:!Number.isNaN(Number(e)))&&!Number.isNaN(e)&&D_(t)<14&&t!==``}function k_(e,t,n){return e===void 0?!0:(t===void 0||e>=t)&&(n===void 0||e<=n)}var A_={step:1,clampBehavior:`blur`,allowDecimal:!0,allowNegative:!0,withKeyboardEvents:!0,allowLeadingZeros:!0,trimLeadingZeroesOnBlur:!0,startValue:0,allowedDecimalSeparators:[`.`,`,`]},j_=kn((e,{size:t})=>({controls:{"--ni-chevron-size":dt(t,`ni-chevron-size`)}}));function M_(e,t,n){let r=e.toString(),i=w_.test(r),a=r.replace(/^0+(?=\d)/,``),o=parseFloat(a);if(Number.isNaN(o))return a;if(o>2**53-1)return t===void 0?a:t;let s=St(o,n,t);return i?`${s.toString().replace(/^0+(?=\d)/,``)}.`:s}var N_=V((e,t)=>{let n=z(`NumberInput`,A_,e),{className:r,classNames:i,styles:a,unstyled:o,vars:s,onChange:c,onValueChange:l,value:u,defaultValue:d,max:f,min:p,step:m,hideControls:h,rightSection:g,isAllowed:_,clampBehavior:v,onBlur:y,allowDecimal:x,decimalScale:S,onKeyDown:C,onKeyDownCapture:w,handlersRef:T,startValue:E,disabled:D,rightSectionPointerEvents:O,allowNegative:k,readOnly:A,size:j,rightSectionWidth:M,stepHoldInterval:N,stepHoldDelay:P,allowLeadingZeros:F,withKeyboardEvents:ee,trimLeadingZeroesOnBlur:te,allowedDecimalSeparators:ne,attributes:re,...ie}=n,ae=R({name:`NumberInput`,classes:y_,props:n,classNames:i,styles:a,unstyled:o,attributes:re,vars:s,varsResolver:j_}),{resolvedClassNames:oe,resolvedStyles:se}=Hr({classNames:i,styles:a,props:n}),[ce,le]=rn({value:u,defaultValue:d,finalValue:``,onChange:c}),ue=P!==void 0&&N!==void 0,de=(0,b.useRef)(null),fe=(0,b.useRef)(null),pe=(0,b.useRef)(0),me=(e,t)=>{t.source===`event`&&le(O_(e.floatValue,e.value)&&!x_.test(e.value)&&!(F&&S_.test(e.value))&&!C_.test(e.value)&&!w_.test(e.value)?e.floatValue:e.value),l?.(e,t)},he=e=>{let t=String(e).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return t?Math.max(0,(t[1]?t[1].length:0)-(t[2]?+t[2]:0)):0},ge=e=>{de.current&&e!==void 0&&de.current.setSelectionRange(e,e)},_e=(0,b.useRef)(lt);_e.current=()=>{if(!E_(ce))return;let e,t=he(ce),n=he(m),r=Math.max(t,n),i=10**r;if(!T_(ce)&&(typeof ce!=`number`||Number.isNaN(ce)))e=St(E,p,f);else if(f!==void 0){let t=(Math.round(Number(ce)*i)+Math.round(m*i))/i;e=t<=f?t:f}else e=(Math.round(Number(ce)*i)+Math.round(m*i))/i;let a=e.toFixed(r);le(parseFloat(a)),l?.({floatValue:parseFloat(a),formattedValue:a,value:a},{source:`increment`}),setTimeout(()=>ge(de.current?.value.length),0)};let ve=(0,b.useRef)(lt);ve.current=()=>{if(!E_(ce))return;let e,t=p===void 0?k?-(2**53-1):0:p,n=he(ce),r=he(m),i=Math.max(n,r),a=10**i;if(!T_(ce)&&typeof ce!=`number`||Number.isNaN(ce))e=St(E,t,f);else{let n=(Math.round(Number(ce)*a)-Math.round(m*a))/a;e=t!==void 0&&n<t?t:n}let o=e.toFixed(i);le(parseFloat(o)),l?.({floatValue:parseFloat(o),formattedValue:o,value:o},{source:`decrement`}),setTimeout(()=>ge(de.current?.value.length),0)};let ye=e=>{let t=e.clipboardData.getData(`text`),n=ie.decimalSeparator||`.`,r=(ne||[`.`,`,`]).filter(e=>e!==n);if(r.some(e=>t.includes(e))){e.preventDefault();let i=t;r.forEach(e=>{i=i.split(e).join(n)});let a=de.current;if(a){let e=a.selectionStart??0,t=a.selectionEnd??0,n=a.value,r=n.substring(0,e)+i+n.substring(t);(Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,`value`)?.set)?.call(a,r),a.dispatchEvent(new Event(`change`,{bubbles:!0}));let o=e+i.length;setTimeout(()=>ge(o),0)}}ie.onPaste?.(e)},be=e=>{C?.(e),!(A||!ee)&&(e.key===`ArrowUp`&&(e.preventDefault(),_e.current?.()),e.key===`ArrowDown`&&(e.preventDefault(),ve.current?.()))},xe=e=>{if(w?.(e),e.key===`Backspace`){let t=de.current;t&&t.selectionStart===0&&t.selectionStart===t.selectionEnd&&(e.preventDefault(),window.setTimeout(()=>ge(0),0))}},Se=e=>{let t=ce;v===`blur`&&typeof t==`number`&&(t=St(t,p,f)),te&&typeof t==`string`&&he(t)<15&&(t=M_(t,f,p)),ce!==t&&le(t),y?.(e)};en(T,{increment:_e.current,decrement:ve.current});let Ce=e=>{e?_e.current?.():ve.current?.(),pe.current+=1},we=e=>{if(Ce(e),ue){let t=typeof N==`number`?N:N(pe.current);fe.current=window.setTimeout(()=>we(e),t)}},Te=(e,t)=>{e.preventDefault(),de.current?.focus(),Ce(t),ue&&(fe.current=window.setTimeout(()=>we(t),P))},Ee=()=>{fe.current&&window.clearTimeout(fe.current),fe.current=null,pe.current=0},De=(0,L.jsxs)(`div`,{...ae(`controls`),children:[(0,L.jsx)(pl,{...ae(`control`),tabIndex:-1,"aria-hidden":!0,disabled:D||typeof ce==`number`&&f!==void 0&&ce>=f,mod:{direction:`up`},onMouseDown:e=>e.preventDefault(),onPointerDown:e=>{Te(e,!0)},onPointerUp:Ee,onPointerLeave:Ee,children:(0,L.jsx)(b_,{direction:`up`})}),(0,L.jsx)(pl,{...ae(`control`),tabIndex:-1,"aria-hidden":!0,disabled:D||typeof ce==`number`&&p!==void 0&&ce<=p,mod:{direction:`down`},onMouseDown:e=>e.preventDefault(),onPointerDown:e=>{Te(e,!1)},onPointerUp:Ee,onPointerLeave:Ee,children:(0,L.jsx)(b_,{direction:`down`})})]});return(0,L.jsx)(pd,{component:v_,allowNegative:k,className:jn(y_.root,r),size:j,inputMode:`decimal`,...ie,readOnly:A,disabled:D,value:ce,getInputRef:nn(t,de),onValueChange:me,rightSection:h||A||!E_(ce)?g:g||De,classNames:oe,styles:se,unstyled:o,__staticSelector:`NumberInput`,decimalScale:x?S:0,onPaste:ye,onKeyDown:be,onKeyDownCapture:xe,rightSectionPointerEvents:O??(D?`none`:void 0),rightSectionWidth:M??`var(--ni-right-section-width-${j||`sm`})`,allowLeadingZeros:F,allowedDecimalSeparators:ne,onBlur:Se,attributes:re,isAllowed:e=>v===`strict`?_?_(e)&&k_(e.floatValue,p,f):k_(e.floatValue,p,f):_?_(e):!0})});N_.classes={...pd.classes,...y_},N_.displayName=`@mantine/core/NumberInput`;var P_={root:`m_4addd315`,control:`m_326d024a`,dots:`m_4ad7767d`},[F_,I_]=$e(`Pagination.Root component was not found in tree`),L_={withPadding:!0},R_=V((e,t)=>{let{classNames:n,className:r,style:i,styles:a,vars:o,active:s,disabled:c,withPadding:l,mod:u,...d}=z(`PaginationControl`,L_,e),f=I_(),p=c||f.disabled;return(0,L.jsx)(pl,{ref:t,disabled:p,mod:[{active:s,disabled:p,"with-padding":l},u],...f.getStyles(`control`,{className:r,style:i,classNames:n,styles:a,active:!p}),...d})});R_.classes=P_,R_.displayName=`@mantine/core/PaginationControl`;function z_({style:e,children:t,path:n,...r}){return(0,L.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,style:{width:`calc(var(--pagination-control-size) / 1.8)`,height:`calc(var(--pagination-control-size) / 1.8)`,...e},...r,children:(0,L.jsx)(`path`,{d:n,fill:`currentColor`})})}var B_=e=>(0,L.jsx)(z_,{...e,path:`M8.781 8l-3.3-3.3.943-.943L10.667 8l-4.243 4.243-.943-.943 3.3-3.3z`}),V_=e=>(0,L.jsx)(z_,{...e,path:`M7.219 8l3.3 3.3-.943.943L5.333 8l4.243-4.243.943.943-3.3 3.3z`}),H_=e=>(0,L.jsx)(z_,{...e,path:`M6.85355 3.85355C7.04882 3.65829 7.04882 3.34171 6.85355 3.14645C6.65829 2.95118 6.34171 2.95118 6.14645 3.14645L2.14645 7.14645C1.95118 7.34171 1.95118 7.65829 2.14645 7.85355L6.14645 11.8536C6.34171 12.0488 6.65829 12.0488 6.85355 11.8536C7.04882 11.6583 7.04882 11.3417 6.85355 11.1464L3.20711 7.5L6.85355 3.85355ZM12.8536 3.85355C13.0488 3.65829 13.0488 3.34171 12.8536 3.14645C12.6583 2.95118 12.3417 2.95118 12.1464 3.14645L8.14645 7.14645C7.95118 7.34171 7.95118 7.65829 8.14645 7.85355L12.1464 11.8536C12.3417 12.0488 12.6583 12.0488 12.8536 11.8536C13.0488 11.6583 13.0488 11.3417 12.8536 11.1464L9.20711 7.5L12.8536 3.85355Z`}),U_=e=>(0,L.jsx)(z_,{...e,path:`M2.14645 11.1464C1.95118 11.3417 1.95118 11.6583 2.14645 11.8536C2.34171 12.0488 2.65829 12.0488 2.85355 11.8536L6.85355 7.85355C7.04882 7.65829 7.04882 7.34171 6.85355 7.14645L2.85355 3.14645C2.65829 2.95118 2.34171 2.95118 2.14645 3.14645C1.95118 3.34171 1.95118 3.65829 2.14645 3.85355L5.79289 7.5L2.14645 11.1464ZM8.14645 11.1464C7.95118 11.3417 7.95118 11.6583 8.14645 11.8536C8.34171 12.0488 8.65829 12.0488 8.85355 11.8536L12.8536 7.85355C13.0488 7.65829 13.0488 7.34171 12.8536 7.14645L8.85355 3.14645C8.65829 2.95118 8.34171 2.95118 8.14645 3.14645C7.95118 3.34171 7.95118 3.65829 8.14645 3.85355L11.7929 7.5L8.14645 11.1464Z`}),W_={icon:e=>(0,L.jsx)(z_,{...e,path:`M2 8c0-.733.6-1.333 1.333-1.333.734 0 1.334.6 1.334 1.333s-.6 1.333-1.334 1.333C2.6 9.333 2 8.733 2 8zm9.333 0c0-.733.6-1.333 1.334-1.333C13.4 6.667 14 7.267 14 8s-.6 1.333-1.333 1.333c-.734 0-1.334-.6-1.334-1.333zM6.667 8c0-.733.6-1.333 1.333-1.333s1.333.6 1.333 1.333S8.733 9.333 8 9.333 6.667 8.733 6.667 8z`})},G_=V((e,t)=>{let{classNames:n,className:r,style:i,styles:a,vars:o,icon:s,...c}=z(`PaginationDots`,W_,e);return(0,L.jsx)(B,{ref:t,...I_().getStyles(`dots`,{className:r,style:i,styles:a,classNames:n}),...c,children:(0,L.jsx)(s,{style:{width:`calc(var(--pagination-control-size) / 1.8)`,height:`calc(var(--pagination-control-size) / 1.8)`}})})});G_.classes=P_,G_.displayName=`@mantine/core/PaginationDots`;function K_({icon:e,name:t,action:n,type:r}){let i={icon:e},a=(0,b.forwardRef)((e,a)=>{let{icon:o,...s}=z(t,i,e),c=I_(),l=r===`next`?c.active===c.total:c.active===1;return(0,L.jsx)(R_,{disabled:c.disabled||l,ref:a,onClick:c[n],withPadding:!1,...s,children:(0,L.jsx)(o,{className:`mantine-rotate-rtl`,style:{width:`calc(var(--pagination-control-size) / 1.8)`,height:`calc(var(--pagination-control-size) / 1.8)`}})})});return a.displayName=`@mantine/core/${t}`,Li(a)}var q_=K_({icon:B_,name:`PaginationNext`,action:`onNext`,type:`next`}),J_=K_({icon:V_,name:`PaginationPrevious`,action:`onPrevious`,type:`previous`}),Y_=K_({icon:H_,name:`PaginationFirst`,action:`onFirst`,type:`previous`}),X_=K_({icon:U_,name:`PaginationLast`,action:`onLast`,type:`next`});function Z_({dotsIcon:e}){let t=I_();return(0,L.jsx)(L.Fragment,{children:t.range.map((n,r)=>n===`dots`?(0,L.jsx)(G_,{icon:e},r):(0,L.jsx)(R_,{active:n===t.active,"aria-current":n===t.active?`page`:void 0,onClick:()=>t.onChange(n),disabled:t.disabled,...t.getItemProps?.(n),children:t.getItemProps?.(n)?.children??n},r))})}Z_.displayName=`@mantine/core/PaginationItems`;var Q_={siblings:1,boundaries:1},$_=kn((e,{size:t,radius:n,color:r,autoContrast:i})=>({root:{"--pagination-control-radius":n===void 0?void 0:pt(n),"--pagination-control-size":dt(t,`pagination-control-size`),"--pagination-control-fz":mt(t),"--pagination-active-bg":r?ir(r,e):void 0,"--pagination-active-color":ai(i,e)?Er({color:r,theme:e,autoContrast:i}):void 0}})),ev=V((e,t)=>{let n=z(`PaginationRoot`,Q_,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,total:l,value:u,defaultValue:d,onChange:f,disabled:p,siblings:m,boundaries:h,color:g,radius:_,onNextPage:v,onPreviousPage:y,onFirstPage:b,onLastPage:x,getItemProps:S,autoContrast:C,attributes:w,...T}=n,E=R({name:`Pagination`,classes:P_,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:w,vars:c,varsResolver:$_}),{range:D,setPage:O,next:k,previous:A,active:j,first:M,last:N}=sn({page:u,initialPage:d,onChange:f,total:l,siblings:m,boundaries:h});return(0,L.jsx)(F_,{value:{total:l,range:D,active:j,disabled:p,getItemProps:S,onChange:O,onNext:_t(v,k),onPrevious:_t(y,A),onFirst:_t(b,M),onLast:_t(x,N),getStyles:E},children:(0,L.jsx)(B,{ref:t,...E(`root`),...T})})});ev.classes=P_,ev.displayName=`@mantine/core/PaginationRoot`;var tv={withControls:!0,withPages:!0,siblings:1,boundaries:1,gap:8},nv=V((e,t)=>{let{withEdges:n,withControls:r,getControlProps:i,nextIcon:a,previousIcon:o,lastIcon:s,firstIcon:c,dotsIcon:l,total:u,gap:d,hideWithOnePage:f,withPages:p,...m}=z(`Pagination`,tv,e);return u<=0||f&&u===1?null:(0,L.jsx)(ev,{ref:t,total:u,...m,children:(0,L.jsxs)(H,{gap:d,children:[n&&(0,L.jsx)(Y_,{icon:c,...i?.(`first`)}),r&&(0,L.jsx)(J_,{icon:o,...i?.(`previous`)}),p&&(0,L.jsx)(Z_,{dotsIcon:l}),r&&(0,L.jsx)(q_,{icon:a,...i?.(`next`)}),n&&(0,L.jsx)(X_,{icon:s,...i?.(`last`)})]})})});nv.classes=P_,nv.displayName=`@mantine/core/Pagination`,nv.Root=ev,nv.Control=R_,nv.Dots=G_,nv.First=Y_,nv.Last=X_,nv.Next=q_,nv.Previous=J_,nv.Items=Z_;var rv={root:`m_f61ca620`,input:`m_ccf8da4c`,innerInput:`m_f2d85dd2`,visibilityToggle:`m_b1072d44`},iv={visibilityToggleIcon:({reveal:e})=>(0,L.jsx)(`svg`,{viewBox:`0 0 15 15`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,style:{width:`var(--psi-icon-size)`,height:`var(--psi-icon-size)`},children:(0,L.jsx)(`path`,{d:e?`M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.6828 3.61012C9.70652 3.21671 8.63759 3 7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C0.902945 9.08812 2.02314 10.1861 3.36061 10.9323L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.31723 11.3899C5.29348 11.7833 6.36241 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C14.0971 5.9119 12.9769 4.81391 11.6394 4.06771L13.3536 2.35355ZM9.90428 4.38861C9.15332 4.1361 8.34759 4 7.5 4C4.80285 4 2.52952 5.37816 1.09622 7.50001C1.87284 8.6497 2.89609 9.58106 4.09974 10.1931L9.90428 4.38861ZM5.09572 10.6114L10.9003 4.80685C12.1039 5.41894 13.1272 6.35031 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11C6.65241 11 5.84668 10.8639 5.09572 10.6114Z`:`M7.5 11C4.80285 11 2.52952 9.62184 1.09622 7.50001C2.52952 5.37816 4.80285 4 7.5 4C10.1971 4 12.4705 5.37816 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11ZM7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C1.65639 10.2936 4.30786 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C13.3436 4.70638 10.6921 3 7.5 3ZM7.5 9.5C8.60457 9.5 9.5 8.60457 9.5 7.5C9.5 6.39543 8.60457 5.5 7.5 5.5C6.39543 5.5 5.5 6.39543 5.5 7.5C5.5 8.60457 6.39543 9.5 7.5 9.5Z`,fill:`currentColor`,fillRule:`evenodd`,clipRule:`evenodd`})})},av=kn((e,{size:t})=>({root:{"--psi-icon-size":dt(t,`psi-icon-size`),"--psi-button-size":dt(t,`psi-button-size`)}})),ov=V((e,t)=>{let n=z(`PasswordInput`,iv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,required:l,error:u,leftSection:d,disabled:f,id:p,variant:m,inputContainer:h,description:g,label:_,size:v,errorProps:y,descriptionProps:b,labelProps:x,withAsterisk:S,inputWrapperOrder:C,wrapperProps:w,radius:T,rightSection:E,rightSectionWidth:D,rightSectionPointerEvents:O,leftSectionWidth:k,visible:A,defaultVisible:j,onVisibilityChange:M,visibilityToggleIcon:N,visibilityToggleButtonProps:P,rightSectionProps:F,leftSectionProps:ee,leftSectionPointerEvents:te,withErrorStyles:ne,mod:re,attributes:ie,...ae}=n,oe=Qt(p),[se,ce]=rn({value:A,defaultValue:j,finalValue:!1,onChange:M}),le=()=>ce(!se),ue=R({name:`PasswordInput`,classes:rv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:ie,vars:c,varsResolver:av}),{resolvedClassNames:de,resolvedStyles:fe}=Hr({classNames:r,styles:o,props:n}),{styleProps:pe,rest:me}=fi(ae),he=y?.id||`${oe}-error`,ge=b?.id||`${oe}-description`,_e=`${u&&typeof u!=`boolean`?he:``} ${g?ge:``}`,ve=_e.trim().length>0?_e.trim():void 0,ye=(0,L.jsx)(hu,{...ue(`visibilityToggle`),disabled:f,radius:T,"aria-hidden":!P,"aria-pressed":se,tabIndex:-1,...P,variant:P?.variant??`subtle`,color:`gray`,unstyled:s,onTouchEnd:e=>{e.preventDefault(),P?.onTouchEnd?.(e),le()},onMouseDown:e=>{e.preventDefault(),P?.onMouseDown?.(e),le()},onKeyDown:e=>{P?.onKeyDown?.(e),e.key===` `&&(e.preventDefault(),le())},children:(0,L.jsx)(N,{reveal:se})});return(0,L.jsx)(ud.Wrapper,{required:l,id:oe,label:_,error:u,description:g,size:v,classNames:de,styles:fe,__staticSelector:`PasswordInput`,__stylesApiProps:n,unstyled:s,withAsterisk:S,inputWrapperOrder:C,inputContainer:h,variant:m,labelProps:{...x,htmlFor:oe},descriptionProps:{...b,id:ge},errorProps:{...y,id:he},mod:re,attributes:ie,...ue(`root`),...pe,...w,children:(0,L.jsx)(ud,{component:`div`,error:u,leftSection:d,size:v,classNames:{...de,input:jn(rv.input,de.input)},styles:fe,radius:T,disabled:f,__staticSelector:`PasswordInput`,__stylesApiProps:n,rightSectionWidth:D,rightSection:E??ye,variant:m,unstyled:s,leftSectionWidth:k,rightSectionPointerEvents:O||`all`,rightSectionProps:F,leftSectionProps:ee,leftSectionPointerEvents:te,withAria:!1,withErrorStyles:ne,attributes:ie,children:(0,L.jsx)(`input`,{required:l,"data-invalid":!!u||void 0,"data-with-left-section":!!d||void 0,...ue(`innerInput`),disabled:f,id:oe,ref:t,...me,"aria-describedby":ve,autoComplete:me.autoComplete||`off`,type:se?`text`:`password`})})})});ov.classes={...pd.classes,...rv},ov.displayName=`@mantine/core/PasswordInput`;var sv={root:`m_f3f1af94`,inner:`m_89c4f5e4`,icon:`m_f3ed6b2b`,radio:`m_8a3dbb89`,"radio--outline":`m_1bfe9d39`},[cv,lv]=et(),[uv,dv]=et(),fv={card:`m_9dc8ae12`},pv={withBorder:!0},mv=kn((e,{radius:t})=>({card:{"--card-radius":pt(t)}})),hv=V((e,t)=>{let n=z(`RadioCard`,pv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,checked:l,mod:u,withBorder:d,value:f,onClick:p,name:m,onKeyDown:h,attributes:g,..._}=n,v=R({name:`RadioCard`,classes:fv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:g,vars:c,varsResolver:mv,rootSelector:`card`}),{dir:y}=Ji(),b=lv(),x=typeof l==`boolean`?l:b?.value===f||!1,S=m||b?.name,C=e=>{if(h?.(e),[`ArrowDown`,`ArrowUp`,`ArrowLeft`,`ArrowRight`].includes(e.nativeEvent.code)){e.preventDefault();let t=Array.from(document.querySelectorAll(`[role="radio"][name="${S||`__mantine`}"]`)),n=t.findIndex(t=>t===e.target),r=n+1>=t.length?0:n+1,i=n-1<0?t.length-1:n-1;e.nativeEvent.code===`ArrowDown`&&(t[r].focus(),t[r].click()),e.nativeEvent.code===`ArrowUp`&&(t[i].focus(),t[i].click()),e.nativeEvent.code===`ArrowLeft`&&(t[y===`ltr`?i:r].focus(),t[y===`ltr`?i:r].click()),e.nativeEvent.code===`ArrowRight`&&(t[y===`ltr`?r:i].focus(),t[y===`ltr`?r:i].click())}};return(0,L.jsx)(uv,{value:{checked:x},children:(0,L.jsx)(pl,{ref:t,mod:[{"with-border":d,checked:x},u],...v(`card`),..._,role:`radio`,"aria-checked":x,name:S,onClick:e=>{p?.(e),b?.onChange(f||``)},onKeyDown:C})})});hv.displayName=`@mantine/core/RadioCard`,hv.classes=fv;var gv=V((e,t)=>{let{value:n,defaultValue:r,onChange:i,size:a,wrapperProps:o,children:s,name:c,readOnly:l,disabled:u,...d}=z(`RadioGroup`,null,e),f=Qt(c),[p,m]=rn({value:n,defaultValue:r,finalValue:``,onChange:i});return(0,L.jsx)(cv,{value:{value:p,onChange:e=>!l&&m(typeof e==`string`?e:e.currentTarget.value),size:a,name:f,disabled:u},children:(0,L.jsx)(ud.Wrapper,{size:a,ref:t,...o,...d,labelElement:`div`,__staticSelector:`RadioGroup`,children:(0,L.jsx)(Qf,{role:`radiogroup`,children:s})})})});gv.classes=ud.Wrapper.classes,gv.displayName=`@mantine/core/RadioGroup`;function _v({size:e,style:t,...n}){return(0,L.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 5 5`,style:{width:I(e),height:I(e),...t},"aria-hidden":!0,...n,children:(0,L.jsx)(`circle`,{cx:`2.5`,cy:`2.5`,r:`2.5`,fill:`currentColor`})})}var vv={indicator:`m_717d7ff6`,icon:`m_3e4da632`,"indicator--outline":`m_2980836c`},yv={icon:_v},bv=kn((e,{radius:t,color:n,size:r,iconColor:i,variant:a,autoContrast:o})=>{let s=rr({color:n||e.primaryColor,theme:e}),c=s.isThemeColor&&s.shade===void 0?`var(--mantine-color-${s.color}-outline)`:s.color;return{indicator:{"--radio-size":dt(r,`radio-size`),"--radio-radius":t===void 0?void 0:pt(t),"--radio-color":a===`outline`?c:ir(n,e),"--radio-icon-size":dt(r,`radio-icon-size`),"--radio-icon-color":i?ir(i,e):ai(o,e)?Er({color:n,theme:e,autoContrast:o}):void 0}}}),xv=V((e,t)=>{let n=z(`RadioIndicator`,yv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,icon:l,radius:u,color:d,iconColor:f,autoContrast:p,checked:m,mod:h,variant:g,disabled:_,attributes:v,...y}=n,b=R({name:`RadioIndicator`,classes:vv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:v,vars:c,varsResolver:bv,rootSelector:`indicator`}),x=dv(),S=typeof m==`boolean`?m:x?.checked||!1;return(0,L.jsx)(B,{ref:t,...b(`indicator`,{variant:g}),variant:g,mod:[{checked:S,disabled:_},h],...y,children:(0,L.jsx)(l,{...b(`icon`)})})});xv.displayName=`@mantine/core/RadioIndicator`,xv.classes=vv;var Sv={labelPosition:`right`},Cv=kn((e,{size:t,radius:n,color:r,iconColor:i,variant:a,autoContrast:o})=>{let s=rr({color:r||e.primaryColor,theme:e}),c=s.isThemeColor&&s.shade===void 0?`var(--mantine-color-${s.color}-outline)`:s.color;return{root:{"--radio-size":dt(t,`radio-size`),"--radio-radius":n===void 0?void 0:pt(n),"--radio-color":a===`outline`?c:ir(r,e),"--radio-icon-color":i?ir(i,e):ai(o,e)?Er({color:r,theme:e,autoContrast:o}):void 0,"--radio-icon-size":dt(t,`radio-icon-size`)}}}),wv=V((e,t)=>{let n=z(`Radio`,Sv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,id:l,size:u,label:d,labelPosition:f,description:p,error:m,radius:h,color:g,variant:_,disabled:v,wrapperProps:y,icon:b=_v,rootRef:x,iconColor:S,onChange:C,mod:w,attributes:T,checked:E,...D}=n,O=R({name:`Radio`,classes:sv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:T,vars:c,varsResolver:Cv}),k=lv(),A=k?.size??u,j=n.size?u:A,{styleProps:M,rest:N}=fi(D),P=Qt(l),F=k?k.value===N.value:void 0,ee={checked:F??E,name:k?.name??N.name,onChange:e=>{k?.onChange(e),C?.(e)},disabled:k?.disabled??v};return(0,L.jsx)(Vf,{...O(`root`),__staticSelector:`Radio`,__stylesApiProps:n,id:P,size:j,labelPosition:f,label:d,description:p,error:m,disabled:ee.disabled,classNames:r,styles:o,unstyled:s,"data-checked":(F??E)||void 0,variant:_,ref:x,mod:w,...M,...y,children:(0,L.jsxs)(B,{...O(`inner`),mod:{"label-position":f},children:[(0,L.jsx)(B,{...O(`radio`,{focusable:!0,variant:_}),...N,...ee,component:`input`,mod:{error:!!m},ref:t,id:P,type:`radio`}),(0,L.jsx)(b,{...O(`icon`),"aria-hidden":!0})]})})});wv.classes=sv,wv.displayName=`@mantine/core/Radio`,wv.Group=gv,wv.Card=hv,wv.Indicator=xv;var Tv={duration:100,transition:`fade`};function Ev(e,t){return{...Tv,...t,...e}}var Dv={tooltip:`m_1b3c8819`,arrow:`m_f898399f`};function Ov({offset:e,position:t,defaultOpened:n}){let[r,i]=(0,b.useState)(n),a=(0,b.useRef)(null),{x:o,y:s,elements:c,refs:l,update:u,placement:d}=Cc({placement:t,middleware:[Ns({crossAxis:!0,padding:5,rootBoundary:`document`})]}),f=d.includes(`right`)?e:t.includes(`left`)?e*-1:0,p=d.includes(`bottom`)?e:t.includes(`top`)?e*-1:0,m=(0,b.useCallback)(({clientX:e,clientY:t})=>{l.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:e,y:t,left:e+f,top:t+p,right:e,bottom:t}}})},[c.reference]);return(0,b.useEffect)(()=>{if(l.floating.current){let e=a.current;e.addEventListener(`mousemove`,m);let t=ba(l.floating.current);return t.forEach(e=>{e.addEventListener(`scroll`,u)}),()=>{e.removeEventListener(`mousemove`,m),t.forEach(e=>{e.removeEventListener(`scroll`,u)})}}},[c.reference,l.floating.current,u,m,r]),{handleMouseMove:m,x:o,y:s,opened:r,setOpened:i,boundaryRef:a,floating:l.setFloating}}var kv={refProp:`ref`,withinPortal:!0,offset:10,position:`right`,zIndex:ct(`popover`)},Av=kn((e,{radius:t,color:n})=>({tooltip:{"--tooltip-radius":t===void 0?void 0:pt(t),"--tooltip-bg":n?ir(n,e):void 0,"--tooltip-color":n?`var(--mantine-color-white)`:void 0}})),jv=V((e,t)=>{let n=z(`TooltipFloating`,kv,e),{children:r,refProp:i,withinPortal:a,style:o,className:s,classNames:c,styles:l,unstyled:u,radius:d,color:f,label:p,offset:m,position:h,multiline:g,zIndex:_,disabled:v,defaultOpened:y,variant:x,vars:S,portalProps:C,attributes:w,...T}=n,E=xr(),D=R({name:`TooltipFloating`,props:n,classes:Dv,className:s,style:o,classNames:c,styles:l,unstyled:u,attributes:w,rootSelector:`tooltip`,vars:S,varsResolver:Av}),{handleMouseMove:O,x:k,y:A,opened:j,boundaryRef:M,floating:N,setOpened:P}=Ov({offset:m,position:h,defaultOpened:y}),F=On(r);if(!F)throw Error(`[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported`);let ee=nn(M,wn(F),t),te=F.props,ne=e=>{te.onMouseEnter?.(e),O(e),P(!0)},re=e=>{te.onMouseLeave?.(e),P(!1)};return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nl,{...C,withinPortal:a,children:(0,L.jsx)(B,{...T,...D(`tooltip`,{style:{...Ii(o,E),zIndex:_,display:!v&&j?`block`:`none`,top:(A&&Math.round(A))??``,left:(k&&Math.round(k))??``}}),variant:x,ref:N,mod:{multiline:g},children:p})}),(0,b.cloneElement)(F,{...te,[i]:ee,onMouseEnter:ne,onMouseLeave:re})]})});jv.classes=Dv,jv.displayName=`@mantine/core/TooltipFloating`;var Mv=(0,b.createContext)(!1),Nv=Mv.Provider,Pv=()=>(0,b.useContext)(Mv),Fv={openDelay:0,closeDelay:0};function Iv(e){let{openDelay:t,closeDelay:n,children:r}=z(`TooltipGroup`,Fv,e);return(0,L.jsx)(Nv,{value:!0,children:(0,L.jsx)(gc,{delay:{open:t,close:n},children:r})})}Iv.displayName=`@mantine/core/TooltipGroup`,Iv.extend=e=>e;function Lv(e){if(e===void 0)return{shift:!0,flip:!0};let t={...e};return e.shift===void 0&&(t.shift=!0),e.flip===void 0&&(t.flip=!0),t}function Rv(e){let t=Lv(e.middlewares),n=[Ms(e.offset)];return t.shift&&n.push(Ns(typeof t.shift==`boolean`?{padding:8}:{padding:8,...t.shift})),t.flip&&n.push(typeof t.flip==`boolean`?Fs():Fs(t.flip)),n.push(zs({element:e.arrowRef,padding:e.arrowOffset})),t.inline?n.push(typeof t.inline==`boolean`?Rs():Rs(t.inline)):e.inline&&n.push(Rs()),n}function zv(e){let[t,n]=(0,b.useState)(e.defaultOpened),r=typeof e.opened==`boolean`?e.opened:t,i=Pv(),a=Qt(),o=(0,b.useCallback)(e=>{n(e),e&&g(a)},[a]),{x:s,y:c,context:l,refs:u,placement:d,middlewareData:{arrow:{x:f,y:p}={}}}=Cc({strategy:e.strategy,placement:e.position,open:r,onOpenChange:o,middleware:Rv(e),whileElementsMounted:ms}),{delay:m,currentId:h,setCurrentId:g}=_c(l,{id:a}),{getReferenceProps:_,getFloatingProps:v}=Dc([fc(l,{enabled:e.events?.hover,delay:i?m:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),Tc(l,{enabled:e.events?.focus,visibleOnly:!0}),kc(l,{role:`tooltip`}),xc(l,{enabled:e.opened===void 0})]);It(()=>{e.onPositionChange?.(d)},[d]);let y=r&&h&&h!==a;return{x:s,y:c,arrowX:f,arrowY:p,reference:u.setReference,floating:u.setFloating,getFloatingProps:v,getReferenceProps:_,isGroupPhase:y,opened:r,placement:d}}var Bv={position:`top`,refProp:`ref`,withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:`side`,offset:5,transitionProps:{duration:100,transition:`fade`},events:{hover:!0,focus:!1,touch:!1},zIndex:ct(`popover`),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},Vv=kn((e,{radius:t,color:n,variant:r,autoContrast:i})=>{let a=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:i,variant:r||`filled`});return{tooltip:{"--tooltip-radius":t===void 0?void 0:pt(t),"--tooltip-bg":n?a.background:void 0,"--tooltip-color":n?a.color:void 0}}}),Hv=V((e,t)=>{let n=z(`Tooltip`,Bv,e),{children:r,position:i,refProp:a,label:o,openDelay:s,closeDelay:c,onPositionChange:l,opened:u,defaultOpened:d,withinPortal:f,radius:p,color:m,classNames:h,styles:g,unstyled:_,style:v,className:y,withArrow:x,arrowSize:S,arrowOffset:C,arrowRadius:w,arrowPosition:T,offset:E,transitionProps:D,multiline:O,events:k,zIndex:A,disabled:j,positionDependencies:M,onClick:N,onMouseEnter:P,onMouseLeave:F,inline:ee,variant:te,keepMounted:ne,vars:re,portalProps:ie,mod:ae,floatingStrategy:oe,middlewares:se,autoContrast:ce,attributes:le,target:ue,...de}=z(`Tooltip`,Bv,n),{dir:fe}=Ji(),pe=(0,b.useRef)(null),me=zv({position:wl(fe,i),closeDelay:c,openDelay:s,onPositionChange:l,opened:u,defaultOpened:d,events:k,arrowRef:pe,arrowOffset:C,offset:typeof E==`number`?E+(x?S/2:0):E,positionDependencies:[...M,ue??r],inline:ee,strategy:oe,middlewares:se});(0,b.useEffect)(()=>{let e=ue instanceof HTMLElement?ue:typeof ue==`string`?document.querySelector(ue):ue?.current||null;e&&me.reference(e)},[ue,me]);let he=R({name:`Tooltip`,props:n,classes:Dv,className:y,style:v,classNames:h,styles:g,unstyled:_,attributes:le,rootSelector:`tooltip`,vars:re,varsResolver:Vv}),ge=On(r);if(!ue&&!ge)throw Error(`[@mantine/core] Tooltip component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported`);if(ue){let e=Ev(D,{duration:100,transition:`fade`});return(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(Nl,{...ie,withinPortal:f,children:(0,L.jsx)(zl,{...e,keepMounted:ne,mounted:!j&&!!me.opened,duration:me.isGroupPhase?10:e.duration,children:e=>(0,L.jsxs)(B,{...de,"data-fixed":oe===`fixed`||void 0,variant:te,mod:[{multiline:O},ae],...me.getFloatingProps({ref:me.floating,className:he(`tooltip`).className,style:{...he(`tooltip`).style,...e,zIndex:A,top:me.y??0,left:me.x??0}}),children:[o,(0,L.jsx)(Cl,{ref:pe,arrowX:me.arrowX,arrowY:me.arrowY,visible:x,position:me.placement,arrowSize:S,arrowOffset:C,arrowRadius:w,arrowPosition:T,...he(`arrow`)})]})})})})}let _e=ge.props,ve=nn(me.reference,wn(ge),t),ye=Ev(D,{duration:100,transition:`fade`});return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nl,{...ie,withinPortal:f,children:(0,L.jsx)(zl,{...ye,keepMounted:ne,mounted:!j&&!!me.opened,duration:me.isGroupPhase?10:ye.duration,children:e=>(0,L.jsxs)(B,{...de,"data-fixed":oe===`fixed`||void 0,variant:te,mod:[{multiline:O},ae],...me.getFloatingProps({ref:me.floating,className:he(`tooltip`).className,style:{...he(`tooltip`).style,...e,zIndex:A,top:me.y??0,left:me.x??0}}),children:[o,(0,L.jsx)(Cl,{ref:pe,arrowX:me.arrowX,arrowY:me.arrowY,visible:x,position:me.placement,arrowSize:S,arrowOffset:C,arrowRadius:w,arrowPosition:T,...he(`arrow`)})]})})}),(0,b.cloneElement)(ge,me.getReferenceProps({onClick:N,onMouseEnter:P,onMouseLeave:F,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,..._e,className:jn(y,_e.className),[a]:ve}))]})});Hv.classes=Dv,Hv.displayName=`@mantine/core/Tooltip`,Hv.Floating=jv,Hv.Group=Iv;function Uv({size:e,thickness:t,sum:n,value:r,root:i,offset:a}){let o=(e*.9-t*2)/2,s=Math.PI*o*2/100,c=i||r===void 0?`${(100-n)*s}, ${n*s}`:`${r*s}, ${(100-r)*s}`;return{strokeWidth:Number.isNaN(t)?12:t,cx:e/2||0,cy:e/2||0,r:o||0,transform:i?`scale(1, -1) translate(0, -${e})`:void 0,strokeDasharray:c,strokeDashoffset:i?0:a||0}}function Wv({size:e,value:t,offset:n,sum:r,thickness:i,root:a,color:o,lineRoundCaps:s,tooltip:c,getStyles:l,display:u,...d}){let f=xr();return(0,L.jsx)(Hv.Floating,{disabled:!c,label:c,children:(0,L.jsx)(B,{component:`circle`,...d,...l(`curve`),__vars:{"--curve-color":o?ir(o,f):void 0},fill:`none`,strokeLinecap:s?`round`:`butt`,...Uv({sum:r,size:e,thickness:i,value:t,offset:n,root:a})})})}Wv.displayName=`@mantine/core/Curve`;function Gv({size:e,thickness:t,sections:n,renderRoundedLineCaps:r,rootColor:i}){let a=n.reduce((e,t)=>e+t.value,0),o=Math.PI*((e*.9-t*2)/2)*2,s=o,c=[],l=[];for(let e=0;e<n.length;e+=1)c.push({sum:a,offset:s,data:n[e],root:!1}),s-=n[e].value/100*o;if(c.push({sum:a,offset:s,data:{color:i},root:!0}),l.push({...c[c.length-1],lineRoundCaps:!1}),c.length>2){l.push({...c[0],lineRoundCaps:r}),l.push({...c[c.length-2],lineRoundCaps:r});for(let e=1;e<=c.length-3;e+=1)l.push({...c[e],lineRoundCaps:!1})}else l.push({...c[0],lineRoundCaps:r});return l}var Kv={root:`m_b32e4812`,svg:`m_d43b5134`,curve:`m_b1ca1fbf`,label:`m_b23f9dc4`};function qv(e,t){return Math.min(e||12,(t||120)/4)}var Jv={size:120,thickness:12},Yv=kn((e,{size:t,thickness:n,transitionDuration:r})=>({root:{"--rp-size":I(t),"--rp-label-offset":I(n*2),"--rp-transition-duration":r?`${r}ms`:void 0}})),Xv=V((e,t)=>{let n=z(`RingProgress`,Jv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,label:l,sections:u,size:d,thickness:f,roundCaps:p,rootColor:m,transitionDuration:h,attributes:g,..._}=n,v=R({name:`RingProgress`,classes:Kv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:g,vars:c,varsResolver:Yv}),y=qv(f,d),x=Gv({size:d,thickness:y,sections:u,renderRoundedLineCaps:p,rootColor:m}).map(({data:e,sum:t,root:n,lineRoundCaps:r,offset:i},a)=>(0,b.createElement)(Wv,{...e,key:a,size:d,thickness:y,sum:t,offset:i,color:e?.color,root:n,lineRoundCaps:r,getStyles:v}));return(0,L.jsxs)(B,{...v(`root`),size:d,ref:t,..._,children:[(0,L.jsx)(`svg`,{...v(`svg`),children:x}),l&&(0,L.jsx)(`div`,{...v(`label`),children:l})]})});Xv.classes=Kv,Xv.displayName=`@mantine/core/RingProgress`;var Zv={root:`m_cf365364`,indicator:`m_9e182ccd`,label:`m_1738fcb2`,input:`m_1714d588`,control:`m_69686b9b`,innerLabel:`m_78882f40`},Qv={withItemsBorders:!0},$v=kn((e,{radius:t,color:n,transitionDuration:r,size:i,transitionTimingFunction:a})=>({root:{"--sc-radius":t===void 0?void 0:pt(t),"--sc-color":n?ir(n,e):void 0,"--sc-shadow":n?void 0:`var(--mantine-shadow-xs)`,"--sc-transition-duration":r===void 0?void 0:`${r}ms`,"--sc-transition-timing-function":a,"--sc-padding":dt(i,`sc-padding`),"--sc-font-size":mt(i)}})),ey=V((e,t)=>{let n=z(`SegmentedControl`,Qv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,data:l,value:u,defaultValue:d,onChange:f,size:p,name:m,disabled:h,readOnly:g,fullWidth:_,orientation:v,radius:y,color:x,transitionDuration:S,transitionTimingFunction:C,variant:w,autoContrast:T,withItemsBorders:E,mod:D,attributes:O,...k}=n,A=R({name:`SegmentedControl`,props:n,classes:Zv,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:O,vars:c,varsResolver:$v}),j=xr(),M=l.map(e=>typeof e==`string`?{label:e,value:e}:e),N=Sn(),[P,F]=(0,b.useState)(Ct()),[ee,te]=(0,b.useState)(null),[ne,re]=(0,b.useState)({}),ie=(e,t)=>{ne[t]=e,re(ne)},[ae,oe]=rn({value:u,defaultValue:d,finalValue:Array.isArray(l)?M.find(e=>!e.disabled)?.value??l[0]?.value??null:null,onChange:f}),se=Qt(m),ce=M.map(e=>(0,b.createElement)(B,{...A(`control`),mod:{active:ae===e.value,orientation:v},key:e.value},(0,b.createElement)(`input`,{...A(`input`),disabled:h||e.disabled,type:`radio`,name:se,value:e.value,id:`${se}-${e.value}`,checked:ae===e.value,onChange:()=>!g&&oe(e.value),"data-focus-ring":j.focusRing,key:`${e.value}-input`}),(0,b.createElement)(B,{component:`label`,...A(`label`),mod:{active:ae===e.value&&!(h||e.disabled),disabled:h||e.disabled,"read-only":g},htmlFor:`${se}-${e.value}`,ref:t=>ie(t,e.value),__vars:{"--sc-label-color":x===void 0?void 0:Er({color:x,theme:j,autoContrast:T})},key:`${e.value}-label`},(0,L.jsx)(`span`,{...A(`innerLabel`),children:e.label})))),le=nn(t,e=>te(e));return dn(()=>{F(Ct())},[l.length]),l.length===0?null:(0,L.jsxs)(B,{...A(`root`),variant:w,size:p,ref:le,mod:[{"full-width":_,orientation:v,initialized:N,"with-items-borders":E},D],...k,role:`radiogroup`,"data-disabled":h,children:[typeof ae==`string`&&(0,L.jsx)(xd,{target:ne[ae],parent:ee,component:`span`,transitionDuration:`var(--sc-transition-duration)`,...A(`indicator`)},P),ce]})});ey.classes=Zv,ey.displayName=`@mantine/core/SegmentedControl`;var ty={container:`m_925c2d2c`,root:`m_2415a157`};function ny({spacing:e,verticalSpacing:t,cols:n,selector:r}){let i=xr(),a=t===void 0?e:t,o=Ye({"--sg-spacing-x":ft(bt(e)),"--sg-spacing-y":ft(bt(a)),"--sg-cols":bt(n)?.toString()}),s=Be(i.breakpoints).reduce((t,r)=>(t[r]||(t[r]={}),typeof e==`object`&&e[r]!==void 0&&(t[r][`--sg-spacing-x`]=ft(e[r])),typeof a==`object`&&a[r]!==void 0&&(t[r][`--sg-spacing-y`]=ft(a[r])),typeof n==`object`&&n[r]!==void 0&&(t[r][`--sg-cols`]=n[r]),t),{});return(0,L.jsx)(di,{styles:o,media:yt(Be(s),i.breakpoints).filter(e=>Be(s[e.value]).length>0).map(e=>({query:`(min-width: ${i.breakpoints[e.value]})`,styles:s[e.value]})),selector:r})}function ry(e){return typeof e==`object`&&e?Be(e):[]}function iy(e){return e.sort((e,t)=>Ge(e)-Ge(t))}function ay({spacing:e,verticalSpacing:t,cols:n}){return iy(Array.from(new Set([...ry(e),...ry(t),...ry(n)])))}function oy({spacing:e,verticalSpacing:t,cols:n,selector:r}){let i=t===void 0?e:t,a=Ye({"--sg-spacing-x":ft(bt(e)),"--sg-spacing-y":ft(bt(i)),"--sg-cols":bt(n)?.toString()}),o=ay({spacing:e,verticalSpacing:t,cols:n}),s=o.reduce((t,r)=>(t[r]||(t[r]={}),typeof e==`object`&&e[r]!==void 0&&(t[r][`--sg-spacing-x`]=ft(e[r])),typeof i==`object`&&i[r]!==void 0&&(t[r][`--sg-spacing-y`]=ft(i[r])),typeof n==`object`&&n[r]!==void 0&&(t[r][`--sg-cols`]=n[r]),t),{});return(0,L.jsx)(di,{styles:a,container:o.map(e=>({query:`simple-grid (min-width: ${e})`,styles:s[e]})),selector:r})}var sy={cols:1,spacing:`md`,type:`media`},cy=V((e,t)=>{let n=z(`SimpleGrid`,sy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,cols:l,verticalSpacing:u,spacing:d,type:f,attributes:p,...m}=n,h=R({name:`SimpleGrid`,classes:ty,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:p,vars:c}),g=Fi();return f===`container`?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(oy,{...n,selector:`.${g}`}),(0,L.jsx)(`div`,{...h(`container`),children:(0,L.jsx)(B,{ref:t,...h(`root`,{className:g}),...m})})]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ny,{...n,selector:`.${g}`}),(0,L.jsx)(B,{ref:t,...h(`root`,{className:g}),...m})]})});cy.classes=ty,cy.displayName=`@mantine/core/SimpleGrid`;var ly=V((e,t)=>{let{w:n,h:r,miw:i,mih:a,...o}=z(`Space`,null,e);return(0,L.jsx)(B,{ref:t,...o,w:n,miw:i??n,h:r,mih:a??r})});ly.displayName=`@mantine/core/Space`;var uy={root:`m_6d731127`},dy={gap:`md`,align:`stretch`,justify:`flex-start`},fy=kn((e,{gap:t,align:n,justify:r})=>({root:{"--stack-gap":ft(t),"--stack-align":n,"--stack-justify":r}})),K=V((e,t)=>{let n=z(`Stack`,dy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,align:l,justify:u,gap:d,variant:f,attributes:p,...m}=n;return(0,L.jsx)(B,{ref:t,...R({name:`Stack`,props:n,classes:uy,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:p,vars:c,varsResolver:fy})(`root`),variant:f,...m})});K.classes=uy,K.displayName=`@mantine/core/Stack`;var[py,my]=$e(`Stepper component was not found in tree`),hy={root:`m_cbb4ea7e`,steps:`m_aaf89d0b`,separator:`m_2a371ac9`,content:`m_78da155d`,step:`m_cbb57068`,"step--horizontal":`m_f56b1e2c`,"step--vertical":`m_833edb7e`,verticalSeparator:`m_6496b3f3`,stepWrapper:`m_818e70b`,stepIcon:`m_1959ad01`,stepCompletedIcon:`m_a79331dc`,stepBody:`m_1956aa2a`,stepLabel:`m_12051f6c`,stepDescription:`m_164eea74`},gy=()=>null;gy.displayName=`@mantine/core/StepperCompleted`;var _y=(e,t)=>typeof e==`function`?(0,L.jsx)(e,{step:t||0}):e,vy={withIcon:!0,allowStepClick:!0,iconPosition:`left`},yy=V((e,t)=>{let{classNames:n,className:r,style:i,styles:a,vars:o,step:s,state:c,color:l,icon:u,completedIcon:d,progressIcon:f,label:p,description:m,withIcon:h,iconSize:g,loading:_,allowStepClick:v,allowStepSelect:y,iconPosition:b,orientation:x,mod:S,...C}=z(`StepperStep`,vy,e),w=my(),T=xr(),E={classNames:n,styles:a},D=c===`stepCompleted`?null:c===`stepProgress`?f:u,O={"data-progress":c===`stepProgress`||void 0,"data-completed":c===`stepCompleted`||void 0};return(0,L.jsxs)(pl,{...w.getStyles(`step`,{className:r,style:i,variant:w.orientation,...E}),mod:[{"icon-position":b||w.iconPosition,"allow-click":v},S],ref:t,...O,...C,__vars:{"--step-color":l?ir(l,T):void 0},tabIndex:v?0:-1,children:[h&&(0,L.jsxs)(`span`,{...w.getStyles(`stepWrapper`,E),children:[(0,L.jsxs)(`span`,{...w.getStyles(`stepIcon`,E),...O,children:[(0,L.jsx)(zl,{mounted:c===`stepCompleted`,transition:`pop`,duration:200,children:e=>(0,L.jsx)(`span`,{...w.getStyles(`stepCompletedIcon`,{style:e,...E}),children:_?(0,L.jsx)(su,{color:`var(--mantine-color-white)`,size:`calc(var(--stepper-icon-size) / 2)`,...w.getStyles(`stepLoader`,E)}):_y(d,s)||(0,L.jsx)(ep,{size:`60%`})})}),c===`stepCompleted`?null:(0,L.jsx)(`span`,{children:_?(0,L.jsx)(su,{...w.getStyles(`stepLoader`,E),size:`calc(var(--stepper-icon-size) / 2)`,color:l}):_y(D||u,s)})]}),x===`vertical`&&(0,L.jsx)(`span`,{...w.getStyles(`verticalSeparator`,E),"data-active":c===`stepCompleted`||void 0})]}),(p||m)&&(0,L.jsxs)(`span`,{...w.getStyles(`stepBody`,E),"data-orientation":w.orientation,"data-icon-position":b||w.iconPosition,children:[p&&(0,L.jsx)(`span`,{...w.getStyles(`stepLabel`,E),children:_y(p,s)}),m&&(0,L.jsx)(`span`,{...w.getStyles(`stepDescription`,E),children:_y(m,s)})]})]})});yy.classes=hy,yy.displayName=`@mantine/core/StepperStep`;var by={orientation:`horizontal`,iconPosition:`left`,allowNextStepsSelect:!0,wrap:!0},xy=kn((e,{color:t,iconSize:n,size:r,contentPadding:i,radius:a,autoContrast:o})=>({root:{"--stepper-color":t?ir(t,e):void 0,"--stepper-icon-color":ai(o,e)?Er({color:t,theme:e,autoContrast:o}):void 0,"--stepper-icon-size":n===void 0?dt(r,`stepper-icon-size`):I(n),"--stepper-content-padding":ft(i),"--stepper-radius":a===void 0?void 0:pt(a),"--stepper-fz":mt(r),"--stepper-spacing":ft(r)}})),Sy=V((e,t)=>{let n=z(`Stepper`,by,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,children:l,onStepClick:u,active:d,icon:f,completedIcon:p,progressIcon:m,color:h,iconSize:g,contentPadding:_,orientation:v,iconPosition:y,size:x,radius:S,allowNextStepsSelect:C,wrap:w,autoContrast:T,attributes:E,...D}=n,O=R({name:`Stepper`,classes:hy,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:E,vars:c,varsResolver:xy}),k=b.Children.toArray(l),A=k.filter(e=>e.type!==gy),j=k.find(e=>e.type===gy),M=A.reduce((e,t,n)=>{let r=d===n?`stepProgress`:d>n?`stepCompleted`:`stepInactive`,i=typeof u==`function`?typeof t.props.allowStepSelect==`boolean`?t.props.allowStepSelect:r===`stepCompleted`||C:!1;return e.push((0,b.cloneElement)(t,{icon:t.props.icon||f||n+1,key:n,step:n,state:r,onClick:()=>i&&u?.(n),allowStepClick:i,completedIcon:t.props.completedIcon||p,progressIcon:t.props.progressIcon||m,color:t.props.color||h,iconSize:g,iconPosition:t.props.iconPosition||y,orientation:v})),v===`horizontal`&&n!==A.length-1&&e.push((0,b.createElement)(`div`,{...O(`separator`),"data-active":n<d||void 0,"data-orientation":v,key:`separator-${n}`})),e},[]),N=A[d]?.props?.children,P=j?.props?.children,F=d>A.length-1?P:N;return(0,L.jsx)(py,{value:{getStyles:O,orientation:v,iconPosition:y},children:(0,L.jsxs)(B,{...O(`root`),ref:t,size:x,...D,children:[(0,L.jsx)(B,{...O(`steps`),mod:{orientation:v,"icon-position":y,wrap:w&&v!==`vertical`},children:M}),F&&(0,L.jsx)(`div`,{...O(`content`),children:F})]})})});Sy.classes=hy,Sy.displayName=`@mantine/core/Stepper`,Sy.Completed=gy,Sy.Step=yy;var Cy={root:`m_5f93f3bb`,input:`m_926b4011`,track:`m_9307d992`,thumb:`m_93039a1d`,trackLabel:`m_8277e082`},wy=(0,b.createContext)(null),Ty=wy.Provider,Ey=()=>(0,b.useContext)(wy),Dy=V((e,t)=>{let{value:n,defaultValue:r,onChange:i,size:a,wrapperProps:o,children:s,readOnly:c,disabled:l,...u}=z(`SwitchGroup`,null,e),[d,f]=rn({value:n,defaultValue:r,finalValue:[],onChange:i});return(0,L.jsx)(Ty,{value:{value:d,onChange:e=>{let t=e.currentTarget.value;!c&&f(d.includes(t)?d.filter(e=>e!==t):[...d,t])},size:a,disabled:l},children:(0,L.jsx)(ud.Wrapper,{size:a,ref:t,...o,...u,labelElement:`div`,__staticSelector:`SwitchGroup`,children:(0,L.jsx)(Qf,{role:`group`,children:s})})})});Dy.classes=ud.Wrapper.classes,Dy.displayName=`@mantine/core/SwitchGroup`;var Oy={labelPosition:`right`,withThumbIndicator:!0},ky=kn((e,{radius:t,color:n,size:r})=>({root:{"--switch-radius":t===void 0?void 0:pt(t),"--switch-height":dt(r,`switch-height`),"--switch-width":dt(r,`switch-width`),"--switch-thumb-size":dt(r,`switch-thumb-size`),"--switch-label-font-size":dt(r,`switch-label-font-size`),"--switch-track-label-padding":dt(r,`switch-track-label-padding`),"--switch-color":n?ir(n,e):void 0}})),Ay=V((e,t)=>{let n=z(`Switch`,Oy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,color:l,label:u,offLabel:d,onLabel:f,id:p,size:m,radius:h,wrapperProps:g,thumbIcon:_,checked:v,defaultChecked:y,onChange:b,labelPosition:x,description:S,error:C,disabled:w,variant:T,rootRef:E,mod:D,withThumbIndicator:O,attributes:k,...A}=n,j=Ey(),M=m||j?.size,N=R({name:`Switch`,props:n,classes:Cy,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:k,vars:c,varsResolver:ky}),{styleProps:P,rest:F}=fi(A),ee=Qt(p),te={checked:j?.value.includes(F.value)??v,onChange:e=>{j?.onChange(e),b?.(e)},disabled:j?.disabled??w},[ne,re]=rn({value:te.checked??v,defaultValue:y,finalValue:!1});return(0,L.jsxs)(Vf,{...N(`root`),__staticSelector:`Switch`,__stylesApiProps:n,id:ee,size:M,labelPosition:x,label:u,description:S,error:C,disabled:te.disabled,bodyElement:`label`,labelElement:`span`,classNames:r,styles:o,unstyled:s,"data-checked":te.checked,variant:T,ref:E,mod:D,inert:F.inert,...P,...g,children:[(0,L.jsx)(`input`,{...F,...te,checked:ne,"data-checked":te.checked,onChange:e=>{te.onChange?.(e),re(e.currentTarget.checked)},id:ee,ref:t,type:`checkbox`,role:`switch`,inert:F.inert,...N(`input`)}),(0,L.jsxs)(B,{"aria-hidden":`true`,component:`span`,mod:{error:C,"label-position":x,"without-labels":!f&&!d},...N(`track`),children:[(0,L.jsx)(B,{component:`span`,mod:{"reduce-motion":!0,"with-thumb-indicator":O&&!_},...N(`thumb`),children:_}),(0,L.jsx)(`span`,{...N(`trackLabel`),children:ne?f:d})]})]})});Ay.classes={...Cy,...Bf},Ay.displayName=`@mantine/core/Switch`,Ay.Group=Dy;var[jy,My]=$e(`Table component was not found in the tree`),Ny={table:`m_b23fa0ef`,th:`m_4e7aa4f3`,tr:`m_4e7aa4fd`,td:`m_4e7aa4ef`,tbody:`m_b2404537`,thead:`m_b242d975`,caption:`m_9e5a3ac7`,scrollContainer:`m_a100c15`,scrollContainerInner:`m_62259741`};function Py(e,t){if(!t)return;let n={};return t.columnBorder&&e.withColumnBorders&&(n[`data-with-column-border`]=!0),t.rowBorder&&e.withRowBorders&&(n[`data-with-row-border`]=!0),t.striped&&e.striped&&(n[`data-striped`]=e.striped),t.highlightOnHover&&e.highlightOnHover&&(n[`data-hover`]=!0),t.captionSide&&e.captionSide&&(n[`data-side`]=e.captionSide),t.stickyHeader&&e.stickyHeader&&(n[`data-sticky`]=!0),n}function Fy(e,t){let n=`Table${e.charAt(0).toUpperCase()}${e.slice(1)}`,r=V((r,i)=>{let a=z(n,{},r),{classNames:o,className:s,style:c,styles:l,...u}=a,d=My();return(0,L.jsx)(B,{component:e,ref:i,...Py(d,t),...d.getStyles(e,{className:s,classNames:o,style:c,styles:l,props:a}),...u})});return r.displayName=`@mantine/core/${n}`,r.classes=Ny,r}var Iy=Fy(`th`,{columnBorder:!0}),Ly=Fy(`td`,{columnBorder:!0}),Ry=Fy(`tr`,{rowBorder:!0,striped:!0,highlightOnHover:!0}),zy=Fy(`thead`,{stickyHeader:!0}),By=Fy(`tbody`),Vy=Fy(`tfoot`),Hy=Fy(`caption`,{captionSide:!0});function Uy({data:e}){return(0,L.jsxs)(L.Fragment,{children:[e.caption&&(0,L.jsx)(Hy,{children:e.caption}),e.head&&(0,L.jsx)(zy,{children:(0,L.jsx)(Ry,{children:e.head.map((e,t)=>(0,L.jsx)(Iy,{children:e},t))})}),e.body&&(0,L.jsx)(By,{children:e.body.map((e,t)=>(0,L.jsx)(Ry,{children:e.map((e,t)=>(0,L.jsx)(Ly,{children:e},t))},t))}),e.foot&&(0,L.jsx)(Vy,{children:(0,L.jsx)(Ry,{children:e.foot.map((e,t)=>(0,L.jsx)(Iy,{children:e},t))})})]})}Uy.displayName=`@mantine/core/TableDataRenderer`;var Wy={type:`scrollarea`},Gy=kn((e,{minWidth:t,maxHeight:n,type:r})=>({scrollContainer:{"--table-min-width":I(t),"--table-max-height":I(n),"--table-overflow":r===`native`?`auto`:void 0}})),Ky=V((e,t)=>{let n=z(`TableScrollContainer`,Wy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,children:l,minWidth:u,maxHeight:d,type:f,scrollAreaProps:p,attributes:m,...h}=n,g=R({name:`TableScrollContainer`,classes:Ny,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:m,vars:c,varsResolver:Gy,rootSelector:`scrollContainer`});return(0,L.jsx)(B,{component:f===`scrollarea`?ll:`div`,...f===`scrollarea`?d?{offsetScrollbars:`xy`,...p}:{offsetScrollbars:`x`,...p}:{},ref:t,...g(`scrollContainer`),...h,children:(0,L.jsx)(`div`,{...g(`scrollContainerInner`),children:l})})});Ky.classes=Ny,Ky.displayName=`@mantine/core/TableScrollContainer`;var qy={withRowBorders:!0,verticalSpacing:7},Jy=kn((e,{layout:t,captionSide:n,horizontalSpacing:r,verticalSpacing:i,borderColor:a,stripedColor:o,highlightOnHoverColor:s,striped:c,highlightOnHover:l,stickyHeaderOffset:u,stickyHeader:d})=>({table:{"--table-layout":t,"--table-caption-side":n,"--table-horizontal-spacing":ft(r),"--table-vertical-spacing":ft(i),"--table-border-color":a?ir(a,e):void 0,"--table-striped-color":c&&o?ir(o,e):void 0,"--table-highlight-on-hover-color":l&&s?ir(s,e):void 0,"--table-sticky-header-offset":d?I(u):void 0}})),q=V((e,t)=>{let n=z(`Table`,qy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,horizontalSpacing:l,verticalSpacing:u,captionSide:d,stripedColor:f,highlightOnHoverColor:p,striped:m,highlightOnHover:h,withColumnBorders:g,withRowBorders:_,withTableBorder:v,borderColor:y,layout:b,variant:x,data:S,children:C,stickyHeader:w,stickyHeaderOffset:T,mod:E,tabularNums:D,attributes:O,...k}=n,A=R({name:`Table`,props:n,className:i,style:a,classes:Ny,classNames:r,styles:o,unstyled:s,attributes:O,rootSelector:`table`,vars:c,varsResolver:Jy});return(0,L.jsx)(jy,{value:{getStyles:A,stickyHeader:w,striped:m===!0?`odd`:m||void 0,highlightOnHover:h,withColumnBorders:g,withRowBorders:_,captionSide:d||`bottom`},children:(0,L.jsx)(B,{component:`table`,variant:x,ref:t,mod:[{"data-with-table-border":v,"data-tabular-nums":D},E],...A(`table`),...k,children:C||!!S&&(0,L.jsx)(Uy,{data:S})})})});q.classes=Ny,q.displayName=`@mantine/core/Table`,q.Td=Ly,q.Th=Iy,q.Tr=Ry,q.Thead=zy,q.Tbody=By,q.Tfoot=Vy,q.Caption=Hy,q.ScrollContainer=Ky,q.DataRenderer=Uy;var[Yy,Xy]=$e(`Tabs component was not found in the tree`),Zy={root:`m_89d60db1`,"list--default":`m_576c9d4`,list:`m_89d33d6d`,tab:`m_4ec4dce6`,panel:`m_b0c91715`,tabSection:`m_fc420b1f`,tabLabel:`m_42bbd1ae`,"tab--default":`m_539e827b`,"list--outline":`m_6772fbd5`,"tab--outline":`m_b59ab47c`,"tab--pills":`m_c3381914`},Qy=V((e,t)=>{let n=z(`TabsList`,null,e),{children:r,className:i,grow:a,justify:o,classNames:s,styles:c,style:l,mod:u,...d}=n,f=Xy();return(0,L.jsx)(B,{...d,...f.getStyles(`list`,{className:i,style:l,classNames:s,styles:c,props:n,variant:f.variant}),ref:t,role:`tablist`,variant:f.variant,mod:[{grow:a,orientation:f.orientation,placement:f.orientation===`vertical`&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":o},children:r})});Qy.classes=Zy,Qy.displayName=`@mantine/core/TabsList`;var $y=V((e,t)=>{let n=z(`TabsPanel`,null,e),{children:r,className:i,value:a,classNames:o,styles:s,style:c,mod:l,keepMounted:u,...d}=n,f=Xy(),p=f.value===a,m=f.keepMounted||u||p?r:null;return(0,L.jsx)(B,{...f.getStyles(`panel`,{className:i,classNames:o,styles:s,style:[c,p?void 0:{display:`none`}],props:n}),ref:t,mod:[{orientation:f.orientation},l],role:`tabpanel`,id:f.getPanelId(a),"aria-labelledby":f.getTabId(a),...d,children:m})});$y.classes=Zy,$y.displayName=`@mantine/core/TabsPanel`;var eb=V((e,t)=>{let n=z(`TabsTab`,null,e),{className:r,children:i,rightSection:a,leftSection:o,value:s,onClick:c,onKeyDown:l,disabled:u,color:d,style:f,classNames:p,styles:m,vars:h,mod:g,tabIndex:_,...v}=n,y=xr(),{dir:b}=Ji(),x=Xy(),S=s===x.value,C=e=>{x.onChange(x.allowTabDeactivation&&s===x.value?null:s),c?.(e)},w={classNames:p,styles:m,props:n};return(0,L.jsxs)(pl,{...x.getStyles(`tab`,{className:r,style:f,variant:x.variant,...w}),disabled:u,unstyled:x.unstyled,variant:x.variant,mod:[{active:S,disabled:u,orientation:x.orientation,inverted:x.inverted,placement:x.orientation===`vertical`&&x.placement},g],ref:t,role:`tab`,id:x.getTabId(s),"aria-selected":S,tabIndex:_===void 0?S||x.value===null?0:-1:_,"aria-controls":x.getPanelId(s),onClick:C,__vars:{"--tabs-color":d?ir(d,y):void 0},onKeyDown:ot({siblingSelector:`[role="tab"]`,parentSelector:`[role="tablist"]`,activateOnFocus:x.activateTabWithKeyboard,loop:x.loop,orientation:x.orientation||`horizontal`,dir:b,onKeyDown:l}),...v,children:[o&&(0,L.jsx)(`span`,{...x.getStyles(`tabSection`,w),"data-position":`left`,children:o}),i&&(0,L.jsx)(`span`,{...x.getStyles(`tabLabel`,w),children:i}),a&&(0,L.jsx)(`span`,{...x.getStyles(`tabSection`,w),"data-position":`right`,children:a})]})});eb.classes=Zy,eb.displayName=`@mantine/core/TabsTab`;var tb=`Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value`,nb={keepMounted:!0,orientation:`horizontal`,loop:!0,activateTabWithKeyboard:!0,variant:`default`,placement:`left`},rb=kn((e,{radius:t,color:n,autoContrast:r})=>({root:{"--tabs-radius":pt(t),"--tabs-color":ir(n,e),"--tabs-text-color":ai(r,e)?Er({color:n,theme:e,autoContrast:r}):void 0}})),ib=V((e,t)=>{let n=z(`Tabs`,nb,e),{defaultValue:r,value:i,onChange:a,orientation:o,children:s,loop:c,id:l,activateTabWithKeyboard:u,allowTabDeactivation:d,variant:f,color:p,radius:m,inverted:h,placement:g,keepMounted:_,classNames:v,styles:y,unstyled:b,className:x,style:S,vars:C,autoContrast:w,mod:T,attributes:E,...D}=n,O=Qt(l),[k,A]=rn({value:i,defaultValue:r,finalValue:null,onChange:a}),j=R({name:`Tabs`,props:n,classes:Zy,className:x,style:S,classNames:v,styles:y,unstyled:b,attributes:E,vars:C,varsResolver:rb});return(0,L.jsx)(Yy,{value:{placement:g,value:k,orientation:o,id:O,loop:c,activateTabWithKeyboard:u,getTabId:tt(`${O}-tab`,tb),getPanelId:tt(`${O}-panel`,tb),onChange:A,allowTabDeactivation:d,variant:f,color:p,radius:m,inverted:h,keepMounted:_,unstyled:b,getStyles:j},children:(0,L.jsx)(B,{ref:t,id:O,variant:f,mod:[{orientation:o,inverted:o===`horizontal`&&h,placement:o===`vertical`&&g},T],...j(`root`),...D,children:s})})});ib.classes=Zy,ib.displayName=`@mantine/core/Tabs`,ib.Tab=eb,ib.Panel=$y,ib.List=Qy;var ab=V((e,t)=>(0,L.jsx)(pd,{component:`input`,ref:t,...z(`TextInput`,null,e),__staticSelector:`TextInput`}));ab.classes=pd.classes,ab.displayName=`@mantine/core/TextInput`;var ob={root:`m_7341320d`},sb=kn((e,{size:t,radius:n,variant:r,gradient:i,color:a,autoContrast:o})=>{let s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:r||`filled`,autoContrast:o});return{root:{"--ti-size":dt(t,`ti-size`),"--ti-radius":n===void 0?void 0:pt(n),"--ti-bg":a||r?s.background:void 0,"--ti-color":a||r?s.color:void 0,"--ti-bd":a||r?s.border:void 0}}}),cb=V((e,t)=>{let n=z(`ThemeIcon`,null,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,autoContrast:l,attributes:u,...d}=n;return(0,L.jsx)(B,{ref:t,...R({name:`ThemeIcon`,classes:ob,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:u,vars:c,varsResolver:sb})(`root`),...d})});cb.classes=ob,cb.displayName=`@mantine/core/ThemeIcon`;var lb=[`h1`,`h2`,`h3`,`h4`,`h5`,`h6`],ub=[`xs`,`sm`,`md`,`lg`,`xl`];function db(e,t){let n=t===void 0?`h${e}`:t;return lb.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:ub.includes(n)?{fontSize:`var(--mantine-font-size-${n})`,fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}:{fontSize:I(n),fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}}var fb={root:`m_8a5d1357`},pb={order:1},mb=kn((e,{order:t,size:n,lineClamp:r,textWrap:i})=>{let a=db(t||1,n);return{root:{"--title-fw":a.fontWeight,"--title-lh":a.lineHeight,"--title-fz":a.fontSize,"--title-line-clamp":typeof r==`number`?r.toString():void 0,"--title-text-wrap":i}}}),J=V((e,t)=>{let n=z(`Title`,pb,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,order:c,vars:l,size:u,variant:d,lineClamp:f,textWrap:p,mod:m,attributes:h,...g}=n,_=R({name:`Title`,props:n,classes:fb,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:h,vars:l,varsResolver:mb});return[1,2,3,4,5,6].includes(c)?(0,L.jsx)(B,{..._(`root`),component:`h${c}`,variant:d,ref:t,mod:[{order:c,"data-line-clamp":typeof f==`number`},m],size:u,...g}):null});J.classes=fb,J.displayName=`@mantine/core/Title`;function hb(e){let t=e,n=!1,r=new Set;return{getState(){return t},updateState(e){t=typeof e==`function`?e(t):e},setState(e){this.updateState(e),r.forEach(e=>e(t))},initialize(e){n||=(t=e,!0)},subscribe(e){return r.add(e),()=>r.delete(e)}}}function gb(e){return(0,b.useSyncExternalStore)(e.subscribe,()=>e.getState(),()=>e.getState())}function _b(e,t,n){let r=[],i=[],a={};for(let o of e){let e=o.position||t;a[e]=a[e]||0,a[e]+=1,a[e]<=n?i.push(o):r.push(o)}return{notifications:i,queue:r}}var vb=hb({notifications:[],queue:[],defaultPosition:`bottom-right`,limit:5}),yb=(e=vb)=>gb(e);function bb(e,t){let n=e.getState(),r=_b(t([...n.notifications,...n.queue]),n.defaultPosition,n.limit);e.setState({notifications:r.notifications,queue:r.queue,limit:n.limit,defaultPosition:n.defaultPosition})}function Y(e,t=vb){let n=e.id||Ct();return bb(t,t=>e.id&&t.some(t=>t.id===e.id)?t:[...t,{...e,id:n}]),n}function xb(e,t=vb){return bb(t,t=>t.filter(t=>t.id===e?(t.onClose?.(t),!1):!0)),e}function Sb(e,t=vb){return bb(t,t=>t.map(t=>t.id===e.id?{...t,...e}:t)),e.id}function Cb(e=vb){bb(e,()=>[])}function wb(e=vb){bb(e,t=>t.slice(0,e.getState().limit))}var Tb={show:Y,hide:xb,update:Sb,clean:Cb,cleanQueue:wb,updateState:bb};function Eb(e,t){return Eb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Eb(e,t)}function Db(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Eb(e,t)}var Ob=o(((e,t)=>{t.exports=`SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED`})),kb=o(((e,t)=>{var n=Ob();function r(){}function i(){}i.resetWarningCache=r,t.exports=function(){function e(e,t,r,i,a,o){if(o!==n){var s=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name=`Invariant Violation`,s}}e.isRequired=e;function t(){return e}var a={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return a.PropTypes=a,a}})),Ab=o(((e,t)=>{t.exports=kb()()})),jb={disabled:!1},Mb=b.createContext(null),Nb=function(e){return e.scrollTop},Pb=`unmounted`,Fb=`exited`,Ib=`entering`,Lb=`entered`,Rb=`exiting`,zb=function(e){Db(t,e);function t(t,n){var r=e.call(this,t,n)||this,i=n,a=i&&!i.isMounting?t.enter:t.appear,o;return r.appearStatus=null,t.in?a?(o=Fb,r.appearStatus=Ib):o=Lb:o=t.unmountOnExit||t.mountOnEnter?Pb:Fb,r.state={status:o},r.nextCallback=null,r}t.getDerivedStateFromProps=function(e,t){return e.in&&t.status===`unmounted`?{status:Fb}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(e){var t=null;if(e!==this.props){var n=this.state.status;this.props.in?n!==`entering`&&n!==`entered`&&(t=Ib):(n===`entering`||n===`entered`)&&(t=Rb)}this.updateStatus(!1,t)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var e=this.props.timeout,t=n=r=e,n,r;return e!=null&&typeof e!=`number`&&(t=e.exit,n=e.enter,r=e.appear===void 0?n:e.appear),{exit:t,enter:n,appear:r}},n.updateStatus=function(e,t){if(e===void 0&&(e=!1),t!==null)if(this.cancelNextCallback(),t===`entering`){if(this.props.unmountOnExit||this.props.mountOnEnter){var n=this.props.nodeRef?this.props.nodeRef.current:ws.default.findDOMNode(this);n&&Nb(n)}this.performEnter(e)}else this.performExit();else this.props.unmountOnExit&&this.state.status===`exited`&&this.setState({status:Pb})},n.performEnter=function(e){var t=this,n=this.props.enter,r=this.context?this.context.isMounting:e,i=this.props.nodeRef?[r]:[ws.default.findDOMNode(this),r],a=i[0],o=i[1],s=this.getTimeouts(),c=r?s.appear:s.enter;if(!e&&!n||jb.disabled){this.safeSetState({status:Lb},function(){t.props.onEntered(a)});return}this.props.onEnter(a,o),this.safeSetState({status:Ib},function(){t.props.onEntering(a,o),t.onTransitionEnd(c,function(){t.safeSetState({status:Lb},function(){t.props.onEntered(a,o)})})})},n.performExit=function(){var e=this,t=this.props.exit,n=this.getTimeouts(),r=this.props.nodeRef?void 0:ws.default.findDOMNode(this);if(!t||jb.disabled){this.safeSetState({status:Fb},function(){e.props.onExited(r)});return}this.props.onExit(r),this.safeSetState({status:Rb},function(){e.props.onExiting(r),e.onTransitionEnd(n.exit,function(){e.safeSetState({status:Fb},function(){e.props.onExited(r)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(e,t){t=this.setNextCallback(t),this.setState(e,t)},n.setNextCallback=function(e){var t=this,n=!0;return this.nextCallback=function(r){n&&(n=!1,t.nextCallback=null,e(r))},this.nextCallback.cancel=function(){n=!1},this.nextCallback},n.onTransitionEnd=function(e,t){this.setNextCallback(t);var n=this.props.nodeRef?this.props.nodeRef.current:ws.default.findDOMNode(this),r=e==null&&!this.props.addEndListener;if(!n||r){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var i=this.props.nodeRef?[this.nextCallback]:[n,this.nextCallback],a=i[0],o=i[1];this.props.addEndListener(a,o)}e!=null&&setTimeout(this.nextCallback,e)},n.render=function(){var e=this.state.status;if(e===`unmounted`)return null;var t=this.props,n=t.children;t.in,t.mountOnEnter,t.unmountOnExit,t.appear,t.enter,t.exit,t.timeout,t.addEndListener,t.onEnter,t.onEntering,t.onEntered,t.onExit,t.onExiting,t.onExited,t.nodeRef;var r=Lm(t,[`children`,`in`,`mountOnEnter`,`unmountOnExit`,`appear`,`enter`,`exit`,`timeout`,`addEndListener`,`onEnter`,`onEntering`,`onEntered`,`onExit`,`onExiting`,`onExited`,`nodeRef`]);return b.createElement(Mb.Provider,{value:null},typeof n==`function`?n(e,r):b.cloneElement(b.Children.only(n),r))},t}(b.Component);zb.contextType=Mb,zb.propTypes={};function Bb(){}zb.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Bb,onEntering:Bb,onEntered:Bb,onExit:Bb,onExiting:Bb,onExited:Bb},zb.UNMOUNTED=Pb,zb.EXITED=Fb,zb.ENTERING=Ib,zb.ENTERED=Lb,zb.EXITING=Rb;function Vb(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function Hb(e,t){var n=function(e){return t&&(0,b.isValidElement)(e)?t(e):e},r=Object.create(null);return e&&b.Children.map(e,function(e){return e}).forEach(function(e){r[e.key]=n(e)}),r}function Ub(e,t){e||={},t||={};function n(n){return n in t?t[n]:e[n]}var r=Object.create(null),i=[];for(var a in e)a in t?i.length&&(r[a]=i,i=[]):i.push(a);var o,s={};for(var c in t){if(r[c])for(o=0;o<r[c].length;o++){var l=r[c][o];s[r[c][o]]=n(l)}s[c]=n(c)}for(o=0;o<i.length;o++)s[i[o]]=n(i[o]);return s}function Wb(e,t,n){return n[t]==null?e.props[t]:n[t]}function Gb(e,t){return Hb(e.children,function(n){return(0,b.cloneElement)(n,{onExited:t.bind(null,n),in:!0,appear:Wb(n,`appear`,e),enter:Wb(n,`enter`,e),exit:Wb(n,`exit`,e)})})}function Kb(e,t,n){var r=Hb(e.children),i=Ub(t,r);return Object.keys(i).forEach(function(a){var o=i[a];if((0,b.isValidElement)(o)){var s=a in t,c=a in r,l=t[a],u=(0,b.isValidElement)(l)&&!l.props.in;c&&(!s||u)?i[a]=(0,b.cloneElement)(o,{onExited:n.bind(null,o),in:!0,exit:Wb(o,`exit`,e),enter:Wb(o,`enter`,e)}):!c&&s&&!u?i[a]=(0,b.cloneElement)(o,{in:!1}):c&&s&&(0,b.isValidElement)(l)&&(i[a]=(0,b.cloneElement)(o,{onExited:n.bind(null,o),in:l.props.in,exit:Wb(o,`exit`,e),enter:Wb(o,`enter`,e)}))}}),i}var qb=Object.values||function(e){return Object.keys(e).map(function(t){return e[t]})},Jb={component:`div`,childFactory:function(e){return e}},Yb=function(e){Db(t,e);function t(t,n){var r=e.call(this,t,n)||this;return r.state={contextValue:{isMounting:!0},handleExited:r.handleExited.bind(Vb(r)),firstRender:!0},r}var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(e,t){var n=t.children,r=t.handleExited;return{children:t.firstRender?Gb(e,r):Kb(e,n,r),firstRender:!1}},n.handleExited=function(e,t){var n=Hb(this.props.children);e.key in n||(e.props.onExited&&e.props.onExited(t),this.mounted&&this.setState(function(t){var n=Im({},t.children);return delete n[e.key],{children:n}}))},n.render=function(){var e=this.props,t=e.component,n=e.childFactory,r=Lm(e,[`component`,`childFactory`]),i=this.state.contextValue,a=qb(this.state.children).map(n);return delete r.appear,delete r.enter,delete r.exit,t===null?b.createElement(Mb.Provider,{value:i},a):b.createElement(Mb.Provider,{value:i},b.createElement(t,r,a))},t}(b.Component);Yb.propTypes={},Yb.defaultProps=Jb;var Xb=[`bottom-center`,`bottom-left`,`bottom-right`,`top-center`,`top-left`,`top-right`];function Zb(e,t){return e.reduce((e,n)=>(e[n.position||t].push(n),e),Xb.reduce((e,t)=>(e[t]=[],e),{}))}var Qb={left:`translateX(-100%)`,right:`translateX(100%)`,"top-center":`translateY(-100%)`,"bottom-center":`translateY(100%)`},$b={left:`translateX(0)`,right:`translateX(0)`,"top-center":`translateY(0)`,"bottom-center":`translateY(0)`};function ex({state:e,maxHeight:t,position:n,transitionDuration:r}){let[i,a]=n.split(`-`),o=a===`center`?`${i}-center`:a,s={opacity:0,maxHeight:t,transform:Qb[o],transitionDuration:`${r}ms, ${r}ms, ${r}ms`,transitionTimingFunction:`cubic-bezier(.51,.3,0,1.21), cubic-bezier(.51,.3,0,1.21), linear`,transitionProperty:`opacity, transform, max-height`},c={opacity:1,transform:$b[o]},l={opacity:0,maxHeight:0,transform:Qb[o]},u={entering:c,entered:c,exiting:l,exited:l};return{...s,...u[e]}}function tx(e,t){return typeof t==`number`?t:t===!1||e===!1?!1:e}var nx=(0,b.forwardRef)(({data:e,onHide:t,autoClose:n,...r},i)=>{let{autoClose:a,message:o,...s}=e,c=tx(n,e.autoClose),l=(0,b.useRef)(-1),u=()=>window.clearTimeout(l.current),d=()=>{t(e.id),u()},f=()=>{typeof c==`number`&&(l.current=window.setTimeout(d,c))};return(0,b.useEffect)(()=>{e.onOpen?.(e)},[]),(0,b.useEffect)(()=>(f(),u),[c]),(0,L.jsx)(kg,{...r,...s,onClose:d,ref:i,onMouseEnter:u,onMouseLeave:f,children:o})});nx.displayName=`@mantine/notifications/NotificationContainer`;var rx={root:`m_b37d9ac7`,notification:`m_5ed0edd0`},ix=zb,ax={position:`bottom-right`,autoClose:4e3,transitionDuration:250,containerWidth:440,notificationMaxHeight:200,limit:5,zIndex:ct(`overlay`),store:vb,withinPortal:!0},ox=kn((e,{zIndex:t,containerWidth:n})=>({root:{"--notifications-z-index":t?.toString(),"--notifications-container-width":I(n)}})),sx=V((e,t)=>{let n=z(`Notifications`,ax,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,position:l,autoClose:u,transitionDuration:d,containerWidth:f,notificationMaxHeight:p,limit:m,zIndex:h,store:g,portalProps:_,withinPortal:v,...y}=n,x=xr(),S=yb(g),C=Yt(),w=cn(),T=(0,b.useRef)({}),E=(0,b.useRef)(0),D=x.respectReducedMotion&&w?1:d,O=R({name:`Notifications`,classes:rx,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,vars:c,varsResolver:ox});(0,b.useEffect)(()=>{g?.updateState(e=>({...e,limit:m||5,defaultPosition:l}))},[m,l]),It(()=>{S.notifications.length>E.current&&setTimeout(()=>C(),0),E.current=S.notifications.length},[S.notifications]);let k=Zb(S.notifications,l),A=Xb.reduce((e,t)=>(e[t]=k[t].map(({style:e,...n})=>(0,L.jsx)(ix,{timeout:D,onEnter:()=>T.current[n.id].offsetHeight,nodeRef:{current:T.current[n.id]},children:r=>(0,L.jsx)(nx,{ref:e=>{e&&(T.current[n.id]=e)},data:n,onHide:e=>xb(e,g),autoClose:u,...O(`notification`,{style:{...ex({state:r,position:t,transitionDuration:D,maxHeight:p}),...e}})})},n.id)),e),{});return(0,L.jsxs)(Nl,{withinPortal:v,..._,children:[(0,L.jsx)(B,{...O(`root`),"data-position":`top-center`,ref:t,...y,children:(0,L.jsx)(Yb,{children:A[`top-center`]})}),(0,L.jsx)(B,{...O(`root`),"data-position":`top-left`,...y,children:(0,L.jsx)(Yb,{children:A[`top-left`]})}),(0,L.jsx)(B,{...O(`root`,{className:ze.classNames.fullWidth}),"data-position":`top-right`,...y,children:(0,L.jsx)(Yb,{children:A[`top-right`]})}),(0,L.jsx)(B,{...O(`root`,{className:ze.classNames.fullWidth}),"data-position":`bottom-right`,...y,children:(0,L.jsx)(Yb,{children:A[`bottom-right`]})}),(0,L.jsx)(B,{...O(`root`),"data-position":`bottom-left`,...y,children:(0,L.jsx)(Yb,{children:A[`bottom-left`]})}),(0,L.jsx)(B,{...O(`root`),"data-position":`bottom-center`,...y,children:(0,L.jsx)(Yb,{children:A[`bottom-center`]})})]})});sx.classes=rx,sx.displayName=`@mantine/notifications/Notifications`,sx.show=Tb.show,sx.hide=Tb.hide,sx.update=Tb.update,sx.clean=Tb.clean,sx.cleanQueue=Tb.cleanQueue,sx.updateState=Tb.updateState;var cx=class{max;cache;constructor(e=10){this.max=e,this.cache=new Map}clear(){this.cache.clear()}get(e){let t=this.cache.get(e);return t&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){this.cache.has(e)?this.cache.delete(e):this.cache.size>=this.max&&this.cache.delete(this.first()),this.cache.set(e,t)}delete(e){this.cache.delete(e)}keys(){return this.cache.keys()}first(){return this.cache.keys().next().value}},lx=class{operator;child;constructor(e,t){this.operator=e,this.child=t}toString(){return`${this.operator}(${this.child.toString()})`}},ux=class{operator;left;right;constructor(e,t,n){this.operator=e,this.left=t,this.right=n}toString(){return`(${this.left.toString()} ${this.operator} ${this.right.toString()})`}},dx=class{prefixParselets={};infixParselets={};registerInfix(e,t){return this.infixParselets[e]=t,this}registerPrefix(e,t){return this.prefixParselets[e]=t,this}prefix(e,t,n){return this.registerPrefix(e,{parse(e,r){return n(r,e.consumeAndParse(t))}})}infixLeft(e,t,n){return this.registerInfix(e,{parse(e,r,i){return n(r,i,e.consumeAndParse(t))},precedence:t})}construct(e){return new fx(e,this.prefixParselets,this.infixParselets)}},fx=class{tokens;prefixParselets;infixParselets;constructor(e,t,n){this.tokens=e,this.prefixParselets=t,this.infixParselets=n}hasMore(){return this.tokens.length>0}match(e){return this.peek()?.id===e?(this.consume(),!0):!1}consumeAndParse(e=1/0){let t=this.consume(),n=this.prefixParselets[t.id];if(!n)throw Error(`Parse error at "${t.value}" (line ${t.line}, column ${t.column}). No matching prefix parselet.`);let r=n.parse(this,t);for(;e>this.getPrecedence();){let e=this.consume();r=this.getInfixParselet(e).parse(this,r,e)}return r}getPrecedence(){let e=this.peek();if(!e)return 1/0;let t=this.getInfixParselet(e);return t?t.precedence:1/0}consume(e,t){if(!this.tokens.length)throw Error(`Cant consume unknown more tokens.`);if(e&&this.peek()?.id!==e){let t=this.peek();throw Error(`Expected ${e} but got "${t.id}" (${t.value}) at line ${t.line} column ${t.column}.`)}if(t&&this.peek()?.value!==t){let e=this.peek();throw Error(`Expected "${t}" but got "${e.value}" at line ${e.line} column ${e.column}.`)}return this.tokens.shift()}peek(){return this.tokens.length>0?this.tokens[0]:void 0}removeComments(){this.tokens=this.tokens.filter(e=>e.id!==`Comment`)}getInfixParselet(e){return this.infixParselets[e.id===`Symbol`?e.value:e.id]}},px=`http://hl7.org`,mx=`ok`,hx=`created`,gx=`gone`,_x=`not-modified`,vx=`not-found`,yx=`unauthorized`,bx=`forbidden`,xx=`accepted`,Sx={resourceType:`OperationOutcome`,id:mx,issue:[{severity:`information`,code:`informational`,details:{text:`All OK`}}]},Cx={resourceType:`OperationOutcome`,id:vx,issue:[{severity:`error`,code:`not-found`,details:{text:`Not found`}}]},wx={resourceType:`OperationOutcome`,id:yx,issue:[{severity:`error`,code:`login`,details:{text:`Unauthorized`}}]},Tx={...wx,issue:[...wx.issue,{severity:`error`,code:`expired`,details:{text:`Token expired`}}]},Ex={...wx,issue:[...wx.issue,{severity:`error`,code:`invalid`,details:{text:`Token not issued for this audience`}}]},Dx={resourceType:`OperationOutcome`,id:bx,issue:[{severity:`error`,code:`forbidden`,details:{text:`Forbidden`}}]};function Ox(e,t){return{resourceType:`OperationOutcome`,issue:[{severity:`error`,code:`invalid`,details:{text:e},...t?{expression:[t]}:void 0}]}}function kx(e){return{resourceType:`OperationOutcome`,issue:[{severity:`error`,code:`structure`,details:{text:e}}]}}function Ax(e){return{resourceType:`OperationOutcome`,issue:[{severity:`error`,code:`exception`,details:{text:`Internal server error`},diagnostics:e.toString()}]}}function jx(e){return!e||typeof e!=`object`?!1:e instanceof Error||typeof DOMException<`u`&&e instanceof DOMException?!0:Object.prototype.toString.call(e)===`[object Error]`}function Mx(e){return typeof e==`object`&&!!e&&e.resourceType===`OperationOutcome`}function Nx(e){return e.id===mx||e.id===hx||e.id===_x||e.id===xx}function Px(e){return e.id===gx}var Fx=class extends Error{outcome;constructor(e,t){super(Rx(e),t),this.name=`OperationOutcomeError`,this.outcome=e}};function Ix(e){return e instanceof Fx?e.outcome:Mx(e)?e:Ox(Lx(e))}function Lx(e){return e?typeof e==`string`?e:jx(e)?e.message:Mx(e)?Rx(e):typeof e==`object`&&`code`in e&&typeof e.code==`string`?e.code:JSON.stringify(e):`Unknown error`}function Rx(e){let t=e.issue?.map(zx)??[];return t.length>0?t.join(`; `):`Unknown error`}function zx(e){let t;return t=e.details?.text?e.diagnostics?`${e.details.text} (${e.diagnostics})`:e.details.text:e.diagnostics?e.diagnostics:`Unknown error`,e.expression?.length&&(t+=` (${e.expression.join(`, `)})`),t}function Bx(e,t){let n=t.max&&t.max===2**53-1?1/0:t.max;return{path:e,description:``,type:t.type??[],min:t.min??0,max:n??1,isArray:!!n&&n>1,constraints:[]}}function Vx(e){let t=Object.create(null);for(let[n,r]of Object.entries(e))t[n]={name:n,type:n,path:n,elements:Object.fromEntries(Object.entries(r.elements).map(([e,t])=>[e,Bx(e,t)])),constraints:[],innerTypes:[]};return t}var Hx={Element:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]}}},BackboneElement:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]}}},Address:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},use:{type:[{code:`code`}]},type:{type:[{code:`code`}]},text:{type:[{code:`string`}]},line:{max:9007199254740991,type:[{code:`string`}]},city:{type:[{code:`string`}]},district:{type:[{code:`string`}]},state:{type:[{code:`string`}]},postalCode:{type:[{code:`string`}]},country:{type:[{code:`string`}]},period:{type:[{code:`Period`}]}}},Age:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},Annotation:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},"author[x]":{type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Practitioner`,`http://hl7.org/fhir/StructureDefinition/Patient`,`http://hl7.org/fhir/StructureDefinition/RelatedPerson`,`http://hl7.org/fhir/StructureDefinition/Organization`]},{code:`string`}]},time:{type:[{code:`dateTime`}]},text:{min:1,type:[{code:`markdown`}]}}},Attachment:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},contentType:{type:[{code:`code`}]},language:{type:[{code:`code`}]},data:{type:[{code:`base64Binary`}]},url:{type:[{code:`url`}]},size:{type:[{code:`unsignedInt`}]},hash:{type:[{code:`base64Binary`}]},title:{type:[{code:`string`}]},creation:{type:[{code:`dateTime`}]}}},CodeableConcept:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},coding:{max:9007199254740991,type:[{code:`Coding`}]},text:{type:[{code:`string`}]}}},Coding:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},system:{type:[{code:`uri`}]},version:{type:[{code:`string`}]},code:{type:[{code:`code`}]},display:{type:[{code:`string`}]},userSelected:{type:[{code:`boolean`}]}}},ContactDetail:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},name:{type:[{code:`string`}]},telecom:{max:9007199254740991,type:[{code:`ContactPoint`}]}}},ContactPoint:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},system:{type:[{code:`code`}]},value:{type:[{code:`string`}]},use:{type:[{code:`code`}]},rank:{type:[{code:`positiveInt`}]},period:{type:[{code:`Period`}]}}},Contributor:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},name:{min:1,type:[{code:`string`}]},contact:{max:9007199254740991,type:[{code:`ContactDetail`}]}}},Count:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},DataRequirement:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},profile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]},"subject[x]":{type:[{code:`CodeableConcept`},{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Group`]}]},mustSupport:{max:9007199254740991,type:[{code:`string`}]},codeFilter:{max:9007199254740991,type:[{code:`DataRequirementCodeFilter`}]},dateFilter:{max:9007199254740991,type:[{code:`DataRequirementDateFilter`}]},limit:{type:[{code:`positiveInt`}]},sort:{max:9007199254740991,type:[{code:`DataRequirementSort`}]}}},DataRequirementCodeFilter:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{type:[{code:`string`}]},searchParam:{type:[{code:`string`}]},valueSet:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/ValueSet`]}]},code:{max:9007199254740991,type:[{code:`Coding`}]}}},DataRequirementDateFilter:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{type:[{code:`string`}]},searchParam:{type:[{code:`string`}]},"value[x]":{type:[{code:`dateTime`},{code:`Period`},{code:`Duration`}]}}},DataRequirementSort:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{min:1,type:[{code:`string`}]},direction:{min:1,type:[{code:`code`}]}}},Distance:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},Dosage:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},sequence:{type:[{code:`integer`}]},text:{type:[{code:`string`}]},additionalInstruction:{max:9007199254740991,type:[{code:`CodeableConcept`}]},patientInstruction:{type:[{code:`string`}]},timing:{type:[{code:`Timing`}]},"asNeeded[x]":{type:[{code:`boolean`},{code:`CodeableConcept`}]},site:{type:[{code:`CodeableConcept`}]},route:{type:[{code:`CodeableConcept`}]},method:{type:[{code:`CodeableConcept`}]},doseAndRate:{max:9007199254740991,type:[{code:`DosageDoseAndRate`}]},maxDosePerPeriod:{type:[{code:`Ratio`}]},maxDosePerAdministration:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},maxDosePerLifetime:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]}}},DosageDoseAndRate:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{type:[{code:`CodeableConcept`}]},"dose[x]":{type:[{code:`Range`},{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},"rate[x]":{type:[{code:`Ratio`},{code:`Range`},{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]}}},Duration:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},ElementDefinition:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},path:{min:1,type:[{code:`string`}]},representation:{max:9007199254740991,type:[{code:`code`}]},sliceName:{type:[{code:`string`}]},sliceIsConstraining:{type:[{code:`boolean`}]},label:{type:[{code:`string`}]},code:{max:9007199254740991,type:[{code:`Coding`}]},slicing:{type:[{code:`ElementDefinitionSlicing`}]},short:{type:[{code:`string`}]},definition:{type:[{code:`markdown`}]},comment:{type:[{code:`markdown`}]},requirements:{type:[{code:`markdown`}]},alias:{max:9007199254740991,type:[{code:`string`}]},min:{type:[{code:`unsignedInt`}]},max:{type:[{code:`string`}]},base:{type:[{code:`ElementDefinitionBase`}]},contentReference:{type:[{code:`uri`}]},type:{max:9007199254740991,type:[{code:`ElementDefinitionType`}]},"defaultValue[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]},meaningWhenMissing:{type:[{code:`markdown`}]},orderMeaning:{type:[{code:`string`}]},"fixed[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]},"pattern[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]},example:{max:9007199254740991,type:[{code:`ElementDefinitionExample`}]},"minValue[x]":{type:[{code:`date`},{code:`dateTime`},{code:`instant`},{code:`time`},{code:`decimal`},{code:`integer`},{code:`positiveInt`},{code:`unsignedInt`},{code:`Quantity`}]},"maxValue[x]":{type:[{code:`date`},{code:`dateTime`},{code:`instant`},{code:`time`},{code:`decimal`},{code:`integer`},{code:`positiveInt`},{code:`unsignedInt`},{code:`Quantity`}]},maxLength:{type:[{code:`integer`}]},condition:{max:9007199254740991,type:[{code:`id`}]},constraint:{max:9007199254740991,type:[{code:`ElementDefinitionConstraint`}]},mustSupport:{type:[{code:`boolean`}]},isModifier:{type:[{code:`boolean`}]},isModifierReason:{type:[{code:`string`}]},isSummary:{type:[{code:`boolean`}]},binding:{type:[{code:`ElementDefinitionBinding`}]},mapping:{max:9007199254740991,type:[{code:`ElementDefinitionMapping`}]}}},ElementDefinitionSlicingDiscriminator:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},path:{min:1,type:[{code:`string`}]}}},ElementDefinitionSlicing:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},discriminator:{max:9007199254740991,type:[{code:`ElementDefinitionSlicingDiscriminator`}]},description:{type:[{code:`string`}]},ordered:{type:[{code:`boolean`}]},rules:{min:1,type:[{code:`code`}]}}},ElementDefinitionBase:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{min:1,type:[{code:`string`}]},min:{min:1,type:[{code:`unsignedInt`}]},max:{min:1,type:[{code:`string`}]}}},ElementDefinitionType:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},code:{min:1,type:[{code:`uri`}]},profile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`,`http://hl7.org/fhir/StructureDefinition/ImplementationGuide`]}]},targetProfile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`,`http://hl7.org/fhir/StructureDefinition/ImplementationGuide`]}]},aggregation:{max:9007199254740991,type:[{code:`code`}]},versioning:{type:[{code:`code`}]}}},ElementDefinitionExample:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},label:{min:1,type:[{code:`string`}]},"value[x]":{min:1,type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]}}},ElementDefinitionConstraint:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},key:{min:1,type:[{code:`id`}]},requirements:{type:[{code:`string`}]},severity:{min:1,type:[{code:`code`}]},human:{min:1,type:[{code:`string`}]},expression:{type:[{code:`string`}]},xpath:{type:[{code:`string`}]},source:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]}}},ElementDefinitionBinding:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},strength:{min:1,type:[{code:`code`}]},description:{type:[{code:`string`}]},valueSet:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/ValueSet`]}]}}},ElementDefinitionMapping:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},identity:{min:1,type:[{code:`id`}]},language:{type:[{code:`code`}]},map:{min:1,type:[{code:`string`}]},comment:{type:[{code:`string`}]}}},Expression:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},description:{type:[{code:`string`}]},name:{type:[{code:`id`}]},language:{min:1,type:[{code:`code`}]},expression:{type:[{code:`string`}]},reference:{type:[{code:`uri`}]}}},Extension:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},url:{min:1,type:[{code:`uri`}]},"value[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]}}},HumanName:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},use:{type:[{code:`code`}]},text:{type:[{code:`string`}]},family:{type:[{code:`string`}]},given:{max:9007199254740991,type:[{code:`string`}]},prefix:{max:9007199254740991,type:[{code:`string`}]},suffix:{max:9007199254740991,type:[{code:`string`}]},period:{type:[{code:`Period`}]}}},Identifier:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},use:{type:[{code:`code`}]},type:{type:[{code:`CodeableConcept`}]},system:{type:[{code:`uri`}]},value:{type:[{code:`string`}]},period:{type:[{code:`Period`}]},assigner:{type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Organization`]}]}}},MarketingStatus:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},country:{min:1,type:[{code:`CodeableConcept`}]},jurisdiction:{type:[{code:`CodeableConcept`}]},status:{min:1,type:[{code:`CodeableConcept`}]},dateRange:{min:1,type:[{code:`Period`}]},restoreDate:{type:[{code:`dateTime`}]}}},Meta:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},versionId:{type:[{code:`id`}]},lastUpdated:{type:[{code:`instant`}]},source:{type:[{code:`uri`}]},profile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]},security:{max:9007199254740991,type:[{code:`Coding`}]},tag:{max:9007199254740991,type:[{code:`Coding`}]},project:{type:[{code:`uri`}]},author:{type:[{code:`Reference`}]},onBehalfOf:{type:[{code:`Reference`}]},account:{type:[{code:`Reference`}]},accounts:{max:9007199254740991,type:[{code:`Reference`}]},compartment:{max:9007199254740991,type:[{code:`Reference`}]}}},Money:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},currency:{type:[{code:`code`}]}}},Narrative:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},status:{min:1,type:[{code:`code`}]},div:{min:1,type:[{code:`xhtml`}]}}},ParameterDefinition:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},name:{type:[{code:`code`}]},use:{min:1,type:[{code:`code`}]},min:{type:[{code:`integer`}]},max:{type:[{code:`string`}]},documentation:{type:[{code:`string`}]},type:{min:1,type:[{code:`code`}]},profile:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]}}},Period:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},start:{type:[{code:`dateTime`}]},end:{type:[{code:`dateTime`}]}}},Population:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},"age[x]":{type:[{code:`Range`},{code:`CodeableConcept`}]},gender:{type:[{code:`CodeableConcept`}]},race:{type:[{code:`CodeableConcept`}]},physiologicalCondition:{type:[{code:`CodeableConcept`}]}}},ProdCharacteristic:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},height:{type:[{code:`Quantity`}]},width:{type:[{code:`Quantity`}]},depth:{type:[{code:`Quantity`}]},weight:{type:[{code:`Quantity`}]},nominalVolume:{type:[{code:`Quantity`}]},externalDiameter:{type:[{code:`Quantity`}]},shape:{type:[{code:`string`}]},color:{max:9007199254740991,type:[{code:`string`}]},imprint:{max:9007199254740991,type:[{code:`string`}]},image:{max:9007199254740991,type:[{code:`Attachment`}]},scoring:{type:[{code:`CodeableConcept`}]}}},ProductShelfLife:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},identifier:{type:[{code:`Identifier`}]},type:{min:1,type:[{code:`CodeableConcept`}]},period:{min:1,type:[{code:`Quantity`}]},specialPrecautionsForStorage:{max:9007199254740991,type:[{code:`CodeableConcept`}]}}},Quantity:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},Range:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},low:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},high:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]}}},Ratio:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},numerator:{type:[{code:`Quantity`}]},denominator:{type:[{code:`Quantity`}]}}},Reference:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},reference:{type:[{code:`string`}]},type:{type:[{code:`uri`}]},identifier:{type:[{code:`Identifier`}]},display:{type:[{code:`string`}]}}},RelatedArtifact:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},label:{type:[{code:`string`}]},display:{type:[{code:`string`}]},citation:{type:[{code:`markdown`}]},url:{type:[{code:`url`}]},document:{type:[{code:`Attachment`}]},resource:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Resource`]}]}}},SampledData:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},origin:{min:1,type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},period:{min:1,type:[{code:`decimal`}]},factor:{type:[{code:`decimal`}]},lowerLimit:{type:[{code:`decimal`}]},upperLimit:{type:[{code:`decimal`}]},dimensions:{min:1,type:[{code:`positiveInt`}]},data:{type:[{code:`string`}]}}},Signature:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,max:9007199254740991,type:[{code:`Coding`}]},when:{min:1,type:[{code:`instant`}]},who:{min:1,type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Practitioner`,`http://hl7.org/fhir/StructureDefinition/PractitionerRole`,`http://hl7.org/fhir/StructureDefinition/RelatedPerson`,`http://hl7.org/fhir/StructureDefinition/Patient`,`http://hl7.org/fhir/StructureDefinition/Device`,`http://hl7.org/fhir/StructureDefinition/Organization`]}]},onBehalfOf:{type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Practitioner`,`http://hl7.org/fhir/StructureDefinition/PractitionerRole`,`http://hl7.org/fhir/StructureDefinition/RelatedPerson`,`http://hl7.org/fhir/StructureDefinition/Patient`,`http://hl7.org/fhir/StructureDefinition/Device`,`http://hl7.org/fhir/StructureDefinition/Organization`]}]},targetFormat:{type:[{code:`code`}]},sigFormat:{type:[{code:`code`}]},data:{type:[{code:`base64Binary`}]}}},SubstanceAmount:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},"amount[x]":{type:[{code:`Quantity`},{code:`Range`},{code:`string`}]},amountType:{type:[{code:`CodeableConcept`}]},amountText:{type:[{code:`string`}]},referenceRange:{type:[{code:`SubstanceAmountReferenceRange`}]}}},SubstanceAmountReferenceRange:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},lowLimit:{type:[{code:`Quantity`}]},highLimit:{type:[{code:`Quantity`}]}}},Timing:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},event:{max:9007199254740991,type:[{code:`dateTime`}]},repeat:{type:[{code:`TimingRepeat`}]},code:{type:[{code:`CodeableConcept`}]}}},TimingRepeat:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},"bounds[x]":{type:[{code:`Duration`},{code:`Range`},{code:`Period`}]},count:{type:[{code:`positiveInt`}]},countMax:{type:[{code:`positiveInt`}]},duration:{type:[{code:`decimal`}]},durationMax:{type:[{code:`decimal`}]},durationUnit:{type:[{code:`code`}]},frequency:{type:[{code:`positiveInt`}]},frequencyMax:{type:[{code:`positiveInt`}]},period:{type:[{code:`decimal`}]},periodMax:{type:[{code:`decimal`}]},periodUnit:{type:[{code:`code`}]},dayOfWeek:{max:9007199254740991,type:[{code:`code`}]},timeOfDay:{max:9007199254740991,type:[{code:`time`}]},when:{max:9007199254740991,type:[{code:`code`}]},offset:{type:[{code:`unsignedInt`}]}}},TriggerDefinition:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},name:{type:[{code:`string`}]},"timing[x]":{type:[{code:`Timing`},{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Schedule`]},{code:`date`},{code:`dateTime`}]},data:{max:9007199254740991,type:[{code:`DataRequirement`}]},condition:{type:[{code:`Expression`}]}}},UsageContext:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},code:{min:1,type:[{code:`Coding`}]},"value[x]":{min:1,type:[{code:`CodeableConcept`},{code:`Quantity`},{code:`Range`},{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/PlanDefinition`,`http://hl7.org/fhir/StructureDefinition/ResearchStudy`,`http://hl7.org/fhir/StructureDefinition/InsurancePlan`,`http://hl7.org/fhir/StructureDefinition/HealthcareService`,`http://hl7.org/fhir/StructureDefinition/Group`,`http://hl7.org/fhir/StructureDefinition/Location`,`http://hl7.org/fhir/StructureDefinition/Organization`]}]}}},MoneyQuantity:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},SimpleQuantity:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{max:0,type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},IdentityProvider:{elements:{authorizeUrl:{min:1,type:[{code:`string`}]},tokenUrl:{min:1,type:[{code:`string`}]},tokenAuthMethod:{type:[{code:`code`}]},userInfoUrl:{min:1,type:[{code:`string`}]},clientId:{min:1,type:[{code:`string`}]},clientSecret:{min:1,type:[{code:`string`}]},usePkce:{type:[{code:`boolean`}]},useSubject:{type:[{code:`boolean`}]}}}};function Ux(e){return new nS(e).parse()}var Wx=Vx(Hx),Gx=Object.create(null),Kx=Object.create(null),qx={"http://hl7.org/fhir/StructureDefinition/MoneyQuantity":`MoneyQuantity`,"http://hl7.org/fhir/StructureDefinition/SimpleQuantity":`SimpleQuantity`,"http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition":`ViewDefinition`};function Jx(e){let t;return t=Kx[e],t||=Kx[e]=Object.create(null),t}function Yx(e){let t=(Array.isArray(e)?e:e.entry?.map(e=>e.resource)??[]).filter(e=>e?.resourceType===`StructureDefinition`);pw(t);for(let e of t)Xx(e)}function Xx(e){if(!e?.name)throw Error(`Failed loading StructureDefinition from bundle`);if(e.resourceType!==`StructureDefinition`)return;let t=Ux(e),n=qx[e.url],r,i;n?(r=Wx,i=n):e.url===`http://hl7.org/fhir/StructureDefinition/${e.type}`||e.url===`https://medplum.com/fhir/StructureDefinition/${e.type}`||e.type?.startsWith(`http://`)||e.type?.startsWith(`https://`)?(r=Wx,i=e.type):(r=Jx(e.url),i=e.type),r[i]=t;for(let e of t.innerTypes)e.parentType=t,r[e.name]=e;Gx[e.url]=t}function Zx(e){return!!Wx[e]}function Qx(e,t){if(t){let n=Jx(t)[e];if(n)return n}return Wx[e]}function $x(e,t){let n=Qx(e,t);if(!n)throw new Fx(Ox(`Unknown data type: `+e));return n}function eS(e){return!!Gx[e]}function tS(e){return Gx[e]}var nS=class{root;elements;elementIndex;index;resourceSchema;slicingContext;innerTypes;backboneContext;constructor(e){if(!e.snapshot?.element||e.snapshot.element.length===0)throw Error(`No snapshot defined for StructureDefinition '${e.name}'`);this.root=e.snapshot.element[0],this.elements=e.snapshot.element.slice(1),this.elementIndex=Object.create(null),this.index=0,this.resourceSchema={name:e.name,path:this.root.path,title:e.title,type:e.type,url:e.url,version:e.version,kind:e.kind,description:lS(e),elements:{},constraints:this.parseElementDefinition(this.root).constraints,innerTypes:[],summaryProperties:new Set,mandatoryProperties:new Set},this.innerTypes=[]}parse(){let e=this.next();for(;e;){if(e.sliceName)this.parseSliceStart(e);else if(e.id?.includes(`:`)){if(this.slicingContext?.current){let t=iS(e,this.slicingContext.path);this.slicingContext.current.elements[t]=this.parseElementDefinition(e)}}else{let t=this.parseElementDefinition(e);this.checkFieldEnter(e,t);let n=this.backboneContext;for(;n;){if(e.path?.startsWith(n.path+`.`)){n.type.elements[iS(e,n.path)]=t;break}n=n.parent}if(!n){let n=iS(e,this.root.path);e.isSummary&&this.resourceSchema.summaryProperties?.add(n.replace(`[x]`,``)),t.min>0&&this.resourceSchema.mandatoryProperties?.add(n.replace(`[x]`,``)),this.resourceSchema.elements[n]=t}this.checkFieldExit(e)}e=this.next()}return this.checkFieldExit(),this.innerTypes.length>0&&(this.resourceSchema.innerTypes=this.innerTypes),this.resourceSchema}checkFieldEnter(e,t){this.isInnerType(e)&&this.enterInnerType(e),this.slicingContext&&!oS(this.slicingContext.path,e?.path)&&(this.slicingContext=void 0),e.slicing&&!this.slicingContext&&this.enterSlice(e,t)}enterInnerType(e){for(;this.backboneContext&&!oS(this.backboneContext?.path,e.path);)this.innerTypes.push(this.backboneContext.type),this.backboneContext=this.backboneContext.parent;let t=gw(e);this.backboneContext={type:{name:t,type:t,path:e.path,title:e.label,description:e.definition,elements:{},constraints:this.parseElementDefinition(e).constraints,innerTypes:[]},path:e.path,parent:oS(this.backboneContext?.path,e.path)?this.backboneContext:this.backboneContext?.parent}}enterSlice(e,t){cS(e)&&!this.peek()?.sliceName||(t.slicing={discriminator:(e.slicing?.discriminator??[]).map(e=>{if(e.type!==`value`&&e.type!==`pattern`&&e.type!==`type`)throw Error(`Unsupported slicing discriminator type: ${e.type}`);return{path:e.path,type:e.type}}),slices:[],ordered:e.slicing?.ordered??!1,rule:e.slicing?.rules},this.slicingContext={field:t.slicing,path:e.path??``})}checkFieldExit(e=void 0){if(this.backboneContext&&!oS(this.backboneContext.path,e?.path))if(this.backboneContext.parent)do this.innerTypes.push(this.backboneContext.type),this.backboneContext=this.backboneContext.parent;while(this.backboneContext&&!oS(this.backboneContext.path,e?.path));else this.innerTypes.push(this.backboneContext.type),this.backboneContext=void 0}next(){let e=this.peek();if(e)return this.index++,e}peek(){let e=this.elements[this.index];if(e){if(this.elementIndex[e.path??``]=e,e.contentReference){let t=e.contentReference.slice(e.contentReference.indexOf(`#`)+1),n=this.elementIndex[t];return n?{...n,id:e.id,path:e.path,min:e.min??n.min,max:e.max??n.max,base:{path:n.base?.path??t,min:e.base?.min??n.base?.min??n.min,max:e.base?.max??n.base?.max??n.max},contentReference:e.contentReference,definition:e.definition}:void 0}return e}}isInnerType(e){let t=this.peek();return!!(oS(e?.path,t?.path)&&e.type?.some(e=>[`BackboneElement`,`Element`].includes(e.code)))}parseSliceStart(e){if(!this.slicingContext)throw Error(`Invalid slice start before discriminator: ${e.sliceName} (${e.id})`);this.slicingContext.current={...this.parseElementDefinition(e),name:e.sliceName??``,definition:e.definition,elements:{}},this.slicingContext.field.slices.push(this.slicingContext.current)}parseElementDefinitionType(e){return(e.type??[]).map(t=>{let n;return(t.code===`BackboneElement`||t.code===`Element`)&&(n=gw(e)),n||=tC(t,`http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type`)?.valueUrl,n||=t.code??``,{code:n,targetProfile:t.targetProfile,profile:t.profile}})}parseElementDefinition(e){let t=rS(e.max),n=e.base?.max?rS(e.base.max):t,r={type:`ElementDefinition`,value:e};return{description:e.definition||``,path:e.path||e.base?.path||``,min:e.min??0,max:t,isArray:n>1,constraints:(e.constraint??[]).map(e=>({key:e.key??``,severity:e.severity??`error`,expression:e.expression??``,description:e.human??``})),type:this.parseElementDefinitionType(e),fixed:sS(yS(r,`fixed[x]`)),pattern:sS(yS(r,`pattern[x]`)),binding:e.binding}}};function rS(e){return e===`*`?1/0:Number.parseInt(e,10)}function iS(e,t=``){return aS(e.path,t)}function aS(e,t){return e?t&&e.startsWith(t)?e.substring(t.length+1):e:``}function oS(e,t){return!e||!t?!1:t.startsWith(e+`.`)||t===e}function sS(e){return Array.isArray(e)&&e.length>0?e[0]:oC(e)?void 0:e}function cS(e){let t=e.slicing?.discriminator;return!!(e.type?.some(e=>e.code===`Extension`)&&t?.length===1&&t[0].type===`value`&&t[0].path===`url`)}function lS(e){let t=e.description;return t?.startsWith(`Base StructureDefinition for ${e.name} Type: `)&&(t=t.substring(`Base StructureDefinition for ${e.name} Type: `.length)),t}function uS(e,t,n){if(e===void 0)return[void 0];if(t===`$this`)return[e];let r=n?.withPath?dS:yS,[i,...a]=t.split(`.`),o=[r(e,i,n)];for(let e of a){let t=[];for(let i of o)if(Array.isArray(i))for(let a of i)t.push(r(a,e,n));else (n?.withPath&&i?.value!==void 0||!n?.withPath&&i!==void 0)&&t.push(r(i,e,n));o=t}return o}function dS(e,t,n){let r=e.path;return fS(yS(e,t,n),r,t)}function fS(e,t,n){let r=t?t+`.`:``;return e===void 0?{type:`undefined`,value:void 0,path:`${r}${n}`}:Array.isArray(e)?e.map((e,t)=>({...e,path:`${r}${n}[${t}]`})):{...e,path:`${r}${n}`}}new cx(1e3);var pS={canonical:/^\S*$/,code:/^[^\s]+( [^\s]+)*$/,date:/^(\d(\d(\d[1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2]\d|3[0-1]))?)?$/,dateTime:/^(\d(\d(\d[1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2]\d|3[0-1])(T([01]\d|2[0-3])(:[0-5]\d:([0-5]\d|60)(\.\d{1,9})?)?)?)?(Z|[+-]((0\d|1[0-3]):[0-5]\d|14:00)?)?)?$/,id:/^[A-Za-z0-9\-.]{1,64}$/,instant:/^(\d(\d(\d[1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2]\d|3[0-1])T([01]\d|2[0-3]):[0-5]\d:([0-5]\d|60)(\.\d{1,9})?(Z|[+-]((0\d|1[0-3]):[0-5]\d|14:00))$/,markdown:/^[\r\n\t\u0020-\uFFFF]+$/,oid:/^urn:oid:[0-2](\.(0|[1-9]\d*))+$/,string:/^[\r\n\t\u0020-\uFFFF]+$/,time:/^([01]\d|2[0-3]):[0-5]\d:([0-5]\d|60)(\.\d{1,9})?$/,uri:/^\S*$/,url:/^\S*$/,uuid:/^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,xhtml:/.*/};function mS(e,t,n,r){if(Array.isArray(e))return!1;let i;i=t.path===`$this`?n:(r??n.elements)[t.path];let a=n.type;switch(t.type){case`value`:case`pattern`:if(!e||!i)return!1;if(i.pattern)return fC(e,i.pattern);if(i.fixed)return lC(e,i.fixed);if(i.binding?.strength===`required`&&i.binding.valueSet)return!0;break;case`type`:return!e||!a?.length?!1:a.some(t=>t.code===e.type)}return!1}function hS(e){return[{type:X.boolean,value:e}]}function gS(e){return e==null?{type:`undefined`,value:void 0}:Number.isSafeInteger(e)?{type:X.integer,value:e}:typeof e==`number`?{type:X.decimal,value:e}:typeof e==`boolean`?{type:X.boolean,value:e}:typeof e==`string`?{type:X.string,value:e}:LS(e)?{type:X.Quantity,value:e}:Ew(e)?{type:e.resourceType,value:e}:bC(e)?{type:X.CodeableConcept,value:e}:yC(e)?{type:X.Coding,value:e}:{type:X.BackboneElement,value:e}}function _S(e){return e.length===0?!1:!!e[0].value}function vS(e,t){if(e.length!==0){if(e.length===1&&(!t||e[0].type===t))return e[0];throw Error(`Expected singleton of type ${t}, but found ${JSON.stringify(e)}`)}}function yS(e,t,n){if(!e.value)return;let r=ww(e.type,t,n?.profileUrl);return r?bS(e,t,r):SS(e,t)}function bS(e,t,n){let r=e.value,i=n.type;if(!i||i.length===0)return;let a,o=`undefined`,s,c=n.path.lastIndexOf(`.`),l=n.path.substring(c+1),u=l,d=!1;l.endsWith(`[x]`)&&(u=l.substring(0,l.length-3),d=!0);for(let e of i){let t=u;if(d&&(t+=EC(e.code)),a=r[t],s=r[`_`+t],a!==void 0||s!==void 0){o=e.code;break}}if(s)if(Array.isArray(a)){a=a.slice();for(let e=0;e<Math.max(a.length,s.length);e++)a[e]=VS(a[e],s[e])}else if(!a&&Array.isArray(s)){a=s.slice();for(let e=0;e<s.length;e++)a[e]=VS(void 0,s[e])}else a=VS(a,s);if(!oC(a))return(o===`Element`||o===`BackboneElement`)&&(o=n.type[0].code),Array.isArray(a)?a.map(e=>xS(e,o)):xS(a,o)}function xS(e,t){return t===`Resource`&&Ew(e)&&(t=e.resourceType),{type:t,value:e}}function SS(e,t){let n=e.value;if(!n||typeof n!=`object`)return;let r;if(t in n){let e=n[t];r=Array.isArray(e)?e.map(gS):gS(e)}else{let e=t.endsWith(`[x]`)?t.substring(0,t.length-3):t;for(let t of Object.values(X)){let i=e+EC(t);if(i in n){let e=n[i];r=Array.isArray(e)?e.map(e=>({type:t,value:e})):{type:t,value:e};break}}}if(Array.isArray(r)){if(r.length===0||oC(r[0]))return}else if(oC(r))return;return r}function CS(e){let t=[];for(let n of e){let e=!1;for(let r of t)if(_S(DS(n,r))){e=!0;break}e||t.push(n)}return t}function wS(e){return hS(!_S(e))}function TS(e,t){return e.length===0||t.length===0?[]:e.length===t.length?hS(e.every((e,n)=>_S(DS(e,t[n])))):hS(!1)}function ES(e,t){return e.length===0||t.length===0?[]:e.length===t.length?hS(e.some((e,n)=>!_S(DS(e,t[n])))):hS(!0)}function DS(e,t){let n=e.value?.valueOf(),r=t.value?.valueOf();return typeof n==`number`&&typeof r==`number`?hS(Math.abs(n-r)<1e-8):LS(n)&&LS(r)?hS(RS(n,r)):hS(typeof n==`object`&&typeof r==`object`?zS(e,t):n===r)}function OS(e,t){return e.length===0&&t.length===0?hS(!0):e.length===t.length?(e.sort(AS),t.sort(AS),hS(e.every((e,n)=>_S(kS(e,t[n]))))):hS(!1)}function kS(e,t){let{type:n,value:r}=e,{type:i,value:a}=t,o=r?.valueOf(),s=a?.valueOf();return typeof o==`number`&&typeof s==`number`?hS(Math.abs(o-s)<.01):LS(o)&&LS(s)?hS(RS(o,s)):hS(n===`Coding`&&i===`Coding`?typeof o!=`object`||typeof s!=`object`?!1:o.code===s.code&&o.system===s.system:typeof o==`object`&&typeof s==`object`?zS({...o,id:void 0},{...s,id:void 0}):typeof o==`string`&&typeof s==`string`?o.toLowerCase()===s.toLowerCase():o===s)}function AS(e,t){let n=e.value?.valueOf(),r=t.value?.valueOf();return typeof n==`number`&&typeof r==`number`?n-r:typeof n==`string`&&typeof r==`string`?n.localeCompare(r):0}function jS(e,t){let{value:n}=e;if(n==null)return!1;let r=t;switch(r.startsWith(`System.`)&&(r=r.substring(7)),r.startsWith(`FHIR.`)&&(r=r.substring(5)),r){case`Boolean`:return typeof n==`boolean`;case`Decimal`:case`Integer`:return typeof n==`number`;case`Date`:return MS(n);case`DateTime`:return NS(n);case`Time`:return typeof n==`string`&&!!/^T\d/.exec(n);case`Period`:return PS(n);case`Quantity`:return LS(n);default:return e.type===r||typeof n==`object`&&n?.resourceType===r}}function MS(e){return typeof e==`string`&&!!pS.date.exec(e)}function NS(e){return typeof e==`string`&&!!pS.dateTime.exec(e)}function PS(e){return!!(e&&typeof e==`object`&&(`start`in e&&NS(e.start)||`end`in e&&NS(e.end)))}function FS(e){if(e){if(MS(e)||NS(e))return{start:IS(e,`0000-01-01T00:00:00.000`),end:IS(e,`xxxx-12-31T23:59:59.999`)};if(PS(e))return{start:e.start?IS(e.start,`0000-01-01T00:00:00.000`):void 0,end:e.end?IS(e.end,`xxxx-12-31T23:59:59.999`):void 0}}}function IS(e,t){let n=`Z`,r=Math.max(e.indexOf(`+`,10),e.indexOf(`-`,10));r>-1?(n=e.substring(r),e=e.substring(0,r)):e.endsWith(`Z`)&&(e=e.substring(0,e.length-1));let i=e+t.substring(e.length)+n;return new Date(i).toISOString()}function LS(e){return!!(e&&typeof e==`object`&&`value`in e&&typeof e.value==`number`)}function RS(e,t){return Math.abs(e.value-t.value)<.01&&(e.unit===t.unit||e.code===t.code||e.unit===t.code||e.code===t.unit)}function zS(e,t){let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n){let n=e[r],i=t[r];if(BS(n)&&BS(i)){if(!zS(n,i))return!1}else if(n!==i)return!1}return!0}function BS(e){return typeof e==`object`&&!!e}function VS(e,t){if(t){if(typeof t!=`object`)throw Error(`Primitive extension must be an object`);return HS(e??{},t)}return e}function HS(e,t){return delete t.__proto__,delete t.constructor,Object.assign(e,t)}function US(e,t){return Ew(e,t)&&`id`in e&&typeof e.id==`string`}function WS(e){let t=GS(e)??`undefined/undefined`,n=JS(e);return n===t?{reference:t}:{reference:t,display:n}}function GS(e){if(Dw(e))return e.reference;if(US(e))return`${e.resourceType}/${e.id}`}function KS(e){if(e)return Dw(e)?e.reference.split(`/`)[1]:e.id}function qS(e){return e.resourceType===`Patient`||e.resourceType===`Practitioner`||e.resourceType===`RelatedPerson`}function JS(e){if(qS(e)){let t=YS(e);if(t)return t}if(e.resourceType===`Device`){let t=XS(e);if(t)return t}if(e.resourceType===`MedicationRequest`&&e.medicationCodeableConcept)return ow(e.medicationCodeableConcept);if(e.resourceType===`Subscription`&&e.criteria)return e.criteria;if(e.resourceType===`User`&&e.email)return e.email;if(`name`in e&&e.name&&typeof e.name==`string`)return e.name;if(`code`in e&&e.code){let t=e.code;if(Array.isArray(t)&&(t=t[0]),bC(t))return ow(t);if(xC(t))return t.text}return GS(e)??``}function YS(e){let t=e.name;if(t&&t.length>0)return qC(t[0])}function XS(e){let t=e.deviceName;if(t&&t.length>0)return t[0].name}function ZS(e){if(!(`photo`in e))return;let t=e.photo;if(t)if(Array.isArray(t))for(let e of t){let t=QS(e);if(t)return t}else return QS(t)}function QS(e){if(e.url&&e.contentType?.startsWith(`image/`))return e.url}function $S(e,t){let n=new Date(e);n.setUTCHours(0,0,0,0);let r=t?new Date(t):new Date;r.setUTCHours(0,0,0,0);let i=n.getUTCFullYear(),a=n.getUTCMonth(),o=n.getUTCDate(),s=r.getUTCFullYear(),c=r.getUTCMonth(),l=r.getUTCDate(),u=s-i;(c<a||c===a&&l<o)&&u--;let d=s*12+c-(i*12+a);l<o&&d--;let f=Math.floor((r.getTime()-n.getTime())/(1e3*60*60*24));return{years:u,months:d,days:f}}function eC(e,t){let{years:n,months:r,days:i}=$S(e,t);return n>=2?n.toString().padStart(3,`0`)+`Y`:r>=1?r.toString().padStart(3,`0`)+`M`:i.toString().padStart(3,`0`)+`D`}function tC(e,...t){let n=e;for(let e=0;e<t.length&&n;e++)n=(n?.extension)?.find(n=>n.url===t[e]);return n}function nC(e,t){let n=rC(e);return JSON.stringify(n,null,t?2:void 0)??``}function rC(e){if(!(e==null||e===``))return typeof e==`object`?Array.isArray(e)?iC(e):aC(e):e}function iC(e){let t=e.length;if(t===0)return;let n,r=0;for(let i=0;i<t;i++){let t=e[i],a=rC(t);a!==t&&!n&&(n=Array.from(e)),a===void 0?n&&(n[i]=null):(n&&(n[i]=a),r++)}if(r!==0)return n??e}function aC(e){let t,n=0;for(let r in e){let i=e[r],a=rC(i);a!==i&&!t&&(t={...e}),a===void 0?t&&delete t[r]:(t&&(t[r]=a),n++)}if(n!==0)return t??e}function oC(e){if(e==null)return!0;let t=typeof e;return t===`string`||t===`object`?!sC(e):!1}function sC(e){if(e==null)return!1;let t=typeof e;return t===`string`&&e!==``||t===`object`&&(`length`in e&&e.length>0||Object.keys(e).length>0)}function cC(e){if(!e)return;let t=e.length-1;for(;t>=0&&oC(e[t]);)t--;return t>=0?e.slice(0,t+1):void 0}function lC(e,t,n){return e===t||oC(e)&&oC(t)?!0:oC(e)||oC(t)?!1:Array.isArray(e)&&Array.isArray(t)?uC(e,t):Array.isArray(e)||Array.isArray(t)?!1:_C(e)&&_C(t)?dC(e,t,n):!1}function uC(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!lC(e[n],t[n]))return!1;return!0}function dC(e,t,n){let r=new Set;for(let t of Object.keys(e))r.add(t);for(let e of Object.keys(t))r.add(e);n===`meta`&&(r.delete(`versionId`),r.delete(`lastUpdated`),r.delete(`author`));for(let n of r){let r=e[n],i=t[n];if(!lC(r,i,n))return!1}return!0}function fC(e,t){return oC(e)?!0:oC(t)?!1:Array.isArray(e)&&Array.isArray(t)?pC(e,t):Array.isArray(e)||Array.isArray(t)?!1:_C(e)&&_C(t)?mC(e,t):_C(e)||_C(t)?!1:e===t}function pC(e,t){return t.every(t=>e.some(e=>fC(e,t)))}function mC(e,t){return Object.entries(t).every(([t,n])=>t in e&&fC(e[t],n))}function hC(e){return e===void 0?e:JSON.parse(JSON.stringify(e))}function gC(e){return/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i.test(e)}function _C(e){return typeof e==`object`&&!!e}function vC(e){return typeof e==`string`}function yC(e){return _C(e)&&`code`in e&&typeof e.code==`string`}function bC(e){return _C(e)&&`coding`in e&&Array.isArray(e.coding)&&e.coding.every(yC)}function xC(e){return _C(e)&&`text`in e&&typeof e.text==`string`}var SC=[];for(let e=0;e<256;e++)SC.push(e.toString(16).padStart(2,`0`));function CC(e){let t=TC(e),n=new Uint8Array(t),r=Array(n.length);for(let e=0;e<n.length;e++)r[e]=SC[n[e]];return r.join(``)}function wC(e){let t=TC(e),n=new Uint8Array(t),r=Array(n.length);for(let e=0;e<n.length;e++)r[e]=String.fromCodePoint(n[e]);return window.btoa(r.join(``))}function TC(e){return ArrayBuffer.isView(e)?e.buffer:e}function EC(e){return e?e.charAt(0).toUpperCase()+e.substring(1):``}function DC(e){return e.length>0&&e.startsWith(e[0].toUpperCase())}function OC(e,t){let n=e+`.`;if(t.startsWith(n))return t.slice(n.length)}function kC(e,t){return e.coding?.find(e=>e.system===t)?.code}function AC(e){if(e!==void 0)return Array.isArray(e)?e:[e]}var jC=(e,t)=>new Promise((n,r)=>{t?.signal?.throwIfAborted();let i=setTimeout(n,e);t?.signal?.addEventListener(`abort`,()=>{clearTimeout(i),r(t.signal?.reason)},{once:!0})});function MC(e,t,n){let r=[];for(let i=0;i<n-1;i++){let n=e.indexOf(t);if(n<0)break;r.push(e.slice(0,n)),e=e.slice(n+t.length)}return r.push(e),r}function NC(e){let t,n=!1;return function(){return n||=(t=e(),!0),t}}function PC(e,t){return e?(e.push(t),e):[t]}function FC(e){return e.sort((e,t)=>e.localeCompare(t))}function IC(e){return e.endsWith(`/`)?e:e+`/`}function LC(e){return e.startsWith(`/`)?e.slice(1):e}function RC(e,t){return new URL(LC(t),IC(e.toString())).toString()}function zC(e,t){return RC(e,t).toString().replace(`http://`,`ws://`).replace(`https://`,`wss://`)}function BC(e){return typeof e==`object`&&!Array.isArray(e)&&!(e instanceof URLSearchParams)&&(e=Object.fromEntries(Object.entries(e).filter(e=>e[1]!==void 0))),new URLSearchParams(e).toString()}function VC(e,t){return e?.meta?.profile?.includes(t)||(e.meta=e.meta??{},e.meta.profile=e.meta.profile??[],e.meta.profile.push(t)),e}function HC(e,t){if(e?.meta?.profile?.includes(t)){let n=e.meta.profile.indexOf(t);e.meta.profile.splice(n,1)}return e}var UC=Object.freeze([]);function WC(e){if(!e)return``;switch(e.type){case`Address`:return KC(e.value);case`CodeableConcept`:return ow(e.value);case`Coding`:return sw(e.value);case`ContactPoint`:return e.value.value;case`HumanName`:return qC(e.value);case`Quantity`:return iw(e.value);case`Reference`:return GC(e.value);default:return e.value?.toString()??``}}function GC(e){return e?e.display??e.reference??nC(e):``}function KC(e,t){if(!e)return``;let n=[];if(e.line&&n.push(...e.line),e.city||e.state||e.postalCode){let t=[];e.city&&t.push(e.city),e.state&&t.push(e.state),e.postalCode&&t.push(e.postalCode),n.push(t.join(`, `))}return e.use&&(t?.all||t?.use)&&n.push(`[`+e.use+`]`),n.join(t?.lineSeparator??`, `).trim()}function qC(e,t){if(!e)return``;let n=[];if(e.prefix&&t?.prefix!==!1&&n.push(...e.prefix),e.given&&n.push(...e.given),e.family&&n.push(e.family),e.suffix&&t?.suffix!==!1&&n.push(...e.suffix),e.use&&(t?.all||t?.use)&&n.push(`[`+e.use+`]`),n.length===0){let t=lw(e.text);if(t)return t}return n.join(` `).trim()}function JC(e){return e instanceof Date&&!Number.isNaN(e.getTime())}function YC(e,t,n){if(!e)return``;let[r=0,i=0,a=0]=e.split(`:`).map(Number),o=new Date(Date.UTC(1970,0,1,r,i,a));return JC(o)?new Intl.DateTimeFormat(t,{hour:`numeric`,minute:`2-digit`,second:a===0?void 0:`numeric`,...n,timeZone:`UTC`}).format(o):``}function XC(e,t,n){if(!e)return``;let r=new Date(e);return JC(r)?r.toLocaleString(t,n):``}function ZC(e,t,n){return!e||!e.start&&!e.end?``:XC(e.start,t,n)+` - `+XC(e.end,t,n)}var QC={s:`every second`,min:`every minute`,h:`hourly`,d:`daily`,wk:`weekly`,mo:`monthly`,a:`annually`},$C={s:`second`,min:`minute`,h:`hour`,d:`day`,wk:`week`,mo:`month`,a:`year`},ew={s:`seconds`,min:`minutes`,h:`hours`,d:`days`,wk:`weeks`,mo:`months`,a:`years`};function tw(e){if(!e)return``;let t=[];return nw(t,e.repeat),e.event&&t.push(e.event.map(e=>XC(e)).join(`, `)),EC(t.join(` `).trim())}function nw(e,t){if(!t?.periodUnit)return;let n=t.frequency??1,r=t.period??1,i=t.periodUnit;n===1&&r===1?e.push(QC[i]):(n===1?e.push(`once`):e.push(n+` times`),r===1?e.push(`per `+$C[i]):e.push(`per `+r+` `+ew[i])),t.dayOfWeek&&e.push(`on `+t.dayOfWeek.map(EC).join(`, `)),t.timeOfDay&&e.push(`at `+t.timeOfDay.map(e=>YC(e)).join(`, `))}function rw(e,t,n=!1){if(n&&t===void 0)throw Error(`Precision must be specified for exclusive ranges`);let r=e?.low&&{...e.low,comparator:void 0},i=e?.high&&{...e.high,comparator:void 0};return r?.value===void 0&&i?.value===void 0?``:r?.value!==void 0&&i?.value===void 0?n&&t!==void 0?(r.value=dw(r.value,t),`> ${iw(r,t)}`):`>= ${iw(r,t)}`:r?.value===void 0&&i?.value!==void 0?n&&t!==void 0?(i.value=uw(i.value,t),`< ${iw(i,t)}`):`<= ${iw(i,t)}`:(r?.unit===i?.unit&&delete r?.unit,`${iw(r,t)} - ${iw(i,t)}`)}function iw(e,t){if(!e)return``;let n=[];return e.comparator&&(n.push(e.comparator),n.push(` `)),e.value!==void 0&&(t===void 0?n.push(e.value):n.push(e.value.toFixed(t))),e.unit&&(e.unit!==`%`&&n.at(-1)!==` `&&n.push(` `),n.push(e.unit)),n.join(``).trim()}function aw(e){return e?.value===void 0?``:e.value.toLocaleString(void 0,{style:`currency`,currency:e.currency??`USD`,currencyDisplay:`narrowSymbol`})}function ow(e){return e?lw(e.text)||(e.coding?e.coding.map(e=>sw(e)).join(`, `):``):``}function sw(e,t){let n=lw(e?.display);if(n){let r=t?lw(e?.code):void 0;return`${n}${r?` (`+r+`)`:``}`}return lw(e?.code)??``}function cw(e){if(!e)return``;let t=[];if(e.valueQuantity)t.push(iw(e.valueQuantity));else if(e.valueCodeableConcept)t.push(ow(e.valueCodeableConcept));else{let n=lw(e.valueString);n&&t.push(n)}return`component`in e&&t.push(e.component.map(e=>cw(e)).join(` / `)),t.join(` / `).trim()}function lw(e){return typeof e==`string`?e:void 0}function uw(e,t,n=1){return(fw(e,t)+n)*10**-t}function dw(e,t,n=1){return(fw(e,t)-n)*10**-t}function fw(e,t){return t===void 0?e:Math.round(e*10**t)}var X={Address:`Address`,Age:`Age`,Annotation:`Annotation`,Attachment:`Attachment`,BackboneElement:`BackboneElement`,CodeableConcept:`CodeableConcept`,Coding:`Coding`,ContactDetail:`ContactDetail`,ContactPoint:`ContactPoint`,Contributor:`Contributor`,Count:`Count`,DataRequirement:`DataRequirement`,Distance:`Distance`,Dosage:`Dosage`,Duration:`Duration`,Element:`Element`,ElementDefinition:`ElementDefinition`,Expression:`Expression`,Extension:`Extension`,HumanName:`HumanName`,Identifier:`Identifier`,MarketingStatus:`MarketingStatus`,Meta:`Meta`,Money:`Money`,MoneyQuantity:`MoneyQuantity`,Narrative:`Narrative`,ParameterDefinition:`ParameterDefinition`,Period:`Period`,Population:`Population`,ProdCharacteristic:`ProdCharacteristic`,ProductShelfLife:`ProductShelfLife`,Quantity:`Quantity`,Range:`Range`,Ratio:`Ratio`,Reference:`Reference`,RelatedArtifact:`RelatedArtifact`,SampledData:`SampledData`,Signature:`Signature`,SimpleQuantity:`SimpleQuantity`,SubstanceAmount:`SubstanceAmount`,SystemString:`http://hl7.org/fhirpath/System.String`,Timing:`Timing`,TriggerDefinition:`TriggerDefinition`,UsageContext:`UsageContext`,base64Binary:`base64Binary`,boolean:`boolean`,canonical:`canonical`,code:`code`,date:`date`,dateTime:`dateTime`,decimal:`decimal`,id:`id`,instant:`instant`,integer:`integer`,markdown:`markdown`,oid:`oid`,positiveInt:`positiveInt`,string:`string`,time:`time`,unsignedInt:`unsignedInt`,uri:`uri`,url:`url`,uuid:`uuid`,xhtml:`xhtml`};function pw(e){let t=Array.isArray(e)?e:e.entry?.map(e=>e.resource)??[];for(let e of t)e?.resourceType===`StructureDefinition`&&e.kind===`resource`&&mw(e.type)}function mw(e){let t=Ow.types[e];return t||(t={searchParamsDetails:{}},Ow.types[e]=t),!t.searchParams&&e!==`Binary`&&(t.searchParams={_id:{base:[e],code:`_id`,type:`token`,expression:e+`.id`},_lastUpdated:{base:[e],code:`_lastUpdated`,type:`date`,expression:e+`.meta.lastUpdated`},_compartment:{base:[e],code:`_compartment`,type:`reference`,expression:e+`.meta.compartment`},_profile:{base:[e],code:`_profile`,type:`uri`,expression:e+`.meta.profile`},_security:{base:[e],code:`_security`,type:`token`,expression:e+`.meta.security`},_source:{base:[e],code:`_source`,type:`uri`,expression:e+`.meta.source`},_tag:{base:[e],code:`_tag`,type:`token`,expression:e+`.meta.tag`}}),t}function hw(e){for(let t of e.base??UC){let n=mw(t);n.searchParams||={},n.searchParams[e.code]=e}}function gw(e){let t=e.type?.[0]?.code;return t===`BackboneElement`||t===`Element`?_w((e.base?.path??e.path)?.split(`.`)):t}function _w(e){return e.length===1?e[0]:e.map(EC).join(``)}function vw(e){return Ow.types[e]?.searchParams}function yw(e,t){return Ow.types[e]?.searchParams?.[t]}function bw(e){return xw(e.replaceAll(`[x]`,``).split(`.`).pop())}function xw(e){let t;return t=e.length<100?e.match(/[A-Z]+(?![a-z])|[A-Z]?[a-z]+|\d+/g)??[]:e.split(/(?=[A-Z])/),t.map(Cw).join(` `).replace(`_`,` `).replaceAll(/\s+/g,` `)}var Sw=new Set([`CDS`,`ID`,`IP`,`PKCE`,`JWKS`,`URI`,`URL`,`OMB`,`UDI`]);function Cw(e){let t=e.toUpperCase();return e===t?e:Sw.has(t)?t:t.charAt(0)+e.slice(1)}function ww(e,t,n){let r=Qx(e,n);if(r)return Tw(r.elements,t)}function Tw(e,t){let n=e[t]??e[t+`[x]`];if(n)return n;for(let n=0;n<t.length;n++){let r=t[n];if(r>=`A`&&r<=`Z`){let r=e[t.slice(0,n)+`[x]`];if(r)return r}}}function Ew(e,t){return!(!e||typeof e!=`object`||!(`resourceType`in e)||t&&e.resourceType!==t)}function Dw(e,t){return e&&typeof e==`object`&&`reference`in e&&typeof e.reference==`string`?t?e.reference.match(RegExp(`^${t}(/|\\?)`))!==null:!0:!1}var Ow={types:{}};function kw(e){if(e.startsWith(`T`))return e+`T00:00:00.000Z`.substring(e.length);if(e.length<=10)return e;try{return new Date(e).toISOString()}catch{return e}}var Aw=()=>[],jw={empty:(e,t)=>hS(t.every(e=>oC(e.value))),hasValue:(e,t)=>hS(t.length!==0),exists:(e,t,n)=>hS(n?t.some(t=>_S(n.eval(e,[t]))):t.length>0&&t.every(e=>!oC(e.value))),all:(e,t,n)=>hS(t.every(t=>_S(n.eval(e,[t])))),allTrue:(e,t)=>{for(let e of t)if(!e.value)return hS(!1);return hS(!0)},anyTrue:(e,t)=>{for(let e of t)if(e.value)return hS(!0);return hS(!1)},allFalse:(e,t)=>{for(let e of t)if(e.value)return hS(!1);return hS(!0)},anyFalse:(e,t)=>{for(let e of t)if(!e.value)return hS(!0);return hS(!1)},subsetOf:(e,t,n)=>{if(t.length===0)return hS(!0);let r=n.eval(e,Fw(e));return r.length===0?hS(!1):hS(t.every(e=>r.some(t=>t.value===e.value)))},supersetOf:(e,t,n)=>{let r=n.eval(e,Fw(e));return r.length===0?hS(!0):t.length===0?hS(!1):hS(r.every(e=>t.some(t=>t.value===e.value)))},count:(e,t)=>[{type:X.integer,value:t.length}],distinct:(e,t)=>{let n=[];for(let e of t)n.some(t=>t.value===e.value)||n.push(e);return n},isDistinct:(e,t)=>hS(t.length===jw.distinct(e,t).length),where:(e,t,n)=>t.filter(t=>_S(n.eval(e,[t]))),select:(e,t,n)=>t.flatMap(t=>n.eval({parent:e,variables:{$this:t}},[t])),repeat:Aw,ofType:(e,t,n)=>t.filter(e=>e.type===n.name),single:(e,t)=>{if(t.length>1)throw Error(`Expected input length one for single()`);return t.length===0?[]:t.slice(0,1)},first:(e,t)=>t.length===0?[]:t.slice(0,1),last:(e,t)=>t.length===0?[]:t.slice(-1,t.length),tail:(e,t)=>t.length===0?[]:t.slice(1,t.length),skip:(e,t,n)=>{let r=n.eval(e,t)[0]?.value;if(typeof r!=`number`)throw TypeError(`Expected a number for skip(num)`);return r>=t.length?[]:r<=0?t:t.slice(r,t.length)},take:(e,t,n)=>{let r=n.eval(e,t)[0]?.value;if(typeof r!=`number`)throw TypeError(`Expected a number for take(num)`);return r>=t.length?t:r<=0?[]:t.slice(0,r)},intersect:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Fw(e)),i=[];for(let e of t)!i.some(t=>t.value===e.value)&&r.some(t=>t.value===e.value)&&i.push(e);return i},exclude:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Fw(e)),i=[];for(let e of t)r.some(t=>t.value===e.value)||i.push(e);return i},union:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Fw(e));return CS([...t,...r])},combine:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Fw(e));return[...t,...r]},htmlChecks:(e,t,n)=>[gS(!0)],iif:(e,t,n,r,i)=>{let a=n.eval(e,t);if(a.length>1||a.length===1&&typeof a[0].value!=`boolean`)throw Error(`Expected criterion to evaluate to a Boolean`);return _S(a)?r.eval(e,t):i?i.eval(e,t):[]},toBoolean:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);if(typeof n==`boolean`)return[{type:X.boolean,value:n}];if(typeof n==`number`&&(n===0||n===1))return hS(!!n);if(typeof n==`string`){let e=n.toLowerCase();if([`true`,`t`,`yes`,`y`,`1`,`1.0`].includes(e))return hS(!0);if([`false`,`f`,`no`,`n`,`0`,`0.0`].includes(e))return hS(!1)}return[]},convertsToBoolean:(e,t)=>t.length===0?[]:hS(jw.toBoolean(e,t).length===1),toInteger:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);return typeof n==`number`?[{type:X.integer,value:n}]:typeof n==`string`&&/^[+-]?\d+$/.exec(n)?[{type:X.integer,value:Number.parseInt(n,10)}]:typeof n==`boolean`?[{type:X.integer,value:n?1:0}]:[]},convertsToInteger:(e,t)=>t.length===0?[]:hS(jw.toInteger(e,t).length===1),toDate:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);return typeof n==`string`&&/^\d{4}(-\d{2}(-\d{2})?)?/.exec(n)?[{type:X.date,value:kw(n)}]:[]},convertsToDate:(e,t)=>t.length===0?[]:hS(jw.toDate(e,t).length===1),toDateTime:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);return typeof n==`string`&&/^\d{4}(-\d{2}(-\d{2})?)?/.exec(n)?[{type:X.dateTime,value:kw(n)}]:[]},convertsToDateTime:(e,t)=>t.length===0?[]:hS(jw.toDateTime(e,t).length===1),toDecimal:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);return typeof n==`number`?[{type:X.decimal,value:n}]:typeof n==`string`&&/^-?\d{1,9}(\.\d{1,9})?$/.exec(n)?[{type:X.decimal,value:Number.parseFloat(n)}]:typeof n==`boolean`?[{type:X.decimal,value:n?1:0}]:[]},convertsToDecimal:(e,t)=>t.length===0?[]:hS(jw.toDecimal(e,t).length===1),toQuantity:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);return LS(n)?[{type:X.Quantity,value:n}]:typeof n==`number`?[{type:X.Quantity,value:{value:n,unit:`1`}}]:typeof n==`string`&&/^-?\d{1,9}(\.\d{1,9})?/.exec(n)?[{type:X.Quantity,value:{value:Number.parseFloat(n),unit:`1`}}]:typeof n==`boolean`?[{type:X.Quantity,value:{value:n?1:0,unit:`1`}}]:[]},convertsToQuantity:(e,t)=>t.length===0?[]:hS(jw.toQuantity(e,t).length===1),toString:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);return n==null?[]:LS(n)?[{type:X.string,value:`${n.value} '${n.unit}'`}]:[{type:X.string,value:n.toString()}]},convertsToString:(e,t)=>t.length===0?[]:hS(jw.toString(e,t).length===1),toTime:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Pw(t,1);if(typeof n==`string`){let e=/^T?(\d{2}(:\d{2}(:\d{2})?)?)/.exec(n);if(e)return[{type:X.time,value:kw(`T`+e[1])}]}return[]},convertsToTime:(e,t)=>t.length===0?[]:hS(jw.toTime(e,t).length===1),indexOf:(e,t,n)=>Mw((e,t)=>e.indexOf(t),e,t,n),substring:(e,t,n,r)=>Mw((e,t,n)=>{let r=t,i=n?r+n:e.length;return r<0||r>=e.length?void 0:e.substring(r,i)},e,t,n,r),startsWith:(e,t,n)=>Mw((e,t)=>e.startsWith(t),e,t,n),endsWith:(e,t,n)=>Mw((e,t)=>e.endsWith(t),e,t,n),contains:(e,t,n)=>Mw((e,t)=>e.includes(t),e,t,n),upper:(e,t)=>Mw(e=>e.toUpperCase(),e,t),lower:(e,t)=>Mw(e=>e.toLowerCase(),e,t),replace:(e,t,n,r)=>Mw((e,t,n)=>e.replaceAll(t,n),e,t,n,r),matches:(e,t,n)=>Mw((e,t)=>!!new RegExp(t).exec(e),e,t,n),replaceMatches:(e,t,n,r)=>Mw((e,t,n)=>e.replaceAll(new RegExp(t,`g`),n.replaceAll(/\$\{(\w+)\}/g,`$<$1>`)),e,t,n,r),length:(e,t)=>Mw(e=>e.length,e,t),toChars:(e,t)=>Mw(e=>e?e.split(``):void 0,e,t),encode:Aw,decode:Aw,escape:Aw,unescape:Aw,trim:Aw,split:Aw,join:(e,t,n)=>{let r=n?.eval(e,Fw(e))[0]?.value??``;if(typeof r!=`string`)throw TypeError(`Separator must be a string.`);return[{type:X.string,value:t.map(e=>e.value?.toString()??``).join(r)}]},abs:(e,t)=>Nw(Math.abs,e,t),ceiling:(e,t)=>Nw(Math.ceil,e,t),exp:(e,t)=>Nw(Math.exp,e,t),floor:(e,t)=>Nw(Math.floor,e,t),ln:(e,t)=>Nw(Math.log,e,t),log:(e,t,n)=>Nw((e,t)=>Math.log(e)/Math.log(t),e,t,n),power:(e,t,n)=>Nw(Math.pow,e,t,n),round:(e,t,...n)=>Nw((e,t=0)=>{if(typeof t!=`number`||t<0)throw Error(`Invalid precision provided to round()`);let n=10**t;return Math.round(e*n)/n},e,t,...n),sqrt:(e,t)=>Nw(Math.sqrt,e,t),truncate:(e,t)=>Nw(e=>Math.trunc(e),e,t),children:Aw,descendants:Aw,trace:(e,t,n)=>t,now:()=>[{type:X.dateTime,value:new Date().toISOString()}],timeOfDay:()=>[{type:X.time,value:new Date().toISOString().substring(11)}],today:()=>[{type:X.date,value:new Date().toISOString().substring(0,10)}],between:(e,t,n,r,i)=>{let a=jw.toDateTime(e,n.eval(e,t));if(a.length===0)throw Error(`Invalid start date`);let o=jw.toDateTime(e,r.eval(e,t));if(o.length===0)throw Error(`Invalid end date`);let s=i.eval(e,t)[0]?.value;if(s!==`years`&&s!==`months`&&s!==`days`)throw Error(`Invalid units`);let c=$S(a[0].value,o[0].value);return[{type:X.Quantity,value:{value:c[s],unit:s}}]},is:(e,t,n)=>{let r=``;return n instanceof Rw?r=n.name:n instanceof qw&&(r=n.left.name+`.`+n.right.name),r?t.map(e=>({type:X.boolean,value:jS(e,r)})):[]},not:(e,t)=>jw.toBoolean(e,t).map(e=>({type:X.boolean,value:!e.value})),resolve:(e,t)=>t.map(e=>{let t=e.value,n;if(typeof t==`string`)n=t;else if(typeof t==`object`){let e=t;if(e.resource)return gS(e.resource);e.reference?n=e.reference:e.type&&e.identifier&&(n=`${e.type}?identifier=${e.identifier.system}|${e.identifier.value}`)}if(n?.includes(`?`)){let[e]=n.split(`?`);return{type:e,value:{resourceType:e}}}if(n?.includes(`/`)){let[e,t]=n.split(`/`);return{type:e,value:{resourceType:e,id:t}}}return{type:X.BackboneElement,value:void 0}}).filter(e=>!!e.value),as:(e,t)=>t,type:(e,t)=>t.map(({value:e})=>typeof e==`boolean`?{type:X.BackboneElement,value:{namespace:`System`,name:`Boolean`}}:typeof e==`number`?{type:X.BackboneElement,value:{namespace:`System`,name:`Integer`}}:Ew(e)?{type:X.BackboneElement,value:{namespace:`FHIR`,name:e.resourceType}}:{type:X.BackboneElement,value:null}),conformsTo:(e,t,n)=>{let r=n.eval(e,t)[0].value;if(!r.startsWith(`http://hl7.org/fhir/StructureDefinition/`))throw Error(`Expected a StructureDefinition URL`);let i=r.replace(`http://hl7.org/fhir/StructureDefinition/`,``);return t.map(e=>({type:X.boolean,value:e.value?.resourceType===i}))},getResourceKey:(e,t)=>{let n=t[0].value;return n?.id?[{type:X.id,value:n.id}]:[]},getReferenceKey:(e,t,n)=>{let r=t[0].value;if(!r?.reference)return[];let i=``;return n instanceof Rw&&(i=n.name),i&&!r.reference.startsWith(i+`/`)?[]:[{type:X.id,value:KS(r)}]},extension:(e,t,n)=>{let r=n.eval(e,t)[0].value,i=t?.[0]?.value;if(i){let e=tC(i,r);if(e)return[{type:X.Extension,value:e}]}return[]}};function Mw(e,t,n,...r){if(n.length===0)return[];let[{value:i}]=Pw(n,1);if(typeof i!=`string`)throw TypeError(`String function cannot be called with non-string`);let a=e(i,...r.map(e=>e?.eval(t,n)[0]?.value));return a===void 0?[]:Array.isArray(a)?a.map(gS):[gS(a)]}function Nw(e,t,n,...r){if(n.length===0)return[];let[{value:i}]=Pw(n,1),a=LS(i),o=a?i.value:i;if(typeof o!=`number`)throw TypeError(`Math function cannot be called with non-number`);let s=e(o,...r.map(e=>e.eval(t,n)[0]?.value));return[{type:a?X.Quantity:n[0].type,value:a?{...i,value:s}:s}]}function Pw(e,t){if(e.length!==t)throw Error(`Expected ${t} arguments`);for(let t of e)if(t==null)throw Error(`Expected non-null argument`);return e}function Fw(e){let t=e;for(;t.parent?.variables.$this;)t=t.parent;return[t.variables.$this]}var Iw=class{original;child;constructor(e,t){this.original=e,this.child=t}eval(e,t){try{if(t.length>0){let n=[];for(let r of t)n.push(this.child.eval({parent:e,variables:{$this:r}},[r]));return n.flat()}else return this.child.eval(e,[])}catch(e){throw Error(`FhirPathError on "${this.original}": ${e}`,{cause:e})}}toString(){return this.child.toString()}},Lw=class{value;constructor(e){this.value=e}eval(){return[this.value]}toString(){let e=this.value.value;return typeof e==`string`?`'${e}'`:e.toString()}},Rw=class{name;constructor(e){this.name=e}eval(e,t){if(this.name===`$this`)return t;let n=this.getVariable(e);if(n)return[n];if(this.name.startsWith(`%`))throw Error(`Undefined variable ${this.name}`);return t.flatMap(e=>this.evalValue(e)).filter(e=>e?.value!==void 0)}getVariable(e){let t=e.variables[this.name];if(t!==void 0)return t;if(e.parent)return this.getVariable(e.parent)}evalValue(e){let t=e.value;if(!(!t||typeof t!=`object`))return Ew(t,this.name)?e:dS(e,this.name)}toString(){return this.name}},zw=class{eval(){return[]}toString(){return`{}`}},Bw=class extends lx{impl;constructor(e,t,n){super(e,t),this.impl=n}eval(e,t){return this.impl(this.child.eval(e,t))}toString(){return this.operator+this.child.toString()}},Vw=class extends ux{constructor(e,t){super(`as`,e,t)}eval(e,t){return jw.ofType(e,this.left.eval(e,t),this.right)}},Hw=class extends ux{},Uw=class extends Hw{impl;constructor(e,t,n,r){super(e,t,n),this.impl=r}eval(e,t){let n=this.left.eval(e,t);if(n.length!==1)return[];let r=this.right.eval(e,t);if(r.length!==1)return[];let i=n[0].value,a=r[0].value,o=LS(i)?i.value:i,s=LS(a)?a.value:a,c=this.impl(o,s);return typeof c==`boolean`?hS(c):LS(i)?[{type:X.Quantity,value:{...i,value:c}}]:[gS(c)]}},Ww=class extends ux{constructor(e,t){super(`&`,e,t)}eval(e,t){let n=this.left.eval(e,t),r=this.right.eval(e,t),i=[...n,...r];return i.length>0&&i.every(e=>typeof e.value==`string`)?[{type:X.string,value:i.map(e=>e.value).join(``)}]:i}},Gw=class extends Hw{constructor(e,t){super(`contains`,e,t)}eval(e,t){let n=this.left.eval(e,t),r=this.right.eval(e,t);return hS(n.some(e=>e.value===r[0].value))}},Kw=class extends Hw{constructor(e,t){super(`in`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t)),r=this.right.eval(e,t);return n?hS(r.some(e=>DS(n,e)[0].value)):[]}},qw=class extends ux{constructor(e,t){super(`.`,e,t)}eval(e,t){return this.right.eval(e,this.left.eval(e,t))}toString(){return`${this.left.toString()}.${this.right.toString()}`}},Jw=class extends ux{constructor(e,t){super(`|`,e,t)}eval(e,t){let n=this.left.eval(e,t),r=this.right.eval(e,t);return CS([...n,...r])}},Yw=class extends Hw{constructor(e,t){super(`=`,e,t)}eval(e,t){return TS(this.left.eval(e,t),this.right.eval(e,t))}},Xw=class extends Hw{constructor(e,t){super(`!=`,e,t)}eval(e,t){return ES(this.left.eval(e,t),this.right.eval(e,t))}},Zw=class extends Hw{constructor(e,t){super(`~`,e,t)}eval(e,t){return OS(this.left.eval(e,t),this.right.eval(e,t))}},Qw=class extends Hw{constructor(e,t){super(`!~`,e,t)}eval(e,t){return wS(OS(this.left.eval(e,t),this.right.eval(e,t)))}},$w=class extends Hw{constructor(e,t){super(`is`,e,t)}eval(e,t){let n=this.left.eval(e,t);if(n.length!==1)return[];let r=this.right.name;return hS(jS(n[0],r))}},eT=class extends Hw{constructor(e,t){super(`and`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return n?.value===!0&&r?.value===!0?hS(!0):n?.value===!1||r?.value===!1?hS(!1):[]}},tT=class extends Hw{constructor(e,t){super(`or`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return n?.value===!1&&r?.value===!1?hS(!1):n?.value||r?.value?hS(!0):[]}},nT=class extends Hw{constructor(e,t){super(`xor`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return!n||!r?[]:hS(n.value!==r.value)}},rT=class extends Hw{constructor(e,t){super(`implies`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return r?.value===!0||n?.value===!1?hS(!0):!n||!r?[]:hS(!1)}},iT=class{name;args;constructor(e,t){this.name=e,this.args=t}eval(e,t){let n=jw[this.name];if(!n)throw Error(`Unrecognized function: `+this.name);return n(e,t,...this.args)}toString(){return`${this.name}(${this.args.map(e=>e.toString()).join(`, `)})`}},aT=class{left;expr;constructor(e,t){this.left=e,this.expr=t}eval(e,t){let n=this.expr.eval(e,t);if(n.length!==1)return[];let r=n[0].value;if(typeof r!=`number`)throw Error(`Invalid indexer expression: should return integer}`);let i=this.left.eval(e,t);return r in i?[i[r]]:[]}toString(){return`${this.left.toString()}[${this.expr.toString()}]`}},oT=[`year`,`years`,`month`,`months`,`week`,`weeks`,`day`,`days`,`hour`,`hours`,`minute`,`minutes`,`second`,`seconds`,`millisecond`,`milliseconds`],sT={"'":`'`,'"':`"`,"`":"`",r:`\r`,n:`
|
|
54
|
-
`,t:` `,f:`\f`,"\\":`\\`},
|
|
55
|
-
`))}consumeString(e){this.advance();let t=``,n;for(;n=this.consumeChar(e);)t+=n;let r=this.buildToken(e==="`"?`Symbol`:`String`,t);return this.advance(),r}consumeChar(e){let t=this.curr();if(t===`\\`){this.advance();let t=this.curr(),n=
|
|
56
|
-
`?(this.pos.line++,this.pos.column=0):this.pos.column++}buildToken(e,t){let n=this.markStack.pop();if(!n)throw Error(`No mark for token`);return{id:e,value:t,...n}}};function lT(e){return!!(e&&(e.id===`String`||e.id===`Symbol`&&oT.includes(e.value)))}var uT=[`true`,`false`],dT=[`!=`,`!~`,`<=`,`>=`,`{}`,`->`];function fT(e){return new cT(e,uT,dT).tokenize()}var pT={FunctionCall:0,Dot:1,Indexer:2,UnaryAdd:3,UnarySubtract:3,Multiply:4,Divide:4,IntegerDivide:4,Modulo:4,Add:5,Subtract:5,Ampersand:5,Is:6,As:6,Union:7,GreaterThan:8,GreaterThanOrEquals:8,LessThan:8,LessThanOrEquals:8,Equals:9,Equivalent:9,NotEquals:9,NotEquivalent:9,In:10,Contains:10,And:11,Xor:12,Or:12,Implies:13,Arrow:100,Semicolon:200},mT={parse(e){let t=e.consumeAndParse();if(!e.match(`)`))throw Error("Parse error: expected `)` got `"+e.peek()?.value+"`");return t}},hT={parse(e,t){let n=e.consumeAndParse();if(!e.match(`]`))throw Error("Parse error: expected `]`");return new aT(t,n)},precedence:pT.Indexer},gT={parse(e,t){if(!(t instanceof Rw))throw Error(`Unexpected parentheses`);let n=[];for(;!e.match(`)`);)n.push(e.consumeAndParse()),e.match(`,`);return new iT(t.name,n)},precedence:pT.FunctionCall};function _T(e){let t=e.split(` `),n=Number.parseFloat(t[0]),r=t[1];return r=r?.startsWith(`'`)&&r.endsWith(`'`)?r.substring(1,r.length-1):`{`+r+`}`,{value:n,unit:r}}function vT(){return new dx().registerPrefix(`String`,{parse:(e,t)=>new Lw({type:X.string,value:t.value})}).registerPrefix(`DateTime`,{parse:(e,t)=>new Lw({type:X.dateTime,value:kw(t.value)})}).registerPrefix(`Quantity`,{parse:(e,t)=>new Lw({type:X.Quantity,value:_T(t.value)})}).registerPrefix(`Number`,{parse:(e,t)=>new Lw({type:t.value.includes(`.`)?X.decimal:X.integer,value:Number.parseFloat(t.value)})}).registerPrefix(`true`,{parse:()=>new Lw({type:X.boolean,value:!0})}).registerPrefix(`false`,{parse:()=>new Lw({type:X.boolean,value:!1})}).registerPrefix(`Symbol`,{parse:(e,t)=>new Rw(t.value)}).registerPrefix(`{}`,{parse:()=>new zw}).registerPrefix(`(`,mT).registerInfix(`[`,hT).registerInfix(`(`,gT).prefix(`+`,pT.UnaryAdd,(e,t)=>new Bw(`+`,t,e=>e)).prefix(`-`,pT.UnarySubtract,(e,t)=>new Uw(`-`,t,t,(e,t)=>-t)).infixLeft(`.`,pT.Dot,(e,t,n)=>new qw(e,n)).infixLeft(`/`,pT.Divide,(e,t,n)=>new Uw(`/`,e,n,(e,t)=>e/t)).infixLeft(`*`,pT.Multiply,(e,t,n)=>new Uw(`*`,e,n,(e,t)=>e*t)).infixLeft(`+`,pT.Add,(e,t,n)=>new Uw(`+`,e,n,(e,t)=>e+t)).infixLeft(`-`,pT.Subtract,(e,t,n)=>new Uw(`-`,e,n,(e,t)=>e-t)).infixLeft(`|`,pT.Union,(e,t,n)=>new Jw(e,n)).infixLeft(`=`,pT.Equals,(e,t,n)=>new Yw(e,n)).infixLeft(`!=`,pT.NotEquals,(e,t,n)=>new Xw(e,n)).infixLeft(`~`,pT.Equivalent,(e,t,n)=>new Zw(e,n)).infixLeft(`!~`,pT.NotEquivalent,(e,t,n)=>new Qw(e,n)).infixLeft(`<`,pT.LessThan,(e,t,n)=>new Uw(`<`,e,n,(e,t)=>e<t)).infixLeft(`<=`,pT.LessThanOrEquals,(e,t,n)=>new Uw(`<=`,e,n,(e,t)=>e<=t)).infixLeft(`>`,pT.GreaterThan,(e,t,n)=>new Uw(`>`,e,n,(e,t)=>e>t)).infixLeft(`>=`,pT.GreaterThanOrEquals,(e,t,n)=>new Uw(`>=`,e,n,(e,t)=>e>=t)).infixLeft(`&`,pT.Ampersand,(e,t,n)=>new Ww(e,n)).infixLeft(`and`,pT.And,(e,t,n)=>new eT(e,n)).infixLeft(`as`,pT.As,(e,t,n)=>new Vw(e,n)).infixLeft(`contains`,pT.Contains,(e,t,n)=>new Gw(e,n)).infixLeft(`div`,pT.Divide,(e,t,n)=>new Uw(`div`,e,n,(e,t)=>Math.trunc(e/t))).infixLeft(`in`,pT.In,(e,t,n)=>new Kw(e,n)).infixLeft(`is`,pT.Is,(e,t,n)=>new $w(e,n)).infixLeft(`mod`,pT.Modulo,(e,t,n)=>new Uw(`mod`,e,n,(e,t)=>e%t)).infixLeft(`or`,pT.Or,(e,t,n)=>new tT(e,n)).infixLeft(`xor`,pT.Xor,(e,t,n)=>new nT(e,n)).infixLeft(`implies`,pT.Implies,(e,t,n)=>new rT(e,n))}var yT=vT();function bT(e){return new Iw(e,yT.construct(fT(e)).consumeAndParse())}function xT(e,t){let n=Array.isArray(t)?t:[t];for(let e=0;e<n.length;e++){let t=n[e];typeof t==`object`&&`type`in t&&`value`in t||(n[e]=gS(n[e]))}return ST(e,n).map(e=>e.value)}function ST(e,t,n={},r=void 0){let i;if(typeof e==`string`){let t=r?.get(e);i=t??bT(e),r&&!t&&r.set(e,i)}else i=e;return i.eval({variables:n},t).map(e=>{let t={type:e.type,value:e.value?.valueOf()};return`path`in e&&(t.path=e.path),t})}function CT(e){let t=[];for(let n of e){let e=FS(n.value);e&&t.push(e)}return t}function wT(e){let t=new Set;for(let n of e){let e=WC(n);e&&t.add(e)}return Array.from(t)}function TT(e){let t=new Set;for(let n of e){let{value:e}=n;e&&(vC(e)?t.add(e):Dw(e)?t.add(e.reference):US(e)?t.add(GS(e)):typeof e.identifier==`object`&&t.add(`identifier:${e.identifier.system}|${e.identifier.value}`))}return Array.from(t)}function ET(e,t={}){let n=[];for(let r of e)DT(t,n,r);return n}function DT(e,t,n){let{type:r,value:i}=n;switch(r){case X.Identifier:OT(t,e,i);break;case X.CodeableConcept:kT(t,e,i);break;case X.Coding:AT(t,e,i);break;case X.ContactPoint:jT(t,e,i);break;default:MT(t,e,void 0,i?.toString())}}function OT(e,t,n){n?.type?.text&&MT(e,t,t.textSearchSystem,n.type.text),MT(e,t,n?.system,n?.value)}function kT(e,t,n){n?.text&&MT(e,t,t.textSearchSystem,n.text);for(let r of n?.coding??UC)AT(e,t,r)}function AT(e,t,n){n&&(n.display&&MT(e,t,t.textSearchSystem,n.display),MT(e,t,n.system,n.code))}function jT(e,t,n){n&&MT(e,t,n.system,n.value?.toLocaleLowerCase())}function MT(e,t,n,r){(n||r)&&!e.some(e=>e.system===n&&e.value===r)&&e.push({system:n,value:r&&t.caseInsensitive?r.toLocaleLowerCase():r})}var Z={EQUALS:`eq`,NOT_EQUALS:`ne`,GREATER_THAN:`gt`,LESS_THAN:`lt`,GREATER_THAN_OR_EQUALS:`ge`,LESS_THAN_OR_EQUALS:`le`,STARTS_AFTER:`sa`,ENDS_BEFORE:`eb`,APPROXIMATELY:`ap`,CONTAINS:`contains`,STARTS_WITH:`sw`,EXACT:`exact`,TEXT:`text`,NOT:`not`,ABOVE:`above`,BELOW:`below`,IN:`in`,NOT_IN:`not-in`,OF_TYPE:`of-type`,MISSING:`missing`,PRESENT:`present`,IDENTIFIER:`identifier`,ITERATE:`iterate`},NT={contains:Z.CONTAINS,exact:Z.EXACT,above:Z.ABOVE,below:Z.BELOW,text:Z.TEXT,not:Z.NOT,in:Z.IN,"not-in":Z.NOT_IN,"of-type":Z.OF_TYPE,missing:Z.MISSING,identifier:Z.IDENTIFIER,iterate:Z.ITERATE},PT={eq:Z.EQUALS,ne:Z.NOT_EQUALS,lt:Z.LESS_THAN,le:Z.LESS_THAN_OR_EQUALS,gt:Z.GREATER_THAN,ge:Z.GREATER_THAN_OR_EQUALS,sa:Z.STARTS_AFTER,eb:Z.ENDS_BEFORE,ap:Z.APPROXIMATELY,sw:Z.STARTS_WITH};function FT(e,t){if(!e)throw Error(`Invalid search URL`);let n=``,r;if(typeof e==`string`)if(e.includes(`?`)){let[t,i]=e.split(`?`);n=t,r=new URLSearchParams(i)}else n=e;else typeof e==`object`&&(n=e.pathname,r=e.searchParams);let i;i=n.includes(`/`)?n.split(`/`).filter(Boolean).pop():n;let a=[];if(r&&a.push(...r.entries()),t)for(let[e,n]of Object.entries(t))if(Array.isArray(n))for(let t of n)a.push([e,t]);else a.push([e,n??``]);return IT(i,a)}function IT(e,t){let n={resourceType:e};for(let[e,r]of t)LT(n,e,r);return n}function LT(e,t,n){let r,i,a=t.indexOf(`:`);if(a>=0?(r=t.substring(0,a),i=t.substring(a+1)):(r=t,i=``),r!==`_`){if(r===`_has`||t.includes(`.`)){e.filters=PC(e.filters,{code:t,operator:Z.EQUALS,value:n});return}switch(r){case`_sort`:RT(e,n);break;case`_cursor`:e.cursor=n;break;case`_count`:e.count=Number.parseInt(n,10);break;case`_offset`:e.offset=Number.parseInt(n,10);break;case`_total`:e.total=n;break;case`_summary`:n===`count`?(e.total=`accurate`,e.count=0):(n===`true`||n===`data`||n===`text`)&&(e.summary=n);break;case`_include`:{let t=WT(n);i===`iterate`&&(t.modifier=Z.ITERATE),e.include=PC(e.include,t);break}case`_revinclude`:{let t=WT(n);i===`iterate`&&(t.modifier=Z.ITERATE),e.revInclude=PC(e.revInclude,t);break}case`_fields`:case`_elements`:e.fields=n.split(`,`);break;case`_type`:e.types=n.split(`,`);break;case`_format`:e.format=n;break;case`_pretty`:e.pretty=n===`true`;break;default:{let t=Ow.types[e.resourceType]?.searchParams?.[r];t?e.filters=PC(e.filters,BT(t,i,n)):e.filters=PC(e.filters,VT(r,i,n))}}}}function RT(e,t){for(let n of t.split(`,`)){let t,r=!1;n.startsWith(`-`)?(t=n.substring(1),r=!0):t=n,e.sortRules||=[],e.sortRules.push({code:t,descending:r})}}var zT=[Z.MISSING,Z.PRESENT];function BT(e,t,n){if(zT.includes(t))return{code:e.code,operator:t,value:n};switch(e.type){case`number`:case`date`:case`quantity`:{let{operator:r,value:i}=HT(n,t||Z.EQUALS);if(!GT(e,i))throw new Fx(Ox(`Invalid format for ${e.type} search parameter: ${i}`));return{code:e.code,operator:r,value:i}}case`reference`:case`string`:case`token`:case`uri`:if(!GT(e,n))throw new Fx(Ox(`Invalid format for ${e.type} search parameter: ${n}`));return{code:e.code,operator:UT(t),value:n};default:throw Error(`Unrecognized search parameter type: `+e.type)}}function VT(e,t,n){let r=Z.EQUALS;if(t)r=t;else if(n.length>=2){let e=n.substring(0,2);e in PT&&(n.length===2||n.at(2)?.match(/\d/))&&(r=e,n=n.substring(e.length))}return{code:e,operator:r,value:n}}function HT(e,t){let n=PT[e.substring(0,2)];return n?{operator:n,value:e.substring(2)}:{operator:t,value:e}}function UT(e){return NT[e]??Z.EQUALS}function WT(e){let t=e.split(`:`);if(t.includes(`*`))throw new Fx(Ox(`'*' is not supported as a value for search inclusion parameters`));if(t.length===1)throw new Fx(Ox(`Invalid include value '${e}': must be of the form ResourceType:search-parameter`));if(t.length===2)return{resourceType:t[0],searchParam:t[1]};if(t.length===3)return{resourceType:t[0],searchParam:t[1],targetType:t[2]};throw new Fx(Ox(`Invalid include value '${e}'`))}function GT(e,t){switch(e.type){case`date`:return NS(t);default:return!0}}function KT(e){let t=[];e.fields&&t.push(`_fields=`+e.fields.join(`,`));for(let n of e.filters??UC)t.push(qT(n));e.sortRules&&e.sortRules.length>0&&t.push(JT(e.sortRules)),e.cursor!==void 0&&t.push(`_cursor=`+encodeURIComponent(e.cursor)),e.offset!==void 0&&e.offset!==0&&t.push(`_offset=`+e.offset),e.count!==void 0&&t.push(`_count=`+e.count),e.total!==void 0&&t.push(`_total=`+e.total),e.types&&e.types.length>0&&t.push(`_type=`+e.types.join(`,`));for(let n of e.include??UC)t.push(YT(`_include`,n));for(let n of e.revInclude??UC)t.push(YT(`_revinclude`,n));return t.length===0?``:(FC(t),`?`+t.join(`&`))}function qT(e){let t=e.operator in NT?`:`+e.operator:``,n=e.operator!==Z.EQUALS&&e.operator in PT?e.operator:``;return`${e.code}${t}=${n}${encodeURIComponent(e.value)}`}function JT(e){return`_sort=`+e.map(e=>e.descending?`-`+e.code:e.code).join(`,`)}function YT(e,t){return e+(t.modifier?`:`+t.modifier:``)+`=`+t.resourceType+`:`+t.searchParam+(t.targetType?`:`+t.targetType:``)}function XT(e){let t=[],n=``,r=!1;for(let i of e)r?(n+=i,r=!1):i===`\\`?r=!0:i===`,`?(t.push(n),n=``):n+=i;return t.push(n),t}function ZT(e,t){if(t.resourceType!==e.resourceType)return!1;for(let n of t.filters??UC)if(!$T(e,t,n))return!1;return!0}var QT=new cx(1e3);function $T(e,t,n){let r=Ow.types[t.resourceType]?.searchParams?.[n.code];if(!r)return!1;let i=ST(r.expression,[gS(e)],void 0,QT);if(n.operator===Z.MISSING||n.operator===Z.PRESENT)return eE(i,n);switch(r.type){case`reference`:return tE(i,n);case`string`:case`uri`:return iE(i,n);case`token`:return nE(i,n);case`date`:return oE(i,n);default:return!1}}function eE(e,t){let n=e.length>0;return(t.operator===Z.MISSING&&t.value===`false`||t.operator===Z.PRESENT&&t.value===`true`)===n}function tE(e,t){let n=cE(t.operator);if(t.value===``&&e.length===0)return t.operator===Z.EQUALS;let r=TT(e);for(let e of XT(t.value)){let i=r.includes(e);if(!i&&t.code===`_compartment`&&(i=r.some(t=>t?.endsWith(`/`+e))),i)return!n}return n}function nE(e,t){let n=ET(e),r=XT(t.value),i=cE(t.operator);for(let e of n)for(let t of r)if(rE(e,t))return!i;return i}function rE(e,t){if(t.includes(`|`)){let[n,r]=t.split(`|`).map(e=>e.toLowerCase());return!n&&!r?!1:n?e.system?.toLowerCase()===n&&(!r||e.value?.toLowerCase()===r):!e.system&&e.value?.toLowerCase()===r}return e.value?.toLowerCase()===t.toLowerCase()}function iE(e,t){let n=wT(e),r=XT(t.value),i=cE(t.operator);for(let e of n)for(let t of r)if(aE(e,t))return!i;return i}function aE(e,t){return e.toLowerCase().includes(t.toLowerCase())}function oE(e,t){let n=CT(e),r=XT(t.value),i=cE(t.operator);for(let e of n)for(let n of r)if(sE(e,t.operator,n))return!i;return i}function sE(e,t,n){if(!e)return!1;let r=FS(n);if(!r)return!1;let i=e.start??`0000`,a=e.end??`9999`,o=r.start,s=r.end;switch(t){case Z.APPROXIMATELY:case Z.EQUALS:case Z.NOT_EQUALS:return i<s&&a>o;case Z.LESS_THAN:return i<o;case Z.GREATER_THAN:return a>s;case Z.LESS_THAN_OR_EQUALS:return i<=s;case Z.GREATER_THAN_OR_EQUALS:return a>=o;case Z.STARTS_AFTER:return i>s;case Z.ENDS_BEFORE:return a<o;default:return!1}}function cE(e){return e===Z.NOT_EQUALS||e===Z.NOT}var lE={resourceType:`*`},uE=[`DomainConfiguration`,`JsonWebKey`,`Login`],dE=[`Package`,`PackageRelease`,`PackageInstallation`,`Project`,`ProjectMembership`,`User`,`UserSecurityRequest`],fE={READ:`read`,VREAD:`vread`,UPDATE:`update`,DELETE:`delete`,HISTORY:`history`,CREATE:`create`,SEARCH:`search`},pE=[fE.READ,fE.VREAD,fE.HISTORY,fE.SEARCH];function mE(e,t){return uE.includes(t)?!1:hE(e,fE.UPDATE,t)}function hE(e,t,n){return!!e.resource?.some(e=>vE(e,n,t))}function gE(e,t,n){return n?n.resource?.find(n=>_E(e,t,n)):lE}function _E(e,t,n){let r=e.resourceType;return vE(n,r,t)?r===`Binary`?!0:!(n.compartment&&!e.meta?.compartment?.some(e=>e.reference===n.compartment?.reference)||n.criteria&&!ZT(e,FT(n.criteria))):!1}function vE(e,t,n){return e.resourceType!==t&&(e.resourceType!==`*`||dE.includes(t))?!1:e.interaction?e.interaction.includes(n):!e.readonly||pE.includes(n)}function yE(){return typeof window<`u`}function bE(){return typeof Buffer<`u`?Buffer:void 0}var xE={assign(e){yE()&&globalThis.location.assign(e)},reload(){yE()&&globalThis.location.reload()},getSearch(){return yE()?globalThis.location.search:``},getPathname(){return yE()?globalThis.location.pathname:``},getLocation(){return yE()?globalThis.location.toString():``},getOrigin(){return yE()?globalThis.location.protocol+`//`+globalThis.location.host+`/`:``}};function SE(e){if(yE()){let t=window.atob(e),n=Uint8Array.from(t,e=>e.codePointAt(0));return new window.TextDecoder().decode(n)}let t=bE();if(t)return t.from(e,`base64`).toString(`utf-8`);throw Error(`Unable to decode base64`)}function CE(e){if(yE()){let t=new window.TextEncoder().encode(e),n=String.fromCodePoint.apply(null,t);return window.btoa(n)}let t=bE();if(t)return t.from(e,`utf8`).toString(`base64`);throw Error(`Unable to encode base64`)}function wE(e){return e=e.padEnd(e.length+(4-e.length%4)%4,`=`),SE(e.replaceAll(`-`,`+`).replaceAll(`_`,`/`))}function TE(){let e=new Uint32Array(28);return crypto.getRandomValues(e),CC(e.buffer)}async function EE(e){return crypto.subtle.digest(`SHA-256`,new TextEncoder().encode(e))}function DE(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replaceAll(/[xy]/g,e=>{let t=Math.trunc(Math.random()*16);return(e===`x`?t:t&3|8).toString(16)})}function OE(e){let t={};e=hC(e);for(let n of e.entry??UC){let e=n.resource;if(!e)continue;e.meta!==void 0&&(delete e.meta.author,delete e.meta.compartment,delete e.meta.lastUpdated,delete e.meta.project,delete e.meta.versionId,Object.keys(e.meta).length===0&&delete e.meta);let r=e?.id;r&&(t[r]=DE(),n.fullUrl=`urn:uuid:`+t[r],delete n.resource?.id)}let n=e.entry,r=JSON.stringify({resourceType:`Bundle`,type:`transaction`,entry:n?.map(e=>({fullUrl:e.fullUrl,request:{method:`POST`,url:e.resource?.resourceType},resource:e.resource}))},(e,n)=>kE(e,n,t),2);return AE(JSON.parse(r))}function kE(e,t,n){if(e===`reference`&&typeof t==`string`){let e;if(t.includes(`/`)?e=t.split(`/`)[1]:t.startsWith(`urn:uuid:`)?e=t.slice(9):t.startsWith(`#`)&&(e=t.slice(1)),e){let t=n[e];if(t)return`urn:uuid:`+t}}return t}function AE(e){let{sorted:t,cycles:n}=ME(PE(e)),r={},i=[];for(let t of e.entry??UC)t.fullUrl?r[t.fullUrl]=t:i.push(t);let a=t.map(e=>r[e]);for(let e of n)for(let t of e){let e=r[t],n={...e,request:{...e.request,method:`PUT`}};a.push(n)}return a.push(...i),{...e,entry:a}}var jE={NotVisited:`NotVisited`,Visiting:`Visiting`,Visited:`Visited`};function ME(e){let t=[],n={},r=[];for(let t of Object.keys(e))n[t]=jE.NotVisited;function i(a,o){if(n[a]===jE.Visited)return!0;if(n[a]===jE.Visiting){let e=o.lastIndexOf(a);return e!==-1&&r.push(o.slice(e)),!0}n[a]=jE.Visiting,o.push(a);let s=!1;for(let t of e[a])i(t,o)||(s=!0);return n[a]=jE.Visited,o.pop(),t.unshift(a),!s}for(let t in e)n[t]===jE.NotVisited&&i(t,[]);return{sorted:t,cycles:r}}function NE(e,t){for(let n in e)if(e[n]&&typeof e[n]==`object`){let r=e[n];if(Dw(r)){let e=r.reference;e.startsWith(`urn:uuid:`)&&t(e)}else NE(r,t)}}function PE(e){let t={};for(let n of e.entry??UC)n.fullUrl&&(t[n.fullUrl]=[]);for(let n of e.entry??UC){let e=n.fullUrl;n.resource&&NE(n.resource,n=>{t[n]&&t[n].push(e)})}return t}var FE={CSS:`text/css`,DICOM:`application/dicom`,FAVICON:`image/vnd.microsoft.icon`,FHIR_JSON:`application/fhir+json`,FORM_URL_ENCODED:`application/x-www-form-urlencoded`,HL7_V2:`x-application/hl7-v2+er7`,HTML:`text/html`,JAVASCRIPT:`text/javascript`,JSON:`application/json`,JSON_PATCH:`application/json-patch+json`,JWT:`application/jwt`,MULTIPART_FORM_DATA:`multipart/form-data`,PNG:`image/png`,SCIM_JSON:`application/scim+json`,SVG:`image/svg+xml`,TEXT:`text/plain`,TYPESCRIPT:`text/typescript`,PING:`x-application/ping`,XML:`text/xml`,CDA_XML:`application/cda+xml`,OCTET_STREAM:`application/octet-stream`},IE=class{listeners;constructor(){this.listeners={}}addEventListener(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)}removeEventListener(e,t){let n=this.listeners[e];if(n){for(let e=0;e<n.length;e++)if(n[e]===t){n.splice(e,1);return}}}dispatchEvent(e){let t=this.listeners[e.type];for(let n of t??UC)n.call(this,e);return!e.defaultPrevented}removeAllListeners(){this.listeners={}}listenerCount(e){return this.listeners[e]?.length??0}},LE=class{emitter=new IE;dispatchEvent(e){this.emitter.dispatchEvent(e)}addEventListener(e,t){this.emitter.addEventListener(e,t)}removeEventListener(e,t){this.emitter.removeEventListener(e,t)}removeAllListeners(){this.emitter.removeAllListeners()}listenerCount(e){return this.emitter.listenerCount(e)}},RE={"Patient-open":`Patient-open`,"Patient-close":`Patient-close`,"ImagingStudy-open":`ImagingStudy-open`,"ImagingStudy-close":`ImagingStudy-close`,"Encounter-open":`Encounter-open`,"Encounter-close":`Encounter-close`,"DiagnosticReport-open":`DiagnosticReport-open`,"DiagnosticReport-close":`DiagnosticReport-close`,"DiagnosticReport-select":`DiagnosticReport-select`,"DiagnosticReport-update":`DiagnosticReport-update`,syncerror:`syncerror`},zE=[`Patient`,`Encounter`,`ImagingStudy`,`DiagnosticReport`,`OperationOutcome`,`Bundle`],BE=[`DiagnosticReport-update`];function VE(e){return BE.includes(e)}function HE(e){if(BE.includes(e))throw new Fx(kx(`'context.version' is required for '${e}'.`))}var UE={"Patient-open":{patient:{resourceType:`Patient`},encounter:{resourceType:`Encounter`,optional:!0}},"Patient-close":{patient:{resourceType:`Patient`},encounter:{resourceType:`Encounter`,optional:!0}},"ImagingStudy-open":{study:{resourceType:`ImagingStudy`},encounter:{resourceType:`Encounter`,optional:!0},patient:{resourceType:`Patient`,optional:!0}},"ImagingStudy-close":{study:{resourceType:`ImagingStudy`},encounter:{resourceType:`Encounter`,optional:!0},patient:{resourceType:`Patient`,optional:!0}},"Encounter-open":{encounter:{resourceType:`Encounter`},patient:{resourceType:`Patient`}},"Encounter-close":{encounter:{resourceType:`Encounter`},patient:{resourceType:`Patient`}},"DiagnosticReport-open":{report:{resourceType:`DiagnosticReport`},encounter:{resourceType:`Encounter`,optional:!0},study:{resourceType:`ImagingStudy`,optional:!0,manyAllowed:!0},patient:{resourceType:`Patient`}},"DiagnosticReport-close":{report:{resourceType:`DiagnosticReport`},encounter:{resourceType:`Encounter`,optional:!0},study:{resourceType:`ImagingStudy`,optional:!0,manyAllowed:!0},patient:{resourceType:`Patient`}},"DiagnosticReport-select":{report:{resourceType:`DiagnosticReport`,reference:!0},patient:{resourceType:`Patient`,optional:!0,reference:!0},select:{resourceType:`*`,reference:!0,manyAllowed:!0}},"DiagnosticReport-update":{report:{resourceType:`DiagnosticReport`,reference:!0},patient:{resourceType:`Patient`,optional:!0,reference:!0},updates:{resourceType:`Bundle`}},syncerror:{operationoutcome:{resourceType:`OperationOutcome`}}};function WE(e){return zE.includes(e)}function GE(e){return!!e.endpoint}function KE(e){if(!qE(e))throw new Fx(kx(`subscriptionRequest must be an object conforming to SubscriptionRequest type.`));let{channelType:t,mode:n,topic:r,events:i}=e,a={"hub.channel.type":t,"hub.mode":n,"hub.topic":r,"hub.events":i.join(`,`)};return GE(e)&&(a.endpoint=e.endpoint),new URLSearchParams(a).toString()}function qE(e){if(typeof e!=`object`)return!1;let{channelType:t,mode:n,topic:r,events:i}=e;if(!(t&&n&&r&&i)||typeof r!=`string`||typeof i!=`object`||!Array.isArray(i)||i.length<1||t!==`websocket`||n!==`subscribe`&&n!==`unsubscribe`)return!1;for(let e of i)if(!RE[e])return!1;return!(GE(e)&&!(typeof e.endpoint==`string`&&e.endpoint.startsWith(`ws`)))}function JE(e,t,n,r){if(typeof t!=`object`)throw new Fx(kx(`context[${n}] is invalid. Context must contain a single valid FHIR resource! Resource is not an object.`));if(!(t.id&&typeof t.id==`string`))throw new Fx(kx(`context[${n}] is invalid. Resource must contain a valid string ID.`));if(!t.resourceType)throw new Fx(kx(`context[${n}] is invalid. Resource must contain a resource type. No resource type found.`));let i=r.resourceType;if(i!==`*`){if(!WE(t.resourceType))throw new Fx(kx(`context[${n}] is invalid. Resource must contain a valid FHIRcast resource type. Resource type is not a known resource type.`));if(i&&t.resourceType!==i)throw new Fx(kx(`context[${n}] is invalid. context[${n}] for the '${e}' event should contain resource of type ${i}.`))}}function YE(e,t,n,r,i){if(i.set(t.key,(i.get(t.key)??0)+1),r.reference){if(!Dw(t.reference))throw new Fx(kx(`context[${n}] is invalid. Expected key '${t.key}' to be a reference.`))}else JE(e,t.resource,n,r)}function XE(e,t){let n=new Map,r=UE[e];for(let i=0;i<t.length;i++){let a=t[i].key;if(!r[a])throw new Fx(kx(`Key '${a}' not found for event '${e}'. Make sure to add only valid keys.`));YE(e,t[i],i,r[a],n)}for(let[t,i]of Object.entries(r)){if(!(i.optional||n.has(t)))throw new Fx(kx(`Missing required key '${t}' on context for '${e}' event.`));if(!i.manyAllowed&&(n.get(t)??0)>1)throw new Fx(kx(`${n.get(t)} context entries with key '${t}' found for the '${e}' event when schema only allows for 1.`))}}function ZE(e,t,n,r){if(!(e&&typeof e==`string`))throw new Fx(kx(`Must provide a topic.`));if(!RE[t])throw new Fx(kx(`Must provide a valid FHIRcast event name. Supported events: ${Object.keys(RE).join(`, `)}`));if(typeof n!=`object`)throw new Fx(kx(`context must be a context object or array of context objects.`));if(BE.includes(t)&&!r)throw new Fx(kx(`The '${t}' event must contain a 'context.versionId'.`));let i=Array.isArray(n)?n:[n];return XE(t,i),{timestamp:new Date().toISOString(),id:DE(),event:{"hub.topic":e,"hub.event":t,context:i,...r?{"context.versionId":r}:{}}}}var QE=class extends LE{subRequest;websocket;constructor(e){if(super(),this.subRequest=e,!e.endpoint)throw new Fx(kx(`Subscription request should contain an endpoint.`));if(!qE(e))throw new Fx(kx(`Subscription request failed validation.`));let t=new WebSocket(e.endpoint);t.addEventListener(`open`,()=>{this.dispatchEvent({type:`connect`}),t.addEventListener(`message`,e=>{let n=JSON.parse(e.data);if(n[`hub.topic`])return;let r=n;r.event[`hub.event`]!==`heartbeat`&&(this.dispatchEvent({type:`message`,payload:r}),t.send(JSON.stringify({id:n?.id,timestamp:new Date().toISOString()})))}),t.addEventListener(`close`,()=>{this.dispatchEvent({type:`disconnect`})})}),this.websocket=t}disconnect(){this.websocket.close()}};function $E(e){return JSON.parse(wE(e))}function eD(e){return e.split(`.`).length===3}function tD(e){let[t,n,r]=e.split(`.`);return $E(n)}function nD(e){try{return typeof tD(e).login_id==`string`}catch{return!1}}function rD(e){try{let t=tD(e).exp;return typeof t==`number`?t*1e3:void 0}catch{return}}var iD=class{medplum;constructor(e){this.medplum=e}async get(e){return this.medplum.get(`keyvalue/v1/${e}`)}async set(e,t){await this.medplum.put(`keyvalue/v1/${e}`,t,FE.TEXT)}async delete(e){await this.medplum.delete(`keyvalue/v1/${e}`)}},aD=class{[Symbol.toStringTag]=`ReadablePromise`;suspender;status=`pending`;response;error;constructor(e){this.suspender=e.then(e=>(this.status=`success`,this.response=e,e),e=>{throw this.status=`error`,this.error=e,e})}isPending(){return this.status===`pending`}isOk(){return this.status===`success`}read(){switch(this.status){case`pending`:throw this.suspender;case`error`:throw this.error;default:return this.response}}then(e,t){return this.suspender.then(e,t)}catch(e){return this.suspender.catch(e)}finally(e){return this.suspender.finally(e)}},oD=class{storage;prefix=``;constructor(e,t=``){this.storage=e??globalThis.localStorage??new sD,this.prefix=t}makeKey(e){return this.prefix+e}clear(){this.storage===globalThis.localStorage&&this.prefix?Object.keys(this.storage).filter(e=>e.startsWith(this.prefix)).forEach(e=>{this.storage.removeItem(e)}):this.storage.clear()}getString(e){return this.storage.getItem(this.makeKey(e))??void 0}setString(e,t){t?this.storage.setItem(this.makeKey(e),t):this.storage.removeItem(this.makeKey(e))}getObject(e){let t=this.getString(e);return t?JSON.parse(t):void 0}setObject(e,t){this.setString(e,t?nC(t):void 0)}},sD=class{data;constructor(){this.data=new Map}get length(){return this.data.size}clear(){this.data.clear()}getItem(e){return this.data.get(e)??null}setItem(e,t){t?this.data.set(e,t):this.data.delete(e)}removeItem(e){this.data.delete(e)}key(e){return Array.from(this.data.keys())[e]}},cD={Event:globalThis.Event===void 0?void 0:globalThis.Event,ErrorEvent:void 0,CloseEvent:void 0},lD=!1;function uD(){if(globalThis.Event===void 0)throw Error(`Unable to lazy init events for ReconnectingWebSocket. globalThis.Event is not defined yet`);cD.Event=globalThis.Event,cD.ErrorEvent=class extends Event{message;error;constructor(e,t){super(`error`,t),this.message=e.message,this.error=e}},cD.CloseEvent=class extends Event{code;reason;wasClean=!0;constructor(e=1e3,t=``,n){super(`close`,n),this.code=e,this.reason=t}}}function dD(e,t){if(!e)throw Error(t)}function fD(e){return new e.constructor(e.type,e)}var pD={maxReconnectionDelay:1e4,minReconnectionDelay:1e3+Math.random()*4e3,minUptime:5e3,reconnectionDelayGrowFactor:1.3,connectionTimeout:4e3,maxRetries:1/0,maxEnqueuedMessages:1/0,startClosed:!1,debug:!1},mD=!1,hD=class e extends LE{_ws;_retryCount=-1;_uptimeTimeout;_connectTimeout;_shouldReconnect=!0;_connectLock=!1;_binaryType;_closeCalled=!1;_messageQueue=[];_debugLogger=console.log.bind(console);_url;_protocols;_options;constructor(e,t,n={}){lD||=(uD(),!0),super(),this._url=e,this._protocols=t,this._options=n,this._options.startClosed&&(this._shouldReconnect=!1),this._options.binaryType?this._binaryType=this._options.binaryType:this._binaryType=`blob`,this._options.debugLogger&&(this._debugLogger=this._options.debugLogger),this._connect()}static get CONNECTING(){return 0}static get OPEN(){return 1}static get CLOSING(){return 2}static get CLOSED(){return 3}get CONNECTING(){return e.CONNECTING}get OPEN(){return e.OPEN}get CLOSING(){return e.CLOSING}get CLOSED(){return e.CLOSED}get binaryType(){return this._ws?this._ws.binaryType:this._binaryType}set binaryType(e){this._binaryType=e,this._ws&&(this._ws.binaryType=e)}get retryCount(){return Math.max(this._retryCount,0)}get bufferedAmount(){return this._messageQueue.reduce((e,t)=>(typeof t==`string`?e+=t.length:t instanceof Blob?e+=t.size:e+=t.byteLength,e),0)+(this._ws?.bufferedAmount??0)}get extensions(){return this._ws?.extensions??``}get protocol(){return this._ws?.protocol??``}get readyState(){return this._ws?this._ws.readyState:this._options.startClosed?e.CLOSED:e.CONNECTING}get url(){return this._ws?this._ws.url:``}get shouldReconnect(){return this._shouldReconnect}onclose=null;onerror=null;onmessage=null;onopen=null;close(e=1e3,t){if(this._closeCalled=!0,this._shouldReconnect=!1,this._clearTimeouts(),!this._ws){this._debug(`close enqueued: no ws instance`);return}if(this._ws.readyState===this.CLOSED){this._debug(`close: already closed`);return}this._ws.close(e,t)}reconnect(e,t){this._shouldReconnect=!0,this._closeCalled=!1,this._retryCount=-1,!this._ws||this._ws.readyState===this.CLOSED||this._disconnect(e,t),this._connect()}send(e){if(this._ws?.readyState===this.OPEN)this._debug(`send`,e),this._ws.send(e);else{let{maxEnqueuedMessages:t=pD.maxEnqueuedMessages}=this._options;this._messageQueue.length<t&&(this._debug(`enqueue`,e),this._messageQueue.push(e))}}_debug(...e){this._options.debug&&this._debugLogger(`RWS>`,...e)}_getNextDelay(){let{reconnectionDelayGrowFactor:e=pD.reconnectionDelayGrowFactor,minReconnectionDelay:t=pD.minReconnectionDelay,maxReconnectionDelay:n=pD.maxReconnectionDelay}=this._options,r=0;return this._retryCount>0&&(r=t*e**(this._retryCount-1),r>n&&(r=n)),this._debug(`next delay`,r),r}_wait(){return new Promise(e=>{setTimeout(e,this._getNextDelay())})}_connect(){if(this._connectLock||!this._shouldReconnect)return;this._connectLock=!0;let{maxRetries:e=pD.maxRetries,connectionTimeout:t=pD.connectionTimeout}=this._options;if(this._retryCount>=e){this._debug(`max retries reached`,this._retryCount,`>=`,e);return}this._retryCount++,this._debug(`connect`,this._retryCount),this._removeListeners(),this._wait().then(()=>{if(this._closeCalled){this._connectLock=!1;return}!this._options.WebSocket&&typeof WebSocket>`u`&&!mD&&(console.error(`‼️ No WebSocket implementation available. You should define options.WebSocket.`),mD=!0);let e=this._options.WebSocket||WebSocket;this._debug(`connect`,{url:this._url,protocols:this._protocols}),this._ws=this._protocols?new e(this._url,this._protocols):new e(this._url),this._ws.binaryType=this._binaryType,this._connectLock=!1,this._addListeners(),this._connectTimeout=setTimeout(()=>this._handleTimeout(),t)}).catch(e=>{this._connectLock=!1,this._handleError(new cD.ErrorEvent(Error(e.message),this))})}_handleTimeout(){this._debug(`timeout event`),this._handleError(new cD.ErrorEvent(Error(`TIMEOUT`),this))}_disconnect(e=1e3,t){if(this._clearTimeouts(),this._ws){this._removeListeners();try{this._ws.close(e,t),this._handleClose(new cD.CloseEvent(e,t,this))}catch{}}}_acceptOpen(){this._debug(`accept open`),this._retryCount=0}_handleOpen=e=>{this._debug(`open event`);let{minUptime:t=pD.minUptime}=this._options;clearTimeout(this._connectTimeout),this._uptimeTimeout=setTimeout(()=>this._acceptOpen(),t),dD(this._ws,`WebSocket is not defined`),this._ws.binaryType=this._binaryType,this._messageQueue.forEach(e=>this._ws?.send(e)),this._messageQueue=[],this.onopen&&this.onopen(e),this.dispatchEvent(fD(e))};_handleMessage=e=>{this._debug(`message event`),this.onmessage&&this.onmessage(e),this.dispatchEvent(fD(e))};_handleError=e=>{this._debug(`error event`,e.message),this._disconnect(void 0,e.message===`TIMEOUT`?`timeout`:void 0),this.onerror&&this.onerror(e),this._debug(`exec error listeners`),this.dispatchEvent(fD(e)),this._connect()};_handleClose=e=>{this._debug(`close event`),this._clearTimeouts(),this._shouldReconnect&&this._connect(),this.onclose&&this.onclose(e),this.dispatchEvent(fD(e))};_removeListeners(){this._ws&&(this._debug(`removeListeners`),this._ws.removeEventListener(`open`,this._handleOpen),this._ws.removeEventListener(`close`,this._handleClose),this._ws.removeEventListener(`message`,this._handleMessage),this._ws.removeEventListener(`error`,this._handleError))}_addListeners(){this._ws&&(this._debug(`addListeners`),this._ws.addEventListener(`open`,this._handleOpen),this._ws.addEventListener(`close`,this._handleClose),this._ws.addEventListener(`message`,this._handleMessage),this._ws.addEventListener(`error`,this._handleError))}_clearTimeouts(){clearTimeout(this._connectTimeout),clearTimeout(this._uptimeTimeout)}},gD=6e4,_D=[WebSocket.CLOSING,WebSocket.CLOSED],vD=class extends LE{criteria;constructor(...e){super(),this.criteria=new Set(e)}getCriteria(){return this.criteria}_addCriteria(e){this.criteria.add(e)}_removeCriteria(e){this.criteria.delete(e)}},yD=class{criteria;emitter;refCount;subscriptionProps;subscriptionId;token;tokenExpiry;state=`idle`;generation=0;lastUnrefTime;constructor(e,t){this.criteria=e,this.emitter=new vD(e),this.refCount=1,this.subscriptionProps=t?{...t}:void 0}nextGeneration(){return++this.generation}},bD=class{medplum;ws;masterSubEmitter;criteriaEntries;criteriaEntriesBySubscriptionId;wsClosed;pingTimer=void 0;tokenRefreshTimer=void 0;pingIntervalMs;waitingForPong=!1;currentProfile;constructor(e,t,n){if(!(e instanceof PD))throw new Fx(kx("First arg of constructor should be a `MedplumClient`"));let r;try{r=new URL(t).toString()}catch{throw new Fx(kx(`Not a valid URL`))}let i=n?.ReconnectingWebSocket?new n.ReconnectingWebSocket(r,void 0,{debug:n?.debug,debugLogger:n?.debugLogger}):new hD(r,void 0,{debug:n?.debug,debugLogger:n?.debugLogger});this.medplum=e,this.ws=i,this.masterSubEmitter=new vD,this.criteriaEntries=new Map,this.criteriaEntriesBySubscriptionId=new Map,this.wsClosed=!1,this.pingIntervalMs=n?.pingIntervalMs??5e3,this.currentProfile=e.getProfile(),this.setupListeners()}setupListeners(){let e=this.ws;e.addEventListener(`message`,e=>{try{let t=JSON.parse(e.data);if(t.type===`pong`){this.waitingForPong=!1;return}let n=t,r=n?.entry?.[0]?.resource;if(r.type===`heartbeat`){this.masterSubEmitter?.dispatchEvent({type:`heartbeat`,payload:n});return}if(r.type===`handshake`){let e=KS(r.subscription),t={type:`connect`,payload:{subscriptionId:e}};this.masterSubEmitter?.dispatchEvent(t);let n=this.criteriaEntriesBySubscriptionId.get(e);if(!n){console.warn(`Received handshake for criteria the SubscriptionManager is not listening for yet`);return}(n.state===`connecting`||n.state===`refreshing`)&&(n.state=`active`),n.emitter.dispatchEvent({...t});return}this.masterSubEmitter?.dispatchEvent({type:`message`,payload:n});let i=this.criteriaEntriesBySubscriptionId.get(KS(r.subscription));if(!i){console.warn(`Received notification for criteria the SubscriptionManager is not listening for`);return}i.emitter.dispatchEvent({type:`message`,payload:n})}catch(e){console.error(e);let t={type:`error`,payload:e};this.masterSubEmitter?.dispatchEvent(t);for(let e of this.getAllCriteriaEmitters())e.dispatchEvent({...t})}}),e.addEventListener(`error`,()=>{let e={type:`error`,payload:new Fx(Ax(Error(`WebSocket error`)))};this.masterSubEmitter?.dispatchEvent(e);for(let t of this.getAllCriteriaEmitters())t.dispatchEvent({...e})}),e.addEventListener(`close`,()=>{let e={type:`close`};this.masterSubEmitter?.dispatchEvent(e);for(let t of this.getAllCriteriaEmitters())t.dispatchEvent({...e});this.pingTimer&&(clearInterval(this.pingTimer),this.pingTimer=void 0,this.waitingForPong=!1),this.tokenRefreshTimer&&=(clearInterval(this.tokenRefreshTimer),void 0),this.wsClosed&&(this.criteriaEntries.clear(),this.criteriaEntriesBySubscriptionId.clear(),this.masterSubEmitter?.removeAllListeners())}),e.addEventListener(`open`,()=>{let t={type:`open`};this.masterSubEmitter?.dispatchEvent(t);for(let e of this.getAllCriteriaEmitters())e.dispatchEvent({...t});this.refreshAllSubscriptions().catch(console.error),this.pingTimer??=setInterval(()=>{this.waitingForPong?(this.waitingForPong=!1,e.reconnect()):(e.send(JSON.stringify({type:`ping`})),this.waitingForPong=!0),this.gcUnrefEntries()},this.pingIntervalMs),this.tokenRefreshTimer??=setInterval(()=>{this.checkTokenExpirations(),this.gcUnrefEntries()},gD)}),this.medplum.addEventListener(`change`,()=>{let e=this.medplum.getProfile();this.currentProfile&&e===void 0?this.ws.close():e&&this.currentProfile?.id!==e.id&&this.ws.reconnect(),this.currentProfile=e})}sendBind(e){this.ws.send(JSON.stringify({type:`bind-with-token`,payload:{token:e}}))}sendUnbind(e){this.ws.readyState===WebSocket.OPEN&&this.ws.send(JSON.stringify({type:`unbind-from-token`,payload:{token:e}}))}emitError(e,t){let n={type:`error`,payload:t};this.masterSubEmitter?.dispatchEvent(n),e.emitter.dispatchEvent({...n})}maybeEmitDisconnect(e){let{subscriptionId:t}=e;if(t){let n={type:`disconnect`,payload:{subscriptionId:t}};this.masterSubEmitter?.dispatchEvent(n),e.emitter.dispatchEvent({...n})}else console.warn("Called disconnect for `CriteriaEntry` before `subscriptionId` was present.")}isStale(e,t){return this.isEntryGettingRemoved(e)||e.generation!==t}maybeGetCriteriaEntry(e,t){let n=this.criteriaEntries.get(e);if(n){if(!t)return n.bareCriteria;for(let e of n.criteriaWithProps)if(lC(t,e.subscriptionProps))return e}}getAllCriteriaEmitters(){let e=[];for(let t of this.criteriaEntries.values())for(let n of xD(t))n.refCount>0&&e.push(n.emitter);return e}addCriteriaEntry(e){let{criteria:t,subscriptionProps:n}=e,r;this.criteriaEntries.has(t)?r=this.criteriaEntries.get(t):(r={criteriaWithProps:[]},this.criteriaEntries.set(t,r)),n?r.criteriaWithProps.push(e):r.bareCriteria=e}removeCriteriaEntry(e){e.state=`removed`,e.generation++;let{criteria:t,subscriptionProps:n,subscriptionId:r,token:i}=e;if(!this.criteriaEntries.has(t))return;let a=this.criteriaEntries.get(t);n?a.criteriaWithProps=a.criteriaWithProps.filter(e=>{let t=e.subscriptionProps;return!lC(n,t)}):a.bareCriteria=void 0,!a.bareCriteria&&a.criteriaWithProps.length===0&&(this.criteriaEntries.delete(t),this.masterSubEmitter?._removeCriteria(t)),r&&this.criteriaEntriesBySubscriptionId.delete(r),i&&this.sendUnbind(i)}async subscribeToCriteria(e){this.wsClosed&&await this.reconnectIfNeeded(),this.ws.readyState===WebSocket.OPEN&&e.state===`idle`&&(e.state=`connecting`,await this.rebindCriteriaEntry(e))}async refreshAllSubscriptions(){this.criteriaEntriesBySubscriptionId.clear();let e=[],t=[];for(let n of this.criteriaEntries.values())for(let r of xD(n))r.refCount===0?t.push(r):e.push(r);for(let e of t)this.removeCriteriaEntry(e);for(let t of e)t.token&&this.sendUnbind(t.token),t.token=void 0,t.tokenExpiry=void 0,t.state=`idle`,t.generation++,await this.subscribeToCriteria(t)}async rebindCriteriaEntry(e){let t=e.nextGeneration();try{if(!e.subscriptionId){let n=await this.medplum.createResource({...e.subscriptionProps,resourceType:`Subscription`,status:`active`,reason:`WebSocket subscription for ${GS(this.medplum.getProfile())}`,channel:{type:`websocket`},criteria:e.criteria});if(e.subscriptionId??=n.id,this.isStale(e,t))return}let{parameter:n}=await this.medplum.get(`fhir/R4/Subscription/${e.subscriptionId}/$get-ws-binding-token`,{cache:`no-cache`}),r=n?.find(e=>e.name===`token`)?.valueString,i=n?.find(e=>e.name===`websocket-url`)?.valueUrl,a=n?.find(e=>e.name===`expiration`)?.valueDateTime;if(!r)throw new Fx(kx(`Failed to get token`));if(!i)throw new Fx(kx(`Failed to get URL from $get-ws-binding-token`));if(!a)throw new Fx(kx(`Failed to get expiration from $get-ws-binding-token`));if(this.isStale(e,t))return;e.token=r,e.tokenExpiry=new Date(a).getTime(),this.criteriaEntriesBySubscriptionId.set(e.subscriptionId,e),this.sendBind(r)}catch(n){console.error(Lx(n)),e.generation===t&&!this.isEntryGettingRemoved(e)&&(e.state=e.state===`refreshing`?`active`:`idle`),this.emitError(e,n)}}checkTokenExpirations(){let e=Date.now();for(let t of this.criteriaEntries.values())for(let n of xD(t))n.refCount===0||!n.tokenExpiry||n.tokenExpiry-e<=3e5&&n.state===`active`&&this.ws.readyState===WebSocket.OPEN&&(n.state=`refreshing`,this.rebindCriteriaEntry(n).catch(e=>{this.masterSubEmitter?.dispatchEvent({type:`error`,payload:e})}))}addCriteria(e,t){this.masterSubEmitter&&this.masterSubEmitter._addCriteria(e);let n=this.maybeGetCriteriaEntry(e,t);if(n)return n.refCount===0&&(n.lastUnrefTime=void 0,n.generation++,n.state!==`active`&&(n.state=n.token?`active`:`idle`)),n.refCount+=1,n.state===`idle`&&this.subscribeToCriteria(n).catch(console.error),n.emitter;let r=new yD(e,t);return this.addCriteriaEntry(r),this.subscribeToCriteria(r).catch(console.error),r.emitter}removeCriteria(e,t){let n=this.maybeGetCriteriaEntry(e,t);if(!n||this.isEntryGettingRemoved(n)){console.warn("Criteria not known to `SubscriptionManager`. Possibly called remove too many times.");return}--n.refCount,n.refCount===0&&(n.lastUnrefTime=Date.now(),n.generation++)}gcUnrefEntries(){let e=Date.now(),t=[];for(let n of this.criteriaEntries.values())for(let r of xD(n))r.refCount===0&&r.lastUnrefTime!==void 0&&e-r.lastUnrefTime>=1e4&&t.push(r);for(let e of t)this.maybeEmitDisconnect(e),this.removeCriteriaEntry(e);t.length>0&&this.criteriaEntries.size===0&&this.closeWebSocket()}isEntryGettingRemoved(e){return e.refCount===0||e.state===`removed`}getWebSocket(){return this.ws}closeWebSocket(){if(!this.wsClosed){if(this.ws.readyState===WebSocket.OPEN)for(let e of this.criteriaEntries.values())for(let t of xD(e))t.token&&this.sendUnbind(t.token);this.wsClosed=!0,this.ws.close()}}reconnectWebSocket(){this.ws.reconnect(),this.wsClosed=!1}getCriteriaCount(){return this.getAllCriteriaEmitters().length}getMasterEmitter(){return this.masterSubEmitter||=new vD(...Array.from(this.criteriaEntries.keys())),this.masterSubEmitter}async reconnectIfNeeded(){_D.includes(this.getWebSocket().readyState)&&await new Promise(e=>{let t=()=>{this.getWebSocket().removeEventListener(`open`,t),e()};this.getWebSocket().addEventListener(`open`,t),this.reconnectWebSocket()})}};function xD(e){return e.bareCriteria?[e.bareCriteria,...e.criteriaWithProps]:e.criteriaWithProps}new cx(1e3);var SD=`5.1.6-c7393ab`,CD=FE.FHIR_JSON+`, */*; q=0.1`,wD=`https://api.medplum.com/`,TD=1e3,ED=6e4,DD=0,OD=3e5,kD=`Binary/`,AD={resourceType:`Device`,id:`system`,deviceName:[{type:`model-name`,name:`System`}]},jD={ClientCredentials:`client_credentials`,AuthorizationCode:`authorization_code`,RefreshToken:`refresh_token`,JwtBearer:`urn:ietf:params:oauth:grant-type:jwt-bearer`,TokenExchange:`urn:ietf:params:oauth:grant-type:token-exchange`},MD={AccessToken:`urn:ietf:params:oauth:token-type:access_token`,RefreshToken:`urn:ietf:params:oauth:token-type:refresh_token`,IdToken:`urn:ietf:params:oauth:token-type:id_token`,Saml1Token:`urn:ietf:params:oauth:token-type:saml1`,Saml2Token:`urn:ietf:params:oauth:token-type:saml2`},ND={JwtBearer:`urn:ietf:params:oauth:client-assertion-type:jwt-bearer`},PD=class extends LE{options;fetch;createPdfImpl;storage;requestCache;cacheTime;baseUrl;fhirBaseUrl;authorizeUrl;tokenUrl;logoutUrl;fhircastHubUrl;cdsServicesUrl;defaultHeaders;onUnauthenticated;autoBatchTime;autoBatchQueue;maxRetries;maxRetryTime;refreshGracePeriod;subscriptionManager;medplumServer;clientId;clientSecret;credentialsInHeader;autoBatchTimerId;accessToken;accessTokenExpires;refreshToken;refreshPromise;profilePromise;sessionDetails;currentRateLimits;basicAuth;initPromise;initComplete=!0;keyValueClient;logLevel;constructor(e){if(super(),e?.baseUrl&&!e.baseUrl.startsWith(`http`))throw Error(`Base URL must start with http or https`);this.options=e??{},this.fetch=e?.fetch??FD(),this.storage=e?.storage??new oD(void 0,e?.storagePrefix),this.createPdfImpl=e?.createPdf,this.baseUrl=IC(e?.baseUrl??wD),this.fhirBaseUrl=RC(this.baseUrl,e?.fhirUrlPath??`fhir/R4`),this.authorizeUrl=RC(this.baseUrl,e?.authorizeUrl??`oauth2/authorize`),this.tokenUrl=RC(this.baseUrl,e?.tokenUrl??`oauth2/token`),this.logoutUrl=RC(this.baseUrl,e?.logoutUrl??`oauth2/logout`),this.fhircastHubUrl=RC(this.baseUrl,e?.fhircastHubUrl??`fhircast/STU3`),this.cdsServicesUrl=RC(this.baseUrl,e?.cdsServicesUrl??`cds-services`),this.clientId=e?.clientId??``,this.clientSecret=e?.clientSecret??``,this.credentialsInHeader=e?.authCredentialsMethod===`header`,this.defaultHeaders=e?.defaultHeaders??{},this.onUnauthenticated=e?.onUnauthenticated,this.refreshGracePeriod=e?.refreshGracePeriod??OD,this.logLevel=this.initializeLogLevel(e),this.maxRetries=e?.maxRetries??2,this.maxRetryTime=e?.maxRetryTime??2e3,this.cacheTime=e?.cacheTime??(yE()?ED:DD),this.cacheTime>0?this.requestCache=new cx(e?.resourceCacheSize??TD):this.requestCache=void 0,e?.autoBatchTime?(this.autoBatchTime=e.autoBatchTime,this.autoBatchQueue=[]):(this.autoBatchTime=0,this.autoBatchQueue=void 0),e?.accessToken&&this.setAccessToken(e.accessToken),this.storage.getInitPromise===void 0?(e?.accessToken||this.attemptResumeActiveLogin().catch(console.error),this.initPromise=Promise.resolve(),this.dispatchEvent({type:`storageInitialized`})):(this.initComplete=!1,this.initPromise=this.storage.getInitPromise(),this.initPromise.then(()=>{e?.accessToken||this.attemptResumeActiveLogin().catch(console.error),this.initComplete=!0,this.dispatchEvent({type:`storageInitialized`})}).catch(e=>{console.error(e),this.initComplete=!0,this.dispatchEvent({type:`storageInitFailed`,payload:{error:e}})})),this.setupStorageListener()}get isInitialized(){return this.initComplete}getInitPromise(){return this.initPromise}initializeLogLevel(e){return e?.logLevel?e.logLevel:e?.verbose===void 0?`none`:e.verbose?`verbose`:`none`}async attemptResumeActiveLogin(){let e=this.getActiveLogin();e&&(this.setAccessToken(e.accessToken,e.refreshToken),await this.refreshProfile())}getBaseUrl(){return this.baseUrl}getAuthorizeUrl(){return this.authorizeUrl}getTokenUrl(){return this.tokenUrl}getLogoutUrl(){return this.logoutUrl}getFhircastHubUrl(){return this.fhircastHubUrl}getCdsServicesUrl(){return this.cdsServicesUrl}getDefaultHeaders(){return this.defaultHeaders}clear(){this.storage.clear(),yE()&&sessionStorage.clear(),this.clearActiveLogin()}clearActiveLogin(){this.storage.setString(`activeLogin`,void 0),this.requestCache?.clear(),this.accessToken=void 0,this.refreshToken=void 0,this.refreshPromise=void 0,this.accessTokenExpires=void 0,this.sessionDetails=void 0,this.medplumServer=void 0,this.dispatchEvent({type:`change`})}invalidateUrl(e){e=e.toString(),this.requestCache?.delete(e)}invalidateAll(){this.requestCache?.clear()}invalidateSearches(e){let t=RC(this.fhirBaseUrl,e);for(let e of this.requestCache?.keys()??UC)(e.endsWith(t)||e.includes(t+`?`))&&this.requestCache?.delete(e)}get(e,t={}){e=e.toString();let n=this.getCacheEntry(e,t);if(n)return n.value;let r;r=e.startsWith(this.fhirBaseUrl)&&this.autoBatchQueue&&!t.disableAutoBatch?new Promise((n,r)=>{this.autoBatchQueue.push({method:`GET`,url:e.replace(this.fhirBaseUrl,``),options:t,resolve:n,reject:r}),this.autoBatchTimerId||=setTimeout(()=>this.executeAutoBatch(),this.autoBatchTime)}):this.request(`GET`,e,t);let i=new aD(r);return this.setCacheEntry(e,i,t),i}post(e,t,n,r={}){return e=e.toString(),this.setRequestBody(r,t),n&&this.setRequestContentType(r,n),this.invalidateUrl(e),this.request(`POST`,e,r)}put(e,t,n,r={}){return e=e.toString(),this.setRequestBody(r,t),n&&this.setRequestContentType(r,n),this.invalidateUrl(e),this.request(`PUT`,e,r)}patch(e,t,n={}){return e=e.toString(),this.setRequestBody(n,t),this.setRequestContentType(n,FE.JSON_PATCH),this.invalidateUrl(e),this.request(`PATCH`,e,n)}delete(e,t){return e=e.toString(),this.invalidateUrl(e),this.request(`DELETE`,e,t)}async startNewUser(e,t){let{codeChallengeMethod:n,codeChallenge:r}=await this.startPkce();return this.post(`auth/newuser`,{...e,clientId:e.clientId??this.clientId,codeChallengeMethod:n,codeChallenge:r},void 0,t)}async startNewProject(e,t){return this.post(`auth/newproject`,e,void 0,t)}async startNewPatient(e,t){return this.post(`auth/newpatient`,e,void 0,t)}async startLogin(e,t){return this.post(`auth/login`,{...await this.ensureCodeChallenge(e),clientId:e.clientId??this.clientId,scope:e.scope},void 0,t)}async startGoogleLogin(e,t){return this.post(`auth/google`,{...await this.ensureCodeChallenge(e),clientId:e.clientId??this.clientId,scope:e.scope},void 0,t)}async ensureCodeChallenge(e){return e.codeChallenge?e:{...e,...await this.startPkce()}}async signOut(){await this.post(this.logoutUrl,{}),this.clear()}async signInWithRedirect(e){let t=new URLSearchParams(xE.getSearch()).get(`code`);if(!t){await this.requestAuthorization(e);return}return this.processCode(t)}signOutWithRedirect(){xE.assign(this.logoutUrl)}async signInWithExternalAuth(e,t,n,r,i=!0){let a=r;i&&(a=await this.ensureCodeChallenge(r)),xE.assign(this.getExternalAuthRedirectUri(e,t,n,a,i))}async exchangeExternalAccessToken(e,t,n){if(t??=this.clientId,!t)throw Error(`MedplumClient is missing clientId`);let r={grant_type:jD.TokenExchange,subject_token_type:MD.AccessToken,client_id:t,subject_token:e};return n&&(r.membership_id=n),this.fetchTokens(r)}getExternalAuthRedirectUri(e,t,n,r,i=!0){let a=new URL(e);if(a.searchParams.set(`response_type`,`code`),a.searchParams.set(`client_id`,t),a.searchParams.set(`redirect_uri`,n),a.searchParams.set(`scope`,r.scope??`openid profile email`),a.searchParams.set(`state`,JSON.stringify(r)),i){let{codeChallenge:e,codeChallengeMethod:t}=r;if(!t)throw Error("`LoginRequest` for external auth must include a `codeChallengeMethod`.");if(!e)throw Error("`LoginRequest` for external auth must include a `codeChallenge`.");a.searchParams.set(`code_challenge_method`,t),a.searchParams.set(`code_challenge`,e)}return a.toString()}fhirUrl(...e){return new URL(RC(this.fhirBaseUrl,e.join(`/`)))}fhirSearchUrl(e,t){let n=this.fhirUrl(e);return t&&(n.search=BC(t)),n}search(e,t,n){let r=this.fhirSearchUrl(e,t),i=`search-`+r.toString(),a=this.getCacheEntry(i,n);if(a)return a.value;let o=this.getBundle(r,n);return this.setCacheEntry(i,o,n),o}searchOne(e,t,n){let r=this.fhirSearchUrl(e,t);r.searchParams.set(`_count`,`1`),r.searchParams.sort();let i=`searchOne-`+r.toString(),a=this.getCacheEntry(i,n);if(a)return a.value;let o=new aD(this.search(e,r.searchParams,n).then(e=>e.entry?.[0]?.resource));return this.setCacheEntry(i,o,n),o}searchResources(e,t,n){let r=`searchResources-`+this.fhirSearchUrl(e,t).toString(),i=this.getCacheEntry(r,n);if(i)return i.value;let a=new aD(this.search(e,t,n).then(LD));return this.setCacheEntry(r,a,n),a}async*searchResourcePages(e,t,n){let r=this.fhirSearchUrl(e,t);for(;r;){let t=new URL(r).searchParams;t.has(`_count`)||t.set(`_count`,`1000`);let i=await this.search(e,t,n),a=i.link?.find(e=>e.relation===`next`);if(!i.entry?.length&&!a)break;yield LD(i),r=a?.url?new URL(a.url):void 0}}valueSetExpand(e,t){let n=this.fhirUrl(`ValueSet`,`$expand`);return n.search=new URLSearchParams(e).toString(),this.get(n.toString(),t)}getCached(e,t){let n=this.requestCache?.get(this.fhirUrl(e,t).toString())?.value;return n?.isOk()?n.read():void 0}getCachedReference(e){let t=e.reference;if(!t)return;if(t===`system`)return AD;let[n,r]=t.split(`/`);if(!(!n||!r))return this.getCached(n,r)}readResource(e,t,n){if(!t)throw Error(`The "id" parameter cannot be null, undefined, or an empty string.`);return this.get(this.fhirUrl(e,t),n)}readReference(e,t){let n=e.reference;if(!n)return new aD(Promise.reject(Error(`Missing reference`)));if(n===`system`)return new aD(Promise.resolve(AD));let[r,i]=n.split(`/`);return!r||!i?new aD(Promise.reject(Error(`Invalid reference`))):this.readResource(r,i,t)}readCanonical(e,t,n){return Array.isArray(e)?this.searchOne(``,{_type:e.join(`,`),url:t},n):this.searchOne(e,`url=`+t,n)}requestSchema(e,t){if(Zx(e))return Promise.resolve();let n=e+`-requestSchema`,r=this.getCacheEntry(n,void 0);if(r)return r.value;let i=new aD((async()=>{let t=`{
|
|
53
|
+
`),a=!1),Object.assign(Object.assign({},e),{allowNegative:a})}function __(e){e=g_(e),e.decimalSeparator,e.allowedDecimalSeparators,e.thousandsGroupStyle;var t=e.suffix,n=e.allowNegative,r=e.allowLeadingZeros,i=e.onKeyDown;i===void 0&&(i=Mg);var a=e.onBlur;a===void 0&&(a=Mg);var o=e.thousandSeparator,s=e.decimalScale,c=e.fixedDecimalScale,l=e.prefix;l===void 0&&(l=``);var u=e.defaultValue,d=e.value,f=e.valueIsNumericString,p=e.onValueChange,m=Ag(e,[`decimalSeparator`,`allowedDecimalSeparators`,`thousandsGroupStyle`,`suffix`,`allowNegative`,`allowLeadingZeros`,`onKeyDown`,`onBlur`,`thousandSeparator`,`decimalScale`,`fixedDecimalScale`,`prefix`,`defaultValue`,`value`,`valueIsNumericString`,`onValueChange`]),h=u_(e),g=h.decimalSeparator,_=h.allowedDecimalSeparators,v=function(t){return l_(t,e)},y=function(t,n){return m_(t,n,e)},b=Fg(d)?u:d,x=f??p_(b,l,t);Fg(d)?Fg(u)||(x||=typeof u==`number`):x||=typeof d==`number`;var S=function(e){return Lg(e)?e:(typeof e==`number`&&(e=Kg(e)),x&&typeof s==`number`?qg(e,s,!!c):e)},C=a_(S(d),S(u),!!x,v,y,p),w=C[0],T=w.numAsString,E=w.formattedValue,D=C[1];return Object.assign(Object.assign({},m),{value:E,valueIsNumericString:!1,isValidInputCharacter:function(e){return e===g?!0:Pg(e)},isCharacterSame:function(e){var t=e.currentValue,n=e.lastValue,r=e.formattedValue,i=e.currentValueIndex,a=e.formattedValueIndex,o=t[i],u=r[a],f=Yg(n,t).to,p=function(e){return y(e).indexOf(`.`)+l.length};return d===0&&c&&s&&t[f.start]===g&&p(t)<i&&p(r)>a?!1:i>=f.start&&i<f.end&&_&&_.includes(o)&&u===g?!0:o===u},onValueChange:D,format:v,removeFormatting:y,getCaretBoundary:function(t){return h_(t,e)},onKeyDown:function(e){var t=e.target,r=e.key,a=t.selectionStart,u=t.selectionEnd,d=t.value;if(d===void 0&&(d=``),(r===`Backspace`||r===`Delete`)&&u<l.length&&d!==`-`){e.preventDefault();return}if(a!==u){i(e);return}r===`Backspace`&&d[0]===`-`&&a===l.length+1&&n&&Jg(t,1),s&&c&&(r===`Backspace`&&d[a-1]===g?(Jg(t,a-1),e.preventDefault()):r===`Delete`&&d[a]===g&&e.preventDefault()),_?.includes(r)&&d[a]===g&&Jg(t,a+1);var f=o===!0?`,`:o;r===`Backspace`&&d[a-1]===f&&Jg(t,a-1),r===`Delete`&&d[a]===f&&Jg(t,a+1),i(e)},onBlur:function(t){var n=T;n.match(/\d/g)||(n=``),r||(n=Ug(n)),c&&s&&(n=qg(n,s,c)),n!==T&&D({formattedValue:l_(n,e),value:n,floatValue:parseFloat(n)},{event:t,source:jg.event}),a(t)}})}function v_(e){var t=__(e);return b.createElement(c_,Object.assign({},t))}var y_={root:`m_e2f5cd4e`,controls:`m_95e17d22`,control:`m_80b4b171`};function b_({direction:e,style:t,...n}){return(0,L.jsx)(`svg`,{style:{width:`var(--ni-chevron-size)`,height:`var(--ni-chevron-size)`,transform:e===`up`?`rotate(180deg)`:void 0,...t},viewBox:`0 0 15 15`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...n,children:(0,L.jsx)(`path`,{d:`M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z`,fill:`currentColor`,fillRule:`evenodd`,clipRule:`evenodd`})})}var x_=/^(0\.0*|-0(\.0*)?)$/,S_=/^-?0\d+(\.\d+)?\.?$/,C_=/\.\d*0$/,w_=/^-?\d+\.$/;function T_(e){return typeof e==`string`&&e!==``&&!Number.isNaN(Number(e))}function E_(e){return typeof e==`number`?e<2**53-1:e===``||T_(e)&&Number(e)<2**53-1}function D_(e){return e.toString().replace(`.`,``).length}function O_(e,t){return(typeof e==`number`?e<2**53-1:!Number.isNaN(Number(e)))&&!Number.isNaN(e)&&D_(t)<14&&t!==``}function k_(e,t,n){return e===void 0?!0:(t===void 0||e>=t)&&(n===void 0||e<=n)}var A_={step:1,clampBehavior:`blur`,allowDecimal:!0,allowNegative:!0,withKeyboardEvents:!0,allowLeadingZeros:!0,trimLeadingZeroesOnBlur:!0,startValue:0,allowedDecimalSeparators:[`.`,`,`]},j_=kn((e,{size:t})=>({controls:{"--ni-chevron-size":dt(t,`ni-chevron-size`)}}));function M_(e,t,n){let r=e.toString(),i=w_.test(r),a=r.replace(/^0+(?=\d)/,``),o=parseFloat(a);if(Number.isNaN(o))return a;if(o>2**53-1)return t===void 0?a:t;let s=St(o,n,t);return i?`${s.toString().replace(/^0+(?=\d)/,``)}.`:s}var N_=V((e,t)=>{let n=z(`NumberInput`,A_,e),{className:r,classNames:i,styles:a,unstyled:o,vars:s,onChange:c,onValueChange:l,value:u,defaultValue:d,max:f,min:p,step:m,hideControls:h,rightSection:g,isAllowed:_,clampBehavior:v,onBlur:y,allowDecimal:x,decimalScale:S,onKeyDown:C,onKeyDownCapture:w,handlersRef:T,startValue:E,disabled:D,rightSectionPointerEvents:O,allowNegative:k,readOnly:A,size:j,rightSectionWidth:M,stepHoldInterval:N,stepHoldDelay:P,allowLeadingZeros:F,withKeyboardEvents:ee,trimLeadingZeroesOnBlur:te,allowedDecimalSeparators:ne,attributes:re,...ie}=n,ae=R({name:`NumberInput`,classes:y_,props:n,classNames:i,styles:a,unstyled:o,attributes:re,vars:s,varsResolver:j_}),{resolvedClassNames:oe,resolvedStyles:se}=Hr({classNames:i,styles:a,props:n}),[ce,le]=rn({value:u,defaultValue:d,finalValue:``,onChange:c}),ue=P!==void 0&&N!==void 0,de=(0,b.useRef)(null),fe=(0,b.useRef)(null),pe=(0,b.useRef)(0),me=(e,t)=>{t.source===`event`&&le(O_(e.floatValue,e.value)&&!x_.test(e.value)&&!(F&&S_.test(e.value))&&!C_.test(e.value)&&!w_.test(e.value)?e.floatValue:e.value),l?.(e,t)},he=e=>{let t=String(e).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return t?Math.max(0,(t[1]?t[1].length:0)-(t[2]?+t[2]:0)):0},ge=e=>{de.current&&e!==void 0&&de.current.setSelectionRange(e,e)},_e=(0,b.useRef)(lt);_e.current=()=>{if(!E_(ce))return;let e,t=he(ce),n=he(m),r=Math.max(t,n),i=10**r;if(!T_(ce)&&(typeof ce!=`number`||Number.isNaN(ce)))e=St(E,p,f);else if(f!==void 0){let t=(Math.round(Number(ce)*i)+Math.round(m*i))/i;e=t<=f?t:f}else e=(Math.round(Number(ce)*i)+Math.round(m*i))/i;let a=e.toFixed(r);le(parseFloat(a)),l?.({floatValue:parseFloat(a),formattedValue:a,value:a},{source:`increment`}),setTimeout(()=>ge(de.current?.value.length),0)};let ve=(0,b.useRef)(lt);ve.current=()=>{if(!E_(ce))return;let e,t=p===void 0?k?-(2**53-1):0:p,n=he(ce),r=he(m),i=Math.max(n,r),a=10**i;if(!T_(ce)&&typeof ce!=`number`||Number.isNaN(ce))e=St(E,t,f);else{let n=(Math.round(Number(ce)*a)-Math.round(m*a))/a;e=t!==void 0&&n<t?t:n}let o=e.toFixed(i);le(parseFloat(o)),l?.({floatValue:parseFloat(o),formattedValue:o,value:o},{source:`decrement`}),setTimeout(()=>ge(de.current?.value.length),0)};let ye=e=>{let t=e.clipboardData.getData(`text`),n=ie.decimalSeparator||`.`,r=(ne||[`.`,`,`]).filter(e=>e!==n);if(r.some(e=>t.includes(e))){e.preventDefault();let i=t;r.forEach(e=>{i=i.split(e).join(n)});let a=de.current;if(a){let e=a.selectionStart??0,t=a.selectionEnd??0,n=a.value,r=n.substring(0,e)+i+n.substring(t);(Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,`value`)?.set)?.call(a,r),a.dispatchEvent(new Event(`change`,{bubbles:!0}));let o=e+i.length;setTimeout(()=>ge(o),0)}}ie.onPaste?.(e)},be=e=>{C?.(e),!(A||!ee)&&(e.key===`ArrowUp`&&(e.preventDefault(),_e.current?.()),e.key===`ArrowDown`&&(e.preventDefault(),ve.current?.()))},xe=e=>{if(w?.(e),e.key===`Backspace`){let t=de.current;t&&t.selectionStart===0&&t.selectionStart===t.selectionEnd&&(e.preventDefault(),window.setTimeout(()=>ge(0),0))}},Se=e=>{let t=ce;v===`blur`&&typeof t==`number`&&(t=St(t,p,f)),te&&typeof t==`string`&&he(t)<15&&(t=M_(t,f,p)),ce!==t&&le(t),y?.(e)};en(T,{increment:_e.current,decrement:ve.current});let Ce=e=>{e?_e.current?.():ve.current?.(),pe.current+=1},we=e=>{if(Ce(e),ue){let t=typeof N==`number`?N:N(pe.current);fe.current=window.setTimeout(()=>we(e),t)}},Te=(e,t)=>{e.preventDefault(),de.current?.focus(),Ce(t),ue&&(fe.current=window.setTimeout(()=>we(t),P))},Ee=()=>{fe.current&&window.clearTimeout(fe.current),fe.current=null,pe.current=0},De=(0,L.jsxs)(`div`,{...ae(`controls`),children:[(0,L.jsx)(pl,{...ae(`control`),tabIndex:-1,"aria-hidden":!0,disabled:D||typeof ce==`number`&&f!==void 0&&ce>=f,mod:{direction:`up`},onMouseDown:e=>e.preventDefault(),onPointerDown:e=>{Te(e,!0)},onPointerUp:Ee,onPointerLeave:Ee,children:(0,L.jsx)(b_,{direction:`up`})}),(0,L.jsx)(pl,{...ae(`control`),tabIndex:-1,"aria-hidden":!0,disabled:D||typeof ce==`number`&&p!==void 0&&ce<=p,mod:{direction:`down`},onMouseDown:e=>e.preventDefault(),onPointerDown:e=>{Te(e,!1)},onPointerUp:Ee,onPointerLeave:Ee,children:(0,L.jsx)(b_,{direction:`down`})})]});return(0,L.jsx)(pd,{component:v_,allowNegative:k,className:jn(y_.root,r),size:j,inputMode:`decimal`,...ie,readOnly:A,disabled:D,value:ce,getInputRef:nn(t,de),onValueChange:me,rightSection:h||A||!E_(ce)?g:g||De,classNames:oe,styles:se,unstyled:o,__staticSelector:`NumberInput`,decimalScale:x?S:0,onPaste:ye,onKeyDown:be,onKeyDownCapture:xe,rightSectionPointerEvents:O??(D?`none`:void 0),rightSectionWidth:M??`var(--ni-right-section-width-${j||`sm`})`,allowLeadingZeros:F,allowedDecimalSeparators:ne,onBlur:Se,attributes:re,isAllowed:e=>v===`strict`?_?_(e)&&k_(e.floatValue,p,f):k_(e.floatValue,p,f):_?_(e):!0})});N_.classes={...pd.classes,...y_},N_.displayName=`@mantine/core/NumberInput`;var P_={root:`m_4addd315`,control:`m_326d024a`,dots:`m_4ad7767d`},[F_,I_]=$e(`Pagination.Root component was not found in tree`),L_={withPadding:!0},R_=V((e,t)=>{let{classNames:n,className:r,style:i,styles:a,vars:o,active:s,disabled:c,withPadding:l,mod:u,...d}=z(`PaginationControl`,L_,e),f=I_(),p=c||f.disabled;return(0,L.jsx)(pl,{ref:t,disabled:p,mod:[{active:s,disabled:p,"with-padding":l},u],...f.getStyles(`control`,{className:r,style:i,classNames:n,styles:a,active:!p}),...d})});R_.classes=P_,R_.displayName=`@mantine/core/PaginationControl`;function z_({style:e,children:t,path:n,...r}){return(0,L.jsx)(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,style:{width:`calc(var(--pagination-control-size) / 1.8)`,height:`calc(var(--pagination-control-size) / 1.8)`,...e},...r,children:(0,L.jsx)(`path`,{d:n,fill:`currentColor`})})}var B_=e=>(0,L.jsx)(z_,{...e,path:`M8.781 8l-3.3-3.3.943-.943L10.667 8l-4.243 4.243-.943-.943 3.3-3.3z`}),V_=e=>(0,L.jsx)(z_,{...e,path:`M7.219 8l3.3 3.3-.943.943L5.333 8l4.243-4.243.943.943-3.3 3.3z`}),H_=e=>(0,L.jsx)(z_,{...e,path:`M6.85355 3.85355C7.04882 3.65829 7.04882 3.34171 6.85355 3.14645C6.65829 2.95118 6.34171 2.95118 6.14645 3.14645L2.14645 7.14645C1.95118 7.34171 1.95118 7.65829 2.14645 7.85355L6.14645 11.8536C6.34171 12.0488 6.65829 12.0488 6.85355 11.8536C7.04882 11.6583 7.04882 11.3417 6.85355 11.1464L3.20711 7.5L6.85355 3.85355ZM12.8536 3.85355C13.0488 3.65829 13.0488 3.34171 12.8536 3.14645C12.6583 2.95118 12.3417 2.95118 12.1464 3.14645L8.14645 7.14645C7.95118 7.34171 7.95118 7.65829 8.14645 7.85355L12.1464 11.8536C12.3417 12.0488 12.6583 12.0488 12.8536 11.8536C13.0488 11.6583 13.0488 11.3417 12.8536 11.1464L9.20711 7.5L12.8536 3.85355Z`}),U_=e=>(0,L.jsx)(z_,{...e,path:`M2.14645 11.1464C1.95118 11.3417 1.95118 11.6583 2.14645 11.8536C2.34171 12.0488 2.65829 12.0488 2.85355 11.8536L6.85355 7.85355C7.04882 7.65829 7.04882 7.34171 6.85355 7.14645L2.85355 3.14645C2.65829 2.95118 2.34171 2.95118 2.14645 3.14645C1.95118 3.34171 1.95118 3.65829 2.14645 3.85355L5.79289 7.5L2.14645 11.1464ZM8.14645 11.1464C7.95118 11.3417 7.95118 11.6583 8.14645 11.8536C8.34171 12.0488 8.65829 12.0488 8.85355 11.8536L12.8536 7.85355C13.0488 7.65829 13.0488 7.34171 12.8536 7.14645L8.85355 3.14645C8.65829 2.95118 8.34171 2.95118 8.14645 3.14645C7.95118 3.34171 7.95118 3.65829 8.14645 3.85355L11.7929 7.5L8.14645 11.1464Z`}),W_={icon:e=>(0,L.jsx)(z_,{...e,path:`M2 8c0-.733.6-1.333 1.333-1.333.734 0 1.334.6 1.334 1.333s-.6 1.333-1.334 1.333C2.6 9.333 2 8.733 2 8zm9.333 0c0-.733.6-1.333 1.334-1.333C13.4 6.667 14 7.267 14 8s-.6 1.333-1.333 1.333c-.734 0-1.334-.6-1.334-1.333zM6.667 8c0-.733.6-1.333 1.333-1.333s1.333.6 1.333 1.333S8.733 9.333 8 9.333 6.667 8.733 6.667 8z`})},G_=V((e,t)=>{let{classNames:n,className:r,style:i,styles:a,vars:o,icon:s,...c}=z(`PaginationDots`,W_,e);return(0,L.jsx)(B,{ref:t,...I_().getStyles(`dots`,{className:r,style:i,styles:a,classNames:n}),...c,children:(0,L.jsx)(s,{style:{width:`calc(var(--pagination-control-size) / 1.8)`,height:`calc(var(--pagination-control-size) / 1.8)`}})})});G_.classes=P_,G_.displayName=`@mantine/core/PaginationDots`;function K_({icon:e,name:t,action:n,type:r}){let i={icon:e},a=(0,b.forwardRef)((e,a)=>{let{icon:o,...s}=z(t,i,e),c=I_(),l=r===`next`?c.active===c.total:c.active===1;return(0,L.jsx)(R_,{disabled:c.disabled||l,ref:a,onClick:c[n],withPadding:!1,...s,children:(0,L.jsx)(o,{className:`mantine-rotate-rtl`,style:{width:`calc(var(--pagination-control-size) / 1.8)`,height:`calc(var(--pagination-control-size) / 1.8)`}})})});return a.displayName=`@mantine/core/${t}`,Li(a)}var q_=K_({icon:B_,name:`PaginationNext`,action:`onNext`,type:`next`}),J_=K_({icon:V_,name:`PaginationPrevious`,action:`onPrevious`,type:`previous`}),Y_=K_({icon:H_,name:`PaginationFirst`,action:`onFirst`,type:`previous`}),X_=K_({icon:U_,name:`PaginationLast`,action:`onLast`,type:`next`});function Z_({dotsIcon:e}){let t=I_();return(0,L.jsx)(L.Fragment,{children:t.range.map((n,r)=>n===`dots`?(0,L.jsx)(G_,{icon:e},r):(0,L.jsx)(R_,{active:n===t.active,"aria-current":n===t.active?`page`:void 0,onClick:()=>t.onChange(n),disabled:t.disabled,...t.getItemProps?.(n),children:t.getItemProps?.(n)?.children??n},r))})}Z_.displayName=`@mantine/core/PaginationItems`;var Q_={siblings:1,boundaries:1},$_=kn((e,{size:t,radius:n,color:r,autoContrast:i})=>({root:{"--pagination-control-radius":n===void 0?void 0:pt(n),"--pagination-control-size":dt(t,`pagination-control-size`),"--pagination-control-fz":mt(t),"--pagination-active-bg":r?ir(r,e):void 0,"--pagination-active-color":ai(i,e)?Er({color:r,theme:e,autoContrast:i}):void 0}})),ev=V((e,t)=>{let n=z(`PaginationRoot`,Q_,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,total:l,value:u,defaultValue:d,onChange:f,disabled:p,siblings:m,boundaries:h,color:g,radius:_,onNextPage:v,onPreviousPage:y,onFirstPage:b,onLastPage:x,getItemProps:S,autoContrast:C,attributes:w,...T}=n,E=R({name:`Pagination`,classes:P_,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:w,vars:c,varsResolver:$_}),{range:D,setPage:O,next:k,previous:A,active:j,first:M,last:N}=sn({page:u,initialPage:d,onChange:f,total:l,siblings:m,boundaries:h});return(0,L.jsx)(F_,{value:{total:l,range:D,active:j,disabled:p,getItemProps:S,onChange:O,onNext:_t(v,k),onPrevious:_t(y,A),onFirst:_t(b,M),onLast:_t(x,N),getStyles:E},children:(0,L.jsx)(B,{ref:t,...E(`root`),...T})})});ev.classes=P_,ev.displayName=`@mantine/core/PaginationRoot`;var tv={withControls:!0,withPages:!0,siblings:1,boundaries:1,gap:8},nv=V((e,t)=>{let{withEdges:n,withControls:r,getControlProps:i,nextIcon:a,previousIcon:o,lastIcon:s,firstIcon:c,dotsIcon:l,total:u,gap:d,hideWithOnePage:f,withPages:p,...m}=z(`Pagination`,tv,e);return u<=0||f&&u===1?null:(0,L.jsx)(ev,{ref:t,total:u,...m,children:(0,L.jsxs)(H,{gap:d,children:[n&&(0,L.jsx)(Y_,{icon:c,...i?.(`first`)}),r&&(0,L.jsx)(J_,{icon:o,...i?.(`previous`)}),p&&(0,L.jsx)(Z_,{dotsIcon:l}),r&&(0,L.jsx)(q_,{icon:a,...i?.(`next`)}),n&&(0,L.jsx)(X_,{icon:s,...i?.(`last`)})]})})});nv.classes=P_,nv.displayName=`@mantine/core/Pagination`,nv.Root=ev,nv.Control=R_,nv.Dots=G_,nv.First=Y_,nv.Last=X_,nv.Next=q_,nv.Previous=J_,nv.Items=Z_;var rv={root:`m_f61ca620`,input:`m_ccf8da4c`,innerInput:`m_f2d85dd2`,visibilityToggle:`m_b1072d44`},iv={visibilityToggleIcon:({reveal:e})=>(0,L.jsx)(`svg`,{viewBox:`0 0 15 15`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,style:{width:`var(--psi-icon-size)`,height:`var(--psi-icon-size)`},children:(0,L.jsx)(`path`,{d:e?`M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.6828 3.61012C9.70652 3.21671 8.63759 3 7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C0.902945 9.08812 2.02314 10.1861 3.36061 10.9323L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.31723 11.3899C5.29348 11.7833 6.36241 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C14.0971 5.9119 12.9769 4.81391 11.6394 4.06771L13.3536 2.35355ZM9.90428 4.38861C9.15332 4.1361 8.34759 4 7.5 4C4.80285 4 2.52952 5.37816 1.09622 7.50001C1.87284 8.6497 2.89609 9.58106 4.09974 10.1931L9.90428 4.38861ZM5.09572 10.6114L10.9003 4.80685C12.1039 5.41894 13.1272 6.35031 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11C6.65241 11 5.84668 10.8639 5.09572 10.6114Z`:`M7.5 11C4.80285 11 2.52952 9.62184 1.09622 7.50001C2.52952 5.37816 4.80285 4 7.5 4C10.1971 4 12.4705 5.37816 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11ZM7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C1.65639 10.2936 4.30786 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C13.3436 4.70638 10.6921 3 7.5 3ZM7.5 9.5C8.60457 9.5 9.5 8.60457 9.5 7.5C9.5 6.39543 8.60457 5.5 7.5 5.5C6.39543 5.5 5.5 6.39543 5.5 7.5C5.5 8.60457 6.39543 9.5 7.5 9.5Z`,fill:`currentColor`,fillRule:`evenodd`,clipRule:`evenodd`})})},av=kn((e,{size:t})=>({root:{"--psi-icon-size":dt(t,`psi-icon-size`),"--psi-button-size":dt(t,`psi-button-size`)}})),ov=V((e,t)=>{let n=z(`PasswordInput`,iv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,required:l,error:u,leftSection:d,disabled:f,id:p,variant:m,inputContainer:h,description:g,label:_,size:v,errorProps:y,descriptionProps:b,labelProps:x,withAsterisk:S,inputWrapperOrder:C,wrapperProps:w,radius:T,rightSection:E,rightSectionWidth:D,rightSectionPointerEvents:O,leftSectionWidth:k,visible:A,defaultVisible:j,onVisibilityChange:M,visibilityToggleIcon:N,visibilityToggleButtonProps:P,rightSectionProps:F,leftSectionProps:ee,leftSectionPointerEvents:te,withErrorStyles:ne,mod:re,attributes:ie,...ae}=n,oe=Qt(p),[se,ce]=rn({value:A,defaultValue:j,finalValue:!1,onChange:M}),le=()=>ce(!se),ue=R({name:`PasswordInput`,classes:rv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:ie,vars:c,varsResolver:av}),{resolvedClassNames:de,resolvedStyles:fe}=Hr({classNames:r,styles:o,props:n}),{styleProps:pe,rest:me}=fi(ae),he=y?.id||`${oe}-error`,ge=b?.id||`${oe}-description`,_e=`${u&&typeof u!=`boolean`?he:``} ${g?ge:``}`,ve=_e.trim().length>0?_e.trim():void 0,ye=(0,L.jsx)(hu,{...ue(`visibilityToggle`),disabled:f,radius:T,"aria-hidden":!P,"aria-pressed":se,tabIndex:-1,...P,variant:P?.variant??`subtle`,color:`gray`,unstyled:s,onTouchEnd:e=>{e.preventDefault(),P?.onTouchEnd?.(e),le()},onMouseDown:e=>{e.preventDefault(),P?.onMouseDown?.(e),le()},onKeyDown:e=>{P?.onKeyDown?.(e),e.key===` `&&(e.preventDefault(),le())},children:(0,L.jsx)(N,{reveal:se})});return(0,L.jsx)(ud.Wrapper,{required:l,id:oe,label:_,error:u,description:g,size:v,classNames:de,styles:fe,__staticSelector:`PasswordInput`,__stylesApiProps:n,unstyled:s,withAsterisk:S,inputWrapperOrder:C,inputContainer:h,variant:m,labelProps:{...x,htmlFor:oe},descriptionProps:{...b,id:ge},errorProps:{...y,id:he},mod:re,attributes:ie,...ue(`root`),...pe,...w,children:(0,L.jsx)(ud,{component:`div`,error:u,leftSection:d,size:v,classNames:{...de,input:jn(rv.input,de.input)},styles:fe,radius:T,disabled:f,__staticSelector:`PasswordInput`,__stylesApiProps:n,rightSectionWidth:D,rightSection:E??ye,variant:m,unstyled:s,leftSectionWidth:k,rightSectionPointerEvents:O||`all`,rightSectionProps:F,leftSectionProps:ee,leftSectionPointerEvents:te,withAria:!1,withErrorStyles:ne,attributes:ie,children:(0,L.jsx)(`input`,{required:l,"data-invalid":!!u||void 0,"data-with-left-section":!!d||void 0,...ue(`innerInput`),disabled:f,id:oe,ref:t,...me,"aria-describedby":ve,autoComplete:me.autoComplete||`off`,type:se?`text`:`password`})})})});ov.classes={...pd.classes,...rv},ov.displayName=`@mantine/core/PasswordInput`;var sv={root:`m_f3f1af94`,inner:`m_89c4f5e4`,icon:`m_f3ed6b2b`,radio:`m_8a3dbb89`,"radio--outline":`m_1bfe9d39`},[cv,lv]=et(),[uv,dv]=et(),fv={card:`m_9dc8ae12`},pv={withBorder:!0},mv=kn((e,{radius:t})=>({card:{"--card-radius":pt(t)}})),hv=V((e,t)=>{let n=z(`RadioCard`,pv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,checked:l,mod:u,withBorder:d,value:f,onClick:p,name:m,onKeyDown:h,attributes:g,..._}=n,v=R({name:`RadioCard`,classes:fv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:g,vars:c,varsResolver:mv,rootSelector:`card`}),{dir:y}=Ji(),b=lv(),x=typeof l==`boolean`?l:b?.value===f||!1,S=m||b?.name,C=e=>{if(h?.(e),[`ArrowDown`,`ArrowUp`,`ArrowLeft`,`ArrowRight`].includes(e.nativeEvent.code)){e.preventDefault();let t=Array.from(document.querySelectorAll(`[role="radio"][name="${S||`__mantine`}"]`)),n=t.findIndex(t=>t===e.target),r=n+1>=t.length?0:n+1,i=n-1<0?t.length-1:n-1;e.nativeEvent.code===`ArrowDown`&&(t[r].focus(),t[r].click()),e.nativeEvent.code===`ArrowUp`&&(t[i].focus(),t[i].click()),e.nativeEvent.code===`ArrowLeft`&&(t[y===`ltr`?i:r].focus(),t[y===`ltr`?i:r].click()),e.nativeEvent.code===`ArrowRight`&&(t[y===`ltr`?r:i].focus(),t[y===`ltr`?r:i].click())}};return(0,L.jsx)(uv,{value:{checked:x},children:(0,L.jsx)(pl,{ref:t,mod:[{"with-border":d,checked:x},u],...v(`card`),..._,role:`radio`,"aria-checked":x,name:S,onClick:e=>{p?.(e),b?.onChange(f||``)},onKeyDown:C})})});hv.displayName=`@mantine/core/RadioCard`,hv.classes=fv;var gv=V((e,t)=>{let{value:n,defaultValue:r,onChange:i,size:a,wrapperProps:o,children:s,name:c,readOnly:l,disabled:u,...d}=z(`RadioGroup`,null,e),f=Qt(c),[p,m]=rn({value:n,defaultValue:r,finalValue:``,onChange:i});return(0,L.jsx)(cv,{value:{value:p,onChange:e=>!l&&m(typeof e==`string`?e:e.currentTarget.value),size:a,name:f,disabled:u},children:(0,L.jsx)(ud.Wrapper,{size:a,ref:t,...o,...d,labelElement:`div`,__staticSelector:`RadioGroup`,children:(0,L.jsx)(Qf,{role:`radiogroup`,children:s})})})});gv.classes=ud.Wrapper.classes,gv.displayName=`@mantine/core/RadioGroup`;function _v({size:e,style:t,...n}){return(0,L.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 5 5`,style:{width:I(e),height:I(e),...t},"aria-hidden":!0,...n,children:(0,L.jsx)(`circle`,{cx:`2.5`,cy:`2.5`,r:`2.5`,fill:`currentColor`})})}var vv={indicator:`m_717d7ff6`,icon:`m_3e4da632`,"indicator--outline":`m_2980836c`},yv={icon:_v},bv=kn((e,{radius:t,color:n,size:r,iconColor:i,variant:a,autoContrast:o})=>{let s=rr({color:n||e.primaryColor,theme:e}),c=s.isThemeColor&&s.shade===void 0?`var(--mantine-color-${s.color}-outline)`:s.color;return{indicator:{"--radio-size":dt(r,`radio-size`),"--radio-radius":t===void 0?void 0:pt(t),"--radio-color":a===`outline`?c:ir(n,e),"--radio-icon-size":dt(r,`radio-icon-size`),"--radio-icon-color":i?ir(i,e):ai(o,e)?Er({color:n,theme:e,autoContrast:o}):void 0}}}),xv=V((e,t)=>{let n=z(`RadioIndicator`,yv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,icon:l,radius:u,color:d,iconColor:f,autoContrast:p,checked:m,mod:h,variant:g,disabled:_,attributes:v,...y}=n,b=R({name:`RadioIndicator`,classes:vv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:v,vars:c,varsResolver:bv,rootSelector:`indicator`}),x=dv(),S=typeof m==`boolean`?m:x?.checked||!1;return(0,L.jsx)(B,{ref:t,...b(`indicator`,{variant:g}),variant:g,mod:[{checked:S,disabled:_},h],...y,children:(0,L.jsx)(l,{...b(`icon`)})})});xv.displayName=`@mantine/core/RadioIndicator`,xv.classes=vv;var Sv={labelPosition:`right`},Cv=kn((e,{size:t,radius:n,color:r,iconColor:i,variant:a,autoContrast:o})=>{let s=rr({color:r||e.primaryColor,theme:e}),c=s.isThemeColor&&s.shade===void 0?`var(--mantine-color-${s.color}-outline)`:s.color;return{root:{"--radio-size":dt(t,`radio-size`),"--radio-radius":n===void 0?void 0:pt(n),"--radio-color":a===`outline`?c:ir(r,e),"--radio-icon-color":i?ir(i,e):ai(o,e)?Er({color:r,theme:e,autoContrast:o}):void 0,"--radio-icon-size":dt(t,`radio-icon-size`)}}}),wv=V((e,t)=>{let n=z(`Radio`,Sv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,id:l,size:u,label:d,labelPosition:f,description:p,error:m,radius:h,color:g,variant:_,disabled:v,wrapperProps:y,icon:b=_v,rootRef:x,iconColor:S,onChange:C,mod:w,attributes:T,checked:E,...D}=n,O=R({name:`Radio`,classes:sv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:T,vars:c,varsResolver:Cv}),k=lv(),A=k?.size??u,j=n.size?u:A,{styleProps:M,rest:N}=fi(D),P=Qt(l),F=k?k.value===N.value:void 0,ee={checked:F??E,name:k?.name??N.name,onChange:e=>{k?.onChange(e),C?.(e)},disabled:k?.disabled??v};return(0,L.jsx)(Vf,{...O(`root`),__staticSelector:`Radio`,__stylesApiProps:n,id:P,size:j,labelPosition:f,label:d,description:p,error:m,disabled:ee.disabled,classNames:r,styles:o,unstyled:s,"data-checked":(F??E)||void 0,variant:_,ref:x,mod:w,...M,...y,children:(0,L.jsxs)(B,{...O(`inner`),mod:{"label-position":f},children:[(0,L.jsx)(B,{...O(`radio`,{focusable:!0,variant:_}),...N,...ee,component:`input`,mod:{error:!!m},ref:t,id:P,type:`radio`}),(0,L.jsx)(b,{...O(`icon`),"aria-hidden":!0})]})})});wv.classes=sv,wv.displayName=`@mantine/core/Radio`,wv.Group=gv,wv.Card=hv,wv.Indicator=xv;var Tv={duration:100,transition:`fade`};function Ev(e,t){return{...Tv,...t,...e}}var Dv={tooltip:`m_1b3c8819`,arrow:`m_f898399f`};function Ov({offset:e,position:t,defaultOpened:n}){let[r,i]=(0,b.useState)(n),a=(0,b.useRef)(null),{x:o,y:s,elements:c,refs:l,update:u,placement:d}=Cc({placement:t,middleware:[Ns({crossAxis:!0,padding:5,rootBoundary:`document`})]}),f=d.includes(`right`)?e:t.includes(`left`)?e*-1:0,p=d.includes(`bottom`)?e:t.includes(`top`)?e*-1:0,m=(0,b.useCallback)(({clientX:e,clientY:t})=>{l.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:e,y:t,left:e+f,top:t+p,right:e,bottom:t}}})},[c.reference]);return(0,b.useEffect)(()=>{if(l.floating.current){let e=a.current;e.addEventListener(`mousemove`,m);let t=ba(l.floating.current);return t.forEach(e=>{e.addEventListener(`scroll`,u)}),()=>{e.removeEventListener(`mousemove`,m),t.forEach(e=>{e.removeEventListener(`scroll`,u)})}}},[c.reference,l.floating.current,u,m,r]),{handleMouseMove:m,x:o,y:s,opened:r,setOpened:i,boundaryRef:a,floating:l.setFloating}}var kv={refProp:`ref`,withinPortal:!0,offset:10,position:`right`,zIndex:ct(`popover`)},Av=kn((e,{radius:t,color:n})=>({tooltip:{"--tooltip-radius":t===void 0?void 0:pt(t),"--tooltip-bg":n?ir(n,e):void 0,"--tooltip-color":n?`var(--mantine-color-white)`:void 0}})),jv=V((e,t)=>{let n=z(`TooltipFloating`,kv,e),{children:r,refProp:i,withinPortal:a,style:o,className:s,classNames:c,styles:l,unstyled:u,radius:d,color:f,label:p,offset:m,position:h,multiline:g,zIndex:_,disabled:v,defaultOpened:y,variant:x,vars:S,portalProps:C,attributes:w,...T}=n,E=xr(),D=R({name:`TooltipFloating`,props:n,classes:Dv,className:s,style:o,classNames:c,styles:l,unstyled:u,attributes:w,rootSelector:`tooltip`,vars:S,varsResolver:Av}),{handleMouseMove:O,x:k,y:A,opened:j,boundaryRef:M,floating:N,setOpened:P}=Ov({offset:m,position:h,defaultOpened:y}),F=On(r);if(!F)throw Error(`[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported`);let ee=nn(M,wn(F),t),te=F.props,ne=e=>{te.onMouseEnter?.(e),O(e),P(!0)},re=e=>{te.onMouseLeave?.(e),P(!1)};return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nl,{...C,withinPortal:a,children:(0,L.jsx)(B,{...T,...D(`tooltip`,{style:{...Ii(o,E),zIndex:_,display:!v&&j?`block`:`none`,top:(A&&Math.round(A))??``,left:(k&&Math.round(k))??``}}),variant:x,ref:N,mod:{multiline:g},children:p})}),(0,b.cloneElement)(F,{...te,[i]:ee,onMouseEnter:ne,onMouseLeave:re})]})});jv.classes=Dv,jv.displayName=`@mantine/core/TooltipFloating`;var Mv=(0,b.createContext)(!1),Nv=Mv.Provider,Pv=()=>(0,b.useContext)(Mv),Fv={openDelay:0,closeDelay:0};function Iv(e){let{openDelay:t,closeDelay:n,children:r}=z(`TooltipGroup`,Fv,e);return(0,L.jsx)(Nv,{value:!0,children:(0,L.jsx)(gc,{delay:{open:t,close:n},children:r})})}Iv.displayName=`@mantine/core/TooltipGroup`,Iv.extend=e=>e;function Lv(e){if(e===void 0)return{shift:!0,flip:!0};let t={...e};return e.shift===void 0&&(t.shift=!0),e.flip===void 0&&(t.flip=!0),t}function Rv(e){let t=Lv(e.middlewares),n=[Ms(e.offset)];return t.shift&&n.push(Ns(typeof t.shift==`boolean`?{padding:8}:{padding:8,...t.shift})),t.flip&&n.push(typeof t.flip==`boolean`?Fs():Fs(t.flip)),n.push(zs({element:e.arrowRef,padding:e.arrowOffset})),t.inline?n.push(typeof t.inline==`boolean`?Rs():Rs(t.inline)):e.inline&&n.push(Rs()),n}function zv(e){let[t,n]=(0,b.useState)(e.defaultOpened),r=typeof e.opened==`boolean`?e.opened:t,i=Pv(),a=Qt(),o=(0,b.useCallback)(e=>{n(e),e&&g(a)},[a]),{x:s,y:c,context:l,refs:u,placement:d,middlewareData:{arrow:{x:f,y:p}={}}}=Cc({strategy:e.strategy,placement:e.position,open:r,onOpenChange:o,middleware:Rv(e),whileElementsMounted:ms}),{delay:m,currentId:h,setCurrentId:g}=_c(l,{id:a}),{getReferenceProps:_,getFloatingProps:v}=Dc([fc(l,{enabled:e.events?.hover,delay:i?m:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),Tc(l,{enabled:e.events?.focus,visibleOnly:!0}),kc(l,{role:`tooltip`}),xc(l,{enabled:e.opened===void 0})]);It(()=>{e.onPositionChange?.(d)},[d]);let y=r&&h&&h!==a;return{x:s,y:c,arrowX:f,arrowY:p,reference:u.setReference,floating:u.setFloating,getFloatingProps:v,getReferenceProps:_,isGroupPhase:y,opened:r,placement:d}}var Bv={position:`top`,refProp:`ref`,withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:`side`,offset:5,transitionProps:{duration:100,transition:`fade`},events:{hover:!0,focus:!1,touch:!1},zIndex:ct(`popover`),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},Vv=kn((e,{radius:t,color:n,variant:r,autoContrast:i})=>{let a=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:i,variant:r||`filled`});return{tooltip:{"--tooltip-radius":t===void 0?void 0:pt(t),"--tooltip-bg":n?a.background:void 0,"--tooltip-color":n?a.color:void 0}}}),Hv=V((e,t)=>{let n=z(`Tooltip`,Bv,e),{children:r,position:i,refProp:a,label:o,openDelay:s,closeDelay:c,onPositionChange:l,opened:u,defaultOpened:d,withinPortal:f,radius:p,color:m,classNames:h,styles:g,unstyled:_,style:v,className:y,withArrow:x,arrowSize:S,arrowOffset:C,arrowRadius:w,arrowPosition:T,offset:E,transitionProps:D,multiline:O,events:k,zIndex:A,disabled:j,positionDependencies:M,onClick:N,onMouseEnter:P,onMouseLeave:F,inline:ee,variant:te,keepMounted:ne,vars:re,portalProps:ie,mod:ae,floatingStrategy:oe,middlewares:se,autoContrast:ce,attributes:le,target:ue,...de}=z(`Tooltip`,Bv,n),{dir:fe}=Ji(),pe=(0,b.useRef)(null),me=zv({position:wl(fe,i),closeDelay:c,openDelay:s,onPositionChange:l,opened:u,defaultOpened:d,events:k,arrowRef:pe,arrowOffset:C,offset:typeof E==`number`?E+(x?S/2:0):E,positionDependencies:[...M,ue??r],inline:ee,strategy:oe,middlewares:se});(0,b.useEffect)(()=>{let e=ue instanceof HTMLElement?ue:typeof ue==`string`?document.querySelector(ue):ue?.current||null;e&&me.reference(e)},[ue,me]);let he=R({name:`Tooltip`,props:n,classes:Dv,className:y,style:v,classNames:h,styles:g,unstyled:_,attributes:le,rootSelector:`tooltip`,vars:re,varsResolver:Vv}),ge=On(r);if(!ue&&!ge)throw Error(`[@mantine/core] Tooltip component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported`);if(ue){let e=Ev(D,{duration:100,transition:`fade`});return(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(Nl,{...ie,withinPortal:f,children:(0,L.jsx)(zl,{...e,keepMounted:ne,mounted:!j&&!!me.opened,duration:me.isGroupPhase?10:e.duration,children:e=>(0,L.jsxs)(B,{...de,"data-fixed":oe===`fixed`||void 0,variant:te,mod:[{multiline:O},ae],...me.getFloatingProps({ref:me.floating,className:he(`tooltip`).className,style:{...he(`tooltip`).style,...e,zIndex:A,top:me.y??0,left:me.x??0}}),children:[o,(0,L.jsx)(Cl,{ref:pe,arrowX:me.arrowX,arrowY:me.arrowY,visible:x,position:me.placement,arrowSize:S,arrowOffset:C,arrowRadius:w,arrowPosition:T,...he(`arrow`)})]})})})})}let _e=ge.props,ve=nn(me.reference,wn(ge),t),ye=Ev(D,{duration:100,transition:`fade`});return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nl,{...ie,withinPortal:f,children:(0,L.jsx)(zl,{...ye,keepMounted:ne,mounted:!j&&!!me.opened,duration:me.isGroupPhase?10:ye.duration,children:e=>(0,L.jsxs)(B,{...de,"data-fixed":oe===`fixed`||void 0,variant:te,mod:[{multiline:O},ae],...me.getFloatingProps({ref:me.floating,className:he(`tooltip`).className,style:{...he(`tooltip`).style,...e,zIndex:A,top:me.y??0,left:me.x??0}}),children:[o,(0,L.jsx)(Cl,{ref:pe,arrowX:me.arrowX,arrowY:me.arrowY,visible:x,position:me.placement,arrowSize:S,arrowOffset:C,arrowRadius:w,arrowPosition:T,...he(`arrow`)})]})})}),(0,b.cloneElement)(ge,me.getReferenceProps({onClick:N,onMouseEnter:P,onMouseLeave:F,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,..._e,className:jn(y,_e.className),[a]:ve}))]})});Hv.classes=Dv,Hv.displayName=`@mantine/core/Tooltip`,Hv.Floating=jv,Hv.Group=Iv;function Uv({size:e,thickness:t,sum:n,value:r,root:i,offset:a}){let o=(e*.9-t*2)/2,s=Math.PI*o*2/100,c=i||r===void 0?`${(100-n)*s}, ${n*s}`:`${r*s}, ${(100-r)*s}`;return{strokeWidth:Number.isNaN(t)?12:t,cx:e/2||0,cy:e/2||0,r:o||0,transform:i?`scale(1, -1) translate(0, -${e})`:void 0,strokeDasharray:c,strokeDashoffset:i?0:a||0}}function Wv({size:e,value:t,offset:n,sum:r,thickness:i,root:a,color:o,lineRoundCaps:s,tooltip:c,getStyles:l,display:u,...d}){let f=xr();return(0,L.jsx)(Hv.Floating,{disabled:!c,label:c,children:(0,L.jsx)(B,{component:`circle`,...d,...l(`curve`),__vars:{"--curve-color":o?ir(o,f):void 0},fill:`none`,strokeLinecap:s?`round`:`butt`,...Uv({sum:r,size:e,thickness:i,value:t,offset:n,root:a})})})}Wv.displayName=`@mantine/core/Curve`;function Gv({size:e,thickness:t,sections:n,renderRoundedLineCaps:r,rootColor:i}){let a=n.reduce((e,t)=>e+t.value,0),o=Math.PI*((e*.9-t*2)/2)*2,s=o,c=[],l=[];for(let e=0;e<n.length;e+=1)c.push({sum:a,offset:s,data:n[e],root:!1}),s-=n[e].value/100*o;if(c.push({sum:a,offset:s,data:{color:i},root:!0}),l.push({...c[c.length-1],lineRoundCaps:!1}),c.length>2){l.push({...c[0],lineRoundCaps:r}),l.push({...c[c.length-2],lineRoundCaps:r});for(let e=1;e<=c.length-3;e+=1)l.push({...c[e],lineRoundCaps:!1})}else l.push({...c[0],lineRoundCaps:r});return l}var Kv={root:`m_b32e4812`,svg:`m_d43b5134`,curve:`m_b1ca1fbf`,label:`m_b23f9dc4`};function qv(e,t){return Math.min(e||12,(t||120)/4)}var Jv={size:120,thickness:12},Yv=kn((e,{size:t,thickness:n,transitionDuration:r})=>({root:{"--rp-size":I(t),"--rp-label-offset":I(n*2),"--rp-transition-duration":r?`${r}ms`:void 0}})),Xv=V((e,t)=>{let n=z(`RingProgress`,Jv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,label:l,sections:u,size:d,thickness:f,roundCaps:p,rootColor:m,transitionDuration:h,attributes:g,..._}=n,v=R({name:`RingProgress`,classes:Kv,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:g,vars:c,varsResolver:Yv}),y=qv(f,d),x=Gv({size:d,thickness:y,sections:u,renderRoundedLineCaps:p,rootColor:m}).map(({data:e,sum:t,root:n,lineRoundCaps:r,offset:i},a)=>(0,b.createElement)(Wv,{...e,key:a,size:d,thickness:y,sum:t,offset:i,color:e?.color,root:n,lineRoundCaps:r,getStyles:v}));return(0,L.jsxs)(B,{...v(`root`),size:d,ref:t,..._,children:[(0,L.jsx)(`svg`,{...v(`svg`),children:x}),l&&(0,L.jsx)(`div`,{...v(`label`),children:l})]})});Xv.classes=Kv,Xv.displayName=`@mantine/core/RingProgress`;var Zv={root:`m_cf365364`,indicator:`m_9e182ccd`,label:`m_1738fcb2`,input:`m_1714d588`,control:`m_69686b9b`,innerLabel:`m_78882f40`},Qv={withItemsBorders:!0},$v=kn((e,{radius:t,color:n,transitionDuration:r,size:i,transitionTimingFunction:a})=>({root:{"--sc-radius":t===void 0?void 0:pt(t),"--sc-color":n?ir(n,e):void 0,"--sc-shadow":n?void 0:`var(--mantine-shadow-xs)`,"--sc-transition-duration":r===void 0?void 0:`${r}ms`,"--sc-transition-timing-function":a,"--sc-padding":dt(i,`sc-padding`),"--sc-font-size":mt(i)}})),ey=V((e,t)=>{let n=z(`SegmentedControl`,Qv,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,data:l,value:u,defaultValue:d,onChange:f,size:p,name:m,disabled:h,readOnly:g,fullWidth:_,orientation:v,radius:y,color:x,transitionDuration:S,transitionTimingFunction:C,variant:w,autoContrast:T,withItemsBorders:E,mod:D,attributes:O,...k}=n,A=R({name:`SegmentedControl`,props:n,classes:Zv,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:O,vars:c,varsResolver:$v}),j=xr(),M=l.map(e=>typeof e==`string`?{label:e,value:e}:e),N=Sn(),[P,F]=(0,b.useState)(Ct()),[ee,te]=(0,b.useState)(null),[ne,re]=(0,b.useState)({}),ie=(e,t)=>{ne[t]=e,re(ne)},[ae,oe]=rn({value:u,defaultValue:d,finalValue:Array.isArray(l)?M.find(e=>!e.disabled)?.value??l[0]?.value??null:null,onChange:f}),se=Qt(m),ce=M.map(e=>(0,b.createElement)(B,{...A(`control`),mod:{active:ae===e.value,orientation:v},key:e.value},(0,b.createElement)(`input`,{...A(`input`),disabled:h||e.disabled,type:`radio`,name:se,value:e.value,id:`${se}-${e.value}`,checked:ae===e.value,onChange:()=>!g&&oe(e.value),"data-focus-ring":j.focusRing,key:`${e.value}-input`}),(0,b.createElement)(B,{component:`label`,...A(`label`),mod:{active:ae===e.value&&!(h||e.disabled),disabled:h||e.disabled,"read-only":g},htmlFor:`${se}-${e.value}`,ref:t=>ie(t,e.value),__vars:{"--sc-label-color":x===void 0?void 0:Er({color:x,theme:j,autoContrast:T})},key:`${e.value}-label`},(0,L.jsx)(`span`,{...A(`innerLabel`),children:e.label})))),le=nn(t,e=>te(e));return dn(()=>{F(Ct())},[l.length]),l.length===0?null:(0,L.jsxs)(B,{...A(`root`),variant:w,size:p,ref:le,mod:[{"full-width":_,orientation:v,initialized:N,"with-items-borders":E},D],...k,role:`radiogroup`,"data-disabled":h,children:[typeof ae==`string`&&(0,L.jsx)(xd,{target:ne[ae],parent:ee,component:`span`,transitionDuration:`var(--sc-transition-duration)`,...A(`indicator`)},P),ce]})});ey.classes=Zv,ey.displayName=`@mantine/core/SegmentedControl`;var ty={container:`m_925c2d2c`,root:`m_2415a157`};function ny({spacing:e,verticalSpacing:t,cols:n,selector:r}){let i=xr(),a=t===void 0?e:t,o=Ye({"--sg-spacing-x":ft(bt(e)),"--sg-spacing-y":ft(bt(a)),"--sg-cols":bt(n)?.toString()}),s=Be(i.breakpoints).reduce((t,r)=>(t[r]||(t[r]={}),typeof e==`object`&&e[r]!==void 0&&(t[r][`--sg-spacing-x`]=ft(e[r])),typeof a==`object`&&a[r]!==void 0&&(t[r][`--sg-spacing-y`]=ft(a[r])),typeof n==`object`&&n[r]!==void 0&&(t[r][`--sg-cols`]=n[r]),t),{});return(0,L.jsx)(di,{styles:o,media:yt(Be(s),i.breakpoints).filter(e=>Be(s[e.value]).length>0).map(e=>({query:`(min-width: ${i.breakpoints[e.value]})`,styles:s[e.value]})),selector:r})}function ry(e){return typeof e==`object`&&e?Be(e):[]}function iy(e){return e.sort((e,t)=>Ge(e)-Ge(t))}function ay({spacing:e,verticalSpacing:t,cols:n}){return iy(Array.from(new Set([...ry(e),...ry(t),...ry(n)])))}function oy({spacing:e,verticalSpacing:t,cols:n,selector:r}){let i=t===void 0?e:t,a=Ye({"--sg-spacing-x":ft(bt(e)),"--sg-spacing-y":ft(bt(i)),"--sg-cols":bt(n)?.toString()}),o=ay({spacing:e,verticalSpacing:t,cols:n}),s=o.reduce((t,r)=>(t[r]||(t[r]={}),typeof e==`object`&&e[r]!==void 0&&(t[r][`--sg-spacing-x`]=ft(e[r])),typeof i==`object`&&i[r]!==void 0&&(t[r][`--sg-spacing-y`]=ft(i[r])),typeof n==`object`&&n[r]!==void 0&&(t[r][`--sg-cols`]=n[r]),t),{});return(0,L.jsx)(di,{styles:a,container:o.map(e=>({query:`simple-grid (min-width: ${e})`,styles:s[e]})),selector:r})}var sy={cols:1,spacing:`md`,type:`media`},cy=V((e,t)=>{let n=z(`SimpleGrid`,sy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,cols:l,verticalSpacing:u,spacing:d,type:f,attributes:p,...m}=n,h=R({name:`SimpleGrid`,classes:ty,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:p,vars:c}),g=Fi();return f===`container`?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(oy,{...n,selector:`.${g}`}),(0,L.jsx)(`div`,{...h(`container`),children:(0,L.jsx)(B,{ref:t,...h(`root`,{className:g}),...m})})]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ny,{...n,selector:`.${g}`}),(0,L.jsx)(B,{ref:t,...h(`root`,{className:g}),...m})]})});cy.classes=ty,cy.displayName=`@mantine/core/SimpleGrid`;var ly=V((e,t)=>{let{w:n,h:r,miw:i,mih:a,...o}=z(`Space`,null,e);return(0,L.jsx)(B,{ref:t,...o,w:n,miw:i??n,h:r,mih:a??r})});ly.displayName=`@mantine/core/Space`;var uy={root:`m_6d731127`},dy={gap:`md`,align:`stretch`,justify:`flex-start`},fy=kn((e,{gap:t,align:n,justify:r})=>({root:{"--stack-gap":ft(t),"--stack-align":n,"--stack-justify":r}})),K=V((e,t)=>{let n=z(`Stack`,dy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,align:l,justify:u,gap:d,variant:f,attributes:p,...m}=n;return(0,L.jsx)(B,{ref:t,...R({name:`Stack`,props:n,classes:uy,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:p,vars:c,varsResolver:fy})(`root`),variant:f,...m})});K.classes=uy,K.displayName=`@mantine/core/Stack`;var[py,my]=$e(`Stepper component was not found in tree`),hy={root:`m_cbb4ea7e`,steps:`m_aaf89d0b`,separator:`m_2a371ac9`,content:`m_78da155d`,step:`m_cbb57068`,"step--horizontal":`m_f56b1e2c`,"step--vertical":`m_833edb7e`,verticalSeparator:`m_6496b3f3`,stepWrapper:`m_818e70b`,stepIcon:`m_1959ad01`,stepCompletedIcon:`m_a79331dc`,stepBody:`m_1956aa2a`,stepLabel:`m_12051f6c`,stepDescription:`m_164eea74`},gy=()=>null;gy.displayName=`@mantine/core/StepperCompleted`;var _y=(e,t)=>typeof e==`function`?(0,L.jsx)(e,{step:t||0}):e,vy={withIcon:!0,allowStepClick:!0,iconPosition:`left`},yy=V((e,t)=>{let{classNames:n,className:r,style:i,styles:a,vars:o,step:s,state:c,color:l,icon:u,completedIcon:d,progressIcon:f,label:p,description:m,withIcon:h,iconSize:g,loading:_,allowStepClick:v,allowStepSelect:y,iconPosition:b,orientation:x,mod:S,...C}=z(`StepperStep`,vy,e),w=my(),T=xr(),E={classNames:n,styles:a},D=c===`stepCompleted`?null:c===`stepProgress`?f:u,O={"data-progress":c===`stepProgress`||void 0,"data-completed":c===`stepCompleted`||void 0};return(0,L.jsxs)(pl,{...w.getStyles(`step`,{className:r,style:i,variant:w.orientation,...E}),mod:[{"icon-position":b||w.iconPosition,"allow-click":v},S],ref:t,...O,...C,__vars:{"--step-color":l?ir(l,T):void 0},tabIndex:v?0:-1,children:[h&&(0,L.jsxs)(`span`,{...w.getStyles(`stepWrapper`,E),children:[(0,L.jsxs)(`span`,{...w.getStyles(`stepIcon`,E),...O,children:[(0,L.jsx)(zl,{mounted:c===`stepCompleted`,transition:`pop`,duration:200,children:e=>(0,L.jsx)(`span`,{...w.getStyles(`stepCompletedIcon`,{style:e,...E}),children:_?(0,L.jsx)(su,{color:`var(--mantine-color-white)`,size:`calc(var(--stepper-icon-size) / 2)`,...w.getStyles(`stepLoader`,E)}):_y(d,s)||(0,L.jsx)(ep,{size:`60%`})})}),c===`stepCompleted`?null:(0,L.jsx)(`span`,{children:_?(0,L.jsx)(su,{...w.getStyles(`stepLoader`,E),size:`calc(var(--stepper-icon-size) / 2)`,color:l}):_y(D||u,s)})]}),x===`vertical`&&(0,L.jsx)(`span`,{...w.getStyles(`verticalSeparator`,E),"data-active":c===`stepCompleted`||void 0})]}),(p||m)&&(0,L.jsxs)(`span`,{...w.getStyles(`stepBody`,E),"data-orientation":w.orientation,"data-icon-position":b||w.iconPosition,children:[p&&(0,L.jsx)(`span`,{...w.getStyles(`stepLabel`,E),children:_y(p,s)}),m&&(0,L.jsx)(`span`,{...w.getStyles(`stepDescription`,E),children:_y(m,s)})]})]})});yy.classes=hy,yy.displayName=`@mantine/core/StepperStep`;var by={orientation:`horizontal`,iconPosition:`left`,allowNextStepsSelect:!0,wrap:!0},xy=kn((e,{color:t,iconSize:n,size:r,contentPadding:i,radius:a,autoContrast:o})=>({root:{"--stepper-color":t?ir(t,e):void 0,"--stepper-icon-color":ai(o,e)?Er({color:t,theme:e,autoContrast:o}):void 0,"--stepper-icon-size":n===void 0?dt(r,`stepper-icon-size`):I(n),"--stepper-content-padding":ft(i),"--stepper-radius":a===void 0?void 0:pt(a),"--stepper-fz":mt(r),"--stepper-spacing":ft(r)}})),Sy=V((e,t)=>{let n=z(`Stepper`,by,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,children:l,onStepClick:u,active:d,icon:f,completedIcon:p,progressIcon:m,color:h,iconSize:g,contentPadding:_,orientation:v,iconPosition:y,size:x,radius:S,allowNextStepsSelect:C,wrap:w,autoContrast:T,attributes:E,...D}=n,O=R({name:`Stepper`,classes:hy,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:E,vars:c,varsResolver:xy}),k=b.Children.toArray(l),A=k.filter(e=>e.type!==gy),j=k.find(e=>e.type===gy),M=A.reduce((e,t,n)=>{let r=d===n?`stepProgress`:d>n?`stepCompleted`:`stepInactive`,i=typeof u==`function`?typeof t.props.allowStepSelect==`boolean`?t.props.allowStepSelect:r===`stepCompleted`||C:!1;return e.push((0,b.cloneElement)(t,{icon:t.props.icon||f||n+1,key:n,step:n,state:r,onClick:()=>i&&u?.(n),allowStepClick:i,completedIcon:t.props.completedIcon||p,progressIcon:t.props.progressIcon||m,color:t.props.color||h,iconSize:g,iconPosition:t.props.iconPosition||y,orientation:v})),v===`horizontal`&&n!==A.length-1&&e.push((0,b.createElement)(`div`,{...O(`separator`),"data-active":n<d||void 0,"data-orientation":v,key:`separator-${n}`})),e},[]),N=A[d]?.props?.children,P=j?.props?.children,F=d>A.length-1?P:N;return(0,L.jsx)(py,{value:{getStyles:O,orientation:v,iconPosition:y},children:(0,L.jsxs)(B,{...O(`root`),ref:t,size:x,...D,children:[(0,L.jsx)(B,{...O(`steps`),mod:{orientation:v,"icon-position":y,wrap:w&&v!==`vertical`},children:M}),F&&(0,L.jsx)(`div`,{...O(`content`),children:F})]})})});Sy.classes=hy,Sy.displayName=`@mantine/core/Stepper`,Sy.Completed=gy,Sy.Step=yy;var Cy={root:`m_5f93f3bb`,input:`m_926b4011`,track:`m_9307d992`,thumb:`m_93039a1d`,trackLabel:`m_8277e082`},wy=(0,b.createContext)(null),Ty=wy.Provider,Ey=()=>(0,b.useContext)(wy),Dy=V((e,t)=>{let{value:n,defaultValue:r,onChange:i,size:a,wrapperProps:o,children:s,readOnly:c,disabled:l,...u}=z(`SwitchGroup`,null,e),[d,f]=rn({value:n,defaultValue:r,finalValue:[],onChange:i});return(0,L.jsx)(Ty,{value:{value:d,onChange:e=>{let t=e.currentTarget.value;!c&&f(d.includes(t)?d.filter(e=>e!==t):[...d,t])},size:a,disabled:l},children:(0,L.jsx)(ud.Wrapper,{size:a,ref:t,...o,...u,labelElement:`div`,__staticSelector:`SwitchGroup`,children:(0,L.jsx)(Qf,{role:`group`,children:s})})})});Dy.classes=ud.Wrapper.classes,Dy.displayName=`@mantine/core/SwitchGroup`;var Oy={labelPosition:`right`,withThumbIndicator:!0},ky=kn((e,{radius:t,color:n,size:r})=>({root:{"--switch-radius":t===void 0?void 0:pt(t),"--switch-height":dt(r,`switch-height`),"--switch-width":dt(r,`switch-width`),"--switch-thumb-size":dt(r,`switch-thumb-size`),"--switch-label-font-size":dt(r,`switch-label-font-size`),"--switch-track-label-padding":dt(r,`switch-track-label-padding`),"--switch-color":n?ir(n,e):void 0}})),Ay=V((e,t)=>{let n=z(`Switch`,Oy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,color:l,label:u,offLabel:d,onLabel:f,id:p,size:m,radius:h,wrapperProps:g,thumbIcon:_,checked:v,defaultChecked:y,onChange:b,labelPosition:x,description:S,error:C,disabled:w,variant:T,rootRef:E,mod:D,withThumbIndicator:O,attributes:k,...A}=n,j=Ey(),M=m||j?.size,N=R({name:`Switch`,props:n,classes:Cy,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:k,vars:c,varsResolver:ky}),{styleProps:P,rest:F}=fi(A),ee=Qt(p),te={checked:j?.value.includes(F.value)??v,onChange:e=>{j?.onChange(e),b?.(e)},disabled:j?.disabled??w},[ne,re]=rn({value:te.checked??v,defaultValue:y,finalValue:!1});return(0,L.jsxs)(Vf,{...N(`root`),__staticSelector:`Switch`,__stylesApiProps:n,id:ee,size:M,labelPosition:x,label:u,description:S,error:C,disabled:te.disabled,bodyElement:`label`,labelElement:`span`,classNames:r,styles:o,unstyled:s,"data-checked":te.checked,variant:T,ref:E,mod:D,inert:F.inert,...P,...g,children:[(0,L.jsx)(`input`,{...F,...te,checked:ne,"data-checked":te.checked,onChange:e=>{te.onChange?.(e),re(e.currentTarget.checked)},id:ee,ref:t,type:`checkbox`,role:`switch`,inert:F.inert,...N(`input`)}),(0,L.jsxs)(B,{"aria-hidden":`true`,component:`span`,mod:{error:C,"label-position":x,"without-labels":!f&&!d},...N(`track`),children:[(0,L.jsx)(B,{component:`span`,mod:{"reduce-motion":!0,"with-thumb-indicator":O&&!_},...N(`thumb`),children:_}),(0,L.jsx)(`span`,{...N(`trackLabel`),children:ne?f:d})]})]})});Ay.classes={...Cy,...Bf},Ay.displayName=`@mantine/core/Switch`,Ay.Group=Dy;var[jy,My]=$e(`Table component was not found in the tree`),Ny={table:`m_b23fa0ef`,th:`m_4e7aa4f3`,tr:`m_4e7aa4fd`,td:`m_4e7aa4ef`,tbody:`m_b2404537`,thead:`m_b242d975`,caption:`m_9e5a3ac7`,scrollContainer:`m_a100c15`,scrollContainerInner:`m_62259741`};function Py(e,t){if(!t)return;let n={};return t.columnBorder&&e.withColumnBorders&&(n[`data-with-column-border`]=!0),t.rowBorder&&e.withRowBorders&&(n[`data-with-row-border`]=!0),t.striped&&e.striped&&(n[`data-striped`]=e.striped),t.highlightOnHover&&e.highlightOnHover&&(n[`data-hover`]=!0),t.captionSide&&e.captionSide&&(n[`data-side`]=e.captionSide),t.stickyHeader&&e.stickyHeader&&(n[`data-sticky`]=!0),n}function Fy(e,t){let n=`Table${e.charAt(0).toUpperCase()}${e.slice(1)}`,r=V((r,i)=>{let a=z(n,{},r),{classNames:o,className:s,style:c,styles:l,...u}=a,d=My();return(0,L.jsx)(B,{component:e,ref:i,...Py(d,t),...d.getStyles(e,{className:s,classNames:o,style:c,styles:l,props:a}),...u})});return r.displayName=`@mantine/core/${n}`,r.classes=Ny,r}var Iy=Fy(`th`,{columnBorder:!0}),Ly=Fy(`td`,{columnBorder:!0}),Ry=Fy(`tr`,{rowBorder:!0,striped:!0,highlightOnHover:!0}),zy=Fy(`thead`,{stickyHeader:!0}),By=Fy(`tbody`),Vy=Fy(`tfoot`),Hy=Fy(`caption`,{captionSide:!0});function Uy({data:e}){return(0,L.jsxs)(L.Fragment,{children:[e.caption&&(0,L.jsx)(Hy,{children:e.caption}),e.head&&(0,L.jsx)(zy,{children:(0,L.jsx)(Ry,{children:e.head.map((e,t)=>(0,L.jsx)(Iy,{children:e},t))})}),e.body&&(0,L.jsx)(By,{children:e.body.map((e,t)=>(0,L.jsx)(Ry,{children:e.map((e,t)=>(0,L.jsx)(Ly,{children:e},t))},t))}),e.foot&&(0,L.jsx)(Vy,{children:(0,L.jsx)(Ry,{children:e.foot.map((e,t)=>(0,L.jsx)(Iy,{children:e},t))})})]})}Uy.displayName=`@mantine/core/TableDataRenderer`;var Wy={type:`scrollarea`},Gy=kn((e,{minWidth:t,maxHeight:n,type:r})=>({scrollContainer:{"--table-min-width":I(t),"--table-max-height":I(n),"--table-overflow":r===`native`?`auto`:void 0}})),Ky=V((e,t)=>{let n=z(`TableScrollContainer`,Wy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,children:l,minWidth:u,maxHeight:d,type:f,scrollAreaProps:p,attributes:m,...h}=n,g=R({name:`TableScrollContainer`,classes:Ny,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:m,vars:c,varsResolver:Gy,rootSelector:`scrollContainer`});return(0,L.jsx)(B,{component:f===`scrollarea`?ll:`div`,...f===`scrollarea`?d?{offsetScrollbars:`xy`,...p}:{offsetScrollbars:`x`,...p}:{},ref:t,...g(`scrollContainer`),...h,children:(0,L.jsx)(`div`,{...g(`scrollContainerInner`),children:l})})});Ky.classes=Ny,Ky.displayName=`@mantine/core/TableScrollContainer`;var qy={withRowBorders:!0,verticalSpacing:7},Jy=kn((e,{layout:t,captionSide:n,horizontalSpacing:r,verticalSpacing:i,borderColor:a,stripedColor:o,highlightOnHoverColor:s,striped:c,highlightOnHover:l,stickyHeaderOffset:u,stickyHeader:d})=>({table:{"--table-layout":t,"--table-caption-side":n,"--table-horizontal-spacing":ft(r),"--table-vertical-spacing":ft(i),"--table-border-color":a?ir(a,e):void 0,"--table-striped-color":c&&o?ir(o,e):void 0,"--table-highlight-on-hover-color":l&&s?ir(s,e):void 0,"--table-sticky-header-offset":d?I(u):void 0}})),q=V((e,t)=>{let n=z(`Table`,qy,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,horizontalSpacing:l,verticalSpacing:u,captionSide:d,stripedColor:f,highlightOnHoverColor:p,striped:m,highlightOnHover:h,withColumnBorders:g,withRowBorders:_,withTableBorder:v,borderColor:y,layout:b,variant:x,data:S,children:C,stickyHeader:w,stickyHeaderOffset:T,mod:E,tabularNums:D,attributes:O,...k}=n,A=R({name:`Table`,props:n,className:i,style:a,classes:Ny,classNames:r,styles:o,unstyled:s,attributes:O,rootSelector:`table`,vars:c,varsResolver:Jy});return(0,L.jsx)(jy,{value:{getStyles:A,stickyHeader:w,striped:m===!0?`odd`:m||void 0,highlightOnHover:h,withColumnBorders:g,withRowBorders:_,captionSide:d||`bottom`},children:(0,L.jsx)(B,{component:`table`,variant:x,ref:t,mod:[{"data-with-table-border":v,"data-tabular-nums":D},E],...A(`table`),...k,children:C||!!S&&(0,L.jsx)(Uy,{data:S})})})});q.classes=Ny,q.displayName=`@mantine/core/Table`,q.Td=Ly,q.Th=Iy,q.Tr=Ry,q.Thead=zy,q.Tbody=By,q.Tfoot=Vy,q.Caption=Hy,q.ScrollContainer=Ky,q.DataRenderer=Uy;var[Yy,Xy]=$e(`Tabs component was not found in the tree`),Zy={root:`m_89d60db1`,"list--default":`m_576c9d4`,list:`m_89d33d6d`,tab:`m_4ec4dce6`,panel:`m_b0c91715`,tabSection:`m_fc420b1f`,tabLabel:`m_42bbd1ae`,"tab--default":`m_539e827b`,"list--outline":`m_6772fbd5`,"tab--outline":`m_b59ab47c`,"tab--pills":`m_c3381914`},Qy=V((e,t)=>{let n=z(`TabsList`,null,e),{children:r,className:i,grow:a,justify:o,classNames:s,styles:c,style:l,mod:u,...d}=n,f=Xy();return(0,L.jsx)(B,{...d,...f.getStyles(`list`,{className:i,style:l,classNames:s,styles:c,props:n,variant:f.variant}),ref:t,role:`tablist`,variant:f.variant,mod:[{grow:a,orientation:f.orientation,placement:f.orientation===`vertical`&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":o},children:r})});Qy.classes=Zy,Qy.displayName=`@mantine/core/TabsList`;var $y=V((e,t)=>{let n=z(`TabsPanel`,null,e),{children:r,className:i,value:a,classNames:o,styles:s,style:c,mod:l,keepMounted:u,...d}=n,f=Xy(),p=f.value===a,m=f.keepMounted||u||p?r:null;return(0,L.jsx)(B,{...f.getStyles(`panel`,{className:i,classNames:o,styles:s,style:[c,p?void 0:{display:`none`}],props:n}),ref:t,mod:[{orientation:f.orientation},l],role:`tabpanel`,id:f.getPanelId(a),"aria-labelledby":f.getTabId(a),...d,children:m})});$y.classes=Zy,$y.displayName=`@mantine/core/TabsPanel`;var eb=V((e,t)=>{let n=z(`TabsTab`,null,e),{className:r,children:i,rightSection:a,leftSection:o,value:s,onClick:c,onKeyDown:l,disabled:u,color:d,style:f,classNames:p,styles:m,vars:h,mod:g,tabIndex:_,...v}=n,y=xr(),{dir:b}=Ji(),x=Xy(),S=s===x.value,C=e=>{x.onChange(x.allowTabDeactivation&&s===x.value?null:s),c?.(e)},w={classNames:p,styles:m,props:n};return(0,L.jsxs)(pl,{...x.getStyles(`tab`,{className:r,style:f,variant:x.variant,...w}),disabled:u,unstyled:x.unstyled,variant:x.variant,mod:[{active:S,disabled:u,orientation:x.orientation,inverted:x.inverted,placement:x.orientation===`vertical`&&x.placement},g],ref:t,role:`tab`,id:x.getTabId(s),"aria-selected":S,tabIndex:_===void 0?S||x.value===null?0:-1:_,"aria-controls":x.getPanelId(s),onClick:C,__vars:{"--tabs-color":d?ir(d,y):void 0},onKeyDown:ot({siblingSelector:`[role="tab"]`,parentSelector:`[role="tablist"]`,activateOnFocus:x.activateTabWithKeyboard,loop:x.loop,orientation:x.orientation||`horizontal`,dir:b,onKeyDown:l}),...v,children:[o&&(0,L.jsx)(`span`,{...x.getStyles(`tabSection`,w),"data-position":`left`,children:o}),i&&(0,L.jsx)(`span`,{...x.getStyles(`tabLabel`,w),children:i}),a&&(0,L.jsx)(`span`,{...x.getStyles(`tabSection`,w),"data-position":`right`,children:a})]})});eb.classes=Zy,eb.displayName=`@mantine/core/TabsTab`;var tb=`Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value`,nb={keepMounted:!0,orientation:`horizontal`,loop:!0,activateTabWithKeyboard:!0,variant:`default`,placement:`left`},rb=kn((e,{radius:t,color:n,autoContrast:r})=>({root:{"--tabs-radius":pt(t),"--tabs-color":ir(n,e),"--tabs-text-color":ai(r,e)?Er({color:n,theme:e,autoContrast:r}):void 0}})),ib=V((e,t)=>{let n=z(`Tabs`,nb,e),{defaultValue:r,value:i,onChange:a,orientation:o,children:s,loop:c,id:l,activateTabWithKeyboard:u,allowTabDeactivation:d,variant:f,color:p,radius:m,inverted:h,placement:g,keepMounted:_,classNames:v,styles:y,unstyled:b,className:x,style:S,vars:C,autoContrast:w,mod:T,attributes:E,...D}=n,O=Qt(l),[k,A]=rn({value:i,defaultValue:r,finalValue:null,onChange:a}),j=R({name:`Tabs`,props:n,classes:Zy,className:x,style:S,classNames:v,styles:y,unstyled:b,attributes:E,vars:C,varsResolver:rb});return(0,L.jsx)(Yy,{value:{placement:g,value:k,orientation:o,id:O,loop:c,activateTabWithKeyboard:u,getTabId:tt(`${O}-tab`,tb),getPanelId:tt(`${O}-panel`,tb),onChange:A,allowTabDeactivation:d,variant:f,color:p,radius:m,inverted:h,keepMounted:_,unstyled:b,getStyles:j},children:(0,L.jsx)(B,{ref:t,id:O,variant:f,mod:[{orientation:o,inverted:o===`horizontal`&&h,placement:o===`vertical`&&g},T],...j(`root`),...D,children:s})})});ib.classes=Zy,ib.displayName=`@mantine/core/Tabs`,ib.Tab=eb,ib.Panel=$y,ib.List=Qy;var ab=V((e,t)=>(0,L.jsx)(pd,{component:`input`,ref:t,...z(`TextInput`,null,e),__staticSelector:`TextInput`}));ab.classes=pd.classes,ab.displayName=`@mantine/core/TextInput`;var ob={root:`m_7341320d`},sb=kn((e,{size:t,radius:n,variant:r,gradient:i,color:a,autoContrast:o})=>{let s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:r||`filled`,autoContrast:o});return{root:{"--ti-size":dt(t,`ti-size`),"--ti-radius":n===void 0?void 0:pt(n),"--ti-bg":a||r?s.background:void 0,"--ti-color":a||r?s.color:void 0,"--ti-bd":a||r?s.border:void 0}}}),cb=V((e,t)=>{let n=z(`ThemeIcon`,null,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,autoContrast:l,attributes:u,...d}=n;return(0,L.jsx)(B,{ref:t,...R({name:`ThemeIcon`,classes:ob,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:u,vars:c,varsResolver:sb})(`root`),...d})});cb.classes=ob,cb.displayName=`@mantine/core/ThemeIcon`;var lb=[`h1`,`h2`,`h3`,`h4`,`h5`,`h6`],ub=[`xs`,`sm`,`md`,`lg`,`xl`];function db(e,t){let n=t===void 0?`h${e}`:t;return lb.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:ub.includes(n)?{fontSize:`var(--mantine-font-size-${n})`,fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}:{fontSize:I(n),fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}}var fb={root:`m_8a5d1357`},pb={order:1},mb=kn((e,{order:t,size:n,lineClamp:r,textWrap:i})=>{let a=db(t||1,n);return{root:{"--title-fw":a.fontWeight,"--title-lh":a.lineHeight,"--title-fz":a.fontSize,"--title-line-clamp":typeof r==`number`?r.toString():void 0,"--title-text-wrap":i}}}),J=V((e,t)=>{let n=z(`Title`,pb,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,order:c,vars:l,size:u,variant:d,lineClamp:f,textWrap:p,mod:m,attributes:h,...g}=n,_=R({name:`Title`,props:n,classes:fb,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:h,vars:l,varsResolver:mb});return[1,2,3,4,5,6].includes(c)?(0,L.jsx)(B,{..._(`root`),component:`h${c}`,variant:d,ref:t,mod:[{order:c,"data-line-clamp":typeof f==`number`},m],size:u,...g}):null});J.classes=fb,J.displayName=`@mantine/core/Title`;function hb(e){let t=e,n=!1,r=new Set;return{getState(){return t},updateState(e){t=typeof e==`function`?e(t):e},setState(e){this.updateState(e),r.forEach(e=>e(t))},initialize(e){n||=(t=e,!0)},subscribe(e){return r.add(e),()=>r.delete(e)}}}function gb(e){return(0,b.useSyncExternalStore)(e.subscribe,()=>e.getState(),()=>e.getState())}function _b(e,t,n){let r=[],i=[],a={};for(let o of e){let e=o.position||t;a[e]=a[e]||0,a[e]+=1,a[e]<=n?i.push(o):r.push(o)}return{notifications:i,queue:r}}var vb=hb({notifications:[],queue:[],defaultPosition:`bottom-right`,limit:5}),yb=(e=vb)=>gb(e);function bb(e,t){let n=e.getState(),r=_b(t([...n.notifications,...n.queue]),n.defaultPosition,n.limit);e.setState({notifications:r.notifications,queue:r.queue,limit:n.limit,defaultPosition:n.defaultPosition})}function Y(e,t=vb){let n=e.id||Ct();return bb(t,t=>e.id&&t.some(t=>t.id===e.id)?t:[...t,{...e,id:n}]),n}function xb(e,t=vb){return bb(t,t=>t.filter(t=>t.id===e?(t.onClose?.(t),!1):!0)),e}function Sb(e,t=vb){return bb(t,t=>t.map(t=>t.id===e.id?{...t,...e}:t)),e.id}function Cb(e=vb){bb(e,()=>[])}function wb(e=vb){bb(e,t=>t.slice(0,e.getState().limit))}var Tb={show:Y,hide:xb,update:Sb,clean:Cb,cleanQueue:wb,updateState:bb};function Eb(e,t){return Eb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Eb(e,t)}function Db(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Eb(e,t)}var Ob=o(((e,t)=>{t.exports=`SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED`})),kb=o(((e,t)=>{var n=Ob();function r(){}function i(){}i.resetWarningCache=r,t.exports=function(){function e(e,t,r,i,a,o){if(o!==n){var s=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name=`Invariant Violation`,s}}e.isRequired=e;function t(){return e}var a={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return a.PropTypes=a,a}})),Ab=o(((e,t)=>{t.exports=kb()()})),jb={disabled:!1},Mb=b.createContext(null),Nb=function(e){return e.scrollTop},Pb=`unmounted`,Fb=`exited`,Ib=`entering`,Lb=`entered`,Rb=`exiting`,zb=function(e){Db(t,e);function t(t,n){var r=e.call(this,t,n)||this,i=n,a=i&&!i.isMounting?t.enter:t.appear,o;return r.appearStatus=null,t.in?a?(o=Fb,r.appearStatus=Ib):o=Lb:o=t.unmountOnExit||t.mountOnEnter?Pb:Fb,r.state={status:o},r.nextCallback=null,r}t.getDerivedStateFromProps=function(e,t){return e.in&&t.status===`unmounted`?{status:Fb}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(e){var t=null;if(e!==this.props){var n=this.state.status;this.props.in?n!==`entering`&&n!==`entered`&&(t=Ib):(n===`entering`||n===`entered`)&&(t=Rb)}this.updateStatus(!1,t)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var e=this.props.timeout,t=n=r=e,n,r;return e!=null&&typeof e!=`number`&&(t=e.exit,n=e.enter,r=e.appear===void 0?n:e.appear),{exit:t,enter:n,appear:r}},n.updateStatus=function(e,t){if(e===void 0&&(e=!1),t!==null)if(this.cancelNextCallback(),t===`entering`){if(this.props.unmountOnExit||this.props.mountOnEnter){var n=this.props.nodeRef?this.props.nodeRef.current:ws.default.findDOMNode(this);n&&Nb(n)}this.performEnter(e)}else this.performExit();else this.props.unmountOnExit&&this.state.status===`exited`&&this.setState({status:Pb})},n.performEnter=function(e){var t=this,n=this.props.enter,r=this.context?this.context.isMounting:e,i=this.props.nodeRef?[r]:[ws.default.findDOMNode(this),r],a=i[0],o=i[1],s=this.getTimeouts(),c=r?s.appear:s.enter;if(!e&&!n||jb.disabled){this.safeSetState({status:Lb},function(){t.props.onEntered(a)});return}this.props.onEnter(a,o),this.safeSetState({status:Ib},function(){t.props.onEntering(a,o),t.onTransitionEnd(c,function(){t.safeSetState({status:Lb},function(){t.props.onEntered(a,o)})})})},n.performExit=function(){var e=this,t=this.props.exit,n=this.getTimeouts(),r=this.props.nodeRef?void 0:ws.default.findDOMNode(this);if(!t||jb.disabled){this.safeSetState({status:Fb},function(){e.props.onExited(r)});return}this.props.onExit(r),this.safeSetState({status:Rb},function(){e.props.onExiting(r),e.onTransitionEnd(n.exit,function(){e.safeSetState({status:Fb},function(){e.props.onExited(r)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(e,t){t=this.setNextCallback(t),this.setState(e,t)},n.setNextCallback=function(e){var t=this,n=!0;return this.nextCallback=function(r){n&&(n=!1,t.nextCallback=null,e(r))},this.nextCallback.cancel=function(){n=!1},this.nextCallback},n.onTransitionEnd=function(e,t){this.setNextCallback(t);var n=this.props.nodeRef?this.props.nodeRef.current:ws.default.findDOMNode(this),r=e==null&&!this.props.addEndListener;if(!n||r){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var i=this.props.nodeRef?[this.nextCallback]:[n,this.nextCallback],a=i[0],o=i[1];this.props.addEndListener(a,o)}e!=null&&setTimeout(this.nextCallback,e)},n.render=function(){var e=this.state.status;if(e===`unmounted`)return null;var t=this.props,n=t.children;t.in,t.mountOnEnter,t.unmountOnExit,t.appear,t.enter,t.exit,t.timeout,t.addEndListener,t.onEnter,t.onEntering,t.onEntered,t.onExit,t.onExiting,t.onExited,t.nodeRef;var r=Lm(t,[`children`,`in`,`mountOnEnter`,`unmountOnExit`,`appear`,`enter`,`exit`,`timeout`,`addEndListener`,`onEnter`,`onEntering`,`onEntered`,`onExit`,`onExiting`,`onExited`,`nodeRef`]);return b.createElement(Mb.Provider,{value:null},typeof n==`function`?n(e,r):b.cloneElement(b.Children.only(n),r))},t}(b.Component);zb.contextType=Mb,zb.propTypes={};function Bb(){}zb.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Bb,onEntering:Bb,onEntered:Bb,onExit:Bb,onExiting:Bb,onExited:Bb},zb.UNMOUNTED=Pb,zb.EXITED=Fb,zb.ENTERING=Ib,zb.ENTERED=Lb,zb.EXITING=Rb;function Vb(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function Hb(e,t){var n=function(e){return t&&(0,b.isValidElement)(e)?t(e):e},r=Object.create(null);return e&&b.Children.map(e,function(e){return e}).forEach(function(e){r[e.key]=n(e)}),r}function Ub(e,t){e||={},t||={};function n(n){return n in t?t[n]:e[n]}var r=Object.create(null),i=[];for(var a in e)a in t?i.length&&(r[a]=i,i=[]):i.push(a);var o,s={};for(var c in t){if(r[c])for(o=0;o<r[c].length;o++){var l=r[c][o];s[r[c][o]]=n(l)}s[c]=n(c)}for(o=0;o<i.length;o++)s[i[o]]=n(i[o]);return s}function Wb(e,t,n){return n[t]==null?e.props[t]:n[t]}function Gb(e,t){return Hb(e.children,function(n){return(0,b.cloneElement)(n,{onExited:t.bind(null,n),in:!0,appear:Wb(n,`appear`,e),enter:Wb(n,`enter`,e),exit:Wb(n,`exit`,e)})})}function Kb(e,t,n){var r=Hb(e.children),i=Ub(t,r);return Object.keys(i).forEach(function(a){var o=i[a];if((0,b.isValidElement)(o)){var s=a in t,c=a in r,l=t[a],u=(0,b.isValidElement)(l)&&!l.props.in;c&&(!s||u)?i[a]=(0,b.cloneElement)(o,{onExited:n.bind(null,o),in:!0,exit:Wb(o,`exit`,e),enter:Wb(o,`enter`,e)}):!c&&s&&!u?i[a]=(0,b.cloneElement)(o,{in:!1}):c&&s&&(0,b.isValidElement)(l)&&(i[a]=(0,b.cloneElement)(o,{onExited:n.bind(null,o),in:l.props.in,exit:Wb(o,`exit`,e),enter:Wb(o,`enter`,e)}))}}),i}var qb=Object.values||function(e){return Object.keys(e).map(function(t){return e[t]})},Jb={component:`div`,childFactory:function(e){return e}},Yb=function(e){Db(t,e);function t(t,n){var r=e.call(this,t,n)||this;return r.state={contextValue:{isMounting:!0},handleExited:r.handleExited.bind(Vb(r)),firstRender:!0},r}var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(e,t){var n=t.children,r=t.handleExited;return{children:t.firstRender?Gb(e,r):Kb(e,n,r),firstRender:!1}},n.handleExited=function(e,t){var n=Hb(this.props.children);e.key in n||(e.props.onExited&&e.props.onExited(t),this.mounted&&this.setState(function(t){var n=Im({},t.children);return delete n[e.key],{children:n}}))},n.render=function(){var e=this.props,t=e.component,n=e.childFactory,r=Lm(e,[`component`,`childFactory`]),i=this.state.contextValue,a=qb(this.state.children).map(n);return delete r.appear,delete r.enter,delete r.exit,t===null?b.createElement(Mb.Provider,{value:i},a):b.createElement(Mb.Provider,{value:i},b.createElement(t,r,a))},t}(b.Component);Yb.propTypes={},Yb.defaultProps=Jb;var Xb=[`bottom-center`,`bottom-left`,`bottom-right`,`top-center`,`top-left`,`top-right`];function Zb(e,t){return e.reduce((e,n)=>(e[n.position||t].push(n),e),Xb.reduce((e,t)=>(e[t]=[],e),{}))}var Qb={left:`translateX(-100%)`,right:`translateX(100%)`,"top-center":`translateY(-100%)`,"bottom-center":`translateY(100%)`},$b={left:`translateX(0)`,right:`translateX(0)`,"top-center":`translateY(0)`,"bottom-center":`translateY(0)`};function ex({state:e,maxHeight:t,position:n,transitionDuration:r}){let[i,a]=n.split(`-`),o=a===`center`?`${i}-center`:a,s={opacity:0,maxHeight:t,transform:Qb[o],transitionDuration:`${r}ms, ${r}ms, ${r}ms`,transitionTimingFunction:`cubic-bezier(.51,.3,0,1.21), cubic-bezier(.51,.3,0,1.21), linear`,transitionProperty:`opacity, transform, max-height`},c={opacity:1,transform:$b[o]},l={opacity:0,maxHeight:0,transform:Qb[o]},u={entering:c,entered:c,exiting:l,exited:l};return{...s,...u[e]}}function tx(e,t){return typeof t==`number`?t:t===!1||e===!1?!1:e}var nx=(0,b.forwardRef)(({data:e,onHide:t,autoClose:n,...r},i)=>{let{autoClose:a,message:o,...s}=e,c=tx(n,e.autoClose),l=(0,b.useRef)(-1),u=()=>window.clearTimeout(l.current),d=()=>{t(e.id),u()},f=()=>{typeof c==`number`&&(l.current=window.setTimeout(d,c))};return(0,b.useEffect)(()=>{e.onOpen?.(e)},[]),(0,b.useEffect)(()=>(f(),u),[c]),(0,L.jsx)(kg,{...r,...s,onClose:d,ref:i,onMouseEnter:u,onMouseLeave:f,children:o})});nx.displayName=`@mantine/notifications/NotificationContainer`;var rx={root:`m_b37d9ac7`,notification:`m_5ed0edd0`},ix=zb,ax={position:`bottom-right`,autoClose:4e3,transitionDuration:250,containerWidth:440,notificationMaxHeight:200,limit:5,zIndex:ct(`overlay`),store:vb,withinPortal:!0},ox=kn((e,{zIndex:t,containerWidth:n})=>({root:{"--notifications-z-index":t?.toString(),"--notifications-container-width":I(n)}})),sx=V((e,t)=>{let n=z(`Notifications`,ax,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,position:l,autoClose:u,transitionDuration:d,containerWidth:f,notificationMaxHeight:p,limit:m,zIndex:h,store:g,portalProps:_,withinPortal:v,...y}=n,x=xr(),S=yb(g),C=Yt(),w=cn(),T=(0,b.useRef)({}),E=(0,b.useRef)(0),D=x.respectReducedMotion&&w?1:d,O=R({name:`Notifications`,classes:rx,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,vars:c,varsResolver:ox});(0,b.useEffect)(()=>{g?.updateState(e=>({...e,limit:m||5,defaultPosition:l}))},[m,l]),It(()=>{S.notifications.length>E.current&&setTimeout(()=>C(),0),E.current=S.notifications.length},[S.notifications]);let k=Zb(S.notifications,l),A=Xb.reduce((e,t)=>(e[t]=k[t].map(({style:e,...n})=>(0,L.jsx)(ix,{timeout:D,onEnter:()=>T.current[n.id].offsetHeight,nodeRef:{current:T.current[n.id]},children:r=>(0,L.jsx)(nx,{ref:e=>{e&&(T.current[n.id]=e)},data:n,onHide:e=>xb(e,g),autoClose:u,...O(`notification`,{style:{...ex({state:r,position:t,transitionDuration:D,maxHeight:p}),...e}})})},n.id)),e),{});return(0,L.jsxs)(Nl,{withinPortal:v,..._,children:[(0,L.jsx)(B,{...O(`root`),"data-position":`top-center`,ref:t,...y,children:(0,L.jsx)(Yb,{children:A[`top-center`]})}),(0,L.jsx)(B,{...O(`root`),"data-position":`top-left`,...y,children:(0,L.jsx)(Yb,{children:A[`top-left`]})}),(0,L.jsx)(B,{...O(`root`,{className:ze.classNames.fullWidth}),"data-position":`top-right`,...y,children:(0,L.jsx)(Yb,{children:A[`top-right`]})}),(0,L.jsx)(B,{...O(`root`,{className:ze.classNames.fullWidth}),"data-position":`bottom-right`,...y,children:(0,L.jsx)(Yb,{children:A[`bottom-right`]})}),(0,L.jsx)(B,{...O(`root`),"data-position":`bottom-left`,...y,children:(0,L.jsx)(Yb,{children:A[`bottom-left`]})}),(0,L.jsx)(B,{...O(`root`),"data-position":`bottom-center`,...y,children:(0,L.jsx)(Yb,{children:A[`bottom-center`]})})]})});sx.classes=rx,sx.displayName=`@mantine/notifications/Notifications`,sx.show=Tb.show,sx.hide=Tb.hide,sx.update=Tb.update,sx.clean=Tb.clean,sx.cleanQueue=Tb.cleanQueue,sx.updateState=Tb.updateState;var cx=class{max;cache;constructor(e=10){this.max=e,this.cache=new Map}clear(){this.cache.clear()}get(e){let t=this.cache.get(e);return t&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){this.cache.has(e)?this.cache.delete(e):this.cache.size>=this.max&&this.cache.delete(this.first()),this.cache.set(e,t)}delete(e){this.cache.delete(e)}keys(){return this.cache.keys()}first(){return this.cache.keys().next().value}},lx=class{operator;child;constructor(e,t){this.operator=e,this.child=t}toString(){return`${this.operator}(${this.child.toString()})`}},ux=class{operator;left;right;constructor(e,t,n){this.operator=e,this.left=t,this.right=n}toString(){return`(${this.left.toString()} ${this.operator} ${this.right.toString()})`}},dx=class{prefixParselets={};infixParselets={};registerInfix(e,t){return this.infixParselets[e]=t,this}registerPrefix(e,t){return this.prefixParselets[e]=t,this}prefix(e,t,n){return this.registerPrefix(e,{parse(e,r){return n(r,e.consumeAndParse(t))}})}infixLeft(e,t,n){return this.registerInfix(e,{parse(e,r,i){return n(r,i,e.consumeAndParse(t))},precedence:t})}construct(e){return new fx(e,this.prefixParselets,this.infixParselets)}},fx=class{tokens;prefixParselets;infixParselets;constructor(e,t,n){this.tokens=e,this.prefixParselets=t,this.infixParselets=n}hasMore(){return this.tokens.length>0}match(e){return this.peek()?.id===e?(this.consume(),!0):!1}consumeAndParse(e=1/0){let t=this.consume(),n=this.prefixParselets[t.id];if(!n)throw Error(`Parse error at "${t.value}" (line ${t.line}, column ${t.column}). No matching prefix parselet.`);let r=n.parse(this,t);for(;e>this.getPrecedence();){let e=this.consume();r=this.getInfixParselet(e).parse(this,r,e)}return r}getPrecedence(){let e=this.peek();if(!e)return 1/0;let t=this.getInfixParselet(e);return t?t.precedence:1/0}consume(e,t){if(!this.tokens.length)throw Error(`Cant consume unknown more tokens.`);if(e&&this.peek()?.id!==e){let t=this.peek();throw Error(`Expected ${e} but got "${t.id}" (${t.value}) at line ${t.line} column ${t.column}.`)}if(t&&this.peek()?.value!==t){let e=this.peek();throw Error(`Expected "${t}" but got "${e.value}" at line ${e.line} column ${e.column}.`)}return this.tokens.shift()}peek(){return this.tokens.length>0?this.tokens[0]:void 0}removeComments(){this.tokens=this.tokens.filter(e=>e.id!==`Comment`)}getInfixParselet(e){return this.infixParselets[e.id===`Symbol`?e.value:e.id]}},px=`http://hl7.org`,mx=`ok`,hx=`created`,gx=`gone`,_x=`not-modified`,vx=`not-found`,yx=`unauthorized`,bx=`forbidden`,xx=`accepted`,Sx={resourceType:`OperationOutcome`,id:mx,issue:[{severity:`information`,code:`informational`,details:{text:`All OK`}}]},Cx={resourceType:`OperationOutcome`,id:vx,issue:[{severity:`error`,code:`not-found`,details:{text:`Not found`}}]},wx={resourceType:`OperationOutcome`,id:yx,issue:[{severity:`error`,code:`login`,details:{text:`Unauthorized`}}]},Tx={...wx,issue:[...wx.issue,{severity:`error`,code:`expired`,details:{text:`Token expired`}}]},Ex={...wx,issue:[...wx.issue,{severity:`error`,code:`invalid`,details:{text:`Token not issued for this audience`}}]},Dx={resourceType:`OperationOutcome`,id:bx,issue:[{severity:`error`,code:`forbidden`,details:{text:`Forbidden`}}]};function Ox(e,t){return{resourceType:`OperationOutcome`,issue:[{severity:`error`,code:`invalid`,details:{text:e},...t?{expression:[t]}:void 0}]}}function kx(e){return{resourceType:`OperationOutcome`,issue:[{severity:`error`,code:`structure`,details:{text:e}}]}}function Ax(e){return{resourceType:`OperationOutcome`,issue:[{severity:`error`,code:`exception`,details:{text:`Internal server error`},diagnostics:e.toString()}]}}function jx(e){return!e||typeof e!=`object`?!1:e instanceof Error||typeof DOMException<`u`&&e instanceof DOMException?!0:Object.prototype.toString.call(e)===`[object Error]`}function Mx(e){return typeof e==`object`&&!!e&&e.resourceType===`OperationOutcome`}function Nx(e){return e.id===mx||e.id===hx||e.id===_x||e.id===xx}function Px(e){return e.id===gx}var Fx=class extends Error{outcome;constructor(e,t){super(Rx(e),t),this.name=`OperationOutcomeError`,this.outcome=e}};function Ix(e){return e instanceof Fx?e.outcome:Mx(e)?e:Ox(Lx(e))}function Lx(e){return e?typeof e==`string`?e:jx(e)?e.message:Mx(e)?Rx(e):typeof e==`object`&&`code`in e&&typeof e.code==`string`?e.code:JSON.stringify(e):`Unknown error`}function Rx(e){let t=e.issue?.map(zx)??[];return t.length>0?t.join(`; `):`Unknown error`}function zx(e){let t;return t=e.details?.text?e.diagnostics?`${e.details.text} (${e.diagnostics})`:e.details.text:e.diagnostics?e.diagnostics:`Unknown error`,e.expression?.length&&(t+=` (${e.expression.join(`, `)})`),t}function Bx(e,t){let n=t.max&&t.max===2**53-1?1/0:t.max;return{path:e,description:``,type:t.type??[],min:t.min??0,max:n??1,isArray:!!n&&n>1,constraints:[]}}function Vx(e){let t=Object.create(null);for(let[n,r]of Object.entries(e))t[n]={name:n,type:n,path:n,elements:Object.fromEntries(Object.entries(r.elements).map(([e,t])=>[e,Bx(e,t)])),constraints:[],innerTypes:[]};return t}var Hx={Element:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]}}},BackboneElement:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]}}},Address:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},use:{type:[{code:`code`}]},type:{type:[{code:`code`}]},text:{type:[{code:`string`}]},line:{max:9007199254740991,type:[{code:`string`}]},city:{type:[{code:`string`}]},district:{type:[{code:`string`}]},state:{type:[{code:`string`}]},postalCode:{type:[{code:`string`}]},country:{type:[{code:`string`}]},period:{type:[{code:`Period`}]}}},Age:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},Annotation:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},"author[x]":{type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Practitioner`,`http://hl7.org/fhir/StructureDefinition/Patient`,`http://hl7.org/fhir/StructureDefinition/RelatedPerson`,`http://hl7.org/fhir/StructureDefinition/Organization`]},{code:`string`}]},time:{type:[{code:`dateTime`}]},text:{min:1,type:[{code:`markdown`}]}}},Attachment:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},contentType:{type:[{code:`code`}]},language:{type:[{code:`code`}]},data:{type:[{code:`base64Binary`}]},url:{type:[{code:`url`}]},size:{type:[{code:`unsignedInt`}]},hash:{type:[{code:`base64Binary`}]},title:{type:[{code:`string`}]},creation:{type:[{code:`dateTime`}]}}},CodeableConcept:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},coding:{max:9007199254740991,type:[{code:`Coding`}]},text:{type:[{code:`string`}]}}},Coding:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},system:{type:[{code:`uri`}]},version:{type:[{code:`string`}]},code:{type:[{code:`code`}]},display:{type:[{code:`string`}]},userSelected:{type:[{code:`boolean`}]}}},ContactDetail:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},name:{type:[{code:`string`}]},telecom:{max:9007199254740991,type:[{code:`ContactPoint`}]}}},ContactPoint:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},system:{type:[{code:`code`}]},value:{type:[{code:`string`}]},use:{type:[{code:`code`}]},rank:{type:[{code:`positiveInt`}]},period:{type:[{code:`Period`}]}}},Contributor:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},name:{min:1,type:[{code:`string`}]},contact:{max:9007199254740991,type:[{code:`ContactDetail`}]}}},Count:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},DataRequirement:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},profile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]},"subject[x]":{type:[{code:`CodeableConcept`},{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Group`]}]},mustSupport:{max:9007199254740991,type:[{code:`string`}]},codeFilter:{max:9007199254740991,type:[{code:`DataRequirementCodeFilter`}]},dateFilter:{max:9007199254740991,type:[{code:`DataRequirementDateFilter`}]},limit:{type:[{code:`positiveInt`}]},sort:{max:9007199254740991,type:[{code:`DataRequirementSort`}]}}},DataRequirementCodeFilter:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{type:[{code:`string`}]},searchParam:{type:[{code:`string`}]},valueSet:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/ValueSet`]}]},code:{max:9007199254740991,type:[{code:`Coding`}]}}},DataRequirementDateFilter:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{type:[{code:`string`}]},searchParam:{type:[{code:`string`}]},"value[x]":{type:[{code:`dateTime`},{code:`Period`},{code:`Duration`}]}}},DataRequirementSort:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{min:1,type:[{code:`string`}]},direction:{min:1,type:[{code:`code`}]}}},Distance:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},Dosage:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},sequence:{type:[{code:`integer`}]},text:{type:[{code:`string`}]},additionalInstruction:{max:9007199254740991,type:[{code:`CodeableConcept`}]},patientInstruction:{type:[{code:`string`}]},timing:{type:[{code:`Timing`}]},"asNeeded[x]":{type:[{code:`boolean`},{code:`CodeableConcept`}]},site:{type:[{code:`CodeableConcept`}]},route:{type:[{code:`CodeableConcept`}]},method:{type:[{code:`CodeableConcept`}]},doseAndRate:{max:9007199254740991,type:[{code:`DosageDoseAndRate`}]},maxDosePerPeriod:{type:[{code:`Ratio`}]},maxDosePerAdministration:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},maxDosePerLifetime:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]}}},DosageDoseAndRate:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{type:[{code:`CodeableConcept`}]},"dose[x]":{type:[{code:`Range`},{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},"rate[x]":{type:[{code:`Ratio`},{code:`Range`},{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]}}},Duration:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},ElementDefinition:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},path:{min:1,type:[{code:`string`}]},representation:{max:9007199254740991,type:[{code:`code`}]},sliceName:{type:[{code:`string`}]},sliceIsConstraining:{type:[{code:`boolean`}]},label:{type:[{code:`string`}]},code:{max:9007199254740991,type:[{code:`Coding`}]},slicing:{type:[{code:`ElementDefinitionSlicing`}]},short:{type:[{code:`string`}]},definition:{type:[{code:`markdown`}]},comment:{type:[{code:`markdown`}]},requirements:{type:[{code:`markdown`}]},alias:{max:9007199254740991,type:[{code:`string`}]},min:{type:[{code:`unsignedInt`}]},max:{type:[{code:`string`}]},base:{type:[{code:`ElementDefinitionBase`}]},contentReference:{type:[{code:`uri`}]},type:{max:9007199254740991,type:[{code:`ElementDefinitionType`}]},"defaultValue[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]},meaningWhenMissing:{type:[{code:`markdown`}]},orderMeaning:{type:[{code:`string`}]},"fixed[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]},"pattern[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]},example:{max:9007199254740991,type:[{code:`ElementDefinitionExample`}]},"minValue[x]":{type:[{code:`date`},{code:`dateTime`},{code:`instant`},{code:`time`},{code:`decimal`},{code:`integer`},{code:`positiveInt`},{code:`unsignedInt`},{code:`Quantity`}]},"maxValue[x]":{type:[{code:`date`},{code:`dateTime`},{code:`instant`},{code:`time`},{code:`decimal`},{code:`integer`},{code:`positiveInt`},{code:`unsignedInt`},{code:`Quantity`}]},maxLength:{type:[{code:`integer`}]},condition:{max:9007199254740991,type:[{code:`id`}]},constraint:{max:9007199254740991,type:[{code:`ElementDefinitionConstraint`}]},mustSupport:{type:[{code:`boolean`}]},isModifier:{type:[{code:`boolean`}]},isModifierReason:{type:[{code:`string`}]},isSummary:{type:[{code:`boolean`}]},binding:{type:[{code:`ElementDefinitionBinding`}]},mapping:{max:9007199254740991,type:[{code:`ElementDefinitionMapping`}]}}},ElementDefinitionSlicingDiscriminator:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},path:{min:1,type:[{code:`string`}]}}},ElementDefinitionSlicing:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},discriminator:{max:9007199254740991,type:[{code:`ElementDefinitionSlicingDiscriminator`}]},description:{type:[{code:`string`}]},ordered:{type:[{code:`boolean`}]},rules:{min:1,type:[{code:`code`}]}}},ElementDefinitionBase:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},path:{min:1,type:[{code:`string`}]},min:{min:1,type:[{code:`unsignedInt`}]},max:{min:1,type:[{code:`string`}]}}},ElementDefinitionType:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},code:{min:1,type:[{code:`uri`}]},profile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`,`http://hl7.org/fhir/StructureDefinition/ImplementationGuide`]}]},targetProfile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`,`http://hl7.org/fhir/StructureDefinition/ImplementationGuide`]}]},aggregation:{max:9007199254740991,type:[{code:`code`}]},versioning:{type:[{code:`code`}]}}},ElementDefinitionExample:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},label:{min:1,type:[{code:`string`}]},"value[x]":{min:1,type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]}}},ElementDefinitionConstraint:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},key:{min:1,type:[{code:`id`}]},requirements:{type:[{code:`string`}]},severity:{min:1,type:[{code:`code`}]},human:{min:1,type:[{code:`string`}]},expression:{type:[{code:`string`}]},xpath:{type:[{code:`string`}]},source:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]}}},ElementDefinitionBinding:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},strength:{min:1,type:[{code:`code`}]},description:{type:[{code:`string`}]},valueSet:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/ValueSet`]}]}}},ElementDefinitionMapping:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},identity:{min:1,type:[{code:`id`}]},language:{type:[{code:`code`}]},map:{min:1,type:[{code:`string`}]},comment:{type:[{code:`string`}]}}},Expression:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},description:{type:[{code:`string`}]},name:{type:[{code:`id`}]},language:{min:1,type:[{code:`code`}]},expression:{type:[{code:`string`}]},reference:{type:[{code:`uri`}]}}},Extension:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},url:{min:1,type:[{code:`uri`}]},"value[x]":{type:[{code:`base64Binary`},{code:`boolean`},{code:`canonical`},{code:`code`},{code:`date`},{code:`dateTime`},{code:`decimal`},{code:`id`},{code:`instant`},{code:`integer`},{code:`markdown`},{code:`oid`},{code:`positiveInt`},{code:`string`},{code:`time`},{code:`unsignedInt`},{code:`uri`},{code:`url`},{code:`uuid`},{code:`Address`},{code:`Age`},{code:`Annotation`},{code:`Attachment`},{code:`CodeableConcept`},{code:`Coding`},{code:`ContactPoint`},{code:`Count`},{code:`Distance`},{code:`Duration`},{code:`HumanName`},{code:`Identifier`},{code:`Money`},{code:`Period`},{code:`Quantity`},{code:`Range`},{code:`Ratio`},{code:`Reference`},{code:`SampledData`},{code:`Signature`},{code:`Timing`},{code:`ContactDetail`},{code:`Contributor`},{code:`DataRequirement`},{code:`Expression`},{code:`ParameterDefinition`},{code:`RelatedArtifact`},{code:`TriggerDefinition`},{code:`UsageContext`},{code:`Dosage`},{code:`Meta`}]}}},HumanName:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},use:{type:[{code:`code`}]},text:{type:[{code:`string`}]},family:{type:[{code:`string`}]},given:{max:9007199254740991,type:[{code:`string`}]},prefix:{max:9007199254740991,type:[{code:`string`}]},suffix:{max:9007199254740991,type:[{code:`string`}]},period:{type:[{code:`Period`}]}}},Identifier:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},use:{type:[{code:`code`}]},type:{type:[{code:`CodeableConcept`}]},system:{type:[{code:`uri`}]},value:{type:[{code:`string`}]},period:{type:[{code:`Period`}]},assigner:{type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Organization`]}]}}},MarketingStatus:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},country:{min:1,type:[{code:`CodeableConcept`}]},jurisdiction:{type:[{code:`CodeableConcept`}]},status:{min:1,type:[{code:`CodeableConcept`}]},dateRange:{min:1,type:[{code:`Period`}]},restoreDate:{type:[{code:`dateTime`}]}}},Meta:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},versionId:{type:[{code:`id`}]},lastUpdated:{type:[{code:`instant`}]},source:{type:[{code:`uri`}]},profile:{max:9007199254740991,type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]},security:{max:9007199254740991,type:[{code:`Coding`}]},tag:{max:9007199254740991,type:[{code:`Coding`}]},project:{type:[{code:`uri`}]},author:{type:[{code:`Reference`}]},onBehalfOf:{type:[{code:`Reference`}]},account:{type:[{code:`Reference`}]},accounts:{max:9007199254740991,type:[{code:`Reference`}]},compartment:{max:9007199254740991,type:[{code:`Reference`}]}}},Money:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},currency:{type:[{code:`code`}]}}},Narrative:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},status:{min:1,type:[{code:`code`}]},div:{min:1,type:[{code:`xhtml`}]}}},ParameterDefinition:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},name:{type:[{code:`code`}]},use:{min:1,type:[{code:`code`}]},min:{type:[{code:`integer`}]},max:{type:[{code:`string`}]},documentation:{type:[{code:`string`}]},type:{min:1,type:[{code:`code`}]},profile:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/StructureDefinition`]}]}}},Period:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},start:{type:[{code:`dateTime`}]},end:{type:[{code:`dateTime`}]}}},Population:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},"age[x]":{type:[{code:`Range`},{code:`CodeableConcept`}]},gender:{type:[{code:`CodeableConcept`}]},race:{type:[{code:`CodeableConcept`}]},physiologicalCondition:{type:[{code:`CodeableConcept`}]}}},ProdCharacteristic:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},height:{type:[{code:`Quantity`}]},width:{type:[{code:`Quantity`}]},depth:{type:[{code:`Quantity`}]},weight:{type:[{code:`Quantity`}]},nominalVolume:{type:[{code:`Quantity`}]},externalDiameter:{type:[{code:`Quantity`}]},shape:{type:[{code:`string`}]},color:{max:9007199254740991,type:[{code:`string`}]},imprint:{max:9007199254740991,type:[{code:`string`}]},image:{max:9007199254740991,type:[{code:`Attachment`}]},scoring:{type:[{code:`CodeableConcept`}]}}},ProductShelfLife:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},identifier:{type:[{code:`Identifier`}]},type:{min:1,type:[{code:`CodeableConcept`}]},period:{min:1,type:[{code:`Quantity`}]},specialPrecautionsForStorage:{max:9007199254740991,type:[{code:`CodeableConcept`}]}}},Quantity:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},Range:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},low:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},high:{type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]}}},Ratio:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},numerator:{type:[{code:`Quantity`}]},denominator:{type:[{code:`Quantity`}]}}},Reference:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},reference:{type:[{code:`string`}]},type:{type:[{code:`uri`}]},identifier:{type:[{code:`Identifier`}]},display:{type:[{code:`string`}]}}},RelatedArtifact:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},label:{type:[{code:`string`}]},display:{type:[{code:`string`}]},citation:{type:[{code:`markdown`}]},url:{type:[{code:`url`}]},document:{type:[{code:`Attachment`}]},resource:{type:[{code:`canonical`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Resource`]}]}}},SampledData:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},origin:{min:1,type:[{code:`Quantity`,profile:[`http://hl7.org/fhir/StructureDefinition/SimpleQuantity`]}]},period:{min:1,type:[{code:`decimal`}]},factor:{type:[{code:`decimal`}]},lowerLimit:{type:[{code:`decimal`}]},upperLimit:{type:[{code:`decimal`}]},dimensions:{min:1,type:[{code:`positiveInt`}]},data:{type:[{code:`string`}]}}},Signature:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,max:9007199254740991,type:[{code:`Coding`}]},when:{min:1,type:[{code:`instant`}]},who:{min:1,type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Practitioner`,`http://hl7.org/fhir/StructureDefinition/PractitionerRole`,`http://hl7.org/fhir/StructureDefinition/RelatedPerson`,`http://hl7.org/fhir/StructureDefinition/Patient`,`http://hl7.org/fhir/StructureDefinition/Device`,`http://hl7.org/fhir/StructureDefinition/Organization`]}]},onBehalfOf:{type:[{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Practitioner`,`http://hl7.org/fhir/StructureDefinition/PractitionerRole`,`http://hl7.org/fhir/StructureDefinition/RelatedPerson`,`http://hl7.org/fhir/StructureDefinition/Patient`,`http://hl7.org/fhir/StructureDefinition/Device`,`http://hl7.org/fhir/StructureDefinition/Organization`]}]},targetFormat:{type:[{code:`code`}]},sigFormat:{type:[{code:`code`}]},data:{type:[{code:`base64Binary`}]}}},SubstanceAmount:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},"amount[x]":{type:[{code:`Quantity`},{code:`Range`},{code:`string`}]},amountType:{type:[{code:`CodeableConcept`}]},amountText:{type:[{code:`string`}]},referenceRange:{type:[{code:`SubstanceAmountReferenceRange`}]}}},SubstanceAmountReferenceRange:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},lowLimit:{type:[{code:`Quantity`}]},highLimit:{type:[{code:`Quantity`}]}}},Timing:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},modifierExtension:{max:9007199254740991,type:[{code:`Extension`}]},event:{max:9007199254740991,type:[{code:`dateTime`}]},repeat:{type:[{code:`TimingRepeat`}]},code:{type:[{code:`CodeableConcept`}]}}},TimingRepeat:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},"bounds[x]":{type:[{code:`Duration`},{code:`Range`},{code:`Period`}]},count:{type:[{code:`positiveInt`}]},countMax:{type:[{code:`positiveInt`}]},duration:{type:[{code:`decimal`}]},durationMax:{type:[{code:`decimal`}]},durationUnit:{type:[{code:`code`}]},frequency:{type:[{code:`positiveInt`}]},frequencyMax:{type:[{code:`positiveInt`}]},period:{type:[{code:`decimal`}]},periodMax:{type:[{code:`decimal`}]},periodUnit:{type:[{code:`code`}]},dayOfWeek:{max:9007199254740991,type:[{code:`code`}]},timeOfDay:{max:9007199254740991,type:[{code:`time`}]},when:{max:9007199254740991,type:[{code:`code`}]},offset:{type:[{code:`unsignedInt`}]}}},TriggerDefinition:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},type:{min:1,type:[{code:`code`}]},name:{type:[{code:`string`}]},"timing[x]":{type:[{code:`Timing`},{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/Schedule`]},{code:`date`},{code:`dateTime`}]},data:{max:9007199254740991,type:[{code:`DataRequirement`}]},condition:{type:[{code:`Expression`}]}}},UsageContext:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},code:{min:1,type:[{code:`Coding`}]},"value[x]":{min:1,type:[{code:`CodeableConcept`},{code:`Quantity`},{code:`Range`},{code:`Reference`,targetProfile:[`http://hl7.org/fhir/StructureDefinition/PlanDefinition`,`http://hl7.org/fhir/StructureDefinition/ResearchStudy`,`http://hl7.org/fhir/StructureDefinition/InsurancePlan`,`http://hl7.org/fhir/StructureDefinition/HealthcareService`,`http://hl7.org/fhir/StructureDefinition/Group`,`http://hl7.org/fhir/StructureDefinition/Location`,`http://hl7.org/fhir/StructureDefinition/Organization`]}]}}},MoneyQuantity:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},SimpleQuantity:{elements:{id:{type:[{code:`string`}]},extension:{max:9007199254740991,type:[{code:`Extension`}]},value:{type:[{code:`decimal`}]},comparator:{max:0,type:[{code:`code`}]},unit:{type:[{code:`string`}]},system:{type:[{code:`uri`}]},code:{type:[{code:`code`}]}}},IdentityProvider:{elements:{authorizeUrl:{min:1,type:[{code:`string`}]},tokenUrl:{min:1,type:[{code:`string`}]},tokenAuthMethod:{type:[{code:`code`}]},userInfoUrl:{min:1,type:[{code:`string`}]},clientId:{min:1,type:[{code:`string`}]},clientSecret:{min:1,type:[{code:`string`}]},usePkce:{type:[{code:`boolean`}]},useSubject:{type:[{code:`boolean`}]}}}};function Ux(e){return new nS(e).parse()}var Wx=Vx(Hx),Gx=Object.create(null),Kx=Object.create(null),qx={"http://hl7.org/fhir/StructureDefinition/MoneyQuantity":`MoneyQuantity`,"http://hl7.org/fhir/StructureDefinition/SimpleQuantity":`SimpleQuantity`,"http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition":`ViewDefinition`};function Jx(e){let t;return t=Kx[e],t||=Kx[e]=Object.create(null),t}function Yx(e){let t=(Array.isArray(e)?e:e.entry?.map(e=>e.resource)??[]).filter(e=>e?.resourceType===`StructureDefinition`);mw(t);for(let e of t)Xx(e)}function Xx(e){if(!e?.name)throw Error(`Failed loading StructureDefinition from bundle`);if(e.resourceType!==`StructureDefinition`)return;let t=Ux(e),n=qx[e.url],r,i;n?(r=Wx,i=n):e.url===`http://hl7.org/fhir/StructureDefinition/${e.type}`||e.url===`https://medplum.com/fhir/StructureDefinition/${e.type}`||e.type?.startsWith(`http://`)||e.type?.startsWith(`https://`)?(r=Wx,i=e.type):(r=Jx(e.url),i=e.type),r[i]=t;for(let e of t.innerTypes)e.parentType=t,r[e.name]=e;Gx[e.url]=t}function Zx(e){return!!Wx[e]}function Qx(e,t){if(t){let n=Jx(t)[e];if(n)return n}return Wx[e]}function $x(e,t){let n=Qx(e,t);if(!n)throw new Fx(Ox(`Unknown data type: `+e));return n}function eS(e){return!!Gx[e]}function tS(e){return Gx[e]}var nS=class{root;elements;elementIndex;index;resourceSchema;slicingContext;innerTypes;backboneContext;constructor(e){if(!e.snapshot?.element||e.snapshot.element.length===0)throw Error(`No snapshot defined for StructureDefinition '${e.name}'`);this.root=e.snapshot.element[0],this.elements=e.snapshot.element.slice(1),this.elementIndex=Object.create(null),this.index=0,this.resourceSchema={name:e.name,path:this.root.path,title:e.title,type:e.type,url:e.url,version:e.version,kind:e.kind,description:lS(e),elements:{},constraints:this.parseElementDefinition(this.root).constraints,innerTypes:[],summaryProperties:new Set,mandatoryProperties:new Set},this.innerTypes=[]}parse(){let e=this.next();for(;e;){if(e.sliceName)this.parseSliceStart(e);else if(e.id?.includes(`:`)){if(this.slicingContext?.current){let t=iS(e,this.slicingContext.path);this.slicingContext.current.elements[t]=this.parseElementDefinition(e)}}else{let t=this.parseElementDefinition(e);this.checkFieldEnter(e,t);let n=this.backboneContext;for(;n;){if(e.path?.startsWith(n.path+`.`)){n.type.elements[iS(e,n.path)]=t;break}n=n.parent}if(!n){let n=iS(e,this.root.path);e.isSummary&&this.resourceSchema.summaryProperties?.add(n.replace(`[x]`,``)),t.min>0&&this.resourceSchema.mandatoryProperties?.add(n.replace(`[x]`,``)),this.resourceSchema.elements[n]=t}this.checkFieldExit(e)}e=this.next()}return this.checkFieldExit(),this.innerTypes.length>0&&(this.resourceSchema.innerTypes=this.innerTypes),this.resourceSchema}checkFieldEnter(e,t){this.isInnerType(e)&&this.enterInnerType(e),this.slicingContext&&!oS(this.slicingContext.path,e?.path)&&(this.slicingContext=void 0),e.slicing&&!this.slicingContext&&this.enterSlice(e,t)}enterInnerType(e){for(;this.backboneContext&&!oS(this.backboneContext?.path,e.path);)this.innerTypes.push(this.backboneContext.type),this.backboneContext=this.backboneContext.parent;let t=_w(e);this.backboneContext={type:{name:t,type:t,path:e.path,title:e.label,description:e.definition,elements:{},constraints:this.parseElementDefinition(e).constraints,innerTypes:[]},path:e.path,parent:oS(this.backboneContext?.path,e.path)?this.backboneContext:this.backboneContext?.parent}}enterSlice(e,t){cS(e)&&!this.peek()?.sliceName||(t.slicing={discriminator:(e.slicing?.discriminator??[]).map(e=>{if(e.type!==`value`&&e.type!==`pattern`&&e.type!==`type`)throw Error(`Unsupported slicing discriminator type: ${e.type}`);return{path:e.path,type:e.type}}),slices:[],ordered:e.slicing?.ordered??!1,rule:e.slicing?.rules},this.slicingContext={field:t.slicing,path:e.path??``})}checkFieldExit(e=void 0){if(this.backboneContext&&!oS(this.backboneContext.path,e?.path))if(this.backboneContext.parent)do this.innerTypes.push(this.backboneContext.type),this.backboneContext=this.backboneContext.parent;while(this.backboneContext&&!oS(this.backboneContext.path,e?.path));else this.innerTypes.push(this.backboneContext.type),this.backboneContext=void 0}next(){let e=this.peek();if(e)return this.index++,e}peek(){let e=this.elements[this.index];if(e){if(this.elementIndex[e.path??``]=e,e.contentReference){let t=e.contentReference.slice(e.contentReference.indexOf(`#`)+1),n=this.elementIndex[t];return n?{...n,id:e.id,path:e.path,min:e.min??n.min,max:e.max??n.max,base:{path:n.base?.path??t,min:e.base?.min??n.base?.min??n.min,max:e.base?.max??n.base?.max??n.max},contentReference:e.contentReference,definition:e.definition}:void 0}return e}}isInnerType(e){let t=this.peek();return!!(oS(e?.path,t?.path)&&e.type?.some(e=>[`BackboneElement`,`Element`].includes(e.code)))}parseSliceStart(e){if(!this.slicingContext)throw Error(`Invalid slice start before discriminator: ${e.sliceName} (${e.id})`);this.slicingContext.current={...this.parseElementDefinition(e),name:e.sliceName??``,definition:e.definition,elements:{}},this.slicingContext.field.slices.push(this.slicingContext.current)}parseElementDefinitionType(e){return(e.type??[]).map(t=>{let n;return(t.code===`BackboneElement`||t.code===`Element`)&&(n=_w(e)),n||=nC(t,`http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type`)?.valueUrl,n||=t.code??``,{code:n,targetProfile:t.targetProfile,profile:t.profile}})}parseElementDefinition(e){let t=rS(e.max),n=e.base?.max?rS(e.base.max):t,r={type:`ElementDefinition`,value:e};return{description:e.definition||``,path:e.path||e.base?.path||``,min:e.min??0,max:t,isArray:n>1,constraints:(e.constraint??[]).map(e=>({key:e.key??``,severity:e.severity??`error`,expression:e.expression??``,description:e.human??``})),type:this.parseElementDefinitionType(e),fixed:sS(yS(r,`fixed[x]`)),pattern:sS(yS(r,`pattern[x]`)),binding:e.binding}}};function rS(e){return e===`*`?1/0:Number.parseInt(e,10)}function iS(e,t=``){return aS(e.path,t)}function aS(e,t){return e?t&&e.startsWith(t)?e.substring(t.length+1):e:``}function oS(e,t){return!e||!t?!1:t.startsWith(e+`.`)||t===e}function sS(e){return Array.isArray(e)&&e.length>0?e[0]:sC(e)?void 0:e}function cS(e){let t=e.slicing?.discriminator;return!!(e.type?.some(e=>e.code===`Extension`)&&t?.length===1&&t[0].type===`value`&&t[0].path===`url`)}function lS(e){let t=e.description;return t?.startsWith(`Base StructureDefinition for ${e.name} Type: `)&&(t=t.substring(`Base StructureDefinition for ${e.name} Type: `.length)),t}function uS(e,t,n){if(e===void 0)return[void 0];if(t===`$this`)return[e];let r=n?.withPath?dS:yS,[i,...a]=t.split(`.`),o=[r(e,i,n)];for(let e of a){let t=[];for(let i of o)if(Array.isArray(i))for(let a of i)t.push(r(a,e,n));else (n?.withPath&&i?.value!==void 0||!n?.withPath&&i!==void 0)&&t.push(r(i,e,n));o=t}return o}function dS(e,t,n){let r=e.path;return fS(yS(e,t,n),r,t)}function fS(e,t,n){let r=t?t+`.`:``;return e===void 0?{type:`undefined`,value:void 0,path:`${r}${n}`}:Array.isArray(e)?e.map((e,t)=>({...e,path:`${r}${n}[${t}]`})):{...e,path:`${r}${n}`}}new cx(1e3);var pS={canonical:/^\S*$/,code:/^[^\s]+( [^\s]+)*$/,date:/^(\d(\d(\d[1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2]\d|3[0-1]))?)?$/,dateTime:/^(\d(\d(\d[1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2]\d|3[0-1])(T([01]\d|2[0-3])(:[0-5]\d:([0-5]\d|60)(\.\d{1,9})?)?)?)?(Z|[+-]((0\d|1[0-3]):[0-5]\d|14:00)?)?)?$/,id:/^[A-Za-z0-9\-.]{1,64}$/,instant:/^(\d(\d(\d[1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2]\d|3[0-1])T([01]\d|2[0-3]):[0-5]\d:([0-5]\d|60)(\.\d{1,9})?(Z|[+-]((0\d|1[0-3]):[0-5]\d|14:00))$/,markdown:/^[\r\n\t\u0020-\uFFFF]+$/,oid:/^urn:oid:[0-2](\.(0|[1-9]\d*))+$/,string:/^[\r\n\t\u0020-\uFFFF]+$/,time:/^([01]\d|2[0-3]):[0-5]\d:([0-5]\d|60)(\.\d{1,9})?$/,uri:/^\S*$/,url:/^\S*$/,uuid:/^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,xhtml:/.*/};function mS(e,t,n,r){if(Array.isArray(e))return!1;let i;i=t.path===`$this`?n:(r??n.elements)[t.path];let a=n.type;switch(t.type){case`value`:case`pattern`:if(!e||!i)return!1;if(i.pattern)return pC(e,i.pattern);if(i.fixed)return uC(e,i.fixed);if(i.binding?.strength===`required`&&i.binding.valueSet)return!0;break;case`type`:return!e||!a?.length?!1:a.some(t=>t.code===e.type)}return!1}function hS(e){return[{type:X.boolean,value:e}]}function gS(e){return e==null?{type:`undefined`,value:void 0}:Number.isSafeInteger(e)?{type:X.integer,value:e}:typeof e==`number`?{type:X.decimal,value:e}:typeof e==`boolean`?{type:X.boolean,value:e}:typeof e==`string`?{type:X.string,value:e}:LS(e)?{type:X.Quantity,value:e}:Dw(e)?{type:e.resourceType,value:e}:xC(e)?{type:X.CodeableConcept,value:e}:bC(e)?{type:X.Coding,value:e}:{type:X.BackboneElement,value:e}}function _S(e){return e.length===0?!1:!!e[0].value}function vS(e,t){if(e.length!==0){if(e.length===1&&(!t||e[0].type===t))return e[0];throw Error(`Expected singleton of type ${t}, but found ${JSON.stringify(e)}`)}}function yS(e,t,n){if(!e.value)return;let r=Tw(e.type,t,n?.profileUrl);return r?bS(e,t,r):SS(e,t)}function bS(e,t,n){let r=e.value,i=n.type;if(!i||i.length===0)return;let a,o=`undefined`,s,c=n.path.lastIndexOf(`.`),l=n.path.substring(c+1),u=l,d=!1;l.endsWith(`[x]`)&&(u=l.substring(0,l.length-3),d=!0);for(let e of i){let t=u;if(d&&(t+=DC(e.code)),a=r[t],s=r[`_`+t],a!==void 0||s!==void 0){o=e.code;break}}if(s)if(Array.isArray(a)){a=a.slice();for(let e=0;e<Math.max(a.length,s.length);e++)a[e]=VS(a[e],s[e])}else if(!a&&Array.isArray(s)){a=s.slice();for(let e=0;e<s.length;e++)a[e]=VS(void 0,s[e])}else a=VS(a,s);if(!sC(a))return(o===`Element`||o===`BackboneElement`)&&(o=n.type[0].code),Array.isArray(a)?a.map(e=>xS(e,o)):xS(a,o)}function xS(e,t){return t===`Resource`&&Dw(e)&&(t=e.resourceType),{type:t,value:e}}function SS(e,t){let n=e.value;if(!n||typeof n!=`object`)return;let r;if(t in n){let e=n[t];r=Array.isArray(e)?e.map(gS):gS(e)}else{let e=t.endsWith(`[x]`)?t.substring(0,t.length-3):t;for(let t of Object.values(X)){let i=e+DC(t);if(i in n){let e=n[i];r=Array.isArray(e)?e.map(e=>({type:t,value:e})):{type:t,value:e};break}}}if(Array.isArray(r)){if(r.length===0||sC(r[0]))return}else if(sC(r))return;return r}function CS(e){let t=[];for(let n of e){let e=!1;for(let r of t)if(_S(DS(n,r))){e=!0;break}e||t.push(n)}return t}function wS(e){return hS(!_S(e))}function TS(e,t){return e.length===0||t.length===0?[]:e.length===t.length?hS(e.every((e,n)=>_S(DS(e,t[n])))):hS(!1)}function ES(e,t){return e.length===0||t.length===0?[]:e.length===t.length?hS(e.some((e,n)=>!_S(DS(e,t[n])))):hS(!0)}function DS(e,t){let n=e.value?.valueOf(),r=t.value?.valueOf();return typeof n==`number`&&typeof r==`number`?hS(Math.abs(n-r)<1e-8):LS(n)&&LS(r)?hS(RS(n,r)):hS(typeof n==`object`&&typeof r==`object`?zS(e,t):n===r)}function OS(e,t){return e.length===0&&t.length===0?hS(!0):e.length===t.length?(e.sort(AS),t.sort(AS),hS(e.every((e,n)=>_S(kS(e,t[n]))))):hS(!1)}function kS(e,t){let{type:n,value:r}=e,{type:i,value:a}=t,o=r?.valueOf(),s=a?.valueOf();return typeof o==`number`&&typeof s==`number`?hS(Math.abs(o-s)<.01):LS(o)&&LS(s)?hS(RS(o,s)):hS(n===`Coding`&&i===`Coding`?typeof o!=`object`||typeof s!=`object`?!1:o.code===s.code&&o.system===s.system:typeof o==`object`&&typeof s==`object`?zS({...o,id:void 0},{...s,id:void 0}):typeof o==`string`&&typeof s==`string`?o.toLowerCase()===s.toLowerCase():o===s)}function AS(e,t){let n=e.value?.valueOf(),r=t.value?.valueOf();return typeof n==`number`&&typeof r==`number`?n-r:typeof n==`string`&&typeof r==`string`?n.localeCompare(r):0}function jS(e,t){let{value:n}=e;if(n==null)return!1;let r=t;switch(r.startsWith(`System.`)&&(r=r.substring(7)),r.startsWith(`FHIR.`)&&(r=r.substring(5)),r){case`Boolean`:return typeof n==`boolean`;case`Decimal`:case`Integer`:return typeof n==`number`;case`Date`:return MS(n);case`DateTime`:return NS(n);case`Time`:return typeof n==`string`&&!!/^T\d/.exec(n);case`Period`:return PS(n);case`Quantity`:return LS(n);default:return e.type===r||typeof n==`object`&&n?.resourceType===r}}function MS(e){return typeof e==`string`&&!!pS.date.exec(e)}function NS(e){return typeof e==`string`&&!!pS.dateTime.exec(e)}function PS(e){return!!(e&&typeof e==`object`&&(`start`in e&&NS(e.start)||`end`in e&&NS(e.end)))}function FS(e){if(e){if(MS(e)||NS(e))return{start:IS(e,`0000-01-01T00:00:00.000`),end:IS(e,`xxxx-12-31T23:59:59.999`)};if(PS(e))return{start:e.start?IS(e.start,`0000-01-01T00:00:00.000`):void 0,end:e.end?IS(e.end,`xxxx-12-31T23:59:59.999`):void 0}}}function IS(e,t){let n=`Z`,r=Math.max(e.indexOf(`+`,10),e.indexOf(`-`,10));r>-1?(n=e.substring(r),e=e.substring(0,r)):e.endsWith(`Z`)&&(e=e.substring(0,e.length-1));let i=e+t.substring(e.length)+n;return new Date(i).toISOString()}function LS(e){return!!(e&&typeof e==`object`&&`value`in e&&typeof e.value==`number`)}function RS(e,t){return Math.abs(e.value-t.value)<.01&&(e.unit===t.unit||e.code===t.code||e.unit===t.code||e.code===t.unit)}function zS(e,t){let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n){let n=e[r],i=t[r];if(BS(n)&&BS(i)){if(!zS(n,i))return!1}else if(n!==i)return!1}return!0}function BS(e){return typeof e==`object`&&!!e}function VS(e,t){if(t){if(typeof t!=`object`)throw Error(`Primitive extension must be an object`);return HS(e??{},t)}return e}function HS(e,t){return delete t.__proto__,delete t.constructor,Object.assign(e,t)}function US(e,t){return Dw(e,t)&&`id`in e&&typeof e.id==`string`}function WS(e){let t=GS(e)??`undefined/undefined`,n=YS(e);return n===t?{reference:t}:{reference:t,display:n}}function GS(e){if(Ow(e))return e.reference;if(US(e))return`${e.resourceType}/${e.id}`}function KS(e){if(e)return Ow(e)?e.reference.split(`/`)[1]:e.id}function qS(e){if(e)if(e.accounts&&e.account){let t=e.accounts;return t.some(t=>t.reference===e.account?.reference)?t:[e.account,...t]}else return jC(e.accounts??e.account)}function JS(e){return e.resourceType===`Patient`||e.resourceType===`Practitioner`||e.resourceType===`RelatedPerson`}function YS(e){if(JS(e)){let t=XS(e);if(t)return t}if(e.resourceType===`Device`){let t=ZS(e);if(t)return t}if(e.resourceType===`MedicationRequest`&&e.medicationCodeableConcept)return sw(e.medicationCodeableConcept);if(e.resourceType===`Subscription`&&e.criteria)return e.criteria;if(e.resourceType===`User`&&e.email)return e.email;if(`name`in e&&e.name&&typeof e.name==`string`)return e.name;if(`code`in e&&e.code){let t=e.code;if(Array.isArray(t)&&(t=t[0]),xC(t))return sw(t);if(SC(t))return t.text}return GS(e)??``}function XS(e){let t=e.name;if(t&&t.length>0)return JC(t[0])}function ZS(e){let t=e.deviceName;if(t&&t.length>0)return t[0].name}function QS(e){if(!(`photo`in e))return;let t=e.photo;if(t)if(Array.isArray(t))for(let e of t){let t=$S(e);if(t)return t}else return $S(t)}function $S(e){if(e.url&&e.contentType?.startsWith(`image/`))return e.url}function eC(e,t){let n=new Date(e);n.setUTCHours(0,0,0,0);let r=t?new Date(t):new Date;r.setUTCHours(0,0,0,0);let i=n.getUTCFullYear(),a=n.getUTCMonth(),o=n.getUTCDate(),s=r.getUTCFullYear(),c=r.getUTCMonth(),l=r.getUTCDate(),u=s-i;(c<a||c===a&&l<o)&&u--;let d=s*12+c-(i*12+a);l<o&&d--;let f=Math.floor((r.getTime()-n.getTime())/(1e3*60*60*24));return{years:u,months:d,days:f}}function tC(e,t){let{years:n,months:r,days:i}=eC(e,t);return n>=2?n.toString().padStart(3,`0`)+`Y`:r>=1?r.toString().padStart(3,`0`)+`M`:i.toString().padStart(3,`0`)+`D`}function nC(e,...t){let n=e;for(let e=0;e<t.length&&n;e++)n=(n?.extension)?.find(n=>n.url===t[e]);return n}function rC(e,t){let n=iC(e);return JSON.stringify(n,null,t?2:void 0)??``}function iC(e){if(!(e==null||e===``))return typeof e==`object`?Array.isArray(e)?aC(e):oC(e):e}function aC(e){let t=e.length;if(t===0)return;let n,r=0;for(let i=0;i<t;i++){let t=e[i],a=iC(t);a!==t&&!n&&(n=Array.from(e)),a===void 0?n&&(n[i]=null):(n&&(n[i]=a),r++)}if(r!==0)return n??e}function oC(e){let t,n=0;for(let r in e){let i=e[r],a=iC(i);a!==i&&!t&&(t={...e}),a===void 0?t&&delete t[r]:(t&&(t[r]=a),n++)}if(n!==0)return t??e}function sC(e){if(e==null)return!0;let t=typeof e;return t===`string`||t===`object`?!cC(e):!1}function cC(e){if(e==null)return!1;let t=typeof e;return t===`string`&&e!==``||t===`object`&&(`length`in e&&e.length>0||Object.keys(e).length>0)}function lC(e){if(!e)return;let t=e.length-1;for(;t>=0&&sC(e[t]);)t--;return t>=0?e.slice(0,t+1):void 0}function uC(e,t,n){return e===t||sC(e)&&sC(t)?!0:sC(e)||sC(t)?!1:Array.isArray(e)&&Array.isArray(t)?dC(e,t):Array.isArray(e)||Array.isArray(t)?!1:vC(e)&&vC(t)?fC(e,t,n):!1}function dC(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!uC(e[n],t[n]))return!1;return!0}function fC(e,t,n){let r=new Set;for(let t of Object.keys(e))r.add(t);for(let e of Object.keys(t))r.add(e);n===`meta`&&(r.delete(`versionId`),r.delete(`lastUpdated`),r.delete(`author`));for(let n of r){let r=e[n],i=t[n];if(!uC(r,i,n))return!1}return!0}function pC(e,t){return sC(e)?!0:sC(t)?!1:Array.isArray(e)&&Array.isArray(t)?mC(e,t):Array.isArray(e)||Array.isArray(t)?!1:vC(e)&&vC(t)?hC(e,t):vC(e)||vC(t)?!1:e===t}function mC(e,t){return t.every(t=>e.some(e=>pC(e,t)))}function hC(e,t){return Object.entries(t).every(([t,n])=>t in e&&pC(e[t],n))}function gC(e){return e===void 0?e:JSON.parse(JSON.stringify(e))}function _C(e){return/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i.test(e)}function vC(e){return typeof e==`object`&&!!e}function yC(e){return typeof e==`string`}function bC(e){return vC(e)&&`code`in e&&typeof e.code==`string`}function xC(e){return vC(e)&&`coding`in e&&Array.isArray(e.coding)&&e.coding.every(bC)}function SC(e){return vC(e)&&`text`in e&&typeof e.text==`string`}var CC=[];for(let e=0;e<256;e++)CC.push(e.toString(16).padStart(2,`0`));function wC(e){let t=EC(e),n=new Uint8Array(t),r=Array(n.length);for(let e=0;e<n.length;e++)r[e]=CC[n[e]];return r.join(``)}function TC(e){let t=EC(e),n=new Uint8Array(t),r=Array(n.length);for(let e=0;e<n.length;e++)r[e]=String.fromCodePoint(n[e]);return window.btoa(r.join(``))}function EC(e){return ArrayBuffer.isView(e)?e.buffer:e}function DC(e){return e?e.charAt(0).toUpperCase()+e.substring(1):``}function OC(e){return e.length>0&&e.startsWith(e[0].toUpperCase())}function kC(e,t){let n=e+`.`;if(t.startsWith(n))return t.slice(n.length)}function AC(e,t){return e.coding?.find(e=>e.system===t)?.code}function jC(e){if(e!==void 0)return Array.isArray(e)?e:[e]}var MC=(e,t)=>new Promise((n,r)=>{t?.signal?.throwIfAborted();let i=setTimeout(n,e);t?.signal?.addEventListener(`abort`,()=>{clearTimeout(i),r(t.signal?.reason)},{once:!0})});function NC(e,t,n){let r=[];for(let i=0;i<n-1;i++){let n=e.indexOf(t);if(n<0)break;r.push(e.slice(0,n)),e=e.slice(n+t.length)}return r.push(e),r}function PC(e){let t,n=!1;return function(){return n||=(t=e(),!0),t}}function FC(e,t){return e?(e.push(t),e):[t]}function IC(e){return e.sort((e,t)=>e.localeCompare(t))}function LC(e){return e.endsWith(`/`)?e:e+`/`}function RC(e){return e.startsWith(`/`)?e.slice(1):e}function zC(e,t){return new URL(RC(t),LC(e.toString())).toString()}function BC(e,t){return zC(e,t).toString().replace(`http://`,`ws://`).replace(`https://`,`wss://`)}function VC(e){return typeof e==`object`&&!Array.isArray(e)&&!(e instanceof URLSearchParams)&&(e=Object.fromEntries(Object.entries(e).filter(e=>e[1]!==void 0))),new URLSearchParams(e).toString()}function HC(e,t){return e?.meta?.profile?.includes(t)||(e.meta=e.meta??{},e.meta.profile=e.meta.profile??[],e.meta.profile.push(t)),e}function UC(e,t){if(e?.meta?.profile?.includes(t)){let n=e.meta.profile.indexOf(t);e.meta.profile.splice(n,1)}return e}var WC=Object.freeze([]);function GC(e){if(!e)return``;switch(e.type){case`Address`:return qC(e.value);case`CodeableConcept`:return sw(e.value);case`Coding`:return cw(e.value);case`ContactPoint`:return e.value.value;case`HumanName`:return JC(e.value);case`Quantity`:return aw(e.value);case`Reference`:return KC(e.value);default:return e.value?.toString()??``}}function KC(e){return e?e.display??e.reference??rC(e):``}function qC(e,t){if(!e)return``;let n=[];if(e.line&&n.push(...e.line),e.city||e.state||e.postalCode){let t=[];e.city&&t.push(e.city),e.state&&t.push(e.state),e.postalCode&&t.push(e.postalCode),n.push(t.join(`, `))}return e.use&&(t?.all||t?.use)&&n.push(`[`+e.use+`]`),n.join(t?.lineSeparator??`, `).trim()}function JC(e,t){if(!e)return``;let n=[];if(e.prefix&&t?.prefix!==!1&&n.push(...e.prefix),e.given&&n.push(...e.given),e.family&&n.push(e.family),e.suffix&&t?.suffix!==!1&&n.push(...e.suffix),e.use&&(t?.all||t?.use)&&n.push(`[`+e.use+`]`),n.length===0){let t=uw(e.text);if(t)return t}return n.join(` `).trim()}function YC(e){return e instanceof Date&&!Number.isNaN(e.getTime())}function XC(e,t,n){if(!e)return``;let[r=0,i=0,a=0]=e.split(`:`).map(Number),o=new Date(Date.UTC(1970,0,1,r,i,a));return YC(o)?new Intl.DateTimeFormat(t,{hour:`numeric`,minute:`2-digit`,second:a===0?void 0:`numeric`,...n,timeZone:`UTC`}).format(o):``}function ZC(e,t,n){if(!e)return``;let r=new Date(e);return YC(r)?r.toLocaleString(t,n):``}function QC(e,t,n){return!e||!e.start&&!e.end?``:ZC(e.start,t,n)+` - `+ZC(e.end,t,n)}var $C={s:`every second`,min:`every minute`,h:`hourly`,d:`daily`,wk:`weekly`,mo:`monthly`,a:`annually`},ew={s:`second`,min:`minute`,h:`hour`,d:`day`,wk:`week`,mo:`month`,a:`year`},tw={s:`seconds`,min:`minutes`,h:`hours`,d:`days`,wk:`weeks`,mo:`months`,a:`years`};function nw(e){if(!e)return``;let t=[];return rw(t,e.repeat),e.event&&t.push(e.event.map(e=>ZC(e)).join(`, `)),DC(t.join(` `).trim())}function rw(e,t){if(!t?.periodUnit)return;let n=t.frequency??1,r=t.period??1,i=t.periodUnit;n===1&&r===1?e.push($C[i]):(n===1?e.push(`once`):e.push(n+` times`),r===1?e.push(`per `+ew[i]):e.push(`per `+r+` `+tw[i])),t.dayOfWeek&&e.push(`on `+t.dayOfWeek.map(DC).join(`, `)),t.timeOfDay&&e.push(`at `+t.timeOfDay.map(e=>XC(e)).join(`, `))}function iw(e,t,n=!1){if(n&&t===void 0)throw Error(`Precision must be specified for exclusive ranges`);let r=e?.low&&{...e.low,comparator:void 0},i=e?.high&&{...e.high,comparator:void 0};return r?.value===void 0&&i?.value===void 0?``:r?.value!==void 0&&i?.value===void 0?n&&t!==void 0?(r.value=fw(r.value,t),`> ${aw(r,t)}`):`>= ${aw(r,t)}`:r?.value===void 0&&i?.value!==void 0?n&&t!==void 0?(i.value=dw(i.value,t),`< ${aw(i,t)}`):`<= ${aw(i,t)}`:(r?.unit===i?.unit&&delete r?.unit,`${aw(r,t)} - ${aw(i,t)}`)}function aw(e,t){if(!e)return``;let n=[];return e.comparator&&(n.push(e.comparator),n.push(` `)),e.value!==void 0&&(t===void 0?n.push(e.value):n.push(e.value.toFixed(t))),e.unit&&(e.unit!==`%`&&n.at(-1)!==` `&&n.push(` `),n.push(e.unit)),n.join(``).trim()}function ow(e){return e?.value===void 0?``:e.value.toLocaleString(void 0,{style:`currency`,currency:e.currency??`USD`,currencyDisplay:`narrowSymbol`})}function sw(e){return e?uw(e.text)||(e.coding?e.coding.map(e=>cw(e)).join(`, `):``):``}function cw(e,t){let n=uw(e?.display);if(n){let r=t?uw(e?.code):void 0;return`${n}${r?` (`+r+`)`:``}`}return uw(e?.code)??``}function lw(e){if(!e)return``;let t=[];if(e.valueQuantity)t.push(aw(e.valueQuantity));else if(e.valueCodeableConcept)t.push(sw(e.valueCodeableConcept));else{let n=uw(e.valueString);n&&t.push(n)}return`component`in e&&t.push(e.component.map(e=>lw(e)).join(` / `)),t.join(` / `).trim()}function uw(e){return typeof e==`string`?e:void 0}function dw(e,t,n=1){return(pw(e,t)+n)*10**-t}function fw(e,t,n=1){return(pw(e,t)-n)*10**-t}function pw(e,t){return t===void 0?e:Math.round(e*10**t)}var X={Address:`Address`,Age:`Age`,Annotation:`Annotation`,Attachment:`Attachment`,BackboneElement:`BackboneElement`,CodeableConcept:`CodeableConcept`,Coding:`Coding`,ContactDetail:`ContactDetail`,ContactPoint:`ContactPoint`,Contributor:`Contributor`,Count:`Count`,DataRequirement:`DataRequirement`,Distance:`Distance`,Dosage:`Dosage`,Duration:`Duration`,Element:`Element`,ElementDefinition:`ElementDefinition`,Expression:`Expression`,Extension:`Extension`,HumanName:`HumanName`,Identifier:`Identifier`,MarketingStatus:`MarketingStatus`,Meta:`Meta`,Money:`Money`,MoneyQuantity:`MoneyQuantity`,Narrative:`Narrative`,ParameterDefinition:`ParameterDefinition`,Period:`Period`,Population:`Population`,ProdCharacteristic:`ProdCharacteristic`,ProductShelfLife:`ProductShelfLife`,Quantity:`Quantity`,Range:`Range`,Ratio:`Ratio`,Reference:`Reference`,RelatedArtifact:`RelatedArtifact`,SampledData:`SampledData`,Signature:`Signature`,SimpleQuantity:`SimpleQuantity`,SubstanceAmount:`SubstanceAmount`,SystemString:`http://hl7.org/fhirpath/System.String`,Timing:`Timing`,TriggerDefinition:`TriggerDefinition`,UsageContext:`UsageContext`,base64Binary:`base64Binary`,boolean:`boolean`,canonical:`canonical`,code:`code`,date:`date`,dateTime:`dateTime`,decimal:`decimal`,id:`id`,instant:`instant`,integer:`integer`,markdown:`markdown`,oid:`oid`,positiveInt:`positiveInt`,string:`string`,time:`time`,unsignedInt:`unsignedInt`,uri:`uri`,url:`url`,uuid:`uuid`,xhtml:`xhtml`};function mw(e){let t=Array.isArray(e)?e:e.entry?.map(e=>e.resource)??[];for(let e of t)e?.resourceType===`StructureDefinition`&&e.kind===`resource`&&hw(e.type)}function hw(e){let t=kw.types[e];return t||(t={searchParamsDetails:{}},kw.types[e]=t),!t.searchParams&&e!==`Binary`&&(t.searchParams={_id:{base:[e],code:`_id`,type:`token`,expression:e+`.id`},_lastUpdated:{base:[e],code:`_lastUpdated`,type:`date`,expression:e+`.meta.lastUpdated`},_compartment:{base:[e],code:`_compartment`,type:`reference`,expression:e+`.meta.compartment`},_profile:{base:[e],code:`_profile`,type:`uri`,expression:e+`.meta.profile`},_security:{base:[e],code:`_security`,type:`token`,expression:e+`.meta.security`},_source:{base:[e],code:`_source`,type:`uri`,expression:e+`.meta.source`},_tag:{base:[e],code:`_tag`,type:`token`,expression:e+`.meta.tag`}}),t}function gw(e){for(let t of e.base??WC){let n=hw(t);n.searchParams||={},n.searchParams[e.code]=e}}function _w(e){let t=e.type?.[0]?.code;return t===`BackboneElement`||t===`Element`?vw((e.base?.path??e.path)?.split(`.`)):t}function vw(e){return e.length===1?e[0]:e.map(DC).join(``)}function yw(e){return kw.types[e]?.searchParams}function bw(e,t){return kw.types[e]?.searchParams?.[t]}function xw(e){return Sw(e.replaceAll(`[x]`,``).split(`.`).pop())}function Sw(e){let t;return t=e.length<100?e.match(/[A-Z]+(?![a-z])|[A-Z]?[a-z]+|\d+/g)??[]:e.split(/(?=[A-Z])/),t.map(ww).join(` `).replace(`_`,` `).replaceAll(/\s+/g,` `)}var Cw=new Set([`CDS`,`ID`,`IP`,`PKCE`,`JWKS`,`URI`,`URL`,`OMB`,`UDI`]);function ww(e){let t=e.toUpperCase();return e===t?e:Cw.has(t)?t:t.charAt(0)+e.slice(1)}function Tw(e,t,n){let r=Qx(e,n);if(r)return Ew(r.elements,t)}function Ew(e,t){let n=e[t]??e[t+`[x]`];if(n)return n;for(let n=0;n<t.length;n++){let r=t[n];if(r>=`A`&&r<=`Z`){let r=e[t.slice(0,n)+`[x]`];if(r)return r}}}function Dw(e,t){return!(!e||typeof e!=`object`||!(`resourceType`in e)||t&&e.resourceType!==t)}function Ow(e,t){return e&&typeof e==`object`&&`reference`in e&&typeof e.reference==`string`?t?e.reference.match(RegExp(`^${t}(/|\\?)`))!==null:!0:!1}var kw={types:{}};function Aw(e){if(e.startsWith(`T`))return e+`T00:00:00.000Z`.substring(e.length);if(e.length<=10)return e;try{return new Date(e).toISOString()}catch{return e}}var jw=()=>[],Mw={empty:(e,t)=>hS(t.every(e=>sC(e.value))),hasValue:(e,t)=>hS(t.length!==0),exists:(e,t,n)=>hS(n?t.some(t=>_S(n.eval(e,[t]))):t.length>0&&t.every(e=>!sC(e.value))),all:(e,t,n)=>hS(t.every(t=>_S(n.eval(e,[t])))),allTrue:(e,t)=>{for(let e of t)if(!e.value)return hS(!1);return hS(!0)},anyTrue:(e,t)=>{for(let e of t)if(e.value)return hS(!0);return hS(!1)},allFalse:(e,t)=>{for(let e of t)if(e.value)return hS(!1);return hS(!0)},anyFalse:(e,t)=>{for(let e of t)if(!e.value)return hS(!0);return hS(!1)},subsetOf:(e,t,n)=>{if(t.length===0)return hS(!0);let r=n.eval(e,Iw(e));return r.length===0?hS(!1):hS(t.every(e=>r.some(t=>t.value===e.value)))},supersetOf:(e,t,n)=>{let r=n.eval(e,Iw(e));return r.length===0?hS(!0):t.length===0?hS(!1):hS(r.every(e=>t.some(t=>t.value===e.value)))},count:(e,t)=>[{type:X.integer,value:t.length}],distinct:(e,t)=>{let n=[];for(let e of t)n.some(t=>t.value===e.value)||n.push(e);return n},isDistinct:(e,t)=>hS(t.length===Mw.distinct(e,t).length),where:(e,t,n)=>t.filter(t=>_S(n.eval(e,[t]))),select:(e,t,n)=>t.flatMap(t=>n.eval({parent:e,variables:{$this:t}},[t])),repeat:jw,ofType:(e,t,n)=>t.filter(e=>e.type===n.name),single:(e,t)=>{if(t.length>1)throw Error(`Expected input length one for single()`);return t.length===0?[]:t.slice(0,1)},first:(e,t)=>t.length===0?[]:t.slice(0,1),last:(e,t)=>t.length===0?[]:t.slice(-1,t.length),tail:(e,t)=>t.length===0?[]:t.slice(1,t.length),skip:(e,t,n)=>{let r=n.eval(e,t)[0]?.value;if(typeof r!=`number`)throw TypeError(`Expected a number for skip(num)`);return r>=t.length?[]:r<=0?t:t.slice(r,t.length)},take:(e,t,n)=>{let r=n.eval(e,t)[0]?.value;if(typeof r!=`number`)throw TypeError(`Expected a number for take(num)`);return r>=t.length?t:r<=0?[]:t.slice(0,r)},intersect:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Iw(e)),i=[];for(let e of t)!i.some(t=>t.value===e.value)&&r.some(t=>t.value===e.value)&&i.push(e);return i},exclude:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Iw(e)),i=[];for(let e of t)r.some(t=>t.value===e.value)||i.push(e);return i},union:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Iw(e));return CS([...t,...r])},combine:(e,t,n)=>{if(!n)return t;let r=n.eval(e,Iw(e));return[...t,...r]},htmlChecks:(e,t,n)=>[gS(!0)],iif:(e,t,n,r,i)=>{let a=n.eval(e,t);if(a.length>1||a.length===1&&typeof a[0].value!=`boolean`)throw Error(`Expected criterion to evaluate to a Boolean`);return _S(a)?r.eval(e,t):i?i.eval(e,t):[]},toBoolean:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);if(typeof n==`boolean`)return[{type:X.boolean,value:n}];if(typeof n==`number`&&(n===0||n===1))return hS(!!n);if(typeof n==`string`){let e=n.toLowerCase();if([`true`,`t`,`yes`,`y`,`1`,`1.0`].includes(e))return hS(!0);if([`false`,`f`,`no`,`n`,`0`,`0.0`].includes(e))return hS(!1)}return[]},convertsToBoolean:(e,t)=>t.length===0?[]:hS(Mw.toBoolean(e,t).length===1),toInteger:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);return typeof n==`number`?[{type:X.integer,value:n}]:typeof n==`string`&&/^[+-]?\d+$/.exec(n)?[{type:X.integer,value:Number.parseInt(n,10)}]:typeof n==`boolean`?[{type:X.integer,value:n?1:0}]:[]},convertsToInteger:(e,t)=>t.length===0?[]:hS(Mw.toInteger(e,t).length===1),toDate:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);return typeof n==`string`&&/^\d{4}(-\d{2}(-\d{2})?)?/.exec(n)?[{type:X.date,value:Aw(n)}]:[]},convertsToDate:(e,t)=>t.length===0?[]:hS(Mw.toDate(e,t).length===1),toDateTime:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);return typeof n==`string`&&/^\d{4}(-\d{2}(-\d{2})?)?/.exec(n)?[{type:X.dateTime,value:Aw(n)}]:[]},convertsToDateTime:(e,t)=>t.length===0?[]:hS(Mw.toDateTime(e,t).length===1),toDecimal:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);return typeof n==`number`?[{type:X.decimal,value:n}]:typeof n==`string`&&/^-?\d{1,9}(\.\d{1,9})?$/.exec(n)?[{type:X.decimal,value:Number.parseFloat(n)}]:typeof n==`boolean`?[{type:X.decimal,value:n?1:0}]:[]},convertsToDecimal:(e,t)=>t.length===0?[]:hS(Mw.toDecimal(e,t).length===1),toQuantity:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);return LS(n)?[{type:X.Quantity,value:n}]:typeof n==`number`?[{type:X.Quantity,value:{value:n,unit:`1`}}]:typeof n==`string`&&/^-?\d{1,9}(\.\d{1,9})?/.exec(n)?[{type:X.Quantity,value:{value:Number.parseFloat(n),unit:`1`}}]:typeof n==`boolean`?[{type:X.Quantity,value:{value:n?1:0,unit:`1`}}]:[]},convertsToQuantity:(e,t)=>t.length===0?[]:hS(Mw.toQuantity(e,t).length===1),toString:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);return n==null?[]:LS(n)?[{type:X.string,value:`${n.value} '${n.unit}'`}]:[{type:X.string,value:n.toString()}]},convertsToString:(e,t)=>t.length===0?[]:hS(Mw.toString(e,t).length===1),toTime:(e,t)=>{if(t.length===0)return[];let[{value:n}]=Fw(t,1);if(typeof n==`string`){let e=/^T?(\d{2}(:\d{2}(:\d{2})?)?)/.exec(n);if(e)return[{type:X.time,value:Aw(`T`+e[1])}]}return[]},convertsToTime:(e,t)=>t.length===0?[]:hS(Mw.toTime(e,t).length===1),indexOf:(e,t,n)=>Nw((e,t)=>e.indexOf(t),e,t,n),substring:(e,t,n,r)=>Nw((e,t,n)=>{let r=t,i=n?r+n:e.length;return r<0||r>=e.length?void 0:e.substring(r,i)},e,t,n,r),startsWith:(e,t,n)=>Nw((e,t)=>e.startsWith(t),e,t,n),endsWith:(e,t,n)=>Nw((e,t)=>e.endsWith(t),e,t,n),contains:(e,t,n)=>Nw((e,t)=>e.includes(t),e,t,n),upper:(e,t)=>Nw(e=>e.toUpperCase(),e,t),lower:(e,t)=>Nw(e=>e.toLowerCase(),e,t),replace:(e,t,n,r)=>Nw((e,t,n)=>e.replaceAll(t,n),e,t,n,r),matches:(e,t,n)=>Nw((e,t)=>!!new RegExp(t).exec(e),e,t,n),replaceMatches:(e,t,n,r)=>Nw((e,t,n)=>e.replaceAll(new RegExp(t,`g`),n.replaceAll(/\$\{(\w+)\}/g,`$<$1>`)),e,t,n,r),length:(e,t)=>Nw(e=>e.length,e,t),toChars:(e,t)=>Nw(e=>e?e.split(``):void 0,e,t),encode:jw,decode:jw,escape:jw,unescape:jw,trim:jw,split:jw,join:(e,t,n)=>{let r=n?.eval(e,Iw(e))[0]?.value??``;if(typeof r!=`string`)throw TypeError(`Separator must be a string.`);return[{type:X.string,value:t.map(e=>e.value?.toString()??``).join(r)}]},abs:(e,t)=>Pw(Math.abs,e,t),ceiling:(e,t)=>Pw(Math.ceil,e,t),exp:(e,t)=>Pw(Math.exp,e,t),floor:(e,t)=>Pw(Math.floor,e,t),ln:(e,t)=>Pw(Math.log,e,t),log:(e,t,n)=>Pw((e,t)=>Math.log(e)/Math.log(t),e,t,n),power:(e,t,n)=>Pw(Math.pow,e,t,n),round:(e,t,...n)=>Pw((e,t=0)=>{if(typeof t!=`number`||t<0)throw Error(`Invalid precision provided to round()`);let n=10**t;return Math.round(e*n)/n},e,t,...n),sqrt:(e,t)=>Pw(Math.sqrt,e,t),truncate:(e,t)=>Pw(e=>Math.trunc(e),e,t),children:jw,descendants:jw,trace:(e,t,n)=>t,now:()=>[{type:X.dateTime,value:new Date().toISOString()}],timeOfDay:()=>[{type:X.time,value:new Date().toISOString().substring(11)}],today:()=>[{type:X.date,value:new Date().toISOString().substring(0,10)}],between:(e,t,n,r,i)=>{let a=Mw.toDateTime(e,n.eval(e,t));if(a.length===0)throw Error(`Invalid start date`);let o=Mw.toDateTime(e,r.eval(e,t));if(o.length===0)throw Error(`Invalid end date`);let s=i.eval(e,t)[0]?.value;if(s!==`years`&&s!==`months`&&s!==`days`)throw Error(`Invalid units`);let c=eC(a[0].value,o[0].value);return[{type:X.Quantity,value:{value:c[s],unit:s}}]},is:(e,t,n)=>{let r=``;return n instanceof zw?r=n.name:n instanceof Jw&&(r=n.left.name+`.`+n.right.name),r?t.map(e=>({type:X.boolean,value:jS(e,r)})):[]},not:(e,t)=>Mw.toBoolean(e,t).map(e=>({type:X.boolean,value:!e.value})),resolve:(e,t)=>t.map(e=>{let t=e.value,n;if(typeof t==`string`)n=t;else if(typeof t==`object`){let e=t;if(e.resource)return gS(e.resource);e.reference?n=e.reference:e.type&&e.identifier&&(n=`${e.type}?identifier=${e.identifier.system}|${e.identifier.value}`)}if(n?.includes(`?`)){let[e]=n.split(`?`);return{type:e,value:{resourceType:e}}}if(n?.includes(`/`)){let[e,t]=n.split(`/`);return{type:e,value:{resourceType:e,id:t}}}return{type:X.BackboneElement,value:void 0}}).filter(e=>!!e.value),as:(e,t)=>t,type:(e,t)=>t.map(({value:e})=>typeof e==`boolean`?{type:X.BackboneElement,value:{namespace:`System`,name:`Boolean`}}:typeof e==`number`?{type:X.BackboneElement,value:{namespace:`System`,name:`Integer`}}:Dw(e)?{type:X.BackboneElement,value:{namespace:`FHIR`,name:e.resourceType}}:{type:X.BackboneElement,value:null}),conformsTo:(e,t,n)=>{let r=n.eval(e,t)[0].value;if(!r.startsWith(`http://hl7.org/fhir/StructureDefinition/`))throw Error(`Expected a StructureDefinition URL`);let i=r.replace(`http://hl7.org/fhir/StructureDefinition/`,``);return t.map(e=>({type:X.boolean,value:e.value?.resourceType===i}))},getResourceKey:(e,t)=>{let n=t[0].value;return n?.id?[{type:X.id,value:n.id}]:[]},getReferenceKey:(e,t,n)=>{let r=t[0].value;if(!r?.reference)return[];let i=``;return n instanceof zw&&(i=n.name),i&&!r.reference.startsWith(i+`/`)?[]:[{type:X.id,value:KS(r)}]},extension:(e,t,n)=>{let r=n.eval(e,t)[0].value,i=t?.[0]?.value;if(i){let e=nC(i,r);if(e)return[{type:X.Extension,value:e}]}return[]}};function Nw(e,t,n,...r){if(n.length===0)return[];let[{value:i}]=Fw(n,1);if(typeof i!=`string`)throw TypeError(`String function cannot be called with non-string`);let a=e(i,...r.map(e=>e?.eval(t,n)[0]?.value));return a===void 0?[]:Array.isArray(a)?a.map(gS):[gS(a)]}function Pw(e,t,n,...r){if(n.length===0)return[];let[{value:i}]=Fw(n,1),a=LS(i),o=a?i.value:i;if(typeof o!=`number`)throw TypeError(`Math function cannot be called with non-number`);let s=e(o,...r.map(e=>e.eval(t,n)[0]?.value));return[{type:a?X.Quantity:n[0].type,value:a?{...i,value:s}:s}]}function Fw(e,t){if(e.length!==t)throw Error(`Expected ${t} arguments`);for(let t of e)if(t==null)throw Error(`Expected non-null argument`);return e}function Iw(e){let t=e;for(;t.parent?.variables.$this;)t=t.parent;return[t.variables.$this]}var Lw=class{original;child;constructor(e,t){this.original=e,this.child=t}eval(e,t){try{if(t.length>0){let n=[];for(let r of t)n.push(this.child.eval({parent:e,variables:{$this:r}},[r]));return n.flat()}else return this.child.eval(e,[])}catch(e){throw Error(`FhirPathError on "${this.original}": ${e}`,{cause:e})}}toString(){return this.child.toString()}},Rw=class{value;constructor(e){this.value=e}eval(){return[this.value]}toString(){let e=this.value.value;return typeof e==`string`?`'${e}'`:e.toString()}},zw=class{name;constructor(e){this.name=e}eval(e,t){if(this.name===`$this`)return t;let n=this.getVariable(e);if(n)return[n];if(this.name.startsWith(`%`))throw Error(`Undefined variable ${this.name}`);return t.flatMap(e=>this.evalValue(e)).filter(e=>e?.value!==void 0)}getVariable(e){let t=e.variables[this.name];if(t!==void 0)return t;if(e.parent)return this.getVariable(e.parent)}evalValue(e){let t=e.value;if(!(!t||typeof t!=`object`))return Dw(t,this.name)?e:dS(e,this.name)}toString(){return this.name}},Bw=class{eval(){return[]}toString(){return`{}`}},Vw=class extends lx{impl;constructor(e,t,n){super(e,t),this.impl=n}eval(e,t){return this.impl(this.child.eval(e,t))}toString(){return this.operator+this.child.toString()}},Hw=class extends ux{constructor(e,t){super(`as`,e,t)}eval(e,t){return Mw.ofType(e,this.left.eval(e,t),this.right)}},Uw=class extends ux{},Ww=class extends Uw{impl;constructor(e,t,n,r){super(e,t,n),this.impl=r}eval(e,t){let n=this.left.eval(e,t);if(n.length!==1)return[];let r=this.right.eval(e,t);if(r.length!==1)return[];let i=n[0].value,a=r[0].value,o=LS(i)?i.value:i,s=LS(a)?a.value:a,c=this.impl(o,s);return typeof c==`boolean`?hS(c):LS(i)?[{type:X.Quantity,value:{...i,value:c}}]:[gS(c)]}},Gw=class extends ux{constructor(e,t){super(`&`,e,t)}eval(e,t){let n=this.left.eval(e,t),r=this.right.eval(e,t),i=[...n,...r];return i.length>0&&i.every(e=>typeof e.value==`string`)?[{type:X.string,value:i.map(e=>e.value).join(``)}]:i}},Kw=class extends Uw{constructor(e,t){super(`contains`,e,t)}eval(e,t){let n=this.left.eval(e,t),r=this.right.eval(e,t);return hS(n.some(e=>e.value===r[0].value))}},qw=class extends Uw{constructor(e,t){super(`in`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t)),r=this.right.eval(e,t);return n?hS(r.some(e=>DS(n,e)[0].value)):[]}},Jw=class extends ux{constructor(e,t){super(`.`,e,t)}eval(e,t){return this.right.eval(e,this.left.eval(e,t))}toString(){return`${this.left.toString()}.${this.right.toString()}`}},Yw=class extends ux{constructor(e,t){super(`|`,e,t)}eval(e,t){let n=this.left.eval(e,t),r=this.right.eval(e,t);return CS([...n,...r])}},Xw=class extends Uw{constructor(e,t){super(`=`,e,t)}eval(e,t){return TS(this.left.eval(e,t),this.right.eval(e,t))}},Zw=class extends Uw{constructor(e,t){super(`!=`,e,t)}eval(e,t){return ES(this.left.eval(e,t),this.right.eval(e,t))}},Qw=class extends Uw{constructor(e,t){super(`~`,e,t)}eval(e,t){return OS(this.left.eval(e,t),this.right.eval(e,t))}},$w=class extends Uw{constructor(e,t){super(`!~`,e,t)}eval(e,t){return wS(OS(this.left.eval(e,t),this.right.eval(e,t)))}},eT=class extends Uw{constructor(e,t){super(`is`,e,t)}eval(e,t){let n=this.left.eval(e,t);if(n.length!==1)return[];let r=this.right.name;return hS(jS(n[0],r))}},tT=class extends Uw{constructor(e,t){super(`and`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return n?.value===!0&&r?.value===!0?hS(!0):n?.value===!1||r?.value===!1?hS(!1):[]}},nT=class extends Uw{constructor(e,t){super(`or`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return n?.value===!1&&r?.value===!1?hS(!1):n?.value||r?.value?hS(!0):[]}},rT=class extends Uw{constructor(e,t){super(`xor`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return!n||!r?[]:hS(n.value!==r.value)}},iT=class extends Uw{constructor(e,t){super(`implies`,e,t)}eval(e,t){let n=vS(this.left.eval(e,t),`boolean`),r=vS(this.right.eval(e,t),`boolean`);return r?.value===!0||n?.value===!1?hS(!0):!n||!r?[]:hS(!1)}},aT=class{name;args;constructor(e,t){this.name=e,this.args=t}eval(e,t){let n=Mw[this.name];if(!n)throw Error(`Unrecognized function: `+this.name);return n(e,t,...this.args)}toString(){return`${this.name}(${this.args.map(e=>e.toString()).join(`, `)})`}},oT=class{left;expr;constructor(e,t){this.left=e,this.expr=t}eval(e,t){let n=this.expr.eval(e,t);if(n.length!==1)return[];let r=n[0].value;if(typeof r!=`number`)throw Error(`Invalid indexer expression: should return integer}`);let i=this.left.eval(e,t);return r in i?[i[r]]:[]}toString(){return`${this.left.toString()}[${this.expr.toString()}]`}},sT=[`year`,`years`,`month`,`months`,`week`,`weeks`,`day`,`days`,`hour`,`hours`,`minute`,`minutes`,`second`,`seconds`,`millisecond`,`milliseconds`],cT={"'":`'`,'"':`"`,"`":"`",r:`\r`,n:`
|
|
54
|
+
`,t:` `,f:`\f`,"\\":`\\`},lT=class{str;keywords;operators;dateTimeLiterals;symbolRegex;result=[];pos={index:0,line:1,column:0};markStack=[];constructor(e,t,n,r){this.str=e,this.keywords=t,this.operators=n,this.dateTimeLiterals=!!r?.dateTimeLiterals,this.symbolRegex=r?.symbolRegex??/[$\w%]/}tokenize(){for(;this.pos.index<this.str.length;){let e=this.consumeToken();e&&this.result.push(e)}return this.result}prevToken(){return this.result.slice(-1)[0]}peekToken(){this.mark();let e=this.consumeToken();return this.reset(),e}consumeToken(){this.consumeWhitespace();let e=this.curr();if(!e)return;this.mark();let t=this.peek();return e===`/`&&t===`*`?this.consumeMultiLineComment():e===`/`&&t===`/`?this.consumeSingleLineComment():e===`'`||e===`"`||e==="`"?this.consumeString(e):e===`@`?this.consumeDateTime():/\d/.exec(e)?this.consumeNumber():/\w/.exec(e)||(e===`$`||e===`%`)&&/\w/.exec(t)?this.consumeSymbol():(e===`$`||e===`%`)&&(t===`'`||t===`"`||t==="`")?this.consumeQuotedSymbol(t):this.consumeOperator()}consumeWhitespace(){this.consumeWhile(()=>/\s/.exec(this.curr()))}consumeMultiLineComment(){let e=this.pos.index;return this.consumeWhile(()=>this.curr()!==`*`||this.peek()!==`/`),this.advance(),this.advance(),this.buildToken(`Comment`,this.str.substring(e,this.pos.index))}consumeSingleLineComment(){return this.buildToken(`Comment`,this.consumeWhile(()=>this.curr()!==`
|
|
55
|
+
`))}consumeString(e){this.advance();let t=``,n;for(;n=this.consumeChar(e);)t+=n;let r=this.buildToken(e==="`"?`Symbol`:`String`,t);return this.advance(),r}consumeChar(e){let t=this.curr();if(t===`\\`){this.advance();let t=this.curr(),n=cT[t];if(n!==void 0)return this.advance(),n;if(t===`u`){this.advance();let e=/^[0-9a-fA-F]{4}$/.exec(this.str.substring(this.pos.index,this.pos.index+4))?.[0];return e?(this.advance(),this.advance(),this.advance(),this.advance(),String.fromCodePoint(Number.parseInt(e,16))):`u`}return this.consumeChar(e)}return t===e||!t?``:(this.advance(),t)}consumeQuotedSymbol(e){this.mark();let t=this.pos.index;this.advance(),this.consumeString(e);let n=this.str.substring(t,this.pos.index);return this.buildToken(`Symbol`,n)}consumeDateTime(){this.advance();let e=this.pos.index;this.consumeWhile(()=>/[\d-]/.exec(this.curr()));let t=!1,n=!1;if(this.curr()===`T`&&(t=!0,this.advance(),this.consumeWhile(()=>/[\d:]/.exec(this.curr())),this.curr()===`.`&&/\d/.exec(this.peek())&&(this.advance(),this.consumeWhile(()=>/\d/.exec(this.curr()))),this.curr()===`Z`?(n=!0,this.advance()):(this.curr()===`+`||this.curr()===`-`)&&(n=!0,this.advance(),this.consumeWhile(()=>/[\d:]/.exec(this.curr())))),this.pos.index===e)throw Error(`Invalid DateTime literal`);let r=this.str.substring(e,this.pos.index);return r.endsWith(`T`)?r=r.substring(0,r.length-1):!r.startsWith(`T`)&&t&&!n&&(r+=`Z`),this.buildToken(`DateTime`,r)}consumeNumber(){let e=this.pos.index,t=`Number`;this.consumeWhile(()=>/\d/.exec(this.curr())),this.curr()===`.`&&/\d/.exec(this.peek())&&(this.advance(),this.consumeWhile(()=>/\d/.exec(this.curr())));let n=this.curr();if(n===`-`&&this.dateTimeLiterals)return this.pos.index=e-1,this.consumeDateTime();if(n===` `)uT(this.peekToken())&&(t=`Quantity`,this.consumeToken());else if(n&&/[a-zA-Z_$]/.exec(n))return this.pos.index=e-1,this.consumeString(` `);return this.buildToken(t,this.str.substring(e,this.pos.index))}consumeSymbol(){let e=this.consumeWhile(()=>this.symbolRegex.exec(this.curr()));return this.prevToken()?.value!==`.`&&this.keywords.includes(e)?this.buildToken(e,e):this.buildToken(`Symbol`,e)}consumeOperator(){let e=this.curr(),t=e+this.peek();return this.operators.includes(t)?(this.advance(),this.advance(),this.buildToken(t,t)):(this.advance(),this.buildToken(e,e))}consumeWhile(e){let t=this.pos.index;for(;this.pos.index<this.str.length&&e();)this.advance();return this.str.substring(t,this.pos.index)}curr(){return this.str[this.pos.index]}peek(){return this.str[this.pos.index+1]??``}mark(){this.markStack.push({...this.pos})}reset(){let e=this.markStack.pop();if(!e)throw Error(`No mark to reset to`);this.pos.index=e.index,this.pos.line=e.line,this.pos.column=e.column}advance(){this.pos.index++,this.curr()===`
|
|
56
|
+
`?(this.pos.line++,this.pos.column=0):this.pos.column++}buildToken(e,t){let n=this.markStack.pop();if(!n)throw Error(`No mark for token`);return{id:e,value:t,...n}}};function uT(e){return!!(e&&(e.id===`String`||e.id===`Symbol`&&sT.includes(e.value)))}var dT=[`true`,`false`],fT=[`!=`,`!~`,`<=`,`>=`,`{}`,`->`];function pT(e){return new lT(e,dT,fT).tokenize()}var mT={FunctionCall:0,Dot:1,Indexer:2,UnaryAdd:3,UnarySubtract:3,Multiply:4,Divide:4,IntegerDivide:4,Modulo:4,Add:5,Subtract:5,Ampersand:5,Is:6,As:6,Union:7,GreaterThan:8,GreaterThanOrEquals:8,LessThan:8,LessThanOrEquals:8,Equals:9,Equivalent:9,NotEquals:9,NotEquivalent:9,In:10,Contains:10,And:11,Xor:12,Or:12,Implies:13,Arrow:100,Semicolon:200},hT={parse(e){let t=e.consumeAndParse();if(!e.match(`)`))throw Error("Parse error: expected `)` got `"+e.peek()?.value+"`");return t}},gT={parse(e,t){let n=e.consumeAndParse();if(!e.match(`]`))throw Error("Parse error: expected `]`");return new oT(t,n)},precedence:mT.Indexer},_T={parse(e,t){if(!(t instanceof zw))throw Error(`Unexpected parentheses`);let n=[];for(;!e.match(`)`);)n.push(e.consumeAndParse()),e.match(`,`);return new aT(t.name,n)},precedence:mT.FunctionCall};function vT(e){let t=e.split(` `),n=Number.parseFloat(t[0]),r=t[1];return r=r?.startsWith(`'`)&&r.endsWith(`'`)?r.substring(1,r.length-1):`{`+r+`}`,{value:n,unit:r}}function yT(){return new dx().registerPrefix(`String`,{parse:(e,t)=>new Rw({type:X.string,value:t.value})}).registerPrefix(`DateTime`,{parse:(e,t)=>new Rw({type:X.dateTime,value:Aw(t.value)})}).registerPrefix(`Quantity`,{parse:(e,t)=>new Rw({type:X.Quantity,value:vT(t.value)})}).registerPrefix(`Number`,{parse:(e,t)=>new Rw({type:t.value.includes(`.`)?X.decimal:X.integer,value:Number.parseFloat(t.value)})}).registerPrefix(`true`,{parse:()=>new Rw({type:X.boolean,value:!0})}).registerPrefix(`false`,{parse:()=>new Rw({type:X.boolean,value:!1})}).registerPrefix(`Symbol`,{parse:(e,t)=>new zw(t.value)}).registerPrefix(`{}`,{parse:()=>new Bw}).registerPrefix(`(`,hT).registerInfix(`[`,gT).registerInfix(`(`,_T).prefix(`+`,mT.UnaryAdd,(e,t)=>new Vw(`+`,t,e=>e)).prefix(`-`,mT.UnarySubtract,(e,t)=>new Ww(`-`,t,t,(e,t)=>-t)).infixLeft(`.`,mT.Dot,(e,t,n)=>new Jw(e,n)).infixLeft(`/`,mT.Divide,(e,t,n)=>new Ww(`/`,e,n,(e,t)=>e/t)).infixLeft(`*`,mT.Multiply,(e,t,n)=>new Ww(`*`,e,n,(e,t)=>e*t)).infixLeft(`+`,mT.Add,(e,t,n)=>new Ww(`+`,e,n,(e,t)=>e+t)).infixLeft(`-`,mT.Subtract,(e,t,n)=>new Ww(`-`,e,n,(e,t)=>e-t)).infixLeft(`|`,mT.Union,(e,t,n)=>new Yw(e,n)).infixLeft(`=`,mT.Equals,(e,t,n)=>new Xw(e,n)).infixLeft(`!=`,mT.NotEquals,(e,t,n)=>new Zw(e,n)).infixLeft(`~`,mT.Equivalent,(e,t,n)=>new Qw(e,n)).infixLeft(`!~`,mT.NotEquivalent,(e,t,n)=>new $w(e,n)).infixLeft(`<`,mT.LessThan,(e,t,n)=>new Ww(`<`,e,n,(e,t)=>e<t)).infixLeft(`<=`,mT.LessThanOrEquals,(e,t,n)=>new Ww(`<=`,e,n,(e,t)=>e<=t)).infixLeft(`>`,mT.GreaterThan,(e,t,n)=>new Ww(`>`,e,n,(e,t)=>e>t)).infixLeft(`>=`,mT.GreaterThanOrEquals,(e,t,n)=>new Ww(`>=`,e,n,(e,t)=>e>=t)).infixLeft(`&`,mT.Ampersand,(e,t,n)=>new Gw(e,n)).infixLeft(`and`,mT.And,(e,t,n)=>new tT(e,n)).infixLeft(`as`,mT.As,(e,t,n)=>new Hw(e,n)).infixLeft(`contains`,mT.Contains,(e,t,n)=>new Kw(e,n)).infixLeft(`div`,mT.Divide,(e,t,n)=>new Ww(`div`,e,n,(e,t)=>Math.trunc(e/t))).infixLeft(`in`,mT.In,(e,t,n)=>new qw(e,n)).infixLeft(`is`,mT.Is,(e,t,n)=>new eT(e,n)).infixLeft(`mod`,mT.Modulo,(e,t,n)=>new Ww(`mod`,e,n,(e,t)=>e%t)).infixLeft(`or`,mT.Or,(e,t,n)=>new nT(e,n)).infixLeft(`xor`,mT.Xor,(e,t,n)=>new rT(e,n)).infixLeft(`implies`,mT.Implies,(e,t,n)=>new iT(e,n))}var bT=yT();function xT(e){return new Lw(e,bT.construct(pT(e)).consumeAndParse())}function ST(e,t){let n=Array.isArray(t)?t:[t];for(let e=0;e<n.length;e++){let t=n[e];typeof t==`object`&&`type`in t&&`value`in t||(n[e]=gS(n[e]))}return CT(e,n).map(e=>e.value)}function CT(e,t,n={},r=void 0){let i;if(typeof e==`string`){let t=r?.get(e);i=t??xT(e),r&&!t&&r.set(e,i)}else i=e;return i.eval({variables:n},t).map(e=>{let t={type:e.type,value:e.value?.valueOf()};return`path`in e&&(t.path=e.path),t})}function wT(e){let t=[];for(let n of e){let e=FS(n.value);e&&t.push(e)}return t}function TT(e){let t=new Set;for(let n of e){let e=GC(n);e&&t.add(e)}return Array.from(t)}function ET(e){let t=new Set;for(let n of e){let{value:e}=n;e&&(yC(e)?t.add(e):Ow(e)?t.add(e.reference):US(e)?t.add(GS(e)):typeof e.identifier==`object`&&t.add(`identifier:${e.identifier.system}|${e.identifier.value}`))}return Array.from(t)}function DT(e,t={}){let n=[];for(let r of e)OT(t,n,r);return n}function OT(e,t,n){let{type:r,value:i}=n;switch(r){case X.Identifier:kT(t,e,i);break;case X.CodeableConcept:AT(t,e,i);break;case X.Coding:jT(t,e,i);break;case X.ContactPoint:MT(t,e,i);break;default:NT(t,e,void 0,i?.toString())}}function kT(e,t,n){n?.type?.text&&NT(e,t,t.textSearchSystem,n.type.text),NT(e,t,n?.system,n?.value)}function AT(e,t,n){n?.text&&NT(e,t,t.textSearchSystem,n.text);for(let r of n?.coding??WC)jT(e,t,r)}function jT(e,t,n){n&&(n.display&&NT(e,t,t.textSearchSystem,n.display),NT(e,t,n.system,n.code))}function MT(e,t,n){n&&NT(e,t,n.system,n.value?.toLocaleLowerCase())}function NT(e,t,n,r){(n||r)&&!e.some(e=>e.system===n&&e.value===r)&&e.push({system:n,value:r&&t.caseInsensitive?r.toLocaleLowerCase():r})}var Z={EQUALS:`eq`,NOT_EQUALS:`ne`,GREATER_THAN:`gt`,LESS_THAN:`lt`,GREATER_THAN_OR_EQUALS:`ge`,LESS_THAN_OR_EQUALS:`le`,STARTS_AFTER:`sa`,ENDS_BEFORE:`eb`,APPROXIMATELY:`ap`,CONTAINS:`contains`,STARTS_WITH:`sw`,EXACT:`exact`,TEXT:`text`,NOT:`not`,ABOVE:`above`,BELOW:`below`,IN:`in`,NOT_IN:`not-in`,OF_TYPE:`of-type`,MISSING:`missing`,PRESENT:`present`,IDENTIFIER:`identifier`,ITERATE:`iterate`},PT={contains:Z.CONTAINS,exact:Z.EXACT,above:Z.ABOVE,below:Z.BELOW,text:Z.TEXT,not:Z.NOT,in:Z.IN,"not-in":Z.NOT_IN,"of-type":Z.OF_TYPE,missing:Z.MISSING,identifier:Z.IDENTIFIER,iterate:Z.ITERATE},FT={eq:Z.EQUALS,ne:Z.NOT_EQUALS,lt:Z.LESS_THAN,le:Z.LESS_THAN_OR_EQUALS,gt:Z.GREATER_THAN,ge:Z.GREATER_THAN_OR_EQUALS,sa:Z.STARTS_AFTER,eb:Z.ENDS_BEFORE,ap:Z.APPROXIMATELY,sw:Z.STARTS_WITH};function IT(e,t){if(!e)throw Error(`Invalid search URL`);let n=``,r;if(typeof e==`string`)if(e.includes(`?`)){let[t,i]=e.split(`?`);n=t,r=new URLSearchParams(i)}else n=e;else typeof e==`object`&&(n=e.pathname,r=e.searchParams);let i;i=n.includes(`/`)?n.split(`/`).filter(Boolean).pop():n;let a=[];if(r&&a.push(...r.entries()),t)for(let[e,n]of Object.entries(t))if(Array.isArray(n))for(let t of n)a.push([e,t]);else a.push([e,n??``]);return LT(i,a)}function LT(e,t){let n={resourceType:e};for(let[e,r]of t)RT(n,e,r);return n}function RT(e,t,n){let r,i,a=t.indexOf(`:`);if(a>=0?(r=t.substring(0,a),i=t.substring(a+1)):(r=t,i=``),r!==`_`){if(r===`_has`||t.includes(`.`)){e.filters=FC(e.filters,{code:t,operator:Z.EQUALS,value:n});return}switch(r){case`_sort`:zT(e,n);break;case`_cursor`:e.cursor=n;break;case`_count`:e.count=Number.parseInt(n,10);break;case`_offset`:e.offset=Number.parseInt(n,10);break;case`_total`:e.total=n;break;case`_summary`:n===`count`?(e.total=`accurate`,e.count=0):(n===`true`||n===`data`||n===`text`)&&(e.summary=n);break;case`_include`:{let t=GT(n);i===`iterate`&&(t.modifier=Z.ITERATE),e.include=FC(e.include,t);break}case`_revinclude`:{let t=GT(n);i===`iterate`&&(t.modifier=Z.ITERATE),e.revInclude=FC(e.revInclude,t);break}case`_fields`:case`_elements`:e.fields=n.split(`,`);break;case`_type`:e.types=n.split(`,`);break;case`_format`:e.format=n;break;case`_pretty`:e.pretty=n===`true`;break;default:{let t=kw.types[e.resourceType]?.searchParams?.[r];t?e.filters=FC(e.filters,VT(t,i,n)):e.filters=FC(e.filters,HT(r,i,n))}}}}function zT(e,t){for(let n of t.split(`,`)){let t,r=!1;n.startsWith(`-`)?(t=n.substring(1),r=!0):t=n,e.sortRules||=[],e.sortRules.push({code:t,descending:r})}}var BT=[Z.MISSING,Z.PRESENT];function VT(e,t,n){if(BT.includes(t))return{code:e.code,operator:t,value:n};switch(e.type){case`number`:case`date`:case`quantity`:{let{operator:r,value:i}=UT(n,t||Z.EQUALS);if(!KT(e,i))throw new Fx(Ox(`Invalid format for ${e.type} search parameter: ${i}`));return{code:e.code,operator:r,value:i}}case`reference`:case`string`:case`token`:case`uri`:if(!KT(e,n))throw new Fx(Ox(`Invalid format for ${e.type} search parameter: ${n}`));return{code:e.code,operator:WT(t),value:n};default:throw Error(`Unrecognized search parameter type: `+e.type)}}function HT(e,t,n){let r=Z.EQUALS;if(t)r=t;else if(n.length>=2){let e=n.substring(0,2);e in FT&&(n.length===2||n.at(2)?.match(/\d/))&&(r=e,n=n.substring(e.length))}return{code:e,operator:r,value:n}}function UT(e,t){let n=FT[e.substring(0,2)];return n?{operator:n,value:e.substring(2)}:{operator:t,value:e}}function WT(e){return PT[e]??Z.EQUALS}function GT(e){let t=e.split(`:`);if(t.includes(`*`))throw new Fx(Ox(`'*' is not supported as a value for search inclusion parameters`));if(t.length===1)throw new Fx(Ox(`Invalid include value '${e}': must be of the form ResourceType:search-parameter`));if(t.length===2)return{resourceType:t[0],searchParam:t[1]};if(t.length===3)return{resourceType:t[0],searchParam:t[1],targetType:t[2]};throw new Fx(Ox(`Invalid include value '${e}'`))}function KT(e,t){switch(e.type){case`date`:return NS(t);default:return!0}}function qT(e){let t=[];e.fields&&t.push(`_fields=`+e.fields.join(`,`));for(let n of e.filters??WC)t.push(JT(n));e.sortRules&&e.sortRules.length>0&&t.push(YT(e.sortRules)),e.cursor!==void 0&&t.push(`_cursor=`+encodeURIComponent(e.cursor)),e.offset!==void 0&&e.offset!==0&&t.push(`_offset=`+e.offset),e.count!==void 0&&t.push(`_count=`+e.count),e.total!==void 0&&t.push(`_total=`+e.total),e.types&&e.types.length>0&&t.push(`_type=`+e.types.join(`,`));for(let n of e.include??WC)t.push(XT(`_include`,n));for(let n of e.revInclude??WC)t.push(XT(`_revinclude`,n));return t.length===0?``:(IC(t),`?`+t.join(`&`))}function JT(e){let t=e.operator in PT?`:`+e.operator:``,n=e.operator!==Z.EQUALS&&e.operator in FT?e.operator:``;return`${e.code}${t}=${n}${encodeURIComponent(e.value)}`}function YT(e){return`_sort=`+e.map(e=>e.descending?`-`+e.code:e.code).join(`,`)}function XT(e,t){return e+(t.modifier?`:`+t.modifier:``)+`=`+t.resourceType+`:`+t.searchParam+(t.targetType?`:`+t.targetType:``)}function ZT(e){let t=[],n=``,r=!1;for(let i of e)r?(n+=i,r=!1):i===`\\`?r=!0:i===`,`?(t.push(n),n=``):n+=i;return t.push(n),t}function QT(e,t){if(t.resourceType!==e.resourceType)return!1;for(let n of t.filters??WC)if(!eE(e,t,n))return!1;return!0}var $T=new cx(1e3);function eE(e,t,n){let r=kw.types[t.resourceType]?.searchParams?.[n.code];if(!r)return!1;let i=CT(r.expression,[gS(e)],void 0,$T);if(n.operator===Z.MISSING||n.operator===Z.PRESENT)return tE(i,n);switch(r.type){case`reference`:return nE(i,n);case`string`:case`uri`:return aE(i,n);case`token`:return rE(i,n);case`date`:return sE(i,n);default:return!1}}function tE(e,t){let n=e.length>0;return(t.operator===Z.MISSING&&t.value===`false`||t.operator===Z.PRESENT&&t.value===`true`)===n}function nE(e,t){let n=lE(t.operator);if(t.value===``&&e.length===0)return t.operator===Z.EQUALS;let r=ET(e);for(let e of ZT(t.value)){let i=r.includes(e);if(!i&&t.code===`_compartment`&&(i=r.some(t=>t?.endsWith(`/`+e))),i)return!n}return n}function rE(e,t){let n=DT(e),r=ZT(t.value),i=lE(t.operator);for(let e of n)for(let t of r)if(iE(e,t))return!i;return i}function iE(e,t){if(t.includes(`|`)){let[n,r]=t.split(`|`).map(e=>e.toLowerCase());return!n&&!r?!1:n?e.system?.toLowerCase()===n&&(!r||e.value?.toLowerCase()===r):!e.system&&e.value?.toLowerCase()===r}return e.value?.toLowerCase()===t.toLowerCase()}function aE(e,t){let n=TT(e),r=ZT(t.value),i=lE(t.operator);for(let e of n)for(let t of r)if(oE(e,t))return!i;return i}function oE(e,t){return e.toLowerCase().includes(t.toLowerCase())}function sE(e,t){let n=wT(e),r=ZT(t.value),i=lE(t.operator);for(let e of n)for(let n of r)if(cE(e,t.operator,n))return!i;return i}function cE(e,t,n){if(!e)return!1;let r=FS(n);if(!r)return!1;let i=e.start??`0000`,a=e.end??`9999`,o=r.start,s=r.end;switch(t){case Z.APPROXIMATELY:case Z.EQUALS:case Z.NOT_EQUALS:return i<s&&a>o;case Z.LESS_THAN:return i<o;case Z.GREATER_THAN:return a>s;case Z.LESS_THAN_OR_EQUALS:return i<=s;case Z.GREATER_THAN_OR_EQUALS:return a>=o;case Z.STARTS_AFTER:return i>s;case Z.ENDS_BEFORE:return a<o;default:return!1}}function lE(e){return e===Z.NOT_EQUALS||e===Z.NOT}var uE={resourceType:`*`},dE=[`DomainConfiguration`,`JsonWebKey`,`Login`],fE=[`Package`,`PackageRelease`,`PackageInstallation`,`Project`,`ProjectMembership`,`User`,`UserSecurityRequest`],pE={READ:`read`,VREAD:`vread`,UPDATE:`update`,DELETE:`delete`,HISTORY:`history`,CREATE:`create`,SEARCH:`search`},mE=[pE.READ,pE.VREAD,pE.HISTORY,pE.SEARCH];function hE(e,t){return dE.includes(t)?!1:gE(e,pE.UPDATE,t)}function gE(e,t,n){return!!e.resource?.some(e=>yE(e,n,t))}function _E(e,t,n){return n?n.resource?.find(n=>vE(e,t,n)):uE}function vE(e,t,n){let r=e.resourceType;return yE(n,r,t)?r===`Binary`?!0:!(n.compartment&&!e.meta?.compartment?.some(e=>e.reference===n.compartment?.reference)||n.criteria&&!QT(e,IT(n.criteria))):!1}function yE(e,t,n){return e.resourceType!==t&&(e.resourceType!==`*`||fE.includes(t))?!1:e.interaction?e.interaction.includes(n):!e.readonly||mE.includes(n)}function bE(){return typeof window<`u`}function xE(){return typeof Buffer<`u`?Buffer:void 0}var SE={assign(e){bE()&&globalThis.location.assign(e)},reload(){bE()&&globalThis.location.reload()},getSearch(){return bE()?globalThis.location.search:``},getPathname(){return bE()?globalThis.location.pathname:``},getLocation(){return bE()?globalThis.location.toString():``},getOrigin(){return bE()?globalThis.location.protocol+`//`+globalThis.location.host+`/`:``}};function CE(e){if(bE()){let t=window.atob(e),n=Uint8Array.from(t,e=>e.codePointAt(0));return new window.TextDecoder().decode(n)}let t=xE();if(t)return t.from(e,`base64`).toString(`utf-8`);throw Error(`Unable to decode base64`)}function wE(e){if(bE()){let t=new window.TextEncoder().encode(e),n=String.fromCodePoint.apply(null,t);return window.btoa(n)}let t=xE();if(t)return t.from(e,`utf8`).toString(`base64`);throw Error(`Unable to encode base64`)}function TE(e){return e=e.padEnd(e.length+(4-e.length%4)%4,`=`),CE(e.replaceAll(`-`,`+`).replaceAll(`_`,`/`))}function EE(){let e=new Uint32Array(28);return crypto.getRandomValues(e),wC(e.buffer)}async function DE(e){return crypto.subtle.digest(`SHA-256`,new TextEncoder().encode(e))}function OE(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replaceAll(/[xy]/g,e=>{let t=Math.trunc(Math.random()*16);return(e===`x`?t:t&3|8).toString(16)})}function kE(e){let t={};e=gC(e);for(let n of e.entry??WC){let e=n.resource;if(!e)continue;e.meta!==void 0&&(delete e.meta.author,delete e.meta.compartment,delete e.meta.lastUpdated,delete e.meta.project,delete e.meta.versionId,Object.keys(e.meta).length===0&&delete e.meta);let r=e?.id;r&&(t[r]=OE(),n.fullUrl=`urn:uuid:`+t[r],delete n.resource?.id)}let n=e.entry,r=JSON.stringify({resourceType:`Bundle`,type:`transaction`,entry:n?.map(e=>({fullUrl:e.fullUrl,request:{method:`POST`,url:e.resource?.resourceType},resource:e.resource}))},(e,n)=>AE(e,n,t),2);return jE(JSON.parse(r))}function AE(e,t,n){if(e===`reference`&&typeof t==`string`){let e;if(t.includes(`/`)?e=t.split(`/`)[1]:t.startsWith(`urn:uuid:`)?e=t.slice(9):t.startsWith(`#`)&&(e=t.slice(1)),e){let t=n[e];if(t)return`urn:uuid:`+t}}return t}function jE(e){let{sorted:t,cycles:n}=NE(FE(e)),r={},i=[];for(let t of e.entry??WC)t.fullUrl?r[t.fullUrl]=t:i.push(t);let a=t.map(e=>r[e]);for(let e of n)for(let t of e){let e=r[t],n={...e,request:{...e.request,method:`PUT`}};a.push(n)}return a.push(...i),{...e,entry:a}}var ME={NotVisited:`NotVisited`,Visiting:`Visiting`,Visited:`Visited`};function NE(e){let t=[],n={},r=[];for(let t of Object.keys(e))n[t]=ME.NotVisited;function i(a,o){if(n[a]===ME.Visited)return!0;if(n[a]===ME.Visiting){let e=o.lastIndexOf(a);return e!==-1&&r.push(o.slice(e)),!0}n[a]=ME.Visiting,o.push(a);let s=!1;for(let t of e[a])i(t,o)||(s=!0);return n[a]=ME.Visited,o.pop(),t.unshift(a),!s}for(let t in e)n[t]===ME.NotVisited&&i(t,[]);return{sorted:t,cycles:r}}function PE(e,t){for(let n in e)if(e[n]&&typeof e[n]==`object`){let r=e[n];if(Ow(r)){let e=r.reference;e.startsWith(`urn:uuid:`)&&t(e)}else PE(r,t)}}function FE(e){let t={};for(let n of e.entry??WC)n.fullUrl&&(t[n.fullUrl]=[]);for(let n of e.entry??WC){let e=n.fullUrl;n.resource&&PE(n.resource,n=>{t[n]&&t[n].push(e)})}return t}var IE={CSS:`text/css`,DICOM:`application/dicom`,FAVICON:`image/vnd.microsoft.icon`,FHIR_JSON:`application/fhir+json`,FORM_URL_ENCODED:`application/x-www-form-urlencoded`,HL7_V2:`x-application/hl7-v2+er7`,HTML:`text/html`,JAVASCRIPT:`text/javascript`,JSON:`application/json`,JSON_PATCH:`application/json-patch+json`,JWT:`application/jwt`,MULTIPART_FORM_DATA:`multipart/form-data`,PNG:`image/png`,SCIM_JSON:`application/scim+json`,SVG:`image/svg+xml`,TEXT:`text/plain`,TYPESCRIPT:`text/typescript`,PING:`x-application/ping`,XML:`text/xml`,CDA_XML:`application/cda+xml`,OCTET_STREAM:`application/octet-stream`},LE=class{listeners;constructor(){this.listeners={}}addEventListener(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)}removeEventListener(e,t){let n=this.listeners[e];if(n){for(let e=0;e<n.length;e++)if(n[e]===t){n.splice(e,1);return}}}dispatchEvent(e){let t=this.listeners[e.type];for(let n of t??WC)n.call(this,e);return!e.defaultPrevented}removeAllListeners(){this.listeners={}}listenerCount(e){return this.listeners[e]?.length??0}},RE=class{emitter=new LE;dispatchEvent(e){this.emitter.dispatchEvent(e)}addEventListener(e,t){this.emitter.addEventListener(e,t)}removeEventListener(e,t){this.emitter.removeEventListener(e,t)}removeAllListeners(){this.emitter.removeAllListeners()}listenerCount(e){return this.emitter.listenerCount(e)}},zE={"Patient-open":`Patient-open`,"Patient-close":`Patient-close`,"ImagingStudy-open":`ImagingStudy-open`,"ImagingStudy-close":`ImagingStudy-close`,"Encounter-open":`Encounter-open`,"Encounter-close":`Encounter-close`,"DiagnosticReport-open":`DiagnosticReport-open`,"DiagnosticReport-close":`DiagnosticReport-close`,"DiagnosticReport-select":`DiagnosticReport-select`,"DiagnosticReport-update":`DiagnosticReport-update`,syncerror:`syncerror`},BE=[`Patient`,`Encounter`,`ImagingStudy`,`DiagnosticReport`,`OperationOutcome`,`Bundle`],VE=[`DiagnosticReport-update`];function HE(e){return VE.includes(e)}function UE(e){if(VE.includes(e))throw new Fx(kx(`'context.version' is required for '${e}'.`))}var WE={"Patient-open":{patient:{resourceType:`Patient`},encounter:{resourceType:`Encounter`,optional:!0}},"Patient-close":{patient:{resourceType:`Patient`},encounter:{resourceType:`Encounter`,optional:!0}},"ImagingStudy-open":{study:{resourceType:`ImagingStudy`},encounter:{resourceType:`Encounter`,optional:!0},patient:{resourceType:`Patient`,optional:!0}},"ImagingStudy-close":{study:{resourceType:`ImagingStudy`},encounter:{resourceType:`Encounter`,optional:!0},patient:{resourceType:`Patient`,optional:!0}},"Encounter-open":{encounter:{resourceType:`Encounter`},patient:{resourceType:`Patient`}},"Encounter-close":{encounter:{resourceType:`Encounter`},patient:{resourceType:`Patient`}},"DiagnosticReport-open":{report:{resourceType:`DiagnosticReport`},encounter:{resourceType:`Encounter`,optional:!0},study:{resourceType:`ImagingStudy`,optional:!0,manyAllowed:!0},patient:{resourceType:`Patient`}},"DiagnosticReport-close":{report:{resourceType:`DiagnosticReport`},encounter:{resourceType:`Encounter`,optional:!0},study:{resourceType:`ImagingStudy`,optional:!0,manyAllowed:!0},patient:{resourceType:`Patient`}},"DiagnosticReport-select":{report:{resourceType:`DiagnosticReport`,reference:!0},patient:{resourceType:`Patient`,optional:!0,reference:!0},select:{resourceType:`*`,reference:!0,manyAllowed:!0}},"DiagnosticReport-update":{report:{resourceType:`DiagnosticReport`,reference:!0},patient:{resourceType:`Patient`,optional:!0,reference:!0},updates:{resourceType:`Bundle`}},syncerror:{operationoutcome:{resourceType:`OperationOutcome`}}};function GE(e){return BE.includes(e)}function KE(e){return!!e.endpoint}function qE(e){if(!JE(e))throw new Fx(kx(`subscriptionRequest must be an object conforming to SubscriptionRequest type.`));let{channelType:t,mode:n,topic:r,events:i}=e,a={"hub.channel.type":t,"hub.mode":n,"hub.topic":r,"hub.events":i.join(`,`)};return KE(e)&&(a.endpoint=e.endpoint),new URLSearchParams(a).toString()}function JE(e){if(typeof e!=`object`)return!1;let{channelType:t,mode:n,topic:r,events:i}=e;if(!(t&&n&&r&&i)||typeof r!=`string`||typeof i!=`object`||!Array.isArray(i)||i.length<1||t!==`websocket`||n!==`subscribe`&&n!==`unsubscribe`)return!1;for(let e of i)if(!zE[e])return!1;return!(KE(e)&&!(typeof e.endpoint==`string`&&e.endpoint.startsWith(`ws`)))}function YE(e,t,n,r){if(typeof t!=`object`)throw new Fx(kx(`context[${n}] is invalid. Context must contain a single valid FHIR resource! Resource is not an object.`));if(!(t.id&&typeof t.id==`string`))throw new Fx(kx(`context[${n}] is invalid. Resource must contain a valid string ID.`));if(!t.resourceType)throw new Fx(kx(`context[${n}] is invalid. Resource must contain a resource type. No resource type found.`));let i=r.resourceType;if(i!==`*`){if(!GE(t.resourceType))throw new Fx(kx(`context[${n}] is invalid. Resource must contain a valid FHIRcast resource type. Resource type is not a known resource type.`));if(i&&t.resourceType!==i)throw new Fx(kx(`context[${n}] is invalid. context[${n}] for the '${e}' event should contain resource of type ${i}.`))}}function XE(e,t,n,r,i){if(i.set(t.key,(i.get(t.key)??0)+1),r.reference){if(!Ow(t.reference))throw new Fx(kx(`context[${n}] is invalid. Expected key '${t.key}' to be a reference.`))}else YE(e,t.resource,n,r)}function ZE(e,t){let n=new Map,r=WE[e];for(let i=0;i<t.length;i++){let a=t[i].key;if(!r[a])throw new Fx(kx(`Key '${a}' not found for event '${e}'. Make sure to add only valid keys.`));XE(e,t[i],i,r[a],n)}for(let[t,i]of Object.entries(r)){if(!(i.optional||n.has(t)))throw new Fx(kx(`Missing required key '${t}' on context for '${e}' event.`));if(!i.manyAllowed&&(n.get(t)??0)>1)throw new Fx(kx(`${n.get(t)} context entries with key '${t}' found for the '${e}' event when schema only allows for 1.`))}}function QE(e,t,n,r){if(!(e&&typeof e==`string`))throw new Fx(kx(`Must provide a topic.`));if(!zE[t])throw new Fx(kx(`Must provide a valid FHIRcast event name. Supported events: ${Object.keys(zE).join(`, `)}`));if(typeof n!=`object`)throw new Fx(kx(`context must be a context object or array of context objects.`));if(VE.includes(t)&&!r)throw new Fx(kx(`The '${t}' event must contain a 'context.versionId'.`));let i=Array.isArray(n)?n:[n];return ZE(t,i),{timestamp:new Date().toISOString(),id:OE(),event:{"hub.topic":e,"hub.event":t,context:i,...r?{"context.versionId":r}:{}}}}var $E=class extends RE{subRequest;websocket;constructor(e){if(super(),this.subRequest=e,!e.endpoint)throw new Fx(kx(`Subscription request should contain an endpoint.`));if(!JE(e))throw new Fx(kx(`Subscription request failed validation.`));let t=new WebSocket(e.endpoint);t.addEventListener(`open`,()=>{this.dispatchEvent({type:`connect`}),t.addEventListener(`message`,e=>{let n=JSON.parse(e.data);if(n[`hub.topic`])return;let r=n;r.event[`hub.event`]!==`heartbeat`&&(this.dispatchEvent({type:`message`,payload:r}),t.send(JSON.stringify({id:n?.id,timestamp:new Date().toISOString()})))}),t.addEventListener(`close`,()=>{this.dispatchEvent({type:`disconnect`})})}),this.websocket=t}disconnect(){this.websocket.close()}};function eD(e){return JSON.parse(TE(e))}function tD(e){return e.split(`.`).length===3}function nD(e){let[t,n,r]=e.split(`.`);return eD(n)}function rD(e){try{return typeof nD(e).login_id==`string`}catch{return!1}}function iD(e){try{let t=nD(e).exp;return typeof t==`number`?t*1e3:void 0}catch{return}}var aD=class{medplum;constructor(e){this.medplum=e}async get(e){return this.medplum.get(`keyvalue/v1/${e}`)}async set(e,t){await this.medplum.put(`keyvalue/v1/${e}`,t,IE.TEXT)}async delete(e){await this.medplum.delete(`keyvalue/v1/${e}`)}},oD=class{[Symbol.toStringTag]=`ReadablePromise`;suspender;status=`pending`;response;error;constructor(e){this.suspender=e.then(e=>(this.status=`success`,this.response=e,e),e=>{throw this.status=`error`,this.error=e,e})}isPending(){return this.status===`pending`}isOk(){return this.status===`success`}read(){switch(this.status){case`pending`:throw this.suspender;case`error`:throw this.error;default:return this.response}}then(e,t){return this.suspender.then(e,t)}catch(e){return this.suspender.catch(e)}finally(e){return this.suspender.finally(e)}},sD=class{storage;prefix=``;constructor(e,t=``){this.storage=e??globalThis.localStorage??new cD,this.prefix=t}makeKey(e){return this.prefix+e}clear(){this.storage===globalThis.localStorage&&this.prefix?Object.keys(this.storage).filter(e=>e.startsWith(this.prefix)).forEach(e=>{this.storage.removeItem(e)}):this.storage.clear()}getString(e){return this.storage.getItem(this.makeKey(e))??void 0}setString(e,t){t?this.storage.setItem(this.makeKey(e),t):this.storage.removeItem(this.makeKey(e))}getObject(e){let t=this.getString(e);return t?JSON.parse(t):void 0}setObject(e,t){this.setString(e,t?rC(t):void 0)}},cD=class{data;constructor(){this.data=new Map}get length(){return this.data.size}clear(){this.data.clear()}getItem(e){return this.data.get(e)??null}setItem(e,t){t?this.data.set(e,t):this.data.delete(e)}removeItem(e){this.data.delete(e)}key(e){return Array.from(this.data.keys())[e]}},lD={Event:globalThis.Event===void 0?void 0:globalThis.Event,ErrorEvent:void 0,CloseEvent:void 0},uD=!1;function dD(){if(globalThis.Event===void 0)throw Error(`Unable to lazy init events for ReconnectingWebSocket. globalThis.Event is not defined yet`);lD.Event=globalThis.Event,lD.ErrorEvent=class extends Event{message;error;constructor(e,t){super(`error`,t),this.message=e.message,this.error=e}},lD.CloseEvent=class extends Event{code;reason;wasClean=!0;constructor(e=1e3,t=``,n){super(`close`,n),this.code=e,this.reason=t}}}function fD(e,t){if(!e)throw Error(t)}function pD(e){return new e.constructor(e.type,e)}var mD={maxReconnectionDelay:1e4,minReconnectionDelay:1e3+Math.random()*4e3,minUptime:5e3,reconnectionDelayGrowFactor:1.3,connectionTimeout:4e3,maxRetries:1/0,maxEnqueuedMessages:1/0,startClosed:!1,debug:!1},hD=!1,gD=class e extends RE{_ws;_retryCount=-1;_uptimeTimeout;_connectTimeout;_shouldReconnect=!0;_connectLock=!1;_binaryType;_closeCalled=!1;_messageQueue=[];_debugLogger=console.log.bind(console);_url;_protocols;_options;constructor(e,t,n={}){uD||=(dD(),!0),super(),this._url=e,this._protocols=t,this._options=n,this._options.startClosed&&(this._shouldReconnect=!1),this._options.binaryType?this._binaryType=this._options.binaryType:this._binaryType=`blob`,this._options.debugLogger&&(this._debugLogger=this._options.debugLogger),this._connect()}static get CONNECTING(){return 0}static get OPEN(){return 1}static get CLOSING(){return 2}static get CLOSED(){return 3}get CONNECTING(){return e.CONNECTING}get OPEN(){return e.OPEN}get CLOSING(){return e.CLOSING}get CLOSED(){return e.CLOSED}get binaryType(){return this._ws?this._ws.binaryType:this._binaryType}set binaryType(e){this._binaryType=e,this._ws&&(this._ws.binaryType=e)}get retryCount(){return Math.max(this._retryCount,0)}get bufferedAmount(){return this._messageQueue.reduce((e,t)=>(typeof t==`string`?e+=t.length:t instanceof Blob?e+=t.size:e+=t.byteLength,e),0)+(this._ws?.bufferedAmount??0)}get extensions(){return this._ws?.extensions??``}get protocol(){return this._ws?.protocol??``}get readyState(){return this._ws?this._ws.readyState:this._options.startClosed?e.CLOSED:e.CONNECTING}get url(){return this._ws?this._ws.url:``}get shouldReconnect(){return this._shouldReconnect}onclose=null;onerror=null;onmessage=null;onopen=null;close(e=1e3,t){if(this._closeCalled=!0,this._shouldReconnect=!1,this._clearTimeouts(),!this._ws){this._debug(`close enqueued: no ws instance`);return}if(this._ws.readyState===this.CLOSED){this._debug(`close: already closed`);return}this._ws.close(e,t)}reconnect(e,t){this._shouldReconnect=!0,this._closeCalled=!1,this._retryCount=-1,!this._ws||this._ws.readyState===this.CLOSED||this._disconnect(e,t),this._connect()}send(e){if(this._ws?.readyState===this.OPEN)this._debug(`send`,e),this._ws.send(e);else{let{maxEnqueuedMessages:t=mD.maxEnqueuedMessages}=this._options;this._messageQueue.length<t&&(this._debug(`enqueue`,e),this._messageQueue.push(e))}}_debug(...e){this._options.debug&&this._debugLogger(`RWS>`,...e)}_getNextDelay(){let{reconnectionDelayGrowFactor:e=mD.reconnectionDelayGrowFactor,minReconnectionDelay:t=mD.minReconnectionDelay,maxReconnectionDelay:n=mD.maxReconnectionDelay}=this._options,r=0;return this._retryCount>0&&(r=t*e**(this._retryCount-1),r>n&&(r=n)),this._debug(`next delay`,r),r}_wait(){return new Promise(e=>{setTimeout(e,this._getNextDelay())})}_connect(){if(this._connectLock||!this._shouldReconnect)return;this._connectLock=!0;let{maxRetries:e=mD.maxRetries,connectionTimeout:t=mD.connectionTimeout}=this._options;if(this._retryCount>=e){this._debug(`max retries reached`,this._retryCount,`>=`,e);return}this._retryCount++,this._debug(`connect`,this._retryCount),this._removeListeners(),this._wait().then(()=>{if(this._closeCalled){this._connectLock=!1;return}!this._options.WebSocket&&typeof WebSocket>`u`&&!hD&&(console.error(`‼️ No WebSocket implementation available. You should define options.WebSocket.`),hD=!0);let e=this._options.WebSocket||WebSocket;this._debug(`connect`,{url:this._url,protocols:this._protocols}),this._ws=this._protocols?new e(this._url,this._protocols):new e(this._url),this._ws.binaryType=this._binaryType,this._connectLock=!1,this._addListeners(),this._connectTimeout=setTimeout(()=>this._handleTimeout(),t)}).catch(e=>{this._connectLock=!1,this._handleError(new lD.ErrorEvent(Error(e.message),this))})}_handleTimeout(){this._debug(`timeout event`),this._handleError(new lD.ErrorEvent(Error(`TIMEOUT`),this))}_disconnect(e=1e3,t){if(this._clearTimeouts(),this._ws){this._removeListeners();try{this._ws.close(e,t),this._handleClose(new lD.CloseEvent(e,t,this))}catch{}}}_acceptOpen(){this._debug(`accept open`),this._retryCount=0}_handleOpen=e=>{this._debug(`open event`);let{minUptime:t=mD.minUptime}=this._options;clearTimeout(this._connectTimeout),this._uptimeTimeout=setTimeout(()=>this._acceptOpen(),t),fD(this._ws,`WebSocket is not defined`),this._ws.binaryType=this._binaryType,this._messageQueue.forEach(e=>this._ws?.send(e)),this._messageQueue=[],this.onopen&&this.onopen(e),this.dispatchEvent(pD(e))};_handleMessage=e=>{this._debug(`message event`),this.onmessage&&this.onmessage(e),this.dispatchEvent(pD(e))};_handleError=e=>{this._debug(`error event`,e.message),this._disconnect(void 0,e.message===`TIMEOUT`?`timeout`:void 0),this.onerror&&this.onerror(e),this._debug(`exec error listeners`),this.dispatchEvent(pD(e)),this._connect()};_handleClose=e=>{this._debug(`close event`),this._clearTimeouts(),this._shouldReconnect&&this._connect(),this.onclose&&this.onclose(e),this.dispatchEvent(pD(e))};_removeListeners(){this._ws&&(this._debug(`removeListeners`),this._ws.removeEventListener(`open`,this._handleOpen),this._ws.removeEventListener(`close`,this._handleClose),this._ws.removeEventListener(`message`,this._handleMessage),this._ws.removeEventListener(`error`,this._handleError))}_addListeners(){this._ws&&(this._debug(`addListeners`),this._ws.addEventListener(`open`,this._handleOpen),this._ws.addEventListener(`close`,this._handleClose),this._ws.addEventListener(`message`,this._handleMessage),this._ws.addEventListener(`error`,this._handleError))}_clearTimeouts(){clearTimeout(this._connectTimeout),clearTimeout(this._uptimeTimeout)}},_D=6e4,vD=[WebSocket.CLOSING,WebSocket.CLOSED],yD=class extends RE{criteria;constructor(...e){super(),this.criteria=new Set(e)}getCriteria(){return this.criteria}_addCriteria(e){this.criteria.add(e)}_removeCriteria(e){this.criteria.delete(e)}},bD=class{criteria;emitter;refCount;subscriptionProps;subscriptionId;token;tokenExpiry;state=`idle`;generation=0;lastUnrefTime;constructor(e,t){this.criteria=e,this.emitter=new yD(e),this.refCount=1,this.subscriptionProps=t?{...t}:void 0}nextGeneration(){return++this.generation}},xD=class{medplum;ws;masterSubEmitter;criteriaEntries;criteriaEntriesBySubscriptionId;wsClosed;pingTimer=void 0;tokenRefreshTimer=void 0;pingIntervalMs;waitingForPong=!1;currentProfile;constructor(e,t,n){if(!(e instanceof FD))throw new Fx(kx("First arg of constructor should be a `MedplumClient`"));let r;try{r=new URL(t).toString()}catch{throw new Fx(kx(`Not a valid URL`))}let i=n?.ReconnectingWebSocket?new n.ReconnectingWebSocket(r,void 0,{debug:n?.debug,debugLogger:n?.debugLogger}):new gD(r,void 0,{debug:n?.debug,debugLogger:n?.debugLogger});this.medplum=e,this.ws=i,this.masterSubEmitter=new yD,this.criteriaEntries=new Map,this.criteriaEntriesBySubscriptionId=new Map,this.wsClosed=!1,this.pingIntervalMs=n?.pingIntervalMs??5e3,this.currentProfile=e.getProfile(),this.setupListeners()}setupListeners(){let e=this.ws;e.addEventListener(`message`,e=>{try{let t=JSON.parse(e.data);if(t.type===`pong`){this.waitingForPong=!1;return}let n=t,r=n?.entry?.[0]?.resource;if(r.type===`heartbeat`){this.masterSubEmitter?.dispatchEvent({type:`heartbeat`,payload:n});return}if(r.type===`handshake`){let e=KS(r.subscription),t={type:`connect`,payload:{subscriptionId:e}};this.masterSubEmitter?.dispatchEvent(t);let n=this.criteriaEntriesBySubscriptionId.get(e);if(!n){console.warn(`Received handshake for criteria the SubscriptionManager is not listening for yet`);return}(n.state===`connecting`||n.state===`refreshing`)&&(n.state=`active`),n.emitter.dispatchEvent({...t});return}this.masterSubEmitter?.dispatchEvent({type:`message`,payload:n});let i=this.criteriaEntriesBySubscriptionId.get(KS(r.subscription));if(!i){console.warn(`Received notification for criteria the SubscriptionManager is not listening for`);return}i.emitter.dispatchEvent({type:`message`,payload:n})}catch(e){console.error(e);let t={type:`error`,payload:e};this.masterSubEmitter?.dispatchEvent(t);for(let e of this.getAllCriteriaEmitters())e.dispatchEvent({...t})}}),e.addEventListener(`error`,()=>{let e={type:`error`,payload:new Fx(Ax(Error(`WebSocket error`)))};this.masterSubEmitter?.dispatchEvent(e);for(let t of this.getAllCriteriaEmitters())t.dispatchEvent({...e})}),e.addEventListener(`close`,()=>{let e={type:`close`};this.masterSubEmitter?.dispatchEvent(e);for(let t of this.getAllCriteriaEmitters())t.dispatchEvent({...e});this.pingTimer&&(clearInterval(this.pingTimer),this.pingTimer=void 0,this.waitingForPong=!1),this.tokenRefreshTimer&&=(clearInterval(this.tokenRefreshTimer),void 0),this.wsClosed&&(this.criteriaEntries.clear(),this.criteriaEntriesBySubscriptionId.clear(),this.masterSubEmitter?.removeAllListeners())}),e.addEventListener(`open`,()=>{let t={type:`open`};this.masterSubEmitter?.dispatchEvent(t);for(let e of this.getAllCriteriaEmitters())e.dispatchEvent({...t});this.refreshAllSubscriptions().catch(console.error),this.pingTimer??=setInterval(()=>{this.waitingForPong?(this.waitingForPong=!1,e.reconnect()):(e.send(JSON.stringify({type:`ping`})),this.waitingForPong=!0),this.gcUnrefEntries()},this.pingIntervalMs),this.tokenRefreshTimer??=setInterval(()=>{this.checkTokenExpirations(),this.gcUnrefEntries()},_D)}),this.medplum.addEventListener(`change`,()=>{let e=this.medplum.getProfile();this.currentProfile&&e===void 0?this.ws.close():e&&this.currentProfile?.id!==e.id&&this.ws.reconnect(),this.currentProfile=e})}sendBind(e){this.ws.send(JSON.stringify({type:`bind-with-token`,payload:{token:e}}))}sendUnbind(e){this.ws.readyState===WebSocket.OPEN&&this.ws.send(JSON.stringify({type:`unbind-from-token`,payload:{token:e}}))}emitError(e,t){let n={type:`error`,payload:t};this.masterSubEmitter?.dispatchEvent(n),e.emitter.dispatchEvent({...n})}maybeEmitDisconnect(e){let{subscriptionId:t}=e;if(t){let n={type:`disconnect`,payload:{subscriptionId:t}};this.masterSubEmitter?.dispatchEvent(n),e.emitter.dispatchEvent({...n})}else console.warn("Called disconnect for `CriteriaEntry` before `subscriptionId` was present.")}isStale(e,t){return this.isEntryGettingRemoved(e)||e.generation!==t}maybeGetCriteriaEntry(e,t){let n=this.criteriaEntries.get(e);if(n){if(!t)return n.bareCriteria;for(let e of n.criteriaWithProps)if(uC(t,e.subscriptionProps))return e}}getAllCriteriaEmitters(){let e=[];for(let t of this.criteriaEntries.values())for(let n of SD(t))n.refCount>0&&e.push(n.emitter);return e}addCriteriaEntry(e){let{criteria:t,subscriptionProps:n}=e,r;this.criteriaEntries.has(t)?r=this.criteriaEntries.get(t):(r={criteriaWithProps:[]},this.criteriaEntries.set(t,r)),n?r.criteriaWithProps.push(e):r.bareCriteria=e}removeCriteriaEntry(e){e.state=`removed`,e.generation++;let{criteria:t,subscriptionProps:n,subscriptionId:r,token:i}=e;if(!this.criteriaEntries.has(t))return;let a=this.criteriaEntries.get(t);n?a.criteriaWithProps=a.criteriaWithProps.filter(e=>{let t=e.subscriptionProps;return!uC(n,t)}):a.bareCriteria=void 0,!a.bareCriteria&&a.criteriaWithProps.length===0&&(this.criteriaEntries.delete(t),this.masterSubEmitter?._removeCriteria(t)),r&&this.criteriaEntriesBySubscriptionId.delete(r),i&&this.sendUnbind(i)}async subscribeToCriteria(e){this.wsClosed&&await this.reconnectIfNeeded(),this.ws.readyState===WebSocket.OPEN&&e.state===`idle`&&(e.state=`connecting`,await this.rebindCriteriaEntry(e))}async refreshAllSubscriptions(){this.criteriaEntriesBySubscriptionId.clear();let e=[],t=[];for(let n of this.criteriaEntries.values())for(let r of SD(n))r.refCount===0?t.push(r):e.push(r);for(let e of t)this.removeCriteriaEntry(e);for(let t of e)t.token&&this.sendUnbind(t.token),t.token=void 0,t.tokenExpiry=void 0,t.state=`idle`,t.generation++,await this.subscribeToCriteria(t)}async rebindCriteriaEntry(e){let t=e.nextGeneration();try{if(!e.subscriptionId){let n=await this.medplum.createResource({...e.subscriptionProps,resourceType:`Subscription`,status:`active`,reason:`WebSocket subscription for ${GS(this.medplum.getProfile())}`,channel:{type:`websocket`},criteria:e.criteria});if(e.subscriptionId??=n.id,this.isStale(e,t))return}let{parameter:n}=await this.medplum.get(`fhir/R4/Subscription/${e.subscriptionId}/$get-ws-binding-token`,{cache:`no-cache`}),r=n?.find(e=>e.name===`token`)?.valueString,i=n?.find(e=>e.name===`websocket-url`)?.valueUrl,a=n?.find(e=>e.name===`expiration`)?.valueDateTime;if(!r)throw new Fx(kx(`Failed to get token`));if(!i)throw new Fx(kx(`Failed to get URL from $get-ws-binding-token`));if(!a)throw new Fx(kx(`Failed to get expiration from $get-ws-binding-token`));if(this.isStale(e,t))return;e.token=r,e.tokenExpiry=new Date(a).getTime(),this.criteriaEntriesBySubscriptionId.set(e.subscriptionId,e),this.sendBind(r)}catch(n){console.error(Lx(n)),e.generation===t&&!this.isEntryGettingRemoved(e)&&(e.state=e.state===`refreshing`?`active`:`idle`),this.emitError(e,n)}}checkTokenExpirations(){let e=Date.now();for(let t of this.criteriaEntries.values())for(let n of SD(t))n.refCount===0||!n.tokenExpiry||n.tokenExpiry-e<=3e5&&n.state===`active`&&this.ws.readyState===WebSocket.OPEN&&(n.state=`refreshing`,this.rebindCriteriaEntry(n).catch(e=>{this.masterSubEmitter?.dispatchEvent({type:`error`,payload:e})}))}addCriteria(e,t){this.masterSubEmitter&&this.masterSubEmitter._addCriteria(e);let n=this.maybeGetCriteriaEntry(e,t);if(n)return n.refCount===0&&(n.lastUnrefTime=void 0,n.generation++,n.state!==`active`&&(n.state=n.token?`active`:`idle`)),n.refCount+=1,n.state===`idle`&&this.subscribeToCriteria(n).catch(console.error),n.emitter;let r=new bD(e,t);return this.addCriteriaEntry(r),this.subscribeToCriteria(r).catch(console.error),r.emitter}removeCriteria(e,t){let n=this.maybeGetCriteriaEntry(e,t);if(!n||this.isEntryGettingRemoved(n)){console.warn("Criteria not known to `SubscriptionManager`. Possibly called remove too many times.");return}--n.refCount,n.refCount===0&&(n.lastUnrefTime=Date.now(),n.generation++)}gcUnrefEntries(){let e=Date.now(),t=[];for(let n of this.criteriaEntries.values())for(let r of SD(n))r.refCount===0&&r.lastUnrefTime!==void 0&&e-r.lastUnrefTime>=1e4&&t.push(r);for(let e of t)this.maybeEmitDisconnect(e),this.removeCriteriaEntry(e);t.length>0&&this.criteriaEntries.size===0&&this.closeWebSocket()}isEntryGettingRemoved(e){return e.refCount===0||e.state===`removed`}getWebSocket(){return this.ws}closeWebSocket(){if(!this.wsClosed){if(this.ws.readyState===WebSocket.OPEN)for(let e of this.criteriaEntries.values())for(let t of SD(e))t.token&&this.sendUnbind(t.token);this.wsClosed=!0,this.ws.close()}}reconnectWebSocket(){this.ws.reconnect(),this.wsClosed=!1}getCriteriaCount(){return this.getAllCriteriaEmitters().length}getMasterEmitter(){return this.masterSubEmitter||=new yD(...Array.from(this.criteriaEntries.keys())),this.masterSubEmitter}async reconnectIfNeeded(){vD.includes(this.getWebSocket().readyState)&&await new Promise(e=>{let t=()=>{this.getWebSocket().removeEventListener(`open`,t),e()};this.getWebSocket().addEventListener(`open`,t),this.reconnectWebSocket()})}};function SD(e){return e.bareCriteria?[e.bareCriteria,...e.criteriaWithProps]:e.criteriaWithProps}new cx(1e3);var CD=`5.1.7-365bb97`,wD=IE.FHIR_JSON+`, */*; q=0.1`,TD=`https://api.medplum.com/`,ED=1e3,DD=6e4,OD=0,kD=3e5,AD=`Binary/`,jD={resourceType:`Device`,id:`system`,deviceName:[{type:`model-name`,name:`System`}]},MD={ClientCredentials:`client_credentials`,AuthorizationCode:`authorization_code`,RefreshToken:`refresh_token`,JwtBearer:`urn:ietf:params:oauth:grant-type:jwt-bearer`,TokenExchange:`urn:ietf:params:oauth:grant-type:token-exchange`},ND={AccessToken:`urn:ietf:params:oauth:token-type:access_token`,RefreshToken:`urn:ietf:params:oauth:token-type:refresh_token`,IdToken:`urn:ietf:params:oauth:token-type:id_token`,Saml1Token:`urn:ietf:params:oauth:token-type:saml1`,Saml2Token:`urn:ietf:params:oauth:token-type:saml2`},PD={JwtBearer:`urn:ietf:params:oauth:client-assertion-type:jwt-bearer`},FD=class extends RE{options;fetch;createPdfImpl;storage;requestCache;cacheTime;baseUrl;fhirBaseUrl;authorizeUrl;tokenUrl;logoutUrl;fhircastHubUrl;cdsServicesUrl;defaultHeaders;onUnauthenticated;autoBatchTime;autoBatchQueue;maxRetries;maxRetryTime;refreshGracePeriod;subscriptionManager;medplumServer;clientId;clientSecret;credentialsInHeader;autoBatchTimerId;accessToken;accessTokenExpires;refreshToken;refreshPromise;profilePromise;sessionDetails;currentRateLimits;basicAuth;initPromise;initComplete=!0;keyValueClient;logLevel;constructor(e){if(super(),e?.baseUrl&&!e.baseUrl.startsWith(`http`))throw Error(`Base URL must start with http or https`);this.options=e??{},this.fetch=e?.fetch??ID(),this.storage=e?.storage??new sD(void 0,e?.storagePrefix),this.createPdfImpl=e?.createPdf,this.baseUrl=LC(e?.baseUrl??TD),this.fhirBaseUrl=zC(this.baseUrl,e?.fhirUrlPath??`fhir/R4`),this.authorizeUrl=zC(this.baseUrl,e?.authorizeUrl??`oauth2/authorize`),this.tokenUrl=zC(this.baseUrl,e?.tokenUrl??`oauth2/token`),this.logoutUrl=zC(this.baseUrl,e?.logoutUrl??`oauth2/logout`),this.fhircastHubUrl=zC(this.baseUrl,e?.fhircastHubUrl??`fhircast/STU3`),this.cdsServicesUrl=zC(this.baseUrl,e?.cdsServicesUrl??`cds-services`),this.clientId=e?.clientId??``,this.clientSecret=e?.clientSecret??``,this.credentialsInHeader=e?.authCredentialsMethod===`header`,this.defaultHeaders=e?.defaultHeaders??{},this.onUnauthenticated=e?.onUnauthenticated,this.refreshGracePeriod=e?.refreshGracePeriod??kD,this.logLevel=this.initializeLogLevel(e),this.maxRetries=e?.maxRetries??2,this.maxRetryTime=e?.maxRetryTime??2e3,this.cacheTime=e?.cacheTime??(bE()?DD:OD),this.cacheTime>0?this.requestCache=new cx(e?.resourceCacheSize??ED):this.requestCache=void 0,e?.autoBatchTime?(this.autoBatchTime=e.autoBatchTime,this.autoBatchQueue=[]):(this.autoBatchTime=0,this.autoBatchQueue=void 0),e?.accessToken&&this.setAccessToken(e.accessToken),this.storage.getInitPromise===void 0?(e?.accessToken||this.attemptResumeActiveLogin().catch(console.error),this.initPromise=Promise.resolve(),this.dispatchEvent({type:`storageInitialized`})):(this.initComplete=!1,this.initPromise=this.storage.getInitPromise(),this.initPromise.then(()=>{e?.accessToken||this.attemptResumeActiveLogin().catch(console.error),this.initComplete=!0,this.dispatchEvent({type:`storageInitialized`})}).catch(e=>{console.error(e),this.initComplete=!0,this.dispatchEvent({type:`storageInitFailed`,payload:{error:e}})})),this.setupStorageListener()}get isInitialized(){return this.initComplete}getInitPromise(){return this.initPromise}initializeLogLevel(e){return e?.logLevel?e.logLevel:e?.verbose===void 0?`none`:e.verbose?`verbose`:`none`}async attemptResumeActiveLogin(){let e=this.getActiveLogin();e&&(this.setAccessToken(e.accessToken,e.refreshToken),await this.refreshProfile())}getBaseUrl(){return this.baseUrl}getAuthorizeUrl(){return this.authorizeUrl}getTokenUrl(){return this.tokenUrl}getLogoutUrl(){return this.logoutUrl}getFhircastHubUrl(){return this.fhircastHubUrl}getCdsServicesUrl(){return this.cdsServicesUrl}getDefaultHeaders(){return this.defaultHeaders}clear(){this.storage.clear(),bE()&&sessionStorage.clear(),this.clearActiveLogin()}clearActiveLogin(){this.storage.setString(`activeLogin`,void 0),this.requestCache?.clear(),this.accessToken=void 0,this.refreshToken=void 0,this.refreshPromise=void 0,this.accessTokenExpires=void 0,this.sessionDetails=void 0,this.medplumServer=void 0,this.dispatchEvent({type:`change`})}invalidateUrl(e){e=e.toString(),this.requestCache?.delete(e)}invalidateAll(){this.requestCache?.clear()}invalidateSearches(e){let t=zC(this.fhirBaseUrl,e);for(let e of this.requestCache?.keys()??WC)(e.endsWith(t)||e.includes(t+`?`))&&this.requestCache?.delete(e)}get(e,t={}){e=e.toString();let n=this.getCacheEntry(e,t);if(n)return n.value;let r;r=e.startsWith(this.fhirBaseUrl)&&this.autoBatchQueue&&!t.disableAutoBatch?new Promise((n,r)=>{this.autoBatchQueue.push({method:`GET`,url:e.replace(this.fhirBaseUrl,``),options:t,resolve:n,reject:r}),this.autoBatchTimerId||=setTimeout(()=>this.executeAutoBatch(),this.autoBatchTime)}):this.request(`GET`,e,t);let i=new oD(r);return this.setCacheEntry(e,i,t),i}post(e,t,n,r={}){return e=e.toString(),this.setRequestBody(r,t),n&&this.setRequestContentType(r,n),this.invalidateUrl(e),this.request(`POST`,e,r)}put(e,t,n,r={}){return e=e.toString(),this.setRequestBody(r,t),n&&this.setRequestContentType(r,n),this.invalidateUrl(e),this.request(`PUT`,e,r)}patch(e,t,n={}){return e=e.toString(),this.setRequestBody(n,t),this.setRequestContentType(n,IE.JSON_PATCH),this.invalidateUrl(e),this.request(`PATCH`,e,n)}delete(e,t){return e=e.toString(),this.invalidateUrl(e),this.request(`DELETE`,e,t)}async startNewUser(e,t){let{codeChallengeMethod:n,codeChallenge:r}=await this.startPkce();return this.post(`auth/newuser`,{...e,clientId:e.clientId??this.clientId,codeChallengeMethod:n,codeChallenge:r},void 0,t)}async startNewProject(e,t){return this.post(`auth/newproject`,e,void 0,t)}async startNewPatient(e,t){return this.post(`auth/newpatient`,e,void 0,t)}async startLogin(e,t){return this.post(`auth/login`,{...await this.ensureCodeChallenge(e),clientId:e.clientId??this.clientId,scope:e.scope},void 0,t)}async startGoogleLogin(e,t){return this.post(`auth/google`,{...await this.ensureCodeChallenge(e),clientId:e.clientId??this.clientId,scope:e.scope},void 0,t)}async ensureCodeChallenge(e){return e.codeChallenge?e:{...e,...await this.startPkce()}}async signOut(){await this.post(this.logoutUrl,{}),this.clear()}async signInWithRedirect(e){let t=new URLSearchParams(SE.getSearch()).get(`code`);if(!t){await this.requestAuthorization(e);return}return this.processCode(t)}signOutWithRedirect(){SE.assign(this.logoutUrl)}async signInWithExternalAuth(e,t,n,r,i=!0){let a=r;i&&(a=await this.ensureCodeChallenge(r)),SE.assign(this.getExternalAuthRedirectUri(e,t,n,a,i))}async exchangeExternalAccessToken(e,t,n){if(t??=this.clientId,!t)throw Error(`MedplumClient is missing clientId`);let r={grant_type:MD.TokenExchange,subject_token_type:ND.AccessToken,client_id:t,subject_token:e};return n&&(r.membership_id=n),this.fetchTokens(r)}getExternalAuthRedirectUri(e,t,n,r,i=!0){let a=new URL(e);if(a.searchParams.set(`response_type`,`code`),a.searchParams.set(`client_id`,t),a.searchParams.set(`redirect_uri`,n),a.searchParams.set(`scope`,r.scope??`openid profile email`),a.searchParams.set(`state`,JSON.stringify(r)),i){let{codeChallenge:e,codeChallengeMethod:t}=r;if(!t)throw Error("`LoginRequest` for external auth must include a `codeChallengeMethod`.");if(!e)throw Error("`LoginRequest` for external auth must include a `codeChallenge`.");a.searchParams.set(`code_challenge_method`,t),a.searchParams.set(`code_challenge`,e)}return a.toString()}fhirUrl(...e){return new URL(zC(this.fhirBaseUrl,e.join(`/`)))}fhirSearchUrl(e,t){let n=this.fhirUrl(e);return t&&(n.search=VC(t)),n}search(e,t,n){let r=this.fhirSearchUrl(e,t),i=`search-`+r.toString(),a=this.getCacheEntry(i,n);if(a)return a.value;let o=this.getBundle(r,n);return this.setCacheEntry(i,o,n),o}searchOne(e,t,n){let r=this.fhirSearchUrl(e,t);r.searchParams.set(`_count`,`1`),r.searchParams.sort();let i=`searchOne-`+r.toString(),a=this.getCacheEntry(i,n);if(a)return a.value;let o=new oD(this.search(e,r.searchParams,n).then(e=>e.entry?.[0]?.resource));return this.setCacheEntry(i,o,n),o}searchResources(e,t,n){let r=`searchResources-`+this.fhirSearchUrl(e,t).toString(),i=this.getCacheEntry(r,n);if(i)return i.value;let a=new oD(this.search(e,t,n).then(RD));return this.setCacheEntry(r,a,n),a}async*searchResourcePages(e,t,n){let r=this.fhirSearchUrl(e,t);for(;r;){let t=new URL(r).searchParams;t.has(`_count`)||t.set(`_count`,`1000`);let i=await this.search(e,t,n),a=i.link?.find(e=>e.relation===`next`);if(!i.entry?.length&&!a)break;yield RD(i),r=a?.url?new URL(a.url):void 0}}valueSetExpand(e,t){let n=this.fhirUrl(`ValueSet`,`$expand`);return n.search=new URLSearchParams(e).toString(),this.get(n.toString(),t)}getCached(e,t){let n=this.requestCache?.get(this.fhirUrl(e,t).toString())?.value;return n?.isOk()?n.read():void 0}getCachedReference(e){let t=e.reference;if(!t)return;if(t===`system`)return jD;let[n,r]=t.split(`/`);if(!(!n||!r))return this.getCached(n,r)}readResource(e,t,n){if(!t)throw Error(`The "id" parameter cannot be null, undefined, or an empty string.`);return this.get(this.fhirUrl(e,t),n)}readReference(e,t){let n=e.reference;if(!n)return new oD(Promise.reject(Error(`Missing reference`)));if(n===`system`)return new oD(Promise.resolve(jD));let[r,i]=n.split(`/`);return!r||!i?new oD(Promise.reject(Error(`Invalid reference`))):this.readResource(r,i,t)}readCanonical(e,t,n){return Array.isArray(e)?this.searchOne(``,{_type:e.join(`,`),url:t},n):this.searchOne(e,`url=`+t,n)}requestSchema(e,t){if(Zx(e))return Promise.resolve();let n=e+`-requestSchema`,r=this.getCacheEntry(n,void 0);if(r)return r.value;let i=new oD((async()=>{let t=`{
|
|
57
57
|
StructureDefinitionList(_filter: "name eq ${e}") {
|
|
58
58
|
resourceType,
|
|
59
59
|
name,
|
|
@@ -93,7 +93,7 @@ ${o?`${s(`light`)}{${o}}`:``}`}function Er({color:e,theme:t,autoContrast:n}){ret
|
|
|
93
93
|
expression,
|
|
94
94
|
target
|
|
95
95
|
}
|
|
96
|
-
}`.replaceAll(/\s+/g,` `),n=await this.graphql(t);Yx(n.data.StructureDefinitionList);for(let e of n.data.SearchParameterList)hw(e)})());return this.setCacheEntry(n,i,t),i}requestProfileSchema(e,t){if(!t?.expandProfile&&eS(e))return Promise.resolve();let n=e+`-requestSchema`+(t?.expandProfile?`-nested`:``),r=this.getCacheEntry(n,void 0);if(r)return r.value;let i=new aD((async()=>{if(t?.expandProfile){let t=this.fhirUrl(`StructureDefinition`,`$expand-profile`);t.search=new URLSearchParams({url:e}).toString(),Yx(await this.post(t.toString(),{}))}else{let t=await this.searchOne(`StructureDefinition`,{url:e,_sort:`-_lastUpdated`});if(!t){console.warn(`No StructureDefinition found for ${e}!`);return}Xx(t)}})());return this.setCacheEntry(n,i,t),i}readHistory(e,t,n,r){let i=this.fhirUrl(e,t,`_history`);return n?.count&&i.searchParams.set(`_count`,n.count.toString()),n?.offset&&i.searchParams.set(`_offset`,n.offset.toString()),this.get(i.toString(),r)}readVersion(e,t,n,r){return this.get(this.fhirUrl(e,t,`_history`,n),r)}readPatientEverything(e,t){return this.getBundle(this.fhirUrl(`Patient`,e,`$everything`),t)}readPatientSummary(e,t){return this.getBundle(this.fhirUrl(`Patient`,e,`$summary`),t)}createResource(e,t){if(!e.resourceType)throw Error(`Missing resourceType`);return this.invalidateSearches(e.resourceType),this.post(this.fhirUrl(e.resourceType),e,void 0,t)}async createResourceIfNoneExist(e,t,n={}){let r=this.fhirUrl(e.resourceType);this.setRequestHeader(n,`If-None-Exist`,t);let i=await this.post(r,e,void 0,n);return this.cacheResource(i,n),this.invalidateUrl(this.fhirUrl(e.resourceType,e.id,`_history`)),this.invalidateSearches(e.resourceType),i}async upsertResource(e,t,n){let r=this.fhirSearchUrl(e.resourceType,t),i=await this.put(r,e,void 0,n);return i||=e,this.cacheResource(i,n),this.invalidateUrl(this.fhirUrl(e.resourceType,e.id,`_history`)),this.invalidateSearches(e.resourceType),i}async createAttachment(e,t,n,r,i){let a=zD(e,t,n,r);if(a.contentType===FE.XML){let e=a.data,t;t=e instanceof Blob?await new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{if(!r.result){n(Error(`Failed to load file`));return}t(r.result)},r.readAsText(e,`utf-8`)}):ArrayBuffer.isView(e)?new TextDecoder().decode(e):e,t.includes(`<ClinicalDocument`)&&t.includes(`urn:hl7-org:v3`)&&(a={...a,contentType:FE.CDA_XML})}let o=i??(typeof t==`object`?t:{}),s=await this.createBinary(a,o);return{contentType:a.contentType,url:s.url,title:a.filename}}createBinary(e,t,n,r,i){let a=zD(e,t,n,r),o=i??(typeof t==`object`?t:{}),{data:s,contentType:c,filename:l,securityContext:u,onProgress:d}=a,f=this.fhirUrl(`Binary`);return l&&f.searchParams.set(`_filename`,l),u?.reference&&this.setRequestHeader(o,`X-Security-Context`,u.reference),d?this.uploadwithProgress(f,s,c,d,o):this.post(f,s,c,o)}uploadwithProgress(e,t,n,r,i){return new Promise((a,o)=>{let s=new XMLHttpRequest,c=()=>s.abort();i?.signal?.addEventListener(`abort`,c);let l=e=>{i?.signal?.removeEventListener(`abort`,c),e instanceof Error?o(e):a(e)};if(s.responseType=`json`,s.onabort=()=>l(new DOMException(`Request aborted`,`AbortError`)),s.onerror=()=>l(Error(`Request error`)),r&&(s.upload.onprogress=e=>r(e),s.upload.onload=e=>r(e)),s.onload=()=>{s.status>=200&&s.status<300?l(s.response):l(new Fx(Ix(s.response||s.statusText)))},s.open(`POST`,e),s.withCredentials=!0,s.setRequestHeader(`Authorization`,`Bearer `+this.accessToken),s.setRequestHeader(`Cache-Control`,`no-cache, no-store, max-age=0`),s.setRequestHeader(`Content-Type`,n),this.options.extendedMode!==!1&&s.setRequestHeader(`X-Medplum`,`extended`),i?.headers){let e=i.headers;for(let[t,n]of Object.entries(e))s.setRequestHeader(t,n)}s.send(t)})}async createPdf(e,t,n,r){if(!this.createPdfImpl)throw Error(`PDF creation not enabled`);let i=VD(e,t,n,r),a=typeof t==`object`?t:{},{docDefinition:o,tableLayouts:s,fonts:c,...l}=i,u=await this.createPdfImpl(o,s,c),d={...l,data:u,contentType:`application/pdf`};return this.createBinary(d,a)}createComment(e,t,n){let r=this.getProfile(),i,a;return e.resourceType===`Encounter`&&(i=WS(e),a=e.subject),e.resourceType===`ServiceRequest`&&(i=e.encounter,a=e.subject),e.resourceType===`Patient`&&(a=WS(e)),this.createResource({resourceType:`Communication`,status:`completed`,basedOn:[WS(e)],encounter:i,subject:a,sender:r?WS(r):void 0,sent:new Date().toISOString(),payload:[{contentString:t}]},n)}async updateResource(e,t){if(!e.resourceType)throw Error(`Missing resourceType`);if(!e.id)throw Error(`Missing id`);let n=await this.put(this.fhirUrl(e.resourceType,e.id),e,void 0,t);return n||=e,this.cacheResource(n,t),this.invalidateUrl(this.fhirUrl(e.resourceType,e.id,`_history`)),this.invalidateSearches(e.resourceType),n}async patchResource(e,t,n,r){let i=await this.patch(this.fhirUrl(e,t),n,r);return this.cacheResource(i,r),this.invalidateUrl(this.fhirUrl(e,t,`_history`)),this.invalidateSearches(e),i}deleteResource(e,t,n){return this.deleteCacheEntry(this.fhirUrl(e,t).toString()),this.invalidateSearches(e),this.delete(this.fhirUrl(e,t),n)}validateResource(e,t){return this.post(this.fhirUrl(e.resourceType,`$validate`),e,void 0,t)}executeBot(e,t,n,r){let i;if(typeof e==`string`){let t=e;i=this.fhirUrl(`Bot`,t,`$execute`)}else{let t=e;i=this.fhirUrl(`Bot`,`$execute`),i.searchParams.set(`identifier`,t.system+`|`+t.value)}return this.post(i,t,n,r)}executeBatch(e,t){return this.post(this.fhirBaseUrl,e,void 0,t)}sendEmail(e,t){return this.post(`email/v1/send`,e,FE.JSON,t)}graphql(e,t,n,r){return this.post(this.fhirUrl(`$graphql`),{query:e,operationName:t,variables:n},FE.JSON,r)}readResourceGraph(e,t,n,r){return this.get(`${this.fhirUrl(e,t)}/$graph?graph=${n}`,r)}pushToAgent(e,t,n,r,i,a){let{waitTimeout:o,returnAck:s,...c}=a??{};return this.post(this.fhirUrl(`Agent`,KS(e),`$push`),{destination:typeof t==`string`?t:GS(t),body:n,contentType:r,waitForResponse:i,...o===void 0?void 0:{waitTimeout:o},...s===void 0?void 0:{returnAck:s}},FE.FHIR_JSON,c)}getCdsServices(e){return this.get(this.cdsServicesUrl,e)}callCdsService(e,t,n){return this.post(RC(this.cdsServicesUrl,e),t,FE.JSON,n)}getActiveLogin(){return this.storage.getObject(`activeLogin`)}async setActiveLogin(e){(!this.sessionDetails?.profile||GS(this.sessionDetails.profile)!==e.profile?.reference)&&this.clearActiveLogin(),this.setAccessToken(e.accessToken,e.refreshToken),this.storage.setObject(`activeLogin`,e),this.addLogin(e),this.refreshPromise=void 0,await this.refreshProfile()}getAccessToken(){return this.accessToken}isAuthenticated(e){return this.accessTokenExpires!==void 0&&Date.now()<this.accessTokenExpires-(e??this.refreshGracePeriod)}setAccessToken(e,t){this.accessToken=e,this.refreshToken=t,this.accessTokenExpires=rD(e),this.medplumServer=nD(e)}getLogins(){return this.storage.getObject(`logins`)??[]}addLogin(e){let t=this.getLogins().filter(t=>t.profile?.reference!==e.profile?.reference);t.push(e),this.storage.setObject(`logins`,t)}async refreshProfile(){if(this.medplumServer)return this.profilePromise=new Promise((e,t)=>{this.get(`auth/me`,{cache:`no-cache`}).then(t=>{this.profilePromise=void 0;let n=this.sessionDetails?.profile?.id!==t.profile.id;this.sessionDetails=t,n&&this.dispatchEvent({type:`change`}),e(t.profile),this.dispatchEvent({type:`profileRefreshed`})}).catch(t)}),this.dispatchEvent({type:`profileRefreshing`}),this.profilePromise}isLoading(){return!this.isInitialized||!!this.profilePromise&&!this.sessionDetails?.profile}isSuperAdmin(){return!!this.sessionDetails?.project.superAdmin}isProjectAdmin(){return!!this.sessionDetails?.membership.admin}getProject(){return this.sessionDetails?.project}getProjectMembership(){return this.sessionDetails?.membership}getProfile(){return this.sessionDetails?.profile}async getProfileAsync(){return this.profilePromise?this.profilePromise:this.sessionDetails?this.sessionDetails.profile:this.refreshProfile()}getUserConfiguration(){return this.sessionDetails?.config}getAccessPolicy(){return this.sessionDetails?.accessPolicy}async download(e,t={}){this.refreshPromise&&await this.refreshPromise;let n=e.toString();n.startsWith(kD)&&(e=this.fhirUrl(n));let r=t.headers;return r||(r={},t.headers=r),r.Accept||=`*/*`,this.addFetchOptionsDefaults(t),(await this.fetchWithRetry(e.toString(),t)).blob()}async createMedia(e,t){let{additionalFields:n,...r}=e,i=await this.createResource({resourceType:`Media`,status:`preparation`,content:{contentType:e.contentType},...n});r.securityContext||=WS(i);let a=await this.createAttachment(r,t);return this.updateResource({...i,status:`completed`,content:a})}async uploadMedia(e,t,n,r,i){return this.createMedia({data:e,contentType:t,filename:n,additionalFields:r},i)}async createDocumentReference(e,t){let{additionalFields:n,...r}=e,i=await this.createResource({resourceType:`DocumentReference`,status:`current`,content:[{attachment:{contentType:e.contentType}}],...n});r.securityContext||=WS(i);let a=await this.createAttachment(r,t);return this.updateResource({...i,content:[{attachment:a}]})}async bulkExport(e=``,t,n,r){let i=e&&`${e}/`,a=this.fhirUrl(`${i}$export`);return t&&a.searchParams.set(`_type`,t),n&&a.searchParams.set(`_since`,n),this.startAsyncRequest(a.toString(),r)}async startAsyncRequest(e,t={}){this.addFetchOptionsDefaults(t);let n=t.headers;return n.Prefer=`respond-async`,this.request(`POST`,e,t)}get keyValue(){return this.keyValueClient||=new iD(this),this.keyValueClient}getBundle(e,t){return new aD((async()=>{let n=await this.get(e,t);for(let e of n.entry??UC)this.cacheResource(e.resource,t);return n})())}isCacheEnabled(e){return!!this.requestCache&&!this.getRequestHeader(e,`x-medplum-on-behalf-of`)}getCacheEntry(e,t){if(!this.isCacheEnabled(t)||t?.cache===`no-cache`||t?.cache===`reload`)return;let n=this.requestCache.get(e);if(!(!n||n.requestTime+this.cacheTime<Date.now()))return n}setCacheEntry(e,t,n){this.isCacheEnabled(n)&&(this.requestCache.set(e,{requestTime:Date.now(),value:t}),n?.signal&&n.signal.addEventListener(`abort`,()=>{this.requestCache.delete(e)}))}cacheResource(e,t){e?.id&&!e.meta?.tag?.some(e=>e.code===`SUBSETTED`)&&this.setCacheEntry(this.fhirUrl(e.resourceType,e.id).toString(),new aD(Promise.resolve(e)),t)}deleteCacheEntry(e){this.requestCache&&this.requestCache.delete(e)}async request(e,t,n={},r={}){await this.refreshIfExpired(),n.method=e,this.addFetchOptionsDefaults(n);let i=await this.fetchWithRetry(t,n);if(i.status===401)return this.handleUnauthenticated(e,t,n);if(i.status===204||i.status===304)return;let a=i.headers.get(`content-type`)?.includes(`json`);if(i.status===404&&!a)throw new Fx(Cx);let o=await this.parseBody(i,a);if(i.status===200&&n.followRedirectOnOk||i.status===201&&n.followRedirectOnCreated){let e=await ID(i,o);if(e)return this.request(`GET`,e,{...n,body:void 0})}if(i.status===202&&n.pollStatusOnAccepted){let e=await ID(i,o)??r.statusUrl;if(e)return this.pollStatus(e,n,r)}if(i.status>=400)throw new Fx(Ix(o));return o}async parseBody(e,t){let n;if(e.headers.get(`content-length`)!==`0`){if(t)try{n=await e.json()}catch(t){throw console.error(`Error parsing response`,e.status,t),t}else n=await e.text();return n}}async fetchWithRetry(e,t){e.startsWith(`http`)||(e=RC(this.baseUrl,e));let n=t?.maxRetries??this.maxRetries;for(let r=0;r<=n;r++)try{this.logLevel!==`none`&&this.logRequest(e,t);let i=await this.fetch(e,t);if(this.logLevel!==`none`&&this.logResponse(i),this.setCurrentRateLimit(i),r>=n||!HD(i))return i;let a=this.getRetryDelay(r);if(a>(t.maxRetryTime??this.maxRetryTime))return i;await jC(a,{signal:t.signal})}catch(e){if(e.message===`Failed to fetch`&&r===0&&this.dispatchEvent({type:`offline`}),e.name===`AbortError`||r===n)throw e}throw Error(`Unreachable`)}logRequest(e,t){if(console.log(`> ${t.method} ${e}`),this.logLevel===`verbose`&&t.headers){let e=t.headers;for(let t of FC(Object.keys(e)))console.log(`> ${t}: ${e[t]}`)}}logResponse(e){console.log(`< ${e.status} ${e.statusText}`),this.logLevel===`verbose`&&e.headers&&e.headers.forEach((e,t)=>console.log(`< ${t}: ${e}`))}setCurrentRateLimit(e){if(!e?.headers||typeof e.headers.get!=`function`)return;let t=e.headers.get(`ratelimit`);t&&(this.currentRateLimits=t)}rateLimitStatus(){if(!this.currentRateLimits)return[];let e=this.currentRateLimits;return e.split(`,`).map(t=>{let n=t.split(`;`).map(e=>e.trim());if(n.length!==3)throw Error(`Could not parse RateLimit header: `+e);let r=n[0].substring(1,n[0].length-1),i=n.find(e=>e.startsWith(`r=`))?.substring(2),a=i?Number.parseInt(i,10):NaN,o=n.find(e=>e.startsWith(`t=`))?.substring(2),s=o?Number.parseInt(o,10):NaN;if(!r||Number.isNaN(a)||Number.isNaN(s))throw Error(`Could not parse RateLimit header: `+e);return{name:r,remainingUnits:a,secondsUntilReset:s,resetsAfter:Math.ceil((Date.now()+1e3*s)/1e3)}})}getRetryDelay(e){let t=this.rateLimitStatus(),n=500*1.5**e;for(let e of t)e.remainingUnits||(n=Math.max(n,e.secondsUntilReset*1e3));return n}async pollStatus(e,t,n){let r={...t,method:`GET`,body:void 0,redirect:`follow`};return n.pollCount===void 0?(t.headers&&typeof t.headers==`object`&&`Prefer`in t.headers&&(r.headers={...t.headers},delete r.headers.Prefer),n.statusUrl=e,n.pollCount=1):(await jC(t.pollStatusPeriod??1e3,{signal:t.signal}),n.pollCount++),this.request(`GET`,e,r,n)}async executeAutoBatch(){if(this.autoBatchQueue===void 0)return;let e=[...this.autoBatchQueue];if(this.autoBatchQueue.length=0,this.autoBatchTimerId=void 0,e.length===1){let t=e[0];try{t.resolve(await this.request(t.method,RC(this.fhirBaseUrl,t.url),t.options))}catch(e){t.reject(new Fx(Ix(e)))}return}let t={resourceType:`Bundle`,type:`batch`,entry:e.map(e=>({request:{method:e.method,url:e.url},resource:e.options.body?JSON.parse(e.options.body):void 0}))},n=await this.post(this.fhirBaseUrl,t);for(let t=0;t<e.length;t++){let r=e[t],i=n.entry?.[t];i?.response?.outcome&&!Nx(i.response.outcome)?r.reject(new Fx(i.response.outcome)):r.resolve(i?.resource)}}addFetchOptionsDefaults(e){Object.entries(this.defaultHeaders).forEach(([t,n])=>{this.setRequestHeader(e,t,n)}),this.setRequestHeader(e,`Accept`,CD,!0),this.options.extendedMode!==!1&&this.setRequestHeader(e,`X-Medplum`,`extended`),e.body&&this.setRequestHeader(e,`Content-Type`,FE.FHIR_JSON,!0),this.accessToken?this.setRequestHeader(e,`Authorization`,`Bearer `+this.accessToken):this.basicAuth&&this.setRequestHeader(e,`Authorization`,`Basic `+this.basicAuth),e.cache||=`no-cache`,e.credentials||=`include`}setRequestContentType(e,t){this.setRequestHeader(e,`Content-Type`,t)}getRequestHeader(e,t){let n=e?.headers;if(n){if(Array.isArray(n)){let e=n.find(([e])=>e.toLowerCase()===t.toLowerCase());return e?e[1]:void 0}else if(n instanceof Headers)return n.get(t)??void 0;else if(_C(n))return n[t]??void 0}}setRequestHeader(e,t,n,r=!1){let i=e.headers;i?Array.isArray(i)?(!r||!i.some(([e])=>e.toLowerCase()===t.toLowerCase()))&&i.push([t,n]):i instanceof Headers?(!r||!i.has(t))&&i.set(t,n):_C(i)&&(!r||!i[t])&&(i[t]=n):e.headers={[t]:n}}setRequestBody(e,t){typeof t==`string`||typeof Blob<`u`&&(t instanceof Blob||t?.constructor.name===`Blob`)||typeof File<`u`&&(t instanceof File||t?.constructor.name===`File`)||typeof Uint8Array<`u`&&(t instanceof Uint8Array||t?.constructor.name===`Uint8Array`)?e.body=t:t&&(e.body=JSON.stringify(t))}async handleUnauthenticated(e,t,n){if(this.refresh())return this.request(e,t,n);throw this.clear(),this.onUnauthenticated?.(),new Fx(wx)}async startPkce(){let e=TE();sessionStorage.setItem(`pkceState`,e);let t=TE().slice(0,128);sessionStorage.setItem(`codeVerifier`,t);try{return{codeChallengeMethod:`S256`,codeChallenge:wC(await EE(t)).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replaceAll(`=`,``)}}catch(e){return console.warn(`Failed to hash code verifier. Falling back to 'plain' code challenge method`,e),{codeChallengeMethod:`plain`,codeChallenge:t}}}async requestAuthorization(e){let t=await this.ensureCodeChallenge(e??{}),n=new URL(this.authorizeUrl);n.searchParams.set(`response_type`,`code`),n.searchParams.set(`state`,sessionStorage.getItem(`pkceState`)),n.searchParams.set(`client_id`,t.clientId??this.clientId),n.searchParams.set(`redirect_uri`,t.redirectUri??xE.getOrigin()),n.searchParams.set(`code_challenge_method`,t.codeChallengeMethod),n.searchParams.set(`code_challenge`,t.codeChallenge),n.searchParams.set(`scope`,t.scope??`openid profile`),xE.assign(n.toString())}processCode(e,t){let n={grant_type:jD.AuthorizationCode,code:e,client_id:t?.clientId??this.clientId??``,redirect_uri:t?.redirectUri??xE.getOrigin()};if(typeof sessionStorage<`u`){let e=sessionStorage.getItem(`codeVerifier`);e&&(n.code_verifier=e)}return this.fetchTokens(n)}refreshIfExpired(e){return!this.refreshPromise&&this.accessTokenExpires!==void 0&&!this.isAuthenticated(e)&&this.refresh(),this.refreshPromise??Promise.resolve()}refresh(){if(this.refreshPromise)return this.refreshPromise;if(this.refreshToken)return this.refreshPromise=this.fetchTokens({grant_type:jD.RefreshToken,client_id:this.clientId??``,refresh_token:this.refreshToken}),this.refreshPromise;if(this.clientId&&this.clientSecret)return this.refreshPromise=this.startClientLogin(this.clientId,this.clientSecret),this.refreshPromise}async startClientLogin(e,t){return this.clientId=e,this.clientSecret=t,this.fetchTokens({grant_type:jD.ClientCredentials,client_id:e,client_secret:t})}async startJwtBearerLogin(e,t,n){return this.clientId=e,this.fetchTokens({grant_type:jD.JwtBearer,client_id:e,assertion:t,scope:n})}async startJwtAssertionLogin(e){return this.fetchTokens({grant_type:jD.ClientCredentials,client_assertion_type:ND.JwtBearer,client_assertion:e})}setBasicAuth(e,t){this.clientId=e,this.clientSecret=t,this.basicAuth=CE(e+`:`+t)}setLogLevel(e){this.logLevel=e,this.options.verbose=e===`verbose`}getLogLevel(){return this.logLevel}setVerbose(e){this.logLevel=e?`verbose`:`none`,this.options.verbose=e}async fhircastSubscribe(e,t){if(!(typeof e==`string`&&e!==``))throw new Fx(kx(`Invalid topic provided. Topic must be a valid string.`));if(!(typeof t==`object`&&Array.isArray(t)&&t.length>0))throw new Fx(kx(`Invalid events provided. Events must be an array of event names containing at least one event.`));let n={channelType:`websocket`,mode:`subscribe`,topic:e,events:t},r=(await this.post(this.fhircastHubUrl,KE(n),FE.FORM_URL_ENCODED))[`hub.channel.endpoint`];if(!r)throw Error(`Invalid response!`);return n.endpoint=r,n}async fhircastUnsubscribe(e){if(!qE(e))throw new Fx(kx(`Invalid topic or subscriptionRequest. SubscriptionRequest must be an object.`));if(!(e.endpoint&&typeof e.endpoint==`string`&&e.endpoint.startsWith(`ws`)))throw new Fx(kx(`Provided subscription request must have an endpoint in order to unsubscribe.`));e.mode=`unsubscribe`,await this.post(this.fhircastHubUrl,KE(e),FE.FORM_URL_ENCODED)}fhircastConnect(e){return new QE(e)}async fhircastPublish(e,t,n,r){return VE(t)?this.post(this.fhircastHubUrl,ZE(e,t,n,r),FE.JSON):(HE(t),this.post(this.fhircastHubUrl,ZE(e,t,n),FE.JSON))}async fhircastGetContext(e){return this.get(`${this.fhircastHubUrl}/${e}`,{cache:`no-cache`})}async invite(e,t){return this.post(`admin/projects/`+e+`/invite`,t)}async handleTokenError(e){try{let t=await e.json();throw Mx(t)?new Fx(t):t.error_description?new Fx(Ox(t.error_description)):Error(JSON.stringify(t))}catch(e){throw e instanceof Fx?(e.message=`Failed to fetch tokens: ${e.message}`,e):new Fx(Ox(`Failed to fetch tokens`),{cause:e})}}async fetchTokens(e){let t=new URLSearchParams(e),n={...this.defaultHeaders,"Content-Type":FE.FORM_URL_ENCODED};this.basicAuth&&(n.Authorization=`Basic ${this.basicAuth}`),this.credentialsInHeader&&(t.delete(`client_id`),t.delete(`client_secret`),!this.basicAuth&&e.client_id&&e.client_secret&&(n.Authorization=`Basic ${CE(e.client_id+`:`+e.client_secret)}`));let r={method:`POST`,headers:n,body:t.toString(),credentials:`include`},i;try{i=await this.fetchWithRetry(this.tokenUrl,r)}catch(e){throw this.refreshPromise=void 0,e}i.ok||(this.clearActiveLogin(),this.onUnauthenticated?.(),await this.handleTokenError(i));let a=await i.json();return await this.verifyTokens(a),this.getProfile()}async verifyTokens(e){let t=e.access_token;if(eD(t)){let e=tD(t);if(Date.now()>=e.exp*1e3)throw this.clearActiveLogin(),new Fx(Tx);if(e.cid){if(e.cid!==this.clientId)throw this.clearActiveLogin(),new Fx(Ex)}else if(this.clientId&&e.client_id!==this.clientId)throw this.clearActiveLogin(),new Fx(Ex)}return this.setActiveLogin({accessToken:t,refreshToken:e.refresh_token,project:e.project,profile:e.profile})}checkSessionDetailsMatchLogin(e){return this.sessionDetails&&e?e.profile?.reference?.endsWith(this.sessionDetails.profile.id)??!1:!0}setupStorageListener(){try{window.addEventListener(`storage`,e=>{if(e.key===null)xE.reload();else if(e.key===this.storage.makeKey(`activeLogin`)){let t=e.oldValue?JSON.parse(e.oldValue):void 0,n=e.newValue?JSON.parse(e.newValue):void 0;t?.profile.reference!==n?.profile.reference||!this.checkSessionDetailsMatchLogin(n)?xE.reload():n?this.setAccessToken(n.accessToken,n.refreshToken):this.clear()}})}catch{}}getSubscriptionManager(){return this.subscriptionManager||=new bD(this,zC(this.baseUrl,`/ws/subscriptions-r4`)),this.subscriptionManager}subscribeToCriteria(e,t){return this.getSubscriptionManager().addCriteria(e,t)}unsubscribeFromCriteria(e,t){this.subscriptionManager&&this.subscriptionManager.removeCriteria(e,t)}getMasterSubscriptionEmitter(){return this.getSubscriptionManager().getMasterEmitter()}};function FD(){if(!globalThis.fetch)throw Error(`Fetch not available in this environment`);return globalThis.fetch.bind(globalThis)}async function ID(e,t){let n=e.headers.get(`content-location`);if(n)return n;let r=e.headers.get(`location`);if(r)return r;if(Mx(t)&&t.issue?.[0]?.diagnostics)return t.issue[0].diagnostics}function LD(e){let t=e.entry?.map(e=>e.resource)??[];return Object.assign(t,{bundle:e})}function RD(e){return _C(e)&&`data`in e&&`contentType`in e}function zD(e,t,n,r){return RD(e)?e:{data:e,filename:t,contentType:n,onProgress:r}}function BD(e){return _C(e)&&`docDefinition`in e}function VD(e,t,n,r){return BD(e)?e:{docDefinition:e,filename:t,tableLayouts:n,fonts:r}}function HD(e){return e.status===429||e.status>=500}function UD({parentContext:e,path:t,elements:n,profileUrl:r,debugMode:i,accessPolicyResource:a}){if(t===e?.path)return;i??=e?.debugMode??!1,a??=e?.accessPolicyResource;let o=WD(t,n,e,!!i),s=MC(t,`.`,2)[1];o=GD(o,a,s),o=KD(o,a,s);let c=Object.create(null);for(let[e,n]of Object.entries(o))c[t+`.`+e]=n;let l;if(e&&!e.isDefaultContext)l=e.getExtendedProps;else{let e=Object.create(null);l=t=>{let n=MC(t,`.`,2)[1];if(n){if(!e[n]){let t=qD(n,a?.hiddenFields);e[n]={hidden:t,readonly:t||qD(n,a?.readonlyFields)}}return e[n]}}}return{path:t,elements:o,elementsByPath:c,profileUrl:r??e?.profileUrl,debugMode:i,getExtendedProps:l,accessPolicyResource:a}}function WD(e,t,n,r){let i=Object.create(null);if(n)for(let[t,r]of Object.entries(n.elementsByPath)){let n=OC(e,t);n!==void 0&&(i[n]=r)}let a=!1;if(t)for(let[e,n]of Object.entries(t))e in i||(i[e]=n,a=!0);return r&&console.assert(a,`Unnecessary ElementsContext; not using any newly provided elements`),i}function GD(e,t,n){if(!t?.hiddenFields?.length)return e;let r=n?n+`.`:``;return Object.fromEntries(Object.entries(e).filter(([e])=>!qD(r+e,t.hiddenFields)))}function KD(e,t,n){if(!t?.readonlyFields?.length)return e;let r=Object.create(null),i=n?n+`.`:``;for(let[n,a]of Object.entries(e))qD(i+n,t.readonlyFields)?r[n]={...a,readonly:!0}:r[n]=a;return r}function qD(e,t){if(!t?.length)return!1;let n=e.split(`.`);for(let e=1;e<=n.length;e++){let r=n.slice(0,e).join(`.`);if(t.includes(r))return!0}return!1}function JD(e){return e.type!==void 0&&e.type.length>0}function YD(e,t,n,r){let i=uS(e,t.path,{profileUrl:r});if(i){let e=n.typeSchema?.elements??n.elements;return i.some(r=>mS(r,t,n,e))??!1}return console.assert(!1,`getNestedProperty[%s] in isDiscriminatorComponentMatch missed`,t.path),!1}function XD(e,t,n,r){if(e)for(let i of t){let t={value:e,type:i.typeSchema?.type??i.type?.[0].code};if(n.every(e=>YD(t,e,i,i.typeSchema?.url??r)))return i.name}}var ZD=class{rootSchema;visitor;elementsContextStack;sliceAllowList;constructor(e,t,n){if(e.type===void 0)throw Error(`schema must include a type`);this.rootSchema=e;let r=UD({parentContext:void 0,path:this.rootSchema.type,elements:n??this.rootSchema.elements,profileUrl:this.rootSchema.name===this.rootSchema.type?void 0:this.rootSchema.url});if(r===void 0)throw Error(`Could not create root elements context`);this.elementsContextStack=[r],this.visitor=t}get elementsContext(){return this.elementsContextStack.at(-1)}crawlElement(e,t,n){this.visitor.onEnterSchema&&this.visitor.onEnterSchema(this.rootSchema);let r=Object.fromEntries(Object.entries(this.elementsContext.elements).filter(([e])=>e.startsWith(t)));this.crawlElementsImpl(r,n),this.visitor.onExitSchema&&this.visitor.onExitSchema(this.rootSchema)}crawlSlice(e,t,n){let r=this.prepareSlices(n.slices,n);if(!sC(r.slices))throw Error(`cannot crawl slice ${t.name} since it has no type information`);this.visitor.onEnterSchema&&this.visitor.onEnterSchema(this.rootSchema),this.sliceAllowList=[t],this.crawlSliceImpl(r.slices[0],t.path,r),this.sliceAllowList=void 0,this.visitor.onExitSchema&&this.visitor.onExitSchema(this.rootSchema)}crawlResource(){this.visitor.onEnterSchema&&this.visitor.onEnterSchema(this.rootSchema),this.crawlElementsImpl(this.rootSchema.elements,this.rootSchema.type),this.visitor.onExitSchema&&this.visitor.onExitSchema(this.rootSchema)}crawlElementsImpl(e,t){let n=QD(e);for(let e of n)this.crawlElementNode(e,t)}crawlElementNode(e,t){let n=t+`.`+e.key;this.visitor.onEnterElement&&this.visitor.onEnterElement(n,e.element,this.elementsContext);for(let n of e.children)this.crawlElementNode(n,t);sC(e.element?.slicing?.slices)&&this.crawlSlicingImpl(e.element.slicing,n),this.visitor.onExitElement&&this.visitor.onExitElement(n,e.element,this.elementsContext)}prepareSlices(e,t){let n=[];for(let t of e){if(!JD(t))continue;let e=t.type.find(e=>sC(e.profile))?.profile?.[0];if(sC(e)){let n=tS(e);n&&(t.typeSchema=n)}n.push(t)}return{...t,slices:n}}crawlSlicingImpl(e,t){let n=this.prepareSlices(e.slices,e);for(let e of n.slices)(this.sliceAllowList===void 0||this.sliceAllowList.includes(e))&&this.crawlSliceImpl(e,t,n)}crawlSliceImpl(e,t,n){let r=e.typeSchema;r&&this.visitor.onEnterSchema&&this.visitor.onEnterSchema(r),this.visitor.onEnterSlice&&this.visitor.onEnterSlice(t,e,n);let i,a=r?.elements??e.elements;sC(a)&&(i=UD({path:t,parentContext:this.elementsContext,elements:a})),i&&this.elementsContextStack.push(i),this.crawlElementsImpl(a,t),i&&this.elementsContextStack.pop(),this.visitor.onExitSlice&&this.visitor.onExitSlice(t,e,n),r&&this.visitor.onExitSchema&&this.visitor.onExitSchema(r)}};function QD(e){let t=[];function n(e,t){return t.startsWith(e+`.`)}function r(e,t){for(let i of e.children)if(n(i.key,t.key)){r(i,t);return}e.children.push(t)}let i=Object.entries(e);i.sort((e,t)=>e[0].localeCompare(t[0]));for(let[e,a]of i){let i={key:e,element:a,children:[]},o=!1;for(let a of t)if(n(a.key,e)){r(a,i),o=!0;break}o||t.push(i)}return t}var $D=`__sliceName`;function eO(e,t){let n=new nO(e,e.resourceType,`resource`);return new ZD(t,n).crawlResource(),n.getDefaultValue()}function tO(e,t,n){for(let[r,i]of Object.entries(t)){if(n===void 0||n===r){oO(e,r,i,t);continue}let a=OC(n,r);a!==void 0&&oO(e,a,i,t)}return e}var nO=class{rootValue;schemaStack;valueStack;constructor(e,t,n){this.schemaStack=[],this.valueStack=[],this.rootValue=hC(e),this.valueStack.splice(0,this.valueStack.length,{type:n,path:t,values:[this.rootValue]})}get schema(){return this.schemaStack.at(-1)}get value(){return this.valueStack.at(-1)}onEnterSchema(e){this.schemaStack.push(e)}onExitSchema(){this.schemaStack.pop()}onEnterElement(e,t,n){let r=this.value.values,i=this.value.path,a=OC(i,e);if(a===void 0)throw Error(`Expected ${e} to be prefixed by ${i}`);let o=[];for(let e of r){if(e===void 0)continue;let r=OC(n.path,i),s=Array.isArray(e)?e:[e];for(let e of s){rO(e,a,t,n.elements,r),oO(e,a,t,n.elements);let i=aO(e,a,n.elements,r);i!==void 0&&o.push(i)}}this.valueStack.push({type:`element`,path:e,values:o})}onExitElement(e,t,n){if(!this.valueStack.pop())throw Error(`Expected value context to exist when exiting element`);let r=OC(this.value.path,e);if(r===void 0)throw Error(`Expected ${e} to be prefixed by ${this.value.path}`);let i=OC(n.path,this.value.path);for(let e of this.value.values){let a=aO(e,r,n.elements,i);if(Array.isArray(a))for(let e=a.length-1;e>=0;e--){let t=a[e];sC(t)||a.splice(e,1)}oC(a)&&iO(e,void 0,r,t)}}onEnterSlice(e,t,n){let r=this.value.values,i=[];for(let e of r)if(e!==void 0){let r=Array.isArray(e)?e:[e],a=this.getMatchingSliceValues(r,t,n);i.push(a)}this.valueStack.push({type:`slice`,path:e,values:i})}getMatchingSliceValues(e,t,n){let r=[];for(let i of e)(i[$D]??XD(i,[t],n.discriminator,this.schema.url))===t.name&&r.push(i);for(let n=r.length;n<t.min;n++)if(DC(t.type[0].code)){let t=Object.create(null);r.push(t),e.push(t)}return r}onExitSlice(){let e=this.valueStack.pop();if(!e)throw Error(`Expected value context to exist in onExitSlice`);for(let t of e.values)for(let e=t.length-1;e>=0;e--){let n=t[e];$D in n&&delete n[$D]}}getDefaultValue(){return this.rootValue}};function rO(e,t,n,r,i){let a=aO(e,t,r,i);n.min>0&&a===void 0&&DC(n.type[0].code)&&(n.isArray?iO(e,[Object.create(null)],t,n):iO(e,Object.create(null),t,n))}function iO(e,t,n,r){if(n.includes(`.`))throw Error(`key cannot be nested`);let i=n;if(n.includes(`[x]`)){let e=r.type[0].code;i=n.replace(`[x]`,EC(e))}t===void 0?delete e[i]:e[i]=t}function aO(e,t,n,r){let i=t.split(`.`),a=e,o;for(let e=0;e<i.length;e++){let t=i[e];if(t.includes(`[x]`)){let a=n[(r?r+`.`:``)+i.slice(0,e+1).join(`.`)].type[0].code;t=t.replace(`[x]`,EC(a))}if(e===i.length-1){o=Array.isArray(a)?a.map(e=>e[t]):a[t];continue}if(Array.isArray(a))a=a.map(e=>e[t]);else if(_C(a)){if(a[t]===void 0)return;a=a[t]}else return}return o}function oO(e,t,n,r){if(!(n.fixed||n.pattern))return e;if(Array.isArray(e))return e.map(e=>oO(e,t,n,r));e??=Object.create(null);let i=e,a=t.split(`.`),o=i;for(let e=0;e<a.length;e++){let t=a[e];if(t.includes(`[x]`)){let n=r[a.slice(0,e+1).join(`.`)].type[0].code;t=t.replace(`[x]`,EC(n))}if(e===a.length-1){let e=Array.isArray(o)?o:[o];for(let r of e)n.fixed?r[t]??=n.fixed.value:n.pattern&&(r[t]=sO(r[t],n.pattern.value))}else{if(!(t in o)){let n=a.slice(0,e+1).join(`.`);o[t]=r[n].isArray?[Object.create(null)]:Object.create(null)}o=o[t]}}return i}function sO(e,t){if(Array.isArray(t)&&(Array.isArray(e)||e===void 0))return(e?.length??0)>0?e:hC(t);if(_C(t)&&(_C(e)&&!Array.isArray(e)||e===void 0)){let n=hC(e)??Object.create(null);for(let e of Object.keys(t))n[e]=sO(n[e],t[e]);return n}return e}function cO(e){return e.match(/^\((.+)\)\.identifier$/)?.[1]}function lO(e,t){return new Iw(e,new qw(t,new Rw(`identifier`)))}var uO={BOOLEAN:`BOOLEAN`,NUMBER:`NUMBER`,QUANTITY:`QUANTITY`,TEXT:`TEXT`,REFERENCE:`REFERENCE`,CANONICAL:`CANONICAL`,DATE:`DATE`,DATETIME:`DATETIME`,PERIOD:`PERIOD`,UUID:`UUID`};function dO(e,t){let n=Ow.types[e]?.searchParamsDetails?.[t.code];return n||=pO(e,t),n}function fO(e,t,n){let r=Ow.types[e];r||(r={},Ow.types[e]=r),r.searchParamsDetails||={},r.searchParamsDetails[t]=n}function pO(e,t){let n=t.code,r=t.expression,i=vO(e,r),a={elementDefinitions:[],propertyTypes:new Set,array:!1};for(let n of i){let r=xO(n),i=NC(()=>r.join(`.`));r.length===1&&r[0]instanceof Hw?a.propertyTypes.add(`boolean`):t.code.endsWith(`:identifier`)?a.propertyTypes.add(`Identifier`):i().endsWith(`extension.value.code`)||i().endsWith(`extension.value.coding.code`)?(a.array=!0,a.propertyTypes.clear(),a.propertyTypes.add(`code`)):mO(a,r,e,1),i().endsWith(`extension.valueDateTime`)&&(a.array=!1,a.propertyTypes.clear(),a.propertyTypes.add(`dateTime`))}let o;if(t.code.endsWith(`:identifier`)){let t=cO(r);if(t===void 0)throw Error(`Unexpected expression for derived identifier search parameter: ${r}`);o=lO(r,yO(e,t))}else o=yO(e,r);let s={type:_O(t,a.propertyTypes),elementDefinitions:a.elementDefinitions.map(e=>({...e,type:e.type?.filter(e=>a.propertyTypes.has(e.code))})).filter(e=>e.type&&e.type.length>0),parsedExpression:o,array:a.array};return fO(e,n,s),s}function mO(e,t,n,r){let i=t[r];if(i instanceof Vw){e.propertyTypes.add(i.right.toString());return}if(i instanceof iT){hO(e,i);return}let a=i.toString(),o=ww(n,a);if(!o)throw Error(`Element definition not found for ${n} ${a}`);let s=!1,c=r+1;c<t.length&&t[c]instanceof aT&&(s=!0,c++);let l=t[c];if(o.isArray&&!s&&(e.array=!0),c===t.length-1&&l instanceof Vw){e.elementDefinitions.push(o),e.propertyTypes.add(l.right.toString());return}if(c>=t.length){e.elementDefinitions.push(o);for(let t of o.type??UC)e.propertyTypes.add(t.code);return}for(let n of o.type??UC){let r=n.code;gO(r)&&(r=o.type[0].code),mO(e,t,r,c)}}function hO(e,t){if(t.name===`as`){e.propertyTypes.add(t.args[0].toString());return}if(t.name===`ofType`){e.propertyTypes.add(t.args[0].toString());return}if(t.name===`resolve`){e.propertyTypes.add(`string`);return}if(t.name===`where`&&t.args[0]instanceof $w){e.propertyTypes.add(t.args[0].right.toString());return}throw Error(`Unhandled FHIRPath function: ${t.name}`)}function gO(e){return e===`Element`||e===`BackboneElement`}function _O(e,t){switch(e.type){case`date`:return t.size===1&&t.has(X.date)?uO.DATE:uO.DATETIME;case`number`:return uO.NUMBER;case`quantity`:return uO.QUANTITY;case`reference`:return t.has(X.canonical)?uO.CANONICAL:uO.REFERENCE;case`token`:return t.size===1&&t.has(X.boolean)?uO.BOOLEAN:uO.TEXT;default:return uO.TEXT}}function vO(e,t){let n=[];return bO(e,bT(t).child,n),n}function yO(e,t){let n=[],r=bT(t);if(bO(e,r.child,n),n.length===0)return r;let i=n[0];for(let e=1;e<n.length;e++)i=new Jw(i,n[e]);return new Iw(`<original-not-available>`,i)}function bO(e,t,n){t instanceof Jw?(bO(e,t.left,n),bO(e,t.right,n)):t.toString().includes(e+`.`)&&n.push(t)}function xO(e){return e instanceof Vw||e instanceof aT?[xO(e.left),e].flat():e instanceof Hw?[e]:e instanceof qw?[xO(e.left),xO(e.right)].flat():e instanceof iT&&(e.name===`where`&&!(e.args[0]instanceof $w)||e.name===`last`)?[]:[e]}var SO=`https://meta.medplum.com/releases`,CO=new Map;function wO(e){let t=e;if(!t.tag_name)throw Error(`Manifest missing tag_name`);let n=t.assets;if(!n?.length)throw Error(`Manifest missing assets list`);for(let e of n){if(!e.browser_download_url)throw Error(`Asset missing browser download URL`);if(!e.name)throw Error(`Asset missing name`)}}async function TO(e,t,n){let r=CO.get(t??`latest`);if(!r){let i=t?`v${t}`:`latest`,a=new URL(`${SO}/${i}.json`);if(a.searchParams.set(`a`,e),a.searchParams.set(`c`,SD),n)for(let[e,t]of Object.entries(n))a.searchParams.set(e,t);let o=await fetch(a.toString());if(o.status!==200){let e;try{e=(await o.json()).message}catch(e){console.error(`Failed to parse message from body: ${Lx(e)}`)}throw Error(`Received status code ${o.status} while fetching manifest for version '${t??`latest`}'. Message: ${e}`)}let s=await o.json();wO(s),r=s,CO.set(t??`latest`,r),t||CO.set(r.tag_name.slice(1),r)}return r}async function EO(e){let t=await TO(e);if(!t.tag_name.startsWith(`v`))throw Error(`Invalid release name found. Release tag '${t.tag_name}' did not start with 'v'`);return t.tag_name.slice(1)}var DO=(0,b.createContext)(void 0);function OO(){return(0,b.useContext)(DO)}function Q(){return OO().medplum}function kO(){return OO().navigate}function AO(){return OO().profile}var jO=[`change`,`storageInitialized`,`storageInitFailed`,`profileRefreshing`,`profileRefreshed`];function MO(e){let t=e.medplum,n=e.navigate??NO,[r,i]=(0,b.useState)({profile:t.getProfile(),loading:t.isLoading()});(0,b.useEffect)(()=>{function e(){i(e=>({...e,profile:t.getProfile(),loading:t.isLoading()}))}for(let n of jO)t.addEventListener(n,e);return()=>{for(let n of jO)t.removeEventListener(n,e)}},[t]);let a=(0,b.useMemo)(()=>({...r,medplum:t,navigate:n}),[r,t,n]);return(0,L.jsx)(DO.Provider,{value:a,children:e.children})}function NO(e){window.location.assign(e)}var PO=new Map,FO=e=>(0,b.useMemo)(()=>{if(!e)return;let t=e.split(`?`)[0];if(!t)return e;let n;try{n=new URLSearchParams(new URL(e).search)}catch{return e}if(!n.has(`Key-Pair-Id`)||!n.has(`Signature`))return e;let r=n.get(`Expires`);if(!r||r.length>13)return e;let i=PO.get(t);if(i){let e=new URLSearchParams(new URL(i).search).get(`Expires`);if(e&&Number.parseInt(e,10)*1e3-5e3>Date.now())return i}return PO.set(t,e),e},[e]),IO=3e3;function LO(e,t,n){let r=Q(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(n?.subscriptionProps),c=(0,b.useRef)(!1),l=(0,b.useRef)(void 0),u=(0,b.useRef)(void 0),d=(0,b.useRef)(void 0),f=(0,b.useRef)(t);f.current=t;let p=(0,b.useRef)(n?.onWebSocketOpen);p.current=n?.onWebSocketOpen;let m=(0,b.useRef)(n?.onWebSocketClose);m.current=n?.onWebSocketClose;let h=(0,b.useRef)(n?.onSubscriptionConnect);h.current=n?.onSubscriptionConnect;let g=(0,b.useRef)(n?.onSubscriptionDisconnect);g.current=n?.onSubscriptionDisconnect;let _=(0,b.useRef)(n?.onError);_.current=n?.onError,(0,b.useEffect)(()=>{lC(n?.subscriptionProps,o)||s(n?.subscriptionProps)},[o,n]),(0,b.useEffect)(()=>{l.current&&=(clearTimeout(l.current),void 0);let t=!1;return(u.current!==e||!lC(d.current,o))&&(t=!0),t&&u.current&&r.unsubscribeFromCriteria(u.current,d.current),u.current=e,d.current=o,t&&e?a(r.subscribeToCriteria(e,o)):e||a(void 0),()=>{l.current=setTimeout(()=>{a(void 0),e&&r.unsubscribeFromCriteria(e,o)},IO)}},[r,e,o]);let v=(0,b.useCallback)(e=>{f.current?.(e.payload)},[]),y=(0,b.useCallback)(()=>{p.current?.()},[]),x=(0,b.useCallback)(()=>{m.current?.()},[]),S=(0,b.useCallback)(e=>{h.current?.(e.payload.subscriptionId)},[]),C=(0,b.useCallback)(e=>{g.current?.(e.payload.subscriptionId)},[]),w=(0,b.useCallback)(e=>{_.current?.(e.payload)},[]);(0,b.useEffect)(()=>i?(c.current||=(i.addEventListener(`message`,v),i.addEventListener(`open`,y),i.addEventListener(`close`,x),i.addEventListener(`connect`,S),i.addEventListener(`disconnect`,C),i.addEventListener(`error`,w),!0),()=>{c.current=!1,i.removeEventListener(`message`,v),i.removeEventListener(`open`,y),i.removeEventListener(`close`,x),i.removeEventListener(`connect`,S),i.removeEventListener(`disconnect`,C),i.removeEventListener(`error`,w)}):()=>void 0,[i,v,y,x,S,C,w])}function RO(e){let t=Q(),{resourceType:n,countCriteria:r,subscriptionCriteria:i}=e,[a,o]=(0,b.useState)(0),s=(0,b.useCallback)(e=>{t.search(n,r,{cache:e}).then(e=>o(e.total)).catch(console.error)},[t,n,r]);return(0,b.useEffect)(()=>{s(`default`)},[s]),LO(i,()=>{s(`reload`)}),a}function zO(e,t){let n=Q(),[r,i]=(0,b.useState)(()=>BO(n,e)),a=(0,b.useCallback)(e=>{lC(e,r)||i(e)},[r]);return(0,b.useEffect)(()=>{let r=!0,i=BO(n,e);return!i&&Dw(e)?n.readReference(e).then(e=>{r&&a(e)}).catch(e=>{r&&(a(void 0),t&&t(Ix(e)))}):a(i),(()=>r=!1)},[n,e,a,t]),r}function BO(e,t){if(t){if(Ew(t))return t;if(Dw(t))return e.getCachedReference(t)}}var VO={group:`group`,display:`display`,question:`question`,boolean:`boolean`,decimal:`decimal`,integer:`integer`,date:`date`,dateTime:`dateTime`,time:`time`,string:`string`,text:`text`,url:`url`,choice:`choice`,openChoice:`open-choice`,attachment:`attachment`,reference:`reference`,quantity:`quantity`},HO=`${px}/fhir/StructureDefinition/questionnaire-itemControl`,UO=`${px}/fhir/StructureDefinition/questionnaire-referenceFilter`,WO=`${px}/fhir/StructureDefinition/questionnaire-referenceResource`,GO=`${px}/fhir/StructureDefinition/questionnaire-validationError`,KO=`${px}/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression`,qO=`${px}/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-calculatedExpression`,JO=`${px}/fhir/StructureDefinition/questionnaire-signatureRequired`,YO=`${px}/fhir/StructureDefinition/questionnaireresponse-signature`,XO=`${px}/fhir/StructureDefinition/questionnaire-hidden`;function ZO(e){return e.type===`choice`||e.type===`open-choice`}function QO(e,t){if(tC(e,XO)?.valueBoolean===!0)return!1;let n=$O(e,t);return n===void 0?ek(e,t):n}function $O(e,t){let n=tC(e,KO);if(t&&n){let e=n.valueExpression?.expression;if(e){let n=gS(t);return _S(ST(e,[n],{"%resource":n}))}}}function ek(e,t){if(!e.enableWhen)return!0;let n=e.enableBehavior??`any`;for(let r of e.enableWhen){let e=sk(t?.item,r.question);if(r.operator===`exists`&&!r.answerBoolean&&!e?.length){if(n===`any`)return!0;continue}let{anyMatch:i,allMatch:a}=lk(r,e,n);if(n===`any`&&i)return!0;if(n===`all`&&!a)return!1}return n!==`any`}function tk(e,t,n=t.item){for(let r of e){let e=n?.find(e=>e.linkId===r.linkId);e&&(nk(t,r,e),r.item&&e.item&&tk(r.item,t,e.item))}}function nk(e,t,n){try{let r=ak(t,e);if(!r)return;let i=ik(t,r);if(!i)return;n.answer=[i]}catch(e){n.extension=[{url:GO,valueString:`Expression evaluation failed: ${Lx(e)}`}]}}var rk={[VO.boolean]:[X.boolean],[VO.date]:[X.date],[VO.dateTime]:[X.dateTime],[VO.time]:[X.time],[VO.url]:[X.string,X.uri,X.url],[VO.attachment]:[X.Attachment],[VO.reference]:[X.Reference],[VO.quantity]:[X.Quantity],[VO.decimal]:[X.decimal,X.integer],[VO.integer]:[X.decimal,X.integer]};function ik(e,t){if(e.type){if(e.type===VO.choice||e.type===VO.openChoice)return{[`value${EC(t.type)}`]:t.value};if(e.type===VO.string||e.type===VO.text)return typeof t.value==`string`?{valueString:t.value}:void 0;if(rk[e.type]?.includes(t.type))return{[`value${EC(e.type)}`]:t.value}}}function ak(e,t){if(!t)return;let n=tC(e,qO);if(n){let e=n.valueExpression?.expression;if(e){let n=gS(t),r=ST(e,[n],{"%resource":n});return r.length===0?void 0:r[0]}}}function ok(e,t,n){let r=[];for(let i of e){let e=n.answerOption?.find(e=>WC(bk(e))===i);if(e){let n=bk(e);n&&r.push({[t]:n.value})}}return r}function sk(e,t){for(let n of e??UC){if(n.linkId===t)return n.answer;if(n.item){let e=sk(n.item,t);if(e)return e}}}function ck(e,t,n){if(n===`exists`)return!!e===t.value;if(e){let[{value:r}]=ST(`%actualAnswer ${n===`=`||n===`!=`?n?.replace(`=`,`~`):n} %expectedAnswer`,[e],{"%actualAnswer":e,"%expectedAnswer":t});return r}else return!1}function lk(e,t,n){let r=t||[],i=xk(e),a=!1,o=!0;for(let t of r){let r=Sk(t),{operator:s}=e;if(ck(r,i,s)?a=!0:o=!1,n===`any`&&a)break}return{anyMatch:a,allMatch:o}}function uk(e){let t=tC(e,WO);if(t){if(t.valueCode!==void 0)return[t.valueCode];if(t.valueCodeableConcept)return t.valueCodeableConcept?.coding?.map(e=>e.code)}}function dk(e,t){let n=hC(e),r=tC(n,WO);return!t||t.length===0?(r&&(n.extension=n.extension?.filter(e=>e!==r)),n):(r||(n.extension??=[],r={url:WO},n.extension.push(r)),t.length===1?(r.valueCode=t[0],delete r.valueCodeableConcept):(r.valueCodeableConcept={coding:t.map(e=>({code:e}))},delete r.valueCode),n)}function fk(e,t,n){let r=tC(e,UO);if(!r?.valueString)return;let i=r.valueString;t?.reference&&(i=i.replaceAll(`$subj`,t.reference)),n?.reference&&(i=i.replaceAll(`$encounter`,n.reference));let a={},o=i.split(`&`);for(let e of o){let[t,n]=MC(e,`=`,2);a[t]=n}return a}function pk(e,t){return{resourceType:`QuestionnaireResponse`,questionnaire:e.url??GS(e),item:mk(e.item,t?.item),status:`in-progress`}}function mk(e,t){let n;for(let r of e??UC){if(r.type===VO.display)continue;let e=t?.filter(e=>e.linkId===r.linkId);if(e?.length)for(let t of e)t.id=t.id??_k(),t.text=t.text??r.text,t.item=mk(r.item,t.item),t.answer=vk(r,t),n=PC(n,t);else n=PC(n,hk(r))}return n}function hk(e){return{id:_k(),linkId:e.linkId,text:e.text,item:mk(e.item,void 0),answer:vk(e)}}var gk=1;function _k(){return`id-`+ gk++}function vk(e,t){if(!(e.type===VO.display||e.type===VO.group)){if(t?.answer&&t.answer.length>0)return t.answer;if(e.initial&&e.initial.length>0)return e.initial.map(e=>({...e}));if(e.answerOption)return e.answerOption.filter(e=>e.initialSelected).map(e=>({...e,initialSelected:void 0}))}}function yk(e){return SS({type:`QuestionnaireItemInitial`,value:e},`value`)}function bk(e){return SS({type:`QuestionnaireItemAnswerOption`,value:e},`value`)}function xk(e){return SS({type:`QuestionnaireItemEnableWhen`,value:e},`answer`)}function Sk(e){return SS({type:`QuestionnaireResponseItemAnswer`,value:e},`value`)}function Ck(e){let t=zO(e.questionnaire),n=zO(e.defaultValue),[,r]=(0,b.useReducer)(e=>e+1,0),i=(0,b.useRef)({activePage:0});if(!i.current.questionnaire&&t&&(i.current.questionnaire=t,i.current.pages=e.disablePagination?void 0:wk(t)),t&&e.defaultValue&&n&&!i.current.questionnaireResponse&&(i.current.questionnaireResponse=pk(t,n),p()),t&&!e.defaultValue&&!i.current.questionnaireResponse&&(i.current.questionnaireResponse=pk(t),p()),!i.current.questionnaire||!i.current.questionnaireResponse)return{loading:!0};function a(e,t){let n=i.current.questionnaireResponse;for(let t of e)n=n?.item?.find(e=>t.id?e.id===t.id:e.linkId===t.linkId);return t&&(n=n?.item?.find(e=>e.linkId===t.linkId)),n}function o(){i.current.activePage=(i.current.activePage??0)+1,r()}function s(){i.current.activePage=(i.current.activePage??0)-1,r()}function c(e,t){let n=a(e);n&&(n.item??=[],n.item.push(hk(t)),p())}function l(e,t){let n=a(e,t);n&&(n.answer??=[],n.answer.push({}),p())}function u(e,t,n){let r=a(e,t);r&&(r.answer=n,p())}function d(e){let t=i.current.questionnaireResponse;t&&(e?(t.extension=t.extension??[],t.extension=t.extension.filter(e=>e.url!==YO),t.extension.push({url:YO,valueSignature:e})):t.extension=t.extension?.filter(e=>e.url!==YO),p())}function f(){let e=i.current.questionnaire;if(e?.item){let t=i.current.questionnaireResponse;tk(e.item,t)}}function p(){let t=i.current.questionnaireResponse;t&&(f(),r(),e.onChange?.(t))}return{loading:!1,pagination:!!i.current.pages,questionnaire:i.current.questionnaire,questionnaireResponse:i.current.questionnaireResponse,subject:e.subject,encounter:e.encounter,activePage:i.current.activePage,pages:i.current.pages,items:Tk(i.current.questionnaire,i.current.pages,i.current.activePage),responseItems:Ek(i.current.questionnaireResponse,i.current.pages,i.current.activePage),onNextPage:o,onPrevPage:s,onAddGroup:c,onAddAnswer:l,onChangeAnswer:u,onChangeSignature:d}}function wk(e){if(e?.item&&tC(e?.item?.[0],HO)?.valueCodeableConcept?.coding?.[0]?.code===`page`)return e.item.map((e,t)=>({linkId:e.linkId,title:e.text??`Page ${t+1}`,group:e}))}function Tk(e,t,n=0){return t&&e?.item?.[n]?[e.item[n]]:e.item??[]}function Ek(e,t,n=0){return t&&e?.item?.[n]?[e.item[n]]:e.item??[]}function Dk(e,t,n={leading:!1}){let[r,i]=(0,b.useState)(e),a=(0,b.useRef)(!1),o=(0,b.useRef)(void 0),s=(0,b.useRef)(!1),c=(0,b.useCallback)(()=>window.clearTimeout(o.current),[]);return(0,b.useEffect)(()=>{a.current&&(!s.current&&n.leading?(s.current=!0,i(e)):(c(),o.current=setTimeout(()=>{s.current=!1,i(e)},t)))},[e,n.leading,t,c]),(0,b.useEffect)(()=>(a.current=!0,c),[c]),[r,c]}var Ok=250;function kk(e,t,n){return jk(`searchOne`,e,t,n)}function Ak(e,t,n){return jk(`searchResources`,e,t,n)}function jk(e,t,n,r){let i=Q(),[a,o]=(0,b.useState)(!0),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(),[d]=Dk((0,b.useMemo)(()=>({resourceType:t,query:n}),[i.fhirSearchUrl(t,n).toString()]),r?.debounceMs??Ok,{leading:!0});return(0,b.useEffect)(()=>{let t=!0;return i[e](d.resourceType,d.query).then(e=>{t&&(o(!1),c(e),u(Sx))}).catch(e=>{t&&(o(!1),c(void 0),u(Ix(e)))}),()=>{t=!1}},[i,e,d]),[s,a,l]}function Mk(e){let t=e.value;return t?(0,L.jsx)(L.Fragment,{children:KC(t,e.options)}):null}var Nk=[`meta`,`implicitRules`,`contained`,`extension`,`modifierExtension`],Pk=[`language`,`text`],Fk=(0,b.createContext)({path:``,profileUrl:void 0,elements:Object.create(null),elementsByPath:Object.create(null),getExtendedProps:()=>({readonly:!1,hidden:!1}),accessPolicyResource:void 0,debugMode:!1,isDefaultContext:!0});Fk.displayName=`ElementsContext`;var Ik=[`extension`,`modifierExtension`],Lk=[`id`,...Nk].filter(e=>!Ik.includes(e));function Rk(e){return Object.entries(e).filter(([e,t])=>!sC(t.type)||t.max===0||t.path.toLowerCase().endsWith(`extension.url`)&&t.fixed||Ik.includes(e)&&!sC(t.slicing?.slices)||Lk.includes(e)?!1:!(Pk.includes(e)&&t.path.split(`.`).length===2||e.includes(`.`)))}function zk(e,t){return e.line&&e.line.length>t?e.line[t]:``}function Bk(e,t,n){let r=e.line||[];for(;r.length<=t;)r.push(``);return r[t]=n,{...e,line:cC(r)}}function Vk(e){let[t,n]=(0,b.useState)(e.defaultValue||{}),r=(0,b.useRef)(t);r.current=t;let{getExtendedProps:i}=(0,b.useContext)(Fk),[a,o,s,c,l,u,d]=(0,b.useMemo)(()=>[`use`,`type`,`line1`,`line2`,`city`,`state`,`postalCode`].map(t=>i(e.path+`.`+t)),[i,e.path]);function f(t){n(t),e.onChange&&e.onChange(t)}function p(e){f({...r.current,use:e})}function m(e){f({...r.current,type:e})}function h(e){f(Bk(r.current||{},0,e))}function g(e){f(Bk(r.current||{},1,e))}function _(e){f({...r.current,city:e})}function v(e){f({...r.current,state:e})}function y(e){f({...r.current,postalCode:e})}return(0,L.jsxs)(H,{gap:`xs`,wrap:`nowrap`,grow:!0,children:[(0,L.jsx)(Tg,{disabled:e.disabled||a?.readonly,"data-testid":`address-use`,defaultValue:t.use,onChange:e=>p(e.currentTarget.value),data:[``,`home`,`work`,`temp`,`old`,`billing`]}),(0,L.jsx)(Tg,{disabled:e.disabled||o?.readonly,"data-testid":`address-type`,defaultValue:t.type,onChange:e=>m(e.currentTarget.value),data:[``,`postal`,`physical`,`both`]}),(0,L.jsx)(ab,{disabled:e.disabled||s?.readonly,placeholder:`Line 1`,defaultValue:zk(t,0),onChange:e=>h(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||c?.readonly,placeholder:`Line 2`,defaultValue:zk(t,1),onChange:e=>g(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||l?.readonly,placeholder:`City`,defaultValue:t.city,onChange:e=>_(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||u?.readonly,placeholder:`State`,defaultValue:t.state,onChange:e=>v(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||d?.readonly,placeholder:`Postal Code`,defaultValue:t.postalCode,onChange:e=>y(e.currentTarget.value)})]})}function Hk(e){let t=AO(),[n,r]=(0,b.useState)(e.defaultValue||{});function i(n){let i=n?{text:n,authorReference:t&&WS(t),time:new Date().toISOString()}:{};r(i),e.onChange&&e.onChange(i)}return(0,L.jsx)(ab,{disabled:e.disabled,name:e.name,placeholder:`Annotation text`,defaultValue:n.text,onChange:e=>i(e.currentTarget.value)})}var Uk={outline:{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},filled:{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`currentColor`,stroke:`none`}},$=(e,t,n,r)=>{let i=(0,b.forwardRef)(({color:n=`currentColor`,size:i=24,stroke:a=2,title:o,className:s,children:c,...l},u)=>(0,b.createElement)(`svg`,{ref:u,...Uk[e],width:i,height:i,className:[`tabler-icon`,`tabler-icon-${t}`,s].join(` `),...e===`filled`?{fill:n}:{strokeWidth:a,stroke:n},...l},[o&&(0,b.createElement)(`title`,{key:`svg-title`},o),...r.map(([e,t])=>(0,b.createElement)(e,t)),...Array.isArray(c)?c:[c]]));return i.displayName=`${n}`,i},Wk=$(`outline`,`adjustments-horizontal`,`AdjustmentsHorizontal`,[[`path`,{d:`M12 6a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-0`}],[`path`,{d:`M4 6l8 0`,key:`svg-1`}],[`path`,{d:`M16 6l4 0`,key:`svg-2`}],[`path`,{d:`M6 12a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-3`}],[`path`,{d:`M4 12l2 0`,key:`svg-4`}],[`path`,{d:`M10 12l10 0`,key:`svg-5`}],[`path`,{d:`M15 18a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-6`}],[`path`,{d:`M4 18l11 0`,key:`svg-7`}],[`path`,{d:`M19 18l1 0`,key:`svg-8`}]]),Gk=$(`outline`,`alert-circle`,`AlertCircle`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0`,key:`svg-0`}],[`path`,{d:`M12 8v4`,key:`svg-1`}],[`path`,{d:`M12 16h.01`,key:`svg-2`}]]),Kk=$(`outline`,`arrow-down`,`ArrowDown`,[[`path`,{d:`M12 5l0 14`,key:`svg-0`}],[`path`,{d:`M18 13l-6 6`,key:`svg-1`}],[`path`,{d:`M6 13l6 6`,key:`svg-2`}]]),qk=$(`outline`,`arrow-up`,`ArrowUp`,[[`path`,{d:`M12 5l0 14`,key:`svg-0`}],[`path`,{d:`M18 11l-6 -6`,key:`svg-1`}],[`path`,{d:`M6 11l6 -6`,key:`svg-2`}]]),Jk=$(`outline`,`bleach-off`,`BleachOff`,[[`path`,{d:`M5 19h14m1.986 -1.977a2 2 0 0 0 -.146 -.773l-7.1 -12.25a2 2 0 0 0 -3.5 0l-.815 1.405m-1.488 2.568l-4.797 8.277a2 2 0 0 0 1.75 2.75`,key:`svg-0`}],[`path`,{d:`M3 3l18 18`,key:`svg-1`}]]),Yk=$(`outline`,`bleach`,`Bleach`,[[`path`,{d:`M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75`,key:`svg-0`}]]),Xk=$(`outline`,`bookmark`,`Bookmark`,[[`path`,{d:`M18 7v14l-6 -4l-6 4v-14a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4`,key:`svg-0`}]]),Zk=$(`outline`,`box-multiple`,`BoxMultiple`,[[`path`,{d:`M7 5a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2l0 -10`,key:`svg-0`}],[`path`,{d:`M17 17v2a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-10a2 2 0 0 1 2 -2h2`,key:`svg-1`}]]),Qk=$(`outline`,`brackets-contain`,`BracketsContain`,[[`path`,{d:`M7 4h-4v16h4`,key:`svg-0`}],[`path`,{d:`M17 4h4v16h-4`,key:`svg-1`}],[`path`,{d:`M8 16h.01`,key:`svg-2`}],[`path`,{d:`M12 16h.01`,key:`svg-3`}],[`path`,{d:`M16 16h.01`,key:`svg-4`}]]),$k=$(`outline`,`brand-asana`,`BrandAsana`,[[`path`,{d:`M9 7a3 3 0 1 0 6 0a3 3 0 1 0 -6 0`,key:`svg-0`}],[`path`,{d:`M14 16a3 3 0 1 0 6 0a3 3 0 1 0 -6 0`,key:`svg-1`}],[`path`,{d:`M4 16a3 3 0 1 0 6 0a3 3 0 1 0 -6 0`,key:`svg-2`}]]),eA=$(`outline`,`briefcase`,`Briefcase`,[[`path`,{d:`M3 9a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v9a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2l0 -9`,key:`svg-0`}],[`path`,{d:`M8 7v-2a2 2 0 0 1 2 -2h4a2 2 0 0 1 2 2v2`,key:`svg-1`}],[`path`,{d:`M12 12l0 .01`,key:`svg-2`}],[`path`,{d:`M3 13a20 20 0 0 0 18 0`,key:`svg-3`}]]),tA=$(`outline`,`bucket-off`,`BucketOff`,[[`path`,{d:`M5.029 5.036c-.655 .58 -1.029 1.25 -1.029 1.964c0 2.033 3.033 3.712 6.96 3.967m3.788 -.21c3.064 -.559 5.252 -2.029 5.252 -3.757c0 -2.21 -3.582 -4 -8 -4c-1.605 0 -3.1 .236 -4.352 .643`,key:`svg-0`}],[`path`,{d:`M4 7c0 .664 .088 1.324 .263 1.965l2.737 10.035c.5 1.5 2.239 2 5 2s4.5 -.5 5 -2c.1 -.3 .252 -.812 .457 -1.535m.862 -3.146c.262 -.975 .735 -2.76 1.418 -5.354a7.45 7.45 0 0 0 .263 -1.965`,key:`svg-1`}],[`path`,{d:`M3 3l18 18`,key:`svg-2`}]]),nA=$(`outline`,`bucket`,`Bucket`,[[`path`,{d:`M4 7a8 4 0 1 0 16 0a8 4 0 1 0 -16 0`,key:`svg-0`}],[`path`,{d:`M4 7c0 .664 .088 1.324 .263 1.965l2.737 10.035c.5 1.5 2.239 2 5 2s4.5 -.5 5 -2c.333 -1 1.246 -4.345 2.737 -10.035a7.45 7.45 0 0 0 .263 -1.965`,key:`svg-1`}]]),rA=$(`outline`,`building`,`Building`,[[`path`,{d:`M3 21l18 0`,key:`svg-0`}],[`path`,{d:`M9 8l1 0`,key:`svg-1`}],[`path`,{d:`M9 12l1 0`,key:`svg-2`}],[`path`,{d:`M9 16l1 0`,key:`svg-3`}],[`path`,{d:`M14 8l1 0`,key:`svg-4`}],[`path`,{d:`M14 12l1 0`,key:`svg-5`}],[`path`,{d:`M14 16l1 0`,key:`svg-6`}],[`path`,{d:`M5 21v-16a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v16`,key:`svg-7`}]]),iA=$(`outline`,`calendar`,`Calendar`,[[`path`,{d:`M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12`,key:`svg-0`}],[`path`,{d:`M16 3v4`,key:`svg-1`}],[`path`,{d:`M8 3v4`,key:`svg-2`}],[`path`,{d:`M4 11h16`,key:`svg-3`}],[`path`,{d:`M11 15h1`,key:`svg-4`}],[`path`,{d:`M12 15v3`,key:`svg-5`}]]),aA=$(`outline`,`check`,`Check`,[[`path`,{d:`M5 12l5 5l10 -10`,key:`svg-0`}]]),oA=$(`outline`,`checkbox`,`Checkbox`,[[`path`,{d:`M9 11l3 3l8 -8`,key:`svg-0`}],[`path`,{d:`M20 12v6a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h9`,key:`svg-1`}]]),sA=$(`outline`,`chevron-down`,`ChevronDown`,[[`path`,{d:`M6 9l6 6l6 -6`,key:`svg-0`}]]),cA=$(`outline`,`circle-check`,`CircleCheck`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0`,key:`svg-0`}],[`path`,{d:`M9 12l2 2l4 -4`,key:`svg-1`}]]),lA=$(`outline`,`circle-minus`,`CircleMinus`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0`,key:`svg-0`}],[`path`,{d:`M9 12l6 0`,key:`svg-1`}]]),uA=$(`outline`,`circle-plus`,`CirclePlus`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0`,key:`svg-0`}],[`path`,{d:`M9 12h6`,key:`svg-1`}],[`path`,{d:`M12 9v6`,key:`svg-2`}]]),dA=$(`outline`,`cloud-upload`,`CloudUpload`,[[`path`,{d:`M7 18a4.6 4.4 0 0 1 0 -9a5 4.5 0 0 1 11 2h1a3.5 3.5 0 0 1 0 7h-1`,key:`svg-0`}],[`path`,{d:`M9 15l3 -3l3 3`,key:`svg-1`}],[`path`,{d:`M12 12l0 9`,key:`svg-2`}]]),fA=$(`outline`,`columns`,`Columns`,[[`path`,{d:`M4 6l5.5 0`,key:`svg-0`}],[`path`,{d:`M4 10l5.5 0`,key:`svg-1`}],[`path`,{d:`M4 14l5.5 0`,key:`svg-2`}],[`path`,{d:`M4 18l5.5 0`,key:`svg-3`}],[`path`,{d:`M14.5 6l5.5 0`,key:`svg-4`}],[`path`,{d:`M14.5 10l5.5 0`,key:`svg-5`}],[`path`,{d:`M14.5 14l5.5 0`,key:`svg-6`}],[`path`,{d:`M14.5 18l5.5 0`,key:`svg-7`}]]),pA=$(`outline`,`copy`,`Copy`,[[`path`,{d:`M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666`,key:`svg-0`}],[`path`,{d:`M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1`,key:`svg-1`}]]),mA=$(`outline`,`currency-dollar`,`CurrencyDollar`,[[`path`,{d:`M16.7 8a3 3 0 0 0 -2.7 -2h-4a3 3 0 0 0 0 6h4a3 3 0 0 1 0 6h-4a3 3 0 0 1 -2.7 -2`,key:`svg-0`}],[`path`,{d:`M12 3v3m0 12v3`,key:`svg-1`}]]),hA=$(`outline`,`database`,`Database`,[[`path`,{d:`M4 6a8 3 0 1 0 16 0a8 3 0 1 0 -16 0`,key:`svg-0`}],[`path`,{d:`M4 6v6a8 3 0 0 0 16 0v-6`,key:`svg-1`}],[`path`,{d:`M4 12v6a8 3 0 0 0 16 0v-6`,key:`svg-2`}]]),gA=$(`outline`,`device-floppy`,`DeviceFloppy`,[[`path`,{d:`M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2`,key:`svg-0`}],[`path`,{d:`M10 14a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-1`}],[`path`,{d:`M14 4l0 4l-6 0l0 -4`,key:`svg-2`}]]),_A=$(`outline`,`dots`,`Dots`,[[`path`,{d:`M4 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-0`}],[`path`,{d:`M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-1`}],[`path`,{d:`M18 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-2`}]]),vA=$(`outline`,`edit`,`Edit`,[[`path`,{d:`M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1`,key:`svg-0`}],[`path`,{d:`M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415`,key:`svg-1`}],[`path`,{d:`M16 5l3 3`,key:`svg-2`}]]),yA=$(`outline`,`equal-not`,`EqualNot`,[[`path`,{d:`M5 10h14`,key:`svg-0`}],[`path`,{d:`M5 14h14`,key:`svg-1`}],[`path`,{d:`M5 19l14 -14`,key:`svg-2`}]]),bA=$(`outline`,`equal`,`Equal`,[[`path`,{d:`M5 10h14`,key:`svg-0`}],[`path`,{d:`M5 14h14`,key:`svg-1`}]]),xA=$(`outline`,`eye-off`,`EyeOff`,[[`path`,{d:`M10.585 10.587a2 2 0 0 0 2.829 2.828`,key:`svg-0`}],[`path`,{d:`M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87`,key:`svg-1`}],[`path`,{d:`M3 3l18 18`,key:`svg-2`}]]),SA=$(`outline`,`eye`,`Eye`,[[`path`,{d:`M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0`,key:`svg-0`}],[`path`,{d:`M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6`,key:`svg-1`}]]),CA=$(`outline`,`file-alert`,`FileAlert`,[[`path`,{d:`M14 3v4a1 1 0 0 0 1 1h4`,key:`svg-0`}],[`path`,{d:`M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2`,key:`svg-1`}],[`path`,{d:`M12 17l.01 0`,key:`svg-2`}],[`path`,{d:`M12 11l0 3`,key:`svg-3`}]]),wA=$(`outline`,`file-plus`,`FilePlus`,[[`path`,{d:`M14 3v4a1 1 0 0 0 1 1h4`,key:`svg-0`}],[`path`,{d:`M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2`,key:`svg-1`}],[`path`,{d:`M12 11l0 6`,key:`svg-2`}],[`path`,{d:`M9 14l6 0`,key:`svg-3`}]]),TA=$(`outline`,`filter`,`Filter`,[[`path`,{d:`M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227`,key:`svg-0`}]]),EA=$(`outline`,`folder`,`Folder`,[[`path`,{d:`M5 4h4l3 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-11a2 2 0 0 1 2 -2`,key:`svg-0`}]]),DA=$(`outline`,`forms`,`Forms`,[[`path`,{d:`M12 3a3 3 0 0 0 -3 3v12a3 3 0 0 0 3 3`,key:`svg-0`}],[`path`,{d:`M6 3a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3`,key:`svg-1`}],[`path`,{d:`M13 7h7a1 1 0 0 1 1 1v8a1 1 0 0 1 -1 1h-7`,key:`svg-2`}],[`path`,{d:`M5 7h-1a1 1 0 0 0 -1 1v8a1 1 0 0 0 1 1h1`,key:`svg-3`}],[`path`,{d:`M17 12h.01`,key:`svg-4`}],[`path`,{d:`M13 12h.01`,key:`svg-5`}]]),OA=$(`outline`,`id`,`Id`,[[`path`,{d:`M3 7a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v10a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3l0 -10`,key:`svg-0`}],[`path`,{d:`M7 10a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-1`}],[`path`,{d:`M15 8l2 0`,key:`svg-2`}],[`path`,{d:`M15 12l2 0`,key:`svg-3`}],[`path`,{d:`M7 16l10 0`,key:`svg-4`}]]),kA=$(`outline`,`layout-sidebar`,`LayoutSidebar`,[[`path`,{d:`M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12`,key:`svg-0`}],[`path`,{d:`M9 4l0 16`,key:`svg-1`}]]),AA=$(`outline`,`list-details`,`ListDetails`,[[`path`,{d:`M13 5h8`,key:`svg-0`}],[`path`,{d:`M13 9h5`,key:`svg-1`}],[`path`,{d:`M13 15h8`,key:`svg-2`}],[`path`,{d:`M13 19h5`,key:`svg-3`}],[`path`,{d:`M3 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4`,key:`svg-4`}],[`path`,{d:`M3 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4`,key:`svg-5`}]]),jA=$(`outline`,`lock-access`,`LockAccess`,[[`path`,{d:`M4 8v-2a2 2 0 0 1 2 -2h2`,key:`svg-0`}],[`path`,{d:`M4 16v2a2 2 0 0 0 2 2h2`,key:`svg-1`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v2`,key:`svg-2`}],[`path`,{d:`M16 20h2a2 2 0 0 0 2 -2v-2`,key:`svg-3`}],[`path`,{d:`M8 12a1 1 0 0 1 1 -1h6a1 1 0 0 1 1 1v3a1 1 0 0 1 -1 1h-6a1 1 0 0 1 -1 -1l0 -3`,key:`svg-4`}],[`path`,{d:`M10 11v-2a2 2 0 1 1 4 0v2`,key:`svg-5`}]]),MA=$(`outline`,`lock`,`Lock`,[[`path`,{d:`M5 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6`,key:`svg-0`}],[`path`,{d:`M11 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0`,key:`svg-1`}],[`path`,{d:`M8 11v-4a4 4 0 1 1 8 0v4`,key:`svg-2`}]]),NA=$(`outline`,`logout`,`Logout`,[[`path`,{d:`M14 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2`,key:`svg-0`}],[`path`,{d:`M9 12h12l-3 -3`,key:`svg-1`}],[`path`,{d:`M18 15l3 -3`,key:`svg-2`}]]),PA=$(`outline`,`math-greater`,`MathGreater`,[[`path`,{d:`M5 18l14 -6l-14 -6`,key:`svg-0`}]]),FA=$(`outline`,`math-lower`,`MathLower`,[[`path`,{d:`M19 18l-14 -6l14 -6`,key:`svg-0`}]]),IA=$(`outline`,`message`,`Message`,[[`path`,{d:`M8 9h8`,key:`svg-0`}],[`path`,{d:`M8 13h6`,key:`svg-1`}],[`path`,{d:`M18 4a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-5l-5 3v-3h-2a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12`,key:`svg-2`}]]),LA=$(`outline`,`microscope`,`Microscope`,[[`path`,{d:`M5 21h14`,key:`svg-0`}],[`path`,{d:`M6 18h2`,key:`svg-1`}],[`path`,{d:`M7 18v3`,key:`svg-2`}],[`path`,{d:`M9 11l3 3l6 -6l-3 -3l-6 6`,key:`svg-3`}],[`path`,{d:`M10.5 12.5l-1.5 1.5`,key:`svg-4`}],[`path`,{d:`M17 3l3 3`,key:`svg-5`}],[`path`,{d:`M12 21a6 6 0 0 0 3.715 -10.712`,key:`svg-6`}]]),RA=$(`outline`,`minus`,`Minus`,[[`path`,{d:`M5 12l14 0`,key:`svg-0`}]]),zA=$(`outline`,`packages`,`Packages`,[[`path`,{d:`M7 16.5l-5 -3l5 -3l5 3v5.5l-5 3l0 -5.5`,key:`svg-0`}],[`path`,{d:`M2 13.5v5.5l5 3`,key:`svg-1`}],[`path`,{d:`M7 16.545l5 -3.03`,key:`svg-2`}],[`path`,{d:`M17 16.5l-5 -3l5 -3l5 3v5.5l-5 3l0 -5.5`,key:`svg-3`}],[`path`,{d:`M12 19l5 3`,key:`svg-4`}],[`path`,{d:`M17 16.5l5 -3`,key:`svg-5`}],[`path`,{d:`M12 13.5v-5.5l-5 -3l5 -3l5 3v5.5`,key:`svg-6`}],[`path`,{d:`M7 5.03v5.455`,key:`svg-7`}],[`path`,{d:`M12 8l5 -3`,key:`svg-8`}]]),BA=$(`outline`,`pencil`,`Pencil`,[[`path`,{d:`M4 20h4l10.5 -10.5a2.828 2.828 0 1 0 -4 -4l-10.5 10.5v4`,key:`svg-0`}],[`path`,{d:`M13.5 6.5l4 4`,key:`svg-1`}]]),VA=$(`outline`,`pin`,`Pin`,[[`path`,{d:`M15 4.5l-4 4l-4 1.5l-1.5 1.5l7 7l1.5 -1.5l1.5 -4l4 -4`,key:`svg-0`}],[`path`,{d:`M9 15l-4.5 4.5`,key:`svg-1`}],[`path`,{d:`M14.5 4l5.5 5.5`,key:`svg-2`}]]),HA=$(`outline`,`pinned-off`,`PinnedOff`,[[`path`,{d:`M3 3l18 18`,key:`svg-0`}],[`path`,{d:`M15 4.5l-3.249 3.249m-2.57 1.433l-2.181 .818l-1.5 1.5l7 7l1.5 -1.5l.82 -2.186m1.43 -2.563l3.25 -3.251`,key:`svg-1`}],[`path`,{d:`M9 15l-4.5 4.5`,key:`svg-2`}],[`path`,{d:`M14.5 4l5.5 5.5`,key:`svg-3`}]]),UA=$(`outline`,`player-play`,`PlayerPlay`,[[`path`,{d:`M7 4v16l13 -8l-13 -8`,key:`svg-0`}]]),WA=$(`outline`,`plus`,`Plus`,[[`path`,{d:`M12 5l0 14`,key:`svg-0`}],[`path`,{d:`M5 12l14 0`,key:`svg-1`}]]),GA=$(`outline`,`receipt`,`Receipt`,[[`path`,{d:`M5 21v-16a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v16l-3 -2l-2 2l-2 -2l-2 2l-2 -2l-3 2m4 -14h6m-6 4h6m-2 4h2`,key:`svg-0`}]]),KA=$(`outline`,`refresh`,`Refresh`,[[`path`,{d:`M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4`,key:`svg-0`}],[`path`,{d:`M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4`,key:`svg-1`}]]),qA=$(`outline`,`repeat`,`Repeat`,[[`path`,{d:`M4 12v-3a3 3 0 0 1 3 -3h13m-3 -3l3 3l-3 3`,key:`svg-0`}],[`path`,{d:`M20 12v3a3 3 0 0 1 -3 3h-13m3 3l-3 -3l3 -3`,key:`svg-1`}]]),JA=$(`outline`,`report-medical`,`ReportMedical`,[[`path`,{d:`M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2`,key:`svg-0`}],[`path`,{d:`M9 5a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2`,key:`svg-1`}],[`path`,{d:`M10 14l4 0`,key:`svg-2`}],[`path`,{d:`M12 12l0 4`,key:`svg-3`}]]),YA=$(`outline`,`router`,`Router`,[[`path`,{d:`M3 15a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v4a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2l0 -4`,key:`svg-0`}],[`path`,{d:`M17 17l0 .01`,key:`svg-1`}],[`path`,{d:`M13 17l0 .01`,key:`svg-2`}],[`path`,{d:`M15 13l0 -2`,key:`svg-3`}],[`path`,{d:`M11.75 8.75a4 4 0 0 1 6.5 0`,key:`svg-4`}],[`path`,{d:`M8.5 6.5a8 8 0 0 1 13 0`,key:`svg-5`}]]),XA=$(`outline`,`search`,`Search`,[[`path`,{d:`M3 10a7 7 0 1 0 14 0a7 7 0 1 0 -14 0`,key:`svg-0`}],[`path`,{d:`M21 21l-6 -6`,key:`svg-1`}]]),ZA=$(`outline`,`settings`,`Settings`,[[`path`,{d:`M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065`,key:`svg-0`}],[`path`,{d:`M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0`,key:`svg-1`}]]),QA=$(`outline`,`sort-ascending`,`SortAscending`,[[`path`,{d:`M4 6l7 0`,key:`svg-0`}],[`path`,{d:`M4 12l7 0`,key:`svg-1`}],[`path`,{d:`M4 18l9 0`,key:`svg-2`}],[`path`,{d:`M15 9l3 -3l3 3`,key:`svg-3`}],[`path`,{d:`M18 6l0 12`,key:`svg-4`}]]),$A=$(`outline`,`sort-descending`,`SortDescending`,[[`path`,{d:`M4 6l9 0`,key:`svg-0`}],[`path`,{d:`M4 12l7 0`,key:`svg-1`}],[`path`,{d:`M4 18l7 0`,key:`svg-2`}],[`path`,{d:`M15 15l3 3l3 -3`,key:`svg-3`}],[`path`,{d:`M18 6l0 12`,key:`svg-4`}]]),ej=$(`outline`,`square`,`Square`,[[`path`,{d:`M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14`,key:`svg-0`}]]),tj=$(`outline`,`star`,`Star`,[[`path`,{d:`M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873l-6.158 -3.245`,key:`svg-0`}]]),nj=$(`outline`,`switch-horizontal`,`SwitchHorizontal`,[[`path`,{d:`M16 3l4 4l-4 4`,key:`svg-0`}],[`path`,{d:`M10 7l10 0`,key:`svg-1`}],[`path`,{d:`M8 13l-4 4l4 4`,key:`svg-2`}],[`path`,{d:`M4 17l9 0`,key:`svg-3`}]]),rj=$(`outline`,`table-export`,`TableExport`,[[`path`,{d:`M12.5 21h-7.5a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v7.5`,key:`svg-0`}],[`path`,{d:`M3 10h18`,key:`svg-1`}],[`path`,{d:`M10 3v18`,key:`svg-2`}],[`path`,{d:`M16 19h6`,key:`svg-3`}],[`path`,{d:`M19 16l3 3l-3 3`,key:`svg-4`}]]),ij=$(`outline`,`text-recognition`,`TextRecognition`,[[`path`,{d:`M4 8v-2a2 2 0 0 1 2 -2h2`,key:`svg-0`}],[`path`,{d:`M4 16v2a2 2 0 0 0 2 2h2`,key:`svg-1`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v2`,key:`svg-2`}],[`path`,{d:`M16 20h2a2 2 0 0 0 2 -2v-2`,key:`svg-3`}],[`path`,{d:`M12 16v-7`,key:`svg-4`}],[`path`,{d:`M9 9h6`,key:`svg-5`}]]),aj=$(`outline`,`trash`,`Trash`,[[`path`,{d:`M4 7l16 0`,key:`svg-0`}],[`path`,{d:`M10 11l0 6`,key:`svg-1`}],[`path`,{d:`M14 11l0 6`,key:`svg-2`}],[`path`,{d:`M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12`,key:`svg-3`}],[`path`,{d:`M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3`,key:`svg-4`}]]),oj=$(`outline`,`upload`,`Upload`,[[`path`,{d:`M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2`,key:`svg-0`}],[`path`,{d:`M7 9l5 -5l5 5`,key:`svg-1`}],[`path`,{d:`M12 4l0 12`,key:`svg-2`}]]),sj=$(`outline`,`user-plus`,`UserPlus`,[[`path`,{d:`M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0`,key:`svg-0`}],[`path`,{d:`M16 19h6`,key:`svg-1`}],[`path`,{d:`M19 16v6`,key:`svg-2`}],[`path`,{d:`M6 21v-2a4 4 0 0 1 4 -4h4`,key:`svg-3`}]]),cj=$(`outline`,`webhook`,`Webhook`,[[`path`,{d:`M4.876 13.61a4 4 0 1 0 6.124 3.39h6`,key:`svg-0`}],[`path`,{d:`M15.066 20.502a4 4 0 1 0 1.934 -7.502c-.706 0 -1.424 .179 -2 .5l-3 -5.5`,key:`svg-1`}],[`path`,{d:`M16 8a4 4 0 1 0 -8 0c0 1.506 .77 2.818 2 3.5l-3 5.5`,key:`svg-2`}]]),lj=$(`outline`,`x`,`X`,[[`path`,{d:`M18 6l-12 12`,key:`svg-0`}],[`path`,{d:`M6 6l12 12`,key:`svg-1`}]]),uj=$(`filled`,`circle-filled`,`CircleFilled`,[[`path`,{d:`M7 3.34a10 10 0 1 1 -4.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 4.995 -8.336z`,key:`svg-0`}]]),dj=class extends b.Component{state;constructor(e){super(e),this.state={lastLocation:xE.getLocation()}}static getDerivedStateFromError(e){return{error:e,lastLocation:xE.getLocation()}}componentDidUpdate(e,t){xE.getLocation()!==this.state.lastLocation&&this.setState({lastLocation:xE.getLocation(),error:void 0})}shouldComponentUpdate(e,t){return!!(this.props.children!==e.children||t.error&&!this.state.error||this.state.lastLocation!==xE.getLocation())}componentDidCatch(e,t){console.error(`Uncaught error:`,e,t)}render(){return this.state.error?(0,L.jsx)(Ed,{icon:(0,L.jsx)(Gk,{size:16}),title:`Something went wrong`,color:`red`,children:Lx(this.state.error)}):this.props.children}};function fj(){return(0,L.jsx)(Gp,{style:{width:`100%`,height:`100vh`},children:(0,L.jsx)(su,{})})}var pj={main:`_main_6f7o5_1`};function mj(e){e.preventDefault(),e.stopPropagation()}function hj(e){return e.button===1||e.ctrlKey||e.metaKey}function gj(e){if(_j(e))return!0;if(e instanceof HTMLTableCellElement){let t=e.children;if(t.length===1&&_j(t[0]))return!0}return!1}function _j(e){return e instanceof HTMLInputElement&&e.type===`checkbox`}async function vj(e,t){return new Promise((n,r)=>{let i=new MessageChannel;i.port1.onmessage=({data:e})=>{i.port1.close(),e.error?r(e.error):n(e.result)},e.contentWindow?.postMessage(t,new URL(e.src).origin,[i.port2])})}function yj(e,t){let n=new Blob([e],{type:FE.JSON}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`${t??new Date().toISOString().replaceAll(/\D/g,``)}.json`,document.body.appendChild(i),i.click(),URL.revokeObjectURL(r)}function bj(e){let t=kO(),{to:n,suffix:r,label:i,onClick:a,children:o,...s}=e,c=xj(n);return r&&(c+=`/`+r),(0,L.jsx)(Nd,{href:c,"aria-label":i,onAuxClick:e=>{e.stopPropagation()},onClick:e=>{e.stopPropagation(),a?(e.preventDefault(),a(e)):n&&(hj(e)||(e.preventDefault(),t(c)))},...s,children:o})}function xj(e){if(e){if(typeof e==`string`)return Sj(e);if(Ew(e))return Cj(e);if(Dw(e))return wj(e)}return`#`}function Sj(e){return e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`/`)?e:`/`+e}function Cj(e){return`/${e.resourceType}/${e.id}`}function wj(e){return`/${e.reference}`}function Tj(e){let t=e.split(` `).filter(Boolean);return t.length>1?t[0][0]+t.at(-1)?.at(0):t.length===1?t[0][0]:``}function Ej(e){let t=zO(e.value),n=t?JS(t):e.alt??``,r=Tj(n),i=FO((t&&ZS(t))??e.src??void 0),a=e.radius??`xl`,o={...e,value:void 0,link:void 0};return e.link?(0,L.jsx)(bj,{to:t,children:(0,L.jsx)(Op,{src:i,alt:n,radius:a,...o,children:r})}):(0,L.jsx)(Op,{src:i,alt:n,radius:a,...o,children:r})}var Dj={logoButton:`_logoButton_799cf_1`,user:`_user_799cf_11`,userName:`_userName_799cf_25`};function Oj(e){let t=e.value;return t?(0,L.jsx)(L.Fragment,{children:qC(t,e.options)}):null}function kj(){return`Medplum`}function Aj(e){let t=OO(),{medplum:n,profile:r,navigate:i}=t,a=n.getLogins(),{colorScheme:o,setColorScheme:s}=si(),[c]=(0,b.useState)(localStorage.appShellLayoutVersion??`v1`),l=e.showLayoutVersionToggle??!0;function u(e){localStorage.appShellLayoutVersion=e,xE.reload()}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(K,{align:`center`,p:`xl`,children:[(0,L.jsx)(Ej,{size:`xl`,radius:100,value:t.profile}),(0,L.jsx)(Oj,{value:t.profile?.name?.[0]}),(0,L.jsx)(U,{c:`dimmed`,size:`xs`,children:n.getActiveLogin()?.project.display})]}),a.length>1&&(0,L.jsx)(G.Divider,{}),a.map(e=>e.profile.reference!==GS(t.profile)&&(0,L.jsx)(G.Item,{onClick:()=>{n.setActiveLogin(e).then(()=>xE.reload()).catch(console.log)},children:(0,L.jsxs)(H,{children:[(0,L.jsx)(Op,{radius:`xl`}),(0,L.jsxs)(`div`,{style:{flex:1},children:[(0,L.jsx)(U,{size:`sm`,fw:500,children:e.profile.display}),(0,L.jsx)(U,{c:`dimmed`,size:`xs`,children:e.project.display})]})]})},e.profile.reference)),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(nj,{size:14,stroke:1.5}),onClick:()=>i(`/signin`),children:`Switch to another project`}),(0,L.jsx)(G.Divider,{}),(0,L.jsxs)(H,{justify:`center`,children:[(0,L.jsx)(ey,{size:`xs`,value:o,onChange:e=>s(e),data:[{label:`Light`,value:`light`},{label:`Dark`,value:`dark`},{label:`Auto`,value:`auto`}]}),l&&(0,L.jsx)(ey,{size:`xs`,value:c,onChange:e=>u(e),data:[{label:`v1`,value:`v1`},{label:`v2`,value:`v2`}]})]}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ZA,{size:14,stroke:1.5}),onClick:()=>i(`/${GS(r)}`),children:`Account settings`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(NA,{size:14,stroke:1.5}),onClick:async()=>{await n.signOut(),i(`/signin`)},children:`Sign out`}),(0,L.jsxs)(U,{size:`xs`,c:`dimmed`,my:`sm`,ta:`center`,children:[kj(),` `,e.version]})]})}var jj={selectedItems:`selected-items`,options:`options`};function Mj(e){let t=Ff({onDropdownClose:()=>t.resetSelectedOption(),onDropdownOpen:()=>t.updateSelectedOptionIndex(`active`)}),{name:n,label:r,description:i,error:a,defaultValue:o,toOption:s,loadOptions:c,itemComponent:l,pillComponent:u,emptyComponent:d,onChange:f,onCreate:p,creatable:m,clearable:h,required:g,placeholder:_,leftSection:v,maxValues:y,optionsDropdownMaxHeight:x=320,minInputLength:S=0,...C}=e,w=C.disabled,T=Nj(o),[E,D]=(0,b.useState)(``),[O,k]=(0,b.useState)(),[A,j]=(0,b.useState)(),[M,N]=(0,b.useState)(),[P,F]=(0,b.useState)(T.map(s)),[ee,te]=(0,b.useState)([]),ne=l??Pj,re=u??Fj,ie=d??Ij,ae=(0,b.useRef)(E);ae.current=E;let oe=(0,b.useRef)(void 0),se=(0,b.useRef)(void 0),ce=(0,b.useRef)(O);ce.current=O;let le=(0,b.useRef)(A);le.current=A;let ue=(0,b.useRef)(M);ue.current=M;let de=(0,b.useRef)(ee);de.current=ee;let fe=(0,b.useCallback)(()=>{if(k(void 0),ae.current===se.current&&c===oe.current||(ae.current?.length??0)<S)return;se.current=ae.current,oe.current=c;let e=new AbortController;j(e),c(ae.current??``,e.signal).then(n=>{e.signal.aborted||(te(n.map(s)),ue.current?(n.length>0&&f(n.slice(0,1)),N(!1)):n.length>0&&t.openDropdown())}).catch(t=>{e.signal.aborted||t.message.includes(`aborted`)||Y({color:`red`,message:Lx(t)})}).finally(()=>{e.signal.aborted||j(void 0)})},[t,c,f,s,S]),pe=(0,b.useCallback)(e=>{(ee&&ee.length>0||m)&&t.openDropdown(),t.updateSelectedOptionIndex(),D(e.currentTarget.value),le.current&&(le.current.abort(),j(void 0)),ce.current!==void 0&&window.clearTimeout(ce.current),k(window.setTimeout(()=>fe(),100))},[t,ee,m,fe]),me=(0,b.useCallback)(e=>{let t=P.some(t=>t.value===e),n=t?P.filter(t=>t.value!==e):[...P],r=ee?.find(t=>t.value===e);if(!r&&m!==!1&&p&&(r=s(p(e))),r){if(y===0){f([r.resource]),P.length>0&&F([]);return}t||n.push(r)}if(y!==void 0)for(;n.length>y;)n.shift();f(n.map(e=>e.resource)),F(n)},[m,ee,P,y,f,p,s]),he=(0,b.useMemo)(()=>{if(!w)return e=>{w||(y===1&&(D(``),te([]),t.closeDropdown()),se.current=void 0,e===`$create`?(D(``),me(E)):me(e))}},[me,t,w,y,E]),ge=(0,b.useCallback)(e=>{let t=P.filter(t=>t.value!==e.value);f(t.map(e=>e.resource)),F(t)},[P,f]),_e=(0,b.useCallback)(e=>{e.key===`Enter`?(O||A)&&N(!0):e.key===`Backspace`&&E.length===0&&(mj(e),ge(P[P.length-1]))},[A,ge,E.length,P,O]);(0,b.useEffect)(()=>()=>{le.current&&le.current.abort()},[]);let ve=!w&&h&&P.length>0&&(0,L.jsx)(Rf.ClearButton,{title:`Clear all`,size:`sm`,onClear:()=>{D(``),F([]),f([]),t.closeDropdown()}}),ye=m&&E.trim().length>0,be=ee.length>0||ye;return(0,L.jsxs)(Rf,{store:t,onOptionSubmit:he,withinPortal:!0,shadow:`xl`,...C,children:[(0,L.jsx)(Rf.DropdownTarget,{children:(0,L.jsx)(_g,{label:r,description:i,error:a,className:e.className,leftSection:v,rightSection:A?(0,L.jsx)(su,{size:16}):ve,required:g,disabled:w,children:(0,L.jsxs)(fg.Group,{"data-testid":jj.selectedItems,children:[P.map(e=>(0,L.jsx)(re,{item:e,disabled:w,onRemove:()=>ge(e)},e.value)),!w&&(y===void 0||y===0||P.length<y)&&(0,L.jsx)(Rf.EventsTarget,{children:(0,L.jsx)(_g.Field,{role:`searchbox`,name:n,value:E,placeholder:_,onFocus:pe,onBlur:()=>{t.closeDropdown(),D(``)},onKeyDown:_e,onChange:pe})})]})})}),(0,L.jsx)(Rf.Dropdown,{hidden:!be,"data-testid":jj.options,children:(0,L.jsx)(Rf.Options,{children:(0,L.jsxs)(ul,{type:`scroll`,mah:x,children:[ee.map(e=>{let t=P.some(t=>t.value===e.value);return(0,L.jsx)(Rf.Option,{value:e.value,active:t,children:(0,L.jsx)(ne,{...e,active:t})},e.value)}),ye&&(0,L.jsxs)(Rf.Option,{value:`$create`,children:[`+ Create `,E]}),!m&&E.trim().length>0&&ee.length===0&&(0,L.jsx)(ie,{search:E})]})})})]})}function Nj(e){return e?Array.isArray(e)?e:[e]:[]}function Pj(e){return(0,L.jsxs)(H,{gap:`xs`,children:[e.active&&(0,L.jsx)(aA,{size:12}),(0,L.jsx)(`span`,{children:e.label})]})}function Fj({item:e,disabled:t,onRemove:n}){return(0,L.jsx)(fg,{withRemoveButton:!t,onRemove:n,children:e.label})}function Ij(){return(0,L.jsx)(Rf.Empty,{children:`Nothing found`})}var Lj={searchInput:`_searchInput_dick8_1`};function Rj(e){return{value:e.id,label:JS(e),resource:e}}function zj(e){let t=kO(),n=Q(),r=(0,b.useCallback)(async(e,t)=>{let r=Vj(e),i={signal:t};return Hj(await n.graphql(r,void 0,void 0,i),e)},[n]),i=(0,b.useCallback)(e=>{e.length>0&&t(`/${GS(e[0])}`)},[t]);return(0,L.jsx)(Mj,{size:`sm`,radius:`md`,className:Lj.searchInput,leftSection:(0,L.jsx)(XA,{size:16}),placeholder:`Search`,itemComponent:Bj,toOption:Rj,onChange:i,loadOptions:r,maxValues:0,clearable:!1},`${e.pathname}?${e.searchParams}`)}var Bj=(0,b.forwardRef)(({resource:e,active:t,...n},r)=>{let i;return e.resourceType===`Patient`?i=e.birthDate:e.resourceType===`ServiceRequest`&&(i=e.subject?.display),(0,L.jsx)(`div`,{ref:r,...n,children:(0,L.jsxs)(H,{wrap:`nowrap`,children:[(0,L.jsx)(Ej,{value:e}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{children:JS(e)}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:i})]})]})})});function Vj(e){let t=JSON.stringify(e);return gC(e)?`{
|
|
96
|
+
}`.replaceAll(/\s+/g,` `),n=await this.graphql(t);Yx(n.data.StructureDefinitionList);for(let e of n.data.SearchParameterList)gw(e)})());return this.setCacheEntry(n,i,t),i}requestProfileSchema(e,t){if(!t?.expandProfile&&eS(e))return Promise.resolve();let n=e+`-requestSchema`+(t?.expandProfile?`-nested`:``),r=this.getCacheEntry(n,void 0);if(r)return r.value;let i=new oD((async()=>{if(t?.expandProfile){let t=this.fhirUrl(`StructureDefinition`,`$expand-profile`);t.search=new URLSearchParams({url:e}).toString(),Yx(await this.post(t.toString(),{}))}else{let t=await this.searchOne(`StructureDefinition`,{url:e,_sort:`-_lastUpdated`});if(!t){console.warn(`No StructureDefinition found for ${e}!`);return}Xx(t)}})());return this.setCacheEntry(n,i,t),i}readHistory(e,t,n,r){let i=this.fhirUrl(e,t,`_history`);return n?.count&&i.searchParams.set(`_count`,n.count.toString()),n?.offset&&i.searchParams.set(`_offset`,n.offset.toString()),this.get(i.toString(),r)}readVersion(e,t,n,r){return this.get(this.fhirUrl(e,t,`_history`,n),r)}readPatientEverything(e,t){return this.getBundle(this.fhirUrl(`Patient`,e,`$everything`),t)}readPatientSummary(e,t){return this.getBundle(this.fhirUrl(`Patient`,e,`$summary`),t)}createResource(e,t){if(!e.resourceType)throw Error(`Missing resourceType`);return this.invalidateSearches(e.resourceType),this.post(this.fhirUrl(e.resourceType),e,void 0,t)}async createResourceIfNoneExist(e,t,n={}){let r=this.fhirUrl(e.resourceType);this.setRequestHeader(n,`If-None-Exist`,t);let i=await this.post(r,e,void 0,n);return this.cacheResource(i,n),this.invalidateUrl(this.fhirUrl(e.resourceType,e.id,`_history`)),this.invalidateSearches(e.resourceType),i}async upsertResource(e,t,n){let r=this.fhirSearchUrl(e.resourceType,t),i=await this.put(r,e,void 0,n);return i||=e,this.cacheResource(i,n),this.invalidateUrl(this.fhirUrl(e.resourceType,e.id,`_history`)),this.invalidateSearches(e.resourceType),i}async createAttachment(e,t,n,r,i){let a=BD(e,t,n,r);if(a.contentType===IE.XML){let e=a.data,t;t=e instanceof Blob?await new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{if(!r.result){n(Error(`Failed to load file`));return}t(r.result)},r.readAsText(e,`utf-8`)}):ArrayBuffer.isView(e)?new TextDecoder().decode(e):e,t.includes(`<ClinicalDocument`)&&t.includes(`urn:hl7-org:v3`)&&(a={...a,contentType:IE.CDA_XML})}let o=i??(typeof t==`object`?t:{}),s=await this.createBinary(a,o);return{contentType:a.contentType,url:s.url,title:a.filename}}createBinary(e,t,n,r,i){let a=BD(e,t,n,r),o=i??(typeof t==`object`?t:{}),{data:s,contentType:c,filename:l,securityContext:u,onProgress:d}=a,f=this.fhirUrl(`Binary`);return l&&f.searchParams.set(`_filename`,l),u?.reference&&this.setRequestHeader(o,`X-Security-Context`,u.reference),d?this.uploadwithProgress(f,s,c,d,o):this.post(f,s,c,o)}uploadwithProgress(e,t,n,r,i){return new Promise((a,o)=>{let s=new XMLHttpRequest,c=()=>s.abort();i?.signal?.addEventListener(`abort`,c);let l=e=>{i?.signal?.removeEventListener(`abort`,c),e instanceof Error?o(e):a(e)};if(s.responseType=`json`,s.onabort=()=>l(new DOMException(`Request aborted`,`AbortError`)),s.onerror=()=>l(Error(`Request error`)),r&&(s.upload.onprogress=e=>r(e),s.upload.onload=e=>r(e)),s.onload=()=>{s.status>=200&&s.status<300?l(s.response):l(new Fx(Ix(s.response||s.statusText)))},s.open(`POST`,e),s.withCredentials=!0,s.setRequestHeader(`Authorization`,`Bearer `+this.accessToken),s.setRequestHeader(`Cache-Control`,`no-cache, no-store, max-age=0`),s.setRequestHeader(`Content-Type`,n),this.options.extendedMode!==!1&&s.setRequestHeader(`X-Medplum`,`extended`),i?.headers){let e=i.headers;for(let[t,n]of Object.entries(e))s.setRequestHeader(t,n)}s.send(t)})}async createPdf(e,t,n,r){if(!this.createPdfImpl)throw Error(`PDF creation not enabled`);let i=HD(e,t,n,r),a=typeof t==`object`?t:{},{docDefinition:o,tableLayouts:s,fonts:c,...l}=i,u=await this.createPdfImpl(o,s,c),d={...l,data:u,contentType:`application/pdf`};return this.createBinary(d,a)}createComment(e,t,n){let r=this.getProfile(),i,a;return e.resourceType===`Encounter`&&(i=WS(e),a=e.subject),e.resourceType===`ServiceRequest`&&(i=e.encounter,a=e.subject),e.resourceType===`Patient`&&(a=WS(e)),this.createResource({resourceType:`Communication`,status:`completed`,basedOn:[WS(e)],encounter:i,subject:a,sender:r?WS(r):void 0,sent:new Date().toISOString(),payload:[{contentString:t}]},n)}async updateResource(e,t){if(!e.resourceType)throw Error(`Missing resourceType`);if(!e.id)throw Error(`Missing id`);let n=await this.put(this.fhirUrl(e.resourceType,e.id),e,void 0,t);return n||=e,this.cacheResource(n,t),this.invalidateUrl(this.fhirUrl(e.resourceType,e.id,`_history`)),this.invalidateSearches(e.resourceType),n}async patchResource(e,t,n,r){let i=await this.patch(this.fhirUrl(e,t),n,r);return this.cacheResource(i,r),this.invalidateUrl(this.fhirUrl(e,t,`_history`)),this.invalidateSearches(e),i}deleteResource(e,t,n){return this.deleteCacheEntry(this.fhirUrl(e,t).toString()),this.invalidateSearches(e),this.delete(this.fhirUrl(e,t),n)}validateResource(e,t){return this.post(this.fhirUrl(e.resourceType,`$validate`),e,void 0,t)}executeBot(e,t,n,r){let i;if(typeof e==`string`){let t=e;i=this.fhirUrl(`Bot`,t,`$execute`)}else{let t=e;i=this.fhirUrl(`Bot`,`$execute`),i.searchParams.set(`identifier`,t.system+`|`+t.value)}return this.post(i,t,n,r)}executeBatch(e,t){return this.post(this.fhirBaseUrl,e,void 0,t)}sendEmail(e,t){return this.post(`email/v1/send`,e,IE.JSON,t)}graphql(e,t,n,r){return this.post(this.fhirUrl(`$graphql`),{query:e,operationName:t,variables:n},IE.JSON,r)}readResourceGraph(e,t,n,r){return this.get(`${this.fhirUrl(e,t)}/$graph?graph=${n}`,r)}pushToAgent(e,t,n,r,i,a){let{waitTimeout:o,returnAck:s,...c}=a??{};return this.post(this.fhirUrl(`Agent`,KS(e),`$push`),{destination:typeof t==`string`?t:GS(t),body:n,contentType:r,waitForResponse:i,...o===void 0?void 0:{waitTimeout:o},...s===void 0?void 0:{returnAck:s}},IE.FHIR_JSON,c)}getCdsServices(e){return this.get(this.cdsServicesUrl,e)}callCdsService(e,t,n){return this.post(zC(this.cdsServicesUrl,e),t,IE.JSON,n)}getActiveLogin(){return this.storage.getObject(`activeLogin`)}async setActiveLogin(e){(!this.sessionDetails?.profile||GS(this.sessionDetails.profile)!==e.profile?.reference)&&this.clearActiveLogin(),this.setAccessToken(e.accessToken,e.refreshToken),this.storage.setObject(`activeLogin`,e),this.addLogin(e),this.refreshPromise=void 0,await this.refreshProfile()}getAccessToken(){return this.accessToken}isAuthenticated(e){return this.accessTokenExpires!==void 0&&Date.now()<this.accessTokenExpires-(e??this.refreshGracePeriod)}setAccessToken(e,t){this.accessToken=e,this.refreshToken=t,this.accessTokenExpires=iD(e),this.medplumServer=rD(e)}getLogins(){return this.storage.getObject(`logins`)??[]}addLogin(e){let t=this.getLogins().filter(t=>t.profile?.reference!==e.profile?.reference);t.push(e),this.storage.setObject(`logins`,t)}async refreshProfile(){if(this.medplumServer)return this.profilePromise=new Promise((e,t)=>{this.get(`auth/me`,{cache:`no-cache`}).then(t=>{this.profilePromise=void 0;let n=this.sessionDetails?.profile?.id!==t.profile.id;this.sessionDetails=t,n&&this.dispatchEvent({type:`change`}),e(t.profile),this.dispatchEvent({type:`profileRefreshed`})}).catch(t)}),this.dispatchEvent({type:`profileRefreshing`}),this.profilePromise}isLoading(){return!this.isInitialized||!!this.profilePromise&&!this.sessionDetails?.profile}isSuperAdmin(){return!!this.sessionDetails?.project.superAdmin}isProjectAdmin(){return!!this.sessionDetails?.membership.admin}getProject(){return this.sessionDetails?.project}getProjectMembership(){return this.sessionDetails?.membership}getProfile(){return this.sessionDetails?.profile}async getProfileAsync(){return this.profilePromise?this.profilePromise:this.sessionDetails?this.sessionDetails.profile:this.refreshProfile()}getUserConfiguration(){return this.sessionDetails?.config}getAccessPolicy(){return this.sessionDetails?.accessPolicy}async download(e,t={}){this.refreshPromise&&await this.refreshPromise;let n=e.toString();n.startsWith(AD)&&(e=this.fhirUrl(n));let r=t.headers;return r||(r={},t.headers=r),r.Accept||=`*/*`,this.addFetchOptionsDefaults(t),(await this.fetchWithRetry(e.toString(),t)).blob()}async createMedia(e,t){let{additionalFields:n,...r}=e,i=await this.createResource({resourceType:`Media`,status:`preparation`,content:{contentType:e.contentType},...n});r.securityContext||=WS(i);let a=await this.createAttachment(r,t);return this.updateResource({...i,status:`completed`,content:a})}async uploadMedia(e,t,n,r,i){return this.createMedia({data:e,contentType:t,filename:n,additionalFields:r},i)}async createDocumentReference(e,t){let{additionalFields:n,...r}=e,i=await this.createResource({resourceType:`DocumentReference`,status:`current`,content:[{attachment:{contentType:e.contentType}}],...n});r.securityContext||=WS(i);let a=await this.createAttachment(r,t);return this.updateResource({...i,content:[{attachment:a}]})}async bulkExport(e=``,t,n,r){let i=e&&`${e}/`,a=this.fhirUrl(`${i}$export`);return t&&a.searchParams.set(`_type`,t),n&&a.searchParams.set(`_since`,n),this.startAsyncRequest(a.toString(),r)}async startAsyncRequest(e,t={}){this.addFetchOptionsDefaults(t);let n=t.headers;return n.Prefer=`respond-async`,this.request(`POST`,e,t)}get keyValue(){return this.keyValueClient||=new aD(this),this.keyValueClient}getBundle(e,t){return new oD((async()=>{let n=await this.get(e,t);for(let e of n.entry??WC)this.cacheResource(e.resource,t);return n})())}isCacheEnabled(e){return!!this.requestCache&&!this.getRequestHeader(e,`x-medplum-on-behalf-of`)}getCacheEntry(e,t){if(!this.isCacheEnabled(t)||t?.cache===`no-cache`||t?.cache===`reload`)return;let n=this.requestCache.get(e);if(!(!n||n.requestTime+this.cacheTime<Date.now()))return n}setCacheEntry(e,t,n){this.isCacheEnabled(n)&&(this.requestCache.set(e,{requestTime:Date.now(),value:t}),n?.signal&&n.signal.addEventListener(`abort`,()=>{this.requestCache.delete(e)}))}cacheResource(e,t){e?.id&&!e.meta?.tag?.some(e=>e.code===`SUBSETTED`)&&this.setCacheEntry(this.fhirUrl(e.resourceType,e.id).toString(),new oD(Promise.resolve(e)),t)}deleteCacheEntry(e){this.requestCache&&this.requestCache.delete(e)}async request(e,t,n={},r={}){await this.refreshIfExpired(),n.method=e,this.addFetchOptionsDefaults(n);let i=await this.fetchWithRetry(t,n);if(i.status===401)return this.handleUnauthenticated(e,t,n);if(i.status===204||i.status===304)return;let a=i.headers.get(`content-type`)?.includes(`json`);if(i.status===404&&!a)throw new Fx(Cx);let o=await this.parseBody(i,a);if(i.status===200&&n.followRedirectOnOk||i.status===201&&n.followRedirectOnCreated){let e=await LD(i,o);if(e)return this.request(`GET`,e,{...n,body:void 0})}if(i.status===202&&n.pollStatusOnAccepted){let e=await LD(i,o)??r.statusUrl;if(e)return this.pollStatus(e,n,r)}if(i.status>=400)throw new Fx(Ix(o));return o}async parseBody(e,t){let n;if(e.headers.get(`content-length`)!==`0`){if(t)try{n=await e.json()}catch(t){throw console.error(`Error parsing response`,e.status,t),t}else n=await e.text();return n}}async fetchWithRetry(e,t){e.startsWith(`http`)||(e=zC(this.baseUrl,e));let n=t?.maxRetries??this.maxRetries;for(let r=0;r<=n;r++)try{this.logLevel!==`none`&&this.logRequest(e,t);let i=await this.fetch(e,t);if(this.logLevel!==`none`&&this.logResponse(i),this.setCurrentRateLimit(i),r>=n||!UD(i))return i;let a=this.getRetryDelay(r);if(a>(t.maxRetryTime??this.maxRetryTime))return i;await MC(a,{signal:t.signal})}catch(e){if(e.message===`Failed to fetch`&&r===0&&this.dispatchEvent({type:`offline`}),e.name===`AbortError`||r===n)throw e}throw Error(`Unreachable`)}logRequest(e,t){if(console.log(`> ${t.method} ${e}`),this.logLevel===`verbose`&&t.headers){let e=t.headers;for(let t of IC(Object.keys(e)))console.log(`> ${t}: ${e[t]}`)}}logResponse(e){console.log(`< ${e.status} ${e.statusText}`),this.logLevel===`verbose`&&e.headers&&e.headers.forEach((e,t)=>console.log(`< ${t}: ${e}`))}setCurrentRateLimit(e){if(!e?.headers||typeof e.headers.get!=`function`)return;let t=e.headers.get(`ratelimit`);t&&(this.currentRateLimits=t)}rateLimitStatus(){if(!this.currentRateLimits)return[];let e=this.currentRateLimits;return e.split(`,`).map(t=>{let n=t.split(`;`).map(e=>e.trim());if(n.length!==3)throw Error(`Could not parse RateLimit header: `+e);let r=n[0].substring(1,n[0].length-1),i=n.find(e=>e.startsWith(`r=`))?.substring(2),a=i?Number.parseInt(i,10):NaN,o=n.find(e=>e.startsWith(`t=`))?.substring(2),s=o?Number.parseInt(o,10):NaN;if(!r||Number.isNaN(a)||Number.isNaN(s))throw Error(`Could not parse RateLimit header: `+e);return{name:r,remainingUnits:a,secondsUntilReset:s,resetsAfter:Math.ceil((Date.now()+1e3*s)/1e3)}})}getRetryDelay(e){let t=this.rateLimitStatus(),n=500*1.5**e;for(let e of t)e.remainingUnits||(n=Math.max(n,e.secondsUntilReset*1e3));return n}async pollStatus(e,t,n){let r={...t,method:`GET`,body:void 0,redirect:`follow`};return n.pollCount===void 0?(t.headers&&typeof t.headers==`object`&&`Prefer`in t.headers&&(r.headers={...t.headers},delete r.headers.Prefer),n.statusUrl=e,n.pollCount=1):(await MC(t.pollStatusPeriod??1e3,{signal:t.signal}),n.pollCount++),this.request(`GET`,e,r,n)}async executeAutoBatch(){if(this.autoBatchQueue===void 0)return;let e=[...this.autoBatchQueue];if(this.autoBatchQueue.length=0,this.autoBatchTimerId=void 0,e.length===1){let t=e[0];try{t.resolve(await this.request(t.method,zC(this.fhirBaseUrl,t.url),t.options))}catch(e){t.reject(new Fx(Ix(e)))}return}let t={resourceType:`Bundle`,type:`batch`,entry:e.map(e=>({request:{method:e.method,url:e.url},resource:e.options.body?JSON.parse(e.options.body):void 0}))},n=await this.post(this.fhirBaseUrl,t);for(let t=0;t<e.length;t++){let r=e[t],i=n.entry?.[t];i?.response?.outcome&&!Nx(i.response.outcome)?r.reject(new Fx(i.response.outcome)):r.resolve(i?.resource)}}addFetchOptionsDefaults(e){Object.entries(this.defaultHeaders).forEach(([t,n])=>{this.setRequestHeader(e,t,n)}),this.setRequestHeader(e,`Accept`,wD,!0),this.options.extendedMode!==!1&&this.setRequestHeader(e,`X-Medplum`,`extended`),e.body&&this.setRequestHeader(e,`Content-Type`,IE.FHIR_JSON,!0),this.accessToken?this.setRequestHeader(e,`Authorization`,`Bearer `+this.accessToken):this.basicAuth&&this.setRequestHeader(e,`Authorization`,`Basic `+this.basicAuth),e.cache||=`no-cache`,e.credentials||=`include`}setRequestContentType(e,t){this.setRequestHeader(e,`Content-Type`,t)}getRequestHeader(e,t){let n=e?.headers;if(n){if(Array.isArray(n)){let e=n.find(([e])=>e.toLowerCase()===t.toLowerCase());return e?e[1]:void 0}else if(n instanceof Headers)return n.get(t)??void 0;else if(vC(n))return n[t]??void 0}}setRequestHeader(e,t,n,r=!1){let i=e.headers;i?Array.isArray(i)?(!r||!i.some(([e])=>e.toLowerCase()===t.toLowerCase()))&&i.push([t,n]):i instanceof Headers?(!r||!i.has(t))&&i.set(t,n):vC(i)&&(!r||!i[t])&&(i[t]=n):e.headers={[t]:n}}setRequestBody(e,t){typeof t==`string`||typeof Blob<`u`&&(t instanceof Blob||t?.constructor.name===`Blob`)||typeof File<`u`&&(t instanceof File||t?.constructor.name===`File`)||typeof Uint8Array<`u`&&(t instanceof Uint8Array||t?.constructor.name===`Uint8Array`)?e.body=t:t&&(e.body=JSON.stringify(t))}async handleUnauthenticated(e,t,n){if(this.refresh())return this.request(e,t,n);throw this.clear(),this.onUnauthenticated?.(),new Fx(wx)}async startPkce(){let e=EE();sessionStorage.setItem(`pkceState`,e);let t=EE().slice(0,128);sessionStorage.setItem(`codeVerifier`,t);try{return{codeChallengeMethod:`S256`,codeChallenge:TC(await DE(t)).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replaceAll(`=`,``)}}catch(e){return console.warn(`Failed to hash code verifier. Falling back to 'plain' code challenge method`,e),{codeChallengeMethod:`plain`,codeChallenge:t}}}async requestAuthorization(e){let t=await this.ensureCodeChallenge(e??{}),n=new URL(this.authorizeUrl);n.searchParams.set(`response_type`,`code`),n.searchParams.set(`state`,sessionStorage.getItem(`pkceState`)),n.searchParams.set(`client_id`,t.clientId??this.clientId),n.searchParams.set(`redirect_uri`,t.redirectUri??SE.getOrigin()),n.searchParams.set(`code_challenge_method`,t.codeChallengeMethod),n.searchParams.set(`code_challenge`,t.codeChallenge),n.searchParams.set(`scope`,t.scope??`openid profile`),SE.assign(n.toString())}processCode(e,t){let n={grant_type:MD.AuthorizationCode,code:e,client_id:t?.clientId??this.clientId??``,redirect_uri:t?.redirectUri??SE.getOrigin()};if(typeof sessionStorage<`u`){let e=sessionStorage.getItem(`codeVerifier`);e&&(n.code_verifier=e)}return this.fetchTokens(n)}refreshIfExpired(e){return!this.refreshPromise&&this.accessTokenExpires!==void 0&&!this.isAuthenticated(e)&&this.refresh(),this.refreshPromise??Promise.resolve()}refresh(){if(this.refreshPromise)return this.refreshPromise;if(this.refreshToken)return this.refreshPromise=this.fetchTokens({grant_type:MD.RefreshToken,client_id:this.clientId??``,refresh_token:this.refreshToken}),this.refreshPromise;if(this.clientId&&this.clientSecret)return this.refreshPromise=this.startClientLogin(this.clientId,this.clientSecret),this.refreshPromise}async startClientLogin(e,t){return this.clientId=e,this.clientSecret=t,this.fetchTokens({grant_type:MD.ClientCredentials,client_id:e,client_secret:t})}async startJwtBearerLogin(e,t,n){return this.clientId=e,this.fetchTokens({grant_type:MD.JwtBearer,client_id:e,assertion:t,scope:n})}async startJwtAssertionLogin(e){return this.fetchTokens({grant_type:MD.ClientCredentials,client_assertion_type:PD.JwtBearer,client_assertion:e})}setBasicAuth(e,t){this.clientId=e,this.clientSecret=t,this.basicAuth=wE(e+`:`+t)}setLogLevel(e){this.logLevel=e,this.options.verbose=e===`verbose`}getLogLevel(){return this.logLevel}setVerbose(e){this.logLevel=e?`verbose`:`none`,this.options.verbose=e}async fhircastSubscribe(e,t){if(!(typeof e==`string`&&e!==``))throw new Fx(kx(`Invalid topic provided. Topic must be a valid string.`));if(!(typeof t==`object`&&Array.isArray(t)&&t.length>0))throw new Fx(kx(`Invalid events provided. Events must be an array of event names containing at least one event.`));let n={channelType:`websocket`,mode:`subscribe`,topic:e,events:t},r=(await this.post(this.fhircastHubUrl,qE(n),IE.FORM_URL_ENCODED))[`hub.channel.endpoint`];if(!r)throw Error(`Invalid response!`);return n.endpoint=r,n}async fhircastUnsubscribe(e){if(!JE(e))throw new Fx(kx(`Invalid topic or subscriptionRequest. SubscriptionRequest must be an object.`));if(!(e.endpoint&&typeof e.endpoint==`string`&&e.endpoint.startsWith(`ws`)))throw new Fx(kx(`Provided subscription request must have an endpoint in order to unsubscribe.`));e.mode=`unsubscribe`,await this.post(this.fhircastHubUrl,qE(e),IE.FORM_URL_ENCODED)}fhircastConnect(e){return new $E(e)}async fhircastPublish(e,t,n,r){return HE(t)?this.post(this.fhircastHubUrl,QE(e,t,n,r),IE.JSON):(UE(t),this.post(this.fhircastHubUrl,QE(e,t,n),IE.JSON))}async fhircastGetContext(e){return this.get(`${this.fhircastHubUrl}/${e}`,{cache:`no-cache`})}async invite(e,t){return this.post(`admin/projects/`+e+`/invite`,t)}async handleTokenError(e){try{let t=await e.json();throw Mx(t)?new Fx(t):t.error_description?new Fx(Ox(t.error_description)):Error(JSON.stringify(t))}catch(e){throw e instanceof Fx?(e.message=`Failed to fetch tokens: ${e.message}`,e):new Fx(Ox(`Failed to fetch tokens`),{cause:e})}}async fetchTokens(e){let t=new URLSearchParams(e),n={...this.defaultHeaders,"Content-Type":IE.FORM_URL_ENCODED};this.basicAuth&&(n.Authorization=`Basic ${this.basicAuth}`),this.credentialsInHeader&&(t.delete(`client_id`),t.delete(`client_secret`),!this.basicAuth&&e.client_id&&e.client_secret&&(n.Authorization=`Basic ${wE(e.client_id+`:`+e.client_secret)}`));let r={method:`POST`,headers:n,body:t.toString(),credentials:`include`},i;try{i=await this.fetchWithRetry(this.tokenUrl,r)}catch(e){throw this.refreshPromise=void 0,e}i.ok||(this.clearActiveLogin(),this.onUnauthenticated?.(),await this.handleTokenError(i));let a=await i.json();return await this.verifyTokens(a),this.getProfile()}async verifyTokens(e){let t=e.access_token;if(tD(t)){let e=nD(t);if(Date.now()>=e.exp*1e3)throw this.clearActiveLogin(),new Fx(Tx);if(e.cid){if(e.cid!==this.clientId)throw this.clearActiveLogin(),new Fx(Ex)}else if(this.clientId&&e.client_id!==this.clientId)throw this.clearActiveLogin(),new Fx(Ex)}return this.setActiveLogin({accessToken:t,refreshToken:e.refresh_token,project:e.project,profile:e.profile})}checkSessionDetailsMatchLogin(e){return this.sessionDetails&&e?e.profile?.reference?.endsWith(this.sessionDetails.profile.id)??!1:!0}setupStorageListener(){try{window.addEventListener(`storage`,e=>{if(e.key===null)SE.reload();else if(e.key===this.storage.makeKey(`activeLogin`)){let t=e.oldValue?JSON.parse(e.oldValue):void 0,n=e.newValue?JSON.parse(e.newValue):void 0;t?.profile.reference!==n?.profile.reference||!this.checkSessionDetailsMatchLogin(n)?SE.reload():n?this.setAccessToken(n.accessToken,n.refreshToken):this.clear()}})}catch{}}getSubscriptionManager(){return this.subscriptionManager||=new xD(this,BC(this.baseUrl,`/ws/subscriptions-r4`)),this.subscriptionManager}subscribeToCriteria(e,t){return this.getSubscriptionManager().addCriteria(e,t)}unsubscribeFromCriteria(e,t){this.subscriptionManager&&this.subscriptionManager.removeCriteria(e,t)}getMasterSubscriptionEmitter(){return this.getSubscriptionManager().getMasterEmitter()}};function ID(){if(!globalThis.fetch)throw Error(`Fetch not available in this environment`);return globalThis.fetch.bind(globalThis)}async function LD(e,t){let n=e.headers.get(`content-location`);if(n)return n;let r=e.headers.get(`location`);if(r)return r;if(Mx(t)&&t.issue?.[0]?.diagnostics)return t.issue[0].diagnostics}function RD(e){let t=e.entry?.map(e=>e.resource)??[];return Object.assign(t,{bundle:e})}function zD(e){return vC(e)&&`data`in e&&`contentType`in e}function BD(e,t,n,r){return zD(e)?e:{data:e,filename:t,contentType:n,onProgress:r}}function VD(e){return vC(e)&&`docDefinition`in e}function HD(e,t,n,r){return VD(e)?e:{docDefinition:e,filename:t,tableLayouts:n,fonts:r}}function UD(e){return e.status===429||e.status>=500}function WD({parentContext:e,path:t,elements:n,profileUrl:r,debugMode:i,accessPolicyResource:a}){if(t===e?.path)return;i??=e?.debugMode??!1,a??=e?.accessPolicyResource;let o=GD(t,n,e,!!i),s=NC(t,`.`,2)[1];o=KD(o,a,s),o=qD(o,a,s);let c=Object.create(null);for(let[e,n]of Object.entries(o))c[t+`.`+e]=n;let l;if(e&&!e.isDefaultContext)l=e.getExtendedProps;else{let e=Object.create(null);l=t=>{let n=NC(t,`.`,2)[1];if(n){if(!e[n]){let t=JD(n,a?.hiddenFields);e[n]={hidden:t,readonly:t||JD(n,a?.readonlyFields)}}return e[n]}}}return{path:t,elements:o,elementsByPath:c,profileUrl:r??e?.profileUrl,debugMode:i,getExtendedProps:l,accessPolicyResource:a}}function GD(e,t,n,r){let i=Object.create(null);if(n)for(let[t,r]of Object.entries(n.elementsByPath)){let n=kC(e,t);n!==void 0&&(i[n]=r)}let a=!1;if(t)for(let[e,n]of Object.entries(t))e in i||(i[e]=n,a=!0);return r&&console.assert(a,`Unnecessary ElementsContext; not using any newly provided elements`),i}function KD(e,t,n){if(!t?.hiddenFields?.length)return e;let r=n?n+`.`:``;return Object.fromEntries(Object.entries(e).filter(([e])=>!JD(r+e,t.hiddenFields)))}function qD(e,t,n){if(!t?.readonlyFields?.length)return e;let r=Object.create(null),i=n?n+`.`:``;for(let[n,a]of Object.entries(e))JD(i+n,t.readonlyFields)?r[n]={...a,readonly:!0}:r[n]=a;return r}function JD(e,t){if(!t?.length)return!1;let n=e.split(`.`);for(let e=1;e<=n.length;e++){let r=n.slice(0,e).join(`.`);if(t.includes(r))return!0}return!1}function YD(e){return e.type!==void 0&&e.type.length>0}function XD(e,t,n,r){let i=uS(e,t.path,{profileUrl:r});if(i){let e=n.typeSchema?.elements??n.elements;return i.some(r=>mS(r,t,n,e))??!1}return console.assert(!1,`getNestedProperty[%s] in isDiscriminatorComponentMatch missed`,t.path),!1}function ZD(e,t,n,r){if(e)for(let i of t){let t={value:e,type:i.typeSchema?.type??i.type?.[0].code};if(n.every(e=>XD(t,e,i,i.typeSchema?.url??r)))return i.name}}var QD=class{rootSchema;visitor;elementsContextStack;sliceAllowList;constructor(e,t,n){if(e.type===void 0)throw Error(`schema must include a type`);this.rootSchema=e;let r=WD({parentContext:void 0,path:this.rootSchema.type,elements:n??this.rootSchema.elements,profileUrl:this.rootSchema.name===this.rootSchema.type?void 0:this.rootSchema.url});if(r===void 0)throw Error(`Could not create root elements context`);this.elementsContextStack=[r],this.visitor=t}get elementsContext(){return this.elementsContextStack.at(-1)}crawlElement(e,t,n){this.visitor.onEnterSchema&&this.visitor.onEnterSchema(this.rootSchema);let r=Object.fromEntries(Object.entries(this.elementsContext.elements).filter(([e])=>e.startsWith(t)));this.crawlElementsImpl(r,n),this.visitor.onExitSchema&&this.visitor.onExitSchema(this.rootSchema)}crawlSlice(e,t,n){let r=this.prepareSlices(n.slices,n);if(!cC(r.slices))throw Error(`cannot crawl slice ${t.name} since it has no type information`);this.visitor.onEnterSchema&&this.visitor.onEnterSchema(this.rootSchema),this.sliceAllowList=[t],this.crawlSliceImpl(r.slices[0],t.path,r),this.sliceAllowList=void 0,this.visitor.onExitSchema&&this.visitor.onExitSchema(this.rootSchema)}crawlResource(){this.visitor.onEnterSchema&&this.visitor.onEnterSchema(this.rootSchema),this.crawlElementsImpl(this.rootSchema.elements,this.rootSchema.type),this.visitor.onExitSchema&&this.visitor.onExitSchema(this.rootSchema)}crawlElementsImpl(e,t){let n=$D(e);for(let e of n)this.crawlElementNode(e,t)}crawlElementNode(e,t){let n=t+`.`+e.key;this.visitor.onEnterElement&&this.visitor.onEnterElement(n,e.element,this.elementsContext);for(let n of e.children)this.crawlElementNode(n,t);cC(e.element?.slicing?.slices)&&this.crawlSlicingImpl(e.element.slicing,n),this.visitor.onExitElement&&this.visitor.onExitElement(n,e.element,this.elementsContext)}prepareSlices(e,t){let n=[];for(let t of e){if(!YD(t))continue;let e=t.type.find(e=>cC(e.profile))?.profile?.[0];if(cC(e)){let n=tS(e);n&&(t.typeSchema=n)}n.push(t)}return{...t,slices:n}}crawlSlicingImpl(e,t){let n=this.prepareSlices(e.slices,e);for(let e of n.slices)(this.sliceAllowList===void 0||this.sliceAllowList.includes(e))&&this.crawlSliceImpl(e,t,n)}crawlSliceImpl(e,t,n){let r=e.typeSchema;r&&this.visitor.onEnterSchema&&this.visitor.onEnterSchema(r),this.visitor.onEnterSlice&&this.visitor.onEnterSlice(t,e,n);let i,a=r?.elements??e.elements;cC(a)&&(i=WD({path:t,parentContext:this.elementsContext,elements:a})),i&&this.elementsContextStack.push(i),this.crawlElementsImpl(a,t),i&&this.elementsContextStack.pop(),this.visitor.onExitSlice&&this.visitor.onExitSlice(t,e,n),r&&this.visitor.onExitSchema&&this.visitor.onExitSchema(r)}};function $D(e){let t=[];function n(e,t){return t.startsWith(e+`.`)}function r(e,t){for(let i of e.children)if(n(i.key,t.key)){r(i,t);return}e.children.push(t)}let i=Object.entries(e);i.sort((e,t)=>e[0].localeCompare(t[0]));for(let[e,a]of i){let i={key:e,element:a,children:[]},o=!1;for(let a of t)if(n(a.key,e)){r(a,i),o=!0;break}o||t.push(i)}return t}var eO=`__sliceName`;function tO(e,t){let n=new rO(e,e.resourceType,`resource`);return new QD(t,n).crawlResource(),n.getDefaultValue()}function nO(e,t,n){for(let[r,i]of Object.entries(t)){if(n===void 0||n===r){sO(e,r,i,t);continue}let a=kC(n,r);a!==void 0&&sO(e,a,i,t)}return e}var rO=class{rootValue;schemaStack;valueStack;constructor(e,t,n){this.schemaStack=[],this.valueStack=[],this.rootValue=gC(e),this.valueStack.splice(0,this.valueStack.length,{type:n,path:t,values:[this.rootValue]})}get schema(){return this.schemaStack.at(-1)}get value(){return this.valueStack.at(-1)}onEnterSchema(e){this.schemaStack.push(e)}onExitSchema(){this.schemaStack.pop()}onEnterElement(e,t,n){let r=this.value.values,i=this.value.path,a=kC(i,e);if(a===void 0)throw Error(`Expected ${e} to be prefixed by ${i}`);let o=[];for(let e of r){if(e===void 0)continue;let r=kC(n.path,i),s=Array.isArray(e)?e:[e];for(let e of s){iO(e,a,t,n.elements,r),sO(e,a,t,n.elements);let i=oO(e,a,n.elements,r);i!==void 0&&o.push(i)}}this.valueStack.push({type:`element`,path:e,values:o})}onExitElement(e,t,n){if(!this.valueStack.pop())throw Error(`Expected value context to exist when exiting element`);let r=kC(this.value.path,e);if(r===void 0)throw Error(`Expected ${e} to be prefixed by ${this.value.path}`);let i=kC(n.path,this.value.path);for(let e of this.value.values){let a=oO(e,r,n.elements,i);if(Array.isArray(a))for(let e=a.length-1;e>=0;e--){let t=a[e];cC(t)||a.splice(e,1)}sC(a)&&aO(e,void 0,r,t)}}onEnterSlice(e,t,n){let r=this.value.values,i=[];for(let e of r)if(e!==void 0){let r=Array.isArray(e)?e:[e],a=this.getMatchingSliceValues(r,t,n);i.push(a)}this.valueStack.push({type:`slice`,path:e,values:i})}getMatchingSliceValues(e,t,n){let r=[];for(let i of e)(i[eO]??ZD(i,[t],n.discriminator,this.schema.url))===t.name&&r.push(i);for(let n=r.length;n<t.min;n++)if(OC(t.type[0].code)){let t=Object.create(null);r.push(t),e.push(t)}return r}onExitSlice(){let e=this.valueStack.pop();if(!e)throw Error(`Expected value context to exist in onExitSlice`);for(let t of e.values)for(let e=t.length-1;e>=0;e--){let n=t[e];eO in n&&delete n[eO]}}getDefaultValue(){return this.rootValue}};function iO(e,t,n,r,i){let a=oO(e,t,r,i);n.min>0&&a===void 0&&OC(n.type[0].code)&&(n.isArray?aO(e,[Object.create(null)],t,n):aO(e,Object.create(null),t,n))}function aO(e,t,n,r){if(n.includes(`.`))throw Error(`key cannot be nested`);let i=n;if(n.includes(`[x]`)){let e=r.type[0].code;i=n.replace(`[x]`,DC(e))}t===void 0?delete e[i]:e[i]=t}function oO(e,t,n,r){let i=t.split(`.`),a=e,o;for(let e=0;e<i.length;e++){let t=i[e];if(t.includes(`[x]`)){let a=n[(r?r+`.`:``)+i.slice(0,e+1).join(`.`)].type[0].code;t=t.replace(`[x]`,DC(a))}if(e===i.length-1){o=Array.isArray(a)?a.map(e=>e[t]):a[t];continue}if(Array.isArray(a))a=a.map(e=>e[t]);else if(vC(a)){if(a[t]===void 0)return;a=a[t]}else return}return o}function sO(e,t,n,r){if(!(n.fixed||n.pattern))return e;if(Array.isArray(e))return e.map(e=>sO(e,t,n,r));e??=Object.create(null);let i=e,a=t.split(`.`),o=i;for(let e=0;e<a.length;e++){let t=a[e];if(t.includes(`[x]`)){let n=r[a.slice(0,e+1).join(`.`)].type[0].code;t=t.replace(`[x]`,DC(n))}if(e===a.length-1){let e=Array.isArray(o)?o:[o];for(let r of e)n.fixed?r[t]??=n.fixed.value:n.pattern&&(r[t]=cO(r[t],n.pattern.value))}else{if(!(t in o)){let n=a.slice(0,e+1).join(`.`);o[t]=r[n].isArray?[Object.create(null)]:Object.create(null)}o=o[t]}}return i}function cO(e,t){if(Array.isArray(t)&&(Array.isArray(e)||e===void 0))return(e?.length??0)>0?e:gC(t);if(vC(t)&&(vC(e)&&!Array.isArray(e)||e===void 0)){let n=gC(e)??Object.create(null);for(let e of Object.keys(t))n[e]=cO(n[e],t[e]);return n}return e}function lO(e){return e.match(/^\((.+)\)\.identifier$/)?.[1]}function uO(e,t){return new Lw(e,new Jw(t,new zw(`identifier`)))}var dO={BOOLEAN:`BOOLEAN`,NUMBER:`NUMBER`,QUANTITY:`QUANTITY`,TEXT:`TEXT`,REFERENCE:`REFERENCE`,CANONICAL:`CANONICAL`,DATE:`DATE`,DATETIME:`DATETIME`,PERIOD:`PERIOD`,UUID:`UUID`};function fO(e,t){let n=kw.types[e]?.searchParamsDetails?.[t.code];return n||=mO(e,t),n}function pO(e,t,n){let r=kw.types[e];r||(r={},kw.types[e]=r),r.searchParamsDetails||={},r.searchParamsDetails[t]=n}function mO(e,t){let n=t.code,r=t.expression,i=yO(e,r),a={elementDefinitions:[],propertyTypes:new Set,array:!1};for(let n of i){let r=SO(n),i=PC(()=>r.join(`.`));r.length===1&&r[0]instanceof Uw?a.propertyTypes.add(`boolean`):t.code.endsWith(`:identifier`)?a.propertyTypes.add(`Identifier`):i().endsWith(`extension.value.code`)||i().endsWith(`extension.value.coding.code`)?(a.array=!0,a.propertyTypes.clear(),a.propertyTypes.add(`code`)):hO(a,r,e,1),i().endsWith(`extension.valueDateTime`)&&(a.array=!1,a.propertyTypes.clear(),a.propertyTypes.add(`dateTime`))}let o;if(t.code.endsWith(`:identifier`)){let t=lO(r);if(t===void 0)throw Error(`Unexpected expression for derived identifier search parameter: ${r}`);o=uO(r,bO(e,t))}else o=bO(e,r);let s={type:vO(t,a.propertyTypes),elementDefinitions:a.elementDefinitions.map(e=>({...e,type:e.type?.filter(e=>a.propertyTypes.has(e.code))})).filter(e=>e.type&&e.type.length>0),parsedExpression:o,array:a.array};return pO(e,n,s),s}function hO(e,t,n,r){let i=t[r];if(i instanceof Hw){e.propertyTypes.add(i.right.toString());return}if(i instanceof aT){gO(e,i);return}let a=i.toString(),o=Tw(n,a);if(!o)throw Error(`Element definition not found for ${n} ${a}`);let s=!1,c=r+1;c<t.length&&t[c]instanceof oT&&(s=!0,c++);let l=t[c];if(o.isArray&&!s&&(e.array=!0),c===t.length-1&&l instanceof Hw){e.elementDefinitions.push(o),e.propertyTypes.add(l.right.toString());return}if(c>=t.length){e.elementDefinitions.push(o);for(let t of o.type??WC)e.propertyTypes.add(t.code);return}for(let n of o.type??WC){let r=n.code;_O(r)&&(r=o.type[0].code),hO(e,t,r,c)}}function gO(e,t){if(t.name===`as`){e.propertyTypes.add(t.args[0].toString());return}if(t.name===`ofType`){e.propertyTypes.add(t.args[0].toString());return}if(t.name===`resolve`){e.propertyTypes.add(`string`);return}if(t.name===`where`&&t.args[0]instanceof eT){e.propertyTypes.add(t.args[0].right.toString());return}throw Error(`Unhandled FHIRPath function: ${t.name}`)}function _O(e){return e===`Element`||e===`BackboneElement`}function vO(e,t){switch(e.type){case`date`:return t.size===1&&t.has(X.date)?dO.DATE:dO.DATETIME;case`number`:return dO.NUMBER;case`quantity`:return dO.QUANTITY;case`reference`:return t.has(X.canonical)?dO.CANONICAL:dO.REFERENCE;case`token`:return t.size===1&&t.has(X.boolean)?dO.BOOLEAN:dO.TEXT;default:return dO.TEXT}}function yO(e,t){let n=[];return xO(e,xT(t).child,n),n}function bO(e,t){let n=[],r=xT(t);if(xO(e,r.child,n),n.length===0)return r;let i=n[0];for(let e=1;e<n.length;e++)i=new Yw(i,n[e]);return new Lw(`<original-not-available>`,i)}function xO(e,t,n){t instanceof Yw?(xO(e,t.left,n),xO(e,t.right,n)):t.toString().includes(e+`.`)&&n.push(t)}function SO(e){return e instanceof Hw||e instanceof oT?[SO(e.left),e].flat():e instanceof Uw?[e]:e instanceof Jw?[SO(e.left),SO(e.right)].flat():e instanceof aT&&(e.name===`where`&&!(e.args[0]instanceof eT)||e.name===`last`)?[]:[e]}var CO=`https://meta.medplum.com/releases`,wO=new Map;function TO(e){let t=e;if(!t.tag_name)throw Error(`Manifest missing tag_name`);let n=t.assets;if(!n?.length)throw Error(`Manifest missing assets list`);for(let e of n){if(!e.browser_download_url)throw Error(`Asset missing browser download URL`);if(!e.name)throw Error(`Asset missing name`)}}async function EO(e,t,n){let r=wO.get(t??`latest`);if(!r){let i=t?`v${t}`:`latest`,a=new URL(`${CO}/${i}.json`);if(a.searchParams.set(`a`,e),a.searchParams.set(`c`,CD),n)for(let[e,t]of Object.entries(n))a.searchParams.set(e,t);let o=await fetch(a.toString());if(o.status!==200){let e;try{e=(await o.json()).message}catch(e){console.error(`Failed to parse message from body: ${Lx(e)}`)}throw Error(`Received status code ${o.status} while fetching manifest for version '${t??`latest`}'. Message: ${e}`)}let s=await o.json();TO(s),r=s,wO.set(t??`latest`,r),t||wO.set(r.tag_name.slice(1),r)}return r}async function DO(e){let t=await EO(e);if(!t.tag_name.startsWith(`v`))throw Error(`Invalid release name found. Release tag '${t.tag_name}' did not start with 'v'`);return t.tag_name.slice(1)}var OO=(0,b.createContext)(void 0);function kO(){return(0,b.useContext)(OO)}function Q(){return kO().medplum}function AO(){return kO().navigate}function jO(){return kO().profile}var MO=[`change`,`storageInitialized`,`storageInitFailed`,`profileRefreshing`,`profileRefreshed`];function NO(e){let t=e.medplum,n=e.navigate??PO,[r,i]=(0,b.useState)({profile:t.getProfile(),loading:t.isLoading()});(0,b.useEffect)(()=>{function e(){i(e=>({...e,profile:t.getProfile(),loading:t.isLoading()}))}for(let n of MO)t.addEventListener(n,e);return()=>{for(let n of MO)t.removeEventListener(n,e)}},[t]);let a=(0,b.useMemo)(()=>({...r,medplum:t,navigate:n}),[r,t,n]);return(0,L.jsx)(OO.Provider,{value:a,children:e.children})}function PO(e){window.location.assign(e)}var FO=new Map,IO=e=>(0,b.useMemo)(()=>{if(!e)return;let t=e.split(`?`)[0];if(!t)return e;let n;try{n=new URLSearchParams(new URL(e).search)}catch{return e}if(!n.has(`Key-Pair-Id`)||!n.has(`Signature`))return e;let r=n.get(`Expires`);if(!r||r.length>13)return e;let i=FO.get(t);if(i){let e=new URLSearchParams(new URL(i).search).get(`Expires`);if(e&&Number.parseInt(e,10)*1e3-5e3>Date.now())return i}return FO.set(t,e),e},[e]),LO=3e3;function RO(e,t,n){let r=Q(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(n?.subscriptionProps),c=(0,b.useRef)(!1),l=(0,b.useRef)(void 0),u=(0,b.useRef)(void 0),d=(0,b.useRef)(void 0),f=(0,b.useRef)(t);f.current=t;let p=(0,b.useRef)(n?.onWebSocketOpen);p.current=n?.onWebSocketOpen;let m=(0,b.useRef)(n?.onWebSocketClose);m.current=n?.onWebSocketClose;let h=(0,b.useRef)(n?.onSubscriptionConnect);h.current=n?.onSubscriptionConnect;let g=(0,b.useRef)(n?.onSubscriptionDisconnect);g.current=n?.onSubscriptionDisconnect;let _=(0,b.useRef)(n?.onError);_.current=n?.onError,(0,b.useEffect)(()=>{uC(n?.subscriptionProps,o)||s(n?.subscriptionProps)},[o,n]),(0,b.useEffect)(()=>{l.current&&=(clearTimeout(l.current),void 0);let t=!1;return(u.current!==e||!uC(d.current,o))&&(t=!0),t&&u.current&&r.unsubscribeFromCriteria(u.current,d.current),u.current=e,d.current=o,t&&e?a(r.subscribeToCriteria(e,o)):e||a(void 0),()=>{l.current=setTimeout(()=>{a(void 0),e&&r.unsubscribeFromCriteria(e,o)},LO)}},[r,e,o]);let v=(0,b.useCallback)(e=>{f.current?.(e.payload)},[]),y=(0,b.useCallback)(()=>{p.current?.()},[]),x=(0,b.useCallback)(()=>{m.current?.()},[]),S=(0,b.useCallback)(e=>{h.current?.(e.payload.subscriptionId)},[]),C=(0,b.useCallback)(e=>{g.current?.(e.payload.subscriptionId)},[]),w=(0,b.useCallback)(e=>{_.current?.(e.payload)},[]);(0,b.useEffect)(()=>i?(c.current||=(i.addEventListener(`message`,v),i.addEventListener(`open`,y),i.addEventListener(`close`,x),i.addEventListener(`connect`,S),i.addEventListener(`disconnect`,C),i.addEventListener(`error`,w),!0),()=>{c.current=!1,i.removeEventListener(`message`,v),i.removeEventListener(`open`,y),i.removeEventListener(`close`,x),i.removeEventListener(`connect`,S),i.removeEventListener(`disconnect`,C),i.removeEventListener(`error`,w)}):()=>void 0,[i,v,y,x,S,C,w])}function zO(e){let t=Q(),{resourceType:n,countCriteria:r,subscriptionCriteria:i}=e,[a,o]=(0,b.useState)(0),s=(0,b.useCallback)(e=>{t.search(n,r,{cache:e}).then(e=>o(e.total)).catch(console.error)},[t,n,r]);return(0,b.useEffect)(()=>{s(`default`)},[s]),RO(i,()=>{s(`reload`)}),a}function BO(e,t){let n=Q(),[r,i]=(0,b.useState)(()=>VO(n,e)),a=(0,b.useCallback)(e=>{uC(e,r)||i(e)},[r]);return(0,b.useEffect)(()=>{let r=!0,i=VO(n,e);return!i&&Ow(e)?n.readReference(e).then(e=>{r&&a(e)}).catch(e=>{r&&(a(void 0),t&&t(Ix(e)))}):a(i),(()=>r=!1)},[n,e,a,t]),r}function VO(e,t){if(t){if(Dw(t))return t;if(Ow(t))return e.getCachedReference(t)}}var HO={group:`group`,display:`display`,question:`question`,boolean:`boolean`,decimal:`decimal`,integer:`integer`,date:`date`,dateTime:`dateTime`,time:`time`,string:`string`,text:`text`,url:`url`,choice:`choice`,openChoice:`open-choice`,attachment:`attachment`,reference:`reference`,quantity:`quantity`},UO=`${px}/fhir/StructureDefinition/questionnaire-itemControl`,WO=`${px}/fhir/StructureDefinition/questionnaire-referenceFilter`,GO=`${px}/fhir/StructureDefinition/questionnaire-referenceResource`,KO=`${px}/fhir/StructureDefinition/questionnaire-validationError`,qO=`${px}/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression`,JO=`${px}/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-calculatedExpression`,YO=`${px}/fhir/StructureDefinition/questionnaire-signatureRequired`,XO=`${px}/fhir/StructureDefinition/questionnaireresponse-signature`,ZO=`${px}/fhir/StructureDefinition/questionnaire-hidden`;function QO(e){return e.type===`choice`||e.type===`open-choice`}function $O(e,t){if(nC(e,ZO)?.valueBoolean===!0)return!1;let n=ek(e,t);return n===void 0?tk(e,t):n}function ek(e,t){let n=nC(e,qO);if(t&&n){let e=n.valueExpression?.expression;if(e){let n=gS(t);return _S(CT(e,[n],{"%resource":n}))}}}function tk(e,t){if(!e.enableWhen)return!0;let n=e.enableBehavior??`any`;for(let r of e.enableWhen){let e=ck(t?.item,r.question);if(r.operator===`exists`&&!r.answerBoolean&&!e?.length){if(n===`any`)return!0;continue}let{anyMatch:i,allMatch:a}=uk(r,e,n);if(n===`any`&&i)return!0;if(n===`all`&&!a)return!1}return n!==`any`}function nk(e,t,n=t.item){for(let r of e){let e=n?.find(e=>e.linkId===r.linkId);e&&(rk(t,r,e),r.item&&e.item&&nk(r.item,t,e.item))}}function rk(e,t,n){try{let r=ok(t,e);if(!r)return;let i=ak(t,r);if(!i)return;n.answer=[i]}catch(e){n.extension=[{url:KO,valueString:`Expression evaluation failed: ${Lx(e)}`}]}}var ik={[HO.boolean]:[X.boolean],[HO.date]:[X.date],[HO.dateTime]:[X.dateTime],[HO.time]:[X.time],[HO.url]:[X.string,X.uri,X.url],[HO.attachment]:[X.Attachment],[HO.reference]:[X.Reference],[HO.quantity]:[X.Quantity],[HO.decimal]:[X.decimal,X.integer],[HO.integer]:[X.decimal,X.integer]};function ak(e,t){if(e.type){if(e.type===HO.choice||e.type===HO.openChoice)return{[`value${DC(t.type)}`]:t.value};if(e.type===HO.string||e.type===HO.text)return typeof t.value==`string`?{valueString:t.value}:void 0;if(ik[e.type]?.includes(t.type))return{[`value${DC(e.type)}`]:t.value}}}function ok(e,t){if(!t)return;let n=nC(e,JO);if(n){let e=n.valueExpression?.expression;if(e){let n=gS(t),r=CT(e,[n],{"%resource":n});return r.length===0?void 0:r[0]}}}function sk(e,t,n){let r=[];for(let i of e){let e=n.answerOption?.find(e=>GC(xk(e))===i);if(e){let n=xk(e);n&&r.push({[t]:n.value})}}return r}function ck(e,t){for(let n of e??WC){if(n.linkId===t)return n.answer;if(n.item){let e=ck(n.item,t);if(e)return e}}}function lk(e,t,n){if(n===`exists`)return!!e===t.value;if(e){let[{value:r}]=CT(`%actualAnswer ${n===`=`||n===`!=`?n?.replace(`=`,`~`):n} %expectedAnswer`,[e],{"%actualAnswer":e,"%expectedAnswer":t});return r}else return!1}function uk(e,t,n){let r=t||[],i=Sk(e),a=!1,o=!0;for(let t of r){let r=Ck(t),{operator:s}=e;if(lk(r,i,s)?a=!0:o=!1,n===`any`&&a)break}return{anyMatch:a,allMatch:o}}function dk(e){let t=nC(e,GO);if(t){if(t.valueCode!==void 0)return[t.valueCode];if(t.valueCodeableConcept)return t.valueCodeableConcept?.coding?.map(e=>e.code)}}function fk(e,t){let n=gC(e),r=nC(n,GO);return!t||t.length===0?(r&&(n.extension=n.extension?.filter(e=>e!==r)),n):(r||(n.extension??=[],r={url:GO},n.extension.push(r)),t.length===1?(r.valueCode=t[0],delete r.valueCodeableConcept):(r.valueCodeableConcept={coding:t.map(e=>({code:e}))},delete r.valueCode),n)}function pk(e,t,n){let r=nC(e,WO);if(!r?.valueString)return;let i=r.valueString;t?.reference&&(i=i.replaceAll(`$subj`,t.reference)),n?.reference&&(i=i.replaceAll(`$encounter`,n.reference));let a={},o=i.split(`&`);for(let e of o){let[t,n]=NC(e,`=`,2);a[t]=n}return a}function mk(e,t){return{resourceType:`QuestionnaireResponse`,questionnaire:e.url??GS(e),item:hk(e.item,t?.item),status:`in-progress`}}function hk(e,t){let n;for(let r of e??WC){if(r.type===HO.display)continue;let e=t?.filter(e=>e.linkId===r.linkId);if(e?.length)for(let t of e)t.id=t.id??vk(),t.text=t.text??r.text,t.item=hk(r.item,t.item),t.answer=yk(r,t),n=FC(n,t);else n=FC(n,gk(r))}return n}function gk(e){return{id:vk(),linkId:e.linkId,text:e.text,item:hk(e.item,void 0),answer:yk(e)}}var _k=1;function vk(){return`id-`+ _k++}function yk(e,t){if(!(e.type===HO.display||e.type===HO.group)){if(t?.answer&&t.answer.length>0)return t.answer;if(e.initial&&e.initial.length>0)return e.initial.map(e=>({...e}));if(e.answerOption)return e.answerOption.filter(e=>e.initialSelected).map(e=>({...e,initialSelected:void 0}))}}function bk(e){return SS({type:`QuestionnaireItemInitial`,value:e},`value`)}function xk(e){return SS({type:`QuestionnaireItemAnswerOption`,value:e},`value`)}function Sk(e){return SS({type:`QuestionnaireItemEnableWhen`,value:e},`answer`)}function Ck(e){return SS({type:`QuestionnaireResponseItemAnswer`,value:e},`value`)}function wk(e){let t=BO(e.questionnaire),n=BO(e.defaultValue),[,r]=(0,b.useReducer)(e=>e+1,0),i=(0,b.useRef)({activePage:0});if(!i.current.questionnaire&&t&&(i.current.questionnaire=t,i.current.pages=e.disablePagination?void 0:Tk(t)),t&&e.defaultValue&&n&&!i.current.questionnaireResponse&&(i.current.questionnaireResponse=mk(t,n),p()),t&&!e.defaultValue&&!i.current.questionnaireResponse&&(i.current.questionnaireResponse=mk(t),p()),!i.current.questionnaire||!i.current.questionnaireResponse)return{loading:!0};function a(e,t){let n=i.current.questionnaireResponse;for(let t of e)n=n?.item?.find(e=>t.id?e.id===t.id:e.linkId===t.linkId);return t&&(n=n?.item?.find(e=>e.linkId===t.linkId)),n}function o(){i.current.activePage=(i.current.activePage??0)+1,r()}function s(){i.current.activePage=(i.current.activePage??0)-1,r()}function c(e,t){let n=a(e);n&&(n.item??=[],n.item.push(gk(t)),p())}function l(e,t){let n=a(e,t);n&&(n.answer??=[],n.answer.push({}),p())}function u(e,t,n){let r=a(e,t);r&&(r.answer=n,p())}function d(e){let t=i.current.questionnaireResponse;t&&(e?(t.extension=t.extension??[],t.extension=t.extension.filter(e=>e.url!==XO),t.extension.push({url:XO,valueSignature:e})):t.extension=t.extension?.filter(e=>e.url!==XO),p())}function f(){let e=i.current.questionnaire;if(e?.item){let t=i.current.questionnaireResponse;nk(e.item,t)}}function p(){let t=i.current.questionnaireResponse;t&&(f(),r(),e.onChange?.(t))}return{loading:!1,pagination:!!i.current.pages,questionnaire:i.current.questionnaire,questionnaireResponse:i.current.questionnaireResponse,subject:e.subject,encounter:e.encounter,activePage:i.current.activePage,pages:i.current.pages,items:Ek(i.current.questionnaire,i.current.pages,i.current.activePage),responseItems:Dk(i.current.questionnaireResponse,i.current.pages,i.current.activePage),onNextPage:o,onPrevPage:s,onAddGroup:c,onAddAnswer:l,onChangeAnswer:u,onChangeSignature:d}}function Tk(e){if(e?.item&&nC(e?.item?.[0],UO)?.valueCodeableConcept?.coding?.[0]?.code===`page`)return e.item.map((e,t)=>({linkId:e.linkId,title:e.text??`Page ${t+1}`,group:e}))}function Ek(e,t,n=0){return t&&e?.item?.[n]?[e.item[n]]:e.item??[]}function Dk(e,t,n=0){return t&&e?.item?.[n]?[e.item[n]]:e.item??[]}function Ok(e,t,n={leading:!1}){let[r,i]=(0,b.useState)(e),a=(0,b.useRef)(!1),o=(0,b.useRef)(void 0),s=(0,b.useRef)(!1),c=(0,b.useCallback)(()=>window.clearTimeout(o.current),[]);return(0,b.useEffect)(()=>{a.current&&(!s.current&&n.leading?(s.current=!0,i(e),o.current=setTimeout(()=>{s.current=!1},t)):(c(),o.current=setTimeout(()=>{s.current=!1,i(e)},t)))},[e,n.leading,t,c]),(0,b.useEffect)(()=>(a.current=!0,c),[c]),[r,c]}var kk=250;function Ak(e,t,n){return Mk(`searchOne`,e,t,n)}function jk(e,t,n){return Mk(`searchResources`,e,t,n)}function Mk(e,t,n,r){let i=Q(),[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(),d=(0,b.useMemo)(()=>({resourceType:t,query:n}),[i.fhirSearchUrl(t,n).toString()]),f=r?.enabled??!0,[p]=Ok(d,r?.debounceMs??kk,{leading:!0});return(0,b.useEffect)(()=>{if(!f)return()=>{};o(!0);let t=!0;return i[e](p.resourceType,p.query).then(e=>{t&&(o(!1),c(e),u(Sx))}).catch(e=>{t&&(o(!1),c(void 0),u(Ix(e)))}),()=>{t=!1}},[i,e,p,f]),[s,a,l]}function Nk(e){let t=e.value;return t?(0,L.jsx)(L.Fragment,{children:qC(t,e.options)}):null}var Pk=[`meta`,`implicitRules`,`contained`,`extension`,`modifierExtension`],Fk=[`language`,`text`],Ik=(0,b.createContext)({path:``,profileUrl:void 0,elements:Object.create(null),elementsByPath:Object.create(null),getExtendedProps:()=>({readonly:!1,hidden:!1}),accessPolicyResource:void 0,debugMode:!1,isDefaultContext:!0});Ik.displayName=`ElementsContext`;var Lk=[`extension`,`modifierExtension`],Rk=[`id`,...Pk].filter(e=>!Lk.includes(e));function zk(e){return Object.entries(e).filter(([e,t])=>!cC(t.type)||t.max===0||t.path.toLowerCase().endsWith(`extension.url`)&&t.fixed||Lk.includes(e)&&!cC(t.slicing?.slices)||Rk.includes(e)?!1:!(Fk.includes(e)&&t.path.split(`.`).length===2||e.includes(`.`)))}function Bk(e,t){return e.line&&e.line.length>t?e.line[t]:``}function Vk(e,t,n){let r=e.line||[];for(;r.length<=t;)r.push(``);return r[t]=n,{...e,line:lC(r)}}function Hk(e){let[t,n]=(0,b.useState)(e.defaultValue||{}),{getExtendedProps:r}=(0,b.useContext)(Ik),[i,a,o,s,c,l,u]=(0,b.useMemo)(()=>[`use`,`type`,`line1`,`line2`,`city`,`state`,`postalCode`].map(t=>r(e.path+`.`+t)),[r,e.path]);function d(r){n(e=>({...e,...r})),e.onChange&&e.onChange({...t,...r})}function f(e){d({use:e})}function p(e){d({type:e})}function m(e){d(Vk(t,0,e))}function h(e){d(Vk(t,1,e))}function g(e){d({city:e})}function _(e){d({state:e})}function v(e){d({postalCode:e})}return(0,L.jsxs)(H,{gap:`xs`,wrap:`nowrap`,grow:!0,children:[(0,L.jsx)(Tg,{disabled:e.disabled||i?.readonly,"data-testid":`address-use`,defaultValue:t.use,onChange:e=>f(e.currentTarget.value),data:[``,`home`,`work`,`temp`,`old`,`billing`]}),(0,L.jsx)(Tg,{disabled:e.disabled||a?.readonly,"data-testid":`address-type`,defaultValue:t.type,onChange:e=>p(e.currentTarget.value),data:[``,`postal`,`physical`,`both`]}),(0,L.jsx)(ab,{disabled:e.disabled||o?.readonly,placeholder:`Line 1`,defaultValue:Bk(t,0),onChange:e=>m(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||s?.readonly,placeholder:`Line 2`,defaultValue:Bk(t,1),onChange:e=>h(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||c?.readonly,placeholder:`City`,defaultValue:t.city,onChange:e=>g(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||l?.readonly,placeholder:`State`,defaultValue:t.state,onChange:e=>_(e.currentTarget.value)}),(0,L.jsx)(ab,{disabled:e.disabled||u?.readonly,placeholder:`Postal Code`,defaultValue:t.postalCode,onChange:e=>v(e.currentTarget.value)})]})}function Uk(e){let t=jO(),[n,r]=(0,b.useState)(e.defaultValue||{});function i(n){let i=n?{text:n,authorReference:t&&WS(t),time:new Date().toISOString()}:{};r(i),e.onChange&&e.onChange(i)}return(0,L.jsx)(ab,{disabled:e.disabled,name:e.name,placeholder:`Annotation text`,defaultValue:n.text,onChange:e=>i(e.currentTarget.value)})}var Wk={outline:{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},filled:{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`currentColor`,stroke:`none`}},Gk=(e,t,n,r)=>{let i=(0,b.forwardRef)(({color:n=`currentColor`,size:i=24,stroke:a=2,title:o,className:s,children:c,...l},u)=>(0,b.createElement)(`svg`,{ref:u,...Wk[e],width:i,height:i,className:[`tabler-icon`,`tabler-icon-${t}`,s].join(` `),...e===`filled`?{fill:n}:{strokeWidth:a,stroke:n},...l},[o&&(0,b.createElement)(`title`,{key:`svg-title`},o),...r.map(([e,t])=>(0,b.createElement)(e,t)),...Array.isArray(c)?c:[c]]));return i.displayName=`${n}`,i},Kk=Gk(`outline`,`adjustments-horizontal`,`AdjustmentsHorizontal`,[[`path`,{d:`M12 6a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-0`}],[`path`,{d:`M4 6l8 0`,key:`svg-1`}],[`path`,{d:`M16 6l4 0`,key:`svg-2`}],[`path`,{d:`M6 12a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-3`}],[`path`,{d:`M4 12l2 0`,key:`svg-4`}],[`path`,{d:`M10 12l10 0`,key:`svg-5`}],[`path`,{d:`M15 18a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-6`}],[`path`,{d:`M4 18l11 0`,key:`svg-7`}],[`path`,{d:`M19 18l1 0`,key:`svg-8`}]]),qk=Gk(`outline`,`alert-circle`,`AlertCircle`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0`,key:`svg-0`}],[`path`,{d:`M12 8v4`,key:`svg-1`}],[`path`,{d:`M12 16h.01`,key:`svg-2`}]]),Jk=Gk(`outline`,`arrow-down`,`ArrowDown`,[[`path`,{d:`M12 5l0 14`,key:`svg-0`}],[`path`,{d:`M18 13l-6 6`,key:`svg-1`}],[`path`,{d:`M6 13l6 6`,key:`svg-2`}]]),Yk=Gk(`outline`,`arrow-up`,`ArrowUp`,[[`path`,{d:`M12 5l0 14`,key:`svg-0`}],[`path`,{d:`M18 11l-6 -6`,key:`svg-1`}],[`path`,{d:`M6 11l6 -6`,key:`svg-2`}]]),Xk=Gk(`outline`,`bleach-off`,`BleachOff`,[[`path`,{d:`M5 19h14m1.986 -1.977a2 2 0 0 0 -.146 -.773l-7.1 -12.25a2 2 0 0 0 -3.5 0l-.815 1.405m-1.488 2.568l-4.797 8.277a2 2 0 0 0 1.75 2.75`,key:`svg-0`}],[`path`,{d:`M3 3l18 18`,key:`svg-1`}]]),Zk=Gk(`outline`,`bleach`,`Bleach`,[[`path`,{d:`M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75`,key:`svg-0`}]]),Qk=Gk(`outline`,`bookmark`,`Bookmark`,[[`path`,{d:`M18 7v14l-6 -4l-6 4v-14a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4`,key:`svg-0`}]]),$k=Gk(`outline`,`box-multiple`,`BoxMultiple`,[[`path`,{d:`M7 5a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2l0 -10`,key:`svg-0`}],[`path`,{d:`M17 17v2a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-10a2 2 0 0 1 2 -2h2`,key:`svg-1`}]]),eA=Gk(`outline`,`brackets-contain`,`BracketsContain`,[[`path`,{d:`M7 4h-4v16h4`,key:`svg-0`}],[`path`,{d:`M17 4h4v16h-4`,key:`svg-1`}],[`path`,{d:`M8 16h.01`,key:`svg-2`}],[`path`,{d:`M12 16h.01`,key:`svg-3`}],[`path`,{d:`M16 16h.01`,key:`svg-4`}]]),tA=Gk(`outline`,`brand-asana`,`BrandAsana`,[[`path`,{d:`M9 7a3 3 0 1 0 6 0a3 3 0 1 0 -6 0`,key:`svg-0`}],[`path`,{d:`M14 16a3 3 0 1 0 6 0a3 3 0 1 0 -6 0`,key:`svg-1`}],[`path`,{d:`M4 16a3 3 0 1 0 6 0a3 3 0 1 0 -6 0`,key:`svg-2`}]]),nA=Gk(`outline`,`briefcase`,`Briefcase`,[[`path`,{d:`M3 9a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v9a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2l0 -9`,key:`svg-0`}],[`path`,{d:`M8 7v-2a2 2 0 0 1 2 -2h4a2 2 0 0 1 2 2v2`,key:`svg-1`}],[`path`,{d:`M12 12l0 .01`,key:`svg-2`}],[`path`,{d:`M3 13a20 20 0 0 0 18 0`,key:`svg-3`}]]),rA=Gk(`outline`,`bucket-off`,`BucketOff`,[[`path`,{d:`M5.029 5.036c-.655 .58 -1.029 1.25 -1.029 1.964c0 2.033 3.033 3.712 6.96 3.967m3.788 -.21c3.064 -.559 5.252 -2.029 5.252 -3.757c0 -2.21 -3.582 -4 -8 -4c-1.605 0 -3.1 .236 -4.352 .643`,key:`svg-0`}],[`path`,{d:`M4 7c0 .664 .088 1.324 .263 1.965l2.737 10.035c.5 1.5 2.239 2 5 2s4.5 -.5 5 -2c.1 -.3 .252 -.812 .457 -1.535m.862 -3.146c.262 -.975 .735 -2.76 1.418 -5.354a7.45 7.45 0 0 0 .263 -1.965`,key:`svg-1`}],[`path`,{d:`M3 3l18 18`,key:`svg-2`}]]),iA=Gk(`outline`,`bucket`,`Bucket`,[[`path`,{d:`M4 7a8 4 0 1 0 16 0a8 4 0 1 0 -16 0`,key:`svg-0`}],[`path`,{d:`M4 7c0 .664 .088 1.324 .263 1.965l2.737 10.035c.5 1.5 2.239 2 5 2s4.5 -.5 5 -2c.333 -1 1.246 -4.345 2.737 -10.035a7.45 7.45 0 0 0 .263 -1.965`,key:`svg-1`}]]),aA=Gk(`outline`,`building`,`Building`,[[`path`,{d:`M3 21l18 0`,key:`svg-0`}],[`path`,{d:`M9 8l1 0`,key:`svg-1`}],[`path`,{d:`M9 12l1 0`,key:`svg-2`}],[`path`,{d:`M9 16l1 0`,key:`svg-3`}],[`path`,{d:`M14 8l1 0`,key:`svg-4`}],[`path`,{d:`M14 12l1 0`,key:`svg-5`}],[`path`,{d:`M14 16l1 0`,key:`svg-6`}],[`path`,{d:`M5 21v-16a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v16`,key:`svg-7`}]]),oA=Gk(`outline`,`calendar`,`Calendar`,[[`path`,{d:`M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12`,key:`svg-0`}],[`path`,{d:`M16 3v4`,key:`svg-1`}],[`path`,{d:`M8 3v4`,key:`svg-2`}],[`path`,{d:`M4 11h16`,key:`svg-3`}],[`path`,{d:`M11 15h1`,key:`svg-4`}],[`path`,{d:`M12 15v3`,key:`svg-5`}]]),sA=Gk(`outline`,`check`,`Check`,[[`path`,{d:`M5 12l5 5l10 -10`,key:`svg-0`}]]),cA=Gk(`outline`,`checkbox`,`Checkbox`,[[`path`,{d:`M9 11l3 3l8 -8`,key:`svg-0`}],[`path`,{d:`M20 12v6a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h9`,key:`svg-1`}]]),lA=Gk(`outline`,`chevron-down`,`ChevronDown`,[[`path`,{d:`M6 9l6 6l6 -6`,key:`svg-0`}]]),uA=Gk(`outline`,`circle-check`,`CircleCheck`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0`,key:`svg-0`}],[`path`,{d:`M9 12l2 2l4 -4`,key:`svg-1`}]]),dA=Gk(`outline`,`circle-minus`,`CircleMinus`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0`,key:`svg-0`}],[`path`,{d:`M9 12l6 0`,key:`svg-1`}]]),fA=Gk(`outline`,`circle-plus`,`CirclePlus`,[[`path`,{d:`M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0`,key:`svg-0`}],[`path`,{d:`M9 12h6`,key:`svg-1`}],[`path`,{d:`M12 9v6`,key:`svg-2`}]]),pA=Gk(`outline`,`cloud-upload`,`CloudUpload`,[[`path`,{d:`M7 18a4.6 4.4 0 0 1 0 -9a5 4.5 0 0 1 11 2h1a3.5 3.5 0 0 1 0 7h-1`,key:`svg-0`}],[`path`,{d:`M9 15l3 -3l3 3`,key:`svg-1`}],[`path`,{d:`M12 12l0 9`,key:`svg-2`}]]),mA=Gk(`outline`,`columns`,`Columns`,[[`path`,{d:`M4 6l5.5 0`,key:`svg-0`}],[`path`,{d:`M4 10l5.5 0`,key:`svg-1`}],[`path`,{d:`M4 14l5.5 0`,key:`svg-2`}],[`path`,{d:`M4 18l5.5 0`,key:`svg-3`}],[`path`,{d:`M14.5 6l5.5 0`,key:`svg-4`}],[`path`,{d:`M14.5 10l5.5 0`,key:`svg-5`}],[`path`,{d:`M14.5 14l5.5 0`,key:`svg-6`}],[`path`,{d:`M14.5 18l5.5 0`,key:`svg-7`}]]),hA=Gk(`outline`,`copy`,`Copy`,[[`path`,{d:`M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666`,key:`svg-0`}],[`path`,{d:`M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1`,key:`svg-1`}]]),gA=Gk(`outline`,`currency-dollar`,`CurrencyDollar`,[[`path`,{d:`M16.7 8a3 3 0 0 0 -2.7 -2h-4a3 3 0 0 0 0 6h4a3 3 0 0 1 0 6h-4a3 3 0 0 1 -2.7 -2`,key:`svg-0`}],[`path`,{d:`M12 3v3m0 12v3`,key:`svg-1`}]]),_A=Gk(`outline`,`database`,`Database`,[[`path`,{d:`M4 6a8 3 0 1 0 16 0a8 3 0 1 0 -16 0`,key:`svg-0`}],[`path`,{d:`M4 6v6a8 3 0 0 0 16 0v-6`,key:`svg-1`}],[`path`,{d:`M4 12v6a8 3 0 0 0 16 0v-6`,key:`svg-2`}]]),vA=Gk(`outline`,`device-floppy`,`DeviceFloppy`,[[`path`,{d:`M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2`,key:`svg-0`}],[`path`,{d:`M10 14a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-1`}],[`path`,{d:`M14 4l0 4l-6 0l0 -4`,key:`svg-2`}]]),yA=Gk(`outline`,`dots`,`Dots`,[[`path`,{d:`M4 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-0`}],[`path`,{d:`M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-1`}],[`path`,{d:`M18 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-2`}]]),bA=Gk(`outline`,`edit`,`Edit`,[[`path`,{d:`M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1`,key:`svg-0`}],[`path`,{d:`M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415`,key:`svg-1`}],[`path`,{d:`M16 5l3 3`,key:`svg-2`}]]),xA=Gk(`outline`,`equal-not`,`EqualNot`,[[`path`,{d:`M5 10h14`,key:`svg-0`}],[`path`,{d:`M5 14h14`,key:`svg-1`}],[`path`,{d:`M5 19l14 -14`,key:`svg-2`}]]),SA=Gk(`outline`,`equal`,`Equal`,[[`path`,{d:`M5 10h14`,key:`svg-0`}],[`path`,{d:`M5 14h14`,key:`svg-1`}]]),CA=Gk(`outline`,`eye-off`,`EyeOff`,[[`path`,{d:`M10.585 10.587a2 2 0 0 0 2.829 2.828`,key:`svg-0`}],[`path`,{d:`M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87`,key:`svg-1`}],[`path`,{d:`M3 3l18 18`,key:`svg-2`}]]),wA=Gk(`outline`,`eye`,`Eye`,[[`path`,{d:`M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0`,key:`svg-0`}],[`path`,{d:`M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6`,key:`svg-1`}]]),TA=Gk(`outline`,`file-alert`,`FileAlert`,[[`path`,{d:`M14 3v4a1 1 0 0 0 1 1h4`,key:`svg-0`}],[`path`,{d:`M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2`,key:`svg-1`}],[`path`,{d:`M12 17l.01 0`,key:`svg-2`}],[`path`,{d:`M12 11l0 3`,key:`svg-3`}]]),EA=Gk(`outline`,`file-plus`,`FilePlus`,[[`path`,{d:`M14 3v4a1 1 0 0 0 1 1h4`,key:`svg-0`}],[`path`,{d:`M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2`,key:`svg-1`}],[`path`,{d:`M12 11l0 6`,key:`svg-2`}],[`path`,{d:`M9 14l6 0`,key:`svg-3`}]]),DA=Gk(`outline`,`filter`,`Filter`,[[`path`,{d:`M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227`,key:`svg-0`}]]),OA=Gk(`outline`,`folder`,`Folder`,[[`path`,{d:`M5 4h4l3 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-11a2 2 0 0 1 2 -2`,key:`svg-0`}]]),kA=Gk(`outline`,`forms`,`Forms`,[[`path`,{d:`M12 3a3 3 0 0 0 -3 3v12a3 3 0 0 0 3 3`,key:`svg-0`}],[`path`,{d:`M6 3a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3`,key:`svg-1`}],[`path`,{d:`M13 7h7a1 1 0 0 1 1 1v8a1 1 0 0 1 -1 1h-7`,key:`svg-2`}],[`path`,{d:`M5 7h-1a1 1 0 0 0 -1 1v8a1 1 0 0 0 1 1h1`,key:`svg-3`}],[`path`,{d:`M17 12h.01`,key:`svg-4`}],[`path`,{d:`M13 12h.01`,key:`svg-5`}]]),AA=Gk(`outline`,`id`,`Id`,[[`path`,{d:`M3 7a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v10a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3l0 -10`,key:`svg-0`}],[`path`,{d:`M7 10a2 2 0 1 0 4 0a2 2 0 1 0 -4 0`,key:`svg-1`}],[`path`,{d:`M15 8l2 0`,key:`svg-2`}],[`path`,{d:`M15 12l2 0`,key:`svg-3`}],[`path`,{d:`M7 16l10 0`,key:`svg-4`}]]),jA=Gk(`outline`,`layout-sidebar`,`LayoutSidebar`,[[`path`,{d:`M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12`,key:`svg-0`}],[`path`,{d:`M9 4l0 16`,key:`svg-1`}]]),MA=Gk(`outline`,`list-details`,`ListDetails`,[[`path`,{d:`M13 5h8`,key:`svg-0`}],[`path`,{d:`M13 9h5`,key:`svg-1`}],[`path`,{d:`M13 15h8`,key:`svg-2`}],[`path`,{d:`M13 19h5`,key:`svg-3`}],[`path`,{d:`M3 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4`,key:`svg-4`}],[`path`,{d:`M3 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4`,key:`svg-5`}]]),NA=Gk(`outline`,`lock-access`,`LockAccess`,[[`path`,{d:`M4 8v-2a2 2 0 0 1 2 -2h2`,key:`svg-0`}],[`path`,{d:`M4 16v2a2 2 0 0 0 2 2h2`,key:`svg-1`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v2`,key:`svg-2`}],[`path`,{d:`M16 20h2a2 2 0 0 0 2 -2v-2`,key:`svg-3`}],[`path`,{d:`M8 12a1 1 0 0 1 1 -1h6a1 1 0 0 1 1 1v3a1 1 0 0 1 -1 1h-6a1 1 0 0 1 -1 -1l0 -3`,key:`svg-4`}],[`path`,{d:`M10 11v-2a2 2 0 1 1 4 0v2`,key:`svg-5`}]]),PA=Gk(`outline`,`lock`,`Lock`,[[`path`,{d:`M5 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6`,key:`svg-0`}],[`path`,{d:`M11 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0`,key:`svg-1`}],[`path`,{d:`M8 11v-4a4 4 0 1 1 8 0v4`,key:`svg-2`}]]),FA=Gk(`outline`,`logout`,`Logout`,[[`path`,{d:`M14 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2`,key:`svg-0`}],[`path`,{d:`M9 12h12l-3 -3`,key:`svg-1`}],[`path`,{d:`M18 15l3 -3`,key:`svg-2`}]]),IA=Gk(`outline`,`math-greater`,`MathGreater`,[[`path`,{d:`M5 18l14 -6l-14 -6`,key:`svg-0`}]]),LA=Gk(`outline`,`math-lower`,`MathLower`,[[`path`,{d:`M19 18l-14 -6l14 -6`,key:`svg-0`}]]),RA=Gk(`outline`,`message`,`Message`,[[`path`,{d:`M8 9h8`,key:`svg-0`}],[`path`,{d:`M8 13h6`,key:`svg-1`}],[`path`,{d:`M18 4a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-5l-5 3v-3h-2a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12`,key:`svg-2`}]]),zA=Gk(`outline`,`microscope`,`Microscope`,[[`path`,{d:`M5 21h14`,key:`svg-0`}],[`path`,{d:`M6 18h2`,key:`svg-1`}],[`path`,{d:`M7 18v3`,key:`svg-2`}],[`path`,{d:`M9 11l3 3l6 -6l-3 -3l-6 6`,key:`svg-3`}],[`path`,{d:`M10.5 12.5l-1.5 1.5`,key:`svg-4`}],[`path`,{d:`M17 3l3 3`,key:`svg-5`}],[`path`,{d:`M12 21a6 6 0 0 0 3.715 -10.712`,key:`svg-6`}]]),BA=Gk(`outline`,`minus`,`Minus`,[[`path`,{d:`M5 12l14 0`,key:`svg-0`}]]),VA=Gk(`outline`,`packages`,`Packages`,[[`path`,{d:`M7 16.5l-5 -3l5 -3l5 3v5.5l-5 3l0 -5.5`,key:`svg-0`}],[`path`,{d:`M2 13.5v5.5l5 3`,key:`svg-1`}],[`path`,{d:`M7 16.545l5 -3.03`,key:`svg-2`}],[`path`,{d:`M17 16.5l-5 -3l5 -3l5 3v5.5l-5 3l0 -5.5`,key:`svg-3`}],[`path`,{d:`M12 19l5 3`,key:`svg-4`}],[`path`,{d:`M17 16.5l5 -3`,key:`svg-5`}],[`path`,{d:`M12 13.5v-5.5l-5 -3l5 -3l5 3v5.5`,key:`svg-6`}],[`path`,{d:`M7 5.03v5.455`,key:`svg-7`}],[`path`,{d:`M12 8l5 -3`,key:`svg-8`}]]),HA=Gk(`outline`,`pencil`,`Pencil`,[[`path`,{d:`M4 20h4l10.5 -10.5a2.828 2.828 0 1 0 -4 -4l-10.5 10.5v4`,key:`svg-0`}],[`path`,{d:`M13.5 6.5l4 4`,key:`svg-1`}]]),UA=Gk(`outline`,`pin`,`Pin`,[[`path`,{d:`M15 4.5l-4 4l-4 1.5l-1.5 1.5l7 7l1.5 -1.5l1.5 -4l4 -4`,key:`svg-0`}],[`path`,{d:`M9 15l-4.5 4.5`,key:`svg-1`}],[`path`,{d:`M14.5 4l5.5 5.5`,key:`svg-2`}]]),WA=Gk(`outline`,`pinned-off`,`PinnedOff`,[[`path`,{d:`M3 3l18 18`,key:`svg-0`}],[`path`,{d:`M15 4.5l-3.249 3.249m-2.57 1.433l-2.181 .818l-1.5 1.5l7 7l1.5 -1.5l.82 -2.186m1.43 -2.563l3.25 -3.251`,key:`svg-1`}],[`path`,{d:`M9 15l-4.5 4.5`,key:`svg-2`}],[`path`,{d:`M14.5 4l5.5 5.5`,key:`svg-3`}]]),GA=Gk(`outline`,`player-play`,`PlayerPlay`,[[`path`,{d:`M7 4v16l13 -8l-13 -8`,key:`svg-0`}]]),KA=Gk(`outline`,`plus`,`Plus`,[[`path`,{d:`M12 5l0 14`,key:`svg-0`}],[`path`,{d:`M5 12l14 0`,key:`svg-1`}]]),qA=Gk(`outline`,`receipt`,`Receipt`,[[`path`,{d:`M5 21v-16a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v16l-3 -2l-2 2l-2 -2l-2 2l-2 -2l-3 2m4 -14h6m-6 4h6m-2 4h2`,key:`svg-0`}]]),JA=Gk(`outline`,`refresh`,`Refresh`,[[`path`,{d:`M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4`,key:`svg-0`}],[`path`,{d:`M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4`,key:`svg-1`}]]),YA=Gk(`outline`,`repeat`,`Repeat`,[[`path`,{d:`M4 12v-3a3 3 0 0 1 3 -3h13m-3 -3l3 3l-3 3`,key:`svg-0`}],[`path`,{d:`M20 12v3a3 3 0 0 1 -3 3h-13m3 3l-3 -3l3 -3`,key:`svg-1`}]]),XA=Gk(`outline`,`report-medical`,`ReportMedical`,[[`path`,{d:`M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2`,key:`svg-0`}],[`path`,{d:`M9 5a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2`,key:`svg-1`}],[`path`,{d:`M10 14l4 0`,key:`svg-2`}],[`path`,{d:`M12 12l0 4`,key:`svg-3`}]]),ZA=Gk(`outline`,`router`,`Router`,[[`path`,{d:`M3 15a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v4a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2l0 -4`,key:`svg-0`}],[`path`,{d:`M17 17l0 .01`,key:`svg-1`}],[`path`,{d:`M13 17l0 .01`,key:`svg-2`}],[`path`,{d:`M15 13l0 -2`,key:`svg-3`}],[`path`,{d:`M11.75 8.75a4 4 0 0 1 6.5 0`,key:`svg-4`}],[`path`,{d:`M8.5 6.5a8 8 0 0 1 13 0`,key:`svg-5`}]]),QA=Gk(`outline`,`search`,`Search`,[[`path`,{d:`M3 10a7 7 0 1 0 14 0a7 7 0 1 0 -14 0`,key:`svg-0`}],[`path`,{d:`M21 21l-6 -6`,key:`svg-1`}]]),$A=Gk(`outline`,`settings`,`Settings`,[[`path`,{d:`M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065`,key:`svg-0`}],[`path`,{d:`M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0`,key:`svg-1`}]]),ej=Gk(`outline`,`sort-ascending`,`SortAscending`,[[`path`,{d:`M4 6l7 0`,key:`svg-0`}],[`path`,{d:`M4 12l7 0`,key:`svg-1`}],[`path`,{d:`M4 18l9 0`,key:`svg-2`}],[`path`,{d:`M15 9l3 -3l3 3`,key:`svg-3`}],[`path`,{d:`M18 6l0 12`,key:`svg-4`}]]),tj=Gk(`outline`,`sort-descending`,`SortDescending`,[[`path`,{d:`M4 6l9 0`,key:`svg-0`}],[`path`,{d:`M4 12l7 0`,key:`svg-1`}],[`path`,{d:`M4 18l7 0`,key:`svg-2`}],[`path`,{d:`M15 15l3 3l3 -3`,key:`svg-3`}],[`path`,{d:`M18 6l0 12`,key:`svg-4`}]]),nj=Gk(`outline`,`square`,`Square`,[[`path`,{d:`M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14`,key:`svg-0`}]]),rj=Gk(`outline`,`star`,`Star`,[[`path`,{d:`M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873l-6.158 -3.245`,key:`svg-0`}]]),ij=Gk(`outline`,`switch-horizontal`,`SwitchHorizontal`,[[`path`,{d:`M16 3l4 4l-4 4`,key:`svg-0`}],[`path`,{d:`M10 7l10 0`,key:`svg-1`}],[`path`,{d:`M8 13l-4 4l4 4`,key:`svg-2`}],[`path`,{d:`M4 17l9 0`,key:`svg-3`}]]),aj=Gk(`outline`,`table-export`,`TableExport`,[[`path`,{d:`M12.5 21h-7.5a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v7.5`,key:`svg-0`}],[`path`,{d:`M3 10h18`,key:`svg-1`}],[`path`,{d:`M10 3v18`,key:`svg-2`}],[`path`,{d:`M16 19h6`,key:`svg-3`}],[`path`,{d:`M19 16l3 3l-3 3`,key:`svg-4`}]]),oj=Gk(`outline`,`text-recognition`,`TextRecognition`,[[`path`,{d:`M4 8v-2a2 2 0 0 1 2 -2h2`,key:`svg-0`}],[`path`,{d:`M4 16v2a2 2 0 0 0 2 2h2`,key:`svg-1`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v2`,key:`svg-2`}],[`path`,{d:`M16 20h2a2 2 0 0 0 2 -2v-2`,key:`svg-3`}],[`path`,{d:`M12 16v-7`,key:`svg-4`}],[`path`,{d:`M9 9h6`,key:`svg-5`}]]),sj=Gk(`outline`,`trash`,`Trash`,[[`path`,{d:`M4 7l16 0`,key:`svg-0`}],[`path`,{d:`M10 11l0 6`,key:`svg-1`}],[`path`,{d:`M14 11l0 6`,key:`svg-2`}],[`path`,{d:`M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12`,key:`svg-3`}],[`path`,{d:`M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3`,key:`svg-4`}]]),cj=Gk(`outline`,`upload`,`Upload`,[[`path`,{d:`M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2`,key:`svg-0`}],[`path`,{d:`M7 9l5 -5l5 5`,key:`svg-1`}],[`path`,{d:`M12 4l0 12`,key:`svg-2`}]]),lj=Gk(`outline`,`user-plus`,`UserPlus`,[[`path`,{d:`M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0`,key:`svg-0`}],[`path`,{d:`M16 19h6`,key:`svg-1`}],[`path`,{d:`M19 16v6`,key:`svg-2`}],[`path`,{d:`M6 21v-2a4 4 0 0 1 4 -4h4`,key:`svg-3`}]]),uj=Gk(`outline`,`webhook`,`Webhook`,[[`path`,{d:`M4.876 13.61a4 4 0 1 0 6.124 3.39h6`,key:`svg-0`}],[`path`,{d:`M15.066 20.502a4 4 0 1 0 1.934 -7.502c-.706 0 -1.424 .179 -2 .5l-3 -5.5`,key:`svg-1`}],[`path`,{d:`M16 8a4 4 0 1 0 -8 0c0 1.506 .77 2.818 2 3.5l-3 5.5`,key:`svg-2`}]]),dj=Gk(`outline`,`x`,`X`,[[`path`,{d:`M18 6l-12 12`,key:`svg-0`}],[`path`,{d:`M6 6l12 12`,key:`svg-1`}]]),fj=Gk(`filled`,`circle-filled`,`CircleFilled`,[[`path`,{d:`M7 3.34a10 10 0 1 1 -4.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 4.995 -8.336z`,key:`svg-0`}]]),pj=class extends b.Component{state;constructor(e){super(e),this.state={lastLocation:SE.getLocation()}}static getDerivedStateFromError(e){return{error:e,lastLocation:SE.getLocation()}}componentDidUpdate(e,t){SE.getLocation()!==this.state.lastLocation&&this.setState({lastLocation:SE.getLocation(),error:void 0})}shouldComponentUpdate(e,t){return!!(this.props.children!==e.children||t.error&&!this.state.error||this.state.lastLocation!==SE.getLocation())}componentDidCatch(e,t){console.error(`Uncaught error:`,e,t)}render(){return this.state.error?(0,L.jsx)(Ed,{icon:(0,L.jsx)(qk,{size:16}),title:`Something went wrong`,color:`red`,children:Lx(this.state.error)}):this.props.children}};function mj(){return(0,L.jsx)(Gp,{style:{width:`100%`,height:`100vh`},children:(0,L.jsx)(su,{})})}var hj={main:`_main_6f7o5_1`};function gj(e){e.preventDefault(),e.stopPropagation()}function _j(e){return e.button===1||e.ctrlKey||e.metaKey}function vj(e){if(yj(e))return!0;if(e instanceof HTMLTableCellElement){let t=e.children;if(t.length===1&&yj(t[0]))return!0}return!1}function yj(e){return e instanceof HTMLInputElement&&e.type===`checkbox`}async function bj(e,t){return new Promise((n,r)=>{let i=new MessageChannel;i.port1.onmessage=({data:e})=>{i.port1.close(),e.error?r(e.error):n(e.result)},e.contentWindow?.postMessage(t,new URL(e.src).origin,[i.port2])})}function xj(e,t){let n=new Blob([e],{type:IE.JSON}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`${t??new Date().toISOString().replaceAll(/\D/g,``)}.json`,document.body.appendChild(i),i.click(),URL.revokeObjectURL(r)}function Sj(e){let t=AO(),{to:n,suffix:r,label:i,onClick:a,children:o,...s}=e,c=Cj(n);return r&&(c+=`/`+r),(0,L.jsx)(Nd,{href:c,"aria-label":i,onAuxClick:e=>{e.stopPropagation()},onClick:e=>{e.stopPropagation(),a?(e.preventDefault(),a(e)):n&&(_j(e)||(e.preventDefault(),t(c)))},...s,children:o})}function Cj(e){if(e){if(typeof e==`string`)return wj(e);if(Dw(e))return Tj(e);if(Ow(e))return Ej(e)}return`#`}function wj(e){return e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`/`)?e:`/`+e}function Tj(e){return`/${e.resourceType}/${e.id}`}function Ej(e){return`/${e.reference}`}function Dj(e){let t=e.split(` `).filter(Boolean);return t.length>1?t[0][0]+t.at(-1)?.at(0):t.length===1?t[0][0]:``}function Oj(e){let t=BO(e.value),n=t?YS(t):e.alt??``,r=Dj(n),i=IO((t&&QS(t))??e.src??void 0),a=e.radius??`xl`,o={...e,value:void 0,link:void 0};return e.link?(0,L.jsx)(Sj,{to:t,children:(0,L.jsx)(Op,{src:i,alt:n,radius:a,...o,children:r})}):(0,L.jsx)(Op,{src:i,alt:n,radius:a,...o,children:r})}var kj={logoButton:`_logoButton_799cf_1`,user:`_user_799cf_11`,userName:`_userName_799cf_25`};function Aj(e){let t=e.value;return t?(0,L.jsx)(L.Fragment,{children:JC(t,e.options)}):null}function jj(){return`Medplum`}function Mj(e){let t=kO(),{medplum:n,profile:r,navigate:i}=t,a=n.getLogins(),{colorScheme:o,setColorScheme:s}=si(),[c]=(0,b.useState)(localStorage.appShellLayoutVersion??`v1`),l=e.showLayoutVersionToggle??!0;function u(e){localStorage.appShellLayoutVersion=e,SE.reload()}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(K,{align:`center`,p:`xl`,children:[(0,L.jsx)(Oj,{size:`xl`,radius:100,value:t.profile}),(0,L.jsx)(Aj,{value:t.profile?.name?.[0]}),(0,L.jsx)(U,{c:`dimmed`,size:`xs`,children:n.getActiveLogin()?.project.display})]}),a.length>1&&(0,L.jsx)(G.Divider,{}),a.map(e=>e.profile.reference!==GS(t.profile)&&(0,L.jsx)(G.Item,{onClick:()=>{n.setActiveLogin(e).then(()=>SE.reload()).catch(console.log)},children:(0,L.jsxs)(H,{children:[(0,L.jsx)(Op,{radius:`xl`}),(0,L.jsxs)(`div`,{style:{flex:1},children:[(0,L.jsx)(U,{size:`sm`,fw:500,children:e.profile.display}),(0,L.jsx)(U,{c:`dimmed`,size:`xs`,children:e.project.display})]})]})},e.profile.reference)),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ij,{size:14,stroke:1.5}),onClick:()=>i(`/signin`),children:`Switch to another project`}),(0,L.jsx)(G.Divider,{}),(0,L.jsxs)(H,{justify:`center`,children:[(0,L.jsx)(ey,{size:`xs`,value:o,onChange:e=>s(e),data:[{label:`Light`,value:`light`},{label:`Dark`,value:`dark`},{label:`Auto`,value:`auto`}]}),l&&(0,L.jsx)(ey,{size:`xs`,value:c,onChange:e=>u(e),data:[{label:`v1`,value:`v1`},{label:`v2`,value:`v2`}]})]}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)($A,{size:14,stroke:1.5}),onClick:()=>i(`/${GS(r)}`),children:`Account settings`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(FA,{size:14,stroke:1.5}),onClick:async()=>{await n.signOut(),i(`/signin`)},children:`Sign out`}),(0,L.jsxs)(U,{size:`xs`,c:`dimmed`,my:`sm`,ta:`center`,children:[jj(),` `,e.version]})]})}var Nj={selectedItems:`selected-items`,options:`options`};function Pj(e){let t=Ff({onDropdownClose:()=>t.resetSelectedOption(),onDropdownOpen:()=>t.updateSelectedOptionIndex(`active`)}),{name:n,label:r,description:i,error:a,defaultValue:o,toOption:s,loadOptions:c,itemComponent:l,pillComponent:u,emptyComponent:d,onChange:f,onCreate:p,creatable:m,clearable:h,required:g,placeholder:_,leftSection:v,maxValues:y,optionsDropdownMaxHeight:x=320,minInputLength:S=0,...C}=e,w=C.disabled,T=Fj(o),[E,D]=(0,b.useState)(``),[O,k]=(0,b.useState)(),[A,j]=(0,b.useState)(),[M,N]=(0,b.useState)(),[P,F]=(0,b.useState)(T.map(s)),[ee,te]=(0,b.useState)([]),ne=l??Ij,re=u??Lj,ie=d??Rj,ae=(0,b.useRef)(E),oe=(0,b.useRef)(void 0),se=(0,b.useRef)(void 0),ce=(0,b.useRef)(O),le=(0,b.useRef)(A),ue=(0,b.useRef)(M);(0,b.useLayoutEffect)(()=>{ae.current=E,ce.current=O,le.current=A,ue.current=M});let de=(0,b.useCallback)(()=>{if(k(void 0),ae.current===se.current&&c===oe.current||(ae.current?.length??0)<S)return;se.current=ae.current,oe.current=c;let e=new AbortController;j(e),c(ae.current??``,e.signal).then(n=>{e.signal.aborted||(te(n.map(s)),ue.current?(n.length>0&&f(n.slice(0,1)),N(!1)):n.length>0&&t.openDropdown())}).catch(t=>{e.signal.aborted||t.message.includes(`aborted`)||Y({color:`red`,message:Lx(t)})}).finally(()=>{e.signal.aborted||j(void 0)})},[t,c,f,s,S]),fe=(0,b.useCallback)(e=>{(ee&&ee.length>0||m)&&t.openDropdown(),t.updateSelectedOptionIndex(),D(e.currentTarget.value),le.current&&(le.current.abort(),j(void 0)),ce.current!==void 0&&window.clearTimeout(ce.current),k(window.setTimeout(()=>de(),100))},[t,ee,m,de]),pe=(0,b.useCallback)(e=>{let t=P.some(t=>t.value===e),n=t?P.filter(t=>t.value!==e):[...P],r=ee?.find(t=>t.value===e);if(!r&&m!==!1&&p&&(r=s(p(e))),r){if(y===0){f([r.resource]),P.length>0&&F([]);return}t||n.push(r)}if(y!==void 0)for(;n.length>y;)n.shift();f(n.map(e=>e.resource)),F(n)},[m,ee,P,y,f,p,s]),me=(0,b.useMemo)(()=>{if(!w)return e=>{w||(y===1&&(D(``),te([]),t.closeDropdown()),se.current=void 0,e===`$create`?(D(``),pe(E)):pe(e))}},[pe,t,w,y,E]),he=(0,b.useCallback)(e=>{let t=P.filter(t=>t.value!==e.value);f(t.map(e=>e.resource)),F(t)},[P,f]),ge=(0,b.useCallback)(e=>{e.key===`Enter`?(O||A)&&N(!0):e.key===`Backspace`&&E.length===0&&(gj(e),he(P[P.length-1]))},[A,he,E.length,P,O]);(0,b.useEffect)(()=>()=>{le.current&&le.current.abort()},[]);let _e=!w&&h&&P.length>0&&(0,L.jsx)(Rf.ClearButton,{title:`Clear all`,size:`sm`,onClear:()=>{D(``),F([]),f([]),t.closeDropdown()}}),ve=m&&E.trim().length>0,ye=ee.length>0||ve;return(0,L.jsxs)(Rf,{store:t,onOptionSubmit:me,withinPortal:!0,shadow:`xl`,...C,children:[(0,L.jsx)(Rf.DropdownTarget,{children:(0,L.jsx)(_g,{label:r,description:i,error:a,className:e.className,leftSection:v,rightSection:A?(0,L.jsx)(su,{size:16}):_e,required:g,disabled:w,children:(0,L.jsxs)(fg.Group,{"data-testid":Nj.selectedItems,children:[P.map(e=>(0,L.jsx)(re,{item:e,disabled:w,onRemove:()=>he(e)},e.value)),!w&&(y===void 0||y===0||P.length<y)&&(0,L.jsx)(Rf.EventsTarget,{children:(0,L.jsx)(_g.Field,{role:`searchbox`,name:n,value:E,placeholder:_,onFocus:fe,onBlur:()=>{t.closeDropdown(),D(``)},onKeyDown:ge,onChange:fe})})]})})}),(0,L.jsx)(Rf.Dropdown,{hidden:!ye,"data-testid":Nj.options,children:(0,L.jsx)(Rf.Options,{children:(0,L.jsxs)(ul,{type:`scroll`,mah:x,children:[ee.map(e=>{let t=P.some(t=>t.value===e.value);return(0,L.jsx)(Rf.Option,{value:e.value,active:t,children:(0,L.jsx)(ne,{...e,active:t})},e.value)}),ve&&(0,L.jsxs)(Rf.Option,{value:`$create`,children:[`+ Create `,E]}),!m&&E.trim().length>0&&ee.length===0&&(0,L.jsx)(ie,{search:E})]})})})]})}function Fj(e){return e?Array.isArray(e)?e:[e]:[]}function Ij(e){return(0,L.jsxs)(H,{gap:`xs`,children:[e.active&&(0,L.jsx)(sA,{size:12}),(0,L.jsx)(`span`,{children:e.label})]})}function Lj({item:e,disabled:t,onRemove:n}){return(0,L.jsx)(fg,{withRemoveButton:!t,onRemove:n,children:e.label})}function Rj(){return(0,L.jsx)(Rf.Empty,{children:`Nothing found`})}var zj={searchInput:`_searchInput_dick8_1`};function Bj(e){return{value:e.id,label:YS(e),resource:e}}function Vj(e){let t=AO(),n=Q(),r=(0,b.useCallback)(async(e,t)=>{let r=Uj(e),i={signal:t};return Wj(await n.graphql(r,void 0,void 0,i),e)},[n]),i=(0,b.useCallback)(e=>{e.length>0&&t(`/${GS(e[0])}`)},[t]);return(0,L.jsx)(Pj,{size:`sm`,radius:`md`,className:zj.searchInput,leftSection:(0,L.jsx)(QA,{size:16}),placeholder:`Search`,itemComponent:Hj,toOption:Bj,onChange:i,loadOptions:r,maxValues:0,clearable:!1},`${e.pathname}?${e.searchParams}`)}var Hj=(0,b.forwardRef)(({resource:e,active:t,...n},r)=>{let i;return e.resourceType===`Patient`?i=e.birthDate:e.resourceType===`ServiceRequest`&&(i=e.subject?.display),(0,L.jsx)(`div`,{ref:r,...n,children:(0,L.jsxs)(H,{wrap:`nowrap`,children:[(0,L.jsx)(Oj,{value:e}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{children:YS(e)}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:i})]})]})})});function Uj(e){let t=JSON.stringify(e);return _C(e)?`{
|
|
97
97
|
Patients1: PatientList(_id: ${t}, _count: 1) {
|
|
98
98
|
resourceType
|
|
99
99
|
id
|
|
@@ -156,7 +156,7 @@ ${o?`${s(`light`)}{${o}}`:``}`}function Er({color:e,theme:t,autoContrast:n}){ret
|
|
|
156
156
|
display
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
|
-
}`.replaceAll(/\s+/g,` `)}function Hj(e,t){let n=[];return e.data.Patients1&&n.push(...e.data.Patients1),e.data.Patients2&&n.push(...e.data.Patients2),e.data.ServiceRequestList&&n.push(...e.data.ServiceRequestList),Wj(Uj(n),t).slice(0,5)}function Uj(e){let t=new Set,n=[];for(let r of e)t.has(r.id)||(t.add(r.id),n.push(r));return n}function Wj(e,t){return e.sort((e,n)=>Gj(n,t)-Gj(e,t))}function Gj(e,t){let n=0;if(e.identifier)for(let r of e.identifier)n=Math.max(n,Kj(r.value,t));if(e.resourceType===`Patient`&&e.name)for(let r of e.name)n=Math.max(n,Kj(qC(r),t));return n}function Kj(e,t){if(!e)return 0;let n=e.toLowerCase().indexOf(t.toLowerCase());return n<0?0:100-n}function qj(e){let t=AO(),[n,r]=(0,b.useState)(!1);return(0,L.jsx)(rf.Header,{p:8,style:{zIndex:101},children:(0,L.jsxs)(H,{justify:`space-between`,children:[(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(pl,{className:Dj.logoButton,"aria-expanded":e.navbarOpen,"aria-controls":`navbar`,onClick:()=>e.navbarToggle(),children:e.logo}),!e.headerSearchDisabled&&(0,L.jsx)(zj,{pathname:e.pathname,searchParams:e.searchParams})]}),(0,L.jsxs)(H,{gap:`lg`,pr:`sm`,children:[e.notifications,(0,L.jsxs)(G,{width:260,shadow:`xl`,position:`bottom-end`,transitionProps:{transition:`fade-down`},opened:n,onClose:()=>r(!1),children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(pl,{className:Dj.user,"aria-label":`User menu`,"data-active":n||void 0,onClick:()=>r(e=>!e),children:(0,L.jsxs)(H,{gap:7,children:[(0,L.jsx)(Ej,{value:t,radius:`xl`,size:24}),(0,L.jsx)(U,{size:`sm`,className:Dj.userName,children:qC(t?.name?.[0])}),(0,L.jsx)(sA,{size:12,stroke:1.5})]})})}),(0,L.jsx)(G.Dropdown,{children:(0,L.jsx)(Aj,{version:e.version})})]})]})]})})}var Jj=()=>hb({opened:!1,empty:!1,selected:-1,listId:``,query:``,registeredActions:new Set}),Yj=e=>gb(e);function Xj(e,t){let n=t.getState();t.setState({...n,...e(t.getState())})}function Zj(e){Xj(()=>({opened:!0,selected:-1}),e)}function Qj(e){Xj(()=>({opened:!1}),e)}function $j(e){Xj(e=>({opened:!e.opened,selected:e.opened?e.selected:-1}),e)}function eM(e,t){t.updateState(t=>({...t,selected:e}))}function tM(e,t){t.updateState(t=>({...t,listId:e}))}function nM(e,t=document){let n=t.querySelector(e);if(n)return n;let r=t instanceof ShadowRoot?t.host.children:t.children;for(let t=0;t<r.length;t+=1){let n=r[t];if(n.shadowRoot){let t=nM(e,n.shadowRoot);if(t)return t}let i=nM(e,n);if(i)return i}return null}function rM(e,t){let n=t.getState(),r=n.listId?nM(`#${n.listId}`):null,i=r?.querySelector(`[data-selected]`),a=r?.querySelectorAll(`[data-action]`)??[],o=St(e===-1?a.length-1:e===a.length?0:e,0,a.length-1);return i?.removeAttribute(`data-selected`),a[o]?.scrollIntoView({block:`nearest`}),a[o]?.setAttribute(`data-selected`,`true`),eM(o,t),o}function iM(e){return rM(e.getState().selected+1,e)}function aM(e){return rM(e.getState().selected-1,e)}function oM(e){nM(`#${e.getState().listId} [data-selected]`)?.click()}function sM(e,t){let n=t.getState();return n.registeredActions.add(e),()=>{n.registeredActions.delete(e)}}function cM(e,t){Xj(()=>({query:e}),t),Promise.resolve().then(()=>{rM(0,t),Xj(e=>({empty:e.query.trim().length>0&&e.registeredActions.size===0||!1}),t)})}function lM({clearQuery:e},t){t.updateState(t=>({...t,selected:-1,query:e?``:t.query,empty:e?!1:t.empty}))}var uM={open:Zj,close:Qj,toggle:$j,updateState:Xj,setSelectedAction:eM,setListId:tM,selectAction:rM,selectNextAction:iM,selectPreviousAction:aM,triggerSelectedAction:oM,registerAction:sM,setQuery:cM,clearSpotlightState:lM};function dM(){let e=Jj();return[e,{open:()=>Zj(e),close:()=>Qj(e),toggle:()=>$j(e)}]}var[fM,pM]=dM(),{open:mM,close:hM,toggle:gM}=pM;function _M(e){let t=e;return t.group!==void 0&&Array.isArray(t.actions)}function vM(e){return Array.isArray(e)?e.map(e=>e.trim()).join(`,`).toLowerCase().trim():typeof e==`string`?e.toLowerCase().trim():``}function yM(e){return e.reduce((e,t)=>`actions`in t?[...e,...t.actions.map(e=>({...e,group:t.group}))]:[...e,t],[])}function bM(e){let t={},n=[];return e.forEach(e=>{e.group?(t[e.group]||(t[e.group]={pushed:!1,data:{group:e.group,actions:[]}}),t[e.group].data.actions.push(e),t[e.group].pushed||(t[e.group].pushed=!0,n.push(t[e.group].data))):n.push(e)}),n}var xM=(e,t)=>{let n=e.trim().toLowerCase(),r=[[],[]];return yM(t).forEach(e=>{e.label?.toLowerCase().includes(n)?r[0].push(e):(e.description?.toLowerCase().includes(n)||vM(e.keywords).includes(n))&&r[1].push(e)}),bM(r.flat())};function SM(e,t){if(!Array.isArray(e))return[];let n=0;return e.reduce((e,r)=>{if(n>=t)return e;if(_M(r)){let i=SM(r.actions,t-n);e.push({group:r.group,actions:i}),n+=i.length}else e.push(r),n+=1;return e},[])}var CM={root:`m_d2b315db`,content:`m_3cd250e0`,body:`m_d2abce9b`,search:`m_f366a061`,actionsList:`m_6e463822`,action:`m_d49bb8ef`,actionBody:`m_3d475731`,actionSection:`m_832642f6`,actionLabel:`m_6c2a1345`,actionDescription:`m_a6d9d78d`,empty:`m_82f78f74`,footer:`m_ddcaf054`,actionsGroup:`m_5a3e5f7b`},[wM,TM]=$e(`Spotlight component was not found in tree`),EM={dimmedSections:!0,highlightQuery:!1},DM=V((e,t)=>{let{className:n,style:r,classNames:i,styles:a,id:o,description:s,label:c,leftSection:l,rightSection:u,children:d,dimmedSections:f,highlightQuery:p,highlightColor:m,closeSpotlightOnTrigger:h,onClick:g,onMouseDown:_,keywords:v,vars:y,...b}=z(`SpotlightAction`,EM,e),x=TM(),S={classNames:i,styles:a},C=p&&typeof c==`string`?(0,L.jsx)(Mm,{component:`span`,highlight:x.query,color:m,...x.getStyles(`actionLabel`,S),children:c}):(0,L.jsx)(`span`,{...x.getStyles(`actionLabel`,S),children:c});return(0,L.jsx)(pl,{ref:t,"data-action":!0,...x.getStyles(`action`,{className:n,style:r,...S}),...b,onMouseDown:e=>{e.preventDefault(),_?.(e)},onClick:e=>{g?.(e),(h??x.closeOnActionTrigger)&&uM.close(x.store)},tabIndex:-1,children:d||(0,L.jsxs)(L.Fragment,{children:[l&&(0,L.jsx)(B,{component:`span`,mod:{position:`left`,dimmed:f},...x.getStyles(`actionSection`,S),children:l}),(0,L.jsxs)(`span`,{...x.getStyles(`actionBody`,S),children:[C,(0,L.jsx)(`span`,{...x.getStyles(`actionDescription`,S),children:s})]}),u&&(0,L.jsx)(B,{component:`span`,mod:{position:`right`,dimmed:f},...x.getStyles(`actionSection`,S),children:u})]})})});DM.classes=CM,DM.displayName=`@mantine/spotlight/SpotlightAction`;var OM=V((e,t)=>{let{className:n,style:r,styles:i,classNames:a,label:o,children:s,...c}=z(`SpotlightActionsGroup`,null,e);return(0,L.jsx)(B,{...TM().getStyles(`actionsGroup`,{className:n,style:r,classNames:a,styles:i}),ref:t,...c,__vars:{"--spotlight-label":`'${o?.replace(/\\/g,`\\\\`).replace(/'/g,`\\'`)}'`},children:s})});OM.classes=CM,OM.displayName=`@mantine/core/SpotlightActionsGroup`;var kM=V((e,t)=>{let{className:n,style:r,id:i,children:a,vars:o,classNames:s,styles:c,...l}=z(`SpotlightActionsList`,null,e),u=TM(),d=`mantine-${(0,b.useId)().replace(/:/g,``)}`,f=i||d;return(0,b.useEffect)(()=>(uM.setListId(f,u.store),()=>uM.setListId(``,u.store)),[]),(0,L.jsx)(ll.Autosize,{...u.getStyles(`actionsList`,{className:n,style:r,classNames:s,styles:c}),ref:t,type:`scroll`,scrollbarSize:`var(--spotlight-actions-list-padding)`,offsetScrollbars:`y`,id:f,...l,children:a})});kM.classes=CM,kM.displayName=`@mantine/spotlight/SpotlightActionsList`;var AM=V((e,t)=>{let{className:n,style:r,classNames:i,styles:a,...o}=z(`SpotlightEmpty`,null,e);return(0,L.jsx)(B,{ref:t,...TM().getStyles(`empty`,{classNames:i,styles:a,className:n,style:r}),...o})});AM.classes=CM,AM.displayName=`@mantine/spotlight/SpotlightEmpty`;var jM=V((e,t)=>{let{className:n,style:r,classNames:i,styles:a,...o}=z(`SpotlightFooter`,null,e);return(0,L.jsx)(B,{ref:t,...TM().getStyles(`footer`,{className:n,classNames:i,style:r,styles:a}),...o})});jM.classes=CM,jM.displayName=`@mantine/spotlight/SpotlightFooter`;function MM(e,t){if(!e)return[];let n=()=>uM.open(t);return Array.isArray(e)?e.map(e=>[e,n]):[[e,n]]}var NM={size:600,yOffset:80,zIndex:ct(`max`),overlayProps:{backgroundOpacity:.35,blur:7},transitionProps:{duration:200,transition:`pop`},store:fM,clearQueryOnClose:!0,closeOnActionTrigger:!0,shortcut:`mod + K`,maxHeight:400},PM=V((e,t)=>{let n=z(`SpotlightRoot`,NM,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,store:l,children:u,query:d,onQueryChange:f,transitionProps:p,clearQueryOnClose:m,shortcut:h,tagsToIgnore:g,triggerOnContentEditable:_,disabled:v,onSpotlightOpen:y,onSpotlightClose:b,forceOpened:x,closeOnActionTrigger:S,maxHeight:C,scrollable:w,attributes:T,...E}=n,D=xr(),{opened:O,query:k}=Yj(l),A=typeof d==`string`?d:k,j=e=>{f?.(e),uM.setQuery(e,l)},M=R({name:`Spotlight`,classes:CM,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:T});return vn(MM(h,l),g,_),It(()=>{O?y?.():b?.()},[O]),v?null:(0,L.jsx)(wM,{value:{getStyles:M,query:A,setQuery:j,store:l,closeOnActionTrigger:S},children:(0,L.jsx)(ng,{ref:t,...E,withCloseButton:!1,opened:O||!!x,padding:0,onClose:()=>uM.close(l),className:i,style:a,classNames:Pn({theme:D,classNames:[CM,r],props:n,stylesCtx:void 0}),styles:Fn({theme:D,styles:o,props:n,stylesCtx:void 0}),transitionProps:{...p,onExited:()=>{m&&j(``),uM.clearSpotlightState({clearQuery:m},l),p?.onExited?.()}},__vars:{"--spotlight-max-height":w?I(C):void 0},__staticSelector:`Spotlight`,"data-scrollable":w||void 0,children:u})})});PM.classes=CM,PM.displayName=`@mantine/spotlight/SpotlightRoot`;var FM={size:`lg`},IM=V((e,t)=>{let{classNames:n,styles:r,onKeyDown:i,onChange:a,vars:o,value:s,...c}=z(`SpotlightSearch`,FM,e),l=TM(),u=l.getStyles(`search`),[d,f]=(0,b.useState)(!1),p=e=>{i?.(e),!d&&(e.nativeEvent.code===`ArrowDown`&&(e.preventDefault(),uM.selectNextAction(l.store)),e.nativeEvent.code===`ArrowUp`&&(e.preventDefault(),uM.selectPreviousAction(l.store)),(e.nativeEvent.code===`Enter`||e.nativeEvent.code===`NumpadEnter`)&&(e.preventDefault(),uM.triggerSelectedAction(l.store)))};return(0,L.jsx)(ud,{ref:t,classNames:[{input:u.className},n],styles:[{input:u.style},r],...c,value:s??l.query,onChange:e=>{l.setQuery(e.currentTarget.value),a?.(e)},onKeyDown:p,onCompositionStart:()=>f(!0),onCompositionEnd:()=>f(!1)})});IM.classes=CM,IM.displayName=`@mantine/spotlight/SpotlightSearch`;var LM={size:600,yOffset:80,limit:1/0,zIndex:ct(`max`),overlayProps:{backgroundOpacity:.35,blur:7},transitionProps:{duration:200,transition:`pop`},store:fM,filter:xM,clearQueryOnClose:!0,closeOnActionTrigger:!0,shortcut:`mod + K`},RM=V((e,t)=>{let{searchProps:n,filter:r,query:i,onQueryChange:a,actions:o,nothingFound:s,highlightQuery:c,limit:l,scrollAreaProps:u,...d}=z(`Spotlight`,LM,e),[f,p]=rn({value:i,defaultValue:``,finalValue:``,onChange:a}),m=SM(r(f,o),l).map(e=>{if(_M(e)){let t=e.actions.map(({id:e,...t})=>(0,L.jsx)(DM,{highlightQuery:c,...t},e));return(0,L.jsx)(OM,{label:e.group,children:t},e.group)}return(0,L.jsx)(DM,{highlightQuery:c,...e},e.id)});return(0,L.jsxs)(PM,{...d,query:f,onQueryChange:p,ref:t,children:[(0,L.jsx)(IM,{...n}),m.length>0&&(0,L.jsx)(kM,{...u,children:m}),m.length===0&&s&&(0,L.jsx)(AM,{children:s})]})});RM.classes=CM,RM.displayName=`@mantine/spotlight/Spotlight`,RM.Search=IM,RM.ActionsList=kM,RM.Action=DM,RM.Empty=AM,RM.ActionsGroup=OM,RM.Footer=jM,RM.Root=PM,RM.open=pM.open,RM.close=pM.close,RM.toggle=pM.toggle;var zM=(0,b.createContext)({submitting:!1});zM.displayName=`FormContext`;function BM(e){let t={};for(let n of Array.from(e.elements))n instanceof HTMLInputElement?VM(t,n):n instanceof HTMLTextAreaElement?t[n.name]=n.value:n instanceof HTMLSelectElement&&HM(t,n);return t}function VM(e,t){t.disabled||(t.type===`checkbox`||t.type===`radio`)&&!t.checked||(e[t.name]=t.value)}function HM(e,t){e[t.name]=t.value}function UM(e){let[t,n]=(0,b.useState)(!1);return(0,L.jsx)(zM.Provider,{value:{submitting:t},children:(0,L.jsx)(`form`,{style:e.style,"data-testid":e.testid,onSubmit:t=>{t.preventDefault();let r=BM(t.target);if(e.onSubmit){n(!0);let t=e.onSubmit(r);t?.then?t.catch(console.error).finally(()=>{n(!1)}):n(!1)}},children:e.children})})}function WM(e){let{children:t,...n}=e,{submitting:r}=(0,b.useContext)(zM);return(0,L.jsx)(W,{type:`submit`,loading:r,...n,children:t})}function GM(e){let t=Q(),n=t.getUserConfiguration();function r(r){let{menuname:i,bookmarkname:a}=r,o=`${e.pathname}?${e.searchParams.toString()}`,s=hC(n);(s.menu?.find(({title:e})=>e===i))?.link?.push({name:a,target:o}),t.updateResource(s).then(r=>{n.menu=r.menu,t.dispatchEvent({type:`change`}),Y({color:`green`,message:`Success`}),e.onOk()}).catch(e=>{Y({color:`red`,message:Lx(e)})})}return(0,L.jsx)(ng,{title:`Add Bookmark`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:e.onCancel,children:(0,L.jsx)(UM,{onSubmit:r,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(KM,{config:n}),(0,L.jsx)(ab,{label:`Bookmark Name`,type:`text`,name:`bookmarkname`,placeholder:`Bookmark Name`,defaultValue:e.pathname.split(`/`)[1]||``,withAsterisk:!0}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(WM,{mt:`sm`,children:`OK`})})]})})})}function KM(e){function t(e){return e?.menu?.map(e=>e.title)}let n=t(e.config);return(0,L.jsx)(Tg,{name:`menuname`,defaultValue:n[0],label:`Select Menu Option`,data:n,withAsterisk:!0})}function qM(e){return typeof e.code==`string`?e.code:JSON.stringify(e)}function JM(e){return typeof e.display==`string`?e.display:qM(e)}function YM(e){return{value:qM(e),label:JM(e),resource:e}}function XM(e){return{code:e,display:e}}function ZM(e){let t=Q(),{binding:n,creatable:r,clearable:i,expandParams:a,withHelpText:o,...s}=e,c=(0,b.useCallback)(async(e,r)=>{if(!n)return[];let i=(await t.valueSetExpand({count:10,...a,url:n,filter:e},{signal:r})).expansion?.contains??[],o=[];for(let e of i)e.code&&!o.some(t=>t.code===e.code)&&o.push(e);return o},[t,a,n]);return(0,L.jsx)(Mj,{...s,creatable:r??!0,clearable:i??!0,toOption:YM,loadOptions:c,onCreate:XM,itemComponent:o?QM:void 0})}var QM=(0,b.forwardRef)(({label:e,resource:t,active:n,...r},i)=>(0,L.jsx)(`div`,{ref:i,...r,children:(0,L.jsxs)(H,{wrap:`nowrap`,gap:`xs`,children:[n&&(0,L.jsx)(aA,{size:12}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{children:e}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:`${t.system}#${t.code}`})]})]})}));function $M(e){let{defaultValue:t,onChange:n,withHelpText:r,...i}=e,[a,o]=(0,b.useState)(t);function s(e){let t=e[0],r=tN(t);o(r),n&&n(r)}return(0,L.jsx)(ZM,{defaultValue:eN(a),onChange:s,withHelpText:r??!0,...i})}function eN(e){return e?{code:e}:void 0}function tN(e){return e?.code}function nN(e){let[t,n]=(0,b.useState)(e.defaultValue),r=e.onChange,i=(0,b.useCallback)(e=>{n(e),r&&r(e)},[r]);return(0,L.jsx)($M,{disabled:e.disabled,"data-autofocus":e.autoFocus,"data-testid":e.testId,defaultValue:t,onChange:i,name:e.name,placeholder:e.placeholder,binding:`https://medplum.com/fhir/ValueSet/resource-types`,creatable:!1,maxValues:e.maxValues??1,clearable:!1,withHelpText:!1})}var rN={navbar:`_navbar_ts9vb_1`,logoButton:`_logoButton_ts9vb_6`,menuTitle:`_menuTitle_ts9vb_25`,link:`_link_ts9vb_51`,dismissButton:`_dismissButton_ts9vb_91`,linkLabel:`_linkLabel_ts9vb_109`,iconWrapper:`_iconWrapper_ts9vb_120`,alertDot:`_alertDot_ts9vb_127`,linkCount:`_linkCount_ts9vb_138`,addBookmarkLink:`_addBookmarkLink_ts9vb_191`,toggleButton:`_toggleButton_ts9vb_201`,divider:`_divider_ts9vb_226`},iN={actionSection:`_actionSection_1l8yv_8`,action:`_action_1l8yv_8`,actionDescription:`_actionDescription_1l8yv_27`,actionsGroup:`_actionsGroup_1l8yv_32`,actionsList:`_actionsList_1l8yv_55`,content:`_content_1l8yv_60`},aN=200;function oN(){return(0,L.jsxs)(K,{gap:`xs`,py:`lg`,children:[(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,children:[`Press `,(0,L.jsx)(dh,{children:`⌘`}),` + `,(0,L.jsx)(dh,{children:`K`}),` to open Search next time.`]}),(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,children:[`(`,(0,L.jsx)(dh,{children:`Ctrl`}),` + `,(0,L.jsx)(dh,{children:`K`}),` on Windows)`]})]})}function sN({patientsOnly:e}){let t=Q(),n=kO(),[r,i]=(0,b.useState)((0,L.jsx)(oN,{})),[a,o]=(0,b.useState)([]),s=Dt(r=>{let a=cN(r);e?t.graphql(a).then(e=>{o(dN(lN(e).filter(e=>e.resourceType===`Patient`),n))}).catch(console.error).finally(()=>i(`No results found`)):Promise.all([t.graphql(a),t.valueSetExpand({url:`https://medplum.com/fhir/ValueSet/resource-types`,filter:r,count:5})]).then(([e,t])=>{o(fN(lN(e),t.expansion?.contains??[],n))}).catch(console.error).finally(()=>i(`No results found`))},aN),c=e=>{if(!e){s.cancel(),i((0,L.jsx)(oN,{})),o([]);return}i(`Searching...`),s(e)};return(0,L.jsx)(RM,{actions:a,nothingFound:r,radius:`md`,highlightQuery:!0,searchProps:{leftSection:(0,L.jsx)(XA,{size:`1.2rem`,stroke:2,color:`var(--mantine-color-gray-5)`}),placeholder:`Start typing to search…`,type:`search`,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,name:e?`provider-spotlight-search`:`spotlight-search`,inputProps:{"data-1p-ignore":`true`,"data-lpignore":`true`},leftSectionProps:{style:{marginLeft:`calc(var(--mantine-spacing-md) - 12px)`}}},classNames:{body:iN.body,content:iN.content,search:iN.search,actionsList:iN.actionsList,action:iN.action,actionSection:iN.actionSection,actionDescription:iN.actionDescription,actionsGroup:iN.actionsGroup},onQueryChange:c})}function cN(e){let t=JSON.stringify(e);return gC(e)?`{
|
|
159
|
+
}`.replaceAll(/\s+/g,` `)}function Wj(e,t){let n=[];return e.data.Patients1&&n.push(...e.data.Patients1),e.data.Patients2&&n.push(...e.data.Patients2),e.data.ServiceRequestList&&n.push(...e.data.ServiceRequestList),Kj(Gj(n),t).slice(0,5)}function Gj(e){let t=new Set,n=[];for(let r of e)t.has(r.id)||(t.add(r.id),n.push(r));return n}function Kj(e,t){return e.sort((e,n)=>qj(n,t)-qj(e,t))}function qj(e,t){let n=0;if(e.identifier)for(let r of e.identifier)n=Math.max(n,Jj(r.value,t));if(e.resourceType===`Patient`&&e.name)for(let r of e.name)n=Math.max(n,Jj(JC(r),t));return n}function Jj(e,t){if(!e)return 0;let n=e.toLowerCase().indexOf(t.toLowerCase());return n<0?0:100-n}function Yj(e){let t=jO(),[n,r]=(0,b.useState)(!1);return(0,L.jsx)(rf.Header,{p:8,style:{zIndex:101},children:(0,L.jsxs)(H,{justify:`space-between`,children:[(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(pl,{className:kj.logoButton,"aria-expanded":e.navbarOpen,"aria-controls":`navbar`,onClick:()=>e.navbarToggle(),children:e.logo}),!e.headerSearchDisabled&&(0,L.jsx)(Vj,{pathname:e.pathname,searchParams:e.searchParams})]}),(0,L.jsxs)(H,{gap:`lg`,pr:`sm`,children:[e.notifications,(0,L.jsxs)(G,{width:260,shadow:`xl`,position:`bottom-end`,transitionProps:{transition:`fade-down`},opened:n,onClose:()=>r(!1),children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(pl,{className:kj.user,"aria-label":`User menu`,"data-active":n||void 0,onClick:()=>r(e=>!e),children:(0,L.jsxs)(H,{gap:7,children:[(0,L.jsx)(Oj,{value:t,radius:`xl`,size:24}),(0,L.jsx)(U,{size:`sm`,className:kj.userName,children:JC(t?.name?.[0])}),(0,L.jsx)(lA,{size:12,stroke:1.5})]})})}),(0,L.jsx)(G.Dropdown,{children:(0,L.jsx)(Mj,{version:e.version})})]})]})]})})}var Xj=()=>hb({opened:!1,empty:!1,selected:-1,listId:``,query:``,registeredActions:new Set}),Zj=e=>gb(e);function Qj(e,t){let n=t.getState();t.setState({...n,...e(t.getState())})}function $j(e){Qj(()=>({opened:!0,selected:-1}),e)}function eM(e){Qj(()=>({opened:!1}),e)}function tM(e){Qj(e=>({opened:!e.opened,selected:e.opened?e.selected:-1}),e)}function nM(e,t){t.updateState(t=>({...t,selected:e}))}function rM(e,t){t.updateState(t=>({...t,listId:e}))}function iM(e,t=document){let n=t.querySelector(e);if(n)return n;let r=t instanceof ShadowRoot?t.host.children:t.children;for(let t=0;t<r.length;t+=1){let n=r[t];if(n.shadowRoot){let t=iM(e,n.shadowRoot);if(t)return t}let i=iM(e,n);if(i)return i}return null}function aM(e,t){let n=t.getState(),r=n.listId?iM(`#${n.listId}`):null,i=r?.querySelector(`[data-selected]`),a=r?.querySelectorAll(`[data-action]`)??[],o=St(e===-1?a.length-1:e===a.length?0:e,0,a.length-1);return i?.removeAttribute(`data-selected`),a[o]?.scrollIntoView({block:`nearest`}),a[o]?.setAttribute(`data-selected`,`true`),nM(o,t),o}function oM(e){return aM(e.getState().selected+1,e)}function sM(e){return aM(e.getState().selected-1,e)}function cM(e){iM(`#${e.getState().listId} [data-selected]`)?.click()}function lM(e,t){let n=t.getState();return n.registeredActions.add(e),()=>{n.registeredActions.delete(e)}}function uM(e,t){Qj(()=>({query:e}),t),Promise.resolve().then(()=>{aM(0,t),Qj(e=>({empty:e.query.trim().length>0&&e.registeredActions.size===0||!1}),t)})}function dM({clearQuery:e},t){t.updateState(t=>({...t,selected:-1,query:e?``:t.query,empty:e?!1:t.empty}))}var fM={open:$j,close:eM,toggle:tM,updateState:Qj,setSelectedAction:nM,setListId:rM,selectAction:aM,selectNextAction:oM,selectPreviousAction:sM,triggerSelectedAction:cM,registerAction:lM,setQuery:uM,clearSpotlightState:dM};function pM(){let e=Xj();return[e,{open:()=>$j(e),close:()=>eM(e),toggle:()=>tM(e)}]}var[mM,hM]=pM(),{open:gM,close:_M,toggle:vM}=hM;function yM(e){let t=e;return t.group!==void 0&&Array.isArray(t.actions)}function bM(e){return Array.isArray(e)?e.map(e=>e.trim()).join(`,`).toLowerCase().trim():typeof e==`string`?e.toLowerCase().trim():``}function xM(e){return e.reduce((e,t)=>`actions`in t?[...e,...t.actions.map(e=>({...e,group:t.group}))]:[...e,t],[])}function SM(e){let t={},n=[];return e.forEach(e=>{e.group?(t[e.group]||(t[e.group]={pushed:!1,data:{group:e.group,actions:[]}}),t[e.group].data.actions.push(e),t[e.group].pushed||(t[e.group].pushed=!0,n.push(t[e.group].data))):n.push(e)}),n}var CM=(e,t)=>{let n=e.trim().toLowerCase(),r=[[],[]];return xM(t).forEach(e=>{e.label?.toLowerCase().includes(n)?r[0].push(e):(e.description?.toLowerCase().includes(n)||bM(e.keywords).includes(n))&&r[1].push(e)}),SM(r.flat())};function wM(e,t){if(!Array.isArray(e))return[];let n=0;return e.reduce((e,r)=>{if(n>=t)return e;if(yM(r)){let i=wM(r.actions,t-n);e.push({group:r.group,actions:i}),n+=i.length}else e.push(r),n+=1;return e},[])}var TM={root:`m_d2b315db`,content:`m_3cd250e0`,body:`m_d2abce9b`,search:`m_f366a061`,actionsList:`m_6e463822`,action:`m_d49bb8ef`,actionBody:`m_3d475731`,actionSection:`m_832642f6`,actionLabel:`m_6c2a1345`,actionDescription:`m_a6d9d78d`,empty:`m_82f78f74`,footer:`m_ddcaf054`,actionsGroup:`m_5a3e5f7b`},[EM,DM]=$e(`Spotlight component was not found in tree`),OM={dimmedSections:!0,highlightQuery:!1},kM=V((e,t)=>{let{className:n,style:r,classNames:i,styles:a,id:o,description:s,label:c,leftSection:l,rightSection:u,children:d,dimmedSections:f,highlightQuery:p,highlightColor:m,closeSpotlightOnTrigger:h,onClick:g,onMouseDown:_,keywords:v,vars:y,...b}=z(`SpotlightAction`,OM,e),x=DM(),S={classNames:i,styles:a},C=p&&typeof c==`string`?(0,L.jsx)(Mm,{component:`span`,highlight:x.query,color:m,...x.getStyles(`actionLabel`,S),children:c}):(0,L.jsx)(`span`,{...x.getStyles(`actionLabel`,S),children:c});return(0,L.jsx)(pl,{ref:t,"data-action":!0,...x.getStyles(`action`,{className:n,style:r,...S}),...b,onMouseDown:e=>{e.preventDefault(),_?.(e)},onClick:e=>{g?.(e),(h??x.closeOnActionTrigger)&&fM.close(x.store)},tabIndex:-1,children:d||(0,L.jsxs)(L.Fragment,{children:[l&&(0,L.jsx)(B,{component:`span`,mod:{position:`left`,dimmed:f},...x.getStyles(`actionSection`,S),children:l}),(0,L.jsxs)(`span`,{...x.getStyles(`actionBody`,S),children:[C,(0,L.jsx)(`span`,{...x.getStyles(`actionDescription`,S),children:s})]}),u&&(0,L.jsx)(B,{component:`span`,mod:{position:`right`,dimmed:f},...x.getStyles(`actionSection`,S),children:u})]})})});kM.classes=TM,kM.displayName=`@mantine/spotlight/SpotlightAction`;var AM=V((e,t)=>{let{className:n,style:r,styles:i,classNames:a,label:o,children:s,...c}=z(`SpotlightActionsGroup`,null,e);return(0,L.jsx)(B,{...DM().getStyles(`actionsGroup`,{className:n,style:r,classNames:a,styles:i}),ref:t,...c,__vars:{"--spotlight-label":`'${o?.replace(/\\/g,`\\\\`).replace(/'/g,`\\'`)}'`},children:s})});AM.classes=TM,AM.displayName=`@mantine/core/SpotlightActionsGroup`;var jM=V((e,t)=>{let{className:n,style:r,id:i,children:a,vars:o,classNames:s,styles:c,...l}=z(`SpotlightActionsList`,null,e),u=DM(),d=`mantine-${(0,b.useId)().replace(/:/g,``)}`,f=i||d;return(0,b.useEffect)(()=>(fM.setListId(f,u.store),()=>fM.setListId(``,u.store)),[]),(0,L.jsx)(ll.Autosize,{...u.getStyles(`actionsList`,{className:n,style:r,classNames:s,styles:c}),ref:t,type:`scroll`,scrollbarSize:`var(--spotlight-actions-list-padding)`,offsetScrollbars:`y`,id:f,...l,children:a})});jM.classes=TM,jM.displayName=`@mantine/spotlight/SpotlightActionsList`;var MM=V((e,t)=>{let{className:n,style:r,classNames:i,styles:a,...o}=z(`SpotlightEmpty`,null,e);return(0,L.jsx)(B,{ref:t,...DM().getStyles(`empty`,{classNames:i,styles:a,className:n,style:r}),...o})});MM.classes=TM,MM.displayName=`@mantine/spotlight/SpotlightEmpty`;var NM=V((e,t)=>{let{className:n,style:r,classNames:i,styles:a,...o}=z(`SpotlightFooter`,null,e);return(0,L.jsx)(B,{ref:t,...DM().getStyles(`footer`,{className:n,classNames:i,style:r,styles:a}),...o})});NM.classes=TM,NM.displayName=`@mantine/spotlight/SpotlightFooter`;function PM(e,t){if(!e)return[];let n=()=>fM.open(t);return Array.isArray(e)?e.map(e=>[e,n]):[[e,n]]}var FM={size:600,yOffset:80,zIndex:ct(`max`),overlayProps:{backgroundOpacity:.35,blur:7},transitionProps:{duration:200,transition:`pop`},store:mM,clearQueryOnClose:!0,closeOnActionTrigger:!0,shortcut:`mod + K`,maxHeight:400},IM=V((e,t)=>{let n=z(`SpotlightRoot`,FM,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,store:l,children:u,query:d,onQueryChange:f,transitionProps:p,clearQueryOnClose:m,shortcut:h,tagsToIgnore:g,triggerOnContentEditable:_,disabled:v,onSpotlightOpen:y,onSpotlightClose:b,forceOpened:x,closeOnActionTrigger:S,maxHeight:C,scrollable:w,attributes:T,...E}=n,D=xr(),{opened:O,query:k}=Zj(l),A=typeof d==`string`?d:k,j=e=>{f?.(e),fM.setQuery(e,l)},M=R({name:`Spotlight`,classes:TM,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:T});return vn(PM(h,l),g,_),It(()=>{O?y?.():b?.()},[O]),v?null:(0,L.jsx)(EM,{value:{getStyles:M,query:A,setQuery:j,store:l,closeOnActionTrigger:S},children:(0,L.jsx)(ng,{ref:t,...E,withCloseButton:!1,opened:O||!!x,padding:0,onClose:()=>fM.close(l),className:i,style:a,classNames:Pn({theme:D,classNames:[TM,r],props:n,stylesCtx:void 0}),styles:Fn({theme:D,styles:o,props:n,stylesCtx:void 0}),transitionProps:{...p,onExited:()=>{m&&j(``),fM.clearSpotlightState({clearQuery:m},l),p?.onExited?.()}},__vars:{"--spotlight-max-height":w?I(C):void 0},__staticSelector:`Spotlight`,"data-scrollable":w||void 0,children:u})})});IM.classes=TM,IM.displayName=`@mantine/spotlight/SpotlightRoot`;var LM={size:`lg`},RM=V((e,t)=>{let{classNames:n,styles:r,onKeyDown:i,onChange:a,vars:o,value:s,...c}=z(`SpotlightSearch`,LM,e),l=DM(),u=l.getStyles(`search`),[d,f]=(0,b.useState)(!1),p=e=>{i?.(e),!d&&(e.nativeEvent.code===`ArrowDown`&&(e.preventDefault(),fM.selectNextAction(l.store)),e.nativeEvent.code===`ArrowUp`&&(e.preventDefault(),fM.selectPreviousAction(l.store)),(e.nativeEvent.code===`Enter`||e.nativeEvent.code===`NumpadEnter`)&&(e.preventDefault(),fM.triggerSelectedAction(l.store)))};return(0,L.jsx)(ud,{ref:t,classNames:[{input:u.className},n],styles:[{input:u.style},r],...c,value:s??l.query,onChange:e=>{l.setQuery(e.currentTarget.value),a?.(e)},onKeyDown:p,onCompositionStart:()=>f(!0),onCompositionEnd:()=>f(!1)})});RM.classes=TM,RM.displayName=`@mantine/spotlight/SpotlightSearch`;var zM={size:600,yOffset:80,limit:1/0,zIndex:ct(`max`),overlayProps:{backgroundOpacity:.35,blur:7},transitionProps:{duration:200,transition:`pop`},store:mM,filter:CM,clearQueryOnClose:!0,closeOnActionTrigger:!0,shortcut:`mod + K`},BM=V((e,t)=>{let{searchProps:n,filter:r,query:i,onQueryChange:a,actions:o,nothingFound:s,highlightQuery:c,limit:l,scrollAreaProps:u,...d}=z(`Spotlight`,zM,e),[f,p]=rn({value:i,defaultValue:``,finalValue:``,onChange:a}),m=wM(r(f,o),l).map(e=>{if(yM(e)){let t=e.actions.map(({id:e,...t})=>(0,L.jsx)(kM,{highlightQuery:c,...t},e));return(0,L.jsx)(AM,{label:e.group,children:t},e.group)}return(0,L.jsx)(kM,{highlightQuery:c,...e},e.id)});return(0,L.jsxs)(IM,{...d,query:f,onQueryChange:p,ref:t,children:[(0,L.jsx)(RM,{...n}),m.length>0&&(0,L.jsx)(jM,{...u,children:m}),m.length===0&&s&&(0,L.jsx)(MM,{children:s})]})});BM.classes=TM,BM.displayName=`@mantine/spotlight/Spotlight`,BM.Search=RM,BM.ActionsList=jM,BM.Action=kM,BM.Empty=MM,BM.ActionsGroup=AM,BM.Footer=NM,BM.Root=IM,BM.open=hM.open,BM.close=hM.close,BM.toggle=hM.toggle;var VM=(0,b.createContext)({submitting:!1});VM.displayName=`FormContext`;function HM(e){let t={};for(let n of Array.from(e.elements))n instanceof HTMLInputElement?UM(t,n):n instanceof HTMLTextAreaElement?t[n.name]=n.value:n instanceof HTMLSelectElement&&WM(t,n);return t}function UM(e,t){t.disabled||(t.type===`checkbox`||t.type===`radio`)&&!t.checked||(e[t.name]=t.value)}function WM(e,t){e[t.name]=t.value}function GM(e){let[t,n]=(0,b.useState)(!1);return(0,L.jsx)(VM.Provider,{value:{submitting:t},children:(0,L.jsx)(`form`,{style:e.style,"data-testid":e.testid,onSubmit:t=>{t.preventDefault();let r=HM(t.target);if(e.onSubmit){n(!0);let t=e.onSubmit(r);t?.then?t.catch(console.error).finally(()=>{n(!1)}):n(!1)}},children:e.children})})}function KM(e){let{children:t,...n}=e,{submitting:r}=(0,b.useContext)(VM);return(0,L.jsx)(W,{type:`submit`,loading:r,...n,children:t})}function qM(e){let t=Q(),n=t.getUserConfiguration();function r(r){let{menuname:i,bookmarkname:a}=r,o=`${e.pathname}?${e.searchParams.toString()}`,s=gC(n);(s.menu?.find(({title:e})=>e===i))?.link?.push({name:a,target:o}),t.updateResource(s).then(r=>{n.menu=r.menu,t.dispatchEvent({type:`change`}),Y({color:`green`,message:`Success`}),e.onOk()}).catch(e=>{Y({color:`red`,message:Lx(e)})})}return(0,L.jsx)(ng,{title:`Add Bookmark`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:e.onCancel,children:(0,L.jsx)(GM,{onSubmit:r,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(JM,{config:n}),(0,L.jsx)(ab,{label:`Bookmark Name`,type:`text`,name:`bookmarkname`,placeholder:`Bookmark Name`,defaultValue:e.pathname.split(`/`)[1]||``,withAsterisk:!0}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(KM,{mt:`sm`,children:`OK`})})]})})})}function JM(e){function t(e){return e?.menu?.map(e=>e.title)}let n=t(e.config);return(0,L.jsx)(Tg,{name:`menuname`,defaultValue:n[0],label:`Select Menu Option`,data:n,withAsterisk:!0})}function YM(e){return typeof e.code==`string`?e.code:JSON.stringify(e)}function XM(e){return typeof e.display==`string`?e.display:YM(e)}function ZM(e){return{value:YM(e),label:XM(e),resource:e}}function QM(e){return{code:e,display:e}}function $M(e){let t=Q(),{binding:n,creatable:r,clearable:i,expandParams:a,withHelpText:o,...s}=e,c=(0,b.useCallback)(async(e,r)=>{if(!n)return[];let i=(await t.valueSetExpand({count:10,...a,url:n,filter:e},{signal:r})).expansion?.contains??[],o=[];for(let e of i)e.code&&!o.some(t=>t.code===e.code)&&o.push(e);return o},[t,a,n]);return(0,L.jsx)(Pj,{...s,creatable:r??!0,clearable:i??!0,toOption:ZM,loadOptions:c,onCreate:QM,itemComponent:o?eN:void 0})}var eN=(0,b.forwardRef)(({label:e,resource:t,active:n,...r},i)=>(0,L.jsx)(`div`,{ref:i,...r,children:(0,L.jsxs)(H,{wrap:`nowrap`,gap:`xs`,children:[n&&(0,L.jsx)(sA,{size:12}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{children:e}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:`${t.system}#${t.code}`})]})]})}));function tN(e){let{defaultValue:t,onChange:n,withHelpText:r,...i}=e,[a,o]=(0,b.useState)(t);function s(e){let t=e[0],r=rN(t);o(r),n&&n(r)}return(0,L.jsx)($M,{defaultValue:nN(a),onChange:s,withHelpText:r??!0,...i})}function nN(e){return e?{code:e}:void 0}function rN(e){return e?.code}function iN(e){let[t,n]=(0,b.useState)(e.defaultValue),r=e.onChange,i=(0,b.useCallback)(e=>{n(e),r&&r(e)},[r]);return(0,L.jsx)(tN,{disabled:e.disabled,"data-autofocus":e.autoFocus,"data-testid":e.testId,defaultValue:t,onChange:i,name:e.name,placeholder:e.placeholder,binding:`https://medplum.com/fhir/ValueSet/resource-types`,creatable:!1,maxValues:e.maxValues??1,clearable:!1,withHelpText:!1})}var aN={navbar:`_navbar_ts9vb_1`,logoButton:`_logoButton_ts9vb_6`,menuTitle:`_menuTitle_ts9vb_25`,link:`_link_ts9vb_51`,dismissButton:`_dismissButton_ts9vb_91`,linkLabel:`_linkLabel_ts9vb_109`,iconWrapper:`_iconWrapper_ts9vb_120`,alertDot:`_alertDot_ts9vb_127`,linkCount:`_linkCount_ts9vb_138`,addBookmarkLink:`_addBookmarkLink_ts9vb_191`,toggleButton:`_toggleButton_ts9vb_201`,divider:`_divider_ts9vb_226`},oN={actionSection:`_actionSection_1l8yv_8`,action:`_action_1l8yv_8`,actionDescription:`_actionDescription_1l8yv_27`,actionsGroup:`_actionsGroup_1l8yv_32`,actionsList:`_actionsList_1l8yv_55`,content:`_content_1l8yv_60`},sN=200;function cN(){return(0,L.jsxs)(K,{gap:`xs`,py:`lg`,children:[(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,children:[`Press `,(0,L.jsx)(dh,{children:`⌘`}),` + `,(0,L.jsx)(dh,{children:`K`}),` to open Search next time.`]}),(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,children:[`(`,(0,L.jsx)(dh,{children:`Ctrl`}),` + `,(0,L.jsx)(dh,{children:`K`}),` on Windows)`]})]})}function lN({patientsOnly:e}){let t=Q(),n=AO(),[r,i]=(0,b.useState)((0,L.jsx)(cN,{})),[a,o]=(0,b.useState)([]),s=Dt(r=>{let a=uN(r);e?t.graphql(a).then(e=>{o(pN(dN(e).filter(e=>e.resourceType===`Patient`),n))}).catch(console.error).finally(()=>i(`No results found`)):Promise.all([t.graphql(a),t.valueSetExpand({url:`https://medplum.com/fhir/ValueSet/resource-types`,filter:r,count:5})]).then(([e,t])=>{o(mN(dN(e),t.expansion?.contains??[],n))}).catch(console.error).finally(()=>i(`No results found`))},sN),c=e=>{if(!e){s.cancel(),i((0,L.jsx)(cN,{})),o([]);return}i(`Searching...`),s(e)};return(0,L.jsx)(BM,{actions:a,nothingFound:r,radius:`md`,highlightQuery:!0,searchProps:{leftSection:(0,L.jsx)(QA,{size:`1.2rem`,stroke:2,color:`var(--mantine-color-gray-5)`}),placeholder:`Start typing to search…`,type:`search`,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,name:e?`provider-spotlight-search`:`spotlight-search`,inputProps:{"data-1p-ignore":`true`,"data-lpignore":`true`},leftSectionProps:{style:{marginLeft:`calc(var(--mantine-spacing-md) - 12px)`}}},classNames:{body:oN.body,content:oN.content,search:oN.search,actionsList:oN.actionsList,action:oN.action,actionSection:oN.actionSection,actionDescription:oN.actionDescription,actionsGroup:oN.actionsGroup},onQueryChange:c})}function uN(e){let t=JSON.stringify(e);return _C(e)?`{
|
|
160
160
|
Patients1: PatientList(_id: ${t}, _count: 1) {
|
|
161
161
|
resourceType
|
|
162
162
|
id
|
|
@@ -194,18 +194,18 @@ ${o?`${s(`light`)}{${o}}`:``}`}function Er({color:e,theme:t,autoContrast:n}){ret
|
|
|
194
194
|
identifier { system value }
|
|
195
195
|
subject { display }
|
|
196
196
|
}
|
|
197
|
-
}`.replaceAll(/\s+/g,` `)}function lN(e){let t=[];return e.data.Patients1&&t.push(...e.data.Patients1),e.data.Patients2&&t.push(...e.data.Patients2),e.data.ServiceRequestList&&t.push(...e.data.ServiceRequestList),uN(t)}function uN(e){let t=new Set,n=[];for(let r of e)r.id&&!t.has(r.id)&&(t.add(r.id),n.push(r));return n}function dN(e,t){let n=e.filter(e=>!!e.id).map(e=>({id:e.id,label:e.name?qC(e.name[0]):e.id,description:e.birthDate,leftSection:(0,L.jsx)(Ej,{value:e,radius:`xl`,size:24}),onClick:()=>t(`/Patient/${e.id}`)}));return n.length>0?[{group:`Patients`,actions:n}]:[]}function fN(e,t,n){let r=[],i=t.map(e=>({id:`resource-type-${e.code}`,label:e.display??e.code??``,description:`Resource Type`,onClick:()=>n(`/${e.code}`)}));i.length>0&&r.push({group:`Resource Types`,actions:i});let a=[],o=[];for(let t of e)t.resourceType===`Patient`&&t.id?a.push({id:t.id,label:t.name?qC(t.name[0]):t.id,description:t.birthDate,leftSection:(0,L.jsx)(Ej,{value:t,radius:`xl`,size:24}),onClick:()=>n(`/Patient/${t.id}`)}):t.resourceType===`ServiceRequest`&&t.id&&o.push({id:t.id,label:t.id,description:t.subject?.display,onClick:()=>n(`/ServiceRequest/${t.id}`)});return a.length>0&&r.push({group:`Patients`,actions:a}),o.length>0&&r.push({group:`Service Requests`,actions:o}),r}function pN(e){let t=kO(),n=AO(),r=gN(e.pathname,e.searchParams,e.menus),[i,a]=(0,b.useState)(!1),[o,s]=(0,b.useState)(!1);function c(n,r){n.stopPropagation(),n.preventDefault(),t(r),window.innerWidth<768&&e.closeNavbar()}function l(e){e&&t(`/${e}`)}let u=e.opened??!0;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(rf.Navbar,{id:`navbar`,className:rN.navbar,children:[e.logo&&(0,L.jsx)(rf.Section,{px:`xs`,pt:`xs`,pb:`4px`,children:(0,L.jsx)(pl,{className:rN.logoButton,onClick:e.navbarToggle,"aria-expanded":u,"aria-controls":`navbar`,"aria-label":`Medplum Logo`,children:e.logo})}),(0,L.jsx)(ll,{px:`xs`,pb:`xs`,pt:`sm`,h:`100%`,children:(0,L.jsxs)(rf.Section,{grow:!0,children:[e.spotlightEnabled&&(0,L.jsx)(B,{mb:2,children:(0,L.jsx)(Hv,{label:`Search`,position:`right`,transitionProps:{duration:0},disabled:u,children:(0,L.jsxs)(pl,{className:rN.link,onClick:()=>pM.open(),"aria-label":`Search`,children:[(0,L.jsx)(XA,{size:`1.2rem`}),(0,L.jsx)(`span`,{className:rN.linkLabel,"data-opened":u||void 0,children:`Search`})]})})}),e.spotlightEnabled&&(0,L.jsx)(sN,{patientsOnly:e.patientsOnly}),!e.resourceTypeSearchDisabled&&(0,L.jsx)(rf.Section,{mb:`sm`,children:(0,L.jsx)(nN,{name:`resourceType`,placeholder:`Resource Type`,maxValues:0,onChange:e=>l(e)},window.location.pathname)}),e.menus?.map((e,t)=>(0,L.jsxs)(b.Fragment,{children:[e.title&&(0,L.jsx)(U,{className:rN.menuTitle,"data-opened":u||void 0,children:e.title}),(0,L.jsx)(K,{gap:`2`,children:e.links?.map(e=>e.notificationCount?(0,L.jsx)(hN,{to:e.href,active:e.href===r?.href,onClick:t=>c(t,e.href),icon:e.icon,label:e.label??``,opened:u,alert:e.alert,notificationCount:e.notificationCount,onDismiss:e.onDismiss},e.href):(0,L.jsx)(mN,{to:e.href,active:e.href===r?.href,onClick:t=>c(t,e.href),icon:e.icon,label:e.label??``,opened:u,alert:e.alert,count:e.count,onDismiss:e.onDismiss},e.href))})]},`menu-${e.title??t}`)),e.displayAddBookmark&&(0,L.jsx)(Hv,{label:`Add Bookmark`,position:`right`,transitionProps:{duration:0},disabled:u,children:(0,L.jsxs)(pl,{className:`${rN.link} ${rN.addBookmarkLink}`,onClick:()=>s(!0),children:[(0,L.jsx)(uA,{}),(0,L.jsx)(`span`,{className:rN.linkLabel,"data-opened":u||void 0,children:`Add Bookmark`})]})})]})}),e.userMenuEnabled&&(0,L.jsxs)(rf.Section,{px:`xs`,py:`xs`,children:[(0,L.jsx)(Hv,{label:u?`Close Sidebar`:`Open Sidebar`,position:`right`,transitionProps:{duration:0},children:(0,L.jsx)(pl,{className:rN.toggleButton,"aria-label":u?`Close Sidebar`:`Open Sidebar`,onClick:e.navbarToggle,"aria-expanded":u,"aria-controls":`navbar`,children:(0,L.jsx)(kA,{})})}),(0,L.jsx)(um,{my:`xs`,mx:6,className:rN.divider}),(0,L.jsxs)(G,{width:260,shadow:`xl`,position:`top-start`,transitionProps:{transition:`fade-up`},opened:i,onClose:()=>a(!1),children:[(0,L.jsx)(G.Target,{children:(0,L.jsxs)(pl,{className:rN.link,pl:`7`,"aria-label":`User menu`,"data-active":i||void 0,onClick:()=>a(e=>!e),bd:`1px 0 0 0 solid var(--mantine-color-gray-200)`,children:[(0,L.jsx)(Ej,{value:n,radius:`xl`,size:24}),(0,L.jsx)(`span`,{className:rN.linkLabel,"data-opened":u||void 0,children:qC(n?.name?.[0])})]})}),(0,L.jsx)(G.Dropdown,{children:(0,L.jsx)(Aj,{version:e.version,showLayoutVersionToggle:e.showLayoutVersionToggle})})]})]})]}),e.pathname&&e.searchParams&&(0,L.jsx)(GM,{pathname:e.pathname,searchParams:e.searchParams,visible:o,onOk:()=>s(!1),onCancel:()=>s(!1)})]})}function mN(e){let{to:t,icon:n,label:r,onClick:i,active:a,count:o,alert:s,opened:c,onDismiss:l}=e,u=o!==void 0&&o>0,d=n??(0,L.jsx)(Xk,{}),f=u&&s&&!c;function p(e){e.preventDefault(),e.stopPropagation(),l?.()}return(0,L.jsx)(Hv,{label:r,position:`right`,transitionProps:{duration:0},disabled:c,children:(0,L.jsxs)(bj,{to:t,onClick:i,className:rN.link,"data-active":a||void 0,children:[(0,L.jsxs)(`span`,{className:rN.iconWrapper,children:[d,f&&(0,L.jsx)(`span`,{className:rN.alertDot})]}),(0,L.jsx)(`span`,{className:rN.linkLabel,"data-opened":c||void 0,children:r}),u&&(0,L.jsx)(`span`,{className:rN.linkCount,"data-opened":c||void 0,"data-alert":s||void 0,children:o.toLocaleString()}),l&&c&&(0,L.jsx)(Hv,{label:`Dismiss`,openDelay:500,children:(0,L.jsx)(pl,{"aria-label":`Dismiss`,className:rN.dismissButton,onClick:p,children:(0,L.jsx)(lj,{size:14})})})]})})}function hN(e){let t=RO(e.notificationCount);return(0,L.jsx)(mN,{to:e.to,active:e.active,onClick:e.onClick,icon:e.icon,label:e.label,opened:e.opened,alert:e.alert,count:t,onDismiss:e.onDismiss})}function gN(e,t,n){if(!e||!t||!n)return;let r,i=0;for(let a of n)if(a.links)for(let n of a.links){let a=_N(e,t,n.href);a>i&&(i=a,r=n)}return r}function _N(e,t,n){let r=new URL(n,`https://example.com`);if(e!==r.pathname)return 0;let i=[`_count`,`_offset`];for(let[e,n]of r.searchParams.entries())if(!i.includes(e)&&t.get(e)!==n)return 0;let a=1;for(let[e,n]of t.entries())i.includes(e)||r.searchParams.get(e)===n&&a++;return a}var vN=250,yN=59;function bN(e){let[t,n]=(0,b.useState)(localStorage.navbarOpen===`true`),[r]=(0,b.useState)(e.layoutVersion??localStorage.appShellLayoutVersion??`v1`),i=Q(),a=AO();function o(e){localStorage.navbarOpen=e.toString(),n(e)}function s(){o(!1)}function c(){o(!t)}if(i.isLoading())return(0,L.jsx)(fj,{});let l,u,d,f;return r===`v2`?(l={height:0},u={width:t?vN:yN,breakpoint:0,collapsed:{desktop:!a,mobile:!a}},d=void 0,f=a?(0,L.jsx)(pN,{logo:e.logo,pathname:e.pathname,searchParams:e.searchParams,menus:e.menus,navbarToggle:c,closeNavbar:s,displayAddBookmark:e.displayAddBookmark,resourceTypeSearchDisabled:!0,opened:t,spotlightEnabled:!0,patientsOnly:e.spotlightPatientsOnly,userMenuEnabled:!0,version:e.version,showLayoutVersionToggle:e.showLayoutVersionToggle}):void 0):(l={height:60},u={width:vN,breakpoint:`sm`,collapsed:{desktop:!a||!t,mobile:!a||!t}},d=a&&(0,L.jsx)(qj,{pathname:e.pathname,searchParams:e.searchParams,headerSearchDisabled:e.headerSearchDisabled,logo:e.logo,version:e.version,navbarOpen:t,navbarToggle:c,notifications:e.notifications}),f=a&&t?(0,L.jsx)(pN,{pathname:e.pathname,searchParams:e.searchParams,menus:e.menus,navbarToggle:c,closeNavbar:s,displayAddBookmark:e.displayAddBookmark,resourceTypeSearchDisabled:e.resourceTypeSearchDisabled,patientsOnly:e.spotlightPatientsOnly}):void 0),(0,L.jsxs)(rf,{header:l,navbar:u,padding:0,children:[d,f,(0,L.jsx)(rf.Main,{className:pj.main,children:(0,L.jsx)(dj,{children:(0,L.jsx)(b.Suspense,{fallback:(0,L.jsx)(fj,{}),children:e.children})})})]})}var xN=`https://ccda.medplum.com`,SN=`https://ccda-validator.medplum.com/`;function CN(e){let{url:t}=e,[n,r]=(0,b.useState)(!1),i=(0,b.useRef)(null),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(!1);(0,b.useEffect)(()=>{t&&n&&i.current&&(vj(i.current,{command:`loadCcdaXml`,value:t}).catch(console.error),r(!1))},[t,n]);let l=async()=>{if(t)try{c(!0);let e=await(await fetch(t)).text(),n=new FormData;n.append(`ccdaFile`,new Blob([e],{type:`text/xml`}),`ccda.xml`);let r=`${SN}referenceccdaservice/?validationObjective=C-CDA_IG_Plus_Vocab&referenceFileName=No%20scenario%20File&curesUpdate=true&severityLevel=WARNING`,i=await fetch(r,{method:`POST`,body:n,credentials:`omit`,redirect:`manual`});if(!i.ok)throw Error(`Validation failed: ${i.status} ${i.statusText}`);o(await i.json())}catch(e){o(void 0),console.error(`CCDA validation error:`,e)}finally{c(!1)}},u=()=>{a&&yj(JSON.stringify(a,null,2),`ccda-validation-results`)},d=()=>a?a.resultsMetaData.resultMetaData.filter(e=>e?.type.includes(`Error`)).reduce((e,t)=>e+(t.count||0),0):0;return t?(0,L.jsxs)(`div`,{"data-testid":`ccda-iframe`,style:{maxWidth:e.maxWidth},children:[(0,L.jsx)(`div`,{style:{minHeight:400},children:(0,L.jsx)(`iframe`,{title:`C-CDA Viewer`,width:`100%`,height:`400`,ref:i,src:xN,allowFullScreen:!0,frameBorder:0,seamless:!0,onLoad:()=>r(!0)})}),(0,L.jsxs)(`div`,{style:{marginTop:`10px`,marginBottom:`10px`,display:`flex`,alignItems:`center`},children:[(0,L.jsx)(W,{type:`button`,onClick:l,disabled:s,children:s?`Validating...`:`Validate`}),a&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{style:{marginLeft:`15px`},children:[(0,L.jsx)(`strong`,{children:`Validation Results:`}),` `,d(),` errors found`]}),(0,L.jsx)(W,{type:`button`,onClick:u,color:`green`,style:{marginLeft:`auto`},children:`Download Full Results`})]})]})]}):null}function wN(e){let{contentType:t,url:n,title:r}=e.value??{},i=FO(n);return i?(0,L.jsxs)(`div`,{"data-testid":`attachment-display`,children:[t?.startsWith(`image/`)&&(0,L.jsx)(`img`,{"data-testid":`attachment-image`,style:{maxWidth:e.maxWidth},src:i,alt:r}),t?.startsWith(`video/`)&&(0,L.jsx)(`video`,{"data-testid":`attachment-video`,style:{maxWidth:e.maxWidth},controls:!0,children:(0,L.jsx)(`source`,{type:t,src:i})}),(t?.startsWith(`text/`)||t===`application/json`||t===`application/pdf`)&&(0,L.jsx)(`div`,{"data-testid":`attachment-iframe`,style:{maxWidth:e.maxWidth,minHeight:400},children:(0,L.jsx)(`iframe`,{title:`Attachment`,width:`100%`,height:`400`,src:i+`#navpanes=0`,allowFullScreen:!0,frameBorder:0,seamless:!0})}),t===FE.CDA_XML&&(0,L.jsx)(CN,{url:i}),(0,L.jsx)(`div`,{"data-testid":`download-link`,style:{padding:`2px 16px 16px 16px`},children:(0,L.jsx)(Nd,{href:n,"data-testid":`attachment-details`,target:`_blank`,rel:`noopener noreferrer`,download:TN(r),children:r||`Download`})})]}):null}function TN(e){return e?.includes(`.`)?e:void 0}var EN={root:`_root_1bd5a_1`,compact:`_compact_1bd5a_19`};function DN(e){let{children:t,compact:n}=e;return(0,L.jsx)(`dl`,{className:jn(EN.root,{[EN.compact]:n}),children:t})}function ON(e){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`dt`,{children:e.term}),(0,L.jsx)(`dd`,{children:e.children})]})}function kN(e){let t=e.values?.map((t,n)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(wN,{value:t,maxWidth:e.maxWidth})},`attatchment-`+n)),n;if(e.includeDescriptionListEntry){if(e.property===void 0)throw Error(`props.property is required when includeDescriptionListEntry is true`);if(!sC(e.path))throw Error(`props.path is required when includeDescriptionListEntry is true`);n=(0,L.jsx)(ON,{term:bw(e.path.split(`.`).pop()),children:t})}else n=(0,L.jsx)(L.Fragment,{children:t});return n}function AN(e){let t=Q(),n=(0,b.useRef)(null);function r(e){mj(e),n.current?.click()}function i(e){mj(e);let t=e.target.files;t&&Array.from(t).forEach(a)}function a(n){n&&n.name&&(e.onUploadStart&&e.onUploadStart(),t.createAttachment({data:n,contentType:n.type||`application/octet-stream`,filename:n.name,securityContext:e.securityContext,onProgress:e.onUploadProgress}).then(t=>e.onUpload(t)).catch(t=>{e.onUploadError&&e.onUploadError(Ix(t))}))}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`input`,{disabled:e.disabled,type:`file`,"data-testid":`upload-file-input`,style:{display:`none`},ref:n,onChange:e=>i(e)}),e.children({onClick:r,disabled:e.disabled})]})}function jN(e){let[t,n]=(0,b.useState)(e.defaultValue??[]),r=(0,b.useRef)(t);r.current=t;function i(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(`table`,{style:{width:`100%`},children:[(0,L.jsxs)(`colgroup`,{children:[(0,L.jsx)(`col`,{width:`97%`}),(0,L.jsx)(`col`,{width:`3%`})]}),(0,L.jsxs)(`tbody`,{children:[t.map((n,r)=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(wN,{value:n,maxWidth:200})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(hu,{disabled:e.disabled,title:`Remove`,variant:`subtle`,size:`sm`,color:`gray`,onClick:e=>{mj(e);let n=t.slice();n.splice(r,1),i(n)},children:(0,L.jsx)(lA,{})})})]},`${r}-${t.length}`)),(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{}),(0,L.jsx)(`td`,{children:(0,L.jsx)(AN,{disabled:e.disabled,onUpload:e=>{i([...r.current,e])},children:e=>(0,L.jsx)(hu,{...e,title:`Add`,variant:`subtle`,size:`sm`,color:e.disabled?`gray`:`green`,children:(0,L.jsx)(dA,{})})})})]})]})]})}function MN(e){let[t,n]=(0,b.useState)(e.defaultValue);function r(t){n(t),e.onChange&&e.onChange(t)}return t?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(wN,{value:t,maxWidth:200}),(0,L.jsx)(W,{disabled:e.disabled,onClick:e=>{mj(e),r(void 0)},children:`Remove`})]}):(0,L.jsx)(AN,{disabled:e.disabled,securityContext:e.securityContext,onUpload:r,children:e=>(0,L.jsx)(W,{...e,children:`Upload...`})})}var NN={root:`_root_1vii2_1`};function PN(e){let{children:t,...n}=e;return(0,L.jsx)(im,{className:NN.root,...n,children:t})}var FN={paper:`_paper_1igaj_1`,fill:`_fill_1igaj_20`};function IN(e){let{width:t,fill:n,className:r,children:i,...a}=e,o=t?{maxWidth:t}:void 0;return(0,L.jsx)(vl,{className:jn(FN.paper,n&&FN.fill,r),style:o,shadow:`sm`,radius:`sm`,withBorder:!0,...a,children:i})}function LN(e){let{children:t,...n}=e;return(0,L.jsx)(PN,{children:(0,L.jsx)(IN,{...n,children:t})})}function RN(e){return(0,L.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 180 180`,style:{width:e.size,height:e.size},children:[(0,L.jsx)(`title`,{children:`Medplum Logo`}),(0,L.jsx)(`path`,{fill:e.fill??`#9c36b5`,d:`M84 56c-3-15-15-24-23-28l5-10c8 2 14 8 20 14 0-12 1-16 5-21 8-9 13-9 41-9 0 7 1 18-3 24-7 9-16 7-41 8 5 8 7 14 8 22 36-24 74-7 74 39 0 42-40 83-80 83s-80-41-80-83c0-46 38-63 74-39Zm-3 43H65c-4 0-7 3-7 7v4c0 4 3 7 7 7h16v16c0 4 3 7 7 7h4c4 0 7-3 7-7v-16h16c4 0 7-3 7-7v-4c0-4-3-7-7-7H99V83c0-4-3-7-7-7h-4c-4 0-7 3-7 7z`})]})}function zN(e,t){return e?.issue?.filter(e=>HN(e.expression?.[0],t))?.map(e=>e.details?.text)?.join(`
|
|
198
|
-
`)}function BN(e,t){return e?.issue?.filter(e=>HN(e.expression?.[0],t))}var VN=/\[\d+\]/;function HN(e,t){if((typeof e==`string`&&VN.test(e))!==(typeof t==`string`&&VN.test(t))&&(e=e?.replace(VN,``),t=t?.replace(VN,``)),e===t)return!0;if(!e||!t)return!1;let n=e.indexOf(`.`);if(n>=0&&e.substring(n+1)===t)return!0;let r=t.indexOf(`.`);return r>=0&&t.substring(r+1)===e}function UN(e){let{onSuccess:t}=e,n=Q(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(!1);return(0,L.jsx)(LN,{width:450,children:(0,L.jsxs)(UM,{onSubmit:e=>{i(void 0),n.post(`auth/changepassword`,e).then(()=>{o(!0),t?.()}).catch(e=>i(Ix(e)))},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{children:`Change password`})]}),!a&&(0,L.jsxs)(K,{gap:`xl`,mt:`xl`,children:[(0,L.jsx)(ov,{name:`oldPassword`,label:`Old password`,required:!0,autoFocus:!0,error:zN(r,`oldPassword`)}),(0,L.jsx)(ov,{name:`newPassword`,label:`New password`,required:!0,error:zN(r,`newPassword`)}),(0,L.jsx)(ov,{name:`confirmPassword`,label:`Confirm new password`,required:!0,error:zN(r,`confirmPassword`)}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`Change password`})})]}),a&&(0,L.jsx)(`div`,{"data-testid":`success`,children:`Password changed successfully`})]})})}function WN(e){let[t,n]=(0,b.useState)();return(0,L.jsxs)(UM,{onSubmit:t=>{n(void 0),e.onSubmit(t)?.catch(e=>n(Lx(e)))},children:[(0,L.jsxs)(Gp,{style:{flexDirection:`column`},children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:e.title}),!e.qrCodeUrl&&e.description&&(0,L.jsx)(U,{c:`dimmed`,mb:`lg`,mt:`-lg`,children:e.description})]}),t&&(0,L.jsx)(Ed,{icon:(0,L.jsx)(Gk,{size:16}),title:`Error`,color:`red`,mb:`lg`,children:t}),e.qrCodeUrl&&(0,L.jsx)(Gp,{children:(0,L.jsxs)(K,{mb:`xl`,children:[e.description&&(0,L.jsx)(U,{c:`dimmed`,mb:`md`,mt:`-lg`,ta:`center`,children:e.description}),(0,L.jsx)(Fm,{src:e.qrCodeUrl,alt:`Multi Factor Auth QR Code`,w:`60%`,mx:`auto`,radius:`md`,p:`xs`,bg:`var(--mantine-color-white)`,style:{border:`1px solid light-dark(var(--mantine-color-gray-2), var(--mantine-color-dark-4))`}})]})}),(0,L.jsx)(K,{gap:`sm`,children:(0,L.jsx)(ab,{name:`token`,label:`MFA code`,autoComplete:`one-time-code`,required:!0,autoFocus:!0})}),(0,L.jsx)(K,{gap:`xs`,pt:`md`,children:(0,L.jsx)(WM,{fullWidth:!0,children:e.buttonText})})]})}function GN(e){let{outcome:t,issues:n,...r}=e,i=t?.issue||n;return!i||i.length===0?null:(0,L.jsx)(Ed,{icon:(0,L.jsx)(Gk,{size:16}),color:`red`,...r,children:i.map(e=>(0,L.jsx)(`div`,{"data-testid":`text-field-error`,children:zx(e)},e.details?.text))})}function KN(e){let t=Q(),[n,r]=(0,b.useState)(),i=BN(n,void 0);return(0,L.jsxs)(UM,{onSubmit:async n=>{try{e.handleAuthResponse(await t.startNewProject({login:e.login,projectName:n.projectName}))}catch(e){r(Ix(e))}},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Create a new project`})]}),(0,L.jsx)(GN,{issues:i,mb:`lg`}),(0,L.jsx)(K,{gap:`sm`,children:(0,L.jsx)(ab,{name:`projectName`,label:`Project Name`,placeholder:`My Project`,required:!0,autoFocus:!0,error:zN(n,`projectName`)})}),(0,L.jsxs)(K,{gap:`xs`,mt:`md`,children:[(0,L.jsx)(WM,{fullWidth:!0,children:`Create Project`}),(0,L.jsxs)(U,{c:`dimmed`,size:`xs`,pt:`lg`,ta:`center`,children:[`By clicking "Create Project" you agree to the Medplum`,` `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/privacy`,children:`Privacy\xA0Policy`}),` and `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/terms`,children:`Terms\xA0of\xA0Service`}),`.`]})]})]})}function qN(e,t){let n=document.getElementsByTagName(`head`)[0],r=document.createElement(`script`);r.async=!0,r.src=e,r.onload=t??null,n.appendChild(r)}function JN(e){let{googleClientId:t,handleGoogleCredential:n}=e,r=(0,b.useRef)(null),[i,a]=(0,b.useState)(typeof google<`u`),o=(0,b.useRef)(!1),s=(0,b.useRef)(!1);return(0,b.useEffect)(()=>{if(typeof google>`u`){qN(`https://accounts.google.com/gsi/client`,()=>a(!0));return}o.current||=(google.accounts.id.initialize({client_id:t,callback:n}),!0),r.current&&!s.current&&(google.accounts.id.renderButton(r.current,{type:`standard`,logo_alignment:`center`,width:r.current.clientWidth}),s.current=!0)},[t,i,n]),t?(0,L.jsx)(B,{ref:r,w:`100%`,h:40,display:`flex`,style:{justifyContent:`center`}}):null}function YN(e){if(e)return e;let t=xE.getOrigin();if(t&&((void 0)?.split(`,`)??[]).includes(t))return`__GOOGLE_CLIENT_ID__`}function XN(e){typeof grecaptcha>`u`&&qN(`https://www.google.com/recaptcha/api.js?render=`+e)}function ZN(e){return new Promise((t,n)=>{grecaptcha.ready(async()=>{try{t(await grecaptcha.execute(e,{action:`submit`}))}catch(e){n(e)}})})}function QN(e){let t=YN(e.googleClientId),n=e.recaptchaSiteKey,r=Q(),[i,a]=(0,b.useState)(),o=BN(i,void 0);return(0,b.useEffect)(()=>{n&&XN(n)},[n]),(0,L.jsxs)(UM,{onSubmit:async t=>{a(void 0);try{let i=``;n&&(i=await ZN(n)),e.handleAuthResponse(await r.startNewUser({projectId:e.projectId,clientId:e.clientId,firstName:t.firstName,lastName:t.lastName,email:t.email,password:t.password,remember:t.remember===`true`,recaptchaSiteKey:n,recaptchaToken:i}))}catch(e){a(Ix(e))}},children:[(0,L.jsx)(gd,{direction:`column`,align:`center`,justify:`center`,children:e.children}),(0,L.jsx)(GN,{issues:o,mb:`lg`}),t&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(B,{style:{minHeight:40},children:(0,L.jsx)(JN,{googleClientId:t,handleGoogleCredential:async t=>{try{e.handleAuthResponse(await r.startGoogleLogin({googleClientId:t.clientId,googleCredential:t.credential,projectId:e.projectId,createUser:!0}))}catch(e){a(Ix(e))}}})}),(0,L.jsx)(um,{label:`or`,labelPosition:`center`,my:`lg`})]}),(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(ab,{name:`firstName`,type:`text`,label:`First name`,placeholder:`First name`,required:!0,autoFocus:!0,error:zN(i,`firstName`)}),(0,L.jsx)(ab,{name:`lastName`,type:`text`,label:`Last name`,placeholder:`Last name`,required:!0,error:zN(i,`lastName`)}),(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,placeholder:`name@domain.com`,required:!0,error:zN(i,`email`)}),(0,L.jsx)(ov,{name:`password`,label:`Password`,autoComplete:`off`,required:!0,error:zN(i,`password`)})]}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(cp,{id:`remember`,name:`remember`,label:`Remember me`,size:`xs`,style:{lineHeight:1},pt:`md`,pb:`xs`}),(0,L.jsx)(WM,{fullWidth:!0,children:`Register Account`}),(0,L.jsxs)(U,{c:`dimmed`,size:`xs`,pt:`lg`,ta:`center`,children:[`By clicking "Register Account" you agree to the Medplum`,` `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/privacy`,children:`Privacy\xA0Policy`}),` and `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/terms`,children:`Terms\xA0of\xA0Service`}),`.`]}),(0,L.jsxs)(U,{c:`dimmed`,size:`xs`,ta:`center`,children:[`This site is protected by reCAPTCHA and the Google`,` `,(0,L.jsx)(Nd,{href:`https://policies.google.com/privacy`,children:`Privacy\xA0Policy`}),` and `,(0,L.jsx)(Nd,{href:`https://policies.google.com/terms`,children:`Terms\xA0of\xA0Service`}),` apply.`]})]})]})}function $N(e){let{type:t,projectId:n,clientId:r,googleClientId:i,recaptchaSiteKey:a,onSuccess:o}=e,s=Q(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)();(0,b.useEffect)(()=>{t===`patient`&&c&&s.startNewPatient({login:c,projectId:n}).then(e=>s.processCode(e.code)).then(()=>o()).catch(e=>d(Ix(e)))},[s,t,n,c,o]);function f(e){e.code?s.processCode(e.code).then(()=>o()).catch(e=>d(Ix(e))):e.login&&l(e.login)}return(0,L.jsxs)(LN,{width:400,px:`xl`,py:`xl`,bdrs:`md`,children:[(0,L.jsx)(GN,{issues:BN(u,void 0),mb:`lg`}),!c&&(0,L.jsx)(QN,{projectId:n,clientId:r,googleClientId:i,recaptchaSiteKey:a,handleAuthResponse:f,children:e.children}),c&&t===`project`&&(0,L.jsx)(KN,{login:c,handleAuthResponse:f})]})}function eP(e){let{projectId:t,recaptchaSiteKey:n,onSuccess:r,onSignIn:i,onRegister:a}=e,o=Q(),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(!1);return(0,b.useEffect)(()=>{n&&XN(n)},[n]),(0,L.jsx)(LN,{width:400,px:`xl`,py:`xl`,bdrs:`md`,children:(0,L.jsxs)(UM,{onSubmit:async e=>{c(void 0);try{let i=``;n&&(i=await ZN(n)),await o.post(`auth/resetpassword`,{...e,projectId:t,recaptchaToken:i}),u(!0),r?.()}catch(e){c(Ix(e))}},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Reset your password`})]}),(0,L.jsx)(GN,{issues:BN(s,void 0),mb:`lg`}),!l&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(K,{gap:`sm`,mb:`md`,children:(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,placeholder:`name@domain.com`,required:!0,autoFocus:!0,error:zN(s,`email`)})}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(WM,{fullWidth:!0,children:`Reset Password`}),i&&(0,L.jsx)(U,{size:`sm`,mt:`lg`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:(0,L.jsx)(Nd,{onClick:i,children:`Back to Sign In`})}),a&&(0,L.jsxs)(U,{size:`sm`,mt:`none`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:[`Don't have an account? `,(0,L.jsx)(Nd,{onClick:a,children:`Sign Up`})]})]})]}),l&&(0,L.jsx)(U,{c:`dimmed`,size:`sm`,ta:`center`,mt:`md`,children:`If the account exists on our system, a password reset email will be sent.`})]})})}function tP(e){let{id:t,secret:n,onSuccess:r,onSignIn:i}=e,a=Q(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(!1);return(0,L.jsxs)(LN,{width:450,children:[(0,L.jsx)(GN,{issues:BN(o,void 0)}),(0,L.jsxs)(UM,{onSubmit:e=>{if(e.password!==e.confirmPassword){s(Ox(`Passwords do not match`,`confirmPassword`));return}s(void 0),a.post(`auth/setpassword`,{id:t,secret:n,password:e.password}).then(()=>{l(!0),r?.()}).catch(e=>s(Ix(e)))},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{children:`Set password`})]}),!c&&(0,L.jsxs)(K,{children:[(0,L.jsx)(ov,{name:`password`,label:`New password`,required:!0,error:zN(o,`password`)}),(0,L.jsx)(ov,{name:`confirmPassword`,label:`Confirm new password`,required:!0,error:zN(o,`confirmPassword`)}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`Set password`})})]}),c&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[`Password set. You can now\xA0`,i?(0,L.jsx)(Nd,{component:`button`,type:`button`,onClick:i,children:`sign in`}):`sign in`,`.`]})]})]})}function nP(e){let[t,n]=(0,b.useState)();return t?(0,L.jsx)(iP,{email:t,resetEmail:()=>n(void 0),...e}):(0,L.jsx)(rP,{setEmail:n,...e})}function rP(e){let{setEmail:t,onRegister:n,handleAuthResponse:r,children:i,disableEmailAuth:a,...o}=e,s=Q(),c=!e.disableGoogleAuth&&YN(e.googleClientId),[l,u]=(0,b.useState)(),d=BN(l,void 0),f=(0,b.useCallback)(async e=>{if(!e.authorizeUrl)return!1;let t=JSON.stringify({...await s.ensureCodeChallenge(o),domain:e.domain,returnTo:xE.getLocation()}),n=new URL(e.authorizeUrl);return n.searchParams.set(`state`,t),xE.assign(n.toString()),!0},[s,o]),p=(0,b.useCallback)(async e=>{await f(await s.post(`auth/method`,{email:e.email}))||t(e.email)},[s,f,t]),m=(0,b.useCallback)(async e=>{try{let t=await s.startGoogleLogin({...o,googleCredential:e.credential});await f(t)||r(t)}catch(e){u(Ix(e))}},[s,o,f,r]);return(0,L.jsxs)(UM,{onSubmit:p,children:[(0,L.jsx)(gd,{direction:`column`,align:`center`,justify:`center`,children:i}),(0,L.jsx)(GN,{issues:d,mb:`lg`}),c&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(B,{style:{minHeight:40},children:(0,L.jsx)(JN,{googleClientId:c,handleGoogleCredential:m})}),!a&&(0,L.jsx)(um,{label:`or`,labelPosition:`center`,my:`lg`})]}),!a&&(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,mb:`md`,placeholder:`name@domain.com`,required:!0,autoFocus:!0,error:zN(l,`email`),"data-testid":`auth.email`}),(0,L.jsxs)(K,{gap:`xs`,children:[!a&&(0,L.jsx)(WM,{fullWidth:!0,children:`Continue`}),n&&(0,L.jsxs)(U,{size:`sm`,mt:`lg`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:[`Don’t have an account? `,(0,L.jsx)(Nd,{onClick:n,children:`Register`})]})]})]})}function iP(e){let{onForgotPassword:t,handleAuthResponse:n,children:r,...i}=e,a=Q(),[o,s]=(0,b.useState)(),c=BN(o,void 0);return(0,L.jsxs)(UM,{onSubmit:(0,b.useCallback)(e=>{a.startLogin({...i,password:e.password,remember:e.remember===`on`}).then(n).catch(e=>s(Ix(e)))},[a,i,n]),children:[(0,L.jsx)(gd,{direction:`column`,align:`center`,justify:`center`,children:r}),(0,L.jsx)(GN,{issues:c,mb:`lg`}),(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(ab,{label:`Email`,value:e.email,disabled:!0,rightSectionWidth:36,rightSection:(0,L.jsx)(hu,{variant:`subtle`,color:`gray`,onClick:e.resetEmail,"aria-label":`Change email`,children:(0,L.jsx)(BA,{size:`1rem`,stroke:1.5})})}),(0,L.jsx)(ov,{name:`password`,label:`Password`,autoComplete:`off`,required:!0,autoFocus:!0,error:zN(o,`password`),"data-testid":`auth.password`})]}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(cp,{id:`remember`,name:`remember`,label:`Remember me`,size:`xs`,style:{lineHeight:1},pt:`md`,pb:`xs`}),(0,L.jsx)(WM,{children:`Sign In`}),t&&(0,L.jsx)(U,{size:`sm`,mt:`lg`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:(0,L.jsx)(Nd,{onClick:t,children:`Reset Password`})})]})]})}var aP={option:`_option_18k89_1`,iconBox:`_iconBox_18k89_9`};function oP(e){let t=Q(),n=Ff(),[r,i]=(0,b.useState)(``),[a,o]=(0,b.useState)();function s(e){return!!e?.toLowerCase()?.includes(r.toLowerCase())}function c(e){return s(e.profile?.display)||s(e.project?.display)||s(sP(e))}function l(n){t.post(`auth/profile`,{login:e.login,profile:n}).then(e.handleAuthResponse).catch(e=>o(Ix(e)))}let u=e.memberships.filter(c).slice(0,10).map(e=>(0,L.jsx)(Rf.Option,{value:e.id,className:aP.option,children:(0,L.jsx)(cP,{...e})},e.id));return(0,L.jsxs)(K,{gap:`0`,children:[(0,L.jsxs)(gd,{justify:`center`,align:`center`,direction:`column`,wrap:`nowrap`,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Choose a Project`})]}),(0,L.jsx)(GN,{outcome:a,mb:`lg`}),(0,L.jsxs)(Rf,{store:n,onOptionSubmit:l,children:[(0,L.jsx)(Rf.EventsTarget,{children:(0,L.jsx)(ab,{placeholder:`Search`,value:r,mb:`md`,autoFocus:!0,leftSection:(0,L.jsx)(XA,{size:16}),onChange:e=>{i(e.currentTarget.value),n.updateSelectedOptionIndex()}})}),(0,L.jsx)(`div`,{children:(0,L.jsx)(Rf.Options,{style:{marginLeft:`-10px`,marginRight:`-10px`,marginBottom:`-10px`},children:u.length>0?u:(0,L.jsx)(Rf.Empty,{children:`Nothing found...`})})})]}),(0,L.jsx)(U,{size:`sm`,ta:`center`,mt:`md`,children:(0,L.jsx)(Nd,{component:`button`,type:`button`,onClick:()=>{window.location.href=`/signin?project=new&login=${e.login}`},children:`Create a new project`})})]})}function sP(e){return e.identifier?.find(e=>e.system===`https://medplum.com/identifier/label`)?.value}function cP(e){let t=sP(e);return(0,L.jsxs)(H,{gap:`xs`,align:`center`,children:[(0,L.jsx)(B,{className:aP.iconBox,children:(0,L.jsx)(eA,{size:16,stroke:2})}),(0,L.jsxs)(`div`,{children:[(0,L.jsxs)(U,{size:`sm`,fw:500,children:[e.project?.display,` `,t?` - ${t}`:``]}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:e.profile?.display})]})]})}var lP=/^patient\/Condition\.(?:\*|c?r?u?d?s?)$/,uP=`?category=http://terminology.hl7.org/CodeSystem/condition-category|encounter-diagnosis`,dP=`?category=http://terminology.hl7.org/CodeSystem/condition-category|problem-list-item`,fP=`?category=http://hl7.org/fhir/us/core/CodeSystem/condition-category|health-concern`,pP=/^patient\/Observation\.(?:\*|c?r?u?d?s?)$/,mP=`?category=http://hl7.org/fhir/us/core/CodeSystem/us-core-observation-category|clinical-test`,hP=`?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory`,gP=`?category=http://terminology.hl7.org/CodeSystem/observation-category|social-history`,_P=`?category=http://hl7.org/fhir/us/core/CodeSystem/us-core-category|sdoh`,vP=`?category=http://terminology.hl7.org/CodeSystem/observation-category|survey`,yP=`?category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs`;function bP(e){let t=Q();return(0,L.jsx)(UM,{onSubmit:n=>{t.post(`auth/scope`,{login:e.login,scope:Object.keys(n).join(` `)}).then(e.handleAuthResponse).catch(console.log)},children:(0,L.jsxs)(K,{children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Choose scope`})]}),(0,L.jsx)(K,{children:(e.scope??`openid`).split(` `).map(e=>{let t;return lP.test(e)?t=[e+uP,e+dP,e+fP]:pP.test(e)&&(t=[e+mP,e+hP,e+gP,e+_P,e+vP,e+yP]),(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(cp,{id:e,name:e,label:e,defaultChecked:!0},e),t?.map(e=>(0,L.jsx)(cp,{id:e,name:e,label:e},e))]},e+`_group`)})}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(WM,{fullWidth:!0,children:`Set Scope`})})]})})}function xP(e){let{login:t,chooseScopes:n,onSuccess:r,onForgotPassword:i,onRegister:a,onCode:o,...s}=e,c=Q(),[l,u]=(0,b.useState)(),d=(0,b.useRef)(!1),[f,p]=(0,b.useState)(!1),[m,h]=(0,b.useState)(),[g,_]=(0,b.useState)(!1),[v,y]=(0,b.useState)(),x=(0,b.useCallback)(e=>{o?o(e):c.processCode(e).then(()=>{r&&r()}).catch(e=>Y({color:`red`,message:Lx(e)}))},[c,o,r]),S=(0,b.useCallback)(e=>{p(!!e.mfaEnrollRequired),h(e.enrollQrCode),_(!!e.mfaRequired),e.login&&u(e.login),e.memberships&&y(e.memberships),e.code&&(n?y(void 0):x(e.code))},[n,x]),C=(0,b.useCallback)(e=>{x(e.code)},[x]);return(0,b.useEffect)(()=>{t&&!d.current&&!l&&(d.current=!0,c.get(`auth/login/`+t).then(S).catch(e=>Y({color:`red`,message:Lx(e)})))},[c,t,d,l,S]),(0,L.jsx)(LN,{width:400,px:`xl`,py:`xl`,bdrs:`md`,children:l?f&&m?(0,L.jsx)(WN,{title:`Enroll in MFA`,description:`Scan this QR code with your authenticator app.`,buttonText:`Enroll`,qrCodeUrl:m,onSubmit:async e=>{S(await c.post(`auth/mfa/login-enroll`,{login:l,token:e.token}))}}):g?(0,L.jsx)(WN,{title:`Enter MFA code`,description:`Enter the code from your authenticator app.`,buttonText:`Submit Code`,onSubmit:async e=>{S(await c.post(`auth/mfa/verify`,{login:l,token:e.token}))}}):e.projectId===`new`?(0,L.jsx)(KN,{login:l,handleAuthResponse:S}):v?(0,L.jsx)(oP,{login:l,memberships:v,handleAuthResponse:S}):e.chooseScopes?(0,L.jsx)(bP,{login:l,scope:e.scope,handleAuthResponse:C}):(0,L.jsx)(`div`,{children:`Success`}):(0,L.jsx)(nP,{onForgotPassword:i,onRegister:a,handleAuthResponse:S,disableGoogleAuth:e.disableGoogleAuth,disableEmailAuth:e.disableEmailAuth,...s,children:e.children})})}function SP(e){return(0,L.jsx)(L.Fragment,{children:ow(e.value)})}function CP(e){return(0,L.jsx)(L.Fragment,{children:sw(e.value,e.includeCode)})}function wP(e){let t=e.value;if(!t)return null;let n=[];return t.value&&n.push(t.value),(t.use||t.system)&&(n.push(` [`),t.use&&n.push(t.use),t.use&&t.system&&n.push(` `),t.system&&n.push(t.system),n.push(`]`)),(0,L.jsx)(L.Fragment,{children:n.join(``).trim()})}function TP(e){let t=e.value;return t?(0,L.jsxs)(L.Fragment,{children:[t.name,t.name&&`: `,t.telecom?.map(e=>(0,L.jsx)(wP,{value:e},`telecom-${t.name}-${e.value}`))]}):null}function EP(e,t,n){let r=yS(e,t,{profileUrl:n});return r?Array.isArray(r)?[r.map(e=>e.value),r[0].type]:[r.value,r.type]:[void 0,`undefined`]}function DP(e,t,n){let r=bS(e,t,n);return r?Array.isArray(r)?[r.map(e=>e.value),r[0].type]:[r.value,r.type]:[void 0,`undefined`]}function OP(e){let{elementDefinitionType:t}=e,n=Q(),r=(0,b.useContext)(Fk),[i,a]=(0,b.useState)($x(`Extension`)),o=(0,b.useMemo)(()=>{if(sC(t?.profile))return t.profile[0]},[t]),[s,c]=(0,b.useState)(o!==void 0);if((0,b.useEffect)(()=>{o&&(c(!0),n.requestProfileSchema(o).then(()=>{let e=tS(o);c(!1),e&&a(e)}).catch(e=>{c(!1),console.warn(e)}))},[n,o]),o&&(s||!eS(o)))return(0,L.jsx)(`div`,{children:`Loading...`});if(i.elements[`value[x]`]?.max!==0){let[t,n]=EP({type:`Extension`,value:e.value},`value[x]`,o??r.profileUrl);return(0,L.jsx)(VP,{propertyType:n,value:t})}return(0,L.jsx)(GP,{path:e.path,value:{type:i.type,value:e.value},compact:e.compact,ignoreMissingValues:e.ignoreMissingValues,link:e.link,profileUrl:o})}function kP(e){return(0,L.jsxs)(`div`,{children:[e.value?.system,`: `,e.value?.value]})}function AP(e){return(0,L.jsx)(L.Fragment,{children:aw(e.value)})}function jP(e){return(0,L.jsx)(L.Fragment,{children:iw(e.value,e.precision)})}function MP(e){return(0,L.jsx)(L.Fragment,{children:rw(e.value,e.precision,e.exclusive)})}function NP(e){let t=e.value;return t?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jP,{value:t.numerator,precision:e.precision}),`\xA0/\xA0`,(0,L.jsx)(jP,{value:t.denominator,precision:e.precision})]}):null}function PP(e){if(!e.value)return null;let t=e.value.display||e.value.reference||nC(e.value);return e.link!==!1&&e.value.reference?(0,L.jsx)(bj,{to:e.value,children:t}):(0,L.jsx)(L.Fragment,{children:t})}function FP(e,t,n,r){if(!sC(n?.slices))return[e];let i=Array(t.length+1);for(let e=0;e<i.length;e++)i[e]=[];for(let a of e){let e=XD(a,t,n.discriminator,r),o=e?t.findIndex(t=>t.name===e):-1;o===-1&&(o=t.length),i[o].push(a)}return i}async function IP({medplum:e,property:t}){return new Promise((n,r)=>{if(!t.slicing){n([]);return}let i=[],a=[],o=[];for(let n of t.slicing.slices){if(!JD(n)){console.debug(`Unsupported slice definition`,n);continue}let t;sC(n.elements)||(t=n.type[0]?.profile?.[0]),i.push(n),a.push(t),t&&o.push(e.requestProfileSchema(t))}Promise.all(o).then(()=>{for(let e=0;e<i.length;e++){let t=i[e],n=a[e];n&&(t.typeSchema=tS(n))}n(i)}).catch(r)})}function LP(e,t,n){return t===void 0?n:(0,L.jsx)(e,{value:t,children:n})}function RP(e){let{slice:t,property:n}=e,r=t.typeSchema?.elements??t.elements,i=(0,b.useContext)(Fk),a=(0,b.useMemo)(()=>{if(sC(r))return UD({parentContext:i,elements:r,path:e.path,profileUrl:t.typeSchema?.url})},[i,e.path,t.typeSchema?.url,r]);return LP(Fk.Provider,a,(0,L.jsx)(L.Fragment,{children:e.value.map((r,i)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(VP,{property:n,path:e.path,arrayElement:!0,elementDefinitionType:t.type[0],propertyType:t.type[0].code,value:r,ignoreMissingValues:e.ignoreMissingValues,link:e.link})},`${i}-${e.value.length}`))}))}var zP=50;function BP(e){let{property:t,propertyType:n}=e,r=Q(),i=(0,b.useMemo)(()=>Array.isArray(e.values)?e.values:[],[e.values]),[a,o]=(0,b.useState)(!0),[s,c]=(0,b.useState)([]),[l,u]=(0,b.useState)(()=>[i]),[d,f]=(0,b.useState)(0),p=(0,b.useContext)(Fk);if((0,b.useEffect)(()=>{IP({medplum:r,property:t}).then(e=>{f(i.length),c(e),u(FP(i.slice(0,zP),e,t.slicing,p.profileUrl)),o(!1)}).catch(e=>{console.error(e),o(!1)})},[r,t,p.profileUrl,u,i]),a)return(0,L.jsx)(`div`,{children:`Loading...`});let m;if(t.type[0]?.code!==`Extension`){let r=l[s.length],i=r.map((i,a)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(VP,{path:e.path,arrayElement:!0,property:t,propertyType:n,value:i,ignoreMissingValues:e.ignoreMissingValues,link:e.link})},`${a}-${r.length}`));if(e.includeDescriptionListEntry){if(!sC(e.path))throw Error(`props.path is required when includeDescriptionListEntry is true`);m=(0,L.jsx)(ON,{term:bw(e.path.split(`.`).pop()),children:i})}else m=(0,L.jsx)(L.Fragment,{children:i})}return(0,L.jsxs)(L.Fragment,{children:[s.map((n,r)=>{if(!e.path)throw Error(`Displaying a resource property with slices of type ${e.propertyType} requires path`);let i=(0,L.jsx)(RP,{path:e.path,slice:n,property:t,value:l[r],ignoreMissingValues:e.ignoreMissingValues,link:e.link},n.name);return e.includeDescriptionListEntry&&(i=(0,L.jsx)(ON,{term:bw(n.name),children:i},n.name)),i}),m,d>zP&&(0,L.jsx)(H,{justify:`right`,children:(0,L.jsxs)(U,{children:[`... `,d,` total values`]})})]})}function VP(e){let{property:t,propertyType:n,value:r}=e;if(t?.path?.endsWith(`.id`))return(0,L.jsxs)(gd,{gap:3,align:`center`,children:[r,!oC(r)&&(0,L.jsx)(om,{value:r,timeout:2e3,children:({copied:e,copy:t})=>(0,L.jsx)(Hv,{label:e?`Copied`:`Copy`,withArrow:!0,position:`right`,children:(0,L.jsx)(hu,{variant:`subtle`,color:e?`teal`:`gray`,onClick:t,children:e?(0,L.jsx)(aA,{size:`1rem`}):(0,L.jsx)(pA,{size:`1rem`})})})})]});if(t&&(t.isArray||t.max>1)&&!e.arrayElement)return n===X.Attachment?(0,L.jsx)(kN,{values:r,maxWidth:e.maxWidth,includeDescriptionListEntry:e.includeArrayDescriptionListEntry,property:t,path:e.path}):(0,L.jsx)(BP,{path:e.path,property:t,propertyType:n,values:r,includeDescriptionListEntry:e.includeArrayDescriptionListEntry,ignoreMissingValues:e.ignoreMissingValues,link:e.link});switch(n){case X.boolean:return(0,L.jsx)(L.Fragment,{children:r===void 0?``:(!!r).toString()});case X.SystemString:case X.string:return e.property?.path?.toLowerCase().includes(`secret`)?(0,L.jsx)(HP,{value:r}):(0,L.jsx)(`div`,{style:{whiteSpace:`pre-wrap`},children:r});case X.code:case X.date:case X.decimal:case X.id:case X.integer:case X.positiveInt:case X.unsignedInt:case X.uri:case X.url:case X.xhtml:return(0,L.jsx)(L.Fragment,{children:r});case X.canonical:return(0,L.jsx)(PP,{value:{reference:r},link:e.link});case X.dateTime:case X.instant:return(0,L.jsx)(L.Fragment,{children:XC(r)});case X.time:return(0,L.jsx)(L.Fragment,{children:YC(r)});case X.markdown:return(0,L.jsx)(`pre`,{children:r});case X.Address:return(0,L.jsx)(Mk,{value:r});case X.Annotation:return(0,L.jsx)(L.Fragment,{children:r?.text});case X.Attachment:return(0,L.jsx)(wN,{value:r,maxWidth:e.maxWidth});case X.CodeableConcept:return(0,L.jsx)(SP,{value:r});case X.Coding:return(0,L.jsx)(CP,{value:r});case X.ContactDetail:return(0,L.jsx)(TP,{value:r});case X.ContactPoint:return(0,L.jsx)(wP,{value:r});case X.HumanName:return(0,L.jsx)(Oj,{value:r});case X.Identifier:return(0,L.jsx)(kP,{value:r});case X.Money:return(0,L.jsx)(AP,{value:r});case X.Period:return(0,L.jsx)(L.Fragment,{children:ZC(r)});case X.Quantity:case X.Duration:return(0,L.jsx)(jP,{value:r});case X.Range:return(0,L.jsx)(MP,{value:r});case X.Ratio:return(0,L.jsx)(NP,{value:r});case X.Reference:return(0,L.jsx)(PP,{value:r,link:e.link});case X.Timing:return(0,L.jsx)(L.Fragment,{children:tw(r)});case X.Dosage:case X.UsageContext:if(!e.path)throw Error(`Displaying property of type ${e.propertyType} requires path`);return(0,L.jsx)(GP,{path:e.path,value:{type:n,value:r},compact:!0,ignoreMissingValues:e.ignoreMissingValues});case X.Extension:if(!e.path)throw Error(`Displaying property of type ${e.propertyType} requires path`);return(0,L.jsx)(OP,{path:e.path,value:r,compact:!0,ignoreMissingValues:e.ignoreMissingValues,elementDefinitionType:e.elementDefinitionType});default:if(!t)throw Error(`Displaying property of type ${e.propertyType} requires element schema`);if(!e.path)throw Error(`Displaying property of type ${e.propertyType} requires path`);return(0,L.jsx)(GP,{path:e.path,value:{type:t.type[0].code,value:r},compact:!0,ignoreMissingValues:e.ignoreMissingValues})}}function HP(e){let[t,n]=(0,b.useState)(!1),r=e.value??``,i=!oC(r),a=`•`.repeat(8);return(0,L.jsxs)(gd,{gap:3,align:`center`,children:[t?(0,L.jsx)(`div`,{style:{whiteSpace:`pre-wrap`},children:r}):(0,L.jsx)(`div`,{style:{whiteSpace:`pre-wrap`},"aria-hidden":`true`,children:i?a:``}),i&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(om,{value:e.value,timeout:2e3,children:({copied:e,copy:t})=>(0,L.jsx)(Hv,{label:e?`Copied`:`Copy secret`,withArrow:!0,position:`right`,children:(0,L.jsx)(hu,{variant:`subtle`,color:e?`teal`:`gray`,onClick:t,"aria-label":e?`Copied`:`Copy secret`,children:e?(0,L.jsx)(aA,{size:`1rem`}):(0,L.jsx)(pA,{size:`1rem`})})})}),(0,L.jsx)(Hv,{label:t?`Hide secret`:`Show secret`,withArrow:!0,position:`right`,children:(0,L.jsx)(hu,{variant:`subtle`,color:`gray`,onClick:()=>n(!t),"aria-label":t?`Hide secret`:`Show secret`,children:t?(0,L.jsx)(xA,{size:`1rem`}):(0,L.jsx)(SA,{size:`1rem`})})})]})]})}var UP=[`extension`,`modifierExtension`],WP=Nk.filter(e=>!UP.includes(e));function GP(e){let t=e.value,{value:n,type:r}=t,i=(0,b.useContext)(Fk),a=e.profileUrl??i?.profileUrl,o=(0,b.useMemo)(()=>Qx(r,a),[a,r]),s=(0,b.useMemo)(()=>{if(o)return UD({parentContext:i,elements:o.elements,path:e.path,profileUrl:o.url,accessPolicyResource:e.accessPolicyResource})},[o,i,e.path,e.accessPolicyResource]);if(oC(n))return null;if(!o)return(0,L.jsxs)(`div`,{children:[r,`\xA0not implemented`]});if(typeof n==`object`&&`name`in n&&Object.keys(n).length===1&&typeof n.name==`string`)return(0,L.jsx)(`div`,{children:n.name});let c=s??i;return LP(Fk.Provider,s,(0,L.jsx)(DN,{compact:e.compact,children:Object.entries(c.elements).map(([n,r])=>{if(UP.includes(n)&&oC(r.slicing?.slices)||WP.includes(n)||Pk.includes(n)&&r.path.split(`.`).length===2||n.includes(`.`))return null;let[i,a]=EP(t,n,c.profileUrl);if((e.ignoreMissingValues||r.max===0)&&oC(i)||e.path.endsWith(`.extension`)&&(n===`url`||n===`id`))return null;let o=r.max>1||r.isArray,s=(0,L.jsx)(VP,{property:r,propertyType:a,path:e.path+`.`+n,value:i,ignoreMissingValues:e.ignoreMissingValues,includeArrayDescriptionListEntry:o,link:e.link},n);return o?s:(0,L.jsx)(ON,{term:bw(n),children:s},n)})}))}var KP={dimmed:`_dimmed_11me5_1`,preserveBreaks:`_preserveBreaks_11me5_5`},qP=`Read Only`;function JP(e,t){return e?(0,L.jsx)(Hv.Floating,{label:e,children:t}):t}function YP(e){let{debugMode:t}=(0,b.useContext)(Fk),n;return n=t&&e.fhirPath?`${e.title} - ${e.fhirPath}`:e.title,JP(e?.readonly?qP:void 0,(0,L.jsxs)(H,{wrap:`nowrap`,"data-testid":e.testId,children:[(0,L.jsx)(`div`,{children:e.children}),(0,L.jsx)(`div`,{children:(0,L.jsx)(ud.Wrapper,{id:e.htmlFor,label:n,classNames:{label:e?.readonly?KP.dimmed:void 0},description:e.description,withAsterisk:e.withAsterisk,children:null})})]}))}function XP(e){let{debugMode:t}=(0,b.useContext)(Fk),n;return n=t&&e.fhirPath?`${e.title} - ${e.fhirPath}`:e.title,JP(e?.readonly?qP:void 0,(0,L.jsx)(ud.Wrapper,{id:e.htmlFor,label:n,classNames:{label:jn({[KP.dimmed]:e?.readonly},KP.preserveBreaks)},description:e.description,withAsterisk:e.withAsterisk,error:zN(e.outcome,e.errorExpression??e.htmlFor),"data-testid":e.testId,children:e.children}))}function ZP(e,t,n,r,i){let a=r.type;if(a.length>1)for(let n of a){let r=t.replace(`[x]`,EC(n.code));r in e&&delete e[r]}return oC(i)?e[n]=void 0:e[n]=i,e}function QP(e){return!!e&&!oC(e.url)&&!oC(e.name)}function $P(e){let{defaultValue:t,onChange:n,withHelpText:r,outcome:i,path:a,valuePath:o,...s}=e,[c,l]=(0,b.useState)(t);function u(e){let t=tF(e);l(t),n&&n(t)}return(0,L.jsx)(ZM,{defaultValue:c&&eF(c),onChange:u,withHelpText:r??!0,...s})}function eF(e){return e.coding?.map(e=>({system:e.system,code:e.code,display:e.display}))}function tF(e){if(e.length!==0)return{coding:e.map(e=>({system:e.system,code:e.code,display:e.display}))}}function nF(e){let{defaultValue:t,onChange:n,withHelpText:r,response:i,...a}=e,[o,s]=(0,b.useState)(i?.answer?.[0]?.valueCoding??t);function c(e){let t=e[0],r=t&&iF(t);s(r),n&&n(r)}return(0,L.jsx)(ZM,{defaultValue:o?rF(o):void 0,maxValues:1,onChange:c,withHelpText:r??!0,...a})}function rF(e){return{system:e.system,code:e.code,display:e.display}}function iF(e){return{system:e.system,code:e.code,display:e.display}}function aF(e){let{path:t,outcome:n}=e,{elementsByPath:r,getExtendedProps:i}=(0,b.useContext)(Fk),[a,o]=(0,b.useState)(e.defaultValue),s=(0,b.useRef)(a);s.current=a;let[c,l,u]=(0,b.useMemo)(()=>[`system`,`use`,`value`].map(e=>r[t+`.`+e]),[r,t]),[d,f,p]=(0,b.useMemo)(()=>[`system`,`use`,`value`].map(e=>i(t+`.`+e)),[i,t]);function m(t){t&&Object.keys(t).length===0&&(t=void 0),o(t),e.onChange&&e.onChange(t)}function h(e){let t={...s.current,system:e};e||delete t.system,m(t)}function g(e){let t={...s.current,use:e};e||delete t.use,m(t)}function _(e){let t={...s.current,value:e};e||delete t.value,m(t)}let v=e.valuePath??t;return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,align:`flex-start`,children:[(0,L.jsx)(Tg,{disabled:e.disabled||d?.readonly,"data-testid":`system`,defaultValue:a?.system,required:(c?.min??0)>0,onChange:e=>h(e.currentTarget.value),data:[``,`email`,`phone`,`fax`,`pager`,`sms`,`other`],error:zN(n,v+`.system`)}),(0,L.jsx)(Tg,{disabled:e.disabled||f?.readonly,"data-testid":`use`,defaultValue:a?.use,required:(l?.min??0)>0,onChange:e=>g(e.currentTarget.value),data:[``,`home`,`work`,`temp`,`old`,`mobile`],error:zN(n,v+`.use`)}),(0,L.jsx)(ab,{disabled:e.disabled||p?.readonly,placeholder:`Value`,defaultValue:a?.value,required:(u?.min??0)>0,onChange:e=>_(e.currentTarget.value),error:zN(n,v+`.value`)})]})}function oF(e){let[t,n]=(0,b.useState)(e.defaultValue),r=(0,b.useRef)(t);r.current=t;let{getExtendedProps:i}=(0,b.useContext)(Fk),[a,o]=(0,b.useMemo)(()=>[`name`,`telecom`].map(t=>i(e.path+`.`+t)),[i,e.path]);function s(t){n(t),e.onChange&&e.onChange(t)}function c(e){let t={...r.current,name:e};e||delete t.name,s(t)}function l(e){let t={...r.current,telecom:e&&[e]};e||delete t.telecom,s(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(ab,{disabled:e.disabled||a?.readonly,"data-testid":e.name+`-name`,name:e.name+`-name`,placeholder:`Name`,style:{width:180},defaultValue:t?.name,onChange:e=>c(e.currentTarget.value)}),(0,L.jsx)(aF,{disabled:e.disabled||o?.readonly,name:e.name+`-telecom`,path:e.path+`.telecom`,defaultValue:t?.telecom?.[0],onChange:l,outcome:e.outcome})]})}function sF(e){if(!e)return``;let t=new Date(e);return JC(t)?t.toLocaleDateString(`sv`)+`T`+t.toLocaleTimeString(`sv`):``}function cF(e){if(!e)return``;let t=new Date(e);return JC(t)?t.toISOString():``}function lF(e){return(0,L.jsx)(ab,{id:e.name,name:e.name,label:e.label,"data-autofocus":e.autoFocus,"data-testid":e[`data-testid`]??e.name,placeholder:e.placeholder,required:e.required,disabled:e.disabled,type:uF(),step:1,defaultValue:sF(e.defaultValue),autoFocus:e.autoFocus,error:zN(e.outcome,e.name),onChange:t=>{if(e.onChange){let n=t.currentTarget.value;e.onChange(cF(n))}}})}function uF(){return`datetime-local`}function dF(e){let{propertyType:t}=e,n=Q(),r=(0,b.useMemo)(()=>{if(sC(t.profile))return t.profile[0]},[t]),[i,a]=(0,b.useState)(r!==void 0);return(0,b.useEffect)(()=>{r&&(a(!0),n.requestProfileSchema(r).then(()=>a(!1)).catch(e=>{a(!1),console.warn(e)}))},[n,r]),r&&(i||!eS(r))?(0,L.jsx)(`div`,{children:`Loading...`}):(0,L.jsx)(ZF,{profileUrl:r,path:e.path,typeName:`Extension`,defaultValue:e.defaultValue,onChange:e.onChange})}function fF(e){let{outcome:t,path:n}=e,[r,i]=(0,b.useState)(e.defaultValue),{getExtendedProps:a}=(0,b.useContext)(Fk),[o,s,c,l,u]=(0,b.useMemo)(()=>[`use`,`prefix`,`given`,`family`,`suffix`].map(t=>a(e.path+`.`+t)),[a,e.path]);function d(t){i(t),e.onChange&&e.onChange(t)}function f(e){d({...r,use:e||void 0})}function p(e){d({...r,prefix:e?e.split(` `):void 0})}function m(e){d({...r,given:e?e.split(` `):void 0})}function h(e){d({...r,family:e||void 0})}function g(e){d({...r,suffix:e?e.split(` `):void 0})}let _=e.valuePath??n;return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(Tg,{disabled:e.disabled||o?.readonly,defaultValue:r?.use,name:e.name+`-use`,"data-testid":`use`,onChange:e=>f(e.currentTarget.value),data:[``,`temp`,`old`,`usual`,`official`,`nickname`,`anonymous`,`maiden`],error:zN(t,_+`.use`)}),(0,L.jsx)(ab,{disabled:e.disabled||s?.readonly,placeholder:`Prefix`,name:e.name+`-prefix`,defaultValue:r?.prefix?.join(` `),onChange:e=>p(e.currentTarget.value),error:zN(t,_+`.prefix`)}),(0,L.jsx)(ab,{disabled:e.disabled||c?.readonly,placeholder:`Given`,name:e.name+`-given`,defaultValue:r?.given?.join(` `),onChange:e=>m(e.currentTarget.value),error:zN(t,_+`.given`)}),(0,L.jsx)(ab,{disabled:e.disabled||l?.readonly,name:e.name+`-family`,placeholder:`Family`,defaultValue:r?.family,onChange:e=>h(e.currentTarget.value),error:zN(t,_+`.family`)}),(0,L.jsx)(ab,{disabled:e.disabled||u?.readonly,placeholder:`Suffix`,name:e.name+`-suffix`,defaultValue:r?.suffix?.join(` `),onChange:e=>g(e.currentTarget.value),error:zN(t,_+`.suffix`)})]})}function pF(e){let[t,n]=(0,b.useState)(e.defaultValue),{elementsByPath:r,getExtendedProps:i}=(0,b.useContext)(Fk),[a,o]=(0,b.useMemo)(()=>[`system`,`value`].map(t=>r[e.path+`.`+t]),[r,e.path]),[s,c]=(0,b.useMemo)(()=>[`system`,`value`].map(t=>i(e.path+`.`+t)),[i,e.path]);function l(t){n(t),e.onChange&&e.onChange(t)}let u=e.valuePath??e.path;return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,align:`flex-start`,children:[(0,L.jsx)(ab,{disabled:e.disabled||s?.readonly,placeholder:`System`,required:(a?.min??0)>0,defaultValue:t?.system,onChange:e=>l({...t,system:e.currentTarget.value}),error:zN(e.outcome,u+`.system`)}),(0,L.jsx)(ab,{disabled:e.disabled||c?.readonly,placeholder:`Value`,required:(o?.min??0)>0,defaultValue:t?.value,onChange:e=>l({...t,value:e.currentTarget.value}),error:zN(e.outcome,u+`.value`)})]})}var mF=[`USD`,`EUR`,`CAD`,`GBP`,`AUD`];function hF(e){let{onChange:t}=e,[n,r]=(0,b.useState)(e.defaultValue),{getExtendedProps:i}=(0,b.useContext)(Fk),[a,o]=(0,b.useMemo)(()=>[`currency`,`value`].map(t=>i(e.path+`.`+t)),[i,e.path]),s=(0,b.useCallback)(e=>{r(e),t&&t(e)},[t]),c=(0,b.useCallback)(e=>{s({...n,currency:e.currentTarget.value})},[n,s]),l=(0,b.useCallback)(e=>{s({...n,value:e.currentTarget.valueAsNumber})},[n,s]),u=(0,L.jsx)(Tg,{disabled:e.disabled||a?.readonly,defaultValue:n?.currency,data:mF,styles:{input:{fontWeight:500,borderTopLeftRadius:0,borderBottomLeftRadius:0,width:92}},onChange:c});return(0,L.jsx)(ab,{disabled:e.disabled||o?.readonly,type:`number`,name:e.name,label:e.label,placeholder:e.placeholder??`Value`,defaultValue:n?.value?.toString()??`USD`,leftSection:(0,L.jsx)(mA,{size:14}),rightSection:u,rightSectionWidth:92,onChange:l})}function gF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Fk),[i,a]=(0,b.useMemo)(()=>[`start`,`end`].map(t=>r(e.path+`.`+t)),[r,e.path]);function o(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(lF,{disabled:e.disabled||i?.readonly,name:e.name+`.start`,placeholder:`Start`,defaultValue:t?.start,onChange:e=>o({...t,start:e})}),(0,L.jsx)(lF,{disabled:e.disabled||a?.readonly,name:e.name+`.end`,placeholder:`End`,defaultValue:t?.end,onChange:e=>o({...t,end:e})})]})}function _F(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Fk),[i,a,o]=(0,b.useMemo)(()=>[`comparator`,`value`,`unit`].map(t=>r(e.path+`.`+t)),[r,e.path]);function s(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(Tg,{disabled:e.disabled||i?.readonly,style:{width:80},"data-testid":e.name+`-comparator`,defaultValue:t?.comparator,data:[``,`<`,`<=`,`>=`,`>`],onChange:e=>s({...t,comparator:e.currentTarget.value})}),(0,L.jsx)(ab,{disabled:e.disabled||a?.readonly,id:e.name,name:e.name,required:e.required,"data-autofocus":e.autoFocus,"data-testid":e.name+`-value`,type:`number`,placeholder:`Value`,defaultValue:t?.value,autoFocus:e.autoFocus,step:`any`,onWheel:t=>{e.disableWheel&&t.currentTarget.blur()},onChange:e=>{s({...t,value:vF(e.currentTarget.value)})}}),(0,L.jsx)(ab,{disabled:e.disabled||o?.readonly,placeholder:`Unit`,"data-testid":e.name+`-unit`,defaultValue:t?.unit,onChange:e=>s({...t,unit:e.currentTarget.value})})]})}function vF(e){if(e)return Number.parseFloat(e)}function yF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Fk),[i,a]=(0,b.useMemo)(()=>[`low`,`high`].map(t=>r(e.path+`.`+t)),[r,e.path]);function o(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(_F,{path:e.path+`.low`,disabled:e.disabled||i?.readonly,name:e.name+`-low`,defaultValue:t?.low,onChange:e=>o({...t,low:e})}),(0,L.jsx)(_F,{path:e.path+`.high`,disabled:e.disabled||a?.readonly,name:e.name+`-high`,defaultValue:t?.high,onChange:e=>o({...t,high:e})})]})}function bF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Fk),[i,a]=(0,b.useMemo)(()=>[`numerator`,`denominator`].map(t=>r(e.path+`.`+t)),[r,e.path]);function o(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(_F,{path:e.path+`.numerator`,disabled:e.disabled||i?.readonly,name:e.name+`-numerator`,defaultValue:t?.numerator,onChange:e=>o({...t,numerator:e})}),(0,L.jsx)(_F,{path:e.path+`.denominator`,disabled:e.disabled||a?.readonly,name:e.name+`-denominator`,defaultValue:t?.denominator,onChange:e=>o({...t,denominator:e})})]})}var xF={Device:`device-name`,Observation:`code`,Subscription:`criteria`,User:`email:contains`},SF=`AccessPolicy.Account.ActivityDefinition.Bot.CapabilityStatement.CareTeam.ClientApplication.CodeSystem.CompartmentDefinition.ConceptMap.EffectEvidenceSynthesis.Endpoint.EventDefinition.Evidence.EvidenceVariable.ExampleScenario.GraphDefinition.Group.HealthcareService.ImplementationGuide.InsurancePlan.Library.Location.Measure.MedicinalProduct.MessageDefinition.NamingSystem.OperationDefinition.Organization.Patient.Person.PlanDefinition.Practitioner.Project.Questionnaire.RelatedPerson.ResearchDefinition.ResearchElementDefinition.ResearchStudy.RiskEvidenceSynthesis.SearchParameter.StructureDefinition.StructureMap.TerminologyCapabilities.TestScript.UserConfiguration.ValueSet`.split(`.`);function CF(e){return{value:GS(e)??``,label:JS(e),resource:e}}function wF(e){let t=Q(),{resourceType:n,searchCriteria:r}=e,[i,a]=(0,b.useState)(),o=zO(e.defaultValue,a),s=e.itemComponent??TF,c=e.onChange,l=(0,b.useCallback)(async(e,i)=>{let a=EF(n),o=new URLSearchParams({[a]:e??``,_count:`10`,...r});return await t.searchResources(n,o,{signal:i})},[t,n,r]),u=(0,b.useCallback)(e=>{c&&c(e[0])},[c]);return sC(e.defaultValue)&&!i&&!o?null:(0,L.jsx)(Mj,{disabled:e.disabled,name:e.name,label:e.label,error:e.error,required:e.required,itemComponent:s,defaultValue:o,placeholder:e.placeholder,maxValues:1,toOption:CF,loadOptions:l,onChange:u,clearable:!0})}var TF=(0,b.forwardRef)(({label:e,resource:t,active:n,...r},i)=>(0,L.jsx)(`div`,{ref:i,...r,children:(0,L.jsxs)(H,{wrap:`nowrap`,children:[(0,L.jsx)(Ej,{value:t}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{children:e}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:t.birthDate||t.id})]})]})}));function EF(e){return xF[e]??(SF.includes(e)?`name`:`_id`)}function DF(e){let{onChange:t}=e,n=Q(),[r,i]=(0,b.useState)(e.defaultValue),[a,o]=(0,b.useState)(()=>OF(e.targetTypes)),[s,c]=(0,b.useState)(()=>kF(e.defaultValue,a)),l=(0,b.useRef)(new cx),u=(0,b.useMemo)(()=>s?.type===`profile`?{...e.searchCriteria,_profile:s.value}:e.searchCriteria,[e.searchCriteria,s]);(0,b.useEffect)(()=>{let e=!1,t=a?.map(t=>{if(!jF(t))return Promise.resolve(t);e=!0;let r=t.value,i=l.current.get(r);if(i)return i;let a=new aD(AF(n,t.value).then(e=>{let n={...t};return e?sC(e.type)?(n.resourceType=e.type,n.name=e.name,n.title=e.title):(console.error(`StructureDefinition.type missing for ${t.value}`),n.error=`StructureDefinition.type missing`):(console.error(`StructureDefinition not found for ${t.value}`),n.error=`StructureDefinition not found`),n}).catch(e=>(console.error(e),{...t,error:e})));return l.current.set(r,a),a});!t||!e||Promise.all(t).then(e=>{if(o(e),!s)return;let t=e.findIndex(e=>e.value===s.value||e.resourceType===s.resourceType);if(t===-1){console.debug(`defaultValue had unexpected resourceType: ${s.resourceType}`);return}c(e[t])}).catch(console.error)},[n,s,a]);let d=(0,b.useCallback)(e=>{let n=e?WS(e):void 0;i(n),t&&t(n)},[t]),f=(0,b.useMemo)(()=>a?a.map(e=>({value:e.value,label:e.type===`profile`?e.title??e.name??e.resourceType??e.value:e.value})):[],[a]);return(0,L.jsxs)(L.Fragment,{children:[e.name&&(0,L.jsx)(`input`,{type:`hidden`,name:e.name,value:r?.reference??``}),(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[a&&a.length>1&&(0,L.jsx)(Tg,{name:e.name+`-resourceType`,disabled:e.disabled,"data-autofocus":e.autoFocus,"data-testid":`reference-input-resource-type-select`,defaultValue:s?.resourceType,autoFocus:e.autoFocus,onChange:e=>{let t=e.currentTarget.value;c(a.find(e=>e.value===t))},data:f}),!a&&(0,L.jsx)(nN,{disabled:e.disabled,autoFocus:e.autoFocus,testId:`reference-input-resource-type-input`,defaultValue:s?.resourceType,onChange:e=>{c(e?{type:`resourceType`,value:e,resourceType:e}:void 0)},name:e.name+`-resourceType`,placeholder:`Resource Type`}),(0,L.jsx)(wF,{resourceType:s?.resourceType,name:e.name+`-id`,required:e.required,placeholder:e.placeholder,defaultValue:r,searchCriteria:u,onChange:d,disabled:e.disabled})]})]})}function OF(e){if(!e||e.length===0||e.length===1&&e[0]===`Resource`)return;let t=[];for(let n of e)n.includes(`/`)?t.push({type:`profile`,value:n}):t.push({type:`resourceType`,value:n,resourceType:n});return t}function kF(e,t){let n=e?.reference?.split(`/`)[0];if(n)return t?.find(e=>e.resourceType===n)||{type:`resourceType`,value:n,resourceType:n};if(t&&t.length>0)return t[0]}async function AF(e,t){let n=tS(t);if(n)return{type:n.type,name:n.name,title:n.title};let r=`{
|
|
197
|
+
}`.replaceAll(/\s+/g,` `)}function dN(e){let t=[];return e.data.Patients1&&t.push(...e.data.Patients1),e.data.Patients2&&t.push(...e.data.Patients2),e.data.ServiceRequestList&&t.push(...e.data.ServiceRequestList),fN(t)}function fN(e){let t=new Set,n=[];for(let r of e)r.id&&!t.has(r.id)&&(t.add(r.id),n.push(r));return n}function pN(e,t){let n=e.filter(e=>!!e.id).map(e=>({id:e.id,label:e.name?JC(e.name[0]):e.id,description:e.birthDate,leftSection:(0,L.jsx)(Oj,{value:e,radius:`xl`,size:24}),onClick:()=>t(`/Patient/${e.id}`)}));return n.length>0?[{group:`Patients`,actions:n}]:[]}function mN(e,t,n){let r=[],i=t.map(e=>({id:`resource-type-${e.code}`,label:e.display??e.code??``,description:`Resource Type`,onClick:()=>n(`/${e.code}`)}));i.length>0&&r.push({group:`Resource Types`,actions:i});let a=[],o=[];for(let t of e)t.resourceType===`Patient`&&t.id?a.push({id:t.id,label:t.name?JC(t.name[0]):t.id,description:t.birthDate,leftSection:(0,L.jsx)(Oj,{value:t,radius:`xl`,size:24}),onClick:()=>n(`/Patient/${t.id}`)}):t.resourceType===`ServiceRequest`&&t.id&&o.push({id:t.id,label:t.id,description:t.subject?.display,onClick:()=>n(`/ServiceRequest/${t.id}`)});return a.length>0&&r.push({group:`Patients`,actions:a}),o.length>0&&r.push({group:`Service Requests`,actions:o}),r}function hN(e){let t=AO(),n=jO(),r=vN(e.pathname,e.searchParams,e.menus),[i,a]=(0,b.useState)(!1),[o,s]=(0,b.useState)(!1);function c(n,r){n.stopPropagation(),n.preventDefault(),t(r),window.innerWidth<768&&e.closeNavbar()}function l(e){e&&t(`/${e}`)}let u=e.opened??!0;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(rf.Navbar,{id:`navbar`,className:aN.navbar,children:[e.logo&&(0,L.jsx)(rf.Section,{px:`xs`,pt:`xs`,pb:`4px`,children:(0,L.jsx)(pl,{className:aN.logoButton,onClick:e.navbarToggle,"aria-expanded":u,"aria-controls":`navbar`,"aria-label":`Medplum Logo`,children:e.logo})}),(0,L.jsx)(ll,{px:`xs`,pb:`xs`,pt:`sm`,h:`100%`,children:(0,L.jsxs)(rf.Section,{grow:!0,children:[e.spotlightEnabled&&(0,L.jsx)(B,{mb:2,children:(0,L.jsx)(Hv,{label:`Search`,position:`right`,transitionProps:{duration:0},disabled:u,children:(0,L.jsxs)(pl,{className:aN.link,onClick:()=>hM.open(),"aria-label":`Search`,children:[(0,L.jsx)(QA,{size:`1.2rem`}),(0,L.jsx)(`span`,{className:aN.linkLabel,"data-opened":u||void 0,children:`Search`})]})})}),e.spotlightEnabled&&(0,L.jsx)(lN,{patientsOnly:e.patientsOnly}),!e.resourceTypeSearchDisabled&&(0,L.jsx)(rf.Section,{mb:`sm`,children:(0,L.jsx)(iN,{name:`resourceType`,placeholder:`Resource Type`,maxValues:0,onChange:e=>l(e)},window.location.pathname)}),e.menus?.map((e,t)=>(0,L.jsxs)(b.Fragment,{children:[e.title&&(0,L.jsx)(U,{className:aN.menuTitle,"data-opened":u||void 0,children:e.title}),(0,L.jsx)(K,{gap:`2`,children:e.links?.map(e=>e.notificationCount?(0,L.jsx)(_N,{to:e.href,active:e.href===r?.href,onClick:t=>c(t,e.href),icon:e.icon,label:e.label??``,opened:u,alert:e.alert,notificationCount:e.notificationCount,onDismiss:e.onDismiss},e.href):(0,L.jsx)(gN,{to:e.href,active:e.href===r?.href,onClick:t=>c(t,e.href),icon:e.icon,label:e.label??``,opened:u,alert:e.alert,count:e.count,onDismiss:e.onDismiss},e.href))})]},`menu-${e.title??t}`)),e.displayAddBookmark&&(0,L.jsx)(Hv,{label:`Add Bookmark`,position:`right`,transitionProps:{duration:0},disabled:u,children:(0,L.jsxs)(pl,{className:`${aN.link} ${aN.addBookmarkLink}`,onClick:()=>s(!0),children:[(0,L.jsx)(fA,{}),(0,L.jsx)(`span`,{className:aN.linkLabel,"data-opened":u||void 0,children:`Add Bookmark`})]})})]})}),e.userMenuEnabled&&(0,L.jsxs)(rf.Section,{px:`xs`,py:`xs`,children:[(0,L.jsx)(Hv,{label:u?`Close Sidebar`:`Open Sidebar`,position:`right`,transitionProps:{duration:0},children:(0,L.jsx)(pl,{className:aN.toggleButton,"aria-label":u?`Close Sidebar`:`Open Sidebar`,onClick:e.navbarToggle,"aria-expanded":u,"aria-controls":`navbar`,children:(0,L.jsx)(jA,{})})}),(0,L.jsx)(um,{my:`xs`,mx:6,className:aN.divider}),(0,L.jsxs)(G,{width:260,shadow:`xl`,position:`top-start`,transitionProps:{transition:`fade-up`},opened:i,onClose:()=>a(!1),children:[(0,L.jsx)(G.Target,{children:(0,L.jsxs)(pl,{className:aN.link,pl:`7`,"aria-label":`User menu`,"data-active":i||void 0,onClick:()=>a(e=>!e),bd:`1px 0 0 0 solid var(--mantine-color-gray-200)`,children:[(0,L.jsx)(Oj,{value:n,radius:`xl`,size:24}),(0,L.jsx)(`span`,{className:aN.linkLabel,"data-opened":u||void 0,children:JC(n?.name?.[0])})]})}),(0,L.jsx)(G.Dropdown,{children:(0,L.jsx)(Mj,{version:e.version,showLayoutVersionToggle:e.showLayoutVersionToggle})})]})]})]}),e.pathname&&e.searchParams&&(0,L.jsx)(qM,{pathname:e.pathname,searchParams:e.searchParams,visible:o,onOk:()=>s(!1),onCancel:()=>s(!1)})]})}function gN(e){let{to:t,icon:n,label:r,onClick:i,active:a,count:o,alert:s,opened:c,onDismiss:l}=e,u=o!==void 0&&o>0,d=n??(0,L.jsx)(Qk,{}),f=u&&s&&!c;function p(e){e.preventDefault(),e.stopPropagation(),l?.()}return(0,L.jsx)(Hv,{label:r,position:`right`,transitionProps:{duration:0},disabled:c,children:(0,L.jsxs)(Sj,{to:t,onClick:i,className:aN.link,"data-active":a||void 0,children:[(0,L.jsxs)(`span`,{className:aN.iconWrapper,children:[d,f&&(0,L.jsx)(`span`,{className:aN.alertDot})]}),(0,L.jsx)(`span`,{className:aN.linkLabel,"data-opened":c||void 0,children:r}),u&&(0,L.jsx)(`span`,{className:aN.linkCount,"data-opened":c||void 0,"data-alert":s||void 0,children:o.toLocaleString()}),l&&c&&(0,L.jsx)(Hv,{label:`Dismiss`,openDelay:500,children:(0,L.jsx)(pl,{"aria-label":`Dismiss`,className:aN.dismissButton,onClick:p,children:(0,L.jsx)(dj,{size:14})})})]})})}function _N(e){let t=zO(e.notificationCount);return(0,L.jsx)(gN,{to:e.to,active:e.active,onClick:e.onClick,icon:e.icon,label:e.label,opened:e.opened,alert:e.alert,count:t,onDismiss:e.onDismiss})}function vN(e,t,n){if(!e||!t||!n)return;let r,i=0;for(let a of n)if(a.links)for(let n of a.links){let a=yN(e,t,n.href);a>i&&(i=a,r=n)}return r}function yN(e,t,n){let r=new URL(n,`https://example.com`);if(e!==r.pathname)return 0;let i=[`_count`,`_offset`];for(let[e,n]of r.searchParams.entries())if(!i.includes(e)&&t.get(e)!==n)return 0;let a=1;for(let[e,n]of t.entries())i.includes(e)||r.searchParams.get(e)===n&&a++;return a}var bN=250,xN=59;function SN(e){let[t,n]=(0,b.useState)(localStorage.navbarOpen===`true`),[r]=(0,b.useState)(e.layoutVersion??localStorage.appShellLayoutVersion??`v1`),i=Q(),a=jO();function o(e){localStorage.navbarOpen=e.toString(),n(e)}function s(){o(!1)}function c(){o(!t)}if(i.isLoading())return(0,L.jsx)(mj,{});let l,u,d,f;return r===`v2`?(l={height:0},u={width:t?bN:xN,breakpoint:0,collapsed:{desktop:!a,mobile:!a}},d=void 0,f=a?(0,L.jsx)(hN,{logo:e.logo,pathname:e.pathname,searchParams:e.searchParams,menus:e.menus,navbarToggle:c,closeNavbar:s,displayAddBookmark:e.displayAddBookmark,resourceTypeSearchDisabled:!0,opened:t,spotlightEnabled:!0,patientsOnly:e.spotlightPatientsOnly,userMenuEnabled:!0,version:e.version,showLayoutVersionToggle:e.showLayoutVersionToggle}):void 0):(l={height:60},u={width:bN,breakpoint:`sm`,collapsed:{desktop:!a||!t,mobile:!a||!t}},d=a&&(0,L.jsx)(Yj,{pathname:e.pathname,searchParams:e.searchParams,headerSearchDisabled:e.headerSearchDisabled,logo:e.logo,version:e.version,navbarOpen:t,navbarToggle:c,notifications:e.notifications}),f=a&&t?(0,L.jsx)(hN,{pathname:e.pathname,searchParams:e.searchParams,menus:e.menus,navbarToggle:c,closeNavbar:s,displayAddBookmark:e.displayAddBookmark,resourceTypeSearchDisabled:e.resourceTypeSearchDisabled,patientsOnly:e.spotlightPatientsOnly}):void 0),(0,L.jsxs)(rf,{header:l,navbar:u,padding:0,children:[d,f,(0,L.jsx)(rf.Main,{className:hj.main,children:(0,L.jsx)(pj,{children:(0,L.jsx)(b.Suspense,{fallback:(0,L.jsx)(mj,{}),children:e.children})})})]})}var CN=`https://ccda.medplum.com`,wN=`https://ccda-validator.medplum.com/`;function TN(e){let{url:t}=e,[n,r]=(0,b.useState)(!1),i=(0,b.useRef)(null),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(!1);(0,b.useEffect)(()=>{t&&n&&i.current&&(bj(i.current,{command:`loadCcdaXml`,value:t}).catch(console.error),r(!1))},[t,n]);let l=async()=>{if(t)try{c(!0);let e=await(await fetch(t)).text(),n=new FormData;n.append(`ccdaFile`,new Blob([e],{type:`text/xml`}),`ccda.xml`);let r=`${wN}referenceccdaservice/?validationObjective=C-CDA_IG_Plus_Vocab&referenceFileName=No%20scenario%20File&curesUpdate=true&severityLevel=WARNING`,i=await fetch(r,{method:`POST`,body:n,credentials:`omit`,redirect:`manual`});if(!i.ok)throw Error(`Validation failed: ${i.status} ${i.statusText}`);o(await i.json())}catch(e){o(void 0),console.error(`CCDA validation error:`,e)}finally{c(!1)}},u=()=>{a&&xj(JSON.stringify(a,null,2),`ccda-validation-results`)},d=()=>a?a.resultsMetaData.resultMetaData.filter(e=>e?.type.includes(`Error`)).reduce((e,t)=>e+(t.count||0),0):0;return t?(0,L.jsxs)(`div`,{"data-testid":`ccda-iframe`,style:{maxWidth:e.maxWidth},children:[(0,L.jsx)(`div`,{style:{minHeight:400},children:(0,L.jsx)(`iframe`,{title:`C-CDA Viewer`,width:`100%`,height:`400`,ref:i,src:CN,allowFullScreen:!0,frameBorder:0,seamless:!0,onLoad:()=>r(!0)})}),(0,L.jsxs)(`div`,{style:{marginTop:`10px`,marginBottom:`10px`,display:`flex`,alignItems:`center`},children:[(0,L.jsx)(W,{type:`button`,onClick:l,disabled:s,children:s?`Validating...`:`Validate`}),a&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{style:{marginLeft:`15px`},children:[(0,L.jsx)(`strong`,{children:`Validation Results:`}),` `,d(),` errors found`]}),(0,L.jsx)(W,{type:`button`,onClick:u,color:`green`,style:{marginLeft:`auto`},children:`Download Full Results`})]})]})]}):null}function EN(e){let{contentType:t,url:n,title:r}=e.value??{},i=IO(n);return i?(0,L.jsxs)(`div`,{"data-testid":`attachment-display`,children:[t?.startsWith(`image/`)&&(0,L.jsx)(`img`,{"data-testid":`attachment-image`,style:{maxWidth:e.maxWidth},src:i,alt:r}),t?.startsWith(`video/`)&&(0,L.jsx)(`video`,{"data-testid":`attachment-video`,style:{maxWidth:e.maxWidth},controls:!0,children:(0,L.jsx)(`source`,{type:t,src:i})}),(t?.startsWith(`text/`)||t===`application/json`||t===`application/pdf`)&&(0,L.jsx)(`div`,{"data-testid":`attachment-iframe`,style:{maxWidth:e.maxWidth,minHeight:400},children:(0,L.jsx)(`iframe`,{title:`Attachment`,width:`100%`,height:`400`,src:i+`#navpanes=0`,allowFullScreen:!0,frameBorder:0,seamless:!0})}),t===IE.CDA_XML&&(0,L.jsx)(TN,{url:i}),(0,L.jsx)(`div`,{"data-testid":`download-link`,style:{padding:`2px 16px 16px 16px`},children:(0,L.jsx)(Nd,{href:n,"data-testid":`attachment-details`,target:`_blank`,rel:`noopener noreferrer`,download:DN(r),children:r||`Download`})})]}):null}function DN(e){return e?.includes(`.`)?e:void 0}var ON={root:`_root_1bd5a_1`,compact:`_compact_1bd5a_19`};function kN(e){let{children:t,compact:n}=e;return(0,L.jsx)(`dl`,{className:jn(ON.root,{[ON.compact]:n}),children:t})}function AN(e){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`dt`,{children:e.term}),(0,L.jsx)(`dd`,{children:e.children})]})}function jN(e){let t=e.values?.map((t,n)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(EN,{value:t,maxWidth:e.maxWidth})},`attatchment-`+n)),n;if(e.includeDescriptionListEntry){if(e.property===void 0)throw Error(`props.property is required when includeDescriptionListEntry is true`);if(!cC(e.path))throw Error(`props.path is required when includeDescriptionListEntry is true`);n=(0,L.jsx)(AN,{term:xw(e.path.split(`.`).pop()),children:t})}else n=(0,L.jsx)(L.Fragment,{children:t});return n}function MN(e){let t=Q(),n=(0,b.useRef)(null);function r(e){gj(e),n.current?.click()}function i(e){gj(e);let t=e.target.files;t&&Array.from(t).forEach(a)}function a(n){n&&n.name&&(e.onUploadStart&&e.onUploadStart(),t.createAttachment({data:n,contentType:n.type||`application/octet-stream`,filename:n.name,securityContext:e.securityContext,onProgress:e.onUploadProgress}).then(t=>e.onUpload(t)).catch(t=>{e.onUploadError&&e.onUploadError(Ix(t))}))}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`input`,{disabled:e.disabled,type:`file`,"data-testid":`upload-file-input`,style:{display:`none`},ref:n,onChange:e=>i(e)}),e.children({onClick:r,disabled:e.disabled})]})}function NN(e){let[t,n]=(0,b.useState)(e.defaultValue??[]);function r(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(`table`,{style:{width:`100%`},children:[(0,L.jsxs)(`colgroup`,{children:[(0,L.jsx)(`col`,{width:`97%`}),(0,L.jsx)(`col`,{width:`3%`})]}),(0,L.jsxs)(`tbody`,{children:[t.map((n,i)=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(EN,{value:n,maxWidth:200})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(hu,{disabled:e.disabled,title:`Remove`,variant:`subtle`,size:`sm`,color:`gray`,onClick:e=>{gj(e);let n=t.slice();n.splice(i,1),r(n)},children:(0,L.jsx)(dA,{})})})]},`${i}-${t.length}`)),(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{}),(0,L.jsx)(`td`,{children:(0,L.jsx)(MN,{disabled:e.disabled,onUpload:e=>{r([...t,e])},children:e=>(0,L.jsx)(hu,{...e,title:`Add`,variant:`subtle`,size:`sm`,color:e.disabled?`gray`:`green`,children:(0,L.jsx)(pA,{})})})})]})]})]})}function PN(e){let[t,n]=(0,b.useState)(e.defaultValue);function r(t){n(t),e.onChange&&e.onChange(t)}return t?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(EN,{value:t,maxWidth:200}),(0,L.jsx)(W,{disabled:e.disabled,onClick:e=>{gj(e),r(void 0)},children:`Remove`})]}):(0,L.jsx)(MN,{disabled:e.disabled,securityContext:e.securityContext,onUpload:r,children:e=>(0,L.jsx)(W,{...e,children:`Upload...`})})}var FN={root:`_root_1vii2_1`};function IN(e){let{children:t,...n}=e;return(0,L.jsx)(im,{className:FN.root,...n,children:t})}var LN={paper:`_paper_1igaj_1`,fill:`_fill_1igaj_20`};function RN(e){let{width:t,fill:n,className:r,children:i,...a}=e,o=t?{maxWidth:t}:void 0;return(0,L.jsx)(vl,{className:jn(LN.paper,n&&LN.fill,r),style:o,shadow:`sm`,radius:`sm`,withBorder:!0,...a,children:i})}function zN(e){let{children:t,...n}=e;return(0,L.jsx)(IN,{children:(0,L.jsx)(RN,{...n,children:t})})}function BN(e){return(0,L.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 180 180`,style:{width:e.size,height:e.size},children:[(0,L.jsx)(`title`,{children:`Medplum Logo`}),(0,L.jsx)(`path`,{fill:e.fill??`#9c36b5`,d:`M84 56c-3-15-15-24-23-28l5-10c8 2 14 8 20 14 0-12 1-16 5-21 8-9 13-9 41-9 0 7 1 18-3 24-7 9-16 7-41 8 5 8 7 14 8 22 36-24 74-7 74 39 0 42-40 83-80 83s-80-41-80-83c0-46 38-63 74-39Zm-3 43H65c-4 0-7 3-7 7v4c0 4 3 7 7 7h16v16c0 4 3 7 7 7h4c4 0 7-3 7-7v-16h16c4 0 7-3 7-7v-4c0-4-3-7-7-7H99V83c0-4-3-7-7-7h-4c-4 0-7 3-7 7z`})]})}function VN(e,t){return e?.issue?.filter(e=>WN(e.expression?.[0],t))?.map(e=>e.details?.text)?.join(`
|
|
198
|
+
`)}function HN(e,t){return e?.issue?.filter(e=>WN(e.expression?.[0],t))}var UN=/\[\d+\]/;function WN(e,t){if((typeof e==`string`&&UN.test(e))!==(typeof t==`string`&&UN.test(t))&&(e=e?.replace(UN,``),t=t?.replace(UN,``)),e===t)return!0;if(!e||!t)return!1;let n=e.indexOf(`.`);if(n>=0&&e.substring(n+1)===t)return!0;let r=t.indexOf(`.`);return r>=0&&t.substring(r+1)===e}function GN(e){let{onSuccess:t}=e,n=Q(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(!1);return(0,L.jsx)(zN,{width:450,children:(0,L.jsxs)(GM,{onSubmit:e=>{i(void 0),n.post(`auth/changepassword`,e).then(()=>{o(!0),t?.()}).catch(e=>i(Ix(e)))},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{children:`Change password`})]}),!a&&(0,L.jsxs)(K,{gap:`xl`,mt:`xl`,children:[(0,L.jsx)(ov,{name:`oldPassword`,label:`Old password`,required:!0,autoFocus:!0,error:VN(r,`oldPassword`)}),(0,L.jsx)(ov,{name:`newPassword`,label:`New password`,required:!0,error:VN(r,`newPassword`)}),(0,L.jsx)(ov,{name:`confirmPassword`,label:`Confirm new password`,required:!0,error:VN(r,`confirmPassword`)}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`Change password`})})]}),a&&(0,L.jsx)(`div`,{"data-testid":`success`,children:`Password changed successfully`})]})})}function KN(e){let[t,n]=(0,b.useState)();return(0,L.jsxs)(GM,{onSubmit:t=>{n(void 0),e.onSubmit(t)?.catch(e=>n(Lx(e)))},children:[(0,L.jsxs)(Gp,{style:{flexDirection:`column`},children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:e.title}),!e.qrCodeUrl&&e.description&&(0,L.jsx)(U,{c:`dimmed`,mb:`lg`,mt:`-lg`,children:e.description})]}),t&&(0,L.jsx)(Ed,{icon:(0,L.jsx)(qk,{size:16}),title:`Error`,color:`red`,mb:`lg`,children:t}),e.qrCodeUrl&&(0,L.jsx)(Gp,{children:(0,L.jsxs)(K,{mb:`xl`,children:[e.description&&(0,L.jsx)(U,{c:`dimmed`,mb:`md`,mt:`-lg`,ta:`center`,children:e.description}),(0,L.jsx)(Fm,{src:e.qrCodeUrl,alt:`Multi Factor Auth QR Code`,w:`60%`,mx:`auto`,radius:`md`,p:`xs`,bg:`var(--mantine-color-white)`,style:{border:`1px solid light-dark(var(--mantine-color-gray-2), var(--mantine-color-dark-4))`}})]})}),(0,L.jsx)(K,{gap:`sm`,children:(0,L.jsx)(ab,{name:`token`,label:`MFA code`,autoComplete:`one-time-code`,required:!0,autoFocus:!0})}),(0,L.jsx)(K,{gap:`xs`,pt:`md`,children:(0,L.jsx)(KM,{fullWidth:!0,children:e.buttonText})})]})}function qN(e){let{outcome:t,issues:n,...r}=e,i=t?.issue||n;return!i||i.length===0?null:(0,L.jsx)(Ed,{icon:(0,L.jsx)(qk,{size:16}),color:`red`,...r,children:i.map(e=>(0,L.jsx)(`div`,{"data-testid":`text-field-error`,children:zx(e)},e.details?.text))})}function JN(e){let t=Q(),[n,r]=(0,b.useState)(),i=HN(n,void 0);return(0,L.jsxs)(GM,{onSubmit:async n=>{try{e.handleAuthResponse(await t.startNewProject({login:e.login,projectName:n.projectName}))}catch(e){r(Ix(e))}},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Create a new project`})]}),(0,L.jsx)(qN,{issues:i,mb:`lg`}),(0,L.jsx)(K,{gap:`sm`,children:(0,L.jsx)(ab,{name:`projectName`,label:`Project Name`,placeholder:`My Project`,required:!0,autoFocus:!0,error:VN(n,`projectName`)})}),(0,L.jsxs)(K,{gap:`xs`,mt:`md`,children:[(0,L.jsx)(KM,{fullWidth:!0,children:`Create Project`}),(0,L.jsxs)(U,{c:`dimmed`,size:`xs`,pt:`lg`,ta:`center`,children:[`By clicking "Create Project" you agree to the Medplum`,` `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/privacy`,children:`Privacy\xA0Policy`}),` and `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/terms`,children:`Terms\xA0of\xA0Service`}),`.`]})]})]})}function YN(e,t){let n=document.getElementsByTagName(`head`)[0],r=document.createElement(`script`);r.async=!0,r.src=e,r.onload=t??null,n.appendChild(r)}function XN(e){let{googleClientId:t,handleGoogleCredential:n}=e,r=(0,b.useRef)(null),[i,a]=(0,b.useState)(typeof google<`u`),o=(0,b.useRef)(!1),s=(0,b.useRef)(!1);return(0,b.useEffect)(()=>{if(typeof google>`u`){YN(`https://accounts.google.com/gsi/client`,()=>a(!0));return}o.current||=(google.accounts.id.initialize({client_id:t,callback:n}),!0),r.current&&!s.current&&(google.accounts.id.renderButton(r.current,{type:`standard`,logo_alignment:`center`,width:r.current.clientWidth}),s.current=!0)},[t,i,n]),t?(0,L.jsx)(B,{ref:r,w:`100%`,h:40,display:`flex`,style:{justifyContent:`center`}}):null}function ZN(e){if(e)return e;let t=SE.getOrigin();if(t&&((void 0)?.split(`,`)??[]).includes(t))return`__GOOGLE_CLIENT_ID__`}function QN(e){typeof grecaptcha>`u`&&YN(`https://www.google.com/recaptcha/api.js?render=`+e)}function $N(e){return new Promise((t,n)=>{grecaptcha.ready(async()=>{try{t(await grecaptcha.execute(e,{action:`submit`}))}catch(e){n(e)}})})}function eP(e){let t=ZN(e.googleClientId),n=e.recaptchaSiteKey,r=Q(),[i,a]=(0,b.useState)(),o=HN(i,void 0);return(0,b.useEffect)(()=>{n&&QN(n)},[n]),(0,L.jsxs)(GM,{onSubmit:async t=>{a(void 0);try{let i=``;n&&(i=await $N(n)),e.handleAuthResponse(await r.startNewUser({projectId:e.projectId,clientId:e.clientId,firstName:t.firstName,lastName:t.lastName,email:t.email,password:t.password,remember:t.remember===`true`,recaptchaSiteKey:n,recaptchaToken:i}))}catch(e){a(Ix(e))}},children:[(0,L.jsx)(gd,{direction:`column`,align:`center`,justify:`center`,children:e.children}),(0,L.jsx)(qN,{issues:o,mb:`lg`}),t&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(B,{style:{minHeight:40},children:(0,L.jsx)(XN,{googleClientId:t,handleGoogleCredential:async t=>{try{e.handleAuthResponse(await r.startGoogleLogin({googleClientId:t.clientId,googleCredential:t.credential,projectId:e.projectId,createUser:!0}))}catch(e){a(Ix(e))}}})}),(0,L.jsx)(um,{label:`or`,labelPosition:`center`,my:`lg`})]}),(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(ab,{name:`firstName`,type:`text`,label:`First name`,placeholder:`First name`,required:!0,autoFocus:!0,error:VN(i,`firstName`)}),(0,L.jsx)(ab,{name:`lastName`,type:`text`,label:`Last name`,placeholder:`Last name`,required:!0,error:VN(i,`lastName`)}),(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,placeholder:`name@domain.com`,required:!0,error:VN(i,`email`)}),(0,L.jsx)(ov,{name:`password`,label:`Password`,autoComplete:`off`,required:!0,error:VN(i,`password`)})]}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(cp,{id:`remember`,name:`remember`,label:`Remember me`,size:`xs`,style:{lineHeight:1},pt:`md`,pb:`xs`}),(0,L.jsx)(KM,{fullWidth:!0,children:`Register Account`}),(0,L.jsxs)(U,{c:`dimmed`,size:`xs`,pt:`lg`,ta:`center`,children:[`By clicking "Register Account" you agree to the Medplum`,` `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/privacy`,children:`Privacy\xA0Policy`}),` and `,(0,L.jsx)(Nd,{href:`https://www.medplum.com/terms`,children:`Terms\xA0of\xA0Service`}),`.`]}),(0,L.jsxs)(U,{c:`dimmed`,size:`xs`,ta:`center`,children:[`This site is protected by reCAPTCHA and the Google`,` `,(0,L.jsx)(Nd,{href:`https://policies.google.com/privacy`,children:`Privacy\xA0Policy`}),` and `,(0,L.jsx)(Nd,{href:`https://policies.google.com/terms`,children:`Terms\xA0of\xA0Service`}),` apply.`]})]})]})}function tP(e){let{type:t,projectId:n,clientId:r,googleClientId:i,recaptchaSiteKey:a,onSuccess:o}=e,s=Q(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)();(0,b.useEffect)(()=>{t===`patient`&&c&&s.startNewPatient({login:c,projectId:n}).then(e=>s.processCode(e.code)).then(()=>o()).catch(e=>d(Ix(e)))},[s,t,n,c,o]);function f(e){e.code?s.processCode(e.code).then(()=>o()).catch(e=>d(Ix(e))):e.login&&l(e.login)}return(0,L.jsxs)(zN,{width:400,px:`xl`,py:`xl`,bdrs:`md`,children:[(0,L.jsx)(qN,{issues:HN(u,void 0),mb:`lg`}),!c&&(0,L.jsx)(eP,{projectId:n,clientId:r,googleClientId:i,recaptchaSiteKey:a,handleAuthResponse:f,children:e.children}),c&&t===`project`&&(0,L.jsx)(JN,{login:c,handleAuthResponse:f})]})}function nP(e){let{projectId:t,recaptchaSiteKey:n,onSuccess:r,onSignIn:i,onRegister:a}=e,o=Q(),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(!1);return(0,b.useEffect)(()=>{n&&QN(n)},[n]),(0,L.jsx)(zN,{width:400,px:`xl`,py:`xl`,bdrs:`md`,children:(0,L.jsxs)(GM,{onSubmit:async e=>{c(void 0);try{let i=``;n&&(i=await $N(n)),await o.post(`auth/resetpassword`,{...e,projectId:t,recaptchaToken:i}),u(!0),r?.()}catch(e){c(Ix(e))}},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Reset your password`})]}),(0,L.jsx)(qN,{issues:HN(s,void 0),mb:`lg`}),!l&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(K,{gap:`sm`,mb:`md`,children:(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,placeholder:`name@domain.com`,required:!0,autoFocus:!0,error:VN(s,`email`)})}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(KM,{fullWidth:!0,children:`Reset Password`}),i&&(0,L.jsx)(U,{size:`sm`,mt:`lg`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:(0,L.jsx)(Nd,{onClick:i,children:`Back to Sign In`})}),a&&(0,L.jsxs)(U,{size:`sm`,mt:`none`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:[`Don't have an account? `,(0,L.jsx)(Nd,{onClick:a,children:`Sign Up`})]})]})]}),l&&(0,L.jsx)(U,{c:`dimmed`,size:`sm`,ta:`center`,mt:`md`,children:`If the account exists on our system, a password reset email will be sent.`})]})})}function rP(e){let{id:t,secret:n,onSuccess:r,onSignIn:i}=e,a=Q(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(!1);return(0,L.jsxs)(zN,{width:450,children:[(0,L.jsx)(qN,{issues:HN(o,void 0)}),(0,L.jsxs)(GM,{onSubmit:e=>{if(e.password!==e.confirmPassword){s(Ox(`Passwords do not match`,`confirmPassword`));return}s(void 0),a.post(`auth/setpassword`,{id:t,secret:n,password:e.password}).then(()=>{l(!0),r?.()}).catch(e=>s(Ix(e)))},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{children:`Set password`})]}),!c&&(0,L.jsxs)(K,{children:[(0,L.jsx)(ov,{name:`password`,label:`New password`,required:!0,error:VN(o,`password`)}),(0,L.jsx)(ov,{name:`confirmPassword`,label:`Confirm new password`,required:!0,error:VN(o,`confirmPassword`)}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`Set password`})})]}),c&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[`Password set. You can now\xA0`,i?(0,L.jsx)(Nd,{component:`button`,type:`button`,onClick:i,children:`sign in`}):`sign in`,`.`]})]})]})}function iP(e){let[t,n]=(0,b.useState)();return t?(0,L.jsx)(oP,{email:t,resetEmail:()=>n(void 0),...e}):(0,L.jsx)(aP,{setEmail:n,...e})}function aP(e){let{setEmail:t,onRegister:n,handleAuthResponse:r,children:i,disableEmailAuth:a,...o}=e,s=Q(),c=!e.disableGoogleAuth&&ZN(e.googleClientId),[l,u]=(0,b.useState)(),d=HN(l,void 0),f=(0,b.useCallback)(async e=>{if(!e.authorizeUrl)return!1;let t=JSON.stringify({...await s.ensureCodeChallenge(o),domain:e.domain,returnTo:SE.getLocation()}),n=new URL(e.authorizeUrl);return n.searchParams.set(`state`,t),SE.assign(n.toString()),!0},[s,o]),p=(0,b.useCallback)(async e=>{await f(await s.post(`auth/method`,{email:e.email}))||t(e.email)},[s,f,t]),m=(0,b.useCallback)(async e=>{try{let t=await s.startGoogleLogin({...o,googleCredential:e.credential});await f(t)||r(t)}catch(e){u(Ix(e))}},[s,o,f,r]);return(0,L.jsxs)(GM,{onSubmit:p,children:[(0,L.jsx)(gd,{direction:`column`,align:`center`,justify:`center`,children:i}),(0,L.jsx)(qN,{issues:d,mb:`lg`}),c&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(B,{style:{minHeight:40},children:(0,L.jsx)(XN,{googleClientId:c,handleGoogleCredential:m})}),!a&&(0,L.jsx)(um,{label:`or`,labelPosition:`center`,my:`lg`})]}),!a&&(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,mb:`md`,placeholder:`name@domain.com`,required:!0,autoFocus:!0,error:VN(l,`email`),"data-testid":`auth.email`}),(0,L.jsxs)(K,{gap:`xs`,children:[!a&&(0,L.jsx)(KM,{fullWidth:!0,children:`Continue`}),n&&(0,L.jsxs)(U,{size:`sm`,mt:`lg`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:[`Don’t have an account? `,(0,L.jsx)(Nd,{onClick:n,children:`Register`})]})]})]})}function oP(e){let{onForgotPassword:t,handleAuthResponse:n,children:r,...i}=e,a=Q(),[o,s]=(0,b.useState)(),c=HN(o,void 0);return(0,L.jsxs)(GM,{onSubmit:(0,b.useCallback)(e=>{a.startLogin({...i,password:e.password,remember:e.remember===`on`}).then(n).catch(e=>s(Ix(e)))},[a,i,n]),children:[(0,L.jsx)(gd,{direction:`column`,align:`center`,justify:`center`,children:r}),(0,L.jsx)(qN,{issues:c,mb:`lg`}),(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(ab,{label:`Email`,value:e.email,disabled:!0,rightSectionWidth:36,rightSection:(0,L.jsx)(hu,{variant:`subtle`,color:`gray`,onClick:e.resetEmail,"aria-label":`Change email`,children:(0,L.jsx)(HA,{size:`1rem`,stroke:1.5})})}),(0,L.jsx)(ov,{name:`password`,label:`Password`,autoComplete:`off`,required:!0,autoFocus:!0,error:VN(o,`password`),"data-testid":`auth.password`})]}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(cp,{id:`remember`,name:`remember`,label:`Remember me`,size:`xs`,style:{lineHeight:1},pt:`md`,pb:`xs`}),(0,L.jsx)(KM,{children:`Sign In`}),t&&(0,L.jsx)(U,{size:`sm`,mt:`lg`,c:`dimmed`,style:{textAlign:`center`},"data-dashlane-ignore":`true`,"data-lp-ignore":`true`,"data-no-autofill":`true`,"data-form-type":`navigation`,children:(0,L.jsx)(Nd,{onClick:t,children:`Reset Password`})})]})]})}var sP={option:`_option_18k89_1`,iconBox:`_iconBox_18k89_9`};function cP(e){let t=Q(),n=Ff(),[r,i]=(0,b.useState)(``),[a,o]=(0,b.useState)();function s(e){return!!e?.toLowerCase()?.includes(r.toLowerCase())}function c(e){return s(e.profile?.display)||s(e.project?.display)||s(lP(e))}function l(n){t.post(`auth/profile`,{login:e.login,profile:n}).then(e.handleAuthResponse).catch(e=>o(Ix(e)))}let u=e.memberships.filter(c).slice(0,10).map(e=>(0,L.jsx)(Rf.Option,{value:e.id,className:sP.option,children:(0,L.jsx)(uP,{...e})},e.id));return(0,L.jsxs)(K,{gap:`0`,children:[(0,L.jsxs)(gd,{justify:`center`,align:`center`,direction:`column`,wrap:`nowrap`,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Choose a Project`})]}),(0,L.jsx)(qN,{outcome:a,mb:`lg`}),(0,L.jsxs)(Rf,{store:n,onOptionSubmit:l,children:[(0,L.jsx)(Rf.EventsTarget,{children:(0,L.jsx)(ab,{placeholder:`Search`,value:r,mb:`md`,autoFocus:!0,leftSection:(0,L.jsx)(QA,{size:16}),onChange:e=>{i(e.currentTarget.value),n.updateSelectedOptionIndex()}})}),(0,L.jsx)(`div`,{children:(0,L.jsx)(Rf.Options,{style:{marginLeft:`-10px`,marginRight:`-10px`,marginBottom:`-10px`},children:u.length>0?u:(0,L.jsx)(Rf.Empty,{children:`Nothing found...`})})})]}),(0,L.jsx)(U,{size:`sm`,ta:`center`,mt:`md`,children:(0,L.jsx)(Nd,{component:`button`,type:`button`,onClick:()=>{window.location.href=`/signin?project=new&login=${e.login}`},children:`Create a new project`})})]})}function lP(e){return e.identifier?.find(e=>e.system===`https://medplum.com/identifier/label`)?.value}function uP(e){let t=lP(e);return(0,L.jsxs)(H,{gap:`xs`,align:`center`,children:[(0,L.jsx)(B,{className:sP.iconBox,children:(0,L.jsx)(nA,{size:16,stroke:2})}),(0,L.jsxs)(`div`,{children:[(0,L.jsxs)(U,{size:`sm`,fw:500,children:[e.project?.display,` `,t?` - ${t}`:``]}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:e.profile?.display})]})]})}var dP=/^patient\/Condition\.(?:\*|c?r?u?d?s?)$/,fP=`?category=http://terminology.hl7.org/CodeSystem/condition-category|encounter-diagnosis`,pP=`?category=http://terminology.hl7.org/CodeSystem/condition-category|problem-list-item`,mP=`?category=http://hl7.org/fhir/us/core/CodeSystem/condition-category|health-concern`,hP=/^patient\/Observation\.(?:\*|c?r?u?d?s?)$/,gP=`?category=http://hl7.org/fhir/us/core/CodeSystem/us-core-observation-category|clinical-test`,_P=`?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory`,vP=`?category=http://terminology.hl7.org/CodeSystem/observation-category|social-history`,yP=`?category=http://hl7.org/fhir/us/core/CodeSystem/us-core-category|sdoh`,bP=`?category=http://terminology.hl7.org/CodeSystem/observation-category|survey`,xP=`?category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs`;function SP(e){let t=Q();return(0,L.jsx)(GM,{onSubmit:n=>{t.post(`auth/scope`,{login:e.login,scope:Object.keys(n).join(` `)}).then(e.handleAuthResponse).catch(console.log)},children:(0,L.jsxs)(K,{children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Choose scope`})]}),(0,L.jsx)(K,{children:(e.scope??`openid`).split(` `).map(e=>{let t;return dP.test(e)?t=[e+fP,e+pP,e+mP]:hP.test(e)&&(t=[e+gP,e+_P,e+vP,e+yP,e+bP,e+xP]),(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(cp,{id:e,name:e,label:e,defaultChecked:!0},e),t?.map(e=>(0,L.jsx)(cp,{id:e,name:e,label:e},e))]},e+`_group`)})}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(KM,{fullWidth:!0,children:`Set Scope`})})]})})}function CP(e){let{login:t,chooseScopes:n,onSuccess:r,onForgotPassword:i,onRegister:a,onCode:o,...s}=e,c=Q(),[l,u]=(0,b.useState)(),d=(0,b.useRef)(!1),[f,p]=(0,b.useState)(!1),[m,h]=(0,b.useState)(),[g,_]=(0,b.useState)(!1),[v,y]=(0,b.useState)(),x=(0,b.useCallback)(e=>{o?o(e):c.processCode(e).then(()=>{r&&r()}).catch(e=>Y({color:`red`,message:Lx(e)}))},[c,o,r]),S=(0,b.useCallback)(e=>{p(!!e.mfaEnrollRequired),h(e.enrollQrCode),_(!!e.mfaRequired),e.login&&u(e.login),e.memberships&&y(e.memberships),e.code&&(n?y(void 0):x(e.code))},[n,x]),C=(0,b.useCallback)(e=>{x(e.code)},[x]);return(0,b.useEffect)(()=>{t&&!d.current&&!l&&(d.current=!0,c.get(`auth/login/`+t).then(S).catch(e=>Y({color:`red`,message:Lx(e)})))},[c,t,d,l,S]),(0,L.jsx)(zN,{width:400,px:`xl`,py:`xl`,bdrs:`md`,children:l?f&&m?(0,L.jsx)(KN,{title:`Enroll in MFA`,description:`Scan this QR code with your authenticator app.`,buttonText:`Enroll`,qrCodeUrl:m,onSubmit:async e=>{S(await c.post(`auth/mfa/login-enroll`,{login:l,token:e.token}))}}):g?(0,L.jsx)(KN,{title:`Enter MFA code`,description:`Enter the code from your authenticator app.`,buttonText:`Submit Code`,onSubmit:async e=>{S(await c.post(`auth/mfa/verify`,{login:l,token:e.token}))}}):e.projectId===`new`?(0,L.jsx)(JN,{login:l,handleAuthResponse:S}):v?(0,L.jsx)(cP,{login:l,memberships:v,handleAuthResponse:S}):e.chooseScopes?(0,L.jsx)(SP,{login:l,scope:e.scope,handleAuthResponse:C}):(0,L.jsx)(`div`,{children:`Success`}):(0,L.jsx)(iP,{onForgotPassword:i,onRegister:a,handleAuthResponse:S,disableGoogleAuth:e.disableGoogleAuth,disableEmailAuth:e.disableEmailAuth,...s,children:e.children})})}function wP(e){return(0,L.jsx)(L.Fragment,{children:sw(e.value)})}function TP(e){return(0,L.jsx)(L.Fragment,{children:cw(e.value,e.includeCode)})}function EP(e){let t=e.value;if(!t)return null;let n=[];return t.value&&n.push(t.value),(t.use||t.system)&&(n.push(` [`),t.use&&n.push(t.use),t.use&&t.system&&n.push(` `),t.system&&n.push(t.system),n.push(`]`)),(0,L.jsx)(L.Fragment,{children:n.join(``).trim()})}function DP(e){let t=e.value;return t?(0,L.jsxs)(L.Fragment,{children:[t.name,t.name&&`: `,t.telecom?.map(e=>(0,L.jsx)(EP,{value:e},`telecom-${t.name}-${e.value}`))]}):null}function OP(e,t,n){let r=yS(e,t,{profileUrl:n});return r?Array.isArray(r)?[r.map(e=>e.value),r[0].type]:[r.value,r.type]:[void 0,`undefined`]}function kP(e,t,n){let r=bS(e,t,n);return r?Array.isArray(r)?[r.map(e=>e.value),r[0].type]:[r.value,r.type]:[void 0,`undefined`]}function AP(e){let{elementDefinitionType:t}=e,n=Q(),r=(0,b.useContext)(Ik),[i,a]=(0,b.useState)($x(`Extension`)),o=(0,b.useMemo)(()=>{if(cC(t?.profile))return t.profile[0]},[t]),[s,c]=(0,b.useState)(o!==void 0);if((0,b.useEffect)(()=>{o&&(c(!0),n.requestProfileSchema(o).then(()=>{let e=tS(o);c(!1),e&&a(e)}).catch(e=>{c(!1),console.warn(e)}))},[n,o]),o&&(s||!eS(o)))return(0,L.jsx)(`div`,{children:`Loading...`});if(i.elements[`value[x]`]?.max!==0){let[t,n]=OP({type:`Extension`,value:e.value},`value[x]`,o??r.profileUrl);return(0,L.jsx)(UP,{propertyType:n,value:t})}return(0,L.jsx)(qP,{path:e.path,value:{type:i.type,value:e.value},compact:e.compact,ignoreMissingValues:e.ignoreMissingValues,link:e.link,profileUrl:o})}function jP(e){return(0,L.jsxs)(`div`,{children:[e.value?.system,`: `,e.value?.value]})}function MP(e){return(0,L.jsx)(L.Fragment,{children:ow(e.value)})}function NP(e){return(0,L.jsx)(L.Fragment,{children:aw(e.value,e.precision)})}function PP(e){return(0,L.jsx)(L.Fragment,{children:iw(e.value,e.precision,e.exclusive)})}function FP(e){let t=e.value;return t?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(NP,{value:t.numerator,precision:e.precision}),`\xA0/\xA0`,(0,L.jsx)(NP,{value:t.denominator,precision:e.precision})]}):null}function IP(e){if(!e.value)return null;let t=e.value.display||e.value.reference||rC(e.value);return e.link!==!1&&e.value.reference?(0,L.jsx)(Sj,{to:e.value,children:t}):(0,L.jsx)(L.Fragment,{children:t})}function LP(e,t,n,r){if(!cC(n?.slices))return[e];let i=Array(t.length+1);for(let e=0;e<i.length;e++)i[e]=[];for(let a of e){let e=ZD(a,t,n.discriminator,r),o=e?t.findIndex(t=>t.name===e):-1;o===-1&&(o=t.length),i[o].push(a)}return i}async function RP({medplum:e,property:t}){return new Promise((n,r)=>{if(!t.slicing){n([]);return}let i=[],a=[],o=[];for(let n of t.slicing.slices){if(!YD(n)){console.debug(`Unsupported slice definition`,n);continue}let t;cC(n.elements)||(t=n.type[0]?.profile?.[0]),i.push(n),a.push(t),t&&o.push(e.requestProfileSchema(t))}Promise.all(o).then(()=>{for(let e=0;e<i.length;e++){let t=i[e],n=a[e];n&&(t.typeSchema=tS(n))}n(i)}).catch(r)})}function zP(e,t,n){return t===void 0?n:(0,L.jsx)(e,{value:t,children:n})}function BP(e){let{slice:t,property:n}=e,r=t.typeSchema?.elements??t.elements,i=(0,b.useContext)(Ik),a=(0,b.useMemo)(()=>{if(cC(r))return WD({parentContext:i,elements:r,path:e.path,profileUrl:t.typeSchema?.url})},[i,e.path,t.typeSchema?.url,r]);return zP(Ik.Provider,a,(0,L.jsx)(L.Fragment,{children:e.value.map((r,i)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(UP,{property:n,path:e.path,arrayElement:!0,elementDefinitionType:t.type[0],propertyType:t.type[0].code,value:r,ignoreMissingValues:e.ignoreMissingValues,link:e.link})},`${i}-${e.value.length}`))}))}var VP=50;function HP(e){let{property:t,propertyType:n}=e,r=Q(),i=(0,b.useMemo)(()=>Array.isArray(e.values)?e.values:[],[e.values]),[a,o]=(0,b.useState)(!0),[s,c]=(0,b.useState)([]),[l,u]=(0,b.useState)(()=>[i]),[d,f]=(0,b.useState)(0),p=(0,b.useContext)(Ik);if((0,b.useEffect)(()=>{RP({medplum:r,property:t}).then(e=>{f(i.length),c(e),u(LP(i.slice(0,VP),e,t.slicing,p.profileUrl)),o(!1)}).catch(e=>{console.error(e),o(!1)})},[r,t,p.profileUrl,u,i]),a)return(0,L.jsx)(`div`,{children:`Loading...`});let m;if(t.type[0]?.code!==`Extension`){let r=l[s.length],i=r.map((i,a)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(UP,{path:e.path,arrayElement:!0,property:t,propertyType:n,value:i,ignoreMissingValues:e.ignoreMissingValues,link:e.link})},`${a}-${r.length}`));if(e.includeDescriptionListEntry){if(!cC(e.path))throw Error(`props.path is required when includeDescriptionListEntry is true`);m=(0,L.jsx)(AN,{term:xw(e.path.split(`.`).pop()),children:i})}else m=(0,L.jsx)(L.Fragment,{children:i})}return(0,L.jsxs)(L.Fragment,{children:[s.map((n,r)=>{if(!e.path)throw Error(`Displaying a resource property with slices of type ${e.propertyType} requires path`);let i=(0,L.jsx)(BP,{path:e.path,slice:n,property:t,value:l[r],ignoreMissingValues:e.ignoreMissingValues,link:e.link},n.name);return e.includeDescriptionListEntry&&(i=(0,L.jsx)(AN,{term:xw(n.name),children:i},n.name)),i}),m,d>VP&&(0,L.jsx)(H,{justify:`right`,children:(0,L.jsxs)(U,{children:[`... `,d,` total values`]})})]})}function UP(e){let{property:t,propertyType:n,value:r}=e;if(t?.path?.endsWith(`.id`))return(0,L.jsxs)(gd,{gap:3,align:`center`,children:[r,!sC(r)&&(0,L.jsx)(om,{value:r,timeout:2e3,children:({copied:e,copy:t})=>(0,L.jsx)(Hv,{label:e?`Copied`:`Copy`,withArrow:!0,position:`right`,children:(0,L.jsx)(hu,{variant:`subtle`,color:e?`teal`:`gray`,onClick:t,children:e?(0,L.jsx)(sA,{size:`1rem`}):(0,L.jsx)(hA,{size:`1rem`})})})})]});if(t&&(t.isArray||t.max>1)&&!e.arrayElement)return n===X.Attachment?(0,L.jsx)(jN,{values:r,maxWidth:e.maxWidth,includeDescriptionListEntry:e.includeArrayDescriptionListEntry,property:t,path:e.path}):(0,L.jsx)(HP,{path:e.path,property:t,propertyType:n,values:r,includeDescriptionListEntry:e.includeArrayDescriptionListEntry,ignoreMissingValues:e.ignoreMissingValues,link:e.link});switch(n){case X.boolean:return(0,L.jsx)(L.Fragment,{children:r===void 0?``:(!!r).toString()});case X.SystemString:case X.string:return e.property?.path?.toLowerCase().includes(`secret`)?(0,L.jsx)(WP,{value:r}):(0,L.jsx)(`div`,{style:{whiteSpace:`pre-wrap`},children:r});case X.code:case X.date:case X.decimal:case X.id:case X.integer:case X.positiveInt:case X.unsignedInt:case X.uri:case X.url:case X.xhtml:return(0,L.jsx)(L.Fragment,{children:r});case X.canonical:return(0,L.jsx)(IP,{value:{reference:r},link:e.link});case X.dateTime:case X.instant:return(0,L.jsx)(L.Fragment,{children:ZC(r)});case X.time:return(0,L.jsx)(L.Fragment,{children:XC(r)});case X.markdown:return(0,L.jsx)(`pre`,{children:r});case X.Address:return(0,L.jsx)(Nk,{value:r});case X.Annotation:return(0,L.jsx)(L.Fragment,{children:r?.text});case X.Attachment:return(0,L.jsx)(EN,{value:r,maxWidth:e.maxWidth});case X.CodeableConcept:return(0,L.jsx)(wP,{value:r});case X.Coding:return(0,L.jsx)(TP,{value:r});case X.ContactDetail:return(0,L.jsx)(DP,{value:r});case X.ContactPoint:return(0,L.jsx)(EP,{value:r});case X.HumanName:return(0,L.jsx)(Aj,{value:r});case X.Identifier:return(0,L.jsx)(jP,{value:r});case X.Money:return(0,L.jsx)(MP,{value:r});case X.Period:return(0,L.jsx)(L.Fragment,{children:QC(r)});case X.Quantity:case X.Duration:return(0,L.jsx)(NP,{value:r});case X.Range:return(0,L.jsx)(PP,{value:r});case X.Ratio:return(0,L.jsx)(FP,{value:r});case X.Reference:return(0,L.jsx)(IP,{value:r,link:e.link});case X.Timing:return(0,L.jsx)(L.Fragment,{children:nw(r)});case X.Dosage:case X.UsageContext:if(!e.path)throw Error(`Displaying property of type ${e.propertyType} requires path`);return(0,L.jsx)(qP,{path:e.path,value:{type:n,value:r},compact:!0,ignoreMissingValues:e.ignoreMissingValues});case X.Extension:if(!e.path)throw Error(`Displaying property of type ${e.propertyType} requires path`);return(0,L.jsx)(AP,{path:e.path,value:r,compact:!0,ignoreMissingValues:e.ignoreMissingValues,elementDefinitionType:e.elementDefinitionType});default:if(!t)throw Error(`Displaying property of type ${e.propertyType} requires element schema`);if(!e.path)throw Error(`Displaying property of type ${e.propertyType} requires path`);return(0,L.jsx)(qP,{path:e.path,value:{type:t.type[0].code,value:r},compact:!0,ignoreMissingValues:e.ignoreMissingValues})}}function WP(e){let[t,n]=(0,b.useState)(!1),r=e.value??``,i=!sC(r),a=`•`.repeat(8);return(0,L.jsxs)(gd,{gap:3,align:`center`,children:[t?(0,L.jsx)(`div`,{style:{whiteSpace:`pre-wrap`},children:r}):(0,L.jsx)(`div`,{style:{whiteSpace:`pre-wrap`},"aria-hidden":`true`,children:i?a:``}),i&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(om,{value:e.value,timeout:2e3,children:({copied:e,copy:t})=>(0,L.jsx)(Hv,{label:e?`Copied`:`Copy secret`,withArrow:!0,position:`right`,children:(0,L.jsx)(hu,{variant:`subtle`,color:e?`teal`:`gray`,onClick:t,"aria-label":e?`Copied`:`Copy secret`,children:e?(0,L.jsx)(sA,{size:`1rem`}):(0,L.jsx)(hA,{size:`1rem`})})})}),(0,L.jsx)(Hv,{label:t?`Hide secret`:`Show secret`,withArrow:!0,position:`right`,children:(0,L.jsx)(hu,{variant:`subtle`,color:`gray`,onClick:()=>n(!t),"aria-label":t?`Hide secret`:`Show secret`,children:t?(0,L.jsx)(CA,{size:`1rem`}):(0,L.jsx)(wA,{size:`1rem`})})})]})]})}var GP=[`extension`,`modifierExtension`],KP=Pk.filter(e=>!GP.includes(e));function qP(e){let t=e.value,{value:n,type:r}=t,i=(0,b.useContext)(Ik),a=e.profileUrl??i?.profileUrl,o=(0,b.useMemo)(()=>Qx(r,a),[a,r]),s=(0,b.useMemo)(()=>{if(o)return WD({parentContext:i,elements:o.elements,path:e.path,profileUrl:o.url,accessPolicyResource:e.accessPolicyResource})},[o,i,e.path,e.accessPolicyResource]);if(sC(n))return null;if(!o)return(0,L.jsxs)(`div`,{children:[r,`\xA0not implemented`]});if(typeof n==`object`&&`name`in n&&Object.keys(n).length===1&&typeof n.name==`string`)return(0,L.jsx)(`div`,{children:n.name});let c=s??i;return zP(Ik.Provider,s,(0,L.jsx)(kN,{compact:e.compact,children:Object.entries(c.elements).map(([n,r])=>{if(GP.includes(n)&&sC(r.slicing?.slices)||KP.includes(n)||Fk.includes(n)&&r.path.split(`.`).length===2||n.includes(`.`))return null;let[i,a]=OP(t,n,c.profileUrl);if((e.ignoreMissingValues||r.max===0)&&sC(i)||e.path.endsWith(`.extension`)&&(n===`url`||n===`id`))return null;let o=r.max>1||r.isArray,s=(0,L.jsx)(UP,{property:r,propertyType:a,path:e.path+`.`+n,value:i,ignoreMissingValues:e.ignoreMissingValues,includeArrayDescriptionListEntry:o,link:e.link},n);return o?s:(0,L.jsx)(AN,{term:xw(n),children:s},n)})}))}var JP={dimmed:`_dimmed_11me5_1`,preserveBreaks:`_preserveBreaks_11me5_5`},YP=`Read Only`;function XP(e,t){return e?(0,L.jsx)(Hv.Floating,{label:e,children:t}):t}function ZP(e){let{debugMode:t}=(0,b.useContext)(Ik),n;return n=t&&e.fhirPath?`${e.title} - ${e.fhirPath}`:e.title,XP(e?.readonly?YP:void 0,(0,L.jsxs)(H,{wrap:`nowrap`,"data-testid":e.testId,children:[(0,L.jsx)(`div`,{children:e.children}),(0,L.jsx)(`div`,{children:(0,L.jsx)(ud.Wrapper,{id:e.htmlFor,label:n,classNames:{label:e?.readonly?JP.dimmed:void 0},description:e.description,withAsterisk:e.withAsterisk,children:null})})]}))}function QP(e){let{debugMode:t}=(0,b.useContext)(Ik),n;return n=t&&e.fhirPath?`${e.title} - ${e.fhirPath}`:e.title,XP(e?.readonly?YP:void 0,(0,L.jsx)(ud.Wrapper,{id:e.htmlFor,label:n,classNames:{label:jn({[JP.dimmed]:e?.readonly},JP.preserveBreaks)},description:e.description,withAsterisk:e.withAsterisk,error:VN(e.outcome,e.errorExpression??e.htmlFor),"data-testid":e.testId,children:e.children}))}function $P(e,t,n,r,i){let a=r.type;if(a.length>1)for(let n of a){let r=t.replace(`[x]`,DC(n.code));r in e&&delete e[r]}return sC(i)?e[n]=void 0:e[n]=i,e}function eF(e){return!!e&&!sC(e.url)&&!sC(e.name)}function tF(e){let{defaultValue:t,onChange:n,withHelpText:r,outcome:i,path:a,valuePath:o,...s}=e,[c,l]=(0,b.useState)(t);function u(e){let t=rF(e);l(t),n&&n(t)}return(0,L.jsx)($M,{defaultValue:c&&nF(c),onChange:u,withHelpText:r??!0,...s})}function nF(e){return e.coding?.map(e=>({system:e.system,code:e.code,display:e.display}))}function rF(e){if(e.length!==0)return{coding:e.map(e=>({system:e.system,code:e.code,display:e.display}))}}function iF(e){let{defaultValue:t,onChange:n,withHelpText:r,response:i,...a}=e,[o,s]=(0,b.useState)(i?.answer?.[0]?.valueCoding??t);function c(e){let t=e[0],r=t&&oF(t);s(r),n&&n(r)}return(0,L.jsx)($M,{defaultValue:o?aF(o):void 0,maxValues:1,onChange:c,withHelpText:r??!0,...a})}function aF(e){return{system:e.system,code:e.code,display:e.display}}function oF(e){return{system:e.system,code:e.code,display:e.display}}function sF(e){let{path:t,outcome:n}=e,{elementsByPath:r,getExtendedProps:i}=(0,b.useContext)(Ik),[a,o]=(0,b.useState)(e.defaultValue),[s,c,l]=(0,b.useMemo)(()=>[`system`,`use`,`value`].map(e=>r[t+`.`+e]),[r,t]),[u,d,f]=(0,b.useMemo)(()=>[`system`,`use`,`value`].map(e=>i(t+`.`+e)),[i,t]);function p(t){t&&Object.keys(t).length===0&&(t=void 0),o(t),e.onChange&&e.onChange(t)}function m(e){let t={...a,system:e};e||delete t.system,p(t)}function h(e){let t={...a,use:e};e||delete t.use,p(t)}function g(e){let t={...a,value:e};e||delete t.value,p(t)}let _=e.valuePath??t;return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,align:`flex-start`,children:[(0,L.jsx)(Tg,{disabled:e.disabled||u?.readonly,"data-testid":`system`,defaultValue:a?.system,required:(s?.min??0)>0,onChange:e=>m(e.currentTarget.value),data:[``,`email`,`phone`,`fax`,`pager`,`sms`,`other`],error:VN(n,_+`.system`)}),(0,L.jsx)(Tg,{disabled:e.disabled||d?.readonly,"data-testid":`use`,defaultValue:a?.use,required:(c?.min??0)>0,onChange:e=>h(e.currentTarget.value),data:[``,`home`,`work`,`temp`,`old`,`mobile`],error:VN(n,_+`.use`)}),(0,L.jsx)(ab,{disabled:e.disabled||f?.readonly,placeholder:`Value`,defaultValue:a?.value,required:(l?.min??0)>0,onChange:e=>g(e.currentTarget.value),error:VN(n,_+`.value`)})]})}function cF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Ik),[i,a]=(0,b.useMemo)(()=>[`name`,`telecom`].map(t=>r(e.path+`.`+t)),[r,e.path]);function o(t){n(t),e.onChange&&e.onChange(t)}function s(e){let n={...t,name:e};e||delete n.name,o(n)}function c(e){let n={...t,telecom:e&&[e]};e||delete n.telecom,o(n)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(ab,{disabled:e.disabled||i?.readonly,"data-testid":e.name+`-name`,name:e.name+`-name`,placeholder:`Name`,style:{width:180},defaultValue:t?.name,onChange:e=>s(e.currentTarget.value)}),(0,L.jsx)(sF,{disabled:e.disabled||a?.readonly,name:e.name+`-telecom`,path:e.path+`.telecom`,defaultValue:t?.telecom?.[0],onChange:c,outcome:e.outcome})]})}function lF(e){if(!e)return``;let t=new Date(e);return YC(t)?t.toLocaleDateString(`sv`)+`T`+t.toLocaleTimeString(`sv`):``}function uF(e){if(!e)return``;let t=new Date(e);return YC(t)?t.toISOString():``}function dF(e){return(0,L.jsx)(ab,{id:e.name,name:e.name,label:e.label,"data-autofocus":e.autoFocus,"data-testid":e[`data-testid`]??e.name,placeholder:e.placeholder,required:e.required,disabled:e.disabled,type:fF(),step:1,defaultValue:lF(e.defaultValue),autoFocus:e.autoFocus,error:VN(e.outcome,e.name),onChange:t=>{if(e.onChange){let n=t.currentTarget.value;e.onChange(uF(n))}}})}function fF(){return`datetime-local`}function pF(e){let{propertyType:t}=e,n=Q(),r=(0,b.useMemo)(()=>{if(cC(t.profile))return t.profile[0]},[t]),[i,a]=(0,b.useState)(r!==void 0);return(0,b.useEffect)(()=>{r&&(a(!0),n.requestProfileSchema(r).then(()=>a(!1)).catch(e=>{a(!1),console.warn(e)}))},[n,r]),r&&(i||!eS(r))?(0,L.jsx)(`div`,{children:`Loading...`}):(0,L.jsx)($F,{profileUrl:r,path:e.path,typeName:`Extension`,defaultValue:e.defaultValue,onChange:e.onChange})}function mF(e){let{outcome:t,path:n}=e,[r,i]=(0,b.useState)(e.defaultValue),{getExtendedProps:a}=(0,b.useContext)(Ik),[o,s,c,l,u]=(0,b.useMemo)(()=>[`use`,`prefix`,`given`,`family`,`suffix`].map(t=>a(e.path+`.`+t)),[a,e.path]);function d(t){i(t),e.onChange&&e.onChange(t)}function f(e){d({...r,use:e||void 0})}function p(e){d({...r,prefix:e?e.split(` `):void 0})}function m(e){d({...r,given:e?e.split(` `):void 0})}function h(e){d({...r,family:e||void 0})}function g(e){d({...r,suffix:e?e.split(` `):void 0})}let _=e.valuePath??n;return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(Tg,{disabled:e.disabled||o?.readonly,defaultValue:r?.use,name:e.name+`-use`,"data-testid":`use`,onChange:e=>f(e.currentTarget.value),data:[``,`temp`,`old`,`usual`,`official`,`nickname`,`anonymous`,`maiden`],error:VN(t,_+`.use`)}),(0,L.jsx)(ab,{disabled:e.disabled||s?.readonly,placeholder:`Prefix`,name:e.name+`-prefix`,defaultValue:r?.prefix?.join(` `),onChange:e=>p(e.currentTarget.value),error:VN(t,_+`.prefix`)}),(0,L.jsx)(ab,{disabled:e.disabled||c?.readonly,placeholder:`Given`,name:e.name+`-given`,defaultValue:r?.given?.join(` `),onChange:e=>m(e.currentTarget.value),error:VN(t,_+`.given`)}),(0,L.jsx)(ab,{disabled:e.disabled||l?.readonly,name:e.name+`-family`,placeholder:`Family`,defaultValue:r?.family,onChange:e=>h(e.currentTarget.value),error:VN(t,_+`.family`)}),(0,L.jsx)(ab,{disabled:e.disabled||u?.readonly,placeholder:`Suffix`,name:e.name+`-suffix`,defaultValue:r?.suffix?.join(` `),onChange:e=>g(e.currentTarget.value),error:VN(t,_+`.suffix`)})]})}function hF(e){let[t,n]=(0,b.useState)(e.defaultValue),{elementsByPath:r,getExtendedProps:i}=(0,b.useContext)(Ik),[a,o]=(0,b.useMemo)(()=>[`system`,`value`].map(t=>r[e.path+`.`+t]),[r,e.path]),[s,c]=(0,b.useMemo)(()=>[`system`,`value`].map(t=>i(e.path+`.`+t)),[i,e.path]);function l(t){n(t),e.onChange&&e.onChange(t)}let u=e.valuePath??e.path;return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,align:`flex-start`,children:[(0,L.jsx)(ab,{disabled:e.disabled||s?.readonly,placeholder:`System`,required:(a?.min??0)>0,defaultValue:t?.system,onChange:e=>l({...t,system:e.currentTarget.value}),error:VN(e.outcome,u+`.system`)}),(0,L.jsx)(ab,{disabled:e.disabled||c?.readonly,placeholder:`Value`,required:(o?.min??0)>0,defaultValue:t?.value,onChange:e=>l({...t,value:e.currentTarget.value}),error:VN(e.outcome,u+`.value`)})]})}var gF=[`USD`,`EUR`,`CAD`,`GBP`,`AUD`];function _F(e){let{onChange:t}=e,[n,r]=(0,b.useState)(e.defaultValue),{getExtendedProps:i}=(0,b.useContext)(Ik),[a,o]=(0,b.useMemo)(()=>[`currency`,`value`].map(t=>i(e.path+`.`+t)),[i,e.path]),s=(0,b.useCallback)(e=>{r(e),t&&t(e)},[t]),c=(0,b.useCallback)(e=>{s({...n,currency:e.currentTarget.value})},[n,s]),l=(0,b.useCallback)(e=>{s({...n,value:e.currentTarget.valueAsNumber})},[n,s]),u=(0,L.jsx)(Tg,{disabled:e.disabled||a?.readonly,defaultValue:n?.currency,data:gF,styles:{input:{fontWeight:500,borderTopLeftRadius:0,borderBottomLeftRadius:0,width:92}},onChange:c});return(0,L.jsx)(ab,{disabled:e.disabled||o?.readonly,type:`number`,name:e.name,label:e.label,placeholder:e.placeholder??`Value`,defaultValue:n?.value?.toString()??`USD`,leftSection:(0,L.jsx)(gA,{size:14}),rightSection:u,rightSectionWidth:92,onChange:l})}function vF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Ik),[i,a]=(0,b.useMemo)(()=>[`start`,`end`].map(t=>r(e.path+`.`+t)),[r,e.path]);function o(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(dF,{disabled:e.disabled||i?.readonly,name:e.name+`.start`,placeholder:`Start`,defaultValue:t?.start,onChange:e=>o({...t,start:e})}),(0,L.jsx)(dF,{disabled:e.disabled||a?.readonly,name:e.name+`.end`,placeholder:`End`,defaultValue:t?.end,onChange:e=>o({...t,end:e})})]})}function yF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Ik),[i,a,o]=(0,b.useMemo)(()=>[`comparator`,`value`,`unit`].map(t=>r(e.path+`.`+t)),[r,e.path]);function s(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(Tg,{disabled:e.disabled||i?.readonly,style:{width:80},"data-testid":e.name+`-comparator`,defaultValue:t?.comparator,data:[``,`<`,`<=`,`>=`,`>`],onChange:e=>s({...t,comparator:e.currentTarget.value})}),(0,L.jsx)(ab,{disabled:e.disabled||a?.readonly,id:e.name,name:e.name,required:e.required,"data-autofocus":e.autoFocus,"data-testid":e.name+`-value`,type:`number`,placeholder:`Value`,defaultValue:t?.value,autoFocus:e.autoFocus,step:`any`,onWheel:t=>{e.disableWheel&&t.currentTarget.blur()},onChange:e=>{s({...t,value:bF(e.currentTarget.value)})}}),(0,L.jsx)(ab,{disabled:e.disabled||o?.readonly,placeholder:`Unit`,"data-testid":e.name+`-unit`,defaultValue:t?.unit,onChange:e=>s({...t,unit:e.currentTarget.value})})]})}function bF(e){if(e)return Number.parseFloat(e)}function xF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Ik),[i,a]=(0,b.useMemo)(()=>[`low`,`high`].map(t=>r(e.path+`.`+t)),[r,e.path]);function o(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(yF,{path:e.path+`.low`,disabled:e.disabled||i?.readonly,name:e.name+`-low`,defaultValue:t?.low,onChange:e=>o({...t,low:e})}),(0,L.jsx)(yF,{path:e.path+`.high`,disabled:e.disabled||a?.readonly,name:e.name+`-high`,defaultValue:t?.high,onChange:e=>o({...t,high:e})})]})}function SF(e){let[t,n]=(0,b.useState)(e.defaultValue),{getExtendedProps:r}=(0,b.useContext)(Ik),[i,a]=(0,b.useMemo)(()=>[`numerator`,`denominator`].map(t=>r(e.path+`.`+t)),[r,e.path]);function o(t){n(t),e.onChange&&e.onChange(t)}return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(yF,{path:e.path+`.numerator`,disabled:e.disabled||i?.readonly,name:e.name+`-numerator`,defaultValue:t?.numerator,onChange:e=>o({...t,numerator:e})}),(0,L.jsx)(yF,{path:e.path+`.denominator`,disabled:e.disabled||a?.readonly,name:e.name+`-denominator`,defaultValue:t?.denominator,onChange:e=>o({...t,denominator:e})})]})}var CF={Device:`device-name`,Observation:`code`,Subscription:`criteria`,User:`email:contains`},wF=`AccessPolicy.Account.ActivityDefinition.Bot.CapabilityStatement.CareTeam.ClientApplication.CodeSystem.CompartmentDefinition.ConceptMap.EffectEvidenceSynthesis.Endpoint.EventDefinition.Evidence.EvidenceVariable.ExampleScenario.GraphDefinition.Group.HealthcareService.ImplementationGuide.InsurancePlan.Library.Location.Measure.MedicinalProduct.MessageDefinition.NamingSystem.OperationDefinition.Organization.Patient.Person.PlanDefinition.Practitioner.Project.Questionnaire.RelatedPerson.ResearchDefinition.ResearchElementDefinition.ResearchStudy.RiskEvidenceSynthesis.SearchParameter.StructureDefinition.StructureMap.TerminologyCapabilities.TestScript.UserConfiguration.ValueSet`.split(`.`);function TF(e){return{value:GS(e)??``,label:YS(e),resource:e}}function EF(e){let t=Q(),{resourceType:n,searchCriteria:r}=e,[i,a]=(0,b.useState)(),o=BO(e.defaultValue,a),s=e.itemComponent??DF,c=e.onChange,l=(0,b.useCallback)(async(e,i)=>{let a=OF(n),o=new URLSearchParams({[a]:e??``,_count:`10`,...r});return await t.searchResources(n,o,{signal:i})},[t,n,r]),u=(0,b.useCallback)(e=>{c&&c(e[0])},[c]);return cC(e.defaultValue)&&!i&&!o?null:(0,L.jsx)(Pj,{disabled:e.disabled,name:e.name,label:e.label,error:e.error,required:e.required,itemComponent:s,defaultValue:o,placeholder:e.placeholder,maxValues:1,toOption:TF,loadOptions:l,onChange:u,clearable:!0})}var DF=(0,b.forwardRef)(({label:e,resource:t,active:n,...r},i)=>(0,L.jsx)(`div`,{ref:i,...r,children:(0,L.jsxs)(H,{wrap:`nowrap`,children:[(0,L.jsx)(Oj,{value:t}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{children:e}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:t.birthDate||t.id})]})]})}));function OF(e){return CF[e]??(wF.includes(e)?`name`:`_id`)}function kF(e){let{onChange:t}=e,n=Q(),[r,i]=(0,b.useState)(e.defaultValue),[a,o]=(0,b.useState)(()=>AF(e.targetTypes)),[s,c]=(0,b.useState)(()=>jF(e.defaultValue,a)),l=(0,b.useRef)(new cx),u=(0,b.useMemo)(()=>s?.type===`profile`?{...e.searchCriteria,_profile:s.value}:e.searchCriteria,[e.searchCriteria,s]);(0,b.useEffect)(()=>{let e=!1,t=a?.map(t=>{if(!NF(t))return Promise.resolve(t);e=!0;let r=t.value,i=l.current.get(r);if(i)return i;let a=new oD(MF(n,t.value).then(e=>{let n={...t};return e?cC(e.type)?(n.resourceType=e.type,n.name=e.name,n.title=e.title):(console.error(`StructureDefinition.type missing for ${t.value}`),n.error=`StructureDefinition.type missing`):(console.error(`StructureDefinition not found for ${t.value}`),n.error=`StructureDefinition not found`),n}).catch(e=>(console.error(e),{...t,error:e})));return l.current.set(r,a),a});!t||!e||Promise.all(t).then(e=>{if(o(e),!s)return;let t=e.findIndex(e=>e.value===s.value||e.resourceType===s.resourceType);if(t===-1){console.debug(`defaultValue had unexpected resourceType: ${s.resourceType}`);return}c(e[t])}).catch(console.error)},[n,s,a]);let d=(0,b.useCallback)(e=>{let n=e?WS(e):void 0;i(n),t&&t(n)},[t]),f=(0,b.useMemo)(()=>a?a.map(e=>({value:e.value,label:e.type===`profile`?e.title??e.name??e.resourceType??e.value:e.value})):[],[a]);return(0,L.jsxs)(L.Fragment,{children:[e.name&&(0,L.jsx)(`input`,{type:`hidden`,name:e.name,value:r?.reference??``}),(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[a&&a.length>1&&(0,L.jsx)(Tg,{name:e.name+`-resourceType`,disabled:e.disabled,"data-autofocus":e.autoFocus,"data-testid":`reference-input-resource-type-select`,defaultValue:s?.resourceType,autoFocus:e.autoFocus,onChange:e=>{let t=e.currentTarget.value;c(a.find(e=>e.value===t))},data:f}),!a&&(0,L.jsx)(iN,{disabled:e.disabled,autoFocus:e.autoFocus,testId:`reference-input-resource-type-input`,defaultValue:s?.resourceType,onChange:e=>{c(e?{type:`resourceType`,value:e,resourceType:e}:void 0)},name:e.name+`-resourceType`,placeholder:`Resource Type`}),(0,L.jsx)(EF,{resourceType:s?.resourceType,name:e.name+`-id`,required:e.required,placeholder:e.placeholder,defaultValue:r,searchCriteria:u,onChange:d,disabled:e.disabled})]})]})}function AF(e){if(!e||e.length===0||e.length===1&&e[0]===`Resource`)return;let t=[];for(let n of e)n.includes(`/`)?t.push({type:`profile`,value:n}):t.push({type:`resourceType`,value:n,resourceType:n});return t}function jF(e,t){let n=e?.reference?.split(`/`)[0];if(n)return t?.find(e=>e.resourceType===n)||{type:`resourceType`,value:n,resourceType:n};if(t&&t.length>0)return t[0]}async function MF(e,t){let n=tS(t);if(n)return{type:n.type,name:n.name,title:n.title};let r=`{
|
|
199
199
|
StructureDefinitionList(url: "${t}", _sort: "_lastUpdated", _count: 1) {
|
|
200
200
|
type,
|
|
201
201
|
name,
|
|
202
202
|
title,
|
|
203
203
|
}
|
|
204
|
-
}`.replaceAll(/\s+/g,` `);return(await e.graphql(r)).data.StructureDefinitionList[0]}function jF(e){return e.type===`profile`&&!e?.error&&oC(e.resourceType)}function MF(e,t,n){return t===void 0?e:n===void 0?t:`${t}[${n}]`}var NF={indented:`_indented_ldk1d_1`};function PF({propertyDisplayName:e,onClick:t,testId:n}){let r=e?`Add ${e}`:`Add`;return e?(0,L.jsx)(W,{title:r,size:`sm`,color:`green.6`,variant:`subtle`,"data-testid":n,leftSection:(0,L.jsx)(uA,{size:`1.25rem`}),onClick:t,children:r}):(0,L.jsx)(hu,{title:r,color:`green.6`,"data-testid":n,onClick:t,children:(0,L.jsx)(uA,{size:`1.25rem`})})}function FF({propertyDisplayName:e,onClick:t,testId:n}){return(0,L.jsx)(hu,{title:e?`Remove ${e}`:`Remove`,color:`red.5`,"data-testid":n,variant:`subtle`,onClick:t,children:(0,L.jsx)(lA,{size:`1.25rem`})})}function IF(e){let{slice:t,property:n}=e,[r,i]=(0,b.useState)(e.defaultValue),a=t.typeSchema?.elements??t.elements,o=(0,b.useContext)(Fk),s=(0,b.useMemo)(()=>{if(sC(a))return UD({parentContext:o,elements:a,path:e.path,profileUrl:t.typeSchema?.url})},[o,e.path,t.typeSchema?.url,a]);function c(t){i(t),e.onChange&&e.onChange(t)}let l=t.min>0,u=oC(t.elements),d=xw(t.name),f=e.property.readonly&&r.length===0;return LP(Fk.Provider,s,(0,L.jsx)(XP,{title:d,description:t.definition,withAsterisk:l,fhirPath:`${n.path}:${t.name}`,testId:e.testId,readonly:e.property.readonly,children:f?(0,L.jsx)(U,{c:`dimmed`,children:`(empty)`}):(0,L.jsxs)(K,{className:u?NF.indented:void 0,children:[r.map((n,i)=>(0,L.jsxs)(H,{wrap:`nowrap`,children:[(0,L.jsx)(`div`,{style:{flexGrow:1},"data-testid":e.testId&&`${e.testId}-elements-${i}`,children:(0,L.jsx)(KF,{elementDefinitionType:t.type[0],name:t.name,defaultValue:n,onChange:e=>{let t=[...r];t[i]=e,c(t)},outcome:e.outcome,min:t.min,max:t.max,binding:t.binding,path:e.path,valuePath:void 0,readOnly:e.property.readonly})}),!e.property.readonly&&r.length>t.min&&(0,L.jsx)(FF,{propertyDisplayName:d,testId:e.testId&&`${e.testId}-remove-${i}`,onClick:e=>{mj(e);let t=[...r];t.splice(i,1),c(t)}})]},`${i}-${r.length}`)),!e.property.readonly&&r.length<t.max&&(0,L.jsx)(H,{wrap:`nowrap`,style:{justifyContent:`flex-start`},children:(0,L.jsx)(PF,{propertyDisplayName:d,onClick:e=>{mj(e),c([...r,void 0])},testId:e.testId&&`${e.testId}-add`})})]})}))}function LF(e){let{property:t}=e,n=Q(),[r,i]=(0,b.useState)(!0),[a,o]=(0,b.useState)([]),[s]=(0,b.useState)(()=>Array.isArray(e.defaultValue)?e.defaultValue:[]),[c,l]=(0,b.useState)(()=>[s]),u=(0,b.useContext)(Fk),d=t.type[0]?.code;(0,b.useEffect)(()=>{IP({medplum:n,property:t}).then(e=>{o(e);let n=FP(s,e,t.slicing,u.profileUrl);RF(n,e),l(n),i(!1)}).catch(e=>{console.error(e),i(!1)})},[n,t,s,u.profileUrl,l]);function f(t,n){let r=[...c];if(r[n]=t,l(r),e.onChange){let t=r.flat().filter(e=>e!==void 0);e.onChange(t)}}if(r)return(0,L.jsx)(`div`,{children:`Loading...`});let p=a.length,m=c[p],h=!(e.hideNonSliceValues??(d===`Extension`&&a.length>0)),g=bw(t.path),_=e.property.readonly&&a.length===0&&s.length===0;return(0,L.jsxs)(K,{className:e.indent?NF.indented:void 0,children:[_&&(0,L.jsx)(U,{c:`dimmed`,children:`(empty)`}),a.map((n,r)=>(0,L.jsx)(IF,{slice:n,path:e.path,valuePath:e.valuePath,property:t,defaultValue:c[r],onChange:e=>{f(e,r)},testId:`slice-${n.name}`},n.name)),h&&m.map((t,n)=>(0,L.jsxs)(H,{wrap:`nowrap`,style:{flexGrow:1},children:[(0,L.jsx)(`div`,{style:{flexGrow:1},children:(0,L.jsx)(WF,{arrayElement:!0,property:e.property,name:e.name+`.`+n,path:e.path,valuePath:MF(e.path,e.valuePath,n),defaultValue:t,onChange:e=>{let t=[...m];t[n]=e,f(t,p)},defaultPropertyType:void 0,outcome:e.outcome})}),!e.property.readonly&&(0,L.jsx)(FF,{propertyDisplayName:g,testId:`nonsliced-remove-${n}`,onClick:e=>{mj(e);let t=[...m];t.splice(n,1),f(t,p)}})]},`${n}-${m.length}`)),!e.property.readonly&&h&&c.flat().length<t.max&&(0,L.jsx)(H,{wrap:`nowrap`,style:{justifyContent:`flex-start`},children:(0,L.jsx)(PF,{propertyDisplayName:g,onClick:e=>{mj(e);let t=[...m];t.push(void 0),f(t,p)},testId:`nonsliced-add`})})]})}function RF(e,t){for(let n=0;n<t.length;n++){let r=t[n],i=e[n];for(;i.length<r.min;)i.push(void 0)}}function zF(e){let[t,n]=(0,b.useState)(!1),r=At(),i=(0,b.useRef)(null),a={...e.styles};return t||(a.input||={},a.input.WebkitTextSecurity=`disc`),(0,L.jsxs)(gd,{gap:`xs`,children:[(0,L.jsx)(ah,{...e,styles:{...a,root:{...a.root??{},flexGrow:1}},ref:i,autosize:!0,minRows:1,onFocus:()=>n(!0),onBlur:()=>n(!1)}),(0,L.jsx)(hu,{title:`Copy secret`,onClick:()=>{r.copy(i.current?.value),Y({color:`green`,message:`Copied`})},children:(0,L.jsx)(pA,{})})]})}var BF=[`sun`,`mon`,`tue`,`wed`,`thu`,`fri`,`sat`];function VF(e){let[t,n]=(0,b.useState)(e.defaultValue),[r,i]=(0,b.useState)(!e.disabled&&(e.defaultModalOpen??!1));return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(`span`,{"data-testid":`timinginput-display`,children:tw(t)||`No repeat`}),(0,L.jsx)(W,{disabled:e.disabled,onClick:()=>i(!0),children:`Edit`})]}),!e.disabled&&(0,L.jsx)(UF,{path:e.path,visible:r,defaultValue:t,onOk:t=>{e.onChange&&e.onChange(t),n(t),i(!1)},onCancel:()=>i(!1)})]})}var HF={repeat:{period:1,periodUnit:`d`}};function UF(e){let[t,n]=(0,b.useState)(e.defaultValue||HF),[r,i]=(0,b.useState)(()=>(e.defaultValue?.repeat?.timeOfDay??[]).map((e,t)=>({id:t,value:e}))),a=(0,b.useRef)(r.length),{getExtendedProps:o}=(0,b.useContext)(Fk),[s,c,l,u,d,f]=(0,b.useMemo)(()=>[`event`,`repeat`,`repeat.period`,`repeat.periodUnit`,`repeat.dayOfWeek`,`repeat.timeOfDay`].map(t=>o(e.path+`.`+t)),[o,e.path]);function p(e){n(t=>({...t,event:[e]}))}function m(e){n(t=>({...t,repeat:e}))}function h(e){n(t=>({...t,repeat:{...t.repeat,period:e}}))}function g(e){n(t=>({...t,repeat:{...t.repeat,periodUnit:e}}))}function _(e){n(t=>({...t,repeat:{...t.repeat,dayOfWeek:e}}))}function v(e){i(t=>{let r=e(t),i=r.map(e=>e.value);return n(e=>({...e,repeat:{...e.repeat,timeOfDay:i}})),r})}return(0,L.jsx)(ng,{title:`Timing`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:()=>e.onCancel(),children:(0,L.jsxs)(K,{gap:`md`,children:[(0,L.jsx)(XP,{title:`Starts on`,htmlFor:`timing-dialog-start`,children:(0,L.jsx)(lF,{disabled:s?.readonly,name:`timing-dialog-start`,onChange:e=>p(e)})}),(0,L.jsx)(Ay,{disabled:c?.readonly,label:`Repeat`,checked:!!t.repeat,onChange:e=>m(e.currentTarget.checked?HF.repeat:void 0)}),t.repeat&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(XP,{title:`Repeat every`,htmlFor:`timing-dialog-period`,children:(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(ab,{disabled:l?.readonly,type:`number`,step:1,id:`timing-dialog-period`,name:`timing-dialog-period`,defaultValue:t.repeat.period||1,onChange:e=>h(Number.parseInt(e.currentTarget.value,10)||1)}),(0,L.jsx)(Tg,{disabled:u?.readonly,id:`timing-dialog-periodUnit`,name:`timing-dialog-periodUnit`,defaultValue:t.repeat.periodUnit,onChange:e=>g(e.currentTarget.value),data:[{label:`minute`,value:`min`},{label:`hour`,value:`h`},{label:`day`,value:`d`},{label:`week`,value:`wk`},{label:`month`,value:`mo`},{label:`year`,value:`a`}]})]})}),t.repeat.periodUnit===`wk`&&(0,L.jsx)(XP,{title:`Repeat on`,children:(0,L.jsx)(Qp.Group,{multiple:!0,onChange:_,value:t.repeat?.dayOfWeek,children:(0,L.jsx)(H,{justify:`space-between`,mt:`xs`,gap:`xs`,children:BF.map(e=>(0,L.jsx)(Qp,{value:e,size:`xs`,radius:`xl`,disabled:d?.readonly,checked:(t.repeat?.dayOfWeek??[]).includes(e),children:e.charAt(0).toUpperCase()},e))})})}),(0,L.jsx)(XP,{title:`At times`,children:(0,L.jsxs)(K,{mt:`xs`,children:[r.map((e,t)=>(0,L.jsxs)(H,{children:[(0,L.jsx)(ab,{disabled:f?.readonly,type:`time`,id:`timing-dialog-repeat-timeOfDay[${t}]`,name:`timing-dialog-repeat-timeOfDay[${t}]`,"data-testid":`timing-repeat-timeOfDay-input-${t}`,defaultValue:e.value.slice(0,5),onChange:n=>{let r=`${n.currentTarget.value}:00`;v(n=>n.with(t,{...e,value:r}))},style:{flexGrow:1}}),(0,L.jsx)(FF,{testId:`timing-repeat-timeOfDay-remove-${t}`,onClick:()=>v(e=>e.toSpliced(t,1))})]},e.id)),(0,L.jsx)(B,{children:(0,L.jsx)(PF,{propertyDisplayName:`Time of Day`,onClick:()=>v(e=>{let t=a.current++;return e.concat({id:t,value:`00:00:00`})})})})]})})]}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{onClick:()=>e.onOk(t),children:`OK`})})]})})}function WF(e){let{property:t,name:n,onChange:r,defaultValue:i}=e,a=e.defaultPropertyType&&e.defaultPropertyType!==`undefined`?e.defaultPropertyType:t.type[0].code,o=t.type;if((t.isArray||t.max>1)&&!e.arrayElement){if(a===X.Attachment)return(0,L.jsx)(jN,{name:n,defaultValue:i,onChange:r,disabled:t.readonly});let s=o[0]?.code!==X.Extension;return(0,L.jsx)(LF,{property:t,name:n,path:e.path,valuePath:e.valuePath,defaultValue:i,indent:s,onChange:r,outcome:e.outcome})}else if(o.length>1)return(0,L.jsx)(GF,{elementDefinitionTypes:o,...e});else return(0,L.jsx)(KF,{name:n,defaultValue:i,onChange:t=>{if(e.onChange){let n=e.name.replace(`[x]`,EC(o[0].code));e.onChange(t,n)}},outcome:e.outcome,elementDefinitionType:o[0],min:t.min,max:t.min,binding:t.binding,path:e.path,valuePath:e.valuePath,readOnly:t.readonly})}function GF(e){let t=e.elementDefinitionTypes,n;e.defaultPropertyType&&(n=t.find(t=>t.code===e.defaultPropertyType)),n||=t[0];let[r,i]=(0,b.useState)(n);return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,align:`flex-start`,children:[(0,L.jsx)(Tg,{disabled:e.property.readonly,style:{width:`200px`},defaultValue:r.code,"data-testid":e.name&&e.name+`-selector`,onChange:e=>{i(t.find(t=>t.code===e.currentTarget.value))},data:t.map(e=>({value:e.code,label:e.code}))}),(0,L.jsx)(KF,{name:e.name,defaultValue:e.defaultValue,outcome:e.outcome,elementDefinitionType:r,onChange:t=>{e.onChange&&e.onChange(t,e.name.replace(`[x]`,EC(r.code)))},min:e.property.min,max:e.property.max,binding:e.property.binding,path:e.property.path,valuePath:e.valuePath,readOnly:e.property.readonly})]})}function KF(e){let{name:t,onChange:n,outcome:r,binding:i,path:a,valuePath:o,readOnly:s}=e,c=e.min!==void 0&&e.min>0,l=e.elementDefinitionType.code,u=(0,b.useContext)(Fk),d=(0,b.useMemo)(()=>{if(!DC(l)||!oC(e.defaultValue))return e.defaultValue;let t=Object.create(null);if(u.path===e.path)tO(t,u.elements);else{let n=OC(u.path,e.path);if(n===void 0)return e.defaultValue;tO(t,u.elements,n)}return sC(t)?t:e.defaultValue},[l,u.path,u.elements,e.path,e.defaultValue]);if(!l)return(0,L.jsx)(`div`,{children:`Property type not specified `});function f(){return{name:t,defaultValue:d,onChange:n,outcome:r,path:a,valuePath:o,disabled:s}}function p(){let n=zN(e.outcome,o??a);return{id:t,name:t,"data-testid":t,defaultValue:d,required:c,error:n,disabled:s}}switch(l){case X.SystemString:case X.canonical:case X.string:case X.uri:case X.url:return e.path===`Project.secret.value[x]`?(0,L.jsx)(zF,{...p(),onChange:t=>{e.onChange&&e.onChange(t.currentTarget.value)}}):(0,L.jsx)(ab,{...p(),onChange:e=>{n&&n(e.currentTarget.value)}});case X.date:return(0,L.jsx)(ab,{...p(),type:`date`,onChange:e=>{n&&n(e.currentTarget.value)}});case X.time:return(0,L.jsx)(ab,{...p(),type:`time`,step:1,onChange:e=>{n&&n(e.currentTarget.value)}});case X.dateTime:case X.instant:return(0,L.jsx)(lF,{...p(),onChange:n,outcome:r});case X.decimal:case X.integer:case X.positiveInt:case X.unsignedInt:return(0,L.jsx)(ab,{...p(),type:`number`,step:l===X.decimal?`any`:`1`,onChange:e=>{if(n){let t=e.currentTarget.valueAsNumber;n(Number.isNaN(t)?void 0:t)}}});case X.code:return(0,L.jsx)($M,{...p(),error:void 0,onChange:n,binding:i?.valueSet,creatable:!0,maxValues:1});case X.boolean:return(0,L.jsx)(cp,{...p(),defaultChecked:!!d,onChange:e=>{n&&n(e.currentTarget.checked)}});case X.base64Binary:case X.markdown:case X.xhtml:return(0,L.jsx)(ah,{...p(),spellCheck:l!==X.base64Binary,onChange:e=>{n&&n(e.currentTarget.value)}});case X.Address:return(0,L.jsx)(Vk,{...f()});case X.Annotation:return(0,L.jsx)(Hk,{...f()});case X.Attachment:return(0,L.jsx)(MN,{...f()});case X.CodeableConcept:return(0,L.jsx)($P,{binding:i?.valueSet,...f()});case X.Coding:return(0,L.jsx)(nF,{binding:i?.valueSet,...f()});case X.ContactDetail:return(0,L.jsx)(oF,{...f()});case X.ContactPoint:return(0,L.jsx)(aF,{...f()});case X.Extension:return(0,L.jsx)(dF,{...f(),propertyType:e.elementDefinitionType});case X.HumanName:return(0,L.jsx)(fF,{...f()});case X.Identifier:return(0,L.jsx)(pF,{...f()});case X.Money:return(0,L.jsx)(hF,{...f()});case X.Period:return(0,L.jsx)(gF,{...f()});case X.Duration:case X.Quantity:return(0,L.jsx)(_F,{...f()});case X.Range:return(0,L.jsx)(yF,{...f()});case X.Ratio:return(0,L.jsx)(bF,{...f()});case X.Reference:return(0,L.jsx)(DF,{...f(),targetTypes:JF(e.elementDefinitionType)});case X.Timing:return(0,L.jsx)(VF,{...f()});case X.Dosage:case X.UsageContext:default:return(0,L.jsx)(ZF,{...f(),typeName:l})}}var qF=[`${px}/fhir/StructureDefinition/`,`https://medplum.com/fhir/StructureDefinition/`];function JF(e){return e?.targetProfile?.map(e=>{let t=qF.find(t=>e.startsWith(t));return t?e.slice(t.length):e})}function YF(e){let[t,n]=(0,b.useState)(e.defaultValue??{}),r=(0,b.useContext)(Fk),i=(0,b.useMemo)(()=>Rk(r.elements),[r.elements]);function a(t){n(t),e.onChange&&e.onChange(t)}let o={type:e.type,value:t};return(0,L.jsx)(K,{style:{flexGrow:1},"data-testid":e.testId,children:i.map(([n,r])=>{let[i,s]=DP(o,n,r),c=r.min!==void 0&&r.min>0,l=e.valuePath?e.valuePath+`.`+n:void 0,u=(0,L.jsx)(WF,{property:r,name:n,path:e.path+`.`+n,valuePath:l,defaultValue:i,defaultPropertyType:s,onChange:(e,i)=>{a(ZP({...t},n,i??n,r,e))},outcome:e.outcome},n);return e.type===`Extension`||Ik.includes(n)?u:r.type.length===1&&r.type[0].code===`boolean`?(0,L.jsx)(YP,{title:bw(n),description:r.description,htmlFor:n,fhirPath:r.path,withAsterisk:c,readonly:r.readonly,children:u},n):(0,L.jsx)(XP,{title:bw(n),description:r.description,withAsterisk:c,htmlFor:n,outcome:e.outcome,fhirPath:r.path,errorExpression:l,readonly:r.readonly,children:u},n)})})}var XF={nested:`_nested_1ya4k_1`};function ZF(e){let[t]=(0,b.useState)(()=>e.defaultValue??{}),n=(0,b.useContext)(Fk),r=e.profileUrl??n?.profileUrl,i=(0,b.useMemo)(()=>Qx(e.typeName,r),[e.typeName,r]),a=i?.type??e.typeName,o=(0,b.useMemo)(()=>{if(i)return UD({parentContext:n,elements:i.elements,path:e.path,profileUrl:i.url,accessPolicyResource:e.accessPolicyResource})},[i,n,e.path,e.accessPolicyResource]);if(!i)return(0,L.jsxs)(`div`,{children:[a,`\xA0not implemented`]});let s=n.path!==``;return LP(Fk.Provider,o,(0,L.jsx)(B,{className:jn({[XF.nested]:s}),children:(0,L.jsx)(YF,{path:e.path,valuePath:e.valuePath,type:a,defaultValue:t,onChange:e.onChange,outcome:e.outcome})}))}var QF=class{x;y;pressure;time;constructor(e,t,n,r){if(isNaN(e)||isNaN(t))throw Error(`Point is invalid: (${e}, ${t})`);this.x=+e,this.y=+t,this.pressure=n||0,this.time=r||Date.now()}distanceTo(e){return Math.sqrt((this.x-e.x)**2+(this.y-e.y)**2)}equals(e){return this.x===e.x&&this.y===e.y&&this.pressure===e.pressure&&this.time===e.time}velocityFrom(e){return this.time===e.time?0:this.distanceTo(e)/(this.time-e.time)}},$F=class e{constructor(e,t,n,r,i,a){this.startPoint=e,this.control2=t,this.control1=n,this.endPoint=r,this.startWidth=i,this.endWidth=a}static fromPoints(t,n){let r=this.calculateControlPoints(t[0],t[1],t[2]).c2,i=this.calculateControlPoints(t[1],t[2],t[3]).c1;return new e(t[1],r,i,t[2],n.start,n.end)}static calculateControlPoints(e,t,n){let r=e.x-t.x,i=e.y-t.y,a=t.x-n.x,o=t.y-n.y,s={x:(e.x+t.x)/2,y:(e.y+t.y)/2},c={x:(t.x+n.x)/2,y:(t.y+n.y)/2},l=Math.sqrt(r*r+i*i),u=Math.sqrt(a*a+o*o),d=s.x-c.x,f=s.y-c.y,p=l+u==0?0:u/(l+u),m={x:c.x+d*p,y:c.y+f*p},h=t.x-m.x,g=t.y-m.y;return{c1:new QF(s.x+h,s.y+g),c2:new QF(c.x+h,c.y+g)}}length(){let e=0,t,n;for(let r=0;r<=10;r+=1){let i=r/10,a=this.point(i,this.startPoint.x,this.control1.x,this.control2.x,this.endPoint.x),o=this.point(i,this.startPoint.y,this.control1.y,this.control2.y,this.endPoint.y);if(r>0){let r=a-t,i=o-n;e+=Math.sqrt(r*r+i*i)}t=a,n=o}return e}point(e,t,n,r,i){return t*(1-e)*(1-e)*(1-e)+3*n*(1-e)*(1-e)*e+3*r*(1-e)*e*e+i*e*e*e}},eI=class{_et;constructor(){try{this._et=new EventTarget}catch{this._et=document}}addEventListener(e,t,n){this._et.addEventListener(e,t,n)}dispatchEvent(e){return this._et.dispatchEvent(e)}removeEventListener(e,t,n){this._et.removeEventListener(e,t,n)}};function tI(e,t=250){let n=0,r=null,i,a,o,s=()=>{n=Date.now(),r=null,i=e.apply(a,o),r||(a=null,o=[])};return function(...c){let l=Date.now(),u=t-(l-n);return a=this,o=c,u<=0||u>t?(r&&=(clearTimeout(r),null),n=l,i=e.apply(a,o),r||(a=null,o=[])):r||=window.setTimeout(s,u),i}}var nI=class e extends eI{constructor(t,n={}){super(),this.canvas=t,this.velocityFilterWeight=n.velocityFilterWeight||.7,this.minWidth=n.minWidth||.5,this.maxWidth=n.maxWidth||2.5,this.throttle=n.throttle??16,this.minDistance=n.minDistance??5,this.dotSize=n.dotSize||0,this.penColor=n.penColor||`black`,this.backgroundColor=n.backgroundColor||`rgba(0,0,0,0)`,this.compositeOperation=n.compositeOperation||`source-over`,this.canvasContextOptions=n.canvasContextOptions??{},this._strokeMoveUpdate=this.throttle?tI(e.prototype._strokeUpdate,this.throttle):e.prototype._strokeUpdate,this._handleMouseDown=this._handleMouseDown.bind(this),this._handleMouseMove=this._handleMouseMove.bind(this),this._handleMouseUp=this._handleMouseUp.bind(this),this._handleTouchStart=this._handleTouchStart.bind(this),this._handleTouchMove=this._handleTouchMove.bind(this),this._handleTouchEnd=this._handleTouchEnd.bind(this),this._handlePointerDown=this._handlePointerDown.bind(this),this._handlePointerMove=this._handlePointerMove.bind(this),this._handlePointerUp=this._handlePointerUp.bind(this),this._handlePointerCancel=this._handlePointerCancel.bind(this),this._handleTouchCancel=this._handleTouchCancel.bind(this),this._ctx=t.getContext(`2d`,this.canvasContextOptions),this.clear(),this.on()}dotSize;minWidth;maxWidth;penColor;minDistance;velocityFilterWeight;compositeOperation;backgroundColor;throttle;canvasContextOptions;_ctx;_drawingStroke=!1;_isEmpty=!0;_dataUrl;_dataUrlOptions;_lastPoints=[];_data=[];_lastVelocity=0;_lastWidth=0;_strokeMoveUpdate;_strokePointerId;clear(){let{_ctx:e,canvas:t}=this;e.fillStyle=this.backgroundColor,e.clearRect(0,0,t.width,t.height),e.fillRect(0,0,t.width,t.height),this._data=[],this._reset(this._getPointGroupOptions()),this._isEmpty=!0,this._dataUrl=void 0,this._dataUrlOptions=void 0,this._strokePointerId=void 0}redraw(){let e=this._data,t=this._dataUrl,n=this._dataUrlOptions;this.clear(),t&&this.fromDataURL(t,n),this.fromData(e,{clear:!1})}fromDataURL(e,t={}){return new Promise((n,r)=>{let i=new Image,a=t.ratio||window.devicePixelRatio||1,o=t.width||this.canvas.width/a,s=t.height||this.canvas.height/a,c=t.xOffset||0,l=t.yOffset||0;this._reset(this._getPointGroupOptions()),i.onload=()=>{this._ctx.drawImage(i,c,l,o,s),n()},i.onerror=e=>{r(e)},i.crossOrigin=`anonymous`,i.src=e,this._isEmpty=!1,this._dataUrl=e,this._dataUrlOptions={...t}})}toDataURL(e=`image/png`,t){switch(e){case`image/svg+xml`:return typeof t!=`object`&&(t=void 0),`data:image/svg+xml;base64,${btoa(this.toSVG(t))}`;default:return typeof t!=`number`&&(t=void 0),this.canvas.toDataURL(e,t)}}on(){this.canvas.style.touchAction=`none`,this.canvas.style.msTouchAction=`none`,this.canvas.style.userSelect=`none`,this.canvas.style.webkitUserSelect=`none`;let e=/Macintosh/.test(navigator.userAgent)&&`ontouchstart`in document;window.PointerEvent&&!e?this._handlePointerEvents():(this._handleMouseEvents(),`ontouchstart`in window&&this._handleTouchEvents())}off(){this.canvas.style.touchAction=`auto`,this.canvas.style.msTouchAction=`auto`,this.canvas.style.userSelect=`auto`,this.canvas.style.webkitUserSelect=`auto`,this.canvas.removeEventListener(`pointerdown`,this._handlePointerDown),this.canvas.removeEventListener(`mousedown`,this._handleMouseDown),this.canvas.removeEventListener(`touchstart`,this._handleTouchStart),this._removeMoveUpEventListeners()}_getListenerFunctions(){let e=window.document===this.canvas.ownerDocument?window:this.canvas.ownerDocument.defaultView??this.canvas.ownerDocument;return{addEventListener:e.addEventListener.bind(e),removeEventListener:e.removeEventListener.bind(e)}}_removeMoveUpEventListeners(){let{removeEventListener:e}=this._getListenerFunctions();e(`pointermove`,this._handlePointerMove),e(`pointerup`,this._handlePointerUp),e(`pointercancel`,this._handlePointerCancel),e(`mousemove`,this._handleMouseMove),e(`mouseup`,this._handleMouseUp),e(`touchmove`,this._handleTouchMove),e(`touchend`,this._handleTouchEnd),e(`touchcancel`,this._handleTouchCancel)}isEmpty(){return this._isEmpty}fromData(e,{clear:t=!0}={}){t&&this.clear(),this._fromData(e,this._drawCurve.bind(this),this._drawDot.bind(this)),this._data=this._data.concat(e)}toData(){return this._data}_isLeftButtonPressed(e,t){return t?e.buttons===1:(e.buttons&1)==1}_pointerEventToSignatureEvent(e){return{event:e,type:e.type,x:e.clientX,y:e.clientY,pressure:`pressure`in e?e.pressure:0}}_touchEventToSignatureEvent(e){let t=e.changedTouches[0];return{event:e,type:e.type,x:t.clientX,y:t.clientY,pressure:t.force}}_handleMouseDown(e){!this._isLeftButtonPressed(e,!0)||this._drawingStroke||this._strokeBegin(this._pointerEventToSignatureEvent(e))}_handleMouseMove(e){if(!this._isLeftButtonPressed(e,!0)||!this._drawingStroke){this._strokeEnd(this._pointerEventToSignatureEvent(e),!1);return}this._strokeMoveUpdate(this._pointerEventToSignatureEvent(e))}_handleMouseUp(e){this._isLeftButtonPressed(e)||this._strokeEnd(this._pointerEventToSignatureEvent(e))}_handleTouchStart(e){e.targetTouches.length!==1||this._drawingStroke||(e.cancelable&&e.preventDefault(),this._strokeBegin(this._touchEventToSignatureEvent(e)))}_handleTouchMove(e){if(e.targetTouches.length===1){if(e.cancelable&&e.preventDefault(),!this._drawingStroke){this._strokeEnd(this._touchEventToSignatureEvent(e),!1);return}this._strokeMoveUpdate(this._touchEventToSignatureEvent(e))}}_handleTouchEnd(e){e.targetTouches.length===0&&(e.cancelable&&e.preventDefault(),this._strokeEnd(this._touchEventToSignatureEvent(e)))}_handlePointerCancel(e){this._allowPointerId(e)&&(e.preventDefault(),this._strokeEnd(this._pointerEventToSignatureEvent(e),!1))}_handleTouchCancel(e){e.cancelable&&e.preventDefault(),this._strokeEnd(this._touchEventToSignatureEvent(e),!1)}_getPointerId(e){return e.persistentDeviceId||e.pointerId}_allowPointerId(e,t=!1){return this._strokePointerId===void 0?t:this._getPointerId(e)===this._strokePointerId}_handlePointerDown(e){this._drawingStroke||!this._isLeftButtonPressed(e)||!this._allowPointerId(e,!0)||(this._strokePointerId=this._getPointerId(e),e.preventDefault(),this._strokeBegin(this._pointerEventToSignatureEvent(e)))}_handlePointerMove(e){if(this._allowPointerId(e)){if(!this._isLeftButtonPressed(e,!0)||!this._drawingStroke){this._strokeEnd(this._pointerEventToSignatureEvent(e),!1);return}e.preventDefault(),this._strokeMoveUpdate(this._pointerEventToSignatureEvent(e))}}_handlePointerUp(e){this._isLeftButtonPressed(e)||!this._allowPointerId(e)||(e.preventDefault(),this._strokeEnd(this._pointerEventToSignatureEvent(e)))}_getPointGroupOptions(e){return{penColor:e&&`penColor`in e?e.penColor:this.penColor,dotSize:e&&`dotSize`in e?e.dotSize:this.dotSize,minWidth:e&&`minWidth`in e?e.minWidth:this.minWidth,maxWidth:e&&`maxWidth`in e?e.maxWidth:this.maxWidth,velocityFilterWeight:e&&`velocityFilterWeight`in e?e.velocityFilterWeight:this.velocityFilterWeight,compositeOperation:e&&`compositeOperation`in e?e.compositeOperation:this.compositeOperation}}_strokeBegin(e){if(!this.dispatchEvent(new CustomEvent(`beginStroke`,{detail:e,cancelable:!0})))return;let{addEventListener:t}=this._getListenerFunctions();switch(e.event.type){case`mousedown`:t(`mousemove`,this._handleMouseMove,{passive:!1}),t(`mouseup`,this._handleMouseUp,{passive:!1});break;case`touchstart`:t(`touchmove`,this._handleTouchMove,{passive:!1}),t(`touchend`,this._handleTouchEnd,{passive:!1}),t(`touchcancel`,this._handleTouchCancel,{passive:!1});break;case`pointerdown`:t(`pointermove`,this._handlePointerMove,{passive:!1}),t(`pointerup`,this._handlePointerUp,{passive:!1}),t(`pointercancel`,this._handlePointerCancel,{passive:!1});break;default:}this._drawingStroke=!0;let n=this._getPointGroupOptions(),r={...n,points:[]};this._data.push(r),this._reset(n),this._strokeUpdate(e)}_strokeUpdate(e){if(!this._drawingStroke)return;if(this._data.length===0){this._strokeBegin(e);return}this.dispatchEvent(new CustomEvent(`beforeUpdateStroke`,{detail:e}));let t=this._createPoint(e.x,e.y,e.pressure),n=this._data[this._data.length-1],r=n.points,i=r.length>0&&r[r.length-1],a=i?t.distanceTo(i)<=this.minDistance:!1,o=this._getPointGroupOptions(n);if(!i||!(i&&a)){let e=this._addPoint(t,o);i?e&&this._drawCurve(e,o):this._drawDot(t,o),r.push({time:t.time,x:t.x,y:t.y,pressure:t.pressure})}this.dispatchEvent(new CustomEvent(`afterUpdateStroke`,{detail:e}))}_strokeEnd(e,t=!0){this._removeMoveUpEventListeners(),this._drawingStroke&&(t&&this._strokeUpdate(e),this._drawingStroke=!1,this._strokePointerId=void 0,this.dispatchEvent(new CustomEvent(`endStroke`,{detail:e})))}_handlePointerEvents(){this._drawingStroke=!1,this.canvas.addEventListener(`pointerdown`,this._handlePointerDown,{passive:!1})}_handleMouseEvents(){this._drawingStroke=!1,this.canvas.addEventListener(`mousedown`,this._handleMouseDown,{passive:!1})}_handleTouchEvents(){this.canvas.addEventListener(`touchstart`,this._handleTouchStart,{passive:!1})}_reset(e){this._lastPoints=[],this._lastVelocity=0,this._lastWidth=(e.minWidth+e.maxWidth)/2,this._ctx.fillStyle=e.penColor,this._ctx.globalCompositeOperation=e.compositeOperation}_createPoint(e,t,n){let r=this.canvas.getBoundingClientRect();return new QF(e-r.left,t-r.top,n,new Date().getTime())}_addPoint(e,t){let{_lastPoints:n}=this;if(n.push(e),n.length>2){n.length===3&&n.unshift(n[0]);let e=this._calculateCurveWidths(n[1],n[2],t),r=$F.fromPoints(n,e);return n.shift(),r}return null}_calculateCurveWidths(e,t,n){let r=n.velocityFilterWeight*t.velocityFrom(e)+(1-n.velocityFilterWeight)*this._lastVelocity,i=this._strokeWidth(r,n),a={end:i,start:this._lastWidth};return this._lastVelocity=r,this._lastWidth=i,a}_strokeWidth(e,t){return Math.max(t.maxWidth/(e+1),t.minWidth)}_drawCurveSegment(e,t,n){let r=this._ctx;r.moveTo(e,t),r.arc(e,t,n,0,2*Math.PI,!1),this._isEmpty=!1}_drawCurve(e,t){let n=this._ctx,r=e.endWidth-e.startWidth,i=Math.ceil(e.length())*2;n.beginPath(),n.fillStyle=t.penColor;for(let n=0;n<i;n+=1){let a=n/i,o=a*a,s=o*a,c=1-a,l=c*c,u=l*c,d=u*e.startPoint.x;d+=3*l*a*e.control1.x,d+=3*c*o*e.control2.x,d+=s*e.endPoint.x;let f=u*e.startPoint.y;f+=3*l*a*e.control1.y,f+=3*c*o*e.control2.y,f+=s*e.endPoint.y;let p=Math.min(e.startWidth+s*r,t.maxWidth);this._drawCurveSegment(d,f,p)}n.closePath(),n.fill()}_drawDot(e,t){let n=this._ctx,r=t.dotSize>0?t.dotSize:(t.minWidth+t.maxWidth)/2;n.beginPath(),this._drawCurveSegment(e.x,e.y,r),n.closePath(),n.fillStyle=t.penColor,n.fill()}_fromData(e,t,n){for(let r of e){let{points:e}=r,i=this._getPointGroupOptions(r);if(e.length>1)for(let n=0;n<e.length;n+=1){let r=e[n],a=new QF(r.x,r.y,r.pressure,r.time);n===0&&this._reset(i);let o=this._addPoint(a,i);o&&t(o,i)}else this._reset(i),n(e[0],i)}}toSVG({includeBackgroundColor:e=!1,includeDataUrl:t=!1}={}){let n=this._data,r=Math.max(window.devicePixelRatio||1,1),i=this.canvas.width/r,a=this.canvas.height/r,o=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);if(o.setAttribute(`xmlns`,`http://www.w3.org/2000/svg`),o.setAttribute(`xmlns:xlink`,`http://www.w3.org/1999/xlink`),o.setAttribute(`viewBox`,`0 0 ${i} ${a}`),o.setAttribute(`width`,i.toString()),o.setAttribute(`height`,a.toString()),e&&this.backgroundColor){let e=document.createElement(`rect`);e.setAttribute(`width`,`100%`),e.setAttribute(`height`,`100%`),e.setAttribute(`fill`,this.backgroundColor),o.appendChild(e)}if(t&&this._dataUrl){let e=this._dataUrlOptions?.ratio||window.devicePixelRatio||1,t=this._dataUrlOptions?.width||this.canvas.width/e,n=this._dataUrlOptions?.height||this.canvas.height/e,r=this._dataUrlOptions?.xOffset||0,i=this._dataUrlOptions?.yOffset||0,a=document.createElement(`image`);a.setAttribute(`x`,r.toString()),a.setAttribute(`y`,i.toString()),a.setAttribute(`width`,t.toString()),a.setAttribute(`height`,n.toString()),a.setAttribute(`preserveAspectRatio`,`none`),a.setAttribute(`href`,this._dataUrl),o.appendChild(a)}return this._fromData(n,(e,{penColor:t})=>{let n=document.createElement(`path`);if(!isNaN(e.control1.x)&&!isNaN(e.control1.y)&&!isNaN(e.control2.x)&&!isNaN(e.control2.y)){let r=`M ${e.startPoint.x.toFixed(3)},${e.startPoint.y.toFixed(3)} C ${e.control1.x.toFixed(3)},${e.control1.y.toFixed(3)} ${e.control2.x.toFixed(3)},${e.control2.y.toFixed(3)} ${e.endPoint.x.toFixed(3)},${e.endPoint.y.toFixed(3)}`;n.setAttribute(`d`,r),n.setAttribute(`stroke-width`,(e.endWidth*2.25).toFixed(3)),n.setAttribute(`stroke`,t),n.setAttribute(`fill`,`none`),n.setAttribute(`stroke-linecap`,`round`),o.appendChild(n)}},(e,{penColor:t,dotSize:n,minWidth:r,maxWidth:i})=>{let a=document.createElement(`circle`),s=n>0?n:(r+i)/2;a.setAttribute(`r`,s.toString()),a.setAttribute(`cx`,e.x.toString()),a.setAttribute(`cy`,e.y.toString()),a.setAttribute(`fill`,t),o.appendChild(a)}),o.outerHTML}};function rI(e){let t=Q(),{width:n=500,height:r=200,defaultValue:i,who:a,onChange:o,...s}=e,c=(0,b.useRef)(null),l=(0,b.useRef)(null),u=(0,b.useRef)(o);u.current=o,(0,b.useEffect)(()=>{function e(){u.current?.({type:[{system:px+`/fhir/signature-type`,code:`ProofOfOrigin`,display:`Proof of Origin`}],when:new Date().toISOString(),who:a??WS(t.getProfile()),data:l.current?.toDataURL().split(`,`)[1]})}if(c.current){let t=new nI(c.current);i?.data&&t.fromDataURL(i.data).catch(console.error),t.addEventListener(`endStroke`,e),l.current=t}return()=>{l.current&&l.current.removeEventListener(`beginStroke`,e)}},[t,i,a]);let d=()=>{l.current&&l.current.clear(),u.current?.(void 0)};return(0,L.jsxs)(vl,{withBorder:!0,p:0,w:n,h:r,pos:`relative`,...s,children:[(0,L.jsx)(`canvas`,{ref:c,width:n,height:r,"aria-label":`Signature input area`}),(0,L.jsx)(W,{onClick:d,"aria-label":`Clear signature`,pos:`absolute`,top:0,right:0,size:`xs`,leftSection:(0,L.jsx)(aj,{size:16}),variant:`subtle`,color:`gray`,children:`Clear`})]})}function iI(e){let t=[...e.context,e.responseItem];return(0,L.jsxs)(`div`,{children:[e.item.text&&(0,L.jsx)(J,{order:3,mb:`md`,children:e.item.text}),(0,L.jsx)(EI,{formState:e.formState,context:t,items:e.item.item??[],responseItems:e.responseItem.item??[]})]},e.item.linkId)}var aI=30,oI=50;function sI(e){let t=e.formState,n=e.item,r=e.responseItem;function i(i){if(t&&e.context)if(n.repeats&&e.index!==void 0&&n.type!==VO.choice&&n.type!==VO.openChoice){let n=[...r.answer||[]];i.length===0?n.splice(e.index,1):n[e.index]=i[0],t.onChangeAnswer(e.context,e.item,n)}else t.onChangeAnswer(e.context,e.item,i)}let a=n.type;if(!a)return null;let o=n.linkId;if(!o)return null;let s=n.repeats&&e.index!==void 0&&n.type!==VO.choice&&n.type!==VO.openChoice?`${o}-${e.index}`:o,c;n.initial&&n.initial.length>0?c=n.initial[0]:n.answerOption&&n.answerOption.length>0&&(c=n.answerOption.find(e=>e.initialSelected));let l=hI(r,e.index)??yk(c),u=tC(r,`${px}/fhir/StructureDefinition/questionnaire-validationError`),d=null;switch(a){case VO.display:d=(0,L.jsx)(`p`,{children:e.item.text},e.item.linkId);break;case VO.boolean:d=(0,L.jsx)(YP,{title:e.item.text,htmlFor:s,children:(0,L.jsx)(cp,{id:s,name:o,required:e.required??n.required,defaultChecked:l?.value,onChange:e=>i([{valueBoolean:e.currentTarget.checked}])})},e.item.linkId);break;case VO.decimal:d=(0,L.jsx)(ab,{type:`number`,step:`any`,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i(e.currentTarget.value===``?[]:[{valueDecimal:e.currentTarget.valueAsNumber}])});break;case VO.integer:d=(0,L.jsx)(ab,{type:`number`,step:1,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i(e.currentTarget.value===``?[]:[{valueInteger:e.currentTarget.valueAsNumber}])});break;case VO.date:d=(0,L.jsx)(ab,{type:`date`,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueDate:e.currentTarget.value}])});break;case VO.dateTime:d=(0,L.jsx)(lF,{name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueDateTime:e}])});break;case VO.time:d=(0,L.jsx)(ab,{type:`time`,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueTime:e.currentTarget.value}])});break;case VO.string:case VO.url:d=(0,L.jsx)(ab,{id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>{let t=e.currentTarget.value;i(t===``?[]:[{valueString:t}])}});break;case VO.text:d=(0,L.jsx)(ah,{id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>{let t=e.currentTarget.value;i(t===``?[]:[{valueString:t}])}});break;case VO.attachment:d=(0,L.jsx)(H,{py:4,children:(0,L.jsx)(MN,{path:``,name:s,defaultValue:l?.value,onChange:e=>i([{valueAttachment:e}])})});break;case VO.reference:d=(0,L.jsx)(DF,{name:s,required:e.required??n.required,targetTypes:uk(n),searchCriteria:fk(n,t?.subject,t?.encounter),defaultValue:l?.value,onChange:e=>i([{valueReference:e}])});break;case VO.quantity:d=(0,L.jsx)(_F,{path:``,name:s,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueQuantity:e}]),disableWheel:!0});break;case VO.choice:case VO.openChoice:d=bI(n)?(0,L.jsx)(pI,{name:s,item:n,required:e.required??n.required,initial:c,response:r,onChangeAnswer:e=>i(e)}):yI(n)||n.answerValueSet&&!xI(n)?(0,L.jsx)(cI,{name:s,item:n,required:e.required??n.required,initial:c,response:r,onChangeAnswer:e=>i(e)}):(0,L.jsx)(fI,{name:s,item:n,required:e.required??n.required,initial:c,response:r,onChangeAnswer:e=>i(e)});break;default:return null}return(0,L.jsxs)(L.Fragment,{children:[d,u?.valueString&&(0,L.jsx)(U,{c:`red`,size:`lg`,mt:4,children:u.valueString})]})}function cI(e){let{name:t,item:n,required:r,initial:i,onChangeAnswer:a,response:o}=e;if(!n.answerOption?.length&&!n.answerValueSet)return(0,L.jsx)(mI,{});let s=yk(i),c=hI(o)??s,l=gI(o),u=n.repeats||SI(n);if(n.answerValueSet)return(0,L.jsx)(ZM,{name:t,placeholder:`Select items`,binding:n.answerValueSet,maxValues:u?void 0:1,required:r,onChange:e=>{u?e.length===0?a([{}]):a(e.map(e=>({valueCoding:e}))):a([{valueCoding:e[0]}])},defaultValue:c?.value});if(u){let{propertyName:e,data:t}=CI(n);return(0,L.jsx)(xg,{data:t,placeholder:`Select items`,searchable:!0,defaultValue:l||[WC(s)],required:r,onChange:t=>{t.length===0?a([{}]):a(ok(t,e,n))}})}else{let e=[``];if(n.answerOption)for(let t of n.answerOption){let n=bk(t);e.push(WC(n))}return(0,L.jsx)(Tg,{id:t,name:t,required:r,onChange:e=>{let t=e.currentTarget.selectedIndex;if(t===0){a([{}]);return}let r=n.answerOption[t-1],i=bk(r);a([{[`value`+EC(i.type)]:i.value}])},defaultValue:sw(c?.value)||c?.value,data:e})}}function lI(e,t){return e?t.valueSetExpand({url:e,count:aI+1}).then(e=>e.expansion?.contains??[]):Promise.resolve([])}function uI(e){let t=Q(),[n,r]=(0,b.useState)([]),[i,a]=(0,b.useState)(!1);return(0,b.useEffect)(()=>{async function n(){if(e){a(!0);try{r(await lI(e,t))}catch(e){console.error(`Error loading value set:`,e)}finally{a(!1)}}}n().catch(console.error)},[e,t]),[n,i]}function dI(e,t){return e.map((e,n)=>[`${t}-valueset-${n}`,{type:`Coding`,value:{system:e.system,code:e.code,display:e.display}}])}function fI(e){let{name:t,item:n,required:r,initial:i,onChangeAnswer:a,response:o}=e,s=ww(`QuestionnaireItemAnswerOption`,`value[x]`),c=yk(i),[l,u]=uI(n.answerValueSet),d=[],f;if(n.answerValueSet)d.push(...dI(l,t));else if(n.answerOption){let e=n.answerOption.slice(0,oI).map((e,n)=>{let r=`${t}-option-${n}`,i=bk(e);return i?.value?(c&&nC(i)===nC(c)&&(f=r),[r,i]):null}).filter(e=>e!==null);d.push(...e)}let p=_I(d,hI(o));if(u)return(0,L.jsx)(U,{children:`Loading options...`});if(d.length===0)return(0,L.jsx)(mI,{});let m=d.slice(0,aI);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(wv.Group,{name:t,value:p??f,required:r,onChange:e=>{let t=d.find(t=>t[0]===e);if(t){let e=t[1];a([{[`value`+EC(e.type)]:e.value}])}},children:m.map(([e,t])=>(0,L.jsx)(wv,{id:e,value:e,py:4,required:r,label:(0,L.jsx)(VP,{property:s,propertyType:t.type,value:t.value})},e))}),(n.answerValueSet&&d.length>aI||n.answerOption&&d.length>oI)&&(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,mt:`xs`,children:[`Showing first `,aI,` options`]})]})}function pI(e){let{name:t,item:n,onChangeAnswer:r,response:i}=e,a=ww(`QuestionnaireItemAnswerOption`,`value[x]`),[o,s]=uI(n.answerValueSet),[c,l]=(0,b.useState)(n.answerValueSet?(i?.answer?.map(e=>e.valueCoding)||[]).filter(e=>e!==void 0):gI(i)),u=[];if(n.answerValueSet)u.push(...dI(o,t));else if(n.answerOption){let e=n.answerOption.slice(0,oI).map((e,n)=>{let r=`${t}-option-${n}`,i=bk(e);return i?.value?[r,i]:null}).filter(e=>e!==null);u.push(...e)}if(s)return(0,L.jsx)(U,{children:`Loading options...`});if(u.length===0)return(0,L.jsx)(mI,{});let d=u.slice(0,aI),f=(e,t)=>{if(n.answerValueSet){let n=c,i;i=t?[...n,e.value]:n.filter(t=>!lC(t,e.value)),l(i),i.length===0?r([{}]):r(i.map(e=>({valueCoding:e})))}else{let i=c,a=WC(e),o;o=t?[...i,a]:i.filter(e=>e!==a),l(o),o.length===0?r([{}]):r(ok(o,`value`+EC(e.type),n))}};return(0,L.jsxs)(H,{style:{flexDirection:`column`,alignItems:`flex-start`},children:[d.map(([e,t])=>{let r=WC(t),i=n.answerValueSet?c.some(e=>lC(e,t.value)):c.includes(r);return(0,L.jsx)(cp,{id:e,label:(0,L.jsx)(VP,{property:a,propertyType:t.type,value:t.value}),checked:i,onChange:e=>f(t,e.currentTarget.checked)},e)}),(n.answerValueSet&&u.length>aI||n.answerOption&&u.length>oI)&&(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,children:[`Showing first `,aI,` options`]})]})}function mI(){return(0,L.jsx)(ab,{disabled:!0,placeholder:`No Answers Defined`})}function hI(e,t=0){return bk(e?.answer?.[t]??{})}function gI(e){let t=e?.answer;return t?t.map(e=>bk(e)).map(e=>sw(e?.value)||e?.value).filter(Boolean):[]}function _I(e,t){return e.find(e=>lC(e[1].value,t?.value))?.[0]}function vI(e,t){return!!e.extension?.some(e=>e.url===HO&&e.valueCodeableConcept?.coding?.[0]?.code===t)}function yI(e){return vI(e,`drop-down`)}function bI(e){return vI(e,`check-box`)}function xI(e){return vI(e,`radio-button`)}function SI(e){return vI(e,`multi-select`)}function CI(e){if(e.answerOption?.length===0)return{propertyName:``,data:[]};let t=e.answerOption[0];return{propertyName:`value`+EC(bk(t).type),data:(e.answerOption??[]).map(e=>{let t=WC(bk(e));return{value:t,label:t}})}}function wI(e){return(0,L.jsxs)(L.Fragment,{children:[e.responseItems.map(t=>(0,L.jsx)(iI,{formState:e.formState,context:e.context,item:e.item,responseItem:t},`group-${t.id}`)),(0,L.jsx)(Nd,{onClick:()=>e.formState.onAddGroup(e.context,e.item),children:`Add Group: ${e.item.text}`})]})}function TI(e){let{formState:t,context:n,item:r,responseItem:i}=e,a=r.type===VO.choice||r.type===VO.openChoice,o=!a,s=!a&&i.answer&&i.answer.length>0?i.answer:[{}];return(0,L.jsxs)(XP,{title:e.item.text,withAsterisk:e.item.required,children:[(0,L.jsx)(K,{gap:`xs`,children:s?.map((e,a)=>(0,L.jsx)(sI,{formState:t,context:n,item:r,responseItem:i,index:a},`${r.linkId}-${a}`))}),o&&(0,L.jsx)(Nd,{onClick:()=>t.onAddAnswer(n,r),children:`Add Item`})]},e.item.linkId)}function EI(e){let{formState:t,context:n,items:r,responseItems:i}=e;return(0,L.jsx)(K,{children:r.map((e,r)=>{if(!QO(e,t.questionnaireResponse))return null;if(e.type===VO.display)return(0,L.jsx)(`p`,{children:e.text},`display-${e.id}-${r}`);let a=i.filter(t=>t.linkId===e.linkId);return e.type===VO.group&&e.repeats?(0,L.jsx)(wI,{formState:t,context:n,item:e,responseItems:a},`repeating-group-${e.id}-${r}`):e.type===VO.group?(0,L.jsx)(iI,{formState:t,context:n,item:e,responseItem:a[0]},`group-${e.id}-${r}`):e.type===VO.boolean?(0,L.jsx)(sI,{formState:t,context:n,item:e,responseItem:a[0],index:0},`boolean-item-${e.id}-${r}`):e.repeats?(0,L.jsx)(TI,{formState:t,context:n,item:e,responseItem:a[0]},`repeating-item-${e.id}-${r}`):(0,L.jsx)(XP,{htmlFor:e.linkId,title:e.text,withAsterisk:e.required,children:(0,L.jsx)(sI,{formState:t,context:n,item:e,responseItem:a[0],index:0})},`repeating-item-${e.id}-${r}`)})})}function DI(e){let{formState:t,submitButtonText:n,excludeButtons:r,children:i}=e,a=t.pages,o=t.activePage,s=o>0,c=o<a.length-1,l=o===a.length-1;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Sy,{active:o,allowNextStepsSelect:!1,p:6,children:a.map((e,t)=>(0,L.jsx)(Sy.Step,{label:e.title,children:t===o&&i},e.linkId))}),!r&&(0,L.jsxs)(H,{justify:`flex-end`,mt:`xl`,gap:`xs`,children:[s&&(0,L.jsx)(W,{onClick:t.onPrevPage,children:`Back`}),c&&(0,L.jsx)(W,{onClick:e=>{e.currentTarget.closest(`form`).reportValidity()&&t.onNextPage()},children:`Next`}),l&&(0,L.jsx)(WM,{children:n??`Submit`})]})]})}function OI(e){let t=Q(),[n,r]=(0,b.useState)(!1),i=(0,b.useRef)(e);i.current=e;let a=(0,b.useCallback)(e=>{r(!1),i.current.onChange?.(e)},[]),o=Ck({questionnaire:e.questionnaire,defaultValue:e.questionnaireResponse,subject:e.subject,encounter:e.encounter,source:e.source,disablePagination:e.disablePagination,onChange:a}),s=(0,b.useRef)(o);s.current=o;let c=(0,b.useMemo)(()=>o.loading?!1:!!tC(o.questionnaire,JO),[o]),l=(0,b.useMemo)(()=>o.loading?!1:!!o.questionnaireResponse.extension?.find(e=>e.url===YO),[o]),u=(0,b.useCallback)(()=>{let e=s.current;if(e.loading)return;let n=i.current.onSubmit;if(!n)return;if(c&&!l){r(!0);return}let a=e.questionnaire,o=e.questionnaireResponse,u=i.current.subject,d=i.current.source;if(!d){let e=t.getProfile();e&&(d=WS(e))}n({...o,questionnaire:a.url??GS(a),subject:u,source:d,authored:new Date().toISOString(),status:`completed`})},[t,c,l]);return o.loading?null:(0,L.jsxs)(UM,{testid:`questionnaire-form`,onSubmit:u,children:[o.questionnaire.title&&(0,L.jsx)(J,{children:o.questionnaire.title}),o.pagination?(0,L.jsx)(DI,{formState:o,submitButtonText:e.submitButtonText,excludeButtons:e.excludeButtons,children:(0,L.jsx)(EI,{formState:o,context:[],items:o.items,responseItems:o.responseItems})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(EI,{formState:o,context:[],items:o.items,responseItems:o.responseItems}),c&&(0,L.jsxs)(K,{mt:`md`,gap:0,children:[(0,L.jsx)(U,{size:`sm`,fw:500,children:`Signature`}),(0,L.jsx)(rI,{onChange:o.onChangeSignature}),!l&&n&&(0,L.jsx)(U,{c:`red`,size:`sm`,children:`Signature is required.`})]}),!e.excludeButtons&&(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,gap:`xs`,children:(0,L.jsx)(WM,{children:e.submitButtonText??`Submit`})})]})]})}var kI={draft:`blue`,active:`blue`,"on-hold":`yellow`,revoked:`red`,completed:`green`,"entered-in-error":`red`,unknown:`gray`,retired:`gray`,registered:`blue`,preliminary:`blue`,final:`green`,amended:`yellow`,corrected:`yellow`,cancelled:`red`,requested:`blue`,received:`blue`,accepted:`blue`,rejected:`red`,ready:`blue`,"in-progress":`blue`,failed:`red`,proposed:`blue`,pending:`blue`,booked:`blue`,arrived:`blue`,fulfilled:`green`,noshow:`red`,"checked-in":`blue`,waitlist:`gray`,routine:`gray`,urgent:`red`,asap:`red`,stat:`red`,"not-done":`red`,connected:`green`,disconnected:`red`,finished:`green`,planned:`gray`};function AI(e){let{status:t,...n}=e;return(0,L.jsx)(jp,{color:e.color||kI[t],...n,children:t.replaceAll(`-`,` `)})}var jI={noteBody:`_noteBody_10swh_1`,noteCite:`_noteCite_10swh_5`,noteRoot:`_noteRoot_10swh_10`};function MI({value:e}){return e?(0,L.jsx)(K,{justify:`flex-start`,gap:`xs`,children:e.map(e=>e.text&&(0,L.jsx)(Fp,{classNames:{cite:jI.noteCite,root:jI.noteRoot},cite:e.authorReference?.display||e.authorString,icon:null,children:e.text},`note-${e.text}`))}):null}function NI(e){let{value:t,link:n,...r}=e,[i,a]=(0,b.useState)(),o=zO(t,a),s;if(i&&!Nx(i))s=`[${Lx(i)}]`;else if(o)s=JS(o);else return null;return n?(0,L.jsx)(bj,{to:t,...r,children:s}):(0,L.jsx)(U,{component:`span`,...r,children:s})}function PI(e){return(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(Ej,{size:24,radius:12,value:e.value,link:e.link}),(0,L.jsx)(NI,{value:e.value,link:e.link})]})}var FI={table:`_table_pe9td_1`,criticalRow:`_criticalRow_pe9td_12`,noteBody:`_noteBody_pe9td_23`,noteCite:`_noteCite_pe9td_27`,noteRoot:`_noteRoot_pe9td_32`};II.defaultProps={hideObservationNotes:!1,hideSpecimenInfo:!1,hideSubject:!1};function II(e){let t=Q(),n=zO(e.value),[r,i]=(0,b.useState)();if((0,b.useEffect)(()=>{n?.specimen&&Promise.allSettled(n.specimen.map(e=>t.readReference(e))).then(e=>e.filter(e=>e.status===`fulfilled`).map(e=>e.value)).then(i).catch(console.error)},[t,n]),!n)return null;let a=r?.flatMap(e=>e.note||[])||[];if(n.presentedForm&&n.presentedForm.length>0){let e=n.presentedForm[0];e.contentType?.startsWith(`text/plain`)&&e.data&&a.push({text:window.atob(e.data)})}return(0,L.jsxs)(K,{children:[(0,L.jsx)(J,{children:`Diagnostic Report`}),(0,L.jsx)(LI,{value:n,hideSubject:e.hideSubject}),r&&!e.hideSpecimenInfo&&RI(r),n.result&&(0,L.jsx)(zI,{hideObservationNotes:e.hideObservationNotes,value:n.result}),a.length>0&&(0,L.jsx)(MI,{value:a})]})}function LI({value:e,hideSubject:t=!1}){return(0,L.jsxs)(H,{mt:`md`,gap:30,children:[e.subject&&!t&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Subject`}),(0,L.jsx)(PI,{value:e.subject,link:!0})]}),e.resultsInterpreter?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Interpreter`}),(0,L.jsx)(PI,{value:e,link:!0})]},e.reference)),e.performer?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Performer`}),(0,L.jsx)(PI,{value:e,link:!0})]},e.reference)),e.issued&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Issued`}),(0,L.jsx)(U,{children:XC(e.issued)})]}),e.status&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Status`}),(0,L.jsx)(AI,{status:e.status})]})]})}function RI(e){return(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(J,{order:2,size:`h6`,children:`Specimens`}),(0,L.jsx)(vh,{type:`ordered`,children:e?.map(e=>(0,L.jsx)(vh.Item,{ml:`sm`,children:(0,L.jsxs)(H,{gap:20,children:[(0,L.jsxs)(H,{gap:5,children:[(0,L.jsx)(U,{fw:500,children:`Collected:`}),` `,XC(e.collection?.collectedDateTime)]}),(0,L.jsxs)(H,{gap:5,children:[(0,L.jsx)(U,{fw:500,children:`Received:`}),` `,XC(e.receivedTime)]})]})},`specimen-${e.id}`))})]})}function zI(e){return(0,L.jsxs)(`table`,{className:FI.table,children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Test`}),(0,L.jsx)(`th`,{children:`Value`}),(0,L.jsx)(`th`,{children:`Reference Range`}),(0,L.jsx)(`th`,{children:`Interpretation`}),(0,L.jsx)(`th`,{children:`Category`}),(0,L.jsx)(`th`,{children:`Performer`}),(0,L.jsx)(`th`,{children:`Status`})]})}),(0,L.jsx)(`tbody`,{children:(0,L.jsx)(BI,{value:e.value,ancestorIds:e.ancestorIds,hideObservationNotes:e.hideObservationNotes})})]})}function BI(e){return(0,L.jsx)(L.Fragment,{children:e.value?.map(t=>(0,L.jsx)(VI,{value:t,ancestorIds:e.ancestorIds,hideObservationNotes:e.hideObservationNotes},`obs-${Dw(t)?t.reference:t.id}`))})}function VI(e){let t=zO(e.value);if(!t||e.ancestorIds?.includes(t.id))return null;let n=!e.hideObservationNotes&&t.note,r=WI(t);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`tr`,{className:jn({[FI.criticalRow]:r}),children:[(0,L.jsx)(`td`,{rowSpan:n?2:1,children:(0,L.jsx)(bj,{to:t,children:(0,L.jsx)(SP,{value:t.code})})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(HI,{value:t})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(UI,{value:t.referenceRange})}),(0,L.jsx)(`td`,{children:t.interpretation&&t.interpretation.length>0&&(0,L.jsx)(SP,{value:t.interpretation[0]})}),(0,L.jsx)(`td`,{children:t.category&&t.category.length>0&&(0,L.jsx)(L.Fragment,{children:t.category.map(e=>(0,L.jsx)(`div`,{children:(0,L.jsx)(SP,{value:e})},`category-${ow(e)}`))})}),(0,L.jsx)(`td`,{children:t.performer?.map(e=>(0,L.jsx)(PP,{value:e},e.reference))}),(0,L.jsx)(`td`,{children:t.status&&(0,L.jsx)(AI,{status:t.status})})]}),t.hasMember&&(0,L.jsx)(BI,{value:t.hasMember,ancestorIds:e.ancestorIds?[...e.ancestorIds,t.id]:[t.id],hideObservationNotes:e.hideObservationNotes}),n&&(0,L.jsx)(`tr`,{children:(0,L.jsx)(`td`,{colSpan:6,children:(0,L.jsx)(MI,{value:t.note})})})]})}function HI(e){let t=e.value;return(0,L.jsx)(L.Fragment,{children:cw(t)})}function UI(e){let t=e.value&&e.value.length>0&&e.value[0];return t?t.text?(0,L.jsx)(L.Fragment,{children:t.text}):(0,L.jsx)(MP,{value:t}):null}function WI(e){let t=e.interpretation?.[0]?.coding?.[0]?.code;return t===`AA`||t===`LL`||t===`HH`||t===`A`}var GI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Pointer=void 0,e.unescapeToken=t,e.escapeToken=n;function t(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}function n(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.Pointer=function(){function e(e){e===void 0&&(e=[``]),this.tokens=e}return e.fromJSON=function(n){var r=n.split(`/`).map(t);if(r[0]!==``)throw Error(`Invalid JSON Pointer: ${n}`);return new e(r)},e.prototype.toString=function(){return this.tokens.map(n).join(`/`)},e.prototype.evaluate=function(e){for(var t=null,n=``,r=e,i=1,a=this.tokens.length;i<a;i++)t=r,n=this.tokens[i],!(n==`__proto__`||n==`constructor`||n==`prototype`)&&(r=(t||{})[n]);return{parent:t,key:n,value:r}},e.prototype.get=function(e){return this.evaluate(e).value},e.prototype.set=function(e,t){var n=this.evaluate(e);n.parent&&(n.parent[n.key]=t)},e.prototype.push=function(e){this.tokens.push(e)},e.prototype.add=function(t){return new e(this.tokens.concat(String(t)))},e.prototype.parent=function(){return new e(this.tokens.length>1?this.tokens.slice(0,-1):[``])},e}()})),KI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.hasOwnProperty=void 0,e.objectType=t,e.clone=r,e.hasOwnProperty=Object.prototype.hasOwnProperty;function t(e){return e===void 0?`undefined`:e===null?`null`:Array.isArray(e)?`array`:typeof e}function n(e){return typeof e==`object`&&!!e}function r(t){if(!n(t))return t;if(t.constructor==Array){for(var i=t.length,a=Array(i),o=0;o<i;o++)a[o]=r(t[o]);return a}if(t.constructor==Date)return new Date(+t);var s={};for(var c in t)e.hasOwnProperty.call(t,c)&&(s[c]=r(t[c]));return s}})),qI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isDestructive=n,e.subtract=r,e.intersection=i,e.diffArrays=l,e.diffObjects=u,e.diffAny=d;var t=KI();function n(e){var t=e.op;return t===`remove`||t===`replace`||t===`copy`||t===`move`}function r(e,n){var r=[];for(var i in e)t.hasOwnProperty.call(e,i)&&e[i]!==void 0&&!(t.hasOwnProperty.call(n,i)&&n[i]!==void 0)&&r.push(i);return r}function i(e){for(var n=e.length,r={},i=0;i<n;i++){var a=e[i];for(var o in a)t.hasOwnProperty.call(a,o)&&a[o]!==void 0&&(r[o]=(r[o]||0)+1)}for(var o in r)r[o]<n&&delete r[o];return Object.keys(r)}function a(e,n){var r=[];for(var i in e)t.hasOwnProperty.call(e,i)&&e[i]!==void 0&&t.hasOwnProperty.call(n,i)&&n[i]!==void 0&&r.push(i);return r}function o(e){return e.op===`add`}function s(e){return e.op===`remove`}function c(e,t){return{operations:e.operations.concat(t),cost:e.cost+1}}function l(e,t,n,r){r===void 0&&(r=d);var i=Math.max(e.length,t.length),a=new Map([[0,{operations:[],cost:0}]]);function l(o,s){var u=o*i+s,d=a.get(u);if(d===void 0){if(o>0&&s>0&&!r(e[o-1],t[s-1],n.add(String(o-1))).length)d=l(o-1,s-1);else{var f=[];if(o>0){var p=l(o-1,s),m={op:`remove`,index:o-1};f.push(c(p,m))}if(s>0){var h=l(o,s-1),g={op:`add`,index:o-1,value:t[s-1]};f.push(c(h,g))}if(o>0&&s>0){var _=l(o-1,s-1),v={op:`replace`,index:o-1,original:e[o-1],value:t[s-1]};f.push(c(_,v))}d=f.sort(function(e,t){return e.cost-t.cost})[0]}a.set(u,d)}return d}var u=isNaN(e.length)||e.length<=0?0:e.length;return l(u,isNaN(t.length)||t.length<=0?0:t.length).operations.reduce(function(e,t){var i=e[0],a=e[1];if(o(t)){var c=t.index+1+a,l=c<u+a?String(c):`-`,d={op:t.op,path:n.add(l).toString(),value:t.value};return[i.concat(d),a+1]}else if(s(t)){var d={op:t.op,path:n.add(String(t.index+a)).toString()};return[i.concat(d),a-1]}else{var f=n.add(String(t.index+a)),p=r(t.original,t.value,f);return[i.concat.apply(i,p),a]}},[[],0])[0]}function u(e,t,n,i){i===void 0&&(i=d);var o=[];return r(e,t).forEach(function(e){o.push({op:`remove`,path:n.add(e).toString()})}),r(t,e).forEach(function(e){o.push({op:`add`,path:n.add(e).toString(),value:t[e]})}),a(e,t).forEach(function(r){o.push.apply(o,i(e[r],t[r],n.add(r)))}),o}function d(e,n,r,i){if(i===void 0&&(i=d),e===n)return[];var a=(0,t.objectType)(e),o=(0,t.objectType)(n);return a==`array`&&o==`array`?l(e,n,r,i):a==`object`&&o==`object`?u(e,n,r,i):[{op:`replace`,path:r.toString(),value:n}]}})),JI=o((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,`__esModule`,{value:!0}),e.InvalidOperationError=e.TestError=e.MissingError=void 0,e.add=l,e.remove=u,e.replace=d,e.move=f,e.copy=p,e.test=m,e.apply=g;var n=GI(),r=KI(),i=qI(),a=function(e){t(n,e);function n(t){var n=e.call(this,`Value required at path: ${t}`)||this;return n.path=t,n.name=`MissingError`,n}return n}(Error);e.MissingError=a;var o=function(e){t(n,e);function n(t,n){var r=e.call(this,`Test failed: ${t} != ${n}`)||this;return r.actual=t,r.expected=n,r.name=`TestError`,r}return n}(Error);e.TestError=o;function s(e,t,n){if(Array.isArray(e))if(t==`-`)e.push(n);else{var r=parseInt(t,10);e.splice(r,0,n)}else e[t]=n}function c(e,t){if(Array.isArray(e)){var n=parseInt(t,10);e.splice(n,1)}else delete e[t]}function l(e,t,i){var o=n.Pointer.fromJSON(t.path);if(i?.implicitArrayCreation&&o.tokens[o.tokens.length-1]===`-`){var c=o.parent().evaluate(e);c.value===void 0&&(0,r.objectType)(c.parent)===`object`&&(c.parent[c.key]=[])}var l=o.evaluate(e);return l.parent===void 0||i?.implicitArrayCreation&&l.key===`-`&&!Array.isArray(l.parent)?new a(t.path):(s(l.parent,l.key,(0,r.clone)(t.value)),null)}function u(e,t,r){var i=n.Pointer.fromJSON(t.path).evaluate(e);return i.value===void 0?new a(t.path):(c(i.parent,i.key),null)}function d(e,t,i){var o=n.Pointer.fromJSON(t.path).evaluate(e);if(o.parent===null)return new a(t.path);if(Array.isArray(o.parent)){if(parseInt(o.key,10)>=o.parent.length)return new a(t.path)}else if(o.value===void 0)return new a(t.path);return o.parent[o.key]=(0,r.clone)(t.value),null}function f(e,t,r){var i=n.Pointer.fromJSON(t.from).evaluate(e);if(i.value===void 0)return new a(t.from);var o=n.Pointer.fromJSON(t.path).evaluate(e);return o.parent===void 0?new a(t.path):(c(i.parent,i.key),s(o.parent,o.key,i.value),null)}function p(e,t,i){var o=n.Pointer.fromJSON(t.from).evaluate(e);if(o.value===void 0)return new a(t.from);var c=n.Pointer.fromJSON(t.path).evaluate(e);return c.parent===void 0?new a(t.path):(s(c.parent,c.key,(0,r.clone)(o.value)),null)}function m(e,t,r){var a=n.Pointer.fromJSON(t.path).evaluate(e);return(0,i.diffAny)(a.value,t.value,new n.Pointer).length?new o(a.value,t.value):null}var h=function(e){t(n,e);function n(t){var n=e.call(this,`Invalid operation: ${t.op}`)||this;return n.operation=t,n.name=`InvalidOperationError`,n}return n}(Error);e.InvalidOperationError=h;function g(e,t,n){switch(t.op){case`add`:return l(e,t,n);case`remove`:return u(e,t,n);case`replace`:return d(e,t,n);case`move`:return f(e,t,n);case`copy`:return p(e,t,n);case`test`:return m(e,t,n)}return new h(t)}})),YI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Pointer=void 0,e.createPatch=i;var t=GI();Object.defineProperty(e,`Pointer`,{enumerable:!0,get:function(){return t.Pointer}}),JI();var n=qI();function r(e){function t(r,i,a){var o=e(r,i,a);return Array.isArray(o)?o:(0,n.diffAny)(r,i,a,t)}return t}function i(e,i,a){var o=new t.Pointer;return(a?r(a):n.diffAny)(e,i,o)}})),XI={removed:`_removed_el5zk_1`,added:`_added_el5zk_6`};function ZI(e){let{name:t,path:n,property:r,originalValue:i,revisedValue:a}=e,o=!!r?.type?.find(e=>e.code===`Attachment`),[s,c]=(0,b.useState)(o);return(0,L.jsx)(L.Fragment,{children:o&&!s||!o?(0,L.jsx)(L.Fragment,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:t}),(0,L.jsx)(q.Td,{className:XI.removed,children:i&&(0,L.jsx)(VP,{path:n,property:r,propertyType:i.type,value:i.value,ignoreMissingValues:!0})}),(0,L.jsx)(q.Td,{className:XI.added,children:a&&(0,L.jsx)(VP,{path:n,property:r,propertyType:a.type,value:a.value,ignoreMissingValues:!0})})]})}):(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:t}),(0,L.jsx)(q.Td,{colSpan:2,style:{textAlign:`right`},children:(0,L.jsx)(W,{onClick:()=>c(e=>!e),variant:`light`,children:`Expand`})})]})})}var QI={root:`_root_15xvr_1`,removed:`_removed_15xvr_20`,added:`_added_15xvr_25`},$I=YI();function eL(e){let t=Q(),{original:n,revised:r}=e,[i,a]=(0,b.useState)(!1);(0,b.useEffect)(()=>{t.requestSchema(e.original.resourceType).then(()=>a(!0)).catch(console.log)},[t,e.original.resourceType]);let o=(0,b.useMemo)(()=>{if(!i)return null;let e=[gS(n)],t=[gS(r)],a=[],o=tL((0,$I.createPatch)(n,r));for(let r of o){let i=r.path,o=nL(i),s=rL(n.resourceType,o),c=r.op===`add`?void 0:ST(o,e),l=r.op===`remove`?void 0:ST(o,t);a.push({key:`op-${r.op}-${r.path}`,name:`${EC(r.op)} ${o}`,path:s?.path??n.resourceType+`.`+o,property:s,originalValue:iL(s,c),revisedValue:iL(s,l)})}return a},[i,n,r]);return o?(0,L.jsxs)(q,{className:QI.root,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{}),(0,L.jsx)(q.Th,{children:`Before`}),(0,L.jsx)(q.Th,{children:`After`})]})}),(0,L.jsx)(q.Tbody,{children:o.map(e=>{let{key:t,...n}=e;return(0,L.jsx)(ZI,{...n},t)})})]}):null}function tL(e){let t=[];for(let n of e){let{op:r,path:i}=n;if(i.startsWith(`/meta/author`)||i.startsWith(`/meta/compartment`)||i.startsWith(`/meta/lastUpdated`)||i.startsWith(`/meta/versionId`))continue;let a=e.filter(e=>e.op===r&&e.path===i).length,o={op:r,path:i};a>1&&(r===`add`||r===`remove`)&&/\/[0-9-]+$/.test(i)&&(o.op=`replace`,o.path=i.replace(/\/[^/]+$/,``)),t.some(e=>e.op===o.op&&e.path===o.path)||t.push(o)}return t}function nL(e){let t=e.split(`/`).filter(Boolean),n=``;for(let e=0;e<t.length;e++){let r=t[e];r===`-`?n+=`.last()`:/^\d+$/.test(r)?n+=`[${r}]`:(e>0&&(n+=`.`),n+=r)}return n.endsWith(`.url`)&&(n=n.replace(/\.url$/,``)),n}function rL(e,t){try{return dO(e,{resourceType:`SearchParameter`,base:[e],code:e+`.`+t,expression:e+`.`+t})?.elementDefinitions?.[0]}catch(n){console.warn(`Failed to get element definition`,{resourceType:e,fhirPath:t,err:n});return}}function iL(e,t){return t&&{type:Array.isArray(t)?t[0].type:t.type,value:aL(t,!!e?.isArray)}}function aL(e,t){let n=AC(e).flatMap(e=>e.value);return t?n:n[0]}function oL(e){let{profileUrl:t}=e,n=Q(),r=n.getAccessPolicy(),i=zO(e.value),[a,o]=(0,b.useState)(!1);(0,b.useEffect)(()=>{if(i)if(t)n.requestProfileSchema(t,{expandProfile:!0}).then(()=>{tS(t)?o(!0):console.error(`Schema not found for ${t}`)}).catch(e=>{console.error(`Error in requestProfileSchema`,e)});else{let e=i.resourceType;n.requestSchema(e).then(()=>{o(!0)}).catch(console.error)}},[n,t,i]);let s=(0,b.useMemo)(()=>i&&gE(i,fE.READ,r),[r,i]);return!a||!i?null:(0,L.jsx)(GP,{path:i.resourceType,value:{type:i.resourceType,value:e.forceUseInput?e.value:i},profileUrl:t,ignoreMissingValues:e.ignoreMissingValues,accessPolicyResource:s})}var sL={item:`_item_5q6yx_1`,itemPadding:`_itemPadding_5q6yx_5`};function cL(e){return(0,L.jsx)(PN,{children:e.children})}function lL(e){let{resource:t,profile:n,padding:r,popupMenuItems:i,...a}=e,o=n??t.meta?.author,s=e.dateTime??t.meta?.lastUpdated;return(0,L.jsxs)(IN,{"data-testid":`timeline-item`,fill:!0,...a,children:[(0,L.jsxs)(H,{justify:`space-between`,gap:8,mx:`xs`,my:`sm`,children:[(0,L.jsx)(Ej,{value:o,link:!0,size:`md`}),(0,L.jsxs)(`div`,{style:{flex:1},children:[(0,L.jsx)(U,{size:`sm`,children:(0,L.jsx)(NI,{c:`inherit`,fw:500,value:o,link:!0})}),(0,L.jsxs)(U,{size:`xs`,children:[(0,L.jsx)(bj,{c:`dimmed`,to:e.resource,children:XC(s)}),(0,L.jsx)(U,{component:`span`,c:`dimmed`,mx:8,children:`·`}),(0,L.jsx)(bj,{c:`dimmed`,to:e.resource,children:e.resource.resourceType})]})]}),i&&(0,L.jsxs)(G,{position:`bottom-end`,shadow:`md`,width:200,children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(hu,{color:`gray`,variant:`subtle`,radius:`xl`,"aria-label":`Actions for ${GS(e.resource)}`,children:(0,L.jsx)(_A,{})})}),i]})]}),(0,L.jsx)(dj,{children:(0,L.jsx)(`div`,{className:jn(sL.item,{[sL.itemPadding]:r}),children:e.children})})]})}function uL(e,t){e.sort((e,n)=>{let r=dL(e,t),i=dL(n,t);return r>i?1:r<i?-1:fL(e,t)-fL(n,t)})}function dL(e,t){if(!pL(e,t)){let t=e.priority;if(typeof t==`string`)return{stat:4,asap:3,urgent:2}[t]??0}return 0}function fL(e,t){if(!pL(e,t)){if(e.resourceType===`Communication`&&e.sent)return new Date(e.sent).getTime();if((e.resourceType===`DiagnosticReport`||e.resourceType===`Media`||e.resourceType===`Observation`)&&e.issued)return new Date(e.issued).getTime();if(e.resourceType===`DocumentReference`&&e.date)return new Date(e.date).getTime()}let n=e.meta?.lastUpdated;return n?new Date(n).getTime():0}function pL(e,t){return!!t&&e.resourceType===t.resourceType&&e.id===t.id}var mL={pinnedComment:`_pinnedComment_u08s5_1`};function hL(e){let t=Q(),n=t.getProfile(),r=(0,b.useRef)(null),i=zO(e.value),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)([]),[l,u]=(0,b.useState)(10),d=e.loadTimelineResources,f=(0,b.useRef)(s);f.current=s;let p=(0,b.useCallback)(e=>{uL(e,i),e.reverse(),c(e)},[i]),m=(0,b.useCallback)(e=>{let t=[];for(let n of e){if(n.status!==`fulfilled`)continue;let e=n.value;if(e.type===`history`&&o(e),e.entry)for(let n of e.entry)t.push(n.resource)}p(t)},[p]),h=(0,b.useCallback)(e=>p([...f.current,e]),[p]),g=(0,b.useCallback)(()=>{let n,r;`resourceType`in e.value?(n=e.value.resourceType,r=e.value.id):[n,r]=e.value.reference?.split(`/`),d(t,n,r).then(m).catch(console.error)},[t,e.value,d,m]);(0,b.useEffect)(()=>g(),[g]);function _(r){!i||!e.createCommunication||t.createResource(e.createCommunication(i,n,r)).then(e=>h(e)).catch(console.error)}function v(r){!i||!e.createMedia||t.createResource(e.createMedia(i,n,r)).then(e=>h(e)).then(()=>Sb({id:`upload-notification`,color:`teal`,title:`Upload complete`,message:``,icon:(0,L.jsx)(aA,{size:16}),autoClose:2e3})).catch(e=>Sb({id:`upload-notification`,color:`red`,title:`Upload error`,message:Lx(e),icon:(0,L.jsx)(CA,{size:16}),autoClose:2e3}))}function y(){Y({id:`upload-notification`,loading:!0,title:`Initializing upload...`,message:`Please wait...`,autoClose:!1,withCloseButton:!1})}function x(e){Sb({id:`upload-notification`,loading:!0,title:`Uploading...`,message:SL(e),autoClose:!1,withCloseButton:!1})}function S(e){Sb({id:`upload-notification`,color:`red`,title:`Upload error`,message:Lx(e),icon:(0,L.jsx)(CA,{size:16}),autoClose:2e3})}if(!i)return(0,L.jsx)(Gp,{style:{width:`100%`,height:`100%`},children:(0,L.jsx)(su,{})});let C=s.filter(e=>e).slice(0,l);return(0,L.jsxs)(cL,{children:[e.createCommunication&&(0,L.jsx)(IN,{children:(0,L.jsx)(UM,{testid:`timeline-form`,onSubmit:e=>{_(e.text);let t=r.current;t&&(t.value=``,t.focus())},children:(0,L.jsxs)(H,{gap:`xs`,wrap:`nowrap`,style:{width:`100%`},children:[(0,L.jsx)(Ej,{value:n}),(0,L.jsx)(ab,{name:`text`,ref:r,placeholder:`Add comment`,style:{width:`100%`,maxWidth:300}}),(0,L.jsx)(hu,{type:`submit`,radius:`xl`,color:`blue`,variant:`filled`,children:(0,L.jsx)(IA,{size:16})}),(0,L.jsx)(AN,{securityContext:WS(i),onUpload:v,onUploadStart:y,onUploadProgress:x,onUploadError:S,children:e=>(0,L.jsx)(hu,{...e,radius:`xl`,color:`blue`,variant:`filled`,children:(0,L.jsx)(dA,{size:16})})})]})})}),C.map(t=>{let n=`${t.resourceType}/${t.id}/${t.meta?.versionId}`,r=e.getMenu?e.getMenu({primaryResource:i,currentResource:t,reloadTimeline:g}):void 0;if(t.resourceType===i.resourceType&&t.id===i.id)return(0,L.jsx)(gL,{history:a,resource:t,popupMenuItems:r},n);switch(t.resourceType){case`AuditEvent`:return(0,L.jsx)(bL,{resource:t,popupMenuItems:r},n);case`Communication`:return(0,L.jsx)(vL,{resource:t,popupMenuItems:r},n);case`DiagnosticReport`:return(0,L.jsx)(xL,{resource:t,popupMenuItems:r},n);case`Media`:return(0,L.jsx)(yL,{resource:t,popupMenuItems:r},n);default:return(0,L.jsx)(lL,{resource:t,padding:!0,children:(0,L.jsx)(oL,{value:t,ignoreMissingValues:!0})},n)}}),l<s.length&&(0,L.jsx)(H,{justify:`center`,pb:`lg`,children:(0,L.jsx)(W,{onClick:()=>u(l+10),children:`Show More`})})]})}function gL(e){let{history:t,resource:n,...r}=e,i=_L(t,n);return i?(0,L.jsx)(lL,{resource:n,padding:!0,...r,children:(0,L.jsx)(eL,{original:i,revised:e.resource})}):(0,L.jsxs)(lL,{resource:n,padding:!0,...r,children:[(0,L.jsx)(`h3`,{children:`Created`}),(0,L.jsx)(oL,{value:n,ignoreMissingValues:!0,forceUseInput:!0})]})}function _L(e,t){let n=e.entry??[],r=n.findIndex(e=>e.resource?.meta?.versionId===t.meta?.versionId);if(!(r>=n.length-1))return n[r+1].resource}function vL(e){let t=!e.resource.priority||e.resource.priority===`routine`?void 0:mL.pinnedComment;return(0,L.jsx)(lL,{resource:e.resource,profile:e.resource.sender,dateTime:e.resource.sent,padding:!0,className:t,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(`p`,{children:e.resource.payload?.[0]?.contentString})})}function yL(e){let t=e.resource.content?.contentType,n=t&&!t.startsWith(`image/`)&&!t.startsWith(`video/`)&&t!==`application/pdf`;return(0,L.jsx)(lL,{resource:e.resource,padding:!!n,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(wN,{value:e.resource.content})})}function bL(e){return(0,L.jsx)(lL,{resource:e.resource,padding:!0,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(ll,{children:(0,L.jsx)(`pre`,{children:e.resource.outcomeDesc})})})}function xL(e){return(0,L.jsx)(lL,{resource:e.resource,padding:!0,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(II,{value:e.resource})})}function SL(e){if(e.lengthComputable){let t=100*e.loaded/e.total;return`Uploaded: ${CL(e.loaded)} / ${CL(e.total)} ${t.toFixed(2)}%`}return`Uploaded: ${CL(e.loaded)}`}function CL(e){if(e===0)return`0.00 B`;let t=Math.floor(Math.log(e)/Math.log(1024));return(e/1024**t).toFixed(2)+` `+` KMGTP`.charAt(t)+`B`}function wL(e){let{resource:t,...n}=e;return(0,L.jsx)(hL,{value:t,loadTimelineResources:async(e,t,n)=>{let r=`${t}/${n}`;return Promise.allSettled([e.readHistory(t,n),e.search(`Task`,{_filter:`based-on eq ${r} or focus eq ${r} or subject eq ${r}`,_count:100})])},...n})}function TL(e){let{encounter:t,...n}=e;return(0,L.jsx)(hL,{value:t,loadTimelineResources:async(e,t,n)=>Promise.allSettled([e.readHistory(`Encounter`,n),e.search(`Communication`,`encounter=Encounter/`+n),e.search(`Media`,`encounter=Encounter/`+n)]),createCommunication:(e,t,n)=>({resourceType:`Communication`,status:`completed`,encounter:WS(e),subject:e.subject,sender:WS(t),sent:new Date().toISOString(),payload:[{contentString:n}]}),createMedia:(e,t,n)=>({resourceType:`Media`,status:`completed`,encounter:WS(e),subject:e.subject,operator:WS(t),issued:new Date().toISOString(),content:n}),...n})}function EL(e){let t;try{t=xT(e.path,e.resource)}catch(e){return console.warn(`FhirPathDisplay:`,e),null}if(t.length>1)throw Error(`Component "path" for "FhirPathDisplay" must resolve to a single element. \
|
|
204
|
+
}`.replaceAll(/\s+/g,` `);return(await e.graphql(r)).data.StructureDefinitionList[0]}function NF(e){return e.type===`profile`&&!e?.error&&sC(e.resourceType)}function PF(e,t,n){return t===void 0?e:n===void 0?t:`${t}[${n}]`}var FF={indented:`_indented_ldk1d_1`};function IF({propertyDisplayName:e,onClick:t,testId:n}){let r=e?`Add ${e}`:`Add`;return e?(0,L.jsx)(W,{title:r,size:`sm`,color:`green.6`,variant:`subtle`,"data-testid":n,leftSection:(0,L.jsx)(fA,{size:`1.25rem`}),onClick:t,children:r}):(0,L.jsx)(hu,{title:r,color:`green.6`,"data-testid":n,onClick:t,children:(0,L.jsx)(fA,{size:`1.25rem`})})}function LF({propertyDisplayName:e,onClick:t,testId:n}){return(0,L.jsx)(hu,{title:e?`Remove ${e}`:`Remove`,color:`red.5`,"data-testid":n,variant:`subtle`,onClick:t,children:(0,L.jsx)(dA,{size:`1.25rem`})})}function RF(e){let{slice:t,property:n}=e,[r,i]=(0,b.useState)(e.defaultValue),a=t.typeSchema?.elements??t.elements,o=(0,b.useContext)(Ik),s=(0,b.useMemo)(()=>{if(cC(a))return WD({parentContext:o,elements:a,path:e.path,profileUrl:t.typeSchema?.url})},[o,e.path,t.typeSchema?.url,a]);function c(t){i(t),e.onChange&&e.onChange(t)}let l=t.min>0,u=sC(t.elements),d=Sw(t.name),f=e.property.readonly&&r.length===0;return zP(Ik.Provider,s,(0,L.jsx)(QP,{title:d,description:t.definition,withAsterisk:l,fhirPath:`${n.path}:${t.name}`,testId:e.testId,readonly:e.property.readonly,children:f?(0,L.jsx)(U,{c:`dimmed`,children:`(empty)`}):(0,L.jsxs)(K,{className:u?FF.indented:void 0,children:[r.map((n,i)=>(0,L.jsxs)(H,{wrap:`nowrap`,children:[(0,L.jsx)(`div`,{style:{flexGrow:1},"data-testid":e.testId&&`${e.testId}-elements-${i}`,children:(0,L.jsx)(JF,{elementDefinitionType:t.type[0],name:t.name,defaultValue:n,onChange:e=>{let t=[...r];t[i]=e,c(t)},outcome:e.outcome,min:t.min,max:t.max,binding:t.binding,path:e.path,valuePath:void 0,readOnly:e.property.readonly})}),!e.property.readonly&&r.length>t.min&&(0,L.jsx)(LF,{propertyDisplayName:d,testId:e.testId&&`${e.testId}-remove-${i}`,onClick:e=>{gj(e);let t=[...r];t.splice(i,1),c(t)}})]},`${i}-${r.length}`)),!e.property.readonly&&r.length<t.max&&(0,L.jsx)(H,{wrap:`nowrap`,style:{justifyContent:`flex-start`},children:(0,L.jsx)(IF,{propertyDisplayName:d,onClick:e=>{gj(e),c([...r,void 0])},testId:e.testId&&`${e.testId}-add`})})]})}))}function zF(e){let{property:t}=e,n=Q(),[r,i]=(0,b.useState)(!0),[a,o]=(0,b.useState)([]),[s]=(0,b.useState)(()=>Array.isArray(e.defaultValue)?e.defaultValue:[]),[c,l]=(0,b.useState)(()=>[s]),u=(0,b.useContext)(Ik),d=t.type[0]?.code;(0,b.useEffect)(()=>{RP({medplum:n,property:t}).then(e=>{o(e);let n=LP(s,e,t.slicing,u.profileUrl);BF(n,e),l(n),i(!1)}).catch(e=>{console.error(e),i(!1)})},[n,t,s,u.profileUrl,l]);function f(t,n){let r=[...c];if(r[n]=t,l(r),e.onChange){let t=r.flat().filter(e=>e!==void 0);e.onChange(t)}}if(r)return(0,L.jsx)(`div`,{children:`Loading...`});let p=a.length,m=c[p],h=!(e.hideNonSliceValues??(d===`Extension`&&a.length>0)),g=xw(t.path),_=e.property.readonly&&a.length===0&&s.length===0;return(0,L.jsxs)(K,{className:e.indent?FF.indented:void 0,children:[_&&(0,L.jsx)(U,{c:`dimmed`,children:`(empty)`}),a.map((n,r)=>(0,L.jsx)(RF,{slice:n,path:e.path,valuePath:e.valuePath,property:t,defaultValue:c[r],onChange:e=>{f(e,r)},testId:`slice-${n.name}`},n.name)),h&&m.map((t,n)=>(0,L.jsxs)(H,{wrap:`nowrap`,style:{flexGrow:1},children:[(0,L.jsx)(`div`,{style:{flexGrow:1},children:(0,L.jsx)(KF,{arrayElement:!0,property:e.property,name:e.name+`.`+n,path:e.path,valuePath:PF(e.path,e.valuePath,n),defaultValue:t,onChange:e=>{let t=[...m];t[n]=e,f(t,p)},defaultPropertyType:void 0,outcome:e.outcome})}),!e.property.readonly&&(0,L.jsx)(LF,{propertyDisplayName:g,testId:`nonsliced-remove-${n}`,onClick:e=>{gj(e);let t=[...m];t.splice(n,1),f(t,p)}})]},`${n}-${m.length}`)),!e.property.readonly&&h&&c.flat().length<t.max&&(0,L.jsx)(H,{wrap:`nowrap`,style:{justifyContent:`flex-start`},children:(0,L.jsx)(IF,{propertyDisplayName:g,onClick:e=>{gj(e);let t=[...m];t.push(void 0),f(t,p)},testId:`nonsliced-add`})})]})}function BF(e,t){for(let n=0;n<t.length;n++){let r=t[n],i=e[n];for(;i.length<r.min;)i.push(void 0)}}function VF(e){let[t,n]=(0,b.useState)(!1),r=At(),i=(0,b.useRef)(null),a={...e.styles};return t||(a.input||={},a.input.WebkitTextSecurity=`disc`),(0,L.jsxs)(gd,{gap:`xs`,children:[(0,L.jsx)(ah,{...e,styles:{...a,root:{...a.root??{},flexGrow:1}},ref:i,autosize:!0,minRows:1,onFocus:()=>n(!0),onBlur:()=>n(!1)}),(0,L.jsx)(hu,{title:`Copy secret`,onClick:()=>{r.copy(i.current?.value),Y({color:`green`,message:`Copied`})},children:(0,L.jsx)(hA,{})})]})}var HF=[`sun`,`mon`,`tue`,`wed`,`thu`,`fri`,`sat`];function UF(e){let[t,n]=(0,b.useState)(e.defaultValue),[r,i]=(0,b.useState)(!e.disabled&&(e.defaultModalOpen??!1));return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(`span`,{"data-testid":`timinginput-display`,children:nw(t)||`No repeat`}),(0,L.jsx)(W,{disabled:e.disabled,onClick:()=>i(!0),children:`Edit`})]}),!e.disabled&&(0,L.jsx)(GF,{path:e.path,visible:r,defaultValue:t,onOk:t=>{e.onChange&&e.onChange(t),n(t),i(!1)},onCancel:()=>i(!1)})]})}var WF={repeat:{period:1,periodUnit:`d`}};function GF(e){let[t,n]=(0,b.useState)(e.defaultValue||WF),[r,i]=(0,b.useState)(()=>(e.defaultValue?.repeat?.timeOfDay??[]).map((e,t)=>({id:t,value:e}))),a=(0,b.useRef)(r.length),{getExtendedProps:o}=(0,b.useContext)(Ik),[s,c,l,u,d,f]=(0,b.useMemo)(()=>[`event`,`repeat`,`repeat.period`,`repeat.periodUnit`,`repeat.dayOfWeek`,`repeat.timeOfDay`].map(t=>o(e.path+`.`+t)),[o,e.path]);function p(e){n(t=>({...t,event:[e]}))}function m(e){n(t=>({...t,repeat:e}))}function h(e){n(t=>({...t,repeat:{...t.repeat,period:e}}))}function g(e){n(t=>({...t,repeat:{...t.repeat,periodUnit:e}}))}function _(e){n(t=>({...t,repeat:{...t.repeat,dayOfWeek:e}}))}function v(e){i(t=>{let r=e(t),i=r.map(e=>e.value);return n(e=>({...e,repeat:{...e.repeat,timeOfDay:i}})),r})}return(0,L.jsx)(ng,{title:`Timing`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:()=>e.onCancel(),children:(0,L.jsxs)(K,{gap:`md`,children:[(0,L.jsx)(QP,{title:`Starts on`,htmlFor:`timing-dialog-start`,children:(0,L.jsx)(dF,{disabled:s?.readonly,name:`timing-dialog-start`,onChange:e=>p(e)})}),(0,L.jsx)(Ay,{disabled:c?.readonly,label:`Repeat`,checked:!!t.repeat,onChange:e=>m(e.currentTarget.checked?WF.repeat:void 0)}),t.repeat&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(QP,{title:`Repeat every`,htmlFor:`timing-dialog-period`,children:(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,children:[(0,L.jsx)(ab,{disabled:l?.readonly,type:`number`,step:1,id:`timing-dialog-period`,name:`timing-dialog-period`,defaultValue:t.repeat.period||1,onChange:e=>h(Number.parseInt(e.currentTarget.value,10)||1)}),(0,L.jsx)(Tg,{disabled:u?.readonly,id:`timing-dialog-periodUnit`,name:`timing-dialog-periodUnit`,defaultValue:t.repeat.periodUnit,onChange:e=>g(e.currentTarget.value),data:[{label:`minute`,value:`min`},{label:`hour`,value:`h`},{label:`day`,value:`d`},{label:`week`,value:`wk`},{label:`month`,value:`mo`},{label:`year`,value:`a`}]})]})}),t.repeat.periodUnit===`wk`&&(0,L.jsx)(QP,{title:`Repeat on`,children:(0,L.jsx)(Qp.Group,{multiple:!0,onChange:_,value:t.repeat?.dayOfWeek,children:(0,L.jsx)(H,{justify:`space-between`,mt:`xs`,gap:`xs`,children:HF.map(e=>(0,L.jsx)(Qp,{value:e,size:`xs`,radius:`xl`,disabled:d?.readonly,checked:(t.repeat?.dayOfWeek??[]).includes(e),children:e.charAt(0).toUpperCase()},e))})})}),(0,L.jsx)(QP,{title:`At times`,children:(0,L.jsxs)(K,{mt:`xs`,children:[r.map((e,t)=>(0,L.jsxs)(H,{children:[(0,L.jsx)(ab,{disabled:f?.readonly,type:`time`,id:`timing-dialog-repeat-timeOfDay[${t}]`,name:`timing-dialog-repeat-timeOfDay[${t}]`,"data-testid":`timing-repeat-timeOfDay-input-${t}`,defaultValue:e.value.slice(0,5),onChange:n=>{let r=`${n.currentTarget.value}:00`;v(n=>n.with(t,{...e,value:r}))},style:{flexGrow:1}}),(0,L.jsx)(LF,{testId:`timing-repeat-timeOfDay-remove-${t}`,onClick:()=>v(e=>e.toSpliced(t,1))})]},e.id)),(0,L.jsx)(B,{children:(0,L.jsx)(IF,{propertyDisplayName:`Time of Day`,onClick:()=>v(e=>{let t=a.current++;return e.concat({id:t,value:`00:00:00`})})})})]})})]}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{onClick:()=>e.onOk(t),children:`OK`})})]})})}function KF(e){let{property:t,name:n,onChange:r,defaultValue:i}=e,a=e.defaultPropertyType&&e.defaultPropertyType!==`undefined`?e.defaultPropertyType:t.type[0].code,o=t.type;if((t.isArray||t.max>1)&&!e.arrayElement){if(a===X.Attachment)return(0,L.jsx)(NN,{name:n,defaultValue:i,onChange:r,disabled:t.readonly});let s=o[0]?.code!==X.Extension;return(0,L.jsx)(zF,{property:t,name:n,path:e.path,valuePath:e.valuePath,defaultValue:i,indent:s,onChange:r,outcome:e.outcome})}else if(o.length>1)return(0,L.jsx)(qF,{elementDefinitionTypes:o,...e});else return(0,L.jsx)(JF,{name:n,defaultValue:i,onChange:t=>{if(e.onChange){let n=e.name.replace(`[x]`,DC(o[0].code));e.onChange(t,n)}},outcome:e.outcome,elementDefinitionType:o[0],min:t.min,max:t.min,binding:t.binding,path:e.path,valuePath:e.valuePath,readOnly:t.readonly})}function qF(e){let t=e.elementDefinitionTypes,n;e.defaultPropertyType&&(n=t.find(t=>t.code===e.defaultPropertyType)),n||=t[0];let[r,i]=(0,b.useState)(n);return(0,L.jsxs)(H,{gap:`xs`,grow:!0,wrap:`nowrap`,align:`flex-start`,children:[(0,L.jsx)(Tg,{disabled:e.property.readonly,style:{width:`200px`},defaultValue:r.code,"data-testid":e.name&&e.name+`-selector`,onChange:e=>{i(t.find(t=>t.code===e.currentTarget.value))},data:t.map(e=>({value:e.code,label:e.code}))}),(0,L.jsx)(JF,{name:e.name,defaultValue:e.defaultValue,outcome:e.outcome,elementDefinitionType:r,onChange:t=>{e.onChange&&e.onChange(t,e.name.replace(`[x]`,DC(r.code)))},min:e.property.min,max:e.property.max,binding:e.property.binding,path:e.property.path,valuePath:e.valuePath,readOnly:e.property.readonly})]})}function JF(e){let{name:t,onChange:n,outcome:r,binding:i,path:a,valuePath:o,readOnly:s}=e,c=e.min!==void 0&&e.min>0,l=e.elementDefinitionType.code,u=(0,b.useContext)(Ik),d=(0,b.useMemo)(()=>{if(!OC(l)||!sC(e.defaultValue))return e.defaultValue;let t=Object.create(null);if(u.path===e.path)nO(t,u.elements);else{let n=kC(u.path,e.path);if(n===void 0)return e.defaultValue;nO(t,u.elements,n)}return cC(t)?t:e.defaultValue},[l,u.path,u.elements,e.path,e.defaultValue]);if(!l)return(0,L.jsx)(`div`,{children:`Property type not specified `});function f(){return{name:t,defaultValue:d,onChange:n,outcome:r,path:a,valuePath:o,disabled:s}}function p(){let n=VN(e.outcome,o??a);return{id:t,name:t,"data-testid":t,defaultValue:d,required:c,error:n,disabled:s}}switch(l){case X.SystemString:case X.canonical:case X.string:case X.uri:case X.url:return e.path===`Project.secret.value[x]`||e.path===`ClientApplication.certificateTrustStore`?(0,L.jsx)(VF,{...p(),onChange:t=>{e.onChange&&e.onChange(t.currentTarget.value)}}):(0,L.jsx)(ab,{...p(),onChange:e=>{n&&n(e.currentTarget.value)}});case X.date:return(0,L.jsx)(ab,{...p(),type:`date`,onChange:e=>{n&&n(e.currentTarget.value)}});case X.time:return(0,L.jsx)(ab,{...p(),type:`time`,step:1,onChange:e=>{n&&n(e.currentTarget.value)}});case X.dateTime:case X.instant:return(0,L.jsx)(dF,{...p(),onChange:n,outcome:r});case X.decimal:case X.integer:case X.positiveInt:case X.unsignedInt:return(0,L.jsx)(ab,{...p(),type:`number`,step:l===X.decimal?`any`:`1`,onChange:e=>{if(n){let t=e.currentTarget.valueAsNumber;n(Number.isNaN(t)?void 0:t)}}});case X.code:return(0,L.jsx)(tN,{...p(),error:void 0,onChange:n,binding:i?.valueSet,creatable:!0,maxValues:1});case X.boolean:return(0,L.jsx)(cp,{...p(),defaultChecked:!!d,onChange:e=>{n&&n(e.currentTarget.checked)}});case X.base64Binary:case X.markdown:case X.xhtml:return(0,L.jsx)(ah,{...p(),spellCheck:l!==X.base64Binary,onChange:e=>{n&&n(e.currentTarget.value)}});case X.Address:return(0,L.jsx)(Hk,{...f()});case X.Annotation:return(0,L.jsx)(Uk,{...f()});case X.Attachment:return(0,L.jsx)(PN,{...f()});case X.CodeableConcept:return(0,L.jsx)(tF,{binding:i?.valueSet,...f()});case X.Coding:return(0,L.jsx)(iF,{binding:i?.valueSet,...f()});case X.ContactDetail:return(0,L.jsx)(cF,{...f()});case X.ContactPoint:return(0,L.jsx)(sF,{...f()});case X.Extension:return(0,L.jsx)(pF,{...f(),propertyType:e.elementDefinitionType});case X.HumanName:return(0,L.jsx)(mF,{...f()});case X.Identifier:return(0,L.jsx)(hF,{...f()});case X.Money:return(0,L.jsx)(_F,{...f()});case X.Period:return(0,L.jsx)(vF,{...f()});case X.Duration:case X.Quantity:return(0,L.jsx)(yF,{...f()});case X.Range:return(0,L.jsx)(xF,{...f()});case X.Ratio:return(0,L.jsx)(SF,{...f()});case X.Reference:return(0,L.jsx)(kF,{...f(),targetTypes:XF(e.elementDefinitionType)});case X.Timing:return(0,L.jsx)(UF,{...f()});case X.Dosage:case X.UsageContext:default:return(0,L.jsx)($F,{...f(),typeName:l})}}var YF=[`${px}/fhir/StructureDefinition/`,`https://medplum.com/fhir/StructureDefinition/`];function XF(e){return e?.targetProfile?.map(e=>{let t=YF.find(t=>e.startsWith(t));return t?e.slice(t.length):e})}function ZF(e){let[t,n]=(0,b.useState)(e.defaultValue??{}),r=(0,b.useContext)(Ik),i=(0,b.useMemo)(()=>zk(r.elements),[r.elements]);function a(t){n(t),e.onChange&&e.onChange(t)}let o={type:e.type,value:t};return(0,L.jsx)(K,{style:{flexGrow:1},"data-testid":e.testId,children:i.map(([n,r])=>{let[i,s]=kP(o,n,r),c=r.min!==void 0&&r.min>0,l=e.valuePath?e.valuePath+`.`+n:void 0,u=(0,L.jsx)(KF,{property:r,name:n,path:e.path+`.`+n,valuePath:l,defaultValue:i,defaultPropertyType:s,onChange:(e,i)=>{a($P({...t},n,i??n,r,e))},outcome:e.outcome},n);return e.type===`Extension`||Lk.includes(n)?u:r.type.length===1&&r.type[0].code===`boolean`?(0,L.jsx)(ZP,{title:xw(n),description:r.description,htmlFor:n,fhirPath:r.path,withAsterisk:c,readonly:r.readonly,children:u},n):(0,L.jsx)(QP,{title:xw(n),description:r.description,withAsterisk:c,htmlFor:n,outcome:e.outcome,fhirPath:r.path,errorExpression:l,readonly:r.readonly,children:u},n)})})}var QF={nested:`_nested_1ya4k_1`};function $F(e){let[t]=(0,b.useState)(()=>e.defaultValue??{}),n=(0,b.useContext)(Ik),r=e.profileUrl??n?.profileUrl,i=(0,b.useMemo)(()=>Qx(e.typeName,r),[e.typeName,r]),a=i?.type??e.typeName,o=(0,b.useMemo)(()=>{if(i)return WD({parentContext:n,elements:i.elements,path:e.path,profileUrl:i.url,accessPolicyResource:e.accessPolicyResource})},[i,n,e.path,e.accessPolicyResource]);if(!i)return(0,L.jsxs)(`div`,{children:[a,`\xA0not implemented`]});let s=n.path!==``;return zP(Ik.Provider,o,(0,L.jsx)(B,{className:jn({[QF.nested]:s}),children:(0,L.jsx)(ZF,{path:e.path,valuePath:e.valuePath,type:a,defaultValue:t,onChange:e.onChange,outcome:e.outcome})}))}var eI=class{x;y;pressure;time;constructor(e,t,n,r){if(isNaN(e)||isNaN(t))throw Error(`Point is invalid: (${e}, ${t})`);this.x=+e,this.y=+t,this.pressure=n||0,this.time=r||Date.now()}distanceTo(e){return Math.sqrt((this.x-e.x)**2+(this.y-e.y)**2)}equals(e){return this.x===e.x&&this.y===e.y&&this.pressure===e.pressure&&this.time===e.time}velocityFrom(e){return this.time===e.time?0:this.distanceTo(e)/(this.time-e.time)}},tI=class e{constructor(e,t,n,r,i,a){this.startPoint=e,this.control2=t,this.control1=n,this.endPoint=r,this.startWidth=i,this.endWidth=a}static fromPoints(t,n){let r=this.calculateControlPoints(t[0],t[1],t[2]).c2,i=this.calculateControlPoints(t[1],t[2],t[3]).c1;return new e(t[1],r,i,t[2],n.start,n.end)}static calculateControlPoints(e,t,n){let r=e.x-t.x,i=e.y-t.y,a=t.x-n.x,o=t.y-n.y,s={x:(e.x+t.x)/2,y:(e.y+t.y)/2},c={x:(t.x+n.x)/2,y:(t.y+n.y)/2},l=Math.sqrt(r*r+i*i),u=Math.sqrt(a*a+o*o),d=s.x-c.x,f=s.y-c.y,p=l+u==0?0:u/(l+u),m={x:c.x+d*p,y:c.y+f*p},h=t.x-m.x,g=t.y-m.y;return{c1:new eI(s.x+h,s.y+g),c2:new eI(c.x+h,c.y+g)}}length(){let e=0,t,n;for(let r=0;r<=10;r+=1){let i=r/10,a=this.point(i,this.startPoint.x,this.control1.x,this.control2.x,this.endPoint.x),o=this.point(i,this.startPoint.y,this.control1.y,this.control2.y,this.endPoint.y);if(r>0){let r=a-t,i=o-n;e+=Math.sqrt(r*r+i*i)}t=a,n=o}return e}point(e,t,n,r,i){return t*(1-e)*(1-e)*(1-e)+3*n*(1-e)*(1-e)*e+3*r*(1-e)*e*e+i*e*e*e}},nI=class{_et;constructor(){try{this._et=new EventTarget}catch{this._et=document}}addEventListener(e,t,n){this._et.addEventListener(e,t,n)}dispatchEvent(e){return this._et.dispatchEvent(e)}removeEventListener(e,t,n){this._et.removeEventListener(e,t,n)}};function rI(e,t=250){let n=0,r=null,i,a,o,s=()=>{n=Date.now(),r=null,i=e.apply(a,o),r||(a=null,o=[])};return function(...c){let l=Date.now(),u=t-(l-n);return a=this,o=c,u<=0||u>t?(r&&=(clearTimeout(r),null),n=l,i=e.apply(a,o),r||(a=null,o=[])):r||=window.setTimeout(s,u),i}}var iI=class e extends nI{constructor(t,n={}){super(),this.canvas=t,this.velocityFilterWeight=n.velocityFilterWeight||.7,this.minWidth=n.minWidth||.5,this.maxWidth=n.maxWidth||2.5,this.throttle=n.throttle??16,this.minDistance=n.minDistance??5,this.dotSize=n.dotSize||0,this.penColor=n.penColor||`black`,this.backgroundColor=n.backgroundColor||`rgba(0,0,0,0)`,this.compositeOperation=n.compositeOperation||`source-over`,this.canvasContextOptions=n.canvasContextOptions??{},this._strokeMoveUpdate=this.throttle?rI(e.prototype._strokeUpdate,this.throttle):e.prototype._strokeUpdate,this._handleMouseDown=this._handleMouseDown.bind(this),this._handleMouseMove=this._handleMouseMove.bind(this),this._handleMouseUp=this._handleMouseUp.bind(this),this._handleTouchStart=this._handleTouchStart.bind(this),this._handleTouchMove=this._handleTouchMove.bind(this),this._handleTouchEnd=this._handleTouchEnd.bind(this),this._handlePointerDown=this._handlePointerDown.bind(this),this._handlePointerMove=this._handlePointerMove.bind(this),this._handlePointerUp=this._handlePointerUp.bind(this),this._handlePointerCancel=this._handlePointerCancel.bind(this),this._handleTouchCancel=this._handleTouchCancel.bind(this),this._ctx=t.getContext(`2d`,this.canvasContextOptions),this.clear(),this.on()}dotSize;minWidth;maxWidth;penColor;minDistance;velocityFilterWeight;compositeOperation;backgroundColor;throttle;canvasContextOptions;_ctx;_drawingStroke=!1;_isEmpty=!0;_dataUrl;_dataUrlOptions;_lastPoints=[];_data=[];_lastVelocity=0;_lastWidth=0;_strokeMoveUpdate;_strokePointerId;clear(){let{_ctx:e,canvas:t}=this;e.fillStyle=this.backgroundColor,e.clearRect(0,0,t.width,t.height),e.fillRect(0,0,t.width,t.height),this._data=[],this._reset(this._getPointGroupOptions()),this._isEmpty=!0,this._dataUrl=void 0,this._dataUrlOptions=void 0,this._strokePointerId=void 0}redraw(){let e=this._data,t=this._dataUrl,n=this._dataUrlOptions;this.clear(),t&&this.fromDataURL(t,n),this.fromData(e,{clear:!1})}fromDataURL(e,t={}){return new Promise((n,r)=>{let i=new Image,a=t.ratio||window.devicePixelRatio||1,o=t.width||this.canvas.width/a,s=t.height||this.canvas.height/a,c=t.xOffset||0,l=t.yOffset||0;this._reset(this._getPointGroupOptions()),i.onload=()=>{this._ctx.drawImage(i,c,l,o,s),n()},i.onerror=e=>{r(e)},i.crossOrigin=`anonymous`,i.src=e,this._isEmpty=!1,this._dataUrl=e,this._dataUrlOptions={...t}})}toDataURL(e=`image/png`,t){switch(e){case`image/svg+xml`:return typeof t!=`object`&&(t=void 0),`data:image/svg+xml;base64,${btoa(this.toSVG(t))}`;default:return typeof t!=`number`&&(t=void 0),this.canvas.toDataURL(e,t)}}on(){this.canvas.style.touchAction=`none`,this.canvas.style.msTouchAction=`none`,this.canvas.style.userSelect=`none`,this.canvas.style.webkitUserSelect=`none`;let e=/Macintosh/.test(navigator.userAgent)&&`ontouchstart`in document;window.PointerEvent&&!e?this._handlePointerEvents():(this._handleMouseEvents(),`ontouchstart`in window&&this._handleTouchEvents())}off(){this.canvas.style.touchAction=`auto`,this.canvas.style.msTouchAction=`auto`,this.canvas.style.userSelect=`auto`,this.canvas.style.webkitUserSelect=`auto`,this.canvas.removeEventListener(`pointerdown`,this._handlePointerDown),this.canvas.removeEventListener(`mousedown`,this._handleMouseDown),this.canvas.removeEventListener(`touchstart`,this._handleTouchStart),this._removeMoveUpEventListeners()}_getListenerFunctions(){let e=window.document===this.canvas.ownerDocument?window:this.canvas.ownerDocument.defaultView??this.canvas.ownerDocument;return{addEventListener:e.addEventListener.bind(e),removeEventListener:e.removeEventListener.bind(e)}}_removeMoveUpEventListeners(){let{removeEventListener:e}=this._getListenerFunctions();e(`pointermove`,this._handlePointerMove),e(`pointerup`,this._handlePointerUp),e(`pointercancel`,this._handlePointerCancel),e(`mousemove`,this._handleMouseMove),e(`mouseup`,this._handleMouseUp),e(`touchmove`,this._handleTouchMove),e(`touchend`,this._handleTouchEnd),e(`touchcancel`,this._handleTouchCancel)}isEmpty(){return this._isEmpty}fromData(e,{clear:t=!0}={}){t&&this.clear(),this._fromData(e,this._drawCurve.bind(this),this._drawDot.bind(this)),this._data=this._data.concat(e)}toData(){return this._data}_isLeftButtonPressed(e,t){return t?e.buttons===1:(e.buttons&1)==1}_pointerEventToSignatureEvent(e){return{event:e,type:e.type,x:e.clientX,y:e.clientY,pressure:`pressure`in e?e.pressure:0}}_touchEventToSignatureEvent(e){let t=e.changedTouches[0];return{event:e,type:e.type,x:t.clientX,y:t.clientY,pressure:t.force}}_handleMouseDown(e){!this._isLeftButtonPressed(e,!0)||this._drawingStroke||this._strokeBegin(this._pointerEventToSignatureEvent(e))}_handleMouseMove(e){if(!this._isLeftButtonPressed(e,!0)||!this._drawingStroke){this._strokeEnd(this._pointerEventToSignatureEvent(e),!1);return}this._strokeMoveUpdate(this._pointerEventToSignatureEvent(e))}_handleMouseUp(e){this._isLeftButtonPressed(e)||this._strokeEnd(this._pointerEventToSignatureEvent(e))}_handleTouchStart(e){e.targetTouches.length!==1||this._drawingStroke||(e.cancelable&&e.preventDefault(),this._strokeBegin(this._touchEventToSignatureEvent(e)))}_handleTouchMove(e){if(e.targetTouches.length===1){if(e.cancelable&&e.preventDefault(),!this._drawingStroke){this._strokeEnd(this._touchEventToSignatureEvent(e),!1);return}this._strokeMoveUpdate(this._touchEventToSignatureEvent(e))}}_handleTouchEnd(e){e.targetTouches.length===0&&(e.cancelable&&e.preventDefault(),this._strokeEnd(this._touchEventToSignatureEvent(e)))}_handlePointerCancel(e){this._allowPointerId(e)&&(e.preventDefault(),this._strokeEnd(this._pointerEventToSignatureEvent(e),!1))}_handleTouchCancel(e){e.cancelable&&e.preventDefault(),this._strokeEnd(this._touchEventToSignatureEvent(e),!1)}_getPointerId(e){return e.persistentDeviceId||e.pointerId}_allowPointerId(e,t=!1){return this._strokePointerId===void 0?t:this._getPointerId(e)===this._strokePointerId}_handlePointerDown(e){this._drawingStroke||!this._isLeftButtonPressed(e)||!this._allowPointerId(e,!0)||(this._strokePointerId=this._getPointerId(e),e.preventDefault(),this._strokeBegin(this._pointerEventToSignatureEvent(e)))}_handlePointerMove(e){if(this._allowPointerId(e)){if(!this._isLeftButtonPressed(e,!0)||!this._drawingStroke){this._strokeEnd(this._pointerEventToSignatureEvent(e),!1);return}e.preventDefault(),this._strokeMoveUpdate(this._pointerEventToSignatureEvent(e))}}_handlePointerUp(e){this._isLeftButtonPressed(e)||!this._allowPointerId(e)||(e.preventDefault(),this._strokeEnd(this._pointerEventToSignatureEvent(e)))}_getPointGroupOptions(e){return{penColor:e&&`penColor`in e?e.penColor:this.penColor,dotSize:e&&`dotSize`in e?e.dotSize:this.dotSize,minWidth:e&&`minWidth`in e?e.minWidth:this.minWidth,maxWidth:e&&`maxWidth`in e?e.maxWidth:this.maxWidth,velocityFilterWeight:e&&`velocityFilterWeight`in e?e.velocityFilterWeight:this.velocityFilterWeight,compositeOperation:e&&`compositeOperation`in e?e.compositeOperation:this.compositeOperation}}_strokeBegin(e){if(!this.dispatchEvent(new CustomEvent(`beginStroke`,{detail:e,cancelable:!0})))return;let{addEventListener:t}=this._getListenerFunctions();switch(e.event.type){case`mousedown`:t(`mousemove`,this._handleMouseMove,{passive:!1}),t(`mouseup`,this._handleMouseUp,{passive:!1});break;case`touchstart`:t(`touchmove`,this._handleTouchMove,{passive:!1}),t(`touchend`,this._handleTouchEnd,{passive:!1}),t(`touchcancel`,this._handleTouchCancel,{passive:!1});break;case`pointerdown`:t(`pointermove`,this._handlePointerMove,{passive:!1}),t(`pointerup`,this._handlePointerUp,{passive:!1}),t(`pointercancel`,this._handlePointerCancel,{passive:!1});break;default:}this._drawingStroke=!0;let n=this._getPointGroupOptions(),r={...n,points:[]};this._data.push(r),this._reset(n),this._strokeUpdate(e)}_strokeUpdate(e){if(!this._drawingStroke)return;if(this._data.length===0){this._strokeBegin(e);return}this.dispatchEvent(new CustomEvent(`beforeUpdateStroke`,{detail:e}));let t=this._createPoint(e.x,e.y,e.pressure),n=this._data[this._data.length-1],r=n.points,i=r.length>0&&r[r.length-1],a=i?t.distanceTo(i)<=this.minDistance:!1,o=this._getPointGroupOptions(n);if(!i||!(i&&a)){let e=this._addPoint(t,o);i?e&&this._drawCurve(e,o):this._drawDot(t,o),r.push({time:t.time,x:t.x,y:t.y,pressure:t.pressure})}this.dispatchEvent(new CustomEvent(`afterUpdateStroke`,{detail:e}))}_strokeEnd(e,t=!0){this._removeMoveUpEventListeners(),this._drawingStroke&&(t&&this._strokeUpdate(e),this._drawingStroke=!1,this._strokePointerId=void 0,this.dispatchEvent(new CustomEvent(`endStroke`,{detail:e})))}_handlePointerEvents(){this._drawingStroke=!1,this.canvas.addEventListener(`pointerdown`,this._handlePointerDown,{passive:!1})}_handleMouseEvents(){this._drawingStroke=!1,this.canvas.addEventListener(`mousedown`,this._handleMouseDown,{passive:!1})}_handleTouchEvents(){this.canvas.addEventListener(`touchstart`,this._handleTouchStart,{passive:!1})}_reset(e){this._lastPoints=[],this._lastVelocity=0,this._lastWidth=(e.minWidth+e.maxWidth)/2,this._ctx.fillStyle=e.penColor,this._ctx.globalCompositeOperation=e.compositeOperation}_createPoint(e,t,n){let r=this.canvas.getBoundingClientRect();return new eI(e-r.left,t-r.top,n,new Date().getTime())}_addPoint(e,t){let{_lastPoints:n}=this;if(n.push(e),n.length>2){n.length===3&&n.unshift(n[0]);let e=this._calculateCurveWidths(n[1],n[2],t),r=tI.fromPoints(n,e);return n.shift(),r}return null}_calculateCurveWidths(e,t,n){let r=n.velocityFilterWeight*t.velocityFrom(e)+(1-n.velocityFilterWeight)*this._lastVelocity,i=this._strokeWidth(r,n),a={end:i,start:this._lastWidth};return this._lastVelocity=r,this._lastWidth=i,a}_strokeWidth(e,t){return Math.max(t.maxWidth/(e+1),t.minWidth)}_drawCurveSegment(e,t,n){let r=this._ctx;r.moveTo(e,t),r.arc(e,t,n,0,2*Math.PI,!1),this._isEmpty=!1}_drawCurve(e,t){let n=this._ctx,r=e.endWidth-e.startWidth,i=Math.ceil(e.length())*2;n.beginPath(),n.fillStyle=t.penColor;for(let n=0;n<i;n+=1){let a=n/i,o=a*a,s=o*a,c=1-a,l=c*c,u=l*c,d=u*e.startPoint.x;d+=3*l*a*e.control1.x,d+=3*c*o*e.control2.x,d+=s*e.endPoint.x;let f=u*e.startPoint.y;f+=3*l*a*e.control1.y,f+=3*c*o*e.control2.y,f+=s*e.endPoint.y;let p=Math.min(e.startWidth+s*r,t.maxWidth);this._drawCurveSegment(d,f,p)}n.closePath(),n.fill()}_drawDot(e,t){let n=this._ctx,r=t.dotSize>0?t.dotSize:(t.minWidth+t.maxWidth)/2;n.beginPath(),this._drawCurveSegment(e.x,e.y,r),n.closePath(),n.fillStyle=t.penColor,n.fill()}_fromData(e,t,n){for(let r of e){let{points:e}=r,i=this._getPointGroupOptions(r);if(e.length>1)for(let n=0;n<e.length;n+=1){let r=e[n],a=new eI(r.x,r.y,r.pressure,r.time);n===0&&this._reset(i);let o=this._addPoint(a,i);o&&t(o,i)}else this._reset(i),n(e[0],i)}}toSVG({includeBackgroundColor:e=!1,includeDataUrl:t=!1}={}){let n=this._data,r=Math.max(window.devicePixelRatio||1,1),i=this.canvas.width/r,a=this.canvas.height/r,o=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);if(o.setAttribute(`xmlns`,`http://www.w3.org/2000/svg`),o.setAttribute(`xmlns:xlink`,`http://www.w3.org/1999/xlink`),o.setAttribute(`viewBox`,`0 0 ${i} ${a}`),o.setAttribute(`width`,i.toString()),o.setAttribute(`height`,a.toString()),e&&this.backgroundColor){let e=document.createElement(`rect`);e.setAttribute(`width`,`100%`),e.setAttribute(`height`,`100%`),e.setAttribute(`fill`,this.backgroundColor),o.appendChild(e)}if(t&&this._dataUrl){let e=this._dataUrlOptions?.ratio||window.devicePixelRatio||1,t=this._dataUrlOptions?.width||this.canvas.width/e,n=this._dataUrlOptions?.height||this.canvas.height/e,r=this._dataUrlOptions?.xOffset||0,i=this._dataUrlOptions?.yOffset||0,a=document.createElement(`image`);a.setAttribute(`x`,r.toString()),a.setAttribute(`y`,i.toString()),a.setAttribute(`width`,t.toString()),a.setAttribute(`height`,n.toString()),a.setAttribute(`preserveAspectRatio`,`none`),a.setAttribute(`href`,this._dataUrl),o.appendChild(a)}return this._fromData(n,(e,{penColor:t})=>{let n=document.createElement(`path`);if(!isNaN(e.control1.x)&&!isNaN(e.control1.y)&&!isNaN(e.control2.x)&&!isNaN(e.control2.y)){let r=`M ${e.startPoint.x.toFixed(3)},${e.startPoint.y.toFixed(3)} C ${e.control1.x.toFixed(3)},${e.control1.y.toFixed(3)} ${e.control2.x.toFixed(3)},${e.control2.y.toFixed(3)} ${e.endPoint.x.toFixed(3)},${e.endPoint.y.toFixed(3)}`;n.setAttribute(`d`,r),n.setAttribute(`stroke-width`,(e.endWidth*2.25).toFixed(3)),n.setAttribute(`stroke`,t),n.setAttribute(`fill`,`none`),n.setAttribute(`stroke-linecap`,`round`),o.appendChild(n)}},(e,{penColor:t,dotSize:n,minWidth:r,maxWidth:i})=>{let a=document.createElement(`circle`),s=n>0?n:(r+i)/2;a.setAttribute(`r`,s.toString()),a.setAttribute(`cx`,e.x.toString()),a.setAttribute(`cy`,e.y.toString()),a.setAttribute(`fill`,t),o.appendChild(a)}),o.outerHTML}};function aI(e){let t=Q(),{width:n=500,height:r=200,defaultValue:i,who:a,onChange:o,...s}=e,c=(0,b.useRef)(null),l=(0,b.useRef)(null),u=(0,b.useRef)(o);(0,b.useLayoutEffect)(()=>{u.current=o}),(0,b.useEffect)(()=>{function e(){u.current?.({type:[{system:px+`/fhir/signature-type`,code:`ProofOfOrigin`,display:`Proof of Origin`}],when:new Date().toISOString(),who:a??WS(t.getProfile()),data:l.current?.toDataURL().split(`,`)[1]})}if(c.current){let t=new iI(c.current);i?.data&&t.fromDataURL(i.data).catch(console.error),t.addEventListener(`endStroke`,e),l.current=t}return()=>{l.current&&l.current.removeEventListener(`beginStroke`,e)}},[t,i,a]);let d=()=>{l.current&&l.current.clear(),u.current?.(void 0)};return(0,L.jsxs)(vl,{withBorder:!0,p:0,w:n,h:r,pos:`relative`,...s,children:[(0,L.jsx)(`canvas`,{ref:c,width:n,height:r,"aria-label":`Signature input area`}),(0,L.jsx)(W,{onClick:d,"aria-label":`Clear signature`,pos:`absolute`,top:0,right:0,size:`xs`,leftSection:(0,L.jsx)(sj,{size:16}),variant:`subtle`,color:`gray`,children:`Clear`})]})}function oI(e){let t=[...e.context,e.responseItem];return(0,L.jsxs)(`div`,{children:[e.item.text&&(0,L.jsx)(J,{order:3,mb:`md`,children:e.item.text}),(0,L.jsx)(TI,{formState:e.formState,context:t,items:e.item.item??[],responseItems:e.responseItem.item??[]})]},e.item.linkId)}var sI=30,cI=50;function lI(e){let t=e.formState,n=e.item,r=e.responseItem;function i(i){if(t&&e.context)if(n.repeats&&e.index!==void 0&&n.type!==HO.choice&&n.type!==HO.openChoice){let n=[...r.answer||[]];i.length===0?n.splice(e.index,1):n[e.index]=i[0],t.onChangeAnswer(e.context,e.item,n)}else t.onChangeAnswer(e.context,e.item,i)}let a=n.type;if(!a)return null;let o=n.linkId;if(!o)return null;let s=n.repeats&&e.index!==void 0&&n.type!==HO.choice&&n.type!==HO.openChoice?`${o}-${e.index}`:o,c;n.initial&&n.initial.length>0?c=n.initial[0]:n.answerOption&&n.answerOption.length>0&&(c=n.answerOption.find(e=>e.initialSelected));let l=_I(r,e.index)??bk(c),u=nC(r,`${px}/fhir/StructureDefinition/questionnaire-validationError`),d=null;switch(a){case HO.display:d=(0,L.jsx)(`p`,{children:e.item.text},e.item.linkId);break;case HO.boolean:d=(0,L.jsx)(ZP,{title:e.item.text,htmlFor:s,children:(0,L.jsx)(cp,{id:s,name:o,required:e.required??n.required,defaultChecked:l?.value,onChange:e=>i([{valueBoolean:e.currentTarget.checked}])})},e.item.linkId);break;case HO.decimal:d=(0,L.jsx)(ab,{type:`number`,step:`any`,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i(e.currentTarget.value===``?[]:[{valueDecimal:e.currentTarget.valueAsNumber}])});break;case HO.integer:d=(0,L.jsx)(ab,{type:`number`,step:1,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i(e.currentTarget.value===``?[]:[{valueInteger:e.currentTarget.valueAsNumber}])});break;case HO.date:d=(0,L.jsx)(ab,{type:`date`,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueDate:e.currentTarget.value}])});break;case HO.dateTime:d=(0,L.jsx)(dF,{name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueDateTime:e}])});break;case HO.time:d=(0,L.jsx)(ab,{type:`time`,id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueTime:e.currentTarget.value}])});break;case HO.string:case HO.url:d=(0,L.jsx)(ab,{id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>{let t=e.currentTarget.value;i(t===``?[]:[{valueString:t}])}});break;case HO.text:d=(0,L.jsx)(ah,{id:s,name:o,required:e.required??n.required,defaultValue:l?.value,onChange:e=>{let t=e.currentTarget.value;i(t===``?[]:[{valueString:t}])}});break;case HO.attachment:d=(0,L.jsx)(H,{py:4,children:(0,L.jsx)(PN,{path:``,name:s,defaultValue:l?.value,onChange:e=>i([{valueAttachment:e}])})});break;case HO.reference:d=(0,L.jsx)(kF,{name:s,required:e.required??n.required,targetTypes:dk(n),searchCriteria:pk(n,t?.subject,t?.encounter),defaultValue:l?.value,onChange:e=>i([{valueReference:e}])});break;case HO.quantity:d=(0,L.jsx)(yF,{path:``,name:s,required:e.required??n.required,defaultValue:l?.value,onChange:e=>i([{valueQuantity:e}]),disableWheel:!0});break;case HO.choice:case HO.openChoice:{let{widget:t,multiselect:a}=xI(n),o={name:s,item:n,required:e.required??n.required,initial:c,response:r,multiselect:a,onChangeAnswer:i};d=t===`check-box`?(0,L.jsx)(hI,{...o}):t===`drop-down`?(0,L.jsx)(uI,{...o}):(0,L.jsx)(mI,{...o})}break;default:return null}return(0,L.jsxs)(L.Fragment,{children:[d,u?.valueString&&(0,L.jsx)(U,{c:`red`,size:`lg`,mt:4,children:u.valueString})]})}function uI(e){let{name:t,item:n,required:r,initial:i,onChangeAnswer:a,response:o,multiselect:s}=e;if(!n.answerOption?.length&&!n.answerValueSet)return(0,L.jsx)(gI,{});let c=bk(i),l=_I(o)??c,u=vI(o),d=n.repeats||s;if(n.answerValueSet)return(0,L.jsx)($M,{name:t,placeholder:`Select items`,binding:n.answerValueSet,maxValues:d?void 0:1,required:r,onChange:e=>{d?e.length===0?a([{}]):a(e.map(e=>({valueCoding:e}))):a([{valueCoding:e[0]}])},defaultValue:l?.value});if(d){let{propertyName:e,data:t}=SI(n);return(0,L.jsx)(xg,{data:t,placeholder:`Select items`,searchable:!0,defaultValue:u||[GC(c)],required:r,onChange:t=>{t.length===0?a([{}]):a(sk(t,e,n))}})}else{let e=[``];if(n.answerOption)for(let t of n.answerOption){let n=xk(t);e.push(GC(n))}return(0,L.jsx)(Tg,{id:t,name:t,required:r,onChange:e=>{let t=e.currentTarget.selectedIndex;if(t===0){a([{}]);return}let r=n.answerOption[t-1],i=xk(r);a([{[`value`+DC(i.type)]:i.value}])},defaultValue:cw(l?.value)||l?.value,data:e})}}function dI(e,t){return e?t.valueSetExpand({url:e,count:sI+1}).then(e=>e.expansion?.contains??[]):Promise.resolve([])}function fI(e){let t=Q(),[n,r]=(0,b.useState)([]),[i,a]=(0,b.useState)(!1);return(0,b.useEffect)(()=>{async function n(){if(e){a(!0);try{r(await dI(e,t))}catch(e){console.error(`Error loading value set:`,e)}finally{a(!1)}}}n().catch(console.error)},[e,t]),[n,i]}function pI(e,t){return e.map((e,n)=>[`${t}-valueset-${n}`,{type:`Coding`,value:{system:e.system,code:e.code,display:e.display}}])}function mI(e){let{name:t,item:n,required:r,initial:i,onChangeAnswer:a,response:o}=e,s=Tw(`QuestionnaireItemAnswerOption`,`value[x]`),c=bk(i),[l,u]=fI(n.answerValueSet),d=[],f;if(n.answerValueSet)d.push(...pI(l,t));else if(n.answerOption){let e=n.answerOption.slice(0,cI).map((e,n)=>{let r=`${t}-option-${n}`,i=xk(e);return i?.value?(c&&rC(i)===rC(c)&&(f=r),[r,i]):null}).filter(e=>e!==null);d.push(...e)}let p=yI(d,_I(o));if(u)return(0,L.jsx)(U,{children:`Loading options...`});if(d.length===0)return(0,L.jsx)(gI,{});let m=d.slice(0,sI);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(wv.Group,{name:t,value:p??f,required:r,onChange:e=>{let t=d.find(t=>t[0]===e);if(t){let e=t[1];a([{[`value`+DC(e.type)]:e.value}])}},children:m.map(([e,t])=>(0,L.jsx)(wv,{id:e,value:e,py:4,required:r,label:(0,L.jsx)(UP,{property:s,propertyType:t.type,value:t.value})},e))}),(n.answerValueSet&&d.length>sI||n.answerOption&&d.length>cI)&&(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,mt:`xs`,children:[`Showing first `,sI,` options`]})]})}function hI(e){let{name:t,item:n,onChangeAnswer:r,response:i}=e,a=Tw(`QuestionnaireItemAnswerOption`,`value[x]`),[o,s]=fI(n.answerValueSet),[c,l]=(0,b.useState)(n.answerValueSet?(i?.answer?.map(e=>e.valueCoding)||[]).filter(e=>e!==void 0):vI(i)),u=[];if(n.answerValueSet)u.push(...pI(o,t));else if(n.answerOption){let e=n.answerOption.slice(0,cI).map((e,n)=>{let r=`${t}-option-${n}`,i=xk(e);return i?.value?[r,i]:null}).filter(e=>e!==null);u.push(...e)}if(s)return(0,L.jsx)(U,{children:`Loading options...`});if(u.length===0)return(0,L.jsx)(gI,{});let d=u.slice(0,sI),f=(e,t)=>{if(n.answerValueSet){let n=c,i;i=t?[...n,e.value]:n.filter(t=>!uC(t,e.value)),l(i),i.length===0?r([{}]):r(i.map(e=>({valueCoding:e})))}else{let i=c,a=GC(e),o;o=t?[...i,a]:i.filter(e=>e!==a),l(o),o.length===0?r([{}]):r(sk(o,`value`+DC(e.type),n))}};return(0,L.jsxs)(H,{style:{flexDirection:`column`,alignItems:`flex-start`},children:[d.map(([e,t])=>{let r=GC(t),i=n.answerValueSet?c.some(e=>uC(e,t.value)):c.includes(r);return(0,L.jsx)(cp,{id:e,label:(0,L.jsx)(UP,{property:a,propertyType:t.type,value:t.value}),checked:i,onChange:e=>f(t,e.currentTarget.checked)},e)}),(n.answerValueSet&&u.length>sI||n.answerOption&&u.length>cI)&&(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,children:[`Showing first `,sI,` options`]})]})}function gI(){return(0,L.jsx)(ab,{disabled:!0,placeholder:`No Answers Defined`})}function _I(e,t=0){return xk(e?.answer?.[t]??{})}function vI(e){let t=e?.answer;return t?t.map(e=>xk(e)).map(e=>cw(e?.value)||e?.value).filter(Boolean):[]}function yI(e,t){return e.find(e=>uC(e[1].value,t?.value))?.[0]}var bI=[`drop-down`,`radio-button`,`check-box`];function xI(e){let t=`radio-button`,n=!1;e.answerValueSet&&(t=`drop-down`);for(let r of e.extension??[]){if(r.url!==UO)continue;let e=r.valueCodeableConcept?.coding?.[0]?.code;bI.includes(e)&&(t=e),e===`multi-select`&&(n=!0)}return t===`radio-button`&&n&&(t=`check-box`),{widget:t,multiselect:n}}function SI(e){if(e.answerOption?.length===0)return{propertyName:``,data:[]};let t=e.answerOption[0];return{propertyName:`value`+DC(xk(t).type),data:(e.answerOption??[]).map(e=>{let t=GC(xk(e));return{value:t,label:t}})}}function CI(e){return(0,L.jsxs)(L.Fragment,{children:[e.responseItems.map(t=>(0,L.jsx)(oI,{formState:e.formState,context:e.context,item:e.item,responseItem:t},`group-${t.id}`)),(0,L.jsx)(Nd,{onClick:()=>e.formState.onAddGroup(e.context,e.item),children:`Add Group: ${e.item.text}`})]})}function wI(e){let{formState:t,context:n,item:r,responseItem:i}=e,a=r.type===HO.choice||r.type===HO.openChoice,o=!a,s=!a&&i.answer&&i.answer.length>0?i.answer:[{}];return(0,L.jsxs)(QP,{title:e.item.text,withAsterisk:e.item.required,children:[(0,L.jsx)(K,{gap:`xs`,children:s?.map((e,a)=>(0,L.jsx)(lI,{formState:t,context:n,item:r,responseItem:i,index:a},`${r.linkId}-${a}`))}),o&&(0,L.jsx)(Nd,{onClick:()=>t.onAddAnswer(n,r),children:`Add Item`})]},e.item.linkId)}function TI(e){let{formState:t,context:n,items:r,responseItems:i}=e;return(0,L.jsx)(K,{children:r.map((e,r)=>{if(!$O(e,t.questionnaireResponse))return null;if(e.type===HO.display)return(0,L.jsx)(`p`,{children:e.text},`display-${e.id}-${r}`);let a=i.filter(t=>t.linkId===e.linkId);return e.type===HO.group&&e.repeats?(0,L.jsx)(CI,{formState:t,context:n,item:e,responseItems:a},`repeating-group-${e.id}-${r}`):e.type===HO.group?(0,L.jsx)(oI,{formState:t,context:n,item:e,responseItem:a[0]},`group-${e.id}-${r}`):e.type===HO.boolean?(0,L.jsx)(lI,{formState:t,context:n,item:e,responseItem:a[0],index:0},`boolean-item-${e.id}-${r}`):e.repeats?(0,L.jsx)(wI,{formState:t,context:n,item:e,responseItem:a[0]},`repeating-item-${e.id}-${r}`):(0,L.jsx)(QP,{htmlFor:e.linkId,title:e.text,withAsterisk:e.required,children:(0,L.jsx)(lI,{formState:t,context:n,item:e,responseItem:a[0],index:0})},`repeating-item-${e.id}-${r}`)})})}function EI(e){let{formState:t,submitButtonText:n,excludeButtons:r,children:i}=e,a=t.pages,o=t.activePage,s=o>0,c=o<a.length-1,l=o===a.length-1;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Sy,{active:o,allowNextStepsSelect:!1,p:6,children:a.map((e,t)=>(0,L.jsx)(Sy.Step,{label:e.title,children:t===o&&i},e.linkId))}),!r&&(0,L.jsxs)(H,{justify:`flex-end`,mt:`xl`,gap:`xs`,children:[s&&(0,L.jsx)(W,{onClick:t.onPrevPage,children:`Back`}),c&&(0,L.jsx)(W,{onClick:e=>{e.currentTarget.closest(`form`).reportValidity()&&t.onNextPage()},children:`Next`}),l&&(0,L.jsx)(KM,{children:n??`Submit`})]})]})}function DI(e){let t=Q(),[n,r]=(0,b.useState)(!1),i=(0,b.useRef)(e);(0,b.useLayoutEffect)(()=>{i.current=e});let a=(0,b.useCallback)(e=>{r(!1),i.current.onChange?.(e)},[]),o=wk({questionnaire:e.questionnaire,defaultValue:e.questionnaireResponse,subject:e.subject,encounter:e.encounter,source:e.source,disablePagination:e.disablePagination,onChange:a}),s=(0,b.useRef)(o);(0,b.useLayoutEffect)(()=>{s.current=o});let c=(0,b.useMemo)(()=>o.loading?!1:!!nC(o.questionnaire,YO),[o]),l=(0,b.useMemo)(()=>o.loading?!1:!!o.questionnaireResponse.extension?.find(e=>e.url===XO),[o]),u=(0,b.useCallback)(()=>{let e=s.current;if(e.loading)return;let n=i.current.onSubmit;if(!n)return;if(c&&!l){r(!0);return}let a=e.questionnaire,o=e.questionnaireResponse,u=i.current.subject,d=i.current.source;if(!d){let e=t.getProfile();e&&(d=WS(e))}n({...o,questionnaire:a.url??GS(a),subject:u,source:d,authored:new Date().toISOString(),status:`completed`})},[t,c,l]);return o.loading?null:(0,L.jsxs)(GM,{testid:`questionnaire-form`,onSubmit:u,children:[o.questionnaire.title&&(0,L.jsx)(J,{children:o.questionnaire.title}),o.pagination?(0,L.jsx)(EI,{formState:o,submitButtonText:e.submitButtonText,excludeButtons:e.excludeButtons,children:(0,L.jsx)(TI,{formState:o,context:[],items:o.items,responseItems:o.responseItems})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(TI,{formState:o,context:[],items:o.items,responseItems:o.responseItems}),c&&(0,L.jsxs)(K,{mt:`md`,gap:0,children:[(0,L.jsx)(U,{size:`sm`,fw:500,children:`Signature`}),(0,L.jsx)(aI,{onChange:o.onChangeSignature}),!l&&n&&(0,L.jsx)(U,{c:`red`,size:`sm`,children:`Signature is required.`})]}),!e.excludeButtons&&(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,gap:`xs`,children:(0,L.jsx)(KM,{children:e.submitButtonText??`Submit`})})]})]})}var OI={draft:`blue`,active:`blue`,"on-hold":`yellow`,revoked:`red`,completed:`green`,"entered-in-error":`red`,unknown:`gray`,retired:`gray`,registered:`blue`,preliminary:`blue`,final:`green`,amended:`yellow`,corrected:`yellow`,cancelled:`red`,requested:`blue`,received:`blue`,accepted:`blue`,rejected:`red`,ready:`blue`,"in-progress":`blue`,failed:`red`,proposed:`blue`,pending:`blue`,booked:`blue`,arrived:`blue`,fulfilled:`green`,noshow:`red`,"checked-in":`blue`,waitlist:`gray`,routine:`gray`,urgent:`red`,asap:`red`,stat:`red`,"not-done":`red`,connected:`green`,disconnected:`red`,finished:`green`,planned:`gray`};function kI(e){let{status:t,...n}=e;return(0,L.jsx)(jp,{color:e.color||OI[t],...n,children:t.replaceAll(`-`,` `)})}var AI={noteBody:`_noteBody_10swh_1`,noteCite:`_noteCite_10swh_5`,noteRoot:`_noteRoot_10swh_10`};function jI({value:e}){return e?(0,L.jsx)(K,{justify:`flex-start`,gap:`xs`,children:e.map(e=>e.text&&(0,L.jsx)(Fp,{classNames:{cite:AI.noteCite,root:AI.noteRoot},cite:e.authorReference?.display||e.authorString,icon:null,children:e.text},`note-${e.text}`))}):null}function MI(e){let{value:t,link:n,...r}=e,[i,a]=(0,b.useState)(),o=BO(t,a),s;if(i&&!Nx(i))s=`[${Lx(i)}]`;else if(o)s=YS(o);else return null;return n?(0,L.jsx)(Sj,{to:t,...r,children:s}):(0,L.jsx)(U,{component:`span`,...r,children:s})}function NI(e){return(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(Oj,{size:24,radius:12,value:e.value,link:e.link}),(0,L.jsx)(MI,{value:e.value,link:e.link})]})}var PI={table:`_table_pe9td_1`,criticalRow:`_criticalRow_pe9td_12`,noteBody:`_noteBody_pe9td_23`,noteCite:`_noteCite_pe9td_27`,noteRoot:`_noteRoot_pe9td_32`};FI.defaultProps={hideObservationNotes:!1,hideSpecimenInfo:!1,hideSubject:!1};function FI(e){let t=Q(),n=BO(e.value),[r,i]=(0,b.useState)();if((0,b.useEffect)(()=>{n?.specimen&&Promise.allSettled(n.specimen.map(e=>t.readReference(e))).then(e=>e.filter(e=>e.status===`fulfilled`).map(e=>e.value)).then(i).catch(console.error)},[t,n]),!n)return null;let a=r?.flatMap(e=>e.note||[])||[];if(n.presentedForm&&n.presentedForm.length>0){let e=n.presentedForm[0];e.contentType?.startsWith(`text/plain`)&&e.data&&a.push({text:window.atob(e.data)})}return(0,L.jsxs)(K,{children:[(0,L.jsx)(J,{children:`Diagnostic Report`}),(0,L.jsx)(II,{value:n,hideSubject:e.hideSubject}),r&&!e.hideSpecimenInfo&&LI(r),n.result&&(0,L.jsx)(RI,{hideObservationNotes:e.hideObservationNotes,value:n.result}),a.length>0&&(0,L.jsx)(jI,{value:a})]})}function II({value:e,hideSubject:t=!1}){return(0,L.jsxs)(H,{mt:`md`,gap:30,children:[e.subject&&!t&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Subject`}),(0,L.jsx)(NI,{value:e.subject,link:!0})]}),e.resultsInterpreter?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Interpreter`}),(0,L.jsx)(NI,{value:e,link:!0})]},e.reference)),e.performer?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Performer`}),(0,L.jsx)(NI,{value:e,link:!0})]},e.reference)),e.issued&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Issued`}),(0,L.jsx)(U,{children:ZC(e.issued)})]}),e.status&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xs`,tt:`uppercase`,c:`dimmed`,children:`Status`}),(0,L.jsx)(kI,{status:e.status})]})]})}function LI(e){return(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(J,{order:2,size:`h6`,children:`Specimens`}),(0,L.jsx)(vh,{type:`ordered`,children:e?.map(e=>(0,L.jsx)(vh.Item,{ml:`sm`,children:(0,L.jsxs)(H,{gap:20,children:[(0,L.jsxs)(H,{gap:5,children:[(0,L.jsx)(U,{fw:500,children:`Collected:`}),` `,ZC(e.collection?.collectedDateTime)]}),(0,L.jsxs)(H,{gap:5,children:[(0,L.jsx)(U,{fw:500,children:`Received:`}),` `,ZC(e.receivedTime)]})]})},`specimen-${e.id}`))})]})}function RI(e){return(0,L.jsxs)(`table`,{className:PI.table,children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Test`}),(0,L.jsx)(`th`,{children:`Value`}),(0,L.jsx)(`th`,{children:`Reference Range`}),(0,L.jsx)(`th`,{children:`Interpretation`}),(0,L.jsx)(`th`,{children:`Category`}),(0,L.jsx)(`th`,{children:`Performer`}),(0,L.jsx)(`th`,{children:`Status`})]})}),(0,L.jsx)(`tbody`,{children:(0,L.jsx)(zI,{value:e.value,ancestorIds:e.ancestorIds,hideObservationNotes:e.hideObservationNotes})})]})}function zI(e){return(0,L.jsx)(L.Fragment,{children:e.value?.map(t=>(0,L.jsx)(BI,{value:t,ancestorIds:e.ancestorIds,hideObservationNotes:e.hideObservationNotes},`obs-${Ow(t)?t.reference:t.id}`))})}function BI(e){let t=BO(e.value);if(!t||e.ancestorIds?.includes(t.id))return null;let n=!e.hideObservationNotes&&t.note,r=UI(t);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`tr`,{className:jn({[PI.criticalRow]:r}),children:[(0,L.jsx)(`td`,{rowSpan:n?2:1,children:(0,L.jsx)(Sj,{to:t,children:(0,L.jsx)(wP,{value:t.code})})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(VI,{value:t})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(HI,{value:t.referenceRange})}),(0,L.jsx)(`td`,{children:t.interpretation&&t.interpretation.length>0&&(0,L.jsx)(wP,{value:t.interpretation[0]})}),(0,L.jsx)(`td`,{children:t.category&&t.category.length>0&&(0,L.jsx)(L.Fragment,{children:t.category.map(e=>(0,L.jsx)(`div`,{children:(0,L.jsx)(wP,{value:e})},`category-${sw(e)}`))})}),(0,L.jsx)(`td`,{children:t.performer?.map(e=>(0,L.jsx)(IP,{value:e},e.reference))}),(0,L.jsx)(`td`,{children:t.status&&(0,L.jsx)(kI,{status:t.status})})]}),t.hasMember&&(0,L.jsx)(zI,{value:t.hasMember,ancestorIds:e.ancestorIds?[...e.ancestorIds,t.id]:[t.id],hideObservationNotes:e.hideObservationNotes}),n&&(0,L.jsx)(`tr`,{children:(0,L.jsx)(`td`,{colSpan:6,children:(0,L.jsx)(jI,{value:t.note})})})]})}function VI(e){let t=e.value;return(0,L.jsx)(L.Fragment,{children:lw(t)})}function HI(e){let t=e.value&&e.value.length>0&&e.value[0];return t?t.text?(0,L.jsx)(L.Fragment,{children:t.text}):(0,L.jsx)(PP,{value:t}):null}function UI(e){let t=e.interpretation?.[0]?.coding?.[0]?.code;return t===`AA`||t===`LL`||t===`HH`||t===`A`}var WI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Pointer=void 0,e.unescapeToken=t,e.escapeToken=n;function t(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}function n(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.Pointer=function(){function e(e){e===void 0&&(e=[``]),this.tokens=e}return e.fromJSON=function(n){var r=n.split(`/`).map(t);if(r[0]!==``)throw Error(`Invalid JSON Pointer: ${n}`);return new e(r)},e.prototype.toString=function(){return this.tokens.map(n).join(`/`)},e.prototype.evaluate=function(e){for(var t=null,n=``,r=e,i=1,a=this.tokens.length;i<a;i++)t=r,n=this.tokens[i],!(n==`__proto__`||n==`constructor`||n==`prototype`)&&(r=(t||{})[n]);return{parent:t,key:n,value:r}},e.prototype.get=function(e){return this.evaluate(e).value},e.prototype.set=function(e,t){var n=this.evaluate(e);n.parent&&(n.parent[n.key]=t)},e.prototype.push=function(e){this.tokens.push(e)},e.prototype.add=function(t){return new e(this.tokens.concat(String(t)))},e.prototype.parent=function(){return new e(this.tokens.length>1?this.tokens.slice(0,-1):[``])},e}()})),GI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.hasOwnProperty=void 0,e.objectType=t,e.clone=r,e.hasOwnProperty=Object.prototype.hasOwnProperty;function t(e){return e===void 0?`undefined`:e===null?`null`:Array.isArray(e)?`array`:typeof e}function n(e){return typeof e==`object`&&!!e}function r(t){if(!n(t))return t;if(t.constructor==Array){for(var i=t.length,a=Array(i),o=0;o<i;o++)a[o]=r(t[o]);return a}if(t.constructor==Date)return new Date(+t);var s={};for(var c in t)e.hasOwnProperty.call(t,c)&&(s[c]=r(t[c]));return s}})),KI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isDestructive=n,e.subtract=r,e.intersection=i,e.diffArrays=l,e.diffObjects=u,e.diffAny=d;var t=GI();function n(e){var t=e.op;return t===`remove`||t===`replace`||t===`copy`||t===`move`}function r(e,n){var r=[];for(var i in e)t.hasOwnProperty.call(e,i)&&e[i]!==void 0&&!(t.hasOwnProperty.call(n,i)&&n[i]!==void 0)&&r.push(i);return r}function i(e){for(var n=e.length,r={},i=0;i<n;i++){var a=e[i];for(var o in a)t.hasOwnProperty.call(a,o)&&a[o]!==void 0&&(r[o]=(r[o]||0)+1)}for(var o in r)r[o]<n&&delete r[o];return Object.keys(r)}function a(e,n){var r=[];for(var i in e)t.hasOwnProperty.call(e,i)&&e[i]!==void 0&&t.hasOwnProperty.call(n,i)&&n[i]!==void 0&&r.push(i);return r}function o(e){return e.op===`add`}function s(e){return e.op===`remove`}function c(e,t){return{operations:e.operations.concat(t),cost:e.cost+1}}function l(e,t,n,r){r===void 0&&(r=d);var i=Math.max(e.length,t.length),a=new Map([[0,{operations:[],cost:0}]]);function l(o,s){var u=o*i+s,d=a.get(u);if(d===void 0){if(o>0&&s>0&&!r(e[o-1],t[s-1],n.add(String(o-1))).length)d=l(o-1,s-1);else{var f=[];if(o>0){var p=l(o-1,s),m={op:`remove`,index:o-1};f.push(c(p,m))}if(s>0){var h=l(o,s-1),g={op:`add`,index:o-1,value:t[s-1]};f.push(c(h,g))}if(o>0&&s>0){var _=l(o-1,s-1),v={op:`replace`,index:o-1,original:e[o-1],value:t[s-1]};f.push(c(_,v))}d=f.sort(function(e,t){return e.cost-t.cost})[0]}a.set(u,d)}return d}var u=isNaN(e.length)||e.length<=0?0:e.length;return l(u,isNaN(t.length)||t.length<=0?0:t.length).operations.reduce(function(e,t){var i=e[0],a=e[1];if(o(t)){var c=t.index+1+a,l=c<u+a?String(c):`-`,d={op:t.op,path:n.add(l).toString(),value:t.value};return[i.concat(d),a+1]}else if(s(t)){var d={op:t.op,path:n.add(String(t.index+a)).toString()};return[i.concat(d),a-1]}else{var f=n.add(String(t.index+a)),p=r(t.original,t.value,f);return[i.concat.apply(i,p),a]}},[[],0])[0]}function u(e,t,n,i){i===void 0&&(i=d);var o=[];return r(e,t).forEach(function(e){o.push({op:`remove`,path:n.add(e).toString()})}),r(t,e).forEach(function(e){o.push({op:`add`,path:n.add(e).toString(),value:t[e]})}),a(e,t).forEach(function(r){o.push.apply(o,i(e[r],t[r],n.add(r)))}),o}function d(e,n,r,i){if(i===void 0&&(i=d),e===n)return[];var a=(0,t.objectType)(e),o=(0,t.objectType)(n);return a==`array`&&o==`array`?l(e,n,r,i):a==`object`&&o==`object`?u(e,n,r,i):[{op:`replace`,path:r.toString(),value:n}]}})),qI=o((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,`__esModule`,{value:!0}),e.InvalidOperationError=e.TestError=e.MissingError=void 0,e.add=l,e.remove=u,e.replace=d,e.move=f,e.copy=p,e.test=m,e.apply=g;var n=WI(),r=GI(),i=KI(),a=function(e){t(n,e);function n(t){var n=e.call(this,`Value required at path: ${t}`)||this;return n.path=t,n.name=`MissingError`,n}return n}(Error);e.MissingError=a;var o=function(e){t(n,e);function n(t,n){var r=e.call(this,`Test failed: ${t} != ${n}`)||this;return r.actual=t,r.expected=n,r.name=`TestError`,r}return n}(Error);e.TestError=o;function s(e,t,n){if(Array.isArray(e))if(t==`-`)e.push(n);else{var r=parseInt(t,10);e.splice(r,0,n)}else e[t]=n}function c(e,t){if(Array.isArray(e)){var n=parseInt(t,10);e.splice(n,1)}else delete e[t]}function l(e,t,i){var o=n.Pointer.fromJSON(t.path);if(i?.implicitArrayCreation&&o.tokens[o.tokens.length-1]===`-`){var c=o.parent().evaluate(e);c.value===void 0&&(0,r.objectType)(c.parent)===`object`&&(c.parent[c.key]=[])}var l=o.evaluate(e);return l.parent===void 0||i?.implicitArrayCreation&&l.key===`-`&&!Array.isArray(l.parent)?new a(t.path):(s(l.parent,l.key,(0,r.clone)(t.value)),null)}function u(e,t,r){var i=n.Pointer.fromJSON(t.path).evaluate(e);return i.value===void 0?new a(t.path):(c(i.parent,i.key),null)}function d(e,t,i){var o=n.Pointer.fromJSON(t.path).evaluate(e);if(o.parent===null)return new a(t.path);if(Array.isArray(o.parent)){if(parseInt(o.key,10)>=o.parent.length)return new a(t.path)}else if(o.value===void 0)return new a(t.path);return o.parent[o.key]=(0,r.clone)(t.value),null}function f(e,t,r){var i=n.Pointer.fromJSON(t.from).evaluate(e);if(i.value===void 0)return new a(t.from);var o=n.Pointer.fromJSON(t.path).evaluate(e);return o.parent===void 0?new a(t.path):(c(i.parent,i.key),s(o.parent,o.key,i.value),null)}function p(e,t,i){var o=n.Pointer.fromJSON(t.from).evaluate(e);if(o.value===void 0)return new a(t.from);var c=n.Pointer.fromJSON(t.path).evaluate(e);return c.parent===void 0?new a(t.path):(s(c.parent,c.key,(0,r.clone)(o.value)),null)}function m(e,t,r){var a=n.Pointer.fromJSON(t.path).evaluate(e);return(0,i.diffAny)(a.value,t.value,new n.Pointer).length?new o(a.value,t.value):null}var h=function(e){t(n,e);function n(t){var n=e.call(this,`Invalid operation: ${t.op}`)||this;return n.operation=t,n.name=`InvalidOperationError`,n}return n}(Error);e.InvalidOperationError=h;function g(e,t,n){switch(t.op){case`add`:return l(e,t,n);case`remove`:return u(e,t,n);case`replace`:return d(e,t,n);case`move`:return f(e,t,n);case`copy`:return p(e,t,n);case`test`:return m(e,t,n)}return new h(t)}})),JI=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Pointer=void 0,e.createPatch=i;var t=WI();Object.defineProperty(e,`Pointer`,{enumerable:!0,get:function(){return t.Pointer}}),qI();var n=KI();function r(e){function t(r,i,a){var o=e(r,i,a);return Array.isArray(o)?o:(0,n.diffAny)(r,i,a,t)}return t}function i(e,i,a){var o=new t.Pointer;return(a?r(a):n.diffAny)(e,i,o)}})),YI={removed:`_removed_el5zk_1`,added:`_added_el5zk_6`};function XI(e){let{name:t,path:n,property:r,originalValue:i,revisedValue:a}=e,o=!!r?.type?.find(e=>e.code===`Attachment`),[s,c]=(0,b.useState)(o);return(0,L.jsx)(L.Fragment,{children:o&&!s||!o?(0,L.jsx)(L.Fragment,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:t}),(0,L.jsx)(q.Td,{className:YI.removed,children:i&&(0,L.jsx)(UP,{path:n,property:r,propertyType:i.type,value:i.value,ignoreMissingValues:!0})}),(0,L.jsx)(q.Td,{className:YI.added,children:a&&(0,L.jsx)(UP,{path:n,property:r,propertyType:a.type,value:a.value,ignoreMissingValues:!0})})]})}):(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:t}),(0,L.jsx)(q.Td,{colSpan:2,style:{textAlign:`right`},children:(0,L.jsx)(W,{onClick:()=>c(e=>!e),variant:`light`,children:`Expand`})})]})})}var ZI={root:`_root_15xvr_1`,removed:`_removed_15xvr_20`,added:`_added_15xvr_25`},QI=JI();function $I(e){let t=Q(),{original:n,revised:r}=e,[i,a]=(0,b.useState)(!1);(0,b.useEffect)(()=>{t.requestSchema(e.original.resourceType).then(()=>a(!0)).catch(console.log)},[t,e.original.resourceType]);let o=(0,b.useMemo)(()=>{if(!i)return null;let e=[gS(n)],t=[gS(r)],a=[],o=eL((0,QI.createPatch)(n,r));for(let r of o){let i=r.path,o=tL(i),s=nL(n.resourceType,o),c=r.op===`add`?void 0:CT(o,e),l=r.op===`remove`?void 0:CT(o,t);a.push({key:`op-${r.op}-${r.path}`,name:`${DC(r.op)} ${o}`,path:s?.path??n.resourceType+`.`+o,property:s,originalValue:rL(s,c),revisedValue:rL(s,l)})}return a},[i,n,r]);return o?(0,L.jsxs)(q,{className:ZI.root,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{}),(0,L.jsx)(q.Th,{children:`Before`}),(0,L.jsx)(q.Th,{children:`After`})]})}),(0,L.jsx)(q.Tbody,{children:o.map(e=>{let{key:t,...n}=e;return(0,L.jsx)(XI,{...n},t)})})]}):null}function eL(e){let t=[];for(let n of e){let{op:r,path:i}=n;if(i.startsWith(`/meta/author`)||i.startsWith(`/meta/compartment`)||i.startsWith(`/meta/lastUpdated`)||i.startsWith(`/meta/versionId`))continue;let a=e.filter(e=>e.op===r&&e.path===i).length,o={op:r,path:i};a>1&&(r===`add`||r===`remove`)&&/\/[0-9-]+$/.test(i)&&(o.op=`replace`,o.path=i.replace(/\/[^/]+$/,``)),t.some(e=>e.op===o.op&&e.path===o.path)||t.push(o)}return t}function tL(e){let t=e.split(`/`).filter(Boolean),n=``;for(let e=0;e<t.length;e++){let r=t[e];r===`-`?n+=`.last()`:/^\d+$/.test(r)?n+=`[${r}]`:(e>0&&(n+=`.`),n+=r)}return n.endsWith(`.url`)&&(n=n.replace(/\.url$/,``)),n}function nL(e,t){try{return fO(e,{resourceType:`SearchParameter`,base:[e],code:e+`.`+t,expression:e+`.`+t})?.elementDefinitions?.[0]}catch(n){console.warn(`Failed to get element definition`,{resourceType:e,fhirPath:t,err:n});return}}function rL(e,t){return t&&{type:Array.isArray(t)?t[0].type:t.type,value:iL(t,!!e?.isArray)}}function iL(e,t){let n=jC(e).flatMap(e=>e.value);return t?n:n[0]}function aL(e){let{profileUrl:t}=e,n=Q(),r=n.getAccessPolicy(),i=BO(e.value),[a,o]=(0,b.useState)(!1);(0,b.useEffect)(()=>{if(i)if(t)n.requestProfileSchema(t,{expandProfile:!0}).then(()=>{tS(t)?o(!0):console.error(`Schema not found for ${t}`)}).catch(e=>{console.error(`Error in requestProfileSchema`,e)});else{let e=i.resourceType;n.requestSchema(e).then(()=>{o(!0)}).catch(console.error)}},[n,t,i]);let s=(0,b.useMemo)(()=>i&&_E(i,pE.READ,r),[r,i]);return!a||!i?null:(0,L.jsx)(qP,{path:i.resourceType,value:{type:i.resourceType,value:e.forceUseInput?e.value:i},profileUrl:t,ignoreMissingValues:e.ignoreMissingValues,accessPolicyResource:s})}var oL={item:`_item_5q6yx_1`,itemPadding:`_itemPadding_5q6yx_5`};function sL(e){return(0,L.jsx)(IN,{children:e.children})}function cL(e){let{resource:t,profile:n,padding:r,popupMenuItems:i,...a}=e,o=n??t.meta?.author,s=e.dateTime??t.meta?.lastUpdated;return(0,L.jsxs)(RN,{"data-testid":`timeline-item`,fill:!0,...a,children:[(0,L.jsxs)(H,{justify:`space-between`,gap:8,mx:`xs`,my:`sm`,children:[(0,L.jsx)(Oj,{value:o,link:!0,size:`md`}),(0,L.jsxs)(`div`,{style:{flex:1},children:[(0,L.jsx)(U,{size:`sm`,children:(0,L.jsx)(MI,{c:`inherit`,fw:500,value:o,link:!0})}),(0,L.jsxs)(U,{size:`xs`,children:[(0,L.jsx)(Sj,{c:`dimmed`,to:e.resource,children:ZC(s)}),(0,L.jsx)(U,{component:`span`,c:`dimmed`,mx:8,children:`·`}),(0,L.jsx)(Sj,{c:`dimmed`,to:e.resource,children:e.resource.resourceType})]})]}),i&&(0,L.jsxs)(G,{position:`bottom-end`,shadow:`md`,width:200,children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(hu,{color:`gray`,variant:`subtle`,radius:`xl`,"aria-label":`Actions for ${GS(e.resource)}`,children:(0,L.jsx)(yA,{})})}),i]})]}),(0,L.jsx)(pj,{children:(0,L.jsx)(`div`,{className:jn(oL.item,{[oL.itemPadding]:r}),children:e.children})})]})}function lL(e,t){e.sort((e,n)=>{let r=uL(e,t),i=uL(n,t);return r>i?1:r<i?-1:dL(e,t)-dL(n,t)})}function uL(e,t){if(!fL(e,t)){let t=e.priority;if(typeof t==`string`)return{stat:4,asap:3,urgent:2}[t]??0}return 0}function dL(e,t){if(!fL(e,t)){if(e.resourceType===`Communication`&&e.sent)return new Date(e.sent).getTime();if((e.resourceType===`DiagnosticReport`||e.resourceType===`Media`||e.resourceType===`Observation`)&&e.issued)return new Date(e.issued).getTime();if(e.resourceType===`DocumentReference`&&e.date)return new Date(e.date).getTime()}let n=e.meta?.lastUpdated;return n?new Date(n).getTime():0}function fL(e,t){return!!t&&e.resourceType===t.resourceType&&e.id===t.id}var pL={pinnedComment:`_pinnedComment_u08s5_1`};function mL(e){let t=Q(),n=t.getProfile(),r=(0,b.useRef)(null),i=BO(e.value),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)([]),[l,u]=(0,b.useState)(10),d=e.loadTimelineResources,f=(0,b.useRef)(s);(0,b.useLayoutEffect)(()=>{f.current=s});let p=(0,b.useCallback)(e=>{lL(e,i),e.reverse(),c(e)},[i]),m=(0,b.useCallback)(e=>{let t=[];for(let n of e){if(n.status!==`fulfilled`)continue;let e=n.value;if(e.type===`history`&&o(e),e.entry)for(let n of e.entry)t.push(n.resource)}p(t)},[p]),h=(0,b.useCallback)(e=>p([...f.current,e]),[p]),g=(0,b.useCallback)(()=>{let n,r;`resourceType`in e.value?(n=e.value.resourceType,r=e.value.id):[n,r]=e.value.reference?.split(`/`),d(t,n,r).then(m).catch(console.error)},[t,e.value,d,m]);(0,b.useEffect)(()=>g(),[g]);function _(r){!i||!e.createCommunication||t.createResource(e.createCommunication(i,n,r)).then(e=>h(e)).catch(console.error)}function v(r){!i||!e.createMedia||t.createResource(e.createMedia(i,n,r)).then(e=>h(e)).then(()=>Sb({id:`upload-notification`,color:`teal`,title:`Upload complete`,message:``,icon:(0,L.jsx)(sA,{size:16}),autoClose:2e3})).catch(e=>Sb({id:`upload-notification`,color:`red`,title:`Upload error`,message:Lx(e),icon:(0,L.jsx)(TA,{size:16}),autoClose:2e3}))}function y(){Y({id:`upload-notification`,loading:!0,title:`Initializing upload...`,message:`Please wait...`,autoClose:!1,withCloseButton:!1})}function x(e){Sb({id:`upload-notification`,loading:!0,title:`Uploading...`,message:xL(e),autoClose:!1,withCloseButton:!1})}function S(e){Sb({id:`upload-notification`,color:`red`,title:`Upload error`,message:Lx(e),icon:(0,L.jsx)(TA,{size:16}),autoClose:2e3})}if(!i)return(0,L.jsx)(Gp,{style:{width:`100%`,height:`100%`},children:(0,L.jsx)(su,{})});let C=s.filter(e=>e).slice(0,l);return(0,L.jsxs)(sL,{children:[e.createCommunication&&(0,L.jsx)(RN,{children:(0,L.jsx)(GM,{testid:`timeline-form`,onSubmit:e=>{_(e.text);let t=r.current;t&&(t.value=``,t.focus())},children:(0,L.jsxs)(H,{gap:`xs`,wrap:`nowrap`,style:{width:`100%`},children:[(0,L.jsx)(Oj,{value:n}),(0,L.jsx)(ab,{name:`text`,ref:r,placeholder:`Add comment`,style:{width:`100%`,maxWidth:300}}),(0,L.jsx)(hu,{type:`submit`,radius:`xl`,color:`blue`,variant:`filled`,children:(0,L.jsx)(RA,{size:16})}),(0,L.jsx)(MN,{securityContext:WS(i),onUpload:v,onUploadStart:y,onUploadProgress:x,onUploadError:S,children:e=>(0,L.jsx)(hu,{...e,radius:`xl`,color:`blue`,variant:`filled`,children:(0,L.jsx)(pA,{size:16})})})]})})}),C.map(t=>{let n=`${t.resourceType}/${t.id}/${t.meta?.versionId}`,r=e.getMenu?e.getMenu({primaryResource:i,currentResource:t,reloadTimeline:g}):void 0;if(t.resourceType===i.resourceType&&t.id===i.id)return(0,L.jsx)(hL,{history:a,resource:t,popupMenuItems:r},n);switch(t.resourceType){case`AuditEvent`:return(0,L.jsx)(yL,{resource:t,popupMenuItems:r},n);case`Communication`:return(0,L.jsx)(_L,{resource:t,popupMenuItems:r},n);case`DiagnosticReport`:return(0,L.jsx)(bL,{resource:t,popupMenuItems:r},n);case`Media`:return(0,L.jsx)(vL,{resource:t,popupMenuItems:r},n);default:return(0,L.jsx)(cL,{resource:t,padding:!0,children:(0,L.jsx)(aL,{value:t,ignoreMissingValues:!0})},n)}}),l<s.length&&(0,L.jsx)(H,{justify:`center`,pb:`lg`,children:(0,L.jsx)(W,{onClick:()=>u(l+10),children:`Show More`})})]})}function hL(e){let{history:t,resource:n,...r}=e,i=gL(t,n);return i?(0,L.jsx)(cL,{resource:n,padding:!0,...r,children:(0,L.jsx)($I,{original:i,revised:e.resource})}):(0,L.jsxs)(cL,{resource:n,padding:!0,...r,children:[(0,L.jsx)(`h3`,{children:`Created`}),(0,L.jsx)(aL,{value:n,ignoreMissingValues:!0,forceUseInput:!0})]})}function gL(e,t){let n=e.entry??[],r=n.findIndex(e=>e.resource?.meta?.versionId===t.meta?.versionId);if(!(r>=n.length-1))return n[r+1].resource}function _L(e){let t=!e.resource.priority||e.resource.priority===`routine`?void 0:pL.pinnedComment;return(0,L.jsx)(cL,{resource:e.resource,profile:e.resource.sender,dateTime:e.resource.sent,padding:!0,className:t,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(`p`,{children:e.resource.payload?.[0]?.contentString})})}function vL(e){let t=e.resource.content?.contentType,n=t&&!t.startsWith(`image/`)&&!t.startsWith(`video/`)&&t!==`application/pdf`;return(0,L.jsx)(cL,{resource:e.resource,padding:!!n,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(EN,{value:e.resource.content})})}function yL(e){return(0,L.jsx)(cL,{resource:e.resource,padding:!0,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(ll,{children:(0,L.jsx)(`pre`,{children:e.resource.outcomeDesc})})})}function bL(e){return(0,L.jsx)(cL,{resource:e.resource,padding:!0,popupMenuItems:e.popupMenuItems,children:(0,L.jsx)(FI,{value:e.resource})})}function xL(e){if(e.lengthComputable){let t=100*e.loaded/e.total;return`Uploaded: ${SL(e.loaded)} / ${SL(e.total)} ${t.toFixed(2)}%`}return`Uploaded: ${SL(e.loaded)}`}function SL(e){if(e===0)return`0.00 B`;let t=Math.floor(Math.log(e)/Math.log(1024));return(e/1024**t).toFixed(2)+` `+` KMGTP`.charAt(t)+`B`}function CL(e){let{resource:t,...n}=e;return(0,L.jsx)(mL,{value:t,loadTimelineResources:async(e,t,n)=>{let r=`${t}/${n}`;return Promise.allSettled([e.readHistory(t,n),e.search(`Task`,{_filter:`based-on eq ${r} or focus eq ${r} or subject eq ${r}`,_count:100})])},...n})}function wL(e){let{encounter:t,...n}=e;return(0,L.jsx)(mL,{value:t,loadTimelineResources:async(e,t,n)=>Promise.allSettled([e.readHistory(`Encounter`,n),e.search(`Communication`,`encounter=Encounter/`+n),e.search(`Media`,`encounter=Encounter/`+n)]),createCommunication:(e,t,n)=>({resourceType:`Communication`,status:`completed`,encounter:WS(e),subject:e.subject,sender:WS(t),sent:new Date().toISOString(),payload:[{contentString:n}]}),createMedia:(e,t,n)=>({resourceType:`Media`,status:`completed`,encounter:WS(e),subject:e.subject,operator:WS(t),issued:new Date().toISOString(),content:n}),...n})}function TL(e){let t;try{t=ST(e.path,e.resource)}catch(e){return console.warn(`FhirPathDisplay:`,e),null}if(t.length>1)throw Error(`Component "path" for "FhirPathDisplay" must resolve to a single element. \
|
|
205
205
|
Received ${t.length} elements \
|
|
206
|
-
[${JSON.stringify(t,null,2)}]`);return(0,L.jsx)(VP,{value:t[0]||``,propertyType:e.propertyType})}function DL(e){return(0,L.jsxs)(ng,{title:`Export`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:e.onCancel,children:[(0,L.jsxs)(B,{display:`flex`,style:{justifyContent:`space-between`},children:[e.exportCsv&&(0,L.jsx)(OL,{text:`CSV`,exportLogic:e.exportCsv,onCancel:e.onCancel}),e.exportTransactionBundle&&(0,L.jsx)(OL,{text:`Transaction Bundle`,exportLogic:e.exportTransactionBundle,onCancel:e.onCancel})]}),(0,L.jsx)(U,{style:{marginTop:`10px`,marginLeft:`2px`},children:`Limited to 1000 records`})]})}function OL(e){return(0,L.jsx)(W,{onClick:()=>{e.exportLogic(),e.onCancel()},children:`Export as ${e.text}`})}var kL={string:[Z.EQUALS,Z.NOT,Z.CONTAINS,Z.EXACT],fulltext:[Z.EQUALS,Z.NOT,Z.CONTAINS,Z.EXACT],token:[Z.EQUALS,Z.NOT,Z.TEXT],reference:[Z.EQUALS,Z.NOT],numeric:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS],quantity:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS],date:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS,Z.STARTS_AFTER,Z.ENDS_BEFORE,Z.APPROXIMATELY],datetime:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS,Z.STARTS_AFTER,Z.ENDS_BEFORE,Z.APPROXIMATELY],uri:[Z.EQUALS,Z.NOT,Z.ABOVE,Z.BELOW]},AL={eq:`equals`,ne:`not equals`,gt:`greater than`,lt:`less than`,ge:`greater than or equals`,le:`less than or equals`,sa:`starts after`,eb:`ends before`,ap:`approximately`,sw:`starts with`,contains:`contains`,exact:`exact`,text:`text`,not:`not`,above:`above`,below:`below`,in:`in`,"not-in":`not in`,"of-type":`of type`,missing:`missing`,present:`present`,identifier:`identifier`,iterate:`iterate`};function jL(e,t){return{...e,filters:t,offset:0,name:void 0}}function ML(e,t){return jL(e,(e.filters??[]).filter(e=>e.code!==t))}function NL(e,t,n,r,i){i&&(e=ML(e,t));let a=[];return e.filters&&a.push(...e.filters),a.push({code:t,operator:n,value:r??``}),jL(e,a)}function PL(e,t){if(!e.filters)return e;let n=[...e.filters];return n.splice(t,1),{...e,filters:n,name:void 0}}function FL(e,t){return RL(e,t,-1)}function IL(e,t){return RL(e,t,0)}function LL(e,t){return RL(e,t,1)}function RL(e,t,n){let r=new Date;r.setDate(r.getDate()+n),r.setHours(0,0,0,0);let i=new Date(r.getTime());return i.setDate(i.getDate()+1),i.setTime(i.getTime()-1),GL(e,t,r,i)}function zL(e,t){let n=new Date;return GL(e,t,n,new Date(n.getTime()+1440*60*1e3))}function BL(e,t){return UL(e,t,-1)}function VL(e,t){return UL(e,t,0)}function HL(e,t){return UL(e,t,1)}function UL(e,t,n){let r=new Date;r.setMonth(r.getMonth()+n),r.setDate(1),r.setHours(0,0,0,0);let i=new Date(r.getTime());return i.setMonth(i.getMonth()+1),i.setDate(1),i.setHours(0,0,0,0),i.setTime(i.getTime()-1),GL(e,t,r,i)}function WL(e,t){let n=new Date;return n.setMonth(0),n.setDate(1),n.setHours(0,0,0,0),GL(e,t,n,new Date)}function GL(e,t,n,r){return e=ML(e,t),e=KL(e,t,Z.GREATER_THAN_OR_EQUALS,n),e=KL(e,t,Z.LESS_THAN_OR_EQUALS,r),e}function KL(e,t,n,r){return NL(e,t,n,r.toISOString())}function qL(e,t,n=!0){return NL(e,t,Z.MISSING,n.toString())}function JL(e,t){return e.offset===t?e:{...e,offset:t,name:void 0}}function YL(e,t){let n=e.count??20;return JL(e,(t-1)*n)}function XL(e,t,n){return t===ZL(e)&&n!==void 0&&n===QL(e)?e:{...e,sortRules:[{code:t,descending:!!n}],name:void 0}}function ZL(e){let t=e.sortRules;if(!t||t.length===0)return;let n=t[0].code;return n.startsWith(`-`)?n.substr(1):n}function QL(e){let t=e.sortRules;return!t||t.length===0?!1:!!t[0].descending}function $L(e){return kL[e.type]}function eR(e){return AL[e]??``}function tR(e){let t=e;return t.includes(`.`)&&(t=t.split(`.`).pop()),t===`versionId`?`Version ID`:(t=t.replace(`[x]`,``),t=t.replaceAll(/([A-Z])/g,` $1`),t=t.replaceAll(/[-_]/g,` `),t=t.replaceAll(/\s+/g,` `),t=t.trim(),t.toLowerCase()===`id`?`ID`:t.split(/\s/).map(EC).join(` `))}function nR(e,t){let n=t.name;return n===`id`?(0,L.jsx)(bj,{to:`/${e.resourceType}/${e.id}`,children:e.id}):n===`meta.versionId`?e.meta?.versionId:n===`_lastUpdated`?XC(e.meta?.lastUpdated):`${e.resourceType}.${t.name}`===t.elementDefinition?.path?rR(e,t.elementDefinition):t.searchParams?.length===1&&t.name===t.searchParams[0].code?iR(e,t.searchParams[0]):null}function rR(e,t){let n=t.path?.split(`.`)?.pop()?.replaceAll(`[x]`,``)??``,[r,i]=EP({type:e.resourceType,value:e},n);return r?(0,L.jsx)(VP,{path:t.path,property:t,propertyType:i,value:r,maxWidth:200,ignoreMissingValues:!0,link:!1}):null}function iR(e,t){let n=ST(t.expression,[{type:e.resourceType,value:e}]);return!n||n.length===0?null:(0,L.jsx)(L.Fragment,{children:n.map((e,t)=>(0,L.jsx)(VP,{propertyType:e.type,value:e.value,maxWidth:200,ignoreMissingValues:!0,link:!1},`${t}-${n.length}`))})}function aR(e){let t=(0,b.useRef)(!1),[n,r]=(0,b.useState)({search:JSON.parse(nC(e.search))}),[i,a]=(0,b.useState)(!1);(0,b.useEffect)(()=>{r({search:e.search})},[e.search]);let o=(0,b.useMemo)(()=>{if(!e.visible)return[];let t=e.search.resourceType;return FC(oR($x(t),vw(t))).map(e=>({value:e,label:tR(e)}))},[e.visible,e.search.resourceType]);function s(e){r({search:{...n.search,fields:e}})}return(0,L.jsx)(ng,{title:`Fields`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:()=>{e.onCancel()},size:`auto`,withOverlay:!0,closeOnClickOutside:!1,overlayProps:{onMouseDownCapture:()=>{t.current=i},onClick:()=>{t.current||e.onCancel(),t.current=!1},children:(0,L.jsx)(`div`,{"data-testid":`overlay-child`})},children:(0,L.jsxs)(K,{children:[(0,L.jsx)(xg,{style:{width:550},placeholder:`Select fields to display`,data:o,value:n.search.fields??[],onChange:s,onDropdownOpen:()=>a(!0),onDropdownClose:()=>a(!1),maxDropdownHeight:`250px`,clearButtonProps:{"aria-label":`Clear selection`},clearable:!0,searchable:!0}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{onClick:()=>e.onOk(n.search),children:`OK`})})]})})}function oR(e,t){let n=[],r=new Set,i=new Set;for(let t of Object.keys(e.elements))n.push(t),r.add(t.toLowerCase()),i.add(tR(t));if(t)for(let e of Object.keys(t)){let t=tR(e);!r.has(e)&&!i.has(t)&&(n.push(e),r.add(e),i.add(t))}return n}function sR(e){let t=dO(e.resourceType,e.searchParam),n=e.name??`filter-value`;switch(t.type){case uO.REFERENCE:return(0,L.jsx)(DF,{name:n,defaultValue:e.defaultValue?{reference:e.defaultValue}:void 0,targetTypes:e.searchParam.target,autoFocus:e.autoFocus,onChange:t=>{t?e.onChange(t.reference):e.onChange(``)}});case uO.BOOLEAN:return(0,L.jsx)(cp,{name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultChecked:e.defaultValue===`true`,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.checked.toString())});case uO.DATE:return(0,L.jsx)(ab,{type:`date`,name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.value)});case uO.DATETIME:return(0,L.jsx)(lF,{name:n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:e.onChange});case uO.NUMBER:return(0,L.jsx)(ab,{type:`number`,name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.value)});case uO.QUANTITY:return(0,L.jsx)(_F,{name:n,path:``,defaultValue:cR(e.defaultValue),autoFocus:e.autoFocus,onChange:t=>{t?e.onChange(`${t.value}`):e.onChange(``)}});default:return(0,L.jsx)(ab,{name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.value),placeholder:`Search value`})}}function cR(e){if(e){let[t,n,r]=e.split(`|`);if(t)return{value:Number.parseFloat(t),system:n,unit:r}}}function lR(e){let[t,n]=(0,b.useState)(hC(e.search)),r=(0,b.useRef)(t);r.current=t,(0,b.useEffect)(()=>{n(hC(e.search))},[e.search]);function i(e){n(NL(r.current,e.code,e.operator,e.value))}let a=e.search.resourceType,o=vw(a)??{},s=t.filters||[];return(0,L.jsx)(ng,{title:`Filters`,closeButtonProps:{"aria-label":`Close`},size:900,opened:e.visible,onClose:e.onCancel,children:(0,L.jsxs)(UM,{onSubmit:()=>e.onOk(r.current),children:[(0,L.jsxs)(`div`,{children:[(0,L.jsxs)(`table`,{children:[(0,L.jsxs)(`colgroup`,{children:[(0,L.jsx)(`col`,{style:{width:200}}),(0,L.jsx)(`col`,{style:{width:200}}),(0,L.jsx)(`col`,{style:{width:380}}),(0,L.jsx)(`col`,{style:{width:40}})]}),(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Field`}),(0,L.jsx)(`th`,{children:`Operation`}),(0,L.jsx)(`th`,{children:`Value`}),(0,L.jsx)(`th`,{})]})}),(0,L.jsx)(`tbody`,{children:s.map((e,t)=>(0,L.jsx)(uR,{id:`filter-${t}-row`,resourceType:a,searchParams:o,value:e,onChange:e=>{let i=[...s];i[t]=e,n(jL(r.current,i))},onDelete:()=>n(PL(r.current,t))},`filter-${t}-row`))})]}),(0,L.jsx)(PF,{propertyDisplayName:`Filter`,onClick:()=>i({})})]}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(WM,{children:`OK`})})]})})}function uR(e){let t=e.value,n=(0,b.useRef)(t);n.current=t;function r(t){n.current.code=t,n.current.operator=Z.EQUALS,n.current.value=``,e.onChange(n.current)}function i(t){n.current.operator=t,n.current.value=``,e.onChange(n.current)}function a(t){n.current.value=t,e.onChange(n.current)}let o=e.searchParams[t.code],s=o&&$L(o);return(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(Tg,{"data-testid":`${e.id}-filter-field`,defaultValue:e.value.code,onChange:e=>r(e.currentTarget.value),data:[``,...Object.keys(e.searchParams).map(e=>({value:e,label:tR(e)}))]})}),(0,L.jsx)(`td`,{children:s&&(0,L.jsx)(Tg,{"data-testid":`${e.id}-filter-operation`,defaultValue:t.operator,onChange:e=>i(e.currentTarget.value),data:[``,...s.map(e=>({value:e,label:eR(e)}))]},`${e.id}-filter-value-${e.value.code}`)}),(0,L.jsx)(`td`,{children:o&&t.operator&&(0,L.jsx)(sR,{name:`${e.id}-filter-value`,resourceType:e.resourceType,searchParam:o,defaultValue:t.value,onChange:a},`${e.id}-filter-value-${e.value.code}-${e.value.operator}`)}),(0,L.jsx)(`td`,{children:e.onDelete&&(0,L.jsx)(hu,{variant:`outline`,color:`red`,radius:`xl`,"aria-label":`Delete filter`,onClick:e.onDelete,children:(0,L.jsx)(lj,{style:{width:`70%`,height:`70%`},stroke:1.5})})})]})}function dR(e){let[t,n]=(0,b.useState)(e.defaultValue??``);if(!e.searchParam||!e.filter)return null;function r(){e.onOk({...e.filter,value:t})}return(0,L.jsx)(ng,{title:e.title,size:`xl`,opened:e.visible,onClose:e.onCancel,children:(0,L.jsx)(UM,{onSubmit:r,children:(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:10,children:(0,L.jsx)(sR,{resourceType:e.resourceType,searchParam:e.searchParam,defaultValue:t,autoFocus:!0,onChange:n})}),(0,L.jsx)(wm.Col,{span:2,children:(0,L.jsx)(W,{onClick:r,fullWidth:!0,children:`OK`})})]})})})}function fR(e){let{resourceType:t,filter:n}=e,r=Ow.types[t].searchParams?.[n.code];if(r){if(r.type===`reference`&&(n.operator===Z.EQUALS||n.operator===Z.NOT_EQUALS))return(0,L.jsx)(NI,{value:{reference:n.value}});let e=dO(t,r);if(n.code===`_lastUpdated`||e.type===uO.DATETIME)return(0,L.jsx)(L.Fragment,{children:XC(n.value)})}return(0,L.jsx)(L.Fragment,{children:n.value})}function pR(e){if(!e.searchParams)return null;function t(t,n){i(XL(e.search,t.code,n))}function n(t){i(ML(e.search,t.code))}function r(t,n){e.onPrompt(t,{code:t.code,operator:n,value:``})}function i(t){e.onChange(t)}return e.searchParams.length===1?(0,L.jsx)(mR,{search:e.search,searchParam:e.searchParams[0],onSort:t,onPrompt:r,onChange:i,onClear:n}):(0,L.jsx)(G.Dropdown,{children:e.searchParams.map(e=>(0,L.jsx)(G.Item,{children:tR(e.code)},e.code))})}function mR(e){switch(e.searchParam.type){case`date`:return(0,L.jsx)(hR,{...e});case`number`:case`quantity`:return(0,L.jsx)(gR,{...e});case`reference`:return(0,L.jsx)(_R,{...e});case`string`:return(0,L.jsx)(vR,{...e});case`token`:return(0,L.jsx)(yR,{...e});case`uri`:return(0,L.jsx)(bR,{...e});default:return(0,L.jsxs)(L.Fragment,{children:[`Unknown search param type: `,e.searchParam.type]})}}function hR(e){let{searchParam:t}=e,n=t.code;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(QA,{size:14}),onClick:()=>e.onSort(t,!1),children:`Sort Oldest to Newest`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)($A,{size:14}),onClick:()=>e.onSort(t,!0),children:`Sort Newest to Oldest`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(yA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT_EQUALS),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(FA,{size:14}),onClick:()=>e.onPrompt(t,Z.ENDS_BEFORE),children:`Before...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(PA,{size:14}),onClick:()=>e.onPrompt(t,Z.STARTS_AFTER),children:`After...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(Qk,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Between...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(LL(e.search,n)),children:`Tomorrow`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(IL(e.search,n)),children:`Today`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(FL(e.search,n)),children:`Yesterday`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(zL(e.search,n)),children:`Next 24 Hours`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(HL(e.search,n)),children:`Next Month`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(VL(e.search,n)),children:`This Month`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(BL(e.search,n)),children:`Last Month`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onChange(WL(e.search,n)),children:`Year to date`}),(0,L.jsx)(xR,{...e})]})}function gR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(QA,{size:14}),onClick:()=>e.onSort(t,!1),children:`Sort Smallest to Largest`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)($A,{size:14}),onClick:()=>e.onSort(t,!0),children:`Sort Largest to Smallest`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(yA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT_EQUALS),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(PA,{size:14}),onClick:()=>e.onPrompt(t,Z.GREATER_THAN),children:`Greater than...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ZA,{size:14}),onClick:()=>e.onPrompt(t,Z.GREATER_THAN_OR_EQUALS),children:`Greater than or equal to...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(FA,{size:14}),onClick:()=>e.onPrompt(t,Z.LESS_THAN),children:`Less than...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ZA,{size:14}),onClick:()=>e.onPrompt(t,Z.LESS_THAN_OR_EQUALS),children:`Less than or equal to...`}),(0,L.jsx)(xR,{...e})]})}function _R(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(yA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(xR,{...e})]})}function vR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(QA,{size:14}),onClick:()=>e.onSort(t,!1),children:`Sort A to Z`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)($A,{size:14}),onClick:()=>e.onSort(t,!0),children:`Sort Z to A`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(yA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(nA,{size:14}),onClick:()=>e.onPrompt(t,Z.CONTAINS),children:`Contains...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(tA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Does not contain...`}),(0,L.jsx)(xR,{...e})]})}function yR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(yA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>e.onPrompt(t,Z.TEXT),children:`Text contains...`}),(0,L.jsx)(xR,{...e})]})}function bR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(yA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(xR,{...e})]})}function xR(e){let{searchParam:t}=e,n=t.code;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(Yk,{size:14}),onClick:()=>e.onChange(qL(e.search,n)),children:`Missing`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(Jk,{size:14}),onClick:()=>e.onChange(qL(e.search,n,!1)),children:`Not missing`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(lj,{size:14}),onClick:()=>e.onClear(t),children:`Clear filters`})]})}function SR(e){switch(e){case`next`:return{"aria-label":`Next page`};case`previous`:return{"aria-label":`Previous page`};case`first`:return{"aria-label":`First page`};case`last`:return{"aria-label":`Last page`};default:return{}}}var CR={root:`_root_vlout_1`,table:`_table_vlout_8`,tr:`_tr_vlout_12`,th:`_th_vlout_18`,control:`_control_vlout_22`,icon:`_icon_vlout_31`};function wR(e){let t=e.resourceType,n=[];for(let r of e.fields||[`id`,`_lastUpdated`])n.push(TR(t,r));return n}function TR(e,t){if(t===`_lastUpdated`)return{name:`_lastUpdated`,searchParams:[{resourceType:`SearchParameter`,base:[`Resource`],code:`_lastUpdated`,name:`_lastUpdated`,type:`date`,expression:`Resource.meta.lastUpdated`}]};if(t===`meta.versionId`)return{name:`meta.versionId`,searchParams:[{resourceType:`SearchParameter`,base:[`Resource`],code:`_versionId`,name:`_versionId`,type:`token`,expression:`Resource.meta.versionId`}]};let n=ww(e,t),r=yw(e,t.toLowerCase());if(n&&r)return{name:t,elementDefinition:n,searchParams:[r]};if(n){let r=vw(e),i;if(r){let n=RegExp(`${e}\\.${t.replaceAll(`[x]`,``)}([^\\w-]|$)`);i=Object.values(r).filter(e=>!!e.expression&&n.test(e?.expression)),i.length===0&&(i=void 0)}return{name:t,elementDefinition:n,searchParams:i}}return r?{name:t,elementDefinition:dO(e,r).elementDefinitions?.[0],searchParams:[r]}:{name:t}}var ER=class extends Event{definition;constructor(e){super(`change`),this.definition=e}},DR=class extends Event{response;constructor(e){super(`load`),this.response=e}},OR=class extends Event{resource;browserEvent;constructor(e,t){super(`click`),this.resource=e,this.browserEvent=t}};function kR(e){let t=Q(),[n,r]=(0,b.useState)(),{search:i,onLoad:a}=e,[o,s]=(0,b.useState)(i);lC(i,o)||s(i);let[c,l]=(0,b.useState)({selected:{},fieldEditorVisible:!1,filterEditorVisible:!1,exportDialogVisible:!1,filterDialogVisible:!1}),u=(0,b.useRef)(c);u.current=c;let d=o.total??`accurate`,f=(0,b.useCallback)(e=>{r(void 0),t.requestSchema(o.resourceType).then(()=>t.search(o.resourceType,KT({...o,total:d,fields:void 0}),e)).then(e=>{l({...u.current,searchResponse:e}),a&&a(new DR(e))}).catch(e=>{l({...u.current,searchResponse:void 0}),r(Ix(e))})},[t,o,d,a]),p=(0,b.useCallback)(()=>{l({...u.current,searchResponse:void 0}),f({cache:`reload`})},[f]);(0,b.useEffect)(()=>{f()},[f]);function m(e,t){e.stopPropagation();let n=e.target.checked,r={...u.current.selected};n?r[t]=!0:delete r[t],l({...u.current,selected:r})}function h(e){e.stopPropagation();let t=e.target.checked,n={},r=u.current.searchResponse;t&&r?.entry&&r.entry.forEach(e=>{e.resource?.id&&(n[e.resource.id]=!0)}),l({...u.current,selected:n})}function g(){let e=u.current;if(!e.searchResponse?.entry||e.searchResponse.entry.length===0)return!1;for(let t of e.searchResponse.entry)if(t.resource?.id&&!e.selected[t.resource.id])return!1;return!0}function _(t){e.onChange&&e.onChange(new ER(t))}function v(t,n){if(gj(t.target)||t.button===2)return;mj(t);let r=hj(t);!r&&e.onClick&&e.onClick(new OR(n,t)),r&&e.onAuxClick&&e.onAuxClick(new OR(n,t))}function y(){return!!(e.onExport??e.onExportCsv??e.onExportTransactionBundle)}if(n)return(0,L.jsx)(GN,{outcome:n});if(!Zx(o.resourceType))return(0,L.jsx)(Gp,{style:{width:`100%`,height:`100%`},children:(0,L.jsx)(su,{})});let x=e.checkboxesEnabled,S=wR(o),C=o.resourceType,w=c.searchResponse,T=(w?.entry)?.map(e=>e.resource),E=`subtle`,D=`gray`,O=window.innerWidth<768;return(0,L.jsxs)(`div`,{className:CR.root,"data-testid":`search-control`,children:[!e.hideToolbar&&(0,L.jsxs)(H,{justify:`space-between`,mb:`xl`,children:[(0,L.jsxs)(H,{gap:2,children:[(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(fA,{size:16}),onClick:()=>l({...u.current,fieldEditorVisible:!0,dialogOpenTime:Date.now()}),children:`Fields`}),(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(TA,{size:16}),onClick:()=>l({...u.current,filterEditorVisible:!0,dialogOpenTime:Date.now()}),children:`Filters`}),e.onNew&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(wA,{size:16}),onClick:e.onNew,children:`New...`}),!O&&y()&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(rj,{size:16}),onClick:e.onExport?e.onExport:()=>l({...u.current,exportDialogVisible:!0,dialogOpenTime:Date.now()}),children:`Export...`}),!O&&e.onDelete&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(aj,{size:16}),onClick:()=>e.onDelete(Object.keys(c.selected)),children:`Delete...`}),!O&&e.onBulk&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(Zk,{size:16}),onClick:()=>e.onBulk(Object.keys(c.selected)),children:`Bulk...`})]}),(0,L.jsxs)(H,{gap:2,children:[w&&(0,L.jsxs)(U,{size:`xs`,c:`dimmed`,"data-testid":`count-display`,children:[NR(o,w).toLocaleString(),`-`,PR(o,w).toLocaleString(),w.total!==void 0&&` of ${o.total===`estimate`?`~`:``}${w.total?.toLocaleString()}`]}),(0,L.jsx)(hu,{variant:E,color:D,title:`Refresh`,onClick:p,children:(0,L.jsx)(KA,{size:16})})]})]}),(0,L.jsxs)(q,{className:CR.table,children:[(0,L.jsxs)(q.Thead,{children:[(0,L.jsxs)(q.Tr,{children:[x&&(0,L.jsx)(q.Th,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"aria-label":`all-checkbox`,"data-testid":`all-checkbox`,checked:g(),onChange:e=>h(e)})}),S.map(e=>(0,L.jsx)(q.Th,{children:(0,L.jsxs)(G,{shadow:`md`,width:240,position:`bottom-end`,children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(pl,{className:CR.control,p:2,children:(0,L.jsxs)(H,{justify:`space-between`,wrap:`nowrap`,children:[(0,L.jsx)(U,{fw:500,children:tR(e.name)}),(0,L.jsx)(Gp,{className:CR.icon,children:(0,L.jsx)(Wk,{size:14,stroke:1.5})})]})})}),(0,L.jsx)(pR,{search:o,searchParams:e.searchParams,onPrompt:(e,t)=>{l({...u.current,filterDialogVisible:!0,filterDialogSearchParam:e,filterDialogFilter:t,dialogOpenTime:Date.now()})},onChange:e=>{_(e)}})]})},e.name))]}),!e.hideFilters&&(0,L.jsxs)(q.Tr,{children:[x&&(0,L.jsx)(q.Th,{}),S.map(e=>(0,L.jsx)(q.Th,{children:e.searchParams&&(0,L.jsx)(AR,{resourceType:C,searchParams:e.searchParams,filters:o.filters})},e.name))]})]}),(0,L.jsx)(q.Tbody,{children:T?.map(e=>e&&(0,L.jsxs)(q.Tr,{className:CR.tr,"data-testid":`search-control-row`,onClick:t=>v(t,e),onAuxClick:t=>v(t,e),children:[x&&(0,L.jsx)(q.Td,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"data-testid":`row-checkbox`,"aria-label":`Checkbox for ${e.id}`,checked:!!c.selected[e.id],onChange:t=>m(t,e.id)})}),S.map(t=>(0,L.jsx)(q.Td,{children:nR(e,t)},t.name))]},e.id))})]}),!T?.length&&(0,L.jsx)(PN,{children:(0,L.jsx)(Gp,{style:{height:150},children:(0,L.jsx)(U,{size:`xl`,c:`dimmed`,children:`No results`})})}),w&&(0,L.jsx)(Gp,{m:`md`,p:`md`,children:(0,L.jsx)(nv,{value:jR(o),total:MR(o,w),onChange:e=>_(YL(o,e)),getControlProps:SR})}),(0,L.jsx)(aR,{search:o,visible:u.current.fieldEditorVisible,onOk:e=>{_(e),l({...u.current,fieldEditorVisible:!1})},onCancel:()=>{l({...u.current,fieldEditorVisible:!1})}},`search-field-editor-${c.dialogOpenTime}`),(0,L.jsx)(lR,{search:o,visible:u.current.filterEditorVisible,onOk:e=>{_(e),l({...u.current,filterEditorVisible:!1})},onCancel:()=>{l({...u.current,filterEditorVisible:!1})}},`search-filter-editor-${c.dialogOpenTime}`),(0,L.jsx)(DL,{visible:u.current.exportDialogVisible,exportCsv:e.onExportCsv,exportTransactionBundle:e.onExportTransactionBundle,onCancel:()=>{l({...u.current,exportDialogVisible:!1})}},`search-export-dialog-${c.dialogOpenTime}`),(0,L.jsx)(dR,{visible:u.current.filterDialogVisible,title:c.filterDialogSearchParam?.code?tR(c.filterDialogSearchParam.code):``,resourceType:C,searchParam:c.filterDialogSearchParam,filter:c.filterDialogFilter,defaultValue:``,onOk:e=>{_(NL(o,e.code,e.operator,e.value)),l({...u.current,filterDialogVisible:!1})},onCancel:()=>{l({...u.current,filterDialogVisible:!1})}},`search-filter-dialog-${c.dialogOpenTime}`)]})}function AR(e){let t=(e.filters??[]).filter(t=>e.searchParams.find(e=>e.code===t.code));return t.length===0?(0,L.jsx)(`span`,{children:`no filters`}):(0,L.jsx)(L.Fragment,{children:t.map(t=>(0,L.jsxs)(`div`,{children:[eR(t.operator),`\xA0`,(0,L.jsx)(fR,{resourceType:e.resourceType,filter:t})]},`filter-${t.code}-${t.operator}-${t.value}`))})}function jR(e){return Math.floor((e.offset??0)/(e.count??20))+1}function MR(e,t){let n=e.count??20,r=FR(e,t);return Math.ceil(r/n)}function NR(e,t){return Math.min(FR(e,t),(e.offset??0)+1)}function PR(e,t){return Math.max(NR(e,t)+(t.entry?.length??0)-1,0)}function FR(e,t){let n=t.total;return n===void 0&&(n=(e.offset??0)+(t.entry?.length??0)+(t.link?.some(e=>e.relation===`next`)?1:0)),n}function IR(e){let t=Q(),[n,r]=(0,b.useState)(!1),[i,a]=(0,b.useState)(),{query:o,fields:s}=e,[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)({}),f=(0,b.useRef)(c);f.current=c;let p=(0,b.useRef)({});p.current=u,(0,b.useEffect)(()=>{a(void 0),t.graphql(o).then(l).catch(e=>a(Ix(e)))},[t,o]);function m(e,t){e.stopPropagation();let n=e.target.checked,r={...p.current};n?r[t]=!0:delete r[t],d(r)}function h(e){e.stopPropagation();let t=e.target.checked,n={},r=f.current?.data.ResourceList;t&&r&&r.forEach(e=>{e.id&&(n[e.id]=!0)}),d(n)}function g(){let e=f.current?.data.ResourceList;if(!e||e.length===0)return!1;for(let t of e)if(t.id&&!p.current[t.id])return!1;return!0}function _(t,n){gj(t.target)||(mj(t),t.button!==1&&e.onClick&&e.onClick(new OR(n,t)),t.button===1&&e.onAuxClick&&e.onAuxClick(new OR(n,t)))}if((0,b.useEffect)(()=>{t.requestSchema(e.resourceType).then(()=>r(!0)).catch(console.log)},[t,e.resourceType]),!n)return(0,L.jsx)(su,{});let v=e.checkboxesEnabled;return(0,L.jsxs)(`div`,{onContextMenu:e=>mj(e),"data-testid":`search-control`,children:[(0,L.jsxs)(q,{children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[v&&(0,L.jsx)(q.Th,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"aria-label":`all-checkbox`,"data-testid":`all-checkbox`,checked:g(),onChange:e=>h(e)})}),s.map(e=>(0,L.jsx)(q.Th,{children:e.name},e.name))]})}),(0,L.jsx)(q.Tbody,{children:c?.data.ResourceList.map(e=>e&&(0,L.jsxs)(q.Tr,{"data-testid":`search-control-row`,onClick:t=>_(t,e),onAuxClick:t=>_(t,e),children:[v&&(0,L.jsx)(q.Td,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"data-testid":`row-checkbox`,"aria-label":`Checkbox for ${e.id}`,checked:!!u[e.id],onChange:t=>m(t,e.id)})}),s.map(t=>(0,L.jsx)(q.Td,{children:(0,L.jsx)(EL,{propertyType:t.propertyType,path:t.fhirPath,resource:e})},t.name))]},e.id))})]}),c?.data.ResourceList.length===0&&(0,L.jsx)(`div`,{"data-testid":`empty-search`,children:`No results`}),i&&(0,L.jsx)(`div`,{"data-testid":`search-error`,children:(0,L.jsx)(`pre`,{style:{textAlign:`left`},children:JSON.stringify(i,void 0,2)})}),e.onBulk&&(0,L.jsx)(W,{onClick:()=>e.onBulk(Object.keys(p.current)),children:`Bulk...`})]})}var LR=(0,b.memo)(IR),RR={root:`_root_1fbwr_1`,entry:`_entry_1fbwr_8`,key:`_key_1fbwr_13`,value:`_value_1fbwr_20`};function zR(e){return(0,L.jsx)(ll,{children:(0,L.jsx)(`div`,{className:RR.root,children:e.children})})}zR.Entry=function(e){return(0,L.jsx)(`div`,{className:RR.entry,children:e.children})},zR.Key=function(e){return(0,L.jsx)(`div`,{className:RR.key,children:e.children})},zR.Value=function(e){return(0,L.jsx)(`div`,{className:RR.value,children:e.children})};var BR={list:`_list_y4z6g_1`,link:`_link_y4z6g_6`};function VR(e){let{baseUrl:t,tabs:n,children:r,...i}=e,a=HR(n),o=kO(),[s,c]=(0,b.useState)(()=>{let e=xE.getPathname().split(`/`).pop();return e&&a.some(t=>t.value===e)?e:a[0].value});function l(e){e||=a[0].value,c(e),o(`${t}/${e}`)}return(0,L.jsxs)(ib,{value:s.toLowerCase(),onChange:l,...i,children:[(0,L.jsx)(ib.List,{className:BR.list,children:a.map(e=>(0,L.jsx)(ib.Tab,{value:e.value,children:(0,L.jsx)(Nd,{className:BR.link,href:`${t}/${e.value}`,onClick:UR,children:e.label})},e.value))}),r]})}function HR(e){return e.map(e=>vC(e)?{label:e,value:e.toLowerCase()}:e)}function UR(e){hj(e)||e.preventDefault()}function WR(e){let{group:t}=e;return(0,L.jsx)(vl,{withBorder:!0,radius:`md`,p:`xs`,display:`flex`,style:{alignItems:`center`,justifyContent:`center`},children:(0,L.jsxs)(H,{children:[t.measureScore&&(0,L.jsx)(qR,{group:t}),!t.measureScore&&(0,L.jsx)(KR,{group:t})]})})}function GR(e){let{measure:t}=e;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(U,{fz:`md`,fw:500,mb:8,children:t.title}),(0,L.jsx)(U,{fz:`xs`,c:`dimmed`,mb:8,children:t.subtitle})]})}function KR(e){let{group:t}=e,n=t.population,r=n?.find(e=>ow(e.code)===`numerator`),i=n?.find(e=>ow(e.code)===`denominator`),a=r?.count,o=i?.count;if(o===0)return(0,L.jsxs)(B,{children:[(0,L.jsx)(J,{order:3,children:`Not Applicable`}),(0,L.jsx)(U,{children:`Denominator: ${o}`})]});if(a===void 0||o===void 0)return(0,L.jsxs)(B,{children:[(0,L.jsx)(J,{order:3,children:`Insufficient Data`}),(0,L.jsx)(U,{children:`Numerator: ${a}`}),(0,L.jsx)(U,{children:`Denominator: ${o}`})]});let s=a/o*100;return(0,L.jsx)(Xv,{size:120,thickness:12,roundCaps:!0,sections:[{value:s,color:YR(s)}],label:(0,L.jsx)(gd,{justify:`center`,children:(0,L.jsxs)(U,{fw:700,fz:18,children:[a,` / `,o]})})})}function qR(e){let{group:t}=e;return(0,L.jsx)(L.Fragment,{children:(t.measureScore?.unit??t.measureScore?.code)===`%`?(0,L.jsx)(Xv,{size:120,thickness:12,roundCaps:!0,sections:[{value:JR(t),color:YR(t?.measureScore?.value??0)}],label:(0,L.jsx)(gd,{justify:`center`,children:(0,L.jsx)(U,{fw:700,fz:18,children:(0,L.jsx)(jP,{value:t.measureScore})})})}):(0,L.jsx)(gd,{h:120,align:`center`,children:(0,L.jsx)(J,{order:3,children:(0,L.jsx)(jP,{value:t.measureScore})})})})}function JR(e){let t=e.measureScore?.value,n=e.measureScore?.unit;return t?t<=1&&n===`%`?t*100:t:0}function YR(e){return e<=33?`red`:e<=67?`yellow`:`green`}function XR(e){let t=zO(e.measureReport),[n]=kk(`Measure`,{url:t?.measure});return t?(0,L.jsxs)(B,{children:[n&&(0,L.jsx)(GR,{measure:n}),(0,L.jsx)(cy,{cols:{base:3,sm:1},spacing:{base:`md`,sm:`sm`},children:t.group?.map((e,t)=>(0,L.jsx)(WR,{group:e},e.id??t))})]}):null}var ZR=`patient-export`,QR=`Patient Export`,$R={everything:{operation:`$everything`,extension:`json`,contentType:FE.FHIR_JSON},summary:{operation:`$summary`,extension:`json`,contentType:FE.FHIR_JSON},ccda:{operation:`$ccda-export`,extension:`xml`,contentType:FE.CDA_XML},ccdaReferral:{operation:`$ccda-export`,type:`referral`,extension:`xml`,contentType:FE.CDA_XML}};function ez(e){let t=Q(),{patient:n}=e;return(0,L.jsx)(UM,{onSubmit:(0,b.useCallback)(async e=>{let r=KS(n),{operation:i,type:a,contentType:o,extension:s}=$R[e.format],c=t.fhirUrl(`Patient`,r,i),l={};a&&(l.type=a),e.author&&(l.author={reference:e.author}),e.authoredOn&&(l.authoredOn=cF(e.authoredOn)),e.startDate&&(l.start=e.startDate),e.endDate&&(l.end=e.endDate),Tb.show({id:ZR,title:QR,loading:!0,message:`Exporting...`,autoClose:!1,withCloseButton:!1});try{tz(await t.post(c,l,void 0,{cache:`no-cache`,headers:{Accept:o}}),`Patient-export-${r}-${new Date().toISOString().replaceAll(`:`,`-`)}.${s}`,o),Tb.update({id:ZR,title:QR,color:`green`,message:`Done`,icon:(0,L.jsx)(aA,{size:`1rem`}),loading:!1,autoClose:!0,withCloseButton:!0})}catch(e){Tb.update({id:ZR,title:QR,color:`red`,message:Lx(e),icon:(0,L.jsx)(lj,{size:`1rem`}),loading:!1,autoClose:!1,withCloseButton:!0})}},[t,n]),children:(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Export Format`,description:`Required`,withAsterisk:!0,children:(0,L.jsx)(ey,{name:`format`,data:[{label:`FHIR Everything`,value:`everything`},{label:`Patient Summary`,value:`summary`},{label:`C-CDA`,value:`ccda`},{label:`C-CDA Referral`,value:`ccdaReferral`}],fullWidth:!0})}),(0,L.jsx)(XP,{title:`Author`,description:`Optional author for composition. Default value is current user.`,children:(0,L.jsx)(DF,{name:`author`,placeholder:`Author`,targetTypes:[`Organization`,`Practitioner`,`PractitionerRole`]})}),(0,L.jsx)(XP,{title:`Authored On`,description:`Optional date for composition authored on. Default value is current date.`,children:(0,L.jsx)(lF,{name:`authoredOn`,placeholder:`Authored on`})}),(0,L.jsx)(XP,{title:`Start Date`,description:`The start date of care. If no start date is provided, all records prior to the end date are in scope.`,children:(0,L.jsx)(lF,{name:`startDate`,placeholder:`Start date`})}),(0,L.jsx)(XP,{title:`End Date`,description:`The end date of care. If no end date is provided, all records subsequent to the start date are in scope.`,children:(0,L.jsx)(lF,{name:`endDate`,placeholder:`End date`})}),(0,L.jsx)(H,{justify:`right`,children:(0,L.jsx)(WM,{children:`Request Export`})})]})})}function tz(e,t,n){let r=typeof e==`string`?e:JSON.stringify(e,null,2),i=new Blob([r],{type:n}),a=window.URL.createObjectURL(i),o=document.createElement(`a`);document.body.appendChild(o),o.style.display=`none`,o.href=a,o.download=t,o.click(),window.URL.revokeObjectURL(a)}function nz(e){if(e.gender===`male`)return`blue`;if(e.gender===`female`)return`pink`}function rz(e){let t=zO(e.patient);return t?(0,L.jsxs)(zR,{children:[(0,L.jsx)(Ej,{value:t,size:`lg`,color:nz(t)}),(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Name`}),(0,L.jsx)(zR.Value,{children:(0,L.jsx)(bj,{to:t,fw:500,children:t.name?(0,L.jsx)(Oj,{value:t.name[0],options:{use:!1}}):`[blank]`})})]}),t.birthDate&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`DoB`}),(0,L.jsx)(zR.Value,{children:t.birthDate})]}),(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Age`}),(0,L.jsx)(zR.Value,{children:eC(t.birthDate)})]})]}),t.gender&&(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Gender`}),(0,L.jsx)(zR.Value,{children:t.gender})]}),t.address&&(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`State`}),(0,L.jsx)(zR.Value,{children:t.address[0]?.state})]}),t.identifier?.map(e=>(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:e?.system}),(0,L.jsx)(zR.Value,{children:e?.value})]},`${e?.system}-${e?.value}`))]}):null}function iz(e){let{patient:t,...n}=e;return(0,L.jsx)(hL,{value:t,loadTimelineResources:(0,b.useCallback)((e,t,n)=>{let r=`${t}/${n}`;return Promise.allSettled([e.readHistory(`Patient`,n),e.search(`Communication`,{subject:r,_count:100}),e.search(`Device`,{patient:r,_count:100}),e.search(`DeviceRequest`,{patient:r,_count:100}),e.search(`DiagnosticReport`,{subject:r,_count:100}),e.search(`Media`,{subject:r,_count:100}),e.search(`ServiceRequest`,{subject:r,_count:100}),e.search(`Task`,{subject:r,_count:100})])},[]),createCommunication:(e,t,n)=>({resourceType:`Communication`,status:`completed`,subject:WS(e),sender:WS(t),sent:new Date().toISOString(),payload:[{contentString:n}]}),createMedia:(e,t,n)=>({resourceType:`Media`,status:`completed`,subject:WS(e),operator:WS(t),issued:new Date().toISOString(),content:n}),...n})}var az={section:`_section_pqpwm_1`,hovering:`_hovering_pqpwm_7`,editing:`_editing_pqpwm_11`};function oz(e){let t=Q(),n=zO(e.value),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)();function d(){c(void 0)}function f(){o(void 0)}let p=(0,b.useRef)(l);if(p.current=l,(0,b.useEffect)(()=>{t.requestSchema(`PlanDefinition`).then(()=>i(!0)).catch(console.log)},[t]),(0,b.useEffect)(()=>(u(mz(n??{resourceType:`PlanDefinition`,status:`active`})),document.addEventListener(`mouseover`,d),document.addEventListener(`click`,f),()=>{document.removeEventListener(`mouseover`,d),document.removeEventListener(`click`,f)}),[n]),!r||!l)return null;function m(e,t){u({...p.current,[e]:t})}return(0,L.jsx)(`div`,{children:(0,L.jsxs)(UM,{testid:`questionnaire-form`,onSubmit:()=>e.onSubmit(l),children:[(0,L.jsx)(ab,{label:`Plan Title`,py:`md`,defaultValue:l.title,onChange:e=>m(`title`,e.currentTarget.value)}),(0,L.jsx)(sz,{actions:l.action||[],selectedKey:a,setSelectedKey:o,hoverKey:s,setHoverKey:c,onChange:e=>m(`action`,e)}),(0,L.jsx)(WM,{children:`Save`})]})})}function sz(e){let t=(0,b.useRef)(e.actions);t.current=e.actions;function n(n){e.onChange(t.current.map(e=>e.id===n.id?n:e))}function r(n){e.onChange([...t.current,n]),e.setSelectedKey(n.id)}function i(n){e.onChange(t.current.filter(e=>e!==n))}return(0,L.jsxs)(K,{gap:`md`,className:az.section,children:[e.actions.map(t=>(0,L.jsx)(cz,{action:t,selectedKey:e.selectedKey,setSelectedKey:e.setSelectedKey,hoverKey:e.hoverKey,setHoverKey:e.setHoverKey,onChange:n,onRemove:()=>i(t)},t.id)),(0,L.jsx)(`div`,{children:(0,L.jsx)(W,{variant:`outline`,onClick:e=>{mj(e),r({id:pz()})},children:`Add action`})})]})}function cz(e){let{action:t}=e;function n(t){t.stopPropagation(),e.setSelectedKey(e.action.id)}function r(t){mj(t),e.setHoverKey(e.action.id)}return(0,L.jsx)(`div`,{onClick:n,onMouseOver:r,onFocus:r,children:(0,L.jsx)(lz,{action:t,onChange:e.onChange,selectedKey:e.selectedKey,hoverKey:e.hoverKey,onRemove:e.onRemove})})}function lz(e){let{action:t}=e,[n,r]=(0,b.useState)(),i=Q(),[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(),l=e.selectedKey===e.action.id,u=e.hoverKey===e.action.id;function d(n,r){e.onChange({...t,[n]:r})}let f=jn(az.section,{[az.hovering]:u&&!l});return(0,b.useEffect)(()=>{(async()=>{if(!t.definitionCanonical)return;o(!0);let e=await i.readCanonical([`Questionnaire`,`ActivityDefinition`],t.definitionCanonical);r(dz(e)),c(e),o(!1)})().catch(console.error)},[t.definitionCanonical,i]),a?(0,L.jsx)(su,{}):(0,L.jsxs)(vl,{"data-testid":t.id,className:f,p:0,radius:`sm`,withBorder:!0,children:[(0,L.jsxs)(gd,{w:`100%`,p:`xs`,bg:`gray.0`,gap:`md`,align:`center`,justify:`space-between`,children:[(0,L.jsx)(ab,{w:`100%`,name:`actionTitle-${t.id}`,defaultValue:t.title,placeholder:`Title`,onChange:e=>d(`title`,e.currentTarget.value)}),(0,L.jsx)(bu,{"data-testid":`close-button`,onClick:e.onRemove})]}),l&&(0,L.jsxs)(K,{gap:`xl`,p:`md`,children:[(0,L.jsx)(B,{children:(0,L.jsx)(ab,{label:`Task Description`,placeholder:`Enter task description`,name:`actionDescription-${t.id}`,defaultValue:t.description,onChange:e=>d(`description`,e.currentTarget.value)})}),(0,L.jsx)(B,{children:(0,L.jsx)(Tg,{label:`Type of Action`,value:n,onChange:t=>{let n=t.currentTarget.value===`standard`?void 0:t.currentTarget.value;r(n),e.onChange({...e.action,definitionCanonical:n===`standard`?void 0:e.action.definitionCanonical})},data:[{value:`standard`,label:`Standard task`},{value:`questionnaire`,label:`Task with Questionnaire`},{value:`activitydefinition`,label:`Task with Activity Definition`}]})}),n===`questionnaire`&&(0,L.jsxs)(K,{gap:0,children:[(0,L.jsxs)(H,{gap:0,mb:`xs`,children:[(0,L.jsx)(U,{fw:600,children:`Select questionnaire`}),(0,L.jsx)(U,{c:`red`,children:`*`})]}),(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,mb:`sm`,children:[`Questionnaire to be shown in the task in Encounter view. You can create new one from`,` `,(0,L.jsx)(Nd,{href:`/Questionnaire`,target:`_blank`,c:`blue`,children:`questionnaires list`})]}),(0,L.jsx)(uz,{resource:s,resourceType:`Questionnaire`,action:t,onChange:e.onChange,placeholder:`Search for questionnaire`})]}),n===`activitydefinition`&&(0,L.jsxs)(K,{gap:0,children:[(0,L.jsxs)(H,{gap:0,mb:`xs`,children:[(0,L.jsx)(U,{fw:600,children:`Select activity definition`}),(0,L.jsx)(U,{c:`red`,children:`*`})]}),(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,mb:`sm`,children:[`ActivityDefinition.kind resource to be shown in the task in Encounter view. You can create new one from`,` `,(0,L.jsx)(Nd,{href:`/ActivityDefinition`,target:`_blank`,c:`blue`,children:`activity definitions list`})]}),(0,L.jsx)(uz,{resource:s,resourceType:`ActivityDefinition`,action:t,onChange:e.onChange,placeholder:`Search for activity definition`})]})]})]})}function uz(e){let{id:t}=e.action,{resource:n}=e;return(0,L.jsx)(wF,{name:t,placeholder:e.placeholder,resourceType:e.resourceType,defaultValue:n,onChange:t=>{t?e.onChange({...e.action,definitionCanonical:`url`in t?t.url:void 0,definitionUri:`url`in t?void 0:GS(t)}):e.onChange({...e.action,definitionCanonical:void 0})}})}function dz(e){return e===void 0?`standard`:e.resourceType.toLowerCase()}var fz=1;function pz(e){if(e){if(e.startsWith(`id-`)){let t=Number.parseInt(e.substring(3),10);Number.isNaN(t)||(fz=Math.max(fz,t+1))}return e}return`id-`+ fz++}function mz(e){return{...e,action:hz(e.action)}}function hz(e){if(e)return e.map(e=>({...e,id:pz(e.id),action:hz(e.action)}))}var gz={section:`_section_my8o4_1`,hovering:`_hovering_my8o4_10`,editing:`_editing_my8o4_14`,questionBody:`_questionBody_my8o4_20`,topActions:`_topActions_my8o4_24`,bottomActions:`_bottomActions_my8o4_33`,movementActions:`_movementActions_my8o4_44`,movementIcons:`_movementIcons_my8o4_56`,columnAlignment:`_columnAlignment_my8o4_60`,linkIdInput:`_linkIdInput_my8o4_65`,typeSelect:`_typeSelect_my8o4_70`,preserveBreaks:`_preserveBreaks_my8o4_74`};function _z(e){let t=Q(),n=zO(e.questionnaire),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)();function d(){u(void 0)}function f(){c(void 0)}return(0,b.useEffect)(()=>{t.requestSchema(`Questionnaire`).then(()=>i(!0)).catch(console.log)},[t]),(0,b.useEffect)(()=>(o(Ez(n??{resourceType:`Questionnaire`,status:`active`})),document.addEventListener(`mouseover`,d),document.addEventListener(`click`,f),()=>{document.removeEventListener(`mouseover`,d),document.removeEventListener(`click`,f)}),[n]),!r||!a?null:(0,L.jsx)(`div`,{children:(0,L.jsxs)(UM,{testid:`questionnaire-form`,onSubmit:()=>e.onSubmit(a),children:[(0,L.jsx)(vz,{item:a,selectedKey:s,setSelectedKey:c,hoverKey:l,setHoverKey:u,onChange:(t,n)=>{o(t),e.autoSave&&!n&&e.onSubmit&&e.onSubmit(t)}}),(0,L.jsx)(WM,{children:`Save`})]})})}function vz(e){let t=e.item,n=e.item,r=Ew(e.item),i=r||n.type===VO.group,a=n.linkId??`[untitled]`,o=e.selectedKey===e.item.id,s=e.hoverKey===e.item.id,c=(0,b.useRef)(e.item);c.current=e.item;function l(t){mj(t),e.setSelectedKey(e.item.id)}function u(t){mj(t),e.setHoverKey(e.item.id)}function d(t){let n=c.current;e.onChange({...n,item:n.item?.map(e=>e.id===t.id?t:e)})}function f(t,n){e.onChange({...e.item,item:[...e.item.item??[],t]},n)}function p(t){e.onChange({...e.item,item:e.item.item?.filter(e=>e!==t)})}function m(t,n){e.onChange({...c.current,[t]:n})}function h(t){e.onChange({...e.item,...t})}function g(t){e.onChange({...e.item,item:e.item.item?.map(e=>e===t?{...e,repeats:!e.repeats}:e)})}function _(t,n){let r=Az(e.item.item,t,n);e.onChange({...e.item,item:r})}let v=jn(gz.section,{[gz.editing]:o,[gz.hovering]:s&&!o});return(0,L.jsxs)(`div`,{"data-testid":n.linkId,className:v,onClick:l,onMouseOver:u,onFocus:u,children:[(0,L.jsx)(`div`,{className:gz.questionBody,children:o?(0,L.jsxs)(L.Fragment,{children:[r&&(0,L.jsx)(ab,{size:`xl`,defaultValue:t.title,onBlur:e=>m(`title`,e.currentTarget.value)}),!r&&(0,L.jsx)(ah,{autosize:!0,minRows:2,defaultValue:n.text,onBlur:e=>m(`text`,e.currentTarget.value)}),n.type===`reference`&&(0,L.jsx)(xz,{item:n,onChange:h}),ZO(n)&&(0,L.jsx)(yz,{item:n,onChange:e=>h(e)})]}):(0,L.jsxs)(L.Fragment,{children:[t.title&&(0,L.jsx)(J,{children:t.title}),n.text&&(0,L.jsx)(`div`,{className:gz.preserveBreaks,children:n.text}),!i&&(0,L.jsx)(sI,{item:n,index:0,required:!1,responseItem:{linkId:n.linkId}})]})}),n.item?.map((t,n)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(vz,{item:t,selectedKey:e.selectedKey,setSelectedKey:e.setSelectedKey,hoverKey:e.hoverKey,isFirst:n===0,isLast:n===(e.item.item??[]).length-1,setHoverKey:e.setHoverKey,onChange:d,onRemove:()=>p(t),onRepeatable:g,onMoveUp:()=>_(n,-1),onMoveDown:()=>_(n,1)})},t.id)),!i&&(0,L.jsx)(`div`,{className:gz.topActions,children:o?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ab,{size:`xs`,className:gz.linkIdInput,defaultValue:n.linkId,onBlur:e=>m(`linkId`,e.currentTarget.value)}),!i&&(0,L.jsx)(Tg,{size:`xs`,className:gz.typeSelect,defaultValue:n.type,onChange:e=>m(`type`,e.currentTarget.value),data:[{value:`display`,label:`Display`},{value:`boolean`,label:`Boolean`},{value:`decimal`,label:`Decimal`},{value:`integer`,label:`Integer`},{value:`date`,label:`Date`},{value:`dateTime`,label:`Date/Time`},{value:`time`,label:`Time`},{value:`string`,label:`String`},{value:`text`,label:`Text`},{value:`url`,label:`URL`},{value:`choice`,label:`Choice`},{value:`open-choice`,label:`Open Choice`},{value:`attachment`,label:`Attachment`},{value:`reference`,label:`Reference`},{value:`quantity`,label:`Quantity`}]})]}):(0,L.jsx)(`div`,{children:a})}),!r&&(0,L.jsx)(B,{className:gz.movementActions,children:(0,L.jsxs)(B,{className:gz.columnAlignment,children:[!e.isFirst&&(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onMoveUp&&e.onMoveUp()},children:(0,L.jsx)(qk,{"data-testid":`up-button`,size:15,className:gz.movementIcons})}),!e.isLast&&(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onMoveDown&&e.onMoveDown()},children:(0,L.jsx)(Kk,{"data-testid":`down-button`,size:15,className:gz.movementIcons})})]})}),(0,L.jsxs)(`div`,{className:gz.bottomActions,children:[i&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nd,{href:`#`,onClick:e=>{e.preventDefault(),f({id:Tz(),linkId:wz(`q`),type:`string`,text:`Question`})},children:`Add item`}),(0,L.jsx)(Nd,{href:`#`,onClick:e=>{e.preventDefault(),f({id:Tz(),linkId:wz(`g`),type:`group`,text:`Group`},!0)},children:`Add group`})]}),r&&(0,L.jsx)(Nd,{href:`#`,onClick:e=>{e.preventDefault(),f(kz(),!0)},children:`Add Page`}),o&&!r&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onRepeatable&&e.onRepeatable(n)},children:n.repeats?`Remove Repeatable`:`Make Repeatable`}),(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onRemove&&e.onRemove()},children:`Remove`})]})]})]})}function yz(e){let t=ww(`QuestionnaireItemAnswerOption`,`value[x]`),n=e.item.answerOption??[];return(0,L.jsxs)(`div`,{children:[e.item.answerValueSet===void 0?(0,L.jsx)(bz,{options:n,property:t,item:e.item,onChange:e.onChange}):(0,L.jsx)(ab,{placeholder:`Enter Value Set`,defaultValue:e.item.answerValueSet,onChange:t=>e.onChange({...e.item,answerValueSet:t.target.value})}),(0,L.jsxs)(B,{display:`flex`,children:[(0,L.jsx)(Nd,{href:`#`,onClick:t=>{mj(t),e.onChange({...e.item,answerValueSet:void 0,answerOption:[...n,{id:Tz()}]})},children:`Add choice`}),(0,L.jsx)(ly,{w:`lg`}),(0,L.jsx)(Nd,{href:`#`,onClick:t=>{mj(t),e.onChange({...e.item,answerOption:[],answerValueSet:``})},children:`Add value set`})]})]})}function bz(e){return(0,L.jsx)(`div`,{children:e.options.map(t=>{let[n,r]=EP({type:`QuestionnaireItemAnswerOption`,value:t},`value`);return(0,L.jsxs)(`div`,{style:{display:`flex`,flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`,width:`80%`},children:[(0,L.jsx)(`div`,{children:(0,L.jsx)(WF,{name:`value[x]`,path:`Questionnaire.answerOption.value[x]`,property:e.property,defaultPropertyType:r,defaultValue:n,onChange:(n,r)=>{let i=[...e.options],a=i.findIndex(e=>e.id===t.id);i[a]={id:t.id,[r]:n},e.onChange({...e.item,answerOption:i})},outcome:void 0},t.id)}),(0,L.jsx)(`div`,{children:(0,L.jsx)(Nd,{href:`#`,onClick:n=>{mj(n),e.onChange({...e.item,answerOption:e.options.filter(e=>e.id!==t.id)})},children:`Remove`})})]},t.id)})})}function xz(e){let t=uk(e.item)??[];return(0,L.jsxs)(L.Fragment,{children:[t.map((n,r)=>(0,L.jsxs)(H,{children:[(0,L.jsx)(nN,{name:`resourceType`,placeholder:`Resource Type`,defaultValue:n,onChange:r=>{e.onChange(dk(e.item,t.map(e=>e===n?r:e)))}}),(0,L.jsx)(Nd,{href:`#`,onClick:r=>{mj(r),e.onChange(dk(e.item,t.filter(e=>e!==n)))},children:`Remove`})]},`${n}-${r}`)),(0,L.jsx)(Nd,{href:`#`,onClick:n=>{mj(n),e.onChange(dk(e.item,[...t,``]))},children:`Add Resource Type`})]})}var Sz=1,Cz=1;function wz(e){return e+ Sz++}function Tz(){return`id-`+ Cz++}function Ez(e){return{...e,id:e.id||Tz(),item:Dz(e.item)}}function Dz(e){if(e)return e.forEach(e=>{e.id?.match(/^id-\d+$/)&&(Cz=Math.max(Cz,Number.parseInt(e.id.substring(3),10)+1)),e.linkId?.match(/^q\d+$/)&&(Sz=Math.max(Sz,Number.parseInt(e.linkId.substring(1),10)+1))}),e.map(e=>({...e,id:e.id||Tz(),item:Dz(e.item),answerOption:Oz(e.answerOption)}))}function Oz(e){if(e)return e.map(e=>({...e,id:e.id||Tz()}))}function kz(){return{id:Tz(),linkId:wz(`s`),type:`group`,text:`New Page`,extension:[{url:HO,valueCodeableConcept:{coding:[{system:`http://hl7.org/fhir/questionnaire-item-control`,code:`page`}]}}]}}function Az(e,t,n){let r=e??[],i=t+n;if(i<0||i>=r.length)return r;let a=[...r];return[a[t],a[i]]=[a[i],a[t]],a}var jz={section:`_section_4m5it_1`},Mz=[`gender`,`age`,`gestationalAge`,`context`,`appliesTo`,`category`],Nz={definition:{resourceType:`ObservationDefinition`,code:{text:``}},onSubmit:()=>{}};function Pz(e){e=Object.assign(Nz,e);let t=e.definition,[n,r]=(0,b.useState)([]),[i,a]=(0,b.useState)(1),[o,s]=(0,b.useState)(1);return(0,b.useEffect)(()=>{r(Rz(Lz(t,s).qualifiedInterval||[],a))},[t]),(0,L.jsxs)(UM,{testid:`reference-range-editor`,onSubmit:c,children:[(0,L.jsx)(K,{children:n.map(e=>(0,L.jsx)(Fz,{unit:Bz(t.quantitativeDetails?.unit),onChange:d,onAdd:f,onRemove:p,onRemoveGroup:u,intervalGroup:e},`group-${e.id}`))}),(0,L.jsx)(hu,{title:`Add Group`,variant:`subtle`,size:`sm`,onClick:e=>{mj(e),l({id:`group-id-${i}`,filters:{},intervals:[]}),a(e=>e+1)},children:(0,L.jsx)(uA,{})}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(WM,{children:`Save`})})]});function c(){let r=n.flatMap(e=>e.intervals).filter(e=>!Vz(e));e.onSubmit({...t,qualifiedInterval:r})}function l(e){r(t=>[...t,e])}function u(e){r(t=>t.filter(t=>t.id!==e.id))}function d(e,t){r(n=>{n=[...n];let r=n.find(t=>t.id===e),i=r?.intervals.findIndex(e=>e.id===t.id);return i!==void 0&&r?.intervals[i]&&(r.intervals[i]=t),n})}function f(e,t){t.id===void 0&&(t.id=`id-${o}`,s(e=>e+1)),r(n=>{n=[...n];let r=n.findIndex(t=>t.id===e);if(r!==-1){let e={...n[r]};t={...t,...e.filters},e.intervals=[...e.intervals,t],n[r]=e}return n})}function p(e,t){r(n=>{n=[...n];let r=n.find(t=>t.id===e);return r&&(r.intervals=r.intervals.filter(e=>e.id!==t.id)),n})}}function Fz(e){let{intervalGroup:t,unit:n}=e;return(0,L.jsx)(PN,{"data-testid":t.id,className:jz.section,children:(0,L.jsxs)(K,{gap:`lg`,children:[(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(hu,{title:`Remove Group`,variant:`subtle`,"data-testid":`remove-group-button-${t.id}`,size:`sm`,onClick:n=>{mj(n),e.onRemoveGroup(t)},children:(0,L.jsx)(lA,{})},`remove-group-button-${t.id}`)}),(0,L.jsx)(Iz,{intervalGroup:t,onChange:e.onChange}),(0,L.jsx)(um,{}),t.intervals.map(n=>(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsxs)(H,{children:[(0,L.jsx)(ab,{"data-testid":`condition-${n.id}`,defaultValue:n.condition,label:`Condition: `,size:`sm`,onChange:r=>{mj(r),e.onChange(t.id,{...n,condition:r.currentTarget.value.trim()})}},`condition-${n.id}`),(0,L.jsx)(hu,{title:`Remove Interval`,variant:`subtle`,size:`sm`,"data-testid":`remove-interval-${n.id}`,onClick:r=>{mj(r),e.onRemove(t.id,n)},children:(0,L.jsx)(lA,{})},`remove-interval-${n.id}`)]}),(0,L.jsx)(yF,{path:``,onChange:r=>{e.onChange(t.id,{...n,range:r})},name:`range-${n.id}`,defaultValue:n.range},`range-${n.id}`)]},`interval-${n.id}`)),(0,L.jsx)(hu,{title:`Add Interval`,variant:`subtle`,size:`sm`,onClick:r=>{mj(r),e.onAdd(t.id,{range:{low:{unit:n},high:{unit:n}}})},children:(0,L.jsx)(uA,{})})]})})}function Iz(e){let{intervalGroup:t,onChange:n}=e;t.filters.age||(t.filters.age={});for(let e of[`low`,`high`])t.filters.age[e]?.unit||(t.filters.age[e]={...t.filters.age[e],unit:`years`,system:`http://unitsofmeasure.org`});return(0,L.jsxs)(K,{style:{maxWidth:`50%`},children:[(0,L.jsx)(H,{children:(0,L.jsx)(Tg,{data:[``,`male`,`female`],label:`Gender:`,defaultValue:t.filters.gender||``,onChange:e=>{for(let r of t.intervals){let i=e.currentTarget.value;i===``&&(i=void 0),n(t.id,{...r,gender:i})}}})}),(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(U,{component:`label`,htmlFor:`div-age-${t.id}`,children:`Age:`}),(0,L.jsx)(`div`,{id:`div-age-${t.id}`,children:(0,L.jsx)(yF,{path:``,name:`age-${t.id}`,defaultValue:t.filters.age,onChange:e=>{for(let r of t.intervals)n(t.id,{...r,age:e})}},`age-${t.id}`)})]}),(0,L.jsx)(Tg,{data:[``,`pre-puberty`,`follicular`,`midcycle`,`luteal`,`postmenopausal`],label:`Endocrine:`,defaultValue:t.filters.context?.text||``,onChange:e=>{for(let r of t.intervals){let i=e.currentTarget.value;i===``?(i=void 0,n(t.id,{...r,context:void 0})):n(t.id,{...r,context:{text:i,coding:[{code:i,system:`http://terminology.hl7.org/CodeSystem/referencerange-meaning`}]}})}}}),(0,L.jsx)(Tg,{data:[``,`reference`,`critical`,`absolute`],label:`Category: `,defaultValue:t.filters.category,onChange:e=>{for(let r of t.intervals){let i=e.currentTarget.value;i===``?n(t.id,{...r,category:void 0}):n(t.id,{...r,category:i})}}})]})}function Lz(e,t){let n=e.qualifiedInterval||[],r=Math.max(...n.map(e=>{let t=Number.parseInt(e.id?.substring(3)||``,10);return Number.isNaN(t)?-1/0:t}))+1;return Number.isFinite(r)||(r=1),e={...e,qualifiedInterval:n.map(e=>({...e,id:e.id||`id-${r++}`}))},t(r),e}function Rz(e,t){let n=1,r={};for(let t of e){let e=zz(t);e in r||(r[e]={id:`group-id-${n++}`,filters:Object.fromEntries(Mz.map(e=>[e,t[e]])),intervals:[]}),r[e].intervals.push(t)}return t(n),Object.values(r)}function zz(e){return[`gender=${e.gender}`,`age=${rw(e.age)}`,`gestationalAge=${rw(e.gestationalAge)}`,`context=${e.context?.text}`,`appliesTo=${e.appliesTo?.map(e=>e.text).join(`+`)}`,`category=${e.category}`].join(`:`)}function Bz(e){return e&&(kC(e,`http://unitsofmeasure.org`)||e.text)}function Vz(e){return e.range?.low?.value===void 0&&e.range?.high?.value===void 0}function Hz(e){let t=Q(),n=zO(e.value),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)();if((0,b.useEffect)(()=>{n&&!r&&(t.executeBatch(s(n)).then(o).catch(console.log),i(!0))},[t,n,r]),!n||!a)return null;return(0,L.jsx)(wm,{children:n.action?.map((t,n)=>{let r=t.resource&&c(t.resource),i=r?.input?.[0]?.valueReference,a=r?.output?.[0]?.valueReference;return(0,L.jsxs)(b.Fragment,{children:[(0,L.jsx)(wm.Col,{span:1,p:`md`,children:r?.status===`completed`?(0,L.jsx)(oA,{}):(0,L.jsx)(ej,{color:`gray`})}),(0,L.jsxs)(wm.Col,{span:9,p:`xs`,children:[(0,L.jsx)(U,{fw:500,children:t.title}),t.description&&(0,L.jsx)(`div`,{children:t.description}),(0,L.jsxs)(`div`,{children:[`Last edited by\xA0`,(0,L.jsx)(NI,{value:r?.meta?.author}),`\xA0on\xA0`,XC(r?.meta?.lastUpdated)]}),(0,L.jsxs)(`div`,{children:[`Status: `,(0,L.jsx)(AI,{status:r?.status||`unknown`})]})]}),(0,L.jsxs)(wm.Col,{span:2,p:`md`,children:[i&&!a&&(0,L.jsx)(W,{onClick:()=>e.onStart(r,i),children:`Start`}),i&&a&&(0,L.jsx)(W,{onClick:()=>e.onEdit(r,i,a),children:`Edit`})]})]},`action-${n}`)})});function s(e){let t=[];if(e.action)for(let n of e.action)n.resource?.reference&&t.push({request:{method:`GET`,url:n.resource.reference}});return{resourceType:`Bundle`,type:`batch`,entry:t}}function c(e){for(let t of a?.entry??[])if(t.resource&&e.reference===GS(t.resource))return t.resource}}function Uz(e,t){return Gz(Wz(e,t),e,t)}function Wz(e,t){let n=e.length,r=t.length,i=n+r+1,a=1+2*i,o=Math.trunc(a/2),s=Array(a);s[o+1]={i:0,j:-1,prev:void 0,snake:!0};for(let a=0;a<i;a++){for(let i=-a;i<=a;i+=2){let c=o+i,l=c+1,u=c-1,d=s[l],f=s[u],p,m=0;i===-a||i!==a&&f.i<d.i?(m=d.i,p=d):(m=f.i+1,p=f),s[u]=void 0;let h=m-i,g={i:m,j:h,prev:Kz(p),snake:!1};for(;m<n&&h<r&&e[m]===t[h];)m++,h++;if(m>g.i&&(g={i:m,j:h,prev:g,snake:!0}),s[c]=g,m>=n&&h>=r)return s[c]}s[o+a-1]=void 0}}function Gz(e,t,n){let r=[],i=e;for(i.snake&&(i=i.prev);i?.prev&&i.prev.j>=0;){let e=i.i,a=i.j;i=i.prev;let o=i.i,s=i.j,c={position:o,lines:t.slice(o,e)},l={position:s,lines:n.slice(s,a)},u;u=c.lines.length===0&&l.lines.length>0?`insert`:c.lines.length>0&&l.lines.length===0?`delete`:`change`,r.push({original:c,revised:l,type:u}),i.snake&&(i=i.prev)}return r}function Kz(e){return e&&!e.snake&&e.prev?e.prev:e}function qz(e){let t=(e.entry??[]).filter(e=>!!e.resource).map(e=>({meta:e.resource?.meta,lines:nC(e.resource,!0).match(/[^\r\n]+/g)})).sort((e,t)=>e.meta.lastUpdated.localeCompare(t.meta.lastUpdated));if(!t.length)return[];let n=t[0].lines.map(e=>({id:t[0].meta.versionId,meta:t[0].meta,value:e,span:1}));return Jz(n,t),Yz(n),n}function Jz(e,t){for(let n=1;n<t.length;n++){let r=Uz(t[n-1].lines,t[n].lines);for(let i of r){let r=i.original.position,a=i.original.lines,o=i.revised.lines;if((i.type===`delete`||i.type===`change`)&&e.splice(r,a.length),i.type===`insert`||i.type===`change`)for(let a=0;a<i.revised.lines.length;a++)e.splice(r+a,0,{id:t[n].meta.versionId,meta:t[n].meta,value:o[a],span:1})}}}function Yz(e){let t=0;for(;t<e.length;){let n=t;for(;n<e.length&&e[n].id===e[t].id;)e[n].span=-1,n++;e[t].span=n-t,t=n}}var Xz={container:`_container_1tyf3_1`,root:`_root_1tyf3_5`,startRow:`_startRow_1tyf3_20`,normalRow:`_normalRow_1tyf3_25`,author:`_author_1tyf3_30`,dateTime:`_dateTime_1tyf3_34`,lineNumber:`_lineNumber_1tyf3_40`,line:`_line_1tyf3_40`,pre:`_pre_1tyf3_55`};function Zz(e,t){return`/${e.resourceType}/${e.id}/_history/${t}`}function Qz(e){let t=Math.floor((Date.now()-Date.parse(e))/1e3),n=Math.floor(t/31536e3);if(n>0)return $z(n,`year`);let r=Math.floor(t/2592e3);if(r>0)return $z(r,`month`);let i=Math.floor(t/86400);if(i>0)return $z(i,`day`);let a=Math.floor(t/3600);if(a>0)return $z(a,`hour`);let o=Math.floor(t/60);return o>0?$z(o,`minute`):$z(t,`second`)}function $z(e,t){return`${e} ${e===1?t:t+`s`} ago`}function eB(e){let t=Q(),[n,r]=(0,b.useState)(e.history);if((0,b.useEffect)(()=>{!e.history&&e.resourceType&&e.id&&t.readHistory(e.resourceType,e.id).then(r).catch(console.log)},[t,e.history,e.resourceType,e.id]),!n)return(0,L.jsx)(`div`,{children:`Loading...`});let i=n.entry?.[0]?.resource;if(!i)return null;let a=qz(n);return(0,L.jsx)(`div`,{className:Xz.container,children:(0,L.jsx)(`table`,{className:Xz.root,children:(0,L.jsx)(`tbody`,{children:a.map((e,t)=>(0,L.jsxs)(`tr`,{className:e.span>0?Xz.startRow:Xz.normalRow,children:[e.span>0&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`td`,{className:Xz.author,rowSpan:e.span,children:(0,L.jsx)(NI,{value:e.meta.author,link:!0,fz:`xs`})}),(0,L.jsx)(`td`,{className:Xz.dateTime,rowSpan:e.span,children:(0,L.jsx)(bj,{to:Zz(i,e.meta.versionId),fz:`xs`,children:Qz(e.meta.lastUpdated)})})]}),(0,L.jsx)(`td`,{className:Xz.lineNumber,children:t+1}),(0,L.jsx)(`td`,{className:Xz.line,children:(0,L.jsx)(`pre`,{className:Xz.pre,children:e.value})})]},`row-`+t))})})})}var tB={removed:`_removed_el5zk_1`,added:`_added_el5zk_6`};function nB(e){let t=e.original,n=e.revised;return e.ignoreMeta&&(t={...t,meta:void 0},n={...n,meta:void 0}),(0,L.jsx)(`pre`,{style:{color:`gray`},children:Uz(nC(t,!0).match(/[^\r\n]+/g),nC(n,!0).match(/[^\r\n]+/g)).map((e,t)=>(0,L.jsx)(rB,{delta:e},`delta`+t))})}function rB(e){return(0,L.jsxs)(L.Fragment,{children:[`...`,(0,L.jsx)(`br`,{}),e.delta.original.lines.length>0&&(0,L.jsx)(`div`,{className:tB.removed,children:e.delta.original.lines.join(`
|
|
207
|
-
`)}),e.delta.revised.lines.length>0&&(0,L.jsx)(`div`,{className:
|
|
208
|
-
`)}),`...`,(0,L.jsx)(`br`,{})]})}var iB={splitButton:`_splitButton_1i0gi_1`,menuControl:`_menuControl_1i0gi_6`};function aB(e){let{outcome:t}=e,n=Q(),r=zO(e.defaultValue),i=r?.resourceType,[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(),l=n.getAccessPolicy(),u=xr();(0,b.useEffect)(()=>{if(r)if(e.profileUrl){let t=e.profileUrl;n.requestProfileSchema(e.profileUrl,{expandProfile:!0}).then(()=>{let e=tS(t);e?(o(!0),c(eO(r,e))):console.error(`Schema not found for ${t}`)}).catch(e=>{console.error(`Error in requestProfileSchema`,e)})}else n.requestSchema(i).then(()=>{c(r),o(!0)}).catch(console.log)},[n,r,i,e.profileUrl]);let d=(0,b.useMemo)(()=>r&&gE(r,fE.READ,l),[l,r]),f=(0,b.useMemo)(()=>n.isSuperAdmin()||!l||!sC(s?.resourceType)?!0:mE(l,s?.resourceType),[n,l,s?.resourceType]);return!a||!s?(0,L.jsx)(`div`,{children:`Loading...`}):f?(0,L.jsxs)(`form`,{noValidate:!0,autoComplete:`off`,onSubmit:t=>{t.preventDefault(),e.onSubmit&&e.onSubmit(s)},children:[(0,L.jsxs)(K,{mb:`xl`,children:[(0,L.jsx)(XP,{title:`Resource Type`,htmlFor:`resourceType`,outcome:t,children:(0,L.jsx)(ab,{name:`resourceType`,defaultValue:s.resourceType,disabled:!0})}),(0,L.jsx)(XP,{title:`ID`,htmlFor:`id`,outcome:t,children:(0,L.jsx)(ab,{name:`id`,defaultValue:s.id,disabled:!0})})]}),(0,L.jsx)(ZF,{path:s.resourceType,valuePath:s.resourceType,typeName:i,defaultValue:s,outcome:t,onChange:c,profileUrl:e.profileUrl,accessPolicyResource:d}),(0,L.jsxs)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,gap:0,children:[(0,L.jsx)(W,{type:`submit`,className:jn((e.onPatch||e.onDelete)&&iB.splitButton),children:r?.id?`Update`:`Create`}),(e.onPatch||e.onDelete)&&(0,L.jsxs)(G,{transitionProps:{transition:`pop`},position:`bottom-end`,withinPortal:!0,children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(hu,{variant:`filled`,color:u.primaryColor,size:36,className:iB.menuControl,"aria-label":`More actions`,children:(0,L.jsx)(sA,{size:14,stroke:1.5})})}),(0,L.jsxs)(G.Dropdown,{children:[e.onPatch&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(vA,{size:14,stroke:1.5}),onClick:()=>{e.onPatch(s)},children:`Patch`}),e.onDelete&&(0,L.jsx)(G.Item,{color:`red`,leftSection:(0,L.jsx)(aj,{size:14,stroke:1.5,color:`red`}),onClick:()=>{e.onDelete(s)},children:`Delete`})]})]})]})]}):(0,L.jsxs)(Ed,{color:`red`,title:`Permission denied`,icon:(0,L.jsx)(Gk,{}),children:[`Your access level prevents you from editing and creating `,s.resourceType,` resources.`]})}function oB(e){let t=Q(),[n,r]=(0,b.useState)(e.history);return(0,b.useEffect)(()=>{!e.history&&e.resourceType&&e.id&&t.readHistory(e.resourceType,e.id).then(r).catch(console.log)},[t,e.history,e.resourceType,e.id]),n?(0,L.jsxs)(q,{withTableBorder:!0,withRowBorders:!0,withColumnBorders:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Author`}),(0,L.jsx)(q.Th,{children:`Date`}),(0,L.jsx)(q.Th,{children:`Version`})]})}),(0,L.jsx)(q.Tbody,{children:n.entry?.map((e,t)=>(0,L.jsx)(sB,{entry:e},`entry-`+t))})]}):(0,L.jsx)(`div`,{children:`Loading...`})}function sB(e){let{response:t,resource:n}=e.entry;return n?(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:(0,L.jsx)(PI,{value:n.meta?.author,link:!0})}),(0,L.jsx)(q.Td,{children:XC(n.meta?.lastUpdated)}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(bj,{to:cB(n),children:n.meta?.versionId})})]}):(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:3,children:Lx(t?.outcome)})})}function cB(e){return`/${e.resourceType}/${e.id}/_history/${e.meta?.versionId}`}function lB(e){let{serviceRequest:t,...n}=e;return(0,L.jsx)(hL,{value:t,loadTimelineResources:async(e,t,n)=>{let r=`${t}/${n}`;return Promise.allSettled([e.readHistory(`ServiceRequest`,n),e.search(`Communication`,{"based-on":r,_count:100}),e.search(`DiagnosticReport`,{"based-on":r,_count:100}),e.search(`Media`,{"based-on":r,_count:100}),e.search(`DocumentReference`,{related:r,_count:100}),e.search(`Task`,{_filter:`based-on eq ${r} or focus eq ${r} or subject eq ${r}`,_count:100})])},createCommunication:(e,t,n)=>({resourceType:`Communication`,status:`completed`,basedOn:[WS(e)],subject:e.subject,sender:WS(t),sent:new Date().toISOString(),payload:[{contentString:n}]}),createMedia:(e,t,n)=>({resourceType:`Media`,status:`completed`,basedOn:[WS(e)],subject:e.subject,operator:WS(t),issued:new Date().toISOString(),content:n}),...n})}function uB(e){let t=Q(),{client:n,patient:r,encounter:i,children:a,...o}=e,s=zO(r),c=zO(i);function l(){let a=r,o=i;if(n.launchIdentifierSystems?.length){let e=n.launchIdentifierSystems.find(e=>e.resourceType===`Patient`);if(a&&s&&e?.system){let t=s.identifier?.find(t=>t.system===e.system);t&&(a={...r,identifier:t})}let t=n.launchIdentifierSystems.find(e=>e.resourceType===`Encounter`);if(o&&c&&t?.system){let e=c.identifier?.find(e=>e.system===t.system);e&&(o={...i,identifier:e})}}t.createResource({resourceType:`SmartAppLaunch`,patient:a,encounter:o,fhirContext:e.fhirContext}).then(e=>{let r=new URL(n.launchUri);r.searchParams.set(`iss`,IC(t.fhirUrl().toString())),r.searchParams.set(`launch`,e.id),window.open(r.toString(),`_blank`)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return(0,L.jsx)(Nd,{onClick:()=>l(),...o,children:a})}var dB=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.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`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),fB=o(((e,t)=>{t.exports=dB()})),pB=o((e=>{var t=fB(),n=m(),r=Xi();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var f=Object.assign,p=Symbol.for(`react.element`),h=Symbol.for(`react.transitional.element`),g=Symbol.for(`react.portal`),_=Symbol.for(`react.fragment`),v=Symbol.for(`react.strict_mode`),y=Symbol.for(`react.profiler`),b=Symbol.for(`react.consumer`),x=Symbol.for(`react.context`),S=Symbol.for(`react.forward_ref`),C=Symbol.for(`react.suspense`),w=Symbol.for(`react.suspense_list`),T=Symbol.for(`react.memo`),E=Symbol.for(`react.lazy`),D=Symbol.for(`react.activity`),O=Symbol.for(`react.memo_cache_sentinel`),k=Symbol.iterator;function A(e){return typeof e!=`object`||!e?null:(e=k&&e[k]||e[`@@iterator`],typeof e==`function`?e:null)}var j=Symbol.for(`react.client.reference`);function M(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===j?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case _:return`Fragment`;case y:return`Profiler`;case v:return`StrictMode`;case C:return`Suspense`;case w:return`SuspenseList`;case D:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case g:return`Portal`;case x:return e.displayName||`Context`;case b:return(e._context.displayName||`Context`)+`.Consumer`;case S:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case T:return t=e.displayName||null,t===null?M(e.type)||`Memo`:t;case E:t=e._payload,e=e._init;try{return M(e(t))}catch{}}return null}var N=Array.isArray,P=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ee={pending:!1,data:null,method:null,action:null},te=[],ne=-1;function re(e){return{current:e}}function ie(e){0>ne||(e.current=te[ne],te[ne]=null,ne--)}function ae(e,t){ne++,te[ne]=e.current,e.current=t}var oe=re(null),se=re(null),ce=re(null),le=re(null);function ue(e,t){switch(ae(ce,t),ae(se,e),ae(oe,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Xd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Xd(t),e=Zd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ie(oe),ae(oe,e)}function de(){ie(oe),ie(se),ie(ce)}function fe(e){e.memoizedState!==null&&ae(le,e);var t=oe.current,n=Zd(t,e.type);t!==n&&(ae(se,e),ae(oe,n))}function pe(e){se.current===e&&(ie(oe),ie(se)),le.current===e&&(ie(le),sp._currentValue=ee)}var me,he;function ge(e){if(me===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);me=t&&t[1]||``,he=-1<e.stack.indexOf(`
|
|
206
|
+
[${JSON.stringify(t,null,2)}]`);return(0,L.jsx)(UP,{value:t[0]||``,propertyType:e.propertyType})}function EL(e){return(0,L.jsxs)(ng,{title:`Export`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:e.onCancel,children:[(0,L.jsxs)(B,{display:`flex`,style:{justifyContent:`space-between`},children:[e.exportCsv&&(0,L.jsx)(DL,{text:`CSV`,exportLogic:e.exportCsv,onCancel:e.onCancel}),e.exportTransactionBundle&&(0,L.jsx)(DL,{text:`Transaction Bundle`,exportLogic:e.exportTransactionBundle,onCancel:e.onCancel})]}),(0,L.jsx)(U,{style:{marginTop:`10px`,marginLeft:`2px`},children:`Limited to 1000 records`})]})}function DL(e){return(0,L.jsx)(W,{onClick:()=>{e.exportLogic(),e.onCancel()},children:`Export as ${e.text}`})}var OL={string:[Z.EQUALS,Z.NOT,Z.CONTAINS,Z.EXACT],fulltext:[Z.EQUALS,Z.NOT,Z.CONTAINS,Z.EXACT],token:[Z.EQUALS,Z.NOT,Z.TEXT],reference:[Z.EQUALS,Z.NOT],numeric:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS],quantity:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS],date:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS,Z.STARTS_AFTER,Z.ENDS_BEFORE,Z.APPROXIMATELY],datetime:[Z.EQUALS,Z.NOT_EQUALS,Z.GREATER_THAN,Z.LESS_THAN,Z.GREATER_THAN_OR_EQUALS,Z.LESS_THAN_OR_EQUALS,Z.STARTS_AFTER,Z.ENDS_BEFORE,Z.APPROXIMATELY],uri:[Z.EQUALS,Z.NOT,Z.ABOVE,Z.BELOW]},kL={eq:`equals`,ne:`not equals`,gt:`greater than`,lt:`less than`,ge:`greater than or equals`,le:`less than or equals`,sa:`starts after`,eb:`ends before`,ap:`approximately`,sw:`starts with`,contains:`contains`,exact:`exact`,text:`text`,not:`not`,above:`above`,below:`below`,in:`in`,"not-in":`not in`,"of-type":`of type`,missing:`missing`,present:`present`,identifier:`identifier`,iterate:`iterate`};function AL(e,t){return{...e,filters:t,offset:0,name:void 0}}function jL(e,t){return AL(e,(e.filters??[]).filter(e=>e.code!==t))}function ML(e,t,n,r,i){i&&(e=jL(e,t));let a=[];return e.filters&&a.push(...e.filters),a.push({code:t,operator:n,value:r??``}),AL(e,a)}function NL(e,t){if(!e.filters)return e;let n=[...e.filters];return n.splice(t,1),{...e,filters:n,name:void 0}}function PL(e,t){return LL(e,t,-1)}function FL(e,t){return LL(e,t,0)}function IL(e,t){return LL(e,t,1)}function LL(e,t,n){let r=new Date;r.setDate(r.getDate()+n),r.setHours(0,0,0,0);let i=new Date(r.getTime());return i.setDate(i.getDate()+1),i.setTime(i.getTime()-1),WL(e,t,r,i)}function RL(e,t){let n=new Date;return WL(e,t,n,new Date(n.getTime()+1440*60*1e3))}function zL(e,t){return HL(e,t,-1)}function BL(e,t){return HL(e,t,0)}function VL(e,t){return HL(e,t,1)}function HL(e,t,n){let r=new Date;r.setMonth(r.getMonth()+n),r.setDate(1),r.setHours(0,0,0,0);let i=new Date(r.getTime());return i.setMonth(i.getMonth()+1),i.setDate(1),i.setHours(0,0,0,0),i.setTime(i.getTime()-1),WL(e,t,r,i)}function UL(e,t){let n=new Date;return n.setMonth(0),n.setDate(1),n.setHours(0,0,0,0),WL(e,t,n,new Date)}function WL(e,t,n,r){return e=jL(e,t),e=GL(e,t,Z.GREATER_THAN_OR_EQUALS,n),e=GL(e,t,Z.LESS_THAN_OR_EQUALS,r),e}function GL(e,t,n,r){return ML(e,t,n,r.toISOString())}function KL(e,t,n=!0){return ML(e,t,Z.MISSING,n.toString())}function qL(e,t){return e.offset===t?e:{...e,offset:t,name:void 0}}function JL(e,t){let n=e.count??20;return qL(e,(t-1)*n)}function YL(e,t,n){return t===XL(e)&&n!==void 0&&n===ZL(e)?e:{...e,sortRules:[{code:t,descending:!!n}],name:void 0}}function XL(e){let t=e.sortRules;if(!t||t.length===0)return;let n=t[0].code;return n.startsWith(`-`)?n.substr(1):n}function ZL(e){let t=e.sortRules;return!t||t.length===0?!1:!!t[0].descending}function QL(e){return OL[e.type]}function $L(e){return kL[e]??``}function eR(e){let t=e;return t.includes(`.`)&&(t=t.split(`.`).pop()),t===`versionId`?`Version ID`:(t=t.replace(`[x]`,``),t=t.replaceAll(/([A-Z])/g,` $1`),t=t.replaceAll(/[-_]/g,` `),t=t.replaceAll(/\s+/g,` `),t=t.trim(),t.toLowerCase()===`id`?`ID`:t.split(/\s/).map(DC).join(` `))}function tR(e,t){let n=t.name;return n===`id`?(0,L.jsx)(Sj,{to:`/${e.resourceType}/${e.id}`,children:e.id}):n===`meta.versionId`?e.meta?.versionId:n===`_lastUpdated`?ZC(e.meta?.lastUpdated):`${e.resourceType}.${t.name}`===t.elementDefinition?.path?nR(e,t.elementDefinition):t.searchParams?.length===1&&t.name===t.searchParams[0].code?rR(e,t.searchParams[0]):null}function nR(e,t){let n=t.path?.split(`.`)?.pop()?.replaceAll(`[x]`,``)??``,[r,i]=OP({type:e.resourceType,value:e},n);return r?(0,L.jsx)(UP,{path:t.path,property:t,propertyType:i,value:r,maxWidth:200,ignoreMissingValues:!0,link:!1}):null}function rR(e,t){let n=CT(t.expression,[{type:e.resourceType,value:e}]);return!n||n.length===0?null:(0,L.jsx)(L.Fragment,{children:n.map((e,t)=>(0,L.jsx)(UP,{propertyType:e.type,value:e.value,maxWidth:200,ignoreMissingValues:!0,link:!1},`${t}-${n.length}`))})}function iR(e){let t=(0,b.useRef)(!1),[n,r]=(0,b.useState)({search:JSON.parse(rC(e.search))}),[i,a]=(0,b.useState)(!1);(0,b.useEffect)(()=>{r({search:e.search})},[e.search]);let o=(0,b.useMemo)(()=>{if(!e.visible)return[];let t=e.search.resourceType;return IC(aR($x(t),yw(t))).map(e=>({value:e,label:eR(e)}))},[e.visible,e.search.resourceType]);function s(e){r({search:{...n.search,fields:e}})}return(0,L.jsx)(ng,{title:`Fields`,closeButtonProps:{"aria-label":`Close`},opened:e.visible,onClose:()=>{e.onCancel()},size:`auto`,withOverlay:!0,closeOnClickOutside:!1,overlayProps:{onMouseDownCapture:()=>{t.current=i},onClick:()=>{t.current||e.onCancel(),t.current=!1},children:(0,L.jsx)(`div`,{"data-testid":`overlay-child`})},children:(0,L.jsxs)(K,{children:[(0,L.jsx)(xg,{style:{width:550},placeholder:`Select fields to display`,data:o,value:n.search.fields??[],onChange:s,onDropdownOpen:()=>a(!0),onDropdownClose:()=>a(!1),maxDropdownHeight:`250px`,clearButtonProps:{"aria-label":`Clear selection`},clearable:!0,searchable:!0}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{onClick:()=>e.onOk(n.search),children:`OK`})})]})})}function aR(e,t){let n=[],r=new Set,i=new Set;for(let t of Object.keys(e.elements))n.push(t),r.add(t.toLowerCase()),i.add(eR(t));if(t)for(let e of Object.keys(t)){let t=eR(e);!r.has(e)&&!i.has(t)&&(n.push(e),r.add(e),i.add(t))}return n}function oR(e){let t=fO(e.resourceType,e.searchParam),n=e.name??`filter-value`;switch(t.type){case dO.REFERENCE:return(0,L.jsx)(kF,{name:n,defaultValue:e.defaultValue?{reference:e.defaultValue}:void 0,targetTypes:e.searchParam.target,autoFocus:e.autoFocus,onChange:t=>{t?e.onChange(t.reference):e.onChange(``)}});case dO.BOOLEAN:return(0,L.jsx)(cp,{name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultChecked:e.defaultValue===`true`,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.checked.toString())});case dO.DATE:return(0,L.jsx)(ab,{type:`date`,name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.value)});case dO.DATETIME:return(0,L.jsx)(dF,{name:n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:e.onChange});case dO.NUMBER:return(0,L.jsx)(ab,{type:`number`,name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.value)});case dO.QUANTITY:return(0,L.jsx)(yF,{name:n,path:``,defaultValue:sR(e.defaultValue),autoFocus:e.autoFocus,onChange:t=>{t?e.onChange(`${t.value}`):e.onChange(``)}});default:return(0,L.jsx)(ab,{name:n,"data-autofocus":e.autoFocus,"data-testid":n,defaultValue:e.defaultValue,autoFocus:e.autoFocus,onChange:t=>e.onChange(t.currentTarget.value),placeholder:`Search value`})}}function sR(e){if(e){let[t,n,r]=e.split(`|`);if(t)return{value:Number.parseFloat(t),system:n,unit:r}}}function cR(e){let[t,n]=(0,b.useState)(gC(e.search)),r=(0,b.useRef)(t);(0,b.useLayoutEffect)(()=>{r.current=t}),(0,b.useEffect)(()=>{n(gC(e.search))},[e.search]);function i(e){n(ML(r.current,e.code,e.operator,e.value))}let a=e.search.resourceType,o=yw(a)??{},s=t.filters||[];return(0,L.jsx)(ng,{title:`Filters`,closeButtonProps:{"aria-label":`Close`},size:900,opened:e.visible,onClose:e.onCancel,children:(0,L.jsxs)(GM,{onSubmit:()=>e.onOk(r.current),children:[(0,L.jsxs)(`div`,{children:[(0,L.jsxs)(`table`,{children:[(0,L.jsxs)(`colgroup`,{children:[(0,L.jsx)(`col`,{style:{width:200}}),(0,L.jsx)(`col`,{style:{width:200}}),(0,L.jsx)(`col`,{style:{width:380}}),(0,L.jsx)(`col`,{style:{width:40}})]}),(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Field`}),(0,L.jsx)(`th`,{children:`Operation`}),(0,L.jsx)(`th`,{children:`Value`}),(0,L.jsx)(`th`,{})]})}),(0,L.jsx)(`tbody`,{children:s.map((e,t)=>(0,L.jsx)(lR,{id:`filter-${t}-row`,resourceType:a,searchParams:o,value:e,onChange:e=>{let i=[...s];i[t]=e,n(AL(r.current,i))},onDelete:()=>n(NL(r.current,t))},`filter-${t}-row`))})]}),(0,L.jsx)(IF,{propertyDisplayName:`Filter`,onClick:()=>i({})})]}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(KM,{children:`OK`})})]})})}function lR(e){let t=e.value;function n(t){e.onChange({code:t,operator:Z.EQUALS,value:``})}function r(n){e.onChange({code:t.code,operator:n,value:``})}function i(n){e.onChange({code:t.code,operator:t.operator,value:n})}let a=e.searchParams[t.code],o=a&&QL(a);return(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(Tg,{"data-testid":`${e.id}-filter-field`,defaultValue:e.value.code,onChange:e=>n(e.currentTarget.value),data:[``,...Object.keys(e.searchParams).map(e=>({value:e,label:eR(e)}))]})}),(0,L.jsx)(`td`,{children:o&&(0,L.jsx)(Tg,{"data-testid":`${e.id}-filter-operation`,defaultValue:t.operator,onChange:e=>r(e.currentTarget.value),data:[``,...o.map(e=>({value:e,label:$L(e)}))]},`${e.id}-filter-value-${e.value.code}`)}),(0,L.jsx)(`td`,{children:a&&t.operator&&(0,L.jsx)(oR,{name:`${e.id}-filter-value`,resourceType:e.resourceType,searchParam:a,defaultValue:t.value,onChange:i},`${e.id}-filter-value-${e.value.code}-${e.value.operator}`)}),(0,L.jsx)(`td`,{children:e.onDelete&&(0,L.jsx)(hu,{variant:`outline`,color:`red`,radius:`xl`,"aria-label":`Delete filter`,onClick:e.onDelete,children:(0,L.jsx)(dj,{style:{width:`70%`,height:`70%`},stroke:1.5})})})]})}function uR(e){let[t,n]=(0,b.useState)(e.defaultValue??``);if(!e.searchParam||!e.filter)return null;function r(){e.onOk({...e.filter,value:t})}return(0,L.jsx)(ng,{title:e.title,size:`xl`,opened:e.visible,onClose:e.onCancel,children:(0,L.jsx)(GM,{onSubmit:r,children:(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:10,children:(0,L.jsx)(oR,{resourceType:e.resourceType,searchParam:e.searchParam,defaultValue:t,autoFocus:!0,onChange:n})}),(0,L.jsx)(wm.Col,{span:2,children:(0,L.jsx)(W,{onClick:r,fullWidth:!0,children:`OK`})})]})})})}function dR(e){let{resourceType:t,filter:n}=e,r=kw.types[t].searchParams?.[n.code];if(r){if(r.type===`reference`&&(n.operator===Z.EQUALS||n.operator===Z.NOT_EQUALS))return(0,L.jsx)(MI,{value:{reference:n.value}});let e=fO(t,r);if(n.code===`_lastUpdated`||e.type===dO.DATETIME)return(0,L.jsx)(L.Fragment,{children:ZC(n.value)})}return(0,L.jsx)(L.Fragment,{children:n.value})}function fR(e){if(!e.searchParams)return null;function t(t,n){i(YL(e.search,t.code,n))}function n(t){i(jL(e.search,t.code))}function r(t,n){e.onPrompt(t,{code:t.code,operator:n,value:``})}function i(t){e.onChange(t)}return e.searchParams.length===1?(0,L.jsx)(pR,{search:e.search,searchParam:e.searchParams[0],onSort:t,onPrompt:r,onChange:i,onClear:n}):(0,L.jsx)(G.Dropdown,{children:e.searchParams.map(e=>(0,L.jsx)(G.Item,{children:eR(e.code)},e.code))})}function pR(e){switch(e.searchParam.type){case`date`:return(0,L.jsx)(mR,{...e});case`number`:case`quantity`:return(0,L.jsx)(hR,{...e});case`reference`:return(0,L.jsx)(gR,{...e});case`string`:return(0,L.jsx)(_R,{...e});case`token`:return(0,L.jsx)(vR,{...e});case`uri`:return(0,L.jsx)(yR,{...e});default:return(0,L.jsxs)(L.Fragment,{children:[`Unknown search param type: `,e.searchParam.type]})}}function mR(e){let{searchParam:t}=e,n=t.code;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ej,{size:14}),onClick:()=>e.onSort(t,!1),children:`Sort Oldest to Newest`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(tj,{size:14}),onClick:()=>e.onSort(t,!0),children:`Sort Newest to Oldest`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(SA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(xA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT_EQUALS),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(LA,{size:14}),onClick:()=>e.onPrompt(t,Z.ENDS_BEFORE),children:`Before...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(IA,{size:14}),onClick:()=>e.onPrompt(t,Z.STARTS_AFTER),children:`After...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(eA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Between...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(IL(e.search,n)),children:`Tomorrow`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(FL(e.search,n)),children:`Today`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(PL(e.search,n)),children:`Yesterday`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(RL(e.search,n)),children:`Next 24 Hours`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(VL(e.search,n)),children:`Next Month`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(BL(e.search,n)),children:`This Month`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(zL(e.search,n)),children:`Last Month`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oA,{size:14}),onClick:()=>e.onChange(UL(e.search,n)),children:`Year to date`}),(0,L.jsx)(bR,{...e})]})}function hR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ej,{size:14}),onClick:()=>e.onSort(t,!1),children:`Sort Smallest to Largest`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(tj,{size:14}),onClick:()=>e.onSort(t,!0),children:`Sort Largest to Smallest`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(SA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(xA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT_EQUALS),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(IA,{size:14}),onClick:()=>e.onPrompt(t,Z.GREATER_THAN),children:`Greater than...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)($A,{size:14}),onClick:()=>e.onPrompt(t,Z.GREATER_THAN_OR_EQUALS),children:`Greater than or equal to...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(LA,{size:14}),onClick:()=>e.onPrompt(t,Z.LESS_THAN),children:`Less than...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)($A,{size:14}),onClick:()=>e.onPrompt(t,Z.LESS_THAN_OR_EQUALS),children:`Less than or equal to...`}),(0,L.jsx)(bR,{...e})]})}function gR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(SA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(xA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(bR,{...e})]})}function _R(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ej,{size:14}),onClick:()=>e.onSort(t,!1),children:`Sort A to Z`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(tj,{size:14}),onClick:()=>e.onSort(t,!0),children:`Sort Z to A`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(SA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(xA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(iA,{size:14}),onClick:()=>e.onPrompt(t,Z.CONTAINS),children:`Contains...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(rA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Does not contain...`}),(0,L.jsx)(bR,{...e})]})}function vR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(SA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(xA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(SA,{size:14}),onClick:()=>e.onPrompt(t,Z.TEXT),children:`Text contains...`}),(0,L.jsx)(bR,{...e})]})}function yR(e){let{searchParam:t}=e;return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(SA,{size:14}),onClick:()=>e.onPrompt(t,Z.EQUALS),children:`Equals...`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(xA,{size:14}),onClick:()=>e.onPrompt(t,Z.NOT),children:`Does not equal...`}),(0,L.jsx)(bR,{...e})]})}function bR(e){let{searchParam:t}=e,n=t.code;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(Zk,{size:14}),onClick:()=>e.onChange(KL(e.search,n)),children:`Missing`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(Xk,{size:14}),onClick:()=>e.onChange(KL(e.search,n,!1)),children:`Not missing`}),(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(dj,{size:14}),onClick:()=>e.onClear(t),children:`Clear filters`})]})}function xR(e){switch(e){case`next`:return{"aria-label":`Next page`};case`previous`:return{"aria-label":`Previous page`};case`first`:return{"aria-label":`First page`};case`last`:return{"aria-label":`Last page`};default:return{}}}var SR={root:`_root_vlout_1`,table:`_table_vlout_8`,tr:`_tr_vlout_12`,th:`_th_vlout_18`,control:`_control_vlout_22`,icon:`_icon_vlout_31`};function CR(e){let t=e.resourceType,n=[];for(let r of e.fields||[`id`,`_lastUpdated`])n.push(wR(t,r));return n}function wR(e,t){if(t===`_lastUpdated`)return{name:`_lastUpdated`,searchParams:[{resourceType:`SearchParameter`,base:[`Resource`],code:`_lastUpdated`,name:`_lastUpdated`,type:`date`,expression:`Resource.meta.lastUpdated`}]};if(t===`meta.versionId`)return{name:`meta.versionId`,searchParams:[{resourceType:`SearchParameter`,base:[`Resource`],code:`_versionId`,name:`_versionId`,type:`token`,expression:`Resource.meta.versionId`}]};let n=Tw(e,t),r=bw(e,t.toLowerCase());if(n&&r)return{name:t,elementDefinition:n,searchParams:[r]};if(n){let r=yw(e),i;if(r){let n=RegExp(`${e}\\.${t.replaceAll(`[x]`,``)}([^\\w-]|$)`);i=Object.values(r).filter(e=>!!e.expression&&n.test(e?.expression)),i.length===0&&(i=void 0)}return{name:t,elementDefinition:n,searchParams:i}}return r?{name:t,elementDefinition:fO(e,r).elementDefinitions?.[0],searchParams:[r]}:{name:t}}var TR=class extends Event{definition;constructor(e){super(`change`),this.definition=e}},ER=class extends Event{response;constructor(e){super(`load`),this.response=e}},DR=class extends Event{resource;browserEvent;constructor(e,t){super(`click`),this.resource=e,this.browserEvent=t}};function OR(e){let t=Q(),[n,r]=(0,b.useState)(),{search:i,onLoad:a}=e,[o,s]=(0,b.useState)(i);uC(i,o)||s(i);let[c,l]=(0,b.useState)({selected:{},fieldEditorVisible:!1,filterEditorVisible:!1,exportDialogVisible:!1,filterDialogVisible:!1}),u=(0,b.useRef)(c);(0,b.useLayoutEffect)(()=>{u.current=c});let d=o.total??`accurate`,f=(0,b.useCallback)(e=>{r(void 0),t.requestSchema(o.resourceType).then(()=>t.search(o.resourceType,qT({...o,total:d,fields:void 0}),e)).then(e=>{l({...u.current,searchResponse:e}),a&&a(new ER(e))}).catch(e=>{l({...u.current,searchResponse:void 0}),r(Ix(e))})},[t,o,d,a]),p=(0,b.useCallback)(()=>{l({...u.current,searchResponse:void 0}),f({cache:`reload`})},[f]);(0,b.useEffect)(()=>{f()},[f]);function m(e,t){e.stopPropagation();let n=e.target.checked,r={...u.current.selected};n?r[t]=!0:delete r[t],l({...u.current,selected:r})}function h(e){e.stopPropagation();let t=e.target.checked,n={},r=u.current.searchResponse;t&&r?.entry&&r.entry.forEach(e=>{e.resource?.id&&(n[e.resource.id]=!0)}),l({...u.current,selected:n})}function g(){if(!c.searchResponse?.entry||c.searchResponse.entry.length===0)return!1;for(let e of c.searchResponse.entry)if(e.resource?.id&&!c.selected[e.resource.id])return!1;return!0}function _(t){e.onChange&&e.onChange(new TR(t))}function v(t,n){if(vj(t.target)||t.button===2)return;gj(t);let r=_j(t);!r&&e.onClick&&e.onClick(new DR(n,t)),r&&e.onAuxClick&&e.onAuxClick(new DR(n,t))}function y(){return!!(e.onExport??e.onExportCsv??e.onExportTransactionBundle)}if(n)return(0,L.jsx)(qN,{outcome:n});if(!Zx(o.resourceType))return(0,L.jsx)(Gp,{style:{width:`100%`,height:`100%`},children:(0,L.jsx)(su,{})});let x=e.checkboxesEnabled,S=CR(o),C=o.resourceType,w=c.searchResponse,T=(w?.entry)?.map(e=>e.resource),E=`subtle`,D=`gray`,O=window.innerWidth<768;return(0,L.jsxs)(`div`,{className:SR.root,"data-testid":`search-control`,children:[!e.hideToolbar&&(0,L.jsxs)(H,{justify:`space-between`,mb:`xl`,children:[(0,L.jsxs)(H,{gap:2,children:[(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(mA,{size:16}),onClick:()=>l({...u.current,fieldEditorVisible:!0,dialogOpenTime:Date.now()}),children:`Fields`}),(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(DA,{size:16}),onClick:()=>l({...u.current,filterEditorVisible:!0,dialogOpenTime:Date.now()}),children:`Filters`}),e.onNew&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(EA,{size:16}),onClick:e.onNew,children:`New...`}),!O&&y()&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(aj,{size:16}),onClick:e.onExport?e.onExport:()=>l({...u.current,exportDialogVisible:!0,dialogOpenTime:Date.now()}),children:`Export...`}),!O&&e.onDelete&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)(sj,{size:16}),onClick:()=>e.onDelete(Object.keys(c.selected)),children:`Delete...`}),!O&&e.onBulk&&(0,L.jsx)(W,{size:`compact-md`,variant:E,color:D,leftSection:(0,L.jsx)($k,{size:16}),onClick:()=>e.onBulk(Object.keys(c.selected)),children:`Bulk...`})]}),(0,L.jsxs)(H,{gap:2,children:[w&&(0,L.jsxs)(U,{size:`xs`,c:`dimmed`,"data-testid":`count-display`,children:[MR(o,w).toLocaleString(),`-`,NR(o,w).toLocaleString(),w.total!==void 0&&` of ${o.total===`estimate`?`~`:``}${w.total?.toLocaleString()}`]}),(0,L.jsx)(hu,{variant:E,color:D,title:`Refresh`,onClick:p,children:(0,L.jsx)(JA,{size:16})})]})]}),(0,L.jsxs)(q,{className:SR.table,children:[(0,L.jsxs)(q.Thead,{children:[(0,L.jsxs)(q.Tr,{children:[x&&(0,L.jsx)(q.Th,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"aria-label":`all-checkbox`,"data-testid":`all-checkbox`,checked:g(),onChange:e=>h(e)})}),S.map(e=>(0,L.jsx)(q.Th,{children:(0,L.jsxs)(G,{shadow:`md`,width:240,position:`bottom-end`,children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(pl,{className:SR.control,p:2,children:(0,L.jsxs)(H,{justify:`space-between`,wrap:`nowrap`,children:[(0,L.jsx)(U,{fw:500,children:eR(e.name)}),(0,L.jsx)(Gp,{className:SR.icon,children:(0,L.jsx)(Kk,{size:14,stroke:1.5})})]})})}),(0,L.jsx)(fR,{search:o,searchParams:e.searchParams,onPrompt:(e,t)=>{l({...u.current,filterDialogVisible:!0,filterDialogSearchParam:e,filterDialogFilter:t,dialogOpenTime:Date.now()})},onChange:e=>{_(e)}})]})},e.name))]}),!e.hideFilters&&(0,L.jsxs)(q.Tr,{children:[x&&(0,L.jsx)(q.Th,{}),S.map(e=>(0,L.jsx)(q.Th,{children:e.searchParams&&(0,L.jsx)(kR,{resourceType:C,searchParams:e.searchParams,filters:o.filters})},e.name))]})]}),(0,L.jsx)(q.Tbody,{children:T?.map(e=>e&&(0,L.jsxs)(q.Tr,{className:SR.tr,"data-testid":`search-control-row`,onClick:t=>v(t,e),onAuxClick:t=>v(t,e),children:[x&&(0,L.jsx)(q.Td,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"data-testid":`row-checkbox`,"aria-label":`Checkbox for ${e.id}`,checked:!!c.selected[e.id],onChange:t=>m(t,e.id)})}),S.map(t=>(0,L.jsx)(q.Td,{children:tR(e,t)},t.name))]},e.id))})]}),!T?.length&&(0,L.jsx)(IN,{children:(0,L.jsx)(Gp,{style:{height:150},children:(0,L.jsx)(U,{size:`xl`,c:`dimmed`,children:`No results`})})}),w&&(0,L.jsx)(Gp,{m:`md`,p:`md`,children:(0,L.jsx)(nv,{value:AR(o),total:jR(o,w),onChange:e=>_(JL(o,e)),getControlProps:xR})}),(0,L.jsx)(iR,{search:o,visible:c.fieldEditorVisible,onOk:e=>{_(e),l({...u.current,fieldEditorVisible:!1})},onCancel:()=>{l({...u.current,fieldEditorVisible:!1})}},`search-field-editor-${c.dialogOpenTime}`),(0,L.jsx)(cR,{search:o,visible:c.filterEditorVisible,onOk:e=>{_(e),l({...u.current,filterEditorVisible:!1})},onCancel:()=>{l({...u.current,filterEditorVisible:!1})}},`search-filter-editor-${c.dialogOpenTime}`),(0,L.jsx)(EL,{visible:c.exportDialogVisible,exportCsv:e.onExportCsv,exportTransactionBundle:e.onExportTransactionBundle,onCancel:()=>{l({...u.current,exportDialogVisible:!1})}},`search-export-dialog-${c.dialogOpenTime}`),(0,L.jsx)(uR,{visible:c.filterDialogVisible,title:c.filterDialogSearchParam?.code?eR(c.filterDialogSearchParam.code):``,resourceType:C,searchParam:c.filterDialogSearchParam,filter:c.filterDialogFilter,defaultValue:``,onOk:e=>{_(ML(o,e.code,e.operator,e.value)),l({...u.current,filterDialogVisible:!1})},onCancel:()=>{l({...u.current,filterDialogVisible:!1})}},`search-filter-dialog-${c.dialogOpenTime}`)]})}function kR(e){let t=(e.filters??[]).filter(t=>e.searchParams.find(e=>e.code===t.code));return t.length===0?(0,L.jsx)(`span`,{children:`no filters`}):(0,L.jsx)(L.Fragment,{children:t.map(t=>(0,L.jsxs)(`div`,{children:[$L(t.operator),`\xA0`,(0,L.jsx)(dR,{resourceType:e.resourceType,filter:t})]},`filter-${t.code}-${t.operator}-${t.value}`))})}function AR(e){return Math.floor((e.offset??0)/(e.count??20))+1}function jR(e,t){let n=e.count??20,r=PR(e,t);return Math.ceil(r/n)}function MR(e,t){return Math.min(PR(e,t),(e.offset??0)+1)}function NR(e,t){return Math.max(MR(e,t)+(t.entry?.length??0)-1,0)}function PR(e,t){let n=t.total;return n===void 0&&(n=(e.offset??0)+(t.entry?.length??0)+(t.link?.some(e=>e.relation===`next`)?1:0)),n}function FR(e){let t=Q(),[n,r]=(0,b.useState)(!1),[i,a]=(0,b.useState)(),{query:o,fields:s}=e,[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)({});(0,b.useEffect)(()=>{a(void 0),t.graphql(o).then(l).catch(e=>a(Ix(e)))},[t,o]);function f(e,t){e.stopPropagation();let n=e.target.checked,r={...u};n?r[t]=!0:delete r[t],d(r)}function p(e){e.stopPropagation();let t=e.target.checked,n={},r=c?.data.ResourceList;t&&r&&r.forEach(e=>{e.id&&(n[e.id]=!0)}),d(n)}function m(){let e=c?.data.ResourceList;if(!e||e.length===0)return!1;for(let t of e)if(t.id&&!u[t.id])return!1;return!0}function h(t,n){vj(t.target)||(gj(t),t.button!==1&&e.onClick&&e.onClick(new DR(n,t)),t.button===1&&e.onAuxClick&&e.onAuxClick(new DR(n,t)))}if((0,b.useEffect)(()=>{t.requestSchema(e.resourceType).then(()=>r(!0)).catch(console.log)},[t,e.resourceType]),!n)return(0,L.jsx)(su,{});let g=e.checkboxesEnabled;return(0,L.jsxs)(`div`,{onContextMenu:e=>gj(e),"data-testid":`search-control`,children:[(0,L.jsxs)(q,{children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[g&&(0,L.jsx)(q.Th,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"aria-label":`all-checkbox`,"data-testid":`all-checkbox`,checked:m(),onChange:e=>p(e)})}),s.map(e=>(0,L.jsx)(q.Th,{children:e.name},e.name))]})}),(0,L.jsx)(q.Tbody,{children:c?.data.ResourceList.map(e=>e&&(0,L.jsxs)(q.Tr,{"data-testid":`search-control-row`,onClick:t=>h(t,e),onAuxClick:t=>h(t,e),children:[g&&(0,L.jsx)(q.Td,{children:(0,L.jsx)(`input`,{type:`checkbox`,value:`checked`,"data-testid":`row-checkbox`,"aria-label":`Checkbox for ${e.id}`,checked:!!u[e.id],onChange:t=>f(t,e.id)})}),s.map(t=>(0,L.jsx)(q.Td,{children:(0,L.jsx)(TL,{propertyType:t.propertyType,path:t.fhirPath,resource:e})},t.name))]},e.id))})]}),c?.data.ResourceList.length===0&&(0,L.jsx)(`div`,{"data-testid":`empty-search`,children:`No results`}),i&&(0,L.jsx)(`div`,{"data-testid":`search-error`,children:(0,L.jsx)(`pre`,{style:{textAlign:`left`},children:JSON.stringify(i,void 0,2)})}),e.onBulk&&(0,L.jsx)(W,{onClick:()=>e.onBulk(Object.keys(u)),children:`Bulk...`})]})}var IR=(0,b.memo)(FR),LR={root:`_root_1fbwr_1`,entry:`_entry_1fbwr_8`,key:`_key_1fbwr_13`,value:`_value_1fbwr_20`};function RR(e){return(0,L.jsx)(ll,{children:(0,L.jsx)(`div`,{className:LR.root,children:e.children})})}RR.Entry=function(e){return(0,L.jsx)(`div`,{className:LR.entry,children:e.children})},RR.Key=function(e){return(0,L.jsx)(`div`,{className:LR.key,children:e.children})},RR.Value=function(e){return(0,L.jsx)(`div`,{className:LR.value,children:e.children})};var zR={list:`_list_y4z6g_1`,link:`_link_y4z6g_6`};function BR(e){let{baseUrl:t,tabs:n,children:r,...i}=e,a=VR(n),o=AO(),[s,c]=(0,b.useState)(()=>{let e=SE.getPathname().split(`/`).pop();return e&&a.some(t=>t.value===e)?e:a[0].value});function l(e){e||=a[0].value,c(e),o(`${t}/${e}`)}return(0,L.jsxs)(ib,{value:s.toLowerCase(),onChange:l,...i,children:[(0,L.jsx)(ib.List,{className:zR.list,children:a.map(e=>(0,L.jsx)(ib.Tab,{value:e.value,children:(0,L.jsx)(Nd,{className:zR.link,href:`${t}/${e.value}`,onClick:HR,children:e.label})},e.value))}),r]})}function VR(e){return e.map(e=>yC(e)?{label:e,value:e.toLowerCase()}:e)}function HR(e){_j(e)||e.preventDefault()}function UR(e){let{group:t}=e;return(0,L.jsx)(vl,{withBorder:!0,radius:`md`,p:`xs`,display:`flex`,style:{alignItems:`center`,justifyContent:`center`},children:(0,L.jsxs)(H,{children:[t.measureScore&&(0,L.jsx)(KR,{group:t}),!t.measureScore&&(0,L.jsx)(GR,{group:t})]})})}function WR(e){let{measure:t}=e;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(U,{fz:`md`,fw:500,mb:8,children:t.title}),(0,L.jsx)(U,{fz:`xs`,c:`dimmed`,mb:8,children:t.subtitle})]})}function GR(e){let{group:t}=e,n=t.population,r=n?.find(e=>sw(e.code)===`numerator`),i=n?.find(e=>sw(e.code)===`denominator`),a=r?.count,o=i?.count;if(o===0)return(0,L.jsxs)(B,{children:[(0,L.jsx)(J,{order:3,children:`Not Applicable`}),(0,L.jsx)(U,{children:`Denominator: ${o}`})]});if(a===void 0||o===void 0)return(0,L.jsxs)(B,{children:[(0,L.jsx)(J,{order:3,children:`Insufficient Data`}),(0,L.jsx)(U,{children:`Numerator: ${a}`}),(0,L.jsx)(U,{children:`Denominator: ${o}`})]});let s=a/o*100;return(0,L.jsx)(Xv,{size:120,thickness:12,roundCaps:!0,sections:[{value:s,color:JR(s)}],label:(0,L.jsx)(gd,{justify:`center`,children:(0,L.jsxs)(U,{fw:700,fz:18,children:[a,` / `,o]})})})}function KR(e){let{group:t}=e;return(0,L.jsx)(L.Fragment,{children:(t.measureScore?.unit??t.measureScore?.code)===`%`?(0,L.jsx)(Xv,{size:120,thickness:12,roundCaps:!0,sections:[{value:qR(t),color:JR(t?.measureScore?.value??0)}],label:(0,L.jsx)(gd,{justify:`center`,children:(0,L.jsx)(U,{fw:700,fz:18,children:(0,L.jsx)(NP,{value:t.measureScore})})})}):(0,L.jsx)(gd,{h:120,align:`center`,children:(0,L.jsx)(J,{order:3,children:(0,L.jsx)(NP,{value:t.measureScore})})})})}function qR(e){let t=e.measureScore?.value,n=e.measureScore?.unit;return t?t<=1&&n===`%`?t*100:t:0}function JR(e){return e<=33?`red`:e<=67?`yellow`:`green`}function YR(e){let t=BO(e.measureReport),[n]=Ak(`Measure`,{url:t?.measure});return t?(0,L.jsxs)(B,{children:[n&&(0,L.jsx)(WR,{measure:n}),(0,L.jsx)(cy,{cols:{base:3,sm:1},spacing:{base:`md`,sm:`sm`},children:t.group?.map((e,t)=>(0,L.jsx)(UR,{group:e},e.id??t))})]}):null}var XR=`patient-accounts`,ZR=`Patient Accounts`,QR=[`Organization`,`HealthcareService`,`CareTeam`];function $R(e){let{patient:t}=e,n=Q(),r=n.isProjectAdmin()||n.isSuperAdmin(),i=(0,b.useMemo)(()=>qS(t.meta)??[],[t.meta]),[a,o]=(0,b.useState)(i),[s,c]=(0,b.useState)(!1),[l,u]=(0,b.useState)(!0),[d,f]=(0,b.useState)(!1),p=(0,b.useMemo)(()=>{let e=[];for(let t of a)i.some(e=>e.reference===t.reference)||e.push({reference:t,type:`addition`});for(let t of i)a.some(e=>e.reference===t.reference)||e.push({reference:t,type:`removal`});return e},[i,a]),m=p.length>0,h=(0,b.useCallback)(e=>{e?.reference&&(a.some(t=>t.reference===e.reference)||o(t=>[...t,e]))},[a]),g=(0,b.useCallback)(e=>{o(t=>t.filter(t=>t.reference!==e))},[]),_=(0,b.useCallback)(async()=>{let r=t.id;if(!r){Tb.show({id:XR,title:ZR,color:`red`,message:`Cannot update accounts: Patient resource has no ID.`,icon:(0,L.jsx)(dj,{size:`1rem`}),autoClose:!1,withCloseButton:!0});return}f(!0),c(!1);let i=n.fhirUrl(`Patient`,r,`$set-accounts`),o={resourceType:`Parameters`,parameter:[...a.map(e=>({name:`accounts`,valueReference:{reference:e.reference}})),{name:`propagate`,valueBoolean:l}]};Tb.show({id:XR,title:ZR,loading:!0,message:l?`Saving account changes and propagating to compartment...`:`Saving account changes...`,autoClose:!1,withCloseButton:!1});try{let t={};l&&(t.Prefer=`respond-async`),await n.post(i,o,void 0,{headers:t}),n.invalidateUrl(n.fhirUrl(`Patient`,r)),Tb.update({id:XR,title:ZR,color:`green`,message:l?`Account changes saved. Compartment updates are being applied.`:`Account changes saved.`,icon:(0,L.jsx)(sA,{size:`1rem`}),loading:!1,autoClose:!0,withCloseButton:!0}),e.onSaved?.()}catch(e){Tb.update({id:XR,title:ZR,color:`red`,message:Lx(e),icon:(0,L.jsx)(dj,{size:`1rem`}),loading:!1,autoClose:!1,withCloseButton:!0})}finally{f(!1)}},[n,t,a,l,e]);return r?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(K,{children:[(0,L.jsx)(J,{order:3,children:`Current Accounts`}),a.length===0?(0,L.jsx)(U,{c:`dimmed`,children:`No accounts assigned to this patient.`}):(0,L.jsxs)(q,{children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Type`}),(0,L.jsx)(q.Th,{children:`Account`}),(0,L.jsx)(q.Th,{})]})}),(0,L.jsx)(q.Tbody,{children:a.map(e=>(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:(0,L.jsx)(ez,{reference:e})}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(NI,{value:e,link:!0})}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(hu,{variant:`subtle`,color:`red`,"aria-label":`Remove ${e.reference}`,onClick:()=>g(e.reference),children:(0,L.jsx)(dj,{size:16})})})]},e.reference))})]}),(0,L.jsx)(um,{}),(0,L.jsx)(J,{order:4,children:`Add Account`}),(0,L.jsx)(kF,{name:`newAccount`,placeholder:`Search for Organization, HealthcareService, or CareTeam...`,targetTypes:QR,onChange:e=>{e&&h(e)}}),m&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(um,{}),(0,L.jsx)(J,{order:4,children:`Pending Changes`}),(0,L.jsx)(K,{gap:`xs`,children:p.map(e=>(0,L.jsxs)(H,{gap:`xs`,children:[e.type===`addition`?(0,L.jsx)(jp,{color:`green`,variant:`light`,leftSection:(0,L.jsx)(KA,{size:12}),children:`Add`}):(0,L.jsx)(jp,{color:`red`,variant:`light`,leftSection:(0,L.jsx)(BA,{size:12}),children:`Remove`}),(0,L.jsx)(NI,{value:e.reference,link:!0})]},`${e.type}-${e.reference.reference}`))})]}),(0,L.jsx)(B,{children:(0,L.jsx)(W,{disabled:!m||d,onClick:()=>c(!0),children:`Save Changes`})})]}),(0,L.jsx)(ng,{opened:s,onClose:()=>c(!1),title:`Confirm Account Changes`,size:`md`,keepMounted:!0,children:(0,L.jsxs)(K,{children:[(0,L.jsxs)(U,{children:[`The following changes will be applied to Patient`,` `,(0,L.jsxs)(`strong`,{children:[t.name?.[0]?.given?.join(` `),` `,t.name?.[0]?.family]}),`:`]}),p.filter(e=>e.type===`addition`).length>0&&(0,L.jsxs)(B,{children:[(0,L.jsx)(U,{fw:600,c:`green`,children:`Adding:`}),(0,L.jsx)(K,{gap:`xs`,mt:`xs`,children:p.filter(e=>e.type===`addition`).map(e=>(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(KA,{size:14,color:`green`}),(0,L.jsx)(NI,{value:e.reference})]},e.reference.reference))})]}),p.filter(e=>e.type===`removal`).length>0&&(0,L.jsxs)(B,{children:[(0,L.jsx)(U,{fw:600,c:`red`,children:`Removing:`}),(0,L.jsx)(K,{gap:`xs`,mt:`xs`,children:p.filter(e=>e.type===`removal`).map(e=>(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(BA,{size:14,color:`red`}),(0,L.jsx)(NI,{value:e.reference})]},e.reference.reference))})]}),(0,L.jsx)(cp,{label:`Propagate changes to all resources in this patient's compartment`,checked:l,onChange:e=>u(e.currentTarget.checked)}),(0,L.jsxs)(H,{justify:`right`,mt:`md`,children:[(0,L.jsx)(W,{variant:`default`,onClick:()=>c(!1),children:`Cancel`}),(0,L.jsx)(W,{onClick:_,loading:d,children:`Confirm`})]})]})})]}):(0,L.jsx)(Ed,{color:`blue`,title:`Admin access required`,children:`You need project admin access to manage patient account assignments.`})}function ez({reference:e}){let t=e.reference?.split(`/`)[0]??`Unknown`;return(0,L.jsx)(jp,{variant:`light`,color:{Organization:`blue`,HealthcareService:`teal`,CareTeam:`violet`}[t]??`gray`,size:`sm`,children:t})}var tz=`patient-export`,nz=`Patient Export`,rz={everything:{operation:`$everything`,extension:`json`,contentType:IE.FHIR_JSON},summary:{operation:`$summary`,extension:`json`,contentType:IE.FHIR_JSON},ccda:{operation:`$ccda-export`,extension:`xml`,contentType:IE.CDA_XML},ccdaReferral:{operation:`$ccda-export`,type:`referral`,extension:`xml`,contentType:IE.CDA_XML}};function iz(e){let t=Q(),{patient:n}=e;return(0,L.jsx)(GM,{onSubmit:(0,b.useCallback)(async e=>{let r=KS(n),{operation:i,type:a,contentType:o,extension:s}=rz[e.format],c=t.fhirUrl(`Patient`,r,i),l={};a&&(l.type=a),e.author&&(l.author={reference:e.author}),e.authoredOn&&(l.authoredOn=uF(e.authoredOn)),e.startDate&&(l.start=e.startDate),e.endDate&&(l.end=e.endDate),Tb.show({id:tz,title:nz,loading:!0,message:`Exporting...`,autoClose:!1,withCloseButton:!1});try{az(await t.post(c,l,void 0,{cache:`no-cache`,headers:{Accept:o}}),`Patient-export-${r}-${new Date().toISOString().replaceAll(`:`,`-`)}.${s}`,o),Tb.update({id:tz,title:nz,color:`green`,message:`Done`,icon:(0,L.jsx)(sA,{size:`1rem`}),loading:!1,autoClose:!0,withCloseButton:!0})}catch(e){Tb.update({id:tz,title:nz,color:`red`,message:Lx(e),icon:(0,L.jsx)(dj,{size:`1rem`}),loading:!1,autoClose:!1,withCloseButton:!0})}},[t,n]),children:(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Export Format`,description:`Required`,withAsterisk:!0,children:(0,L.jsx)(ey,{name:`format`,data:[{label:`FHIR Everything`,value:`everything`},{label:`Patient Summary`,value:`summary`},{label:`C-CDA`,value:`ccda`},{label:`C-CDA Referral`,value:`ccdaReferral`}],fullWidth:!0})}),(0,L.jsx)(QP,{title:`Author`,description:`Optional author for composition. Default value is current user.`,children:(0,L.jsx)(kF,{name:`author`,placeholder:`Author`,targetTypes:[`Organization`,`Practitioner`,`PractitionerRole`]})}),(0,L.jsx)(QP,{title:`Authored On`,description:`Optional date for composition authored on. Default value is current date.`,children:(0,L.jsx)(dF,{name:`authoredOn`,placeholder:`Authored on`})}),(0,L.jsx)(QP,{title:`Start Date`,description:`The start date of care. If no start date is provided, all records prior to the end date are in scope.`,children:(0,L.jsx)(dF,{name:`startDate`,placeholder:`Start date`})}),(0,L.jsx)(QP,{title:`End Date`,description:`The end date of care. If no end date is provided, all records subsequent to the start date are in scope.`,children:(0,L.jsx)(dF,{name:`endDate`,placeholder:`End date`})}),(0,L.jsx)(H,{justify:`right`,children:(0,L.jsx)(KM,{children:`Request Export`})})]})})}function az(e,t,n){let r=typeof e==`string`?e:JSON.stringify(e,null,2),i=new Blob([r],{type:n}),a=window.URL.createObjectURL(i),o=document.createElement(`a`);document.body.appendChild(o),o.style.display=`none`,o.href=a,o.download=t,o.click(),window.URL.revokeObjectURL(a)}function oz(e){if(e.gender===`male`)return`blue`;if(e.gender===`female`)return`pink`}function sz(e){let t=BO(e.patient);return t?(0,L.jsxs)(RR,{children:[(0,L.jsx)(Oj,{value:t,size:`lg`,color:oz(t)}),(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Name`}),(0,L.jsx)(RR.Value,{children:(0,L.jsx)(Sj,{to:t,fw:500,children:t.name?(0,L.jsx)(Aj,{value:t.name[0],options:{use:!1}}):`[blank]`})})]}),t.birthDate&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`DoB`}),(0,L.jsx)(RR.Value,{children:t.birthDate})]}),(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Age`}),(0,L.jsx)(RR.Value,{children:tC(t.birthDate)})]})]}),t.gender&&(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Gender`}),(0,L.jsx)(RR.Value,{children:t.gender})]}),t.address&&(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`State`}),(0,L.jsx)(RR.Value,{children:t.address[0]?.state})]}),t.identifier?.map(e=>(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:e?.system}),(0,L.jsx)(RR.Value,{children:e?.value})]},`${e?.system}-${e?.value}`))]}):null}function cz(e){let{patient:t,...n}=e;return(0,L.jsx)(mL,{value:t,loadTimelineResources:(0,b.useCallback)((e,t,n)=>{let r=`${t}/${n}`;return Promise.allSettled([e.readHistory(`Patient`,n),e.search(`Communication`,{subject:r,_count:100}),e.search(`Device`,{patient:r,_count:100}),e.search(`DeviceRequest`,{patient:r,_count:100}),e.search(`DiagnosticReport`,{subject:r,_count:100}),e.search(`Media`,{subject:r,_count:100}),e.search(`ServiceRequest`,{subject:r,_count:100}),e.search(`Task`,{subject:r,_count:100})])},[]),createCommunication:(e,t,n)=>({resourceType:`Communication`,status:`completed`,subject:WS(e),sender:WS(t),sent:new Date().toISOString(),payload:[{contentString:n}]}),createMedia:(e,t,n)=>({resourceType:`Media`,status:`completed`,subject:WS(e),operator:WS(t),issued:new Date().toISOString(),content:n}),...n})}var lz={section:`_section_pqpwm_1`,hovering:`_hovering_pqpwm_7`,editing:`_editing_pqpwm_11`};function uz(e){let t=Q(),n=BO(e.value),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)();function d(){c(void 0)}function f(){o(void 0)}if((0,b.useEffect)(()=>{t.requestSchema(`PlanDefinition`).then(()=>i(!0)).catch(console.log)},[t]),(0,b.useEffect)(()=>(u(vz(n??{resourceType:`PlanDefinition`,status:`active`})),document.addEventListener(`mouseover`,d),document.addEventListener(`click`,f),()=>{document.removeEventListener(`mouseover`,d),document.removeEventListener(`click`,f)}),[n]),!r||!l)return null;function p(e,t){u(n=>({...n,[e]:t}))}return(0,L.jsx)(`div`,{children:(0,L.jsxs)(GM,{testid:`questionnaire-form`,onSubmit:()=>e.onSubmit(l),children:[(0,L.jsx)(ab,{label:`Plan Title`,py:`md`,defaultValue:l.title,onChange:e=>p(`title`,e.currentTarget.value)}),(0,L.jsx)(dz,{actions:l.action||[],selectedKey:a,setSelectedKey:o,hoverKey:s,setHoverKey:c,onChange:e=>p(`action`,e)}),(0,L.jsx)(KM,{children:`Save`})]})})}function dz(e){function t(t){e.onChange(e.actions.map(e=>e.id===t.id?t:e))}function n(t){e.onChange([...e.actions,t]),e.setSelectedKey(t.id)}function r(t){e.onChange(e.actions.filter(e=>e!==t))}return(0,L.jsxs)(K,{gap:`md`,className:lz.section,children:[e.actions.map(n=>(0,L.jsx)(fz,{action:n,selectedKey:e.selectedKey,setSelectedKey:e.setSelectedKey,hoverKey:e.hoverKey,setHoverKey:e.setHoverKey,onChange:t,onRemove:()=>r(n)},n.id)),(0,L.jsx)(`div`,{children:(0,L.jsx)(W,{variant:`outline`,onClick:e=>{gj(e),n({id:_z()})},children:`Add action`})})]})}function fz(e){let{action:t}=e;function n(t){t.stopPropagation(),e.setSelectedKey(e.action.id)}function r(t){gj(t),e.setHoverKey(e.action.id)}return(0,L.jsx)(`div`,{onClick:n,onMouseOver:r,onFocus:r,children:(0,L.jsx)(pz,{action:t,onChange:e.onChange,selectedKey:e.selectedKey,hoverKey:e.hoverKey,onRemove:e.onRemove})})}function pz(e){let{action:t}=e,[n,r]=(0,b.useState)(),i=Q(),[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(),l=e.selectedKey===e.action.id,u=e.hoverKey===e.action.id;function d(n,r){e.onChange({...t,[n]:r})}let f=jn(lz.section,{[lz.hovering]:u&&!l});return(0,b.useEffect)(()=>{(async()=>{if(!t.definitionCanonical)return;o(!0);let e=await i.readCanonical([`Questionnaire`,`ActivityDefinition`],t.definitionCanonical);r(hz(e)),c(e),o(!1)})().catch(console.error)},[t.definitionCanonical,i]),a?(0,L.jsx)(su,{}):(0,L.jsxs)(vl,{"data-testid":t.id,className:f,p:0,radius:`sm`,withBorder:!0,children:[(0,L.jsxs)(gd,{w:`100%`,p:`xs`,bg:`gray.0`,gap:`md`,align:`center`,justify:`space-between`,children:[(0,L.jsx)(ab,{w:`100%`,name:`actionTitle-${t.id}`,defaultValue:t.title,placeholder:`Title`,onChange:e=>d(`title`,e.currentTarget.value)}),(0,L.jsx)(bu,{"data-testid":`close-button`,onClick:e.onRemove})]}),l&&(0,L.jsxs)(K,{gap:`xl`,p:`md`,children:[(0,L.jsx)(B,{children:(0,L.jsx)(ab,{label:`Task Description`,placeholder:`Enter task description`,name:`actionDescription-${t.id}`,defaultValue:t.description,onChange:e=>d(`description`,e.currentTarget.value)})}),(0,L.jsx)(B,{children:(0,L.jsx)(Tg,{label:`Type of Action`,value:n,onChange:t=>{let n=t.currentTarget.value===`standard`?void 0:t.currentTarget.value;r(n),e.onChange({...e.action,definitionCanonical:n===`standard`?void 0:e.action.definitionCanonical})},data:[{value:`standard`,label:`Standard task`},{value:`questionnaire`,label:`Task with Questionnaire`},{value:`activitydefinition`,label:`Task with Activity Definition`}]})}),n===`questionnaire`&&(0,L.jsxs)(K,{gap:0,children:[(0,L.jsxs)(H,{gap:0,mb:`xs`,children:[(0,L.jsx)(U,{fw:600,children:`Select questionnaire`}),(0,L.jsx)(U,{c:`red`,children:`*`})]}),(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,mb:`sm`,children:[`Questionnaire to be shown in the task in Encounter view. You can create new one from`,` `,(0,L.jsx)(Nd,{href:`/Questionnaire`,target:`_blank`,c:`blue`,children:`questionnaires list`})]}),(0,L.jsx)(mz,{resource:s,resourceType:`Questionnaire`,action:t,onChange:e.onChange,placeholder:`Search for questionnaire`})]}),n===`activitydefinition`&&(0,L.jsxs)(K,{gap:0,children:[(0,L.jsxs)(H,{gap:0,mb:`xs`,children:[(0,L.jsx)(U,{fw:600,children:`Select activity definition`}),(0,L.jsx)(U,{c:`red`,children:`*`})]}),(0,L.jsxs)(U,{size:`sm`,c:`dimmed`,mb:`sm`,children:[`ActivityDefinition.kind resource to be shown in the task in Encounter view. You can create new one from`,` `,(0,L.jsx)(Nd,{href:`/ActivityDefinition`,target:`_blank`,c:`blue`,children:`activity definitions list`})]}),(0,L.jsx)(mz,{resource:s,resourceType:`ActivityDefinition`,action:t,onChange:e.onChange,placeholder:`Search for activity definition`})]})]})]})}function mz(e){let{id:t}=e.action,{resource:n}=e;return(0,L.jsx)(EF,{name:t,placeholder:e.placeholder,resourceType:e.resourceType,defaultValue:n,onChange:t=>{t?e.onChange({...e.action,definitionCanonical:`url`in t?t.url:void 0,definitionUri:`url`in t?void 0:GS(t)}):e.onChange({...e.action,definitionCanonical:void 0})}})}function hz(e){return e===void 0?`standard`:e.resourceType.toLowerCase()}var gz=1;function _z(e){if(e){if(e.startsWith(`id-`)){let t=Number.parseInt(e.substring(3),10);Number.isNaN(t)||(gz=Math.max(gz,t+1))}return e}return`id-`+ gz++}function vz(e){return{...e,action:yz(e.action)}}function yz(e){if(e)return e.map(e=>({...e,id:_z(e.id),action:yz(e.action)}))}var bz={section:`_section_my8o4_1`,hovering:`_hovering_my8o4_10`,editing:`_editing_my8o4_14`,questionBody:`_questionBody_my8o4_20`,topActions:`_topActions_my8o4_24`,bottomActions:`_bottomActions_my8o4_33`,movementActions:`_movementActions_my8o4_44`,movementIcons:`_movementIcons_my8o4_56`,columnAlignment:`_columnAlignment_my8o4_60`,linkIdInput:`_linkIdInput_my8o4_65`,typeSelect:`_typeSelect_my8o4_70`,preserveBreaks:`_preserveBreaks_my8o4_74`};function xz(e){let t=Q(),n=BO(e.questionnaire),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)();function d(){u(void 0)}function f(){c(void 0)}return(0,b.useEffect)(()=>{t.requestSchema(`Questionnaire`).then(()=>i(!0)).catch(console.log)},[t]),(0,b.useEffect)(()=>(o(Az(n??{resourceType:`Questionnaire`,status:`active`})),document.addEventListener(`mouseover`,d),document.addEventListener(`click`,f),()=>{document.removeEventListener(`mouseover`,d),document.removeEventListener(`click`,f)}),[n]),!r||!a?null:(0,L.jsx)(`div`,{children:(0,L.jsxs)(GM,{testid:`questionnaire-form`,onSubmit:()=>e.onSubmit(a),children:[(0,L.jsx)(Sz,{item:a,selectedKey:s,setSelectedKey:c,hoverKey:l,setHoverKey:u,onChange:(t,n)=>{o(t),e.autoSave&&!n&&e.onSubmit&&e.onSubmit(t)}}),(0,L.jsx)(KM,{children:`Save`})]})})}function Sz(e){let t=e.item,n=e.item,r=Dw(e.item),i=r||n.type===HO.group,a=n.linkId??`[untitled]`,o=e.selectedKey===e.item.id,s=e.hoverKey===e.item.id,c=(0,b.useRef)(e.item);(0,b.useLayoutEffect)(()=>{c.current=e.item});function l(t){gj(t),e.setSelectedKey(e.item.id)}function u(t){gj(t),e.setHoverKey(e.item.id)}function d(t){let n=c.current;e.onChange({...n,item:n.item?.map(e=>e.id===t.id?t:e)})}function f(t,n){e.onChange({...e.item,item:[...e.item.item??[],t]},n)}function p(t){e.onChange({...e.item,item:e.item.item?.filter(e=>e!==t)})}function m(t,n){e.onChange({...c.current,[t]:n})}function h(t){e.onChange({...e.item,...t})}function g(t){e.onChange({...e.item,item:e.item.item?.map(e=>e===t?{...e,repeats:!e.repeats}:e)})}function _(t,n){let r=Pz(e.item.item,t,n);e.onChange({...e.item,item:r})}let v=jn(bz.section,{[bz.editing]:o,[bz.hovering]:s&&!o});return(0,L.jsxs)(`div`,{"data-testid":n.linkId,className:v,onClick:l,onMouseOver:u,onFocus:u,children:[(0,L.jsx)(`div`,{className:bz.questionBody,children:o?(0,L.jsxs)(L.Fragment,{children:[r&&(0,L.jsx)(ab,{size:`xl`,defaultValue:t.title,onBlur:e=>m(`title`,e.currentTarget.value)}),!r&&(0,L.jsx)(ah,{autosize:!0,minRows:2,defaultValue:n.text,onBlur:e=>m(`text`,e.currentTarget.value)}),n.type===`reference`&&(0,L.jsx)(Tz,{item:n,onChange:h}),QO(n)&&(0,L.jsx)(Cz,{item:n,onChange:e=>h(e)})]}):(0,L.jsxs)(L.Fragment,{children:[t.title&&(0,L.jsx)(J,{children:t.title}),n.text&&(0,L.jsx)(`div`,{className:bz.preserveBreaks,children:n.text}),!i&&(0,L.jsx)(lI,{item:n,index:0,required:!1,responseItem:{linkId:n.linkId}})]})}),n.item?.map((t,n)=>(0,L.jsx)(`div`,{children:(0,L.jsx)(Sz,{item:t,selectedKey:e.selectedKey,setSelectedKey:e.setSelectedKey,hoverKey:e.hoverKey,isFirst:n===0,isLast:n===(e.item.item??[]).length-1,setHoverKey:e.setHoverKey,onChange:d,onRemove:()=>p(t),onRepeatable:g,onMoveUp:()=>_(n,-1),onMoveDown:()=>_(n,1)})},t.id)),!i&&(0,L.jsx)(`div`,{className:bz.topActions,children:o?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(ab,{size:`xs`,className:bz.linkIdInput,defaultValue:n.linkId,onBlur:e=>m(`linkId`,e.currentTarget.value)}),!i&&(0,L.jsx)(Tg,{size:`xs`,className:bz.typeSelect,defaultValue:n.type,onChange:e=>m(`type`,e.currentTarget.value),data:[{value:`display`,label:`Display`},{value:`boolean`,label:`Boolean`},{value:`decimal`,label:`Decimal`},{value:`integer`,label:`Integer`},{value:`date`,label:`Date`},{value:`dateTime`,label:`Date/Time`},{value:`time`,label:`Time`},{value:`string`,label:`String`},{value:`text`,label:`Text`},{value:`url`,label:`URL`},{value:`choice`,label:`Choice`},{value:`open-choice`,label:`Open Choice`},{value:`attachment`,label:`Attachment`},{value:`reference`,label:`Reference`},{value:`quantity`,label:`Quantity`}]})]}):(0,L.jsx)(`div`,{children:a})}),!r&&(0,L.jsx)(B,{className:bz.movementActions,children:(0,L.jsxs)(B,{className:bz.columnAlignment,children:[!e.isFirst&&(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onMoveUp&&e.onMoveUp()},children:(0,L.jsx)(Yk,{"data-testid":`up-button`,size:15,className:bz.movementIcons})}),!e.isLast&&(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onMoveDown&&e.onMoveDown()},children:(0,L.jsx)(Jk,{"data-testid":`down-button`,size:15,className:bz.movementIcons})})]})}),(0,L.jsxs)(`div`,{className:bz.bottomActions,children:[i&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nd,{href:`#`,onClick:e=>{e.preventDefault(),f({id:kz(),linkId:Oz(`q`),type:`string`,text:`Question`})},children:`Add item`}),(0,L.jsx)(Nd,{href:`#`,onClick:e=>{e.preventDefault(),f({id:kz(),linkId:Oz(`g`),type:`group`,text:`Group`},!0)},children:`Add group`})]}),r&&(0,L.jsx)(Nd,{href:`#`,onClick:e=>{e.preventDefault(),f(Nz(),!0)},children:`Add Page`}),o&&!r&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onRepeatable&&e.onRepeatable(n)},children:n.repeats?`Remove Repeatable`:`Make Repeatable`}),(0,L.jsx)(Nd,{href:`#`,onClick:t=>{t.preventDefault(),e.onRemove&&e.onRemove()},children:`Remove`})]})]})]})}function Cz(e){let t=Tw(`QuestionnaireItemAnswerOption`,`value[x]`),n=e.item.answerOption??[];return(0,L.jsxs)(`div`,{children:[e.item.answerValueSet===void 0?(0,L.jsx)(wz,{options:n,property:t,item:e.item,onChange:e.onChange}):(0,L.jsx)(ab,{placeholder:`Enter Value Set`,defaultValue:e.item.answerValueSet,onChange:t=>e.onChange({...e.item,answerValueSet:t.target.value})}),(0,L.jsxs)(B,{display:`flex`,children:[(0,L.jsx)(Nd,{href:`#`,onClick:t=>{gj(t),e.onChange({...e.item,answerValueSet:void 0,answerOption:[...n,{id:kz()}]})},children:`Add choice`}),(0,L.jsx)(ly,{w:`lg`}),(0,L.jsx)(Nd,{href:`#`,onClick:t=>{gj(t),e.onChange({...e.item,answerOption:[],answerValueSet:``})},children:`Add value set`})]})]})}function wz(e){return(0,L.jsx)(`div`,{children:e.options.map(t=>{let[n,r]=OP({type:`QuestionnaireItemAnswerOption`,value:t},`value`);return(0,L.jsxs)(`div`,{style:{display:`flex`,flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`,width:`80%`},children:[(0,L.jsx)(`div`,{children:(0,L.jsx)(KF,{name:`value[x]`,path:`Questionnaire.answerOption.value[x]`,property:e.property,defaultPropertyType:r,defaultValue:n,onChange:(n,r)=>{let i=[...e.options],a=i.findIndex(e=>e.id===t.id);i[a]={id:t.id,[r]:n},e.onChange({...e.item,answerOption:i})},outcome:void 0},t.id)}),(0,L.jsx)(`div`,{children:(0,L.jsx)(Nd,{href:`#`,onClick:n=>{gj(n),e.onChange({...e.item,answerOption:e.options.filter(e=>e.id!==t.id)})},children:`Remove`})})]},t.id)})})}function Tz(e){let t=dk(e.item)??[];return(0,L.jsxs)(L.Fragment,{children:[t.map((n,r)=>(0,L.jsxs)(H,{children:[(0,L.jsx)(iN,{name:`resourceType`,placeholder:`Resource Type`,defaultValue:n,onChange:r=>{e.onChange(fk(e.item,t.map(e=>e===n?r:e)))}}),(0,L.jsx)(Nd,{href:`#`,onClick:r=>{gj(r),e.onChange(fk(e.item,t.filter(e=>e!==n)))},children:`Remove`})]},`${n}-${r}`)),(0,L.jsx)(Nd,{href:`#`,onClick:n=>{gj(n),e.onChange(fk(e.item,[...t,``]))},children:`Add Resource Type`})]})}var Ez=1,Dz=1;function Oz(e){return e+ Ez++}function kz(){return`id-`+ Dz++}function Az(e){return{...e,id:e.id||kz(),item:jz(e.item)}}function jz(e){if(e)return e.forEach(e=>{e.id?.match(/^id-\d+$/)&&(Dz=Math.max(Dz,Number.parseInt(e.id.substring(3),10)+1)),e.linkId?.match(/^q\d+$/)&&(Ez=Math.max(Ez,Number.parseInt(e.linkId.substring(1),10)+1))}),e.map(e=>({...e,id:e.id||kz(),item:jz(e.item),answerOption:Mz(e.answerOption)}))}function Mz(e){if(e)return e.map(e=>({...e,id:e.id||kz()}))}function Nz(){return{id:kz(),linkId:Oz(`s`),type:`group`,text:`New Page`,extension:[{url:UO,valueCodeableConcept:{coding:[{system:`http://hl7.org/fhir/questionnaire-item-control`,code:`page`}]}}]}}function Pz(e,t,n){let r=e??[],i=t+n;if(i<0||i>=r.length)return r;let a=[...r];return[a[t],a[i]]=[a[i],a[t]],a}var Fz={section:`_section_4m5it_1`},Iz=[`gender`,`age`,`gestationalAge`,`context`,`appliesTo`,`category`],Lz={definition:{resourceType:`ObservationDefinition`,code:{text:``}},onSubmit:()=>{}};function Rz(e){e=Object.assign(Lz,e);let t=e.definition,[n,r]=(0,b.useState)([]),[i,a]=(0,b.useState)(1),[o,s]=(0,b.useState)(1);return(0,b.useEffect)(()=>{r(Hz(Vz(t,s).qualifiedInterval||[],a))},[t]),(0,L.jsxs)(GM,{testid:`reference-range-editor`,onSubmit:c,children:[(0,L.jsx)(K,{children:n.map(e=>(0,L.jsx)(zz,{unit:Wz(t.quantitativeDetails?.unit),onChange:d,onAdd:f,onRemove:p,onRemoveGroup:u,intervalGroup:e},`group-${e.id}`))}),(0,L.jsx)(hu,{title:`Add Group`,variant:`subtle`,size:`sm`,onClick:e=>{gj(e),l({id:`group-id-${i}`,filters:{},intervals:[]}),a(e=>e+1)},children:(0,L.jsx)(fA,{})}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(KM,{children:`Save`})})]});function c(){let r=n.flatMap(e=>e.intervals).filter(e=>!Gz(e));e.onSubmit({...t,qualifiedInterval:r})}function l(e){r(t=>[...t,e])}function u(e){r(t=>t.filter(t=>t.id!==e.id))}function d(e,t){r(n=>{n=[...n];let r=n.find(t=>t.id===e),i=r?.intervals.findIndex(e=>e.id===t.id);return i!==void 0&&r?.intervals[i]&&(r.intervals[i]=t),n})}function f(e,t){t.id===void 0&&(t.id=`id-${o}`,s(e=>e+1)),r(n=>{n=[...n];let r=n.findIndex(t=>t.id===e);if(r!==-1){let e={...n[r]};t={...t,...e.filters},e.intervals=[...e.intervals,t],n[r]=e}return n})}function p(e,t){r(n=>{n=[...n];let r=n.find(t=>t.id===e);return r&&(r.intervals=r.intervals.filter(e=>e.id!==t.id)),n})}}function zz(e){let{intervalGroup:t,unit:n}=e;return(0,L.jsx)(IN,{"data-testid":t.id,className:Fz.section,children:(0,L.jsxs)(K,{gap:`lg`,children:[(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(hu,{title:`Remove Group`,variant:`subtle`,"data-testid":`remove-group-button-${t.id}`,size:`sm`,onClick:n=>{gj(n),e.onRemoveGroup(t)},children:(0,L.jsx)(dA,{})},`remove-group-button-${t.id}`)}),(0,L.jsx)(Bz,{intervalGroup:t,onChange:e.onChange}),(0,L.jsx)(um,{}),t.intervals.map(n=>(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsxs)(H,{children:[(0,L.jsx)(ab,{"data-testid":`condition-${n.id}`,defaultValue:n.condition,label:`Condition: `,size:`sm`,onChange:r=>{gj(r),e.onChange(t.id,{...n,condition:r.currentTarget.value.trim()})}},`condition-${n.id}`),(0,L.jsx)(hu,{title:`Remove Interval`,variant:`subtle`,size:`sm`,"data-testid":`remove-interval-${n.id}`,onClick:r=>{gj(r),e.onRemove(t.id,n)},children:(0,L.jsx)(dA,{})},`remove-interval-${n.id}`)]}),(0,L.jsx)(xF,{path:``,onChange:r=>{e.onChange(t.id,{...n,range:r})},name:`range-${n.id}`,defaultValue:n.range},`range-${n.id}`)]},`interval-${n.id}`)),(0,L.jsx)(hu,{title:`Add Interval`,variant:`subtle`,size:`sm`,onClick:r=>{gj(r),e.onAdd(t.id,{range:{low:{unit:n},high:{unit:n}}})},children:(0,L.jsx)(fA,{})})]})})}function Bz(e){let{intervalGroup:t,onChange:n}=e,r=t.filters.age??{},i={low:r.low?.unit?r.low:{...r.low,unit:`years`,system:`http://unitsofmeasure.org`},high:r.high?.unit?r.high:{...r.high,unit:`years`,system:`http://unitsofmeasure.org`}};return(0,L.jsxs)(K,{style:{maxWidth:`50%`},children:[(0,L.jsx)(H,{children:(0,L.jsx)(Tg,{data:[``,`male`,`female`],label:`Gender:`,defaultValue:t.filters.gender||``,onChange:e=>{for(let r of t.intervals){let i=e.currentTarget.value;i===``&&(i=void 0),n(t.id,{...r,gender:i})}}})}),(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(U,{component:`label`,htmlFor:`div-age-${t.id}`,children:`Age:`}),(0,L.jsx)(`div`,{id:`div-age-${t.id}`,children:(0,L.jsx)(xF,{path:``,name:`age-${t.id}`,defaultValue:i,onChange:e=>{for(let r of t.intervals)n(t.id,{...r,age:e})}},`age-${t.id}`)})]}),(0,L.jsx)(Tg,{data:[``,`pre-puberty`,`follicular`,`midcycle`,`luteal`,`postmenopausal`],label:`Endocrine:`,defaultValue:t.filters.context?.text||``,onChange:e=>{for(let r of t.intervals){let i=e.currentTarget.value;i===``?(i=void 0,n(t.id,{...r,context:void 0})):n(t.id,{...r,context:{text:i,coding:[{code:i,system:`http://terminology.hl7.org/CodeSystem/referencerange-meaning`}]}})}}}),(0,L.jsx)(Tg,{data:[``,`reference`,`critical`,`absolute`],label:`Category: `,defaultValue:t.filters.category,onChange:e=>{for(let r of t.intervals){let i=e.currentTarget.value;i===``?n(t.id,{...r,category:void 0}):n(t.id,{...r,category:i})}}})]})}function Vz(e,t){let n=e.qualifiedInterval||[],r=Math.max(...n.map(e=>{let t=Number.parseInt(e.id?.substring(3)||``,10);return Number.isNaN(t)?-1/0:t}))+1;return Number.isFinite(r)||(r=1),e={...e,qualifiedInterval:n.map(e=>({...e,id:e.id||`id-${r++}`}))},t(r),e}function Hz(e,t){let n=1,r={};for(let t of e){let e=Uz(t);e in r||(r[e]={id:`group-id-${n++}`,filters:Object.fromEntries(Iz.map(e=>[e,t[e]])),intervals:[]}),r[e].intervals.push(t)}return t(n),Object.values(r)}function Uz(e){return[`gender=${e.gender}`,`age=${iw(e.age)}`,`gestationalAge=${iw(e.gestationalAge)}`,`context=${e.context?.text}`,`appliesTo=${e.appliesTo?.map(e=>e.text).join(`+`)}`,`category=${e.category}`].join(`:`)}function Wz(e){return e&&(AC(e,`http://unitsofmeasure.org`)||e.text)}function Gz(e){return e.range?.low?.value===void 0&&e.range?.high?.value===void 0}function Kz(e){let t=Q(),n=BO(e.value),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)();if((0,b.useEffect)(()=>{n&&!r&&(t.executeBatch(s(n)).then(o).catch(console.log),i(!0))},[t,n,r]),!n||!a)return null;return(0,L.jsx)(wm,{children:n.action?.map((t,n)=>{let r=t.resource&&c(t.resource),i=r?.input?.[0]?.valueReference,a=r?.output?.[0]?.valueReference;return(0,L.jsxs)(b.Fragment,{children:[(0,L.jsx)(wm.Col,{span:1,p:`md`,children:r?.status===`completed`?(0,L.jsx)(cA,{}):(0,L.jsx)(nj,{color:`gray`})}),(0,L.jsxs)(wm.Col,{span:9,p:`xs`,children:[(0,L.jsx)(U,{fw:500,children:t.title}),t.description&&(0,L.jsx)(`div`,{children:t.description}),(0,L.jsxs)(`div`,{children:[`Last edited by\xA0`,(0,L.jsx)(MI,{value:r?.meta?.author}),`\xA0on\xA0`,ZC(r?.meta?.lastUpdated)]}),(0,L.jsxs)(`div`,{children:[`Status: `,(0,L.jsx)(kI,{status:r?.status||`unknown`})]})]}),(0,L.jsxs)(wm.Col,{span:2,p:`md`,children:[i&&!a&&(0,L.jsx)(W,{onClick:()=>e.onStart(r,i),children:`Start`}),i&&a&&(0,L.jsx)(W,{onClick:()=>e.onEdit(r,i,a),children:`Edit`})]})]},`action-${n}`)})});function s(e){let t=[];if(e.action)for(let n of e.action)n.resource?.reference&&t.push({request:{method:`GET`,url:n.resource.reference}});return{resourceType:`Bundle`,type:`batch`,entry:t}}function c(e){for(let t of a?.entry??[])if(t.resource&&e.reference===GS(t.resource))return t.resource}}function qz(e,t){return Yz(Jz(e,t),e,t)}function Jz(e,t){let n=e.length,r=t.length,i=n+r+1,a=1+2*i,o=Math.trunc(a/2),s=Array(a);s[o+1]={i:0,j:-1,prev:void 0,snake:!0};for(let a=0;a<i;a++){for(let i=-a;i<=a;i+=2){let c=o+i,l=c+1,u=c-1,d=s[l],f=s[u],p,m=0;i===-a||i!==a&&f.i<d.i?(m=d.i,p=d):(m=f.i+1,p=f),s[u]=void 0;let h=m-i,g={i:m,j:h,prev:Xz(p),snake:!1};for(;m<n&&h<r&&e[m]===t[h];)m++,h++;if(m>g.i&&(g={i:m,j:h,prev:g,snake:!0}),s[c]=g,m>=n&&h>=r)return s[c]}s[o+a-1]=void 0}}function Yz(e,t,n){let r=[],i=e;for(i.snake&&(i=i.prev);i?.prev&&i.prev.j>=0;){let e=i.i,a=i.j;i=i.prev;let o=i.i,s=i.j,c={position:o,lines:t.slice(o,e)},l={position:s,lines:n.slice(s,a)},u;u=c.lines.length===0&&l.lines.length>0?`insert`:c.lines.length>0&&l.lines.length===0?`delete`:`change`,r.push({original:c,revised:l,type:u}),i.snake&&(i=i.prev)}return r}function Xz(e){return e&&!e.snake&&e.prev?e.prev:e}function Zz(e){let t=(e.entry??[]).filter(e=>!!e.resource).map(e=>({meta:e.resource?.meta,lines:rC(e.resource,!0).match(/[^\r\n]+/g)})).sort((e,t)=>e.meta.lastUpdated.localeCompare(t.meta.lastUpdated));if(!t.length)return[];let n=t[0].lines.map(e=>({id:t[0].meta.versionId,meta:t[0].meta,value:e,span:1}));return Qz(n,t),$z(n),n}function Qz(e,t){for(let n=1;n<t.length;n++){let r=qz(t[n-1].lines,t[n].lines);for(let i of r){let r=i.original.position,a=i.original.lines,o=i.revised.lines;if((i.type===`delete`||i.type===`change`)&&e.splice(r,a.length),i.type===`insert`||i.type===`change`)for(let a=0;a<i.revised.lines.length;a++)e.splice(r+a,0,{id:t[n].meta.versionId,meta:t[n].meta,value:o[a],span:1})}}}function $z(e){let t=0;for(;t<e.length;){let n=t;for(;n<e.length&&e[n].id===e[t].id;)e[n].span=-1,n++;e[t].span=n-t,t=n}}var eB={container:`_container_1tyf3_1`,root:`_root_1tyf3_5`,startRow:`_startRow_1tyf3_20`,normalRow:`_normalRow_1tyf3_25`,author:`_author_1tyf3_30`,dateTime:`_dateTime_1tyf3_34`,lineNumber:`_lineNumber_1tyf3_40`,line:`_line_1tyf3_40`,pre:`_pre_1tyf3_55`};function tB(e,t){return`/${e.resourceType}/${e.id}/_history/${t}`}function nB(e){let t=Math.floor((Date.now()-Date.parse(e))/1e3),n=Math.floor(t/31536e3);if(n>0)return rB(n,`year`);let r=Math.floor(t/2592e3);if(r>0)return rB(r,`month`);let i=Math.floor(t/86400);if(i>0)return rB(i,`day`);let a=Math.floor(t/3600);if(a>0)return rB(a,`hour`);let o=Math.floor(t/60);return o>0?rB(o,`minute`):rB(t,`second`)}function rB(e,t){return`${e} ${e===1?t:t+`s`} ago`}function iB(e){let t=Q(),[n,r]=(0,b.useState)(e.history);if((0,b.useEffect)(()=>{!e.history&&e.resourceType&&e.id&&t.readHistory(e.resourceType,e.id).then(r).catch(console.log)},[t,e.history,e.resourceType,e.id]),!n)return(0,L.jsx)(`div`,{children:`Loading...`});let i=n.entry?.[0]?.resource;if(!i)return null;let a=Zz(n);return(0,L.jsx)(`div`,{className:eB.container,children:(0,L.jsx)(`table`,{className:eB.root,children:(0,L.jsx)(`tbody`,{children:a.map((e,t)=>(0,L.jsxs)(`tr`,{className:e.span>0?eB.startRow:eB.normalRow,children:[e.span>0&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`td`,{className:eB.author,rowSpan:e.span,children:(0,L.jsx)(MI,{value:e.meta.author,link:!0,fz:`xs`})}),(0,L.jsx)(`td`,{className:eB.dateTime,rowSpan:e.span,children:(0,L.jsx)(Sj,{to:tB(i,e.meta.versionId),fz:`xs`,children:nB(e.meta.lastUpdated)})})]}),(0,L.jsx)(`td`,{className:eB.lineNumber,children:t+1}),(0,L.jsx)(`td`,{className:eB.line,children:(0,L.jsx)(`pre`,{className:eB.pre,children:e.value})})]},`row-`+t))})})})}var aB={removed:`_removed_el5zk_1`,added:`_added_el5zk_6`};function oB(e){let t=e.original,n=e.revised;return e.ignoreMeta&&(t={...t,meta:void 0},n={...n,meta:void 0}),(0,L.jsx)(`pre`,{style:{color:`gray`},children:qz(rC(t,!0).match(/[^\r\n]+/g),rC(n,!0).match(/[^\r\n]+/g)).map((e,t)=>(0,L.jsx)(sB,{delta:e},`delta`+t))})}function sB(e){return(0,L.jsxs)(L.Fragment,{children:[`...`,(0,L.jsx)(`br`,{}),e.delta.original.lines.length>0&&(0,L.jsx)(`div`,{className:aB.removed,children:e.delta.original.lines.join(`
|
|
207
|
+
`)}),e.delta.revised.lines.length>0&&(0,L.jsx)(`div`,{className:aB.added,children:e.delta.revised.lines.join(`
|
|
208
|
+
`)}),`...`,(0,L.jsx)(`br`,{})]})}var cB={splitButton:`_splitButton_1i0gi_1`,menuControl:`_menuControl_1i0gi_6`};function lB(e){let{outcome:t}=e,n=Q(),r=BO(e.defaultValue),i=r?.resourceType,[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(),l=n.getAccessPolicy(),u=xr();(0,b.useEffect)(()=>{if(r)if(e.profileUrl){let t=e.profileUrl;n.requestProfileSchema(e.profileUrl,{expandProfile:!0}).then(()=>{let e=tS(t);e?(o(!0),c(tO(r,e))):console.error(`Schema not found for ${t}`)}).catch(e=>{console.error(`Error in requestProfileSchema`,e)})}else n.requestSchema(i).then(()=>{c(r),o(!0)}).catch(console.log)},[n,r,i,e.profileUrl]);let d=(0,b.useMemo)(()=>r&&_E(r,pE.READ,l),[l,r]),f=(0,b.useMemo)(()=>n.isSuperAdmin()||!l||!cC(s?.resourceType)?!0:hE(l,s?.resourceType),[n,l,s?.resourceType]);return!a||!s?(0,L.jsx)(`div`,{children:`Loading...`}):f?(0,L.jsxs)(`form`,{noValidate:!0,autoComplete:`off`,onSubmit:t=>{t.preventDefault(),e.onSubmit&&e.onSubmit(s)},children:[(0,L.jsxs)(K,{mb:`xl`,children:[(0,L.jsx)(QP,{title:`Resource Type`,htmlFor:`resourceType`,outcome:t,children:(0,L.jsx)(ab,{name:`resourceType`,defaultValue:s.resourceType,disabled:!0})}),(0,L.jsx)(QP,{title:`ID`,htmlFor:`id`,outcome:t,children:(0,L.jsx)(ab,{name:`id`,defaultValue:s.id,disabled:!0})})]}),(0,L.jsx)($F,{path:s.resourceType,valuePath:s.resourceType,typeName:i,defaultValue:s,outcome:t,onChange:c,profileUrl:e.profileUrl,accessPolicyResource:d}),(0,L.jsxs)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,gap:0,children:[(0,L.jsx)(W,{type:`submit`,className:jn((e.onPatch||e.onDelete)&&cB.splitButton),children:r?.id?`Update`:`Create`}),(e.onPatch||e.onDelete)&&(0,L.jsxs)(G,{transitionProps:{transition:`pop`},position:`bottom-end`,withinPortal:!0,children:[(0,L.jsx)(G.Target,{children:(0,L.jsx)(hu,{variant:`filled`,color:u.primaryColor,size:36,className:cB.menuControl,"aria-label":`More actions`,children:(0,L.jsx)(lA,{size:14,stroke:1.5})})}),(0,L.jsxs)(G.Dropdown,{children:[e.onPatch&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14,stroke:1.5}),onClick:()=>{e.onPatch(s)},children:`Patch`}),e.onDelete&&(0,L.jsx)(G.Item,{color:`red`,leftSection:(0,L.jsx)(sj,{size:14,stroke:1.5,color:`red`}),onClick:()=>{e.onDelete(s)},children:`Delete`})]})]})]})]}):(0,L.jsxs)(Ed,{color:`red`,title:`Permission denied`,icon:(0,L.jsx)(qk,{}),children:[`Your access level prevents you from editing and creating `,s.resourceType,` resources.`]})}function uB(e){let t=Q(),[n,r]=(0,b.useState)(e.history);return(0,b.useEffect)(()=>{!e.history&&e.resourceType&&e.id&&t.readHistory(e.resourceType,e.id).then(r).catch(console.log)},[t,e.history,e.resourceType,e.id]),n?(0,L.jsxs)(q,{withTableBorder:!0,withRowBorders:!0,withColumnBorders:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Author`}),(0,L.jsx)(q.Th,{children:`Date`}),(0,L.jsx)(q.Th,{children:`Version`})]})}),(0,L.jsx)(q.Tbody,{children:n.entry?.map((e,t)=>(0,L.jsx)(dB,{entry:e},`entry-`+t))})]}):(0,L.jsx)(`div`,{children:`Loading...`})}function dB(e){let{response:t,resource:n}=e.entry;return n?(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:(0,L.jsx)(NI,{value:n.meta?.author,link:!0})}),(0,L.jsx)(q.Td,{children:ZC(n.meta?.lastUpdated)}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(Sj,{to:fB(n),children:n.meta?.versionId})})]}):(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:3,children:Lx(t?.outcome)})})}function fB(e){return`/${e.resourceType}/${e.id}/_history/${e.meta?.versionId}`}function pB(e){let{serviceRequest:t,...n}=e;return(0,L.jsx)(mL,{value:t,loadTimelineResources:async(e,t,n)=>{let r=`${t}/${n}`;return Promise.allSettled([e.readHistory(`ServiceRequest`,n),e.search(`Communication`,{"based-on":r,_count:100}),e.search(`DiagnosticReport`,{"based-on":r,_count:100}),e.search(`Media`,{"based-on":r,_count:100}),e.search(`DocumentReference`,{related:r,_count:100}),e.search(`Task`,{_filter:`based-on eq ${r} or focus eq ${r} or subject eq ${r}`,_count:100})])},createCommunication:(e,t,n)=>({resourceType:`Communication`,status:`completed`,basedOn:[WS(e)],subject:e.subject,sender:WS(t),sent:new Date().toISOString(),payload:[{contentString:n}]}),createMedia:(e,t,n)=>({resourceType:`Media`,status:`completed`,basedOn:[WS(e)],subject:e.subject,operator:WS(t),issued:new Date().toISOString(),content:n}),...n})}function mB(e){let t=Q(),{client:n,patient:r,encounter:i,children:a,...o}=e,s=BO(r),c=BO(i);function l(){let a=r,o=i;if(n.launchIdentifierSystems?.length){let e=n.launchIdentifierSystems.find(e=>e.resourceType===`Patient`);if(a&&s&&e?.system){let t=s.identifier?.find(t=>t.system===e.system);t&&(a={...r,identifier:t})}let t=n.launchIdentifierSystems.find(e=>e.resourceType===`Encounter`);if(o&&c&&t?.system){let e=c.identifier?.find(e=>e.system===t.system);e&&(o={...i,identifier:e})}}t.createResource({resourceType:`SmartAppLaunch`,patient:a,encounter:o,fhirContext:e.fhirContext}).then(e=>{let r=new URL(n.launchUri);r.searchParams.set(`iss`,LC(t.fhirUrl().toString())),r.searchParams.set(`launch`,e.id),window.open(r.toString(),`_blank`)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return(0,L.jsx)(Nd,{onClick:()=>l(),...o,children:a})}var hB=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.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`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),gB=o(((e,t)=>{t.exports=hB()})),_B=o((e=>{var t=gB(),n=m(),r=Xi();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var f=Object.assign,p=Symbol.for(`react.element`),h=Symbol.for(`react.transitional.element`),g=Symbol.for(`react.portal`),_=Symbol.for(`react.fragment`),v=Symbol.for(`react.strict_mode`),y=Symbol.for(`react.profiler`),b=Symbol.for(`react.consumer`),x=Symbol.for(`react.context`),S=Symbol.for(`react.forward_ref`),C=Symbol.for(`react.suspense`),w=Symbol.for(`react.suspense_list`),T=Symbol.for(`react.memo`),E=Symbol.for(`react.lazy`),D=Symbol.for(`react.activity`),O=Symbol.for(`react.memo_cache_sentinel`),k=Symbol.iterator;function A(e){return typeof e!=`object`||!e?null:(e=k&&e[k]||e[`@@iterator`],typeof e==`function`?e:null)}var j=Symbol.for(`react.client.reference`);function M(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===j?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case _:return`Fragment`;case y:return`Profiler`;case v:return`StrictMode`;case C:return`Suspense`;case w:return`SuspenseList`;case D:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case g:return`Portal`;case x:return e.displayName||`Context`;case b:return(e._context.displayName||`Context`)+`.Consumer`;case S:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case T:return t=e.displayName||null,t===null?M(e.type)||`Memo`:t;case E:t=e._payload,e=e._init;try{return M(e(t))}catch{}}return null}var N=Array.isArray,P=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ee={pending:!1,data:null,method:null,action:null},te=[],ne=-1;function re(e){return{current:e}}function ie(e){0>ne||(e.current=te[ne],te[ne]=null,ne--)}function ae(e,t){ne++,te[ne]=e.current,e.current=t}var oe=re(null),se=re(null),ce=re(null),le=re(null);function ue(e,t){switch(ae(ce,t),ae(se,e),ae(oe,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Xd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Xd(t),e=Zd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ie(oe),ae(oe,e)}function de(){ie(oe),ie(se),ie(ce)}function fe(e){e.memoizedState!==null&&ae(le,e);var t=oe.current,n=Zd(t,e.type);t!==n&&(ae(se,e),ae(oe,n))}function pe(e){se.current===e&&(ie(oe),ie(se)),le.current===e&&(ie(le),sp._currentValue=ee)}var me,he;function ge(e){if(me===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);me=t&&t[1]||``,he=-1<e.stack.indexOf(`
|
|
209
209
|
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
210
210
|
`+me+e+he}var _e=!1;function ve(e,t){if(!e||_e)return``;_e=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,`props`,{set:function(){throw Error()}}),typeof Reflect==`object`&&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}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,`name`,{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
211
211
|
`),l=s.split(`
|
|
@@ -213,17 +213,17 @@ ${o?`${s(`light`)}{${o}}`:``}`}function Er({color:e,theme:t,autoContrast:n}){ret
|
|
|
213
213
|
`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{_e=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?ge(n):``}function ye(e,t){switch(e.tag){case 26:case 27:case 5:return ge(e.type);case 16:return ge(`Lazy`);case 13:return e.child!==t&&t!==null?ge(`Suspense Fallback`):ge(`Suspense`);case 19:return ge(`SuspenseList`);case 0:case 15:return ve(e.type,!1);case 11:return ve(e.type.render,!1);case 1:return ve(e.type,!0);case 31:return ge(`Activity`);default:return``}}function be(e){try{var t=``,n=null;do t+=ye(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
214
214
|
Error generating stack: `+e.message+`
|
|
215
215
|
`+e.stack}}var xe=Object.prototype.hasOwnProperty,Se=t.unstable_scheduleCallback,Ce=t.unstable_cancelCallback,we=t.unstable_shouldYield,Te=t.unstable_requestPaint,Ee=t.unstable_now,De=t.unstable_getCurrentPriorityLevel,Oe=t.unstable_ImmediatePriority,ke=t.unstable_UserBlockingPriority,Ae=t.unstable_NormalPriority,je=t.unstable_LowPriority,Me=t.unstable_IdlePriority,Ne=t.log,Pe=t.unstable_setDisableYieldValue,Fe=null,Ie=null;function Le(e){if(typeof Ne==`function`&&Pe(e),Ie&&typeof Ie.setStrictMode==`function`)try{Ie.setStrictMode(Fe,e)}catch{}}var Re=Math.clz32?Math.clz32:Ve,ze=Math.log,Be=Math.LN2;function Ve(e){return e>>>=0,e===0?32:31-(ze(e)/Be|0)|0}var He=256,Ue=262144,We=4194304;function Ge(e){var t=e&42;if(t!==0)return t;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:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ke(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ge(n))):i=Ge(o):i=Ge(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ge(n))):i=Ge(o)):i=Ge(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function qe(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function I(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32: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 t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Je(){var e=We;return We<<=1,!(We&62914560)&&(We=4194304),e}function Ye(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Xe(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Ze(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-Re(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&Qe(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Qe(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Re(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function L(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Re(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function $e(e,t){var n=t&-t;return n=n&42?1:et(n),(n&(e.suspendedLanes|t))===0?n:0}function et(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;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:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function tt(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function nt(){var e=F.p;return e===0?(e=window.event,e===void 0?32:Cp(e.type)):e}function rt(e,t){var n=F.p;try{return F.p=e,t()}finally{F.p=n}}var it=Math.random().toString(36).slice(2),at=`__reactFiber$`+it,ot=`__reactProps$`+it,st=`__reactContainer$`+it,ct=`__reactEvents$`+it,lt=`__reactListeners$`+it,ut=`__reactHandles$`+it,dt=`__reactResources$`+it,ft=`__reactMarker$`+it;function pt(e){delete e[at],delete e[ot],delete e[ct],delete e[lt],delete e[ut]}function mt(e){var t=e[at];if(t)return t;for(var n=e.parentNode;n;){if(t=n[st]||n[at]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=bf(e);e!==null;){if(n=e[at])return n;e=bf(e)}return t}e=n,n=e.parentNode}return null}function ht(e){if(e=e[at]||e[st]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function gt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function _t(e){var t=e[dt];return t||=e[dt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function vt(e){e[ft]=!0}var yt=new Set,bt={};function xt(e,t){St(e,t),St(e+`Capture`,t)}function St(e,t){for(bt[e]=t,e=0;e<t.length;e++)yt.add(t[e])}var Ct=RegExp(`^[: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]*$`),wt={},Tt={};function Et(e){return xe.call(Tt,e)?!0:xe.call(wt,e)?!1:Ct.test(e)?Tt[e]=!0:(wt[e]=!0,!1)}function Dt(e,t,n){if(Et(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}function Ot(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function kt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function At(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function jt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function Mt(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Nt(e){if(!e._valueTracker){var t=jt(e)?`checked`:`value`;e._valueTracker=Mt(e,t,``+e[t])}}function Pt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=jt(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function Ft(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var It=/[\n"\\]/g;function Lt(e){return e.replace(It,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function Rt(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+At(t)):e.value!==``+At(t)&&(e.value=``+At(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Bt(e,o,At(n)):Bt(e,o,At(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+At(s):e.removeAttribute(`name`)}function zt(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){Nt(e);return}n=n==null?``:``+At(n),t=t==null?n:``+At(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),Nt(e)}function Bt(e,t,n){t===`number`&&Ft(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function Vt(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+At(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Ht(e,t,n){if(t!=null&&(t=``+At(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+At(n)}function Ut(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(N(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=At(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),Nt(e)}function Wt(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Gt=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function Kt(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Gt.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function qt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&Kt(e,a,r)}else for(var o in t)t.hasOwnProperty(o)&&Kt(e,o,t[o])}function Jt(e){if(e.indexOf(`-`)===-1)return!1;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 Yt=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),Xt=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Zt(e){return Xt.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function Qt(){}var $t=null;function en(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var tn=null,nn=null;function rn(e){var t=ht(e);if(t&&(e=t.stateNode)){var n=e[ot]||null;a:switch(e=t.stateNode,t.type){case`input`:if(Rt(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+Lt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[ot]||null;if(!a)throw Error(i(90));Rt(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&Pt(r)}break a;case`textarea`:Ht(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&Vt(e,!!n.multiple,t,!1)}}}var an=!1;function on(e,t,n){if(an)return e(t,n);an=!0;try{return e(t)}finally{if(an=!1,(tn!==null||nn!==null)&&(Du(),tn&&(t=tn,e=nn,nn=tn=null,rn(t),e)))for(t=0;t<e.length;t++)rn(e[t])}}function sn(e,t){var n=e.stateNode;if(n===null)return null;var r=n[ot]||null;if(r===null)return null;n=r[t];a:switch(t){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)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var cn=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),ln=!1;if(cn)try{var un={};Object.defineProperty(un,`passive`,{get:function(){ln=!0}}),window.addEventListener(`test`,un,un),window.removeEventListener(`test`,un,un)}catch{ln=!1}var dn=null,fn=null,pn=null;function mn(){if(pn)return pn;var e,t=fn,n=t.length,r,i=`value`in dn?dn.value:dn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return pn=i.slice(e,1<r?1-r:void 0)}function hn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function gn(){return!0}function _n(){return!1}function vn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?gn:_n,this.isPropagationStopped=_n,this}return f(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=gn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=gn)},persist:function(){},isPersistent:gn}),t}var yn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},bn=vn(yn),xn=f({},yn,{view:0,detail:0}),Sn=vn(xn),Cn,wn,Tn,En=f({},xn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ln,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==Tn&&(Tn&&e.type===`mousemove`?(Cn=e.screenX-Tn.screenX,wn=e.screenY-Tn.screenY):wn=Cn=0,Tn=e),Cn)},movementY:function(e){return`movementY`in e?e.movementY:wn}}),Dn=vn(En),On=vn(f({},En,{dataTransfer:0})),kn=vn(f({},xn,{relatedTarget:0})),An=vn(f({},yn,{animationName:0,elapsedTime:0,pseudoElement:0})),jn=vn(f({},yn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Mn=vn(f({},yn,{data:0})),Nn={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Pn={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:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},Fn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function In(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Fn[e])?!!t[e]:!1}function Ln(){return In}var Rn=vn(f({},xn,{key:function(e){if(e.key){var t=Nn[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=hn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Pn[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ln,charCode:function(e){return e.type===`keypress`?hn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?hn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),zn=vn(f({},En,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Bn=vn(f({},xn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ln})),Vn=vn(f({},yn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Hn=vn(f({},En,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Un=vn(f({},yn,{newState:0,oldState:0})),Wn=[9,13,27,32],Gn=cn&&`CompositionEvent`in window,Kn=null;cn&&`documentMode`in document&&(Kn=document.documentMode);var qn=cn&&`TextEvent`in window&&!Kn,Jn=cn&&(!Gn||Kn&&8<Kn&&11>=Kn),Yn=` `,Xn=!1;function Zn(e,t){switch(e){case`keyup`:return Wn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function Qn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var $n=!1;function er(e,t){switch(e){case`compositionend`:return Qn(t);case`keypress`:return t.which===32?(Xn=!0,Yn):null;case`textInput`:return e=t.data,e===Yn&&Xn?null:e;default:return null}}function tr(e,t){if($n)return e===`compositionend`||!Gn&&Zn(e,t)?(e=mn(),pn=fn=dn=null,$n=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return Jn&&t.locale!==`ko`?null:t.data;default:return null}}var nr={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function rr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!nr[e.type]:t===`textarea`}function ir(e,t,n,r){tn?nn?nn.push(r):nn=[r]:tn=r,t=Pd(t,`onChange`),0<t.length&&(n=new bn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var ar=null,or=null;function sr(e){Dd(e,0)}function cr(e){if(Pt(gt(e)))return e}function lr(e,t){if(e===`change`)return t}var ur=!1;if(cn){var dr;if(cn){var fr=`oninput`in document;if(!fr){var pr=document.createElement(`div`);pr.setAttribute(`oninput`,`return;`),fr=typeof pr.oninput==`function`}dr=fr}else dr=!1;ur=dr&&(!document.documentMode||9<document.documentMode)}function mr(){ar&&(ar.detachEvent(`onpropertychange`,hr),or=ar=null)}function hr(e){if(e.propertyName===`value`&&cr(or)){var t=[];ir(t,or,e,en(e)),on(sr,t)}}function gr(e,t,n){e===`focusin`?(mr(),ar=t,or=n,ar.attachEvent(`onpropertychange`,hr)):e===`focusout`&&mr()}function _r(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return cr(or)}function vr(e,t){if(e===`click`)return cr(t)}function yr(e,t){if(e===`input`||e===`change`)return cr(t)}function br(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var xr=typeof Object.is==`function`?Object.is:br;function Sr(e,t){if(xr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!xe.call(t,i)||!xr(e[i],t[i]))return!1}return!0}function Cr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function wr(e,t){var n=Cr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Cr(n)}}function Tr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Tr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Er(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Ft(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ft(e.document)}return t}function Dr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var Or=cn&&`documentMode`in document&&11>=document.documentMode,kr=null,Ar=null,jr=null,Mr=!1;function Nr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Mr||kr==null||kr!==Ft(r)||(r=kr,`selectionStart`in r&&Dr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),jr&&Sr(jr,r)||(jr=r,r=Pd(Ar,`onSelect`),0<r.length&&(t=new bn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=kr)))}function Pr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Fr={animationend:Pr(`Animation`,`AnimationEnd`),animationiteration:Pr(`Animation`,`AnimationIteration`),animationstart:Pr(`Animation`,`AnimationStart`),transitionrun:Pr(`Transition`,`TransitionRun`),transitionstart:Pr(`Transition`,`TransitionStart`),transitioncancel:Pr(`Transition`,`TransitionCancel`),transitionend:Pr(`Transition`,`TransitionEnd`)},Ir={},Lr={};cn&&(Lr=document.createElement(`div`).style,`AnimationEvent`in window||(delete Fr.animationend.animation,delete Fr.animationiteration.animation,delete Fr.animationstart.animation),`TransitionEvent`in window||delete Fr.transitionend.transition);function Rr(e){if(Ir[e])return Ir[e];if(!Fr[e])return e;var t=Fr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Lr)return Ir[e]=t[n];return e}var zr=Rr(`animationend`),Br=Rr(`animationiteration`),Vr=Rr(`animationstart`),Hr=Rr(`transitionrun`),Ur=Rr(`transitionstart`),Wr=Rr(`transitioncancel`),Gr=Rr(`transitionend`),Kr=new Map,qr=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);qr.push(`scrollEnd`);function Jr(e,t){Kr.set(e,t),xt(t,[e])}var Yr=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},Xr=[],Zr=0,Qr=0;function $r(){for(var e=Zr,t=Qr=Zr=0;t<e;){var n=Xr[t];Xr[t++]=null;var r=Xr[t];Xr[t++]=null;var i=Xr[t];Xr[t++]=null;var a=Xr[t];if(Xr[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&ri(n,i,a)}}function ei(e,t,n,r){Xr[Zr++]=e,Xr[Zr++]=t,Xr[Zr++]=n,Xr[Zr++]=r,Qr|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function ti(e,t,n,r){return ei(e,t,n,r),ii(e)}function ni(e,t){return ei(e,null,null,t),ii(e)}function ri(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Re(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function ii(e){if(50<yu)throw yu=0,bu=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var R={};function ai(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function oi(e,t,n,r){return new ai(e,t,n,r)}function si(e){return e=e.prototype,!(!e||!e.isReactComponent)}function z(e,t){var n=e.alternate;return n===null?(n=oi(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function ci(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function li(e,t,n,r,a,o){var s=0;if(r=e,typeof e==`function`)si(e)&&(s=1);else if(typeof e==`string`)s=Qf(e,n,oe.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case D:return e=oi(31,n,t,a),e.elementType=D,e.lanes=o,e;case _:return ui(n.children,a,o,t);case v:s=8,a|=24;break;case y:return e=oi(12,n,t,a|2),e.elementType=y,e.lanes=o,e;case C:return e=oi(13,n,t,a),e.elementType=C,e.lanes=o,e;case w:return e=oi(19,n,t,a),e.elementType=w,e.lanes=o,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case x:s=10;break a;case b:s=9;break a;case S:s=11;break a;case T:s=14;break a;case E:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=oi(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function ui(e,t,n,r){return e=oi(7,e,r,t),e.lanes=n,e}function di(e,t,n){return e=oi(6,e,null,t),e.lanes=n,e}function fi(e){var t=oi(18,null,null,0);return t.stateNode=e,t}function pi(e,t,n){return t=oi(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var mi=new WeakMap;function hi(e,t){if(typeof e==`object`&&e){var n=mi.get(e);return n===void 0?(t={value:e,source:t,stack:be(t)},mi.set(e,t),t):n}return{value:e,source:t,stack:be(t)}}var gi=[],_i=0,vi=null,yi=0,bi=[],xi=0,Si=null,Ci=1,wi=``;function Ti(e,t){gi[_i++]=yi,gi[_i++]=vi,vi=e,yi=t}function Ei(e,t,n){bi[xi++]=Ci,bi[xi++]=wi,bi[xi++]=Si,Si=e;var r=Ci;e=wi;var i=32-Re(r)-1;r&=~(1<<i),n+=1;var a=32-Re(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Ci=1<<32-Re(t)+i|n<<i|r,wi=a+e}else Ci=1<<a|n<<i|r,wi=e}function Di(e){e.return!==null&&(Ti(e,1),Ei(e,1,0))}function Oi(e){for(;e===vi;)vi=gi[--_i],gi[_i]=null,yi=gi[--_i],gi[_i]=null;for(;e===Si;)Si=bi[--xi],bi[xi]=null,wi=bi[--xi],bi[xi]=null,Ci=bi[--xi],bi[xi]=null}function ki(e,t){bi[xi++]=Ci,bi[xi++]=wi,bi[xi++]=Si,Ci=t.id,wi=t.overflow,Si=e}var Ai=null,ji=null,Mi=!1,Ni=null,Pi=!1,Fi=Error(i(519));function Ii(e){throw Hi(hi(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),Fi}function Li(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[at]=e,t[ot]=r,n){case`dialog`:Od(`cancel`,t),Od(`close`,t);break;case`iframe`:case`object`:case`embed`:Od(`load`,t);break;case`video`:case`audio`:for(n=0;n<Td.length;n++)Od(Td[n],t);break;case`source`:Od(`error`,t);break;case`img`:case`image`:case`link`:Od(`error`,t),Od(`load`,t);break;case`details`:Od(`toggle`,t);break;case`input`:Od(`invalid`,t),zt(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:Od(`invalid`,t);break;case`textarea`:Od(`invalid`,t),Ut(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||Bd(t.textContent,n)?(r.popover!=null&&(Od(`beforetoggle`,t),Od(`toggle`,t)),r.onScroll!=null&&Od(`scroll`,t),r.onScrollEnd!=null&&Od(`scrollend`,t),r.onClick!=null&&(t.onclick=Qt),t=!0):t=!1,t||Ii(e,!0)}function Ri(e){for(Ai=e.return;Ai;)switch(Ai.tag){case 5:case 31:case 13:Pi=!1;return;case 27:case 3:Pi=!0;return;default:Ai=Ai.return}}function zi(e){if(e!==Ai)return!1;if(!Mi)return Ri(e),Mi=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!==`form`&&n!==`button`)||Qd(e.type,e.memoizedProps)),n=!n),n&&ji&&Ii(e),Ri(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));ji=yf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));ji=yf(e)}else t===27?(t=ji,sf(e.type)?(e=vf,vf=null,ji=e):ji=t):ji=Ai?_f(e.stateNode.nextSibling):null;return!0}function Bi(){ji=Ai=null,Mi=!1}function Vi(){var e=Ni;return e!==null&&(au===null?au=e:au.push.apply(au,e),Ni=null),e}function Hi(e){Ni===null?Ni=[e]:Ni.push(e)}var Ui=re(null),B=null,Wi=null;function Gi(e,t,n){ae(Ui,t._currentValue),t._currentValue=n}function V(e){e._currentValue=Ui.current,ie(Ui)}function Ki(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function qi(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),Ki(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),Ki(s,n,e),s=null}else s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function Ji(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;xr(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===le.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[sp]:e.push(sp))}a=a.return}e!==null&&qi(t,e,n,r),t.flags|=262144}function Yi(e){for(e=e.firstContext;e!==null;){if(!xr(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Zi(e){B=e,Wi=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function Qi(e){return ea(B,e)}function $i(e,t){return B===null&&Zi(e),ea(e,t)}function ea(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Wi===null){if(e===null)throw Error(i(308));Wi=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Wi=Wi.next=t;return n}var ta=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},na=t.unstable_scheduleCallback,ra=t.unstable_NormalPriority,ia={$$typeof:x,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function aa(){return{controller:new ta,data:new Map,refCount:0}}function oa(e){e.refCount--,e.refCount===0&&na(ra,function(){e.controller.abort()})}var sa=null,ca=0,la=0,ua=null;function da(e,t){if(sa===null){var n=sa=[];ca=0,la=yd(),ua={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return ca++,t.then(fa,fa),t}function fa(){if(--ca===0&&sa!==null){ua!==null&&(ua.status=`fulfilled`);var e=sa;sa=null,la=0,ua=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function pa(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var ma=P.S;P.S=function(e,t){cu=Ee(),typeof t==`object`&&t&&typeof t.then==`function`&&da(e,t),ma!==null&&ma(e,t)};var ha=re(null);function ga(){var e=ha.current;return e===null?Ul.pooledCache:e}function _a(e,t){t===null?ae(ha,ha.current):ae(ha,t.pool)}function va(){var e=ga();return e===null?null:{parent:ia._currentValue,pool:e}}var ya=Error(i(460)),ba=Error(i(474)),xa=Error(i(542)),Sa={then:function(){}};function Ca(e){return e=e.status,e===`fulfilled`||e===`rejected`}function wa(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(Qt,Qt),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Oa(e),e;default:if(typeof t.status==`string`)t.then(Qt,Qt);else{if(e=Ul,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Oa(e),e}throw Ea=t,ya}}function Ta(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(Ea=e,ya):e}}var Ea=null;function Da(){if(Ea===null)throw Error(i(459));var e=Ea;return Ea=null,e}function Oa(e){if(e===ya||e===xa)throw Error(i(483))}var ka=null,Aa=0;function ja(e){var t=Aa;return Aa+=1,ka===null&&(ka=[]),wa(ka,e,t)}function Ma(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Na(e,t){throw t.$$typeof===p?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function Pa(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=z(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=di(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===_?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===E&&Ta(i)===t.type)?(t=a(t,n.props),Ma(t,n),t.return=e,t):(t=li(n.type,n.key,n.props,null,e.mode,r),Ma(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=pi(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=ui(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=di(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case h:return n=li(t.type,t.key,t.props,null,e.mode,n),Ma(n,t),n.return=e,n;case g:return t=pi(t,e.mode,n),t.return=e,t;case E:return t=Ta(t),f(e,t,n)}if(N(t)||A(t))return t=ui(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,ja(t),n);if(t.$$typeof===x)return f(e,$i(e,t),n);Na(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case h:return n.key===i?l(e,t,n,r):null;case g:return n.key===i?u(e,t,n,r):null;case E:return n=Ta(n),p(e,t,n,r)}if(N(n)||A(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,ja(n),r);if(n.$$typeof===x)return p(e,t,$i(e,n),r);Na(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case h:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case g:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case E:return r=Ta(r),m(e,t,n,r,i)}if(N(r)||A(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,ja(r),i);if(r.$$typeof===x)return m(e,t,n,$i(t,r),i);Na(t,r)}return null}function v(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),Mi&&Ti(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return Mi&&Ti(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),Mi&&Ti(i,h),l}function y(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),Mi&&Ti(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return Mi&&Ti(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),Mi&&Ti(a,g),u}function b(e,r,o,c){if(typeof o==`object`&&o&&o.type===_&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case h:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===_){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===E&&Ta(l)===r.type){n(e,r.sibling),c=a(r,o.props),Ma(c,o),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}o.type===_?(c=ui(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=li(o.type,o.key,o.props,null,e.mode,c),Ma(c,o),c.return=e,e=c)}return s(e);case g:a:{for(l=o.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=pi(o,e.mode,c),c.return=e,e=c}return s(e);case E:return o=Ta(o),b(e,r,o,c)}if(N(o))return v(e,r,o,c);if(A(o)){if(l=A(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),y(e,r,o,c)}if(typeof o.then==`function`)return b(e,r,ja(o),c);if(o.$$typeof===x)return b(e,r,$i(e,o),c);Na(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=di(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Aa=0;var i=b(e,t,n,r);return ka=null,i}catch(t){if(t===ya||t===xa)throw t;var a=oi(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Fa=Pa(!0),Ia=Pa(!1),La=!1;function Ra(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function za(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ba(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Va(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Hl&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=ii(e),ri(e,null,n),t}return ei(e,r,t,n),ii(e)}function Ha(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,L(e,n)}}function Ua(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Wa=!1;function Ga(){if(Wa){var e=ua;if(e!==null)throw e}}function Ka(e,t,n,r){Wa=!1;var i=e.updateQueue;La=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var p=s.lane&-536870913,m=p!==s.lane;if(m?(Gl&p)===p:(r&p)===p){p!==0&&p===la&&(Wa=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;p=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,p);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,p=typeof h==`function`?h.call(_,d,p):h,p==null)break a;d=f({},d,p);break a;case 2:La=!0}}p=s.callback,p!==null&&(e.flags|=64,m&&(e.flags|=8192),m=i.callbacks,m===null?i.callbacks=[p]:m.push(p))}else m={lane:p,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=m,c=d):u=u.next=m,o|=p;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;m=s,s=m.next,m.next=null,i.lastBaseUpdate=m,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),$l|=o,e.lanes=o,e.memoizedState=d}}function qa(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Ja(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)qa(n[e],t)}var Ya=re(null),Xa=re(0);function Za(e,t){e=Zl,ae(Xa,e),ae(Ya,t),Zl=e|t.baseLanes}function Qa(){ae(Xa,Zl),ae(Ya,Ya.current)}function $a(){Zl=Xa.current,ie(Ya),ie(Xa)}var eo=re(null),to=null;function no(e){var t=e.alternate;ae(so,so.current&1),ae(eo,e),to===null&&(t===null||Ya.current!==null||t.memoizedState!==null)&&(to=e)}function ro(e){ae(so,so.current),ae(eo,e),to===null&&(to=e)}function io(e){e.tag===22?(ae(so,so.current),ae(eo,e),to===null&&(to=e)):ao(e)}function ao(){ae(so,so.current),ae(eo,eo.current)}function oo(e){ie(eo),to===e&&(to=null),ie(so)}var so=re(0);function co(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||mf(n)||hf(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var lo=0,uo=null,fo=null,po=null,mo=!1,ho=!1,go=!1,_o=0,vo=0,yo=null,bo=0;function xo(){throw Error(i(321))}function So(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!xr(e[n],t[n]))return!1;return!0}function Co(e,t,n,r,i,a){return lo=a,uo=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,P.H=e===null||e.memoizedState===null?Bs:Vs,go=!1,a=n(r,i),go=!1,ho&&(a=To(t,n,r,i)),wo(e),a}function wo(e){P.H=zs;var t=fo!==null&&fo.next!==null;if(lo=0,po=fo=uo=null,mo=!1,vo=0,yo=null,t)throw Error(i(300));e===null||ic||(e=e.dependencies,e!==null&&Yi(e)&&(ic=!0))}function To(e,t,n,r){uo=e;var a=0;do{if(ho&&(yo=null),vo=0,ho=!1,25<=a)throw Error(i(301));if(a+=1,po=fo=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}P.H=Hs,o=t(n,r)}while(ho);return o}function Eo(){var e=P.H,t=e.useState()[0];return t=typeof t.then==`function`?No(t):t,e=e.useState()[0],(fo===null?null:fo.memoizedState)!==e&&(uo.flags|=1024),t}function Do(){var e=_o!==0;return _o=0,e}function Oo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function ko(e){if(mo){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}mo=!1}lo=0,po=fo=uo=null,ho=!1,vo=_o=0,yo=null}function Ao(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return po===null?uo.memoizedState=po=e:po=po.next=e,po}function jo(){if(fo===null){var e=uo.alternate;e=e===null?null:e.memoizedState}else e=fo.next;var t=po===null?uo.memoizedState:po.next;if(t!==null)po=t,fo=e;else{if(e===null)throw uo.alternate===null?Error(i(467)):Error(i(310));fo=e,e={memoizedState:fo.memoizedState,baseState:fo.baseState,baseQueue:fo.baseQueue,queue:fo.queue,next:null},po===null?uo.memoizedState=po=e:po=po.next=e}return po}function Mo(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function No(e){var t=vo;return vo+=1,yo===null&&(yo=[]),e=wa(yo,e,t),t=uo,(po===null?t.memoizedState:po.next)===null&&(t=t.alternate,P.H=t===null||t.memoizedState===null?Bs:Vs),e}function Po(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return No(e);if(e.$$typeof===x)return Qi(e)}throw Error(i(438,String(e)))}function Fo(e){var t=null,n=uo.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=uo.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=Mo(),uo.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=O;return t.index++,n}function Io(e,t){return typeof t==`function`?t(e):t}function Lo(e){return Ro(jo(),fo,e)}function Ro(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(lo&f)===f:(Gl&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===la&&(d=!0);else if((lo&p)===p){u=u.next,p===la&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,uo.lanes|=p,$l|=p;f=u.action,go&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,uo.lanes|=f,$l|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!xr(o,e.memoizedState)&&(ic=!0,d&&(n=ua,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function zo(e){var t=jo(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);xr(o,t.memoizedState)||(ic=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Bo(e,t,n){var r=uo,a=jo(),o=Mi;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!xr((fo||a).memoizedState,n);if(s&&(a.memoizedState=n,ic=!0),a=a.queue,ds(Uo.bind(null,r,a,e),[e]),a.getSnapshot!==t||s||po!==null&&po.memoizedState.tag&1){if(r.flags|=2048,os(9,{destroy:void 0},Ho.bind(null,r,a,n,t),null),Ul===null)throw Error(i(349));o||lo&127||Vo(r,t,n)}return n}function Vo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=uo.updateQueue,t===null?(t=Mo(),uo.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Ho(e,t,n,r){t.value=n,t.getSnapshot=r,Wo(t)&&Go(e)}function Uo(e,t,n){return n(function(){Wo(t)&&Go(e)})}function Wo(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!xr(e,n)}catch{return!0}}function Go(e){var t=ni(e,2);t!==null&&Cu(t,e,2)}function Ko(e){var t=Ao();if(typeof e==`function`){var n=e;if(e=n(),go){Le(!0);try{n()}finally{Le(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:e},t}function qo(e,t,n,r){return e.baseState=n,Ro(e,fo,typeof r==`function`?r:Io)}function Jo(e,t,n,r,a){if(Is(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};P.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,Yo(t,o)):(o.next=n.next,t.pending=n.next=o)}}function Yo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=P.T,o={};P.T=o;try{var s=n(i,r),c=P.S;c!==null&&c(o,s),Xo(e,t,s)}catch(n){Qo(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),P.T=a}}else try{a=n(i,r),Xo(e,t,a)}catch(n){Qo(e,t,n)}}function Xo(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){Zo(e,t,n)},function(n){return Qo(e,t,n)}):Zo(e,t,n)}function Zo(e,t,n){t.status=`fulfilled`,t.value=n,$o(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Yo(e,n)))}function Qo(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,$o(t),t=t.next;while(t!==r)}e.action=null}function $o(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function es(e,t){return t}function ts(e,t){if(Mi){var n=Ul.formState;if(n!==null){a:{var r=uo;if(Mi){if(ji){b:{for(var i=ji,a=Pi;i.nodeType!==8;){if(!a){i=null;break b}if(i=_f(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){ji=_f(i.nextSibling),r=i.data===`F!`;break a}}Ii(r)}r=!1}r&&(t=n[0])}}return n=Ao(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:es,lastRenderedState:t},n.queue=r,n=Ns.bind(null,uo,r),r.dispatch=n,r=Ko(!1),a=Fs.bind(null,uo,!1,r.queue),r=Ao(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=Jo.bind(null,uo,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function ns(e){return rs(jo(),fo,e)}function rs(e,t,n){if(t=Ro(e,t,es)[0],e=Lo(Io)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=No(t)}catch(e){throw e===ya?xa:e}else r=t;t=jo();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(uo.flags|=2048,os(9,{destroy:void 0},is.bind(null,i,n),null)),[r,a,e]}function is(e,t){e.action=t}function as(e){var t=jo(),n=fo;if(n!==null)return rs(t,n,e);jo(),t=t.memoizedState,n=jo();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function os(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=uo.updateQueue,t===null&&(t=Mo(),uo.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function ss(){return jo().memoizedState}function cs(e,t,n,r){var i=Ao();uo.flags|=e,i.memoizedState=os(1|t,{destroy:void 0},n,r===void 0?null:r)}function ls(e,t,n,r){var i=jo();r=r===void 0?null:r;var a=i.memoizedState.inst;fo!==null&&r!==null&&So(r,fo.memoizedState.deps)?i.memoizedState=os(t,a,n,r):(uo.flags|=e,i.memoizedState=os(1|t,a,n,r))}function us(e,t){cs(8390656,8,e,t)}function ds(e,t){ls(2048,8,e,t)}function fs(e){uo.flags|=4;var t=uo.updateQueue;if(t===null)t=Mo(),uo.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function ps(e){var t=jo().memoizedState;return fs({ref:t,nextImpl:e}),function(){if(Hl&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function ms(e,t){return ls(4,2,e,t)}function hs(e,t){return ls(4,4,e,t)}function gs(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function _s(e,t,n){n=n==null?null:n.concat([e]),ls(4,4,gs.bind(null,t,e),n)}function vs(){}function ys(e,t){var n=jo();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&So(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function bs(e,t){var n=jo();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&So(t,r[1]))return r[0];if(r=e(),go){Le(!0);try{e()}finally{Le(!1)}}return n.memoizedState=[r,t],r}function xs(e,t,n){return n===void 0||lo&1073741824&&!(Gl&261930)?e.memoizedState=t:(e.memoizedState=n,e=Su(),uo.lanes|=e,$l|=e,n)}function Ss(e,t,n,r){return xr(n,t)?n:Ya.current===null?!(lo&42)||lo&1073741824&&!(Gl&261930)?(ic=!0,e.memoizedState=n):(e=Su(),uo.lanes|=e,$l|=e,t):(e=xs(e,n,r),xr(e,t)||(ic=!0),e)}function Cs(e,t,n,r,i){var a=F.p;F.p=a!==0&&8>a?a:8;var o=P.T,s={};P.T=s,Fs(e,!1,t,n);try{var c=i(),l=P.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ps(e,t,pa(c,r),xu(e)):Ps(e,t,r,xu(e))}catch(n){Ps(e,t,{then:function(){},status:`rejected`,reason:n},xu())}finally{F.p=a,o!==null&&s.types!==null&&(o.types=s.types),P.T=o}}function ws(){}function Ts(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=Es(e).queue;Cs(e,a,t,ee,n===null?ws:function(){return Ds(e),n(r)})}function Es(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ee,baseState:ee,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:ee},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Ds(e){var t=Es(e);t.next===null&&(t=e.alternate.memoizedState),Ps(e,t.next.queue,{},xu())}function Os(){return Qi(sp)}function ks(){return jo().memoizedState}function As(){return jo().memoizedState}function js(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=xu();e=Ba(n);var r=Va(t,e,n);r!==null&&(Cu(r,t,n),Ha(r,t,n)),t={cache:aa()},e.payload=t;return}t=t.return}}function Ms(e,t,n){var r=xu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Is(e)?Ls(t,n):(n=ti(e,t,n,r),n!==null&&(Cu(n,e,r),Rs(n,t,r)))}function Ns(e,t,n){Ps(e,t,n,xu())}function Ps(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Is(e))Ls(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,xr(s,o))return ei(e,t,i,0),Ul===null&&$r(),!1}catch{}if(n=ti(e,t,i,r),n!==null)return Cu(n,e,r),Rs(n,t,r),!0}return!1}function Fs(e,t,n,r){if(r={lane:2,revertLane:yd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Is(e)){if(t)throw Error(i(479))}else t=ti(e,n,r,2),t!==null&&Cu(t,e,2)}function Is(e){var t=e.alternate;return e===uo||t!==null&&t===uo}function Ls(e,t){ho=mo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Rs(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,L(e,n)}}var zs={readContext:Qi,use:Po,useCallback:xo,useContext:xo,useEffect:xo,useImperativeHandle:xo,useLayoutEffect:xo,useInsertionEffect:xo,useMemo:xo,useReducer:xo,useRef:xo,useState:xo,useDebugValue:xo,useDeferredValue:xo,useTransition:xo,useSyncExternalStore:xo,useId:xo,useHostTransitionStatus:xo,useFormState:xo,useActionState:xo,useOptimistic:xo,useMemoCache:xo,useCacheRefresh:xo};zs.useEffectEvent=xo;var Bs={readContext:Qi,use:Po,useCallback:function(e,t){return Ao().memoizedState=[e,t===void 0?null:t],e},useContext:Qi,useEffect:us,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),cs(4194308,4,gs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return cs(4194308,4,e,t)},useInsertionEffect:function(e,t){cs(4,2,e,t)},useMemo:function(e,t){var n=Ao();t=t===void 0?null:t;var r=e();if(go){Le(!0);try{e()}finally{Le(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=Ao();if(n!==void 0){var i=n(t);if(go){Le(!0);try{n(t)}finally{Le(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Ms.bind(null,uo,e),[r.memoizedState,e]},useRef:function(e){var t=Ao();return e={current:e},t.memoizedState=e},useState:function(e){e=Ko(e);var t=e.queue,n=Ns.bind(null,uo,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:vs,useDeferredValue:function(e,t){return xs(Ao(),e,t)},useTransition:function(){var e=Ko(!1);return e=Cs.bind(null,uo,e.queue,!0,!1),Ao().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=uo,a=Ao();if(Mi){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Ul===null)throw Error(i(349));Gl&127||Vo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,us(Uo.bind(null,r,o,e),[e]),r.flags|=2048,os(9,{destroy:void 0},Ho.bind(null,r,o,n,t),null),n},useId:function(){var e=Ao(),t=Ul.identifierPrefix;if(Mi){var n=wi,r=Ci;n=(r&~(1<<32-Re(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=_o++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=bo++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:Os,useFormState:ts,useActionState:ts,useOptimistic:function(e){var t=Ao();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Fs.bind(null,uo,!0,n),n.dispatch=t,[e,t]},useMemoCache:Fo,useCacheRefresh:function(){return Ao().memoizedState=js.bind(null,uo)},useEffectEvent:function(e){var t=Ao(),n={impl:e};return t.memoizedState=n,function(){if(Hl&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},Vs={readContext:Qi,use:Po,useCallback:ys,useContext:Qi,useEffect:ds,useImperativeHandle:_s,useInsertionEffect:ms,useLayoutEffect:hs,useMemo:bs,useReducer:Lo,useRef:ss,useState:function(){return Lo(Io)},useDebugValue:vs,useDeferredValue:function(e,t){return Ss(jo(),fo.memoizedState,e,t)},useTransition:function(){var e=Lo(Io)[0],t=jo().memoizedState;return[typeof e==`boolean`?e:No(e),t]},useSyncExternalStore:Bo,useId:ks,useHostTransitionStatus:Os,useFormState:ns,useActionState:ns,useOptimistic:function(e,t){return qo(jo(),fo,e,t)},useMemoCache:Fo,useCacheRefresh:As};Vs.useEffectEvent=ps;var Hs={readContext:Qi,use:Po,useCallback:ys,useContext:Qi,useEffect:ds,useImperativeHandle:_s,useInsertionEffect:ms,useLayoutEffect:hs,useMemo:bs,useReducer:zo,useRef:ss,useState:function(){return zo(Io)},useDebugValue:vs,useDeferredValue:function(e,t){var n=jo();return fo===null?xs(n,e,t):Ss(n,fo.memoizedState,e,t)},useTransition:function(){var e=zo(Io)[0],t=jo().memoizedState;return[typeof e==`boolean`?e:No(e),t]},useSyncExternalStore:Bo,useId:ks,useHostTransitionStatus:Os,useFormState:as,useActionState:as,useOptimistic:function(e,t){var n=jo();return fo===null?(n.baseState=e,[e,n.queue.dispatch]):qo(n,fo,e,t)},useMemoCache:Fo,useCacheRefresh:As};Hs.useEffectEvent=ps;function Us(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:f({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Ws={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=xu(),i=Ba(r);i.payload=t,n!=null&&(i.callback=n),t=Va(e,i,r),t!==null&&(Cu(t,e,r),Ha(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=xu(),i=Ba(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Va(e,i,r),t!==null&&(Cu(t,e,r),Ha(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=xu(),r=Ba(n);r.tag=2,t!=null&&(r.callback=t),t=Va(e,r,n),t!==null&&(Cu(t,e,n),Ha(t,e,n))}};function Gs(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!Sr(n,r)||!Sr(i,a):!0}function Ks(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Ws.enqueueReplaceState(t,t.state,null)}function qs(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=f({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function Js(e){Yr(e)}function Ys(e){console.error(e)}function Xs(e){Yr(e)}function Zs(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Qs(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function $s(e,t,n){return n=Ba(n),n.tag=3,n.payload={element:null},n.callback=function(){Zs(e,t)},n}function ec(e){return e=Ba(e),e.tag=3,e}function tc(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Qs(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Qs(t,n,r),typeof i!=`function`&&(du===null?du=new Set([this]):du.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function nc(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Ji(t,n,a,!0),n=eo.current,n!==null){switch(n.tag){case 31:case 13:return to===null?Pu():n.alternate===null&&Ql===0&&(Ql=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===Sa?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),$u(e,r,a)),!1;case 22:return n.flags|=65536,r===Sa?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),$u(e,r,a)),!1}throw Error(i(435,n.tag))}return $u(e,r,a),Pu(),!1}if(Mi)return t=eo.current,t===null?(r!==Fi&&(t=Error(i(423),{cause:r}),Hi(hi(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=hi(r,n),a=$s(e.stateNode,r,a),Ua(e,a),Ql!==4&&(Ql=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==Fi&&(e=Error(i(422),{cause:r}),Hi(hi(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=hi(o,n),iu===null?iu=[o]:iu.push(o),Ql!==4&&(Ql=2),t===null)return!0;r=hi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=$s(n.stateNode,r,e),Ua(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(du===null||!du.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=ec(a),tc(a,e,n,r),Ua(n,a),!1}n=n.return}while(n!==null);return!1}var rc=Error(i(461)),ic=!1;function ac(e,t,n,r){t.child=e===null?Ia(t,null,n,r):Fa(t,e.child,n,r)}function oc(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return Zi(t),r=Co(e,t,n,o,a,i),s=Do(),e!==null&&!ic?(Oo(e,t,i),Ac(e,t,i)):(Mi&&s&&Di(t),t.flags|=1,ac(e,t,r,i),t.child)}function sc(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!si(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,cc(e,t,a,r,i)):(e=li(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!jc(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?Sr:n,n(o,r)&&e.ref===t.ref)return Ac(e,t,i)}return t.flags|=1,e=z(a,r),e.ref=t.ref,e.return=t,t.child=e}function cc(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Sr(a,r)&&e.ref===t.ref)if(ic=!1,t.pendingProps=r=a,jc(e,i))e.flags&131072&&(ic=!0);else return t.lanes=e.lanes,Ac(e,t,i)}return gc(e,t,n,r,i)}function lc(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return dc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&_a(t,a===null?null:a.cachePool),a===null?Qa():Za(t,a),io(t);else return r=t.lanes=536870912,dc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&_a(t,null),Qa(),ao(t)):(_a(t,a.cachePool),Za(t,a),ao(t),t.memoizedState=null);return ac(e,t,i,n),t.child}function uc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function dc(e,t,n,r,i){var a=ga();return a=a===null?null:{parent:ia._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&_a(t,null),Qa(),io(t),e!==null&&Ji(e,t,r,!0),t.childLanes=i,null}function fc(e,t){return t=Tc({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function pc(e,t,n){return Fa(t,e.child,null,n),e=fc(t,t.pendingProps),e.flags|=2,oo(t),t.memoizedState=null,e}function mc(e,t,n){var r=t.pendingProps,a=(t.flags&128)!=0;if(t.flags&=-129,e===null){if(Mi){if(r.mode===`hidden`)return e=fc(t,r),t.lanes=536870912,uc(null,e);if(ro(t),(e=ji)?(e=pf(e,Pi),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Si===null?null:{id:Ci,overflow:wi},retryLane:536870912,hydrationErrors:null},n=fi(e),n.return=t,t.child=n,Ai=t,ji=null)):e=null,e===null)throw Ii(t);return t.lanes=536870912,null}return fc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(ro(t),a)if(t.flags&256)t.flags&=-257,t=pc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558));else if(ic||Ji(e,t,n,!1),a=(n&e.childLanes)!==0,ic||a){if(r=Ul,r!==null&&(s=$e(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,ni(e,s),Cu(r,e,s),rc;Pu(),t=pc(e,t,n)}else e=o.treeContext,ji=_f(s.nextSibling),Ai=t,Mi=!0,Ni=null,Pi=!1,e!==null&&ki(t,e),t=fc(t,r),t.flags|=4096;return t}return e=z(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function hc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function gc(e,t,n,r,i){return Zi(t),n=Co(e,t,n,r,void 0,i),r=Do(),e!==null&&!ic?(Oo(e,t,i),Ac(e,t,i)):(Mi&&r&&Di(t),t.flags|=1,ac(e,t,n,i),t.child)}function _c(e,t,n,r,i,a){return Zi(t),t.updateQueue=null,n=To(t,r,n,i),wo(e),r=Do(),e!==null&&!ic?(Oo(e,t,a),Ac(e,t,a)):(Mi&&r&&Di(t),t.flags|=1,ac(e,t,n,a),t.child)}function vc(e,t,n,r,i){if(Zi(t),t.stateNode===null){var a=R,o=n.contextType;typeof o==`object`&&o&&(a=Qi(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Ws,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Ra(t),o=n.contextType,a.context=typeof o==`object`&&o?Qi(o):R,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Us(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&Ws.enqueueReplaceState(a,a.state,null),Ka(t,r,a,i),Ga(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=qs(n,s);a.props=c;var l=a.context,u=n.contextType;o=R,typeof u==`object`&&u&&(o=Qi(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Ks(t,a,r,o),La=!1;var f=t.memoizedState;a.state=f,Ka(t,r,a,i),Ga(),l=t.memoizedState,s||f!==l||La?(typeof d==`function`&&(Us(t,n,d,r),l=t.memoizedState),(c=La||Gs(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,za(e,t),o=t.memoizedProps,u=qs(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=R,typeof l==`object`&&l&&(c=Qi(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Ks(t,a,r,c),La=!1,f=t.memoizedState,a.state=f,Ka(t,r,a,i),Ga();var p=t.memoizedState;o!==d||f!==p||La||e!==null&&e.dependencies!==null&&Yi(e.dependencies)?(typeof s==`function`&&(Us(t,n,s,r),p=t.memoizedState),(u=La||Gs(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Yi(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,hc(e,t),r=(t.flags&128)!=0,a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=Fa(t,e.child,null,i),t.child=Fa(t,null,n,i)):ac(e,t,n,i),t.memoizedState=a.state,e=t.child):e=Ac(e,t,i),e}function yc(e,t,n,r){return Bi(),t.flags|=256,ac(e,t,n,r),t.child}var bc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function xc(e){return{baseLanes:e,cachePool:va()}}function Sc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=nu),e}function Cc(e,t,n){var r=t.pendingProps,a=!1,o=(t.flags&128)!=0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:(so.current&2)!=0),s&&(a=!0,t.flags&=-129),s=(t.flags&32)!=0,t.flags&=-33,e===null){if(Mi){if(a?no(t):ao(t),(e=ji)?(e=pf(e,Pi),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Si===null?null:{id:Ci,overflow:wi},retryLane:536870912,hydrationErrors:null},n=fi(e),n.return=t,t.child=n,Ai=t,ji=null)):e=null,e===null)throw Ii(t);return hf(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,a?(ao(t),a=t.mode,c=Tc({mode:`hidden`,children:c},a),r=ui(r,a,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=xc(n),r.childLanes=Sc(e,s,n),t.memoizedState=bc,uc(null,r)):(no(t),wc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(no(t),t.flags&=-257,t=Ec(e,t,n)):t.memoizedState===null?(ao(t),c=r.fallback,a=t.mode,r=Tc({mode:`visible`,children:r.children},a),c=ui(c,a,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,Fa(t,e.child,null,n),r=t.child,r.memoizedState=xc(n),r.childLanes=Sc(e,s,n),t.memoizedState=bc,t=uc(null,r)):(ao(t),t.child=e.child,t.flags|=128,t=null);else if(no(t),hf(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(i(419)),r.stack=``,r.digest=s,Hi({value:r,source:null,stack:null}),t=Ec(e,t,n)}else if(ic||Ji(e,t,n,!1),s=(n&e.childLanes)!==0,ic||s){if(s=Ul,s!==null&&(r=$e(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,ni(e,r),Cu(s,e,r),rc;mf(c)||Pu(),t=Ec(e,t,n)}else mf(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,ji=_f(c.nextSibling),Ai=t,Mi=!0,Ni=null,Pi=!1,e!==null&&ki(t,e),t=wc(t,r.children),t.flags|=4096);return t}return a?(ao(t),c=r.fallback,a=t.mode,l=e.child,u=l.sibling,r=z(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=ui(c,a,n,null),c.flags|=2):c=z(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,uc(null,r),r=t.child,c=e.child.memoizedState,c===null?c=xc(n):(a=c.cachePool,a===null?a=va():(l=ia._currentValue,a=a.parent===l?a:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:a}),r.memoizedState=c,r.childLanes=Sc(e,s,n),t.memoizedState=bc,uc(e.child,r)):(no(t),n=e.child,e=n.sibling,n=z(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function wc(e,t){return t=Tc({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function Tc(e,t){return e=oi(22,e,null,t),e.lanes=0,e}function Ec(e,t,n){return Fa(t,e.child,null,n),e=wc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Dc(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ki(e.return,t,n)}function Oc(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function kc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=so.current,s=(o&2)!=0;if(s?(o=o&1|2,t.flags|=128):o&=1,ae(so,o),ac(e,t,r,n),r=Mi?yi:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Dc(e,n,t);else if(e.tag===19)Dc(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&co(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Oc(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&co(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Oc(t,!0,n,null,a,r);break;case`together`:Oc(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function Ac(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),$l|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(Ji(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=z(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=z(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function jc(e,t){return(e.lanes&t)===0?(e=e.dependencies,!!(e!==null&&Yi(e))):!0}function Mc(e,t,n){switch(t.tag){case 3:ue(t,t.stateNode.containerInfo),Gi(t,ia,e.memoizedState.cache),Bi();break;case 27:case 5:fe(t);break;case 4:ue(t,t.stateNode.containerInfo);break;case 10:Gi(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,ro(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(no(t),e=Ac(e,t,n),e===null?null:e.sibling):Cc(e,t,n):(no(t),t.flags|=128,null);no(t);break;case 19:var i=(e.flags&128)!=0;if(r=(n&t.childLanes)!==0,r||=(Ji(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return kc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),ae(so,so.current),r)break;return null;case 22:return t.lanes=0,lc(e,t,n,t.pendingProps);case 24:Gi(t,ia,e.memoizedState.cache)}return Ac(e,t,n)}function Nc(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)ic=!0;else{if(!jc(e,n)&&!(t.flags&128))return ic=!1,Mc(e,t,n);ic=!!(e.flags&131072)}else ic=!1,Mi&&t.flags&1048576&&Ei(t,yi,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=Ta(t.elementType),t.type=e,typeof e==`function`)si(e)?(r=qs(e,r),t.tag=1,t=vc(null,t,e,r,n)):(t.tag=0,t=gc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===S){t.tag=11,t=oc(null,t,e,r,n);break a}else if(a===T){t.tag=14,t=sc(null,t,e,r,n);break a}}throw t=M(e)||e,Error(i(306,t,``))}}return t;case 0:return gc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=qs(r,t.pendingProps),vc(e,t,r,a,n);case 3:a:{if(ue(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,za(e,t),Ka(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Gi(t,ia,r),r!==o.cache&&qi(t,[ia],n,!0),Ga(),r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=yc(e,t,r,n);break a}else if(r!==a){a=hi(Error(i(424)),t),Hi(a),t=yc(e,t,r,n);break a}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(ji=_f(e.firstChild),Ai=t,Mi=!0,Ni=null,Pi=!0,n=Ia(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Bi(),r===a){t=Ac(e,t,n);break a}ac(e,t,r,n)}t=t.child}return t;case 26:return hc(e,t),e===null?(n=Rf(t.type,null,t.pendingProps,null))?t.memoizedState=n:Mi||(n=t.type,e=t.pendingProps,r=Yd(ce.current).createElement(n),r[at]=t,r[ot]=e,Ud(r,n,e),vt(r),t.stateNode=r):t.memoizedState=Rf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return fe(t),e===null&&Mi&&(r=t.stateNode=xf(t.type,t.pendingProps,ce.current),Ai=t,Pi=!0,a=ji,sf(t.type)?(vf=a,ji=_f(r.firstChild)):ji=a),ac(e,t,t.pendingProps.children,n),hc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Mi&&((a=r=ji)&&(r=df(r,t.type,t.pendingProps,Pi),r===null?a=!1:(t.stateNode=r,Ai=t,ji=_f(r.firstChild),Pi=!1,a=!0)),a||Ii(t)),fe(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Qd(a,o)?r=null:s!==null&&Qd(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=Co(e,t,Eo,null,null,n),sp._currentValue=a),hc(e,t),ac(e,t,r,n),t.child;case 6:return e===null&&Mi&&((e=n=ji)&&(n=ff(n,t.pendingProps,Pi),n===null?e=!1:(t.stateNode=n,Ai=t,ji=null,e=!0)),e||Ii(t)),null;case 13:return Cc(e,t,n);case 4:return ue(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Fa(t,null,r,n):ac(e,t,r,n),t.child;case 11:return oc(e,t,t.type,t.pendingProps,n);case 7:return ac(e,t,t.pendingProps,n),t.child;case 8:return ac(e,t,t.pendingProps.children,n),t.child;case 12:return ac(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,Gi(t,t.type,r.value),ac(e,t,r.children,n),t.child;case 9:return a=t.type._context,r=t.pendingProps.children,Zi(t),a=Qi(a),r=r(a),t.flags|=1,ac(e,t,r,n),t.child;case 14:return sc(e,t,t.type,t.pendingProps,n);case 15:return cc(e,t,t.type,t.pendingProps,n);case 19:return kc(e,t,n);case 31:return mc(e,t,n);case 22:return lc(e,t,n,t.pendingProps);case 24:return Zi(t),r=Qi(ia),e===null?(a=ga(),a===null&&(a=Ul,o=aa(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},Ra(t),Gi(t,ia,a)):((e.lanes&n)!==0&&(za(e,t),Ka(t,null,null,n),Ga()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,Gi(t,ia,r),r!==a.cache&&qi(t,[ia],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),Gi(t,ia,r))),ac(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function Pc(e){e.flags|=4}function Fc(e,t,n,r,i){if((t=(e.mode&32)!=0)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(ju())e.flags|=8192;else throw Ea=Sa,ba}else e.flags&=-16777217}function Ic(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!$f(t))if(ju())e.flags|=8192;else throw Ea=Sa,ba}function Lc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Je(),e.lanes|=t,ru|=t)}function Rc(e,t){if(!Mi)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function zc(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Bc(e,t,n){var r=t.pendingProps;switch(Oi(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return zc(t),null;case 1:return zc(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),V(ia),de(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(zi(t)?Pc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Vi())),zc(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(Pc(t),o===null?(zc(t),Fc(t,a,null,r,n)):(zc(t),Ic(t,o))):o?o===e.memoizedState?(zc(t),t.flags&=-16777217):(Pc(t),zc(t),Ic(t,o)):(e=e.memoizedProps,e!==r&&Pc(t),zc(t),Fc(t,a,e,r,n)),null;case 27:if(pe(t),n=ce.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Pc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return zc(t),null}e=oe.current,zi(t)?Li(t,e):(e=xf(a,r,n),t.stateNode=e,Pc(t))}return zc(t),null;case 5:if(pe(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Pc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return zc(t),null}if(o=oe.current,zi(t))Li(t,o);else{var s=Yd(ce.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[at]=t,o[ot]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Ud(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Pc(t)}}return zc(t),Fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Pc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=ce.current,zi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=Ai,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[at]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Bd(e.nodeValue,n)),e||Ii(t,!0)}else e=Yd(e).createTextNode(r),e[at]=t,t.stateNode=e}return zc(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=zi(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[at]=t}else Bi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;zc(t),e=!1}else n=Vi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(oo(t),t):(oo(t),null);if(t.flags&128)throw Error(i(558))}return zc(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=zi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[at]=t}else Bi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;zc(t),a=!1}else a=Vi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(oo(t),t):(oo(t),null)}return oo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Lc(t,t.updateQueue),zc(t),null);case 4:return de(),e===null&&U(t.stateNode.containerInfo),zc(t),null;case 10:return V(t.type),zc(t),null;case 19:if(ie(so),r=t.memoizedState,r===null)return zc(t),null;if(a=(t.flags&128)!=0,o=r.rendering,o===null)if(a)Rc(r,!1);else{if(Ql!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=co(e),o!==null){for(t.flags|=128,Rc(r,!1),e=o.updateQueue,t.updateQueue=e,Lc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)ci(n,e),n=n.sibling;return ae(so,so.current&1|2),Mi&&Ti(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Ee()>lu&&(t.flags|=128,a=!0,Rc(r,!1),t.lanes=4194304)}else{if(!a)if(e=co(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Lc(t,e),Rc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!Mi)return zc(t),null}else 2*Ee()-r.renderingStartTime>lu&&n!==536870912&&(t.flags|=128,a=!0,Rc(r,!1),t.lanes=4194304);r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(zc(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Ee(),e.sibling=null,n=so.current,ae(so,a?n&1|2:n&1),Mi&&Ti(t,r.treeForkCount),e);case 22:case 23:return oo(t),$a(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(zc(t),t.subtreeFlags&6&&(t.flags|=8192)):zc(t),n=t.updateQueue,n!==null&&Lc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&ie(ha),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),V(ia),zc(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Vc(e,t){switch(Oi(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return V(ia),de(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return pe(t),null;case 31:if(t.memoizedState!==null){if(oo(t),t.alternate===null)throw Error(i(340));Bi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(oo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));Bi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ie(so),null;case 4:return de(),null;case 10:return V(t.type),null;case 22:case 23:return oo(t),$a(),e!==null&&ie(ha),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return V(ia),null;case 25:return null;default:return null}}function Hc(e,t){switch(Oi(t),t.tag){case 3:V(ia),de();break;case 26:case 27:case 5:pe(t);break;case 4:de();break;case 31:t.memoizedState!==null&&oo(t);break;case 13:oo(t);break;case 19:ie(so);break;case 10:V(t.type);break;case 22:case 23:oo(t),$a(),e!==null&&ie(ha);break;case 24:V(ia)}}function Uc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Qu(t,t.return,e)}}function Wc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Qu(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Qu(t,t.return,e)}}function Gc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Ja(t,n)}catch(t){Qu(e,e.return,t)}}}function Kc(e,t,n){n.props=qs(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Qu(e,t,n)}}function qc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Qu(e,t,n)}}function Jc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Qu(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Qu(e,t,n)}else n.current=null}function Yc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Qu(e,e.return,t)}}function Xc(e,t,n){try{var r=e.stateNode;Wd(r,e.type,n,t),r[ot]=t}catch(t){Qu(e,e.return,t)}}function Zc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&sf(e.type)||e.tag===4}function Qc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Zc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&sf(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function $c(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Qt));else if(r!==4&&(r===27&&sf(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}function el(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&sf(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(el(e,t,n),e=e.sibling;e!==null;)el(e,t,n),e=e.sibling}function tl(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Ud(t,r,n),t[at]=e,t[ot]=n}catch(t){Qu(e,e.return,t)}}var nl=!1,rl=!1,il=!1,al=typeof WeakSet==`function`?WeakSet:Set,ol=null;function sl(e,t){if(e=e.containerInfo,qd=gp,e=Er(e),Dr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(Jd={focusedElem:e,selectionRange:n},gp=!1,ol=t;ol!==null;)if(t=ol,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,ol=e;else for(;ol!==null;){switch(t=ol,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)a=e[n],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&o!==null){e=void 0,n=t,a=o.memoizedProps,o=o.memoizedState,r=n.stateNode;try{var h=qs(n.type,a);e=r.getSnapshotBeforeUpdate(h,o),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){Qu(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)uf(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:uf(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(i(163))}if(e=t.sibling,e!==null){e.return=t.return,ol=e;break}ol=t.return}}function cl(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:Cl(e,n),r&4&&Uc(5,n);break;case 1:if(Cl(e,n),r&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Qu(n,n.return,e)}else{var i=qs(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Qu(n,n.return,e)}}r&64&&Gc(n),r&512&&qc(n,n.return);break;case 3:if(Cl(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{Ja(e,t)}catch(e){Qu(n,n.return,e)}}break;case 27:t===null&&r&4&&tl(n);case 26:case 5:Cl(e,n),t===null&&r&4&&Yc(n),r&512&&qc(n,n.return);break;case 12:Cl(e,n);break;case 31:Cl(e,n),r&4&&ml(e,n);break;case 13:Cl(e,n),r&4&&hl(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=nd.bind(null,n),gf(e,n))));break;case 22:if(r=n.memoizedState!==null||nl,!r){t=t!==null&&t.memoizedState!==null||rl,i=nl;var a=rl;nl=r,(rl=t)&&!a?Tl(e,n,(n.subtreeFlags&8772)!=0):Cl(e,n),nl=i,rl=a}break;case 30:break;default:Cl(e,n)}}function ll(e){var t=e.alternate;t!==null&&(e.alternate=null,ll(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&pt(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var ul=null,dl=!1;function fl(e,t,n){for(n=n.child;n!==null;)pl(e,t,n),n=n.sibling}function pl(e,t,n){if(Ie&&typeof Ie.onCommitFiberUnmount==`function`)try{Ie.onCommitFiberUnmount(Fe,n)}catch{}switch(n.tag){case 26:rl||Jc(n,t),fl(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:rl||Jc(n,t);var r=ul,i=dl;sf(n.type)&&(ul=n.stateNode,dl=!1),fl(e,t,n),Sf(n.stateNode),ul=r,dl=i;break;case 5:rl||Jc(n,t);case 6:if(r=ul,i=dl,ul=null,fl(e,t,n),ul=r,dl=i,ul!==null)if(dl)try{(ul.nodeType===9?ul.body:ul.nodeName===`HTML`?ul.ownerDocument.body:ul).removeChild(n.stateNode)}catch(e){Qu(n,t,e)}else try{ul.removeChild(n.stateNode)}catch(e){Qu(n,t,e)}break;case 18:ul!==null&&(dl?(e=ul,cf(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Hp(e)):cf(ul,n.stateNode));break;case 4:r=ul,i=dl,ul=n.stateNode.containerInfo,dl=!0,fl(e,t,n),ul=r,dl=i;break;case 0:case 11:case 14:case 15:Wc(2,n,t),rl||Wc(4,n,t),fl(e,t,n);break;case 1:rl||(Jc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Kc(n,t,r)),fl(e,t,n);break;case 21:fl(e,t,n);break;case 22:rl=(r=rl)||n.memoizedState!==null,fl(e,t,n),rl=r;break;default:fl(e,t,n)}}function ml(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Hp(e)}catch(e){Qu(t,t.return,e)}}}function hl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Hp(e)}catch(e){Qu(t,t.return,e)}}function gl(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new al),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new al),t;default:throw Error(i(435,e.tag))}}function _l(e,t){var n=gl(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=rd.bind(null,e,t);t.then(r,r)}})}function vl(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r],o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(sf(c.type)){ul=c.stateNode,dl=!1;break a}break;case 5:ul=c.stateNode,dl=!1;break a;case 3:case 4:ul=c.stateNode.containerInfo,dl=!0;break a}c=c.return}if(ul===null)throw Error(i(160));pl(o,s,a),ul=null,dl=!1,o=a.alternate,o!==null&&(o.return=null),a.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)bl(t,e),t=t.sibling}var yl=null;function bl(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:vl(t,e),xl(e),r&4&&(Wc(3,e,e.return),Uc(3,e),Wc(5,e,e.return));break;case 1:vl(t,e),xl(e),r&512&&(rl||n===null||Jc(n,n.return)),r&64&&nl&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var a=yl;if(vl(t,e),xl(e),r&512&&(rl||n===null||Jc(n,n.return)),r&4){var o=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null)if(r===null)if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,a=a.ownerDocument||a;b:switch(r){case`title`:o=a.getElementsByTagName(`title`)[0],(!o||o[ft]||o[at]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=a.createElement(r),a.head.insertBefore(o,a.querySelector(`head > title`))),Ud(o,r,n),o[at]=e,vt(o),r=o;break a;case`link`:var s=Xf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&o.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&o.getAttribute(`title`)===(n.title==null?null:n.title)&&o.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}o=a.createElement(r),Ud(o,r,n),a.head.appendChild(o);break;case`meta`:if(s=Xf(`meta`,`content`,a).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`content`)===(n.content==null?null:``+n.content)&&o.getAttribute(`name`)===(n.name==null?null:n.name)&&o.getAttribute(`property`)===(n.property==null?null:n.property)&&o.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&o.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}o=a.createElement(r),Ud(o,r,n),a.head.appendChild(o);break;default:throw Error(i(468,r))}o[at]=e,vt(o),r=o}e.stateNode=r}else Zf(a,e.type,e.stateNode);else e.stateNode=Gf(a,r,e.memoizedProps);else o===r?r===null&&e.stateNode!==null&&Xc(e,e.memoizedProps,n.memoizedProps):(o===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):o.count--,r===null?Zf(a,e.type,e.stateNode):Gf(a,r,e.memoizedProps))}break;case 27:vl(t,e),xl(e),r&512&&(rl||n===null||Jc(n,n.return)),n!==null&&r&4&&Xc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(vl(t,e),xl(e),r&512&&(rl||n===null||Jc(n,n.return)),e.flags&32){a=e.stateNode;try{Wt(a,``)}catch(t){Qu(e,e.return,t)}}r&4&&e.stateNode!=null&&(a=e.memoizedProps,Xc(e,a,n===null?a:n.memoizedProps)),r&1024&&(il=!0);break;case 6:if(vl(t,e),xl(e),r&4){if(e.stateNode===null)throw Error(i(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){Qu(e,e.return,t)}}break;case 3:if(Yf=null,a=yl,yl=Tf(t.containerInfo),vl(t,e),yl=a,xl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Hp(t.containerInfo)}catch(t){Qu(e,e.return,t)}il&&(il=!1,Sl(e));break;case 4:r=yl,yl=Tf(e.stateNode.containerInfo),vl(t,e),xl(e),yl=r;break;case 12:vl(t,e),xl(e);break;case 31:vl(t,e),xl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,_l(e,r)));break;case 13:vl(t,e),xl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(su=Ee()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,_l(e,r)));break;case 22:a=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=nl,d=rl;if(nl=u||a,rl=d||l,vl(t,e),rl=d,nl=u,xl(e),r&8192)a:for(t=e.stateNode,t._visibility=a?t._visibility&-2:t._visibility|1,a&&(n===null||l||nl||rl||wl(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(o=l.stateNode,a)s=o.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){Qu(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=a?``:l.memoizedProps}catch(e){Qu(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;a?lf(m,!0):lf(l.stateNode,!1)}catch(e){Qu(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,_l(e,n))));break;case 19:vl(t,e),xl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,_l(e,r)));break;case 30:break;case 21:break;default:vl(t,e),xl(e)}}function xl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Zc(r)){n=r;break}r=r.return}if(n==null)throw Error(i(160));switch(n.tag){case 27:var a=n.stateNode;el(e,Qc(e),a);break;case 5:var o=n.stateNode;n.flags&32&&(Wt(o,``),n.flags&=-33),el(e,Qc(e),o);break;case 3:case 4:var s=n.stateNode.containerInfo;$c(e,Qc(e),s);break;default:throw Error(i(161))}}catch(t){Qu(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Sl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Sl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function Cl(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)cl(e,t.alternate,t),t=t.sibling}function wl(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Wc(4,t,t.return),wl(t);break;case 1:Jc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&Kc(t,t.return,n),wl(t);break;case 27:Sf(t.stateNode);case 26:case 5:Jc(t,t.return),wl(t);break;case 22:t.memoizedState===null&&wl(t);break;case 30:wl(t);break;default:wl(t)}e=e.sibling}}function Tl(e,t,n){for(n&&=(t.subtreeFlags&8772)!=0,t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:Tl(i,a,n),Uc(4,a);break;case 1:if(Tl(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Qu(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)qa(c[i],s)}catch(e){Qu(r,r.return,e)}}n&&o&64&&Gc(a),qc(a,a.return);break;case 27:tl(a);case 26:case 5:Tl(i,a,n),n&&r===null&&o&4&&Yc(a),qc(a,a.return);break;case 12:Tl(i,a,n);break;case 31:Tl(i,a,n),n&&o&4&&ml(i,a);break;case 13:Tl(i,a,n),n&&o&4&&hl(i,a);break;case 22:a.memoizedState===null&&Tl(i,a,n),qc(a,a.return);break;case 30:break;default:Tl(i,a,n)}t=t.sibling}}function El(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&oa(n))}function Dl(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&oa(e))}function Ol(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)kl(e,t,n,r),t=t.sibling}function kl(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:Ol(e,t,n,r),i&2048&&Uc(9,t);break;case 1:Ol(e,t,n,r);break;case 3:Ol(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&oa(e)));break;case 12:if(i&2048){Ol(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){Qu(t,t.return,e)}}else Ol(e,t,n,r);break;case 31:Ol(e,t,n,r);break;case 13:Ol(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?Ol(e,t,n,r):(a._visibility|=2,Al(e,t,n,r,(t.subtreeFlags&10256)!=0||!1)):a._visibility&2?Ol(e,t,n,r):jl(e,t),i&2048&&El(o,t);break;case 24:Ol(e,t,n,r),i&2048&&Dl(t.alternate,t);break;default:Ol(e,t,n,r)}}function Al(e,t,n,r,i){for(i&&=(t.subtreeFlags&10256)!=0||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:Al(a,o,s,c,i),Uc(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,Al(a,o,s,c,i)):u._visibility&2?Al(a,o,s,c,i):jl(a,o),i&&l&2048&&El(o.alternate,o);break;case 24:Al(a,o,s,c,i),i&&l&2048&&Dl(o.alternate,o);break;default:Al(a,o,s,c,i)}t=t.sibling}}function jl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:jl(n,r),i&2048&&El(r.alternate,r);break;case 24:jl(n,r),i&2048&&Dl(r.alternate,r);break;default:jl(n,r)}t=t.sibling}}var Ml=8192;function Nl(e,t,n){if(e.subtreeFlags&Ml)for(e=e.child;e!==null;)Pl(e,t,n),e=e.sibling}function Pl(e,t,n){switch(e.tag){case 26:Nl(e,t,n),e.flags&Ml&&e.memoizedState!==null&&ep(n,yl,e.memoizedState,e.memoizedProps);break;case 5:Nl(e,t,n);break;case 3:case 4:var r=yl;yl=Tf(e.stateNode.containerInfo),Nl(e,t,n),yl=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Ml,Ml=16777216,Nl(e,t,n),Ml=r):Nl(e,t,n));break;default:Nl(e,t,n)}}function Fl(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Il(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];ol=r,zl(r,e)}Fl(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Ll(e),e=e.sibling}function Ll(e){switch(e.tag){case 0:case 11:case 15:Il(e),e.flags&2048&&Wc(9,e,e.return);break;case 3:Il(e);break;case 12:Il(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Rl(e)):Il(e);break;default:Il(e)}}function Rl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];ol=r,zl(r,e)}Fl(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Wc(8,t,t.return),Rl(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,Rl(t));break;default:Rl(t)}e=e.sibling}}function zl(e,t){for(;ol!==null;){var n=ol;switch(n.tag){case 0:case 11:case 15:Wc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:oa(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,ol=r;else a:for(n=e;ol!==null;){r=ol;var i=r.sibling,a=r.return;if(ll(r),r===n){ol=null;break a}if(i!==null){i.return=a,ol=i;break a}ol=a}}}var Bl={getCacheForType:function(e){var t=Qi(ia),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return Qi(ia).controller.signal}},Vl=typeof WeakMap==`function`?WeakMap:Map,Hl=0,Ul=null,Wl=null,Gl=0,Kl=0,ql=null,Jl=!1,Yl=!1,Xl=!1,Zl=0,Ql=0,$l=0,eu=0,tu=0,nu=0,ru=0,iu=null,au=null,ou=!1,su=0,cu=0,lu=1/0,uu=null,du=null,fu=0,pu=null,mu=null,hu=0,gu=0,_u=null,vu=null,yu=0,bu=null;function xu(){return Hl&2&&Gl!==0?Gl&-Gl:P.T===null?nt():yd()}function Su(){if(nu===0)if(!(Gl&536870912)||Mi){var e=Ue;Ue<<=1,!(Ue&3932160)&&(Ue=262144),nu=e}else nu=536870912;return e=eo.current,e!==null&&(e.flags|=32),nu}function Cu(e,t,n){(e===Ul&&(Kl===2||Kl===9)||e.cancelPendingCommit!==null)&&(ku(e,0),Eu(e,Gl,nu,!1)),Xe(e,n),(!(Hl&2)||e!==Ul)&&(e===Ul&&(!(Hl&2)&&(eu|=n),Ql===4&&Eu(e,Gl,nu,!1)),dd(e))}function wu(e,t,n){if(Hl&6)throw Error(i(327));var r=!n&&(t&127)==0&&(t&e.expiredLanes)===0||qe(e,t),a=r?Lu(e,t):Fu(e,t,!0),o=r;do{if(a===0){Yl&&!r&&Eu(e,t,0,!1);break}else{if(n=e.current.alternate,o&&!Tu(n)){a=Fu(e,t,!1),o=!1;continue}if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=iu;var l=c.current.memoizedState.isDehydrated;if(l&&(ku(c,s).flags|=256),s=Fu(c,s,!1),s!==2){if(Xl&&!l){c.errorRecoveryDisabledLanes|=o,eu|=o,a=4;break a}o=au,au=a,o!==null&&(au===null?au=o:au.push.apply(au,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){ku(e,0),Eu(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t)break;case 6:Eu(r,t,nu,!Jl);break a;case 2:au=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=su+300-Ee(),10<a)){if(Eu(r,t,nu,!Jl),Ke(r,0,!0)!==0)break a;hu=t,r.timeoutHandle=tf(H.bind(null,r,n,au,uu,ou,t,nu,eu,ru,Jl,o,`Throttled`,-0,0),a);break a}H(r,n,au,uu,ou,t,nu,eu,ru,Jl,o,null,-0,0)}}break}while(1);dd(e)}function H(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Qt},Pl(t,a,d);var m=(a&62914560)===a?su-Ee():(a&4194048)===a?cu-Ee():0;if(m=np(d,m),m!==null){hu=a,e.cancelPendingCommit=m(Wu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),Eu(e,a,o,!l);return}}Wu(e,t,a,n,r,i,o,s,c)}function Tu(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!xr(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function Eu(e,t,n,r){t&=~tu,t&=~eu,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Re(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Qe(e,n,t)}function Du(){return Hl&6?!0:(fd(0,!1),!1)}function Ou(){if(Wl!==null){if(Kl===0)var e=Wl.return;else e=Wl,Wi=B=null,ko(e),ka=null,Aa=0,e=Wl;for(;e!==null;)Hc(e.alternate,e),e=e.return;Wl=null}}function ku(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,nf(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),hu=0,Ou(),Ul=e,Wl=n=z(e.current,null),Gl=t,Kl=0,ql=null,Jl=!1,Yl=qe(e,t),Xl=!1,ru=nu=tu=eu=$l=Ql=0,au=iu=null,ou=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Re(r),a=1<<i;t|=e[i],r&=~a}return Zl=t,$r(),n}function Au(e,t){uo=null,P.H=zs,t===ya||t===xa?(t=Da(),Kl=3):t===ba?(t=Da(),Kl=4):Kl=t===rc?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,ql=t,Wl===null&&(Ql=1,Zs(e,hi(t,e.current)))}function ju(){var e=eo.current;return e===null?!0:(Gl&4194048)===Gl?to===null:(Gl&62914560)===Gl||Gl&536870912?e===to:!1}function Mu(){var e=P.H;return P.H=zs,e===null?zs:e}function Nu(){var e=P.A;return P.A=Bl,e}function Pu(){Ql=4,Jl||(Gl&4194048)!==Gl&&eo.current!==null||(Yl=!0),!($l&134217727)&&!(eu&134217727)||Ul===null||Eu(Ul,Gl,nu,!1)}function Fu(e,t,n){var r=Hl;Hl|=2;var i=Mu(),a=Nu();(Ul!==e||Gl!==t)&&(uu=null,ku(e,t)),t=!1;var o=Ql;a:do try{if(Kl!==0&&Wl!==null){var s=Wl,c=ql;switch(Kl){case 8:Ou(),o=6;break a;case 3:case 2:case 9:case 6:eo.current===null&&(t=!0);var l=Kl;if(Kl=0,ql=null,Vu(e,s,c,l),n&&Yl){o=0;break a}break;default:l=Kl,Kl=0,ql=null,Vu(e,s,c,l)}}Iu(),o=Ql;break}catch(t){Au(e,t)}while(1);return t&&e.shellSuspendCounter++,Wi=B=null,Hl=r,P.H=i,P.A=a,Wl===null&&(Ul=null,Gl=0,$r()),o}function Iu(){for(;Wl!==null;)zu(Wl)}function Lu(e,t){var n=Hl;Hl|=2;var r=Mu(),a=Nu();Ul!==e||Gl!==t?(uu=null,lu=Ee()+500,ku(e,t)):Yl=qe(e,t);a:do try{if(Kl!==0&&Wl!==null){t=Wl;var o=ql;b:switch(Kl){case 1:Kl=0,ql=null,Vu(e,t,o,1);break;case 2:case 9:if(Ca(o)){Kl=0,ql=null,Bu(t);break}t=function(){Kl!==2&&Kl!==9||Ul!==e||(Kl=7),dd(e)},o.then(t,t);break a;case 3:Kl=7;break a;case 4:Kl=5;break a;case 7:Ca(o)?(Kl=0,ql=null,Bu(t)):(Kl=0,ql=null,Vu(e,t,o,7));break;case 5:var s=null;switch(Wl.tag){case 26:s=Wl.memoizedState;case 5:case 27:var c=Wl;if(s?$f(s):c.stateNode.complete){Kl=0,ql=null;var l=c.sibling;if(l!==null)Wl=l;else{var u=c.return;u===null?Wl=null:(Wl=u,Hu(u))}break b}}Kl=0,ql=null,Vu(e,t,o,5);break;case 6:Kl=0,ql=null,Vu(e,t,o,6);break;case 8:Ou(),Ql=6;break a;default:throw Error(i(462))}}Ru();break}catch(t){Au(e,t)}while(1);return Wi=B=null,P.H=r,P.A=a,Hl=n,Wl===null?(Ul=null,Gl=0,$r(),Ql):0}function Ru(){for(;Wl!==null&&!we();)zu(Wl)}function zu(e){var t=Nc(e.alternate,e,Zl);e.memoizedProps=e.pendingProps,t===null?Hu(e):Wl=t}function Bu(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=_c(n,t,t.pendingProps,t.type,void 0,Gl);break;case 11:t=_c(n,t,t.pendingProps,t.type.render,t.ref,Gl);break;case 5:ko(t);default:Hc(n,t),t=Wl=ci(t,Zl),t=Nc(n,t,Zl)}e.memoizedProps=e.pendingProps,t===null?Hu(e):Wl=t}function Vu(e,t,n,r){Wi=B=null,ko(t),ka=null,Aa=0;var i=t.return;try{if(nc(e,i,t,n,Gl)){Ql=1,Zs(e,hi(n,e.current)),Wl=null;return}}catch(t){if(i!==null)throw Wl=i,t;Ql=1,Zs(e,hi(n,e.current)),Wl=null;return}t.flags&32768?(Mi||r===1?e=!0:Yl||Gl&536870912?e=!1:(Jl=e=!0,(r===2||r===9||r===3||r===6)&&(r=eo.current,r!==null&&r.tag===13&&(r.flags|=16384))),Uu(t,e)):Hu(t)}function Hu(e){var t=e;do{if(t.flags&32768){Uu(t,Jl);return}e=t.return;var n=Bc(t.alternate,t,Zl);if(n!==null){Wl=n;return}if(t=t.sibling,t!==null){Wl=t;return}Wl=t=e}while(t!==null);Ql===0&&(Ql=5)}function Uu(e,t){do{var n=Vc(e.alternate,e);if(n!==null){n.flags&=32767,Wl=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){Wl=e;return}Wl=e=n}while(e!==null);Ql=6,Wl=null}function Wu(e,t,n,r,a,o,s,c,l){e.cancelPendingCommit=null;do Yu();while(fu!==0);if(Hl&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));if(o=t.lanes|t.childLanes,o|=Qr,Ze(e,n,o,s,c,l),e===Ul&&(Wl=Ul=null,Gl=0),mu=t,pu=e,hu=n,gu=o,_u=a,vu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,id(Ae,function(){return Xu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=(t.flags&13878)!=0,t.subtreeFlags&13878||r){r=P.T,P.T=null,a=F.p,F.p=2,s=Hl,Hl|=4;try{sl(e,t,n)}finally{Hl=s,F.p=a,P.T=r}}fu=1,Gu(),Ku(),qu()}}function Gu(){if(fu===1){fu=0;var e=pu,t=mu,n=(t.flags&13878)!=0;if(t.subtreeFlags&13878||n){n=P.T,P.T=null;var r=F.p;F.p=2;var i=Hl;Hl|=4;try{bl(t,e);var a=Jd,o=Er(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&Tr(s.ownerDocument.documentElement,s)){if(c!==null&&Dr(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=wr(s,h),v=wr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}gp=!!qd,Jd=qd=null}finally{Hl=i,F.p=r,P.T=n}}e.current=t,fu=2}}function Ku(){if(fu===2){fu=0;var e=pu,t=mu,n=(t.flags&8772)!=0;if(t.subtreeFlags&8772||n){n=P.T,P.T=null;var r=F.p;F.p=2;var i=Hl;Hl|=4;try{cl(e,t.alternate,t)}finally{Hl=i,F.p=r,P.T=n}}fu=3}}function qu(){if(fu===4||fu===3){fu=0,Te();var e=pu,t=mu,n=hu,r=vu;t.subtreeFlags&10256||t.flags&10256?fu=5:(fu=0,mu=pu=null,Ju(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(du=null),tt(n),t=t.stateNode,Ie&&typeof Ie.onCommitFiberRoot==`function`)try{Ie.onCommitFiberRoot(Fe,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=P.T,i=F.p,F.p=2,P.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{P.T=t,F.p=i}}hu&3&&Yu(),dd(e),i=e.pendingLanes,n&261930&&i&42?e===bu?yu++:(yu=0,bu=e):yu=0,fd(0,!1)}}function Ju(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,oa(t)))}function Yu(){return Gu(),Ku(),qu(),Xu()}function Xu(){if(fu!==5)return!1;var e=pu,t=gu;gu=0;var n=tt(hu),r=P.T,a=F.p;try{F.p=32>n?32:n,P.T=null,n=_u,_u=null;var o=pu,s=hu;if(fu=0,mu=pu=null,hu=0,Hl&6)throw Error(i(331));var c=Hl;if(Hl|=4,Ll(o.current),kl(o,o.current,s,n),Hl=c,fd(0,!1),Ie&&typeof Ie.onPostCommitFiberRoot==`function`)try{Ie.onPostCommitFiberRoot(Fe,o)}catch{}return!0}finally{F.p=a,P.T=r,Ju(e,t)}}function Zu(e,t,n){t=hi(n,t),t=$s(e.stateNode,t,2),e=Va(e,t,2),e!==null&&(Xe(e,2),dd(e))}function Qu(e,t,n){if(e.tag===3)Zu(e,e,n);else for(;t!==null;){if(t.tag===3){Zu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(du===null||!du.has(r))){e=hi(n,e),n=ec(2),r=Va(t,n,2),r!==null&&(tc(n,r,t,e),Xe(r,2),dd(r));break}}t=t.return}}function $u(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Vl;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Xl=!0,i.add(n),e=ed.bind(null,e,t,n),t.then(e,e))}function ed(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ul===e&&(Gl&n)===n&&(Ql===4||Ql===3&&(Gl&62914560)===Gl&&300>Ee()-su?!(Hl&2)&&ku(e,0):tu|=n,ru===Gl&&(ru=0)),dd(e)}function td(e,t){t===0&&(t=Je()),e=ni(e,t),e!==null&&(Xe(e,t),dd(e))}function nd(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),td(e,n)}function rd(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),td(e,n)}function id(e,t){return Se(e,t)}var ad=null,od=null,sd=!1,cd=!1,ld=!1,ud=0;function dd(e){e!==od&&e.next===null&&(od===null?ad=od=e:od=od.next=e),cd=!0,sd||(sd=!0,vd())}function fd(e,t){if(!ld&&cd){ld=!0;do for(var n=!1,r=ad;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Re(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,_d(r,a))}else a=Gl,a=Ke(r,r===Ul?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||qe(r,a)||(n=!0,_d(r,a));r=r.next}while(n);ld=!1}}function pd(){md()}function md(){cd=sd=!1;var e=0;ud!==0&&ef()&&(e=ud);for(var t=Ee(),n=null,r=ad;r!==null;){var i=r.next,a=hd(r,t);a===0?(r.next=null,n===null?ad=i:n.next=i,i===null&&(od=n)):(n=r,(e!==0||a&3)&&(cd=!0)),r=i}fu!==0&&fu!==5||fd(e,!1),ud!==0&&(ud=0)}function hd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Re(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=I(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Ul,n=Gl,n=Ke(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(Kl===2||Kl===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&Ce(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||qe(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&Ce(r),tt(n)){case 2:case 8:n=ke;break;case 32:n=Ae;break;case 268435456:n=Me;break;default:n=Ae}return r=gd.bind(null,e),n=Se(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&Ce(r),e.callbackPriority=2,e.callbackNode=null,2}function gd(e,t){if(fu!==0&&fu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Yu()&&e.callbackNode!==n)return null;var r=Gl;return r=Ke(e,e===Ul?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(wu(e,r,t),hd(e,Ee()),e.callbackNode!=null&&e.callbackNode===n?gd.bind(null,e):null)}function _d(e,t){if(Yu())return null;wu(e,t,!0)}function vd(){af(function(){Hl&6?Se(Oe,pd):md()})}function yd(){if(ud===0){var e=la;e===0&&(e=He,He<<=1,!(He&261888)&&(He=256)),ud=e}return ud}function bd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:Zt(``+e)}function xd(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function Sd(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=bd((i[ot]||null).action),o=r.submitter;o&&(t=(t=o[ot]||null)?bd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new bn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(ud!==0){var e=o?xd(i,o):new FormData(i);Ts(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?xd(i,o):new FormData(i),Ts(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var Cd=0;Cd<qr.length;Cd++){var wd=qr[Cd];Jr(wd.toLowerCase(),`on`+(wd[0].toUpperCase()+wd.slice(1)))}Jr(zr,`onAnimationEnd`),Jr(Br,`onAnimationIteration`),Jr(Vr,`onAnimationStart`),Jr(`dblclick`,`onDoubleClick`),Jr(`focusin`,`onFocus`),Jr(`focusout`,`onBlur`),Jr(Hr,`onTransitionRun`),Jr(Ur,`onTransitionStart`),Jr(Wr,`onTransitionCancel`),Jr(Gr,`onTransitionEnd`),St(`onMouseEnter`,[`mouseout`,`mouseover`]),St(`onMouseLeave`,[`mouseout`,`mouseover`]),St(`onPointerEnter`,[`pointerout`,`pointerover`]),St(`onPointerLeave`,[`pointerout`,`pointerover`]),xt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),xt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),xt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),xt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),xt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),xt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var Td=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),Ed=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(Td));function Dd(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Yr(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Yr(e)}i.currentTarget=null,a=c}}}}function Od(e,t){var n=t[ct];n===void 0&&(n=t[ct]=new Set);var r=e+`__bubble`;n.has(r)||(jd(t,e,2,!1),n.add(r))}function kd(e,t,n){var r=0;t&&(r|=4),jd(n,e,r,t)}var Ad=`_reactListening`+Math.random().toString(36).slice(2);function U(e){if(!e[Ad]){e[Ad]=!0,yt.forEach(function(t){t!==`selectionchange`&&(Ed.has(t)||kd(t,!1,e),kd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Ad]||(t[Ad]=!0,kd(`selectionchange`,!1,t))}}function jd(e,t,n,r){switch(Cp(t)){case 2:var i=_p;break;case 8:i=vp;break;default:i=yp}n=i.bind(null,t,n,e),i=void 0,!ln||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function Md(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=mt(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}on(function(){var r=a,i=en(n),s=[];a:{var c=Kr.get(e);if(c!==void 0){var l=bn,u=e;switch(e){case`keypress`:if(hn(n)===0)break a;case`keydown`:case`keyup`:l=Rn;break;case`focusin`:u=`focus`,l=kn;break;case`focusout`:u=`blur`,l=kn;break;case`beforeblur`:case`afterblur`:l=kn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=Dn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=On;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=Bn;break;case zr:case Br:case Vr:l=An;break;case Gr:l=Vn;break;case`scroll`:case`scrollend`:l=Sn;break;case`wheel`:l=Hn;break;case`copy`:case`cut`:case`paste`:l=jn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=zn;break;case`toggle`:case`beforetoggle`:l=Un}var d=(t&4)!=0,f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=sn(m,p),g!=null&&d.push(Nd(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(c=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,c&&n!==$t&&(u=n.relatedTarget||n.fromElement)&&(mt(u)||u[st]))break a;if((l||c)&&(c=i.window===i?i:(c=i.ownerDocument)?c.defaultView||c.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?mt(u):null,u!==null&&(f=o(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=Dn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=zn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:gt(l),h=u==null?c:gt(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,mt(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Fd,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Id(s,c,l,d,!1),u!==null&&f!==null&&Id(s,f,u,d,!0)}}a:{if(c=r?gt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=lr;else if(rr(c))if(ur)v=yr;else{v=_r;var y=gr}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Jt(r.elementType)&&(v=lr):v=vr;if(v&&=v(e,r)){ir(s,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&Bt(c,`number`,c.value)}switch(y=r?gt(r):window,e){case`focusin`:(rr(y)||y.contentEditable===`true`)&&(kr=y,Ar=r,jr=null);break;case`focusout`:jr=Ar=kr=null;break;case`mousedown`:Mr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Mr=!1,Nr(s,n,i);break;case`selectionchange`:if(Or)break;case`keydown`:case`keyup`:Nr(s,n,i)}var b;if(Gn)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else $n?Zn(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Jn&&n.locale!==`ko`&&($n||x!==`onCompositionStart`?x===`onCompositionEnd`&&$n&&(b=mn()):(dn=i,fn=`value`in dn?dn.value:dn.textContent,$n=!0)),y=Pd(r,x),0<y.length&&(x=new Mn(x,e,null,n,i),s.push({event:x,listeners:y}),b?x.data=b:(b=Qn(n),b!==null&&(x.data=b)))),(b=qn?er(e,n):tr(e,n))&&(x=Pd(r,`onBeforeInput`),0<x.length&&(y=new Mn(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:y,listeners:x}),y.data=b)),Sd(s,e,r,n,i)}Dd(s,t)})}function Nd(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Pd(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=sn(e,n),i!=null&&r.unshift(Nd(e,i,a)),i=sn(e,t),i!=null&&r.push(Nd(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Fd(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Id(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=sn(n,a),l!=null&&o.unshift(Nd(n,l,c))):i||(l=sn(n,a),l!=null&&o.push(Nd(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var Ld=/\r\n?/g,Rd=/\u0000|\uFFFD/g;function zd(e){return(typeof e==`string`?e:``+e).replace(Ld,`
|
|
216
|
-
`).replace(Rd,``)}function Bd(e,t){return t=zd(t),zd(e)===t}function Vd(e,t,n,r,a,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||Wt(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&Wt(e,``+r);break;case`className`:Ot(e,`class`,r);break;case`tabIndex`:Ot(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:Ot(e,n,r);break;case`style`:qt(e,r,o);break;case`data`:if(t!==`object`){Ot(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Zt(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}else typeof o==`function`&&(n===`formAction`?(t!==`input`&&Vd(e,t,`name`,a.name,a,null),Vd(e,t,`formEncType`,a.formEncType,a,null),Vd(e,t,`formMethod`,a.formMethod,a,null),Vd(e,t,`formTarget`,a.formTarget,a,null)):(Vd(e,t,`encType`,a.encType,a,null),Vd(e,t,`method`,a.method,a,null),Vd(e,t,`target`,a.target,a,null)));if(r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Zt(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=Qt);break;case`onScroll`:r!=null&&Od(`scroll`,e);break;case`onScrollEnd`:r!=null&&Od(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=Zt(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:Od(`beforetoggle`,e),Od(`toggle`,e),Dt(e,`popover`,r);break;case`xlinkActuate`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:kt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:kt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:kt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:Dt(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=Yt.get(n)||n,Dt(e,n,r))}}function Hd(e,t,n,r,a,o){switch(n){case`style`:qt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?Wt(e,r):(typeof r==`number`||typeof r==`bigint`)&&Wt(e,``+r);break;case`onScroll`:r!=null&&Od(`scroll`,e);break;case`onScrollEnd`:r!=null&&Od(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=Qt);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!bt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),t=n.slice(2,a?n.length-7:void 0),o=e[ot]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,a),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,a);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):Dt(e,n,r)}}}function Ud(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:Od(`error`,e),Od(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Vd(e,t,o,s,n,null)}}a&&Vd(e,t,`srcSet`,n.srcSet,n,null),r&&Vd(e,t,`src`,n.src,n,null);return;case`input`:Od(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:Vd(e,t,r,d,n,null)}}zt(e,o,c,l,u,s,a,!1);return;case`select`:for(a in Od(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:Vd(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&Vt(e,!!r,n,!0):Vt(e,!!r,t,!1);return;case`textarea`:for(s in Od(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:Vd(e,t,s,c,n,null)}Ut(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Vd(e,t,l,r,n,null)}return;case`dialog`:Od(`beforetoggle`,e),Od(`toggle`,e),Od(`cancel`,e),Od(`close`,e);break;case`iframe`:case`object`:Od(`load`,e);break;case`video`:case`audio`:for(r=0;r<Td.length;r++)Od(Td[r],e);break;case`image`:Od(`error`,e),Od(`load`,e);break;case`details`:Od(`toggle`,e);break;case`embed`:case`source`:case`link`:Od(`error`,e),Od(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Vd(e,t,u,r,n,null)}return;default:if(Jt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Hd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Vd(e,t,c,r,n,null))}function Wd(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||Vd(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:a=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&Vd(e,t,p,m,r,f)}}Rt(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||Vd(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&Vd(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?Vt(e,!!n,n?[]:``,!1):Vt(e,!!n,t,!0)):Vt(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:Vd(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:p=a;break;case`defaultValue`:m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&Vd(e,t,s,a,r,o)}Ht(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:Vd(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:Vd(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&Vd(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:Vd(e,t,u,p,r,m)}return;default:if(Jt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Hd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Hd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Vd(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||Vd(e,t,f,p,r,m)}function Gd(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Kd(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Gd(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Gd(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var qd=null,Jd=null;function Yd(e){return e.nodeType===9?e:e.ownerDocument}function Xd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Zd(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Qd(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var $d=null;function ef(){var e=window.event;return e&&e.type===`popstate`?e===$d?!1:($d=e,!0):($d=null,!1)}var tf=typeof setTimeout==`function`?setTimeout:void 0,nf=typeof clearTimeout==`function`?clearTimeout:void 0,rf=typeof Promise==`function`?Promise:void 0,af=typeof queueMicrotask==`function`?queueMicrotask:rf===void 0?tf:function(e){return rf.resolve(null).then(e).catch(of)};function of(e){setTimeout(function(){throw e})}function sf(e){return e===`head`}function cf(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Hp(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)Sf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,Sf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[ft]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&Sf(e.ownerDocument.body);n=i}while(n);Hp(t)}function lf(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8)if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++;n=r}while(n)}function uf(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:uf(n),pt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function df(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r)if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e;else if(!e[ft])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=_f(e.nextSibling),e===null)break}return null}function ff(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=_f(e.nextSibling),e===null))return null;return e}function pf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=_f(e.nextSibling),e===null))return null;return e}function mf(e){return e.data===`$?`||e.data===`$~`}function hf(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function gf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function _f(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var vf=null;function yf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return _f(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function bf(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function xf(e,t,n){switch(t=Yd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function Sf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);pt(e)}var Cf=new Map,wf=new Set;function Tf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Ef=F.d;F.d={f:Df,r:Of,D:jf,C:Mf,L:Nf,m:Pf,X:If,S:Ff,M:Lf};function Df(){var e=Ef.f(),t=Du();return e||t}function Of(e){var t=ht(e);t!==null&&t.tag===5&&t.type===`form`?Ds(t):Ef.r(e)}var kf=typeof document>`u`?null:document;function Af(e,t,n){var r=kf;if(r&&typeof t==`string`&&t){var i=Lt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),wf.has(i)||(wf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Ud(t,`link`,e),vt(t),r.head.appendChild(t)))}}function jf(e){Ef.D(e),Af(`dns-prefetch`,e,null)}function Mf(e,t){Ef.C(e,t),Af(`preconnect`,e,t)}function Nf(e,t,n){Ef.L(e,t,n);var r=kf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Lt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Lt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Lt(n.imageSizes)+`"]`)):i+=`[href="`+Lt(e)+`"]`;var a=i;switch(t){case`style`:a=zf(e);break;case`script`:a=Uf(e)}Cf.has(a)||(e=f({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),Cf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Bf(a))||t===`script`&&r.querySelector(Wf(a))||(t=r.createElement(`link`),Ud(t,`link`,e),vt(t),r.head.appendChild(t)))}}function Pf(e,t){Ef.m(e,t);var n=kf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Lt(r)+`"][href="`+Lt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Uf(e)}if(!Cf.has(a)&&(e=f({rel:`modulepreload`,href:e},t),Cf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Wf(a)))return}r=n.createElement(`link`),Ud(r,`link`,e),vt(r),n.head.appendChild(r)}}}function Ff(e,t,n){Ef.S(e,t,n);var r=kf;if(r&&e){var i=_t(r).hoistableStyles,a=zf(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Bf(a)))s.loading=5;else{e=f({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=Cf.get(a))&&qf(e,n);var c=o=r.createElement(`link`);vt(c),Ud(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Kf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function If(e,t){Ef.X(e,t);var n=kf;if(n&&e){var r=_t(n).hoistableScripts,i=Uf(e),a=r.get(i);a||(a=n.querySelector(Wf(i)),a||(e=f({src:e,async:!0},t),(t=Cf.get(i))&&Jf(e,t),a=n.createElement(`script`),vt(a),Ud(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Lf(e,t){Ef.M(e,t);var n=kf;if(n&&e){var r=_t(n).hoistableScripts,i=Uf(e),a=r.get(i);a||(a=n.querySelector(Wf(i)),a||(e=f({src:e,async:!0,type:`module`},t),(t=Cf.get(i))&&Jf(e,t),a=n.createElement(`script`),vt(a),Ud(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Rf(e,t,n,r){var a=(a=ce.current)?Tf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=zf(n.href),n=_t(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=zf(n.href);var o=_t(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Bf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),Cf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Cf.set(e,n),o||Hf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Uf(n),n=_t(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function zf(e){return`href="`+Lt(e)+`"`}function Bf(e){return`link[rel="stylesheet"][`+e+`]`}function Vf(e){return f({},e,{"data-precedence":e.precedence,precedence:null})}function Hf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Ud(t,`link`,n),vt(t),e.head.appendChild(t))}function Uf(e){return`[src="`+Lt(e)+`"]`}function Wf(e){return`script[async]`+e}function Gf(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Lt(n.href)+`"]`);if(r)return t.instance=r,vt(r),r;var a=f({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),vt(r),Ud(r,`style`,a),Kf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=zf(n.href);var o=e.querySelector(Bf(a));if(o)return t.state.loading|=4,t.instance=o,vt(o),o;r=Vf(n),(a=Cf.get(a))&&qf(r,a),o=(e.ownerDocument||e).createElement(`link`),vt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Ud(o,`link`,r),t.state.loading|=4,Kf(o,n.precedence,e),t.instance=o;case`script`:return o=Uf(n.src),(a=e.querySelector(Wf(o)))?(t.instance=a,vt(a),a):(r=n,(a=Cf.get(o))&&(r=f({},n),Jf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),vt(a),Ud(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Kf(r,n.precedence,e));return t.instance}function Kf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function qf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function Jf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Yf=null;function Xf(e,t,n){if(Yf===null){var r=new Map,i=Yf=new Map;i.set(n,r)}else i=Yf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[ft]||a[at]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Zf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Qf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function $f(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function ep(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=zf(r.href),a=t.querySelector(Bf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=rp.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,vt(a);return}a=t.ownerDocument||t,r=Vf(r),(i=Cf.get(i))&&qf(r,i),a=a.createElement(`link`),vt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Ud(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=rp.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var tp=0;function np(e,t){return e.stylesheets&&e.count===0&&ap(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&ap(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&tp===0&&(tp=62500*Kd());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&ap(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>tp?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function rp(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ap(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ip=null;function ap(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ip=new Map,t.forEach(op,e),ip=null,rp.call(e))}function op(e,t){if(!(t.state.loading&4)){var n=ip.get(e);if(n)var r=n.get(null);else{n=new Map,ip.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=rp.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var sp={$$typeof:x,Provider:null,Consumer:null,_currentValue:ee,_currentValue2:ee,_threadCount:0};function cp(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ye(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ye(0),this.hiddenUpdates=Ye(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function lp(e,t,n,r,i,a,o,s,c,l,u,d){return e=new cp(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=oi(3,null,null,t),e.current=a,a.stateNode=e,t=aa(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Ra(a),e}function up(e){return e?(e=R,e):R}function dp(e,t,n,r,i,a){i=up(i),r.context===null?r.context=i:r.pendingContext=i,r=Ba(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Va(e,r,t),n!==null&&(Cu(n,e,t),Ha(n,e,t))}function fp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function pp(e,t){fp(e,t),(e=e.alternate)&&fp(e,t)}function mp(e){if(e.tag===13||e.tag===31){var t=ni(e,67108864);t!==null&&Cu(t,e,67108864),pp(e,67108864)}}function hp(e){if(e.tag===13||e.tag===31){var t=xu();t=et(t);var n=ni(e,t);n!==null&&Cu(n,e,t),pp(e,t)}}var gp=!0;function _p(e,t,n,r){var i=P.T;P.T=null;var a=F.p;try{F.p=2,yp(e,t,n,r)}finally{F.p=a,P.T=i}}function vp(e,t,n,r){var i=P.T;P.T=null;var a=F.p;try{F.p=8,yp(e,t,n,r)}finally{F.p=a,P.T=i}}function yp(e,t,n,r){if(gp){var i=bp(r);if(i===null)Md(e,t,r,xp,n),Mp(e,r);else if(Pp(i,e,t,n,r))r.stopPropagation();else if(Mp(e,r),t&4&&-1<jp.indexOf(e)){for(;i!==null;){var a=ht(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Ge(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Re(o);s.entanglements[1]|=c,o&=~c}dd(a),!(Hl&6)&&(lu=Ee()+500,fd(0,!1))}}break;case 31:case 13:s=ni(a,2),s!==null&&Cu(s,a,2),Du(),pp(a,2)}if(a=bp(r),a===null&&Md(e,t,r,xp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else Md(e,t,r,null,n)}}function bp(e){return e=en(e),Sp(e)}var xp=null;function Sp(e){if(xp=null,e=mt(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return xp=e,null}function Cp(e){switch(e){case`beforetoggle`: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`toggle`: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 2;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`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(De()){case Oe:return 2;case ke:return 8;case Ae:case je:return 32;case Me:return 268435456;default:return 32}default:return 32}}var wp=!1,Tp=null,Ep=null,Dp=null,Op=new Map,kp=new Map,Ap=[],jp=`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`.split(` `);function Mp(e,t){switch(e){case`focusin`:case`focusout`:Tp=null;break;case`dragenter`:case`dragleave`:Ep=null;break;case`mouseover`:case`mouseout`:Dp=null;break;case`pointerover`:case`pointerout`:Op.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:kp.delete(t.pointerId)}}function Np(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=ht(t),t!==null&&mp(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Pp(e,t,n,r,i){switch(t){case`focusin`:return Tp=Np(Tp,e,t,n,r,i),!0;case`dragenter`:return Ep=Np(Ep,e,t,n,r,i),!0;case`mouseover`:return Dp=Np(Dp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return Op.set(a,Np(Op.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,kp.set(a,Np(kp.get(a)||null,e,t,n,r,i)),!0}return!1}function Fp(e){var t=mt(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,rt(e.priority,function(){hp(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,rt(e.priority,function(){hp(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ip(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=bp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);$t=r,n.target.dispatchEvent(r),$t=null}else return t=ht(n),t!==null&&mp(t),e.blockedOn=n,!1;t.shift()}return!0}function Lp(e,t,n){Ip(e)&&n.delete(t)}function Rp(){wp=!1,Tp!==null&&Ip(Tp)&&(Tp=null),Ep!==null&&Ip(Ep)&&(Ep=null),Dp!==null&&Ip(Dp)&&(Dp=null),Op.forEach(Lp),kp.forEach(Lp)}function zp(e,n){e.blockedOn===n&&(e.blockedOn=null,wp||(wp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Rp)))}var Bp=null;function Vp(e){Bp!==e&&(Bp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){Bp===e&&(Bp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(Sp(r||n)===null)continue;break}var a=ht(n);a!==null&&(e.splice(t,3),t-=3,Ts(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Hp(e){function t(t){return zp(t,e)}Tp!==null&&zp(Tp,e),Ep!==null&&zp(Ep,e),Dp!==null&&zp(Dp,e),Op.forEach(t),kp.forEach(t);for(var n=0;n<Ap.length;n++){var r=Ap[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<Ap.length&&(n=Ap[0],n.blockedOn===null);)Fp(n),n.blockedOn===null&&Ap.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[ot]||null;if(typeof a==`function`)o||Vp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[ot]||null)s=o.formAction;else if(Sp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Vp(n)}}}function Up(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function W(e){this._internalRoot=e}Wp.prototype.render=W.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;dp(n,xu(),e,t,null,null)},Wp.prototype.unmount=W.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;dp(e.current,2,null,e,null,null),Du(),t[st]=null}};function Wp(e){this._internalRoot=e}Wp.prototype.unstable_scheduleHydration=function(e){if(e){var t=nt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Ap.length&&t!==0&&t<Ap[n].priority;n++);Ap.splice(n,0,e),n===0&&Fp(e)}};var Gp=n.version;if(Gp!==`19.2.4`)throw Error(i(527,Gp,`19.2.4`));F.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=u(t),e=e===null?null:d(e),e=e===null?null:e.stateNode,e};var Kp={bundleType:0,version:`19.2.4`,rendererPackageName:`react-dom`,currentDispatcherRef:P,reconcilerVersion:`19.2.4`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var qp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!qp.isDisabled&&qp.supportsFiber)try{Fe=qp.inject(Kp),Ie=qp}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=Js,s=Ys,c=Xs;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=lp(e,1,!1,null,null,n,r,null,o,s,c,Up),e[st]=t.current,U(e),new W(t)}})),mB=o(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=pB()})),hB=`modulepreload`,gB=function(e){return`/`+e},_B={},vB=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=gB(t,n),t in _B)return;_B[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:hB,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},yB=e=>{throw TypeError(e)},bB=(e,t,n)=>t.has(e)||yB(`Cannot `+n),xB=(e,t,n)=>(bB(e,t,`read from private field`),n?n.call(e):t.get(e)),SB=(e,t,n)=>t.has(e)?yB(`Cannot add the same private member more than once`):t instanceof WeakSet?t.add(e):t.set(e,n),CB=`popstate`;function wB(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function TB(e={}){function t(e,t){let n=t.state?.masked,{pathname:r,search:i,hash:a}=n||e.location;return AB(``,{pathname:r,search:i,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||`default`,n?{pathname:e.location.pathname,search:e.location.search,hash:e.location.hash}:void 0)}function n(e,t){return typeof t==`string`?t:jB(t)}return NB(t,n,null,e)}function EB(e,t){if(e===!1||e==null)throw Error(t)}function DB(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function OB(){return Math.random().toString(36).substring(2,10)}function kB(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function AB(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?MB(t):t,state:n,key:t&&t.key||r||OB(),unstable_mask:i}}function jB({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function MB(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function NB(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,s=`POP`,c=null,l=u();l??(l=0,o.replaceState({...o.state,idx:l},``));function u(){return(o.state||{idx:null}).idx}function d(){s=`POP`;let e=u(),t=e==null?null:e-l;l=e,c&&c({action:s,location:h.location,delta:t})}function f(e,t){s=`PUSH`;let r=wB(e)?e:AB(h.location,e,t);n&&n(r,e),l=u()+1;let d=kB(r,l),f=h.createHref(r.unstable_mask||r);try{o.pushState(d,``,f)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(f)}a&&c&&c({action:s,location:h.location,delta:1})}function p(e,t){s=`REPLACE`;let r=wB(e)?e:AB(h.location,e,t);n&&n(r,e),l=u();let i=kB(r,l),d=h.createHref(r.unstable_mask||r);o.replaceState(i,``,d),a&&c&&c({action:s,location:h.location,delta:0})}function m(e){return PB(e)}let h={get action(){return s},get location(){return e(i,o)},listen(e){if(c)throw Error(`A history only accepts one active listener`);return i.addEventListener(CB,d),c=e,()=>{i.removeEventListener(CB,d),c=null}},createHref(e){return t(i,e)},createURL:m,encodeLocation(e){let t=m(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:f,replace:p,go(e){return o.go(e)}};return h}function PB(e,t=!1){let n=`http://localhost`;typeof window<`u`&&(n=window.location.origin===`null`?window.location.href:window.location.origin),EB(n,`No window.location.(origin|href) available to create URL`);let r=typeof e==`string`?e:jB(e);return r=r.replace(/ $/,`%20`),!t&&r.startsWith(`//`)&&(r=n+r),new URL(r,n)}var FB,IB=class{constructor(e){if(SB(this,FB,new Map),e)for(let[t,n]of e)this.set(t,n)}get(e){if(xB(this,FB).has(e))return xB(this,FB).get(e);if(e.defaultValue!==void 0)return e.defaultValue;throw Error(`No value found for context`)}set(e,t){xB(this,FB).set(e,t)}};FB=new WeakMap;var LB=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`children`]);function RB(e){return LB.has(e)}var zB=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`middleware`,`children`]);function BB(e){return zB.has(e)}function VB(e){return e.index===!0}function HB(e,t,n=[],r={},i=!1){return e.map((e,a)=>{let o=[...n,String(a)],s=typeof e.id==`string`?e.id:o.join(`-`);if(EB(e.index!==!0||!e.children,`Cannot specify children on an index route`),EB(i||!r[s],`Found a route id collision on id "${s}". Route id's must be globally unique within Data Router usages`),VB(e)){let n={...e,id:s};return r[s]=UB(n,t(n)),n}else{let n={...e,id:s,children:void 0};return r[s]=UB(n,t(n)),e.children&&(n.children=HB(e.children,t,o,r,i)),n}})}function UB(e,t){return Object.assign(e,{...t,...typeof t.lazy==`object`&&t.lazy!=null?{lazy:{...e.lazy,...t.lazy}}:{}})}function WB(e,t,n=`/`){return GB(e,t,n,!1)}function GB(e,t,n,r){let i=lV((typeof t==`string`?MB(t):t).pathname||`/`,n);if(i==null)return null;let a=qB(e);YB(a);let o=null;for(let e=0;o==null&&e<a.length;++e){let t=cV(i);o=aV(a[e],t,r)}return o}function KB(e,t){let{route:n,pathname:r,params:i}=e;return{id:n.id,pathname:r,params:i,data:t[n.id],loaderData:t[n.id],handle:n.handle}}function qB(e,t=[],n=[],r=``,i=!1){let a=(e,a,o=i,s)=>{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;EB(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let l=yV([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(EB(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),qB(e.children,t,u,l,o)),!(e.path==null&&!e.index)&&t.push({path:l,score:rV(l,e.index),routesMeta:u})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of JB(e.path))a(e,t,!0,n)}),t}function JB(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=JB(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function YB(e){e.sort((e,t)=>e.score===t.score?iV(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var XB=/^:[\w-]+$/,ZB=3,QB=2,$B=1,eV=10,tV=-2,nV=e=>e===`*`;function rV(e,t){let n=e.split(`/`),r=n.length;return n.some(nV)&&(r+=tV),t&&(r+=QB),n.filter(e=>!nV(e)).reduce((e,t)=>e+(XB.test(t)?ZB:t===``?$B:eV),r)}function iV(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function aV(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e<r.length;++e){let s=r[e],c=e===r.length-1,l=a===`/`?t:t.slice(a.length)||`/`,u=oV({path:s.relativePath,caseSensitive:s.caseSensitive,end:c},l),d=s.route;if(!u&&c&&n&&!r[r.length-1].route.index&&(u=oV({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!u)return null;Object.assign(i,u.params),o.push({params:i,pathname:yV([a,u.pathname]),pathnameBase:bV(yV([a,u.pathnameBase])),route:d}),u.pathnameBase!==`/`&&(a=yV([a,u.pathnameBase]))}return o}function oV(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=sV(e.path,e.caseSensitive,e.end),i=t.match(n);if(!i)return null;let a=i[0],o=a.replace(/(.)\/+$/,`$1`),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=a.slice(0,a.length-e.length).replace(/(.)\/+$/,`$1`)}let i=s[r];return n&&!i?e[t]=void 0:e[t]=(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function sV(e,t=!1,n=!0){DB(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(\/|$)/g,`(/$1)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function cV(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return DB(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function lV(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function uV({basename:e,pathname:t}){return t===`/`?e:yV([e,t])}var dV=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,fV=e=>dV.test(e);function pV(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?MB(e):e,a;return n?(n=n.replace(/\/\/+/g,`/`),a=n.startsWith(`/`)?mV(n.substring(1),`/`):mV(n,t)):a=t,{pathname:a,search:xV(r),hash:SV(i)}}function mV(e,t){let n=t.replace(/\/+$/,``).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function hV(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function gV(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function _V(e){let t=gV(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function vV(e,t,n,r=!1){let i;typeof e==`string`?i=MB(e):(i={...e},EB(!i.pathname||!i.pathname.includes(`?`),hV(`?`,`pathname`,`search`,i)),EB(!i.pathname||!i.pathname.includes(`#`),hV(`#`,`pathname`,`hash`,i)),EB(!i.search||!i.search.includes(`#`),hV(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=pV(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var yV=e=>e.join(`/`).replace(/\/\/+/g,`/`),bV=e=>e.replace(/\/+$/,``).replace(/^\/*/,`/`),xV=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,SV=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,CV=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function wV(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function TV(e){return e.map(e=>e.route.path).filter(Boolean).join(`/`).replace(/\/\/*/g,`/`)||`/`}var EV=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function DV(e,t){let n=e;if(typeof n!=`string`||!dV.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(EV)try{let e=new URL(window.location.href),r=n.startsWith(`//`)?new URL(e.protocol+n):new URL(n),a=lV(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{DB(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}var OV=Symbol(`Uninstrumented`);function kV(e,t){let n={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};e.forEach(e=>e({id:t.id,index:t.index,path:t.path,instrument(e){let t=Object.keys(n);for(let r of t)e[r]&&n[r].push(e[r])}}));let r={};if(typeof t.lazy==`function`&&n.lazy.length>0){let e=jV(n.lazy,t.lazy,()=>void 0);e&&(r.lazy=e)}if(typeof t.lazy==`object`){let e=t.lazy;[`middleware`,`loader`,`action`].forEach(t=>{let i=e[t],a=n[`lazy.${t}`];if(typeof i==`function`&&a.length>0){let e=jV(a,i,()=>void 0);e&&(r.lazy=Object.assign(r.lazy||{},{[t]:e}))}})}return[`loader`,`action`].forEach(e=>{let i=t[e];if(typeof i==`function`&&n[e].length>0){let t=i[OV]??i,a=jV(n[e],t,(...e)=>NV(e[0]));a&&(e===`loader`&&t.hydrate===!0&&(a.hydrate=!0),a[OV]=t,r[e]=a)}}),t.middleware&&t.middleware.length>0&&n.middleware.length>0&&(r.middleware=t.middleware.map(e=>{let t=e[OV]??e,r=jV(n.middleware,t,(...e)=>NV(e[0]));return r?(r[OV]=t,r):e})),r}function AV(e,t){let n={navigate:[],fetch:[]};if(t.forEach(e=>e({instrument(e){let t=Object.keys(e);for(let r of t)e[r]&&n[r].push(e[r])}})),n.navigate.length>0){let t=e.navigate[OV]??e.navigate,r=jV(n.navigate,t,(...t)=>{let[n,r]=t;return{to:typeof n==`number`||typeof n==`string`?n:n?jB(n):`.`,...PV(e,r??{})}});r&&(r[OV]=t,e.navigate=r)}if(n.fetch.length>0){let t=e.fetch[OV]??e.fetch,r=jV(n.fetch,t,(...t)=>{let[n,,r,i]=t;return{href:r??`.`,fetcherKey:n,...PV(e,i??{})}});r&&(r[OV]=t,e.fetch=r)}return e}function jV(e,t,n){return e.length===0?null:async(...r)=>{let i=await MV(e,n(...r),()=>t(...r),e.length-1);if(i.type===`error`)throw i.value;return i.value}}async function MV(e,t,n,r){let i=e[r],a;if(i){let o,s=async()=>(o?console.error(`You cannot call instrumented handlers more than once`):o=MV(e,t,n,r-1),a=await o,EB(a,`Expected a result`),a.type===`error`&&a.value instanceof Error?{status:`error`,error:a.value}:{status:`success`,error:void 0});try{await i(s,t)}catch(e){console.error(`An instrumentation function threw an error:`,e)}o||await s(),await o}else try{a={type:`success`,value:await n()}}catch(e){a={type:`error`,value:e}}return a||{type:`error`,value:Error(`No result assigned in instrumentation chain.`)}}function NV(e){let{request:t,context:n,params:r,unstable_pattern:i}=e;return{request:FV(t),params:{...r},unstable_pattern:i,context:IV(n)}}function PV(e,t){return{currentUrl:jB(e.state.location),...`formMethod`in t?{formMethod:t.formMethod}:{},...`formEncType`in t?{formEncType:t.formEncType}:{},...`formData`in t?{formData:t.formData}:{},...`body`in t?{body:t.body}:{}}}function FV(e){return{method:e.method,url:e.url,headers:{get:(...t)=>e.headers.get(...t)}}}function IV(e){if(RV(e)){let t={...e};return Object.freeze(t),t}else return{get:t=>e.get(t)}}var LV=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function RV(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===LV}var zV=[`POST`,`PUT`,`PATCH`,`DELETE`],BV=new Set(zV),VV=[`GET`,...zV],HV=new Set(VV),UV=new Set([301,302,303,307,308]),WV=new Set([307,308]),GV={state:`idle`,location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},KV={state:`idle`,data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},qV={state:`unblocked`,proceed:void 0,reset:void 0,location:void 0},JV=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),YV=`remix-router-transitions`,XV=Symbol(`ResetLoaderData`);function ZV(e){let t=e.window?e.window:typeof window<`u`?window:void 0,n=t!==void 0&&t.document!==void 0&&t.document.createElement!==void 0;EB(e.routes.length>0,`You must provide a non-empty routes array to createRouter`);let r=e.hydrationRouteProperties||[],i=e.mapRouteProperties||JV,a=i;if(e.unstable_instrumentations){let t=e.unstable_instrumentations;a=e=>({...i(e),...kV(t.map(e=>e.route).filter(Boolean),e)})}let o={},s=HB(e.routes,a,void 0,o),c,l=e.basename||`/`;l.startsWith(`/`)||(l=`/${l}`);let u=e.dataStrategy||mH,d={unstable_passThroughRequests:!1,...e.future},f=null,p=new Set,m=null,h=null,g=null,_=e.hydrationData!=null,v=WB(s,e.history.location,l),y=!1,b=null,x,S;if(v==null&&!e.patchRoutesOnNavigation){let t=RH(404,{pathname:e.history.location.pathname}),{matches:n,route:r}=LH(s);x=!0,S=!x,v=n,b={[r.id]:t}}else if(v&&!e.hydrationData&&I(v,s,e.history.location.pathname).active&&(v=null),!v){x=!1,S=!x,v=[];let t=I(null,s,e.history.location.pathname);t.active&&t.matches&&(y=!0,v=t.matches)}else if(v.some(e=>e.route.lazy))x=!1,S=!x;else if(!v.some(e=>nH(e.route)))x=!0,S=!x;else{let t=e.hydrationData?e.hydrationData.loaderData:null,n=e.hydrationData?e.hydrationData.errors:null,r=v;if(n){let e=v.findIndex(e=>n[e.route.id]!==void 0);r=r.slice(0,e+1)}S=!1,x=!0,r.forEach(e=>{let r=rH(e.route,t,n);S||=r.renderFallback,x&&=!r.shouldLoad})}let C,w={historyAction:e.history.action,location:e.history.location,matches:v,initialized:x,renderFallback:S,navigation:GV,restoreScrollPosition:e.hydrationData==null?null:!1,preventScrollReset:!1,revalidation:`idle`,loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||b,fetchers:new Map,blockers:new Map},T=`POP`,E=null,D=!1,O,k=!1,A=new Map,j=null,M=!1,N=!1,P=new Set,F=new Map,ee=0,te=-1,ne=new Map,re=new Set,ie=new Map,ae=new Map,oe=new Set,se=new Map,ce,le=null;function ue(){if(f=e.history.listen(({action:t,location:n,delta:r})=>{if(ce){ce(),ce=void 0;return}DB(se.size===0||r!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let i=He({currentLocation:w.location,nextLocation:n,historyAction:t});if(i&&r!=null){let t=new Promise(e=>{ce=e});e.history.go(r*-1),Ve(i,{state:`blocked`,location:n,proceed(){Ve(i,{state:`proceeding`,proceed:void 0,reset:void 0,location:n}),t.then(()=>e.history.go(r))},reset(){let e=new Map(w.blockers);e.set(i,qV),pe({blockers:e})}}),E?.resolve(),E=null;return}return _e(t,n)}),n){cU(t,A);let e=()=>lU(t,A);t.addEventListener(`pagehide`,e),j=()=>t.removeEventListener(`pagehide`,e)}return w.initialized||_e(`POP`,w.location,{initialHydration:!0}),C}function de(){f&&f(),j&&j(),p.clear(),O&&O.abort(),w.fetchers.forEach((e,t)=>Ne(t)),w.blockers.forEach((e,t)=>Be(t))}function fe(e){return p.add(e),()=>p.delete(e)}function pe(e,t={}){e.matches&&=e.matches.map(e=>{let t=o[e.route.id],n=e.route;return n.element!==t.element||n.errorElement!==t.errorElement||n.hydrateFallbackElement!==t.hydrateFallbackElement?{...e,route:t}:e}),w={...w,...e};let n=[],r=[];w.fetchers.forEach((e,t)=>{e.state===`idle`&&(oe.has(t)?n.push(t):r.push(t))}),oe.forEach(e=>{!w.fetchers.has(e)&&!F.has(e)&&n.push(e)}),[...p].forEach(r=>r(w,{deletedFetchers:n,newErrors:e.errors??null,viewTransitionOpts:t.viewTransitionOpts,flushSync:t.flushSync===!0})),n.forEach(e=>Ne(e)),r.forEach(e=>w.fetchers.delete(e))}function me(t,n,{flushSync:r}={}){let i=w.actionData!=null&&w.navigation.formMethod!=null&&$H(w.navigation.formMethod)&&w.navigation.state===`loading`&&t.state?._isRedirect!==!0,a;a=n.actionData?Object.keys(n.actionData).length>0?n.actionData:null:i?w.actionData:null;let o=n.loaderData?PH(w.loaderData,n.loaderData,n.matches||[],n.errors):w.loaderData,l=w.blockers;l.size>0&&(l=new Map(l),l.forEach((e,t)=>l.set(t,qV)));let u=M?!1:qe(t,n.matches||w.matches),d=D===!0||w.navigation.formMethod!=null&&$H(w.navigation.formMethod)&&t.state?._isRedirect!==!0;c&&=(s=c,void 0),M||T===`POP`||(T===`PUSH`?e.history.push(t,t.state):T===`REPLACE`&&e.history.replace(t,t.state));let f;if(T===`POP`){let e=A.get(w.location.pathname);e&&e.has(t.pathname)?f={currentLocation:w.location,nextLocation:t}:A.has(t.pathname)&&(f={currentLocation:t,nextLocation:w.location})}else if(k){let e=A.get(w.location.pathname);e?e.add(t.pathname):(e=new Set([t.pathname]),A.set(w.location.pathname,e)),f={currentLocation:w.location,nextLocation:t}}pe({...n,actionData:a,loaderData:o,historyAction:T,location:t,initialized:!0,renderFallback:!1,navigation:GV,revalidation:`idle`,restoreScrollPosition:u,preventScrollReset:d,blockers:l},{viewTransitionOpts:f,flushSync:r===!0}),T=`POP`,D=!1,k=!1,M=!1,N=!1,E?.resolve(),E=null,le?.resolve(),le=null}async function he(t,n){if(E?.resolve(),E=null,typeof t==`number`){E||=uU();let n=E.promise;return e.history.go(t),n}let{path:r,submission:i,error:a}=eH(!1,$V(w.location,w.matches,l,t,n?.fromRouteId,n?.relative),n),o;n?.unstable_mask&&(o={pathname:``,search:``,hash:``,...typeof n.unstable_mask==`string`?MB(n.unstable_mask):{...w.location.unstable_mask,...n.unstable_mask}});let s=w.location,c=AB(s,r,n&&n.state,void 0,o);c={...c,...e.history.encodeLocation(c)};let u=n&&n.replace!=null?n.replace:void 0,d=`PUSH`;u===!0?d=`REPLACE`:u===!1||i!=null&&$H(i.formMethod)&&i.formAction===w.location.pathname+w.location.search&&(d=`REPLACE`);let f=n&&`preventScrollReset`in n?n.preventScrollReset===!0:void 0,p=(n&&n.flushSync)===!0,m=He({currentLocation:s,nextLocation:c,historyAction:d});if(m){Ve(m,{state:`blocked`,location:c,proceed(){Ve(m,{state:`proceeding`,proceed:void 0,reset:void 0,location:c}),he(t,n)},reset(){let e=new Map(w.blockers);e.set(m,qV),pe({blockers:e})}});return}await _e(d,c,{submission:i,pendingError:a,preventScrollReset:f,replace:n&&n.replace,enableViewTransition:n&&n.viewTransition,flushSync:p,callSiteDefaultShouldRevalidate:n&&n.unstable_defaultShouldRevalidate})}function ge(){le||=uU(),Oe(),pe({revalidation:`loading`});let e=le.promise;return w.navigation.state===`submitting`?e:w.navigation.state===`idle`?(_e(w.historyAction,w.location,{startUninterruptedRevalidation:!0}),e):(_e(T||w.historyAction,w.navigation.location,{overrideNavigation:w.navigation,enableViewTransition:k===!0}),e)}async function _e(t,n,r){O&&O.abort(),O=null,T=t,M=(r&&r.startUninterruptedRevalidation)===!0,Ke(w.location,w.matches),D=(r&&r.preventScrollReset)===!0,k=(r&&r.enableViewTransition)===!0;let i=c||s,a=r&&r.overrideNavigation,o=r?.initialHydration&&w.matches&&w.matches.length>0&&!y?w.matches:WB(i,n,l),u=(r&&r.flushSync)===!0;if(o&&w.initialized&&!N&&VH(w.location,n)&&!(r&&r.submission&&$H(r.submission.formMethod))){me(n,{matches:o},{flushSync:u});return}let d=I(o,i,n.pathname);if(d.active&&d.matches&&(o=d.matches),!o){let{error:e,notFoundMatches:t,route:r}=Ue(n.pathname);me(n,{matches:t,loaderData:{},errors:{[r.id]:e}},{flushSync:u});return}O=new AbortController;let f=OH(e.history,n,O.signal,r&&r.submission),p=e.getContext?await e.getContext():new IB,m;if(r&&r.pendingError)m=[IH(o).route.id,{type:`error`,error:r.pendingError}];else if(r&&r.submission&&$H(r.submission.formMethod)){let t=await ve(f,n,r.submission,o,p,d.active,r&&r.initialHydration===!0,{replace:r.replace,flushSync:u});if(t.shortCircuited)return;if(t.pendingActionResult){let[e,r]=t.pendingActionResult;if(KH(r)&&wV(r.error)&&r.error.status===404){O=null,me(n,{matches:t.matches,loaderData:{},errors:{[e]:r.error}});return}}o=t.matches||o,m=t.pendingActionResult,a=rU(n,r.submission),u=!1,d.active=!1,f=OH(e.history,f.url,f.signal)}let{shortCircuited:h,matches:g,loaderData:_,errors:v}=await ye(f,n,o,p,d.active,a,r&&r.submission,r&&r.fetcherSubmission,r&&r.replace,r&&r.initialHydration===!0,u,m,r&&r.callSiteDefaultShouldRevalidate);h||(O=null,me(n,{matches:g||o,...FH(m),loaderData:_,errors:v}))}async function ve(t,n,i,c,u,d,f,p={}){if(Oe(),pe({navigation:iU(n,i)},{flushSync:p.flushSync===!0}),d){let e=await Je(c,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=LH(s);return{matches:t,pendingActionResult:[n.id,{type:`error`,error:e.error}]}}let t=IH(e.partialMatches).route.id;return{matches:e.partialMatches,pendingActionResult:[t,{type:`error`,error:e.error}]}}else if(e.matches)c=e.matches;else{let{notFoundMatches:e,error:t,route:r}=Ue(n.pathname);return{matches:e,pendingActionResult:[r.id,{type:`error`,error:t}]}}}let m,h=tU(c,n);if(!h.route.action&&!h.route.lazy)m={type:`error`,error:RH(405,{method:t.method,pathname:n.pathname,routeId:h.route.id})};else{let e=await Ee(t,n,bH(a,o,t,n,c,h,f?[]:r,u),u,null);if(m=e[h.route.id],!m){for(let t of c)if(e[t.route.id]){m=e[t.route.id];break}}if(t.signal.aborted)return{shortCircuited:!0}}if(qH(m)){let n;return n=p&&p.replace!=null?p.replace:DH(m.response.headers.get(`Location`),new URL(t.url),l,e.history)===w.location.pathname+w.location.search,await Te(t,m,!0,{submission:i,replace:n}),{shortCircuited:!0}}if(KH(m)){let e=IH(c,h.route.id);return(p&&p.replace)!==!0&&(T=`PUSH`),{matches:c,pendingActionResult:[e.route.id,m,h.route.id]}}return{matches:c,pendingActionResult:[h.route.id,m]}}async function ye(t,n,i,u,d,f,p,m,h,g,_,v,y){let b=f||rU(n,p),x=p||m||nU(b),S=!M&&!g;if(d){if(S){let e=be(v);pe({navigation:b,...e===void 0?{}:{actionData:e}},{flushSync:_})}let e=await Je(i,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=LH(s);return{matches:t,loaderData:{},errors:{[n.id]:e.error}}}let t=IH(e.partialMatches).route.id;return{matches:e.partialMatches,loaderData:{},errors:{[t]:e.error}}}else if(e.matches)i=e.matches;else{let{error:e,notFoundMatches:t,route:r}=Ue(n.pathname);return{matches:t,loaderData:{},errors:{[r.id]:e}}}}let C=c||s,{dsMatches:T,revalidatingFetchers:E}=tH(t,u,a,o,e.history,w,i,x,n,g?[]:r,g===!0,N,P,oe,ie,re,C,l,e.patchRoutesOnNavigation!=null,v,y);if(te=++ee,!e.dataStrategy&&!T.some(e=>e.shouldLoad)&&!T.some(e=>e.route.middleware&&e.route.middleware.length>0)&&E.length===0){let e=Le();return me(n,{matches:i,loaderData:{},errors:v&&KH(v[1])?{[v[0]]:v[1].error}:null,...FH(v),...e?{fetchers:new Map(w.fetchers)}:{}},{flushSync:_}),{shortCircuited:!0}}if(S){let e={};if(!d){e.navigation=b;let t=be(v);t!==void 0&&(e.actionData=t)}E.length>0&&(e.fetchers=xe(E)),pe(e,{flushSync:_})}E.forEach(e=>{Fe(e.key),e.controller&&F.set(e.key,e.controller)});let D=()=>E.forEach(e=>Fe(e.key));O&&O.signal.addEventListener(`abort`,D);let{loaderResults:k,fetcherResults:A}=await De(T,E,t,n,u);if(t.signal.aborted)return{shortCircuited:!0};O&&O.signal.removeEventListener(`abort`,D),E.forEach(e=>F.delete(e.key));let j=zH(k);if(j)return await Te(t,j.result,!0,{replace:h}),{shortCircuited:!0};if(j=zH(A),j)return re.add(j.key),await Te(t,j.result,!0,{replace:h}),{shortCircuited:!0};let{loaderData:ne,errors:ae}=NH(w,i,k,v,E,A);g&&w.errors&&(ae={...w.errors,...ae});let se=Le(),ce=Re(te),le=se||ce||E.length>0;return{matches:i,loaderData:ne,errors:ae,...le?{fetchers:new Map(w.fetchers)}:{}}}function be(e){if(e&&!KH(e[1]))return{[e[0]]:e[1].data};if(w.actionData)return Object.keys(w.actionData).length===0?null:w.actionData}function xe(e){return e.forEach(e=>{let t=w.fetchers.get(e.key),n=aU(void 0,t?t.data:void 0);w.fetchers.set(e.key,n)}),new Map(w.fetchers)}async function Se(t,n,r,i){Fe(t);let a=(i&&i.flushSync)===!0,o=c||s,u=$V(w.location,w.matches,l,r,n,i?.relative),d=WB(o,u,l),f=I(d,o,u);if(f.active&&f.matches&&(d=f.matches),!d){Ae(t,n,RH(404,{pathname:u}),{flushSync:a});return}let{path:p,submission:m,error:h}=eH(!0,u,i);if(h){Ae(t,n,h,{flushSync:a});return}let g=e.getContext?await e.getContext():new IB,_=(i&&i.preventScrollReset)===!0;if(m&&$H(m.formMethod)){await Ce(t,n,p,d,g,f.active,a,_,m,i&&i.unstable_defaultShouldRevalidate);return}ie.set(t,{routeId:n,path:p}),await we(t,n,p,d,g,f.active,a,_,m)}async function Ce(t,n,i,u,d,f,p,m,h,g){Oe(),ie.delete(t),ke(t,oU(h,w.fetchers.get(t)),{flushSync:p});let _=new AbortController,v=OH(e.history,i,_.signal,h);if(f){let e=await Je(u,new URL(v.url).pathname,v.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){Ae(t,n,e.error,{flushSync:p});return}else if(e.matches)u=e.matches;else{Ae(t,n,RH(404,{pathname:i}),{flushSync:p});return}}let y=tU(u,i);if(!y.route.action&&!y.route.lazy){Ae(t,n,RH(405,{method:h.formMethod,pathname:i,routeId:n}),{flushSync:p});return}F.set(t,_);let b=ee,x=bH(a,o,v,i,u,y,r,d),S=await Ee(v,i,x,d,t),C=S[y.route.id];if(!C){for(let e of x)if(S[e.route.id]){C=S[e.route.id];break}}if(v.signal.aborted){F.get(t)===_&&F.delete(t);return}if(oe.has(t)){if(qH(C)||KH(C)){ke(t,sU(void 0));return}}else{if(qH(C))if(F.delete(t),te>b){ke(t,sU(void 0));return}else return re.add(t),ke(t,aU(h)),Te(v,C,!1,{fetcherSubmission:h,preventScrollReset:m});if(KH(C)){Ae(t,n,C.error);return}}let E=w.navigation.location||w.location,D=OH(e.history,E,_.signal),k=c||s,A=w.navigation.state===`idle`?w.matches:WB(k,w.navigation.location,l);EB(A,`Didn't find any matches after fetcher action`);let j=++ee;ne.set(t,j);let M=aU(h,C.data);w.fetchers.set(t,M);let{dsMatches:ae,revalidatingFetchers:se}=tH(D,d,a,o,e.history,w,A,h,E,r,!1,N,P,oe,ie,re,k,l,e.patchRoutesOnNavigation!=null,[y.route.id,C],g);se.filter(e=>e.key!==t).forEach(e=>{let t=e.key,n=w.fetchers.get(t),r=aU(void 0,n?n.data:void 0);w.fetchers.set(t,r),Fe(t),e.controller&&F.set(t,e.controller)}),pe({fetchers:new Map(w.fetchers)});let ce=()=>se.forEach(e=>Fe(e.key));_.signal.addEventListener(`abort`,ce);let{loaderResults:le,fetcherResults:ue}=await De(ae,se,D,E,d);if(_.signal.aborted)return;if(_.signal.removeEventListener(`abort`,ce),ne.delete(t),F.delete(t),se.forEach(e=>F.delete(e.key)),w.fetchers.has(t)){let e=sU(C.data);w.fetchers.set(t,e)}let de=zH(le);if(de)return Te(D,de.result,!1,{preventScrollReset:m});if(de=zH(ue),de)return re.add(de.key),Te(D,de.result,!1,{preventScrollReset:m});let{loaderData:fe,errors:he}=NH(w,A,le,void 0,se,ue);Re(j),w.navigation.state===`loading`&&j>te?(EB(T,`Expected pending action`),O&&O.abort(),me(w.navigation.location,{matches:A,loaderData:fe,errors:he,fetchers:new Map(w.fetchers)})):(pe({errors:he,loaderData:PH(w.loaderData,fe,A,he),fetchers:new Map(w.fetchers)}),N=!1)}async function we(t,n,i,s,c,l,u,d,f){let p=w.fetchers.get(t);ke(t,aU(f,p?p.data:void 0),{flushSync:u});let m=new AbortController,h=OH(e.history,i,m.signal);if(l){let e=await Je(s,new URL(h.url).pathname,h.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){Ae(t,n,e.error,{flushSync:u});return}else if(e.matches)s=e.matches;else{Ae(t,n,RH(404,{pathname:i}),{flushSync:u});return}}let g=tU(s,i);F.set(t,m);let _=ee,v=(await Ee(h,i,bH(a,o,h,i,s,g,r,c),c,t))[g.route.id];if(F.get(t)===m&&F.delete(t),!h.signal.aborted){if(oe.has(t)){ke(t,sU(void 0));return}if(qH(v))if(te>_){ke(t,sU(void 0));return}else{re.add(t),await Te(h,v,!1,{preventScrollReset:d});return}if(KH(v)){Ae(t,n,v.error);return}ke(t,sU(v.data))}}async function Te(r,i,a,{submission:o,fetcherSubmission:s,preventScrollReset:c,replace:u}={}){a||(E?.resolve(),E=null),i.response.headers.has(`X-Remix-Revalidate`)&&(N=!0);let d=i.response.headers.get(`Location`);EB(d,`Expected a Location header on the redirect Response`),d=DH(d,new URL(r.url),l,e.history);let f=AB(w.location,d,{_isRedirect:!0});if(n){let e=!1;if(i.response.headers.has(`X-Remix-Reload-Document`))e=!0;else if(fV(d)){let n=PB(d,!0);e=n.origin!==t.location.origin||lV(n.pathname,l)==null}if(e){u?t.location.replace(d):t.location.assign(d);return}}O=null;let p=u===!0||i.response.headers.has(`X-Remix-Replace`)?`REPLACE`:`PUSH`,{formMethod:m,formAction:h,formEncType:g}=w.navigation;!o&&!s&&m&&h&&g&&(o=nU(w.navigation));let _=o||s;WV.has(i.response.status)&&_&&$H(_.formMethod)?await _e(p,f,{submission:{..._,formAction:d},preventScrollReset:c||D,enableViewTransition:a?k:void 0}):await _e(p,f,{overrideNavigation:rU(f,o),fetcherSubmission:s,preventScrollReset:c||D,enableViewTransition:a?k:void 0})}async function Ee(e,t,n,r,i){let a,o={};try{a=await xH(u,e,t,n,i,r,!1)}catch(e){return n.filter(e=>e.shouldLoad).forEach(t=>{o[t.route.id]={type:`error`,error:e}}),o}if(e.signal.aborted)return o;if(!$H(e.method))for(let e of n){if(a[e.route.id]?.type===`error`)break;!a.hasOwnProperty(e.route.id)&&!w.loaderData.hasOwnProperty(e.route.id)&&(!w.errors||!w.errors.hasOwnProperty(e.route.id))&&e.shouldCallHandler()&&(a[e.route.id]={type:`error`,result:Error(`No result returned from dataStrategy for route ${e.route.id}`)})}for(let[t,r]of Object.entries(a))if(GH(r)){let i=r.result;o[t]={type:`redirect`,response:TH(i,e,t,n,l)}}else o[t]=await wH(r);return o}async function De(e,t,n,r,i){let a=Ee(n,r,e,i,null),o=Promise.all(t.map(async e=>{if(e.matches&&e.match&&e.request&&e.controller){let t=(await Ee(e.request,e.path,e.matches,i,e.key))[e.match.route.id];return{[e.key]:t}}else return Promise.resolve({[e.key]:{type:`error`,error:RH(404,{pathname:e.path})}})}));return{loaderResults:await a,fetcherResults:(await o).reduce((e,t)=>Object.assign(e,t),{})}}function Oe(){N=!0,ie.forEach((e,t)=>{F.has(t)&&P.add(t),Fe(t)})}function ke(e,t,n={}){w.fetchers.set(e,t),pe({fetchers:new Map(w.fetchers)},{flushSync:(n&&n.flushSync)===!0})}function Ae(e,t,n,r={}){let i=IH(w.matches,t);Ne(e),pe({errors:{[i.route.id]:n},fetchers:new Map(w.fetchers)},{flushSync:(r&&r.flushSync)===!0})}function je(e){return ae.set(e,(ae.get(e)||0)+1),oe.has(e)&&oe.delete(e),w.fetchers.get(e)||KV}function Me(e,t){Fe(e,t?.reason),ke(e,sU(null))}function Ne(e){let t=w.fetchers.get(e);F.has(e)&&!(t&&t.state===`loading`&&ne.has(e))&&Fe(e),ie.delete(e),ne.delete(e),re.delete(e),oe.delete(e),P.delete(e),w.fetchers.delete(e)}function Pe(e){let t=(ae.get(e)||0)-1;t<=0?(ae.delete(e),oe.add(e)):ae.set(e,t),pe({fetchers:new Map(w.fetchers)})}function Fe(e,t){let n=F.get(e);n&&(n.abort(t),F.delete(e))}function Ie(e){for(let t of e){let e=sU(je(t).data);w.fetchers.set(t,e)}}function Le(){let e=[],t=!1;for(let n of re){let r=w.fetchers.get(n);EB(r,`Expected fetcher: ${n}`),r.state===`loading`&&(re.delete(n),e.push(n),t=!0)}return Ie(e),t}function Re(e){let t=[];for(let[n,r]of ne)if(r<e){let e=w.fetchers.get(n);EB(e,`Expected fetcher: ${n}`),e.state===`loading`&&(Fe(n),ne.delete(n),t.push(n))}return Ie(t),t.length>0}function ze(e,t){let n=w.blockers.get(e)||qV;return se.get(e)!==t&&se.set(e,t),n}function Be(e){w.blockers.delete(e),se.delete(e)}function Ve(e,t){let n=w.blockers.get(e)||qV;EB(n.state===`unblocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`proceeding`||n.state===`blocked`&&t.state===`unblocked`||n.state===`proceeding`&&t.state===`unblocked`,`Invalid blocker state transition: ${n.state} -> ${t.state}`);let r=new Map(w.blockers);r.set(e,t),pe({blockers:r})}function He({currentLocation:e,nextLocation:t,historyAction:n}){if(se.size===0)return;se.size>1&&DB(!1,`A router only supports one blocker at a time`);let r=Array.from(se.entries()),[i,a]=r[r.length-1],o=w.blockers.get(i);if(!(o&&o.state===`proceeding`)&&a({currentLocation:e,nextLocation:t,historyAction:n}))return i}function Ue(e){let t=RH(404,{pathname:e}),{matches:n,route:r}=LH(c||s);return{notFoundMatches:n,route:r,error:t}}function We(e,t,n){if(m=e,g=t,h=n||null,!_&&w.navigation===GV){_=!0;let e=qe(w.location,w.matches);e!=null&&pe({restoreScrollPosition:e})}return()=>{m=null,g=null,h=null}}function Ge(e,t){return h&&h(e,t.map(e=>KB(e,w.loaderData)))||e.key}function Ke(e,t){if(m&&g){let n=Ge(e,t);m[n]=g()}}function qe(e,t){if(m){let n=Ge(e,t),r=m[n];if(typeof r==`number`)return r}return null}function I(t,n,r){if(e.patchRoutesOnNavigation){if(!t)return{active:!0,matches:GB(n,r,l,!0)||[]};if(Object.keys(t[0].params).length>0)return{active:!0,matches:GB(n,r,l,!0)}}return{active:!1,matches:null}}async function Je(t,n,r,i){if(!e.patchRoutesOnNavigation)return{type:`success`,matches:t};let u=t;for(;;){let t=c==null,d=c||s,f=o;try{await e.patchRoutesOnNavigation({signal:r,path:n,matches:u,fetcherKey:i,patch:(e,t)=>{r.aborted||sH(e,t,d,f,a,!1)}})}catch(e){return{type:`error`,error:e,partialMatches:u}}finally{t&&!r.aborted&&(s=[...s])}if(r.aborted)return{type:`aborted`};let p=WB(d,n,l),m=null;if(p&&(Object.keys(p[0].params).length===0||(m=GB(d,n,l,!0),!(m&&u.length<m.length&&Ye(u,m.slice(0,u.length))))))return{type:`success`,matches:p};if(m||=GB(d,n,l,!0),!m||Ye(u,m))return{type:`success`,matches:null};u=m}}function Ye(e,t){return e.length===t.length&&e.every((e,n)=>e.route.id===t[n].route.id)}function Xe(e){o={},c=HB(e,a,void 0,o)}function Ze(e,t,n=!1){let r=c==null;sH(e,t,c||s,o,a,n),r&&(s=[...s],pe({}))}return C={get basename(){return l},get future(){return d},get state(){return w},get routes(){return s},get window(){return t},initialize:ue,subscribe:fe,enableScrollRestoration:We,navigate:he,fetch:Se,revalidate:ge,createHref:t=>e.history.createHref(t),encodeLocation:t=>e.history.encodeLocation(t),getFetcher:je,resetFetcher:Me,deleteFetcher:Pe,dispose:de,getBlocker:ze,deleteBlocker:Be,patchRoutes:Ze,_internalFetchControllers:F,_internalSetRoutes:Xe,_internalSetStateDoNotUseOrYouWillBreakYourApp(e){pe(e)}},e.unstable_instrumentations&&(C=AV(C,e.unstable_instrumentations.map(e=>e.router).filter(Boolean))),C}function QV(e){return e!=null&&(`formData`in e&&e.formData!=null||`body`in e&&e.body!==void 0)}function $V(e,t,n,r,i,a){let o,s;if(i){o=[];for(let e of t)if(o.push(e),e.route.id===i){s=e;break}}else o=t,s=t[t.length-1];let c=vV(r||`.`,_V(o),lV(e.pathname,n)||e.pathname,a===`path`);if(r??(c.search=e.search,c.hash=e.hash),(r==null||r===``||r===`.`)&&s){let e=eU(c.search);if(s.route.index&&!e)c.search=c.search?c.search.replace(/^\?/,`?index&`):`?index`;else if(!s.route.index&&e){let e=new URLSearchParams(c.search),t=e.getAll(`index`);e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();c.search=n?`?${n}`:``}}return n!==`/`&&(c.pathname=uV({basename:n,pathname:c.pathname})),jB(c)}function eH(e,t,n){if(!n||!QV(n))return{path:t};if(n.formMethod&&!QH(n.formMethod))return{path:t,error:RH(405,{method:n.formMethod})};let r=()=>({path:t,error:RH(400,{type:`invalid-body`})}),i=(n.formMethod||`get`).toUpperCase(),a=BH(t);if(n.body!==void 0){if(n.formEncType===`text/plain`){if(!$H(i))return r();let e=typeof n.body==`string`?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((e,[t,n])=>`${e}${t}=${n}
|
|
217
|
-
`,``):String(n.body);return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:void 0,text:e}}}else if(n.formEncType===`application/json`){if(!$H(i))return r();try{let e=typeof n.body==`string`?JSON.parse(n.body):n.body;return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:e,text:void 0}}}catch{return r()}}}EB(typeof FormData==`function`,`FormData is not available in this environment`);let o,s;if(n.formData)o=AH(n.formData),s=n.formData;else if(n.body instanceof FormData)o=AH(n.body),s=n.body;else if(n.body instanceof URLSearchParams)o=n.body,s=jH(o);else if(n.body==null)o=new URLSearchParams,s=new FormData;else try{o=new URLSearchParams(n.body),s=jH(o)}catch{return r()}let c={formMethod:i,formAction:a,formEncType:n&&n.formEncType||`application/x-www-form-urlencoded`,formData:s,json:void 0,text:void 0};if($H(c.formMethod))return{path:t,submission:c};let l=MB(t);return e&&l.search&&eU(l.search)&&o.append(`index`,``),l.search=`?${o}`,{path:jB(l),submission:c}}function tH(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b){let x=y?KH(y[1])?y[1].error:y[1].data:void 0,S=i.createURL(a.location),C=i.createURL(c),w;if(u&&a.errors){let e=Object.keys(a.errors)[0];w=o.findIndex(t=>t.route.id===e)}else if(y&&KH(y[1])){let e=y[0];w=o.findIndex(t=>t.route.id===e)-1}let T=y?y[1].statusCode:void 0,E=T&&T>=400,D={currentUrl:S,currentParams:a.matches[0]?.params||{},nextUrl:C,nextParams:o[0].params,...s,actionResult:x,actionStatus:T},O=TV(o),k=o.map((i,o)=>{let{route:s}=i,f=null;if(w!=null&&o>w)f=!1;else if(s.lazy)f=!0;else if(!nH(s))f=!1;else if(u){let{shouldLoad:e}=rH(s,a.loaderData,a.errors);f=e}else iH(a.loaderData,a.matches[o],i)&&(f=!0);if(f!==null)return yH(n,r,e,c,O,i,l,t,f);let p=!1;typeof b==`boolean`?p=b:E?p=!1:d||S.pathname+S.search===C.pathname+C.search?p=!0:S.search===C.search?aH(a.matches[o],i)&&(p=!0):p=!0;let m={...D,defaultShouldRevalidate:p};return yH(n,r,e,c,O,i,l,t,oH(i,m),m,b)}),A=[];return m.forEach((e,s)=>{if(u||!o.some(t=>t.route.id===e.routeId)||p.has(s))return;let c=a.fetchers.get(s),m=c&&c.state!==`idle`&&c.data===void 0,y=WB(g,e.path,_);if(!y){if(v&&m)return;A.push({key:s,routeId:e.routeId,path:e.path,matches:null,match:null,request:null,controller:null});return}if(h.has(s))return;let x=tU(y,e.path),S=new AbortController,C=OH(i,e.path,S.signal),w=null;if(f.has(s))f.delete(s),w=bH(n,r,C,e.path,y,x,l,t);else if(m)d&&(w=bH(n,r,C,e.path,y,x,l,t));else{let i;i=typeof b==`boolean`?b:E?!1:d;let a={...D,defaultShouldRevalidate:i};oH(x,a)&&(w=bH(n,r,C,e.path,y,x,l,t,a))}w&&A.push({key:s,routeId:e.routeId,path:e.path,matches:w,match:x,request:C,controller:S})}),{dsMatches:k,revalidatingFetchers:A}}function nH(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function rH(e,t,n){if(e.lazy)return{shouldLoad:!0,renderFallback:!0};if(!nH(e))return{shouldLoad:!1,renderFallback:!1};let r=t!=null&&e.id in t,i=n!=null&&n[e.id]!==void 0;if(!r&&i)return{shouldLoad:!1,renderFallback:!1};if(typeof e.loader==`function`&&e.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!r};let a=!r&&!i;return{shouldLoad:a,renderFallback:a}}function iH(e,t,n){let r=!t||n.route.id!==t.route.id,i=!e.hasOwnProperty(n.route.id);return r||i}function aH(e,t){let n=e.route.path;return e.pathname!==t.pathname||n!=null&&n.endsWith(`*`)&&e.params[`*`]!==t.params[`*`]}function oH(e,t){if(e.route.shouldRevalidate){let n=e.route.shouldRevalidate(t);if(typeof n==`boolean`)return n}return t.defaultShouldRevalidate}function sH(e,t,n,r,i,a){let o;if(e){let t=r[e];EB(t,`No route found to patch children into: routeId = ${e}`),t.children||=[],o=t.children}else o=n;let s=[],c=[];if(t.forEach(e=>{let t=o.find(t=>cH(e,t));t?c.push({existingRoute:t,newRoute:e}):s.push(e)}),s.length>0){let t=HB(s,i,[e||`_`,`patch`,String(o?.length||`0`)],r);o.push(...t)}if(a&&c.length>0)for(let e=0;e<c.length;e++){let{existingRoute:t,newRoute:n}=c[e],r=t,[a]=HB([n],i,[],{},!0);Object.assign(r,{element:a.element?a.element:r.element,errorElement:a.errorElement?a.errorElement:r.errorElement,hydrateFallbackElement:a.hydrateFallbackElement?a.hydrateFallbackElement:r.hydrateFallbackElement})}}function cH(e,t){return`id`in e&&`id`in t&&e.id===t.id?!0:e.index===t.index&&e.path===t.path&&e.caseSensitive===t.caseSensitive?(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:e.children?.every((e,n)=>t.children?.some(t=>cH(e,t)))??!1:!1}var lH=new WeakMap,uH=({key:e,route:t,manifest:n,mapRouteProperties:r})=>{let i=n[t.id];if(EB(i,`No route found in manifest`),!i.lazy||typeof i.lazy!=`object`)return;let a=i.lazy[e];if(!a)return;let o=lH.get(i);o||(o={},lH.set(i,o));let s=o[e];if(s)return s;let c=(async()=>{let t=RB(e),n=i[e]!==void 0&&e!==`hasErrorBoundary`;if(t)DB(!t,`Route property `+e+` is not a supported lazy route property. This property will be ignored.`),o[e]=Promise.resolve();else if(n)DB(!1,`Route "${i.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let t=await a();t!=null&&(Object.assign(i,{[e]:t}),Object.assign(i,r(i)))}typeof i.lazy==`object`&&(i.lazy[e]=void 0,Object.values(i.lazy).every(e=>e===void 0)&&(i.lazy=void 0))})();return o[e]=c,c},dH=new WeakMap;function fH(e,t,n,r,i){let a=n[e.id];if(EB(a,`No route found in manifest`),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy==`function`){let t=dH.get(a);if(t)return{lazyRoutePromise:t,lazyHandlerPromise:t};let n=(async()=>{EB(typeof e.lazy==`function`,`No lazy route function found`);let t=await e.lazy(),n={};for(let e in t){let r=t[e];if(r===void 0)continue;let i=BB(e),o=a[e]!==void 0&&e!==`hasErrorBoundary`;i?DB(!i,`Route property `+e+` is not a supported property to be returned from a lazy route function. This property will be ignored.`):o?DB(!o,`Route "${a.id}" has a static property "${e}" defined but its lazy function is also returning a value for this property. The lazy route property "${e}" will be ignored.`):n[e]=r}Object.assign(a,n),Object.assign(a,{...r(a),lazy:void 0})})();return dH.set(a,n),n.catch(()=>{}),{lazyRoutePromise:n,lazyHandlerPromise:n}}let o=Object.keys(e.lazy),s=[],c;for(let a of o){if(i&&i.includes(a))continue;let o=uH({key:a,route:e,manifest:n,mapRouteProperties:r});o&&(s.push(o),a===t&&(c=o))}let l=s.length>0?Promise.all(s).then(()=>{}):void 0;return l?.catch(()=>{}),c?.catch(()=>{}),{lazyRoutePromise:l,lazyHandlerPromise:c}}async function pH(e){let t=e.matches.filter(e=>e.shouldLoad),n={};return(await Promise.all(t.map(e=>e.resolve()))).forEach((e,r)=>{n[t[r].route.id]=e}),n}async function mH(e){return e.matches.some(e=>e.route.middleware)?hH(e,()=>pH(e)):pH(e)}function hH(e,t){return gH(e,t,e=>{if(ZH(e))throw e;return e},UH,n);function n(t,n,r){if(r)return Promise.resolve(Object.assign(r.value,{[n]:{type:`error`,result:t}}));{let{matches:r}=e,i=IH(r,r[Math.min(Math.max(r.findIndex(e=>e.route.id===n),0),Math.max(r.findIndex(e=>e.shouldCallHandler()),0))].route.id).route.id;return Promise.resolve({[i]:{type:`error`,result:t}})}}}async function gH(e,t,n,r,i){let{matches:a,...o}=e;return await _H(o,a.flatMap(e=>e.route.middleware?e.route.middleware.map(t=>[e.route.id,t]):[]),t,n,r,i)}async function _H(e,t,n,r,i,a,o=0){let{request:s}=e;if(s.signal.aborted)throw s.signal.reason??Error(`Request aborted: ${s.method} ${s.url}`);let c=t[o];if(!c)return await n();let[l,u]=c,d,f=async()=>{if(d)throw Error("You may only call `next()` once per middleware");try{return d={value:await _H(e,t,n,r,i,a,o+1)},d.value}catch(e){return d={value:await a(e,l,d)},d.value}};try{let t=await u(e,f),n=t==null?void 0:r(t);return i(n)?n:d?n??d.value:(d={value:await f()},d.value)}catch(e){return await a(e,l,d)}}function vH(e,t,n,r,i){let a=uH({key:`middleware`,route:r.route,manifest:t,mapRouteProperties:e}),o=fH(r.route,$H(n.method)?`action`:`loader`,t,e,i);return{middleware:a,route:o.lazyRoutePromise,handler:o.lazyHandlerPromise}}function yH(e,t,n,r,i,a,o,s,c,l=null,u){let d=!1,f=vH(e,t,n,a,o);return{...a,_lazyPromises:f,shouldLoad:c,shouldRevalidateArgs:l,shouldCallHandler(e){return d=!0,l?typeof u==`boolean`?oH(a,{...l,defaultShouldRevalidate:u}):typeof e==`boolean`?oH(a,{...l,defaultShouldRevalidate:e}):oH(a,l):c},resolve(e){let{lazy:t,loader:o,middleware:l}=a.route,u=d||c||e&&!$H(n.method)&&(t||o),p=l&&l.length>0&&!o&&!t;return u&&($H(n.method)||!p)?SH({request:n,path:r,unstable_pattern:i,match:a,lazyHandlerPromise:f?.handler,lazyRoutePromise:f?.route,handlerOverride:e,scopedContext:s}):Promise.resolve({type:`data`,result:void 0})}}}function bH(e,t,n,r,i,a,o,s,c=null){return i.map(l=>l.route.id===a.route.id?yH(e,t,n,r,TV(i),l,o,s,!0,c):{...l,shouldLoad:!1,shouldRevalidateArgs:c,shouldCallHandler:()=>!1,_lazyPromises:vH(e,t,n,l,o),resolve:()=>Promise.resolve({type:`data`,result:void 0})})}async function xH(e,t,n,r,i,a,o){r.some(e=>e._lazyPromises?.middleware)&&await Promise.all(r.map(e=>e._lazyPromises?.middleware));let s={request:t,unstable_url:kH(t,n),unstable_pattern:TV(r),params:r[0].params,context:a,matches:r},c=o?()=>{throw Error("You cannot call `runClientMiddleware()` from a static handler `dataStrategy`. Middleware is run outside of `dataStrategy` during SSR in order to bubble up the Response. You can enable middleware via the `respond` API in `query`/`queryRoute`")}:e=>{let t=s;return hH(t,()=>e({...t,fetcherKey:i,runClientMiddleware:()=>{throw Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))},l=await e({...s,fetcherKey:i,runClientMiddleware:c});try{await Promise.all(r.flatMap(e=>[e._lazyPromises?.handler,e._lazyPromises?.route]))}catch{}return l}async function SH({request:e,path:t,unstable_pattern:n,match:r,lazyHandlerPromise:i,lazyRoutePromise:a,handlerOverride:o,scopedContext:s}){let c,l,u=$H(e.method),d=u?`action`:`loader`,f=i=>{let a,c=new Promise((e,t)=>a=t);l=()=>a(),e.signal.addEventListener(`abort`,l);let u=a=>typeof i==`function`?i({request:e,unstable_url:kH(e,t),unstable_pattern:n,params:r.params,context:s},...a===void 0?[]:[a]):Promise.reject(Error(`You cannot call the handler for a route which defines a boolean "${d}" [routeId: ${r.route.id}]`)),f=(async()=>{try{return{type:`data`,result:await(o?o(e=>u(e)):u())}}catch(e){return{type:`error`,result:e}}})();return Promise.race([f,c])};try{let t=u?r.route.action:r.route.loader;if(i||a)if(t){let e,[n]=await Promise.all([f(t).catch(t=>{e=t}),i,a]);if(e!==void 0)throw e;c=n}else{await i;let t=u?r.route.action:r.route.loader;if(t)[c]=await Promise.all([f(t),a]);else if(d===`action`){let t=new URL(e.url),n=t.pathname+t.search;throw RH(405,{method:e.method,pathname:n,routeId:r.route.id})}else return{type:`data`,result:void 0}}else if(t)c=await f(t);else{let t=new URL(e.url);throw RH(404,{pathname:t.pathname+t.search})}}catch(e){return{type:`error`,result:e}}finally{l&&e.signal.removeEventListener(`abort`,l)}return c}async function CH(e){let t=e.headers.get(`Content-Type`);return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function wH(e){let{result:t,type:n}=e;if(YH(t)){let e;try{e=await CH(t)}catch(e){return{type:`error`,error:e}}return n===`error`?{type:`error`,error:new CV(t.status,t.statusText,e),statusCode:t.status,headers:t.headers}:{type:`data`,data:e,statusCode:t.status,headers:t.headers}}return n===`error`?JH(t)?t.data instanceof Error?{type:`error`,error:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:HH(t),statusCode:wV(t)?t.status:void 0,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:t,statusCode:wV(t)?t.status:void 0}:JH(t)?{type:`data`,data:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`data`,data:t}}function TH(e,t,n,r,i){let a=e.headers.get(`Location`);if(EB(a,`Redirects returned/thrown from loaders/actions must have a Location header`),!fV(a)){let o=r.slice(0,r.findIndex(e=>e.route.id===n)+1);a=$V(new URL(t.url),o,i,a),e.headers.set(`Location`,a)}return e}var EH=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function DH(e,t,n,r){if(fV(e)){let r=e,i=r.startsWith(`//`)?new URL(t.protocol+r):new URL(r);if(EH.includes(i.protocol))throw Error(`Invalid redirect location`);let a=lV(i.pathname,n)!=null;if(i.origin===t.origin&&a)return i.pathname+i.search+i.hash}try{let t=r.createURL(e);if(EH.includes(t.protocol))throw Error(`Invalid redirect location`)}catch{}return e}function OH(e,t,n,r){let i=e.createURL(BH(t)).toString(),a={signal:n};if(r&&$H(r.formMethod)){let{formMethod:e,formEncType:t}=r;a.method=e.toUpperCase(),t===`application/json`?(a.headers=new Headers({"Content-Type":t}),a.body=JSON.stringify(r.json)):t===`text/plain`?a.body=r.text:t===`application/x-www-form-urlencoded`&&r.formData?a.body=AH(r.formData):a.body=r.formData}return new Request(i,a)}function kH(e,t){let n=new URL(e.url),r=typeof t==`string`?MB(t):t;if(n.pathname=r.pathname||`/`,r.search){let e=new URLSearchParams(r.search),t=e.getAll(`index`);e.delete(`index`);for(let n of t.filter(Boolean))e.append(`index`,n);n.search=e.size?`?${e.toString()}`:``}else n.search=``;return n.hash=r.hash||``,n}function AH(e){let t=new URLSearchParams;for(let[n,r]of e.entries())t.append(n,typeof r==`string`?r:r.name);return t}function jH(e){let t=new FormData;for(let[n,r]of e.entries())t.append(n,r);return t}function MH(e,t,n,r=!1,i=!1){let a={},o=null,s,c=!1,l={},u=n&&KH(n[1])?n[1].error:void 0;return e.forEach(n=>{if(!(n.route.id in t))return;let d=n.route.id,f=t[d];if(EB(!qH(f),`Cannot handle redirect results in processLoaderData`),KH(f)){let t=f.error;if(u!==void 0&&(t=u,u=void 0),o||={},i)o[d]=t;else{let n=IH(e,d);o[n.route.id]??(o[n.route.id]=t)}r||(a[d]=XV),c||(c=!0,s=wV(f.error)?f.error.status:500),f.headers&&(l[d]=f.headers)}else a[d]=f.data,f.statusCode&&f.statusCode!==200&&!c&&(s=f.statusCode),f.headers&&(l[d]=f.headers)}),u!==void 0&&n&&(o={[n[0]]:u},n[2]&&(a[n[2]]=void 0)),{loaderData:a,errors:o,statusCode:s||200,loaderHeaders:l}}function NH(e,t,n,r,i,a){let{loaderData:o,errors:s}=MH(t,n,r);return i.filter(e=>!e.matches||e.matches.some(e=>e.shouldLoad)).forEach(t=>{let{key:n,match:r,controller:i}=t;if(i&&i.signal.aborted)return;let o=a[n];if(EB(o,`Did not find corresponding fetcher result`),KH(o)){let t=IH(e.matches,r?.route.id);s&&s[t.route.id]||(s={...s,[t.route.id]:o.error}),e.fetchers.delete(n)}else if(qH(o))EB(!1,`Unhandled fetcher revalidation redirect`);else{let t=sU(o.data);e.fetchers.set(n,t)}}),{loaderData:o,errors:s}}function PH(e,t,n,r){let i=Object.entries(t).filter(([,e])=>e!==XV).reduce((e,[t,n])=>(e[t]=n,e),{});for(let a of n){let n=a.route.id;if(!t.hasOwnProperty(n)&&e.hasOwnProperty(n)&&a.route.loader&&(i[n]=e[n]),r&&r.hasOwnProperty(n))break}return i}function FH(e){return e?KH(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function IH(e,t){return(t?e.slice(0,e.findIndex(e=>e.route.id===t)+1):[...e]).reverse().find(e=>e.route.hasErrorBoundary===!0)||e[0]}function LH(e){let t=e.length===1?e[0]:e.find(e=>e.index||!e.path||e.path===`/`)||{id:`__shim-error-route__`};return{matches:[{params:{},pathname:``,pathnameBase:``,route:t}],route:t}}function RH(e,{pathname:t,routeId:n,method:r,type:i,message:a}={}){let o=`Unknown Server Error`,s=`Unknown @remix-run/router error`;return e===400?(o=`Bad Request`,r&&t&&n?s=`You made a ${r} request to "${t}" but did not provide a \`loader\` for route "${n}", so there is no way to handle the request.`:i===`invalid-body`&&(s=`Unable to encode submission body`)):e===403?(o=`Forbidden`,s=`Route "${n}" does not match URL "${t}"`):e===404?(o=`Not Found`,s=`No route matches URL "${t}"`):e===405&&(o=`Method Not Allowed`,r&&t&&n?s=`You made a ${r.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${n}", so there is no way to handle the request.`:r&&(s=`Invalid request method "${r.toUpperCase()}"`)),new CV(e||500,o,Error(s),!0)}function zH(e){let t=Object.entries(e);for(let e=t.length-1;e>=0;e--){let[n,r]=t[e];if(qH(r))return{key:n,result:r}}}function BH(e){return jB({...typeof e==`string`?MB(e):e,hash:``})}function VH(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===``?t.hash!==``:e.hash===t.hash?!0:t.hash!==``}function HH(e){return new CV(e.init?.status??500,e.init?.statusText??`Internal Server Error`,e.data)}function UH(e){return typeof e==`object`&&!!e&&Object.entries(e).every(([e,t])=>typeof e==`string`&&WH(t))}function WH(e){return typeof e==`object`&&!!e&&`type`in e&&`result`in e&&(e.type===`data`||e.type===`error`)}function GH(e){return YH(e.result)&&UV.has(e.result.status)}function KH(e){return e.type===`error`}function qH(e){return(e&&e.type)===`redirect`}function JH(e){return typeof e==`object`&&!!e&&`type`in e&&`data`in e&&`init`in e&&e.type===`DataWithResponseInit`}function YH(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.headers==`object`&&e.body!==void 0}function XH(e){return UV.has(e)}function ZH(e){return YH(e)&&XH(e.status)&&e.headers.has(`Location`)}function QH(e){return HV.has(e.toUpperCase())}function $H(e){return BV.has(e.toUpperCase())}function eU(e){return new URLSearchParams(e).getAll(`index`).some(e=>e===``)}function tU(e,t){let n=typeof t==`string`?MB(t).search:t.search;if(e[e.length-1].route.index&&eU(n||``))return e[e.length-1];let r=gV(e);return r[r.length-1]}function nU(e){let{formMethod:t,formAction:n,formEncType:r,text:i,formData:a,json:o}=e;if(!(!t||!n||!r)){if(i!=null)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:void 0,text:i};if(a!=null)return{formMethod:t,formAction:n,formEncType:r,formData:a,json:void 0,text:void 0};if(o!==void 0)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:o,text:void 0}}}function rU(e,t){return t?{state:`loading`,location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:`loading`,location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function iU(e,t){return{state:`submitting`,location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function aU(e,t){return e?{state:`loading`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:`loading`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function oU(e,t){return{state:`submitting`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function sU(e){return{state:`idle`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function cU(e,t){try{let n=e.sessionStorage.getItem(YV);if(n){let e=JSON.parse(n);for(let[n,r]of Object.entries(e||{}))r&&Array.isArray(r)&&t.set(n,new Set(r||[]))}}catch{}}function lU(e,t){if(t.size>0){let n={};for(let[e,r]of t)n[e]=[...r];try{e.sessionStorage.setItem(YV,JSON.stringify(n))}catch(e){DB(!1,`Failed to save applied view transitions in sessionStorage (${e}).`)}}}function uU(){let e,t,n=new Promise((r,i)=>{e=async e=>{r(e);try{await n}catch{}},t=async e=>{i(e);try{await n}catch{}}});return{promise:n,resolve:e,reject:t}}var dU=b.createContext(null);dU.displayName=`DataRouter`;var fU=b.createContext(null);fU.displayName=`DataRouterState`;var pU=b.createContext(!1);function mU(){return b.useContext(pU)}var hU=b.createContext({isTransitioning:!1});hU.displayName=`ViewTransition`;var gU=b.createContext(new Map);gU.displayName=`Fetchers`;var _U=b.createContext(null);_U.displayName=`Await`;var vU=b.createContext(null);vU.displayName=`Navigation`;var yU=b.createContext(null);yU.displayName=`Location`;var bU=b.createContext({outlet:null,matches:[],isDataRoute:!1});bU.displayName=`Route`;var xU=b.createContext(null);xU.displayName=`RouteError`;var SU=`REACT_ROUTER_ERROR`,CU=`REDIRECT`,wU=`ROUTE_ERROR_RESPONSE`;function TU(e){if(e.startsWith(`${SU}:${CU}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function EU(e){if(e.startsWith(`${SU}:${wU}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new CV(t.status,t.statusText,t.data)}catch{}}function DU(e,{relative:t}={}){EB(OU(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:r}=b.useContext(vU),{hash:i,pathname:a,search:o}=LU(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:yV([n,a])),r.createHref({pathname:s,search:o,hash:i})}function OU(){return b.useContext(yU)!=null}function kU(){return EB(OU(),`useLocation() may be used only in the context of a <Router> component.`),b.useContext(yU).location}var AU=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function jU(e){b.useContext(vU).static||b.useLayoutEffect(e)}function MU(){let{isDataRoute:e}=b.useContext(bU);return e?nW():NU()}function NU(){EB(OU(),`useNavigate() may be used only in the context of a <Router> component.`);let e=b.useContext(dU),{basename:t,navigator:n}=b.useContext(vU),{matches:r}=b.useContext(bU),{pathname:i}=kU(),a=JSON.stringify(_V(r)),o=b.useRef(!1);return jU(()=>{o.current=!0}),b.useCallback((r,s={})=>{if(DB(o.current,AU),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=vV(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:yV([t,c.pathname])),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}var PU=b.createContext(null);function FU(e){let t=b.useContext(bU).outlet;return b.useMemo(()=>t&&b.createElement(PU.Provider,{value:e},t),[t,e])}function IU(){let{matches:e}=b.useContext(bU),t=e[e.length-1];return t?t.params:{}}function LU(e,{relative:t}={}){let{matches:n}=b.useContext(bU),{pathname:r}=kU(),i=JSON.stringify(_V(n));return b.useMemo(()=>vV(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function RU(e,t){return zU(e,t)}function zU(e,t,n){EB(OU(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:r}=b.useContext(vU),{matches:i}=b.useContext(bU),a=i[i.length-1],o=a?a.params:{},s=a?a.pathname:`/`,c=a?a.pathnameBase:`/`,l=a&&a.route;{let e=l&&l.path||``;iW(s,!l||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
216
|
+
`).replace(Rd,``)}function Bd(e,t){return t=zd(t),zd(e)===t}function Vd(e,t,n,r,a,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||Wt(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&Wt(e,``+r);break;case`className`:Ot(e,`class`,r);break;case`tabIndex`:Ot(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:Ot(e,n,r);break;case`style`:qt(e,r,o);break;case`data`:if(t!==`object`){Ot(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Zt(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}else typeof o==`function`&&(n===`formAction`?(t!==`input`&&Vd(e,t,`name`,a.name,a,null),Vd(e,t,`formEncType`,a.formEncType,a,null),Vd(e,t,`formMethod`,a.formMethod,a,null),Vd(e,t,`formTarget`,a.formTarget,a,null)):(Vd(e,t,`encType`,a.encType,a,null),Vd(e,t,`method`,a.method,a,null),Vd(e,t,`target`,a.target,a,null)));if(r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Zt(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=Qt);break;case`onScroll`:r!=null&&Od(`scroll`,e);break;case`onScrollEnd`:r!=null&&Od(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=Zt(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:Od(`beforetoggle`,e),Od(`toggle`,e),Dt(e,`popover`,r);break;case`xlinkActuate`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:kt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:kt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:kt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:kt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:Dt(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=Yt.get(n)||n,Dt(e,n,r))}}function Hd(e,t,n,r,a,o){switch(n){case`style`:qt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?Wt(e,r):(typeof r==`number`||typeof r==`bigint`)&&Wt(e,``+r);break;case`onScroll`:r!=null&&Od(`scroll`,e);break;case`onScrollEnd`:r!=null&&Od(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=Qt);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!bt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),t=n.slice(2,a?n.length-7:void 0),o=e[ot]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,a),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,a);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):Dt(e,n,r)}}}function Ud(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:Od(`error`,e),Od(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Vd(e,t,o,s,n,null)}}a&&Vd(e,t,`srcSet`,n.srcSet,n,null),r&&Vd(e,t,`src`,n.src,n,null);return;case`input`:Od(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:Vd(e,t,r,d,n,null)}}zt(e,o,c,l,u,s,a,!1);return;case`select`:for(a in Od(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:Vd(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&Vt(e,!!r,n,!0):Vt(e,!!r,t,!1);return;case`textarea`:for(s in Od(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:Vd(e,t,s,c,n,null)}Ut(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Vd(e,t,l,r,n,null)}return;case`dialog`:Od(`beforetoggle`,e),Od(`toggle`,e),Od(`cancel`,e),Od(`close`,e);break;case`iframe`:case`object`:Od(`load`,e);break;case`video`:case`audio`:for(r=0;r<Td.length;r++)Od(Td[r],e);break;case`image`:Od(`error`,e),Od(`load`,e);break;case`details`:Od(`toggle`,e);break;case`embed`:case`source`:case`link`:Od(`error`,e),Od(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Vd(e,t,u,r,n,null)}return;default:if(Jt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Hd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Vd(e,t,c,r,n,null))}function Wd(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||Vd(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:a=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&Vd(e,t,p,m,r,f)}}Rt(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||Vd(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&Vd(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?Vt(e,!!n,n?[]:``,!1):Vt(e,!!n,t,!0)):Vt(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:Vd(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:p=a;break;case`defaultValue`:m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&Vd(e,t,s,a,r,o)}Ht(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:Vd(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:Vd(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&Vd(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:Vd(e,t,u,p,r,m)}return;default:if(Jt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Hd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Hd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Vd(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||Vd(e,t,f,p,r,m)}function Gd(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Kd(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Gd(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Gd(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var qd=null,Jd=null;function Yd(e){return e.nodeType===9?e:e.ownerDocument}function Xd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Zd(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Qd(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var $d=null;function ef(){var e=window.event;return e&&e.type===`popstate`?e===$d?!1:($d=e,!0):($d=null,!1)}var tf=typeof setTimeout==`function`?setTimeout:void 0,nf=typeof clearTimeout==`function`?clearTimeout:void 0,rf=typeof Promise==`function`?Promise:void 0,af=typeof queueMicrotask==`function`?queueMicrotask:rf===void 0?tf:function(e){return rf.resolve(null).then(e).catch(of)};function of(e){setTimeout(function(){throw e})}function sf(e){return e===`head`}function cf(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Hp(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)Sf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,Sf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[ft]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&Sf(e.ownerDocument.body);n=i}while(n);Hp(t)}function lf(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8)if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++;n=r}while(n)}function uf(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:uf(n),pt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function df(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r)if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e;else if(!e[ft])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=_f(e.nextSibling),e===null)break}return null}function ff(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=_f(e.nextSibling),e===null))return null;return e}function pf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=_f(e.nextSibling),e===null))return null;return e}function mf(e){return e.data===`$?`||e.data===`$~`}function hf(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function gf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function _f(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var vf=null;function yf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return _f(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function bf(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function xf(e,t,n){switch(t=Yd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function Sf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);pt(e)}var Cf=new Map,wf=new Set;function Tf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Ef=F.d;F.d={f:Df,r:Of,D:jf,C:Mf,L:Nf,m:Pf,X:If,S:Ff,M:Lf};function Df(){var e=Ef.f(),t=Du();return e||t}function Of(e){var t=ht(e);t!==null&&t.tag===5&&t.type===`form`?Ds(t):Ef.r(e)}var kf=typeof document>`u`?null:document;function Af(e,t,n){var r=kf;if(r&&typeof t==`string`&&t){var i=Lt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),wf.has(i)||(wf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Ud(t,`link`,e),vt(t),r.head.appendChild(t)))}}function jf(e){Ef.D(e),Af(`dns-prefetch`,e,null)}function Mf(e,t){Ef.C(e,t),Af(`preconnect`,e,t)}function Nf(e,t,n){Ef.L(e,t,n);var r=kf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Lt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Lt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Lt(n.imageSizes)+`"]`)):i+=`[href="`+Lt(e)+`"]`;var a=i;switch(t){case`style`:a=zf(e);break;case`script`:a=Uf(e)}Cf.has(a)||(e=f({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),Cf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Bf(a))||t===`script`&&r.querySelector(Wf(a))||(t=r.createElement(`link`),Ud(t,`link`,e),vt(t),r.head.appendChild(t)))}}function Pf(e,t){Ef.m(e,t);var n=kf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Lt(r)+`"][href="`+Lt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Uf(e)}if(!Cf.has(a)&&(e=f({rel:`modulepreload`,href:e},t),Cf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Wf(a)))return}r=n.createElement(`link`),Ud(r,`link`,e),vt(r),n.head.appendChild(r)}}}function Ff(e,t,n){Ef.S(e,t,n);var r=kf;if(r&&e){var i=_t(r).hoistableStyles,a=zf(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Bf(a)))s.loading=5;else{e=f({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=Cf.get(a))&&qf(e,n);var c=o=r.createElement(`link`);vt(c),Ud(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Kf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function If(e,t){Ef.X(e,t);var n=kf;if(n&&e){var r=_t(n).hoistableScripts,i=Uf(e),a=r.get(i);a||(a=n.querySelector(Wf(i)),a||(e=f({src:e,async:!0},t),(t=Cf.get(i))&&Jf(e,t),a=n.createElement(`script`),vt(a),Ud(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Lf(e,t){Ef.M(e,t);var n=kf;if(n&&e){var r=_t(n).hoistableScripts,i=Uf(e),a=r.get(i);a||(a=n.querySelector(Wf(i)),a||(e=f({src:e,async:!0,type:`module`},t),(t=Cf.get(i))&&Jf(e,t),a=n.createElement(`script`),vt(a),Ud(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Rf(e,t,n,r){var a=(a=ce.current)?Tf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=zf(n.href),n=_t(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=zf(n.href);var o=_t(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Bf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),Cf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Cf.set(e,n),o||Hf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Uf(n),n=_t(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function zf(e){return`href="`+Lt(e)+`"`}function Bf(e){return`link[rel="stylesheet"][`+e+`]`}function Vf(e){return f({},e,{"data-precedence":e.precedence,precedence:null})}function Hf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Ud(t,`link`,n),vt(t),e.head.appendChild(t))}function Uf(e){return`[src="`+Lt(e)+`"]`}function Wf(e){return`script[async]`+e}function Gf(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Lt(n.href)+`"]`);if(r)return t.instance=r,vt(r),r;var a=f({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),vt(r),Ud(r,`style`,a),Kf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=zf(n.href);var o=e.querySelector(Bf(a));if(o)return t.state.loading|=4,t.instance=o,vt(o),o;r=Vf(n),(a=Cf.get(a))&&qf(r,a),o=(e.ownerDocument||e).createElement(`link`),vt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Ud(o,`link`,r),t.state.loading|=4,Kf(o,n.precedence,e),t.instance=o;case`script`:return o=Uf(n.src),(a=e.querySelector(Wf(o)))?(t.instance=a,vt(a),a):(r=n,(a=Cf.get(o))&&(r=f({},n),Jf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),vt(a),Ud(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Kf(r,n.precedence,e));return t.instance}function Kf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function qf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function Jf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Yf=null;function Xf(e,t,n){if(Yf===null){var r=new Map,i=Yf=new Map;i.set(n,r)}else i=Yf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[ft]||a[at]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Zf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Qf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function $f(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function ep(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=zf(r.href),a=t.querySelector(Bf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=rp.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,vt(a);return}a=t.ownerDocument||t,r=Vf(r),(i=Cf.get(i))&&qf(r,i),a=a.createElement(`link`),vt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Ud(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=rp.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var tp=0;function np(e,t){return e.stylesheets&&e.count===0&&ap(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&ap(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&tp===0&&(tp=62500*Kd());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&ap(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>tp?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function rp(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ap(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ip=null;function ap(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ip=new Map,t.forEach(op,e),ip=null,rp.call(e))}function op(e,t){if(!(t.state.loading&4)){var n=ip.get(e);if(n)var r=n.get(null);else{n=new Map,ip.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=rp.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var sp={$$typeof:x,Provider:null,Consumer:null,_currentValue:ee,_currentValue2:ee,_threadCount:0};function cp(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ye(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ye(0),this.hiddenUpdates=Ye(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function lp(e,t,n,r,i,a,o,s,c,l,u,d){return e=new cp(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=oi(3,null,null,t),e.current=a,a.stateNode=e,t=aa(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Ra(a),e}function up(e){return e?(e=R,e):R}function dp(e,t,n,r,i,a){i=up(i),r.context===null?r.context=i:r.pendingContext=i,r=Ba(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Va(e,r,t),n!==null&&(Cu(n,e,t),Ha(n,e,t))}function fp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function pp(e,t){fp(e,t),(e=e.alternate)&&fp(e,t)}function mp(e){if(e.tag===13||e.tag===31){var t=ni(e,67108864);t!==null&&Cu(t,e,67108864),pp(e,67108864)}}function hp(e){if(e.tag===13||e.tag===31){var t=xu();t=et(t);var n=ni(e,t);n!==null&&Cu(n,e,t),pp(e,t)}}var gp=!0;function _p(e,t,n,r){var i=P.T;P.T=null;var a=F.p;try{F.p=2,yp(e,t,n,r)}finally{F.p=a,P.T=i}}function vp(e,t,n,r){var i=P.T;P.T=null;var a=F.p;try{F.p=8,yp(e,t,n,r)}finally{F.p=a,P.T=i}}function yp(e,t,n,r){if(gp){var i=bp(r);if(i===null)Md(e,t,r,xp,n),Mp(e,r);else if(Pp(i,e,t,n,r))r.stopPropagation();else if(Mp(e,r),t&4&&-1<jp.indexOf(e)){for(;i!==null;){var a=ht(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Ge(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Re(o);s.entanglements[1]|=c,o&=~c}dd(a),!(Hl&6)&&(lu=Ee()+500,fd(0,!1))}}break;case 31:case 13:s=ni(a,2),s!==null&&Cu(s,a,2),Du(),pp(a,2)}if(a=bp(r),a===null&&Md(e,t,r,xp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else Md(e,t,r,null,n)}}function bp(e){return e=en(e),Sp(e)}var xp=null;function Sp(e){if(xp=null,e=mt(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return xp=e,null}function Cp(e){switch(e){case`beforetoggle`: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`toggle`: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 2;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`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(De()){case Oe:return 2;case ke:return 8;case Ae:case je:return 32;case Me:return 268435456;default:return 32}default:return 32}}var wp=!1,Tp=null,Ep=null,Dp=null,Op=new Map,kp=new Map,Ap=[],jp=`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`.split(` `);function Mp(e,t){switch(e){case`focusin`:case`focusout`:Tp=null;break;case`dragenter`:case`dragleave`:Ep=null;break;case`mouseover`:case`mouseout`:Dp=null;break;case`pointerover`:case`pointerout`:Op.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:kp.delete(t.pointerId)}}function Np(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=ht(t),t!==null&&mp(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Pp(e,t,n,r,i){switch(t){case`focusin`:return Tp=Np(Tp,e,t,n,r,i),!0;case`dragenter`:return Ep=Np(Ep,e,t,n,r,i),!0;case`mouseover`:return Dp=Np(Dp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return Op.set(a,Np(Op.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,kp.set(a,Np(kp.get(a)||null,e,t,n,r,i)),!0}return!1}function Fp(e){var t=mt(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,rt(e.priority,function(){hp(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,rt(e.priority,function(){hp(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ip(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=bp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);$t=r,n.target.dispatchEvent(r),$t=null}else return t=ht(n),t!==null&&mp(t),e.blockedOn=n,!1;t.shift()}return!0}function Lp(e,t,n){Ip(e)&&n.delete(t)}function Rp(){wp=!1,Tp!==null&&Ip(Tp)&&(Tp=null),Ep!==null&&Ip(Ep)&&(Ep=null),Dp!==null&&Ip(Dp)&&(Dp=null),Op.forEach(Lp),kp.forEach(Lp)}function zp(e,n){e.blockedOn===n&&(e.blockedOn=null,wp||(wp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Rp)))}var Bp=null;function Vp(e){Bp!==e&&(Bp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){Bp===e&&(Bp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(Sp(r||n)===null)continue;break}var a=ht(n);a!==null&&(e.splice(t,3),t-=3,Ts(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Hp(e){function t(t){return zp(t,e)}Tp!==null&&zp(Tp,e),Ep!==null&&zp(Ep,e),Dp!==null&&zp(Dp,e),Op.forEach(t),kp.forEach(t);for(var n=0;n<Ap.length;n++){var r=Ap[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<Ap.length&&(n=Ap[0],n.blockedOn===null);)Fp(n),n.blockedOn===null&&Ap.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[ot]||null;if(typeof a==`function`)o||Vp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[ot]||null)s=o.formAction;else if(Sp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Vp(n)}}}function Up(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function W(e){this._internalRoot=e}Wp.prototype.render=W.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;dp(n,xu(),e,t,null,null)},Wp.prototype.unmount=W.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;dp(e.current,2,null,e,null,null),Du(),t[st]=null}};function Wp(e){this._internalRoot=e}Wp.prototype.unstable_scheduleHydration=function(e){if(e){var t=nt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Ap.length&&t!==0&&t<Ap[n].priority;n++);Ap.splice(n,0,e),n===0&&Fp(e)}};var Gp=n.version;if(Gp!==`19.2.4`)throw Error(i(527,Gp,`19.2.4`));F.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=u(t),e=e===null?null:d(e),e=e===null?null:e.stateNode,e};var Kp={bundleType:0,version:`19.2.4`,rendererPackageName:`react-dom`,currentDispatcherRef:P,reconcilerVersion:`19.2.4`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var qp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!qp.isDisabled&&qp.supportsFiber)try{Fe=qp.inject(Kp),Ie=qp}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=Js,s=Ys,c=Xs;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=lp(e,1,!1,null,null,n,r,null,o,s,c,Up),e[st]=t.current,U(e),new W(t)}})),vB=o(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=_B()})),yB=`modulepreload`,bB=function(e){return`/`+e},xB={},SB=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=bB(t,n),t in xB)return;xB[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:yB,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},CB=e=>{throw TypeError(e)},wB=(e,t,n)=>t.has(e)||CB(`Cannot `+n),TB=(e,t,n)=>(wB(e,t,`read from private field`),n?n.call(e):t.get(e)),EB=(e,t,n)=>t.has(e)?CB(`Cannot add the same private member more than once`):t instanceof WeakSet?t.add(e):t.set(e,n),DB=`popstate`;function OB(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function kB(e={}){function t(e,t){let n=t.state?.masked,{pathname:r,search:i,hash:a}=n||e.location;return PB(``,{pathname:r,search:i,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||`default`,n?{pathname:e.location.pathname,search:e.location.search,hash:e.location.hash}:void 0)}function n(e,t){return typeof t==`string`?t:FB(t)}return LB(t,n,null,e)}function AB(e,t){if(e===!1||e==null)throw Error(t)}function jB(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function MB(){return Math.random().toString(36).substring(2,10)}function NB(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function PB(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?IB(t):t,state:n,key:t&&t.key||r||MB(),unstable_mask:i}}function FB({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function IB(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function LB(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,s=`POP`,c=null,l=u();l??(l=0,o.replaceState({...o.state,idx:l},``));function u(){return(o.state||{idx:null}).idx}function d(){s=`POP`;let e=u(),t=e==null?null:e-l;l=e,c&&c({action:s,location:h.location,delta:t})}function f(e,t){s=`PUSH`;let r=OB(e)?e:PB(h.location,e,t);n&&n(r,e),l=u()+1;let d=NB(r,l),f=h.createHref(r.unstable_mask||r);try{o.pushState(d,``,f)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(f)}a&&c&&c({action:s,location:h.location,delta:1})}function p(e,t){s=`REPLACE`;let r=OB(e)?e:PB(h.location,e,t);n&&n(r,e),l=u();let i=NB(r,l),d=h.createHref(r.unstable_mask||r);o.replaceState(i,``,d),a&&c&&c({action:s,location:h.location,delta:0})}function m(e){return RB(e)}let h={get action(){return s},get location(){return e(i,o)},listen(e){if(c)throw Error(`A history only accepts one active listener`);return i.addEventListener(DB,d),c=e,()=>{i.removeEventListener(DB,d),c=null}},createHref(e){return t(i,e)},createURL:m,encodeLocation(e){let t=m(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:f,replace:p,go(e){return o.go(e)}};return h}function RB(e,t=!1){let n=`http://localhost`;typeof window<`u`&&(n=window.location.origin===`null`?window.location.href:window.location.origin),AB(n,`No window.location.(origin|href) available to create URL`);let r=typeof e==`string`?e:FB(e);return r=r.replace(/ $/,`%20`),!t&&r.startsWith(`//`)&&(r=n+r),new URL(r,n)}var zB,BB=class{constructor(e){if(EB(this,zB,new Map),e)for(let[t,n]of e)this.set(t,n)}get(e){if(TB(this,zB).has(e))return TB(this,zB).get(e);if(e.defaultValue!==void 0)return e.defaultValue;throw Error(`No value found for context`)}set(e,t){TB(this,zB).set(e,t)}};zB=new WeakMap;var VB=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`children`]);function HB(e){return VB.has(e)}var UB=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`middleware`,`children`]);function WB(e){return UB.has(e)}function GB(e){return e.index===!0}function KB(e,t,n=[],r={},i=!1){return e.map((e,a)=>{let o=[...n,String(a)],s=typeof e.id==`string`?e.id:o.join(`-`);if(AB(e.index!==!0||!e.children,`Cannot specify children on an index route`),AB(i||!r[s],`Found a route id collision on id "${s}". Route id's must be globally unique within Data Router usages`),GB(e)){let n={...e,id:s};return r[s]=qB(n,t(n)),n}else{let n={...e,id:s,children:void 0};return r[s]=qB(n,t(n)),e.children&&(n.children=KB(e.children,t,o,r,i)),n}})}function qB(e,t){return Object.assign(e,{...t,...typeof t.lazy==`object`&&t.lazy!=null?{lazy:{...e.lazy,...t.lazy}}:{}})}function JB(e,t,n=`/`){return YB(e,t,n,!1)}function YB(e,t,n,r){let i=pV((typeof t==`string`?IB(t):t).pathname||`/`,n);if(i==null)return null;let a=ZB(e);$B(a);let o=null;for(let e=0;o==null&&e<a.length;++e){let t=fV(i);o=lV(a[e],t,r)}return o}function XB(e,t){let{route:n,pathname:r,params:i}=e;return{id:n.id,pathname:r,params:i,data:t[n.id],loaderData:t[n.id],handle:n.handle}}function ZB(e,t=[],n=[],r=``,i=!1){let a=(e,a,o=i,s)=>{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;AB(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let l=CV([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(AB(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),ZB(e.children,t,u,l,o)),!(e.path==null&&!e.index)&&t.push({path:l,score:sV(l,e.index),routesMeta:u})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of QB(e.path))a(e,t,!0,n)}),t}function QB(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=QB(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function $B(e){e.sort((e,t)=>e.score===t.score?cV(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var eV=/^:[\w-]+$/,tV=3,nV=2,rV=1,iV=10,aV=-2,oV=e=>e===`*`;function sV(e,t){let n=e.split(`/`),r=n.length;return n.some(oV)&&(r+=aV),t&&(r+=nV),n.filter(e=>!oV(e)).reduce((e,t)=>e+(eV.test(t)?tV:t===``?rV:iV),r)}function cV(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function lV(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e<r.length;++e){let s=r[e],c=e===r.length-1,l=a===`/`?t:t.slice(a.length)||`/`,u=uV({path:s.relativePath,caseSensitive:s.caseSensitive,end:c},l),d=s.route;if(!u&&c&&n&&!r[r.length-1].route.index&&(u=uV({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!u)return null;Object.assign(i,u.params),o.push({params:i,pathname:CV([a,u.pathname]),pathnameBase:wV(CV([a,u.pathnameBase])),route:d}),u.pathnameBase!==`/`&&(a=CV([a,u.pathnameBase]))}return o}function uV(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=dV(e.path,e.caseSensitive,e.end),i=t.match(n);if(!i)return null;let a=i[0],o=a.replace(/(.)\/+$/,`$1`),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=a.slice(0,a.length-e.length).replace(/(.)\/+$/,`$1`)}let i=s[r];return n&&!i?e[t]=void 0:e[t]=(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function dV(e,t=!1,n=!0){jB(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(\/|$)/g,`(/$1)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function fV(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return jB(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function pV(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function mV({basename:e,pathname:t}){return t===`/`?e:CV([e,t])}var hV=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,gV=e=>hV.test(e);function _V(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?IB(e):e,a;return n?(n=n.replace(/\/\/+/g,`/`),a=n.startsWith(`/`)?vV(n.substring(1),`/`):vV(n,t)):a=t,{pathname:a,search:TV(r),hash:EV(i)}}function vV(e,t){let n=t.replace(/\/+$/,``).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function yV(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function bV(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function xV(e){let t=bV(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function SV(e,t,n,r=!1){let i;typeof e==`string`?i=IB(e):(i={...e},AB(!i.pathname||!i.pathname.includes(`?`),yV(`?`,`pathname`,`search`,i)),AB(!i.pathname||!i.pathname.includes(`#`),yV(`#`,`pathname`,`hash`,i)),AB(!i.search||!i.search.includes(`#`),yV(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=_V(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var CV=e=>e.join(`/`).replace(/\/\/+/g,`/`),wV=e=>e.replace(/\/+$/,``).replace(/^\/*/,`/`),TV=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,EV=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,DV=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function OV(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function kV(e){return e.map(e=>e.route.path).filter(Boolean).join(`/`).replace(/\/\/*/g,`/`)||`/`}var AV=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function jV(e,t){let n=e;if(typeof n!=`string`||!hV.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(AV)try{let e=new URL(window.location.href),r=n.startsWith(`//`)?new URL(e.protocol+n):new URL(n),a=pV(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{jB(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}var MV=Symbol(`Uninstrumented`);function NV(e,t){let n={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};e.forEach(e=>e({id:t.id,index:t.index,path:t.path,instrument(e){let t=Object.keys(n);for(let r of t)e[r]&&n[r].push(e[r])}}));let r={};if(typeof t.lazy==`function`&&n.lazy.length>0){let e=FV(n.lazy,t.lazy,()=>void 0);e&&(r.lazy=e)}if(typeof t.lazy==`object`){let e=t.lazy;[`middleware`,`loader`,`action`].forEach(t=>{let i=e[t],a=n[`lazy.${t}`];if(typeof i==`function`&&a.length>0){let e=FV(a,i,()=>void 0);e&&(r.lazy=Object.assign(r.lazy||{},{[t]:e}))}})}return[`loader`,`action`].forEach(e=>{let i=t[e];if(typeof i==`function`&&n[e].length>0){let t=i[MV]??i,a=FV(n[e],t,(...e)=>LV(e[0]));a&&(e===`loader`&&t.hydrate===!0&&(a.hydrate=!0),a[MV]=t,r[e]=a)}}),t.middleware&&t.middleware.length>0&&n.middleware.length>0&&(r.middleware=t.middleware.map(e=>{let t=e[MV]??e,r=FV(n.middleware,t,(...e)=>LV(e[0]));return r?(r[MV]=t,r):e})),r}function PV(e,t){let n={navigate:[],fetch:[]};if(t.forEach(e=>e({instrument(e){let t=Object.keys(e);for(let r of t)e[r]&&n[r].push(e[r])}})),n.navigate.length>0){let t=e.navigate[MV]??e.navigate,r=FV(n.navigate,t,(...t)=>{let[n,r]=t;return{to:typeof n==`number`||typeof n==`string`?n:n?FB(n):`.`,...RV(e,r??{})}});r&&(r[MV]=t,e.navigate=r)}if(n.fetch.length>0){let t=e.fetch[MV]??e.fetch,r=FV(n.fetch,t,(...t)=>{let[n,,r,i]=t;return{href:r??`.`,fetcherKey:n,...RV(e,i??{})}});r&&(r[MV]=t,e.fetch=r)}return e}function FV(e,t,n){return e.length===0?null:async(...r)=>{let i=await IV(e,n(...r),()=>t(...r),e.length-1);if(i.type===`error`)throw i.value;return i.value}}async function IV(e,t,n,r){let i=e[r],a;if(i){let o,s=async()=>(o?console.error(`You cannot call instrumented handlers more than once`):o=IV(e,t,n,r-1),a=await o,AB(a,`Expected a result`),a.type===`error`&&a.value instanceof Error?{status:`error`,error:a.value}:{status:`success`,error:void 0});try{await i(s,t)}catch(e){console.error(`An instrumentation function threw an error:`,e)}o||await s(),await o}else try{a={type:`success`,value:await n()}}catch(e){a={type:`error`,value:e}}return a||{type:`error`,value:Error(`No result assigned in instrumentation chain.`)}}function LV(e){let{request:t,context:n,params:r,unstable_pattern:i}=e;return{request:zV(t),params:{...r},unstable_pattern:i,context:BV(n)}}function RV(e,t){return{currentUrl:FB(e.state.location),...`formMethod`in t?{formMethod:t.formMethod}:{},...`formEncType`in t?{formEncType:t.formEncType}:{},...`formData`in t?{formData:t.formData}:{},...`body`in t?{body:t.body}:{}}}function zV(e){return{method:e.method,url:e.url,headers:{get:(...t)=>e.headers.get(...t)}}}function BV(e){if(HV(e)){let t={...e};return Object.freeze(t),t}else return{get:t=>e.get(t)}}var VV=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function HV(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===VV}var UV=[`POST`,`PUT`,`PATCH`,`DELETE`],WV=new Set(UV),GV=[`GET`,...UV],KV=new Set(GV),qV=new Set([301,302,303,307,308]),JV=new Set([307,308]),YV={state:`idle`,location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},XV={state:`idle`,data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},ZV={state:`unblocked`,proceed:void 0,reset:void 0,location:void 0},QV=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),$V=`remix-router-transitions`,eH=Symbol(`ResetLoaderData`);function tH(e){let t=e.window?e.window:typeof window<`u`?window:void 0,n=t!==void 0&&t.document!==void 0&&t.document.createElement!==void 0;AB(e.routes.length>0,`You must provide a non-empty routes array to createRouter`);let r=e.hydrationRouteProperties||[],i=e.mapRouteProperties||QV,a=i;if(e.unstable_instrumentations){let t=e.unstable_instrumentations;a=e=>({...i(e),...NV(t.map(e=>e.route).filter(Boolean),e)})}let o={},s=KB(e.routes,a,void 0,o),c,l=e.basename||`/`;l.startsWith(`/`)||(l=`/${l}`);let u=e.dataStrategy||vH,d={unstable_passThroughRequests:!1,...e.future},f=null,p=new Set,m=null,h=null,g=null,_=e.hydrationData!=null,v=JB(s,e.history.location,l),y=!1,b=null,x,S;if(v==null&&!e.patchRoutesOnNavigation){let t=HH(404,{pathname:e.history.location.pathname}),{matches:n,route:r}=VH(s);x=!0,S=!x,v=n,b={[r.id]:t}}else if(v&&!e.hydrationData&&I(v,s,e.history.location.pathname).active&&(v=null),!v){x=!1,S=!x,v=[];let t=I(null,s,e.history.location.pathname);t.active&&t.matches&&(y=!0,v=t.matches)}else if(v.some(e=>e.route.lazy))x=!1,S=!x;else if(!v.some(e=>oH(e.route)))x=!0,S=!x;else{let t=e.hydrationData?e.hydrationData.loaderData:null,n=e.hydrationData?e.hydrationData.errors:null,r=v;if(n){let e=v.findIndex(e=>n[e.route.id]!==void 0);r=r.slice(0,e+1)}S=!1,x=!0,r.forEach(e=>{let r=sH(e.route,t,n);S||=r.renderFallback,x&&=!r.shouldLoad})}let C,w={historyAction:e.history.action,location:e.history.location,matches:v,initialized:x,renderFallback:S,navigation:YV,restoreScrollPosition:e.hydrationData==null?null:!1,preventScrollReset:!1,revalidation:`idle`,loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||b,fetchers:new Map,blockers:new Map},T=`POP`,E=null,D=!1,O,k=!1,A=new Map,j=null,M=!1,N=!1,P=new Set,F=new Map,ee=0,te=-1,ne=new Map,re=new Set,ie=new Map,ae=new Map,oe=new Set,se=new Map,ce,le=null;function ue(){if(f=e.history.listen(({action:t,location:n,delta:r})=>{if(ce){ce(),ce=void 0;return}jB(se.size===0||r!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let i=He({currentLocation:w.location,nextLocation:n,historyAction:t});if(i&&r!=null){let t=new Promise(e=>{ce=e});e.history.go(r*-1),Ve(i,{state:`blocked`,location:n,proceed(){Ve(i,{state:`proceeding`,proceed:void 0,reset:void 0,location:n}),t.then(()=>e.history.go(r))},reset(){let e=new Map(w.blockers);e.set(i,ZV),pe({blockers:e})}}),E?.resolve(),E=null;return}return _e(t,n)}),n){fU(t,A);let e=()=>pU(t,A);t.addEventListener(`pagehide`,e),j=()=>t.removeEventListener(`pagehide`,e)}return w.initialized||_e(`POP`,w.location,{initialHydration:!0}),C}function de(){f&&f(),j&&j(),p.clear(),O&&O.abort(),w.fetchers.forEach((e,t)=>Ne(t)),w.blockers.forEach((e,t)=>Be(t))}function fe(e){return p.add(e),()=>p.delete(e)}function pe(e,t={}){e.matches&&=e.matches.map(e=>{let t=o[e.route.id],n=e.route;return n.element!==t.element||n.errorElement!==t.errorElement||n.hydrateFallbackElement!==t.hydrateFallbackElement?{...e,route:t}:e}),w={...w,...e};let n=[],r=[];w.fetchers.forEach((e,t)=>{e.state===`idle`&&(oe.has(t)?n.push(t):r.push(t))}),oe.forEach(e=>{!w.fetchers.has(e)&&!F.has(e)&&n.push(e)}),[...p].forEach(r=>r(w,{deletedFetchers:n,newErrors:e.errors??null,viewTransitionOpts:t.viewTransitionOpts,flushSync:t.flushSync===!0})),n.forEach(e=>Ne(e)),r.forEach(e=>w.fetchers.delete(e))}function me(t,n,{flushSync:r}={}){let i=w.actionData!=null&&w.navigation.formMethod!=null&&rU(w.navigation.formMethod)&&w.navigation.state===`loading`&&t.state?._isRedirect!==!0,a;a=n.actionData?Object.keys(n.actionData).length>0?n.actionData:null:i?w.actionData:null;let o=n.loaderData?RH(w.loaderData,n.loaderData,n.matches||[],n.errors):w.loaderData,l=w.blockers;l.size>0&&(l=new Map(l),l.forEach((e,t)=>l.set(t,ZV)));let u=M?!1:qe(t,n.matches||w.matches),d=D===!0||w.navigation.formMethod!=null&&rU(w.navigation.formMethod)&&t.state?._isRedirect!==!0;c&&=(s=c,void 0),M||T===`POP`||(T===`PUSH`?e.history.push(t,t.state):T===`REPLACE`&&e.history.replace(t,t.state));let f;if(T===`POP`){let e=A.get(w.location.pathname);e&&e.has(t.pathname)?f={currentLocation:w.location,nextLocation:t}:A.has(t.pathname)&&(f={currentLocation:t,nextLocation:w.location})}else if(k){let e=A.get(w.location.pathname);e?e.add(t.pathname):(e=new Set([t.pathname]),A.set(w.location.pathname,e)),f={currentLocation:w.location,nextLocation:t}}pe({...n,actionData:a,loaderData:o,historyAction:T,location:t,initialized:!0,renderFallback:!1,navigation:YV,revalidation:`idle`,restoreScrollPosition:u,preventScrollReset:d,blockers:l},{viewTransitionOpts:f,flushSync:r===!0}),T=`POP`,D=!1,k=!1,M=!1,N=!1,E?.resolve(),E=null,le?.resolve(),le=null}async function he(t,n){if(E?.resolve(),E=null,typeof t==`number`){E||=mU();let n=E.promise;return e.history.go(t),n}let{path:r,submission:i,error:a}=iH(!1,rH(w.location,w.matches,l,t,n?.fromRouteId,n?.relative),n),o;n?.unstable_mask&&(o={pathname:``,search:``,hash:``,...typeof n.unstable_mask==`string`?IB(n.unstable_mask):{...w.location.unstable_mask,...n.unstable_mask}});let s=w.location,c=PB(s,r,n&&n.state,void 0,o);c={...c,...e.history.encodeLocation(c)};let u=n&&n.replace!=null?n.replace:void 0,d=`PUSH`;u===!0?d=`REPLACE`:u===!1||i!=null&&rU(i.formMethod)&&i.formAction===w.location.pathname+w.location.search&&(d=`REPLACE`);let f=n&&`preventScrollReset`in n?n.preventScrollReset===!0:void 0,p=(n&&n.flushSync)===!0,m=He({currentLocation:s,nextLocation:c,historyAction:d});if(m){Ve(m,{state:`blocked`,location:c,proceed(){Ve(m,{state:`proceeding`,proceed:void 0,reset:void 0,location:c}),he(t,n)},reset(){let e=new Map(w.blockers);e.set(m,ZV),pe({blockers:e})}});return}await _e(d,c,{submission:i,pendingError:a,preventScrollReset:f,replace:n&&n.replace,enableViewTransition:n&&n.viewTransition,flushSync:p,callSiteDefaultShouldRevalidate:n&&n.unstable_defaultShouldRevalidate})}function ge(){le||=mU(),Oe(),pe({revalidation:`loading`});let e=le.promise;return w.navigation.state===`submitting`?e:w.navigation.state===`idle`?(_e(w.historyAction,w.location,{startUninterruptedRevalidation:!0}),e):(_e(T||w.historyAction,w.navigation.location,{overrideNavigation:w.navigation,enableViewTransition:k===!0}),e)}async function _e(t,n,r){O&&O.abort(),O=null,T=t,M=(r&&r.startUninterruptedRevalidation)===!0,Ke(w.location,w.matches),D=(r&&r.preventScrollReset)===!0,k=(r&&r.enableViewTransition)===!0;let i=c||s,a=r&&r.overrideNavigation,o=r?.initialHydration&&w.matches&&w.matches.length>0&&!y?w.matches:JB(i,n,l),u=(r&&r.flushSync)===!0;if(o&&w.initialized&&!N&&GH(w.location,n)&&!(r&&r.submission&&rU(r.submission.formMethod))){me(n,{matches:o},{flushSync:u});return}let d=I(o,i,n.pathname);if(d.active&&d.matches&&(o=d.matches),!o){let{error:e,notFoundMatches:t,route:r}=Ue(n.pathname);me(n,{matches:t,loaderData:{},errors:{[r.id]:e}},{flushSync:u});return}O=new AbortController;let f=MH(e.history,n,O.signal,r&&r.submission),p=e.getContext?await e.getContext():new BB,m;if(r&&r.pendingError)m=[BH(o).route.id,{type:`error`,error:r.pendingError}];else if(r&&r.submission&&rU(r.submission.formMethod)){let t=await ve(f,n,r.submission,o,p,d.active,r&&r.initialHydration===!0,{replace:r.replace,flushSync:u});if(t.shortCircuited)return;if(t.pendingActionResult){let[e,r]=t.pendingActionResult;if(XH(r)&&OV(r.error)&&r.error.status===404){O=null,me(n,{matches:t.matches,loaderData:{},errors:{[e]:r.error}});return}}o=t.matches||o,m=t.pendingActionResult,a=sU(n,r.submission),u=!1,d.active=!1,f=MH(e.history,f.url,f.signal)}let{shortCircuited:h,matches:g,loaderData:_,errors:v}=await ye(f,n,o,p,d.active,a,r&&r.submission,r&&r.fetcherSubmission,r&&r.replace,r&&r.initialHydration===!0,u,m,r&&r.callSiteDefaultShouldRevalidate);h||(O=null,me(n,{matches:g||o,...zH(m),loaderData:_,errors:v}))}async function ve(t,n,i,c,u,d,f,p={}){if(Oe(),pe({navigation:cU(n,i)},{flushSync:p.flushSync===!0}),d){let e=await Je(c,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=VH(s);return{matches:t,pendingActionResult:[n.id,{type:`error`,error:e.error}]}}let t=BH(e.partialMatches).route.id;return{matches:e.partialMatches,pendingActionResult:[t,{type:`error`,error:e.error}]}}else if(e.matches)c=e.matches;else{let{notFoundMatches:e,error:t,route:r}=Ue(n.pathname);return{matches:e,pendingActionResult:[r.id,{type:`error`,error:t}]}}}let m,h=aU(c,n);if(!h.route.action&&!h.route.lazy)m={type:`error`,error:HH(405,{method:t.method,pathname:n.pathname,routeId:h.route.id})};else{let e=await Ee(t,n,wH(a,o,t,n,c,h,f?[]:r,u),u,null);if(m=e[h.route.id],!m){for(let t of c)if(e[t.route.id]){m=e[t.route.id];break}}if(t.signal.aborted)return{shortCircuited:!0}}if(ZH(m)){let n;return n=p&&p.replace!=null?p.replace:jH(m.response.headers.get(`Location`),new URL(t.url),l,e.history)===w.location.pathname+w.location.search,await Te(t,m,!0,{submission:i,replace:n}),{shortCircuited:!0}}if(XH(m)){let e=BH(c,h.route.id);return(p&&p.replace)!==!0&&(T=`PUSH`),{matches:c,pendingActionResult:[e.route.id,m,h.route.id]}}return{matches:c,pendingActionResult:[h.route.id,m]}}async function ye(t,n,i,u,d,f,p,m,h,g,_,v,y){let b=f||sU(n,p),x=p||m||oU(b),S=!M&&!g;if(d){if(S){let e=be(v);pe({navigation:b,...e===void 0?{}:{actionData:e}},{flushSync:_})}let e=await Je(i,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=VH(s);return{matches:t,loaderData:{},errors:{[n.id]:e.error}}}let t=BH(e.partialMatches).route.id;return{matches:e.partialMatches,loaderData:{},errors:{[t]:e.error}}}else if(e.matches)i=e.matches;else{let{error:e,notFoundMatches:t,route:r}=Ue(n.pathname);return{matches:t,loaderData:{},errors:{[r.id]:e}}}}let C=c||s,{dsMatches:T,revalidatingFetchers:E}=aH(t,u,a,o,e.history,w,i,x,n,g?[]:r,g===!0,N,P,oe,ie,re,C,l,e.patchRoutesOnNavigation!=null,v,y);if(te=++ee,!e.dataStrategy&&!T.some(e=>e.shouldLoad)&&!T.some(e=>e.route.middleware&&e.route.middleware.length>0)&&E.length===0){let e=Le();return me(n,{matches:i,loaderData:{},errors:v&&XH(v[1])?{[v[0]]:v[1].error}:null,...zH(v),...e?{fetchers:new Map(w.fetchers)}:{}},{flushSync:_}),{shortCircuited:!0}}if(S){let e={};if(!d){e.navigation=b;let t=be(v);t!==void 0&&(e.actionData=t)}E.length>0&&(e.fetchers=xe(E)),pe(e,{flushSync:_})}E.forEach(e=>{Fe(e.key),e.controller&&F.set(e.key,e.controller)});let D=()=>E.forEach(e=>Fe(e.key));O&&O.signal.addEventListener(`abort`,D);let{loaderResults:k,fetcherResults:A}=await De(T,E,t,n,u);if(t.signal.aborted)return{shortCircuited:!0};O&&O.signal.removeEventListener(`abort`,D),E.forEach(e=>F.delete(e.key));let j=UH(k);if(j)return await Te(t,j.result,!0,{replace:h}),{shortCircuited:!0};if(j=UH(A),j)return re.add(j.key),await Te(t,j.result,!0,{replace:h}),{shortCircuited:!0};let{loaderData:ne,errors:ae}=LH(w,i,k,v,E,A);g&&w.errors&&(ae={...w.errors,...ae});let se=Le(),ce=Re(te),le=se||ce||E.length>0;return{matches:i,loaderData:ne,errors:ae,...le?{fetchers:new Map(w.fetchers)}:{}}}function be(e){if(e&&!XH(e[1]))return{[e[0]]:e[1].data};if(w.actionData)return Object.keys(w.actionData).length===0?null:w.actionData}function xe(e){return e.forEach(e=>{let t=w.fetchers.get(e.key),n=lU(void 0,t?t.data:void 0);w.fetchers.set(e.key,n)}),new Map(w.fetchers)}async function Se(t,n,r,i){Fe(t);let a=(i&&i.flushSync)===!0,o=c||s,u=rH(w.location,w.matches,l,r,n,i?.relative),d=JB(o,u,l),f=I(d,o,u);if(f.active&&f.matches&&(d=f.matches),!d){Ae(t,n,HH(404,{pathname:u}),{flushSync:a});return}let{path:p,submission:m,error:h}=iH(!0,u,i);if(h){Ae(t,n,h,{flushSync:a});return}let g=e.getContext?await e.getContext():new BB,_=(i&&i.preventScrollReset)===!0;if(m&&rU(m.formMethod)){await Ce(t,n,p,d,g,f.active,a,_,m,i&&i.unstable_defaultShouldRevalidate);return}ie.set(t,{routeId:n,path:p}),await we(t,n,p,d,g,f.active,a,_,m)}async function Ce(t,n,i,u,d,f,p,m,h,g){Oe(),ie.delete(t),ke(t,uU(h,w.fetchers.get(t)),{flushSync:p});let _=new AbortController,v=MH(e.history,i,_.signal,h);if(f){let e=await Je(u,new URL(v.url).pathname,v.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){Ae(t,n,e.error,{flushSync:p});return}else if(e.matches)u=e.matches;else{Ae(t,n,HH(404,{pathname:i}),{flushSync:p});return}}let y=aU(u,i);if(!y.route.action&&!y.route.lazy){Ae(t,n,HH(405,{method:h.formMethod,pathname:i,routeId:n}),{flushSync:p});return}F.set(t,_);let b=ee,x=wH(a,o,v,i,u,y,r,d),S=await Ee(v,i,x,d,t),C=S[y.route.id];if(!C){for(let e of x)if(S[e.route.id]){C=S[e.route.id];break}}if(v.signal.aborted){F.get(t)===_&&F.delete(t);return}if(oe.has(t)){if(ZH(C)||XH(C)){ke(t,dU(void 0));return}}else{if(ZH(C))if(F.delete(t),te>b){ke(t,dU(void 0));return}else return re.add(t),ke(t,lU(h)),Te(v,C,!1,{fetcherSubmission:h,preventScrollReset:m});if(XH(C)){Ae(t,n,C.error);return}}let E=w.navigation.location||w.location,D=MH(e.history,E,_.signal),k=c||s,A=w.navigation.state===`idle`?w.matches:JB(k,w.navigation.location,l);AB(A,`Didn't find any matches after fetcher action`);let j=++ee;ne.set(t,j);let M=lU(h,C.data);w.fetchers.set(t,M);let{dsMatches:ae,revalidatingFetchers:se}=aH(D,d,a,o,e.history,w,A,h,E,r,!1,N,P,oe,ie,re,k,l,e.patchRoutesOnNavigation!=null,[y.route.id,C],g);se.filter(e=>e.key!==t).forEach(e=>{let t=e.key,n=w.fetchers.get(t),r=lU(void 0,n?n.data:void 0);w.fetchers.set(t,r),Fe(t),e.controller&&F.set(t,e.controller)}),pe({fetchers:new Map(w.fetchers)});let ce=()=>se.forEach(e=>Fe(e.key));_.signal.addEventListener(`abort`,ce);let{loaderResults:le,fetcherResults:ue}=await De(ae,se,D,E,d);if(_.signal.aborted)return;if(_.signal.removeEventListener(`abort`,ce),ne.delete(t),F.delete(t),se.forEach(e=>F.delete(e.key)),w.fetchers.has(t)){let e=dU(C.data);w.fetchers.set(t,e)}let de=UH(le);if(de)return Te(D,de.result,!1,{preventScrollReset:m});if(de=UH(ue),de)return re.add(de.key),Te(D,de.result,!1,{preventScrollReset:m});let{loaderData:fe,errors:he}=LH(w,A,le,void 0,se,ue);Re(j),w.navigation.state===`loading`&&j>te?(AB(T,`Expected pending action`),O&&O.abort(),me(w.navigation.location,{matches:A,loaderData:fe,errors:he,fetchers:new Map(w.fetchers)})):(pe({errors:he,loaderData:RH(w.loaderData,fe,A,he),fetchers:new Map(w.fetchers)}),N=!1)}async function we(t,n,i,s,c,l,u,d,f){let p=w.fetchers.get(t);ke(t,lU(f,p?p.data:void 0),{flushSync:u});let m=new AbortController,h=MH(e.history,i,m.signal);if(l){let e=await Je(s,new URL(h.url).pathname,h.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){Ae(t,n,e.error,{flushSync:u});return}else if(e.matches)s=e.matches;else{Ae(t,n,HH(404,{pathname:i}),{flushSync:u});return}}let g=aU(s,i);F.set(t,m);let _=ee,v=(await Ee(h,i,wH(a,o,h,i,s,g,r,c),c,t))[g.route.id];if(F.get(t)===m&&F.delete(t),!h.signal.aborted){if(oe.has(t)){ke(t,dU(void 0));return}if(ZH(v))if(te>_){ke(t,dU(void 0));return}else{re.add(t),await Te(h,v,!1,{preventScrollReset:d});return}if(XH(v)){Ae(t,n,v.error);return}ke(t,dU(v.data))}}async function Te(r,i,a,{submission:o,fetcherSubmission:s,preventScrollReset:c,replace:u}={}){a||(E?.resolve(),E=null),i.response.headers.has(`X-Remix-Revalidate`)&&(N=!0);let d=i.response.headers.get(`Location`);AB(d,`Expected a Location header on the redirect Response`),d=jH(d,new URL(r.url),l,e.history);let f=PB(w.location,d,{_isRedirect:!0});if(n){let e=!1;if(i.response.headers.has(`X-Remix-Reload-Document`))e=!0;else if(gV(d)){let n=RB(d,!0);e=n.origin!==t.location.origin||pV(n.pathname,l)==null}if(e){u?t.location.replace(d):t.location.assign(d);return}}O=null;let p=u===!0||i.response.headers.has(`X-Remix-Replace`)?`REPLACE`:`PUSH`,{formMethod:m,formAction:h,formEncType:g}=w.navigation;!o&&!s&&m&&h&&g&&(o=oU(w.navigation));let _=o||s;JV.has(i.response.status)&&_&&rU(_.formMethod)?await _e(p,f,{submission:{..._,formAction:d},preventScrollReset:c||D,enableViewTransition:a?k:void 0}):await _e(p,f,{overrideNavigation:sU(f,o),fetcherSubmission:s,preventScrollReset:c||D,enableViewTransition:a?k:void 0})}async function Ee(e,t,n,r,i){let a,o={};try{a=await TH(u,e,t,n,i,r,!1)}catch(e){return n.filter(e=>e.shouldLoad).forEach(t=>{o[t.route.id]={type:`error`,error:e}}),o}if(e.signal.aborted)return o;if(!rU(e.method))for(let e of n){if(a[e.route.id]?.type===`error`)break;!a.hasOwnProperty(e.route.id)&&!w.loaderData.hasOwnProperty(e.route.id)&&(!w.errors||!w.errors.hasOwnProperty(e.route.id))&&e.shouldCallHandler()&&(a[e.route.id]={type:`error`,result:Error(`No result returned from dataStrategy for route ${e.route.id}`)})}for(let[t,r]of Object.entries(a))if(YH(r)){let i=r.result;o[t]={type:`redirect`,response:kH(i,e,t,n,l)}}else o[t]=await OH(r);return o}async function De(e,t,n,r,i){let a=Ee(n,r,e,i,null),o=Promise.all(t.map(async e=>{if(e.matches&&e.match&&e.request&&e.controller){let t=(await Ee(e.request,e.path,e.matches,i,e.key))[e.match.route.id];return{[e.key]:t}}else return Promise.resolve({[e.key]:{type:`error`,error:HH(404,{pathname:e.path})}})}));return{loaderResults:await a,fetcherResults:(await o).reduce((e,t)=>Object.assign(e,t),{})}}function Oe(){N=!0,ie.forEach((e,t)=>{F.has(t)&&P.add(t),Fe(t)})}function ke(e,t,n={}){w.fetchers.set(e,t),pe({fetchers:new Map(w.fetchers)},{flushSync:(n&&n.flushSync)===!0})}function Ae(e,t,n,r={}){let i=BH(w.matches,t);Ne(e),pe({errors:{[i.route.id]:n},fetchers:new Map(w.fetchers)},{flushSync:(r&&r.flushSync)===!0})}function je(e){return ae.set(e,(ae.get(e)||0)+1),oe.has(e)&&oe.delete(e),w.fetchers.get(e)||XV}function Me(e,t){Fe(e,t?.reason),ke(e,dU(null))}function Ne(e){let t=w.fetchers.get(e);F.has(e)&&!(t&&t.state===`loading`&&ne.has(e))&&Fe(e),ie.delete(e),ne.delete(e),re.delete(e),oe.delete(e),P.delete(e),w.fetchers.delete(e)}function Pe(e){let t=(ae.get(e)||0)-1;t<=0?(ae.delete(e),oe.add(e)):ae.set(e,t),pe({fetchers:new Map(w.fetchers)})}function Fe(e,t){let n=F.get(e);n&&(n.abort(t),F.delete(e))}function Ie(e){for(let t of e){let e=dU(je(t).data);w.fetchers.set(t,e)}}function Le(){let e=[],t=!1;for(let n of re){let r=w.fetchers.get(n);AB(r,`Expected fetcher: ${n}`),r.state===`loading`&&(re.delete(n),e.push(n),t=!0)}return Ie(e),t}function Re(e){let t=[];for(let[n,r]of ne)if(r<e){let e=w.fetchers.get(n);AB(e,`Expected fetcher: ${n}`),e.state===`loading`&&(Fe(n),ne.delete(n),t.push(n))}return Ie(t),t.length>0}function ze(e,t){let n=w.blockers.get(e)||ZV;return se.get(e)!==t&&se.set(e,t),n}function Be(e){w.blockers.delete(e),se.delete(e)}function Ve(e,t){let n=w.blockers.get(e)||ZV;AB(n.state===`unblocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`proceeding`||n.state===`blocked`&&t.state===`unblocked`||n.state===`proceeding`&&t.state===`unblocked`,`Invalid blocker state transition: ${n.state} -> ${t.state}`);let r=new Map(w.blockers);r.set(e,t),pe({blockers:r})}function He({currentLocation:e,nextLocation:t,historyAction:n}){if(se.size===0)return;se.size>1&&jB(!1,`A router only supports one blocker at a time`);let r=Array.from(se.entries()),[i,a]=r[r.length-1],o=w.blockers.get(i);if(!(o&&o.state===`proceeding`)&&a({currentLocation:e,nextLocation:t,historyAction:n}))return i}function Ue(e){let t=HH(404,{pathname:e}),{matches:n,route:r}=VH(c||s);return{notFoundMatches:n,route:r,error:t}}function We(e,t,n){if(m=e,g=t,h=n||null,!_&&w.navigation===YV){_=!0;let e=qe(w.location,w.matches);e!=null&&pe({restoreScrollPosition:e})}return()=>{m=null,g=null,h=null}}function Ge(e,t){return h&&h(e,t.map(e=>XB(e,w.loaderData)))||e.key}function Ke(e,t){if(m&&g){let n=Ge(e,t);m[n]=g()}}function qe(e,t){if(m){let n=Ge(e,t),r=m[n];if(typeof r==`number`)return r}return null}function I(t,n,r){if(e.patchRoutesOnNavigation){if(!t)return{active:!0,matches:YB(n,r,l,!0)||[]};if(Object.keys(t[0].params).length>0)return{active:!0,matches:YB(n,r,l,!0)}}return{active:!1,matches:null}}async function Je(t,n,r,i){if(!e.patchRoutesOnNavigation)return{type:`success`,matches:t};let u=t;for(;;){let t=c==null,d=c||s,f=o;try{await e.patchRoutesOnNavigation({signal:r,path:n,matches:u,fetcherKey:i,patch:(e,t)=>{r.aborted||dH(e,t,d,f,a,!1)}})}catch(e){return{type:`error`,error:e,partialMatches:u}}finally{t&&!r.aborted&&(s=[...s])}if(r.aborted)return{type:`aborted`};let p=JB(d,n,l),m=null;if(p&&(Object.keys(p[0].params).length===0||(m=YB(d,n,l,!0),!(m&&u.length<m.length&&Ye(u,m.slice(0,u.length))))))return{type:`success`,matches:p};if(m||=YB(d,n,l,!0),!m||Ye(u,m))return{type:`success`,matches:null};u=m}}function Ye(e,t){return e.length===t.length&&e.every((e,n)=>e.route.id===t[n].route.id)}function Xe(e){o={},c=KB(e,a,void 0,o)}function Ze(e,t,n=!1){let r=c==null;dH(e,t,c||s,o,a,n),r&&(s=[...s],pe({}))}return C={get basename(){return l},get future(){return d},get state(){return w},get routes(){return s},get window(){return t},initialize:ue,subscribe:fe,enableScrollRestoration:We,navigate:he,fetch:Se,revalidate:ge,createHref:t=>e.history.createHref(t),encodeLocation:t=>e.history.encodeLocation(t),getFetcher:je,resetFetcher:Me,deleteFetcher:Pe,dispose:de,getBlocker:ze,deleteBlocker:Be,patchRoutes:Ze,_internalFetchControllers:F,_internalSetRoutes:Xe,_internalSetStateDoNotUseOrYouWillBreakYourApp(e){pe(e)}},e.unstable_instrumentations&&(C=PV(C,e.unstable_instrumentations.map(e=>e.router).filter(Boolean))),C}function nH(e){return e!=null&&(`formData`in e&&e.formData!=null||`body`in e&&e.body!==void 0)}function rH(e,t,n,r,i,a){let o,s;if(i){o=[];for(let e of t)if(o.push(e),e.route.id===i){s=e;break}}else o=t,s=t[t.length-1];let c=SV(r||`.`,xV(o),pV(e.pathname,n)||e.pathname,a===`path`);if(r??(c.search=e.search,c.hash=e.hash),(r==null||r===``||r===`.`)&&s){let e=iU(c.search);if(s.route.index&&!e)c.search=c.search?c.search.replace(/^\?/,`?index&`):`?index`;else if(!s.route.index&&e){let e=new URLSearchParams(c.search),t=e.getAll(`index`);e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();c.search=n?`?${n}`:``}}return n!==`/`&&(c.pathname=mV({basename:n,pathname:c.pathname})),FB(c)}function iH(e,t,n){if(!n||!nH(n))return{path:t};if(n.formMethod&&!nU(n.formMethod))return{path:t,error:HH(405,{method:n.formMethod})};let r=()=>({path:t,error:HH(400,{type:`invalid-body`})}),i=(n.formMethod||`get`).toUpperCase(),a=WH(t);if(n.body!==void 0){if(n.formEncType===`text/plain`){if(!rU(i))return r();let e=typeof n.body==`string`?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((e,[t,n])=>`${e}${t}=${n}
|
|
217
|
+
`,``):String(n.body);return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:void 0,text:e}}}else if(n.formEncType===`application/json`){if(!rU(i))return r();try{let e=typeof n.body==`string`?JSON.parse(n.body):n.body;return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:e,text:void 0}}}catch{return r()}}}AB(typeof FormData==`function`,`FormData is not available in this environment`);let o,s;if(n.formData)o=PH(n.formData),s=n.formData;else if(n.body instanceof FormData)o=PH(n.body),s=n.body;else if(n.body instanceof URLSearchParams)o=n.body,s=FH(o);else if(n.body==null)o=new URLSearchParams,s=new FormData;else try{o=new URLSearchParams(n.body),s=FH(o)}catch{return r()}let c={formMethod:i,formAction:a,formEncType:n&&n.formEncType||`application/x-www-form-urlencoded`,formData:s,json:void 0,text:void 0};if(rU(c.formMethod))return{path:t,submission:c};let l=IB(t);return e&&l.search&&iU(l.search)&&o.append(`index`,``),l.search=`?${o}`,{path:FB(l),submission:c}}function aH(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b){let x=y?XH(y[1])?y[1].error:y[1].data:void 0,S=i.createURL(a.location),C=i.createURL(c),w;if(u&&a.errors){let e=Object.keys(a.errors)[0];w=o.findIndex(t=>t.route.id===e)}else if(y&&XH(y[1])){let e=y[0];w=o.findIndex(t=>t.route.id===e)-1}let T=y?y[1].statusCode:void 0,E=T&&T>=400,D={currentUrl:S,currentParams:a.matches[0]?.params||{},nextUrl:C,nextParams:o[0].params,...s,actionResult:x,actionStatus:T},O=kV(o),k=o.map((i,o)=>{let{route:s}=i,f=null;if(w!=null&&o>w)f=!1;else if(s.lazy)f=!0;else if(!oH(s))f=!1;else if(u){let{shouldLoad:e}=sH(s,a.loaderData,a.errors);f=e}else cH(a.loaderData,a.matches[o],i)&&(f=!0);if(f!==null)return CH(n,r,e,c,O,i,l,t,f);let p=!1;typeof b==`boolean`?p=b:E?p=!1:d||S.pathname+S.search===C.pathname+C.search?p=!0:S.search===C.search?lH(a.matches[o],i)&&(p=!0):p=!0;let m={...D,defaultShouldRevalidate:p};return CH(n,r,e,c,O,i,l,t,uH(i,m),m,b)}),A=[];return m.forEach((e,s)=>{if(u||!o.some(t=>t.route.id===e.routeId)||p.has(s))return;let c=a.fetchers.get(s),m=c&&c.state!==`idle`&&c.data===void 0,y=JB(g,e.path,_);if(!y){if(v&&m)return;A.push({key:s,routeId:e.routeId,path:e.path,matches:null,match:null,request:null,controller:null});return}if(h.has(s))return;let x=aU(y,e.path),S=new AbortController,C=MH(i,e.path,S.signal),w=null;if(f.has(s))f.delete(s),w=wH(n,r,C,e.path,y,x,l,t);else if(m)d&&(w=wH(n,r,C,e.path,y,x,l,t));else{let i;i=typeof b==`boolean`?b:E?!1:d;let a={...D,defaultShouldRevalidate:i};uH(x,a)&&(w=wH(n,r,C,e.path,y,x,l,t,a))}w&&A.push({key:s,routeId:e.routeId,path:e.path,matches:w,match:x,request:C,controller:S})}),{dsMatches:k,revalidatingFetchers:A}}function oH(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function sH(e,t,n){if(e.lazy)return{shouldLoad:!0,renderFallback:!0};if(!oH(e))return{shouldLoad:!1,renderFallback:!1};let r=t!=null&&e.id in t,i=n!=null&&n[e.id]!==void 0;if(!r&&i)return{shouldLoad:!1,renderFallback:!1};if(typeof e.loader==`function`&&e.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!r};let a=!r&&!i;return{shouldLoad:a,renderFallback:a}}function cH(e,t,n){let r=!t||n.route.id!==t.route.id,i=!e.hasOwnProperty(n.route.id);return r||i}function lH(e,t){let n=e.route.path;return e.pathname!==t.pathname||n!=null&&n.endsWith(`*`)&&e.params[`*`]!==t.params[`*`]}function uH(e,t){if(e.route.shouldRevalidate){let n=e.route.shouldRevalidate(t);if(typeof n==`boolean`)return n}return t.defaultShouldRevalidate}function dH(e,t,n,r,i,a){let o;if(e){let t=r[e];AB(t,`No route found to patch children into: routeId = ${e}`),t.children||=[],o=t.children}else o=n;let s=[],c=[];if(t.forEach(e=>{let t=o.find(t=>fH(e,t));t?c.push({existingRoute:t,newRoute:e}):s.push(e)}),s.length>0){let t=KB(s,i,[e||`_`,`patch`,String(o?.length||`0`)],r);o.push(...t)}if(a&&c.length>0)for(let e=0;e<c.length;e++){let{existingRoute:t,newRoute:n}=c[e],r=t,[a]=KB([n],i,[],{},!0);Object.assign(r,{element:a.element?a.element:r.element,errorElement:a.errorElement?a.errorElement:r.errorElement,hydrateFallbackElement:a.hydrateFallbackElement?a.hydrateFallbackElement:r.hydrateFallbackElement})}}function fH(e,t){return`id`in e&&`id`in t&&e.id===t.id?!0:e.index===t.index&&e.path===t.path&&e.caseSensitive===t.caseSensitive?(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:e.children?.every((e,n)=>t.children?.some(t=>fH(e,t)))??!1:!1}var pH=new WeakMap,mH=({key:e,route:t,manifest:n,mapRouteProperties:r})=>{let i=n[t.id];if(AB(i,`No route found in manifest`),!i.lazy||typeof i.lazy!=`object`)return;let a=i.lazy[e];if(!a)return;let o=pH.get(i);o||(o={},pH.set(i,o));let s=o[e];if(s)return s;let c=(async()=>{let t=HB(e),n=i[e]!==void 0&&e!==`hasErrorBoundary`;if(t)jB(!t,`Route property `+e+` is not a supported lazy route property. This property will be ignored.`),o[e]=Promise.resolve();else if(n)jB(!1,`Route "${i.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let t=await a();t!=null&&(Object.assign(i,{[e]:t}),Object.assign(i,r(i)))}typeof i.lazy==`object`&&(i.lazy[e]=void 0,Object.values(i.lazy).every(e=>e===void 0)&&(i.lazy=void 0))})();return o[e]=c,c},hH=new WeakMap;function gH(e,t,n,r,i){let a=n[e.id];if(AB(a,`No route found in manifest`),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy==`function`){let t=hH.get(a);if(t)return{lazyRoutePromise:t,lazyHandlerPromise:t};let n=(async()=>{AB(typeof e.lazy==`function`,`No lazy route function found`);let t=await e.lazy(),n={};for(let e in t){let r=t[e];if(r===void 0)continue;let i=WB(e),o=a[e]!==void 0&&e!==`hasErrorBoundary`;i?jB(!i,`Route property `+e+` is not a supported property to be returned from a lazy route function. This property will be ignored.`):o?jB(!o,`Route "${a.id}" has a static property "${e}" defined but its lazy function is also returning a value for this property. The lazy route property "${e}" will be ignored.`):n[e]=r}Object.assign(a,n),Object.assign(a,{...r(a),lazy:void 0})})();return hH.set(a,n),n.catch(()=>{}),{lazyRoutePromise:n,lazyHandlerPromise:n}}let o=Object.keys(e.lazy),s=[],c;for(let a of o){if(i&&i.includes(a))continue;let o=mH({key:a,route:e,manifest:n,mapRouteProperties:r});o&&(s.push(o),a===t&&(c=o))}let l=s.length>0?Promise.all(s).then(()=>{}):void 0;return l?.catch(()=>{}),c?.catch(()=>{}),{lazyRoutePromise:l,lazyHandlerPromise:c}}async function _H(e){let t=e.matches.filter(e=>e.shouldLoad),n={};return(await Promise.all(t.map(e=>e.resolve()))).forEach((e,r)=>{n[t[r].route.id]=e}),n}async function vH(e){return e.matches.some(e=>e.route.middleware)?yH(e,()=>_H(e)):_H(e)}function yH(e,t){return bH(e,t,e=>{if(tU(e))throw e;return e},qH,n);function n(t,n,r){if(r)return Promise.resolve(Object.assign(r.value,{[n]:{type:`error`,result:t}}));{let{matches:r}=e,i=BH(r,r[Math.min(Math.max(r.findIndex(e=>e.route.id===n),0),Math.max(r.findIndex(e=>e.shouldCallHandler()),0))].route.id).route.id;return Promise.resolve({[i]:{type:`error`,result:t}})}}}async function bH(e,t,n,r,i){let{matches:a,...o}=e;return await xH(o,a.flatMap(e=>e.route.middleware?e.route.middleware.map(t=>[e.route.id,t]):[]),t,n,r,i)}async function xH(e,t,n,r,i,a,o=0){let{request:s}=e;if(s.signal.aborted)throw s.signal.reason??Error(`Request aborted: ${s.method} ${s.url}`);let c=t[o];if(!c)return await n();let[l,u]=c,d,f=async()=>{if(d)throw Error("You may only call `next()` once per middleware");try{return d={value:await xH(e,t,n,r,i,a,o+1)},d.value}catch(e){return d={value:await a(e,l,d)},d.value}};try{let t=await u(e,f),n=t==null?void 0:r(t);return i(n)?n:d?n??d.value:(d={value:await f()},d.value)}catch(e){return await a(e,l,d)}}function SH(e,t,n,r,i){let a=mH({key:`middleware`,route:r.route,manifest:t,mapRouteProperties:e}),o=gH(r.route,rU(n.method)?`action`:`loader`,t,e,i);return{middleware:a,route:o.lazyRoutePromise,handler:o.lazyHandlerPromise}}function CH(e,t,n,r,i,a,o,s,c,l=null,u){let d=!1,f=SH(e,t,n,a,o);return{...a,_lazyPromises:f,shouldLoad:c,shouldRevalidateArgs:l,shouldCallHandler(e){return d=!0,l?typeof u==`boolean`?uH(a,{...l,defaultShouldRevalidate:u}):typeof e==`boolean`?uH(a,{...l,defaultShouldRevalidate:e}):uH(a,l):c},resolve(e){let{lazy:t,loader:o,middleware:l}=a.route,u=d||c||e&&!rU(n.method)&&(t||o),p=l&&l.length>0&&!o&&!t;return u&&(rU(n.method)||!p)?EH({request:n,path:r,unstable_pattern:i,match:a,lazyHandlerPromise:f?.handler,lazyRoutePromise:f?.route,handlerOverride:e,scopedContext:s}):Promise.resolve({type:`data`,result:void 0})}}}function wH(e,t,n,r,i,a,o,s,c=null){return i.map(l=>l.route.id===a.route.id?CH(e,t,n,r,kV(i),l,o,s,!0,c):{...l,shouldLoad:!1,shouldRevalidateArgs:c,shouldCallHandler:()=>!1,_lazyPromises:SH(e,t,n,l,o),resolve:()=>Promise.resolve({type:`data`,result:void 0})})}async function TH(e,t,n,r,i,a,o){r.some(e=>e._lazyPromises?.middleware)&&await Promise.all(r.map(e=>e._lazyPromises?.middleware));let s={request:t,unstable_url:NH(t,n),unstable_pattern:kV(r),params:r[0].params,context:a,matches:r},c=o?()=>{throw Error("You cannot call `runClientMiddleware()` from a static handler `dataStrategy`. Middleware is run outside of `dataStrategy` during SSR in order to bubble up the Response. You can enable middleware via the `respond` API in `query`/`queryRoute`")}:e=>{let t=s;return yH(t,()=>e({...t,fetcherKey:i,runClientMiddleware:()=>{throw Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))},l=await e({...s,fetcherKey:i,runClientMiddleware:c});try{await Promise.all(r.flatMap(e=>[e._lazyPromises?.handler,e._lazyPromises?.route]))}catch{}return l}async function EH({request:e,path:t,unstable_pattern:n,match:r,lazyHandlerPromise:i,lazyRoutePromise:a,handlerOverride:o,scopedContext:s}){let c,l,u=rU(e.method),d=u?`action`:`loader`,f=i=>{let a,c=new Promise((e,t)=>a=t);l=()=>a(),e.signal.addEventListener(`abort`,l);let u=a=>typeof i==`function`?i({request:e,unstable_url:NH(e,t),unstable_pattern:n,params:r.params,context:s},...a===void 0?[]:[a]):Promise.reject(Error(`You cannot call the handler for a route which defines a boolean "${d}" [routeId: ${r.route.id}]`)),f=(async()=>{try{return{type:`data`,result:await(o?o(e=>u(e)):u())}}catch(e){return{type:`error`,result:e}}})();return Promise.race([f,c])};try{let t=u?r.route.action:r.route.loader;if(i||a)if(t){let e,[n]=await Promise.all([f(t).catch(t=>{e=t}),i,a]);if(e!==void 0)throw e;c=n}else{await i;let t=u?r.route.action:r.route.loader;if(t)[c]=await Promise.all([f(t),a]);else if(d===`action`){let t=new URL(e.url),n=t.pathname+t.search;throw HH(405,{method:e.method,pathname:n,routeId:r.route.id})}else return{type:`data`,result:void 0}}else if(t)c=await f(t);else{let t=new URL(e.url);throw HH(404,{pathname:t.pathname+t.search})}}catch(e){return{type:`error`,result:e}}finally{l&&e.signal.removeEventListener(`abort`,l)}return c}async function DH(e){let t=e.headers.get(`Content-Type`);return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function OH(e){let{result:t,type:n}=e;if($H(t)){let e;try{e=await DH(t)}catch(e){return{type:`error`,error:e}}return n===`error`?{type:`error`,error:new DV(t.status,t.statusText,e),statusCode:t.status,headers:t.headers}:{type:`data`,data:e,statusCode:t.status,headers:t.headers}}return n===`error`?QH(t)?t.data instanceof Error?{type:`error`,error:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:KH(t),statusCode:OV(t)?t.status:void 0,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:t,statusCode:OV(t)?t.status:void 0}:QH(t)?{type:`data`,data:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`data`,data:t}}function kH(e,t,n,r,i){let a=e.headers.get(`Location`);if(AB(a,`Redirects returned/thrown from loaders/actions must have a Location header`),!gV(a)){let o=r.slice(0,r.findIndex(e=>e.route.id===n)+1);a=rH(new URL(t.url),o,i,a),e.headers.set(`Location`,a)}return e}var AH=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function jH(e,t,n,r){if(gV(e)){let r=e,i=r.startsWith(`//`)?new URL(t.protocol+r):new URL(r);if(AH.includes(i.protocol))throw Error(`Invalid redirect location`);let a=pV(i.pathname,n)!=null;if(i.origin===t.origin&&a)return i.pathname+i.search+i.hash}try{let t=r.createURL(e);if(AH.includes(t.protocol))throw Error(`Invalid redirect location`)}catch{}return e}function MH(e,t,n,r){let i=e.createURL(WH(t)).toString(),a={signal:n};if(r&&rU(r.formMethod)){let{formMethod:e,formEncType:t}=r;a.method=e.toUpperCase(),t===`application/json`?(a.headers=new Headers({"Content-Type":t}),a.body=JSON.stringify(r.json)):t===`text/plain`?a.body=r.text:t===`application/x-www-form-urlencoded`&&r.formData?a.body=PH(r.formData):a.body=r.formData}return new Request(i,a)}function NH(e,t){let n=new URL(e.url),r=typeof t==`string`?IB(t):t;if(n.pathname=r.pathname||`/`,r.search){let e=new URLSearchParams(r.search),t=e.getAll(`index`);e.delete(`index`);for(let n of t.filter(Boolean))e.append(`index`,n);n.search=e.size?`?${e.toString()}`:``}else n.search=``;return n.hash=r.hash||``,n}function PH(e){let t=new URLSearchParams;for(let[n,r]of e.entries())t.append(n,typeof r==`string`?r:r.name);return t}function FH(e){let t=new FormData;for(let[n,r]of e.entries())t.append(n,r);return t}function IH(e,t,n,r=!1,i=!1){let a={},o=null,s,c=!1,l={},u=n&&XH(n[1])?n[1].error:void 0;return e.forEach(n=>{if(!(n.route.id in t))return;let d=n.route.id,f=t[d];if(AB(!ZH(f),`Cannot handle redirect results in processLoaderData`),XH(f)){let t=f.error;if(u!==void 0&&(t=u,u=void 0),o||={},i)o[d]=t;else{let n=BH(e,d);o[n.route.id]??(o[n.route.id]=t)}r||(a[d]=eH),c||(c=!0,s=OV(f.error)?f.error.status:500),f.headers&&(l[d]=f.headers)}else a[d]=f.data,f.statusCode&&f.statusCode!==200&&!c&&(s=f.statusCode),f.headers&&(l[d]=f.headers)}),u!==void 0&&n&&(o={[n[0]]:u},n[2]&&(a[n[2]]=void 0)),{loaderData:a,errors:o,statusCode:s||200,loaderHeaders:l}}function LH(e,t,n,r,i,a){let{loaderData:o,errors:s}=IH(t,n,r);return i.filter(e=>!e.matches||e.matches.some(e=>e.shouldLoad)).forEach(t=>{let{key:n,match:r,controller:i}=t;if(i&&i.signal.aborted)return;let o=a[n];if(AB(o,`Did not find corresponding fetcher result`),XH(o)){let t=BH(e.matches,r?.route.id);s&&s[t.route.id]||(s={...s,[t.route.id]:o.error}),e.fetchers.delete(n)}else if(ZH(o))AB(!1,`Unhandled fetcher revalidation redirect`);else{let t=dU(o.data);e.fetchers.set(n,t)}}),{loaderData:o,errors:s}}function RH(e,t,n,r){let i=Object.entries(t).filter(([,e])=>e!==eH).reduce((e,[t,n])=>(e[t]=n,e),{});for(let a of n){let n=a.route.id;if(!t.hasOwnProperty(n)&&e.hasOwnProperty(n)&&a.route.loader&&(i[n]=e[n]),r&&r.hasOwnProperty(n))break}return i}function zH(e){return e?XH(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function BH(e,t){return(t?e.slice(0,e.findIndex(e=>e.route.id===t)+1):[...e]).reverse().find(e=>e.route.hasErrorBoundary===!0)||e[0]}function VH(e){let t=e.length===1?e[0]:e.find(e=>e.index||!e.path||e.path===`/`)||{id:`__shim-error-route__`};return{matches:[{params:{},pathname:``,pathnameBase:``,route:t}],route:t}}function HH(e,{pathname:t,routeId:n,method:r,type:i,message:a}={}){let o=`Unknown Server Error`,s=`Unknown @remix-run/router error`;return e===400?(o=`Bad Request`,r&&t&&n?s=`You made a ${r} request to "${t}" but did not provide a \`loader\` for route "${n}", so there is no way to handle the request.`:i===`invalid-body`&&(s=`Unable to encode submission body`)):e===403?(o=`Forbidden`,s=`Route "${n}" does not match URL "${t}"`):e===404?(o=`Not Found`,s=`No route matches URL "${t}"`):e===405&&(o=`Method Not Allowed`,r&&t&&n?s=`You made a ${r.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${n}", so there is no way to handle the request.`:r&&(s=`Invalid request method "${r.toUpperCase()}"`)),new DV(e||500,o,Error(s),!0)}function UH(e){let t=Object.entries(e);for(let e=t.length-1;e>=0;e--){let[n,r]=t[e];if(ZH(r))return{key:n,result:r}}}function WH(e){return FB({...typeof e==`string`?IB(e):e,hash:``})}function GH(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===``?t.hash!==``:e.hash===t.hash?!0:t.hash!==``}function KH(e){return new DV(e.init?.status??500,e.init?.statusText??`Internal Server Error`,e.data)}function qH(e){return typeof e==`object`&&!!e&&Object.entries(e).every(([e,t])=>typeof e==`string`&&JH(t))}function JH(e){return typeof e==`object`&&!!e&&`type`in e&&`result`in e&&(e.type===`data`||e.type===`error`)}function YH(e){return $H(e.result)&&qV.has(e.result.status)}function XH(e){return e.type===`error`}function ZH(e){return(e&&e.type)===`redirect`}function QH(e){return typeof e==`object`&&!!e&&`type`in e&&`data`in e&&`init`in e&&e.type===`DataWithResponseInit`}function $H(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.headers==`object`&&e.body!==void 0}function eU(e){return qV.has(e)}function tU(e){return $H(e)&&eU(e.status)&&e.headers.has(`Location`)}function nU(e){return KV.has(e.toUpperCase())}function rU(e){return WV.has(e.toUpperCase())}function iU(e){return new URLSearchParams(e).getAll(`index`).some(e=>e===``)}function aU(e,t){let n=typeof t==`string`?IB(t).search:t.search;if(e[e.length-1].route.index&&iU(n||``))return e[e.length-1];let r=bV(e);return r[r.length-1]}function oU(e){let{formMethod:t,formAction:n,formEncType:r,text:i,formData:a,json:o}=e;if(!(!t||!n||!r)){if(i!=null)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:void 0,text:i};if(a!=null)return{formMethod:t,formAction:n,formEncType:r,formData:a,json:void 0,text:void 0};if(o!==void 0)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:o,text:void 0}}}function sU(e,t){return t?{state:`loading`,location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:`loading`,location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function cU(e,t){return{state:`submitting`,location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function lU(e,t){return e?{state:`loading`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:`loading`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function uU(e,t){return{state:`submitting`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function dU(e){return{state:`idle`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function fU(e,t){try{let n=e.sessionStorage.getItem($V);if(n){let e=JSON.parse(n);for(let[n,r]of Object.entries(e||{}))r&&Array.isArray(r)&&t.set(n,new Set(r||[]))}}catch{}}function pU(e,t){if(t.size>0){let n={};for(let[e,r]of t)n[e]=[...r];try{e.sessionStorage.setItem($V,JSON.stringify(n))}catch(e){jB(!1,`Failed to save applied view transitions in sessionStorage (${e}).`)}}}function mU(){let e,t,n=new Promise((r,i)=>{e=async e=>{r(e);try{await n}catch{}},t=async e=>{i(e);try{await n}catch{}}});return{promise:n,resolve:e,reject:t}}var hU=b.createContext(null);hU.displayName=`DataRouter`;var gU=b.createContext(null);gU.displayName=`DataRouterState`;var _U=b.createContext(!1);function vU(){return b.useContext(_U)}var yU=b.createContext({isTransitioning:!1});yU.displayName=`ViewTransition`;var bU=b.createContext(new Map);bU.displayName=`Fetchers`;var xU=b.createContext(null);xU.displayName=`Await`;var SU=b.createContext(null);SU.displayName=`Navigation`;var CU=b.createContext(null);CU.displayName=`Location`;var wU=b.createContext({outlet:null,matches:[],isDataRoute:!1});wU.displayName=`Route`;var TU=b.createContext(null);TU.displayName=`RouteError`;var EU=`REACT_ROUTER_ERROR`,DU=`REDIRECT`,OU=`ROUTE_ERROR_RESPONSE`;function kU(e){if(e.startsWith(`${EU}:${DU}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function AU(e){if(e.startsWith(`${EU}:${OU}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new DV(t.status,t.statusText,t.data)}catch{}}function jU(e,{relative:t}={}){AB(MU(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:r}=b.useContext(SU),{hash:i,pathname:a,search:o}=VU(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:CV([n,a])),r.createHref({pathname:s,search:o,hash:i})}function MU(){return b.useContext(CU)!=null}function NU(){return AB(MU(),`useLocation() may be used only in the context of a <Router> component.`),b.useContext(CU).location}var PU=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function FU(e){b.useContext(SU).static||b.useLayoutEffect(e)}function IU(){let{isDataRoute:e}=b.useContext(wU);return e?oW():LU()}function LU(){AB(MU(),`useNavigate() may be used only in the context of a <Router> component.`);let e=b.useContext(hU),{basename:t,navigator:n}=b.useContext(SU),{matches:r}=b.useContext(wU),{pathname:i}=NU(),a=JSON.stringify(xV(r)),o=b.useRef(!1);return FU(()=>{o.current=!0}),b.useCallback((r,s={})=>{if(jB(o.current,PU),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=SV(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:CV([t,c.pathname])),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}var RU=b.createContext(null);function zU(e){let t=b.useContext(wU).outlet;return b.useMemo(()=>t&&b.createElement(RU.Provider,{value:e},t),[t,e])}function BU(){let{matches:e}=b.useContext(wU),t=e[e.length-1];return t?t.params:{}}function VU(e,{relative:t}={}){let{matches:n}=b.useContext(wU),{pathname:r}=NU(),i=JSON.stringify(xV(n));return b.useMemo(()=>SV(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function HU(e,t){return UU(e,t)}function UU(e,t,n){AB(MU(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:r}=b.useContext(SU),{matches:i}=b.useContext(wU),a=i[i.length-1],o=a?a.params:{},s=a?a.pathname:`/`,c=a?a.pathnameBase:`/`,l=a&&a.route;{let e=l&&l.path||``;cW(s,!l||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
218
218
|
|
|
219
|
-
Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let u=kU(),d;if(t){let e=typeof t==`string`?MB(t):t;EB(c===`/`||e.pathname?.startsWith(c),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),d=e}else d=u;let f=d.pathname||`/`,p=f;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);p=`/`+f.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let m=WB(e,{pathname:p});DB(l||m!=null,`No routes matched location "${d.pathname}${d.search}${d.hash}" `),DB(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,`Matched leaf route at location "${d.pathname}${d.search}${d.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let h=KU(m&&m.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:yV([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:yV([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&h?b.createElement(yU.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,unstable_mask:void 0,...d},navigationType:`POP`}},h):h}function BU(){let e=tW(),t=wV(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=b.createElement(b.Fragment,null,b.createElement(`p`,null,`💿 Hey developer 👋`),b.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,b.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,b.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),b.createElement(b.Fragment,null,b.createElement(`h2`,null,`Unexpected Application Error!`),b.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?b.createElement(`pre`,{style:i},n):null,o)}var VU=b.createElement(BU,null),HU=class extends b.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=EU(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:b.createElement(bU.Provider,{value:this.props.routeContext},b.createElement(xU.Provider,{value:e,children:this.props.component}));return this.context?b.createElement(WU,{error:e},t):t}};HU.contextType=pU;var UU=new WeakMap;function WU({children:e,error:t}){let{basename:n}=b.useContext(vU);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=TU(t.digest);if(e){let r=UU.get(t);if(r)throw r;let i=DV(e.location,n);if(EV&&!UU.get(t))if(i.isExternal||e.reloadDocument)window.location.href=i.absoluteURL||i.to;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(i.to,{replace:e.replace}));throw UU.set(t,n),n}return b.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${i.absoluteURL||i.to}`})}}return e}function GU({routeContext:e,match:t,children:n}){let r=b.useContext(dU);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),b.createElement(bU.Provider,{value:e},n)}function KU(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);EB(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(s=e),t.route.id){let{loaderData:e,errors:a}=r,c=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!a||a[t.route.id]===void 0);if(t.route.lazy||c){n.isStatic&&(o=!0),i=s>=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,l=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},unstable_pattern:TV(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let u,d=!1,f=null,p=null;r&&(u=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||VU,o&&(s<0&&c===0?(iW(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=u?f:d?p:n.route.Component?b.createElement(n.route.Component,null):n.route.element?n.route.element:e,b.createElement(GU,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?b.createElement(HU,{location:r.location,revalidation:r.revalidation,component:f,error:u,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:l}):h()},null)}function qU(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function JU(e){let t=b.useContext(dU);return EB(t,qU(e)),t}function YU(e){let t=b.useContext(fU);return EB(t,qU(e)),t}function XU(e){let t=b.useContext(bU);return EB(t,qU(e)),t}function ZU(e){let t=XU(e),n=t.matches[t.matches.length-1];return EB(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function QU(){return ZU(`useRouteId`)}function $U(){return YU(`useNavigation`).navigation}function eW(){let{matches:e,loaderData:t}=YU(`useMatches`);return b.useMemo(()=>e.map(e=>KB(e,t)),[e,t])}function tW(){let e=b.useContext(xU),t=YU(`useRouteError`),n=ZU(`useRouteError`);return e===void 0?t.errors?.[n]:e}function nW(){let{router:e}=JU(`useNavigate`),t=ZU(`useNavigate`),n=b.useRef(!1);return jU(()=>{n.current=!0}),b.useCallback(async(r,i={})=>{DB(n.current,AU),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var rW={};function iW(e,t,n){!t&&!rW[e]&&(rW[e]=!0,DB(!1,n))}var aW={};function oW(e,t){!e&&!aW[t]&&(aW[t]=!0,console.warn(t))}var sW=b.useOptimistic,cW=()=>void 0;function lW(e){return sW?sW(e):[e,cW]}function uW(e){let t={hasErrorBoundary:e.hasErrorBoundary||e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&(e.element&&DB(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(t,{element:b.createElement(e.Component),Component:void 0})),e.HydrateFallback&&(e.hydrateFallbackElement&&DB(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(t,{hydrateFallbackElement:b.createElement(e.HydrateFallback),HydrateFallback:void 0})),e.ErrorBoundary&&(e.errorElement&&DB(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(t,{errorElement:b.createElement(e.ErrorBoundary),ErrorBoundary:void 0})),t}var dW=[`HydrateFallback`,`hydrateFallbackElement`],fW=class{constructor(){this.status=`pending`,this.promise=new Promise((e,t)=>{this.resolve=t=>{this.status===`pending`&&(this.status=`resolved`,e(t))},this.reject=e=>{this.status===`pending`&&(this.status=`rejected`,t(e))}})}};function pW({router:e,flushSync:t,onError:n,unstable_useTransitions:r}){r=mU()||r;let[i,a]=b.useState(e.state),[o,s]=lW(i),[c,l]=b.useState(),[u,d]=b.useState({isTransitioning:!1}),[f,p]=b.useState(),[m,h]=b.useState(),[g,_]=b.useState(),v=b.useRef(new Map),y=b.useCallback((i,{deletedFetchers:o,newErrors:c,flushSync:u,viewTransitionOpts:g})=>{c&&n&&Object.values(c).forEach(e=>n(e,{location:i.location,params:i.matches[0]?.params??{},unstable_pattern:TV(i.matches)})),i.fetchers.forEach((e,t)=>{e.data!==void 0&&v.current.set(t,e.data)}),o.forEach(e=>v.current.delete(e)),oW(u===!1||t!=null,'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let y=e.window!=null&&e.window.document!=null&&typeof e.window.document.startViewTransition==`function`;if(oW(g==null||y,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!g||!y){t&&u?t(()=>a(i)):r===!1?a(i):b.startTransition(()=>{r===!0&&s(e=>mW(e,i)),a(i)});return}if(t&&u){t(()=>{m&&(f?.resolve(),m.skipTransition()),d({isTransitioning:!0,flushSync:!0,currentLocation:g.currentLocation,nextLocation:g.nextLocation})});let n=e.window.document.startViewTransition(()=>{t(()=>a(i))});n.finished.finally(()=>{t(()=>{p(void 0),h(void 0),l(void 0),d({isTransitioning:!1})})}),t(()=>h(n));return}m?(f?.resolve(),m.skipTransition(),_({state:i,currentLocation:g.currentLocation,nextLocation:g.nextLocation})):(l(i),d({isTransitioning:!0,flushSync:!1,currentLocation:g.currentLocation,nextLocation:g.nextLocation}))},[e.window,t,m,f,r,s,n]);b.useLayoutEffect(()=>e.subscribe(y),[e,y]),b.useEffect(()=>{u.isTransitioning&&!u.flushSync&&p(new fW)},[u]),b.useEffect(()=>{if(f&&c&&e.window){let t=c,n=f.promise,i=e.window.document.startViewTransition(async()=>{r===!1?a(t):b.startTransition(()=>{r===!0&&s(e=>mW(e,t)),a(t)}),await n});i.finished.finally(()=>{p(void 0),h(void 0),l(void 0),d({isTransitioning:!1})}),h(i)}},[c,f,e.window,r,s]),b.useEffect(()=>{f&&c&&o.location.key===c.location.key&&f.resolve()},[f,m,o.location,c]),b.useEffect(()=>{!u.isTransitioning&&g&&(l(g.state),d({isTransitioning:!0,flushSync:!1,currentLocation:g.currentLocation,nextLocation:g.nextLocation}),_(void 0))},[u.isTransitioning,g]);let x=b.useMemo(()=>({createHref:e.createHref,encodeLocation:e.encodeLocation,go:t=>e.navigate(t),push:(t,n,r)=>e.navigate(t,{state:n,preventScrollReset:r?.preventScrollReset}),replace:(t,n,r)=>e.navigate(t,{replace:!0,state:n,preventScrollReset:r?.preventScrollReset})}),[e]),S=e.basename||`/`,C=b.useMemo(()=>({router:e,navigator:x,static:!1,basename:S,onError:n}),[e,x,S,n]);return b.createElement(b.Fragment,null,b.createElement(dU.Provider,{value:C},b.createElement(fU.Provider,{value:o},b.createElement(gU.Provider,{value:v.current},b.createElement(hU.Provider,{value:u},b.createElement(bW,{basename:S,location:o.location,navigationType:o.historyAction,navigator:x,unstable_useTransitions:r},b.createElement(hW,{routes:e.routes,future:e.future,state:o,isStatic:!1,onError:n})))))),null)}function mW(e,t){return{...e,navigation:t.navigation.state===`idle`?e.navigation:t.navigation,revalidation:t.revalidation===`idle`?e.revalidation:t.revalidation,actionData:t.navigation.state===`submitting`?e.actionData:t.actionData,fetchers:t.fetchers}}var hW=b.memo(gW);function gW({routes:e,future:t,state:n,isStatic:r,onError:i}){return zU(e,void 0,{state:n,isStatic:r,onError:i,future:t})}function _W({to:e,replace:t,state:n,relative:r}){EB(OU(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:i}=b.useContext(vU);DB(!i,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:a}=b.useContext(bU),{pathname:o}=kU(),s=MU(),c=vV(e,_V(a),o,r===`path`),l=JSON.stringify(c);return b.useEffect(()=>{s(JSON.parse(l),{replace:t,state:n,relative:r})},[s,l,r,t,n]),null}function vW(e){return FU(e.context)}function yW(e){EB(!1,`A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.`)}function bW({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,unstable_useTransitions:o}){EB(!OU(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=b.useMemo(()=>({basename:s,navigator:i,static:a,unstable_useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=MB(n));let{pathname:l=`/`,search:u=``,hash:d=``,state:f=null,key:p=`default`,unstable_mask:m}=n,h=b.useMemo(()=>{let e=lV(l,s);return e==null?null:{location:{pathname:e,search:u,hash:d,state:f,key:p,unstable_mask:m},navigationType:r}},[s,l,u,d,f,p,r,m]);return DB(h!=null,`<Router basename="${s}"> is not able to match the URL "${l}${u}${d}" because it does not start with the basename, so the <Router> won't render anything.`),h==null?null:b.createElement(vU.Provider,{value:c},b.createElement(yU.Provider,{children:t,value:h}))}function xW({children:e,location:t}){return RU(SW(e),t)}b.Component;function SW(e,t=[]){let n=[];return b.Children.forEach(e,(e,r)=>{if(!b.isValidElement(e))return;let i=[...t,r];if(e.type===b.Fragment){n.push.apply(n,SW(e.props.children,i));return}EB(e.type===yW,`[${typeof e.type==`string`?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),EB(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=SW(e.props.children,i)),n.push(a)}),n}var CW=`get`,wW=`application/x-www-form-urlencoded`;function TW(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function EW(e){return TW(e)&&e.tagName.toLowerCase()===`button`}function DW(e){return TW(e)&&e.tagName.toLowerCase()===`form`}function OW(e){return TW(e)&&e.tagName.toLowerCase()===`input`}function kW(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function AW(e,t){return e.button===0&&(!t||t===`_self`)&&!kW(e)}function jW(e=``){return new URLSearchParams(typeof e==`string`||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(e=>[n,e]):[[n,r]])},[]))}function MW(e,t){let n=jW(e);return t&&t.forEach((e,r)=>{n.has(r)||t.getAll(r).forEach(e=>{n.append(r,e)})}),n}var NW=null;function PW(){if(NW===null)try{new FormData(document.createElement(`form`),0),NW=!1}catch{NW=!0}return NW}var FW=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function IW(e){return e!=null&&!FW.has(e)?(DB(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${wW}"`),null):e}function LW(e,t){let n,r,i,a,o;if(DW(e)){let o=e.getAttribute(`action`);r=o?lV(o,t):null,n=e.getAttribute(`method`)||CW,i=IW(e.getAttribute(`enctype`))||wW,a=new FormData(e)}else if(EW(e)||OW(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?lV(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||CW,i=IW(e.getAttribute(`formenctype`))||IW(o.getAttribute(`enctype`))||wW,a=new FormData(o,e),!PW()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(TW(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=CW,r=null,i=wW,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);var RW={"&":`\\u0026`,">":`\\u003e`,"<":`\\u003c`,"\u2028":`\\u2028`,"\u2029":`\\u2029`},zW=/[&><\u2028\u2029]/g;function BW(e){return e.replace(zW,e=>RW[e])}function VW(e,t){if(e===!1||e==null)throw Error(t)}function HW(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return n?i.pathname.endsWith(`/`)?i.pathname=`${i.pathname}_.${r}`:i.pathname=`${i.pathname}.${r}`:i.pathname===`/`?i.pathname=`_root.${r}`:t&&lV(i.pathname,t)===`/`?i.pathname=`${t.replace(/\/$/,``)}/_root.${r}`:i.pathname=`${i.pathname.replace(/\/$/,``)}.${r}`,i}async function UW(e,t){if(e.id in t)return t[e.id];try{let n=await vB(()=>import(e.module),[]);return t[e.id]=n,n}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function WW(e){return e!=null&&typeof e.page==`string`}function GW(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function KW(e,t,n){return ZW((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await UW(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(GW).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function qW(e,t,n,r,i,a){let o=(e,t)=>n[t]?e.route.id!==n[t].route.id:!0,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function JW(e,t,{includeHydrateFallback:n}={}){return YW(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function YW(e){return[...new Set(e)]}function XW(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function ZW(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!WW(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify(XW(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function QW(){let e=b.useContext(dU);return VW(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function $W(){let e=b.useContext(fU);return VW(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}var eG=b.createContext(void 0);eG.displayName=`FrameworkContext`;function tG(){let e=b.useContext(eG);return VW(e,`You must render this element inside a <HydratedRouter> element`),e}function nG(e,t){let n=b.useContext(eG),[r,i]=b.useState(!1),[a,o]=b.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:l,onMouseLeave:u,onTouchStart:d}=t,f=b.useRef(null);b.useEffect(()=>{if(e===`render`&&o(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{o(e.isIntersecting)})},{threshold:.5});return f.current&&e.observe(f.current),()=>{e.disconnect()}}},[e]),b.useEffect(()=>{if(r){let e=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(e)}}},[r]);let p=()=>{i(!0)},m=()=>{i(!1),o(!1)};return n?e===`intent`?[a,f,{onFocus:rG(s,p),onBlur:rG(c,m),onMouseEnter:rG(l,p),onMouseLeave:rG(u,m),onTouchStart:rG(d,p)}]:[a,f,{}]:[!1,f,{}]}function rG(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function iG({page:e,...t}){let{router:n}=QW(),r=b.useMemo(()=>WB(n.routes,e,n.basename),[n.routes,e,n.basename]);return r?b.createElement(oG,{page:e,matches:r,...t}):null}function aG(e){let{manifest:t,routeModules:n}=tG(),[r,i]=b.useState([]);return b.useEffect(()=>{let r=!1;return KW(e,t,n).then(e=>{r||i(e)}),()=>{r=!0}},[e,t,n]),r}function oG({page:e,matches:t,...n}){let r=kU(),{future:i,manifest:a,routeModules:o}=tG(),{basename:s}=QW(),{loaderData:c,matches:l}=$W(),u=b.useMemo(()=>qW(e,t,l,a,r,`data`),[e,t,l,a,r]),d=b.useMemo(()=>qW(e,t,l,a,r,`assets`),[e,t,l,a,r]),f=b.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=new Set,l=!1;if(t.forEach(e=>{let t=a.routes[e.route.id];!t||!t.hasLoader||(!u.some(t=>t.route.id===e.route.id)&&e.route.id in c&&o[e.route.id]?.shouldRevalidate||t.hasClientLoader?l=!0:n.add(e.route.id))}),n.size===0)return[];let d=HW(e,s,i.unstable_trailingSlashAwareDataRequests,`data`);return l&&n.size>0&&d.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[d.pathname+d.search]},[s,i.unstable_trailingSlashAwareDataRequests,c,r,a,u,t,e,o]),p=b.useMemo(()=>JW(d,a),[d,a]),m=aG(d);return b.createElement(b.Fragment,null,f.map(e=>b.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),p.map(e=>b.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),m.map(({key:e,link:t})=>b.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function sG(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}b.Component;var cG=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{cG&&(window.__reactRouterVersion=`7.13.2`)}catch{}function lG(e,t){return ZV({basename:t?.basename,getContext:t?.getContext,future:t?.future,history:TB({window:t?.window}),hydrationData:t?.hydrationData||uG(),routes:e,mapRouteProperties:uW,hydrationRouteProperties:dW,dataStrategy:t?.dataStrategy,patchRoutesOnNavigation:t?.patchRoutesOnNavigation,window:t?.window,unstable_instrumentations:t?.unstable_instrumentations}).initialize()}function uG(){let e=window?.__staticRouterHydrationData;return e&&e.errors&&(e={...e,errors:dG(e.errors)}),e}function dG(e){if(!e)return null;let t=Object.entries(e),n={};for(let[e,r]of t)if(r&&r.__type===`RouteErrorResponse`)n[e]=new CV(r.status,r.statusText,r.data,r.internal===!0);else if(r&&r.__type===`Error`){if(r.__subType){let t=window[r.__subType];if(typeof t==`function`)try{let i=new t(r.message);i.stack=``,n[e]=i}catch{}}if(n[e]==null){let t=Error(r.message);t.stack=``,n[e]=t}}else n[e]=r;return n}function fG({basename:e,children:t,history:n,unstable_useTransitions:r}){let[i,a]=b.useState({action:n.action,location:n.location}),o=b.useCallback(e=>{r===!1?a(e):b.startTransition(()=>a(e))},[r]);return b.useLayoutEffect(()=>n.listen(o),[n,o]),b.createElement(bW,{basename:e,children:t,location:i.location,navigationType:i.action,navigator:n,unstable_useTransitions:r})}fG.displayName=`unstable_HistoryRouter`;var pG=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,mG=b.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:r,reloadDocument:i,replace:a,unstable_mask:o,state:s,target:c,to:l,preventScrollReset:u,viewTransition:d,unstable_defaultShouldRevalidate:f,...p},m){let{basename:h,navigator:g,unstable_useTransitions:_}=b.useContext(vU),v=typeof l==`string`&&pG.test(l),y=DV(l,h);l=y.to;let x=DU(l,{relative:r}),S=kU(),C=null;if(o){let e=vV(o,[],S.unstable_mask?S.unstable_mask.pathname:`/`,!0);h!==`/`&&(e.pathname=e.pathname===`/`?h:yV([h,e.pathname])),C=g.createHref(e)}let[w,T,E]=nG(n,p),D=xG(l,{replace:a,unstable_mask:o,state:s,target:c,preventScrollReset:u,relative:r,viewTransition:d,unstable_defaultShouldRevalidate:f,unstable_useTransitions:_});function O(t){e&&e(t),t.defaultPrevented||D(t)}let k=!(y.isExternal||i),A=b.createElement(`a`,{...p,...E,href:(k?C:void 0)||y.absoluteURL||x,onClick:k?O:e,ref:sG(m,T),target:c,"data-discover":!v&&t===`render`?`true`:void 0});return w&&!v?b.createElement(b.Fragment,null,A,b.createElement(iG,{page:x})):A});mG.displayName=`Link`;var hG=b.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:a,viewTransition:o,children:s,...c},l){let u=LU(a,{relative:c.relative}),d=kU(),f=b.useContext(fU),{navigator:p,basename:m}=b.useContext(vU),h=f!=null&&MG(u)&&o===!0,g=p.encodeLocation?p.encodeLocation(u).pathname:u.pathname,_=d.pathname,v=f&&f.navigation&&f.navigation.location?f.navigation.location.pathname:null;t||(_=_.toLowerCase(),v=v?v.toLowerCase():null,g=g.toLowerCase()),v&&m&&(v=lV(v,m)||v);let y=g!==`/`&&g.endsWith(`/`)?g.length-1:g.length,x=_===g||!r&&_.startsWith(g)&&_.charAt(y)===`/`,S=v!=null&&(v===g||!r&&v.startsWith(g)&&v.charAt(g.length)===`/`),C={isActive:x,isPending:S,isTransitioning:h},w=x?e:void 0,T;T=typeof n==`function`?n(C):[n,x?`active`:null,S?`pending`:null,h?`transitioning`:null].filter(Boolean).join(` `);let E=typeof i==`function`?i(C):i;return b.createElement(mG,{...c,"aria-current":w,className:T,ref:l,style:E,to:a,viewTransition:o},typeof s==`function`?s(C):s)});hG.displayName=`NavLink`;var gG=b.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=CW,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,unstable_defaultShouldRevalidate:f,...p},m)=>{let{unstable_useTransitions:h}=b.useContext(vU),g=TG(),_=EG(s,{relative:l}),v=o.toLowerCase()===`get`?`get`:`post`,y=typeof s==`string`&&pG.test(s);return b.createElement(`form`,{ref:m,method:v,action:_,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>g(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,unstable_defaultShouldRevalidate:f});h&&n!==!1?b.startTransition(()=>p()):p()},...p,"data-discover":!y&&e===`render`?`true`:void 0})});gG.displayName=`Form`;function _G({getKey:e,storageKey:t,...n}){let r=b.useContext(eG),{basename:i}=b.useContext(vU),a=kU(),o=eW();AG({getKey:e,storageKey:t});let s=b.useMemo(()=>{if(!r||!e)return null;let t=kG(a,o,i,e);return t===a.key?null:t},[]);if(!r||r.isSpaMode)return null;let c=((e,t)=>{if(!window.history.state||!window.history.state.key){let e=Math.random().toString(32).slice(2);window.history.replaceState({key:e},``)}try{let n=JSON.parse(sessionStorage.getItem(e)||`{}`)[t||window.history.state.key];typeof n==`number`&&window.scrollTo(0,n)}catch(t){console.error(t),sessionStorage.removeItem(e)}}).toString();return b.createElement(`script`,{...n,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${c})(${BW(JSON.stringify(t||DG))}, ${BW(JSON.stringify(s))})`}})}_G.displayName=`ScrollRestoration`;function vG(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function yG(e){let t=b.useContext(dU);return EB(t,vG(e)),t}function bG(e){let t=b.useContext(fU);return EB(t,vG(e)),t}function xG(e,{target:t,replace:n,unstable_mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,unstable_defaultShouldRevalidate:c,unstable_useTransitions:l}={}){let u=MU(),d=kU(),f=LU(e,{relative:o});return b.useCallback(p=>{if(AW(p,t)){p.preventDefault();let t=n===void 0?jB(d)===jB(f):n,m=()=>u(e,{replace:t,unstable_mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,unstable_defaultShouldRevalidate:c});l?b.startTransition(()=>m()):m()}},[d,u,f,n,r,i,t,e,a,o,s,c,l])}function SG(e){DB(typeof URLSearchParams<`u`,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=b.useRef(jW(e)),n=b.useRef(!1),r=kU(),i=b.useMemo(()=>MW(r.search,n.current?null:t.current),[r.search]),a=MU();return[i,b.useCallback((e,t)=>{let r=jW(typeof e==`function`?e(new URLSearchParams(i)):e);n.current=!0,a(`?`+r,t)},[a,i])]}var CG=0,wG=()=>`__${String(++CG)}__`;function TG(){let{router:e}=yG(`useSubmit`),{basename:t}=b.useContext(vU),n=QU(),r=e.fetch,i=e.navigate;return b.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=LW(e,t);a.navigate===!1?await r(a.fetcherKey||wG(),n,a.action||o,{unstable_defaultShouldRevalidate:a.unstable_defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync}):await i(a.action||o,{unstable_defaultShouldRevalidate:a.unstable_defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function EG(e,{relative:t}={}){let{basename:n}=b.useContext(vU),r=b.useContext(bU);EB(r,`useFormAction must be used inside a RouteContext`);let[i]=r.matches.slice(-1),a={...LU(e||`.`,{relative:t})},o=kU();if(e==null){a.search=o.search;let e=new URLSearchParams(a.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();a.search=n?`?${n}`:``}}return(!e||e===`.`)&&i.route.index&&(a.search=a.search?a.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(a.pathname=a.pathname===`/`?n:yV([n,a.pathname])),jB(a)}var DG=`react-router-scroll-positions`,OG={};function kG(e,t,n,r){let i=null;return r&&(i=r(n===`/`?e:{...e,pathname:lV(e.pathname,n)||e.pathname},t)),i??=e.key,i}function AG({getKey:e,storageKey:t}={}){let{router:n}=yG(`useScrollRestoration`),{restoreScrollPosition:r,preventScrollReset:i}=bG(`useScrollRestoration`),{basename:a}=b.useContext(vU),o=kU(),s=eW(),c=$U();b.useEffect(()=>(window.history.scrollRestoration=`manual`,()=>{window.history.scrollRestoration=`auto`}),[]),jG(b.useCallback(()=>{if(c.state===`idle`){let t=kG(o,s,a,e);OG[t]=window.scrollY}try{sessionStorage.setItem(t||DG,JSON.stringify(OG))}catch(e){DB(!1,`Failed to save scroll positions in sessionStorage, <ScrollRestoration /> will not work properly (${e}).`)}window.history.scrollRestoration=`auto`},[c.state,e,a,o,s,t])),typeof document<`u`&&(b.useLayoutEffect(()=>{try{let e=sessionStorage.getItem(t||DG);e&&(OG=JSON.parse(e))}catch{}},[t]),b.useLayoutEffect(()=>{let t=n?.enableScrollRestoration(OG,()=>window.scrollY,e?(t,n)=>kG(t,n,a,e):void 0);return()=>t&&t()},[n,a,e]),b.useLayoutEffect(()=>{if(r!==!1){if(typeof r==`number`){window.scrollTo(0,r);return}try{if(o.hash){let e=document.getElementById(decodeURIComponent(o.hash.slice(1)));if(e){e.scrollIntoView();return}}}catch{DB(!1,`"${o.hash.slice(1)}" is not a decodable element ID. The view will not scroll to it.`)}i!==!0&&window.scrollTo(0,0)}},[o,r,i]))}function jG(e,t){let{capture:n}=t||{};b.useEffect(()=>{let t=n==null?void 0:{capture:n};return window.addEventListener(`pagehide`,e,t),()=>{window.removeEventListener(`pagehide`,e,t)}},[e,n])}function MG(e,{relative:t}={}){let n=b.useContext(hU);EB(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=yG(`useViewTransitionState`),i=LU(e,{relative:t});if(!n.isTransitioning)return!1;let a=lV(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=lV(n.nextLocation.pathname,r)||n.nextLocation.pathname;return oV(i.pathname,o)!=null||oV(i.pathname,a)!=null}var NG=mB();function PG(e){if(e.resourceType===`Patient`)return e;if(e.resourceType===`DiagnosticReport`||e.resourceType===`Encounter`||e.resourceType===`Observation`||e.resourceType===`ServiceRequest`)return e.subject}function FG(e){if(e.resourceType===`Specimen`)return e;if(e.resourceType===`Observation`)return e.specimen;if(e.resourceType===`DiagnosticReport`||e.resourceType===`ServiceRequest`)return e.specimen?.[0]}function IG(e){return KS(e.getActiveLogin()?.project)}function LG(e){let t=IG(Q()),n=MU(),[r,i]=(0,b.useState)({resourceType:`ProjectMembership`,filters:[{code:`project`,operator:Z.EQUALS,value:`Project/`+t},{code:`profile-type`,operator:Z.EQUALS,value:e.resourceType??`Patient,Practitioner,RelatedPerson`}],fields:e.fields,count:100});return(0,L.jsx)(kR,{search:r,onClick:e=>n(`/ProjectMembership/${e.resource.id}`),onChange:e=>i(e.definition),hideFilters:!0,hideToolbar:!0})}function RG(){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`ProjectMemberships for Bots`}),(0,L.jsx)(LG,{resourceType:`Bot`,fields:[`user`,`profile`,`accessPolicy`,`userConfiguration`,`active`,`admin`]}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(bj,{to:`/admin/bots/new`,children:`Create new bot`})})]})}function zG(){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`ProjectMemberships for ClientApplications`}),(0,L.jsx)(LG,{resourceType:`ClientApplication`,fields:[`user`,`profile`,`accessPolicy`,`userConfiguration`,`active`,`admin`]}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(bj,{to:`/admin/clients/new`,children:`Create new client`})})]})}function BG(e){return(0,L.jsx)(wF,{resourceType:`AccessPolicy`,name:e.name,defaultValue:e.defaultValue,placeholder:`Access Policy`,onChange:t=>{Ew(t)?e.onChange(WS(t)):e.onChange(void 0)}})}function VG(){let e=Q(),t=IG(e),[n,r]=(0,b.useState)(``),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(void 0);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Create new Bot`}),(0,L.jsxs)(UM,{onSubmit:()=>{let r={name:n,description:i,accessPolicy:o};e.post(`admin/projects/`+t+`/bot`,r).then(t=>{e.invalidateSearches(`Bot`),e.invalidateSearches(`ProjectMembership`),d(t),Y({color:`green`,message:`Bot created`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1}),l(Ix(e))})},children:[!u&&(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Name`,htmlFor:`name`,outcome:c,children:(0,L.jsx)(ab,{id:`name`,name:`name`,required:!0,autoFocus:!0,onChange:e=>r(e.currentTarget.value),error:zN(c,`name`)})}),(0,L.jsx)(XP,{title:`Description`,htmlFor:`description`,outcome:c,children:(0,L.jsx)(ab,{id:`description`,name:`description`,onChange:e=>a(e.currentTarget.value),error:zN(c,`description`)})}),(0,L.jsx)(XP,{title:`Access Policy`,htmlFor:`accessPolicy`,outcome:c,children:(0,L.jsx)(BG,{name:`accessPolicy`,onChange:s})}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{type:`submit`,children:`Create Bot`})})]}),u&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(U,{children:`Bot created`}),(0,L.jsxs)(vh,{children:[(0,L.jsx)(vh.Item,{children:(0,L.jsx)(bj,{to:u,children:`Go to new bot`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(bj,{to:`/admin/bots`,children:`Back to bots list`})})]})]})]})]})}function HG(){let e=Q(),t=IG(e),[n,r]=(0,b.useState)(``),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(``),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(),[f,p]=(0,b.useState)(void 0);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Create new Client`}),(0,L.jsxs)(UM,{onSubmit:()=>{let r={name:n,description:i,redirectUri:o,accessPolicy:c};e.post(`admin/projects/`+t+`/client`,r).then(t=>{e.invalidateSearches(`ClientApplication`),e.invalidateSearches(`ProjectMembership`),p(t),Y({color:`green`,message:`Client created`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1}),d(Ix(e))})},children:[!f&&(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Name`,htmlFor:`name`,outcome:u,children:(0,L.jsx)(ab,{id:`name`,name:`name`,required:!0,autoFocus:!0,onChange:e=>r(e.currentTarget.value),error:zN(u,`name`)})}),(0,L.jsx)(XP,{title:`Description`,htmlFor:`description`,outcome:u,children:(0,L.jsx)(ab,{id:`description`,name:`description`,onChange:e=>a(e.currentTarget.value),error:zN(u,`description`)})}),(0,L.jsx)(XP,{title:`Redirect URI`,htmlFor:`redirectUri`,outcome:u,children:(0,L.jsx)(ab,{id:`redirectUri`,name:`redirectUri`,onChange:e=>s(e.currentTarget.value),error:zN(u,`redirectUri`)})}),(0,L.jsx)(XP,{title:`Access Policy`,htmlFor:`accessPolicy`,outcome:u,children:(0,L.jsx)(BG,{name:`accessPolicy`,onChange:l})}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{type:`submit`,children:`Create Client`})})]}),f&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(U,{children:`Client created`}),(0,L.jsxs)(vh,{children:[(0,L.jsx)(vh.Item,{children:(0,L.jsx)(bj,{to:f,children:`Go to new client`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(bj,{to:`/admin/clients`,children:`Back to clients list`})})]})]})]})]})}var UG=1e-10;function WG(e,t){let n=0,r=Math.exp(-t);for(let i=0;i<=e;i++)i>0&&(r*=t/i),n+=r;return n}function GG(e,t,n=UG){let r=0,i=Math.max(t+1,1);for(;WG(t,i)>e;)i*=2;for(;i-r>n;){let n=(r+i)/2;WG(t,n)>e?r=n:i=n}return i}function KG(e,t,n,r){let i=e*300,a=9*t*i/(e*10*1e3/7),o=Math.ceil(a),s=o/i,c=Math.max(r??0,s),l=r?c*i:o,u=l,d=WG(l-1,u),f=Math.log(1-n)/Math.log(d);return{rowsSampled:i,cutoffFrequencyExact:a,cutoffFrequency:o,minimumSelectivity:s,targetSelectivity:c,targetLambda:u,targetPoissonCdf:d,targetM:f,results:[{name:`Floor`,result:qG(Math.floor(f),n,l,i)},{name:`Ceiling`,result:qG(Math.ceil(f),n,l,i)}]}}function qG(e,t,n,r){let i=(1-t)**(1/e),a=GG(i,n-1);return{m:e,poissonCdf:i,lambda:a,f:a/r}}function JG(e,t=`auto`,n=6){return Number.isFinite(e)?t===`scientific`?e.toExponential(n):t===`fixed`?e.toFixed(n):Math.abs(e)<1e-4&&e!==0?e.toExponential(n):Math.abs(e-Math.round(e))<1e-10?Math.round(e).toString():e.toPrecision(8):String(e)}function YG({label:e,value:t,format:n=`auto`,decimals:r=6}){return(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:8,children:(0,L.jsx)(U,{size:`sm`,children:e})}),(0,L.jsx)(wm.Col,{span:4,children:(0,L.jsx)(U,{size:`sm`,ff:`monospace`,ta:`right`,children:JG(t,n,r)})})]})}function XG({title:e,m:t,poissonCdf:n,lambda:r,f:i}){return(0,L.jsxs)(vl,{withBorder:!0,p:`md`,children:[(0,L.jsx)(J,{order:4,mb:`sm`,children:e}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(YG,{label:`M (padding multiplier)`,value:t}),(0,L.jsx)(YG,{label:`Poisson CDF`,value:n}),(0,L.jsx)(YG,{label:`Lambda`,value:r}),(0,L.jsx)(YG,{label:`F (selectivity)`,value:i,format:`scientific`})]})]})}function ZG(){let[e,t]=(0,b.useState)(1e3),[n,r]=(0,b.useState)(3),[i,a]=(0,b.useState)(.999999),[o,s]=(0,b.useState)(``),c=(0,b.useMemo)(()=>{let t=typeof e==`number`?e:void 0,r=typeof n==`number`?n:void 0,a=typeof i==`number`?i:void 0,s=typeof o==`number`?o:void 0;if(!(t===void 0||r===void 0||a===void 0))return KG(t,r,a,s)},[e,n,i,o]);return(0,L.jsxs)(K,{gap:`lg`,children:[(0,L.jsxs)(vl,{withBorder:!0,p:`md`,children:[(0,L.jsx)(J,{order:4,mb:`md`,children:`Inputs`}),(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Statistics Target`,value:e,onChange:t,min:100,max:1e4,step:100})}),(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Elements Per Row`,value:n,onChange:r,min:1,max:1e3,step:1})}),(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Confidence`,value:i,onChange:a,min:0,max:1,step:1e-6,decimalScale:10})}),(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Target Selectivity (optional)`,description:`Overrides minimum selectivity`,value:o,onChange:s,min:0,max:1,step:1e-5,decimalScale:10,placeholder:c?JG(c.minimumSelectivity,`scientific`):``})})]})]}),c&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{withBorder:!0,p:`md`,children:[(0,L.jsx)(J,{order:4,mb:`sm`,children:`Intermediate Values`}),(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:{base:12,md:6},children:(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(YG,{label:`Rows Sampled`,value:c.rowsSampled}),(0,L.jsx)(YG,{label:`Cutoff Frequency (exact)`,value:c.cutoffFrequencyExact}),(0,L.jsx)(YG,{label:`Cutoff Frequency`,value:c.cutoffFrequency}),(0,L.jsx)(YG,{label:`Min Selectivity`,value:c.minimumSelectivity,format:`scientific`})]})}),(0,L.jsx)(wm.Col,{span:{base:12,md:6},children:(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)(YG,{label:`Target Selectivity`,value:c.targetSelectivity,format:`scientific`}),(0,L.jsx)(YG,{label:`Target Lambda`,value:c.targetLambda}),(0,L.jsx)(YG,{label:`Target Poisson CDF`,value:c.targetPoissonCdf}),(0,L.jsx)(YG,{label:`Target m`,value:c.targetM})]})})]})]}),(0,L.jsx)(wm,{children:c.results.map(({name:e,result:t})=>(0,L.jsx)(wm.Col,{span:{base:12,md:6},children:(0,L.jsx)(XG,{title:`${e} Option`,m:t.m,poissonCdf:t.poissonCdf,lambda:t.lambda,f:t.f})},e))})]})]})}var QG=8;function $G({inputProps:e,data:t,onChange:n}){let r=Ff({onDropdownClose:()=>r.resetSelectedOption()}),[i,a]=(0,b.useState)(null),[o,s]=(0,b.useState)(``),c=(0,b.useMemo)(()=>t.filter(e=>e.toLowerCase().includes(o.toLowerCase().trim())),[t,o]),l=(0,b.useMemo)(()=>{let e=Array(Math.min(c.length,QG));for(let t=0;t<e.length;t++){let n=c[t];e[t]=(0,L.jsx)(Rf.Option,{value:n,children:n},n)}return e},[c]);return(0,L.jsxs)(Rf,{store:r,withinPortal:!1,onOptionSubmit:e=>{n&&n(e),a(e),s(e),r.closeDropdown()},children:[(0,L.jsx)(Rf.Target,{children:(0,L.jsx)(pd,{rightSection:(0,L.jsx)(Rf.Chevron,{}),value:o,onChange:e=>{r.openDropdown(),r.updateSelectedOptionIndex(),s(e.currentTarget.value)},onClick:()=>r.openDropdown(),onFocus:()=>r.openDropdown(),onBlur:()=>{r.closeDropdown(),s(i||``)},rightSectionPointerEvents:`none`,...e})}),(0,L.jsx)(Rf.Dropdown,{children:(0,L.jsx)(Rf.Options,{children:l.length>0?l:(0,L.jsx)(Rf.Empty,{children:`Nothing found`})})})]})}function eK(e){let t=[];for(let n of e)t.push(n),t.push(n+`_History`),t.push(n+`_References`);return t.push(`Address`),t.push(`ContactPoint`),t.push(`HumanName`),t.push(`Coding`),t.push(`Coding_Property`),t.push(`DatabaseMigration`),t=FC(t),t}function tK(e){return typeof e==`string`?e.length>50?e.substring(0,50)+`...`:e:typeof e==`boolean`?e.toString().toLocaleUpperCase():e}var nK=({medplum:e,onChange:t,onError:n})=>{(0,b.useEffect)(()=>{async function r(){return(await e.valueSetExpand({url:`https://medplum.com/fhir/ValueSet/resource-types`,count:200})).expansion?.contains?.map(e=>e.code).filter(e=>e!==void 0)??[]}r().then(e=>{t(eK(e))}).catch(e=>{n?n(e):console.error(e)})},[e,t,n])};function rK(){let e=Q(),[t,{open:n,close:r}]=yn(!1),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(void 0),[u,d]=(0,b.useState)(0),[f,p]=(0,b.useState)(!1),[m,h]=(0,b.useState)([]),[g,_]=(0,b.useState)([]),[v,y]=(0,b.useState)(!1),[x,S]=(0,b.useState)(void 0),[C,w]=(0,b.useState)([]),[T,E]=(0,b.useState)(0),[D,O]=(0,b.useState)(!1),[k,A]=(0,b.useState)(!1);nK({medplum:e,onChange:w}),(0,b.useEffect)(()=>{p(!0),e.get(`fhir/R4/$db-column-statistics?tableName=`+encodeURIComponent(c??``),{cache:`no-cache`}).then(e=>{d(e.parameter?.find(e=>e.name===`defaultStatisticsTarget`)?.valueInteger??0);let t=(e.parameter?.find(e=>e.name===`table`)?.part)?.filter(e=>e.name===`column`);h(t??[])}).finally(()=>{p(!1)}).catch(e=>{Y({color:`red`,message:e.message})})},[e,c,T]);function j(){if(c){if(g.length===0){Y({color:`red`,message:`No columns selected`,autoClose:!0});return}Y({title:`Submit`,message:JSON.stringify({resetToDefault:v,newStatisticsTarget:x,selectedRowNames:g}),autoClose:!0}),e.post(`fhir/R4/$db-configure-column-statistics`,{tableName:c,columnNames:g,resetToDefault:v,newStatisticsTarget:v?void 0:x}).then(e=>{Y({color:`green`,message:`Done`}),E(e=>e+1)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}}let M={onClick:e=>{a(`Details`),s((0,L.jsx)(`pre`,{children:e})),n()}},N=0;return(0,L.jsxs)(UM,{onSubmit:j,children:[(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsxs)(H,{children:[(0,L.jsx)($G,{data:C,inputProps:{placeholder:`Table name`,inputSize:`50`},onChange:e=>{l(e),_([])}}),(0,L.jsx)(W,{loading:f,onClick:()=>E(e=>e+1),children:`Refresh`})]}),(0,L.jsxs)(H,{children:[(0,L.jsx)(U,{span:!0,fw:700,children:`Statistics Target:`}),(0,L.jsx)(N_,{value:v?``:x,disabled:v,required:!v,size:`sm`,w:`100`,min:0,step:100,max:1e4,onChange:e=>{typeof e==`number`&&S(e)}}),(0,L.jsx)(U,{span:!0,fw:700,c:`dimmed`,children:`– or –`}),(0,L.jsx)(cp,{checked:v,onChange:e=>y(e.currentTarget.checked),label:`Reset to default (`+u+`)`,size:`sm`}),(0,L.jsx)(WM,{size:`sm`,children:`Update`})]}),(0,L.jsx)(H,{children:(0,L.jsx)(cp,{checked:k,onChange:e=>A(e.currentTarget.checked),label:`Hide columns with default statistics target`,size:`sm`})}),(0,L.jsx)(H,{children:(0,L.jsx)(cp,{checked:D,onChange:e=>O(e.currentTarget.checked),label:`Show all column stats`,size:`sm`})}),(0,L.jsx)(q.ScrollContainer,{minWidth:500,children:(0,L.jsxs)(q,{striped:!0,highlightOnHover:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:(0,L.jsx)(cp,{size:`sm`,checked:m.length>0&&g.length===m.length,indeterminate:g.length>0&&g.length<m.length,onChange:()=>{g.length===m.length?_([]):_(m.map(e=>e.part?.find(e=>e.name===`name`)?.valueString??``))}})}),(0,L.jsx)(q.Th,{children:`Column`}),(0,L.jsx)(q.Th,{children:`Statistics Target`}),(0,L.jsx)(q.Th,{children:`null_frac`}),(0,L.jsx)(q.Th,{children:`avg_width`}),(0,L.jsx)(q.Th,{children:`n_distinct`}),(0,L.jsx)(q.Th,{children:`correlation`}),D&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(q.Th,{children:`most_common_vals`}),(0,L.jsx)(q.Th,{children:`most_common_freqs`}),(0,L.jsx)(q.Th,{children:`histogram_bounds`}),(0,L.jsx)(q.Th,{children:`most_common_elems`}),(0,L.jsx)(q.Th,{children:`most_common_elem_freqs`}),(0,L.jsx)(q.Th,{children:`elem_count_histogram`})]})]})}),(0,L.jsxs)(q.Tbody,{children:[m?.map(e=>{let t=e.part??[],n=t.find(e=>e.name===`name`)?.valueString,r=t.find(e=>e.name===`statisticsTarget`)?.valueInteger;if(r===-1&&(N++,k))return null;if(!n)throw Error(`Column missing name`,{cause:e});return(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:(0,L.jsx)(cp,{size:`sm`,checked:g.includes(n),onChange:e=>{_(e.currentTarget.checked?[...g,n]:g.filter(e=>e!==n))}})}),(0,L.jsx)(q.Td,{children:n}),(0,L.jsx)(q.Td,{children:r===-1?(0,L.jsxs)(U,{span:!0,c:`dimmed`,fs:`italic`,children:[`default (`,u,`)`]}):r}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`nullFraction`)?.valueDecimal,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`avgWidth`)?.valueInteger,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`nDistinct`)?.valueDecimal,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`correlation`)?.valueDecimal,...M}),D&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(iK,{value:t.find(e=>e.name===`mostCommonValues`)?.valueString,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`mostCommonFreqs`)?.valueString,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`histogramBounds`)?.valueString,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`mostCommonElems`)?.valueString,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`mostCommonElemFreqs`)?.valueString,...M}),(0,L.jsx)(iK,{value:t.find(e=>e.name===`elemCountHistogram`)?.valueString,...M})]})]},n)}),k&&(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:D?13:7,children:(0,L.jsxs)(U,{c:`dimmed`,fs:`italic`,children:[N,` hidden columns with default statistics target`]})})})]})]})})]}),(0,L.jsx)(ng,{opened:t,onClose:r,title:i,centered:!0,size:`auto`,children:o})]})}function iK({value:e,onClick:t}){return(0,L.jsx)(q.Td,{style:{cursor:`pointer`},onClick:()=>t?.(e),children:aK(e)})}function aK(e){return typeof e==`string`&&e.length>30?e.substring(0,30)+`...`:e}function oK(e,t,n,r){let i=Date.now().toString();Y({id:i,loading:!0,title:t,message:`Running...`,autoClose:!1,withCloseButton:!1});let a={method:`POST`,pollStatusOnAccepted:!0};return r&&(a.body=JSON.stringify(r)),e.startAsyncRequest(n,a).then(e=>{let n=`Done`;return e.resourceType===`AsyncJob`?n=(0,L.jsx)(bj,{to:e,children:`View AsyncJob`}):e.resourceType===`OperationOutcome`&&e.issue?.[0]?.details?.text&&(n=(0,L.jsx)(U,{children:e.issue[0].details.text})),Tb.update({id:i,color:`green`,title:t,message:n,icon:(0,L.jsx)(aA,{size:`1rem`}),loading:!1,autoClose:!1,withCloseButton:!0}),e}).catch(e=>{throw Tb.update({id:i,color:`red`,title:t,message:Lx(e),icon:(0,L.jsx)(lj,{size:`1rem`}),loading:!1,autoClose:!1,withCloseButton:!0}),e})}function sK(e,t,n,r){oK(e,t,n,r).catch(()=>{})}var cK=8;function lK({pillInputProps:e,inputProps:t,data:n,onChange:r}){let i=Ff({onDropdownClose:()=>i.resetSelectedOption(),onDropdownOpen:()=>i.updateSelectedOptionIndex(`active`)}),[a,o]=(0,b.useState)(``),[s,c]=(0,b.useState)([]),l=e=>{let t=s.includes(e)?s.filter(t=>t!==e):[...s,e];c(t),r&&r(t)},u=e=>c(t=>t.filter(t=>t!==e)),d=(0,b.useMemo)(()=>s.map(e=>(0,L.jsx)(fg,{withRemoveButton:!0,onRemove:()=>u(e),children:e},e)),[s]),f=(0,b.useMemo)(()=>{let e=a.trim().toLowerCase();return n.filter(t=>t.toLowerCase().includes(e))},[n,a]),p=(0,b.useMemo)(()=>{let e=Array(Math.min(f.length,cK));for(let t=0;t<e.length;t++){let n=f[t];e[t]=(0,L.jsx)(Rf.Option,{value:n,active:s.includes(n),children:(0,L.jsxs)(H,{gap:`sm`,children:[s.includes(n)?(0,L.jsx)(ep,{size:12}):null,(0,L.jsx)(`span`,{children:n})]})},n)}return e},[f,s]);return(0,L.jsxs)(Rf,{store:i,onOptionSubmit:l,withinPortal:!1,children:[(0,L.jsx)(Rf.DropdownTarget,{children:(0,L.jsx)(_g,{onClick:()=>i.openDropdown(),...e,children:(0,L.jsxs)(fg.Group,{children:[d,(0,L.jsx)(Rf.EventsTarget,{children:(0,L.jsx)(_g.Field,{onFocus:()=>i.openDropdown(),onBlur:()=>{i.closeDropdown(),o(``)},value:a,onChange:e=>{i.updateSelectedOptionIndex(),o(e.currentTarget.value)},onKeyDown:e=>{e.key===`Backspace`&&a.length===0&&s.length>0&&(e.preventDefault(),u(s[s.length-1]))},...t})})]})})}),(0,L.jsx)(Rf.Dropdown,{children:(0,L.jsx)(Rf.Options,{children:p.length>0?p:(0,L.jsx)(Rf.Empty,{children:`Nothing found...`})})})]})}function uK({defaultGinPendingListLimit:e,availableTables:t,onResponse:n}){let r=Q(),[i,a]=(0,b.useState)(!1),[o,s]=(0,b.useState)([]),[c,l]=(0,b.useState)(`unspecified`),[u,d]=(0,b.useState)(`unspecified`),[f,p]=(0,b.useState)(void 0);return(0,L.jsx)(UM,{onSubmit:()=>{let e={tableName:o};c===`reset`?e.fastUpdateAction=`reset`:c===`on`?(e.fastUpdateAction=`set`,e.fastUpdateValue=!0):c===`off`&&(e.fastUpdateAction=`set`,e.fastUpdateValue=!1),u===`reset`?e.ginPendingListLimitAction=`reset`:u===`set`&&(e.ginPendingListLimitAction=`set`,e.ginPendingListLimitValue=f),a(!0),oK(r,`Configure GIN Indexes`,`fhir/R4/$db-configure-indexes`,e).then(e=>{n(e)}).catch(()=>{}).finally(()=>{a(!1)})},children:(0,L.jsxs)(K,{gap:`sm`,maw:`800`,children:[(0,L.jsx)(sd,{label:`Table(s)`,children:(0,L.jsx)(lK,{data:t,onChange:e=>s(e),inputProps:{name:`tables`,placeholder:`e.g. Observation`}})}),(0,L.jsx)(wv.Group,{name:`fastUpdate`,label:`fastupdate`,value:c,onChange:e=>l(e),children:(0,L.jsxs)(H,{h:`36`,children:[(0,L.jsx)(wv,{size:`sm`,value:`unspecified`,label:`unspecified`}),(0,L.jsx)(wv,{size:`sm`,value:`reset`,label:`reset to default (on)`}),(0,L.jsx)(wv,{size:`sm`,value:`off`,label:`off`}),(0,L.jsx)(wv,{size:`sm`,value:`on`,label:`on`})]})}),(0,L.jsx)(wv.Group,{name:`ginPendingListLimit`,label:`gin_pending_list_limit`,value:u,onChange:e=>{d(e),e!==`set`&&p(void 0)},children:(0,L.jsxs)(H,{h:`36`,children:[(0,L.jsx)(wv,{size:`sm`,value:`unspecified`,label:`unspecified`}),(0,L.jsx)(wv,{size:`sm`,value:`reset`,label:`reset to default (${e}kB)`}),(0,L.jsxs)(H,{children:[(0,L.jsx)(wv,{size:`sm`,value:`set`,label:`Set to (kB)`}),(0,L.jsx)(N_,{title:`gin_pending_list_limit_value`,name:`gin_pending_list_limit_value`,value:(u===`set`?f:``)||``,disabled:u!==`set`,required:u===`set`,size:`sm`,w:`100`,min:64,max:2147483647,onChange:e=>{p(typeof e==`number`?e:void 0)}})]})]})}),(0,L.jsx)(H,{justify:`center`,children:(0,L.jsx)(WM,{size:`sm`,loading:i,children:`Update`})})]})})}function dK(){let e=Q(),[t,{open:n,close:r}]=yn(!1),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(void 0),[u,d]=(0,b.useState)(0),[f,p]=(0,b.useState)(!1),[m,h]=(0,b.useState)(void 0),[g,_]=(0,b.useState)([]),[v,y]=(0,b.useState)(0);nK({medplum:e,onChange:_}),(0,b.useEffect)(()=>{p(!0),e.get(`fhir/R4/$db-indexes?tableName=`+encodeURIComponent(c??``),{cache:`no-cache`}).then(e=>{d(e.parameter?.find(e=>e.name===`defaultGinPendingListLimit`)?.valueInteger??0);let t=e.parameter?.filter(e=>e.name===`index`);h(t??[])}).finally(()=>{p(!1)}).catch(e=>{Y({color:`red`,message:e.message})})},[e,c,v]);let x=e=>{a(`Configure results`),s((0,L.jsx)(`pre`,{children:JSON.stringify(e,null,2)})),n(),y(e=>(e+1)%100)},S={onClick:e=>{a(`Details`),s((0,L.jsx)(`pre`,{children:e})),n()}},C;return f?C=`Loading...`:c?m?.length===0&&(C=`No GIN indexes on this table`):C=`Select a table`,(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(`h2`,{children:`Configure GIN indexes`}),(0,L.jsx)(H,{children:(0,L.jsx)(uK,{defaultGinPendingListLimit:u,availableTables:g,onResponse:x})}),(0,L.jsx)(`h2`,{children:`GIN index stats`}),(0,L.jsxs)(H,{children:[(0,L.jsx)($G,{data:g,inputProps:{placeholder:`Table name`,inputSize:`50`},onChange:e=>{l(e)}}),(0,L.jsx)(W,{loading:f,onClick:()=>y(e=>(e+1)%100),disabled:!c,children:`Refresh`})]}),(0,L.jsx)(q.ScrollContainer,{minWidth:500,children:(0,L.jsxs)(q,{striped:!0,highlightOnHover:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Schema`}),(0,L.jsx)(q.Th,{children:`Table`}),(0,L.jsx)(q.Th,{children:`Index`}),(0,L.jsx)(q.Th,{children:`fastupdate`}),(0,L.jsx)(q.Th,{children:`gin_pending_list_limit`}),(0,L.jsx)(q.Th,{children:`options`})]})}),(0,L.jsxs)(q.Tbody,{children:[C&&(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:16,children:C})}),!C&&m?.map(e=>{let t=e.part??[],n=t.find(e=>e.name===`indexName`)?.valueString;if(!n)throw Error(`Index missing name`,{cause:e});return(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:t.find(e=>e.name===`schemaName`)?.valueString}),(0,L.jsx)(q.Td,{children:t.find(e=>e.name===`tableName`)?.valueString}),(0,L.jsx)(q.Td,{children:n}),(0,L.jsx)(fK,{value:t.find(e=>e.name===`fastUpdate`)?.valueBoolean,defaultValue:(0,L.jsxs)(U,{span:!0,c:`dimmed`,fs:`italic`,children:[`default\xA0(`,tK(!0),`)`]}),...S}),(0,L.jsx)(fK,{value:t.find(e=>e.name===`ginPendingListLimit`)?.valueInteger,defaultValue:(0,L.jsxs)(U,{span:!0,c:`dimmed`,fs:`italic`,children:[`default\xA0(`,u,`)`]}),...S}),(0,L.jsx)(fK,{value:t.find(e=>e.name===`indexOptions`)?.valueString,defaultValue:(0,L.jsx)(U,{span:!0,c:`dimmed`,fs:`italic`,children:`NULL`}),...S})]},n)})]})]})})]}),(0,L.jsx)(ng,{opened:t,onClose:r,title:i,centered:!0,size:`auto`,children:o})]})}function fK({value:e,onClick:t,defaultValue:n}){return(0,L.jsx)(q.Td,{style:{cursor:`pointer`},onClick:()=>t?.(e),children:e===void 0?n:tK(e)})}var pK=[{label:`GIN Indexes`,value:`gin-indexes`},{label:`Column Statistics`,value:`column-statistics`},{label:`Array Column Padding`,value:`array-padding`}];function mK(){let e=Q();return!e.isLoading()&&!e.isSuperAdmin()?(0,L.jsx)(GN,{outcome:Dx}):(0,L.jsx)(PN,{maw:`100%`,children:(0,L.jsxs)(IN,{children:[(0,L.jsx)(J,{order:1,children:`Database Tools`}),(0,L.jsxs)(VR,{baseUrl:`/admin/super/db`,tabs:pK,children:[(0,L.jsx)(ib.Panel,{value:`gin-indexes`,pt:`md`,children:(0,L.jsx)(dK,{})}),(0,L.jsx)(ib.Panel,{value:`column-statistics`,pt:`md`,children:(0,L.jsx)(rK,{})}),(0,L.jsx)(ib.Panel,{value:`array-padding`,pt:`md`,children:(0,L.jsx)(ZG,{})})]})]})})}function hK(){let e=Q(),[t,n]=(0,b.useState)(e.getProject()),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(!1),[l,u]=(0,b.useState)(void 0);return(0,L.jsxs)(UM,{onSubmit:(0,b.useCallback)(n=>{let i={resourceType:n.resourceType,firstName:n.firstName,lastName:n.lastName,email:n.email,sendEmail:n.sendEmail===`on`,accessPolicy:r,admin:n.isAdmin===`on`,scope:n.isProjectScoped===`on`?`project`:`server`,mfaRequired:n.mfaRequired===`on`};return e.invite(t?.id,i).then(t=>{e.invalidateSearches(`Patient`),e.invalidateSearches(`Practitioner`),e.invalidateSearches(`ProjectMembership`),Mx(t)?o(t):u(t),c(i.sendEmail??!1),Y({color:`green`,message:`Invite success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1}),o(Ix(e))})},[e,t,r]),children:[!l&&!a&&(0,L.jsxs)(K,{children:[(0,L.jsx)(J,{children:`Invite new member`}),e.isSuperAdmin()&&(0,L.jsx)(XP,{title:`Project`,htmlFor:`project`,outcome:a,children:(0,L.jsx)(wF,{resourceType:`Project`,name:`project`,defaultValue:t,onChange:n})}),(0,L.jsx)(Tg,{name:`resourceType`,label:`Role`,defaultValue:`Practitioner`,data:[`Practitioner`,`Patient`,`RelatedPerson`],error:zN(a,`resourceType`)}),(0,L.jsx)(ab,{name:`firstName`,label:`First Name`,required:!0,autoFocus:!0,error:zN(a,`firstName`)}),(0,L.jsx)(ab,{name:`lastName`,label:`Last Name`,required:!0,error:zN(a,`lastName`)}),(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,required:!0,error:zN(a,`email`)}),(0,L.jsx)(XP,{title:`Access Policy`,htmlFor:`accessPolicy`,outcome:a,children:(0,L.jsx)(BG,{name:`accessPolicy`,onChange:i})}),(0,L.jsx)(cp,{name:`sendEmail`,label:`Send email`,defaultChecked:!0}),(0,L.jsx)(cp,{name:`isAdmin`,label:`Admin`}),(0,L.jsx)(cp,{name:`isProjectScoped`,label:`Project scoped`}),(0,L.jsx)(cp,{name:`mfaRequired`,label:`MFA required`}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(WM,{children:`Invite`})})]}),a&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(`p`,{children:`User created, email couldn't be sent`}),(0,L.jsx)(`p`,{children:`Could not send email. Make sure you have AWS SES set up.`}),(0,L.jsxs)(`p`,{children:[`Click `,(0,L.jsx)(bj,{to:`/admin/project`,children:`here`}),` to return to the project admin page.`]})]}),l&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(U,{children:`User created`}),s&&(0,L.jsx)(U,{children:`Email sent`}),(0,L.jsxs)(vh,{children:[(0,L.jsx)(vh.Item,{children:(0,L.jsx)(bj,{to:l,children:`Go to new membership`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(bj,{to:l.profile,children:`Go to new profile`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(bj,{to:`/admin/users`,children:`Back to users list`})})]})]})]})}function gK(){let e=Q();if(!e.isLoading()&&!e.isProjectAdmin())return(0,L.jsx)(GN,{outcome:Dx});function t(t){e.post(`admin/projects/setpassword`,t).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return(0,L.jsxs)(LN,{width:600,children:[(0,L.jsx)(J,{order:1,children:`Project Admin`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Force Set Password`}),(0,L.jsx)(U,{children:`Sets the password for the specified user in this project.`}),(0,L.jsx)(U,{children:`This action can only be performed by project administrators. Passwords can only be set for users scoped in this project.`}),(0,L.jsx)(UM,{onSubmit:t,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(ab,{name:`email`,label:`Email`,required:!0}),(0,L.jsx)(ov,{name:`password`,label:`Password`,required:!0}),(0,L.jsx)(W,{type:`submit`,children:`Force Set Password`})]})})]})}function _K(){let e=Q(),t=IG(e),n=e.get(`admin/projects/${t}`).read();return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Details`}),(0,L.jsxs)(DN,{children:[(0,L.jsx)(ON,{term:`ID`,children:n.project.id}),(0,L.jsx)(ON,{term:`Name`,children:n.project.name})]})]})}var vK=[`Details`,`Users`,`Clients`,`Bots`,`Secrets`,`Sites`];function yK(){let e=Q(),t=IG(e),n=(0,b.useMemo)(()=>e.get(`admin/projects/`+t).read(),[e,t]);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{children:[(0,L.jsx)(zR,{children:(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Project`}),(0,L.jsx)(zR.Value,{children:n.project.name})]})}),(0,L.jsx)(ll,{children:(0,L.jsx)(VR,{baseUrl:`/admin`,tabs:vK})})]}),(0,L.jsx)(PN,{maw:`100%`,children:(0,L.jsx)(IN,{children:(0,L.jsx)(vW,{})})})]})}function bK(){let e=Q(),t=IG(e),n=e.get(`admin/projects/${t}`).read(),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{e.requestSchema(`Project`).then(()=>i(!0)).catch(console.log)},[e]),(0,b.useEffect)(()=>{n&&o(hC(n.project.secret||[]))},[e,n]),!r||!a?(0,L.jsx)(`div`,{children:`Loading...`}):(0,L.jsxs)(`form`,{noValidate:!0,autoComplete:`off`,onSubmit:n=>{n.preventDefault(),e.post(`admin/projects/${t}/secrets`,a).then(()=>e.get(`admin/projects/${t}`,{cache:`reload`})).then(()=>Y({color:`green`,message:`Saved`})).catch(console.log)},children:[(0,L.jsx)(J,{children:`Project Secrets`}),(0,L.jsx)(`p`,{children:`Use project secrets to store sensitive information such as API keys or other access credentials.`}),(0,L.jsx)(WF,{property:ww(`Project`,`secret`),name:`secret`,path:`Project.secret`,defaultValue:a,onChange:o,outcome:void 0}),(0,L.jsx)(W,{type:`submit`,children:`Save`})]})}function xK(){let e=Q(),t=IG(e),n=e.get(`admin/projects/${t}`).read(),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{e.requestSchema(`Project`).then(()=>i(!0)).catch(console.log)},[e]),(0,b.useEffect)(()=>{n&&o(hC(n.project.site||[]))},[e,n]),!r||!a?(0,L.jsx)(`div`,{children:`Loading...`}):(0,L.jsxs)(`form`,{noValidate:!0,autoComplete:`off`,onSubmit:n=>{n.preventDefault(),e.post(`admin/projects/${t}/sites`,a).then(()=>e.get(`admin/projects/${t}`,{cache:`reload`})).then(()=>Y({color:`green`,message:`Saved`})).catch(e=>{let t=Ix(e);Y({color:`red`,message:`Error ${t.issue?.[0].details?.text} ${t.issue?.[0].expression?.[0]}`,autoClose:!1})})},children:[(0,L.jsx)(J,{children:`Project Sites`}),(0,L.jsx)(`p`,{children:`Use project sites configure your project on a separate domain.`}),(0,L.jsx)(WF,{property:ww(`Project`,`site`),name:`site`,path:`Project.site`,defaultValue:a,onChange:o,outcome:void 0}),(0,L.jsx)(W,{type:`submit`,children:`Save`})]})}var SK=[{label:`Post-deploy Migrations`,value:`migrations`},{label:`System AsyncJob`,value:`asyncjob`}];function CK(){let e=Q();return!e.isLoading()&&!e.isSuperAdmin()?(0,L.jsx)(GN,{outcome:Dx}):(0,L.jsx)(PN,{miw:`1600`,maw:`2000`,children:(0,L.jsxs)(IN,{children:[(0,L.jsx)(J,{order:1,children:`AsyncJob Dashboard`}),(0,L.jsxs)(VR,{baseUrl:`/admin/super/asyncjob`,tabs:SK,keepMounted:!1,children:[(0,L.jsx)(ib.Panel,{value:`asyncjob`,pt:`md`,children:(0,L.jsx)(TK,{})}),(0,L.jsx)(ib.Panel,{value:`migrations`,pt:`md`,children:(0,L.jsx)(DK,{})})]})]})})}var wK={resourceType:`AsyncJob`,fields:[`id`,`_lastUpdated`,`request`,`status`,`type`],filters:[{code:`_project`,operator:Z.MISSING,value:`true`}],sortRules:[{code:`_lastUpdated`,descending:!0}]};function TK(){let e=MU(),[t]=(0,b.useState)(wK);return(0,L.jsxs)(K,{children:[(0,L.jsx)(bj,{to:`/${t.resourceType}/${KT(t)}`,children:`Show in search page`}),(0,L.jsx)(kR,{checkboxesEnabled:!1,search:t,onClick:t=>e(kK(t.resource))?.catch(console.error),onAuxClick:e=>window.open(kK(e.resource),`_blank`)})]})}var EK={resourceType:`AsyncJob`,fields:[`id`,`_lastUpdated`,`request`,`status`,`type`],filters:[{code:`_project`,operator:Z.MISSING,value:`true`},{code:`type`,operator:Z.EQUALS,value:`data-migration`}],count:1e3,sortRules:[{code:`_lastUpdated`,descending:!0}]};function DK(){let e=Q(),[t,n]=(0,b.useState)(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)([]),[s,c]=(0,b.useState)(0),[l,u]=(0,b.useState)([]);(0,b.useEffect)(()=>{let t=`info`;u(e=>e.includes(t)?e:[...e,t]),e.get(`admin/super/migrations`,{cache:`no-cache`}).then(e=>{e.postDeployMigrations.sort((e,t)=>t-e),n(e)}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})}).finally(()=>u(e=>e.filter(e=>e!==t)))},[e,s]),(0,b.useEffect)(()=>{let t=`jobs`;u(e=>e.includes(t)?e:[...e,t]),e.requestSchema(`AsyncJob`).then(()=>e.search(`AsyncJob`,KT({...EK,total:`accurate`,fields:void 0}),{cache:`no-cache`}).then(e=>{i(e.entry?.map(e=>e.resource))})).catch(e=>{i(void 0),Y({color:`red`,message:Lx(e),autoClose:!1})}).finally(()=>u(e=>e.filter(e=>e!==t)))},[e,s]);function d(){c(e=>e+1)}function f(t){oK(e,`Run pending post-deploy migration`,`admin/super/migrate`,{dataVersion:t}).finally(()=>{d()}).catch(()=>{}),d()}let p=l.length>0;function m(e,{isLoading:t}){return(0,L.jsxs)(`div`,{style:{position:`relative`},children:[(0,L.jsx)(Sh,{visible:t}),(0,L.jsxs)(q,{children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Version`}),(0,L.jsx)(q.Th,{children:`Action`}),(0,L.jsx)(q.Th,{children:`Status`}),(0,L.jsx)(q.Th,{children:`AsyncJob`}),(0,L.jsx)(q.Th,{children:`Last Updated`}),(0,L.jsx)(q.Th,{children:`Request Time`}),(0,L.jsx)(q.Th,{children:`Duration`}),(0,L.jsx)(q.Th,{children:`Attempts`})]})}),(0,L.jsx)(q.Tbody,{children:e()})]})]})}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(W,{size:`xs`,mb:`xs`,variant:`subtle`,leftSection:(0,L.jsx)(KA,{size:14}),onClick:d,loading:p,children:`Refresh`}),m(()=>{if(!p){if(!t)return(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:6,children:`Failed to load migration info`})});if(!r)return(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:6,children:`Failed to load async jobs`})})}return!t||!r?null:t.postDeployMigrations?.map(e=>{let{status:n,asyncJob:i,asyncJobs:s}=OK(e,r??[],t?.pendingPostDeployMigration),c=a.includes(e),l=e===t?.pendingPostDeployMigration&&(!i||i?.status===`error`),u=[(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:e}),(0,L.jsx)(q.Td,{children:l&&(0,L.jsx)(W,{color:`green`,size:`xs`,onClick:()=>f(e),children:`Start`})}),(0,L.jsx)(q.Td,{children:n}),(0,L.jsx)(q.Td,{children:i&&(0,L.jsx)(bj,{to:`/AsyncJob/${i?.id}`,children:i?.id})}),(0,L.jsx)(q.Td,{children:i?.meta?.lastUpdated}),(0,L.jsx)(q.Td,{children:i?.requestTime}),(0,L.jsx)(q.Td,{children:AK(i)}),(0,L.jsx)(q.Td,{display:`flex`,children:(0,L.jsxs)(H,{gap:`xs`,children:[s.length?s.length:``,c&&s.length>1&&(0,L.jsx)(W,{leftSection:(0,L.jsx)(RA,{size:14}),variant:`subtle`,color:`blue`,size:`xs`,radius:`xs`,onClick:()=>o(t=>t.includes(e)?t.filter(t=>t!==e):t),children:`Hide all`}),!c&&s.length>1&&(0,L.jsx)(W,{leftSection:(0,L.jsx)(WA,{size:14}),variant:`subtle`,color:`blue`,size:`xs`,radius:`xs`,onClick:()=>o(t=>t.includes(e)?t:[...t,e]),children:`Show all`})]})})]},e)];return c&&u.push(...s.filter(e=>e.id!==i?.id).map(t=>(0,L.jsxs)(q.Tr,{bg:`gray.1`,children:[(0,L.jsx)(q.Td,{children:e}),(0,L.jsx)(q.Td,{}),(0,L.jsx)(q.Td,{children:t.status}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(bj,{to:`/AsyncJob/${t.id}`,children:t.id})}),(0,L.jsx)(q.Td,{children:t.meta?.lastUpdated}),(0,L.jsx)(q.Td,{children:t.requestTime}),(0,L.jsx)(q.Td,{children:AK(t)}),(0,L.jsx)(q.Td,{})]},t.id))),u})},{isLoading:p})]})}function OK(e,t,n){let r=t.filter(t=>t.dataVersion===e),i=r.find(e=>e.status===`completed`)??r[0],a;return a=n===0?i?.status??`completed`:e>n?i?.status??`pending`:e===n?i?.status??`next`:i?.status??`completed`,{status:a,asyncJob:i,asyncJobs:r}}function kK(e){return`/${e.resourceType}/${e.id}`}function AK(e){let t=e?.requestTime,n=e?.transactionTime??e?.meta?.lastUpdated;if(!t||!n)return``;let r=new Date(t),i=new Date(n).getTime()-r.getTime();if(i<1e3)return`${i.toFixed(0)}ms`;let a=i/1e3;return a<60?`${a.toFixed(2)}s`:a<3600?`${(a/60).toFixed(2)}m`:`${(a/3600).toFixed(2)}h`}function jK(){let e=Q(),[t,n]=(0,b.useState)(),[r,i]=(0,b.useState)(!1),[a,{open:o,close:s}]=yn(!1),[c,l]=(0,b.useState)(new Set),[u,d]=(0,b.useState)(new Set),[f,p]=(0,b.useState)(new Map),[m,h]=(0,b.useState)(new Map);function g(){i(!0),e.get(`fhir/R4/$get-ws-sub-stats`).then(e=>{let t=e.parameter?.find(e=>e.name===`stats`)?.valueString;t&&n(JSON.parse(t).projects),o()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})).finally(()=>i(!1))}function _(e){l(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}function v(t,n){let r=`${t}:${n}`;f.has(t)||(h(e=>new Map(e).set(t,!0)),e.get(`fhir/R4/$get-ws-sub-project-stats?projectId=${encodeURIComponent(t)}`).then(e=>{let n=e.parameter?.find(e=>e.name===`stats`)?.valueString;if(n){let e=JSON.parse(n);p(n=>new Map(n).set(t,e.resourceTypes))}}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})).finally(()=>h(e=>{let n=new Map(e);return n.delete(t),n}))),d(e=>{let t=new Set(e);return t.has(r)?t.delete(r):t.add(r),t})}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(W,{onClick:g,loading:r,children:`Get WS Sub Stats`}),(0,L.jsxs)(ng,{opened:a,onClose:s,title:`WebSocket Subscription Stats`,size:`xl`,centered:!0,children:[!t?.length&&(0,L.jsx)(U,{children:`No active WebSocket subscriptions found.`}),t&&t.length>0&&(0,L.jsxs)(q,{striped:!0,highlightOnHover:!0,withTableBorder:!0,withColumnBorders:!0,tabularNums:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Project / Resource Type / Criteria`}),(0,L.jsx)(q.Th,{children:`Count`})]})}),(0,L.jsx)(q.Tbody,{children:t.map(e=>(0,L.jsxs)(b.Fragment,{children:[(0,L.jsxs)(q.Tr,{onClick:()=>_(e.projectId),style:{cursor:`pointer`},children:[(0,L.jsx)(q.Td,{children:(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(U,{size:`xs`,children:c.has(e.projectId)?`▼`:`▶`}),(0,L.jsx)(PP,{value:{reference:`Project/${e.projectId}`,display:e.projectName}})]})}),(0,L.jsx)(q.Td,{children:e.subscriptionCount})]}),c.has(e.projectId)&&e.resourceTypes.map(t=>{let n=`${e.projectId}:${t.resourceType}`,r=f.get(e.projectId)?.find(e=>e.resourceType===t.resourceType),i=m.get(e.projectId)===!0;return(0,L.jsxs)(b.Fragment,{children:[(0,L.jsxs)(q.Tr,{onClick:()=>v(e.projectId,t.resourceType),style:{cursor:`pointer`},children:[(0,L.jsx)(q.Td,{children:(0,L.jsxs)(H,{gap:`xs`,pl:`md`,children:[(0,L.jsx)(U,{size:`xs`,children:u.has(n)?`▼`:`▶`}),(0,L.jsx)(U,{children:t.resourceType})]})}),(0,L.jsx)(q.Td,{children:t.count})]}),u.has(n)&&(0,L.jsxs)(L.Fragment,{children:[i&&!r&&(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:2,children:(0,L.jsx)(U,{pl:`xl`,size:`sm`,c:`dimmed`,children:`Loading...`})})}),r?.criteria.map(e=>(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:(0,L.jsx)(U,{pl:`xl`,size:`sm`,c:`dimmed`,children:e.criteria})}),(0,L.jsx)(q.Td,{children:e.count})]},`${n}:${e.criteria}`))]})]},n)})]},e.projectId))})]})]})]})}function MK(){let e=Q(),[t,{open:n,close:r}]=yn(!1),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)();if(!e.isLoading()&&!e.isSuperAdmin())return(0,L.jsx)(GN,{outcome:Dx});function u(){sK(e,`Rebuilding Structure Definitions`,`admin/super/structuredefinitions`)}function d(){sK(e,`Rebuilding Search Parameters`,`admin/super/searchparameters`)}function f(){sK(e,`Rebuilding Value Sets`,`admin/super/valuesets`)}function p(t){sK(e,`Reindexing Resources`,`admin/super/reindex`,t)}function m(){sK(e,`Reload Cron Resources`,`admin/super/reloadcron`)}function h(){r();let t=KS(c);e.post(`fhir/R4/$clear-all-ws-subs`,t?{resourceType:`Parameters`,parameter:[{name:`projectId`,valueString:t}]}:void 0).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})),l(void 0)}function g(t){e.post(`admin/super/removebotidjobsfromqueue`,t).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function _(t){e.post(`admin/super/purge`,{...t,before:cF(t.before)}).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function v(t){e.post(`admin/super/setpassword`,t).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function y(t){e.post(`fhir/R4/$db-stats`,t.tableNames?{resourceType:`Parameters`,parameter:[{name:`tableNames`,valueString:t.tableNames}]}:void 0).then(e=>{a(`Database Stats`),s((0,L.jsx)(`pre`,{children:e.parameter?.find(e=>e.name===`tableString`)?.valueString})),n()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function x(){e.post(`fhir/R4/$db-invalid-indexes`).then(e=>{a(`Database Invalid Indexes`),s((0,L.jsx)(`pre`,{children:e.parameter?.filter(e=>e.name===`invalidIndex`).map(e=>e.valueString).join(`
|
|
220
|
-
`)})),n()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function S(){e.post(`fhir/R4/$db-schema-diff`).then(e=>{a(`Schema Diff`),s((0,L.jsx)(`pre`,{children:e.parameter?.find(e=>e.name===`migrationString`)?.valueString})),n()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function C(){sK(e,`Reconcile Schema Diff`,`admin/super/reconcile-db-schema-drift`)}return(0,L.jsxs)(LN,{width:600,children:[(0,L.jsx)(J,{order:1,children:`Super Admin`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Structure Definitions`}),(0,L.jsx)(`p`,{children:`StructureDefinition resources contain the metadata about resource types. They are provided with the FHIR specification. Medplum also includes some custom StructureDefinition resources for internal data types. Press this button to update the database StructureDefinitions from the FHIR specification.`}),(0,L.jsx)(UM,{children:(0,L.jsx)(W,{onClick:u,children:`Rebuild StructureDefinitions`})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Search Parameters`}),(0,L.jsx)(`p`,{children:`SearchParameter resources contain the metadata about filters and sorting. They are provided with the FHIR specification. Medplum also includes some custom SearchParameter resources for internal data types. Press this button to update the database SearchParameters from the FHIR specification.`}),(0,L.jsx)(UM,{children:(0,L.jsx)(W,{onClick:d,children:`Rebuild SearchParameters`})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Value Sets`}),(0,L.jsx)(`p`,{children:`ValueSet resources enum values for a wide variety of use cases. Press this button to update the database ValueSets from the FHIR specification.`}),(0,L.jsx)(UM,{children:(0,L.jsx)(W,{onClick:f,children:`Rebuild ValueSets`})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Reindex Resources`}),(0,L.jsx)(`p`,{children:`When Medplum changes how resources are indexed, the system may require a reindex for old resources to be indexed properly.`}),(0,L.jsx)(PK,{onSubmit:p}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Purge Resources`}),(0,L.jsx)(`p`,{children:`As system generated resources accumulate, the system may require a purge to remove old resources.`}),(0,L.jsx)(UM,{onSubmit:_,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Purge Resource Type`,htmlFor:`purgeResourceType`,children:(0,L.jsx)(Tg,{id:`purgeResourceType`,name:`resourceType`,data:[``,`AuditEvent`,`Login`]})}),(0,L.jsx)(XP,{title:`Purge Before`,htmlFor:`before`,children:(0,L.jsx)(lF,{name:`before`,placeholder:`Before Date`})}),(0,L.jsx)(W,{type:`submit`,children:`Purge`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Remove Bot ID Jobs from Queue`}),(0,L.jsx)(`p`,{children:`Remove all queued jobs for a Bot ID`}),(0,L.jsx)(UM,{onSubmit:g,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Bot ID`,children:(0,L.jsx)(ab,{name:`botId`,placeholder:`Bot Id`})}),(0,L.jsx)(W,{type:`submit`,children:`Remove Jobs by Bot ID`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Force Set Password`}),(0,L.jsx)(`p`,{children:`Note that this applies to all projects for the user. Therefore, this should only be used in extreme circumstances. Always prefer to use the "Forgot Password" flow first.`}),(0,L.jsx)(UM,{onSubmit:v,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(ab,{name:`email`,label:`Email`,required:!0}),(0,L.jsx)(ov,{name:`password`,label:`Password`,required:!0}),(0,L.jsx)(ab,{name:`projectId`,label:`Project ID`}),(0,L.jsx)(W,{type:`submit`,children:`Force Set Password`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Stats`}),(0,L.jsx)(`p`,{children:`Query current table statistics from the database.`}),(0,L.jsx)(UM,{onSubmit:y,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Table Names (comma-delimited)`,htmlFor:`tableNames`,children:(0,L.jsx)(ab,{id:`tableNames`,name:`tableNames`,placeholder:`Observation,Observation_History`})}),(0,L.jsx)(W,{type:`submit`,children:`Get Database Stats`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Invalid Indexes`}),(0,L.jsx)(`p`,{children:`Query invalid indexes from the database.`}),(0,L.jsx)(UM,{onSubmit:x,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Get Database Invalid Indexes`})})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Schema Drift`}),(0,L.jsx)(`p`,{children:`Show the schema migration needed to match the expected database schema.`}),(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(UM,{onSubmit:S,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Get Schema Drift`})})})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(UM,{onSubmit:C,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Reconcile Schema Drift`})})})})]}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Reload Cron Resources`}),(0,L.jsx)(`p`,{children:`Obliterates the cron queue and rebuilds all the cron job schedulers for cron resources (eg. cron bots).`}),(0,L.jsx)(UM,{onSubmit:m,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Reload Cron Resources`})})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Explain Search`}),(0,L.jsx)(`p`,{children:`Runs an EXPLAIN query on the database to show the query plan for a search.`}),(0,L.jsx)(FK,{setModalTitle:a,setModalContent:s,openModal:n}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`WebSocket Subscription Stats`}),(0,L.jsx)(`p`,{children:`View active WebSocket subscription statistics by project, resource type, and criteria.`}),(0,L.jsx)(jK,{}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Clear All WebSocket Subscriptions`}),(0,L.jsx)(`p`,{children:`Removes all active WebSocket subscription records from Redis. This is useful for cleaning up stale subscriptions during maintenance or after a deployment issue. Connected clients will need to re-bind.`}),(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Project (optional)`,htmlFor:`clearWsSubsProject`,children:(0,L.jsx)(DF,{name:`clearWsSubsProject`,placeholder:`All projects`,targetTypes:[`Project`],onChange:l})}),(0,L.jsx)(`div`,{children:(0,L.jsx)(W,{onClick:()=>{a(`Clear All WebSocket Subscriptions`),s((0,L.jsxs)(K,{children:[(0,L.jsxs)(U,{children:[`Are you sure you want to completely clear`,` `,(0,L.jsx)(`strong`,{children:c?`WebSocket subscriptions for "${c.display??c.reference}"`:`ALL WebSocket subscriptions`}),`? Connected clients will need to re-bind their subscriptions.`]}),(0,L.jsx)(H,{align:`center`,children:(0,L.jsx)(W,{color:`red`,onClick:h,children:`Clear`})})]})),n()},children:`Clear All WebSocket Subscriptions`})})]}),(0,L.jsx)(ng,{opened:t,onClose:r,title:i,centered:!0,size:`auto`,children:o})]})}function NK(){let[e,t]=(0,b.useState)(`outdated`);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Tg,{id:`reindexType`,name:`reindexType`,value:e,onChange:e=>t(e.target.value),data:[{label:`Outdated resources`,value:`outdated`},{label:`All resources`,value:`all`},{label:`Less than or equal to a specific version`,value:`specific`}]}),e===`specific`&&(0,L.jsx)(N_,{required:!0,name:`maxResourceVersion`,placeholder:`Max Resource Version`,min:0})]})}function PK({onSubmit:e}){let[t,n]=(0,b.useState)(!1);function r(t){let n={};for(let[e,r]of Object.entries(t))r!==``&&(n[e]=r);e(n)}return(0,L.jsx)(UM,{onSubmit:r,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(XP,{title:`Resource Type`,htmlFor:`resourceType`,children:(0,L.jsx)(ab,{id:`resourceType`,name:`resourceType`,placeholder:`Reindex Resource Type`})}),(0,L.jsx)(XP,{title:`Search Filter`,htmlFor:`filter`,children:(0,L.jsx)(ab,{id:`filter`,name:`filter`,placeholder:`e.g. name=Sam&birthdate=lt2000-01-01`})}),(0,L.jsx)(XP,{title:`Max Resource Version`,htmlFor:`maxResourceVersion`,children:(0,L.jsx)(NK,{})}),(0,L.jsx)(W,{variant:`subtle`,size:`xs`,onClick:()=>n(!t),children:t?`Hide Advanced Options`:`Show Advanced Options`}),t&&(0,L.jsx)(K,{gap:`sm`,children:(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`batchSize`,label:`Resources per batch`,description:(0,L.jsx)(`span`,{children:`default: 500`}),placeholder:`500`,min:20,max:1e3})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`searchStatementTimeout`,label:`Search query timeout (ms)`,description:(0,L.jsx)(`span`,{children:`default: 3,600,000 (1 hour)`}),placeholder:`3600000`,min:1e3})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`upsertStatementTimeout`,label:`Upsert query timeout (ms)`,description:(0,L.jsx)(`span`,{children:"default: server `database.queryTimeout`"}),placeholder:`database.queryTimeout`,min:1e3})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`delayBetweenBatches`,label:`Delay between batches (ms)`,description:(0,L.jsx)(`span`,{children:`default: 0`}),placeholder:`0`,min:0,max:6e4})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`progressLogThreshold`,label:`Log progress every N resources`,description:(0,L.jsx)(`span`,{children:`default: 50,000`}),placeholder:`50000`,min:1})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`endTimestampBufferMinutes`,label:`End timestamp buffer (minutes)`,description:(0,L.jsx)(`span`,{children:`default: 5`}),placeholder:`5`,min:1})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`maxIterationAttempts`,label:`Max iteration attempts`,description:(0,L.jsx)(`span`,{children:`default: 3`}),placeholder:`3`,min:1,max:20})})]})}),(0,L.jsx)(W,{type:`submit`,children:`Reindex`})]})})}function FK({setModalTitle:e,setModalContent:t,openModal:n}){let r=Q(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(),f=(0,b.useMemo)(()=>{if(i?.reference)return{"_has:ProjectMembership:profile:project":i.reference}},[i]);(0,b.useEffect)(()=>{if(d(void 0),!o?.reference&&!i?.reference){l(void 0);return}r.searchResources(`ProjectMembership`,{profile:o?.reference,project:i?.reference,_count:20}).then(e=>{l(e),e.length===1&&d(WS(e[0]))}).catch(e=>{console.error(e),Y({color:`red`,message:Lx(e),autoClose:!1})})},[r,o,i]);let p=(0,b.useMemo)(()=>{let e={};return o?.reference&&(e.profile=o?.reference),i?.reference&&(e.project=i?.reference),e},[o,i]);function m(i){if(!i.query){Y({color:`red`,message:`Query is required`,autoClose:!1});return}let a=i.onBehalfOfProjectMembership;delete i.onBehalfOfProjectMembership;let o={query:i.query,analyze:i.analyze===`on`,count:i.count===`on`,format:`text`},s={};a&&(s[`x-medplum-on-behalf-of`]=a),r.post(`fhir/R4/$explain`,o,void 0,{headers:s}).then(r=>{e(`Database Explain`);let i=r.parameter?.find(e=>e.name===`explain`)?.valueString,a=r.parameter?.find(e=>e.name===`query`)?.valueString,o=r.parameter?.find(e=>e.name===`parameters`)?.valueString,s=r.parameter?.find(e=>e.name===`countEstimate`)?.valueInteger?.toLocaleString(),c=r.parameter?.find(e=>e.name===`countAccurate`)?.valueInteger?.toLocaleString(),l=[a,o,`
|
|
219
|
+
Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let u=NU(),d;if(t){let e=typeof t==`string`?IB(t):t;AB(c===`/`||e.pathname?.startsWith(c),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),d=e}else d=u;let f=d.pathname||`/`,p=f;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);p=`/`+f.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let m=JB(e,{pathname:p});jB(l||m!=null,`No routes matched location "${d.pathname}${d.search}${d.hash}" `),jB(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,`Matched leaf route at location "${d.pathname}${d.search}${d.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let h=XU(m&&m.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:CV([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:CV([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&h?b.createElement(CU.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,unstable_mask:void 0,...d},navigationType:`POP`}},h):h}function WU(){let e=aW(),t=OV(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=b.createElement(b.Fragment,null,b.createElement(`p`,null,`💿 Hey developer 👋`),b.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,b.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,b.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),b.createElement(b.Fragment,null,b.createElement(`h2`,null,`Unexpected Application Error!`),b.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?b.createElement(`pre`,{style:i},n):null,o)}var GU=b.createElement(WU,null),KU=class extends b.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=AU(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:b.createElement(wU.Provider,{value:this.props.routeContext},b.createElement(TU.Provider,{value:e,children:this.props.component}));return this.context?b.createElement(JU,{error:e},t):t}};KU.contextType=_U;var qU=new WeakMap;function JU({children:e,error:t}){let{basename:n}=b.useContext(SU);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=kU(t.digest);if(e){let r=qU.get(t);if(r)throw r;let i=jV(e.location,n);if(AV&&!qU.get(t))if(i.isExternal||e.reloadDocument)window.location.href=i.absoluteURL||i.to;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(i.to,{replace:e.replace}));throw qU.set(t,n),n}return b.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${i.absoluteURL||i.to}`})}}return e}function YU({routeContext:e,match:t,children:n}){let r=b.useContext(hU);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),b.createElement(wU.Provider,{value:e},n)}function XU(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);AB(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(s=e),t.route.id){let{loaderData:e,errors:a}=r,c=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!a||a[t.route.id]===void 0);if(t.route.lazy||c){n.isStatic&&(o=!0),i=s>=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,l=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},unstable_pattern:kV(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let u,d=!1,f=null,p=null;r&&(u=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||GU,o&&(s<0&&c===0?(cW(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=u?f:d?p:n.route.Component?b.createElement(n.route.Component,null):n.route.element?n.route.element:e,b.createElement(YU,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?b.createElement(KU,{location:r.location,revalidation:r.revalidation,component:f,error:u,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:l}):h()},null)}function ZU(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function QU(e){let t=b.useContext(hU);return AB(t,ZU(e)),t}function $U(e){let t=b.useContext(gU);return AB(t,ZU(e)),t}function eW(e){let t=b.useContext(wU);return AB(t,ZU(e)),t}function tW(e){let t=eW(e),n=t.matches[t.matches.length-1];return AB(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function nW(){return tW(`useRouteId`)}function rW(){return $U(`useNavigation`).navigation}function iW(){let{matches:e,loaderData:t}=$U(`useMatches`);return b.useMemo(()=>e.map(e=>XB(e,t)),[e,t])}function aW(){let e=b.useContext(TU),t=$U(`useRouteError`),n=tW(`useRouteError`);return e===void 0?t.errors?.[n]:e}function oW(){let{router:e}=QU(`useNavigate`),t=tW(`useNavigate`),n=b.useRef(!1);return FU(()=>{n.current=!0}),b.useCallback(async(r,i={})=>{jB(n.current,PU),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var sW={};function cW(e,t,n){!t&&!sW[e]&&(sW[e]=!0,jB(!1,n))}var lW={};function uW(e,t){!e&&!lW[t]&&(lW[t]=!0,console.warn(t))}var dW=b.useOptimistic,fW=()=>void 0;function pW(e){return dW?dW(e):[e,fW]}function mW(e){let t={hasErrorBoundary:e.hasErrorBoundary||e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&(e.element&&jB(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(t,{element:b.createElement(e.Component),Component:void 0})),e.HydrateFallback&&(e.hydrateFallbackElement&&jB(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(t,{hydrateFallbackElement:b.createElement(e.HydrateFallback),HydrateFallback:void 0})),e.ErrorBoundary&&(e.errorElement&&jB(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(t,{errorElement:b.createElement(e.ErrorBoundary),ErrorBoundary:void 0})),t}var hW=[`HydrateFallback`,`hydrateFallbackElement`],gW=class{constructor(){this.status=`pending`,this.promise=new Promise((e,t)=>{this.resolve=t=>{this.status===`pending`&&(this.status=`resolved`,e(t))},this.reject=e=>{this.status===`pending`&&(this.status=`rejected`,t(e))}})}};function _W({router:e,flushSync:t,onError:n,unstable_useTransitions:r}){r=vU()||r;let[i,a]=b.useState(e.state),[o,s]=pW(i),[c,l]=b.useState(),[u,d]=b.useState({isTransitioning:!1}),[f,p]=b.useState(),[m,h]=b.useState(),[g,_]=b.useState(),v=b.useRef(new Map),y=b.useCallback((i,{deletedFetchers:o,newErrors:c,flushSync:u,viewTransitionOpts:g})=>{c&&n&&Object.values(c).forEach(e=>n(e,{location:i.location,params:i.matches[0]?.params??{},unstable_pattern:kV(i.matches)})),i.fetchers.forEach((e,t)=>{e.data!==void 0&&v.current.set(t,e.data)}),o.forEach(e=>v.current.delete(e)),uW(u===!1||t!=null,'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let y=e.window!=null&&e.window.document!=null&&typeof e.window.document.startViewTransition==`function`;if(uW(g==null||y,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!g||!y){t&&u?t(()=>a(i)):r===!1?a(i):b.startTransition(()=>{r===!0&&s(e=>vW(e,i)),a(i)});return}if(t&&u){t(()=>{m&&(f?.resolve(),m.skipTransition()),d({isTransitioning:!0,flushSync:!0,currentLocation:g.currentLocation,nextLocation:g.nextLocation})});let n=e.window.document.startViewTransition(()=>{t(()=>a(i))});n.finished.finally(()=>{t(()=>{p(void 0),h(void 0),l(void 0),d({isTransitioning:!1})})}),t(()=>h(n));return}m?(f?.resolve(),m.skipTransition(),_({state:i,currentLocation:g.currentLocation,nextLocation:g.nextLocation})):(l(i),d({isTransitioning:!0,flushSync:!1,currentLocation:g.currentLocation,nextLocation:g.nextLocation}))},[e.window,t,m,f,r,s,n]);b.useLayoutEffect(()=>e.subscribe(y),[e,y]),b.useEffect(()=>{u.isTransitioning&&!u.flushSync&&p(new gW)},[u]),b.useEffect(()=>{if(f&&c&&e.window){let t=c,n=f.promise,i=e.window.document.startViewTransition(async()=>{r===!1?a(t):b.startTransition(()=>{r===!0&&s(e=>vW(e,t)),a(t)}),await n});i.finished.finally(()=>{p(void 0),h(void 0),l(void 0),d({isTransitioning:!1})}),h(i)}},[c,f,e.window,r,s]),b.useEffect(()=>{f&&c&&o.location.key===c.location.key&&f.resolve()},[f,m,o.location,c]),b.useEffect(()=>{!u.isTransitioning&&g&&(l(g.state),d({isTransitioning:!0,flushSync:!1,currentLocation:g.currentLocation,nextLocation:g.nextLocation}),_(void 0))},[u.isTransitioning,g]);let x=b.useMemo(()=>({createHref:e.createHref,encodeLocation:e.encodeLocation,go:t=>e.navigate(t),push:(t,n,r)=>e.navigate(t,{state:n,preventScrollReset:r?.preventScrollReset}),replace:(t,n,r)=>e.navigate(t,{replace:!0,state:n,preventScrollReset:r?.preventScrollReset})}),[e]),S=e.basename||`/`,C=b.useMemo(()=>({router:e,navigator:x,static:!1,basename:S,onError:n}),[e,x,S,n]);return b.createElement(b.Fragment,null,b.createElement(hU.Provider,{value:C},b.createElement(gU.Provider,{value:o},b.createElement(bU.Provider,{value:v.current},b.createElement(yU.Provider,{value:u},b.createElement(CW,{basename:S,location:o.location,navigationType:o.historyAction,navigator:x,unstable_useTransitions:r},b.createElement(yW,{routes:e.routes,future:e.future,state:o,isStatic:!1,onError:n})))))),null)}function vW(e,t){return{...e,navigation:t.navigation.state===`idle`?e.navigation:t.navigation,revalidation:t.revalidation===`idle`?e.revalidation:t.revalidation,actionData:t.navigation.state===`submitting`?e.actionData:t.actionData,fetchers:t.fetchers}}var yW=b.memo(bW);function bW({routes:e,future:t,state:n,isStatic:r,onError:i}){return UU(e,void 0,{state:n,isStatic:r,onError:i,future:t})}function xW({to:e,replace:t,state:n,relative:r}){AB(MU(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:i}=b.useContext(SU);jB(!i,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:a}=b.useContext(wU),{pathname:o}=NU(),s=IU(),c=SV(e,xV(a),o,r===`path`),l=JSON.stringify(c);return b.useEffect(()=>{s(JSON.parse(l),{replace:t,state:n,relative:r})},[s,l,r,t,n]),null}function SW(e){return zU(e.context)}function $(e){AB(!1,`A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.`)}function CW({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,unstable_useTransitions:o}){AB(!MU(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=b.useMemo(()=>({basename:s,navigator:i,static:a,unstable_useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=IB(n));let{pathname:l=`/`,search:u=``,hash:d=``,state:f=null,key:p=`default`,unstable_mask:m}=n,h=b.useMemo(()=>{let e=pV(l,s);return e==null?null:{location:{pathname:e,search:u,hash:d,state:f,key:p,unstable_mask:m},navigationType:r}},[s,l,u,d,f,p,r,m]);return jB(h!=null,`<Router basename="${s}"> is not able to match the URL "${l}${u}${d}" because it does not start with the basename, so the <Router> won't render anything.`),h==null?null:b.createElement(SU.Provider,{value:c},b.createElement(CU.Provider,{children:t,value:h}))}function wW({children:e,location:t}){return HU(TW(e),t)}b.Component;function TW(e,t=[]){let n=[];return b.Children.forEach(e,(e,r)=>{if(!b.isValidElement(e))return;let i=[...t,r];if(e.type===b.Fragment){n.push.apply(n,TW(e.props.children,i));return}AB(e.type===$,`[${typeof e.type==`string`?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),AB(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=TW(e.props.children,i)),n.push(a)}),n}var EW=`get`,DW=`application/x-www-form-urlencoded`;function OW(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function kW(e){return OW(e)&&e.tagName.toLowerCase()===`button`}function AW(e){return OW(e)&&e.tagName.toLowerCase()===`form`}function jW(e){return OW(e)&&e.tagName.toLowerCase()===`input`}function MW(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function NW(e,t){return e.button===0&&(!t||t===`_self`)&&!MW(e)}function PW(e=``){return new URLSearchParams(typeof e==`string`||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(e=>[n,e]):[[n,r]])},[]))}function FW(e,t){let n=PW(e);return t&&t.forEach((e,r)=>{n.has(r)||t.getAll(r).forEach(e=>{n.append(r,e)})}),n}var IW=null;function LW(){if(IW===null)try{new FormData(document.createElement(`form`),0),IW=!1}catch{IW=!0}return IW}var RW=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function zW(e){return e!=null&&!RW.has(e)?(jB(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${DW}"`),null):e}function BW(e,t){let n,r,i,a,o;if(AW(e)){let o=e.getAttribute(`action`);r=o?pV(o,t):null,n=e.getAttribute(`method`)||EW,i=zW(e.getAttribute(`enctype`))||DW,a=new FormData(e)}else if(kW(e)||jW(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?pV(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||EW,i=zW(e.getAttribute(`formenctype`))||zW(o.getAttribute(`enctype`))||DW,a=new FormData(o,e),!LW()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(OW(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=EW,r=null,i=DW,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);var VW={"&":`\\u0026`,">":`\\u003e`,"<":`\\u003c`,"\u2028":`\\u2028`,"\u2029":`\\u2029`},HW=/[&><\u2028\u2029]/g;function UW(e){return e.replace(HW,e=>VW[e])}function WW(e,t){if(e===!1||e==null)throw Error(t)}function GW(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return n?i.pathname.endsWith(`/`)?i.pathname=`${i.pathname}_.${r}`:i.pathname=`${i.pathname}.${r}`:i.pathname===`/`?i.pathname=`_root.${r}`:t&&pV(i.pathname,t)===`/`?i.pathname=`${t.replace(/\/$/,``)}/_root.${r}`:i.pathname=`${i.pathname.replace(/\/$/,``)}.${r}`,i}async function KW(e,t){if(e.id in t)return t[e.id];try{let n=await SB(()=>import(e.module),[]);return t[e.id]=n,n}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function qW(e){return e!=null&&typeof e.page==`string`}function JW(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function YW(e,t,n){return eG((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await KW(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(JW).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function XW(e,t,n,r,i,a){let o=(e,t)=>n[t]?e.route.id!==n[t].route.id:!0,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function ZW(e,t,{includeHydrateFallback:n}={}){return QW(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function QW(e){return[...new Set(e)]}function $W(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function eG(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!qW(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify($W(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function tG(){let e=b.useContext(hU);return WW(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function nG(){let e=b.useContext(gU);return WW(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}var rG=b.createContext(void 0);rG.displayName=`FrameworkContext`;function iG(){let e=b.useContext(rG);return WW(e,`You must render this element inside a <HydratedRouter> element`),e}function aG(e,t){let n=b.useContext(rG),[r,i]=b.useState(!1),[a,o]=b.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:l,onMouseLeave:u,onTouchStart:d}=t,f=b.useRef(null);b.useEffect(()=>{if(e===`render`&&o(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{o(e.isIntersecting)})},{threshold:.5});return f.current&&e.observe(f.current),()=>{e.disconnect()}}},[e]),b.useEffect(()=>{if(r){let e=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(e)}}},[r]);let p=()=>{i(!0)},m=()=>{i(!1),o(!1)};return n?e===`intent`?[a,f,{onFocus:oG(s,p),onBlur:oG(c,m),onMouseEnter:oG(l,p),onMouseLeave:oG(u,m),onTouchStart:oG(d,p)}]:[a,f,{}]:[!1,f,{}]}function oG(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function sG({page:e,...t}){let n=vU(),{router:r}=tG(),i=b.useMemo(()=>JB(r.routes,e,r.basename),[r.routes,e,r.basename]);return i?n?b.createElement(lG,{page:e,matches:i,...t}):b.createElement(uG,{page:e,matches:i,...t}):null}function cG(e){let{manifest:t,routeModules:n}=iG(),[r,i]=b.useState([]);return b.useEffect(()=>{let r=!1;return YW(e,t,n).then(e=>{r||i(e)}),()=>{r=!0}},[e,t,n]),r}function lG({page:e,matches:t,...n}){let r=NU(),{future:i}=iG(),{basename:a}=tG(),o=b.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=GW(e,a,i.unstable_trailingSlashAwareDataRequests,`rsc`),o=!1,s=[];for(let e of t)typeof e.route.shouldRevalidate==`function`?o=!0:s.push(e.route.id);return o&&s.length>0&&n.searchParams.set(`_routes`,s.join(`,`)),[n.pathname+n.search]},[a,i.unstable_trailingSlashAwareDataRequests,e,r,t]);return b.createElement(b.Fragment,null,o.map(e=>b.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})))}function uG({page:e,matches:t,...n}){let r=NU(),{future:i,manifest:a,routeModules:o}=iG(),{basename:s}=tG(),{loaderData:c,matches:l}=nG(),u=b.useMemo(()=>XW(e,t,l,a,r,`data`),[e,t,l,a,r]),d=b.useMemo(()=>XW(e,t,l,a,r,`assets`),[e,t,l,a,r]),f=b.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=new Set,l=!1;if(t.forEach(e=>{let t=a.routes[e.route.id];!t||!t.hasLoader||(!u.some(t=>t.route.id===e.route.id)&&e.route.id in c&&o[e.route.id]?.shouldRevalidate||t.hasClientLoader?l=!0:n.add(e.route.id))}),n.size===0)return[];let d=GW(e,s,i.unstable_trailingSlashAwareDataRequests,`data`);return l&&n.size>0&&d.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[d.pathname+d.search]},[s,i.unstable_trailingSlashAwareDataRequests,c,r,a,u,t,e,o]),p=b.useMemo(()=>ZW(d,a),[d,a]),m=cG(d);return b.createElement(b.Fragment,null,f.map(e=>b.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),p.map(e=>b.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),m.map(({key:e,link:t})=>b.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function dG(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}b.Component;var fG=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{fG&&(window.__reactRouterVersion=`7.14.0`)}catch{}function pG(e,t){return tH({basename:t?.basename,getContext:t?.getContext,future:t?.future,history:kB({window:t?.window}),hydrationData:t?.hydrationData||mG(),routes:e,mapRouteProperties:mW,hydrationRouteProperties:hW,dataStrategy:t?.dataStrategy,patchRoutesOnNavigation:t?.patchRoutesOnNavigation,window:t?.window,unstable_instrumentations:t?.unstable_instrumentations}).initialize()}function mG(){let e=window?.__staticRouterHydrationData;return e&&e.errors&&(e={...e,errors:hG(e.errors)}),e}function hG(e){if(!e)return null;let t=Object.entries(e),n={};for(let[e,r]of t)if(r&&r.__type===`RouteErrorResponse`)n[e]=new DV(r.status,r.statusText,r.data,r.internal===!0);else if(r&&r.__type===`Error`){if(r.__subType){let t=window[r.__subType];if(typeof t==`function`)try{let i=new t(r.message);i.stack=``,n[e]=i}catch{}}if(n[e]==null){let t=Error(r.message);t.stack=``,n[e]=t}}else n[e]=r;return n}function gG({basename:e,children:t,history:n,unstable_useTransitions:r}){let[i,a]=b.useState({action:n.action,location:n.location}),o=b.useCallback(e=>{r===!1?a(e):b.startTransition(()=>a(e))},[r]);return b.useLayoutEffect(()=>n.listen(o),[n,o]),b.createElement(CW,{basename:e,children:t,location:i.location,navigationType:i.action,navigator:n,unstable_useTransitions:r})}gG.displayName=`unstable_HistoryRouter`;var _G=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,vG=b.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:r,reloadDocument:i,replace:a,unstable_mask:o,state:s,target:c,to:l,preventScrollReset:u,viewTransition:d,unstable_defaultShouldRevalidate:f,...p},m){let{basename:h,navigator:g,unstable_useTransitions:_}=b.useContext(SU),v=typeof l==`string`&&_G.test(l),y=jV(l,h);l=y.to;let x=jU(l,{relative:r}),S=NU(),C=null;if(o){let e=SV(o,[],S.unstable_mask?S.unstable_mask.pathname:`/`,!0);h!==`/`&&(e.pathname=e.pathname===`/`?h:CV([h,e.pathname])),C=g.createHref(e)}let[w,T,E]=aG(n,p),D=TG(l,{replace:a,unstable_mask:o,state:s,target:c,preventScrollReset:u,relative:r,viewTransition:d,unstable_defaultShouldRevalidate:f,unstable_useTransitions:_});function O(t){e&&e(t),t.defaultPrevented||D(t)}let k=!(y.isExternal||i),A=b.createElement(`a`,{...p,...E,href:(k?C:void 0)||y.absoluteURL||x,onClick:k?O:e,ref:dG(m,T),target:c,"data-discover":!v&&t===`render`?`true`:void 0});return w&&!v?b.createElement(b.Fragment,null,A,b.createElement(sG,{page:x})):A});vG.displayName=`Link`;var yG=b.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:a,viewTransition:o,children:s,...c},l){let u=VU(a,{relative:c.relative}),d=NU(),f=b.useContext(gU),{navigator:p,basename:m}=b.useContext(SU),h=f!=null&&IG(u)&&o===!0,g=p.encodeLocation?p.encodeLocation(u).pathname:u.pathname,_=d.pathname,v=f&&f.navigation&&f.navigation.location?f.navigation.location.pathname:null;t||(_=_.toLowerCase(),v=v?v.toLowerCase():null,g=g.toLowerCase()),v&&m&&(v=pV(v,m)||v);let y=g!==`/`&&g.endsWith(`/`)?g.length-1:g.length,x=_===g||!r&&_.startsWith(g)&&_.charAt(y)===`/`,S=v!=null&&(v===g||!r&&v.startsWith(g)&&v.charAt(g.length)===`/`),C={isActive:x,isPending:S,isTransitioning:h},w=x?e:void 0,T;T=typeof n==`function`?n(C):[n,x?`active`:null,S?`pending`:null,h?`transitioning`:null].filter(Boolean).join(` `);let E=typeof i==`function`?i(C):i;return b.createElement(vG,{...c,"aria-current":w,className:T,ref:l,style:E,to:a,viewTransition:o},typeof s==`function`?s(C):s)});yG.displayName=`NavLink`;var bG=b.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=EW,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,unstable_defaultShouldRevalidate:f,...p},m)=>{let{unstable_useTransitions:h}=b.useContext(SU),g=kG(),_=AG(s,{relative:l}),v=o.toLowerCase()===`get`?`get`:`post`,y=typeof s==`string`&&_G.test(s);return b.createElement(`form`,{ref:m,method:v,action:_,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>g(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,unstable_defaultShouldRevalidate:f});h&&n!==!1?b.startTransition(()=>p()):p()},...p,"data-discover":!y&&e===`render`?`true`:void 0})});bG.displayName=`Form`;function xG({getKey:e,storageKey:t,...n}){let r=b.useContext(rG),{basename:i}=b.useContext(SU),a=NU(),o=iW();PG({getKey:e,storageKey:t});let s=b.useMemo(()=>{if(!r||!e)return null;let t=NG(a,o,i,e);return t===a.key?null:t},[]);if(!r||r.isSpaMode)return null;let c=((e,t)=>{if(!window.history.state||!window.history.state.key){let e=Math.random().toString(32).slice(2);window.history.replaceState({key:e},``)}try{let n=JSON.parse(sessionStorage.getItem(e)||`{}`)[t||window.history.state.key];typeof n==`number`&&window.scrollTo(0,n)}catch(t){console.error(t),sessionStorage.removeItem(e)}}).toString();return b.createElement(`script`,{...n,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${c})(${UW(JSON.stringify(t||jG))}, ${UW(JSON.stringify(s))})`}})}xG.displayName=`ScrollRestoration`;function SG(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function CG(e){let t=b.useContext(hU);return AB(t,SG(e)),t}function wG(e){let t=b.useContext(gU);return AB(t,SG(e)),t}function TG(e,{target:t,replace:n,unstable_mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,unstable_defaultShouldRevalidate:c,unstable_useTransitions:l}={}){let u=IU(),d=NU(),f=VU(e,{relative:o});return b.useCallback(p=>{if(NW(p,t)){p.preventDefault();let t=n===void 0?FB(d)===FB(f):n,m=()=>u(e,{replace:t,unstable_mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,unstable_defaultShouldRevalidate:c});l?b.startTransition(()=>m()):m()}},[d,u,f,n,r,i,t,e,a,o,s,c,l])}function EG(e){jB(typeof URLSearchParams<`u`,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=b.useRef(PW(e)),n=b.useRef(!1),r=NU(),i=b.useMemo(()=>FW(r.search,n.current?null:t.current),[r.search]),a=IU();return[i,b.useCallback((e,t)=>{let r=PW(typeof e==`function`?e(new URLSearchParams(i)):e);n.current=!0,a(`?`+r,t)},[a,i])]}var DG=0,OG=()=>`__${String(++DG)}__`;function kG(){let{router:e}=CG(`useSubmit`),{basename:t}=b.useContext(SU),n=nW(),r=e.fetch,i=e.navigate;return b.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=BW(e,t);a.navigate===!1?await r(a.fetcherKey||OG(),n,a.action||o,{unstable_defaultShouldRevalidate:a.unstable_defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync}):await i(a.action||o,{unstable_defaultShouldRevalidate:a.unstable_defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function AG(e,{relative:t}={}){let{basename:n}=b.useContext(SU),r=b.useContext(wU);AB(r,`useFormAction must be used inside a RouteContext`);let[i]=r.matches.slice(-1),a={...VU(e||`.`,{relative:t})},o=NU();if(e==null){a.search=o.search;let e=new URLSearchParams(a.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();a.search=n?`?${n}`:``}}return(!e||e===`.`)&&i.route.index&&(a.search=a.search?a.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(a.pathname=a.pathname===`/`?n:CV([n,a.pathname])),FB(a)}var jG=`react-router-scroll-positions`,MG={};function NG(e,t,n,r){let i=null;return r&&(i=r(n===`/`?e:{...e,pathname:pV(e.pathname,n)||e.pathname},t)),i??=e.key,i}function PG({getKey:e,storageKey:t}={}){let{router:n}=CG(`useScrollRestoration`),{restoreScrollPosition:r,preventScrollReset:i}=wG(`useScrollRestoration`),{basename:a}=b.useContext(SU),o=NU(),s=iW(),c=rW();b.useEffect(()=>(window.history.scrollRestoration=`manual`,()=>{window.history.scrollRestoration=`auto`}),[]),FG(b.useCallback(()=>{if(c.state===`idle`){let t=NG(o,s,a,e);MG[t]=window.scrollY}try{sessionStorage.setItem(t||jG,JSON.stringify(MG))}catch(e){jB(!1,`Failed to save scroll positions in sessionStorage, <ScrollRestoration /> will not work properly (${e}).`)}window.history.scrollRestoration=`auto`},[c.state,e,a,o,s,t])),typeof document<`u`&&(b.useLayoutEffect(()=>{try{let e=sessionStorage.getItem(t||jG);e&&(MG=JSON.parse(e))}catch{}},[t]),b.useLayoutEffect(()=>{let t=n?.enableScrollRestoration(MG,()=>window.scrollY,e?(t,n)=>NG(t,n,a,e):void 0);return()=>t&&t()},[n,a,e]),b.useLayoutEffect(()=>{if(r!==!1){if(typeof r==`number`){window.scrollTo(0,r);return}try{if(o.hash){let e=document.getElementById(decodeURIComponent(o.hash.slice(1)));if(e){e.scrollIntoView();return}}}catch{jB(!1,`"${o.hash.slice(1)}" is not a decodable element ID. The view will not scroll to it.`)}i!==!0&&window.scrollTo(0,0)}},[o,r,i]))}function FG(e,t){let{capture:n}=t||{};b.useEffect(()=>{let t=n==null?void 0:{capture:n};return window.addEventListener(`pagehide`,e,t),()=>{window.removeEventListener(`pagehide`,e,t)}},[e,n])}function IG(e,{relative:t}={}){let n=b.useContext(yU);AB(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=CG(`useViewTransitionState`),i=VU(e,{relative:t});if(!n.isTransitioning)return!1;let a=pV(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=pV(n.nextLocation.pathname,r)||n.nextLocation.pathname;return uV(i.pathname,o)!=null||uV(i.pathname,a)!=null}var LG=vB();function RG(e){if(e.resourceType===`Patient`)return e;if(e.resourceType===`DiagnosticReport`||e.resourceType===`Encounter`||e.resourceType===`Observation`||e.resourceType===`ServiceRequest`)return e.subject}function zG(e){if(e.resourceType===`Specimen`)return e;if(e.resourceType===`Observation`)return e.specimen;if(e.resourceType===`DiagnosticReport`||e.resourceType===`ServiceRequest`)return e.specimen?.[0]}function BG(e){return KS(e.getActiveLogin()?.project)}function VG(e){let t=BG(Q()),n=IU(),[r,i]=(0,b.useState)(e.profileTypeOptions[0].value),[a,o]=(0,b.useState)({resourceType:`ProjectMembership`,filters:[{code:`project`,operator:Z.EQUALS,value:`Project/`+t},{code:`profile-type`,operator:Z.EQUALS,value:r}],fields:e.fields,count:100});function s(e){i(e),o({...a,filters:[{code:`project`,operator:Z.EQUALS,value:`Project/`+t},{code:`profile-type`,operator:Z.EQUALS,value:e}]})}return(0,L.jsxs)(L.Fragment,{children:[e.profileTypeOptions.length>1&&(0,L.jsxs)(H,{justify:`space-between`,align:`center`,mb:`md`,wrap:`nowrap`,children:[(0,L.jsxs)(H,{gap:`md`,wrap:`nowrap`,children:[(0,L.jsx)(ey,{value:r,onChange:s,data:e.profileTypeOptions}),e.toolbarLeft]}),e.toolbarRight]}),(0,L.jsx)(OR,{search:a,onClick:e=>n(`./${e.resource.id}`),onChange:e=>o(e.definition),hideFilters:!0,hideToolbar:!0})]})}function HG(){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Bots`}),(0,L.jsx)(VG,{profileTypeOptions:[{label:`Bot`,value:`Bot`}],fields:[`user`,`profile`,`accessPolicy`,`userConfiguration`,`active`,`admin`]}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(Sj,{to:`/admin/bots/new`,children:`Create new bot`})})]})}function UG(){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Client Applications`}),(0,L.jsx)(VG,{profileTypeOptions:[{label:`ClientApplication`,value:`ClientApplication`}],fields:[`user`,`profile`,`accessPolicy`,`userConfiguration`,`active`,`admin`]}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(Sj,{to:`/admin/clients/new`,children:`Create new client`})})]})}function WG(e){return(0,L.jsx)(EF,{resourceType:`AccessPolicy`,name:e.name,defaultValue:e.defaultValue,placeholder:`Access Policy`,onChange:t=>{Dw(t)?e.onChange(WS(t)):e.onChange(void 0)}})}function GG(){let e=Q(),t=BG(e),[n,r]=(0,b.useState)(``),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(void 0);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Create new Bot`}),(0,L.jsxs)(GM,{onSubmit:()=>{let r={name:n,description:i,accessPolicy:o};e.post(`admin/projects/`+t+`/bot`,r).then(t=>{e.invalidateSearches(`Bot`),e.invalidateSearches(`ProjectMembership`),d(t),Y({color:`green`,message:`Bot created`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1}),l(Ix(e))})},children:[!u&&(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Name`,htmlFor:`name`,outcome:c,children:(0,L.jsx)(ab,{id:`name`,name:`name`,required:!0,autoFocus:!0,onChange:e=>r(e.currentTarget.value),error:VN(c,`name`)})}),(0,L.jsx)(QP,{title:`Description`,htmlFor:`description`,outcome:c,children:(0,L.jsx)(ab,{id:`description`,name:`description`,onChange:e=>a(e.currentTarget.value),error:VN(c,`description`)})}),(0,L.jsx)(QP,{title:`Access Policy`,htmlFor:`accessPolicy`,outcome:c,children:(0,L.jsx)(WG,{name:`accessPolicy`,onChange:s})}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{type:`submit`,children:`Create Bot`})})]}),u&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(U,{children:`Bot created`}),(0,L.jsxs)(vh,{children:[(0,L.jsx)(vh.Item,{children:(0,L.jsx)(Sj,{to:u,children:`Go to new bot`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(Sj,{to:`/admin/bots`,children:`Back to bots list`})})]})]})]})]})}function KG(){let e=Q(),t=BG(e),[n,r]=(0,b.useState)(``),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(``),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(),[f,p]=(0,b.useState)(void 0);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Create new Client`}),(0,L.jsxs)(GM,{onSubmit:()=>{let r={name:n,description:i,redirectUri:o,accessPolicy:c};e.post(`admin/projects/`+t+`/client`,r).then(t=>{e.invalidateSearches(`ClientApplication`),e.invalidateSearches(`ProjectMembership`),p(t),Y({color:`green`,message:`Client created`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1}),d(Ix(e))})},children:[!f&&(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Name`,htmlFor:`name`,outcome:u,children:(0,L.jsx)(ab,{id:`name`,name:`name`,required:!0,autoFocus:!0,onChange:e=>r(e.currentTarget.value),error:VN(u,`name`)})}),(0,L.jsx)(QP,{title:`Description`,htmlFor:`description`,outcome:u,children:(0,L.jsx)(ab,{id:`description`,name:`description`,onChange:e=>a(e.currentTarget.value),error:VN(u,`description`)})}),(0,L.jsx)(QP,{title:`Redirect URI`,htmlFor:`redirectUri`,outcome:u,children:(0,L.jsx)(ab,{id:`redirectUri`,name:`redirectUri`,onChange:e=>s(e.currentTarget.value),error:VN(u,`redirectUri`)})}),(0,L.jsx)(QP,{title:`Access Policy`,htmlFor:`accessPolicy`,outcome:u,children:(0,L.jsx)(WG,{name:`accessPolicy`,onChange:l})}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{type:`submit`,children:`Create Client`})})]}),f&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(U,{children:`Client created`}),(0,L.jsxs)(vh,{children:[(0,L.jsx)(vh.Item,{children:(0,L.jsx)(Sj,{to:f,children:`Go to new client`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(Sj,{to:`/admin/clients`,children:`Back to clients list`})})]})]})]})]})}var qG=1e-10;function JG(e,t){let n=0,r=Math.exp(-t);for(let i=0;i<=e;i++)i>0&&(r*=t/i),n+=r;return n}function YG(e,t,n=qG){let r=0,i=Math.max(t+1,1);for(;JG(t,i)>e;)i*=2;for(;i-r>n;){let n=(r+i)/2;JG(t,n)>e?r=n:i=n}return i}function XG(e,t,n,r){let i=e*300,a=9*t*i/(e*10*1e3/7),o=Math.ceil(a),s=o/i,c=Math.max(r??0,s),l=r?c*i:o,u=l,d=JG(l-1,u),f=Math.log(1-n)/Math.log(d);return{rowsSampled:i,cutoffFrequencyExact:a,cutoffFrequency:o,minimumSelectivity:s,targetSelectivity:c,targetLambda:u,targetPoissonCdf:d,targetM:f,results:[{name:`Floor`,result:ZG(Math.floor(f),n,l,i)},{name:`Ceiling`,result:ZG(Math.ceil(f),n,l,i)}]}}function ZG(e,t,n,r){let i=(1-t)**(1/e),a=YG(i,n-1);return{m:e,poissonCdf:i,lambda:a,f:a/r}}function QG(e,t=`auto`,n=6){return Number.isFinite(e)?t===`scientific`?e.toExponential(n):t===`fixed`?e.toFixed(n):Math.abs(e)<1e-4&&e!==0?e.toExponential(n):Math.abs(e-Math.round(e))<1e-10?Math.round(e).toString():e.toPrecision(8):String(e)}function $G({label:e,value:t,format:n=`auto`,decimals:r=6}){return(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:8,children:(0,L.jsx)(U,{size:`sm`,children:e})}),(0,L.jsx)(wm.Col,{span:4,children:(0,L.jsx)(U,{size:`sm`,ff:`monospace`,ta:`right`,children:QG(t,n,r)})})]})}function eK({title:e,m:t,poissonCdf:n,lambda:r,f:i}){return(0,L.jsxs)(vl,{withBorder:!0,p:`md`,children:[(0,L.jsx)(J,{order:4,mb:`sm`,children:e}),(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)($G,{label:`M (padding multiplier)`,value:t}),(0,L.jsx)($G,{label:`Poisson CDF`,value:n}),(0,L.jsx)($G,{label:`Lambda`,value:r}),(0,L.jsx)($G,{label:`F (selectivity)`,value:i,format:`scientific`})]})]})}function tK(){let[e,t]=(0,b.useState)(1e3),[n,r]=(0,b.useState)(3),[i,a]=(0,b.useState)(.999999),[o,s]=(0,b.useState)(``),c=(0,b.useMemo)(()=>{let t=typeof e==`number`?e:void 0,r=typeof n==`number`?n:void 0,a=typeof i==`number`?i:void 0,s=typeof o==`number`?o:void 0;if(!(t===void 0||r===void 0||a===void 0))return XG(t,r,a,s)},[e,n,i,o]);return(0,L.jsxs)(K,{gap:`lg`,children:[(0,L.jsxs)(vl,{withBorder:!0,p:`md`,children:[(0,L.jsx)(J,{order:4,mb:`md`,children:`Inputs`}),(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Statistics Target`,value:e,onChange:t,min:100,max:1e4,step:100})}),(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Elements Per Row`,value:n,onChange:r,min:1,max:1e3,step:1})}),(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Confidence`,value:i,onChange:a,min:0,max:1,step:1e-6,decimalScale:10})}),(0,L.jsx)(wm.Col,{span:{base:12,sm:6,md:3},children:(0,L.jsx)(N_,{label:`Target Selectivity (optional)`,description:`Overrides minimum selectivity`,value:o,onChange:s,min:0,max:1,step:1e-5,decimalScale:10,placeholder:c?QG(c.minimumSelectivity,`scientific`):``})})]})]}),c&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{withBorder:!0,p:`md`,children:[(0,L.jsx)(J,{order:4,mb:`sm`,children:`Intermediate Values`}),(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:{base:12,md:6},children:(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)($G,{label:`Rows Sampled`,value:c.rowsSampled}),(0,L.jsx)($G,{label:`Cutoff Frequency (exact)`,value:c.cutoffFrequencyExact}),(0,L.jsx)($G,{label:`Cutoff Frequency`,value:c.cutoffFrequency}),(0,L.jsx)($G,{label:`Min Selectivity`,value:c.minimumSelectivity,format:`scientific`})]})}),(0,L.jsx)(wm.Col,{span:{base:12,md:6},children:(0,L.jsxs)(K,{gap:`xs`,children:[(0,L.jsx)($G,{label:`Target Selectivity`,value:c.targetSelectivity,format:`scientific`}),(0,L.jsx)($G,{label:`Target Lambda`,value:c.targetLambda}),(0,L.jsx)($G,{label:`Target Poisson CDF`,value:c.targetPoissonCdf}),(0,L.jsx)($G,{label:`Target m`,value:c.targetM})]})})]})]}),(0,L.jsx)(wm,{children:c.results.map(({name:e,result:t})=>(0,L.jsx)(wm.Col,{span:{base:12,md:6},children:(0,L.jsx)(eK,{title:`${e} Option`,m:t.m,poissonCdf:t.poissonCdf,lambda:t.lambda,f:t.f})},e))})]})]})}var nK=8;function rK({inputProps:e,data:t,onChange:n}){let r=Ff({onDropdownClose:()=>r.resetSelectedOption()}),[i,a]=(0,b.useState)(null),[o,s]=(0,b.useState)(``),c=(0,b.useMemo)(()=>t.filter(e=>e.toLowerCase().includes(o.toLowerCase().trim())),[t,o]),l=(0,b.useMemo)(()=>{let e=Array(Math.min(c.length,nK));for(let t=0;t<e.length;t++){let n=c[t];e[t]=(0,L.jsx)(Rf.Option,{value:n,children:n},n)}return e},[c]);return(0,L.jsxs)(Rf,{store:r,withinPortal:!1,onOptionSubmit:e=>{n&&n(e),a(e),s(e),r.closeDropdown()},children:[(0,L.jsx)(Rf.Target,{children:(0,L.jsx)(pd,{rightSection:(0,L.jsx)(Rf.Chevron,{}),value:o,onChange:e=>{r.openDropdown(),r.updateSelectedOptionIndex(),s(e.currentTarget.value)},onClick:()=>r.openDropdown(),onFocus:()=>r.openDropdown(),onBlur:()=>{r.closeDropdown(),s(i||``)},rightSectionPointerEvents:`none`,...e})}),(0,L.jsx)(Rf.Dropdown,{children:(0,L.jsx)(Rf.Options,{children:l.length>0?l:(0,L.jsx)(Rf.Empty,{children:`Nothing found`})})})]})}function iK(e){let t=[];for(let n of e)t.push(n),t.push(n+`_History`),t.push(n+`_References`);return t.push(`Address`),t.push(`ContactPoint`),t.push(`HumanName`),t.push(`Coding`),t.push(`Coding_Property`),t.push(`DatabaseMigration`),t=IC(t),t}function aK(e){return typeof e==`string`?e.length>50?e.substring(0,50)+`...`:e:typeof e==`boolean`?e.toString().toLocaleUpperCase():e}var oK=({medplum:e,onChange:t,onError:n})=>{(0,b.useEffect)(()=>{async function r(){return(await e.valueSetExpand({url:`https://medplum.com/fhir/ValueSet/resource-types`,count:200})).expansion?.contains?.map(e=>e.code).filter(e=>e!==void 0)??[]}r().then(e=>{t(iK(e))}).catch(e=>{n?n(e):console.error(e)})},[e,t,n])};function sK(){let e=Q(),[t,{open:n,close:r}]=yn(!1),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(void 0),[u,d]=(0,b.useState)(0),[f,p]=(0,b.useState)(!1),[m,h]=(0,b.useState)([]),[g,_]=(0,b.useState)([]),[v,y]=(0,b.useState)(!1),[x,S]=(0,b.useState)(void 0),[C,w]=(0,b.useState)([]),[T,E]=(0,b.useState)(0),[D,O]=(0,b.useState)(!1),[k,A]=(0,b.useState)(!1);oK({medplum:e,onChange:w}),(0,b.useEffect)(()=>{p(!0),e.get(`fhir/R4/$db-column-statistics?tableName=`+encodeURIComponent(c??``),{cache:`no-cache`}).then(e=>{d(e.parameter?.find(e=>e.name===`defaultStatisticsTarget`)?.valueInteger??0);let t=(e.parameter?.find(e=>e.name===`table`)?.part)?.filter(e=>e.name===`column`);h(t??[])}).finally(()=>{p(!1)}).catch(e=>{Y({color:`red`,message:e.message})})},[e,c,T]);function j(){if(c){if(g.length===0){Y({color:`red`,message:`No columns selected`,autoClose:!0});return}Y({title:`Submit`,message:JSON.stringify({resetToDefault:v,newStatisticsTarget:x,selectedRowNames:g}),autoClose:!0}),e.post(`fhir/R4/$db-configure-column-statistics`,{tableName:c,columnNames:g,resetToDefault:v,newStatisticsTarget:v?void 0:x}).then(e=>{Y({color:`green`,message:`Done`}),E(e=>e+1)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}}let M={onClick:e=>{a(`Details`),s((0,L.jsx)(`pre`,{children:e})),n()}},N=0;return(0,L.jsxs)(GM,{onSubmit:j,children:[(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsxs)(H,{children:[(0,L.jsx)(rK,{data:C,inputProps:{placeholder:`Table name`,inputSize:`50`},onChange:e=>{l(e),_([])}}),(0,L.jsx)(W,{loading:f,onClick:()=>E(e=>e+1),children:`Refresh`})]}),(0,L.jsxs)(H,{children:[(0,L.jsx)(U,{span:!0,fw:700,children:`Statistics Target:`}),(0,L.jsx)(N_,{value:v?``:x,disabled:v,required:!v,size:`sm`,w:`100`,min:0,step:100,max:1e4,onChange:e=>{typeof e==`number`&&S(e)}}),(0,L.jsx)(U,{span:!0,fw:700,c:`dimmed`,children:`– or –`}),(0,L.jsx)(cp,{checked:v,onChange:e=>y(e.currentTarget.checked),label:`Reset to default (`+u+`)`,size:`sm`}),(0,L.jsx)(KM,{size:`sm`,children:`Update`})]}),(0,L.jsx)(H,{children:(0,L.jsx)(cp,{checked:k,onChange:e=>A(e.currentTarget.checked),label:`Hide columns with default statistics target`,size:`sm`})}),(0,L.jsx)(H,{children:(0,L.jsx)(cp,{checked:D,onChange:e=>O(e.currentTarget.checked),label:`Show all column stats`,size:`sm`})}),(0,L.jsx)(q.ScrollContainer,{minWidth:500,children:(0,L.jsxs)(q,{striped:!0,highlightOnHover:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:(0,L.jsx)(cp,{size:`sm`,checked:m.length>0&&g.length===m.length,indeterminate:g.length>0&&g.length<m.length,onChange:()=>{g.length===m.length?_([]):_(m.map(e=>e.part?.find(e=>e.name===`name`)?.valueString??``))}})}),(0,L.jsx)(q.Th,{children:`Column`}),(0,L.jsx)(q.Th,{children:`Statistics Target`}),(0,L.jsx)(q.Th,{children:`null_frac`}),(0,L.jsx)(q.Th,{children:`avg_width`}),(0,L.jsx)(q.Th,{children:`n_distinct`}),(0,L.jsx)(q.Th,{children:`correlation`}),D&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(q.Th,{children:`most_common_vals`}),(0,L.jsx)(q.Th,{children:`most_common_freqs`}),(0,L.jsx)(q.Th,{children:`histogram_bounds`}),(0,L.jsx)(q.Th,{children:`most_common_elems`}),(0,L.jsx)(q.Th,{children:`most_common_elem_freqs`}),(0,L.jsx)(q.Th,{children:`elem_count_histogram`})]})]})}),(0,L.jsxs)(q.Tbody,{children:[m?.map(e=>{let t=e.part??[],n=t.find(e=>e.name===`name`)?.valueString,r=t.find(e=>e.name===`statisticsTarget`)?.valueInteger;if(r===-1&&(N++,k))return null;if(!n)throw Error(`Column missing name`,{cause:e});return(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:(0,L.jsx)(cp,{size:`sm`,checked:g.includes(n),onChange:e=>{_(e.currentTarget.checked?[...g,n]:g.filter(e=>e!==n))}})}),(0,L.jsx)(q.Td,{children:n}),(0,L.jsx)(q.Td,{children:r===-1?(0,L.jsxs)(U,{span:!0,c:`dimmed`,fs:`italic`,children:[`default (`,u,`)`]}):r}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`nullFraction`)?.valueDecimal,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`avgWidth`)?.valueInteger,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`nDistinct`)?.valueDecimal,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`correlation`)?.valueDecimal,...M}),D&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(cK,{value:t.find(e=>e.name===`mostCommonValues`)?.valueString,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`mostCommonFreqs`)?.valueString,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`histogramBounds`)?.valueString,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`mostCommonElems`)?.valueString,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`mostCommonElemFreqs`)?.valueString,...M}),(0,L.jsx)(cK,{value:t.find(e=>e.name===`elemCountHistogram`)?.valueString,...M})]})]},n)}),k&&(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:D?13:7,children:(0,L.jsxs)(U,{c:`dimmed`,fs:`italic`,children:[N,` hidden columns with default statistics target`]})})})]})]})})]}),(0,L.jsx)(ng,{opened:t,onClose:r,title:i,centered:!0,size:`auto`,children:o})]})}function cK({value:e,onClick:t}){return(0,L.jsx)(q.Td,{style:{cursor:`pointer`},onClick:()=>t?.(e),children:lK(e)})}function lK(e){return typeof e==`string`&&e.length>30?e.substring(0,30)+`...`:e}function uK(e,t,n,r){let i=Date.now().toString();Y({id:i,loading:!0,title:t,message:`Running...`,autoClose:!1,withCloseButton:!1});let a={method:`POST`,pollStatusOnAccepted:!0};return r&&(a.body=JSON.stringify(r)),e.startAsyncRequest(n,a).then(e=>{let n=`Done`;return e.resourceType===`AsyncJob`?n=(0,L.jsx)(Sj,{to:e,children:`View AsyncJob`}):e.resourceType===`OperationOutcome`&&e.issue?.[0]?.details?.text&&(n=(0,L.jsx)(U,{children:e.issue[0].details.text})),Tb.update({id:i,color:`green`,title:t,message:n,icon:(0,L.jsx)(sA,{size:`1rem`}),loading:!1,autoClose:!1,withCloseButton:!0}),e}).catch(e=>{throw Tb.update({id:i,color:`red`,title:t,message:Lx(e),icon:(0,L.jsx)(dj,{size:`1rem`}),loading:!1,autoClose:!1,withCloseButton:!0}),e})}function dK(e,t,n,r){uK(e,t,n,r).catch(()=>{})}var fK=8;function pK({pillInputProps:e,inputProps:t,data:n,onChange:r}){let i=Ff({onDropdownClose:()=>i.resetSelectedOption(),onDropdownOpen:()=>i.updateSelectedOptionIndex(`active`)}),[a,o]=(0,b.useState)(``),[s,c]=(0,b.useState)([]),l=e=>{let t=s.includes(e)?s.filter(t=>t!==e):[...s,e];c(t),r&&r(t)},u=e=>c(t=>t.filter(t=>t!==e)),d=(0,b.useMemo)(()=>s.map(e=>(0,L.jsx)(fg,{withRemoveButton:!0,onRemove:()=>u(e),children:e},e)),[s]),f=(0,b.useMemo)(()=>{let e=a.trim().toLowerCase();return n.filter(t=>t.toLowerCase().includes(e))},[n,a]),p=(0,b.useMemo)(()=>{let e=Array(Math.min(f.length,fK));for(let t=0;t<e.length;t++){let n=f[t];e[t]=(0,L.jsx)(Rf.Option,{value:n,active:s.includes(n),children:(0,L.jsxs)(H,{gap:`sm`,children:[s.includes(n)?(0,L.jsx)(ep,{size:12}):null,(0,L.jsx)(`span`,{children:n})]})},n)}return e},[f,s]);return(0,L.jsxs)(Rf,{store:i,onOptionSubmit:l,withinPortal:!1,children:[(0,L.jsx)(Rf.DropdownTarget,{children:(0,L.jsx)(_g,{onClick:()=>i.openDropdown(),...e,children:(0,L.jsxs)(fg.Group,{children:[d,(0,L.jsx)(Rf.EventsTarget,{children:(0,L.jsx)(_g.Field,{onFocus:()=>i.openDropdown(),onBlur:()=>{i.closeDropdown(),o(``)},value:a,onChange:e=>{i.updateSelectedOptionIndex(),o(e.currentTarget.value)},onKeyDown:e=>{e.key===`Backspace`&&a.length===0&&s.length>0&&(e.preventDefault(),u(s[s.length-1]))},...t})})]})})}),(0,L.jsx)(Rf.Dropdown,{children:(0,L.jsx)(Rf.Options,{children:p.length>0?p:(0,L.jsx)(Rf.Empty,{children:`Nothing found...`})})})]})}function mK({defaultGinPendingListLimit:e,availableTables:t,onResponse:n}){let r=Q(),[i,a]=(0,b.useState)(!1),[o,s]=(0,b.useState)([]),[c,l]=(0,b.useState)(`unspecified`),[u,d]=(0,b.useState)(`unspecified`),[f,p]=(0,b.useState)(void 0);return(0,L.jsx)(GM,{onSubmit:()=>{let e={tableName:o};c===`reset`?e.fastUpdateAction=`reset`:c===`on`?(e.fastUpdateAction=`set`,e.fastUpdateValue=!0):c===`off`&&(e.fastUpdateAction=`set`,e.fastUpdateValue=!1),u===`reset`?e.ginPendingListLimitAction=`reset`:u===`set`&&(e.ginPendingListLimitAction=`set`,e.ginPendingListLimitValue=f),a(!0),uK(r,`Configure GIN Indexes`,`fhir/R4/$db-configure-indexes`,e).then(e=>{n(e)}).catch(()=>{}).finally(()=>{a(!1)})},children:(0,L.jsxs)(K,{gap:`sm`,maw:`800`,children:[(0,L.jsx)(sd,{label:`Table(s)`,children:(0,L.jsx)(pK,{data:t,onChange:e=>s(e),inputProps:{name:`tables`,placeholder:`e.g. Observation`}})}),(0,L.jsx)(wv.Group,{name:`fastUpdate`,label:`fastupdate`,value:c,onChange:e=>l(e),children:(0,L.jsxs)(H,{h:`36`,children:[(0,L.jsx)(wv,{size:`sm`,value:`unspecified`,label:`unspecified`}),(0,L.jsx)(wv,{size:`sm`,value:`reset`,label:`reset to default (on)`}),(0,L.jsx)(wv,{size:`sm`,value:`off`,label:`off`}),(0,L.jsx)(wv,{size:`sm`,value:`on`,label:`on`})]})}),(0,L.jsx)(wv.Group,{name:`ginPendingListLimit`,label:`gin_pending_list_limit`,value:u,onChange:e=>{d(e),e!==`set`&&p(void 0)},children:(0,L.jsxs)(H,{h:`36`,children:[(0,L.jsx)(wv,{size:`sm`,value:`unspecified`,label:`unspecified`}),(0,L.jsx)(wv,{size:`sm`,value:`reset`,label:`reset to default (${e}kB)`}),(0,L.jsxs)(H,{children:[(0,L.jsx)(wv,{size:`sm`,value:`set`,label:`Set to (kB)`}),(0,L.jsx)(N_,{title:`gin_pending_list_limit_value`,name:`gin_pending_list_limit_value`,value:(u===`set`?f:``)||``,disabled:u!==`set`,required:u===`set`,size:`sm`,w:`100`,min:64,max:2147483647,onChange:e=>{p(typeof e==`number`?e:void 0)}})]})]})}),(0,L.jsx)(H,{justify:`center`,children:(0,L.jsx)(KM,{size:`sm`,loading:i,children:`Update`})})]})})}function hK(){let e=Q(),[t,{open:n,close:r}]=yn(!1),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(void 0),[u,d]=(0,b.useState)(0),[f,p]=(0,b.useState)(!1),[m,h]=(0,b.useState)(void 0),[g,_]=(0,b.useState)([]),[v,y]=(0,b.useState)(0);oK({medplum:e,onChange:_}),(0,b.useEffect)(()=>{p(!0),e.get(`fhir/R4/$db-indexes?tableName=`+encodeURIComponent(c??``),{cache:`no-cache`}).then(e=>{d(e.parameter?.find(e=>e.name===`defaultGinPendingListLimit`)?.valueInteger??0);let t=e.parameter?.filter(e=>e.name===`index`);h(t??[])}).finally(()=>{p(!1)}).catch(e=>{Y({color:`red`,message:e.message})})},[e,c,v]);let x=e=>{a(`Configure results`),s((0,L.jsx)(`pre`,{children:JSON.stringify(e,null,2)})),n(),y(e=>(e+1)%100)},S={onClick:e=>{a(`Details`),s((0,L.jsx)(`pre`,{children:e})),n()}},C;return f?C=`Loading...`:c?m?.length===0&&(C=`No GIN indexes on this table`):C=`Select a table`,(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(`h2`,{children:`Configure GIN indexes`}),(0,L.jsx)(H,{children:(0,L.jsx)(mK,{defaultGinPendingListLimit:u,availableTables:g,onResponse:x})}),(0,L.jsx)(`h2`,{children:`GIN index stats`}),(0,L.jsxs)(H,{children:[(0,L.jsx)(rK,{data:g,inputProps:{placeholder:`Table name`,inputSize:`50`},onChange:e=>{l(e)}}),(0,L.jsx)(W,{loading:f,onClick:()=>y(e=>(e+1)%100),disabled:!c,children:`Refresh`})]}),(0,L.jsx)(q.ScrollContainer,{minWidth:500,children:(0,L.jsxs)(q,{striped:!0,highlightOnHover:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Schema`}),(0,L.jsx)(q.Th,{children:`Table`}),(0,L.jsx)(q.Th,{children:`Index`}),(0,L.jsx)(q.Th,{children:`fastupdate`}),(0,L.jsx)(q.Th,{children:`gin_pending_list_limit`}),(0,L.jsx)(q.Th,{children:`options`})]})}),(0,L.jsxs)(q.Tbody,{children:[C&&(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:16,children:C})}),!C&&m?.map(e=>{let t=e.part??[],n=t.find(e=>e.name===`indexName`)?.valueString;if(!n)throw Error(`Index missing name`,{cause:e});return(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:t.find(e=>e.name===`schemaName`)?.valueString}),(0,L.jsx)(q.Td,{children:t.find(e=>e.name===`tableName`)?.valueString}),(0,L.jsx)(q.Td,{children:n}),(0,L.jsx)(gK,{value:t.find(e=>e.name===`fastUpdate`)?.valueBoolean,defaultValue:(0,L.jsxs)(U,{span:!0,c:`dimmed`,fs:`italic`,children:[`default\xA0(`,aK(!0),`)`]}),...S}),(0,L.jsx)(gK,{value:t.find(e=>e.name===`ginPendingListLimit`)?.valueInteger,defaultValue:(0,L.jsxs)(U,{span:!0,c:`dimmed`,fs:`italic`,children:[`default\xA0(`,u,`)`]}),...S}),(0,L.jsx)(gK,{value:t.find(e=>e.name===`indexOptions`)?.valueString,defaultValue:(0,L.jsx)(U,{span:!0,c:`dimmed`,fs:`italic`,children:`NULL`}),...S})]},n)})]})]})})]}),(0,L.jsx)(ng,{opened:t,onClose:r,title:i,centered:!0,size:`auto`,children:o})]})}function gK({value:e,onClick:t,defaultValue:n}){return(0,L.jsx)(q.Td,{style:{cursor:`pointer`},onClick:()=>t?.(e),children:e===void 0?n:aK(e)})}var _K=[{label:`GIN Indexes`,value:`gin-indexes`},{label:`Column Statistics`,value:`column-statistics`},{label:`Array Column Padding`,value:`array-padding`}];function vK(){let e=Q();return!e.isLoading()&&!e.isSuperAdmin()?(0,L.jsx)(qN,{outcome:Dx}):(0,L.jsx)(IN,{maw:`100%`,children:(0,L.jsxs)(RN,{children:[(0,L.jsx)(J,{order:1,children:`Database Tools`}),(0,L.jsxs)(BR,{baseUrl:`/admin/super/db`,tabs:_K,children:[(0,L.jsx)(ib.Panel,{value:`gin-indexes`,pt:`md`,children:(0,L.jsx)(hK,{})}),(0,L.jsx)(ib.Panel,{value:`column-statistics`,pt:`md`,children:(0,L.jsx)(sK,{})}),(0,L.jsx)(ib.Panel,{value:`array-padding`,pt:`md`,children:(0,L.jsx)(tK,{})})]})]})})}function yK(){let e=Q(),[t,n]=(0,b.useState)(e.getProject()),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(),[s,c]=(0,b.useState)(!1),[l,u]=(0,b.useState)(void 0);return(0,L.jsxs)(GM,{onSubmit:(0,b.useCallback)(n=>{let i={resourceType:n.resourceType,firstName:n.firstName,lastName:n.lastName,email:n.email,sendEmail:n.sendEmail===`on`,accessPolicy:r,admin:n.isAdmin===`on`,scope:n.isProjectScoped===`on`?`project`:`server`,mfaRequired:n.mfaRequired===`on`};return e.invite(t?.id,i).then(t=>{e.invalidateSearches(`Patient`),e.invalidateSearches(`Practitioner`),e.invalidateSearches(`ProjectMembership`),Mx(t)?o(t):u(t),c(i.sendEmail??!1),Y({color:`green`,message:`Invite success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1}),o(Ix(e))})},[e,t,r]),children:[!l&&!a&&(0,L.jsxs)(K,{children:[(0,L.jsx)(J,{children:`Invite new member`}),e.isSuperAdmin()&&(0,L.jsx)(QP,{title:`Project`,htmlFor:`project`,outcome:a,children:(0,L.jsx)(EF,{resourceType:`Project`,name:`project`,defaultValue:t,onChange:n})}),(0,L.jsx)(Tg,{name:`resourceType`,label:`Role`,defaultValue:`Practitioner`,data:[`Practitioner`,`Patient`,`RelatedPerson`],error:VN(a,`resourceType`)}),(0,L.jsx)(ab,{name:`firstName`,label:`First Name`,required:!0,autoFocus:!0,error:VN(a,`firstName`)}),(0,L.jsx)(ab,{name:`lastName`,label:`Last Name`,required:!0,error:VN(a,`lastName`)}),(0,L.jsx)(ab,{name:`email`,type:`email`,label:`Email`,required:!0,error:VN(a,`email`)}),(0,L.jsx)(QP,{title:`Access Policy`,htmlFor:`accessPolicy`,outcome:a,children:(0,L.jsx)(WG,{name:`accessPolicy`,onChange:i})}),(0,L.jsx)(cp,{name:`sendEmail`,label:`Send email`,defaultChecked:!0}),(0,L.jsx)(cp,{name:`isAdmin`,label:`Admin`}),(0,L.jsx)(cp,{name:`isProjectScoped`,label:`Project scoped`}),(0,L.jsx)(cp,{name:`mfaRequired`,label:`MFA required`}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(KM,{children:`Invite`})})]}),a&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(`p`,{children:`User created, email couldn't be sent`}),(0,L.jsx)(`p`,{children:`Could not send email. Make sure you have AWS SES set up.`}),(0,L.jsxs)(`p`,{children:[`Click `,(0,L.jsx)(Sj,{to:`/admin/project`,children:`here`}),` to return to the project admin page.`]})]}),l&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[(0,L.jsx)(U,{children:`User created`}),s&&(0,L.jsx)(U,{children:`Email sent`}),(0,L.jsxs)(vh,{children:[(0,L.jsx)(vh.Item,{children:(0,L.jsx)(Sj,{to:l,children:`Go to new membership`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(Sj,{to:l.profile,children:`Go to new profile`})}),(0,L.jsx)(vh.Item,{children:(0,L.jsx)(Sj,{to:`/admin/users`,children:`Back to users list`})})]})]})]})}function bK(){let e=Q(),{membershipId:t}=BU(),n=e.readResource(`ProjectMembership`,t).read(),r=BO(n.profile);return r?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`ProjectMembership Details`}),(0,L.jsx)(Sj,{to:n,children:`Go to ProjectMembership`}),(0,L.jsx)(aL,{value:n}),(0,L.jsx)(J,{mt:`md`,children:`Profile Details`}),(0,L.jsxs)(Sj,{to:r,children:[`Go to `,r.resourceType]}),(0,L.jsx)(aL,{value:r,ignoreMissingValues:!0})]}):(0,L.jsx)(mj,{})}function xK(){let e=Q();if(!e.isLoading()&&!e.isProjectAdmin())return(0,L.jsx)(qN,{outcome:Dx});function t(t){e.post(`admin/projects/setpassword`,t).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return(0,L.jsxs)(zN,{width:600,children:[(0,L.jsx)(J,{order:1,children:`Project Admin`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Force Set Password`}),(0,L.jsx)(U,{children:`Sets the password for the specified user in this project.`}),(0,L.jsx)(U,{children:`This action can only be performed by project administrators. Passwords can only be set for users scoped in this project.`}),(0,L.jsx)(GM,{onSubmit:t,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(ab,{name:`email`,label:`Email`,required:!0}),(0,L.jsx)(ov,{name:`password`,label:`Password`,required:!0}),(0,L.jsx)(W,{type:`submit`,children:`Force Set Password`})]})})]})}function SK(){let e=Q(),t=BG(e),n=e.get(`admin/projects/${t}`).read();return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`Details`}),(0,L.jsxs)(kN,{children:[(0,L.jsx)(AN,{term:`ID`,children:n.project.id}),(0,L.jsx)(AN,{term:`Name`,children:n.project.name})]})]})}var CK=[`Details`,`Users`,`Clients`,`Bots`,`Secrets`,`Sites`];function wK(){let e=Q(),t=BG(e),n=(0,b.useMemo)(()=>e.get(`admin/projects/`+t).read(),[e,t]);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{children:[(0,L.jsx)(RR,{children:(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Project`}),(0,L.jsx)(RR.Value,{children:n.project.name})]})}),(0,L.jsx)(ll,{children:(0,L.jsx)(BR,{baseUrl:`/admin`,tabs:CK})})]}),(0,L.jsx)(IN,{maw:`100%`,children:(0,L.jsx)(RN,{children:(0,L.jsx)(SW,{})})})]})}function TK(){let e=Q(),t=BG(e),n=e.get(`admin/projects/${t}`).read(),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{e.requestSchema(`Project`).then(()=>i(!0)).catch(console.log)},[e]),(0,b.useEffect)(()=>{n&&o(gC(n.project.secret||[]))},[e,n]),!r||!a?(0,L.jsx)(`div`,{children:`Loading...`}):(0,L.jsxs)(`form`,{noValidate:!0,autoComplete:`off`,onSubmit:n=>{n.preventDefault(),e.post(`admin/projects/${t}/secrets`,a).then(()=>e.get(`admin/projects/${t}`,{cache:`reload`})).then(()=>Y({color:`green`,message:`Saved`})).catch(console.log)},children:[(0,L.jsx)(J,{children:`Project Secrets`}),(0,L.jsx)(`p`,{children:`Use project secrets to store sensitive information such as API keys or other access credentials.`}),(0,L.jsx)(KF,{property:Tw(`Project`,`secret`),name:`secret`,path:`Project.secret`,defaultValue:a,onChange:o,outcome:void 0}),(0,L.jsx)(W,{type:`submit`,children:`Save`})]})}function EK(){let e=Q(),t=BG(e),n=e.get(`admin/projects/${t}`).read(),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{e.requestSchema(`Project`).then(()=>i(!0)).catch(console.log)},[e]),(0,b.useEffect)(()=>{n&&o(gC(n.project.site||[]))},[e,n]),!r||!a?(0,L.jsx)(`div`,{children:`Loading...`}):(0,L.jsxs)(`form`,{noValidate:!0,autoComplete:`off`,onSubmit:n=>{n.preventDefault(),e.post(`admin/projects/${t}/sites`,a).then(()=>e.get(`admin/projects/${t}`,{cache:`reload`})).then(()=>Y({color:`green`,message:`Saved`})).catch(e=>{let t=Ix(e);Y({color:`red`,message:`Error ${t.issue?.[0].details?.text} ${t.issue?.[0].expression?.[0]}`,autoClose:!1})})},children:[(0,L.jsx)(J,{children:`Project Sites`}),(0,L.jsx)(`p`,{children:`Use project sites configure your project on a separate domain.`}),(0,L.jsx)(KF,{property:Tw(`Project`,`site`),name:`site`,path:`Project.site`,defaultValue:a,onChange:o,outcome:void 0}),(0,L.jsx)(W,{type:`submit`,children:`Save`})]})}var DK=[{label:`Post-deploy Migrations`,value:`migrations`},{label:`System AsyncJob`,value:`asyncjob`}];function OK(){let e=Q();return!e.isLoading()&&!e.isSuperAdmin()?(0,L.jsx)(qN,{outcome:Dx}):(0,L.jsx)(IN,{miw:`1600`,maw:`2000`,children:(0,L.jsxs)(RN,{children:[(0,L.jsx)(J,{order:1,children:`AsyncJob Dashboard`}),(0,L.jsxs)(BR,{baseUrl:`/admin/super/asyncjob`,tabs:DK,keepMounted:!1,children:[(0,L.jsx)(ib.Panel,{value:`asyncjob`,pt:`md`,children:(0,L.jsx)(AK,{})}),(0,L.jsx)(ib.Panel,{value:`migrations`,pt:`md`,children:(0,L.jsx)(MK,{})})]})]})})}var kK={resourceType:`AsyncJob`,fields:[`id`,`_lastUpdated`,`request`,`status`,`type`],filters:[{code:`_project`,operator:Z.MISSING,value:`true`}],sortRules:[{code:`_lastUpdated`,descending:!0}]};function AK(){let e=IU(),[t]=(0,b.useState)(kK);return(0,L.jsxs)(K,{children:[(0,L.jsx)(Sj,{to:`/${t.resourceType}/${qT(t)}`,children:`Show in search page`}),(0,L.jsx)(OR,{checkboxesEnabled:!1,search:t,onClick:t=>e(PK(t.resource))?.catch(console.error),onAuxClick:e=>window.open(PK(e.resource),`_blank`)})]})}var jK={resourceType:`AsyncJob`,fields:[`id`,`_lastUpdated`,`request`,`status`,`type`],filters:[{code:`_project`,operator:Z.MISSING,value:`true`},{code:`type`,operator:Z.EQUALS,value:`data-migration`}],count:1e3,sortRules:[{code:`_lastUpdated`,descending:!0}]};function MK(){let e=Q(),[t,n]=(0,b.useState)(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)([]),[s,c]=(0,b.useState)(0),[l,u]=(0,b.useState)([]);(0,b.useEffect)(()=>{let t=`info`;u(e=>e.includes(t)?e:[...e,t]),e.get(`admin/super/migrations`,{cache:`no-cache`}).then(e=>{e.postDeployMigrations.sort((e,t)=>t-e),n(e)}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})}).finally(()=>u(e=>e.filter(e=>e!==t)))},[e,s]),(0,b.useEffect)(()=>{let t=`jobs`;u(e=>e.includes(t)?e:[...e,t]),e.requestSchema(`AsyncJob`).then(()=>e.search(`AsyncJob`,qT({...jK,total:`accurate`,fields:void 0}),{cache:`no-cache`}).then(e=>{i(e.entry?.map(e=>e.resource))})).catch(e=>{i(void 0),Y({color:`red`,message:Lx(e),autoClose:!1})}).finally(()=>u(e=>e.filter(e=>e!==t)))},[e,s]);function d(){c(e=>e+1)}function f(t){uK(e,`Run pending post-deploy migration`,`admin/super/migrate`,{dataVersion:t}).finally(()=>{d()}).catch(()=>{}),d()}let p=l.length>0;function m(e,{isLoading:t}){return(0,L.jsxs)(`div`,{style:{position:`relative`},children:[(0,L.jsx)(Sh,{visible:t}),(0,L.jsxs)(q,{children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Version`}),(0,L.jsx)(q.Th,{children:`Action`}),(0,L.jsx)(q.Th,{children:`Status`}),(0,L.jsx)(q.Th,{children:`AsyncJob`}),(0,L.jsx)(q.Th,{children:`Last Updated`}),(0,L.jsx)(q.Th,{children:`Request Time`}),(0,L.jsx)(q.Th,{children:`Duration`}),(0,L.jsx)(q.Th,{children:`Attempts`})]})}),(0,L.jsx)(q.Tbody,{children:e()})]})]})}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(W,{size:`xs`,mb:`xs`,variant:`subtle`,leftSection:(0,L.jsx)(JA,{size:14}),onClick:d,loading:p,children:`Refresh`}),m(()=>{if(!p){if(!t)return(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:6,children:`Failed to load migration info`})});if(!r)return(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:6,children:`Failed to load async jobs`})})}return!t||!r?null:t.postDeployMigrations?.map(e=>{let{status:n,asyncJob:i,asyncJobs:s}=NK(e,r??[],t?.pendingPostDeployMigration),c=a.includes(e),l=e===t?.pendingPostDeployMigration&&(!i||i?.status===`error`),u=[(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:e}),(0,L.jsx)(q.Td,{children:l&&(0,L.jsx)(W,{color:`green`,size:`xs`,onClick:()=>f(e),children:`Start`})}),(0,L.jsx)(q.Td,{children:n}),(0,L.jsx)(q.Td,{children:i&&(0,L.jsx)(Sj,{to:`/AsyncJob/${i?.id}`,children:i?.id})}),(0,L.jsx)(q.Td,{children:i?.meta?.lastUpdated}),(0,L.jsx)(q.Td,{children:i?.requestTime}),(0,L.jsx)(q.Td,{children:FK(i)}),(0,L.jsx)(q.Td,{display:`flex`,children:(0,L.jsxs)(H,{gap:`xs`,children:[s.length?s.length:``,c&&s.length>1&&(0,L.jsx)(W,{leftSection:(0,L.jsx)(BA,{size:14}),variant:`subtle`,color:`blue`,size:`xs`,radius:`xs`,onClick:()=>o(t=>t.includes(e)?t.filter(t=>t!==e):t),children:`Hide all`}),!c&&s.length>1&&(0,L.jsx)(W,{leftSection:(0,L.jsx)(KA,{size:14}),variant:`subtle`,color:`blue`,size:`xs`,radius:`xs`,onClick:()=>o(t=>t.includes(e)?t:[...t,e]),children:`Show all`})]})})]},e)];return c&&u.push(...s.filter(e=>e.id!==i?.id).map(t=>(0,L.jsxs)(q.Tr,{bg:`gray.1`,children:[(0,L.jsx)(q.Td,{children:e}),(0,L.jsx)(q.Td,{}),(0,L.jsx)(q.Td,{children:t.status}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(Sj,{to:`/AsyncJob/${t.id}`,children:t.id})}),(0,L.jsx)(q.Td,{children:t.meta?.lastUpdated}),(0,L.jsx)(q.Td,{children:t.requestTime}),(0,L.jsx)(q.Td,{children:FK(t)}),(0,L.jsx)(q.Td,{})]},t.id))),u})},{isLoading:p})]})}function NK(e,t,n){let r=t.filter(t=>t.dataVersion===e),i=r.find(e=>e.status===`completed`)??r[0],a;return a=n===0?i?.status??`completed`:e>n?i?.status??`pending`:e===n?i?.status??`next`:i?.status??`completed`,{status:a,asyncJob:i,asyncJobs:r}}function PK(e){return`/${e.resourceType}/${e.id}`}function FK(e){let t=e?.requestTime,n=e?.transactionTime??e?.meta?.lastUpdated;if(!t||!n)return``;let r=new Date(t),i=new Date(n).getTime()-r.getTime();if(i<1e3)return`${i.toFixed(0)}ms`;let a=i/1e3;return a<60?`${a.toFixed(2)}s`:a<3600?`${(a/60).toFixed(2)}m`:`${(a/3600).toFixed(2)}h`}function IK(e,t){let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n}function LK({entry:e}){return(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:(0,L.jsxs)(`div`,{style:{paddingLeft:50},children:[(0,L.jsxs)(U,{size:`xs`,c:`dimmed`,children:[`Subscription: `,(0,L.jsx)(IP,{value:{reference:`Subscription/${e.subscriptionId}`}})]}),(0,L.jsxs)(U,{size:`xs`,c:`dimmed`,children:[`Author:`,` `,(0,L.jsx)(Sj,{to:{reference:e.author},children:(0,L.jsx)(MI,{value:{reference:e.author}})})]}),e.expiration?(0,L.jsxs)(U,{size:`xs`,c:`dimmed`,children:[`Expires at:`,` `,new Date(e.expiration*1e3).toLocaleString(void 0,{timeZoneName:`short`})]}):null]})}),(0,L.jsx)(q.Td,{})]},e.subscriptionId)}function RK({criteria:e,expanded:t,onToggle:n}){return(0,L.jsxs)(b.Fragment,{children:[(0,L.jsxs)(q.Tr,{onClick:n,style:{cursor:`pointer`},children:[(0,L.jsx)(q.Td,{children:(0,L.jsxs)(H,{gap:`xs`,pl:`xl`,children:[(0,L.jsx)(U,{size:`xs`,children:t?`▼`:`▶`}),(0,L.jsx)(U,{size:`sm`,c:`dimmed`,children:e.criteria})]})}),(0,L.jsx)(q.Td,{children:e.count})]}),t&&e.entries?.map(e=>(0,L.jsx)(LK,{entry:e},e.subscriptionId))]})}function zK({projectId:e,rt:t,rtDetail:n,isLoading:r,expanded:i,expandedCriteria:a,onToggle:o,onToggleCriteria:s}){let c=`${e}:${t.resourceType}`;return(0,L.jsxs)(b.Fragment,{children:[(0,L.jsxs)(q.Tr,{onClick:o,style:{cursor:`pointer`},children:[(0,L.jsx)(q.Td,{children:(0,L.jsxs)(H,{gap:`xs`,pl:`md`,children:[(0,L.jsx)(U,{size:`xs`,children:i?`▼`:`▶`}),(0,L.jsx)(U,{children:t.resourceType})]})}),(0,L.jsx)(q.Td,{children:t.count})]}),i&&(0,L.jsxs)(L.Fragment,{children:[r&&!n&&(0,L.jsx)(q.Tr,{children:(0,L.jsx)(q.Td,{colSpan:2,children:(0,L.jsx)(U,{pl:`xl`,size:`sm`,c:`dimmed`,children:`Loading...`})})}),n?.criteria.map(e=>{let t=`${c}:${e.criteria}`;return(0,L.jsx)(RK,{criteria:e,expanded:a.has(t),onToggle:()=>s(t)},t)})]})]})}function BK({project:e,expanded:t,expandedResourceTypes:n,expandedCriteria:r,projectDetail:i,isLoadingDetail:a,onToggle:o,onToggleResourceType:s,onToggleCriteria:c}){return(0,L.jsxs)(b.Fragment,{children:[(0,L.jsxs)(q.Tr,{onClick:o,style:{cursor:`pointer`},children:[(0,L.jsx)(q.Td,{children:(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(U,{size:`xs`,children:t?`▼`:`▶`}),(0,L.jsx)(IP,{value:{reference:`Project/${e.projectId}`,display:e.projectName}})]})}),(0,L.jsx)(q.Td,{children:e.subscriptionCount})]}),t&&e.resourceTypes.map(t=>{let o=`${e.projectId}:${t.resourceType}`;return(0,L.jsx)(zK,{projectId:e.projectId,rt:t,rtDetail:i?.find(e=>e.resourceType===t.resourceType),isLoading:a,expanded:n.has(o),expandedCriteria:r,onToggle:()=>s(e.projectId,t.resourceType),onToggleCriteria:c},o)})]})}function VK(){let e=Q(),[t,n]=(0,b.useState)(),[r,i]=(0,b.useState)(!1),[a,{open:o,close:s}]=yn(!1),[c,l]=(0,b.useState)(new Set),[u,d]=(0,b.useState)(new Set),[f,p]=(0,b.useState)(new Set),[m,h]=(0,b.useState)(new Map),[g,_]=(0,b.useState)(new Map);function v(){i(!0),e.get(`fhir/R4/$get-ws-sub-stats`,{cache:`no-cache`}).then(e=>{let t=e.parameter?.find(e=>e.name===`stats`)?.valueString;t&&n(JSON.parse(t).projects),o()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})).finally(()=>i(!1))}function y(t,n){let r=`${t}:${n}`;m.has(t)||(_(e=>new Map(e).set(t,!0)),e.get(`fhir/R4/$get-ws-sub-project-stats?projectId=${encodeURIComponent(t)}`,{cache:`no-cache`}).then(e=>{let n=e.parameter?.find(e=>e.name===`stats`)?.valueString;if(n){let e=JSON.parse(n);h(n=>new Map(n).set(t,e.resourceTypes))}}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})).finally(()=>_(e=>{let n=new Map(e);return n.delete(t),n}))),d(e=>IK(e,r))}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(W,{onClick:v,loading:r,children:`Get WS Sub Stats`}),(0,L.jsxs)(ng,{opened:a,onClose:s,title:`WebSocket Subscription Stats`,size:`xl`,centered:!0,children:[!t?.length&&(0,L.jsx)(U,{children:`No active WebSocket subscriptions found.`}),t&&t.length>0&&(0,L.jsxs)(q,{striped:!0,highlightOnHover:!0,withTableBorder:!0,withColumnBorders:!0,tabularNums:!0,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Project / Resource Type / Criteria`}),(0,L.jsx)(q.Th,{children:`Count`})]})}),(0,L.jsx)(q.Tbody,{children:t.map(e=>(0,L.jsx)(BK,{project:e,expanded:c.has(e.projectId),expandedResourceTypes:u,expandedCriteria:f,projectDetail:m.get(e.projectId),isLoadingDetail:g.get(e.projectId)===!0,onToggle:()=>l(t=>IK(t,e.projectId)),onToggleResourceType:y,onToggleCriteria:e=>p(t=>IK(t,e))},e.projectId))})]})]})]})}function HK(){let e=Q(),[t,{open:n,close:r}]=yn(!1),[i,a]=(0,b.useState)(``),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)();if(!e.isLoading()&&!e.isSuperAdmin())return(0,L.jsx)(qN,{outcome:Dx});function u(){dK(e,`Rebuilding Structure Definitions`,`admin/super/structuredefinitions`)}function d(){dK(e,`Rebuilding Search Parameters`,`admin/super/searchparameters`)}function f(){dK(e,`Rebuilding Value Sets`,`admin/super/valuesets`)}function p(t){dK(e,`Reindexing Resources`,`admin/super/reindex`,t)}function m(){dK(e,`Reload Cron Resources`,`admin/super/reloadcron`)}function h(){r();let t=KS(c);e.post(`fhir/R4/$clear-all-ws-subs`,t?{resourceType:`Parameters`,parameter:[{name:`projectId`,valueString:t}]}:void 0).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})),l(void 0)}function g(t){e.post(`admin/super/removebotidjobsfromqueue`,t).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function _(t){e.post(`admin/super/purge`,{...t,before:uF(t.before)}).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function v(t){e.post(`admin/super/setpassword`,t).then(()=>Y({color:`green`,message:`Done`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function y(t){e.post(`fhir/R4/$db-stats`,t.tableNames?{resourceType:`Parameters`,parameter:[{name:`tableNames`,valueString:t.tableNames}]}:void 0).then(e=>{a(`Database Stats`),s((0,L.jsx)(`pre`,{children:e.parameter?.find(e=>e.name===`tableString`)?.valueString})),n()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function x(){e.post(`fhir/R4/$db-invalid-indexes`).then(e=>{a(`Database Invalid Indexes`),s((0,L.jsx)(`pre`,{children:e.parameter?.filter(e=>e.name===`invalidIndex`).map(e=>e.valueString).join(`
|
|
220
|
+
`)})),n()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function S(){e.post(`fhir/R4/$db-schema-diff`).then(e=>{a(`Schema Diff`),s((0,L.jsx)(`pre`,{children:e.parameter?.find(e=>e.name===`migrationString`)?.valueString})),n()}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}function C(){dK(e,`Reconcile Schema Diff`,`admin/super/reconcile-db-schema-drift`)}return(0,L.jsxs)(zN,{width:600,children:[(0,L.jsx)(J,{order:1,children:`Super Admin`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Structure Definitions`}),(0,L.jsx)(`p`,{children:`StructureDefinition resources contain the metadata about resource types. They are provided with the FHIR specification. Medplum also includes some custom StructureDefinition resources for internal data types. Press this button to update the database StructureDefinitions from the FHIR specification.`}),(0,L.jsx)(GM,{children:(0,L.jsx)(W,{onClick:u,children:`Rebuild StructureDefinitions`})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Search Parameters`}),(0,L.jsx)(`p`,{children:`SearchParameter resources contain the metadata about filters and sorting. They are provided with the FHIR specification. Medplum also includes some custom SearchParameter resources for internal data types. Press this button to update the database SearchParameters from the FHIR specification.`}),(0,L.jsx)(GM,{children:(0,L.jsx)(W,{onClick:d,children:`Rebuild SearchParameters`})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Value Sets`}),(0,L.jsx)(`p`,{children:`ValueSet resources enum values for a wide variety of use cases. Press this button to update the database ValueSets from the FHIR specification.`}),(0,L.jsx)(GM,{children:(0,L.jsx)(W,{onClick:f,children:`Rebuild ValueSets`})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Reindex Resources`}),(0,L.jsx)(`p`,{children:`When Medplum changes how resources are indexed, the system may require a reindex for old resources to be indexed properly.`}),(0,L.jsx)(WK,{onSubmit:p}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Purge Resources`}),(0,L.jsx)(`p`,{children:`As system generated resources accumulate, the system may require a purge to remove old resources.`}),(0,L.jsx)(GM,{onSubmit:_,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Purge Resource Type`,htmlFor:`purgeResourceType`,children:(0,L.jsx)(Tg,{id:`purgeResourceType`,name:`resourceType`,data:[``,`AuditEvent`,`Login`]})}),(0,L.jsx)(QP,{title:`Purge Before`,htmlFor:`before`,children:(0,L.jsx)(dF,{name:`before`,placeholder:`Before Date`})}),(0,L.jsx)(W,{type:`submit`,children:`Purge`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Remove Bot ID Jobs from Queue`}),(0,L.jsx)(`p`,{children:`Remove all queued jobs for a Bot ID`}),(0,L.jsx)(GM,{onSubmit:g,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Bot ID`,children:(0,L.jsx)(ab,{name:`botId`,placeholder:`Bot Id`})}),(0,L.jsx)(W,{type:`submit`,children:`Remove Jobs by Bot ID`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Force Set Password`}),(0,L.jsx)(`p`,{children:`Note that this applies to all projects for the user. Therefore, this should only be used in extreme circumstances. Always prefer to use the "Forgot Password" flow first.`}),(0,L.jsx)(GM,{onSubmit:v,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(ab,{name:`email`,label:`Email`,required:!0}),(0,L.jsx)(ov,{name:`password`,label:`Password`,required:!0}),(0,L.jsx)(ab,{name:`projectId`,label:`Project ID`}),(0,L.jsx)(W,{type:`submit`,children:`Force Set Password`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Stats`}),(0,L.jsx)(`p`,{children:`Query current table statistics from the database.`}),(0,L.jsx)(GM,{onSubmit:y,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Table Names (comma-delimited)`,htmlFor:`tableNames`,children:(0,L.jsx)(ab,{id:`tableNames`,name:`tableNames`,placeholder:`Observation,Observation_History`})}),(0,L.jsx)(W,{type:`submit`,children:`Get Database Stats`})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Invalid Indexes`}),(0,L.jsx)(`p`,{children:`Query invalid indexes from the database.`}),(0,L.jsx)(GM,{onSubmit:x,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Get Database Invalid Indexes`})})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Schema Drift`}),(0,L.jsx)(`p`,{children:`Show the schema migration needed to match the expected database schema.`}),(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(GM,{onSubmit:S,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Get Schema Drift`})})})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(GM,{onSubmit:C,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Reconcile Schema Drift`})})})})]}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Reload Cron Resources`}),(0,L.jsx)(`p`,{children:`Obliterates the cron queue and rebuilds all the cron job schedulers for cron resources (eg. cron bots).`}),(0,L.jsx)(GM,{onSubmit:m,children:(0,L.jsx)(K,{children:(0,L.jsx)(W,{type:`submit`,children:`Reload Cron Resources`})})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Database Explain Search`}),(0,L.jsx)(`p`,{children:`Runs an EXPLAIN query on the database to show the query plan for a search.`}),(0,L.jsx)(GK,{setModalTitle:a,setModalContent:s,openModal:n}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`WebSocket Subscription Stats`}),(0,L.jsx)(`p`,{children:`View active WebSocket subscription statistics by project, resource type, and criteria.`}),(0,L.jsx)(VK,{}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Clear All WebSocket Subscriptions`}),(0,L.jsx)(`p`,{children:`Removes all active WebSocket subscription records from Redis. This is useful for cleaning up stale subscriptions during maintenance or after a deployment issue. Connected clients will need to re-bind.`}),(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Project (optional)`,htmlFor:`clearWsSubsProject`,children:(0,L.jsx)(kF,{name:`clearWsSubsProject`,placeholder:`All projects`,targetTypes:[`Project`],onChange:l})}),(0,L.jsx)(`div`,{children:(0,L.jsx)(W,{onClick:()=>{a(`Clear All WebSocket Subscriptions`),s((0,L.jsxs)(K,{children:[(0,L.jsxs)(U,{children:[`Are you sure you want to completely clear`,` `,(0,L.jsx)(`strong`,{children:c?`WebSocket subscriptions for "${c.display??c.reference}"`:`ALL WebSocket subscriptions`}),`? Connected clients will need to re-bind their subscriptions.`]}),(0,L.jsx)(H,{align:`center`,children:(0,L.jsx)(W,{color:`red`,onClick:h,children:`Clear`})})]})),n()},children:`Clear All WebSocket Subscriptions`})})]}),(0,L.jsx)(ng,{opened:t,onClose:r,title:i,centered:!0,size:`auto`,children:o})]})}function UK(){let[e,t]=(0,b.useState)(`outdated`);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(Tg,{id:`reindexType`,name:`reindexType`,value:e,onChange:e=>t(e.target.value),data:[{label:`Outdated resources`,value:`outdated`},{label:`All resources`,value:`all`},{label:`Less than or equal to a specific version`,value:`specific`}]}),e===`specific`&&(0,L.jsx)(N_,{required:!0,name:`maxResourceVersion`,placeholder:`Max Resource Version`,min:0})]})}function WK({onSubmit:e}){let[t,n]=(0,b.useState)(!1);function r(t){let n={};for(let[e,r]of Object.entries(t))r!==``&&(n[e]=r);e(n)}return(0,L.jsx)(GM,{onSubmit:r,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(QP,{title:`Resource Type`,htmlFor:`resourceType`,children:(0,L.jsx)(ab,{id:`resourceType`,name:`resourceType`,placeholder:`Reindex Resource Type`})}),(0,L.jsx)(QP,{title:`Search Filter`,htmlFor:`filter`,children:(0,L.jsx)(ab,{id:`filter`,name:`filter`,placeholder:`e.g. name=Sam&birthdate=lt2000-01-01`})}),(0,L.jsx)(QP,{title:`Max Resource Version`,htmlFor:`maxResourceVersion`,children:(0,L.jsx)(UK,{})}),(0,L.jsx)(W,{variant:`subtle`,size:`xs`,onClick:()=>n(!t),children:t?`Hide Advanced Options`:`Show Advanced Options`}),t&&(0,L.jsx)(K,{gap:`sm`,children:(0,L.jsxs)(wm,{children:[(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`batchSize`,label:`Resources per batch`,description:(0,L.jsx)(`span`,{children:`default: 500`}),placeholder:`500`,min:20,max:1e3})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`searchStatementTimeout`,label:`Search query timeout (ms)`,description:(0,L.jsx)(`span`,{children:`default: 3,600,000 (1 hour)`}),placeholder:`3600000`,min:1e3})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`upsertStatementTimeout`,label:`Upsert query timeout (ms)`,description:(0,L.jsx)(`span`,{children:"default: server `database.queryTimeout`"}),placeholder:`database.queryTimeout`,min:1e3})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`delayBetweenBatches`,label:`Delay between batches (ms)`,description:(0,L.jsx)(`span`,{children:`default: 0`}),placeholder:`0`,min:0,max:6e4})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`progressLogThreshold`,label:`Log progress every N resources`,description:(0,L.jsx)(`span`,{children:`default: 50,000`}),placeholder:`50000`,min:1})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`endTimestampBufferMinutes`,label:`End timestamp buffer (minutes)`,description:(0,L.jsx)(`span`,{children:`default: 5`}),placeholder:`5`,min:1})}),(0,L.jsx)(wm.Col,{span:6,children:(0,L.jsx)(N_,{name:`maxIterationAttempts`,label:`Max iteration attempts`,description:(0,L.jsx)(`span`,{children:`default: 3`}),placeholder:`3`,min:1,max:20})})]})}),(0,L.jsx)(W,{type:`submit`,children:`Reindex`})]})})}function GK({setModalTitle:e,setModalContent:t,openModal:n}){let r=Q(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(),f=(0,b.useMemo)(()=>{if(i?.reference)return{"_has:ProjectMembership:profile:project":i.reference}},[i]);(0,b.useEffect)(()=>{if(d(void 0),!o?.reference&&!i?.reference){l(void 0);return}r.searchResources(`ProjectMembership`,{profile:o?.reference,project:i?.reference,_count:20}).then(e=>{l(e),e.length===1&&d(WS(e[0]))}).catch(e=>{console.error(e),Y({color:`red`,message:Lx(e),autoClose:!1})})},[r,o,i]);let p=(0,b.useMemo)(()=>{let e={};return o?.reference&&(e.profile=o?.reference),i?.reference&&(e.project=i?.reference),e},[o,i]);function m(i){if(!i.query){Y({color:`red`,message:`Query is required`,autoClose:!1});return}let a=i.onBehalfOfProjectMembership;delete i.onBehalfOfProjectMembership;let o={query:i.query,analyze:i.analyze===`on`,count:i.count===`on`,format:`text`},s={};a&&(s[`x-medplum-on-behalf-of`]=a),r.post(`fhir/R4/$explain`,o,void 0,{headers:s}).then(r=>{e(`Database Explain`);let i=r.parameter?.find(e=>e.name===`explain`)?.valueString,a=r.parameter?.find(e=>e.name===`query`)?.valueString,o=r.parameter?.find(e=>e.name===`parameters`)?.valueString,s=r.parameter?.find(e=>e.name===`countEstimate`)?.valueInteger?.toLocaleString(),c=r.parameter?.find(e=>e.name===`countAccurate`)?.valueInteger?.toLocaleString(),l=[a,o,`
|
|
221
221
|
`,i].join(`
|
|
222
|
-
`);t((0,L.jsxs)(K,{children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{fw:700,children:`Query`}),(0,L.jsx)(tm,{block:!0,maw:`100%`,style:{whiteSpace:`pre-wrap`},children:l})]}),(s||c)&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{fw:700,children:`Counts`}),s&&(0,L.jsxs)(U,{children:[`Estimate: `,s]}),c&&(0,L.jsxs)(U,{children:[`Accurate: `,c]})]})]})),n()}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})}return!r.isLoading()&&!r.isSuperAdmin()?(0,L.jsx)(GN,{outcome:Dx}):(0,L.jsx)(UM,{onSubmit:m,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(ab,{name:`query`,label:`Search`,required:!0,placeholder:`Observation?code=85354-9&_sort=-date&_count=5`}),(0,L.jsxs)(H,{children:[(0,L.jsx)(cp,{name:`analyze`,label:`Analyze`}),(0,L.jsx)(cp,{name:`count`,label:`Total count`})]}),(0,L.jsx)(sd,{label:`On Behalf Of`,children:(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(DF,{required:!0,placeholder:`Project`,targetTypes:[`Project`],name:`onBehalfOfProject`,onChange:a}),(0,L.jsx)(DF,{required:!0,placeholder:`Practitioner or Patient`,name:`onBehalfOfProfile`,targetTypes:[`Practitioner`,`Patient`],onChange:s,searchCriteria:f}),c?.length!==1&&(0,L.jsx)(DF,{required:!0,placeholder:`ProjectMembership`,name:`onBehalfOfProjectMembership`,targetTypes:[`ProjectMembership`],onChange:d,searchCriteria:p}),c?.length===1&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`input`,{type:`hidden`,name:`onBehalfOfProjectMembership`,value:GS(c[0])}),(0,L.jsx)(PP,{value:WS(c[0])})]}),!u&&(0,L.jsx)(U,{fs:`italic`,children:`On Behalf Of not set. Running as super admin`})]})}),(0,L.jsx)(W,{type:`submit`,children:`Explain Search`})]})})}var IK=[{label:`All`,value:`Patient,Practitioner,RelatedPerson`},{label:`Practitioner`,value:`Practitioner`},{label:`Patient`,value:`Patient`},{label:`RelatedPerson`,value:`RelatedPerson`}];function LK(e){let t=IG(Q()),n=MU(),[r,i]=(0,b.useState)(`Patient,Practitioner,RelatedPerson`),[a,o]=(0,b.useState)({resourceType:`ProjectMembership`,filters:[{code:`project`,operator:Z.EQUALS,value:`Project/`+t},{code:`profile-type`,operator:Z.EQUALS,value:r}],fields:e.fields,count:100});function s(e){i(e),o({...a,filters:[{code:`project`,operator:Z.EQUALS,value:`Project/`+t},{code:`profile-type`,operator:Z.EQUALS,value:e}]})}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(H,{justify:`space-between`,align:`center`,mb:`md`,wrap:`nowrap`,children:[(0,L.jsxs)(H,{gap:`md`,wrap:`nowrap`,children:[(0,L.jsx)(ey,{value:r,onChange:s,data:IK}),e.toolbarLeft]}),e.toolbarRight]}),(0,L.jsx)(kR,{search:a,onClick:e=>n(`/ProjectMembership/${e.resource.id}`),onChange:e=>o(e.definition),hideFilters:!0,hideToolbar:!0})]})}function RK(){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`ProjectMemberships by User and Profile Type`}),(0,L.jsx)(LK,{fields:[`user`,`profile`,`profile-type`,`accessPolicy`,`userConfiguration`,`active`,`admin`],toolbarLeft:(0,L.jsx)(W,{component:bj,to:`/admin/invite`,variant:`outline`,color:`blue`,leftSection:(0,L.jsx)(sj,{size:14}),children:`Invite New User`}),toolbarRight:(0,L.jsx)(Nd,{href:`https://www.medplum.com/docs/user-management`,target:`_blank`,rel:`noopener noreferrer`,size:`sm`,children:`Learn more about roles and user management`})})]})}var zK=new Map([[`1km`,`application/vnd.1000minds.decision-model+xml`],[`3dml`,`text/vnd.in3d.3dml`],[`3ds`,`image/x-3ds`],[`3g2`,`video/3gpp2`],[`3gp`,`video/3gp`],[`3gpp`,`video/3gpp`],[`3mf`,`model/3mf`],[`7z`,`application/x-7z-compressed`],[`7zip`,`application/x-7z-compressed`],[`123`,`application/vnd.lotus-1-2-3`],[`aab`,`application/x-authorware-bin`],[`aac`,`audio/x-acc`],[`aam`,`application/x-authorware-map`],[`aas`,`application/x-authorware-seg`],[`abw`,`application/x-abiword`],[`ac`,`application/vnd.nokia.n-gage.ac+xml`],[`ac3`,`audio/ac3`],[`acc`,`application/vnd.americandynamics.acc`],[`ace`,`application/x-ace-compressed`],[`acu`,`application/vnd.acucobol`],[`acutc`,`application/vnd.acucorp`],[`adp`,`audio/adpcm`],[`aep`,`application/vnd.audiograph`],[`afm`,`application/x-font-type1`],[`afp`,`application/vnd.ibm.modcap`],[`ahead`,`application/vnd.ahead.space`],[`ai`,`application/pdf`],[`aif`,`audio/x-aiff`],[`aifc`,`audio/x-aiff`],[`aiff`,`audio/x-aiff`],[`air`,`application/vnd.adobe.air-application-installer-package+zip`],[`ait`,`application/vnd.dvb.ait`],[`ami`,`application/vnd.amiga.ami`],[`amr`,`audio/amr`],[`apk`,`application/vnd.android.package-archive`],[`apng`,`image/apng`],[`appcache`,`text/cache-manifest`],[`application`,`application/x-ms-application`],[`apr`,`application/vnd.lotus-approach`],[`arc`,`application/x-freearc`],[`arj`,`application/x-arj`],[`asc`,`application/pgp-signature`],[`asf`,`video/x-ms-asf`],[`asm`,`text/x-asm`],[`aso`,`application/vnd.accpac.simply.aso`],[`asx`,`video/x-ms-asf`],[`atc`,`application/vnd.acucorp`],[`atom`,`application/atom+xml`],[`atomcat`,`application/atomcat+xml`],[`atomdeleted`,`application/atomdeleted+xml`],[`atomsvc`,`application/atomsvc+xml`],[`atx`,`application/vnd.antix.game-component`],[`au`,`audio/x-au`],[`avi`,`video/x-msvideo`],[`avif`,`image/avif`],[`aw`,`application/applixware`],[`azf`,`application/vnd.airzip.filesecure.azf`],[`azs`,`application/vnd.airzip.filesecure.azs`],[`azv`,`image/vnd.airzip.accelerator.azv`],[`azw`,`application/vnd.amazon.ebook`],[`b16`,`image/vnd.pco.b16`],[`bat`,`application/x-msdownload`],[`bcpio`,`application/x-bcpio`],[`bdf`,`application/x-font-bdf`],[`bdm`,`application/vnd.syncml.dm+wbxml`],[`bdoc`,`application/x-bdoc`],[`bed`,`application/vnd.realvnc.bed`],[`bh2`,`application/vnd.fujitsu.oasysprs`],[`bin`,`application/octet-stream`],[`blb`,`application/x-blorb`],[`blorb`,`application/x-blorb`],[`bmi`,`application/vnd.bmi`],[`bmml`,`application/vnd.balsamiq.bmml+xml`],[`bmp`,`image/bmp`],[`book`,`application/vnd.framemaker`],[`box`,`application/vnd.previewsystems.box`],[`boz`,`application/x-bzip2`],[`bpk`,`application/octet-stream`],[`bpmn`,`application/octet-stream`],[`bsp`,`model/vnd.valve.source.compiled-map`],[`btif`,`image/prs.btif`],[`buffer`,`application/octet-stream`],[`bz`,`application/x-bzip`],[`bz2`,`application/x-bzip2`],[`c`,`text/x-c`],[`c4d`,`application/vnd.clonk.c4group`],[`c4f`,`application/vnd.clonk.c4group`],[`c4g`,`application/vnd.clonk.c4group`],[`c4p`,`application/vnd.clonk.c4group`],[`c4u`,`application/vnd.clonk.c4group`],[`c11amc`,`application/vnd.cluetrust.cartomobile-config`],[`c11amz`,`application/vnd.cluetrust.cartomobile-config-pkg`],[`cab`,`application/vnd.ms-cab-compressed`],[`caf`,`audio/x-caf`],[`cap`,`application/vnd.tcpdump.pcap`],[`car`,`application/vnd.curl.car`],[`cat`,`application/vnd.ms-pki.seccat`],[`cb7`,`application/x-cbr`],[`cba`,`application/x-cbr`],[`cbr`,`application/x-cbr`],[`cbt`,`application/x-cbr`],[`cbz`,`application/x-cbr`],[`cc`,`text/x-c`],[`cco`,`application/x-cocoa`],[`cct`,`application/x-director`],[`ccxml`,`application/ccxml+xml`],[`cdbcmsg`,`application/vnd.contact.cmsg`],[`cda`,`application/x-cdf`],[`cdf`,`application/x-netcdf`],[`cdfx`,`application/cdfx+xml`],[`cdkey`,`application/vnd.mediastation.cdkey`],[`cdmia`,`application/cdmi-capability`],[`cdmic`,`application/cdmi-container`],[`cdmid`,`application/cdmi-domain`],[`cdmio`,`application/cdmi-object`],[`cdmiq`,`application/cdmi-queue`],[`cdr`,`application/cdr`],[`cdx`,`chemical/x-cdx`],[`cdxml`,`application/vnd.chemdraw+xml`],[`cdy`,`application/vnd.cinderella`],[`cer`,`application/pkix-cert`],[`cfs`,`application/x-cfs-compressed`],[`cgm`,`image/cgm`],[`chat`,`application/x-chat`],[`chm`,`application/vnd.ms-htmlhelp`],[`chrt`,`application/vnd.kde.kchart`],[`cif`,`chemical/x-cif`],[`cii`,`application/vnd.anser-web-certificate-issue-initiation`],[`cil`,`application/vnd.ms-artgalry`],[`cjs`,`application/node`],[`cla`,`application/vnd.claymore`],[`class`,`application/octet-stream`],[`clkk`,`application/vnd.crick.clicker.keyboard`],[`clkp`,`application/vnd.crick.clicker.palette`],[`clkt`,`application/vnd.crick.clicker.template`],[`clkw`,`application/vnd.crick.clicker.wordbank`],[`clkx`,`application/vnd.crick.clicker`],[`clp`,`application/x-msclip`],[`cmc`,`application/vnd.cosmocaller`],[`cmdf`,`chemical/x-cmdf`],[`cml`,`chemical/x-cml`],[`cmp`,`application/vnd.yellowriver-custom-menu`],[`cmx`,`image/x-cmx`],[`cod`,`application/vnd.rim.cod`],[`coffee`,`text/coffeescript`],[`com`,`application/x-msdownload`],[`conf`,`text/plain`],[`cpio`,`application/x-cpio`],[`cpp`,`text/x-c`],[`cpt`,`application/mac-compactpro`],[`crd`,`application/x-mscardfile`],[`crl`,`application/pkix-crl`],[`crt`,`application/x-x509-ca-cert`],[`crx`,`application/x-chrome-extension`],[`cryptonote`,`application/vnd.rig.cryptonote`],[`csh`,`application/x-csh`],[`csl`,`application/vnd.citationstyles.style+xml`],[`csml`,`chemical/x-csml`],[`csp`,`application/vnd.commonspace`],[`csr`,`application/octet-stream`],[`css`,`text/css`],[`cst`,`application/x-director`],[`csv`,`text/csv`],[`cu`,`application/cu-seeme`],[`curl`,`text/vnd.curl`],[`cww`,`application/prs.cww`],[`cxt`,`application/x-director`],[`cxx`,`text/x-c`],[`dae`,`model/vnd.collada+xml`],[`daf`,`application/vnd.mobius.daf`],[`dart`,`application/vnd.dart`],[`dataless`,`application/vnd.fdsn.seed`],[`davmount`,`application/davmount+xml`],[`dbf`,`application/vnd.dbf`],[`dbk`,`application/docbook+xml`],[`dcr`,`application/x-director`],[`dcurl`,`text/vnd.curl.dcurl`],[`dd2`,`application/vnd.oma.dd2+xml`],[`ddd`,`application/vnd.fujixerox.ddd`],[`ddf`,`application/vnd.syncml.dmddf+xml`],[`dds`,`image/vnd.ms-dds`],[`deb`,`application/x-debian-package`],[`def`,`text/plain`],[`deploy`,`application/octet-stream`],[`der`,`application/x-x509-ca-cert`],[`dfac`,`application/vnd.dreamfactory`],[`dgc`,`application/x-dgc-compressed`],[`dic`,`text/x-c`],[`dir`,`application/x-director`],[`dis`,`application/vnd.mobius.dis`],[`disposition-notification`,`message/disposition-notification`],[`dist`,`application/octet-stream`],[`distz`,`application/octet-stream`],[`djv`,`image/vnd.djvu`],[`djvu`,`image/vnd.djvu`],[`dll`,`application/octet-stream`],[`dmg`,`application/x-apple-diskimage`],[`dmn`,`application/octet-stream`],[`dmp`,`application/vnd.tcpdump.pcap`],[`dms`,`application/octet-stream`],[`dna`,`application/vnd.dna`],[`doc`,`application/msword`],[`docm`,`application/vnd.ms-word.template.macroEnabled.12`],[`docx`,`application/vnd.openxmlformats-officedocument.wordprocessingml.document`],[`dot`,`application/msword`],[`dotm`,`application/vnd.ms-word.template.macroEnabled.12`],[`dotx`,`application/vnd.openxmlformats-officedocument.wordprocessingml.template`],[`dp`,`application/vnd.osgi.dp`],[`dpg`,`application/vnd.dpgraph`],[`dra`,`audio/vnd.dra`],[`drle`,`image/dicom-rle`],[`dsc`,`text/prs.lines.tag`],[`dssc`,`application/dssc+der`],[`dtb`,`application/x-dtbook+xml`],[`dtd`,`application/xml-dtd`],[`dts`,`audio/vnd.dts`],[`dtshd`,`audio/vnd.dts.hd`],[`dump`,`application/octet-stream`],[`dvb`,`video/vnd.dvb.file`],[`dvi`,`application/x-dvi`],[`dwd`,`application/atsc-dwd+xml`],[`dwf`,`model/vnd.dwf`],[`dwg`,`image/vnd.dwg`],[`dxf`,`image/vnd.dxf`],[`dxp`,`application/vnd.spotfire.dxp`],[`dxr`,`application/x-director`],[`ear`,`application/java-archive`],[`ecelp4800`,`audio/vnd.nuera.ecelp4800`],[`ecelp7470`,`audio/vnd.nuera.ecelp7470`],[`ecelp9600`,`audio/vnd.nuera.ecelp9600`],[`ecma`,`application/ecmascript`],[`edm`,`application/vnd.novadigm.edm`],[`edx`,`application/vnd.novadigm.edx`],[`efif`,`application/vnd.picsel`],[`ei6`,`application/vnd.pg.osasli`],[`elc`,`application/octet-stream`],[`emf`,`image/emf`],[`eml`,`message/rfc822`],[`emma`,`application/emma+xml`],[`emotionml`,`application/emotionml+xml`],[`emz`,`application/x-msmetafile`],[`eol`,`audio/vnd.digital-winds`],[`eot`,`application/vnd.ms-fontobject`],[`eps`,`application/postscript`],[`epub`,`application/epub+zip`],[`es`,`application/ecmascript`],[`es3`,`application/vnd.eszigno3+xml`],[`esa`,`application/vnd.osgi.subsystem`],[`esf`,`application/vnd.epson.esf`],[`et3`,`application/vnd.eszigno3+xml`],[`etx`,`text/x-setext`],[`eva`,`application/x-eva`],[`evy`,`application/x-envoy`],[`exe`,`application/octet-stream`],[`exi`,`application/exi`],[`exp`,`application/express`],[`exr`,`image/aces`],[`ext`,`application/vnd.novadigm.ext`],[`ez`,`application/andrew-inset`],[`ez2`,`application/vnd.ezpix-album`],[`ez3`,`application/vnd.ezpix-package`],[`f`,`text/x-fortran`],[`f4v`,`video/mp4`],[`f77`,`text/x-fortran`],[`f90`,`text/x-fortran`],[`fbs`,`image/vnd.fastbidsheet`],[`fcdt`,`application/vnd.adobe.formscentral.fcdt`],[`fcs`,`application/vnd.isac.fcs`],[`fdf`,`application/vnd.fdf`],[`fdt`,`application/fdt+xml`],[`fe_launch`,`application/vnd.denovo.fcselayout-link`],[`fg5`,`application/vnd.fujitsu.oasysgp`],[`fgd`,`application/x-director`],[`fh`,`image/x-freehand`],[`fh4`,`image/x-freehand`],[`fh5`,`image/x-freehand`],[`fh7`,`image/x-freehand`],[`fhc`,`image/x-freehand`],[`fig`,`application/x-xfig`],[`fits`,`image/fits`],[`flac`,`audio/x-flac`],[`fli`,`video/x-fli`],[`flo`,`application/vnd.micrografx.flo`],[`flv`,`video/x-flv`],[`flw`,`application/vnd.kde.kivio`],[`flx`,`text/vnd.fmi.flexstor`],[`fly`,`text/vnd.fly`],[`fm`,`application/vnd.framemaker`],[`fnc`,`application/vnd.frogans.fnc`],[`fo`,`application/vnd.software602.filler.form+xml`],[`for`,`text/x-fortran`],[`fpx`,`image/vnd.fpx`],[`frame`,`application/vnd.framemaker`],[`fsc`,`application/vnd.fsc.weblaunch`],[`fst`,`image/vnd.fst`],[`ftc`,`application/vnd.fluxtime.clip`],[`fti`,`application/vnd.anser-web-funds-transfer-initiation`],[`fvt`,`video/vnd.fvt`],[`fxp`,`application/vnd.adobe.fxp`],[`fxpl`,`application/vnd.adobe.fxp`],[`fzs`,`application/vnd.fuzzysheet`],[`g2w`,`application/vnd.geoplan`],[`g3`,`image/g3fax`],[`g3w`,`application/vnd.geospace`],[`gac`,`application/vnd.groove-account`],[`gam`,`application/x-tads`],[`gbr`,`application/rpki-ghostbusters`],[`gca`,`application/x-gca-compressed`],[`gdl`,`model/vnd.gdl`],[`gdoc`,`application/vnd.google-apps.document`],[`geo`,`application/vnd.dynageo`],[`geojson`,`application/geo+json`],[`gex`,`application/vnd.geometry-explorer`],[`ggb`,`application/vnd.geogebra.file`],[`ggt`,`application/vnd.geogebra.tool`],[`ghf`,`application/vnd.groove-help`],[`gif`,`image/gif`],[`gim`,`application/vnd.groove-identity-message`],[`glb`,`model/gltf-binary`],[`gltf`,`model/gltf+json`],[`gml`,`application/gml+xml`],[`gmx`,`application/vnd.gmx`],[`gnumeric`,`application/x-gnumeric`],[`gpg`,`application/gpg-keys`],[`gph`,`application/vnd.flographit`],[`gpx`,`application/gpx+xml`],[`gqf`,`application/vnd.grafeq`],[`gqs`,`application/vnd.grafeq`],[`gram`,`application/srgs`],[`gramps`,`application/x-gramps-xml`],[`gre`,`application/vnd.geometry-explorer`],[`grv`,`application/vnd.groove-injector`],[`grxml`,`application/srgs+xml`],[`gsf`,`application/x-font-ghostscript`],[`gsheet`,`application/vnd.google-apps.spreadsheet`],[`gslides`,`application/vnd.google-apps.presentation`],[`gtar`,`application/x-gtar`],[`gtm`,`application/vnd.groove-tool-message`],[`gtw`,`model/vnd.gtw`],[`gv`,`text/vnd.graphviz`],[`gxf`,`application/gxf`],[`gxt`,`application/vnd.geonext`],[`gz`,`application/gzip`],[`gzip`,`application/gzip`],[`h`,`text/x-c`],[`h261`,`video/h261`],[`h263`,`video/h263`],[`h264`,`video/h264`],[`hal`,`application/vnd.hal+xml`],[`hbci`,`application/vnd.hbci`],[`hbs`,`text/x-handlebars-template`],[`hdd`,`application/x-virtualbox-hdd`],[`hdf`,`application/x-hdf`],[`heic`,`image/heic`],[`heics`,`image/heic-sequence`],[`heif`,`image/heif`],[`heifs`,`image/heif-sequence`],[`hej2`,`image/hej2k`],[`held`,`application/atsc-held+xml`],[`hh`,`text/x-c`],[`hjson`,`application/hjson`],[`hlp`,`application/winhlp`],[`hpgl`,`application/vnd.hp-hpgl`],[`hpid`,`application/vnd.hp-hpid`],[`hps`,`application/vnd.hp-hps`],[`hqx`,`application/mac-binhex40`],[`hsj2`,`image/hsj2`],[`htc`,`text/x-component`],[`htke`,`application/vnd.kenameaapp`],[`htm`,`text/html`],[`html`,`text/html`],[`hvd`,`application/vnd.yamaha.hv-dic`],[`hvp`,`application/vnd.yamaha.hv-voice`],[`hvs`,`application/vnd.yamaha.hv-script`],[`i2g`,`application/vnd.intergeo`],[`icc`,`application/vnd.iccprofile`],[`ice`,`x-conference/x-cooltalk`],[`icm`,`application/vnd.iccprofile`],[`ico`,`image/x-icon`],[`ics`,`text/calendar`],[`ief`,`image/ief`],[`ifb`,`text/calendar`],[`ifm`,`application/vnd.shana.informed.formdata`],[`iges`,`model/iges`],[`igl`,`application/vnd.igloader`],[`igm`,`application/vnd.insors.igm`],[`igs`,`model/iges`],[`igx`,`application/vnd.micrografx.igx`],[`iif`,`application/vnd.shana.informed.interchange`],[`img`,`application/octet-stream`],[`imp`,`application/vnd.accpac.simply.imp`],[`ims`,`application/vnd.ms-ims`],[`in`,`text/plain`],[`ini`,`text/plain`],[`ink`,`application/inkml+xml`],[`inkml`,`application/inkml+xml`],[`install`,`application/x-install-instructions`],[`iota`,`application/vnd.astraea-software.iota`],[`ipfix`,`application/ipfix`],[`ipk`,`application/vnd.shana.informed.package`],[`irm`,`application/vnd.ibm.rights-management`],[`irp`,`application/vnd.irepository.package+xml`],[`iso`,`application/x-iso9660-image`],[`itp`,`application/vnd.shana.informed.formtemplate`],[`its`,`application/its+xml`],[`ivp`,`application/vnd.immervision-ivp`],[`ivu`,`application/vnd.immervision-ivu`],[`jad`,`text/vnd.sun.j2me.app-descriptor`],[`jade`,`text/jade`],[`jam`,`application/vnd.jam`],[`jar`,`application/java-archive`],[`jardiff`,`application/x-java-archive-diff`],[`java`,`text/x-java-source`],[`jhc`,`image/jphc`],[`jisp`,`application/vnd.jisp`],[`jls`,`image/jls`],[`jlt`,`application/vnd.hp-jlyt`],[`jng`,`image/x-jng`],[`jnlp`,`application/x-java-jnlp-file`],[`joda`,`application/vnd.joost.joda-archive`],[`jp2`,`image/jp2`],[`jpe`,`image/jpeg`],[`jpeg`,`image/jpeg`],[`jpf`,`image/jpx`],[`jpg`,`image/jpeg`],[`jpg2`,`image/jp2`],[`jpgm`,`video/jpm`],[`jpgv`,`video/jpeg`],[`jph`,`image/jph`],[`jpm`,`video/jpm`],[`jpx`,`image/jpx`],[`js`,`application/javascript`],[`json`,`application/json`],[`json5`,`application/json5`],[`jsonld`,`application/ld+json`],[`jsonl`,`application/jsonl`],[`jsonml`,`application/jsonml+json`],[`jsx`,`text/jsx`],[`jxr`,`image/jxr`],[`jxra`,`image/jxra`],[`jxrs`,`image/jxrs`],[`jxs`,`image/jxs`],[`jxsc`,`image/jxsc`],[`jxsi`,`image/jxsi`],[`jxss`,`image/jxss`],[`kar`,`audio/midi`],[`karbon`,`application/vnd.kde.karbon`],[`kdb`,`application/octet-stream`],[`kdbx`,`application/x-keepass2`],[`key`,`application/x-iwork-keynote-sffkey`],[`kfo`,`application/vnd.kde.kformula`],[`kia`,`application/vnd.kidspiration`],[`kml`,`application/vnd.google-earth.kml+xml`],[`kmz`,`application/vnd.google-earth.kmz`],[`kne`,`application/vnd.kinar`],[`knp`,`application/vnd.kinar`],[`kon`,`application/vnd.kde.kontour`],[`kpr`,`application/vnd.kde.kpresenter`],[`kpt`,`application/vnd.kde.kpresenter`],[`kpxx`,`application/vnd.ds-keypoint`],[`ksp`,`application/vnd.kde.kspread`],[`ktr`,`application/vnd.kahootz`],[`ktx`,`image/ktx`],[`ktx2`,`image/ktx2`],[`ktz`,`application/vnd.kahootz`],[`kwd`,`application/vnd.kde.kword`],[`kwt`,`application/vnd.kde.kword`],[`lasxml`,`application/vnd.las.las+xml`],[`latex`,`application/x-latex`],[`lbd`,`application/vnd.llamagraphics.life-balance.desktop`],[`lbe`,`application/vnd.llamagraphics.life-balance.exchange+xml`],[`les`,`application/vnd.hhe.lesson-player`],[`less`,`text/less`],[`lgr`,`application/lgr+xml`],[`lha`,`application/octet-stream`],[`link66`,`application/vnd.route66.link66+xml`],[`list`,`text/plain`],[`list3820`,`application/vnd.ibm.modcap`],[`listafp`,`application/vnd.ibm.modcap`],[`litcoffee`,`text/coffeescript`],[`lnk`,`application/x-ms-shortcut`],[`log`,`text/plain`],[`lostxml`,`application/lost+xml`],[`lrf`,`application/octet-stream`],[`lrm`,`application/vnd.ms-lrm`],[`ltf`,`application/vnd.frogans.ltf`],[`lua`,`text/x-lua`],[`luac`,`application/x-lua-bytecode`],[`lvp`,`audio/vnd.lucent.voice`],[`lwp`,`application/vnd.lotus-wordpro`],[`lzh`,`application/octet-stream`],[`m1v`,`video/mpeg`],[`m2a`,`audio/mpeg`],[`m2v`,`video/mpeg`],[`m3a`,`audio/mpeg`],[`m3u`,`text/plain`],[`m3u8`,`application/vnd.apple.mpegurl`],[`m4a`,`audio/x-m4a`],[`m4p`,`application/mp4`],[`m4s`,`video/iso.segment`],[`m4u`,`application/vnd.mpegurl`],[`m4v`,`video/x-m4v`],[`m13`,`application/x-msmediaview`],[`m14`,`application/x-msmediaview`],[`m21`,`application/mp21`],[`ma`,`application/mathematica`],[`mads`,`application/mads+xml`],[`maei`,`application/mmt-aei+xml`],[`mag`,`application/vnd.ecowin.chart`],[`maker`,`application/vnd.framemaker`],[`man`,`text/troff`],[`manifest`,`text/cache-manifest`],[`map`,`application/json`],[`mar`,`application/octet-stream`],[`markdown`,`text/markdown`],[`mathml`,`application/mathml+xml`],[`mb`,`application/mathematica`],[`mbk`,`application/vnd.mobius.mbk`],[`mbox`,`application/mbox`],[`mc1`,`application/vnd.medcalcdata`],[`mcd`,`application/vnd.mcd`],[`mcurl`,`text/vnd.curl.mcurl`],[`md`,`text/markdown`],[`mdb`,`application/x-msaccess`],[`mdi`,`image/vnd.ms-modi`],[`mdx`,`text/mdx`],[`me`,`text/troff`],[`mesh`,`model/mesh`],[`meta4`,`application/metalink4+xml`],[`metalink`,`application/metalink+xml`],[`mets`,`application/mets+xml`],[`mfm`,`application/vnd.mfmp`],[`mft`,`application/rpki-manifest`],[`mgp`,`application/vnd.osgeo.mapguide.package`],[`mgz`,`application/vnd.proteus.magazine`],[`mid`,`audio/midi`],[`midi`,`audio/midi`],[`mie`,`application/x-mie`],[`mif`,`application/vnd.mif`],[`mime`,`message/rfc822`],[`mj2`,`video/mj2`],[`mjp2`,`video/mj2`],[`mjs`,`application/javascript`],[`mk3d`,`video/x-matroska`],[`mka`,`audio/x-matroska`],[`mkd`,`text/x-markdown`],[`mks`,`video/x-matroska`],[`mkv`,`video/x-matroska`],[`mlp`,`application/vnd.dolby.mlp`],[`mmd`,`application/vnd.chipnuts.karaoke-mmd`],[`mmf`,`application/vnd.smaf`],[`mml`,`text/mathml`],[`mmr`,`image/vnd.fujixerox.edmics-mmr`],[`mng`,`video/x-mng`],[`mny`,`application/x-msmoney`],[`mobi`,`application/x-mobipocket-ebook`],[`mods`,`application/mods+xml`],[`mov`,`video/quicktime`],[`movie`,`video/x-sgi-movie`],[`mp2`,`audio/mpeg`],[`mp2a`,`audio/mpeg`],[`mp3`,`audio/mpeg`],[`mp4`,`video/mp4`],[`mp4a`,`audio/mp4`],[`mp4s`,`application/mp4`],[`mp4v`,`video/mp4`],[`mp21`,`application/mp21`],[`mpc`,`application/vnd.mophun.certificate`],[`mpd`,`application/dash+xml`],[`mpe`,`video/mpeg`],[`mpeg`,`video/mpeg`],[`mpg`,`video/mpeg`],[`mpg4`,`video/mp4`],[`mpga`,`audio/mpeg`],[`mpkg`,`application/vnd.apple.installer+xml`],[`mpm`,`application/vnd.blueice.multipass`],[`mpn`,`application/vnd.mophun.application`],[`mpp`,`application/vnd.ms-project`],[`mpt`,`application/vnd.ms-project`],[`mpy`,`application/vnd.ibm.minipay`],[`mqy`,`application/vnd.mobius.mqy`],[`mrc`,`application/marc`],[`mrcx`,`application/marcxml+xml`],[`ms`,`text/troff`],[`mscml`,`application/mediaservercontrol+xml`],[`mseed`,`application/vnd.fdsn.mseed`],[`mseq`,`application/vnd.mseq`],[`msf`,`application/vnd.epson.msf`],[`msg`,`application/vnd.ms-outlook`],[`msh`,`model/mesh`],[`msi`,`application/x-msdownload`],[`msl`,`application/vnd.mobius.msl`],[`msm`,`application/octet-stream`],[`msp`,`application/octet-stream`],[`msty`,`application/vnd.muvee.style`],[`mtl`,`model/mtl`],[`mts`,`model/vnd.mts`],[`mus`,`application/vnd.musician`],[`musd`,`application/mmt-usd+xml`],[`musicxml`,`application/vnd.recordare.musicxml+xml`],[`mvb`,`application/x-msmediaview`],[`mvt`,`application/vnd.mapbox-vector-tile`],[`mwf`,`application/vnd.mfer`],[`mxf`,`application/mxf`],[`mxl`,`application/vnd.recordare.musicxml`],[`mxmf`,`audio/mobile-xmf`],[`mxml`,`application/xv+xml`],[`mxs`,`application/vnd.triscape.mxs`],[`mxu`,`video/vnd.mpegurl`],[`n-gage`,`application/vnd.nokia.n-gage.symbian.install`],[`n3`,`text/n3`],[`nb`,`application/mathematica`],[`nbp`,`application/vnd.wolfram.player`],[`nc`,`application/x-netcdf`],[`ncx`,`application/x-dtbncx+xml`],[`nfo`,`text/x-nfo`],[`ngdat`,`application/vnd.nokia.n-gage.data`],[`nitf`,`application/vnd.nitf`],[`nlu`,`application/vnd.neurolanguage.nlu`],[`nml`,`application/vnd.enliven`],[`nnd`,`application/vnd.noblenet-directory`],[`nns`,`application/vnd.noblenet-sealer`],[`nnw`,`application/vnd.noblenet-web`],[`npx`,`image/vnd.net-fpx`],[`nq`,`application/n-quads`],[`nsc`,`application/x-conference`],[`nsf`,`application/vnd.lotus-notes`],[`nt`,`application/n-triples`],[`ntf`,`application/vnd.nitf`],[`numbers`,`application/x-iwork-numbers-sffnumbers`],[`nzb`,`application/x-nzb`],[`oa2`,`application/vnd.fujitsu.oasys2`],[`oa3`,`application/vnd.fujitsu.oasys3`],[`oas`,`application/vnd.fujitsu.oasys`],[`obd`,`application/x-msbinder`],[`obgx`,`application/vnd.openblox.game+xml`],[`obj`,`model/obj`],[`oda`,`application/oda`],[`odb`,`application/vnd.oasis.opendocument.database`],[`odc`,`application/vnd.oasis.opendocument.chart`],[`odf`,`application/vnd.oasis.opendocument.formula`],[`odft`,`application/vnd.oasis.opendocument.formula-template`],[`odg`,`application/vnd.oasis.opendocument.graphics`],[`odi`,`application/vnd.oasis.opendocument.image`],[`odm`,`application/vnd.oasis.opendocument.text-master`],[`odp`,`application/vnd.oasis.opendocument.presentation`],[`ods`,`application/vnd.oasis.opendocument.spreadsheet`],[`odt`,`application/vnd.oasis.opendocument.text`],[`oga`,`audio/ogg`],[`ogex`,`model/vnd.opengex`],[`ogg`,`audio/ogg`],[`ogv`,`video/ogg`],[`ogx`,`application/ogg`],[`omdoc`,`application/omdoc+xml`],[`onepkg`,`application/onenote`],[`onetmp`,`application/onenote`],[`onetoc`,`application/onenote`],[`onetoc2`,`application/onenote`],[`opf`,`application/oebps-package+xml`],[`opml`,`text/x-opml`],[`oprc`,`application/vnd.palm`],[`opus`,`audio/ogg`],[`org`,`text/x-org`],[`osf`,`application/vnd.yamaha.openscoreformat`],[`osfpvg`,`application/vnd.yamaha.openscoreformat.osfpvg+xml`],[`osm`,`application/vnd.openstreetmap.data+xml`],[`otc`,`application/vnd.oasis.opendocument.chart-template`],[`otf`,`font/otf`],[`otg`,`application/vnd.oasis.opendocument.graphics-template`],[`oth`,`application/vnd.oasis.opendocument.text-web`],[`oti`,`application/vnd.oasis.opendocument.image-template`],[`otp`,`application/vnd.oasis.opendocument.presentation-template`],[`ots`,`application/vnd.oasis.opendocument.spreadsheet-template`],[`ott`,`application/vnd.oasis.opendocument.text-template`],[`ova`,`application/x-virtualbox-ova`],[`ovf`,`application/x-virtualbox-ovf`],[`owl`,`application/rdf+xml`],[`oxps`,`application/oxps`],[`oxt`,`application/vnd.openofficeorg.extension`],[`p`,`text/x-pascal`],[`p7a`,`application/x-pkcs7-signature`],[`p7b`,`application/x-pkcs7-certificates`],[`p7c`,`application/pkcs7-mime`],[`p7m`,`application/pkcs7-mime`],[`p7r`,`application/x-pkcs7-certreqresp`],[`p7s`,`application/pkcs7-signature`],[`p8`,`application/pkcs8`],[`p10`,`application/x-pkcs10`],[`p12`,`application/x-pkcs12`],[`pac`,`application/x-ns-proxy-autoconfig`],[`pages`,`application/x-iwork-pages-sffpages`],[`pas`,`text/x-pascal`],[`paw`,`application/vnd.pawaafile`],[`pbd`,`application/vnd.powerbuilder6`],[`pbm`,`image/x-portable-bitmap`],[`pcap`,`application/vnd.tcpdump.pcap`],[`pcf`,`application/x-font-pcf`],[`pcl`,`application/vnd.hp-pcl`],[`pclxl`,`application/vnd.hp-pclxl`],[`pct`,`image/x-pict`],[`pcurl`,`application/vnd.curl.pcurl`],[`pcx`,`image/x-pcx`],[`pdb`,`application/x-pilot`],[`pde`,`text/x-processing`],[`pdf`,`application/pdf`],[`pem`,`application/x-x509-user-cert`],[`pfa`,`application/x-font-type1`],[`pfb`,`application/x-font-type1`],[`pfm`,`application/x-font-type1`],[`pfr`,`application/font-tdpfr`],[`pfx`,`application/x-pkcs12`],[`pgm`,`image/x-portable-graymap`],[`pgn`,`application/x-chess-pgn`],[`pgp`,`application/pgp`],[`php`,`application/x-httpd-php`],[`php3`,`application/x-httpd-php`],[`php4`,`application/x-httpd-php`],[`phps`,`application/x-httpd-php-source`],[`phtml`,`application/x-httpd-php`],[`pic`,`image/x-pict`],[`pkg`,`application/octet-stream`],[`pki`,`application/pkixcmp`],[`pkipath`,`application/pkix-pkipath`],[`pkpass`,`application/vnd.apple.pkpass`],[`pl`,`application/x-perl`],[`plb`,`application/vnd.3gpp.pic-bw-large`],[`plc`,`application/vnd.mobius.plc`],[`plf`,`application/vnd.pocketlearn`],[`pls`,`application/pls+xml`],[`pm`,`application/x-perl`],[`pml`,`application/vnd.ctc-posml`],[`png`,`image/png`],[`pnm`,`image/x-portable-anymap`],[`portpkg`,`application/vnd.macports.portpkg`],[`pot`,`application/vnd.ms-powerpoint`],[`potm`,`application/vnd.ms-powerpoint.presentation.macroEnabled.12`],[`potx`,`application/vnd.openxmlformats-officedocument.presentationml.template`],[`ppa`,`application/vnd.ms-powerpoint`],[`ppam`,`application/vnd.ms-powerpoint.addin.macroEnabled.12`],[`ppd`,`application/vnd.cups-ppd`],[`ppm`,`image/x-portable-pixmap`],[`pps`,`application/vnd.ms-powerpoint`],[`ppsm`,`application/vnd.ms-powerpoint.slideshow.macroEnabled.12`],[`ppsx`,`application/vnd.openxmlformats-officedocument.presentationml.slideshow`],[`ppt`,`application/powerpoint`],[`pptm`,`application/vnd.ms-powerpoint.presentation.macroEnabled.12`],[`pptx`,`application/vnd.openxmlformats-officedocument.presentationml.presentation`],[`pqa`,`application/vnd.palm`],[`prc`,`application/x-pilot`],[`pre`,`application/vnd.lotus-freelance`],[`prf`,`application/pics-rules`],[`provx`,`application/provenance+xml`],[`ps`,`application/postscript`],[`psb`,`application/vnd.3gpp.pic-bw-small`],[`psd`,`application/x-photoshop`],[`psf`,`application/x-font-linux-psf`],[`pskcxml`,`application/pskc+xml`],[`pti`,`image/prs.pti`],[`ptid`,`application/vnd.pvi.ptid1`],[`pub`,`application/x-mspublisher`],[`pvb`,`application/vnd.3gpp.pic-bw-var`],[`pwn`,`application/vnd.3m.post-it-notes`],[`pya`,`audio/vnd.ms-playready.media.pya`],[`pyv`,`video/vnd.ms-playready.media.pyv`],[`qam`,`application/vnd.epson.quickanime`],[`qbo`,`application/vnd.intu.qbo`],[`qfx`,`application/vnd.intu.qfx`],[`qps`,`application/vnd.publishare-delta-tree`],[`qt`,`video/quicktime`],[`qwd`,`application/vnd.quark.quarkxpress`],[`qwt`,`application/vnd.quark.quarkxpress`],[`qxb`,`application/vnd.quark.quarkxpress`],[`qxd`,`application/vnd.quark.quarkxpress`],[`qxl`,`application/vnd.quark.quarkxpress`],[`qxt`,`application/vnd.quark.quarkxpress`],[`ra`,`audio/x-realaudio`],[`ram`,`audio/x-pn-realaudio`],[`raml`,`application/raml+yaml`],[`rapd`,`application/route-apd+xml`],[`rar`,`application/x-rar`],[`ras`,`image/x-cmu-raster`],[`rcprofile`,`application/vnd.ipunplugged.rcprofile`],[`rdf`,`application/rdf+xml`],[`rdz`,`application/vnd.data-vision.rdz`],[`relo`,`application/p2p-overlay+xml`],[`rep`,`application/vnd.businessobjects`],[`res`,`application/x-dtbresource+xml`],[`rgb`,`image/x-rgb`],[`rif`,`application/reginfo+xml`],[`rip`,`audio/vnd.rip`],[`ris`,`application/x-research-info-systems`],[`rl`,`application/resource-lists+xml`],[`rlc`,`image/vnd.fujixerox.edmics-rlc`],[`rld`,`application/resource-lists-diff+xml`],[`rm`,`audio/x-pn-realaudio`],[`rmi`,`audio/midi`],[`rmp`,`audio/x-pn-realaudio-plugin`],[`rms`,`application/vnd.jcp.javame.midlet-rms`],[`rmvb`,`application/vnd.rn-realmedia-vbr`],[`rnc`,`application/relax-ng-compact-syntax`],[`rng`,`application/xml`],[`roa`,`application/rpki-roa`],[`roff`,`text/troff`],[`rp9`,`application/vnd.cloanto.rp9`],[`rpm`,`audio/x-pn-realaudio-plugin`],[`rpss`,`application/vnd.nokia.radio-presets`],[`rpst`,`application/vnd.nokia.radio-preset`],[`rq`,`application/sparql-query`],[`rs`,`application/rls-services+xml`],[`rsa`,`application/x-pkcs7`],[`rsat`,`application/atsc-rsat+xml`],[`rsd`,`application/rsd+xml`],[`rsheet`,`application/urc-ressheet+xml`],[`rss`,`application/rss+xml`],[`rtf`,`text/rtf`],[`rtx`,`text/richtext`],[`run`,`application/x-makeself`],[`rusd`,`application/route-usd+xml`],[`rv`,`video/vnd.rn-realvideo`],[`s`,`text/x-asm`],[`s3m`,`audio/s3m`],[`saf`,`application/vnd.yamaha.smaf-audio`],[`sass`,`text/x-sass`],[`sbml`,`application/sbml+xml`],[`sc`,`application/vnd.ibm.secure-container`],[`scd`,`application/x-msschedule`],[`scm`,`application/vnd.lotus-screencam`],[`scq`,`application/scvp-cv-request`],[`scs`,`application/scvp-cv-response`],[`scss`,`text/x-scss`],[`scurl`,`text/vnd.curl.scurl`],[`sda`,`application/vnd.stardivision.draw`],[`sdc`,`application/vnd.stardivision.calc`],[`sdd`,`application/vnd.stardivision.impress`],[`sdkd`,`application/vnd.solent.sdkm+xml`],[`sdkm`,`application/vnd.solent.sdkm+xml`],[`sdp`,`application/sdp`],[`sdw`,`application/vnd.stardivision.writer`],[`sea`,`application/octet-stream`],[`see`,`application/vnd.seemail`],[`seed`,`application/vnd.fdsn.seed`],[`sema`,`application/vnd.sema`],[`semd`,`application/vnd.semd`],[`semf`,`application/vnd.semf`],[`senmlx`,`application/senml+xml`],[`sensmlx`,`application/sensml+xml`],[`ser`,`application/java-serialized-object`],[`setpay`,`application/set-payment-initiation`],[`setreg`,`application/set-registration-initiation`],[`sfd-hdstx`,`application/vnd.hydrostatix.sof-data`],[`sfs`,`application/vnd.spotfire.sfs`],[`sfv`,`text/x-sfv`],[`sgi`,`image/sgi`],[`sgl`,`application/vnd.stardivision.writer-global`],[`sgm`,`text/sgml`],[`sgml`,`text/sgml`],[`sh`,`application/x-sh`],[`shar`,`application/x-shar`],[`shex`,`text/shex`],[`shf`,`application/shf+xml`],[`shtml`,`text/html`],[`sid`,`image/x-mrsid-image`],[`sieve`,`application/sieve`],[`sig`,`application/pgp-signature`],[`sil`,`audio/silk`],[`silo`,`model/mesh`],[`sis`,`application/vnd.symbian.install`],[`sisx`,`application/vnd.symbian.install`],[`sit`,`application/x-stuffit`],[`sitx`,`application/x-stuffitx`],[`siv`,`application/sieve`],[`skd`,`application/vnd.koan`],[`skm`,`application/vnd.koan`],[`skp`,`application/vnd.koan`],[`skt`,`application/vnd.koan`],[`sldm`,`application/vnd.ms-powerpoint.slide.macroenabled.12`],[`sldx`,`application/vnd.openxmlformats-officedocument.presentationml.slide`],[`slim`,`text/slim`],[`slm`,`text/slim`],[`sls`,`application/route-s-tsid+xml`],[`slt`,`application/vnd.epson.salt`],[`sm`,`application/vnd.stepmania.stepchart`],[`smf`,`application/vnd.stardivision.math`],[`smi`,`application/smil`],[`smil`,`application/smil`],[`smv`,`video/x-smv`],[`smzip`,`application/vnd.stepmania.package`],[`snd`,`audio/basic`],[`snf`,`application/x-font-snf`],[`so`,`application/octet-stream`],[`spc`,`application/x-pkcs7-certificates`],[`spdx`,`text/spdx`],[`spf`,`application/vnd.yamaha.smaf-phrase`],[`spl`,`application/x-futuresplash`],[`spot`,`text/vnd.in3d.spot`],[`spp`,`application/scvp-vp-response`],[`spq`,`application/scvp-vp-request`],[`spx`,`audio/ogg`],[`sql`,`application/x-sql`],[`src`,`application/x-wais-source`],[`srt`,`application/x-subrip`],[`sru`,`application/sru+xml`],[`srx`,`application/sparql-results+xml`],[`ssdl`,`application/ssdl+xml`],[`sse`,`application/vnd.kodak-descriptor`],[`ssf`,`application/vnd.epson.ssf`],[`ssml`,`application/ssml+xml`],[`sst`,`application/octet-stream`],[`st`,`application/vnd.sailingtracker.track`],[`stc`,`application/vnd.sun.xml.calc.template`],[`std`,`application/vnd.sun.xml.draw.template`],[`stf`,`application/vnd.wt.stf`],[`sti`,`application/vnd.sun.xml.impress.template`],[`stk`,`application/hyperstudio`],[`stl`,`model/stl`],[`stpx`,`model/step+xml`],[`stpxz`,`model/step-xml+zip`],[`stpz`,`model/step+zip`],[`str`,`application/vnd.pg.format`],[`stw`,`application/vnd.sun.xml.writer.template`],[`styl`,`text/stylus`],[`stylus`,`text/stylus`],[`sub`,`text/vnd.dvb.subtitle`],[`sus`,`application/vnd.sus-calendar`],[`susp`,`application/vnd.sus-calendar`],[`sv4cpio`,`application/x-sv4cpio`],[`sv4crc`,`application/x-sv4crc`],[`svc`,`application/vnd.dvb.service`],[`svd`,`application/vnd.svd`],[`svg`,`image/svg+xml`],[`svgz`,`image/svg+xml`],[`swa`,`application/x-director`],[`swf`,`application/x-shockwave-flash`],[`swi`,`application/vnd.aristanetworks.swi`],[`swidtag`,`application/swid+xml`],[`sxc`,`application/vnd.sun.xml.calc`],[`sxd`,`application/vnd.sun.xml.draw`],[`sxg`,`application/vnd.sun.xml.writer.global`],[`sxi`,`application/vnd.sun.xml.impress`],[`sxm`,`application/vnd.sun.xml.math`],[`sxw`,`application/vnd.sun.xml.writer`],[`t`,`text/troff`],[`t3`,`application/x-t3vm-image`],[`t38`,`image/t38`],[`taglet`,`application/vnd.mynfc`],[`tao`,`application/vnd.tao.intent-module-archive`],[`tap`,`image/vnd.tencent.tap`],[`tar`,`application/x-tar`],[`tcap`,`application/vnd.3gpp2.tcap`],[`tcl`,`application/x-tcl`],[`td`,`application/urc-targetdesc+xml`],[`teacher`,`application/vnd.smart.teacher`],[`tei`,`application/tei+xml`],[`teicorpus`,`application/tei+xml`],[`tex`,`application/x-tex`],[`texi`,`application/x-texinfo`],[`texinfo`,`application/x-texinfo`],[`text`,`text/plain`],[`tfi`,`application/thraud+xml`],[`tfm`,`application/x-tex-tfm`],[`tfx`,`image/tiff-fx`],[`tga`,`image/x-tga`],[`tgz`,`application/x-tar`],[`thmx`,`application/vnd.ms-officetheme`],[`tif`,`image/tiff`],[`tiff`,`image/tiff`],[`tk`,`application/x-tcl`],[`tmo`,`application/vnd.tmobile-livetv`],[`toml`,`application/toml`],[`torrent`,`application/x-bittorrent`],[`tpl`,`application/vnd.groove-tool-template`],[`tpt`,`application/vnd.trid.tpt`],[`tr`,`text/troff`],[`tra`,`application/vnd.trueapp`],[`trig`,`application/trig`],[`trm`,`application/x-msterminal`],[`ts`,`video/mp2t`],[`tsd`,`application/timestamped-data`],[`tsv`,`text/tab-separated-values`],[`ttc`,`font/collection`],[`ttf`,`font/ttf`],[`ttl`,`text/turtle`],[`ttml`,`application/ttml+xml`],[`twd`,`application/vnd.simtech-mindmapper`],[`twds`,`application/vnd.simtech-mindmapper`],[`txd`,`application/vnd.genomatix.tuxedo`],[`txf`,`application/vnd.mobius.txf`],[`txt`,`text/plain`],[`u8dsn`,`message/global-delivery-status`],[`u8hdr`,`message/global-headers`],[`u8mdn`,`message/global-disposition-notification`],[`u8msg`,`message/global`],[`u32`,`application/x-authorware-bin`],[`ubj`,`application/ubjson`],[`udeb`,`application/x-debian-package`],[`ufd`,`application/vnd.ufdl`],[`ufdl`,`application/vnd.ufdl`],[`ulx`,`application/x-glulx`],[`umj`,`application/vnd.umajin`],[`unityweb`,`application/vnd.unity`],[`uoml`,`application/vnd.uoml+xml`],[`uri`,`text/uri-list`],[`uris`,`text/uri-list`],[`urls`,`text/uri-list`],[`usdz`,`model/vnd.usdz+zip`],[`ustar`,`application/x-ustar`],[`utz`,`application/vnd.uiq.theme`],[`uu`,`text/x-uuencode`],[`uva`,`audio/vnd.dece.audio`],[`uvd`,`application/vnd.dece.data`],[`uvf`,`application/vnd.dece.data`],[`uvg`,`image/vnd.dece.graphic`],[`uvh`,`video/vnd.dece.hd`],[`uvi`,`image/vnd.dece.graphic`],[`uvm`,`video/vnd.dece.mobile`],[`uvp`,`video/vnd.dece.pd`],[`uvs`,`video/vnd.dece.sd`],[`uvt`,`application/vnd.dece.ttml+xml`],[`uvu`,`video/vnd.uvvu.mp4`],[`uvv`,`video/vnd.dece.video`],[`uvva`,`audio/vnd.dece.audio`],[`uvvd`,`application/vnd.dece.data`],[`uvvf`,`application/vnd.dece.data`],[`uvvg`,`image/vnd.dece.graphic`],[`uvvh`,`video/vnd.dece.hd`],[`uvvi`,`image/vnd.dece.graphic`],[`uvvm`,`video/vnd.dece.mobile`],[`uvvp`,`video/vnd.dece.pd`],[`uvvs`,`video/vnd.dece.sd`],[`uvvt`,`application/vnd.dece.ttml+xml`],[`uvvu`,`video/vnd.uvvu.mp4`],[`uvvv`,`video/vnd.dece.video`],[`uvvx`,`application/vnd.dece.unspecified`],[`uvvz`,`application/vnd.dece.zip`],[`uvx`,`application/vnd.dece.unspecified`],[`uvz`,`application/vnd.dece.zip`],[`vbox`,`application/x-virtualbox-vbox`],[`vbox-extpack`,`application/x-virtualbox-vbox-extpack`],[`vcard`,`text/vcard`],[`vcd`,`application/x-cdlink`],[`vcf`,`text/x-vcard`],[`vcg`,`application/vnd.groove-vcard`],[`vcs`,`text/x-vcalendar`],[`vcx`,`application/vnd.vcx`],[`vdi`,`application/x-virtualbox-vdi`],[`vds`,`model/vnd.sap.vds`],[`vhd`,`application/x-virtualbox-vhd`],[`vis`,`application/vnd.visionary`],[`viv`,`video/vnd.vivo`],[`vlc`,`application/videolan`],[`vmdk`,`application/x-virtualbox-vmdk`],[`vob`,`video/x-ms-vob`],[`vor`,`application/vnd.stardivision.writer`],[`vox`,`application/x-authorware-bin`],[`vrml`,`model/vrml`],[`vsd`,`application/vnd.visio`],[`vsf`,`application/vnd.vsf`],[`vss`,`application/vnd.visio`],[`vst`,`application/vnd.visio`],[`vsw`,`application/vnd.visio`],[`vtf`,`image/vnd.valve.source.texture`],[`vtt`,`text/vtt`],[`vtu`,`model/vnd.vtu`],[`vxml`,`application/voicexml+xml`],[`w3d`,`application/x-director`],[`wad`,`application/x-doom`],[`wadl`,`application/vnd.sun.wadl+xml`],[`war`,`application/java-archive`],[`wasm`,`application/wasm`],[`wav`,`audio/x-wav`],[`wax`,`audio/x-ms-wax`],[`wbmp`,`image/vnd.wap.wbmp`],[`wbs`,`application/vnd.criticaltools.wbs+xml`],[`wbxml`,`application/wbxml`],[`wcm`,`application/vnd.ms-works`],[`wdb`,`application/vnd.ms-works`],[`wdp`,`image/vnd.ms-photo`],[`weba`,`audio/webm`],[`webapp`,`application/x-web-app-manifest+json`],[`webm`,`video/webm`],[`webmanifest`,`application/manifest+json`],[`webp`,`image/webp`],[`wg`,`application/vnd.pmi.widget`],[`wgt`,`application/widget`],[`wks`,`application/vnd.ms-works`],[`wm`,`video/x-ms-wm`],[`wma`,`audio/x-ms-wma`],[`wmd`,`application/x-ms-wmd`],[`wmf`,`image/wmf`],[`wml`,`text/vnd.wap.wml`],[`wmlc`,`application/wmlc`],[`wmls`,`text/vnd.wap.wmlscript`],[`wmlsc`,`application/vnd.wap.wmlscriptc`],[`wmv`,`video/x-ms-wmv`],[`wmx`,`video/x-ms-wmx`],[`wmz`,`application/x-msmetafile`],[`woff`,`font/woff`],[`woff2`,`font/woff2`],[`word`,`application/msword`],[`wpd`,`application/vnd.wordperfect`],[`wpl`,`application/vnd.ms-wpl`],[`wps`,`application/vnd.ms-works`],[`wqd`,`application/vnd.wqd`],[`wri`,`application/x-mswrite`],[`wrl`,`model/vrml`],[`wsc`,`message/vnd.wfa.wsc`],[`wsdl`,`application/wsdl+xml`],[`wspolicy`,`application/wspolicy+xml`],[`wtb`,`application/vnd.webturbo`],[`wvx`,`video/x-ms-wvx`],[`x3d`,`model/x3d+xml`],[`x3db`,`model/x3d+fastinfoset`],[`x3dbz`,`model/x3d+binary`],[`x3dv`,`model/x3d-vrml`],[`x3dvz`,`model/x3d+vrml`],[`x3dz`,`model/x3d+xml`],[`x32`,`application/x-authorware-bin`],[`x_b`,`model/vnd.parasolid.transmit.binary`],[`x_t`,`model/vnd.parasolid.transmit.text`],[`xaml`,`application/xaml+xml`],[`xap`,`application/x-silverlight-app`],[`xar`,`application/vnd.xara`],[`xav`,`application/xcap-att+xml`],[`xbap`,`application/x-ms-xbap`],[`xbd`,`application/vnd.fujixerox.docuworks.binder`],[`xbm`,`image/x-xbitmap`],[`xca`,`application/xcap-caps+xml`],[`xcs`,`application/calendar+xml`],[`xdf`,`application/xcap-diff+xml`],[`xdm`,`application/vnd.syncml.dm+xml`],[`xdp`,`application/vnd.adobe.xdp+xml`],[`xdssc`,`application/dssc+xml`],[`xdw`,`application/vnd.fujixerox.docuworks`],[`xel`,`application/xcap-el+xml`],[`xenc`,`application/xenc+xml`],[`xer`,`application/patch-ops-error+xml`],[`xfdf`,`application/vnd.adobe.xfdf`],[`xfdl`,`application/vnd.xfdl`],[`xht`,`application/xhtml+xml`],[`xhtml`,`application/xhtml+xml`],[`xhvml`,`application/xv+xml`],[`xif`,`image/vnd.xiff`],[`xl`,`application/excel`],[`xla`,`application/vnd.ms-excel`],[`xlam`,`application/vnd.ms-excel.addin.macroEnabled.12`],[`xlc`,`application/vnd.ms-excel`],[`xlf`,`application/xliff+xml`],[`xlm`,`application/vnd.ms-excel`],[`xls`,`application/vnd.ms-excel`],[`xlsb`,`application/vnd.ms-excel.sheet.binary.macroEnabled.12`],[`xlsm`,`application/vnd.ms-excel.sheet.macroEnabled.12`],[`xlsx`,`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`],[`xlt`,`application/vnd.ms-excel`],[`xltm`,`application/vnd.ms-excel.template.macroEnabled.12`],[`xltx`,`application/vnd.openxmlformats-officedocument.spreadsheetml.template`],[`xlw`,`application/vnd.ms-excel`],[`xm`,`audio/xm`],[`xml`,`application/xml`],[`xns`,`application/xcap-ns+xml`],[`xo`,`application/vnd.olpc-sugar`],[`xop`,`application/xop+xml`],[`xpi`,`application/x-xpinstall`],[`xpl`,`application/xproc+xml`],[`xpm`,`image/x-xpixmap`],[`xpr`,`application/vnd.is-xpr`],[`xps`,`application/vnd.ms-xpsdocument`],[`xpw`,`application/vnd.intercon.formnet`],[`xpx`,`application/vnd.intercon.formnet`],[`xsd`,`application/xml`],[`xsl`,`application/xml`],[`xslt`,`application/xslt+xml`],[`xsm`,`application/vnd.syncml+xml`],[`xspf`,`application/xspf+xml`],[`xul`,`application/vnd.mozilla.xul+xml`],[`xvm`,`application/xv+xml`],[`xvml`,`application/xv+xml`],[`xwd`,`image/x-xwindowdump`],[`xyz`,`chemical/x-xyz`],[`xz`,`application/x-xz`],[`yaml`,`text/yaml`],[`yang`,`application/yang`],[`yin`,`application/yin+xml`],[`yml`,`text/yaml`],[`ymp`,`text/x-suse-ymp`],[`z`,`application/x-compress`],[`z1`,`application/x-zmachine`],[`z2`,`application/x-zmachine`],[`z3`,`application/x-zmachine`],[`z4`,`application/x-zmachine`],[`z5`,`application/x-zmachine`],[`z6`,`application/x-zmachine`],[`z7`,`application/x-zmachine`],[`z8`,`application/x-zmachine`],[`zaz`,`application/vnd.zzazz.deck+xml`],[`zip`,`application/zip`],[`zir`,`application/vnd.zul`],[`zirz`,`application/vnd.zul`],[`zmm`,`application/vnd.handheld-entertainment+xml`],[`zsh`,`text/x-scriptzsh`]]);function BK(e,t,n){let r=VK(e),{webkitRelativePath:i}=e,a=typeof t==`string`?t:typeof i==`string`&&i.length>0?i:`./${e.name}`;return typeof r.path!=`string`&&HK(r,`path`,a),n!==void 0&&Object.defineProperty(r,`handle`,{value:n,writable:!1,configurable:!1,enumerable:!0}),HK(r,`relativePath`,a),r}function VK(e){let{name:t}=e;if(t&&t.lastIndexOf(`.`)!==-1&&!e.type){let n=t.split(`.`).pop().toLowerCase(),r=zK.get(n);r&&Object.defineProperty(e,`type`,{value:r,writable:!1,configurable:!1,enumerable:!0})}return e}function HK(e,t,n){Object.defineProperty(e,t,{value:n,writable:!1,configurable:!1,enumerable:!0})}var UK=[`.DS_Store`,`Thumbs.db`];function WK(e){return d(this,void 0,void 0,function*(){return qK(e)&&GK(e.dataTransfer)?XK(e.dataTransfer,e.type):KK(e)?JK(e):Array.isArray(e)&&e.every(e=>`getFile`in e&&typeof e.getFile==`function`)?YK(e):[]})}function GK(e){return qK(e)}function KK(e){return qK(e)&&qK(e.target)}function qK(e){return typeof e==`object`&&!!e}function JK(e){return QK(e.target.files).map(e=>BK(e))}function YK(e){return d(this,void 0,void 0,function*(){return(yield Promise.all(e.map(e=>e.getFile()))).map(e=>BK(e))})}function XK(e,t){return d(this,void 0,void 0,function*(){if(e.items){let n=QK(e.items).filter(e=>e.kind===`file`);return t===`drop`?ZK(eq(yield Promise.all(n.map($K)))):n}return ZK(QK(e.files).map(e=>BK(e)))})}function ZK(e){return e.filter(e=>UK.indexOf(e.name)===-1)}function QK(e){if(e===null)return[];let t=[];for(let n=0;n<e.length;n++){let r=e[n];t.push(r)}return t}function $K(e){if(typeof e.webkitGetAsEntry!=`function`)return tq(e);let t=e.webkitGetAsEntry();return t&&t.isDirectory?rq(t):tq(e,t)}function eq(e){return e.reduce((e,t)=>[...e,...Array.isArray(t)?eq(t):[t]],[])}function tq(e,t){return d(this,void 0,void 0,function*(){if(globalThis.isSecureContext&&typeof e.getAsFileSystemHandle==`function`){let t=yield e.getAsFileSystemHandle();if(t===null)throw Error(`${e} is not a File`);if(t!==void 0){let e=yield t.getFile();return e.handle=t,BK(e)}}let n=e.getAsFile();if(!n)throw Error(`${e} is not a File`);return BK(n,t?.fullPath??void 0)})}function nq(e){return d(this,void 0,void 0,function*(){return e.isDirectory?rq(e):iq(e)})}function rq(e){let t=e.createReader();return new Promise((e,n)=>{let r=[];function i(){t.readEntries(t=>d(this,void 0,void 0,function*(){if(t.length){let e=Promise.all(t.map(nq));r.push(e),i()}else try{e(yield Promise.all(r))}catch(e){n(e)}}),e=>{n(e)})}i()})}function iq(e){return d(this,void 0,void 0,function*(){return new Promise((t,n)=>{e.file(n=>{t(BK(n,e.fullPath))},e=>{n(e)})})})}var aq=c(o((e=>{e.__esModule=!0,e.default=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(`,`);if(n.length===0)return!0;var r=e.name||``,i=(e.type||``).toLowerCase(),a=i.replace(/\/.*$/,``);return n.some(function(e){var t=e.trim().toLowerCase();return t.charAt(0)===`.`?r.toLowerCase().endsWith(t):t.endsWith(`/*`)?a===t.replace(/\/.*$/,``):i===t})}return!0}}))());function oq(e){return lq(e)||cq(e)||hq(e)||sq()}function sq(){throw TypeError(`Invalid attempt to spread non-iterable instance.
|
|
223
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function
|
|
224
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function
|
|
225
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function
|
|
226
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function iJ(e,t){if(e){if(typeof e==`string`)return aJ(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return aJ(e,t)}}function aJ(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function oJ(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r=[],i=!0,a=!1,o,s;try{for(n=n.call(e);!(i=(o=n.next()).done)&&(r.push(o.value),!(t&&r.length===t));i=!0);}catch(e){a=!0,s=e}finally{try{!i&&n.return!=null&&n.return()}finally{if(a)throw s}}return r}}function sJ(e){if(Array.isArray(e))return e}function cJ(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function lJ(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?cJ(Object(n),!0).forEach(function(t){uJ(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):cJ(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function uJ(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function dJ(e,t){if(e==null)return{};var n=fJ(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function fJ(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}var pJ=(0,b.forwardRef)(function(e,t){var n=e.children,r=gJ(dJ(e,Jq)),i=r.open,a=dJ(r,Yq);return(0,b.useImperativeHandle)(t,function(){return{open:i}},[i]),b.createElement(b.Fragment,null,n(lJ(lJ({},a),{},{open:i})))});pJ.displayName=`Dropzone`;var mJ={disabled:!1,getFilesFromEvent:WK,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!1,autoFocus:!1};pJ.defaultProps=mJ,pJ.propTypes={children:qq.default.func,accept:qq.default.objectOf(qq.default.arrayOf(qq.default.string)),multiple:qq.default.bool,preventDropOnDocument:qq.default.bool,noClick:qq.default.bool,noKeyboard:qq.default.bool,noDrag:qq.default.bool,noDragEventsBubbling:qq.default.bool,minSize:qq.default.number,maxSize:qq.default.number,maxFiles:qq.default.number,disabled:qq.default.bool,getFilesFromEvent:qq.default.func,onFileDialogCancel:qq.default.func,onFileDialogOpen:qq.default.func,useFsAccessApi:qq.default.bool,autoFocus:qq.default.bool,onDragEnter:qq.default.func,onDragLeave:qq.default.func,onDragOver:qq.default.func,onDrop:qq.default.func,onDropAccepted:qq.default.func,onDropRejected:qq.default.func,onError:qq.default.func,validator:qq.default.func};var hJ={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,isDragGlobal:!1,acceptedFiles:[],fileRejections:[]};function gJ(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=lJ(lJ({},mJ),e),n=t.accept,r=t.disabled,i=t.getFilesFromEvent,a=t.maxSize,o=t.minSize,s=t.multiple,c=t.maxFiles,l=t.onDragEnter,u=t.onDragLeave,d=t.onDragOver,f=t.onDrop,p=t.onDropAccepted,m=t.onDropRejected,h=t.onFileDialogCancel,g=t.onFileDialogOpen,_=t.useFsAccessApi,v=t.autoFocus,y=t.preventDropOnDocument,x=t.noClick,S=t.noKeyboard,C=t.noDrag,w=t.noDragEventsBubbling,T=t.onError,E=t.validator,D=(0,b.useMemo)(function(){return Hq(n)},[n]),O=(0,b.useMemo)(function(){return Vq(n)},[n]),k=(0,b.useMemo)(function(){return typeof g==`function`?g:vJ},[g]),A=(0,b.useMemo)(function(){return typeof h==`function`?h:vJ},[h]),j=(0,b.useRef)(null),M=(0,b.useRef)(null),N=nJ((0,b.useReducer)(_J,hJ),2),P=N[0],F=N[1],ee=P.isFocused,te=P.isFileDialogActive,ne=(0,b.useRef)(typeof window<`u`&&window.isSecureContext&&_&&Bq()),re=function(){!ne.current&&te&&setTimeout(function(){M.current&&(M.current.files.length||(F({type:`closeDialog`}),A()))},300)};(0,b.useEffect)(function(){return window.addEventListener(`focus`,re,!1),function(){window.removeEventListener(`focus`,re,!1)}},[M,te,A,ne]);var ie=(0,b.useRef)([]),ae=(0,b.useRef)([]),oe=function(e){j.current&&j.current.contains(e.target)||(e.preventDefault(),ie.current=[])};(0,b.useEffect)(function(){return y&&(document.addEventListener(`dragover`,Fq,!1),document.addEventListener(`drop`,oe,!1)),function(){y&&(document.removeEventListener(`dragover`,Fq),document.removeEventListener(`drop`,oe))}},[j,y]),(0,b.useEffect)(function(){var e=function(e){ae.current=[].concat(Qq(ae.current),[e.target]),Pq(e)&&F({isDragGlobal:!0,type:`setDragGlobal`})},t=function(e){ae.current=ae.current.filter(function(t){return t!==e.target&&t!==null}),!(ae.current.length>0)&&F({isDragGlobal:!1,type:`setDragGlobal`})},n=function(){ae.current=[],F({isDragGlobal:!1,type:`setDragGlobal`})},r=function(){ae.current=[],F({isDragGlobal:!1,type:`setDragGlobal`})};return document.addEventListener(`dragenter`,e,!1),document.addEventListener(`dragleave`,t,!1),document.addEventListener(`dragend`,n,!1),document.addEventListener(`drop`,r,!1),function(){document.removeEventListener(`dragenter`,e),document.removeEventListener(`dragleave`,t),document.removeEventListener(`dragend`,n),document.removeEventListener(`drop`,r)}},[j]),(0,b.useEffect)(function(){return!r&&v&&j.current&&j.current.focus(),function(){}},[j,v,r]);var se=(0,b.useCallback)(function(e){T?T(e):console.error(e)},[T]),ce=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e),ie.current=[].concat(Qq(ie.current),[e.target]),Pq(e)&&Promise.resolve(i(e)).then(function(t){if(!(Nq(e)&&!w)){var n=t.length,r=n>0&&Mq({files:t,accept:D,minSize:o,maxSize:a,multiple:s,maxFiles:c,validator:E});F({isDragAccept:r,isDragReject:n>0&&!r,isDragActive:!0,type:`setDraggedFiles`}),l&&l(e)}}).catch(function(e){return se(e)})},[i,l,se,w,D,o,a,s,c,E]),le=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e);var t=Pq(e);if(t&&e.dataTransfer)try{e.dataTransfer.dropEffect=`copy`}catch{}return t&&d&&d(e),!1},[d,w]),ue=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e);var t=ie.current.filter(function(e){return j.current&&j.current.contains(e)}),n=t.indexOf(e.target);n!==-1&&t.splice(n,1),ie.current=t,!(t.length>0)&&(F({type:`setDraggedFiles`,isDragActive:!1,isDragAccept:!1,isDragReject:!1}),Pq(e)&&u&&u(e))},[j,u,w]),de=(0,b.useCallback)(function(e,t){var n=[],r=[];e.forEach(function(e){var t=nJ(kq(e,D),2),i=t[0],s=t[1],c=nJ(Aq(e,o,a),2),l=c[0],u=c[1],d=E?E(e):null;if(i&&l&&!d)n.push(e);else{var f=[s,u];d&&(f=f.concat(d)),r.push({file:e,errors:f.filter(function(e){return e})})}}),(!s&&n.length>1||s&&c>=1&&n.length>c)&&(n.forEach(function(e){r.push({file:e,errors:[Dq]})}),n.splice(0)),F({acceptedFiles:n,fileRejections:r,type:`setFiles`}),f&&f(n,r,t),r.length>0&&m&&m(r,t),n.length>0&&p&&p(n,t)},[F,s,D,o,a,c,f,p,m,E]),fe=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e),ie.current=[],Pq(e)&&Promise.resolve(i(e)).then(function(t){Nq(e)&&!w||de(t,e)}).catch(function(e){return se(e)}),F({type:`reset`})},[i,de,se,w]),pe=(0,b.useCallback)(function(){if(ne.current){F({type:`openDialog`}),k();var e={multiple:s,types:O};window.showOpenFilePicker(e).then(function(e){return i(e)}).then(function(e){de(e,null),F({type:`closeDialog`})}).catch(function(e){Uq(e)?(A(e),F({type:`closeDialog`})):Wq(e)?(ne.current=!1,M.current?(M.current.value=null,M.current.click()):se(Error(`Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided.`))):se(e)});return}M.current&&(F({type:`openDialog`}),k(),M.current.value=null,M.current.click())},[F,k,A,_,de,se,O,s]),me=(0,b.useCallback)(function(e){!j.current||!j.current.isEqualNode(e.target)||(e.key===` `||e.key===`Enter`||e.keyCode===32||e.keyCode===13)&&(e.preventDefault(),pe())},[j,pe]),he=(0,b.useCallback)(function(){F({type:`focus`})},[]),ge=(0,b.useCallback)(function(){F({type:`blur`})},[]),_e=(0,b.useCallback)(function(){x||(Rq()?setTimeout(pe,0):pe())},[x,pe]),ve=function(e){return r?null:e},ye=function(e){return S?null:ve(e)},be=function(e){return C?null:ve(e)},xe=function(e){w&&e.stopPropagation()},Se=(0,b.useMemo)(function(){return function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.refKey,n=t===void 0?`ref`:t,i=e.role,a=e.onKeyDown,o=e.onFocus,s=e.onBlur,c=e.onClick,l=e.onDragEnter,u=e.onDragOver,d=e.onDragLeave,f=e.onDrop,p=dJ(e,Xq);return lJ(lJ(uJ({onKeyDown:ye(zq(a,me)),onFocus:ye(zq(o,he)),onBlur:ye(zq(s,ge)),onClick:ve(zq(c,_e)),onDragEnter:be(zq(l,ce)),onDragOver:be(zq(u,le)),onDragLeave:be(zq(d,ue)),onDrop:be(zq(f,fe)),role:typeof i==`string`&&i!==``?i:`presentation`},n,j),!r&&!S?{tabIndex:0}:{}),p)}},[j,me,he,ge,_e,ce,le,ue,fe,S,C,r]),Ce=(0,b.useCallback)(function(e){e.stopPropagation()},[]),we=(0,b.useMemo)(function(){return function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.refKey,n=t===void 0?`ref`:t,r=e.onChange,i=e.onClick,a=dJ(e,Zq);return lJ(lJ({},uJ({accept:D,multiple:s,type:`file`,style:{border:0,clip:`rect(0, 0, 0, 0)`,clipPath:`inset(50%)`,height:`1px`,margin:`0 -1px -1px 0`,overflow:`hidden`,padding:0,position:`absolute`,width:`1px`,whiteSpace:`nowrap`},onChange:ve(zq(r,fe)),onClick:ve(zq(i,Ce)),tabIndex:-1},n,M)),a)}},[M,n,s,fe,r]);return lJ(lJ({},P),{},{isFocused:ee&&!r,getRootProps:Se,getInputProps:we,rootRef:j,inputRef:M,open:ve(pe)})}function _J(e,t){switch(t.type){case`focus`:return lJ(lJ({},e),{},{isFocused:!0});case`blur`:return lJ(lJ({},e),{},{isFocused:!1});case`openDialog`:return lJ(lJ({},hJ),{},{isFileDialogActive:!0});case`closeDialog`:return lJ(lJ({},e),{},{isFileDialogActive:!1});case`setDraggedFiles`:return lJ(lJ({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case`setFiles`:return lJ(lJ({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections,isDragReject:!1});case`setDragGlobal`:return lJ(lJ({},e),{},{isDragGlobal:t.isDragGlobal});case`reset`:return lJ({},hJ);default:return e}}function vJ(){}var[yJ,bJ]=$e(`Dropzone component was not found in tree`),xJ={root:`m_d46a4834`,inner:`m_b85f7144`,fullScreen:`m_96f6e9ad`,dropzone:`m_7946116d`};function SJ(e){let t=t=>{let{children:n,...r}=z(`Dropzone${Tt(e)}`,{},t),i=bJ(),a=Ze(n)?n:(0,L.jsx)(`span`,{children:n});return i[e]?(0,b.cloneElement)(a,r):null};return t.displayName=`@mantine/dropzone/${Tt(e)}`,t}var CJ=SJ(`accept`),wJ=SJ(`reject`),TJ=SJ(`idle`),EJ={multiple:!0,maxSize:1/0,activateOnClick:!0,activateOnDrag:!0,dragEventsBubbling:!0,activateOnKeyboard:!0,useFsAccessApi:!0,variant:`light`,rejectColor:`red`},DJ=kn((e,{radius:t,variant:n,acceptColor:r,rejectColor:i})=>{let a=e.variantColorResolver({color:r||e.primaryColor,theme:e,variant:n}),o=e.variantColorResolver({color:i||`red`,theme:e,variant:n});return{root:{"--dropzone-radius":pt(t),"--dropzone-accept-color":a.color,"--dropzone-accept-bg":a.background,"--dropzone-reject-color":o.color,"--dropzone-reject-bg":o.background}}}),OJ=V((e,t)=>{let n=z(`Dropzone`,EJ,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,radius:l,disabled:u,loading:d,multiple:f,maxSize:p,accept:m,children:h,onDropAny:g,onDrop:_,onReject:v,openRef:y,name:b,maxFiles:x,autoFocus:S,activateOnClick:C,activateOnDrag:w,dragEventsBubbling:T,activateOnKeyboard:E,onDragEnter:D,onDragLeave:O,onDragOver:k,onFileDialogCancel:A,onFileDialogOpen:j,preventDropOnDocument:M,useFsAccessApi:N,getFilesFromEvent:P,validator:F,rejectColor:ee,acceptColor:te,enablePointerEvents:ne,loaderProps:re,inputProps:ie,mod:ae,attributes:oe,...se}=n,ce=R({name:`Dropzone`,classes:xJ,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:oe,vars:c,varsResolver:DJ}),{getRootProps:le,getInputProps:ue,isDragAccept:de,isDragReject:fe,isDragActive:pe,open:me}=gJ({onDrop:g,onDropAccepted:_,onDropRejected:v,disabled:u||d,accept:Array.isArray(m)?m.reduce((e,t)=>({...e,[t]:[]}),{}):m,multiple:f,maxSize:p,maxFiles:x,autoFocus:S,noClick:!C,noDrag:!w,noDragEventsBubbling:!T,noKeyboard:!E,onDragEnter:D,onDragLeave:O,onDragOver:k,onFileDialogCancel:A,onFileDialogOpen:j,preventDropOnDocument:M,useFsAccessApi:N,validator:F,...P?{getFilesFromEvent:P}:null});en(y,me);let he=pe&&de,ge=pe&&fe,_e=!he&&!ge;return(0,L.jsx)(yJ,{value:{accept:he,reject:ge,idle:_e},children:(0,L.jsxs)(B,{...le(),...ce(`root`,{focusable:!0}),...se,mod:[{accept:he,reject:ge,idle:_e,disabled:u,loading:d,"activate-on-click":C},ae],children:[(0,L.jsx)(Sh,{visible:d,overlayProps:{radius:l},unstyled:s,loaderProps:re}),(0,L.jsx)(`input`,{...ue(ie),name:b}),(0,L.jsx)(`div`,{...ce(`inner`),ref:t,"data-enable-pointer-events":ne||void 0,children:h})]})})});OJ.classes=xJ,OJ.displayName=`@mantine/dropzone/Dropzone`,OJ.Accept=CJ,OJ.Idle=TJ,OJ.Reject=wJ;var kJ={maxSize:1/0,activateOnDrag:!0,dragEventsBubbling:!0,activateOnKeyboard:!0,active:!0,zIndex:ct(`max`),withinPortal:!0},AJ=V((e,t)=>{let n=z(`DropzoneFullScreen`,kJ,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,active:l,onDrop:u,onReject:d,zIndex:f,withinPortal:p,portalProps:m,attributes:h,...g}=n,_=R({name:`DropzoneFullScreen`,classes:xJ,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:h,rootSelector:`fullScreen`}),{resolvedClassNames:v,resolvedStyles:y}=Hr({classNames:r,styles:o,props:n}),[x,S]=(0,b.useState)(0),[C,{open:w,close:T}]=yn(!1),E=e=>{e.dataTransfer?.types.includes(`Files`)&&(S(e=>e+1),w())},D=()=>{S(e=>e-1)};return(0,b.useEffect)(()=>{x===0&&T()},[x]),(0,b.useEffect)(()=>{if(l)return document.addEventListener(`dragenter`,E,!1),document.addEventListener(`dragleave`,D,!1),()=>{document.removeEventListener(`dragenter`,E,!1),document.removeEventListener(`dragleave`,D,!1)}},[l]),(0,L.jsx)(Nl,{...m,withinPortal:p,children:(0,L.jsx)(B,{ref:t,..._(`fullScreen`,{style:{opacity:C?1:0,pointerEvents:C?`all`:`none`,zIndex:f}}),children:(0,L.jsx)(OJ,{activateOnClick:!1,...g,classNames:v,styles:y,unstyled:s,className:xJ.dropzone,onDrop:e=>{u?.(e),T(),S(0)},onReject:e=>{d?.(e),T(),S(0)}})})})});AJ.classes=xJ,AJ.displayName=`@mantine/dropzone/DropzoneFullScreen`,OJ.FullScreen=AJ;var jJ=OJ,MJ=`{"resourceType": "Bundle"}`;function NJ({id:e,title:t,message:n,color:r,icon:i,withCloseButton:a=!1,method:o=`show`,loading:s}){Tb[o]({id:e,loading:s,title:t,message:n,color:r,icon:i,withCloseButton:a,autoClose:!1})}function PJ(){let e=xr(),t=Q(),[n,r]=(0,b.useState)({}),i=(0,b.useCallback)(async(e,n)=>{let i=`batch-upload`;NJ({id:i,title:`Batch Upload in Progress`,message:`Your batch data is being uploaded. This may take a moment...`,method:`show`,loading:!0});try{r({});let a=JSON.parse(e);a.type!==`batch`&&a.type!==`transaction`&&(a=OE(a));let o=await t.executeBatch(a);r(e=>({...e,[n]:o})),NJ({id:i,title:`Batch Upload Successful`,message:`Your batch data was successfully uploaded.`,color:`green`,method:`update`,icon:(0,L.jsx)(aA,{size:`1rem`}),withCloseButton:!0})}catch(e){NJ({id:i,title:`Batch Upload Failed`,color:`red`,message:Lx(e),method:`update`,icon:(0,L.jsx)(lj,{size:`1rem`}),withCloseButton:!0})}},[t]),a=(0,b.useCallback)(async e=>{for(let t of e){let e=new FileReader;e.onload=e=>i(e.target?.result,t.name),e.readAsText(t)}},[i]),o=(0,b.useCallback)(async e=>{await i(e.input,`JSON Data`)},[i]);return(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Batch Create`}),(0,L.jsxs)(U,{children:[`Use this page to create, read, or update multiple resources. For more details, see`,` `,(0,L.jsx)(Nd,{href:`https://www.hl7.org/fhir/http.html#transaction`,children:`FHIR Batch and Transaction`}),`.`]}),Object.keys(n).length===0&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`h3`,{children:`Input`}),(0,L.jsxs)(ib,{defaultValue:`upload`,children:[(0,L.jsxs)(ib.List,{children:[(0,L.jsx)(ib.Tab,{value:`upload`,children:`File Upload`}),(0,L.jsx)(ib.Tab,{value:`json`,children:`JSON`})]}),(0,L.jsx)(ib.Panel,{value:`upload`,pt:`xs`,children:(0,L.jsx)(jJ,{onDrop:a,accept:[`application/json`],children:(0,L.jsxs)(H,{justify:`center`,gap:`xl`,style:{minHeight:220,pointerEvents:`none`},children:[(0,L.jsx)(jJ.Accept,{children:(0,L.jsx)(oj,{size:50,stroke:1.5,color:e.colors[e.primaryColor][5]})}),(0,L.jsx)(jJ.Reject,{children:(0,L.jsx)(lj,{size:50,stroke:1.5,color:e.colors.red[5]})}),(0,L.jsx)(jJ.Idle,{children:(0,L.jsx)(oj,{size:50,stroke:1.5})}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xl`,inline:!0,children:`Drag files here or click to select files`}),(0,L.jsx)(U,{size:`sm`,color:`dimmed`,inline:!0,mt:7,children:`Attach as many files as you like`})]})]})})}),(0,L.jsx)(ib.Panel,{value:`json`,pt:`xs`,children:(0,L.jsxs)(UM,{onSubmit:o,children:[(0,L.jsx)(ch,{"data-testid":`batch-input`,name:`input`,autosize:!0,minRows:20,defaultValue:MJ,deserialize:JSON.parse}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`Submit`})})]})})]})]}),Object.keys(n).length>0&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`h3`,{children:`Output`}),(0,L.jsxs)(ib,{defaultValue:Object.keys(n)[0],children:[(0,L.jsx)(ib.List,{children:Object.keys(n).map(e=>(0,L.jsx)(ib.Tab,{value:e,children:e},e))}),Object.keys(n).map(e=>(0,L.jsx)(ib.Panel,{value:e,children:(0,L.jsx)(`pre`,{style:{border:`1px solid #888`},children:JSON.stringify(n[e],void 0,2)})},e))]}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{onClick:()=>r({}),children:`Start over`})})]})]})}function FJ(){let{resourceType:e}=IU(),t=(Object.fromEntries(new URLSearchParams(location.search).entries()).ids||``).split(`,`).filter(e=>!!e),[n]=Ak(`Questionnaire`,`subject-type=${e}`);return n?n.length===0?(0,L.jsxs)(LN,{children:[(0,L.jsxs)(J,{children:[`No apps for `,e]}),(0,L.jsx)(bj,{to:`/${e}`,children:`Return to search page`})]}):(0,L.jsx)(LN,{children:(0,L.jsx)(`div`,{children:n.map(n=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`h3`,{children:(0,L.jsx)(bj,{to:`/forms/${n.id}?subject=`+t.map(t=>`${e}/${t}`).join(`,`),children:n.name})}),(0,L.jsx)(`p`,{children:n.description})]},n.id))})}):(0,L.jsx)(fj,{})}function IJ(){return(0,L.jsx)(UN,{})}var LJ=[`Form`,`JSON`,`Profiles`];function RJ(){let{resourceType:e}=IU();return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{children:[(0,L.jsxs)(U,{p:`md`,fw:500,children:[`New\xA0`,e]}),(0,L.jsx)(ll,{children:(0,L.jsx)(VR,{baseUrl:`/${e}/new`,tabs:LJ})})]}),(0,L.jsx)(vW,{})]})}function zJ(){return(0,L.jsx)(LN,{children:(0,L.jsxs)(K,{children:[(0,L.jsx)(J,{order:1,children:`Unexpected Error`}),(0,L.jsx)(U,{children:`We're sorry, something went wrong.`}),(0,L.jsxs)(U,{children:[`Please contact `,(0,L.jsx)(Nd,{href:`mailto:support@medplum.com`,children:`support`}),` for assistance.`]})]})})}function BJ(e){let t=zO(e.resource);if(!t)return null;let n=[{key:`Type`,value:(0,L.jsx)(bj,{to:`/${t.resourceType}`,children:t.resourceType})}];function r(e,t){e&&t&&n.push({key:e,value:t})}function i(e){e&&r(e.system,e.value)}function a(e,t){Array.isArray(t)?t.forEach(t=>a(e,t)):typeof t==`string`?r(e,t):t&&(Array.isArray(t.coding)?r(e,t.coding.map(e=>e.display||e.code).join(`, `)):r(e,t.text))}if(`name`in t){let e=JS(t);e!==GS(t)&&r(`Name`,e)}return`category`in t&&a(`Category`,t.category),t.resourceType!==`Bot`&&`code`in t&&a(`Code`,t.code),`identifier`in t&&(Array.isArray(t.identifier)?t.identifier.forEach(i):i(t.identifier)),n.length===1&&n.push({key:`ID`,value:t.id}),(0,L.jsx)(zR,{children:n.map((e,t)=>(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:e.key}),(0,L.jsx)(zR.Value,{children:e.value})]},`${e.key}-${t}`))})}function VJ(){let{id:e}=IU(),t=kU(),n=Object.fromEntries(new URLSearchParams(t.search).entries()).subject,r=Q(),[i,a]=(0,b.useState)(!0),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(),[f,p]=(0,b.useState)(),[m,h]=(0,b.useState)();if((0,b.useEffect)(()=>{let t={resourceType:`Bundle`,type:`batch`,entry:[{request:{method:`GET`,url:`Questionnaire/${e}`}}]};if(n){let e=n.split(`,`).filter(e=>!!e);e.length===1&&t.entry.push({request:{method:`GET`,url:e[0]}}),l(e)}r.executeBatch(t).then(e=>{e.entry?.[0]?.response?.status===`200`?(s(e.entry[0]?.resource),d(e.entry[1]?.resource)):p(e.entry?.[0]?.response?.outcome),a(!1)}).catch(e=>{p(e),a(!1)})},[r,e,n]),f)return(0,L.jsx)(LN,{children:(0,L.jsx)(`pre`,{"data-testid":`error`,children:JSON.stringify(f,void 0,2)})});if(m)return(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:o?.title}),(0,L.jsx)(`p`,{children:`Your response has been recorded.`}),(0,L.jsxs)(`ul`,{children:[m.length===1&&(0,L.jsx)(`li`,{children:(0,L.jsx)(bj,{to:m[0],children:`Review your answers`})}),m.length>1&&(0,L.jsxs)(`li`,{children:[`Review your answers:`,(0,L.jsx)(`ul`,{children:m.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsx)(bj,{to:e,children:GS(e)})},e.id))})]}),u&&(0,L.jsx)(`li`,{children:(0,L.jsxs)(bj,{to:u,children:[`Back to\xA0`,JS(u)]})}),(0,L.jsx)(`li`,{children:(0,L.jsx)(bj,{to:`/`,children:`Go back home`})})]})]});if(i||!o)return(0,L.jsx)(fj,{});let g=u&&PG(u);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{shadow:`xs`,radius:0,children:[g&&(0,L.jsx)(rz,{patient:g}),u&&u.resourceType!==`Patient`&&(0,L.jsx)(BJ,{resource:u}),(0,L.jsx)(B,{px:`xl`,py:`md`,children:(0,L.jsxs)(U,{children:[JS(o),c&&c.length>1&&(0,L.jsxs)(L.Fragment,{children:[`\xA0(for `,c.length,` resources)`]})]})})]}),(0,L.jsx)(LN,{children:(0,L.jsx)(OI,{questionnaire:o,subject:u&&WS(u),onSubmit:_})})]});async function _(e){let t=[];if(!c||c.length===0)t.push(await r.createResource(e));else for(let n of c)t.push(await r.createResource({...e,subject:{reference:n}}));h(t)}}var HJ={paper:`_paper_unw9o_1`},UJ={Bot:`/admin/bots/new`,ClientApplication:`/admin/clients/new`};function WJ(e,t){let n=e.resourceType||GJ(t),r=e.fields??KJ(n),i=e.filters??(e.resourceType?void 0:qJ(n)),a=e.sortRules??JJ(n),o=e.offset??0,s=e.count??20;return{...e,resourceType:n,fields:r,filters:i,sortRules:a,offset:o,count:s}}function GJ(e){return localStorage.getItem(`defaultResourceType`)??e?.option?.find(e=>e.id===`defaultResourceType`)?.valueString??`Patient`}function KJ(e){let t=YJ(e);if(t?.fields)return t.fields;let n=[`id`,`_lastUpdated`];switch(e){case`Patient`:n.push(`name`,`birthDate`,`gender`);break;case`AsyncJob`:n.push(`status`,`dataVersion`);break;case`AccessPolicy`:case`Bot`:case`ClientApplication`:case`Practitioner`:case`Project`:case`Organization`:case`Questionnaire`:case`UserConfiguration`:n.push(`name`);break;case`CodeSystem`:case`ValueSet`:n.push(`name`,`title`,`status`);break;case`Condition`:n.push(`subject`,`code`,`clinicalStatus`);break;case`Device`:n.push(`manufacturer`,`deviceName`,`patient`);break;case`DeviceDefinition`:n.push(`manufacturer[x]`,`deviceName`);break;case`DeviceRequest`:n.push(`code[x]`,`subject`);break;case`DiagnosticReport`:case`Observation`:n.push(`subject`,`code`,`status`);break;case`Encounter`:n.push(`subject`);break;case`ServiceRequest`:n.push(`subject`,`code`,`status`,`orderDetail`);break;case`Subscription`:n.push(`criteria`);break;case`User`:n.push(`email`);break}return n}function qJ(e){return YJ(e)?.filters}function JJ(e){let t=YJ(e);return t?.sortRules?t.sortRules:[{code:`_lastUpdated`,descending:!0}]}function YJ(e){let t=localStorage.getItem(e+`-defaultSearch`);return t?JSON.parse(t):void 0}function XJ(e){localStorage.setItem(`defaultResourceType`,e.resourceType),localStorage.setItem(e.resourceType+`-defaultSearch`,JSON.stringify(e))}async function ZJ(e,t){let n=WJ({...e,count:1e3,offset:0},t.getUserConfiguration());return OE(await t.search(n.resourceType,KT({...n,total:`accurate`,fields:void 0})))}function QJ(){let e=Q(),t=MU(),n=kU(),[r,i]=(0,b.useState)();return(0,b.useEffect)(()=>{let r=WJ(FT(n.pathname+n.search),e.getUserConfiguration());n.pathname===`/${r.resourceType}`&&n.search===KT(r)?(XJ(r),i(r)):t(`/${r.resourceType}${KT(r)}`)?.catch(console.error)},[e,t,n]),!r?.resourceType||!r.fields||r.fields.length===0?(0,L.jsx)(fj,{}):(0,L.jsx)(vl,{shadow:`xs`,m:`md`,p:`xs`,className:HJ.paper,children:(0,L.jsx)(kR,{checkboxesEnabled:!0,search:r,onClick:e=>t(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onAuxClick:e=>window.open(`/${e.resource.resourceType}/${e.resource.id}`,`_blank`),onChange:e=>{t(`/${r.resourceType}${KT(e.definition)}`)?.catch(console.error)},onNew:()=>{t(UJ[r.resourceType]??`/${r.resourceType}/new`)?.catch(console.error)},onExportCsv:()=>{let t=e.fhirUrl(r.resourceType,`$csv`)+KT(r);e.download(t).then(e=>{window.open(window.URL.createObjectURL(e),`_blank`)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},onExportTransactionBundle:async()=>{ZJ(r,e).then(e=>yj(JSON.stringify(e,void 0,2))).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},onDelete:t=>{window.confirm(`Are you sure you want to delete these resources?`)&&(e.invalidateSearches(r.resourceType),e.executeBatch({resourceType:`Bundle`,type:`batch`,entry:t.map(e=>({request:{method:`DELETE`,url:`${r.resourceType}/${e}`}}))}).then(()=>i({...r})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})))},onBulk:e=>{t(`/bulk/${r.resourceType}?ids=${e.join(`,`)}`)?.catch(console.error)}})})}function $J(){let[e]=Ak(`ObservationDefinition`,`_count=100`);return e?(0,L.jsxs)(q,{withTableBorder:!0,withRowBorders:!0,withColumnBorders:!0,children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Category`}),(0,L.jsx)(`th`,{children:`Code`}),(0,L.jsx)(`th`,{children:`Method`}),(0,L.jsx)(`th`,{children:`Unit`}),(0,L.jsx)(`th`,{children:`Precision`}),(0,L.jsx)(`th`,{children:`Ranges`})]})}),(0,L.jsx)(`tbody`,{children:e.map(e=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(SP,{value:e.category?.[0]})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(SP,{value:e.code})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(SP,{value:e.method})}),(0,L.jsx)(`td`,{children:e.quantitativeDetails?.unit?.text}),(0,L.jsx)(`td`,{children:e.quantitativeDetails?.decimalPrecision}),(0,L.jsx)(`td`,{children:(0,L.jsx)(eY,{ranges:e.qualifiedInterval})})]},e.id))})]}):(0,L.jsx)(fj,{})}function eY(e){let{ranges:t}=e;if(!t)return null;let n=tY(t.map(e=>e.gender));if(n.length>1)return FC(n),(0,L.jsx)(L.Fragment,{children:n.map(t=>(0,L.jsxs)(b.Fragment,{children:[(0,L.jsx)(`div`,{children:(0,L.jsx)(`strong`,{children:EC(t)})}),(0,L.jsx)(eY,{ranges:e.ranges?.filter(e=>e.gender===t)})]},t))});let r=tY(t.map(e=>e.age&&rw(e.age)));return r.length>1?(FC(r),(0,L.jsx)(L.Fragment,{children:r.map(t=>(0,L.jsxs)(b.Fragment,{children:[(0,L.jsx)(`div`,{children:(0,L.jsx)(`strong`,{children:EC(t)})}),(0,L.jsx)(eY,{ranges:e.ranges?.filter(e=>rw(e.age)===t)})]},t))})):(0,L.jsx)(L.Fragment,{children:t.map(e=>(0,L.jsx)(`table`,{children:(0,L.jsx)(`tbody`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:e.condition}),(0,L.jsx)(`td`,{children:(0,L.jsx)(MP,{value:e.range})})]})})},`range-${e.condition}`))})}function tY(e){return[...new Set(e.filter(e=>!!e))]}function nY(){let[e]=Ak(`ActivityDefinition`,`_count=100`),[t]=Ak(`ObservationDefinition`,`_count=100`);return!e||!t?(0,L.jsx)(fj,{}):(0,L.jsxs)(q,{withTableBorder:!0,withRowBorders:!0,withColumnBorders:!0,children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Category`}),(0,L.jsx)(`th`,{children:`Assay`}),e.map(e=>(0,L.jsx)(`th`,{children:e.name},e.id))]})}),(0,L.jsx)(`tbody`,{children:t.map(t=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(SP,{value:t.category?.[0]})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(SP,{value:t.code})}),e.map(e=>(0,L.jsx)(`td`,{children:e.observationResultRequirement?.find(e=>e.reference?.includes(t.id))?`✅`:``},e.id))]},t.id))})]})}function rY(){let e=Q(),[t,n]=(0,b.useState)(),[r,i]=(0,b.useState)(void 0),[a,o]=(0,b.useState)(!1),s=(0,b.useCallback)(()=>{e.get(`auth/mfa/status`,{cache:`no-cache`}).then(e=>{n(e.enrollQrCode),i(e.enrolled)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[e]);(0,b.useEffect)(()=>{s()},[s]);let c=(0,b.useCallback)(t=>{e.post(`auth/mfa/enroll`,t).then(()=>{i(!0),Y({color:`green`,message:`Success`})}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[e]),l=(0,b.useCallback)(async t=>e.post(`auth/mfa/disable`,{token:t.token}),[e]);return r===void 0?null:r?(0,L.jsxs)(LN,{children:[(0,L.jsx)(ng,{title:`Disable MFA`,opened:a,onClose:()=>o(!1),children:(0,L.jsx)(WN,{title:`Disable MFA`,buttonText:`Submit code`,onSubmit:async e=>{await l(e),o(!1),i(!1),Y({id:`mfa-disabled`,color:`green`,title:`Success`,message:`MFA disabled`,icon:(0,L.jsx)(cA,{})}),s()}})}),(0,L.jsxs)(H,{children:[(0,L.jsx)(J,{children:`MFA is enabled`}),(0,L.jsx)(W,{onClick:()=>o(!0),children:`Disable MFA`})]})]}):(0,L.jsx)(LN,{width:400,children:(0,L.jsx)(WN,{title:`Multi Factor Auth Setup`,buttonText:`Enroll`,qrCodeUrl:t,onSubmit:c})})}var iY={baseUrl:`__MEDPLUM_BASE_URL__`,clientId:`__MEDPLUM_CLIENT_ID__`,googleClientId:`__GOOGLE_CLIENT_ID__`,recaptchaSiteKey:`__RECAPTCHA_SITE_KEY__`,registerEnabled:`__MEDPLUM_REGISTER_ENABLED__`,awsTextractEnabled:void 0};function aY(){return iY}function oY(){return cY(`registerEnabled`)}function sY(){return cY(`awsTextractEnabled`)}function cY(e){try{return iY[e]!==!1&&iY[e]!==`false`}catch{return!0}}function lY(){let e=MU(),[t]=SG(),n=Q(),r=t.get(`scope`)||`openid`,[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(!0),c=t.get(`client_id`),l=t.get(`login`);if((0,b.useEffect)(()=>{if(!c||c===`medplum-cli`)return;async function e(){try{a(await n.get(`/auth/clientinfo/${c}`))}catch(e){Y({id:`clientinfofail`,title:`Failed to retrieve client information.`,color:`red`,message:Lx(e),withCloseButton:!0})}finally{s(!1)}}e().catch(console.error)},[n,c]),!c)return null;function u(e){let n=new URL(t.get(`redirect_uri`));for(let e of[`scope`,`state`,`nonce`])t.has(e)&&n.searchParams.set(e,t.get(e));n.searchParams.set(`code`,e),xE.assign(n.toString())}return(0,L.jsx)(xP,{onCode:u,onForgotPassword:()=>e(`/resetpassword`)?.catch(console.error),onRegister:()=>e(`/register`)?.catch(console.error),googleClientId:aY().googleClientId,clientId:c||void 0,redirectUri:t.get(`redirect_uri`)||void 0,scope:r,nonce:t.get(`nonce`)||void 0,launch:t.get(`launch`)||void 0,codeChallenge:t.get(`code_challenge`)||void 0,codeChallengeMethod:t.get(`code_challenge_method`)||void 0,chooseScopes:r!==`openid`,login:l||void 0,children:!o&&(0,L.jsxs)(L.Fragment,{children:[i?.logo?.url?(0,L.jsx)(`img`,{src:i?.logo?.url,alt:`Welcome Logo`,height:60,style:{width:`auto`}}):(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{children:i?.welcomeString??`Sign in to Medplum`})]})})}function uY(){let e=Q(),t=MU(),n=aY();return(0,b.useEffect)(()=>{e.getProfile()&&t(`/signin?project=new`)?.catch(console.error)},[e,t]),oY()?(0,L.jsxs)($N,{type:`project`,projectId:`new`,onSuccess:()=>{window.location.href=`/`},googleClientId:n.googleClientId,recaptchaSiteKey:n.recaptchaSiteKey,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Register a new account`})]}):(0,L.jsx)(LN,{width:450,children:(0,L.jsx)(Ed,{icon:(0,L.jsx)(Gk,{size:16}),title:`New projects disabled`,color:`red`,children:`New projects are disabled on this server.`})})}function dY(){let e=MU(),[t]=SG(),n=aY();return(0,L.jsx)(eP,{projectId:t.get(`project`)||void 0,recaptchaSiteKey:n.recaptchaSiteKey,onSignIn:()=>e(`/signin`)?.catch(console.error),onRegister:oY()?()=>e(`/register`)?.catch(console.error):void 0})}function fY(e){let t=Q(),[n,r]=(0,b.useState)(),[i,a]=(0,b.useState)();return i?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`p`,{children:`Request group created successfully.`}),(0,L.jsxs)(`ul`,{children:[(0,L.jsxs)(`li`,{children:[`Go to the`,` `,(0,L.jsx)(bj,{to:i,suffix:`checklist`,children:`Request Group`})]}),(0,L.jsxs)(`li`,{children:[`Back to the `,(0,L.jsx)(bj,{to:e.planDefinition,children:`Plan Definition`})]})]})]}):(0,L.jsx)(UM,{onSubmit:()=>{t.post(t.fhirUrl(`PlanDefinition`,e.planDefinition.id,`$apply`),{resourceType:`Parameters`,parameter:[{name:`subject`,valueString:n?.reference}]}).then(a).catch(console.log)},children:(0,L.jsxs)(K,{children:[(0,L.jsxs)(J,{children:[`Start "`,e.planDefinition.title,`"`]}),(0,L.jsxs)(U,{children:[`Use the `,(0,L.jsx)(`strong`,{children:`Apply`}),` operation to create a group of tasks for a workflow.`]}),(0,L.jsx)(U,{children:`The following tasks will be created:`}),(0,L.jsx)(`ul`,{children:e.planDefinition.action?.map((e,t)=>(0,L.jsxs)(`li`,{children:[e.definitionCanonical?.startsWith(`Questionnaire/`)&&`Questionnaire request: `,e.title&&(0,L.jsx)(L.Fragment,{children:e.title}),e.code&&(0,L.jsx)(SP,{value:e.code[0]})]},`action-${t}`))}),(0,L.jsx)(XP,{title:`Subject`,children:(0,L.jsx)(DF,{name:`subject`,targetTypes:[`Patient`,`Practitioner`],defaultValue:n,onChange:r})}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`Go`})})]})})}function pY(){let{resourceType:e,id:t}=IU(),n=zO({reference:e+`/`+t});return n?(0,L.jsx)(LN,{children:(0,L.jsx)(fY,{planDefinition:n})}):null}function mY(){let{resourceType:e,id:t}=IU(),n=zO({reference:e+`/`+t}),[r,i]=Ak(`Questionnaire`,`subject-type=`+e),[a,o]=Ak(`ClientApplication`,{_count:1e3});if(!n||i||o)return(0,L.jsx)(fj,{});let s=a?.filter(t=>hY(e)&&!!t.launchUri);if((!r||r.length===0)&&(!s||s.length===0))return(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Apps`}),(0,L.jsxs)(`p`,{children:[`No apps found. Contact your administrator or `,(0,L.jsx)(`a`,{href:`mailto:support@medplum.com`,children:`Medplum Support`}),` to add automation here.`]})]});let c,l;return n.resourceType===`Patient`?c=WS(n):n.resourceType===`Encounter`&&(c=n.subject,l=WS(n)),(0,L.jsxs)(LN,{children:[r?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(J,{order:3,children:(0,L.jsx)(bj,{to:`/forms/${e.id}?subject=${GS(n)}`,children:e.title||e.name})}),(0,L.jsx)(U,{children:e.description})]},e.id)),s?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(J,{order:3,children:(0,L.jsx)(uB,{client:e,patient:c,encounter:l,children:e.name})}),(0,L.jsx)(U,{children:e.description})]},e.id))]})}function hY(e){return e===`Patient`||e===`Encounter`}function gY(){let{resourceType:e,id:t}=IU(),n=MU(),[r,i]=(0,b.useState)({resourceType:`AuditEvent`,filters:[{code:`entity`,operator:Z.EQUALS,value:`${e}/${t}`}],fields:[`id`,`outcome`,`outcomeDesc`,`_lastUpdated`],sortRules:[{code:`-_lastUpdated`}],count:20});return(0,L.jsx)(LN,{children:(0,L.jsx)(kR,{search:r,onClick:e=>n(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onChange:e=>i(e.definition),hideFilters:!0})})}function _Y(){let e=Q(),{resourceType:t,id:n}=IU();return(0,L.jsx)(im,{maw:1200,children:(0,L.jsx)(IN,{children:(0,L.jsx)(eB,{history:e.readHistory(t,n).read()})})})}var vY={hl7Input:`_hl7Input_k5xm3_1`};function yY(e){return(0,L.jsx)(`iframe`,{title:`Bot Runner`,frameBorder:`0`,src:`https://codeeditor.medplum.com/bot-runner.html`,className:e.className,ref:e.iframeRef,"data-testid":e.testId,style:{width:`100%`,height:`100%`,minHeight:e.minHeight}})}function bY(e){let t=e.defaultValue,n=new URL(`https://codeeditor.medplum.com/${e.language}-editor.html`);return e.module&&n.searchParams.set(`module`,e.module),(0,L.jsx)(`iframe`,{title:`Code Editor`,frameBorder:`0`,src:n.toString(),style:{width:`100%`,height:`100%`,minHeight:e.minHeight},ref:e.iframeRef,"data-testid":e.testId,onLoad:e=>{vj(e.currentTarget,{command:`setValue`,value:t}).catch(console.error)}})}var xY=`{
|
|
222
|
+
`);t((0,L.jsxs)(K,{children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{fw:700,children:`Query`}),(0,L.jsx)(tm,{block:!0,maw:`100%`,style:{whiteSpace:`pre-wrap`},children:l})]}),(s||c)&&(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{fw:700,children:`Counts`}),s&&(0,L.jsxs)(U,{children:[`Estimate: `,s]}),c&&(0,L.jsxs)(U,{children:[`Accurate: `,c]})]})]})),n()}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})}return!r.isLoading()&&!r.isSuperAdmin()?(0,L.jsx)(qN,{outcome:Dx}):(0,L.jsx)(GM,{onSubmit:m,children:(0,L.jsxs)(K,{children:[(0,L.jsx)(ab,{name:`query`,label:`Search`,required:!0,placeholder:`Observation?code=85354-9&_sort=-date&_count=5`}),(0,L.jsxs)(H,{children:[(0,L.jsx)(cp,{name:`analyze`,label:`Analyze`}),(0,L.jsx)(cp,{name:`count`,label:`Total count`})]}),(0,L.jsx)(sd,{label:`On Behalf Of`,children:(0,L.jsxs)(K,{gap:`sm`,children:[(0,L.jsx)(kF,{required:!0,placeholder:`Project`,targetTypes:[`Project`],name:`onBehalfOfProject`,onChange:a}),(0,L.jsx)(kF,{required:!0,placeholder:`Practitioner or Patient`,name:`onBehalfOfProfile`,targetTypes:[`Practitioner`,`Patient`],onChange:s,searchCriteria:f}),c?.length!==1&&(0,L.jsx)(kF,{required:!0,placeholder:`ProjectMembership`,name:`onBehalfOfProjectMembership`,targetTypes:[`ProjectMembership`],onChange:d,searchCriteria:p}),c?.length===1&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`input`,{type:`hidden`,name:`onBehalfOfProjectMembership`,value:GS(c[0])}),(0,L.jsx)(IP,{value:WS(c[0])})]}),!u&&(0,L.jsx)(U,{fs:`italic`,children:`On Behalf Of not set. Running as super admin`})]})}),(0,L.jsx)(W,{type:`submit`,children:`Explain Search`})]})})}var KK=[{label:`All`,value:`Patient,Practitioner,RelatedPerson`},{label:`Practitioner`,value:`Practitioner`},{label:`Patient`,value:`Patient`},{label:`RelatedPerson`,value:`RelatedPerson`}];function qK(){return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{children:`ProjectMemberships by User and Profile Type`}),(0,L.jsx)(VG,{profileTypeOptions:KK,fields:[`user`,`profile`,`profile-type`,`accessPolicy`,`userConfiguration`,`active`,`admin`],toolbarLeft:(0,L.jsx)(W,{component:Sj,to:`/admin/invite`,variant:`outline`,color:`blue`,leftSection:(0,L.jsx)(lj,{size:14}),children:`Invite New User`}),toolbarRight:(0,L.jsx)(Nd,{href:`https://www.medplum.com/docs/user-management`,target:`_blank`,rel:`noopener noreferrer`,size:`sm`,children:`Learn more about roles and user management`})})]})}var JK=new Map([[`1km`,`application/vnd.1000minds.decision-model+xml`],[`3dml`,`text/vnd.in3d.3dml`],[`3ds`,`image/x-3ds`],[`3g2`,`video/3gpp2`],[`3gp`,`video/3gp`],[`3gpp`,`video/3gpp`],[`3mf`,`model/3mf`],[`7z`,`application/x-7z-compressed`],[`7zip`,`application/x-7z-compressed`],[`123`,`application/vnd.lotus-1-2-3`],[`aab`,`application/x-authorware-bin`],[`aac`,`audio/x-acc`],[`aam`,`application/x-authorware-map`],[`aas`,`application/x-authorware-seg`],[`abw`,`application/x-abiword`],[`ac`,`application/vnd.nokia.n-gage.ac+xml`],[`ac3`,`audio/ac3`],[`acc`,`application/vnd.americandynamics.acc`],[`ace`,`application/x-ace-compressed`],[`acu`,`application/vnd.acucobol`],[`acutc`,`application/vnd.acucorp`],[`adp`,`audio/adpcm`],[`aep`,`application/vnd.audiograph`],[`afm`,`application/x-font-type1`],[`afp`,`application/vnd.ibm.modcap`],[`ahead`,`application/vnd.ahead.space`],[`ai`,`application/pdf`],[`aif`,`audio/x-aiff`],[`aifc`,`audio/x-aiff`],[`aiff`,`audio/x-aiff`],[`air`,`application/vnd.adobe.air-application-installer-package+zip`],[`ait`,`application/vnd.dvb.ait`],[`ami`,`application/vnd.amiga.ami`],[`amr`,`audio/amr`],[`apk`,`application/vnd.android.package-archive`],[`apng`,`image/apng`],[`appcache`,`text/cache-manifest`],[`application`,`application/x-ms-application`],[`apr`,`application/vnd.lotus-approach`],[`arc`,`application/x-freearc`],[`arj`,`application/x-arj`],[`asc`,`application/pgp-signature`],[`asf`,`video/x-ms-asf`],[`asm`,`text/x-asm`],[`aso`,`application/vnd.accpac.simply.aso`],[`asx`,`video/x-ms-asf`],[`atc`,`application/vnd.acucorp`],[`atom`,`application/atom+xml`],[`atomcat`,`application/atomcat+xml`],[`atomdeleted`,`application/atomdeleted+xml`],[`atomsvc`,`application/atomsvc+xml`],[`atx`,`application/vnd.antix.game-component`],[`au`,`audio/x-au`],[`avi`,`video/x-msvideo`],[`avif`,`image/avif`],[`aw`,`application/applixware`],[`azf`,`application/vnd.airzip.filesecure.azf`],[`azs`,`application/vnd.airzip.filesecure.azs`],[`azv`,`image/vnd.airzip.accelerator.azv`],[`azw`,`application/vnd.amazon.ebook`],[`b16`,`image/vnd.pco.b16`],[`bat`,`application/x-msdownload`],[`bcpio`,`application/x-bcpio`],[`bdf`,`application/x-font-bdf`],[`bdm`,`application/vnd.syncml.dm+wbxml`],[`bdoc`,`application/x-bdoc`],[`bed`,`application/vnd.realvnc.bed`],[`bh2`,`application/vnd.fujitsu.oasysprs`],[`bin`,`application/octet-stream`],[`blb`,`application/x-blorb`],[`blorb`,`application/x-blorb`],[`bmi`,`application/vnd.bmi`],[`bmml`,`application/vnd.balsamiq.bmml+xml`],[`bmp`,`image/bmp`],[`book`,`application/vnd.framemaker`],[`box`,`application/vnd.previewsystems.box`],[`boz`,`application/x-bzip2`],[`bpk`,`application/octet-stream`],[`bpmn`,`application/octet-stream`],[`bsp`,`model/vnd.valve.source.compiled-map`],[`btif`,`image/prs.btif`],[`buffer`,`application/octet-stream`],[`bz`,`application/x-bzip`],[`bz2`,`application/x-bzip2`],[`c`,`text/x-c`],[`c4d`,`application/vnd.clonk.c4group`],[`c4f`,`application/vnd.clonk.c4group`],[`c4g`,`application/vnd.clonk.c4group`],[`c4p`,`application/vnd.clonk.c4group`],[`c4u`,`application/vnd.clonk.c4group`],[`c11amc`,`application/vnd.cluetrust.cartomobile-config`],[`c11amz`,`application/vnd.cluetrust.cartomobile-config-pkg`],[`cab`,`application/vnd.ms-cab-compressed`],[`caf`,`audio/x-caf`],[`cap`,`application/vnd.tcpdump.pcap`],[`car`,`application/vnd.curl.car`],[`cat`,`application/vnd.ms-pki.seccat`],[`cb7`,`application/x-cbr`],[`cba`,`application/x-cbr`],[`cbr`,`application/x-cbr`],[`cbt`,`application/x-cbr`],[`cbz`,`application/x-cbr`],[`cc`,`text/x-c`],[`cco`,`application/x-cocoa`],[`cct`,`application/x-director`],[`ccxml`,`application/ccxml+xml`],[`cdbcmsg`,`application/vnd.contact.cmsg`],[`cda`,`application/x-cdf`],[`cdf`,`application/x-netcdf`],[`cdfx`,`application/cdfx+xml`],[`cdkey`,`application/vnd.mediastation.cdkey`],[`cdmia`,`application/cdmi-capability`],[`cdmic`,`application/cdmi-container`],[`cdmid`,`application/cdmi-domain`],[`cdmio`,`application/cdmi-object`],[`cdmiq`,`application/cdmi-queue`],[`cdr`,`application/cdr`],[`cdx`,`chemical/x-cdx`],[`cdxml`,`application/vnd.chemdraw+xml`],[`cdy`,`application/vnd.cinderella`],[`cer`,`application/pkix-cert`],[`cfs`,`application/x-cfs-compressed`],[`cgm`,`image/cgm`],[`chat`,`application/x-chat`],[`chm`,`application/vnd.ms-htmlhelp`],[`chrt`,`application/vnd.kde.kchart`],[`cif`,`chemical/x-cif`],[`cii`,`application/vnd.anser-web-certificate-issue-initiation`],[`cil`,`application/vnd.ms-artgalry`],[`cjs`,`application/node`],[`cla`,`application/vnd.claymore`],[`class`,`application/octet-stream`],[`clkk`,`application/vnd.crick.clicker.keyboard`],[`clkp`,`application/vnd.crick.clicker.palette`],[`clkt`,`application/vnd.crick.clicker.template`],[`clkw`,`application/vnd.crick.clicker.wordbank`],[`clkx`,`application/vnd.crick.clicker`],[`clp`,`application/x-msclip`],[`cmc`,`application/vnd.cosmocaller`],[`cmdf`,`chemical/x-cmdf`],[`cml`,`chemical/x-cml`],[`cmp`,`application/vnd.yellowriver-custom-menu`],[`cmx`,`image/x-cmx`],[`cod`,`application/vnd.rim.cod`],[`coffee`,`text/coffeescript`],[`com`,`application/x-msdownload`],[`conf`,`text/plain`],[`cpio`,`application/x-cpio`],[`cpp`,`text/x-c`],[`cpt`,`application/mac-compactpro`],[`crd`,`application/x-mscardfile`],[`crl`,`application/pkix-crl`],[`crt`,`application/x-x509-ca-cert`],[`crx`,`application/x-chrome-extension`],[`cryptonote`,`application/vnd.rig.cryptonote`],[`csh`,`application/x-csh`],[`csl`,`application/vnd.citationstyles.style+xml`],[`csml`,`chemical/x-csml`],[`csp`,`application/vnd.commonspace`],[`csr`,`application/octet-stream`],[`css`,`text/css`],[`cst`,`application/x-director`],[`csv`,`text/csv`],[`cu`,`application/cu-seeme`],[`curl`,`text/vnd.curl`],[`cww`,`application/prs.cww`],[`cxt`,`application/x-director`],[`cxx`,`text/x-c`],[`dae`,`model/vnd.collada+xml`],[`daf`,`application/vnd.mobius.daf`],[`dart`,`application/vnd.dart`],[`dataless`,`application/vnd.fdsn.seed`],[`davmount`,`application/davmount+xml`],[`dbf`,`application/vnd.dbf`],[`dbk`,`application/docbook+xml`],[`dcr`,`application/x-director`],[`dcurl`,`text/vnd.curl.dcurl`],[`dd2`,`application/vnd.oma.dd2+xml`],[`ddd`,`application/vnd.fujixerox.ddd`],[`ddf`,`application/vnd.syncml.dmddf+xml`],[`dds`,`image/vnd.ms-dds`],[`deb`,`application/x-debian-package`],[`def`,`text/plain`],[`deploy`,`application/octet-stream`],[`der`,`application/x-x509-ca-cert`],[`dfac`,`application/vnd.dreamfactory`],[`dgc`,`application/x-dgc-compressed`],[`dic`,`text/x-c`],[`dir`,`application/x-director`],[`dis`,`application/vnd.mobius.dis`],[`disposition-notification`,`message/disposition-notification`],[`dist`,`application/octet-stream`],[`distz`,`application/octet-stream`],[`djv`,`image/vnd.djvu`],[`djvu`,`image/vnd.djvu`],[`dll`,`application/octet-stream`],[`dmg`,`application/x-apple-diskimage`],[`dmn`,`application/octet-stream`],[`dmp`,`application/vnd.tcpdump.pcap`],[`dms`,`application/octet-stream`],[`dna`,`application/vnd.dna`],[`doc`,`application/msword`],[`docm`,`application/vnd.ms-word.template.macroEnabled.12`],[`docx`,`application/vnd.openxmlformats-officedocument.wordprocessingml.document`],[`dot`,`application/msword`],[`dotm`,`application/vnd.ms-word.template.macroEnabled.12`],[`dotx`,`application/vnd.openxmlformats-officedocument.wordprocessingml.template`],[`dp`,`application/vnd.osgi.dp`],[`dpg`,`application/vnd.dpgraph`],[`dra`,`audio/vnd.dra`],[`drle`,`image/dicom-rle`],[`dsc`,`text/prs.lines.tag`],[`dssc`,`application/dssc+der`],[`dtb`,`application/x-dtbook+xml`],[`dtd`,`application/xml-dtd`],[`dts`,`audio/vnd.dts`],[`dtshd`,`audio/vnd.dts.hd`],[`dump`,`application/octet-stream`],[`dvb`,`video/vnd.dvb.file`],[`dvi`,`application/x-dvi`],[`dwd`,`application/atsc-dwd+xml`],[`dwf`,`model/vnd.dwf`],[`dwg`,`image/vnd.dwg`],[`dxf`,`image/vnd.dxf`],[`dxp`,`application/vnd.spotfire.dxp`],[`dxr`,`application/x-director`],[`ear`,`application/java-archive`],[`ecelp4800`,`audio/vnd.nuera.ecelp4800`],[`ecelp7470`,`audio/vnd.nuera.ecelp7470`],[`ecelp9600`,`audio/vnd.nuera.ecelp9600`],[`ecma`,`application/ecmascript`],[`edm`,`application/vnd.novadigm.edm`],[`edx`,`application/vnd.novadigm.edx`],[`efif`,`application/vnd.picsel`],[`ei6`,`application/vnd.pg.osasli`],[`elc`,`application/octet-stream`],[`emf`,`image/emf`],[`eml`,`message/rfc822`],[`emma`,`application/emma+xml`],[`emotionml`,`application/emotionml+xml`],[`emz`,`application/x-msmetafile`],[`eol`,`audio/vnd.digital-winds`],[`eot`,`application/vnd.ms-fontobject`],[`eps`,`application/postscript`],[`epub`,`application/epub+zip`],[`es`,`application/ecmascript`],[`es3`,`application/vnd.eszigno3+xml`],[`esa`,`application/vnd.osgi.subsystem`],[`esf`,`application/vnd.epson.esf`],[`et3`,`application/vnd.eszigno3+xml`],[`etx`,`text/x-setext`],[`eva`,`application/x-eva`],[`evy`,`application/x-envoy`],[`exe`,`application/octet-stream`],[`exi`,`application/exi`],[`exp`,`application/express`],[`exr`,`image/aces`],[`ext`,`application/vnd.novadigm.ext`],[`ez`,`application/andrew-inset`],[`ez2`,`application/vnd.ezpix-album`],[`ez3`,`application/vnd.ezpix-package`],[`f`,`text/x-fortran`],[`f4v`,`video/mp4`],[`f77`,`text/x-fortran`],[`f90`,`text/x-fortran`],[`fbs`,`image/vnd.fastbidsheet`],[`fcdt`,`application/vnd.adobe.formscentral.fcdt`],[`fcs`,`application/vnd.isac.fcs`],[`fdf`,`application/vnd.fdf`],[`fdt`,`application/fdt+xml`],[`fe_launch`,`application/vnd.denovo.fcselayout-link`],[`fg5`,`application/vnd.fujitsu.oasysgp`],[`fgd`,`application/x-director`],[`fh`,`image/x-freehand`],[`fh4`,`image/x-freehand`],[`fh5`,`image/x-freehand`],[`fh7`,`image/x-freehand`],[`fhc`,`image/x-freehand`],[`fig`,`application/x-xfig`],[`fits`,`image/fits`],[`flac`,`audio/x-flac`],[`fli`,`video/x-fli`],[`flo`,`application/vnd.micrografx.flo`],[`flv`,`video/x-flv`],[`flw`,`application/vnd.kde.kivio`],[`flx`,`text/vnd.fmi.flexstor`],[`fly`,`text/vnd.fly`],[`fm`,`application/vnd.framemaker`],[`fnc`,`application/vnd.frogans.fnc`],[`fo`,`application/vnd.software602.filler.form+xml`],[`for`,`text/x-fortran`],[`fpx`,`image/vnd.fpx`],[`frame`,`application/vnd.framemaker`],[`fsc`,`application/vnd.fsc.weblaunch`],[`fst`,`image/vnd.fst`],[`ftc`,`application/vnd.fluxtime.clip`],[`fti`,`application/vnd.anser-web-funds-transfer-initiation`],[`fvt`,`video/vnd.fvt`],[`fxp`,`application/vnd.adobe.fxp`],[`fxpl`,`application/vnd.adobe.fxp`],[`fzs`,`application/vnd.fuzzysheet`],[`g2w`,`application/vnd.geoplan`],[`g3`,`image/g3fax`],[`g3w`,`application/vnd.geospace`],[`gac`,`application/vnd.groove-account`],[`gam`,`application/x-tads`],[`gbr`,`application/rpki-ghostbusters`],[`gca`,`application/x-gca-compressed`],[`gdl`,`model/vnd.gdl`],[`gdoc`,`application/vnd.google-apps.document`],[`geo`,`application/vnd.dynageo`],[`geojson`,`application/geo+json`],[`gex`,`application/vnd.geometry-explorer`],[`ggb`,`application/vnd.geogebra.file`],[`ggt`,`application/vnd.geogebra.tool`],[`ghf`,`application/vnd.groove-help`],[`gif`,`image/gif`],[`gim`,`application/vnd.groove-identity-message`],[`glb`,`model/gltf-binary`],[`gltf`,`model/gltf+json`],[`gml`,`application/gml+xml`],[`gmx`,`application/vnd.gmx`],[`gnumeric`,`application/x-gnumeric`],[`gpg`,`application/gpg-keys`],[`gph`,`application/vnd.flographit`],[`gpx`,`application/gpx+xml`],[`gqf`,`application/vnd.grafeq`],[`gqs`,`application/vnd.grafeq`],[`gram`,`application/srgs`],[`gramps`,`application/x-gramps-xml`],[`gre`,`application/vnd.geometry-explorer`],[`grv`,`application/vnd.groove-injector`],[`grxml`,`application/srgs+xml`],[`gsf`,`application/x-font-ghostscript`],[`gsheet`,`application/vnd.google-apps.spreadsheet`],[`gslides`,`application/vnd.google-apps.presentation`],[`gtar`,`application/x-gtar`],[`gtm`,`application/vnd.groove-tool-message`],[`gtw`,`model/vnd.gtw`],[`gv`,`text/vnd.graphviz`],[`gxf`,`application/gxf`],[`gxt`,`application/vnd.geonext`],[`gz`,`application/gzip`],[`gzip`,`application/gzip`],[`h`,`text/x-c`],[`h261`,`video/h261`],[`h263`,`video/h263`],[`h264`,`video/h264`],[`hal`,`application/vnd.hal+xml`],[`hbci`,`application/vnd.hbci`],[`hbs`,`text/x-handlebars-template`],[`hdd`,`application/x-virtualbox-hdd`],[`hdf`,`application/x-hdf`],[`heic`,`image/heic`],[`heics`,`image/heic-sequence`],[`heif`,`image/heif`],[`heifs`,`image/heif-sequence`],[`hej2`,`image/hej2k`],[`held`,`application/atsc-held+xml`],[`hh`,`text/x-c`],[`hjson`,`application/hjson`],[`hlp`,`application/winhlp`],[`hpgl`,`application/vnd.hp-hpgl`],[`hpid`,`application/vnd.hp-hpid`],[`hps`,`application/vnd.hp-hps`],[`hqx`,`application/mac-binhex40`],[`hsj2`,`image/hsj2`],[`htc`,`text/x-component`],[`htke`,`application/vnd.kenameaapp`],[`htm`,`text/html`],[`html`,`text/html`],[`hvd`,`application/vnd.yamaha.hv-dic`],[`hvp`,`application/vnd.yamaha.hv-voice`],[`hvs`,`application/vnd.yamaha.hv-script`],[`i2g`,`application/vnd.intergeo`],[`icc`,`application/vnd.iccprofile`],[`ice`,`x-conference/x-cooltalk`],[`icm`,`application/vnd.iccprofile`],[`ico`,`image/x-icon`],[`ics`,`text/calendar`],[`ief`,`image/ief`],[`ifb`,`text/calendar`],[`ifm`,`application/vnd.shana.informed.formdata`],[`iges`,`model/iges`],[`igl`,`application/vnd.igloader`],[`igm`,`application/vnd.insors.igm`],[`igs`,`model/iges`],[`igx`,`application/vnd.micrografx.igx`],[`iif`,`application/vnd.shana.informed.interchange`],[`img`,`application/octet-stream`],[`imp`,`application/vnd.accpac.simply.imp`],[`ims`,`application/vnd.ms-ims`],[`in`,`text/plain`],[`ini`,`text/plain`],[`ink`,`application/inkml+xml`],[`inkml`,`application/inkml+xml`],[`install`,`application/x-install-instructions`],[`iota`,`application/vnd.astraea-software.iota`],[`ipfix`,`application/ipfix`],[`ipk`,`application/vnd.shana.informed.package`],[`irm`,`application/vnd.ibm.rights-management`],[`irp`,`application/vnd.irepository.package+xml`],[`iso`,`application/x-iso9660-image`],[`itp`,`application/vnd.shana.informed.formtemplate`],[`its`,`application/its+xml`],[`ivp`,`application/vnd.immervision-ivp`],[`ivu`,`application/vnd.immervision-ivu`],[`jad`,`text/vnd.sun.j2me.app-descriptor`],[`jade`,`text/jade`],[`jam`,`application/vnd.jam`],[`jar`,`application/java-archive`],[`jardiff`,`application/x-java-archive-diff`],[`java`,`text/x-java-source`],[`jhc`,`image/jphc`],[`jisp`,`application/vnd.jisp`],[`jls`,`image/jls`],[`jlt`,`application/vnd.hp-jlyt`],[`jng`,`image/x-jng`],[`jnlp`,`application/x-java-jnlp-file`],[`joda`,`application/vnd.joost.joda-archive`],[`jp2`,`image/jp2`],[`jpe`,`image/jpeg`],[`jpeg`,`image/jpeg`],[`jpf`,`image/jpx`],[`jpg`,`image/jpeg`],[`jpg2`,`image/jp2`],[`jpgm`,`video/jpm`],[`jpgv`,`video/jpeg`],[`jph`,`image/jph`],[`jpm`,`video/jpm`],[`jpx`,`image/jpx`],[`js`,`application/javascript`],[`json`,`application/json`],[`json5`,`application/json5`],[`jsonld`,`application/ld+json`],[`jsonl`,`application/jsonl`],[`jsonml`,`application/jsonml+json`],[`jsx`,`text/jsx`],[`jxr`,`image/jxr`],[`jxra`,`image/jxra`],[`jxrs`,`image/jxrs`],[`jxs`,`image/jxs`],[`jxsc`,`image/jxsc`],[`jxsi`,`image/jxsi`],[`jxss`,`image/jxss`],[`kar`,`audio/midi`],[`karbon`,`application/vnd.kde.karbon`],[`kdb`,`application/octet-stream`],[`kdbx`,`application/x-keepass2`],[`key`,`application/x-iwork-keynote-sffkey`],[`kfo`,`application/vnd.kde.kformula`],[`kia`,`application/vnd.kidspiration`],[`kml`,`application/vnd.google-earth.kml+xml`],[`kmz`,`application/vnd.google-earth.kmz`],[`kne`,`application/vnd.kinar`],[`knp`,`application/vnd.kinar`],[`kon`,`application/vnd.kde.kontour`],[`kpr`,`application/vnd.kde.kpresenter`],[`kpt`,`application/vnd.kde.kpresenter`],[`kpxx`,`application/vnd.ds-keypoint`],[`ksp`,`application/vnd.kde.kspread`],[`ktr`,`application/vnd.kahootz`],[`ktx`,`image/ktx`],[`ktx2`,`image/ktx2`],[`ktz`,`application/vnd.kahootz`],[`kwd`,`application/vnd.kde.kword`],[`kwt`,`application/vnd.kde.kword`],[`lasxml`,`application/vnd.las.las+xml`],[`latex`,`application/x-latex`],[`lbd`,`application/vnd.llamagraphics.life-balance.desktop`],[`lbe`,`application/vnd.llamagraphics.life-balance.exchange+xml`],[`les`,`application/vnd.hhe.lesson-player`],[`less`,`text/less`],[`lgr`,`application/lgr+xml`],[`lha`,`application/octet-stream`],[`link66`,`application/vnd.route66.link66+xml`],[`list`,`text/plain`],[`list3820`,`application/vnd.ibm.modcap`],[`listafp`,`application/vnd.ibm.modcap`],[`litcoffee`,`text/coffeescript`],[`lnk`,`application/x-ms-shortcut`],[`log`,`text/plain`],[`lostxml`,`application/lost+xml`],[`lrf`,`application/octet-stream`],[`lrm`,`application/vnd.ms-lrm`],[`ltf`,`application/vnd.frogans.ltf`],[`lua`,`text/x-lua`],[`luac`,`application/x-lua-bytecode`],[`lvp`,`audio/vnd.lucent.voice`],[`lwp`,`application/vnd.lotus-wordpro`],[`lzh`,`application/octet-stream`],[`m1v`,`video/mpeg`],[`m2a`,`audio/mpeg`],[`m2v`,`video/mpeg`],[`m3a`,`audio/mpeg`],[`m3u`,`text/plain`],[`m3u8`,`application/vnd.apple.mpegurl`],[`m4a`,`audio/x-m4a`],[`m4p`,`application/mp4`],[`m4s`,`video/iso.segment`],[`m4u`,`application/vnd.mpegurl`],[`m4v`,`video/x-m4v`],[`m13`,`application/x-msmediaview`],[`m14`,`application/x-msmediaview`],[`m21`,`application/mp21`],[`ma`,`application/mathematica`],[`mads`,`application/mads+xml`],[`maei`,`application/mmt-aei+xml`],[`mag`,`application/vnd.ecowin.chart`],[`maker`,`application/vnd.framemaker`],[`man`,`text/troff`],[`manifest`,`text/cache-manifest`],[`map`,`application/json`],[`mar`,`application/octet-stream`],[`markdown`,`text/markdown`],[`mathml`,`application/mathml+xml`],[`mb`,`application/mathematica`],[`mbk`,`application/vnd.mobius.mbk`],[`mbox`,`application/mbox`],[`mc1`,`application/vnd.medcalcdata`],[`mcd`,`application/vnd.mcd`],[`mcurl`,`text/vnd.curl.mcurl`],[`md`,`text/markdown`],[`mdb`,`application/x-msaccess`],[`mdi`,`image/vnd.ms-modi`],[`mdx`,`text/mdx`],[`me`,`text/troff`],[`mesh`,`model/mesh`],[`meta4`,`application/metalink4+xml`],[`metalink`,`application/metalink+xml`],[`mets`,`application/mets+xml`],[`mfm`,`application/vnd.mfmp`],[`mft`,`application/rpki-manifest`],[`mgp`,`application/vnd.osgeo.mapguide.package`],[`mgz`,`application/vnd.proteus.magazine`],[`mid`,`audio/midi`],[`midi`,`audio/midi`],[`mie`,`application/x-mie`],[`mif`,`application/vnd.mif`],[`mime`,`message/rfc822`],[`mj2`,`video/mj2`],[`mjp2`,`video/mj2`],[`mjs`,`application/javascript`],[`mk3d`,`video/x-matroska`],[`mka`,`audio/x-matroska`],[`mkd`,`text/x-markdown`],[`mks`,`video/x-matroska`],[`mkv`,`video/x-matroska`],[`mlp`,`application/vnd.dolby.mlp`],[`mmd`,`application/vnd.chipnuts.karaoke-mmd`],[`mmf`,`application/vnd.smaf`],[`mml`,`text/mathml`],[`mmr`,`image/vnd.fujixerox.edmics-mmr`],[`mng`,`video/x-mng`],[`mny`,`application/x-msmoney`],[`mobi`,`application/x-mobipocket-ebook`],[`mods`,`application/mods+xml`],[`mov`,`video/quicktime`],[`movie`,`video/x-sgi-movie`],[`mp2`,`audio/mpeg`],[`mp2a`,`audio/mpeg`],[`mp3`,`audio/mpeg`],[`mp4`,`video/mp4`],[`mp4a`,`audio/mp4`],[`mp4s`,`application/mp4`],[`mp4v`,`video/mp4`],[`mp21`,`application/mp21`],[`mpc`,`application/vnd.mophun.certificate`],[`mpd`,`application/dash+xml`],[`mpe`,`video/mpeg`],[`mpeg`,`video/mpeg`],[`mpg`,`video/mpeg`],[`mpg4`,`video/mp4`],[`mpga`,`audio/mpeg`],[`mpkg`,`application/vnd.apple.installer+xml`],[`mpm`,`application/vnd.blueice.multipass`],[`mpn`,`application/vnd.mophun.application`],[`mpp`,`application/vnd.ms-project`],[`mpt`,`application/vnd.ms-project`],[`mpy`,`application/vnd.ibm.minipay`],[`mqy`,`application/vnd.mobius.mqy`],[`mrc`,`application/marc`],[`mrcx`,`application/marcxml+xml`],[`ms`,`text/troff`],[`mscml`,`application/mediaservercontrol+xml`],[`mseed`,`application/vnd.fdsn.mseed`],[`mseq`,`application/vnd.mseq`],[`msf`,`application/vnd.epson.msf`],[`msg`,`application/vnd.ms-outlook`],[`msh`,`model/mesh`],[`msi`,`application/x-msdownload`],[`msl`,`application/vnd.mobius.msl`],[`msm`,`application/octet-stream`],[`msp`,`application/octet-stream`],[`msty`,`application/vnd.muvee.style`],[`mtl`,`model/mtl`],[`mts`,`model/vnd.mts`],[`mus`,`application/vnd.musician`],[`musd`,`application/mmt-usd+xml`],[`musicxml`,`application/vnd.recordare.musicxml+xml`],[`mvb`,`application/x-msmediaview`],[`mvt`,`application/vnd.mapbox-vector-tile`],[`mwf`,`application/vnd.mfer`],[`mxf`,`application/mxf`],[`mxl`,`application/vnd.recordare.musicxml`],[`mxmf`,`audio/mobile-xmf`],[`mxml`,`application/xv+xml`],[`mxs`,`application/vnd.triscape.mxs`],[`mxu`,`video/vnd.mpegurl`],[`n-gage`,`application/vnd.nokia.n-gage.symbian.install`],[`n3`,`text/n3`],[`nb`,`application/mathematica`],[`nbp`,`application/vnd.wolfram.player`],[`nc`,`application/x-netcdf`],[`ncx`,`application/x-dtbncx+xml`],[`nfo`,`text/x-nfo`],[`ngdat`,`application/vnd.nokia.n-gage.data`],[`nitf`,`application/vnd.nitf`],[`nlu`,`application/vnd.neurolanguage.nlu`],[`nml`,`application/vnd.enliven`],[`nnd`,`application/vnd.noblenet-directory`],[`nns`,`application/vnd.noblenet-sealer`],[`nnw`,`application/vnd.noblenet-web`],[`npx`,`image/vnd.net-fpx`],[`nq`,`application/n-quads`],[`nsc`,`application/x-conference`],[`nsf`,`application/vnd.lotus-notes`],[`nt`,`application/n-triples`],[`ntf`,`application/vnd.nitf`],[`numbers`,`application/x-iwork-numbers-sffnumbers`],[`nzb`,`application/x-nzb`],[`oa2`,`application/vnd.fujitsu.oasys2`],[`oa3`,`application/vnd.fujitsu.oasys3`],[`oas`,`application/vnd.fujitsu.oasys`],[`obd`,`application/x-msbinder`],[`obgx`,`application/vnd.openblox.game+xml`],[`obj`,`model/obj`],[`oda`,`application/oda`],[`odb`,`application/vnd.oasis.opendocument.database`],[`odc`,`application/vnd.oasis.opendocument.chart`],[`odf`,`application/vnd.oasis.opendocument.formula`],[`odft`,`application/vnd.oasis.opendocument.formula-template`],[`odg`,`application/vnd.oasis.opendocument.graphics`],[`odi`,`application/vnd.oasis.opendocument.image`],[`odm`,`application/vnd.oasis.opendocument.text-master`],[`odp`,`application/vnd.oasis.opendocument.presentation`],[`ods`,`application/vnd.oasis.opendocument.spreadsheet`],[`odt`,`application/vnd.oasis.opendocument.text`],[`oga`,`audio/ogg`],[`ogex`,`model/vnd.opengex`],[`ogg`,`audio/ogg`],[`ogv`,`video/ogg`],[`ogx`,`application/ogg`],[`omdoc`,`application/omdoc+xml`],[`onepkg`,`application/onenote`],[`onetmp`,`application/onenote`],[`onetoc`,`application/onenote`],[`onetoc2`,`application/onenote`],[`opf`,`application/oebps-package+xml`],[`opml`,`text/x-opml`],[`oprc`,`application/vnd.palm`],[`opus`,`audio/ogg`],[`org`,`text/x-org`],[`osf`,`application/vnd.yamaha.openscoreformat`],[`osfpvg`,`application/vnd.yamaha.openscoreformat.osfpvg+xml`],[`osm`,`application/vnd.openstreetmap.data+xml`],[`otc`,`application/vnd.oasis.opendocument.chart-template`],[`otf`,`font/otf`],[`otg`,`application/vnd.oasis.opendocument.graphics-template`],[`oth`,`application/vnd.oasis.opendocument.text-web`],[`oti`,`application/vnd.oasis.opendocument.image-template`],[`otp`,`application/vnd.oasis.opendocument.presentation-template`],[`ots`,`application/vnd.oasis.opendocument.spreadsheet-template`],[`ott`,`application/vnd.oasis.opendocument.text-template`],[`ova`,`application/x-virtualbox-ova`],[`ovf`,`application/x-virtualbox-ovf`],[`owl`,`application/rdf+xml`],[`oxps`,`application/oxps`],[`oxt`,`application/vnd.openofficeorg.extension`],[`p`,`text/x-pascal`],[`p7a`,`application/x-pkcs7-signature`],[`p7b`,`application/x-pkcs7-certificates`],[`p7c`,`application/pkcs7-mime`],[`p7m`,`application/pkcs7-mime`],[`p7r`,`application/x-pkcs7-certreqresp`],[`p7s`,`application/pkcs7-signature`],[`p8`,`application/pkcs8`],[`p10`,`application/x-pkcs10`],[`p12`,`application/x-pkcs12`],[`pac`,`application/x-ns-proxy-autoconfig`],[`pages`,`application/x-iwork-pages-sffpages`],[`pas`,`text/x-pascal`],[`paw`,`application/vnd.pawaafile`],[`pbd`,`application/vnd.powerbuilder6`],[`pbm`,`image/x-portable-bitmap`],[`pcap`,`application/vnd.tcpdump.pcap`],[`pcf`,`application/x-font-pcf`],[`pcl`,`application/vnd.hp-pcl`],[`pclxl`,`application/vnd.hp-pclxl`],[`pct`,`image/x-pict`],[`pcurl`,`application/vnd.curl.pcurl`],[`pcx`,`image/x-pcx`],[`pdb`,`application/x-pilot`],[`pde`,`text/x-processing`],[`pdf`,`application/pdf`],[`pem`,`application/x-x509-user-cert`],[`pfa`,`application/x-font-type1`],[`pfb`,`application/x-font-type1`],[`pfm`,`application/x-font-type1`],[`pfr`,`application/font-tdpfr`],[`pfx`,`application/x-pkcs12`],[`pgm`,`image/x-portable-graymap`],[`pgn`,`application/x-chess-pgn`],[`pgp`,`application/pgp`],[`php`,`application/x-httpd-php`],[`php3`,`application/x-httpd-php`],[`php4`,`application/x-httpd-php`],[`phps`,`application/x-httpd-php-source`],[`phtml`,`application/x-httpd-php`],[`pic`,`image/x-pict`],[`pkg`,`application/octet-stream`],[`pki`,`application/pkixcmp`],[`pkipath`,`application/pkix-pkipath`],[`pkpass`,`application/vnd.apple.pkpass`],[`pl`,`application/x-perl`],[`plb`,`application/vnd.3gpp.pic-bw-large`],[`plc`,`application/vnd.mobius.plc`],[`plf`,`application/vnd.pocketlearn`],[`pls`,`application/pls+xml`],[`pm`,`application/x-perl`],[`pml`,`application/vnd.ctc-posml`],[`png`,`image/png`],[`pnm`,`image/x-portable-anymap`],[`portpkg`,`application/vnd.macports.portpkg`],[`pot`,`application/vnd.ms-powerpoint`],[`potm`,`application/vnd.ms-powerpoint.presentation.macroEnabled.12`],[`potx`,`application/vnd.openxmlformats-officedocument.presentationml.template`],[`ppa`,`application/vnd.ms-powerpoint`],[`ppam`,`application/vnd.ms-powerpoint.addin.macroEnabled.12`],[`ppd`,`application/vnd.cups-ppd`],[`ppm`,`image/x-portable-pixmap`],[`pps`,`application/vnd.ms-powerpoint`],[`ppsm`,`application/vnd.ms-powerpoint.slideshow.macroEnabled.12`],[`ppsx`,`application/vnd.openxmlformats-officedocument.presentationml.slideshow`],[`ppt`,`application/powerpoint`],[`pptm`,`application/vnd.ms-powerpoint.presentation.macroEnabled.12`],[`pptx`,`application/vnd.openxmlformats-officedocument.presentationml.presentation`],[`pqa`,`application/vnd.palm`],[`prc`,`application/x-pilot`],[`pre`,`application/vnd.lotus-freelance`],[`prf`,`application/pics-rules`],[`provx`,`application/provenance+xml`],[`ps`,`application/postscript`],[`psb`,`application/vnd.3gpp.pic-bw-small`],[`psd`,`application/x-photoshop`],[`psf`,`application/x-font-linux-psf`],[`pskcxml`,`application/pskc+xml`],[`pti`,`image/prs.pti`],[`ptid`,`application/vnd.pvi.ptid1`],[`pub`,`application/x-mspublisher`],[`pvb`,`application/vnd.3gpp.pic-bw-var`],[`pwn`,`application/vnd.3m.post-it-notes`],[`pya`,`audio/vnd.ms-playready.media.pya`],[`pyv`,`video/vnd.ms-playready.media.pyv`],[`qam`,`application/vnd.epson.quickanime`],[`qbo`,`application/vnd.intu.qbo`],[`qfx`,`application/vnd.intu.qfx`],[`qps`,`application/vnd.publishare-delta-tree`],[`qt`,`video/quicktime`],[`qwd`,`application/vnd.quark.quarkxpress`],[`qwt`,`application/vnd.quark.quarkxpress`],[`qxb`,`application/vnd.quark.quarkxpress`],[`qxd`,`application/vnd.quark.quarkxpress`],[`qxl`,`application/vnd.quark.quarkxpress`],[`qxt`,`application/vnd.quark.quarkxpress`],[`ra`,`audio/x-realaudio`],[`ram`,`audio/x-pn-realaudio`],[`raml`,`application/raml+yaml`],[`rapd`,`application/route-apd+xml`],[`rar`,`application/x-rar`],[`ras`,`image/x-cmu-raster`],[`rcprofile`,`application/vnd.ipunplugged.rcprofile`],[`rdf`,`application/rdf+xml`],[`rdz`,`application/vnd.data-vision.rdz`],[`relo`,`application/p2p-overlay+xml`],[`rep`,`application/vnd.businessobjects`],[`res`,`application/x-dtbresource+xml`],[`rgb`,`image/x-rgb`],[`rif`,`application/reginfo+xml`],[`rip`,`audio/vnd.rip`],[`ris`,`application/x-research-info-systems`],[`rl`,`application/resource-lists+xml`],[`rlc`,`image/vnd.fujixerox.edmics-rlc`],[`rld`,`application/resource-lists-diff+xml`],[`rm`,`audio/x-pn-realaudio`],[`rmi`,`audio/midi`],[`rmp`,`audio/x-pn-realaudio-plugin`],[`rms`,`application/vnd.jcp.javame.midlet-rms`],[`rmvb`,`application/vnd.rn-realmedia-vbr`],[`rnc`,`application/relax-ng-compact-syntax`],[`rng`,`application/xml`],[`roa`,`application/rpki-roa`],[`roff`,`text/troff`],[`rp9`,`application/vnd.cloanto.rp9`],[`rpm`,`audio/x-pn-realaudio-plugin`],[`rpss`,`application/vnd.nokia.radio-presets`],[`rpst`,`application/vnd.nokia.radio-preset`],[`rq`,`application/sparql-query`],[`rs`,`application/rls-services+xml`],[`rsa`,`application/x-pkcs7`],[`rsat`,`application/atsc-rsat+xml`],[`rsd`,`application/rsd+xml`],[`rsheet`,`application/urc-ressheet+xml`],[`rss`,`application/rss+xml`],[`rtf`,`text/rtf`],[`rtx`,`text/richtext`],[`run`,`application/x-makeself`],[`rusd`,`application/route-usd+xml`],[`rv`,`video/vnd.rn-realvideo`],[`s`,`text/x-asm`],[`s3m`,`audio/s3m`],[`saf`,`application/vnd.yamaha.smaf-audio`],[`sass`,`text/x-sass`],[`sbml`,`application/sbml+xml`],[`sc`,`application/vnd.ibm.secure-container`],[`scd`,`application/x-msschedule`],[`scm`,`application/vnd.lotus-screencam`],[`scq`,`application/scvp-cv-request`],[`scs`,`application/scvp-cv-response`],[`scss`,`text/x-scss`],[`scurl`,`text/vnd.curl.scurl`],[`sda`,`application/vnd.stardivision.draw`],[`sdc`,`application/vnd.stardivision.calc`],[`sdd`,`application/vnd.stardivision.impress`],[`sdkd`,`application/vnd.solent.sdkm+xml`],[`sdkm`,`application/vnd.solent.sdkm+xml`],[`sdp`,`application/sdp`],[`sdw`,`application/vnd.stardivision.writer`],[`sea`,`application/octet-stream`],[`see`,`application/vnd.seemail`],[`seed`,`application/vnd.fdsn.seed`],[`sema`,`application/vnd.sema`],[`semd`,`application/vnd.semd`],[`semf`,`application/vnd.semf`],[`senmlx`,`application/senml+xml`],[`sensmlx`,`application/sensml+xml`],[`ser`,`application/java-serialized-object`],[`setpay`,`application/set-payment-initiation`],[`setreg`,`application/set-registration-initiation`],[`sfd-hdstx`,`application/vnd.hydrostatix.sof-data`],[`sfs`,`application/vnd.spotfire.sfs`],[`sfv`,`text/x-sfv`],[`sgi`,`image/sgi`],[`sgl`,`application/vnd.stardivision.writer-global`],[`sgm`,`text/sgml`],[`sgml`,`text/sgml`],[`sh`,`application/x-sh`],[`shar`,`application/x-shar`],[`shex`,`text/shex`],[`shf`,`application/shf+xml`],[`shtml`,`text/html`],[`sid`,`image/x-mrsid-image`],[`sieve`,`application/sieve`],[`sig`,`application/pgp-signature`],[`sil`,`audio/silk`],[`silo`,`model/mesh`],[`sis`,`application/vnd.symbian.install`],[`sisx`,`application/vnd.symbian.install`],[`sit`,`application/x-stuffit`],[`sitx`,`application/x-stuffitx`],[`siv`,`application/sieve`],[`skd`,`application/vnd.koan`],[`skm`,`application/vnd.koan`],[`skp`,`application/vnd.koan`],[`skt`,`application/vnd.koan`],[`sldm`,`application/vnd.ms-powerpoint.slide.macroenabled.12`],[`sldx`,`application/vnd.openxmlformats-officedocument.presentationml.slide`],[`slim`,`text/slim`],[`slm`,`text/slim`],[`sls`,`application/route-s-tsid+xml`],[`slt`,`application/vnd.epson.salt`],[`sm`,`application/vnd.stepmania.stepchart`],[`smf`,`application/vnd.stardivision.math`],[`smi`,`application/smil`],[`smil`,`application/smil`],[`smv`,`video/x-smv`],[`smzip`,`application/vnd.stepmania.package`],[`snd`,`audio/basic`],[`snf`,`application/x-font-snf`],[`so`,`application/octet-stream`],[`spc`,`application/x-pkcs7-certificates`],[`spdx`,`text/spdx`],[`spf`,`application/vnd.yamaha.smaf-phrase`],[`spl`,`application/x-futuresplash`],[`spot`,`text/vnd.in3d.spot`],[`spp`,`application/scvp-vp-response`],[`spq`,`application/scvp-vp-request`],[`spx`,`audio/ogg`],[`sql`,`application/x-sql`],[`src`,`application/x-wais-source`],[`srt`,`application/x-subrip`],[`sru`,`application/sru+xml`],[`srx`,`application/sparql-results+xml`],[`ssdl`,`application/ssdl+xml`],[`sse`,`application/vnd.kodak-descriptor`],[`ssf`,`application/vnd.epson.ssf`],[`ssml`,`application/ssml+xml`],[`sst`,`application/octet-stream`],[`st`,`application/vnd.sailingtracker.track`],[`stc`,`application/vnd.sun.xml.calc.template`],[`std`,`application/vnd.sun.xml.draw.template`],[`stf`,`application/vnd.wt.stf`],[`sti`,`application/vnd.sun.xml.impress.template`],[`stk`,`application/hyperstudio`],[`stl`,`model/stl`],[`stpx`,`model/step+xml`],[`stpxz`,`model/step-xml+zip`],[`stpz`,`model/step+zip`],[`str`,`application/vnd.pg.format`],[`stw`,`application/vnd.sun.xml.writer.template`],[`styl`,`text/stylus`],[`stylus`,`text/stylus`],[`sub`,`text/vnd.dvb.subtitle`],[`sus`,`application/vnd.sus-calendar`],[`susp`,`application/vnd.sus-calendar`],[`sv4cpio`,`application/x-sv4cpio`],[`sv4crc`,`application/x-sv4crc`],[`svc`,`application/vnd.dvb.service`],[`svd`,`application/vnd.svd`],[`svg`,`image/svg+xml`],[`svgz`,`image/svg+xml`],[`swa`,`application/x-director`],[`swf`,`application/x-shockwave-flash`],[`swi`,`application/vnd.aristanetworks.swi`],[`swidtag`,`application/swid+xml`],[`sxc`,`application/vnd.sun.xml.calc`],[`sxd`,`application/vnd.sun.xml.draw`],[`sxg`,`application/vnd.sun.xml.writer.global`],[`sxi`,`application/vnd.sun.xml.impress`],[`sxm`,`application/vnd.sun.xml.math`],[`sxw`,`application/vnd.sun.xml.writer`],[`t`,`text/troff`],[`t3`,`application/x-t3vm-image`],[`t38`,`image/t38`],[`taglet`,`application/vnd.mynfc`],[`tao`,`application/vnd.tao.intent-module-archive`],[`tap`,`image/vnd.tencent.tap`],[`tar`,`application/x-tar`],[`tcap`,`application/vnd.3gpp2.tcap`],[`tcl`,`application/x-tcl`],[`td`,`application/urc-targetdesc+xml`],[`teacher`,`application/vnd.smart.teacher`],[`tei`,`application/tei+xml`],[`teicorpus`,`application/tei+xml`],[`tex`,`application/x-tex`],[`texi`,`application/x-texinfo`],[`texinfo`,`application/x-texinfo`],[`text`,`text/plain`],[`tfi`,`application/thraud+xml`],[`tfm`,`application/x-tex-tfm`],[`tfx`,`image/tiff-fx`],[`tga`,`image/x-tga`],[`tgz`,`application/x-tar`],[`thmx`,`application/vnd.ms-officetheme`],[`tif`,`image/tiff`],[`tiff`,`image/tiff`],[`tk`,`application/x-tcl`],[`tmo`,`application/vnd.tmobile-livetv`],[`toml`,`application/toml`],[`torrent`,`application/x-bittorrent`],[`tpl`,`application/vnd.groove-tool-template`],[`tpt`,`application/vnd.trid.tpt`],[`tr`,`text/troff`],[`tra`,`application/vnd.trueapp`],[`trig`,`application/trig`],[`trm`,`application/x-msterminal`],[`ts`,`video/mp2t`],[`tsd`,`application/timestamped-data`],[`tsv`,`text/tab-separated-values`],[`ttc`,`font/collection`],[`ttf`,`font/ttf`],[`ttl`,`text/turtle`],[`ttml`,`application/ttml+xml`],[`twd`,`application/vnd.simtech-mindmapper`],[`twds`,`application/vnd.simtech-mindmapper`],[`txd`,`application/vnd.genomatix.tuxedo`],[`txf`,`application/vnd.mobius.txf`],[`txt`,`text/plain`],[`u8dsn`,`message/global-delivery-status`],[`u8hdr`,`message/global-headers`],[`u8mdn`,`message/global-disposition-notification`],[`u8msg`,`message/global`],[`u32`,`application/x-authorware-bin`],[`ubj`,`application/ubjson`],[`udeb`,`application/x-debian-package`],[`ufd`,`application/vnd.ufdl`],[`ufdl`,`application/vnd.ufdl`],[`ulx`,`application/x-glulx`],[`umj`,`application/vnd.umajin`],[`unityweb`,`application/vnd.unity`],[`uoml`,`application/vnd.uoml+xml`],[`uri`,`text/uri-list`],[`uris`,`text/uri-list`],[`urls`,`text/uri-list`],[`usdz`,`model/vnd.usdz+zip`],[`ustar`,`application/x-ustar`],[`utz`,`application/vnd.uiq.theme`],[`uu`,`text/x-uuencode`],[`uva`,`audio/vnd.dece.audio`],[`uvd`,`application/vnd.dece.data`],[`uvf`,`application/vnd.dece.data`],[`uvg`,`image/vnd.dece.graphic`],[`uvh`,`video/vnd.dece.hd`],[`uvi`,`image/vnd.dece.graphic`],[`uvm`,`video/vnd.dece.mobile`],[`uvp`,`video/vnd.dece.pd`],[`uvs`,`video/vnd.dece.sd`],[`uvt`,`application/vnd.dece.ttml+xml`],[`uvu`,`video/vnd.uvvu.mp4`],[`uvv`,`video/vnd.dece.video`],[`uvva`,`audio/vnd.dece.audio`],[`uvvd`,`application/vnd.dece.data`],[`uvvf`,`application/vnd.dece.data`],[`uvvg`,`image/vnd.dece.graphic`],[`uvvh`,`video/vnd.dece.hd`],[`uvvi`,`image/vnd.dece.graphic`],[`uvvm`,`video/vnd.dece.mobile`],[`uvvp`,`video/vnd.dece.pd`],[`uvvs`,`video/vnd.dece.sd`],[`uvvt`,`application/vnd.dece.ttml+xml`],[`uvvu`,`video/vnd.uvvu.mp4`],[`uvvv`,`video/vnd.dece.video`],[`uvvx`,`application/vnd.dece.unspecified`],[`uvvz`,`application/vnd.dece.zip`],[`uvx`,`application/vnd.dece.unspecified`],[`uvz`,`application/vnd.dece.zip`],[`vbox`,`application/x-virtualbox-vbox`],[`vbox-extpack`,`application/x-virtualbox-vbox-extpack`],[`vcard`,`text/vcard`],[`vcd`,`application/x-cdlink`],[`vcf`,`text/x-vcard`],[`vcg`,`application/vnd.groove-vcard`],[`vcs`,`text/x-vcalendar`],[`vcx`,`application/vnd.vcx`],[`vdi`,`application/x-virtualbox-vdi`],[`vds`,`model/vnd.sap.vds`],[`vhd`,`application/x-virtualbox-vhd`],[`vis`,`application/vnd.visionary`],[`viv`,`video/vnd.vivo`],[`vlc`,`application/videolan`],[`vmdk`,`application/x-virtualbox-vmdk`],[`vob`,`video/x-ms-vob`],[`vor`,`application/vnd.stardivision.writer`],[`vox`,`application/x-authorware-bin`],[`vrml`,`model/vrml`],[`vsd`,`application/vnd.visio`],[`vsf`,`application/vnd.vsf`],[`vss`,`application/vnd.visio`],[`vst`,`application/vnd.visio`],[`vsw`,`application/vnd.visio`],[`vtf`,`image/vnd.valve.source.texture`],[`vtt`,`text/vtt`],[`vtu`,`model/vnd.vtu`],[`vxml`,`application/voicexml+xml`],[`w3d`,`application/x-director`],[`wad`,`application/x-doom`],[`wadl`,`application/vnd.sun.wadl+xml`],[`war`,`application/java-archive`],[`wasm`,`application/wasm`],[`wav`,`audio/x-wav`],[`wax`,`audio/x-ms-wax`],[`wbmp`,`image/vnd.wap.wbmp`],[`wbs`,`application/vnd.criticaltools.wbs+xml`],[`wbxml`,`application/wbxml`],[`wcm`,`application/vnd.ms-works`],[`wdb`,`application/vnd.ms-works`],[`wdp`,`image/vnd.ms-photo`],[`weba`,`audio/webm`],[`webapp`,`application/x-web-app-manifest+json`],[`webm`,`video/webm`],[`webmanifest`,`application/manifest+json`],[`webp`,`image/webp`],[`wg`,`application/vnd.pmi.widget`],[`wgt`,`application/widget`],[`wks`,`application/vnd.ms-works`],[`wm`,`video/x-ms-wm`],[`wma`,`audio/x-ms-wma`],[`wmd`,`application/x-ms-wmd`],[`wmf`,`image/wmf`],[`wml`,`text/vnd.wap.wml`],[`wmlc`,`application/wmlc`],[`wmls`,`text/vnd.wap.wmlscript`],[`wmlsc`,`application/vnd.wap.wmlscriptc`],[`wmv`,`video/x-ms-wmv`],[`wmx`,`video/x-ms-wmx`],[`wmz`,`application/x-msmetafile`],[`woff`,`font/woff`],[`woff2`,`font/woff2`],[`word`,`application/msword`],[`wpd`,`application/vnd.wordperfect`],[`wpl`,`application/vnd.ms-wpl`],[`wps`,`application/vnd.ms-works`],[`wqd`,`application/vnd.wqd`],[`wri`,`application/x-mswrite`],[`wrl`,`model/vrml`],[`wsc`,`message/vnd.wfa.wsc`],[`wsdl`,`application/wsdl+xml`],[`wspolicy`,`application/wspolicy+xml`],[`wtb`,`application/vnd.webturbo`],[`wvx`,`video/x-ms-wvx`],[`x3d`,`model/x3d+xml`],[`x3db`,`model/x3d+fastinfoset`],[`x3dbz`,`model/x3d+binary`],[`x3dv`,`model/x3d-vrml`],[`x3dvz`,`model/x3d+vrml`],[`x3dz`,`model/x3d+xml`],[`x32`,`application/x-authorware-bin`],[`x_b`,`model/vnd.parasolid.transmit.binary`],[`x_t`,`model/vnd.parasolid.transmit.text`],[`xaml`,`application/xaml+xml`],[`xap`,`application/x-silverlight-app`],[`xar`,`application/vnd.xara`],[`xav`,`application/xcap-att+xml`],[`xbap`,`application/x-ms-xbap`],[`xbd`,`application/vnd.fujixerox.docuworks.binder`],[`xbm`,`image/x-xbitmap`],[`xca`,`application/xcap-caps+xml`],[`xcs`,`application/calendar+xml`],[`xdf`,`application/xcap-diff+xml`],[`xdm`,`application/vnd.syncml.dm+xml`],[`xdp`,`application/vnd.adobe.xdp+xml`],[`xdssc`,`application/dssc+xml`],[`xdw`,`application/vnd.fujixerox.docuworks`],[`xel`,`application/xcap-el+xml`],[`xenc`,`application/xenc+xml`],[`xer`,`application/patch-ops-error+xml`],[`xfdf`,`application/vnd.adobe.xfdf`],[`xfdl`,`application/vnd.xfdl`],[`xht`,`application/xhtml+xml`],[`xhtml`,`application/xhtml+xml`],[`xhvml`,`application/xv+xml`],[`xif`,`image/vnd.xiff`],[`xl`,`application/excel`],[`xla`,`application/vnd.ms-excel`],[`xlam`,`application/vnd.ms-excel.addin.macroEnabled.12`],[`xlc`,`application/vnd.ms-excel`],[`xlf`,`application/xliff+xml`],[`xlm`,`application/vnd.ms-excel`],[`xls`,`application/vnd.ms-excel`],[`xlsb`,`application/vnd.ms-excel.sheet.binary.macroEnabled.12`],[`xlsm`,`application/vnd.ms-excel.sheet.macroEnabled.12`],[`xlsx`,`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`],[`xlt`,`application/vnd.ms-excel`],[`xltm`,`application/vnd.ms-excel.template.macroEnabled.12`],[`xltx`,`application/vnd.openxmlformats-officedocument.spreadsheetml.template`],[`xlw`,`application/vnd.ms-excel`],[`xm`,`audio/xm`],[`xml`,`application/xml`],[`xns`,`application/xcap-ns+xml`],[`xo`,`application/vnd.olpc-sugar`],[`xop`,`application/xop+xml`],[`xpi`,`application/x-xpinstall`],[`xpl`,`application/xproc+xml`],[`xpm`,`image/x-xpixmap`],[`xpr`,`application/vnd.is-xpr`],[`xps`,`application/vnd.ms-xpsdocument`],[`xpw`,`application/vnd.intercon.formnet`],[`xpx`,`application/vnd.intercon.formnet`],[`xsd`,`application/xml`],[`xsl`,`application/xml`],[`xslt`,`application/xslt+xml`],[`xsm`,`application/vnd.syncml+xml`],[`xspf`,`application/xspf+xml`],[`xul`,`application/vnd.mozilla.xul+xml`],[`xvm`,`application/xv+xml`],[`xvml`,`application/xv+xml`],[`xwd`,`image/x-xwindowdump`],[`xyz`,`chemical/x-xyz`],[`xz`,`application/x-xz`],[`yaml`,`text/yaml`],[`yang`,`application/yang`],[`yin`,`application/yin+xml`],[`yml`,`text/yaml`],[`ymp`,`text/x-suse-ymp`],[`z`,`application/x-compress`],[`z1`,`application/x-zmachine`],[`z2`,`application/x-zmachine`],[`z3`,`application/x-zmachine`],[`z4`,`application/x-zmachine`],[`z5`,`application/x-zmachine`],[`z6`,`application/x-zmachine`],[`z7`,`application/x-zmachine`],[`z8`,`application/x-zmachine`],[`zaz`,`application/vnd.zzazz.deck+xml`],[`zip`,`application/zip`],[`zir`,`application/vnd.zul`],[`zirz`,`application/vnd.zul`],[`zmm`,`application/vnd.handheld-entertainment+xml`],[`zsh`,`text/x-scriptzsh`]]);function YK(e,t,n){let r=XK(e),{webkitRelativePath:i}=e,a=typeof t==`string`?t:typeof i==`string`&&i.length>0?i:`./${e.name}`;return typeof r.path!=`string`&&ZK(r,`path`,a),n!==void 0&&Object.defineProperty(r,`handle`,{value:n,writable:!1,configurable:!1,enumerable:!0}),ZK(r,`relativePath`,a),r}function XK(e){let{name:t}=e;if(t&&t.lastIndexOf(`.`)!==-1&&!e.type){let n=t.split(`.`).pop().toLowerCase(),r=JK.get(n);r&&Object.defineProperty(e,`type`,{value:r,writable:!1,configurable:!1,enumerable:!0})}return e}function ZK(e,t,n){Object.defineProperty(e,t,{value:n,writable:!1,configurable:!1,enumerable:!0})}var QK=[`.DS_Store`,`Thumbs.db`];function $K(e){return d(this,void 0,void 0,function*(){return nq(e)&&eq(e.dataTransfer)?aq(e.dataTransfer,e.type):tq(e)?rq(e):Array.isArray(e)&&e.every(e=>`getFile`in e&&typeof e.getFile==`function`)?iq(e):[]})}function eq(e){return nq(e)}function tq(e){return nq(e)&&nq(e.target)}function nq(e){return typeof e==`object`&&!!e}function rq(e){return sq(e.target.files).map(e=>YK(e))}function iq(e){return d(this,void 0,void 0,function*(){return(yield Promise.all(e.map(e=>e.getFile()))).map(e=>YK(e))})}function aq(e,t){return d(this,void 0,void 0,function*(){if(e.items){let n=sq(e.items).filter(e=>e.kind===`file`);return t===`drop`?oq(lq(yield Promise.all(n.map(cq)))):n}return oq(sq(e.files).map(e=>YK(e)))})}function oq(e){return e.filter(e=>QK.indexOf(e.name)===-1)}function sq(e){if(e===null)return[];let t=[];for(let n=0;n<e.length;n++){let r=e[n];t.push(r)}return t}function cq(e){if(typeof e.webkitGetAsEntry!=`function`)return uq(e);let t=e.webkitGetAsEntry();return t&&t.isDirectory?fq(t):uq(e,t)}function lq(e){return e.reduce((e,t)=>[...e,...Array.isArray(t)?lq(t):[t]],[])}function uq(e,t){return d(this,void 0,void 0,function*(){if(globalThis.isSecureContext&&typeof e.getAsFileSystemHandle==`function`){let t=yield e.getAsFileSystemHandle();if(t===null)throw Error(`${e} is not a File`);if(t!==void 0){let e=yield t.getFile();return e.handle=t,YK(e)}}let n=e.getAsFile();if(!n)throw Error(`${e} is not a File`);return YK(n,t?.fullPath??void 0)})}function dq(e){return d(this,void 0,void 0,function*(){return e.isDirectory?fq(e):pq(e)})}function fq(e){let t=e.createReader();return new Promise((e,n)=>{let r=[];function i(){t.readEntries(t=>d(this,void 0,void 0,function*(){if(t.length){let e=Promise.all(t.map(dq));r.push(e),i()}else try{e(yield Promise.all(r))}catch(e){n(e)}}),e=>{n(e)})}i()})}function pq(e){return d(this,void 0,void 0,function*(){return new Promise((t,n)=>{e.file(n=>{t(YK(n,e.fullPath))},e=>{n(e)})})})}var mq=c(o((e=>{e.__esModule=!0,e.default=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(`,`);if(n.length===0)return!0;var r=e.name||``,i=(e.type||``).toLowerCase(),a=i.replace(/\/.*$/,``);return n.some(function(e){var t=e.trim().toLowerCase();return t.charAt(0)===`.`?r.toLowerCase().endsWith(t):t.endsWith(`/*`)?a===t.replace(/\/.*$/,``):i===t})}return!0}}))());function hq(e){return vq(e)||_q(e)||wq(e)||gq()}function gq(){throw TypeError(`Invalid attempt to spread non-iterable instance.
|
|
223
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _q(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function vq(e){if(Array.isArray(e))return Tq(e)}function yq(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function bq(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?yq(Object(n),!0).forEach(function(t){xq(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):yq(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function xq(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sq(e,t){return Dq(e)||Eq(e,t)||wq(e,t)||Cq()}function Cq(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
224
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function wq(e,t){if(e){if(typeof e==`string`)return Tq(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Tq(e,t)}}function Tq(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Eq(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r=[],i=!0,a=!1,o,s;try{for(n=n.call(e);!(i=(o=n.next()).done)&&(r.push(o.value),!(t&&r.length===t));i=!0);}catch(e){a=!0,s=e}finally{try{!i&&n.return!=null&&n.return()}finally{if(a)throw s}}return r}}function Dq(e){if(Array.isArray(e))return e}var Oq=typeof mq.default==`function`?mq.default:mq.default.default,kq=`file-invalid-type`,Aq=`file-too-large`,jq=`file-too-small`,Mq=`too-many-files`,Nq=function(){var e=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:``).split(`,`);return{code:kq,message:`File type must be ${e.length>1?`one of ${e.join(`, `)}`:e[0]}`}},Pq=function(e){return{code:Aq,message:`File is larger than ${e} ${e===1?`byte`:`bytes`}`}},Fq=function(e){return{code:jq,message:`File is smaller than ${e} ${e===1?`byte`:`bytes`}`}},Iq={code:Mq,message:`Too many files`};function Lq(e){return e.type===``&&typeof e.getAsFile==`function`}function Rq(e,t){var n=e.type===`application/x-moz-file`||Oq(e,t)||Lq(e);return[n,n?null:Nq(t)]}function zq(e,t,n){if(Bq(e.size)){if(Bq(t)&&Bq(n)){if(e.size>n)return[!1,Pq(n)];if(e.size<t)return[!1,Fq(t)]}else if(Bq(t)&&e.size<t)return[!1,Fq(t)];else if(Bq(n)&&e.size>n)return[!1,Pq(n)]}return[!0,null]}function Bq(e){return e!=null}function Vq(e){var t=e.files,n=e.accept,r=e.minSize,i=e.maxSize,a=e.multiple,o=e.maxFiles,s=e.validator;return!a&&t.length>1||a&&o>=1&&t.length>o?!1:t.every(function(e){var t=Sq(Rq(e,n),1)[0],a=Sq(zq(e,r,i),1)[0],o=s?s(e):null;return t&&a&&!o})}function Hq(e){return typeof e.isPropagationStopped==`function`?e.isPropagationStopped():e.cancelBubble===void 0?!1:e.cancelBubble}function Uq(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,function(e){return e===`Files`||e===`application/x-moz-file`}):!!e.target&&!!e.target.files}function Wq(e){e.preventDefault()}function Gq(e){return e.indexOf(`MSIE`)!==-1||e.indexOf(`Trident/`)!==-1}function Kq(e){return e.indexOf(`Edge/`)!==-1}function qq(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.navigator.userAgent;return Gq(e)||Kq(e)}function Jq(){var e=[...arguments];return function(t){var n=[...arguments].slice(1);return e.some(function(e){return!Hq(t)&&e&&e.apply(void 0,[t].concat(n)),Hq(t)})}}function Yq(){return`showOpenFilePicker`in window}function Xq(e){return Bq(e)?[{description:`Files`,accept:Object.entries(e).filter(function(e){var t=Sq(e,2),n=t[0],r=t[1],i=!0;return eJ(n)||(console.warn(`Skipped "${n}" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.`),i=!1),(!Array.isArray(r)||!r.every(tJ))&&(console.warn(`Skipped "${n}" because an invalid file extension was provided.`),i=!1),i}).reduce(function(e,t){var n=Sq(t,2),r=n[0],i=n[1];return bq(bq({},e),{},xq({},r,i))},{})}]:e}function Zq(e){if(Bq(e))return Object.entries(e).reduce(function(e,t){var n=Sq(t,2),r=n[0],i=n[1];return[].concat(hq(e),[r],hq(i))},[]).filter(function(e){return eJ(e)||tJ(e)}).join(`,`)}function Qq(e){return e instanceof DOMException&&(e.name===`AbortError`||e.code===e.ABORT_ERR)}function $q(e){return e instanceof DOMException&&(e.name===`SecurityError`||e.code===e.SECURITY_ERR)}function eJ(e){return e===`audio/*`||e===`video/*`||e===`image/*`||e===`text/*`||e===`application/*`||/\w+\/[-+.\w]+/g.test(e)}function tJ(e){return/^.*\.[\w]+$/.test(e)}var nJ=c(Ab()),rJ=[`children`],iJ=[`open`],aJ=[`refKey`,`role`,`onKeyDown`,`onFocus`,`onBlur`,`onClick`,`onDragEnter`,`onDragOver`,`onDragLeave`,`onDrop`],oJ=[`refKey`,`onChange`,`onClick`];function sJ(e){return uJ(e)||lJ(e)||pJ(e)||cJ()}function cJ(){throw TypeError(`Invalid attempt to spread non-iterable instance.
|
|
225
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function lJ(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function uJ(e){if(Array.isArray(e))return mJ(e)}function dJ(e,t){return gJ(e)||hJ(e,t)||pJ(e,t)||fJ()}function fJ(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
226
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function pJ(e,t){if(e){if(typeof e==`string`)return mJ(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return mJ(e,t)}}function mJ(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function hJ(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r=[],i=!0,a=!1,o,s;try{for(n=n.call(e);!(i=(o=n.next()).done)&&(r.push(o.value),!(t&&r.length===t));i=!0);}catch(e){a=!0,s=e}finally{try{!i&&n.return!=null&&n.return()}finally{if(a)throw s}}return r}}function gJ(e){if(Array.isArray(e))return e}function _J(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function vJ(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?_J(Object(n),!0).forEach(function(t){yJ(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_J(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function yJ(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bJ(e,t){if(e==null)return{};var n=xJ(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function xJ(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}var SJ=(0,b.forwardRef)(function(e,t){var n=e.children,r=TJ(bJ(e,rJ)),i=r.open,a=bJ(r,iJ);return(0,b.useImperativeHandle)(t,function(){return{open:i}},[i]),b.createElement(b.Fragment,null,n(vJ(vJ({},a),{},{open:i})))});SJ.displayName=`Dropzone`;var CJ={disabled:!1,getFilesFromEvent:$K,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!1,autoFocus:!1};SJ.defaultProps=CJ,SJ.propTypes={children:nJ.default.func,accept:nJ.default.objectOf(nJ.default.arrayOf(nJ.default.string)),multiple:nJ.default.bool,preventDropOnDocument:nJ.default.bool,noClick:nJ.default.bool,noKeyboard:nJ.default.bool,noDrag:nJ.default.bool,noDragEventsBubbling:nJ.default.bool,minSize:nJ.default.number,maxSize:nJ.default.number,maxFiles:nJ.default.number,disabled:nJ.default.bool,getFilesFromEvent:nJ.default.func,onFileDialogCancel:nJ.default.func,onFileDialogOpen:nJ.default.func,useFsAccessApi:nJ.default.bool,autoFocus:nJ.default.bool,onDragEnter:nJ.default.func,onDragLeave:nJ.default.func,onDragOver:nJ.default.func,onDrop:nJ.default.func,onDropAccepted:nJ.default.func,onDropRejected:nJ.default.func,onError:nJ.default.func,validator:nJ.default.func};var wJ={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,isDragGlobal:!1,acceptedFiles:[],fileRejections:[]};function TJ(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=vJ(vJ({},CJ),e),n=t.accept,r=t.disabled,i=t.getFilesFromEvent,a=t.maxSize,o=t.minSize,s=t.multiple,c=t.maxFiles,l=t.onDragEnter,u=t.onDragLeave,d=t.onDragOver,f=t.onDrop,p=t.onDropAccepted,m=t.onDropRejected,h=t.onFileDialogCancel,g=t.onFileDialogOpen,_=t.useFsAccessApi,v=t.autoFocus,y=t.preventDropOnDocument,x=t.noClick,S=t.noKeyboard,C=t.noDrag,w=t.noDragEventsBubbling,T=t.onError,E=t.validator,D=(0,b.useMemo)(function(){return Zq(n)},[n]),O=(0,b.useMemo)(function(){return Xq(n)},[n]),k=(0,b.useMemo)(function(){return typeof g==`function`?g:DJ},[g]),A=(0,b.useMemo)(function(){return typeof h==`function`?h:DJ},[h]),j=(0,b.useRef)(null),M=(0,b.useRef)(null),N=dJ((0,b.useReducer)(EJ,wJ),2),P=N[0],F=N[1],ee=P.isFocused,te=P.isFileDialogActive,ne=(0,b.useRef)(typeof window<`u`&&window.isSecureContext&&_&&Yq()),re=function(){!ne.current&&te&&setTimeout(function(){M.current&&(M.current.files.length||(F({type:`closeDialog`}),A()))},300)};(0,b.useEffect)(function(){return window.addEventListener(`focus`,re,!1),function(){window.removeEventListener(`focus`,re,!1)}},[M,te,A,ne]);var ie=(0,b.useRef)([]),ae=(0,b.useRef)([]),oe=function(e){j.current&&j.current.contains(e.target)||(e.preventDefault(),ie.current=[])};(0,b.useEffect)(function(){return y&&(document.addEventListener(`dragover`,Wq,!1),document.addEventListener(`drop`,oe,!1)),function(){y&&(document.removeEventListener(`dragover`,Wq),document.removeEventListener(`drop`,oe))}},[j,y]),(0,b.useEffect)(function(){var e=function(e){ae.current=[].concat(sJ(ae.current),[e.target]),Uq(e)&&F({isDragGlobal:!0,type:`setDragGlobal`})},t=function(e){ae.current=ae.current.filter(function(t){return t!==e.target&&t!==null}),!(ae.current.length>0)&&F({isDragGlobal:!1,type:`setDragGlobal`})},n=function(){ae.current=[],F({isDragGlobal:!1,type:`setDragGlobal`})},r=function(){ae.current=[],F({isDragGlobal:!1,type:`setDragGlobal`})};return document.addEventListener(`dragenter`,e,!1),document.addEventListener(`dragleave`,t,!1),document.addEventListener(`dragend`,n,!1),document.addEventListener(`drop`,r,!1),function(){document.removeEventListener(`dragenter`,e),document.removeEventListener(`dragleave`,t),document.removeEventListener(`dragend`,n),document.removeEventListener(`drop`,r)}},[j]),(0,b.useEffect)(function(){return!r&&v&&j.current&&j.current.focus(),function(){}},[j,v,r]);var se=(0,b.useCallback)(function(e){T?T(e):console.error(e)},[T]),ce=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e),ie.current=[].concat(sJ(ie.current),[e.target]),Uq(e)&&Promise.resolve(i(e)).then(function(t){if(!(Hq(e)&&!w)){var n=t.length,r=n>0&&Vq({files:t,accept:D,minSize:o,maxSize:a,multiple:s,maxFiles:c,validator:E});F({isDragAccept:r,isDragReject:n>0&&!r,isDragActive:!0,type:`setDraggedFiles`}),l&&l(e)}}).catch(function(e){return se(e)})},[i,l,se,w,D,o,a,s,c,E]),le=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e);var t=Uq(e);if(t&&e.dataTransfer)try{e.dataTransfer.dropEffect=`copy`}catch{}return t&&d&&d(e),!1},[d,w]),ue=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e);var t=ie.current.filter(function(e){return j.current&&j.current.contains(e)}),n=t.indexOf(e.target);n!==-1&&t.splice(n,1),ie.current=t,!(t.length>0)&&(F({type:`setDraggedFiles`,isDragActive:!1,isDragAccept:!1,isDragReject:!1}),Uq(e)&&u&&u(e))},[j,u,w]),de=(0,b.useCallback)(function(e,t){var n=[],r=[];e.forEach(function(e){var t=dJ(Rq(e,D),2),i=t[0],s=t[1],c=dJ(zq(e,o,a),2),l=c[0],u=c[1],d=E?E(e):null;if(i&&l&&!d)n.push(e);else{var f=[s,u];d&&(f=f.concat(d)),r.push({file:e,errors:f.filter(function(e){return e})})}}),(!s&&n.length>1||s&&c>=1&&n.length>c)&&(n.forEach(function(e){r.push({file:e,errors:[Iq]})}),n.splice(0)),F({acceptedFiles:n,fileRejections:r,type:`setFiles`}),f&&f(n,r,t),r.length>0&&m&&m(r,t),n.length>0&&p&&p(n,t)},[F,s,D,o,a,c,f,p,m,E]),fe=(0,b.useCallback)(function(e){e.preventDefault(),e.persist(),xe(e),ie.current=[],Uq(e)&&Promise.resolve(i(e)).then(function(t){Hq(e)&&!w||de(t,e)}).catch(function(e){return se(e)}),F({type:`reset`})},[i,de,se,w]),pe=(0,b.useCallback)(function(){if(ne.current){F({type:`openDialog`}),k();var e={multiple:s,types:O};window.showOpenFilePicker(e).then(function(e){return i(e)}).then(function(e){de(e,null),F({type:`closeDialog`})}).catch(function(e){Qq(e)?(A(e),F({type:`closeDialog`})):$q(e)?(ne.current=!1,M.current?(M.current.value=null,M.current.click()):se(Error(`Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided.`))):se(e)});return}M.current&&(F({type:`openDialog`}),k(),M.current.value=null,M.current.click())},[F,k,A,_,de,se,O,s]),me=(0,b.useCallback)(function(e){!j.current||!j.current.isEqualNode(e.target)||(e.key===` `||e.key===`Enter`||e.keyCode===32||e.keyCode===13)&&(e.preventDefault(),pe())},[j,pe]),he=(0,b.useCallback)(function(){F({type:`focus`})},[]),ge=(0,b.useCallback)(function(){F({type:`blur`})},[]),_e=(0,b.useCallback)(function(){x||(qq()?setTimeout(pe,0):pe())},[x,pe]),ve=function(e){return r?null:e},ye=function(e){return S?null:ve(e)},be=function(e){return C?null:ve(e)},xe=function(e){w&&e.stopPropagation()},Se=(0,b.useMemo)(function(){return function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.refKey,n=t===void 0?`ref`:t,i=e.role,a=e.onKeyDown,o=e.onFocus,s=e.onBlur,c=e.onClick,l=e.onDragEnter,u=e.onDragOver,d=e.onDragLeave,f=e.onDrop,p=bJ(e,aJ);return vJ(vJ(yJ({onKeyDown:ye(Jq(a,me)),onFocus:ye(Jq(o,he)),onBlur:ye(Jq(s,ge)),onClick:ve(Jq(c,_e)),onDragEnter:be(Jq(l,ce)),onDragOver:be(Jq(u,le)),onDragLeave:be(Jq(d,ue)),onDrop:be(Jq(f,fe)),role:typeof i==`string`&&i!==``?i:`presentation`},n,j),!r&&!S?{tabIndex:0}:{}),p)}},[j,me,he,ge,_e,ce,le,ue,fe,S,C,r]),Ce=(0,b.useCallback)(function(e){e.stopPropagation()},[]),we=(0,b.useMemo)(function(){return function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.refKey,n=t===void 0?`ref`:t,r=e.onChange,i=e.onClick,a=bJ(e,oJ);return vJ(vJ({},yJ({accept:D,multiple:s,type:`file`,style:{border:0,clip:`rect(0, 0, 0, 0)`,clipPath:`inset(50%)`,height:`1px`,margin:`0 -1px -1px 0`,overflow:`hidden`,padding:0,position:`absolute`,width:`1px`,whiteSpace:`nowrap`},onChange:ve(Jq(r,fe)),onClick:ve(Jq(i,Ce)),tabIndex:-1},n,M)),a)}},[M,n,s,fe,r]);return vJ(vJ({},P),{},{isFocused:ee&&!r,getRootProps:Se,getInputProps:we,rootRef:j,inputRef:M,open:ve(pe)})}function EJ(e,t){switch(t.type){case`focus`:return vJ(vJ({},e),{},{isFocused:!0});case`blur`:return vJ(vJ({},e),{},{isFocused:!1});case`openDialog`:return vJ(vJ({},wJ),{},{isFileDialogActive:!0});case`closeDialog`:return vJ(vJ({},e),{},{isFileDialogActive:!1});case`setDraggedFiles`:return vJ(vJ({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case`setFiles`:return vJ(vJ({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections,isDragReject:!1});case`setDragGlobal`:return vJ(vJ({},e),{},{isDragGlobal:t.isDragGlobal});case`reset`:return vJ({},wJ);default:return e}}function DJ(){}var[OJ,kJ]=$e(`Dropzone component was not found in tree`),AJ={root:`m_d46a4834`,inner:`m_b85f7144`,fullScreen:`m_96f6e9ad`,dropzone:`m_7946116d`};function jJ(e){let t=t=>{let{children:n,...r}=z(`Dropzone${Tt(e)}`,{},t),i=kJ(),a=Ze(n)?n:(0,L.jsx)(`span`,{children:n});return i[e]?(0,b.cloneElement)(a,r):null};return t.displayName=`@mantine/dropzone/${Tt(e)}`,t}var MJ=jJ(`accept`),NJ=jJ(`reject`),PJ=jJ(`idle`),FJ={multiple:!0,maxSize:1/0,activateOnClick:!0,activateOnDrag:!0,dragEventsBubbling:!0,activateOnKeyboard:!0,useFsAccessApi:!0,variant:`light`,rejectColor:`red`},IJ=kn((e,{radius:t,variant:n,acceptColor:r,rejectColor:i})=>{let a=e.variantColorResolver({color:r||e.primaryColor,theme:e,variant:n}),o=e.variantColorResolver({color:i||`red`,theme:e,variant:n});return{root:{"--dropzone-radius":pt(t),"--dropzone-accept-color":a.color,"--dropzone-accept-bg":a.background,"--dropzone-reject-color":o.color,"--dropzone-reject-bg":o.background}}}),LJ=V((e,t)=>{let n=z(`Dropzone`,FJ,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,radius:l,disabled:u,loading:d,multiple:f,maxSize:p,accept:m,children:h,onDropAny:g,onDrop:_,onReject:v,openRef:y,name:b,maxFiles:x,autoFocus:S,activateOnClick:C,activateOnDrag:w,dragEventsBubbling:T,activateOnKeyboard:E,onDragEnter:D,onDragLeave:O,onDragOver:k,onFileDialogCancel:A,onFileDialogOpen:j,preventDropOnDocument:M,useFsAccessApi:N,getFilesFromEvent:P,validator:F,rejectColor:ee,acceptColor:te,enablePointerEvents:ne,loaderProps:re,inputProps:ie,mod:ae,attributes:oe,...se}=n,ce=R({name:`Dropzone`,classes:AJ,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:oe,vars:c,varsResolver:IJ}),{getRootProps:le,getInputProps:ue,isDragAccept:de,isDragReject:fe,isDragActive:pe,open:me}=TJ({onDrop:g,onDropAccepted:_,onDropRejected:v,disabled:u||d,accept:Array.isArray(m)?m.reduce((e,t)=>({...e,[t]:[]}),{}):m,multiple:f,maxSize:p,maxFiles:x,autoFocus:S,noClick:!C,noDrag:!w,noDragEventsBubbling:!T,noKeyboard:!E,onDragEnter:D,onDragLeave:O,onDragOver:k,onFileDialogCancel:A,onFileDialogOpen:j,preventDropOnDocument:M,useFsAccessApi:N,validator:F,...P?{getFilesFromEvent:P}:null});en(y,me);let he=pe&&de,ge=pe&&fe,_e=!he&&!ge;return(0,L.jsx)(OJ,{value:{accept:he,reject:ge,idle:_e},children:(0,L.jsxs)(B,{...le(),...ce(`root`,{focusable:!0}),...se,mod:[{accept:he,reject:ge,idle:_e,disabled:u,loading:d,"activate-on-click":C},ae],children:[(0,L.jsx)(Sh,{visible:d,overlayProps:{radius:l},unstyled:s,loaderProps:re}),(0,L.jsx)(`input`,{...ue(ie),name:b}),(0,L.jsx)(`div`,{...ce(`inner`),ref:t,"data-enable-pointer-events":ne||void 0,children:h})]})})});LJ.classes=AJ,LJ.displayName=`@mantine/dropzone/Dropzone`,LJ.Accept=MJ,LJ.Idle=PJ,LJ.Reject=NJ;var RJ={maxSize:1/0,activateOnDrag:!0,dragEventsBubbling:!0,activateOnKeyboard:!0,active:!0,zIndex:ct(`max`),withinPortal:!0},zJ=V((e,t)=>{let n=z(`DropzoneFullScreen`,RJ,e),{classNames:r,className:i,style:a,styles:o,unstyled:s,vars:c,active:l,onDrop:u,onReject:d,zIndex:f,withinPortal:p,portalProps:m,attributes:h,...g}=n,_=R({name:`DropzoneFullScreen`,classes:AJ,props:n,className:i,style:a,classNames:r,styles:o,unstyled:s,attributes:h,rootSelector:`fullScreen`}),{resolvedClassNames:v,resolvedStyles:y}=Hr({classNames:r,styles:o,props:n}),[x,S]=(0,b.useState)(0),[C,{open:w,close:T}]=yn(!1),E=e=>{e.dataTransfer?.types.includes(`Files`)&&(S(e=>e+1),w())},D=()=>{S(e=>e-1)};return(0,b.useEffect)(()=>{x===0&&T()},[x]),(0,b.useEffect)(()=>{if(l)return document.addEventListener(`dragenter`,E,!1),document.addEventListener(`dragleave`,D,!1),()=>{document.removeEventListener(`dragenter`,E,!1),document.removeEventListener(`dragleave`,D,!1)}},[l]),(0,L.jsx)(Nl,{...m,withinPortal:p,children:(0,L.jsx)(B,{ref:t,..._(`fullScreen`,{style:{opacity:C?1:0,pointerEvents:C?`all`:`none`,zIndex:f}}),children:(0,L.jsx)(LJ,{activateOnClick:!1,...g,classNames:v,styles:y,unstyled:s,className:AJ.dropzone,onDrop:e=>{u?.(e),T(),S(0)},onReject:e=>{d?.(e),T(),S(0)}})})})});zJ.classes=AJ,zJ.displayName=`@mantine/dropzone/DropzoneFullScreen`,LJ.FullScreen=zJ;var BJ=LJ,VJ=`{"resourceType": "Bundle"}`;function HJ({id:e,title:t,message:n,color:r,icon:i,withCloseButton:a=!1,method:o=`show`,loading:s}){Tb[o]({id:e,loading:s,title:t,message:n,color:r,icon:i,withCloseButton:a,autoClose:!1})}function UJ(){let e=xr(),t=Q(),[n,r]=(0,b.useState)({}),i=(0,b.useCallback)(async(e,n)=>{let i=`batch-upload`;HJ({id:i,title:`Batch Upload in Progress`,message:`Your batch data is being uploaded. This may take a moment...`,method:`show`,loading:!0});try{r({});let a=JSON.parse(e);a.type!==`batch`&&a.type!==`transaction`&&(a=kE(a));let o=await t.executeBatch(a);r(e=>({...e,[n]:o})),HJ({id:i,title:`Batch Upload Successful`,message:`Your batch data was successfully uploaded.`,color:`green`,method:`update`,icon:(0,L.jsx)(sA,{size:`1rem`}),withCloseButton:!0})}catch(e){HJ({id:i,title:`Batch Upload Failed`,color:`red`,message:Lx(e),method:`update`,icon:(0,L.jsx)(dj,{size:`1rem`}),withCloseButton:!0})}},[t]),a=(0,b.useCallback)(async e=>{for(let t of e){let e=new FileReader;e.onload=e=>i(e.target?.result,t.name),e.readAsText(t)}},[i]),o=(0,b.useCallback)(async e=>{await i(e.input,`JSON Data`)},[i]);return(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Batch Create`}),(0,L.jsxs)(U,{children:[`Use this page to create, read, or update multiple resources. For more details, see`,` `,(0,L.jsx)(Nd,{href:`https://www.hl7.org/fhir/http.html#transaction`,children:`FHIR Batch and Transaction`}),`.`]}),Object.keys(n).length===0&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`h3`,{children:`Input`}),(0,L.jsxs)(ib,{defaultValue:`upload`,children:[(0,L.jsxs)(ib.List,{children:[(0,L.jsx)(ib.Tab,{value:`upload`,children:`File Upload`}),(0,L.jsx)(ib.Tab,{value:`json`,children:`JSON`})]}),(0,L.jsx)(ib.Panel,{value:`upload`,pt:`xs`,children:(0,L.jsx)(BJ,{onDrop:a,accept:[`application/json`],children:(0,L.jsxs)(H,{justify:`center`,gap:`xl`,style:{minHeight:220,pointerEvents:`none`},children:[(0,L.jsx)(BJ.Accept,{children:(0,L.jsx)(cj,{size:50,stroke:1.5,color:e.colors[e.primaryColor][5]})}),(0,L.jsx)(BJ.Reject,{children:(0,L.jsx)(dj,{size:50,stroke:1.5,color:e.colors.red[5]})}),(0,L.jsx)(BJ.Idle,{children:(0,L.jsx)(cj,{size:50,stroke:1.5})}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(U,{size:`xl`,inline:!0,children:`Drag files here or click to select files`}),(0,L.jsx)(U,{size:`sm`,color:`dimmed`,inline:!0,mt:7,children:`Attach as many files as you like`})]})]})})}),(0,L.jsx)(ib.Panel,{value:`json`,pt:`xs`,children:(0,L.jsxs)(GM,{onSubmit:o,children:[(0,L.jsx)(ch,{"data-testid":`batch-input`,name:`input`,autosize:!0,minRows:20,defaultValue:VJ,deserialize:JSON.parse}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`Submit`})})]})})]})]}),Object.keys(n).length>0&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`h3`,{children:`Output`}),(0,L.jsxs)(ib,{defaultValue:Object.keys(n)[0],children:[(0,L.jsx)(ib.List,{children:Object.keys(n).map(e=>(0,L.jsx)(ib.Tab,{value:e,children:e},e))}),Object.keys(n).map(e=>(0,L.jsx)(ib.Panel,{value:e,children:(0,L.jsx)(`pre`,{style:{border:`1px solid #888`},children:JSON.stringify(n[e],void 0,2)})},e))]}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{onClick:()=>r({}),children:`Start over`})})]})]})}function WJ(){let{resourceType:e}=BU(),t=(Object.fromEntries(new URLSearchParams(location.search).entries()).ids||``).split(`,`).filter(e=>!!e),[n]=jk(`Questionnaire`,`subject-type=${e}`);return n?n.length===0?(0,L.jsxs)(zN,{children:[(0,L.jsxs)(J,{children:[`No apps for `,e]}),(0,L.jsx)(Sj,{to:`/${e}`,children:`Return to search page`})]}):(0,L.jsx)(zN,{children:(0,L.jsx)(`div`,{children:n.map(n=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`h3`,{children:(0,L.jsx)(Sj,{to:`/forms/${n.id}?subject=`+t.map(t=>`${e}/${t}`).join(`,`),children:n.name})}),(0,L.jsx)(`p`,{children:n.description})]},n.id))})}):(0,L.jsx)(mj,{})}function GJ(){return(0,L.jsx)(GN,{})}var KJ=[`Form`,`JSON`,`Profiles`];function qJ(){let{resourceType:e}=BU();return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{children:[(0,L.jsxs)(U,{p:`md`,fw:500,children:[`New\xA0`,e]}),(0,L.jsx)(ll,{children:(0,L.jsx)(BR,{baseUrl:`/${e}/new`,tabs:KJ})})]}),(0,L.jsx)(SW,{})]})}function JJ(){return(0,L.jsx)(zN,{children:(0,L.jsxs)(K,{children:[(0,L.jsx)(J,{order:1,children:`Unexpected Error`}),(0,L.jsx)(U,{children:`We're sorry, something went wrong.`}),(0,L.jsxs)(U,{children:[`Please contact `,(0,L.jsx)(Nd,{href:`mailto:support@medplum.com`,children:`support`}),` for assistance.`]})]})})}function YJ(e){let t=BO(e.resource);if(!t)return null;let n=[{key:`Type`,value:(0,L.jsx)(Sj,{to:`/${t.resourceType}`,children:t.resourceType})}];function r(e,t){e&&t&&n.push({key:e,value:t})}function i(e){e&&r(e.system,e.value)}function a(e,t){Array.isArray(t)?t.forEach(t=>a(e,t)):typeof t==`string`?r(e,t):t&&(Array.isArray(t.coding)?r(e,t.coding.map(e=>e.display||e.code).join(`, `)):r(e,t.text))}if(`name`in t){let e=YS(t);e!==GS(t)&&r(`Name`,e)}return`category`in t&&a(`Category`,t.category),t.resourceType!==`Bot`&&`code`in t&&a(`Code`,t.code),`identifier`in t&&(Array.isArray(t.identifier)?t.identifier.forEach(i):i(t.identifier)),n.length===1&&n.push({key:`ID`,value:t.id}),(0,L.jsx)(RR,{children:n.map((e,t)=>(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:e.key}),(0,L.jsx)(RR.Value,{children:e.value})]},`${e.key}-${t}`))})}function XJ(){let{id:e}=BU(),t=NU(),n=Object.fromEntries(new URLSearchParams(t.search).entries()).subject,r=Q(),[i,a]=(0,b.useState)(!0),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)(),[f,p]=(0,b.useState)(),[m,h]=(0,b.useState)();if((0,b.useEffect)(()=>{let t={resourceType:`Bundle`,type:`batch`,entry:[{request:{method:`GET`,url:`Questionnaire/${e}`}}]};if(n){let e=n.split(`,`).filter(e=>!!e);e.length===1&&t.entry.push({request:{method:`GET`,url:e[0]}}),l(e)}r.executeBatch(t).then(e=>{e.entry?.[0]?.response?.status===`200`?(s(e.entry[0]?.resource),d(e.entry[1]?.resource)):p(e.entry?.[0]?.response?.outcome),a(!1)}).catch(e=>{p(e),a(!1)})},[r,e,n]),f)return(0,L.jsx)(zN,{children:(0,L.jsx)(`pre`,{"data-testid":`error`,children:JSON.stringify(f,void 0,2)})});if(m)return(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:o?.title}),(0,L.jsx)(`p`,{children:`Your response has been recorded.`}),(0,L.jsxs)(`ul`,{children:[m.length===1&&(0,L.jsx)(`li`,{children:(0,L.jsx)(Sj,{to:m[0],children:`Review your answers`})}),m.length>1&&(0,L.jsxs)(`li`,{children:[`Review your answers:`,(0,L.jsx)(`ul`,{children:m.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsx)(Sj,{to:e,children:GS(e)})},e.id))})]}),u&&(0,L.jsx)(`li`,{children:(0,L.jsxs)(Sj,{to:u,children:[`Back to\xA0`,YS(u)]})}),(0,L.jsx)(`li`,{children:(0,L.jsx)(Sj,{to:`/`,children:`Go back home`})})]})]});if(i||!o)return(0,L.jsx)(mj,{});let g=u&&RG(u);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(vl,{shadow:`xs`,radius:0,children:[g&&(0,L.jsx)(sz,{patient:g}),u&&u.resourceType!==`Patient`&&(0,L.jsx)(YJ,{resource:u}),(0,L.jsx)(B,{px:`xl`,py:`md`,children:(0,L.jsxs)(U,{children:[YS(o),c&&c.length>1&&(0,L.jsxs)(L.Fragment,{children:[`\xA0(for `,c.length,` resources)`]})]})})]}),(0,L.jsx)(zN,{children:(0,L.jsx)(DI,{questionnaire:o,subject:u&&WS(u),onSubmit:_})})]});async function _(e){let t=[];if(!c||c.length===0)t.push(await r.createResource(e));else for(let n of c)t.push(await r.createResource({...e,subject:{reference:n}}));h(t)}}var ZJ={paper:`_paper_unw9o_1`},QJ={Bot:`/admin/bots/new`,ClientApplication:`/admin/clients/new`};function $J(e,t){let n=e.resourceType||eY(t),r=e.fields??tY(n),i=e.filters??(e.resourceType?void 0:nY(n)),a=e.sortRules??rY(n),o=e.offset??0,s=e.count??20;return{...e,resourceType:n,fields:r,filters:i,sortRules:a,offset:o,count:s}}function eY(e){return localStorage.getItem(`defaultResourceType`)??e?.option?.find(e=>e.id===`defaultResourceType`)?.valueString??`Patient`}function tY(e){let t=iY(e);if(t?.fields)return t.fields;let n=[`id`,`_lastUpdated`];switch(e){case`Patient`:n.push(`name`,`birthDate`,`gender`);break;case`AsyncJob`:n.push(`status`,`dataVersion`);break;case`AccessPolicy`:case`Bot`:case`ClientApplication`:case`Practitioner`:case`Project`:case`Organization`:case`Questionnaire`:case`UserConfiguration`:n.push(`name`);break;case`CodeSystem`:case`ValueSet`:n.push(`name`,`title`,`status`);break;case`Condition`:n.push(`subject`,`code`,`clinicalStatus`);break;case`Device`:n.push(`manufacturer`,`deviceName`,`patient`);break;case`DeviceDefinition`:n.push(`manufacturer[x]`,`deviceName`);break;case`DeviceRequest`:n.push(`code[x]`,`subject`);break;case`DiagnosticReport`:case`Observation`:n.push(`subject`,`code`,`status`);break;case`Encounter`:n.push(`subject`);break;case`ServiceRequest`:n.push(`subject`,`code`,`status`,`orderDetail`);break;case`Subscription`:n.push(`criteria`);break;case`User`:n.push(`email`);break}return n}function nY(e){return iY(e)?.filters}function rY(e){let t=iY(e);return t?.sortRules?t.sortRules:[{code:`_lastUpdated`,descending:!0}]}function iY(e){let t=localStorage.getItem(e+`-defaultSearch`);return t?JSON.parse(t):void 0}function aY(e){localStorage.setItem(`defaultResourceType`,e.resourceType),localStorage.setItem(e.resourceType+`-defaultSearch`,JSON.stringify(e))}async function oY(e,t){let n=$J({...e,count:1e3,offset:0},t.getUserConfiguration());return kE(await t.search(n.resourceType,qT({...n,total:`accurate`,fields:void 0})))}function sY(){let e=Q(),t=IU(),n=NU(),[r,i]=(0,b.useState)();return(0,b.useEffect)(()=>{let r=$J(IT(n.pathname+n.search),e.getUserConfiguration());n.pathname===`/${r.resourceType}`&&n.search===qT(r)?(aY(r),i(r)):t(`/${r.resourceType}${qT(r)}`)?.catch(console.error)},[e,t,n]),!r?.resourceType||!r.fields||r.fields.length===0?(0,L.jsx)(mj,{}):(0,L.jsx)(vl,{shadow:`xs`,m:`md`,p:`xs`,className:ZJ.paper,children:(0,L.jsx)(OR,{checkboxesEnabled:!0,search:r,onClick:e=>t(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onAuxClick:e=>window.open(`/${e.resource.resourceType}/${e.resource.id}`,`_blank`),onChange:e=>{t(`/${r.resourceType}${qT(e.definition)}`)?.catch(console.error)},onNew:()=>{t(QJ[r.resourceType]??`/${r.resourceType}/new`)?.catch(console.error)},onExportCsv:()=>{let t=e.fhirUrl(r.resourceType,`$csv`)+qT(r);e.download(t).then(e=>{window.open(window.URL.createObjectURL(e),`_blank`)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},onExportTransactionBundle:async()=>{oY(r,e).then(e=>xj(JSON.stringify(e,void 0,2))).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},onDelete:t=>{window.confirm(`Are you sure you want to delete these resources?`)&&(e.invalidateSearches(r.resourceType),e.executeBatch({resourceType:`Bundle`,type:`batch`,entry:t.map(e=>({request:{method:`DELETE`,url:`${r.resourceType}/${e}`}}))}).then(()=>i({...r})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1})))},onBulk:e=>{t(`/bulk/${r.resourceType}?ids=${e.join(`,`)}`)?.catch(console.error)}})})}function cY(){let[e]=jk(`ObservationDefinition`,`_count=100`);return e?(0,L.jsxs)(q,{withTableBorder:!0,withRowBorders:!0,withColumnBorders:!0,children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Category`}),(0,L.jsx)(`th`,{children:`Code`}),(0,L.jsx)(`th`,{children:`Method`}),(0,L.jsx)(`th`,{children:`Unit`}),(0,L.jsx)(`th`,{children:`Precision`}),(0,L.jsx)(`th`,{children:`Ranges`})]})}),(0,L.jsx)(`tbody`,{children:e.map(e=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(wP,{value:e.category?.[0]})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(wP,{value:e.code})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(wP,{value:e.method})}),(0,L.jsx)(`td`,{children:e.quantitativeDetails?.unit?.text}),(0,L.jsx)(`td`,{children:e.quantitativeDetails?.decimalPrecision}),(0,L.jsx)(`td`,{children:(0,L.jsx)(lY,{ranges:e.qualifiedInterval})})]},e.id))})]}):(0,L.jsx)(mj,{})}function lY(e){let{ranges:t}=e;if(!t)return null;let n=uY(t.map(e=>e.gender));if(n.length>1)return IC(n),(0,L.jsx)(L.Fragment,{children:n.map(t=>(0,L.jsxs)(b.Fragment,{children:[(0,L.jsx)(`div`,{children:(0,L.jsx)(`strong`,{children:DC(t)})}),(0,L.jsx)(lY,{ranges:e.ranges?.filter(e=>e.gender===t)})]},t))});let r=uY(t.map(e=>e.age&&iw(e.age)));return r.length>1?(IC(r),(0,L.jsx)(L.Fragment,{children:r.map(t=>(0,L.jsxs)(b.Fragment,{children:[(0,L.jsx)(`div`,{children:(0,L.jsx)(`strong`,{children:DC(t)})}),(0,L.jsx)(lY,{ranges:e.ranges?.filter(e=>iw(e.age)===t)})]},t))})):(0,L.jsx)(L.Fragment,{children:t.map(e=>(0,L.jsx)(`table`,{children:(0,L.jsx)(`tbody`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:e.condition}),(0,L.jsx)(`td`,{children:(0,L.jsx)(PP,{value:e.range})})]})})},`range-${e.condition}`))})}function uY(e){return[...new Set(e.filter(e=>!!e))]}function dY(){let[e]=jk(`ActivityDefinition`,`_count=100`),[t]=jk(`ObservationDefinition`,`_count=100`);return!e||!t?(0,L.jsx)(mj,{}):(0,L.jsxs)(q,{withTableBorder:!0,withRowBorders:!0,withColumnBorders:!0,children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`Category`}),(0,L.jsx)(`th`,{children:`Assay`}),e.map(e=>(0,L.jsx)(`th`,{children:e.name},e.id))]})}),(0,L.jsx)(`tbody`,{children:t.map(t=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:(0,L.jsx)(wP,{value:t.category?.[0]})}),(0,L.jsx)(`td`,{children:(0,L.jsx)(wP,{value:t.code})}),e.map(e=>(0,L.jsx)(`td`,{children:e.observationResultRequirement?.find(e=>e.reference?.includes(t.id))?`✅`:``},e.id))]},t.id))})]})}function fY(){let e=Q(),[t,n]=(0,b.useState)(),[r,i]=(0,b.useState)(void 0),[a,o]=(0,b.useState)(!1),s=(0,b.useCallback)(()=>{e.get(`auth/mfa/status`,{cache:`no-cache`}).then(e=>{n(e.enrollQrCode),i(e.enrolled)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[e]);(0,b.useEffect)(()=>{s()},[s]);let c=(0,b.useCallback)(t=>{e.post(`auth/mfa/enroll`,t).then(()=>{i(!0),Y({color:`green`,message:`Success`})}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[e]),l=(0,b.useCallback)(async t=>e.post(`auth/mfa/disable`,{token:t.token}),[e]);return r===void 0?null:r?(0,L.jsxs)(zN,{children:[(0,L.jsx)(ng,{title:`Disable MFA`,opened:a,onClose:()=>o(!1),children:(0,L.jsx)(KN,{title:`Disable MFA`,buttonText:`Submit code`,onSubmit:async e=>{await l(e),o(!1),i(!1),Y({id:`mfa-disabled`,color:`green`,title:`Success`,message:`MFA disabled`,icon:(0,L.jsx)(uA,{})}),s()}})}),(0,L.jsxs)(H,{children:[(0,L.jsx)(J,{children:`MFA is enabled`}),(0,L.jsx)(W,{onClick:()=>o(!0),children:`Disable MFA`})]})]}):(0,L.jsx)(zN,{width:400,children:(0,L.jsx)(KN,{title:`Multi Factor Auth Setup`,buttonText:`Enroll`,qrCodeUrl:t,onSubmit:c})})}var pY={baseUrl:`__MEDPLUM_BASE_URL__`,clientId:`__MEDPLUM_CLIENT_ID__`,googleClientId:`__GOOGLE_CLIENT_ID__`,recaptchaSiteKey:`__RECAPTCHA_SITE_KEY__`,registerEnabled:`__MEDPLUM_REGISTER_ENABLED__`,awsTextractEnabled:void 0};function mY(){return pY}function hY(){return _Y(`registerEnabled`)}function gY(){return _Y(`awsTextractEnabled`)}function _Y(e){try{return pY[e]!==!1&&pY[e]!==`false`}catch{return!0}}function vY(){let e=IU(),[t]=EG(),n=Q(),r=t.get(`scope`)||`openid`,[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(!0),c=t.get(`client_id`),l=t.get(`login`);if((0,b.useEffect)(()=>{if(!c||c===`medplum-cli`)return;async function e(){try{a(await n.get(`/auth/clientinfo/${c}`))}catch(e){Y({id:`clientinfofail`,title:`Failed to retrieve client information.`,color:`red`,message:Lx(e),withCloseButton:!0})}finally{s(!1)}}e().catch(console.error)},[n,c]),!c)return null;function u(e){let n=new URL(t.get(`redirect_uri`));for(let e of[`scope`,`state`,`nonce`])t.has(e)&&n.searchParams.set(e,t.get(e));n.searchParams.set(`code`,e),SE.assign(n.toString())}return(0,L.jsx)(CP,{onCode:u,onForgotPassword:()=>e(`/resetpassword`)?.catch(console.error),onRegister:()=>e(`/register`)?.catch(console.error),googleClientId:mY().googleClientId,clientId:c||void 0,redirectUri:t.get(`redirect_uri`)||void 0,scope:r,nonce:t.get(`nonce`)||void 0,launch:t.get(`launch`)||void 0,codeChallenge:t.get(`code_challenge`)||void 0,codeChallengeMethod:t.get(`code_challenge_method`)||void 0,chooseScopes:r!==`openid`,login:l||void 0,children:!o&&(0,L.jsxs)(L.Fragment,{children:[i?.logo?.url?(0,L.jsx)(`img`,{src:i?.logo?.url,alt:`Welcome Logo`,height:60,style:{width:`auto`}}):(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{children:i?.welcomeString??`Sign in to Medplum`})]})})}function yY(){let e=Q(),t=IU(),n=mY();return(0,b.useEffect)(()=>{e.getProfile()&&t(`/signin?project=new`)?.catch(console.error)},[e,t]),hY()?(0,L.jsxs)(tP,{type:`project`,projectId:`new`,onSuccess:()=>{window.location.href=`/`},googleClientId:n.googleClientId,recaptchaSiteKey:n.recaptchaSiteKey,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{order:3,py:`lg`,children:`Register a new account`})]}):(0,L.jsx)(zN,{width:450,children:(0,L.jsx)(Ed,{icon:(0,L.jsx)(qk,{size:16}),title:`New projects disabled`,color:`red`,children:`New projects are disabled on this server.`})})}function bY(){let e=IU(),[t]=EG(),n=mY();return(0,L.jsx)(nP,{projectId:t.get(`project`)||void 0,recaptchaSiteKey:n.recaptchaSiteKey,onSignIn:()=>e(`/signin`)?.catch(console.error),onRegister:hY()?()=>e(`/register`)?.catch(console.error):void 0})}function xY(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t}),r=IU(),i=(0,b.useCallback)(()=>{r(0)?.catch(console.error)},[r]);return n?(0,L.jsx)(zN,{maw:700,children:n.resourceType===`Patient`?(0,L.jsx)($R,{patient:n,onSaved:i}):(0,L.jsx)(Ed,{icon:(0,L.jsx)(qk,{size:16}),title:`Unsupported resource type`,color:`red`,children:`Account management is only supported for Patient resources`})}):null}function SY(e){let t=Q(),[n,r]=(0,b.useState)(),[i,a]=(0,b.useState)();return i?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`p`,{children:`Request group created successfully.`}),(0,L.jsxs)(`ul`,{children:[(0,L.jsxs)(`li`,{children:[`Go to the`,` `,(0,L.jsx)(Sj,{to:i,suffix:`checklist`,children:`Request Group`})]}),(0,L.jsxs)(`li`,{children:[`Back to the `,(0,L.jsx)(Sj,{to:e.planDefinition,children:`Plan Definition`})]})]})]}):(0,L.jsx)(GM,{onSubmit:()=>{t.post(t.fhirUrl(`PlanDefinition`,e.planDefinition.id,`$apply`),{resourceType:`Parameters`,parameter:[{name:`subject`,valueString:n?.reference}]}).then(a).catch(console.log)},children:(0,L.jsxs)(K,{children:[(0,L.jsxs)(J,{children:[`Start "`,e.planDefinition.title,`"`]}),(0,L.jsxs)(U,{children:[`Use the `,(0,L.jsx)(`strong`,{children:`Apply`}),` operation to create a group of tasks for a workflow.`]}),(0,L.jsx)(U,{children:`The following tasks will be created:`}),(0,L.jsx)(`ul`,{children:e.planDefinition.action?.map((e,t)=>(0,L.jsxs)(`li`,{children:[e.definitionCanonical?.startsWith(`Questionnaire/`)&&`Questionnaire request: `,e.title&&(0,L.jsx)(L.Fragment,{children:e.title}),e.code&&(0,L.jsx)(wP,{value:e.code[0]})]},`action-${t}`))}),(0,L.jsx)(QP,{title:`Subject`,children:(0,L.jsx)(kF,{name:`subject`,targetTypes:[`Patient`,`Practitioner`],defaultValue:n,onChange:r})}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`Go`})})]})})}function CY(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t});return n?(0,L.jsx)(zN,{children:(0,L.jsx)(SY,{planDefinition:n})}):null}function wY(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t}),[r,i]=jk(`Questionnaire`,`subject-type=`+e),[a,o]=jk(`ClientApplication`,{_count:1e3});if(!n||i||o)return(0,L.jsx)(mj,{});let s=a?.filter(t=>TY(e)&&!!t.launchUri);if((!r||r.length===0)&&(!s||s.length===0))return(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Apps`}),(0,L.jsxs)(`p`,{children:[`No apps found. Contact your administrator or `,(0,L.jsx)(`a`,{href:`mailto:support@medplum.com`,children:`Medplum Support`}),` to add automation here.`]})]});let c,l;return n.resourceType===`Patient`?c=WS(n):n.resourceType===`Encounter`&&(c=n.subject,l=WS(n)),(0,L.jsxs)(zN,{children:[r?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(J,{order:3,children:(0,L.jsx)(Sj,{to:`/forms/${e.id}?subject=${GS(n)}`,children:e.title||e.name})}),(0,L.jsx)(U,{children:e.description})]},e.id)),s?.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(J,{order:3,children:(0,L.jsx)(mB,{client:e,patient:c,encounter:l,children:e.name})}),(0,L.jsx)(U,{children:e.description})]},e.id))]})}function TY(e){return e===`Patient`||e===`Encounter`}function EY(){let{resourceType:e,id:t}=BU(),n=IU(),[r,i]=(0,b.useState)({resourceType:`AuditEvent`,filters:[{code:`entity`,operator:Z.EQUALS,value:`${e}/${t}`}],fields:[`id`,`outcome`,`outcomeDesc`,`_lastUpdated`],sortRules:[{code:`-_lastUpdated`}],count:20});return(0,L.jsx)(zN,{children:(0,L.jsx)(OR,{search:r,onClick:e=>n(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onChange:e=>i(e.definition),hideFilters:!0})})}function DY(){let e=Q(),{resourceType:t,id:n}=BU();return(0,L.jsx)(im,{maw:1200,children:(0,L.jsx)(RN,{children:(0,L.jsx)(iB,{history:e.readHistory(t,n).read()})})})}var OY={hl7Input:`_hl7Input_k5xm3_1`};function kY(e){return(0,L.jsx)(`iframe`,{title:`Bot Runner`,frameBorder:`0`,src:`https://codeeditor.medplum.com/bot-runner.html`,className:e.className,ref:e.iframeRef,"data-testid":e.testId,style:{width:`100%`,height:`100%`,minHeight:e.minHeight}})}function AY(e){let t=e.defaultValue,n=new URL(`https://codeeditor.medplum.com/${e.language}-editor.html`);return e.module&&n.searchParams.set(`module`,e.module),(0,L.jsx)(`iframe`,{title:`Code Editor`,frameBorder:`0`,src:n.toString(),style:{width:`100%`,height:`100%`,minHeight:e.minHeight},ref:e.iframeRef,"data-testid":e.testId,onLoad:e=>{bj(e.currentTarget,{command:`setValue`,value:t}).catch(console.error)}})}var jY=`{
|
|
227
227
|
"resourceType": "Patient",
|
|
228
228
|
"name": [
|
|
229
229
|
{
|
|
@@ -233,5 +233,5 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
233
233
|
"family": "Smith"
|
|
234
234
|
}
|
|
235
235
|
]
|
|
236
|
-
}`,SY=`MSH|^~\\&|ADT1|MCM|LABADT|MCM|198808181126|SECURITY|ADT|MSG00001|P|2.1\rPID|||PATID1234^5^M11||JONES^WILLIAM^A^III||19610615|M-||C|1200 N ELM STREET^^GREENSBORO^NC^27401-1020|GL|(919)379-1212|(919)271-3434||S||PATID12345001^2^M10|123456789|987654^NC\rNK1|1|JONES^BARBARA^K|SPO|||||20011105\rPV1|1|I|2000^2012^01||||004777^LEBAUER^SIDNEY^J.|||SUR||-||1|A0-`;function CY(){let e=Q(),{id:t}=IU(),[n,r]=(0,b.useState)(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(xY),[u,d]=(0,b.useState)(SY),[f,p]=(0,b.useState)(FE.FHIR_JSON),m=(0,b.useRef)(null),h=(0,b.useRef)(null),[g,_]=(0,b.useState)(!1);(0,b.useEffect)(()=>{e.readResource(`Bot`,t).then(async t=>{r(t),a(t.runtimeVersion===`vmcontext`?`commonjs`:`esnext`),s(await wY(e,t))}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[e,t]);let v=(0,b.useCallback)(async()=>vj(m.current,{command:`getValue`}),[]),y=(0,b.useCallback)(async()=>vj(m.current,{command:`getOutput`}),[]),x=(0,b.useCallback)(async()=>f===FE.FHIR_JSON?JSON.parse(c):u,[f,c,u]),S=(0,b.useCallback)(async n=>{n.preventDefault(),n.stopPropagation(),_(!0);try{let n=await v(),r=await y(),a=await e.createAttachment({data:n,filename:`index.ts`,contentType:FE.TYPESCRIPT}),o=await e.createAttachment({data:r,filename:i===`commonjs`?`index.cjs`:`index.mjs`,contentType:FE.JAVASCRIPT}),s=[{op:`add`,path:`/sourceCode`,value:a},{op:`add`,path:`/executableCode`,value:o}];await e.patchResource(`Bot`,t,s),Y({color:`green`,message:`Saved`})}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}finally{_(!1)}},[e,t,i,v,y]),C=(0,b.useCallback)(async n=>{n.preventDefault(),n.stopPropagation(),_(!0);try{await e.post(e.fhirUrl(`Bot`,t,`$deploy`)),Y({color:`green`,message:`Deployed`})}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}finally{_(!1)}},[e,t]),w=(0,b.useCallback)(async n=>{n.preventDefault(),n.stopPropagation(),_(!0);try{let n=await x(),r=await e.post(e.fhirUrl(`Bot`,t,`$execute`),n,f);await vj(h.current,{command:`setValue`,value:r}),Y({color:`green`,message:`Success`})}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}finally{_(!1)}},[e,t,x,f]);return!n||o===void 0?null:(0,L.jsxs)(wm,{m:0,gutter:0,style:{overflow:`hidden`},children:[(0,L.jsx)(wm.Col,{span:8,children:(0,L.jsxs)(vl,{m:2,pb:`xs`,pr:`xs`,pt:`xs`,shadow:`md`,mih:400,children:[(0,L.jsx)(bY,{iframeRef:m,language:`typescript`,module:i,testId:`code-frame`,defaultValue:o,minHeight:`528px`}),(0,L.jsxs)(H,{justify:`flex-end`,gap:`xs`,children:[(0,L.jsx)(W,{type:`button`,onClick:S,loading:g,leftSection:(0,L.jsx)(gA,{size:`1rem`}),children:`Save`}),(0,L.jsx)(W,{type:`button`,onClick:C,loading:g,leftSection:(0,L.jsx)(dA,{size:`1rem`}),children:`Deploy`}),(0,L.jsx)(W,{type:`button`,onClick:w,loading:g,leftSection:(0,L.jsx)(UA,{size:`1rem`}),children:`Execute`})]})]})}),(0,L.jsxs)(wm.Col,{span:4,children:[(0,L.jsxs)(vl,{m:2,pb:`xs`,pr:`xs`,pt:`xs`,shadow:`md`,children:[(0,L.jsx)(Tg,{data:[{label:`FHIR`,value:FE.FHIR_JSON},{label:`HL7`,value:FE.HL7_V2}],onChange:e=>p(e.currentTarget.value)}),f===FE.FHIR_JSON?(0,L.jsx)(ch,{value:c,onChange:e=>l(e),autosize:!0,minRows:15}):(0,L.jsx)(`textarea`,{className:vY.hl7Input,value:u,onChange:e=>d(e.currentTarget.value),rows:15})]}),(0,L.jsx)(vl,{m:2,p:`xs`,shadow:`md`,children:(0,L.jsx)(yY,{iframeRef:h,className:`medplum-bot-output-frame`,testId:`output-frame`,minHeight:`200px`})})]})]})}async function wY(e,t){if(t.sourceCode?.url){let n=t.sourceCode.url?.split(`/`)?.find(gC);return(await e.download(e.fhirUrl(`Binary`,n))).text()}return t.code??``}function TY(e){let t=e.meta;return t&&={...t,lastUpdated:void 0,versionId:void 0,author:void 0},{...e,meta:t}}function EY(){let e=Q(),{resourceType:t,id:n}=IU(),r={reference:t+`/`+n},i=(0,b.useCallback)(t=>{e.updateResource(TY(t)).then(()=>{Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})},[e]);switch(t){case`PlanDefinition`:return(0,L.jsx)(LN,{children:(0,L.jsx)(oz,{value:r,onSubmit:i})});case`Questionnaire`:return(0,L.jsx)(LN,{children:(0,L.jsx)(_z,{questionnaire:r,onSubmit:i})});default:return null}}function DY(){let{resourceType:e,id:t}=IU(),n=zO({reference:e+`/`+t}),r=MU();return n?(0,L.jsx)(LN,{children:(0,L.jsx)(Hz,{value:n,onStart:(e,t)=>r(`/forms/${KS(t)}`)?.catch(console.error),onEdit:(e,t,n)=>r(`/${n.reference}}`)?.catch(console.error)})}):null}function OY(){let e=Q(),{resourceType:t,id:n}=IU(),r=zO({reference:t+`/`+n}),i=(0,b.useRef)(0),[a,o]=(0,b.useState)([]);(0,b.useEffect)(()=>{r&&o((r.payload??UC).map(e=>({key:i.current++,item:e})))},[r]);let s=(0,b.useCallback)((e,t)=>{o(n=>n.map(n=>n.key===e?{...n,item:{...n.item,contentString:t}}:n))},[]),c=(0,b.useCallback)(()=>{o(e=>[...e,{key:i.current++,item:{contentString:``}}])},[]),l=(0,b.useCallback)(()=>{r&&e.updateResource(TY({...r,payload:a.map(e=>e.item)})).then(()=>Y({color:`green`,message:`Saved`})).catch(e=>Y({color:`red`,message:Lx(e)}))},[e,r,a]);return r?(0,L.jsx)(LN,{children:(0,L.jsxs)(K,{children:[a.filter(({item:e})=>`contentString`in e).map(({key:e,item:t})=>(0,L.jsx)(ah,{autosize:!0,minRows:3,maxRows:20,value:t.contentString??``,onChange:t=>s(e,t.currentTarget.value),placeholder:`Enter content...`},e)),(0,L.jsxs)(H,{justify:`flex-end`,children:[(0,L.jsx)(W,{variant:`outline`,onClick:c,children:`Add payload`}),(0,L.jsx)(W,{onClick:l,children:`Save`})]}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:`This tab manages string payloads only. Attachments and References can be managed in the Edit tab.`})]})}):null}function kY(){let e=Q(),{resourceType:t,id:n}=IU(),r=MU();return(0,L.jsxs)(LN,{children:[(0,L.jsxs)(`p`,{children:[`Are you sure you want to delete this `,t,`?`]}),(0,L.jsx)(W,{color:`red`,onClick:()=>{e.deleteResource(t,n).then(()=>r(`/${t}`)?.catch(console.error)).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},children:`Delete`})]})}var AY={selectProfileBtn:`_selectProfileBtn_tbaz6_1`,chevron:`_chevron_tbaz6_13`};function jY(){let{resourceType:e,id:t}=IU(),n=zO({reference:e+`/`+t}),[r,i]=(0,b.useState)(),a=Ff({onDropdownClose:()=>a.resetSelectedOption()}),o=(0,b.useMemo)(()=>{if(sC(n?.meta?.profile))return[(0,L.jsx)(Rf.Option,{value:``,children:`None`},``),...n.meta.profile.map(e=>(0,L.jsx)(Rf.Option,{value:e,children:e},e))]},[n?.meta?.profile]);if((0,b.useEffect)(()=>{n?.meta?.profile?.length===1&&i(n.meta.profile[0])},[n?.meta?.profile]),!n)return null;let s;return sC(o)&&(s=(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsxs)(K,{align:`flex-end`,gap:`xs`,children:[(0,L.jsxs)(Rf,{store:a,width:250,position:`bottom-end`,withinPortal:!1,onOptionSubmit:e=>{i(e),a.closeDropdown()},children:[(0,L.jsx)(Rf.Target,{children:(0,L.jsx)(pl,{onClick:()=>a.toggleDropdown(),children:(0,L.jsxs)(tm,{fw:`bold`,fs:`sm`,className:AY.selectProfileBtn,children:[(0,L.jsx)(`span`,{children:`Pick profile`}),(0,L.jsx)(sA,{stroke:1.5,className:AY.chevron})]})})}),(0,L.jsx)(Rf.Dropdown,{w:`max-content`,children:(0,L.jsx)(Rf.Options,{children:o})})]}),(0,L.jsx)(B,{children:r?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(U,{span:!0,size:`sm`,c:`dimmed`,children:`Displaying profile:\xA0`}),(0,L.jsx)(U,{span:!0,size:`sm`,children:r||`Nothing selected`})]}):(0,L.jsx)(U,{span:!0,size:`sm`,c:`dimmed`,children:`No profile displayed`})})]})})),(0,L.jsx)(LN,{children:(0,L.jsxs)(K,{gap:`xl`,children:[s,(0,L.jsx)(oL,{value:n,profileUrl:r})]})})}function MY(){let e=Q(),{resourceType:t,id:n}=IU(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(),s=MU(),[c,l]=(0,b.useState)();(0,b.useEffect)(()=>{e.readResource(t,n).then(e=>{i(hC(e)),o(hC(e))}).catch(e=>{l(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n]);let u=(0,b.useCallback)(r=>{l(void 0),e.updateResource(TY(r)).then(()=>{s(`/${t}/${n}/details`)?.catch(console.error),Y({id:`succes`,color:`green`,message:`Success`})}).catch(e=>{l(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n,s]),d=(0,b.useCallback)(i=>{l(void 0);let a=(0,$I.createPatch)(r,TY(i));e.patchResource(t,n,a).then(()=>{s(`/${t}/${n}/details`)?.catch(console.error),Y({id:`succes`,color:`green`,message:`Success`})}).catch(e=>{l(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n,r,s]),f=(0,b.useCallback)(()=>s(`/${t}/${n}/delete`)?.catch(console.error),[s,t,n]);return a?(0,L.jsx)(LN,{children:(0,L.jsx)(aB,{defaultValue:a,onSubmit:u,onPatch:d,onDelete:f,outcome:c})}):null}function NY(){let{resourceType:e,id:t}=IU(),n=zO({reference:e+`/`+t});return n?(0,L.jsx)(LN,{maw:700,children:n.resourceType===`Patient`?(0,L.jsx)(ez,{patient:n}):(0,L.jsx)(Ed,{icon:(0,L.jsx)(Gk,{size:16}),title:`Unsupported export type`,color:`red`,children:`This page is only supported for Patient resources`})}):null}function PY({resource:e,currentProfile:t,onChange:n}){let r=e.resourceType,i=Q(),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{i.searchResources(`StructureDefinition`,{type:r,derivation:`constraint`,_count:50}).then(e=>{o(e.filter(QP))}).catch(console.error)},[i,n,r]),(0,L.jsx)(ib,{value:t?.url,onChange:e=>{let t=a?.find(t=>t.url===e);t&&n(t)},children:(0,L.jsx)(ib.List,{children:a?.map(t=>{let n=e.meta?.profile?.includes(t.url),r=n?`This profile is present in this resource's meta.profile property.`:`This profile is not included in this resource's meta.profile property.`;return(0,L.jsx)(ib.Tab,{value:t.url,title:r,rightSection:n&&(0,L.jsx)(cb,{variant:`outline`,color:`green`,size:`xs`,style:{borderStyle:`none`},children:(0,L.jsx)(uj,{size:`90%`})}),children:t.title||t.name},t.url)})})})}function FY(e,t){let n=Q(),r=MU();return{defaultValue:{resourceType:e},handleSubmit:e=>{t&&t(void 0),n.createResource(e).then(e=>r(`/`+e.resourceType+`/`+e.id)).catch(e=>{t&&t(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1,styles:{description:{whiteSpace:`pre-line`}}})})}}}function IY(){let{resourceType:e}=IU(),t=kU(),[n,r]=(0,b.useState)(),{defaultValue:i,handleSubmit:a}=FY(e,r),[o,s]=(0,b.useState)(),c=t.pathname.toLowerCase().endsWith(`profiles`),l=(0,b.useCallback)(e=>{let t=TY(e);o&&VC(t,o.url),a(t)},[o,a]);return c?(0,L.jsx)(LN,{children:(0,L.jsxs)(K,{children:[(0,L.jsx)(PY,{resource:i,currentProfile:o,onChange:s}),o?(0,L.jsx)(aB,{defaultValue:i,onSubmit:l,outcome:n,profileUrl:o.url},o.url):(0,L.jsx)(U,{my:`lg`,fz:`lg`,fs:`italic`,ta:`center`,children:`Select a profile above`})]})}):(0,L.jsx)(LN,{children:(0,L.jsx)(aB,{defaultValue:i,onSubmit:a,outcome:n})})}function LY(){let e=Q(),{resourceType:t,id:n}=IU();return(0,L.jsx)(LN,{children:(0,L.jsx)(oB,{history:e.readHistory(t,n).read()})})}function RY(){let{resourceType:e}=IU(),[t,n]=(0,b.useState)(),{defaultValue:r,handleSubmit:i}=FY(e,n),a=(0,b.useCallback)(e=>{i(JSON.parse(e[`new-resource`]))},[i]);return(0,L.jsxs)(LN,{children:[t&&(0,L.jsx)(GN,{outcome:t}),(0,L.jsxs)(UM,{onSubmit:a,children:[(0,L.jsx)(ch,{name:`new-resource`,"data-testid":`create-resource-json`,autosize:!0,minRows:24,defaultValue:nC(r,!0),formatOnBlur:!0,deserialize:JSON.parse}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`OK`})})]})]})}function zY(){let e=Q(),{resourceType:t,id:n}=IU(),r=zO({reference:t+`/`+n}),i=MU(),[a,o]=(0,b.useState)(),s=(0,b.useCallback)(r=>{e.updateResource(TY(JSON.parse(r.resource))).then(()=>{o(void 0),i(`/${t}/${n}/details`)?.catch(console.error),Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n,i]);return r?(0,L.jsxs)(LN,{children:[a&&(0,L.jsx)(GN,{outcome:a}),(0,L.jsxs)(UM,{onSubmit:s,children:[(0,L.jsx)(ch,{name:`resource`,"data-testid":`resource-json`,autosize:!0,minRows:24,defaultValue:nC(r,!0),formatOnBlur:!0,deserialize:JSON.parse}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`OK`})})]})]}):null}function BY(e){let{resourceType:t,id:n}=e;return(0,L.jsxs)(LN,{children:[(0,L.jsxs)(Ed,{icon:(0,L.jsx)(Gk,{size:16}),mb:`xl`,children:[`This is just a preview! Access your form here:`,(0,L.jsx)(`br`,{}),(0,L.jsx)(Nd,{href:`/forms/${n}`,children:`/forms/${n}`})]}),(0,L.jsx)(OI,{questionnaire:{reference:t+`/`+n},onSubmit:()=>alert(`You submitted the preview`)})]})}var VY={propertyTable:`_propertyTable_1xts4_1`,propertiesTitle:`_propertiesTitle_1xts4_17`};function HY(e){return e.valueCode||e.valueString||(e.valueBoolean===void 0?void 0:String(e.valueBoolean))||(e.valueInteger===void 0?void 0:String(e.valueInteger))||(e.valueDecimal===void 0?void 0:String(e.valueDecimal))||e.valueDate||e.valueDateTime||`N/A`}function UY(e){let{properties:t}=e,n=t.map(e=>{let t=``,n=``,r=``;return e.part?.forEach(e=>{e.name===`code`?t=e.valueCode||``:e.name===`description`?n=e.valueString||``:e.name===`value`&&(r=HY(e))}),{code:t,description:n,value:r}});return(0,L.jsxs)(q,{className:VY.propertyTable,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Code`}),(0,L.jsx)(q.Th,{children:`Description`}),(0,L.jsx)(q.Th,{children:`Value`})]})}),(0,L.jsx)(q.Tbody,{children:n.map((e,t)=>(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:e.code}),(0,L.jsx)(q.Td,{children:e.description}),(0,L.jsx)(q.Td,{children:e.value})]},`property-${t}`))})]})}function WY(e){let{valueSet:t}=e,n=Q(),r=t.url,[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(!1),[u,d]=(0,b.useState)(),f=(0,b.useCallback)(async e=>{if(a(e),s(void 0),d(void 0),!e?.code||!e?.system){l(!1);return}l(!0);try{let t=new URLSearchParams({system:e.system,code:e.code}),r=n.fhirUrl(`CodeSystem`,`$lookup`)+`?`+t.toString();s(await n.get(r))}catch(e){d(e instanceof Error?e:Error(String(e)))}finally{l(!1)}},[n]),p=(0,b.useMemo)(()=>o?.parameter?.filter(e=>e.name===`property`&&e.part)??[],[o]),m=p.length>0;return(0,L.jsx)(LN,{children:(0,L.jsxs)(K,{gap:`xl`,children:[(0,L.jsx)(ZM,{binding:r,placeholder:`Select a value from the ValueSet`,onChange:e=>f(e[0]),defaultValue:i,maxValues:1}),i?(0,L.jsxs)(K,{gap:`md`,children:[(0,L.jsxs)(DN,{children:[(0,L.jsx)(ON,{term:`Code`,children:i.code}),i.system&&(0,L.jsx)(ON,{term:`System`,children:i.system}),i.display&&(0,L.jsx)(ON,{term:`Display`,children:i.display})]}),c&&(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(su,{size:`sm`}),(0,L.jsx)(U,{size:`sm`,c:`dimmed`,children:`Loading properties...`})]}),!c&&u&&(0,L.jsxs)(Ed,{icon:(0,L.jsx)(Gk,{size:16}),title:`Lookup Failed`,color:`red`,children:[`Failed to retrieve code information: `,Lx(u)]}),!c&&!u&&m&&(0,L.jsx)(dj,{children:(0,L.jsxs)(K,{gap:`xs`,mt:`lg`,children:[(0,L.jsx)(U,{fw:500,size:`sm`,c:`dimmed`,className:VY.propertiesTitle,children:`Properties`}),(0,L.jsx)(UY,{properties:p})]})})]}):null]})})}function GY(){let{resourceType:e,id:t}=IU(),n=zO({reference:e+`/`+t});return n?n.resourceType===`Questionnaire`?(0,L.jsx)(BY,{resourceType:e,id:t}):n.resourceType===`ValueSet`?(0,L.jsx)(WY,{valueSet:n}):null:null}function KY(){let e=Q(),{resourceType:t,id:n}=IU(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{e.readResource(t,n).then(e=>i(hC(e))).catch(e=>{Y({color:`red`,message:Lx(e)})})},[e,t,n]),r?(0,L.jsxs)(LN,{children:[(0,L.jsxs)(J,{order:2,children:[`Available `,t,` profiles`]}),(0,L.jsx)(K,{children:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(PY,{resource:r,currentProfile:a,onChange:o}),a?(0,L.jsx)(qY,{profile:a,resource:r,onResourceUpdated:e=>i(e)},a.url):(0,L.jsx)(U,{my:`lg`,fz:`lg`,fs:`italic`,ta:`center`,children:`Select a profile above`})]})})]}):null}var qY=({profile:e,resource:t,onResourceUpdated:n})=>{let r=Q(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(()=>t.meta?.profile?.includes(e.url)),c=(0,b.useCallback)(t=>{a(void 0);let i=TY(t);o?VC(i,e.url):HC(i,e.url),r.updateResource(i).then(e=>{n(e),Y({color:`green`,message:`Success`})}).catch(e=>{a(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[r,e.url,n,o]);return(0,L.jsxs)(K,{children:[(0,L.jsx)(Ay,{size:`md`,checked:o,label:`Conform resource to ${e.title}`,onChange:e=>s(e.currentTarget.checked),"data-testid":`profile-toggle`}),o?(0,L.jsx)(aB,{profileUrl:e.url,defaultValue:t,onSubmit:c,outcome:i}):(0,L.jsx)(`form`,{noValidate:!0,onSubmit:e=>{e.preventDefault(),c(t)},children:(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`OK`})})})]})},JY={"Create Only":`create`,"Update Only":`update`,"Delete Only":`delete`,"All Interactions":void 0},YY=Object.keys(JY);function XY(){let e=Q(),{id:t}=IU(),n=zO({reference:`Questionnaire/${t}`}),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(`create`),[s,c]=(0,b.useState)(0),l=e.searchResources(`Subscription`,`status=active&_count=100`).read().filter(e=>ZY(e,n));function u(){r&&n&&e.createResource({resourceType:`Subscription`,status:`active`,reason:`Connect bot ${r.name} to questionnaire responses`,criteria:`QuestionnaireResponse?questionnaire=${n.url?`${n.url},${GS(n)}`:GS(n)}`,channel:{type:`rest-hook`,endpoint:GS(r)},...a?{extension:[{url:`https://medplum.com/fhir/StructureDefinition/subscription-supported-interaction`,valueCode:a}]}:void 0}).then(()=>{i(void 0),c(Date.now()),e.invalidateSearches(`Subscription`),Y({color:`green`,message:`Success`})}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Bots`}),(0,L.jsxs)(K,{children:[l.length===0&&(0,L.jsx)(`p`,{children:`No bots found.`}),l.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`h3`,{children:(0,L.jsx)(NI,{value:{reference:e.channel?.endpoint},link:!0})}),(0,L.jsxs)(`p`,{children:[`Criteria: `,e.criteria]})]},e.id))]}),(0,L.jsx)(um,{}),(0,L.jsxs)(K,{mt:10,children:[(0,L.jsx)(nd,{size:`lg`,htmlFor:`bot`,children:`Connect to bot`}),(0,L.jsxs)(H,{children:[(0,L.jsx)(wF,{name:`bot`,resourceType:`Bot`,onChange:e=>i(e)}),(0,L.jsx)(W,{onClick:u,children:`Connect`})]}),(0,L.jsx)(H,{children:(0,L.jsx)(Tg,{name:`subscription-trigger-event`,defaultValue:`Create Only`,label:`Subscription Trigger Event`,data:YY,onChange:e=>o(JY[e.target.value])})})]}),(0,L.jsx)(`div`,{style:{display:`none`},children:s})]})}function ZY(e,t){if(!t)return!1;let n=e.criteria||``,r=e.channel?.endpoint||``;return n.startsWith(`QuestionnaireResponse?`)&&r.startsWith(`Bot/`)&&(n.includes(GS(t))||(t.url?n.includes(t.url):!1))}function QY(){let{id:e}=IU(),t=MU(),n=Q().readReference({reference:`Questionnaire/${e}`}).read(),[r,i]=(0,b.useState)({resourceType:`QuestionnaireResponse`,filters:[{code:`questionnaire`,operator:Z.EQUALS,value:n.url?`${n.url},Questionnaire/${e}`:`Questionnaire/${e}`}],fields:[`id`,`_lastUpdated`]});return(0,L.jsx)(LN,{children:(0,L.jsx)(kR,{search:r,onClick:e=>t(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onChange:e=>i(e.definition),hideFilters:!0,hideToolbar:!0})})}function $Y(){let e=Q(),{resourceType:t,id:n}=IU(),r=zO({reference:t+`/`+n}),i=(0,b.useCallback)(t=>{e.updateResource(TY(t)).then(()=>{Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})},[e]);return r?(0,L.jsx)(LN,{children:(0,L.jsx)(Pz,{onSubmit:i,definition:r})}):null}function eX(){let{resourceType:e,id:t}=IU(),n=zO({reference:e+`/`+t});return n?(0,L.jsx)(LN,{children:e===`MeasureReport`?(0,L.jsx)(XR,{measureReport:n}):(0,L.jsx)(II,{value:n})}):null}var tX={container:`_container_1ue98_1`,entry:`_entry_1ue98_14`,active:`_active_1ue98_21`};function nX(e){let t=Q(),n=zO(e.value),[r,i]=(0,b.useState)();return(0,b.useEffect)(()=>{if(!n)return;let e=PG(n);if(!e)return;let r=`reference`in e?e.reference:GS(e);t.search(`ServiceRequest`,`subject=`+r).then(e=>{let t=(e.entry??[]).map(e=>e.resource);uL(t),t.reverse(),i(t)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[t,n]),r?(0,L.jsx)(`div`,{"data-testid":`quick-service-requests`,className:tX.container,children:r.map(e=>(0,L.jsxs)(`div`,{className:jn(tX.entry,{[tX.active]:e.id===n?.id}),children:[(0,L.jsx)(`p`,{children:(0,L.jsx)(bj,{to:e,children:rX(e)})}),e.category?.[0]?.text&&(0,L.jsx)(`p`,{children:e.category[0]?.text}),e.code?.coding?.[0]?.code&&(0,L.jsx)(`p`,{children:e.code.coding[0]?.code}),(0,L.jsx)(`p`,{children:iX(e)})]},e.id))}):null}function rX(e){if(e.identifier){for(let t of e.identifier)if(t.value)return t.value}return e.id||``}function iX(e){return e.authoredOn?e.authoredOn.substring(0,10):e.meta?.lastUpdated?e.meta.lastUpdated.substring(0,10):``}var aX={container:`_container_1l2dh_1`};function oX(e){let t=zO(e.valueSet);if(!t)return null;let n=[``],r=t.compose?.include?.[0]?.concept?.map(e=>e.code);return r&&n.push(...r),e.defaultValue&&!n.includes(e.defaultValue)&&n.push(e.defaultValue),(0,L.jsx)(`div`,{className:aX.container,children:(0,L.jsx)(Tg,{defaultValue:e.defaultValue,onChange:t=>e.onChange(t.currentTarget.value),data:n})})}function sX(e){let t=zO(e.specimen);return t?(0,L.jsxs)(zR,{children:[(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Type`}),(0,L.jsx)(zR.Value,{children:`Specimen`})]}),(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Collected`}),(0,L.jsx)(zR.Value,{children:XC(t.collection?.collectedDateTime)})]}),(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Specimen Age`}),(0,L.jsx)(zR.Value,{children:cX(t)})]}),t.collection?.collectedDateTime&&t.receivedTime?(0,L.jsxs)(zR.Entry,{children:[(0,L.jsx)(zR.Key,{children:`Specimen Stability`}),(0,L.jsx)(zR.Value,{children:lX(t)})]}):(0,L.jsx)(L.Fragment,{})]}):null}function cX(e){let t=e.collection?.collectedDateTime;if(t)return uX(dX(new Date(t),new Date))}function lX(e){if(!(!e.collection?.collectedDateTime||!e.receivedTime))return uX(dX(new Date(e.collection.collectedDateTime),new Date(e.receivedTime)))}function uX(e){return e.toString().padStart(3,`0`)+`D`}function dX(e,t){let n=t.getTime()-e.getTime();return Math.floor(n/(1e3*3600*24))}function fX(e){let t=[`Timeline`];return e===`Bot`&&t.push(`Editor`,`Subscriptions`),e===`PlanDefinition`&&t.push(`Apply`,`Builder`),e===`Questionnaire`&&t.push(`Preview`,`Builder`,`Bots`,`Responses`),e===`ValueSet`&&t.push(`Preview`),(e===`DiagnosticReport`||e===`MeasureReport`)&&t.push(`Report`),e===`RequestGroup`&&t.push(`Checklist`),e===`ObservationDefinition`&&t.push(`Ranges`),e===`Agent`&&t.push(`Tools`),e===`Communication`&&t.push(`Payload`),t.push(`Details`,`Edit`,`Event`,`History`,`Blame`,`JSON`,`Apps`,`Profiles`),e===`Patient`&&t.push(`Export`),t}function pX(){let e=Q(),{resourceType:t,id:n}=IU(),r={reference:t+`/`+n},[i,a]=(0,b.useState)(),o=zO(r,a),s=fX(t);async function c(){let r=(await e.readHistory(t,n)).entry?.find(e=>!!e.resource)?.resource;r?l(r):Y({color:`red`,message:`No history to restore`,autoClose:!1})}function l(t){e.updateResource(TY(t)).then(()=>{a(void 0),Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})}if(i)return Px(i)?(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Deleted`}),(0,L.jsx)(`p`,{children:`The resource was deleted.`}),(0,L.jsx)(W,{color:`red`,onClick:c,children:`Restore`})]}):(0,L.jsx)(GN,{outcome:i});function u(e){let t=o,n=t.orderDetail||[];n.length===0&&n.push({}),n[0].text!==e&&(n[0].text=e,l({...t,orderDetail:n}))}let d=o&&PG(o),f=o&&FG(o),p=e.getUserConfiguration()?.option?.find(e=>e.id===`statusValueSet`)?.valueString;return(0,L.jsxs)(L.Fragment,{children:[o?.resourceType===`ServiceRequest`&&p&&(0,L.jsx)(oX,{valueSet:{reference:p},defaultValue:o.orderDetail?.[0]?.text,onChange:u},GS(o)+`-`+o.orderDetail?.[0]?.text),o&&(0,L.jsx)(nX,{value:o}),o&&(0,L.jsxs)(vl,{children:[d&&(0,L.jsx)(rz,{patient:d}),f&&(0,L.jsx)(sX,{specimen:f}),t!==`Patient`&&(0,L.jsx)(BJ,{resource:r}),(0,L.jsx)(ll,{children:(0,L.jsx)(VR,{baseUrl:`/${t}/${n}`,tabs:s})})]}),(0,L.jsx)(vW,{})]})}function mX(){let e=MU(),{resourceType:t,id:n,versionId:r,tab:i}=IU(),a=Q(),[o,s]=(0,b.useState)(!0),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)();if((0,b.useEffect)(()=>{d(void 0),s(!0),a.readHistory(t,n).then(e=>l(e)).then(()=>s(!1)).catch(e=>{d(e),s(!1)})},[a,t,n]),o)return(0,L.jsx)(fj,{});let f=c?.entry??[],p=f.findIndex(e=>e.resource?.meta?.versionId===r);if(p===-1)return(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Version not found`}),(0,L.jsx)(bj,{to:`/${t}/${n}`,children:`Return to resource`})]});let m=f[p].resource,h=p<f.length-1?f[p+1].resource:void 0,g=`diff`,_=i||g,v=f.length-p;return(0,L.jsx)(im,{maw:1200,children:(0,L.jsx)(IN,{children:(0,L.jsxs)(K,{gap:`lg`,children:[u&&(0,L.jsx)(`pre`,{"data-testid":`error`,children:JSON.stringify(u,void 0,2)}),(0,L.jsxs)(cy,{cols:2,mb:`lg`,children:[(0,L.jsx)(nv,{total:f.length,value:v,getControlProps:SR,onChange:r=>e(`/${t}/${n}/_history/${f[f.length-r]?.resource?.meta?.versionId}/${_}`)?.catch(console.error)}),(0,L.jsx)(H,{justify:`right`,children:(0,L.jsx)(ey,{data:[{value:`diff`,label:`Diff`},{value:`raw`,label:`Raw`}],value:_,onChange:i=>e(`/${t}/${n}/_history/${r}/${i||g}`)?.catch(console.error)})})]}),(0,L.jsx)(B,{mb:`lg`,children:(0,L.jsxs)(DN,{compact:!0,children:[(0,L.jsx)(ON,{term:`Version ID`,children:m.meta?.versionId}),(0,L.jsx)(ON,{term:`Author`,children:(0,L.jsx)(PI,{value:m.meta?.author,link:!0},m.meta?.author?.reference)}),(0,L.jsx)(ON,{term:`Date/Time`,children:XC(m.meta?.lastUpdated)})]})}),_===`diff`&&(0,L.jsx)(nB,{original:h??{resourceType:t,id:n},revised:m}),_===`raw`&&(0,L.jsx)(`pre`,{style:{fontSize:`9pt`},children:JSON.stringify(m,void 0,2)})]})})})}function hX(){let{resourceType:e,id:t}=IU(),n=MU(),[r,i]=(0,b.useState)({resourceType:`Subscription`,filters:[{code:`url`,operator:Z.EQUALS,value:`${e}/${t}`}],fields:[`id`,`criteria`,`status`,`_lastUpdated`]});return(0,L.jsx)(LN,{children:(0,L.jsx)(kR,{search:r,onClick:e=>n(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onChange:e=>i(e.definition),hideFilters:!0})})}function gX(e){let t=Q(),{resource:n,opened:r,onClose:i}=e,[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(!1);return(0,L.jsx)(ng,{opened:r,onClose:i,title:`Resend Subscriptions`,children:(0,L.jsx)(UM,{onSubmit:(0,b.useCallback)(async()=>{if(n?.id)try{await t.post(t.fhirUrl(n.resourceType,n.id,`$resend`),{subscription:a&&s?GS(s):void 0,verbose:l}),Y({color:`green`,message:`Done`}),i()}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}},[t,n,i,a,s,l]),children:(0,L.jsxs)(K,{children:[(0,L.jsx)(cp,{label:`Choose subscription (all subscriptions by default)`,onChange:e=>o(e.currentTarget.checked)}),a&&(0,L.jsx)(wF,{name:`subscription`,resourceType:`Subscription`,placeholder:`Subscription`,onChange:c}),(0,L.jsx)(cp,{label:`Verbose mode`,onChange:e=>u(e.currentTarget.checked)}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{type:`submit`,children:`Resend`})})]})})})}function _X(){let e=Q(),t=kO(),{resourceType:n,id:r}=IU(),i={reference:n+`/`+r},[a,o]=(0,b.useState)(),s=yn(!1);function c(t,n){return e.updateResource({...t,priority:n})}function l(e,t){c(e,`stat`).then(t).catch(console.error)}function u(e,t){c(e,`routine`).then(t).catch(console.error)}function d(e){t(`/${e.resourceType}/${e.id}`)}function f(e){t(`/${e.resourceType}/${e.id}/edit`)}function p(e){t(`/${e.resourceType}/${e.id}/delete`)}function m(e){o(e),s[1].open()}function h(e){t(`/${e.resourceType}/${e.id}/_history/${e.meta?.versionId}`)}function g(t,n){let r=`aws-textract`;Y({id:r,title:`AWS Textract in Progress`,message:`Extracting text... This may take a moment...`,loading:!0,autoClose:!1}),e.post(e.fhirUrl(t.resourceType,t.id,`$aws-textract`),{}).then(()=>{n(),Sb({id:r,title:`AWS Textract Successful`,message:`Text successfully extracted.`,color:`green`,icon:(0,L.jsx)(aA,{size:`1rem`}),loading:!1,withCloseButton:!0})}).catch(e=>Sb({id:r,title:`AWS Textract Error`,color:`red`,message:Lx(e),icon:(0,L.jsx)(lj,{size:`1rem`}),loading:!1,withCloseButton:!0}))}function _(t){let{primaryResource:n,currentResource:r,reloadTimeline:i}=t,a=r.resourceType===n.resourceType&&r.id===n.id,o=r.resourceType===`Communication`&&r.priority!==`stat`,s=r.resourceType===`Communication`&&r.priority===`stat`,c=a,_=!a,v=!a,y=!a,b=e.getProjectMembership()?.admin,x=b,S=sY()&&(r.resourceType===`DocumentReference`||r.resourceType===`Media`);return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Label,{children:`Resource`}),o&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(VA,{size:14}),onClick:()=>l(r,i),"aria-label":`Pin ${GS(r)}`,children:`Pin`}),s&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(HA,{size:14}),onClick:()=>u(r,i),"aria-label":`Unpin ${GS(r)}`,children:`Unpin`}),_&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(AA,{size:14}),onClick:()=>d(r),"aria-label":`Details ${GS(r)}`,children:`Details`}),c&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(AA,{size:14}),onClick:()=>h(r),"aria-label":`Details ${GS(r)}`,children:`Details`}),v&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(vA,{size:14}),onClick:()=>f(r),"aria-label":`Edit ${GS(r)}`,children:`Edit`}),b&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Label,{children:`Admin`}),x&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(qA,{size:14}),onClick:()=>m(r),"aria-label":`Resend Subscriptions ${GS(r)}`,children:`Resend Subscriptions`})]}),S&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Label,{children:`AWS AI`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(ij,{size:14}),onClick:()=>g(r,i),"aria-label":`AWS Textract ${GS(r)}`,children:`AWS Textract`})]}),y&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Label,{children:`Danger zone`}),(0,L.jsx)(G.Item,{color:`red`,leftSection:(0,L.jsx)(aj,{size:14}),onClick:()=>p(r),"aria-label":`Delete ${GS(r)}`,children:`Delete`})]})]})}return(0,L.jsxs)(L.Fragment,{children:[n===`Encounter`&&(0,L.jsx)(TL,{encounter:i,getMenu:_}),n===`Patient`&&(0,L.jsx)(iz,{patient:i,getMenu:_}),n===`ServiceRequest`&&(0,L.jsx)(lB,{serviceRequest:i,getMenu:_}),n!==`Encounter`&&n!==`Patient`&&n!==`ServiceRequest`&&(0,L.jsx)(wL,{resource:i,getMenu:_}),(0,L.jsx)(gX,{resource:a,opened:s[0],onClose:s[1].close},`resend-subscriptions-${a?.id}`)]})}function vX(e){let{opened:t,close:n,version:r,loadingStatus:i,handleStatus:a,handleUpgrade:o}=e,[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(!1);return(0,b.useEffect)(()=>{t&&(s||EO(`app-tools-page`).then(c).catch(console.error),a())},[t,s,a]),s&&r&&!i?r===`unknown`?(0,L.jsx)(`p`,{children:`Unable to determine the current version of the agent. Check the network connectivity of the agent.`}):r.startsWith(s)?(0,L.jsxs)(`p`,{children:[`This agent is already on the latest version (`,s,`).`]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`p`,{children:[`Are you sure you want to upgrade this agent from version `,r,` to version `,s,`?`]}),(0,L.jsxs)(H,{children:[(0,L.jsx)(W,{onClick:()=>{o(l),n()},"aria-label":`Confirm upgrade`,children:`Confirm Upgrade`}),(0,L.jsx)(cp,{label:`Force`,onChange:e=>u(e.currentTarget.checked)})]})]}):(0,L.jsx)(fj,{})}function yX(){let e=Q(),{id:t}=IU(),n=(0,b.useMemo)(()=>({reference:`Agent/`+t}),[t]),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(!1),[l,u]=(0,b.useState)(!1),[d,f]=(0,b.useState)(),[p,m]=(0,b.useState)(),[h,g]=(0,b.useState)(),[_,v]=(0,b.useState)(),[y,x]=(0,b.useState)(!1),[S,C]=(0,b.useState)(!1),[w,T]=(0,b.useState)(),[E,{open:D,close:O}]=yn(!1);(0,b.useEffect)(()=>{if(r||a||s||y){C(!0);return}C(!1)},[r,a,s,y]);let k=(0,b.useCallback)(()=>{i(!0),e.get(e.fhirUrl(`Agent`,t,`$status`),{cache:`reload`}).then(e=>{f(e.parameter?.find(e=>e.name===`status`)?.valueCode),m(e.parameter?.find(e=>e.name===`version`)?.valueString),g(e.parameter?.find(e=>e.name===`lastUpdated`)?.valueInstant)}).catch(e=>F(Lx(e))).finally(()=>i(!1))},[e,t]),A=(0,b.useCallback)(t=>{let r=t.host,i=t.pingCount||1;r&&(x(!0),e.pushToAgent(n,r,`PING ${i}`,FE.PING,!0).then(e=>v(e)).catch(e=>F(Lx(e))).finally(()=>x(!1)))},[e,n]),j=(0,b.useCallback)(()=>{o(!0),e.get(e.fhirUrl(`Agent`,t,`$reload-config`),{cache:`reload`}).then(e=>{P(`Agent config reloaded successfully.`)}).catch(e=>F(Lx(e))).finally(()=>o(!1))},[e,t]),M=(0,b.useCallback)(n=>{c(!0);let r=e.fhirUrl(`Agent`,t,`$upgrade`);r.searchParams.set(`force`,String(n)),e.get(r,{cache:`reload`}).then(e=>{P(`Agent upgraded successfully.`)}).catch(e=>F(Lx(e))).finally(()=>c(!1))},[e,t]),N=(0,b.useCallback)(n=>{u(!0);let r=n.logLimit||20;e.get(e.fhirUrl(`Agent`,t,`$fetch-logs${r===void 0?``:`?limit=${r}`}`),{cache:`reload`}).then(e=>{let t=e?.parameter?.find(e=>e.name===`logs`);t&&T(t?.valueString)}).catch(e=>F(Lx(e))).finally(()=>u(!1))},[e,t]);function P(e){Y({color:`green`,title:`Success`,icon:(0,L.jsx)(aA,{size:`1rem`}),message:e})}function F(e){Y({color:`red`,title:`Error`,message:e,autoClose:!1})}return(0,L.jsxs)(LN,{children:[(0,L.jsx)(ng,{opened:E,onClose:O,title:`Upgrade Agent`,centered:!0,children:(0,L.jsx)(vX,{opened:E,close:O,version:p,loadingStatus:r,handleStatus:k,handleUpgrade:M})}),(0,L.jsx)(J,{order:1,children:`Agent Tools`}),(0,L.jsxs)(`div`,{style:{marginBottom:10},children:[`Agent: `,(0,L.jsx)(NI,{value:n,link:!0})]}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Agent Status`}),(0,L.jsx)(`p`,{children:`Retrieve the status of the agent. This tests whether the agent is connected to the Medplum server, and the last time it was able to communicate.`}),(0,L.jsx)(W,{onClick:k,loading:r,disabled:S&&!r,children:`Get Status`}),!r&&d&&(0,L.jsx)(q,{children:(0,L.jsxs)(q.Tbody,{children:[(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:`Status`}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(AI,{status:d})})]}),(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:`Version`}),(0,L.jsx)(q.Td,{children:p})]}),(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:`Last Updated`}),(0,L.jsx)(q.Td,{children:XC(h,void 0,{timeZoneName:`longOffset`})})]})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Reload Config`}),(0,L.jsx)(`p`,{children:`Reload the configuration of this agent, syncing it with the current version of the Agent resource on the Medplum server.`}),(0,L.jsx)(W,{onClick:j,loading:a,disabled:S&&!a,"aria-label":`Reload config`,children:`Reload Config`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Upgrade Agent`}),(0,L.jsx)(`p`,{children:`Upgrade the version of this agent, to either the latest (default) or a specified version.`}),(0,L.jsx)(W,{onClick:D,loading:s,disabled:S&&!s,"aria-label":`Upgrade agent`,children:`Upgrade`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsxs)(UM,{onSubmit:N,children:[(0,L.jsx)(J,{order:2,children:`Fetch Logs`}),(0,L.jsx)(`p`,{children:`Fetch logs from the agent.`}),w?.length?(0,L.jsx)(tm,{block:!0,mb:15,children:w}):null,(0,L.jsxs)(H,{children:[(0,L.jsx)(N_,{w:100,id:`logLimit`,name:`logLimit`,placeholder:`20`,label:`Log Limit`}),(0,L.jsx)(W,{mt:22,loading:l,disabled:S&&!l,"aria-label":`Fetch logs`,type:`submit`,children:`Fetch Logs`})]})]}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Ping from Agent`}),(0,L.jsx)(`p`,{children:`Send a ping command from the agent to a valid IP address or hostname. Use this tool to troubleshoot local network connectivity.`}),(0,L.jsx)(UM,{onSubmit:A,children:(0,L.jsxs)(H,{children:[(0,L.jsx)(ab,{id:`host`,name:`host`,placeholder:`ex. 127.0.0.1`,label:`IP Address / Hostname`,rightSection:(0,L.jsx)(hu,{size:24,radius:`xl`,variant:`filled`,type:`submit`,"aria-label":`Ping`,loading:y,disabled:S&&!y,children:(0,L.jsx)(YA,{style:{width:`1rem`,height:`1rem`},stroke:1.5})})}),(0,L.jsx)(N_,{id:`pingCount`,name:`pingCount`,placeholder:`1`,label:`Ping Count`})]})}),!y&&_&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{order:5,mt:`sm`,mb:0,children:`Last Ping`}),(0,L.jsx)(`pre`,{children:_})]})]})}function bX(){let e=MU(),t=Q(),[n,r]=(0,b.useState)();(0,b.useEffect)(()=>{t.get(`auth/me`,{cache:`no-cache`}).then(r).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[t]);function i(e){t.post(`auth/revoke`,{loginId:e}).then(()=>t.get(`auth/me`,{cache:`no-cache`})).then(r).then(()=>Y({color:`green`,message:`Login revoked`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return n?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Security`}),(0,L.jsxs)(DN,{children:[(0,L.jsx)(ON,{term:`ID`,children:(0,L.jsx)(Nd,{href:`/${GS(n.profile)}`,children:n.profile.id})}),(0,L.jsx)(ON,{term:`Resource Type`,children:n.profile.resourceType}),(0,L.jsx)(ON,{term:`Name`,children:qC(n.profile.name?.[0])})]})]}),(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Sessions`}),(0,L.jsxs)(q,{children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`OS`}),(0,L.jsx)(`th`,{children:`Browser`}),(0,L.jsx)(`th`,{children:`IP Address`}),(0,L.jsx)(`th`,{children:`Auth Method`}),(0,L.jsx)(`th`,{children:`Last Updated`}),(0,L.jsx)(`th`,{})]})}),(0,L.jsx)(`tbody`,{children:n.security.sessions.map(e=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:e.os}),(0,L.jsx)(`td`,{children:e.browser}),(0,L.jsx)(`td`,{children:e.remoteAddress}),(0,L.jsx)(`td`,{children:e.authMethod}),(0,L.jsx)(`td`,{children:XC(e.lastUpdated)}),(0,L.jsx)(`td`,{children:(0,L.jsx)(Nd,{href:`#`,onClick:()=>i(e.id),children:`Revoke`})})]},e.id))})]})]}),(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Password`}),(0,L.jsx)(W,{onClick:()=>e(`/changepassword`)?.catch(console.error),children:`Change password`})]}),(0,L.jsxs)(LN,{children:[(0,L.jsx)(J,{children:`Multi Factor Auth`}),(0,L.jsxs)(`p`,{children:[`Enrolled: `,n.security.mfaEnrolled.toString()]}),!n.security.mfaEnrolled&&(0,L.jsx)(W,{onClick:()=>e(`/mfa`)?.catch(console.error),children:`Enroll`})]})]}):null}function xX(){let{id:e,secret:t}=IU(),n=MU();return(0,L.jsx)(tP,{id:e,secret:t,onSignIn:()=>n(`/signin`)?.catch(console.error)})}function SX(){let e=AO(),t=MU(),[n]=SG(),r=aY(),i=(0,b.useCallback)(()=>{let e=n.get(`next`);t(e?.startsWith(`/`)?e:`/`)?.catch(console.error)},[n,t]);return(0,b.useEffect)(()=>{e&&n.has(`next`)&&i()},[e,n,i]),(0,L.jsxs)(xP,{onSuccess:()=>i(),onForgotPassword:()=>t(`/resetpassword`)?.catch(console.error),onRegister:oY()?()=>t(`/register`)?.catch(console.error):void 0,googleClientId:r.googleClientId,login:n.get(`login`)||void 0,projectId:n.get(`project`)||void 0,children:[(0,L.jsx)(RN,{size:32}),n.get(`project`)!==`new`&&(0,L.jsxs)(J,{order:3,py:`lg`,ta:`center`,children:[`Sign in to `,kj()]}),n.get(`project`)===`new`&&(0,L.jsx)(J,{order:3,py:`lg`,ta:`center`,children:`Sign in again to create a new project`})]})}function CX(){let e=MU(),t=kU(),[n,r]=(0,b.useState)(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)();return(0,b.useEffect)(()=>{let e=Object.fromEntries(new URLSearchParams(t.search).entries());r(e.resourceType),a(e.query),s(JSON.parse(e.fields))},[t]),!n||!i||!o?null:(0,L.jsx)(LR,{resourceType:n,checkboxesEnabled:!0,query:i,fields:o,onClick:t=>e(`/${n}/${t.resource.id}`)?.catch(console.error),onAuxClick:e=>window.open(`/${n}/${e.resource.id}`,`_blank`),onBulk:t=>{e(`/bulk/${n}?ids=${t.join(`,`)}`)?.catch(console.error)}})}function wX(){let{id:e,secret:t}=IU(),n=Q(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(!1);return(0,L.jsxs)(LN,{width:450,children:[(0,L.jsx)(GN,{issues:BN(r,void 0)}),(0,L.jsxs)(UM,{onSubmit:()=>{i(void 0);let r={id:e,secret:t};n.post(`auth/verifyemail`,r).then(()=>o(!0)).catch(e=>i(Ix(e)))},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(RN,{size:32}),(0,L.jsx)(J,{children:`Email address verification required`})]}),!a&&(0,L.jsxs)(K,{children:[(0,L.jsx)(`p`,{children:`In order to sign in, click the button below to verify your ability to receive email at the address this link was sent to.`}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`Verify email`})})]}),a&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[`Email verified. You can now\xA0`,(0,L.jsx)(bj,{to:`/signin`,children:`sign in`}),`.`]})]})]})}function TX(){return(0,L.jsx)(xW,{children:(0,L.jsxs)(yW,{errorElement:(0,L.jsx)(zJ,{}),children:[(0,L.jsx)(yW,{path:`/signin`,element:(0,L.jsx)(SX,{})}),(0,L.jsx)(yW,{path:`/oauth`,element:(0,L.jsx)(lY,{})}),(0,L.jsx)(yW,{path:`/resetpassword`,element:(0,L.jsx)(dY,{})}),(0,L.jsx)(yW,{path:`/setpassword/:id/:secret`,element:(0,L.jsx)(xX,{})}),(0,L.jsx)(yW,{path:`/verifyemail/:id/:secret`,element:(0,L.jsx)(wX,{})}),(0,L.jsx)(yW,{path:`/register`,element:(0,L.jsx)(uY,{})}),(0,L.jsx)(yW,{path:`/changepassword`,element:(0,L.jsx)(IJ,{})}),(0,L.jsx)(yW,{path:`/security`,element:(0,L.jsx)(bX,{})}),(0,L.jsx)(yW,{path:`/mfa`,element:(0,L.jsx)(rY,{})}),(0,L.jsx)(yW,{path:`/batch`,element:(0,L.jsx)(PJ,{})}),(0,L.jsx)(yW,{path:`/bulk/:resourceType`,element:(0,L.jsx)(FJ,{})}),(0,L.jsx)(yW,{path:`/smart`,element:(0,L.jsx)(CX,{})}),(0,L.jsx)(yW,{path:`/forms/:id`,element:(0,L.jsx)(VJ,{})}),(0,L.jsx)(yW,{path:`/admin/super`,element:(0,L.jsx)(MK,{})}),(0,L.jsx)(yW,{path:`/admin/super/asyncjob/:tab`,element:(0,L.jsx)(CK,{})}),(0,L.jsx)(yW,{path:`/admin/super/asyncjob`,element:(0,L.jsx)(CK,{})}),(0,L.jsx)(yW,{path:`/admin/super/db/:tab`,element:(0,L.jsx)(mK,{})}),(0,L.jsx)(yW,{path:`/admin/super/db`,element:(0,L.jsx)(mK,{})}),(0,L.jsx)(yW,{path:`/admin/config`,element:(0,L.jsx)(gK,{})}),(0,L.jsxs)(yW,{path:`/admin`,element:(0,L.jsx)(yK,{}),children:[(0,L.jsx)(yW,{path:`bots/new`,element:(0,L.jsx)(VG,{})}),(0,L.jsx)(yW,{path:`bots`,element:(0,L.jsx)(RG,{})}),(0,L.jsx)(yW,{path:`clients/new`,element:(0,L.jsx)(HG,{})}),(0,L.jsx)(yW,{path:`clients`,element:(0,L.jsx)(zG,{})}),(0,L.jsx)(yW,{path:`details`,element:(0,L.jsx)(_K,{})}),(0,L.jsx)(yW,{path:`invite`,element:(0,L.jsx)(hK,{})}),(0,L.jsx)(yW,{path:`patients`,element:(0,L.jsx)(_W,{to:`/admin/users`,replace:!0})}),(0,L.jsx)(yW,{path:`users`,element:(0,L.jsx)(RK,{})}),(0,L.jsx)(yW,{path:`project`,element:(0,L.jsx)(_K,{})}),(0,L.jsx)(yW,{path:`secrets`,element:(0,L.jsx)(bK,{})}),(0,L.jsx)(yW,{path:`sites`,element:(0,L.jsx)(xK,{})})]}),(0,L.jsx)(yW,{path:`/lab/assays`,element:(0,L.jsx)($J,{})}),(0,L.jsx)(yW,{path:`/lab/panels`,element:(0,L.jsx)(nY,{})}),(0,L.jsxs)(yW,{path:`/:resourceType/new`,element:(0,L.jsx)(RJ,{}),children:[(0,L.jsx)(yW,{index:!0,element:(0,L.jsx)(IY,{})}),(0,L.jsx)(yW,{path:`form`,element:(0,L.jsx)(IY,{})}),(0,L.jsx)(yW,{path:`json`,element:(0,L.jsx)(RY,{})}),(0,L.jsx)(yW,{path:`profiles`,element:(0,L.jsx)(IY,{})})]}),(0,L.jsxs)(yW,{path:`/:resourceType/:id`,element:(0,L.jsx)(pX,{}),children:[(0,L.jsx)(yW,{index:!0,element:(0,L.jsx)(_X,{})}),(0,L.jsx)(yW,{path:`apply`,element:(0,L.jsx)(pY,{})}),(0,L.jsx)(yW,{path:`apps`,element:(0,L.jsx)(mY,{})}),(0,L.jsx)(yW,{path:`event`,element:(0,L.jsx)(gY,{})}),(0,L.jsx)(yW,{path:`blame`,element:(0,L.jsx)(_Y,{})}),(0,L.jsx)(yW,{path:`bots`,element:(0,L.jsx)(XY,{})}),(0,L.jsx)(yW,{path:`builder`,element:(0,L.jsx)(EY,{})}),(0,L.jsx)(yW,{path:`checklist`,element:(0,L.jsx)(DY,{})}),(0,L.jsx)(yW,{path:`delete`,element:(0,L.jsx)(kY,{})}),(0,L.jsx)(yW,{path:`details`,element:(0,L.jsx)(jY,{})}),(0,L.jsx)(yW,{path:`edit`,element:(0,L.jsx)(MY,{})}),(0,L.jsx)(yW,{path:`editor`,element:(0,L.jsx)(CY,{})}),(0,L.jsxs)(yW,{path:`history`,children:[(0,L.jsx)(yW,{index:!0,element:(0,L.jsx)(LY,{})}),(0,L.jsx)(yW,{path:`:versionId/:tab`,element:(0,L.jsx)(mX,{})}),(0,L.jsx)(yW,{path:`:versionId`,element:(0,L.jsx)(mX,{})})]}),(0,L.jsxs)(yW,{path:`_history`,children:[(0,L.jsx)(yW,{index:!0,element:(0,L.jsx)(LY,{})}),(0,L.jsx)(yW,{path:`:versionId/:tab`,element:(0,L.jsx)(mX,{})}),(0,L.jsx)(yW,{path:`:versionId`,element:(0,L.jsx)(mX,{})})]}),(0,L.jsx)(yW,{path:`json`,element:(0,L.jsx)(zY,{})}),(0,L.jsx)(yW,{path:`preview`,element:(0,L.jsx)(GY,{})}),(0,L.jsx)(yW,{path:`responses`,element:(0,L.jsx)(QY,{})}),(0,L.jsx)(yW,{path:`report`,element:(0,L.jsx)(eX,{})}),(0,L.jsx)(yW,{path:`ranges`,element:(0,L.jsx)($Y,{})}),(0,L.jsx)(yW,{path:`subscriptions`,element:(0,L.jsx)(hX,{})}),(0,L.jsx)(yW,{path:`timeline`,element:(0,L.jsx)(_X,{})}),(0,L.jsx)(yW,{path:`tools`,element:(0,L.jsx)(yX,{})}),(0,L.jsx)(yW,{path:`payload`,element:(0,L.jsx)(OY,{})}),(0,L.jsx)(yW,{path:`profiles`,element:(0,L.jsx)(KY,{})}),(0,L.jsx)(yW,{path:`export`,element:(0,L.jsx)(NY,{})})]}),(0,L.jsx)(yW,{path:`/:resourceType`,element:(0,L.jsx)(QJ,{})}),(0,L.jsx)(yW,{path:`/`,element:(0,L.jsx)(QJ,{})})]})})}function EX(){let e=Q(),t=e.getUserConfiguration(),n=kU(),[r]=SG();return e.isLoading()?(0,L.jsx)(fj,{}):(0,L.jsx)(bN,{logo:(0,L.jsx)(RN,{size:24}),pathname:n.pathname,searchParams:r,version:SD,menus:DX(t),displayAddBookmark:!!t?.id,children:(0,L.jsx)(b.Suspense,{fallback:(0,L.jsx)(fj,{}),children:(0,L.jsx)(TX,{})})})}function DX(e){let t=e?.menu?.map(e=>({title:e.title,links:e.link?.map(e=>({label:e.name,href:e.target,icon:kX(e.target)}))||[]}))||[];return t.push({title:`Settings`,links:[{label:`Security`,href:`/security`,icon:(0,L.jsx)(MA,{})}]}),t}var OX={Patient:tj,Practitioner:OA,Organization:rA,ServiceRequest:GA,DiagnosticReport:JA,Questionnaire:DA,Project:EA,admin:$k,AccessPolicy:jA,Subscription:cj,batch:zA,Observation:LA};function kX(e){if(e.includes(`admin/super/db`))return(0,L.jsx)(hA,{});try{let t=new URL(e,`https://app.medplum.com`).pathname.split(`/`)[1];if(t in OX){let e=OX[t];return(0,L.jsx)(e,{})}}catch{}}async function AX(){let e=aY(),t=new PD({baseUrl:e.baseUrl,clientId:e.clientId,storagePrefix:`@medplum:`,cacheTime:6e4,autoBatchTime:100,onUnauthenticated:()=>{window.location.pathname!==`/signin`&&window.location.pathname!==`/oauth`&&(window.location.href=`/signin?next=`+encodeURIComponent(window.location.pathname+window.location.search))}}),n=ci({headings:{sizes:{h1:{fontSize:`1.125rem`,fontWeight:`500`,lineHeight:`2.0`}}},fontSizes:{xs:`0.6875rem`,sm:`0.875rem`,md:`0.875rem`,lg:`1.0rem`,xl:`1.125rem`}}),r=lG([{path:`*`,element:(0,L.jsx)(EX,{})}]);(0,NG.createRoot)(document.getElementById(`root`)).render((0,L.jsx)(b.StrictMode,{children:(0,L.jsx)(MO,{medplum:t,navigate:e=>r.navigate(e),children:(0,L.jsxs)(Br,{theme:n,children:[(0,L.jsx)(sx,{position:`bottom-right`}),(0,L.jsx)(pW,{router:r})]})})}))}AX().catch(console.error);
|
|
237
|
-
//# sourceMappingURL=index-
|
|
236
|
+
}`,MY=`MSH|^~\\&|ADT1|MCM|LABADT|MCM|198808181126|SECURITY|ADT|MSG00001|P|2.1\rPID|||PATID1234^5^M11||JONES^WILLIAM^A^III||19610615|M-||C|1200 N ELM STREET^^GREENSBORO^NC^27401-1020|GL|(919)379-1212|(919)271-3434||S||PATID12345001^2^M10|123456789|987654^NC\rNK1|1|JONES^BARBARA^K|SPO|||||20011105\rPV1|1|I|2000^2012^01||||004777^LEBAUER^SIDNEY^J.|||SUR||-||1|A0-`;function NY(){let e=Q(),{id:t}=BU(),[n,r]=(0,b.useState)(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(jY),[u,d]=(0,b.useState)(MY),[f,p]=(0,b.useState)(IE.FHIR_JSON),m=(0,b.useRef)(null),h=(0,b.useRef)(null),[g,_]=(0,b.useState)(!1);(0,b.useEffect)(()=>{e.readResource(`Bot`,t).then(async t=>{r(t),a(t.runtimeVersion===`vmcontext`?`commonjs`:`esnext`),s(await PY(e,t))}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[e,t]);let v=(0,b.useCallback)(async()=>bj(m.current,{command:`getValue`}),[]),y=(0,b.useCallback)(async()=>bj(m.current,{command:`getOutput`}),[]),x=(0,b.useCallback)(async()=>f===IE.FHIR_JSON?JSON.parse(c):u,[f,c,u]),S=(0,b.useCallback)(async n=>{n.preventDefault(),n.stopPropagation(),_(!0);try{let n=await v(),r=await y(),a=await e.createAttachment({data:n,filename:`index.ts`,contentType:IE.TYPESCRIPT}),o=await e.createAttachment({data:r,filename:i===`commonjs`?`index.cjs`:`index.mjs`,contentType:IE.JAVASCRIPT}),s=[{op:`add`,path:`/sourceCode`,value:a},{op:`add`,path:`/executableCode`,value:o}];await e.patchResource(`Bot`,t,s),Y({color:`green`,message:`Saved`})}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}finally{_(!1)}},[e,t,i,v,y]),C=(0,b.useCallback)(async n=>{n.preventDefault(),n.stopPropagation(),_(!0);try{await e.post(e.fhirUrl(`Bot`,t,`$deploy`)),Y({color:`green`,message:`Deployed`})}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}finally{_(!1)}},[e,t]),w=(0,b.useCallback)(async n=>{n.preventDefault(),n.stopPropagation(),_(!0);try{let n=await x(),r=await e.post(e.fhirUrl(`Bot`,t,`$execute`),n,f);await bj(h.current,{command:`setValue`,value:r}),Y({color:`green`,message:`Success`})}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}finally{_(!1)}},[e,t,x,f]);return!n||o===void 0?null:(0,L.jsxs)(wm,{m:0,gutter:0,style:{overflow:`hidden`},children:[(0,L.jsx)(wm.Col,{span:8,children:(0,L.jsxs)(vl,{m:2,pb:`xs`,pr:`xs`,pt:`xs`,shadow:`md`,mih:400,children:[(0,L.jsx)(AY,{iframeRef:m,language:`typescript`,module:i,testId:`code-frame`,defaultValue:o,minHeight:`528px`}),(0,L.jsxs)(H,{justify:`flex-end`,gap:`xs`,children:[(0,L.jsx)(W,{type:`button`,onClick:S,loading:g,leftSection:(0,L.jsx)(vA,{size:`1rem`}),children:`Save`}),(0,L.jsx)(W,{type:`button`,onClick:C,loading:g,leftSection:(0,L.jsx)(pA,{size:`1rem`}),children:`Deploy`}),(0,L.jsx)(W,{type:`button`,onClick:w,loading:g,leftSection:(0,L.jsx)(GA,{size:`1rem`}),children:`Execute`})]})]})}),(0,L.jsxs)(wm.Col,{span:4,children:[(0,L.jsxs)(vl,{m:2,pb:`xs`,pr:`xs`,pt:`xs`,shadow:`md`,children:[(0,L.jsx)(Tg,{data:[{label:`FHIR`,value:IE.FHIR_JSON},{label:`HL7`,value:IE.HL7_V2}],onChange:e=>p(e.currentTarget.value)}),f===IE.FHIR_JSON?(0,L.jsx)(ch,{value:c,onChange:e=>l(e),autosize:!0,minRows:15}):(0,L.jsx)(`textarea`,{className:OY.hl7Input,value:u,onChange:e=>d(e.currentTarget.value),rows:15})]}),(0,L.jsx)(vl,{m:2,p:`xs`,shadow:`md`,children:(0,L.jsx)(kY,{iframeRef:h,className:`medplum-bot-output-frame`,testId:`output-frame`,minHeight:`200px`})})]})]})}async function PY(e,t){if(t.sourceCode?.url){let n=t.sourceCode.url?.split(`/`)?.find(_C);return(await e.download(e.fhirUrl(`Binary`,n))).text()}return t.code??``}function FY(e){let t=e.meta;return t&&={...t,lastUpdated:void 0,versionId:void 0,author:void 0},{...e,meta:t}}function IY(){let e=Q(),{resourceType:t,id:n}=BU(),r={reference:t+`/`+n},i=(0,b.useCallback)(t=>{e.updateResource(FY(t)).then(()=>{Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})},[e]);switch(t){case`PlanDefinition`:return(0,L.jsx)(zN,{children:(0,L.jsx)(uz,{value:r,onSubmit:i})});case`Questionnaire`:return(0,L.jsx)(zN,{children:(0,L.jsx)(xz,{questionnaire:r,onSubmit:i})});default:return null}}function LY(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t}),r=IU();return n?(0,L.jsx)(zN,{children:(0,L.jsx)(Kz,{value:n,onStart:(e,t)=>r(`/forms/${KS(t)}`)?.catch(console.error),onEdit:(e,t,n)=>r(`/${n.reference}}`)?.catch(console.error)})}):null}function RY(){let e=Q(),{resourceType:t,id:n}=BU(),r=BO({reference:t+`/`+n}),i=(0,b.useRef)(0),[a,o]=(0,b.useState)([]);(0,b.useEffect)(()=>{r&&o((r.payload??WC).map(e=>({key:i.current++,item:e})))},[r]);let s=(0,b.useCallback)((e,t)=>{o(n=>n.map(n=>n.key===e?{...n,item:{...n.item,contentString:t}}:n))},[]),c=(0,b.useCallback)(()=>{o(e=>[...e,{key:i.current++,item:{contentString:``}}])},[]),l=(0,b.useCallback)(()=>{r&&e.updateResource(FY({...r,payload:a.map(e=>e.item)})).then(()=>Y({color:`green`,message:`Saved`})).catch(e=>Y({color:`red`,message:Lx(e)}))},[e,r,a]);return r?(0,L.jsx)(zN,{children:(0,L.jsxs)(K,{children:[a.filter(({item:e})=>`contentString`in e).map(({key:e,item:t})=>(0,L.jsx)(ah,{autosize:!0,minRows:3,maxRows:20,value:t.contentString??``,onChange:t=>s(e,t.currentTarget.value),placeholder:`Enter content...`},e)),(0,L.jsxs)(H,{justify:`flex-end`,children:[(0,L.jsx)(W,{variant:`outline`,onClick:c,children:`Add payload`}),(0,L.jsx)(W,{onClick:l,children:`Save`})]}),(0,L.jsx)(U,{size:`xs`,c:`dimmed`,children:`This tab manages string payloads only. Attachments and References can be managed in the Edit tab.`})]})}):null}function zY(){let e=Q(),{resourceType:t,id:n}=BU(),r=IU();return(0,L.jsxs)(zN,{children:[(0,L.jsxs)(`p`,{children:[`Are you sure you want to delete this `,t,`?`]}),(0,L.jsx)(W,{color:`red`,onClick:()=>{e.deleteResource(t,n).then(()=>r(`/${t}`)?.catch(console.error)).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},children:`Delete`})]})}var BY={selectProfileBtn:`_selectProfileBtn_tbaz6_1`,chevron:`_chevron_tbaz6_13`};function VY(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t}),[r,i]=(0,b.useState)(),a=Ff({onDropdownClose:()=>a.resetSelectedOption()}),o=(0,b.useMemo)(()=>{if(cC(n?.meta?.profile))return[(0,L.jsx)(Rf.Option,{value:``,children:`None`},``),...n.meta.profile.map(e=>(0,L.jsx)(Rf.Option,{value:e,children:e},e))]},[n?.meta?.profile]);if((0,b.useEffect)(()=>{n?.meta?.profile?.length===1&&i(n.meta.profile[0])},[n?.meta?.profile]),!n)return null;let s;return cC(o)&&(s=(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsxs)(K,{align:`flex-end`,gap:`xs`,children:[(0,L.jsxs)(Rf,{store:a,width:250,position:`bottom-end`,withinPortal:!1,onOptionSubmit:e=>{i(e),a.closeDropdown()},children:[(0,L.jsx)(Rf.Target,{children:(0,L.jsx)(pl,{onClick:()=>a.toggleDropdown(),children:(0,L.jsxs)(tm,{fw:`bold`,fs:`sm`,className:BY.selectProfileBtn,children:[(0,L.jsx)(`span`,{children:`Pick profile`}),(0,L.jsx)(lA,{stroke:1.5,className:BY.chevron})]})})}),(0,L.jsx)(Rf.Dropdown,{w:`max-content`,children:(0,L.jsx)(Rf.Options,{children:o})})]}),(0,L.jsx)(B,{children:r?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(U,{span:!0,size:`sm`,c:`dimmed`,children:`Displaying profile:\xA0`}),(0,L.jsx)(U,{span:!0,size:`sm`,children:r||`Nothing selected`})]}):(0,L.jsx)(U,{span:!0,size:`sm`,c:`dimmed`,children:`No profile displayed`})})]})})),(0,L.jsx)(zN,{children:(0,L.jsxs)(K,{gap:`xl`,children:[s,(0,L.jsx)(aL,{value:n,profileUrl:r})]})})}function HY(){let e=Q(),{resourceType:t,id:n}=BU(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(),s=IU(),[c,l]=(0,b.useState)();(0,b.useEffect)(()=>{e.readResource(t,n).then(e=>{i(gC(e)),o(gC(e))}).catch(e=>{l(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n]);let u=(0,b.useCallback)(r=>{l(void 0),e.updateResource(FY(r)).then(()=>{s(`/${t}/${n}/details`)?.catch(console.error),Y({id:`succes`,color:`green`,message:`Success`})}).catch(e=>{l(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n,s]),d=(0,b.useCallback)(i=>{l(void 0);let a=(0,QI.createPatch)(r,FY(i));e.patchResource(t,n,a).then(()=>{s(`/${t}/${n}/details`)?.catch(console.error),Y({id:`succes`,color:`green`,message:`Success`})}).catch(e=>{l(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n,r,s]),f=(0,b.useCallback)(()=>s(`/${t}/${n}/delete`)?.catch(console.error),[s,t,n]);return a?(0,L.jsx)(zN,{children:(0,L.jsx)(lB,{defaultValue:a,onSubmit:u,onPatch:d,onDelete:f,outcome:c})}):null}function UY(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t});return n?(0,L.jsx)(zN,{maw:700,children:n.resourceType===`Patient`?(0,L.jsx)(iz,{patient:n}):(0,L.jsx)(Ed,{icon:(0,L.jsx)(qk,{size:16}),title:`Unsupported export type`,color:`red`,children:`This page is only supported for Patient resources`})}):null}function WY({resource:e,currentProfile:t,onChange:n}){let r=e.resourceType,i=Q(),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{i.searchResources(`StructureDefinition`,{type:r,derivation:`constraint`,_count:50}).then(e=>{o(e.filter(eF))}).catch(console.error)},[i,n,r]),(0,L.jsx)(ib,{value:t?.url,onChange:e=>{let t=a?.find(t=>t.url===e);t&&n(t)},children:(0,L.jsx)(ib.List,{children:a?.map(t=>{let n=e.meta?.profile?.includes(t.url),r=n?`This profile is present in this resource's meta.profile property.`:`This profile is not included in this resource's meta.profile property.`;return(0,L.jsx)(ib.Tab,{value:t.url,title:r,rightSection:n&&(0,L.jsx)(cb,{variant:`outline`,color:`green`,size:`xs`,style:{borderStyle:`none`},children:(0,L.jsx)(fj,{size:`90%`})}),children:t.title||t.name},t.url)})})})}function GY(e,t){let n=Q(),r=IU();return{defaultValue:{resourceType:e},handleSubmit:e=>{t&&t(void 0),n.createResource(e).then(e=>r(`/`+e.resourceType+`/`+e.id)).catch(e=>{t&&t(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1,styles:{description:{whiteSpace:`pre-line`}}})})}}}function KY(){let{resourceType:e}=BU(),t=NU(),[n,r]=(0,b.useState)(),{defaultValue:i,handleSubmit:a}=GY(e,r),[o,s]=(0,b.useState)(),c=t.pathname.toLowerCase().endsWith(`profiles`),l=(0,b.useCallback)(e=>{let t=FY(e);o&&HC(t,o.url),a(t)},[o,a]);return c?(0,L.jsx)(zN,{children:(0,L.jsxs)(K,{children:[(0,L.jsx)(WY,{resource:i,currentProfile:o,onChange:s}),o?(0,L.jsx)(lB,{defaultValue:i,onSubmit:l,outcome:n,profileUrl:o.url},o.url):(0,L.jsx)(U,{my:`lg`,fz:`lg`,fs:`italic`,ta:`center`,children:`Select a profile above`})]})}):(0,L.jsx)(zN,{children:(0,L.jsx)(lB,{defaultValue:i,onSubmit:a,outcome:n})})}function qY(){let e=Q(),{resourceType:t,id:n}=BU();return(0,L.jsx)(zN,{children:(0,L.jsx)(uB,{history:e.readHistory(t,n).read()})})}function JY(){let{resourceType:e}=BU(),[t,n]=(0,b.useState)(),{defaultValue:r,handleSubmit:i}=GY(e,n),a=(0,b.useCallback)(e=>{i(JSON.parse(e[`new-resource`]))},[i]);return(0,L.jsxs)(zN,{children:[t&&(0,L.jsx)(qN,{outcome:t}),(0,L.jsxs)(GM,{onSubmit:a,children:[(0,L.jsx)(ch,{name:`new-resource`,"data-testid":`create-resource-json`,autosize:!0,minRows:24,defaultValue:rC(r,!0),formatOnBlur:!0,deserialize:JSON.parse}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`OK`})})]})]})}function YY(){let e=Q(),{resourceType:t,id:n}=BU(),r=BO({reference:t+`/`+n}),i=IU(),[a,o]=(0,b.useState)(),s=(0,b.useCallback)(r=>{e.updateResource(FY(JSON.parse(r.resource))).then(()=>{o(void 0),i(`/${t}/${n}/details`)?.catch(console.error),Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})},[e,t,n,i]);return r?(0,L.jsxs)(zN,{children:[a&&(0,L.jsx)(qN,{outcome:a}),(0,L.jsxs)(GM,{onSubmit:s,children:[(0,L.jsx)(ch,{name:`resource`,"data-testid":`resource-json`,autosize:!0,minRows:24,defaultValue:rC(r,!0),formatOnBlur:!0,deserialize:JSON.parse}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,wrap:`nowrap`,children:(0,L.jsx)(W,{type:`submit`,children:`OK`})})]})]}):null}function XY(e){let{resourceType:t,id:n}=e;return(0,L.jsxs)(zN,{children:[(0,L.jsxs)(Ed,{icon:(0,L.jsx)(qk,{size:16}),mb:`xl`,children:[`This is just a preview! Access your form here:`,(0,L.jsx)(`br`,{}),(0,L.jsx)(Nd,{href:`/forms/${n}`,children:`/forms/${n}`})]}),(0,L.jsx)(DI,{questionnaire:{reference:t+`/`+n},onSubmit:()=>alert(`You submitted the preview`)})]})}var ZY={propertyTable:`_propertyTable_1xts4_1`,propertiesTitle:`_propertiesTitle_1xts4_17`};function QY(e){return e.valueCode||e.valueString||(e.valueBoolean===void 0?void 0:String(e.valueBoolean))||(e.valueInteger===void 0?void 0:String(e.valueInteger))||(e.valueDecimal===void 0?void 0:String(e.valueDecimal))||e.valueDate||e.valueDateTime||`N/A`}function $Y(e){let{properties:t}=e,n=t.map(e=>{let t=``,n=``,r=``;return e.part?.forEach(e=>{e.name===`code`?t=e.valueCode||``:e.name===`description`?n=e.valueString||``:e.name===`value`&&(r=QY(e))}),{code:t,description:n,value:r}});return(0,L.jsxs)(q,{className:ZY.propertyTable,children:[(0,L.jsx)(q.Thead,{children:(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Th,{children:`Code`}),(0,L.jsx)(q.Th,{children:`Description`}),(0,L.jsx)(q.Th,{children:`Value`})]})}),(0,L.jsx)(q.Tbody,{children:n.map((e,t)=>(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:e.code}),(0,L.jsx)(q.Td,{children:e.description}),(0,L.jsx)(q.Td,{children:e.value})]},`property-${t}`))})]})}function eX(e){let{valueSet:t}=e,n=Q(),r=t.url,[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(),[c,l]=(0,b.useState)(!1),[u,d]=(0,b.useState)(),f=(0,b.useCallback)(async e=>{if(a(e),s(void 0),d(void 0),!e?.code||!e?.system){l(!1);return}l(!0);try{let t=new URLSearchParams({system:e.system,code:e.code}),r=n.fhirUrl(`CodeSystem`,`$lookup`)+`?`+t.toString();s(await n.get(r))}catch(e){d(e instanceof Error?e:Error(String(e)))}finally{l(!1)}},[n]),p=(0,b.useMemo)(()=>o?.parameter?.filter(e=>e.name===`property`&&e.part)??[],[o]),m=p.length>0;return(0,L.jsx)(zN,{children:(0,L.jsxs)(K,{gap:`xl`,children:[(0,L.jsx)($M,{binding:r,placeholder:`Select a value from the ValueSet`,onChange:e=>f(e[0]),defaultValue:i,maxValues:1}),i?(0,L.jsxs)(K,{gap:`md`,children:[(0,L.jsxs)(kN,{children:[(0,L.jsx)(AN,{term:`Code`,children:i.code}),i.system&&(0,L.jsx)(AN,{term:`System`,children:i.system}),i.display&&(0,L.jsx)(AN,{term:`Display`,children:i.display})]}),c&&(0,L.jsxs)(H,{gap:`xs`,children:[(0,L.jsx)(su,{size:`sm`}),(0,L.jsx)(U,{size:`sm`,c:`dimmed`,children:`Loading properties...`})]}),!c&&u&&(0,L.jsxs)(Ed,{icon:(0,L.jsx)(qk,{size:16}),title:`Lookup Failed`,color:`red`,children:[`Failed to retrieve code information: `,Lx(u)]}),!c&&!u&&m&&(0,L.jsx)(pj,{children:(0,L.jsxs)(K,{gap:`xs`,mt:`lg`,children:[(0,L.jsx)(U,{fw:500,size:`sm`,c:`dimmed`,className:ZY.propertiesTitle,children:`Properties`}),(0,L.jsx)($Y,{properties:p})]})})]}):null]})})}function tX(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t});return n?n.resourceType===`Questionnaire`?(0,L.jsx)(XY,{resourceType:e,id:t}):n.resourceType===`ValueSet`?(0,L.jsx)(eX,{valueSet:n}):null:null}function nX(){let e=Q(),{resourceType:t,id:n}=BU(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)();return(0,b.useEffect)(()=>{e.readResource(t,n).then(e=>i(gC(e))).catch(e=>{Y({color:`red`,message:Lx(e)})})},[e,t,n]),r?(0,L.jsxs)(zN,{children:[(0,L.jsxs)(J,{order:2,children:[`Available `,t,` profiles`]}),(0,L.jsx)(K,{children:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(WY,{resource:r,currentProfile:a,onChange:o}),a?(0,L.jsx)(rX,{profile:a,resource:r,onResourceUpdated:e=>i(e)},a.url):(0,L.jsx)(U,{my:`lg`,fz:`lg`,fs:`italic`,ta:`center`,children:`Select a profile above`})]})})]}):null}var rX=({profile:e,resource:t,onResourceUpdated:n})=>{let r=Q(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)(()=>t.meta?.profile?.includes(e.url)),c=(0,b.useCallback)(t=>{a(void 0);let i=FY(t);o?HC(i,e.url):UC(i,e.url),r.updateResource(i).then(e=>{n(e),Y({color:`green`,message:`Success`})}).catch(e=>{a(Ix(e)),Y({color:`red`,message:Lx(e),autoClose:!1})})},[r,e.url,n,o]);return(0,L.jsxs)(K,{children:[(0,L.jsx)(Ay,{size:`md`,checked:o,label:`Conform resource to ${e.title}`,onChange:e=>s(e.currentTarget.checked),"data-testid":`profile-toggle`}),o?(0,L.jsx)(lB,{profileUrl:e.url,defaultValue:t,onSubmit:c,outcome:i}):(0,L.jsx)(`form`,{noValidate:!0,onSubmit:e=>{e.preventDefault(),c(t)},children:(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`OK`})})})]})},iX={"Create Only":`create`,"Update Only":`update`,"Delete Only":`delete`,"All Interactions":void 0},aX=Object.keys(iX);function oX(){let e=Q(),{id:t}=BU(),n=BO({reference:`Questionnaire/${t}`}),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(`create`),[s,c]=(0,b.useState)(0),l=e.searchResources(`Subscription`,`status=active&_count=100`).read().filter(e=>sX(e,n));function u(){r&&n&&e.createResource({resourceType:`Subscription`,status:`active`,reason:`Connect bot ${r.name} to questionnaire responses`,criteria:`QuestionnaireResponse?questionnaire=${n.url?`${n.url},${GS(n)}`:GS(n)}`,channel:{type:`rest-hook`,endpoint:GS(r)},...a?{extension:[{url:`https://medplum.com/fhir/StructureDefinition/subscription-supported-interaction`,valueCode:a}]}:void 0}).then(()=>{i(void 0),c(Date.now()),e.invalidateSearches(`Subscription`),Y({color:`green`,message:`Success`})}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Bots`}),(0,L.jsxs)(K,{children:[l.length===0&&(0,L.jsx)(`p`,{children:`No bots found.`}),l.map(e=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`h3`,{children:(0,L.jsx)(MI,{value:{reference:e.channel?.endpoint},link:!0})}),(0,L.jsxs)(`p`,{children:[`Criteria: `,e.criteria]})]},e.id))]}),(0,L.jsx)(um,{}),(0,L.jsxs)(K,{mt:10,children:[(0,L.jsx)(nd,{size:`lg`,htmlFor:`bot`,children:`Connect to bot`}),(0,L.jsxs)(H,{children:[(0,L.jsx)(EF,{name:`bot`,resourceType:`Bot`,onChange:e=>i(e)}),(0,L.jsx)(W,{onClick:u,children:`Connect`})]}),(0,L.jsx)(H,{children:(0,L.jsx)(Tg,{name:`subscription-trigger-event`,defaultValue:`Create Only`,label:`Subscription Trigger Event`,data:aX,onChange:e=>o(iX[e.target.value])})})]}),(0,L.jsx)(`div`,{style:{display:`none`},children:s})]})}function sX(e,t){if(!t)return!1;let n=e.criteria||``,r=e.channel?.endpoint||``;return n.startsWith(`QuestionnaireResponse?`)&&r.startsWith(`Bot/`)&&(n.includes(GS(t))||(t.url?n.includes(t.url):!1))}function cX(){let{id:e}=BU(),t=IU(),n=Q().readReference({reference:`Questionnaire/${e}`}).read(),[r,i]=(0,b.useState)({resourceType:`QuestionnaireResponse`,filters:[{code:`questionnaire`,operator:Z.EQUALS,value:n.url?`${n.url},Questionnaire/${e}`:`Questionnaire/${e}`}],fields:[`id`,`_lastUpdated`]});return(0,L.jsx)(zN,{children:(0,L.jsx)(OR,{search:r,onClick:e=>t(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onChange:e=>i(e.definition),hideFilters:!0,hideToolbar:!0})})}function lX(){let e=Q(),{resourceType:t,id:n}=BU(),r=BO({reference:t+`/`+n}),i=(0,b.useCallback)(t=>{e.updateResource(FY(t)).then(()=>{Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})},[e]);return r?(0,L.jsx)(zN,{children:(0,L.jsx)(Rz,{onSubmit:i,definition:r})}):null}function uX(){let{resourceType:e,id:t}=BU(),n=BO({reference:e+`/`+t});return n?(0,L.jsx)(zN,{children:e===`MeasureReport`?(0,L.jsx)(YR,{measureReport:n}):(0,L.jsx)(FI,{value:n})}):null}var dX={container:`_container_1ue98_1`,entry:`_entry_1ue98_14`,active:`_active_1ue98_21`};function fX(e){let t=Q(),n=BO(e.value),[r,i]=(0,b.useState)();return(0,b.useEffect)(()=>{if(!n)return;let e=RG(n);if(!e)return;let r=`reference`in e?e.reference:GS(e);t.search(`ServiceRequest`,`subject=`+r).then(e=>{let t=(e.entry??[]).map(e=>e.resource);lL(t),t.reverse(),i(t)}).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[t,n]),r?(0,L.jsx)(`div`,{"data-testid":`quick-service-requests`,className:dX.container,children:r.map(e=>(0,L.jsxs)(`div`,{className:jn(dX.entry,{[dX.active]:e.id===n?.id}),children:[(0,L.jsx)(`p`,{children:(0,L.jsx)(Sj,{to:e,children:pX(e)})}),e.category?.[0]?.text&&(0,L.jsx)(`p`,{children:e.category[0]?.text}),e.code?.coding?.[0]?.code&&(0,L.jsx)(`p`,{children:e.code.coding[0]?.code}),(0,L.jsx)(`p`,{children:mX(e)})]},e.id))}):null}function pX(e){if(e.identifier){for(let t of e.identifier)if(t.value)return t.value}return e.id||``}function mX(e){return e.authoredOn?e.authoredOn.substring(0,10):e.meta?.lastUpdated?e.meta.lastUpdated.substring(0,10):``}var hX={container:`_container_1l2dh_1`};function gX(e){let t=BO(e.valueSet);if(!t)return null;let n=[``],r=t.compose?.include?.[0]?.concept?.map(e=>e.code);return r&&n.push(...r),e.defaultValue&&!n.includes(e.defaultValue)&&n.push(e.defaultValue),(0,L.jsx)(`div`,{className:hX.container,children:(0,L.jsx)(Tg,{defaultValue:e.defaultValue,onChange:t=>e.onChange(t.currentTarget.value),data:n})})}function _X(e){let t=BO(e.specimen);return t?(0,L.jsxs)(RR,{children:[(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Type`}),(0,L.jsx)(RR.Value,{children:`Specimen`})]}),(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Collected`}),(0,L.jsx)(RR.Value,{children:ZC(t.collection?.collectedDateTime)})]}),(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Specimen Age`}),(0,L.jsx)(RR.Value,{children:vX(t)})]}),t.collection?.collectedDateTime&&t.receivedTime?(0,L.jsxs)(RR.Entry,{children:[(0,L.jsx)(RR.Key,{children:`Specimen Stability`}),(0,L.jsx)(RR.Value,{children:yX(t)})]}):(0,L.jsx)(L.Fragment,{})]}):null}function vX(e){let t=e.collection?.collectedDateTime;if(t)return bX(xX(new Date(t),new Date))}function yX(e){if(!(!e.collection?.collectedDateTime||!e.receivedTime))return bX(xX(new Date(e.collection.collectedDateTime),new Date(e.receivedTime)))}function bX(e){return e.toString().padStart(3,`0`)+`D`}function xX(e,t){let n=t.getTime()-e.getTime();return Math.floor(n/(1e3*3600*24))}function SX(e){let t=[`Timeline`];return e===`Bot`&&t.push(`Editor`,`Subscriptions`),e===`PlanDefinition`&&t.push(`Apply`,`Builder`),e===`Questionnaire`&&t.push(`Preview`,`Builder`,`Bots`,`Responses`),e===`ValueSet`&&t.push(`Preview`),(e===`DiagnosticReport`||e===`MeasureReport`)&&t.push(`Report`),e===`RequestGroup`&&t.push(`Checklist`),e===`ObservationDefinition`&&t.push(`Ranges`),e===`Agent`&&t.push(`Tools`),e===`Communication`&&t.push(`Payload`),t.push(`Details`,`Edit`,`Event`,`History`,`Blame`,`JSON`,`Apps`,`Profiles`),e===`Patient`&&t.push(`Accounts`,`Export`),t}function CX(){let e=Q(),{resourceType:t,id:n}=BU(),r={reference:t+`/`+n},[i,a]=(0,b.useState)(),o=BO(r,a),s=SX(t);async function c(){let r=(await e.readHistory(t,n)).entry?.find(e=>!!e.resource)?.resource;r?l(r):Y({color:`red`,message:`No history to restore`,autoClose:!1})}function l(t){e.updateResource(FY(t)).then(()=>{a(void 0),Y({color:`green`,message:`Success`})}).catch(e=>{Y({color:`red`,message:Lx(e),autoClose:!1})})}if(i)return Px(i)?(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Deleted`}),(0,L.jsx)(`p`,{children:`The resource was deleted.`}),(0,L.jsx)(W,{color:`red`,onClick:c,children:`Restore`})]}):(0,L.jsx)(qN,{outcome:i});function u(e){let t=o,n=t.orderDetail||[];n.length===0&&n.push({}),n[0].text!==e&&(n[0].text=e,l({...t,orderDetail:n}))}let d=o&&RG(o),f=o&&zG(o),p=e.getUserConfiguration()?.option?.find(e=>e.id===`statusValueSet`)?.valueString;return(0,L.jsxs)(L.Fragment,{children:[o?.resourceType===`ServiceRequest`&&p&&(0,L.jsx)(gX,{valueSet:{reference:p},defaultValue:o.orderDetail?.[0]?.text,onChange:u},GS(o)+`-`+o.orderDetail?.[0]?.text),o&&(0,L.jsx)(fX,{value:o}),o&&(0,L.jsxs)(vl,{children:[d&&(0,L.jsx)(sz,{patient:d}),f&&(0,L.jsx)(_X,{specimen:f}),t!==`Patient`&&(0,L.jsx)(YJ,{resource:r}),(0,L.jsx)(ll,{children:(0,L.jsx)(BR,{baseUrl:`/${t}/${n}`,tabs:s})})]}),(0,L.jsx)(SW,{})]})}function wX(){let e=IU(),{resourceType:t,id:n,versionId:r,tab:i}=BU(),a=Q(),[o,s]=(0,b.useState)(!0),[c,l]=(0,b.useState)(),[u,d]=(0,b.useState)();if((0,b.useEffect)(()=>{d(void 0),s(!0),a.readHistory(t,n).then(e=>l(e)).then(()=>s(!1)).catch(e=>{d(e),s(!1)})},[a,t,n]),o)return(0,L.jsx)(mj,{});let f=c?.entry??[],p=f.findIndex(e=>e.resource?.meta?.versionId===r);if(p===-1)return(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Version not found`}),(0,L.jsx)(Sj,{to:`/${t}/${n}`,children:`Return to resource`})]});let m=f[p].resource,h=p<f.length-1?f[p+1].resource:void 0,g=`diff`,_=i||g,v=f.length-p;return(0,L.jsx)(im,{maw:1200,children:(0,L.jsx)(RN,{children:(0,L.jsxs)(K,{gap:`lg`,children:[u&&(0,L.jsx)(`pre`,{"data-testid":`error`,children:JSON.stringify(u,void 0,2)}),(0,L.jsxs)(cy,{cols:2,mb:`lg`,children:[(0,L.jsx)(nv,{total:f.length,value:v,getControlProps:xR,onChange:r=>e(`/${t}/${n}/_history/${f[f.length-r]?.resource?.meta?.versionId}/${_}`)?.catch(console.error)}),(0,L.jsx)(H,{justify:`right`,children:(0,L.jsx)(ey,{data:[{value:`diff`,label:`Diff`},{value:`raw`,label:`Raw`}],value:_,onChange:i=>e(`/${t}/${n}/_history/${r}/${i||g}`)?.catch(console.error)})})]}),(0,L.jsx)(B,{mb:`lg`,children:(0,L.jsxs)(kN,{compact:!0,children:[(0,L.jsx)(AN,{term:`Version ID`,children:m.meta?.versionId}),(0,L.jsx)(AN,{term:`Author`,children:(0,L.jsx)(NI,{value:m.meta?.author,link:!0},m.meta?.author?.reference)}),(0,L.jsx)(AN,{term:`Date/Time`,children:ZC(m.meta?.lastUpdated)})]})}),_===`diff`&&(0,L.jsx)(oB,{original:h??{resourceType:t,id:n},revised:m}),_===`raw`&&(0,L.jsx)(`pre`,{style:{fontSize:`9pt`},children:JSON.stringify(m,void 0,2)})]})})})}function TX(){let{resourceType:e,id:t}=BU(),n=IU(),[r,i]=(0,b.useState)({resourceType:`Subscription`,filters:[{code:`url`,operator:Z.EQUALS,value:`${e}/${t}`}],fields:[`id`,`criteria`,`status`,`_lastUpdated`]});return(0,L.jsx)(zN,{children:(0,L.jsx)(OR,{search:r,onClick:e=>n(`/${e.resource.resourceType}/${e.resource.id}`)?.catch(console.error),onChange:e=>i(e.definition),hideFilters:!0})})}function EX(e){let t=Q(),{resource:n,opened:r,onClose:i}=e,[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(!1);return(0,L.jsx)(ng,{opened:r,onClose:i,title:`Resend Subscriptions`,children:(0,L.jsx)(GM,{onSubmit:(0,b.useCallback)(async()=>{if(n?.id)try{await t.post(t.fhirUrl(n.resourceType,n.id,`$resend`),{subscription:a&&s?GS(s):void 0,verbose:l}),Y({color:`green`,message:`Done`}),i()}catch(e){Y({color:`red`,message:Lx(e),autoClose:!1})}},[t,n,i,a,s,l]),children:(0,L.jsxs)(K,{children:[(0,L.jsx)(cp,{label:`Choose subscription (all subscriptions by default)`,onChange:e=>o(e.currentTarget.checked)}),a&&(0,L.jsx)(EF,{name:`subscription`,resourceType:`Subscription`,placeholder:`Subscription`,onChange:c}),(0,L.jsx)(cp,{label:`Verbose mode`,onChange:e=>u(e.currentTarget.checked)}),(0,L.jsx)(H,{justify:`flex-end`,children:(0,L.jsx)(W,{type:`submit`,children:`Resend`})})]})})})}function DX(){let e=Q(),t=AO(),{resourceType:n,id:r}=BU(),i={reference:n+`/`+r},[a,o]=(0,b.useState)(),s=yn(!1);function c(t,n){return e.updateResource({...t,priority:n})}function l(e,t){c(e,`stat`).then(t).catch(console.error)}function u(e,t){c(e,`routine`).then(t).catch(console.error)}function d(e){t(`/${e.resourceType}/${e.id}`)}function f(e){t(`/${e.resourceType}/${e.id}/edit`)}function p(e){t(`/${e.resourceType}/${e.id}/delete`)}function m(e){o(e),s[1].open()}function h(e){t(`/${e.resourceType}/${e.id}/_history/${e.meta?.versionId}`)}function g(t,n){let r=`aws-textract`;Y({id:r,title:`AWS Textract in Progress`,message:`Extracting text... This may take a moment...`,loading:!0,autoClose:!1}),e.post(e.fhirUrl(t.resourceType,t.id,`$aws-textract`),{}).then(()=>{n(),Sb({id:r,title:`AWS Textract Successful`,message:`Text successfully extracted.`,color:`green`,icon:(0,L.jsx)(sA,{size:`1rem`}),loading:!1,withCloseButton:!0})}).catch(e=>Sb({id:r,title:`AWS Textract Error`,color:`red`,message:Lx(e),icon:(0,L.jsx)(dj,{size:`1rem`}),loading:!1,withCloseButton:!0}))}function _(t){let{primaryResource:n,currentResource:r,reloadTimeline:i}=t,a=r.resourceType===n.resourceType&&r.id===n.id,o=r.resourceType===`Communication`&&r.priority!==`stat`,s=r.resourceType===`Communication`&&r.priority===`stat`,c=a,_=!a,v=!a,y=!a,b=e.getProjectMembership()?.admin,x=b,S=gY()&&(r.resourceType===`DocumentReference`||r.resourceType===`Media`);return(0,L.jsxs)(G.Dropdown,{children:[(0,L.jsx)(G.Label,{children:`Resource`}),o&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(UA,{size:14}),onClick:()=>l(r,i),"aria-label":`Pin ${GS(r)}`,children:`Pin`}),s&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(WA,{size:14}),onClick:()=>u(r,i),"aria-label":`Unpin ${GS(r)}`,children:`Unpin`}),_&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(MA,{size:14}),onClick:()=>d(r),"aria-label":`Details ${GS(r)}`,children:`Details`}),c&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(MA,{size:14}),onClick:()=>h(r),"aria-label":`Details ${GS(r)}`,children:`Details`}),v&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(bA,{size:14}),onClick:()=>f(r),"aria-label":`Edit ${GS(r)}`,children:`Edit`}),b&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Label,{children:`Admin`}),x&&(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(YA,{size:14}),onClick:()=>m(r),"aria-label":`Resend Subscriptions ${GS(r)}`,children:`Resend Subscriptions`})]}),S&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Label,{children:`AWS AI`}),(0,L.jsx)(G.Item,{leftSection:(0,L.jsx)(oj,{size:14}),onClick:()=>g(r,i),"aria-label":`AWS Textract ${GS(r)}`,children:`AWS Textract`})]}),y&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(G.Divider,{}),(0,L.jsx)(G.Label,{children:`Danger zone`}),(0,L.jsx)(G.Item,{color:`red`,leftSection:(0,L.jsx)(sj,{size:14}),onClick:()=>p(r),"aria-label":`Delete ${GS(r)}`,children:`Delete`})]})]})}return(0,L.jsxs)(L.Fragment,{children:[n===`Encounter`&&(0,L.jsx)(wL,{encounter:i,getMenu:_}),n===`Patient`&&(0,L.jsx)(cz,{patient:i,getMenu:_}),n===`ServiceRequest`&&(0,L.jsx)(pB,{serviceRequest:i,getMenu:_}),n!==`Encounter`&&n!==`Patient`&&n!==`ServiceRequest`&&(0,L.jsx)(CL,{resource:i,getMenu:_}),(0,L.jsx)(EX,{resource:a,opened:s[0],onClose:s[1].close},`resend-subscriptions-${a?.id}`)]})}function OX(e){let{opened:t,close:n,version:r,loadingStatus:i,handleStatus:a,handleUpgrade:o}=e,[s,c]=(0,b.useState)(),[l,u]=(0,b.useState)(!1);return(0,b.useEffect)(()=>{t&&(s||DO(`app-tools-page`).then(c).catch(console.error),a())},[t,s,a]),s&&r&&!i?r===`unknown`?(0,L.jsx)(`p`,{children:`Unable to determine the current version of the agent. Check the network connectivity of the agent.`}):r.startsWith(s)?(0,L.jsxs)(`p`,{children:[`This agent is already on the latest version (`,s,`).`]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`p`,{children:[`Are you sure you want to upgrade this agent from version `,r,` to version `,s,`?`]}),(0,L.jsxs)(H,{children:[(0,L.jsx)(W,{onClick:()=>{o(l),n()},"aria-label":`Confirm upgrade`,children:`Confirm Upgrade`}),(0,L.jsx)(cp,{label:`Force`,onChange:e=>u(e.currentTarget.checked)})]})]}):(0,L.jsx)(mj,{})}function kX(){let e=Q(),{id:t}=BU(),n=(0,b.useMemo)(()=>({reference:`Agent/`+t}),[t]),[r,i]=(0,b.useState)(!1),[a,o]=(0,b.useState)(!1),[s,c]=(0,b.useState)(!1),[l,u]=(0,b.useState)(!1),[d,f]=(0,b.useState)(),[p,m]=(0,b.useState)(),[h,g]=(0,b.useState)(),[_,v]=(0,b.useState)(),[y,x]=(0,b.useState)(!1),[S,C]=(0,b.useState)(!1),[w,T]=(0,b.useState)(),[E,{open:D,close:O}]=yn(!1);(0,b.useEffect)(()=>{if(r||a||s||y){C(!0);return}C(!1)},[r,a,s,y]);let k=(0,b.useCallback)(()=>{i(!0),e.get(e.fhirUrl(`Agent`,t,`$status`),{cache:`reload`}).then(e=>{f(e.parameter?.find(e=>e.name===`status`)?.valueCode),m(e.parameter?.find(e=>e.name===`version`)?.valueString),g(e.parameter?.find(e=>e.name===`lastUpdated`)?.valueInstant)}).catch(e=>F(Lx(e))).finally(()=>i(!1))},[e,t]),A=(0,b.useCallback)(t=>{let r=t.host,i=t.pingCount||1;r&&(x(!0),e.pushToAgent(n,r,`PING ${i}`,IE.PING,!0).then(e=>v(e)).catch(e=>F(Lx(e))).finally(()=>x(!1)))},[e,n]),j=(0,b.useCallback)(()=>{o(!0),e.get(e.fhirUrl(`Agent`,t,`$reload-config`),{cache:`reload`}).then(e=>{P(`Agent config reloaded successfully.`)}).catch(e=>F(Lx(e))).finally(()=>o(!1))},[e,t]),M=(0,b.useCallback)(n=>{c(!0);let r=e.fhirUrl(`Agent`,t,`$upgrade`);r.searchParams.set(`force`,String(n)),e.get(r,{cache:`reload`}).then(e=>{P(`Agent upgraded successfully.`)}).catch(e=>F(Lx(e))).finally(()=>c(!1))},[e,t]),N=(0,b.useCallback)(n=>{u(!0);let r=n.logLimit||20;e.get(e.fhirUrl(`Agent`,t,`$fetch-logs${r===void 0?``:`?limit=${r}`}`),{cache:`reload`}).then(e=>{let t=e?.parameter?.find(e=>e.name===`logs`);t&&T(t?.valueString)}).catch(e=>F(Lx(e))).finally(()=>u(!1))},[e,t]);function P(e){Y({color:`green`,title:`Success`,icon:(0,L.jsx)(sA,{size:`1rem`}),message:e})}function F(e){Y({color:`red`,title:`Error`,message:e,autoClose:!1})}return(0,L.jsxs)(zN,{children:[(0,L.jsx)(ng,{opened:E,onClose:O,title:`Upgrade Agent`,centered:!0,children:(0,L.jsx)(OX,{opened:E,close:O,version:p,loadingStatus:r,handleStatus:k,handleUpgrade:M})}),(0,L.jsx)(J,{order:1,children:`Agent Tools`}),(0,L.jsxs)(`div`,{style:{marginBottom:10},children:[`Agent: `,(0,L.jsx)(MI,{value:n,link:!0})]}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Agent Status`}),(0,L.jsx)(`p`,{children:`Retrieve the status of the agent. This tests whether the agent is connected to the Medplum server, and the last time it was able to communicate.`}),(0,L.jsx)(W,{onClick:k,loading:r,disabled:S&&!r,children:`Get Status`}),!r&&d&&(0,L.jsx)(q,{children:(0,L.jsxs)(q.Tbody,{children:[(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:`Status`}),(0,L.jsx)(q.Td,{children:(0,L.jsx)(kI,{status:d})})]}),(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:`Version`}),(0,L.jsx)(q.Td,{children:p})]}),(0,L.jsxs)(q.Tr,{children:[(0,L.jsx)(q.Td,{children:`Last Updated`}),(0,L.jsx)(q.Td,{children:ZC(h,void 0,{timeZoneName:`longOffset`})})]})]})}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Reload Config`}),(0,L.jsx)(`p`,{children:`Reload the configuration of this agent, syncing it with the current version of the Agent resource on the Medplum server.`}),(0,L.jsx)(W,{onClick:j,loading:a,disabled:S&&!a,"aria-label":`Reload config`,children:`Reload Config`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Upgrade Agent`}),(0,L.jsx)(`p`,{children:`Upgrade the version of this agent, to either the latest (default) or a specified version.`}),(0,L.jsx)(W,{onClick:D,loading:s,disabled:S&&!s,"aria-label":`Upgrade agent`,children:`Upgrade`}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsxs)(GM,{onSubmit:N,children:[(0,L.jsx)(J,{order:2,children:`Fetch Logs`}),(0,L.jsx)(`p`,{children:`Fetch logs from the agent.`}),w?.length?(0,L.jsx)(tm,{block:!0,mb:15,children:w}):null,(0,L.jsxs)(H,{children:[(0,L.jsx)(N_,{w:100,id:`logLimit`,name:`logLimit`,placeholder:`20`,label:`Log Limit`}),(0,L.jsx)(W,{mt:22,loading:l,disabled:S&&!l,"aria-label":`Fetch logs`,type:`submit`,children:`Fetch Logs`})]})]}),(0,L.jsx)(um,{my:`lg`}),(0,L.jsx)(J,{order:2,children:`Ping from Agent`}),(0,L.jsx)(`p`,{children:`Send a ping command from the agent to a valid IP address or hostname. Use this tool to troubleshoot local network connectivity.`}),(0,L.jsx)(GM,{onSubmit:A,children:(0,L.jsxs)(H,{children:[(0,L.jsx)(ab,{id:`host`,name:`host`,placeholder:`ex. 127.0.0.1`,label:`IP Address / Hostname`,rightSection:(0,L.jsx)(hu,{size:24,radius:`xl`,variant:`filled`,type:`submit`,"aria-label":`Ping`,loading:y,disabled:S&&!y,children:(0,L.jsx)(ZA,{style:{width:`1rem`,height:`1rem`},stroke:1.5})})}),(0,L.jsx)(N_,{id:`pingCount`,name:`pingCount`,placeholder:`1`,label:`Ping Count`})]})}),!y&&_&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(J,{order:5,mt:`sm`,mb:0,children:`Last Ping`}),(0,L.jsx)(`pre`,{children:_})]})]})}function AX(){let e=IU(),t=Q(),[n,r]=(0,b.useState)();(0,b.useEffect)(()=>{t.get(`auth/me`,{cache:`no-cache`}).then(r).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))},[t]);function i(e){t.post(`auth/revoke`,{loginId:e}).then(()=>t.get(`auth/me`,{cache:`no-cache`})).then(r).then(()=>Y({color:`green`,message:`Login revoked`})).catch(e=>Y({color:`red`,message:Lx(e),autoClose:!1}))}return n?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Security`}),(0,L.jsxs)(kN,{children:[(0,L.jsx)(AN,{term:`ID`,children:(0,L.jsx)(Nd,{href:`/${GS(n.profile)}`,children:n.profile.id})}),(0,L.jsx)(AN,{term:`Resource Type`,children:n.profile.resourceType}),(0,L.jsx)(AN,{term:`Name`,children:JC(n.profile.name?.[0])})]})]}),(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Sessions`}),(0,L.jsxs)(q,{children:[(0,L.jsx)(`thead`,{children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{children:`OS`}),(0,L.jsx)(`th`,{children:`Browser`}),(0,L.jsx)(`th`,{children:`IP Address`}),(0,L.jsx)(`th`,{children:`Auth Method`}),(0,L.jsx)(`th`,{children:`Last Updated`}),(0,L.jsx)(`th`,{})]})}),(0,L.jsx)(`tbody`,{children:n.security.sessions.map(e=>(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`td`,{children:e.os}),(0,L.jsx)(`td`,{children:e.browser}),(0,L.jsx)(`td`,{children:e.remoteAddress}),(0,L.jsx)(`td`,{children:e.authMethod}),(0,L.jsx)(`td`,{children:ZC(e.lastUpdated)}),(0,L.jsx)(`td`,{children:(0,L.jsx)(Nd,{href:`#`,onClick:()=>i(e.id),children:`Revoke`})})]},e.id))})]})]}),(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Password`}),(0,L.jsx)(W,{onClick:()=>e(`/changepassword`)?.catch(console.error),children:`Change password`})]}),(0,L.jsxs)(zN,{children:[(0,L.jsx)(J,{children:`Multi Factor Auth`}),(0,L.jsxs)(`p`,{children:[`Enrolled: `,n.security.mfaEnrolled.toString()]}),!n.security.mfaEnrolled&&(0,L.jsx)(W,{onClick:()=>e(`/mfa`)?.catch(console.error),children:`Enroll`})]})]}):null}function jX(){let{id:e,secret:t}=BU(),n=IU();return(0,L.jsx)(rP,{id:e,secret:t,onSignIn:()=>n(`/signin`)?.catch(console.error)})}function MX(){let e=jO(),t=IU(),[n]=EG(),r=mY(),i=(0,b.useCallback)(()=>{let e=n.get(`next`);t(e?.startsWith(`/`)?e:`/`)?.catch(console.error)},[n,t]);return(0,b.useEffect)(()=>{e&&n.has(`next`)&&i()},[e,n,i]),(0,L.jsxs)(CP,{onSuccess:()=>i(),onForgotPassword:()=>t(`/resetpassword`)?.catch(console.error),onRegister:hY()?()=>t(`/register`)?.catch(console.error):void 0,googleClientId:r.googleClientId,login:n.get(`login`)||void 0,projectId:n.get(`project`)||void 0,children:[(0,L.jsx)(BN,{size:32}),n.get(`project`)!==`new`&&(0,L.jsxs)(J,{order:3,py:`lg`,ta:`center`,children:[`Sign in to `,jj()]}),n.get(`project`)===`new`&&(0,L.jsx)(J,{order:3,py:`lg`,ta:`center`,children:`Sign in again to create a new project`})]})}function NX(){let e=IU(),t=NU(),[n,r]=(0,b.useState)(),[i,a]=(0,b.useState)(),[o,s]=(0,b.useState)();return(0,b.useEffect)(()=>{let e=Object.fromEntries(new URLSearchParams(t.search).entries());r(e.resourceType),a(e.query),s(JSON.parse(e.fields))},[t]),!n||!i||!o?null:(0,L.jsx)(IR,{resourceType:n,checkboxesEnabled:!0,query:i,fields:o,onClick:t=>e(`/${n}/${t.resource.id}`)?.catch(console.error),onAuxClick:e=>window.open(`/${n}/${e.resource.id}`,`_blank`),onBulk:t=>{e(`/bulk/${n}?ids=${t.join(`,`)}`)?.catch(console.error)}})}function PX(){let{id:e,secret:t}=BU(),n=Q(),[r,i]=(0,b.useState)(),[a,o]=(0,b.useState)(!1);return(0,L.jsxs)(zN,{width:450,children:[(0,L.jsx)(qN,{issues:HN(r,void 0)}),(0,L.jsxs)(GM,{onSubmit:()=>{i(void 0);let r={id:e,secret:t};n.post(`auth/verifyemail`,r).then(()=>o(!0)).catch(e=>i(Ix(e)))},children:[(0,L.jsxs)(gd,{direction:`column`,align:`center`,justify:`center`,children:[(0,L.jsx)(BN,{size:32}),(0,L.jsx)(J,{children:`Email address verification required`})]}),!a&&(0,L.jsxs)(K,{children:[(0,L.jsx)(`p`,{children:`In order to sign in, click the button below to verify your ability to receive email at the address this link was sent to.`}),(0,L.jsx)(H,{justify:`flex-end`,mt:`xl`,children:(0,L.jsx)(W,{type:`submit`,children:`Verify email`})})]}),a&&(0,L.jsxs)(`div`,{"data-testid":`success`,children:[`Email verified. You can now\xA0`,(0,L.jsx)(Sj,{to:`/signin`,children:`sign in`}),`.`]})]})]})}function FX(){return(0,L.jsx)(wW,{children:(0,L.jsxs)($,{errorElement:(0,L.jsx)(JJ,{}),children:[(0,L.jsx)($,{path:`/signin`,element:(0,L.jsx)(MX,{})}),(0,L.jsx)($,{path:`/oauth`,element:(0,L.jsx)(vY,{})}),(0,L.jsx)($,{path:`/resetpassword`,element:(0,L.jsx)(bY,{})}),(0,L.jsx)($,{path:`/setpassword/:id/:secret`,element:(0,L.jsx)(jX,{})}),(0,L.jsx)($,{path:`/verifyemail/:id/:secret`,element:(0,L.jsx)(PX,{})}),(0,L.jsx)($,{path:`/register`,element:(0,L.jsx)(yY,{})}),(0,L.jsx)($,{path:`/changepassword`,element:(0,L.jsx)(GJ,{})}),(0,L.jsx)($,{path:`/security`,element:(0,L.jsx)(AX,{})}),(0,L.jsx)($,{path:`/mfa`,element:(0,L.jsx)(fY,{})}),(0,L.jsx)($,{path:`/batch`,element:(0,L.jsx)(UJ,{})}),(0,L.jsx)($,{path:`/bulk/:resourceType`,element:(0,L.jsx)(WJ,{})}),(0,L.jsx)($,{path:`/smart`,element:(0,L.jsx)(NX,{})}),(0,L.jsx)($,{path:`/forms/:id`,element:(0,L.jsx)(XJ,{})}),(0,L.jsx)($,{path:`/admin/super`,element:(0,L.jsx)(HK,{})}),(0,L.jsx)($,{path:`/admin/super/asyncjob/:tab`,element:(0,L.jsx)(OK,{})}),(0,L.jsx)($,{path:`/admin/super/asyncjob`,element:(0,L.jsx)(OK,{})}),(0,L.jsx)($,{path:`/admin/super/db/:tab`,element:(0,L.jsx)(vK,{})}),(0,L.jsx)($,{path:`/admin/super/db`,element:(0,L.jsx)(vK,{})}),(0,L.jsx)($,{path:`/admin/config`,element:(0,L.jsx)(xK,{})}),(0,L.jsxs)($,{path:`/admin`,element:(0,L.jsx)(wK,{}),children:[(0,L.jsx)($,{path:`bots/:membershipId`,element:(0,L.jsx)(bK,{})}),(0,L.jsx)($,{path:`bots/new`,element:(0,L.jsx)(GG,{})}),(0,L.jsx)($,{path:`bots`,element:(0,L.jsx)(HG,{})}),(0,L.jsx)($,{path:`clients/:membershipId`,element:(0,L.jsx)(bK,{})}),(0,L.jsx)($,{path:`clients/new`,element:(0,L.jsx)(KG,{})}),(0,L.jsx)($,{path:`clients`,element:(0,L.jsx)(UG,{})}),(0,L.jsx)($,{path:`details`,element:(0,L.jsx)(SK,{})}),(0,L.jsx)($,{path:`invite`,element:(0,L.jsx)(yK,{})}),(0,L.jsx)($,{path:`patients`,element:(0,L.jsx)(xW,{to:`/admin/users`,replace:!0})}),(0,L.jsx)($,{path:`users/:membershipId`,element:(0,L.jsx)(bK,{})}),(0,L.jsx)($,{path:`users`,element:(0,L.jsx)(qK,{})}),(0,L.jsx)($,{path:`project`,element:(0,L.jsx)(SK,{})}),(0,L.jsx)($,{path:`secrets`,element:(0,L.jsx)(TK,{})}),(0,L.jsx)($,{path:`sites`,element:(0,L.jsx)(EK,{})})]}),(0,L.jsx)($,{path:`/lab/assays`,element:(0,L.jsx)(cY,{})}),(0,L.jsx)($,{path:`/lab/panels`,element:(0,L.jsx)(dY,{})}),(0,L.jsxs)($,{path:`/:resourceType/new`,element:(0,L.jsx)(qJ,{}),children:[(0,L.jsx)($,{index:!0,element:(0,L.jsx)(KY,{})}),(0,L.jsx)($,{path:`form`,element:(0,L.jsx)(KY,{})}),(0,L.jsx)($,{path:`json`,element:(0,L.jsx)(JY,{})}),(0,L.jsx)($,{path:`profiles`,element:(0,L.jsx)(KY,{})})]}),(0,L.jsxs)($,{path:`/:resourceType/:id`,element:(0,L.jsx)(CX,{}),children:[(0,L.jsx)($,{index:!0,element:(0,L.jsx)(DX,{})}),(0,L.jsx)($,{path:`apply`,element:(0,L.jsx)(CY,{})}),(0,L.jsx)($,{path:`apps`,element:(0,L.jsx)(wY,{})}),(0,L.jsx)($,{path:`event`,element:(0,L.jsx)(EY,{})}),(0,L.jsx)($,{path:`blame`,element:(0,L.jsx)(DY,{})}),(0,L.jsx)($,{path:`bots`,element:(0,L.jsx)(oX,{})}),(0,L.jsx)($,{path:`builder`,element:(0,L.jsx)(IY,{})}),(0,L.jsx)($,{path:`checklist`,element:(0,L.jsx)(LY,{})}),(0,L.jsx)($,{path:`delete`,element:(0,L.jsx)(zY,{})}),(0,L.jsx)($,{path:`details`,element:(0,L.jsx)(VY,{})}),(0,L.jsx)($,{path:`edit`,element:(0,L.jsx)(HY,{})}),(0,L.jsx)($,{path:`editor`,element:(0,L.jsx)(NY,{})}),(0,L.jsxs)($,{path:`history`,children:[(0,L.jsx)($,{index:!0,element:(0,L.jsx)(qY,{})}),(0,L.jsx)($,{path:`:versionId/:tab`,element:(0,L.jsx)(wX,{})}),(0,L.jsx)($,{path:`:versionId`,element:(0,L.jsx)(wX,{})})]}),(0,L.jsxs)($,{path:`_history`,children:[(0,L.jsx)($,{index:!0,element:(0,L.jsx)(qY,{})}),(0,L.jsx)($,{path:`:versionId/:tab`,element:(0,L.jsx)(wX,{})}),(0,L.jsx)($,{path:`:versionId`,element:(0,L.jsx)(wX,{})})]}),(0,L.jsx)($,{path:`json`,element:(0,L.jsx)(YY,{})}),(0,L.jsx)($,{path:`preview`,element:(0,L.jsx)(tX,{})}),(0,L.jsx)($,{path:`responses`,element:(0,L.jsx)(cX,{})}),(0,L.jsx)($,{path:`report`,element:(0,L.jsx)(uX,{})}),(0,L.jsx)($,{path:`ranges`,element:(0,L.jsx)(lX,{})}),(0,L.jsx)($,{path:`subscriptions`,element:(0,L.jsx)(TX,{})}),(0,L.jsx)($,{path:`timeline`,element:(0,L.jsx)(DX,{})}),(0,L.jsx)($,{path:`tools`,element:(0,L.jsx)(kX,{})}),(0,L.jsx)($,{path:`payload`,element:(0,L.jsx)(RY,{})}),(0,L.jsx)($,{path:`profiles`,element:(0,L.jsx)(nX,{})}),(0,L.jsx)($,{path:`accounts`,element:(0,L.jsx)(xY,{})}),(0,L.jsx)($,{path:`export`,element:(0,L.jsx)(UY,{})})]}),(0,L.jsx)($,{path:`/:resourceType`,element:(0,L.jsx)(sY,{})}),(0,L.jsx)($,{path:`/`,element:(0,L.jsx)(sY,{})})]})})}function IX(){let e=Q(),t=e.getUserConfiguration(),n=NU(),[r]=EG();return e.isLoading()?(0,L.jsx)(mj,{}):(0,L.jsx)(SN,{logo:(0,L.jsx)(BN,{size:24}),pathname:n.pathname,searchParams:r,version:CD,menus:LX(t),displayAddBookmark:!!t?.id,children:(0,L.jsx)(b.Suspense,{fallback:(0,L.jsx)(mj,{}),children:(0,L.jsx)(FX,{})})})}function LX(e){let t=e?.menu?.map(e=>({title:e.title,links:e.link?.map(e=>({label:e.name,href:e.target,icon:zX(e.target)}))||[]}))||[];return t.push({title:`Settings`,links:[{label:`Security`,href:`/security`,icon:(0,L.jsx)(PA,{})}]}),t}var RX={Patient:rj,Practitioner:AA,Organization:aA,ServiceRequest:qA,DiagnosticReport:XA,Questionnaire:kA,Project:OA,admin:tA,AccessPolicy:NA,Subscription:uj,batch:VA,Observation:zA};function zX(e){if(e.includes(`admin/super/db`))return(0,L.jsx)(_A,{});try{let t=new URL(e,`https://app.medplum.com`).pathname.split(`/`)[1];if(t in RX){let e=RX[t];return(0,L.jsx)(e,{})}}catch{}}async function BX(){let e=mY(),t=new FD({baseUrl:e.baseUrl,clientId:e.clientId,storagePrefix:`@medplum:`,cacheTime:6e4,autoBatchTime:100,onUnauthenticated:()=>{window.location.pathname!==`/signin`&&window.location.pathname!==`/oauth`&&(window.location.href=`/signin?next=`+encodeURIComponent(window.location.pathname+window.location.search))}}),n=ci({headings:{sizes:{h1:{fontSize:`1.125rem`,fontWeight:`500`,lineHeight:`2.0`}}},fontSizes:{xs:`0.6875rem`,sm:`0.875rem`,md:`0.875rem`,lg:`1.0rem`,xl:`1.125rem`}}),r=pG([{path:`*`,element:(0,L.jsx)(IX,{})}]);(0,LG.createRoot)(document.getElementById(`root`)).render((0,L.jsx)(b.StrictMode,{children:(0,L.jsx)(NO,{medplum:t,navigate:e=>r.navigate(e),children:(0,L.jsxs)(Br,{theme:n,children:[(0,L.jsx)(sx,{position:`bottom-right`}),(0,L.jsx)(_W,{router:r})]})})}))}BX().catch(console.error);
|
|
237
|
+
//# sourceMappingURL=index-DqccOnh-.js.map
|