oakscriptjs 0.11.5 → 0.11.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/cjs/index.d.ts +2 -1
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js +5 -1
  4. package/dist/cjs/index.js.map +2 -2
  5. package/dist/cjs/runtime/inputs.d.ts.map +1 -1
  6. package/dist/cjs/runtime/inputs.js +6 -2
  7. package/dist/cjs/runtime/inputs.js.map +2 -2
  8. package/dist/cjs/script/index.d.ts +15 -1
  9. package/dist/cjs/script/index.d.ts.map +1 -1
  10. package/dist/cjs/script/index.js +27 -1
  11. package/dist/cjs/script/index.js.map +2 -2
  12. package/dist/cjs/utils/index.d.ts.map +1 -1
  13. package/dist/cjs/utils/index.js +13 -2
  14. package/dist/cjs/utils/index.js.map +2 -2
  15. package/dist/cjs/utils/source-resolver.d.ts +17 -0
  16. package/dist/cjs/utils/source-resolver.d.ts.map +1 -0
  17. package/dist/cjs/utils/source-resolver.js +45 -0
  18. package/dist/cjs/utils/source-resolver.js.map +7 -0
  19. package/dist/esm/index.d.ts +2 -1
  20. package/dist/esm/index.d.ts.map +1 -1
  21. package/dist/esm/index.js +2 -1
  22. package/dist/esm/index.js.map +1 -1
  23. package/dist/esm/runtime/inputs.d.ts.map +1 -1
  24. package/dist/esm/runtime/inputs.js +8 -2
  25. package/dist/esm/runtime/inputs.js.map +1 -1
  26. package/dist/esm/script/index.d.ts +15 -1
  27. package/dist/esm/script/index.d.ts.map +1 -1
  28. package/dist/esm/script/index.js +34 -1
  29. package/dist/esm/script/index.js.map +1 -1
  30. package/dist/esm/utils/index.d.ts.map +1 -1
  31. package/dist/esm/utils/index.js +18 -1
  32. package/dist/esm/utils/index.js.map +1 -1
  33. package/dist/esm/utils/source-resolver.d.ts +17 -0
  34. package/dist/esm/utils/source-resolver.d.ts.map +1 -0
  35. package/dist/esm/utils/source-resolver.js +24 -0
  36. package/dist/esm/utils/source-resolver.js.map +1 -0
  37. package/package.json +1 -1
  38. package/src/index.ts +2 -1
  39. package/src/runtime/inputs.ts +7 -2
  40. package/src/script/index.ts +49 -3
  41. package/src/utils/index.ts +15 -1
  42. package/src/utils/source-resolver.ts +29 -0
@@ -50,6 +50,7 @@ export { sma, ema, rsi, macd, bb, stdev, crossover, crossunder, change, tr, atr,
50
50
  export { abs, ceil, floor, round, max, min, avg, sum, sqrt, pow, exp, log, sin, cos, tan } from './math/index.js';
51
51
  export { rgb, from_hex as color_from_hex, new_color } from './color/index.js';
52
52
  export { ohlcFromBars, getClose, getHigh, getLow, getOpen, getSource, getSourceSeries, at, div } from './utils/index.js';
53
+ export { setSourceResolver, externalSource, BUILTIN_SOURCES, type SourceResolver } from './utils/source-resolver.js';
53
54
  export * from './lib/index.js';
54
55
  export { isNA as na, nz, fixnan } from './utils/index.js';
55
56
  export { indicator, type IndicatorMetadataConfig, type InputDefinition, type IndicatorContext, type IndicatorInstance, type IndicatorConstructor, } from './indicator.js';
@@ -64,7 +65,7 @@ export type * from './strategy/index.js';
64
65
  export { LightweightChartsAdapter } from './runtime/adapters/LightweightChartsAdapter.js';
65
66
  export type { LightweightSeriesDefinitions } from './runtime/adapters/LightweightChartsAdapter.js';
66
67
  export { SimpleInputAdapter } from './runtime/adapters/SimpleInputAdapter.js';
67
- export declare const VERSION = "0.11.5";
68
+ export declare const VERSION = "0.11.7";
68
69
  /**
69
70
  * Library information
70
71
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/cjs/index.js CHANGED
@@ -29,6 +29,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
29
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
30
  var index_exports = {};
31
31
  __export(index_exports, {
32
+ BUILTIN_SOURCES: () => import_source_resolver.BUILTIN_SOURCES,
32
33
  BarData: () => import_series.BarData,
33
34
  LightweightChartsAdapter: () => import_LightweightChartsAdapter.LightweightChartsAdapter,
34
35
  STRATEGY_CONSTANTS: () => import_strategy.STRATEGY_CONSTANTS,
@@ -73,6 +74,7 @@ __export(index_exports, {
73
74
  drawingOutputs: () => import_output.drawingOutputs,
74
75
  ema: () => import_ta_series.ema,
75
76
  exp: () => import_math.exp,
77
+ externalSource: () => import_source_resolver.externalSource,
76
78
  fixnan: () => import_utils2.fixnan,
77
79
  floor: () => import_math.floor,
78
80
  getClose: () => import_utils.getClose,
@@ -138,6 +140,7 @@ __export(index_exports, {
138
140
  setContext: () => import_runtime.setContext,
139
141
  setDrawingBar: () => import_registry.setDrawingBar,
140
142
  setDrawingLimits: () => import_registry.setDrawingLimits,
143
+ setSourceResolver: () => import_source_resolver.setSourceResolver,
141
144
  sin: () => import_math.sin,
142
145
  sma: () => import_ta_series.sma,
143
146
  sqrt: () => import_math.sqrt,
@@ -192,6 +195,7 @@ var import_ta_series = require("./ta-series.js");
192
195
  var import_math = require("./math/index.js");
193
196
  var import_color = require("./color/index.js");
194
197
  var import_utils = require("./utils/index.js");
198
+ var import_source_resolver = require("./utils/source-resolver.js");
195
199
  __reExport(index_exports, require("./lib/index.js"), module.exports);
196
200
  var import_utils2 = require("./utils/index.js");
197
201
  var import_indicator = require("./indicator.js");
@@ -203,7 +207,7 @@ var import_input_active = require("./runtime/input-active.js");
203
207
  var import_strategy = require("./strategy/index.js");
204
208
  var import_LightweightChartsAdapter = require("./runtime/adapters/LightweightChartsAdapter.js");
205
209
  var import_SimpleInputAdapter = require("./runtime/adapters/SimpleInputAdapter.js");
206
- const VERSION = "0.11.5";
210
+ const VERSION = "0.11.7";
207
211
  const info = {
208
212
  name: "OakScriptJS",
209
213
  version: VERSION,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "sourcesContent": ["/**\n * OakScriptJS - Simplified PineScript-like library for JavaScript\n *\n * This library provides Series-based lazy evaluation and technical analysis functions\n * for building trading indicators. The PineScript-style script API is in `oakscriptjs/script`.\n *\n * Key features:\n * - Series class for lazy evaluation and method chaining\n * - Core TA functions (array-based)\n * - TA-Series wrappers (Series-based)\n *\n * @packageDocumentation\n */\n\n// Export all types\nexport * from './types/index.js';\nexport * from './types/metadata.js';\n\n// Export core namespaces (array-based functions)\nimport * as taCore from './ta/index.js';\nimport * as math from './math/index.js';\nimport * as array from './array/index.js';\nimport * as map from './map/index.js';\nimport * as str from './str/index.js';\nimport * as color from './color/index.js';\nimport * as time from './time/index.js';\nimport * as timeframe from './timeframe/index.js';\nimport * as matrix from './matrix/index.js';\nimport * as line from './line/index.js';\nimport * as box from './box/index.js';\nimport * as label from './label/index.js';\nimport * as linefill from './linefill/index.js';\nimport * as chartPoint from './chartpoint/index.js';\nimport * as polyline from './polyline/index.js';\nimport * as table from './table/index.js';\nimport * as text from './text/index.js';\nimport * as compare from './compare/index.js';\nimport * as callsite from './callsite/index.js';\n\nexport { taCore, math, array, map, str, color, time, timeframe, matrix, line, box, label, linefill, chartPoint, polyline, table, text, compare, callsite };\n\n// Renderable drawings (IndicatorResult labels, lines, boxes, linefills, polylines, tables) and future bar times\nexport { drawingOutputs, type DrawingOutputs } from './drawing/output.js';\nexport { barInterval, barTime } from './drawing/bar-time.js';\n\n// Drawing registry limits (PineScript indicator(max_lines_count / max_labels_count / max_boxes_count / max_polylines_count))\nexport {\n resetDrawings,\n setDrawingLimits,\n setDrawingBar,\n holdDrawing,\n releaseDrawing,\n varDrawing,\n type DrawingLimits,\n type DrawingVariable,\n} from './drawing/registry.js';\n\n// The session of a chart context without a script run: time(tf, session, timezone), time_close(...), time_tradingday,\n// session.* flags, request.security periods with the session and holidays, and bars after the last bar on the trading\n// calendar\nexport {\n chartSessions,\n sessionPeriods,\n periodTime,\n periodClose,\n tradingDayTime,\n chartSessionFlags,\n resampleSession,\n barTimeAfter,\n barsUntil,\n type SessionContext,\n type ChartSessions,\n type SessionPeriods,\n type SessionResample,\n} from './session/context.js';\nexport { TradingCalendar, type SessionSpec } from './session/calendar.js';\nexport { SessionBars, sessionFlags, type SessionFlags } from './session/bars.js';\n\n// Same-symbol request.security on a higher timeframe (completion and lookahead rules) and ticker.heikinashi\nexport { resample, periodsOf, afterCompletion, mapToChart, heikinAshi, type Resampled } from './security/resample.js';\n// request.security of another symbol: which bar of the other symbol each chart bar shows (#179)\nexport {\n securityOther,\n securityOtherValues,\n securityLowerTf,\n type OtherSymbolChart,\n type OtherSymbolOptions,\n type SymbolCalendar,\n} from './security/other.js';\n\n// Export Series class (self-contained, no context)\nexport { Series, BarData } from './runtime/series.js';\nexport type { SeriesExtractor } from './runtime/series.js';\n\n// Export TA-Series namespace (Series-based wrappers)\nimport * as ta from './ta-series.js';\nexport { ta };\n\n// Export metadata types for indicator return values\nexport type {\n PlotOptions,\n HLineOptions,\n FillOptions,\n InputMetadata,\n PlotMetadata,\n IndicatorMetadata,\n TimeValue,\n PlotData,\n HLineData,\n FillData,\n FillGradient,\n IndicatorResult,\n IndicatorFactory,\n PlotStyle,\n LineStyle,\n PlotDisplay,\n InputType\n} from './types/metadata.js';\n\n// Re-export commonly used functions for convenience\nexport { sma, ema, rsi, macd, bb, stdev, crossover, crossunder, change, tr, atr, cum, vwap } from './ta-series.js';\nexport { abs, ceil, floor, round, max, min, avg, sum, sqrt, pow, exp, log, sin, cos, tan } from './math/index.js';\nexport { rgb, from_hex as color_from_hex, new_color } from './color/index.js';\n\n// Export chart data utilities\nexport { ohlcFromBars, getClose, getHigh, getLow, getOpen, getSource, getSourceSeries, at, div } from './utils/index.js';\n\n// Export libraries (ZigZag, etc.)\nexport * from './lib/index.js';\n\n// Export helper functions for generated indicators (PineScript compatibility)\nexport {isNA as na, nz, fixnan} from './utils/index.js';\n\n// Export indicator infrastructure\nexport {\n indicator,\n type IndicatorMetadataConfig,\n type InputDefinition,\n type IndicatorContext,\n type IndicatorInstance,\n type IndicatorConstructor,\n} from './indicator.js';\n\nexport {\n input,\n type InputValue,\n type IntInputOptions,\n type FloatInputOptions,\n type SourceInputOptions,\n type BoolInputOptions,\n type StringInputOptions,\n type TimeInputOptions,\n type SourceType,\n} from './input.js';\n\nexport {\n plot as plotHelper,\n createPlot,\n type Time,\n type TimeValuePair,\n type PlotOptions as PlotHelperOptions,\n type PlotResult,\n} from './plot.js';\n\n// Runtime exports - global context runtime (setContext, plot, hline) drawing through a ChartAdapter\nexport {\n setContext,\n clearContext,\n getContext,\n registerCalculate,\n recalculate,\n plot,\n hline,\n clearPlots,\n} from './runtime/runtime.js';\n\nexport {\n input_int,\n input_float,\n input_bool,\n input_string,\n input_text_area,\n input_source,\n input_timeframe,\n input_session,\n input_symbol,\n input_time,\n} from './runtime/inputs.js';\nexport { isInputActive } from './runtime/input-active.js';\n\nexport type {\n OakScriptContext,\n ChartAdapter,\n InputAdapter,\n SeriesHandle,\n SeriesOptions,\n InputConfig,\n InputCondition,\n InputOptions,\n OhlcvData,\n PlotConfig,\n HLineConfig,\n FillConfig,\n ArrowConfig,\n CandleConfig,\n} from './runtime/types.js';\n\n// Strategy types and constants (the script API forwards strategy.* calls to a host engine)\nexport {\n STRATEGY_CONSTANTS,\n STRATEGY_DEFAULTS,\n STRATEGY_NUMBER_VARIABLES,\n STRATEGY_TEXT_VARIABLES,\n} from './strategy/index.js';\nexport type * from './strategy/index.js';\n\nexport { LightweightChartsAdapter } from './runtime/adapters/LightweightChartsAdapter.js';\nexport type { LightweightSeriesDefinitions } from './runtime/adapters/LightweightChartsAdapter.js';\nexport { SimpleInputAdapter } from './runtime/adapters/SimpleInputAdapter.js';\n\n// Version\nexport const VERSION = '0.11.5';\n\n/**\n * Library information\n */\nexport const info = {\n name: 'OakScriptJS',\n version: VERSION,\n description: 'Simplified PineScript-like library - Series + TA functions',\n features: {\n series: 'Lazy evaluation with Series class',\n ta: 'Technical analysis functions (Series and array-based)',\n script: 'PineScript-style script API (oakscriptjs/script): indicator, strategy, inputs, plots, request.security',\n runtime: 'Global context runtime drawing through a ChartAdapter',\n indicator: 'Indicator function with automatic pane management'\n },\n namespaces: {\n core: ['ta', 'math', 'array', 'map', 'str', 'color', 'time', 'timeframe', 'matrix'],\n drawing: ['line', 'box', 'label', 'linefill', 'chartPoint', 'polyline', 'table', 'text'],\n runtime: ['setContext', 'plot', 'hline', 'input_*'],\n indicator: ['indicator', 'input', 'plotHelper', 'createPlot']\n }\n};\n\n// PineScript compatibility stubs - functions that have no runtime effect\n// These are no-ops so that PineScript-style code runs without modification\n\n/**\n * alertcondition() - Stub for PineScript alert configuration\n * In PineScript, this registers an alert condition. In oakscriptjs, it's a no-op\n * since alert configuration is handled by the host application.\n */\nexport function alertcondition(_condition: unknown, _title?: string, _message?: string): void {\n // No-op: Alert conditions are handled by the host application\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeA,0BAAc,6BAfd;AAgBA,0BAAc,gCAhBd;AAmBA,aAAwB;AACxB,WAAsB;AACtB,YAAuB;AACvB,UAAqB;AACrB,UAAqB;AACrB,YAAuB;AACvB,WAAsB;AACtB,gBAA2B;AAC3B,aAAwB;AACxB,WAAsB;AACtB,UAAqB;AACrB,YAAuB;AACvB,eAA0B;AAC1B,iBAA4B;AAC5B,eAA0B;AAC1B,YAAuB;AACvB,WAAsB;AACtB,cAAyB;AACzB,eAA0B;AAK1B,oBAAoD;AACpD,sBAAqC;AAGrC,sBASO;AAKP,qBAcO;AACP,sBAAkD;AAClD,kBAA6D;AAG7D,sBAA6F;AAE7F,mBAOO;AAGP,oBAAgC;AAIhC,SAAoB;AAyBpB,uBAAkG;AAClG,kBAAgG;AAChG,mBAA2D;AAG3D,mBAAsG;AAGtG,0BAAc,2BAhId;AAmIA,IAAAA,gBAAqC;AAGrC,uBAOO;AAEP,mBAUO;AAEP,kBAOO;AAGP,qBASO;AAEP,oBAWO;AACP,0BAA8B;AAoB9B,sBAKO;AAGP,sCAAyC;AAEzC,gCAAmC;AAG5B,MAAM,UAAU;AAKhB,MAAM,OAAO;AAAA,EAClB,MAAM;AAAA,EACN,SAAS;AAAA,EACT,aAAa;AAAA,EACb,UAAU;AAAA,IACR,QAAQ;AAAA,IACR,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,WAAW;AAAA,EACb;AAAA,EACA,YAAY;AAAA,IACV,MAAM,CAAC,MAAM,QAAQ,SAAS,OAAO,OAAO,SAAS,QAAQ,aAAa,QAAQ;AAAA,IAClF,SAAS,CAAC,QAAQ,OAAO,SAAS,YAAY,cAAc,YAAY,SAAS,MAAM;AAAA,IACvF,SAAS,CAAC,cAAc,QAAQ,SAAS,SAAS;AAAA,IAClD,WAAW,CAAC,aAAa,SAAS,cAAc,YAAY;AAAA,EAC9D;AACF;AAUO,SAAS,eAAe,YAAqB,QAAiB,UAAyB;AAE9F;",
4
+ "sourcesContent": ["/**\n * OakScriptJS - Simplified PineScript-like library for JavaScript\n *\n * This library provides Series-based lazy evaluation and technical analysis functions\n * for building trading indicators. The PineScript-style script API is in `oakscriptjs/script`.\n *\n * Key features:\n * - Series class for lazy evaluation and method chaining\n * - Core TA functions (array-based)\n * - TA-Series wrappers (Series-based)\n *\n * @packageDocumentation\n */\n\n// Export all types\nexport * from './types/index.js';\nexport * from './types/metadata.js';\n\n// Export core namespaces (array-based functions)\nimport * as taCore from './ta/index.js';\nimport * as math from './math/index.js';\nimport * as array from './array/index.js';\nimport * as map from './map/index.js';\nimport * as str from './str/index.js';\nimport * as color from './color/index.js';\nimport * as time from './time/index.js';\nimport * as timeframe from './timeframe/index.js';\nimport * as matrix from './matrix/index.js';\nimport * as line from './line/index.js';\nimport * as box from './box/index.js';\nimport * as label from './label/index.js';\nimport * as linefill from './linefill/index.js';\nimport * as chartPoint from './chartpoint/index.js';\nimport * as polyline from './polyline/index.js';\nimport * as table from './table/index.js';\nimport * as text from './text/index.js';\nimport * as compare from './compare/index.js';\nimport * as callsite from './callsite/index.js';\n\nexport { taCore, math, array, map, str, color, time, timeframe, matrix, line, box, label, linefill, chartPoint, polyline, table, text, compare, callsite };\n\n// Renderable drawings (IndicatorResult labels, lines, boxes, linefills, polylines, tables) and future bar times\nexport { drawingOutputs, type DrawingOutputs } from './drawing/output.js';\nexport { barInterval, barTime } from './drawing/bar-time.js';\n\n// Drawing registry limits (PineScript indicator(max_lines_count / max_labels_count / max_boxes_count / max_polylines_count))\nexport {\n resetDrawings,\n setDrawingLimits,\n setDrawingBar,\n holdDrawing,\n releaseDrawing,\n varDrawing,\n type DrawingLimits,\n type DrawingVariable,\n} from './drawing/registry.js';\n\n// The session of a chart context without a script run: time(tf, session, timezone), time_close(...), time_tradingday,\n// session.* flags, request.security periods with the session and holidays, and bars after the last bar on the trading\n// calendar\nexport {\n chartSessions,\n sessionPeriods,\n periodTime,\n periodClose,\n tradingDayTime,\n chartSessionFlags,\n resampleSession,\n barTimeAfter,\n barsUntil,\n type SessionContext,\n type ChartSessions,\n type SessionPeriods,\n type SessionResample,\n} from './session/context.js';\nexport { TradingCalendar, type SessionSpec } from './session/calendar.js';\nexport { SessionBars, sessionFlags, type SessionFlags } from './session/bars.js';\n\n// Same-symbol request.security on a higher timeframe (completion and lookahead rules) and ticker.heikinashi\nexport { resample, periodsOf, afterCompletion, mapToChart, heikinAshi, type Resampled } from './security/resample.js';\n// request.security of another symbol: which bar of the other symbol each chart bar shows (#179)\nexport {\n securityOther,\n securityOtherValues,\n securityLowerTf,\n type OtherSymbolChart,\n type OtherSymbolOptions,\n type SymbolCalendar,\n} from './security/other.js';\n\n// Export Series class (self-contained, no context)\nexport { Series, BarData } from './runtime/series.js';\nexport type { SeriesExtractor } from './runtime/series.js';\n\n// Export TA-Series namespace (Series-based wrappers)\nimport * as ta from './ta-series.js';\nexport { ta };\n\n// Export metadata types for indicator return values\nexport type {\n PlotOptions,\n HLineOptions,\n FillOptions,\n InputMetadata,\n PlotMetadata,\n IndicatorMetadata,\n TimeValue,\n PlotData,\n HLineData,\n FillData,\n FillGradient,\n IndicatorResult,\n IndicatorFactory,\n PlotStyle,\n LineStyle,\n PlotDisplay,\n InputType\n} from './types/metadata.js';\n\n// Re-export commonly used functions for convenience\nexport { sma, ema, rsi, macd, bb, stdev, crossover, crossunder, change, tr, atr, cum, vwap } from './ta-series.js';\nexport { abs, ceil, floor, round, max, min, avg, sum, sqrt, pow, exp, log, sin, cos, tan } from './math/index.js';\nexport { rgb, from_hex as color_from_hex, new_color } from './color/index.js';\n\n// Export chart data utilities\nexport { ohlcFromBars, getClose, getHigh, getLow, getOpen, getSource, getSourceSeries, at, div } from './utils/index.js';\nexport { setSourceResolver, externalSource, BUILTIN_SOURCES, type SourceResolver } from './utils/source-resolver.js';\n\n// Export libraries (ZigZag, etc.)\nexport * from './lib/index.js';\n\n// Export helper functions for generated indicators (PineScript compatibility)\nexport {isNA as na, nz, fixnan} from './utils/index.js';\n\n// Export indicator infrastructure\nexport {\n indicator,\n type IndicatorMetadataConfig,\n type InputDefinition,\n type IndicatorContext,\n type IndicatorInstance,\n type IndicatorConstructor,\n} from './indicator.js';\n\nexport {\n input,\n type InputValue,\n type IntInputOptions,\n type FloatInputOptions,\n type SourceInputOptions,\n type BoolInputOptions,\n type StringInputOptions,\n type TimeInputOptions,\n type SourceType,\n} from './input.js';\n\nexport {\n plot as plotHelper,\n createPlot,\n type Time,\n type TimeValuePair,\n type PlotOptions as PlotHelperOptions,\n type PlotResult,\n} from './plot.js';\n\n// Runtime exports - global context runtime (setContext, plot, hline) drawing through a ChartAdapter\nexport {\n setContext,\n clearContext,\n getContext,\n registerCalculate,\n recalculate,\n plot,\n hline,\n clearPlots,\n} from './runtime/runtime.js';\n\nexport {\n input_int,\n input_float,\n input_bool,\n input_string,\n input_text_area,\n input_source,\n input_timeframe,\n input_session,\n input_symbol,\n input_time,\n} from './runtime/inputs.js';\nexport { isInputActive } from './runtime/input-active.js';\n\nexport type {\n OakScriptContext,\n ChartAdapter,\n InputAdapter,\n SeriesHandle,\n SeriesOptions,\n InputConfig,\n InputCondition,\n InputOptions,\n OhlcvData,\n PlotConfig,\n HLineConfig,\n FillConfig,\n ArrowConfig,\n CandleConfig,\n} from './runtime/types.js';\n\n// Strategy types and constants (the script API forwards strategy.* calls to a host engine)\nexport {\n STRATEGY_CONSTANTS,\n STRATEGY_DEFAULTS,\n STRATEGY_NUMBER_VARIABLES,\n STRATEGY_TEXT_VARIABLES,\n} from './strategy/index.js';\nexport type * from './strategy/index.js';\n\nexport { LightweightChartsAdapter } from './runtime/adapters/LightweightChartsAdapter.js';\nexport type { LightweightSeriesDefinitions } from './runtime/adapters/LightweightChartsAdapter.js';\nexport { SimpleInputAdapter } from './runtime/adapters/SimpleInputAdapter.js';\n\n// Version\nexport const VERSION = '0.11.7';\n\n/**\n * Library information\n */\nexport const info = {\n name: 'OakScriptJS',\n version: VERSION,\n description: 'Simplified PineScript-like library - Series + TA functions',\n features: {\n series: 'Lazy evaluation with Series class',\n ta: 'Technical analysis functions (Series and array-based)',\n script: 'PineScript-style script API (oakscriptjs/script): indicator, strategy, inputs, plots, request.security',\n runtime: 'Global context runtime drawing through a ChartAdapter',\n indicator: 'Indicator function with automatic pane management'\n },\n namespaces: {\n core: ['ta', 'math', 'array', 'map', 'str', 'color', 'time', 'timeframe', 'matrix'],\n drawing: ['line', 'box', 'label', 'linefill', 'chartPoint', 'polyline', 'table', 'text'],\n runtime: ['setContext', 'plot', 'hline', 'input_*'],\n indicator: ['indicator', 'input', 'plotHelper', 'createPlot']\n }\n};\n\n// PineScript compatibility stubs - functions that have no runtime effect\n// These are no-ops so that PineScript-style code runs without modification\n\n/**\n * alertcondition() - Stub for PineScript alert configuration\n * In PineScript, this registers an alert condition. In oakscriptjs, it's a no-op\n * since alert configuration is handled by the host application.\n */\nexport function alertcondition(_condition: unknown, _title?: string, _message?: string): void {\n // No-op: Alert conditions are handled by the host application\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeA,0BAAc,6BAfd;AAgBA,0BAAc,gCAhBd;AAmBA,aAAwB;AACxB,WAAsB;AACtB,YAAuB;AACvB,UAAqB;AACrB,UAAqB;AACrB,YAAuB;AACvB,WAAsB;AACtB,gBAA2B;AAC3B,aAAwB;AACxB,WAAsB;AACtB,UAAqB;AACrB,YAAuB;AACvB,eAA0B;AAC1B,iBAA4B;AAC5B,eAA0B;AAC1B,YAAuB;AACvB,WAAsB;AACtB,cAAyB;AACzB,eAA0B;AAK1B,oBAAoD;AACpD,sBAAqC;AAGrC,sBASO;AAKP,qBAcO;AACP,sBAAkD;AAClD,kBAA6D;AAG7D,sBAA6F;AAE7F,mBAOO;AAGP,oBAAgC;AAIhC,SAAoB;AAyBpB,uBAAkG;AAClG,kBAAgG;AAChG,mBAA2D;AAG3D,mBAAsG;AACtG,6BAAwF;AAGxF,0BAAc,2BAjId;AAoIA,IAAAA,gBAAqC;AAGrC,uBAOO;AAEP,mBAUO;AAEP,kBAOO;AAGP,qBASO;AAEP,oBAWO;AACP,0BAA8B;AAoB9B,sBAKO;AAGP,sCAAyC;AAEzC,gCAAmC;AAG5B,MAAM,UAAU;AAKhB,MAAM,OAAO;AAAA,EAClB,MAAM;AAAA,EACN,SAAS;AAAA,EACT,aAAa;AAAA,EACb,UAAU;AAAA,IACR,QAAQ;AAAA,IACR,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,WAAW;AAAA,EACb;AAAA,EACA,YAAY;AAAA,IACV,MAAM,CAAC,MAAM,QAAQ,SAAS,OAAO,OAAO,SAAS,QAAQ,aAAa,QAAQ;AAAA,IAClF,SAAS,CAAC,QAAQ,OAAO,SAAS,YAAY,cAAc,YAAY,SAAS,MAAM;AAAA,IACvF,SAAS,CAAC,cAAc,QAAQ,SAAS,SAAS;AAAA,IAClD,WAAW,CAAC,aAAa,SAAS,cAAc,YAAY;AAAA,EAC9D;AACF;AAUO,SAAS,eAAe,YAAqB,QAAiB,UAAyB;AAE9F;",
6
6
  "names": ["import_utils"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"inputs.d.ts","sourceRoot":"","sources":["../../../src/runtime/inputs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,YAAY,CAAC;AAS5D;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAoBD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,CAqCxF;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,CAkC1F;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CA6BnE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CA8BvF;AAsBD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAM1F;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAMxF;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAMvF;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAMjE;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CA+BrE"}
1
+ {"version":3,"file":"inputs.d.ts","sourceRoot":"","sources":["../../../src/runtime/inputs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,YAAY,CAAC;AAU5D;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAoBD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,CAqCxF;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,CAkC1F;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CA6BnE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CA8BvF;AAsBD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAM1F;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAMxF;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAMvF;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAMjE;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CA+BrE"}
@@ -34,6 +34,7 @@ __export(inputs_exports, {
34
34
  });
35
35
  module.exports = __toCommonJS(inputs_exports);
36
36
  var import_runtime = require("./runtime.js");
37
+ var import_source_resolver = require("../utils/source-resolver.js");
37
38
  const registeredInputs = /* @__PURE__ */ new Map();
38
39
  let autoRecalculateEnabled = false;
39
40
  function enableAutoRecalculate() {
@@ -271,8 +272,11 @@ function getSourceData(ohlcv, sourceName) {
271
272
  const c = ohlcv.close[i];
272
273
  return h !== void 0 && l !== void 0 && c !== void 0 ? (o + h + l + c) / 4 : NaN;
273
274
  });
274
- default:
275
- return ohlcv.close;
275
+ default: {
276
+ const ext = (0, import_source_resolver.externalSource)(sourceName);
277
+ if (!ext) return ohlcv.close;
278
+ return ohlcv.close.map((_, i) => ext[i] ?? NaN);
279
+ }
276
280
  }
277
281
  }
278
282
  //# sourceMappingURL=inputs.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/runtime/inputs.ts"],
4
- "sourcesContent": ["/**\n * @fileoverview Idempotent input registration functions\n * These functions mirror PineScript's input functions with idempotent semantics:\n * - First call registers the input with default value\n * - Subsequent calls return the current stored value (possibly user-updated)\n * @module runtime/inputs\n */\n\nimport type { InputConfig, InputOptions } from './types.js';\nimport { getContext, recalculate } from './runtime.js';\n\n// Track registered inputs for idempotent registration\nconst registeredInputs = new Map<string, boolean>();\n\n// Track if we should auto-recalculate on input change\nlet autoRecalculateEnabled = false;\n\n/**\n * Enable automatic recalculation when inputs change\n */\nexport function enableAutoRecalculate(): void {\n autoRecalculateEnabled = true;\n}\n\n/**\n * Disable automatic recalculation\n */\nexport function disableAutoRecalculate(): void {\n autoRecalculateEnabled = false;\n}\n\n/**\n * Reset registered inputs (for testing or context changes)\n * @internal\n */\nexport function resetInputs(): void {\n registeredInputs.clear();\n inputCounter = 0;\n}\n\n// Counter for generating unique input IDs when no title is provided\nlet inputCounter = 0;\n\n/**\n * Generate a unique input ID from title or default\n * @param title - Optional title\n * @param defval - Default value for fallback\n * @param type - Input type\n * @returns Unique input ID\n */\nfunction generateInputId(title: string | undefined, defval: unknown, type: string): string {\n if (title) {\n return title.replace(/\\s+/g, '_');\n }\n // Use counter to ensure uniqueness when no title is provided\n return `${type}_${inputCounter++}_${String(defval)}`;\n}\n\n/**\n * Register an integer input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @param options - Additional options: min, max, step (optional)\n * @returns Current integer value\n */\nexport function input_int(defval: number, title?: string, options?: InputOptions): number {\n const context = getContext();\n if (!context) {\n // No context - return default value\n return Math.floor(defval);\n }\n\n const id = generateInputId(title, defval, 'int');\n const config: InputConfig = {\n id,\n type: 'int',\n defval: Math.floor(defval),\n title,\n min: options?.min,\n max: options?.max,\n step: options?.step ?? 1,\n };\n\n // Check if already registered (idempotent)\n if (!registeredInputs.has(id)) {\n // First call - register the input\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n // Set up auto-recalculate on change if not already done\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n // Return current value (may have been updated by user)\n const value = context.inputs.getValue(id);\n return typeof value === 'number' ? Math.floor(value) : Math.floor(defval);\n}\n\n/**\n * Register a float input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @param options - Additional options: min, max, step (optional)\n * @returns Current float value\n */\nexport function input_float(defval: number, title?: string, options?: InputOptions): number {\n const context = getContext();\n if (!context) {\n // No context - return default value\n return defval;\n }\n\n const id = generateInputId(title, defval, 'float');\n const config: InputConfig = {\n id,\n type: 'float',\n defval,\n title,\n min: options?.min,\n max: options?.max,\n step: options?.step ?? 0.1,\n };\n\n // Check if already registered (idempotent)\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const value = context.inputs.getValue(id);\n return typeof value === 'number' ? value : defval;\n}\n\n/**\n * Register a boolean input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @returns Current boolean value\n */\nexport function input_bool(defval: boolean, title?: string): boolean {\n const context = getContext();\n if (!context) {\n return defval;\n }\n\n const id = generateInputId(title, defval, 'bool');\n const config: InputConfig = {\n id,\n type: 'bool',\n defval,\n title,\n };\n\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const value = context.inputs.getValue(id);\n return typeof value === 'boolean' ? value : defval;\n}\n\n/**\n * Register a string input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @param options - Array of string options for dropdown (optional)\n * @returns Current string value\n */\nexport function input_string(defval: string, title?: string, options?: string[]): string {\n const context = getContext();\n if (!context) {\n return defval;\n }\n\n const id = generateInputId(title, defval, 'string');\n const config: InputConfig = {\n id,\n type: 'string',\n defval,\n title,\n options,\n };\n\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const value = context.inputs.getValue(id);\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Registers `config` once (idempotent) and returns the current stored value.\n */\nfunction registerOnce(config: InputConfig): unknown {\n const context = getContext()!;\n if (!registeredInputs.has(config.id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(config.id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === config.id) {\n recalculate();\n }\n });\n }\n }\n return context.inputs.getValue(config.id);\n}\n\n/**\n * Register a multi-line text input (PineScript `input.text_area`, #184)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default text; lines are separated by \"\n\"\n * @param title - Display title (optional)\n * @returns Current text\n */\nexport function input_text_area(defval: string, title?: string): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'text_area'), type: 'text_area', defval, title });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a timeframe input (PineScript `input.timeframe`)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default timeframe string (\"60\", \"1D\", \"W\"); \"\" means the chart timeframe\n * @param title - Display title (optional)\n * @param options - Array of timeframe options for dropdown (optional)\n * @returns Current timeframe string\n */\nexport function input_timeframe(defval: string, title?: string, options?: string[]): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'timeframe'), type: 'timeframe', defval, title, options });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a session input (PineScript `input.session`)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default session string (\"0930-1600\", \"0930-1600:23456\")\n * @param title - Display title (optional)\n * @param options - Array of session options for dropdown (optional)\n * @returns Current session string\n */\nexport function input_session(defval: string, title?: string, options?: string[]): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'session'), type: 'session', defval, title, options });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a symbol input (PineScript `input.symbol`): a ticker id such as \"NASDAQ:MSFT\" (#180)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default ticker id\n * @param title - Display title (optional)\n * @param options - Array of symbols for a dropdown (optional)\n * @returns Current ticker id\n */\nexport function input_symbol(defval: string, title?: string, options?: string[]): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'symbol'), type: 'symbol', defval, title, options });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a date/time input (PineScript `input.time`)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default UNIX time in milliseconds, e.g. `time.timestamp(\"2024-01-01\")`\n * @param title - Display title (optional)\n * @returns Current UNIX time in milliseconds\n */\nexport function input_time(defval: number, title?: string): number {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'time'), type: 'time', defval, title });\n return typeof value === 'number' ? value : defval;\n}\n\n/**\n * Register a source input (returns a data series from OHLCV)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default source name ('close', 'open', 'high', 'low', 'volume', 'hl2', 'hlc3', 'ohlc4')\n * @param title - Display title (optional)\n * @returns Array of values for the selected source\n */\nexport function input_source(defval: string, title?: string): number[] {\n const context = getContext();\n if (!context) {\n return [];\n }\n\n const id = generateInputId(title, defval, 'source');\n const config: InputConfig = {\n id,\n type: 'source',\n defval,\n title,\n options: ['open', 'high', 'low', 'close', 'volume', 'hl2', 'hlc3', 'ohlc4'],\n };\n\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const sourceName = (context.inputs.getValue(id) as string) ?? defval;\n \n return getSourceData(context.ohlcv, sourceName);\n}\n\n/**\n * Get data array for a source name\n * @param ohlcv - OHLCV data\n * @param sourceName - Source name\n * @returns Array of values\n */\nfunction getSourceData(\n ohlcv: { open: number[]; high: number[]; low: number[]; close: number[]; volume: number[] },\n sourceName: string\n): number[] {\n switch (sourceName) {\n case 'open':\n return ohlcv.open;\n case 'high':\n return ohlcv.high;\n case 'low':\n return ohlcv.low;\n case 'close':\n return ohlcv.close;\n case 'volume':\n return ohlcv.volume;\n case 'hl2':\n return ohlcv.high.map((h, i) => {\n const l = ohlcv.low[i];\n return l !== undefined ? (h + l) / 2 : NaN;\n });\n case 'hlc3':\n return ohlcv.high.map((h, i) => {\n const l = ohlcv.low[i];\n const c = ohlcv.close[i];\n return l !== undefined && c !== undefined ? (h + l + c) / 3 : NaN;\n });\n case 'ohlc4':\n return ohlcv.open.map((o, i) => {\n const h = ohlcv.high[i];\n const l = ohlcv.low[i];\n const c = ohlcv.close[i];\n return h !== undefined && l !== undefined && c !== undefined ? (o + h + l + c) / 4 : NaN;\n });\n default:\n return ohlcv.close;\n }\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * @fileoverview Idempotent input registration functions\n * These functions mirror PineScript's input functions with idempotent semantics:\n * - First call registers the input with default value\n * - Subsequent calls return the current stored value (possibly user-updated)\n * @module runtime/inputs\n */\n\nimport type { InputConfig, InputOptions } from './types.js';\nimport { getContext, recalculate } from './runtime.js';\nimport { externalSource } from '../utils/source-resolver.js';\n\n// Track registered inputs for idempotent registration\nconst registeredInputs = new Map<string, boolean>();\n\n// Track if we should auto-recalculate on input change\nlet autoRecalculateEnabled = false;\n\n/**\n * Enable automatic recalculation when inputs change\n */\nexport function enableAutoRecalculate(): void {\n autoRecalculateEnabled = true;\n}\n\n/**\n * Disable automatic recalculation\n */\nexport function disableAutoRecalculate(): void {\n autoRecalculateEnabled = false;\n}\n\n/**\n * Reset registered inputs (for testing or context changes)\n * @internal\n */\nexport function resetInputs(): void {\n registeredInputs.clear();\n inputCounter = 0;\n}\n\n// Counter for generating unique input IDs when no title is provided\nlet inputCounter = 0;\n\n/**\n * Generate a unique input ID from title or default\n * @param title - Optional title\n * @param defval - Default value for fallback\n * @param type - Input type\n * @returns Unique input ID\n */\nfunction generateInputId(title: string | undefined, defval: unknown, type: string): string {\n if (title) {\n return title.replace(/\\s+/g, '_');\n }\n // Use counter to ensure uniqueness when no title is provided\n return `${type}_${inputCounter++}_${String(defval)}`;\n}\n\n/**\n * Register an integer input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @param options - Additional options: min, max, step (optional)\n * @returns Current integer value\n */\nexport function input_int(defval: number, title?: string, options?: InputOptions): number {\n const context = getContext();\n if (!context) {\n // No context - return default value\n return Math.floor(defval);\n }\n\n const id = generateInputId(title, defval, 'int');\n const config: InputConfig = {\n id,\n type: 'int',\n defval: Math.floor(defval),\n title,\n min: options?.min,\n max: options?.max,\n step: options?.step ?? 1,\n };\n\n // Check if already registered (idempotent)\n if (!registeredInputs.has(id)) {\n // First call - register the input\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n // Set up auto-recalculate on change if not already done\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n // Return current value (may have been updated by user)\n const value = context.inputs.getValue(id);\n return typeof value === 'number' ? Math.floor(value) : Math.floor(defval);\n}\n\n/**\n * Register a float input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @param options - Additional options: min, max, step (optional)\n * @returns Current float value\n */\nexport function input_float(defval: number, title?: string, options?: InputOptions): number {\n const context = getContext();\n if (!context) {\n // No context - return default value\n return defval;\n }\n\n const id = generateInputId(title, defval, 'float');\n const config: InputConfig = {\n id,\n type: 'float',\n defval,\n title,\n min: options?.min,\n max: options?.max,\n step: options?.step ?? 0.1,\n };\n\n // Check if already registered (idempotent)\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const value = context.inputs.getValue(id);\n return typeof value === 'number' ? value : defval;\n}\n\n/**\n * Register a boolean input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @returns Current boolean value\n */\nexport function input_bool(defval: boolean, title?: string): boolean {\n const context = getContext();\n if (!context) {\n return defval;\n }\n\n const id = generateInputId(title, defval, 'bool');\n const config: InputConfig = {\n id,\n type: 'bool',\n defval,\n title,\n };\n\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const value = context.inputs.getValue(id);\n return typeof value === 'boolean' ? value : defval;\n}\n\n/**\n * Register a string input\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default value\n * @param title - Display title (optional)\n * @param options - Array of string options for dropdown (optional)\n * @returns Current string value\n */\nexport function input_string(defval: string, title?: string, options?: string[]): string {\n const context = getContext();\n if (!context) {\n return defval;\n }\n\n const id = generateInputId(title, defval, 'string');\n const config: InputConfig = {\n id,\n type: 'string',\n defval,\n title,\n options,\n };\n\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const value = context.inputs.getValue(id);\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Registers `config` once (idempotent) and returns the current stored value.\n */\nfunction registerOnce(config: InputConfig): unknown {\n const context = getContext()!;\n if (!registeredInputs.has(config.id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(config.id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === config.id) {\n recalculate();\n }\n });\n }\n }\n return context.inputs.getValue(config.id);\n}\n\n/**\n * Register a multi-line text input (PineScript `input.text_area`, #184)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default text; lines are separated by \"\n\"\n * @param title - Display title (optional)\n * @returns Current text\n */\nexport function input_text_area(defval: string, title?: string): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'text_area'), type: 'text_area', defval, title });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a timeframe input (PineScript `input.timeframe`)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default timeframe string (\"60\", \"1D\", \"W\"); \"\" means the chart timeframe\n * @param title - Display title (optional)\n * @param options - Array of timeframe options for dropdown (optional)\n * @returns Current timeframe string\n */\nexport function input_timeframe(defval: string, title?: string, options?: string[]): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'timeframe'), type: 'timeframe', defval, title, options });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a session input (PineScript `input.session`)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default session string (\"0930-1600\", \"0930-1600:23456\")\n * @param title - Display title (optional)\n * @param options - Array of session options for dropdown (optional)\n * @returns Current session string\n */\nexport function input_session(defval: string, title?: string, options?: string[]): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'session'), type: 'session', defval, title, options });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a symbol input (PineScript `input.symbol`): a ticker id such as \"NASDAQ:MSFT\" (#180)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default ticker id\n * @param title - Display title (optional)\n * @param options - Array of symbols for a dropdown (optional)\n * @returns Current ticker id\n */\nexport function input_symbol(defval: string, title?: string, options?: string[]): string {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'symbol'), type: 'symbol', defval, title, options });\n return typeof value === 'string' ? value : defval;\n}\n\n/**\n * Register a date/time input (PineScript `input.time`)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default UNIX time in milliseconds, e.g. `time.timestamp(\"2024-01-01\")`\n * @param title - Display title (optional)\n * @returns Current UNIX time in milliseconds\n */\nexport function input_time(defval: number, title?: string): number {\n if (!getContext()) {\n return defval;\n }\n const value = registerOnce({ id: generateInputId(title, defval, 'time'), type: 'time', defval, title });\n return typeof value === 'number' ? value : defval;\n}\n\n/**\n * Register a source input (returns a data series from OHLCV)\n * First call registers with defval, subsequent calls return current value\n * @param defval - Default source name ('close', 'open', 'high', 'low', 'volume', 'hl2', 'hlc3', 'ohlc4')\n * @param title - Display title (optional)\n * @returns Array of values for the selected source\n */\nexport function input_source(defval: string, title?: string): number[] {\n const context = getContext();\n if (!context) {\n return [];\n }\n\n const id = generateInputId(title, defval, 'source');\n const config: InputConfig = {\n id,\n type: 'source',\n defval,\n title,\n options: ['open', 'high', 'low', 'close', 'volume', 'hl2', 'hlc3', 'ohlc4'],\n };\n\n if (!registeredInputs.has(id)) {\n context.inputs.registerInput(config);\n registeredInputs.set(id, true);\n\n if (autoRecalculateEnabled) {\n context.inputs.onInputChange((changedId) => {\n if (changedId === id) {\n recalculate();\n }\n });\n }\n }\n\n const sourceName = (context.inputs.getValue(id) as string) ?? defval;\n \n return getSourceData(context.ohlcv, sourceName);\n}\n\n/**\n * Get data array for a source name\n * @param ohlcv - OHLCV data\n * @param sourceName - Source name\n * @returns Array of values\n */\nfunction getSourceData(\n ohlcv: { open: number[]; high: number[]; low: number[]; close: number[]; volume: number[] },\n sourceName: string\n): number[] {\n switch (sourceName) {\n case 'open':\n return ohlcv.open;\n case 'high':\n return ohlcv.high;\n case 'low':\n return ohlcv.low;\n case 'close':\n return ohlcv.close;\n case 'volume':\n return ohlcv.volume;\n case 'hl2':\n return ohlcv.high.map((h, i) => {\n const l = ohlcv.low[i];\n return l !== undefined ? (h + l) / 2 : NaN;\n });\n case 'hlc3':\n return ohlcv.high.map((h, i) => {\n const l = ohlcv.low[i];\n const c = ohlcv.close[i];\n return l !== undefined && c !== undefined ? (h + l + c) / 3 : NaN;\n });\n case 'ohlc4':\n return ohlcv.open.map((o, i) => {\n const h = ohlcv.high[i];\n const l = ohlcv.low[i];\n const c = ohlcv.close[i];\n return h !== undefined && l !== undefined && c !== undefined ? (o + h + l + c) / 4 : NaN;\n });\n default: {\n // Another source (study on study), else close.\n const ext = externalSource(sourceName);\n if (!ext) return ohlcv.close;\n return ohlcv.close.map((_, i) => (ext as ArrayLike<number>)[i] ?? NaN);\n }\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -72,6 +72,11 @@ export interface ScriptRunResult {
72
72
  barColorConfig: BarColorConfig[];
73
73
  /** plotcandle() / plotbar() declarations */
74
74
  candleConfig: CandleConfig[];
75
+ /**
76
+ * The plot(), plotshape(), plotchar(), plotarrow(), plotcandle() and plotbar() declarations in the order the
77
+ * script made them (the id of each in its own config). PineScript numbers a script's outputs in this order.
78
+ */
79
+ outputs: ScriptOutput[];
75
80
  defaultInputs: Record<string, unknown>;
76
81
  alertConfig: AlertConditionConfig[];
77
82
  /** Strategy properties (declared values, else the PineScript defaults) when the script declares strategy(). */
@@ -79,11 +84,13 @@ export interface ScriptRunResult {
79
84
  /**
80
85
  * The renderable output: plots keyed by plotConfig ids, plot-pair fills, markers, arrows, background and bar
81
86
  * colours, candles and bars, and the drawings (labels, lines, boxes, linefills, polylines, tables) alive after the
82
- * last bar.
87
+ * last bar. `outputValues`: per plotshape() / plotchar() / plotarrow() id, the value of its series on each bar where
88
+ * it is not na (a condition gives 1 or 0), at the bar it was computed on (the offset not applied).
83
89
  */
84
90
  result: IndicatorResult & {
85
91
  alerts?: AlertState[];
86
92
  alertCalls?: AlertCall[];
93
+ outputValues?: Record<string, TimeValue[]>;
87
94
  };
88
95
  /** The script called alert() during the run (PineScript `hasAlertFunction` is known at compile time: a host that
89
96
  * needs it before any bar runs reads the source). */
@@ -111,6 +118,13 @@ export interface AlertCall {
111
118
  message: string;
112
119
  freq: AlertFrequency;
113
120
  }
121
+ /** One output declaration of a script: plot(), plotshape() ('shape'), plotchar() ('char'), plotarrow() ('arrow'),
122
+ * plotcandle() ('candle') or plotbar() ('bar'), with its id in plotConfig / shapeConfig / arrowConfig / candleConfig. */
123
+ export interface ScriptOutput {
124
+ kind: 'plot' | 'shape' | 'char' | 'arrow' | 'candle' | 'bar';
125
+ id: string;
126
+ title?: string;
127
+ }
114
128
  /** Handle returned by plot()/hline() so fill() can reference them. */
115
129
  export interface PlotHandle {
116
130
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/script/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/script/index.ts"],"names":[],"mappings":"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"}
@@ -108,6 +108,7 @@ var taSeries = __toESM(require("../ta-series.js"), 1);
108
108
  var colorCore = __toESM(require("../color/index.js"), 1);
109
109
  var import_parse = require("../color/parse.js");
110
110
  var import_utils = require("../utils/index.js");
111
+ var import_source_resolver = require("../utils/source-resolver.js");
111
112
  var lineCore = __toESM(require("../line/index.js"), 1);
112
113
  var labelCore = __toESM(require("../label/index.js"), 1);
113
114
  var boxCore = __toESM(require("../box/index.js"), 1);
@@ -160,6 +161,7 @@ function freshCollector(inputValues) {
160
161
  fillConfig: [],
161
162
  shapeConfig: [],
162
163
  markers: [],
164
+ outputValues: {},
163
165
  arrowConfig: [],
164
166
  arrows: [],
165
167
  barColorConfig: [],
@@ -168,6 +170,7 @@ function freshCollector(inputValues) {
168
170
  candleConfig: [],
169
171
  plotCandles: {},
170
172
  plotBars: {},
173
+ outputs: [],
171
174
  alertConfig: [],
172
175
  alerts: [],
173
176
  alertCalls: [],
@@ -211,6 +214,7 @@ function executeScript(body, barsInput, inputs = {}, chart2 = {}, options = {})
211
214
  arrowConfig: c.arrowConfig,
212
215
  barColorConfig: c.barColorConfig,
213
216
  candleConfig: c.candleConfig,
217
+ outputs: c.outputs,
214
218
  defaultInputs: c.defaultInputs,
215
219
  alertConfig: c.alertConfig,
216
220
  strategyConfig: c.strategy?.properties,
@@ -219,6 +223,7 @@ function executeScript(body, barsInput, inputs = {}, chart2 = {}, options = {})
219
223
  plots: c.plots,
220
224
  fills: c.fills.length ? c.fills : void 0,
221
225
  markers: c.markers.length ? c.markers : void 0,
226
+ outputValues: Object.keys(c.outputValues).length ? c.outputValues : void 0,
222
227
  arrows: c.arrows.length ? c.arrows : void 0,
223
228
  bgColors: c.bgColors.length ? c.bgColors : void 0,
224
229
  barColors: c.barColors.length ? c.barColors : void 0,
@@ -346,7 +351,12 @@ const hlcc4 = new import_series.Series(ctxBars, (b) => (b.high + b.low + b.close
346
351
  for (const s of [hl2, hlc3, ohlc4, hlcc4]) s.fullHistory = true;
347
352
  const SOURCES = { open, high, low, close, volume, hl2, hlc3, ohlc4, hlcc4 };
348
353
  function sourceSeries(name) {
349
- return SOURCES[name] ?? close;
354
+ const builtin = SOURCES[name];
355
+ if (builtin) return builtin;
356
+ const ext = (0, import_source_resolver.externalSource)(name);
357
+ if (!ext) return close;
358
+ const values = Array.from(ext);
359
+ return new import_series.Series(ctxBars, (_bar, i) => values[i] ?? NaN);
350
360
  }
351
361
  const bars = () => ctxBars.bars;
352
362
  function barsSeries(compute) {
@@ -431,6 +441,7 @@ function plotImpl(series, title, options = {}) {
431
441
  histbase: options.histbase,
432
442
  forceOverlay: options.force_overlay
433
443
  });
444
+ c.outputs.push({ kind: "plot", id, title: title ?? id });
434
445
  const values = series.toArray();
435
446
  const b = bars();
436
447
  const data = [];
@@ -559,6 +570,15 @@ function markerPosition(location, shape) {
559
570
  }
560
571
  }
561
572
  const MARKER_COLOR = "#2962FF";
573
+ function outputSeries(values, b) {
574
+ const series = [];
575
+ for (let i = 0; i < b.length; i++) {
576
+ const v = values[i];
577
+ if (typeof v === "number" && Number.isFinite(v)) series.push({ time: b[i].time, value: v });
578
+ else if (typeof v === "boolean") series.push({ time: b[i].time, value: v ? 1 : 0 });
579
+ }
580
+ return series;
581
+ }
562
582
  function emitMarkers(kind, condition, title, options) {
563
583
  const c = collector();
564
584
  const id = `${kind}${c.shapeConfig.filter((s) => s.kind === kind).length}`;
@@ -579,6 +599,7 @@ function emitMarkers(kind, condition, title, options) {
579
599
  offset: options.offset,
580
600
  forceOverlay: options.force_overlay
581
601
  });
602
+ c.outputs.push({ kind, id, title });
582
603
  const shapeStyle = kind === "shape" ? style : void 0;
583
604
  const template = {
584
605
  position: markerPosition(location, shapeStyle),
@@ -595,6 +616,7 @@ function emitMarkers(kind, condition, title, options) {
595
616
  const values = condition.toArray();
596
617
  const b = bars();
597
618
  const off = options.offset ?? 0;
619
+ c.outputValues[id] = outputSeries(values, b);
598
620
  for (let i = 0; i < b.length; i++) {
599
621
  const v = values[i];
600
622
  if (v === void 0 || Number.isNaN(v) || v === 0) continue;
@@ -627,9 +649,11 @@ function plotarrow(series, title, options = {}) {
627
649
  display: options.display,
628
650
  forceOverlay: options.force_overlay
629
651
  });
652
+ c.outputs.push({ kind: "arrow", id, title });
630
653
  const values = series.toArray();
631
654
  const b = bars();
632
655
  const off = options.offset ?? 0;
656
+ c.outputValues[id] = outputSeries(values, b);
633
657
  for (let i = 0; i < b.length; i++) {
634
658
  const v = values[i];
635
659
  if (v === void 0 || Number.isNaN(v) || v === 0) continue;
@@ -692,6 +716,7 @@ function plotcandle(open2, high2, low2, close2, title, options = {}) {
692
716
  display: options.display,
693
717
  forceOverlay: options.force_overlay
694
718
  });
719
+ c.outputs.push({ kind: "candle", id, title });
695
720
  const b = bars();
696
721
  c.plotCandles[id] = ohlcRows(open2, high2, low2, close2).map(({ i, ...ohlc }) => {
697
722
  const candle = { time: b[i].time, ...ohlc };
@@ -716,6 +741,7 @@ function plotbar(open2, high2, low2, close2, title, options = {}) {
716
741
  display: options.display,
717
742
  forceOverlay: options.force_overlay
718
743
  });
744
+ c.outputs.push({ kind: "bar", id, title });
719
745
  const b = bars();
720
746
  c.plotBars[id] = ohlcRows(open2, high2, low2, close2).map(({ i, ...ohlc }) => {
721
747
  const bar = { time: b[i].time, ...ohlc };