oakscriptjs 0.10.0 → 0.10.1
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/dist/cjs/index.d.ts +3 -2
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/runtime/index.d.ts +2 -1
- package/dist/cjs/runtime/index.d.ts.map +1 -1
- package/dist/cjs/runtime/index.js +2 -0
- package/dist/cjs/runtime/index.js.map +2 -2
- package/dist/cjs/runtime/input-active.d.ts +27 -0
- package/dist/cjs/runtime/input-active.d.ts.map +1 -0
- package/dist/cjs/runtime/input-active.js +44 -0
- package/dist/cjs/runtime/input-active.js.map +7 -0
- package/dist/cjs/runtime/types.d.ts +29 -2
- package/dist/cjs/runtime/types.d.ts.map +1 -1
- package/dist/cjs/runtime/types.js.map +1 -1
- package/dist/cjs/script/index.d.ts +24 -5
- package/dist/cjs/script/index.d.ts.map +1 -1
- package/dist/cjs/script/index.js +22 -2
- package/dist/cjs/script/index.js.map +2 -2
- package/dist/cjs/str/index.d.ts +9 -3
- package/dist/cjs/str/index.d.ts.map +1 -1
- package/dist/cjs/str/index.js +11 -6
- package/dist/cjs/str/index.js.map +2 -2
- package/dist/cjs/str/numberformat.d.ts +6 -0
- package/dist/cjs/str/numberformat.d.ts.map +1 -1
- package/dist/cjs/str/numberformat.js +9 -1
- package/dist/cjs/str/numberformat.js.map +2 -2
- package/dist/esm/index.d.ts +3 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/runtime/index.d.ts +2 -1
- package/dist/esm/runtime/index.d.ts.map +1 -1
- package/dist/esm/runtime/index.js +1 -0
- package/dist/esm/runtime/index.js.map +1 -1
- package/dist/esm/runtime/input-active.d.ts +27 -0
- package/dist/esm/runtime/input-active.d.ts.map +1 -0
- package/dist/esm/runtime/input-active.js +54 -0
- package/dist/esm/runtime/input-active.js.map +1 -0
- package/dist/esm/runtime/types.d.ts +29 -2
- package/dist/esm/runtime/types.d.ts.map +1 -1
- package/dist/esm/script/index.d.ts +24 -5
- package/dist/esm/script/index.d.ts.map +1 -1
- package/dist/esm/script/index.js +27 -3
- package/dist/esm/script/index.js.map +1 -1
- package/dist/esm/str/index.d.ts +9 -3
- package/dist/esm/str/index.d.ts.map +1 -1
- package/dist/esm/str/index.js +25 -10
- package/dist/esm/str/index.js.map +1 -1
- package/dist/esm/str/numberformat.d.ts +6 -0
- package/dist/esm/str/numberformat.d.ts.map +1 -1
- package/dist/esm/str/numberformat.js +12 -0
- package/dist/esm/str/numberformat.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +3 -1
- package/src/runtime/index.ts +3 -0
- package/src/runtime/input-active.ts +50 -0
- package/src/runtime/types.ts +25 -2
- package/src/script/index.ts +47 -6
- package/src/str/index.ts +23 -10
- package/src/str/numberformat.ts +13 -0
package/dist/cjs/script/index.js
CHANGED
|
@@ -56,6 +56,7 @@ __export(script_exports, {
|
|
|
56
56
|
inSession: () => inSession,
|
|
57
57
|
indicator: () => indicator,
|
|
58
58
|
input: () => input,
|
|
59
|
+
isInputActive: () => import_input_active.isInputActive,
|
|
59
60
|
label: () => label,
|
|
60
61
|
line: () => line,
|
|
61
62
|
linefill: () => linefill,
|
|
@@ -116,6 +117,7 @@ var timeframeCore = __toESM(require("../timeframe/index.js"), 1);
|
|
|
116
117
|
var timeCore = __toESM(require("../time/index.js"), 1);
|
|
117
118
|
var strCore = __toESM(require("../str/index.js"), 1);
|
|
118
119
|
var import_messageformat = require("../str/messageformat.js");
|
|
120
|
+
var import_numberformat = require("../str/numberformat.js");
|
|
119
121
|
var import_calendar = require("../session/calendar.js");
|
|
120
122
|
var import_bars = require("../session/bars.js");
|
|
121
123
|
var import_resample = require("../security/resample.js");
|
|
@@ -124,6 +126,7 @@ var import_strategy = require("../strategy/index.js");
|
|
|
124
126
|
var import_session = require("../time/session.js");
|
|
125
127
|
var import_strategy2 = require("../strategy/index.js");
|
|
126
128
|
var compare = __toESM(require("../compare/index.js"), 1);
|
|
129
|
+
var import_input_active = require("../runtime/input-active.js");
|
|
127
130
|
const ctxBars = new import_series.BarData([]);
|
|
128
131
|
let ctx = null;
|
|
129
132
|
function collector() {
|
|
@@ -244,6 +247,7 @@ function common(opts) {
|
|
|
244
247
|
if (opts.tooltip !== void 0) out.tooltip = opts.tooltip;
|
|
245
248
|
if (opts.confirm !== void 0) out.confirm = opts.confirm;
|
|
246
249
|
if (opts.display !== void 0) out.display = opts.display;
|
|
250
|
+
if (opts.active !== void 0) out.active = opts.active;
|
|
247
251
|
return out;
|
|
248
252
|
}
|
|
249
253
|
function registerInput(config, fallbackId) {
|
|
@@ -977,14 +981,30 @@ function symbolProperty(key) {
|
|
|
977
981
|
collector();
|
|
978
982
|
const value = chartCtx[key];
|
|
979
983
|
if (value === void 0) {
|
|
984
|
+
if (key === "mintick" && chartCtx.minmove !== void 0 && chartCtx.pricescale !== void 0) {
|
|
985
|
+
return chartCtx.minmove / chartCtx.pricescale;
|
|
986
|
+
}
|
|
980
987
|
throw new Error(`syminfo.${key} is not known: pass it as executeScript(body, bars, inputs, { ${key} }).`);
|
|
981
988
|
}
|
|
982
989
|
return value;
|
|
983
990
|
}
|
|
991
|
+
function symbolScale() {
|
|
992
|
+
collector();
|
|
993
|
+
const { minmove, pricescale } = chartCtx;
|
|
994
|
+
if (minmove !== void 0 && pricescale !== void 0) return [minmove, pricescale];
|
|
995
|
+
const [move, scale] = (0, import_numberformat.tickScale)(symbolProperty("mintick"), pricescale);
|
|
996
|
+
return [minmove ?? move, scale];
|
|
997
|
+
}
|
|
984
998
|
const syminfo = {
|
|
985
999
|
get mintick() {
|
|
986
1000
|
return symbolProperty("mintick");
|
|
987
1001
|
},
|
|
1002
|
+
get minmove() {
|
|
1003
|
+
return symbolScale()[0];
|
|
1004
|
+
},
|
|
1005
|
+
get pricescale() {
|
|
1006
|
+
return symbolScale()[1];
|
|
1007
|
+
},
|
|
988
1008
|
get pointvalue() {
|
|
989
1009
|
return symbolProperty("pointvalue");
|
|
990
1010
|
},
|
|
@@ -1034,8 +1054,8 @@ function inSession(time2, session2, timezone) {
|
|
|
1034
1054
|
}
|
|
1035
1055
|
const str = {
|
|
1036
1056
|
...strCore,
|
|
1037
|
-
// format.mintick
|
|
1038
|
-
tostring: ((value, format, mintick) => strCore.tostring(value, format,
|
|
1057
|
+
// format.mintick uses the chart symbol's tick and price scale (syminfo.mintick, syminfo.pricescale)
|
|
1058
|
+
tostring: ((value, format, mintick, pricescale) => format === "mintick" && mintick === void 0 ? strCore.tostring(value, format, syminfo.mintick, pricescale ?? syminfo.pricescale) : strCore.tostring(value, format, mintick, pricescale)),
|
|
1039
1059
|
format_time(time2, format = "yyyy-MM-dd'T'HH:mm:ssZ", timezone) {
|
|
1040
1060
|
return strCore.format_time(time2, format, timezone ?? exchangeTimezone());
|
|
1041
1061
|
},
|