@simoncomputing/mui-bueno-v2 0.24.4 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -11,6 +11,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
11
11
  - Minor increment --> singlular/minor changes. Minimal breaking changes.
12
12
  - Patch increment --> singlular/minor changes. Zero breaking changes.
13
13
 
14
+ ## [0.25.0] - 2026-02-04
15
+
16
+ ### Changed
17
+
18
+ - `Snackbar`
19
+ - Changed default value of the `autoHideDuration` prop from 8 seconds to `undefined`. Since Snackbars can be dismissed by the user, by default they will no longer auto-dismiss unless a value is provided to the `autoHideDuration` prop. This is to avoid the user missing important messages, which should only be dismissed by the user.
20
+
14
21
  ## [0.24.4] - 2026-02-03
15
22
 
16
23
  ### Added
@@ -7,7 +7,7 @@ export type SnackbarProps = {
7
7
  onClose: () => void;
8
8
  /**
9
9
  * milliseconds before the snackbar auto-hides
10
- * @default 8000 (8 seconds)
10
+ * @default undefined (no auto-dismiss)
11
11
  */
12
12
  autoHideDuration?: number;
13
13
  variant?: AlertProps['variant'];
package/dist/index.cjs.js CHANGED
@@ -404,4 +404,4 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
404
404
  3. "-" cannot repeat`);Wt.customSchemes.push([t,e])}function Sce(){Wt.scanner=hce(Wt.customSchemes);for(let t=0;t<Wt.tokenQueue.length;t++)Wt.tokenQueue[t][1]({scanner:Wt.scanner});Wt.parser=yce(Wt.scanner.tokens);for(let t=0;t<Wt.pluginQueue.length;t++)Wt.pluginQueue[t][1]({scanner:Wt.scanner,parser:Wt.parser});return Wt.initialized=!0,Wt}function yx(t){return Wt.initialized||Sce(),bce(Wt.parser.start,t,RA(Wt.scanner.start,t))}yx.scan=RA;function AA(t,e=null,n=null){if(e&&typeof e=="object"){if(n)throw Error(`linkifyjs: Invalid link type ${e}; must be a string`);n=e,e=null}const r=new gx(n),o=yx(t),i=[];for(let s=0;s<o.length;s++){const a=o[s];a.isLink&&(!e||a.t===e)&&r.check(a)&&i.push(a.toFormattedObject(r))}return i}const bx="[\0-   ᠎ -\u2029  ]",Cce=new RegExp(bx),Tce=new RegExp(`${bx}$`),kce=new RegExp(bx,"g");function Ece(t){return t.length===1?t[0].isLink:t.length===3&&t[1].isLink?["()","[]"].includes(t[0].value+t[2].value):!1}function Oce(t){return new rn({key:new En("autolink"),appendTransaction:(e,n,r)=>{const o=e.some(u=>u.docChanged)&&!n.doc.eq(r.doc),i=e.some(u=>u.getMeta("preventAutolink"));if(!o||i)return;const{tr:s}=r,a=e7(n.doc,[...e]);if(s7(a).forEach(({newRange:u})=>{const f=n7(r.doc,u,g=>g.isTextblock);let p,m;if(f.length>1)p=f[0],m=r.doc.textBetween(p.pos,p.pos+p.node.nodeSize,void 0," ");else if(f.length){const g=r.doc.textBetween(u.from,u.to," "," ");if(!Tce.test(g))return;p=f[0],m=r.doc.textBetween(p.pos,u.to,void 0," ")}if(p&&m){const g=m.split(Cce).filter(Boolean);if(g.length<=0)return!1;const v=g[g.length-1],y=p.pos+m.lastIndexOf(v);if(!v)return!1;const x=yx(v).map(S=>S.toObject(t.defaultProtocol));if(!Ece(x))return!1;x.filter(S=>S.isLink).map(S=>({...S,from:y+S.start+1,to:y+S.end+1})).filter(S=>r.schema.marks.code?!r.doc.rangeHasMark(S.from,S.to,r.schema.marks.code):!0).filter(S=>t.validate(S.value)).filter(S=>t.shouldAutoLink(S.value)).forEach(S=>{nv(S.from,S.to,r.doc).some(k=>k.mark.type===t.type)||s.addMark(S.from,S.to,t.type.create({href:S.href}))})}}),!!s.steps.length)return s}})}function Mce(t){return new rn({key:new En("handleClickLink"),props:{handleClick:(e,n,r)=>{var o,i;if(r.button!==0||!e.editable)return!1;let s=r.target;const a=[];for(;s.nodeName!=="DIV";)a.push(s),s=s.parentNode;if(!a.find(m=>m.nodeName==="A"))return!1;const l=tv(e.state,t.type.name),u=r.target,f=(o=u==null?void 0:u.href)!==null&&o!==void 0?o:l.href,p=(i=u==null?void 0:u.target)!==null&&i!==void 0?i:l.target;return u&&f?(window.open(f,p),!0):!1}}})}function _ce(t){return new rn({key:new En("handlePasteLink"),props:{handlePaste:(e,n,r)=>{const{state:o}=e,{selection:i}=o,{empty:s}=i;if(s)return!1;let a="";r.content.forEach(u=>{a+=u.textContent});const l=AA(a,{defaultProtocol:t.defaultProtocol}).find(u=>u.isLink&&u.value===a);return!a||!l?!1:t.editor.commands.setMark(t.type,{href:l.href})}}})}function Us(t,e){const n=["http","https","ftp","ftps","mailto","tel","callto","sms","cid","xmpp"];return e&&e.forEach(r=>{const o=typeof r=="string"?r:r.scheme;o&&n.push(o)}),!t||t.replace(kce,"").match(new RegExp(`^(?:(?:${n.join("|")}):|[^a-z]|[a-z0-9+.-]+(?:[^a-z+.-:]|$))`,"i"))}const Rce=Er.create({name:"link",priority:1e3,keepOnSplit:!1,exitable:!0,onCreate(){this.options.validate&&!this.options.shouldAutoLink&&(this.options.shouldAutoLink=this.options.validate,console.warn("The `validate` option is deprecated. Rename to the `shouldAutoLink` option instead.")),this.options.protocols.forEach(t=>{if(typeof t=="string"){NE(t);return}NE(t.scheme,t.optionalSlashes)})},onDestroy(){wce()},inclusive(){return this.options.autolink},addOptions(){return{openOnClick:!0,linkOnPaste:!0,autolink:!0,protocols:[],defaultProtocol:"http",HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},isAllowedUri:(t,e)=>!!Us(t,e.protocols),validate:t=>!!t,shouldAutoLink:t=>!!t}},addAttributes(){return{href:{default:null,parseHTML(t){return t.getAttribute("href")}},target:{default:this.options.HTMLAttributes.target},rel:{default:this.options.HTMLAttributes.rel},class:{default:this.options.HTMLAttributes.class}}},parseHTML(){return[{tag:"a[href]",getAttrs:t=>{const e=t.getAttribute("href");return!e||!this.options.isAllowedUri(e,{defaultValidate:n=>!!Us(n,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?!1:null}}]},renderHTML({HTMLAttributes:t}){return this.options.isAllowedUri(t.href,{defaultValidate:e=>!!Us(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?["a",St(this.options.HTMLAttributes,t),0]:["a",St(this.options.HTMLAttributes,{...t,href:""}),0]},addCommands(){return{setLink:t=>({chain:e})=>{const{href:n}=t;return this.options.isAllowedUri(n,{defaultValidate:r=>!!Us(r,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?e().setMark(this.name,t).setMeta("preventAutolink",!0).run():!1},toggleLink:t=>({chain:e})=>{const{href:n}=t;return this.options.isAllowedUri(n,{defaultValidate:r=>!!Us(r,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?e().toggleMark(this.name,t,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run():!1},unsetLink:()=>({chain:t})=>t().unsetMark(this.name,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()}},addPasteRules(){return[Ss({find:t=>{const e=[];if(t){const{protocols:n,defaultProtocol:r}=this.options,o=AA(t).filter(i=>i.isLink&&this.options.isAllowedUri(i.value,{defaultValidate:s=>!!Us(s,n),protocols:n,defaultProtocol:r}));o.length&&o.forEach(i=>e.push({text:i.value,data:{href:i.href},index:i.start}))}return e},type:this.type,getAttributes:t=>{var e;return{href:(e=t.data)===null||e===void 0?void 0:e.href}}})]},addProseMirrorPlugins(){const t=[],{protocols:e,defaultProtocol:n}=this.options;return this.options.autolink&&t.push(Oce({type:this.type,defaultProtocol:this.options.defaultProtocol,validate:r=>this.options.isAllowedUri(r,{defaultValidate:o=>!!Us(o,e),protocols:e,defaultProtocol:n}),shouldAutoLink:this.options.shouldAutoLink})),this.options.openOnClick===!0&&t.push(Mce({type:this.type})),this.options.linkOnPaste&&t.push(_ce({editor:this.editor,defaultProtocol:this.options.defaultProtocol,type:this.type})),t}});function Ice(t){var e;const{char:n,allowSpaces:r,allowToIncludeChar:o,allowedPrefixes:i,startOfLine:s,$position:a}=t,l=r&&!o,u=z7(n),f=new RegExp(`\\s${u}$`),p=s?"^":"",m=o?"":u,g=l?new RegExp(`${p}${u}.*?(?=\\s${m}|$)`,"gm"):new RegExp(`${p}(?:^)?${u}[^\\s${m}]*`,"gm"),v=((e=a.nodeBefore)===null||e===void 0?void 0:e.isText)&&a.nodeBefore.text;if(!v)return null;const y=a.pos-v.length,x=Array.from(v.matchAll(g)).pop();if(!x||x.input===void 0||x.index===void 0)return null;const S=x.input.slice(Math.max(0,x.index-1),x.index),k=new RegExp(`^[${i==null?void 0:i.join("")}\0]?$`).test(S);if(i!==null&&!k)return null;const T=y+x.index;let C=T+x[0].length;return l&&f.test(v.slice(C-1,C+1))&&(x[0]+=" ",C+=1),T<a.pos&&C>=a.pos?{range:{from:T,to:C},query:x[0].slice(n.length),text:x[0]}:null}const Ace=new En("suggestion");function Dce({pluginKey:t=Ace,editor:e,char:n="@",allowSpaces:r=!1,allowToIncludeChar:o=!1,allowedPrefixes:i=[" "],startOfLine:s=!1,decorationTag:a="span",decorationClass:l="suggestion",decorationContent:u="",decorationEmptyClass:f="is-empty",command:p=()=>null,items:m=()=>[],render:g=()=>({}),allow:v=()=>!0,findSuggestionMatch:y=Ice}){let x;const S=g==null?void 0:g(),k=new rn({key:t,view(){return{update:async(T,C)=>{var O,I,P,N,F,M,L;const z=(O=this.key)===null||O===void 0?void 0:O.getState(C),j=(I=this.key)===null||I===void 0?void 0:I.getState(T.state),D=z.active&&j.active&&z.range.from!==j.range.from,R=!z.active&&j.active,_=z.active&&!j.active,B=!R&&!_&&z.query!==j.query,U=R||D&&B,K=B||D,W=_||D&&B;if(!U&&!K&&!W)return;const Y=W&&!U?z:j,re=T.dom.querySelector(`[data-decoration-id="${Y.decorationId}"]`);x={editor:e,range:Y.range,query:Y.query,text:Y.text,items:[],command:ce=>p({editor:e,range:Y.range,props:ce}),decorationNode:re,clientRect:re?()=>{var ce;const{decorationId:pe}=(ce=this.key)===null||ce===void 0?void 0:ce.getState(e.state),G=T.dom.querySelector(`[data-decoration-id="${pe}"]`);return(G==null?void 0:G.getBoundingClientRect())||null}:null},U&&((P=S==null?void 0:S.onBeforeStart)===null||P===void 0||P.call(S,x)),K&&((N=S==null?void 0:S.onBeforeUpdate)===null||N===void 0||N.call(S,x)),(K||U)&&(x.items=await m({editor:e,query:Y.query})),W&&((F=S==null?void 0:S.onExit)===null||F===void 0||F.call(S,x)),K&&((M=S==null?void 0:S.onUpdate)===null||M===void 0||M.call(S,x)),U&&((L=S==null?void 0:S.onStart)===null||L===void 0||L.call(S,x))},destroy:()=>{var T;x&&((T=S==null?void 0:S.onExit)===null||T===void 0||T.call(S,x))}}},state:{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1}},apply(T,C,O,I){const{isEditable:P}=e,{composing:N}=e.view,{selection:F}=T,{empty:M,from:L}=F,z={...C};if(z.composing=N,P&&(M||e.view.composing)){(L<C.range.from||L>C.range.to)&&!N&&!C.composing&&(z.active=!1);const j=y({char:n,allowSpaces:r,allowToIncludeChar:o,allowedPrefixes:i,startOfLine:s,$position:F.$from}),D=`id_${Math.floor(Math.random()*4294967295)}`;j&&v({editor:e,state:I,range:j.range,isActive:C.active})?(z.active=!0,z.decorationId=C.decorationId?C.decorationId:D,z.range=j.range,z.query=j.query,z.text=j.text):z.active=!1}else z.active=!1;return z.active||(z.decorationId=null,z.range={from:0,to:0},z.query=null,z.text=null),z}},props:{handleKeyDown(T,C){var O;const{active:I,range:P}=k.getState(T.state);return I&&((O=S==null?void 0:S.onKeyDown)===null||O===void 0?void 0:O.call(S,{view:T,event:C,range:P}))||!1},decorations(T){const{active:C,range:O,decorationId:I,query:P}=k.getState(T);if(!C)return null;const N=!(P!=null&&P.length),F=[l];return N&&F.push(f),Xt.create(T.doc,[Zn.inline(O.from,O.to,{nodeName:a,class:F.join(" "),"data-decoration-id":I,"data-decoration-content":u})])}}});return k}function Pce({editor:t,overrideSuggestionOptions:e,extensionName:n,char:r="@"}){const o=new En;return{editor:t,char:r,pluginKey:o,command:({editor:i,range:s,props:a})=>{var l,u,f;const p=i.view.state.selection.$to.nodeAfter;((l=p==null?void 0:p.text)===null||l===void 0?void 0:l.startsWith(" "))&&(s.to+=1),i.chain().focus().insertContentAt(s,[{type:n,attrs:{...a,mentionSuggestionChar:r}},{type:"text",text:" "}]).run(),(f=(u=i.view.dom.ownerDocument.defaultView)===null||u===void 0?void 0:u.getSelection())===null||f===void 0||f.collapseToEnd()},allow:({state:i,range:s})=>{const a=i.doc.resolve(s.from),l=i.schema.nodes[n];return!!a.parent.type.contentMatch.matchType(l)},...e}}function DA(t){return(t.options.suggestions.length?t.options.suggestions:[t.options.suggestion]).map(e=>Pce({editor:t.editor,overrideSuggestionOptions:e,extensionName:t.name,char:e.char}))}function $E(t,e){const n=DA(t),r=n.find(o=>o.char===e);return r||(n.length?n[0]:null)}const Nce=nn.create({name:"mention",priority:101,addOptions(){return{HTMLAttributes:{},renderText({node:t,suggestion:e}){var n,r;return`${(n=e==null?void 0:e.char)!==null&&n!==void 0?n:"@"}${(r=t.attrs.label)!==null&&r!==void 0?r:t.attrs.id}`},deleteTriggerWithBackspace:!1,renderHTML({options:t,node:e,suggestion:n}){var r,o;return["span",St(this.HTMLAttributes,t.HTMLAttributes),`${(r=n==null?void 0:n.char)!==null&&r!==void 0?r:"@"}${(o=e.attrs.label)!==null&&o!==void 0?o:e.attrs.id}`]},suggestions:[],suggestion:{}}},group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:null,parseHTML:t=>t.getAttribute("data-id"),renderHTML:t=>t.id?{"data-id":t.id}:{}},label:{default:null,parseHTML:t=>t.getAttribute("data-label"),renderHTML:t=>t.label?{"data-label":t.label}:{}},mentionSuggestionChar:{default:"@",parseHTML:t=>t.getAttribute("data-mention-suggestion-char"),renderHTML:t=>({"data-mention-suggestion-char":t.mentionSuggestionChar})}}},parseHTML(){return[{tag:`span[data-type="${this.name}"]`}]},renderHTML({node:t,HTMLAttributes:e}){const n=$E(this,t.attrs.mentionSuggestionChar);if(this.options.renderLabel!==void 0)return console.warn("renderLabel is deprecated use renderText and renderHTML instead"),["span",St({"data-type":this.name},this.options.HTMLAttributes,e),this.options.renderLabel({options:this.options,node:t,suggestion:n})];const r={...this.options};r.HTMLAttributes=St({"data-type":this.name},this.options.HTMLAttributes,e);const o=this.options.renderHTML({options:r,node:t,suggestion:n});return typeof o=="string"?["span",St({"data-type":this.name},this.options.HTMLAttributes,e),o]:o},renderText({node:t}){const e={options:this.options,node:t,suggestion:$E(this,t.attrs.mentionSuggestionChar)};return this.options.renderLabel!==void 0?(console.warn("renderLabel is deprecated use renderText and renderHTML instead"),this.options.renderLabel(e)):this.options.renderText(e)},addKeyboardShortcuts(){return{Backspace:()=>this.editor.commands.command(({tr:t,state:e})=>{let n=!1;const{selection:r}=e,{empty:o,anchor:i}=r;if(!o)return!1;e.doc.nodesBetween(i-1,i,(l,u)=>{if(l.type.name===this.name)return n=!0,t.insertText(this.options.deleteTriggerWithBackspace?"":this.options.suggestion.char||"",u,u+l.nodeSize),!1});let s=new Mi,a=0;return e.doc.nodesBetween(i-1,i,(l,u)=>{if(l.type.name===this.name)return n=!0,s=l,a=u,!1}),n&&t.insertText(this.options.deleteTriggerWithBackspace?"":s.attrs.mentionSuggestionChar,a,a+s.nodeSize),n})}},addProseMirrorPlugins(){return DA(this).map(Dce)}}),PA=mn.create({name:"placeholder",addOptions(){return{emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}},addProseMirrorPlugins(){return[new rn({key:new En("placeholder"),props:{decorations:({doc:t,selection:e})=>{const n=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:r}=e,o=[];if(!n)return null;const i=this.editor.isEmpty;return t.descendants((s,a)=>{const l=r>=a&&r<=a+s.nodeSize,u=!s.isLeaf&&Eh(s);if((l||!this.options.showOnlyCurrent)&&u){const f=[this.options.emptyNodeClass];i&&f.push(this.options.emptyEditorClass);const p=Zn.node(a,a+s.nodeSize,{class:f.join(" "),"data-placeholder":typeof this.options.placeholder=="function"?this.options.placeholder({editor:this.editor,node:s,pos:a,hasAnchor:l}):this.options.placeholder});o.push(p)}return this.options.includeChildren}),Xt.create(t,o)}}})]}}),$ce=Er.create({name:"subscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sub"},{style:"vertical-align",getAttrs(t){return t!=="sub"?!1:null}}]},renderHTML({HTMLAttributes:t}){return["sub",St(this.options.HTMLAttributes,t),0]},addCommands(){return{setSubscript:()=>({commands:t})=>t.setMark(this.name),toggleSubscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSubscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-,":()=>this.editor.commands.toggleSubscript()}}}),Lce=nn.create({name:"tableCell",addOptions(){return{HTMLAttributes:{}}},content:"block+",addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");return e?e.split(",").map(r=>parseInt(r,10)):null}}}},tableRole:"cell",isolating:!0,parseHTML(){return[{tag:"td"}]},renderHTML({HTMLAttributes:t}){return["td",St(this.options.HTMLAttributes,t),0]}}),jce=nn.create({name:"tableHeader",addOptions(){return{HTMLAttributes:{}}},content:"block+",addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");return e?e.split(",").map(r=>parseInt(r,10)):null}}}},tableRole:"header_cell",isolating:!0,parseHTML(){return[{tag:"th"}]},renderHTML({HTMLAttributes:t}){return["th",St(this.options.HTMLAttributes,t),0]}}),Bce=nn.create({name:"tableRow",addOptions(){return{HTMLAttributes:{}}},content:"(tableCell | tableHeader)*",tableRole:"row",parseHTML(){return[{tag:"tr"}]},renderHTML({HTMLAttributes:t}){return["tr",St(this.options.HTMLAttributes,t),0]}}),Fce=/^\s*(\[([( |x])?\])\s$/,zce=nn.create({name:"taskItem",addOptions(){return{nested:!1,HTMLAttributes:{},taskListTypeName:"taskList",a11y:void 0}},content(){return this.options.nested?"paragraph block*":"paragraph+"},defining:!0,addAttributes(){return{checked:{default:!1,keepOnSplit:!1,parseHTML:t=>{const e=t.getAttribute("data-checked");return e===""||e==="true"},renderHTML:t=>({"data-checked":t.checked})}}},parseHTML(){return[{tag:`li[data-type="${this.name}"]`,priority:51}]},renderHTML({node:t,HTMLAttributes:e}){return["li",St(this.options.HTMLAttributes,e,{"data-type":this.name}),["label",["input",{type:"checkbox",checked:t.attrs.checked?"checked":null}],["span"]],["div",0]]},addKeyboardShortcuts(){const t={Enter:()=>this.editor.commands.splitListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)};return this.options.nested?{...t,Tab:()=>this.editor.commands.sinkListItem(this.name)}:t},addNodeView(){return({node:t,HTMLAttributes:e,getPos:n,editor:r})=>{const o=document.createElement("li"),i=document.createElement("label"),s=document.createElement("span"),a=document.createElement("input"),l=document.createElement("div"),u=()=>{var f,p;a.ariaLabel=((p=(f=this.options.a11y)===null||f===void 0?void 0:f.checkboxLabel)===null||p===void 0?void 0:p.call(f,t,a.checked))||`Task item checkbox for ${t.textContent||"empty task item"}`};return u(),i.contentEditable="false",a.type="checkbox",a.addEventListener("mousedown",f=>f.preventDefault()),a.addEventListener("change",f=>{if(!r.isEditable&&!this.options.onReadOnlyChecked){a.checked=!a.checked;return}const{checked:p}=f.target;r.isEditable&&typeof n=="function"&&r.chain().focus(void 0,{scrollIntoView:!1}).command(({tr:m})=>{const g=n();if(typeof g!="number")return!1;const v=m.doc.nodeAt(g);return m.setNodeMarkup(g,void 0,{...v==null?void 0:v.attrs,checked:p}),!0}).run(),!r.isEditable&&this.options.onReadOnlyChecked&&(this.options.onReadOnlyChecked(t,p)||(a.checked=!a.checked))}),Object.entries(this.options.HTMLAttributes).forEach(([f,p])=>{o.setAttribute(f,p)}),o.dataset.checked=t.attrs.checked,a.checked=t.attrs.checked,i.append(a,s),o.append(i,l),Object.entries(e).forEach(([f,p])=>{o.setAttribute(f,p)}),{dom:o,contentDOM:l,update:f=>f.type!==this.type?!1:(o.dataset.checked=f.attrs.checked,a.checked=f.attrs.checked,u(),!0)}}},addInputRules(){return[Ol({find:Fce,type:this.type,getAttributes:t=>({checked:t[t.length-1]==="x"})})]}}),Vce=nn.create({name:"taskList",addOptions(){return{itemTypeName:"taskItem",HTMLAttributes:{}}},group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:`ul[data-type="${this.name}"]`,priority:51}]},renderHTML({HTMLAttributes:t}){return["ul",St(this.options.HTMLAttributes,t,{"data-type":this.name}),0]},addCommands(){return{toggleTaskList:()=>({commands:t})=>t.toggleList(this.name,this.options.itemTypeName)}},addKeyboardShortcuts(){return{"Mod-Shift-9":()=>this.editor.commands.toggleTaskList()}}}),Hce=mn.create({name:"textAlign",addOptions(){return{types:[],alignments:["left","center","right","justify"],defaultAlignment:null}},addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:t=>{const e=t.style.textAlign;return this.options.alignments.includes(e)?e:this.options.defaultAlignment},renderHTML:t=>t.textAlign?{style:`text-align: ${t.textAlign}`}:{}}}}]},addCommands(){return{setTextAlign:t=>({commands:e})=>this.options.alignments.includes(t)?this.options.types.map(n=>e.updateAttributes(n,{textAlign:t})).every(n=>n):!1,unsetTextAlign:()=>({commands:t})=>this.options.types.map(e=>t.resetAttributes(e,"textAlign")).every(e=>e),toggleTextAlign:t=>({editor:e,commands:n})=>this.options.alignments.includes(t)?e.isActive({textAlign:t})?n.unsetTextAlign():n.setTextAlign(t):!1}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}}),NA=X.forwardRef((t,e)=>{const[n,r]=X.useState(0),o=l=>{if(l>=t.items.length)return;const u=t.items[l],f={id:u.id,label:u.mentionLabel};t.command(f)},i=()=>{r((n+t.items.length-1)%t.items.length)},s=()=>{r((n+1)%t.items.length)},a=()=>{o(n)};return X.useEffect(()=>r(0),[t.items]),X.useImperativeHandle(e,()=>({onKeyDown:({event:l})=>l.key==="ArrowUp"?(i(),!0):l.key==="ArrowDown"?(s(),!0):l.key==="Enter"?(a(),!0):!1})),t.items.length>0?b.jsx(H.Paper,{elevation:5,children:b.jsx(H.List,{dense:!0,sx:{overflow:"hidden"},children:t.items.map((l,u)=>b.jsx(H.ListItem,{disablePadding:!0,children:b.jsx(H.ListItemButton,{selected:u===n,onClick:()=>o(u),children:l.mentionLabel})},l.id))})}):null});NA.displayName="SuggestionList";const LE={bottom:0,height:0,left:0,right:0,top:0,width:0,x:0,y:0,toJSON(){return{}}},Wce={items:async({query:t})=>Promise.resolve(["Lea Thompson","Cyndi Lauper","Tom Cruise","Madonna","Jerry Hall","Joan Collins","Winona Ryder","Christina Applegate","Alyssa Milano","Molly Ringwald","Ally Sheedy","Debbie Harry","Olivia Newton-John","Elton John","Michael J. Fox","Axl Rose","Emilio Estevez","Ralph Macchio","Rob Lowe","Jennifer Grey","Mickey Rourke","John Cusack","Matthew Broderick","Justine Bateman","Lisa Bonet","Benicio Monserrate Rafael del Toro Sánchez"].map((e,n)=>({mentionLabel:e,id:n.toString()})).filter(e=>e.mentionLabel.toLowerCase().startsWith(t.toLowerCase())).slice(0,5)),render:()=>{let t,e;return{onStart:n=>{t=new V2(NA,{props:n,editor:n.editor}),e=Hu("body",{getReferenceClientRect:()=>{var r;return((r=n.clientRect)==null?void 0:r.call(n))??LE},appendTo:()=>document.body,content:t.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"})[0]},onUpdate(n){t==null||t.updateProps(n),e==null||e.setProps({getReferenceClientRect:()=>{var r;return((r=n.clientRect)==null?void 0:r.call(n))??LE}})},onKeyDown(n){return n.event.key==="Escape"?(e==null||e.hide(),!0):t!=null&&t.ref?t.ref.onKeyDown(n):!1},onExit(){e==null||e.destroy(),t==null||t.destroy(),e=void 0,t=void 0}}}},Uce=Rce.extend({inclusive:!1}),qce=$ce.extend({excludes:"superscript"}),Kce=pI.extend({excludes:"subscript"});function Yce({placeholder:t}={}){return X.useMemo(()=>[jee.configure({resizable:!0}),Bce,jce,Lce,rR,iR,sR,uR,vR,xR,wR,qce,Kce,CR,nR,tR,oR,bR,fI,SR,Uce.configure({autolink:!0,linkOnPaste:!0,openOnClick:!1}),wQ,cR,vQ,Hce.configure({types:["heading","paragraph","image"]}),rce,oce,ice,mZ,kR.configure({multicolor:!0}),yR,$Q,aR,Vce,zce.configure({nested:!0}),Nce.configure({suggestion:Wce}),PA.configure({placeholder:t}),gR],[t])}function jE(t){return Array.from(t).filter(e=>(e.type||"").toLowerCase().startsWith("image/"))}const Gce=t=>{const e=Yce({placeholder:"Add your own content here..."});if(t.renderContentOnly)return b.jsx(uI,{content:t.renderContentOnly,extensions:e});const{name:n,label:r,labelProps:o={fontSize:"0.9em",color:"#808080",fontWeight:"400"},onUploadFiles:i,readOnly:s=!1}=t,[a,l,u]=Ut.useField({name:n}),{setValue:f}=u,{value:p}=a;X.useEffect(()=>{var S,k,T;(T=(k=(S=m==null?void 0:m.current)==null?void 0:S.editor)==null?void 0:k.commands)==null||T.setContent(p)},[p]);const m=X.useRef(null),g=X.useCallback((S,k)=>{var C;const T=(C=m.current)==null?void 0:C.editor;if(!(!T||!i))if(i instanceof Promise)i(S).then(O=>{Kb({images:O,editor:T,position:k})});else{const O=i(S);Kb({images:O,editor:T,position:k})}},[]),v=X.useCallback((S,k,T,C)=>{var I;if(!(k instanceof DragEvent)||!k.dataTransfer)return!1;const O=jE(k.dataTransfer.files);if(O.length>0){const P=(I=S.posAtCoords({left:k.clientX,top:k.clientY}))==null?void 0:I.pos;return g(O,P),k.preventDefault(),!0}return!1},[g]),y=X.useCallback((S,k,T)=>{if(!k.clipboardData)return!1;const C=jE(k.clipboardData.files);return C.length>0?(g(C),!0):!1},[g]),x=b.jsx(H.Box,{sx:{"& .ProseMirror":{"& h1, & h2, & h3, & h4, & h5, & h6":{scrollMarginTop:s?0:50}}},children:b.jsx(cI,{ref:m,extensions:e,content:p,editable:!s,editorProps:{handleDrop:v,handlePaste:y},renderControls:s?void 0:()=>b.jsx(tce,{onUploadFiles:i}),onBlur:()=>{var S,k;return f(((k=(S=m.current)==null?void 0:S.editor)==null?void 0:k.getHTML())??"")},RichTextFieldProps:{variant:"outlined",MenuBarProps:{hide:s}},children:()=>b.jsxs(b.Fragment,{children:[b.jsx(ite,{}),b.jsx(vte,{})]})})});return b.jsxs(H.Box,{display:"flex",flexDirection:"column",children:[r&&b.jsx(H.Typography,{...o,children:r}),x]})},v0=t=>{const{title:e="Loading...",message:n}=t;return b.jsxs(H.Box,{className:"loading-page",sx:{gap:2},"data-testid":"loading-page",children:[b.jsxs(H.Box,{className:"text-content",children:[b.jsx(H.Typography,{variant:"h1","data-testid":"title",children:e}),n&&b.jsx(H.Typography,{"data-testid":"message",children:n})]}),b.jsx(H.CircularProgress,{size:75,"data-testid":"loading-spinner"})]})},BE=t=>{const{colSpan:e,isExpanded:n,renderExpand:r,obj:o,asMobileCard:i=!1,reRenderExpand:s=!1}=t,[a,l]=X.useState(!1),[u,f]=X.useState(void 0);X.useEffect(()=>{n&&(!a||s)&&(l(!0),f(r(o)))},[n,o]);const p={"&:last-child td":{borderBottom:"unset"}};return i?b.jsx(H.Collapse,{in:n,children:u}):b.jsx(H.TableRow,{sx:p,children:b.jsx(H.TableCell,{sx:{paddingBottom:0,paddingTop:0},colSpan:e,children:b.jsx(H.Collapse,{in:n,children:u})})})},vx=t=>{const{id:e,getRowKey:n=ie=>"id"in ie&&(typeof ie.id=="string"||typeof ie.id=="number")?ie.id:(console.warn(`Table: "id: string | number" not found in ${JSON.stringify(ie)}. Please implement the Table.getRowKey prop so Table knows how to uniquely identify this row.`),JSON.stringify(ie)),columns:r,data:o=[],onRowClick:i,onRowClickObj:s,renderExpand:a,hideColumnsOnMobile:l=[],sortField:u,sortOrder:f,onSortChange:p,allowSortCols:m,fixedLayout:g=!1,className:v,emptyTableMsg:y="No items to display",errorTableMsg:x,retryCallback:S,isLoading:k=!1,disableMobileCards:T=!1,highlightSelectedRow:C=!1,headerRowStyle:O={},stickyHeader:I,reRenderExpand:P=!1,expandOnRowClick:N=!1,tooltipColor:F,...M}=t,{palette:L}=H.useTheme(),[z,j]=X.useState(void 0),[D,R]=X.useState(void 0);Jce(t);const _=ie=>ie.key??ie.fieldName,B=ie=>{ie!==u?p&&p(ie,"asc"):p&&p(u,f==="asc"?"desc":"asc")},U=ie=>u===ie?f:null,K=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),W=K&&l?r.filter(ie=>!(l.includes(_(ie))||ie.hideCol)):r.filter(ie=>!ie.hideCol);a&&!K&&W.unshift({key:"MBv2_Expandable_Column",fieldName:"id",label:"",render:ie=>{const xe=z===ie;return b.jsx(H.IconButton,{"data-testid":"expand-collapse-btn","aria-label":xe?"collapse row":"expand row",size:"small",onClick:()=>ye(ie),children:xe?b.jsx(Pf,{"data-testid":"collapse-up"}):b.jsx(Xy,{"data-testid":"expand-down"})})}});const Y=(ie,xe)=>xe.split(".").reduce((De,He)=>{if(De&&typeof De=="object")return De[He]},ie),re=(ie,xe)=>{const De=Y(xe,ie.fieldName);return ie.render?ie.render(De,xe,K):De},ce=p!==void 0,pe=ie=>ce?m?m.includes(ie):!0:!1,G=b.jsxs(H.Box,{display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"row",children:[b.jsx(hne,{})," ",y]}),ee=b.jsxs(H.Box,{"data-testid":"table-fetch-error-msg",display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"row",children:[b.jsx(dM,{color:"error"})," ",x,S&&b.jsx(H.Button,{variant:"text",onClick:S,children:"Retry?"})]}),ue=()=>{if(k)return b.jsx(H.TableRow,{children:b.jsx(H.TableCell,{colSpan:r.length,align:"center",children:b.jsx(H.Box,{display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"row",children:b.jsx(v0,{})})})});if(x)return b.jsx(H.TableRow,{children:b.jsx(H.TableCell,{colSpan:r.length,align:"center",children:ee})});if(o.length===0)return b.jsx(H.TableRow,{children:b.jsx(H.TableCell,{colSpan:r.length,align:"center",children:G})})},oe=()=>{if(k)return b.jsx(v0,{});if(x)return ee;if(o.length===0)return G},ne=ie=>{C&&R(ie)},de=ie=>{const xe=n(ie);if((i||s)&&(i==null||i(xe),s==null||s(ie),ne(xe)),a&&N){const De=z===xe?void 0:xe;j(De),ne(De)}},ye=ie=>{const xe=z===ie?void 0:ie;j(xe),ne(xe)},Q=ie=>{if(!a)return;const xe=z===n(ie);return b.jsxs(b.Fragment,{children:[b.jsxs(H.Button,{"data-testid":"show-more-less-btn",variant:"text",onClick:()=>ye(n(ie)),children:[xe?b.jsx(Pf,{}):b.jsx(Xy,{})," Show"," ",xe?"Less":"More"]}),b.jsx(BE,{colSpan:r.length,isExpanded:n(ie)===z,obj:ie,renderExpand:De=>a(De),asMobileCard:!0})]})},le=typeof C=="string"?C:L.grey[L.mode=="dark"?600:50],me=ie=>{const xe=D===n(ie)?le:"inherit";return{cursor:i||N?"pointer":"default",backgroundColor:xe,...a?{"& > td":{borderBottom:"unset"}}:{"&:last-child td":{borderBottom:"unset"}},...i&&{"&:hover":{backgroundColor:xe===le?$ie(xe,.1):le}}}},be=L.grey[L.mode==="dark"?600:400],Se=ie=>ie&&b.jsx(H.Tooltip,{title:ie,children:b.jsx(pne,{"data-testid":"MBv2_table-tooltip",fontSize:"small",sx:{color:F??be,marginLeft:"2px"}})});return K&&!T?b.jsxs("div",{...e?{id:`mobile-table-${e}`}:{},className:v,"data-testid":"mui-table-mobile",children:[ce&&b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",className:"MBv2_Table_Stack_Sort",children:[b.jsx(H.TextField,{select:!0,sx:{flexGrow:1},id:"demo-simple-select",size:"small",value:u??"",label:"Sort By...",onChange:ie=>B(ie.target.value),fullWidth:!0,children:W.map(ie=>{if(pe(_(ie)))return b.jsx(H.MenuItem,{value:_(ie),children:ie.label??Bn(_(ie))},`rowHeader-${_(ie)}`)})}),b.jsx(H.IconButton,{onClick:()=>{u&&B(u)},children:b.jsx(wne,{className:`sort-icon-${f}`})})]}),b.jsx(H.Divider,{sx:{margin:"10px 0"}})]}),oe()??o.map(ie=>b.jsxs(H.Card,{className:"MBv2_Table_Stack_Container",sx:{margin:"5px 0",padding:"5px",overflowX:"auto",...me(ie)},onClick:()=>de(ie),"data-testid":`card-${n(ie)}`,children:[b.jsx("table",{className:"MBv2_Table_Stack",children:b.jsx("tbody",{className:"MBv2_Table_Stack_Body",children:W.map(xe=>b.jsxs("tr",{className:"MBv2_Table_Stack_Row",children:[b.jsxs("td",{className:`MBv2_Table_Stack_Cell_Label MBv2_Table_Stack_Col_${_(xe)}`,style:{textWrap:"nowrap"},children:[xe.label??Bn(_(xe)),Se(xe.tooltip)]}),b.jsx("td",{className:`MBv2_Table_Stack_Cell_Value MBv2_Table_Stack_Val_${_(xe)}`,style:{paddingLeft:"10px"},children:re(xe,ie)})]},`row-${n(ie)}-${_(xe)}`))})}),Q(ie)]},n(ie)))]}):b.jsx(H.TableContainer,{component:H.Card,"data-testid":"mui-table",...e?{id:`table-${e}`}:{},className:v,style:I?{maxHeight:I,overflow:"auto"}:{},children:b.jsxs(H.Table,{stickyHeader:I!=="undefined",style:{tableLayout:g?"fixed":"auto"},className:"MBv2_Table",sx:O?{"& .MuiTableCell-head":{...O}}:{},...M,children:[b.jsx(H.TableHead,{className:"MBv2_Table_Head",children:b.jsx(H.TableRow,{className:"MBv2_Table_Head_Row",children:W.map((ie,xe)=>{const De=pe(_(ie));return b.jsx(H.TableCell,{width:Array.isArray(g)?g[xe]:"auto",sx:ie.tableCellSx??{},children:b.jsx(H.Box,{style:{display:"flex",alignItems:"center"},children:b.jsxs(H.Box,{sx:[De&&{"&:hover":{cursor:"pointer",backgroundColor:L.mode==="dark"?"#222222":"#ededed",borderRadius:2}}],style:{display:"flex",alignItems:"center",padding:"5px",paddingLeft:"6px",marginLeft:"-6px"},onClick:De?()=>B(_(ie)):void 0,children:[b.jsx("strong",{className:"MBv2_Table_Col_Label",style:{wordBreak:"normal"},"data-testid":"column-title",children:ie.label??Bn(_(ie))}),Se(ie.tooltip),De&&U(_(ie))==="asc"&&b.jsx(Pf,{style:{marginLeft:"5px"}}),De&&U(_(ie))==="desc"&&b.jsx(Xy,{style:{marginLeft:"5px"}}),De&&U(_(ie))!=="asc"&&U(_(ie))!=="desc"&&b.jsx(vne,{style:{marginLeft:"5px"}})]})})},`rowHeader-${_(ie)}`)})})}),b.jsx(H.TableBody,{className:"MBv2_Table_Body",children:ue()??o.map(ie=>b.jsxs(X.Fragment,{children:[b.jsx(H.TableRow,{"data-testid":`row-${n(ie)}`,className:"MBv2_Table_Body_Row",onClick:()=>de(ie),sx:me(ie),children:W.map(xe=>b.jsx(H.TableCell,{className:`MBv2_Table_Body_Cell MBv2_Table_Body_Col_${_(xe)}`,children:re(xe,ie)},`row-${n(ie)}-${_(xe)}`))}),a&&b.jsx(BE,{colSpan:W.length,isExpanded:n(ie)===z,obj:ie,renderExpand:xe=>a(xe),reRenderExpand:P})]},n(ie)))})]})})},Jce=t=>{const{fixedLayout:e,renderExpand:n,columns:r,expandOnRowClick:o,onRowClick:i,onRowClickObj:s}=t,a="Table component:";Array.isArray(e)&&(!n&&e.length!==r.length&&console.warn(`${a} Length of "fixedLayout" is not equal to the length of "columns".`),n&&e.length!==r.length+1&&console.warn(`${a} Length of "fixedLayout" is not equal to the length of "columns"+1. Make sure you're including a percentage for the expand/collapse column AND each column in "columns".`)),o&&!n&&console.warn(`${a} renderExpand should be defined when expandOnRowClick is defined`),i&&s&&console.warn(`${a} 'onRowClick' and 'onRowClickObj' are both defined. Only one should be defined.`)},$A=t=>{const{paginationState:e,onPageChange:n,onRowsPerPageChange:r,hidePaginationControls:o=!1,rowsPerPageOptions:i=[5,10,25],...s}=t,{pageNo:a,pageSize:l,totalCount:u,sortField:f,sortOrder:p}=e,m=x=>{n(x)},g=x=>{r(parseInt(x.target.value,10))},v=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),y=!t.data||t.data&&t.data.length===0;return b.jsxs(H.Box,{children:[b.jsx(vx,{sortOrder:p,sortField:f,...s}),!o&&!y&&b.jsx(H.TablePagination,{"data-testid":"pagination-controls",component:"div",rowsPerPageOptions:v?[]:i,count:u,rowsPerPage:l,page:a,onPageChange:(x,S)=>m(S),onRowsPerPageChange:g,sx:{flexGrow:1,marginRight:{xs:0,md:15}}})]})},FE=()=>({height:window.innerHeight,width:window.innerWidth}),LA=()=>{const[t,e]=X.useState(FE());return X.useEffect(()=>{const n=()=>{e(FE())};return window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[]),t},so=t=>{const{name:e="button",color:n="primary",fullWidthOnMobile:r=!0,type:o="button",variant:i="contained"}=t,{width:s}=LA(),a=["locationInBar","closeDialog","fullWidthOnMobile"],l=r&&s<600;return b.jsx(H.Button,{role:"button",name:e,color:n,variant:i,type:o,fullWidth:t.fullWidth?!0:l,...pr({...t},a)})},Xce=t=>{const{citation:e,anchorEl:n,onClose:r}=t;return b.jsx(H.Popper,{open:e!==null,anchorEl:n,placement:"bottom-end",style:{zIndex:1300},children:e&&b.jsxs(H.Box,{component:H.Paper,p:1,display:"flex",gap:1,boxShadow:9,"data-testid":`citation-table_launch-link-prompt-${e.id}`,flexDirection:"column",alignItems:"end",children:[b.jsxs(H.Typography,{variant:"body2",sx:{wordBreak:"break-all",maxWidth:"350px"},children:["Are you sure you want to go to ",b.jsx("br",{}),b.jsx("b",{children:e.url}),"?"]}),b.jsxs(H.Box,{display:"flex",flexDirection:"row",children:[b.jsx(so,{size:"small",variant:"text",onClick:r,"data-testid":`citation-table_launch-prompt-${e.id}-noBtn`,children:"No"}),b.jsx(so,{size:"small",startIcon:b.jsx(c0,{}),onClick:()=>{window.open(e.url,"_blank","noopener,noreferrer"),r()},"data-testid":`citation-table_launch-prompt-${e.id}-yesBtn`,children:"Yes"})]})]})})},Zce=t=>{const{citation:e,anchorEl:n,onDeleteCitation:r,onClose:o}=t;if(r)return b.jsx(H.Popper,{open:e!==null,anchorEl:n,placement:"bottom-end",style:{zIndex:1300},children:e&&b.jsxs(H.Box,{component:H.Paper,p:1,display:"flex",gap:1,boxShadow:9,"data-testid":`citation-table_delete-prompt-${e.id}`,children:[b.jsxs(H.Typography,{variant:"body2",children:["Are you sure you want to delete this ",e.fileName?"attachment":"citation","?"]}),b.jsxs(H.Box,{display:"flex",flexDirection:"row",children:[b.jsx(so,{size:"small",variant:"text",onClick:o,"data-testid":`citation-table_delete-prompt-${e.id}-noBtn`,children:"No"}),b.jsx(so,{size:"small",color:"error",startIcon:b.jsx(Uv,{}),onClick:()=>r(e.id).finally(o),"data-testid":`citation-table_delete-prompt-${e.id}-yesBtn`,children:"Yes"})]})]})})},Qce=t=>{const{refreshKey:e,title:n,onCancel:r,onNewCitation:o,onNewAttachment:i,onEditCitation:s,onEditAttachment:a,onDeleteCitation:l,onDownloadAttachment:u,onViewAttachment:f,onSelect:p,getCitationsPaginated:m,selectedIds:g,setSelectedIds:v,onError:y=()=>{},condenseTable:x=!1,canSelect:S=!1,canLaunchUrl:k,addlActions:T,readOnly:C=!1,showCloseBtn:O=!1}=t,I=!!t.canCreate&&!C,P=!!t.canEdit&&!C,N=!!t.canDelete&&!C,{palette:F}=H.useTheme(),[M,L]=X.useState([]),[z,j]=X.useState(!1),[D,R]=X.useState(!0),[_,B]=X.useState(null),[U,K]=X.useState(null),[W,Y]=X.useState(null),[re,ce]=X.useState({pageNo:0,pageSize:x?5:10,totalCount:0}),pe=()=>{j(!1),R(!0),m({pageNo:re.pageNo,pageSize:re.pageSize}).then(be=>(L(be.data),ce({...re,totalCount:be.totalCount}),be)).catch(be=>{y(be),j(!0),L([])}).finally(()=>R(!1))};X.useEffect(pe,[re.pageNo,re.pageSize,e]);const G=()=>{K(null),Y(null),B(null)},ee=b.jsx(so,{variant:S?"outlined":"contained",size:S?"small":"medium",onClick:o,startIcon:b.jsx(Bh,{}),children:"Add Citation"}),ue=b.jsx(so,{variant:S?"outlined":"contained",size:S?"small":"medium",onClick:i,startIcon:b.jsx(SI,{}),children:"Add Attachment"}),oe=be=>{if(!(!P&&!C)&&!(C&&!x))return b.jsx(H.Tooltip,{title:C?"View":"Edit",children:b.jsx(H.IconButton,{color:"primary",onClick:()=>be.fileName?a(be):s(be),"data-testid":`citation-table_edit-btn-${be.id}`,children:C?b.jsx(Sne,{}):b.jsx(fne,{})})})},ne=be=>{if(!(!N||C))return b.jsx(H.Tooltip,{title:"Delete",children:b.jsx(H.IconButton,{color:"error",onClick:Se=>{K(be),B(Se.currentTarget)},"data-testid":`citation-table_delete-btn-${be.id}`,children:b.jsx(Uv,{})})})},de=be=>{if(!k)return;if(!be.fileName)return b.jsx(H.Tooltip,{title:"Open URL",children:b.jsx(H.IconButton,{color:"primary",onClick:ie=>{B(ie.currentTarget),Y(be)},"data-testid":`citation-table_launch-link-btn-${be.id}`,sx:{visibility:k!=null&&k(be)?"visible":"hidden"},children:b.jsx(c0,{})})})},ye=be=>{if(!f||!be.fileName)return;const Se=["pdf","png","jpg","jpeg","gif","bmp","svg","webp","mp3","wav","mp4","webm","html","htm","txt","xml","json","csv"],ie=be.fileName.split(".").pop();if(!(!ie||!Se.includes(ie)))return b.jsx(H.Tooltip,{title:"View File",children:b.jsx(H.IconButton,{color:"primary",onClick:()=>f==null?void 0:f(be),"data-testid":`citation-table_view-file-btn-${be.id}`,children:b.jsx(c0,{})})})},Q=be=>{if(!u)return;if(!!be.fileName)return b.jsx(H.Tooltip,{title:"Download",children:b.jsx(H.IconButton,{color:"primary",onClick:()=>u==null?void 0:u(be),"data-testid":`citation-table_download-btn-${be.id}`,children:b.jsx(dne,{})})})},le=C||P||N||k||f||u||T,me=[{fieldName:"id",key:"select",label:"",hideCol:!S,render:(be,Se)=>b.jsx(H.Checkbox,{"data-testid":`citation-table_checkbox-${be}`,onChange:()=>{const ie=g.includes(Se.id);v(ie?g.filter(xe=>xe!==Se.id):[...g,Se.id])},checked:g.includes(be),disabled:C})},...jA(F,x),{fieldName:"id",key:"Action",label:"Action",hideCol:!le,render:(be,Se)=>b.jsxs(H.Box,{display:"flex",flexDirection:"row-reverse",children:[T==null?void 0:T(Se),ne(Se),oe(Se),ye(Se),de(Se),Q(Se)]})}];return b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingBottom:"10px",children:[b.jsx(H.Typography,{variant:x?"h6":"h2",children:n}),!S&&I&&b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:1,children:[ee,ue]}),O&&b.jsx(H.IconButton,{onClick:r,children:b.jsx(Kh,{})})]}),b.jsx($A,{"data-testid":"citation-table",size:x?"x-small":"medium",isLoading:D,columns:me,data:M,paginationState:re,onPageChange:be=>ce({...re,pageNo:be}),onRowsPerPageChange:be=>ce({...re,pageSize:be,pageNo:0}),errorTableMsg:z?"Failed to load citations.":void 0,retryCallback:pe}),S&&b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",marginTop:"20px",children:[b.jsx(H.Box,{display:"flex",flexDirection:"row",gap:".25rem",children:I&&b.jsxs(b.Fragment,{children:[ee,ue]})}),!C&&b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:".25rem",children:[b.jsx(so,{variant:"outlined",size:"small",onClick:r,children:"Cancel"}),b.jsxs(so,{variant:"contained",size:"small",onClick:()=>p(g),children:["Select",g.length>0&&` (${g.length})`]})]})]}),b.jsx(Xce,{citation:W,anchorEl:_,onClose:G}),b.jsx(Zce,{citation:U,anchorEl:_,onDeleteCitation:l,onClose:G})]})},jA=(t,e=!1)=>[{fieldName:"fileName",key:"CitationOrAttachment",label:"Type",render:(n,r)=>b.jsx(H.Tooltip,{title:n?"Attachment":"URL",children:n?b.jsx(SI,{sx:{color:t.grey[500],marginTop:"4px"},"data-testid":`attachment-icon-${r.id}`}):b.jsx(Bh,{sx:{color:t.grey[500],marginTop:"6px"},"data-testid":`url-icon-${r.id}`})})},{fieldName:"title",tableCellSx:{width:e?"100%":"auto"},render:n=>e?$l.truncate(n,{length:40,omission:"..."}):n},{fieldName:"fileName",key:"URL/File Name",label:"URL/File Name",hideCol:e,render:(n,r)=>b.jsx("span",{style:{wordBreak:"break-all"},children:n||r.url})},{fieldName:"source",hideCol:e},{fieldName:"accessedAt",hideCol:e,render:(n,r)=>{if(!r.fileName)return(n==null?void 0:n.slice(0,10))??""}},{fieldName:"classification",hideCol:e}],xx=t=>{const{loading:e=!1,type:n="submit",size:r="medium",...o}=t,s={small:16,medium:20,large:24}[r];return b.jsx(so,{type:n,disabled:e,size:r,startIcon:e?b.jsx(H.CircularProgress,{size:s,color:"inherit"}):null,...o})};var sb,zE;function eue(){if(zE)return sb;zE=1;function t(S){this._maxSize=S,this.clear()}t.prototype.clear=function(){this._size=0,this._values=Object.create(null)},t.prototype.get=function(S){return this._values[S]},t.prototype.set=function(S,k){return this._size>=this._maxSize&&this.clear(),S in this._values||this._size++,this._values[S]=k};var e=/[^.^\]^[]+|(?=\[\]|\.\.)/g,n=/^\d+$/,r=/^\d/,o=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,i=/^\s*(['"]?)(.*?)(\1)\s*$/,s=512,a=new t(s),l=new t(s),u=new t(s);sb={Cache:t,split:p,normalizePath:f,setter:function(S){var k=f(S);return l.get(S)||l.set(S,function(C,O){for(var I=0,P=k.length,N=C;I<P-1;){var F=k[I];if(F==="__proto__"||F==="constructor"||F==="prototype")return C;N=N[k[I++]]}N[k[I]]=O})},getter:function(S,k){var T=f(S);return u.get(S)||u.set(S,function(O){for(var I=0,P=T.length;I<P;)if(O!=null||!k)O=O[T[I++]];else return;return O})},join:function(S){return S.reduce(function(k,T){return k+(g(T)||n.test(T)?"["+T+"]":(k?".":"")+T)},"")},forEach:function(S,k,T){m(Array.isArray(S)?S:p(S),k,T)}};function f(S){return a.get(S)||a.set(S,p(S).map(function(k){return k.replace(i,"$2")}))}function p(S){return S.match(e)||[""]}function m(S,k,T){var C=S.length,O,I,P,N;for(I=0;I<C;I++)O=S[I],O&&(x(O)&&(O='"'+O+'"'),N=g(O),P=!N&&/^\d+$/.test(O),k.call(T,O,N,P,I,S))}function g(S){return typeof S=="string"&&S&&["'",'"'].indexOf(S.charAt(0))!==-1}function v(S){return S.match(r)&&!S.match(n)}function y(S){return o.test(S)}function x(S){return!g(S)&&(v(S)||y(S))}return sb}var pa=eue(),ab,VE;function tue(){if(VE)return ab;VE=1;const t=/[A-Z\xc0-\xd6\xd8-\xde]?[a-z\xdf-\xf6\xf8-\xff]+(?:['’](?:d|ll|m|re|s|t|ve))?(?=[\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000]|[A-Z\xc0-\xd6\xd8-\xde]|$)|(?:[A-Z\xc0-\xd6\xd8-\xde]|[^\ud800-\udfff\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\d+\u2700-\u27bfa-z\xdf-\xf6\xf8-\xffA-Z\xc0-\xd6\xd8-\xde])+(?:['’](?:D|LL|M|RE|S|T|VE))?(?=[\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000]|[A-Z\xc0-\xd6\xd8-\xde](?:[a-z\xdf-\xf6\xf8-\xff]|[^\ud800-\udfff\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\d+\u2700-\u27bfa-z\xdf-\xf6\xf8-\xffA-Z\xc0-\xd6\xd8-\xde])|$)|[A-Z\xc0-\xd6\xd8-\xde]?(?:[a-z\xdf-\xf6\xf8-\xff]|[^\ud800-\udfff\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\d+\u2700-\u27bfa-z\xdf-\xf6\xf8-\xffA-Z\xc0-\xd6\xd8-\xde])+(?:['’](?:d|ll|m|re|s|t|ve))?|[A-Z\xc0-\xd6\xd8-\xde]+(?:['’](?:D|LL|M|RE|S|T|VE))?|\d*(?:1ST|2ND|3RD|(?![123])\dTH)(?=\b|[a-z_])|\d*(?:1st|2nd|3rd|(?![123])\dth)(?=\b|[A-Z_])|\d+|(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff])[\ufe0e\ufe0f]?(?:[\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff]|\ud83c[\udffb-\udfff])?(?:\u200d(?:[^\ud800-\udfff]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff])[\ufe0e\ufe0f]?(?:[\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff]|\ud83c[\udffb-\udfff])?)*/g,e=f=>f.match(t)||[],n=f=>f[0].toUpperCase()+f.slice(1),r=(f,p)=>e(f).join(p).toLowerCase(),o=f=>e(f).reduce((p,m)=>`${p}${p?m[0].toUpperCase()+m.slice(1).toLowerCase():m.toLowerCase()}`,"");return ab={words:e,upperFirst:n,camelCase:o,pascalCase:f=>n(o(f)),snakeCase:f=>r(f,"_"),kebabCase:f=>r(f,"-"),sentenceCase:f=>n(r(f," ")),titleCase:f=>e(f).map(n).join(" ")},ab}var lb=tue(),wf={exports:{}},HE;function nue(){if(HE)return wf.exports;HE=1,wf.exports=function(o){return t(e(o),o)},wf.exports.array=t;function t(o,i){var s=o.length,a=new Array(s),l={},u=s,f=n(i),p=r(o);for(i.forEach(function(g){if(!p.has(g[0])||!p.has(g[1]))throw new Error("Unknown node. There is an unknown node in the supplied edges.")});u--;)l[u]||m(o[u],u,new Set);return a;function m(g,v,y){if(y.has(g)){var x;try{x=", node was:"+JSON.stringify(g)}catch{x=""}throw new Error("Cyclic dependency"+x)}if(!p.has(g))throw new Error("Found unknown node. Make sure to provided all involved nodes. Unknown node: "+JSON.stringify(g));if(!l[v]){l[v]=!0;var S=f.get(g)||new Set;if(S=Array.from(S),v=S.length){y.add(g);do{var k=S[--v];m(k,p.get(k),y)}while(v);y.delete(g)}a[--s]=g}}}function e(o){for(var i=new Set,s=0,a=o.length;s<a;s++){var l=o[s];i.add(l[0]),i.add(l[1])}return Array.from(i)}function n(o){for(var i=new Map,s=0,a=o.length;s<a;s++){var l=o[s];i.has(l[0])||i.set(l[0],new Set),i.has(l[1])||i.set(l[1],new Set),i.get(l[0]).add(l[1])}return i}function r(o){for(var i=new Map,s=0,a=o.length;s<a;s++)i.set(o[s],s);return i}return wf.exports}var rue=nue();const oue=ir(rue),iue=Object.prototype.toString,sue=Error.prototype.toString,aue=RegExp.prototype.toString,lue=typeof Symbol<"u"?Symbol.prototype.toString:()=>"",cue=/^Symbol\((.*)\)(.*)$/;function uue(t){return t!=+t?"NaN":t===0&&1/t<0?"-0":""+t}function WE(t,e=!1){if(t==null||t===!0||t===!1)return""+t;const n=typeof t;if(n==="number")return uue(t);if(n==="string")return e?`"${t}"`:t;if(n==="function")return"[Function "+(t.name||"anonymous")+"]";if(n==="symbol")return lue.call(t).replace(cue,"Symbol($1)");const r=iue.call(t).slice(8,-1);return r==="Date"?isNaN(t.getTime())?""+t:t.toISOString(t):r==="Error"||t instanceof Error?"["+sue.call(t)+"]":r==="RegExp"?aue.call(t):null}function xs(t,e){let n=WE(t,e);return n!==null?n:JSON.stringify(t,function(r,o){let i=WE(this[r],e);return i!==null?i:o},2)}function BA(t){return t==null?[]:[].concat(t)}let FA,zA,VA,due=/\$\{\s*(\w+)\s*\}/g;FA=Symbol.toStringTag;class UE{constructor(e,n,r,o){this.name=void 0,this.message=void 0,this.value=void 0,this.path=void 0,this.type=void 0,this.params=void 0,this.errors=void 0,this.inner=void 0,this[FA]="Error",this.name="ValidationError",this.value=n,this.path=r,this.type=o,this.errors=[],this.inner=[],BA(e).forEach(i=>{if(fr.isError(i)){this.errors.push(...i.errors);const s=i.inner.length?i.inner:[i];this.inner.push(...s)}else this.errors.push(i)}),this.message=this.errors.length>1?`${this.errors.length} errors occurred`:this.errors[0]}}zA=Symbol.hasInstance;VA=Symbol.toStringTag;class fr extends Error{static formatError(e,n){const r=n.label||n.path||"this";return n=Object.assign({},n,{path:r,originalPath:n.path}),typeof e=="string"?e.replace(due,(o,i)=>xs(n[i])):typeof e=="function"?e(n):e}static isError(e){return e&&e.name==="ValidationError"}constructor(e,n,r,o,i){const s=new UE(e,n,r,o);if(i)return s;super(),this.value=void 0,this.path=void 0,this.type=void 0,this.params=void 0,this.errors=[],this.inner=[],this[VA]="Error",this.name=s.name,this.message=s.message,this.type=s.type,this.value=s.value,this.path=s.path,this.errors=s.errors,this.inner=s.inner,Error.captureStackTrace&&Error.captureStackTrace(this,fr)}static[zA](e){return UE[Symbol.hasInstance](e)||super[Symbol.hasInstance](e)}}let Fo={default:"${path} is invalid",required:"${path} is a required field",defined:"${path} must be defined",notNull:"${path} cannot be null",oneOf:"${path} must be one of the following values: ${values}",notOneOf:"${path} must not be one of the following values: ${values}",notType:({path:t,type:e,value:n,originalValue:r})=>{const o=r!=null&&r!==n?` (cast from the value \`${xs(r,!0)}\`).`:".";return e!=="mixed"?`${t} must be a \`${e}\` type, but the final value was: \`${xs(n,!0)}\``+o:`${t} must match the configured type. The validated value was: \`${xs(n,!0)}\``+o}},xr={length:"${path} must be exactly ${length} characters",min:"${path} must be at least ${min} characters",max:"${path} must be at most ${max} characters",matches:'${path} must match the following: "${regex}"',email:"${path} must be a valid email",url:"${path} must be a valid URL",uuid:"${path} must be a valid UUID",datetime:"${path} must be a valid ISO date-time",datetime_precision:"${path} must be a valid ISO date-time with a sub-second precision of exactly ${precision} digits",datetime_offset:'${path} must be a valid ISO date-time with UTC "Z" timezone',trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"},fue={min:"${path} must be greater than or equal to ${min}",max:"${path} must be less than or equal to ${max}",lessThan:"${path} must be less than ${less}",moreThan:"${path} must be greater than ${more}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"},x0={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"},pue={isValue:"${path} field must be ${value}"},Hf={noUnknown:"${path} field has unspecified keys: ${unknown}",exact:"${path} object contains unknown properties: ${properties}"},hue={min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must have ${length} items"},mue={notType:t=>{const{path:e,value:n,spec:r}=t,o=r.types.length;if(Array.isArray(n)){if(n.length<o)return`${e} tuple value has too few items, expected a length of ${o} but got ${n.length} for value: \`${xs(n,!0)}\``;if(n.length>o)return`${e} tuple value has too many items, expected a length of ${o} but got ${n.length} for value: \`${xs(n,!0)}\``}return fr.formatError(Fo.notType,t)}};Object.assign(Object.create(null),{mixed:Fo,string:xr,number:fue,date:x0,object:Hf,array:hue,boolean:pue,tuple:mue});const wx=t=>t&&t.__isYupSchema__;class Xp{static fromOptions(e,n){if(!n.then&&!n.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");let{is:r,then:o,otherwise:i}=n,s=typeof r=="function"?r:(...a)=>a.every(l=>l===r);return new Xp(e,(a,l)=>{var u;let f=s(...a)?o:i;return(u=f==null?void 0:f(l))!=null?u:l})}constructor(e,n){this.fn=void 0,this.refs=e,this.refs=e,this.fn=n}resolve(e,n){let r=this.refs.map(i=>i.getValue(n==null?void 0:n.value,n==null?void 0:n.parent,n==null?void 0:n.context)),o=this.fn(r,e,n);if(o===void 0||o===e)return e;if(!wx(o))throw new TypeError("conditions must return a schema object");return o.resolve(n)}}const Sf={context:"$",value:"."};class Ra{constructor(e,n={}){if(this.key=void 0,this.isContext=void 0,this.isValue=void 0,this.isSibling=void 0,this.path=void 0,this.getter=void 0,this.map=void 0,typeof e!="string")throw new TypeError("ref must be a string, got: "+e);if(this.key=e.trim(),e==="")throw new TypeError("ref must be a non-empty string");this.isContext=this.key[0]===Sf.context,this.isValue=this.key[0]===Sf.value,this.isSibling=!this.isContext&&!this.isValue;let r=this.isContext?Sf.context:this.isValue?Sf.value:"";this.path=this.key.slice(r.length),this.getter=this.path&&pa.getter(this.path,!0),this.map=n.map}getValue(e,n,r){let o=this.isContext?r:this.isValue?e:n;return this.getter&&(o=this.getter(o||{})),this.map&&(o=this.map(o)),o}cast(e,n){return this.getValue(e,n==null?void 0:n.parent,n==null?void 0:n.context)}resolve(){return this}describe(){return{type:"ref",key:this.key}}toString(){return`Ref(${this.key})`}static isRef(e){return e&&e.__isYupRef}}Ra.prototype.__isYupRef=!0;const ia=t=>t==null;function nl(t){function e({value:n,path:r="",options:o,originalValue:i,schema:s},a,l){const{name:u,test:f,params:p,message:m,skipAbsent:g}=t;let{parent:v,context:y,abortEarly:x=s.spec.abortEarly,disableStackTrace:S=s.spec.disableStackTrace}=o;const k={value:n,parent:v,context:y};function T(L={}){const z=HA(Object.assign({value:n,originalValue:i,label:s.spec.label,path:L.path||r,spec:s.spec,disableStackTrace:L.disableStackTrace||S},p,L.params),k),j=new fr(fr.formatError(L.message||m,z),n,z.path,L.type||u,z.disableStackTrace);return j.params=z,j}const C=x?a:l;let O={path:r,parent:v,type:u,from:o.from,createError:T,resolve(L){return WA(L,k)},options:o,originalValue:i,schema:s};const I=L=>{fr.isError(L)?C(L):L?l(null):C(T())},P=L=>{fr.isError(L)?C(L):a(L)};if(g&&ia(n))return I(!0);let F;try{var M;if(F=f.call(O,n,O),typeof((M=F)==null?void 0:M.then)=="function"){if(o.sync)throw new Error(`Validation test of type: "${O.type}" returned a Promise during a synchronous validate. This test will finish after the validate call has returned`);return Promise.resolve(F).then(I,P)}}catch(L){P(L);return}I(F)}return e.OPTIONS=t,e}function HA(t,e){if(!t)return t;for(const n of Object.keys(t))t[n]=WA(t[n],e);return t}function WA(t,e){return Ra.isRef(t)?t.getValue(e.value,e.parent,e.context):t}function gue(t,e,n,r=n){let o,i,s;return e?(pa.forEach(e,(a,l,u)=>{let f=l?a.slice(1,a.length-1):a;t=t.resolve({context:r,parent:o,value:n});let p=t.type==="tuple",m=u?parseInt(f,10):0;if(t.innerType||p){if(p&&!u)throw new Error(`Yup.reach cannot implicitly index into a tuple type. the path part "${s}" must contain an index to the tuple element, e.g. "${s}[0]"`);if(n&&m>=n.length)throw new Error(`Yup.reach cannot resolve an array item at index: ${a}, in the path: ${e}. because there is no value at that index. `);o=n,n=n&&n[m],t=p?t.spec.types[m]:t.innerType}if(!u){if(!t.fields||!t.fields[f])throw new Error(`The schema does not contain the path: ${e}. (failed at: ${s} which is a type: "${t.type}")`);o=n,n=n&&n[f],t=t.fields[f]}i=f,s=l?"["+a+"]":"."+a}),{schema:t,parent:o,parentPath:i}):{parent:o,parentPath:e,schema:t}}class Zp extends Set{describe(){const e=[];for(const n of this.values())e.push(Ra.isRef(n)?n.describe():n);return e}resolveAll(e){let n=[];for(const r of this.values())n.push(e(r));return n}clone(){return new Zp(this.values())}merge(e,n){const r=this.clone();return e.forEach(o=>r.add(o)),n.forEach(o=>r.delete(o)),r}}function fl(t,e=new Map){if(wx(t)||!t||typeof t!="object")return t;if(e.has(t))return e.get(t);let n;if(t instanceof Date)n=new Date(t.getTime()),e.set(t,n);else if(t instanceof RegExp)n=new RegExp(t),e.set(t,n);else if(Array.isArray(t)){n=new Array(t.length),e.set(t,n);for(let r=0;r<t.length;r++)n[r]=fl(t[r],e)}else if(t instanceof Map){n=new Map,e.set(t,n);for(const[r,o]of t.entries())n.set(r,fl(o,e))}else if(t instanceof Set){n=new Set,e.set(t,n);for(const r of t)n.add(fl(r,e))}else if(t instanceof Object){n={},e.set(t,n);for(const[r,o]of Object.entries(t))n[r]=fl(o,e)}else throw Error(`Unable to clone ${t}`);return n}function yue(t){if(!(t!=null&&t.length))return;const e=[];let n="",r=!1,o=!1;for(let i=0;i<t.length;i++){const s=t[i];if(s==="["&&!o){n&&(e.push(...n.split(".").filter(Boolean)),n=""),r=!0;continue}if(s==="]"&&!o){n&&(/^\d+$/.test(n)?e.push(n):e.push(n.replace(/^"|"$/g,"")),n=""),r=!1;continue}if(s==='"'){o=!o;continue}if(s==="."&&!r&&!o){n&&(e.push(n),n="");continue}n+=s}return n&&e.push(...n.split(".").filter(Boolean)),e}function bue(t,e){const n=e?`${e}.${t.path}`:t.path;return t.errors.map(r=>({message:r,path:yue(n)}))}function UA(t,e){var n;if(!((n=t.inner)!=null&&n.length)&&t.errors.length)return bue(t,e);const r=e?`${e}.${t.path}`:t.path;return t.inner.flatMap(o=>UA(o,r))}class ei{constructor(e){this.type=void 0,this.deps=[],this.tests=void 0,this.transforms=void 0,this.conditions=[],this._mutate=void 0,this.internalTests={},this._whitelist=new Zp,this._blacklist=new Zp,this.exclusiveTests=Object.create(null),this._typeCheck=void 0,this.spec=void 0,this.tests=[],this.transforms=[],this.withMutation(()=>{this.typeError(Fo.notType)}),this.type=e.type,this._typeCheck=e.check,this.spec=Object.assign({strip:!1,strict:!1,abortEarly:!0,recursive:!0,disableStackTrace:!1,nullable:!1,optional:!0,coerce:!0},e==null?void 0:e.spec),this.withMutation(n=>{n.nonNullable()})}get _type(){return this.type}clone(e){if(this._mutate)return e&&Object.assign(this.spec,e),this;const n=Object.create(Object.getPrototypeOf(this));return n.type=this.type,n._typeCheck=this._typeCheck,n._whitelist=this._whitelist.clone(),n._blacklist=this._blacklist.clone(),n.internalTests=Object.assign({},this.internalTests),n.exclusiveTests=Object.assign({},this.exclusiveTests),n.deps=[...this.deps],n.conditions=[...this.conditions],n.tests=[...this.tests],n.transforms=[...this.transforms],n.spec=fl(Object.assign({},this.spec,e)),n}label(e){let n=this.clone();return n.spec.label=e,n}meta(...e){if(e.length===0)return this.spec.meta;let n=this.clone();return n.spec.meta=Object.assign(n.spec.meta||{},e[0]),n}withMutation(e){let n=this._mutate;this._mutate=!0;let r=e(this);return this._mutate=n,r}concat(e){if(!e||e===this)return this;if(e.type!==this.type&&this.type!=="mixed")throw new TypeError(`You cannot \`concat()\` schema's of different types: ${this.type} and ${e.type}`);let n=this,r=e.clone();const o=Object.assign({},n.spec,r.spec);return r.spec=o,r.internalTests=Object.assign({},n.internalTests,r.internalTests),r._whitelist=n._whitelist.merge(e._whitelist,e._blacklist),r._blacklist=n._blacklist.merge(e._blacklist,e._whitelist),r.tests=n.tests,r.exclusiveTests=n.exclusiveTests,r.withMutation(i=>{e.tests.forEach(s=>{i.test(s.OPTIONS)})}),r.transforms=[...n.transforms,...r.transforms],r}isType(e){return e==null?!!(this.spec.nullable&&e===null||this.spec.optional&&e===void 0):this._typeCheck(e)}resolve(e){let n=this;if(n.conditions.length){let r=n.conditions;n=n.clone(),n.conditions=[],n=r.reduce((o,i)=>i.resolve(o,e),n),n=n.resolve(e)}return n}resolveOptions(e){var n,r,o,i;return Object.assign({},e,{from:e.from||[],strict:(n=e.strict)!=null?n:this.spec.strict,abortEarly:(r=e.abortEarly)!=null?r:this.spec.abortEarly,recursive:(o=e.recursive)!=null?o:this.spec.recursive,disableStackTrace:(i=e.disableStackTrace)!=null?i:this.spec.disableStackTrace})}cast(e,n={}){let r=this.resolve(Object.assign({},n,{value:e})),o=n.assert==="ignore-optionality",i=r._cast(e,n);if(n.assert!==!1&&!r.isType(i)){if(o&&ia(i))return i;let s=xs(e),a=xs(i);throw new TypeError(`The value of ${n.path||"field"} could not be cast to a value that satisfies the schema type: "${r.type}".
405
405
 
406
406
  attempted value: ${s}
407
- `+(a!==s?`result of cast: ${a}`:""))}return i}_cast(e,n){let r=e===void 0?e:this.transforms.reduce((o,i)=>i.call(this,o,e,this,n),e);return r===void 0&&(r=this.getDefault(n)),r}_validate(e,n={},r,o){let{path:i,originalValue:s=e,strict:a=this.spec.strict}=n,l=e;a||(l=this._cast(l,Object.assign({assert:!1},n)));let u=[];for(let f of Object.values(this.internalTests))f&&u.push(f);this.runTests({path:i,value:l,originalValue:s,options:n,tests:u},r,f=>{if(f.length)return o(f,l);this.runTests({path:i,value:l,originalValue:s,options:n,tests:this.tests},r,o)})}runTests(e,n,r){let o=!1,{tests:i,value:s,originalValue:a,path:l,options:u}=e,f=y=>{o||(o=!0,n(y,s))},p=y=>{o||(o=!0,r(y,s))},m=i.length,g=[];if(!m)return p([]);let v={value:s,originalValue:a,path:l,options:u,schema:this};for(let y=0;y<i.length;y++){const x=i[y];x(v,f,function(k){k&&(Array.isArray(k)?g.push(...k):g.push(k)),--m<=0&&p(g)})}}asNestedTest({key:e,index:n,parent:r,parentPath:o,originalParent:i,options:s}){const a=e??n;if(a==null)throw TypeError("Must include `key` or `index` for nested validations");const l=typeof a=="number";let u=r[a];const f=Object.assign({},s,{strict:!0,parent:r,value:u,originalValue:i[a],key:void 0,[l?"index":"key"]:a,path:l||a.includes(".")?`${o||""}[${l?a:`"${a}"`}]`:(o?`${o}.`:"")+e});return(p,m,g)=>this.resolve(f)._validate(u,f,m,g)}validate(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return new Promise((s,a)=>o._validate(e,n,(l,u)=>{fr.isError(l)&&(l.value=u),a(l)},(l,u)=>{l.length?a(new fr(l,u,void 0,void 0,i)):s(u)}))}validateSync(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i,s=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return o._validate(e,Object.assign({},n,{sync:!0}),(a,l)=>{throw fr.isError(a)&&(a.value=l),a},(a,l)=>{if(a.length)throw new fr(a,e,void 0,void 0,s);i=l}),i}isValid(e,n){return this.validate(e,n).then(()=>!0,r=>{if(fr.isError(r))return!1;throw r})}isValidSync(e,n){try{return this.validateSync(e,n),!0}catch(r){if(fr.isError(r))return!1;throw r}}_getDefault(e){let n=this.spec.default;return n==null?n:typeof n=="function"?n.call(this,e):fl(n)}getDefault(e){return this.resolve(e||{})._getDefault(e)}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){return this.clone({strict:e})}nullability(e,n){const r=this.clone({nullable:e});return r.internalTests.nullable=nl({message:n,name:"nullable",test(o){return o===null?this.schema.spec.nullable:!0}}),r}optionality(e,n){const r=this.clone({optional:e});return r.internalTests.optionality=nl({message:n,name:"optionality",test(o){return o===void 0?this.schema.spec.optional:!0}}),r}optional(){return this.optionality(!0)}defined(e=Fo.defined){return this.optionality(!1,e)}nullable(){return this.nullability(!0)}nonNullable(e=Fo.notNull){return this.nullability(!1,e)}required(e=Fo.required){return this.clone().withMutation(n=>n.nonNullable(e).defined(e))}notRequired(){return this.clone().withMutation(e=>e.nullable().optional())}transform(e){let n=this.clone();return n.transforms.push(e),n}test(...e){let n;if(e.length===1?typeof e[0]=="function"?n={test:e[0]}:n=e[0]:e.length===2?n={name:e[0],test:e[1]}:n={name:e[0],message:e[1],test:e[2]},n.message===void 0&&(n.message=Fo.default),typeof n.test!="function")throw new TypeError("`test` is a required parameters");let r=this.clone(),o=nl(n),i=n.exclusive||n.name&&r.exclusiveTests[n.name]===!0;if(n.exclusive&&!n.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return n.name&&(r.exclusiveTests[n.name]=!!n.exclusive),r.tests=r.tests.filter(s=>!(s.OPTIONS.name===n.name&&(i||s.OPTIONS.test===o.OPTIONS.test))),r.tests.push(o),r}when(e,n){!Array.isArray(e)&&typeof e!="string"&&(n=e,e=".");let r=this.clone(),o=BA(e).map(i=>new Ra(i));return o.forEach(i=>{i.isSibling&&r.deps.push(i.key)}),r.conditions.push(typeof n=="function"?new Xp(o,n):Xp.fromOptions(o,n)),r}typeError(e){let n=this.clone();return n.internalTests.typeError=nl({message:e,name:"typeError",skipAbsent:!0,test(r){return this.schema._typeCheck(r)?!0:this.createError({params:{type:this.schema.type}})}}),n}oneOf(e,n=Fo.oneOf){let r=this.clone();return e.forEach(o=>{r._whitelist.add(o),r._blacklist.delete(o)}),r.internalTests.whiteList=nl({message:n,name:"oneOf",skipAbsent:!0,test(o){let i=this.schema._whitelist,s=i.resolveAll(this.resolve);return s.includes(o)?!0:this.createError({params:{values:Array.from(i).join(", "),resolved:s}})}}),r}notOneOf(e,n=Fo.notOneOf){let r=this.clone();return e.forEach(o=>{r._blacklist.add(o),r._whitelist.delete(o)}),r.internalTests.blacklist=nl({message:n,name:"notOneOf",test(o){let i=this.schema._blacklist,s=i.resolveAll(this.resolve);return s.includes(o)?this.createError({params:{values:Array.from(i).join(", "),resolved:s}}):!0}}),r}strip(e=!0){let n=this.clone();return n.spec.strip=e,n}describe(e){const n=(e?this.resolve(e):this).clone(),{label:r,meta:o,optional:i,nullable:s}=n.spec;return{meta:o,label:r,optional:i,nullable:s,default:n.getDefault(e),type:n.type,oneOf:n._whitelist.describe(),notOneOf:n._blacklist.describe(),tests:n.tests.filter((l,u,f)=>f.findIndex(p=>p.OPTIONS.name===l.OPTIONS.name)===u).map(l=>{const u=l.OPTIONS.params&&e?HA(Object.assign({},l.OPTIONS.params),e):l.OPTIONS.params;return{name:l.OPTIONS.name,params:u}})}}get"~standard"(){const e=this;return{version:1,vendor:"yup",async validate(r){try{return{value:await e.validate(r,{abortEarly:!1})}}catch(o){if(o instanceof fr)return{issues:UA(o)};throw o}}}}}ei.prototype.__isYupSchema__=!0;for(const t of["validate","validateSync"])ei.prototype[`${t}At`]=function(e,n,r={}){const{parent:o,parentPath:i,schema:s}=gue(this,e,n,r.context);return s[t](o&&o[i],Object.assign({},r,{parent:o,path:e}))};for(const t of["equals","is"])ei.prototype[t]=ei.prototype.oneOf;for(const t of["not","nope"])ei.prototype[t]=ei.prototype.notOneOf;const vue=/^(\d{4}|[+-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,.](\d{1,}))?)?(?:(Z)|([+-])(\d{2})(?::?(\d{2}))?)?)?$/;function xue(t){const e=w0(t);if(!e)return Date.parse?Date.parse(t):Number.NaN;if(e.z===void 0&&e.plusMinus===void 0)return new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond).valueOf();let n=0;return e.z!=="Z"&&e.plusMinus!==void 0&&(n=e.hourOffset*60+e.minuteOffset,e.plusMinus==="+"&&(n=0-n)),Date.UTC(e.year,e.month,e.day,e.hour,e.minute+n,e.second,e.millisecond)}function w0(t){var e,n;const r=vue.exec(t);return r?{year:vi(r[1]),month:vi(r[2],1)-1,day:vi(r[3],1),hour:vi(r[4]),minute:vi(r[5]),second:vi(r[6]),millisecond:r[7]?vi(r[7].substring(0,3)):0,precision:(e=(n=r[7])==null?void 0:n.length)!=null?e:void 0,z:r[8]||void 0,plusMinus:r[9]||void 0,hourOffset:vi(r[10]),minuteOffset:vi(r[11])}:null}function vi(t,e=0){return Number(t)||e}let wue=/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Sue=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,Cue=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,Tue="^\\d{4}-\\d{2}-\\d{2}",kue="\\d{2}:\\d{2}:\\d{2}",Eue="(([+-]\\d{2}(:?\\d{2})?)|Z)",Oue=new RegExp(`${Tue}T${kue}(\\.\\d+)?${Eue}$`),Mue=t=>ia(t)||t===t.trim(),_ue={}.toString();function sa(){return new qA}class qA extends ei{constructor(){super({type:"string",check(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}}),this.withMutation(()=>{this.transform((e,n)=>{if(!this.spec.coerce||this.isType(e)||Array.isArray(e))return e;const r=e!=null&&e.toString?e.toString():e;return r===_ue?e:r})})}required(e){return super.required(e).withMutation(n=>n.test({message:e||Fo.required,name:"required",skipAbsent:!0,test:r=>!!r.length}))}notRequired(){return super.notRequired().withMutation(e=>(e.tests=e.tests.filter(n=>n.OPTIONS.name!=="required"),e))}length(e,n=xr.length){return this.test({message:n,name:"length",exclusive:!0,params:{length:e},skipAbsent:!0,test(r){return r.length===this.resolve(e)}})}min(e,n=xr.min){return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(r){return r.length>=this.resolve(e)}})}max(e,n=xr.max){return this.test({name:"max",exclusive:!0,message:n,params:{max:e},skipAbsent:!0,test(r){return r.length<=this.resolve(e)}})}matches(e,n){let r=!1,o,i;return n&&(typeof n=="object"?{excludeEmptyString:r=!1,message:o,name:i}=n:o=n),this.test({name:i||"matches",message:o||xr.matches,params:{regex:e},skipAbsent:!0,test:s=>s===""&&r||s.search(e)!==-1})}email(e=xr.email){return this.matches(wue,{name:"email",message:e,excludeEmptyString:!0})}url(e=xr.url){return this.matches(Sue,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=xr.uuid){return this.matches(Cue,{name:"uuid",message:e,excludeEmptyString:!1})}datetime(e){let n="",r,o;return e&&(typeof e=="object"?{message:n="",allowOffset:r=!1,precision:o=void 0}=e:n=e),this.matches(Oue,{name:"datetime",message:n||xr.datetime,excludeEmptyString:!0}).test({name:"datetime_offset",message:n||xr.datetime_offset,params:{allowOffset:r},skipAbsent:!0,test:i=>{if(!i||r)return!0;const s=w0(i);return s?!!s.z:!1}}).test({name:"datetime_precision",message:n||xr.datetime_precision,params:{precision:o},skipAbsent:!0,test:i=>{if(!i||o==null)return!0;const s=w0(i);return s?s.precision===o:!1}})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=xr.trim){return this.transform(n=>n!=null?n.trim():n).test({message:e,name:"trim",test:Mue})}lowercase(e=xr.lowercase){return this.transform(n=>ia(n)?n:n.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>ia(n)||n===n.toLowerCase()})}uppercase(e=xr.uppercase){return this.transform(n=>ia(n)?n:n.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>ia(n)||n===n.toUpperCase()})}}sa.prototype=qA.prototype;let KA=new Date(""),Rue=t=>Object.prototype.toString.call(t)==="[object Date]";function Sx(){return new Gu}class Gu extends ei{constructor(){super({type:"date",check(e){return Rue(e)&&!isNaN(e.getTime())}}),this.withMutation(()=>{this.transform((e,n)=>!this.spec.coerce||this.isType(e)||e===null?e:(e=xue(e),isNaN(e)?Gu.INVALID_DATE:new Date(e)))})}prepareParam(e,n){let r;if(Ra.isRef(e))r=e;else{let o=this.cast(e);if(!this._typeCheck(o))throw new TypeError(`\`${n}\` must be a Date or a value that can be \`cast()\` to a Date`);r=o}return r}min(e,n=x0.min){let r=this.prepareParam(e,"min");return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(o){return o>=this.resolve(r)}})}max(e,n=x0.max){let r=this.prepareParam(e,"max");return this.test({message:n,name:"max",exclusive:!0,params:{max:e},skipAbsent:!0,test(o){return o<=this.resolve(r)}})}}Gu.INVALID_DATE=KA;Sx.prototype=Gu.prototype;Sx.INVALID_DATE=KA;function Iue(t,e=[]){let n=[],r=new Set,o=new Set(e.map(([s,a])=>`${s}-${a}`));function i(s,a){let l=pa.split(s)[0];r.add(l),o.has(`${a}-${l}`)||n.push([a,l])}for(const s of Object.keys(t)){let a=t[s];r.add(s),Ra.isRef(a)&&a.isSibling?i(a.path,s):wx(a)&&"deps"in a&&a.deps.forEach(l=>i(l,s))}return oue.array(Array.from(r),n).reverse()}function qE(t,e){let n=1/0;return t.some((r,o)=>{var i;if((i=e.path)!=null&&i.includes(r))return n=o,!0}),n}function YA(t){return(e,n)=>qE(t,e)-qE(t,n)}const Aue=(t,e,n)=>{if(typeof t!="string")return t;let r=t;try{r=JSON.parse(t)}catch{}return n.isType(r)?r:t};function Wf(t){if("fields"in t){const e={};for(const[n,r]of Object.entries(t.fields))e[n]=Wf(r);return t.setFields(e)}if(t.type==="array"){const e=t.optional();return e.innerType&&(e.innerType=Wf(e.innerType)),e}return t.type==="tuple"?t.optional().clone({types:t.spec.types.map(Wf)}):"optional"in t?t.optional():t}const Due=(t,e)=>{const n=[...pa.normalizePath(e)];if(n.length===1)return n[0]in t;let r=n.pop(),o=pa.getter(pa.join(n),!0)(t);return!!(o&&r in o)};let KE=t=>Object.prototype.toString.call(t)==="[object Object]";function YE(t,e){let n=Object.keys(t.fields);return Object.keys(e).filter(r=>n.indexOf(r)===-1)}const Pue=YA([]);function Cx(t){return new GA(t)}class GA extends ei{constructor(e){super({type:"object",check(n){return KE(n)||typeof n=="function"}}),this.fields=Object.create(null),this._sortErrors=Pue,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{e&&this.shape(e)})}_cast(e,n={}){var r;let o=super._cast(e,n);if(o===void 0)return this.getDefault(n);if(!this._typeCheck(o))return o;let i=this.fields,s=(r=n.stripUnknown)!=null?r:this.spec.noUnknown,a=[].concat(this._nodes,Object.keys(o).filter(p=>!this._nodes.includes(p))),l={},u=Object.assign({},n,{parent:l,__validating:n.__validating||!1}),f=!1;for(const p of a){let m=i[p],g=p in o,v=o[p];if(m){let y;u.path=(n.path?`${n.path}.`:"")+p,m=m.resolve({value:v,context:n.context,parent:l});let x=m instanceof ei?m.spec:void 0,S=x==null?void 0:x.strict;if(x!=null&&x.strip){f=f||p in o;continue}y=!n.__validating||!S?m.cast(v,u):v,y!==void 0&&(l[p]=y)}else g&&!s&&(l[p]=v);(g!==p in l||l[p]!==v)&&(f=!0)}return f?l:o}_validate(e,n={},r,o){let{from:i=[],originalValue:s=e,recursive:a=this.spec.recursive}=n;n.from=[{schema:this,value:s},...i],n.__validating=!0,n.originalValue=s,super._validate(e,n,r,(l,u)=>{if(!a||!KE(u)){o(l,u);return}s=s||u;let f=[];for(let p of this._nodes){let m=this.fields[p];!m||Ra.isRef(m)||f.push(m.asNestedTest({options:n,key:p,parent:u,parentPath:n.path,originalParent:s}))}this.runTests({tests:f,value:u,originalValue:s,options:n},r,p=>{o(p.sort(this._sortErrors).concat(l),u)})})}clone(e){const n=super.clone(e);return n.fields=Object.assign({},this.fields),n._nodes=this._nodes,n._excludedEdges=this._excludedEdges,n._sortErrors=this._sortErrors,n}concat(e){let n=super.concat(e),r=n.fields;for(let[o,i]of Object.entries(this.fields)){const s=r[o];r[o]=s===void 0?i:s}return n.withMutation(o=>o.setFields(r,[...this._excludedEdges,...e._excludedEdges]))}_getDefault(e){if("default"in this.spec)return super._getDefault(e);if(!this._nodes.length)return;let n={};return this._nodes.forEach(r=>{var o;const i=this.fields[r];let s=e;(o=s)!=null&&o.value&&(s=Object.assign({},s,{parent:s.value,value:s.value[r]})),n[r]=i&&"getDefault"in i?i.getDefault(s):void 0}),n}setFields(e,n){let r=this.clone();return r.fields=e,r._nodes=Iue(e,n),r._sortErrors=YA(Object.keys(e)),n&&(r._excludedEdges=n),r}shape(e,n=[]){return this.clone().withMutation(r=>{let o=r._excludedEdges;return n.length&&(Array.isArray(n[0])||(n=[n]),o=[...r._excludedEdges,...n]),r.setFields(Object.assign(r.fields,e),o)})}partial(){const e={};for(const[n,r]of Object.entries(this.fields))e[n]="optional"in r&&r.optional instanceof Function?r.optional():r;return this.setFields(e)}deepPartial(){return Wf(this)}pick(e){const n={};for(const r of e)this.fields[r]&&(n[r]=this.fields[r]);return this.setFields(n,this._excludedEdges.filter(([r,o])=>e.includes(r)&&e.includes(o)))}omit(e){const n=[];for(const r of Object.keys(this.fields))e.includes(r)||n.push(r);return this.pick(n)}from(e,n,r){let o=pa.getter(e,!0);return this.transform(i=>{if(!i)return i;let s=i;return Due(i,e)&&(s=Object.assign({},i),r||delete s[e],s[n]=o(i)),s})}json(){return this.transform(Aue)}exact(e){return this.test({name:"exact",exclusive:!0,message:e||Hf.exact,test(n){if(n==null)return!0;const r=YE(this.schema,n);return r.length===0||this.createError({params:{properties:r.join(", ")}})}})}stripUnknown(){return this.clone({noUnknown:!0})}noUnknown(e=!0,n=Hf.noUnknown){typeof e!="boolean"&&(n=e,e=!0);let r=this.test({name:"noUnknown",exclusive:!0,message:n,test(o){if(o==null)return!0;const i=YE(this.schema,o);return!e||i.length===0||this.createError({params:{unknown:i.join(", ")}})}});return r.spec.noUnknown=e,r}unknown(e=!0,n=Hf.noUnknown){return this.noUnknown(!e,n)}transformKeys(e){return this.transform(n=>{if(!n)return n;const r={};for(const o of Object.keys(n))r[e(o)]=n[o];return r})}camelCase(){return this.transformKeys(lb.camelCase)}snakeCase(){return this.transformKeys(lb.snakeCase)}constantCase(){return this.transformKeys(e=>lb.snakeCase(e).toUpperCase())}describe(e){const n=(e?this.resolve(e):this).clone(),r=super.describe(e);r.fields={};for(const[i,s]of Object.entries(n.fields)){var o;let a=e;(o=a)!=null&&o.value&&(a=Object.assign({},a,{parent:a.value,value:a.value[i]})),r.fields[i]=s.describe(a)}return r}}Cx.prototype=GA.prototype;const Nue=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,modifyCitation:i,readOnly:s=!1,showCloseBtn:a=!1}=t,l=X.useRef(null),[u,f]=X.useState(!1),[p,m]=X.useState(!1),[g,v]=X.useState({type:"Url",source:"",title:"",accessedAt:null,url:"",classification:""});return X.useEffect(()=>{i&&v({...i,type:"Url"})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),a&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(Kh,{})})]}),b.jsx(Ut.Formik,{innerRef:l,enableReinitialize:!0,initialValues:g,onSubmit:async y=>{f(!0),n(y).catch(x=>{throw f(!1),x}).finally(()=>f(!1))},validationSchema:Cx({source:sa().required("Source is required"),title:sa().required("Title is required"),accessedAt:Sx().required("Accessed At is required"),url:sa().required("URL is required"),classification:sa().required("Classification is required")}),validateOnBlur:p,validateOnChange:p,children:({handleSubmit:y})=>b.jsxs(Ut.Form,{autoComplete:"off",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"column",gap:s?1:0,children:[b.jsx(vs,{name:"source",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(vs,{name:"title",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(Cp,{name:"accessedAt",disabled:u,required:!0,margin:"none",isDatePicker:!0,readOnly:s}),b.jsx(vs,{name:"url",label:"URL",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(xI,{row:!0,name:"classification",required:!0,radios:[{label:"Public Source",value:"Public Source",helperText:"URL is accessible to anyone from any location without special permissions. You can safely access this URL on any computer, including public or shared devices."},{label:"Proprietary Source",value:"Proprietary Source",helperText:"For private, sensitive, or access-controlled content. Use a VPN, or take extra precautions, when accessing to protect your privacy."}],margin:"none",readOnly:s})]}),b.jsx(H.DialogActions,{sx:{px:0},children:s?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(xx,{size:"small",loading:u,type:"button",onClick:()=>{m(!0),y()},children:i?"Update Citation":"Add New Citation"})]})})]})})]})},JA=t=>{const{gap:e=1,alignItems:n="center",...r}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"row",gap:e,alignItems:n,...r})},$ue=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,disableFileUpload:i=!1,modifyCitation:s,readOnly:a=!1,showCloseBtn:l=!1}=t,u=X.useRef(null),[f,p]=X.useState(!1),[m,g]=X.useState(!1),[v,y]=X.useState({type:"Attachment",title:"",file:void 0,fileName:""});return X.useEffect(()=>{s&&y({...s,type:"Attachment",file:void 0})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),l&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(Kh,{})})]}),b.jsx(Ut.Formik,{innerRef:u,enableReinitialize:!0,initialValues:v,validationSchema:Cx().shape({title:sa().required("Title is required"),fileName:sa().required("A file is required")}),validateOnBlur:m,validateOnChange:m,onSubmit:async x=>{p(!0),n(x).catch(S=>{throw p(!1),S}).finally(()=>p(!1))},children:({values:x,setFieldValue:S,handleSubmit:k})=>{var T;return X.useEffect(()=>{var C,O;(C=x.file)!=null&&C.name&&S("fileName",(O=x.file)==null?void 0:O.name)},[(T=x.file)==null?void 0:T.name]),b.jsxs(Ut.Form,{autoComplete:"off",children:[b.jsx(vs,{name:"title",disabled:f,required:!0,margin:"none",readOnly:a}),b.jsxs(H.Box,{marginTop:i||a?0:1,children:[b.jsxs(JA,{alignItems:"flex-start",children:[!i&&!a&&b.jsx(yI,{name:"file",errorMode:"hidden"}),b.jsx(vs,{readOnly:!0,name:"fileName",label:a||i?"File Name":""})]}),b.jsx(Or,{name:"fileName"})]}),b.jsx(H.DialogActions,{sx:{px:0},children:a?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(xx,{size:"small",loading:f,type:"button",onClick:()=>{g(!0),k()},children:s?"Update Attachment":"Upload Attachment"})]})})]})}})]})},Ju=t=>{const{open:e=!1,onClose:n,title:r,children:o,actions:i,closeBtnLabel:s,closeButtonPosition:a,closeButtonProps:l={},disableDismiss:u=!1,...f}=t;if(!e)return null;const p=a==="bottom"||a==="top-and-bottom",m=a==="top"||a==="top-and-bottom",g=()=>{if(s&&p)return b.jsx(H.Button,{className:"MBv2_Modal_Close",onClick:t.onClose,...l,children:s})},v=()=>{if(i)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",width:"100%",gap:"0.25rem",children:[b.jsx(H.Box,{children:g()}),b.jsxs(H.Box,{display:"flex",gap:".25rem",children:[...i]})]})});if(s&&p)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsx(H.Box,{children:g()})})};return b.jsxs(H.Dialog,{className:"MBv2_Modal",open:e,onClose:()=>{u||n==null||n()},...f,children:[typeof r=="string"?b.jsx(H.DialogTitle,{className:"MBv2_Modal_Title",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[r,m&&b.jsx(H.IconButton,{"data-testid":"modal-header-close-btn",onClick:n,children:b.jsx(Kh,{})})]})}):r,o&&(typeof o=="string"?b.jsx(H.DialogContent,{className:"MBv2_Modal_Content",children:b.jsx(H.DialogContentText,{className:"MBv2_Modal_Content_Text",children:o})}):o),v()]})};function Lue(t){return Ue("MuiAlert",t)}const GE=ze("MuiAlert",["root","action","icon","message","filled","colorSuccess","colorInfo","colorWarning","colorError","filledSuccess","filledInfo","filledWarning","filledError","outlined","outlinedSuccess","outlinedInfo","outlinedWarning","outlinedError","standard","standardSuccess","standardInfo","standardWarning","standardError"]),jue=Ae(b.jsx("path",{d:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"}),"SuccessOutlined"),Bue=Ae(b.jsx("path",{d:"M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z"}),"ReportProblemOutlined"),Fue=Ae(b.jsx("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutline"),zue=Ae(b.jsx("path",{d:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z"}),"InfoOutlined"),Vue=Ae(b.jsx("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),Hue=t=>{const{variant:e,color:n,severity:r,classes:o}=t,i={root:["root",`color${Ie(n||r)}`,`${e}${Ie(n||r)}`,`${e}`],icon:["icon"],message:["message"],action:["action"]};return We(i,Lue,o)},Wue=te(Os,{name:"MuiAlert",slot:"Root",overridesResolver:(t,e)=>{const{ownerState:n}=t;return[e.root,e[n.variant],e[`${n.variant}${Ie(n.color||n.severity)}`]]}})(yt(({theme:t})=>{const e=t.palette.mode==="light"?ga:Sl,n=t.palette.mode==="light"?Sl:ga;return{...t.typography.body2,backgroundColor:"transparent",display:"flex",padding:"6px 16px",variants:[...Object.entries(t.palette).filter(Ln(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"standard"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),backgroundColor:t.vars?t.vars.palette.Alert[`${r}StandardBg`]:n(t.palette[r].light,.9),[`& .${GE.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Ln(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"outlined"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),border:`1px solid ${(t.vars||t).palette[r].light}`,[`& .${GE.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Ln(["dark"])).map(([r])=>({props:{colorSeverity:r,variant:"filled"},style:{fontWeight:t.typography.fontWeightMedium,...t.vars?{color:t.vars.palette.Alert[`${r}FilledColor`],backgroundColor:t.vars.palette.Alert[`${r}FilledBg`]}:{backgroundColor:t.palette.mode==="dark"?t.palette[r].dark:t.palette[r].main,color:t.palette.getContrastText(t.palette[r].main)}}}))]}})),Uue=te("div",{name:"MuiAlert",slot:"Icon",overridesResolver:(t,e)=>e.icon})({marginRight:12,padding:"7px 0",display:"flex",fontSize:22,opacity:.9}),que=te("div",{name:"MuiAlert",slot:"Message",overridesResolver:(t,e)=>e.message})({padding:"8px 0",minWidth:0,overflow:"auto"}),Kue=te("div",{name:"MuiAlert",slot:"Action",overridesResolver:(t,e)=>e.action})({display:"flex",alignItems:"flex-start",padding:"4px 0 0 16px",marginLeft:"auto",marginRight:-8}),JE={success:b.jsx(jue,{fontSize:"inherit"}),warning:b.jsx(Bue,{fontSize:"inherit"}),error:b.jsx(Fue,{fontSize:"inherit"}),info:b.jsx(zue,{fontSize:"inherit"})},XA=A.forwardRef(function(e,n){const r=ht({props:e,name:"MuiAlert"}),{action:o,children:i,className:s,closeText:a="Close",color:l,components:u={},componentsProps:f={},icon:p,iconMapping:m=JE,onClose:g,role:v="alert",severity:y="success",slotProps:x={},slots:S={},variant:k="standard",...T}=r,C={...r,color:l,severity:y,variant:k,colorSeverity:l||y},O=Hue(C),I={slots:{closeButton:u.CloseButton,closeIcon:u.CloseIcon,...S},slotProps:{...f,...x}},[P,N]=Et("root",{ref:n,shouldForwardComponentProp:!0,className:ge(O.root,s),elementType:Wue,externalForwardedProps:{...I,...T},ownerState:C,additionalProps:{role:v,elevation:0}}),[F,M]=Et("icon",{className:O.icon,elementType:Uue,externalForwardedProps:I,ownerState:C}),[L,z]=Et("message",{className:O.message,elementType:que,externalForwardedProps:I,ownerState:C}),[j,D]=Et("action",{className:O.action,elementType:Kue,externalForwardedProps:I,ownerState:C}),[R,_]=Et("closeButton",{elementType:Gl,externalForwardedProps:I,ownerState:C}),[B,U]=Et("closeIcon",{elementType:Vue,externalForwardedProps:I,ownerState:C});return b.jsxs(P,{...N,children:[p!==!1?b.jsx(F,{...M,children:p||m[y]||JE[y]}):null,b.jsx(L,{...z,children:i}),o!=null?b.jsx(j,{...D,children:o}):null,o==null&&g?b.jsx(j,{...D,children:b.jsx(R,{size:"small","aria-label":a,title:a,color:"inherit",onClick:g,..._,children:b.jsx(B,{fontSize:"small",...U})})}):null]})});process.env.NODE_ENV!=="production"&&(XA.propTypes={action:c.node,children:c.node,classes:c.object,className:c.string,closeText:c.string,color:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),components:c.shape({CloseButton:c.elementType,CloseIcon:c.elementType}),componentsProps:c.shape({closeButton:c.object,closeIcon:c.object}),icon:c.node,iconMapping:c.shape({error:c.node,info:c.node,success:c.node,warning:c.node}),onClose:c.func,role:c.string,severity:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),slotProps:c.shape({action:c.oneOfType([c.func,c.object]),closeButton:c.oneOfType([c.func,c.object]),closeIcon:c.oneOfType([c.func,c.object]),icon:c.oneOfType([c.func,c.object]),message:c.oneOfType([c.func,c.object]),root:c.oneOfType([c.func,c.object])}),slots:c.shape({action:c.elementType,closeButton:c.elementType,closeIcon:c.elementType,icon:c.elementType,message:c.elementType,root:c.elementType}),sx:c.oneOfType([c.arrayOf(c.oneOfType([c.func,c.object,c.bool])),c.func,c.object]),variant:c.oneOfType([c.oneOf(["filled","outlined","standard"]),c.string])});const Xu=t=>{var g;const{noIcon:e=!1,children:n,severity:r="success",variant:o="leftBorder",sx:i,title:s,...a}=t,{palette:l}=H.useTheme(),u=e?{icon:!1}:{},f=o==="leftBorder"?"standard":o,p=o==="leftBorder"?{...i,borderLeft:`4px solid ${(g=l[r])==null?void 0:g.main}`}:i,m=s?{icon:{sx:{mt:"6px"}}}:{};return b.jsxs(XA,{severity:r,variant:f,sx:p,slotProps:m,...u,...a,children:[s&&b.jsx(H.Typography,{variant:"h3",children:s}),n]})},ZA=t=>b.jsx(Xu,{severity:"error",...t}),QA=t=>b.jsx(Xu,{severity:"success",...t}),Yue=t=>{const{alert:e,setAlert:n}=t,r=()=>n(void 0);return b.jsxs(b.Fragment,{children:[(e==null?void 0:e.type)==="Error"&&b.jsx(ZA,{"data-testid":"citation-menu-error",onClose:r,title:e.title,children:e.message.toString()}),(e==null?void 0:e.type)==="Success"&&b.jsx(QA,{"data-testid":"citation-menu-success",onClose:r,children:e.message})]})};function eD({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:a,onCancel:l,initialSelectedIds:u=[],onContentChange:f,onError:p=()=>{},renderAsSelectablePopup:m=!1,addlActions:g,canLaunchUrl:v,readOnly:y}){const[x,S]=X.useState("Insert Citation/Attachment(s)"),[k,T]=X.useState(u),[C,O]=X.useState(void 0),[I,P]=X.useState(void 0),N=G=>{P(void 0),S(G)},[F,M]=X.useState(0);X.useEffect(()=>{f==null||f()},[x,I,f]);const L=(G=!1)=>{(!m||G)&&M(ee=>ee+1)},z=(G,ee)=>{var de;const ue=typeof((de=ee.response)==null?void 0:de.data)=="string"&&ee.response.data,oe=typeof ee.message=="string"&&ee.message;P({type:"Error",title:G,message:ue??oe}),p(ee)},j=G=>P({type:"Success",title:"",message:G}),D=async G=>{if(x==="Insert Citation/Attachment(s)")throw Error("onSave called with invalid state");if(x==="Edit Citation"||x==="Edit Attachment"){if(G.id===void 0)throw Error("Failed to update citation. Citation is missing id");await(n==null?void 0:n(G).then(()=>{N("Insert Citation/Attachment(s)"),L()}).catch(ue=>{z("Failed to update",ue)}))}else await(e==null?void 0:e(G).then(ue=>{T([...k,ue.id]),N("Insert Citation/Attachment(s)"),L()}).catch(ue=>{z("Failed to create",ue)}))},R=r&&(async G=>r(G).then(()=>{L(!0),T(k.filter(ee=>ee!==G)),j("Successfully deleted")}).catch(ee=>z("Failed to delete",ee))),_=(G,ee)=>{o(G.id).then(ue=>{O(ue),N(ee)}).catch(ue=>{z("Failed to load",ue)})},B=i&&(async G=>i(G).catch(ee=>{z(`Failed to download ${G.fileName}`,ee)})),U=s&&(async G=>s(G).catch(ee=>{z(`Failed to view ${G.fileName}`,ee)})),K=b.jsx(Qce,{refreshKey:F,getCitationsPaginated:G=>t(G).then(ee=>(f==null||f(),ee)),onCancel:l,onNewCitation:()=>{O(void 0),N("Add Citation")},onNewAttachment:()=>{O(void 0),N("Add Attachment")},onEditCitation:G=>_(G,y?"View Citation":"Edit Citation"),onEditAttachment:G=>_(G,y?"View Attachment":"Edit Attachment"),onDeleteCitation:R,onDownloadAttachment:B,onViewAttachment:U,onSelect:a,setSelectedIds:T,selectedIds:k,onError:p,condenseTable:m,canSelect:m,title:m&&!y?x:"Attachments & Citations",addlActions:g,canCreate:!!e,canEdit:!!n,canDelete:!!R,canLaunchUrl:v,readOnly:y,showCloseBtn:m}),W=b.jsx(Nue,{modifyCitation:C,onSave:D,onCancel:()=>N("Insert Citation/Attachment(s)"),onClose:l,title:x,readOnly:x==="View Citation",showCloseBtn:m}),Y=b.jsx($ue,{onSave:D,onCancel:()=>N("Insert Citation/Attachment(s)"),onClose:l,modifyCitation:C,disableFileUpload:x==="Edit Attachment",title:x,readOnly:x==="View Attachment",showCloseBtn:m}),re=b.jsx(Yue,{alert:I,setAlert:P}),ce=x==="Add Citation"||x==="Edit Citation"||x==="View Citation",pe=x==="Add Attachment"||x==="Edit Attachment"||x==="View Attachment";if(m){let G=null;return!m||x==="Insert Citation/Attachment(s)"?G=K:ce?G=W:pe&&(G=Y),b.jsxs(H.Box,{width:"500px",children:[re,b.jsx(H.Box,{paddingTop:"8px",children:G})]})}return b.jsxs(H.Box,{width:"100%",children:[x==="Insert Citation/Attachment(s)"&&re,b.jsx(H.Box,{paddingTop:"8px",children:K}),b.jsx(Ju,{open:ce||pe,children:b.jsxs(H.Box,{padding:"10px 20px",minWidth:"400px","data-testid":"citation-form-modal",children:[re,ce?W:Y]})})]})}function tD({...t}){return b.jsx(eD,{renderAsSelectablePopup:!0,...t})}const Gue=H.styled("div",{name:"CitationBubbleMenu",slot:"content",overridesResolver:(t,e)=>e.content})(({theme:t})=>{const e=t.palette.mode==="dark";return{padding:t.spacing(1.5,2,.5),backgroundColor:e?"#101010":"#f9f9f9",border:`1px solid ${t.palette.grey[e?700:200]}`}});function Jue({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,canLaunchUrl:a,readOnly:l,...u}){const f=Ct();if(f&&!("citationBubbleMenuHandler"in(f==null?void 0:f.storage)))throw new Error("You must add the CitationBubbleMenuHandler extension to the useEditor `extensions` array in order to use this component!");const p=f==null?void 0:f.storage.citationBubbleMenuHandler,m=p.isOpen,g=p.selectedIds,v=p.selectedNodePos,y=T=>{f&&(T.length===0?f.commands.deleteCitation(v):g.length===0?f.commands.insertCitation({ids:T}):f.commands.updateCitation({ids:T},v))},x=T=>{y(T),f==null||f.commands.closeCitationBubbleMenu()},S=()=>{y(g),f==null||f.commands.closeCitationBubbleMenu()},k=X.useCallback(()=>{requestAnimationFrame(()=>{f!=null&&f.view&&f.view.dispatch(f.view.state.tr)})},[f]);return f?b.jsx(mv,{editor:f,open:m,...p.bubbleMenuOptions,...u,children:b.jsx(Gue,{children:b.jsx(tD,{getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:x,onCancel:S,initialSelectedIds:g,onContentChange:k,canLaunchUrl:a,readOnly:l})})}):null}const Xue=()=>mn.create({name:"citationBubbleMenuHandler",addStorage(){return{isOpen:!1,selectedIds:[],bubbleMenuOptions:void 0,selectedNodePos:0}},addCommands(){return{openCitationBubbleMenu:(t={},e)=>({editor:n,dispatch:r})=>{var a;const{doc:o}=n.state,i=o.nodeAt(e??0),s=((a=i==null?void 0:i.attrs)==null?void 0:a.ids)??[];return r&&(this.storage.isOpen=!0,this.storage.selectedIds=s,this.storage.bubbleMenuOptions=t,this.storage.selectedNodePos=e??0),!0},closeCitationBubbleMenu:()=>({commands:t,dispatch:e})=>this.storage.isOpen?(t.focus(),e&&(this.storage.isOpen=!1,this.storage.selectedIds=[],this.storage.selectedNodePos=0),!0):!1}},onSelectionUpdate(){this.storage.isOpen&&!this.editor.isActive("citation")&&this.editor.commands.closeCitationBubbleMenu()},addKeyboardShortcuts(){return{"Mod-Shift-c":()=>(this.editor.commands.openCitationBubbleMenu(),!0)}}});function Zue(t){const e=Ct(),n=X.useRef(null);return b.jsx(wt,{buttonRef:n,tooltipLabel:"Insert Citation/Attachment",tooltipShortcutKeys:["mod","Shift","C"],disabled:!(e!=null&&e.isEditable),onClick:()=>e==null?void 0:e.commands.openCitationBubbleMenu({anchorEl:n.current,placement:"bottom"}),...t,children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:"4px",alignItems:"center",children:[b.jsx(lne,{fontSize:"small"}),b.jsx(H.Typography,{variant:"body2",children:"Insert Citation/Attachment"})]})})}const nD=X.createContext(void 0),rD=()=>{const t=X.useContext(nD);if(!t)throw new Error("useSync must be used inside CitationFieldProvider");return t},Que=({node:t,HTMLAttributes:e,selected:n,extension:r,updateAttributes:o,deleteNode:i})=>{const s=t.attrs.ids||[],{citations:a,isLoaded:l}=rD(),[u,f]=X.useState(s?String(s):""),[p,m]=X.useState([]),g=r.options.citationMaxLength;if(X.useEffect(()=>{if(!l)return;const v=a.filter(S=>s.includes(S.id)),y=v.map(S=>$l.truncate(S.title,{length:g,omission:"..."})).join(", ");f(y),m(v);const x=v.map(S=>S.id);x.length===0?setTimeout(i,0):x.length!==s.length&&setTimeout(()=>o({ids:v.map(S=>S.id)}),0)},[a,s,l]),p.length!==0)return b.jsx(Bv,{as:"span",...e,"data-testid":"citation-node-component",children:b.jsx(H.Tooltip,{title:b.jsx(H.Box,{className:"citation-tooltip",children:p.map((v,y)=>{var S;const x=[v.source,v.title,v.fileName,v.url,(S=v.accessedAt)==null?void 0:S.slice(0,10),v.classification];return b.jsxs(H.Typography,{variant:"subtitle2",children:[x.filter(Boolean).join(" | "),y<p.length-1&&b.jsx(H.Divider,{className:"citation-tooltip-divider"})]},v.id)})}),slotProps:{tooltip:{sx:{maxWidth:500}}},children:b.jsx("a",{href:"#",onClick:v=>{v.preventDefault(),v.stopPropagation()},className:n?"selected-citation-link":"citation-link",children:u})})})},ede=nn.create({name:"citation",group:"inline",inline:!0,atom:!0,selectable:!0,addAttributes(){return{ids:{default:[],parseHTML:t=>{const e=t.getAttribute("ids");return e?e.split(",").map(n=>parseInt(n.trim(),10)).filter(n=>!isNaN(n)):[]},renderHTML:t=>({ids:Array.isArray(t.ids)?t.ids.join(","):""})}}},parseHTML(){return[{tag:"citation"}]},renderHTML({HTMLAttributes:t}){return["citation",St(t)]},addNodeView(){return Fv(Que)},addProseMirrorPlugins(){return[new rn({props:{handleClickOn:(t,e,n,r,o,i)=>n&&n.type.name==="citation"?(this.editor.commands.openCitationBubbleMenu({},r),!0):!1}})]},addCommands(){return{insertCitation:t=>({commands:e})=>e.insertContent({type:"citation",attrs:t}),updateCitation:(t,e)=>({state:n,dispatch:r,tr:o})=>{const i=n.doc.nodeAt(e);return!i||i.type.name!=="citation"?!1:(o.setNodeMarkup(e,void 0,t),r&&r(o),!0)},deleteCitation:t=>({tr:e,dispatch:n})=>{if(typeof t!="number")return!1;const r=t,o=t+1;return n&&n(e.delete(r,o)),!0}}}}),oD=t=>b.jsx(gI,{name:t.name,label:"Not Applicable",errorMode:"hidden"}),tde=t=>{const{name:e,label:n=Bn(e),hideLabel:r=!1,required:o=!1,readOnly:i,margin:s="dense",citationMaxLength:a=24,getCitationsPaginated:l,onCreateCitation:u,onUpdateCitation:f,onDeleteCitation:p,getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y=()=>{},placeholder:x="Start typing here...",notApplicableName:S,errorMode:k="normal",canLaunchUrl:T}=t,C=[TR,PA.configure({placeholder:x}),Xue(),ede.configure({citationMaxLength:a})],[O,I,P]=Ut.useField({name:e}),{setValue:N}=P,{value:F}=O,{addUpdateCitation:M,deleteCitation:L,batchUpdate:z,citations:j}=rD();X.useEffect(()=>{var pe;const re=(pe=D==null?void 0:D.current)==null?void 0:pe.editor;if(!re)return;re.getHTML()!==F&&setTimeout(()=>{re.commands.setContent(F)},0)},[F]);const D=X.useRef(null),R={normal:{marginTop:"16px",marginBottom:"8px"},dense:{marginTop:"8px",marginBottom:"4px"},none:{margin:0}},_=(re=void 0)=>{var G,ee;const ce=((ee=(G=D.current)==null?void 0:G.editor)==null?void 0:ee.getHTML())??"",pe=!ce.replace(/<\/?p>|<br>/g,"").trim();N(pe?"":ce,re)},B=X.useMemo(()=>$l.debounce(()=>_(!1),500),[N]),U=Bl(),{showDiff:K,previousSnapshot:W}=Fl(),Y=i??U;if(K){const re=(W==null?void 0:W[e])??"",ce=F,pe=/<citation\s+ids="([^"]*)"><\/citation>/g,G=(oe,ne)=>{const de=ne.split(",").map(Number);return`<sup>${j.filter(ye=>de.includes(ye.id)).map(ye=>ye.title)}</sup>`},ee=re.replace(pe,G),ue=ce.replace(pe,G);return b.jsx(Yl,{label:n,value:ue,showDiff:!0,diffSnapshot:ee,useHtmlDiff:!0})}return b.jsxs(H.Box,{id:`citation-field_${e}`,sx:{"& .ProseMirror":{"& h1, & h2, & h3, & h4, & h5, & h6":{scrollMarginTop:Y?0:50}},".MuiTiptap-RichTextContent-readonly ":{padding:0}},...R[s],display:"flex",flexDirection:"column",width:"100%",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[!r&&b.jsx(H.InputLabel,{htmlFor:`citation-field_${e}`,required:o,children:n}),S&&b.jsx(oD,{name:S})]}),b.jsx(cI,{ref:D,extensions:C,content:F,editable:!Y,renderControls:Y?void 0:()=>b.jsx(Pv,{children:b.jsx(Zue,{})}),onBlur:()=>_(),onUpdate:B,RichTextFieldProps:{variant:Y?"standard":"outlined",MenuBarProps:{hide:Y}},children:()=>b.jsx(Jue,{getCitationsPaginated:re=>l(re).then(ce=>(z(ce.data),ce)),onCreateCitation:u&&(re=>u(re).then(ce=>(M(ce),ce))),onUpdateCitation:f&&(re=>f(re).then(ce=>(M(ce),ce))),onDeleteCitation:p&&(re=>p(re).then(()=>L(re))),getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y,canLaunchUrl:T,readOnly:Y})}),b.jsx(Or,{name:e,id:`${e}-err`,errorMode:k})]})},nde=t=>{const{name:e="submit"}=t;return b.jsx(so,{name:e,type:"submit",...t})},rde=t=>{const{label:e="Return to Top",icon:n=Pf,scrollThresholdPx:r=100}=t,o=H.useScrollTrigger({threshold:r}),i=X.useCallback(()=>{window.scrollTo({top:0,behavior:"smooth"})},[]);return b.jsx(H.Zoom,{in:o,children:b.jsx(H.Box,{sx:{position:"fixed",bottom:32,right:32,zIndex:1},children:b.jsxs(H.Fab,{onClick:i,color:"primary",size:"small",variant:"extended","aria-label":"Scroll back to top",children:[b.jsx(n,{fontSize:"medium"}),e]})})})},iD=t=>{const{label:e,menuOptions:n=[],icon:r}=t,o=To.useNavigate(),[i,s]=A.useState(null),a=!!i,l=p=>{s(p.currentTarget)},u=()=>{s(null)};if(n.length===0)return null;const f=r&&!e;return b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{startIcon:f?void 0:r,variant:"outlined",color:"inherit",sx:{minWidth:0,...f&&{paddingLeft:"6px",paddingRight:"6px"}},onClick:l,children:f?r:e}),b.jsx(H.Menu,{anchorEl:i,open:a,onClick:u,children:n.map(p=>b.jsxs(H.MenuItem,{...Ou(p,o),children:[p.icon&&b.jsx(H.ListItemIcon,{children:p.icon}),b.jsx(H.ListItemText,{primary:p.label})]},p.label))})]})},ode=()=>{const{values:t,errors:e,status:n}=Ut.useFormikContext(),{palette:r}=H.useTheme();return b.jsx(H.Paper,{style:{backgroundColor:r.mode==="dark"?"#303030":"#f0f0f0",margin:"10px 0"},children:b.jsxs(H.List,{children:[b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Values"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(t,null,2)})]}),b.jsx(H.Divider,{variant:"inset",component:"li"}),b.jsxs(H.ListItem,{id:"testing",children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Errors"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(e,null,2)})]}),b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Status"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(n,null,2)})]})]})})},ide=t=>{const{steps:e,orientation:n,inlineLabel:r=n=="vertical",isResponsive:o=!1}=t,{width:i}=LA();let s=!r,a=n;o&&(n&&console.warn("Stepper: Ignoring orientation. isResponsive is set to true, so the orientation is determined automatically based on the window size."),a=i<600?"vertical":"horizontal",a=="vertical"?s=!1:s=!r),n=="vertical"&&!r&&(console.warn("Stepper: ignoring inlineLabel={false}. Must use inline labels when orientation is vertical"),s=!1);const l=["steps","inlineLabel","orientation","isResponsive"],u={alternativeLabel:s,orientation:a,...pr({...t},l)};return b.jsx(H.Stepper,{...u,children:e.map(f=>b.jsx(H.Step,{children:b.jsx(H.StepLabel,{children:f})},f))})},sde=t=>{const{name:e,label:n=Bn(e),labelProps:r={fontSize:"1.1em",color:"#808080",fontWeight:"600"},initialState:o,renderFormGroup:i,addButtonContent:s="Add Another",removeButtonContent:a=t.removePosition==="right"?b.jsx(TI,{}):"Remove",variant:l="card",addButtonSx:u,removeButtonSx:f,allowRemoveAll:p=!1,readOnly:m=!1,emptyListMsg:g="None",showDivider:v=!1,removePosition:y="bottom"}=t,[x]=Ut.useField({name:e}),{value:S}=x,k=T=>({display:"flex",flexDirection:T==="bottom"?"column":"row",alignItems:T==="bottom"?"flex-start":"center"});return b.jsxs(H.FormControl,{fullWidth:!0,children:[b.jsx(H.Typography,{...r,children:n}),m&&x.value.length===0?b.jsx(H.Typography,{children:g}):b.jsx(Ut.FieldArray,{name:e,render:T=>b.jsxs("div",{children:[S.map((C,O)=>b.jsx(X.Fragment,{children:b.jsx(ade,{variant:l,content:b.jsxs(H.Box,{"data-testid":"form-group-container",sx:typeof y=="string"?k(y):{...y},children:[b.jsxs(H.Box,{width:"100%",children:[i(`${e}.${O}`,O),v&&O!==S.length-1&&b.jsx(H.Divider,{"data-testid":"divider"})]}),!m&&S.length>(p?0:1)&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_remove-btn",sx:f,onClick:()=>T.remove(O),children:a})]})})},`${e}-${O}`)),!m&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_add-btn",onClick:()=>T.push(o),sx:u,children:s})]})})]})},ade=({variant:t,content:e})=>{switch(t){case"card":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_card",sx:{padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"elevatedCard":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_elevated-card",elevation:4,sx:{border:"unset",padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"none":return e}},lde=t=>{const{confirmBtnLabel:e,onConfirm:n,confirmButtonProps:r={color:"primary",variant:"contained"},closeBtnLabel:o="Cancel",closeButtonPosition:i="bottom",...s}=t;return b.jsx(Ju,{actions:[b.jsx(H.Button,{className:"MBv2_ConfirmationModal_ConfirmBtn",onClick:n,...r,children:e})],closeBtnLabel:o,closeButtonPosition:i,...s})},cde=t=>{const{closeBtnLabel:e="OK",closeButtonPosition:n="bottom",closeButtonProps:r={color:"primary",variant:"contained"},...o}=t;return b.jsx(Ju,{closeBtnLabel:e,closeButtonPosition:n,closeButtonProps:r,...o})},ude=t=>{const{primaryBtnLabel:e,onPrimaryAction:n,primaryActionProps:r={color:"primary",variant:"contained"},secondaryBtnLabel:o,onSecondaryAction:i,secondaryActionProps:s={color:"primary",variant:"outlined"},closeBtnLabel:a="Cancel",closeButtonPosition:l="bottom",...u}=t;return b.jsx(Ju,{actions:[b.jsx(H.Button,{className:"MBv2_DecisionModal_SecondaryAction",onClick:i,...s,children:o}),b.jsx(H.Button,{className:"MBv2_DecisionModal_PrimaryAction",onClick:n,...r,children:e})],closeBtnLabel:a,closeButtonPosition:l,...u})},dde={added:{icon:sne,label:"Added",color:"success"},deleted:{icon:TI,label:"Deleted",color:"error"},modified:{icon:cne,label:"Modified",color:"info"}},sD=t=>{const{beforeData:e,afterData:n,columns:r}=t,[o,i]=X.useState([]),[s,a]=X.useState(0);return X.useMemo(()=>{const l=[];e.sort((m,g)=>m.id-g.id),n.sort((m,g)=>m.id-g.id);let u=0,f=0,p=0;for(;u<e.length&&f<n.length;){const m=e[u],g=n[f];m.id===g.id?(JSON.stringify(m)!=JSON.stringify(g)?l.push({...g,changeType:"modified"}):p++,u++,f++):m.id<g.id?(l.push({...m,changeType:"deleted"}),u++):(l.push({...g,changeType:"added"}),f++)}for(;u<e.length;)l.push({...e[u],changeType:"added"}),u++;for(;f<n.length;)l.push({...n[f],changeType:"added"}),f++;i(l),a(p)},[e,n]),b.jsxs(b.Fragment,{children:[b.jsx(vx,{columns:[{fieldName:"changeType",render:l=>{const u=dde[l];return b.jsx(H.Chip,{color:u.color,label:b.jsxs(H.Typography,{children:[b.jsx(_0,{icon:u.icon}),u.label]})})}},...r],data:o}),s>0&&b.jsx(H.Box,{children:b.jsxs(H.Typography,{fontStyle:"italic",children:["+",s," unmodified rows"]})})]})},fde=t=>{const{beforeCitations:e,afterCitations:n}=t,{palette:r}=H.useTheme(),o=jA(r);return b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingBottom:"10px",children:b.jsx(H.Typography,{variant:"h2",children:"Attachments & Citations"})}),b.jsx(sD,{columns:o,beforeData:e,afterData:n})]})},pde=t=>{const{featureMenuOptions:e=[],copyright:n,logo:r,sx:o={},fontColor:i="primary"}=t,{palette:s}=H.useTheme(),a=To.useNavigate();return b.jsxs(H.Box,{className:"MBv2_Footer",sx:{backgroundColor:s.mode==="dark"?"#222222":"#ededed",padding:"25px 30px",...o},children:[b.jsx(H.Box,{className:"MBv2_Footer_Logo",sx:{display:"flex",gap:2,alignItems:"center",paddingBottom:1},children:typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",justifyContent:"space-between",flexWrap:"wrap",className:"MBv2_Footer_Nav_Links_Container",gap:2,children:[b.jsx(H.Box,{sx:{flexGrow:1},className:"MBv2_Footer_Nav_Links",display:"flex",flexDirection:"row",justifyContent:"flex-start",gap:3,children:e==null?void 0:e.map(l=>b.jsx(H.Link,{"data-testid":l.label,sx:{cursor:"pointer",fontSize:15},color:i,...Ou(l,a),children:l.label},l.label))}),n&&b.jsx(H.Typography,{style:{fontSize:15},"data-testid":"copyright",className:"MBv2_Footer_Copyright",color:i,children:n})]})]})},aD=t=>{const{menuOptionLists:e,anchor:n="left",children:r}=t,{pathname:o}=To.useLocation(),i=To.useNavigate(),[s,a]=X.useState(!1),l=(m,g)=>b.jsx(H.MenuList,{children:m.map(v=>b.jsxs(H.MenuItem,{...Ou(v,i,()=>a(!1)),children:[v.icon&&b.jsx(H.ListItemIcon,{children:v.icon}),b.jsx(H.ListItemText,{primary:v.label})]},`mobile-drawer-group-${g}-item-${v.path}`))}),f=(()=>{if(e){const m=e.filter(g=>g&&g.length>0);return m.length===0?null:m.map((g,v)=>b.jsxs(X.Fragment,{children:[l(g,v),v<m.length-1&&b.jsx(H.Divider,{})]},`mobile-drawer-group-${v}`))}return r?b.jsx(H.Box,{role:"presentation",onClick:()=>a(!1),children:r}):null})(),p=f??!1;return X.useEffect(()=>{a(!1)},[o]),p&&b.jsxs(b.Fragment,{children:[b.jsx(H.IconButton,{onClick:()=>a(!0),color:"inherit",title:"Menu",children:b.jsx(gne,{})}),b.jsx(H.Drawer,{"data-testid":"mobile-drawer",anchor:n,open:s,onClose:()=>a(!1),children:b.jsx(H.Box,{sx:{width:300},display:"flex",flexDirection:"column",justifyContent:"space-between",children:b.jsx(H.Box,{display:"flex",justifyContent:"start",flexDirection:"column",children:f})})})]})},lD=t=>{const{env:e,isProd:n}=t;return n?null:b.jsx(H.Paper,{sx:{borderRadius:0,display:"flex",alignItems:"center",justifyContent:"center"},children:b.jsxs(H.Typography,{variant:"h6",color:"error",children:[e," Environment - Test Data Only"]})})},cD=t=>{const{displayName:e,userMenuOptions:n}=t;return b.jsx(iD,{label:e,menuOptions:n,icon:b.jsx(bne,{})})},dm=t=>{const{menuOptions:e,orientation:n="horizontal",activeTabIdx:r,sx:o=n=="vertical"?{"& .MuiTabs-indicator":{left:0}}:void 0,slotProps:i={indicator:{sx:n=="horizontal"?{height:4}:{width:4}}}}=t,{palette:s}=H.useTheme(),a=To.useNavigate();return b.jsx(H.Tabs,{orientation:n,value:r??!1,sx:o,slotProps:i,children:e.map((l,u)=>b.jsx(H.Tab,{icon:l.icon,label:l.label,value:u,...Ou(l,a),sx:{alignItems:n=="vertical"?"flex-start":void 0,borderBottom:n=="vertical"?"1px solid":void 0,borderColor:"divider","&.Mui-selected":{backgroundColor:n=="vertical"?s.grey[s.mode=="dark"?800:50]:void 0,color:"inherit"}}},l.label))})},uD=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t;return e.length>0&&b.jsx(H.Paper,{sx:{pl:4,pr:4,borderRadius:0},"data-testid":"navBar",children:b.jsx(dm,{menuOptions:e,activeTabIdx:n,sx:r})})},dD=t=>{const{onToggle:e}=t,{palette:n}=H.useTheme(),r=n.mode==="dark";return b.jsx(H.IconButton,{onClick:e,color:"inherit",title:"Dark Mode Toggle",children:r?b.jsx(CI,{}):b.jsx(wI,{})})},hde=t=>{const{envInfo:e,headerRef:n,logo:r,featureMenuOptions:o=[],userMenuOptions:i=[],onToggleDarkMode:s,quickLinks:a=[],displayName:l,banner:u,position:f="fixed",children:p,sx:m,navBarSx:g}=t,v=To.useNavigate(),y=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),{palette:x}=H.useTheme(),{pathname:S}=To.useLocation(),k=x.mode==="dark",[T,C]=A.useState(void 0);A.useEffect(()=>{const P=o.findIndex(N=>N.path&&S.startsWith(N.path));C(P>=0?P:void 0)},[S,o]);const O=s&&b.jsx(dD,{onToggle:s}),I=s&&(y||!y&&l)?[{icon:k?b.jsx(CI,{}):b.jsx(wI,{}),label:`Switch to ${k?"Light":"Dark"} mode`,onClick:s},...i]:i;return b.jsxs(H.AppBar,{ref:n,position:f,sx:m,elevation:4,children:[e&&b.jsx(lD,{...e}),u,b.jsxs(H.Toolbar,{sx:{color:"white",display:"flex",justifyContent:"space-between",gap:2},children:[b.jsx(H.Button,{disableRipple:!0,component:To.Link,to:"/",children:r&&typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px",filter:"brightness(0) invert(1)"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",gap:2,alignItems:"center",children:[!l&&!y&&O,y&&b.jsx(aD,{menuOptionLists:[o,a,I],anchor:"right"}),!y&&b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",gap:0,children:a==null?void 0:a.map((P,N)=>b.jsxs(H.Box,{display:"flex",alignItems:"center",children:[N>0&&b.jsx(H.Typography,{className:"quickLink-divider",color:x.primary.contrastText,children:"|"}),b.jsx(H.Button,{variant:"text",sx:{color:"white"},...Ou(P,v),children:b.jsxs(H.Box,{display:"flex",gap:"3px",alignItems:"center",children:[P.icon,P.label]})})]},P.label))}),p,l&&b.jsx(cD,{displayName:l,userMenuOptions:I})]})]})]}),!y&&b.jsx(uD,{featureMenuOptions:o,activeTabIdx:T,sx:g})]})},mde=t=>{const{sx:e,menuOptions:n=[]}=t,{pathname:r}=To.useLocation(),o=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),[i,s]=X.useState(void 0);return X.useEffect(()=>{const a=n.findIndex(l=>l.path&&r.startsWith(l.path))??-1;s(a>=0?a:void 0)},[r,n]),!o&&n.length>0&&b.jsx(H.Box,{sx:e,children:b.jsx(H.Card,{sx:{height:"100%",width:200},children:b.jsx(dm,{orientation:"vertical",menuOptions:n,activeTabIdx:i})})})},gde=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t,{palette:o}=H.useTheme();return e.length>0&&b.jsx(dm,{menuOptions:e,activeTabIdx:n,sx:{margin:"8px",backgroundColor:o.primary.dark,borderRadius:"8px","& .MuiTab-root":{color:o.secondary.light,flexDirection:"row",gap:"2px","& .MuiTab-icon":{marginBottom:"unset"},minHeight:"58px"},"& .MuiTab-root.Mui-selected":{color:o.primary.contrastText,fontSize:"120%"},"& .MuiTabs-indicator":{display:"none"},...r}})},yde=t=>{const{gap:e=1,...n}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"column",gap:e,...n})},bde=({children:t,getCitations:e})=>{const[n,r]=X.useState([]),[o,i]=X.useState(!1);X.useEffect(()=>{(async()=>e().then(f=>{r(p=>{const m=new Set(p.map(v=>v.id));return[...p.filter(v=>!m.has(v.id)),...f]}),i(!0)}).catch(f=>{console.error(`Error fetching citations: ${f==null?void 0:f.toString()}`)}))()},[]);const s=X.useCallback(u=>{r(f=>{const p=f.map(v=>{const y=u.find(x=>x.id===v.id);return y||v}),m=new Set(f.map(v=>v.id)),g=u.filter(v=>!m.has(v.id));return[...p,...g]})},[]),a=X.useCallback(u=>{const f=n.findIndex(p=>p.id===u.id);r(f!==-1?p=>{const m=[...p];return m[f]=u,m}:[...n,u])},[n]),l=X.useCallback(u=>r(n.filter(f=>f.id!==u)),[n]);return b.jsx(nD.Provider,{value:{citations:n,isLoaded:o,addUpdateCitation:a,deleteCitation:l,batchUpdate:s},children:t})},vde=t=>b.jsx(Xu,{severity:"info",...t}),xde=t=>b.jsx(Xu,{severity:"warning",...t}),fD=t=>{const{crumbInfo:e}=t,n=To.useNavigate();return b.jsx(H.Breadcrumbs,{"aria-label":"breadcrumb",separator:b.jsx(yne,{color:"primary"}),sx:{marginBottom:2},children:e.map(({label:r,path:o},i)=>o&&i<e.length-1?b.jsx(H.Link,{color:"primary",sx:{cursor:"pointer"},onClick:()=>n(o),children:r},r):b.jsx(H.Typography,{color:"primary",children:r},r))})},wde=t=>{const{title:e,message:n,type:r,onClose:o,autoHideDuration:i=8e3,variant:s="leftBorder",elevation:a=6}=t,l=Sde(r);return b.jsx(H.Snackbar,{"data-testid":"message-snackbar",anchorOrigin:{vertical:"bottom",horizontal:"right"},open:!0,onClose:u=>{u==null&&o()},autoHideDuration:i,children:b.jsx(Xu,{"data-testid":"message-snackbar-alert",severity:l,iconMapping:{info:XE(r),warning:XE(r)},onClose:o,elevation:a,variant:s,children:n?b.jsxs(b.Fragment,{children:[b.jsx(H.AlertTitle,{"data-testid":"alertTitle",sx:{fontWeight:"bold"},children:e}),n]}):e})})},Sde=t=>t=="logout"?"info":t=="timeout"?"warning":t,XE=t=>{if(t=="timeout")return b.jsx(ine,{});if(t=="logout")return b.jsx(mne,{})},Cde=t=>{Tde(t);const{title:e,createButtonLabel:n="Add Item",showAddButton:r=!1,onAdd:o=()=>alert("Not implemented yet"),breadcrumbs:i=[],children:s,sx:a={},bottomGutter:l=!1}=t,u=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return!e&&(!r||!n)?null:b.jsxs(H.Box,{"data-testid":"MBv2-Page-Header",sx:{...a,...l&&{marginBottom:"4px"}},children:[i.length>0&&b.jsx(fD,{crumbInfo:i}),b.jsxs(H.Box,{className:"MBv2_PageHeader_Header",display:"flex",flexDirection:u?"column":"row",justifyContent:"space-between",alignItems:"center",gap:1,children:[b.jsxs(H.Box,{className:"MBv2_PageHeader_TitleAndCreateBtn",display:"flex",flexDirection:"row",justifyContent:u||!s?"space-between":"start",alignItems:"center",width:"100%",gap:1,children:[typeof e=="string"?b.jsx(H.Typography,{className:"MBv2_PageHeader_Title",variant:"h2",children:e}):e,r&&b.jsxs(so,{className:"MBv2_PageHeader_CreateBtn",onClick:()=>o(),children:[b.jsx(ane,{style:{marginRight:"0.5rem"}}),n]})]}),s&&b.jsx(H.Box,{width:u?"100%":"50%",children:s})]})]})},Tde=t=>{const{showAddButton:e,onAdd:n,createButtonLabel:r}=t,o="PageHeader component:";e&&!n&&console.warn(`${o} "showAddButton" is true but "onAdd" is not defined.`),e&&!r&&console.warn(`${o} "showAddButton" is true but "createButtonLabel" is not defined`)},kde=t=>{const{title:e,titleIcon:n,fullWidthIcon:r=!1,children:o,actionLabel:i,action:s,sx:a}=t,l=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return b.jsxs(H.Card,{sx:a||{padding:"30px 40px",display:"flex",flexDirection:"column",gap:"1rem"},children:[n&&b.jsx(H.Box,{className:"MBv2_SingleActionCard_Img",sx:[r?{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",gap:"20px",marginBottom:"10px"}:{display:"inline"}],children:n}),b.jsx(H.Typography,{variant:"h1",display:"inline",fontSize:"calc(20px + .9vw)",className:"MBv2_SingleActionCard_Title",children:e}),o,b.jsx(H.Button,{variant:"contained",color:"primary",onClick:s,fullWidth:l,className:"MBv2_SingleActionCard_ActionButton",children:i})]})};function Ede({...t}){return b.jsx(eD,{onSelectCitations:()=>{},onCancel:()=>{},renderAsSelectablePopup:!1,...t})}const Ode=t=>{const{size:e="small"}=t;let n=`${e}px`;switch(e){case"x-small":n="6px";break;case"small":n="10px";break;case"medium":n="14px";break;case"large":n="18px";break;case"x-large":n="22px";break}return b.jsx(H.Box,{height:n})};exports.AlertModal=cde;exports.Autocomplete=mI;exports.Breadcrumbs=fD;exports.Button=so;exports.Checkbox=gI;exports.CheckboxGroup=_te;exports.CitationField=tde;exports.CitationFieldProvider=bde;exports.CitationManager=Ede;exports.Column=yde;exports.ConfirmationModal=lde;exports.DarkModeToggle=dD;exports.DateField=Cp;exports.DateRangeField=ece;exports.DecisionModal=ude;exports.Diff=hI;exports.DiffCitationTable=fde;exports.DiffProvider=UH;exports.DiffTable=sD;exports.Drawer=aD;exports.DynamicAutocomplete=Ote;exports.EnvironmentBanner=lD;exports.ErrorAlert=ZA;exports.FileList=Ate;exports.FileUpload=yI;exports.FloatingNavBar=gde;exports.Footer=pde;exports.FormDebugger=ode;exports.Header=hde;exports.InfoAlert=vde;exports.LoadingButton=xx;exports.LoadingIndicator=v0;exports.Location=ene;exports.MenuButton=iD;exports.Modal=Ju;exports.MultiAutocomplete=Mte;exports.NavBar=uD;exports.NotApplicableCheckbox=oD;exports.PageHeader=Cde;exports.PaginatedTable=$A;exports.ProfileMenu=cD;exports.RadioGroup=xI;exports.RangeSlider=tne;exports.ReadOnly=Yl;exports.ReadOnlyProvider=WH;exports.RepeatableFormGroup=sde;exports.RichTextField=Gce;exports.Row=JA;exports.ScrollToTop=rde;exports.SearchField=Cne;exports.Select=nne;exports.SelectableCitationManager=tD;exports.Sidebar=mde;exports.SingleActionCard=kde;exports.Snackbar=wde;exports.Spacer=Ode;exports.Stepper=ide;exports.Submit=nde;exports.SuccessAlert=QA;exports.Switch=rne;exports.Table=vx;exports.Tabs=dm;exports.TextArea=one;exports.TextField=vs;exports.TextIcon=_0;exports.ValidationError=Or;exports.WarningAlert=xde;exports.commonTheme=Rn;exports.darkTheme=Wz;exports.lightTheme=Hz;exports.useDiff=Fl;exports.useReadOnly=Bl;
407
+ `+(a!==s?`result of cast: ${a}`:""))}return i}_cast(e,n){let r=e===void 0?e:this.transforms.reduce((o,i)=>i.call(this,o,e,this,n),e);return r===void 0&&(r=this.getDefault(n)),r}_validate(e,n={},r,o){let{path:i,originalValue:s=e,strict:a=this.spec.strict}=n,l=e;a||(l=this._cast(l,Object.assign({assert:!1},n)));let u=[];for(let f of Object.values(this.internalTests))f&&u.push(f);this.runTests({path:i,value:l,originalValue:s,options:n,tests:u},r,f=>{if(f.length)return o(f,l);this.runTests({path:i,value:l,originalValue:s,options:n,tests:this.tests},r,o)})}runTests(e,n,r){let o=!1,{tests:i,value:s,originalValue:a,path:l,options:u}=e,f=y=>{o||(o=!0,n(y,s))},p=y=>{o||(o=!0,r(y,s))},m=i.length,g=[];if(!m)return p([]);let v={value:s,originalValue:a,path:l,options:u,schema:this};for(let y=0;y<i.length;y++){const x=i[y];x(v,f,function(k){k&&(Array.isArray(k)?g.push(...k):g.push(k)),--m<=0&&p(g)})}}asNestedTest({key:e,index:n,parent:r,parentPath:o,originalParent:i,options:s}){const a=e??n;if(a==null)throw TypeError("Must include `key` or `index` for nested validations");const l=typeof a=="number";let u=r[a];const f=Object.assign({},s,{strict:!0,parent:r,value:u,originalValue:i[a],key:void 0,[l?"index":"key"]:a,path:l||a.includes(".")?`${o||""}[${l?a:`"${a}"`}]`:(o?`${o}.`:"")+e});return(p,m,g)=>this.resolve(f)._validate(u,f,m,g)}validate(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return new Promise((s,a)=>o._validate(e,n,(l,u)=>{fr.isError(l)&&(l.value=u),a(l)},(l,u)=>{l.length?a(new fr(l,u,void 0,void 0,i)):s(u)}))}validateSync(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i,s=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return o._validate(e,Object.assign({},n,{sync:!0}),(a,l)=>{throw fr.isError(a)&&(a.value=l),a},(a,l)=>{if(a.length)throw new fr(a,e,void 0,void 0,s);i=l}),i}isValid(e,n){return this.validate(e,n).then(()=>!0,r=>{if(fr.isError(r))return!1;throw r})}isValidSync(e,n){try{return this.validateSync(e,n),!0}catch(r){if(fr.isError(r))return!1;throw r}}_getDefault(e){let n=this.spec.default;return n==null?n:typeof n=="function"?n.call(this,e):fl(n)}getDefault(e){return this.resolve(e||{})._getDefault(e)}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){return this.clone({strict:e})}nullability(e,n){const r=this.clone({nullable:e});return r.internalTests.nullable=nl({message:n,name:"nullable",test(o){return o===null?this.schema.spec.nullable:!0}}),r}optionality(e,n){const r=this.clone({optional:e});return r.internalTests.optionality=nl({message:n,name:"optionality",test(o){return o===void 0?this.schema.spec.optional:!0}}),r}optional(){return this.optionality(!0)}defined(e=Fo.defined){return this.optionality(!1,e)}nullable(){return this.nullability(!0)}nonNullable(e=Fo.notNull){return this.nullability(!1,e)}required(e=Fo.required){return this.clone().withMutation(n=>n.nonNullable(e).defined(e))}notRequired(){return this.clone().withMutation(e=>e.nullable().optional())}transform(e){let n=this.clone();return n.transforms.push(e),n}test(...e){let n;if(e.length===1?typeof e[0]=="function"?n={test:e[0]}:n=e[0]:e.length===2?n={name:e[0],test:e[1]}:n={name:e[0],message:e[1],test:e[2]},n.message===void 0&&(n.message=Fo.default),typeof n.test!="function")throw new TypeError("`test` is a required parameters");let r=this.clone(),o=nl(n),i=n.exclusive||n.name&&r.exclusiveTests[n.name]===!0;if(n.exclusive&&!n.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return n.name&&(r.exclusiveTests[n.name]=!!n.exclusive),r.tests=r.tests.filter(s=>!(s.OPTIONS.name===n.name&&(i||s.OPTIONS.test===o.OPTIONS.test))),r.tests.push(o),r}when(e,n){!Array.isArray(e)&&typeof e!="string"&&(n=e,e=".");let r=this.clone(),o=BA(e).map(i=>new Ra(i));return o.forEach(i=>{i.isSibling&&r.deps.push(i.key)}),r.conditions.push(typeof n=="function"?new Xp(o,n):Xp.fromOptions(o,n)),r}typeError(e){let n=this.clone();return n.internalTests.typeError=nl({message:e,name:"typeError",skipAbsent:!0,test(r){return this.schema._typeCheck(r)?!0:this.createError({params:{type:this.schema.type}})}}),n}oneOf(e,n=Fo.oneOf){let r=this.clone();return e.forEach(o=>{r._whitelist.add(o),r._blacklist.delete(o)}),r.internalTests.whiteList=nl({message:n,name:"oneOf",skipAbsent:!0,test(o){let i=this.schema._whitelist,s=i.resolveAll(this.resolve);return s.includes(o)?!0:this.createError({params:{values:Array.from(i).join(", "),resolved:s}})}}),r}notOneOf(e,n=Fo.notOneOf){let r=this.clone();return e.forEach(o=>{r._blacklist.add(o),r._whitelist.delete(o)}),r.internalTests.blacklist=nl({message:n,name:"notOneOf",test(o){let i=this.schema._blacklist,s=i.resolveAll(this.resolve);return s.includes(o)?this.createError({params:{values:Array.from(i).join(", "),resolved:s}}):!0}}),r}strip(e=!0){let n=this.clone();return n.spec.strip=e,n}describe(e){const n=(e?this.resolve(e):this).clone(),{label:r,meta:o,optional:i,nullable:s}=n.spec;return{meta:o,label:r,optional:i,nullable:s,default:n.getDefault(e),type:n.type,oneOf:n._whitelist.describe(),notOneOf:n._blacklist.describe(),tests:n.tests.filter((l,u,f)=>f.findIndex(p=>p.OPTIONS.name===l.OPTIONS.name)===u).map(l=>{const u=l.OPTIONS.params&&e?HA(Object.assign({},l.OPTIONS.params),e):l.OPTIONS.params;return{name:l.OPTIONS.name,params:u}})}}get"~standard"(){const e=this;return{version:1,vendor:"yup",async validate(r){try{return{value:await e.validate(r,{abortEarly:!1})}}catch(o){if(o instanceof fr)return{issues:UA(o)};throw o}}}}}ei.prototype.__isYupSchema__=!0;for(const t of["validate","validateSync"])ei.prototype[`${t}At`]=function(e,n,r={}){const{parent:o,parentPath:i,schema:s}=gue(this,e,n,r.context);return s[t](o&&o[i],Object.assign({},r,{parent:o,path:e}))};for(const t of["equals","is"])ei.prototype[t]=ei.prototype.oneOf;for(const t of["not","nope"])ei.prototype[t]=ei.prototype.notOneOf;const vue=/^(\d{4}|[+-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,.](\d{1,}))?)?(?:(Z)|([+-])(\d{2})(?::?(\d{2}))?)?)?$/;function xue(t){const e=w0(t);if(!e)return Date.parse?Date.parse(t):Number.NaN;if(e.z===void 0&&e.plusMinus===void 0)return new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond).valueOf();let n=0;return e.z!=="Z"&&e.plusMinus!==void 0&&(n=e.hourOffset*60+e.minuteOffset,e.plusMinus==="+"&&(n=0-n)),Date.UTC(e.year,e.month,e.day,e.hour,e.minute+n,e.second,e.millisecond)}function w0(t){var e,n;const r=vue.exec(t);return r?{year:vi(r[1]),month:vi(r[2],1)-1,day:vi(r[3],1),hour:vi(r[4]),minute:vi(r[5]),second:vi(r[6]),millisecond:r[7]?vi(r[7].substring(0,3)):0,precision:(e=(n=r[7])==null?void 0:n.length)!=null?e:void 0,z:r[8]||void 0,plusMinus:r[9]||void 0,hourOffset:vi(r[10]),minuteOffset:vi(r[11])}:null}function vi(t,e=0){return Number(t)||e}let wue=/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Sue=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,Cue=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,Tue="^\\d{4}-\\d{2}-\\d{2}",kue="\\d{2}:\\d{2}:\\d{2}",Eue="(([+-]\\d{2}(:?\\d{2})?)|Z)",Oue=new RegExp(`${Tue}T${kue}(\\.\\d+)?${Eue}$`),Mue=t=>ia(t)||t===t.trim(),_ue={}.toString();function sa(){return new qA}class qA extends ei{constructor(){super({type:"string",check(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}}),this.withMutation(()=>{this.transform((e,n)=>{if(!this.spec.coerce||this.isType(e)||Array.isArray(e))return e;const r=e!=null&&e.toString?e.toString():e;return r===_ue?e:r})})}required(e){return super.required(e).withMutation(n=>n.test({message:e||Fo.required,name:"required",skipAbsent:!0,test:r=>!!r.length}))}notRequired(){return super.notRequired().withMutation(e=>(e.tests=e.tests.filter(n=>n.OPTIONS.name!=="required"),e))}length(e,n=xr.length){return this.test({message:n,name:"length",exclusive:!0,params:{length:e},skipAbsent:!0,test(r){return r.length===this.resolve(e)}})}min(e,n=xr.min){return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(r){return r.length>=this.resolve(e)}})}max(e,n=xr.max){return this.test({name:"max",exclusive:!0,message:n,params:{max:e},skipAbsent:!0,test(r){return r.length<=this.resolve(e)}})}matches(e,n){let r=!1,o,i;return n&&(typeof n=="object"?{excludeEmptyString:r=!1,message:o,name:i}=n:o=n),this.test({name:i||"matches",message:o||xr.matches,params:{regex:e},skipAbsent:!0,test:s=>s===""&&r||s.search(e)!==-1})}email(e=xr.email){return this.matches(wue,{name:"email",message:e,excludeEmptyString:!0})}url(e=xr.url){return this.matches(Sue,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=xr.uuid){return this.matches(Cue,{name:"uuid",message:e,excludeEmptyString:!1})}datetime(e){let n="",r,o;return e&&(typeof e=="object"?{message:n="",allowOffset:r=!1,precision:o=void 0}=e:n=e),this.matches(Oue,{name:"datetime",message:n||xr.datetime,excludeEmptyString:!0}).test({name:"datetime_offset",message:n||xr.datetime_offset,params:{allowOffset:r},skipAbsent:!0,test:i=>{if(!i||r)return!0;const s=w0(i);return s?!!s.z:!1}}).test({name:"datetime_precision",message:n||xr.datetime_precision,params:{precision:o},skipAbsent:!0,test:i=>{if(!i||o==null)return!0;const s=w0(i);return s?s.precision===o:!1}})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=xr.trim){return this.transform(n=>n!=null?n.trim():n).test({message:e,name:"trim",test:Mue})}lowercase(e=xr.lowercase){return this.transform(n=>ia(n)?n:n.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>ia(n)||n===n.toLowerCase()})}uppercase(e=xr.uppercase){return this.transform(n=>ia(n)?n:n.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>ia(n)||n===n.toUpperCase()})}}sa.prototype=qA.prototype;let KA=new Date(""),Rue=t=>Object.prototype.toString.call(t)==="[object Date]";function Sx(){return new Gu}class Gu extends ei{constructor(){super({type:"date",check(e){return Rue(e)&&!isNaN(e.getTime())}}),this.withMutation(()=>{this.transform((e,n)=>!this.spec.coerce||this.isType(e)||e===null?e:(e=xue(e),isNaN(e)?Gu.INVALID_DATE:new Date(e)))})}prepareParam(e,n){let r;if(Ra.isRef(e))r=e;else{let o=this.cast(e);if(!this._typeCheck(o))throw new TypeError(`\`${n}\` must be a Date or a value that can be \`cast()\` to a Date`);r=o}return r}min(e,n=x0.min){let r=this.prepareParam(e,"min");return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(o){return o>=this.resolve(r)}})}max(e,n=x0.max){let r=this.prepareParam(e,"max");return this.test({message:n,name:"max",exclusive:!0,params:{max:e},skipAbsent:!0,test(o){return o<=this.resolve(r)}})}}Gu.INVALID_DATE=KA;Sx.prototype=Gu.prototype;Sx.INVALID_DATE=KA;function Iue(t,e=[]){let n=[],r=new Set,o=new Set(e.map(([s,a])=>`${s}-${a}`));function i(s,a){let l=pa.split(s)[0];r.add(l),o.has(`${a}-${l}`)||n.push([a,l])}for(const s of Object.keys(t)){let a=t[s];r.add(s),Ra.isRef(a)&&a.isSibling?i(a.path,s):wx(a)&&"deps"in a&&a.deps.forEach(l=>i(l,s))}return oue.array(Array.from(r),n).reverse()}function qE(t,e){let n=1/0;return t.some((r,o)=>{var i;if((i=e.path)!=null&&i.includes(r))return n=o,!0}),n}function YA(t){return(e,n)=>qE(t,e)-qE(t,n)}const Aue=(t,e,n)=>{if(typeof t!="string")return t;let r=t;try{r=JSON.parse(t)}catch{}return n.isType(r)?r:t};function Wf(t){if("fields"in t){const e={};for(const[n,r]of Object.entries(t.fields))e[n]=Wf(r);return t.setFields(e)}if(t.type==="array"){const e=t.optional();return e.innerType&&(e.innerType=Wf(e.innerType)),e}return t.type==="tuple"?t.optional().clone({types:t.spec.types.map(Wf)}):"optional"in t?t.optional():t}const Due=(t,e)=>{const n=[...pa.normalizePath(e)];if(n.length===1)return n[0]in t;let r=n.pop(),o=pa.getter(pa.join(n),!0)(t);return!!(o&&r in o)};let KE=t=>Object.prototype.toString.call(t)==="[object Object]";function YE(t,e){let n=Object.keys(t.fields);return Object.keys(e).filter(r=>n.indexOf(r)===-1)}const Pue=YA([]);function Cx(t){return new GA(t)}class GA extends ei{constructor(e){super({type:"object",check(n){return KE(n)||typeof n=="function"}}),this.fields=Object.create(null),this._sortErrors=Pue,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{e&&this.shape(e)})}_cast(e,n={}){var r;let o=super._cast(e,n);if(o===void 0)return this.getDefault(n);if(!this._typeCheck(o))return o;let i=this.fields,s=(r=n.stripUnknown)!=null?r:this.spec.noUnknown,a=[].concat(this._nodes,Object.keys(o).filter(p=>!this._nodes.includes(p))),l={},u=Object.assign({},n,{parent:l,__validating:n.__validating||!1}),f=!1;for(const p of a){let m=i[p],g=p in o,v=o[p];if(m){let y;u.path=(n.path?`${n.path}.`:"")+p,m=m.resolve({value:v,context:n.context,parent:l});let x=m instanceof ei?m.spec:void 0,S=x==null?void 0:x.strict;if(x!=null&&x.strip){f=f||p in o;continue}y=!n.__validating||!S?m.cast(v,u):v,y!==void 0&&(l[p]=y)}else g&&!s&&(l[p]=v);(g!==p in l||l[p]!==v)&&(f=!0)}return f?l:o}_validate(e,n={},r,o){let{from:i=[],originalValue:s=e,recursive:a=this.spec.recursive}=n;n.from=[{schema:this,value:s},...i],n.__validating=!0,n.originalValue=s,super._validate(e,n,r,(l,u)=>{if(!a||!KE(u)){o(l,u);return}s=s||u;let f=[];for(let p of this._nodes){let m=this.fields[p];!m||Ra.isRef(m)||f.push(m.asNestedTest({options:n,key:p,parent:u,parentPath:n.path,originalParent:s}))}this.runTests({tests:f,value:u,originalValue:s,options:n},r,p=>{o(p.sort(this._sortErrors).concat(l),u)})})}clone(e){const n=super.clone(e);return n.fields=Object.assign({},this.fields),n._nodes=this._nodes,n._excludedEdges=this._excludedEdges,n._sortErrors=this._sortErrors,n}concat(e){let n=super.concat(e),r=n.fields;for(let[o,i]of Object.entries(this.fields)){const s=r[o];r[o]=s===void 0?i:s}return n.withMutation(o=>o.setFields(r,[...this._excludedEdges,...e._excludedEdges]))}_getDefault(e){if("default"in this.spec)return super._getDefault(e);if(!this._nodes.length)return;let n={};return this._nodes.forEach(r=>{var o;const i=this.fields[r];let s=e;(o=s)!=null&&o.value&&(s=Object.assign({},s,{parent:s.value,value:s.value[r]})),n[r]=i&&"getDefault"in i?i.getDefault(s):void 0}),n}setFields(e,n){let r=this.clone();return r.fields=e,r._nodes=Iue(e,n),r._sortErrors=YA(Object.keys(e)),n&&(r._excludedEdges=n),r}shape(e,n=[]){return this.clone().withMutation(r=>{let o=r._excludedEdges;return n.length&&(Array.isArray(n[0])||(n=[n]),o=[...r._excludedEdges,...n]),r.setFields(Object.assign(r.fields,e),o)})}partial(){const e={};for(const[n,r]of Object.entries(this.fields))e[n]="optional"in r&&r.optional instanceof Function?r.optional():r;return this.setFields(e)}deepPartial(){return Wf(this)}pick(e){const n={};for(const r of e)this.fields[r]&&(n[r]=this.fields[r]);return this.setFields(n,this._excludedEdges.filter(([r,o])=>e.includes(r)&&e.includes(o)))}omit(e){const n=[];for(const r of Object.keys(this.fields))e.includes(r)||n.push(r);return this.pick(n)}from(e,n,r){let o=pa.getter(e,!0);return this.transform(i=>{if(!i)return i;let s=i;return Due(i,e)&&(s=Object.assign({},i),r||delete s[e],s[n]=o(i)),s})}json(){return this.transform(Aue)}exact(e){return this.test({name:"exact",exclusive:!0,message:e||Hf.exact,test(n){if(n==null)return!0;const r=YE(this.schema,n);return r.length===0||this.createError({params:{properties:r.join(", ")}})}})}stripUnknown(){return this.clone({noUnknown:!0})}noUnknown(e=!0,n=Hf.noUnknown){typeof e!="boolean"&&(n=e,e=!0);let r=this.test({name:"noUnknown",exclusive:!0,message:n,test(o){if(o==null)return!0;const i=YE(this.schema,o);return!e||i.length===0||this.createError({params:{unknown:i.join(", ")}})}});return r.spec.noUnknown=e,r}unknown(e=!0,n=Hf.noUnknown){return this.noUnknown(!e,n)}transformKeys(e){return this.transform(n=>{if(!n)return n;const r={};for(const o of Object.keys(n))r[e(o)]=n[o];return r})}camelCase(){return this.transformKeys(lb.camelCase)}snakeCase(){return this.transformKeys(lb.snakeCase)}constantCase(){return this.transformKeys(e=>lb.snakeCase(e).toUpperCase())}describe(e){const n=(e?this.resolve(e):this).clone(),r=super.describe(e);r.fields={};for(const[i,s]of Object.entries(n.fields)){var o;let a=e;(o=a)!=null&&o.value&&(a=Object.assign({},a,{parent:a.value,value:a.value[i]})),r.fields[i]=s.describe(a)}return r}}Cx.prototype=GA.prototype;const Nue=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,modifyCitation:i,readOnly:s=!1,showCloseBtn:a=!1}=t,l=X.useRef(null),[u,f]=X.useState(!1),[p,m]=X.useState(!1),[g,v]=X.useState({type:"Url",source:"",title:"",accessedAt:null,url:"",classification:""});return X.useEffect(()=>{i&&v({...i,type:"Url"})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),a&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(Kh,{})})]}),b.jsx(Ut.Formik,{innerRef:l,enableReinitialize:!0,initialValues:g,onSubmit:async y=>{f(!0),n(y).catch(x=>{throw f(!1),x}).finally(()=>f(!1))},validationSchema:Cx({source:sa().required("Source is required"),title:sa().required("Title is required"),accessedAt:Sx().required("Accessed At is required"),url:sa().required("URL is required"),classification:sa().required("Classification is required")}),validateOnBlur:p,validateOnChange:p,children:({handleSubmit:y})=>b.jsxs(Ut.Form,{autoComplete:"off",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"column",gap:s?1:0,children:[b.jsx(vs,{name:"source",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(vs,{name:"title",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(Cp,{name:"accessedAt",disabled:u,required:!0,margin:"none",isDatePicker:!0,readOnly:s}),b.jsx(vs,{name:"url",label:"URL",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(xI,{row:!0,name:"classification",required:!0,radios:[{label:"Public Source",value:"Public Source",helperText:"URL is accessible to anyone from any location without special permissions. You can safely access this URL on any computer, including public or shared devices."},{label:"Proprietary Source",value:"Proprietary Source",helperText:"For private, sensitive, or access-controlled content. Use a VPN, or take extra precautions, when accessing to protect your privacy."}],margin:"none",readOnly:s})]}),b.jsx(H.DialogActions,{sx:{px:0},children:s?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(xx,{size:"small",loading:u,type:"button",onClick:()=>{m(!0),y()},children:i?"Update Citation":"Add New Citation"})]})})]})})]})},JA=t=>{const{gap:e=1,alignItems:n="center",...r}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"row",gap:e,alignItems:n,...r})},$ue=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,disableFileUpload:i=!1,modifyCitation:s,readOnly:a=!1,showCloseBtn:l=!1}=t,u=X.useRef(null),[f,p]=X.useState(!1),[m,g]=X.useState(!1),[v,y]=X.useState({type:"Attachment",title:"",file:void 0,fileName:""});return X.useEffect(()=>{s&&y({...s,type:"Attachment",file:void 0})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),l&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(Kh,{})})]}),b.jsx(Ut.Formik,{innerRef:u,enableReinitialize:!0,initialValues:v,validationSchema:Cx().shape({title:sa().required("Title is required"),fileName:sa().required("A file is required")}),validateOnBlur:m,validateOnChange:m,onSubmit:async x=>{p(!0),n(x).catch(S=>{throw p(!1),S}).finally(()=>p(!1))},children:({values:x,setFieldValue:S,handleSubmit:k})=>{var T;return X.useEffect(()=>{var C,O;(C=x.file)!=null&&C.name&&S("fileName",(O=x.file)==null?void 0:O.name)},[(T=x.file)==null?void 0:T.name]),b.jsxs(Ut.Form,{autoComplete:"off",children:[b.jsx(vs,{name:"title",disabled:f,required:!0,margin:"none",readOnly:a}),b.jsxs(H.Box,{marginTop:i||a?0:1,children:[b.jsxs(JA,{alignItems:"flex-start",children:[!i&&!a&&b.jsx(yI,{name:"file",errorMode:"hidden"}),b.jsx(vs,{readOnly:!0,name:"fileName",label:a||i?"File Name":""})]}),b.jsx(Or,{name:"fileName"})]}),b.jsx(H.DialogActions,{sx:{px:0},children:a?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(xx,{size:"small",loading:f,type:"button",onClick:()=>{g(!0),k()},children:s?"Update Attachment":"Upload Attachment"})]})})]})}})]})},Ju=t=>{const{open:e=!1,onClose:n,title:r,children:o,actions:i,closeBtnLabel:s,closeButtonPosition:a,closeButtonProps:l={},disableDismiss:u=!1,...f}=t;if(!e)return null;const p=a==="bottom"||a==="top-and-bottom",m=a==="top"||a==="top-and-bottom",g=()=>{if(s&&p)return b.jsx(H.Button,{className:"MBv2_Modal_Close",onClick:t.onClose,...l,children:s})},v=()=>{if(i)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",width:"100%",gap:"0.25rem",children:[b.jsx(H.Box,{children:g()}),b.jsxs(H.Box,{display:"flex",gap:".25rem",children:[...i]})]})});if(s&&p)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsx(H.Box,{children:g()})})};return b.jsxs(H.Dialog,{className:"MBv2_Modal",open:e,onClose:()=>{u||n==null||n()},...f,children:[typeof r=="string"?b.jsx(H.DialogTitle,{className:"MBv2_Modal_Title",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[r,m&&b.jsx(H.IconButton,{"data-testid":"modal-header-close-btn",onClick:n,children:b.jsx(Kh,{})})]})}):r,o&&(typeof o=="string"?b.jsx(H.DialogContent,{className:"MBv2_Modal_Content",children:b.jsx(H.DialogContentText,{className:"MBv2_Modal_Content_Text",children:o})}):o),v()]})};function Lue(t){return Ue("MuiAlert",t)}const GE=ze("MuiAlert",["root","action","icon","message","filled","colorSuccess","colorInfo","colorWarning","colorError","filledSuccess","filledInfo","filledWarning","filledError","outlined","outlinedSuccess","outlinedInfo","outlinedWarning","outlinedError","standard","standardSuccess","standardInfo","standardWarning","standardError"]),jue=Ae(b.jsx("path",{d:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"}),"SuccessOutlined"),Bue=Ae(b.jsx("path",{d:"M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z"}),"ReportProblemOutlined"),Fue=Ae(b.jsx("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutline"),zue=Ae(b.jsx("path",{d:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z"}),"InfoOutlined"),Vue=Ae(b.jsx("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),Hue=t=>{const{variant:e,color:n,severity:r,classes:o}=t,i={root:["root",`color${Ie(n||r)}`,`${e}${Ie(n||r)}`,`${e}`],icon:["icon"],message:["message"],action:["action"]};return We(i,Lue,o)},Wue=te(Os,{name:"MuiAlert",slot:"Root",overridesResolver:(t,e)=>{const{ownerState:n}=t;return[e.root,e[n.variant],e[`${n.variant}${Ie(n.color||n.severity)}`]]}})(yt(({theme:t})=>{const e=t.palette.mode==="light"?ga:Sl,n=t.palette.mode==="light"?Sl:ga;return{...t.typography.body2,backgroundColor:"transparent",display:"flex",padding:"6px 16px",variants:[...Object.entries(t.palette).filter(Ln(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"standard"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),backgroundColor:t.vars?t.vars.palette.Alert[`${r}StandardBg`]:n(t.palette[r].light,.9),[`& .${GE.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Ln(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"outlined"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),border:`1px solid ${(t.vars||t).palette[r].light}`,[`& .${GE.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Ln(["dark"])).map(([r])=>({props:{colorSeverity:r,variant:"filled"},style:{fontWeight:t.typography.fontWeightMedium,...t.vars?{color:t.vars.palette.Alert[`${r}FilledColor`],backgroundColor:t.vars.palette.Alert[`${r}FilledBg`]}:{backgroundColor:t.palette.mode==="dark"?t.palette[r].dark:t.palette[r].main,color:t.palette.getContrastText(t.palette[r].main)}}}))]}})),Uue=te("div",{name:"MuiAlert",slot:"Icon",overridesResolver:(t,e)=>e.icon})({marginRight:12,padding:"7px 0",display:"flex",fontSize:22,opacity:.9}),que=te("div",{name:"MuiAlert",slot:"Message",overridesResolver:(t,e)=>e.message})({padding:"8px 0",minWidth:0,overflow:"auto"}),Kue=te("div",{name:"MuiAlert",slot:"Action",overridesResolver:(t,e)=>e.action})({display:"flex",alignItems:"flex-start",padding:"4px 0 0 16px",marginLeft:"auto",marginRight:-8}),JE={success:b.jsx(jue,{fontSize:"inherit"}),warning:b.jsx(Bue,{fontSize:"inherit"}),error:b.jsx(Fue,{fontSize:"inherit"}),info:b.jsx(zue,{fontSize:"inherit"})},XA=A.forwardRef(function(e,n){const r=ht({props:e,name:"MuiAlert"}),{action:o,children:i,className:s,closeText:a="Close",color:l,components:u={},componentsProps:f={},icon:p,iconMapping:m=JE,onClose:g,role:v="alert",severity:y="success",slotProps:x={},slots:S={},variant:k="standard",...T}=r,C={...r,color:l,severity:y,variant:k,colorSeverity:l||y},O=Hue(C),I={slots:{closeButton:u.CloseButton,closeIcon:u.CloseIcon,...S},slotProps:{...f,...x}},[P,N]=Et("root",{ref:n,shouldForwardComponentProp:!0,className:ge(O.root,s),elementType:Wue,externalForwardedProps:{...I,...T},ownerState:C,additionalProps:{role:v,elevation:0}}),[F,M]=Et("icon",{className:O.icon,elementType:Uue,externalForwardedProps:I,ownerState:C}),[L,z]=Et("message",{className:O.message,elementType:que,externalForwardedProps:I,ownerState:C}),[j,D]=Et("action",{className:O.action,elementType:Kue,externalForwardedProps:I,ownerState:C}),[R,_]=Et("closeButton",{elementType:Gl,externalForwardedProps:I,ownerState:C}),[B,U]=Et("closeIcon",{elementType:Vue,externalForwardedProps:I,ownerState:C});return b.jsxs(P,{...N,children:[p!==!1?b.jsx(F,{...M,children:p||m[y]||JE[y]}):null,b.jsx(L,{...z,children:i}),o!=null?b.jsx(j,{...D,children:o}):null,o==null&&g?b.jsx(j,{...D,children:b.jsx(R,{size:"small","aria-label":a,title:a,color:"inherit",onClick:g,..._,children:b.jsx(B,{fontSize:"small",...U})})}):null]})});process.env.NODE_ENV!=="production"&&(XA.propTypes={action:c.node,children:c.node,classes:c.object,className:c.string,closeText:c.string,color:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),components:c.shape({CloseButton:c.elementType,CloseIcon:c.elementType}),componentsProps:c.shape({closeButton:c.object,closeIcon:c.object}),icon:c.node,iconMapping:c.shape({error:c.node,info:c.node,success:c.node,warning:c.node}),onClose:c.func,role:c.string,severity:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),slotProps:c.shape({action:c.oneOfType([c.func,c.object]),closeButton:c.oneOfType([c.func,c.object]),closeIcon:c.oneOfType([c.func,c.object]),icon:c.oneOfType([c.func,c.object]),message:c.oneOfType([c.func,c.object]),root:c.oneOfType([c.func,c.object])}),slots:c.shape({action:c.elementType,closeButton:c.elementType,closeIcon:c.elementType,icon:c.elementType,message:c.elementType,root:c.elementType}),sx:c.oneOfType([c.arrayOf(c.oneOfType([c.func,c.object,c.bool])),c.func,c.object]),variant:c.oneOfType([c.oneOf(["filled","outlined","standard"]),c.string])});const Xu=t=>{var g;const{noIcon:e=!1,children:n,severity:r="success",variant:o="leftBorder",sx:i,title:s,...a}=t,{palette:l}=H.useTheme(),u=e?{icon:!1}:{},f=o==="leftBorder"?"standard":o,p=o==="leftBorder"?{...i,borderLeft:`4px solid ${(g=l[r])==null?void 0:g.main}`}:i,m=s?{icon:{sx:{mt:"6px"}}}:{};return b.jsxs(XA,{severity:r,variant:f,sx:p,slotProps:m,...u,...a,children:[s&&b.jsx(H.Typography,{variant:"h3",children:s}),n]})},ZA=t=>b.jsx(Xu,{severity:"error",...t}),QA=t=>b.jsx(Xu,{severity:"success",...t}),Yue=t=>{const{alert:e,setAlert:n}=t,r=()=>n(void 0);return b.jsxs(b.Fragment,{children:[(e==null?void 0:e.type)==="Error"&&b.jsx(ZA,{"data-testid":"citation-menu-error",onClose:r,title:e.title,children:e.message.toString()}),(e==null?void 0:e.type)==="Success"&&b.jsx(QA,{"data-testid":"citation-menu-success",onClose:r,children:e.message})]})};function eD({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:a,onCancel:l,initialSelectedIds:u=[],onContentChange:f,onError:p=()=>{},renderAsSelectablePopup:m=!1,addlActions:g,canLaunchUrl:v,readOnly:y}){const[x,S]=X.useState("Insert Citation/Attachment(s)"),[k,T]=X.useState(u),[C,O]=X.useState(void 0),[I,P]=X.useState(void 0),N=G=>{P(void 0),S(G)},[F,M]=X.useState(0);X.useEffect(()=>{f==null||f()},[x,I,f]);const L=(G=!1)=>{(!m||G)&&M(ee=>ee+1)},z=(G,ee)=>{var de;const ue=typeof((de=ee.response)==null?void 0:de.data)=="string"&&ee.response.data,oe=typeof ee.message=="string"&&ee.message;P({type:"Error",title:G,message:ue??oe}),p(ee)},j=G=>P({type:"Success",title:"",message:G}),D=async G=>{if(x==="Insert Citation/Attachment(s)")throw Error("onSave called with invalid state");if(x==="Edit Citation"||x==="Edit Attachment"){if(G.id===void 0)throw Error("Failed to update citation. Citation is missing id");await(n==null?void 0:n(G).then(()=>{N("Insert Citation/Attachment(s)"),L()}).catch(ue=>{z("Failed to update",ue)}))}else await(e==null?void 0:e(G).then(ue=>{T([...k,ue.id]),N("Insert Citation/Attachment(s)"),L()}).catch(ue=>{z("Failed to create",ue)}))},R=r&&(async G=>r(G).then(()=>{L(!0),T(k.filter(ee=>ee!==G)),j("Successfully deleted")}).catch(ee=>z("Failed to delete",ee))),_=(G,ee)=>{o(G.id).then(ue=>{O(ue),N(ee)}).catch(ue=>{z("Failed to load",ue)})},B=i&&(async G=>i(G).catch(ee=>{z(`Failed to download ${G.fileName}`,ee)})),U=s&&(async G=>s(G).catch(ee=>{z(`Failed to view ${G.fileName}`,ee)})),K=b.jsx(Qce,{refreshKey:F,getCitationsPaginated:G=>t(G).then(ee=>(f==null||f(),ee)),onCancel:l,onNewCitation:()=>{O(void 0),N("Add Citation")},onNewAttachment:()=>{O(void 0),N("Add Attachment")},onEditCitation:G=>_(G,y?"View Citation":"Edit Citation"),onEditAttachment:G=>_(G,y?"View Attachment":"Edit Attachment"),onDeleteCitation:R,onDownloadAttachment:B,onViewAttachment:U,onSelect:a,setSelectedIds:T,selectedIds:k,onError:p,condenseTable:m,canSelect:m,title:m&&!y?x:"Attachments & Citations",addlActions:g,canCreate:!!e,canEdit:!!n,canDelete:!!R,canLaunchUrl:v,readOnly:y,showCloseBtn:m}),W=b.jsx(Nue,{modifyCitation:C,onSave:D,onCancel:()=>N("Insert Citation/Attachment(s)"),onClose:l,title:x,readOnly:x==="View Citation",showCloseBtn:m}),Y=b.jsx($ue,{onSave:D,onCancel:()=>N("Insert Citation/Attachment(s)"),onClose:l,modifyCitation:C,disableFileUpload:x==="Edit Attachment",title:x,readOnly:x==="View Attachment",showCloseBtn:m}),re=b.jsx(Yue,{alert:I,setAlert:P}),ce=x==="Add Citation"||x==="Edit Citation"||x==="View Citation",pe=x==="Add Attachment"||x==="Edit Attachment"||x==="View Attachment";if(m){let G=null;return!m||x==="Insert Citation/Attachment(s)"?G=K:ce?G=W:pe&&(G=Y),b.jsxs(H.Box,{width:"500px",children:[re,b.jsx(H.Box,{paddingTop:"8px",children:G})]})}return b.jsxs(H.Box,{width:"100%",children:[x==="Insert Citation/Attachment(s)"&&re,b.jsx(H.Box,{paddingTop:"8px",children:K}),b.jsx(Ju,{open:ce||pe,children:b.jsxs(H.Box,{padding:"10px 20px",minWidth:"400px","data-testid":"citation-form-modal",children:[re,ce?W:Y]})})]})}function tD({...t}){return b.jsx(eD,{renderAsSelectablePopup:!0,...t})}const Gue=H.styled("div",{name:"CitationBubbleMenu",slot:"content",overridesResolver:(t,e)=>e.content})(({theme:t})=>{const e=t.palette.mode==="dark";return{padding:t.spacing(1.5,2,.5),backgroundColor:e?"#101010":"#f9f9f9",border:`1px solid ${t.palette.grey[e?700:200]}`}});function Jue({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,canLaunchUrl:a,readOnly:l,...u}){const f=Ct();if(f&&!("citationBubbleMenuHandler"in(f==null?void 0:f.storage)))throw new Error("You must add the CitationBubbleMenuHandler extension to the useEditor `extensions` array in order to use this component!");const p=f==null?void 0:f.storage.citationBubbleMenuHandler,m=p.isOpen,g=p.selectedIds,v=p.selectedNodePos,y=T=>{f&&(T.length===0?f.commands.deleteCitation(v):g.length===0?f.commands.insertCitation({ids:T}):f.commands.updateCitation({ids:T},v))},x=T=>{y(T),f==null||f.commands.closeCitationBubbleMenu()},S=()=>{y(g),f==null||f.commands.closeCitationBubbleMenu()},k=X.useCallback(()=>{requestAnimationFrame(()=>{f!=null&&f.view&&f.view.dispatch(f.view.state.tr)})},[f]);return f?b.jsx(mv,{editor:f,open:m,...p.bubbleMenuOptions,...u,children:b.jsx(Gue,{children:b.jsx(tD,{getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:x,onCancel:S,initialSelectedIds:g,onContentChange:k,canLaunchUrl:a,readOnly:l})})}):null}const Xue=()=>mn.create({name:"citationBubbleMenuHandler",addStorage(){return{isOpen:!1,selectedIds:[],bubbleMenuOptions:void 0,selectedNodePos:0}},addCommands(){return{openCitationBubbleMenu:(t={},e)=>({editor:n,dispatch:r})=>{var a;const{doc:o}=n.state,i=o.nodeAt(e??0),s=((a=i==null?void 0:i.attrs)==null?void 0:a.ids)??[];return r&&(this.storage.isOpen=!0,this.storage.selectedIds=s,this.storage.bubbleMenuOptions=t,this.storage.selectedNodePos=e??0),!0},closeCitationBubbleMenu:()=>({commands:t,dispatch:e})=>this.storage.isOpen?(t.focus(),e&&(this.storage.isOpen=!1,this.storage.selectedIds=[],this.storage.selectedNodePos=0),!0):!1}},onSelectionUpdate(){this.storage.isOpen&&!this.editor.isActive("citation")&&this.editor.commands.closeCitationBubbleMenu()},addKeyboardShortcuts(){return{"Mod-Shift-c":()=>(this.editor.commands.openCitationBubbleMenu(),!0)}}});function Zue(t){const e=Ct(),n=X.useRef(null);return b.jsx(wt,{buttonRef:n,tooltipLabel:"Insert Citation/Attachment",tooltipShortcutKeys:["mod","Shift","C"],disabled:!(e!=null&&e.isEditable),onClick:()=>e==null?void 0:e.commands.openCitationBubbleMenu({anchorEl:n.current,placement:"bottom"}),...t,children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:"4px",alignItems:"center",children:[b.jsx(lne,{fontSize:"small"}),b.jsx(H.Typography,{variant:"body2",children:"Insert Citation/Attachment"})]})})}const nD=X.createContext(void 0),rD=()=>{const t=X.useContext(nD);if(!t)throw new Error("useSync must be used inside CitationFieldProvider");return t},Que=({node:t,HTMLAttributes:e,selected:n,extension:r,updateAttributes:o,deleteNode:i})=>{const s=t.attrs.ids||[],{citations:a,isLoaded:l}=rD(),[u,f]=X.useState(s?String(s):""),[p,m]=X.useState([]),g=r.options.citationMaxLength;if(X.useEffect(()=>{if(!l)return;const v=a.filter(S=>s.includes(S.id)),y=v.map(S=>$l.truncate(S.title,{length:g,omission:"..."})).join(", ");f(y),m(v);const x=v.map(S=>S.id);x.length===0?setTimeout(i,0):x.length!==s.length&&setTimeout(()=>o({ids:v.map(S=>S.id)}),0)},[a,s,l]),p.length!==0)return b.jsx(Bv,{as:"span",...e,"data-testid":"citation-node-component",children:b.jsx(H.Tooltip,{title:b.jsx(H.Box,{className:"citation-tooltip",children:p.map((v,y)=>{var S;const x=[v.source,v.title,v.fileName,v.url,(S=v.accessedAt)==null?void 0:S.slice(0,10),v.classification];return b.jsxs(H.Typography,{variant:"subtitle2",children:[x.filter(Boolean).join(" | "),y<p.length-1&&b.jsx(H.Divider,{className:"citation-tooltip-divider"})]},v.id)})}),slotProps:{tooltip:{sx:{maxWidth:500}}},children:b.jsx("a",{href:"#",onClick:v=>{v.preventDefault(),v.stopPropagation()},className:n?"selected-citation-link":"citation-link",children:u})})})},ede=nn.create({name:"citation",group:"inline",inline:!0,atom:!0,selectable:!0,addAttributes(){return{ids:{default:[],parseHTML:t=>{const e=t.getAttribute("ids");return e?e.split(",").map(n=>parseInt(n.trim(),10)).filter(n=>!isNaN(n)):[]},renderHTML:t=>({ids:Array.isArray(t.ids)?t.ids.join(","):""})}}},parseHTML(){return[{tag:"citation"}]},renderHTML({HTMLAttributes:t}){return["citation",St(t)]},addNodeView(){return Fv(Que)},addProseMirrorPlugins(){return[new rn({props:{handleClickOn:(t,e,n,r,o,i)=>n&&n.type.name==="citation"?(this.editor.commands.openCitationBubbleMenu({},r),!0):!1}})]},addCommands(){return{insertCitation:t=>({commands:e})=>e.insertContent({type:"citation",attrs:t}),updateCitation:(t,e)=>({state:n,dispatch:r,tr:o})=>{const i=n.doc.nodeAt(e);return!i||i.type.name!=="citation"?!1:(o.setNodeMarkup(e,void 0,t),r&&r(o),!0)},deleteCitation:t=>({tr:e,dispatch:n})=>{if(typeof t!="number")return!1;const r=t,o=t+1;return n&&n(e.delete(r,o)),!0}}}}),oD=t=>b.jsx(gI,{name:t.name,label:"Not Applicable",errorMode:"hidden"}),tde=t=>{const{name:e,label:n=Bn(e),hideLabel:r=!1,required:o=!1,readOnly:i,margin:s="dense",citationMaxLength:a=24,getCitationsPaginated:l,onCreateCitation:u,onUpdateCitation:f,onDeleteCitation:p,getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y=()=>{},placeholder:x="Start typing here...",notApplicableName:S,errorMode:k="normal",canLaunchUrl:T}=t,C=[TR,PA.configure({placeholder:x}),Xue(),ede.configure({citationMaxLength:a})],[O,I,P]=Ut.useField({name:e}),{setValue:N}=P,{value:F}=O,{addUpdateCitation:M,deleteCitation:L,batchUpdate:z,citations:j}=rD();X.useEffect(()=>{var pe;const re=(pe=D==null?void 0:D.current)==null?void 0:pe.editor;if(!re)return;re.getHTML()!==F&&setTimeout(()=>{re.commands.setContent(F)},0)},[F]);const D=X.useRef(null),R={normal:{marginTop:"16px",marginBottom:"8px"},dense:{marginTop:"8px",marginBottom:"4px"},none:{margin:0}},_=(re=void 0)=>{var G,ee;const ce=((ee=(G=D.current)==null?void 0:G.editor)==null?void 0:ee.getHTML())??"",pe=!ce.replace(/<\/?p>|<br>/g,"").trim();N(pe?"":ce,re)},B=X.useMemo(()=>$l.debounce(()=>_(!1),500),[N]),U=Bl(),{showDiff:K,previousSnapshot:W}=Fl(),Y=i??U;if(K){const re=(W==null?void 0:W[e])??"",ce=F,pe=/<citation\s+ids="([^"]*)"><\/citation>/g,G=(oe,ne)=>{const de=ne.split(",").map(Number);return`<sup>${j.filter(ye=>de.includes(ye.id)).map(ye=>ye.title)}</sup>`},ee=re.replace(pe,G),ue=ce.replace(pe,G);return b.jsx(Yl,{label:n,value:ue,showDiff:!0,diffSnapshot:ee,useHtmlDiff:!0})}return b.jsxs(H.Box,{id:`citation-field_${e}`,sx:{"& .ProseMirror":{"& h1, & h2, & h3, & h4, & h5, & h6":{scrollMarginTop:Y?0:50}},".MuiTiptap-RichTextContent-readonly ":{padding:0}},...R[s],display:"flex",flexDirection:"column",width:"100%",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[!r&&b.jsx(H.InputLabel,{htmlFor:`citation-field_${e}`,required:o,children:n}),S&&b.jsx(oD,{name:S})]}),b.jsx(cI,{ref:D,extensions:C,content:F,editable:!Y,renderControls:Y?void 0:()=>b.jsx(Pv,{children:b.jsx(Zue,{})}),onBlur:()=>_(),onUpdate:B,RichTextFieldProps:{variant:Y?"standard":"outlined",MenuBarProps:{hide:Y}},children:()=>b.jsx(Jue,{getCitationsPaginated:re=>l(re).then(ce=>(z(ce.data),ce)),onCreateCitation:u&&(re=>u(re).then(ce=>(M(ce),ce))),onUpdateCitation:f&&(re=>f(re).then(ce=>(M(ce),ce))),onDeleteCitation:p&&(re=>p(re).then(()=>L(re))),getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y,canLaunchUrl:T,readOnly:Y})}),b.jsx(Or,{name:e,id:`${e}-err`,errorMode:k})]})},nde=t=>{const{name:e="submit"}=t;return b.jsx(so,{name:e,type:"submit",...t})},rde=t=>{const{label:e="Return to Top",icon:n=Pf,scrollThresholdPx:r=100}=t,o=H.useScrollTrigger({threshold:r}),i=X.useCallback(()=>{window.scrollTo({top:0,behavior:"smooth"})},[]);return b.jsx(H.Zoom,{in:o,children:b.jsx(H.Box,{sx:{position:"fixed",bottom:32,right:32,zIndex:1},children:b.jsxs(H.Fab,{onClick:i,color:"primary",size:"small",variant:"extended","aria-label":"Scroll back to top",children:[b.jsx(n,{fontSize:"medium"}),e]})})})},iD=t=>{const{label:e,menuOptions:n=[],icon:r}=t,o=To.useNavigate(),[i,s]=A.useState(null),a=!!i,l=p=>{s(p.currentTarget)},u=()=>{s(null)};if(n.length===0)return null;const f=r&&!e;return b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{startIcon:f?void 0:r,variant:"outlined",color:"inherit",sx:{minWidth:0,...f&&{paddingLeft:"6px",paddingRight:"6px"}},onClick:l,children:f?r:e}),b.jsx(H.Menu,{anchorEl:i,open:a,onClick:u,children:n.map(p=>b.jsxs(H.MenuItem,{...Ou(p,o),children:[p.icon&&b.jsx(H.ListItemIcon,{children:p.icon}),b.jsx(H.ListItemText,{primary:p.label})]},p.label))})]})},ode=()=>{const{values:t,errors:e,status:n}=Ut.useFormikContext(),{palette:r}=H.useTheme();return b.jsx(H.Paper,{style:{backgroundColor:r.mode==="dark"?"#303030":"#f0f0f0",margin:"10px 0"},children:b.jsxs(H.List,{children:[b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Values"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(t,null,2)})]}),b.jsx(H.Divider,{variant:"inset",component:"li"}),b.jsxs(H.ListItem,{id:"testing",children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Errors"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(e,null,2)})]}),b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Status"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(n,null,2)})]})]})})},ide=t=>{const{steps:e,orientation:n,inlineLabel:r=n=="vertical",isResponsive:o=!1}=t,{width:i}=LA();let s=!r,a=n;o&&(n&&console.warn("Stepper: Ignoring orientation. isResponsive is set to true, so the orientation is determined automatically based on the window size."),a=i<600?"vertical":"horizontal",a=="vertical"?s=!1:s=!r),n=="vertical"&&!r&&(console.warn("Stepper: ignoring inlineLabel={false}. Must use inline labels when orientation is vertical"),s=!1);const l=["steps","inlineLabel","orientation","isResponsive"],u={alternativeLabel:s,orientation:a,...pr({...t},l)};return b.jsx(H.Stepper,{...u,children:e.map(f=>b.jsx(H.Step,{children:b.jsx(H.StepLabel,{children:f})},f))})},sde=t=>{const{name:e,label:n=Bn(e),labelProps:r={fontSize:"1.1em",color:"#808080",fontWeight:"600"},initialState:o,renderFormGroup:i,addButtonContent:s="Add Another",removeButtonContent:a=t.removePosition==="right"?b.jsx(TI,{}):"Remove",variant:l="card",addButtonSx:u,removeButtonSx:f,allowRemoveAll:p=!1,readOnly:m=!1,emptyListMsg:g="None",showDivider:v=!1,removePosition:y="bottom"}=t,[x]=Ut.useField({name:e}),{value:S}=x,k=T=>({display:"flex",flexDirection:T==="bottom"?"column":"row",alignItems:T==="bottom"?"flex-start":"center"});return b.jsxs(H.FormControl,{fullWidth:!0,children:[b.jsx(H.Typography,{...r,children:n}),m&&x.value.length===0?b.jsx(H.Typography,{children:g}):b.jsx(Ut.FieldArray,{name:e,render:T=>b.jsxs("div",{children:[S.map((C,O)=>b.jsx(X.Fragment,{children:b.jsx(ade,{variant:l,content:b.jsxs(H.Box,{"data-testid":"form-group-container",sx:typeof y=="string"?k(y):{...y},children:[b.jsxs(H.Box,{width:"100%",children:[i(`${e}.${O}`,O),v&&O!==S.length-1&&b.jsx(H.Divider,{"data-testid":"divider"})]}),!m&&S.length>(p?0:1)&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_remove-btn",sx:f,onClick:()=>T.remove(O),children:a})]})})},`${e}-${O}`)),!m&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_add-btn",onClick:()=>T.push(o),sx:u,children:s})]})})]})},ade=({variant:t,content:e})=>{switch(t){case"card":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_card",sx:{padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"elevatedCard":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_elevated-card",elevation:4,sx:{border:"unset",padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"none":return e}},lde=t=>{const{confirmBtnLabel:e,onConfirm:n,confirmButtonProps:r={color:"primary",variant:"contained"},closeBtnLabel:o="Cancel",closeButtonPosition:i="bottom",...s}=t;return b.jsx(Ju,{actions:[b.jsx(H.Button,{className:"MBv2_ConfirmationModal_ConfirmBtn",onClick:n,...r,children:e})],closeBtnLabel:o,closeButtonPosition:i,...s})},cde=t=>{const{closeBtnLabel:e="OK",closeButtonPosition:n="bottom",closeButtonProps:r={color:"primary",variant:"contained"},...o}=t;return b.jsx(Ju,{closeBtnLabel:e,closeButtonPosition:n,closeButtonProps:r,...o})},ude=t=>{const{primaryBtnLabel:e,onPrimaryAction:n,primaryActionProps:r={color:"primary",variant:"contained"},secondaryBtnLabel:o,onSecondaryAction:i,secondaryActionProps:s={color:"primary",variant:"outlined"},closeBtnLabel:a="Cancel",closeButtonPosition:l="bottom",...u}=t;return b.jsx(Ju,{actions:[b.jsx(H.Button,{className:"MBv2_DecisionModal_SecondaryAction",onClick:i,...s,children:o}),b.jsx(H.Button,{className:"MBv2_DecisionModal_PrimaryAction",onClick:n,...r,children:e})],closeBtnLabel:a,closeButtonPosition:l,...u})},dde={added:{icon:sne,label:"Added",color:"success"},deleted:{icon:TI,label:"Deleted",color:"error"},modified:{icon:cne,label:"Modified",color:"info"}},sD=t=>{const{beforeData:e,afterData:n,columns:r}=t,[o,i]=X.useState([]),[s,a]=X.useState(0);return X.useMemo(()=>{const l=[];e.sort((m,g)=>m.id-g.id),n.sort((m,g)=>m.id-g.id);let u=0,f=0,p=0;for(;u<e.length&&f<n.length;){const m=e[u],g=n[f];m.id===g.id?(JSON.stringify(m)!=JSON.stringify(g)?l.push({...g,changeType:"modified"}):p++,u++,f++):m.id<g.id?(l.push({...m,changeType:"deleted"}),u++):(l.push({...g,changeType:"added"}),f++)}for(;u<e.length;)l.push({...e[u],changeType:"added"}),u++;for(;f<n.length;)l.push({...n[f],changeType:"added"}),f++;i(l),a(p)},[e,n]),b.jsxs(b.Fragment,{children:[b.jsx(vx,{columns:[{fieldName:"changeType",render:l=>{const u=dde[l];return b.jsx(H.Chip,{color:u.color,label:b.jsxs(H.Typography,{children:[b.jsx(_0,{icon:u.icon}),u.label]})})}},...r],data:o}),s>0&&b.jsx(H.Box,{children:b.jsxs(H.Typography,{fontStyle:"italic",children:["+",s," unmodified rows"]})})]})},fde=t=>{const{beforeCitations:e,afterCitations:n}=t,{palette:r}=H.useTheme(),o=jA(r);return b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingBottom:"10px",children:b.jsx(H.Typography,{variant:"h2",children:"Attachments & Citations"})}),b.jsx(sD,{columns:o,beforeData:e,afterData:n})]})},pde=t=>{const{featureMenuOptions:e=[],copyright:n,logo:r,sx:o={},fontColor:i="primary"}=t,{palette:s}=H.useTheme(),a=To.useNavigate();return b.jsxs(H.Box,{className:"MBv2_Footer",sx:{backgroundColor:s.mode==="dark"?"#222222":"#ededed",padding:"25px 30px",...o},children:[b.jsx(H.Box,{className:"MBv2_Footer_Logo",sx:{display:"flex",gap:2,alignItems:"center",paddingBottom:1},children:typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",justifyContent:"space-between",flexWrap:"wrap",className:"MBv2_Footer_Nav_Links_Container",gap:2,children:[b.jsx(H.Box,{sx:{flexGrow:1},className:"MBv2_Footer_Nav_Links",display:"flex",flexDirection:"row",justifyContent:"flex-start",gap:3,children:e==null?void 0:e.map(l=>b.jsx(H.Link,{"data-testid":l.label,sx:{cursor:"pointer",fontSize:15},color:i,...Ou(l,a),children:l.label},l.label))}),n&&b.jsx(H.Typography,{style:{fontSize:15},"data-testid":"copyright",className:"MBv2_Footer_Copyright",color:i,children:n})]})]})},aD=t=>{const{menuOptionLists:e,anchor:n="left",children:r}=t,{pathname:o}=To.useLocation(),i=To.useNavigate(),[s,a]=X.useState(!1),l=(m,g)=>b.jsx(H.MenuList,{children:m.map(v=>b.jsxs(H.MenuItem,{...Ou(v,i,()=>a(!1)),children:[v.icon&&b.jsx(H.ListItemIcon,{children:v.icon}),b.jsx(H.ListItemText,{primary:v.label})]},`mobile-drawer-group-${g}-item-${v.path}`))}),f=(()=>{if(e){const m=e.filter(g=>g&&g.length>0);return m.length===0?null:m.map((g,v)=>b.jsxs(X.Fragment,{children:[l(g,v),v<m.length-1&&b.jsx(H.Divider,{})]},`mobile-drawer-group-${v}`))}return r?b.jsx(H.Box,{role:"presentation",onClick:()=>a(!1),children:r}):null})(),p=f??!1;return X.useEffect(()=>{a(!1)},[o]),p&&b.jsxs(b.Fragment,{children:[b.jsx(H.IconButton,{onClick:()=>a(!0),color:"inherit",title:"Menu",children:b.jsx(gne,{})}),b.jsx(H.Drawer,{"data-testid":"mobile-drawer",anchor:n,open:s,onClose:()=>a(!1),children:b.jsx(H.Box,{sx:{width:300},display:"flex",flexDirection:"column",justifyContent:"space-between",children:b.jsx(H.Box,{display:"flex",justifyContent:"start",flexDirection:"column",children:f})})})]})},lD=t=>{const{env:e,isProd:n}=t;return n?null:b.jsx(H.Paper,{sx:{borderRadius:0,display:"flex",alignItems:"center",justifyContent:"center"},children:b.jsxs(H.Typography,{variant:"h6",color:"error",children:[e," Environment - Test Data Only"]})})},cD=t=>{const{displayName:e,userMenuOptions:n}=t;return b.jsx(iD,{label:e,menuOptions:n,icon:b.jsx(bne,{})})},dm=t=>{const{menuOptions:e,orientation:n="horizontal",activeTabIdx:r,sx:o=n=="vertical"?{"& .MuiTabs-indicator":{left:0}}:void 0,slotProps:i={indicator:{sx:n=="horizontal"?{height:4}:{width:4}}}}=t,{palette:s}=H.useTheme(),a=To.useNavigate();return b.jsx(H.Tabs,{orientation:n,value:r??!1,sx:o,slotProps:i,children:e.map((l,u)=>b.jsx(H.Tab,{icon:l.icon,label:l.label,value:u,...Ou(l,a),sx:{alignItems:n=="vertical"?"flex-start":void 0,borderBottom:n=="vertical"?"1px solid":void 0,borderColor:"divider","&.Mui-selected":{backgroundColor:n=="vertical"?s.grey[s.mode=="dark"?800:50]:void 0,color:"inherit"}}},l.label))})},uD=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t;return e.length>0&&b.jsx(H.Paper,{sx:{pl:4,pr:4,borderRadius:0},"data-testid":"navBar",children:b.jsx(dm,{menuOptions:e,activeTabIdx:n,sx:r})})},dD=t=>{const{onToggle:e}=t,{palette:n}=H.useTheme(),r=n.mode==="dark";return b.jsx(H.IconButton,{onClick:e,color:"inherit",title:"Dark Mode Toggle",children:r?b.jsx(CI,{}):b.jsx(wI,{})})},hde=t=>{const{envInfo:e,headerRef:n,logo:r,featureMenuOptions:o=[],userMenuOptions:i=[],onToggleDarkMode:s,quickLinks:a=[],displayName:l,banner:u,position:f="fixed",children:p,sx:m,navBarSx:g}=t,v=To.useNavigate(),y=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),{palette:x}=H.useTheme(),{pathname:S}=To.useLocation(),k=x.mode==="dark",[T,C]=A.useState(void 0);A.useEffect(()=>{const P=o.findIndex(N=>N.path&&S.startsWith(N.path));C(P>=0?P:void 0)},[S,o]);const O=s&&b.jsx(dD,{onToggle:s}),I=s&&(y||!y&&l)?[{icon:k?b.jsx(CI,{}):b.jsx(wI,{}),label:`Switch to ${k?"Light":"Dark"} mode`,onClick:s},...i]:i;return b.jsxs(H.AppBar,{ref:n,position:f,sx:m,elevation:4,children:[e&&b.jsx(lD,{...e}),u,b.jsxs(H.Toolbar,{sx:{color:"white",display:"flex",justifyContent:"space-between",gap:2},children:[b.jsx(H.Button,{disableRipple:!0,component:To.Link,to:"/",children:r&&typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px",filter:"brightness(0) invert(1)"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",gap:2,alignItems:"center",children:[!l&&!y&&O,y&&b.jsx(aD,{menuOptionLists:[o,a,I],anchor:"right"}),!y&&b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",gap:0,children:a==null?void 0:a.map((P,N)=>b.jsxs(H.Box,{display:"flex",alignItems:"center",children:[N>0&&b.jsx(H.Typography,{className:"quickLink-divider",color:x.primary.contrastText,children:"|"}),b.jsx(H.Button,{variant:"text",sx:{color:"white"},...Ou(P,v),children:b.jsxs(H.Box,{display:"flex",gap:"3px",alignItems:"center",children:[P.icon,P.label]})})]},P.label))}),p,l&&b.jsx(cD,{displayName:l,userMenuOptions:I})]})]})]}),!y&&b.jsx(uD,{featureMenuOptions:o,activeTabIdx:T,sx:g})]})},mde=t=>{const{sx:e,menuOptions:n=[]}=t,{pathname:r}=To.useLocation(),o=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),[i,s]=X.useState(void 0);return X.useEffect(()=>{const a=n.findIndex(l=>l.path&&r.startsWith(l.path))??-1;s(a>=0?a:void 0)},[r,n]),!o&&n.length>0&&b.jsx(H.Box,{sx:e,children:b.jsx(H.Card,{sx:{height:"100%",width:200},children:b.jsx(dm,{orientation:"vertical",menuOptions:n,activeTabIdx:i})})})},gde=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t,{palette:o}=H.useTheme();return e.length>0&&b.jsx(dm,{menuOptions:e,activeTabIdx:n,sx:{margin:"8px",backgroundColor:o.primary.dark,borderRadius:"8px","& .MuiTab-root":{color:o.secondary.light,flexDirection:"row",gap:"2px","& .MuiTab-icon":{marginBottom:"unset"},minHeight:"58px"},"& .MuiTab-root.Mui-selected":{color:o.primary.contrastText,fontSize:"120%"},"& .MuiTabs-indicator":{display:"none"},...r}})},yde=t=>{const{gap:e=1,...n}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"column",gap:e,...n})},bde=({children:t,getCitations:e})=>{const[n,r]=X.useState([]),[o,i]=X.useState(!1);X.useEffect(()=>{(async()=>e().then(f=>{r(p=>{const m=new Set(p.map(v=>v.id));return[...p.filter(v=>!m.has(v.id)),...f]}),i(!0)}).catch(f=>{console.error(`Error fetching citations: ${f==null?void 0:f.toString()}`)}))()},[]);const s=X.useCallback(u=>{r(f=>{const p=f.map(v=>{const y=u.find(x=>x.id===v.id);return y||v}),m=new Set(f.map(v=>v.id)),g=u.filter(v=>!m.has(v.id));return[...p,...g]})},[]),a=X.useCallback(u=>{const f=n.findIndex(p=>p.id===u.id);r(f!==-1?p=>{const m=[...p];return m[f]=u,m}:[...n,u])},[n]),l=X.useCallback(u=>r(n.filter(f=>f.id!==u)),[n]);return b.jsx(nD.Provider,{value:{citations:n,isLoaded:o,addUpdateCitation:a,deleteCitation:l,batchUpdate:s},children:t})},vde=t=>b.jsx(Xu,{severity:"info",...t}),xde=t=>b.jsx(Xu,{severity:"warning",...t}),fD=t=>{const{crumbInfo:e}=t,n=To.useNavigate();return b.jsx(H.Breadcrumbs,{"aria-label":"breadcrumb",separator:b.jsx(yne,{color:"primary"}),sx:{marginBottom:2},children:e.map(({label:r,path:o},i)=>o&&i<e.length-1?b.jsx(H.Link,{color:"primary",sx:{cursor:"pointer"},onClick:()=>n(o),children:r},r):b.jsx(H.Typography,{color:"primary",children:r},r))})},wde=t=>{const{title:e,message:n,type:r,onClose:o,autoHideDuration:i,variant:s="leftBorder",elevation:a=6}=t,l=Sde(r);return b.jsx(H.Snackbar,{"data-testid":"message-snackbar",anchorOrigin:{vertical:"bottom",horizontal:"right"},open:!0,onClose:u=>{u==null&&o()},autoHideDuration:i,children:b.jsx(Xu,{"data-testid":"message-snackbar-alert",severity:l,iconMapping:{info:XE(r),warning:XE(r)},onClose:o,elevation:a,variant:s,children:n?b.jsxs(b.Fragment,{children:[b.jsx(H.AlertTitle,{"data-testid":"alertTitle",sx:{fontWeight:"bold"},children:e}),n]}):e})})},Sde=t=>t=="logout"?"info":t=="timeout"?"warning":t,XE=t=>{if(t=="timeout")return b.jsx(ine,{});if(t=="logout")return b.jsx(mne,{})},Cde=t=>{Tde(t);const{title:e,createButtonLabel:n="Add Item",showAddButton:r=!1,onAdd:o=()=>alert("Not implemented yet"),breadcrumbs:i=[],children:s,sx:a={},bottomGutter:l=!1}=t,u=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return!e&&(!r||!n)?null:b.jsxs(H.Box,{"data-testid":"MBv2-Page-Header",sx:{...a,...l&&{marginBottom:"4px"}},children:[i.length>0&&b.jsx(fD,{crumbInfo:i}),b.jsxs(H.Box,{className:"MBv2_PageHeader_Header",display:"flex",flexDirection:u?"column":"row",justifyContent:"space-between",alignItems:"center",gap:1,children:[b.jsxs(H.Box,{className:"MBv2_PageHeader_TitleAndCreateBtn",display:"flex",flexDirection:"row",justifyContent:u||!s?"space-between":"start",alignItems:"center",width:"100%",gap:1,children:[typeof e=="string"?b.jsx(H.Typography,{className:"MBv2_PageHeader_Title",variant:"h2",children:e}):e,r&&b.jsxs(so,{className:"MBv2_PageHeader_CreateBtn",onClick:()=>o(),children:[b.jsx(ane,{style:{marginRight:"0.5rem"}}),n]})]}),s&&b.jsx(H.Box,{width:u?"100%":"50%",children:s})]})]})},Tde=t=>{const{showAddButton:e,onAdd:n,createButtonLabel:r}=t,o="PageHeader component:";e&&!n&&console.warn(`${o} "showAddButton" is true but "onAdd" is not defined.`),e&&!r&&console.warn(`${o} "showAddButton" is true but "createButtonLabel" is not defined`)},kde=t=>{const{title:e,titleIcon:n,fullWidthIcon:r=!1,children:o,actionLabel:i,action:s,sx:a}=t,l=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return b.jsxs(H.Card,{sx:a||{padding:"30px 40px",display:"flex",flexDirection:"column",gap:"1rem"},children:[n&&b.jsx(H.Box,{className:"MBv2_SingleActionCard_Img",sx:[r?{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",gap:"20px",marginBottom:"10px"}:{display:"inline"}],children:n}),b.jsx(H.Typography,{variant:"h1",display:"inline",fontSize:"calc(20px + .9vw)",className:"MBv2_SingleActionCard_Title",children:e}),o,b.jsx(H.Button,{variant:"contained",color:"primary",onClick:s,fullWidth:l,className:"MBv2_SingleActionCard_ActionButton",children:i})]})};function Ede({...t}){return b.jsx(eD,{onSelectCitations:()=>{},onCancel:()=>{},renderAsSelectablePopup:!1,...t})}const Ode=t=>{const{size:e="small"}=t;let n=`${e}px`;switch(e){case"x-small":n="6px";break;case"small":n="10px";break;case"medium":n="14px";break;case"large":n="18px";break;case"x-large":n="22px";break}return b.jsx(H.Box,{height:n})};exports.AlertModal=cde;exports.Autocomplete=mI;exports.Breadcrumbs=fD;exports.Button=so;exports.Checkbox=gI;exports.CheckboxGroup=_te;exports.CitationField=tde;exports.CitationFieldProvider=bde;exports.CitationManager=Ede;exports.Column=yde;exports.ConfirmationModal=lde;exports.DarkModeToggle=dD;exports.DateField=Cp;exports.DateRangeField=ece;exports.DecisionModal=ude;exports.Diff=hI;exports.DiffCitationTable=fde;exports.DiffProvider=UH;exports.DiffTable=sD;exports.Drawer=aD;exports.DynamicAutocomplete=Ote;exports.EnvironmentBanner=lD;exports.ErrorAlert=ZA;exports.FileList=Ate;exports.FileUpload=yI;exports.FloatingNavBar=gde;exports.Footer=pde;exports.FormDebugger=ode;exports.Header=hde;exports.InfoAlert=vde;exports.LoadingButton=xx;exports.LoadingIndicator=v0;exports.Location=ene;exports.MenuButton=iD;exports.Modal=Ju;exports.MultiAutocomplete=Mte;exports.NavBar=uD;exports.NotApplicableCheckbox=oD;exports.PageHeader=Cde;exports.PaginatedTable=$A;exports.ProfileMenu=cD;exports.RadioGroup=xI;exports.RangeSlider=tne;exports.ReadOnly=Yl;exports.ReadOnlyProvider=WH;exports.RepeatableFormGroup=sde;exports.RichTextField=Gce;exports.Row=JA;exports.ScrollToTop=rde;exports.SearchField=Cne;exports.Select=nne;exports.SelectableCitationManager=tD;exports.Sidebar=mde;exports.SingleActionCard=kde;exports.Snackbar=wde;exports.Spacer=Ode;exports.Stepper=ide;exports.Submit=nde;exports.SuccessAlert=QA;exports.Switch=rne;exports.Table=vx;exports.Tabs=dm;exports.TextArea=one;exports.TextField=vs;exports.TextIcon=_0;exports.ValidationError=Or;exports.WarningAlert=xde;exports.commonTheme=Rn;exports.darkTheme=Wz;exports.lightTheme=Hz;exports.useDiff=Fl;exports.useReadOnly=Bl;
package/dist/index.es.js CHANGED
@@ -63652,7 +63652,7 @@ const jD = ec(void 0), UD = () => {
63652
63652
  }
63653
63653
  );
63654
63654
  }, Spe = (t) => {
63655
- const { title: e, message: n, type: r, onClose: o, autoHideDuration: i = 8e3, variant: s = "leftBorder", elevation: a = 6 } = t, l = Mfe(r);
63655
+ const { title: e, message: n, type: r, onClose: o, autoHideDuration: i, variant: s = "leftBorder", elevation: a = 6 } = t, l = Mfe(r);
63656
63656
  return /* @__PURE__ */ w(
63657
63657
  J3,
63658
63658
  {
package/dist/index.umd.js CHANGED
@@ -405,4 +405,4 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
405
405
  3. "-" cannot repeat`);Kt.customSchemes.push([t,e])}function $Z(){Kt.scanner=OZ(Kt.customSchemes);for(let t=0;t<Kt.tokenQueue.length;t++)Kt.tokenQueue[t][1]({scanner:Kt.scanner});Kt.parser=IZ(Kt.scanner.tokens);for(let t=0;t<Kt.pluginQueue.length;t++)Kt.pluginQueue[t][1]({scanner:Kt.scanner,parser:Kt.parser});return Kt.initialized=!0,Kt}function Z0(t){return Kt.initialized||$Z(),AZ(Kt.parser.start,t,p2(Kt.scanner.start,t))}Z0.scan=p2;function x2(t,e=null,n=null){if(e&&typeof e=="object"){if(n)throw Error(`linkifyjs: Invalid link type ${e}; must be a string`);n=e,e=null}const r=new J0(n),o=Z0(t),i=[];for(let s=0;s<o.length;s++){const a=o[s];a.isLink&&(!e||a.t===e)&&r.check(a)&&i.push(a.toFormattedObject(r))}return i}const Q0="[\0-   ᠎ -\u2029  ]",LZ=new RegExp(Q0),BZ=new RegExp(`${Q0}$`),FZ=new RegExp(Q0,"g");function RZ(t){return t.length===1?t[0].isLink:t.length===3&&t[1].isLink?["()","[]"].includes(t[0].value+t[2].value):!1}function zZ(t){return new en({key:new En("autolink"),appendTransaction:(e,n,r)=>{const o=e.some(u=>u.docChanged)&&!n.doc.eq(r.doc),i=e.some(u=>u.getMeta("preventAutolink"));if(!o||i)return;const{tr:s}=r,a=kR(n.doc,[...e]);if(AR(a).forEach(({newRange:u})=>{const f=OR(r.doc,u,g=>g.isTextblock);let p,m;if(f.length>1)p=f[0],m=r.doc.textBetween(p.pos,p.pos+p.node.nodeSize,void 0," ");else if(f.length){const g=r.doc.textBetween(u.from,u.to," "," ");if(!BZ.test(g))return;p=f[0],m=r.doc.textBetween(p.pos,u.to,void 0," ")}if(p&&m){const g=m.split(LZ).filter(Boolean);if(g.length<=0)return!1;const v=g[g.length-1],y=p.pos+m.lastIndexOf(v);if(!v)return!1;const x=Z0(v).map(S=>S.toObject(t.defaultProtocol));if(!RZ(x))return!1;x.filter(S=>S.isLink).map(S=>({...S,from:y+S.start+1,to:y+S.end+1})).filter(S=>r.schema.marks.code?!r.doc.rangeHasMark(S.from,S.to,r.schema.marks.code):!0).filter(S=>t.validate(S.value)).filter(S=>t.shouldAutoLink(S.value)).forEach(S=>{Vg(S.from,S.to,r.doc).some(k=>k.mark.type===t.type)||s.addMark(S.from,S.to,t.type.create({href:S.href}))})}}),!!s.steps.length)return s}})}function VZ(t){return new en({key:new En("handleClickLink"),props:{handleClick:(e,n,r)=>{var o,i;if(r.button!==0||!e.editable)return!1;let s=r.target;const a=[];for(;s.nodeName!=="DIV";)a.push(s),s=s.parentNode;if(!a.find(m=>m.nodeName==="A"))return!1;const l=zg(e.state,t.type.name),u=r.target,f=(o=u==null?void 0:u.href)!==null&&o!==void 0?o:l.href,p=(i=u==null?void 0:u.target)!==null&&i!==void 0?i:l.target;return u&&f?(window.open(f,p),!0):!1}}})}function HZ(t){return new en({key:new En("handlePasteLink"),props:{handlePaste:(e,n,r)=>{const{state:o}=e,{selection:i}=o,{empty:s}=i;if(s)return!1;let a="";r.content.forEach(u=>{a+=u.textContent});const l=x2(a,{defaultProtocol:t.defaultProtocol}).find(u=>u.isLink&&u.value===a);return!a||!l?!1:t.editor.commands.setMark(t.type,{href:l.href})}}})}function ya(t,e){const n=["http","https","ftp","ftps","mailto","tel","callto","sms","cid","xmpp"];return e&&e.forEach(r=>{const o=typeof r=="string"?r:r.scheme;o&&n.push(o)}),!t||t.replace(FZ,"").match(new RegExp(`^(?:(?:${n.join("|")}):|[^a-z]|[a-z0-9+.-]+(?:[^a-z+.-:]|$))`,"i"))}const WZ=vr.create({name:"link",priority:1e3,keepOnSplit:!1,exitable:!0,onCreate(){this.options.validate&&!this.options.shouldAutoLink&&(this.options.shouldAutoLink=this.options.validate,console.warn("The `validate` option is deprecated. Rename to the `shouldAutoLink` option instead.")),this.options.protocols.forEach(t=>{if(typeof t=="string"){v2(t);return}v2(t.scheme,t.optionalSlashes)})},onDestroy(){NZ()},inclusive(){return this.options.autolink},addOptions(){return{openOnClick:!0,linkOnPaste:!0,autolink:!0,protocols:[],defaultProtocol:"http",HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},isAllowedUri:(t,e)=>!!ya(t,e.protocols),validate:t=>!!t,shouldAutoLink:t=>!!t}},addAttributes(){return{href:{default:null,parseHTML(t){return t.getAttribute("href")}},target:{default:this.options.HTMLAttributes.target},rel:{default:this.options.HTMLAttributes.rel},class:{default:this.options.HTMLAttributes.class}}},parseHTML(){return[{tag:"a[href]",getAttrs:t=>{const e=t.getAttribute("href");return!e||!this.options.isAllowedUri(e,{defaultValidate:n=>!!ya(n,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?!1:null}}]},renderHTML({HTMLAttributes:t}){return this.options.isAllowedUri(t.href,{defaultValidate:e=>!!ya(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?["a",xt(this.options.HTMLAttributes,t),0]:["a",xt(this.options.HTMLAttributes,{...t,href:""}),0]},addCommands(){return{setLink:t=>({chain:e})=>{const{href:n}=t;return this.options.isAllowedUri(n,{defaultValidate:r=>!!ya(r,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?e().setMark(this.name,t).setMeta("preventAutolink",!0).run():!1},toggleLink:t=>({chain:e})=>{const{href:n}=t;return this.options.isAllowedUri(n,{defaultValidate:r=>!!ya(r,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?e().toggleMark(this.name,t,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run():!1},unsetLink:()=>({chain:t})=>t().unsetMark(this.name,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()}},addPasteRules(){return[ss({find:t=>{const e=[];if(t){const{protocols:n,defaultProtocol:r}=this.options,o=x2(t).filter(i=>i.isLink&&this.options.isAllowedUri(i.value,{defaultValidate:s=>!!ya(s,n),protocols:n,defaultProtocol:r}));o.length&&o.forEach(i=>e.push({text:i.value,data:{href:i.href},index:i.start}))}return e},type:this.type,getAttributes:t=>{var e;return{href:(e=t.data)===null||e===void 0?void 0:e.href}}})]},addProseMirrorPlugins(){const t=[],{protocols:e,defaultProtocol:n}=this.options;return this.options.autolink&&t.push(zZ({type:this.type,defaultProtocol:this.options.defaultProtocol,validate:r=>this.options.isAllowedUri(r,{defaultValidate:o=>!!ya(o,e),protocols:e,defaultProtocol:n}),shouldAutoLink:this.options.shouldAutoLink})),this.options.openOnClick===!0&&t.push(VZ({type:this.type})),this.options.linkOnPaste&&t.push(HZ({editor:this.editor,defaultProtocol:this.options.defaultProtocol,type:this.type})),t}});function jZ(t){var e;const{char:n,allowSpaces:r,allowToIncludeChar:o,allowedPrefixes:i,startOfLine:s,$position:a}=t,l=r&&!o,u=n3(n),f=new RegExp(`\\s${u}$`),p=s?"^":"",m=o?"":u,g=l?new RegExp(`${p}${u}.*?(?=\\s${m}|$)`,"gm"):new RegExp(`${p}(?:^)?${u}[^\\s${m}]*`,"gm"),v=((e=a.nodeBefore)===null||e===void 0?void 0:e.isText)&&a.nodeBefore.text;if(!v)return null;const y=a.pos-v.length,x=Array.from(v.matchAll(g)).pop();if(!x||x.input===void 0||x.index===void 0)return null;const S=x.input.slice(Math.max(0,x.index-1),x.index),k=new RegExp(`^[${i==null?void 0:i.join("")}\0]?$`).test(S);if(i!==null&&!k)return null;const T=y+x.index;let C=T+x[0].length;return l&&f.test(v.slice(C-1,C+1))&&(x[0]+=" ",C+=1),T<a.pos&&C>=a.pos?{range:{from:T,to:C},query:x[0].slice(n.length),text:x[0]}:null}const UZ=new En("suggestion");function qZ({pluginKey:t=UZ,editor:e,char:n="@",allowSpaces:r=!1,allowToIncludeChar:o=!1,allowedPrefixes:i=[" "],startOfLine:s=!1,decorationTag:a="span",decorationClass:l="suggestion",decorationContent:u="",decorationEmptyClass:f="is-empty",command:p=()=>null,items:m=()=>[],render:g=()=>({}),allow:v=()=>!0,findSuggestionMatch:y=jZ}){let x;const S=g==null?void 0:g(),k=new en({key:t,view(){return{update:async(T,C)=>{var O,A,N,$,z,M,B;const V=(O=this.key)===null||O===void 0?void 0:O.getState(C),F=(A=this.key)===null||A===void 0?void 0:A.getState(T.state),P=V.active&&F.active&&V.range.from!==F.range.from,I=!V.active&&F.active,_=V.active&&!F.active,R=!I&&!_&&V.query!==F.query,U=I||P&&R,K=R||P,j=_||P&&R;if(!U&&!K&&!j)return;const Y=j&&!U?V:F,re=T.dom.querySelector(`[data-decoration-id="${Y.decorationId}"]`);x={editor:e,range:Y.range,query:Y.query,text:Y.text,items:[],command:ce=>p({editor:e,range:Y.range,props:ce}),decorationNode:re,clientRect:re?()=>{var ce;const{decorationId:pe}=(ce=this.key)===null||ce===void 0?void 0:ce.getState(e.state),G=T.dom.querySelector(`[data-decoration-id="${pe}"]`);return(G==null?void 0:G.getBoundingClientRect())||null}:null},U&&((N=S==null?void 0:S.onBeforeStart)===null||N===void 0||N.call(S,x)),K&&(($=S==null?void 0:S.onBeforeUpdate)===null||$===void 0||$.call(S,x)),(K||U)&&(x.items=await m({editor:e,query:Y.query})),j&&((z=S==null?void 0:S.onExit)===null||z===void 0||z.call(S,x)),K&&((M=S==null?void 0:S.onUpdate)===null||M===void 0||M.call(S,x)),U&&((B=S==null?void 0:S.onStart)===null||B===void 0||B.call(S,x))},destroy:()=>{var T;x&&((T=S==null?void 0:S.onExit)===null||T===void 0||T.call(S,x))}}},state:{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1}},apply(T,C,O,A){const{isEditable:N}=e,{composing:$}=e.view,{selection:z}=T,{empty:M,from:B}=z,V={...C};if(V.composing=$,N&&(M||e.view.composing)){(B<C.range.from||B>C.range.to)&&!$&&!C.composing&&(V.active=!1);const F=y({char:n,allowSpaces:r,allowToIncludeChar:o,allowedPrefixes:i,startOfLine:s,$position:z.$from}),P=`id_${Math.floor(Math.random()*4294967295)}`;F&&v({editor:e,state:A,range:F.range,isActive:C.active})?(V.active=!0,V.decorationId=C.decorationId?C.decorationId:P,V.range=F.range,V.query=F.query,V.text=F.text):V.active=!1}else V.active=!1;return V.active||(V.decorationId=null,V.range={from:0,to:0},V.query=null,V.text=null),V}},props:{handleKeyDown(T,C){var O;const{active:A,range:N}=k.getState(T.state);return A&&((O=S==null?void 0:S.onKeyDown)===null||O===void 0?void 0:O.call(S,{view:T,event:C,range:N}))||!1},decorations(T){const{active:C,range:O,decorationId:A,query:N}=k.getState(T);if(!C)return null;const $=!(N!=null&&N.length),z=[l];return $&&z.push(f),Jt.create(T.doc,[qn.inline(O.from,O.to,{nodeName:a,class:z.join(" "),"data-decoration-id":A,"data-decoration-content":u})])}}});return k}function KZ({editor:t,overrideSuggestionOptions:e,extensionName:n,char:r="@"}){const o=new En;return{editor:t,char:r,pluginKey:o,command:({editor:i,range:s,props:a})=>{var l,u,f;const p=i.view.state.selection.$to.nodeAfter;((l=p==null?void 0:p.text)===null||l===void 0?void 0:l.startsWith(" "))&&(s.to+=1),i.chain().focus().insertContentAt(s,[{type:n,attrs:{...a,mentionSuggestionChar:r}},{type:"text",text:" "}]).run(),(f=(u=i.view.dom.ownerDocument.defaultView)===null||u===void 0?void 0:u.getSelection())===null||f===void 0||f.collapseToEnd()},allow:({state:i,range:s})=>{const a=i.doc.resolve(s.from),l=i.schema.nodes[n];return!!a.parent.type.contentMatch.matchType(l)},...e}}function w2(t){return(t.options.suggestions.length?t.options.suggestions:[t.options.suggestion]).map(e=>KZ({editor:t.editor,overrideSuggestionOptions:e,extensionName:t.name,char:e.char}))}function S2(t,e){const n=w2(t),r=n.find(o=>o.char===e);return r||(n.length?n[0]:null)}const YZ=tn.create({name:"mention",priority:101,addOptions(){return{HTMLAttributes:{},renderText({node:t,suggestion:e}){var n,r;return`${(n=e==null?void 0:e.char)!==null&&n!==void 0?n:"@"}${(r=t.attrs.label)!==null&&r!==void 0?r:t.attrs.id}`},deleteTriggerWithBackspace:!1,renderHTML({options:t,node:e,suggestion:n}){var r,o;return["span",xt(this.HTMLAttributes,t.HTMLAttributes),`${(r=n==null?void 0:n.char)!==null&&r!==void 0?r:"@"}${(o=e.attrs.label)!==null&&o!==void 0?o:e.attrs.id}`]},suggestions:[],suggestion:{}}},group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:null,parseHTML:t=>t.getAttribute("data-id"),renderHTML:t=>t.id?{"data-id":t.id}:{}},label:{default:null,parseHTML:t=>t.getAttribute("data-label"),renderHTML:t=>t.label?{"data-label":t.label}:{}},mentionSuggestionChar:{default:"@",parseHTML:t=>t.getAttribute("data-mention-suggestion-char"),renderHTML:t=>({"data-mention-suggestion-char":t.mentionSuggestionChar})}}},parseHTML(){return[{tag:`span[data-type="${this.name}"]`}]},renderHTML({node:t,HTMLAttributes:e}){const n=S2(this,t.attrs.mentionSuggestionChar);if(this.options.renderLabel!==void 0)return console.warn("renderLabel is deprecated use renderText and renderHTML instead"),["span",xt({"data-type":this.name},this.options.HTMLAttributes,e),this.options.renderLabel({options:this.options,node:t,suggestion:n})];const r={...this.options};r.HTMLAttributes=xt({"data-type":this.name},this.options.HTMLAttributes,e);const o=this.options.renderHTML({options:r,node:t,suggestion:n});return typeof o=="string"?["span",xt({"data-type":this.name},this.options.HTMLAttributes,e),o]:o},renderText({node:t}){const e={options:this.options,node:t,suggestion:S2(this,t.attrs.mentionSuggestionChar)};return this.options.renderLabel!==void 0?(console.warn("renderLabel is deprecated use renderText and renderHTML instead"),this.options.renderLabel(e)):this.options.renderText(e)},addKeyboardShortcuts(){return{Backspace:()=>this.editor.commands.command(({tr:t,state:e})=>{let n=!1;const{selection:r}=e,{empty:o,anchor:i}=r;if(!o)return!1;e.doc.nodesBetween(i-1,i,(l,u)=>{if(l.type.name===this.name)return n=!0,t.insertText(this.options.deleteTriggerWithBackspace?"":this.options.suggestion.char||"",u,u+l.nodeSize),!1});let s=new di,a=0;return e.doc.nodesBetween(i-1,i,(l,u)=>{if(l.type.name===this.name)return n=!0,s=l,a=u,!1}),n&&t.insertText(this.options.deleteTriggerWithBackspace?"":s.attrs.mentionSuggestionChar,a,a+s.nodeSize),n})}},addProseMirrorPlugins(){return w2(this).map(qZ)}}),C2=ln.create({name:"placeholder",addOptions(){return{emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}},addProseMirrorPlugins(){return[new en({key:new En("placeholder"),props:{decorations:({doc:t,selection:e})=>{const n=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:r}=e,o=[];if(!n)return null;const i=this.editor.isEmpty;return t.descendants((s,a)=>{const l=r>=a&&r<=a+s.nodeSize,u=!s.isLeaf&&of(s);if((l||!this.options.showOnlyCurrent)&&u){const f=[this.options.emptyNodeClass];i&&f.push(this.options.emptyEditorClass);const p=qn.node(a,a+s.nodeSize,{class:f.join(" "),"data-placeholder":typeof this.options.placeholder=="function"?this.options.placeholder({editor:this.editor,node:s,pos:a,hasAnchor:l}):this.options.placeholder});o.push(p)}return this.options.includeChildren}),Jt.create(t,o)}}})]}}),GZ=vr.create({name:"subscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sub"},{style:"vertical-align",getAttrs(t){return t!=="sub"?!1:null}}]},renderHTML({HTMLAttributes:t}){return["sub",xt(this.options.HTMLAttributes,t),0]},addCommands(){return{setSubscript:()=>({commands:t})=>t.setMark(this.name),toggleSubscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSubscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-,":()=>this.editor.commands.toggleSubscript()}}}),JZ=tn.create({name:"tableCell",addOptions(){return{HTMLAttributes:{}}},content:"block+",addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");return e?e.split(",").map(r=>parseInt(r,10)):null}}}},tableRole:"cell",isolating:!0,parseHTML(){return[{tag:"td"}]},renderHTML({HTMLAttributes:t}){return["td",xt(this.options.HTMLAttributes,t),0]}}),XZ=tn.create({name:"tableHeader",addOptions(){return{HTMLAttributes:{}}},content:"block+",addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");return e?e.split(",").map(r=>parseInt(r,10)):null}}}},tableRole:"header_cell",isolating:!0,parseHTML(){return[{tag:"th"}]},renderHTML({HTMLAttributes:t}){return["th",xt(this.options.HTMLAttributes,t),0]}}),ZZ=tn.create({name:"tableRow",addOptions(){return{HTMLAttributes:{}}},content:"(tableCell | tableHeader)*",tableRole:"row",parseHTML(){return[{tag:"tr"}]},renderHTML({HTMLAttributes:t}){return["tr",xt(this.options.HTMLAttributes,t),0]}}),QZ=/^\s*(\[([( |x])?\])\s$/,eQ=tn.create({name:"taskItem",addOptions(){return{nested:!1,HTMLAttributes:{},taskListTypeName:"taskList",a11y:void 0}},content(){return this.options.nested?"paragraph block*":"paragraph+"},defining:!0,addAttributes(){return{checked:{default:!1,keepOnSplit:!1,parseHTML:t=>{const e=t.getAttribute("data-checked");return e===""||e==="true"},renderHTML:t=>({"data-checked":t.checked})}}},parseHTML(){return[{tag:`li[data-type="${this.name}"]`,priority:51}]},renderHTML({node:t,HTMLAttributes:e}){return["li",xt(this.options.HTMLAttributes,e,{"data-type":this.name}),["label",["input",{type:"checkbox",checked:t.attrs.checked?"checked":null}],["span"]],["div",0]]},addKeyboardShortcuts(){const t={Enter:()=>this.editor.commands.splitListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)};return this.options.nested?{...t,Tab:()=>this.editor.commands.sinkListItem(this.name)}:t},addNodeView(){return({node:t,HTMLAttributes:e,getPos:n,editor:r})=>{const o=document.createElement("li"),i=document.createElement("label"),s=document.createElement("span"),a=document.createElement("input"),l=document.createElement("div"),u=()=>{var f,p;a.ariaLabel=((p=(f=this.options.a11y)===null||f===void 0?void 0:f.checkboxLabel)===null||p===void 0?void 0:p.call(f,t,a.checked))||`Task item checkbox for ${t.textContent||"empty task item"}`};return u(),i.contentEditable="false",a.type="checkbox",a.addEventListener("mousedown",f=>f.preventDefault()),a.addEventListener("change",f=>{if(!r.isEditable&&!this.options.onReadOnlyChecked){a.checked=!a.checked;return}const{checked:p}=f.target;r.isEditable&&typeof n=="function"&&r.chain().focus(void 0,{scrollIntoView:!1}).command(({tr:m})=>{const g=n();if(typeof g!="number")return!1;const v=m.doc.nodeAt(g);return m.setNodeMarkup(g,void 0,{...v==null?void 0:v.attrs,checked:p}),!0}).run(),!r.isEditable&&this.options.onReadOnlyChecked&&(this.options.onReadOnlyChecked(t,p)||(a.checked=!a.checked))}),Object.entries(this.options.HTMLAttributes).forEach(([f,p])=>{o.setAttribute(f,p)}),o.dataset.checked=t.attrs.checked,a.checked=t.attrs.checked,i.append(a,s),o.append(i,l),Object.entries(e).forEach(([f,p])=>{o.setAttribute(f,p)}),{dom:o,contentDOM:l,update:f=>f.type!==this.type?!1:(o.dataset.checked=f.attrs.checked,a.checked=f.attrs.checked,u(),!0)}}},addInputRules(){return[ol({find:QZ,type:this.type,getAttributes:t=>({checked:t[t.length-1]==="x"})})]}}),tQ=tn.create({name:"taskList",addOptions(){return{itemTypeName:"taskItem",HTMLAttributes:{}}},group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:`ul[data-type="${this.name}"]`,priority:51}]},renderHTML({HTMLAttributes:t}){return["ul",xt(this.options.HTMLAttributes,t,{"data-type":this.name}),0]},addCommands(){return{toggleTaskList:()=>({commands:t})=>t.toggleList(this.name,this.options.itemTypeName)}},addKeyboardShortcuts(){return{"Mod-Shift-9":()=>this.editor.commands.toggleTaskList()}}}),nQ=ln.create({name:"textAlign",addOptions(){return{types:[],alignments:["left","center","right","justify"],defaultAlignment:null}},addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:t=>{const e=t.style.textAlign;return this.options.alignments.includes(e)?e:this.options.defaultAlignment},renderHTML:t=>t.textAlign?{style:`text-align: ${t.textAlign}`}:{}}}}]},addCommands(){return{setTextAlign:t=>({commands:e})=>this.options.alignments.includes(t)?this.options.types.map(n=>e.updateAttributes(n,{textAlign:t})).every(n=>n):!1,unsetTextAlign:()=>({commands:t})=>this.options.types.map(e=>t.resetAttributes(e,"textAlign")).every(e=>e),toggleTextAlign:t=>({editor:e,commands:n})=>this.options.alignments.includes(t)?e.isActive({textAlign:t})?n.unsetTextAlign():n.setTextAlign(t):!1}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}}),T2=X.forwardRef((t,e)=>{const[n,r]=X.useState(0),o=l=>{if(l>=t.items.length)return;const u=t.items[l],f={id:u.id,label:u.mentionLabel};t.command(f)},i=()=>{r((n+t.items.length-1)%t.items.length)},s=()=>{r((n+1)%t.items.length)},a=()=>{o(n)};return X.useEffect(()=>r(0),[t.items]),X.useImperativeHandle(e,()=>({onKeyDown:({event:l})=>l.key==="ArrowUp"?(i(),!0):l.key==="ArrowDown"?(s(),!0):l.key==="Enter"?(a(),!0):!1})),t.items.length>0?b.jsx(H.Paper,{elevation:5,children:b.jsx(H.List,{dense:!0,sx:{overflow:"hidden"},children:t.items.map((l,u)=>b.jsx(H.ListItem,{disablePadding:!0,children:b.jsx(H.ListItemButton,{selected:u===n,onClick:()=>o(u),children:l.mentionLabel})},l.id))})}):null});T2.displayName="SuggestionList";const k2={bottom:0,height:0,left:0,right:0,top:0,width:0,x:0,y:0,toJSON(){return{}}},rQ={items:async({query:t})=>Promise.resolve(["Lea Thompson","Cyndi Lauper","Tom Cruise","Madonna","Jerry Hall","Joan Collins","Winona Ryder","Christina Applegate","Alyssa Milano","Molly Ringwald","Ally Sheedy","Debbie Harry","Olivia Newton-John","Elton John","Michael J. Fox","Axl Rose","Emilio Estevez","Ralph Macchio","Rob Lowe","Jennifer Grey","Mickey Rourke","John Cusack","Matthew Broderick","Justine Bateman","Lisa Bonet","Benicio Monserrate Rafael del Toro Sánchez"].map((e,n)=>({mentionLabel:e,id:n.toString()})).filter(e=>e.mentionLabel.toLowerCase().startsWith(t.toLowerCase())).slice(0,5)),render:()=>{let t,e;return{onStart:n=>{t=new sO(T2,{props:n,editor:n.editor}),e=iu("body",{getReferenceClientRect:()=>{var r;return((r=n.clientRect)==null?void 0:r.call(n))??k2},appendTo:()=>document.body,content:t.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"})[0]},onUpdate(n){t==null||t.updateProps(n),e==null||e.setProps({getReferenceClientRect:()=>{var r;return((r=n.clientRect)==null?void 0:r.call(n))??k2}})},onKeyDown(n){return n.event.key==="Escape"?(e==null||e.hide(),!0):t!=null&&t.ref?t.ref.onKeyDown(n):!1},onExit(){e==null||e.destroy(),t==null||t.destroy(),e=void 0,t=void 0}}}},oQ=WZ.extend({inclusive:!1}),iQ=GZ.extend({excludes:"superscript"}),sQ=XO.extend({excludes:"subscript"});function aQ({placeholder:t}={}){return X.useMemo(()=>[X8.configure({resizable:!0}),ZZ,XZ,JZ,tT,rT,oT,lT,vT,ST,CT,iQ,sQ,kT,ZC,XC,nT,bT,JO,TT,oQ.configure({autolink:!0,linkOnPaste:!0,openOnClick:!1}),$9,aT,P9,nQ.configure({types:["heading","paragraph","image"]}),gZ,yZ,bZ,Ij,DT.configure({multicolor:!0}),yT,J9,iT,tQ,eQ.configure({nested:!0}),YZ.configure({suggestion:rQ}),C2.configure({placeholder:t}),gT],[t])}function E2(t){return Array.from(t).filter(e=>(e.type||"").toLowerCase().startsWith("image/"))}const lQ=t=>{const e=aQ({placeholder:"Add your own content here..."});if(t.renderContentOnly)return b.jsx(YO,{content:t.renderContentOnly,extensions:e});const{name:n,label:r,labelProps:o={fontSize:"0.9em",color:"#808080",fontWeight:"400"},onUploadFiles:i,readOnly:s=!1}=t,[a,l,u]=jt.useField({name:n}),{setValue:f}=u,{value:p}=a;X.useEffect(()=>{var S,k,T;(T=(k=(S=m==null?void 0:m.current)==null?void 0:S.editor)==null?void 0:k.commands)==null||T.setContent(p)},[p]);const m=X.useRef(null),g=X.useCallback((S,k)=>{var C;const T=(C=m.current)==null?void 0:C.editor;if(!(!T||!i))if(i instanceof Promise)i(S).then(O=>{Jy({images:O,editor:T,position:k})});else{const O=i(S);Jy({images:O,editor:T,position:k})}},[]),v=X.useCallback((S,k,T,C)=>{var A;if(!(k instanceof DragEvent)||!k.dataTransfer)return!1;const O=E2(k.dataTransfer.files);if(O.length>0){const N=(A=S.posAtCoords({left:k.clientX,top:k.clientY}))==null?void 0:A.pos;return g(O,N),k.preventDefault(),!0}return!1},[g]),y=X.useCallback((S,k,T)=>{if(!k.clipboardData)return!1;const C=E2(k.clipboardData.files);return C.length>0?(g(C),!0):!1},[g]),x=b.jsx(H.Box,{sx:{"& .ProseMirror":{"& h1, & h2, & h3, & h4, & h5, & h6":{scrollMarginTop:s?0:50}}},children:b.jsx(KO,{ref:m,extensions:e,content:p,editable:!s,editorProps:{handleDrop:v,handlePaste:y},renderControls:s?void 0:()=>b.jsx(hZ,{onUploadFiles:i}),onBlur:()=>{var S,k;return f(((k=(S=m.current)==null?void 0:S.editor)==null?void 0:k.getHTML())??"")},RichTextFieldProps:{variant:"outlined",MenuBarProps:{hide:s}},children:()=>b.jsxs(b.Fragment,{children:[b.jsx(b7,{}),b.jsx(D7,{})]})})});return b.jsxs(H.Box,{display:"flex",flexDirection:"column",children:[r&&b.jsx(H.Typography,{...o,children:r}),x]})},ev=t=>{const{title:e="Loading...",message:n}=t;return b.jsxs(H.Box,{className:"loading-page",sx:{gap:2},"data-testid":"loading-page",children:[b.jsxs(H.Box,{className:"text-content",children:[b.jsx(H.Typography,{variant:"h1","data-testid":"title",children:e}),n&&b.jsx(H.Typography,{"data-testid":"message",children:n})]}),b.jsx(H.CircularProgress,{size:75,"data-testid":"loading-spinner"})]})},O2=t=>{const{colSpan:e,isExpanded:n,renderExpand:r,obj:o,asMobileCard:i=!1,reRenderExpand:s=!1}=t,[a,l]=X.useState(!1),[u,f]=X.useState(void 0);X.useEffect(()=>{n&&(!a||s)&&(l(!0),f(r(o)))},[n,o]);const p={"&:last-child td":{borderBottom:"unset"}};return i?b.jsx(H.Collapse,{in:n,children:u}):b.jsx(H.TableRow,{sx:p,children:b.jsx(H.TableCell,{sx:{paddingBottom:0,paddingTop:0},colSpan:e,children:b.jsx(H.Collapse,{in:n,children:u})})})},tv=t=>{const{id:e,getRowKey:n=se=>"id"in se&&(typeof se.id=="string"||typeof se.id=="number")?se.id:(console.warn(`Table: "id: string | number" not found in ${JSON.stringify(se)}. Please implement the Table.getRowKey prop so Table knows how to uniquely identify this row.`),JSON.stringify(se)),columns:r,data:o=[],onRowClick:i,onRowClickObj:s,renderExpand:a,hideColumnsOnMobile:l=[],sortField:u,sortOrder:f,onSortChange:p,allowSortCols:m,fixedLayout:g=!1,className:v,emptyTableMsg:y="No items to display",errorTableMsg:x,retryCallback:S,isLoading:k=!1,disableMobileCards:T=!1,highlightSelectedRow:C=!1,headerRowStyle:O={},stickyHeader:A,reRenderExpand:N=!1,expandOnRowClick:$=!1,tooltipColor:z,...M}=t,{palette:B}=H.useTheme(),[V,F]=X.useState(void 0),[P,I]=X.useState(void 0);cQ(t);const _=se=>se.key??se.fieldName,R=se=>{se!==u?p&&p(se,"asc"):p&&p(u,f==="asc"?"desc":"asc")},U=se=>u===se?f:null,K=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),j=K&&l?r.filter(se=>!(l.includes(_(se))||se.hideCol)):r.filter(se=>!se.hideCol);a&&!K&&j.unshift({key:"MBv2_Expandable_Column",fieldName:"id",label:"",render:se=>{const xe=V===se;return b.jsx(H.IconButton,{"data-testid":"expand-collapse-btn","aria-label":xe?"collapse row":"expand row",size:"small",onClick:()=>ye(se),children:xe?b.jsx(ap,{"data-testid":"collapse-up"}):b.jsx(c0,{"data-testid":"expand-down"})})}});const Y=(se,xe)=>xe.split(".").reduce((Ne,je)=>{if(Ne&&typeof Ne=="object")return Ne[je]},se),re=(se,xe)=>{const Ne=Y(xe,se.fieldName);return se.render?se.render(Ne,xe,K):Ne},ce=p!==void 0,pe=se=>ce?m?m.includes(se):!0:!1,G=b.jsxs(H.Box,{display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"row",children:[b.jsx(OU,{})," ",y]}),ee=b.jsxs(H.Box,{"data-testid":"table-fetch-error-msg",display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"row",children:[b.jsx(nw,{color:"error"})," ",x,S&&b.jsx(H.Button,{variant:"text",onClick:S,children:"Retry?"})]}),ue=()=>{if(k)return b.jsx(H.TableRow,{children:b.jsx(H.TableCell,{colSpan:r.length,align:"center",children:b.jsx(H.Box,{display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"row",children:b.jsx(ev,{})})})});if(x)return b.jsx(H.TableRow,{children:b.jsx(H.TableCell,{colSpan:r.length,align:"center",children:ee})});if(o.length===0)return b.jsx(H.TableRow,{children:b.jsx(H.TableCell,{colSpan:r.length,align:"center",children:G})})},oe=()=>{if(k)return b.jsx(ev,{});if(x)return ee;if(o.length===0)return G},ne=se=>{C&&I(se)},de=se=>{const xe=n(se);if((i||s)&&(i==null||i(xe),s==null||s(se),ne(xe)),a&&$){const Ne=V===xe?void 0:xe;F(Ne),ne(Ne)}},ye=se=>{const xe=V===se?void 0:se;F(xe),ne(xe)},Q=se=>{if(!a)return;const xe=V===n(se);return b.jsxs(b.Fragment,{children:[b.jsxs(H.Button,{"data-testid":"show-more-less-btn",variant:"text",onClick:()=>ye(n(se)),children:[xe?b.jsx(ap,{}):b.jsx(c0,{})," Show"," ",xe?"Less":"More"]}),b.jsx(O2,{colSpan:r.length,isExpanded:n(se)===V,obj:se,renderExpand:Ne=>a(Ne),asMobileCard:!0})]})},le=typeof C=="string"?C:B.grey[B.mode=="dark"?600:50],me=se=>{const xe=P===n(se)?le:"inherit";return{cursor:i||$?"pointer":"default",backgroundColor:xe,...a?{"& > td":{borderBottom:"unset"}}:{"&:last-child td":{borderBottom:"unset"}},...i&&{"&:hover":{backgroundColor:xe===le?GY(xe,.1):le}}}},be=B.grey[B.mode==="dark"?600:400],Se=se=>se&&b.jsx(H.Tooltip,{title:se,children:b.jsx(EU,{"data-testid":"MBv2_table-tooltip",fontSize:"small",sx:{color:z??be,marginLeft:"2px"}})});return K&&!T?b.jsxs("div",{...e?{id:`mobile-table-${e}`}:{},className:v,"data-testid":"mui-table-mobile",children:[ce&&b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",className:"MBv2_Table_Stack_Sort",children:[b.jsx(H.TextField,{select:!0,sx:{flexGrow:1},id:"demo-simple-select",size:"small",value:u??"",label:"Sort By...",onChange:se=>R(se.target.value),fullWidth:!0,children:j.map(se=>{if(pe(_(se)))return b.jsx(H.MenuItem,{value:_(se),children:se.label??$n(_(se))},`rowHeader-${_(se)}`)})}),b.jsx(H.IconButton,{onClick:()=>{u&&R(u)},children:b.jsx(NU,{className:`sort-icon-${f}`})})]}),b.jsx(H.Divider,{sx:{margin:"10px 0"}})]}),oe()??o.map(se=>b.jsxs(H.Card,{className:"MBv2_Table_Stack_Container",sx:{margin:"5px 0",padding:"5px",overflowX:"auto",...me(se)},onClick:()=>de(se),"data-testid":`card-${n(se)}`,children:[b.jsx("table",{className:"MBv2_Table_Stack",children:b.jsx("tbody",{className:"MBv2_Table_Stack_Body",children:j.map(xe=>b.jsxs("tr",{className:"MBv2_Table_Stack_Row",children:[b.jsxs("td",{className:`MBv2_Table_Stack_Cell_Label MBv2_Table_Stack_Col_${_(xe)}`,style:{textWrap:"nowrap"},children:[xe.label??$n(_(xe)),Se(xe.tooltip)]}),b.jsx("td",{className:`MBv2_Table_Stack_Cell_Value MBv2_Table_Stack_Val_${_(xe)}`,style:{paddingLeft:"10px"},children:re(xe,se)})]},`row-${n(se)}-${_(xe)}`))})}),Q(se)]},n(se)))]}):b.jsx(H.TableContainer,{component:H.Card,"data-testid":"mui-table",...e?{id:`table-${e}`}:{},className:v,style:A?{maxHeight:A,overflow:"auto"}:{},children:b.jsxs(H.Table,{stickyHeader:A!=="undefined",style:{tableLayout:g?"fixed":"auto"},className:"MBv2_Table",sx:O?{"& .MuiTableCell-head":{...O}}:{},...M,children:[b.jsx(H.TableHead,{className:"MBv2_Table_Head",children:b.jsx(H.TableRow,{className:"MBv2_Table_Head_Row",children:j.map((se,xe)=>{const Ne=pe(_(se));return b.jsx(H.TableCell,{width:Array.isArray(g)?g[xe]:"auto",sx:se.tableCellSx??{},children:b.jsx(H.Box,{style:{display:"flex",alignItems:"center"},children:b.jsxs(H.Box,{sx:[Ne&&{"&:hover":{cursor:"pointer",backgroundColor:B.mode==="dark"?"#222222":"#ededed",borderRadius:2}}],style:{display:"flex",alignItems:"center",padding:"5px",paddingLeft:"6px",marginLeft:"-6px"},onClick:Ne?()=>R(_(se)):void 0,children:[b.jsx("strong",{className:"MBv2_Table_Col_Label",style:{wordBreak:"normal"},"data-testid":"column-title",children:se.label??$n(_(se))}),Se(se.tooltip),Ne&&U(_(se))==="asc"&&b.jsx(ap,{style:{marginLeft:"5px"}}),Ne&&U(_(se))==="desc"&&b.jsx(c0,{style:{marginLeft:"5px"}}),Ne&&U(_(se))!=="asc"&&U(_(se))!=="desc"&&b.jsx(DU,{style:{marginLeft:"5px"}})]})})},`rowHeader-${_(se)}`)})})}),b.jsx(H.TableBody,{className:"MBv2_Table_Body",children:ue()??o.map(se=>b.jsxs(X.Fragment,{children:[b.jsx(H.TableRow,{"data-testid":`row-${n(se)}`,className:"MBv2_Table_Body_Row",onClick:()=>de(se),sx:me(se),children:j.map(xe=>b.jsx(H.TableCell,{className:`MBv2_Table_Body_Cell MBv2_Table_Body_Col_${_(xe)}`,children:re(xe,se)},`row-${n(se)}-${_(xe)}`))}),a&&b.jsx(O2,{colSpan:j.length,isExpanded:n(se)===V,obj:se,renderExpand:xe=>a(xe),reRenderExpand:N})]},n(se)))})]})})},cQ=t=>{const{fixedLayout:e,renderExpand:n,columns:r,expandOnRowClick:o,onRowClick:i,onRowClickObj:s}=t,a="Table component:";Array.isArray(e)&&(!n&&e.length!==r.length&&console.warn(`${a} Length of "fixedLayout" is not equal to the length of "columns".`),n&&e.length!==r.length+1&&console.warn(`${a} Length of "fixedLayout" is not equal to the length of "columns"+1. Make sure you're including a percentage for the expand/collapse column AND each column in "columns".`)),o&&!n&&console.warn(`${a} renderExpand should be defined when expandOnRowClick is defined`),i&&s&&console.warn(`${a} 'onRowClick' and 'onRowClickObj' are both defined. Only one should be defined.`)},M2=t=>{const{paginationState:e,onPageChange:n,onRowsPerPageChange:r,hidePaginationControls:o=!1,rowsPerPageOptions:i=[5,10,25],...s}=t,{pageNo:a,pageSize:l,totalCount:u,sortField:f,sortOrder:p}=e,m=x=>{n(x)},g=x=>{r(parseInt(x.target.value,10))},v=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),y=!t.data||t.data&&t.data.length===0;return b.jsxs(H.Box,{children:[b.jsx(tv,{sortOrder:p,sortField:f,...s}),!o&&!y&&b.jsx(H.TablePagination,{"data-testid":"pagination-controls",component:"div",rowsPerPageOptions:v?[]:i,count:u,rowsPerPage:l,page:a,onPageChange:(x,S)=>m(S),onRowsPerPageChange:g,sx:{flexGrow:1,marginRight:{xs:0,md:15}}})]})},_2=()=>({height:window.innerHeight,width:window.innerWidth}),I2=()=>{const[t,e]=X.useState(_2());return X.useEffect(()=>{const n=()=>{e(_2())};return window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[]),t},lo=t=>{const{name:e="button",color:n="primary",fullWidthOnMobile:r=!0,type:o="button",variant:i="contained"}=t,{width:s}=I2(),a=["locationInBar","closeDialog","fullWidthOnMobile"],l=r&&s<600;return b.jsx(H.Button,{role:"button",name:e,color:n,variant:i,type:o,fullWidth:t.fullWidth?!0:l,...lr({...t},a)})},uQ=t=>{const{citation:e,anchorEl:n,onClose:r}=t;return b.jsx(H.Popper,{open:e!==null,anchorEl:n,placement:"bottom-end",style:{zIndex:1300},children:e&&b.jsxs(H.Box,{component:H.Paper,p:1,display:"flex",gap:1,boxShadow:9,"data-testid":`citation-table_launch-link-prompt-${e.id}`,flexDirection:"column",alignItems:"end",children:[b.jsxs(H.Typography,{variant:"body2",sx:{wordBreak:"break-all",maxWidth:"350px"},children:["Are you sure you want to go to ",b.jsx("br",{}),b.jsx("b",{children:e.url}),"?"]}),b.jsxs(H.Box,{display:"flex",flexDirection:"row",children:[b.jsx(lo,{size:"small",variant:"text",onClick:r,"data-testid":`citation-table_launch-prompt-${e.id}-noBtn`,children:"No"}),b.jsx(lo,{size:"small",startIcon:b.jsx(u0,{}),onClick:()=>{window.open(e.url,"_blank","noopener,noreferrer"),r()},"data-testid":`citation-table_launch-prompt-${e.id}-yesBtn`,children:"Yes"})]})]})})},dQ=t=>{const{citation:e,anchorEl:n,onDeleteCitation:r,onClose:o}=t;if(r)return b.jsx(H.Popper,{open:e!==null,anchorEl:n,placement:"bottom-end",style:{zIndex:1300},children:e&&b.jsxs(H.Box,{component:H.Paper,p:1,display:"flex",gap:1,boxShadow:9,"data-testid":`citation-table_delete-prompt-${e.id}`,children:[b.jsxs(H.Typography,{variant:"body2",children:["Are you sure you want to delete this ",e.fileName?"attachment":"citation","?"]}),b.jsxs(H.Box,{display:"flex",flexDirection:"row",children:[b.jsx(lo,{size:"small",variant:"text",onClick:o,"data-testid":`citation-table_delete-prompt-${e.id}-noBtn`,children:"No"}),b.jsx(lo,{size:"small",color:"error",startIcon:b.jsx(qb,{}),onClick:()=>r(e.id).finally(o),"data-testid":`citation-table_delete-prompt-${e.id}-yesBtn`,children:"Yes"})]})]})})},fQ=t=>{const{refreshKey:e,title:n,onCancel:r,onNewCitation:o,onNewAttachment:i,onEditCitation:s,onEditAttachment:a,onDeleteCitation:l,onDownloadAttachment:u,onViewAttachment:f,onSelect:p,getCitationsPaginated:m,selectedIds:g,setSelectedIds:v,onError:y=()=>{},condenseTable:x=!1,canSelect:S=!1,canLaunchUrl:k,addlActions:T,readOnly:C=!1,showCloseBtn:O=!1}=t,A=!!t.canCreate&&!C,N=!!t.canEdit&&!C,$=!!t.canDelete&&!C,{palette:z}=H.useTheme(),[M,B]=X.useState([]),[V,F]=X.useState(!1),[P,I]=X.useState(!0),[_,R]=X.useState(null),[U,K]=X.useState(null),[j,Y]=X.useState(null),[re,ce]=X.useState({pageNo:0,pageSize:x?5:10,totalCount:0}),pe=()=>{F(!1),I(!0),m({pageNo:re.pageNo,pageSize:re.pageSize}).then(be=>(B(be.data),ce({...re,totalCount:be.totalCount}),be)).catch(be=>{y(be),F(!0),B([])}).finally(()=>I(!1))};X.useEffect(pe,[re.pageNo,re.pageSize,e]);const G=()=>{K(null),Y(null),R(null)},ee=b.jsx(lo,{variant:S?"outlined":"contained",size:S?"small":"medium",onClick:o,startIcon:b.jsx(Rf,{}),children:"Add Citation"}),ue=b.jsx(lo,{variant:S?"outlined":"contained",size:S?"small":"medium",onClick:i,startIcon:b.jsx(kM,{}),children:"Add Attachment"}),oe=be=>{if(!(!N&&!C)&&!(C&&!x))return b.jsx(H.Tooltip,{title:C?"View":"Edit",children:b.jsx(H.IconButton,{color:"primary",onClick:()=>be.fileName?a(be):s(be),"data-testid":`citation-table_edit-btn-${be.id}`,children:C?b.jsx($U,{}):b.jsx(kU,{})})})},ne=be=>{if(!(!$||C))return b.jsx(H.Tooltip,{title:"Delete",children:b.jsx(H.IconButton,{color:"error",onClick:Se=>{K(be),R(Se.currentTarget)},"data-testid":`citation-table_delete-btn-${be.id}`,children:b.jsx(qb,{})})})},de=be=>{if(!k)return;if(!be.fileName)return b.jsx(H.Tooltip,{title:"Open URL",children:b.jsx(H.IconButton,{color:"primary",onClick:se=>{R(se.currentTarget),Y(be)},"data-testid":`citation-table_launch-link-btn-${be.id}`,sx:{visibility:k!=null&&k(be)?"visible":"hidden"},children:b.jsx(u0,{})})})},ye=be=>{if(!f||!be.fileName)return;const Se=["pdf","png","jpg","jpeg","gif","bmp","svg","webp","mp3","wav","mp4","webm","html","htm","txt","xml","json","csv"],se=be.fileName.split(".").pop();if(!(!se||!Se.includes(se)))return b.jsx(H.Tooltip,{title:"View File",children:b.jsx(H.IconButton,{color:"primary",onClick:()=>f==null?void 0:f(be),"data-testid":`citation-table_view-file-btn-${be.id}`,children:b.jsx(u0,{})})})},Q=be=>{if(!u)return;if(!!be.fileName)return b.jsx(H.Tooltip,{title:"Download",children:b.jsx(H.IconButton,{color:"primary",onClick:()=>u==null?void 0:u(be),"data-testid":`citation-table_download-btn-${be.id}`,children:b.jsx(TU,{})})})},le=C||N||$||k||f||u||T,me=[{fieldName:"id",key:"select",label:"",hideCol:!S,render:(be,Se)=>b.jsx(H.Checkbox,{"data-testid":`citation-table_checkbox-${be}`,onChange:()=>{const se=g.includes(Se.id);v(se?g.filter(xe=>xe!==Se.id):[...g,Se.id])},checked:g.includes(be),disabled:C})},...A2(z,x),{fieldName:"id",key:"Action",label:"Action",hideCol:!le,render:(be,Se)=>b.jsxs(H.Box,{display:"flex",flexDirection:"row-reverse",children:[T==null?void 0:T(Se),ne(Se),oe(Se),ye(Se),de(Se),Q(Se)]})}];return b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingBottom:"10px",children:[b.jsx(H.Typography,{variant:x?"h6":"h2",children:n}),!S&&A&&b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:1,children:[ee,ue]}),O&&b.jsx(H.IconButton,{onClick:r,children:b.jsx(sp,{})})]}),b.jsx(M2,{"data-testid":"citation-table",size:x?"x-small":"medium",isLoading:P,columns:me,data:M,paginationState:re,onPageChange:be=>ce({...re,pageNo:be}),onRowsPerPageChange:be=>ce({...re,pageSize:be,pageNo:0}),errorTableMsg:V?"Failed to load citations.":void 0,retryCallback:pe}),S&&b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",marginTop:"20px",children:[b.jsx(H.Box,{display:"flex",flexDirection:"row",gap:".25rem",children:A&&b.jsxs(b.Fragment,{children:[ee,ue]})}),!C&&b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:".25rem",children:[b.jsx(lo,{variant:"outlined",size:"small",onClick:r,children:"Cancel"}),b.jsxs(lo,{variant:"contained",size:"small",onClick:()=>p(g),children:["Select",g.length>0&&` (${g.length})`]})]})]}),b.jsx(uQ,{citation:j,anchorEl:_,onClose:G}),b.jsx(dQ,{citation:U,anchorEl:_,onDeleteCitation:l,onClose:G})]})},A2=(t,e=!1)=>[{fieldName:"fileName",key:"CitationOrAttachment",label:"Type",render:(n,r)=>b.jsx(H.Tooltip,{title:n?"Attachment":"URL",children:n?b.jsx(kM,{sx:{color:t.grey[500],marginTop:"4px"},"data-testid":`attachment-icon-${r.id}`}):b.jsx(Rf,{sx:{color:t.grey[500],marginTop:"6px"},"data-testid":`url-icon-${r.id}`})})},{fieldName:"title",tableCellSx:{width:e?"100%":"auto"},render:n=>e?kl.truncate(n,{length:40,omission:"..."}):n},{fieldName:"fileName",key:"URL/File Name",label:"URL/File Name",hideCol:e,render:(n,r)=>b.jsx("span",{style:{wordBreak:"break-all"},children:n||r.url})},{fieldName:"source",hideCol:e},{fieldName:"accessedAt",hideCol:e,render:(n,r)=>{if(!r.fileName)return(n==null?void 0:n.slice(0,10))??""}},{fieldName:"classification",hideCol:e}],nv=t=>{const{loading:e=!1,type:n="submit",size:r="medium",...o}=t,s={small:16,medium:20,large:24}[r];return b.jsx(lo,{type:n,disabled:e,size:r,startIcon:e?b.jsx(H.CircularProgress,{size:s,color:"inherit"}):null,...o})};var rv,D2;function pQ(){if(D2)return rv;D2=1;function t(S){this._maxSize=S,this.clear()}t.prototype.clear=function(){this._size=0,this._values=Object.create(null)},t.prototype.get=function(S){return this._values[S]},t.prototype.set=function(S,k){return this._size>=this._maxSize&&this.clear(),S in this._values||this._size++,this._values[S]=k};var e=/[^.^\]^[]+|(?=\[\]|\.\.)/g,n=/^\d+$/,r=/^\d/,o=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,i=/^\s*(['"]?)(.*?)(\1)\s*$/,s=512,a=new t(s),l=new t(s),u=new t(s);rv={Cache:t,split:p,normalizePath:f,setter:function(S){var k=f(S);return l.get(S)||l.set(S,function(C,O){for(var A=0,N=k.length,$=C;A<N-1;){var z=k[A];if(z==="__proto__"||z==="constructor"||z==="prototype")return C;$=$[k[A++]]}$[k[A]]=O})},getter:function(S,k){var T=f(S);return u.get(S)||u.set(S,function(O){for(var A=0,N=T.length;A<N;)if(O!=null||!k)O=O[T[A++]];else return;return O})},join:function(S){return S.reduce(function(k,T){return k+(g(T)||n.test(T)?"["+T+"]":(k?".":"")+T)},"")},forEach:function(S,k,T){m(Array.isArray(S)?S:p(S),k,T)}};function f(S){return a.get(S)||a.set(S,p(S).map(function(k){return k.replace(i,"$2")}))}function p(S){return S.match(e)||[""]}function m(S,k,T){var C=S.length,O,A,N,$;for(A=0;A<C;A++)O=S[A],O&&(x(O)&&(O='"'+O+'"'),$=g(O),N=!$&&/^\d+$/.test(O),k.call(T,O,$,N,A,S))}function g(S){return typeof S=="string"&&S&&["'",'"'].indexOf(S.charAt(0))!==-1}function v(S){return S.match(r)&&!S.match(n)}function y(S){return o.test(S)}function x(S){return!g(S)&&(v(S)||y(S))}return rv}var ba=pQ(),ov,P2;function hQ(){if(P2)return ov;P2=1;const t=/[A-Z\xc0-\xd6\xd8-\xde]?[a-z\xdf-\xf6\xf8-\xff]+(?:['’](?:d|ll|m|re|s|t|ve))?(?=[\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000]|[A-Z\xc0-\xd6\xd8-\xde]|$)|(?:[A-Z\xc0-\xd6\xd8-\xde]|[^\ud800-\udfff\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\d+\u2700-\u27bfa-z\xdf-\xf6\xf8-\xffA-Z\xc0-\xd6\xd8-\xde])+(?:['’](?:D|LL|M|RE|S|T|VE))?(?=[\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000]|[A-Z\xc0-\xd6\xd8-\xde](?:[a-z\xdf-\xf6\xf8-\xff]|[^\ud800-\udfff\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\d+\u2700-\u27bfa-z\xdf-\xf6\xf8-\xffA-Z\xc0-\xd6\xd8-\xde])|$)|[A-Z\xc0-\xd6\xd8-\xde]?(?:[a-z\xdf-\xf6\xf8-\xff]|[^\ud800-\udfff\xac\xb1\xd7\xf7\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\xbf\u2000-\u206f \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\d+\u2700-\u27bfa-z\xdf-\xf6\xf8-\xffA-Z\xc0-\xd6\xd8-\xde])+(?:['’](?:d|ll|m|re|s|t|ve))?|[A-Z\xc0-\xd6\xd8-\xde]+(?:['’](?:D|LL|M|RE|S|T|VE))?|\d*(?:1ST|2ND|3RD|(?![123])\dTH)(?=\b|[a-z_])|\d*(?:1st|2nd|3rd|(?![123])\dth)(?=\b|[A-Z_])|\d+|(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff])[\ufe0e\ufe0f]?(?:[\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff]|\ud83c[\udffb-\udfff])?(?:\u200d(?:[^\ud800-\udfff]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff])[\ufe0e\ufe0f]?(?:[\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff]|\ud83c[\udffb-\udfff])?)*/g,e=f=>f.match(t)||[],n=f=>f[0].toUpperCase()+f.slice(1),r=(f,p)=>e(f).join(p).toLowerCase(),o=f=>e(f).reduce((p,m)=>`${p}${p?m[0].toUpperCase()+m.slice(1).toLowerCase():m.toLowerCase()}`,"");return ov={words:e,upperFirst:n,camelCase:o,pascalCase:f=>n(o(f)),snakeCase:f=>r(f,"_"),kebabCase:f=>r(f,"-"),sentenceCase:f=>n(r(f," ")),titleCase:f=>e(f).map(n).join(" ")},ov}var iv=hQ(),yh={exports:{}},N2;function mQ(){if(N2)return yh.exports;N2=1,yh.exports=function(o){return t(e(o),o)},yh.exports.array=t;function t(o,i){var s=o.length,a=new Array(s),l={},u=s,f=n(i),p=r(o);for(i.forEach(function(g){if(!p.has(g[0])||!p.has(g[1]))throw new Error("Unknown node. There is an unknown node in the supplied edges.")});u--;)l[u]||m(o[u],u,new Set);return a;function m(g,v,y){if(y.has(g)){var x;try{x=", node was:"+JSON.stringify(g)}catch{x=""}throw new Error("Cyclic dependency"+x)}if(!p.has(g))throw new Error("Found unknown node. Make sure to provided all involved nodes. Unknown node: "+JSON.stringify(g));if(!l[v]){l[v]=!0;var S=f.get(g)||new Set;if(S=Array.from(S),v=S.length){y.add(g);do{var k=S[--v];m(k,p.get(k),y)}while(v);y.delete(g)}a[--s]=g}}}function e(o){for(var i=new Set,s=0,a=o.length;s<a;s++){var l=o[s];i.add(l[0]),i.add(l[1])}return Array.from(i)}function n(o){for(var i=new Map,s=0,a=o.length;s<a;s++){var l=o[s];i.has(l[0])||i.set(l[0],new Set),i.has(l[1])||i.set(l[1],new Set),i.get(l[0]).add(l[1])}return i}function r(o){for(var i=new Map,s=0,a=o.length;s<a;s++)i.set(o[s],s);return i}return yh.exports}var gQ=mQ();const yQ=er(gQ),bQ=Object.prototype.toString,vQ=Error.prototype.toString,xQ=RegExp.prototype.toString,wQ=typeof Symbol<"u"?Symbol.prototype.toString:()=>"",SQ=/^Symbol\((.*)\)(.*)$/;function CQ(t){return t!=+t?"NaN":t===0&&1/t<0?"-0":""+t}function $2(t,e=!1){if(t==null||t===!0||t===!1)return""+t;const n=typeof t;if(n==="number")return CQ(t);if(n==="string")return e?`"${t}"`:t;if(n==="function")return"[Function "+(t.name||"anonymous")+"]";if(n==="symbol")return wQ.call(t).replace(SQ,"Symbol($1)");const r=bQ.call(t).slice(8,-1);return r==="Date"?isNaN(t.getTime())?""+t:t.toISOString(t):r==="Error"||t instanceof Error?"["+vQ.call(t)+"]":r==="RegExp"?xQ.call(t):null}function xs(t,e){let n=$2(t,e);return n!==null?n:JSON.stringify(t,function(r,o){let i=$2(this[r],e);return i!==null?i:o},2)}function L2(t){return t==null?[]:[].concat(t)}let B2,F2,R2,TQ=/\$\{\s*(\w+)\s*\}/g;B2=Symbol.toStringTag;class z2{constructor(e,n,r,o){this.name=void 0,this.message=void 0,this.value=void 0,this.path=void 0,this.type=void 0,this.params=void 0,this.errors=void 0,this.inner=void 0,this[B2]="Error",this.name="ValidationError",this.value=n,this.path=r,this.type=o,this.errors=[],this.inner=[],L2(e).forEach(i=>{if(pr.isError(i)){this.errors.push(...i.errors);const s=i.inner.length?i.inner:[i];this.inner.push(...s)}else this.errors.push(i)}),this.message=this.errors.length>1?`${this.errors.length} errors occurred`:this.errors[0]}}F2=Symbol.hasInstance,R2=Symbol.toStringTag;class pr extends Error{static formatError(e,n){const r=n.label||n.path||"this";return n=Object.assign({},n,{path:r,originalPath:n.path}),typeof e=="string"?e.replace(TQ,(o,i)=>xs(n[i])):typeof e=="function"?e(n):e}static isError(e){return e&&e.name==="ValidationError"}constructor(e,n,r,o,i){const s=new z2(e,n,r,o);if(i)return s;super(),this.value=void 0,this.path=void 0,this.type=void 0,this.params=void 0,this.errors=[],this.inner=[],this[R2]="Error",this.name=s.name,this.message=s.message,this.type=s.type,this.value=s.value,this.path=s.path,this.errors=s.errors,this.inner=s.inner,Error.captureStackTrace&&Error.captureStackTrace(this,pr)}static[F2](e){return z2[Symbol.hasInstance](e)||super[Symbol.hasInstance](e)}}let Qo={default:"${path} is invalid",required:"${path} is a required field",defined:"${path} must be defined",notNull:"${path} cannot be null",oneOf:"${path} must be one of the following values: ${values}",notOneOf:"${path} must not be one of the following values: ${values}",notType:({path:t,type:e,value:n,originalValue:r})=>{const o=r!=null&&r!==n?` (cast from the value \`${xs(r,!0)}\`).`:".";return e!=="mixed"?`${t} must be a \`${e}\` type, but the final value was: \`${xs(n,!0)}\``+o:`${t} must match the configured type. The validated value was: \`${xs(n,!0)}\``+o}},Tr={length:"${path} must be exactly ${length} characters",min:"${path} must be at least ${min} characters",max:"${path} must be at most ${max} characters",matches:'${path} must match the following: "${regex}"',email:"${path} must be a valid email",url:"${path} must be a valid URL",uuid:"${path} must be a valid UUID",datetime:"${path} must be a valid ISO date-time",datetime_precision:"${path} must be a valid ISO date-time with a sub-second precision of exactly ${precision} digits",datetime_offset:'${path} must be a valid ISO date-time with UTC "Z" timezone',trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"},kQ={min:"${path} must be greater than or equal to ${min}",max:"${path} must be less than or equal to ${max}",lessThan:"${path} must be less than ${less}",moreThan:"${path} must be greater than ${more}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"},sv={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"},EQ={isValue:"${path} field must be ${value}"},bh={noUnknown:"${path} field has unspecified keys: ${unknown}",exact:"${path} object contains unknown properties: ${properties}"};Object.assign(Object.create(null),{mixed:Qo,string:Tr,number:kQ,date:sv,object:bh,array:{min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must have ${length} items"},boolean:EQ,tuple:{notType:t=>{const{path:e,value:n,spec:r}=t,o=r.types.length;if(Array.isArray(n)){if(n.length<o)return`${e} tuple value has too few items, expected a length of ${o} but got ${n.length} for value: \`${xs(n,!0)}\``;if(n.length>o)return`${e} tuple value has too many items, expected a length of ${o} but got ${n.length} for value: \`${xs(n,!0)}\``}return pr.formatError(Qo.notType,t)}}});const av=t=>t&&t.__isYupSchema__;class vh{static fromOptions(e,n){if(!n.then&&!n.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");let{is:r,then:o,otherwise:i}=n,s=typeof r=="function"?r:(...a)=>a.every(l=>l===r);return new vh(e,(a,l)=>{var u;let f=s(...a)?o:i;return(u=f==null?void 0:f(l))!=null?u:l})}constructor(e,n){this.fn=void 0,this.refs=e,this.refs=e,this.fn=n}resolve(e,n){let r=this.refs.map(i=>i.getValue(n==null?void 0:n.value,n==null?void 0:n.parent,n==null?void 0:n.context)),o=this.fn(r,e,n);if(o===void 0||o===e)return e;if(!av(o))throw new TypeError("conditions must return a schema object");return o.resolve(n)}}const xh={context:"$",value:"."};class va{constructor(e,n={}){if(this.key=void 0,this.isContext=void 0,this.isValue=void 0,this.isSibling=void 0,this.path=void 0,this.getter=void 0,this.map=void 0,typeof e!="string")throw new TypeError("ref must be a string, got: "+e);if(this.key=e.trim(),e==="")throw new TypeError("ref must be a non-empty string");this.isContext=this.key[0]===xh.context,this.isValue=this.key[0]===xh.value,this.isSibling=!this.isContext&&!this.isValue;let r=this.isContext?xh.context:this.isValue?xh.value:"";this.path=this.key.slice(r.length),this.getter=this.path&&ba.getter(this.path,!0),this.map=n.map}getValue(e,n,r){let o=this.isContext?r:this.isValue?e:n;return this.getter&&(o=this.getter(o||{})),this.map&&(o=this.map(o)),o}cast(e,n){return this.getValue(e,n==null?void 0:n.parent,n==null?void 0:n.context)}resolve(){return this}describe(){return{type:"ref",key:this.key}}toString(){return`Ref(${this.key})`}static isRef(e){return e&&e.__isYupRef}}va.prototype.__isYupRef=!0;const xa=t=>t==null;function $l(t){function e({value:n,path:r="",options:o,originalValue:i,schema:s},a,l){const{name:u,test:f,params:p,message:m,skipAbsent:g}=t;let{parent:v,context:y,abortEarly:x=s.spec.abortEarly,disableStackTrace:S=s.spec.disableStackTrace}=o;const k={value:n,parent:v,context:y};function T(B={}){const V=V2(Object.assign({value:n,originalValue:i,label:s.spec.label,path:B.path||r,spec:s.spec,disableStackTrace:B.disableStackTrace||S},p,B.params),k),F=new pr(pr.formatError(B.message||m,V),n,V.path,B.type||u,V.disableStackTrace);return F.params=V,F}const C=x?a:l;let O={path:r,parent:v,type:u,from:o.from,createError:T,resolve(B){return H2(B,k)},options:o,originalValue:i,schema:s};const A=B=>{pr.isError(B)?C(B):B?l(null):C(T())},N=B=>{pr.isError(B)?C(B):a(B)};if(g&&xa(n))return A(!0);let z;try{var M;if(z=f.call(O,n,O),typeof((M=z)==null?void 0:M.then)=="function"){if(o.sync)throw new Error(`Validation test of type: "${O.type}" returned a Promise during a synchronous validate. This test will finish after the validate call has returned`);return Promise.resolve(z).then(A,N)}}catch(B){N(B);return}A(z)}return e.OPTIONS=t,e}function V2(t,e){if(!t)return t;for(const n of Object.keys(t))t[n]=H2(t[n],e);return t}function H2(t,e){return va.isRef(t)?t.getValue(e.value,e.parent,e.context):t}function OQ(t,e,n,r=n){let o,i,s;return e?(ba.forEach(e,(a,l,u)=>{let f=l?a.slice(1,a.length-1):a;t=t.resolve({context:r,parent:o,value:n});let p=t.type==="tuple",m=u?parseInt(f,10):0;if(t.innerType||p){if(p&&!u)throw new Error(`Yup.reach cannot implicitly index into a tuple type. the path part "${s}" must contain an index to the tuple element, e.g. "${s}[0]"`);if(n&&m>=n.length)throw new Error(`Yup.reach cannot resolve an array item at index: ${a}, in the path: ${e}. because there is no value at that index. `);o=n,n=n&&n[m],t=p?t.spec.types[m]:t.innerType}if(!u){if(!t.fields||!t.fields[f])throw new Error(`The schema does not contain the path: ${e}. (failed at: ${s} which is a type: "${t.type}")`);o=n,n=n&&n[f],t=t.fields[f]}i=f,s=l?"["+a+"]":"."+a}),{schema:t,parent:o,parentPath:i}):{parent:o,parentPath:e,schema:t}}class wh extends Set{describe(){const e=[];for(const n of this.values())e.push(va.isRef(n)?n.describe():n);return e}resolveAll(e){let n=[];for(const r of this.values())n.push(e(r));return n}clone(){return new wh(this.values())}merge(e,n){const r=this.clone();return e.forEach(o=>r.add(o)),n.forEach(o=>r.delete(o)),r}}function Ll(t,e=new Map){if(av(t)||!t||typeof t!="object")return t;if(e.has(t))return e.get(t);let n;if(t instanceof Date)n=new Date(t.getTime()),e.set(t,n);else if(t instanceof RegExp)n=new RegExp(t),e.set(t,n);else if(Array.isArray(t)){n=new Array(t.length),e.set(t,n);for(let r=0;r<t.length;r++)n[r]=Ll(t[r],e)}else if(t instanceof Map){n=new Map,e.set(t,n);for(const[r,o]of t.entries())n.set(r,Ll(o,e))}else if(t instanceof Set){n=new Set,e.set(t,n);for(const r of t)n.add(Ll(r,e))}else if(t instanceof Object){n={},e.set(t,n);for(const[r,o]of Object.entries(t))n[r]=Ll(o,e)}else throw Error(`Unable to clone ${t}`);return n}function MQ(t){if(!(t!=null&&t.length))return;const e=[];let n="",r=!1,o=!1;for(let i=0;i<t.length;i++){const s=t[i];if(s==="["&&!o){n&&(e.push(...n.split(".").filter(Boolean)),n=""),r=!0;continue}if(s==="]"&&!o){n&&(/^\d+$/.test(n)?e.push(n):e.push(n.replace(/^"|"$/g,"")),n=""),r=!1;continue}if(s==='"'){o=!o;continue}if(s==="."&&!r&&!o){n&&(e.push(n),n="");continue}n+=s}return n&&e.push(...n.split(".").filter(Boolean)),e}function _Q(t,e){const n=e?`${e}.${t.path}`:t.path;return t.errors.map(r=>({message:r,path:MQ(n)}))}function W2(t,e){var n;if(!((n=t.inner)!=null&&n.length)&&t.errors.length)return _Q(t,e);const r=e?`${e}.${t.path}`:t.path;return t.inner.flatMap(o=>W2(o,r))}class ei{constructor(e){this.type=void 0,this.deps=[],this.tests=void 0,this.transforms=void 0,this.conditions=[],this._mutate=void 0,this.internalTests={},this._whitelist=new wh,this._blacklist=new wh,this.exclusiveTests=Object.create(null),this._typeCheck=void 0,this.spec=void 0,this.tests=[],this.transforms=[],this.withMutation(()=>{this.typeError(Qo.notType)}),this.type=e.type,this._typeCheck=e.check,this.spec=Object.assign({strip:!1,strict:!1,abortEarly:!0,recursive:!0,disableStackTrace:!1,nullable:!1,optional:!0,coerce:!0},e==null?void 0:e.spec),this.withMutation(n=>{n.nonNullable()})}get _type(){return this.type}clone(e){if(this._mutate)return e&&Object.assign(this.spec,e),this;const n=Object.create(Object.getPrototypeOf(this));return n.type=this.type,n._typeCheck=this._typeCheck,n._whitelist=this._whitelist.clone(),n._blacklist=this._blacklist.clone(),n.internalTests=Object.assign({},this.internalTests),n.exclusiveTests=Object.assign({},this.exclusiveTests),n.deps=[...this.deps],n.conditions=[...this.conditions],n.tests=[...this.tests],n.transforms=[...this.transforms],n.spec=Ll(Object.assign({},this.spec,e)),n}label(e){let n=this.clone();return n.spec.label=e,n}meta(...e){if(e.length===0)return this.spec.meta;let n=this.clone();return n.spec.meta=Object.assign(n.spec.meta||{},e[0]),n}withMutation(e){let n=this._mutate;this._mutate=!0;let r=e(this);return this._mutate=n,r}concat(e){if(!e||e===this)return this;if(e.type!==this.type&&this.type!=="mixed")throw new TypeError(`You cannot \`concat()\` schema's of different types: ${this.type} and ${e.type}`);let n=this,r=e.clone();const o=Object.assign({},n.spec,r.spec);return r.spec=o,r.internalTests=Object.assign({},n.internalTests,r.internalTests),r._whitelist=n._whitelist.merge(e._whitelist,e._blacklist),r._blacklist=n._blacklist.merge(e._blacklist,e._whitelist),r.tests=n.tests,r.exclusiveTests=n.exclusiveTests,r.withMutation(i=>{e.tests.forEach(s=>{i.test(s.OPTIONS)})}),r.transforms=[...n.transforms,...r.transforms],r}isType(e){return e==null?!!(this.spec.nullable&&e===null||this.spec.optional&&e===void 0):this._typeCheck(e)}resolve(e){let n=this;if(n.conditions.length){let r=n.conditions;n=n.clone(),n.conditions=[],n=r.reduce((o,i)=>i.resolve(o,e),n),n=n.resolve(e)}return n}resolveOptions(e){var n,r,o,i;return Object.assign({},e,{from:e.from||[],strict:(n=e.strict)!=null?n:this.spec.strict,abortEarly:(r=e.abortEarly)!=null?r:this.spec.abortEarly,recursive:(o=e.recursive)!=null?o:this.spec.recursive,disableStackTrace:(i=e.disableStackTrace)!=null?i:this.spec.disableStackTrace})}cast(e,n={}){let r=this.resolve(Object.assign({},n,{value:e})),o=n.assert==="ignore-optionality",i=r._cast(e,n);if(n.assert!==!1&&!r.isType(i)){if(o&&xa(i))return i;let s=xs(e),a=xs(i);throw new TypeError(`The value of ${n.path||"field"} could not be cast to a value that satisfies the schema type: "${r.type}".
406
406
 
407
407
  attempted value: ${s}
408
- `+(a!==s?`result of cast: ${a}`:""))}return i}_cast(e,n){let r=e===void 0?e:this.transforms.reduce((o,i)=>i.call(this,o,e,this,n),e);return r===void 0&&(r=this.getDefault(n)),r}_validate(e,n={},r,o){let{path:i,originalValue:s=e,strict:a=this.spec.strict}=n,l=e;a||(l=this._cast(l,Object.assign({assert:!1},n)));let u=[];for(let f of Object.values(this.internalTests))f&&u.push(f);this.runTests({path:i,value:l,originalValue:s,options:n,tests:u},r,f=>{if(f.length)return o(f,l);this.runTests({path:i,value:l,originalValue:s,options:n,tests:this.tests},r,o)})}runTests(e,n,r){let o=!1,{tests:i,value:s,originalValue:a,path:l,options:u}=e,f=y=>{o||(o=!0,n(y,s))},p=y=>{o||(o=!0,r(y,s))},m=i.length,g=[];if(!m)return p([]);let v={value:s,originalValue:a,path:l,options:u,schema:this};for(let y=0;y<i.length;y++){const x=i[y];x(v,f,function(k){k&&(Array.isArray(k)?g.push(...k):g.push(k)),--m<=0&&p(g)})}}asNestedTest({key:e,index:n,parent:r,parentPath:o,originalParent:i,options:s}){const a=e??n;if(a==null)throw TypeError("Must include `key` or `index` for nested validations");const l=typeof a=="number";let u=r[a];const f=Object.assign({},s,{strict:!0,parent:r,value:u,originalValue:i[a],key:void 0,[l?"index":"key"]:a,path:l||a.includes(".")?`${o||""}[${l?a:`"${a}"`}]`:(o?`${o}.`:"")+e});return(p,m,g)=>this.resolve(f)._validate(u,f,m,g)}validate(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return new Promise((s,a)=>o._validate(e,n,(l,u)=>{pr.isError(l)&&(l.value=u),a(l)},(l,u)=>{l.length?a(new pr(l,u,void 0,void 0,i)):s(u)}))}validateSync(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i,s=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return o._validate(e,Object.assign({},n,{sync:!0}),(a,l)=>{throw pr.isError(a)&&(a.value=l),a},(a,l)=>{if(a.length)throw new pr(a,e,void 0,void 0,s);i=l}),i}isValid(e,n){return this.validate(e,n).then(()=>!0,r=>{if(pr.isError(r))return!1;throw r})}isValidSync(e,n){try{return this.validateSync(e,n),!0}catch(r){if(pr.isError(r))return!1;throw r}}_getDefault(e){let n=this.spec.default;return n==null?n:typeof n=="function"?n.call(this,e):Ll(n)}getDefault(e){return this.resolve(e||{})._getDefault(e)}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){return this.clone({strict:e})}nullability(e,n){const r=this.clone({nullable:e});return r.internalTests.nullable=$l({message:n,name:"nullable",test(o){return o===null?this.schema.spec.nullable:!0}}),r}optionality(e,n){const r=this.clone({optional:e});return r.internalTests.optionality=$l({message:n,name:"optionality",test(o){return o===void 0?this.schema.spec.optional:!0}}),r}optional(){return this.optionality(!0)}defined(e=Qo.defined){return this.optionality(!1,e)}nullable(){return this.nullability(!0)}nonNullable(e=Qo.notNull){return this.nullability(!1,e)}required(e=Qo.required){return this.clone().withMutation(n=>n.nonNullable(e).defined(e))}notRequired(){return this.clone().withMutation(e=>e.nullable().optional())}transform(e){let n=this.clone();return n.transforms.push(e),n}test(...e){let n;if(e.length===1?typeof e[0]=="function"?n={test:e[0]}:n=e[0]:e.length===2?n={name:e[0],test:e[1]}:n={name:e[0],message:e[1],test:e[2]},n.message===void 0&&(n.message=Qo.default),typeof n.test!="function")throw new TypeError("`test` is a required parameters");let r=this.clone(),o=$l(n),i=n.exclusive||n.name&&r.exclusiveTests[n.name]===!0;if(n.exclusive&&!n.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return n.name&&(r.exclusiveTests[n.name]=!!n.exclusive),r.tests=r.tests.filter(s=>!(s.OPTIONS.name===n.name&&(i||s.OPTIONS.test===o.OPTIONS.test))),r.tests.push(o),r}when(e,n){!Array.isArray(e)&&typeof e!="string"&&(n=e,e=".");let r=this.clone(),o=L2(e).map(i=>new va(i));return o.forEach(i=>{i.isSibling&&r.deps.push(i.key)}),r.conditions.push(typeof n=="function"?new vh(o,n):vh.fromOptions(o,n)),r}typeError(e){let n=this.clone();return n.internalTests.typeError=$l({message:e,name:"typeError",skipAbsent:!0,test(r){return this.schema._typeCheck(r)?!0:this.createError({params:{type:this.schema.type}})}}),n}oneOf(e,n=Qo.oneOf){let r=this.clone();return e.forEach(o=>{r._whitelist.add(o),r._blacklist.delete(o)}),r.internalTests.whiteList=$l({message:n,name:"oneOf",skipAbsent:!0,test(o){let i=this.schema._whitelist,s=i.resolveAll(this.resolve);return s.includes(o)?!0:this.createError({params:{values:Array.from(i).join(", "),resolved:s}})}}),r}notOneOf(e,n=Qo.notOneOf){let r=this.clone();return e.forEach(o=>{r._blacklist.add(o),r._whitelist.delete(o)}),r.internalTests.blacklist=$l({message:n,name:"notOneOf",test(o){let i=this.schema._blacklist,s=i.resolveAll(this.resolve);return s.includes(o)?this.createError({params:{values:Array.from(i).join(", "),resolved:s}}):!0}}),r}strip(e=!0){let n=this.clone();return n.spec.strip=e,n}describe(e){const n=(e?this.resolve(e):this).clone(),{label:r,meta:o,optional:i,nullable:s}=n.spec;return{meta:o,label:r,optional:i,nullable:s,default:n.getDefault(e),type:n.type,oneOf:n._whitelist.describe(),notOneOf:n._blacklist.describe(),tests:n.tests.filter((l,u,f)=>f.findIndex(p=>p.OPTIONS.name===l.OPTIONS.name)===u).map(l=>{const u=l.OPTIONS.params&&e?V2(Object.assign({},l.OPTIONS.params),e):l.OPTIONS.params;return{name:l.OPTIONS.name,params:u}})}}get"~standard"(){const e=this;return{version:1,vendor:"yup",async validate(r){try{return{value:await e.validate(r,{abortEarly:!1})}}catch(o){if(o instanceof pr)return{issues:W2(o)};throw o}}}}}ei.prototype.__isYupSchema__=!0;for(const t of["validate","validateSync"])ei.prototype[`${t}At`]=function(e,n,r={}){const{parent:o,parentPath:i,schema:s}=OQ(this,e,n,r.context);return s[t](o&&o[i],Object.assign({},r,{parent:o,path:e}))};for(const t of["equals","is"])ei.prototype[t]=ei.prototype.oneOf;for(const t of["not","nope"])ei.prototype[t]=ei.prototype.notOneOf;const IQ=/^(\d{4}|[+-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,.](\d{1,}))?)?(?:(Z)|([+-])(\d{2})(?::?(\d{2}))?)?)?$/;function AQ(t){const e=lv(t);if(!e)return Date.parse?Date.parse(t):Number.NaN;if(e.z===void 0&&e.plusMinus===void 0)return new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond).valueOf();let n=0;return e.z!=="Z"&&e.plusMinus!==void 0&&(n=e.hourOffset*60+e.minuteOffset,e.plusMinus==="+"&&(n=0-n)),Date.UTC(e.year,e.month,e.day,e.hour,e.minute+n,e.second,e.millisecond)}function lv(t){var e,n;const r=IQ.exec(t);return r?{year:_i(r[1]),month:_i(r[2],1)-1,day:_i(r[3],1),hour:_i(r[4]),minute:_i(r[5]),second:_i(r[6]),millisecond:r[7]?_i(r[7].substring(0,3)):0,precision:(e=(n=r[7])==null?void 0:n.length)!=null?e:void 0,z:r[8]||void 0,plusMinus:r[9]||void 0,hourOffset:_i(r[10]),minuteOffset:_i(r[11])}:null}function _i(t,e=0){return Number(t)||e}let DQ=/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,PQ=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,NQ=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,$Q="^\\d{4}-\\d{2}-\\d{2}",LQ="\\d{2}:\\d{2}:\\d{2}",BQ="(([+-]\\d{2}(:?\\d{2})?)|Z)",FQ=new RegExp(`${$Q}T${LQ}(\\.\\d+)?${BQ}$`),RQ=t=>xa(t)||t===t.trim(),zQ={}.toString();function wa(){return new j2}class j2 extends ei{constructor(){super({type:"string",check(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}}),this.withMutation(()=>{this.transform((e,n)=>{if(!this.spec.coerce||this.isType(e)||Array.isArray(e))return e;const r=e!=null&&e.toString?e.toString():e;return r===zQ?e:r})})}required(e){return super.required(e).withMutation(n=>n.test({message:e||Qo.required,name:"required",skipAbsent:!0,test:r=>!!r.length}))}notRequired(){return super.notRequired().withMutation(e=>(e.tests=e.tests.filter(n=>n.OPTIONS.name!=="required"),e))}length(e,n=Tr.length){return this.test({message:n,name:"length",exclusive:!0,params:{length:e},skipAbsent:!0,test(r){return r.length===this.resolve(e)}})}min(e,n=Tr.min){return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(r){return r.length>=this.resolve(e)}})}max(e,n=Tr.max){return this.test({name:"max",exclusive:!0,message:n,params:{max:e},skipAbsent:!0,test(r){return r.length<=this.resolve(e)}})}matches(e,n){let r=!1,o,i;return n&&(typeof n=="object"?{excludeEmptyString:r=!1,message:o,name:i}=n:o=n),this.test({name:i||"matches",message:o||Tr.matches,params:{regex:e},skipAbsent:!0,test:s=>s===""&&r||s.search(e)!==-1})}email(e=Tr.email){return this.matches(DQ,{name:"email",message:e,excludeEmptyString:!0})}url(e=Tr.url){return this.matches(PQ,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=Tr.uuid){return this.matches(NQ,{name:"uuid",message:e,excludeEmptyString:!1})}datetime(e){let n="",r,o;return e&&(typeof e=="object"?{message:n="",allowOffset:r=!1,precision:o=void 0}=e:n=e),this.matches(FQ,{name:"datetime",message:n||Tr.datetime,excludeEmptyString:!0}).test({name:"datetime_offset",message:n||Tr.datetime_offset,params:{allowOffset:r},skipAbsent:!0,test:i=>{if(!i||r)return!0;const s=lv(i);return s?!!s.z:!1}}).test({name:"datetime_precision",message:n||Tr.datetime_precision,params:{precision:o},skipAbsent:!0,test:i=>{if(!i||o==null)return!0;const s=lv(i);return s?s.precision===o:!1}})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=Tr.trim){return this.transform(n=>n!=null?n.trim():n).test({message:e,name:"trim",test:RQ})}lowercase(e=Tr.lowercase){return this.transform(n=>xa(n)?n:n.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>xa(n)||n===n.toLowerCase()})}uppercase(e=Tr.uppercase){return this.transform(n=>xa(n)?n:n.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>xa(n)||n===n.toUpperCase()})}}wa.prototype=j2.prototype;let U2=new Date(""),VQ=t=>Object.prototype.toString.call(t)==="[object Date]";function cv(){return new Nu}class Nu extends ei{constructor(){super({type:"date",check(e){return VQ(e)&&!isNaN(e.getTime())}}),this.withMutation(()=>{this.transform((e,n)=>!this.spec.coerce||this.isType(e)||e===null?e:(e=AQ(e),isNaN(e)?Nu.INVALID_DATE:new Date(e)))})}prepareParam(e,n){let r;if(va.isRef(e))r=e;else{let o=this.cast(e);if(!this._typeCheck(o))throw new TypeError(`\`${n}\` must be a Date or a value that can be \`cast()\` to a Date`);r=o}return r}min(e,n=sv.min){let r=this.prepareParam(e,"min");return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(o){return o>=this.resolve(r)}})}max(e,n=sv.max){let r=this.prepareParam(e,"max");return this.test({message:n,name:"max",exclusive:!0,params:{max:e},skipAbsent:!0,test(o){return o<=this.resolve(r)}})}}Nu.INVALID_DATE=U2,cv.prototype=Nu.prototype,cv.INVALID_DATE=U2;function HQ(t,e=[]){let n=[],r=new Set,o=new Set(e.map(([s,a])=>`${s}-${a}`));function i(s,a){let l=ba.split(s)[0];r.add(l),o.has(`${a}-${l}`)||n.push([a,l])}for(const s of Object.keys(t)){let a=t[s];r.add(s),va.isRef(a)&&a.isSibling?i(a.path,s):av(a)&&"deps"in a&&a.deps.forEach(l=>i(l,s))}return yQ.array(Array.from(r),n).reverse()}function q2(t,e){let n=1/0;return t.some((r,o)=>{var i;if((i=e.path)!=null&&i.includes(r))return n=o,!0}),n}function K2(t){return(e,n)=>q2(t,e)-q2(t,n)}const WQ=(t,e,n)=>{if(typeof t!="string")return t;let r=t;try{r=JSON.parse(t)}catch{}return n.isType(r)?r:t};function Sh(t){if("fields"in t){const e={};for(const[n,r]of Object.entries(t.fields))e[n]=Sh(r);return t.setFields(e)}if(t.type==="array"){const e=t.optional();return e.innerType&&(e.innerType=Sh(e.innerType)),e}return t.type==="tuple"?t.optional().clone({types:t.spec.types.map(Sh)}):"optional"in t?t.optional():t}const jQ=(t,e)=>{const n=[...ba.normalizePath(e)];if(n.length===1)return n[0]in t;let r=n.pop(),o=ba.getter(ba.join(n),!0)(t);return!!(o&&r in o)};let Y2=t=>Object.prototype.toString.call(t)==="[object Object]";function G2(t,e){let n=Object.keys(t.fields);return Object.keys(e).filter(r=>n.indexOf(r)===-1)}const UQ=K2([]);function uv(t){return new J2(t)}class J2 extends ei{constructor(e){super({type:"object",check(n){return Y2(n)||typeof n=="function"}}),this.fields=Object.create(null),this._sortErrors=UQ,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{e&&this.shape(e)})}_cast(e,n={}){var r;let o=super._cast(e,n);if(o===void 0)return this.getDefault(n);if(!this._typeCheck(o))return o;let i=this.fields,s=(r=n.stripUnknown)!=null?r:this.spec.noUnknown,a=[].concat(this._nodes,Object.keys(o).filter(p=>!this._nodes.includes(p))),l={},u=Object.assign({},n,{parent:l,__validating:n.__validating||!1}),f=!1;for(const p of a){let m=i[p],g=p in o,v=o[p];if(m){let y;u.path=(n.path?`${n.path}.`:"")+p,m=m.resolve({value:v,context:n.context,parent:l});let x=m instanceof ei?m.spec:void 0,S=x==null?void 0:x.strict;if(x!=null&&x.strip){f=f||p in o;continue}y=!n.__validating||!S?m.cast(v,u):v,y!==void 0&&(l[p]=y)}else g&&!s&&(l[p]=v);(g!==p in l||l[p]!==v)&&(f=!0)}return f?l:o}_validate(e,n={},r,o){let{from:i=[],originalValue:s=e,recursive:a=this.spec.recursive}=n;n.from=[{schema:this,value:s},...i],n.__validating=!0,n.originalValue=s,super._validate(e,n,r,(l,u)=>{if(!a||!Y2(u)){o(l,u);return}s=s||u;let f=[];for(let p of this._nodes){let m=this.fields[p];!m||va.isRef(m)||f.push(m.asNestedTest({options:n,key:p,parent:u,parentPath:n.path,originalParent:s}))}this.runTests({tests:f,value:u,originalValue:s,options:n},r,p=>{o(p.sort(this._sortErrors).concat(l),u)})})}clone(e){const n=super.clone(e);return n.fields=Object.assign({},this.fields),n._nodes=this._nodes,n._excludedEdges=this._excludedEdges,n._sortErrors=this._sortErrors,n}concat(e){let n=super.concat(e),r=n.fields;for(let[o,i]of Object.entries(this.fields)){const s=r[o];r[o]=s===void 0?i:s}return n.withMutation(o=>o.setFields(r,[...this._excludedEdges,...e._excludedEdges]))}_getDefault(e){if("default"in this.spec)return super._getDefault(e);if(!this._nodes.length)return;let n={};return this._nodes.forEach(r=>{var o;const i=this.fields[r];let s=e;(o=s)!=null&&o.value&&(s=Object.assign({},s,{parent:s.value,value:s.value[r]})),n[r]=i&&"getDefault"in i?i.getDefault(s):void 0}),n}setFields(e,n){let r=this.clone();return r.fields=e,r._nodes=HQ(e,n),r._sortErrors=K2(Object.keys(e)),n&&(r._excludedEdges=n),r}shape(e,n=[]){return this.clone().withMutation(r=>{let o=r._excludedEdges;return n.length&&(Array.isArray(n[0])||(n=[n]),o=[...r._excludedEdges,...n]),r.setFields(Object.assign(r.fields,e),o)})}partial(){const e={};for(const[n,r]of Object.entries(this.fields))e[n]="optional"in r&&r.optional instanceof Function?r.optional():r;return this.setFields(e)}deepPartial(){return Sh(this)}pick(e){const n={};for(const r of e)this.fields[r]&&(n[r]=this.fields[r]);return this.setFields(n,this._excludedEdges.filter(([r,o])=>e.includes(r)&&e.includes(o)))}omit(e){const n=[];for(const r of Object.keys(this.fields))e.includes(r)||n.push(r);return this.pick(n)}from(e,n,r){let o=ba.getter(e,!0);return this.transform(i=>{if(!i)return i;let s=i;return jQ(i,e)&&(s=Object.assign({},i),r||delete s[e],s[n]=o(i)),s})}json(){return this.transform(WQ)}exact(e){return this.test({name:"exact",exclusive:!0,message:e||bh.exact,test(n){if(n==null)return!0;const r=G2(this.schema,n);return r.length===0||this.createError({params:{properties:r.join(", ")}})}})}stripUnknown(){return this.clone({noUnknown:!0})}noUnknown(e=!0,n=bh.noUnknown){typeof e!="boolean"&&(n=e,e=!0);let r=this.test({name:"noUnknown",exclusive:!0,message:n,test(o){if(o==null)return!0;const i=G2(this.schema,o);return!e||i.length===0||this.createError({params:{unknown:i.join(", ")}})}});return r.spec.noUnknown=e,r}unknown(e=!0,n=bh.noUnknown){return this.noUnknown(!e,n)}transformKeys(e){return this.transform(n=>{if(!n)return n;const r={};for(const o of Object.keys(n))r[e(o)]=n[o];return r})}camelCase(){return this.transformKeys(iv.camelCase)}snakeCase(){return this.transformKeys(iv.snakeCase)}constantCase(){return this.transformKeys(e=>iv.snakeCase(e).toUpperCase())}describe(e){const n=(e?this.resolve(e):this).clone(),r=super.describe(e);r.fields={};for(const[i,s]of Object.entries(n.fields)){var o;let a=e;(o=a)!=null&&o.value&&(a=Object.assign({},a,{parent:a.value,value:a.value[i]})),r.fields[i]=s.describe(a)}return r}}uv.prototype=J2.prototype;const qQ=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,modifyCitation:i,readOnly:s=!1,showCloseBtn:a=!1}=t,l=X.useRef(null),[u,f]=X.useState(!1),[p,m]=X.useState(!1),[g,v]=X.useState({type:"Url",source:"",title:"",accessedAt:null,url:"",classification:""});return X.useEffect(()=>{i&&v({...i,type:"Url"})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),a&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(sp,{})})]}),b.jsx(jt.Formik,{innerRef:l,enableReinitialize:!0,initialValues:g,onSubmit:async y=>{f(!0),n(y).catch(x=>{throw f(!1),x}).finally(()=>f(!1))},validationSchema:uv({source:wa().required("Source is required"),title:wa().required("Title is required"),accessedAt:cv().required("Accessed At is required"),url:wa().required("URL is required"),classification:wa().required("Classification is required")}),validateOnBlur:p,validateOnChange:p,children:({handleSubmit:y})=>b.jsxs(jt.Form,{autoComplete:"off",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"column",gap:s?1:0,children:[b.jsx(ms,{name:"source",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(ms,{name:"title",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(Fp,{name:"accessedAt",disabled:u,required:!0,margin:"none",isDatePicker:!0,readOnly:s}),b.jsx(ms,{name:"url",label:"URL",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(CM,{row:!0,name:"classification",required:!0,radios:[{label:"Public Source",value:"Public Source",helperText:"URL is accessible to anyone from any location without special permissions. You can safely access this URL on any computer, including public or shared devices."},{label:"Proprietary Source",value:"Proprietary Source",helperText:"For private, sensitive, or access-controlled content. Use a VPN, or take extra precautions, when accessing to protect your privacy."}],margin:"none",readOnly:s})]}),b.jsx(H.DialogActions,{sx:{px:0},children:s?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(nv,{size:"small",loading:u,type:"button",onClick:()=>{m(!0),y()},children:i?"Update Citation":"Add New Citation"})]})})]})})]})},X2=t=>{const{gap:e=1,alignItems:n="center",...r}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"row",gap:e,alignItems:n,...r})},KQ=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,disableFileUpload:i=!1,modifyCitation:s,readOnly:a=!1,showCloseBtn:l=!1}=t,u=X.useRef(null),[f,p]=X.useState(!1),[m,g]=X.useState(!1),[v,y]=X.useState({type:"Attachment",title:"",file:void 0,fileName:""});return X.useEffect(()=>{s&&y({...s,type:"Attachment",file:void 0})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),l&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(sp,{})})]}),b.jsx(jt.Formik,{innerRef:u,enableReinitialize:!0,initialValues:v,validationSchema:uv().shape({title:wa().required("Title is required"),fileName:wa().required("A file is required")}),validateOnBlur:m,validateOnChange:m,onSubmit:async x=>{p(!0),n(x).catch(S=>{throw p(!1),S}).finally(()=>p(!1))},children:({values:x,setFieldValue:S,handleSubmit:k})=>{var T;return X.useEffect(()=>{var C,O;(C=x.file)!=null&&C.name&&S("fileName",(O=x.file)==null?void 0:O.name)},[(T=x.file)==null?void 0:T.name]),b.jsxs(jt.Form,{autoComplete:"off",children:[b.jsx(ms,{name:"title",disabled:f,required:!0,margin:"none",readOnly:a}),b.jsxs(H.Box,{marginTop:i||a?0:1,children:[b.jsxs(X2,{alignItems:"flex-start",children:[!i&&!a&&b.jsx(oM,{name:"file",errorMode:"hidden"}),b.jsx(ms,{readOnly:!0,name:"fileName",label:a||i?"File Name":""})]}),b.jsx(yr,{name:"fileName"})]}),b.jsx(H.DialogActions,{sx:{px:0},children:a?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(nv,{size:"small",loading:f,type:"button",onClick:()=>{g(!0),k()},children:s?"Update Attachment":"Upload Attachment"})]})})]})}})]})},$u=t=>{const{open:e=!1,onClose:n,title:r,children:o,actions:i,closeBtnLabel:s,closeButtonPosition:a,closeButtonProps:l={},disableDismiss:u=!1,...f}=t;if(!e)return null;const p=a==="bottom"||a==="top-and-bottom",m=a==="top"||a==="top-and-bottom",g=()=>{if(s&&p)return b.jsx(H.Button,{className:"MBv2_Modal_Close",onClick:t.onClose,...l,children:s})},v=()=>{if(i)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",width:"100%",gap:"0.25rem",children:[b.jsx(H.Box,{children:g()}),b.jsxs(H.Box,{display:"flex",gap:".25rem",children:[...i]})]})});if(s&&p)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsx(H.Box,{children:g()})})};return b.jsxs(H.Dialog,{className:"MBv2_Modal",open:e,onClose:()=>{u||n==null||n()},...f,children:[typeof r=="string"?b.jsx(H.DialogTitle,{className:"MBv2_Modal_Title",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[r,m&&b.jsx(H.IconButton,{"data-testid":"modal-header-close-btn",onClick:n,children:b.jsx(sp,{})})]})}):r,o&&(typeof o=="string"?b.jsx(H.DialogContent,{className:"MBv2_Modal_Content",children:b.jsx(H.DialogContentText,{className:"MBv2_Modal_Content_Text",children:o})}):o),v()]})};function YQ(t){return qe("MuiAlert",t)}const Z2=He("MuiAlert",["root","action","icon","message","filled","colorSuccess","colorInfo","colorWarning","colorError","filledSuccess","filledInfo","filledWarning","filledError","outlined","outlinedSuccess","outlinedInfo","outlinedWarning","outlinedError","standard","standardSuccess","standardInfo","standardWarning","standardError"]),GQ=Pe(b.jsx("path",{d:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"}),"SuccessOutlined"),JQ=Pe(b.jsx("path",{d:"M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z"}),"ReportProblemOutlined"),XQ=Pe(b.jsx("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutline"),ZQ=Pe(b.jsx("path",{d:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z"}),"InfoOutlined"),QQ=Pe(b.jsx("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),eee=t=>{const{variant:e,color:n,severity:r,classes:o}=t,i={root:["root",`color${Ie(n||r)}`,`${e}${Ie(n||r)}`,`${e}`],icon:["icon"],message:["message"],action:["action"]};return Ue(i,YQ,o)},tee=te(cs,{name:"MuiAlert",slot:"Root",overridesResolver:(t,e)=>{const{ownerState:n}=t;return[e.root,e[n.variant],e[`${n.variant}${Ie(n.color||n.severity)}`]]}})(gt(({theme:t})=>{const e=t.palette.mode==="light"?Fs:La,n=t.palette.mode==="light"?La:Fs;return{...t.typography.body2,backgroundColor:"transparent",display:"flex",padding:"6px 16px",variants:[...Object.entries(t.palette).filter(Vn(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"standard"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),backgroundColor:t.vars?t.vars.palette.Alert[`${r}StandardBg`]:n(t.palette[r].light,.9),[`& .${Z2.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Vn(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"outlined"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),border:`1px solid ${(t.vars||t).palette[r].light}`,[`& .${Z2.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Vn(["dark"])).map(([r])=>({props:{colorSeverity:r,variant:"filled"},style:{fontWeight:t.typography.fontWeightMedium,...t.vars?{color:t.vars.palette.Alert[`${r}FilledColor`],backgroundColor:t.vars.palette.Alert[`${r}FilledBg`]}:{backgroundColor:t.palette.mode==="dark"?t.palette[r].dark:t.palette[r].main,color:t.palette.getContrastText(t.palette[r].main)}}}))]}})),nee=te("div",{name:"MuiAlert",slot:"Icon",overridesResolver:(t,e)=>e.icon})({marginRight:12,padding:"7px 0",display:"flex",fontSize:22,opacity:.9}),ree=te("div",{name:"MuiAlert",slot:"Message",overridesResolver:(t,e)=>e.message})({padding:"8px 0",minWidth:0,overflow:"auto"}),oee=te("div",{name:"MuiAlert",slot:"Action",overridesResolver:(t,e)=>e.action})({display:"flex",alignItems:"flex-start",padding:"4px 0 0 16px",marginLeft:"auto",marginRight:-8}),Q2={success:b.jsx(GQ,{fontSize:"inherit"}),warning:b.jsx(JQ,{fontSize:"inherit"}),error:b.jsx(XQ,{fontSize:"inherit"}),info:b.jsx(ZQ,{fontSize:"inherit"})},eI=D.forwardRef(function(e,n){const r=ht({props:e,name:"MuiAlert"}),{action:o,children:i,className:s,closeText:a="Close",color:l,components:u={},componentsProps:f={},icon:p,iconMapping:m=Q2,onClose:g,role:v="alert",severity:y="success",slotProps:x={},slots:S={},variant:k="standard",...T}=r,C={...r,color:l,severity:y,variant:k,colorSeverity:l||y},O=eee(C),A={slots:{closeButton:u.CloseButton,closeIcon:u.CloseIcon,...S},slotProps:{...f,...x}},[N,$]=Ot("root",{ref:n,shouldForwardComponentProp:!0,className:ge(O.root,s),elementType:tee,externalForwardedProps:{...A,...T},ownerState:C,additionalProps:{role:v,elevation:0}}),[z,M]=Ot("icon",{className:O.icon,elementType:nee,externalForwardedProps:A,ownerState:C}),[B,V]=Ot("message",{className:O.message,elementType:ree,externalForwardedProps:A,ownerState:C}),[F,P]=Ot("action",{className:O.action,elementType:oee,externalForwardedProps:A,ownerState:C}),[I,_]=Ot("closeButton",{elementType:Ml,externalForwardedProps:A,ownerState:C}),[R,U]=Ot("closeIcon",{elementType:QQ,externalForwardedProps:A,ownerState:C});return b.jsxs(N,{...$,children:[p!==!1?b.jsx(z,{...M,children:p||m[y]||Q2[y]}):null,b.jsx(B,{...V,children:i}),o!=null?b.jsx(F,{...P,children:o}):null,o==null&&g?b.jsx(F,{...P,children:b.jsx(I,{size:"small","aria-label":a,title:a,color:"inherit",onClick:g,..._,children:b.jsx(R,{fontSize:"small",...U})})}):null]})});process.env.NODE_ENV!=="production"&&(eI.propTypes={action:c.node,children:c.node,classes:c.object,className:c.string,closeText:c.string,color:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),components:c.shape({CloseButton:c.elementType,CloseIcon:c.elementType}),componentsProps:c.shape({closeButton:c.object,closeIcon:c.object}),icon:c.node,iconMapping:c.shape({error:c.node,info:c.node,success:c.node,warning:c.node}),onClose:c.func,role:c.string,severity:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),slotProps:c.shape({action:c.oneOfType([c.func,c.object]),closeButton:c.oneOfType([c.func,c.object]),closeIcon:c.oneOfType([c.func,c.object]),icon:c.oneOfType([c.func,c.object]),message:c.oneOfType([c.func,c.object]),root:c.oneOfType([c.func,c.object])}),slots:c.shape({action:c.elementType,closeButton:c.elementType,closeIcon:c.elementType,icon:c.elementType,message:c.elementType,root:c.elementType}),sx:c.oneOfType([c.arrayOf(c.oneOfType([c.func,c.object,c.bool])),c.func,c.object]),variant:c.oneOfType([c.oneOf(["filled","outlined","standard"]),c.string])});const Lu=t=>{var g;const{noIcon:e=!1,children:n,severity:r="success",variant:o="leftBorder",sx:i,title:s,...a}=t,{palette:l}=H.useTheme(),u=e?{icon:!1}:{},f=o==="leftBorder"?"standard":o,p=o==="leftBorder"?{...i,borderLeft:`4px solid ${(g=l[r])==null?void 0:g.main}`}:i,m=s?{icon:{sx:{mt:"6px"}}}:{};return b.jsxs(eI,{severity:r,variant:f,sx:p,slotProps:m,...u,...a,children:[s&&b.jsx(H.Typography,{variant:"h3",children:s}),n]})},tI=t=>b.jsx(Lu,{severity:"error",...t}),nI=t=>b.jsx(Lu,{severity:"success",...t}),iee=t=>{const{alert:e,setAlert:n}=t,r=()=>n(void 0);return b.jsxs(b.Fragment,{children:[(e==null?void 0:e.type)==="Error"&&b.jsx(tI,{"data-testid":"citation-menu-error",onClose:r,title:e.title,children:e.message.toString()}),(e==null?void 0:e.type)==="Success"&&b.jsx(nI,{"data-testid":"citation-menu-success",onClose:r,children:e.message})]})};function rI({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:a,onCancel:l,initialSelectedIds:u=[],onContentChange:f,onError:p=()=>{},renderAsSelectablePopup:m=!1,addlActions:g,canLaunchUrl:v,readOnly:y}){const[x,S]=X.useState("Insert Citation/Attachment(s)"),[k,T]=X.useState(u),[C,O]=X.useState(void 0),[A,N]=X.useState(void 0),$=G=>{N(void 0),S(G)},[z,M]=X.useState(0);X.useEffect(()=>{f==null||f()},[x,A,f]);const B=(G=!1)=>{(!m||G)&&M(ee=>ee+1)},V=(G,ee)=>{var de;const ue=typeof((de=ee.response)==null?void 0:de.data)=="string"&&ee.response.data,oe=typeof ee.message=="string"&&ee.message;N({type:"Error",title:G,message:ue??oe}),p(ee)},F=G=>N({type:"Success",title:"",message:G}),P=async G=>{if(x==="Insert Citation/Attachment(s)")throw Error("onSave called with invalid state");if(x==="Edit Citation"||x==="Edit Attachment"){if(G.id===void 0)throw Error("Failed to update citation. Citation is missing id");await(n==null?void 0:n(G).then(()=>{$("Insert Citation/Attachment(s)"),B()}).catch(ue=>{V("Failed to update",ue)}))}else await(e==null?void 0:e(G).then(ue=>{T([...k,ue.id]),$("Insert Citation/Attachment(s)"),B()}).catch(ue=>{V("Failed to create",ue)}))},I=r&&(async G=>r(G).then(()=>{B(!0),T(k.filter(ee=>ee!==G)),F("Successfully deleted")}).catch(ee=>V("Failed to delete",ee))),_=(G,ee)=>{o(G.id).then(ue=>{O(ue),$(ee)}).catch(ue=>{V("Failed to load",ue)})},R=i&&(async G=>i(G).catch(ee=>{V(`Failed to download ${G.fileName}`,ee)})),U=s&&(async G=>s(G).catch(ee=>{V(`Failed to view ${G.fileName}`,ee)})),K=b.jsx(fQ,{refreshKey:z,getCitationsPaginated:G=>t(G).then(ee=>(f==null||f(),ee)),onCancel:l,onNewCitation:()=>{O(void 0),$("Add Citation")},onNewAttachment:()=>{O(void 0),$("Add Attachment")},onEditCitation:G=>_(G,y?"View Citation":"Edit Citation"),onEditAttachment:G=>_(G,y?"View Attachment":"Edit Attachment"),onDeleteCitation:I,onDownloadAttachment:R,onViewAttachment:U,onSelect:a,setSelectedIds:T,selectedIds:k,onError:p,condenseTable:m,canSelect:m,title:m&&!y?x:"Attachments & Citations",addlActions:g,canCreate:!!e,canEdit:!!n,canDelete:!!I,canLaunchUrl:v,readOnly:y,showCloseBtn:m}),j=b.jsx(qQ,{modifyCitation:C,onSave:P,onCancel:()=>$("Insert Citation/Attachment(s)"),onClose:l,title:x,readOnly:x==="View Citation",showCloseBtn:m}),Y=b.jsx(KQ,{onSave:P,onCancel:()=>$("Insert Citation/Attachment(s)"),onClose:l,modifyCitation:C,disableFileUpload:x==="Edit Attachment",title:x,readOnly:x==="View Attachment",showCloseBtn:m}),re=b.jsx(iee,{alert:A,setAlert:N}),ce=x==="Add Citation"||x==="Edit Citation"||x==="View Citation",pe=x==="Add Attachment"||x==="Edit Attachment"||x==="View Attachment";if(m){let G=null;return!m||x==="Insert Citation/Attachment(s)"?G=K:ce?G=j:pe&&(G=Y),b.jsxs(H.Box,{width:"500px",children:[re,b.jsx(H.Box,{paddingTop:"8px",children:G})]})}return b.jsxs(H.Box,{width:"100%",children:[x==="Insert Citation/Attachment(s)"&&re,b.jsx(H.Box,{paddingTop:"8px",children:K}),b.jsx($u,{open:ce||pe,children:b.jsxs(H.Box,{padding:"10px 20px",minWidth:"400px","data-testid":"citation-form-modal",children:[re,ce?j:Y]})})]})}function oI({...t}){return b.jsx(rI,{renderAsSelectablePopup:!0,...t})}const see=H.styled("div",{name:"CitationBubbleMenu",slot:"content",overridesResolver:(t,e)=>e.content})(({theme:t})=>{const e=t.palette.mode==="dark";return{padding:t.spacing(1.5,2,.5),backgroundColor:e?"#101010":"#f9f9f9",border:`1px solid ${t.palette.grey[e?700:200]}`}});function aee({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,canLaunchUrl:a,readOnly:l,...u}){const f=wt();if(f&&!("citationBubbleMenuHandler"in(f==null?void 0:f.storage)))throw new Error("You must add the CitationBubbleMenuHandler extension to the useEditor `extensions` array in order to use this component!");const p=f==null?void 0:f.storage.citationBubbleMenuHandler,m=p.isOpen,g=p.selectedIds,v=p.selectedNodePos,y=T=>{f&&(T.length===0?f.commands.deleteCitation(v):g.length===0?f.commands.insertCitation({ids:T}):f.commands.updateCitation({ids:T},v))},x=T=>{y(T),f==null||f.commands.closeCitationBubbleMenu()},S=()=>{y(g),f==null||f.commands.closeCitationBubbleMenu()},k=X.useCallback(()=>{requestAnimationFrame(()=>{f!=null&&f.view&&f.view.dispatch(f.view.state.tr)})},[f]);return f?b.jsx(py,{editor:f,open:m,...p.bubbleMenuOptions,...u,children:b.jsx(see,{children:b.jsx(oI,{getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:x,onCancel:S,initialSelectedIds:g,onContentChange:k,canLaunchUrl:a,readOnly:l})})}):null}const lee=()=>ln.create({name:"citationBubbleMenuHandler",addStorage(){return{isOpen:!1,selectedIds:[],bubbleMenuOptions:void 0,selectedNodePos:0}},addCommands(){return{openCitationBubbleMenu:(t={},e)=>({editor:n,dispatch:r})=>{var a;const{doc:o}=n.state,i=o.nodeAt(e??0),s=((a=i==null?void 0:i.attrs)==null?void 0:a.ids)??[];return r&&(this.storage.isOpen=!0,this.storage.selectedIds=s,this.storage.bubbleMenuOptions=t,this.storage.selectedNodePos=e??0),!0},closeCitationBubbleMenu:()=>({commands:t,dispatch:e})=>this.storage.isOpen?(t.focus(),e&&(this.storage.isOpen=!1,this.storage.selectedIds=[],this.storage.selectedNodePos=0),!0):!1}},onSelectionUpdate(){this.storage.isOpen&&!this.editor.isActive("citation")&&this.editor.commands.closeCitationBubbleMenu()},addKeyboardShortcuts(){return{"Mod-Shift-c":()=>(this.editor.commands.openCitationBubbleMenu(),!0)}}});function cee(t){const e=wt(),n=X.useRef(null);return b.jsx(St,{buttonRef:n,tooltipLabel:"Insert Citation/Attachment",tooltipShortcutKeys:["mod","Shift","C"],disabled:!(e!=null&&e.isEditable),onClick:()=>e==null?void 0:e.commands.openCitationBubbleMenu({anchorEl:n.current,placement:"bottom"}),...t,children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:"4px",alignItems:"center",children:[b.jsx(wU,{fontSize:"small"}),b.jsx(H.Typography,{variant:"body2",children:"Insert Citation/Attachment"})]})})}const iI=X.createContext(void 0),sI=()=>{const t=X.useContext(iI);if(!t)throw new Error("useSync must be used inside CitationFieldProvider");return t},uee=({node:t,HTMLAttributes:e,selected:n,extension:r,updateAttributes:o,deleteNode:i})=>{const s=t.attrs.ids||[],{citations:a,isLoaded:l}=sI(),[u,f]=X.useState(s?String(s):""),[p,m]=X.useState([]),g=r.options.citationMaxLength;if(X.useEffect(()=>{if(!l)return;const v=a.filter(S=>s.includes(S.id)),y=v.map(S=>kl.truncate(S.title,{length:g,omission:"..."})).join(", ");f(y),m(v);const x=v.map(S=>S.id);x.length===0?setTimeout(i,0):x.length!==s.length&&setTimeout(()=>o({ids:v.map(S=>S.id)}),0)},[a,s,l]),p.length!==0)return b.jsx(wb,{as:"span",...e,"data-testid":"citation-node-component",children:b.jsx(H.Tooltip,{title:b.jsx(H.Box,{className:"citation-tooltip",children:p.map((v,y)=>{var S;const x=[v.source,v.title,v.fileName,v.url,(S=v.accessedAt)==null?void 0:S.slice(0,10),v.classification];return b.jsxs(H.Typography,{variant:"subtitle2",children:[x.filter(Boolean).join(" | "),y<p.length-1&&b.jsx(H.Divider,{className:"citation-tooltip-divider"})]},v.id)})}),slotProps:{tooltip:{sx:{maxWidth:500}}},children:b.jsx("a",{href:"#",onClick:v=>{v.preventDefault(),v.stopPropagation()},className:n?"selected-citation-link":"citation-link",children:u})})})},dee=tn.create({name:"citation",group:"inline",inline:!0,atom:!0,selectable:!0,addAttributes(){return{ids:{default:[],parseHTML:t=>{const e=t.getAttribute("ids");return e?e.split(",").map(n=>parseInt(n.trim(),10)).filter(n=>!isNaN(n)):[]},renderHTML:t=>({ids:Array.isArray(t.ids)?t.ids.join(","):""})}}},parseHTML(){return[{tag:"citation"}]},renderHTML({HTMLAttributes:t}){return["citation",xt(t)]},addNodeView(){return Sb(uee)},addProseMirrorPlugins(){return[new en({props:{handleClickOn:(t,e,n,r,o,i)=>n&&n.type.name==="citation"?(this.editor.commands.openCitationBubbleMenu({},r),!0):!1}})]},addCommands(){return{insertCitation:t=>({commands:e})=>e.insertContent({type:"citation",attrs:t}),updateCitation:(t,e)=>({state:n,dispatch:r,tr:o})=>{const i=n.doc.nodeAt(e);return!i||i.type.name!=="citation"?!1:(o.setNodeMarkup(e,void 0,t),r&&r(o),!0)},deleteCitation:t=>({tr:e,dispatch:n})=>{if(typeof t!="number")return!1;const r=t,o=t+1;return n&&n(e.delete(r,o)),!0}}}}),aI=t=>b.jsx(nM,{name:t.name,label:"Not Applicable",errorMode:"hidden"}),fee=t=>{const{name:e,label:n=$n(e),hideLabel:r=!1,required:o=!1,readOnly:i,margin:s="dense",citationMaxLength:a=24,getCitationsPaginated:l,onCreateCitation:u,onUpdateCitation:f,onDeleteCitation:p,getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y=()=>{},placeholder:x="Start typing here...",notApplicableName:S,errorMode:k="normal",canLaunchUrl:T}=t,C=[ET,C2.configure({placeholder:x}),lee(),dee.configure({citationMaxLength:a})],[O,A,N]=jt.useField({name:e}),{setValue:$}=N,{value:z}=O,{addUpdateCitation:M,deleteCitation:B,batchUpdate:V,citations:F}=sI();X.useEffect(()=>{var pe;const re=(pe=P==null?void 0:P.current)==null?void 0:pe.editor;if(!re)return;re.getHTML()!==z&&setTimeout(()=>{re.commands.setContent(z)},0)},[z]);const P=X.useRef(null),I={normal:{marginTop:"16px",marginBottom:"8px"},dense:{marginTop:"8px",marginBottom:"4px"},none:{margin:0}},_=(re=void 0)=>{var G,ee;const ce=((ee=(G=P.current)==null?void 0:G.editor)==null?void 0:ee.getHTML())??"",pe=!ce.replace(/<\/?p>|<br>/g,"").trim();$(pe?"":ce,re)},R=X.useMemo(()=>kl.debounce(()=>_(!1),500),[$]),U=Wa(),{showDiff:K,previousSnapshot:j}=ja(),Y=i??U;if(K){const re=(j==null?void 0:j[e])??"",ce=z,pe=/<citation\s+ids="([^"]*)"><\/citation>/g,G=(oe,ne)=>{const de=ne.split(",").map(Number);return`<sup>${F.filter(ye=>de.includes(ye.id)).map(ye=>ye.title)}</sup>`},ee=re.replace(pe,G),ue=ce.replace(pe,G);return b.jsx(Tl,{label:n,value:ue,showDiff:!0,diffSnapshot:ee,useHtmlDiff:!0})}return b.jsxs(H.Box,{id:`citation-field_${e}`,sx:{"& .ProseMirror":{"& h1, & h2, & h3, & h4, & h5, & h6":{scrollMarginTop:Y?0:50}},".MuiTiptap-RichTextContent-readonly ":{padding:0}},...I[s],display:"flex",flexDirection:"column",width:"100%",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[!r&&b.jsx(H.InputLabel,{htmlFor:`citation-field_${e}`,required:o,children:n}),S&&b.jsx(aI,{name:S})]}),b.jsx(KO,{ref:P,extensions:C,content:z,editable:!Y,renderControls:Y?void 0:()=>b.jsx(Qy,{children:b.jsx(cee,{})}),onBlur:()=>_(),onUpdate:R,RichTextFieldProps:{variant:Y?"standard":"outlined",MenuBarProps:{hide:Y}},children:()=>b.jsx(aee,{getCitationsPaginated:re=>l(re).then(ce=>(V(ce.data),ce)),onCreateCitation:u&&(re=>u(re).then(ce=>(M(ce),ce))),onUpdateCitation:f&&(re=>f(re).then(ce=>(M(ce),ce))),onDeleteCitation:p&&(re=>p(re).then(()=>B(re))),getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y,canLaunchUrl:T,readOnly:Y})}),b.jsx(yr,{name:e,id:`${e}-err`,errorMode:k})]})},pee=t=>{const{name:e="submit"}=t;return b.jsx(lo,{name:e,type:"submit",...t})},hee=t=>{const{label:e="Return to Top",icon:n=ap,scrollThresholdPx:r=100}=t,o=H.useScrollTrigger({threshold:r}),i=X.useCallback(()=>{window.scrollTo({top:0,behavior:"smooth"})},[]);return b.jsx(H.Zoom,{in:o,children:b.jsx(H.Box,{sx:{position:"fixed",bottom:32,right:32,zIndex:1},children:b.jsxs(H.Fab,{onClick:i,color:"primary",size:"small",variant:"extended","aria-label":"Scroll back to top",children:[b.jsx(n,{fontSize:"medium"}),e]})})})},lI=t=>{const{label:e,menuOptions:n=[],icon:r}=t,o=bo.useNavigate(),[i,s]=D.useState(null),a=!!i,l=p=>{s(p.currentTarget)},u=()=>{s(null)};if(n.length===0)return null;const f=r&&!e;return b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{startIcon:f?void 0:r,variant:"outlined",color:"inherit",sx:{minWidth:0,...f&&{paddingLeft:"6px",paddingRight:"6px"}},onClick:l,children:f?r:e}),b.jsx(H.Menu,{anchorEl:i,open:a,onClick:u,children:n.map(p=>b.jsxs(H.MenuItem,{...Xl(p,o),children:[p.icon&&b.jsx(H.ListItemIcon,{children:p.icon}),b.jsx(H.ListItemText,{primary:p.label})]},p.label))})]})},mee=()=>{const{values:t,errors:e,status:n}=jt.useFormikContext(),{palette:r}=H.useTheme();return b.jsx(H.Paper,{style:{backgroundColor:r.mode==="dark"?"#303030":"#f0f0f0",margin:"10px 0"},children:b.jsxs(H.List,{children:[b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Values"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(t,null,2)})]}),b.jsx(H.Divider,{variant:"inset",component:"li"}),b.jsxs(H.ListItem,{id:"testing",children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Errors"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(e,null,2)})]}),b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Status"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(n,null,2)})]})]})})},gee=t=>{const{steps:e,orientation:n,inlineLabel:r=n=="vertical",isResponsive:o=!1}=t,{width:i}=I2();let s=!r,a=n;o&&(n&&console.warn("Stepper: Ignoring orientation. isResponsive is set to true, so the orientation is determined automatically based on the window size."),a=i<600?"vertical":"horizontal",a=="vertical"?s=!1:s=!r),n=="vertical"&&!r&&(console.warn("Stepper: ignoring inlineLabel={false}. Must use inline labels when orientation is vertical"),s=!1);const l=["steps","inlineLabel","orientation","isResponsive"],u={alternativeLabel:s,orientation:a,...lr({...t},l)};return b.jsx(H.Stepper,{...u,children:e.map(f=>b.jsx(H.Step,{children:b.jsx(H.StepLabel,{children:f})},f))})},yee=t=>{const{name:e,label:n=$n(e),labelProps:r={fontSize:"1.1em",color:"#808080",fontWeight:"600"},initialState:o,renderFormGroup:i,addButtonContent:s="Add Another",removeButtonContent:a=t.removePosition==="right"?b.jsx(OM,{}):"Remove",variant:l="card",addButtonSx:u,removeButtonSx:f,allowRemoveAll:p=!1,readOnly:m=!1,emptyListMsg:g="None",showDivider:v=!1,removePosition:y="bottom"}=t,[x]=jt.useField({name:e}),{value:S}=x,k=T=>({display:"flex",flexDirection:T==="bottom"?"column":"row",alignItems:T==="bottom"?"flex-start":"center"});return b.jsxs(H.FormControl,{fullWidth:!0,children:[b.jsx(H.Typography,{...r,children:n}),m&&x.value.length===0?b.jsx(H.Typography,{children:g}):b.jsx(jt.FieldArray,{name:e,render:T=>b.jsxs("div",{children:[S.map((C,O)=>b.jsx(X.Fragment,{children:b.jsx(bee,{variant:l,content:b.jsxs(H.Box,{"data-testid":"form-group-container",sx:typeof y=="string"?k(y):{...y},children:[b.jsxs(H.Box,{width:"100%",children:[i(`${e}.${O}`,O),v&&O!==S.length-1&&b.jsx(H.Divider,{"data-testid":"divider"})]}),!m&&S.length>(p?0:1)&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_remove-btn",sx:f,onClick:()=>T.remove(O),children:a})]})})},`${e}-${O}`)),!m&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_add-btn",onClick:()=>T.push(o),sx:u,children:s})]})})]})},bee=({variant:t,content:e})=>{switch(t){case"card":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_card",sx:{padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"elevatedCard":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_elevated-card",elevation:4,sx:{border:"unset",padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"none":return e}},vee=t=>{const{confirmBtnLabel:e,onConfirm:n,confirmButtonProps:r={color:"primary",variant:"contained"},closeBtnLabel:o="Cancel",closeButtonPosition:i="bottom",...s}=t;return b.jsx($u,{actions:[b.jsx(H.Button,{className:"MBv2_ConfirmationModal_ConfirmBtn",onClick:n,...r,children:e})],closeBtnLabel:o,closeButtonPosition:i,...s})},xee=t=>{const{closeBtnLabel:e="OK",closeButtonPosition:n="bottom",closeButtonProps:r={color:"primary",variant:"contained"},...o}=t;return b.jsx($u,{closeBtnLabel:e,closeButtonPosition:n,closeButtonProps:r,...o})},wee=t=>{const{primaryBtnLabel:e,onPrimaryAction:n,primaryActionProps:r={color:"primary",variant:"contained"},secondaryBtnLabel:o,onSecondaryAction:i,secondaryActionProps:s={color:"primary",variant:"outlined"},closeBtnLabel:a="Cancel",closeButtonPosition:l="bottom",...u}=t;return b.jsx($u,{actions:[b.jsx(H.Button,{className:"MBv2_DecisionModal_SecondaryAction",onClick:i,...s,children:o}),b.jsx(H.Button,{className:"MBv2_DecisionModal_PrimaryAction",onClick:n,...r,children:e})],closeBtnLabel:a,closeButtonPosition:l,...u})},See={added:{icon:vU,label:"Added",color:"success"},deleted:{icon:OM,label:"Deleted",color:"error"},modified:{icon:SU,label:"Modified",color:"info"}},cI=t=>{const{beforeData:e,afterData:n,columns:r}=t,[o,i]=X.useState([]),[s,a]=X.useState(0);return X.useMemo(()=>{const l=[];e.sort((m,g)=>m.id-g.id),n.sort((m,g)=>m.id-g.id);let u=0,f=0,p=0;for(;u<e.length&&f<n.length;){const m=e[u],g=n[f];m.id===g.id?(JSON.stringify(m)!=JSON.stringify(g)?l.push({...g,changeType:"modified"}):p++,u++,f++):m.id<g.id?(l.push({...m,changeType:"deleted"}),u++):(l.push({...g,changeType:"added"}),f++)}for(;u<e.length;)l.push({...e[u],changeType:"added"}),u++;for(;f<n.length;)l.push({...n[f],changeType:"added"}),f++;i(l),a(p)},[e,n]),b.jsxs(b.Fragment,{children:[b.jsx(tv,{columns:[{fieldName:"changeType",render:l=>{const u=See[l];return b.jsx(H.Chip,{color:u.color,label:b.jsxs(H.Typography,{children:[b.jsx(Bm,{icon:u.icon}),u.label]})})}},...r],data:o}),s>0&&b.jsx(H.Box,{children:b.jsxs(H.Typography,{fontStyle:"italic",children:["+",s," unmodified rows"]})})]})},Cee=t=>{const{beforeCitations:e,afterCitations:n}=t,{palette:r}=H.useTheme(),o=A2(r);return b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingBottom:"10px",children:b.jsx(H.Typography,{variant:"h2",children:"Attachments & Citations"})}),b.jsx(cI,{columns:o,beforeData:e,afterData:n})]})},Tee=t=>{const{featureMenuOptions:e=[],copyright:n,logo:r,sx:o={},fontColor:i="primary"}=t,{palette:s}=H.useTheme(),a=bo.useNavigate();return b.jsxs(H.Box,{className:"MBv2_Footer",sx:{backgroundColor:s.mode==="dark"?"#222222":"#ededed",padding:"25px 30px",...o},children:[b.jsx(H.Box,{className:"MBv2_Footer_Logo",sx:{display:"flex",gap:2,alignItems:"center",paddingBottom:1},children:typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",justifyContent:"space-between",flexWrap:"wrap",className:"MBv2_Footer_Nav_Links_Container",gap:2,children:[b.jsx(H.Box,{sx:{flexGrow:1},className:"MBv2_Footer_Nav_Links",display:"flex",flexDirection:"row",justifyContent:"flex-start",gap:3,children:e==null?void 0:e.map(l=>b.jsx(H.Link,{"data-testid":l.label,sx:{cursor:"pointer",fontSize:15},color:i,...Xl(l,a),children:l.label},l.label))}),n&&b.jsx(H.Typography,{style:{fontSize:15},"data-testid":"copyright",className:"MBv2_Footer_Copyright",color:i,children:n})]})]})},uI=t=>{const{menuOptionLists:e,anchor:n="left",children:r}=t,{pathname:o}=bo.useLocation(),i=bo.useNavigate(),[s,a]=X.useState(!1),l=(m,g)=>b.jsx(H.MenuList,{children:m.map(v=>b.jsxs(H.MenuItem,{...Xl(v,i,()=>a(!1)),children:[v.icon&&b.jsx(H.ListItemIcon,{children:v.icon}),b.jsx(H.ListItemText,{primary:v.label})]},`mobile-drawer-group-${g}-item-${v.path}`))}),f=(()=>{if(e){const m=e.filter(g=>g&&g.length>0);return m.length===0?null:m.map((g,v)=>b.jsxs(X.Fragment,{children:[l(g,v),v<m.length-1&&b.jsx(H.Divider,{})]},`mobile-drawer-group-${v}`))}return r?b.jsx(H.Box,{role:"presentation",onClick:()=>a(!1),children:r}):null})(),p=f??!1;return X.useEffect(()=>{a(!1)},[o]),p&&b.jsxs(b.Fragment,{children:[b.jsx(H.IconButton,{onClick:()=>a(!0),color:"inherit",title:"Menu",children:b.jsx(_U,{})}),b.jsx(H.Drawer,{"data-testid":"mobile-drawer",anchor:n,open:s,onClose:()=>a(!1),children:b.jsx(H.Box,{sx:{width:300},display:"flex",flexDirection:"column",justifyContent:"space-between",children:b.jsx(H.Box,{display:"flex",justifyContent:"start",flexDirection:"column",children:f})})})]})},dI=t=>{const{env:e,isProd:n}=t;return n?null:b.jsx(H.Paper,{sx:{borderRadius:0,display:"flex",alignItems:"center",justifyContent:"center"},children:b.jsxs(H.Typography,{variant:"h6",color:"error",children:[e," Environment - Test Data Only"]})})},fI=t=>{const{displayName:e,userMenuOptions:n}=t;return b.jsx(lI,{label:e,menuOptions:n,icon:b.jsx(AU,{})})},Ch=t=>{const{menuOptions:e,orientation:n="horizontal",activeTabIdx:r,sx:o=n=="vertical"?{"& .MuiTabs-indicator":{left:0}}:void 0,slotProps:i={indicator:{sx:n=="horizontal"?{height:4}:{width:4}}}}=t,{palette:s}=H.useTheme(),a=bo.useNavigate();return b.jsx(H.Tabs,{orientation:n,value:r??!1,sx:o,slotProps:i,children:e.map((l,u)=>b.jsx(H.Tab,{icon:l.icon,label:l.label,value:u,...Xl(l,a),sx:{alignItems:n=="vertical"?"flex-start":void 0,borderBottom:n=="vertical"?"1px solid":void 0,borderColor:"divider","&.Mui-selected":{backgroundColor:n=="vertical"?s.grey[s.mode=="dark"?800:50]:void 0,color:"inherit"}}},l.label))})},pI=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t;return e.length>0&&b.jsx(H.Paper,{sx:{pl:4,pr:4,borderRadius:0},"data-testid":"navBar",children:b.jsx(Ch,{menuOptions:e,activeTabIdx:n,sx:r})})},hI=t=>{const{onToggle:e}=t,{palette:n}=H.useTheme(),r=n.mode==="dark";return b.jsx(H.IconButton,{onClick:e,color:"inherit",title:"Dark Mode Toggle",children:r?b.jsx(EM,{}):b.jsx(TM,{})})},kee=t=>{const{envInfo:e,headerRef:n,logo:r,featureMenuOptions:o=[],userMenuOptions:i=[],onToggleDarkMode:s,quickLinks:a=[],displayName:l,banner:u,position:f="fixed",children:p,sx:m,navBarSx:g}=t,v=bo.useNavigate(),y=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),{palette:x}=H.useTheme(),{pathname:S}=bo.useLocation(),k=x.mode==="dark",[T,C]=D.useState(void 0);D.useEffect(()=>{const N=o.findIndex($=>$.path&&S.startsWith($.path));C(N>=0?N:void 0)},[S,o]);const O=s&&b.jsx(hI,{onToggle:s}),A=s&&(y||!y&&l)?[{icon:k?b.jsx(EM,{}):b.jsx(TM,{}),label:`Switch to ${k?"Light":"Dark"} mode`,onClick:s},...i]:i;return b.jsxs(H.AppBar,{ref:n,position:f,sx:m,elevation:4,children:[e&&b.jsx(dI,{...e}),u,b.jsxs(H.Toolbar,{sx:{color:"white",display:"flex",justifyContent:"space-between",gap:2},children:[b.jsx(H.Button,{disableRipple:!0,component:bo.Link,to:"/",children:r&&typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px",filter:"brightness(0) invert(1)"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",gap:2,alignItems:"center",children:[!l&&!y&&O,y&&b.jsx(uI,{menuOptionLists:[o,a,A],anchor:"right"}),!y&&b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",gap:0,children:a==null?void 0:a.map((N,$)=>b.jsxs(H.Box,{display:"flex",alignItems:"center",children:[$>0&&b.jsx(H.Typography,{className:"quickLink-divider",color:x.primary.contrastText,children:"|"}),b.jsx(H.Button,{variant:"text",sx:{color:"white"},...Xl(N,v),children:b.jsxs(H.Box,{display:"flex",gap:"3px",alignItems:"center",children:[N.icon,N.label]})})]},N.label))}),p,l&&b.jsx(fI,{displayName:l,userMenuOptions:A})]})]})]}),!y&&b.jsx(pI,{featureMenuOptions:o,activeTabIdx:T,sx:g})]})},Eee=t=>{const{sx:e,menuOptions:n=[]}=t,{pathname:r}=bo.useLocation(),o=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),[i,s]=X.useState(void 0);return X.useEffect(()=>{const a=n.findIndex(l=>l.path&&r.startsWith(l.path))??-1;s(a>=0?a:void 0)},[r,n]),!o&&n.length>0&&b.jsx(H.Box,{sx:e,children:b.jsx(H.Card,{sx:{height:"100%",width:200},children:b.jsx(Ch,{orientation:"vertical",menuOptions:n,activeTabIdx:i})})})},Oee=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t,{palette:o}=H.useTheme();return e.length>0&&b.jsx(Ch,{menuOptions:e,activeTabIdx:n,sx:{margin:"8px",backgroundColor:o.primary.dark,borderRadius:"8px","& .MuiTab-root":{color:o.secondary.light,flexDirection:"row",gap:"2px","& .MuiTab-icon":{marginBottom:"unset"},minHeight:"58px"},"& .MuiTab-root.Mui-selected":{color:o.primary.contrastText,fontSize:"120%"},"& .MuiTabs-indicator":{display:"none"},...r}})},Mee=t=>{const{gap:e=1,...n}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"column",gap:e,...n})},_ee=({children:t,getCitations:e})=>{const[n,r]=X.useState([]),[o,i]=X.useState(!1);X.useEffect(()=>{(async()=>e().then(f=>{r(p=>{const m=new Set(p.map(v=>v.id));return[...p.filter(v=>!m.has(v.id)),...f]}),i(!0)}).catch(f=>{console.error(`Error fetching citations: ${f==null?void 0:f.toString()}`)}))()},[]);const s=X.useCallback(u=>{r(f=>{const p=f.map(v=>{const y=u.find(x=>x.id===v.id);return y||v}),m=new Set(f.map(v=>v.id)),g=u.filter(v=>!m.has(v.id));return[...p,...g]})},[]),a=X.useCallback(u=>{const f=n.findIndex(p=>p.id===u.id);r(f!==-1?p=>{const m=[...p];return m[f]=u,m}:[...n,u])},[n]),l=X.useCallback(u=>r(n.filter(f=>f.id!==u)),[n]);return b.jsx(iI.Provider,{value:{citations:n,isLoaded:o,addUpdateCitation:a,deleteCitation:l,batchUpdate:s},children:t})},Iee=t=>b.jsx(Lu,{severity:"info",...t}),Aee=t=>b.jsx(Lu,{severity:"warning",...t}),mI=t=>{const{crumbInfo:e}=t,n=bo.useNavigate();return b.jsx(H.Breadcrumbs,{"aria-label":"breadcrumb",separator:b.jsx(IU,{color:"primary"}),sx:{marginBottom:2},children:e.map(({label:r,path:o},i)=>o&&i<e.length-1?b.jsx(H.Link,{color:"primary",sx:{cursor:"pointer"},onClick:()=>n(o),children:r},r):b.jsx(H.Typography,{color:"primary",children:r},r))})},Dee=t=>{const{title:e,message:n,type:r,onClose:o,autoHideDuration:i=8e3,variant:s="leftBorder",elevation:a=6}=t,l=Pee(r);return b.jsx(H.Snackbar,{"data-testid":"message-snackbar",anchorOrigin:{vertical:"bottom",horizontal:"right"},open:!0,onClose:u=>{u==null&&o()},autoHideDuration:i,children:b.jsx(Lu,{"data-testid":"message-snackbar-alert",severity:l,iconMapping:{info:gI(r),warning:gI(r)},onClose:o,elevation:a,variant:s,children:n?b.jsxs(b.Fragment,{children:[b.jsx(H.AlertTitle,{"data-testid":"alertTitle",sx:{fontWeight:"bold"},children:e}),n]}):e})})},Pee=t=>t=="logout"?"info":t=="timeout"?"warning":t,gI=t=>{if(t=="timeout")return b.jsx(bU,{});if(t=="logout")return b.jsx(MU,{})},Nee=t=>{$ee(t);const{title:e,createButtonLabel:n="Add Item",showAddButton:r=!1,onAdd:o=()=>alert("Not implemented yet"),breadcrumbs:i=[],children:s,sx:a={},bottomGutter:l=!1}=t,u=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return!e&&(!r||!n)?null:b.jsxs(H.Box,{"data-testid":"MBv2-Page-Header",sx:{...a,...l&&{marginBottom:"4px"}},children:[i.length>0&&b.jsx(mI,{crumbInfo:i}),b.jsxs(H.Box,{className:"MBv2_PageHeader_Header",display:"flex",flexDirection:u?"column":"row",justifyContent:"space-between",alignItems:"center",gap:1,children:[b.jsxs(H.Box,{className:"MBv2_PageHeader_TitleAndCreateBtn",display:"flex",flexDirection:"row",justifyContent:u||!s?"space-between":"start",alignItems:"center",width:"100%",gap:1,children:[typeof e=="string"?b.jsx(H.Typography,{className:"MBv2_PageHeader_Title",variant:"h2",children:e}):e,r&&b.jsxs(lo,{className:"MBv2_PageHeader_CreateBtn",onClick:()=>o(),children:[b.jsx(xU,{style:{marginRight:"0.5rem"}}),n]})]}),s&&b.jsx(H.Box,{width:u?"100%":"50%",children:s})]})]})},$ee=t=>{const{showAddButton:e,onAdd:n,createButtonLabel:r}=t,o="PageHeader component:";e&&!n&&console.warn(`${o} "showAddButton" is true but "onAdd" is not defined.`),e&&!r&&console.warn(`${o} "showAddButton" is true but "createButtonLabel" is not defined`)},Lee=t=>{const{title:e,titleIcon:n,fullWidthIcon:r=!1,children:o,actionLabel:i,action:s,sx:a}=t,l=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return b.jsxs(H.Card,{sx:a||{padding:"30px 40px",display:"flex",flexDirection:"column",gap:"1rem"},children:[n&&b.jsx(H.Box,{className:"MBv2_SingleActionCard_Img",sx:[r?{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",gap:"20px",marginBottom:"10px"}:{display:"inline"}],children:n}),b.jsx(H.Typography,{variant:"h1",display:"inline",fontSize:"calc(20px + .9vw)",className:"MBv2_SingleActionCard_Title",children:e}),o,b.jsx(H.Button,{variant:"contained",color:"primary",onClick:s,fullWidth:l,className:"MBv2_SingleActionCard_ActionButton",children:i})]})};function Bee({...t}){return b.jsx(rI,{onSelectCitations:()=>{},onCancel:()=>{},renderAsSelectablePopup:!1,...t})}const Fee=t=>{const{size:e="small"}=t;let n=`${e}px`;switch(e){case"x-small":n="6px";break;case"small":n="10px";break;case"medium":n="14px";break;case"large":n="18px";break;case"x-large":n="22px";break}return b.jsx(H.Box,{height:n})};De.AlertModal=xee,De.Autocomplete=eM,De.Breadcrumbs=mI,De.Button=lo,De.Checkbox=nM,De.CheckboxGroup=H7,De.CitationField=fee,De.CitationFieldProvider=_ee,De.CitationManager=Bee,De.Column=Mee,De.ConfirmationModal=vee,De.DarkModeToggle=hI,De.DateField=Fp,De.DateRangeField=pZ,De.DecisionModal=wee,De.Diff=QO,De.DiffCitationTable=Cee,De.DiffProvider=gL,De.DiffTable=cI,De.Drawer=uI,De.DynamicAutocomplete=z7,De.EnvironmentBanner=dI,De.ErrorAlert=tI,De.FileList=U7,De.FileUpload=oM,De.FloatingNavBar=Oee,De.Footer=Tee,De.FormDebugger=mee,De.Header=kee,De.InfoAlert=Iee,De.LoadingButton=nv,De.LoadingIndicator=ev,De.Location=pU,De.MenuButton=lI,De.Modal=$u,De.MultiAutocomplete=V7,De.NavBar=pI,De.NotApplicableCheckbox=aI,De.PageHeader=Nee,De.PaginatedTable=M2,De.ProfileMenu=fI,De.RadioGroup=CM,De.RangeSlider=hU,De.ReadOnly=Tl,De.ReadOnlyProvider=mL,De.RepeatableFormGroup=yee,De.RichTextField=lQ,De.Row=X2,De.ScrollToTop=hee,De.SearchField=LU,De.Select=mU,De.SelectableCitationManager=oI,De.Sidebar=Eee,De.SingleActionCard=Lee,De.Snackbar=Dee,De.Spacer=Fee,De.Stepper=gee,De.Submit=pee,De.SuccessAlert=nI,De.Switch=gU,De.Table=tv,De.Tabs=Ch,De.TextArea=yU,De.TextField=ms,De.TextIcon=Bm,De.ValidationError=yr,De.WarningAlert=Aee,De.commonTheme=Mn,De.darkTheme=bP,De.lightTheme=yP,De.useDiff=ja,De.useReadOnly=Wa,Object.defineProperty(De,Symbol.toStringTag,{value:"Module"})}));
408
+ `+(a!==s?`result of cast: ${a}`:""))}return i}_cast(e,n){let r=e===void 0?e:this.transforms.reduce((o,i)=>i.call(this,o,e,this,n),e);return r===void 0&&(r=this.getDefault(n)),r}_validate(e,n={},r,o){let{path:i,originalValue:s=e,strict:a=this.spec.strict}=n,l=e;a||(l=this._cast(l,Object.assign({assert:!1},n)));let u=[];for(let f of Object.values(this.internalTests))f&&u.push(f);this.runTests({path:i,value:l,originalValue:s,options:n,tests:u},r,f=>{if(f.length)return o(f,l);this.runTests({path:i,value:l,originalValue:s,options:n,tests:this.tests},r,o)})}runTests(e,n,r){let o=!1,{tests:i,value:s,originalValue:a,path:l,options:u}=e,f=y=>{o||(o=!0,n(y,s))},p=y=>{o||(o=!0,r(y,s))},m=i.length,g=[];if(!m)return p([]);let v={value:s,originalValue:a,path:l,options:u,schema:this};for(let y=0;y<i.length;y++){const x=i[y];x(v,f,function(k){k&&(Array.isArray(k)?g.push(...k):g.push(k)),--m<=0&&p(g)})}}asNestedTest({key:e,index:n,parent:r,parentPath:o,originalParent:i,options:s}){const a=e??n;if(a==null)throw TypeError("Must include `key` or `index` for nested validations");const l=typeof a=="number";let u=r[a];const f=Object.assign({},s,{strict:!0,parent:r,value:u,originalValue:i[a],key:void 0,[l?"index":"key"]:a,path:l||a.includes(".")?`${o||""}[${l?a:`"${a}"`}]`:(o?`${o}.`:"")+e});return(p,m,g)=>this.resolve(f)._validate(u,f,m,g)}validate(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return new Promise((s,a)=>o._validate(e,n,(l,u)=>{pr.isError(l)&&(l.value=u),a(l)},(l,u)=>{l.length?a(new pr(l,u,void 0,void 0,i)):s(u)}))}validateSync(e,n){var r;let o=this.resolve(Object.assign({},n,{value:e})),i,s=(r=n==null?void 0:n.disableStackTrace)!=null?r:o.spec.disableStackTrace;return o._validate(e,Object.assign({},n,{sync:!0}),(a,l)=>{throw pr.isError(a)&&(a.value=l),a},(a,l)=>{if(a.length)throw new pr(a,e,void 0,void 0,s);i=l}),i}isValid(e,n){return this.validate(e,n).then(()=>!0,r=>{if(pr.isError(r))return!1;throw r})}isValidSync(e,n){try{return this.validateSync(e,n),!0}catch(r){if(pr.isError(r))return!1;throw r}}_getDefault(e){let n=this.spec.default;return n==null?n:typeof n=="function"?n.call(this,e):Ll(n)}getDefault(e){return this.resolve(e||{})._getDefault(e)}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){return this.clone({strict:e})}nullability(e,n){const r=this.clone({nullable:e});return r.internalTests.nullable=$l({message:n,name:"nullable",test(o){return o===null?this.schema.spec.nullable:!0}}),r}optionality(e,n){const r=this.clone({optional:e});return r.internalTests.optionality=$l({message:n,name:"optionality",test(o){return o===void 0?this.schema.spec.optional:!0}}),r}optional(){return this.optionality(!0)}defined(e=Qo.defined){return this.optionality(!1,e)}nullable(){return this.nullability(!0)}nonNullable(e=Qo.notNull){return this.nullability(!1,e)}required(e=Qo.required){return this.clone().withMutation(n=>n.nonNullable(e).defined(e))}notRequired(){return this.clone().withMutation(e=>e.nullable().optional())}transform(e){let n=this.clone();return n.transforms.push(e),n}test(...e){let n;if(e.length===1?typeof e[0]=="function"?n={test:e[0]}:n=e[0]:e.length===2?n={name:e[0],test:e[1]}:n={name:e[0],message:e[1],test:e[2]},n.message===void 0&&(n.message=Qo.default),typeof n.test!="function")throw new TypeError("`test` is a required parameters");let r=this.clone(),o=$l(n),i=n.exclusive||n.name&&r.exclusiveTests[n.name]===!0;if(n.exclusive&&!n.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return n.name&&(r.exclusiveTests[n.name]=!!n.exclusive),r.tests=r.tests.filter(s=>!(s.OPTIONS.name===n.name&&(i||s.OPTIONS.test===o.OPTIONS.test))),r.tests.push(o),r}when(e,n){!Array.isArray(e)&&typeof e!="string"&&(n=e,e=".");let r=this.clone(),o=L2(e).map(i=>new va(i));return o.forEach(i=>{i.isSibling&&r.deps.push(i.key)}),r.conditions.push(typeof n=="function"?new vh(o,n):vh.fromOptions(o,n)),r}typeError(e){let n=this.clone();return n.internalTests.typeError=$l({message:e,name:"typeError",skipAbsent:!0,test(r){return this.schema._typeCheck(r)?!0:this.createError({params:{type:this.schema.type}})}}),n}oneOf(e,n=Qo.oneOf){let r=this.clone();return e.forEach(o=>{r._whitelist.add(o),r._blacklist.delete(o)}),r.internalTests.whiteList=$l({message:n,name:"oneOf",skipAbsent:!0,test(o){let i=this.schema._whitelist,s=i.resolveAll(this.resolve);return s.includes(o)?!0:this.createError({params:{values:Array.from(i).join(", "),resolved:s}})}}),r}notOneOf(e,n=Qo.notOneOf){let r=this.clone();return e.forEach(o=>{r._blacklist.add(o),r._whitelist.delete(o)}),r.internalTests.blacklist=$l({message:n,name:"notOneOf",test(o){let i=this.schema._blacklist,s=i.resolveAll(this.resolve);return s.includes(o)?this.createError({params:{values:Array.from(i).join(", "),resolved:s}}):!0}}),r}strip(e=!0){let n=this.clone();return n.spec.strip=e,n}describe(e){const n=(e?this.resolve(e):this).clone(),{label:r,meta:o,optional:i,nullable:s}=n.spec;return{meta:o,label:r,optional:i,nullable:s,default:n.getDefault(e),type:n.type,oneOf:n._whitelist.describe(),notOneOf:n._blacklist.describe(),tests:n.tests.filter((l,u,f)=>f.findIndex(p=>p.OPTIONS.name===l.OPTIONS.name)===u).map(l=>{const u=l.OPTIONS.params&&e?V2(Object.assign({},l.OPTIONS.params),e):l.OPTIONS.params;return{name:l.OPTIONS.name,params:u}})}}get"~standard"(){const e=this;return{version:1,vendor:"yup",async validate(r){try{return{value:await e.validate(r,{abortEarly:!1})}}catch(o){if(o instanceof pr)return{issues:W2(o)};throw o}}}}}ei.prototype.__isYupSchema__=!0;for(const t of["validate","validateSync"])ei.prototype[`${t}At`]=function(e,n,r={}){const{parent:o,parentPath:i,schema:s}=OQ(this,e,n,r.context);return s[t](o&&o[i],Object.assign({},r,{parent:o,path:e}))};for(const t of["equals","is"])ei.prototype[t]=ei.prototype.oneOf;for(const t of["not","nope"])ei.prototype[t]=ei.prototype.notOneOf;const IQ=/^(\d{4}|[+-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,.](\d{1,}))?)?(?:(Z)|([+-])(\d{2})(?::?(\d{2}))?)?)?$/;function AQ(t){const e=lv(t);if(!e)return Date.parse?Date.parse(t):Number.NaN;if(e.z===void 0&&e.plusMinus===void 0)return new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond).valueOf();let n=0;return e.z!=="Z"&&e.plusMinus!==void 0&&(n=e.hourOffset*60+e.minuteOffset,e.plusMinus==="+"&&(n=0-n)),Date.UTC(e.year,e.month,e.day,e.hour,e.minute+n,e.second,e.millisecond)}function lv(t){var e,n;const r=IQ.exec(t);return r?{year:_i(r[1]),month:_i(r[2],1)-1,day:_i(r[3],1),hour:_i(r[4]),minute:_i(r[5]),second:_i(r[6]),millisecond:r[7]?_i(r[7].substring(0,3)):0,precision:(e=(n=r[7])==null?void 0:n.length)!=null?e:void 0,z:r[8]||void 0,plusMinus:r[9]||void 0,hourOffset:_i(r[10]),minuteOffset:_i(r[11])}:null}function _i(t,e=0){return Number(t)||e}let DQ=/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,PQ=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,NQ=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,$Q="^\\d{4}-\\d{2}-\\d{2}",LQ="\\d{2}:\\d{2}:\\d{2}",BQ="(([+-]\\d{2}(:?\\d{2})?)|Z)",FQ=new RegExp(`${$Q}T${LQ}(\\.\\d+)?${BQ}$`),RQ=t=>xa(t)||t===t.trim(),zQ={}.toString();function wa(){return new j2}class j2 extends ei{constructor(){super({type:"string",check(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}}),this.withMutation(()=>{this.transform((e,n)=>{if(!this.spec.coerce||this.isType(e)||Array.isArray(e))return e;const r=e!=null&&e.toString?e.toString():e;return r===zQ?e:r})})}required(e){return super.required(e).withMutation(n=>n.test({message:e||Qo.required,name:"required",skipAbsent:!0,test:r=>!!r.length}))}notRequired(){return super.notRequired().withMutation(e=>(e.tests=e.tests.filter(n=>n.OPTIONS.name!=="required"),e))}length(e,n=Tr.length){return this.test({message:n,name:"length",exclusive:!0,params:{length:e},skipAbsent:!0,test(r){return r.length===this.resolve(e)}})}min(e,n=Tr.min){return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(r){return r.length>=this.resolve(e)}})}max(e,n=Tr.max){return this.test({name:"max",exclusive:!0,message:n,params:{max:e},skipAbsent:!0,test(r){return r.length<=this.resolve(e)}})}matches(e,n){let r=!1,o,i;return n&&(typeof n=="object"?{excludeEmptyString:r=!1,message:o,name:i}=n:o=n),this.test({name:i||"matches",message:o||Tr.matches,params:{regex:e},skipAbsent:!0,test:s=>s===""&&r||s.search(e)!==-1})}email(e=Tr.email){return this.matches(DQ,{name:"email",message:e,excludeEmptyString:!0})}url(e=Tr.url){return this.matches(PQ,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=Tr.uuid){return this.matches(NQ,{name:"uuid",message:e,excludeEmptyString:!1})}datetime(e){let n="",r,o;return e&&(typeof e=="object"?{message:n="",allowOffset:r=!1,precision:o=void 0}=e:n=e),this.matches(FQ,{name:"datetime",message:n||Tr.datetime,excludeEmptyString:!0}).test({name:"datetime_offset",message:n||Tr.datetime_offset,params:{allowOffset:r},skipAbsent:!0,test:i=>{if(!i||r)return!0;const s=lv(i);return s?!!s.z:!1}}).test({name:"datetime_precision",message:n||Tr.datetime_precision,params:{precision:o},skipAbsent:!0,test:i=>{if(!i||o==null)return!0;const s=lv(i);return s?s.precision===o:!1}})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=Tr.trim){return this.transform(n=>n!=null?n.trim():n).test({message:e,name:"trim",test:RQ})}lowercase(e=Tr.lowercase){return this.transform(n=>xa(n)?n:n.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>xa(n)||n===n.toLowerCase()})}uppercase(e=Tr.uppercase){return this.transform(n=>xa(n)?n:n.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>xa(n)||n===n.toUpperCase()})}}wa.prototype=j2.prototype;let U2=new Date(""),VQ=t=>Object.prototype.toString.call(t)==="[object Date]";function cv(){return new Nu}class Nu extends ei{constructor(){super({type:"date",check(e){return VQ(e)&&!isNaN(e.getTime())}}),this.withMutation(()=>{this.transform((e,n)=>!this.spec.coerce||this.isType(e)||e===null?e:(e=AQ(e),isNaN(e)?Nu.INVALID_DATE:new Date(e)))})}prepareParam(e,n){let r;if(va.isRef(e))r=e;else{let o=this.cast(e);if(!this._typeCheck(o))throw new TypeError(`\`${n}\` must be a Date or a value that can be \`cast()\` to a Date`);r=o}return r}min(e,n=sv.min){let r=this.prepareParam(e,"min");return this.test({message:n,name:"min",exclusive:!0,params:{min:e},skipAbsent:!0,test(o){return o>=this.resolve(r)}})}max(e,n=sv.max){let r=this.prepareParam(e,"max");return this.test({message:n,name:"max",exclusive:!0,params:{max:e},skipAbsent:!0,test(o){return o<=this.resolve(r)}})}}Nu.INVALID_DATE=U2,cv.prototype=Nu.prototype,cv.INVALID_DATE=U2;function HQ(t,e=[]){let n=[],r=new Set,o=new Set(e.map(([s,a])=>`${s}-${a}`));function i(s,a){let l=ba.split(s)[0];r.add(l),o.has(`${a}-${l}`)||n.push([a,l])}for(const s of Object.keys(t)){let a=t[s];r.add(s),va.isRef(a)&&a.isSibling?i(a.path,s):av(a)&&"deps"in a&&a.deps.forEach(l=>i(l,s))}return yQ.array(Array.from(r),n).reverse()}function q2(t,e){let n=1/0;return t.some((r,o)=>{var i;if((i=e.path)!=null&&i.includes(r))return n=o,!0}),n}function K2(t){return(e,n)=>q2(t,e)-q2(t,n)}const WQ=(t,e,n)=>{if(typeof t!="string")return t;let r=t;try{r=JSON.parse(t)}catch{}return n.isType(r)?r:t};function Sh(t){if("fields"in t){const e={};for(const[n,r]of Object.entries(t.fields))e[n]=Sh(r);return t.setFields(e)}if(t.type==="array"){const e=t.optional();return e.innerType&&(e.innerType=Sh(e.innerType)),e}return t.type==="tuple"?t.optional().clone({types:t.spec.types.map(Sh)}):"optional"in t?t.optional():t}const jQ=(t,e)=>{const n=[...ba.normalizePath(e)];if(n.length===1)return n[0]in t;let r=n.pop(),o=ba.getter(ba.join(n),!0)(t);return!!(o&&r in o)};let Y2=t=>Object.prototype.toString.call(t)==="[object Object]";function G2(t,e){let n=Object.keys(t.fields);return Object.keys(e).filter(r=>n.indexOf(r)===-1)}const UQ=K2([]);function uv(t){return new J2(t)}class J2 extends ei{constructor(e){super({type:"object",check(n){return Y2(n)||typeof n=="function"}}),this.fields=Object.create(null),this._sortErrors=UQ,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{e&&this.shape(e)})}_cast(e,n={}){var r;let o=super._cast(e,n);if(o===void 0)return this.getDefault(n);if(!this._typeCheck(o))return o;let i=this.fields,s=(r=n.stripUnknown)!=null?r:this.spec.noUnknown,a=[].concat(this._nodes,Object.keys(o).filter(p=>!this._nodes.includes(p))),l={},u=Object.assign({},n,{parent:l,__validating:n.__validating||!1}),f=!1;for(const p of a){let m=i[p],g=p in o,v=o[p];if(m){let y;u.path=(n.path?`${n.path}.`:"")+p,m=m.resolve({value:v,context:n.context,parent:l});let x=m instanceof ei?m.spec:void 0,S=x==null?void 0:x.strict;if(x!=null&&x.strip){f=f||p in o;continue}y=!n.__validating||!S?m.cast(v,u):v,y!==void 0&&(l[p]=y)}else g&&!s&&(l[p]=v);(g!==p in l||l[p]!==v)&&(f=!0)}return f?l:o}_validate(e,n={},r,o){let{from:i=[],originalValue:s=e,recursive:a=this.spec.recursive}=n;n.from=[{schema:this,value:s},...i],n.__validating=!0,n.originalValue=s,super._validate(e,n,r,(l,u)=>{if(!a||!Y2(u)){o(l,u);return}s=s||u;let f=[];for(let p of this._nodes){let m=this.fields[p];!m||va.isRef(m)||f.push(m.asNestedTest({options:n,key:p,parent:u,parentPath:n.path,originalParent:s}))}this.runTests({tests:f,value:u,originalValue:s,options:n},r,p=>{o(p.sort(this._sortErrors).concat(l),u)})})}clone(e){const n=super.clone(e);return n.fields=Object.assign({},this.fields),n._nodes=this._nodes,n._excludedEdges=this._excludedEdges,n._sortErrors=this._sortErrors,n}concat(e){let n=super.concat(e),r=n.fields;for(let[o,i]of Object.entries(this.fields)){const s=r[o];r[o]=s===void 0?i:s}return n.withMutation(o=>o.setFields(r,[...this._excludedEdges,...e._excludedEdges]))}_getDefault(e){if("default"in this.spec)return super._getDefault(e);if(!this._nodes.length)return;let n={};return this._nodes.forEach(r=>{var o;const i=this.fields[r];let s=e;(o=s)!=null&&o.value&&(s=Object.assign({},s,{parent:s.value,value:s.value[r]})),n[r]=i&&"getDefault"in i?i.getDefault(s):void 0}),n}setFields(e,n){let r=this.clone();return r.fields=e,r._nodes=HQ(e,n),r._sortErrors=K2(Object.keys(e)),n&&(r._excludedEdges=n),r}shape(e,n=[]){return this.clone().withMutation(r=>{let o=r._excludedEdges;return n.length&&(Array.isArray(n[0])||(n=[n]),o=[...r._excludedEdges,...n]),r.setFields(Object.assign(r.fields,e),o)})}partial(){const e={};for(const[n,r]of Object.entries(this.fields))e[n]="optional"in r&&r.optional instanceof Function?r.optional():r;return this.setFields(e)}deepPartial(){return Sh(this)}pick(e){const n={};for(const r of e)this.fields[r]&&(n[r]=this.fields[r]);return this.setFields(n,this._excludedEdges.filter(([r,o])=>e.includes(r)&&e.includes(o)))}omit(e){const n=[];for(const r of Object.keys(this.fields))e.includes(r)||n.push(r);return this.pick(n)}from(e,n,r){let o=ba.getter(e,!0);return this.transform(i=>{if(!i)return i;let s=i;return jQ(i,e)&&(s=Object.assign({},i),r||delete s[e],s[n]=o(i)),s})}json(){return this.transform(WQ)}exact(e){return this.test({name:"exact",exclusive:!0,message:e||bh.exact,test(n){if(n==null)return!0;const r=G2(this.schema,n);return r.length===0||this.createError({params:{properties:r.join(", ")}})}})}stripUnknown(){return this.clone({noUnknown:!0})}noUnknown(e=!0,n=bh.noUnknown){typeof e!="boolean"&&(n=e,e=!0);let r=this.test({name:"noUnknown",exclusive:!0,message:n,test(o){if(o==null)return!0;const i=G2(this.schema,o);return!e||i.length===0||this.createError({params:{unknown:i.join(", ")}})}});return r.spec.noUnknown=e,r}unknown(e=!0,n=bh.noUnknown){return this.noUnknown(!e,n)}transformKeys(e){return this.transform(n=>{if(!n)return n;const r={};for(const o of Object.keys(n))r[e(o)]=n[o];return r})}camelCase(){return this.transformKeys(iv.camelCase)}snakeCase(){return this.transformKeys(iv.snakeCase)}constantCase(){return this.transformKeys(e=>iv.snakeCase(e).toUpperCase())}describe(e){const n=(e?this.resolve(e):this).clone(),r=super.describe(e);r.fields={};for(const[i,s]of Object.entries(n.fields)){var o;let a=e;(o=a)!=null&&o.value&&(a=Object.assign({},a,{parent:a.value,value:a.value[i]})),r.fields[i]=s.describe(a)}return r}}uv.prototype=J2.prototype;const qQ=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,modifyCitation:i,readOnly:s=!1,showCloseBtn:a=!1}=t,l=X.useRef(null),[u,f]=X.useState(!1),[p,m]=X.useState(!1),[g,v]=X.useState({type:"Url",source:"",title:"",accessedAt:null,url:"",classification:""});return X.useEffect(()=>{i&&v({...i,type:"Url"})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),a&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(sp,{})})]}),b.jsx(jt.Formik,{innerRef:l,enableReinitialize:!0,initialValues:g,onSubmit:async y=>{f(!0),n(y).catch(x=>{throw f(!1),x}).finally(()=>f(!1))},validationSchema:uv({source:wa().required("Source is required"),title:wa().required("Title is required"),accessedAt:cv().required("Accessed At is required"),url:wa().required("URL is required"),classification:wa().required("Classification is required")}),validateOnBlur:p,validateOnChange:p,children:({handleSubmit:y})=>b.jsxs(jt.Form,{autoComplete:"off",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"column",gap:s?1:0,children:[b.jsx(ms,{name:"source",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(ms,{name:"title",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(Fp,{name:"accessedAt",disabled:u,required:!0,margin:"none",isDatePicker:!0,readOnly:s}),b.jsx(ms,{name:"url",label:"URL",disabled:u,required:!0,margin:"none",readOnly:s}),b.jsx(CM,{row:!0,name:"classification",required:!0,radios:[{label:"Public Source",value:"Public Source",helperText:"URL is accessible to anyone from any location without special permissions. You can safely access this URL on any computer, including public or shared devices."},{label:"Proprietary Source",value:"Proprietary Source",helperText:"For private, sensitive, or access-controlled content. Use a VPN, or take extra precautions, when accessing to protect your privacy."}],margin:"none",readOnly:s})]}),b.jsx(H.DialogActions,{sx:{px:0},children:s?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(nv,{size:"small",loading:u,type:"button",onClick:()=>{m(!0),y()},children:i?"Update Citation":"Add New Citation"})]})})]})})]})},X2=t=>{const{gap:e=1,alignItems:n="center",...r}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"row",gap:e,alignItems:n,...r})},KQ=t=>{const{title:e,onSave:n,onCancel:r,onClose:o,disableFileUpload:i=!1,modifyCitation:s,readOnly:a=!1,showCloseBtn:l=!1}=t,u=X.useRef(null),[f,p]=X.useState(!1),[m,g]=X.useState(!1),[v,y]=X.useState({type:"Attachment",title:"",file:void 0,fileName:""});return X.useEffect(()=>{s&&y({...s,type:"Attachment",file:void 0})},[]),b.jsxs(b.Fragment,{children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between",children:[b.jsx(H.Typography,{variant:"h6",margin:"10px 0",children:e}),l&&b.jsx(H.IconButton,{onClick:o,children:b.jsx(sp,{})})]}),b.jsx(jt.Formik,{innerRef:u,enableReinitialize:!0,initialValues:v,validationSchema:uv().shape({title:wa().required("Title is required"),fileName:wa().required("A file is required")}),validateOnBlur:m,validateOnChange:m,onSubmit:async x=>{p(!0),n(x).catch(S=>{throw p(!1),S}).finally(()=>p(!1))},children:({values:x,setFieldValue:S,handleSubmit:k})=>{var T;return X.useEffect(()=>{var C,O;(C=x.file)!=null&&C.name&&S("fileName",(O=x.file)==null?void 0:O.name)},[(T=x.file)==null?void 0:T.name]),b.jsxs(jt.Form,{autoComplete:"off",children:[b.jsx(ms,{name:"title",disabled:f,required:!0,margin:"none",readOnly:a}),b.jsxs(H.Box,{marginTop:i||a?0:1,children:[b.jsxs(X2,{alignItems:"flex-start",children:[!i&&!a&&b.jsx(oM,{name:"file",errorMode:"hidden"}),b.jsx(ms,{readOnly:!0,name:"fileName",label:a||i?"File Name":""})]}),b.jsx(yr,{name:"fileName"})]}),b.jsx(H.DialogActions,{sx:{px:0},children:a?b.jsx(H.Button,{onClick:r,size:"small",variant:"contained",children:"Back to Table"}):b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{onClick:r,variant:"outlined",size:"small",children:"Cancel"}),b.jsx(nv,{size:"small",loading:f,type:"button",onClick:()=>{g(!0),k()},children:s?"Update Attachment":"Upload Attachment"})]})})]})}})]})},$u=t=>{const{open:e=!1,onClose:n,title:r,children:o,actions:i,closeBtnLabel:s,closeButtonPosition:a,closeButtonProps:l={},disableDismiss:u=!1,...f}=t;if(!e)return null;const p=a==="bottom"||a==="top-and-bottom",m=a==="top"||a==="top-and-bottom",g=()=>{if(s&&p)return b.jsx(H.Button,{className:"MBv2_Modal_Close",onClick:t.onClose,...l,children:s})},v=()=>{if(i)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",width:"100%",gap:"0.25rem",children:[b.jsx(H.Box,{children:g()}),b.jsxs(H.Box,{display:"flex",gap:".25rem",children:[...i]})]})});if(s&&p)return b.jsx(H.DialogActions,{className:"MBv2_Modal_Actions",children:b.jsx(H.Box,{children:g()})})};return b.jsxs(H.Dialog,{className:"MBv2_Modal",open:e,onClose:()=>{u||n==null||n()},...f,children:[typeof r=="string"?b.jsx(H.DialogTitle,{className:"MBv2_Modal_Title",children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[r,m&&b.jsx(H.IconButton,{"data-testid":"modal-header-close-btn",onClick:n,children:b.jsx(sp,{})})]})}):r,o&&(typeof o=="string"?b.jsx(H.DialogContent,{className:"MBv2_Modal_Content",children:b.jsx(H.DialogContentText,{className:"MBv2_Modal_Content_Text",children:o})}):o),v()]})};function YQ(t){return qe("MuiAlert",t)}const Z2=He("MuiAlert",["root","action","icon","message","filled","colorSuccess","colorInfo","colorWarning","colorError","filledSuccess","filledInfo","filledWarning","filledError","outlined","outlinedSuccess","outlinedInfo","outlinedWarning","outlinedError","standard","standardSuccess","standardInfo","standardWarning","standardError"]),GQ=Pe(b.jsx("path",{d:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"}),"SuccessOutlined"),JQ=Pe(b.jsx("path",{d:"M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z"}),"ReportProblemOutlined"),XQ=Pe(b.jsx("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutline"),ZQ=Pe(b.jsx("path",{d:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z"}),"InfoOutlined"),QQ=Pe(b.jsx("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),eee=t=>{const{variant:e,color:n,severity:r,classes:o}=t,i={root:["root",`color${Ie(n||r)}`,`${e}${Ie(n||r)}`,`${e}`],icon:["icon"],message:["message"],action:["action"]};return Ue(i,YQ,o)},tee=te(cs,{name:"MuiAlert",slot:"Root",overridesResolver:(t,e)=>{const{ownerState:n}=t;return[e.root,e[n.variant],e[`${n.variant}${Ie(n.color||n.severity)}`]]}})(gt(({theme:t})=>{const e=t.palette.mode==="light"?Fs:La,n=t.palette.mode==="light"?La:Fs;return{...t.typography.body2,backgroundColor:"transparent",display:"flex",padding:"6px 16px",variants:[...Object.entries(t.palette).filter(Vn(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"standard"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),backgroundColor:t.vars?t.vars.palette.Alert[`${r}StandardBg`]:n(t.palette[r].light,.9),[`& .${Z2.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Vn(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"outlined"},style:{color:t.vars?t.vars.palette.Alert[`${r}Color`]:e(t.palette[r].light,.6),border:`1px solid ${(t.vars||t).palette[r].light}`,[`& .${Z2.icon}`]:t.vars?{color:t.vars.palette.Alert[`${r}IconColor`]}:{color:t.palette[r].main}}})),...Object.entries(t.palette).filter(Vn(["dark"])).map(([r])=>({props:{colorSeverity:r,variant:"filled"},style:{fontWeight:t.typography.fontWeightMedium,...t.vars?{color:t.vars.palette.Alert[`${r}FilledColor`],backgroundColor:t.vars.palette.Alert[`${r}FilledBg`]}:{backgroundColor:t.palette.mode==="dark"?t.palette[r].dark:t.palette[r].main,color:t.palette.getContrastText(t.palette[r].main)}}}))]}})),nee=te("div",{name:"MuiAlert",slot:"Icon",overridesResolver:(t,e)=>e.icon})({marginRight:12,padding:"7px 0",display:"flex",fontSize:22,opacity:.9}),ree=te("div",{name:"MuiAlert",slot:"Message",overridesResolver:(t,e)=>e.message})({padding:"8px 0",minWidth:0,overflow:"auto"}),oee=te("div",{name:"MuiAlert",slot:"Action",overridesResolver:(t,e)=>e.action})({display:"flex",alignItems:"flex-start",padding:"4px 0 0 16px",marginLeft:"auto",marginRight:-8}),Q2={success:b.jsx(GQ,{fontSize:"inherit"}),warning:b.jsx(JQ,{fontSize:"inherit"}),error:b.jsx(XQ,{fontSize:"inherit"}),info:b.jsx(ZQ,{fontSize:"inherit"})},eI=D.forwardRef(function(e,n){const r=ht({props:e,name:"MuiAlert"}),{action:o,children:i,className:s,closeText:a="Close",color:l,components:u={},componentsProps:f={},icon:p,iconMapping:m=Q2,onClose:g,role:v="alert",severity:y="success",slotProps:x={},slots:S={},variant:k="standard",...T}=r,C={...r,color:l,severity:y,variant:k,colorSeverity:l||y},O=eee(C),A={slots:{closeButton:u.CloseButton,closeIcon:u.CloseIcon,...S},slotProps:{...f,...x}},[N,$]=Ot("root",{ref:n,shouldForwardComponentProp:!0,className:ge(O.root,s),elementType:tee,externalForwardedProps:{...A,...T},ownerState:C,additionalProps:{role:v,elevation:0}}),[z,M]=Ot("icon",{className:O.icon,elementType:nee,externalForwardedProps:A,ownerState:C}),[B,V]=Ot("message",{className:O.message,elementType:ree,externalForwardedProps:A,ownerState:C}),[F,P]=Ot("action",{className:O.action,elementType:oee,externalForwardedProps:A,ownerState:C}),[I,_]=Ot("closeButton",{elementType:Ml,externalForwardedProps:A,ownerState:C}),[R,U]=Ot("closeIcon",{elementType:QQ,externalForwardedProps:A,ownerState:C});return b.jsxs(N,{...$,children:[p!==!1?b.jsx(z,{...M,children:p||m[y]||Q2[y]}):null,b.jsx(B,{...V,children:i}),o!=null?b.jsx(F,{...P,children:o}):null,o==null&&g?b.jsx(F,{...P,children:b.jsx(I,{size:"small","aria-label":a,title:a,color:"inherit",onClick:g,..._,children:b.jsx(R,{fontSize:"small",...U})})}):null]})});process.env.NODE_ENV!=="production"&&(eI.propTypes={action:c.node,children:c.node,classes:c.object,className:c.string,closeText:c.string,color:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),components:c.shape({CloseButton:c.elementType,CloseIcon:c.elementType}),componentsProps:c.shape({closeButton:c.object,closeIcon:c.object}),icon:c.node,iconMapping:c.shape({error:c.node,info:c.node,success:c.node,warning:c.node}),onClose:c.func,role:c.string,severity:c.oneOfType([c.oneOf(["error","info","success","warning"]),c.string]),slotProps:c.shape({action:c.oneOfType([c.func,c.object]),closeButton:c.oneOfType([c.func,c.object]),closeIcon:c.oneOfType([c.func,c.object]),icon:c.oneOfType([c.func,c.object]),message:c.oneOfType([c.func,c.object]),root:c.oneOfType([c.func,c.object])}),slots:c.shape({action:c.elementType,closeButton:c.elementType,closeIcon:c.elementType,icon:c.elementType,message:c.elementType,root:c.elementType}),sx:c.oneOfType([c.arrayOf(c.oneOfType([c.func,c.object,c.bool])),c.func,c.object]),variant:c.oneOfType([c.oneOf(["filled","outlined","standard"]),c.string])});const Lu=t=>{var g;const{noIcon:e=!1,children:n,severity:r="success",variant:o="leftBorder",sx:i,title:s,...a}=t,{palette:l}=H.useTheme(),u=e?{icon:!1}:{},f=o==="leftBorder"?"standard":o,p=o==="leftBorder"?{...i,borderLeft:`4px solid ${(g=l[r])==null?void 0:g.main}`}:i,m=s?{icon:{sx:{mt:"6px"}}}:{};return b.jsxs(eI,{severity:r,variant:f,sx:p,slotProps:m,...u,...a,children:[s&&b.jsx(H.Typography,{variant:"h3",children:s}),n]})},tI=t=>b.jsx(Lu,{severity:"error",...t}),nI=t=>b.jsx(Lu,{severity:"success",...t}),iee=t=>{const{alert:e,setAlert:n}=t,r=()=>n(void 0);return b.jsxs(b.Fragment,{children:[(e==null?void 0:e.type)==="Error"&&b.jsx(tI,{"data-testid":"citation-menu-error",onClose:r,title:e.title,children:e.message.toString()}),(e==null?void 0:e.type)==="Success"&&b.jsx(nI,{"data-testid":"citation-menu-success",onClose:r,children:e.message})]})};function rI({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:a,onCancel:l,initialSelectedIds:u=[],onContentChange:f,onError:p=()=>{},renderAsSelectablePopup:m=!1,addlActions:g,canLaunchUrl:v,readOnly:y}){const[x,S]=X.useState("Insert Citation/Attachment(s)"),[k,T]=X.useState(u),[C,O]=X.useState(void 0),[A,N]=X.useState(void 0),$=G=>{N(void 0),S(G)},[z,M]=X.useState(0);X.useEffect(()=>{f==null||f()},[x,A,f]);const B=(G=!1)=>{(!m||G)&&M(ee=>ee+1)},V=(G,ee)=>{var de;const ue=typeof((de=ee.response)==null?void 0:de.data)=="string"&&ee.response.data,oe=typeof ee.message=="string"&&ee.message;N({type:"Error",title:G,message:ue??oe}),p(ee)},F=G=>N({type:"Success",title:"",message:G}),P=async G=>{if(x==="Insert Citation/Attachment(s)")throw Error("onSave called with invalid state");if(x==="Edit Citation"||x==="Edit Attachment"){if(G.id===void 0)throw Error("Failed to update citation. Citation is missing id");await(n==null?void 0:n(G).then(()=>{$("Insert Citation/Attachment(s)"),B()}).catch(ue=>{V("Failed to update",ue)}))}else await(e==null?void 0:e(G).then(ue=>{T([...k,ue.id]),$("Insert Citation/Attachment(s)"),B()}).catch(ue=>{V("Failed to create",ue)}))},I=r&&(async G=>r(G).then(()=>{B(!0),T(k.filter(ee=>ee!==G)),F("Successfully deleted")}).catch(ee=>V("Failed to delete",ee))),_=(G,ee)=>{o(G.id).then(ue=>{O(ue),$(ee)}).catch(ue=>{V("Failed to load",ue)})},R=i&&(async G=>i(G).catch(ee=>{V(`Failed to download ${G.fileName}`,ee)})),U=s&&(async G=>s(G).catch(ee=>{V(`Failed to view ${G.fileName}`,ee)})),K=b.jsx(fQ,{refreshKey:z,getCitationsPaginated:G=>t(G).then(ee=>(f==null||f(),ee)),onCancel:l,onNewCitation:()=>{O(void 0),$("Add Citation")},onNewAttachment:()=>{O(void 0),$("Add Attachment")},onEditCitation:G=>_(G,y?"View Citation":"Edit Citation"),onEditAttachment:G=>_(G,y?"View Attachment":"Edit Attachment"),onDeleteCitation:I,onDownloadAttachment:R,onViewAttachment:U,onSelect:a,setSelectedIds:T,selectedIds:k,onError:p,condenseTable:m,canSelect:m,title:m&&!y?x:"Attachments & Citations",addlActions:g,canCreate:!!e,canEdit:!!n,canDelete:!!I,canLaunchUrl:v,readOnly:y,showCloseBtn:m}),j=b.jsx(qQ,{modifyCitation:C,onSave:P,onCancel:()=>$("Insert Citation/Attachment(s)"),onClose:l,title:x,readOnly:x==="View Citation",showCloseBtn:m}),Y=b.jsx(KQ,{onSave:P,onCancel:()=>$("Insert Citation/Attachment(s)"),onClose:l,modifyCitation:C,disableFileUpload:x==="Edit Attachment",title:x,readOnly:x==="View Attachment",showCloseBtn:m}),re=b.jsx(iee,{alert:A,setAlert:N}),ce=x==="Add Citation"||x==="Edit Citation"||x==="View Citation",pe=x==="Add Attachment"||x==="Edit Attachment"||x==="View Attachment";if(m){let G=null;return!m||x==="Insert Citation/Attachment(s)"?G=K:ce?G=j:pe&&(G=Y),b.jsxs(H.Box,{width:"500px",children:[re,b.jsx(H.Box,{paddingTop:"8px",children:G})]})}return b.jsxs(H.Box,{width:"100%",children:[x==="Insert Citation/Attachment(s)"&&re,b.jsx(H.Box,{paddingTop:"8px",children:K}),b.jsx($u,{open:ce||pe,children:b.jsxs(H.Box,{padding:"10px 20px",minWidth:"400px","data-testid":"citation-form-modal",children:[re,ce?j:Y]})})]})}function oI({...t}){return b.jsx(rI,{renderAsSelectablePopup:!0,...t})}const see=H.styled("div",{name:"CitationBubbleMenu",slot:"content",overridesResolver:(t,e)=>e.content})(({theme:t})=>{const e=t.palette.mode==="dark";return{padding:t.spacing(1.5,2,.5),backgroundColor:e?"#101010":"#f9f9f9",border:`1px solid ${t.palette.grey[e?700:200]}`}});function aee({getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,canLaunchUrl:a,readOnly:l,...u}){const f=wt();if(f&&!("citationBubbleMenuHandler"in(f==null?void 0:f.storage)))throw new Error("You must add the CitationBubbleMenuHandler extension to the useEditor `extensions` array in order to use this component!");const p=f==null?void 0:f.storage.citationBubbleMenuHandler,m=p.isOpen,g=p.selectedIds,v=p.selectedNodePos,y=T=>{f&&(T.length===0?f.commands.deleteCitation(v):g.length===0?f.commands.insertCitation({ids:T}):f.commands.updateCitation({ids:T},v))},x=T=>{y(T),f==null||f.commands.closeCitationBubbleMenu()},S=()=>{y(g),f==null||f.commands.closeCitationBubbleMenu()},k=X.useCallback(()=>{requestAnimationFrame(()=>{f!=null&&f.view&&f.view.dispatch(f.view.state.tr)})},[f]);return f?b.jsx(py,{editor:f,open:m,...p.bubbleMenuOptions,...u,children:b.jsx(see,{children:b.jsx(oI,{getCitationsPaginated:t,onCreateCitation:e,onUpdateCitation:n,onDeleteCitation:r,getCitationById:o,onDownloadAttachment:i,onViewAttachment:s,onSelectCitations:x,onCancel:S,initialSelectedIds:g,onContentChange:k,canLaunchUrl:a,readOnly:l})})}):null}const lee=()=>ln.create({name:"citationBubbleMenuHandler",addStorage(){return{isOpen:!1,selectedIds:[],bubbleMenuOptions:void 0,selectedNodePos:0}},addCommands(){return{openCitationBubbleMenu:(t={},e)=>({editor:n,dispatch:r})=>{var a;const{doc:o}=n.state,i=o.nodeAt(e??0),s=((a=i==null?void 0:i.attrs)==null?void 0:a.ids)??[];return r&&(this.storage.isOpen=!0,this.storage.selectedIds=s,this.storage.bubbleMenuOptions=t,this.storage.selectedNodePos=e??0),!0},closeCitationBubbleMenu:()=>({commands:t,dispatch:e})=>this.storage.isOpen?(t.focus(),e&&(this.storage.isOpen=!1,this.storage.selectedIds=[],this.storage.selectedNodePos=0),!0):!1}},onSelectionUpdate(){this.storage.isOpen&&!this.editor.isActive("citation")&&this.editor.commands.closeCitationBubbleMenu()},addKeyboardShortcuts(){return{"Mod-Shift-c":()=>(this.editor.commands.openCitationBubbleMenu(),!0)}}});function cee(t){const e=wt(),n=X.useRef(null);return b.jsx(St,{buttonRef:n,tooltipLabel:"Insert Citation/Attachment",tooltipShortcutKeys:["mod","Shift","C"],disabled:!(e!=null&&e.isEditable),onClick:()=>e==null?void 0:e.commands.openCitationBubbleMenu({anchorEl:n.current,placement:"bottom"}),...t,children:b.jsxs(H.Box,{display:"flex",flexDirection:"row",gap:"4px",alignItems:"center",children:[b.jsx(wU,{fontSize:"small"}),b.jsx(H.Typography,{variant:"body2",children:"Insert Citation/Attachment"})]})})}const iI=X.createContext(void 0),sI=()=>{const t=X.useContext(iI);if(!t)throw new Error("useSync must be used inside CitationFieldProvider");return t},uee=({node:t,HTMLAttributes:e,selected:n,extension:r,updateAttributes:o,deleteNode:i})=>{const s=t.attrs.ids||[],{citations:a,isLoaded:l}=sI(),[u,f]=X.useState(s?String(s):""),[p,m]=X.useState([]),g=r.options.citationMaxLength;if(X.useEffect(()=>{if(!l)return;const v=a.filter(S=>s.includes(S.id)),y=v.map(S=>kl.truncate(S.title,{length:g,omission:"..."})).join(", ");f(y),m(v);const x=v.map(S=>S.id);x.length===0?setTimeout(i,0):x.length!==s.length&&setTimeout(()=>o({ids:v.map(S=>S.id)}),0)},[a,s,l]),p.length!==0)return b.jsx(wb,{as:"span",...e,"data-testid":"citation-node-component",children:b.jsx(H.Tooltip,{title:b.jsx(H.Box,{className:"citation-tooltip",children:p.map((v,y)=>{var S;const x=[v.source,v.title,v.fileName,v.url,(S=v.accessedAt)==null?void 0:S.slice(0,10),v.classification];return b.jsxs(H.Typography,{variant:"subtitle2",children:[x.filter(Boolean).join(" | "),y<p.length-1&&b.jsx(H.Divider,{className:"citation-tooltip-divider"})]},v.id)})}),slotProps:{tooltip:{sx:{maxWidth:500}}},children:b.jsx("a",{href:"#",onClick:v=>{v.preventDefault(),v.stopPropagation()},className:n?"selected-citation-link":"citation-link",children:u})})})},dee=tn.create({name:"citation",group:"inline",inline:!0,atom:!0,selectable:!0,addAttributes(){return{ids:{default:[],parseHTML:t=>{const e=t.getAttribute("ids");return e?e.split(",").map(n=>parseInt(n.trim(),10)).filter(n=>!isNaN(n)):[]},renderHTML:t=>({ids:Array.isArray(t.ids)?t.ids.join(","):""})}}},parseHTML(){return[{tag:"citation"}]},renderHTML({HTMLAttributes:t}){return["citation",xt(t)]},addNodeView(){return Sb(uee)},addProseMirrorPlugins(){return[new en({props:{handleClickOn:(t,e,n,r,o,i)=>n&&n.type.name==="citation"?(this.editor.commands.openCitationBubbleMenu({},r),!0):!1}})]},addCommands(){return{insertCitation:t=>({commands:e})=>e.insertContent({type:"citation",attrs:t}),updateCitation:(t,e)=>({state:n,dispatch:r,tr:o})=>{const i=n.doc.nodeAt(e);return!i||i.type.name!=="citation"?!1:(o.setNodeMarkup(e,void 0,t),r&&r(o),!0)},deleteCitation:t=>({tr:e,dispatch:n})=>{if(typeof t!="number")return!1;const r=t,o=t+1;return n&&n(e.delete(r,o)),!0}}}}),aI=t=>b.jsx(nM,{name:t.name,label:"Not Applicable",errorMode:"hidden"}),fee=t=>{const{name:e,label:n=$n(e),hideLabel:r=!1,required:o=!1,readOnly:i,margin:s="dense",citationMaxLength:a=24,getCitationsPaginated:l,onCreateCitation:u,onUpdateCitation:f,onDeleteCitation:p,getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y=()=>{},placeholder:x="Start typing here...",notApplicableName:S,errorMode:k="normal",canLaunchUrl:T}=t,C=[ET,C2.configure({placeholder:x}),lee(),dee.configure({citationMaxLength:a})],[O,A,N]=jt.useField({name:e}),{setValue:$}=N,{value:z}=O,{addUpdateCitation:M,deleteCitation:B,batchUpdate:V,citations:F}=sI();X.useEffect(()=>{var pe;const re=(pe=P==null?void 0:P.current)==null?void 0:pe.editor;if(!re)return;re.getHTML()!==z&&setTimeout(()=>{re.commands.setContent(z)},0)},[z]);const P=X.useRef(null),I={normal:{marginTop:"16px",marginBottom:"8px"},dense:{marginTop:"8px",marginBottom:"4px"},none:{margin:0}},_=(re=void 0)=>{var G,ee;const ce=((ee=(G=P.current)==null?void 0:G.editor)==null?void 0:ee.getHTML())??"",pe=!ce.replace(/<\/?p>|<br>/g,"").trim();$(pe?"":ce,re)},R=X.useMemo(()=>kl.debounce(()=>_(!1),500),[$]),U=Wa(),{showDiff:K,previousSnapshot:j}=ja(),Y=i??U;if(K){const re=(j==null?void 0:j[e])??"",ce=z,pe=/<citation\s+ids="([^"]*)"><\/citation>/g,G=(oe,ne)=>{const de=ne.split(",").map(Number);return`<sup>${F.filter(ye=>de.includes(ye.id)).map(ye=>ye.title)}</sup>`},ee=re.replace(pe,G),ue=ce.replace(pe,G);return b.jsx(Tl,{label:n,value:ue,showDiff:!0,diffSnapshot:ee,useHtmlDiff:!0})}return b.jsxs(H.Box,{id:`citation-field_${e}`,sx:{"& .ProseMirror":{"& h1, & h2, & h3, & h4, & h5, & h6":{scrollMarginTop:Y?0:50}},".MuiTiptap-RichTextContent-readonly ":{padding:0}},...I[s],display:"flex",flexDirection:"column",width:"100%",children:[b.jsxs(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[!r&&b.jsx(H.InputLabel,{htmlFor:`citation-field_${e}`,required:o,children:n}),S&&b.jsx(aI,{name:S})]}),b.jsx(KO,{ref:P,extensions:C,content:z,editable:!Y,renderControls:Y?void 0:()=>b.jsx(Qy,{children:b.jsx(cee,{})}),onBlur:()=>_(),onUpdate:R,RichTextFieldProps:{variant:Y?"standard":"outlined",MenuBarProps:{hide:Y}},children:()=>b.jsx(aee,{getCitationsPaginated:re=>l(re).then(ce=>(V(ce.data),ce)),onCreateCitation:u&&(re=>u(re).then(ce=>(M(ce),ce))),onUpdateCitation:f&&(re=>f(re).then(ce=>(M(ce),ce))),onDeleteCitation:p&&(re=>p(re).then(()=>B(re))),getCitationById:m,onDownloadAttachment:g,onViewAttachment:v,onError:y,canLaunchUrl:T,readOnly:Y})}),b.jsx(yr,{name:e,id:`${e}-err`,errorMode:k})]})},pee=t=>{const{name:e="submit"}=t;return b.jsx(lo,{name:e,type:"submit",...t})},hee=t=>{const{label:e="Return to Top",icon:n=ap,scrollThresholdPx:r=100}=t,o=H.useScrollTrigger({threshold:r}),i=X.useCallback(()=>{window.scrollTo({top:0,behavior:"smooth"})},[]);return b.jsx(H.Zoom,{in:o,children:b.jsx(H.Box,{sx:{position:"fixed",bottom:32,right:32,zIndex:1},children:b.jsxs(H.Fab,{onClick:i,color:"primary",size:"small",variant:"extended","aria-label":"Scroll back to top",children:[b.jsx(n,{fontSize:"medium"}),e]})})})},lI=t=>{const{label:e,menuOptions:n=[],icon:r}=t,o=bo.useNavigate(),[i,s]=D.useState(null),a=!!i,l=p=>{s(p.currentTarget)},u=()=>{s(null)};if(n.length===0)return null;const f=r&&!e;return b.jsxs(b.Fragment,{children:[b.jsx(H.Button,{startIcon:f?void 0:r,variant:"outlined",color:"inherit",sx:{minWidth:0,...f&&{paddingLeft:"6px",paddingRight:"6px"}},onClick:l,children:f?r:e}),b.jsx(H.Menu,{anchorEl:i,open:a,onClick:u,children:n.map(p=>b.jsxs(H.MenuItem,{...Xl(p,o),children:[p.icon&&b.jsx(H.ListItemIcon,{children:p.icon}),b.jsx(H.ListItemText,{primary:p.label})]},p.label))})]})},mee=()=>{const{values:t,errors:e,status:n}=jt.useFormikContext(),{palette:r}=H.useTheme();return b.jsx(H.Paper,{style:{backgroundColor:r.mode==="dark"?"#303030":"#f0f0f0",margin:"10px 0"},children:b.jsxs(H.List,{children:[b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Values"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(t,null,2)})]}),b.jsx(H.Divider,{variant:"inset",component:"li"}),b.jsxs(H.ListItem,{id:"testing",children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Errors"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(e,null,2)})]}),b.jsxs(H.ListItem,{children:[b.jsx(H.Typography,{display:"block",variant:"h6",children:"Status"}),b.jsx("br",{}),b.jsx(H.Divider,{variant:"inset"}),b.jsx("pre",{children:JSON.stringify(n,null,2)})]})]})})},gee=t=>{const{steps:e,orientation:n,inlineLabel:r=n=="vertical",isResponsive:o=!1}=t,{width:i}=I2();let s=!r,a=n;o&&(n&&console.warn("Stepper: Ignoring orientation. isResponsive is set to true, so the orientation is determined automatically based on the window size."),a=i<600?"vertical":"horizontal",a=="vertical"?s=!1:s=!r),n=="vertical"&&!r&&(console.warn("Stepper: ignoring inlineLabel={false}. Must use inline labels when orientation is vertical"),s=!1);const l=["steps","inlineLabel","orientation","isResponsive"],u={alternativeLabel:s,orientation:a,...lr({...t},l)};return b.jsx(H.Stepper,{...u,children:e.map(f=>b.jsx(H.Step,{children:b.jsx(H.StepLabel,{children:f})},f))})},yee=t=>{const{name:e,label:n=$n(e),labelProps:r={fontSize:"1.1em",color:"#808080",fontWeight:"600"},initialState:o,renderFormGroup:i,addButtonContent:s="Add Another",removeButtonContent:a=t.removePosition==="right"?b.jsx(OM,{}):"Remove",variant:l="card",addButtonSx:u,removeButtonSx:f,allowRemoveAll:p=!1,readOnly:m=!1,emptyListMsg:g="None",showDivider:v=!1,removePosition:y="bottom"}=t,[x]=jt.useField({name:e}),{value:S}=x,k=T=>({display:"flex",flexDirection:T==="bottom"?"column":"row",alignItems:T==="bottom"?"flex-start":"center"});return b.jsxs(H.FormControl,{fullWidth:!0,children:[b.jsx(H.Typography,{...r,children:n}),m&&x.value.length===0?b.jsx(H.Typography,{children:g}):b.jsx(jt.FieldArray,{name:e,render:T=>b.jsxs("div",{children:[S.map((C,O)=>b.jsx(X.Fragment,{children:b.jsx(bee,{variant:l,content:b.jsxs(H.Box,{"data-testid":"form-group-container",sx:typeof y=="string"?k(y):{...y},children:[b.jsxs(H.Box,{width:"100%",children:[i(`${e}.${O}`,O),v&&O!==S.length-1&&b.jsx(H.Divider,{"data-testid":"divider"})]}),!m&&S.length>(p?0:1)&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_remove-btn",sx:f,onClick:()=>T.remove(O),children:a})]})})},`${e}-${O}`)),!m&&b.jsx(H.Button,{"data-testid":"repeatable-form-group_add-btn",onClick:()=>T.push(o),sx:u,children:s})]})})]})},bee=({variant:t,content:e})=>{switch(t){case"card":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_card",sx:{padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"elevatedCard":return b.jsx(H.Card,{"data-testid":"repeatable-form-group_elevated-card",elevation:4,sx:{border:"unset",padding:"8px",marginBottom:"8px"},children:b.jsx(H.CardContent,{children:e})});case"none":return e}},vee=t=>{const{confirmBtnLabel:e,onConfirm:n,confirmButtonProps:r={color:"primary",variant:"contained"},closeBtnLabel:o="Cancel",closeButtonPosition:i="bottom",...s}=t;return b.jsx($u,{actions:[b.jsx(H.Button,{className:"MBv2_ConfirmationModal_ConfirmBtn",onClick:n,...r,children:e})],closeBtnLabel:o,closeButtonPosition:i,...s})},xee=t=>{const{closeBtnLabel:e="OK",closeButtonPosition:n="bottom",closeButtonProps:r={color:"primary",variant:"contained"},...o}=t;return b.jsx($u,{closeBtnLabel:e,closeButtonPosition:n,closeButtonProps:r,...o})},wee=t=>{const{primaryBtnLabel:e,onPrimaryAction:n,primaryActionProps:r={color:"primary",variant:"contained"},secondaryBtnLabel:o,onSecondaryAction:i,secondaryActionProps:s={color:"primary",variant:"outlined"},closeBtnLabel:a="Cancel",closeButtonPosition:l="bottom",...u}=t;return b.jsx($u,{actions:[b.jsx(H.Button,{className:"MBv2_DecisionModal_SecondaryAction",onClick:i,...s,children:o}),b.jsx(H.Button,{className:"MBv2_DecisionModal_PrimaryAction",onClick:n,...r,children:e})],closeBtnLabel:a,closeButtonPosition:l,...u})},See={added:{icon:vU,label:"Added",color:"success"},deleted:{icon:OM,label:"Deleted",color:"error"},modified:{icon:SU,label:"Modified",color:"info"}},cI=t=>{const{beforeData:e,afterData:n,columns:r}=t,[o,i]=X.useState([]),[s,a]=X.useState(0);return X.useMemo(()=>{const l=[];e.sort((m,g)=>m.id-g.id),n.sort((m,g)=>m.id-g.id);let u=0,f=0,p=0;for(;u<e.length&&f<n.length;){const m=e[u],g=n[f];m.id===g.id?(JSON.stringify(m)!=JSON.stringify(g)?l.push({...g,changeType:"modified"}):p++,u++,f++):m.id<g.id?(l.push({...m,changeType:"deleted"}),u++):(l.push({...g,changeType:"added"}),f++)}for(;u<e.length;)l.push({...e[u],changeType:"added"}),u++;for(;f<n.length;)l.push({...n[f],changeType:"added"}),f++;i(l),a(p)},[e,n]),b.jsxs(b.Fragment,{children:[b.jsx(tv,{columns:[{fieldName:"changeType",render:l=>{const u=See[l];return b.jsx(H.Chip,{color:u.color,label:b.jsxs(H.Typography,{children:[b.jsx(Bm,{icon:u.icon}),u.label]})})}},...r],data:o}),s>0&&b.jsx(H.Box,{children:b.jsxs(H.Typography,{fontStyle:"italic",children:["+",s," unmodified rows"]})})]})},Cee=t=>{const{beforeCitations:e,afterCitations:n}=t,{palette:r}=H.useTheme(),o=A2(r);return b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingBottom:"10px",children:b.jsx(H.Typography,{variant:"h2",children:"Attachments & Citations"})}),b.jsx(cI,{columns:o,beforeData:e,afterData:n})]})},Tee=t=>{const{featureMenuOptions:e=[],copyright:n,logo:r,sx:o={},fontColor:i="primary"}=t,{palette:s}=H.useTheme(),a=bo.useNavigate();return b.jsxs(H.Box,{className:"MBv2_Footer",sx:{backgroundColor:s.mode==="dark"?"#222222":"#ededed",padding:"25px 30px",...o},children:[b.jsx(H.Box,{className:"MBv2_Footer_Logo",sx:{display:"flex",gap:2,alignItems:"center",paddingBottom:1},children:typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",justifyContent:"space-between",flexWrap:"wrap",className:"MBv2_Footer_Nav_Links_Container",gap:2,children:[b.jsx(H.Box,{sx:{flexGrow:1},className:"MBv2_Footer_Nav_Links",display:"flex",flexDirection:"row",justifyContent:"flex-start",gap:3,children:e==null?void 0:e.map(l=>b.jsx(H.Link,{"data-testid":l.label,sx:{cursor:"pointer",fontSize:15},color:i,...Xl(l,a),children:l.label},l.label))}),n&&b.jsx(H.Typography,{style:{fontSize:15},"data-testid":"copyright",className:"MBv2_Footer_Copyright",color:i,children:n})]})]})},uI=t=>{const{menuOptionLists:e,anchor:n="left",children:r}=t,{pathname:o}=bo.useLocation(),i=bo.useNavigate(),[s,a]=X.useState(!1),l=(m,g)=>b.jsx(H.MenuList,{children:m.map(v=>b.jsxs(H.MenuItem,{...Xl(v,i,()=>a(!1)),children:[v.icon&&b.jsx(H.ListItemIcon,{children:v.icon}),b.jsx(H.ListItemText,{primary:v.label})]},`mobile-drawer-group-${g}-item-${v.path}`))}),f=(()=>{if(e){const m=e.filter(g=>g&&g.length>0);return m.length===0?null:m.map((g,v)=>b.jsxs(X.Fragment,{children:[l(g,v),v<m.length-1&&b.jsx(H.Divider,{})]},`mobile-drawer-group-${v}`))}return r?b.jsx(H.Box,{role:"presentation",onClick:()=>a(!1),children:r}):null})(),p=f??!1;return X.useEffect(()=>{a(!1)},[o]),p&&b.jsxs(b.Fragment,{children:[b.jsx(H.IconButton,{onClick:()=>a(!0),color:"inherit",title:"Menu",children:b.jsx(_U,{})}),b.jsx(H.Drawer,{"data-testid":"mobile-drawer",anchor:n,open:s,onClose:()=>a(!1),children:b.jsx(H.Box,{sx:{width:300},display:"flex",flexDirection:"column",justifyContent:"space-between",children:b.jsx(H.Box,{display:"flex",justifyContent:"start",flexDirection:"column",children:f})})})]})},dI=t=>{const{env:e,isProd:n}=t;return n?null:b.jsx(H.Paper,{sx:{borderRadius:0,display:"flex",alignItems:"center",justifyContent:"center"},children:b.jsxs(H.Typography,{variant:"h6",color:"error",children:[e," Environment - Test Data Only"]})})},fI=t=>{const{displayName:e,userMenuOptions:n}=t;return b.jsx(lI,{label:e,menuOptions:n,icon:b.jsx(AU,{})})},Ch=t=>{const{menuOptions:e,orientation:n="horizontal",activeTabIdx:r,sx:o=n=="vertical"?{"& .MuiTabs-indicator":{left:0}}:void 0,slotProps:i={indicator:{sx:n=="horizontal"?{height:4}:{width:4}}}}=t,{palette:s}=H.useTheme(),a=bo.useNavigate();return b.jsx(H.Tabs,{orientation:n,value:r??!1,sx:o,slotProps:i,children:e.map((l,u)=>b.jsx(H.Tab,{icon:l.icon,label:l.label,value:u,...Xl(l,a),sx:{alignItems:n=="vertical"?"flex-start":void 0,borderBottom:n=="vertical"?"1px solid":void 0,borderColor:"divider","&.Mui-selected":{backgroundColor:n=="vertical"?s.grey[s.mode=="dark"?800:50]:void 0,color:"inherit"}}},l.label))})},pI=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t;return e.length>0&&b.jsx(H.Paper,{sx:{pl:4,pr:4,borderRadius:0},"data-testid":"navBar",children:b.jsx(Ch,{menuOptions:e,activeTabIdx:n,sx:r})})},hI=t=>{const{onToggle:e}=t,{palette:n}=H.useTheme(),r=n.mode==="dark";return b.jsx(H.IconButton,{onClick:e,color:"inherit",title:"Dark Mode Toggle",children:r?b.jsx(EM,{}):b.jsx(TM,{})})},kee=t=>{const{envInfo:e,headerRef:n,logo:r,featureMenuOptions:o=[],userMenuOptions:i=[],onToggleDarkMode:s,quickLinks:a=[],displayName:l,banner:u,position:f="fixed",children:p,sx:m,navBarSx:g}=t,v=bo.useNavigate(),y=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),{palette:x}=H.useTheme(),{pathname:S}=bo.useLocation(),k=x.mode==="dark",[T,C]=D.useState(void 0);D.useEffect(()=>{const N=o.findIndex($=>$.path&&S.startsWith($.path));C(N>=0?N:void 0)},[S,o]);const O=s&&b.jsx(hI,{onToggle:s}),A=s&&(y||!y&&l)?[{icon:k?b.jsx(EM,{}):b.jsx(TM,{}),label:`Switch to ${k?"Light":"Dark"} mode`,onClick:s},...i]:i;return b.jsxs(H.AppBar,{ref:n,position:f,sx:m,elevation:4,children:[e&&b.jsx(dI,{...e}),u,b.jsxs(H.Toolbar,{sx:{color:"white",display:"flex",justifyContent:"space-between",gap:2},children:[b.jsx(H.Button,{disableRipple:!0,component:bo.Link,to:"/",children:r&&typeof r=="string"?b.jsx("img",{draggable:"false",src:r,style:{width:"200px",filter:"brightness(0) invert(1)"},alt:"logo"}):r}),b.jsxs(H.Box,{display:"flex",gap:2,alignItems:"center",children:[!l&&!y&&O,y&&b.jsx(uI,{menuOptionLists:[o,a,A],anchor:"right"}),!y&&b.jsxs(b.Fragment,{children:[b.jsx(H.Box,{display:"flex",gap:0,children:a==null?void 0:a.map((N,$)=>b.jsxs(H.Box,{display:"flex",alignItems:"center",children:[$>0&&b.jsx(H.Typography,{className:"quickLink-divider",color:x.primary.contrastText,children:"|"}),b.jsx(H.Button,{variant:"text",sx:{color:"white"},...Xl(N,v),children:b.jsxs(H.Box,{display:"flex",gap:"3px",alignItems:"center",children:[N.icon,N.label]})})]},N.label))}),p,l&&b.jsx(fI,{displayName:l,userMenuOptions:A})]})]})]}),!y&&b.jsx(pI,{featureMenuOptions:o,activeTabIdx:T,sx:g})]})},Eee=t=>{const{sx:e,menuOptions:n=[]}=t,{pathname:r}=bo.useLocation(),o=H.useMediaQuery(H.useTheme().breakpoints.down("sm")),[i,s]=X.useState(void 0);return X.useEffect(()=>{const a=n.findIndex(l=>l.path&&r.startsWith(l.path))??-1;s(a>=0?a:void 0)},[r,n]),!o&&n.length>0&&b.jsx(H.Box,{sx:e,children:b.jsx(H.Card,{sx:{height:"100%",width:200},children:b.jsx(Ch,{orientation:"vertical",menuOptions:n,activeTabIdx:i})})})},Oee=t=>{const{featureMenuOptions:e=[],activeTabIdx:n,sx:r}=t,{palette:o}=H.useTheme();return e.length>0&&b.jsx(Ch,{menuOptions:e,activeTabIdx:n,sx:{margin:"8px",backgroundColor:o.primary.dark,borderRadius:"8px","& .MuiTab-root":{color:o.secondary.light,flexDirection:"row",gap:"2px","& .MuiTab-icon":{marginBottom:"unset"},minHeight:"58px"},"& .MuiTab-root.Mui-selected":{color:o.primary.contrastText,fontSize:"120%"},"& .MuiTabs-indicator":{display:"none"},...r}})},Mee=t=>{const{gap:e=1,...n}=t;return b.jsx(H.Box,{display:"flex",flexDirection:"column",gap:e,...n})},_ee=({children:t,getCitations:e})=>{const[n,r]=X.useState([]),[o,i]=X.useState(!1);X.useEffect(()=>{(async()=>e().then(f=>{r(p=>{const m=new Set(p.map(v=>v.id));return[...p.filter(v=>!m.has(v.id)),...f]}),i(!0)}).catch(f=>{console.error(`Error fetching citations: ${f==null?void 0:f.toString()}`)}))()},[]);const s=X.useCallback(u=>{r(f=>{const p=f.map(v=>{const y=u.find(x=>x.id===v.id);return y||v}),m=new Set(f.map(v=>v.id)),g=u.filter(v=>!m.has(v.id));return[...p,...g]})},[]),a=X.useCallback(u=>{const f=n.findIndex(p=>p.id===u.id);r(f!==-1?p=>{const m=[...p];return m[f]=u,m}:[...n,u])},[n]),l=X.useCallback(u=>r(n.filter(f=>f.id!==u)),[n]);return b.jsx(iI.Provider,{value:{citations:n,isLoaded:o,addUpdateCitation:a,deleteCitation:l,batchUpdate:s},children:t})},Iee=t=>b.jsx(Lu,{severity:"info",...t}),Aee=t=>b.jsx(Lu,{severity:"warning",...t}),mI=t=>{const{crumbInfo:e}=t,n=bo.useNavigate();return b.jsx(H.Breadcrumbs,{"aria-label":"breadcrumb",separator:b.jsx(IU,{color:"primary"}),sx:{marginBottom:2},children:e.map(({label:r,path:o},i)=>o&&i<e.length-1?b.jsx(H.Link,{color:"primary",sx:{cursor:"pointer"},onClick:()=>n(o),children:r},r):b.jsx(H.Typography,{color:"primary",children:r},r))})},Dee=t=>{const{title:e,message:n,type:r,onClose:o,autoHideDuration:i,variant:s="leftBorder",elevation:a=6}=t,l=Pee(r);return b.jsx(H.Snackbar,{"data-testid":"message-snackbar",anchorOrigin:{vertical:"bottom",horizontal:"right"},open:!0,onClose:u=>{u==null&&o()},autoHideDuration:i,children:b.jsx(Lu,{"data-testid":"message-snackbar-alert",severity:l,iconMapping:{info:gI(r),warning:gI(r)},onClose:o,elevation:a,variant:s,children:n?b.jsxs(b.Fragment,{children:[b.jsx(H.AlertTitle,{"data-testid":"alertTitle",sx:{fontWeight:"bold"},children:e}),n]}):e})})},Pee=t=>t=="logout"?"info":t=="timeout"?"warning":t,gI=t=>{if(t=="timeout")return b.jsx(bU,{});if(t=="logout")return b.jsx(MU,{})},Nee=t=>{$ee(t);const{title:e,createButtonLabel:n="Add Item",showAddButton:r=!1,onAdd:o=()=>alert("Not implemented yet"),breadcrumbs:i=[],children:s,sx:a={},bottomGutter:l=!1}=t,u=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return!e&&(!r||!n)?null:b.jsxs(H.Box,{"data-testid":"MBv2-Page-Header",sx:{...a,...l&&{marginBottom:"4px"}},children:[i.length>0&&b.jsx(mI,{crumbInfo:i}),b.jsxs(H.Box,{className:"MBv2_PageHeader_Header",display:"flex",flexDirection:u?"column":"row",justifyContent:"space-between",alignItems:"center",gap:1,children:[b.jsxs(H.Box,{className:"MBv2_PageHeader_TitleAndCreateBtn",display:"flex",flexDirection:"row",justifyContent:u||!s?"space-between":"start",alignItems:"center",width:"100%",gap:1,children:[typeof e=="string"?b.jsx(H.Typography,{className:"MBv2_PageHeader_Title",variant:"h2",children:e}):e,r&&b.jsxs(lo,{className:"MBv2_PageHeader_CreateBtn",onClick:()=>o(),children:[b.jsx(xU,{style:{marginRight:"0.5rem"}}),n]})]}),s&&b.jsx(H.Box,{width:u?"100%":"50%",children:s})]})]})},$ee=t=>{const{showAddButton:e,onAdd:n,createButtonLabel:r}=t,o="PageHeader component:";e&&!n&&console.warn(`${o} "showAddButton" is true but "onAdd" is not defined.`),e&&!r&&console.warn(`${o} "showAddButton" is true but "createButtonLabel" is not defined`)},Lee=t=>{const{title:e,titleIcon:n,fullWidthIcon:r=!1,children:o,actionLabel:i,action:s,sx:a}=t,l=H.useMediaQuery(H.useTheme().breakpoints.down("sm"));return b.jsxs(H.Card,{sx:a||{padding:"30px 40px",display:"flex",flexDirection:"column",gap:"1rem"},children:[n&&b.jsx(H.Box,{className:"MBv2_SingleActionCard_Img",sx:[r?{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",gap:"20px",marginBottom:"10px"}:{display:"inline"}],children:n}),b.jsx(H.Typography,{variant:"h1",display:"inline",fontSize:"calc(20px + .9vw)",className:"MBv2_SingleActionCard_Title",children:e}),o,b.jsx(H.Button,{variant:"contained",color:"primary",onClick:s,fullWidth:l,className:"MBv2_SingleActionCard_ActionButton",children:i})]})};function Bee({...t}){return b.jsx(rI,{onSelectCitations:()=>{},onCancel:()=>{},renderAsSelectablePopup:!1,...t})}const Fee=t=>{const{size:e="small"}=t;let n=`${e}px`;switch(e){case"x-small":n="6px";break;case"small":n="10px";break;case"medium":n="14px";break;case"large":n="18px";break;case"x-large":n="22px";break}return b.jsx(H.Box,{height:n})};De.AlertModal=xee,De.Autocomplete=eM,De.Breadcrumbs=mI,De.Button=lo,De.Checkbox=nM,De.CheckboxGroup=H7,De.CitationField=fee,De.CitationFieldProvider=_ee,De.CitationManager=Bee,De.Column=Mee,De.ConfirmationModal=vee,De.DarkModeToggle=hI,De.DateField=Fp,De.DateRangeField=pZ,De.DecisionModal=wee,De.Diff=QO,De.DiffCitationTable=Cee,De.DiffProvider=gL,De.DiffTable=cI,De.Drawer=uI,De.DynamicAutocomplete=z7,De.EnvironmentBanner=dI,De.ErrorAlert=tI,De.FileList=U7,De.FileUpload=oM,De.FloatingNavBar=Oee,De.Footer=Tee,De.FormDebugger=mee,De.Header=kee,De.InfoAlert=Iee,De.LoadingButton=nv,De.LoadingIndicator=ev,De.Location=pU,De.MenuButton=lI,De.Modal=$u,De.MultiAutocomplete=V7,De.NavBar=pI,De.NotApplicableCheckbox=aI,De.PageHeader=Nee,De.PaginatedTable=M2,De.ProfileMenu=fI,De.RadioGroup=CM,De.RangeSlider=hU,De.ReadOnly=Tl,De.ReadOnlyProvider=mL,De.RepeatableFormGroup=yee,De.RichTextField=lQ,De.Row=X2,De.ScrollToTop=hee,De.SearchField=LU,De.Select=mU,De.SelectableCitationManager=oI,De.Sidebar=Eee,De.SingleActionCard=Lee,De.Snackbar=Dee,De.Spacer=Fee,De.Stepper=gee,De.Submit=pee,De.SuccessAlert=nI,De.Switch=gU,De.Table=tv,De.Tabs=Ch,De.TextArea=yU,De.TextField=ms,De.TextIcon=Bm,De.ValidationError=yr,De.WarningAlert=Aee,De.commonTheme=Mn,De.darkTheme=bP,De.lightTheme=yP,De.useDiff=ja,De.useReadOnly=Wa,Object.defineProperty(De,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@simoncomputing/mui-bueno-v2",
3
3
  "private": false,
4
- "version": "0.24.4",
4
+ "version": "0.25.0",
5
5
  "type": "module",
6
6
  "main": "./dist/index.umd.js",
7
7
  "module": "./dist/index.es.js",