@tradecanvas/chart 1.77.0 → 1.78.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/README.md +7 -1
- package/dist/{LayoutSession-CLQydl3X.cjs → LayoutSession-BzJQfrYw.cjs} +2 -2
- package/dist/{LayoutSession-CLQydl3X.cjs.map → LayoutSession-BzJQfrYw.cjs.map} +1 -1
- package/dist/{LayoutSession-B2mZsibG.js → LayoutSession-CehL1zj4.js} +2 -2
- package/dist/{LayoutSession-B2mZsibG.js.map → LayoutSession-CehL1zj4.js.map} +1 -1
- package/dist/{WidgetCommandPalette-ZZNbWwCZ.cjs → WidgetCommandPalette-B1jaXJ-I.cjs} +2 -2
- package/dist/{WidgetCommandPalette-ZZNbWwCZ.cjs.map → WidgetCommandPalette-B1jaXJ-I.cjs.map} +1 -1
- package/dist/{WidgetCommandPalette-CeCLHPy1.js → WidgetCommandPalette-Bvr6Od3p.js} +2 -2
- package/dist/{WidgetCommandPalette-CeCLHPy1.js.map → WidgetCommandPalette-Bvr6Od3p.js.map} +1 -1
- package/dist/{WidgetDrawingSettings-B_mi8DUh.cjs → WidgetDrawingSettings-B8JKpke1.cjs} +2 -2
- package/dist/{WidgetDrawingSettings-B_mi8DUh.cjs.map → WidgetDrawingSettings-B8JKpke1.cjs.map} +1 -1
- package/dist/{WidgetDrawingSettings-CJsNm1Bf.js → WidgetDrawingSettings-CsR3GuFG.js} +2 -2
- package/dist/{WidgetDrawingSettings-CJsNm1Bf.js.map → WidgetDrawingSettings-CsR3GuFG.js.map} +1 -1
- package/dist/{WidgetIndicatorPicker-DuKJFPRC.cjs → WidgetIndicatorPicker-B72LdJy1.cjs} +2 -2
- package/dist/{WidgetIndicatorPicker-DuKJFPRC.cjs.map → WidgetIndicatorPicker-B72LdJy1.cjs.map} +1 -1
- package/dist/{WidgetIndicatorPicker-CGvZ5kYd.js → WidgetIndicatorPicker-Cb2m62oH.js} +2 -2
- package/dist/{WidgetIndicatorPicker-CGvZ5kYd.js.map → WidgetIndicatorPicker-Cb2m62oH.js.map} +1 -1
- package/dist/{WidgetIndicatorSettings-dDkqzzYo.js → WidgetIndicatorSettings-C4S0QgW-.js} +3 -3
- package/dist/{WidgetIndicatorSettings-dDkqzzYo.js.map → WidgetIndicatorSettings-C4S0QgW-.js.map} +1 -1
- package/dist/{WidgetIndicatorSettings-C7vpco6e.cjs → WidgetIndicatorSettings-C9fM5_KF.cjs} +2 -2
- package/dist/{WidgetIndicatorSettings-C7vpco6e.cjs.map → WidgetIndicatorSettings-C9fM5_KF.cjs.map} +1 -1
- package/dist/{WidgetSettings-C0fnWGdY.cjs → WidgetSettings-CL-sRVF2.cjs} +2 -2
- package/dist/{WidgetSettings-C0fnWGdY.cjs.map → WidgetSettings-CL-sRVF2.cjs.map} +1 -1
- package/dist/{WidgetSettings--XzDx515.js → WidgetSettings-D1xKl3Gl.js} +2 -2
- package/dist/{WidgetSettings--XzDx515.js.map → WidgetSettings-D1xKl3Gl.js.map} +1 -1
- package/dist/{WidgetSymbolSearch-C4OR42nZ.cjs → WidgetSymbolSearch-BFQsqzQD.cjs} +2 -2
- package/dist/{WidgetSymbolSearch-C4OR42nZ.cjs.map → WidgetSymbolSearch-BFQsqzQD.cjs.map} +1 -1
- package/dist/{WidgetSymbolSearch-CvPpjIwa.js → WidgetSymbolSearch-CrVAWg8Y.js} +2 -2
- package/dist/{WidgetSymbolSearch-CvPpjIwa.js.map → WidgetSymbolSearch-CrVAWg8Y.js.map} +1 -1
- package/dist/{i18n-C5v6Tzp1.js → i18n-Ci4pfuXw.js} +9 -1
- package/dist/i18n-Ci4pfuXw.js.map +1 -0
- package/dist/i18n-hMXCt55K.cjs +2 -0
- package/dist/i18n-hMXCt55K.cjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/{indicatorInputWords-CTA4IcJR.cjs → indicatorInputWords-fiLxkWio.cjs} +2 -2
- package/dist/{indicatorInputWords-CTA4IcJR.cjs.map → indicatorInputWords-fiLxkWio.cjs.map} +1 -1
- package/dist/{indicatorInputWords-Bd9Pt6qp.js → indicatorInputWords-yN99aPYU.js} +2 -2
- package/dist/{indicatorInputWords-Bd9Pt6qp.js.map → indicatorInputWords-yN99aPYU.js.map} +1 -1
- package/dist/widget/WidgetWatchlist.d.ts +19 -3
- package/dist/widget/WidgetWatchlist.d.ts.map +1 -1
- package/dist/widget/WidgetWatchlists.d.ts.map +1 -1
- package/dist/widget/index.cjs +81 -32
- package/dist/widget/index.cjs.map +1 -1
- package/dist/widget/index.js +891 -848
- package/dist/widget/index.js.map +1 -1
- package/dist/widget/locales/ar.d.ts.map +1 -1
- package/dist/widget/locales/cs.d.ts.map +1 -1
- package/dist/widget/locales/da.d.ts.map +1 -1
- package/dist/widget/locales/de.d.ts.map +1 -1
- package/dist/widget/locales/el.d.ts.map +1 -1
- package/dist/widget/locales/en.d.ts +4 -0
- package/dist/widget/locales/en.d.ts.map +1 -1
- package/dist/widget/locales/es.d.ts.map +1 -1
- package/dist/widget/locales/et.d.ts.map +1 -1
- package/dist/widget/locales/fa.d.ts.map +1 -1
- package/dist/widget/locales/fr.d.ts.map +1 -1
- package/dist/widget/locales/he.d.ts.map +1 -1
- package/dist/widget/locales/hu.d.ts.map +1 -1
- package/dist/widget/locales/id.d.ts.map +1 -1
- package/dist/widget/locales/index.cjs +1 -1
- package/dist/widget/locales/index.cjs.map +1 -1
- package/dist/widget/locales/index.js +113 -1
- package/dist/widget/locales/index.js.map +1 -1
- package/dist/widget/locales/it.d.ts.map +1 -1
- package/dist/widget/locales/ja.d.ts.map +1 -1
- package/dist/widget/locales/ko.d.ts.map +1 -1
- package/dist/widget/locales/ms.d.ts.map +1 -1
- package/dist/widget/locales/nb.d.ts.map +1 -1
- package/dist/widget/locales/nl.d.ts.map +1 -1
- package/dist/widget/locales/pl.d.ts.map +1 -1
- package/dist/widget/locales/pt.d.ts.map +1 -1
- package/dist/widget/locales/ro.d.ts.map +1 -1
- package/dist/widget/locales/ru.d.ts.map +1 -1
- package/dist/widget/locales/sk.d.ts.map +1 -1
- package/dist/widget/locales/sv.d.ts.map +1 -1
- package/dist/widget/locales/th.d.ts.map +1 -1
- package/dist/widget/locales/tr.d.ts.map +1 -1
- package/dist/widget/locales/vi.d.ts.map +1 -1
- package/dist/widget/locales/zh.d.ts.map +1 -1
- package/dist/widget/locales/zhHant.d.ts.map +1 -1
- package/dist/widget/types.d.ts +9 -2
- package/dist/widget/types.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/i18n-C2nQBZTY.cjs +0 -2
- package/dist/i18n-C2nQBZTY.cjs.map +0 -1
- package/dist/i18n-C5v6Tzp1.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as e, D as t, E as n, S as r, T as i, _ as a, a as o, b as s, c, g as l, h as u, i as ee, l as te, m as ne, n as re, o as ie, p as ae, r as oe, s as se, t as ce, u as le, v as ue, w as de, x as fe, y as pe } from "./LayoutSession-
|
|
1
|
+
import { C as e, D as t, E as n, S as r, T as i, _ as a, a as o, b as s, c, g as l, h as u, i as ee, l as te, m as ne, n as re, o as ie, p as ae, r as oe, s as se, t as ce, u as le, v as ue, w as de, x as fe, y as pe } from "./LayoutSession-CehL1zj4.js";
|
|
2
2
|
import { CHART_STYLE_KEYS as me, DARK_PRICE_LIMITS as he, DARK_TERMINAL as ge, DARK_THEME as _e, DARK_THEME as ve, DEFAULT_DRAWING_STYLE as ye, DEFAULT_FONT_FAMILY as be, DEFAULT_RECONNECT as xe, DEFAULT_SIGNAL_STYLE as Se, DEFAULT_STREAM_CONFIG as Ce, DEFAULT_TIMEFRAME_FAVORITES as we, DEFAULT_TRADE_ZONE_STYLE as Te, DEFAULT_TRADING_CONFIG as Ee, HNX_SESSIONS as De, HOSE_SESSIONS as Oe, KRX_SESSIONS as ke, KR_COLORS as Ae, LIGHT_PRICE_LIMITS as je, LIGHT_THEME as Me, LIGHT_THEME as Ne, MARKET_CRYPTO as Pe, MARKET_HNX as Fe, MARKET_HOSE as Ie, MARKET_HOSE_ETF as Le, MARKET_KRX as Re, MARKET_NXT as d, MARKET_NYSE as f, MARKET_UPBIT_KRW as p, MARKET_UPCOM as m, MARKET_VN30F as h, MS_TIME_THRESHOLD as ze, NXT_SESSIONS as Be, PRICE_SOURCES as Ve, SANS_FONT_FAMILY as He, TC_PALETTE as Ue, TC_SERIES_COLORS as We, TIMEFRAMES_CRYPTO as Ge, TIMEFRAMES_FOREX as Ke, TIMEFRAMES_STOCK as qe, UPCOM_SESSIONS as Je, VN30F_SESSIONS as Ye, VN_COLORS as Xe, VOLUME_ALPHA as Ze, barTimeUnit as Qe, barsAreDaily as $e, computePriceLimits as et, contrastRatio as tt, createMarketTheme as nt, createVNTheme as rt, formatFraction as it, formatNumber as at, formatVND as ot, formatVolumeLoc as st, fractionTick as ct, getCurrentSession as lt, getLocale as ut, indicatorSource as dt, inkOn as ft, isPriceSource as pt, isTimeFrame as mt, isValidTimeZone as ht, marketStatus as gt, normalizeBar as _t, normalizeBarTime as vt, offsetAt as yt, parseIndicatorSource as bt, parseTimeframe as xt, pickBaseTimeframe as St, priceFormatterFor as Ct, priceStepAt as wt, rankSymbols as Tt, readNews as Et, readQuote as Dt, readableOn as Ot, registerLocale as kt, resampleBars as At, roundToPriceStep as jt, scaleMarketPrices as Mt, setLocale as Nt, sourcePrice as Pt, stepDecimals as Ft, symbolTimeZone as It, t as Lt, tickBarCount as Rt, timeframeBucketStart as zt, timeframeBucketStart as Bt, timeframeToMs as Vt, usesKoreanUnits as Ht, vn30fContracts as Ut, vn30fLastTradingDay as Wt, volumeColor as Gt, wallToUtc as Kt, zoneOffsetMinutes as qt } from "@tradecanvas/commons";
|
|
3
3
|
import { AlertManager as Jt, Animator as Yt, BarCountdown as Xt, BaseFinanceChart as g, BinanceAdapter as Zt, BybitAdapter as Qt, CANDLE_PATTERNS as $t, ChartLegend as en, ChartStateManager as tn, CoinbaseAdapter as nn, CompareRenderer as rn, CrosshairTooltip as an, CurrentPriceLine as on, DEFAULT_LEGEND_CONFIG as sn, DEFAULT_MAX_WEBGL_CHARTS as cn, DEFAULT_SESSION_HOURS as ln, DataExporter as un, DrawingBase as dn, Easing as fn, FinanceCrosshair as _, GROUP_HEADER as pn, INDICATOR_CATEGORIES as mn, IndicatorBase as hn, IndicatorValueMap as gn, KEPT_BUCKETS as _n, KeyboardHandler as vn, KrakenAdapter as yn, MAX_ALERT_BARS as bn, MIN_ALERT_BARS as xn, ManualFeed as Sn, MockAdapter as Cn, PaperExecutionAdapter as wn, PollingAdapter as Tn, RANGE_PRESETS as En, ReconnectManager as Dn, ReplayController as On, ReplayManager as kn, ResamplingAdapter as An, ReshapeMemo as jn, Screenshot as Mn, SessionBreaks as Nn, SessionShading as Pn, SignalMarkerManager as Fn, StreamManager as In, TickAggregator as Ln, TickBarAdapter as Rn, TickBarBuilder as zn, TradeZoneManager as Bn, UndoRedoManager as Vn, UpbitAdapter as Hn, VolumeRenderer as v, Watermark as Un, WebSocketAdapter as Wn, adapterFromFeed as Gn, axisTimes as Kn, barIndexToTime as qn, barIndexToX as Jn, barIndexToX as y, canvasMeasure as Yn, computeBarLayout as Xn, computeCalendarLayout as Zn, computeCounterClockLayout as Qn, computeDonutLayout as $n, computeHistogramLayout as er, computeMatrixLayout as tr, computeScatterLayout as nr, correlationMatrix as rr, counterClockPhase as ir, counterClockPhase as ar, counterClockPoints as or, counterClockPoints as sr, describeInputs as cr, detectCandlePatterns as lr, feedFromAdapter as ur, formatTooltipTime as dr, histogramBins as fr, hitBar as b, hitDay as x, hitMatrixCell as S, hitSlice as C, indicatorCategory as pr, isDataFeed as mr, isDataFeed as hr, isPriceLevelAlert as gr, layoutGroupedTreemap as _r, layoutSquarifiedTreemap as vr, layoutUniformGrid as yr, lttbDownsample as br, lttbVisibleIndices as xr, nearestCounterClockPoint as w, nearestPoint as T, niceScale as Sr, priceToY as Cr, priceToYMapper as wr, priceToYMapper as Tr, rangePresetStart as Er, renderBarChart as Dr, renderCalendar as Or, renderCounterClock as kr, renderDepthChart as Ar, renderDonut as jr, renderEquityCurve as Mr, renderGauge as Nr, renderHeatmap as Pr, renderHistogram as Fr, renderMatrix as Ir, renderScatter as Lr, renderSparkline as Rr, renderWaterfall as zr, servesTimeframe as Br, setMaxWebGLCharts as Vr, shownCount as Hr, timeToX as Ur, timestampToBarIndex as Wr, timestampToBarIndex as Gr, toHeikinAshi as Kr, toKagi as qr, toLineBreak as Jr, toPointAndFigure as Yr, toRangeBars as Xr, toRenko as Zr, withResampling as Qr, withTickBars as $r, xToBarIndex as ei, xToBarIndex as E, xToTime as ti, yToPrice as ni, yToPrice as ri } from "@tradecanvas/core";
|
|
4
4
|
//#region src/frameworks/syncIndicators.ts
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`./indicatorLabel-BNZvaOcl.cjs`),t=require(`./i18n-
|
|
2
|
-
//# sourceMappingURL=indicatorInputWords-
|
|
1
|
+
const e=require(`./indicatorLabel-BNZvaOcl.cjs`),t=require(`./i18n-hMXCt55K.cjs`);function n(e){return Object.prototype.hasOwnProperty.call(t.c,e)}function r(e,t){let r=`indicatorInput.${e}`;return n(r)?t(r):null}function i(e,t,r){let i=`indicatorInput.${e}.${t}`;return n(i)?r(i):null}function a(t,n){let{defaultConfig:r,shortName:a,inputs:o}=t.descriptor,s=Object.entries(o??{}).flatMap(([e,a])=>{let o=t.params[e];return!a.options||typeof o!=`string`&&typeof o!=`number`||o===r[e]?[]:i(e,o,n)??[]});return[e.t(t.id,t.params,r,a),...s].join(` `)}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
|
|
2
|
+
//# sourceMappingURL=indicatorInputWords-fiLxkWio.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indicatorInputWords-
|
|
1
|
+
{"version":3,"file":"indicatorInputWords-fiLxkWio.cjs","names":[],"sources":["../src/widget/indicatorInputWords.ts"],"sourcesContent":["import type { IndicatorDescriptor } from '@tradecanvas/commons';\nimport { indicatorChipLabel } from '../indicatorLabel.js';\nimport { EN_MESSAGES, type MessageKey, type Translator } from './i18n.js';\n\n/**\n * Words for an indicator's inputs in the widget's language: an input named\n * `anchor` is `indicatorInput.anchor`, its choice `'week'` is\n * `indicatorInput.anchor.week`. Only inputs the widget has words for; any\n * other keeps its own label and its values as they are.\n */\n\n/** Whether the widget has a message under `key`, one built from an input's name. */\nfunction isMessageKey(key: string): key is MessageKey {\n return Object.prototype.hasOwnProperty.call(EN_MESSAGES, key);\n}\n\n/** An input's label in the widget's language, or null for one it has no word for. */\nexport function inputLabel(name: string, t: Translator): string | null {\n const key = `indicatorInput.${name}`;\n return isMessageKey(key) ? t(key) : null;\n}\n\n/** A choice of an input in the widget's language, or null for one it has no word for. */\nexport function choiceLabel(name: string, choice: string | number, t: Translator): string | null {\n const key = `indicatorInput.${name}.${choice}`;\n return isMessageKey(key) ? t(key) : null;\n}\n\n/** An indicator on the chart, as the widget names it. */\nexport interface NamedIndicator {\n id: string;\n params: Record<string, unknown>;\n descriptor: Pick<IndicatorDescriptor, 'defaultConfig' | 'shortName' | 'inputs'>;\n}\n\n/**\n * The indicator's name in the legend, the chips and the Objects panel: its\n * chip label ('EMA 21'), then the word for each choice off its default, so\n * two read apart ('VWAP', 'VWAP Week'). The CSV column keeps the chip label.\n */\nexport function widgetIndicatorLabel(ind: NamedIndicator, t: Translator): string {\n const { defaultConfig, shortName, inputs } = ind.descriptor;\n const words = Object.entries(inputs ?? {}).flatMap(([name, spec]) => {\n const value = ind.params[name];\n if (!spec.options || (typeof value !== 'string' && typeof value !== 'number') || value === defaultConfig[name]) return [];\n return choiceLabel(name, value, t) ?? [];\n });\n return [indicatorChipLabel(ind.id, ind.params, defaultConfig, shortName), ...words].join(' ');\n}\n"],"mappings":"kFAYA,SAAS,EAAa,EAAgC,CACpD,OAAO,OAAO,UAAU,eAAe,KAAK,EAAA,EAAa,EAAI,CAI/D,SAAgB,EAAW,EAAc,EAA8B,CACrE,IAAM,EAAM,kBAAkB,IAC9B,OAAO,EAAa,EAAI,CAAG,EAAE,EAAI,CAAG,KAItC,SAAgB,EAAY,EAAc,EAAyB,EAA8B,CAC/F,IAAM,EAAM,kBAAkB,EAAK,GAAG,IACtC,OAAO,EAAa,EAAI,CAAG,EAAE,EAAI,CAAG,KAetC,SAAgB,EAAqB,EAAqB,EAAuB,CAC/E,GAAM,CAAE,gBAAe,YAAW,UAAW,EAAI,WAC3C,EAAQ,OAAO,QAAQ,GAAU,EAAE,CAAC,CAAC,SAAS,CAAC,EAAM,KAAU,CACnE,IAAM,EAAQ,EAAI,OAAO,GAEzB,MADI,CAAC,EAAK,SAAY,OAAO,GAAU,UAAY,OAAO,GAAU,UAAa,IAAU,EAAc,GAAc,EAAE,CAClH,EAAY,EAAM,EAAO,EAAE,EAAI,EAAE,EACxC,CACF,MAAO,CAAC,EAAA,EAAmB,EAAI,GAAI,EAAI,OAAQ,EAAe,EAAU,CAAE,GAAG,EAAM,CAAC,KAAK,IAAI"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./indicatorLabel-Sbegyhp2.js";
|
|
2
|
-
import { c as t } from "./i18n-
|
|
2
|
+
import { c as t } from "./i18n-Ci4pfuXw.js";
|
|
3
3
|
//#region src/widget/indicatorInputWords.ts
|
|
4
4
|
function n(e) {
|
|
5
5
|
return Object.prototype.hasOwnProperty.call(t, e);
|
|
@@ -22,4 +22,4 @@ function a(t, n) {
|
|
|
22
22
|
//#endregion
|
|
23
23
|
export { r as n, a as r, i as t };
|
|
24
24
|
|
|
25
|
-
//# sourceMappingURL=indicatorInputWords-
|
|
25
|
+
//# sourceMappingURL=indicatorInputWords-yN99aPYU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indicatorInputWords-
|
|
1
|
+
{"version":3,"file":"indicatorInputWords-yN99aPYU.js","names":[],"sources":["../src/widget/indicatorInputWords.ts"],"sourcesContent":["import type { IndicatorDescriptor } from '@tradecanvas/commons';\nimport { indicatorChipLabel } from '../indicatorLabel.js';\nimport { EN_MESSAGES, type MessageKey, type Translator } from './i18n.js';\n\n/**\n * Words for an indicator's inputs in the widget's language: an input named\n * `anchor` is `indicatorInput.anchor`, its choice `'week'` is\n * `indicatorInput.anchor.week`. Only inputs the widget has words for; any\n * other keeps its own label and its values as they are.\n */\n\n/** Whether the widget has a message under `key`, one built from an input's name. */\nfunction isMessageKey(key: string): key is MessageKey {\n return Object.prototype.hasOwnProperty.call(EN_MESSAGES, key);\n}\n\n/** An input's label in the widget's language, or null for one it has no word for. */\nexport function inputLabel(name: string, t: Translator): string | null {\n const key = `indicatorInput.${name}`;\n return isMessageKey(key) ? t(key) : null;\n}\n\n/** A choice of an input in the widget's language, or null for one it has no word for. */\nexport function choiceLabel(name: string, choice: string | number, t: Translator): string | null {\n const key = `indicatorInput.${name}.${choice}`;\n return isMessageKey(key) ? t(key) : null;\n}\n\n/** An indicator on the chart, as the widget names it. */\nexport interface NamedIndicator {\n id: string;\n params: Record<string, unknown>;\n descriptor: Pick<IndicatorDescriptor, 'defaultConfig' | 'shortName' | 'inputs'>;\n}\n\n/**\n * The indicator's name in the legend, the chips and the Objects panel: its\n * chip label ('EMA 21'), then the word for each choice off its default, so\n * two read apart ('VWAP', 'VWAP Week'). The CSV column keeps the chip label.\n */\nexport function widgetIndicatorLabel(ind: NamedIndicator, t: Translator): string {\n const { defaultConfig, shortName, inputs } = ind.descriptor;\n const words = Object.entries(inputs ?? {}).flatMap(([name, spec]) => {\n const value = ind.params[name];\n if (!spec.options || (typeof value !== 'string' && typeof value !== 'number') || value === defaultConfig[name]) return [];\n return choiceLabel(name, value, t) ?? [];\n });\n return [indicatorChipLabel(ind.id, ind.params, defaultConfig, shortName), ...words].join(' ');\n}\n"],"mappings":";;;AAYA,SAAS,EAAa,GAAgC;AACpD,QAAO,OAAO,UAAU,eAAe,KAAK,GAAa,EAAI;;AAI/D,SAAgB,EAAW,GAAc,GAA8B;CACrE,IAAM,IAAM,kBAAkB;AAC9B,QAAO,EAAa,EAAI,GAAG,EAAE,EAAI,GAAG;;AAItC,SAAgB,EAAY,GAAc,GAAyB,GAA8B;CAC/F,IAAM,IAAM,kBAAkB,EAAK,GAAG;AACtC,QAAO,EAAa,EAAI,GAAG,EAAE,EAAI,GAAG;;AAetC,SAAgB,EAAqB,GAAqB,GAAuB;CAC/E,IAAM,EAAE,kBAAe,cAAW,cAAW,EAAI,YAC3C,IAAQ,OAAO,QAAQ,KAAU,EAAE,CAAC,CAAC,SAAS,CAAC,GAAM,OAAU;EACnE,IAAM,IAAQ,EAAI,OAAO;AAEzB,SADI,CAAC,EAAK,WAAY,OAAO,KAAU,YAAY,OAAO,KAAU,YAAa,MAAU,EAAc,KAAc,EAAE,GAClH,EAAY,GAAM,GAAO,EAAE,IAAI,EAAE;GACxC;AACF,QAAO,CAAC,EAAmB,EAAI,IAAI,EAAI,QAAQ,GAAe,EAAU,EAAE,GAAG,EAAM,CAAC,KAAK,IAAI"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { WatchlistList } from './WatchlistStore.js';
|
|
2
2
|
/**
|
|
3
|
-
* Watchlist sidebar: the shown list's symbols,
|
|
4
|
-
*
|
|
3
|
+
* Watchlist sidebar: the shown list's symbols, a line each: the ticker (its
|
|
4
|
+
* venue left to the tooltip), last price, the move and the % change, under
|
|
5
|
+
* the columns' names; a mini sparkline when asked for. A menu switches, creates, renames and deletes lists;
|
|
5
6
|
* rows are added, removed and reordered (drag, or Alt+↑/↓). It only renders
|
|
6
7
|
* and reports: the widget keeps the lists (see WatchlistStore).
|
|
7
8
|
*
|
|
@@ -45,15 +46,28 @@ export interface WatchlistLabels {
|
|
|
45
46
|
listName: string;
|
|
46
47
|
/** The close button's name. */
|
|
47
48
|
close?: string;
|
|
49
|
+
/** The names over the columns; without them the list has no head row. */
|
|
50
|
+
columns?: {
|
|
51
|
+
symbol: string;
|
|
52
|
+
price: string;
|
|
53
|
+
move: string;
|
|
54
|
+
change: string;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export interface WatchlistViewOptions {
|
|
58
|
+
/** A small chart of recent prices in each row. Default `false`: the row's figures only. */
|
|
59
|
+
sparkline?: boolean;
|
|
48
60
|
}
|
|
49
61
|
export declare class WidgetWatchlist {
|
|
50
62
|
private readonly callbacks;
|
|
51
63
|
private readonly labels;
|
|
64
|
+
private readonly options;
|
|
52
65
|
private el;
|
|
53
66
|
private headerEl;
|
|
54
67
|
private nameBtn;
|
|
55
68
|
private menuEl;
|
|
56
69
|
private listEl;
|
|
70
|
+
private headEl;
|
|
57
71
|
private rowMap;
|
|
58
72
|
private entries;
|
|
59
73
|
private lists;
|
|
@@ -62,7 +76,7 @@ export declare class WidgetWatchlist {
|
|
|
62
76
|
private locale;
|
|
63
77
|
private dragging;
|
|
64
78
|
private readonly onOutside;
|
|
65
|
-
constructor(host: HTMLElement, callbacks: WatchlistCallbacks, labels: WatchlistLabels);
|
|
79
|
+
constructor(host: HTMLElement, callbacks: WatchlistCallbacks, labels: WatchlistLabels, options?: WatchlistViewOptions);
|
|
66
80
|
/** The panel, for the dock to hold. */
|
|
67
81
|
get element(): HTMLElement;
|
|
68
82
|
/** The lists, and which one shows. Rows are diffed so prices stay. */
|
|
@@ -78,6 +92,8 @@ export declare class WidgetWatchlist {
|
|
|
78
92
|
destroy(): void;
|
|
79
93
|
private shownList;
|
|
80
94
|
private renderRows;
|
|
95
|
+
/** The names over the columns, when the labels give them: a row of the list's grid, read by eye only. */
|
|
96
|
+
private makeHead;
|
|
81
97
|
private makeRow;
|
|
82
98
|
private onRowKey;
|
|
83
99
|
private renderRow;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetWatchlist.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetWatchlist.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIzD
|
|
1
|
+
{"version":3,"file":"WidgetWatchlist.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetWatchlist.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetWatchlists.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetWatchlists.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"WidgetWatchlists.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetWatchlists.ts"],"names":[],"mappings":"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"}
|