@backtest-kit/ui 7.0.0 → 7.2.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 (37) hide show
  1. package/build/modules/frontend/build/assets/{Article-CUKUVtNn.js → Article-673O2GAo.js} +1 -1
  2. package/build/modules/frontend/build/assets/{Background-Cm7NWjYf.js → Background-GZVl6Dd-.js} +1 -1
  3. package/build/modules/frontend/build/assets/{IconPhoto-VQJtz-we.js → IconPhoto-Dol-gfi5.js} +1 -1
  4. package/build/modules/frontend/build/assets/{KeyboardArrowLeft-Bx3w5JlP.js → KeyboardArrowLeft-B96q9-RN.js} +1 -1
  5. package/build/modules/frontend/build/assets/{Refresh-BkaYn01m.js → Refresh-DKJv3mpD.js} +1 -1
  6. package/build/modules/frontend/build/assets/emitters-8Ddy6nda.js +1 -0
  7. package/build/modules/frontend/build/assets/{hasRouteMatch-F5OIUGjU.js → hasRouteMatch-cVt-5faK.js} +1 -1
  8. package/build/modules/frontend/build/assets/html2canvas-B_SfkTNO.js +1 -0
  9. package/build/modules/frontend/build/assets/{index-BTuorlT_.js → index-B1bEyjto.js} +1 -1
  10. package/build/modules/frontend/build/assets/index-BB1KfPr2.js +1 -0
  11. package/build/modules/frontend/build/assets/index-BY91NQhQ.js +1 -0
  12. package/build/modules/frontend/build/assets/index-Bfrag62a.js +1 -0
  13. package/build/modules/frontend/build/assets/index-CnzKZiFP.js +1 -0
  14. package/build/modules/frontend/build/assets/index-CpO55Vw3.js +1 -0
  15. package/build/modules/frontend/build/assets/index-DDUY7roZ.js +1578 -0
  16. package/build/modules/frontend/build/assets/{index-BdOvXECv.js → index-De1PN9nY.js} +1 -1
  17. package/build/modules/frontend/build/assets/index-DhUPeC3A.js +1 -0
  18. package/build/modules/frontend/build/assets/index-G-Rr8i6Z.js +1 -0
  19. package/build/modules/frontend/build/assets/{index-C6MJd2e7.js → index-tA6ppP-9.js} +1 -1
  20. package/build/modules/frontend/build/assets/index-vcDgTyUw.js +1 -0
  21. package/build/modules/frontend/build/assets/{index.es-Dy9r9ja5.js → index.es-CAJnvyqV.js} +1 -1
  22. package/build/modules/frontend/build/assets/markdownit-DjH6sN97.js +1 -0
  23. package/build/modules/frontend/build/index.html +1 -1
  24. package/package.json +4 -4
  25. package/types.d.ts +14 -5
  26. package/build/modules/frontend/build/assets/emitters-DFr8bMD1.js +0 -1
  27. package/build/modules/frontend/build/assets/html2canvas-D9EezEc_.js +0 -1
  28. package/build/modules/frontend/build/assets/index-ApVR6Ifc.js +0 -1
  29. package/build/modules/frontend/build/assets/index-Bo9eE7UW.js +0 -1
  30. package/build/modules/frontend/build/assets/index-CROpLyTo.js +0 -1
  31. package/build/modules/frontend/build/assets/index-ChbT-tDv.js +0 -17
  32. package/build/modules/frontend/build/assets/index-Cx2iXzXi.js +0 -1
  33. package/build/modules/frontend/build/assets/index-D4lcxG8i.js +0 -1
  34. package/build/modules/frontend/build/assets/index-D5q-xBp8.js +0 -1
  35. package/build/modules/frontend/build/assets/index-Mr3SEWze.js +0 -1560
  36. package/build/modules/frontend/build/assets/index-XWTSQlQH.js +0 -1
  37. package/build/modules/frontend/build/assets/markdownit-CaCiS1m5.js +0 -1
@@ -1 +0,0 @@
1
- import{f as e,c as t,r as n,i as r,S as o}from"./index-Mr3SEWze.js";const a=t(t=>e("div",{style:t.v0,children:[e("input",{type:"text",value:t.v1,onChange:t.v2,style:t.v3,placeholder:"BTCUSDT"}),e("select",{value:t.v4,onChange:t.v5,style:t.v6,children:t.v7}),e("input",{type:"number",value:t.v8,min:100,step:100,onChange:t.v9,style:t.v10,title:"Bars limit"}),e("input",{type:"date",value:t.v11,onChange:t.v12,style:t.v13,title:"From date"}),e("input",{type:"date",value:t.v14,onChange:t.v15,style:t.v16,title:"To date"}),e("button",{onClick:t.v17,disabled:t.v18,style:t.v19,children:t.v20}),t.v21]}),{name:"Toolbar_1",portals:["v7","v20","v21"]}),i=function({symbol:t,timeframe:n,fromDate:r,toDate:o,limit:i,running:c,status:v,onSymbolChange:d,onTimeframeChange:m,onFromDateChange:h,onToDateChange:g,onLimitChange:p,onRun:f}){return e(a,{v0:{display:"flex",gap:8,padding:"8px 12px",background:"#1e293b",alignItems:"center",flexShrink:0},v1:t,v2:e=>d(e.target.value.toUpperCase()),v3:{...u,width:100},v4:n,v5:e=>m(e.target.value),v6:u,v7:l.map(t=>e("option",{children:t},t)),v8:i,v9:e=>p(Number(e.target.value)),v10:{...u,width:80},v11:r,v12:e=>h(e.target.value),v13:s,v14:o,v15:e=>g(e.target.value),v16:s,v17:f,v18:c,v19:{background:"#3b82f6",color:"#fff",border:"none",borderRadius:4,padding:"5px 16px",fontSize:13,cursor:"pointer"},v20:c?"...":"▶ Run",v21:v&&e("span",{style:{fontSize:12,color:"#94a3b8",marginLeft:8},children:v})})},l=["1","5","15","60","D"],u={background:"#1e293b",color:"#e2e8f0",border:"1px solid #334155",borderRadius:4,padding:"4px 8px",fontSize:13},s={...u,colorScheme:"dark"},c=t(t=>e("textarea",{value:t.v0,onChange:t.v1,onKeyDown:t.v2,spellCheck:!1,style:t.v3}),{name:"CodeEditor_1"}),v=function({value:t,onChange:n,onRun:r}){return e(c,{v0:t,v1:e=>n(e.target.value),v2:e=>{e.ctrlKey&&"Enter"===e.key&&(e.preventDefault(),r())},v3:{width:320,flexShrink:0,resize:"none",background:"#1e293b",color:"#e2e8f0",border:"none",borderRight:"1px solid #334155",padding:12,fontFamily:"monospace",fontSize:13,lineHeight:1.5,outline:"none"}})},d={1:"1m",3:"3m",5:"5m",15:"15m",30:"30m",60:"1h",120:"2h",240:"4h",360:"6h",480:"8h","1D":"1d",D:"1d"};function m(e){return{time:e.openTime,open:e.open,high:e.high,low:e.low,close:e.close,volume:e.volume}}class h{async getMarketData(e,t,n,o,a){const i=e.toUpperCase().replace(/^BINANCE:|^BYBIT:|^OKX:/,""),l=d[t]??t;return(await r.exchangeViewService.getRangeCandles({symbol:i,interval:l,limit:n,sDate:o,eDate:a})).map(e=>({openTime:e.timestamp,open:e.open,high:e.high,low:e.low,close:e.close,volume:e.volume}))}async getSymbolInfo(e){const t=e.toUpperCase().replace(/^BINANCE:|^BYBIT:|^OKX:/,""),n=t.replace(/USDT$|BUSD$|USD$/,""),r=t.replace(n,"");return{ticker:t,tickerid:t,description:`${n}/${r}`,type:"crypto",basecurrency:n,currency:r||"USDT",timezone:"UTC"}}}const g=()=>e(o,{children:"\n #root > .MuiBox-root {\n padding-left: 0;\n padding-right: 0;\n }\n "}),p=t(t=>e("div",{style:t.v0,children:[t.v1,e("div",{style:t.v2,children:[t.v3,e("div",{style:t.v4,children:t.v5})]}),t.v6]}),{name:"PinePage_1",portals:["v1","v3","v5","v6"]}),f=()=>{const t=n.useRef(null),[r,o]=n.useState('//@version=5\nindicator("Simple MA", overlay=true)\n\nlength = input.int(20, "Length")\nsma = ta.sma(close, length)\n\nplot(sma, "SMA", color.blue, linewidth=2)'),[a,l]=n.useState("BTCUSDT"),[u,s]=n.useState("1"),[c,d]=n.useState(""),[f,y]=n.useState(""),[C,b]=n.useState(250),{run:D,status:S,running:x}=function(){const e=n.useRef(null),t=n.useRef(null),r=n.useRef(null),[o,a]=n.useState(""),[i,l]=n.useState(!1);function u(){if(r.current){try{r.current.stop()}catch{}r.current=null}}function s(){e.current&&(e.current.destroy(),e.current=null,t.current=null)}function c(e){a(`Error: ${e.message}`),l(!1)}return n.useEffect(()=>{const t=()=>{var t;return null==(t=e.current)?void 0:t.resize()};return window.addEventListener("resize",t),()=>{window.removeEventListener("resize",t),u(),s()}},[]),{run:function({symbol:n,timeframe:o,fromDate:i,toDate:v,limit:d,code:g,containerRef:p}){if(!p.current)return;l(!0),a("Connecting..."),u(),s();const f=/indicator\([^)]*overlay\s*=\s*true/i.test(g);let y=!1;try{const u=i?new Date(i).getTime():void 0,s=v?new Date(v).getTime():void 0,C=new h,b=new PineTS(C,n,o,d,u,s).stream(g,{pageSize:500,live:!0,interval:3e3});r.current=b,b.on("data",i=>{var u,s;if(r.current===b)if(y)t.current&&i.plots&&t.current.updateData(i.plots),null==(s=e.current)||s.updateData([m(i.marketData[i.marketData.length-1])]);else{y=!0;const r=i.marketData.map(m);p.current.innerHTML="",e.current=new QFChart.QFChart(p.current,{title:`${n} · ${o}`,backgroundColor:"#0f172a",height:"100%",padding:.1,databox:{position:"right",triggerOn:"mousemove"},dataZoom:{visible:!0,position:"top",height:6,start:80,end:101},layout:{mainPaneHeight:"70%",gap:5},controls:{collapse:!1,maximize:!1,fullscreen:!1}}),e.current.setMarketData(r);const s=(null==(u=i.fullContext)?void 0:u.plots)??i.plots;t.current=e.current.addIndicator("indicator",s,{overlay:f,height:f?void 0:30,controls:{collapse:!1,maximize:!1}}),e.current.registerPlugin(new QFChart.MeasureTool),e.current.registerPlugin(new QFChart.LineTool),e.current.registerPlugin(new QFChart.FibonacciTool),a(`${r.length} bars loaded`),l(!1)}}),b.on("error",c)}catch(C){c(C)}},status:o,running:i}}();function w(){D({symbol:a,timeframe:u,fromDate:c,toDate:f,limit:C,code:r,containerRef:t})}return e(p,{v0:{display:"flex",flexDirection:"column",height:"100vh",background:"#0f172a",color:"#e2e8f0",fontFamily:"monospace"},v1:e(i,{symbol:a,timeframe:u,fromDate:c,toDate:f,limit:C,running:x,status:S,onSymbolChange:l,onTimeframeChange:s,onFromDateChange:d,onToDateChange:y,onLimitChange:b,onRun:w}),v2:{display:"flex",flex:1,overflow:"hidden"},v3:e(v,{value:r,onChange:o,onRun:w}),v4:{flex:1},v5:e("div",{ref:t,style:{width:"100%",height:"100%"},children:e("p",{style:{color:"#475569",textAlign:"center",marginTop:"20%"},children:["Press ",e("b",{children:"▶ Run"})," or ",e("b",{children:"Ctrl+Enter"})," to load the chart"]})}),v6:e(g,{})})};export{f as PinePage,f as default};
@@ -1 +0,0 @@
1
- import{o as e,bt as t}from"./index-Mr3SEWze.js";function r(e,t){for(var r=0;r<t.length;r++){const o=t[r];if("string"!=typeof o&&!Array.isArray(o))for(const t in o)if("default"!==t&&!(t in e)){const r=Object.getOwnPropertyDescriptor(o,t);r&&Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:()=>o[t]})}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}var o=t();const n=r({__proto__:null,default:e(o)},[o]);export{n as m};