acttrader-charts 1.3.0-beta.2 → 1.3.0-beta.4

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/index.cjs CHANGED
@@ -22690,6 +22690,9 @@ var _ChartEngine = class _ChartEngine {
22690
22690
  this.PRICE_AXIS_COUNTDOWN_LS_KEY = "finchart.showPriceAxisCountdown";
22691
22691
  this.loadingOverlayEl = null;
22692
22692
  this.noDataOverlayEl = null;
22693
+ /** Label pills inside the two overlays — painted by `applyOverlayLabelStyles()`. */
22694
+ this.loadingLabelEl = null;
22695
+ this.noDataLabelEl = null;
22693
22696
  // Watermark
22694
22697
  this.logoImage = null;
22695
22698
  // ── State persistence ─────────────────────────────────────────────────────
@@ -24231,12 +24234,11 @@ var _ChartEngine = class _ChartEngine {
24231
24234
  const loadingLabel = document.createElement("span");
24232
24235
  loadingLabel.textContent = this.labels.chart.loading;
24233
24236
  Object.assign(loadingLabel.style, {
24234
- color: "rgba(200,200,200,0.9)",
24235
24237
  fontSize: "13px",
24236
- background: "rgba(0,0,0,0.45)",
24237
24238
  padding: "4px 12px",
24238
24239
  borderRadius: "4px"
24239
24240
  });
24241
+ this.loadingLabelEl = loadingLabel;
24240
24242
  this.loadingOverlayEl.appendChild(loadingLabel);
24241
24243
  this.canvasWrap.appendChild(this.loadingOverlayEl);
24242
24244
  this.noDataOverlayEl = document.createElement("div");
@@ -24255,13 +24257,13 @@ var _ChartEngine = class _ChartEngine {
24255
24257
  const noDataLabel = document.createElement("span");
24256
24258
  noDataLabel.textContent = this.labels.chart.noData;
24257
24259
  Object.assign(noDataLabel.style, {
24258
- color: "rgba(200,200,200,0.9)",
24259
24260
  fontSize: "13px",
24260
- background: "rgba(0,0,0,0.45)",
24261
24261
  padding: "4px 12px",
24262
24262
  borderRadius: "4px"
24263
24263
  });
24264
+ this.noDataLabelEl = noDataLabel;
24264
24265
  this.noDataOverlayEl.appendChild(noDataLabel);
24266
+ this.applyOverlayLabelStyles();
24265
24267
  this.canvasWrap.appendChild(this.noDataOverlayEl);
24266
24268
  }
24267
24269
  if (showUI && !(hideSymbolAndTick && hideOHLCV)) {
@@ -25256,8 +25258,9 @@ var _ChartEngine = class _ChartEngine {
25256
25258
  this.applyScrollToEndBtnStyles();
25257
25259
  this.applyResetViewBtnStyles();
25258
25260
  this.applyMobileDrawingFlyoutTheme();
25259
- if (this.siSymbolSpan) this.siSymbolSpan.style.color = this.theme.axisText;
25260
- if (this.siStreamDot) this.siStreamDot.style.background = this.theme.ui.stream.disconnected;
25261
+ if (this.siSymbolSpan) this.siSymbolSpan.style.color = this.theme.tooltip.text;
25262
+ if (this.siStreamDot) this.siStreamDot.style.background = this.theme.ui.stream[this.streamStatus];
25263
+ this.applyOverlayLabelStyles();
25261
25264
  this.compareLegend?.setTheme(this.theme);
25262
25265
  this.comparePickerModal?.setTheme(this.theme);
25263
25266
  this.scheduleRender();
@@ -29086,6 +29089,22 @@ var _ChartEngine = class _ChartEngine {
29086
29089
  this.resetPriceAxis();
29087
29090
  this.resetTimeAxis();
29088
29091
  }
29092
+ /**
29093
+ * Paints the "Loading…" / "No data available" pills from the theme. They used
29094
+ * to be a hardcoded dark scrim with pale grey text, which read as a black box
29095
+ * on the light theme; they now track `tooltip` like every other floating
29096
+ * label and are repainted on `setTheme`.
29097
+ */
29098
+ applyOverlayLabelStyles() {
29099
+ for (const el of [this.loadingLabelEl, this.noDataLabelEl]) {
29100
+ if (!el) continue;
29101
+ Object.assign(el.style, {
29102
+ color: this.theme.tooltip.text,
29103
+ background: this.theme.tooltip.background,
29104
+ border: `1px solid ${this.theme.tooltip.border}`
29105
+ });
29106
+ }
29107
+ }
29089
29108
  applyResetViewBtnStyles() {
29090
29109
  if (!this.resetViewBtn) return;
29091
29110
  this.resetViewBtn.innerHTML = iconResetView(this.theme.axisText, 16);