UNPKG

openalgo-charts

Version:

From-scratch, dependency-free canvas charting engine for OpenAlgo: professional-grade interactive rendering, advanced on-chart trading, and a one-call widget tier that adds the toolbar, drawing rail, dialogs and shortcuts.

1 lines • 33.4 kB
{"version":3,"file":"openalgo-charts.transform.mjs","sources":["../src/render/point-figure.ts","../src/transform/transform.ts","../src/transform/heikin-ashi.ts","../src/transform/point-figure.ts","../src/transform/renko.ts","../src/transform/range-bars.ts","../src/transform/line-break.ts","../src/transform/kagi.ts","../src/transform/live.ts","../src/transform/expression.ts","../src/transform/index.ts","../src/render/kagi.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["boxOf","bar","style","inferred","own","boxSize","undefined","drawPointFigure","ctx","items","toY","barSpacing","dpr","plotHeight","Infinity","length","min","h","high","low","Number","isFinite","inferBox","r","Math","max","floor","bottom","save","lineWidth","x","box","k0","round","k1","up","close","open","strokeStyle","upColor","downColor","cx","k","yTop","yBot","beginPath","moveTo","lineTo","ellipse","abs","PI","stroke","restore","copyState","transform","Object","assign","create","getPrototypeOf","addVolume","sum","v","volume","isNaN","settleVolume","out","i","NaN","withVolume","element","ensureIncreasingTimes","bars","prev","b","t","time","push","runTransform","reset","flush","HeikinAshiTransform","constructor","defineProperty","this","_prevOpen","_prevClose","clone","haClose","haOpen","haHigh","haLow","oi","WilderAtr","period","_period","_sum","_n","_atr","tr","value","PointFigureTransform","options","mode","_mode","_reversal","reversal","_method","method","_fixedBox","_percent","percent","_atrMult","atrMultiplier","atrPeriod","Error","_box","_dir","_top","_bot","_time","_volume","copy","_resolveBox","price","pct","_column","boxes","before","useHl","upPrice","downPrice","hb","lb","down","boundary","ceil","RenkoTransform","_fixed","_edge","_resolve","path","p","lo","hi","RangeBarsTransform","range","_range","_cur","c","LineBreakTransform","lines","_lines","slice","recent","maxHigh","minLow","l","last","splice","line","vertex","thick","KagiTransform","_ext","_prevShoulder","_prevWaist","_thick","sortedUnique","byTime","Map","set","Array","from","values","sort","a","historyBox","size","toPrecision","sized","history","LiveTransform","_given","_make","_oneToOne","setData","_source","_resolved","_rebuild","prepend","update","n","_committed","_commit","_formTail","source","elements","_elements","sourceIndex","_index","_state","_append","probe","previous","historySize","key","label","type","default","define","name","renderer","inputs","resolve","make","oneToOne","registerSeriesTransform","fail","reason","TypeError","isArray","entries","input","find","item","step","isInteger","some","option","String","checked","num","FN_ARITY","sqrt","ln","log","log10","exp","pow","ExpressionError","message","position","super","SYM_START","SYM_BODY","BP","parse","toks","src","peek","primary","fn","toLowerCase","args","expr","want","inner","unary","left","bp","right","op","extra","collect","into","includes","parseExpression","end","indexOf","test","j","raw","endsWith","tokenize","ast","symbols","isPlainSymbol","NA","bad","span","xs","e","mono","f","evalNode","leg","mul","div","map","absIv","evaluateExpression","legs","wantRange","ohlc","primaryName","grid","index","s","rows","m","cur","pb","clear","whole","get","pick","field","result","symbol","amount","TRANSFORM_TIER","_registered","registerTransformChartTypes","boxInputs","visibleWhen","is","boxResolved","given","boxOptions","o","registerSeriesTransforms","registerChartType","defaultStyle","isPriceSeries","draw","g","bs","rc","extents","thickColor","thinColor","connectsBars","_bs","thickW","thinW","head","edgeX","tail","px","py","cy","drawKagi"],"mappings":"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"}