@tradingaction/tooltip 2.1.2 → 2.1.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.
@@ -1,11 +1,20 @@
1
1
  import * as React from "react";
2
+ export type IconType = "unicode" | "svg" | "image";
2
3
  export interface IndicatorToolbarIcon {
3
4
  readonly id: "eye" | "settings" | "code" | "delete" | "more";
4
- readonly unicode: string;
5
+ readonly type?: IconType;
6
+ readonly unicode?: string;
7
+ readonly svgPath?: string;
8
+ readonly svgPaths?: string[];
9
+ readonly svgContent?: React.ReactNode;
10
+ readonly imageUrl?: string;
5
11
  readonly onClick: (option: IIndicatorDisplay) => void;
6
12
  readonly size?: number;
7
13
  readonly fillColor?: string;
14
+ readonly strokeColor?: string;
15
+ readonly strokeWidth?: number;
8
16
  readonly title?: string;
17
+ readonly marginLeft?: number;
9
18
  }
10
19
  export interface MultiValueAccessor {
11
20
  readonly label: string;
@@ -44,17 +44,19 @@ class SingleIndicatorDisplay extends React.Component {
44
44
  const effectiveFontFamily = options.fontFamily || fontFamily;
45
45
  const effectiveFontSize = (_a = options.fontSize) !== null && _a !== void 0 ? _a : fontSize;
46
46
  const effectiveFontWeight = (_b = options.fontWeight) !== null && _b !== void 0 ? _b : fontWeight;
47
+ // Calculate space needed for icons when hovered
48
+ const iconSpaceNeeded = isHovered && indicators.length > 0 ? indicators.length * 16 + 10 : 0;
47
49
  // Calculate dimensions based on orientation
48
50
  let baseWidth = 200;
49
51
  let baseHeight = 32;
50
- let expandedWidth = isHovered ? 280 : 200;
52
+ let expandedWidth = isHovered ? 220 : 200;
51
53
  let horizontalContentWidth = 0;
52
54
  let displayNameWidth = 0;
53
55
  if (multiValues && multiValues.length > 0) {
54
56
  if (orientation === "vertical") {
55
57
  // Vertical: height increases, width stays same
56
58
  baseHeight = 32 + multiValues.length * 16;
57
- expandedWidth = isHovered ? 280 : 200;
59
+ expandedWidth = isHovered ? 220 : 200;
58
60
  }
59
61
  else {
60
62
  // Horizontal: calculate actual width based on visible labels and display name
@@ -80,7 +82,11 @@ class SingleIndicatorDisplay extends React.Component {
80
82
  }
81
83
  });
82
84
  baseWidth = 20 + displayNameWidth + horizontalContentWidth; // 20px left padding + name + values
83
- expandedWidth = isHovered ? baseWidth + 100 : baseWidth;
85
+ const iconsWidthWhenHovered = indicators.reduce((s, i) => {
86
+ s += i.marginLeft || 0;
87
+ return s;
88
+ }, 0);
89
+ expandedWidth = isHovered ? baseWidth + (iconsWidthWhenHovered / (indicators.length || 1)) + 80 : baseWidth;
84
90
  baseHeight = 25; // Reduced from 32 for tighter horizontal layout
85
91
  }
86
92
  }
@@ -108,9 +114,9 @@ class SingleIndicatorDisplay extends React.Component {
108
114
  // Horizontal layout - position based on actual content width
109
115
  (() => {
110
116
  const fontSize = effectiveFontSize || 12;
111
- const charWidth = fontSize * 0.55;
112
- const calcDisplayNameWidth = displayName.length * charWidth + 5;
113
- let cumulativeX = 0 + calcDisplayNameWidth; // Start after display name
117
+ const charWidth = fontSize * 0.54;
118
+ const calcDisplayNameWidth = displayName.length * charWidth + 0;
119
+ let cumulativeX = 10 + calcDisplayNameWidth + iconSpaceNeeded; // Start after display name and icons
114
120
  return multiValues.map((multiValue, idx) => {
115
121
  const showLabel = multiValue.showLabel !== undefined ? multiValue.showLabel : (options.showAccessorLabels === true);
116
122
  const x = cumulativeX;
@@ -132,29 +138,63 @@ class SingleIndicatorDisplay extends React.Component {
132
138
  });
133
139
  })()))),
134
140
  isHovered && indicators.length > 0 && (React.createElement("g", null, indicators.map((icon, idx) => {
135
- let iconX;
136
- if (orientation === "horizontal" && multiValues && multiValues.length > 0) {
137
- // Position after calculated content width with spacing
138
- iconX = 20 + displayNameWidth + horizontalContentWidth + 10 + idx * 16;
141
+ const fontSize = effectiveFontSize || 12;
142
+ const charWidth = fontSize * 0.55;
143
+ const displayNameWidth = displayName.length * charWidth + 0;
144
+ const iconType = icon.type || "unicode";
145
+ const iconSize = icon.size || 14;
146
+ const iconX = (icon.marginLeft || 0) + displayNameWidth + idx * 16;
147
+ const iconFill = icon.fillColor || "#9ca3af";
148
+ const iconStroke = icon.strokeColor || icon.fillColor || "#9ca3af";
149
+ const strokeWidth = icon.strokeWidth || 1.5;
150
+ // Render different icon types
151
+ if (iconType === "svg" && (icon.svgPath || icon.svgPaths)) {
152
+ // SVG path icon (single or multiple paths)
153
+ const paths = icon.svgPaths || (icon.svgPath ? [icon.svgPath] : []);
154
+ return (React.createElement("g", { width: iconSize, key: icon.id, onClick: (e) => this.handleIconClick(e, icon) },
155
+ icon.title && React.createElement("title", null, icon.title),
156
+ React.createElement("g", { transform: `translate(${iconX}, ${17 - iconSize / 1.9})`, style: {
157
+ cursor: "pointer",
158
+ pointerEvents: "auto",
159
+ }, onMouseEnter: (e) => {
160
+ const pathElements = e.currentTarget.querySelectorAll("path");
161
+ pathElements.forEach((p) => {
162
+ p.style.fill = "#fff";
163
+ p.style.stroke = "#fff";
164
+ });
165
+ }, onMouseLeave: (e) => {
166
+ const pathElements = e.currentTarget.querySelectorAll("path");
167
+ pathElements.forEach((p) => {
168
+ p.style.fill = iconFill;
169
+ p.style.stroke = iconStroke;
170
+ });
171
+ } },
172
+ React.createElement("svg", { width: iconSize, height: iconSize, viewBox: "0 0 24 24", fill: "none", stroke: iconStroke, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", style: { overflow: "visible" } }, paths.map((pathData, pathIdx) => (React.createElement("path", { key: pathIdx, d: pathData, fill: iconFill, stroke: iconStroke, style: {
173
+ transition: "fill 0.2s ease, stroke 0.2s ease",
174
+ } })))))));
139
175
  }
140
- else if (multiValues && multiValues.length === 0 && !value) {
141
- // Single label only (no value/multiValues) - position close to label
142
- const fontSize = effectiveFontSize || 12;
143
- const charWidth = fontSize * 0.55;
144
- iconX = 10 + displayName.length * charWidth + 10 + idx * 16;
176
+ else if (iconType === "image" && icon.imageUrl) {
177
+ // Image icon
178
+ return (React.createElement("g", { key: icon.id, onClick: (e) => this.handleIconClick(e, icon) },
179
+ icon.title && React.createElement("title", null, icon.title),
180
+ React.createElement("image", { x: iconX - iconSize / 2, y: 17 - iconSize / 2, width: iconSize, height: iconSize, href: icon.imageUrl, style: {
181
+ cursor: "pointer",
182
+ pointerEvents: "auto",
183
+ opacity: 1,
184
+ transition: "opacity 0.2s ease",
185
+ }, onMouseEnter: (e) => (e.target.style.opacity = "0.8"), onMouseLeave: (e) => (e.target.style.opacity = "1") })));
145
186
  }
146
187
  else {
147
- // Position for vertical or single value with data
148
- iconX = 210 + idx * 16;
188
+ // Default: unicode icon
189
+ return (React.createElement("g", { key: icon.id, onClick: (e) => this.handleIconClick(e, icon) },
190
+ icon.title && React.createElement("title", null, icon.title),
191
+ React.createElement("text", { x: iconX, y: 17, fontSize: iconSize, fill: iconFill, style: {
192
+ cursor: "pointer",
193
+ userSelect: "none",
194
+ transition: "fill 0.2s ease",
195
+ pointerEvents: "auto",
196
+ }, onMouseEnter: (e) => (e.target.style.fill = "#fff"), onMouseLeave: (e) => (e.target.style.fill = iconFill) }, icon.unicode)));
149
197
  }
150
- return (React.createElement("g", { key: icon.id, onClick: (e) => this.handleIconClick(e, icon) },
151
- icon.title && React.createElement("title", null, icon.title),
152
- React.createElement("text", { x: iconX, y: 17, fontSize: icon.size || 14, fill: icon.fillColor || "#9ca3af", style: {
153
- cursor: "pointer",
154
- userSelect: "none",
155
- transition: "fill 0.2s ease",
156
- pointerEvents: "auto",
157
- }, onMouseEnter: (e) => (e.target.style.fill = "#fff"), onMouseLeave: (e) => (e.target.style.fill = icon.fillColor || "#9ca3af") }, icon.unicode)));
158
198
  })))));
159
199
  }
160
200
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IndicatorDisplayTooltip.js","sourceRoot":"","sources":["../src/IndicatorDisplayTooltip.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IndicatorDisplayTooltip.js","sourceRoot":"","sources":["../src/IndicatorDisplayTooltip.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tradingaction/tooltip",
3
- "version": "2.1.2",
3
+ "version": "2.1.4",
4
4
  "description": "Tooltips for react-financial-charts",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -8,8 +8,7 @@
8
8
  "main": "./lib/index.js",
9
9
  "typings": "./lib/index.d.ts",
10
10
  "files": [
11
- "lib",
12
- "src"
11
+ "lib"
13
12
  ],
14
13
  "sideEffects": false,
15
14
  "author": "Reactive Markets",
@@ -38,7 +37,7 @@
38
37
  "watch": "tsc -p tsconfig.json --watch --preserveWatchOutput"
39
38
  },
40
39
  "dependencies": {
41
- "@tradingaction/core": "^2.1.1",
40
+ "@tradingaction/core": "^2.1.2",
42
41
  "d3-array": "^2.9.1",
43
42
  "d3-format": "^2.0.0",
44
43
  "d3-time-format": "^3.0.0"
@@ -47,5 +46,5 @@
47
46
  "react": "^16.0.0 || ^17.0.0 || ^18.0.0",
48
47
  "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0"
49
48
  },
50
- "gitHead": "7491d9931380aafbdf99dfbdb06e1e2705c99fb9"
49
+ "gitHead": "041501295c593d59bd64826d9070b5bba56ac78d"
51
50
  }
@@ -1,99 +0,0 @@
1
- import { functor, GenericChartComponent, last } from "@tradingaction/core";
2
- import { format } from "d3-format";
3
- import * as React from "react";
4
- import { ToolTipText } from "./ToolTipText";
5
- import { ToolTipTSpanLabel } from "./ToolTipTSpanLabel";
6
-
7
- export interface BollingerBandTooltipProps {
8
- readonly className?: string;
9
- readonly displayFormat: (value: number) => string;
10
- readonly displayInit?: string;
11
- readonly displayValuesFor?: (props: BollingerBandTooltipProps, moreProps: any) => any;
12
- readonly fontFamily?: string;
13
- readonly fontSize?: number;
14
- readonly fontWeight?: number;
15
- readonly labelFill?: string;
16
- readonly labelFontWeight?: number;
17
- readonly onClick?: (event: React.MouseEvent) => void;
18
- readonly options: {
19
- movingAverageType: string;
20
- multiplier: number;
21
- sourcePath: string;
22
- windowSize: number;
23
- };
24
- readonly origin?: [number, number] | ((width: number, height: number) => [number, number]);
25
- readonly textFill?: string;
26
- readonly yAccessor?: (data: any) => { bottom: number; middle: number; top: number };
27
- }
28
-
29
- export class BollingerBandTooltip extends React.Component<BollingerBandTooltipProps> {
30
- public static defaultProps = {
31
- className: "react-financial-charts-tooltip react-financial-charts-bollingerband-tooltip",
32
- displayFormat: format(".2f"),
33
- displayValuesFor: (_: any, props: any) => props.currentItem,
34
- displayInit: "n/a",
35
- origin: [8, 8],
36
- yAccessor: (data: any) => data.bb,
37
- };
38
-
39
- public render() {
40
- return <GenericChartComponent clip={false} svgDraw={this.renderSVG} drawOn={["mousemove"]} />;
41
- }
42
-
43
- private readonly renderSVG = (moreProps: any) => {
44
- const {
45
- onClick,
46
- displayFormat,
47
- yAccessor = BollingerBandTooltip.defaultProps.yAccessor,
48
- options,
49
- origin: originProp,
50
- textFill,
51
- labelFill,
52
- labelFontWeight,
53
- className,
54
- displayValuesFor = BollingerBandTooltip.defaultProps.displayValuesFor,
55
- displayInit,
56
- fontFamily,
57
- fontSize,
58
- fontWeight,
59
- } = this.props;
60
-
61
- const {
62
- chartConfig: { width, height },
63
- fullData,
64
- } = moreProps;
65
-
66
- const currentItem = displayValuesFor(this.props, moreProps) ?? last(fullData);
67
-
68
- let top = displayInit;
69
- let middle = displayInit;
70
- let bottom = displayInit;
71
-
72
- if (currentItem !== undefined) {
73
- const item = yAccessor(currentItem);
74
- if (item !== undefined) {
75
- top = displayFormat(item.top);
76
- middle = displayFormat(item.middle);
77
- bottom = displayFormat(item.bottom);
78
- }
79
- }
80
-
81
- const origin = functor(originProp);
82
- const [x, y] = origin(width, height);
83
-
84
- const { sourcePath, windowSize, multiplier, movingAverageType } = options;
85
- const tooltipLabel = `BB(${sourcePath}, ${windowSize}, ${multiplier}, ${movingAverageType}): `;
86
- const tooltipValue = `${top}, ${middle}, ${bottom}`;
87
-
88
- return (
89
- <g transform={`translate(${x}, ${y})`} className={className} onClick={onClick}>
90
- <ToolTipText x={0} y={0} fontFamily={fontFamily} fontSize={fontSize} fontWeight={fontWeight}>
91
- <ToolTipTSpanLabel fill={labelFill} fontWeight={labelFontWeight}>
92
- {tooltipLabel}
93
- </ToolTipTSpanLabel>
94
- <tspan fill={textFill}>{tooltipValue}</tspan>
95
- </ToolTipText>
96
- </g>
97
- );
98
- };
99
- }
@@ -1,152 +0,0 @@
1
- import { GenericChartComponent, last } from "@tradingaction/core";
2
- import { format } from "d3-format";
3
- import * as React from "react";
4
- import { layouts, SingleTooltip } from "./SingleTooltip";
5
- import { ToolTipText } from "./ToolTipText";
6
-
7
- export interface GroupTooltipProps {
8
- readonly className?: string;
9
- readonly fontFamily?: string;
10
- readonly fontSize?: number;
11
- readonly fontWeight?: number;
12
- readonly displayFormat: (value: number) => string;
13
- readonly displayInit?: string;
14
- readonly displayValuesFor: (props: GroupTooltipProps, moreProps: any) => any;
15
- readonly layout: layouts;
16
- readonly onClick?: (event: React.MouseEvent, details: any) => void;
17
- readonly options: {
18
- labelFill?: string;
19
- yLabel: string;
20
- yAccessor: (data: any) => number;
21
- valueFill?: string;
22
- withShape?: boolean;
23
- }[];
24
- readonly origin: [number, number];
25
- readonly position?: "topRight" | "bottomLeft" | "bottomRight";
26
- readonly verticalSize?: number; // "verticalSize" only be used, if layout is "vertical", "verticalRows".
27
- readonly width?: number; // "width" only be used, if layout is "horizontal" or "horizontalRows".
28
- }
29
-
30
- export class GroupTooltip extends React.Component<GroupTooltipProps> {
31
- public static defaultProps = {
32
- className: "react-financial-charts-tooltip react-financial-charts-group-tooltip",
33
- layout: "horizontal",
34
- displayFormat: format(".2f"),
35
- displayInit: "",
36
- displayValuesFor: (_: any, props: any) => props.currentItem,
37
- origin: [0, 0],
38
- width: 60,
39
- verticalSize: 13,
40
- };
41
-
42
- public render() {
43
- return <GenericChartComponent clip={false} svgDraw={this.renderSVG} drawOn={["mousemove"]} />;
44
- }
45
-
46
- private readonly getPosition = (moreProps: any) => {
47
- const { position } = this.props;
48
- const { height, width } = moreProps.chartConfig;
49
-
50
- const dx = 20;
51
- const dy = 40;
52
- let textAnchor: "start" | "middle" | "end" | "inherit" | undefined;
53
- let xyPos: (number | null)[] | null = null;
54
-
55
- if (position !== undefined) {
56
- switch (position) {
57
- case "topRight":
58
- xyPos = [width - dx, null];
59
- textAnchor = "end";
60
- break;
61
- case "bottomLeft":
62
- xyPos = [null, height - dy];
63
- break;
64
- case "bottomRight":
65
- xyPos = [width - dx, height - dy];
66
- textAnchor = "end";
67
- break;
68
- default:
69
- xyPos = [null, null];
70
- }
71
- } else {
72
- xyPos = [null, null];
73
- }
74
-
75
- return { xyPos, textAnchor };
76
- };
77
-
78
- private readonly renderSVG = (moreProps: any) => {
79
- const { chartId, fullData } = moreProps;
80
-
81
- const {
82
- className,
83
- displayInit = GroupTooltip.defaultProps.displayInit,
84
- displayValuesFor,
85
- onClick,
86
- width = 60,
87
- verticalSize = 13,
88
- fontFamily,
89
- fontSize,
90
- fontWeight,
91
- layout,
92
- origin,
93
- displayFormat,
94
- options,
95
- } = this.props;
96
-
97
- const currentItem = displayValuesFor(this.props, moreProps) ?? last(fullData);
98
-
99
- const { xyPos, textAnchor } = this.getPosition(moreProps);
100
-
101
- const xPos = xyPos != null && xyPos[0] != null ? xyPos[0] : origin[0];
102
- const yPos = xyPos != null && xyPos[1] != null ? xyPos[1] : origin[1];
103
-
104
- const singleTooltip = options.map((each, idx) => {
105
- const yValue = currentItem && each.yAccessor(currentItem);
106
- const yDisplayValue = yValue ? displayFormat(yValue) : displayInit;
107
-
108
- const orig: () => [number, number] = () => {
109
- if (layout === "horizontal" || layout === "horizontalRows") {
110
- return [width * idx, 0];
111
- }
112
- if (layout === "vertical") {
113
- return [0, verticalSize * idx];
114
- }
115
- if (layout === "verticalRows") {
116
- return [0, verticalSize * 2.3 * idx];
117
- }
118
- return [0, 0];
119
- };
120
-
121
- return (
122
- <SingleTooltip
123
- key={idx}
124
- layout={layout}
125
- origin={orig()}
126
- yLabel={each.yLabel}
127
- yValue={yDisplayValue}
128
- options={each}
129
- forChart={chartId}
130
- onClick={onClick}
131
- fontFamily={fontFamily}
132
- fontSize={fontSize}
133
- labelFill={each.labelFill}
134
- valueFill={each.valueFill}
135
- withShape={each.withShape}
136
- />
137
- );
138
- });
139
-
140
- return (
141
- <g transform={`translate(${xPos}, ${yPos})`} className={className} textAnchor={textAnchor}>
142
- {layout === "horizontalInline" ? (
143
- <ToolTipText x={0} y={0} fontFamily={fontFamily} fontSize={fontSize} fontWeight={fontWeight}>
144
- {singleTooltip}
145
- </ToolTipText>
146
- ) : (
147
- singleTooltip
148
- )}
149
- </g>
150
- );
151
- };
152
- }