@tradecanvas/chart 1.49.1 → 1.51.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.
Files changed (106) hide show
  1. package/README.md +1 -1
  2. package/dist/Chart.d.ts +32 -1
  3. package/dist/Chart.d.ts.map +1 -1
  4. package/dist/LayoutSession-DuV9kpdQ.cjs +2 -0
  5. package/dist/LayoutSession-DuV9kpdQ.cjs.map +1 -0
  6. package/dist/{LayoutSession-BlSkHp80.js → LayoutSession-Qkx1huV-.js} +380 -292
  7. package/dist/LayoutSession-Qkx1huV-.js.map +1 -0
  8. package/dist/ThemeManager.d.ts +7 -1
  9. package/dist/ThemeManager.d.ts.map +1 -1
  10. package/dist/finance/performanceData.d.ts +17 -2
  11. package/dist/finance/performanceData.d.ts.map +1 -1
  12. package/dist/i18n-Bg_UJSNs.cjs +2 -0
  13. package/dist/i18n-Bg_UJSNs.cjs.map +1 -0
  14. package/dist/{i18n-DjzoHpMJ.js → i18n-DFTQ73Cz.js} +15 -1
  15. package/dist/i18n-DFTQ73Cz.js.map +1 -0
  16. package/dist/index.cjs +1 -1
  17. package/dist/index.cjs.map +1 -1
  18. package/dist/index.d.ts +2 -2
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +116 -115
  21. package/dist/index.js.map +1 -1
  22. package/dist/layout/labelWidths.d.ts +16 -0
  23. package/dist/layout/labelWidths.d.ts.map +1 -0
  24. package/dist/widget/ChartWidget.d.ts +46 -4
  25. package/dist/widget/ChartWidget.d.ts.map +1 -1
  26. package/dist/widget/WatchlistStore.d.ts.map +1 -1
  27. package/dist/widget/WidgetContextMenu.d.ts +25 -3
  28. package/dist/widget/WidgetContextMenu.d.ts.map +1 -1
  29. package/dist/widget/WidgetHotkeySheet.d.ts.map +1 -1
  30. package/dist/widget/WidgetIndicatorLegend.d.ts +2 -0
  31. package/dist/widget/WidgetIndicatorLegend.d.ts.map +1 -1
  32. package/dist/widget/WidgetLayoutsUI.d.ts.map +1 -1
  33. package/dist/widget/WidgetStatusBar.d.ts +110 -3
  34. package/dist/widget/WidgetStatusBar.d.ts.map +1 -1
  35. package/dist/widget/WidgetSymbolSearch.d.ts +73 -20
  36. package/dist/widget/WidgetSymbolSearch.d.ts.map +1 -1
  37. package/dist/widget/WidgetToolbar.d.ts +65 -6
  38. package/dist/widget/WidgetToolbar.d.ts.map +1 -1
  39. package/dist/widget/WidgetTradeMenu.d.ts.map +1 -1
  40. package/dist/widget/hostButtons.d.ts +5 -2
  41. package/dist/widget/hostButtons.d.ts.map +1 -1
  42. package/dist/widget/index.cjs +466 -119
  43. package/dist/widget/index.cjs.map +1 -1
  44. package/dist/widget/index.d.ts +1 -1
  45. package/dist/widget/index.d.ts.map +1 -1
  46. package/dist/widget/index.js +2317 -1738
  47. package/dist/widget/index.js.map +1 -1
  48. package/dist/widget/locales/ar.d.ts.map +1 -1
  49. package/dist/widget/locales/cs.d.ts.map +1 -1
  50. package/dist/widget/locales/da.d.ts.map +1 -1
  51. package/dist/widget/locales/de.d.ts.map +1 -1
  52. package/dist/widget/locales/el.d.ts.map +1 -1
  53. package/dist/widget/locales/en.d.ts +7 -0
  54. package/dist/widget/locales/en.d.ts.map +1 -1
  55. package/dist/widget/locales/es.d.ts.map +1 -1
  56. package/dist/widget/locales/et.d.ts.map +1 -1
  57. package/dist/widget/locales/fa.d.ts.map +1 -1
  58. package/dist/widget/locales/fr.d.ts.map +1 -1
  59. package/dist/widget/locales/he.d.ts.map +1 -1
  60. package/dist/widget/locales/hu.d.ts.map +1 -1
  61. package/dist/widget/locales/id.d.ts.map +1 -1
  62. package/dist/widget/locales/index.cjs +1 -1
  63. package/dist/widget/locales/index.cjs.map +1 -1
  64. package/dist/widget/locales/index.js +197 -1
  65. package/dist/widget/locales/index.js.map +1 -1
  66. package/dist/widget/locales/it.d.ts.map +1 -1
  67. package/dist/widget/locales/ja.d.ts.map +1 -1
  68. package/dist/widget/locales/ko.d.ts.map +1 -1
  69. package/dist/widget/locales/ms.d.ts.map +1 -1
  70. package/dist/widget/locales/nb.d.ts.map +1 -1
  71. package/dist/widget/locales/nl.d.ts.map +1 -1
  72. package/dist/widget/locales/pl.d.ts.map +1 -1
  73. package/dist/widget/locales/pt.d.ts.map +1 -1
  74. package/dist/widget/locales/ro.d.ts.map +1 -1
  75. package/dist/widget/locales/ru.d.ts.map +1 -1
  76. package/dist/widget/locales/sk.d.ts.map +1 -1
  77. package/dist/widget/locales/sv.d.ts.map +1 -1
  78. package/dist/widget/locales/th.d.ts.map +1 -1
  79. package/dist/widget/locales/tr.d.ts.map +1 -1
  80. package/dist/widget/locales/vi.d.ts.map +1 -1
  81. package/dist/widget/locales/zh.d.ts.map +1 -1
  82. package/dist/widget/locales/zhHant.d.ts.map +1 -1
  83. package/dist/widget/selectMenu.d.ts.map +1 -1
  84. package/dist/widget/symbolBadge.d.ts +26 -0
  85. package/dist/widget/symbolBadge.d.ts.map +1 -0
  86. package/dist/widget/symbolCatalog.d.ts +62 -0
  87. package/dist/widget/symbolCatalog.d.ts.map +1 -0
  88. package/dist/widget/symbolCell.d.ts +8 -0
  89. package/dist/widget/symbolCell.d.ts.map +1 -0
  90. package/dist/widget/symbolInfoView.d.ts +3 -0
  91. package/dist/widget/symbolInfoView.d.ts.map +1 -1
  92. package/dist/widget/symbolMatch.d.ts +38 -0
  93. package/dist/widget/symbolMatch.d.ts.map +1 -0
  94. package/dist/widget/symbolSearchFilters.d.ts +52 -0
  95. package/dist/widget/symbolSearchFilters.d.ts.map +1 -0
  96. package/dist/widget/types.d.ts +28 -4
  97. package/dist/widget/types.d.ts.map +1 -1
  98. package/dist/widget/widgetUI.d.ts +16 -2
  99. package/dist/widget/widgetUI.d.ts.map +1 -1
  100. package/package.json +3 -3
  101. package/dist/LayoutSession-B-IfDpYQ.cjs +0 -2
  102. package/dist/LayoutSession-B-IfDpYQ.cjs.map +0 -1
  103. package/dist/LayoutSession-BlSkHp80.js.map +0 -1
  104. package/dist/i18n-DVeWlg64.cjs +0 -2
  105. package/dist/i18n-DVeWlg64.cjs.map +0 -1
  106. package/dist/i18n-DjzoHpMJ.js.map +0 -1
@@ -39,6 +39,8 @@ export declare class WidgetContextMenu {
39
39
  /** The menu this one is the submenu of. */
40
40
  private parent;
41
41
  private hoverTimer;
42
+ /** The entry `hoverTimer` counts the rest on: moving on it counts on, not again. */
43
+ private hoverItem;
42
44
  private readonly onDocPointer;
43
45
  /** Scrolling a long menu keeps it; scrolling anywhere else moves the chart from under it. */
44
46
  private readonly onWheel;
@@ -51,14 +53,34 @@ export declare class WidgetContextMenu {
51
53
  constructor(host: HTMLElement, label: string, backLabel?: string);
52
54
  /**
53
55
  * Open at (`x`, `y`) in the host's coordinates. It opens up or to the left
54
- * of the point when there is no room below or to the right, and stays
55
- * inside both the host and the window.
56
+ * of the point when there is no room below or to the right, ending at
57
+ * `xBack` then (a menu under a button ends at the button's far edge), and
58
+ * stays inside both the host and the window. With `before` it ends at
59
+ * `xBack` first, and starts at `x` only without room before it.
56
60
  */
57
- open(entries: readonly ContextMenuEntry[], x: number, y: number, onPick: (id: string) => void, anchor?: HTMLElement, onRemove?: (id: string) => void): void;
61
+ open(entries: readonly ContextMenuEntry[], x: number, y: number, onPick: (id: string) => void, anchor?: HTMLElement, onRemove?: (id: string) => void, xBack?: number, before?: boolean): void;
62
+ /**
63
+ * Open under `anchor`, `gap` px below it, lined up with it as the
64
+ * toolbar's own menus are, mirrored right to left: from its start edge
65
+ * (`'start'`), or ending at its end edge (`'end'`: "more", at the
66
+ * toolbar's end); from its other edge when there is no room that way.
67
+ */
68
+ openUnder(entries: readonly ContextMenuEntry[], anchor: HTMLElement, onPick: (id: string) => void, align?: 'start' | 'end', gap?: number): void;
69
+ /**
70
+ * Close every menu open under `anchor`, and say whether one was. Its
71
+ * button shows it open (aria-expanded), so a press on it closes it.
72
+ */
73
+ static closeAnchoredTo(anchor: HTMLElement): boolean;
74
+ /** The button an open menu that holds the keyboard hangs from; null when none does. */
75
+ static focusedAnchor(): HTMLElement | null;
58
76
  close(): void;
59
77
  isOpen(): boolean;
78
+ /** Whether the keyboard is in the menu, or in a submenu of it. */
79
+ hasFocus(): boolean;
60
80
  destroy(): void;
61
81
  private show;
82
+ /** What its padding and border add to a max height, which sizes only its rows unless its box counts them. */
83
+ private frameHeight;
62
84
  /**
63
85
  * A long list of choices (the time zones) opens scrolled to the one made,
64
86
  * returned to take the keyboard; null when it is in sight already.
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetContextMenu.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetContextMenu.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB;AAC1B;;;;;;GAMG;AACD;IACE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GACD,WAAW,CAAC;AAoDhB;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IA4BhB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAA8B,OAAO,CAAC,QAAQ,CAAC,SAAS;IA3BzF,OAAO,CAAC,EAAE,CAAiB;IAC3B,OAAO,CAAC,MAAM,CAAuC;IACrD,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,WAAW,CAA4B;IAC/C,wFAAwF;IACxF,OAAO,CAAC,MAAM,CAA4B;IAC1C,2DAA2D;IAC3D,OAAO,CAAC,KAAK,CAAkC;IAC/C,2CAA2C;IAC3C,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,UAAU,CAA8C;IAChE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAI3B;IACF,6FAA6F;IAC7F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAEtB;IACF,0EAA0E;IAC1E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C;;;OAGG;gBAC0B,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAmB,SAAS,SAAK;IAU9F;;;;OAIG;IACH,IAAI,CACF,OAAO,EAAE,SAAS,gBAAgB,EAAE,EACpC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,EAC5B,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAC9B,IAAI;IAIP,KAAK,IAAI,IAAI;IAmBb,MAAM,IAAI,OAAO;IAIjB,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,IAAI;IAgCZ;;;OAGG;IACH,OAAO,CAAC,YAAY;IAOpB,oGAAoG;IACpG,OAAO,CAAC,GAAG;IAIX,0DAA0D;IAC1D,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,KAAK;IAgCb,gEAAgE;IAChE,OAAO,CAAC,SAAS;IAkBjB,wEAAwE;IACxE,OAAO,CAAC,YAAY;IAiBpB,+GAA+G;IAC/G,OAAO,CAAC,WAAW;IAiCnB,OAAO,CAAC,SAAS;IASjB,yFAAyF;IACzF,OAAO,CAAC,KAAK;IAWb,OAAO,CAAC,UAAU;IAMlB,oHAAoH;IACpH,OAAO,CAAC,MAAM;IAoBd,OAAO,CAAC,IAAI;IAMZ,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,SAAS;CAmClB"}
1
+ {"version":3,"file":"WidgetContextMenu.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetContextMenu.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetHotkeySheet.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetHotkeySheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,UAAU,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKzD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAuBD,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qFAAqF;AACrF,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC;IAC3C,KAAK,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CACpC;AAoFD;;;;;GAKG;AACH,qBAAa,iBAAiB;IAY1B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAbvB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,QAAQ,CAAiC;IACjD,oDAAoD;IACpD,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,MAAM,CAAuE;IACrF,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAElC,6FAA6F;gBAE1E,SAAS,EAAE,oBAAoB,EAC/B,CAAC,EAAE,UAAU,EACb,IAAI,GAAE,MAAM,WAAiC;IAGhE,IAAI,CAAC,OAAO,GAAE,kBAAuB,GAAG,IAAI;IAmB5C,KAAK,IAAI,IAAI;IAUb,MAAM,IAAI,OAAO;IAIjB,OAAO,IAAI,IAAI;IAIf,6EAA6E;IAC7E,OAAO,CAAC,KAAK;IA6Eb,+DAA+D;IAC/D,OAAO,CAAC,MAAM;IA4Bd,OAAO,CAAC,KAAK;IAIb,uEAAuE;IACvE,OAAO,CAAC,OAAO;IAIf,qEAAqE;IACrE,OAAO,CAAC,OAAO;IAKf,uEAAuE;IACvE,OAAO,CAAC,GAAG;CA0BZ"}
1
+ {"version":3,"file":"WidgetHotkeySheet.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetHotkeySheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,UAAU,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKzD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAuBD,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qFAAqF;AACrF,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC;IAC3C,KAAK,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CACpC;AAoFD;;;;;GAKG;AACH,qBAAa,iBAAiB;IAY1B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAbvB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,QAAQ,CAAiC;IACjD,oDAAoD;IACpD,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,MAAM,CAAuE;IACrF,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAElC,6FAA6F;gBAE1E,SAAS,EAAE,oBAAoB,EAC/B,CAAC,EAAE,UAAU,EACb,IAAI,GAAE,MAAM,WAAiC;IAGhE,IAAI,CAAC,OAAO,GAAE,kBAAuB,GAAG,IAAI;IAmB5C,KAAK,IAAI,IAAI;IAUb,MAAM,IAAI,OAAO;IAIjB,OAAO,IAAI,IAAI;IAIf,6EAA6E;IAC7E,OAAO,CAAC,KAAK;IA6Eb,+DAA+D;IAC/D,OAAO,CAAC,MAAM;IAiCd,OAAO,CAAC,KAAK;IAIb,uEAAuE;IACvE,OAAO,CAAC,OAAO;IAIf,qEAAqE;IACrE,OAAO,CAAC,OAAO;IAKf,uEAAuE;IACvE,OAAO,CAAC,GAAG;CA0BZ"}
@@ -81,6 +81,8 @@ export declare class WidgetIndicatorLegend {
81
81
  private collapsed;
82
82
  private toggleKey;
83
83
  private stackKey;
84
+ /** Tells of each row's values box resized: a narrow chart, a longer name beside them. */
85
+ private readonly valuesObserver;
84
86
  constructor(host: HTMLElement, callbacks: IndicatorLegendCallbacks, labels: IndicatorLegendLabels);
85
87
  update(rows: readonly IndicatorLegendRow[], overlay: {
86
88
  left: number;
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetIndicatorLegend.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetIndicatorLegend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WidgetIndicatorLegend.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetIndicatorLegend.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetLayoutsUI.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetLayoutsUI.ts"],"names":[],"mappings":"AAGA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAKpE,MAAM,WAAW,aAAa;IAC5B,2DAA2D;IAC3D,IAAI,EAAE,WAAW,CAAC;IAClB,CAAC,EAAE,UAAU,CAAC;IACd,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,KAAK,IAAI,CAAC;IAC1D,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;IACnC,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACrC;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAMd,OAAO,CAAC,QAAQ,CAAC,OAAO;IAAiB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAL1E,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,SAAS,CAAS;gBAEG,OAAO,EAAE,aAAa,EAAmB,IAAI,EAAE,aAAa;IAoBzF,uEAAuE;IACjE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,6EAA6E;IACvE,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUxC,YAAY,IAAI,IAAI;IAmBpB,YAAY,CAAC,MAAM,GAAE,kBAAkB,GAAG,IAA6B,GAAG,IAAI;IAmB9E,+CAA+C;IAC/C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,kEAAkE;IAC5D,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAsClD,OAAO,IAAI,IAAI;CAMhB"}
1
+ {"version":3,"file":"WidgetLayoutsUI.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetLayoutsUI.ts"],"names":[],"mappings":"AAGA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAKpE,MAAM,WAAW,aAAa;IAC5B,2DAA2D;IAC3D,IAAI,EAAE,WAAW,CAAC;IAClB,CAAC,EAAE,UAAU,CAAC;IACd,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,KAAK,IAAI,CAAC;IAC1D,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;IACnC,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACrC;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAMd,OAAO,CAAC,QAAQ,CAAC,OAAO;IAAiB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAL1E,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,SAAS,CAAS;gBAEG,OAAO,EAAE,aAAa,EAAmB,IAAI,EAAE,aAAa;IAoBzF,uEAAuE;IACjE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,6EAA6E;IACvE,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUxC,YAAY,IAAI,IAAI;IAmBpB,YAAY,CAAC,MAAM,GAAE,kBAAkB,GAAG,IAA6B,GAAG,IAAI;IAmB9E,+CAA+C;IAC/C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,kEAAkE;IAC5D,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAqClD,OAAO,IAAI,IAAI;CAMhB"}
@@ -7,8 +7,16 @@ export interface StatusBarRange {
7
7
  presetLabels?: Partial<Record<RangePreset, string>>;
8
8
  groupLabel: string;
9
9
  goToLabel: string;
10
+ /** The name of the button that holds what the bar has folded away ("More"). */
11
+ moreLabel: string;
10
12
  onPreset: (preset: RangePreset) => void;
11
13
  onGoTo: () => void;
14
+ /**
15
+ * The keys that go to a date now ("Alt+G"), shown beside it in the "more"
16
+ * menu and its tooltip; undefined while they do nothing (switched off, or
17
+ * taken by a key of the host's). Alt+G when not given.
18
+ */
19
+ goToKeys?: () => string | undefined;
12
20
  }
13
21
  /** The clock: the time in the display zone, and the zones to pick from. */
14
22
  export interface StatusBarClock {
@@ -51,7 +59,8 @@ export interface StatusBarScale {
51
59
  * Bottom bar: range presets and "go to date" on the left (when `range` is
52
60
  * given); the market's status, the connection, the clock and the price
53
61
  * scale's switches on the right; hosts' own items after the presets and
54
- * before the market's status.
62
+ * before the market's status. What the bar has no room for folds under
63
+ * "more" (see `fit`).
55
64
  */
56
65
  export declare class WidgetStatusBar {
57
66
  private readonly host;
@@ -67,10 +76,100 @@ export declare class WidgetStatusBar {
67
76
  private scaleBtns;
68
77
  /** The scale as last shown: nothing to rewrite when it is the same. */
69
78
  private scaleShown;
79
+ /** The market's status as last shown: the widget asks every 30 seconds. */
80
+ private marketShown;
81
+ /** The market's status, the connection, the clock and the scale: it keeps its width. */
82
+ private readonly rightEl;
83
+ private rangeEl;
84
+ private presetBtns;
85
+ private moreBtn;
86
+ private goToBtn;
87
+ private rangeMenu;
88
+ private resizeObserver;
89
+ private fitFrame;
90
+ /** Gone: a late font or a frame asked for before then fits nothing. */
91
+ private destroyed;
92
+ /** `extras.label` names the bar, which holds the keyboard itself when nothing in it shows. */
70
93
  constructor(host: HTMLElement, range?: StatusBarRange, extras?: {
71
94
  clock?: StatusBarClock;
72
95
  scale?: StatusBarScale;
96
+ label?: string;
73
97
  });
98
+ /**
99
+ * Fit again whenever the room for the range bar changes: the bar's own
100
+ * width, or what the groups beside it hold (the market's word, a host's
101
+ * item, the scale switches a narrow widget hides). They keep their width,
102
+ * so the range bar alone takes up the difference.
103
+ */
104
+ private watchWidths;
105
+ /** Fit once before the next frame, however many changes came first; never once the bar is gone. */
106
+ private scheduleFit;
107
+ /**
108
+ * Fit the bar to its width. The clock and the rest of the right group keep
109
+ * their width; when the range bar then has too little room, its presets
110
+ * fold under "more" one at a time, from the longest range, and go to date
111
+ * after them (not while the presets, and "more" with them, are switched
112
+ * off). Only when everything has folded and it still doesn't fit does the
113
+ * market's status shorten to its word ("Closed"), and what fits in the
114
+ * room that gives comes back.
115
+ *
116
+ * A refit that changes what is folded closes the "more" menu, whose
117
+ * entries would be stale, and the keyboard stays on the bar when the
118
+ * button it was on hides (see `keepFocus`).
119
+ */
120
+ fit(): void;
121
+ /** The folding and the market's word, as `fit` says; the menu and the keyboard are `fit`'s. */
122
+ private refit;
123
+ /** Whether the bar shows all it holds: the range bar all its buttons, and the right group all of itself. */
124
+ private fits;
125
+ /** Whether the range bar shows all it holds: it clips, so what's past its edge is its overflow. */
126
+ private rangeFits;
127
+ /**
128
+ * Whether the right group ends inside the bar's content edge. It keeps its
129
+ * width, so when the range bar has nothing left to give (its presets and
130
+ * go to date switched off, as `rangeBar: false` does, or no range bar at
131
+ * all) and the bar is still too narrow, it runs past the bar's end: the
132
+ * right edge, the left one right to left.
133
+ *
134
+ * Measured in layout pixels, as `rangeFits` is: the bar is position:
135
+ * relative, so it is the group's offset parent. Boxes on screen are scaled
136
+ * by a container's transform or zoom while the padding is not, so they
137
+ * would put the group past an edge it is inside, and a dialog's scale-in
138
+ * would leave the bar folded with room to spare. A stylesheet of yours
139
+ * that takes the bar's position away measures the group from somewhere
140
+ * else, so it counts as fitting then, rather than shorten the market's word
141
+ * for room the bar has.
142
+ */
143
+ private rightFits;
144
+ private foldedCount;
145
+ /** The range bar's button the keyboard is on: "more" while it is in the menu "more" opened. */
146
+ private rangeFocus;
147
+ /**
148
+ * Keep the keyboard on the range bar after a refit, when it was on
149
+ * `focused` (or in the menu "more" opened, which the refit closed): see
150
+ * `focusAfterRefit`. Another control of the bar, or the bar itself, takes
151
+ * it when nothing there shows, so it never drops to the page.
152
+ */
153
+ private keepFocus;
154
+ /**
155
+ * Where the keyboard goes from `focused` after a refit: it stays on a
156
+ * button that still shows; a preset or go to date that folded hands it to
157
+ * "more"; "more" gone (nothing folded any more, or the presets switched
158
+ * off) hands it to go to date, else to the last preset that shows, else to
159
+ * the first control the rest of the bar shows (a button of yours, the
160
+ * clock, a scale switch), else to the bar.
161
+ */
162
+ private focusAfterRefit;
163
+ /** The first button the bar shows outside the range bar, in its order; null when none does. */
164
+ private firstOtherControl;
165
+ /** The bar holds the keyboard: focusable only until it leaves, so a click on the bar later doesn't take it. */
166
+ private focusBar;
167
+ /** Whether a button of the range bar shows: not folded, not switched off, and "more" only while something is folded. */
168
+ private shows;
169
+ /** What folds, in the order it folds: the presets from the longest range, then go to date. */
170
+ private foldSteps;
171
+ /** Whether `el` is a part of a switch that is off. */
172
+ private isOff;
74
173
  update(state: {
75
174
  connectionState: string;
76
175
  message: string;
@@ -84,18 +183,26 @@ export declare class WidgetStatusBar {
84
183
  mode: PriceScaleMode;
85
184
  auto: boolean;
86
185
  }): void;
87
- /** The market's status (open or closed); hidden for a market around the clock. */
88
- setMarket(state: 'open' | 'closed' | 'always', text: string): void;
186
+ /**
187
+ * The market's status (open or closed); hidden for a market around the
188
+ * clock. `short` ("Closed") shows instead of `text` ("Market closed") on a
189
+ * bar out of room, which leaves `text` to screen readers and the tooltip.
190
+ */
191
+ setMarket(state: 'open' | 'closed' | 'always', text: string, short?: string): void;
89
192
  /** A host's own item: text, or a button when it has `onClick`. */
90
193
  addHostItem(spec: StatusBarItemSpec): HTMLElement;
91
194
  /** The holder of hosts' own items on the left or the right. */
92
195
  hostSlot(side: 'left' | 'right'): HTMLDivElement;
93
196
  destroy(): void;
94
197
  private buildClock;
198
+ /** What the range bar has folded, as a menu over "more": the presets, then go to date; those switched off left out. */
199
+ private toggleRangeMenu;
95
200
  /** The zones over the clock, the one in use ticked. */
96
201
  private toggleZones;
97
202
  private buildScale;
98
203
  private hostGroup;
99
204
  private buildRange;
205
+ /** A button of the range bar that shows an icon, named `label`. */
206
+ private rangeIconBtn;
100
207
  }
101
208
  //# sourceMappingURL=WidgetStatusBar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetStatusBar.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetStatusBar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WidgetStatusBar.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetStatusBar.ts"],"names":[],"mappings":"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"}
@@ -8,12 +8,23 @@ export interface SymbolSearchCallbacks {
8
8
  export type SymbolSearchFn = (query: string, signal: AbortSignal) => Promise<SymbolInfo[]>;
9
9
  /** How long typing must pause before a search function is asked. */
10
10
  export declare const SYMBOL_SEARCH_DEBOUNCE_MS = 150;
11
+ /**
12
+ * The most rows the list draws, the best first; a line under them says how
13
+ * many more typing would narrow. Every row is laid out in the columns all
14
+ * the others share, so a list of thousands would be laid out again on each
15
+ * keystroke.
16
+ */
17
+ export declare const MAX_LISTED_ROWS = 200;
18
+ /** A symbol on offer: its ticker, or what is known of it (a name, kind, exchange, logo). */
19
+ export type SymbolEntry = string | SymbolInfo;
11
20
  /** What the symbol search opens with. */
12
21
  export interface SymbolSearchStart {
13
- /** Listed until something is typed; filtered as it is when there is no `search`. */
14
- symbols: readonly string[];
22
+ /** Listed until something is typed; filtered, by ticker and name, when there is no `search`. */
23
+ symbols: readonly SymbolEntry[];
15
24
  /** The chart's symbol, marked in the list. */
16
25
  current: string;
26
+ /** What the chart knows of `current`: its name and logo, where the symbols given and the feed have none. */
27
+ currentInfo?: SymbolInfo | null;
17
28
  /** A feed's search, asked once typing pauses. */
18
29
  search?: SymbolSearchFn;
19
30
  /** Typed already: the letter that opened it. */
@@ -33,7 +44,7 @@ export interface CompareEntry {
33
44
  }
34
45
  /** What the compare dialog opens with. */
35
46
  export interface CompareStart {
36
- symbols: readonly string[];
47
+ symbols: readonly SymbolEntry[];
37
48
  current: string;
38
49
  search?: SymbolSearchFn;
39
50
  /** The ways to add a symbol, and the one chosen to start with. */
@@ -49,12 +60,20 @@ export interface CompareStart {
49
60
  /**
50
61
  * The symbol search, and the same dialog for adding a symbol to compare.
51
62
  *
52
- * - Without a search function it filters the symbols it was given with a
53
- * cheap subsequence match, good enough for lists in the low thousands.
63
+ * - The symbols it is given are listed until something is typed, named
64
+ * where they came with a SymbolInfo (or the chart knows its own).
65
+ * - Without a search function it filters them by ticker and name with a
66
+ * cheap match, good enough for lists in the low thousands. The list draws
67
+ * the best `MAX_LISTED_ROWS` and says how many more typing would narrow.
54
68
  * - With one (a feed's `searchSymbols`) it asks once typing pauses, cancels a
55
- * query a newer one replaced, and lists names, kinds and exchanges; the
56
- * names it hears of are kept for the list it opens with next time.
57
- * - Results of more than one kind (stocks and crypto, say) can be narrowed to one.
69
+ * query a newer one replaced, and lists names, kinds and exchanges; what it
70
+ * hears is kept for the list it opens with next time.
71
+ * - Whose words a row shows is one rule, wherever it is listed: the feed's,
72
+ * then the ones given for what it left out (a logo, say), then the name
73
+ * and logo the chart knows of its own symbol. Words that aren't text (a
74
+ * JSON feed's numeric code, a null) say nothing.
75
+ * - The rows can be narrowed to a kind (stocks, crypto) and, when they come
76
+ * from two or more, to an exchange.
58
77
  * - Comparing, a pick adds the symbol the way chosen above the list and the
59
78
  * dialog stays; what is compared already is listed first, each removable.
60
79
  *
@@ -71,12 +90,16 @@ export declare class WidgetSymbolSearch {
71
90
  private results;
72
91
  /** Says "Searching…", "Search failed", "No symbols match" to a screen reader. */
73
92
  private live;
74
- private kindsEl;
93
+ /** The heads of the columns, at the top of what scrolls. */
94
+ private columns;
95
+ private filters;
75
96
  private mode;
97
+ /** The tickers given to it, cleaned. */
98
+ private given;
76
99
  private rows;
100
+ /** Whether the rows are the symbols given (filtered or not), not a feed's results. */
101
+ private rowsGiven;
77
102
  private shown;
78
- /** The kind of symbol the list keeps to; null for all. */
79
- private kind;
80
103
  private compared;
81
104
  private way;
82
105
  private selectedIndex;
@@ -86,8 +109,12 @@ export declare class WidgetSymbolSearch {
86
109
  private status;
87
110
  /** Enter came before the results for what was typed: take the top one when they land. */
88
111
  private pickOnResults;
89
- /** Names, kinds and exchanges the search told of, by symbol. */
90
- private readonly known;
112
+ /** What the feed's searches told of each symbol, kept from one opening to the next: its words win. */
113
+ private readonly heard;
114
+ /** What came with the symbols it opened with, over what the chart knows of its own. */
115
+ private givenInfo;
116
+ /** Each name without its marks, made once while open: a name is matched on every keystroke. */
117
+ private foldedNames;
91
118
  private returnFocus;
92
119
  private readonly uid;
93
120
  /** Where the dialog mounts (the widget's overlay layer: themed, and inside it when fullscreen). */
@@ -102,26 +129,49 @@ export declare class WidgetSymbolSearch {
102
129
  isComparing(): boolean;
103
130
  destroy(): void;
104
131
  private begin;
132
+ /**
133
+ * The tickers given, and what came with them. What the chart knows of its
134
+ * own symbol gives only a name and a logo, where none came with it: its
135
+ * kind and exchange may be in other words (a kind in English where the
136
+ * list's are translated, a broker for the exchange), and would add a tab or
137
+ * an exchange that no row is in once the feed has named the symbol.
138
+ */
139
+ private learnGiven;
140
+ /** What a row of `symbol` shows: the feed's words, the ones given for the rest. */
141
+ private infoOf;
105
142
  private build;
143
+ /** The heads of the columns: none over the badges, then symbol, description, type, exchange. */
144
+ private buildColumns;
106
145
  private buildHeader;
107
146
  private buildSearch;
108
147
  /** Comparing: how the next symbol is added. */
109
148
  private buildWay;
110
- /** The symbols it was given, named where a search told of them. */
149
+ /** The symbols it was given, named where they came with a name or a search told of one. */
111
150
  private listGiven;
112
- private given;
113
151
  private filter;
152
+ /** A name without its marks, as matching takes it; made once for each name while open. */
153
+ private foldedName;
114
154
  private scheduleSearch;
115
155
  /** Run the search the pause would have started, now. */
116
156
  private searchNow;
117
157
  private runSearch;
118
158
  private cancelSearch;
119
- /** New rows: the kinds on offer, the list, the keys on the chart's symbol (`atCurrent`) or the top. */
159
+ /**
160
+ * New rows: the kinds and exchanges on offer, the list, the keys on the
161
+ * chart's symbol (`atCurrent`) or the top. The filters hear only of rows
162
+ * that can be listed: comparing, a kind only the chart's own symbol is of
163
+ * would be a tab that lists nothing.
164
+ */
120
165
  private afterResults;
121
- /** The rows on show: of the kind picked, and comparing, not the chart's own symbol. */
166
+ /** How many of the rows on show are listed. */
167
+ private listedCount;
168
+ /** The rows that can be listed: comparing, all but the chart's own symbol. */
169
+ private listableRows;
170
+ /**
171
+ * The rows on show: of the kind and exchange picked. A symbol given that
172
+ * says nothing of its kind or exchange stays: it may be of either.
173
+ */
122
174
  private visibleRows;
123
- /** Chips for the kinds the results come in, when there are two or more. */
124
- private renderKinds;
125
175
  /**
126
176
  * What is compared (comparing, before anything is typed) as a group under
127
177
  * its heading, then the symbols, a listbox of options only, under theirs;
@@ -129,9 +179,12 @@ export declare class WidgetSymbolSearch {
129
179
  */
130
180
  private renderList;
131
181
  private emptyNote;
182
+ /** Under a list cut short, how many more rows there are to narrow by typing; null when none. */
183
+ private moreNote;
132
184
  private heading;
133
185
  private row;
134
- /** A symbol compared already: its name, its colour and way under Description, and a button to take it off. */
186
+ private descriptionCell;
187
+ /** A symbol compared already: its colour where the badges are, its way across the rest, and a button to take it off. */
135
188
  private addedRow;
136
189
  private tag;
137
190
  private markSelection;
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetSymbolSearch.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetSymbolSearch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WidgetSymbolSearch.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetSymbolSearch.ts"],"names":[],"mappings":"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"}
@@ -26,32 +26,80 @@ export declare class WidgetToolbar {
26
26
  private moreMenu;
27
27
  private tfCurrent;
28
28
  private resizeObserver;
29
+ /** Tells of a host's group of buttons resized: a count in a button that grew or shrank. */
30
+ private hostObserver;
29
31
  private moreBtn;
30
32
  private fitFrame;
33
+ /** Gone: a late font or a frame asked for before then fits nothing. */
34
+ private destroyed;
31
35
  private undoBtn;
32
36
  private redoBtn;
33
37
  private trade;
38
+ /** What the layouts button shows now, its state and name: the same again changes nothing. */
39
+ private layoutShown;
40
+ /** The symbol its button shows now: the same again builds nothing. */
41
+ private symbolShown;
34
42
  /**
35
43
  * `layer`: where the toolbar's menus open, over the page (the widget's
36
44
  * overlay layer), so no box around the widget clips them. Without one they
37
45
  * open inside their buttons.
38
46
  */
39
47
  constructor(host: HTMLElement, config: ToolbarConfig, callbacks: ToolbarCallbacks, t: Translator, layer?: (() => HTMLElement) | undefined);
40
- /** Fit once before the next frame, however many changes came first. */
48
+ /** Fit once before the next frame, however many changes came first; never once the toolbar is gone. */
41
49
  private scheduleFit;
42
50
  /**
43
51
  * What a menu opened from `btn` hangs from: the button, or "more" while the
44
- * button is folded under it.
52
+ * button is folded under it. A folded button has no box, so a menu placed
53
+ * from it would open at the widget's corner.
45
54
  */
46
- private anchorOf;
55
+ menuAnchor(btn: HTMLElement): HTMLElement;
47
56
  /**
48
57
  * Fit the toolbar to its width. When everything doesn't fit, the buttons
49
58
  * on the right fold under "more" one at a time, from the right, until the
50
- * rest does; when even that isn't enough, the menus show their icons only
59
+ * rest does; a host's buttons on the left come before them all, so they
60
+ * fold last. When even that isn't enough, the menus show their icons only
51
61
  * and the interval buttons give way to the interval menu, and as many
52
- * buttons as then fit come back.
62
+ * buttons as then fit come back, from the left. Last of all, with nothing
63
+ * left to fold (a long symbol on a phone), the symbol gives way, in
64
+ * `SQUEEZE_STEPS`: its venue ("HYPERLIQUID:xyz:") is cut short to an
65
+ * ellipsis before anything else shrinks, its ticker kept whole while the
66
+ * buttons beside it can give. Each fit measures it whole, so it takes its
67
+ * room back as soon as there is room.
68
+ *
69
+ * A refit that changes what is folded closes the menus hanging from "more"
70
+ * or from a button that folded, whose place is gone, and the keyboard stays
71
+ * on the toolbar when the button it was on hides (see `keepFocus`).
53
72
  */
54
73
  fit(): void;
74
+ /** The folding, as `fit` says; the menus and the keyboard are `fit`'s. */
75
+ private refit;
76
+ /**
77
+ * Whether the toolbar's controls end inside its content box: the padding
78
+ * at its end clear (its left right to left), in its own layout px, as a
79
+ * container's transform or zoom leaves them. Widths are fractional ("more"
80
+ * ending at 1366.19 in a bar 1365 wide): the reach is rounded up to a
81
+ * whole px and the room down, so no share of a pixel hangs past the edge.
82
+ */
83
+ private fits;
84
+ /** What is folded, and whether "more" shows, as one word to tell a refit that changed them. */
85
+ private foldedState;
86
+ /** Close the menus that hang from "more", or from a button now folded: their entries or their place are stale. */
87
+ private closeStaleMenus;
88
+ /** The toolbar's button the keyboard is on: the one a menu hangs from while the keyboard is in the menu. */
89
+ private toolbarFocus;
90
+ /**
91
+ * Keep the keyboard on the toolbar after a refit: on `focused` while it
92
+ * shows; on "more" when it folded; when "more" itself went (everything is
93
+ * back), on the last button that came back, beside where "more" was. A
94
+ * menu still open that holds it keeps it.
95
+ */
96
+ private keepFocus;
97
+ /** The buttons that can fold, in their order: those that fold whole, and those inside what folds (the Trade menu). */
98
+ private overflowButtons;
99
+ /** Whether a toolbar button shows: not hidden, folded or switched off, and "more" only while the toolbar is collapsed or narrow. */
100
+ private shows;
101
+ /** Whether `el`, or what holds it on the toolbar, is part of a switch that is off. */
102
+ private isOff;
55
103
  private build;
56
104
  /** The buttons a narrow toolbar hides, as a menu under `anchor`: those switched off left out. */
57
105
  private toggleMore;
@@ -72,7 +120,12 @@ export declare class WidgetToolbar {
72
120
  setActive(role: string, on: boolean): void;
73
121
  /** Hide the button of `role` while the dock's rail has its own for it (and leave it out of "more"). */
74
122
  setRailed(role: string, railed: boolean): void;
75
- /** The layout open now on its button (`null`: none saved yet), with a dot while it has unsaved changes. */
123
+ /**
124
+ * The layout open now on its button (`null`: none saved yet), with a dot
125
+ * while it has unsaved changes. A new name changes the button's width, not
126
+ * the toolbar's, so no resize tells of it: the toolbar refits, lest "more"
127
+ * be pushed past its end.
128
+ */
76
129
  setLayout(name: string | null, dirty: boolean): void;
77
130
  /** Swap the fullscreen button between enter and exit. */
78
131
  setFullscreen(on: boolean): void;
@@ -90,6 +143,12 @@ export declare class WidgetToolbar {
90
143
  private renderTimeframes;
91
144
  /** Whether the indicators dialog is open, on its button. */
92
145
  setIndicatorsOpen(open: boolean): void;
146
+ /**
147
+ * The symbol on its button, its venue ("BINANCE:") apart from its ticker,
148
+ * the button marked when it has one: a toolbar with no room left cuts the
149
+ * venue short first (`refit`).
150
+ */
151
+ private renderSymbol;
93
152
  update(state: WidgetState): void;
94
153
  private sep;
95
154
  private spacer;
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetToolbar.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetToolbar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WidgetToolbar.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetToolbar.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetTradeMenu.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetTradeMenu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAInD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AA8B5C;;;;GAIG;AACH,qBAAa,eAAe;IAkBxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAnBvB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,OAAO,CAAC,IAAI,CAAkC;IAC9C,+CAA+C;IAC/C,OAAO,CAAC,IAAI,CAAsB;IAElC,mFAAmF;IACnF,MAAM,CAAC,MAAM,CACX,SAAS,EAAE,gBAAgB,EAC3B,CAAC,EAAE,UAAU,EACb,IAAI,EAAE,MAAM,WAAW,EACvB,QAAQ,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,WAAW,GAC1C,eAAe,GAAG,IAAI;IAKzB,OAAO;IAoBP,6DAA6D;IAC7D,IAAI,IAAI,IAAI;IAIZ,+FAA+F;IAC/F,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,GAAG,IAAI;IAOxC,OAAO,IAAI,IAAI;IAKf,4DAA4D;IAC5D,OAAO,CAAC,KAAK;IAKb,mFAAmF;IACnF,OAAO,CAAC,MAAM;CAuBf"}
1
+ {"version":3,"file":"WidgetTradeMenu.d.ts","sourceRoot":"","sources":["../../src/widget/WidgetTradeMenu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAInD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AA2B5C;;;;GAIG;AACH,qBAAa,eAAe;IAkBxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAnBvB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,OAAO,CAAC,IAAI,CAAkC;IAC9C,+CAA+C;IAC/C,OAAO,CAAC,IAAI,CAAsB;IAElC,mFAAmF;IACnF,MAAM,CAAC,MAAM,CACX,SAAS,EAAE,gBAAgB,EAC3B,CAAC,EAAE,UAAU,EACb,IAAI,EAAE,MAAM,WAAW,EACvB,QAAQ,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,WAAW,GAC1C,eAAe,GAAG,IAAI;IAKzB,OAAO;IAoBP,6DAA6D;IAC7D,IAAI,IAAI,IAAI;IAIZ,+FAA+F;IAC/F,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,GAAG,IAAI;IAOxC,OAAO,IAAI,IAAI;IAKf,4DAA4D;IAC5D,OAAO,CAAC,KAAK;IAKb,mFAAmF;IACnF,OAAO,CAAC,MAAM;CAsBf"}
@@ -1,5 +1,8 @@
1
1
  /** Shows a host's button as on or off; a switch says so to assistive tech too. */
2
2
  export declare function setHostButtonActive(element: HTMLButtonElement, on: boolean, toggle: boolean): void;
3
- /** A host's toolbar button's text, its name following ("News: 3"). */
4
- export declare function setHostButtonText(element: HTMLButtonElement, label: string, text: string): void;
3
+ /**
4
+ * A host's toolbar button's text, its name following ("News: 3"). False when
5
+ * it showed that text already: nothing is written again.
6
+ */
7
+ export declare function setHostButtonText(element: HTMLButtonElement, label: string, value: string): boolean;
5
8
  //# sourceMappingURL=hostButtons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hostButtons.d.ts","sourceRoot":"","sources":["../../src/widget/hostButtons.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAGlG;AAED,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAS/F"}
1
+ {"version":3,"file":"hostButtons.d.ts","sourceRoot":"","sources":["../../src/widget/hostButtons.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAGlG;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAcnG"}