@stlite/desktop 0.91.1 → 0.92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/bin/dump_artifacts.js +1 -1
  3. package/build/assets/{ErrorOutline.esm-BLjkDUgO-BiXylF9Q.js → ErrorOutline.esm-Cq78Z69r-C4NqF_Dy.js} +1 -1
  4. package/build/assets/{FileDownload.esm-BP6Yw6Mo-BauI2spi.js → FileDownload.esm-CK4kq1fm-rUa3b6xk.js} +1 -1
  5. package/build/assets/{FileHelper-BCkX4r3T-DFMmrw88.js → FileHelper-SZ_yiD2z-B6mYMaXP.js} +1 -1
  6. package/build/assets/{FormClearHelper-Dgu5Halt-BxICjxpW.js → FormClearHelper-FCPJEFCb-8WTdS9Fc.js} +1 -1
  7. package/build/assets/{Hooks-BLb3umpI-9FUxV5o-.js → Hooks-BLb3umpI-2VYJiKlE.js} +1 -1
  8. package/build/assets/{InputInstructions-yTnPUqJo-CoOBrVL7.js → InputInstructions-C9-W08mI-ZHhoQkfd.js} +1 -1
  9. package/build/assets/{Particles-Dlshfcc8-CNq_pZlo.js → Particles-BOhWNEfk-Dwf6AovX.js} +1 -1
  10. package/build/assets/{ProgressBar-bzD0ionS-CaMxdV67.js → ProgressBar-BiR12xMF-C3tqN3I7.js} +1 -1
  11. package/build/assets/{Toolbar-Ba82LOXi-C-TMlOex.js → Toolbar-DmNTasId-CQXwCpBc.js} +1 -1
  12. package/build/assets/{base-input-DjjpNP8Y-DtsTHlXD.js → base-input-CrN3cmkk-CZot_VyG.js} +1 -1
  13. package/build/assets/{checkbox-i_07yegq-B7N8fYE1.js → checkbox-gyt_OEZr-DUZ4Njwr.js} +1 -1
  14. package/build/assets/{createSuper-Bj1hzAgo-DTBN9Cdm.js → createSuper-XjH7KYVR-huv_3l0M.js} +1 -1
  15. package/build/assets/data-grid-overlay-editor-DCBtdsKu-B2V4v_R4.js +1 -0
  16. package/build/assets/{downloader-DcCTL3Wz-szZSaHY-.js → downloader-DcCTL3Wz-DFslBafZ.js} +1 -1
  17. package/build/assets/{es6--XPcqeHG-B7r8Rb2B.js → es6--XPcqeHG-DCoiAwz4.js} +2 -2
  18. package/build/assets/{iframeResizer.contentWindow-D_iySM1B-C8GQUol2.js → iframeResizer.contentWindow-DCqlq0RN-CJu19_xt.js} +1 -1
  19. package/build/assets/{index-BB-Jchwk-Bom7C4Yg.js → index-86FKY3SR-GAsovcTH.js} +1 -1
  20. package/build/assets/{index-CATwv37T-B7vouX3Y.js → index-B1GzS8wP-BVHWU3EN.js} +1 -1
  21. package/build/assets/{index-B_WoYQrI-DzwQulx6.js → index-B4dU8RRL-QuTU7dp3.js} +1 -1
  22. package/build/assets/{index-B-TfdrsK-M9kXXCZC.js → index-B8kWnRO8-DdaQzYiC.js} +1 -1
  23. package/build/assets/{index-CSKWQlNk-CT5sDNrq.js → index-B8qxfFCx-B29C_PY3.js} +1 -1
  24. package/build/assets/{index-vYM99bZC-_qzTrUih.js → index-BDBGy17s-C8ZIrWop.js} +1 -1
  25. package/build/assets/{index-DOzur6Jw-BNtjcqTY.js → index-BHzjdNgW-BhgR3SHQ.js} +1 -1
  26. package/build/assets/{index-DUaAy90Q-XjKFsjy5.js → index-BMMzkW3e-BZqEtXz_.js} +1 -1
  27. package/build/assets/{index-EaQvJARH-BtsSVy_Q.js → index-BZG3RZnU-DmEQbf_P.js} +1 -1
  28. package/build/assets/{index-DhLLbarZ-JEJ3GjGo.js → index-BitC4Xgz-B1kdgnmM.js} +1 -1
  29. package/build/assets/{index-D3uELfdo.js → index-Bs9zibyE.js} +10 -10
  30. package/build/assets/{index-B-p8cwea-D1OIlg5n.js → index-BwEfMSwG-CvQYoItt.js} +1 -1
  31. package/build/assets/{index-X1p_3J78-Vt5ccOoW.js → index-C5hOYK-b-CDfEUvDR.js} +1 -1
  32. package/build/assets/{index-CTwTw5ms-DakzaYYn.js → index-C9u8J5la-oadhV8vp.js} +1 -1
  33. package/build/assets/{index-D0GcWpyX--juTltdu.js → index-CGDCEBHp-ighEw3vp.js} +1 -1
  34. package/build/assets/{index-CugHuPaw-BlbAJDrs.js → index-CJcifvpp-CqixlSHI.js} +1 -1
  35. package/build/assets/index-CNntS3OC-D1QLB5uC.js +198 -0
  36. package/build/assets/{index-Ct4am237-CcMxDLpd.js → index-CZIwCRD7-DBIOlrRp.js} +1 -1
  37. package/build/assets/{index-DDqIvyop-CtB9mW2T.js → index-CbyG2v0j-Bk1EJlZY.js} +1 -1
  38. package/build/assets/{index-DU9g9Sd6-Daa3488f.js → index-ChdNP8aj-ecf7J23U.js} +1 -1
  39. package/build/assets/{index-DMjPNVEr-D5adQnea.js → index-ClhODq1M-DUfGDbEi.js} +1 -1
  40. package/build/assets/{index-CvM3pTat-B8q07d1y.js → index-CrabjEa7-DFujXtro.js} +1 -1
  41. package/build/assets/{index-CAzavyuT-BhYS_U-d.js → index-D6yR1pA8-C0-kJ6Bz.js} +1 -1
  42. package/build/assets/{index-NlD3wxQH-BRnDRGJG.js → index-DE-Rg3QE-eG0zJJn8.js} +1 -1
  43. package/build/assets/{index-Bo7cn_f6-DkJNz7_c.js → index-DedW9Ks6-M0WgASrb.js} +1 -1
  44. package/build/assets/{index-BhasphER-CtCV9cV8.js → index-Dj2NFIKD-B_r24aHL.js} +1 -1
  45. package/build/assets/{index-C_q9gQa7-DDnyjQrF.js → index-Dk05MMVQ-ZROGl5dG.js} +1 -1
  46. package/build/assets/{index-kYeUTGL3-OTlUcjkG.js → index-DmuMAiWB-BGkOpKfb.js} +1 -1
  47. package/build/assets/{index-D5JbiLwX-CJBgVo_3.js → index-DtqQ0QT_-CymByJbd.js} +1 -1
  48. package/build/assets/{index-p-pTZlQx-8zFcur2d.js → index-Dvp-SyXX-qvRtm5BZ.js} +1 -1
  49. package/build/assets/{index-B3KILbqX-BzOz8wK5.js → index-Dx_Ep62U-DaqDcI-n.js} +1 -1
  50. package/build/assets/{index-BxHa0gYF-QN3i1uRA.js → index-IdwmhHqO-gZocvOjV.js} +1 -1
  51. package/build/assets/{index-Fts1z9_x-20UUj5MC.js → index-Q6g9NCof-Cpxw6WZY.js} +1 -1
  52. package/build/assets/{index-0Kn1AVK2-CFHLqZQv.js → index-WybFjBpB-BX8U2u7x.js} +1 -1
  53. package/build/assets/{index-GJmmE3rK-9unNgOON.js → index-jhfsAAJw-CHbJB1wk.js} +1 -1
  54. package/build/assets/{index-DmB3SAP2-X6jwpSIv.js → index-tZy2wPj--B6SS_c-g.js} +1 -1
  55. package/build/assets/{index-BPtHoAnG-Bw2wANqW.js → index-wXdUq_7J--4XuNFfI.js} +1 -1
  56. package/build/assets/{inherits-Rx5YJbse-DVYurFFp.js → inherits-CHhCwN_k-BN2PGj6j.js} +1 -1
  57. package/build/assets/{input-BDVeiWWL-DMiIFeVV.js → input-DjbrZONF-D-7fuXI2.js} +1 -1
  58. package/build/assets/{memory-B3L1Fctl-Bm8c-YGK.js → memory-B3L1Fctl-DdOaGvHF.js} +1 -1
  59. package/build/assets/{number-overlay-editor-BGJ9OD_Z-DIBxtO2v.js → number-overlay-editor-jbR6fFWZ-C4ZPxc4R.js} +1 -1
  60. package/build/assets/{sandbox-ChAzL-i--D3ngLCsZ.js → sandbox-ChAzL-i--D-scXFSF.js} +1 -1
  61. package/build/assets/{slicedToArray-DCtO1hP1-DNgLFFIn.js → slicedToArray-Bh3FRcm_-BQG060Uv.js} +1 -1
  62. package/build/assets/{timepicker-BTEFSiul-BiCu9n-C.js → timepicker-Zb-gfcls-BvLvhDNx.js} +1 -1
  63. package/build/assets/{uniqueId-DFKpdKNq-BgvPpMK3.js → uniqueId-zIZf20F6-D11mfTaK.js} +1 -1
  64. package/build/assets/{useBasicWidgetState-DqA4I-I_-DtgK63iS.js → useBasicWidgetState-BrKZEJpK-CxwkzeKG.js} +1 -1
  65. package/build/assets/{useTextInputAutoExpand-Di5cdshf-IDsnD2RC.js → useTextInputAutoExpand-NGyMMcIL-u7iGmO95.js} +1 -1
  66. package/build/assets/{useUpdateUiValue-09I2_X1f-DW6jbCsf.js → useUpdateUiValue-BHPP0ppl-jFtPQcBG.js} +1 -1
  67. package/build/assets/{withFullScreenWrapper-WW0e_nhm-CAjrnrPK.js → withFullScreenWrapper-66pmUMIV-CT4beZ0m.js} +1 -1
  68. package/build/assets/worker-B65uO5d3-CuVvmm9s.js +106 -0
  69. package/build/electron/worker.js +9 -9
  70. package/build/index.html +1 -1
  71. package/package.json +12 -11
  72. package/wheels/stlite_lib-0.1.0-py3-none-any.whl +0 -0
  73. package/wheels/streamlit-1.50.0-cp313-none-any.whl +0 -0
  74. package/build/assets/data-grid-overlay-editor-BiH9JogL-SwK5dD6O.js +0 -1
  75. package/build/assets/index-GLEJ4uEg-Df22L041.js +0 -188
  76. package/build/assets/worker-BOuMG9lT-DqkGm1hg.js +0 -106
@@ -1 +1 @@
1
- import{r as n,u as x,a as y,j as m,c as f,l as A}from"./index-D3uELfdo.js";const h=f("div",{target:"exyuj7n1"})(()=>({lineHeight:0}),""),L=f("audio",{target:"exyuj7n0"})(({theme:r})=>({width:"100%",height:r.sizes.minElementHeight,margin:0,padding:0}),""),j=A.getLogger("Audio");function S({element:r,endpoints:d,elementMgr:i}){const s=n.useRef(null),{startTime:o,endTime:u,loop:a,autoplay:g}=r,p=n.useMemo(()=>{if(!r.id)return!0;const e=i.getElementState(r.id,"preventAutoplay");return e||i.setElementState(r.id,"preventAutoplay",!0),e??!1},[r.id,i]);n.useEffect(()=>{s.current&&(s.current.currentTime=o)},[o]),n.useEffect(()=>{const e=s.current,t=()=>{e&&(e.currentTime=r.startTime)};return e&&e.addEventListener("loadedmetadata",t),()=>{e&&e.removeEventListener("loadedmetadata",t)}},[r]),n.useEffect(()=>{const e=s.current;if(!e)return;let t=!1;const l=()=>{u>0&&e.currentTime>=u&&(a?(e.currentTime=o||0,e.play()):t||(t=!0,e.pause()))};return u>0&&e.addEventListener("timeupdate",l),()=>{e&&u>0&&e.removeEventListener("timeupdate",l)}},[u,a,o]),n.useEffect(()=>{const e=s.current;if(!e)return;const t=()=>{a&&(e.currentTime=o||0,e.play())};return e.addEventListener("ended",t),()=>{e&&e.removeEventListener("ended",t)}},[a,o]);const c=x(r.url),E=y(c),v=d.buildMediaURL(c),T=e=>{const t=e.currentTarget.src;j.error(`Client Error: Audio source error - ${t}`),d.sendClientErrorToHost("Audio","Audio source failed to load","onerror triggered",t)};return m.jsx(h,{children:m.jsx(L,{className:"stAudio","data-testid":"stAudio",ref:s,controls:!0,autoPlay:g&&!p,src:v,onError:T,crossOrigin:E})})}const H=n.memo(S);export{H as default};
1
+ import{r as n,u as x,a as y,j as m,c as f,l as A}from"./index-Bs9zibyE.js";const h=f("div",{target:"exyuj7n1"})(()=>({lineHeight:0}),""),L=f("audio",{target:"exyuj7n0"})(({theme:r})=>({width:"100%",height:r.sizes.minElementHeight,margin:0,padding:0}),""),j=A.getLogger("Audio");function S({element:r,endpoints:d,elementMgr:i}){const s=n.useRef(null),{startTime:o,endTime:u,loop:a,autoplay:g}=r,p=n.useMemo(()=>{if(!r.id)return!0;const e=i.getElementState(r.id,"preventAutoplay");return e||i.setElementState(r.id,"preventAutoplay",!0),e??!1},[r.id,i]);n.useEffect(()=>{s.current&&(s.current.currentTime=o)},[o]),n.useEffect(()=>{const e=s.current,t=()=>{e&&(e.currentTime=r.startTime)};return e&&e.addEventListener("loadedmetadata",t),()=>{e&&e.removeEventListener("loadedmetadata",t)}},[r]),n.useEffect(()=>{const e=s.current;if(!e)return;let t=!1;const l=()=>{u>0&&e.currentTime>=u&&(a?(e.currentTime=o||0,e.play()):t||(t=!0,e.pause()))};return u>0&&e.addEventListener("timeupdate",l),()=>{e&&u>0&&e.removeEventListener("timeupdate",l)}},[u,a,o]),n.useEffect(()=>{const e=s.current;if(!e)return;const t=()=>{a&&(e.currentTime=o||0,e.play())};return e.addEventListener("ended",t),()=>{e&&e.removeEventListener("ended",t)}},[a,o]);const c=x(r.url),E=y(c),v=d.buildMediaURL(c),T=e=>{const t=e.currentTarget.src;j.error(`Client Error: Audio source error - ${t}`),d.sendClientErrorToHost("Audio","Audio source failed to load","onerror triggered",t)};return m.jsx(h,{children:m.jsx(L,{className:"stAudio","data-testid":"stAudio",ref:s,controls:!0,autoPlay:g&&!p,src:v,onError:T,crossOrigin:E})})}const H=n.memo(S);export{H as default};
@@ -1 +1 @@
1
- import{r as a,x as r,j as t,c as i,af as c,ag as d,v as l}from"./index-D3uELfdo.js";const m=i("iframe",{target:"e1u6k47s0"})(({theme:e,disableScrolling:n})=>({width:"100%",height:"100%",colorScheme:"normal",border:"none",padding:e.spacing.none,margin:e.spacing.none,overflow:n?"hidden":void 0}),"");function o(e){return l(e)||e===""?void 0:e}function g({element:e}){const n=o(e.src),s=r(n)?void 0:o(e.srcdoc);return t.jsx(m,{className:"stIFrame","data-testid":"stIFrame",allow:d,disableScrolling:!e.scrolling,src:n,srcDoc:s,scrolling:e.scrolling?"auto":"no",sandbox:c,title:"st.iframe",tabIndex:e.tabIndex??void 0})}const f=a.memo(g);export{f as default};
1
+ import{r as a,x as r,j as t,c as i,af as c,ag as d,v as l}from"./index-Bs9zibyE.js";const m=i("iframe",{target:"e1u6k47s0"})(({theme:e,disableScrolling:n})=>({width:"100%",height:"100%",colorScheme:"normal",border:"none",padding:e.spacing.none,margin:e.spacing.none,overflow:n?"hidden":void 0}),"");function o(e){return l(e)||e===""?void 0:e}function g({element:e}){const n=o(e.src),s=r(n)?void 0:o(e.srcdoc);return t.jsx(m,{className:"stIFrame","data-testid":"stIFrame",allow:d,disableScrolling:!e.scrolling,src:n,srcDoc:s,scrolling:e.scrolling?"auto":"no",sandbox:c,title:"st.iframe",tabIndex:e.tabIndex??void 0})}const f=a.memo(g);export{f as default};
@@ -1 +1 @@
1
- import{r as a,e as X,f as q,s as P,h as G,j as O,G as K,S as Q,i as Y,m as Z,n as ee,o as te,t as ne,l as J,E as B,_ as W,p as j,q as re,v as M,w as se,x as A,y as F,D as ae,z as ie,A as I,B as L,C as oe}from"./index-D3uELfdo.js";import{v as ce,d as le}from"./withFullScreenWrapper-WW0e_nhm-CAjrnrPK.js";import{X as k,R as H,y as ue}from"./Toolbar-Ba82LOXi-C-TMlOex.js";import{s as fe}from"./index-GLEJ4uEg-Df22L041.js";import{m as de}from"./FormClearHelper-Dgu5Halt-BxICjxpW.js";import"./sprintf-D5E86llw-6tzWM3a-.js";import"./checkbox-i_07yegq-B7N8fYE1.js";import"./createDownloadLinkElement-CbRjLJ8e-NbV49OP9.js";import"./slicedToArray-DCtO1hP1-DNgLFFIn.js";import"./inherits-Rx5YJbse-DVYurFFp.js";import"./createSuper-Bj1hzAgo-DTBN9Cdm.js";import"./FileDownload.esm-BP6Yw6Mo-BauI2spi.js";var _=a.forwardRef(function(n,t){var s={fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"};return a.createElement(B,W({iconAttrs:s,iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},n,{ref:t}),a.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),a.createElement("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14zM7 10h2v7H7zm4-3h2v10h-2zm4 6h2v4h-2z"}))});_.displayName="InsertChart";var U=a.forwardRef(function(n,t){var s={fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"};return a.createElement(B,W({iconAttrs:s,iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},n,{ref:t}),a.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),a.createElement("path",{d:"M20 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h15c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 2v3H5V5h15zm-5 14h-5v-9h5v9zM5 10h3v9H5v-9zm12 9v-9h3v9h-3z"}))});U.displayName="TableChart";const me=20;function he(n){"params"in n&&"encoding"in n&&n.params.forEach(t=>{"select"in t&&(["interval","point"].includes(t.select)&&(t.select={type:t.select}),"type"in t.select&&t.select.type==="point"&&!("encodings"in t.select)&&M(t.select.encodings)&&(t.select.encodings=Object.keys(n.encoding)))})}const ge=(n,t,s,r,u,c,l,g)=>{const e=JSON.parse(n);if(r==="streamlit"?e.config=j(e.config,c):e.usermeta?.embedOptions?.theme==="streamlit"?(e.config=j(e.config,c),e.usermeta.embedOptions.theme=void 0):e.config=re(e.config,c),e.title&&(typeof e.title=="string"&&(e.title={text:e.title}),e.title.limit=e.title.limit??Math.max(l-40,0)),s&&(e.height=g),t&&(e.width=l,"vconcat"in e&&e.vconcat.forEach(d=>{d.width=l})),e.padding||(e.padding={}),M(e.padding.bottom)&&(e.padding.bottom=me),e.datasets)throw new Error("Datasets should not be passed as part of the spec");return u.length>0&&he(e),e},pe=(n,t,s,r,u)=>{const c=Z(),{id:l,formId:g,spec:e,data:d,datasets:i,vegaLiteTheme:f,selectionMode:o}=n,p=a.useMemo(()=>o,[JSON.stringify(o)]),v=a.useMemo(()=>ge(e,r,u,f,p,c,t,s),[e,r,u,f,p,c,t,s]);return{id:l,formId:g,vegaLiteTheme:f,spec:v,selectionMode:p,data:d,datasets:i,useContainerWidth:r}},we={DATAFRAME_INDEX:"(index)"};function ye(n){return!n||n.dimensions.numDataRows===0?null:D(n)}function ve(n){const t=T(n);if(M(t))return null;const s={};for(const[r,u]of Object.entries(t))s[r]=D(u);return s}function T(n){if(n?.length===0)return null;const t={};return n.forEach(s=>{if(!s)return;const r=s.hasName?s.name:null;t[r]=s.data}),t}function D(n,t=0){if(n.dimensions.numDataRows===0)return[];const s=[],{numDataRows:r,numDataColumns:u,numIndexColumns:c}=n.dimensions,l=n.columnTypes[0]??void 0,g=l&&l.type===ae.INDEX&&(ie(l)||I(l)||L(l));for(let e=t;e<r;e++){const d={};if(g){const{content:i}=n.getCell(e,0);d[we.DATAFRAME_INDEX]=typeof i=="bigint"?Number(i):i}for(let i=0;i<u;i++){const f=i+c,{content:o,contentType:p}=n.getCell(e,f);if((o instanceof Date||typeof o=="number"&&Number.isFinite(o))&&(I(p)||L(p))&&!oe(p)){const v=new Date(o).getTimezoneOffset()*60*1e3;d[n.columnNames[0][f]]=o.valueOf()+v}else d[n.columnNames[0][f]]=typeof o=="bigint"?Number(o):o}s.push(d)}return s}const be=150,Ce=J.getLogger("useVegaLiteSelections"),Ee=(n,t,s)=>{const{id:r,formId:u,selectionMode:c}=n,l=a.useCallback(e=>{c.forEach(i=>{e.addSignalListener(i,se(be,(f,o)=>{const p=e.getState({data:(w,y)=>c.some(E=>`${E}_store`===w),recurse:!1});A(p)&&t.setElementState(r,"viewState",p);let v=o;"vlPoint"in o&&"or"in o.vlPoint&&(v=o.vlPoint.or);const z={id:r,formId:u},h=JSON.parse(t.getStringValue(z)||"{}"),m={selection:{...h?.selection||{},[f]:v||{}}};F(h,m)||t.setStringValue(z,JSON.stringify(m),{fromUi:!0},s)}))});const d=t.getElementState(r,"viewState");if(A(d))try{return e.setState(d)}catch(i){Ce.warn("Failed to restore view state",i)}return e},[r,c,t,u,s]),g=a.useCallback(()=>{const e={selection:{}};c.forEach(o=>{e.selection[o]={}});const d={id:r,formId:u},i=t.getStringValue(d),f=i?JSON.parse(i):e;F(f,e)||t.setStringValue(d,JSON.stringify(e),{fromUi:!0},s)},[r,u,s,c,t]);return{maybeConfigureSelections:l,onFormCleared:g}},$="source",Se=J.getLogger("useVegaEmbed");function Ve(n,t,s){const r=a.useRef(null),u=a.useRef(null),c=a.useRef($),l=a.useRef(null),g=a.useRef([]),{maybeConfigureSelections:e,onFormCleared:d}=Ee(n,t,s);de({widgetMgr:t,element:n,onFormCleared:d});const{data:i,datasets:f}=n;a.useEffect(()=>{r.current===null&&(l.current=i,g.current=f)},[i,f]);const o=a.useCallback(()=>{u.current&&u.current(),u.current=null,r.current=null},[]),p=a.useCallback(async(h,m)=>{if(h.current===null)throw new Error("Element missing.");o();const w={ast:!0,expr:te,tooltip:{disableDefaultStyle:!0},defaultStyle:!1,forceActionsMenu:!0},{vgSpec:y,view:E,finalize:x}=await ee(h.current,m,w);r.current=e(E),u.current=x;const b=ve(g.current),S=b?Object.keys(b):[];if(S.length===1){const[C]=S;c.current=C}else S.length===0&&y.data&&(c.current=$);const V=ye(l.current);if(V&&r.current.insert(c.current,V),b)for(const[C,N]of Object.entries(b))r.current.insert(C,N);return await r.current.runAsync(),await r.current.resize().runAsync(),r.current},[o,e]),v=a.useCallback((h,m,w,y)=>{if(!y||y.dimensions.numDataRows===0){try{h.remove(m,ne)}finally{}return}if(!w||w.dimensions.numDataRows===0){h.insert(m,D(y));return}y.hash!==w.hash&&(h.data(m,D(y)),Se.info(`Had to clear the ${m} dataset before inserting data through Vega view.`))},[]),z=a.useCallback(async(h,m)=>{if(r.current===null)return null;const w=l.current,y=g.current;(w||h)&&v(r.current,c.current,w,h);const E=T(y)??{},x=T(m)??{};for(const[b,S]of Object.entries(x)){const V=b||c.current,C=E[V];v(r.current,V,C,S)}for(const b of Object.keys(E))!Object.hasOwn(x,b)&&b!==c.current&&v(r.current,b,null,null);return await r.current?.resize().runAsync(),l.current=h,g.current=m,r.current},[v]);return{createView:p,updateView:z,finalizeView:o}}function xe(n){try{const t=typeof n=="string"?JSON.parse(n):n;return!!(t.facet||t.encoding?.row||t.encoding?.column||t.encoding?.facet)}catch{return!1}}const Ne=({disableFullscreenMode:n,element:t,fragmentId:s,widgetMgr:r,widthConfig:u,heightConfig:c})=>{const[l,g]=a.useState(!1),[e,d]=a.useState(!1),{expanded:i,height:f,width:o,expand:p,collapse:v}=X(le),{width:z,height:h,elementRef:m}=q([l],0),w=P(u)||t.useContainerWidth,y=G(c),E=xe(t.spec),x=pe(t,E?o??0:z,(i?f:h)??0,i?!0:w,i?!0:y),{createView:b,updateView:S,finalizeView:V}=Ve(x,r,s),{data:C,datasets:N,spec:R}=x;return a.useLayoutEffect(()=>(m.current!==null&&b(m,R),V),[b,V,R,o,f,l,m]),a.useEffect(()=>{S(C,N)},[C,N,S]),a.useEffect(()=>{C||N?.[0]?.data?d(!0):d(!1)},[C,N]),l?O.jsx(fe,{data:C??N[0]?.data,height:f??h??void 0,customToolbarActions:[O.jsx(k,{label:"Show chart",icon:_,onClick:()=>{g(!1)}},"show-chart")]}):O.jsxs(H,{height:y?i?f:"100%":f,useContainerWidth:i?!0:w,children:[O.jsx(ue,{target:H,isFullScreen:i,onExpand:p,onCollapse:v,disableFullscreenMode:n,children:e&&O.jsx(k,{label:"Show data",icon:U,onClick:()=>{g(!0)}})}),O.jsx(K,{styles:Q}),O.jsx(Y,{"data-testid":"stVegaLiteChart",className:"stVegaLiteChart",useContainerWidth:w,useContainerHeight:y,ref:m})]})},Oe=ce(Ne),$e=a.memo(Oe);export{Q as StyledVegaLiteChartTooltips,j as applyStreamlitTheme,$e as default};
1
+ import{r as a,e as X,f as q,s as P,h as G,j as O,G as K,S as Q,i as Y,m as Z,n as ee,o as te,t as ne,l as J,E as B,_ as W,p as j,q as re,v as M,w as se,x as A,y as F,D as ae,z as ie,A as I,B as L,C as oe}from"./index-Bs9zibyE.js";import{v as ce,d as le}from"./withFullScreenWrapper-66pmUMIV-CT4beZ0m.js";import{X as k,R as H,y as ue}from"./Toolbar-DmNTasId-CQXwCpBc.js";import{T as fe}from"./index-CNntS3OC-D1QLB5uC.js";import{m as de}from"./FormClearHelper-FCPJEFCb-8WTdS9Fc.js";import"./sprintf-D5E86llw-6tzWM3a-.js";import"./checkbox-gyt_OEZr-DUZ4Njwr.js";import"./createDownloadLinkElement-CbRjLJ8e-NbV49OP9.js";import"./slicedToArray-Bh3FRcm_-BQG060Uv.js";import"./inherits-CHhCwN_k-BN2PGj6j.js";import"./createSuper-XjH7KYVR-huv_3l0M.js";import"./FileDownload.esm-CK4kq1fm-rUa3b6xk.js";var _=a.forwardRef(function(n,t){var s={fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"};return a.createElement(B,W({iconAttrs:s,iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},n,{ref:t}),a.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),a.createElement("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14zM7 10h2v7H7zm4-3h2v10h-2zm4 6h2v4h-2z"}))});_.displayName="InsertChart";var U=a.forwardRef(function(n,t){var s={fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"};return a.createElement(B,W({iconAttrs:s,iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},n,{ref:t}),a.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),a.createElement("path",{d:"M20 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h15c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 2v3H5V5h15zm-5 14h-5v-9h5v9zM5 10h3v9H5v-9zm12 9v-9h3v9h-3z"}))});U.displayName="TableChart";const me=20;function he(n){"params"in n&&"encoding"in n&&n.params.forEach(t=>{"select"in t&&(["interval","point"].includes(t.select)&&(t.select={type:t.select}),"type"in t.select&&t.select.type==="point"&&!("encodings"in t.select)&&M(t.select.encodings)&&(t.select.encodings=Object.keys(n.encoding)))})}const ge=(n,t,s,r,u,c,l,g)=>{const e=JSON.parse(n);if(r==="streamlit"?e.config=j(e.config,c):e.usermeta?.embedOptions?.theme==="streamlit"?(e.config=j(e.config,c),e.usermeta.embedOptions.theme=void 0):e.config=re(e.config,c),e.title&&(typeof e.title=="string"&&(e.title={text:e.title}),e.title.limit=e.title.limit??Math.max(l-40,0)),s&&(e.height=g),t&&(e.width=l,"vconcat"in e&&e.vconcat.forEach(d=>{d.width=l})),e.padding||(e.padding={}),M(e.padding.bottom)&&(e.padding.bottom=me),e.datasets)throw new Error("Datasets should not be passed as part of the spec");return u.length>0&&he(e),e},pe=(n,t,s,r,u)=>{const c=Z(),{id:l,formId:g,spec:e,data:d,datasets:i,vegaLiteTheme:f,selectionMode:o}=n,p=a.useMemo(()=>o,[JSON.stringify(o)]),v=a.useMemo(()=>ge(e,r,u,f,p,c,t,s),[e,r,u,f,p,c,t,s]);return{id:l,formId:g,vegaLiteTheme:f,spec:v,selectionMode:p,data:d,datasets:i,useContainerWidth:r}},we={DATAFRAME_INDEX:"(index)"};function ye(n){return!n||n.dimensions.numDataRows===0?null:z(n)}function ve(n){const t=D(n);if(M(t))return null;const s={};for(const[r,u]of Object.entries(t))s[r]=z(u);return s}function D(n){if(n?.length===0)return null;const t={};return n.forEach(s=>{if(!s)return;const r=s.hasName?s.name:null;t[r]=s.data}),t}function z(n,t=0){if(n.dimensions.numDataRows===0)return[];const s=[],{numDataRows:r,numDataColumns:u,numIndexColumns:c}=n.dimensions,l=n.columnTypes[0]??void 0,g=l&&l.type===ae.INDEX&&(ie(l)||I(l)||L(l));for(let e=t;e<r;e++){const d={};if(g){const{content:i}=n.getCell(e,0);d[we.DATAFRAME_INDEX]=typeof i=="bigint"?Number(i):i}for(let i=0;i<u;i++){const f=i+c,{content:o,contentType:p}=n.getCell(e,f);if((o instanceof Date||typeof o=="number"&&Number.isFinite(o))&&(I(p)||L(p))&&!oe(p)){const v=new Date(o).getTimezoneOffset()*60*1e3;d[n.columnNames[0][f]]=o.valueOf()+v}else d[n.columnNames[0][f]]=typeof o=="bigint"?Number(o):o}s.push(d)}return s}const be=150,Ce=J.getLogger("useVegaLiteSelections"),Ee=(n,t,s)=>{const{id:r,formId:u,selectionMode:c}=n,l=a.useCallback(e=>{c.forEach(i=>{e.addSignalListener(i,se(be,(f,o)=>{const p=e.getState({data:(w,y)=>c.some(E=>`${E}_store`===w),recurse:!1});A(p)&&t.setElementState(r,"viewState",p);let v=o;"vlPoint"in o&&"or"in o.vlPoint&&(v=o.vlPoint.or);const T={id:r,formId:u},h=JSON.parse(t.getStringValue(T)||"{}"),m={selection:{...h?.selection||{},[f]:v||{}}};F(h,m)||t.setStringValue(T,JSON.stringify(m),{fromUi:!0},s)}))});const d=t.getElementState(r,"viewState");if(A(d))try{return e.setState(d)}catch(i){Ce.warn("Failed to restore view state",i)}return e},[r,c,t,u,s]),g=a.useCallback(()=>{const e={selection:{}};c.forEach(o=>{e.selection[o]={}});const d={id:r,formId:u},i=t.getStringValue(d),f=i?JSON.parse(i):e;F(f,e)||t.setStringValue(d,JSON.stringify(e),{fromUi:!0},s)},[r,u,s,c,t]);return{maybeConfigureSelections:l,onFormCleared:g}},$="source",Se=J.getLogger("useVegaEmbed");function Ve(n,t,s){const r=a.useRef(null),u=a.useRef(null),c=a.useRef($),l=a.useRef(null),g=a.useRef([]),{maybeConfigureSelections:e,onFormCleared:d}=Ee(n,t,s);de({widgetMgr:t,element:n,onFormCleared:d});const{data:i,datasets:f}=n;a.useEffect(()=>{r.current===null&&(l.current=i,g.current=f)},[i,f]);const o=a.useCallback(()=>{u.current&&u.current(),u.current=null,r.current=null},[]),p=a.useCallback(async(h,m)=>{if(h.current===null)throw new Error("Element missing.");o();const w={ast:!0,expr:te,tooltip:{disableDefaultStyle:!0},defaultStyle:!1,forceActionsMenu:!0},{vgSpec:y,view:E,finalize:x}=await ee(h.current,m,w);r.current=e(E),u.current=x;const b=ve(g.current),S=b?Object.keys(b):[];if(S.length===1){const[C]=S;c.current=C}else S.length===0&&y.data&&(c.current=$);const V=ye(l.current);if(V&&r.current.insert(c.current,V),b)for(const[C,N]of Object.entries(b))r.current.insert(C,N);return await r.current.runAsync(),await r.current.resize().runAsync(),r.current},[o,e]),v=a.useCallback((h,m,w,y)=>{if(!y||y.dimensions.numDataRows===0){try{h.remove(m,ne)}finally{}return}if(!w||w.dimensions.numDataRows===0){h.insert(m,z(y));return}y.hash!==w.hash&&(h.data(m,z(y)),Se.info(`Had to clear the ${m} dataset before inserting data through Vega view.`))},[]),T=a.useCallback(async(h,m)=>{if(r.current===null)return null;const w=l.current,y=g.current;(w||h)&&v(r.current,c.current,w,h);const E=D(y)??{},x=D(m)??{};for(const[b,S]of Object.entries(x)){const V=b||c.current,C=E[V];v(r.current,V,C,S)}for(const b of Object.keys(E))!Object.hasOwn(x,b)&&b!==c.current&&v(r.current,b,null,null);return await r.current?.resize().runAsync(),l.current=h,g.current=m,r.current},[v]);return{createView:p,updateView:T,finalizeView:o}}function xe(n){try{const t=typeof n=="string"?JSON.parse(n):n;return!!(t.facet||t.encoding?.row||t.encoding?.column||t.encoding?.facet)}catch{return!1}}const Ne=({disableFullscreenMode:n,element:t,fragmentId:s,widgetMgr:r,widthConfig:u,heightConfig:c})=>{const[l,g]=a.useState(!1),[e,d]=a.useState(!1),{expanded:i,height:f,width:o,expand:p,collapse:v}=X(le),{width:T,height:h,elementRef:m}=q([l],0),w=P(u)||t.useContainerWidth,y=G(c),E=xe(t.spec),x=pe(t,E?o??0:T,(i?f:h)??0,i?!0:w,i?!0:y),{createView:b,updateView:S,finalizeView:V}=Ve(x,r,s),{data:C,datasets:N,spec:R}=x;return a.useLayoutEffect(()=>(m.current!==null&&b(m,R),V),[b,V,R,o,f,l,m]),a.useEffect(()=>{S(C,N)},[C,N,S]),a.useEffect(()=>{C||N?.[0]?.data?d(!0):d(!1)},[C,N]),l?O.jsx(fe,{data:C??N[0]?.data,height:f??h??void 0,customToolbarActions:[O.jsx(k,{label:"Show chart",icon:_,onClick:()=>{g(!1)}},"show-chart")]}):O.jsxs(H,{height:y?i?f:"100%":f,useContainerWidth:i?!0:w,children:[O.jsx(ue,{target:H,isFullScreen:i,onExpand:p,onCollapse:v,disableFullscreenMode:n,children:e&&O.jsx(k,{label:"Show data",icon:U,onClick:()=>{g(!0)}})}),O.jsx(K,{styles:Q}),O.jsx(Y,{"data-testid":"stVegaLiteChart",className:"stVegaLiteChart",useContainerWidth:w,useContainerHeight:y,ref:m})]})},Oe=ce(Ne),$e=a.memo(Oe);export{Q as StyledVegaLiteChartTooltips,j as applyStreamlitTheme,$e as default};