@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.
- package/CHANGELOG.md +2690 -0
- package/LICENSE +21 -0
- package/README.md +57 -0
- package/dist/buildComputeContext.d.ts +21 -0
- package/dist/buildComputeContext.d.ts.map +1 -0
- package/dist/buildComputeContext.js +48 -0
- package/dist/buildComputeContext.js.map +1 -0
- package/dist/createScriptRunner.d.ts +111 -0
- package/dist/createScriptRunner.d.ts.map +1 -0
- package/dist/createScriptRunner.js +234 -0
- package/dist/createScriptRunner.js.map +1 -0
- package/dist/emit/alert.d.ts +46 -0
- package/dist/emit/alert.d.ts.map +1 -0
- package/dist/emit/alert.js +71 -0
- package/dist/emit/alert.js.map +1 -0
- package/dist/emit/alertConditionEmission.d.ts +15 -0
- package/dist/emit/alertConditionEmission.d.ts.map +1 -0
- package/dist/emit/alertConditionEmission.js +53 -0
- package/dist/emit/alertConditionEmission.js.map +1 -0
- package/dist/emit/draw/annotations/arrow.d.ts +42 -0
- package/dist/emit/draw/annotations/arrow.d.ts.map +1 -0
- package/dist/emit/draw/annotations/arrow.js +40 -0
- package/dist/emit/draw/annotations/arrow.js.map +1 -0
- package/dist/emit/draw/annotations/arrowMarkDown.d.ts +36 -0
- package/dist/emit/draw/annotations/arrowMarkDown.d.ts.map +1 -0
- package/dist/emit/draw/annotations/arrowMarkDown.js +40 -0
- package/dist/emit/draw/annotations/arrowMarkDown.js.map +1 -0
- package/dist/emit/draw/annotations/arrowMarkUp.d.ts +36 -0
- package/dist/emit/draw/annotations/arrowMarkUp.d.ts.map +1 -0
- package/dist/emit/draw/annotations/arrowMarkUp.js +40 -0
- package/dist/emit/draw/annotations/arrowMarkUp.js.map +1 -0
- package/dist/emit/draw/annotations/arrowMarker.d.ts +40 -0
- package/dist/emit/draw/annotations/arrowMarker.d.ts.map +1 -0
- package/dist/emit/draw/annotations/arrowMarker.js +40 -0
- package/dist/emit/draw/annotations/arrowMarker.js.map +1 -0
- package/dist/emit/draw/annotations/text.d.ts +41 -0
- package/dist/emit/draw/annotations/text.d.ts.map +1 -0
- package/dist/emit/draw/annotations/text.js +44 -0
- package/dist/emit/draw/annotations/text.js.map +1 -0
- package/dist/emit/draw/boxes/circle.d.ts +42 -0
- package/dist/emit/draw/boxes/circle.d.ts.map +1 -0
- package/dist/emit/draw/boxes/circle.js +44 -0
- package/dist/emit/draw/boxes/circle.js.map +1 -0
- package/dist/emit/draw/boxes/ellipse.d.ts +42 -0
- package/dist/emit/draw/boxes/ellipse.d.ts.map +1 -0
- package/dist/emit/draw/boxes/ellipse.js +40 -0
- package/dist/emit/draw/boxes/ellipse.js.map +1 -0
- package/dist/emit/draw/boxes/marker.d.ts +43 -0
- package/dist/emit/draw/boxes/marker.d.ts.map +1 -0
- package/dist/emit/draw/boxes/marker.js +49 -0
- package/dist/emit/draw/boxes/marker.js.map +1 -0
- package/dist/emit/draw/boxes/path.d.ts +43 -0
- package/dist/emit/draw/boxes/path.d.ts.map +1 -0
- package/dist/emit/draw/boxes/path.js +40 -0
- package/dist/emit/draw/boxes/path.js.map +1 -0
- package/dist/emit/draw/boxes/polyline.d.ts +43 -0
- package/dist/emit/draw/boxes/polyline.d.ts.map +1 -0
- package/dist/emit/draw/boxes/polyline.js +40 -0
- package/dist/emit/draw/boxes/polyline.js.map +1 -0
- package/dist/emit/draw/boxes/rectangle.d.ts +40 -0
- package/dist/emit/draw/boxes/rectangle.d.ts.map +1 -0
- package/dist/emit/draw/boxes/rectangle.js +40 -0
- package/dist/emit/draw/boxes/rectangle.js.map +1 -0
- package/dist/emit/draw/boxes/rotatedRectangle.d.ts +45 -0
- package/dist/emit/draw/boxes/rotatedRectangle.d.ts.map +1 -0
- package/dist/emit/draw/boxes/rotatedRectangle.js +40 -0
- package/dist/emit/draw/boxes/rotatedRectangle.js.map +1 -0
- package/dist/emit/draw/boxes/triangle.d.ts +42 -0
- package/dist/emit/draw/boxes/triangle.d.ts.map +1 -0
- package/dist/emit/draw/boxes/triangle.js +40 -0
- package/dist/emit/draw/boxes/triangle.js.map +1 -0
- package/dist/emit/draw/channels/disjointChannel.d.ts +43 -0
- package/dist/emit/draw/channels/disjointChannel.d.ts.map +1 -0
- package/dist/emit/draw/channels/disjointChannel.js +40 -0
- package/dist/emit/draw/channels/disjointChannel.js.map +1 -0
- package/dist/emit/draw/channels/flatTopBottom.d.ts +44 -0
- package/dist/emit/draw/channels/flatTopBottom.d.ts.map +1 -0
- package/dist/emit/draw/channels/flatTopBottom.js +40 -0
- package/dist/emit/draw/channels/flatTopBottom.js.map +1 -0
- package/dist/emit/draw/channels/regressionTrend.d.ts +49 -0
- package/dist/emit/draw/channels/regressionTrend.d.ts.map +1 -0
- package/dist/emit/draw/channels/regressionTrend.js +44 -0
- package/dist/emit/draw/channels/regressionTrend.js.map +1 -0
- package/dist/emit/draw/channels/trendChannel.d.ts +43 -0
- package/dist/emit/draw/channels/trendChannel.d.ts.map +1 -0
- package/dist/emit/draw/channels/trendChannel.js +40 -0
- package/dist/emit/draw/channels/trendChannel.js.map +1 -0
- package/dist/emit/draw/containers/frame.d.ts +42 -0
- package/dist/emit/draw/containers/frame.d.ts.map +1 -0
- package/dist/emit/draw/containers/frame.js +47 -0
- package/dist/emit/draw/containers/frame.js.map +1 -0
- package/dist/emit/draw/containers/group.d.ts +47 -0
- package/dist/emit/draw/containers/group.d.ts.map +1 -0
- package/dist/emit/draw/containers/group.js +44 -0
- package/dist/emit/draw/containers/group.js.map +1 -0
- package/dist/emit/draw/curves/arc.d.ts +44 -0
- package/dist/emit/draw/curves/arc.d.ts.map +1 -0
- package/dist/emit/draw/curves/arc.js +40 -0
- package/dist/emit/draw/curves/arc.js.map +1 -0
- package/dist/emit/draw/curves/brush.d.ts +44 -0
- package/dist/emit/draw/curves/brush.d.ts.map +1 -0
- package/dist/emit/draw/curves/brush.js +43 -0
- package/dist/emit/draw/curves/brush.js.map +1 -0
- package/dist/emit/draw/curves/curve.d.ts +43 -0
- package/dist/emit/draw/curves/curve.d.ts.map +1 -0
- package/dist/emit/draw/curves/curve.js +40 -0
- package/dist/emit/draw/curves/curve.js.map +1 -0
- package/dist/emit/draw/curves/doubleCurve.d.ts +46 -0
- package/dist/emit/draw/curves/doubleCurve.d.ts.map +1 -0
- package/dist/emit/draw/curves/doubleCurve.js +40 -0
- package/dist/emit/draw/curves/doubleCurve.js.map +1 -0
- package/dist/emit/draw/curves/highlighter.d.ts +43 -0
- package/dist/emit/draw/curves/highlighter.d.ts.map +1 -0
- package/dist/emit/draw/curves/highlighter.js +43 -0
- package/dist/emit/draw/curves/highlighter.js.map +1 -0
- package/dist/emit/draw/curves/pen.d.ts +41 -0
- package/dist/emit/draw/curves/pen.d.ts.map +1 -0
- package/dist/emit/draw/curves/pen.js +40 -0
- package/dist/emit/draw/curves/pen.js.map +1 -0
- package/dist/emit/draw/cycles/cyclicLines.d.ts +41 -0
- package/dist/emit/draw/cycles/cyclicLines.d.ts.map +1 -0
- package/dist/emit/draw/cycles/cyclicLines.js +44 -0
- package/dist/emit/draw/cycles/cyclicLines.js.map +1 -0
- package/dist/emit/draw/cycles/sineLine.d.ts +40 -0
- package/dist/emit/draw/cycles/sineLine.d.ts.map +1 -0
- package/dist/emit/draw/cycles/sineLine.js +44 -0
- package/dist/emit/draw/cycles/sineLine.js.map +1 -0
- package/dist/emit/draw/cycles/timeCycles.d.ts +40 -0
- package/dist/emit/draw/cycles/timeCycles.d.ts.map +1 -0
- package/dist/emit/draw/cycles/timeCycles.js +44 -0
- package/dist/emit/draw/cycles/timeCycles.js.map +1 -0
- package/dist/emit/draw/elliott/elliottCorrectionWave.d.ts +39 -0
- package/dist/emit/draw/elliott/elliottCorrectionWave.d.ts.map +1 -0
- package/dist/emit/draw/elliott/elliottCorrectionWave.js +43 -0
- package/dist/emit/draw/elliott/elliottCorrectionWave.js.map +1 -0
- package/dist/emit/draw/elliott/elliottDoubleCombo.d.ts +44 -0
- package/dist/emit/draw/elliott/elliottDoubleCombo.d.ts.map +1 -0
- package/dist/emit/draw/elliott/elliottDoubleCombo.js +43 -0
- package/dist/emit/draw/elliott/elliottDoubleCombo.js.map +1 -0
- package/dist/emit/draw/elliott/elliottImpulseWave.d.ts +42 -0
- package/dist/emit/draw/elliott/elliottImpulseWave.d.ts.map +1 -0
- package/dist/emit/draw/elliott/elliottImpulseWave.js +43 -0
- package/dist/emit/draw/elliott/elliottImpulseWave.js.map +1 -0
- package/dist/emit/draw/elliott/elliottTriangleWave.d.ts +41 -0
- package/dist/emit/draw/elliott/elliottTriangleWave.d.ts.map +1 -0
- package/dist/emit/draw/elliott/elliottTriangleWave.js +43 -0
- package/dist/emit/draw/elliott/elliottTriangleWave.js.map +1 -0
- package/dist/emit/draw/elliott/elliottTripleCombo.d.ts +44 -0
- package/dist/emit/draw/elliott/elliottTripleCombo.d.ts.map +1 -0
- package/dist/emit/draw/elliott/elliottTripleCombo.js +47 -0
- package/dist/emit/draw/elliott/elliottTripleCombo.js.map +1 -0
- package/dist/emit/draw/fibA/fibChannel.d.ts +41 -0
- package/dist/emit/draw/fibA/fibChannel.d.ts.map +1 -0
- package/dist/emit/draw/fibA/fibChannel.js +40 -0
- package/dist/emit/draw/fibA/fibChannel.js.map +1 -0
- package/dist/emit/draw/fibA/fibRetracement.d.ts +40 -0
- package/dist/emit/draw/fibA/fibRetracement.d.ts.map +1 -0
- package/dist/emit/draw/fibA/fibRetracement.js +44 -0
- package/dist/emit/draw/fibA/fibRetracement.js.map +1 -0
- package/dist/emit/draw/fibA/fibTimeZone.d.ts +41 -0
- package/dist/emit/draw/fibA/fibTimeZone.d.ts.map +1 -0
- package/dist/emit/draw/fibA/fibTimeZone.js +44 -0
- package/dist/emit/draw/fibA/fibTimeZone.js.map +1 -0
- package/dist/emit/draw/fibA/fibTrendExtension.d.ts +42 -0
- package/dist/emit/draw/fibA/fibTrendExtension.d.ts.map +1 -0
- package/dist/emit/draw/fibA/fibTrendExtension.js +44 -0
- package/dist/emit/draw/fibA/fibTrendExtension.js.map +1 -0
- package/dist/emit/draw/fibA/fibWedge.d.ts +42 -0
- package/dist/emit/draw/fibA/fibWedge.d.ts.map +1 -0
- package/dist/emit/draw/fibA/fibWedge.js +40 -0
- package/dist/emit/draw/fibA/fibWedge.js.map +1 -0
- package/dist/emit/draw/fibB/fibCircles.d.ts +41 -0
- package/dist/emit/draw/fibB/fibCircles.d.ts.map +1 -0
- package/dist/emit/draw/fibB/fibCircles.js +44 -0
- package/dist/emit/draw/fibB/fibCircles.js.map +1 -0
- package/dist/emit/draw/fibB/fibSpeedArcs.d.ts +39 -0
- package/dist/emit/draw/fibB/fibSpeedArcs.d.ts.map +1 -0
- package/dist/emit/draw/fibB/fibSpeedArcs.js +44 -0
- package/dist/emit/draw/fibB/fibSpeedArcs.js.map +1 -0
- package/dist/emit/draw/fibB/fibSpeedFan.d.ts +39 -0
- package/dist/emit/draw/fibB/fibSpeedFan.d.ts.map +1 -0
- package/dist/emit/draw/fibB/fibSpeedFan.js +44 -0
- package/dist/emit/draw/fibB/fibSpeedFan.js.map +1 -0
- package/dist/emit/draw/fibB/fibSpiral.d.ts +41 -0
- package/dist/emit/draw/fibB/fibSpiral.d.ts.map +1 -0
- package/dist/emit/draw/fibB/fibSpiral.js +44 -0
- package/dist/emit/draw/fibB/fibSpiral.js.map +1 -0
- package/dist/emit/draw/fibB/fibTrendTime.d.ts +45 -0
- package/dist/emit/draw/fibB/fibTrendTime.d.ts.map +1 -0
- package/dist/emit/draw/fibB/fibTrendTime.js +44 -0
- package/dist/emit/draw/fibB/fibTrendTime.js.map +1 -0
- package/dist/emit/draw/gann/gannBox.d.ts +39 -0
- package/dist/emit/draw/gann/gannBox.d.ts.map +1 -0
- package/dist/emit/draw/gann/gannBox.js +44 -0
- package/dist/emit/draw/gann/gannBox.js.map +1 -0
- package/dist/emit/draw/gann/gannFan.d.ts +39 -0
- package/dist/emit/draw/gann/gannFan.d.ts.map +1 -0
- package/dist/emit/draw/gann/gannFan.js +44 -0
- package/dist/emit/draw/gann/gannFan.js.map +1 -0
- package/dist/emit/draw/gann/gannSquare.d.ts +38 -0
- package/dist/emit/draw/gann/gannSquare.d.ts.map +1 -0
- package/dist/emit/draw/gann/gannSquare.js +44 -0
- package/dist/emit/draw/gann/gannSquare.js.map +1 -0
- package/dist/emit/draw/gann/gannSquareFixed.d.ts +35 -0
- package/dist/emit/draw/gann/gannSquareFixed.d.ts.map +1 -0
- package/dist/emit/draw/gann/gannSquareFixed.js +44 -0
- package/dist/emit/draw/gann/gannSquareFixed.js.map +1 -0
- package/dist/emit/draw/handle.d.ts +37 -0
- package/dist/emit/draw/handle.d.ts.map +1 -0
- package/dist/emit/draw/handle.js +118 -0
- package/dist/emit/draw/handle.js.map +1 -0
- package/dist/emit/draw/index.d.ts +5 -0
- package/dist/emit/draw/index.d.ts.map +1 -0
- package/dist/emit/draw/index.js +13 -0
- package/dist/emit/draw/index.js.map +1 -0
- package/dist/emit/draw/lines/crossLine.d.ts +37 -0
- package/dist/emit/draw/lines/crossLine.d.ts.map +1 -0
- package/dist/emit/draw/lines/crossLine.js +40 -0
- package/dist/emit/draw/lines/crossLine.js.map +1 -0
- package/dist/emit/draw/lines/horizontalLine.d.ts +33 -0
- package/dist/emit/draw/lines/horizontalLine.d.ts.map +1 -0
- package/dist/emit/draw/lines/horizontalLine.js +40 -0
- package/dist/emit/draw/lines/horizontalLine.js.map +1 -0
- package/dist/emit/draw/lines/horizontalRay.d.ts +36 -0
- package/dist/emit/draw/lines/horizontalRay.d.ts.map +1 -0
- package/dist/emit/draw/lines/horizontalRay.js +40 -0
- package/dist/emit/draw/lines/horizontalRay.js.map +1 -0
- package/dist/emit/draw/lines/line.d.ts +43 -0
- package/dist/emit/draw/lines/line.d.ts.map +1 -0
- package/dist/emit/draw/lines/line.js +43 -0
- package/dist/emit/draw/lines/line.js.map +1 -0
- package/dist/emit/draw/lines/trendAngle.d.ts +38 -0
- package/dist/emit/draw/lines/trendAngle.d.ts.map +1 -0
- package/dist/emit/draw/lines/trendAngle.js +40 -0
- package/dist/emit/draw/lines/trendAngle.js.map +1 -0
- package/dist/emit/draw/lines/verticalLine.d.ts +33 -0
- package/dist/emit/draw/lines/verticalLine.d.ts.map +1 -0
- package/dist/emit/draw/lines/verticalLine.js +40 -0
- package/dist/emit/draw/lines/verticalLine.js.map +1 -0
- package/dist/emit/draw/namespace.d.ts +26 -0
- package/dist/emit/draw/namespace.d.ts.map +1 -0
- package/dist/emit/draw/namespace.js +186 -0
- package/dist/emit/draw/namespace.js.map +1 -0
- package/dist/emit/draw/patterns/abcdPattern.d.ts +40 -0
- package/dist/emit/draw/patterns/abcdPattern.d.ts.map +1 -0
- package/dist/emit/draw/patterns/abcdPattern.js +40 -0
- package/dist/emit/draw/patterns/abcdPattern.js.map +1 -0
- package/dist/emit/draw/patterns/cypherPattern.d.ts +43 -0
- package/dist/emit/draw/patterns/cypherPattern.d.ts.map +1 -0
- package/dist/emit/draw/patterns/cypherPattern.js +41 -0
- package/dist/emit/draw/patterns/cypherPattern.js.map +1 -0
- package/dist/emit/draw/patterns/headAndShoulders.d.ts +42 -0
- package/dist/emit/draw/patterns/headAndShoulders.d.ts.map +1 -0
- package/dist/emit/draw/patterns/headAndShoulders.js +49 -0
- package/dist/emit/draw/patterns/headAndShoulders.js.map +1 -0
- package/dist/emit/draw/patterns/threeDrivesPattern.d.ts +43 -0
- package/dist/emit/draw/patterns/threeDrivesPattern.d.ts.map +1 -0
- package/dist/emit/draw/patterns/threeDrivesPattern.js +44 -0
- package/dist/emit/draw/patterns/threeDrivesPattern.js.map +1 -0
- package/dist/emit/draw/patterns/trianglePattern.d.ts +41 -0
- package/dist/emit/draw/patterns/trianglePattern.d.ts.map +1 -0
- package/dist/emit/draw/patterns/trianglePattern.js +50 -0
- package/dist/emit/draw/patterns/trianglePattern.js.map +1 -0
- package/dist/emit/draw/patterns/xabcdPattern.d.ts +41 -0
- package/dist/emit/draw/patterns/xabcdPattern.d.ts.map +1 -0
- package/dist/emit/draw/patterns/xabcdPattern.js +40 -0
- package/dist/emit/draw/patterns/xabcdPattern.js.map +1 -0
- package/dist/emit/draw/pitchforks/pitchfan.d.ts +39 -0
- package/dist/emit/draw/pitchforks/pitchfan.d.ts.map +1 -0
- package/dist/emit/draw/pitchforks/pitchfan.js +40 -0
- package/dist/emit/draw/pitchforks/pitchfan.js.map +1 -0
- package/dist/emit/draw/pitchforks/pitchfork.d.ts +51 -0
- package/dist/emit/draw/pitchforks/pitchfork.d.ts.map +1 -0
- package/dist/emit/draw/pitchforks/pitchfork.js +50 -0
- package/dist/emit/draw/pitchforks/pitchfork.js.map +1 -0
- package/dist/emit/draw/pushDrawing.d.ts +45 -0
- package/dist/emit/draw/pushDrawing.d.ts.map +1 -0
- package/dist/emit/draw/pushDrawing.js +107 -0
- package/dist/emit/draw/pushDrawing.js.map +1 -0
- package/dist/emit/draw/subIdAllocator.d.ts +34 -0
- package/dist/emit/draw/subIdAllocator.d.ts.map +1 -0
- package/dist/emit/draw/subIdAllocator.js +42 -0
- package/dist/emit/draw/subIdAllocator.js.map +1 -0
- package/dist/emit/draw/table/table.d.ts +39 -0
- package/dist/emit/draw/table/table.d.ts.map +1 -0
- package/dist/emit/draw/table/table.js +39 -0
- package/dist/emit/draw/table/table.js.map +1 -0
- package/dist/emit/emissionsQueue.d.ts +65 -0
- package/dist/emit/emissionsQueue.d.ts.map +1 -0
- package/dist/emit/emissionsQueue.js +140 -0
- package/dist/emit/emissionsQueue.js.map +1 -0
- package/dist/emit/hash.d.ts +13 -0
- package/dist/emit/hash.d.ts.map +1 -0
- package/dist/emit/hash.js +24 -0
- package/dist/emit/hash.js.map +1 -0
- package/dist/emit/hline.d.ts +42 -0
- package/dist/emit/hline.d.ts.map +1 -0
- package/dist/emit/hline.js +59 -0
- package/dist/emit/hline.js.map +1 -0
- package/dist/emit/index.d.ts +11 -0
- package/dist/emit/index.d.ts.map +1 -0
- package/dist/emit/index.js +13 -0
- package/dist/emit/index.js.map +1 -0
- package/dist/emit/logEmission.d.ts +25 -0
- package/dist/emit/logEmission.d.ts.map +1 -0
- package/dist/emit/logEmission.js +127 -0
- package/dist/emit/logEmission.js.map +1 -0
- package/dist/emit/paneResolver.d.ts +19 -0
- package/dist/emit/paneResolver.d.ts.map +1 -0
- package/dist/emit/paneResolver.js +45 -0
- package/dist/emit/paneResolver.js.map +1 -0
- package/dist/emit/plot.d.ts +45 -0
- package/dist/emit/plot.d.ts.map +1 -0
- package/dist/emit/plot.js +126 -0
- package/dist/emit/plot.js.map +1 -0
- package/dist/emit/runtimeError.d.ts +27 -0
- package/dist/emit/runtimeError.d.ts.map +1 -0
- package/dist/emit/runtimeError.js +33 -0
- package/dist/emit/runtimeError.js.map +1 -0
- package/dist/execution/dispose.d.ts +23 -0
- package/dist/execution/dispose.d.ts.map +1 -0
- package/dist/execution/dispose.js +57 -0
- package/dist/execution/dispose.js.map +1 -0
- package/dist/execution/drain.d.ts +22 -0
- package/dist/execution/drain.d.ts.map +1 -0
- package/dist/execution/drain.js +40 -0
- package/dist/execution/drain.js.map +1 -0
- package/dist/execution/index.d.ts +6 -0
- package/dist/execution/index.d.ts.map +1 -0
- package/dist/execution/index.js +8 -0
- package/dist/execution/index.js.map +1 -0
- package/dist/execution/onBarClose.d.ts +25 -0
- package/dist/execution/onBarClose.d.ts.map +1 -0
- package/dist/execution/onBarClose.js +78 -0
- package/dist/execution/onBarClose.js.map +1 -0
- package/dist/execution/onBarTick.d.ts +24 -0
- package/dist/execution/onBarTick.d.ts.map +1 -0
- package/dist/execution/onBarTick.js +77 -0
- package/dist/execution/onBarTick.js.map +1 -0
- package/dist/execution/onHistory.d.ts +31 -0
- package/dist/execution/onHistory.d.ts.map +1 -0
- package/dist/execution/onHistory.js +59 -0
- package/dist/execution/onHistory.js.map +1 -0
- package/dist/execution/secondaryStream.d.ts +36 -0
- package/dist/execution/secondaryStream.d.ts.map +1 -0
- package/dist/execution/secondaryStream.js +45 -0
- package/dist/execution/secondaryStream.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -0
- package/dist/inputs/index.d.ts +2 -0
- package/dist/inputs/index.d.ts.map +1 -0
- package/dist/inputs/index.js +4 -0
- package/dist/inputs/index.js.map +1 -0
- package/dist/inputs/resolveInputs.d.ts +18 -0
- package/dist/inputs/resolveInputs.d.ts.map +1 -0
- package/dist/inputs/resolveInputs.js +93 -0
- package/dist/inputs/resolveInputs.js.map +1 -0
- package/dist/persistentStateStore.d.ts +40 -0
- package/dist/persistentStateStore.d.ts.map +1 -0
- package/dist/persistentStateStore.js +30 -0
- package/dist/persistentStateStore.js.map +1 -0
- package/dist/persistentStateStore.runtime.d.ts +57 -0
- package/dist/persistentStateStore.runtime.d.ts.map +1 -0
- package/dist/persistentStateStore.runtime.js +163 -0
- package/dist/persistentStateStore.runtime.js.map +1 -0
- package/dist/persistentStateStore.validate.d.ts +14 -0
- package/dist/persistentStateStore.validate.d.ts.map +1 -0
- package/dist/persistentStateStore.validate.js +63 -0
- package/dist/persistentStateStore.validate.js.map +1 -0
- package/dist/primitives.d.ts +23 -0
- package/dist/primitives.d.ts.map +1 -0
- package/dist/primitives.js +25 -0
- package/dist/primitives.js.map +1 -0
- package/dist/request/alignHtfSeriesCache.d.ts +20 -0
- package/dist/request/alignHtfSeriesCache.d.ts.map +1 -0
- package/dist/request/alignHtfSeriesCache.js +50 -0
- package/dist/request/alignHtfSeriesCache.js.map +1 -0
- package/dist/request/alignHtfSeriesToLtf.d.ts +26 -0
- package/dist/request/alignHtfSeriesToLtf.d.ts.map +1 -0
- package/dist/request/alignHtfSeriesToLtf.js +47 -0
- package/dist/request/alignHtfSeriesToLtf.js.map +1 -0
- package/dist/request/bucketLtfBarsByMainContainment.d.ts +22 -0
- package/dist/request/bucketLtfBarsByMainContainment.d.ts.map +1 -0
- package/dist/request/bucketLtfBarsByMainContainment.js +41 -0
- package/dist/request/bucketLtfBarsByMainContainment.js.map +1 -0
- package/dist/request/bucketLtfBarsCache.d.ts +14 -0
- package/dist/request/bucketLtfBarsCache.d.ts.map +1 -0
- package/dist/request/bucketLtfBarsCache.js +30 -0
- package/dist/request/bucketLtfBarsCache.js.map +1 -0
- package/dist/request/index.d.ts +4 -0
- package/dist/request/index.d.ts.map +1 -0
- package/dist/request/index.js +6 -0
- package/dist/request/index.js.map +1 -0
- package/dist/request/lowerTf.d.ts +14 -0
- package/dist/request/lowerTf.d.ts.map +1 -0
- package/dist/request/lowerTf.js +65 -0
- package/dist/request/lowerTf.js.map +1 -0
- package/dist/request/pushOnce.d.ts +13 -0
- package/dist/request/pushOnce.d.ts.map +1 -0
- package/dist/request/pushOnce.js +26 -0
- package/dist/request/pushOnce.js.map +1 -0
- package/dist/request/requestNamespace.d.ts +17 -0
- package/dist/request/requestNamespace.d.ts.map +1 -0
- package/dist/request/requestNamespace.js +39 -0
- package/dist/request/requestNamespace.js.map +1 -0
- package/dist/request/security.d.ts +25 -0
- package/dist/request/security.d.ts.map +1 -0
- package/dist/request/security.js +172 -0
- package/dist/request/security.js.map +1 -0
- package/dist/request/streamBars.d.ts +27 -0
- package/dist/request/streamBars.d.ts.map +1 -0
- package/dist/request/streamBars.js +55 -0
- package/dist/request/streamBars.js.map +1 -0
- package/dist/ringBuffer.d.ts +95 -0
- package/dist/ringBuffer.d.ts.map +1 -0
- package/dist/ringBuffer.js +146 -0
- package/dist/ringBuffer.js.map +1 -0
- package/dist/runtimeContext.d.ts +238 -0
- package/dist/runtimeContext.d.ts.map +1 -0
- package/dist/runtimeContext.js +24 -0
- package/dist/runtimeContext.js.map +1 -0
- package/dist/seriesView.d.ts +59 -0
- package/dist/seriesView.d.ts.map +1 -0
- package/dist/seriesView.js +109 -0
- package/dist/seriesView.js.map +1 -0
- package/dist/state/index.d.ts +6 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +6 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/lifecycle.d.ts +75 -0
- package/dist/state/lifecycle.d.ts.map +1 -0
- package/dist/state/lifecycle.js +87 -0
- package/dist/state/lifecycle.js.map +1 -0
- package/dist/state/stateNamespace.d.ts +14 -0
- package/dist/state/stateNamespace.d.ts.map +1 -0
- package/dist/state/stateNamespace.js +56 -0
- package/dist/state/stateNamespace.js.map +1 -0
- package/dist/state/stateSlot.d.ts +59 -0
- package/dist/state/stateSlot.d.ts.map +1 -0
- package/dist/state/stateSlot.js +74 -0
- package/dist/state/stateSlot.js.map +1 -0
- package/dist/stateStore.d.ts +40 -0
- package/dist/stateStore.d.ts.map +1 -0
- package/dist/stateStore.js +34 -0
- package/dist/stateStore.js.map +1 -0
- package/dist/streamState.d.ts +178 -0
- package/dist/streamState.d.ts.map +1 -0
- package/dist/streamState.js +313 -0
- package/dist/streamState.js.map +1 -0
- package/dist/ta/adl.d.ts +27 -0
- package/dist/ta/adl.d.ts.map +1 -0
- package/dist/ta/adl.js +92 -0
- package/dist/ta/adl.js.map +1 -0
- package/dist/ta/adr.d.ts +38 -0
- package/dist/ta/adr.d.ts.map +1 -0
- package/dist/ta/adr.js +143 -0
- package/dist/ta/adr.js.map +1 -0
- package/dist/ta/adx.d.ts +31 -0
- package/dist/ta/adx.d.ts.map +1 -0
- package/dist/ta/adx.js +167 -0
- package/dist/ta/adx.js.map +1 -0
- package/dist/ta/alma.d.ts +35 -0
- package/dist/ta/alma.d.ts.map +1 -0
- package/dist/ta/alma.js +121 -0
- package/dist/ta/alma.js.map +1 -0
- package/dist/ta/anchoredVolumeProfile.d.ts +22 -0
- package/dist/ta/anchoredVolumeProfile.d.ts.map +1 -0
- package/dist/ta/anchoredVolumeProfile.js +104 -0
- package/dist/ta/anchoredVolumeProfile.js.map +1 -0
- package/dist/ta/anchoredVwap.d.ts +36 -0
- package/dist/ta/anchoredVwap.d.ts.map +1 -0
- package/dist/ta/anchoredVwap.js +134 -0
- package/dist/ta/anchoredVwap.js.map +1 -0
- package/dist/ta/ao.d.ts +21 -0
- package/dist/ta/ao.d.ts.map +1 -0
- package/dist/ta/ao.js +74 -0
- package/dist/ta/ao.js.map +1 -0
- package/dist/ta/aroon.d.ts +26 -0
- package/dist/ta/aroon.d.ts.map +1 -0
- package/dist/ta/aroon.js +166 -0
- package/dist/ta/aroon.js.map +1 -0
- package/dist/ta/aroonOsc.d.ts +19 -0
- package/dist/ta/aroonOsc.d.ts.map +1 -0
- package/dist/ta/aroonOsc.js +68 -0
- package/dist/ta/aroonOsc.js.map +1 -0
- package/dist/ta/atr.d.ts +25 -0
- package/dist/ta/atr.d.ts.map +1 -0
- package/dist/ta/atr.js +132 -0
- package/dist/ta/atr.js.map +1 -0
- package/dist/ta/barssince.d.ts +21 -0
- package/dist/ta/barssince.d.ts.map +1 -0
- package/dist/ta/barssince.js +96 -0
- package/dist/ta/barssince.js.map +1 -0
- package/dist/ta/bb.d.ts +28 -0
- package/dist/ta/bb.d.ts.map +1 -0
- package/dist/ta/bb.js +123 -0
- package/dist/ta/bb.js.map +1 -0
- package/dist/ta/bbPercentB.d.ts +23 -0
- package/dist/ta/bbPercentB.d.ts.map +1 -0
- package/dist/ta/bbPercentB.js +84 -0
- package/dist/ta/bbPercentB.js.map +1 -0
- package/dist/ta/bbw.d.ts +23 -0
- package/dist/ta/bbw.d.ts.map +1 -0
- package/dist/ta/bbw.js +84 -0
- package/dist/ta/bbw.js.map +1 -0
- package/dist/ta/bop.d.ts +22 -0
- package/dist/ta/bop.d.ts.map +1 -0
- package/dist/ta/bop.js +75 -0
- package/dist/ta/bop.js.map +1 -0
- package/dist/ta/cci.d.ts +25 -0
- package/dist/ta/cci.d.ts.map +1 -0
- package/dist/ta/cci.js +149 -0
- package/dist/ta/cci.js.map +1 -0
- package/dist/ta/chaikinOsc.d.ts +33 -0
- package/dist/ta/chaikinOsc.d.ts.map +1 -0
- package/dist/ta/chaikinOsc.js +100 -0
- package/dist/ta/chaikinOsc.js.map +1 -0
- package/dist/ta/chandeKrollStop.d.ts +36 -0
- package/dist/ta/chandeKrollStop.d.ts.map +1 -0
- package/dist/ta/chandeKrollStop.js +185 -0
- package/dist/ta/chandeKrollStop.js.map +1 -0
- package/dist/ta/chandelier.d.ts +36 -0
- package/dist/ta/chandelier.d.ts.map +1 -0
- package/dist/ta/chandelier.js +114 -0
- package/dist/ta/chandelier.js.map +1 -0
- package/dist/ta/change.d.ts +19 -0
- package/dist/ta/change.d.ts.map +1 -0
- package/dist/ta/change.js +83 -0
- package/dist/ta/change.js.map +1 -0
- package/dist/ta/chop.d.ts +29 -0
- package/dist/ta/chop.d.ts.map +1 -0
- package/dist/ta/chop.js +167 -0
- package/dist/ta/chop.js.map +1 -0
- package/dist/ta/cmf.d.ts +26 -0
- package/dist/ta/cmf.d.ts.map +1 -0
- package/dist/ta/cmf.js +126 -0
- package/dist/ta/cmf.js.map +1 -0
- package/dist/ta/cmo.d.ts +23 -0
- package/dist/ta/cmo.d.ts.map +1 -0
- package/dist/ta/cmo.js +130 -0
- package/dist/ta/cmo.js.map +1 -0
- package/dist/ta/connorsRsi.d.ts +31 -0
- package/dist/ta/connorsRsi.d.ts.map +1 -0
- package/dist/ta/connorsRsi.js +207 -0
- package/dist/ta/connorsRsi.js.map +1 -0
- package/dist/ta/coppock.d.ts +25 -0
- package/dist/ta/coppock.d.ts.map +1 -0
- package/dist/ta/coppock.js +151 -0
- package/dist/ta/coppock.js.map +1 -0
- package/dist/ta/crossover.d.ts +29 -0
- package/dist/ta/crossover.d.ts.map +1 -0
- package/dist/ta/crossover.js +108 -0
- package/dist/ta/crossover.js.map +1 -0
- package/dist/ta/crossunder.d.ts +23 -0
- package/dist/ta/crossunder.d.ts.map +1 -0
- package/dist/ta/crossunder.js +101 -0
- package/dist/ta/crossunder.js.map +1 -0
- package/dist/ta/dema.d.ts +25 -0
- package/dist/ta/dema.d.ts.map +1 -0
- package/dist/ta/dema.js +72 -0
- package/dist/ta/dema.js.map +1 -0
- package/dist/ta/dmi.d.ts +36 -0
- package/dist/ta/dmi.d.ts.map +1 -0
- package/dist/ta/dmi.js +107 -0
- package/dist/ta/dmi.js.map +1 -0
- package/dist/ta/donchian.d.ts +29 -0
- package/dist/ta/donchian.d.ts.map +1 -0
- package/dist/ta/donchian.js +93 -0
- package/dist/ta/donchian.js.map +1 -0
- package/dist/ta/dpo.d.ts +25 -0
- package/dist/ta/dpo.d.ts.map +1 -0
- package/dist/ta/dpo.js +111 -0
- package/dist/ta/dpo.js.map +1 -0
- package/dist/ta/ema.d.ts +27 -0
- package/dist/ta/ema.d.ts.map +1 -0
- package/dist/ta/ema.js +116 -0
- package/dist/ta/ema.js.map +1 -0
- package/dist/ta/envelope.d.ts +29 -0
- package/dist/ta/envelope.d.ts.map +1 -0
- package/dist/ta/envelope.js +119 -0
- package/dist/ta/envelope.js.map +1 -0
- package/dist/ta/eom.d.ts +35 -0
- package/dist/ta/eom.d.ts.map +1 -0
- package/dist/ta/eom.js +185 -0
- package/dist/ta/eom.js.map +1 -0
- package/dist/ta/fisher.d.ts +33 -0
- package/dist/ta/fisher.d.ts.map +1 -0
- package/dist/ta/fisher.js +174 -0
- package/dist/ta/fisher.js.map +1 -0
- package/dist/ta/fixedRangeVolumeProfile.d.ts +30 -0
- package/dist/ta/fixedRangeVolumeProfile.d.ts.map +1 -0
- package/dist/ta/fixedRangeVolumeProfile.js +141 -0
- package/dist/ta/fixedRangeVolumeProfile.js.map +1 -0
- package/dist/ta/highest.d.ts +21 -0
- package/dist/ta/highest.d.ts.map +1 -0
- package/dist/ta/highest.js +131 -0
- package/dist/ta/highest.js.map +1 -0
- package/dist/ta/historicalVolatility.d.ts +28 -0
- package/dist/ta/historicalVolatility.d.ts.map +1 -0
- package/dist/ta/historicalVolatility.js +199 -0
- package/dist/ta/historicalVolatility.js.map +1 -0
- package/dist/ta/hma.d.ts +28 -0
- package/dist/ta/hma.d.ts.map +1 -0
- package/dist/ta/hma.js +64 -0
- package/dist/ta/hma.js.map +1 -0
- package/dist/ta/ichimoku.d.ts +42 -0
- package/dist/ta/ichimoku.d.ts.map +1 -0
- package/dist/ta/ichimoku.js +188 -0
- package/dist/ta/ichimoku.js.map +1 -0
- package/dist/ta/index.d.ts +5 -0
- package/dist/ta/index.d.ts.map +1 -0
- package/dist/ta/index.js +5 -0
- package/dist/ta/index.js.map +1 -0
- package/dist/ta/kama.d.ts +35 -0
- package/dist/ta/kama.d.ts.map +1 -0
- package/dist/ta/kama.js +141 -0
- package/dist/ta/kama.js.map +1 -0
- package/dist/ta/keltner.d.ts +31 -0
- package/dist/ta/keltner.d.ts.map +1 -0
- package/dist/ta/keltner.js +125 -0
- package/dist/ta/keltner.js.map +1 -0
- package/dist/ta/klinger.d.ts +32 -0
- package/dist/ta/klinger.d.ts.map +1 -0
- package/dist/ta/klinger.js +165 -0
- package/dist/ta/klinger.js.map +1 -0
- package/dist/ta/kst.d.ts +31 -0
- package/dist/ta/kst.d.ts.map +1 -0
- package/dist/ta/kst.js +139 -0
- package/dist/ta/kst.js.map +1 -0
- package/dist/ta/lib/adxFromDi.d.ts +29 -0
- package/dist/ta/lib/adxFromDi.d.ts.map +1 -0
- package/dist/ta/lib/adxFromDi.js +72 -0
- package/dist/ta/lib/adxFromDi.js.map +1 -0
- package/dist/ta/lib/applyOffset.d.ts +19 -0
- package/dist/ta/lib/applyOffset.d.ts.map +1 -0
- package/dist/ta/lib/applyOffset.js +38 -0
- package/dist/ta/lib/applyOffset.js.map +1 -0
- package/dist/ta/lib/computeMa.d.ts +25 -0
- package/dist/ta/lib/computeMa.d.ts.map +1 -0
- package/dist/ta/lib/computeMa.js +43 -0
- package/dist/ta/lib/computeMa.js.map +1 -0
- package/dist/ta/lib/computeMaOfFloat64.d.ts +24 -0
- package/dist/ta/lib/computeMaOfFloat64.d.ts.map +1 -0
- package/dist/ta/lib/computeMaOfFloat64.js +45 -0
- package/dist/ta/lib/computeMaOfFloat64.js.map +1 -0
- package/dist/ta/lib/directionalState.d.ts +90 -0
- package/dist/ta/lib/directionalState.d.ts.map +1 -0
- package/dist/ta/lib/directionalState.js +204 -0
- package/dist/ta/lib/directionalState.js.map +1 -0
- package/dist/ta/lib/donchianMid.d.ts +21 -0
- package/dist/ta/lib/donchianMid.d.ts.map +1 -0
- package/dist/ta/lib/donchianMid.js +56 -0
- package/dist/ta/lib/donchianMid.js.map +1 -0
- package/dist/ta/lib/emaFloat64.d.ts +22 -0
- package/dist/ta/lib/emaFloat64.d.ts.map +1 -0
- package/dist/ta/lib/emaFloat64.js +60 -0
- package/dist/ta/lib/emaFloat64.js.map +1 -0
- package/dist/ta/lib/linearRegression.d.ts +50 -0
- package/dist/ta/lib/linearRegression.d.ts.map +1 -0
- package/dist/ta/lib/linearRegression.js +86 -0
- package/dist/ta/lib/linearRegression.js.map +1 -0
- package/dist/ta/lib/maTypes.d.ts +37 -0
- package/dist/ta/lib/maTypes.d.ts.map +1 -0
- package/dist/ta/lib/maTypes.js +4 -0
- package/dist/ta/lib/maTypes.js.map +1 -0
- package/dist/ta/lib/pearson.d.ts +31 -0
- package/dist/ta/lib/pearson.d.ts.map +1 -0
- package/dist/ta/lib/pearson.js +79 -0
- package/dist/ta/lib/pearson.js.map +1 -0
- package/dist/ta/lib/pickCandleSource.d.ts +24 -0
- package/dist/ta/lib/pickCandleSource.d.ts.map +1 -0
- package/dist/ta/lib/pickCandleSource.js +45 -0
- package/dist/ta/lib/pickCandleSource.js.map +1 -0
- package/dist/ta/lib/readSourceField.d.ts +29 -0
- package/dist/ta/lib/readSourceField.d.ts.map +1 -0
- package/dist/ta/lib/readSourceField.js +37 -0
- package/dist/ta/lib/readSourceField.js.map +1 -0
- package/dist/ta/lib/rollingStddev.d.ts +22 -0
- package/dist/ta/lib/rollingStddev.d.ts.map +1 -0
- package/dist/ta/lib/rollingStddev.js +60 -0
- package/dist/ta/lib/rollingStddev.js.map +1 -0
- package/dist/ta/lib/smaFloat64.d.ts +20 -0
- package/dist/ta/lib/smaFloat64.d.ts.map +1 -0
- package/dist/ta/lib/smaFloat64.js +59 -0
- package/dist/ta/lib/smaFloat64.js.map +1 -0
- package/dist/ta/lib/smmaFloat64.d.ts +23 -0
- package/dist/ta/lib/smmaFloat64.d.ts.map +1 -0
- package/dist/ta/lib/smmaFloat64.js +60 -0
- package/dist/ta/lib/smmaFloat64.js.map +1 -0
- package/dist/ta/lib/sourceValue.d.ts +31 -0
- package/dist/ta/lib/sourceValue.d.ts.map +1 -0
- package/dist/ta/lib/sourceValue.js +21 -0
- package/dist/ta/lib/sourceValue.js.map +1 -0
- package/dist/ta/lib/trSeries.d.ts +48 -0
- package/dist/ta/lib/trSeries.d.ts.map +1 -0
- package/dist/ta/lib/trSeries.js +81 -0
- package/dist/ta/lib/trSeries.js.map +1 -0
- package/dist/ta/lib/volume-profile/bucketEdges.d.ts +14 -0
- package/dist/ta/lib/volume-profile/bucketEdges.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/bucketEdges.js +42 -0
- package/dist/ta/lib/volume-profile/bucketEdges.js.map +1 -0
- package/dist/ta/lib/volume-profile/bucketizeVolume.d.ts +26 -0
- package/dist/ta/lib/volume-profile/bucketizeVolume.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/bucketizeVolume.js +115 -0
- package/dist/ta/lib/volume-profile/bucketizeVolume.js.map +1 -0
- package/dist/ta/lib/volume-profile/developingSeries.d.ts +35 -0
- package/dist/ta/lib/volume-profile/developingSeries.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/developingSeries.js +97 -0
- package/dist/ta/lib/volume-profile/developingSeries.js.map +1 -0
- package/dist/ta/lib/volume-profile/index.d.ts +11 -0
- package/dist/ta/lib/volume-profile/index.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/index.js +15 -0
- package/dist/ta/lib/volume-profile/index.js.map +1 -0
- package/dist/ta/lib/volume-profile/intercept.d.ts +15 -0
- package/dist/ta/lib/volume-profile/intercept.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/intercept.js +31 -0
- package/dist/ta/lib/volume-profile/intercept.js.map +1 -0
- package/dist/ta/lib/volume-profile/scaffold.d.ts +165 -0
- package/dist/ta/lib/volume-profile/scaffold.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/scaffold.js +209 -0
- package/dist/ta/lib/volume-profile/scaffold.js.map +1 -0
- package/dist/ta/lib/volume-profile/tooHeavy.d.ts +45 -0
- package/dist/ta/lib/volume-profile/tooHeavy.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/tooHeavy.js +92 -0
- package/dist/ta/lib/volume-profile/tooHeavy.js.map +1 -0
- package/dist/ta/lib/volume-profile/types.d.ts +188 -0
- package/dist/ta/lib/volume-profile/types.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/types.js +17 -0
- package/dist/ta/lib/volume-profile/types.js.map +1 -0
- package/dist/ta/lib/volume-profile/valueArea.d.ts +14 -0
- package/dist/ta/lib/volume-profile/valueArea.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/valueArea.js +90 -0
- package/dist/ta/lib/volume-profile/valueArea.js.map +1 -0
- package/dist/ta/lib/volume-profile/volumeProfileShared.d.ts +35 -0
- package/dist/ta/lib/volume-profile/volumeProfileShared.d.ts.map +1 -0
- package/dist/ta/lib/volume-profile/volumeProfileShared.js +136 -0
- package/dist/ta/lib/volume-profile/volumeProfileShared.js.map +1 -0
- package/dist/ta/lib/vwmaFloat64.d.ts +28 -0
- package/dist/ta/lib/vwmaFloat64.d.ts.map +1 -0
- package/dist/ta/lib/vwmaFloat64.js +70 -0
- package/dist/ta/lib/vwmaFloat64.js.map +1 -0
- package/dist/ta/lib/wilderDirectional.d.ts +53 -0
- package/dist/ta/lib/wilderDirectional.d.ts.map +1 -0
- package/dist/ta/lib/wilderDirectional.js +121 -0
- package/dist/ta/lib/wilderDirectional.js.map +1 -0
- package/dist/ta/lib/wilderSmoothing.d.ts +16 -0
- package/dist/ta/lib/wilderSmoothing.d.ts.map +1 -0
- package/dist/ta/lib/wilderSmoothing.js +26 -0
- package/dist/ta/lib/wilderSmoothing.js.map +1 -0
- package/dist/ta/lib/wmaFloat64.d.ts +22 -0
- package/dist/ta/lib/wmaFloat64.d.ts.map +1 -0
- package/dist/ta/lib/wmaFloat64.js +61 -0
- package/dist/ta/lib/wmaFloat64.js.map +1 -0
- package/dist/ta/lowest.d.ts +20 -0
- package/dist/ta/lowest.d.ts.map +1 -0
- package/dist/ta/lowest.js +113 -0
- package/dist/ta/lowest.js.map +1 -0
- package/dist/ta/lsma.d.ts +31 -0
- package/dist/ta/lsma.d.ts.map +1 -0
- package/dist/ta/lsma.js +127 -0
- package/dist/ta/lsma.js.map +1 -0
- package/dist/ta/maRibbon.d.ts +52 -0
- package/dist/ta/maRibbon.d.ts.map +1 -0
- package/dist/ta/maRibbon.js +125 -0
- package/dist/ta/maRibbon.js.map +1 -0
- package/dist/ta/macd.d.ts +30 -0
- package/dist/ta/macd.d.ts.map +1 -0
- package/dist/ta/macd.js +122 -0
- package/dist/ta/macd.js.map +1 -0
- package/dist/ta/massIndex.d.ts +29 -0
- package/dist/ta/massIndex.d.ts.map +1 -0
- package/dist/ta/massIndex.js +149 -0
- package/dist/ta/massIndex.js.map +1 -0
- package/dist/ta/mcginley.d.ts +26 -0
- package/dist/ta/mcginley.d.ts.map +1 -0
- package/dist/ta/mcginley.js +118 -0
- package/dist/ta/mcginley.js.map +1 -0
- package/dist/ta/median.d.ts +24 -0
- package/dist/ta/median.d.ts.map +1 -0
- package/dist/ta/median.js +112 -0
- package/dist/ta/median.js.map +1 -0
- package/dist/ta/mfi.d.ts +38 -0
- package/dist/ta/mfi.d.ts.map +1 -0
- package/dist/ta/mfi.js +152 -0
- package/dist/ta/mfi.js.map +1 -0
- package/dist/ta/momentum.d.ts +21 -0
- package/dist/ta/momentum.d.ts.map +1 -0
- package/dist/ta/momentum.js +46 -0
- package/dist/ta/momentum.js.map +1 -0
- package/dist/ta/netVolume.d.ts +31 -0
- package/dist/ta/netVolume.d.ts.map +1 -0
- package/dist/ta/netVolume.js +118 -0
- package/dist/ta/netVolume.js.map +1 -0
- package/dist/ta/nvi.d.ts +35 -0
- package/dist/ta/nvi.d.ts.map +1 -0
- package/dist/ta/nvi.js +140 -0
- package/dist/ta/nvi.js.map +1 -0
- package/dist/ta/nz.d.ts +17 -0
- package/dist/ta/nz.d.ts.map +1 -0
- package/dist/ta/nz.js +25 -0
- package/dist/ta/nz.js.map +1 -0
- package/dist/ta/obv.d.ts +25 -0
- package/dist/ta/obv.d.ts.map +1 -0
- package/dist/ta/obv.js +109 -0
- package/dist/ta/obv.js.map +1 -0
- package/dist/ta/persistence.d.ts +40 -0
- package/dist/ta/persistence.d.ts.map +1 -0
- package/dist/ta/persistence.js +306 -0
- package/dist/ta/persistence.js.map +1 -0
- package/dist/ta/pivotsHighLow.d.ts +41 -0
- package/dist/ta/pivotsHighLow.d.ts.map +1 -0
- package/dist/ta/pivotsHighLow.js +191 -0
- package/dist/ta/pivotsHighLow.js.map +1 -0
- package/dist/ta/pivotsStandard.d.ts +46 -0
- package/dist/ta/pivotsStandard.d.ts.map +1 -0
- package/dist/ta/pivotsStandard.js +323 -0
- package/dist/ta/pivotsStandard.js.map +1 -0
- package/dist/ta/pmo.d.ts +31 -0
- package/dist/ta/pmo.d.ts.map +1 -0
- package/dist/ta/pmo.js +185 -0
- package/dist/ta/pmo.js.map +1 -0
- package/dist/ta/ppo.d.ts +37 -0
- package/dist/ta/ppo.d.ts.map +1 -0
- package/dist/ta/ppo.js +130 -0
- package/dist/ta/ppo.js.map +1 -0
- package/dist/ta/psar.d.ts +36 -0
- package/dist/ta/psar.d.ts.map +1 -0
- package/dist/ta/psar.js +283 -0
- package/dist/ta/psar.js.map +1 -0
- package/dist/ta/pvi.d.ts +32 -0
- package/dist/ta/pvi.d.ts.map +1 -0
- package/dist/ta/pvi.js +127 -0
- package/dist/ta/pvi.js.map +1 -0
- package/dist/ta/pvo.d.ts +34 -0
- package/dist/ta/pvo.d.ts.map +1 -0
- package/dist/ta/pvo.js +123 -0
- package/dist/ta/pvo.js.map +1 -0
- package/dist/ta/pvt.d.ts +26 -0
- package/dist/ta/pvt.d.ts.map +1 -0
- package/dist/ta/pvt.js +128 -0
- package/dist/ta/pvt.js.map +1 -0
- package/dist/ta/registry.d.ts +395 -0
- package/dist/ta/registry.d.ts.map +1 -0
- package/dist/ta/registry.js +440 -0
- package/dist/ta/registry.js.map +1 -0
- package/dist/ta/roc.d.ts +19 -0
- package/dist/ta/roc.d.ts.map +1 -0
- package/dist/ta/roc.js +80 -0
- package/dist/ta/roc.js.map +1 -0
- package/dist/ta/rsi.d.ts +28 -0
- package/dist/ta/rsi.d.ts.map +1 -0
- package/dist/ta/rsi.js +166 -0
- package/dist/ta/rsi.js.map +1 -0
- package/dist/ta/rvgi.d.ts +27 -0
- package/dist/ta/rvgi.d.ts.map +1 -0
- package/dist/ta/rvgi.js +139 -0
- package/dist/ta/rvgi.js.map +1 -0
- package/dist/ta/rvi.d.ts +31 -0
- package/dist/ta/rvi.d.ts.map +1 -0
- package/dist/ta/rvi.js +195 -0
- package/dist/ta/rvi.js.map +1 -0
- package/dist/ta/sessionVolumeProfile.d.ts +23 -0
- package/dist/ta/sessionVolumeProfile.d.ts.map +1 -0
- package/dist/ta/sessionVolumeProfile.js +164 -0
- package/dist/ta/sessionVolumeProfile.js.map +1 -0
- package/dist/ta/sma.d.ts +23 -0
- package/dist/ta/sma.d.ts.map +1 -0
- package/dist/ta/sma.js +112 -0
- package/dist/ta/sma.js.map +1 -0
- package/dist/ta/smi.d.ts +41 -0
- package/dist/ta/smi.d.ts.map +1 -0
- package/dist/ta/smi.js +134 -0
- package/dist/ta/smi.js.map +1 -0
- package/dist/ta/smma.d.ts +26 -0
- package/dist/ta/smma.d.ts.map +1 -0
- package/dist/ta/smma.js +105 -0
- package/dist/ta/smma.js.map +1 -0
- package/dist/ta/stdev.d.ts +25 -0
- package/dist/ta/stdev.d.ts.map +1 -0
- package/dist/ta/stdev.js +125 -0
- package/dist/ta/stdev.js.map +1 -0
- package/dist/ta/stoch.d.ts +32 -0
- package/dist/ta/stoch.d.ts.map +1 -0
- package/dist/ta/stoch.js +91 -0
- package/dist/ta/stoch.js.map +1 -0
- package/dist/ta/stochRsi.d.ts +35 -0
- package/dist/ta/stochRsi.d.ts.map +1 -0
- package/dist/ta/stochRsi.js +98 -0
- package/dist/ta/stochRsi.js.map +1 -0
- package/dist/ta/supertrend.d.ts +34 -0
- package/dist/ta/supertrend.d.ts.map +1 -0
- package/dist/ta/supertrend.js +181 -0
- package/dist/ta/supertrend.js.map +1 -0
- package/dist/ta/tema.d.ts +27 -0
- package/dist/ta/tema.d.ts.map +1 -0
- package/dist/ta/tema.js +75 -0
- package/dist/ta/tema.js.map +1 -0
- package/dist/ta/trendStrengthIndex.d.ts +35 -0
- package/dist/ta/trendStrengthIndex.d.ts.map +1 -0
- package/dist/ta/trendStrengthIndex.js +183 -0
- package/dist/ta/trendStrengthIndex.js.map +1 -0
- package/dist/ta/trix.d.ts +34 -0
- package/dist/ta/trix.d.ts.map +1 -0
- package/dist/ta/trix.js +135 -0
- package/dist/ta/trix.js.map +1 -0
- package/dist/ta/tsi.d.ts +37 -0
- package/dist/ta/tsi.d.ts.map +1 -0
- package/dist/ta/tsi.js +127 -0
- package/dist/ta/tsi.js.map +1 -0
- package/dist/ta/ulcerIndex.d.ts +34 -0
- package/dist/ta/ulcerIndex.d.ts.map +1 -0
- package/dist/ta/ulcerIndex.js +120 -0
- package/dist/ta/ulcerIndex.js.map +1 -0
- package/dist/ta/ultimateOsc.d.ts +27 -0
- package/dist/ta/ultimateOsc.d.ts.map +1 -0
- package/dist/ta/ultimateOsc.js +174 -0
- package/dist/ta/ultimateOsc.js.map +1 -0
- package/dist/ta/valuewhen.d.ts +27 -0
- package/dist/ta/valuewhen.d.ts.map +1 -0
- package/dist/ta/valuewhen.js +115 -0
- package/dist/ta/valuewhen.js.map +1 -0
- package/dist/ta/visibleRangeVolumeProfile.d.ts +26 -0
- package/dist/ta/visibleRangeVolumeProfile.d.ts.map +1 -0
- package/dist/ta/visibleRangeVolumeProfile.js +107 -0
- package/dist/ta/visibleRangeVolumeProfile.js.map +1 -0
- package/dist/ta/vol.d.ts +23 -0
- package/dist/ta/vol.d.ts.map +1 -0
- package/dist/ta/vol.js +58 -0
- package/dist/ta/vol.js.map +1 -0
- package/dist/ta/volatilityStop.d.ts +36 -0
- package/dist/ta/volatilityStop.d.ts.map +1 -0
- package/dist/ta/volatilityStop.js +203 -0
- package/dist/ta/volatilityStop.js.map +1 -0
- package/dist/ta/vortex.d.ts +30 -0
- package/dist/ta/vortex.d.ts.map +1 -0
- package/dist/ta/vortex.js +210 -0
- package/dist/ta/vortex.js.map +1 -0
- package/dist/ta/vwap.d.ts +33 -0
- package/dist/ta/vwap.d.ts.map +1 -0
- package/dist/ta/vwap.js +138 -0
- package/dist/ta/vwap.js.map +1 -0
- package/dist/ta/vwma.d.ts +24 -0
- package/dist/ta/vwma.d.ts.map +1 -0
- package/dist/ta/vwma.js +112 -0
- package/dist/ta/vwma.js.map +1 -0
- package/dist/ta/williamsFractal.d.ts +43 -0
- package/dist/ta/williamsFractal.d.ts.map +1 -0
- package/dist/ta/williamsFractal.js +171 -0
- package/dist/ta/williamsFractal.js.map +1 -0
- package/dist/ta/williamsR.d.ts +24 -0
- package/dist/ta/williamsR.d.ts.map +1 -0
- package/dist/ta/williamsR.js +75 -0
- package/dist/ta/williamsR.js.map +1 -0
- package/dist/ta/wma.d.ts +24 -0
- package/dist/ta/wma.d.ts.map +1 -0
- package/dist/ta/wma.js +106 -0
- package/dist/ta/wma.js.map +1 -0
- package/dist/ta/zigZag.d.ts +40 -0
- package/dist/ta/zigZag.d.ts.map +1 -0
- package/dist/ta/zigZag.js +296 -0
- package/dist/ta/zigZag.js.map +1 -0
- package/dist/views/barstateView.d.ts +44 -0
- package/dist/views/barstateView.d.ts.map +1 -0
- package/dist/views/barstateView.js +27 -0
- package/dist/views/barstateView.js.map +1 -0
- package/dist/views/index.d.ts +37 -0
- package/dist/views/index.d.ts.map +1 -0
- package/dist/views/index.js +28 -0
- package/dist/views/index.js.map +1 -0
- package/dist/views/refreshRuntimeViews.d.ts +15 -0
- package/dist/views/refreshRuntimeViews.d.ts.map +1 -0
- package/dist/views/refreshRuntimeViews.js +29 -0
- package/dist/views/refreshRuntimeViews.js.map +1 -0
- package/dist/views/symInfoView.d.ts +42 -0
- package/dist/views/symInfoView.d.ts.map +1 -0
- package/dist/views/symInfoView.js +32 -0
- package/dist/views/symInfoView.js.map +1 -0
- package/dist/views/timeframeView.d.ts +17 -0
- package/dist/views/timeframeView.d.ts.map +1 -0
- package/dist/views/timeframeView.js +47 -0
- package/dist/views/timeframeView.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
import type { AlertConditionEmission, AlertEmission, Capabilities, DrawingEmission, LogEmission, PlotEmission, RuntimeDiagnostic } from "@invinite-org/chartlang-adapter-kit";
|
|
2
|
+
import type { AlertConditionDefinition, Bar, DrawingBucket, DrawingCounts, DrawingKind, DrawingState, SecurityBar, Series } from "@invinite-org/chartlang-core";
|
|
3
|
+
import type { PersistentStateStore } from "./persistentStateStore.js";
|
|
4
|
+
import type { StateSlot } from "./state/stateSlot.js";
|
|
5
|
+
import type { StateStore } from "./stateStore.js";
|
|
6
|
+
import type { StreamState } from "./streamState.js";
|
|
7
|
+
import type { RuntimeViews } from "./views/index.js";
|
|
8
|
+
/**
|
|
9
|
+
* Per-handle drawing slot the runtime persists across bars. The key is
|
|
10
|
+
* `slotId#subId` (compiler-injected callsite id + per-bar sub-id from
|
|
11
|
+
* {@link nextSubId}). `state` holds the last full {@link DrawingState}
|
|
12
|
+
* emitted for the handle; subsequent `update(patch)` calls merge into
|
|
13
|
+
* it and re-emit the full payload per PLAN.md §10.3. `removed: true`
|
|
14
|
+
* is sticky — further `update` / `remove` on the handle no-op.
|
|
15
|
+
*
|
|
16
|
+
* @since 0.3
|
|
17
|
+
* @stable
|
|
18
|
+
* @example
|
|
19
|
+
* // const slot: DrawingSlot = {
|
|
20
|
+
* // handleId: "x.chart.ts:1:1#0",
|
|
21
|
+
* // kind: "line",
|
|
22
|
+
* // state: { kind: "line", anchors: [...], style: {} },
|
|
23
|
+
* // removed: false,
|
|
24
|
+
* // };
|
|
25
|
+
*/
|
|
26
|
+
export type DrawingSlot = {
|
|
27
|
+
readonly handleId: string;
|
|
28
|
+
readonly kind: DrawingKind;
|
|
29
|
+
state: DrawingState;
|
|
30
|
+
removed: boolean;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Mutable counterpart of `RunnerEmissions` (from adapter-kit) that the
|
|
34
|
+
* runtime accumulates into per bar. Task 6's execution loop pushes
|
|
35
|
+
* here during `compute`; `drain()` snapshots into the readonly
|
|
36
|
+
* `RunnerEmissions` shape the adapter receives.
|
|
37
|
+
*
|
|
38
|
+
* @since 0.1
|
|
39
|
+
* @example
|
|
40
|
+
* // const emissions: MutableRunnerEmissions = {
|
|
41
|
+
* // plots: [],
|
|
42
|
+
* // drawings: [],
|
|
43
|
+
* // alerts: [],
|
|
44
|
+
* // diagnostics: [],
|
|
45
|
+
* // fromBar: 0,
|
|
46
|
+
* // toBar: 0,
|
|
47
|
+
* // };
|
|
48
|
+
*/
|
|
49
|
+
export type MutableRunnerEmissions = {
|
|
50
|
+
plots: PlotEmission[];
|
|
51
|
+
drawings: DrawingEmission[];
|
|
52
|
+
alerts: AlertEmission[];
|
|
53
|
+
alertConditions?: AlertConditionEmission[];
|
|
54
|
+
logs: LogEmission[];
|
|
55
|
+
diagnostics: RuntimeDiagnostic[];
|
|
56
|
+
fromBar: number;
|
|
57
|
+
toBar: number;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* The contract Task 6's execution loop hands to stateful primitives
|
|
61
|
+
* (Tasks 7-8) inside a single `compute` step. Tasks 7-8 read this
|
|
62
|
+
* through {@link ACTIVE_RUNTIME_CONTEXT} — the runtime sets `.current`
|
|
63
|
+
* around `compute` in a `try/finally`, so primitives can find their
|
|
64
|
+
* series, slot store, capability bag, emission destination, and bar
|
|
65
|
+
* index without an explicit argument.
|
|
66
|
+
*
|
|
67
|
+
* `isTick` discriminates `onBarTick` calls (head-replace mode) from
|
|
68
|
+
* `onBarClose` / `onHistory` (append mode). Stateful primitives in
|
|
69
|
+
* Task 7 use it to swap append vs replace-head behaviour.
|
|
70
|
+
*
|
|
71
|
+
* `stateSlots` stores Phase-4 `state.*` / `state.tick.*` slots keyed by
|
|
72
|
+
* `${slotId}:state`; values flush into `stateStore` at close/dispose.
|
|
73
|
+
*
|
|
74
|
+
* `views` is a mutable container whose fields are replaced with fresh frozen
|
|
75
|
+
* `barstate.*`, `syminfo.*`, and `timeframe.*` snapshots as the runner
|
|
76
|
+
* advances.
|
|
77
|
+
*
|
|
78
|
+
* `resolvedInputs` is the frozen bag handed to `compute({ inputs })`,
|
|
79
|
+
* resolved once at mount from manifest defaults plus adapter overrides.
|
|
80
|
+
*
|
|
81
|
+
* @since 0.1
|
|
82
|
+
* @example
|
|
83
|
+
* // const ctx: RuntimeContext = {
|
|
84
|
+
* // stream, stateStore, capabilities, emissions,
|
|
85
|
+
* // barIndex: () => 0,
|
|
86
|
+
* // isTick: false,
|
|
87
|
+
* // };
|
|
88
|
+
*/
|
|
89
|
+
export type RuntimeContext = {
|
|
90
|
+
readonly stream: StreamState;
|
|
91
|
+
readonly stateStore: StateStore;
|
|
92
|
+
readonly persistentStateStore?: PersistentStateStore;
|
|
93
|
+
lastPersistTime: number;
|
|
94
|
+
readonly capabilities: Capabilities;
|
|
95
|
+
readonly emissions: MutableRunnerEmissions;
|
|
96
|
+
readonly barIndex: () => number;
|
|
97
|
+
isTick: boolean;
|
|
98
|
+
/**
|
|
99
|
+
* Per-handle drawing slot store keyed by `slotId#subId`. Allocated
|
|
100
|
+
* on first `op: "create"`; mutated by `update(patch)` to merge the
|
|
101
|
+
* patch into the slot's `state`; flagged `removed: true` on
|
|
102
|
+
* `remove()`. Cleared on `dispose`. Persists across bars per
|
|
103
|
+
* PLAN.md §10.3. @since 0.3
|
|
104
|
+
*/
|
|
105
|
+
readonly drawingSlots: Map<string, DrawingSlot>;
|
|
106
|
+
/**
|
|
107
|
+
* Per-callsite per-bar sub-id counter. Each `draw.<kind>(...)` call
|
|
108
|
+
* inside a bar reads `nextSubId(ctx, slotId)`; the counter resets
|
|
109
|
+
* at the top of each `onBarClose` / `onBarTick` so iteration `i` at
|
|
110
|
+
* the same callsite yields the same `slotId#i` across bars.
|
|
111
|
+
* Cleared on `dispose`. @since 0.3
|
|
112
|
+
*/
|
|
113
|
+
readonly drawingSubIdCounters: Map<string, number>;
|
|
114
|
+
/**
|
|
115
|
+
* Live per-bucket allocation tally for the current script. Each
|
|
116
|
+
* `op: "create"` increments the relevant bucket; each
|
|
117
|
+
* `op: "remove"` decrements (clamped at 0). `op: "update"` is
|
|
118
|
+
* free. `pushDrawing` drops the emission with
|
|
119
|
+
* `drawing-budget-exceeded` once a bucket hits its effective
|
|
120
|
+
* budget (min of adapter cap + `scriptMaxDrawings`). Reset to
|
|
121
|
+
* zero on `dispose`. @since 0.3
|
|
122
|
+
*/
|
|
123
|
+
readonly drawingBucketCounters: Record<DrawingBucket, number>;
|
|
124
|
+
/**
|
|
125
|
+
* The script's per-bucket cap from `defineIndicator({ maxDrawings:
|
|
126
|
+
* ... })` / `defineDrawing({ maxDrawings: ... })`. `null` when
|
|
127
|
+
* omitted — `pushDrawing` then enforces the adapter cap alone.
|
|
128
|
+
* Effective budget is `min(scriptMaxDrawings[b],
|
|
129
|
+
* capabilities.maxDrawingsPerScript[b])`. @since 0.3
|
|
130
|
+
*/
|
|
131
|
+
readonly scriptMaxDrawings: DrawingCounts | null;
|
|
132
|
+
/**
|
|
133
|
+
* Runtime `state.*` / `state.tick.*` slot store keyed by
|
|
134
|
+
* `${slotId}:state`. Non-tick slots keep committed/tentative values;
|
|
135
|
+
* tick slots commit writes immediately. Cleared on `dispose` after
|
|
136
|
+
* flushing snapshots to `stateStore`. @since 0.4
|
|
137
|
+
*/
|
|
138
|
+
readonly stateSlots: Map<string, StateSlot<unknown>>;
|
|
139
|
+
/**
|
|
140
|
+
* Secondary candle streams keyed by `IntervalDescriptor.value`.
|
|
141
|
+
* Mutated only by `createScriptRunner` mount/restore/routing. @since 0.5
|
|
142
|
+
*/
|
|
143
|
+
readonly secondaryStreams: Map<string, StreamState>;
|
|
144
|
+
/**
|
|
145
|
+
* Per-`request.security` slot cache keyed by `slotId|interval`. Phase 4
|
|
146
|
+
* stores NaN fallback bars here; Phase 5 replaces the value producer with
|
|
147
|
+
* aligned secondary stream series while preserving stable identity.
|
|
148
|
+
* @since 0.4
|
|
149
|
+
*/
|
|
150
|
+
readonly requestSecurityBars: Map<string, SecurityBar>;
|
|
151
|
+
/**
|
|
152
|
+
* Per-compute aligned numeric arrays keyed by
|
|
153
|
+
* `slotId|interval|sourceKey`. Cleared on main-stream close/tick before
|
|
154
|
+
* `compute` so `request.security` re-aligns against the latest
|
|
155
|
+
* secondary buffers. @since 0.5
|
|
156
|
+
*/
|
|
157
|
+
readonly requestSecurityAlignments: Map<string, ReadonlyArray<number>>;
|
|
158
|
+
/**
|
|
159
|
+
* Per-compute cache of ascending `Bar[]` materialisations keyed by the
|
|
160
|
+
* source `StreamState`. Shared by `request.security` and `request.lowerTf`
|
|
161
|
+
* (via `request/streamBars.ts:ascendingBarsFor`) so a stable bar-array
|
|
162
|
+
* identity is reused across every consumer in a bar — the `getOrAlign` /
|
|
163
|
+
* `getOrBucket` WeakMap caches actually hit and the same ring buffer is
|
|
164
|
+
* walked once per bar instead of 10×. Cleared alongside
|
|
165
|
+
* {@link requestSecurityAlignments}. @since 0.5
|
|
166
|
+
*/
|
|
167
|
+
readonly requestSecurityAscendingBars: Map<StreamState, ReadonlyArray<Bar>>;
|
|
168
|
+
/**
|
|
169
|
+
* Per-`request.lowerTf` slot cache keyed by `slotId|interval`. Values are
|
|
170
|
+
* stable `Series<ReadonlyArray<Bar>>` proxies over the latest LTF bucket
|
|
171
|
+
* materialisation. @since 0.6
|
|
172
|
+
*/
|
|
173
|
+
readonly requestLowerTfViews: Map<string, Series<ReadonlyArray<Bar>>>;
|
|
174
|
+
/**
|
|
175
|
+
* Runtime diagnostic dedupe for `request.*` capability gates, keyed by
|
|
176
|
+
* `code|slotId|interval|kind`. Cleared on `dispose`. @since 0.4
|
|
177
|
+
*/
|
|
178
|
+
readonly diagnosedRequestKeys: Set<string>;
|
|
179
|
+
/**
|
|
180
|
+
* Manifest-declared alert conditions keyed by condition id. Used by
|
|
181
|
+
* `signal(conditionId, fired)` to reject unknown ids without
|
|
182
|
+
* re-reading the manifest each bar. @since 0.5
|
|
183
|
+
*/
|
|
184
|
+
readonly alertConditions?: ReadonlyMap<string, AlertConditionDefinition>;
|
|
185
|
+
/**
|
|
186
|
+
* Dedupe for alert-condition capability/unknown-id diagnostics, keyed
|
|
187
|
+
* by `code|conditionId`. Cleared on dispose. @since 0.5
|
|
188
|
+
*/
|
|
189
|
+
readonly diagnosedAlertConditionKeys?: Set<string>;
|
|
190
|
+
/**
|
|
191
|
+
* Number of `runtime.log.*` emissions accepted in the active compute
|
|
192
|
+
* step. Reset at the start of each close/tick. @since 0.5
|
|
193
|
+
*/
|
|
194
|
+
logBudget: number;
|
|
195
|
+
/**
|
|
196
|
+
* Per-step dedupe flag for `runtime-log-budget-exceeded`. Reset with
|
|
197
|
+
* `logBudget` at the start of each close/tick. @since 0.5
|
|
198
|
+
*/
|
|
199
|
+
logBudgetExceededDiagnosed: boolean;
|
|
200
|
+
/**
|
|
201
|
+
* Frozen effective input values keyed by script input name. Resolved once
|
|
202
|
+
* at mount and reused by every compute step. @since 0.4
|
|
203
|
+
*/
|
|
204
|
+
resolvedInputs: Readonly<Record<string, unknown>>;
|
|
205
|
+
/**
|
|
206
|
+
* Runtime diagnostic dedupe for mount-time input override failures,
|
|
207
|
+
* keyed by manifest input key. Cleared on `dispose`. @since 0.4
|
|
208
|
+
*/
|
|
209
|
+
readonly diagnosedInputKeys: Set<string>;
|
|
210
|
+
/**
|
|
211
|
+
* Runtime `barstate.*`, `syminfo.*`, and `timeframe.*` views. The
|
|
212
|
+
* container is mutable; each assigned view snapshot is frozen.
|
|
213
|
+
* @since 0.4
|
|
214
|
+
*/
|
|
215
|
+
readonly views: RuntimeViews;
|
|
216
|
+
};
|
|
217
|
+
/**
|
|
218
|
+
* Process-wide context slot. Task 6's `createScriptRunner` mutates
|
|
219
|
+
* `.current` inside `try { ... } finally { current = null }` around
|
|
220
|
+
* every `compute` invocation; Tasks 7-8 read it inside primitive
|
|
221
|
+
* implementations. JavaScript's single-threaded execution model
|
|
222
|
+
* guarantees only one `compute` runs at a time, so this ambient
|
|
223
|
+
* slot is safe.
|
|
224
|
+
*
|
|
225
|
+
* The export is intentionally just a holder — no class, no methods,
|
|
226
|
+
* no validation. Responsibility for setting and clearing lives in
|
|
227
|
+
* Task 6.
|
|
228
|
+
*
|
|
229
|
+
* @since 0.1
|
|
230
|
+
* @example
|
|
231
|
+
* // import { ACTIVE_RUNTIME_CONTEXT }
|
|
232
|
+
* // from "@invinite-org/chartlang-runtime";
|
|
233
|
+
* // ACTIVE_RUNTIME_CONTEXT.current; // null at module load
|
|
234
|
+
*/
|
|
235
|
+
export declare const ACTIVE_RUNTIME_CONTEXT: {
|
|
236
|
+
current: RuntimeContext | null;
|
|
237
|
+
};
|
|
238
|
+
//# sourceMappingURL=runtimeContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtimeContext.d.ts","sourceRoot":"","sources":["../src/runtimeContext.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,WAAW,EACX,YAAY,EACZ,iBAAiB,EACpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EACR,wBAAwB,EACxB,GAAG,EACH,aAAa,EACb,aAAa,EACb,WAAW,EACX,YAAY,EACZ,WAAW,EACX,MAAM,EACT,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACjC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAC3C,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IACrD,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,MAAM,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChD;;;;;;OAMG;IACH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnD;;;;;;;;OAQG;IACH,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC9D;;;;;;OAMG;IACH,QAAQ,CAAC,iBAAiB,EAAE,aAAa,GAAG,IAAI,CAAC;IACjD;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACrD;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpD;;;;;OAKG;IACH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvD;;;;;OAKG;IACH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE;;;;;;;;OAQG;IACH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5E;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtE;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACzE;;;OAGG;IACH,QAAQ,CAAC,2BAA2B,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnD;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,0BAA0B,EAAE,OAAO,CAAC;IACpC;;;OAGG;IACH,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;CAChC,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,sBAAsB,EAAE;IAAE,OAAO,EAAE,cAAc,GAAG,IAAI,CAAA;CAEpE,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
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
|
+
* Process-wide context slot. Task 6's `createScriptRunner` mutates
|
|
5
|
+
* `.current` inside `try { ... } finally { current = null }` around
|
|
6
|
+
* every `compute` invocation; Tasks 7-8 read it inside primitive
|
|
7
|
+
* implementations. JavaScript's single-threaded execution model
|
|
8
|
+
* guarantees only one `compute` runs at a time, so this ambient
|
|
9
|
+
* slot is safe.
|
|
10
|
+
*
|
|
11
|
+
* The export is intentionally just a holder — no class, no methods,
|
|
12
|
+
* no validation. Responsibility for setting and clearing lives in
|
|
13
|
+
* Task 6.
|
|
14
|
+
*
|
|
15
|
+
* @since 0.1
|
|
16
|
+
* @example
|
|
17
|
+
* // import { ACTIVE_RUNTIME_CONTEXT }
|
|
18
|
+
* // from "@invinite-org/chartlang-runtime";
|
|
19
|
+
* // ACTIVE_RUNTIME_CONTEXT.current; // null at module load
|
|
20
|
+
*/
|
|
21
|
+
export const ACTIVE_RUNTIME_CONTEXT = {
|
|
22
|
+
current: null,
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=runtimeContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtimeContext.js","sourceRoot":"","sources":["../src/runtimeContext.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAgP/D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAuC;IACtE,OAAO,EAAE,IAAI;CAChB,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { Series } from "@invinite-org/chartlang-core";
|
|
2
|
+
import type { RingBufferLike } from "./ringBuffer.js";
|
|
3
|
+
/**
|
|
4
|
+
* Wrap a `RingBufferLike<T>` in the user-facing `Series<T>` Proxy shape
|
|
5
|
+
* from PLAN.md §6.6. The Proxy is created **once per backing buffer**
|
|
6
|
+
* at stream/slot construction time and re-used across every bar — its
|
|
7
|
+
* identity is stable so script authors can keep `const ema = ta.ema(...)`
|
|
8
|
+
* at the top of `compute` and reference `ema` the same way every bar.
|
|
9
|
+
*
|
|
10
|
+
* Property reads dispatch as follows:
|
|
11
|
+
* - `series.current` → `buf.at(0)`
|
|
12
|
+
* - `series.length` → `buf.length`
|
|
13
|
+
* - `series[n]` (string coerces to a non-negative integer) → `buf.at(n)`
|
|
14
|
+
* - any other key → `undefined`
|
|
15
|
+
*
|
|
16
|
+
* For numeric buffers (`Float64RingBuffer`) out-of-range reads return
|
|
17
|
+
* `NaN`; for object buffers they return `undefined`. The Proxy passes
|
|
18
|
+
* the underlying sentinel through verbatim.
|
|
19
|
+
*
|
|
20
|
+
* @since 0.1
|
|
21
|
+
* @example
|
|
22
|
+
* // import { Float64RingBuffer, makeSeriesView }
|
|
23
|
+
* // from "@invinite-org/chartlang-runtime";
|
|
24
|
+
* // const buf = new Float64RingBuffer(8);
|
|
25
|
+
* // const view = makeSeriesView<number>(buf);
|
|
26
|
+
* // buf.append(42);
|
|
27
|
+
* // view.current; // 42
|
|
28
|
+
* // view[0]; // 42
|
|
29
|
+
* // view.length; // 1
|
|
30
|
+
*/
|
|
31
|
+
export declare function makeSeriesView<T>(buf: RingBufferLike<T>): Series<T>;
|
|
32
|
+
/**
|
|
33
|
+
* Offset-shifted variant of {@link makeSeriesView}. `offset === 0`
|
|
34
|
+
* returns the same Proxy shape (and is the identity-preserving fast
|
|
35
|
+
* path callers should special-case at the call site). For
|
|
36
|
+
* `offset === k > 0`, `view.current === buf.at(k)` — i.e. the value
|
|
37
|
+
* `k` bars ago, matching `lib/applyOffset`'s
|
|
38
|
+
* `out[i] = values[i − offset]` semantics. For `offset === -k`,
|
|
39
|
+
* `view.current === buf.at(-k)` — an OOR read returning the underlying
|
|
40
|
+
* sentinel (NaN for `Float64RingBuffer`, `undefined` for object
|
|
41
|
+
* `RingBuffer`).
|
|
42
|
+
*
|
|
43
|
+
* The shift is applied on every read — no allocation, no per-bar
|
|
44
|
+
* work. Callers cache the returned Proxy per `(slot, offset)` pair so
|
|
45
|
+
* the view's identity stays stable across bars.
|
|
46
|
+
*
|
|
47
|
+
* @since 0.2
|
|
48
|
+
* @example
|
|
49
|
+
* // import { Float64RingBuffer, makeShiftedSeriesView }
|
|
50
|
+
* // from "@invinite-org/chartlang-runtime";
|
|
51
|
+
* // const buf = new Float64RingBuffer(8);
|
|
52
|
+
* // buf.append(10); buf.append(20); buf.append(30);
|
|
53
|
+
* // const view = makeShiftedSeriesView<number>(buf, 1);
|
|
54
|
+
* // view.current; // 20 (one bar ago)
|
|
55
|
+
* // view[0]; // 20
|
|
56
|
+
* // view[1]; // 10
|
|
57
|
+
*/
|
|
58
|
+
export declare function makeShiftedSeriesView<T>(buf: RingBufferLike<T>, offset: number): Series<T>;
|
|
59
|
+
//# sourceMappingURL=seriesView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seriesView.d.ts","sourceRoot":"","sources":["../src/seriesView.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAoBnE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAqB1F"}
|
|
@@ -0,0 +1,109 @@
|
|
|
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
|
+
* Wrap a `RingBufferLike<T>` in the user-facing `Series<T>` Proxy shape
|
|
5
|
+
* from PLAN.md §6.6. The Proxy is created **once per backing buffer**
|
|
6
|
+
* at stream/slot construction time and re-used across every bar — its
|
|
7
|
+
* identity is stable so script authors can keep `const ema = ta.ema(...)`
|
|
8
|
+
* at the top of `compute` and reference `ema` the same way every bar.
|
|
9
|
+
*
|
|
10
|
+
* Property reads dispatch as follows:
|
|
11
|
+
* - `series.current` → `buf.at(0)`
|
|
12
|
+
* - `series.length` → `buf.length`
|
|
13
|
+
* - `series[n]` (string coerces to a non-negative integer) → `buf.at(n)`
|
|
14
|
+
* - any other key → `undefined`
|
|
15
|
+
*
|
|
16
|
+
* For numeric buffers (`Float64RingBuffer`) out-of-range reads return
|
|
17
|
+
* `NaN`; for object buffers they return `undefined`. The Proxy passes
|
|
18
|
+
* the underlying sentinel through verbatim.
|
|
19
|
+
*
|
|
20
|
+
* @since 0.1
|
|
21
|
+
* @example
|
|
22
|
+
* // import { Float64RingBuffer, makeSeriesView }
|
|
23
|
+
* // from "@invinite-org/chartlang-runtime";
|
|
24
|
+
* // const buf = new Float64RingBuffer(8);
|
|
25
|
+
* // const view = makeSeriesView<number>(buf);
|
|
26
|
+
* // buf.append(42);
|
|
27
|
+
* // view.current; // 42
|
|
28
|
+
* // view[0]; // 42
|
|
29
|
+
* // view.length; // 1
|
|
30
|
+
*/
|
|
31
|
+
export function makeSeriesView(buf) {
|
|
32
|
+
return new Proxy({}, {
|
|
33
|
+
get(_target, prop) {
|
|
34
|
+
if (prop === "current")
|
|
35
|
+
return buf.at(0);
|
|
36
|
+
if (prop === "length")
|
|
37
|
+
return buf.length;
|
|
38
|
+
if (typeof prop === "string") {
|
|
39
|
+
const n = Number(prop);
|
|
40
|
+
if (Number.isInteger(n) && n >= 0)
|
|
41
|
+
return buf.at(n);
|
|
42
|
+
}
|
|
43
|
+
return undefined;
|
|
44
|
+
},
|
|
45
|
+
has(_target, prop) {
|
|
46
|
+
if (prop === "current" || prop === "length")
|
|
47
|
+
return true;
|
|
48
|
+
if (typeof prop === "string") {
|
|
49
|
+
const n = Number(prop);
|
|
50
|
+
return Number.isInteger(n) && n >= 0;
|
|
51
|
+
}
|
|
52
|
+
return false;
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Offset-shifted variant of {@link makeSeriesView}. `offset === 0`
|
|
58
|
+
* returns the same Proxy shape (and is the identity-preserving fast
|
|
59
|
+
* path callers should special-case at the call site). For
|
|
60
|
+
* `offset === k > 0`, `view.current === buf.at(k)` — i.e. the value
|
|
61
|
+
* `k` bars ago, matching `lib/applyOffset`'s
|
|
62
|
+
* `out[i] = values[i − offset]` semantics. For `offset === -k`,
|
|
63
|
+
* `view.current === buf.at(-k)` — an OOR read returning the underlying
|
|
64
|
+
* sentinel (NaN for `Float64RingBuffer`, `undefined` for object
|
|
65
|
+
* `RingBuffer`).
|
|
66
|
+
*
|
|
67
|
+
* The shift is applied on every read — no allocation, no per-bar
|
|
68
|
+
* work. Callers cache the returned Proxy per `(slot, offset)` pair so
|
|
69
|
+
* the view's identity stays stable across bars.
|
|
70
|
+
*
|
|
71
|
+
* @since 0.2
|
|
72
|
+
* @example
|
|
73
|
+
* // import { Float64RingBuffer, makeShiftedSeriesView }
|
|
74
|
+
* // from "@invinite-org/chartlang-runtime";
|
|
75
|
+
* // const buf = new Float64RingBuffer(8);
|
|
76
|
+
* // buf.append(10); buf.append(20); buf.append(30);
|
|
77
|
+
* // const view = makeShiftedSeriesView<number>(buf, 1);
|
|
78
|
+
* // view.current; // 20 (one bar ago)
|
|
79
|
+
* // view[0]; // 20
|
|
80
|
+
* // view[1]; // 10
|
|
81
|
+
*/
|
|
82
|
+
export function makeShiftedSeriesView(buf, offset) {
|
|
83
|
+
if (offset === 0)
|
|
84
|
+
return makeSeriesView(buf);
|
|
85
|
+
return new Proxy({}, {
|
|
86
|
+
get(_target, prop) {
|
|
87
|
+
if (prop === "current")
|
|
88
|
+
return buf.at(offset);
|
|
89
|
+
if (prop === "length")
|
|
90
|
+
return buf.length;
|
|
91
|
+
if (typeof prop === "string") {
|
|
92
|
+
const n = Number(prop);
|
|
93
|
+
if (Number.isInteger(n) && n >= 0)
|
|
94
|
+
return buf.at(n + offset);
|
|
95
|
+
}
|
|
96
|
+
return undefined;
|
|
97
|
+
},
|
|
98
|
+
has(_target, prop) {
|
|
99
|
+
if (prop === "current" || prop === "length")
|
|
100
|
+
return true;
|
|
101
|
+
if (typeof prop === "string") {
|
|
102
|
+
const n = Number(prop);
|
|
103
|
+
return Number.isInteger(n) && n >= 0;
|
|
104
|
+
}
|
|
105
|
+
return false;
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=seriesView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seriesView.js","sourceRoot":"","sources":["../src/seriesView.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAM/D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,cAAc,CAAI,GAAsB;IACpD,OAAO,IAAI,KAAK,CAAC,EAAe,EAAE;QAC9B,GAAG,CAAC,OAAO,EAAE,IAAI;YACb,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACzC,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,GAAG,CAAC,MAAM,CAAC;YACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,GAAG,CAAC,OAAO,EAAE,IAAI;YACb,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YACzD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;KACJ,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,qBAAqB,CAAI,GAAsB,EAAE,MAAc;IAC3E,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,cAAc,CAAI,GAAG,CAAC,CAAC;IAChD,OAAO,IAAI,KAAK,CAAC,EAAe,EAAE;QAC9B,GAAG,CAAC,OAAO,EAAE,IAAI;YACb,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,GAAG,CAAC,MAAM,CAAC;YACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,GAAG,CAAC,OAAO,EAAE,IAAI;YACb,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YACzD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;KACJ,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { commitStateSlots, flushStateSlots, restoreStateSlots, resetTentativeStateSlots, serialiseStateSlots, } from "./lifecycle.js";
|
|
2
|
+
export type { StateSlotSnapshot } from "./lifecycle.js";
|
|
3
|
+
export { buildStateNamespace } from "./stateNamespace.js";
|
|
4
|
+
export type { StateSlotSerialisers } from "./stateSlot.js";
|
|
5
|
+
export { asMutableSlot, StateSlot } from "./stateSlot.js";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,mBAAmB,GACtB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// Copyright (c) 2026 Invinite. Licensed under the MIT License.
|
|
2
|
+
// See the LICENSE file in the repo root for full license text.
|
|
3
|
+
export { commitStateSlots, flushStateSlots, restoreStateSlots, resetTentativeStateSlots, serialiseStateSlots, } from "./lifecycle.js";
|
|
4
|
+
export { buildStateNamespace } from "./stateNamespace.js";
|
|
5
|
+
export { asMutableSlot, StateSlot } from "./stateSlot.js";
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAE/D,OAAO,EACH,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,mBAAmB,GACtB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { RuntimeContext } from "../runtimeContext.js";
|
|
2
|
+
/**
|
|
3
|
+
* Persisted representation for a runtime state slot. Keys use
|
|
4
|
+
* `${slotId}:state`, matching the compiler-injected slot id plus the
|
|
5
|
+
* state namespace suffix.
|
|
6
|
+
*
|
|
7
|
+
* @since 0.4
|
|
8
|
+
* @stable
|
|
9
|
+
* @example
|
|
10
|
+
* const snapshot: StateSlotSnapshot<number> = {
|
|
11
|
+
* committed: 1,
|
|
12
|
+
* tentative: 2,
|
|
13
|
+
* };
|
|
14
|
+
* void snapshot;
|
|
15
|
+
*/
|
|
16
|
+
export type StateSlotSnapshot<T> = {
|
|
17
|
+
readonly committed: T;
|
|
18
|
+
readonly tentative: T;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Reset all non-`state.tick.*` tentative values before tick compute.
|
|
22
|
+
*
|
|
23
|
+
* @since 0.4
|
|
24
|
+
* @stable
|
|
25
|
+
* @example
|
|
26
|
+
* // resetTentativeStateSlots(ctx);
|
|
27
|
+
* const called = true;
|
|
28
|
+
* void called;
|
|
29
|
+
*/
|
|
30
|
+
export declare function resetTentativeStateSlots(ctx: RuntimeContext): void;
|
|
31
|
+
/**
|
|
32
|
+
* Commit all non-`state.tick.*` tentative values after close compute.
|
|
33
|
+
*
|
|
34
|
+
* @since 0.4
|
|
35
|
+
* @stable
|
|
36
|
+
* @example
|
|
37
|
+
* // commitStateSlots(ctx);
|
|
38
|
+
* const called = true;
|
|
39
|
+
* void called;
|
|
40
|
+
*/
|
|
41
|
+
export declare function commitStateSlots(ctx: RuntimeContext): void;
|
|
42
|
+
/**
|
|
43
|
+
* Flush runtime state slots into the backing {@link StateStore}.
|
|
44
|
+
*
|
|
45
|
+
* @since 0.4
|
|
46
|
+
* @stable
|
|
47
|
+
* @example
|
|
48
|
+
* // flushStateSlots(ctx);
|
|
49
|
+
* const called = true;
|
|
50
|
+
* void called;
|
|
51
|
+
*/
|
|
52
|
+
export declare function flushStateSlots(ctx: RuntimeContext): void;
|
|
53
|
+
/**
|
|
54
|
+
* Serialise runtime state slots into a snapshot payload.
|
|
55
|
+
*
|
|
56
|
+
* @since 0.5
|
|
57
|
+
* @stable
|
|
58
|
+
* @example
|
|
59
|
+
* // const slots = serialiseStateSlots(ctx);
|
|
60
|
+
* const slots = {};
|
|
61
|
+
* void slots;
|
|
62
|
+
*/
|
|
63
|
+
export declare function serialiseStateSlots(ctx: RuntimeContext): Readonly<Record<string, unknown>>;
|
|
64
|
+
/**
|
|
65
|
+
* Seed restored state-slot payloads into the backing slot store.
|
|
66
|
+
*
|
|
67
|
+
* @since 0.5
|
|
68
|
+
* @stable
|
|
69
|
+
* @example
|
|
70
|
+
* // restoreStateSlots(ctx, snapshot.slots);
|
|
71
|
+
* const restored = true;
|
|
72
|
+
* void restored;
|
|
73
|
+
*/
|
|
74
|
+
export declare function restoreStateSlots(ctx: RuntimeContext, slots: Readonly<Record<string, unknown>>): void;
|
|
75
|
+
//# sourceMappingURL=lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/state/lifecycle.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI;IAC/B,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;CACzB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAIlE;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAI1D;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAOzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAS1F;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC7B,GAAG,EAAE,cAAc,EACnB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACzC,IAAI,CAKN"}
|
|
@@ -0,0 +1,87 @@
|
|
|
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
|
+
* Reset all non-`state.tick.*` tentative values before tick compute.
|
|
5
|
+
*
|
|
6
|
+
* @since 0.4
|
|
7
|
+
* @stable
|
|
8
|
+
* @example
|
|
9
|
+
* // resetTentativeStateSlots(ctx);
|
|
10
|
+
* const called = true;
|
|
11
|
+
* void called;
|
|
12
|
+
*/
|
|
13
|
+
export function resetTentativeStateSlots(ctx) {
|
|
14
|
+
for (const slot of ctx.stateSlots.values()) {
|
|
15
|
+
slot.onBarTick();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Commit all non-`state.tick.*` tentative values after close compute.
|
|
20
|
+
*
|
|
21
|
+
* @since 0.4
|
|
22
|
+
* @stable
|
|
23
|
+
* @example
|
|
24
|
+
* // commitStateSlots(ctx);
|
|
25
|
+
* const called = true;
|
|
26
|
+
* void called;
|
|
27
|
+
*/
|
|
28
|
+
export function commitStateSlots(ctx) {
|
|
29
|
+
for (const slot of ctx.stateSlots.values()) {
|
|
30
|
+
slot.onBarClose();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Flush runtime state slots into the backing {@link StateStore}.
|
|
35
|
+
*
|
|
36
|
+
* @since 0.4
|
|
37
|
+
* @stable
|
|
38
|
+
* @example
|
|
39
|
+
* // flushStateSlots(ctx);
|
|
40
|
+
* const called = true;
|
|
41
|
+
* void called;
|
|
42
|
+
*/
|
|
43
|
+
export function flushStateSlots(ctx) {
|
|
44
|
+
for (const [key, slot] of ctx.stateSlots.entries()) {
|
|
45
|
+
ctx.stateStore.set(key, {
|
|
46
|
+
committed: slot.committed,
|
|
47
|
+
tentative: slot.tentative,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Serialise runtime state slots into a snapshot payload.
|
|
53
|
+
*
|
|
54
|
+
* @since 0.5
|
|
55
|
+
* @stable
|
|
56
|
+
* @example
|
|
57
|
+
* // const slots = serialiseStateSlots(ctx);
|
|
58
|
+
* const slots = {};
|
|
59
|
+
* void slots;
|
|
60
|
+
*/
|
|
61
|
+
export function serialiseStateSlots(ctx) {
|
|
62
|
+
const out = {};
|
|
63
|
+
for (const [key, slot] of ctx.stateSlots.entries()) {
|
|
64
|
+
out[key] = {
|
|
65
|
+
committed: slot.serialise(slot.committed),
|
|
66
|
+
tentative: slot.serialise(slot.tentative),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
return Object.freeze(out);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Seed restored state-slot payloads into the backing slot store.
|
|
73
|
+
*
|
|
74
|
+
* @since 0.5
|
|
75
|
+
* @stable
|
|
76
|
+
* @example
|
|
77
|
+
* // restoreStateSlots(ctx, snapshot.slots);
|
|
78
|
+
* const restored = true;
|
|
79
|
+
* void restored;
|
|
80
|
+
*/
|
|
81
|
+
export function restoreStateSlots(ctx, slots) {
|
|
82
|
+
ctx.stateSlots.clear();
|
|
83
|
+
for (const [key, value] of Object.entries(slots)) {
|
|
84
|
+
ctx.stateStore.set(key, value);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/state/lifecycle.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAuB/D;;;;;;;;;GASG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAAmB;IACxD,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAmB;IAChD,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,GAAmB;IAC/C,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;QACjD,GAAG,CAAC,UAAU,CAAC,GAAG,CAA6B,GAAG,EAAE;YAChD,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC5B,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAmB;IACnD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;QACjD,GAAG,CAAC,GAAG,CAAC,GAAG;YACP,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;YACzC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;SAC5C,CAAC;IACN,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC7B,GAAmB,EACnB,KAAwC;IAExC,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { StateNamespace } from "@invinite-org/chartlang-core";
|
|
2
|
+
/**
|
|
3
|
+
* Build the runtime `state` namespace installed on `ComputeContext`.
|
|
4
|
+
* Each function accepts the compiler-injected `slotId` as its first
|
|
5
|
+
* parameter, then the script-facing init value.
|
|
6
|
+
*
|
|
7
|
+
* @since 0.4
|
|
8
|
+
* @stable
|
|
9
|
+
* @example
|
|
10
|
+
* const ns = buildStateNamespace();
|
|
11
|
+
* void ns.float;
|
|
12
|
+
*/
|
|
13
|
+
export declare function buildStateNamespace(): StateNamespace;
|
|
14
|
+
//# sourceMappingURL=stateNamespace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stateNamespace.d.ts","sourceRoot":"","sources":["../../src/state/stateNamespace.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,8BAA8B,CAAC;AA0ChF;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,IAAI,cAAc,CAwBpD"}
|