promptfoo 0.62.1 → 0.63.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.
Files changed (149) hide show
  1. package/README.md +8 -5
  2. package/dist/package.json +56 -48
  3. package/dist/src/assertions.d.ts.map +1 -1
  4. package/dist/src/assertions.js +31 -8
  5. package/dist/src/assertions.js.map +1 -1
  6. package/dist/src/cache.js +1 -1
  7. package/dist/src/cache.js.map +1 -1
  8. package/dist/src/csv.d.ts.map +1 -1
  9. package/dist/src/csv.js +13 -1
  10. package/dist/src/csv.js.map +1 -1
  11. package/dist/src/evaluator.js +2 -2
  12. package/dist/src/evaluator.js.map +1 -1
  13. package/dist/src/fetch.d.ts +3 -2
  14. package/dist/src/fetch.d.ts.map +1 -1
  15. package/dist/src/index.d.ts.map +1 -1
  16. package/dist/src/index.js.map +1 -1
  17. package/dist/src/logger.js +1 -1
  18. package/dist/src/logger.js.map +1 -1
  19. package/dist/src/main.js +5 -31
  20. package/dist/src/main.js.map +1 -1
  21. package/dist/src/matchers.js +17 -17
  22. package/dist/src/matchers.js.map +1 -1
  23. package/dist/src/onboarding.d.ts +12 -2
  24. package/dist/src/onboarding.d.ts.map +1 -1
  25. package/dist/src/onboarding.js +398 -28
  26. package/dist/src/onboarding.js.map +1 -1
  27. package/dist/src/providers/bedrock.d.ts.map +1 -1
  28. package/dist/src/providers/bedrock.js +54 -0
  29. package/dist/src/providers/bedrock.js.map +1 -1
  30. package/dist/src/providers/huggingface.d.ts.map +1 -1
  31. package/dist/src/providers/huggingface.js.map +1 -1
  32. package/dist/src/providers/ollama.d.ts.map +1 -1
  33. package/dist/src/providers/ollama.js +9 -0
  34. package/dist/src/providers/ollama.js.map +1 -1
  35. package/dist/src/providers/openai.d.ts +1 -1
  36. package/dist/src/providers/openai.d.ts.map +1 -1
  37. package/dist/src/providers/pythonCompletion.d.ts.map +1 -1
  38. package/dist/src/providers/pythonCompletion.js.map +1 -1
  39. package/dist/src/providers/scriptCompletion.d.ts.map +1 -1
  40. package/dist/src/providers/scriptCompletion.js.map +1 -1
  41. package/dist/src/providers/vertex.d.ts +3 -3
  42. package/dist/src/providers/vertex.d.ts.map +1 -1
  43. package/dist/src/providers/vertex.js +17 -9
  44. package/dist/src/providers/vertex.js.map +1 -1
  45. package/dist/src/redteam/getCompetitorTests.d.ts +3 -0
  46. package/dist/src/redteam/getCompetitorTests.d.ts.map +1 -0
  47. package/dist/src/redteam/getCompetitorTests.js +68 -0
  48. package/dist/src/redteam/getCompetitorTests.js.map +1 -0
  49. package/dist/src/redteam/index.d.ts.map +1 -1
  50. package/dist/src/redteam/index.js +14 -1
  51. package/dist/src/redteam/index.js.map +1 -1
  52. package/dist/src/tableOutput.html +8 -2
  53. package/dist/src/types.d.ts +1 -1
  54. package/dist/src/types.d.ts.map +1 -1
  55. package/dist/src/util.js +3 -3
  56. package/dist/src/util.js.map +1 -1
  57. package/dist/src/web/nextui/404/index.html +1 -1
  58. package/dist/src/web/nextui/404.html +1 -1
  59. package/dist/src/web/nextui/_next/static/STCsYzxWQkxCplFZzdxnf/_buildManifest.js +1 -0
  60. package/dist/src/web/nextui/_next/static/chunks/113-1056b5f87446395e.js +1 -0
  61. package/dist/src/web/nextui/_next/static/chunks/133-1318f46ed801a49d.js +6 -0
  62. package/dist/src/web/nextui/_next/static/chunks/181-06646476e609c306.js +1 -0
  63. package/dist/src/web/nextui/_next/static/chunks/21-b6c126c8ac7d9c5e.js +1 -0
  64. package/dist/src/web/nextui/_next/static/chunks/261-1bc0898df259d0fd.js +1 -0
  65. package/dist/src/web/nextui/_next/static/chunks/308-74069d1aa02dc2dd.js +32 -0
  66. package/dist/src/web/nextui/_next/static/chunks/{235-5dedba2497d889c9.js → 339-501c32916b785ef1.js} +1 -1
  67. package/dist/src/web/nextui/_next/static/chunks/414-51e6cdc7aba4bb24.js +2 -0
  68. package/dist/src/web/nextui/_next/static/chunks/547-00556ed98de9671b.js +89 -0
  69. package/dist/src/web/nextui/_next/static/chunks/596-f3a131b7c336dd5d.js +25 -0
  70. package/dist/src/web/nextui/_next/static/chunks/602-fce79bd3bd7891e9.js +1 -0
  71. package/dist/src/web/nextui/_next/static/chunks/680-aa07f4d4d0312894.js +7 -0
  72. package/dist/src/web/nextui/_next/static/chunks/72-202cb66305c1995a.js +1 -0
  73. package/dist/src/web/nextui/_next/static/chunks/864-406abb9f68cff6a3.js +1 -0
  74. package/dist/src/web/nextui/_next/static/chunks/921-ea4bddb5c25058ea.js +44 -0
  75. package/dist/src/web/nextui/_next/static/chunks/922.b293c6bd1040dbd7.js +1 -0
  76. package/dist/src/web/nextui/_next/static/chunks/946-740c3c4d7e8acaf7.js +8 -0
  77. package/dist/src/web/nextui/_next/static/chunks/975-41f6ad20b4031b30.js +1 -0
  78. package/dist/src/web/nextui/_next/static/chunks/app/auth/login/page-2daaaf4e1f6912b3.js +1 -0
  79. package/dist/src/web/nextui/_next/static/chunks/app/auth/signup/page-23ca04075bd65316.js +1 -0
  80. package/dist/src/web/nextui/_next/static/chunks/app/datasets/page-f93e740e9cc7a725.js +1 -0
  81. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/not-found-366629541fd598e9.js +1 -0
  82. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/page-22c19073b27dd6df.js +1 -0
  83. package/dist/src/web/nextui/_next/static/chunks/app/eval/page-4922cdb6e1b51bb5.js +1 -0
  84. package/dist/src/web/nextui/_next/static/chunks/app/{layout-844906ca58c0d644.js → layout-0afd14c99b2fc9eb.js} +1 -1
  85. package/dist/src/web/nextui/_next/static/chunks/app/page-ceb22f8e1a2af9dc.js +1 -0
  86. package/dist/src/web/nextui/_next/static/chunks/app/progress/page-1129b810645defc6.js +1 -0
  87. package/dist/src/web/nextui/_next/static/chunks/app/prompts/page-eb6647787729eb01.js +1 -0
  88. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-ac7422e078abdda3.js +1 -0
  89. package/dist/src/web/nextui/_next/static/chunks/ca377847-26b462611379a4f7.js +6 -0
  90. package/dist/src/web/nextui/_next/static/chunks/{b6261da7-08dd8cb380ab7859.js → fd9d1056-a95b789c94c05ff6.js} +2 -2
  91. package/dist/src/web/nextui/_next/static/chunks/{framework-b292a8c542627b4d.js → framework-8883d1e9be70c3da.js} +4 -4
  92. package/dist/src/web/nextui/_next/static/chunks/main-app-581ccf0003955b21.js +1 -0
  93. package/dist/src/web/nextui/_next/static/chunks/main-b311752d7554d977.js +1 -0
  94. package/dist/src/web/nextui/_next/static/chunks/pages/_app-52924524f99094ab.js +1 -0
  95. package/dist/src/web/nextui/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js +1 -0
  96. package/dist/src/web/nextui/_next/static/chunks/webpack-dda6d83859d5cd2c.js +1 -0
  97. package/dist/src/web/nextui/auth/login/index.html +1 -1
  98. package/dist/src/web/nextui/auth/login/index.txt +5 -5
  99. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  100. package/dist/src/web/nextui/auth/signup/index.txt +5 -5
  101. package/dist/src/web/nextui/datasets/index.html +1 -1
  102. package/dist/src/web/nextui/datasets/index.txt +5 -5
  103. package/dist/src/web/nextui/eval/index.html +1 -1
  104. package/dist/src/web/nextui/eval/index.txt +5 -5
  105. package/dist/src/web/nextui/index.html +1 -1
  106. package/dist/src/web/nextui/index.txt +4 -4
  107. package/dist/src/web/nextui/progress/index.html +1 -1
  108. package/dist/src/web/nextui/progress/index.txt +5 -5
  109. package/dist/src/web/nextui/prompts/index.html +1 -1
  110. package/dist/src/web/nextui/prompts/index.txt +5 -5
  111. package/dist/src/web/nextui/setup/index.html +2 -2
  112. package/dist/src/web/nextui/setup/index.txt +6 -6
  113. package/package.json +56 -48
  114. package/dist/src/web/nextui/_next/static/chunks/106-1dceaa80df396865.js +0 -44
  115. package/dist/src/web/nextui/_next/static/chunks/107-ffb99760e0fb68f2.js +0 -1
  116. package/dist/src/web/nextui/_next/static/chunks/189-b6f910f4b701335b.js +0 -1
  117. package/dist/src/web/nextui/_next/static/chunks/1a53ab81-6d64be52a06b7c39.js +0 -6
  118. package/dist/src/web/nextui/_next/static/chunks/215-63edfe1b1ae625e4.js +0 -1
  119. package/dist/src/web/nextui/_next/static/chunks/226-023620d1bff22d99.js +0 -1
  120. package/dist/src/web/nextui/_next/static/chunks/249-d4e0e50561ef8185.js +0 -1
  121. package/dist/src/web/nextui/_next/static/chunks/278.60b6d47e5a936f0b.js +0 -1
  122. package/dist/src/web/nextui/_next/static/chunks/339-132502fa6d7b24c7.js +0 -1
  123. package/dist/src/web/nextui/_next/static/chunks/383-e19d78b51fa58f1b.js +0 -1
  124. package/dist/src/web/nextui/_next/static/chunks/525-014890ddea6714cf.js +0 -32
  125. package/dist/src/web/nextui/_next/static/chunks/629-2358b4dcbf84d053.js +0 -1
  126. package/dist/src/web/nextui/_next/static/chunks/631-efb1476abf72c1ff.js +0 -6
  127. package/dist/src/web/nextui/_next/static/chunks/635-d64ddf71d262749b.js +0 -97
  128. package/dist/src/web/nextui/_next/static/chunks/690-618c46a7158870af.js +0 -6
  129. package/dist/src/web/nextui/_next/static/chunks/730-9147ccb0626b2f6b.js +0 -25
  130. package/dist/src/web/nextui/_next/static/chunks/733-3e9ca9d39ddcb04c.js +0 -8
  131. package/dist/src/web/nextui/_next/static/chunks/770-fdb322f705e07d72.js +0 -2
  132. package/dist/src/web/nextui/_next/static/chunks/887.b3cb35585a6859bd.js +0 -1
  133. package/dist/src/web/nextui/_next/static/chunks/app/auth/login/page-4c3e963c95f17d0d.js +0 -1
  134. package/dist/src/web/nextui/_next/static/chunks/app/auth/signup/page-e5ee780ad914444b.js +0 -1
  135. package/dist/src/web/nextui/_next/static/chunks/app/datasets/page-b661c8d02af86f57.js +0 -1
  136. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/not-found-07e0dc7d48d31372.js +0 -1
  137. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/page-b654fa5327065d04.js +0 -1
  138. package/dist/src/web/nextui/_next/static/chunks/app/eval/page-dc583966b824a0ac.js +0 -1
  139. package/dist/src/web/nextui/_next/static/chunks/app/page-4226f7bf0849864a.js +0 -1
  140. package/dist/src/web/nextui/_next/static/chunks/app/progress/page-5a4a4149e2361872.js +0 -1
  141. package/dist/src/web/nextui/_next/static/chunks/app/prompts/page-c5878f6e2cbee318.js +0 -1
  142. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-bab30b8e8c1e30f8.js +0 -1
  143. package/dist/src/web/nextui/_next/static/chunks/main-850014bd889b28b2.js +0 -1
  144. package/dist/src/web/nextui/_next/static/chunks/main-app-9a21304a7d2c7cca.js +0 -1
  145. package/dist/src/web/nextui/_next/static/chunks/pages/_app-19a521e9841c5ed8.js +0 -1
  146. package/dist/src/web/nextui/_next/static/chunks/pages/_error-d23f5e48cbe51f4e.js +0 -1
  147. package/dist/src/web/nextui/_next/static/chunks/webpack-0a139c96915bebb5.js +0 -1
  148. package/dist/src/web/nextui/_next/static/sgzwM0-e5LLzjj48n4_x5/_buildManifest.js +0 -1
  149. /package/dist/src/web/nextui/_next/static/{sgzwM0-e5LLzjj48n4_x5 → STCsYzxWQkxCplFZzdxnf}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[181],{2810:function(e,t,n){"use strict";let s,l;async function a(){if(s||(l||(l=fetch("/api/config").then(e=>e.json()).then(e=>s=e.apiBaseUrl)),await l),void 0===s)throw Error("API base URL is undefined");return s}n.d(t,{b:function(){return a}})},6181:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return e$}});var s=n(7437),l=n(2265),a=n(2130),i=n(6882),r=n(3388),o=n(4033),c=n(3082),d=n(1116),u=n(8440),p=n(6507),h=n(5551),m=n(7760),x=n(6446),g=n(3391),j=n(4081),v=n(3226),f=n(819),b=n(8212),y=n(8864),Z=n(3375),w=n(9114),C=n(923),k=n(654),S=n(3295),N=n(2467),R=n(3457),I=n(1975),E=n(8276),P=n(9605),O=n(9190),F=n(2053),T=n(8339),M=n(2481),L=n(9394),D=n(6337),U=n(4660),A=n(4810),W=n(7204);let _={getItem:async e=>await (0,W.U2)(e)||null,setItem:async(e,t)=>{await (0,W.t8)(e,t)},removeItem:async e=>{await (0,W.IV)(e)}},z=(0,U.Ue)()((0,A.tJ)((e,t)=>({evalId:null,setEvalId:t=>e(()=>({evalId:t})),table:null,setTable:t=>e(()=>({table:t})),config:null,setConfig:t=>e(()=>({config:t})),maxTextLength:250,setMaxTextLength:t=>e(()=>({maxTextLength:t})),wordBreak:"break-word",setWordBreak:t=>e(()=>({wordBreak:t})),showInferenceDetails:!0,setShowInferenceDetails:t=>e(()=>({showInferenceDetails:t})),renderMarkdown:!1,setRenderMarkdown:t=>e(()=>({renderMarkdown:t})),prettifyJson:!1,setPrettifyJson:t=>e(()=>({prettifyJson:t})),showPrompts:!1,setShowPrompts:t=>e(()=>({showPrompts:t}))}),{name:"ResultsViewStorage",storage:(0,A.FL)(()=>_)}));var V=function(){let{table:e,config:t,evalId:n}=z(),[a,i]=l.useState(!1),r=(e,t)=>{let n=URL.createObjectURL(e),s=document.createElement("a");s.href=n,s.download=t,document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(n)},o=()=>{i(!1)};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(w.Z,{onClick:()=>{i(!0)},children:[(0,s.jsx)(y.Z,{children:(0,s.jsx)(M.Z,{fontSize:"small"})}),(0,s.jsx)(b.Z,{children:"Download"})]}),(0,s.jsx)(L.Z,{onClose:o,open:a,children:(0,s.jsx)(D.Z,{children:(0,s.jsxs)(R.Z,{direction:"column",spacing:2,sx:{width:"100%"},children:[(0,s.jsx)(h.Z,{onClick:()=>{let e=T.default.dump(t),n=new Blob([e],{type:"text/yaml;charset=utf-8"});r(n,"promptfooconfig.yaml"),o()},startIcon:(0,s.jsx)(M.Z,{}),fullWidth:!0,sx:{justifyContent:"flex-start"},children:"Download YAML Config"}),(0,s.jsx)(h.Z,{onClick:()=>{if(!e){alert("No table data");return}let t=new Blob([JSON.stringify(e,null,2)],{type:"application/json"});r(t,"".concat(n,"-table.json")),o()},startIcon:(0,s.jsx)(M.Z,{}),fullWidth:!0,sx:{justifyContent:"flex-start"},children:"Download Table JSON"}),(0,s.jsx)(h.Z,{onClick:()=>{if(!e){alert("No table data");return}let t=e.body.map((t,n)=>({chosen:t.outputs.filter(e=>e.pass).map(e=>e.text),rejected:t.outputs.filter(e=>!e.pass).map(e=>e.text),vars:t.test.vars,providers:e.head.prompts.map(e=>e.provider),prompts:e.head.prompts.map(e=>e.label||e.display||e.raw)})),s=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});r(s,"".concat(n,"-dpo.json")),o()},startIcon:(0,s.jsx)(M.Z,{}),fullWidth:!0,sx:{justifyContent:"flex-start"},children:"Download DPO JSON"})]})})})]})},B=n(6704),J=n(1797),H=n(1101),G=n(9872),X=n(2653),Y=n(3533),q=n(4740);let $=["#fd7f6f","#7eb0d5","#b2e061","#bd7ebe","#ffb55a","#ffee65","#beb9db","#fdcce5","#8bd3c7"];function K(e){let{table:t}=e,n=(0,l.useRef)(null),a=(0,l.useRef)(null);return(0,l.useEffect)(()=>{if(!n.current)return;a.current&&a.current.destroy();let e=t.body.flatMap(e=>e.outputs.map(e=>e.score)),s=Math.min(...e),l=(Math.ceil(Math.max(...e))-Math.floor(s))/10,i=Array.from({length:11},(e,t)=>parseFloat((Math.floor(s)+t*l).toFixed(2))),r=t.head.prompts.map((e,n)=>{let s=t.body.flatMap(e=>e.outputs[n].score),a=i.map(e=>s.filter(t=>t>=e&&t<e+l).length);return{label:"Column ".concat(n+1),data:a,backgroundColor:$[n%$.length]}});a.current=new B.kL(n.current,{type:"bar",data:{labels:i,datasets:r},options:{animation:!1,plugins:{title:{display:!0,text:"Score Distribution"},legend:{display:!1},tooltip:{callbacks:{title:function(e){let t=e[0].datasetIndex;return"Column ".concat(t+1)},label:function(e){let t=e.dataIndex,n=i[t],s=i[t+1];return s?"".concat(n," <= score < ").concat(s):"".concat(n," <= score")}}}}}})},[t]),(0,s.jsx)("canvas",{ref:n,style:{maxHeight:"300px"}})}function Q(e){let{table:t}=e,n=(0,l.useRef)(null),a=(0,l.useRef)(null);return(0,l.useEffect)(()=>{if(!n.current)return;a.current&&a.current.destroy();let e=t.head.prompts.map((e,n)=>{let s=t.body.flatMap(e=>e.outputs[n]),l=s.filter(e=>e.pass).length,a=l/s.length*100;return{label:"Column ".concat(n+1),data:[a],backgroundColor:$[n%$.length]}});a.current=new B.kL(n.current,{type:"bar",data:{labels:["Pass Rate (%)"],datasets:e},options:{animation:!1,plugins:{title:{display:!0,text:"Pass rate"},legend:{display:!0}}}})},[t]),(0,s.jsx)("canvas",{ref:n,style:{maxHeight:"300px"}})}function ee(e){let{table:t}=e,n=(0,l.useRef)(null),a=(0,l.useRef)(null),[i,r]=(0,l.useState)(0),[o,c]=(0,l.useState)(1),[d,u]=(0,l.useState)(!1);return(0,l.useEffect)(()=>{if(!n.current)return;a.current&&a.current.destroy();let e=t.body.flatMap(e=>e.outputs.map(e=>e.score)),s=Math.min(...e),l=Math.max(...e),r=t.body.map(e=>{let t=e.outputs[i].score,n=e.outputs[o].score;return{x:t,y:n,backgroundColor:n>t?"green":n<t?"red":"gray"}});a.current=new B.kL(n.current,{type:"scatter",data:{datasets:[{data:r,backgroundColor:r.map(e=>e.backgroundColor)},{type:"line",data:[{x:s,y:s},{x:l,y:l}],borderColor:"gray",borderWidth:1,borderDash:[5,5],pointRadius:0}]},options:{animation:!1,plugins:{legend:{display:!1},tooltip:{callbacks:{label:function(e){let n=t.body[e.dataIndex],s=n.outputs[0].text,l=n.outputs[1].text;return s.length>30&&(s=s.substring(0,30)+"..."),l.length>30&&(l=l.substring(0,30)+"..."),"Output 1: ".concat(s,"\nOutput 2: ").concat(l)}}}},scales:{x:{title:{display:!0,text:"Prompt ".concat(i+1," Score")},ticks:{callback:function(e,t,n){let s=String(Math.round(100*Number(e)));return t===n.length-1&&(s+="%"),s}}},y:{title:{display:!0,text:"Prompt ".concat(o+1," Score")},ticks:{callback:function(e,t,n){let s=String(Math.round(100*Number(e)));return t===n.length-1&&(s+="%"),s}}}}}})},[t,i,o]),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(L.Z,{open:d,onClose:()=>u(!1),children:[(0,s.jsx)(J.Z,{children:"Compare prompt outputs"}),(0,s.jsxs)(D.Z,{children:[(0,s.jsx)(j.Z,{sx:{m:1,minWidth:120},children:(0,s.jsx)(k.Z,{value:i,onChange:e=>r(Number(e.target.value)),children:t.head.prompts.map((e,t)=>(0,s.jsxs)(w.Z,{value:t,children:["Prompt ",t+1]},t))})}),(0,s.jsx)(j.Z,{sx:{m:1,minWidth:120},children:(0,s.jsx)(k.Z,{value:o,onChange:e=>c(Number(e.target.value)),children:t.head.prompts.map((e,t)=>(0,s.jsxs)(w.Z,{value:t,children:["Prompt ",t+1]},t))})})]})]}),(0,s.jsx)("canvas",{ref:n,style:{maxHeight:"300px",cursor:"pointer"},onClick:()=>u(!0)})]})}function et(e){let{table:t}=e,n=(0,l.useRef)(null),a=(0,l.useRef)(null);return(0,l.useEffect)(()=>{var e;if(!n.current)return;a.current&&a.current.destroy();let s=Object.keys((null===(e=t.head.prompts[0].metrics)||void 0===e?void 0:e.namedScores)||{}),l=t.head.prompts.map((e,n)=>{let l=s.map(n=>{var s;let l=(null===(s=e.metrics)||void 0===s?void 0:s.namedScores[n])||0,a=Math.max(...t.head.prompts.map(e=>{var t;return(null===(t=e.metrics)||void 0===t?void 0:t.namedScores[n])||0}));return l/a});return{label:"".concat(t.head.prompts[n].provider),data:l,backgroundColor:$[n%$.length]}});a.current=new B.kL(n.current,{type:"bar",data:{labels:s,datasets:l},options:{scales:{x:{grid:{display:!1}},y:{ticks:{callback:function(e,t,n){let s=String(Math.round(100*Number(e)));return t===n.length-1&&(s+="%"),s}}}},plugins:{tooltip:{callbacks:{title:function(e){return e[0].dataset.label},label:function(e){let t=e.parsed.y;return"".concat(s[e.dataIndex],": ").concat((100*t).toFixed(2),"% pass rate")}}}}}})},[t]),(0,s.jsx)("canvas",{ref:n,style:{maxHeight:"300px"}})}B.kL.register(B.vn,B.ST,B.ho,B.uw,B.f$,B.ZL,B.jn,B.od,B.u,B.wL);var en=l.memo(function(e){var t;let{columnVisibility:n}=e,a=(0,H.Z)();B.kL.defaults.color="dark"===a.palette.mode?"#aaa":"#666";let[i,r]=(0,l.useState)(!0),{table:o}=z();if(!o||!i||o.head.prompts.length<2)return null;let c=o.body.flatMap(e=>e.outputs.map(e=>e.score)),d=new Set(c);return 1===d.size?null:(0,s.jsx)(q.SV,{fallback:null,children:(0,s.jsxs)(G.Z,{style:{position:"relative",padding:a.spacing(3)},children:[(0,s.jsx)(X.Z,{style:{position:"absolute",right:0,top:0},onClick:()=>r(!1),children:(0,s.jsx)(Y.Z,{})}),(0,s.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",width:"100%"},children:[(0,s.jsx)("div",{style:{width:"33%"},children:(0,s.jsx)(Q,{table:o})}),(0,s.jsx)("div",{style:{width:"33%"},children:d.size<=3&&Object.keys((null===(t=o.head.prompts[0].metrics)||void 0===t?void 0:t.namedScores)||{}).length>1?(0,s.jsx)(et,{table:o}):(0,s.jsx)(K,{table:o})}),(0,s.jsx)("div",{style:{width:"33%"},children:(0,s.jsx)(ee,{table:o})})]})]})})}),es=n(9116);n(5777);var el=n(3425),ea=n(7660),ei=n(3216),er=n(182),eo=n(5391),ec=n(1396),ed=n.n(ec),eu=n(2834),ep=e=>{let{open:t,contextText:n,commentText:l,onClose:a,onSave:i,onChange:r}=e;return(0,s.jsxs)(L.Z,{open:t,onClose:a,fullWidth:!0,maxWidth:"sm",children:[(0,s.jsx)(J.Z,{children:"Edit Comment"}),(0,s.jsxs)(D.Z,{children:[(0,s.jsx)(p.Z,{sx:{backgroundColor:"#f0f0f0",padding:2,marginBottom:2},children:n}),(0,s.jsx)(I.Z,{autoFocus:!0,margin:"dense",type:"text",fullWidth:!0,multiline:!0,rows:4,value:l,onChange:e=>r(e.target.value)})]}),(0,s.jsxs)(eu.Z,{children:[(0,s.jsx)(h.Z,{onClick:i,color:"primary",variant:"contained",children:"Save"}),(0,s.jsx)(h.Z,{onClick:a,color:"primary",children:"Cancel"})]})]})};n(8715);var eh=e=>{let{lookup:t,onSearchTextChange:n}=e;return t&&Object.keys(t).length?(0,s.jsx)("div",{className:"custom-metric-container",children:Object.entries(t).map(e=>{let[t,l]=e;return t&&void 0!==l?(0,s.jsxs)("span",{onClick:()=>n&&n(t),className:n?"clickable":"",children:[t,": ",l.toFixed(2)]},t):null})}):null},em=n(5446),ex=n(9329),eg=n(4719),ej=n(3701),ev=n(9279),ef=n(666),eb=n(5795),ey=n(6988),eZ=n(4147);function ew(e){let{gradingResults:t}=e;return t?(0,s.jsxs)(p.Z,{mt:2,children:[(0,s.jsx)(v.Z,{variant:"subtitle1",children:"Assertions"}),(0,s.jsx)(eb.Z,{children:(0,s.jsxs)(ej.Z,{children:[(0,s.jsx)(ey.Z,{children:(0,s.jsxs)(eZ.Z,{children:[(0,s.jsx)(ef.Z,{style:{fontWeight:"bold"},children:"Pass"}),(0,s.jsx)(ef.Z,{style:{fontWeight:"bold"},children:"Score"}),(0,s.jsx)(ef.Z,{style:{fontWeight:"bold"},children:"Type"}),(0,s.jsx)(ef.Z,{style:{fontWeight:"bold"},children:"Value"}),(0,s.jsx)(ef.Z,{style:{fontWeight:"bold"},children:"Reason"})]})}),(0,s.jsx)(ev.Z,{children:t.map((e,t)=>{var n,l;return(0,s.jsxs)(eZ.Z,{children:[(0,s.jsx)(ef.Z,{children:e.pass?"✅":"❌"}),(0,s.jsx)(ef.Z,{children:e.score.toFixed(2)}),(0,s.jsx)(ef.Z,{children:(null===(n=e.assertion)||void 0===n?void 0:n.type)||""}),(0,s.jsx)(ef.Z,{style:{whiteSpace:"pre-wrap"},children:(null===(l=e.assertion)||void 0===l?void 0:l.value)?String(e.assertion.value):"-"}),(0,s.jsx)(ef.Z,{style:{whiteSpace:"pre-wrap"},children:e.reason})]},t)})})]})})]}):null}function eC(e){let{open:t,onClose:n,prompt:a,provider:i,output:r,gradingResults:o}=e,[c,d]=(0,l.useState)(!1);(0,l.useEffect)(()=>{d(!1)},[a]);let u=async e=>{await navigator.clipboard.writeText(e),d(!0)};return(0,s.jsxs)(L.Z,{open:t,onClose:n,fullWidth:!0,maxWidth:"lg",children:[(0,s.jsxs)(J.Z,{children:["Details",i&&": ".concat(i)]}),(0,s.jsxs)(D.Z,{children:[(0,s.jsxs)(p.Z,{mb:2,children:[(0,s.jsx)(v.Z,{variant:"subtitle1",style:{marginBottom:"1rem"},children:"Prompt"}),(0,s.jsx)(em.u,{readOnly:!0,value:a,style:{width:"100%",padding:"0.75rem"},maxRows:20}),(0,s.jsx)(X.Z,{onClick:()=>u(a),style:{position:"absolute",right:"10px",top:"10px"},children:c?(0,s.jsx)(eg.Z,{}):(0,s.jsx)(ex.Z,{})})]}),r&&(0,s.jsxs)(p.Z,{my:2,children:[(0,s.jsx)(v.Z,{variant:"subtitle1",style:{marginBottom:"1rem",marginTop:"1rem"},children:"Output"}),(0,s.jsx)(em.u,{readOnly:!0,maxRows:20,value:r,style:{width:"100%",padding:"0.75rem"}})]}),(0,s.jsx)(ew,{gradingResults:o})]}),(0,s.jsx)(eu.Z,{children:(0,s.jsx)(h.Z,{onClick:n,children:"Close"})})]})}var ek=n(9396),eS=n(4173),eN=function(){let e=(0,H.Z)(),[t,n]=l.useState(!1),a=()=>{n(!1)};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{style:{textAlign:"center",marginTop:20,marginBottom:40},children:(0,s.jsx)(h.Z,{variant:"text",color:"primary",startIcon:(0,s.jsx)(ek.Z,{}),onClick:()=>{n(!0)},children:"Generate test cases"})}),(0,s.jsxs)(L.Z,{open:t,onClose:a,children:[(0,s.jsx)(J.Z,{children:"Run on Command Line"}),(0,s.jsx)(D.Z,{children:(0,s.jsxs)(eS.Z,{children:[(0,s.jsx)("p",{children:"This feature is in beta. UI coming soon."}),(0,s.jsxs)("p",{children:["Run"," ",(0,s.jsx)(p.Z,{component:"code",sx:{backgroundColor:"dark"===e.palette.mode?"#424242":"#f0f0f0",padding:"2px 4px",borderRadius:"4px"},children:"promptfoo generate dataset"}),"to generate test cases on the command line."]})]})}),(0,s.jsx)(eu.Z,{children:(0,s.jsx)(h.Z,{onClick:a,color:"primary",children:"Close"})})]})]})},eR=n(2810);n(2604);let eI=(0,l.createContext)(void 0),eE=e=>{let{children:t}=e,[n,a]=(0,l.useState)(!1);return(0,l.useEffect)(()=>{let e=e=>{"Shift"===e.key&&a(!0)},t=e=>{"Shift"===e.key&&a(!1)};return window.addEventListener("keydown",e),window.addEventListener("keyup",t),()=>{window.removeEventListener("keydown",e),window.removeEventListener("keyup",t)}},[]),(0,s.jsx)(eI.Provider,{value:n,children:t})},eP=()=>{let e=(0,l.useContext)(eI);if(void 0===e)throw Error("useShiftKey must be used within a ShiftKeyProvider");return e};function eO(e){return"string"==typeof e||"number"==typeof e?e.toString().length:Array.isArray(e)?e.reduce((e,t)=>e+eO(t),0):l.isValidElement(e)&&e.props.children?l.Children.toArray(e.props.children).reduce((e,t)=>e+eO(t),0):0}let eF=l.memo(function(e){let t,{text:n,maxLength:a}=e,[i,r]=l.useState(!0),o=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if("string"==typeof e||"number"==typeof e){let n=e.toString();return n.slice(0,a-t)}if(Array.isArray(e)){let n=[],s=t;for(let t of e){let e=eO(t);if(s+e>a){n.push(o(t,s));break}n.push(t),s+=e}return n}if(l.isValidElement(e)&&e.props.children){let n=eO(e.props.children);if(n>a-t)return l.cloneElement(e,{...e.props,children:o(e.props.children,t)})}return e};t=l.isValidElement(n)||"string"==typeof n?n:JSON.stringify(n);let c=i?o(t):t,d=eO(t)>a;return(0,s.jsxs)("div",{style:{cursor:d?"pointer":"normal"},onClick:()=>{r(!i)},children:[c,i&&eO(t)>a&&(0,s.jsx)("span",{children:"..."})]})}),eT=l.memo(function(e){var t,n,a,i,r,o,c,d,u,p,h,m,x;let g,j,v,f,b,y,{output:Z,maxTextLength:w,rowIndex:C,promptIndex:k,onRating:S,firstOutput:N,showDiffs:R,searchText:I,showStats:P}=e,{renderMarkdown:O,prettifyJson:F,showPrompts:T}=z(),[M,L]=l.useState(!1),[D,U]=l.useState(!1),[A,W]=l.useState(null),_=e=>{W(e||null),U(!D)},[V,B]=l.useState(!1),[J,H]=l.useState((null===(t=Z.gradingResult)||void 0===t?void 0:t.comment)||""),G=()=>{B(!0)},X="string"==typeof Z.text?Z.text:JSON.stringify(Z.text),Y=[];if(!Z.pass&&X.includes("---")?X=(Y=X.split("---")).slice(1).join("---"):Y=[X],R&&N){let e,t="string"==typeof N.text?N.text:JSON.stringify(N.text);t.includes("---")&&(t=t.split("---").slice(1).join("---"));try{JSON.parse(t),JSON.parse(X),e=(0,es.CT)(t,X)}catch(n){e=t.includes(". ")&&X.includes(". ")?(0,es.SY)(t,X):(0,es.NV)(t,X)}g=(0,s.jsx)(s.Fragment,{children:e.map((e,t)=>e.added?(0,s.jsx)("ins",{children:e.value},t):e.removed?(0,s.jsx)("del",{children:e.value},t):(0,s.jsx)("span",{children:e.value},t))})}if(I)try{let e;let t=RegExp(I,"gi"),n=[];for(;null!==(e=t.exec(X));)n.push({start:e.index,end:t.lastIndex});g=(0,s.jsx)(s.Fragment,{children:n.length>0?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{children:X.substring(0,n[0].start)},"text-before"),n.map((e,t)=>(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"search-highlight",children:X.substring(e.start,e.end)},"match-"+t),(0,s.jsx)("span",{children:X.substring(e.end,n[t+1]?n[t+1].start:X.length)},"text-after-"+t)]}))]}):(0,s.jsx)("span",{children:X},"no-match")})}catch(e){console.error("Invalid regular expression:",e.message)}else if(O)g=(0,s.jsx)(el.U,{components:{img:e=>{let{src:t,alt:n}=e;return(0,s.jsx)("img",{loading:"lazy",src:t,alt:n,onClick:()=>_(t),style:{cursor:"pointer"}})}},children:X});else if(F)try{g=(0,s.jsx)("pre",{children:JSON.stringify(JSON.parse(X),null,2)})}catch(e){}let q=l.useCallback(e=>{var t;S(e,void 0,null===(t=Z.gradingResult)||void 0===t?void 0:t.comment)},[S,null===(n=Z.gradingResult)||void 0===n?void 0:n.comment]),$=l.useCallback(()=>{let e=prompt("Set test score (0.0 - 1.0):",String(Z.score));if(null!==e){let n=parseFloat(e);if(!isNaN(n)&&n>=0&&n<=1){var t;S(void 0,n,null===(t=Z.gradingResult)||void 0===t?void 0:t.comment)}else alert("Invalid score. Please enter a value between 0.0 and 1.0.")}},[S,Z.score,null===(a=Z.gradingResult)||void 0===a?void 0:a.comment]),[K,Q]=l.useState(!1),ee=l.useCallback(()=>{navigator.clipboard.writeText(Z.text),Q(!0)},[Z.text]);if(Z.latencyMs&&(v=(0,s.jsxs)("span",{children:[Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(Z.latencyMs)," ms"]})),null===(i=Z.tokenUsage)||void 0===i?void 0:i.completion){let e=Z.tokenUsage.completion/(Z.latencyMs/1e3);f=(0,s.jsx)("span",{children:Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e)})}if(Z.cost&&(b=(0,s.jsxs)("span",{children:["$",Z.cost.toPrecision(2)]})),null===(r=Z.tokenUsage)||void 0===r?void 0:r.cached)j=(0,s.jsxs)("span",{children:[Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(Z.tokenUsage.cached)," ","(cached)"]});else if(null===(o=Z.tokenUsage)||void 0===o?void 0:o.total){let e=Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(null!==(h=Z.tokenUsage.prompt)&&void 0!==h?h:0),t=Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(null!==(m=Z.tokenUsage.completion)&&void 0!==m?m:0),n=Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(Z.tokenUsage.total);j=(0,s.jsx)(E.Z,{title:"".concat(e," prompt tokens + ").concat(t," completion tokens = ").concat(n," total"),children:(0,s.jsxs)("span",{children:[n,("0"!==e||"0"!==t)&&" (".concat(e,"+").concat(t,")")]})})}let et=(null===(c=Z.gradingResult)||void 0===c?void 0:c.comment)&&"!highlight"!==Z.gradingResult.comment?(0,s.jsx)("div",{className:"comment",onClick:G,children:Z.gradingResult.comment}):null,en=P?(0,s.jsxs)("div",{className:"cell-detail",children:[j&&(0,s.jsxs)("div",{className:"stat-item",children:[(0,s.jsx)("strong",{children:"Tokens:"})," ",j]}),v&&(0,s.jsxs)("div",{className:"stat-item",children:[(0,s.jsx)("strong",{children:"Latency:"})," ",v]}),f&&(0,s.jsxs)("div",{className:"stat-item",children:[(0,s.jsx)("strong",{children:"Tokens/Sec:"})," ",f]}),b&&(0,s.jsxs)("div",{className:"stat-item",children:[(0,s.jsx)("strong",{children:"Cost:"})," ",b]})]}):null,ea=eP(),ei=(0,s.jsxs)("div",{className:"cell-actions",children:[ea&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"action",onClick:ee,onMouseDown:e=>e.preventDefault(),children:(0,s.jsx)(E.Z,{title:"Copy output to clipboard",children:(0,s.jsx)("span",{children:K?"✅":"\uD83D\uDCCB"})})}),(0,s.jsx)("span",{className:"action",onClick:()=>{let e;J.startsWith("!highlight")?S(void 0,void 0,e=J.slice(10).trim()):S(void 0,void 0,e=("!highlight "+J).trim()),H(e)},onMouseDown:e=>e.preventDefault(),children:(0,s.jsx)(E.Z,{title:"Toggle test highlight",children:(0,s.jsx)("span",{children:"\uD83C\uDF1F"})})})]}),Z.prompt&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"action",onClick:()=>{L(!0)},children:(0,s.jsx)(E.Z,{title:"View ouput and test details",children:(0,s.jsx)("span",{children:"\uD83D\uDD0E"})})}),(0,s.jsx)(eC,{open:M,onClose:()=>{L(!1)},prompt:Z.prompt,provider:Z.provider,gradingResults:null===(d=Z.gradingResult)||void 0===d?void 0:d.componentResults,output:X})]}),(0,s.jsx)("span",{className:"action",onClick:()=>q(!0),children:(0,s.jsx)(E.Z,{title:"Mark test passed (score 1.0)",children:(0,s.jsx)("span",{children:"\uD83D\uDC4D"})})}),(0,s.jsx)("span",{className:"action",onClick:()=>q(!1),children:(0,s.jsx)(E.Z,{title:"Mark test failed (score 0.0)",children:(0,s.jsx)("span",{children:"\uD83D\uDC4E"})})}),(0,s.jsx)("span",{className:"action",onClick:$,children:(0,s.jsx)(E.Z,{title:"Set test score",children:(0,s.jsx)("span",{children:"\uD83D\uDD22"})})}),(0,s.jsx)("span",{className:"action",onClick:G,children:(0,s.jsx)(E.Z,{title:"Edit comment",children:(0,s.jsx)("span",{children:"✏️"})})})]}),er={};(null===(u=Z.gradingResult)||void 0===u?void 0:u.comment)==="!highlight"&&(er.backgroundColor="#ffffeb");let eo=0,ec=0,ed=Z.gradingResult;if(ed?ed.componentResults?ed.componentResults.forEach(e=>{e.pass?eo++:ec++}):(eo=ed.pass?1:0,ec=ed.pass?0:1):Z.pass?eo=1:Z.pass||(ec=1),1===ec&&1===eo)y=(0,s.jsxs)(s.Fragment,{children:["".concat(ec," FAIL")," ","".concat(eo," PASS")]});else{let e="";ec>1||eo>1&&ec>0?e="".concat(ec," FAIL"):1===ec&&(e="FAIL");let t="";eo>1||ec>1&&eo>0?t="".concat(eo," PASS"):1===eo&&0===ec&&(t="PASS");let n=e&&t?" ":"";y=(0,s.jsxs)(s.Fragment,{children:[e,n,t]})}let eu=null===(x=Z.score)||0===x||1===x?"":"(".concat(x.toFixed(2),")");return(0,s.jsxs)("div",{className:"cell",style:er,children:[Z.pass?(0,s.jsx)(s.Fragment,{children:(0,s.jsxs)("div",{className:"status pass",children:[(0,s.jsxs)("div",{className:"pill",children:[y,eu&&(0,s.jsxs)("span",{className:"score",children:[" ",eu]})]}),(0,s.jsx)(eh,{lookup:Z.namedScores})]})}):(0,s.jsx)(s.Fragment,{children:(0,s.jsxs)("div",{className:"status fail",children:[(0,s.jsxs)("div",{className:"pill",children:[y,eu&&(0,s.jsxs)("span",{className:"score",children:[" ",eu]})]}),(0,s.jsx)(eh,{lookup:Z.namedScores}),(0,s.jsx)("span",{className:"fail-reason",children:null===(p=Y[0])||void 0===p?void 0:p.trim().split("\n").map((e,t)=>(0,s.jsxs)(l.Fragment,{children:[e,(0,s.jsx)("br",{})]},t))})]})}),T&&N.prompt&&(0,s.jsxs)("div",{className:"prompt",children:[(0,s.jsx)("span",{className:"pill",children:"Prompt"}),Z.prompt]}),(0,s.jsx)(eF,{text:g||X,maxLength:w}),et,en,ei,D&&A&&(0,s.jsx)("div",{className:"lightbox",onClick:()=>_(),children:(0,s.jsx)("img",{src:A,alt:"Lightbox"})}),(0,s.jsx)(ep,{open:V,contextText:Z.text,commentText:J,onClose:()=>{B(!1)},onSave:()=>{S(void 0,void 0,J),B(!1)},onChange:H})]})});function eM(e){let{text:t,maxLength:n,expandedText:a,resourceId:i,className:r}=e,[o,c]=l.useState(!1);return(0,s.jsxs)("div",{className:"".concat(r||""),children:[(0,s.jsx)(eF,{text:t,maxLength:n}),a&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(E.Z,{title:"View prompt",children:(0,s.jsx)("span",{className:"action",onClick:()=>{c(!0)},children:"\uD83D\uDD0E"})}),(0,s.jsx)(eC,{open:o,onClose:()=>{c(!1)},prompt:a}),i&&(0,s.jsx)(E.Z,{title:"View other evals and datasets for this prompt",children:(0,s.jsx)("span",{className:"action",children:(0,s.jsx)(ed(),{href:"/prompts/?id=".concat(i),target:"_blank",children:(0,s.jsx)(eo.Z,{fontSize:"small"})})})})]})]})}var eL=l.memo(function(e){let{maxTextLength:t,columnVisibility:n,wordBreak:i,filterMode:r,failureFilter:o,searchText:c,showStats:d,onFailureFilterToggle:u,onSearchTextChange:x}=e,{evalId:g,table:j,setTable:f}=z();(0,a.Z)(j,"Table should be defined");let{head:b,body:y}=j,Z=l.useCallback(async(e,t,n,s,l)=>{var a,i;let r=[...y],o={...r[e]},c=[...o.outputs],d=null!=n?n:c[t].pass,u=void 0===s?n?1:0:s||0;c[t].pass=d,c[t].score=u;let p=(null===(a=c[t].gradingResult)||void 0===a?void 0:a.componentResults)||[];if(void 0!==n){let e=p.findIndex(e=>{var t;return(null===(t=e.assertion)||void 0===t?void 0:t.type)==="human"}),t={pass:d,score:u,reason:"Manual result (overrides all other grading results)",comment:l,assertion:{type:"human"}};-1!==e?p[e]=t:p.push(t)}let h={...c[t].gradingResult||{},pass:d,score:u,reason:"Manual result (overrides all other grading results)",comment:l,assertion:(null===(i=c[t].gradingResult)||void 0===i?void 0:i.assertion)||null,componentResults:p};c[t].gradingResult=h,o.outputs=c,r[e]=o;let m={head:b,body:r};f(m);try{let e=await fetch("".concat(await (0,eR.b)(),"/api/eval/").concat(g),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({table:m})});if(!e.ok)throw Error("Network response was not ok")}catch(e){console.error("Failed to update table:",e)}},[y,b,f,g]),C=Object.keys(n).length>0,S=l.useMemo(()=>{try{let e=RegExp(c,"i");return y.map((e,t)=>({...e,outputs:e.outputs.map((e,n)=>({...e,originalRowIndex:t,originalPromptIndex:n}))})).filter(t=>{let s=!0;return"failures"===r?s=t.outputs.some((e,t)=>{let s="Prompt ".concat(t+1);return o[s]&&!e.pass&&(!C||n[s])}):"different"===r?s=!t.outputs.every(e=>e.text===t.outputs[0].text):"highlights"===r&&(console.log(t.outputs[0].text),s=t.outputs.some(e=>{var t,n;return null===(n=e.gradingResult)||void 0===n?void 0:null===(t=n.comment)||void 0===t?void 0:t.startsWith("!highlight")})),!!s&&(!c||t.outputs.some(t=>{var n,s;let l="".concat(t.text," ").concat(Object.keys(t.namedScores)," ").concat((null===(n=t.gradingResult)||void 0===n?void 0:n.reason)||""," ").concat((null===(s=t.gradingResult)||void 0===s?void 0:s.comment)||"");return e.test(l)}))})}catch(e){return console.error("Invalid regular expression:",e.message),y}},[y,o,r,c,n,C]);l.useEffect(()=>{V(e=>({...e,pageIndex:0}))},[o,r,c]);let N=l.useMemo(()=>b.prompts.map((e,t)=>y.reduce((e,n)=>e+(n.outputs[t].pass?1:0),0)),[b.prompts,y]),R=l.useMemo(()=>b.prompts.map((e,t)=>y.reduce((e,n)=>{var s,l;return e+((null===(l=n.outputs[t].gradingResult)||void 0===l?void 0:null===(s=l.componentResults)||void 0===s?void 0:s.length)||0)},0)),[b.prompts,y]),E=l.useMemo(()=>b.prompts.map((e,t)=>y.reduce((e,n)=>{var s;let l=null===(s=n.outputs[t].gradingResult)||void 0===s?void 0:s.componentResults;return e+(l?l.filter(e=>e.pass).length:0)},0)),[b.prompts,y]),P=l.useMemo(()=>N.reduce((e,t,n,s)=>t>s[e]?n:e,0),[N]),O=N[P],F=l.useMemo(()=>(0,ea.Cl)(),[]),{renderMarkdown:T}=z(),M=l.useMemo(()=>b.vars.length>0?[F.group({id:"vars",header:()=>(0,s.jsx)("span",{className:"font-bold",children:"Variables"}),columns:b.vars.map((e,n)=>F.accessor(e=>e.vars[n],{id:"Variable ".concat(n+1),header:()=>(0,s.jsx)(eM,{text:e,maxLength:t,className:"font-bold"}),cell:e=>{let n=e.getValue();return(0,s.jsx)("div",{className:"cell",children:T?(0,s.jsx)(el.U,{children:n}):(0,s.jsx)(eF,{text:n,maxLength:t})})},size:50}))})]:[],[F,b.vars,t,T]),L=l.useCallback((e,t)=>S[e].outputs[t],[S]),D=l.useCallback(e=>S[e].outputs[0],[S]),U=l.useMemo(()=>[F.group({id:"prompts",header:()=>(0,s.jsx)("span",{className:"font-bold",children:"Outputs"}),columns:b.prompts.map((e,n)=>F.accessor(e=>(function(e){if("string"==typeof e){let t=e.startsWith("[PASS]"),n=e;return e.startsWith("[PASS]")?n=n.slice(6):e.startsWith("[FAIL]")&&(n=n.slice(6)),{text:n,pass:t,score:t?1:0}}return e})(e.outputs[n]),{id:"Prompt ".concat(n+1),header:()=>{var l,a,i,c,p,h,g,j;let v=N[n]&&y.length?(N[n]/y.length*100).toFixed(2):"0.00",f=N[n]===O&&0!==O,b="Prompt ".concat(n+1),Z=o[b]||!1,w=d?(0,s.jsxs)("div",{className:"prompt-detail",children:[R[n]?(0,s.jsxs)("div",{children:[(0,s.jsx)("strong",{children:"Asserts:"})," ",E[n],"/",R[n]," passed"]}):null,(null===(l=e.metrics)||void 0===l?void 0:l.totalLatencyMs)?(0,s.jsxs)("div",{children:[(0,s.jsx)("strong",{children:"Avg Latency:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.totalLatencyMs/y.length)," ","ms"]}):null,(null===(i=e.metrics)||void 0===i?void 0:null===(a=i.tokenUsage)||void 0===a?void 0:a.total)?(0,s.jsxs)("div",{children:[(0,s.jsx)("strong",{children:"Avg Tokens:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.tokenUsage.total/y.length)]}):null,(null===(c=e.metrics)||void 0===c?void 0:c.totalLatencyMs)&&(null===(h=e.metrics)||void 0===h?void 0:null===(p=h.tokenUsage)||void 0===p?void 0:p.completion)?(0,s.jsxs)("div",{children:[(0,s.jsx)("strong",{children:"Tokens/Sec:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.tokenUsage.completion/(e.metrics.totalLatencyMs/1e3))]}):null,(null===(g=e.metrics)||void 0===g?void 0:g.cost)?(0,s.jsxs)("div",{children:[(0,s.jsx)("strong",{children:"Cost:"})," $",e.metrics.cost.toPrecision(2)]}):null]}):null,C=e.provider?e.provider.split(":"):[],k=C.length>1?(0,s.jsxs)(s.Fragment,{children:[C[0],":",(0,s.jsx)("strong",{children:C.slice(1).join(":")})]}):(0,s.jsx)("strong",{children:e.provider});return(0,s.jsxs)("div",{className:"output-header",children:[(0,s.jsxs)("div",{className:"pills",children:[e.provider?(0,s.jsx)("div",{className:"provider",children:k}):null,(0,s.jsx)("div",{className:"summary",children:(0,s.jsxs)("div",{className:"highlight ".concat(f?"success":""),children:[(0,s.jsxs)("strong",{children:[v,"% passing"]})," (",N[n],"/",y.length," cases)"]})}),(null===(j=e.metrics)||void 0===j?void 0:j.namedScores)&&Object.keys(e.metrics.namedScores).length>0?(0,s.jsx)(eh,{lookup:e.metrics.namedScores,onSearchTextChange:x}):null]}),(0,s.jsx)(eM,{className:"prompt-container",text:e.label||e.display||e.raw,expandedText:e.raw,maxLength:t,resourceId:e.id}),w,"failures"===r&&(0,s.jsx)(er.Z,{sx:{"& .MuiFormControlLabel-label":{fontSize:"0.75rem"}},control:(0,s.jsx)(m.Z,{checked:Z,onChange:e=>u(b,e.target.checked)}),label:"Show failures"})]})},cell:e=>{var l,a;let i=L(e.row.index,n);return(0,s.jsx)(eT,{output:i,maxTextLength:t,rowIndex:e.row.index,promptIndex:n,onRating:Z.bind(null,null!==(l=i.originalRowIndex)&&void 0!==l?l:e.row.index,null!==(a=i.originalPromptIndex)&&void 0!==a?a:n),firstOutput:D(e.row.index),showDiffs:"different"===r,searchText:c,showStats:d})}}))})],[F,b.prompts,N,y.length,O,o,d,R,E,t,u,r,c,L,D,Z,x]),A=l.useMemo(()=>{let e=y.some(e=>e.description);return e?{accessorFn:e=>e.description||"",id:"description",header:()=>(0,s.jsx)("span",{className:"font-bold",children:"Description"}),cell:e=>(0,s.jsx)(eF,{text:String(e.getValue()),maxLength:t}),size:50}:null},[y,t]),W=l.useMemo(()=>{let e=[];return A&&e.push(A),e.push(...M,...U),e},[A,M,U]),[_,V]=l.useState({pageIndex:0,pageSize:50}),B=(0,ei.b7)({data:S,columns:W,columnResizeMode:"onChange",getCoreRowModel:(0,ea.sC)(),getPaginationRowModel:(0,ea.G_)(),state:{columnVisibility:n,pagination:_}});return(0,s.jsxs)("div",{children:[(0,s.jsxs)("table",{className:"results-table firefox-fix ".concat(t<=25?"compact":""),style:{wordBreak:i},children:[(0,s.jsx)("thead",{children:B.getHeaderGroups().map(e=>(0,s.jsx)("tr",{className:"header",children:e.headers.map(e=>(0,s.jsxs)("th",{colSpan:e.colSpan,style:{width:e.getSize()},children:[e.isPlaceholder?null:(0,ei.ie)(e.column.columnDef.header,e.getContext()),(0,s.jsx)("div",{onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler(),className:"resizer ".concat(e.column.getIsResizing()?"isResizing":"")})]},e.id))},e.id))}),(0,s.jsx)("tbody",{children:B.getRowModel().rows.map((e,t)=>{let n=!1;return(0,s.jsx)("tr",{children:e.getVisibleCells().map(e=>{let l=e.column.id.startsWith("Variable")||"description"===e.column.id,a=!l&&!n;return a&&(n=!0),(0,s.jsx)("td",{style:{width:e.column.getSize()},className:"".concat(l?"variable":""," ").concat(0!==t||l?"":"first-prompt-row"," ").concat(a?"first-prompt-col":""),children:(0,ei.ie)(e.column.columnDef.cell,e.getContext())},e.id)})},e.id)})})]}),B.getPageCount()>1&&(0,s.jsxs)(p.Z,{className:"pagination",sx:{display:"flex",alignItems:"center",gap:2},children:[(0,s.jsx)(h.Z,{onClick:()=>{V(e=>({...e,pageIndex:Math.max(e.pageIndex-1,0)})),window.scrollTo(0,0)},disabled:0===B.getState().pagination.pageIndex,variant:"contained",children:"Previous"}),(0,s.jsxs)(v.Z,{component:"span",sx:{display:"flex",alignItems:"center",gap:1},children:["Page",(0,s.jsx)(I.Z,{size:"small",type:"number",value:B.getState().pagination.pageIndex+1,onChange:e=>{let t=e.target.value?Number(e.target.value)-1:0;V(e=>({...e,pageIndex:Math.min(Math.max(t,0),B.getPageCount()-1)}))},InputProps:{style:{width:"60px",textAlign:"center"}},variant:"outlined"}),(0,s.jsxs)("span",{children:["of ",B.getPageCount()]})]}),(0,s.jsx)(h.Z,{onClick:()=>{V(e=>({...e,pageIndex:Math.min(e.pageIndex+1,B.getPageCount()-1)})),window.scrollTo(0,0)},disabled:B.getState().pagination.pageIndex+1>=B.getPageCount(),variant:"contained",children:"Next"}),(0,s.jsxs)(v.Z,{component:"span",sx:{display:"flex",alignItems:"center",gap:1},children:[(0,s.jsxs)(k.Z,{value:_.pageSize,onChange:e=>{V({pageIndex:0,pageSize:Number(e.target.value)}),window.scrollTo(0,0)},displayEmpty:!0,inputProps:{"aria-label":"Results per page"},size:"small",sx:{m:1,minWidth:80},children:[(0,s.jsx)(w.Z,{value:10,children:"10"}),(0,s.jsx)(w.Z,{value:50,children:"50"}),(0,s.jsx)(w.Z,{value:100,children:"100"}),(0,s.jsx)(w.Z,{value:500,children:"500"}),(0,s.jsx)(w.Z,{value:1e3,children:"1000"})]}),(0,s.jsx)("span",{children:"results per page"})]})]}),(0,s.jsx)(eN,{})]})}),eD=n(7175);function eU(e){let{open:t,onClose:a}=e,{config:i}=z(),r=l.useRef(null),[o,c]=l.useState(!1),[d,u]=l.useState("");l.useEffect(()=>{t&&(async()=>{let{default:e}=await Promise.resolve().then(n.bind(n,8339));u(e.dump(i))})()},[t,i]);let m=()=>{c(!1),a()};return(0,s.jsxs)(L.Z,{open:t,onClose:m,"aria-labelledby":"config-dialog-title",maxWidth:"md",fullWidth:!0,children:[(0,s.jsx)(J.Z,{id:"config-dialog-title",children:(0,s.jsxs)(p.Z,{display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,s.jsx)(v.Z,{variant:"h6",style:{flexGrow:1},children:"Config"}),(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(E.Z,{title:"Copy to clipboard",children:(0,s.jsx)(X.Z,{onClick:()=>{r.current&&(r.current.select(),document.execCommand("copy"),c(!0))},children:o?(0,s.jsx)(eg.Z,{}):(0,s.jsx)(eD.Z,{})})}),(0,s.jsx)(E.Z,{title:"Download .yaml",children:(0,s.jsx)(X.Z,{onClick:()=>{let e=new Blob([d],{type:"text/yaml;charset=utf-8"}),t=URL.createObjectURL(e),n=document.createElement("a");n.href=t,n.download="config.yaml",document.body.appendChild(n),n.click(),document.body.removeChild(n),URL.revokeObjectURL(t)},children:(0,s.jsx)(M.Z,{})})})]})]})}),(0,s.jsx)(D.Z,{children:(0,s.jsx)(v.Z,{variant:"body1",component:"div",children:(0,s.jsx)("textarea",{ref:r,readOnly:!0,value:d,style:{width:"100%",minHeight:"400px",fontFamily:"monospace",border:"1px solid #ccc"}})})}),(0,s.jsx)(eu.Z,{children:(0,s.jsx)(h.Z,{onClick:m,color:"primary",children:"Close"})})]})}var eA=e=>{let{open:t,onClose:n,shareUrl:a}=e,i=(0,l.useRef)(null),[r,o]=(0,l.useState)(!1),c=()=>{n(),o(!1)};return(0,s.jsxs)(L.Z,{open:t,onClose:c,PaperProps:{style:{minWidth:"min(660px, 100%)"}},children:[(0,s.jsx)(J.Z,{children:"Your eval is ready to share"}),(0,s.jsxs)(D.Z,{children:[(0,s.jsx)(I.Z,{inputRef:i,value:a,fullWidth:!0,InputProps:{readOnly:!0,endAdornment:(0,s.jsx)(X.Z,{onClick:()=>{i.current&&(i.current.select(),document.execCommand("copy"),o(!0))},children:r?(0,s.jsx)(eg.Z,{}):(0,s.jsx)(eD.Z,{})})}}),(0,s.jsx)(eS.Z,{sx:{fontSize:"0.75rem"},children:"Shared URLs are deleted after 2 weeks."})]}),(0,s.jsx)(eu.Z,{children:(0,s.jsx)(h.Z,{onClick:c,color:"primary",children:"Close"})})]})},eW=n(33),e_=e=>{let{open:t,onClose:n}=e,{maxTextLength:l,setMaxTextLength:a,wordBreak:i,setWordBreak:r,showInferenceDetails:o,setShowInferenceDetails:c,renderMarkdown:d,setRenderMarkdown:u,prettifyJson:x,setPrettifyJson:g,showPrompts:j,setShowPrompts:f}=z();return(0,s.jsxs)(L.Z,{open:t,onClose:n,fullWidth:!0,maxWidth:"sm",children:[(0,s.jsx)(J.Z,{children:"Table View Settings"}),(0,s.jsxs)(D.Z,{children:[(0,s.jsx)(p.Z,{children:(0,s.jsx)(E.Z,{title:"Forcing line breaks makes it easier to adjust column widths to your liking",placement:"right",children:(0,s.jsx)(er.Z,{control:(0,s.jsx)(m.Z,{checked:"break-all"===i,onChange:e=>r(e.target.checked?"break-all":"break-word")}),label:"Force line breaks"})})}),(0,s.jsx)(p.Z,{children:(0,s.jsx)(er.Z,{control:(0,s.jsx)(m.Z,{checked:d,onChange:e=>u(e.target.checked)}),label:"Render model outputs as Markdown"})}),(0,s.jsx)(p.Z,{children:(0,s.jsx)(er.Z,{control:(0,s.jsx)(m.Z,{checked:x,onChange:e=>g(e.target.checked)}),label:"Prettify JSON outputs"})}),(0,s.jsx)(p.Z,{children:(0,s.jsx)(E.Z,{title:"Show the final prompt that produced the output in each cell.",placement:"right",children:(0,s.jsx)(er.Z,{control:(0,s.jsx)(m.Z,{checked:j,onChange:e=>f(e.target.checked)}),label:"Show full prompt in output cell"})})}),(0,s.jsx)(p.Z,{children:(0,s.jsx)(E.Z,{title:"Show detailed inference statistics such as latency, tokens used, cost, etc.",placement:"right",children:(0,s.jsx)(er.Z,{control:(0,s.jsx)(m.Z,{checked:o,onChange:e=>c(e.target.checked)}),label:"Show inference details"})})}),(0,s.jsxs)(p.Z,{maxWidth:"sm",children:[(0,s.jsxs)(v.Z,{mt:2,children:["Max text length: ",l]}),(0,s.jsx)(eW.ZP,{min:25,max:1e3,value:l,onChange:(e,t)=>a(t)})]})]}),(0,s.jsx)(eu.Z,{children:(0,s.jsx)(h.Z,{onClick:n,children:"Close"})})]})},ez=n(1938),eV=n(7580);let eB=eV.env.NEXT_PUBLIC_PROMPTFOO_REMOTE_API_BASE_URL||eV.env.NEXT_PUBLIC_PROMPTFOO_BASE_URL||eV.env.PROMPTFOO_REMOTE_API_BASE_URL||"https://api.promptfoo.dev",eJ=eV.env.NEXT_PUBLIC_PROMPTFOO_BASE_URL||eV.env.PROMPTFOO_REMOTE_APP_BASE_URL||"https://app.promptfoo.dev";n(6911);let eH=(0,O.Z)(R.Z)(e=>{let{theme:t}=e;return{maxWidth:"100%",flexWrap:"wrap",[t.breakpoints.down("sm")]:{flexDirection:"column"}}});function eG(e){let{recentEvals:t,onRecentEvalSelected:n,defaultEvalId:r}=e,c=(0,o.useRouter)(),{table:R,config:O,setConfig:T,maxTextLength:M,wordBreak:L,showInferenceDetails:D,evalId:U}=z(),{setStateFromConfig:A}=(0,ez.o)(),[W,_]=l.useState(""),[B]=(0,F.Nr)(W,1e3),J=e=>{_(e)},[H,G]=l.useState({}),X=l.useCallback((e,t)=>{G(n=>({...n,[e]:t}))},[G]),[Y,q]=l.useState("all"),[$,K]=l.useState(!1),[Q,ee]=l.useState(""),[et,es]=l.useState(!1),el=async()=>{es(!0);try{let e=await fetch("".concat(eB,"/api/eval"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({data:{version:2,createdAt:new Date().toISOString(),results:{table:R},config:O}})}),{id:t}=await e.json(),n="".concat(eJ,"/eval/").concat(t);ee(n),K(!0)}catch(e){alert("Sorry, something went wrong.")}finally{es(!1)}},[ea,ei]=l.useState(!1),[er,eo]=l.useState(!1);(0,a.Z)(R,"Table data must be loaded before rendering ResultsView");let{head:ec}=R,ed=async()=>{(0,a.Z)(O,"Config must be loaded before clicking its description");let e=window.prompt("Enter new description:",O.description);if(null!==e&&e!==O.description){let t={...O,description:e};try{let e=await fetch("".concat(await (0,eR.b)(),"/api/eval/").concat(U),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({config:t})});if(!e.ok)throw Error("Network response was not ok");T(t)}catch(e){console.error("Failed to update table:",e)}}},eu=async()=>{if(window.confirm("Are you sure you want to delete this evaluation?"))try{let e=await fetch("".concat(await (0,eR.b)(),"/api/eval/").concat(U),{method:"DELETE"});if(!e.ok)throw Error("Network response was not ok");c.push("/")}catch(e){console.error("Failed to delete evaluation:",e),alert("Failed to delete evaluation")}},ep=l.useMemo(()=>[...ec.vars.map((e,t)=>({value:"Variable ".concat(t+1),label:"Var ".concat(t+1,": ").concat(ec.vars[t].length>100?ec.vars[t].slice(0,97)+"...":ec.vars[t]),group:"Variables"})),...ec.prompts.map((e,t)=>{let n=ec.prompts[t],s=n.label||n.display||n.raw;return{value:"Prompt ".concat(t+1),label:"Prompt ".concat(t+1,": ").concat(s.length>100?s.slice(0,97)+"...":s),group:"Prompts"}})],[ec.vars,ec.prompts]),[eh,em]=l.useState({}),[ex,eg]=l.useState(ep.map(e=>e.value)),[ej,ev]=l.useState(null);return(0,s.jsxs)("div",{style:{marginLeft:"1rem",marginRight:"1rem"},children:[(0,s.jsx)(p.Z,{mb:2,sx:{display:"flex",alignItems:"center"},children:(0,s.jsxs)(v.Z,{variant:"h5",sx:{flexGrow:1},children:[(0,s.jsx)("span",{className:"description",onClick:ed,children:(null==O?void 0:O.description)||U})," ",(null==O?void 0:O.description)&&(0,s.jsx)("span",{className:"description-filepath",children:U})]})}),(0,s.jsx)(p.Z,{py:"md",children:(0,s.jsxs)(eH,{direction:"row",spacing:4,alignItems:"center",children:[(0,s.jsx)(p.Z,{children:t&&t.length>0&&(0,s.jsx)(j.Z,{sx:{m:1,minWidth:200},size:"small",children:(0,s.jsx)(u.Z,{size:"small",options:t,renderOption:(e,t)=>(0,l.createElement)("li",{...e,key:t.id},t.label),style:{width:350},renderInput:e=>(0,s.jsx)(I.Z,{...e,label:"Eval run",variant:"outlined"}),defaultValue:t.find(e=>e.id===r)||t[0],onChange:(e,t)=>{t&&t.id&&n(t.id)},disableClearable:!0})})}),(0,s.jsx)(p.Z,{children:(0,s.jsxs)(j.Z,{sx:{m:1,minWidth:200,maxWidth:350},size:"small",children:[(0,s.jsx)(f.Z,{id:"visible-columns-label",children:"Columns"}),(0,s.jsx)(k.Z,{labelId:"visible-columns-label",id:"visible-columns",multiple:!0,value:ex,onChange:e=>{let{target:{value:t}}=e;eg("string"==typeof t?t.split(","):t);let n=[...ec.vars.map((e,t)=>"Variable ".concat(t+1)),...ec.prompts.map((e,t)=>"Prompt ".concat(t+1))],s={};n.forEach(e=>{s[e]=("string"==typeof t?t.split(","):t).includes(e)}),em(s)},input:(0,s.jsx)(C.Z,{label:"Visible columns"}),renderValue:e=>e.join(", "),children:ep.map(e=>(0,s.jsxs)(w.Z,{dense:!0,value:e.value,children:[(0,s.jsx)(m.Z,{checked:ex.indexOf(e.value)>-1}),(0,s.jsx)(b.Z,{primary:e.label})]},e.value))})]})}),(0,s.jsx)(p.Z,{children:(0,s.jsxs)(j.Z,{sx:{minWidth:180},size:"small",children:[(0,s.jsx)(f.Z,{id:"failure-filter-mode-label",children:"Display"}),(0,s.jsxs)(k.Z,{labelId:"filter-mode-label",id:"filter-mode",value:Y,onChange:e=>{let t=e.target.value;q(t);let n={};ec.prompts.forEach((e,s)=>{n["Prompt ".concat(s+1)]="failures"===t}),G(n)},label:"Filter",children:[(0,s.jsx)(w.Z,{value:"all",children:"Show all results"}),(0,s.jsx)(w.Z,{value:"failures",children:"Show failures only"}),(0,s.jsx)(w.Z,{value:"different",children:"Show different only"}),(0,s.jsx)(w.Z,{value:"highlights",children:"Show highlights only"})]})]})}),(0,s.jsx)(p.Z,{children:(0,s.jsx)(I.Z,{sx:{minWidth:180},size:"small",label:"Search",placeholder:"Text or regex",value:W,onChange:e=>J(e.target.value)})}),(0,s.jsx)(p.Z,{flexGrow:1}),(0,s.jsx)(p.Z,{display:"flex",justifyContent:"flex-end",children:(0,s.jsxs)(eH,{direction:"row",spacing:2,children:[(0,s.jsx)(h.Z,{color:"primary",onClick:e=>{ev(e.currentTarget)},startIcon:(0,s.jsx)(d.Z,{}),children:"Eval actions"}),O&&(0,s.jsxs)(Z.Z,{id:"eval-actions-menu",anchorEl:ej,keepMounted:!0,open:!!ej,onClose:()=>{ev(null)},children:[(0,s.jsx)(E.Z,{title:"View the configuration that defines this eval",placement:"left",children:(0,s.jsxs)(w.Z,{onClick:()=>ei(!0),children:[(0,s.jsx)(y.Z,{children:(0,s.jsx)(P.Z,{fontSize:"small"})}),"View YAML"]})}),(0,s.jsx)(E.Z,{title:"Edit this eval in the web UI",placement:"left",children:(0,s.jsxs)(w.Z,{onClick:()=>{A(O),c.push("/setup/")},children:[(0,s.jsx)(y.Z,{children:(0,s.jsx)(g.Z,{fontSize:"small"})}),"Edit Eval"]})}),(0,s.jsx)(V,{}),(null==O?void 0:O.sharing)&&(0,s.jsx)(E.Z,{title:"Generate a unique URL that others can access",placement:"left",children:(0,s.jsxs)(w.Z,{onClick:el,disabled:et,children:[(0,s.jsx)(y.Z,{children:et?(0,s.jsx)(i.Z,{size:16}):(0,s.jsx)(N.Z,{fontSize:"small"})}),"Share"]})}),(0,s.jsx)(E.Z,{title:"Delete this eval",placement:"left",children:(0,s.jsxs)(w.Z,{onClick:eu,children:[(0,s.jsx)(y.Z,{children:(0,s.jsx)(x.Z,{fontSize:"small"})}),"Delete"]})})]}),(0,s.jsx)(E.Z,{title:"Edit table view settings",placement:"bottom",children:(0,s.jsx)(h.Z,{color:"primary",onClick:()=>eo(!0),startIcon:(0,s.jsx)(S.Z,{}),children:"Table Settings"})})]})})]})}),(0,s.jsx)(en,{columnVisibility:eh}),(0,s.jsx)(eL,{maxTextLength:M,columnVisibility:eh,wordBreak:L,showStats:D,filterMode:Y,failureFilter:H,searchText:B,onFailureFilterToggle:X,onSearchTextChange:J}),(0,s.jsx)(eU,{open:ea,onClose:()=>ei(!1)}),(0,s.jsx)(eA,{open:$,onClose:()=>K(!1),shareUrl:Q}),(0,s.jsx)(e_,{open:er,onClose:()=>eo(!1)})]})}var eX=n(279);async function eY(){let e=(0,c.createClientComponentClient)(),{data:{user:t}}=await e.auth.getUser();(0,a.Z)(t,"User not logged in");let{data:n,error:s}=await e.from("EvaluationResult").select("id, createdAt").eq("user_id",t.id).order("createdAt",{ascending:!1}).limit(100);return n||[]}async function eq(e){let t=(0,c.createClientComponentClient)(),{data:n,error:s}=await t.from("EvaluationResult").select("*").eq("id",e).single();return n}function e$(e){var t;let{fetchId:n,preloadedData:c,recentEvals:d,defaultEvalId:u}=e,p=(0,o.useRouter)(),{table:h,setTable:m,setConfig:x,setEvalId:g}=z(),[j,v]=l.useState(!1),[f,b]=l.useState(!1),[y,Z]=l.useState(d||[]),w=async()=>{let e=await fetch("".concat(await (0,eR.b)(),"/api/results"),{cache:"no-store"}),t=await e.json();return Z(t.data),t.data},C=l.useCallback(async e=>{let t=await fetch("".concat(await (0,eR.b)(),"/api/results/").concat(e),{cache:"no-store"}),n=await t.json();m(n.data.results.table),x(n.data.config),g(e)},[m,x,g]),k=async e=>{eX.Ox?(v(!1),p.push("/eval/remote:".concat(encodeURIComponent(e)))):p.push("/eval/?evalId=".concat(encodeURIComponent(e)))},[S,N]=l.useState(u||(null===(t=y[0])||void 0===t?void 0:t.id)),R=(0,o.useSearchParams)(),I=R?R.get("evalId"):null;return(l.useEffect(()=>{if(I){let e=async()=>{await C(I),v(!0),N(I),w()};e()}else if(c){var e;m(null===(e=c.data.results)||void 0===e?void 0:e.table),x(c.data.config),v(!0)}else if(n){let e=async()=>{var e;let t="".concat(eB,"/api/eval/").concat(n);console.log("Fetching eval from remote server",t);let s=await fetch(t);if(!s.ok){b(!0);return}let l=await s.json();m(null===(e=l.data.results)||void 0===e?void 0:e.table),x(l.data.config),v(!0)};e()}else if(eX.T8)(0,eR.b)().then(e=>{let t=(0,r.io)(e);return t.on("init",e=>{console.log("Initialized socket connection",e),v(!0),m(null==e?void 0:e.results.table),x(null==e?void 0:e.config),w().then(e=>{var t,n;N(null===(t=e[0])||void 0===t?void 0:t.id),g(null===(n=e[0])||void 0===n?void 0:n.id)})}),t.on("update",e=>{console.log("Received data update",e),m(e.results.table),x(e.config),w().then(e=>{var t;let n=null===(t=e[0])||void 0===t?void 0:t.id;n&&(N(n),g(n))})}),()=>{t.disconnect()}});else if(eX.Ox)eY().then(e=>{Z(e.map(e=>({id:e.id,label:e.createdAt}))),e.length>0&&eq(e[0].id).then(t=>{(0,a.Z)(t,"Eval not found");let n=t.results,s=t.config;N(e[0].id),m(n.table),x(s),v(!0)})});else{let e=async()=>{let e=await w();if(!(e.length>0))return(0,s.jsx)("div",{className:"notice",children:"No evals yet. Share some evals to this server and they will appear here."});{let t=await (0,eR.b)(),n=e[0].id,s=await fetch("".concat(t,"/api/results/").concat(n)),l=await s.json();m(l.data.results.table),x(l.data.config),v(!0),N(n),g(n)}};e()}},[n,m,x,g,C,c,N,I]),f)?(0,s.jsx)("div",{className:"notice",children:"404 Eval not found"}):j&&h?(0,s.jsx)(eE,{children:(0,s.jsx)(eG,{defaultEvalId:S,recentEvals:y,onRecentEvalSelected:k})}):(0,s.jsxs)("div",{className:"notice",children:[(0,s.jsx)("div",{children:(0,s.jsx)(i.Z,{size:22})}),(0,s.jsx)("div",{children:"Loading eval data"})]})}n(5038)},279:function(e,t,n){"use strict";n.d(t,{Ox:function(){return a},T8:function(){return l},eA:function(){return i}});var s=n(7580);let l=!s.env.NEXT_PUBLIC_PROMPTFOO_BUILD_STANDALONE_SERVER,a=!!s.env.NEXT_PUBLIC_PROMPTFOO_USE_SUPABASE,i=""},1938:function(e,t,n){"use strict";n.d(t,{o:function(){return a}});var s=n(4660),l=n(4810);let a=(0,s.Ue)()((0,l.tJ)((e,t)=>({env:{},testCases:[],description:"",providers:[],prompts:[],defaultTest:{},evaluateOptions:{},setEnv:t=>e({env:t}),setTestCases:t=>e({testCases:t}),setDescription:t=>e({description:t}),setProviders:t=>e({providers:t}),setPrompts:t=>e({prompts:t}),setDefaultTest:t=>e({defaultTest:t}),setEvaluateOptions:t=>e({evaluateOptions:t}),setStateFromConfig:t=>{let n={};t.description&&(n.description=t.description||""),t.tests&&(n.testCases=t.tests),t.providers&&(n.providers=t.providers),t.prompts&&("string"==typeof t.prompts?n.prompts=[t.prompts]:Array.isArray(t.prompts)?n.prompts=t.prompts.filter(e=>"string"==typeof e&&!e.endsWith(".txt")&&!e.endsWith(".json")&&!e.endsWith(".yaml")):console.warn("Invalid prompts config",t.prompts)),t.defaultTest&&(n.defaultTest=t.defaultTest),t.evaluateOptions&&(n.evaluateOptions=t.evaluateOptions),e(n)},getTestSuite:()=>{let{description:e,testCases:n,providers:s,prompts:l,env:a}=t();return{env:a,description:e,providers:s,prompts:l,tests:n}}}),{name:"promptfoo",skipHydration:!0}))},8715:function(){},5038:function(){},2604:function(){},6911:function(){},5777:function(){}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[21],{2492:function(e,t,a){a.d(t,{Z:function(){return W}});var o=a(3428),r=a(791),i=a(2265),n=a(7042),s=a(5600),l=a(7927),c=a(6520),d=a(5702);function p(e){return(0,d.Z)("MuiPagination",e)}(0,c.Z)("MuiPagination",["root","ul","outlined","text"]);var u=a(4625);let v=["boundaryCount","componentName","count","defaultPage","disabled","hideNextButton","hidePrevButton","onChange","page","showFirstButton","showLastButton","siblingCount"];var g=a(9975);function m(e){return(0,d.Z)("MuiPaginationItem",e)}let b=(0,c.Z)("MuiPaginationItem",["root","page","sizeSmall","sizeLarge","text","textPrimary","textSecondary","outlined","outlinedPrimary","outlinedSecondary","rounded","ellipsis","firstLast","previousNext","focusVisible","disabled","selected","icon"]);var h=a(1101),x=a(6659),f=a(8702),y=a(9782),Z=a(7437),$=(0,y.Z)((0,Z.jsx)("path",{d:"M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"}),"FirstPage"),C=(0,y.Z)((0,Z.jsx)("path",{d:"M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"}),"LastPage"),M=(0,y.Z)((0,Z.jsx)("path",{d:"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"}),"NavigateBefore"),z=(0,y.Z)((0,Z.jsx)("path",{d:"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"NavigateNext"),P=a(5843);let k=["className","color","component","components","disabled","page","selected","shape","size","slots","type","variant"],R=(e,t)=>{let{ownerState:a}=e;return[t.root,t[a.variant],t[`size${(0,f.Z)(a.size)}`],"text"===a.variant&&t[`text${(0,f.Z)(a.color)}`],"outlined"===a.variant&&t[`outlined${(0,f.Z)(a.color)}`],"rounded"===a.shape&&t.rounded,"page"===a.type&&t.page,("start-ellipsis"===a.type||"end-ellipsis"===a.type)&&t.ellipsis,("previous"===a.type||"next"===a.type)&&t.previousNext,("first"===a.type||"last"===a.type)&&t.firstLast]},S=e=>{let{classes:t,color:a,disabled:o,selected:r,size:i,shape:n,type:l,variant:c}=e,d={root:["root",`size${(0,f.Z)(i)}`,c,n,"standard"!==a&&`${c}${(0,f.Z)(a)}`,o&&"disabled",r&&"selected",{page:"page",first:"firstLast",last:"firstLast","start-ellipsis":"ellipsis","end-ellipsis":"ellipsis",previous:"previousNext",next:"previousNext"}[l]],icon:["icon"]};return(0,s.Z)(d,m,t)},L=(0,P.ZP)("div",{name:"MuiPaginationItem",slot:"Root",overridesResolver:R})(({theme:e,ownerState:t})=>(0,o.Z)({},e.typography.body2,{borderRadius:16,textAlign:"center",boxSizing:"border-box",minWidth:32,padding:"0 6px",margin:"0 3px",color:(e.vars||e).palette.text.primary,height:"auto",[`&.${b.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity}},"small"===t.size&&{minWidth:26,borderRadius:13,margin:"0 1px",padding:"0 4px"},"large"===t.size&&{minWidth:40,borderRadius:20,padding:"0 10px",fontSize:e.typography.pxToRem(15)})),N=(0,P.ZP)(x.Z,{name:"MuiPaginationItem",slot:"Root",overridesResolver:R})(({theme:e,ownerState:t})=>(0,o.Z)({},e.typography.body2,{borderRadius:16,textAlign:"center",boxSizing:"border-box",minWidth:32,height:32,padding:"0 6px",margin:"0 3px",color:(e.vars||e).palette.text.primary,[`&.${b.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`&.${b.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity},transition:e.transitions.create(["color","background-color"],{duration:e.transitions.duration.short}),"&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${b.selected}`]:{backgroundColor:(e.vars||e).palette.action.selected,"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.action.selected} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:(0,g.Fq)(e.palette.action.selected,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(e.vars||e).palette.action.selected}},[`&.${b.focusVisible}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.action.selected} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:(0,g.Fq)(e.palette.action.selected,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)},[`&.${b.disabled}`]:{opacity:1,color:(e.vars||e).palette.action.disabled,backgroundColor:(e.vars||e).palette.action.selected}}},"small"===t.size&&{minWidth:26,height:26,borderRadius:13,margin:"0 1px",padding:"0 4px"},"large"===t.size&&{minWidth:40,height:40,borderRadius:20,padding:"0 10px",fontSize:e.typography.pxToRem(15)},"rounded"===t.shape&&{borderRadius:(e.vars||e).shape.borderRadius}),({theme:e,ownerState:t})=>(0,o.Z)({},"text"===t.variant&&{[`&.${b.selected}`]:(0,o.Z)({},"standard"!==t.color&&{color:(e.vars||e).palette[t.color].contrastText,backgroundColor:(e.vars||e).palette[t.color].main,"&:hover":{backgroundColor:(e.vars||e).palette[t.color].dark,"@media (hover: none)":{backgroundColor:(e.vars||e).palette[t.color].main}},[`&.${b.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t.color].dark}},{[`&.${b.disabled}`]:{color:(e.vars||e).palette.action.disabled}})},"outlined"===t.variant&&{border:e.vars?`1px solid rgba(${e.vars.palette.common.onBackgroundChannel} / 0.23)`:`1px solid ${"light"===e.palette.mode?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)"}`,[`&.${b.selected}`]:(0,o.Z)({},"standard"!==t.color&&{color:(e.vars||e).palette[t.color].main,border:`1px solid ${e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / 0.5)`:(0,g.Fq)(e.palette[t.color].main,.5)}`,backgroundColor:e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / ${e.vars.palette.action.activatedOpacity})`:(0,g.Fq)(e.palette[t.color].main,e.palette.action.activatedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / calc(${e.vars.palette.action.activatedOpacity} + ${e.vars.palette.action.focusOpacity}))`:(0,g.Fq)(e.palette[t.color].main,e.palette.action.activatedOpacity+e.palette.action.focusOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${b.focusVisible}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / calc(${e.vars.palette.action.activatedOpacity} + ${e.vars.palette.action.focusOpacity}))`:(0,g.Fq)(e.palette[t.color].main,e.palette.action.activatedOpacity+e.palette.action.focusOpacity)}},{[`&.${b.disabled}`]:{borderColor:(e.vars||e).palette.action.disabledBackground,color:(e.vars||e).palette.action.disabled}})})),w=(0,P.ZP)("div",{name:"MuiPaginationItem",slot:"Icon",overridesResolver:(e,t)=>t.icon})(({theme:e,ownerState:t})=>(0,o.Z)({fontSize:e.typography.pxToRem(20),margin:"0 -8px"},"small"===t.size&&{fontSize:e.typography.pxToRem(18)},"large"===t.size&&{fontSize:e.typography.pxToRem(22)})),O=i.forwardRef(function(e,t){let a=(0,l.Z)({props:e,name:"MuiPaginationItem"}),{className:i,color:s="standard",component:c,components:d={},disabled:p=!1,page:u,selected:v=!1,shape:g="circular",size:m="medium",slots:b={},type:x="page",variant:f="text"}=a,y=(0,r.Z)(a,k),P=(0,o.Z)({},a,{color:s,disabled:p,selected:v,shape:g,size:m,type:x,variant:f}),R=(0,h.Z)(),O=S(P),j="rtl"===R.direction?{previous:b.next||d.next||z,next:b.previous||d.previous||M,last:b.first||d.first||$,first:b.last||d.last||C}:{previous:b.previous||d.previous||M,next:b.next||d.next||z,first:b.first||d.first||$,last:b.last||d.last||C},I=j[x];return"start-ellipsis"===x||"end-ellipsis"===x?(0,Z.jsx)(L,{ref:t,ownerState:P,className:(0,n.Z)(O.root,i),children:"…"}):(0,Z.jsxs)(N,(0,o.Z)({ref:t,ownerState:P,component:c,disabled:p,className:(0,n.Z)(O.root,i)},y,{children:["page"===x&&u,I?(0,Z.jsx)(w,{as:I,ownerState:P,className:O.icon}):null]}))}),j=["boundaryCount","className","color","count","defaultPage","disabled","getItemAriaLabel","hideNextButton","hidePrevButton","onChange","page","renderItem","shape","showFirstButton","showLastButton","siblingCount","size","variant"],I=e=>{let{classes:t,variant:a}=e;return(0,s.Z)({root:["root",a],ul:["ul"]},p,t)},B=(0,P.ZP)("nav",{name:"MuiPagination",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:a}=e;return[t.root,t[a.variant]]}})({}),T=(0,P.ZP)("ul",{name:"MuiPagination",slot:"Ul",overridesResolver:(e,t)=>t.ul})({display:"flex",flexWrap:"wrap",alignItems:"center",padding:0,margin:0,listStyle:"none"});function F(e,t,a){return"page"===e?`${a?"":"Go to "}page ${t}`:`Go to ${e} page`}let D=i.forwardRef(function(e,t){let a=(0,l.Z)({props:e,name:"MuiPagination"}),{boundaryCount:i=1,className:s,color:c="standard",count:d=1,defaultPage:p=1,disabled:g=!1,getItemAriaLabel:m=F,hideNextButton:b=!1,hidePrevButton:h=!1,renderItem:x=e=>(0,Z.jsx)(O,(0,o.Z)({},e)),shape:f="circular",showFirstButton:y=!1,showLastButton:$=!1,siblingCount:C=1,size:M="medium",variant:z="text"}=a,P=(0,r.Z)(a,j),{items:k}=function(e={}){let{boundaryCount:t=1,componentName:a="usePagination",count:i=1,defaultPage:n=1,disabled:s=!1,hideNextButton:l=!1,hidePrevButton:c=!1,onChange:d,page:p,showFirstButton:g=!1,showLastButton:m=!1,siblingCount:b=1}=e,h=(0,r.Z)(e,v),[x,f]=(0,u.Z)({controlled:p,default:n,name:a,state:"page"}),y=(e,t)=>{p||f(t),d&&d(e,t)},Z=(e,t)=>{let a=t-e+1;return Array.from({length:a},(t,a)=>e+a)},$=Z(1,Math.min(t,i)),C=Z(Math.max(i-t+1,t+1),i),M=Math.max(Math.min(x-b,i-t-2*b-1),t+2),z=Math.min(Math.max(x+b,t+2*b+2),C.length>0?C[0]-2:i-1),P=[...g?["first"]:[],...c?[]:["previous"],...$,...M>t+2?["start-ellipsis"]:t+1<i-t?[t+1]:[],...Z(M,z),...z<i-t-1?["end-ellipsis"]:i-t>t?[i-t]:[],...C,...l?[]:["next"],...m?["last"]:[]],k=e=>{switch(e){case"first":return 1;case"previous":return x-1;case"next":return x+1;case"last":return i;default:return null}},R=P.map(e=>"number"==typeof e?{onClick:t=>{y(t,e)},type:"page",page:e,selected:e===x,disabled:s,"aria-current":e===x?"true":void 0}:{onClick:t=>{y(t,k(e))},type:e,page:k(e),selected:!1,disabled:s||-1===e.indexOf("ellipsis")&&("next"===e||"last"===e?x>=i:x<=1)});return(0,o.Z)({items:R},h)}((0,o.Z)({},a,{componentName:"Pagination"})),R=(0,o.Z)({},a,{boundaryCount:i,color:c,count:d,defaultPage:p,disabled:g,getItemAriaLabel:m,hideNextButton:b,hidePrevButton:h,renderItem:x,shape:f,showFirstButton:y,showLastButton:$,siblingCount:C,size:M,variant:z}),S=I(R);return(0,Z.jsx)(B,(0,o.Z)({"aria-label":"pagination navigation",className:(0,n.Z)(S.root,s),ownerState:R,ref:t},P,{children:(0,Z.jsx)(T,{className:S.ul,ownerState:R,children:k.map((e,t)=>(0,Z.jsx)("li",{children:x((0,o.Z)({},e,{color:c,"aria-label":m(e.type,e.page,e.selected),shape:f,size:M,variant:z}))},t))})}))});var W=D},5781:function(e,t,a){a.d(t,{Z:function(){return M}});var o=a(791),r=a(3428),i=a(5600),n=a(7042),s=a(2265),l=a(6659),c=a(9782),d=a(7437),p=(0,c.Z)((0,d.jsx)("path",{d:"M20 12l-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"}),"ArrowDownward"),u=a(5843),v=a(7927),g=a(8702),m=a(6520),b=a(5702);function h(e){return(0,b.Z)("MuiTableSortLabel",e)}let x=(0,m.Z)("MuiTableSortLabel",["root","active","icon","iconDirectionDesc","iconDirectionAsc"]),f=["active","children","className","direction","hideSortIcon","IconComponent"],y=e=>{let{classes:t,direction:a,active:o}=e,r={root:["root",o&&"active"],icon:["icon",`iconDirection${(0,g.Z)(a)}`]};return(0,i.Z)(r,h,t)},Z=(0,u.ZP)(l.Z,{name:"MuiTableSortLabel",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:a}=e;return[t.root,a.active&&t.active]}})(({theme:e})=>({cursor:"pointer",display:"inline-flex",justifyContent:"flex-start",flexDirection:"inherit",alignItems:"center","&:focus":{color:(e.vars||e).palette.text.secondary},"&:hover":{color:(e.vars||e).palette.text.secondary,[`& .${x.icon}`]:{opacity:.5}},[`&.${x.active}`]:{color:(e.vars||e).palette.text.primary,[`& .${x.icon}`]:{opacity:1,color:(e.vars||e).palette.text.secondary}}})),$=(0,u.ZP)("span",{name:"MuiTableSortLabel",slot:"Icon",overridesResolver:(e,t)=>{let{ownerState:a}=e;return[t.icon,t[`iconDirection${(0,g.Z)(a.direction)}`]]}})(({theme:e,ownerState:t})=>(0,r.Z)({fontSize:18,marginRight:4,marginLeft:4,opacity:0,transition:e.transitions.create(["opacity","transform"],{duration:e.transitions.duration.shorter}),userSelect:"none"},"desc"===t.direction&&{transform:"rotate(0deg)"},"asc"===t.direction&&{transform:"rotate(180deg)"})),C=s.forwardRef(function(e,t){let a=(0,v.Z)({props:e,name:"MuiTableSortLabel"}),{active:i=!1,children:s,className:l,direction:c="asc",hideSortIcon:u=!1,IconComponent:g=p}=a,m=(0,o.Z)(a,f),b=(0,r.Z)({},a,{active:i,direction:c,hideSortIcon:u,IconComponent:g}),h=y(b);return(0,d.jsxs)(Z,(0,r.Z)({className:(0,n.Z)(h.root,l),component:"span",disableRipple:!0,ownerState:b,ref:t},m,{children:[s,u&&!i?null:(0,d.jsx)($,{as:g,className:(0,n.Z)(h.icon),ownerState:b})]}))});var M=C}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[261],{984:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=o(3135)},8440:function(e,t,o){"use strict";o.d(t,{Z:function(){return en}});var r,a,n=o(791),l=o(3428),i=o(2265),c=o(7042),s=o(5600),p=o(3449),u=o(4625),d=e=>{let t=i.useRef({});return i.useEffect(()=>{t.current=e}),t.current},g=o(8136),f=o(3406);function m(e){return void 0!==e.normalize?e.normalize("NFD").replace(/[\u0300-\u036f]/g,""):e}function v(e,t){for(let o=0;o<e.length;o+=1)if(t(e[o]))return o;return -1}let b=function(e={}){let{ignoreAccents:t=!0,ignoreCase:o=!0,limit:r,matchFrom:a="any",stringify:n,trim:l=!1}=e;return(e,{inputValue:i,getOptionLabel:c})=>{let s=l?i.trim():i;o&&(s=s.toLowerCase()),t&&(s=m(s));let p=s?e.filter(e=>{let r=(n||c)(e);return o&&(r=r.toLowerCase()),t&&(r=m(r)),"start"===a?0===r.indexOf(s):r.indexOf(s)>-1}):e;return"number"==typeof r?p.slice(0,r):p}}(),h=e=>{var t;return null!==e.current&&(null==(t=e.current.parentElement)?void 0:t.contains(document.activeElement))};var Z=o(9975),y=o(3989),$=o(5843),x=o(7927),C=o(8702),k=o(6520),I=o(5702);function S(e){return(0,I.Z)("MuiListSubheader",e)}(0,k.Z)("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);var O=o(7437);let R=["className","color","component","disableGutters","disableSticky","inset"],P=e=>{let{classes:t,color:o,disableGutters:r,inset:a,disableSticky:n}=e,l={root:["root","default"!==o&&`color${(0,C.Z)(o)}`,!r&&"gutters",a&&"inset",!n&&"sticky"]};return(0,s.Z)(l,S,t)},w=(0,$.ZP)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:o}=e;return[t.root,"default"!==o.color&&t[`color${(0,C.Z)(o.color)}`],!o.disableGutters&&t.gutters,o.inset&&t.inset,!o.disableSticky&&t.sticky]}})(({theme:e,ownerState:t})=>(0,l.Z)({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(e.vars||e).palette.text.secondary,fontFamily:e.typography.fontFamily,fontWeight:e.typography.fontWeightMedium,fontSize:e.typography.pxToRem(14)},"primary"===t.color&&{color:(e.vars||e).palette.primary.main},"inherit"===t.color&&{color:"inherit"},!t.disableGutters&&{paddingLeft:16,paddingRight:16},t.inset&&{paddingLeft:72},!t.disableSticky&&{position:"sticky",top:0,zIndex:1,backgroundColor:(e.vars||e).palette.background.paper})),L=i.forwardRef(function(e,t){let o=(0,x.Z)({props:e,name:"MuiListSubheader"}),{className:r,color:a="default",component:i="li",disableGutters:s=!1,disableSticky:p=!1,inset:u=!1}=o,d=(0,n.Z)(o,R),g=(0,l.Z)({},o,{color:a,component:i,disableGutters:s,disableSticky:p,inset:u}),f=P(g);return(0,O.jsx)(w,(0,l.Z)({as:i,className:(0,c.Z)(f.root,r),ref:t,ownerState:g},d))});L.muiSkipListHighlight=!0;var z=o(9872),M=o(2653),T=o(7827),A=o(466),N=o(7044),D=o(130),F=o(9274),E=(0,o(9782).Z)((0,O.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"),j=o(2246);function V(e){return(0,I.Z)("MuiAutocomplete",e)}let q=(0,k.Z)("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]);var W=o(7663);let H=["autoComplete","autoHighlight","autoSelect","blurOnSelect","ChipProps","className","clearIcon","clearOnBlur","clearOnEscape","clearText","closeText","componentsProps","defaultValue","disableClearable","disableCloseOnSelect","disabled","disabledItemsFocusable","disableListWrap","disablePortal","filterOptions","filterSelectedOptions","forcePopupIcon","freeSolo","fullWidth","getLimitTagsText","getOptionDisabled","getOptionLabel","isOptionEqualToValue","groupBy","handleHomeEndKeys","id","includeInputInList","inputValue","limitTags","ListboxComponent","ListboxProps","loading","loadingText","multiple","noOptionsText","onChange","onClose","onHighlightChange","onInputChange","onOpen","open","openOnFocus","openText","options","PaperComponent","PopperComponent","popupIcon","readOnly","renderGroup","renderInput","renderOption","renderTags","selectOnFocus","size","slotProps","value"],B=["ref"],_=e=>{let{classes:t,disablePortal:o,expanded:r,focused:a,fullWidth:n,hasClearIcon:l,hasPopupIcon:i,inputFocused:c,popupOpen:p,size:u}=e,d={root:["root",r&&"expanded",a&&"focused",n&&"fullWidth",l&&"hasClearIcon",i&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",c&&"inputFocused"],tag:["tag",`tagSize${(0,C.Z)(u)}`],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",p&&"popupIndicatorOpen"],popper:["popper",o&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return(0,s.Z)(d,V,t)},K=(0,$.ZP)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:o}=e,{fullWidth:r,hasClearIcon:a,hasPopupIcon:n,inputFocused:l,size:i}=o;return[{[`& .${q.tag}`]:t.tag},{[`& .${q.tag}`]:t[`tagSize${(0,C.Z)(i)}`]},{[`& .${q.inputRoot}`]:t.inputRoot},{[`& .${q.input}`]:t.input},{[`& .${q.input}`]:l&&t.inputFocused},t.root,r&&t.fullWidth,n&&t.hasPopupIcon,a&&t.hasClearIcon]}})(({ownerState:e})=>(0,l.Z)({[`&.${q.focused} .${q.clearIndicator}`]:{visibility:"visible"},"@media (pointer: fine)":{[`&:hover .${q.clearIndicator}`]:{visibility:"visible"}}},e.fullWidth&&{width:"100%"},{[`& .${q.tag}`]:(0,l.Z)({margin:3,maxWidth:"calc(100% - 6px)"},"small"===e.size&&{margin:2,maxWidth:"calc(100% - 4px)"}),[`& .${q.inputRoot}`]:{flexWrap:"wrap",[`.${q.hasPopupIcon}&, .${q.hasClearIcon}&`]:{paddingRight:30},[`.${q.hasPopupIcon}.${q.hasClearIcon}&`]:{paddingRight:56},[`& .${q.input}`]:{width:0,minWidth:30}},[`& .${A.Z.root}`]:{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}},[`& .${A.Z.root}.${N.Z.sizeSmall}`]:{[`& .${A.Z.input}`]:{padding:"2px 4px 3px 0"}},[`& .${D.Z.root}`]:{padding:9,[`.${q.hasPopupIcon}&, .${q.hasClearIcon}&`]:{paddingRight:39},[`.${q.hasPopupIcon}.${q.hasClearIcon}&`]:{paddingRight:65},[`& .${q.input}`]:{padding:"7.5px 4px 7.5px 5px"},[`& .${q.endAdornment}`]:{right:9}},[`& .${D.Z.root}.${N.Z.sizeSmall}`]:{paddingTop:6,paddingBottom:6,paddingLeft:6,[`& .${q.input}`]:{padding:"2.5px 4px 2.5px 8px"}},[`& .${F.Z.root}`]:{paddingTop:19,paddingLeft:8,[`.${q.hasPopupIcon}&, .${q.hasClearIcon}&`]:{paddingRight:39},[`.${q.hasPopupIcon}.${q.hasClearIcon}&`]:{paddingRight:65},[`& .${F.Z.input}`]:{padding:"7px 4px"},[`& .${q.endAdornment}`]:{right:9}},[`& .${F.Z.root}.${N.Z.sizeSmall}`]:{paddingBottom:1,[`& .${F.Z.input}`]:{padding:"2.5px 4px"}},[`& .${N.Z.hiddenLabel}`]:{paddingTop:8},[`& .${F.Z.root}.${N.Z.hiddenLabel}`]:{paddingTop:0,paddingBottom:0,[`& .${q.input}`]:{paddingTop:16,paddingBottom:17}},[`& .${F.Z.root}.${N.Z.hiddenLabel}.${N.Z.sizeSmall}`]:{[`& .${q.input}`]:{paddingTop:8,paddingBottom:9}},[`& .${q.input}`]:(0,l.Z)({flexGrow:1,textOverflow:"ellipsis",opacity:0},e.inputFocused&&{opacity:1})})),U=(0,$.ZP)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:(e,t)=>t.endAdornment})({position:"absolute",right:0,top:"calc(50% - 14px)"}),G=(0,$.ZP)(M.Z,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:(e,t)=>t.clearIndicator})({marginRight:-2,padding:4,visibility:"hidden"}),J=(0,$.ZP)(M.Z,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:({ownerState:e},t)=>(0,l.Z)({},t.popupIndicator,e.popupOpen&&t.popupIndicatorOpen)})(({ownerState:e})=>(0,l.Z)({padding:2,marginRight:-2},e.popupOpen&&{transform:"rotate(180deg)"})),Q=(0,$.ZP)(y.Z,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:(e,t)=>{let{ownerState:o}=e;return[{[`& .${q.option}`]:t.option},t.popper,o.disablePortal&&t.popperDisablePortal]}})(({theme:e,ownerState:t})=>(0,l.Z)({zIndex:(e.vars||e).zIndex.modal},t.disablePortal&&{position:"absolute"})),X=(0,$.ZP)(z.Z,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:(e,t)=>t.paper})(({theme:e})=>(0,l.Z)({},e.typography.body1,{overflow:"auto"})),Y=(0,$.ZP)("div",{name:"MuiAutocomplete",slot:"Loading",overridesResolver:(e,t)=>t.loading})(({theme:e})=>({color:(e.vars||e).palette.text.secondary,padding:"14px 16px"})),ee=(0,$.ZP)("div",{name:"MuiAutocomplete",slot:"NoOptions",overridesResolver:(e,t)=>t.noOptions})(({theme:e})=>({color:(e.vars||e).palette.text.secondary,padding:"14px 16px"})),et=(0,$.ZP)("div",{name:"MuiAutocomplete",slot:"Listbox",overridesResolver:(e,t)=>t.listbox})(({theme:e})=>({listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative",[`& .${q.option}`]:{minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16,[e.breakpoints.up("sm")]:{minHeight:"auto"},[`&.${q.focused}`]:{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},'&[aria-disabled="true"]':{opacity:(e.vars||e).palette.action.disabledOpacity,pointerEvents:"none"},[`&.${q.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},'&[aria-selected="true"]':{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:(0,Z.Fq)(e.palette.primary.main,e.palette.action.selectedOpacity),[`&.${q.focused}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:(0,Z.Fq)(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(e.vars||e).palette.action.selected}},[`&.${q.focusVisible}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:(0,Z.Fq)(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}}}})),eo=(0,$.ZP)(L,{name:"MuiAutocomplete",slot:"GroupLabel",overridesResolver:(e,t)=>t.groupLabel})(({theme:e})=>({backgroundColor:(e.vars||e).palette.background.paper,top:-8})),er=(0,$.ZP)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:(e,t)=>t.groupUl})({padding:0,[`& .${q.option}`]:{paddingLeft:24}}),ea=i.forwardRef(function(e,t){var o,s,m,Z;let $;let C=(0,x.Z)({props:e,name:"MuiAutocomplete"}),{autoComplete:k=!1,autoHighlight:I=!1,autoSelect:S=!1,blurOnSelect:R=!1,ChipProps:P,className:w,clearIcon:L=r||(r=(0,O.jsx)(E,{fontSize:"small"})),clearOnBlur:M=!C.freeSolo,clearOnEscape:A=!1,clearText:N="Clear",closeText:D="Close",componentsProps:F={},defaultValue:V=C.multiple?[]:null,disableClearable:q=!1,disableCloseOnSelect:ea=!1,disabled:en=!1,disabledItemsFocusable:el=!1,disableListWrap:ei=!1,disablePortal:ec=!1,filterSelectedOptions:es=!1,forcePopupIcon:ep="auto",freeSolo:eu=!1,fullWidth:ed=!1,getLimitTagsText:eg=e=>`+${e}`,getOptionLabel:ef,groupBy:em,handleHomeEndKeys:ev=!C.freeSolo,includeInputInList:eb=!1,limitTags:eh=-1,ListboxComponent:eZ="ul",ListboxProps:ey,loading:e$=!1,loadingText:ex="Loading…",multiple:eC=!1,noOptionsText:ek="No options",openOnFocus:eI=!1,openText:eS="Open",PaperComponent:eO=z.Z,PopperComponent:eR=y.Z,popupIcon:eP=a||(a=(0,O.jsx)(j.Z,{})),readOnly:ew=!1,renderGroup:eL,renderInput:ez,renderOption:eM,renderTags:eT,selectOnFocus:eA=!C.freeSolo,size:eN="medium",slotProps:eD={}}=C,eF=(0,n.Z)(C,H),{getRootProps:eE,getInputProps:ej,getInputLabelProps:eV,getPopupIndicatorProps:eq,getClearProps:eW,getTagProps:eH,getListboxProps:eB,getOptionProps:e_,value:eK,dirty:eU,expanded:eG,id:eJ,popupOpen:eQ,focused:eX,focusedTag:eY,anchorEl:e0,setAnchorEl:e1,inputValue:e2,groupedOptions:e4}=function(e){let{unstable_isActiveElementInListbox:t=h,unstable_classNamePrefix:o="Mui",autoComplete:r=!1,autoHighlight:a=!1,autoSelect:n=!1,blurOnSelect:c=!1,clearOnBlur:s=!e.freeSolo,clearOnEscape:m=!1,componentName:Z="useAutocomplete",defaultValue:y=e.multiple?[]:null,disableClearable:$=!1,disableCloseOnSelect:x=!1,disabled:C,disabledItemsFocusable:k=!1,disableListWrap:I=!1,filterOptions:S=b,filterSelectedOptions:O=!1,freeSolo:R=!1,getOptionDisabled:P,getOptionLabel:w=e=>{var t;return null!=(t=e.label)?t:e},groupBy:L,handleHomeEndKeys:z=!e.freeSolo,id:M,includeInputInList:T=!1,inputValue:A,isOptionEqualToValue:N=(e,t)=>e===t,multiple:D=!1,onChange:F,onClose:E,onHighlightChange:j,onInputChange:V,onOpen:q,open:W,openOnFocus:H=!1,options:B,readOnly:_=!1,selectOnFocus:K=!e.freeSolo,value:U}=e,G=(0,p.Z)(M),J=w;J=e=>{let t=w(e);return"string"!=typeof t?String(t):t};let Q=i.useRef(!1),X=i.useRef(!0),Y=i.useRef(null),ee=i.useRef(null),[et,eo]=i.useState(null),[er,ea]=i.useState(-1),en=a?0:-1,el=i.useRef(en),[ei,ec]=(0,u.Z)({controlled:U,default:y,name:Z}),[es,ep]=(0,u.Z)({controlled:A,default:"",name:Z,state:"inputValue"}),[eu,ed]=i.useState(!1),eg=i.useCallback((e,t)=>{let o;let r=D?ei.length<t.length:null!==t;if(r||s){if(D)o="";else if(null==t)o="";else{let e=J(t);o="string"==typeof e?e:""}es!==o&&(ep(o),V&&V(e,o,"reset"))}},[J,es,D,V,ep,s,ei]),[ef,em]=(0,u.Z)({controlled:W,default:!1,name:Z,state:"open"}),[ev,eb]=i.useState(!0),eh=!D&&null!=ei&&es===J(ei),eZ=ef&&!_,ey=eZ?S(B.filter(e=>!(O&&(D?ei:[ei]).some(t=>null!==t&&N(e,t)))),{inputValue:eh&&ev?"":es,getOptionLabel:J}):[],e$=d({filteredOptions:ey,value:ei,inputValue:es});i.useEffect(()=>{let e=ei!==e$.value;(!eu||e)&&(!R||e)&&eg(null,ei)},[ei,eg,eu,e$.value,R]);let ex=ef&&ey.length>0&&!_,eC=(0,g.Z)(e=>{-1===e?Y.current.focus():et.querySelector(`[data-tag-index="${e}"]`).focus()});i.useEffect(()=>{D&&er>ei.length-1&&(ea(-1),eC(-1))},[ei,D,er,eC]);let ek=(0,g.Z)(({event:e,index:t,reason:r="auto"})=>{if(el.current=t,-1===t?Y.current.removeAttribute("aria-activedescendant"):Y.current.setAttribute("aria-activedescendant",`${G}-option-${t}`),j&&j(e,-1===t?null:ey[t],r),!ee.current)return;let a=ee.current.querySelector(`[role="option"].${o}-focused`);a&&(a.classList.remove(`${o}-focused`),a.classList.remove(`${o}-focusVisible`));let n=ee.current;if("listbox"!==ee.current.getAttribute("role")&&(n=ee.current.parentElement.querySelector('[role="listbox"]')),!n)return;if(-1===t){n.scrollTop=0;return}let l=ee.current.querySelector(`[data-option-index="${t}"]`);if(l&&(l.classList.add(`${o}-focused`),"keyboard"===r&&l.classList.add(`${o}-focusVisible`),n.scrollHeight>n.clientHeight&&"mouse"!==r&&"touch"!==r)){let e=n.clientHeight+n.scrollTop,t=l.offsetTop+l.offsetHeight;t>e?n.scrollTop=t-n.clientHeight:l.offsetTop-l.offsetHeight*(L?1.3:0)<n.scrollTop&&(n.scrollTop=l.offsetTop-l.offsetHeight*(L?1.3:0))}}),eI=(0,g.Z)(({event:e,diff:t,direction:o="next",reason:a="auto"})=>{if(!eZ)return;let n=function(e,t){if(!ee.current||-1===e)return -1;let o=e;for(;;){if("next"===t&&o===ey.length||"previous"===t&&-1===o)return -1;let e=ee.current.querySelector(`[data-option-index="${o}"]`),r=!k&&(!e||e.disabled||"true"===e.getAttribute("aria-disabled"));if((!e||e.hasAttribute("tabindex"))&&!r)return o;o+="next"===t?1:-1}}((()=>{let e=ey.length-1;if("reset"===t)return en;if("start"===t)return 0;if("end"===t)return e;let o=el.current+t;return o<0?-1===o&&T?-1:I&&-1!==el.current||Math.abs(t)>1?0:e:o>e?o===e+1&&T?-1:I||Math.abs(t)>1?e:0:o})(),o);if(ek({index:n,reason:a,event:e}),r&&"reset"!==t){if(-1===n)Y.current.value=es;else{let e=J(ey[n]);Y.current.value=e;let t=e.toLowerCase().indexOf(es.toLowerCase());0===t&&es.length>0&&Y.current.setSelectionRange(es.length,e.length)}}}),eS=()=>{if(-1!==el.current&&e$.filteredOptions&&e$.filteredOptions.length!==ey.length&&e$.inputValue===es&&(D?ei.length===e$.value.length&&e$.value.every((e,t)=>J(ei[t])===J(e)):((e,t)=>{let o=e?J(e):"",r=t?J(t):"";return o===r})(e$.value,ei))){let e=e$.filteredOptions[el.current];if(e){let t=ey.some(t=>J(t)===J(e));if(t)return!0}}return!1},eO=i.useCallback(()=>{if(!eZ||eS())return;let e=D?ei[0]:ei;if(0===ey.length||null==e){eI({diff:"reset"});return}if(ee.current){if(null!=e){let t=ey[el.current];if(D&&t&&-1!==v(ei,e=>N(t,e)))return;let o=v(ey,t=>N(t,e));-1===o?eI({diff:"reset"}):ek({index:o});return}if(el.current>=ey.length-1){ek({index:ey.length-1});return}ek({index:el.current})}},[ey.length,!D&&ei,O,eI,ek,eZ,es,D]),eR=(0,g.Z)(e=>{(0,f.Z)(ee,e),e&&eO()});i.useEffect(()=>{eO()},[eO]);let eP=e=>{!ef&&(em(!0),eb(!0),q&&q(e))},ew=(e,t)=>{ef&&(em(!1),E&&E(e,t))},eL=(e,t,o,r)=>{if(D){if(ei.length===t.length&&ei.every((e,o)=>e===t[o]))return}else if(ei===t)return;F&&F(e,t,o,r),ec(t)},ez=i.useRef(!1),eM=(e,t,o="selectOption",r="options")=>{let a=o,n=t;if(D){n=Array.isArray(ei)?ei.slice():[];let e=v(n,e=>N(t,e));-1===e?n.push(t):"freeSolo"!==r&&(n.splice(e,1),a="removeOption")}eg(e,n),eL(e,n,a,{option:t}),x||e&&(e.ctrlKey||e.metaKey)||ew(e,a),(!0===c||"touch"===c&&ez.current||"mouse"===c&&!ez.current)&&Y.current.blur()},eT=(e,t)=>{if(!D)return;""===es&&ew(e,"toggleInput");let o=er;-1===er?""===es&&"previous"===t&&(o=ei.length-1):((o+="next"===t?1:-1)<0&&(o=0),o===ei.length&&(o=-1)),ea(o=function(e,t){if(-1===e)return -1;let o=e;for(;;){if("next"===t&&o===ei.length||"previous"===t&&-1===o)return -1;let e=et.querySelector(`[data-tag-index="${o}"]`);if(e&&e.hasAttribute("tabindex")&&!e.disabled&&"true"!==e.getAttribute("aria-disabled"))return o;o+="next"===t?1:-1}}(o,t)),eC(o)},eA=e=>{Q.current=!0,ep(""),V&&V(e,"","clear"),eL(e,D?[]:null,"clear")},eN=e=>t=>{if(e.onKeyDown&&e.onKeyDown(t),!t.defaultMuiPrevented&&(-1!==er&&-1===["ArrowLeft","ArrowRight"].indexOf(t.key)&&(ea(-1),eC(-1)),229!==t.which))switch(t.key){case"Home":eZ&&z&&(t.preventDefault(),eI({diff:"start",direction:"next",reason:"keyboard",event:t}));break;case"End":eZ&&z&&(t.preventDefault(),eI({diff:"end",direction:"previous",reason:"keyboard",event:t}));break;case"PageUp":t.preventDefault(),eI({diff:-5,direction:"previous",reason:"keyboard",event:t}),eP(t);break;case"PageDown":t.preventDefault(),eI({diff:5,direction:"next",reason:"keyboard",event:t}),eP(t);break;case"ArrowDown":t.preventDefault(),eI({diff:1,direction:"next",reason:"keyboard",event:t}),eP(t);break;case"ArrowUp":t.preventDefault(),eI({diff:-1,direction:"previous",reason:"keyboard",event:t}),eP(t);break;case"ArrowLeft":eT(t,"previous");break;case"ArrowRight":eT(t,"next");break;case"Enter":if(-1!==el.current&&eZ){let e=ey[el.current],o=!!P&&P(e);if(t.preventDefault(),o)return;eM(t,e,"selectOption"),r&&Y.current.setSelectionRange(Y.current.value.length,Y.current.value.length)}else R&&""!==es&&!1===eh&&(D&&t.preventDefault(),eM(t,es,"createOption","freeSolo"));break;case"Escape":eZ?(t.preventDefault(),t.stopPropagation(),ew(t,"escape")):m&&(""!==es||D&&ei.length>0)&&(t.preventDefault(),t.stopPropagation(),eA(t));break;case"Backspace":if(D&&!_&&""===es&&ei.length>0){let e=-1===er?ei.length-1:er,o=ei.slice();o.splice(e,1),eL(t,o,"removeOption",{option:ei[e]})}break;case"Delete":if(D&&!_&&""===es&&ei.length>0&&-1!==er){let e=ei.slice();e.splice(er,1),eL(t,e,"removeOption",{option:ei[er]})}}},eD=e=>{ed(!0),H&&!Q.current&&eP(e)},eF=e=>{if(t(ee)){Y.current.focus();return}ed(!1),X.current=!0,Q.current=!1,n&&-1!==el.current&&eZ?eM(e,ey[el.current],"blur"):n&&R&&""!==es?eM(e,es,"blur","freeSolo"):s&&eg(e,ei),ew(e,"blur")},eE=e=>{let t=e.target.value;es!==t&&(ep(t),eb(!1),V&&V(e,t,"input")),""===t?$||D||eL(e,null,"clear"):eP(e)},ej=e=>{let t=Number(e.currentTarget.getAttribute("data-option-index"));el.current!==t&&ek({event:e,index:t,reason:"mouse"})},eV=e=>{ek({event:e,index:Number(e.currentTarget.getAttribute("data-option-index")),reason:"touch"}),ez.current=!0},eq=e=>{let t=Number(e.currentTarget.getAttribute("data-option-index"));eM(e,ey[t],"selectOption"),ez.current=!1},eW=e=>t=>{let o=ei.slice();o.splice(e,1),eL(t,o,"removeOption",{option:ei[e]})},eH=e=>{ef?ew(e,"toggleInput"):eP(e)},eB=e=>{e.currentTarget.contains(e.target)&&e.target.getAttribute("id")!==G&&e.preventDefault()},e_=e=>{e.currentTarget.contains(e.target)&&(Y.current.focus(),K&&X.current&&Y.current.selectionEnd-Y.current.selectionStart==0&&Y.current.select(),X.current=!1)},eK=e=>{""!==es&&ef||eH(e)},eU=R&&es.length>0;eU=eU||(D?ei.length>0:null!==ei);let eG=ey;return L&&(eG=ey.reduce((e,t,o)=>{let r=L(t);return e.length>0&&e[e.length-1].group===r?e[e.length-1].options.push(t):e.push({key:o,index:o,group:r,options:[t]}),e},[])),C&&eu&&eF(),{getRootProps:(e={})=>(0,l.Z)({"aria-owns":ex?`${G}-listbox`:null},e,{onKeyDown:eN(e),onMouseDown:eB,onClick:e_}),getInputLabelProps:()=>({id:`${G}-label`,htmlFor:G}),getInputProps:()=>({id:G,value:es,onBlur:eF,onFocus:eD,onChange:eE,onMouseDown:eK,"aria-activedescendant":eZ?"":null,"aria-autocomplete":r?"both":"list","aria-controls":ex?`${G}-listbox`:void 0,"aria-expanded":ex,autoComplete:"off",ref:Y,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:C}),getClearProps:()=>({tabIndex:-1,onClick:eA}),getPopupIndicatorProps:()=>({tabIndex:-1,onClick:eH}),getTagProps:({index:e})=>(0,l.Z)({key:e,"data-tag-index":e,tabIndex:-1},!_&&{onDelete:eW(e)}),getListboxProps:()=>({role:"listbox",id:`${G}-listbox`,"aria-labelledby":`${G}-label`,ref:eR,onMouseDown:e=>{e.preventDefault()}}),getOptionProps:({index:e,option:t})=>{let o=(D?ei:[ei]).some(e=>null!=e&&N(t,e)),r=!!P&&P(t);return{key:J(t),tabIndex:-1,role:"option",id:`${G}-option-${e}`,onMouseMove:ej,onClick:eq,onTouchStart:eV,"data-option-index":e,"aria-disabled":r,"aria-selected":o}},id:G,inputValue:es,value:ei,dirty:eU,expanded:eZ&&et,popupOpen:eZ,focused:eu||-1!==er,anchorEl:et,setAnchorEl:eo,focusedTag:er,groupedOptions:eG}}((0,l.Z)({},C,{componentName:"Autocomplete"})),e7=!q&&!en&&eU&&!ew,e5=(!eu||!0===ep)&&!1!==ep,{onMouseDown:e6}=ej(),{ref:e9}=null!=ey?ey:{},e3=eB(),{ref:e8}=e3,te=(0,n.Z)(e3,B),tt=(0,W.Z)(e8,e9),to=ef||(e=>{var t;return null!=(t=e.label)?t:e}),tr=(0,l.Z)({},C,{disablePortal:ec,expanded:eG,focused:eX,fullWidth:ed,getOptionLabel:to,hasClearIcon:e7,hasPopupIcon:e5,inputFocused:-1===eY,popupOpen:eQ,size:eN}),ta=_(tr);if(eC&&eK.length>0){let e=e=>(0,l.Z)({className:ta.tag,disabled:en},eH(e));$=eT?eT(eK,e,tr):eK.map((t,o)=>(0,O.jsx)(T.Z,(0,l.Z)({label:to(t),size:eN},e({index:o}),P)))}if(eh>-1&&Array.isArray($)){let e=$.length-eh;!eX&&e>0&&($=$.splice(0,eh)).push((0,O.jsx)("span",{className:ta.tag,children:eg(e)},$.length))}let tn=eL||(e=>(0,O.jsxs)("li",{children:[(0,O.jsx)(eo,{className:ta.groupLabel,ownerState:tr,component:"div",children:e.group}),(0,O.jsx)(er,{className:ta.groupUl,ownerState:tr,children:e.children})]},e.key)),tl=eM||((e,t)=>(0,O.jsx)("li",(0,l.Z)({},e,{children:to(t)}))),ti=(e,t)=>{let o=e_({option:e,index:t});return tl((0,l.Z)({},o,{className:ta.option}),e,{selected:o["aria-selected"],index:t,inputValue:e2},tr)},tc=null!=(o=eD.clearIndicator)?o:F.clearIndicator,ts=null!=(s=eD.paper)?s:F.paper,tp=null!=(m=eD.popper)?m:F.popper,tu=null!=(Z=eD.popupIndicator)?Z:F.popupIndicator;return(0,O.jsxs)(i.Fragment,{children:[(0,O.jsx)(K,(0,l.Z)({ref:t,className:(0,c.Z)(ta.root,w),ownerState:tr},eE(eF),{children:ez({id:eJ,disabled:en,fullWidth:!0,size:"small"===eN?"small":void 0,InputLabelProps:eV(),InputProps:(0,l.Z)({ref:e1,className:ta.inputRoot,startAdornment:$,onClick:e=>{e.target===e.currentTarget&&e6(e)}},(e7||e5)&&{endAdornment:(0,O.jsxs)(U,{className:ta.endAdornment,ownerState:tr,children:[e7?(0,O.jsx)(G,(0,l.Z)({},eW(),{"aria-label":N,title:N,ownerState:tr},tc,{className:(0,c.Z)(ta.clearIndicator,null==tc?void 0:tc.className),children:L})):null,e5?(0,O.jsx)(J,(0,l.Z)({},eq(),{disabled:en,"aria-label":eQ?D:eS,title:eQ?D:eS,ownerState:tr},tu,{className:(0,c.Z)(ta.popupIndicator,null==tu?void 0:tu.className),children:eP})):null]})}),inputProps:(0,l.Z)({className:ta.input,disabled:en,readOnly:ew},ej())})})),e0?(0,O.jsx)(Q,(0,l.Z)({as:eR,disablePortal:ec,style:{width:e0?e0.clientWidth:null},ownerState:tr,role:"presentation",anchorEl:e0,open:eQ},tp,{className:(0,c.Z)(ta.popper,null==tp?void 0:tp.className),children:(0,O.jsxs)(X,(0,l.Z)({ownerState:tr,as:eO},ts,{className:(0,c.Z)(ta.paper,null==ts?void 0:ts.className),children:[e$&&0===e4.length?(0,O.jsx)(Y,{className:ta.loading,ownerState:tr,children:ex}):null,0!==e4.length||eu||e$?null:(0,O.jsx)(ee,{className:ta.noOptions,ownerState:tr,role:"presentation",onMouseDown:e=>{e.preventDefault()},children:ek}),e4.length>0?(0,O.jsx)(et,(0,l.Z)({as:eZ,className:ta.listbox,ownerState:tr},te,ey,{ref:tt,children:e4.map((e,t)=>em?tn({key:e.key,group:e.group,children:e.options.map((t,o)=>ti(t,e.index+o))}):ti(e,t))})):null]}))})):null]})});var en=ea},7827:function(e,t,o){"use strict";o.d(t,{Z:function(){return O}});var r=o(791),a=o(3428),n=o(2265),l=o(7042),i=o(5600),c=o(9975),s=o(9782),p=o(7437),u=(0,s.Z)((0,p.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"}),"Cancel"),d=o(7663),g=o(8702),f=o(6659),m=o(7927),v=o(5843),b=o(6520),h=o(5702);function Z(e){return(0,h.Z)("MuiChip",e)}let y=(0,b.Z)("MuiChip",["root","sizeSmall","sizeMedium","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","disabled","clickable","clickableColorPrimary","clickableColorSecondary","deletable","deletableColorPrimary","deletableColorSecondary","outlined","filled","outlinedPrimary","outlinedSecondary","filledPrimary","filledSecondary","avatar","avatarSmall","avatarMedium","avatarColorPrimary","avatarColorSecondary","icon","iconSmall","iconMedium","iconColorPrimary","iconColorSecondary","label","labelSmall","labelMedium","deleteIcon","deleteIconSmall","deleteIconMedium","deleteIconColorPrimary","deleteIconColorSecondary","deleteIconOutlinedColorPrimary","deleteIconOutlinedColorSecondary","deleteIconFilledColorPrimary","deleteIconFilledColorSecondary","focusVisible"]),$=["avatar","className","clickable","color","component","deleteIcon","disabled","icon","label","onClick","onDelete","onKeyDown","onKeyUp","size","variant","tabIndex","skipFocusWhenDisabled"],x=e=>{let{classes:t,disabled:o,size:r,color:a,iconColor:n,onDelete:l,clickable:c,variant:s}=e,p={root:["root",s,o&&"disabled",`size${(0,g.Z)(r)}`,`color${(0,g.Z)(a)}`,c&&"clickable",c&&`clickableColor${(0,g.Z)(a)}`,l&&"deletable",l&&`deletableColor${(0,g.Z)(a)}`,`${s}${(0,g.Z)(a)}`],label:["label",`label${(0,g.Z)(r)}`],avatar:["avatar",`avatar${(0,g.Z)(r)}`,`avatarColor${(0,g.Z)(a)}`],icon:["icon",`icon${(0,g.Z)(r)}`,`iconColor${(0,g.Z)(n)}`],deleteIcon:["deleteIcon",`deleteIcon${(0,g.Z)(r)}`,`deleteIconColor${(0,g.Z)(a)}`,`deleteIcon${(0,g.Z)(s)}Color${(0,g.Z)(a)}`]};return(0,i.Z)(p,Z,t)},C=(0,v.ZP)("div",{name:"MuiChip",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:o}=e,{color:r,iconColor:a,clickable:n,onDelete:l,size:i,variant:c}=o;return[{[`& .${y.avatar}`]:t.avatar},{[`& .${y.avatar}`]:t[`avatar${(0,g.Z)(i)}`]},{[`& .${y.avatar}`]:t[`avatarColor${(0,g.Z)(r)}`]},{[`& .${y.icon}`]:t.icon},{[`& .${y.icon}`]:t[`icon${(0,g.Z)(i)}`]},{[`& .${y.icon}`]:t[`iconColor${(0,g.Z)(a)}`]},{[`& .${y.deleteIcon}`]:t.deleteIcon},{[`& .${y.deleteIcon}`]:t[`deleteIcon${(0,g.Z)(i)}`]},{[`& .${y.deleteIcon}`]:t[`deleteIconColor${(0,g.Z)(r)}`]},{[`& .${y.deleteIcon}`]:t[`deleteIcon${(0,g.Z)(c)}Color${(0,g.Z)(r)}`]},t.root,t[`size${(0,g.Z)(i)}`],t[`color${(0,g.Z)(r)}`],n&&t.clickable,n&&"default"!==r&&t[`clickableColor${(0,g.Z)(r)})`],l&&t.deletable,l&&"default"!==r&&t[`deletableColor${(0,g.Z)(r)}`],t[c],t[`${c}${(0,g.Z)(r)}`]]}})(({theme:e,ownerState:t})=>{let o="light"===e.palette.mode?e.palette.grey[700]:e.palette.grey[300];return(0,a.Z)({maxWidth:"100%",fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(13),display:"inline-flex",alignItems:"center",justifyContent:"center",height:32,color:(e.vars||e).palette.text.primary,backgroundColor:(e.vars||e).palette.action.selected,borderRadius:16,whiteSpace:"nowrap",transition:e.transitions.create(["background-color","box-shadow"]),outline:0,textDecoration:"none",border:0,padding:0,verticalAlign:"middle",boxSizing:"border-box",[`&.${y.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,pointerEvents:"none"},[`& .${y.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:e.vars?e.vars.palette.Chip.defaultAvatarColor:o,fontSize:e.typography.pxToRem(12)},[`& .${y.avatarColorPrimary}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.dark},[`& .${y.avatarColorSecondary}`]:{color:(e.vars||e).palette.secondary.contrastText,backgroundColor:(e.vars||e).palette.secondary.dark},[`& .${y.avatarSmall}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:e.typography.pxToRem(10)},[`& .${y.icon}`]:(0,a.Z)({marginLeft:5,marginRight:-6},"small"===t.size&&{fontSize:18,marginLeft:4,marginRight:-4},t.iconColor===t.color&&(0,a.Z)({color:e.vars?e.vars.palette.Chip.defaultIconColor:o},"default"!==t.color&&{color:"inherit"})),[`& .${y.deleteIcon}`]:(0,a.Z)({WebkitTapHighlightColor:"transparent",color:e.vars?`rgba(${e.vars.palette.text.primaryChannel} / 0.26)`:(0,c.Fq)(e.palette.text.primary,.26),fontSize:22,cursor:"pointer",margin:"0 5px 0 -6px","&:hover":{color:e.vars?`rgba(${e.vars.palette.text.primaryChannel} / 0.4)`:(0,c.Fq)(e.palette.text.primary,.4)}},"small"===t.size&&{fontSize:16,marginRight:4,marginLeft:-4},"default"!==t.color&&{color:e.vars?`rgba(${e.vars.palette[t.color].contrastTextChannel} / 0.7)`:(0,c.Fq)(e.palette[t.color].contrastText,.7),"&:hover, &:active":{color:(e.vars||e).palette[t.color].contrastText}})},"small"===t.size&&{height:24},"default"!==t.color&&{backgroundColor:(e.vars||e).palette[t.color].main,color:(e.vars||e).palette[t.color].contrastText},t.onDelete&&{[`&.${y.focusVisible}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.action.selectedChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:(0,c.Fq)(e.palette.action.selected,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}},t.onDelete&&"default"!==t.color&&{[`&.${y.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t.color].dark}})},({theme:e,ownerState:t})=>(0,a.Z)({},t.clickable&&{userSelect:"none",WebkitTapHighlightColor:"transparent",cursor:"pointer","&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.action.selectedChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:(0,c.Fq)(e.palette.action.selected,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity)},[`&.${y.focusVisible}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.action.selectedChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:(0,c.Fq)(e.palette.action.selected,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)},"&:active":{boxShadow:(e.vars||e).shadows[1]}},t.clickable&&"default"!==t.color&&{[`&:hover, &.${y.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t.color].dark}}),({theme:e,ownerState:t})=>(0,a.Z)({},"outlined"===t.variant&&{backgroundColor:"transparent",border:e.vars?`1px solid ${e.vars.palette.Chip.defaultBorder}`:`1px solid ${"light"===e.palette.mode?e.palette.grey[400]:e.palette.grey[700]}`,[`&.${y.clickable}:hover`]:{backgroundColor:(e.vars||e).palette.action.hover},[`&.${y.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`& .${y.avatar}`]:{marginLeft:4},[`& .${y.avatarSmall}`]:{marginLeft:2},[`& .${y.icon}`]:{marginLeft:4},[`& .${y.iconSmall}`]:{marginLeft:2},[`& .${y.deleteIcon}`]:{marginRight:5},[`& .${y.deleteIconSmall}`]:{marginRight:3}},"outlined"===t.variant&&"default"!==t.color&&{color:(e.vars||e).palette[t.color].main,border:`1px solid ${e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / 0.7)`:(0,c.Fq)(e.palette[t.color].main,.7)}`,[`&.${y.clickable}:hover`]:{backgroundColor:e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / ${e.vars.palette.action.hoverOpacity})`:(0,c.Fq)(e.palette[t.color].main,e.palette.action.hoverOpacity)},[`&.${y.focusVisible}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / ${e.vars.palette.action.focusOpacity})`:(0,c.Fq)(e.palette[t.color].main,e.palette.action.focusOpacity)},[`& .${y.deleteIcon}`]:{color:e.vars?`rgba(${e.vars.palette[t.color].mainChannel} / 0.7)`:(0,c.Fq)(e.palette[t.color].main,.7),"&:hover, &:active":{color:(e.vars||e).palette[t.color].main}}})),k=(0,v.ZP)("span",{name:"MuiChip",slot:"Label",overridesResolver:(e,t)=>{let{ownerState:o}=e,{size:r}=o;return[t.label,t[`label${(0,g.Z)(r)}`]]}})(({ownerState:e})=>(0,a.Z)({overflow:"hidden",textOverflow:"ellipsis",paddingLeft:12,paddingRight:12,whiteSpace:"nowrap"},"small"===e.size&&{paddingLeft:8,paddingRight:8}));function I(e){return"Backspace"===e.key||"Delete"===e.key}let S=n.forwardRef(function(e,t){let o=(0,m.Z)({props:e,name:"MuiChip"}),{avatar:i,className:c,clickable:s,color:g="default",component:v,deleteIcon:b,disabled:h=!1,icon:Z,label:y,onClick:S,onDelete:O,onKeyDown:R,onKeyUp:P,size:w="medium",variant:L="filled",tabIndex:z,skipFocusWhenDisabled:M=!1}=o,T=(0,r.Z)(o,$),A=n.useRef(null),N=(0,d.Z)(A,t),D=e=>{e.stopPropagation(),O&&O(e)},F=!1!==s&&!!S||s,E=F||O?f.Z:v||"div",j=(0,a.Z)({},o,{component:E,disabled:h,size:w,color:g,iconColor:n.isValidElement(Z)&&Z.props.color||g,onDelete:!!O,clickable:F,variant:L}),V=x(j),q=E===f.Z?(0,a.Z)({component:v||"div",focusVisibleClassName:V.focusVisible},O&&{disableRipple:!0}):{},W=null;O&&(W=b&&n.isValidElement(b)?n.cloneElement(b,{className:(0,l.Z)(b.props.className,V.deleteIcon),onClick:D}):(0,p.jsx)(u,{className:(0,l.Z)(V.deleteIcon),onClick:D}));let H=null;i&&n.isValidElement(i)&&(H=n.cloneElement(i,{className:(0,l.Z)(V.avatar,i.props.className)}));let B=null;return Z&&n.isValidElement(Z)&&(B=n.cloneElement(Z,{className:(0,l.Z)(V.icon,Z.props.className)})),(0,p.jsxs)(C,(0,a.Z)({as:E,className:(0,l.Z)(V.root,c),disabled:!!F&&!!h||void 0,onClick:S,onKeyDown:e=>{e.currentTarget===e.target&&I(e)&&e.preventDefault(),R&&R(e)},onKeyUp:e=>{e.currentTarget===e.target&&(O&&I(e)?O(e):"Escape"===e.key&&A.current&&A.current.blur()),P&&P(e)},ref:N,tabIndex:M&&h?-1:z,ownerState:j},q,T,{children:[H||B,(0,p.jsx)(k,{className:(0,l.Z)(V.label),ownerState:j,children:y}),W]}))});var O=S},2653:function(e,t,o){"use strict";o.d(t,{Z:function(){return x}});var r=o(791),a=o(3428),n=o(2265),l=o(7042),i=o(5600),c=o(9975),s=o(5843),p=o(7927),u=o(6659),d=o(8702),g=o(6520),f=o(5702);function m(e){return(0,f.Z)("MuiIconButton",e)}let v=(0,g.Z)("MuiIconButton",["root","disabled","colorInherit","colorPrimary","colorSecondary","colorError","colorInfo","colorSuccess","colorWarning","edgeStart","edgeEnd","sizeSmall","sizeMedium","sizeLarge"]);var b=o(7437);let h=["edge","children","className","color","disabled","disableFocusRipple","size"],Z=e=>{let{classes:t,disabled:o,color:r,edge:a,size:n}=e,l={root:["root",o&&"disabled","default"!==r&&`color${(0,d.Z)(r)}`,a&&`edge${(0,d.Z)(a)}`,`size${(0,d.Z)(n)}`]};return(0,i.Z)(l,m,t)},y=(0,s.ZP)(u.Z,{name:"MuiIconButton",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:o}=e;return[t.root,"default"!==o.color&&t[`color${(0,d.Z)(o.color)}`],o.edge&&t[`edge${(0,d.Z)(o.edge)}`],t[`size${(0,d.Z)(o.size)}`]]}})(({theme:e,ownerState:t})=>(0,a.Z)({textAlign:"center",flex:"0 0 auto",fontSize:e.typography.pxToRem(24),padding:8,borderRadius:"50%",overflow:"visible",color:(e.vars||e).palette.action.active,transition:e.transitions.create("background-color",{duration:e.transitions.duration.shortest})},!t.disableRipple&&{"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.action.activeChannel} / ${e.vars.palette.action.hoverOpacity})`:(0,c.Fq)(e.palette.action.active,e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12}),({theme:e,ownerState:t})=>{var o;let r=null==(o=(e.vars||e).palette)?void 0:o[t.color];return(0,a.Z)({},"inherit"===t.color&&{color:"inherit"},"inherit"!==t.color&&"default"!==t.color&&(0,a.Z)({color:null==r?void 0:r.main},!t.disableRipple&&{"&:hover":(0,a.Z)({},r&&{backgroundColor:e.vars?`rgba(${r.mainChannel} / ${e.vars.palette.action.hoverOpacity})`:(0,c.Fq)(r.main,e.palette.action.hoverOpacity)},{"@media (hover: none)":{backgroundColor:"transparent"}})}),"small"===t.size&&{padding:5,fontSize:e.typography.pxToRem(18)},"large"===t.size&&{padding:12,fontSize:e.typography.pxToRem(28)},{[`&.${v.disabled}`]:{backgroundColor:"transparent",color:(e.vars||e).palette.action.disabled}})}),$=n.forwardRef(function(e,t){let o=(0,p.Z)({props:e,name:"MuiIconButton"}),{edge:n=!1,children:i,className:c,color:s="default",disabled:u=!1,disableFocusRipple:d=!1,size:g="medium"}=o,f=(0,r.Z)(o,h),m=(0,a.Z)({},o,{edge:n,color:s,disabled:u,disableFocusRipple:d,size:g}),v=Z(m);return(0,b.jsx)(y,(0,a.Z)({className:(0,l.Z)(v.root,c),centerRipple:!0,focusRipple:!d,disabled:u,ref:t,ownerState:m},f,{children:i}))});var x=$},3135:function(e,t,o){"use strict";o.r(t),o.d(t,{capitalize:function(){return a.Z},createChainedFunction:function(){return n},createSvgIcon:function(){return l.Z},debounce:function(){return i.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return s.Z},ownerDocument:function(){return p.Z},ownerWindow:function(){return u.Z},requirePropFactory:function(){return d},setRef:function(){return g},unstable_ClassNameGenerator:function(){return $},unstable_useEnhancedEffect:function(){return f.Z},unstable_useId:function(){return m.Z},unsupportedProp:function(){return v},useControlled:function(){return b.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return Z.Z},useIsFocusVisible:function(){return y.Z}});var r=o(5097),a=o(8702),n=o(2940).Z,l=o(9782),i=o(494),c=function(e,t){return()=>null},s=o(673),p=o(3931),u=o(6649);o(3428);var d=function(e,t){return()=>null},g=o(3406).Z,f=o(8519),m=o(419),v=function(e,t,o,r,a){return null},b=o(3292),h=o(96),Z=o(7663),y=o(2143);let $={configure:e=>{r.Z.configure(e)}}},6314:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}}]);