streamlit-nightly 1.39.1.dev20241022__py2.py3-none-any.whl → 1.39.1.dev20241025__py2.py3-none-any.whl

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 (32) hide show
  1. streamlit/static/asset-manifest.json +15 -15
  2. streamlit/static/index.html +1 -1
  3. streamlit/static/static/css/{main.5513bd04.css → main.a1bc16b2.css} +1 -1
  4. streamlit/static/static/js/1260.f4b7cd39.chunk.js +5 -0
  5. streamlit/static/static/js/{3224.86a6ba35.chunk.js → 3224.a04b49ba.chunk.js} +1 -1
  6. streamlit/static/static/js/3560.22d06cb7.chunk.js +1 -0
  7. streamlit/static/static/js/5618.f51b795a.chunk.js +5 -0
  8. streamlit/static/static/js/6360.50be2ff5.chunk.js +1 -0
  9. streamlit/static/static/js/7193.534e7da1.chunk.js +1 -0
  10. streamlit/static/static/js/{8166.094f1288.chunk.js → 8166.1d69c908.chunk.js} +1 -1
  11. streamlit/static/static/js/9114.ee2dff18.chunk.js +1 -0
  12. streamlit/static/static/js/954.07ce4880.chunk.js +5 -0
  13. streamlit/static/static/js/{9943.54dc52f7.chunk.js → 9943.7e306ca1.chunk.js} +1 -1
  14. streamlit/static/static/js/9993.5b55b4c2.chunk.js +1 -0
  15. streamlit/static/static/js/main.d68f7490.js +28 -0
  16. streamlit/web/server/component_request_handler.py +1 -1
  17. {streamlit_nightly-1.39.1.dev20241022.dist-info → streamlit_nightly-1.39.1.dev20241025.dist-info}/METADATA +2 -2
  18. {streamlit_nightly-1.39.1.dev20241022.dist-info → streamlit_nightly-1.39.1.dev20241025.dist-info}/RECORD +23 -23
  19. streamlit/static/static/js/1260.dc193a5e.chunk.js +0 -5
  20. streamlit/static/static/js/3560.50f03f0f.chunk.js +0 -1
  21. streamlit/static/static/js/5618.2d933cb5.chunk.js +0 -5
  22. streamlit/static/static/js/6073.192808c1.chunk.js +0 -1
  23. streamlit/static/static/js/6360.172f2b06.chunk.js +0 -1
  24. streamlit/static/static/js/7193.629fc6fe.chunk.js +0 -1
  25. streamlit/static/static/js/9114.37a044b5.chunk.js +0 -1
  26. streamlit/static/static/js/954.88014372.chunk.js +0 -5
  27. streamlit/static/static/js/main.b154eb39.js +0 -28
  28. /streamlit/static/static/js/{main.b154eb39.js.LICENSE.txt → main.d68f7490.js.LICENSE.txt} +0 -0
  29. {streamlit_nightly-1.39.1.dev20241022.data → streamlit_nightly-1.39.1.dev20241025.data}/scripts/streamlit.cmd +0 -0
  30. {streamlit_nightly-1.39.1.dev20241022.dist-info → streamlit_nightly-1.39.1.dev20241025.dist-info}/WHEEL +0 -0
  31. {streamlit_nightly-1.39.1.dev20241022.dist-info → streamlit_nightly-1.39.1.dev20241025.dist-info}/entry_points.txt +0 -0
  32. {streamlit_nightly-1.39.1.dev20241022.dist-info → streamlit_nightly-1.39.1.dev20241025.dist-info}/top_level.txt +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_streamlit_app=self.webpackChunk_streamlit_app||[]).push([[9943],{55516:(e,t,n)=>{n.d(t,{A:()=>m});n(58878);var i=n(53124),o=n.n(i),r=n(41514),l=n(67214),a=n(64611),s=n(98226),d=n(4883),u=n(90782);const c=e=>{let{children:t,width:n,height:i,disableFullscreenMode:o}=e;const{expanded:c,fullHeight:m,fullWidth:h,zoomIn:g,zoomOut:f}=(0,s.H)();let p=r.u,v=g,b="View fullscreen";return c&&(p=l.Q,v=f,b="Exit fullscreen"),(0,u.jsxs)(d.g,{isExpanded:c,"data-testid":"stFullScreenFrame",children:[!o&&(0,u.jsx)(d.j,{"data-testid":"StyledFullScreenButton",onClick:v,title:b,isExpanded:c,children:(0,u.jsx)(a.A,{content:p})}),t({width:c?h:n,height:c?m:i,expanded:c,expand:g,collapse:f})]})};const m=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=n=>{const{width:i,height:o,disableFullscreenMode:r}=n;return(0,u.jsx)(c,{width:i,height:o,disableFullscreenMode:t||r,children:t=>{let{width:i,height:o,expanded:r,expand:l,collapse:a}=t;return(0,u.jsx)(e,{...n,width:i,height:o,isFullScreen:r,expand:l,collapse:a})}})};return n.displayName=`withFullScreenWrapper(${e.displayName||e.name})`,o()(n,e)}},85850:(e,t,n)=>{n.d(t,{K:()=>v,A:()=>b});n(58878);var i=n(8151),o=n(12274),r=n(63186),l=n(4629),a=n(997),s=n(36459),d=n(84720),u=n(64611),c=n(89653),m=n(16795);const h="-2.4rem",g=(0,c.A)("div",{target:"e2wxzia1"})((e=>{let{theme:t,locked:n,target:i}=e;return{padding:`${t.spacing.sm} 0 ${t.spacing.sm} ${t.spacing.sm}`,position:"absolute",top:n?h:"-1rem",right:t.spacing.none,transition:"none",...!n&&{opacity:0,"&:active, &:focus-visible, &:hover":{transition:"opacity 150ms 100ms, top 100ms 100ms",opacity:1,top:h},...i&&{[`${i}:hover &, ${i}:active &, ${i}:focus-visible &`]:{transition:"opacity 150ms 100ms, top 100ms 100ms",opacity:1,top:h}}}}}),""),f=(0,c.A)("div",{target:"e2wxzia0"})((e=>{let{theme:t}=e;return{color:(0,m.iq)(t)?t.colors.fadedText60:t.colors.bodyText,display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"flex-end",boxShadow:"1px 2px 8px rgba(0, 0, 0, 0.08)",borderRadius:t.radii.default,backgroundColor:t.colors.lightenedBg05,width:"fit-content",zIndex:t.zIndices.sidebar+1}}),"");var p=n(90782);function v(e){let{label:t,show_label:n,icon:o,onClick:r}=e;const c=(0,i.u)(),m=n?t:"";return(0,p.jsx)("div",{"data-testid":"stElementToolbarButton",children:(0,p.jsx)(a.A,{content:(0,p.jsx)(l.Ay,{source:t,allowHTML:!1,style:{fontSize:c.fontSizes.sm}}),placement:a.W.TOP,onMouseEnterDelay:1e3,inline:!0,children:(0,p.jsxs)(s.Ay,{onClick:e=>{r&&r(),e.stopPropagation()},kind:d.KX.ELEMENT_TOOLBAR,"aria-label":t,children:[o&&(0,p.jsx)(u.A,{content:o,size:"md",testid:"stElementToolbarButtonIcon"}),m&&(0,p.jsx)("span",{children:m})]})})})}const b=e=>{let{onExpand:t,onCollapse:n,isFullScreen:i,locked:l,children:a,target:s,disableFullscreenMode:d}=e;return(0,p.jsx)(g,{className:"stElementToolbar","data-testid":"stElementToolbar",locked:l||i,target:s,children:(0,p.jsxs)(f,{children:[a,t&&!d&&!i&&(0,p.jsx)(v,{label:"Fullscreen",icon:o.g,onClick:()=>t()}),n&&!d&&i&&(0,p.jsx)(v,{label:"Close fullscreen",icon:r.Q,onClick:()=>n()})]})})}},251:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Nt});var i=n(58878),o=n(35753),r=n(79104),l=n(52583),a=n(68994),s=n(95241),d=n(61730),u=n(18364),c=n(2128),m=n(34752),h=n(55516),g=n(29669),f=n(25571),p=n(85850),v=n(84152),b=n(37638),y=n.n(b),w=n(30136),x=n.n(w),C=n(17643),M=n.n(C),S=(n(20641),n(91381)),E=n.n(S),T=n(37904),k=n.n(T),R=n(34694),N=n(85729);const I=["true","t","yes","y","on","1"],_=["false","f","no","n","off","0"];function O(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e=`\u26a0\ufe0f ${e}`,{kind:o.dd.Text,readonly:!0,allowOverlay:!0,data:e+(t?`\n\n${t}\n`:""),displayData:e,isError:!0}}function D(e){return e.hasOwnProperty("isError")&&e.isError}function A(e){return e.hasOwnProperty("isMissingValue")&&e.isMissingValue}function F(){return arguments.length>0&&void 0!==arguments[0]&&arguments[0]?{kind:o.dd.Loading,allowOverlay:!1,isMissingValue:!0}:{kind:o.dd.Loading,allowOverlay:!1}}function $(e,t){const n=t?"faded":"normal";return{kind:o.dd.Text,data:"",displayData:"",allowOverlay:!0,readonly:e,style:n}}function L(e){return{id:e.id,title:e.title,hasMenu:!1,themeOverride:e.themeOverride,icon:e.icon,group:e.group,...e.isStretched&&{grow:e.isIndex?1:3},...e.width&&{width:e.width}}}function z(e,t){return(0,f.hX)(e)?t||{}:(0,f.hX)(t)?e||{}:y()(e,t)}function X(e){if((0,f.hX)(e))return[];if("number"===typeof e||"boolean"===typeof e)return[e];if("string"===typeof e){if(""===e)return[];if(!e.trim().startsWith("[")||!e.trim().endsWith("]"))return e.split(",");try{return JSON.parse(e)}catch(t){return[e]}}try{const t=JSON.parse(JSON.stringify(e,((e,t)=>"bigint"===typeof t?Number(t):t)));return Array.isArray(t)?t.map((e=>["string","number","boolean","null"].includes(typeof e)?e:H(e))):[H(t)]}catch(t){return[H(e)]}}function H(e){try{try{return x()(e)}catch(t){return JSON.stringify(e,((e,t)=>"bigint"===typeof t?Number(t):t))}}catch(t){return`[${typeof e}]`}}function V(e){if((0,f.hX)(e))return null;if("boolean"===typeof e)return e;const t=H(e).toLowerCase().trim();return""===t?null:!!I.includes(t)||!_.includes(t)&&void 0}function j(e){if((0,f.hX)(e))return null;if(Array.isArray(e))return NaN;if("string"===typeof e){if(0===e.trim().length)return null;try{const t=k().unformat(e.trim());if((0,f.se)(t))return t}catch(t){}}else if(e instanceof Int32Array)return Number(e[0]);return Number(e)}function W(e,t,n){return Number.isNaN(e)||!Number.isFinite(e)?"":(0,f.hX)(t)||""===t?(0===n&&(e=Math.round(e)),k()(e).format((0,f.se)(n)?`0,0.${"0".repeat(n)}`:"0,0.[0000]")):"percent"===t?new Intl.NumberFormat(void 0,{style:"percent",minimumFractionDigits:2,maximumFractionDigits:2}).format(e):["compact","scientific","engineering"].includes(t)?new Intl.NumberFormat(void 0,{notation:t}).format(e):"duration[ns]"===t?M().duration(e/1e6,"milliseconds").humanize():t.startsWith("period[")?N.D0.formatPeriodType(BigInt(e),t):(0,R.sprintf)(t,e)}function B(e,t){return"locale"===t?new Intl.DateTimeFormat(void 0,{dateStyle:"medium",timeStyle:"medium"}).format(e.toDate()):"distance"===t?e.fromNow():"relative"===t?e.calendar():e.format(t)}function Y(e){if((0,f.hX)(e))return null;if(e instanceof Date)return isNaN(e.getTime())?void 0:e;if("string"===typeof e&&0===e.trim().length)return null;try{const t=Number(e);if(!isNaN(t)){let e=t;t>=10**18?e=t/1e3**3:t>=10**15?e=t/1e6:t>=10**12&&(e=t/1e3);const n=M().unix(e).utc();if(n.isValid())return n.toDate()}if("string"===typeof e){const t=M().utc(e);if(t.isValid())return t.toDate();const n=M().utc(e,[M().HTML5_FMT.TIME_MS,M().HTML5_FMT.TIME_SECONDS,M().HTML5_FMT.TIME]);if(n.isValid())return n.toDate()}}catch(t){return}}function P(e){if(e%1===0)return 0;let t=e.toString();return-1!==t.indexOf("e")&&(t=e.toLocaleString("fullwide",{useGrouping:!1,maximumFractionDigits:20})),-1===t.indexOf(".")?0:t.split(".")[1].length}const U=new RegExp(/(\r\n|\n|\r)/gm);function q(e){return-1!==e.indexOf("\n")?e.replace(U," "):e}var J=n(8151),G=n(84996);function K(e){const t={kind:o.dd.Text,data:"",displayData:"",allowOverlay:!0,contentAlignment:e.contentAlignment,readonly:!0,style:e.isIndex?"faded":"normal"};return{...e,kind:"object",sortMode:"default",isEditable:!1,getCell(e){try{const n=(0,f.se)(e)?H(e):null,i=(0,f.se)(n)?q(n):"";return{...t,data:n,displayData:i,isMissingValue:(0,f.hX)(e)}}catch(n){return O(H(e),`The value cannot be interpreted as a string. Error: ${n}`)}},getCellValue:e=>void 0===e.data?null:e.data}}K.isEditableType=!1;const Z=K;function Q(e){const t=e.columnTypeOptions||{};let n;if(t.validate)try{n=new RegExp(t.validate,"us")}catch(l){n=`Invalid validate regex: ${t.validate}.\nError: ${l}`}const i={kind:o.dd.Text,data:"",displayData:"",allowOverlay:!0,contentAlignment:e.contentAlignment,readonly:!e.isEditable,style:e.isIndex?"faded":"normal"},r=i=>{if((0,f.hX)(i))return!e.isRequired;let o=H(i),r=!1;return t.max_chars&&o.length>t.max_chars&&(o=o.slice(0,t.max_chars),r=!0),!(n instanceof RegExp&&!1===n.test(o))&&(!r||o)};return{...e,kind:"text",sortMode:"default",validateInput:r,getCell(e,t){if("string"===typeof n)return O(H(e),n);if(t){const t=r(e);if(!1===t)return O(H(e),"Invalid input.");"string"===typeof t&&(e=t)}try{const t=(0,f.se)(e)?H(e):null,n=(0,f.se)(t)?q(t):"";return{...i,isMissingValue:(0,f.hX)(t),data:t,displayData:n}}catch(l){return O("Incompatible value",`The value cannot be interpreted as string. Error: ${l}`)}},getCellValue:e=>void 0===e.data?null:e.data}}Q.isEditableType=!0;const ee=Q;function te(e,t){return e=t.startsWith("+")||t.startsWith("-")?e.utcOffset(t,!1):e.tz(t)}function ne(e,t,n,i,r,l,a){var s;const d=z({format:n,step:i,timezone:a},t.columnTypeOptions);let u,c,m;if((0,f.se)(d.timezone))try{var h;u=(null===(h=te(E()(),d.timezone))||void 0===h?void 0:h.utcOffset())||void 0}catch(v){}(0,f.se)(d.min_value)&&(c=Y(d.min_value)||void 0),(0,f.se)(d.max_value)&&(m=Y(d.max_value)||void 0);const g={kind:o.dd.Custom,allowOverlay:!0,copyData:"",readonly:!t.isEditable,contentAlign:t.contentAlignment,style:t.isIndex?"faded":"normal",data:{kind:"date-picker-cell",date:void 0,displayDate:"",step:(null===(s=d.step)||void 0===s?void 0:s.toString())||"1",format:r,min:c,max:m}},p=e=>{const n=Y(e);return null===n?!t.isRequired:void 0!==n&&(!((0,f.se)(c)&&l(n)<l(c))&&!((0,f.se)(m)&&l(n)>l(m)))};return{...t,kind:e,sortMode:"default",validateInput:p,getCell(e,t){if(!0===t){const t=p(e);if(!1===t)return O(H(e),"Invalid input.");t instanceof Date&&(e=t)}const i=Y(e);let o="",r="",l=u;if(void 0===i)return O(H(e),"The value cannot be interpreted as a datetime object.");if(null!==i){let e=E().utc(i);if(!e.isValid())return O(H(i),`This should never happen. Please report this bug. \nError: ${e.toString()}`);if(d.timezone){try{e=te(e,d.timezone)}catch(v){return O(e.toISOString(),`Failed to adjust to the provided timezone: ${d.timezone}. \nError: ${v}`)}l=e.utcOffset()}try{r=B(e,d.format||n)}catch(v){return O(e.toISOString(),`Failed to format the date for rendering with: ${d.format}. \nError: ${v}`)}o=B(e,n)}return{...g,copyData:o,isMissingValue:(0,f.hX)(i),data:{...g.data,date:i,displayDate:r,timezoneOffset:l}}},getCellValue(e){var t;return(0,f.hX)(null===e||void 0===e||null===(t=e.data)||void 0===t?void 0:t.date)?null:l(e.data.date)}}}function ie(e){var t,n,i,o,r;let l="YYYY-MM-DD HH:mm:ss";(null===(t=e.columnTypeOptions)||void 0===t?void 0:t.step)>=60?l="YYYY-MM-DD HH:mm":(null===(n=e.columnTypeOptions)||void 0===n?void 0:n.step)<1&&(l="YYYY-MM-DD HH:mm:ss.SSS");const a=null===(i=e.arrowType)||void 0===i||null===(o=i.meta)||void 0===o?void 0:o.timezone,s=(0,f.se)(a)||(0,f.se)(null===e||void 0===e||null===(r=e.columnTypeOptions)||void 0===r?void 0:r.timezone);return ne("datetime",e,s?l+"Z":l,1,"datetime-local",(e=>s?e.toISOString():e.toISOString().replace("Z","")),a)}function oe(e){var t,n;let i="HH:mm:ss";return(null===(t=e.columnTypeOptions)||void 0===t?void 0:t.step)>=60?i="HH:mm":(null===(n=e.columnTypeOptions)||void 0===n?void 0:n.step)<1&&(i="HH:mm:ss.SSS"),ne("time",e,i,1,"time",(e=>e.toISOString().split("T")[1].replace("Z","")))}function re(e){return ne("date",e,"YYYY-MM-DD",1,"date",(e=>e.toISOString().split("T")[0]))}function le(e){const t={kind:o.dd.Boolean,data:!1,allowOverlay:!1,contentAlign:e.contentAlignment,readonly:!e.isEditable,style:e.isIndex?"faded":"normal"};return{...e,kind:"checkbox",sortMode:"default",getCell(e){let n=null;return n=V(e),void 0===n?O(H(e),"The value cannot be interpreted as boolean."):{...t,data:n,isMissingValue:(0,f.hX)(n)}},getCellValue:e=>void 0===e.data?null:e.data}}ie.isEditableType=!0,oe.isEditableType=!0,re.isEditableType=!0,le.isEditableType=!0;const ae=le;function se(e){return e.startsWith("int")&&!e.startsWith("interval")||"range"===e||e.startsWith("uint")}function de(e){const t=N.D0.getTypeName(e.arrowType);let n;"timedelta64[ns]"===t?n="duration[ns]":t.startsWith("period[")&&(n=t);const i=z({step:se(t)?1:void 0,min_value:t.startsWith("uint")?0:void 0,format:n},e.columnTypeOptions),r=(0,f.hX)(i.min_value)||i.min_value<0,l=(0,f.se)(i.step)&&!Number.isNaN(i.step)?P(i.step):void 0,a={kind:o.dd.Number,data:void 0,displayData:"",readonly:!e.isEditable,allowOverlay:!0,contentAlign:e.contentAlignment||"right",style:e.isIndex?"faded":"normal",allowNegative:r,fixedDecimals:l,thousandSeparator:""},s=t=>{let n=j(t);if((0,f.hX)(n))return!e.isRequired;if(Number.isNaN(n))return!1;let o=!1;return(0,f.se)(i.max_value)&&n>i.max_value&&(n=i.max_value,o=!0),!((0,f.se)(i.min_value)&&n<i.min_value)&&(!o||n)};return{...e,kind:"number",sortMode:"smart",validateInput:s,getCell(e,t){if(!0===t){const t=s(e);if(!1===t)return O(H(e),"Invalid input.");"number"===typeof t&&(e=t)}let n=j(e),o="";if((0,f.se)(n)){if(Number.isNaN(n))return O(H(e),"The value cannot be interpreted as a number.");if((0,f.se)(l)&&(r=n,n=0===(d=l)?Math.trunc(r):Math.trunc(r*10**d)/10**d),Number.isInteger(n)&&!Number.isSafeInteger(n))return O(H(e),"The value is larger than the maximum supported integer values in number columns (2^53).");try{o=W(n,i.format,l)}catch(u){return O(H(n),(0,f.se)(i.format)?`Failed to format the number based on the provided format configuration: (${i.format}). Error: ${u}`:`Failed to format the number. Error: ${u}`)}}var r,d;return{...a,data:n,displayData:o,isMissingValue:(0,f.hX)(n),copyData:(0,f.hX)(n)?"":H(n)}},getCellValue:e=>void 0===e.data?null:e.data}}de.isEditableType=!0;const ue=de;function ce(e){let t="string";const n=z({options:"bool"===N.D0.getTypeName(e.arrowType)?[!0,!1]:[]},e.columnTypeOptions),i=new Set(n.options.map((e=>typeof e)));1===i.size&&(i.has("number")||i.has("bigint")?t="number":i.has("boolean")&&(t="boolean"));const r={kind:o.dd.Custom,allowOverlay:!0,copyData:"",contentAlign:e.contentAlignment,readonly:!e.isEditable,style:e.isIndex?"faded":"normal",data:{kind:"dropdown-cell",allowedValues:[...!0!==e.isRequired?[null]:[],...n.options.filter((e=>null!==e&&""!==e)).map((e=>H(e)))],value:""}};return{...e,kind:"selectbox",sortMode:"default",getCell(e,t){let n=null;return(0,f.se)(e)&&""!==e&&(n=H(e)),t&&!r.data.allowedValues.includes(n)?O(H(n),"The value is not part of the allowed options."):{...r,isMissingValue:null===n,copyData:n||"",data:{...r.data,value:n}}},getCellValue(e){var n,i,o,r,l,a,s;return(0,f.hX)(null===(n=e.data)||void 0===n?void 0:n.value)||""===(null===(i=e.data)||void 0===i?void 0:i.value)?null:"number"===t?null!==(r=j(null===(l=e.data)||void 0===l?void 0:l.value))&&void 0!==r?r:null:"boolean"===t?null!==(a=V(null===(s=e.data)||void 0===s?void 0:s.value))&&void 0!==a?a:null:null===(o=e.data)||void 0===o?void 0:o.value}}}ce.isEditableType=!0;const me=ce;function he(e){const t={kind:o.dd.Bubble,data:[],allowOverlay:!0,contentAlign:e.contentAlignment,style:e.isIndex?"faded":"normal"};return{...e,kind:"list",sortMode:"default",isEditable:!1,getCell(e){const n=(0,f.hX)(e)?[]:X(e);return{...t,data:n,isMissingValue:(0,f.hX)(e),copyData:(0,f.hX)(e)?"":H(n.map((e=>"string"===typeof e&&e.includes(",")?e.replace(/,/g," "):e)))}},getCellValue:e=>(0,f.hX)(e.data)||A(e)?null:e.data}}he.isEditableType=!1;const ge=he;function fe(e,t,n){const i=new RegExp(`${e}[,\\s].*{(?:[^}]*[\\s;]{1})?${t}:\\s*([^;}]+)[;]?.*}`,"gm");n=n.replace(/{/g," {");const o=i.exec(n);if(o)return o[1].trim()}function pe(e,t){const n=e.types.index[t],i=e.indexNames[t];let o=!0;return"range"===N.D0.getTypeName(n)&&(o=!1),{id:`index-${t}`,name:i,title:i,isEditable:o,arrowType:n,isIndex:!0,isHidden:!1}}function ve(e,t){const n=e.columns.map((e=>e[t])),i=n.length>0?n[n.length-1]:"",o=n.length>1?n.filter((e=>""!==e)).slice(0,-1).join(" / "):void 0;let r,l=e.types.data[t];if((0,f.hX)(l)&&(l={meta:null,numpy_type:"object",pandas_type:"object"}),"categorical"===N.D0.getTypeName(l)){const n=e.getCategoricalOptions(t);(0,f.se)(n)&&(r={options:n})}return{id:`column-${i}-${t}`,name:i,title:i,isEditable:!0,arrowType:l,columnTypeOptions:r,isIndex:!1,isHidden:!1,group:o}}function be(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;const i=e.arrowType?N.D0.getTypeName(e.arrowType):null;let r;if("object"===e.kind)r=e.getCell((0,f.se)(t.content)?q(N.D0.format(t.content,t.contentType,t.field)):null);else if(["time","date","datetime"].includes(e.kind)&&(0,f.se)(t.content)&&("number"===typeof t.content||"bigint"===typeof t.content)){var l,a;let n;var s,d,u;if("time"===i&&(0,f.se)(null===(l=t.field)||void 0===l||null===(a=l.type)||void 0===a?void 0:a.unit))n=M().unix(N.D0.convertToSeconds(t.content,null!==(s=null===(d=t.field)||void 0===d||null===(u=d.type)||void 0===u?void 0:u.unit)&&void 0!==s?s:0)).utc().toDate();else n=M().utc(Number(t.content)).toDate();r=e.getCell(n)}else if("decimal"===i){const n=(0,f.hX)(t.content)?null:N.D0.format(t.content,t.contentType,t.field);r=e.getCell(n)}else r=e.getCell(t.content);if(D(r))return r;if(!e.isEditable){if((0,f.se)(t.displayContent)){var c,m,h,g;const n=q(t.displayContent);r.kind===o.dd.Text||r.kind===o.dd.Number&&(0,f.hX)(null===(c=e.columnTypeOptions)||void 0===c?void 0:c.format)||r.kind===o.dd.Uri&&(0,f.hX)(null===(m=e.columnTypeOptions)||void 0===m?void 0:m.display_text)?r={...r,displayData:n}:r.kind===o.dd.Custom&&"date-picker-cell"===(null===(h=r.data)||void 0===h?void 0:h.kind)&&(0,f.hX)(null===(g=e.columnTypeOptions)||void 0===g?void 0:g.format)&&(r={...r,data:{...r.data,displayDate:n}})}n&&t.cssId&&(r=function(e,t,n){const i={},o=fe(t,"color",n);o&&(i.textDark=o);const r=fe(t,"background-color",n);return r&&(i.bgCell=r),"yellow"===r&&void 0===o&&(i.textDark="#31333F"),i?{...e,themeOverride:i}:e}(r,t.cssId,n))}return r}function ye(e,t,n){const i=z({y_min:0,y_max:1},t.columnTypeOptions),r={kind:o.dd.Custom,allowOverlay:!1,copyData:"",contentAlign:t.contentAlignment,data:{kind:"sparkline-cell",values:[],displayValues:[],graphKind:n,yAxis:[i.y_min,i.y_max]}};return{...t,kind:e,sortMode:"default",isEditable:!1,getCell(e){if((0,f.hX)(i.y_min)||(0,f.hX)(i.y_max)||Number.isNaN(i.y_min)||Number.isNaN(i.y_max)||i.y_min>=i.y_max)return O("Invalid min/max y-axis configuration",`The y_min (${i.y_min}) and y_max (${i.y_max}) configuration options must be valid numbers.`);if((0,f.hX)(e))return F();const t=X(e),n=[];let o=[];if(0===t.length)return F();let l=Number.MIN_SAFE_INTEGER,a=Number.MAX_SAFE_INTEGER;for(let i=0;i<t.length;i++){const e=j(t[i]);if(Number.isNaN(e)||(0,f.hX)(e))return O(H(t),`The value cannot be interpreted as a numeric array. ${H(e)} is not a number.`);e>l&&(l=e),e<a&&(a=e),n.push(e)}return o=n.length>0&&(l>i.y_max||a<i.y_min)?n.map((e=>l-a===0?l>(i.y_max||1)?i.y_max||1:i.y_min||0:((i.y_max||1)-(i.y_min||0))*((e-a)/(l-a))+(i.y_min||0))):n,{...r,copyData:n.join(","),data:{...r.data,values:o,displayValues:n.map((e=>W(e)))},isMissingValue:(0,f.hX)(e)}},getCellValue(e){var t,n;return e.kind===o.dd.Loading||void 0===(null===(t=e.data)||void 0===t?void 0:t.values)?null:null===(n=e.data)||void 0===n?void 0:n.values}}}function we(e){return ye("line_chart",e,"line")}function xe(e){return ye("bar_chart",e,"bar")}function Ce(e){return ye("area_chart",e,"area")}function Me(e){const t={kind:o.dd.Image,data:[],displayData:[],readonly:!0,allowOverlay:!0,contentAlign:e.contentAlignment||"center",style:e.isIndex?"faded":"normal"};return{...e,kind:"image",sortMode:"default",isEditable:!1,getCell(e){const n=(0,f.se)(e)?[H(e)]:[];return{...t,data:n,isMissingValue:!(0,f.se)(e),displayData:n}},getCellValue:e=>void 0===e.data||0===e.data.length?null:e.data[0]}}we.isEditableType=!1,xe.isEditableType=!1,Ce.isEditableType=!1,Me.isEditableType=!1;const Se=Me;function Ee(e){const t=e.columnTypeOptions||{};let n,i;if(t.validate)try{n=new RegExp(t.validate,"us")}catch(a){n=`Invalid validate regex: ${t.validate}.\nError: ${a}`}if(!(0,f.hX)(t.display_text)&&t.display_text.includes("(")&&t.display_text.includes(")"))try{i=new RegExp(t.display_text,"us")}catch(a){i=void 0}const r={kind:o.dd.Uri,readonly:!e.isEditable,allowOverlay:!0,contentAlign:e.contentAlignment,style:e.isIndex?"faded":"normal",hoverEffect:!0,data:"",displayData:"",copyData:""},l=i=>{if((0,f.hX)(i))return!e.isRequired;const o=H(i);return!(t.max_chars&&o.length>t.max_chars)&&!(n instanceof RegExp&&!1===n.test(o))};return{...e,kind:"link",sortMode:"default",validateInput:l,getCell(e,o){if((0,f.hX)(e))return{...r,data:null,isMissingValue:!0,onClickUri:()=>{}};const s=e;if("string"===typeof n)return O(H(s),n);if(o){if(!1===l(s))return O(H(s),"Invalid input.")}let d="";return s&&(d=void 0!==i?function(e,t){if((0,f.hX)(t))return"";try{const n=t.match(e);return n&&void 0!==n[1]?decodeURI(n[1]):t}catch(a){return t}}(i,s):t.display_text||s),{...r,data:s,displayData:d,isMissingValue:(0,f.hX)(s),onClickUri:e=>{window.open(s.startsWith("www.")?`https://${s}`:s,"_blank","noopener,noreferrer"),e.preventDefault()},copyData:s}},getCellValue:e=>(0,f.hX)(e.data)?null:e.data}}Ee.isEditableType=!0;const Te=Ee;function ke(e){const t=se(N.D0.getTypeName(e.arrowType)),n=z({min_value:0,max_value:t?100:1,step:t?1:.01,format:t?"%3d%%":"percent"},e.columnTypeOptions);let i;try{i=W(n.max_value,n.format)}catch(a){i=H(n.max_value)}const r=(0,f.hX)(n.step)||Number.isNaN(n.step)?void 0:P(n.step),l={kind:o.dd.Custom,allowOverlay:!1,copyData:"",contentAlign:e.contentAlignment,data:{kind:"range-cell",min:n.min_value,max:n.max_value,step:n.step,value:n.min_value,label:String(n.min_value),measureLabel:i,readonly:!0}};return{...e,kind:"progress",sortMode:"smart",isEditable:!1,getCell(e){if((0,f.hX)(e))return F();if((0,f.hX)(n.min_value)||(0,f.hX)(n.max_value)||Number.isNaN(n.min_value)||Number.isNaN(n.max_value)||n.min_value>=n.max_value)return O("Invalid min/max parameters",`The min_value (${n.min_value}) and max_value (${n.max_value}) parameters must be valid numbers.`);if((0,f.hX)(n.step)||Number.isNaN(n.step))return O("Invalid step parameter",`The step parameter (${n.step}) must be a valid number.`);const t=j(e);if(Number.isNaN(t)||(0,f.hX)(t))return O(H(e),"The value cannot be interpreted as a number.");if(Number.isInteger(t)&&!Number.isSafeInteger(t))return O(H(e),"The value is larger than the maximum supported integer values in number columns (2^53).");let i="";try{i=W(t,n.format,r)}catch(a){return O(H(t),(0,f.se)(n.format)?`Failed to format the number based on the provided format configuration: (${n.format}). Error: ${a}`:`Failed to format the number. Error: ${a}`)}const o=Math.min(n.max_value,Math.max(n.min_value,t));return{...l,isMissingValue:(0,f.hX)(e),copyData:String(t),data:{...l.data,value:o,label:i}}},getCellValue(e){var t,n;return e.kind===o.dd.Loading||void 0===(null===(t=e.data)||void 0===t?void 0:t.value)?null:null===(n=e.data)||void 0===n?void 0:n.value}}}ke.isEditableType=!1;const Re=ke,Ne=new Map(Object.entries({object:Z,text:ee,checkbox:ae,selectbox:me,list:ge,number:ue,link:Te,datetime:ie,date:re,time:oe,line_chart:we,bar_chart:xe,area_chart:Ce,image:Se,progress:Re})),Ie=[],_e="_index",Oe="_pos:",De={small:75,medium:200,large:400};function Ae(e){if(!(0,f.hX)(e))return"number"===typeof e?e:e in De?De[e]:void 0}function Fe(e,t){if(!t)return e;let n;return t.has(e.name)&&e.name!==_e?n=t.get(e.name):t.has(`${Oe}${e.indexNumber}`)?n=t.get(`${Oe}${e.indexNumber}`):e.isIndex&&t.has(_e)&&(n=t.get(_e)),n?y()({...e},{title:n.label,width:Ae(n.width),isEditable:(0,f.se)(n.disabled)?!n.disabled:void 0,isHidden:n.hidden,isRequired:n.required,columnTypeOptions:n.type_config,contentAlignment:n.alignment,defaultValue:n.default,help:n.help}):e}function $e(e){var t;const n=null===(t=e.columnTypeOptions)||void 0===t?void 0:t.type;let i;return(0,f.se)(n)&&(Ne.has(n)?i=Ne.get(n):(0,G.FF)(`Unknown column type configured in column configuration: ${n}`)),(0,f.hX)(i)&&(i=function(e){let t=e?N.D0.getTypeName(e):null;return t?(t=t.toLowerCase().trim(),["unicode","empty","large_string[pyarrow]"].includes(t)?ee:["datetime","datetimetz"].includes(t)?ie:"time"===t?oe:"date"===t?re:["object","bytes"].includes(t)?Z:["bool"].includes(t)?ae:["int8","int16","int32","int64","uint8","uint16","uint32","uint64","float16","float32","float64","float96","float128","range","decimal"].includes(t)?ue:"categorical"===t?me:t.startsWith("list")?ge:Z):Z}(e.arrowType)),i}const Le=function(e,t,n){const o=(0,J.u)(),r=i.useMemo((()=>function(e){if(!e)return new Map;try{return new Map(Object.entries(JSON.parse(e)))}catch(t){return(0,G.vV)(t),new Map}}(e.columns)),[e.columns]),l=e.useContainerWidth||(0,f.se)(e.width)&&e.width>0;return{columns:i.useMemo((()=>{let i=function(e){const t=[],{dimensions:n}=e,i=n.headerColumns,o=n.dataColumns;if(0===i&&0===o)return t.push({id:"empty-index",title:"",indexNumber:0,isEditable:!1,isIndex:!0}),t;for(let r=0;r<i;r++){const n={...pe(e,r),indexNumber:r};t.push(n)}for(let r=0;r<o;r++){const n={...ve(e,r),indexNumber:r+i};t.push(n)}return t}(t).map((t=>{let i={...t,...Fe(t,r),isStretched:l};const a=$e(i);return(e.editingMode===g.i3.EditingMode.READ_ONLY||n||!1===a.isEditableType)&&(i={...i,isEditable:!1}),e.editingMode!==g.i3.EditingMode.READ_ONLY&&1==i.isEditable&&(i={...i,icon:"editable"},i.isRequired&&e.editingMode===g.i3.EditingMode.DYNAMIC&&(i={...i,isHidden:!1})),a(i,o)})).filter((e=>!e.isHidden));if(e.columnOrder&&e.columnOrder.length>0){const t=[];i.forEach((e=>{e.isIndex&&t.push(e)})),e.columnOrder.forEach((e=>{const n=i.find((t=>t.name===e));n&&!n.isIndex&&t.push(n)})),i=t}return i.length>0?i:[Z({id:"empty-index",title:"",indexNumber:0,isEditable:!1,isIndex:!0})]}),[t,r,l,n,e.editingMode,e.columnOrder,o])}};function ze(e){return e.isIndex?_e:(0,f.hX)(e.name)?"":e.name}const Xe=class{constructor(e){this.editedCells=new Map,this.addedRows=[],this.deletedRows=[],this.numRows=0,this.numRows=e}toJson(e){const t=new Map;e.forEach((e=>{t.set(e.indexNumber,e)}));const n={edited_rows:{},added_rows:[],deleted_rows:[]};this.editedCells.forEach(((e,i,o)=>{const r={};e.forEach(((e,n,i)=>{const o=t.get(n);o&&(r[ze(o)]=o.getCellValue(e))})),n.edited_rows[i]=r})),this.addedRows.forEach((e=>{const i={};let o=!1;e.forEach(((e,n,r)=>{const l=t.get(n);if(l){const t=l.getCellValue(e);l.isRequired&&l.isEditable&&A(e)&&(o=!0),(0,f.se)(t)&&(i[ze(l)]=t)}})),o||n.added_rows.push(i)})),n.deleted_rows=this.deletedRows;return JSON.stringify(n,((e,t)=>void 0===t?null:t))}fromJson(e,t){this.editedCells=new Map,this.addedRows=[],this.deletedRows=[];const n=JSON.parse(e),i=new Map;t.forEach((e=>{i.set(e.indexNumber,e)}));const o=new Map;t.forEach((e=>{o.set(ze(e),e)})),Object.keys(n.edited_rows).forEach((e=>{const t=Number(e),i=n.edited_rows[e];Object.keys(i).forEach((e=>{const n=i[e],r=o.get(e);if(r){const e=r.getCell(n);var l;if(e)this.editedCells.has(t)||this.editedCells.set(t,new Map),null===(l=this.editedCells.get(t))||void 0===l||l.set(r.indexNumber,e)}}))})),n.added_rows.forEach((e=>{const n=new Map;t.forEach((e=>{n.set(e.indexNumber,e.getCell(null))})),Object.keys(e).forEach((t=>{const i=e[t],r=o.get(t);if(r){const e=r.getCell(i);e&&n.set(r.indexNumber,e)}})),this.addedRows.push(n)})),this.deletedRows=n.deleted_rows}isAddedRow(e){return e>=this.numRows}getCell(e,t){if(this.isAddedRow(t))return this.addedRows[t-this.numRows].get(e);const n=this.editedCells.get(t);return void 0!==n?n.get(e):void 0}setCell(e,t,n){if(this.isAddedRow(t)){if(t-this.numRows>=this.addedRows.length)return;this.addedRows[t-this.numRows].set(e,n)}else{void 0===this.editedCells.get(t)&&this.editedCells.set(t,new Map);this.editedCells.get(t).set(e,n)}}addRow(e){this.addedRows.push(e)}deleteRows(e){e.sort(((e,t)=>t-e)).forEach((e=>{this.deleteRow(e)}))}deleteRow(e){(0,f.hX)(e)||e<0||(this.isAddedRow(e)?this.addedRows.splice(e-this.numRows,1):(this.deletedRows.includes(e)||(this.deletedRows.push(e),this.deletedRows=this.deletedRows.sort(((e,t)=>e-t))),this.editedCells.delete(e)))}getOriginalRowIndex(e){let t=e;for(let n=0;n<this.deletedRows.length&&!(this.deletedRows[n]>t);n++)t+=1;return t}getNumRows(){return this.numRows+this.addedRows.length-this.deletedRows.length}};var He=n(32735);const Ve=function(){const e=(0,J.u)(),t=i.useMemo((()=>({editable:e=>`<svg xmlns="http://www.w3.org/2000/svg" height="40" viewBox="0 96 960 960" width="40" fill="${e.bgColor}"><path d="m800.641 679.743-64.384-64.384 29-29q7.156-6.948 17.642-6.948 10.485 0 17.742 6.948l29 29q6.948 7.464 6.948 17.95 0 10.486-6.948 17.434l-29 29Zm-310.64 246.256v-64.383l210.82-210.821 64.384 64.384-210.821 210.82h-64.383Zm-360-204.872v-50.254h289.743v50.254H130.001Zm0-162.564v-50.255h454.615v50.255H130.001Zm0-162.307v-50.255h454.615v50.255H130.001Z"/></svg>`})),[]);return{theme:i.useMemo((()=>({accentColor:e.colors.primary,accentFg:e.colors.white,accentLight:(0,He.No)(e.colors.primary,.9),borderColor:e.colors.borderColorLight,horizontalBorderColor:e.colors.borderColorLight,fontFamily:e.genericFonts.bodyFont,bgSearchResult:(0,He.No)(e.colors.primary,.9),resizeIndicatorColor:e.colors.primary,bgIconHeader:e.colors.fadedText60,fgIconHeader:e.colors.white,bgHeader:e.colors.bgMix,bgHeaderHasFocus:e.colors.secondaryBg,bgHeaderHovered:e.colors.secondaryBg,textHeader:e.colors.fadedText60,textHeaderSelected:e.colors.white,textGroupHeader:e.colors.fadedText60,headerFontStyle:`${e.fontSizes.sm}`,baseFontStyle:e.fontSizes.sm,editorFontSize:e.fontSizes.sm,textDark:e.colors.bodyText,textMedium:(0,He.No)(e.colors.bodyText,.2),textLight:e.colors.fadedText40,textBubble:e.colors.fadedText60,bgCell:e.colors.bgColor,bgCellMedium:e.colors.bgColor,cellHorizontalPadding:8,cellVerticalPadding:3,bgBubble:e.colors.secondaryBg,bgBubbleSelected:e.colors.secondaryBg,linkColor:e.colors.linkText,drilldownBorder:e.colors.darkenedBgMix25})),[e]),tableBorderRadius:e.radii.default,tableBorderWidth:e.sizes.borderWidth,headerIcons:t}};const je=function(e,t,n,o){const r=e.columns.length;return{getCellContent:i.useCallback((i=>{let[l,a]=i;if(l>t.length-1)return O("Column index out of bounds.","This should never happen. Please report this bug.");if(a>n-1)return O("Row index out of bounds.","This should never happen. Please report this bug.");const s=t[l],d=s.indexNumber,u=o.current.getOriginalRowIndex(a),c=o.current.isAddedRow(u);if(s.isEditable||c){const e=o.current.getCell(d,u);if((0,f.se)(e))return e;if(c)return O("Error during cell creation.",`This should never happen. Please report this bug. No cell found for an added row: col=${d}; row=${u}`)}try{return be(s,e.getCell(u+r,d),e.cssStyles)}catch(m){return O("Error during cell creation.",`This should never happen. Please report this bug. \nError: ${m}`)}}),[t,n,e,o,r])}};var We=n(53221);const Be=function(e,t,n){const[o,r]=i.useState(),{getCellContent:l,getOriginalIndex:a}=(0,We.uf)({columns:t.map((e=>L(e))),getCellContent:n,rows:e,sort:o}),s=i.useMemo((()=>function(e,t){return void 0===t?e:e.map((e=>e.id===t.column.id?{...e,title:"asc"===t.direction?`\u2191 ${e.title}`:`\u2193 ${e.title}`}:e))}(t,o)),[t,o]),d=i.useCallback((e=>{let t="asc";const n=s[e];if(o&&o.column.id===n.id){if("asc"!==o.direction)return void r(void 0);t="desc"}r({column:L(n),direction:t,mode:n.sortMode})}),[o,s]);return{columns:s,sortColumn:d,getOriginalIndex:a,getCellContent:l}};var Ye=n(71034),Pe=n.n(Ye);const Ue=function(e,t,n,r,l){const[a,s]=i.useState({columns:o.I1.empty(),rows:o.I1.empty(),current:void 0}),d=!t&&!n&&(e.selectionMode.includes(g.i3.SelectionMode.MULTI_ROW)||e.selectionMode.includes(g.i3.SelectionMode.SINGLE_ROW)),u=d&&e.selectionMode.includes(g.i3.SelectionMode.MULTI_ROW),c=!t&&!n&&(e.selectionMode.includes(g.i3.SelectionMode.SINGLE_COLUMN)||e.selectionMode.includes(g.i3.SelectionMode.MULTI_COLUMN)),m=c&&e.selectionMode.includes(g.i3.SelectionMode.MULTI_COLUMN),h=a.rows.length>0,f=a.columns.length>0,p=void 0!==a.current,v=i.useCallback((e=>{const t=!Pe()(e.rows.toArray(),a.rows.toArray()),n=!Pe()(e.columns.toArray(),a.columns.toArray()),i=!Pe()(e.current,a.current);let o=d&&t||c&&n,u=e;if((d||c)&&void 0!==e.current&&i&&(u={...e,rows:a.rows,columns:a.columns},o=!1),t&&e.rows.length>0&&n&&0===e.columns.length&&(u={...u,columns:a.columns},o=!0),n&&e.columns.length>0&&t&&0===e.rows.length&&(u={...u,rows:a.rows},o=!0),n&&u.columns.length>=0){let e=u.columns;r.forEach(((t,n)=>{t.isIndex&&(e=e.remove(n))})),e.length<u.columns.length&&(u={...u,columns:e})}s(u),o&&l(u)}),[a,d,c,l,r]),b=i.useCallback((function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n={columns:t?a.columns:o.I1.empty(),rows:e?a.rows:o.I1.empty(),current:void 0};s(n),(!e&&d||!t&&c)&&l(n)}),[a,d,c,l]);return{gridSelection:a,isRowSelectionActivated:d,isMultiRowSelectionActivated:u,isColumnSelectionActivated:c,isMultiColumnSelectionActivated:m,isRowSelected:h,isColumnSelected:f,isCellSelected:p,clearSelection:b,processSelectionChange:v}};var qe=n(55562);const Je=",",Ge='"',Ke='"',Ze="\n",Qe="\ufeff",et=new RegExp(`[${[Je,Ge,Ze].join("")}]`);function tt(e){return e.map((e=>function(e){if((0,f.hX)(e))return"";const t=H(e);if(et.test(t))return`${Ge}${t.replace(new RegExp(Ge,"g"),Ke+Ge)}${Ge}`;return t}(e))).join(Je)+Ze}async function nt(e,t,n,i){const o=new TextEncoder;await e.write(o.encode(Qe));const r=n.map((e=>e.name));await e.write(o.encode(tt(r)));for(let l=0;l<i;l++){const i=[];n.forEach(((e,n,o)=>{i.push(e.getCellValue(t([n,l])))})),await e.write(o.encode(tt(i)))}await e.close()}const it=function(e,t,o,r){return{exportToCsv:i.useCallback((async()=>{const i=`${(new Date).toISOString().slice(0,16).replace(":","-")}_export.csv`;try{const r=await n.e(3966).then(n.bind(n,93966)),l=await r.showSaveFilePicker({suggestedName:i,types:[{accept:{"text/csv":[".csv"]}}],excludeAcceptAllOption:!1}),a=await l.createWritable();await nt(a,e,t,o)}catch(l){if(l instanceof Error&&"AbortError"===l.name)return;try{(0,G.FF)("Failed to export data as CSV with FileSystem API, trying fallback method",l);let n="";const a=new WritableStream({write:async e=>{n+=new TextDecoder("utf-8").decode(e)},close:async()=>{}});await nt(a.getWriter(),e,t,o);const s=new Blob([n],{type:"text/csv;charset=utf-8;"}),d=URL.createObjectURL(s),u=(0,qe.A)({enforceDownloadInNewTab:r,url:d,filename:i});u.style.display="none",document.body.appendChild(u),u.click(),document.body.removeChild(u),URL.revokeObjectURL(d)}catch(l){(0,G.vV)("Failed to export data as CSV",l)}}}),[t,o,e,r])}};const ot=function(e,t,n,o,r,l,a,s,d){const u=i.useCallback(((t,i)=>{let[l,a]=t;const d=e[l];if(!d.isEditable)return;const u=d.indexNumber,c=n.current.getOriginalRowIndex(r(a)),m=o([l,a]),h=d.getCellValue(m),g=d.getCellValue(i);if(!D(m)&&g===h)return;const f=d.getCell(g,!0);D(f)?(0,G.FF)(`Not applying the cell edit since it causes this error:\n ${f.data}`):(n.current.setCell(u,c,{...f,lastUpdated:performance.now()}),s())}),[e,n,r,o,s]),c=i.useCallback((()=>{if(t)return;const i=new Map;e.forEach((e=>{i.set(e.indexNumber,e.getCell(e.defaultValue))})),n.current.addRow(i),a()}),[e,n,t,a]),m=i.useCallback((()=>{t||(c(),s())}),[c,s,t]),h=i.useCallback((i=>{var o;if(i.rows.length>0){if(t)return!0;const e=i.rows.toArray().map((e=>n.current.getOriginalRowIndex(r(e))));return n.current.deleteRows(e),a(),d(),s(),!1}if(null!==(o=i.current)&&void 0!==o&&o.range){const t=[],n=i.current.range;for(let i=n.y;i<n.y+n.height;i++)for(let o=n.x;o<n.x+n.width;o++){const n=e[o];n.isEditable&&!n.isRequired&&(t.push({cell:[o,i]}),u([o,i],n.getCell(null)))}return t.length>0&&(s(),l(t)),!1}return!0}),[e,n,t,l,r,s,u,d,a]),g=i.useCallback(((i,a)=>{const[d,u]=i,m=[];for(let h=0;h<a.length;h++){const i=a[h];if(h+u>=n.current.getNumRows()){if(t)break;c()}for(let t=0;t<i.length;t++){const l=i[t],a=h+u,s=t+d;if(s>=e.length)break;const c=e[s];if(c.isEditable){const e=c.getCell(l,!0);if((0,f.se)(e)&&!D(e)){const t=c.indexNumber,i=n.current.getOriginalRowIndex(r(a)),l=c.getCellValue(o([s,a]));c.getCellValue(e)!==l&&(n.current.setCell(t,i,{...e,lastUpdated:performance.now()}),m.push({cell:[s,a]}))}}}m.length>0&&(s(),l(m))}return!1}),[e,n,t,r,o,c,s,l]),p=i.useCallback(((t,n)=>{const i=t[0];if(i>=e.length)return!0;const o=e[i];if(o.validateInput){const e=o.validateInput(o.getCellValue(n));return!0===e||!1===e?e:o.getCell(e)}return!0}),[e]);return{onCellEdited:u,onPaste:g,onRowAppended:m,onDelete:h,validateCell:p}};const rt=function(e,t){const[n,o]=i.useState(),r=i.useRef(null),l=i.useCallback((n=>{if(clearTimeout(r.current),r.current=0,o(void 0),("header"===n.kind||"cell"===n.kind)&&n.location){const i=n.location[0],l=n.location[1];let a;if(i<0||i>=e.length)return;const s=e[i];if("header"===n.kind&&(0,f.se)(s))a=s.help;else if("cell"===n.kind){const e=t([i,l]);s.isRequired&&s.isEditable&&A(e)?a="\u26a0\ufe0f Please fill out this cell.":function(e){return e.hasOwnProperty("tooltip")&&""!==e.tooltip}(e)&&(a=e.tooltip)}a&&(r.current=setTimeout((()=>{a&&o({content:a,left:n.bounds.x+n.bounds.width/2,top:n.bounds.y})}),600))}}),[e,t,o,r]);return{tooltip:n,clearTooltip:i.useCallback((()=>{o(void 0)}),[o]),onItemHovered:l}};var lt=n(28873),at=n(70128),st=n(13914),dt=n(43301),ut=n(67338);const ct=function(e){return{drawCell:i.useCallback(((t,n)=>{const{cell:i,theme:o,ctx:r,rect:l}=t,a=t.col;if(A(i)&&a<e.length){const i=e[a];return["checkbox","line_chart","bar_chart","progress"].includes(i.kind)?n():(e=>{const{cell:t,theme:n,ctx:i}=e;(0,lt.lR)({...e,theme:{...n,textDark:n.textLight,headerFontFull:`${n.headerFontStyle} ${n.fontFamily}`,baseFontFull:`${n.baseFontStyle} ${n.fontFamily}`,markerFontFull:`${n.markerFontStyle} ${n.fontFamily}`},spriteManager:{},hyperWrapping:!1},"None",t.contentAlign),i.fillStyle=n.textDark})(t),void(i.isRequired&&i.isEditable&&function(e,t,n){e.save(),e.beginPath(),e.moveTo(t.x+t.width-8,t.y+1),e.lineTo(t.x+t.width,t.y+1),e.lineTo(t.x+t.width,t.y+1+8),e.fillStyle=n.accentColor,e.fill(),e.restore()}(r,l,o))}n()}),[e]),customRenderers:i.useMemo((()=>[at.A,st.A,dt.A,ut.Ay,...Ie]),[])}};const mt=function(e){const[t,n]=(0,i.useState)((()=>new Map)),o=i.useCallback(((e,i,o,r)=>{e.id&&n(new Map(t).set(e.id,r))}),[t]);return{columns:i.useMemo((()=>e.map((e=>e.id&&t.has(e.id)&&void 0!==t.get(e.id)?{...e,width:t.get(e.id),grow:0}:e))),[e,t]),onColumnResize:o}},ht=2,gt=35,ft=50+ht,pt=2*gt+ht;const vt=function(e,t,n,o,r,l){let a=function(e){return Math.max(e*gt+ht,pt)}(t+(n?2:1)+(e.editingMode===g.i3.EditingMode.DYNAMIC?1:0)),s=Math.min(a,400);e.height&&(s=Math.max(e.height,pt),a=Math.max(e.height,a)),r&&(s=Math.min(s,r),a=Math.min(a,r),e.height||(s=a));const d=Math.max(o,ft);let u,c=d;e.useContainerWidth?u=d:e.width&&(u=Math.min(Math.max(e.width,ft),d),c=Math.min(Math.max(e.width,c),d));const[m,h]=i.useState({width:u||"100%",height:s});return i.useLayoutEffect((()=>{e.useContainerWidth&&"100%"===m.width&&h({width:d,height:m.height})}),[d]),i.useLayoutEffect((()=>{h({width:m.width,height:s})}),[t]),i.useLayoutEffect((()=>{h({width:u||"100%",height:m.height})}),[u]),i.useLayoutEffect((()=>{h({width:m.width,height:s})}),[s]),i.useLayoutEffect((()=>{if(l){const t=e.useContainerWidth||(0,f.se)(e.width)&&e.width>0;h({width:t?c:"100%",height:a})}else h({width:u||"100%",height:s})}),[l]),{minHeight:pt,maxHeight:a,minWidth:ft,maxWidth:c,resizableSize:m,setResizableSize:h}};var bt=n(89653),yt=n(90782);const wt=(0,bt.A)("img",{target:"e24uaba0"})({name:"6eya2z",styles:"max-width:100%;max-height:37.5rem;object-fit:scale-down"}),xt=e=>{let{urls:t}=e;const n=t&&t.length>0?t[0]:"";return n.startsWith("http")?(0,yt.jsx)("a",{href:n,target:"_blank",rel:"noreferrer noopener",children:(0,yt.jsx)(wt,{src:n})}):(0,yt.jsx)(wt,{src:n})};var Ct=n(3074),Mt=n(41639),St=n(4629),Et=n(88044),Tt=n(16795);const kt=function(e){let{top:t,left:n,content:o,clearTooltip:r}=e;const[l,a]=i.useState(!0),s=(0,J.u)(),{colors:d,fontSizes:u,radii:c,fontWeights:m}=s,h=i.useCallback((()=>{a(!1),r()}),[r,a]);return(0,yt.jsx)(Ct.A,{content:(0,yt.jsx)(Et.hW,{"data-testid":"stDataFrameTooltipContent",children:(0,yt.jsx)(St.Ay,{style:{fontSize:u.sm},source:o,allowHTML:!1})}),placement:Mt.El.top,accessibilityType:Mt.IP.tooltip,showArrow:!1,popoverMargin:5,onClickOutside:h,onEsc:h,overrides:{Body:{style:{borderTopLeftRadius:c.default,borderTopRightRadius:c.default,borderBottomLeftRadius:c.default,borderBottomRightRadius:c.default,paddingTop:"0 !important",paddingBottom:"0 !important",paddingLeft:"0 !important",paddingRight:"0 !important",backgroundColor:"transparent"}},Inner:{style:{backgroundColor:(0,Tt.iq)(s)?d.bgColor:d.secondaryBg,color:d.bodyText,fontSize:u.sm,fontWeight:m.normal,paddingTop:"0 !important",paddingBottom:"0 !important",paddingLeft:"0 !important",paddingRight:"0 !important"}}},isOpen:l,children:(0,yt.jsx)("div",{"data-testid":"stDataFrameTooltipTarget",style:{position:"fixed",top:t,left:n}})})},Rt=(0,bt.A)("div",{target:"e1w7nams0"})((e=>{let{hasCustomizedScrollbars:t,theme:n}=e;return{position:"relative",display:"inline-block","& .stDataFrameGlideDataEditor":{height:"100%",minWidth:"100%",borderRadius:n.radii.default},"& .dvn-scroller":{...!t&&{scrollbarWidth:"thin"},overflowX:"auto !important",overflowY:"auto !important"}}}),"");n(32595),n(1627);const Nt=(0,h.A)((function(e){let{element:t,data:n,width:h,height:b,disabled:y,widgetMgr:w,isFullScreen:x,disableFullscreenMode:C,expand:M,collapse:S,fragmentId:E}=e;const T=i.useRef(null),k=i.useRef(null),R=i.useRef(null),{theme:N,headerIcons:I,tableBorderRadius:_,tableBorderWidth:O}=Ve(),{libConfig:{enforceDownloadInNewTab:D=!1}}=i.useContext(v.n),[A,F]=i.useState(!0),[z,X]=i.useState(!1),[H,V]=i.useState(!1),[j,W]=i.useState(!1),B=i.useMemo((()=>window.matchMedia&&window.matchMedia("(pointer: coarse)").matches),[]),Y=i.useMemo((()=>window.navigator.userAgent.includes("Mac OS")&&window.navigator.userAgent.includes("Safari")||window.navigator.userAgent.includes("Chrome")),[]);(0,f.hX)(t.editingMode)&&(t.editingMode=g.i3.EditingMode.READ_ONLY);const{READ_ONLY:P,DYNAMIC:U}=g.i3.EditingMode,q=n.dimensions,J=Math.max(0,q.dataRows),G=0===J&&!(t.editingMode===U&&q.dataColumns>0),K=J>15e4,Z=i.useRef(new Xe(J)),[Q,ee]=i.useState(Z.current.getNumRows());i.useEffect((()=>{Z.current=new Xe(J),ee(Z.current.getNumRows())}),[J]);const te=i.useCallback((()=>{Z.current=new Xe(J),ee(Z.current.getNumRows())}),[J]),{columns:ne}=Le(t,n,y);i.useEffect((()=>{if(t.editingMode===P)return;const e=w.getStringValue({id:t.id,formId:t.formId});e&&(Z.current.fromJson(e,ne),ee(Z.current.getNumRows()))}),[]);const{getCellContent:ie}=je(n,ne,Q,Z),{columns:oe,sortColumn:re,getOriginalIndex:le,getCellContent:ae}=Be(J,ne,ie),se=i.useCallback((0,f.sg)(150,(e=>{const n={selection:{rows:[],columns:[]}};n.selection.rows=e.rows.toArray().map((e=>le(e))),n.selection.columns=e.columns.toArray().map((e=>ze(oe[e])));const i=JSON.stringify(n),o=w.getStringValue({id:t.id,formId:t.formId});void 0!==o&&o===i||w.setStringValue({id:t.id,formId:t.formId},i,{fromUi:!0},E)})),[t.id,t.formId,w,E,le,ze]),{gridSelection:de,isRowSelectionActivated:ue,isMultiRowSelectionActivated:ce,isColumnSelectionActivated:me,isMultiColumnSelectionActivated:he,isRowSelected:ge,isColumnSelected:fe,isCellSelected:pe,clearSelection:ve,processSelectionChange:be}=Ue(t,G,y,oe,se);i.useEffect((()=>{ve(!0,!0)}),[x]);const ye=i.useCallback((e=>{var t;null===(t=k.current)||void 0===t||t.updateCells(e)}),[]);i.useEffect((()=>{if(!ue&&!me)return;const e=w.getStringValue({id:t.id,formId:t.formId});if(e){var n,i,r,l;const t=oe.map((e=>ze(e))),a=JSON.parse(e);let s=o.I1.empty(),d=o.I1.empty();if(null===(n=a.selection)||void 0===n||null===(i=n.rows)||void 0===i||i.forEach((e=>{s=s.add(e)})),null===(r=a.selection)||void 0===r||null===(l=r.columns)||void 0===l||l.forEach((e=>{d=d.add(t.indexOf(e))})),s.length>0||d.length>0){be({rows:s,columns:d,current:void 0})}}}),[]);const we=i.useCallback((()=>{Q!==Z.current.getNumRows()&&ee(Z.current.getNumRows())}),[Q]),xe=i.useCallback((0,f.sg)(150,(()=>{const e=Z.current.toJson(oe);let n=w.getStringValue({id:t.id,formId:t.formId});void 0===n&&(n=new Xe(0).toJson([])),e!==n&&w.setStringValue({id:t.id,formId:t.formId},e,{fromUi:!0},E)})),[t.id,t.formId,w,E,oe,Z.current]),{exportToCsv:Ce}=it(ae,oe,Q,D),{onCellEdited:Me,onPaste:Se,onRowAppended:Ee,onDelete:Te,validateCell:ke}=ot(oe,t.editingMode!==U,Z,ae,le,ye,we,xe,ve),{tooltip:Re,clearTooltip:Ne,onItemHovered:Ie}=rt(oe,ae),{drawCell:_e,customRenderers:Oe}=ct(oe),De=i.useMemo((()=>oe.map((e=>L(e)))),[oe]),{columns:Ae,onColumnResize:Fe}=mt(De),$e=n.columns.length>1,{minHeight:He,maxHeight:We,minWidth:Ye,maxWidth:Pe,resizableSize:qe,setResizableSize:Je}=vt(t,Q,$e,h,b,x),Ge=i.useCallback((e=>{let[t,n]=e;return{...$(!0,!1),displayData:"empty",contentAlign:"center",allowOverlay:!1,themeOverride:{textDark:N.textLight},span:[0,Math.max(oe.length-1,0)]}}),[oe,N.textLight]);i.useEffect((()=>{if(!t.formId)return;const e=new m.o;return e.manageFormClearListener(w,t.formId,(()=>{te(),ve()})),()=>{e.disconnect()}}),[t.formId,te,ve,w]);const Ke=!G&&t.editingMode===U&&!y,Ze=G?0:oe.filter((e=>e.isIndex)).length;return i.useEffect((()=>{setTimeout((()=>{if(R.current&&k.current){var e,t;const n=null===(e=R.current)||void 0===e||null===(t=e.querySelector(".dvn-stack"))||void 0===t?void 0:t.getBoundingClientRect();n&&(V(n.height>R.current.clientHeight),W(n.width>R.current.clientWidth))}}),1)}),[qe,Q,Ae]),(0,yt.jsxs)(Rt,{className:"stDataFrame","data-testid":"stDataFrame",hasCustomizedScrollbars:Y,ref:R,onMouseDown:e=>{if(R.current&&Y){const t=R.current.getBoundingClientRect();j&&t.height-7<e.clientY-t.top&&e.stopPropagation(),H&&t.width-7<e.clientX-t.left&&e.stopPropagation()}},onBlur:e=>{A||B||e.currentTarget.contains(e.relatedTarget)||ve(!0,!0)},children:[(0,yt.jsxs)(p.A,{isFullScreen:x,disableFullscreenMode:C,locked:ge&&!ue||pe||B&&A,onExpand:M,onCollapse:S,target:Rt,children:[(ue&&ge||me&&fe)&&(0,yt.jsx)(p.K,{label:"Clear selection",icon:a.b,onClick:()=>{ve(),Ne()}}),Ke&&ge&&(0,yt.jsx)(p.K,{label:"Delete row(s)",icon:s.e,onClick:()=>{Te&&(Te(de),Ne())}}),Ke&&!ge&&(0,yt.jsx)(p.K,{label:"Add row",icon:d.O,onClick:()=>{Ee&&(F(!0),Ee(),Ne())}}),!K&&!G&&(0,yt.jsx)(p.K,{label:"Download as CSV",icon:u.n,onClick:()=>Ce()}),!G&&(0,yt.jsx)(p.K,{label:"Search",icon:c.v,onClick:()=>{z?X(!1):(F(!0),X(!0)),Ne()}})]}),(0,yt.jsx)(l.c,{"data-testid":"stDataFrameResizable",ref:T,defaultSize:qe,style:{border:`${O} solid ${N.borderColor}`,borderRadius:`${_}`},minHeight:He,maxHeight:We,minWidth:Ye,maxWidth:Pe,size:qe,enable:{top:!1,right:!1,bottom:!1,left:!1,topRight:!1,bottomRight:!0,bottomLeft:!1,topLeft:!1},grid:[1,gt],snapGap:gt/3,onResizeStop:(e,t,n,i)=>{T.current&&Je({width:T.current.size.width,height:We-T.current.size.height===ht?T.current.size.height+ht:T.current.size.height})},children:(0,yt.jsx)(r.D,{className:"stDataFrameGlideDataEditor","data-testid":"stDataFrameGlideDataEditor",ref:k,columns:Ae,rows:G?1:Q,minColumnWidth:50,maxColumnWidth:1e3,maxColumnAutoWidth:500,rowHeight:gt,headerHeight:gt,getCellContent:G?Ge:ae,onColumnResize:B?void 0:Fe,resizeIndicator:"header",freezeColumns:Ze,smoothScrollX:!0,smoothScrollY:!0,verticalBorder:!0,getCellsForSelection:!0,rowMarkers:"none",rangeSelect:B?"cell":"rect",columnSelect:"none",rowSelect:"none",onItemHovered:Ie,keybindings:{downFill:!0},onKeyDown:e=>{(e.ctrlKey||e.metaKey)&&"f"===e.key&&(X((e=>!e)),e.stopPropagation(),e.preventDefault())},showSearch:z,onSearchClose:()=>{X(!1),Ne()},onHeaderClicked:(e,t)=>{G||K||me||(ue&&ge&&ve(),re(e))},gridSelection:de,onGridSelectionChange:e=>{(A||B)&&(be(e),void 0!==Re&&Ne())},theme:N,onMouseMove:e=>{"out-of-bounds"===e.kind&&A?F(!1):"out-of-bounds"===e.kind||A||F(!0)},fixedShadowX:!0,fixedShadowY:!0,experimental:{scrollbarWidthOverride:0,...Y&&{paddingBottom:j?-6:void 0,paddingRight:H?-6:void 0}},drawCell:_e,customRenderers:Oe,imageEditorOverride:xt,headerIcons:I,validateCell:ke,onPaste:!1,...ue&&{rowMarkers:{kind:"checkbox",checkboxStyle:"square",theme:{bgCell:N.bgHeader,bgCellMedium:N.bgHeader}},rowSelectionMode:ce?"multi":"auto",rowSelect:y?"none":ce?"multi":"single",rowSelectionBlending:"mixed",rangeSelectionBlending:"exclusive"},...me&&{columnSelect:y?"none":he?"multi":"single",columnSelectionBlending:"mixed",rangeSelectionBlending:"exclusive"},...!G&&t.editingMode!==P&&!y&&{fillHandle:!B,onCellEdited:Me,onPaste:Se,onDelete:Te},...!G&&t.editingMode===U&&{trailingRowOptions:{sticky:!1,tint:!0},rowMarkers:{kind:"checkbox",checkboxStyle:"square",theme:{bgCell:N.bgHeader,bgCellMedium:N.bgHeader}},rowSelectionMode:"multi",rowSelect:y?"none":"multi",onRowAppended:y?void 0:Ee,onHeaderClicked:void 0}})}),Re&&Re.content&&(0,yt.jsx)(kt,{top:Re.top,left:Re.left,content:Re.content,clearTooltip:Ne})]})}),!0)},34752:(e,t,n)=>{n.d(t,{X:()=>l,o:()=>r});var i=n(58878),o=n(25571);class r{constructor(){this.formClearListener=void 0,this.lastWidgetMgr=void 0,this.lastFormId=void 0}manageFormClearListener(e,t,n){(0,o.se)(this.formClearListener)&&this.lastWidgetMgr===e&&this.lastFormId===t||(this.disconnect(),(0,o._L)(t)&&(this.formClearListener=e.addFormClearedListener(t,n),this.lastWidgetMgr=e,this.lastFormId=t))}disconnect(){var e;null===(e=this.formClearListener)||void 0===e||e.disconnect(),this.formClearListener=void 0,this.lastWidgetMgr=void 0,this.lastFormId=void 0}}function l(e){let{element:t,widgetMgr:n,onFormCleared:r}=e;(0,i.useEffect)((()=>{if(!(0,o._L)(t.formId))return;const e=n.addFormClearedListener(t.formId,r);return()=>{e.disconnect()}}),[t,n,r])}},55562:(e,t,n)=>{n.d(t,{A:()=>i});const i=e=>{let{enforceDownloadInNewTab:t,url:n,filename:i}=e;const o=document.createElement("a");return o.setAttribute("href",n),t?o.setAttribute("target","_blank"):o.setAttribute("target","_self"),o.setAttribute("download",i),o}}}]);
1
+ "use strict";(self.webpackChunk_streamlit_app=self.webpackChunk_streamlit_app||[]).push([[9943],{55516:(e,t,n)=>{n.d(t,{A:()=>m});n(58878);var i=n(53124),o=n.n(i),r=n(41514),l=n(67214),a=n(64611),s=n(98226),d=n(4883),u=n(90782);const c=e=>{let{children:t,width:n,height:i,disableFullscreenMode:o}=e;const{expanded:c,fullHeight:m,fullWidth:h,zoomIn:g,zoomOut:f}=(0,s.H)();let p=r.u,v=g,b="View fullscreen";return c&&(p=l.Q,v=f,b="Exit fullscreen"),(0,u.jsxs)(d.g,{isExpanded:c,"data-testid":"stFullScreenFrame",children:[!o&&(0,u.jsx)(d.j,{"data-testid":"StyledFullScreenButton",onClick:v,title:b,isExpanded:c,children:(0,u.jsx)(a.A,{content:p})}),t({width:c?h:n,height:c?m:i,expanded:c,expand:g,collapse:f})]})};const m=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=n=>{const{width:i,height:o,disableFullscreenMode:r}=n;return(0,u.jsx)(c,{width:i,height:o,disableFullscreenMode:t||r,children:t=>{let{width:i,height:o,expanded:r,expand:l,collapse:a}=t;return(0,u.jsx)(e,{...n,width:i,height:o,isFullScreen:r,expand:l,collapse:a})}})};return n.displayName=`withFullScreenWrapper(${e.displayName||e.name})`,o()(n,e)}},85850:(e,t,n)=>{n.d(t,{K:()=>v,A:()=>b});n(58878);var i=n(8151),o=n(12274),r=n(63186),l=n(4629),a=n(997),s=n(36459),d=n(84720),u=n(64611),c=n(89653),m=n(16795);const h="-2.4rem",g=(0,c.A)("div",{target:"e2wxzia1"})((e=>{let{theme:t,locked:n,target:i}=e;return{padding:`${t.spacing.sm} 0 ${t.spacing.sm} ${t.spacing.sm}`,position:"absolute",top:n?h:"-1rem",right:t.spacing.none,transition:"none",...!n&&{opacity:0,"&:active, &:focus-visible, &:hover":{transition:"opacity 150ms 100ms, top 100ms 100ms",opacity:1,top:h},...i&&{[`${i}:hover &, ${i}:active &, ${i}:focus-visible &`]:{transition:"opacity 150ms 100ms, top 100ms 100ms",opacity:1,top:h}}}}}),""),f=(0,c.A)("div",{target:"e2wxzia0"})((e=>{let{theme:t}=e;return{color:(0,m.iq)(t)?t.colors.fadedText60:t.colors.bodyText,display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"flex-end",boxShadow:"1px 2px 8px rgba(0, 0, 0, 0.08)",borderRadius:t.radii.default,backgroundColor:t.colors.lightenedBg05,width:"fit-content",zIndex:t.zIndices.sidebar+1}}),"");var p=n(90782);function v(e){let{label:t,show_label:n,icon:o,onClick:r}=e;const c=(0,i.u)(),m=n?t:"";return(0,p.jsx)("div",{"data-testid":"stElementToolbarButton",children:(0,p.jsx)(a.A,{content:(0,p.jsx)(l.Ay,{source:t,allowHTML:!1,style:{fontSize:c.fontSizes.sm}}),placement:a.W.TOP,onMouseEnterDelay:1e3,inline:!0,children:(0,p.jsxs)(s.Ay,{onClick:e=>{r&&r(),e.stopPropagation()},kind:d.KX.ELEMENT_TOOLBAR,"aria-label":t,children:[o&&(0,p.jsx)(u.A,{content:o,size:"md",testid:"stElementToolbarButtonIcon"}),m&&(0,p.jsx)("span",{children:m})]})})})}const b=e=>{let{onExpand:t,onCollapse:n,isFullScreen:i,locked:l,children:a,target:s,disableFullscreenMode:d}=e;return(0,p.jsx)(g,{className:"stElementToolbar","data-testid":"stElementToolbar",locked:l||i,target:s,children:(0,p.jsxs)(f,{children:[a,t&&!d&&!i&&(0,p.jsx)(v,{label:"Fullscreen",icon:o.g,onClick:()=>t()}),n&&!d&&i&&(0,p.jsx)(v,{label:"Close fullscreen",icon:r.Q,onClick:()=>n()})]})})}},251:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Nt});var i=n(58878),o=n(35753),r=n(79104),l=n(52583),a=n(68994),s=n(95241),d=n(61730),u=n(18364),c=n(2128),m=n(34752),h=n(55516),g=n(29669),f=n(25571),p=n(85850),v=n(84152),b=n(37638),y=n.n(b),w=n(30136),x=n.n(w),C=n(17643),M=n.n(C),S=(n(20641),n(91381)),E=n.n(S),k=n(37904),T=n.n(k),R=n(34694),N=n(85729);const I=["true","t","yes","y","on","1"],_=["false","f","no","n","off","0"];function O(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e=`\u26a0\ufe0f ${e}`,{kind:o.dd.Text,readonly:!0,allowOverlay:!0,data:e+(t?`\n\n${t}\n`:""),displayData:e,isError:!0}}function D(e){return e.hasOwnProperty("isError")&&e.isError}function A(e){return e.hasOwnProperty("isMissingValue")&&e.isMissingValue}function F(){return arguments.length>0&&void 0!==arguments[0]&&arguments[0]?{kind:o.dd.Loading,allowOverlay:!1,isMissingValue:!0}:{kind:o.dd.Loading,allowOverlay:!1}}function $(e,t){const n=t?"faded":"normal";return{kind:o.dd.Text,data:"",displayData:"",allowOverlay:!0,readonly:e,style:n}}function L(e){return{id:e.id,title:e.title,hasMenu:!1,themeOverride:e.themeOverride,icon:e.icon,group:e.group,...e.isStretched&&{grow:e.isIndex?1:3},...e.width&&{width:e.width}}}function X(e,t){return(0,f.hX)(e)?t||{}:(0,f.hX)(t)?e||{}:y()(e,t)}function z(e){if((0,f.hX)(e))return[];if("number"===typeof e||"boolean"===typeof e)return[e];if("string"===typeof e){if(""===e)return[];if(!e.trim().startsWith("[")||!e.trim().endsWith("]"))return e.split(",");try{return JSON.parse(e)}catch(t){return[e]}}try{const t=JSON.parse(JSON.stringify(e,((e,t)=>"bigint"===typeof t?Number(t):t)));return Array.isArray(t)?t.map((e=>["string","number","boolean","null"].includes(typeof e)?e:H(e))):[H(t)]}catch(t){return[H(e)]}}function H(e){try{try{return x()(e)}catch(t){return JSON.stringify(e,((e,t)=>"bigint"===typeof t?Number(t):t))}}catch(t){return`[${typeof e}]`}}function V(e){if((0,f.hX)(e))return null;if("boolean"===typeof e)return e;const t=H(e).toLowerCase().trim();return""===t?null:!!I.includes(t)||!_.includes(t)&&void 0}function j(e){if((0,f.hX)(e))return null;if(Array.isArray(e))return NaN;if("string"===typeof e){if(0===e.trim().length)return null;try{const t=T().unformat(e.trim());if((0,f.se)(t))return t}catch(t){}}else if(e instanceof Int32Array)return Number(e[0]);return Number(e)}function W(e,t,n){return Number.isNaN(e)||!Number.isFinite(e)?"":(0,f.hX)(t)||""===t?(0===n&&(e=Math.round(e)),T()(e).format((0,f.se)(n)?`0,0.${"0".repeat(n)}`:"0,0.[0000]")):"percent"===t?new Intl.NumberFormat(void 0,{style:"percent",minimumFractionDigits:2,maximumFractionDigits:2}).format(e):["compact","scientific","engineering"].includes(t)?new Intl.NumberFormat(void 0,{notation:t}).format(e):"duration[ns]"===t?M().duration(e/1e6,"milliseconds").humanize():t.startsWith("period[")?N.D0.formatPeriodType(BigInt(e),t):(0,R.sprintf)(t,e)}function B(e,t){return"locale"===t?new Intl.DateTimeFormat(void 0,{dateStyle:"medium",timeStyle:"medium"}).format(e.toDate()):"distance"===t?e.fromNow():"relative"===t?e.calendar():e.format(t)}function Y(e){if((0,f.hX)(e))return null;if(e instanceof Date)return isNaN(e.getTime())?void 0:e;if("string"===typeof e&&0===e.trim().length)return null;try{const t=Number(e);if(!isNaN(t)){let e=t;t>=10**18?e=t/1e3**3:t>=10**15?e=t/1e6:t>=10**12&&(e=t/1e3);const n=M().unix(e).utc();if(n.isValid())return n.toDate()}if("string"===typeof e){const t=M().utc(e);if(t.isValid())return t.toDate();const n=M().utc(e,[M().HTML5_FMT.TIME_MS,M().HTML5_FMT.TIME_SECONDS,M().HTML5_FMT.TIME]);if(n.isValid())return n.toDate()}}catch(t){return}}function P(e){if(e%1===0)return 0;let t=e.toString();return-1!==t.indexOf("e")&&(t=e.toLocaleString("fullwide",{useGrouping:!1,maximumFractionDigits:20})),-1===t.indexOf(".")?0:t.split(".")[1].length}const U=new RegExp(/(\r\n|\n|\r)/gm);function q(e){return-1!==e.indexOf("\n")?e.replace(U," "):e}var J=n(8151),G=n(84996);function K(e){const t={kind:o.dd.Text,data:"",displayData:"",allowOverlay:!0,contentAlignment:e.contentAlignment,readonly:!0,style:e.isIndex?"faded":"normal"};return{...e,kind:"object",sortMode:"default",isEditable:!1,getCell(e){try{const n=(0,f.se)(e)?H(e):null,i=(0,f.se)(n)?q(n):"";return{...t,data:n,displayData:i,isMissingValue:(0,f.hX)(e)}}catch(n){return O(H(e),`The value cannot be interpreted as a string. Error: ${n}`)}},getCellValue:e=>void 0===e.data?null:e.data}}K.isEditableType=!1;const Z=K;function Q(e){const t=e.columnTypeOptions||{};let n;if(t.validate)try{n=new RegExp(t.validate,"us")}catch(l){n=`Invalid validate regex: ${t.validate}.\nError: ${l}`}const i={kind:o.dd.Text,data:"",displayData:"",allowOverlay:!0,contentAlignment:e.contentAlignment,readonly:!e.isEditable,style:e.isIndex?"faded":"normal"},r=i=>{if((0,f.hX)(i))return!e.isRequired;let o=H(i),r=!1;return t.max_chars&&o.length>t.max_chars&&(o=o.slice(0,t.max_chars),r=!0),!(n instanceof RegExp&&!1===n.test(o))&&(!r||o)};return{...e,kind:"text",sortMode:"default",validateInput:r,getCell(e,t){if("string"===typeof n)return O(H(e),n);if(t){const t=r(e);if(!1===t)return O(H(e),"Invalid input.");"string"===typeof t&&(e=t)}try{const t=(0,f.se)(e)?H(e):null,n=(0,f.se)(t)?q(t):"";return{...i,isMissingValue:(0,f.hX)(t),data:t,displayData:n}}catch(l){return O("Incompatible value",`The value cannot be interpreted as string. Error: ${l}`)}},getCellValue:e=>void 0===e.data?null:e.data}}Q.isEditableType=!0;const ee=Q;function te(e,t){return e=t.startsWith("+")||t.startsWith("-")?e.utcOffset(t,!1):e.tz(t)}function ne(e,t,n,i,r,l,a){var s;const d=X({format:n,step:i,timezone:a},t.columnTypeOptions);let u,c,m;if((0,f.se)(d.timezone))try{var h;u=(null===(h=te(E()(),d.timezone))||void 0===h?void 0:h.utcOffset())||void 0}catch(v){}(0,f.se)(d.min_value)&&(c=Y(d.min_value)||void 0),(0,f.se)(d.max_value)&&(m=Y(d.max_value)||void 0);const g={kind:o.dd.Custom,allowOverlay:!0,copyData:"",readonly:!t.isEditable,contentAlign:t.contentAlignment,style:t.isIndex?"faded":"normal",data:{kind:"date-picker-cell",date:void 0,displayDate:"",step:(null===(s=d.step)||void 0===s?void 0:s.toString())||"1",format:r,min:c,max:m}},p=e=>{const n=Y(e);return null===n?!t.isRequired:void 0!==n&&(!((0,f.se)(c)&&l(n)<l(c))&&!((0,f.se)(m)&&l(n)>l(m)))};return{...t,kind:e,sortMode:"default",validateInput:p,getCell(e,t){if(!0===t){const t=p(e);if(!1===t)return O(H(e),"Invalid input.");t instanceof Date&&(e=t)}const i=Y(e);let o="",r="",l=u;if(void 0===i)return O(H(e),"The value cannot be interpreted as a datetime object.");if(null!==i){let e=E().utc(i);if(!e.isValid())return O(H(i),`This should never happen. Please report this bug. \nError: ${e.toString()}`);if(d.timezone){try{e=te(e,d.timezone)}catch(v){return O(e.toISOString(),`Failed to adjust to the provided timezone: ${d.timezone}. \nError: ${v}`)}l=e.utcOffset()}try{r=B(e,d.format||n)}catch(v){return O(e.toISOString(),`Failed to format the date for rendering with: ${d.format}. \nError: ${v}`)}o=B(e,n)}return{...g,copyData:o,isMissingValue:(0,f.hX)(i),data:{...g.data,date:i,displayDate:r,timezoneOffset:l}}},getCellValue(e){var t;return(0,f.hX)(null===e||void 0===e||null===(t=e.data)||void 0===t?void 0:t.date)?null:l(e.data.date)}}}function ie(e){var t,n,i,o,r;let l="YYYY-MM-DD HH:mm:ss";(null===(t=e.columnTypeOptions)||void 0===t?void 0:t.step)>=60?l="YYYY-MM-DD HH:mm":(null===(n=e.columnTypeOptions)||void 0===n?void 0:n.step)<1&&(l="YYYY-MM-DD HH:mm:ss.SSS");const a=null===(i=e.arrowType)||void 0===i||null===(o=i.meta)||void 0===o?void 0:o.timezone,s=(0,f.se)(a)||(0,f.se)(null===e||void 0===e||null===(r=e.columnTypeOptions)||void 0===r?void 0:r.timezone);return ne("datetime",e,s?l+"Z":l,1,"datetime-local",(e=>s?e.toISOString():e.toISOString().replace("Z","")),a)}function oe(e){var t,n;let i="HH:mm:ss";return(null===(t=e.columnTypeOptions)||void 0===t?void 0:t.step)>=60?i="HH:mm":(null===(n=e.columnTypeOptions)||void 0===n?void 0:n.step)<1&&(i="HH:mm:ss.SSS"),ne("time",e,i,1,"time",(e=>e.toISOString().split("T")[1].replace("Z","")))}function re(e){return ne("date",e,"YYYY-MM-DD",1,"date",(e=>e.toISOString().split("T")[0]))}function le(e){const t={kind:o.dd.Boolean,data:!1,allowOverlay:!1,contentAlign:e.contentAlignment,readonly:!e.isEditable,style:e.isIndex?"faded":"normal"};return{...e,kind:"checkbox",sortMode:"default",getCell(e){let n=null;return n=V(e),void 0===n?O(H(e),"The value cannot be interpreted as boolean."):{...t,data:n,isMissingValue:(0,f.hX)(n)}},getCellValue:e=>void 0===e.data?null:e.data}}ie.isEditableType=!0,oe.isEditableType=!0,re.isEditableType=!0,le.isEditableType=!0;const ae=le;function se(e){return e.startsWith("int")&&!e.startsWith("interval")||"range"===e||e.startsWith("uint")}function de(e){const t=N.D0.getTypeName(e.arrowType);let n;"timedelta64[ns]"===t?n="duration[ns]":t.startsWith("period[")&&(n=t);const i=X({step:se(t)?1:void 0,min_value:t.startsWith("uint")?0:void 0,format:n},e.columnTypeOptions),r=(0,f.hX)(i.min_value)||i.min_value<0,l=(0,f.se)(i.step)&&!Number.isNaN(i.step)?P(i.step):void 0,a={kind:o.dd.Number,data:void 0,displayData:"",readonly:!e.isEditable,allowOverlay:!0,contentAlign:e.contentAlignment||"right",style:e.isIndex?"faded":"normal",allowNegative:r,fixedDecimals:l,thousandSeparator:""},s=t=>{let n=j(t);if((0,f.hX)(n))return!e.isRequired;if(Number.isNaN(n))return!1;let o=!1;return(0,f.se)(i.max_value)&&n>i.max_value&&(n=i.max_value,o=!0),!((0,f.se)(i.min_value)&&n<i.min_value)&&(!o||n)};return{...e,kind:"number",sortMode:"smart",validateInput:s,getCell(e,t){if(!0===t){const t=s(e);if(!1===t)return O(H(e),"Invalid input.");"number"===typeof t&&(e=t)}let n=j(e),o="";if((0,f.se)(n)){if(Number.isNaN(n))return O(H(e),"The value cannot be interpreted as a number.");if((0,f.se)(l)&&(r=n,n=0===(d=l)?Math.trunc(r):Math.trunc(r*10**d)/10**d),Number.isInteger(n)&&!Number.isSafeInteger(n))return O(H(e),"The value is larger than the maximum supported integer values in number columns (2^53).");try{o=W(n,i.format,l)}catch(u){return O(H(n),(0,f.se)(i.format)?`Failed to format the number based on the provided format configuration: (${i.format}). Error: ${u}`:`Failed to format the number. Error: ${u}`)}}var r,d;return{...a,data:n,displayData:o,isMissingValue:(0,f.hX)(n),copyData:(0,f.hX)(n)?"":H(n)}},getCellValue:e=>void 0===e.data?null:e.data}}de.isEditableType=!0;const ue=de;function ce(e){let t="string";const n=X({options:"bool"===N.D0.getTypeName(e.arrowType)?[!0,!1]:[]},e.columnTypeOptions),i=new Set(n.options.map((e=>typeof e)));1===i.size&&(i.has("number")||i.has("bigint")?t="number":i.has("boolean")&&(t="boolean"));const r={kind:o.dd.Custom,allowOverlay:!0,copyData:"",contentAlign:e.contentAlignment,readonly:!e.isEditable,style:e.isIndex?"faded":"normal",data:{kind:"dropdown-cell",allowedValues:[...!0!==e.isRequired?[null]:[],...n.options.filter((e=>null!==e&&""!==e)).map((e=>H(e)))],value:""}};return{...e,kind:"selectbox",sortMode:"default",getCell(e,t){let n=null;return(0,f.se)(e)&&""!==e&&(n=H(e)),t&&!r.data.allowedValues.includes(n)?O(H(n),"The value is not part of the allowed options."):{...r,isMissingValue:null===n,copyData:n||"",data:{...r.data,value:n}}},getCellValue(e){var n,i,o,r,l,a,s;return(0,f.hX)(null===(n=e.data)||void 0===n?void 0:n.value)||""===(null===(i=e.data)||void 0===i?void 0:i.value)?null:"number"===t?null!==(r=j(null===(l=e.data)||void 0===l?void 0:l.value))&&void 0!==r?r:null:"boolean"===t?null!==(a=V(null===(s=e.data)||void 0===s?void 0:s.value))&&void 0!==a?a:null:null===(o=e.data)||void 0===o?void 0:o.value}}}ce.isEditableType=!0;const me=ce;function he(e){const t={kind:o.dd.Bubble,data:[],allowOverlay:!0,contentAlign:e.contentAlignment,style:e.isIndex?"faded":"normal"};return{...e,kind:"list",sortMode:"default",isEditable:!1,getCell(e){const n=(0,f.hX)(e)?[]:z(e);return{...t,data:n,isMissingValue:(0,f.hX)(e),copyData:(0,f.hX)(e)?"":H(n.map((e=>"string"===typeof e&&e.includes(",")?e.replace(/,/g," "):e)))}},getCellValue:e=>(0,f.hX)(e.data)||A(e)?null:e.data}}he.isEditableType=!1;const ge=he;function fe(e,t,n){const i=new RegExp(`${e}[,\\s].*{(?:[^}]*[\\s;]{1})?${t}:\\s*([^;}]+)[;]?.*}`,"gm");n=n.replace(/{/g," {");const o=i.exec(n);if(o)return o[1].trim()}function pe(e,t){const n=e.types.index[t],i=e.indexNames[t];let o=!0;return"range"===N.D0.getTypeName(n)&&(o=!1),{id:`index-${t}`,name:i,title:i,isEditable:o,arrowType:n,isIndex:!0,isHidden:!1}}function ve(e,t){const n=e.columns.map((e=>e[t])),i=n.length>0?n[n.length-1]:"",o=n.length>1?n.filter((e=>""!==e)).slice(0,-1).join(" / "):void 0;let r,l=e.types.data[t];if((0,f.hX)(l)&&(l={meta:null,numpy_type:"object",pandas_type:"object"}),"categorical"===N.D0.getTypeName(l)){const n=e.getCategoricalOptions(t);(0,f.se)(n)&&(r={options:n})}return{id:`column-${i}-${t}`,name:i,title:i,isEditable:!0,arrowType:l,columnTypeOptions:r,isIndex:!1,isHidden:!1,group:o}}function be(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;const i=e.arrowType?N.D0.getTypeName(e.arrowType):null;let r;if("object"===e.kind)r=e.getCell((0,f.se)(t.content)?q(N.D0.format(t.content,t.contentType,t.field)):null);else if(["time","date","datetime"].includes(e.kind)&&(0,f.se)(t.content)&&("number"===typeof t.content||"bigint"===typeof t.content)){var l,a;let n;var s,d,u;if("time"===i&&(0,f.se)(null===(l=t.field)||void 0===l||null===(a=l.type)||void 0===a?void 0:a.unit))n=M().unix(N.D0.convertToSeconds(t.content,null!==(s=null===(d=t.field)||void 0===d||null===(u=d.type)||void 0===u?void 0:u.unit)&&void 0!==s?s:0)).utc().toDate();else n=M().utc(Number(t.content)).toDate();r=e.getCell(n)}else if("decimal"===i){const n=(0,f.hX)(t.content)?null:N.D0.format(t.content,t.contentType,t.field);r=e.getCell(n)}else r=e.getCell(t.content);if(D(r))return r;if(!e.isEditable){if((0,f.se)(t.displayContent)){var c,m,h,g;const n=q(t.displayContent);r.kind===o.dd.Text||r.kind===o.dd.Number&&(0,f.hX)(null===(c=e.columnTypeOptions)||void 0===c?void 0:c.format)||r.kind===o.dd.Uri&&(0,f.hX)(null===(m=e.columnTypeOptions)||void 0===m?void 0:m.display_text)?r={...r,displayData:n}:r.kind===o.dd.Custom&&"date-picker-cell"===(null===(h=r.data)||void 0===h?void 0:h.kind)&&(0,f.hX)(null===(g=e.columnTypeOptions)||void 0===g?void 0:g.format)&&(r={...r,data:{...r.data,displayDate:n}})}n&&t.cssId&&(r=function(e,t,n){const i={},o=fe(t,"color",n);o&&(i.textDark=o);const r=fe(t,"background-color",n);return r&&(i.bgCell=r),"yellow"===r&&void 0===o&&(i.textDark="#31333F"),i?{...e,themeOverride:i}:e}(r,t.cssId,n))}return r}function ye(e,t,n){const i=X({y_min:0,y_max:1},t.columnTypeOptions),r={kind:o.dd.Custom,allowOverlay:!1,copyData:"",contentAlign:t.contentAlignment,data:{kind:"sparkline-cell",values:[],displayValues:[],graphKind:n,yAxis:[i.y_min,i.y_max]}};return{...t,kind:e,sortMode:"default",isEditable:!1,getCell(e){if((0,f.hX)(i.y_min)||(0,f.hX)(i.y_max)||Number.isNaN(i.y_min)||Number.isNaN(i.y_max)||i.y_min>=i.y_max)return O("Invalid min/max y-axis configuration",`The y_min (${i.y_min}) and y_max (${i.y_max}) configuration options must be valid numbers.`);if((0,f.hX)(e))return F();const t=z(e),n=[];let o=[];if(0===t.length)return F();let l=Number.MIN_SAFE_INTEGER,a=Number.MAX_SAFE_INTEGER;for(let i=0;i<t.length;i++){const e=j(t[i]);if(Number.isNaN(e)||(0,f.hX)(e))return O(H(t),`The value cannot be interpreted as a numeric array. ${H(e)} is not a number.`);e>l&&(l=e),e<a&&(a=e),n.push(e)}return o=n.length>0&&(l>i.y_max||a<i.y_min)?n.map((e=>l-a===0?l>(i.y_max||1)?i.y_max||1:i.y_min||0:((i.y_max||1)-(i.y_min||0))*((e-a)/(l-a))+(i.y_min||0))):n,{...r,copyData:n.join(","),data:{...r.data,values:o,displayValues:n.map((e=>W(e)))},isMissingValue:(0,f.hX)(e)}},getCellValue(e){var t,n;return e.kind===o.dd.Loading||void 0===(null===(t=e.data)||void 0===t?void 0:t.values)?null:null===(n=e.data)||void 0===n?void 0:n.values}}}function we(e){return ye("line_chart",e,"line")}function xe(e){return ye("bar_chart",e,"bar")}function Ce(e){return ye("area_chart",e,"area")}function Me(e){const t={kind:o.dd.Image,data:[],displayData:[],readonly:!0,allowOverlay:!0,contentAlign:e.contentAlignment||"center",style:e.isIndex?"faded":"normal"};return{...e,kind:"image",sortMode:"default",isEditable:!1,getCell(e){const n=(0,f.se)(e)?[H(e)]:[];return{...t,data:n,isMissingValue:!(0,f.se)(e),displayData:n}},getCellValue:e=>void 0===e.data||0===e.data.length?null:e.data[0]}}we.isEditableType=!1,xe.isEditableType=!1,Ce.isEditableType=!1,Me.isEditableType=!1;const Se=Me;function Ee(e){const t=e.columnTypeOptions||{};let n,i;if(t.validate)try{n=new RegExp(t.validate,"us")}catch(a){n=`Invalid validate regex: ${t.validate}.\nError: ${a}`}if(!(0,f.hX)(t.display_text)&&t.display_text.includes("(")&&t.display_text.includes(")"))try{i=new RegExp(t.display_text,"us")}catch(a){i=void 0}const r={kind:o.dd.Uri,readonly:!e.isEditable,allowOverlay:!0,contentAlign:e.contentAlignment,style:e.isIndex?"faded":"normal",hoverEffect:!0,data:"",displayData:"",copyData:""},l=i=>{if((0,f.hX)(i))return!e.isRequired;const o=H(i);return!(t.max_chars&&o.length>t.max_chars)&&!(n instanceof RegExp&&!1===n.test(o))};return{...e,kind:"link",sortMode:"default",validateInput:l,getCell(e,o){if((0,f.hX)(e))return{...r,data:null,isMissingValue:!0,onClickUri:()=>{}};const s=e;if("string"===typeof n)return O(H(s),n);if(o){if(!1===l(s))return O(H(s),"Invalid input.")}let d="";return s&&(d=void 0!==i?function(e,t){if((0,f.hX)(t))return"";try{const n=t.match(e);return n&&void 0!==n[1]?decodeURI(n[1]):t}catch(a){return t}}(i,s):t.display_text||s),{...r,data:s,displayData:d,isMissingValue:(0,f.hX)(s),onClickUri:e=>{window.open(s.startsWith("www.")?`https://${s}`:s,"_blank","noopener,noreferrer"),e.preventDefault()},copyData:s}},getCellValue:e=>(0,f.hX)(e.data)?null:e.data}}Ee.isEditableType=!0;const ke=Ee;function Te(e){const t=se(N.D0.getTypeName(e.arrowType)),n=X({min_value:0,max_value:t?100:1,step:t?1:.01,format:t?"%3d%%":"percent"},e.columnTypeOptions);let i;try{i=W(n.max_value,n.format)}catch(a){i=H(n.max_value)}const r=(0,f.hX)(n.step)||Number.isNaN(n.step)?void 0:P(n.step),l={kind:o.dd.Custom,allowOverlay:!1,copyData:"",contentAlign:e.contentAlignment,data:{kind:"range-cell",min:n.min_value,max:n.max_value,step:n.step,value:n.min_value,label:String(n.min_value),measureLabel:i,readonly:!0}};return{...e,kind:"progress",sortMode:"smart",isEditable:!1,getCell(e){if((0,f.hX)(e))return F();if((0,f.hX)(n.min_value)||(0,f.hX)(n.max_value)||Number.isNaN(n.min_value)||Number.isNaN(n.max_value)||n.min_value>=n.max_value)return O("Invalid min/max parameters",`The min_value (${n.min_value}) and max_value (${n.max_value}) parameters must be valid numbers.`);if((0,f.hX)(n.step)||Number.isNaN(n.step))return O("Invalid step parameter",`The step parameter (${n.step}) must be a valid number.`);const t=j(e);if(Number.isNaN(t)||(0,f.hX)(t))return O(H(e),"The value cannot be interpreted as a number.");if(Number.isInteger(t)&&!Number.isSafeInteger(t))return O(H(e),"The value is larger than the maximum supported integer values in number columns (2^53).");let i="";try{i=W(t,n.format,r)}catch(a){return O(H(t),(0,f.se)(n.format)?`Failed to format the number based on the provided format configuration: (${n.format}). Error: ${a}`:`Failed to format the number. Error: ${a}`)}const o=Math.min(n.max_value,Math.max(n.min_value,t));return{...l,isMissingValue:(0,f.hX)(e),copyData:String(t),data:{...l.data,value:o,label:i}}},getCellValue(e){var t,n;return e.kind===o.dd.Loading||void 0===(null===(t=e.data)||void 0===t?void 0:t.value)?null:null===(n=e.data)||void 0===n?void 0:n.value}}}Te.isEditableType=!1;const Re=Te,Ne=new Map(Object.entries({object:Z,text:ee,checkbox:ae,selectbox:me,list:ge,number:ue,link:ke,datetime:ie,date:re,time:oe,line_chart:we,bar_chart:xe,area_chart:Ce,image:Se,progress:Re})),Ie=[],_e="_index",Oe="_pos:",De={small:75,medium:200,large:400};function Ae(e){if(!(0,f.hX)(e))return"number"===typeof e?e:e in De?De[e]:void 0}function Fe(e,t){if(!t)return e;let n;return t.has(e.name)&&e.name!==_e?n=t.get(e.name):t.has(`${Oe}${e.indexNumber}`)?n=t.get(`${Oe}${e.indexNumber}`):e.isIndex&&t.has(_e)&&(n=t.get(_e)),n?y()({...e},{title:n.label,width:Ae(n.width),isEditable:(0,f.se)(n.disabled)?!n.disabled:void 0,isHidden:n.hidden,isRequired:n.required,columnTypeOptions:n.type_config,contentAlignment:n.alignment,defaultValue:n.default,help:n.help}):e}function $e(e){var t;const n=null===(t=e.columnTypeOptions)||void 0===t?void 0:t.type;let i;return(0,f.se)(n)&&(Ne.has(n)?i=Ne.get(n):(0,G.FF)(`Unknown column type configured in column configuration: ${n}`)),(0,f.hX)(i)&&(i=function(e){let t=e?N.D0.getTypeName(e):null;return t?(t=t.toLowerCase().trim(),["unicode","empty","large_string[pyarrow]"].includes(t)?ee:["datetime","datetimetz"].includes(t)?ie:"time"===t?oe:"date"===t?re:["object","bytes"].includes(t)?Z:["bool"].includes(t)?ae:["int8","int16","int32","int64","uint8","uint16","uint32","uint64","float16","float32","float64","float96","float128","range","decimal"].includes(t)?ue:"categorical"===t?me:t.startsWith("list")?ge:Z):Z}(e.arrowType)),i}const Le=function(e,t,n){const o=(0,J.u)(),r=i.useMemo((()=>function(e){if(!e)return new Map;try{return new Map(Object.entries(JSON.parse(e)))}catch(t){return(0,G.vV)(t),new Map}}(e.columns)),[e.columns]),l=e.useContainerWidth||(0,f.se)(e.width)&&e.width>0;return{columns:i.useMemo((()=>{let i=function(e){const t=[],{dimensions:n}=e,i=n.headerColumns,o=n.dataColumns;if(0===i&&0===o)return t.push({id:"empty-index",title:"",indexNumber:0,isEditable:!1,isIndex:!0}),t;for(let r=0;r<i;r++){const n={...pe(e,r),indexNumber:r};t.push(n)}for(let r=0;r<o;r++){const n={...ve(e,r),indexNumber:r+i};t.push(n)}return t}(t).map((t=>{let i={...t,...Fe(t,r),isStretched:l};const a=$e(i);return(e.editingMode===g.i3.EditingMode.READ_ONLY||n||!1===a.isEditableType)&&(i={...i,isEditable:!1}),e.editingMode!==g.i3.EditingMode.READ_ONLY&&1==i.isEditable&&(i={...i,icon:"editable"},i.isRequired&&e.editingMode===g.i3.EditingMode.DYNAMIC&&(i={...i,isHidden:!1})),a(i,o)})).filter((e=>!e.isHidden));if(e.columnOrder&&e.columnOrder.length>0){const t=[];i.forEach((e=>{e.isIndex&&t.push(e)})),e.columnOrder.forEach((e=>{const n=i.find((t=>t.name===e));n&&!n.isIndex&&t.push(n)})),i=t}return i.length>0?i:[Z({id:"empty-index",title:"",indexNumber:0,isEditable:!1,isIndex:!0})]}),[t,r,l,n,e.editingMode,e.columnOrder,o])}};function Xe(e){return e.isIndex?_e:(0,f.hX)(e.name)?"":e.name}const ze=class{constructor(e){this.editedCells=new Map,this.addedRows=[],this.deletedRows=[],this.numRows=0,this.numRows=e}toJson(e){const t=new Map;e.forEach((e=>{t.set(e.indexNumber,e)}));const n={edited_rows:{},added_rows:[],deleted_rows:[]};this.editedCells.forEach(((e,i,o)=>{const r={};e.forEach(((e,n,i)=>{const o=t.get(n);o&&(r[Xe(o)]=o.getCellValue(e))})),n.edited_rows[i]=r})),this.addedRows.forEach((e=>{const i={};let o=!1;e.forEach(((e,n,r)=>{const l=t.get(n);if(l){const t=l.getCellValue(e);l.isRequired&&l.isEditable&&A(e)&&(o=!0),(0,f.se)(t)&&(i[Xe(l)]=t)}})),o||n.added_rows.push(i)})),n.deleted_rows=this.deletedRows;return JSON.stringify(n,((e,t)=>void 0===t?null:t))}fromJson(e,t){this.editedCells=new Map,this.addedRows=[],this.deletedRows=[];const n=JSON.parse(e),i=new Map;t.forEach((e=>{i.set(e.indexNumber,e)}));const o=new Map;t.forEach((e=>{o.set(Xe(e),e)})),Object.keys(n.edited_rows).forEach((e=>{const t=Number(e),i=n.edited_rows[e];Object.keys(i).forEach((e=>{const n=i[e],r=o.get(e);if(r){const e=r.getCell(n);var l;if(e)this.editedCells.has(t)||this.editedCells.set(t,new Map),null===(l=this.editedCells.get(t))||void 0===l||l.set(r.indexNumber,e)}}))})),n.added_rows.forEach((e=>{const n=new Map;t.forEach((e=>{n.set(e.indexNumber,e.getCell(null))})),Object.keys(e).forEach((t=>{const i=e[t],r=o.get(t);if(r){const e=r.getCell(i);e&&n.set(r.indexNumber,e)}})),this.addedRows.push(n)})),this.deletedRows=n.deleted_rows}isAddedRow(e){return e>=this.numRows}getCell(e,t){if(this.isAddedRow(t))return this.addedRows[t-this.numRows].get(e);const n=this.editedCells.get(t);return void 0!==n?n.get(e):void 0}setCell(e,t,n){if(this.isAddedRow(t)){if(t-this.numRows>=this.addedRows.length)return;this.addedRows[t-this.numRows].set(e,n)}else{void 0===this.editedCells.get(t)&&this.editedCells.set(t,new Map);this.editedCells.get(t).set(e,n)}}addRow(e){this.addedRows.push(e)}deleteRows(e){e.sort(((e,t)=>t-e)).forEach((e=>{this.deleteRow(e)}))}deleteRow(e){(0,f.hX)(e)||e<0||(this.isAddedRow(e)?this.addedRows.splice(e-this.numRows,1):(this.deletedRows.includes(e)||(this.deletedRows.push(e),this.deletedRows=this.deletedRows.sort(((e,t)=>e-t))),this.editedCells.delete(e)))}getOriginalRowIndex(e){let t=e;for(let n=0;n<this.deletedRows.length&&!(this.deletedRows[n]>t);n++)t+=1;return t}getNumRows(){return this.numRows+this.addedRows.length-this.deletedRows.length}};var He=n(32735);const Ve=function(){const e=(0,J.u)(),t=i.useMemo((()=>({editable:e=>`<svg xmlns="http://www.w3.org/2000/svg" height="40" viewBox="0 96 960 960" width="40" fill="${e.bgColor}"><path d="m800.641 679.743-64.384-64.384 29-29q7.156-6.948 17.642-6.948 10.485 0 17.742 6.948l29 29q6.948 7.464 6.948 17.95 0 10.486-6.948 17.434l-29 29Zm-310.64 246.256v-64.383l210.82-210.821 64.384 64.384-210.821 210.82h-64.383Zm-360-204.872v-50.254h289.743v50.254H130.001Zm0-162.564v-50.255h454.615v50.255H130.001Zm0-162.307v-50.255h454.615v50.255H130.001Z"/></svg>`})),[]);return{theme:i.useMemo((()=>({accentColor:e.colors.primary,accentFg:e.colors.white,accentLight:(0,He.No)(e.colors.primary,.9),borderColor:e.colors.borderColorLight,horizontalBorderColor:e.colors.borderColorLight,fontFamily:e.genericFonts.bodyFont,bgSearchResult:(0,He.No)(e.colors.primary,.9),resizeIndicatorColor:e.colors.primary,bgIconHeader:e.colors.fadedText60,fgIconHeader:e.colors.white,bgHeader:e.colors.bgMix,bgHeaderHasFocus:e.colors.secondaryBg,bgHeaderHovered:e.colors.secondaryBg,textHeader:e.colors.fadedText60,textHeaderSelected:e.colors.white,textGroupHeader:e.colors.fadedText60,headerFontStyle:`${e.fontSizes.sm}`,baseFontStyle:e.fontSizes.sm,editorFontSize:e.fontSizes.sm,textDark:e.colors.bodyText,textMedium:(0,He.No)(e.colors.bodyText,.2),textLight:e.colors.fadedText40,textBubble:e.colors.fadedText60,bgCell:e.colors.bgColor,bgCellMedium:e.colors.bgColor,cellHorizontalPadding:8,cellVerticalPadding:3,bgBubble:e.colors.secondaryBg,bgBubbleSelected:e.colors.secondaryBg,linkColor:e.colors.linkText,drilldownBorder:e.colors.darkenedBgMix25})),[e]),tableBorderRadius:e.radii.default,tableBorderWidth:e.sizes.borderWidth,headerIcons:t}};const je=function(e,t,n,o){const r=e.columns.length;return{getCellContent:i.useCallback((i=>{let[l,a]=i;if(l>t.length-1)return O("Column index out of bounds.","This should never happen. Please report this bug.");if(a>n-1)return O("Row index out of bounds.","This should never happen. Please report this bug.");const s=t[l],d=s.indexNumber,u=o.current.getOriginalRowIndex(a),c=o.current.isAddedRow(u);if(s.isEditable||c){const e=o.current.getCell(d,u);if((0,f.se)(e))return e;if(c)return O("Error during cell creation.",`This should never happen. Please report this bug. No cell found for an added row: col=${d}; row=${u}`)}try{return be(s,e.getCell(u+r,d),e.cssStyles)}catch(m){return O("Error during cell creation.",`This should never happen. Please report this bug. \nError: ${m}`)}}),[t,n,e,o,r])}};var We=n(53221);const Be=function(e,t,n){const[o,r]=i.useState(),{getCellContent:l,getOriginalIndex:a}=(0,We.uf)({columns:t.map((e=>L(e))),getCellContent:n,rows:e,sort:o}),s=i.useMemo((()=>function(e,t){return void 0===t?e:e.map((e=>e.id===t.column.id?{...e,title:"asc"===t.direction?`\u2191 ${e.title}`:`\u2193 ${e.title}`}:e))}(t,o)),[t,o]),d=i.useCallback((e=>{let t="asc";const n=s[e];if(o&&o.column.id===n.id){if("asc"!==o.direction)return void r(void 0);t="desc"}r({column:L(n),direction:t,mode:n.sortMode})}),[o,s]);return{columns:s,sortColumn:d,getOriginalIndex:a,getCellContent:l}};var Ye=n(71034),Pe=n.n(Ye);const Ue=function(e,t,n,r,l){const[a,s]=i.useState({columns:o.I1.empty(),rows:o.I1.empty(),current:void 0}),d=!t&&!n&&(e.selectionMode.includes(g.i3.SelectionMode.MULTI_ROW)||e.selectionMode.includes(g.i3.SelectionMode.SINGLE_ROW)),u=d&&e.selectionMode.includes(g.i3.SelectionMode.MULTI_ROW),c=!t&&!n&&(e.selectionMode.includes(g.i3.SelectionMode.SINGLE_COLUMN)||e.selectionMode.includes(g.i3.SelectionMode.MULTI_COLUMN)),m=c&&e.selectionMode.includes(g.i3.SelectionMode.MULTI_COLUMN),h=a.rows.length>0,f=a.columns.length>0,p=void 0!==a.current,v=i.useCallback((e=>{const t=!Pe()(e.rows.toArray(),a.rows.toArray()),n=!Pe()(e.columns.toArray(),a.columns.toArray()),i=!Pe()(e.current,a.current);let o=d&&t||c&&n,u=e;if((d||c)&&void 0!==e.current&&i&&(u={...e,rows:a.rows,columns:a.columns},o=!1),t&&e.rows.length>0&&n&&0===e.columns.length&&(u={...u,columns:a.columns},o=!0),n&&e.columns.length>0&&t&&0===e.rows.length&&(u={...u,rows:a.rows},o=!0),n&&u.columns.length>=0){let e=u.columns;r.forEach(((t,n)=>{t.isIndex&&(e=e.remove(n))})),e.length<u.columns.length&&(u={...u,columns:e})}s(u),o&&l(u)}),[a,d,c,l,r]),b=i.useCallback((function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n={columns:t?a.columns:o.I1.empty(),rows:e?a.rows:o.I1.empty(),current:void 0};s(n),(!e&&d||!t&&c)&&l(n)}),[a,d,c,l]);return{gridSelection:a,isRowSelectionActivated:d,isMultiRowSelectionActivated:u,isColumnSelectionActivated:c,isMultiColumnSelectionActivated:m,isRowSelected:h,isColumnSelected:f,isCellSelected:p,clearSelection:b,processSelectionChange:v}};var qe=n(55562);const Je=",",Ge='"',Ke='"',Ze="\n",Qe="\ufeff",et=new RegExp(`[${[Je,Ge,Ze].join("")}]`);function tt(e){return e.map((e=>function(e){if((0,f.hX)(e))return"";const t=H(e);if(et.test(t))return`${Ge}${t.replace(new RegExp(Ge,"g"),Ke+Ge)}${Ge}`;return t}(e))).join(Je)+Ze}async function nt(e,t,n,i){const o=new TextEncoder;await e.write(o.encode(Qe));const r=n.map((e=>e.name));await e.write(o.encode(tt(r)));for(let l=0;l<i;l++){const i=[];n.forEach(((e,n,o)=>{i.push(e.getCellValue(t([n,l])))})),await e.write(o.encode(tt(i)))}await e.close()}const it=function(e,t,o,r){return{exportToCsv:i.useCallback((async()=>{const i=`${(new Date).toISOString().slice(0,16).replace(":","-")}_export.csv`;try{const r=await n.e(3966).then(n.bind(n,93966)),l=await r.showSaveFilePicker({suggestedName:i,types:[{accept:{"text/csv":[".csv"]}}],excludeAcceptAllOption:!1}),a=await l.createWritable();await nt(a,e,t,o)}catch(l){if(l instanceof Error&&"AbortError"===l.name)return;try{(0,G.FF)("Failed to export data as CSV with FileSystem API, trying fallback method",l);let n="";const a=new WritableStream({write:async e=>{n+=new TextDecoder("utf-8").decode(e)},close:async()=>{}});await nt(a.getWriter(),e,t,o);const s=new Blob([n],{type:"text/csv;charset=utf-8;"}),d=URL.createObjectURL(s),u=(0,qe.A)({enforceDownloadInNewTab:r,url:d,filename:i});u.style.display="none",document.body.appendChild(u),u.click(),document.body.removeChild(u),URL.revokeObjectURL(d)}catch(l){(0,G.vV)("Failed to export data as CSV",l)}}}),[t,o,e,r])}};const ot=function(e,t,n,o,r,l,a,s,d){const u=i.useCallback(((t,i)=>{let[l,a]=t;const d=e[l];if(!d.isEditable)return;const u=d.indexNumber,c=n.current.getOriginalRowIndex(r(a)),m=o([l,a]),h=d.getCellValue(m),g=d.getCellValue(i);if(!D(m)&&g===h)return;const f=d.getCell(g,!0);D(f)?(0,G.FF)(`Not applying the cell edit since it causes this error:\n ${f.data}`):(n.current.setCell(u,c,{...f,lastUpdated:performance.now()}),s())}),[e,n,r,o,s]),c=i.useCallback((()=>{if(t)return;const i=new Map;e.forEach((e=>{i.set(e.indexNumber,e.getCell(e.defaultValue))})),n.current.addRow(i),a()}),[e,n,t,a]),m=i.useCallback((()=>{t||(c(),s())}),[c,s,t]),h=i.useCallback((i=>{var o;if(i.rows.length>0){if(t)return!0;const e=i.rows.toArray().map((e=>n.current.getOriginalRowIndex(r(e))));return n.current.deleteRows(e),a(),d(),s(),!1}if(null!==(o=i.current)&&void 0!==o&&o.range){const t=[],n=i.current.range;for(let i=n.y;i<n.y+n.height;i++)for(let o=n.x;o<n.x+n.width;o++){const n=e[o];n.isEditable&&!n.isRequired&&(t.push({cell:[o,i]}),u([o,i],n.getCell(null)))}return t.length>0&&(s(),l(t)),!1}return!0}),[e,n,t,l,r,s,u,d,a]),g=i.useCallback(((i,a)=>{const[d,u]=i,m=[];for(let h=0;h<a.length;h++){const i=a[h];if(h+u>=n.current.getNumRows()){if(t)break;c()}for(let t=0;t<i.length;t++){const l=i[t],a=h+u,s=t+d;if(s>=e.length)break;const c=e[s];if(c.isEditable){const e=c.getCell(l,!0);if((0,f.se)(e)&&!D(e)){const t=c.indexNumber,i=n.current.getOriginalRowIndex(r(a)),l=c.getCellValue(o([s,a]));c.getCellValue(e)!==l&&(n.current.setCell(t,i,{...e,lastUpdated:performance.now()}),m.push({cell:[s,a]}))}}}m.length>0&&(s(),l(m))}return!1}),[e,n,t,r,o,c,s,l]),p=i.useCallback(((t,n)=>{const i=t[0];if(i>=e.length)return!0;const o=e[i];if(o.validateInput){const e=o.validateInput(o.getCellValue(n));return!0===e||!1===e?e:o.getCell(e)}return!0}),[e]);return{onCellEdited:u,onPaste:g,onRowAppended:m,onDelete:h,validateCell:p}};const rt=function(e,t){const[n,o]=i.useState(),r=i.useRef(null),l=i.useCallback((n=>{if(clearTimeout(r.current),r.current=0,o(void 0),("header"===n.kind||"cell"===n.kind)&&n.location){const i=n.location[0],l=n.location[1];let a;if(i<0||i>=e.length)return;const s=e[i];if("header"===n.kind&&(0,f.se)(s))a=s.help;else if("cell"===n.kind){const e=t([i,l]);s.isRequired&&s.isEditable&&A(e)?a="\u26a0\ufe0f Please fill out this cell.":function(e){return e.hasOwnProperty("tooltip")&&""!==e.tooltip}(e)&&(a=e.tooltip)}a&&(r.current=setTimeout((()=>{a&&o({content:a,left:n.bounds.x+n.bounds.width/2,top:n.bounds.y})}),600))}}),[e,t,o,r]);return{tooltip:n,clearTooltip:i.useCallback((()=>{o(void 0)}),[o]),onItemHovered:l}};var lt=n(28873),at=n(70128),st=n(13914),dt=n(43301),ut=n(67338);const ct=function(e){return{drawCell:i.useCallback(((t,n)=>{const{cell:i,theme:o,ctx:r,rect:l}=t,a=t.col;if(A(i)&&a<e.length){const i=e[a];return["checkbox","line_chart","bar_chart","progress"].includes(i.kind)?n():(e=>{const{cell:t,theme:n,ctx:i}=e;(0,lt.lR)({...e,theme:{...n,textDark:n.textLight,headerFontFull:`${n.headerFontStyle} ${n.fontFamily}`,baseFontFull:`${n.baseFontStyle} ${n.fontFamily}`,markerFontFull:`${n.markerFontStyle} ${n.fontFamily}`},spriteManager:{},hyperWrapping:!1},"None",t.contentAlign),i.fillStyle=n.textDark})(t),void(i.isRequired&&i.isEditable&&function(e,t,n){e.save(),e.beginPath(),e.moveTo(t.x+t.width-8,t.y+1),e.lineTo(t.x+t.width,t.y+1),e.lineTo(t.x+t.width,t.y+1+8),e.fillStyle=n.accentColor,e.fill(),e.restore()}(r,l,o))}n()}),[e]),customRenderers:i.useMemo((()=>[at.A,st.A,dt.A,ut.Ay,...Ie]),[])}};const mt=function(e){const[t,n]=(0,i.useState)((()=>new Map)),o=i.useCallback(((e,i,o,r)=>{e.id&&n(new Map(t).set(e.id,r))}),[t]);return{columns:i.useMemo((()=>e.map((e=>e.id&&t.has(e.id)&&void 0!==t.get(e.id)?{...e,width:t.get(e.id),grow:0}:e))),[e,t]),onColumnResize:o}},ht=2,gt=35,ft=50+ht,pt=2*gt+ht;const vt=function(e,t,n,o,r,l){let a=function(e){return Math.max(e*gt+ht,pt)}(t+(n?2:1)+(e.editingMode===g.i3.EditingMode.DYNAMIC?1:0)),s=Math.min(a,400);e.height&&(s=Math.max(e.height,pt),a=Math.max(e.height,a)),r&&(s=Math.min(s,r),a=Math.min(a,r),e.height||(s=a));const d=Math.max(o,ft);let u,c=d;e.useContainerWidth?u=d:e.width&&(u=Math.min(Math.max(e.width,ft),d),c=Math.min(Math.max(e.width,c),d));const[m,h]=i.useState({width:u||"100%",height:s});return i.useLayoutEffect((()=>{e.useContainerWidth&&"100%"===m.width&&h({width:d,height:m.height})}),[d]),i.useLayoutEffect((()=>{h({width:m.width,height:s})}),[t]),i.useLayoutEffect((()=>{h({width:u||"100%",height:m.height})}),[u]),i.useLayoutEffect((()=>{h({width:m.width,height:s})}),[s]),i.useLayoutEffect((()=>{if(l){const t=e.useContainerWidth||(0,f.se)(e.width)&&e.width>0;h({width:t?c:"100%",height:a})}else h({width:u||"100%",height:s})}),[l]),{minHeight:pt,maxHeight:a,minWidth:ft,maxWidth:c,resizableSize:m,setResizableSize:h}};var bt=n(89653),yt=n(90782);const wt=(0,bt.A)("img",{target:"e24uaba0"})({name:"6eya2z",styles:"max-width:100%;max-height:37.5rem;object-fit:scale-down"}),xt=e=>{let{urls:t}=e;const n=t&&t.length>0?t[0]:"";return n.startsWith("http")?(0,yt.jsx)("a",{href:n,target:"_blank",rel:"noreferrer noopener",children:(0,yt.jsx)(wt,{src:n})}):(0,yt.jsx)(wt,{src:n})};var Ct=n(3074),Mt=n(41639),St=n(4629),Et=n(88044),kt=n(16795);const Tt=function(e){let{top:t,left:n,content:o,clearTooltip:r}=e;const[l,a]=i.useState(!0),s=(0,J.u)(),{colors:d,fontSizes:u,radii:c,fontWeights:m}=s,h=i.useCallback((()=>{a(!1),r()}),[r,a]);return(0,yt.jsx)(Ct.A,{content:(0,yt.jsx)(Et.hW,{"data-testid":"stDataFrameTooltipContent",children:(0,yt.jsx)(St.Ay,{style:{fontSize:u.sm},source:o,allowHTML:!1})}),placement:Mt.El.top,accessibilityType:Mt.IP.tooltip,showArrow:!1,popoverMargin:5,onClickOutside:h,onEsc:h,overrides:{Body:{style:{borderTopLeftRadius:c.default,borderTopRightRadius:c.default,borderBottomLeftRadius:c.default,borderBottomRightRadius:c.default,paddingTop:"0 !important",paddingBottom:"0 !important",paddingLeft:"0 !important",paddingRight:"0 !important",backgroundColor:"transparent"}},Inner:{style:{backgroundColor:(0,kt.iq)(s)?d.bgColor:d.secondaryBg,color:d.bodyText,fontSize:u.sm,fontWeight:m.normal,paddingTop:"0 !important",paddingBottom:"0 !important",paddingLeft:"0 !important",paddingRight:"0 !important"}}},isOpen:l,children:(0,yt.jsx)("div",{"data-testid":"stDataFrameTooltipTarget",style:{position:"fixed",top:t,left:n}})})},Rt=(0,bt.A)("div",{target:"e1w7nams0"})((e=>{let{hasCustomizedScrollbars:t,theme:n}=e;return{position:"relative",display:"inline-block","& .stDataFrameGlideDataEditor":{height:"100%",minWidth:"100%",borderRadius:n.radii.default},"& .dvn-scroller":{...!t&&{scrollbarWidth:"thin"},overflowX:"auto !important",overflowY:"auto !important"}}}),"");n(32595),n(1627);const Nt=(0,h.A)((function(e){let{element:t,data:n,width:h,height:b,disabled:y,widgetMgr:w,isFullScreen:x,disableFullscreenMode:C,expand:M,collapse:S,fragmentId:E}=e;const k=i.useRef(null),T=i.useRef(null),R=i.useRef(null),{theme:N,headerIcons:I,tableBorderRadius:_,tableBorderWidth:O}=Ve(),{libConfig:{enforceDownloadInNewTab:D=!1}}=i.useContext(v.n),[A,F]=i.useState(!0),[X,z]=i.useState(!1),[H,V]=i.useState(!1),[j,W]=i.useState(!1),B=i.useMemo((()=>window.matchMedia&&window.matchMedia("(pointer: coarse)").matches),[]),Y=i.useMemo((()=>window.navigator.userAgent.includes("Mac OS")&&window.navigator.userAgent.includes("Safari")||window.navigator.userAgent.includes("Chrome")),[]);(0,f.hX)(t.editingMode)&&(t.editingMode=g.i3.EditingMode.READ_ONLY);const{READ_ONLY:P,DYNAMIC:U}=g.i3.EditingMode,q=n.dimensions,J=Math.max(0,q.dataRows),G=0===J&&!(t.editingMode===U&&q.dataColumns>0),K=J>15e4,Z=i.useRef(new ze(J)),[Q,ee]=i.useState(Z.current.getNumRows());i.useEffect((()=>{Z.current=new ze(J),ee(Z.current.getNumRows())}),[J]);const te=i.useCallback((()=>{Z.current=new ze(J),ee(Z.current.getNumRows())}),[J]),{columns:ne}=Le(t,n,y);i.useEffect((()=>{if(t.editingMode===P)return;const e=w.getStringValue({id:t.id,formId:t.formId});e&&(Z.current.fromJson(e,ne),ee(Z.current.getNumRows()))}),[]);const{getCellContent:ie}=je(n,ne,Q,Z),{columns:oe,sortColumn:re,getOriginalIndex:le,getCellContent:ae}=Be(J,ne,ie),se=i.useCallback((0,f.sg)(150,(e=>{const n={selection:{rows:[],columns:[]}};n.selection.rows=e.rows.toArray().map((e=>le(e))),n.selection.columns=e.columns.toArray().map((e=>Xe(oe[e])));const i=JSON.stringify(n),o=w.getStringValue({id:t.id,formId:t.formId});void 0!==o&&o===i||w.setStringValue({id:t.id,formId:t.formId},i,{fromUi:!0},E)})),[t.id,t.formId,w,E,le,Xe]),{gridSelection:de,isRowSelectionActivated:ue,isMultiRowSelectionActivated:ce,isColumnSelectionActivated:me,isMultiColumnSelectionActivated:he,isRowSelected:ge,isColumnSelected:fe,isCellSelected:pe,clearSelection:ve,processSelectionChange:be}=Ue(t,G,y,oe,se);i.useEffect((()=>{ve(!0,!0)}),[x]);const ye=i.useCallback((e=>{var t;null===(t=T.current)||void 0===t||t.updateCells(e)}),[]);i.useEffect((()=>{if(!ue&&!me)return;const e=w.getStringValue({id:t.id,formId:t.formId});if(e){var n,i,r,l;const t=oe.map((e=>Xe(e))),a=JSON.parse(e);let s=o.I1.empty(),d=o.I1.empty();if(null===(n=a.selection)||void 0===n||null===(i=n.rows)||void 0===i||i.forEach((e=>{s=s.add(e)})),null===(r=a.selection)||void 0===r||null===(l=r.columns)||void 0===l||l.forEach((e=>{d=d.add(t.indexOf(e))})),s.length>0||d.length>0){be({rows:s,columns:d,current:void 0})}}}),[]);const we=i.useCallback((()=>{Q!==Z.current.getNumRows()&&ee(Z.current.getNumRows())}),[Q]),xe=i.useCallback((0,f.sg)(150,(()=>{const e=Z.current.toJson(oe);let n=w.getStringValue({id:t.id,formId:t.formId});void 0===n&&(n=new ze(0).toJson([])),e!==n&&w.setStringValue({id:t.id,formId:t.formId},e,{fromUi:!0},E)})),[t.id,t.formId,w,E,oe,Z.current]),{exportToCsv:Ce}=it(ae,oe,Q,D),{onCellEdited:Me,onPaste:Se,onRowAppended:Ee,onDelete:ke,validateCell:Te}=ot(oe,t.editingMode!==U,Z,ae,le,ye,we,xe,ve),{tooltip:Re,clearTooltip:Ne,onItemHovered:Ie}=rt(oe,ae),{drawCell:_e,customRenderers:Oe}=ct(oe),De=i.useMemo((()=>oe.map((e=>L(e)))),[oe]),{columns:Ae,onColumnResize:Fe}=mt(De),$e=n.columns.length>1,{minHeight:He,maxHeight:We,minWidth:Ye,maxWidth:Pe,resizableSize:qe,setResizableSize:Je}=vt(t,Q,$e,h,b,x),Ge=i.useCallback((e=>{let[t,n]=e;return{...$(!0,!1),displayData:"empty",contentAlign:"center",allowOverlay:!1,themeOverride:{textDark:N.textLight},span:[0,Math.max(oe.length-1,0)]}}),[oe,N.textLight]),Ke=i.useCallback((()=>{te(),ve()}),[te,ve]);(0,m.X)({element:t,widgetMgr:w,onFormCleared:Ke});const Ze=!G&&t.editingMode===U&&!y,Qe=G?0:oe.filter((e=>e.isIndex)).length;return i.useEffect((()=>{setTimeout((()=>{if(R.current&&T.current){var e,t;const n=null===(e=R.current)||void 0===e||null===(t=e.querySelector(".dvn-stack"))||void 0===t?void 0:t.getBoundingClientRect();n&&(V(n.height>R.current.clientHeight),W(n.width>R.current.clientWidth))}}),1)}),[qe,Q,Ae]),(0,yt.jsxs)(Rt,{className:"stDataFrame","data-testid":"stDataFrame",hasCustomizedScrollbars:Y,ref:R,onMouseDown:e=>{if(R.current&&Y){const t=R.current.getBoundingClientRect();j&&t.height-7<e.clientY-t.top&&e.stopPropagation(),H&&t.width-7<e.clientX-t.left&&e.stopPropagation()}},onBlur:e=>{A||B||e.currentTarget.contains(e.relatedTarget)||ve(!0,!0)},children:[(0,yt.jsxs)(p.A,{isFullScreen:x,disableFullscreenMode:C,locked:ge&&!ue||pe||B&&A,onExpand:M,onCollapse:S,target:Rt,children:[(ue&&ge||me&&fe)&&(0,yt.jsx)(p.K,{label:"Clear selection",icon:a.b,onClick:()=>{ve(),Ne()}}),Ze&&ge&&(0,yt.jsx)(p.K,{label:"Delete row(s)",icon:s.e,onClick:()=>{ke&&(ke(de),Ne())}}),Ze&&!ge&&(0,yt.jsx)(p.K,{label:"Add row",icon:d.O,onClick:()=>{Ee&&(F(!0),Ee(),Ne())}}),!K&&!G&&(0,yt.jsx)(p.K,{label:"Download as CSV",icon:u.n,onClick:()=>Ce()}),!G&&(0,yt.jsx)(p.K,{label:"Search",icon:c.v,onClick:()=>{X?z(!1):(F(!0),z(!0)),Ne()}})]}),(0,yt.jsx)(l.c,{"data-testid":"stDataFrameResizable",ref:k,defaultSize:qe,style:{border:`${O} solid ${N.borderColor}`,borderRadius:`${_}`},minHeight:He,maxHeight:We,minWidth:Ye,maxWidth:Pe,size:qe,enable:{top:!1,right:!1,bottom:!1,left:!1,topRight:!1,bottomRight:!0,bottomLeft:!1,topLeft:!1},grid:[1,gt],snapGap:gt/3,onResizeStop:(e,t,n,i)=>{k.current&&Je({width:k.current.size.width,height:We-k.current.size.height===ht?k.current.size.height+ht:k.current.size.height})},children:(0,yt.jsx)(r.D,{className:"stDataFrameGlideDataEditor","data-testid":"stDataFrameGlideDataEditor",ref:T,columns:Ae,rows:G?1:Q,minColumnWidth:50,maxColumnWidth:1e3,maxColumnAutoWidth:500,rowHeight:gt,headerHeight:gt,getCellContent:G?Ge:ae,onColumnResize:B?void 0:Fe,resizeIndicator:"header",freezeColumns:Qe,smoothScrollX:!0,smoothScrollY:!0,verticalBorder:!0,getCellsForSelection:!0,rowMarkers:"none",rangeSelect:B?"cell":"rect",columnSelect:"none",rowSelect:"none",onItemHovered:Ie,keybindings:{downFill:!0},onKeyDown:e=>{(e.ctrlKey||e.metaKey)&&"f"===e.key&&(z((e=>!e)),e.stopPropagation(),e.preventDefault())},showSearch:X,onSearchClose:()=>{z(!1),Ne()},onHeaderClicked:(e,t)=>{G||K||me||(ue&&ge&&ve(),re(e))},gridSelection:de,onGridSelectionChange:e=>{(A||B)&&(be(e),void 0!==Re&&Ne())},theme:N,onMouseMove:e=>{"out-of-bounds"===e.kind&&A?F(!1):"out-of-bounds"===e.kind||A||F(!0)},fixedShadowX:!0,fixedShadowY:!0,experimental:{scrollbarWidthOverride:0,...Y&&{paddingBottom:j?-6:void 0,paddingRight:H?-6:void 0}},drawCell:_e,customRenderers:Oe,imageEditorOverride:xt,headerIcons:I,validateCell:Te,onPaste:!1,...ue&&{rowMarkers:{kind:"checkbox",checkboxStyle:"square",theme:{bgCell:N.bgHeader,bgCellMedium:N.bgHeader}},rowSelectionMode:ce?"multi":"auto",rowSelect:y?"none":ce?"multi":"single",rowSelectionBlending:"mixed",rangeSelectionBlending:"exclusive"},...me&&{columnSelect:y?"none":he?"multi":"single",columnSelectionBlending:"mixed",rangeSelectionBlending:"exclusive"},...!G&&t.editingMode!==P&&!y&&{fillHandle:!B,onCellEdited:Me,onPaste:Se,onDelete:ke},...!G&&t.editingMode===U&&{trailingRowOptions:{sticky:!1,tint:!0},rowMarkers:{kind:"checkbox",checkboxStyle:"square",theme:{bgCell:N.bgHeader,bgCellMedium:N.bgHeader}},rowSelectionMode:"multi",rowSelect:y?"none":"multi",onRowAppended:y?void 0:Ee,onHeaderClicked:void 0}})}),Re&&Re.content&&(0,yt.jsx)(Tt,{top:Re.top,left:Re.left,content:Re.content,clearTooltip:Ne})]})}),!0)},34752:(e,t,n)=>{n.d(t,{X:()=>l,o:()=>r});var i=n(58878),o=n(25571);class r{constructor(){this.formClearListener=void 0,this.lastWidgetMgr=void 0,this.lastFormId=void 0}manageFormClearListener(e,t,n){(0,o.se)(this.formClearListener)&&this.lastWidgetMgr===e&&this.lastFormId===t||(this.disconnect(),(0,o._L)(t)&&(this.formClearListener=e.addFormClearedListener(t,n),this.lastWidgetMgr=e,this.lastFormId=t))}disconnect(){var e;null===(e=this.formClearListener)||void 0===e||e.disconnect(),this.formClearListener=void 0,this.lastWidgetMgr=void 0,this.lastFormId=void 0}}function l(e){let{element:t,widgetMgr:n,onFormCleared:r}=e;(0,i.useEffect)((()=>{if(!(0,o._L)(t.formId))return;const e=n.addFormClearedListener(t.formId,r);return()=>{e.disconnect()}}),[t,n,r])}},55562:(e,t,n)=>{n.d(t,{A:()=>i});const i=e=>{let{enforceDownloadInNewTab:t,url:n,filename:i}=e;const o=document.createElement("a");return o.setAttribute("href",n),t?o.setAttribute("target","_blank"):o.setAttribute("target","_self"),o.setAttribute("download",i),o}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_streamlit_app=self.webpackChunk_streamlit_app||[]).push([[9993],{95241:(t,e,i)=>{i.d(e,{e:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),n.createElement("path",{d:"M16 9v10H8V9h8m-1.5-6h-5l-1 1H5v2h14V4h-3.5l-1-1zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7z"}))}));o.displayName="Delete"},18364:(t,e,i)=>{i.d(e,{n:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("rect",{width:24,height:24,fill:"none"}),n.createElement("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3h-2zm-1-4l-1.41-1.41L13 12.17V4h-2v8.17L8.41 9.59 7 11l5 5 5-5z"}))}));o.displayName="FileDownload"},12274:(t,e,i)=>{i.d(e,{g:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),n.createElement("path",{d:"M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z"}))}));o.displayName="Fullscreen"},63186:(t,e,i)=>{i.d(e,{Q:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),n.createElement("path",{d:"M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z"}))}));o.displayName="FullscreenExit"},96626:(t,e,i)=>{i.d(e,{G:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("g",{fill:"none"},n.createElement("rect",{width:24,height:24}),n.createElement("rect",{width:24,height:24}),n.createElement("rect",{width:24,height:24})),n.createElement("path",{d:"M12 14c1.66 0 3-1.34 3-3V5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3z"}),n.createElement("path",{d:"M17 11c0 2.76-2.24 5-5 5s-5-2.24-5-5H5c0 3.53 2.61 6.43 6 6.92V21h2v-3.08c3.39-.49 6-3.39 6-6.92h-2z"}))}));o.displayName="Mic"},37789:(t,e,i)=>{i.d(e,{v:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("rect",{width:24,height:24,fill:"none"}),n.createElement("path",{d:"M8 19c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2s-2 .9-2 2v10c0 1.1.9 2 2 2zm6-12v10c0 1.1.9 2 2 2s2-.9 2-2V7c0-1.1-.9-2-2-2s-2 .9-2 2z"}))}));o.displayName="Pause"},14757:(t,e,i)=>{i.d(e,{S:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("rect",{width:24,height:24,fill:"none"}),n.createElement("path",{d:"M8 6.82v10.36c0 .79.87 1.27 1.54.84l8.14-5.18a1 1 0 000-1.69L9.54 5.98A.998.998 0 008 6.82z"}))}));o.displayName="PlayArrow"},88685:(t,e,i)=>{i.d(e,{C:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),n.createElement("path",{d:"M17.65 6.35a7.95 7.95 0 00-6.48-2.31c-3.67.37-6.69 3.35-7.1 7.02C3.52 15.91 7.27 20 12 20a7.98 7.98 0 007.21-4.56c.32-.67-.16-1.44-.9-1.44-.37 0-.72.2-.88.53a5.994 5.994 0 01-6.8 3.31c-2.22-.49-4.01-2.3-4.48-4.52A6.002 6.002 0 0112 6c1.66 0 3.14.69 4.22 1.78l-1.51 1.51c-.63.63-.19 1.71.7 1.71H19c.55 0 1-.45 1-1V6.41c0-.89-1.08-1.34-1.71-.71l-.64.65z"}))}));o.displayName="Refresh"},34783:(t,e,i)=>{i.d(e,{X:()=>o});var r=i(68102),n=i(58878),s=i(68622),o=n.forwardRef((function(t,e){return n.createElement(s.I,(0,r.A)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},t,{ref:e}),n.createElement("g",{fill:"none"},n.createElement("rect",{width:24,height:24}),n.createElement("rect",{width:24,height:24})),n.createElement("path",{fillRule:"evenodd",d:"M9 16h6c.55 0 1-.45 1-1V9c0-.55-.45-1-1-1H9c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1zm3-14C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z"}))}));o.displayName="StopCircle"},56146:(t,e,i)=>{function r(t,e,i,r){return new(i||(i=Promise))((function(n,s){function o(t){try{l(r.next(t))}catch(t){s(t)}}function a(t){try{l(r.throw(t))}catch(t){s(t)}}function l(t){var e;t.done?n(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(o,a)}l((r=r.apply(t,e||[])).next())}))}i.d(e,{A:()=>l}),"function"==typeof SuppressedError&&SuppressedError;class n{constructor(){this.listeners={}}on(t,e,i){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==i?void 0:i.once){const i=()=>{this.un(t,i),this.un(t,e)};return this.on(t,i),i}return()=>this.un(t,e)}un(t,e){var i;null===(i=this.listeners[t])||void 0===i||i.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;r<e;r++)i[r-1]=arguments[r];this.listeners[t]&&this.listeners[t].forEach((t=>t(...i)))}}class s extends n{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit("destroy"),this.subscriptions.forEach((t=>t()))}}class o extends n{constructor(){super(...arguments),this.unsubscribe=()=>{}}start(){this.unsubscribe=this.on("tick",(()=>{requestAnimationFrame((()=>{this.emit("tick")}))})),this.emit("tick")}stop(){this.unsubscribe()}destroy(){this.unsubscribe()}}const a=["audio/webm","audio/wav","audio/mpeg","audio/mp4","audio/mp3"];class l extends s{constructor(t){var e,i,r,n,s;super(Object.assign(Object.assign({},t),{audioBitsPerSecond:null!==(e=t.audioBitsPerSecond)&&void 0!==e?e:128e3,scrollingWaveform:null!==(i=t.scrollingWaveform)&&void 0!==i&&i,scrollingWaveformWindow:null!==(r=t.scrollingWaveformWindow)&&void 0!==r?r:5,renderRecordedAudio:null===(n=t.renderRecordedAudio)||void 0===n||n,mediaRecorderTimeslice:null!==(s=t.mediaRecorderTimeslice)&&void 0!==s?s:void 0})),this.stream=null,this.mediaRecorder=null,this.dataWindow=null,this.isWaveformPaused=!1,this.lastStartTime=0,this.lastDuration=0,this.duration=0,this.timer=new o,this.subscriptions.push(this.timer.on("tick",(()=>{const t=performance.now()-this.lastStartTime;this.duration=this.isPaused()?this.duration:this.lastDuration+t,this.emit("record-progress",this.duration)})))}static create(t){return new l(t||{})}renderMicStream(t){const e=new AudioContext,i=e.createMediaStreamSource(t),r=e.createAnalyser();i.connect(r);const n=r.frequencyBinCount,s=new Float32Array(n);let o;const a=Math.floor((this.options.scrollingWaveformWindow||0)*e.sampleRate),l=()=>{var t;if(this.isWaveformPaused)return void(o=requestAnimationFrame(l));if(r.getFloatTimeDomainData(s),this.options.scrollingWaveform){const t=Math.min(a,this.dataWindow?this.dataWindow.length+n:n),e=new Float32Array(a);if(this.dataWindow){const i=Math.max(0,a-this.dataWindow.length);e.set(this.dataWindow.slice(-t+n),i)}e.set(s,a-n),this.dataWindow=e}else this.dataWindow=s;const e=this.options.scrollingWaveformWindow;this.wavesurfer&&(null!==(t=this.originalOptions)&&void 0!==t||(this.originalOptions={cursorWidth:this.wavesurfer.options.cursorWidth,interact:this.wavesurfer.options.interact}),this.wavesurfer.options.cursorWidth=0,this.wavesurfer.options.interact=!1,this.wavesurfer.load("",[this.dataWindow],e)),o=requestAnimationFrame(l)};return l(),{onDestroy:()=>{cancelAnimationFrame(o),null==i||i.disconnect(),null==e||e.close()},onEnd:()=>{this.isWaveformPaused=!0,cancelAnimationFrame(o),this.stopMic()}}}startMic(t){return r(this,void 0,void 0,(function*(){let e;try{e=yield navigator.mediaDevices.getUserMedia({audio:!(null==t?void 0:t.deviceId)||{deviceId:t.deviceId}})}catch(e){throw new Error("Error accessing the microphone: "+e.message)}const{onDestroy:i,onEnd:r}=this.renderMicStream(e);return this.subscriptions.push(this.once("destroy",i)),this.subscriptions.push(this.once("record-end",r)),this.stream=e,e}))}stopMic(){this.stream&&(this.stream.getTracks().forEach((t=>t.stop())),this.stream=null,this.mediaRecorder=null)}startRecording(t){return r(this,void 0,void 0,(function*(){const e=this.stream||(yield this.startMic(t));this.dataWindow=null;const i=this.mediaRecorder||new MediaRecorder(e,{mimeType:this.options.mimeType||a.find((t=>MediaRecorder.isTypeSupported(t))),audioBitsPerSecond:this.options.audioBitsPerSecond});this.mediaRecorder=i,this.stopRecording();const r=[];i.ondataavailable=t=>{t.data.size>0&&r.push(t.data),this.emit("record-data-available",t.data)};const n=t=>{var e;const n=new Blob(r,{type:i.mimeType});this.emit(t,n),this.options.renderRecordedAudio&&(this.applyOriginalOptionsIfNeeded(),null===(e=this.wavesurfer)||void 0===e||e.load(URL.createObjectURL(n)))};i.onpause=()=>n("record-pause"),i.onstop=()=>n("record-end"),i.start(this.options.mediaRecorderTimeslice),this.lastStartTime=performance.now(),this.lastDuration=0,this.duration=0,this.isWaveformPaused=!1,this.timer.start(),this.emit("record-start")}))}getDuration(){return this.duration}isRecording(){var t;return"recording"===(null===(t=this.mediaRecorder)||void 0===t?void 0:t.state)}isPaused(){var t;return"paused"===(null===(t=this.mediaRecorder)||void 0===t?void 0:t.state)}isActive(){var t;return"inactive"!==(null===(t=this.mediaRecorder)||void 0===t?void 0:t.state)}stopRecording(){var t;this.isActive()&&(null===(t=this.mediaRecorder)||void 0===t||t.stop(),this.timer.stop())}pauseRecording(){var t,e;this.isRecording()&&(this.isWaveformPaused=!0,null===(t=this.mediaRecorder)||void 0===t||t.requestData(),null===(e=this.mediaRecorder)||void 0===e||e.pause(),this.timer.stop(),this.lastDuration=this.duration)}resumeRecording(){var t;this.isPaused()&&(this.isWaveformPaused=!1,null===(t=this.mediaRecorder)||void 0===t||t.resume(),this.timer.start(),this.lastStartTime=performance.now(),this.emit("record-resume"))}static getAvailableAudioDevices(){return r(this,void 0,void 0,(function*(){return navigator.mediaDevices.enumerateDevices().then((t=>t.filter((t=>"audioinput"===t.kind))))}))}destroy(){this.applyOriginalOptionsIfNeeded(),super.destroy(),this.stopRecording(),this.stopMic()}applyOriginalOptionsIfNeeded(){this.wavesurfer&&this.originalOptions&&(this.wavesurfer.options.cursorWidth=this.originalOptions.cursorWidth,this.wavesurfer.options.interact=this.originalOptions.interact,delete this.originalOptions)}}},19613:(t,e,i)=>{function r(t,e,i,r){return new(i||(i=Promise))((function(n,s){function o(t){try{l(r.next(t))}catch(t){s(t)}}function a(t){try{l(r.throw(t))}catch(t){s(t)}}function l(t){var e;t.done?n(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(o,a)}l((r=r.apply(t,e||[])).next())}))}i.d(e,{A:()=>v}),"function"==typeof SuppressedError&&SuppressedError;class n{constructor(){this.listeners={}}on(t,e,i){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==i?void 0:i.once){const i=()=>{this.un(t,i),this.un(t,e)};return this.on(t,i),i}return()=>this.un(t,e)}un(t,e){var i;null===(i=this.listeners[t])||void 0===i||i.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;r<e;r++)i[r-1]=arguments[r];this.listeners[t]&&this.listeners[t].forEach((t=>t(...i)))}}const s={decode:function(t,e){return r(this,void 0,void 0,(function*(){const i=new AudioContext({sampleRate:e});return i.decodeAudioData(t).finally((()=>i.close()))}))},createBuffer:function(t,e){return"number"==typeof t[0]&&(t=[t]),function(t){const e=t[0];if(e.some((t=>t>1||t<-1))){const i=e.length;let r=0;for(let t=0;t<i;t++){const i=Math.abs(e[t]);i>r&&(r=i)}for(const e of t)for(let t=0;t<i;t++)e[t]/=r}}(t),{duration:e,length:t[0].length,sampleRate:t[0].length/e,numberOfChannels:t.length,getChannelData:e=>null==t?void 0:t[e],copyFromChannel:AudioBuffer.prototype.copyFromChannel,copyToChannel:AudioBuffer.prototype.copyToChannel}}};function o(t,e){const i=e.xmlns?document.createElementNS(e.xmlns,t):document.createElement(t);for(const[r,n]of Object.entries(e))if("children"===r)for(const[t,s]of Object.entries(e))"string"==typeof s?i.appendChild(document.createTextNode(s)):i.appendChild(o(t,s));else"style"===r?Object.assign(i.style,n):"textContent"===r?i.textContent=n:i.setAttribute(r,n.toString());return i}function a(t,e,i){const r=o(t,e||{});return null==i||i.appendChild(r),r}var l=Object.freeze({__proto__:null,createElement:a,default:a});const h={fetchBlob:function(t,e,i){return r(this,void 0,void 0,(function*(){const n=yield fetch(t,i);if(n.status>=400)throw new Error(`Failed to fetch ${t}: ${n.status} (${n.statusText})`);return function(t,e){r(this,void 0,void 0,(function*(){if(!t.body||!t.headers)return;const i=t.body.getReader(),n=Number(t.headers.get("Content-Length"))||0;let s=0;const o=t=>r(this,void 0,void 0,(function*(){s+=(null==t?void 0:t.length)||0;const i=Math.round(s/n*100);e(i)})),a=()=>r(this,void 0,void 0,(function*(){let t;try{t=yield i.read()}catch(t){return}t.done||(o(t.value),yield a())}));a()}))}(n.clone(),e),n.blob()}))}};class d extends n{constructor(t){super(),this.isExternalMedia=!1,t.media?(this.media=t.media,this.isExternalMedia=!0):this.media=document.createElement("audio"),t.mediaControls&&(this.media.controls=!0),t.autoplay&&(this.media.autoplay=!0),null!=t.playbackRate&&this.onMediaEvent("canplay",(()=>{null!=t.playbackRate&&(this.media.playbackRate=t.playbackRate)}),{once:!0})}onMediaEvent(t,e,i){return this.media.addEventListener(t,e,i),()=>this.media.removeEventListener(t,e,i)}getSrc(){return this.media.currentSrc||this.media.src||""}revokeSrc(){const t=this.getSrc();t.startsWith("blob:")&&URL.revokeObjectURL(t)}canPlayType(t){return""!==this.media.canPlayType(t)}setSrc(t,e){const i=this.getSrc();if(t&&i===t)return;this.revokeSrc();const r=e instanceof Blob&&(this.canPlayType(e.type)||!t)?URL.createObjectURL(e):t;try{this.media.src=r}catch(e){this.media.src=t}}destroy(){this.media.pause(),this.isExternalMedia||(this.media.remove(),this.revokeSrc(),this.media.src="",this.media.load())}setMediaElement(t){this.media=t}play(){return r(this,void 0,void 0,(function*(){return this.media.play()}))}pause(){this.media.pause()}isPlaying(){return!this.media.paused&&!this.media.ended}setTime(t){this.media.currentTime=t}getDuration(){return this.media.duration}getCurrentTime(){return this.media.currentTime}getVolume(){return this.media.volume}setVolume(t){this.media.volume=t}getMuted(){return this.media.muted}setMuted(t){this.media.muted=t}getPlaybackRate(){return this.media.playbackRate}isSeeking(){return this.media.seeking}setPlaybackRate(t,e){null!=e&&(this.media.preservesPitch=e),this.media.playbackRate=t}getMediaElement(){return this.media}setSinkId(t){return this.media.setSinkId(t)}}class c extends n{constructor(t,e){super(),this.timeouts=[],this.isScrollable=!1,this.audioData=null,this.resizeObserver=null,this.lastContainerWidth=0,this.isDragging=!1,this.subscriptions=[],this.subscriptions=[],this.options=t;const i=this.parentFromOptionsContainer(t.container);this.parent=i;const[r,n]=this.initHtml();i.appendChild(r),this.container=r,this.scrollContainer=n.querySelector(".scroll"),this.wrapper=n.querySelector(".wrapper"),this.canvasWrapper=n.querySelector(".canvases"),this.progressWrapper=n.querySelector(".progress"),this.cursor=n.querySelector(".cursor"),e&&n.appendChild(e),this.initEvents()}parentFromOptionsContainer(t){let e;if("string"==typeof t?e=document.querySelector(t):t instanceof HTMLElement&&(e=t),!e)throw new Error("Container not found");return e}initEvents(){const t=t=>{const e=this.wrapper.getBoundingClientRect(),i=t.clientX-e.left,r=t.clientY-e.top;return[i/e.width,r/e.height]};if(this.wrapper.addEventListener("click",(e=>{const[i,r]=t(e);this.emit("click",i,r)})),this.wrapper.addEventListener("dblclick",(e=>{const[i,r]=t(e);this.emit("dblclick",i,r)})),!0!==this.options.dragToSeek&&"object"!=typeof this.options.dragToSeek||this.initDrag(),this.scrollContainer.addEventListener("scroll",(()=>{const{scrollLeft:t,scrollWidth:e,clientWidth:i}=this.scrollContainer,r=t/e,n=(t+i)/e;this.emit("scroll",r,n,t,t+i)})),"function"==typeof ResizeObserver){const t=this.createDelay(100);this.resizeObserver=new ResizeObserver((()=>{t().then((()=>this.onContainerResize())).catch((()=>{}))})),this.resizeObserver.observe(this.scrollContainer)}}onContainerResize(){const t=this.parent.clientWidth;t===this.lastContainerWidth&&"auto"!==this.options.height||(this.lastContainerWidth=t,this.reRender())}initDrag(){this.subscriptions.push(function(t,e,i,r){let n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:3,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:100;if(!t)return()=>{};const a=matchMedia("(pointer: coarse)").matches;let l=()=>{};const h=h=>{if(h.button!==s)return;h.preventDefault(),h.stopPropagation();let d=h.clientX,c=h.clientY,u=!1;const p=Date.now(),m=r=>{if(r.preventDefault(),r.stopPropagation(),a&&Date.now()-p<o)return;const s=r.clientX,l=r.clientY,h=s-d,m=l-c;if(u||Math.abs(h)>n||Math.abs(m)>n){const r=t.getBoundingClientRect(),{left:n,top:o}=r;u||(null==i||i(d-n,c-o),u=!0),e(h,m,s-n,l-o),d=s,c=l}},v=e=>{if(u){const i=e.clientX,n=e.clientY,s=t.getBoundingClientRect(),{left:o,top:a}=s;null==r||r(i-o,n-a)}l()},f=t=>{t.relatedTarget&&t.relatedTarget!==document.documentElement||v(t)},g=t=>{u&&(t.stopPropagation(),t.preventDefault())},b=t=>{u&&t.preventDefault()};document.addEventListener("pointermove",m),document.addEventListener("pointerup",v),document.addEventListener("pointerout",f),document.addEventListener("pointercancel",f),document.addEventListener("touchmove",b,{passive:!1}),document.addEventListener("click",g,{capture:!0}),l=()=>{document.removeEventListener("pointermove",m),document.removeEventListener("pointerup",v),document.removeEventListener("pointerout",f),document.removeEventListener("pointercancel",f),document.removeEventListener("touchmove",b),setTimeout((()=>{document.removeEventListener("click",g,{capture:!0})}),10)}};return t.addEventListener("pointerdown",h),()=>{l(),t.removeEventListener("pointerdown",h)}}(this.wrapper,((t,e,i)=>{this.emit("drag",Math.max(0,Math.min(1,i/this.wrapper.getBoundingClientRect().width)))}),(t=>{this.isDragging=!0,this.emit("dragstart",Math.max(0,Math.min(1,t/this.wrapper.getBoundingClientRect().width)))}),(t=>{this.isDragging=!1,this.emit("dragend",Math.max(0,Math.min(1,t/this.wrapper.getBoundingClientRect().width)))})))}getHeight(t,e){var i;const r=(null===(i=this.audioData)||void 0===i?void 0:i.numberOfChannels)||1;if(null==t)return 128;if(!isNaN(Number(t)))return Number(t);if("auto"===t){const t=this.parent.clientHeight||128;return(null==e?void 0:e.every((t=>!t.overlay)))?t/r:t}return 128}initHtml(){const t=document.createElement("div"),e=t.attachShadow({mode:"open"});return e.innerHTML=`\n <style>\n :host {\n user-select: none;\n min-width: 1px;\n }\n :host audio {\n display: block;\n width: 100%;\n }\n :host .scroll {\n overflow-x: auto;\n overflow-y: hidden;\n width: 100%;\n position: relative;\n }\n :host .noScrollbar {\n scrollbar-color: transparent;\n scrollbar-width: none;\n }\n :host .noScrollbar::-webkit-scrollbar {\n display: none;\n -webkit-appearance: none;\n }\n :host .wrapper {\n position: relative;\n overflow: visible;\n z-index: 2;\n }\n :host .canvases {\n min-height: ${this.getHeight(this.options.height,this.options.splitChannels)}px;\n }\n :host .canvases > div {\n position: relative;\n }\n :host canvas {\n display: block;\n position: absolute;\n top: 0;\n image-rendering: pixelated;\n }\n :host .progress {\n pointer-events: none;\n position: absolute;\n z-index: 2;\n top: 0;\n left: 0;\n width: 0;\n height: 100%;\n overflow: hidden;\n }\n :host .progress > div {\n position: relative;\n }\n :host .cursor {\n pointer-events: none;\n position: absolute;\n z-index: 5;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: 2px;\n }\n </style>\n\n <div class="scroll" part="scroll">\n <div class="wrapper" part="wrapper">\n <div class="canvases" part="canvases"></div>\n <div class="progress" part="progress"></div>\n <div class="cursor" part="cursor"></div>\n </div>\n </div>\n `,[t,e]}setOptions(t){if(this.options.container!==t.container){const e=this.parentFromOptionsContainer(t.container);e.appendChild(this.container),this.parent=e}!0!==t.dragToSeek&&"object"!=typeof this.options.dragToSeek||this.initDrag(),this.options=t,this.reRender()}getWrapper(){return this.wrapper}getWidth(){return this.scrollContainer.clientWidth}getScroll(){return this.scrollContainer.scrollLeft}setScroll(t){this.scrollContainer.scrollLeft=t}setScrollPercentage(t){const{scrollWidth:e}=this.scrollContainer,i=e*t;this.setScroll(i)}destroy(){var t,e;this.subscriptions.forEach((t=>t())),this.container.remove(),null===(t=this.resizeObserver)||void 0===t||t.disconnect(),null===(e=this.unsubscribeOnScroll)||void 0===e||e.call(this)}createDelay(){let t,e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;const r=()=>{t&&clearTimeout(t),e&&e()};return this.timeouts.push(r),()=>new Promise(((n,s)=>{r(),e=s,t=setTimeout((()=>{t=void 0,e=void 0,n()}),i)}))}convertColorValues(t){if(!Array.isArray(t))return t||"";if(t.length<2)return t[0]||"";const e=document.createElement("canvas"),i=e.getContext("2d"),r=e.height*(window.devicePixelRatio||1),n=i.createLinearGradient(0,0,0,r),s=1/(t.length-1);return t.forEach(((t,e)=>{const i=e*s;n.addColorStop(i,t)})),n}getPixelRatio(){return Math.max(1,window.devicePixelRatio||1)}renderBarWaveform(t,e,i,r){const n=t[0],s=t[1]||t[0],o=n.length,{width:a,height:l}=i.canvas,h=l/2,d=this.getPixelRatio(),c=e.barWidth?e.barWidth*d:1,u=e.barGap?e.barGap*d:e.barWidth?c/2:0,p=e.barRadius||0,m=a/(c+u)/o,v=p&&"roundRect"in i?"roundRect":"rect";i.beginPath();let f=0,g=0,b=0;for(let y=0;y<=o;y++){const t=Math.round(y*m);if(t>f){const n=Math.round(g*h*r),s=n+Math.round(b*h*r)||1;let o=h-n;"top"===e.barAlign?o=0:"bottom"===e.barAlign&&(o=l-s),i[v](f*(c+u),o,c,s,p),f=t,g=0,b=0}const o=Math.abs(n[y]||0),a=Math.abs(s[y]||0);o>g&&(g=o),a>b&&(b=a)}i.fill(),i.closePath()}renderLineWaveform(t,e,i,r){const n=e=>{const n=t[e]||t[0],s=n.length,{height:o}=i.canvas,a=o/2,l=i.canvas.width/s;i.moveTo(0,a);let h=0,d=0;for(let t=0;t<=s;t++){const s=Math.round(t*l);if(s>h){const t=a+(Math.round(d*a*r)||1)*(0===e?-1:1);i.lineTo(h,t),h=s,d=0}const o=Math.abs(n[t]||0);o>d&&(d=o)}i.lineTo(h,a)};i.beginPath(),n(0),n(1),i.fill(),i.closePath()}renderWaveform(t,e,i){if(i.fillStyle=this.convertColorValues(e.waveColor),e.renderFunction)return void e.renderFunction(t,i);let r=e.barHeight||1;if(e.normalize){const e=Array.from(t[0]).reduce(((t,e)=>Math.max(t,Math.abs(e))),0);r=e?1/e:1}e.barWidth||e.barGap||e.barAlign?this.renderBarWaveform(t,e,i,r):this.renderLineWaveform(t,e,i,r)}renderSingleCanvas(t,e,i,r,n,s,o){const a=this.getPixelRatio(),l=document.createElement("canvas");l.width=Math.round(i*a),l.height=Math.round(r*a),l.style.width=`${i}px`,l.style.height=`${r}px`,l.style.left=`${Math.round(n)}px`,s.appendChild(l);const h=l.getContext("2d");if(this.renderWaveform(t,e,h),l.width>0&&l.height>0){const t=l.cloneNode(),i=t.getContext("2d");i.drawImage(l,0,0),i.globalCompositeOperation="source-in",i.fillStyle=this.convertColorValues(e.progressColor),i.fillRect(0,0,l.width,l.height),o.appendChild(t)}}renderMultiCanvas(t,e,i,r,n,s){const o=this.getPixelRatio(),{clientWidth:a}=this.scrollContainer;if(a*o>=i)return void this.renderSingleCanvas(t,e,a,r,0,n,s);const l=i/o;let h=Math.min(c.MAX_CANVAS_WIDTH,a,l),d={};if(e.barWidth||e.barGap){const t=e.barWidth||.5,i=t+(e.barGap||t/2);h%i!=0&&(h=Math.floor(h/i)*i)}const u=i=>{if(i<0||i>=p)return;if(d[i])return;d[i]=!0;const o=i*h,a=Math.min(l-o,h);if(a<=0)return;const c=t.map((t=>{const e=Math.floor(o/l*t.length),i=Math.floor((o+a)/l*t.length);return t.slice(e,i)}));this.renderSingleCanvas(c,e,a,r,o,n,s)},p=Math.ceil(l/h),m=this.scrollContainer.scrollLeft/l,v=Math.floor(m*p);u(v-1),u(v),u(v+1),p>1&&(this.unsubscribeOnScroll=this.on("scroll",(()=>{const{scrollLeft:t}=this.scrollContainer,e=Math.floor(t/l*p);Object.keys(d).length>c.MAX_NODES&&(n.innerHTML="",s.innerHTML="",d={}),u(e-1),u(e),u(e+1)})))}renderChannel(t,e,i,r){var{overlay:n}=e,s=function(t,e){var i={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(i[r]=t[r]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(r=Object.getOwnPropertySymbols(t);n<r.length;n++)e.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(t,r[n])&&(i[r[n]]=t[r[n]])}return i}(e,["overlay"]);const o=document.createElement("div"),a=this.getHeight(s.height,s.splitChannels);o.style.height=`${a}px`,n&&r>0&&(o.style.marginTop=`-${a}px`),this.canvasWrapper.style.minHeight=`${a}px`,this.canvasWrapper.appendChild(o);const l=o.cloneNode();this.progressWrapper.appendChild(l),this.renderMultiCanvas(t,s,i,a,o,l)}render(t){return r(this,void 0,void 0,(function*(){var e;this.timeouts.forEach((t=>t())),this.timeouts=[],this.canvasWrapper.innerHTML="",this.progressWrapper.innerHTML="",null!=this.options.width&&(this.scrollContainer.style.width="number"==typeof this.options.width?`${this.options.width}px`:this.options.width);const i=this.getPixelRatio(),r=this.scrollContainer.clientWidth,n=Math.ceil(t.duration*(this.options.minPxPerSec||0));this.isScrollable=n>r;const s=this.options.fillParent&&!this.isScrollable,o=(s?r:n)*i;if(this.wrapper.style.width=s?"100%":`${n}px`,this.scrollContainer.style.overflowX=this.isScrollable?"auto":"hidden",this.scrollContainer.classList.toggle("noScrollbar",!!this.options.hideScrollbar),this.cursor.style.backgroundColor=`${this.options.cursorColor||this.options.progressColor}`,this.cursor.style.width=`${this.options.cursorWidth}px`,this.audioData=t,this.emit("render"),this.options.splitChannels)for(let a=0;a<t.numberOfChannels;a++){const i=Object.assign(Object.assign({},this.options),null===(e=this.options.splitChannels)||void 0===e?void 0:e[a]);this.renderChannel([t.getChannelData(a)],i,o,a)}else{const e=[t.getChannelData(0)];t.numberOfChannels>1&&e.push(t.getChannelData(1)),this.renderChannel(e,this.options,o,0)}Promise.resolve().then((()=>this.emit("rendered")))}))}reRender(){var t;if(null===(t=this.unsubscribeOnScroll)||void 0===t||t.call(this),delete this.unsubscribeOnScroll,!this.audioData)return;const{scrollWidth:e}=this.scrollContainer,{right:i}=this.progressWrapper.getBoundingClientRect();if(this.render(this.audioData),this.isScrollable&&e!==this.scrollContainer.scrollWidth){const{right:t}=this.progressWrapper.getBoundingClientRect();let e=t-i;e*=2,e=e<0?Math.floor(e):Math.ceil(e),e/=2,this.scrollContainer.scrollLeft+=e}}zoom(t){this.options.minPxPerSec=t,this.reRender()}scrollIntoView(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const{scrollLeft:i,scrollWidth:r,clientWidth:n}=this.scrollContainer,s=t*r,o=i,a=i+n,l=n/2;if(this.isDragging){const t=30;s+t>a?this.scrollContainer.scrollLeft+=t:s-t<o&&(this.scrollContainer.scrollLeft-=t)}else{(s<o||s>a)&&(this.scrollContainer.scrollLeft=s-(this.options.autoCenter?l:0));const t=s-i-l;e&&this.options.autoCenter&&t>0&&(this.scrollContainer.scrollLeft+=Math.min(t,10))}{const t=this.scrollContainer.scrollLeft,e=t/r,i=(t+n)/r;this.emit("scroll",e,i,t,t+n)}}renderProgress(t,e){if(isNaN(t))return;const i=100*t;this.canvasWrapper.style.clipPath=`polygon(${i}% 0, 100% 0, 100% 100%, ${i}% 100%)`,this.progressWrapper.style.width=`${i}%`,this.cursor.style.left=`${i}%`,this.cursor.style.transform=`translateX(-${100===Math.round(i)?this.options.cursorWidth:0}px)`,this.isScrollable&&this.options.autoScroll&&this.scrollIntoView(t,e)}exportImage(t,e,i){return r(this,void 0,void 0,(function*(){const r=this.canvasWrapper.querySelectorAll("canvas");if(!r.length)throw new Error("No waveform data");if("dataURL"===i){const i=Array.from(r).map((i=>i.toDataURL(t,e)));return Promise.resolve(i)}return Promise.all(Array.from(r).map((i=>new Promise(((r,n)=>{i.toBlob((t=>{t?r(t):n(new Error("Could not export image"))}),t,e)})))))}))}}c.MAX_CANVAS_WIDTH=8e3,c.MAX_NODES=10;class u extends n{constructor(){super(...arguments),this.unsubscribe=()=>{}}start(){this.unsubscribe=this.on("tick",(()=>{requestAnimationFrame((()=>{this.emit("tick")}))})),this.emit("tick")}stop(){this.unsubscribe()}destroy(){this.unsubscribe()}}class p extends n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new AudioContext;super(),this.bufferNode=null,this.playStartTime=0,this.playedDuration=0,this._muted=!1,this._playbackRate=1,this._duration=void 0,this.buffer=null,this.currentSrc="",this.paused=!0,this.crossOrigin=null,this.seeking=!1,this.autoplay=!1,this.addEventListener=this.on,this.removeEventListener=this.un,this.audioContext=t,this.gainNode=this.audioContext.createGain(),this.gainNode.connect(this.audioContext.destination)}load(){return r(this,void 0,void 0,(function*(){}))}get src(){return this.currentSrc}set src(t){if(this.currentSrc=t,this._duration=void 0,!t)return this.buffer=null,void this.emit("emptied");fetch(t).then((e=>{if(e.status>=400)throw new Error(`Failed to fetch ${t}: ${e.status} (${e.statusText})`);return e.arrayBuffer()})).then((e=>this.currentSrc!==t?null:this.audioContext.decodeAudioData(e))).then((e=>{this.currentSrc===t&&(this.buffer=e,this.emit("loadedmetadata"),this.emit("canplay"),this.autoplay&&this.play())}))}_play(){var t;if(!this.paused)return;this.paused=!1,null===(t=this.bufferNode)||void 0===t||t.disconnect(),this.bufferNode=this.audioContext.createBufferSource(),this.buffer&&(this.bufferNode.buffer=this.buffer),this.bufferNode.playbackRate.value=this._playbackRate,this.bufferNode.connect(this.gainNode);let e=this.playedDuration*this._playbackRate;e>=this.duration&&(e=0,this.playedDuration=0),this.bufferNode.start(this.audioContext.currentTime,e),this.playStartTime=this.audioContext.currentTime,this.bufferNode.onended=()=>{this.currentTime>=this.duration&&(this.pause(),this.emit("ended"))}}_pause(){var t;this.paused=!0,null===(t=this.bufferNode)||void 0===t||t.stop(),this.playedDuration+=this.audioContext.currentTime-this.playStartTime}play(){return r(this,void 0,void 0,(function*(){this.paused&&(this._play(),this.emit("play"))}))}pause(){this.paused||(this._pause(),this.emit("pause"))}stopAt(t){var e,i;const r=t-this.currentTime;null===(e=this.bufferNode)||void 0===e||e.stop(this.audioContext.currentTime+r),null===(i=this.bufferNode)||void 0===i||i.addEventListener("ended",(()=>{this.bufferNode=null,this.pause()}),{once:!0})}setSinkId(t){return r(this,void 0,void 0,(function*(){return this.audioContext.setSinkId(t)}))}get playbackRate(){return this._playbackRate}set playbackRate(t){this._playbackRate=t,this.bufferNode&&(this.bufferNode.playbackRate.value=t)}get currentTime(){return(this.paused?this.playedDuration:this.playedDuration+(this.audioContext.currentTime-this.playStartTime))*this._playbackRate}set currentTime(t){const e=!this.paused;e&&this._pause(),this.playedDuration=t/this._playbackRate,e&&this._play(),this.emit("seeking"),this.emit("timeupdate")}get duration(){var t,e;return null!==(t=this._duration)&&void 0!==t?t:(null===(e=this.buffer)||void 0===e?void 0:e.duration)||0}set duration(t){this._duration=t}get volume(){return this.gainNode.gain.value}set volume(t){this.gainNode.gain.value=t,this.emit("volumechange")}get muted(){return this._muted}set muted(t){this._muted!==t&&(this._muted=t,this._muted?this.gainNode.disconnect():this.gainNode.connect(this.audioContext.destination))}canPlayType(t){return/^(audio|video)\//.test(t)}getGainNode(){return this.gainNode}getChannelData(){const t=[];if(!this.buffer)return t;const e=this.buffer.numberOfChannels;for(let i=0;i<e;i++)t.push(this.buffer.getChannelData(i));return t}}const m={waveColor:"#999",progressColor:"#555",cursorWidth:1,minPxPerSec:0,fillParent:!0,interact:!0,dragToSeek:!1,autoScroll:!0,autoCenter:!0,sampleRate:8e3};class v extends d{static create(t){return new v(t)}constructor(t){const e=t.media||("WebAudio"===t.backend?new p:void 0);super({media:e,mediaControls:t.mediaControls,autoplay:t.autoplay,playbackRate:t.audioRate}),this.plugins=[],this.decodedData=null,this.subscriptions=[],this.mediaSubscriptions=[],this.abortController=null,this.options=Object.assign({},m,t),this.timer=new u;const i=e?void 0:this.getMediaElement();this.renderer=new c(this.options,i),this.initPlayerEvents(),this.initRendererEvents(),this.initTimerEvents(),this.initPlugins();const r=this.options.url||this.getSrc()||"";Promise.resolve().then((()=>{this.emit("init");const{peaks:t,duration:e}=this.options;(r||t&&e)&&this.load(r,t,e).catch((()=>null))}))}updateProgress(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.getCurrentTime();return this.renderer.renderProgress(t/this.getDuration(),this.isPlaying()),t}initTimerEvents(){this.subscriptions.push(this.timer.on("tick",(()=>{if(!this.isSeeking()){const t=this.updateProgress();this.emit("timeupdate",t),this.emit("audioprocess",t)}})))}initPlayerEvents(){this.isPlaying()&&(this.emit("play"),this.timer.start()),this.mediaSubscriptions.push(this.onMediaEvent("timeupdate",(()=>{const t=this.updateProgress();this.emit("timeupdate",t)})),this.onMediaEvent("play",(()=>{this.emit("play"),this.timer.start()})),this.onMediaEvent("pause",(()=>{this.emit("pause"),this.timer.stop()})),this.onMediaEvent("emptied",(()=>{this.timer.stop()})),this.onMediaEvent("ended",(()=>{this.emit("finish")})),this.onMediaEvent("seeking",(()=>{this.emit("seeking",this.getCurrentTime())})),this.onMediaEvent("error",(t=>{this.emit("error",t.error)})))}initRendererEvents(){this.subscriptions.push(this.renderer.on("click",((t,e)=>{this.options.interact&&(this.seekTo(t),this.emit("interaction",t*this.getDuration()),this.emit("click",t,e))})),this.renderer.on("dblclick",((t,e)=>{this.emit("dblclick",t,e)})),this.renderer.on("scroll",((t,e,i,r)=>{const n=this.getDuration();this.emit("scroll",t*n,e*n,i,r)})),this.renderer.on("render",(()=>{this.emit("redraw")})),this.renderer.on("rendered",(()=>{this.emit("redrawcomplete")})),this.renderer.on("dragstart",(t=>{this.emit("dragstart",t)})),this.renderer.on("dragend",(t=>{this.emit("dragend",t)})));{let t;this.subscriptions.push(this.renderer.on("drag",(e=>{if(!this.options.interact)return;let i;this.renderer.renderProgress(e),clearTimeout(t),this.isPlaying()?i=0:!0===this.options.dragToSeek?i=200:"object"==typeof this.options.dragToSeek&&void 0!==this.options.dragToSeek&&(i=this.options.dragToSeek.debounceTime),t=setTimeout((()=>{this.seekTo(e)}),i),this.emit("interaction",e*this.getDuration()),this.emit("drag",e)})))}}initPlugins(){var t;(null===(t=this.options.plugins)||void 0===t?void 0:t.length)&&this.options.plugins.forEach((t=>{this.registerPlugin(t)}))}unsubscribePlayerEvents(){this.mediaSubscriptions.forEach((t=>t())),this.mediaSubscriptions=[]}setOptions(t){this.options=Object.assign({},this.options,t),this.renderer.setOptions(this.options),t.audioRate&&this.setPlaybackRate(t.audioRate),null!=t.mediaControls&&(this.getMediaElement().controls=t.mediaControls)}registerPlugin(t){return t._init(this),this.plugins.push(t),this.subscriptions.push(t.once("destroy",(()=>{this.plugins=this.plugins.filter((e=>e!==t))}))),t}getWrapper(){return this.renderer.getWrapper()}getWidth(){return this.renderer.getWidth()}getScroll(){return this.renderer.getScroll()}setScroll(t){return this.renderer.setScroll(t)}setScrollTime(t){const e=t/this.getDuration();this.renderer.setScrollPercentage(e)}getActivePlugins(){return this.plugins}loadAudio(t,e,i,n){return r(this,void 0,void 0,(function*(){var r;if(this.emit("load",t),!this.options.media&&this.isPlaying()&&this.pause(),this.decodedData=null,!e&&!i){const i=this.options.fetchParams||{};window.AbortController&&!i.signal&&(this.abortController=new AbortController,i.signal=null===(r=this.abortController)||void 0===r?void 0:r.signal);const n=t=>this.emit("loading",t);e=yield h.fetchBlob(t,n,i)}this.setSrc(t,e);const o=yield new Promise((t=>{const e=n||this.getDuration();e?t(e):this.mediaSubscriptions.push(this.onMediaEvent("loadedmetadata",(()=>t(this.getDuration())),{once:!0}))}));if(!t&&!e){const t=this.getMediaElement();t instanceof p&&(t.duration=o)}if(i)this.decodedData=s.createBuffer(i,o||0);else if(e){const t=yield e.arrayBuffer();this.decodedData=yield s.decode(t,this.options.sampleRate)}this.decodedData&&(this.emit("decode",this.getDuration()),this.renderer.render(this.decodedData)),this.emit("ready",this.getDuration())}))}load(t,e,i){return r(this,void 0,void 0,(function*(){try{return yield this.loadAudio(t,void 0,e,i)}catch(r){throw this.emit("error",r),r}}))}loadBlob(t,e,i){return r(this,void 0,void 0,(function*(){try{return yield this.loadAudio("",t,e,i)}catch(r){throw this.emit("error",r),r}}))}zoom(t){if(!this.decodedData)throw new Error("No audio loaded");this.renderer.zoom(t),this.emit("zoom",t)}getDecodedData(){return this.decodedData}exportPeaks(){let{channels:t=2,maxLength:e=8e3,precision:i=1e4}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!this.decodedData)throw new Error("The audio has not been decoded yet");const r=Math.min(t,this.decodedData.numberOfChannels),n=[];for(let s=0;s<r;s++){const t=this.decodedData.getChannelData(s),r=[],o=t.length/e;for(let n=0;n<e;n++){const e=t.slice(Math.floor(n*o),Math.ceil((n+1)*o));let s=0;for(let t=0;t<e.length;t++){const i=e[t];Math.abs(i)>Math.abs(s)&&(s=i)}r.push(Math.round(s*i)/i)}n.push(r)}return n}getDuration(){let t=super.getDuration()||0;return 0!==t&&t!==1/0||!this.decodedData||(t=this.decodedData.duration),t}toggleInteraction(t){this.options.interact=t}setTime(t){super.setTime(t),this.updateProgress(t),this.emit("timeupdate",t)}seekTo(t){const e=this.getDuration()*t;this.setTime(e)}playPause(){return r(this,void 0,void 0,(function*(){return this.isPlaying()?this.pause():this.play()}))}stop(){this.pause(),this.setTime(0)}skip(t){this.setTime(this.getCurrentTime()+t)}empty(){this.load("",[[0]],.001)}setMediaElement(t){this.unsubscribePlayerEvents(),super.setMediaElement(t),this.initPlayerEvents()}exportImage(){return r(this,arguments,void 0,(function(){var t=this;let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"image/png",i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"dataURL";return function*(){return t.renderer.exportImage(e,i,r)}()}))}destroy(){var t;this.emit("destroy"),null===(t=this.abortController)||void 0===t||t.abort(),this.plugins.forEach((t=>t.destroy())),this.subscriptions.forEach((t=>t())),this.unsubscribePlayerEvents(),this.timer.destroy(),this.renderer.destroy(),super.destroy()}}v.BasePlugin=class extends n{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit("destroy"),this.subscriptions.forEach((t=>t()))}},v.dom=l}}]);