@invinite-org/chartlang-runtime 1.0.2

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 (984) hide show
  1. package/CHANGELOG.md +2690 -0
  2. package/LICENSE +21 -0
  3. package/README.md +57 -0
  4. package/dist/buildComputeContext.d.ts +21 -0
  5. package/dist/buildComputeContext.d.ts.map +1 -0
  6. package/dist/buildComputeContext.js +48 -0
  7. package/dist/buildComputeContext.js.map +1 -0
  8. package/dist/createScriptRunner.d.ts +111 -0
  9. package/dist/createScriptRunner.d.ts.map +1 -0
  10. package/dist/createScriptRunner.js +234 -0
  11. package/dist/createScriptRunner.js.map +1 -0
  12. package/dist/emit/alert.d.ts +46 -0
  13. package/dist/emit/alert.d.ts.map +1 -0
  14. package/dist/emit/alert.js +71 -0
  15. package/dist/emit/alert.js.map +1 -0
  16. package/dist/emit/alertConditionEmission.d.ts +15 -0
  17. package/dist/emit/alertConditionEmission.d.ts.map +1 -0
  18. package/dist/emit/alertConditionEmission.js +53 -0
  19. package/dist/emit/alertConditionEmission.js.map +1 -0
  20. package/dist/emit/draw/annotations/arrow.d.ts +42 -0
  21. package/dist/emit/draw/annotations/arrow.d.ts.map +1 -0
  22. package/dist/emit/draw/annotations/arrow.js +40 -0
  23. package/dist/emit/draw/annotations/arrow.js.map +1 -0
  24. package/dist/emit/draw/annotations/arrowMarkDown.d.ts +36 -0
  25. package/dist/emit/draw/annotations/arrowMarkDown.d.ts.map +1 -0
  26. package/dist/emit/draw/annotations/arrowMarkDown.js +40 -0
  27. package/dist/emit/draw/annotations/arrowMarkDown.js.map +1 -0
  28. package/dist/emit/draw/annotations/arrowMarkUp.d.ts +36 -0
  29. package/dist/emit/draw/annotations/arrowMarkUp.d.ts.map +1 -0
  30. package/dist/emit/draw/annotations/arrowMarkUp.js +40 -0
  31. package/dist/emit/draw/annotations/arrowMarkUp.js.map +1 -0
  32. package/dist/emit/draw/annotations/arrowMarker.d.ts +40 -0
  33. package/dist/emit/draw/annotations/arrowMarker.d.ts.map +1 -0
  34. package/dist/emit/draw/annotations/arrowMarker.js +40 -0
  35. package/dist/emit/draw/annotations/arrowMarker.js.map +1 -0
  36. package/dist/emit/draw/annotations/text.d.ts +41 -0
  37. package/dist/emit/draw/annotations/text.d.ts.map +1 -0
  38. package/dist/emit/draw/annotations/text.js +44 -0
  39. package/dist/emit/draw/annotations/text.js.map +1 -0
  40. package/dist/emit/draw/boxes/circle.d.ts +42 -0
  41. package/dist/emit/draw/boxes/circle.d.ts.map +1 -0
  42. package/dist/emit/draw/boxes/circle.js +44 -0
  43. package/dist/emit/draw/boxes/circle.js.map +1 -0
  44. package/dist/emit/draw/boxes/ellipse.d.ts +42 -0
  45. package/dist/emit/draw/boxes/ellipse.d.ts.map +1 -0
  46. package/dist/emit/draw/boxes/ellipse.js +40 -0
  47. package/dist/emit/draw/boxes/ellipse.js.map +1 -0
  48. package/dist/emit/draw/boxes/marker.d.ts +43 -0
  49. package/dist/emit/draw/boxes/marker.d.ts.map +1 -0
  50. package/dist/emit/draw/boxes/marker.js +49 -0
  51. package/dist/emit/draw/boxes/marker.js.map +1 -0
  52. package/dist/emit/draw/boxes/path.d.ts +43 -0
  53. package/dist/emit/draw/boxes/path.d.ts.map +1 -0
  54. package/dist/emit/draw/boxes/path.js +40 -0
  55. package/dist/emit/draw/boxes/path.js.map +1 -0
  56. package/dist/emit/draw/boxes/polyline.d.ts +43 -0
  57. package/dist/emit/draw/boxes/polyline.d.ts.map +1 -0
  58. package/dist/emit/draw/boxes/polyline.js +40 -0
  59. package/dist/emit/draw/boxes/polyline.js.map +1 -0
  60. package/dist/emit/draw/boxes/rectangle.d.ts +40 -0
  61. package/dist/emit/draw/boxes/rectangle.d.ts.map +1 -0
  62. package/dist/emit/draw/boxes/rectangle.js +40 -0
  63. package/dist/emit/draw/boxes/rectangle.js.map +1 -0
  64. package/dist/emit/draw/boxes/rotatedRectangle.d.ts +45 -0
  65. package/dist/emit/draw/boxes/rotatedRectangle.d.ts.map +1 -0
  66. package/dist/emit/draw/boxes/rotatedRectangle.js +40 -0
  67. package/dist/emit/draw/boxes/rotatedRectangle.js.map +1 -0
  68. package/dist/emit/draw/boxes/triangle.d.ts +42 -0
  69. package/dist/emit/draw/boxes/triangle.d.ts.map +1 -0
  70. package/dist/emit/draw/boxes/triangle.js +40 -0
  71. package/dist/emit/draw/boxes/triangle.js.map +1 -0
  72. package/dist/emit/draw/channels/disjointChannel.d.ts +43 -0
  73. package/dist/emit/draw/channels/disjointChannel.d.ts.map +1 -0
  74. package/dist/emit/draw/channels/disjointChannel.js +40 -0
  75. package/dist/emit/draw/channels/disjointChannel.js.map +1 -0
  76. package/dist/emit/draw/channels/flatTopBottom.d.ts +44 -0
  77. package/dist/emit/draw/channels/flatTopBottom.d.ts.map +1 -0
  78. package/dist/emit/draw/channels/flatTopBottom.js +40 -0
  79. package/dist/emit/draw/channels/flatTopBottom.js.map +1 -0
  80. package/dist/emit/draw/channels/regressionTrend.d.ts +49 -0
  81. package/dist/emit/draw/channels/regressionTrend.d.ts.map +1 -0
  82. package/dist/emit/draw/channels/regressionTrend.js +44 -0
  83. package/dist/emit/draw/channels/regressionTrend.js.map +1 -0
  84. package/dist/emit/draw/channels/trendChannel.d.ts +43 -0
  85. package/dist/emit/draw/channels/trendChannel.d.ts.map +1 -0
  86. package/dist/emit/draw/channels/trendChannel.js +40 -0
  87. package/dist/emit/draw/channels/trendChannel.js.map +1 -0
  88. package/dist/emit/draw/containers/frame.d.ts +42 -0
  89. package/dist/emit/draw/containers/frame.d.ts.map +1 -0
  90. package/dist/emit/draw/containers/frame.js +47 -0
  91. package/dist/emit/draw/containers/frame.js.map +1 -0
  92. package/dist/emit/draw/containers/group.d.ts +47 -0
  93. package/dist/emit/draw/containers/group.d.ts.map +1 -0
  94. package/dist/emit/draw/containers/group.js +44 -0
  95. package/dist/emit/draw/containers/group.js.map +1 -0
  96. package/dist/emit/draw/curves/arc.d.ts +44 -0
  97. package/dist/emit/draw/curves/arc.d.ts.map +1 -0
  98. package/dist/emit/draw/curves/arc.js +40 -0
  99. package/dist/emit/draw/curves/arc.js.map +1 -0
  100. package/dist/emit/draw/curves/brush.d.ts +44 -0
  101. package/dist/emit/draw/curves/brush.d.ts.map +1 -0
  102. package/dist/emit/draw/curves/brush.js +43 -0
  103. package/dist/emit/draw/curves/brush.js.map +1 -0
  104. package/dist/emit/draw/curves/curve.d.ts +43 -0
  105. package/dist/emit/draw/curves/curve.d.ts.map +1 -0
  106. package/dist/emit/draw/curves/curve.js +40 -0
  107. package/dist/emit/draw/curves/curve.js.map +1 -0
  108. package/dist/emit/draw/curves/doubleCurve.d.ts +46 -0
  109. package/dist/emit/draw/curves/doubleCurve.d.ts.map +1 -0
  110. package/dist/emit/draw/curves/doubleCurve.js +40 -0
  111. package/dist/emit/draw/curves/doubleCurve.js.map +1 -0
  112. package/dist/emit/draw/curves/highlighter.d.ts +43 -0
  113. package/dist/emit/draw/curves/highlighter.d.ts.map +1 -0
  114. package/dist/emit/draw/curves/highlighter.js +43 -0
  115. package/dist/emit/draw/curves/highlighter.js.map +1 -0
  116. package/dist/emit/draw/curves/pen.d.ts +41 -0
  117. package/dist/emit/draw/curves/pen.d.ts.map +1 -0
  118. package/dist/emit/draw/curves/pen.js +40 -0
  119. package/dist/emit/draw/curves/pen.js.map +1 -0
  120. package/dist/emit/draw/cycles/cyclicLines.d.ts +41 -0
  121. package/dist/emit/draw/cycles/cyclicLines.d.ts.map +1 -0
  122. package/dist/emit/draw/cycles/cyclicLines.js +44 -0
  123. package/dist/emit/draw/cycles/cyclicLines.js.map +1 -0
  124. package/dist/emit/draw/cycles/sineLine.d.ts +40 -0
  125. package/dist/emit/draw/cycles/sineLine.d.ts.map +1 -0
  126. package/dist/emit/draw/cycles/sineLine.js +44 -0
  127. package/dist/emit/draw/cycles/sineLine.js.map +1 -0
  128. package/dist/emit/draw/cycles/timeCycles.d.ts +40 -0
  129. package/dist/emit/draw/cycles/timeCycles.d.ts.map +1 -0
  130. package/dist/emit/draw/cycles/timeCycles.js +44 -0
  131. package/dist/emit/draw/cycles/timeCycles.js.map +1 -0
  132. package/dist/emit/draw/elliott/elliottCorrectionWave.d.ts +39 -0
  133. package/dist/emit/draw/elliott/elliottCorrectionWave.d.ts.map +1 -0
  134. package/dist/emit/draw/elliott/elliottCorrectionWave.js +43 -0
  135. package/dist/emit/draw/elliott/elliottCorrectionWave.js.map +1 -0
  136. package/dist/emit/draw/elliott/elliottDoubleCombo.d.ts +44 -0
  137. package/dist/emit/draw/elliott/elliottDoubleCombo.d.ts.map +1 -0
  138. package/dist/emit/draw/elliott/elliottDoubleCombo.js +43 -0
  139. package/dist/emit/draw/elliott/elliottDoubleCombo.js.map +1 -0
  140. package/dist/emit/draw/elliott/elliottImpulseWave.d.ts +42 -0
  141. package/dist/emit/draw/elliott/elliottImpulseWave.d.ts.map +1 -0
  142. package/dist/emit/draw/elliott/elliottImpulseWave.js +43 -0
  143. package/dist/emit/draw/elliott/elliottImpulseWave.js.map +1 -0
  144. package/dist/emit/draw/elliott/elliottTriangleWave.d.ts +41 -0
  145. package/dist/emit/draw/elliott/elliottTriangleWave.d.ts.map +1 -0
  146. package/dist/emit/draw/elliott/elliottTriangleWave.js +43 -0
  147. package/dist/emit/draw/elliott/elliottTriangleWave.js.map +1 -0
  148. package/dist/emit/draw/elliott/elliottTripleCombo.d.ts +44 -0
  149. package/dist/emit/draw/elliott/elliottTripleCombo.d.ts.map +1 -0
  150. package/dist/emit/draw/elliott/elliottTripleCombo.js +47 -0
  151. package/dist/emit/draw/elliott/elliottTripleCombo.js.map +1 -0
  152. package/dist/emit/draw/fibA/fibChannel.d.ts +41 -0
  153. package/dist/emit/draw/fibA/fibChannel.d.ts.map +1 -0
  154. package/dist/emit/draw/fibA/fibChannel.js +40 -0
  155. package/dist/emit/draw/fibA/fibChannel.js.map +1 -0
  156. package/dist/emit/draw/fibA/fibRetracement.d.ts +40 -0
  157. package/dist/emit/draw/fibA/fibRetracement.d.ts.map +1 -0
  158. package/dist/emit/draw/fibA/fibRetracement.js +44 -0
  159. package/dist/emit/draw/fibA/fibRetracement.js.map +1 -0
  160. package/dist/emit/draw/fibA/fibTimeZone.d.ts +41 -0
  161. package/dist/emit/draw/fibA/fibTimeZone.d.ts.map +1 -0
  162. package/dist/emit/draw/fibA/fibTimeZone.js +44 -0
  163. package/dist/emit/draw/fibA/fibTimeZone.js.map +1 -0
  164. package/dist/emit/draw/fibA/fibTrendExtension.d.ts +42 -0
  165. package/dist/emit/draw/fibA/fibTrendExtension.d.ts.map +1 -0
  166. package/dist/emit/draw/fibA/fibTrendExtension.js +44 -0
  167. package/dist/emit/draw/fibA/fibTrendExtension.js.map +1 -0
  168. package/dist/emit/draw/fibA/fibWedge.d.ts +42 -0
  169. package/dist/emit/draw/fibA/fibWedge.d.ts.map +1 -0
  170. package/dist/emit/draw/fibA/fibWedge.js +40 -0
  171. package/dist/emit/draw/fibA/fibWedge.js.map +1 -0
  172. package/dist/emit/draw/fibB/fibCircles.d.ts +41 -0
  173. package/dist/emit/draw/fibB/fibCircles.d.ts.map +1 -0
  174. package/dist/emit/draw/fibB/fibCircles.js +44 -0
  175. package/dist/emit/draw/fibB/fibCircles.js.map +1 -0
  176. package/dist/emit/draw/fibB/fibSpeedArcs.d.ts +39 -0
  177. package/dist/emit/draw/fibB/fibSpeedArcs.d.ts.map +1 -0
  178. package/dist/emit/draw/fibB/fibSpeedArcs.js +44 -0
  179. package/dist/emit/draw/fibB/fibSpeedArcs.js.map +1 -0
  180. package/dist/emit/draw/fibB/fibSpeedFan.d.ts +39 -0
  181. package/dist/emit/draw/fibB/fibSpeedFan.d.ts.map +1 -0
  182. package/dist/emit/draw/fibB/fibSpeedFan.js +44 -0
  183. package/dist/emit/draw/fibB/fibSpeedFan.js.map +1 -0
  184. package/dist/emit/draw/fibB/fibSpiral.d.ts +41 -0
  185. package/dist/emit/draw/fibB/fibSpiral.d.ts.map +1 -0
  186. package/dist/emit/draw/fibB/fibSpiral.js +44 -0
  187. package/dist/emit/draw/fibB/fibSpiral.js.map +1 -0
  188. package/dist/emit/draw/fibB/fibTrendTime.d.ts +45 -0
  189. package/dist/emit/draw/fibB/fibTrendTime.d.ts.map +1 -0
  190. package/dist/emit/draw/fibB/fibTrendTime.js +44 -0
  191. package/dist/emit/draw/fibB/fibTrendTime.js.map +1 -0
  192. package/dist/emit/draw/gann/gannBox.d.ts +39 -0
  193. package/dist/emit/draw/gann/gannBox.d.ts.map +1 -0
  194. package/dist/emit/draw/gann/gannBox.js +44 -0
  195. package/dist/emit/draw/gann/gannBox.js.map +1 -0
  196. package/dist/emit/draw/gann/gannFan.d.ts +39 -0
  197. package/dist/emit/draw/gann/gannFan.d.ts.map +1 -0
  198. package/dist/emit/draw/gann/gannFan.js +44 -0
  199. package/dist/emit/draw/gann/gannFan.js.map +1 -0
  200. package/dist/emit/draw/gann/gannSquare.d.ts +38 -0
  201. package/dist/emit/draw/gann/gannSquare.d.ts.map +1 -0
  202. package/dist/emit/draw/gann/gannSquare.js +44 -0
  203. package/dist/emit/draw/gann/gannSquare.js.map +1 -0
  204. package/dist/emit/draw/gann/gannSquareFixed.d.ts +35 -0
  205. package/dist/emit/draw/gann/gannSquareFixed.d.ts.map +1 -0
  206. package/dist/emit/draw/gann/gannSquareFixed.js +44 -0
  207. package/dist/emit/draw/gann/gannSquareFixed.js.map +1 -0
  208. package/dist/emit/draw/handle.d.ts +37 -0
  209. package/dist/emit/draw/handle.d.ts.map +1 -0
  210. package/dist/emit/draw/handle.js +118 -0
  211. package/dist/emit/draw/handle.js.map +1 -0
  212. package/dist/emit/draw/index.d.ts +5 -0
  213. package/dist/emit/draw/index.d.ts.map +1 -0
  214. package/dist/emit/draw/index.js +13 -0
  215. package/dist/emit/draw/index.js.map +1 -0
  216. package/dist/emit/draw/lines/crossLine.d.ts +37 -0
  217. package/dist/emit/draw/lines/crossLine.d.ts.map +1 -0
  218. package/dist/emit/draw/lines/crossLine.js +40 -0
  219. package/dist/emit/draw/lines/crossLine.js.map +1 -0
  220. package/dist/emit/draw/lines/horizontalLine.d.ts +33 -0
  221. package/dist/emit/draw/lines/horizontalLine.d.ts.map +1 -0
  222. package/dist/emit/draw/lines/horizontalLine.js +40 -0
  223. package/dist/emit/draw/lines/horizontalLine.js.map +1 -0
  224. package/dist/emit/draw/lines/horizontalRay.d.ts +36 -0
  225. package/dist/emit/draw/lines/horizontalRay.d.ts.map +1 -0
  226. package/dist/emit/draw/lines/horizontalRay.js +40 -0
  227. package/dist/emit/draw/lines/horizontalRay.js.map +1 -0
  228. package/dist/emit/draw/lines/line.d.ts +43 -0
  229. package/dist/emit/draw/lines/line.d.ts.map +1 -0
  230. package/dist/emit/draw/lines/line.js +43 -0
  231. package/dist/emit/draw/lines/line.js.map +1 -0
  232. package/dist/emit/draw/lines/trendAngle.d.ts +38 -0
  233. package/dist/emit/draw/lines/trendAngle.d.ts.map +1 -0
  234. package/dist/emit/draw/lines/trendAngle.js +40 -0
  235. package/dist/emit/draw/lines/trendAngle.js.map +1 -0
  236. package/dist/emit/draw/lines/verticalLine.d.ts +33 -0
  237. package/dist/emit/draw/lines/verticalLine.d.ts.map +1 -0
  238. package/dist/emit/draw/lines/verticalLine.js +40 -0
  239. package/dist/emit/draw/lines/verticalLine.js.map +1 -0
  240. package/dist/emit/draw/namespace.d.ts +26 -0
  241. package/dist/emit/draw/namespace.d.ts.map +1 -0
  242. package/dist/emit/draw/namespace.js +186 -0
  243. package/dist/emit/draw/namespace.js.map +1 -0
  244. package/dist/emit/draw/patterns/abcdPattern.d.ts +40 -0
  245. package/dist/emit/draw/patterns/abcdPattern.d.ts.map +1 -0
  246. package/dist/emit/draw/patterns/abcdPattern.js +40 -0
  247. package/dist/emit/draw/patterns/abcdPattern.js.map +1 -0
  248. package/dist/emit/draw/patterns/cypherPattern.d.ts +43 -0
  249. package/dist/emit/draw/patterns/cypherPattern.d.ts.map +1 -0
  250. package/dist/emit/draw/patterns/cypherPattern.js +41 -0
  251. package/dist/emit/draw/patterns/cypherPattern.js.map +1 -0
  252. package/dist/emit/draw/patterns/headAndShoulders.d.ts +42 -0
  253. package/dist/emit/draw/patterns/headAndShoulders.d.ts.map +1 -0
  254. package/dist/emit/draw/patterns/headAndShoulders.js +49 -0
  255. package/dist/emit/draw/patterns/headAndShoulders.js.map +1 -0
  256. package/dist/emit/draw/patterns/threeDrivesPattern.d.ts +43 -0
  257. package/dist/emit/draw/patterns/threeDrivesPattern.d.ts.map +1 -0
  258. package/dist/emit/draw/patterns/threeDrivesPattern.js +44 -0
  259. package/dist/emit/draw/patterns/threeDrivesPattern.js.map +1 -0
  260. package/dist/emit/draw/patterns/trianglePattern.d.ts +41 -0
  261. package/dist/emit/draw/patterns/trianglePattern.d.ts.map +1 -0
  262. package/dist/emit/draw/patterns/trianglePattern.js +50 -0
  263. package/dist/emit/draw/patterns/trianglePattern.js.map +1 -0
  264. package/dist/emit/draw/patterns/xabcdPattern.d.ts +41 -0
  265. package/dist/emit/draw/patterns/xabcdPattern.d.ts.map +1 -0
  266. package/dist/emit/draw/patterns/xabcdPattern.js +40 -0
  267. package/dist/emit/draw/patterns/xabcdPattern.js.map +1 -0
  268. package/dist/emit/draw/pitchforks/pitchfan.d.ts +39 -0
  269. package/dist/emit/draw/pitchforks/pitchfan.d.ts.map +1 -0
  270. package/dist/emit/draw/pitchforks/pitchfan.js +40 -0
  271. package/dist/emit/draw/pitchforks/pitchfan.js.map +1 -0
  272. package/dist/emit/draw/pitchforks/pitchfork.d.ts +51 -0
  273. package/dist/emit/draw/pitchforks/pitchfork.d.ts.map +1 -0
  274. package/dist/emit/draw/pitchforks/pitchfork.js +50 -0
  275. package/dist/emit/draw/pitchforks/pitchfork.js.map +1 -0
  276. package/dist/emit/draw/pushDrawing.d.ts +45 -0
  277. package/dist/emit/draw/pushDrawing.d.ts.map +1 -0
  278. package/dist/emit/draw/pushDrawing.js +107 -0
  279. package/dist/emit/draw/pushDrawing.js.map +1 -0
  280. package/dist/emit/draw/subIdAllocator.d.ts +34 -0
  281. package/dist/emit/draw/subIdAllocator.d.ts.map +1 -0
  282. package/dist/emit/draw/subIdAllocator.js +42 -0
  283. package/dist/emit/draw/subIdAllocator.js.map +1 -0
  284. package/dist/emit/draw/table/table.d.ts +39 -0
  285. package/dist/emit/draw/table/table.d.ts.map +1 -0
  286. package/dist/emit/draw/table/table.js +39 -0
  287. package/dist/emit/draw/table/table.js.map +1 -0
  288. package/dist/emit/emissionsQueue.d.ts +65 -0
  289. package/dist/emit/emissionsQueue.d.ts.map +1 -0
  290. package/dist/emit/emissionsQueue.js +140 -0
  291. package/dist/emit/emissionsQueue.js.map +1 -0
  292. package/dist/emit/hash.d.ts +13 -0
  293. package/dist/emit/hash.d.ts.map +1 -0
  294. package/dist/emit/hash.js +24 -0
  295. package/dist/emit/hash.js.map +1 -0
  296. package/dist/emit/hline.d.ts +42 -0
  297. package/dist/emit/hline.d.ts.map +1 -0
  298. package/dist/emit/hline.js +59 -0
  299. package/dist/emit/hline.js.map +1 -0
  300. package/dist/emit/index.d.ts +11 -0
  301. package/dist/emit/index.d.ts.map +1 -0
  302. package/dist/emit/index.js +13 -0
  303. package/dist/emit/index.js.map +1 -0
  304. package/dist/emit/logEmission.d.ts +25 -0
  305. package/dist/emit/logEmission.d.ts.map +1 -0
  306. package/dist/emit/logEmission.js +127 -0
  307. package/dist/emit/logEmission.js.map +1 -0
  308. package/dist/emit/paneResolver.d.ts +19 -0
  309. package/dist/emit/paneResolver.d.ts.map +1 -0
  310. package/dist/emit/paneResolver.js +45 -0
  311. package/dist/emit/paneResolver.js.map +1 -0
  312. package/dist/emit/plot.d.ts +45 -0
  313. package/dist/emit/plot.d.ts.map +1 -0
  314. package/dist/emit/plot.js +126 -0
  315. package/dist/emit/plot.js.map +1 -0
  316. package/dist/emit/runtimeError.d.ts +27 -0
  317. package/dist/emit/runtimeError.d.ts.map +1 -0
  318. package/dist/emit/runtimeError.js +33 -0
  319. package/dist/emit/runtimeError.js.map +1 -0
  320. package/dist/execution/dispose.d.ts +23 -0
  321. package/dist/execution/dispose.d.ts.map +1 -0
  322. package/dist/execution/dispose.js +57 -0
  323. package/dist/execution/dispose.js.map +1 -0
  324. package/dist/execution/drain.d.ts +22 -0
  325. package/dist/execution/drain.d.ts.map +1 -0
  326. package/dist/execution/drain.js +40 -0
  327. package/dist/execution/drain.js.map +1 -0
  328. package/dist/execution/index.d.ts +6 -0
  329. package/dist/execution/index.d.ts.map +1 -0
  330. package/dist/execution/index.js +8 -0
  331. package/dist/execution/index.js.map +1 -0
  332. package/dist/execution/onBarClose.d.ts +25 -0
  333. package/dist/execution/onBarClose.d.ts.map +1 -0
  334. package/dist/execution/onBarClose.js +78 -0
  335. package/dist/execution/onBarClose.js.map +1 -0
  336. package/dist/execution/onBarTick.d.ts +24 -0
  337. package/dist/execution/onBarTick.d.ts.map +1 -0
  338. package/dist/execution/onBarTick.js +77 -0
  339. package/dist/execution/onBarTick.js.map +1 -0
  340. package/dist/execution/onHistory.d.ts +31 -0
  341. package/dist/execution/onHistory.d.ts.map +1 -0
  342. package/dist/execution/onHistory.js +59 -0
  343. package/dist/execution/onHistory.js.map +1 -0
  344. package/dist/execution/secondaryStream.d.ts +36 -0
  345. package/dist/execution/secondaryStream.d.ts.map +1 -0
  346. package/dist/execution/secondaryStream.js +45 -0
  347. package/dist/execution/secondaryStream.js.map +1 -0
  348. package/dist/index.d.ts +25 -0
  349. package/dist/index.d.ts.map +1 -0
  350. package/dist/index.js +24 -0
  351. package/dist/index.js.map +1 -0
  352. package/dist/inputs/index.d.ts +2 -0
  353. package/dist/inputs/index.d.ts.map +1 -0
  354. package/dist/inputs/index.js +4 -0
  355. package/dist/inputs/index.js.map +1 -0
  356. package/dist/inputs/resolveInputs.d.ts +18 -0
  357. package/dist/inputs/resolveInputs.d.ts.map +1 -0
  358. package/dist/inputs/resolveInputs.js +93 -0
  359. package/dist/inputs/resolveInputs.js.map +1 -0
  360. package/dist/persistentStateStore.d.ts +40 -0
  361. package/dist/persistentStateStore.d.ts.map +1 -0
  362. package/dist/persistentStateStore.js +30 -0
  363. package/dist/persistentStateStore.js.map +1 -0
  364. package/dist/persistentStateStore.runtime.d.ts +57 -0
  365. package/dist/persistentStateStore.runtime.d.ts.map +1 -0
  366. package/dist/persistentStateStore.runtime.js +163 -0
  367. package/dist/persistentStateStore.runtime.js.map +1 -0
  368. package/dist/persistentStateStore.validate.d.ts +14 -0
  369. package/dist/persistentStateStore.validate.d.ts.map +1 -0
  370. package/dist/persistentStateStore.validate.js +63 -0
  371. package/dist/persistentStateStore.validate.js.map +1 -0
  372. package/dist/primitives.d.ts +23 -0
  373. package/dist/primitives.d.ts.map +1 -0
  374. package/dist/primitives.js +25 -0
  375. package/dist/primitives.js.map +1 -0
  376. package/dist/request/alignHtfSeriesCache.d.ts +20 -0
  377. package/dist/request/alignHtfSeriesCache.d.ts.map +1 -0
  378. package/dist/request/alignHtfSeriesCache.js +50 -0
  379. package/dist/request/alignHtfSeriesCache.js.map +1 -0
  380. package/dist/request/alignHtfSeriesToLtf.d.ts +26 -0
  381. package/dist/request/alignHtfSeriesToLtf.d.ts.map +1 -0
  382. package/dist/request/alignHtfSeriesToLtf.js +47 -0
  383. package/dist/request/alignHtfSeriesToLtf.js.map +1 -0
  384. package/dist/request/bucketLtfBarsByMainContainment.d.ts +22 -0
  385. package/dist/request/bucketLtfBarsByMainContainment.d.ts.map +1 -0
  386. package/dist/request/bucketLtfBarsByMainContainment.js +41 -0
  387. package/dist/request/bucketLtfBarsByMainContainment.js.map +1 -0
  388. package/dist/request/bucketLtfBarsCache.d.ts +14 -0
  389. package/dist/request/bucketLtfBarsCache.d.ts.map +1 -0
  390. package/dist/request/bucketLtfBarsCache.js +30 -0
  391. package/dist/request/bucketLtfBarsCache.js.map +1 -0
  392. package/dist/request/index.d.ts +4 -0
  393. package/dist/request/index.d.ts.map +1 -0
  394. package/dist/request/index.js +6 -0
  395. package/dist/request/index.js.map +1 -0
  396. package/dist/request/lowerTf.d.ts +14 -0
  397. package/dist/request/lowerTf.d.ts.map +1 -0
  398. package/dist/request/lowerTf.js +65 -0
  399. package/dist/request/lowerTf.js.map +1 -0
  400. package/dist/request/pushOnce.d.ts +13 -0
  401. package/dist/request/pushOnce.d.ts.map +1 -0
  402. package/dist/request/pushOnce.js +26 -0
  403. package/dist/request/pushOnce.js.map +1 -0
  404. package/dist/request/requestNamespace.d.ts +17 -0
  405. package/dist/request/requestNamespace.d.ts.map +1 -0
  406. package/dist/request/requestNamespace.js +39 -0
  407. package/dist/request/requestNamespace.js.map +1 -0
  408. package/dist/request/security.d.ts +25 -0
  409. package/dist/request/security.d.ts.map +1 -0
  410. package/dist/request/security.js +172 -0
  411. package/dist/request/security.js.map +1 -0
  412. package/dist/request/streamBars.d.ts +27 -0
  413. package/dist/request/streamBars.d.ts.map +1 -0
  414. package/dist/request/streamBars.js +55 -0
  415. package/dist/request/streamBars.js.map +1 -0
  416. package/dist/ringBuffer.d.ts +95 -0
  417. package/dist/ringBuffer.d.ts.map +1 -0
  418. package/dist/ringBuffer.js +146 -0
  419. package/dist/ringBuffer.js.map +1 -0
  420. package/dist/runtimeContext.d.ts +238 -0
  421. package/dist/runtimeContext.d.ts.map +1 -0
  422. package/dist/runtimeContext.js +24 -0
  423. package/dist/runtimeContext.js.map +1 -0
  424. package/dist/seriesView.d.ts +59 -0
  425. package/dist/seriesView.d.ts.map +1 -0
  426. package/dist/seriesView.js +109 -0
  427. package/dist/seriesView.js.map +1 -0
  428. package/dist/state/index.d.ts +6 -0
  429. package/dist/state/index.d.ts.map +1 -0
  430. package/dist/state/index.js +6 -0
  431. package/dist/state/index.js.map +1 -0
  432. package/dist/state/lifecycle.d.ts +75 -0
  433. package/dist/state/lifecycle.d.ts.map +1 -0
  434. package/dist/state/lifecycle.js +87 -0
  435. package/dist/state/lifecycle.js.map +1 -0
  436. package/dist/state/stateNamespace.d.ts +14 -0
  437. package/dist/state/stateNamespace.d.ts.map +1 -0
  438. package/dist/state/stateNamespace.js +56 -0
  439. package/dist/state/stateNamespace.js.map +1 -0
  440. package/dist/state/stateSlot.d.ts +59 -0
  441. package/dist/state/stateSlot.d.ts.map +1 -0
  442. package/dist/state/stateSlot.js +74 -0
  443. package/dist/state/stateSlot.js.map +1 -0
  444. package/dist/stateStore.d.ts +40 -0
  445. package/dist/stateStore.d.ts.map +1 -0
  446. package/dist/stateStore.js +34 -0
  447. package/dist/stateStore.js.map +1 -0
  448. package/dist/streamState.d.ts +178 -0
  449. package/dist/streamState.d.ts.map +1 -0
  450. package/dist/streamState.js +313 -0
  451. package/dist/streamState.js.map +1 -0
  452. package/dist/ta/adl.d.ts +27 -0
  453. package/dist/ta/adl.d.ts.map +1 -0
  454. package/dist/ta/adl.js +92 -0
  455. package/dist/ta/adl.js.map +1 -0
  456. package/dist/ta/adr.d.ts +38 -0
  457. package/dist/ta/adr.d.ts.map +1 -0
  458. package/dist/ta/adr.js +143 -0
  459. package/dist/ta/adr.js.map +1 -0
  460. package/dist/ta/adx.d.ts +31 -0
  461. package/dist/ta/adx.d.ts.map +1 -0
  462. package/dist/ta/adx.js +167 -0
  463. package/dist/ta/adx.js.map +1 -0
  464. package/dist/ta/alma.d.ts +35 -0
  465. package/dist/ta/alma.d.ts.map +1 -0
  466. package/dist/ta/alma.js +121 -0
  467. package/dist/ta/alma.js.map +1 -0
  468. package/dist/ta/anchoredVolumeProfile.d.ts +22 -0
  469. package/dist/ta/anchoredVolumeProfile.d.ts.map +1 -0
  470. package/dist/ta/anchoredVolumeProfile.js +104 -0
  471. package/dist/ta/anchoredVolumeProfile.js.map +1 -0
  472. package/dist/ta/anchoredVwap.d.ts +36 -0
  473. package/dist/ta/anchoredVwap.d.ts.map +1 -0
  474. package/dist/ta/anchoredVwap.js +134 -0
  475. package/dist/ta/anchoredVwap.js.map +1 -0
  476. package/dist/ta/ao.d.ts +21 -0
  477. package/dist/ta/ao.d.ts.map +1 -0
  478. package/dist/ta/ao.js +74 -0
  479. package/dist/ta/ao.js.map +1 -0
  480. package/dist/ta/aroon.d.ts +26 -0
  481. package/dist/ta/aroon.d.ts.map +1 -0
  482. package/dist/ta/aroon.js +166 -0
  483. package/dist/ta/aroon.js.map +1 -0
  484. package/dist/ta/aroonOsc.d.ts +19 -0
  485. package/dist/ta/aroonOsc.d.ts.map +1 -0
  486. package/dist/ta/aroonOsc.js +68 -0
  487. package/dist/ta/aroonOsc.js.map +1 -0
  488. package/dist/ta/atr.d.ts +25 -0
  489. package/dist/ta/atr.d.ts.map +1 -0
  490. package/dist/ta/atr.js +132 -0
  491. package/dist/ta/atr.js.map +1 -0
  492. package/dist/ta/barssince.d.ts +21 -0
  493. package/dist/ta/barssince.d.ts.map +1 -0
  494. package/dist/ta/barssince.js +96 -0
  495. package/dist/ta/barssince.js.map +1 -0
  496. package/dist/ta/bb.d.ts +28 -0
  497. package/dist/ta/bb.d.ts.map +1 -0
  498. package/dist/ta/bb.js +123 -0
  499. package/dist/ta/bb.js.map +1 -0
  500. package/dist/ta/bbPercentB.d.ts +23 -0
  501. package/dist/ta/bbPercentB.d.ts.map +1 -0
  502. package/dist/ta/bbPercentB.js +84 -0
  503. package/dist/ta/bbPercentB.js.map +1 -0
  504. package/dist/ta/bbw.d.ts +23 -0
  505. package/dist/ta/bbw.d.ts.map +1 -0
  506. package/dist/ta/bbw.js +84 -0
  507. package/dist/ta/bbw.js.map +1 -0
  508. package/dist/ta/bop.d.ts +22 -0
  509. package/dist/ta/bop.d.ts.map +1 -0
  510. package/dist/ta/bop.js +75 -0
  511. package/dist/ta/bop.js.map +1 -0
  512. package/dist/ta/cci.d.ts +25 -0
  513. package/dist/ta/cci.d.ts.map +1 -0
  514. package/dist/ta/cci.js +149 -0
  515. package/dist/ta/cci.js.map +1 -0
  516. package/dist/ta/chaikinOsc.d.ts +33 -0
  517. package/dist/ta/chaikinOsc.d.ts.map +1 -0
  518. package/dist/ta/chaikinOsc.js +100 -0
  519. package/dist/ta/chaikinOsc.js.map +1 -0
  520. package/dist/ta/chandeKrollStop.d.ts +36 -0
  521. package/dist/ta/chandeKrollStop.d.ts.map +1 -0
  522. package/dist/ta/chandeKrollStop.js +185 -0
  523. package/dist/ta/chandeKrollStop.js.map +1 -0
  524. package/dist/ta/chandelier.d.ts +36 -0
  525. package/dist/ta/chandelier.d.ts.map +1 -0
  526. package/dist/ta/chandelier.js +114 -0
  527. package/dist/ta/chandelier.js.map +1 -0
  528. package/dist/ta/change.d.ts +19 -0
  529. package/dist/ta/change.d.ts.map +1 -0
  530. package/dist/ta/change.js +83 -0
  531. package/dist/ta/change.js.map +1 -0
  532. package/dist/ta/chop.d.ts +29 -0
  533. package/dist/ta/chop.d.ts.map +1 -0
  534. package/dist/ta/chop.js +167 -0
  535. package/dist/ta/chop.js.map +1 -0
  536. package/dist/ta/cmf.d.ts +26 -0
  537. package/dist/ta/cmf.d.ts.map +1 -0
  538. package/dist/ta/cmf.js +126 -0
  539. package/dist/ta/cmf.js.map +1 -0
  540. package/dist/ta/cmo.d.ts +23 -0
  541. package/dist/ta/cmo.d.ts.map +1 -0
  542. package/dist/ta/cmo.js +130 -0
  543. package/dist/ta/cmo.js.map +1 -0
  544. package/dist/ta/connorsRsi.d.ts +31 -0
  545. package/dist/ta/connorsRsi.d.ts.map +1 -0
  546. package/dist/ta/connorsRsi.js +207 -0
  547. package/dist/ta/connorsRsi.js.map +1 -0
  548. package/dist/ta/coppock.d.ts +25 -0
  549. package/dist/ta/coppock.d.ts.map +1 -0
  550. package/dist/ta/coppock.js +151 -0
  551. package/dist/ta/coppock.js.map +1 -0
  552. package/dist/ta/crossover.d.ts +29 -0
  553. package/dist/ta/crossover.d.ts.map +1 -0
  554. package/dist/ta/crossover.js +108 -0
  555. package/dist/ta/crossover.js.map +1 -0
  556. package/dist/ta/crossunder.d.ts +23 -0
  557. package/dist/ta/crossunder.d.ts.map +1 -0
  558. package/dist/ta/crossunder.js +101 -0
  559. package/dist/ta/crossunder.js.map +1 -0
  560. package/dist/ta/dema.d.ts +25 -0
  561. package/dist/ta/dema.d.ts.map +1 -0
  562. package/dist/ta/dema.js +72 -0
  563. package/dist/ta/dema.js.map +1 -0
  564. package/dist/ta/dmi.d.ts +36 -0
  565. package/dist/ta/dmi.d.ts.map +1 -0
  566. package/dist/ta/dmi.js +107 -0
  567. package/dist/ta/dmi.js.map +1 -0
  568. package/dist/ta/donchian.d.ts +29 -0
  569. package/dist/ta/donchian.d.ts.map +1 -0
  570. package/dist/ta/donchian.js +93 -0
  571. package/dist/ta/donchian.js.map +1 -0
  572. package/dist/ta/dpo.d.ts +25 -0
  573. package/dist/ta/dpo.d.ts.map +1 -0
  574. package/dist/ta/dpo.js +111 -0
  575. package/dist/ta/dpo.js.map +1 -0
  576. package/dist/ta/ema.d.ts +27 -0
  577. package/dist/ta/ema.d.ts.map +1 -0
  578. package/dist/ta/ema.js +116 -0
  579. package/dist/ta/ema.js.map +1 -0
  580. package/dist/ta/envelope.d.ts +29 -0
  581. package/dist/ta/envelope.d.ts.map +1 -0
  582. package/dist/ta/envelope.js +119 -0
  583. package/dist/ta/envelope.js.map +1 -0
  584. package/dist/ta/eom.d.ts +35 -0
  585. package/dist/ta/eom.d.ts.map +1 -0
  586. package/dist/ta/eom.js +185 -0
  587. package/dist/ta/eom.js.map +1 -0
  588. package/dist/ta/fisher.d.ts +33 -0
  589. package/dist/ta/fisher.d.ts.map +1 -0
  590. package/dist/ta/fisher.js +174 -0
  591. package/dist/ta/fisher.js.map +1 -0
  592. package/dist/ta/fixedRangeVolumeProfile.d.ts +30 -0
  593. package/dist/ta/fixedRangeVolumeProfile.d.ts.map +1 -0
  594. package/dist/ta/fixedRangeVolumeProfile.js +141 -0
  595. package/dist/ta/fixedRangeVolumeProfile.js.map +1 -0
  596. package/dist/ta/highest.d.ts +21 -0
  597. package/dist/ta/highest.d.ts.map +1 -0
  598. package/dist/ta/highest.js +131 -0
  599. package/dist/ta/highest.js.map +1 -0
  600. package/dist/ta/historicalVolatility.d.ts +28 -0
  601. package/dist/ta/historicalVolatility.d.ts.map +1 -0
  602. package/dist/ta/historicalVolatility.js +199 -0
  603. package/dist/ta/historicalVolatility.js.map +1 -0
  604. package/dist/ta/hma.d.ts +28 -0
  605. package/dist/ta/hma.d.ts.map +1 -0
  606. package/dist/ta/hma.js +64 -0
  607. package/dist/ta/hma.js.map +1 -0
  608. package/dist/ta/ichimoku.d.ts +42 -0
  609. package/dist/ta/ichimoku.d.ts.map +1 -0
  610. package/dist/ta/ichimoku.js +188 -0
  611. package/dist/ta/ichimoku.js.map +1 -0
  612. package/dist/ta/index.d.ts +5 -0
  613. package/dist/ta/index.d.ts.map +1 -0
  614. package/dist/ta/index.js +5 -0
  615. package/dist/ta/index.js.map +1 -0
  616. package/dist/ta/kama.d.ts +35 -0
  617. package/dist/ta/kama.d.ts.map +1 -0
  618. package/dist/ta/kama.js +141 -0
  619. package/dist/ta/kama.js.map +1 -0
  620. package/dist/ta/keltner.d.ts +31 -0
  621. package/dist/ta/keltner.d.ts.map +1 -0
  622. package/dist/ta/keltner.js +125 -0
  623. package/dist/ta/keltner.js.map +1 -0
  624. package/dist/ta/klinger.d.ts +32 -0
  625. package/dist/ta/klinger.d.ts.map +1 -0
  626. package/dist/ta/klinger.js +165 -0
  627. package/dist/ta/klinger.js.map +1 -0
  628. package/dist/ta/kst.d.ts +31 -0
  629. package/dist/ta/kst.d.ts.map +1 -0
  630. package/dist/ta/kst.js +139 -0
  631. package/dist/ta/kst.js.map +1 -0
  632. package/dist/ta/lib/adxFromDi.d.ts +29 -0
  633. package/dist/ta/lib/adxFromDi.d.ts.map +1 -0
  634. package/dist/ta/lib/adxFromDi.js +72 -0
  635. package/dist/ta/lib/adxFromDi.js.map +1 -0
  636. package/dist/ta/lib/applyOffset.d.ts +19 -0
  637. package/dist/ta/lib/applyOffset.d.ts.map +1 -0
  638. package/dist/ta/lib/applyOffset.js +38 -0
  639. package/dist/ta/lib/applyOffset.js.map +1 -0
  640. package/dist/ta/lib/computeMa.d.ts +25 -0
  641. package/dist/ta/lib/computeMa.d.ts.map +1 -0
  642. package/dist/ta/lib/computeMa.js +43 -0
  643. package/dist/ta/lib/computeMa.js.map +1 -0
  644. package/dist/ta/lib/computeMaOfFloat64.d.ts +24 -0
  645. package/dist/ta/lib/computeMaOfFloat64.d.ts.map +1 -0
  646. package/dist/ta/lib/computeMaOfFloat64.js +45 -0
  647. package/dist/ta/lib/computeMaOfFloat64.js.map +1 -0
  648. package/dist/ta/lib/directionalState.d.ts +90 -0
  649. package/dist/ta/lib/directionalState.d.ts.map +1 -0
  650. package/dist/ta/lib/directionalState.js +204 -0
  651. package/dist/ta/lib/directionalState.js.map +1 -0
  652. package/dist/ta/lib/donchianMid.d.ts +21 -0
  653. package/dist/ta/lib/donchianMid.d.ts.map +1 -0
  654. package/dist/ta/lib/donchianMid.js +56 -0
  655. package/dist/ta/lib/donchianMid.js.map +1 -0
  656. package/dist/ta/lib/emaFloat64.d.ts +22 -0
  657. package/dist/ta/lib/emaFloat64.d.ts.map +1 -0
  658. package/dist/ta/lib/emaFloat64.js +60 -0
  659. package/dist/ta/lib/emaFloat64.js.map +1 -0
  660. package/dist/ta/lib/linearRegression.d.ts +50 -0
  661. package/dist/ta/lib/linearRegression.d.ts.map +1 -0
  662. package/dist/ta/lib/linearRegression.js +86 -0
  663. package/dist/ta/lib/linearRegression.js.map +1 -0
  664. package/dist/ta/lib/maTypes.d.ts +37 -0
  665. package/dist/ta/lib/maTypes.d.ts.map +1 -0
  666. package/dist/ta/lib/maTypes.js +4 -0
  667. package/dist/ta/lib/maTypes.js.map +1 -0
  668. package/dist/ta/lib/pearson.d.ts +31 -0
  669. package/dist/ta/lib/pearson.d.ts.map +1 -0
  670. package/dist/ta/lib/pearson.js +79 -0
  671. package/dist/ta/lib/pearson.js.map +1 -0
  672. package/dist/ta/lib/pickCandleSource.d.ts +24 -0
  673. package/dist/ta/lib/pickCandleSource.d.ts.map +1 -0
  674. package/dist/ta/lib/pickCandleSource.js +45 -0
  675. package/dist/ta/lib/pickCandleSource.js.map +1 -0
  676. package/dist/ta/lib/readSourceField.d.ts +29 -0
  677. package/dist/ta/lib/readSourceField.d.ts.map +1 -0
  678. package/dist/ta/lib/readSourceField.js +37 -0
  679. package/dist/ta/lib/readSourceField.js.map +1 -0
  680. package/dist/ta/lib/rollingStddev.d.ts +22 -0
  681. package/dist/ta/lib/rollingStddev.d.ts.map +1 -0
  682. package/dist/ta/lib/rollingStddev.js +60 -0
  683. package/dist/ta/lib/rollingStddev.js.map +1 -0
  684. package/dist/ta/lib/smaFloat64.d.ts +20 -0
  685. package/dist/ta/lib/smaFloat64.d.ts.map +1 -0
  686. package/dist/ta/lib/smaFloat64.js +59 -0
  687. package/dist/ta/lib/smaFloat64.js.map +1 -0
  688. package/dist/ta/lib/smmaFloat64.d.ts +23 -0
  689. package/dist/ta/lib/smmaFloat64.d.ts.map +1 -0
  690. package/dist/ta/lib/smmaFloat64.js +60 -0
  691. package/dist/ta/lib/smmaFloat64.js.map +1 -0
  692. package/dist/ta/lib/sourceValue.d.ts +31 -0
  693. package/dist/ta/lib/sourceValue.d.ts.map +1 -0
  694. package/dist/ta/lib/sourceValue.js +21 -0
  695. package/dist/ta/lib/sourceValue.js.map +1 -0
  696. package/dist/ta/lib/trSeries.d.ts +48 -0
  697. package/dist/ta/lib/trSeries.d.ts.map +1 -0
  698. package/dist/ta/lib/trSeries.js +81 -0
  699. package/dist/ta/lib/trSeries.js.map +1 -0
  700. package/dist/ta/lib/volume-profile/bucketEdges.d.ts +14 -0
  701. package/dist/ta/lib/volume-profile/bucketEdges.d.ts.map +1 -0
  702. package/dist/ta/lib/volume-profile/bucketEdges.js +42 -0
  703. package/dist/ta/lib/volume-profile/bucketEdges.js.map +1 -0
  704. package/dist/ta/lib/volume-profile/bucketizeVolume.d.ts +26 -0
  705. package/dist/ta/lib/volume-profile/bucketizeVolume.d.ts.map +1 -0
  706. package/dist/ta/lib/volume-profile/bucketizeVolume.js +115 -0
  707. package/dist/ta/lib/volume-profile/bucketizeVolume.js.map +1 -0
  708. package/dist/ta/lib/volume-profile/developingSeries.d.ts +35 -0
  709. package/dist/ta/lib/volume-profile/developingSeries.d.ts.map +1 -0
  710. package/dist/ta/lib/volume-profile/developingSeries.js +97 -0
  711. package/dist/ta/lib/volume-profile/developingSeries.js.map +1 -0
  712. package/dist/ta/lib/volume-profile/index.d.ts +11 -0
  713. package/dist/ta/lib/volume-profile/index.d.ts.map +1 -0
  714. package/dist/ta/lib/volume-profile/index.js +15 -0
  715. package/dist/ta/lib/volume-profile/index.js.map +1 -0
  716. package/dist/ta/lib/volume-profile/intercept.d.ts +15 -0
  717. package/dist/ta/lib/volume-profile/intercept.d.ts.map +1 -0
  718. package/dist/ta/lib/volume-profile/intercept.js +31 -0
  719. package/dist/ta/lib/volume-profile/intercept.js.map +1 -0
  720. package/dist/ta/lib/volume-profile/scaffold.d.ts +165 -0
  721. package/dist/ta/lib/volume-profile/scaffold.d.ts.map +1 -0
  722. package/dist/ta/lib/volume-profile/scaffold.js +209 -0
  723. package/dist/ta/lib/volume-profile/scaffold.js.map +1 -0
  724. package/dist/ta/lib/volume-profile/tooHeavy.d.ts +45 -0
  725. package/dist/ta/lib/volume-profile/tooHeavy.d.ts.map +1 -0
  726. package/dist/ta/lib/volume-profile/tooHeavy.js +92 -0
  727. package/dist/ta/lib/volume-profile/tooHeavy.js.map +1 -0
  728. package/dist/ta/lib/volume-profile/types.d.ts +188 -0
  729. package/dist/ta/lib/volume-profile/types.d.ts.map +1 -0
  730. package/dist/ta/lib/volume-profile/types.js +17 -0
  731. package/dist/ta/lib/volume-profile/types.js.map +1 -0
  732. package/dist/ta/lib/volume-profile/valueArea.d.ts +14 -0
  733. package/dist/ta/lib/volume-profile/valueArea.d.ts.map +1 -0
  734. package/dist/ta/lib/volume-profile/valueArea.js +90 -0
  735. package/dist/ta/lib/volume-profile/valueArea.js.map +1 -0
  736. package/dist/ta/lib/volume-profile/volumeProfileShared.d.ts +35 -0
  737. package/dist/ta/lib/volume-profile/volumeProfileShared.d.ts.map +1 -0
  738. package/dist/ta/lib/volume-profile/volumeProfileShared.js +136 -0
  739. package/dist/ta/lib/volume-profile/volumeProfileShared.js.map +1 -0
  740. package/dist/ta/lib/vwmaFloat64.d.ts +28 -0
  741. package/dist/ta/lib/vwmaFloat64.d.ts.map +1 -0
  742. package/dist/ta/lib/vwmaFloat64.js +70 -0
  743. package/dist/ta/lib/vwmaFloat64.js.map +1 -0
  744. package/dist/ta/lib/wilderDirectional.d.ts +53 -0
  745. package/dist/ta/lib/wilderDirectional.d.ts.map +1 -0
  746. package/dist/ta/lib/wilderDirectional.js +121 -0
  747. package/dist/ta/lib/wilderDirectional.js.map +1 -0
  748. package/dist/ta/lib/wilderSmoothing.d.ts +16 -0
  749. package/dist/ta/lib/wilderSmoothing.d.ts.map +1 -0
  750. package/dist/ta/lib/wilderSmoothing.js +26 -0
  751. package/dist/ta/lib/wilderSmoothing.js.map +1 -0
  752. package/dist/ta/lib/wmaFloat64.d.ts +22 -0
  753. package/dist/ta/lib/wmaFloat64.d.ts.map +1 -0
  754. package/dist/ta/lib/wmaFloat64.js +61 -0
  755. package/dist/ta/lib/wmaFloat64.js.map +1 -0
  756. package/dist/ta/lowest.d.ts +20 -0
  757. package/dist/ta/lowest.d.ts.map +1 -0
  758. package/dist/ta/lowest.js +113 -0
  759. package/dist/ta/lowest.js.map +1 -0
  760. package/dist/ta/lsma.d.ts +31 -0
  761. package/dist/ta/lsma.d.ts.map +1 -0
  762. package/dist/ta/lsma.js +127 -0
  763. package/dist/ta/lsma.js.map +1 -0
  764. package/dist/ta/maRibbon.d.ts +52 -0
  765. package/dist/ta/maRibbon.d.ts.map +1 -0
  766. package/dist/ta/maRibbon.js +125 -0
  767. package/dist/ta/maRibbon.js.map +1 -0
  768. package/dist/ta/macd.d.ts +30 -0
  769. package/dist/ta/macd.d.ts.map +1 -0
  770. package/dist/ta/macd.js +122 -0
  771. package/dist/ta/macd.js.map +1 -0
  772. package/dist/ta/massIndex.d.ts +29 -0
  773. package/dist/ta/massIndex.d.ts.map +1 -0
  774. package/dist/ta/massIndex.js +149 -0
  775. package/dist/ta/massIndex.js.map +1 -0
  776. package/dist/ta/mcginley.d.ts +26 -0
  777. package/dist/ta/mcginley.d.ts.map +1 -0
  778. package/dist/ta/mcginley.js +118 -0
  779. package/dist/ta/mcginley.js.map +1 -0
  780. package/dist/ta/median.d.ts +24 -0
  781. package/dist/ta/median.d.ts.map +1 -0
  782. package/dist/ta/median.js +112 -0
  783. package/dist/ta/median.js.map +1 -0
  784. package/dist/ta/mfi.d.ts +38 -0
  785. package/dist/ta/mfi.d.ts.map +1 -0
  786. package/dist/ta/mfi.js +152 -0
  787. package/dist/ta/mfi.js.map +1 -0
  788. package/dist/ta/momentum.d.ts +21 -0
  789. package/dist/ta/momentum.d.ts.map +1 -0
  790. package/dist/ta/momentum.js +46 -0
  791. package/dist/ta/momentum.js.map +1 -0
  792. package/dist/ta/netVolume.d.ts +31 -0
  793. package/dist/ta/netVolume.d.ts.map +1 -0
  794. package/dist/ta/netVolume.js +118 -0
  795. package/dist/ta/netVolume.js.map +1 -0
  796. package/dist/ta/nvi.d.ts +35 -0
  797. package/dist/ta/nvi.d.ts.map +1 -0
  798. package/dist/ta/nvi.js +140 -0
  799. package/dist/ta/nvi.js.map +1 -0
  800. package/dist/ta/nz.d.ts +17 -0
  801. package/dist/ta/nz.d.ts.map +1 -0
  802. package/dist/ta/nz.js +25 -0
  803. package/dist/ta/nz.js.map +1 -0
  804. package/dist/ta/obv.d.ts +25 -0
  805. package/dist/ta/obv.d.ts.map +1 -0
  806. package/dist/ta/obv.js +109 -0
  807. package/dist/ta/obv.js.map +1 -0
  808. package/dist/ta/persistence.d.ts +40 -0
  809. package/dist/ta/persistence.d.ts.map +1 -0
  810. package/dist/ta/persistence.js +306 -0
  811. package/dist/ta/persistence.js.map +1 -0
  812. package/dist/ta/pivotsHighLow.d.ts +41 -0
  813. package/dist/ta/pivotsHighLow.d.ts.map +1 -0
  814. package/dist/ta/pivotsHighLow.js +191 -0
  815. package/dist/ta/pivotsHighLow.js.map +1 -0
  816. package/dist/ta/pivotsStandard.d.ts +46 -0
  817. package/dist/ta/pivotsStandard.d.ts.map +1 -0
  818. package/dist/ta/pivotsStandard.js +323 -0
  819. package/dist/ta/pivotsStandard.js.map +1 -0
  820. package/dist/ta/pmo.d.ts +31 -0
  821. package/dist/ta/pmo.d.ts.map +1 -0
  822. package/dist/ta/pmo.js +185 -0
  823. package/dist/ta/pmo.js.map +1 -0
  824. package/dist/ta/ppo.d.ts +37 -0
  825. package/dist/ta/ppo.d.ts.map +1 -0
  826. package/dist/ta/ppo.js +130 -0
  827. package/dist/ta/ppo.js.map +1 -0
  828. package/dist/ta/psar.d.ts +36 -0
  829. package/dist/ta/psar.d.ts.map +1 -0
  830. package/dist/ta/psar.js +283 -0
  831. package/dist/ta/psar.js.map +1 -0
  832. package/dist/ta/pvi.d.ts +32 -0
  833. package/dist/ta/pvi.d.ts.map +1 -0
  834. package/dist/ta/pvi.js +127 -0
  835. package/dist/ta/pvi.js.map +1 -0
  836. package/dist/ta/pvo.d.ts +34 -0
  837. package/dist/ta/pvo.d.ts.map +1 -0
  838. package/dist/ta/pvo.js +123 -0
  839. package/dist/ta/pvo.js.map +1 -0
  840. package/dist/ta/pvt.d.ts +26 -0
  841. package/dist/ta/pvt.d.ts.map +1 -0
  842. package/dist/ta/pvt.js +128 -0
  843. package/dist/ta/pvt.js.map +1 -0
  844. package/dist/ta/registry.d.ts +395 -0
  845. package/dist/ta/registry.d.ts.map +1 -0
  846. package/dist/ta/registry.js +440 -0
  847. package/dist/ta/registry.js.map +1 -0
  848. package/dist/ta/roc.d.ts +19 -0
  849. package/dist/ta/roc.d.ts.map +1 -0
  850. package/dist/ta/roc.js +80 -0
  851. package/dist/ta/roc.js.map +1 -0
  852. package/dist/ta/rsi.d.ts +28 -0
  853. package/dist/ta/rsi.d.ts.map +1 -0
  854. package/dist/ta/rsi.js +166 -0
  855. package/dist/ta/rsi.js.map +1 -0
  856. package/dist/ta/rvgi.d.ts +27 -0
  857. package/dist/ta/rvgi.d.ts.map +1 -0
  858. package/dist/ta/rvgi.js +139 -0
  859. package/dist/ta/rvgi.js.map +1 -0
  860. package/dist/ta/rvi.d.ts +31 -0
  861. package/dist/ta/rvi.d.ts.map +1 -0
  862. package/dist/ta/rvi.js +195 -0
  863. package/dist/ta/rvi.js.map +1 -0
  864. package/dist/ta/sessionVolumeProfile.d.ts +23 -0
  865. package/dist/ta/sessionVolumeProfile.d.ts.map +1 -0
  866. package/dist/ta/sessionVolumeProfile.js +164 -0
  867. package/dist/ta/sessionVolumeProfile.js.map +1 -0
  868. package/dist/ta/sma.d.ts +23 -0
  869. package/dist/ta/sma.d.ts.map +1 -0
  870. package/dist/ta/sma.js +112 -0
  871. package/dist/ta/sma.js.map +1 -0
  872. package/dist/ta/smi.d.ts +41 -0
  873. package/dist/ta/smi.d.ts.map +1 -0
  874. package/dist/ta/smi.js +134 -0
  875. package/dist/ta/smi.js.map +1 -0
  876. package/dist/ta/smma.d.ts +26 -0
  877. package/dist/ta/smma.d.ts.map +1 -0
  878. package/dist/ta/smma.js +105 -0
  879. package/dist/ta/smma.js.map +1 -0
  880. package/dist/ta/stdev.d.ts +25 -0
  881. package/dist/ta/stdev.d.ts.map +1 -0
  882. package/dist/ta/stdev.js +125 -0
  883. package/dist/ta/stdev.js.map +1 -0
  884. package/dist/ta/stoch.d.ts +32 -0
  885. package/dist/ta/stoch.d.ts.map +1 -0
  886. package/dist/ta/stoch.js +91 -0
  887. package/dist/ta/stoch.js.map +1 -0
  888. package/dist/ta/stochRsi.d.ts +35 -0
  889. package/dist/ta/stochRsi.d.ts.map +1 -0
  890. package/dist/ta/stochRsi.js +98 -0
  891. package/dist/ta/stochRsi.js.map +1 -0
  892. package/dist/ta/supertrend.d.ts +34 -0
  893. package/dist/ta/supertrend.d.ts.map +1 -0
  894. package/dist/ta/supertrend.js +181 -0
  895. package/dist/ta/supertrend.js.map +1 -0
  896. package/dist/ta/tema.d.ts +27 -0
  897. package/dist/ta/tema.d.ts.map +1 -0
  898. package/dist/ta/tema.js +75 -0
  899. package/dist/ta/tema.js.map +1 -0
  900. package/dist/ta/trendStrengthIndex.d.ts +35 -0
  901. package/dist/ta/trendStrengthIndex.d.ts.map +1 -0
  902. package/dist/ta/trendStrengthIndex.js +183 -0
  903. package/dist/ta/trendStrengthIndex.js.map +1 -0
  904. package/dist/ta/trix.d.ts +34 -0
  905. package/dist/ta/trix.d.ts.map +1 -0
  906. package/dist/ta/trix.js +135 -0
  907. package/dist/ta/trix.js.map +1 -0
  908. package/dist/ta/tsi.d.ts +37 -0
  909. package/dist/ta/tsi.d.ts.map +1 -0
  910. package/dist/ta/tsi.js +127 -0
  911. package/dist/ta/tsi.js.map +1 -0
  912. package/dist/ta/ulcerIndex.d.ts +34 -0
  913. package/dist/ta/ulcerIndex.d.ts.map +1 -0
  914. package/dist/ta/ulcerIndex.js +120 -0
  915. package/dist/ta/ulcerIndex.js.map +1 -0
  916. package/dist/ta/ultimateOsc.d.ts +27 -0
  917. package/dist/ta/ultimateOsc.d.ts.map +1 -0
  918. package/dist/ta/ultimateOsc.js +174 -0
  919. package/dist/ta/ultimateOsc.js.map +1 -0
  920. package/dist/ta/valuewhen.d.ts +27 -0
  921. package/dist/ta/valuewhen.d.ts.map +1 -0
  922. package/dist/ta/valuewhen.js +115 -0
  923. package/dist/ta/valuewhen.js.map +1 -0
  924. package/dist/ta/visibleRangeVolumeProfile.d.ts +26 -0
  925. package/dist/ta/visibleRangeVolumeProfile.d.ts.map +1 -0
  926. package/dist/ta/visibleRangeVolumeProfile.js +107 -0
  927. package/dist/ta/visibleRangeVolumeProfile.js.map +1 -0
  928. package/dist/ta/vol.d.ts +23 -0
  929. package/dist/ta/vol.d.ts.map +1 -0
  930. package/dist/ta/vol.js +58 -0
  931. package/dist/ta/vol.js.map +1 -0
  932. package/dist/ta/volatilityStop.d.ts +36 -0
  933. package/dist/ta/volatilityStop.d.ts.map +1 -0
  934. package/dist/ta/volatilityStop.js +203 -0
  935. package/dist/ta/volatilityStop.js.map +1 -0
  936. package/dist/ta/vortex.d.ts +30 -0
  937. package/dist/ta/vortex.d.ts.map +1 -0
  938. package/dist/ta/vortex.js +210 -0
  939. package/dist/ta/vortex.js.map +1 -0
  940. package/dist/ta/vwap.d.ts +33 -0
  941. package/dist/ta/vwap.d.ts.map +1 -0
  942. package/dist/ta/vwap.js +138 -0
  943. package/dist/ta/vwap.js.map +1 -0
  944. package/dist/ta/vwma.d.ts +24 -0
  945. package/dist/ta/vwma.d.ts.map +1 -0
  946. package/dist/ta/vwma.js +112 -0
  947. package/dist/ta/vwma.js.map +1 -0
  948. package/dist/ta/williamsFractal.d.ts +43 -0
  949. package/dist/ta/williamsFractal.d.ts.map +1 -0
  950. package/dist/ta/williamsFractal.js +171 -0
  951. package/dist/ta/williamsFractal.js.map +1 -0
  952. package/dist/ta/williamsR.d.ts +24 -0
  953. package/dist/ta/williamsR.d.ts.map +1 -0
  954. package/dist/ta/williamsR.js +75 -0
  955. package/dist/ta/williamsR.js.map +1 -0
  956. package/dist/ta/wma.d.ts +24 -0
  957. package/dist/ta/wma.d.ts.map +1 -0
  958. package/dist/ta/wma.js +106 -0
  959. package/dist/ta/wma.js.map +1 -0
  960. package/dist/ta/zigZag.d.ts +40 -0
  961. package/dist/ta/zigZag.d.ts.map +1 -0
  962. package/dist/ta/zigZag.js +296 -0
  963. package/dist/ta/zigZag.js.map +1 -0
  964. package/dist/views/barstateView.d.ts +44 -0
  965. package/dist/views/barstateView.d.ts.map +1 -0
  966. package/dist/views/barstateView.js +27 -0
  967. package/dist/views/barstateView.js.map +1 -0
  968. package/dist/views/index.d.ts +37 -0
  969. package/dist/views/index.d.ts.map +1 -0
  970. package/dist/views/index.js +28 -0
  971. package/dist/views/index.js.map +1 -0
  972. package/dist/views/refreshRuntimeViews.d.ts +15 -0
  973. package/dist/views/refreshRuntimeViews.d.ts.map +1 -0
  974. package/dist/views/refreshRuntimeViews.js +29 -0
  975. package/dist/views/refreshRuntimeViews.js.map +1 -0
  976. package/dist/views/symInfoView.d.ts +42 -0
  977. package/dist/views/symInfoView.d.ts.map +1 -0
  978. package/dist/views/symInfoView.js +32 -0
  979. package/dist/views/symInfoView.js.map +1 -0
  980. package/dist/views/timeframeView.d.ts +17 -0
  981. package/dist/views/timeframeView.d.ts.map +1 -0
  982. package/dist/views/timeframeView.js +47 -0
  983. package/dist/views/timeframeView.js.map +1 -0
  984. package/package.json +46 -0
@@ -0,0 +1,79 @@
1
+ // Copyright (c) 2026 Invinite. Licensed under the MIT License.
2
+ // See the LICENSE file in the repo root for full license text.
3
+ //
4
+ // Ported from invinite/src/components/trading-chart/indicators/lib/pearson.ts
5
+ // (commit 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite).
6
+ // Re-licensed MIT for chartlang. See PLAN.md §3.1 for the
7
+ // provenance contract; the math is the reference, the code style is not.
8
+ /**
9
+ * Rolling Pearson correlation coefficient between two equal-length
10
+ * series over each trailing `length`-bar window. Output values lie
11
+ * in `[-1, +1]` (clamped to guard against floating-point overshoot);
12
+ * `+1` is perfect positive correlation, `-1` perfect anti-correlation,
13
+ * `0` no linear relationship.
14
+ *
15
+ * Warmup `[0, length - 2]` is `NaN`. Any non-finite slot inside the
16
+ * window, or a window whose variance on either side is zero (a flat
17
+ * window — correlation undefined), yields `NaN`. Mismatched input
18
+ * lengths or `length < 2` returns an all-NaN buffer.
19
+ *
20
+ * Invinite's `pearson.ts` correlates a series against the bar index
21
+ * (Trend Strength Index formula). This generalisation takes two
22
+ * arbitrary series so the same helper backs `ta.trendStrengthIndex`
23
+ * (pass `b = [0, 1, ..., n-1]`) and Phase-5's `correlationCoeff`
24
+ * (pass a secondary symbol's close).
25
+ *
26
+ * @formula meanA = Σa/N ; meanB = Σb/N ;
27
+ * num = Σ((a - meanA) * (b - meanB)) ;
28
+ * den = sqrt(Σ(a - meanA)² * Σ(b - meanB)²) ;
29
+ * r = clamp(num / den, -1, 1)
30
+ * @warmup length - 1
31
+ * @since 0.2
32
+ * @stable
33
+ * @example
34
+ * // import { pearson } from "./pearson";
35
+ * // const r = pearson(seriesA, seriesB, 20);
36
+ */
37
+ export function pearson(a, b, length) {
38
+ const n = a.length;
39
+ const out = new Float64Array(n);
40
+ out.fill(Number.NaN);
41
+ if (length < 2 || n === 0 || b.length !== n || n < length)
42
+ return out;
43
+ for (let i = length - 1; i < n; i += 1) {
44
+ const startIdx = i - length + 1;
45
+ let sumA = 0;
46
+ let sumB = 0;
47
+ let windowFinite = true;
48
+ for (let j = 0; j < length; j += 1) {
49
+ const av = a[startIdx + j];
50
+ const bv = b[startIdx + j];
51
+ if (!Number.isFinite(av) || !Number.isFinite(bv)) {
52
+ windowFinite = false;
53
+ break;
54
+ }
55
+ sumA += av;
56
+ sumB += bv;
57
+ }
58
+ if (!windowFinite)
59
+ continue;
60
+ const meanA = sumA / length;
61
+ const meanB = sumB / length;
62
+ let sumAB = 0;
63
+ let sumAA = 0;
64
+ let sumBB = 0;
65
+ for (let j = 0; j < length; j += 1) {
66
+ const dA = a[startIdx + j] - meanA;
67
+ const dB = b[startIdx + j] - meanB;
68
+ sumAB += dA * dB;
69
+ sumAA += dA * dA;
70
+ sumBB += dB * dB;
71
+ }
72
+ if (sumAA === 0 || sumBB === 0)
73
+ continue;
74
+ const r = sumAB / Math.sqrt(sumAA * sumBB);
75
+ out[i] = r < -1 ? -1 : r > 1 ? 1 : r;
76
+ }
77
+ return out;
78
+ }
79
+ //# sourceMappingURL=pearson.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pearson.js","sourceRoot":"","sources":["../../../src/ta/lib/pearson.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,8EAA8E;AAC9E,mEAAmE;AACnE,0DAA0D;AAC1D,yEAAyE;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,OAAO,CAAC,CAAe,EAAE,CAAe,EAAE,MAAc;IACpE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACnB,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAChC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM;QAAE,OAAO,GAAG,CAAC;IAEtE,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;QAChC,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAC3B,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/C,YAAY,GAAG,KAAK,CAAC;gBACrB,MAAM;YACV,CAAC;YACD,IAAI,IAAI,EAAE,CAAC;YACX,IAAI,IAAI,EAAE,CAAC;QACf,CAAC;QACD,IAAI,CAAC,YAAY;YAAE,SAAS;QAE5B,MAAM,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC;QAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YACnC,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YACnC,KAAK,IAAI,EAAE,GAAG,EAAE,CAAC;YACjB,KAAK,IAAI,EAAE,GAAG,EAAE,CAAC;YACjB,KAAK,IAAI,EAAE,GAAG,EAAE,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;YAAE,SAAS;QAEzC,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;QAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { Bar } from "@invinite-org/chartlang-core";
2
+ import type { SourceField } from "./readSourceField.js";
3
+ /**
4
+ * Read one of the eight canonical source values off a `Bar`. The
5
+ * four derived fields (`hl2` / `hlc3` / `ohlc4` / `hlcc4`) live on
6
+ * the chartlang `Bar` type as readable scalars — the runtime fills
7
+ * them per close in `onBarClose` / `onBarTick`.
8
+ *
9
+ * @formula hl2 = (high + low) / 2 ; hlc3 = (high + low + close) / 3 ;
10
+ * ohlc4 = (open + high + low + close) / 4 ;
11
+ * hlcc4 = (high + low + close + close) / 4
12
+ * @since 0.1
13
+ * @stable
14
+ * @example
15
+ * // import { pickCandleSource } from "./pickCandleSource";
16
+ * // const px = pickCandleSource(bar, "hl2");
17
+ */
18
+ export declare function pickCandleSource(bar: Bar | (Bar & {
19
+ hl2: number;
20
+ hlc3: number;
21
+ ohlc4: number;
22
+ hlcc4: number;
23
+ }), source: SourceField): number;
24
+ //# sourceMappingURL=pickCandleSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pickCandleSource.d.ts","sourceRoot":"","sources":["../../../src/ta/lib/pickCandleSource.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,EAC9E,MAAM,EAAE,WAAW,GACpB,MAAM,CAgBR"}
@@ -0,0 +1,45 @@
1
+ // Copyright (c) 2026 Invinite. Licensed under the MIT License.
2
+ // See the LICENSE file in the repo root for full license text.
3
+ //
4
+ // Ported from invinite/src/components/trading-chart/indicators/lib/pick-candle-source.ts
5
+ // (commit d2d1043c1b039f66d2f3674526d303d31cf2f1e0, © Invinite).
6
+ // Re-licensed MIT for chartlang. See PLAN.md §3.1 for the
7
+ // provenance contract; the math is the reference, the code style is not.
8
+ // Structural choice: the chartlang runtime pre-computes the four
9
+ // derived sources on `BarView` per close (`hl2` / `hlc3` / `ohlc4` /
10
+ // `hlcc4`), so this helper is a plain field read — invinite computed
11
+ // the derived values inline because its `ChartCandle` shape carries
12
+ // only the raw OHLC fields.
13
+ /**
14
+ * Read one of the eight canonical source values off a `Bar`. The
15
+ * four derived fields (`hl2` / `hlc3` / `ohlc4` / `hlcc4`) live on
16
+ * the chartlang `Bar` type as readable scalars — the runtime fills
17
+ * them per close in `onBarClose` / `onBarTick`.
18
+ *
19
+ * @formula hl2 = (high + low) / 2 ; hlc3 = (high + low + close) / 3 ;
20
+ * ohlc4 = (open + high + low + close) / 4 ;
21
+ * hlcc4 = (high + low + close + close) / 4
22
+ * @since 0.1
23
+ * @stable
24
+ * @example
25
+ * // import { pickCandleSource } from "./pickCandleSource";
26
+ * // const px = pickCandleSource(bar, "hl2");
27
+ */
28
+ export function pickCandleSource(bar, source) {
29
+ switch (source) {
30
+ case "close":
31
+ case "high":
32
+ case "low":
33
+ case "open":
34
+ return bar[source];
35
+ case "hl2":
36
+ return (bar.high + bar.low) / 2;
37
+ case "hlc3":
38
+ return (bar.high + bar.low + bar.close) / 3;
39
+ case "ohlc4":
40
+ return (bar.open + bar.high + bar.low + bar.close) / 4;
41
+ case "hlcc4":
42
+ return (bar.high + bar.low + bar.close + bar.close) / 4;
43
+ }
44
+ }
45
+ //# sourceMappingURL=pickCandleSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pickCandleSource.js","sourceRoot":"","sources":["../../../src/ta/lib/pickCandleSource.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,yFAAyF;AACzF,mEAAmE;AACnE,0DAA0D;AAC1D,yEAAyE;AACzE,iEAAiE;AACjE,qEAAqE;AACrE,qEAAqE;AACrE,oEAAoE;AACpE,4BAA4B;AAM5B;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAC5B,GAA8E,EAC9E,MAAmB;IAEnB,QAAQ,MAAM,EAAE,CAAC;QACb,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,MAAM;YACP,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC;QACvB,KAAK,KAAK;YACN,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,KAAK,MAAM;YACP,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChD,KAAK,OAAO;YACR,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3D,KAAK,OAAO;YACR,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChE,CAAC;AACL,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * The eight canonical OHLC + derived source fields every `ta.*`
3
+ * primitive accepts as a `source` field. Four raw OHLC keys plus
4
+ * four TradingView-conforming derived averages. The derived values
5
+ * are pre-computed by the runtime's execution loop and live on
6
+ * `StreamState.bar` / `StreamState.seriesViews` — `pickCandleSource`
7
+ * just reads them.
8
+ *
9
+ * @formula N/A — string-literal union
10
+ * @since 0.1
11
+ * @stable
12
+ * @example
13
+ * // type S = SourceField; // "close" | "hl2" | ...
14
+ */
15
+ export type SourceField = "open" | "high" | "low" | "close" | "hl2" | "hlc3" | "ohlc4" | "hlcc4";
16
+ /**
17
+ * Coerce a loose params bag's `source` entry to one of the eight
18
+ * canonical fields. Anything not in the set falls through to
19
+ * `fallback` (default `"close"` — matches Pine).
20
+ *
21
+ * @formula params.source ∈ SOURCE_FIELDS ? params.source : fallback
22
+ * @since 0.1
23
+ * @stable
24
+ * @example
25
+ * // import { readSourceField } from "./readSourceField";
26
+ * // const s = readSourceField({ source: "hl2" }); // "hl2"
27
+ */
28
+ export declare function readSourceField(params: Record<string, unknown>, fallback?: SourceField): SourceField;
29
+ //# sourceMappingURL=readSourceField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readSourceField.d.ts","sourceRoot":"","sources":["../../../src/ta/lib/readSourceField.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAajG;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,QAAQ,GAAE,WAAqB,GAChC,WAAW,CAMb"}
@@ -0,0 +1,37 @@
1
+ // Copyright (c) 2026 Invinite. Licensed under the MIT License.
2
+ // See the LICENSE file in the repo root for full license text.
3
+ //
4
+ // Ported from invinite/src/components/trading-chart/indicators/lib/read-source-field.ts
5
+ // (commit d2d1043c1b039f66d2f3674526d303d31cf2f1e0, © Invinite).
6
+ // Re-licensed MIT for chartlang. See PLAN.md §3.1 for the
7
+ // provenance contract; the math is the reference, the code style is not.
8
+ const SOURCE_FIELDS = new Set([
9
+ "close",
10
+ "high",
11
+ "hl2",
12
+ "hlc3",
13
+ "hlcc4",
14
+ "low",
15
+ "ohlc4",
16
+ "open",
17
+ ]);
18
+ /**
19
+ * Coerce a loose params bag's `source` entry to one of the eight
20
+ * canonical fields. Anything not in the set falls through to
21
+ * `fallback` (default `"close"` — matches Pine).
22
+ *
23
+ * @formula params.source ∈ SOURCE_FIELDS ? params.source : fallback
24
+ * @since 0.1
25
+ * @stable
26
+ * @example
27
+ * // import { readSourceField } from "./readSourceField";
28
+ * // const s = readSourceField({ source: "hl2" }); // "hl2"
29
+ */
30
+ export function readSourceField(params, fallback = "close") {
31
+ const raw = params.source;
32
+ if (typeof raw === "string" && SOURCE_FIELDS.has(raw)) {
33
+ return raw;
34
+ }
35
+ return fallback;
36
+ }
37
+ //# sourceMappingURL=readSourceField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readSourceField.js","sourceRoot":"","sources":["../../../src/ta/lib/readSourceField.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,wFAAwF;AACxF,mEAAmE;AACnE,0DAA0D;AAC1D,yEAAyE;AAkBzE,MAAM,aAAa,GAA6B,IAAI,GAAG,CAAc;IACjE,OAAO;IACP,MAAM;IACN,KAAK;IACL,MAAM;IACN,OAAO;IACP,KAAK;IACL,OAAO;IACP,MAAM;CACT,CAAC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAC3B,MAA+B,EAC/B,WAAwB,OAAO;IAE/B,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,aAAa,CAAC,GAAG,CAAC,GAAkB,CAAC,EAAE,CAAC;QACnE,OAAO,GAAkB,CAAC;IAC9B,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Rolling standard deviation over each trailing `length`-bar window
3
+ * of a `Float64Array` input. The default `biased = true` matches
4
+ * invinite's BB math (population stddev, denominator `length`). Set
5
+ * `biased = false` for sample stddev (denominator `length − 1`,
6
+ * matches `StdevOpts.biased = false` from core).
7
+ *
8
+ * Warmup `[0, length − 2]` is `NaN`; any NaN inside the window
9
+ * yields `NaN` (no fill-forward — std dev of a partially defined
10
+ * window is undefined). Provides the full-recompute reference the
11
+ * `ta.stdev` primitive's property test asserts against.
12
+ *
13
+ * @formula μ = mean(input[i − length + 1 ..= i]) ;
14
+ * σ = sqrt(Σ(x − μ)² / N), N = length (biased) or length − 1 (sample)
15
+ * @since 0.1
16
+ * @stable
17
+ * @example
18
+ * // import { computeRollingStdDev } from "./rollingStddev";
19
+ * // const std = computeRollingStdDev(new Float64Array([1, 2, 3, 4]), 3);
20
+ */
21
+ export declare function computeRollingStdDev(input: Float64Array, length: number, biased?: boolean): Float64Array;
22
+ //# sourceMappingURL=rollingStddev.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollingStddev.d.ts","sourceRoot":"","sources":["../../../src/ta/lib/rollingStddev.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAChC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,UAAO,GACd,YAAY,CA6Bd"}
@@ -0,0 +1,60 @@
1
+ // Copyright (c) 2026 Invinite. Licensed under the MIT License.
2
+ // See the LICENSE file in the repo root for full license text.
3
+ //
4
+ // Ported from invinite/src/components/trading-chart/indicators/lib/rolling-stddev.ts
5
+ // (commit d2d1043c1b039f66d2f3674526d303d31cf2f1e0, © Invinite).
6
+ // Re-licensed MIT for chartlang. See PLAN.md §3.1 for the
7
+ // provenance contract; the math is the reference, the code style is not.
8
+ /**
9
+ * Rolling standard deviation over each trailing `length`-bar window
10
+ * of a `Float64Array` input. The default `biased = true` matches
11
+ * invinite's BB math (population stddev, denominator `length`). Set
12
+ * `biased = false` for sample stddev (denominator `length − 1`,
13
+ * matches `StdevOpts.biased = false` from core).
14
+ *
15
+ * Warmup `[0, length − 2]` is `NaN`; any NaN inside the window
16
+ * yields `NaN` (no fill-forward — std dev of a partially defined
17
+ * window is undefined). Provides the full-recompute reference the
18
+ * `ta.stdev` primitive's property test asserts against.
19
+ *
20
+ * @formula μ = mean(input[i − length + 1 ..= i]) ;
21
+ * σ = sqrt(Σ(x − μ)² / N), N = length (biased) or length − 1 (sample)
22
+ * @since 0.1
23
+ * @stable
24
+ * @example
25
+ * // import { computeRollingStdDev } from "./rollingStddev";
26
+ * // const std = computeRollingStdDev(new Float64Array([1, 2, 3, 4]), 3);
27
+ */
28
+ export function computeRollingStdDev(input, length, biased = true) {
29
+ const n = input.length;
30
+ const out = new Float64Array(n);
31
+ out.fill(Number.NaN);
32
+ if (length <= 0 || n === 0)
33
+ return out;
34
+ const denominator = biased ? length : length - 1;
35
+ if (denominator <= 0)
36
+ return out;
37
+ for (let i = length - 1; i < n; i += 1) {
38
+ let sum = 0;
39
+ let allFinite = true;
40
+ for (let j = i - length + 1; j <= i; j += 1) {
41
+ const v = input[j];
42
+ if (!Number.isFinite(v)) {
43
+ allFinite = false;
44
+ break;
45
+ }
46
+ sum += v;
47
+ }
48
+ if (!allFinite)
49
+ continue;
50
+ const mean = sum / length;
51
+ let sumSq = 0;
52
+ for (let j = i - length + 1; j <= i; j += 1) {
53
+ const d = input[j] - mean;
54
+ sumSq += d * d;
55
+ }
56
+ out[i] = Math.sqrt(sumSq / denominator);
57
+ }
58
+ return out;
59
+ }
60
+ //# sourceMappingURL=rollingStddev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollingStddev.js","sourceRoot":"","sources":["../../../src/ta/lib/rollingStddev.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,qFAAqF;AACrF,mEAAmE;AACnE,0DAA0D;AAC1D,yEAAyE;AAEzE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,oBAAoB,CAChC,KAAmB,EACnB,MAAc,EACd,MAAM,GAAG,IAAI;IAEb,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACvB,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAChC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACjD,IAAI,WAAW,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtB,SAAS,GAAG,KAAK,CAAC;gBAClB,MAAM;YACV,CAAC;YACD,GAAG,IAAI,CAAC,CAAC;QACb,CAAC;QACD,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,MAAM,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC;QAC1B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;QACD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Simple Moving Average over a `Float64Array` input. Walks past any
3
+ * leading-NaN prefix, then runs an O(N) rolling-sum SMA over the
4
+ * next `length` finite values. A mid-stream NaN holds the previous
5
+ * output forward (no re-seeding). The full-recompute form lives here
6
+ * so the runtime's `ta.sma` primitive (incremental) and the property
7
+ * / golden tests (reference-equivalent) share a single math source.
8
+ *
9
+ * Warmup `[0, length − 2]` is `NaN`; `out[length − 1]` is the first
10
+ * defined value.
11
+ *
12
+ * @formula out[i] = mean(input[i − length + 1 ..= i])
13
+ * @since 0.1
14
+ * @stable
15
+ * @example
16
+ * // import { computeSmaOfFloat64 } from "./smaFloat64";
17
+ * // const out = computeSmaOfFloat64(new Float64Array([1, 2, 3, 4]), 2);
18
+ */
19
+ export declare function computeSmaOfFloat64(input: Float64Array, length: number): Float64Array;
20
+ //# sourceMappingURL=smaFloat64.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smaFloat64.d.ts","sourceRoot":"","sources":["../../../src/ta/lib/smaFloat64.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,CAiCrF"}
@@ -0,0 +1,59 @@
1
+ // Copyright (c) 2026 Invinite. Licensed under the MIT License.
2
+ // See the LICENSE file in the repo root for full license text.
3
+ //
4
+ // Ported from invinite/src/components/trading-chart/indicators/lib/sma-of-float64.ts
5
+ // (commit d2d1043c1b039f66d2f3674526d303d31cf2f1e0, © Invinite).
6
+ // Re-licensed MIT for chartlang. See PLAN.md §3.1 for the
7
+ // provenance contract; the math is the reference, the code style is not.
8
+ /**
9
+ * Simple Moving Average over a `Float64Array` input. Walks past any
10
+ * leading-NaN prefix, then runs an O(N) rolling-sum SMA over the
11
+ * next `length` finite values. A mid-stream NaN holds the previous
12
+ * output forward (no re-seeding). The full-recompute form lives here
13
+ * so the runtime's `ta.sma` primitive (incremental) and the property
14
+ * / golden tests (reference-equivalent) share a single math source.
15
+ *
16
+ * Warmup `[0, length − 2]` is `NaN`; `out[length − 1]` is the first
17
+ * defined value.
18
+ *
19
+ * @formula out[i] = mean(input[i − length + 1 ..= i])
20
+ * @since 0.1
21
+ * @stable
22
+ * @example
23
+ * // import { computeSmaOfFloat64 } from "./smaFloat64";
24
+ * // const out = computeSmaOfFloat64(new Float64Array([1, 2, 3, 4]), 2);
25
+ */
26
+ export function computeSmaOfFloat64(input, length) {
27
+ const n = input.length;
28
+ const out = new Float64Array(n);
29
+ out.fill(Number.NaN);
30
+ if (length <= 0 || n === 0)
31
+ return out;
32
+ let firstValidIdx = -1;
33
+ for (let i = 0; i < n; i += 1) {
34
+ if (Number.isFinite(input[i])) {
35
+ firstValidIdx = i;
36
+ break;
37
+ }
38
+ }
39
+ if (firstValidIdx < 0 || n - firstValidIdx < length)
40
+ return out;
41
+ let runningSum = 0;
42
+ for (let i = firstValidIdx; i < firstValidIdx + length; i += 1) {
43
+ runningSum += input[i];
44
+ }
45
+ const seedIdx = firstValidIdx + length - 1;
46
+ out[seedIdx] = runningSum / length;
47
+ for (let i = seedIdx + 1; i < n; i += 1) {
48
+ const incoming = input[i];
49
+ const outgoing = input[i - length];
50
+ if (!Number.isFinite(incoming) || !Number.isFinite(outgoing)) {
51
+ out[i] = out[i - 1];
52
+ continue;
53
+ }
54
+ runningSum += incoming - outgoing;
55
+ out[i] = runningSum / length;
56
+ }
57
+ return out;
58
+ }
59
+ //# sourceMappingURL=smaFloat64.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smaFloat64.js","sourceRoot":"","sources":["../../../src/ta/lib/smaFloat64.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,qFAAqF;AACrF,mEAAmE;AACnE,0DAA0D;AAC1D,yEAAyE;AAEzE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAmB,EAAE,MAAc;IACnE,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACvB,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAChC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAEvC,IAAI,aAAa,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,aAAa,GAAG,CAAC,CAAC;YAClB,MAAM;QACV,CAAC;IACL,CAAC;IACD,IAAI,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,aAAa,GAAG,MAAM;QAAE,OAAO,GAAG,CAAC;IAEhE,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,aAAa,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,GAAG,MAAM,GAAG,CAAC,CAAC;IAC3C,GAAG,CAAC,OAAO,CAAC,GAAG,UAAU,GAAG,MAAM,CAAC;IAEnC,KAAK,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3D,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACpB,SAAS;QACb,CAAC;QACD,UAAU,IAAI,QAAQ,GAAG,QAAQ,CAAC;QAClC,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,MAAM,CAAC;IACjC,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Smoothed Moving Average (Wilder's RMA) over a `Float64Array` input.
3
+ * Walks past any leading-NaN prefix, seeds with the simple mean of
4
+ * the next `length` finite values, then runs the recurrence
5
+ * `out[i] = (out[i − 1] * (length − 1) + source[i]) / length` —
6
+ * equivalent to an EMA with `α = 1 / length`. A mid-stream NaN holds
7
+ * the prior value forward (continuous output past gaps), matching
8
+ * the recurrence-MA convention shared with {@link emaFloat64}.
9
+ *
10
+ * Warmup `[0, length − 2]` is `NaN`; `out[length − 1]` is the first
11
+ * defined value.
12
+ *
13
+ * @formula α = 1 / length ;
14
+ * out[i] = (out[i − 1] * (length − 1) + source[i]) / length
15
+ * @warmup length − 1
16
+ * @since 0.2
17
+ * @stable
18
+ * @example
19
+ * // import { smmaFloat64 } from "./smmaFloat64";
20
+ * // const out = smmaFloat64(new Float64Array([1, 2, 3, 4]), 3);
21
+ */
22
+ export declare function smmaFloat64(source: Float64Array, length: number): Float64Array;
23
+ //# sourceMappingURL=smmaFloat64.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smmaFloat64.d.ts","sourceRoot":"","sources":["../../../src/ta/lib/smmaFloat64.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,CA+B9E"}
@@ -0,0 +1,60 @@
1
+ // Copyright (c) 2026 Invinite. Licensed under the MIT License.
2
+ // See the LICENSE file in the repo root for full license text.
3
+ //
4
+ // Ported from invinite/src/components/trading-chart/indicators/lib/smma-of-float64.ts
5
+ // (commit 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite).
6
+ // Re-licensed MIT for chartlang. See PLAN.md §3.1 for the
7
+ // provenance contract; the math is the reference, the code style is not.
8
+ /**
9
+ * Smoothed Moving Average (Wilder's RMA) over a `Float64Array` input.
10
+ * Walks past any leading-NaN prefix, seeds with the simple mean of
11
+ * the next `length` finite values, then runs the recurrence
12
+ * `out[i] = (out[i − 1] * (length − 1) + source[i]) / length` —
13
+ * equivalent to an EMA with `α = 1 / length`. A mid-stream NaN holds
14
+ * the prior value forward (continuous output past gaps), matching
15
+ * the recurrence-MA convention shared with {@link emaFloat64}.
16
+ *
17
+ * Warmup `[0, length − 2]` is `NaN`; `out[length − 1]` is the first
18
+ * defined value.
19
+ *
20
+ * @formula α = 1 / length ;
21
+ * out[i] = (out[i − 1] * (length − 1) + source[i]) / length
22
+ * @warmup length − 1
23
+ * @since 0.2
24
+ * @stable
25
+ * @example
26
+ * // import { smmaFloat64 } from "./smmaFloat64";
27
+ * // const out = smmaFloat64(new Float64Array([1, 2, 3, 4]), 3);
28
+ */
29
+ export function smmaFloat64(source, length) {
30
+ const n = source.length;
31
+ const out = new Float64Array(n);
32
+ out.fill(Number.NaN);
33
+ if (length <= 0 || n === 0)
34
+ return out;
35
+ let firstValidIdx = -1;
36
+ for (let i = 0; i < n; i += 1) {
37
+ if (Number.isFinite(source[i])) {
38
+ firstValidIdx = i;
39
+ break;
40
+ }
41
+ }
42
+ if (firstValidIdx < 0 || n - firstValidIdx < length)
43
+ return out;
44
+ let seedSum = 0;
45
+ for (let i = firstValidIdx; i < firstValidIdx + length; i += 1) {
46
+ seedSum += source[i];
47
+ }
48
+ const seedIdx = firstValidIdx + length - 1;
49
+ out[seedIdx] = seedSum / length;
50
+ for (let i = seedIdx + 1; i < n; i += 1) {
51
+ const v = source[i];
52
+ if (!Number.isFinite(v)) {
53
+ out[i] = out[i - 1];
54
+ continue;
55
+ }
56
+ out[i] = (out[i - 1] * (length - 1) + v) / length;
57
+ }
58
+ return out;
59
+ }
60
+ //# sourceMappingURL=smmaFloat64.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smmaFloat64.js","sourceRoot":"","sources":["../../../src/ta/lib/smmaFloat64.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,sFAAsF;AACtF,mEAAmE;AACnE,0DAA0D;AAC1D,yEAAyE;AAEzE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,WAAW,CAAC,MAAoB,EAAE,MAAc;IAC5D,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IACxB,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAChC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAEvC,IAAI,aAAa,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,aAAa,GAAG,CAAC,CAAC;YAClB,MAAM;QACV,CAAC;IACL,CAAC;IACD,IAAI,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,aAAa,GAAG,MAAM;QAAE,OAAO,GAAG,CAAC;IAEhE,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,aAAa,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,GAAG,MAAM,GAAG,CAAC,CAAC;IAC3C,GAAG,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACpB,SAAS;QACb,CAAC;QACD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC;IACtD,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { Series } from "@invinite-org/chartlang-core";
2
+ /**
3
+ * What every `ta.*` primitive accepts as its `source` argument. Phase-1
4
+ * scripts pass `bar.close` (a `number`) as the source per the seed-
5
+ * example convention; future surfaces (`source: Series<number>`) are
6
+ * structurally compatible because the primitive only ever reads
7
+ * `source.current`. The union is the runtime's accommodation of both
8
+ * shapes without forcing the script author to wrap a scalar.
9
+ *
10
+ * @formula N/A — type alias
11
+ * @since 0.1
12
+ * @stable
13
+ * @example
14
+ * // type S = ScalarOrSeries; // number | Series<number>
15
+ */
16
+ export type ScalarOrSeries = number | Series<number>;
17
+ /**
18
+ * Read the current value off a `ScalarOrSeries`. Returns the scalar
19
+ * directly; reads `.current` off a Series. `Series` is duck-typed —
20
+ * any object with a `current: number` field passes.
21
+ *
22
+ * @formula source is number → source ; source is Series → source.current
23
+ * @since 0.1
24
+ * @stable
25
+ * @example
26
+ * // import { readSourceValue } from "./sourceValue";
27
+ * // readSourceValue(12.5); // 12.5
28
+ * // readSourceValue(series); // series.current
29
+ */
30
+ export declare function readSourceValue(source: ScalarOrSeries): number;
31
+ //# sourceMappingURL=sourceValue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceValue.d.ts","sourceRoot":"","sources":["../../../src/ta/lib/sourceValue.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAE3D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAG9D"}
@@ -0,0 +1,21 @@
1
+ // Copyright (c) 2026 Invinite. Licensed under the MIT License.
2
+ // See the LICENSE file in the repo root for full license text.
3
+ /**
4
+ * Read the current value off a `ScalarOrSeries`. Returns the scalar
5
+ * directly; reads `.current` off a Series. `Series` is duck-typed —
6
+ * any object with a `current: number` field passes.
7
+ *
8
+ * @formula source is number → source ; source is Series → source.current
9
+ * @since 0.1
10
+ * @stable
11
+ * @example
12
+ * // import { readSourceValue } from "./sourceValue";
13
+ * // readSourceValue(12.5); // 12.5
14
+ * // readSourceValue(series); // series.current
15
+ */
16
+ export function readSourceValue(source) {
17
+ if (typeof source === "number")
18
+ return source;
19
+ return source.current;
20
+ }
21
+ //# sourceMappingURL=sourceValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceValue.js","sourceRoot":"","sources":["../../../src/ta/lib/sourceValue.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAoB/D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,MAAsB;IAClD,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAC9C,OAAO,MAAM,CAAC,OAAO,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { Bar } from "@invinite-org/chartlang-core";
2
+ /**
3
+ * True Range at bar `i` of a Bar array. For bar 0 (no prev close)
4
+ * reduces to `high - low`. Phase 1's incremental `ta.atr` does the
5
+ * same math one bar at a time inside its slot state; this helper
6
+ * exists so the property test can reference-equivalent the
7
+ * incremental output against a full recompute.
8
+ *
9
+ * @formula TR_i = max(high − low, |high − prev_close|, |low − prev_close|)
10
+ * @since 0.1
11
+ * @stable
12
+ * @example
13
+ * // import { trueRangeAt } from "./trSeries";
14
+ * // const tr = trueRangeAt(bars, 5);
15
+ */
16
+ export declare function trueRangeAt(bars: ReadonlyArray<Bar>, i: number): number;
17
+ /**
18
+ * Per-bar True Range series of length `bars.length`. Used by `ta.atr`
19
+ * property tests and any future TR-derived primitive.
20
+ *
21
+ * @formula tr[i] = trueRangeAt(bars, i) for i ∈ [0, n)
22
+ * @since 0.1
23
+ * @stable
24
+ * @example
25
+ * // import { computeTrSeries } from "./trSeries";
26
+ * // const tr = computeTrSeries(bars);
27
+ */
28
+ export declare function computeTrSeries(bars: ReadonlyArray<Bar>): Float64Array;
29
+ /**
30
+ * Wilder ATR over a `Bar` array, returned alongside the TR sidecar.
31
+ * Warmup `[0, length − 2]` is `NaN`; `atr[length − 1]` is the simple
32
+ * mean of the first `length` TR values; subsequent slots use the
33
+ * Wilder recurrence `atr[i] = (atr[i − 1] * (length − 1) + tr[i]) /
34
+ * length`. Acts as the property-test reference for the incremental
35
+ * `ta.atr` primitive.
36
+ *
37
+ * @formula see wilderSmoothing.ts and computeTrSeries above.
38
+ * @since 0.1
39
+ * @stable
40
+ * @example
41
+ * // import { computeAtrSeries } from "./trSeries";
42
+ * // const { atr, tr } = computeAtrSeries(bars, 14);
43
+ */
44
+ export declare function computeAtrSeries(bars: ReadonlyArray<Bar>, length: number): {
45
+ atr: Float64Array;
46
+ tr: Float64Array;
47
+ };
48
+ //# sourceMappingURL=trSeries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trSeries.d.ts","sourceRoot":"","sources":["../../../src/ta/lib/trSeries.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAExD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQvE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,YAAY,CAKtE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,MAAM,EAAE,MAAM,GACf;IAAE,GAAG,EAAE,YAAY,CAAC;IAAC,EAAE,EAAE,YAAY,CAAA;CAAE,CAazC"}