@invinite-org/chartlang-runtime 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +245 -0
- package/README.md +1 -2
- package/dist/barPoint.d.ts +20 -0
- package/dist/barPoint.d.ts.map +1 -0
- package/dist/barPoint.js +72 -0
- package/dist/barPoint.js.map +1 -0
- package/dist/bufferSnapshot.d.ts +102 -0
- package/dist/bufferSnapshot.d.ts.map +1 -0
- package/dist/bufferSnapshot.js +119 -0
- package/dist/bufferSnapshot.js.map +1 -0
- package/dist/buildComputeContext.js.map +1 -1
- package/dist/createScriptRunner.d.ts +6 -3
- package/dist/createScriptRunner.d.ts.map +1 -1
- package/dist/createScriptRunner.js +29 -5
- package/dist/createScriptRunner.js.map +1 -1
- package/dist/dep/DepOutputStore.js.map +1 -1
- package/dist/dep/DepRunner.d.ts.map +1 -1
- package/dist/dep/DepRunner.js +1 -0
- package/dist/dep/DepRunner.js.map +1 -1
- package/dist/dep/depOutput.js.map +1 -1
- package/dist/dep/emissionFilter.js.map +1 -1
- package/dist/dep/index.js.map +1 -1
- package/dist/emit/alert.js.map +1 -1
- package/dist/emit/alertConditionEmission.js.map +1 -1
- package/dist/emit/applyPlotOverride.js.map +1 -1
- package/dist/emit/draw/annotations/arrow.js +1 -1
- package/dist/emit/draw/annotations/arrow.js.map +1 -1
- package/dist/emit/draw/annotations/arrowMarkDown.js +1 -1
- package/dist/emit/draw/annotations/arrowMarkDown.js.map +1 -1
- package/dist/emit/draw/annotations/arrowMarkUp.js +1 -1
- package/dist/emit/draw/annotations/arrowMarkUp.js.map +1 -1
- package/dist/emit/draw/annotations/arrowMarker.js +1 -1
- package/dist/emit/draw/annotations/arrowMarker.js.map +1 -1
- package/dist/emit/draw/annotations/text.js +1 -1
- package/dist/emit/draw/annotations/text.js.map +1 -1
- package/dist/emit/draw/boxes/circle.js +1 -1
- package/dist/emit/draw/boxes/circle.js.map +1 -1
- package/dist/emit/draw/boxes/ellipse.d.ts +1 -1
- package/dist/emit/draw/boxes/ellipse.js +1 -1
- package/dist/emit/draw/boxes/ellipse.js.map +1 -1
- package/dist/emit/draw/boxes/fillBetween.d.ts +45 -0
- package/dist/emit/draw/boxes/fillBetween.d.ts.map +1 -0
- package/dist/emit/draw/boxes/fillBetween.js +36 -0
- package/dist/emit/draw/boxes/fillBetween.js.map +1 -0
- package/dist/emit/draw/boxes/marker.js +1 -1
- package/dist/emit/draw/boxes/marker.js.map +1 -1
- package/dist/emit/draw/boxes/path.d.ts +1 -1
- package/dist/emit/draw/boxes/path.js +1 -1
- package/dist/emit/draw/boxes/path.js.map +1 -1
- package/dist/emit/draw/boxes/polyline.d.ts +1 -1
- package/dist/emit/draw/boxes/polyline.js +1 -1
- package/dist/emit/draw/boxes/polyline.js.map +1 -1
- package/dist/emit/draw/boxes/rectangle.js +1 -1
- package/dist/emit/draw/boxes/rectangle.js.map +1 -1
- package/dist/emit/draw/boxes/rotatedRectangle.js +1 -1
- package/dist/emit/draw/boxes/rotatedRectangle.js.map +1 -1
- package/dist/emit/draw/boxes/triangle.d.ts +1 -1
- package/dist/emit/draw/boxes/triangle.js +1 -1
- package/dist/emit/draw/boxes/triangle.js.map +1 -1
- package/dist/emit/draw/channels/disjointChannel.js +1 -1
- package/dist/emit/draw/channels/disjointChannel.js.map +1 -1
- package/dist/emit/draw/channels/flatTopBottom.d.ts +1 -2
- package/dist/emit/draw/channels/flatTopBottom.d.ts.map +1 -1
- package/dist/emit/draw/channels/flatTopBottom.js +1 -1
- package/dist/emit/draw/channels/flatTopBottom.js.map +1 -1
- package/dist/emit/draw/channels/regressionTrend.d.ts +3 -4
- package/dist/emit/draw/channels/regressionTrend.d.ts.map +1 -1
- package/dist/emit/draw/channels/regressionTrend.js +1 -1
- package/dist/emit/draw/channels/regressionTrend.js.map +1 -1
- package/dist/emit/draw/channels/trendChannel.js +1 -1
- package/dist/emit/draw/channels/trendChannel.js.map +1 -1
- package/dist/emit/draw/containers/frame.d.ts +1 -1
- package/dist/emit/draw/containers/frame.js +2 -2
- package/dist/emit/draw/containers/frame.js.map +1 -1
- package/dist/emit/draw/containers/group.d.ts +1 -2
- package/dist/emit/draw/containers/group.d.ts.map +1 -1
- package/dist/emit/draw/containers/group.js +2 -2
- package/dist/emit/draw/containers/group.js.map +1 -1
- package/dist/emit/draw/curves/arc.js +1 -1
- package/dist/emit/draw/curves/arc.js.map +1 -1
- package/dist/emit/draw/curves/brush.js +1 -1
- package/dist/emit/draw/curves/brush.js.map +1 -1
- package/dist/emit/draw/curves/curve.js +1 -1
- package/dist/emit/draw/curves/curve.js.map +1 -1
- package/dist/emit/draw/curves/doubleCurve.js +1 -1
- package/dist/emit/draw/curves/doubleCurve.js.map +1 -1
- package/dist/emit/draw/curves/highlighter.js +1 -1
- package/dist/emit/draw/curves/highlighter.js.map +1 -1
- package/dist/emit/draw/curves/pen.js +1 -1
- package/dist/emit/draw/curves/pen.js.map +1 -1
- package/dist/emit/draw/cycles/cyclicLines.js +1 -1
- package/dist/emit/draw/cycles/cyclicLines.js.map +1 -1
- package/dist/emit/draw/cycles/sineLine.js +1 -1
- package/dist/emit/draw/cycles/sineLine.js.map +1 -1
- package/dist/emit/draw/cycles/timeCycles.js +1 -1
- package/dist/emit/draw/cycles/timeCycles.js.map +1 -1
- package/dist/emit/draw/elliott/elliottCorrectionWave.js +1 -1
- package/dist/emit/draw/elliott/elliottCorrectionWave.js.map +1 -1
- package/dist/emit/draw/elliott/elliottDoubleCombo.js +1 -1
- package/dist/emit/draw/elliott/elliottDoubleCombo.js.map +1 -1
- package/dist/emit/draw/elliott/elliottImpulseWave.js +1 -1
- package/dist/emit/draw/elliott/elliottImpulseWave.js.map +1 -1
- package/dist/emit/draw/elliott/elliottTriangleWave.js +1 -1
- package/dist/emit/draw/elliott/elliottTriangleWave.js.map +1 -1
- package/dist/emit/draw/elliott/elliottTripleCombo.js +1 -1
- package/dist/emit/draw/elliott/elliottTripleCombo.js.map +1 -1
- package/dist/emit/draw/fibA/fibChannel.js +1 -1
- package/dist/emit/draw/fibA/fibChannel.js.map +1 -1
- package/dist/emit/draw/fibA/fibRetracement.js +1 -1
- package/dist/emit/draw/fibA/fibRetracement.js.map +1 -1
- package/dist/emit/draw/fibA/fibTimeZone.d.ts +1 -2
- package/dist/emit/draw/fibA/fibTimeZone.d.ts.map +1 -1
- package/dist/emit/draw/fibA/fibTimeZone.js +1 -1
- package/dist/emit/draw/fibA/fibTimeZone.js.map +1 -1
- package/dist/emit/draw/fibA/fibTrendExtension.js +1 -1
- package/dist/emit/draw/fibA/fibTrendExtension.js.map +1 -1
- package/dist/emit/draw/fibA/fibWedge.js +1 -1
- package/dist/emit/draw/fibA/fibWedge.js.map +1 -1
- package/dist/emit/draw/fibB/fibCircles.d.ts +1 -2
- package/dist/emit/draw/fibB/fibCircles.d.ts.map +1 -1
- package/dist/emit/draw/fibB/fibCircles.js +1 -1
- package/dist/emit/draw/fibB/fibCircles.js.map +1 -1
- package/dist/emit/draw/fibB/fibSpeedArcs.js +1 -1
- package/dist/emit/draw/fibB/fibSpeedArcs.js.map +1 -1
- package/dist/emit/draw/fibB/fibSpeedFan.js +1 -1
- package/dist/emit/draw/fibB/fibSpeedFan.js.map +1 -1
- package/dist/emit/draw/fibB/fibSpiral.d.ts +1 -2
- package/dist/emit/draw/fibB/fibSpiral.d.ts.map +1 -1
- package/dist/emit/draw/fibB/fibSpiral.js +1 -1
- package/dist/emit/draw/fibB/fibSpiral.js.map +1 -1
- package/dist/emit/draw/fibB/fibTrendTime.d.ts +1 -2
- package/dist/emit/draw/fibB/fibTrendTime.d.ts.map +1 -1
- package/dist/emit/draw/fibB/fibTrendTime.js +1 -1
- package/dist/emit/draw/fibB/fibTrendTime.js.map +1 -1
- package/dist/emit/draw/gann/gannBox.js +1 -1
- package/dist/emit/draw/gann/gannBox.js.map +1 -1
- package/dist/emit/draw/gann/gannFan.js +1 -1
- package/dist/emit/draw/gann/gannFan.js.map +1 -1
- package/dist/emit/draw/gann/gannSquare.js +1 -1
- package/dist/emit/draw/gann/gannSquare.js.map +1 -1
- package/dist/emit/draw/gann/gannSquareFixed.js +1 -1
- package/dist/emit/draw/gann/gannSquareFixed.js.map +1 -1
- package/dist/emit/draw/handle.d.ts +11 -2
- package/dist/emit/draw/handle.d.ts.map +1 -1
- package/dist/emit/draw/handle.js +67 -12
- package/dist/emit/draw/handle.js.map +1 -1
- package/dist/emit/draw/index.js.map +1 -1
- package/dist/emit/draw/lines/crossLine.js +1 -1
- package/dist/emit/draw/lines/crossLine.js.map +1 -1
- package/dist/emit/draw/lines/horizontalLine.d.ts +1 -1
- package/dist/emit/draw/lines/horizontalLine.js +1 -1
- package/dist/emit/draw/lines/horizontalLine.js.map +1 -1
- package/dist/emit/draw/lines/horizontalRay.js +1 -1
- package/dist/emit/draw/lines/horizontalRay.js.map +1 -1
- package/dist/emit/draw/lines/line.d.ts +1 -1
- package/dist/emit/draw/lines/line.d.ts.map +1 -1
- package/dist/emit/draw/lines/line.js +2 -3
- package/dist/emit/draw/lines/line.js.map +1 -1
- package/dist/emit/draw/lines/trendAngle.js +1 -1
- package/dist/emit/draw/lines/trendAngle.js.map +1 -1
- package/dist/emit/draw/lines/verticalLine.js +1 -1
- package/dist/emit/draw/lines/verticalLine.js.map +1 -1
- package/dist/emit/draw/namespace.d.ts +5 -4
- package/dist/emit/draw/namespace.d.ts.map +1 -1
- package/dist/emit/draw/namespace.js +7 -4
- package/dist/emit/draw/namespace.js.map +1 -1
- package/dist/emit/draw/patterns/abcdPattern.js +1 -1
- package/dist/emit/draw/patterns/abcdPattern.js.map +1 -1
- package/dist/emit/draw/patterns/cypherPattern.d.ts +1 -2
- package/dist/emit/draw/patterns/cypherPattern.d.ts.map +1 -1
- package/dist/emit/draw/patterns/cypherPattern.js +1 -1
- package/dist/emit/draw/patterns/cypherPattern.js.map +1 -1
- package/dist/emit/draw/patterns/headAndShoulders.js +1 -1
- package/dist/emit/draw/patterns/headAndShoulders.js.map +1 -1
- package/dist/emit/draw/patterns/threeDrivesPattern.js +1 -1
- package/dist/emit/draw/patterns/threeDrivesPattern.js.map +1 -1
- package/dist/emit/draw/patterns/trianglePattern.d.ts +1 -1
- package/dist/emit/draw/patterns/trianglePattern.js +1 -1
- package/dist/emit/draw/patterns/trianglePattern.js.map +1 -1
- package/dist/emit/draw/patterns/xabcdPattern.js +1 -1
- package/dist/emit/draw/patterns/xabcdPattern.js.map +1 -1
- package/dist/emit/draw/pitchforks/pitchfan.js +1 -1
- package/dist/emit/draw/pitchforks/pitchfan.js.map +1 -1
- package/dist/emit/draw/pitchforks/pitchfork.d.ts +1 -1
- package/dist/emit/draw/pitchforks/pitchfork.js +2 -2
- package/dist/emit/draw/pitchforks/pitchfork.js.map +1 -1
- package/dist/emit/draw/pushDrawing.js.map +1 -1
- package/dist/emit/draw/subIdAllocator.d.ts +1 -1
- package/dist/emit/draw/subIdAllocator.js +1 -1
- package/dist/emit/draw/subIdAllocator.js.map +1 -1
- package/dist/emit/draw/table/table.d.ts +1 -1
- package/dist/emit/draw/table/table.js.map +1 -1
- package/dist/emit/emissionsQueue.js.map +1 -1
- package/dist/emit/hash.js.map +1 -1
- package/dist/emit/hline.js.map +1 -1
- package/dist/emit/index.js.map +1 -1
- package/dist/emit/logEmission.js.map +1 -1
- package/dist/emit/paneResolver.js.map +1 -1
- package/dist/emit/plot.d.ts +7 -0
- package/dist/emit/plot.d.ts.map +1 -1
- package/dist/emit/plot.js +13 -0
- package/dist/emit/plot.js.map +1 -1
- package/dist/emit/runtimeError.js.map +1 -1
- package/dist/execution/dispose.d.ts.map +1 -1
- package/dist/execution/dispose.js +16 -0
- package/dist/execution/dispose.js.map +1 -1
- package/dist/execution/drain.js.map +1 -1
- package/dist/execution/index.js.map +1 -1
- package/dist/execution/onBarClose.js.map +1 -1
- package/dist/execution/onBarTick.js.map +1 -1
- package/dist/execution/onHistory.js.map +1 -1
- package/dist/execution/runComputeStep.d.ts.map +1 -1
- package/dist/execution/runComputeStep.js +10 -1
- package/dist/execution/runComputeStep.js.map +1 -1
- package/dist/execution/secondaryStream.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/inputs/index.js.map +1 -1
- package/dist/inputs/resolveInputs.js.map +1 -1
- package/dist/internal.js.map +1 -1
- package/dist/persistentStateStore.js.map +1 -1
- package/dist/persistentStateStore.runtime.d.ts.map +1 -1
- package/dist/persistentStateStore.runtime.js +21 -7
- package/dist/persistentStateStore.runtime.js.map +1 -1
- package/dist/persistentStateStore.validate.js.map +1 -1
- package/dist/primitives.js.map +1 -1
- package/dist/request/alignHtfSeriesCache.js.map +1 -1
- package/dist/request/alignHtfSeriesToLtf.d.ts +2 -2
- package/dist/request/alignHtfSeriesToLtf.js +2 -2
- package/dist/request/alignHtfSeriesToLtf.js.map +1 -1
- package/dist/request/bucketLtfBarsByMainContainment.js.map +1 -1
- package/dist/request/bucketLtfBarsCache.js.map +1 -1
- package/dist/request/index.d.ts +2 -1
- package/dist/request/index.d.ts.map +1 -1
- package/dist/request/index.js +2 -1
- package/dist/request/index.js.map +1 -1
- package/dist/request/lowerTf.js.map +1 -1
- package/dist/request/pushOnce.js.map +1 -1
- package/dist/request/requestNamespace.d.ts.map +1 -1
- package/dist/request/requestNamespace.js +16 -3
- package/dist/request/requestNamespace.js.map +1 -1
- package/dist/request/security.d.ts +20 -1
- package/dist/request/security.d.ts.map +1 -1
- package/dist/request/security.js +62 -23
- package/dist/request/security.js.map +1 -1
- package/dist/request/securityExprRunner.d.ts +133 -0
- package/dist/request/securityExprRunner.d.ts.map +1 -0
- package/dist/request/securityExprRunner.js +235 -0
- package/dist/request/securityExprRunner.js.map +1 -0
- package/dist/request/streamBars.d.ts +14 -1
- package/dist/request/streamBars.d.ts.map +1 -1
- package/dist/request/streamBars.js +39 -1
- package/dist/request/streamBars.js.map +1 -1
- package/dist/ringBuffer.d.ts +2 -2
- package/dist/ringBuffer.js +1 -1
- package/dist/ringBuffer.js.map +1 -1
- package/dist/runtimeContext.d.ts +51 -3
- package/dist/runtimeContext.d.ts.map +1 -1
- package/dist/runtimeContext.js.map +1 -1
- package/dist/seriesView.d.ts +43 -18
- package/dist/seriesView.d.ts.map +1 -1
- package/dist/seriesView.js +66 -43
- package/dist/seriesView.js.map +1 -1
- package/dist/state/index.d.ts +2 -1
- package/dist/state/index.d.ts.map +1 -1
- package/dist/state/index.js +2 -1
- package/dist/state/index.js.map +1 -1
- package/dist/state/lifecycle.d.ts +40 -0
- package/dist/state/lifecycle.d.ts.map +1 -1
- package/dist/state/lifecycle.js +53 -0
- package/dist/state/lifecycle.js.map +1 -1
- package/dist/state/seriesPersistence.d.ts +48 -0
- package/dist/state/seriesPersistence.d.ts.map +1 -0
- package/dist/state/seriesPersistence.js +87 -0
- package/dist/state/seriesPersistence.js.map +1 -0
- package/dist/state/seriesSlot.d.ts +105 -0
- package/dist/state/seriesSlot.d.ts.map +1 -0
- package/dist/state/seriesSlot.js +123 -0
- package/dist/state/seriesSlot.js.map +1 -0
- package/dist/state/stateNamespace.d.ts.map +1 -1
- package/dist/state/stateNamespace.js +28 -0
- package/dist/state/stateNamespace.js.map +1 -1
- package/dist/state/stateSlot.js.map +1 -1
- package/dist/stateStore.d.ts +2 -2
- package/dist/stateStore.js.map +1 -1
- package/dist/streamState.d.ts +26 -20
- package/dist/streamState.d.ts.map +1 -1
- package/dist/streamState.js +41 -67
- package/dist/streamState.js.map +1 -1
- package/dist/ta/adl.js +2 -2
- package/dist/ta/adl.js.map +1 -1
- package/dist/ta/adr.d.ts +3 -3
- package/dist/ta/adr.js +5 -5
- package/dist/ta/adr.js.map +1 -1
- package/dist/ta/adx.d.ts +3 -2
- package/dist/ta/adx.d.ts.map +1 -1
- package/dist/ta/adx.js +5 -4
- package/dist/ta/adx.js.map +1 -1
- package/dist/ta/alma.d.ts +6 -4
- package/dist/ta/alma.d.ts.map +1 -1
- package/dist/ta/alma.js +21 -8
- package/dist/ta/alma.js.map +1 -1
- package/dist/ta/anchoredVolumeProfile.js.map +1 -1
- package/dist/ta/anchoredVwap.d.ts +1 -1
- package/dist/ta/anchoredVwap.js +3 -3
- package/dist/ta/anchoredVwap.js.map +1 -1
- package/dist/ta/ao.js +2 -2
- package/dist/ta/ao.js.map +1 -1
- package/dist/ta/aroon.js +2 -2
- package/dist/ta/aroon.js.map +1 -1
- package/dist/ta/aroonOsc.js +2 -2
- package/dist/ta/aroonOsc.js.map +1 -1
- package/dist/ta/atr.d.ts +3 -2
- package/dist/ta/atr.d.ts.map +1 -1
- package/dist/ta/atr.js +5 -4
- package/dist/ta/atr.js.map +1 -1
- package/dist/ta/barssince.js +1 -1
- package/dist/ta/barssince.js.map +1 -1
- package/dist/ta/bb.d.ts +3 -2
- package/dist/ta/bb.d.ts.map +1 -1
- package/dist/ta/bb.js +5 -4
- package/dist/ta/bb.js.map +1 -1
- package/dist/ta/bbPercentB.js +2 -2
- package/dist/ta/bbPercentB.js.map +1 -1
- package/dist/ta/bbw.js +2 -2
- package/dist/ta/bbw.js.map +1 -1
- package/dist/ta/bop.js +2 -2
- package/dist/ta/bop.js.map +1 -1
- package/dist/ta/cci.js +2 -2
- package/dist/ta/cci.js.map +1 -1
- package/dist/ta/chaikinOsc.d.ts +3 -2
- package/dist/ta/chaikinOsc.d.ts.map +1 -1
- package/dist/ta/chaikinOsc.js +5 -4
- package/dist/ta/chaikinOsc.js.map +1 -1
- package/dist/ta/chandeKrollStop.d.ts +1 -1
- package/dist/ta/chandeKrollStop.js +3 -3
- package/dist/ta/chandeKrollStop.js.map +1 -1
- package/dist/ta/chandelier.d.ts +1 -1
- package/dist/ta/chandelier.js +3 -3
- package/dist/ta/chandelier.js.map +1 -1
- package/dist/ta/change.js +1 -1
- package/dist/ta/change.js.map +1 -1
- package/dist/ta/chop.js +2 -2
- package/dist/ta/chop.js.map +1 -1
- package/dist/ta/cmf.js +2 -2
- package/dist/ta/cmf.js.map +1 -1
- package/dist/ta/cmo.js +2 -2
- package/dist/ta/cmo.js.map +1 -1
- package/dist/ta/connorsRsi.d.ts +1 -1
- package/dist/ta/connorsRsi.js +3 -3
- package/dist/ta/connorsRsi.js.map +1 -1
- package/dist/ta/coppock.js +2 -2
- package/dist/ta/coppock.js.map +1 -1
- package/dist/ta/crossover.d.ts +3 -2
- package/dist/ta/crossover.d.ts.map +1 -1
- package/dist/ta/crossover.js +4 -3
- package/dist/ta/crossover.js.map +1 -1
- package/dist/ta/crossunder.d.ts +3 -2
- package/dist/ta/crossunder.d.ts.map +1 -1
- package/dist/ta/crossunder.js +4 -3
- package/dist/ta/crossunder.js.map +1 -1
- package/dist/ta/dema.js +2 -2
- package/dist/ta/dema.js.map +1 -1
- package/dist/ta/dmi.d.ts +4 -3
- package/dist/ta/dmi.d.ts.map +1 -1
- package/dist/ta/dmi.js +6 -5
- package/dist/ta/dmi.js.map +1 -1
- package/dist/ta/donchian.js +2 -2
- package/dist/ta/donchian.js.map +1 -1
- package/dist/ta/dpo.js +2 -2
- package/dist/ta/dpo.js.map +1 -1
- package/dist/ta/ema.d.ts +3 -2
- package/dist/ta/ema.d.ts.map +1 -1
- package/dist/ta/ema.js +5 -4
- package/dist/ta/ema.js.map +1 -1
- package/dist/ta/envelope.js +2 -2
- package/dist/ta/envelope.js.map +1 -1
- package/dist/ta/eom.d.ts +3 -1
- package/dist/ta/eom.d.ts.map +1 -1
- package/dist/ta/eom.js +5 -3
- package/dist/ta/eom.js.map +1 -1
- package/dist/ta/fisher.js +2 -2
- package/dist/ta/fisher.js.map +1 -1
- package/dist/ta/fixedRangeVolumeProfile.js.map +1 -1
- package/dist/ta/highest.js +1 -1
- package/dist/ta/highest.js.map +1 -1
- package/dist/ta/highestbars.d.ts +25 -0
- package/dist/ta/highestbars.d.ts.map +1 -0
- package/dist/ta/highestbars.js +106 -0
- package/dist/ta/highestbars.js.map +1 -0
- package/dist/ta/historicalVolatility.d.ts +3 -2
- package/dist/ta/historicalVolatility.d.ts.map +1 -1
- package/dist/ta/historicalVolatility.js +5 -4
- package/dist/ta/historicalVolatility.js.map +1 -1
- package/dist/ta/hma.js +2 -2
- package/dist/ta/hma.js.map +1 -1
- package/dist/ta/ichimoku.d.ts +3 -1
- package/dist/ta/ichimoku.d.ts.map +1 -1
- package/dist/ta/ichimoku.js +5 -3
- package/dist/ta/ichimoku.js.map +1 -1
- package/dist/ta/index.js.map +1 -1
- package/dist/ta/kama.js +2 -2
- package/dist/ta/kama.js.map +1 -1
- package/dist/ta/keltner.js +2 -2
- package/dist/ta/keltner.js.map +1 -1
- package/dist/ta/klinger.js +2 -2
- package/dist/ta/klinger.js.map +1 -1
- package/dist/ta/kst.js +2 -2
- package/dist/ta/kst.js.map +1 -1
- package/dist/ta/lib/adxFromDi.js +2 -2
- package/dist/ta/lib/adxFromDi.js.map +1 -1
- package/dist/ta/lib/computeMa.js +2 -2
- package/dist/ta/lib/computeMa.js.map +1 -1
- package/dist/ta/lib/computeMaOfFloat64.js +2 -2
- package/dist/ta/lib/computeMaOfFloat64.js.map +1 -1
- package/dist/ta/lib/directionalState.js +2 -2
- package/dist/ta/lib/directionalState.js.map +1 -1
- package/dist/ta/lib/donchianMid.js +2 -2
- package/dist/ta/lib/donchianMid.js.map +1 -1
- package/dist/ta/lib/emaFloat64.js +2 -2
- package/dist/ta/lib/emaFloat64.js.map +1 -1
- package/dist/ta/lib/linearRegression.js +2 -2
- package/dist/ta/lib/linearRegression.js.map +1 -1
- package/dist/ta/lib/maTypes.js.map +1 -1
- package/dist/ta/lib/pearson.js +2 -2
- package/dist/ta/lib/pearson.js.map +1 -1
- package/dist/ta/lib/pickCandleSource.js +2 -2
- package/dist/ta/lib/pickCandleSource.js.map +1 -1
- package/dist/ta/lib/readSourceField.js +2 -2
- package/dist/ta/lib/readSourceField.js.map +1 -1
- package/dist/ta/lib/rollingStddev.js +2 -2
- package/dist/ta/lib/rollingStddev.js.map +1 -1
- package/dist/ta/lib/smaFloat64.js +2 -2
- package/dist/ta/lib/smaFloat64.js.map +1 -1
- package/dist/ta/lib/smmaFloat64.js +2 -2
- package/dist/ta/lib/smmaFloat64.js.map +1 -1
- package/dist/ta/lib/sourceValue.js.map +1 -1
- package/dist/ta/lib/trSeries.js +2 -2
- package/dist/ta/lib/trSeries.js.map +1 -1
- package/dist/ta/lib/volume-profile/bucketEdges.js.map +1 -1
- package/dist/ta/lib/volume-profile/bucketizeVolume.js.map +1 -1
- package/dist/ta/lib/volume-profile/developingSeries.js.map +1 -1
- package/dist/ta/lib/volume-profile/index.js.map +1 -1
- package/dist/ta/lib/volume-profile/intercept.js.map +1 -1
- package/dist/ta/lib/volume-profile/scaffold.js.map +1 -1
- package/dist/ta/lib/volume-profile/tooHeavy.js.map +1 -1
- package/dist/ta/lib/volume-profile/types.js.map +1 -1
- package/dist/ta/lib/volume-profile/valueArea.js.map +1 -1
- package/dist/ta/lib/volume-profile/volumeProfileShared.js.map +1 -1
- package/dist/ta/lib/vwmaFloat64.js +2 -2
- package/dist/ta/lib/vwmaFloat64.js.map +1 -1
- package/dist/ta/lib/wilderDirectional.js +2 -2
- package/dist/ta/lib/wilderDirectional.js.map +1 -1
- package/dist/ta/lib/wilderSmoothing.js +2 -2
- package/dist/ta/lib/wilderSmoothing.js.map +1 -1
- package/dist/ta/lib/wmaFloat64.js +2 -2
- package/dist/ta/lib/wmaFloat64.js.map +1 -1
- package/dist/ta/lowest.js +1 -1
- package/dist/ta/lowest.js.map +1 -1
- package/dist/ta/lowestbars.d.ts +25 -0
- package/dist/ta/lowestbars.d.ts.map +1 -0
- package/dist/ta/lowestbars.js +102 -0
- package/dist/ta/lowestbars.js.map +1 -0
- package/dist/ta/lsma.js +2 -2
- package/dist/ta/lsma.js.map +1 -1
- package/dist/ta/maRibbon.js +2 -2
- package/dist/ta/maRibbon.js.map +1 -1
- package/dist/ta/macd.d.ts +3 -2
- package/dist/ta/macd.d.ts.map +1 -1
- package/dist/ta/macd.js +6 -5
- package/dist/ta/macd.js.map +1 -1
- package/dist/ta/massIndex.d.ts +3 -2
- package/dist/ta/massIndex.d.ts.map +1 -1
- package/dist/ta/massIndex.js +5 -4
- package/dist/ta/massIndex.js.map +1 -1
- package/dist/ta/mcginley.js +2 -2
- package/dist/ta/mcginley.js.map +1 -1
- package/dist/ta/median.js +2 -2
- package/dist/ta/median.js.map +1 -1
- package/dist/ta/mfi.d.ts +3 -1
- package/dist/ta/mfi.d.ts.map +1 -1
- package/dist/ta/mfi.js +5 -3
- package/dist/ta/mfi.js.map +1 -1
- package/dist/ta/momentum.js +2 -2
- package/dist/ta/momentum.js.map +1 -1
- package/dist/ta/netVolume.d.ts +3 -1
- package/dist/ta/netVolume.d.ts.map +1 -1
- package/dist/ta/netVolume.js +5 -3
- package/dist/ta/netVolume.js.map +1 -1
- package/dist/ta/nvi.d.ts +3 -1
- package/dist/ta/nvi.d.ts.map +1 -1
- package/dist/ta/nvi.js +5 -3
- package/dist/ta/nvi.js.map +1 -1
- package/dist/ta/nz.js +1 -1
- package/dist/ta/nz.js.map +1 -1
- package/dist/ta/obv.js +2 -2
- package/dist/ta/obv.js.map +1 -1
- package/dist/ta/persistence.d.ts.map +1 -1
- package/dist/ta/persistence.js +1 -40
- package/dist/ta/persistence.js.map +1 -1
- package/dist/ta/pivotsHighLow.js +2 -2
- package/dist/ta/pivotsHighLow.js.map +1 -1
- package/dist/ta/pivotsStandard.d.ts +1 -1
- package/dist/ta/pivotsStandard.js +3 -3
- package/dist/ta/pivotsStandard.js.map +1 -1
- package/dist/ta/pmo.js +2 -2
- package/dist/ta/pmo.js.map +1 -1
- package/dist/ta/ppo.d.ts +3 -2
- package/dist/ta/ppo.d.ts.map +1 -1
- package/dist/ta/ppo.js +5 -4
- package/dist/ta/ppo.js.map +1 -1
- package/dist/ta/psar.js +2 -2
- package/dist/ta/psar.js.map +1 -1
- package/dist/ta/pvi.d.ts +3 -1
- package/dist/ta/pvi.d.ts.map +1 -1
- package/dist/ta/pvi.js +5 -3
- package/dist/ta/pvi.js.map +1 -1
- package/dist/ta/pvo.d.ts +3 -1
- package/dist/ta/pvo.d.ts.map +1 -1
- package/dist/ta/pvo.js +5 -3
- package/dist/ta/pvo.js.map +1 -1
- package/dist/ta/pvt.d.ts +3 -1
- package/dist/ta/pvt.d.ts.map +1 -1
- package/dist/ta/pvt.js +5 -3
- package/dist/ta/pvt.js.map +1 -1
- package/dist/ta/registry.d.ts +7 -1
- package/dist/ta/registry.d.ts.map +1 -1
- package/dist/ta/registry.js +4 -0
- package/dist/ta/registry.js.map +1 -1
- package/dist/ta/roc.js +2 -2
- package/dist/ta/roc.js.map +1 -1
- package/dist/ta/rsi.d.ts +3 -2
- package/dist/ta/rsi.d.ts.map +1 -1
- package/dist/ta/rsi.js +5 -4
- package/dist/ta/rsi.js.map +1 -1
- package/dist/ta/rvgi.js +2 -2
- package/dist/ta/rvgi.js.map +1 -1
- package/dist/ta/rvi.d.ts +3 -2
- package/dist/ta/rvi.d.ts.map +1 -1
- package/dist/ta/rvi.js +5 -4
- package/dist/ta/rvi.js.map +1 -1
- package/dist/ta/sessionVolumeProfile.js.map +1 -1
- package/dist/ta/sma.d.ts +6 -3
- package/dist/ta/sma.d.ts.map +1 -1
- package/dist/ta/sma.js +8 -5
- package/dist/ta/sma.js.map +1 -1
- package/dist/ta/smi.js +2 -2
- package/dist/ta/smi.js.map +1 -1
- package/dist/ta/smma.js +2 -2
- package/dist/ta/smma.js.map +1 -1
- package/dist/ta/stdev.d.ts +3 -2
- package/dist/ta/stdev.d.ts.map +1 -1
- package/dist/ta/stdev.js +5 -4
- package/dist/ta/stdev.js.map +1 -1
- package/dist/ta/stoch.js +2 -2
- package/dist/ta/stoch.js.map +1 -1
- package/dist/ta/stochRsi.js +2 -2
- package/dist/ta/stochRsi.js.map +1 -1
- package/dist/ta/supertrend.d.ts +1 -1
- package/dist/ta/supertrend.js +3 -3
- package/dist/ta/supertrend.js.map +1 -1
- package/dist/ta/tema.js +2 -2
- package/dist/ta/tema.js.map +1 -1
- package/dist/ta/trendStrengthIndex.d.ts +4 -3
- package/dist/ta/trendStrengthIndex.d.ts.map +1 -1
- package/dist/ta/trendStrengthIndex.js +6 -5
- package/dist/ta/trendStrengthIndex.js.map +1 -1
- package/dist/ta/trix.d.ts +4 -3
- package/dist/ta/trix.d.ts.map +1 -1
- package/dist/ta/trix.js +6 -5
- package/dist/ta/trix.js.map +1 -1
- package/dist/ta/tsi.js +2 -2
- package/dist/ta/tsi.js.map +1 -1
- package/dist/ta/ulcerIndex.js +2 -2
- package/dist/ta/ulcerIndex.js.map +1 -1
- package/dist/ta/ultimateOsc.js +2 -2
- package/dist/ta/ultimateOsc.js.map +1 -1
- package/dist/ta/valuewhen.js +1 -1
- package/dist/ta/valuewhen.js.map +1 -1
- package/dist/ta/visibleRangeVolumeProfile.d.ts +2 -2
- package/dist/ta/visibleRangeVolumeProfile.js +2 -2
- package/dist/ta/visibleRangeVolumeProfile.js.map +1 -1
- package/dist/ta/vol.js +2 -2
- package/dist/ta/vol.js.map +1 -1
- package/dist/ta/volatilityStop.d.ts +1 -1
- package/dist/ta/volatilityStop.js +3 -3
- package/dist/ta/volatilityStop.js.map +1 -1
- package/dist/ta/vortex.d.ts +3 -2
- package/dist/ta/vortex.d.ts.map +1 -1
- package/dist/ta/vortex.js +5 -4
- package/dist/ta/vortex.js.map +1 -1
- package/dist/ta/vwap.d.ts +3 -3
- package/dist/ta/vwap.js +5 -5
- package/dist/ta/vwap.js.map +1 -1
- package/dist/ta/vwma.js +2 -2
- package/dist/ta/vwma.js.map +1 -1
- package/dist/ta/williamsFractal.js +2 -2
- package/dist/ta/williamsFractal.js.map +1 -1
- package/dist/ta/williamsR.js +2 -2
- package/dist/ta/williamsR.js.map +1 -1
- package/dist/ta/wma.js +2 -2
- package/dist/ta/wma.js.map +1 -1
- package/dist/ta/zigZag.js +2 -2
- package/dist/ta/zigZag.js.map +1 -1
- package/dist/views/barstateView.js.map +1 -1
- package/dist/views/index.js.map +1 -1
- package/dist/views/refreshRuntimeViews.js.map +1 -1
- package/dist/views/symInfoView.js.map +1 -1
- package/dist/views/timeframeView.js.map +1 -1
- package/package.json +3 -3
- package/dist/ta/lib/applyOffset.d.ts +0 -19
- package/dist/ta/lib/applyOffset.d.ts.map +0 -1
- package/dist/ta/lib/applyOffset.js +0 -38
- package/dist/ta/lib/applyOffset.js.map +0 -1
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/arc-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arc.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/arc.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,2BAA2B;AAC3B,4DAA4D;AAC5D,iBAAiB;AACjB,6DAA6D;AAC7D,
|
|
1
|
+
{"version":3,"file":"arc.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/arc.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,2BAA2B;AAC3B,4DAA4D;AAC5D,iBAAiB;AACjB,6DAA6D;AAC7D,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,+CAA+C,CAAC;AAE5E,SAAS,OAAO,CAAC,MAAc,EAAE,OAAqB,EAAE,IAAmB;IACvE,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAa,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9D,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AA4CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,GAAG,CACf,IAA2B,EAC3B,IAAmC,EACnC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,EAAE,IAAoB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AAC3D,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (ArcDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/arc-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorTriple,\n ArcState,\n DrawingHandle,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.arc called outside an active script step\";\n\nfunction arcImpl(slotId: string, anchors: AnchorTriple, opts: LineDrawStyle): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: ArcState = { kind: \"arc\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"arc\", state);\n}\n\n/**\n * Draw an arc through three world anchors `[from, apex, to]`. The\n * renderer derives a quadratic Bezier control point from the apex via\n * inverse-quadratic interpolation so the curve passes through `apex`\n * at parameter `t = 0.5` — distinct from {@link curve} whose middle\n * anchor IS the control point (and the curve does NOT pass through\n * it). Mirrors invinite's `arc-tool.ts` shape.\n *\n * @anchors `anchors` — `[from, apex, to]` triple\n * @anchorCount 3\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.arc demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.arc(\n * [\n * { time: bar.time, price: bar.low },\n * { time: bar.time, price: bar.high },\n * { time: bar.time, price: bar.close },\n * ],\n * { color: \"#3b82f6\", lineWidth: 2 },\n * );\n * },\n * });\n */\nexport function arc(anchors: AnchorTriple, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof arc = arc;\n * // void fn;\n */\nexport function arc(slotId: string, anchors: AnchorTriple, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Implementation signature for {@link arc}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof arc = arc;\n * // void fn;\n */\nexport function arc(\n arg1: string | AnchorTriple,\n arg2?: AnchorTriple | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return arcImpl(arg1, arg2 as AnchorTriple, arg3 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/brush-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brush.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/brush.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,6BAA6B;AAC7B,4DAA4D;AAC5D,iBAAiB;AACjB,+DAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"brush.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/brush.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,6BAA6B;AAC7B,4DAA4D;AAC5D,iBAAiB;AACjB,+DAA+D;AAC/D,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,iDAAiD,CAAC;AAE9E,SAAS,SAAS,CACd,MAAc,EACd,OAAkC,EAClC,IAAgB;IAEhB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAe,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAClE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC;AAgDD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,KAAK,CACjB,IAAwC,EACxC,IAA6C,EAC7C,IAAiB;IAEjB,IACI,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,SAAS;QAClB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QACpB,IAAI,KAAK,SAAS,EACpB,CAAC;QACC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,SAAS,CAAC,IAAI,EAAE,IAAiC,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (BrushDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/brush-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n BrushState,\n BrushStyle,\n DrawingHandle,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.brush called outside an active script step\";\n\nfunction brushImpl(\n slotId: string,\n anchors: ReadonlyArray<WorldPoint>,\n opts: BrushStyle,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: BrushState = { kind: \"brush\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"brush\", state);\n}\n\n/**\n * Draw a freehand brush stroke — a stroked + filled polyline through\n * N world anchors. The renderer treats the polyline as a closed\n * region (`moveTo + N-1 lineTo + closePath`) and paints fill before\n * stroke. Supply 2..500 anchors (validator pins this range, matching\n * invinite's stroke cap). Both `style.stroke` and `style.fill` are\n * required. Mirrors invinite's `brush-tool.ts` shape.\n *\n * @anchors `anchors` — `ReadonlyArray<WorldPoint>` of length 2..500\n * @anchorCount 2..500\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.brush demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.brush(\n * [\n * { time: bar.time, price: bar.open },\n * { time: bar.time, price: bar.high },\n * { time: bar.time, price: bar.close },\n * ],\n * { stroke: \"#000000\", fill: \"#dbeafe\" },\n * );\n * },\n * });\n */\nexport function brush(anchors: ReadonlyArray<WorldPoint>, opts: BrushStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof brush = brush;\n * // void fn;\n */\nexport function brush(\n slotId: string,\n anchors: ReadonlyArray<WorldPoint>,\n opts: BrushStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link brush}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof brush = brush;\n * // void fn;\n */\nexport function brush(\n arg1: string | ReadonlyArray<WorldPoint>,\n arg2?: ReadonlyArray<WorldPoint> | BrushStyle,\n arg3?: BrushStyle,\n): DrawingHandle {\n if (\n typeof arg1 !== \"string\" ||\n arg2 === undefined ||\n !Array.isArray(arg2) ||\n arg3 === undefined\n ) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return brushImpl(arg1, arg2 as ReadonlyArray<WorldPoint>, arg3);\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/curve-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curve.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/curve.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,6BAA6B;AAC7B,4DAA4D;AAC5D,iBAAiB;AACjB,+DAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"curve.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/curve.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,6BAA6B;AAC7B,4DAA4D;AAC5D,iBAAiB;AACjB,+DAA+D;AAC/D,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,iDAAiD,CAAC;AAE9E,SAAS,SAAS,CAAC,MAAc,EAAE,OAAqB,EAAE,IAAmB;IACzE,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAe,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAClE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC;AA2CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,KAAK,CACjB,IAA2B,EAC3B,IAAmC,EACnC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,SAAS,CAAC,IAAI,EAAE,IAAoB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AAC7D,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (CurveDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/curve-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorTriple,\n CurveState,\n DrawingHandle,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.curve called outside an active script step\";\n\nfunction curveImpl(slotId: string, anchors: AnchorTriple, opts: LineDrawStyle): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: CurveState = { kind: \"curve\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"curve\", state);\n}\n\n/**\n * Draw a quadratic Bezier curve through three world anchors\n * `[from, control, to]`. The middle anchor IS the off-curve Bezier\n * control point — the rendered curve does NOT pass through it\n * (distinct from {@link arc} whose middle anchor is the apex the\n * curve passes through). Mirrors invinite's `curve-tool.ts` shape.\n *\n * @anchors `anchors` — `[from, control, to]` triple\n * @anchorCount 3\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.curve demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.curve(\n * [\n * { time: bar.time, price: bar.open },\n * { time: bar.time, price: bar.high },\n * { time: bar.time, price: bar.close },\n * ],\n * { color: \"#22c55e\", lineWidth: 1 },\n * );\n * },\n * });\n */\nexport function curve(anchors: AnchorTriple, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof curve = curve;\n * // void fn;\n */\nexport function curve(slotId: string, anchors: AnchorTriple, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Implementation signature for {@link curve}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof curve = curve;\n * // void fn;\n */\nexport function curve(\n arg1: string | AnchorTriple,\n arg2?: AnchorTriple | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return curveImpl(arg1, arg2 as AnchorTriple, arg3 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/double-curve-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doubleCurve.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/doubleCurve.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,sEAAsE;AACtE,
|
|
1
|
+
{"version":3,"file":"doubleCurve.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/doubleCurve.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,sEAAsE;AACtE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,uDAAuD,CAAC;AAEpF,SAAS,eAAe,CAAC,MAAc,EAAE,OAAoB,EAAE,IAAmB;IAC9E,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAqB,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC/E,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AAkDD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACvB,IAA0B,EAC1B,IAAkC,EAClC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,eAAe,CAAC,IAAI,EAAE,IAAmB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AAClE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (DoubleCurveDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/double-curve-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorQuint,\n DoubleCurveState,\n DrawingHandle,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.doubleCurve called outside an active script step\";\n\nfunction doubleCurveImpl(slotId: string, anchors: AnchorQuint, opts: LineDrawStyle): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: DoubleCurveState = { kind: \"double-curve\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"double-curve\", state);\n}\n\n/**\n * Draw a cubic Bezier curve through five world anchors `[P0, P1, mid,\n * P3, P4]`. The renderer paints a single cubic from `P0` to `P4` with\n * off-curve controls `P1` and `P3`; the middle anchor `mid` is the\n * stitch point for future split-rendering and is currently preserved\n * but unused at paint time. Mirrors invinite's `double-curve-tool.ts`\n * persisted shape.\n *\n * @anchors `anchors` — `[P0, P1, mid, P3, P4]` quint\n * @anchorCount 5\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.doubleCurve demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.doubleCurve(\n * [\n * { time: bar.time, price: bar.open },\n * { time: bar.time, price: bar.high },\n * { time: bar.time, price: (bar.high + bar.low) / 2 },\n * { time: bar.time, price: bar.low },\n * { time: bar.time, price: bar.close },\n * ],\n * { color: \"#a855f7\", lineWidth: 2 },\n * );\n * },\n * });\n */\nexport function doubleCurve(anchors: AnchorQuint, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof doubleCurve = doubleCurve;\n * // void fn;\n */\nexport function doubleCurve(\n slotId: string,\n anchors: AnchorQuint,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link doubleCurve}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof doubleCurve = doubleCurve;\n * // void fn;\n */\nexport function doubleCurve(\n arg1: string | AnchorQuint,\n arg2?: AnchorQuint | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return doubleCurveImpl(arg1, arg2 as AnchorQuint, arg3 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/highlighter-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"highlighter.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/highlighter.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,qEAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"highlighter.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/highlighter.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,qEAAqE;AACrE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,uDAAuD,CAAC;AAEpF,SAAS,eAAe,CACpB,MAAc,EACd,OAAkC,EAClC,IAAsB;IAEtB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAqB,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9E,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AACpE,CAAC;AAkDD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACvB,IAAwC,EACxC,IAAmD,EACnD,IAAuB;IAEvB,IACI,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,SAAS;QAClB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QACpB,IAAI,KAAK,SAAS,EACpB,CAAC;QACC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,eAAe,CAAC,IAAI,EAAE,IAAiC,EAAE,IAAI,CAAC,CAAC;AAC1E,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (HighlighterDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/highlighter-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n DrawingHandle,\n HighlighterState,\n HighlighterStyle,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.highlighter called outside an active script step\";\n\nfunction highlighterImpl(\n slotId: string,\n anchors: ReadonlyArray<WorldPoint>,\n opts: HighlighterStyle,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: HighlighterState = { kind: \"highlighter\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"highlighter\", state);\n}\n\n/**\n * Draw a freehand highlighter stroke — a thick translucent polyline\n * through N world anchors. Renders with `ctx.globalAlpha = style.alpha`\n * wrapped around the stroke so the rest of the frame is unaffected.\n * Supply 2..500 anchors (validator pins this range, matching\n * invinite's stroke cap). Both `style.color` and `style.alpha` are\n * required. Mirrors invinite's `highlighter-tool.ts` shape.\n *\n * @anchors `anchors` — `ReadonlyArray<WorldPoint>` of length 2..500\n * @anchorCount 2..500\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.highlighter demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.highlighter(\n * [\n * { time: bar.time, price: bar.high },\n * { time: bar.time, price: bar.low },\n * ],\n * { color: \"#facc15\", alpha: 0.3 },\n * );\n * },\n * });\n */\nexport function highlighter(\n anchors: ReadonlyArray<WorldPoint>,\n opts: HighlighterStyle,\n): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof highlighter = highlighter;\n * // void fn;\n */\nexport function highlighter(\n slotId: string,\n anchors: ReadonlyArray<WorldPoint>,\n opts: HighlighterStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link highlighter}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof highlighter = highlighter;\n * // void fn;\n */\nexport function highlighter(\n arg1: string | ReadonlyArray<WorldPoint>,\n arg2?: ReadonlyArray<WorldPoint> | HighlighterStyle,\n arg3?: HighlighterStyle,\n): DrawingHandle {\n if (\n typeof arg1 !== \"string\" ||\n arg2 === undefined ||\n !Array.isArray(arg2) ||\n arg3 === undefined\n ) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return highlighterImpl(arg1, arg2 as ReadonlyArray<WorldPoint>, arg3);\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/pen-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pen.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/pen.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,2BAA2B;AAC3B,4DAA4D;AAC5D,iBAAiB;AACjB,6DAA6D;AAC7D,
|
|
1
|
+
{"version":3,"file":"pen.js","sourceRoot":"","sources":["../../../../src/emit/draw/curves/pen.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,2BAA2B;AAC3B,4DAA4D;AAC5D,iBAAiB;AACjB,6DAA6D;AAC7D,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,+CAA+C,CAAC;AAE5E,SAAS,OAAO,CACZ,MAAc,EACd,OAAkC,EAClC,IAAmB;IAEnB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAa,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9D,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AA6CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,GAAG,CACf,IAAwC,EACxC,IAAgD,EAChD,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,EAAE,IAAiC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AACxE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (PenDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/pen-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n DrawingHandle,\n LineDrawStyle,\n PenState,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.pen called outside an active script step\";\n\nfunction penImpl(\n slotId: string,\n anchors: ReadonlyArray<WorldPoint>,\n opts: LineDrawStyle,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: PenState = { kind: \"pen\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"pen\", state);\n}\n\n/**\n * Draw a freehand pen stroke through N world anchors. Renders as an\n * OPEN polyline (mirrors `polyline` but without the auto-close).\n * Supply 2..500 anchors (validator pins this range, matching\n * invinite's stroke cap). Mirrors invinite's `pen-tool.ts` shape.\n *\n * @anchors `anchors` — `ReadonlyArray<WorldPoint>` of length 2..500\n * @anchorCount 2..500\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.pen demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.pen(\n * [\n * { time: bar.time, price: bar.open },\n * { time: bar.time, price: bar.close },\n * ],\n * { color: \"#1e293b\", lineWidth: 2 },\n * );\n * },\n * });\n */\nexport function pen(anchors: ReadonlyArray<WorldPoint>, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof pen = pen;\n * // void fn;\n */\nexport function pen(\n slotId: string,\n anchors: ReadonlyArray<WorldPoint>,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link pen}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof pen = pen;\n * // void fn;\n */\nexport function pen(\n arg1: string | ReadonlyArray<WorldPoint>,\n arg2?: ReadonlyArray<WorldPoint> | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return penImpl(arg1, arg2 as ReadonlyArray<WorldPoint>, arg3 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/cyclic-lines-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cyclicLines.js","sourceRoot":"","sources":["../../../../src/emit/draw/cycles/cyclicLines.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,sEAAsE;AACtE,
|
|
1
|
+
{"version":3,"file":"cyclicLines.js","sourceRoot":"","sources":["../../../../src/emit/draw/cycles/cyclicLines.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,sEAAsE;AACtE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,uDAAuD,CAAC;AAEpF,SAAS,eAAe,CACpB,MAAc,EACd,CAAa,EACb,CAAa,EACb,IAAmB;IAEnB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAqB;QAC5B,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,EAAE,IAAI;KACd,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AA8CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACvB,IAAyB,EACzB,IAAiB,EACjB,IAAiC,EACjC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAkB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AACvE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (CyclicLinesDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/cyclic-lines-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n CyclicLinesState,\n DrawingHandle,\n LineDrawStyle,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.cyclicLines called outside an active script step\";\n\nfunction cyclicLinesImpl(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts: LineDrawStyle,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: CyclicLinesState = {\n kind: \"cyclic-lines\",\n anchors: [a, b],\n style: opts,\n };\n return createDrawingHandle(slotId, subId, \"cyclic-lines\", state);\n}\n\n/**\n * Draw equally spaced vertical lines marking cycle periods between two\n * world anchors `[from, to]`. The cycle period equals `|to.time -\n * from.time|`; the renderer projects repeated vertical strokes at every\n * `from.time + n*period` to the right until the viewport edge.\n *\n * @anchors `a`, `b` — two `WorldPoint`s `(from, to)`\n * @anchorCount 2\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.cyclicLines demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.cyclicLines(\n * { time: bar.time, price: bar.close },\n * { time: bar.time + 60_000, price: bar.close },\n * { color: \"#0ea5e9\" },\n * );\n * },\n * });\n */\nexport function cyclicLines(a: WorldPoint, b: WorldPoint, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload — the callsite-id transformer rewrites\n * every script-side `draw.cyclicLines(a, b, opts)` into\n * `draw.cyclicLines(slotId, a, b, opts)`.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof cyclicLines = cyclicLines;\n * // void fn;\n */\nexport function cyclicLines(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link cyclicLines}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof cyclicLines = cyclicLines;\n * // void fn;\n */\nexport function cyclicLines(\n arg1: string | WorldPoint,\n arg2?: WorldPoint,\n arg3?: WorldPoint | LineDrawStyle,\n arg4?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || arg3 === undefined) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return cyclicLinesImpl(arg1, arg2, arg3 as WorldPoint, arg4 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/sine-line-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sineLine.js","sourceRoot":"","sources":["../../../../src/emit/draw/cycles/sineLine.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,gCAAgC;AAChC,4DAA4D;AAC5D,iBAAiB;AACjB,mEAAmE;AACnE,
|
|
1
|
+
{"version":3,"file":"sineLine.js","sourceRoot":"","sources":["../../../../src/emit/draw/cycles/sineLine.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,gCAAgC;AAChC,4DAA4D;AAC5D,iBAAiB;AACjB,mEAAmE;AACnE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,oDAAoD,CAAC;AAEjF,SAAS,YAAY,CACjB,MAAc,EACd,CAAa,EACb,CAAa,EACb,IAAmB;IAEnB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAkB;QACzB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,EAAE,IAAI;KACd,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC;AA6CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CACpB,IAAyB,EACzB,IAAiB,EACjB,IAAiC,EACjC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAkB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AACpE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (SineLineDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/sine-line-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n DrawingHandle,\n LineDrawStyle,\n SineLineState,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.sineLine called outside an active script step\";\n\nfunction sineLineImpl(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts: LineDrawStyle,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: SineLineState = {\n kind: \"sine-line\",\n anchors: [a, b],\n style: opts,\n };\n return createDrawingHandle(slotId, subId, \"sine-line\", state);\n}\n\n/**\n * Draw a sinusoidal projection fitted between two world anchors. The\n * baseline is the midpoint price of the two anchors; the amplitude is\n * half the price span; the half-period spans `|to.time - from.time|`\n * (so the full period is twice that). The renderer samples 32 points\n * per full period and extends the wave across the visible viewport.\n *\n * @anchors `a`, `b` — two `WorldPoint`s `(from, to)`\n * @anchorCount 2\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.sineLine demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.sineLine(\n * { time: bar.time, price: bar.low },\n * { time: bar.time + 60_000, price: bar.high },\n * { color: \"#0ea5e9\" },\n * );\n * },\n * });\n */\nexport function sineLine(a: WorldPoint, b: WorldPoint, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof sineLine = sineLine;\n * // void fn;\n */\nexport function sineLine(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link sineLine}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof sineLine = sineLine;\n * // void fn;\n */\nexport function sineLine(\n arg1: string | WorldPoint,\n arg2?: WorldPoint,\n arg3?: WorldPoint | LineDrawStyle,\n arg4?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || arg3 === undefined) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return sineLineImpl(arg1, arg2, arg3 as WorldPoint, arg4 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/time-cycles-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeCycles.js","sourceRoot":"","sources":["../../../../src/emit/draw/cycles/timeCycles.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,kCAAkC;AAClC,4DAA4D;AAC5D,iBAAiB;AACjB,qEAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"timeCycles.js","sourceRoot":"","sources":["../../../../src/emit/draw/cycles/timeCycles.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,kCAAkC;AAClC,4DAA4D;AAC5D,iBAAiB;AACjB,qEAAqE;AACrE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,sDAAsD,CAAC;AAEnF,SAAS,cAAc,CACnB,MAAc,EACd,CAAa,EACb,CAAa,EACb,IAAmB;IAEnB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAoB;QAC3B,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,EAAE,IAAI;KACd,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AACpE,CAAC;AA6CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CACtB,IAAyB,EACzB,IAAiB,EACjB,IAAiC,EACjC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAkB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AACtE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (TimeCyclesDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/time-cycles-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n DrawingHandle,\n LineDrawStyle,\n TimeCyclesState,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.timeCycles called outside an active script step\";\n\nfunction timeCyclesImpl(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts: LineDrawStyle,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: TimeCyclesState = {\n kind: \"time-cycles\",\n anchors: [a, b],\n style: opts,\n };\n return createDrawingHandle(slotId, subId, \"time-cycles\", state);\n}\n\n/**\n * Draw concentric semicircles measuring time cycles between two world\n * anchors `[centre, edge]`. The renderer projects upper-half arcs\n * centred at the midpoint of the two anchors at the `from.price`\n * baseline; arcs tile across the viewport at multiples of the arc\n * diameter.\n *\n * @anchors `a`, `b` — two `WorldPoint`s `(from, to)`\n * @anchorCount 2\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.timeCycles demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.timeCycles(\n * { time: bar.time, price: bar.close },\n * { time: bar.time + 60_000, price: bar.close },\n * { color: \"#0ea5e9\" },\n * );\n * },\n * });\n */\nexport function timeCycles(a: WorldPoint, b: WorldPoint, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof timeCycles = timeCycles;\n * // void fn;\n */\nexport function timeCycles(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link timeCycles}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof timeCycles = timeCycles;\n * // void fn;\n */\nexport function timeCycles(\n arg1: string | WorldPoint,\n arg2?: WorldPoint,\n arg3?: WorldPoint | LineDrawStyle,\n arg4?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || arg3 === undefined) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return timeCyclesImpl(arg1, arg2, arg3 as WorldPoint, arg4 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/elliott-correction-wave-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elliottCorrectionWave.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottCorrectionWave.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,6CAA6C;AAC7C,4DAA4D;AAC5D,iBAAiB;AACjB,iFAAiF;AACjF,
|
|
1
|
+
{"version":3,"file":"elliottCorrectionWave.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottCorrectionWave.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,6CAA6C;AAC7C,4DAA4D;AAC5D,iBAAiB;AACjB,iFAAiF;AACjF,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,iEAAiE,CAAC;AAI9F,SAAS,yBAAyB,CAC9B,MAAc,EACd,OAAqB,EACrB,IAAoB;IAEpB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;IAClC,MAAM,KAAK,GACP,MAAM,KAAK,SAAS;QAChB,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,KAAK,EAAE;QACrD,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACtE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,CAAC,CAAC;AAChF,CAAC;AA2CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CACjC,IAA2B,EAC3B,IAAmC,EACnC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,yBAAyB,CAAC,IAAI,EAAE,IAAoB,EAAE,CAAC,IAAI,IAAI,EAAE,CAAmB,CAAC,CAAC;AACjG,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (ElliottCorrectionWaveDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/elliott-correction-wave-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorTriple,\n DrawingHandle,\n ElliottCorrectionWaveState,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.elliottCorrectionWave called outside an active script step\";\n\ntype CorrectionOpts = LineDrawStyle & { labels?: ReadonlyArray<string> };\n\nfunction elliottCorrectionWaveImpl(\n slotId: string,\n anchors: AnchorTriple,\n opts: CorrectionOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const { labels, ...style } = opts;\n const state: ElliottCorrectionWaveState =\n labels === undefined\n ? { kind: \"elliott-correction-wave\", anchors, style }\n : { kind: \"elliott-correction-wave\", anchors, labels, style };\n return createDrawingHandle(slotId, subId, \"elliott-correction-wave\", state);\n}\n\n/**\n * Draw an Elliott three-wave A-B-C correction through 3 world anchors\n * `[A, B, C]`. The renderer strokes the connecting legs (A-B, B-C) and\n * labels each pivot. Pass `opts.labels` to override the default\n * `[\"A\", \"B\", \"C\"]` labels.\n *\n * @anchors `anchors` — `[A, B, C]`\n * @anchorCount 3\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.elliottCorrectionWave demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.elliottCorrectionWave([\n * { time: bar.time, price: bar.high },\n * { time: bar.time + 30_000, price: bar.low },\n * { time: bar.time + 60_000, price: bar.close },\n * ]);\n * },\n * });\n */\nexport function elliottCorrectionWave(anchors: AnchorTriple, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof elliottCorrectionWave = elliottCorrectionWave;\n * // void fn;\n */\nexport function elliottCorrectionWave(\n slotId: string,\n anchors: AnchorTriple,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link elliottCorrectionWave}. Branches\n * on `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof elliottCorrectionWave = elliottCorrectionWave;\n * // void fn;\n */\nexport function elliottCorrectionWave(\n arg1: string | AnchorTriple,\n arg2?: AnchorTriple | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return elliottCorrectionWaveImpl(arg1, arg2 as AnchorTriple, (arg3 ?? {}) as CorrectionOpts);\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/elliott-double-combo-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elliottDoubleCombo.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottDoubleCombo.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,0CAA0C;AAC1C,4DAA4D;AAC5D,iBAAiB;AACjB,8EAA8E;AAC9E,
|
|
1
|
+
{"version":3,"file":"elliottDoubleCombo.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottDoubleCombo.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,0CAA0C;AAC1C,4DAA4D;AAC5D,iBAAiB;AACjB,8EAA8E;AAC9E,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,8DAA8D,CAAC;AAI3F,SAAS,sBAAsB,CAC3B,MAAc,EACd,OAAmB,EACnB,IAAqB;IAErB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;IAClC,MAAM,KAAK,GACP,MAAM,KAAK,SAAS;QAChB,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,KAAK,EAAE;QAClD,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC;AAgDD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAC9B,IAAyB,EACzB,IAAiC,EACjC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAkB,EAAE,CAAC,IAAI,IAAI,EAAE,CAAoB,CAAC,CAAC;AAC7F,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (ElliottDoubleComboDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/elliott-double-combo-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorHept,\n DrawingHandle,\n ElliottDoubleComboState,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.elliottDoubleCombo called outside an active script step\";\n\ntype DoubleComboOpts = LineDrawStyle & { labels?: ReadonlyArray<string> };\n\nfunction elliottDoubleComboImpl(\n slotId: string,\n anchors: AnchorHept,\n opts: DoubleComboOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const { labels, ...style } = opts;\n const state: ElliottDoubleComboState =\n labels === undefined\n ? { kind: \"elliott-double-combo\", anchors, style }\n : { kind: \"elliott-double-combo\", anchors, labels, style };\n return createDrawingHandle(slotId, subId, \"elliott-double-combo\", state);\n}\n\n/**\n * Draw an Elliott seven-anchor W-X-Y double-three corrective pattern\n * through 7 world anchors `[start, W-end, x1, X-end, x2, Y-mid,\n * Y-end]`. The renderer strokes the 6-leg connecting polyline and\n * labels each pivot. Pass `opts.labels` to override the default\n * `[\"S\", \"W\", \"x1\", \"X\", \"x2\", \"Yi\", \"Y\"]` labels.\n *\n * @anchors `anchors` — `[start, W-end, x1, X-end, x2, Y-mid, Y-end]`\n * @anchorCount 7\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.elliottDoubleCombo demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.elliottDoubleCombo([\n * { time: bar.time, price: bar.low },\n * { time: bar.time + 10_000, price: bar.high },\n * { time: bar.time + 20_000, price: bar.close },\n * { time: bar.time + 30_000, price: bar.high + 1 },\n * { time: bar.time + 40_000, price: bar.close - 0.5 },\n * { time: bar.time + 50_000, price: bar.high + 2 },\n * { time: bar.time + 60_000, price: bar.close + 1 },\n * ]);\n * },\n * });\n */\nexport function elliottDoubleCombo(anchors: AnchorHept, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof elliottDoubleCombo = elliottDoubleCombo;\n * // void fn;\n */\nexport function elliottDoubleCombo(\n slotId: string,\n anchors: AnchorHept,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link elliottDoubleCombo}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof elliottDoubleCombo = elliottDoubleCombo;\n * // void fn;\n */\nexport function elliottDoubleCombo(\n arg1: string | AnchorHept,\n arg2?: AnchorHept | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return elliottDoubleComboImpl(arg1, arg2 as AnchorHept, (arg3 ?? {}) as DoubleComboOpts);\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/elliott-impulse-wave-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elliottImpulseWave.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottImpulseWave.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,0CAA0C;AAC1C,4DAA4D;AAC5D,iBAAiB;AACjB,8EAA8E;AAC9E,
|
|
1
|
+
{"version":3,"file":"elliottImpulseWave.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottImpulseWave.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,0CAA0C;AAC1C,4DAA4D;AAC5D,iBAAiB;AACjB,8EAA8E;AAC9E,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,8DAA8D,CAAC;AAI3F,SAAS,sBAAsB,CAC3B,MAAc,EACd,OAAoB,EACpB,IAAiB;IAEjB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;IAClC,MAAM,KAAK,GACP,MAAM,KAAK,SAAS;QAChB,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,KAAK,EAAE;QAClD,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC;AA8CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAC9B,IAA0B,EAC1B,IAAkC,EAClC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAmB,EAAE,CAAC,IAAI,IAAI,EAAE,CAAgB,CAAC,CAAC;AAC1F,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (ElliottImpulseWaveDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/elliott-impulse-wave-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorQuint,\n DrawingHandle,\n ElliottImpulseWaveState,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.elliottImpulseWave called outside an active script step\";\n\ntype ImpulseOpts = LineDrawStyle & { labels?: ReadonlyArray<string> };\n\nfunction elliottImpulseWaveImpl(\n slotId: string,\n anchors: AnchorQuint,\n opts: ImpulseOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const { labels, ...style } = opts;\n const state: ElliottImpulseWaveState =\n labels === undefined\n ? { kind: \"elliott-impulse-wave\", anchors, style }\n : { kind: \"elliott-impulse-wave\", anchors, labels, style };\n return createDrawingHandle(slotId, subId, \"elliott-impulse-wave\", state);\n}\n\n/**\n * Draw an Elliott five-wave impulse pattern through 5 world anchors\n * `[wave1End, wave2End, wave3End, wave4End, wave5End]`. The renderer\n * strokes the connecting legs (1-2, 2-3, 3-4, 4-5) and labels each\n * pivot. Pass `opts.labels` to override the default `[\"1\", \"2\", \"3\",\n * \"4\", \"5\"]` labels.\n *\n * @anchors `anchors` — `[wave1End, wave2End, wave3End, wave4End, wave5End]`\n * @anchorCount 5\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.elliottImpulseWave demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.elliottImpulseWave([\n * { time: bar.time, price: bar.low },\n * { time: bar.time + 15_000, price: bar.high },\n * { time: bar.time + 30_000, price: bar.close },\n * { time: bar.time + 45_000, price: bar.high + 1 },\n * { time: bar.time + 60_000, price: bar.close + 0.5 },\n * ]);\n * },\n * });\n */\nexport function elliottImpulseWave(anchors: AnchorQuint, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof elliottImpulseWave = elliottImpulseWave;\n * // void fn;\n */\nexport function elliottImpulseWave(\n slotId: string,\n anchors: AnchorQuint,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link elliottImpulseWave}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof elliottImpulseWave = elliottImpulseWave;\n * // void fn;\n */\nexport function elliottImpulseWave(\n arg1: string | AnchorQuint,\n arg2?: AnchorQuint | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return elliottImpulseWaveImpl(arg1, arg2 as AnchorQuint, (arg3 ?? {}) as ImpulseOpts);\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/elliott-triangle-wave-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elliottTriangleWave.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottTriangleWave.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,2CAA2C;AAC3C,4DAA4D;AAC5D,iBAAiB;AACjB,+EAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"elliottTriangleWave.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottTriangleWave.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,2CAA2C;AAC3C,4DAA4D;AAC5D,iBAAiB;AACjB,+EAA+E;AAC/E,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,+DAA+D,CAAC;AAI5F,SAAS,uBAAuB,CAC5B,MAAc,EACd,OAAoB,EACpB,IAAkB;IAElB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;IAClC,MAAM,KAAK,GACP,MAAM,KAAK,SAAS;QAChB,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,KAAK,EAAE;QACnD,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACpE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,CAAC,CAAC;AAC9E,CAAC;AA6CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAC/B,IAA0B,EAC1B,IAAkC,EAClC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,uBAAuB,CAAC,IAAI,EAAE,IAAmB,EAAE,CAAC,IAAI,IAAI,EAAE,CAAiB,CAAC,CAAC;AAC5F,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (ElliottTriangleWaveDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/elliott-triangle-wave-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorQuint,\n DrawingHandle,\n ElliottTriangleWaveState,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.elliottTriangleWave called outside an active script step\";\n\ntype TriangleOpts = LineDrawStyle & { labels?: ReadonlyArray<string> };\n\nfunction elliottTriangleWaveImpl(\n slotId: string,\n anchors: AnchorQuint,\n opts: TriangleOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const { labels, ...style } = opts;\n const state: ElliottTriangleWaveState =\n labels === undefined\n ? { kind: \"elliott-triangle-wave\", anchors, style }\n : { kind: \"elliott-triangle-wave\", anchors, labels, style };\n return createDrawingHandle(slotId, subId, \"elliott-triangle-wave\", state);\n}\n\n/**\n * Draw an Elliott five-wave triangle correction through 5 world anchors\n * `[a, b, c, d, e]`. The renderer strokes the connecting legs (a-b,\n * b-c, c-d, d-e) and labels each pivot. Pass `opts.labels` to override\n * the default `[\"a\", \"b\", \"c\", \"d\", \"e\"]` labels.\n *\n * @anchors `anchors` — `[a, b, c, d, e]`\n * @anchorCount 5\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.elliottTriangleWave demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.elliottTriangleWave([\n * { time: bar.time, price: bar.high },\n * { time: bar.time + 15_000, price: bar.low },\n * { time: bar.time + 30_000, price: bar.high - 1 },\n * { time: bar.time + 45_000, price: bar.low + 1 },\n * { time: bar.time + 60_000, price: bar.close },\n * ]);\n * },\n * });\n */\nexport function elliottTriangleWave(anchors: AnchorQuint, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof elliottTriangleWave = elliottTriangleWave;\n * // void fn;\n */\nexport function elliottTriangleWave(\n slotId: string,\n anchors: AnchorQuint,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link elliottTriangleWave}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof elliottTriangleWave = elliottTriangleWave;\n * // void fn;\n */\nexport function elliottTriangleWave(\n arg1: string | AnchorQuint,\n arg2?: AnchorQuint | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return elliottTriangleWaveImpl(arg1, arg2 as AnchorQuint, (arg3 ?? {}) as TriangleOpts);\n}\n"]}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
// `ElliottTripleComboState.anchors: AnchorHept` is a 7-anchor shell
|
|
12
12
|
// — the additional 3 invinite pivots are flagged as a Task-1 reshape
|
|
13
13
|
// follow-up.
|
|
14
|
-
// Re-licensed MIT for chartlang.
|
|
14
|
+
// Re-licensed MIT for chartlang.
|
|
15
15
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
16
16
|
import { createDrawingHandle } from "../handle.js";
|
|
17
17
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elliottTripleCombo.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottTripleCombo.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,0CAA0C;AAC1C,4DAA4D;AAC5D,iBAAiB;AACjB,8EAA8E;AAC9E,qEAAqE;AACrE,oEAAoE;AACpE,qEAAqE;AACrE,aAAa;AACb,
|
|
1
|
+
{"version":3,"file":"elliottTripleCombo.js","sourceRoot":"","sources":["../../../../src/emit/draw/elliott/elliottTripleCombo.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,0CAA0C;AAC1C,4DAA4D;AAC5D,iBAAiB;AACjB,8EAA8E;AAC9E,qEAAqE;AACrE,oEAAoE;AACpE,qEAAqE;AACrE,aAAa;AACb,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,8DAA8D,CAAC;AAI3F,SAAS,sBAAsB,CAC3B,MAAc,EACd,OAAmB,EACnB,IAAqB;IAErB,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;IAClC,MAAM,KAAK,GACP,MAAM,KAAK,SAAS;QAChB,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,KAAK,EAAE;QAClD,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC;AAgDD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAC9B,IAAyB,EACzB,IAAiC,EACjC,IAAoB;IAEpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAkB,EAAE,CAAC,IAAI,IAAI,EAAE,CAAoB,CAAC,CAAC;AAC7F,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (ElliottTripleComboDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/elliott-triple-combo-tool.ts.\n// Note: invinite's full schema carries 10 anchors; the landed Task-1\n// `ElliottTripleComboState.anchors: AnchorHept` is a 7-anchor shell\n// — the additional 3 invinite pivots are flagged as a Task-1 reshape\n// follow-up.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorHept,\n DrawingHandle,\n ElliottTripleComboState,\n LineDrawStyle,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.elliottTripleCombo called outside an active script step\";\n\ntype TripleComboOpts = LineDrawStyle & { labels?: ReadonlyArray<string> };\n\nfunction elliottTripleComboImpl(\n slotId: string,\n anchors: AnchorHept,\n opts: TripleComboOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const { labels, ...style } = opts;\n const state: ElliottTripleComboState =\n labels === undefined\n ? { kind: \"elliott-triple-combo\", anchors, style }\n : { kind: \"elliott-triple-combo\", anchors, labels, style };\n return createDrawingHandle(slotId, subId, \"elliott-triple-combo\", state);\n}\n\n/**\n * Draw an Elliott seven-anchor W-X-Y-X-Z triple-three corrective\n * pattern through 7 world anchors `[start, W-end, X1-end, Y-end,\n * X2-end, Z-mid, Z-end]`. The renderer strokes the 6-leg connecting\n * polyline and labels each pivot. Pass `opts.labels` to override the\n * default `[\"S\", \"W\", \"X1\", \"Y\", \"X2\", \"Zi\", \"Z\"]` labels.\n *\n * @anchors `anchors` — `[start, W-end, X1-end, Y-end, X2-end, Z-mid, Z-end]`\n * @anchorCount 7\n * @bucket polylines\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.elliottTripleCombo demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.elliottTripleCombo([\n * { time: bar.time, price: bar.low },\n * { time: bar.time + 10_000, price: bar.high },\n * { time: bar.time + 20_000, price: bar.close },\n * { time: bar.time + 30_000, price: bar.high + 1 },\n * { time: bar.time + 40_000, price: bar.close - 0.5 },\n * { time: bar.time + 50_000, price: bar.high + 2 },\n * { time: bar.time + 60_000, price: bar.close + 1 },\n * ]);\n * },\n * });\n */\nexport function elliottTripleCombo(anchors: AnchorHept, opts?: LineDrawStyle): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof elliottTripleCombo = elliottTripleCombo;\n * // void fn;\n */\nexport function elliottTripleCombo(\n slotId: string,\n anchors: AnchorHept,\n opts?: LineDrawStyle,\n): DrawingHandle;\n/**\n * Implementation signature for {@link elliottTripleCombo}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof elliottTripleCombo = elliottTripleCombo;\n * // void fn;\n */\nexport function elliottTripleCombo(\n arg1: string | AnchorHept,\n arg2?: AnchorHept | LineDrawStyle,\n arg3?: LineDrawStyle,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return elliottTripleComboImpl(arg1, arg2 as AnchorHept, (arg3 ?? {}) as TripleComboOpts);\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/fib-channel-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fibChannel.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibChannel.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,kCAAkC;AAClC,4DAA4D;AAC5D,iBAAiB;AACjB,qEAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"fibChannel.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibChannel.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,kCAAkC;AAClC,4DAA4D;AAC5D,iBAAiB;AACjB,qEAAqE;AACrE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,sDAAsD,CAAC;AAEnF,SAAS,cAAc,CAAC,MAAc,EAAE,OAAqB,EAAE,IAAa;IACxE,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAoB,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC7E,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AACpE,CAAC;AAyCD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CACtB,IAA2B,EAC3B,IAA6B,EAC7B,IAAc;IAEd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,cAAc,CAAC,IAAI,EAAE,IAAoB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AAClE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (FibChannelDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/fib-channel-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorTriple,\n DrawingHandle,\n FibChannelState,\n FibOpts,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.fibChannel called outside an active script step\";\n\nfunction fibChannelImpl(slotId: string, anchors: AnchorTriple, opts: FibOpts): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: FibChannelState = { kind: \"fib-channel\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"fib-channel\", state);\n}\n\n/**\n * Draw a Fibonacci channel — parallel translates of `line(anchors[0],\n * anchors[1])` at fib-ratio offsets through `anchors[2]`. Mirrors\n * invinite's `fib-channel-tool.ts` shape.\n *\n * @anchors `anchors` — `[A, B, C]` triple\n * @anchorCount 3\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.fibChannel demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.fibChannel(\n * [\n * { time: bar.time, price: bar.low },\n * { time: bar.time, price: bar.high },\n * { time: bar.time, price: bar.close },\n * ],\n * { showLabels: true },\n * );\n * },\n * });\n */\nexport function fibChannel(anchors: AnchorTriple, opts?: FibOpts): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof fibChannel = fibChannel;\n * // void fn;\n */\nexport function fibChannel(slotId: string, anchors: AnchorTriple, opts?: FibOpts): DrawingHandle;\n/**\n * Implementation signature for {@link fibChannel}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof fibChannel = fibChannel;\n * // void fn;\n */\nexport function fibChannel(\n arg1: string | AnchorTriple,\n arg2?: AnchorTriple | FibOpts,\n arg3?: FibOpts,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return fibChannelImpl(arg1, arg2 as AnchorTriple, arg3 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/fib-retracement-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fibRetracement.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibRetracement.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,sCAAsC;AACtC,4DAA4D;AAC5D,iBAAiB;AACjB,yEAAyE;AACzE,
|
|
1
|
+
{"version":3,"file":"fibRetracement.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibRetracement.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,sCAAsC;AACtC,4DAA4D;AAC5D,iBAAiB;AACjB,yEAAyE;AACzE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,0DAA0D,CAAC;AAEvF,SAAS,kBAAkB,CACvB,MAAc,EACd,CAAa,EACb,CAAa,EACb,IAAa;IAEb,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAwB;QAC/B,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,EAAE,IAAI;KACd,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;AACxE,CAAC;AA6CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAC1B,IAAyB,EACzB,IAAiB,EACjB,IAA2B,EAC3B,IAAc;IAEd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAkB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AAC1E,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (FibRetracementDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/fib-retracement-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n DrawingHandle,\n FibOpts,\n FibRetracementState,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.fibRetracement called outside an active script step\";\n\nfunction fibRetracementImpl(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts: FibOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: FibRetracementState = {\n kind: \"fib-retracement\",\n anchors: [a, b],\n style: opts,\n };\n return createDrawingHandle(slotId, subId, \"fib-retracement\", state);\n}\n\n/**\n * Draw a Fibonacci retracement between two swing-pivot world anchors.\n * Levels default to the canonical `FIB_LEVELS` array when\n * `opts.levels` is omitted; the renderer paints one horizontal line\n * per level between `a.price` and `b.price`. Mirrors invinite's\n * `fib-retracement-tool.ts` shape.\n *\n * @anchors `a`, `b` — two swing `WorldPoint`s\n * @anchorCount 2\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.fibRetracement demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.fibRetracement(\n * { time: bar.time, price: bar.low },\n * { time: bar.time, price: bar.high },\n * { showLabels: true, extendRight: true },\n * );\n * },\n * });\n */\nexport function fibRetracement(a: WorldPoint, b: WorldPoint, opts?: FibOpts): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof fibRetracement = fibRetracement;\n * // void fn;\n */\nexport function fibRetracement(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts?: FibOpts,\n): DrawingHandle;\n/**\n * Implementation signature for {@link fibRetracement}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof fibRetracement = fibRetracement;\n * // void fn;\n */\nexport function fibRetracement(\n arg1: string | WorldPoint,\n arg2?: WorldPoint,\n arg3?: WorldPoint | FibOpts,\n arg4?: FibOpts,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || arg3 === undefined) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return fibRetracementImpl(arg1, arg2, arg3 as WorldPoint, arg4 ?? {});\n}\n"]}
|
|
@@ -4,8 +4,7 @@ import type { DrawingHandle, FibOpts, WorldPoint } from "@invinite-org/chartlang
|
|
|
4
4
|
* level in `opts.levels ?? FIB_LEVELS` paints a vertical line at
|
|
5
5
|
* `t = a.time + level * (b.time - a.time)`. Mirrors invinite's
|
|
6
6
|
* `fib-time-zone-tool.ts` shape (using the ratio array per the landed
|
|
7
|
-
* core state
|
|
8
|
-
* §1 for the spec ↔ core delta on integer-sequence semantics).
|
|
7
|
+
* core state).
|
|
9
8
|
*
|
|
10
9
|
* @anchors `a`, `b` — two `WorldPoint`s defining the time span
|
|
11
10
|
* @anchorCount 2
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fibTimeZone.d.ts","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibTimeZone.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACR,aAAa,EACb,OAAO,EAEP,UAAU,EACb,MAAM,8BAA8B,CAAC;AAyBtC
|
|
1
|
+
{"version":3,"file":"fibTimeZone.d.ts","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibTimeZone.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACR,aAAa,EACb,OAAO,EAEP,UAAU,EACb,MAAM,8BAA8B,CAAC;AAyBtC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;AACzF;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CACvB,MAAM,EAAE,MAAM,EACd,CAAC,EAAE,UAAU,EACb,CAAC,EAAE,UAAU,EACb,IAAI,CAAC,EAAE,OAAO,GACf,aAAa,CAAC"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/fib-time-zone-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fibTimeZone.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibTimeZone.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,uEAAuE;AACvE,
|
|
1
|
+
{"version":3,"file":"fibTimeZone.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibTimeZone.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,mCAAmC;AACnC,4DAA4D;AAC5D,iBAAiB;AACjB,uEAAuE;AACvE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,uDAAuD,CAAC;AAEpF,SAAS,eAAe,CACpB,MAAc,EACd,CAAa,EACb,CAAa,EACb,IAAa;IAEb,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAqB;QAC5B,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,EAAE,IAAI;KACd,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;AA6CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACvB,IAAyB,EACzB,IAAiB,EACjB,IAA2B,EAC3B,IAAc;IAEd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAkB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AACvE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (FibTimeZoneDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/fib-time-zone-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n DrawingHandle,\n FibOpts,\n FibTimeZoneState,\n WorldPoint,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.fibTimeZone called outside an active script step\";\n\nfunction fibTimeZoneImpl(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts: FibOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: FibTimeZoneState = {\n kind: \"fib-time-zone\",\n anchors: [a, b],\n style: opts,\n };\n return createDrawingHandle(slotId, subId, \"fib-time-zone\", state);\n}\n\n/**\n * Draw fib-spaced vertical time zones between two world anchors. Each\n * level in `opts.levels ?? FIB_LEVELS` paints a vertical line at\n * `t = a.time + level * (b.time - a.time)`. Mirrors invinite's\n * `fib-time-zone-tool.ts` shape (using the ratio array per the landed\n * core state).\n *\n * @anchors `a`, `b` — two `WorldPoint`s defining the time span\n * @anchorCount 2\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.fibTimeZone demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.fibTimeZone(\n * { time: bar.time, price: bar.close },\n * { time: bar.time + 100_000, price: bar.close },\n * { showLabels: true },\n * );\n * },\n * });\n */\nexport function fibTimeZone(a: WorldPoint, b: WorldPoint, opts?: FibOpts): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof fibTimeZone = fibTimeZone;\n * // void fn;\n */\nexport function fibTimeZone(\n slotId: string,\n a: WorldPoint,\n b: WorldPoint,\n opts?: FibOpts,\n): DrawingHandle;\n/**\n * Implementation signature for {@link fibTimeZone}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof fibTimeZone = fibTimeZone;\n * // void fn;\n */\nexport function fibTimeZone(\n arg1: string | WorldPoint,\n arg2?: WorldPoint,\n arg3?: WorldPoint | FibOpts,\n arg4?: FibOpts,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || arg3 === undefined) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return fibTimeZoneImpl(arg1, arg2, arg3 as WorldPoint, arg4 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/fib-trend-extension-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fibTrendExtension.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibTrendExtension.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,yCAAyC;AACzC,4DAA4D;AAC5D,iBAAiB;AACjB,6EAA6E;AAC7E,
|
|
1
|
+
{"version":3,"file":"fibTrendExtension.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibTrendExtension.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,yCAAyC;AACzC,4DAA4D;AAC5D,iBAAiB;AACjB,6EAA6E;AAC7E,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,6DAA6D,CAAC;AAE1F,SAAS,qBAAqB,CAC1B,MAAc,EACd,OAAqB,EACrB,IAAa;IAEb,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAA2B;QAClC,IAAI,EAAE,qBAAqB;QAC3B,OAAO;QACP,KAAK,EAAE,IAAI;KACd,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AA8CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAC7B,IAA2B,EAC3B,IAA6B,EAC7B,IAAc;IAEd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,qBAAqB,CAAC,IAAI,EAAE,IAAoB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AACzE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (FibTrendExtensionDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/fib-trend-extension-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorTriple,\n DrawingHandle,\n FibOpts,\n FibTrendExtensionState,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.fibTrendExtension called outside an active script step\";\n\nfunction fibTrendExtensionImpl(\n slotId: string,\n anchors: AnchorTriple,\n opts: FibOpts,\n): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: FibTrendExtensionState = {\n kind: \"fib-trend-extension\",\n anchors,\n style: opts,\n };\n return createDrawingHandle(slotId, subId, \"fib-trend-extension\", state);\n}\n\n/**\n * Draw a Fibonacci trend extension from three world anchors `[A, B,\n * C]`. The (A→B) leg defines the price delta; each level projects an\n * extension from `C.price` at `level * (B.price - A.price)`. Mirrors\n * invinite's `fib-trend-extension-tool.ts` shape.\n *\n * @anchors `anchors` — `[A, B, C]` triple (swing pivot, swing target, projection origin)\n * @anchorCount 3\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.fibTrendExtension demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.fibTrendExtension(\n * [\n * { time: bar.time, price: bar.low },\n * { time: bar.time, price: bar.high },\n * { time: bar.time, price: bar.close },\n * ],\n * { showLabels: true },\n * );\n * },\n * });\n */\nexport function fibTrendExtension(anchors: AnchorTriple, opts?: FibOpts): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof fibTrendExtension = fibTrendExtension;\n * // void fn;\n */\nexport function fibTrendExtension(\n slotId: string,\n anchors: AnchorTriple,\n opts?: FibOpts,\n): DrawingHandle;\n/**\n * Implementation signature for {@link fibTrendExtension}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof fibTrendExtension = fibTrendExtension;\n * // void fn;\n */\nexport function fibTrendExtension(\n arg1: string | AnchorTriple,\n arg2?: AnchorTriple | FibOpts,\n arg3?: FibOpts,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return fibTrendExtensionImpl(arg1, arg2 as AnchorTriple, arg3 ?? {});\n}\n"]}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.
|
|
8
8
|
// Behaviour from
|
|
9
9
|
// invinite/src/components/trading-chart/tools/fib-wedge-tool.ts.
|
|
10
|
-
// Re-licensed MIT for chartlang.
|
|
10
|
+
// Re-licensed MIT for chartlang.
|
|
11
11
|
import { ACTIVE_RUNTIME_CONTEXT } from "../../../runtimeContext.js";
|
|
12
12
|
import { createDrawingHandle } from "../handle.js";
|
|
13
13
|
import { nextSubId } from "../subIdAllocator.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fibWedge.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibWedge.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,gCAAgC;AAChC,4DAA4D;AAC5D,iBAAiB;AACjB,mEAAmE;AACnE,
|
|
1
|
+
{"version":3,"file":"fibWedge.js","sourceRoot":"","sources":["../../../../src/emit/draw/fibA/fibWedge.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,EAAE;AACF,oCAAoC;AACpC,6DAA6D;AAC7D,gCAAgC;AAChC,4DAA4D;AAC5D,iBAAiB;AACjB,mEAAmE;AACnE,iCAAiC;AASjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,oDAAoD,CAAC;AAEjF,SAAS,YAAY,CAAC,MAAc,EAAE,OAAqB,EAAE,IAAa;IACtE,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAkB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC;AA0CD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CACpB,IAA2B,EAC3B,IAA6B,EAC7B,IAAc;IAEd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,EAAE,IAAoB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AAChE,CAAC","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n//\n// Anchors + state shape ported from\n// invinite/shared/trading-chart-collab-yjs/y-doc-bridge.ts\n// (FibWedgeDrawing), commit\n// 078f41fe2569d659d5aba726da8bcb5d3e2ced02, © Invinite.\n// Behaviour from\n// invinite/src/components/trading-chart/tools/fib-wedge-tool.ts.\n// Re-licensed MIT for chartlang.\n\nimport type {\n AnchorTriple,\n DrawingHandle,\n FibOpts,\n FibWedgeState,\n} from \"@invinite-org/chartlang-core\";\n\nimport { ACTIVE_RUNTIME_CONTEXT } from \"../../../runtimeContext.js\";\nimport { createDrawingHandle } from \"../handle.js\";\nimport { nextSubId } from \"../subIdAllocator.js\";\n\nconst OUTSIDE_CTX_MESSAGE = \"draw.fibWedge called outside an active script step\";\n\nfunction fibWedgeImpl(slotId: string, anchors: AnchorTriple, opts: FibOpts): DrawingHandle {\n const ctx = ACTIVE_RUNTIME_CONTEXT.current;\n if (ctx === null) throw new Error(OUTSIDE_CTX_MESSAGE);\n const subId = nextSubId(ctx, slotId);\n const state: FibWedgeState = { kind: \"fib-wedge\", anchors, style: opts };\n return createDrawingHandle(slotId, subId, \"fib-wedge\", state);\n}\n\n/**\n * Draw a Fibonacci wedge — rays fanning from `anchors[0]` (the pivot)\n * at fib-ratio interpolated angles between the (pivot→`anchors[1]`)\n * and (pivot→`anchors[2]`) directions. Mirrors invinite's\n * `fib-wedge-tool.ts` shape.\n *\n * @anchors `anchors` — `[pivot, range1, range2]` triple\n * @anchorCount 3\n * @bucket other\n * @since 0.3\n * @stable\n * @example\n * import { defineIndicator } from \"@invinite-org/chartlang-core\";\n * export default defineIndicator({\n * name: \"draw.fibWedge demo\",\n * apiVersion: 1,\n * compute({ bar, draw }) {\n * draw.fibWedge(\n * [\n * { time: bar.time, price: bar.close },\n * { time: bar.time + 30_000, price: bar.high },\n * { time: bar.time + 30_000, price: bar.low },\n * ],\n * { showLabels: true },\n * );\n * },\n * });\n */\nexport function fibWedge(anchors: AnchorTriple, opts?: FibOpts): DrawingHandle;\n/**\n * Compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // Internal — the compiler rewrites every script callsite.\n * // const fn: typeof fibWedge = fibWedge;\n * // void fn;\n */\nexport function fibWedge(slotId: string, anchors: AnchorTriple, opts?: FibOpts): DrawingHandle;\n/**\n * Implementation signature for {@link fibWedge}. Branches on\n * `typeof arg1 === \"string\"` to dispatch the script-facing vs\n * compiler-injected overload.\n *\n * @since 0.3\n * @stable\n * @example\n * // const fn: typeof fibWedge = fibWedge;\n * // void fn;\n */\nexport function fibWedge(\n arg1: string | AnchorTriple,\n arg2?: AnchorTriple | FibOpts,\n arg3?: FibOpts,\n): DrawingHandle {\n if (typeof arg1 !== \"string\" || arg2 === undefined || !Array.isArray(arg2)) {\n throw new Error(OUTSIDE_CTX_MESSAGE);\n }\n return fibWedgeImpl(arg1, arg2 as AnchorTriple, arg3 ?? {});\n}\n"]}
|
|
@@ -4,8 +4,7 @@ import type { DrawingHandle, FibOpts, WorldPoint } from "@invinite-org/chartlang
|
|
|
4
4
|
* through fib-ratio multiples of `|b - a|` (the radius-point distance).
|
|
5
5
|
* Mirrors invinite's `fib-circles-tool.ts` shape. Renderer uses
|
|
6
6
|
* `style.levels ?? FIB_LEVELS` (the ratio array, NOT the integer
|
|
7
|
-
* Fibonacci sequence
|
|
8
|
-
* `tasks/phase-3-drawing-parity/12-fibonacci-b.plan.md` §4).
|
|
7
|
+
* Fibonacci sequence).
|
|
9
8
|
*
|
|
10
9
|
* @anchors `a`, `b` — two `WorldPoint`s (centre, radius-point)
|
|
11
10
|
* @anchorCount 2
|