@selfdecode/sd-component-library 4.0.118 → 4.0.119-test2
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/lib/sd-component-library100.js +2 -2
- package/lib/sd-component-library101.js +3 -3
- package/lib/sd-component-library102.js +2 -2
- package/lib/sd-component-library103.js +3 -3
- package/lib/sd-component-library114.js +1 -1
- package/lib/sd-component-library119.js +1 -1
- package/lib/sd-component-library120.js +2 -2
- package/lib/sd-component-library122.js +1 -1
- package/lib/sd-component-library128.js +1 -1
- package/lib/sd-component-library129.js +1 -1
- package/lib/sd-component-library131.js +1 -1
- package/lib/sd-component-library16.js +1 -1
- package/lib/sd-component-library174.js +26 -22
- package/lib/sd-component-library174.js.map +1 -1
- package/lib/sd-component-library175.js +1 -1
- package/lib/sd-component-library198.js +3 -3
- package/lib/sd-component-library202.js +2 -57
- package/lib/sd-component-library202.js.map +1 -1
- package/lib/sd-component-library203.js +30 -3
- package/lib/sd-component-library203.js.map +1 -1
- package/lib/sd-component-library204.js +598 -24
- package/lib/sd-component-library204.js.map +1 -1
- package/lib/sd-component-library205.js +3 -19
- package/lib/sd-component-library205.js.map +1 -1
- package/lib/sd-component-library206.js +57 -5
- package/lib/sd-component-library206.js.map +1 -1
- package/lib/sd-component-library207.js +25 -5
- package/lib/sd-component-library207.js.map +1 -1
- package/lib/sd-component-library208.js +19 -2
- package/lib/sd-component-library208.js.map +1 -1
- package/lib/sd-component-library209.js +5 -30
- package/lib/sd-component-library209.js.map +1 -1
- package/lib/sd-component-library210.js +5 -599
- package/lib/sd-component-library210.js.map +1 -1
- package/lib/sd-component-library211.js +21 -18
- package/lib/sd-component-library211.js.map +1 -1
- package/lib/sd-component-library212.js +3 -64
- package/lib/sd-component-library212.js.map +1 -1
- package/lib/sd-component-library213.js +3 -23
- package/lib/sd-component-library213.js.map +1 -1
- package/lib/sd-component-library214.js +62 -19
- package/lib/sd-component-library214.js.map +1 -1
- package/lib/sd-component-library215.js +23 -3
- package/lib/sd-component-library215.js.map +1 -1
- package/lib/sd-component-library216.js +40 -3
- package/lib/sd-component-library216.js.map +1 -1
- package/lib/sd-component-library217.js +129 -3
- package/lib/sd-component-library217.js.map +1 -1
- package/lib/sd-component-library218.js +13 -31
- package/lib/sd-component-library218.js.map +1 -1
- package/lib/sd-component-library219.js +3 -19
- package/lib/sd-component-library219.js.map +1 -1
- package/lib/sd-component-library220.js +51 -19
- package/lib/sd-component-library220.js.map +1 -1
- package/lib/sd-component-library221.js +12 -26
- package/lib/sd-component-library221.js.map +1 -1
- package/lib/sd-component-library222.js +3 -33
- package/lib/sd-component-library222.js.map +1 -1
- package/lib/sd-component-library223.js +3 -3
- package/lib/sd-component-library223.js.map +1 -1
- package/lib/sd-component-library224.js +65 -64
- package/lib/sd-component-library224.js.map +1 -1
- package/lib/sd-component-library225.js +3 -43
- package/lib/sd-component-library225.js.map +1 -1
- package/lib/sd-component-library226.js +45 -42
- package/lib/sd-component-library226.js.map +1 -1
- package/lib/sd-component-library227.js +17 -13
- package/lib/sd-component-library227.js.map +1 -1
- package/lib/sd-component-library228.js +17 -20
- package/lib/sd-component-library228.js.map +1 -1
- package/lib/sd-component-library229.js +3 -109
- package/lib/sd-component-library229.js.map +1 -1
- package/lib/sd-component-library230.js +31 -47
- package/lib/sd-component-library230.js.map +1 -1
- package/lib/sd-component-library231.js +19 -24
- package/lib/sd-component-library231.js.map +1 -1
- package/lib/sd-component-library232.js +19 -52
- package/lib/sd-component-library232.js.map +1 -1
- package/lib/sd-component-library233.js +27 -47
- package/lib/sd-component-library233.js.map +1 -1
- package/lib/sd-component-library234.js +30 -72
- package/lib/sd-component-library234.js.map +1 -1
- package/lib/sd-component-library235.js +3 -129
- package/lib/sd-component-library235.js.map +1 -1
- package/lib/sd-component-library236.js +62 -45
- package/lib/sd-component-library236.js.map +1 -1
- package/lib/sd-component-library237.js +42 -7
- package/lib/sd-component-library237.js.map +1 -1
- package/lib/sd-component-library238.js +43 -41
- package/lib/sd-component-library238.js.map +1 -1
- package/lib/sd-component-library239.js +13 -27
- package/lib/sd-component-library239.js.map +1 -1
- package/lib/sd-component-library24.js +2 -2
- package/lib/sd-component-library240.js +128 -20
- package/lib/sd-component-library240.js.map +1 -1
- package/lib/sd-component-library241.js +47 -20
- package/lib/sd-component-library241.js.map +1 -1
- package/lib/sd-component-library242.js +8 -2
- package/lib/sd-component-library242.js.map +1 -1
- package/lib/sd-component-library244.js +21 -40
- package/lib/sd-component-library244.js.map +1 -1
- package/lib/sd-component-library245.js +108 -128
- package/lib/sd-component-library245.js.map +1 -1
- package/lib/sd-component-library246.js +47 -13
- package/lib/sd-component-library246.js.map +1 -1
- package/lib/sd-component-library247.js +24 -14
- package/lib/sd-component-library247.js.map +1 -1
- package/lib/sd-component-library248.js +53 -3
- package/lib/sd-component-library248.js.map +1 -1
- package/lib/sd-component-library249.js +21 -3
- package/lib/sd-component-library249.js.map +1 -1
- package/lib/sd-component-library25.js +2 -2
- package/lib/sd-component-library250.js +20 -3
- package/lib/sd-component-library250.js.map +1 -1
- package/lib/sd-component-library251.js +45 -49
- package/lib/sd-component-library251.js.map +1 -1
- package/lib/sd-component-library252.js +72 -62
- package/lib/sd-component-library252.js.map +1 -1
- package/lib/sd-component-library253.js +41 -3
- package/lib/sd-component-library253.js.map +1 -1
- package/lib/sd-component-library254.js +27 -46
- package/lib/sd-component-library254.js.map +1 -1
- package/lib/sd-component-library255.js +2 -17
- package/lib/sd-component-library255.js.map +1 -1
- package/lib/sd-component-library256.js +6 -6
- package/lib/sd-component-library26.js +1 -1
- package/lib/sd-component-library264.js +30 -51
- package/lib/sd-component-library264.js.map +1 -1
- package/lib/sd-component-library265.js +51 -30
- package/lib/sd-component-library265.js.map +1 -1
- package/lib/sd-component-library266.js +1 -1
- package/lib/sd-component-library276.js +49 -51
- package/lib/sd-component-library276.js.map +1 -1
- package/lib/sd-component-library277.js +48 -87
- package/lib/sd-component-library277.js.map +1 -1
- package/lib/sd-component-library278.js +52 -54
- package/lib/sd-component-library278.js.map +1 -1
- package/lib/sd-component-library279.js +91 -48
- package/lib/sd-component-library279.js.map +1 -1
- package/lib/sd-component-library282.js +2 -3
- package/lib/sd-component-library282.js.map +1 -1
- package/lib/sd-component-library283.js +2 -3
- package/lib/sd-component-library283.js.map +1 -1
- package/lib/sd-component-library284.js +70 -3
- package/lib/sd-component-library284.js.map +1 -1
- package/lib/sd-component-library285.js +102 -6
- package/lib/sd-component-library285.js.map +1 -1
- package/lib/sd-component-library286.js +106 -2
- package/lib/sd-component-library286.js.map +1 -1
- package/lib/sd-component-library287.js +10 -2
- package/lib/sd-component-library287.js.map +1 -1
- package/lib/sd-component-library288.js +6 -10
- package/lib/sd-component-library288.js.map +1 -1
- package/lib/sd-component-library289.js +2 -70
- package/lib/sd-component-library289.js.map +1 -1
- package/lib/sd-component-library290.js +35 -101
- package/lib/sd-component-library290.js.map +1 -1
- package/lib/sd-component-library291.js +14 -106
- package/lib/sd-component-library291.js.map +1 -1
- package/lib/sd-component-library292.js +2 -2
- package/lib/sd-component-library293.js +8 -36
- package/lib/sd-component-library293.js.map +1 -1
- package/lib/sd-component-library294.js +328 -14
- package/lib/sd-component-library294.js.map +1 -1
- package/lib/sd-component-library295.js +51 -2
- package/lib/sd-component-library295.js.map +1 -1
- package/lib/sd-component-library296.js +3 -8
- package/lib/sd-component-library296.js.map +1 -1
- package/lib/sd-component-library297.js +3 -328
- package/lib/sd-component-library297.js.map +1 -1
- package/lib/sd-component-library298.js +3 -51
- package/lib/sd-component-library298.js.map +1 -1
- package/lib/sd-component-library300.js +1 -1
- package/lib/sd-component-library301.js +1 -1
- package/lib/sd-component-library306.js +2 -9
- package/lib/sd-component-library306.js.map +1 -1
- package/lib/sd-component-library307.js +2 -5
- package/lib/sd-component-library307.js.map +1 -1
- package/lib/sd-component-library308.js +8 -3
- package/lib/sd-component-library308.js.map +1 -1
- package/lib/sd-component-library309.js +5 -19
- package/lib/sd-component-library309.js.map +1 -1
- package/lib/sd-component-library310.js +4 -3
- package/lib/sd-component-library310.js.map +1 -1
- package/lib/sd-component-library311.js +19 -2
- package/lib/sd-component-library311.js.map +1 -1
- package/lib/sd-component-library312.js +3 -2
- package/lib/sd-component-library312.js.map +1 -1
- package/lib/sd-component-library314.js +51 -86
- package/lib/sd-component-library314.js.map +1 -1
- package/lib/sd-component-library315.js +25 -50
- package/lib/sd-component-library315.js.map +1 -1
- package/lib/sd-component-library316.js +88 -20
- package/lib/sd-component-library316.js.map +1 -1
- package/lib/sd-component-library317.js +51 -5
- package/lib/sd-component-library317.js.map +1 -1
- package/lib/sd-component-library318.js +5 -4
- package/lib/sd-component-library318.js.map +1 -1
- package/lib/sd-component-library319.js +23 -33
- package/lib/sd-component-library319.js.map +1 -1
- package/lib/sd-component-library320.js +3 -57
- package/lib/sd-component-library320.js.map +1 -1
- package/lib/sd-component-library321.js +34 -25
- package/lib/sd-component-library321.js.map +1 -1
- package/lib/sd-component-library323.js +28 -89
- package/lib/sd-component-library323.js.map +1 -1
- package/lib/sd-component-library324.js +17 -25
- package/lib/sd-component-library324.js.map +1 -1
- package/lib/sd-component-library325.js +89 -20
- package/lib/sd-component-library325.js.map +1 -1
- package/lib/sd-component-library50.js +1 -1
- package/lib/sd-component-library51.js +1 -1
- package/lib/sd-component-library53.js +3 -3
- package/lib/sd-component-library54.js +2 -2
- package/lib/sd-component-library55.js +2 -2
- package/lib/sd-component-library59.js +49 -45
- package/lib/sd-component-library59.js.map +1 -1
- package/lib/sd-component-library6.js +1 -1
- package/lib/sd-component-library62.js +1 -1
- package/lib/sd-component-library63.js +2 -2
- package/lib/sd-component-library64.js +5 -5
- package/lib/sd-component-library65.js +1 -1
- package/lib/sd-component-library66.js +2 -2
- package/lib/sd-component-library67.js +1 -1
- package/lib/sd-component-library7.js +1 -1
- package/lib/sd-component-library72.js +2 -2
- package/lib/sd-component-library74.js +3 -3
- package/lib/sd-component-library76.js +2 -2
- package/lib/sd-component-library77.js +3 -3
- package/lib/sd-component-library78.js +1 -1
- package/lib/sd-component-library79.js +1 -1
- package/lib/sd-component-library81.js +1 -1
- package/lib/sd-component-library82.js +1 -1
- package/lib/sd-component-library88.js +6 -6
- package/lib/sd-component-library89.js +2 -2
- package/lib/sd-component-library90.js +1 -1
- package/lib/sd-component-library91.js +5 -5
- package/lib/sd-component-library92.js +1 -1
- package/lib/sd-component-library94.js +6 -6
- package/lib/sd-component-library95.js +1 -1
- package/lib/sd-component-library96.js +7 -7
- package/lib/sd-component-library97.js +1 -1
- package/package.json +1 -1
|
@@ -1,24 +1,132 @@
|
|
|
1
|
-
import { j as
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
import { j as e } from "./sd-component-library198.js";
|
|
2
|
+
import U from "react";
|
|
3
|
+
import { isValueInRange as Z, inValueHigherThanRange as F, getCoordinateForArc as d, getInnerX as $, getInnerY as tt, degToRad as L } from "./sd-component-library93.js";
|
|
4
|
+
import { BaseOutlineArc as X } from "./sd-component-library319.js";
|
|
5
|
+
import { OutlineMeterLabelPointer as O } from "./sd-component-library247.js";
|
|
6
|
+
const st = U.forwardRef(
|
|
7
|
+
(D, M) => {
|
|
8
|
+
const {
|
|
9
|
+
start: n,
|
|
10
|
+
end: r,
|
|
11
|
+
color: x,
|
|
12
|
+
bounds: R,
|
|
13
|
+
diameter: o,
|
|
14
|
+
arc: v,
|
|
15
|
+
distanceBetweenRanges: l,
|
|
16
|
+
totalRanges: y,
|
|
17
|
+
value: g,
|
|
18
|
+
gaugeWidth: s,
|
|
19
|
+
segmented: f,
|
|
20
|
+
idx: m,
|
|
21
|
+
pointStrokeWidth: I,
|
|
22
|
+
innerPointRadius: T,
|
|
23
|
+
distanceFromRanges: b,
|
|
24
|
+
label: w,
|
|
25
|
+
labelPosition: V,
|
|
26
|
+
hideLabels: E,
|
|
27
|
+
connected: _
|
|
28
|
+
} = D, S = "#CCD0DB", A = v - (y - 1) * l, H = A * (r - n), Y = Z(g, n, r, R), q = (360 - v) / 2, t = o / 2, a = q + l * m + A * n, C = _ && F(g, r, R), i = a + A * (r - n) + (C ? l : 0), { x: P, y: j } = d(
|
|
29
|
+
t,
|
|
30
|
+
a
|
|
31
|
+
), { x: W, y: k } = d(
|
|
32
|
+
t,
|
|
33
|
+
i
|
|
34
|
+
), u = V || m === 0 ? "left" : m === y - 1 ? "right" : "top";
|
|
35
|
+
if (f || !Y) {
|
|
36
|
+
const J = f && Y || !f && F(g, r, R) ? x : S, B = C ? i - l : i, { y: K } = d(
|
|
37
|
+
t,
|
|
38
|
+
B
|
|
39
|
+
), { x: N, y: Q } = d(
|
|
40
|
+
t,
|
|
41
|
+
(a + B) / 2
|
|
42
|
+
);
|
|
43
|
+
return /* @__PURE__ */ e.jsxs("g", { children: [
|
|
44
|
+
/* @__PURE__ */ e.jsx(
|
|
45
|
+
X,
|
|
46
|
+
{
|
|
47
|
+
startX: P,
|
|
48
|
+
startY: j,
|
|
49
|
+
endX: W,
|
|
50
|
+
endY: k,
|
|
51
|
+
startAlpha: a,
|
|
52
|
+
endAlpha: i,
|
|
53
|
+
color: J,
|
|
54
|
+
radius: t,
|
|
55
|
+
width: s
|
|
56
|
+
}
|
|
57
|
+
),
|
|
58
|
+
!E && w && /* @__PURE__ */ e.jsx(
|
|
59
|
+
O,
|
|
60
|
+
{
|
|
61
|
+
diameter: o,
|
|
62
|
+
position: u,
|
|
63
|
+
distanceFromRanges: b,
|
|
64
|
+
isInRange: Y,
|
|
65
|
+
...u === "right" && j > o / 2 || u === "left" && K > o / 2 ? {
|
|
66
|
+
rangeX: N,
|
|
67
|
+
rangeY: Q
|
|
68
|
+
} : void 0
|
|
69
|
+
}
|
|
70
|
+
)
|
|
71
|
+
] });
|
|
18
72
|
}
|
|
19
|
-
|
|
20
|
-
|
|
73
|
+
const c = a + (g - n) / (r - n) * H, { x: h, y: p } = d(t, c), z = $(h, L(c), s), G = tt(p, L(c), s);
|
|
74
|
+
return /* @__PURE__ */ e.jsxs("g", { children: [
|
|
75
|
+
/* @__PURE__ */ e.jsx(
|
|
76
|
+
X,
|
|
77
|
+
{
|
|
78
|
+
startX: P,
|
|
79
|
+
startY: j,
|
|
80
|
+
endX: h,
|
|
81
|
+
endY: p,
|
|
82
|
+
startAlpha: a,
|
|
83
|
+
endAlpha: c,
|
|
84
|
+
color: x,
|
|
85
|
+
radius: t,
|
|
86
|
+
width: s,
|
|
87
|
+
roundEnd: !1
|
|
88
|
+
}
|
|
89
|
+
),
|
|
90
|
+
/* @__PURE__ */ e.jsx(
|
|
91
|
+
X,
|
|
92
|
+
{
|
|
93
|
+
startX: h,
|
|
94
|
+
startY: p,
|
|
95
|
+
endX: W,
|
|
96
|
+
endY: k,
|
|
97
|
+
startAlpha: c,
|
|
98
|
+
endAlpha: i,
|
|
99
|
+
color: S,
|
|
100
|
+
radius: t,
|
|
101
|
+
width: s,
|
|
102
|
+
roundStart: !1
|
|
103
|
+
}
|
|
104
|
+
),
|
|
105
|
+
/* @__PURE__ */ e.jsx(
|
|
106
|
+
"circle",
|
|
107
|
+
{
|
|
108
|
+
cx: (h + z) / 2,
|
|
109
|
+
cy: (p + G) / 2,
|
|
110
|
+
r: I + T,
|
|
111
|
+
strokeWidth: I,
|
|
112
|
+
stroke: x,
|
|
113
|
+
fill: "white",
|
|
114
|
+
ref: M
|
|
115
|
+
}
|
|
116
|
+
),
|
|
117
|
+
!E && w && /* @__PURE__ */ e.jsx(
|
|
118
|
+
O,
|
|
119
|
+
{
|
|
120
|
+
diameter: o,
|
|
121
|
+
isInRange: !0,
|
|
122
|
+
position: u,
|
|
123
|
+
distanceFromRanges: b
|
|
124
|
+
}
|
|
125
|
+
)
|
|
126
|
+
] });
|
|
127
|
+
}
|
|
128
|
+
);
|
|
21
129
|
export {
|
|
22
|
-
|
|
130
|
+
st as OutlineMeterRange
|
|
23
131
|
};
|
|
24
132
|
//# sourceMappingURL=sd-component-library240.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-component-library240.js","sources":["../src/components/meters/
|
|
1
|
+
{"version":3,"file":"sd-component-library240.js","sources":["../src/components/meters/outline-meter/partials/outline-meter-range/outline-meter-range.tsx"],"sourcesContent":["import React from \"react\";\n\nimport {\n degToRad,\n getCoordinateForArc,\n getInnerX,\n getInnerY,\n inValueHigherThanRange,\n isValueInRange,\n} from \"../../utils\";\nimport { BaseOutlineArc } from \"../base-outline-arc\";\nimport { OutlineMeterLabelPointer } from \"../outline-meter-label-pointer\";\nimport { OutlineMeterRangeProps as Props } from \"./interfaces\";\n\nexport const OutlineMeterRange = React.forwardRef<SVGCircleElement, Props>(\n (props, pointRef) => {\n const {\n start,\n end,\n color,\n bounds,\n diameter,\n arc,\n distanceBetweenRanges,\n totalRanges,\n value,\n gaugeWidth,\n segmented,\n idx,\n pointStrokeWidth,\n innerPointRadius,\n distanceFromRanges,\n label,\n labelPosition,\n hideLabels,\n connected,\n } = props;\n\n const grey = \"#CCD0DB\";\n\n /* Arc value (in degrees) used for all ranges. */\n const arcForRanges = arc - (totalRanges - 1) * distanceBetweenRanges;\n\n /* Arc value for the current range. */\n const rangeArc = arcForRanges * (end - start);\n const valueWithinRange = isValueInRange(value, start, end, bounds);\n\n const arcStart = (360 - arc) / 2; // deg\n\n const radius = diameter / 2;\n\n const rangeArcStart =\n arcStart + distanceBetweenRanges * idx + arcForRanges * start;\n const needConnection =\n connected && inValueHigherThanRange(value, end, bounds);\n const rangeArcEnd =\n rangeArcStart +\n arcForRanges * (end - start) +\n (needConnection ? distanceBetweenRanges : 0);\n\n const { x: rangeStartX, y: rangeStartY } = getCoordinateForArc(\n radius,\n rangeArcStart\n );\n const { x: rangeEndX, y: rangeEndY } = getCoordinateForArc(\n radius,\n rangeArcEnd\n );\n\n const calculatedLabelPosition =\n labelPosition || idx === 0\n ? \"left\"\n : idx === totalRanges - 1\n ? \"right\"\n : \"top\";\n\n /* When range will be filled completely. */\n if (segmented || !valueWithinRange) {\n const fillColor =\n (segmented && valueWithinRange) ||\n (!segmented && inValueHigherThanRange(value, end, bounds))\n ? color\n : grey;\n\n const adjustedRangeArcEnd = needConnection\n ? rangeArcEnd - distanceBetweenRanges\n : rangeArcEnd;\n const { y: adjustedRangeY } = getCoordinateForArc(\n radius,\n adjustedRangeArcEnd\n );\n const { x: rangeX, y: rangeY } = getCoordinateForArc(\n radius,\n (rangeArcStart + adjustedRangeArcEnd) / 2\n );\n return (\n <g>\n <BaseOutlineArc\n startX={rangeStartX}\n startY={rangeStartY}\n endX={rangeEndX}\n endY={rangeEndY}\n startAlpha={rangeArcStart}\n endAlpha={rangeArcEnd}\n color={fillColor}\n radius={radius}\n width={gaugeWidth}\n />\n {!hideLabels && label && (\n <OutlineMeterLabelPointer\n diameter={diameter}\n position={calculatedLabelPosition}\n distanceFromRanges={distanceFromRanges}\n isInRange={valueWithinRange}\n {...((calculatedLabelPosition === \"right\" &&\n rangeStartY > diameter / 2) ||\n (calculatedLabelPosition === \"left\" &&\n adjustedRangeY > diameter / 2)\n ? {\n rangeX,\n rangeY,\n }\n : undefined)}\n />\n )}\n </g>\n );\n }\n\n const valueAlpha =\n rangeArcStart + ((value - start) / (end - start)) * rangeArc;\n\n const { x: valueX, y: valueY } = getCoordinateForArc(radius, valueAlpha);\n const valueInnerX = getInnerX(valueX, degToRad(valueAlpha), gaugeWidth);\n const valueInnerY = getInnerY(valueY, degToRad(valueAlpha), gaugeWidth);\n\n return (\n <g>\n <BaseOutlineArc\n startX={rangeStartX}\n startY={rangeStartY}\n endX={valueX}\n endY={valueY}\n startAlpha={rangeArcStart}\n endAlpha={valueAlpha}\n color={color}\n radius={radius}\n width={gaugeWidth}\n roundEnd={false}\n />\n <BaseOutlineArc\n startX={valueX}\n startY={valueY}\n endX={rangeEndX}\n endY={rangeEndY}\n startAlpha={valueAlpha}\n endAlpha={rangeArcEnd}\n color={grey}\n radius={radius}\n width={gaugeWidth}\n roundStart={false}\n />\n <circle\n cx={(valueX + valueInnerX) / 2}\n cy={(valueY + valueInnerY) / 2}\n r={pointStrokeWidth + innerPointRadius}\n strokeWidth={pointStrokeWidth}\n stroke={color}\n fill=\"white\"\n ref={pointRef}\n />\n {!hideLabels && label && (\n <OutlineMeterLabelPointer\n diameter={diameter}\n isInRange\n position={calculatedLabelPosition}\n distanceFromRanges={distanceFromRanges}\n />\n )}\n </g>\n );\n }\n);\n"],"names":["OutlineMeterRange","React","props","pointRef","start","end","color","bounds","diameter","arc","distanceBetweenRanges","totalRanges","value","gaugeWidth","segmented","idx","pointStrokeWidth","innerPointRadius","distanceFromRanges","label","labelPosition","hideLabels","connected","grey","arcForRanges","rangeArc","valueWithinRange","isValueInRange","arcStart","radius","rangeArcStart","needConnection","inValueHigherThanRange","rangeArcEnd","rangeStartX","rangeStartY","getCoordinateForArc","rangeEndX","rangeEndY","calculatedLabelPosition","fillColor","adjustedRangeArcEnd","adjustedRangeY","rangeX","rangeY","jsx","BaseOutlineArc","OutlineMeterLabelPointer","valueAlpha","valueX","valueY","valueInnerX","getInnerX","degToRad","valueInnerY","getInnerY"],"mappings":"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"}
|
|
@@ -1,23 +1,50 @@
|
|
|
1
|
-
import { j as
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
)
|
|
1
|
+
import { j as k } from "./sd-component-library198.js";
|
|
2
|
+
import { isValueInRange as w, getInnerX as E, getInnerY as O, degToRad as r, getCoordinateForArc as V } from "./sd-component-library93.js";
|
|
3
|
+
import { BaseNeedle as b } from "./sd-component-library321.js";
|
|
4
|
+
const G = (x) => {
|
|
5
|
+
const {
|
|
6
|
+
diameter: f,
|
|
7
|
+
value: c,
|
|
8
|
+
arc: i,
|
|
9
|
+
ranges: o,
|
|
10
|
+
useSegmentedBehavior: v,
|
|
11
|
+
innerCircleRadius: I,
|
|
12
|
+
innerCircleStrokeWidth: A,
|
|
13
|
+
distanceFromRange: d,
|
|
14
|
+
needleWidth: e,
|
|
15
|
+
needleColor: C,
|
|
16
|
+
distanceBetweenRanges: l,
|
|
17
|
+
gaugeWidth: g
|
|
18
|
+
} = x, a = o.find(
|
|
19
|
+
({ start: s, end: y, bounds: N }) => w(c, s, y, N)
|
|
20
|
+
);
|
|
21
|
+
if (!a)
|
|
22
|
+
return null;
|
|
23
|
+
const u = f / 2, S = (360 - i) / 2, m = i - (o.length - 1) * l, { start: t, end: h, color: X } = a, Y = o.findIndex((s) => s === a), p = m * (h - t), R = S + l * Y + m * t, n = v ? R + p / 2 : R + (c - t) / (h - t) * p, { x: j, y: B } = V(u, n), F = E(
|
|
24
|
+
j,
|
|
25
|
+
r(n),
|
|
26
|
+
d + g + e / 2
|
|
27
|
+
), M = O(
|
|
28
|
+
B,
|
|
29
|
+
r(n),
|
|
30
|
+
d + g + e / 2
|
|
31
|
+
), T = e / 2 * Math.cos(r(n)), W = e / 2 * Math.sin(r(n));
|
|
32
|
+
return /* @__PURE__ */ k.jsx(
|
|
33
|
+
b,
|
|
34
|
+
{
|
|
35
|
+
dx: T,
|
|
36
|
+
dy: W,
|
|
37
|
+
color: C || X,
|
|
38
|
+
radius: u,
|
|
39
|
+
tipX: F,
|
|
40
|
+
tipY: M,
|
|
41
|
+
innerCircleStrokeWidth: A,
|
|
42
|
+
innerCircleRadius: I,
|
|
43
|
+
needleWidth: e
|
|
44
|
+
}
|
|
45
|
+
);
|
|
46
|
+
};
|
|
20
47
|
export {
|
|
21
|
-
|
|
48
|
+
G as OutlineMeterNeedle
|
|
22
49
|
};
|
|
23
50
|
//# sourceMappingURL=sd-component-library241.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-component-library241.js","sources":["../src/components/meters/
|
|
1
|
+
{"version":3,"file":"sd-component-library241.js","sources":["../src/components/meters/outline-meter/partials/outline-meter-needle/outline-meter-needle.tsx"],"sourcesContent":["import React from \"react\";\n\nimport {\n degToRad,\n getCoordinateForArc,\n getInnerX,\n getInnerY,\n isValueInRange,\n} from \"../../utils\";\nimport { BaseNeedle } from \"../base-needle\";\nimport { OutlineMeterNeedleProps as Props } from \"./interfaces\";\n\nexport const OutlineMeterNeedle: React.FC<Props> = (props) => {\n const {\n diameter,\n value,\n arc,\n ranges,\n useSegmentedBehavior,\n innerCircleRadius,\n innerCircleStrokeWidth,\n distanceFromRange,\n needleWidth,\n needleColor,\n distanceBetweenRanges,\n gaugeWidth,\n } = props;\n\n const matchingRange = ranges.find(({ start, end, bounds }) =>\n isValueInRange(value, start, end, bounds)\n );\n\n if (!matchingRange) return null;\n\n const radius = diameter / 2;\n\n const arcStart = (360 - arc) / 2;\n const arcForRanges = arc - (ranges.length - 1) * distanceBetweenRanges;\n const { start, end, color } = matchingRange;\n const matchingRangeIndex = ranges.findIndex((r) => r === matchingRange);\n const rangeArc = arcForRanges * (end - start);\n\n const rangeArcStart =\n arcStart +\n distanceBetweenRanges * matchingRangeIndex +\n arcForRanges * start;\n\n const valueAlpha = useSegmentedBehavior\n ? rangeArcStart + rangeArc / 2\n : rangeArcStart + ((value - start) / (end - start)) * rangeArc;\n const { x: valueX, y: valueY } = getCoordinateForArc(radius, valueAlpha);\n\n const needleTipX = getInnerX(\n valueX,\n degToRad(valueAlpha),\n distanceFromRange + gaugeWidth + needleWidth / 2\n );\n const needleTipY = getInnerY(\n valueY,\n degToRad(valueAlpha),\n distanceFromRange + gaugeWidth + needleWidth / 2\n );\n\n const dx = (needleWidth / 2) * Math.cos(degToRad(valueAlpha));\n const dy = (needleWidth / 2) * Math.sin(degToRad(valueAlpha));\n\n return (\n <BaseNeedle\n dx={dx}\n dy={dy}\n color={needleColor || color}\n radius={radius}\n tipX={needleTipX}\n tipY={needleTipY}\n innerCircleStrokeWidth={innerCircleStrokeWidth}\n innerCircleRadius={innerCircleRadius}\n needleWidth={needleWidth}\n />\n );\n};\n"],"names":["OutlineMeterNeedle","props","diameter","value","arc","ranges","useSegmentedBehavior","innerCircleRadius","innerCircleStrokeWidth","distanceFromRange","needleWidth","needleColor","distanceBetweenRanges","gaugeWidth","matchingRange","start","end","bounds","isValueInRange","radius","arcStart","arcForRanges","color","matchingRangeIndex","r","rangeArc","rangeArcStart","valueAlpha","valueX","valueY","getCoordinateForArc","needleTipX","getInnerX","degToRad","needleTipY","getInnerY","dx","dy","jsx","BaseNeedle"],"mappings":";;;AAYa,MAAAA,IAAsC,CAACC,MAAU;AACtD,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,KAAAC;AAAA,IACA,QAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,aAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,YAAAC;AAAA,EACE,IAAAZ,GAEEa,IAAgBT,EAAO;AAAA,IAAK,CAAC,EAAE,OAAAU,GAAO,KAAAC,GAAK,QAAAC,QAC/CC,EAAef,GAAOY,GAAOC,GAAKC,CAAM;AAAA,EAAA;AAG1C,MAAI,CAACH;AAAsB,WAAA;AAE3B,QAAMK,IAASjB,IAAW,GAEpBkB,KAAY,MAAMhB,KAAO,GACzBiB,IAAejB,KAAOC,EAAO,SAAS,KAAKO,GAC3C,EAAE,OAAAG,GAAO,KAAAC,GAAK,OAAAM,EAAA,IAAUR,GACxBS,IAAqBlB,EAAO,UAAU,CAACmB,MAAMA,MAAMV,CAAa,GAChEW,IAAWJ,KAAgBL,IAAMD,IAEjCW,IACJN,IACAR,IAAwBW,IACxBF,IAAeN,GAEXY,IAAarB,IACfoB,IAAgBD,IAAW,IAC3BC,KAAkBvB,IAAQY,MAAUC,IAAMD,KAAUU,GAClD,EAAE,GAAGG,GAAQ,GAAGC,MAAWC,EAAoBX,GAAQQ,CAAU,GAEjEI,IAAaC;AAAA,IACjBJ;AAAA,IACAK,EAASN,CAAU;AAAA,IACnBlB,IAAoBI,IAAaH,IAAc;AAAA,EAAA,GAE3CwB,IAAaC;AAAA,IACjBN;AAAA,IACAI,EAASN,CAAU;AAAA,IACnBlB,IAAoBI,IAAaH,IAAc;AAAA,EAAA,GAG3C0B,IAAM1B,IAAc,IAAK,KAAK,IAAIuB,EAASN,CAAU,CAAC,GACtDU,IAAM3B,IAAc,IAAK,KAAK,IAAIuB,EAASN,CAAU,CAAC;AAG1D,SAAAW,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,IAAAH;AAAA,MACA,IAAAC;AAAA,MACA,OAAO1B,KAAeW;AAAA,MACtB,QAAAH;AAAA,MACA,MAAMY;AAAA,MACN,MAAMG;AAAA,MACN,wBAAA1B;AAAA,MACA,mBAAAD;AAAA,MACA,aAAAG;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
import { j as m } from "./sd-component-library198.js";
|
|
2
|
+
import { isValueInRange as x } from "./sd-component-library93.js";
|
|
3
|
+
import { BaseMeterLabelBox as u } from "./sd-component-library248.js";
|
|
4
|
+
const g = (t) => {
|
|
5
|
+
const { value: o, idx: e, totalRanges: n, start: s, end: r, bounds: a } = t, i = x(o, s, r, a), l = e === 0 ? "left" : e === n - 1 ? "right" : "top";
|
|
6
|
+
return /* @__PURE__ */ m.jsx(u, { isInRange: i, position: l, ...t });
|
|
7
|
+
};
|
|
2
8
|
export {
|
|
3
|
-
|
|
9
|
+
g as OutlineMeterLabelBox
|
|
4
10
|
};
|
|
5
11
|
//# sourceMappingURL=sd-component-library242.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-component-library242.js","sources":["../src/components/meters/
|
|
1
|
+
{"version":3,"file":"sd-component-library242.js","sources":["../src/components/meters/outline-meter/partials/outline-meter-label-box/outline-meter-label-box.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { isValueInRange } from \"../../utils\";\nimport { BaseMeterLabelBox } from \"../base-meter-label-box\";\nimport { OutlineMeterLabelBoxProps as Props } from \"./interfaces\";\n\nexport const OutlineMeterLabelBox: React.FC<Props> = (props) => {\n const { value, idx, totalRanges, start, end, bounds } = props;\n\n const isInRange = isValueInRange(value, start, end, bounds);\n const position =\n idx === 0 ? \"left\" : idx === totalRanges - 1 ? \"right\" : \"top\";\n\n return (\n <BaseMeterLabelBox isInRange={isInRange} position={position} {...props} />\n );\n};\n"],"names":["OutlineMeterLabelBox","props","value","idx","totalRanges","start","end","bounds","isInRange","isValueInRange","position","jsx","BaseMeterLabelBox"],"mappings":";;;AAMa,MAAAA,IAAwC,CAACC,MAAU;AAC9D,QAAM,EAAE,OAAAC,GAAO,KAAAC,GAAK,aAAAC,GAAa,OAAAC,GAAO,KAAAC,GAAK,QAAAC,EAAW,IAAAN,GAElDO,IAAYC,EAAeP,GAAOG,GAAOC,GAAKC,CAAM,GACpDG,IACJP,MAAQ,IAAI,SAASA,MAAQC,IAAc,IAAI,UAAU;AAE3D,SACGO,gBAAAA,EAAAA,IAAAC,GAAA,EAAkB,WAAAJ,GAAsB,UAAAE,GAAqB,GAAGT,EAAO,CAAA;AAE5E;"}
|
|
@@ -1,43 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
borderStyle: "solid",
|
|
19
|
-
borderColor: "#C8CCE5",
|
|
20
|
-
boxShadow: "2px 3px 10px rgba(211,223,255,0.25)",
|
|
21
|
-
zIndex: 100
|
|
22
|
-
},
|
|
23
|
-
className: x ? void 0 : "no-translate",
|
|
24
|
-
"data-test": "results-box",
|
|
25
|
-
children: t.map(({ synonyms: r }, e) => /* @__PURE__ */ o.jsxs(p.Fragment, { children: [
|
|
26
|
-
/* @__PURE__ */ o.jsx(
|
|
27
|
-
n,
|
|
28
|
-
{
|
|
29
|
-
value: i,
|
|
30
|
-
synonyms: r,
|
|
31
|
-
onSelect: l
|
|
32
|
-
},
|
|
33
|
-
r.join()
|
|
34
|
-
),
|
|
35
|
-
e !== t.length - 1 && /* @__PURE__ */ o.jsx(d, { color: "cl_lightGrey" })
|
|
36
|
-
] }, e))
|
|
37
|
-
}
|
|
38
|
-
);
|
|
39
|
-
}
|
|
1
|
+
const i = (t, n) => [t, n], T = function* (t = []) {
|
|
2
|
+
for (; t.length > 1; )
|
|
3
|
+
yield i(t[0], t[1]), t = t.slice(1);
|
|
4
|
+
}, I = (t, n, e) => {
|
|
5
|
+
if (n && !e)
|
|
6
|
+
return n;
|
|
7
|
+
if (!n && e)
|
|
8
|
+
return e;
|
|
9
|
+
if (n && e) {
|
|
10
|
+
const s = a(n), r = a(e), c = s.map((B, f) => Math.round(B * (1 - t) + r[f] * t));
|
|
11
|
+
return c ? u(c[0], c[1], c[2]) : "";
|
|
12
|
+
}
|
|
13
|
+
return "";
|
|
14
|
+
}, u = (t, n, e) => "#" + (16777216 + (t << 16) + (n << 8) + e).toString(16).slice(1), a = (t) => {
|
|
15
|
+
const n = t.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i);
|
|
16
|
+
return n ? n.slice(1).map((e) => parseInt(e, 16)) : null;
|
|
17
|
+
}, h = (t, n, e) => Math.floor(t * n) === (e === "left" ? 0 : e === "right" ? n - 1 : 1), _ = (t) => t === "left" ? "right" : t === "top" ? "top" : "left";
|
|
40
18
|
export {
|
|
41
|
-
|
|
19
|
+
_ as flipPosition,
|
|
20
|
+
I as getFractionColor,
|
|
21
|
+
h as isLabelActive,
|
|
22
|
+
T as mapAdjacent
|
|
42
23
|
};
|
|
43
24
|
//# sourceMappingURL=sd-component-library244.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-component-library244.js","sources":["../src/components/
|
|
1
|
+
{"version":3,"file":"sd-component-library244.js","sources":["../src/components/meters/gradient-outline-meter/utils.ts"],"sourcesContent":["import { OutlineMeterLabelPosition } from \"../outline-meter\";\n\nconst pair = <T>(a: T, b: T): [T, T] => [a, b];\n\n/**\n * Returns an array of mapped adjacent elements into pairs.\n */\nexport const mapAdjacent = function* <T>(iter: T[] = []) {\n while (iter.length > 1) {\n yield pair<T>(iter[0], iter[1]);\n iter = iter.slice(1);\n }\n};\n\n/**\n * @param fraction numerical value from 0 to 1.\n * @param lowColor initial color of the gradient.\n * @param topColor final color of the gradient.\n * @returns color of gradient at specified fraction point or empty string\n */\nexport const getFractionColor = (\n fraction: number,\n lowColor?: string,\n topColor?: string\n): string => {\n if (lowColor && !topColor) return lowColor;\n if (!lowColor && topColor) return topColor;\n if (lowColor && topColor) {\n const lowRGB = hexToRGB(lowColor);\n const topRGB = hexToRGB(topColor);\n const resultRGB = lowRGB!.map((component, i) => {\n return Math.round(component * (1 - fraction) + topRGB![i] * fraction);\n });\n return resultRGB ? rgbToHex(resultRGB[0], resultRGB[1], resultRGB[2]) : \"\";\n }\n return \"\";\n};\n\n/**\n * Converts rgb color representation into hex representation.\n * @param red component of color.\n * @param green component of color.\n * @param blue component of color.\n */\nconst rgbToHex = (red: number, green: number, blue: number): string => {\n const BITS_IN_BYTE = 8;\n return (\n \"#\" +\n (\n (1 << (3 * BITS_IN_BYTE)) +\n (red << (2 * BITS_IN_BYTE)) +\n (green << BITS_IN_BYTE) +\n blue\n )\n .toString(16)\n .slice(1)\n );\n};\n\n/**\n * Converts hex representation of color into rgb.\n * @param hex complete and correct representation of color\n */\nconst hexToRGB = (hex: string) => {\n const normal = hex.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i);\n return normal ? normal.slice(1).map((e) => parseInt(e, 16)) : null;\n};\n\nexport const isLabelActive = (\n value: number,\n totalColors: number,\n position: OutlineMeterLabelPosition\n) =>\n Math.floor(value * totalColors) ===\n (position === \"left\" ? 0 : position === \"right\" ? totalColors - 1 : 1);\n\n/**\n * Mirrors entered position for outline meter label.\n */\nexport const flipPosition = (position: OutlineMeterLabelPosition) =>\n position === \"left\" ? \"right\" : position === \"top\" ? \"top\" : \"left\";\n"],"names":["pair","a","b","mapAdjacent","iter","getFractionColor","fraction","lowColor","topColor","lowRGB","hexToRGB","topRGB","resultRGB","component","i","rgbToHex","red","green","blue","hex","normal","isLabelActive","value","totalColors","position","flipPosition"],"mappings":"AAEA,MAAMA,IAAO,CAAIC,GAAMC,MAAiB,CAACD,GAAGC,CAAC,GAKhCC,IAAc,WAAcC,IAAY,IAAI;AAChD,SAAAA,EAAK,SAAS;AACnB,UAAMJ,EAAQI,EAAK,CAAC,GAAGA,EAAK,CAAC,CAAC,GACvBA,IAAAA,EAAK,MAAM,CAAC;AAEvB,GAQaC,IAAmB,CAC9BC,GACAC,GACAC,MACW;AACX,MAAID,KAAY,CAACC;AAAiB,WAAAD;AAClC,MAAI,CAACA,KAAYC;AAAiB,WAAAA;AAClC,MAAID,KAAYC,GAAU;AAClB,UAAAC,IAASC,EAASH,CAAQ,GAC1BI,IAASD,EAASF,CAAQ,GAC1BI,IAAYH,EAAQ,IAAI,CAACI,GAAWC,MACjC,KAAK,MAAMD,KAAa,IAAIP,KAAYK,EAAQG,CAAC,IAAIR,CAAQ,CACrE;AACM,WAAAM,IAAYG,EAASH,EAAU,CAAC,GAAGA,EAAU,CAAC,GAAGA,EAAU,CAAC,CAAC,IAAI;AAAA,EAC1E;AACO,SAAA;AACT,GAQMG,IAAW,CAACC,GAAaC,GAAeC,MAG1C,OAEG,YACAF,KAAQ,OACRC,KAAS,KACVC,GAEC,SAAS,EAAE,EACX,MAAM,CAAC,GAQRR,IAAW,CAACS,MAAgB;AAC1B,QAAAC,IAASD,EAAI,MAAM,6CAA6C;AACtE,SAAOC,IAASA,EAAO,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI;AAChE,GAEaC,IAAgB,CAC3BC,GACAC,GACAC,MAEA,KAAK,MAAMF,IAAQC,CAAW,OAC7BC,MAAa,SAAS,IAAIA,MAAa,UAAUD,IAAc,IAAI,IAKzDE,IAAe,CAACD,MAC3BA,MAAa,SAAS,UAAUA,MAAa,QAAQ,QAAQ;"}
|