@refinitiv-ui/elements 5.1.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +71 -0
- package/lib/accordion/index.d.ts +1 -1
- package/lib/appstate-bar/index.d.ts +1 -1
- package/lib/autosuggest/helpers/const.d.ts +1 -0
- package/lib/autosuggest/helpers/types.d.ts +22 -0
- package/lib/autosuggest/helpers/utils.d.ts +1 -0
- package/lib/autosuggest/index.d.ts +1 -1
- package/lib/button/index.d.ts +1 -1
- package/lib/button/index.js +31 -31
- package/lib/button/index.js.map +1 -1
- package/lib/button-bar/index.d.ts +1 -1
- package/lib/calendar/index.d.ts +1 -1
- package/lib/calendar/index.js +1 -1
- package/lib/calendar/index.js.map +1 -1
- package/lib/calendar/locales.d.ts +1 -0
- package/lib/calendar/themes/halo/dark/index.js +1 -1
- package/lib/calendar/themes/halo/light/index.js +1 -1
- package/lib/calendar/types.d.ts +1 -0
- package/lib/calendar/utils.d.ts +1 -0
- package/lib/canvas/index.d.ts +1 -1
- package/lib/card/custom-elements.json +18 -8
- package/lib/card/helpers/types.d.ts +1 -0
- package/lib/card/index.d.ts +50 -12
- package/lib/card/index.js +112 -23
- package/lib/card/index.js.map +1 -1
- package/lib/card/themes/halo/dark/index.js +1 -1
- package/lib/card/themes/halo/light/index.js +1 -1
- package/lib/card/themes/solar/charcoal/index.js +1 -1
- package/lib/card/themes/solar/pearl/index.js +1 -1
- package/lib/chart/helpers/index.d.ts +1 -0
- package/lib/chart/helpers/legend.d.ts +1 -0
- package/lib/chart/helpers/merge.d.ts +1 -0
- package/lib/chart/helpers/types.d.ts +1 -0
- package/lib/chart/index.d.ts +8 -3
- package/lib/chart/index.js +20 -4
- package/lib/chart/index.js.map +1 -1
- package/lib/chart/plugins/doughnut-center-label.d.ts +1 -0
- package/lib/checkbox/index.d.ts +1 -1
- package/lib/clock/index.d.ts +1 -1
- package/lib/clock/utils/TickManager.d.ts +1 -0
- package/lib/clock/utils/timestamps.d.ts +1 -0
- package/lib/collapse/index.d.ts +1 -1
- package/lib/color-dialog/elements/color-palettes.d.ts +1 -1
- package/lib/color-dialog/elements/grayscale-palettes.d.ts +1 -1
- package/lib/color-dialog/elements/palettes.d.ts +1 -0
- package/lib/color-dialog/helpers/color-helpers.d.ts +1 -0
- package/lib/color-dialog/helpers/value-model.d.ts +1 -0
- package/lib/color-dialog/index.d.ts +1 -1
- package/lib/combo-box/helpers/filter.d.ts +1 -0
- package/lib/combo-box/helpers/keyboard-event.d.ts +1 -0
- package/lib/combo-box/helpers/types.d.ts +1 -0
- package/lib/combo-box/index.d.ts +1 -1
- package/lib/combo-box/themes/halo/dark/index.js +1 -1
- package/lib/combo-box/themes/halo/light/index.js +1 -1
- package/lib/counter/custom-elements.json +35 -0
- package/lib/counter/index.d.ts +89 -0
- package/lib/counter/index.js +156 -0
- package/lib/counter/index.js.map +1 -0
- package/lib/counter/themes/halo/dark/index.js +3 -0
- package/lib/counter/themes/halo/light/index.js +3 -0
- package/lib/counter/themes/solar/charcoal/index.js +3 -0
- package/lib/counter/themes/solar/pearl/index.js +3 -0
- package/lib/counter/utils.d.ts +14 -0
- package/lib/counter/utils.js +53 -0
- package/lib/counter/utils.js.map +1 -0
- package/lib/datetime-picker/custom-elements.json +1 -1
- package/lib/datetime-picker/index.d.ts +2 -2
- package/lib/datetime-picker/index.js +1 -1
- package/lib/datetime-picker/locales.d.ts +1 -0
- package/lib/datetime-picker/types.d.ts +1 -0
- package/lib/datetime-picker/utils.d.ts +1 -0
- package/lib/dialog/draggable-element.d.ts +1 -0
- package/lib/dialog/index.d.ts +1 -1
- package/lib/email-field/index.d.ts +1 -1
- package/lib/email-field/index.js +1 -0
- package/lib/email-field/index.js.map +1 -1
- package/lib/email-field/themes/halo/dark/index.js +1 -1
- package/lib/email-field/themes/halo/light/index.js +1 -1
- package/lib/email-field/themes/solar/charcoal/index.js +1 -1
- package/lib/email-field/themes/solar/pearl/index.js +1 -1
- package/lib/events.d.ts +1 -0
- package/lib/flag/index.d.ts +1 -1
- package/lib/flag/utils/FlagLoader.d.ts +1 -0
- package/lib/header/index.d.ts +1 -1
- package/lib/heatmap/custom-elements.json +13 -0
- package/lib/heatmap/helpers/color.d.ts +1 -0
- package/lib/heatmap/helpers/text.d.ts +1 -0
- package/lib/heatmap/helpers/track.d.ts +1 -0
- package/lib/heatmap/helpers/types.d.ts +1 -0
- package/lib/heatmap/index.d.ts +18 -6
- package/lib/heatmap/index.js +40 -20
- package/lib/heatmap/index.js.map +1 -1
- package/lib/icon/index.d.ts +1 -1
- package/lib/icon/utils/IconLoader.d.ts +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -1
- package/lib/interactive-chart/helpers/merge.d.ts +1 -0
- package/lib/interactive-chart/helpers/types.d.ts +4 -3
- package/lib/interactive-chart/index.d.ts +1 -1
- package/lib/interactive-chart/index.js +7 -7
- package/lib/interactive-chart/index.js.map +1 -1
- package/lib/item/helpers/types.d.ts +1 -0
- package/lib/item/index.d.ts +1 -1
- package/lib/label/custom-elements.json +7 -16
- package/lib/label/index.d.ts +32 -71
- package/lib/label/index.js +142 -179
- package/lib/label/index.js.map +1 -1
- package/lib/layout/index.d.ts +1 -1
- package/lib/led-gauge/index.d.ts +1 -1
- package/lib/list/extensible-function.d.ts +1 -0
- package/lib/list/helpers/list-renderer.d.ts +1 -0
- package/lib/list/helpers/types.d.ts +1 -0
- package/lib/list/index.d.ts +8 -2
- package/lib/list/index.js +26 -9
- package/lib/list/index.js.map +1 -1
- package/lib/list/renderer.d.ts +1 -0
- package/lib/loader/index.d.ts +1 -1
- package/lib/multi-input/helpers/types.d.ts +1 -0
- package/lib/multi-input/index.d.ts +1 -1
- package/lib/notification/elements/notification-tray.d.ts +1 -1
- package/lib/notification/elements/notification.d.ts +1 -1
- package/lib/notification/helpers/status.d.ts +1 -0
- package/lib/notification/helpers/types.d.ts +1 -0
- package/lib/notification/index.d.ts +1 -0
- package/lib/number-field/index.d.ts +1 -1
- package/lib/number-field/index.js +1 -0
- package/lib/number-field/index.js.map +1 -1
- package/lib/number-field/themes/halo/dark/index.js +1 -1
- package/lib/number-field/themes/halo/light/index.js +1 -1
- package/lib/number-field/themes/solar/charcoal/index.js +1 -1
- package/lib/number-field/themes/solar/pearl/index.js +1 -1
- package/lib/overlay/elements/overlay-backdrop.d.ts +1 -1
- package/lib/overlay/elements/overlay-viewport.d.ts +1 -1
- package/lib/overlay/elements/overlay.d.ts +1 -1
- package/lib/overlay/elements/overlay.js +1 -0
- package/lib/overlay/elements/overlay.js.map +1 -1
- package/lib/overlay/helpers/functions.d.ts +1 -0
- package/lib/overlay/helpers/types.d.ts +1 -0
- package/lib/overlay/index.d.ts +1 -0
- package/lib/overlay/managers/backdrop-manager.d.ts +2 -1
- package/lib/overlay/managers/close-manager.d.ts +2 -1
- package/lib/overlay/managers/focus-manager.d.ts +2 -1
- package/lib/overlay/managers/focus-manager.js +1 -2
- package/lib/overlay/managers/focus-manager.js.map +1 -1
- package/lib/overlay/managers/interaction-lock-manager.d.ts +1 -0
- package/lib/overlay/managers/viewport-manager.d.ts +2 -1
- package/lib/overlay/managers/zindex-manager.d.ts +2 -1
- package/lib/overlay/managers/zindex-manager.js +0 -2
- package/lib/overlay/managers/zindex-manager.js.map +1 -1
- package/lib/overlay-menu/custom-elements.json +64 -0
- package/lib/overlay-menu/helpers/types.d.ts +1 -0
- package/lib/overlay-menu/helpers/uuid.d.ts +1 -0
- package/lib/overlay-menu/index.d.ts +19 -1
- package/lib/overlay-menu/index.js +18 -0
- package/lib/overlay-menu/index.js.map +1 -1
- package/lib/overlay-menu/managers/menu-manager.d.ts +1 -0
- package/lib/pagination/helpers/types.d.ts +1 -0
- package/lib/pagination/index.d.ts +1 -1
- package/lib/panel/index.d.ts +1 -1
- package/lib/password-field/index.d.ts +1 -1
- package/lib/password-field/index.js +1 -0
- package/lib/password-field/index.js.map +1 -1
- package/lib/password-field/themes/halo/dark/index.js +1 -1
- package/lib/password-field/themes/halo/light/index.js +1 -1
- package/lib/password-field/themes/solar/charcoal/index.js +1 -1
- package/lib/password-field/themes/solar/pearl/index.js +1 -1
- package/lib/pill/index.d.ts +1 -1
- package/lib/progress-bar/index.d.ts +1 -1
- package/lib/radio-button/index.d.ts +1 -1
- package/lib/radio-button/radio-button-registry.d.ts +1 -0
- package/lib/rating/index.d.ts +1 -1
- package/lib/search-field/index.d.ts +1 -1
- package/lib/search-field/index.js +1 -0
- package/lib/search-field/index.js.map +1 -1
- package/lib/search-field/themes/halo/dark/index.js +1 -1
- package/lib/search-field/themes/halo/light/index.js +1 -1
- package/lib/search-field/themes/solar/charcoal/index.js +1 -1
- package/lib/search-field/themes/solar/pearl/index.js +1 -1
- package/lib/select/helpers/types.d.ts +1 -0
- package/lib/select/index.d.ts +1 -1
- package/lib/select/themes/halo/dark/index.js +1 -1
- package/lib/select/themes/halo/light/index.js +1 -1
- package/lib/sidebar-layout/index.d.ts +1 -1
- package/lib/slider/index.d.ts +7 -1
- package/lib/slider/index.js +48 -1
- package/lib/slider/index.js.map +1 -1
- package/lib/sparkline/index.d.ts +1 -1
- package/lib/swing-gauge/const.d.ts +23 -0
- package/lib/swing-gauge/const.js +27 -0
- package/lib/swing-gauge/const.js.map +1 -0
- package/lib/swing-gauge/custom-elements.json +47 -20
- package/lib/swing-gauge/helpers.d.ts +9 -0
- package/lib/swing-gauge/helpers.js +106 -0
- package/lib/swing-gauge/helpers.js.map +1 -0
- package/lib/swing-gauge/index.d.ts +207 -70
- package/lib/swing-gauge/index.js +651 -161
- package/lib/swing-gauge/index.js.map +1 -1
- package/lib/swing-gauge/themes/halo/dark/index.js +1 -1
- package/lib/swing-gauge/themes/halo/light/index.js +1 -1
- package/lib/swing-gauge/themes/solar/charcoal/index.js +1 -1
- package/lib/swing-gauge/themes/solar/pearl/index.js +1 -1
- package/lib/swing-gauge/types.d.ts +35 -0
- package/lib/swing-gauge/{helpers/types.js → types.js} +0 -0
- package/lib/swing-gauge/{helpers/types.js.map → types.js.map} +1 -1
- package/lib/tab/custom-elements.json +7 -18
- package/lib/tab/index.d.ts +5 -9
- package/lib/tab/index.js +11 -19
- package/lib/tab/index.js.map +1 -1
- package/lib/tab/themes/halo/dark/index.js +1 -1
- package/lib/tab/themes/halo/light/index.js +1 -1
- package/lib/tab/themes/solar/charcoal/index.js +1 -1
- package/lib/tab/themes/solar/pearl/index.js +1 -1
- package/lib/tab-bar/helpers/animate.d.ts +1 -0
- package/lib/tab-bar/index.d.ts +1 -1
- package/lib/text-field/index.d.ts +1 -1
- package/lib/text-field/index.js +1 -0
- package/lib/text-field/index.js.map +1 -1
- package/lib/text-field/themes/halo/dark/index.js +1 -1
- package/lib/text-field/themes/halo/light/index.js +1 -1
- package/lib/text-field/themes/solar/charcoal/index.js +1 -1
- package/lib/text-field/themes/solar/pearl/index.js +1 -1
- package/lib/time-picker/index.d.ts +1 -1
- package/lib/toggle/index.d.ts +1 -1
- package/lib/tooltip/elements/title-tooltip.d.ts +1 -0
- package/lib/tooltip/elements/tooltip-element.d.ts +2 -2
- package/lib/tooltip/elements/tooltip-element.js +0 -1
- package/lib/tooltip/elements/tooltip-element.js.map +1 -1
- package/lib/tooltip/helpers/overflow-tooltip.d.ts +1 -0
- package/lib/tooltip/helpers/renderer.d.ts +1 -0
- package/lib/tooltip/helpers/types.d.ts +1 -0
- package/lib/tooltip/index.d.ts +2 -2
- package/lib/tooltip/index.js +3 -4
- package/lib/tooltip/index.js.map +1 -1
- package/lib/tooltip/managers/tooltip-manager.d.ts +2 -1
- package/lib/tooltip/managers/tooltip-manager.js +20 -9
- package/lib/tooltip/managers/tooltip-manager.js.map +1 -1
- package/lib/tornado-chart/elements/tornado-chart.d.ts +1 -1
- package/lib/tornado-chart/elements/tornado-item.d.ts +1 -1
- package/lib/tornado-chart/index.d.ts +1 -0
- package/lib/tree/elements/tree-item.d.ts +9 -1
- package/lib/tree/elements/tree-item.js +17 -0
- package/lib/tree/elements/tree-item.js.map +1 -1
- package/lib/tree/elements/tree.d.ts +1 -1
- package/lib/tree/helpers/renderer.d.ts +1 -0
- package/lib/tree/helpers/renderer.js +1 -0
- package/lib/tree/helpers/renderer.js.map +1 -1
- package/lib/tree/helpers/types.d.ts +5 -0
- package/lib/tree/index.d.ts +1 -0
- package/lib/tree/managers/tree-manager.d.ts +1 -0
- package/lib/tree/themes/halo/dark/index.js +1 -1
- package/lib/tree/themes/halo/light/index.js +1 -1
- package/lib/tree/themes/solar/charcoal/index.js +1 -1
- package/lib/tree/themes/solar/pearl/index.js +1 -1
- package/lib/tree-select/custom-elements.json +5 -0
- package/lib/tree-select/helpers/types.d.ts +1 -0
- package/lib/tree-select/index.d.ts +17 -1
- package/lib/tree-select/index.js +49 -5
- package/lib/tree-select/index.js.map +1 -1
- package/lib/tree-select/themes/halo/dark/index.js +2 -1
- package/lib/tree-select/themes/halo/light/index.js +2 -1
- package/lib/tree-select/themes/solar/charcoal/index.js +2 -1
- package/lib/tree-select/themes/solar/pearl/index.js +2 -1
- package/package.json +10 -10
- package/lib/label/helpers/text.d.ts +0 -35
- package/lib/label/helpers/text.js +0 -57
- package/lib/label/helpers/text.js.map +0 -1
- package/lib/swing-gauge/helpers/canvas.d.ts +0 -8
- package/lib/swing-gauge/helpers/canvas.js +0 -115
- package/lib/swing-gauge/helpers/canvas.js.map +0 -1
- package/lib/swing-gauge/helpers/types.d.ts +0 -33
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../src/swing-gauge/const.ts"],"names":[],"mappings":"AAAA,IAAK,OAGJ;AAHD,WAAK,OAAO;IACR,8BAAmB,CAAA;IACnB,kCAAuB,CAAA;AAC3B,CAAC,EAHI,OAAO,KAAP,OAAO,QAGX;AAED,IAAK,QAGJ;AAHD,WAAK,QAAQ;IACT,2BAAe,CAAA;IACf,2BAAe,CAAA;AACnB,CAAC,EAHI,QAAQ,KAAR,QAAQ,QAGZ;AAED,IAAK,eAIJ;AAJD,WAAK,eAAe;IAChB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;AACrB,CAAC,EAJI,eAAe,KAAf,eAAe,QAInB;AAED,IAAK,YAOJ;AAPD,WAAK,YAAY;IACb,+CAA+B,CAAA;IAC/B,iDAAiC,CAAA;IACjC,sCAAsB,CAAA;IACtB,6CAA6B,CAAA;IAC7B,2CAA2B,CAAA;IAC3B,2CAA2B,CAAA;AAC/B,CAAC,EAPI,YAAY,KAAZ,YAAY,QAOhB;AAED,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -7,70 +7,97 @@
|
|
|
7
7
|
"attributes": [
|
|
8
8
|
{
|
|
9
9
|
"name": "primary-value",
|
|
10
|
-
"description": "
|
|
11
|
-
"type": "number"
|
|
12
|
-
"default": "\"50\""
|
|
10
|
+
"description": "Primary value",
|
|
11
|
+
"type": "number"
|
|
13
12
|
},
|
|
14
13
|
{
|
|
15
14
|
"name": "primary-label",
|
|
16
|
-
"description": "
|
|
15
|
+
"description": "Primary label",
|
|
17
16
|
"type": "string",
|
|
18
17
|
"default": "\"\""
|
|
19
18
|
},
|
|
20
19
|
{
|
|
21
20
|
"name": "secondary-value",
|
|
22
|
-
"description": "
|
|
23
|
-
"type": "number"
|
|
24
|
-
"default": "\"50\""
|
|
21
|
+
"description": "Secondary value",
|
|
22
|
+
"type": "number"
|
|
25
23
|
},
|
|
26
24
|
{
|
|
27
25
|
"name": "secondary-label",
|
|
28
|
-
"description": "
|
|
26
|
+
"description": "Secondary label",
|
|
29
27
|
"type": "string",
|
|
30
28
|
"default": "\"\""
|
|
31
29
|
},
|
|
32
30
|
{
|
|
33
31
|
"name": "duration",
|
|
34
|
-
"description": "
|
|
32
|
+
"description": "Animation duration in milliseconds",
|
|
35
33
|
"type": "number",
|
|
36
|
-
"default": "
|
|
34
|
+
"default": "1000"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "primary-legend",
|
|
38
|
+
"description": "Primary value legend",
|
|
39
|
+
"type": "string",
|
|
40
|
+
"default": "\"\""
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "secondary-legend",
|
|
44
|
+
"description": "Secondary value legend",
|
|
45
|
+
"type": "string",
|
|
46
|
+
"default": "\"\""
|
|
37
47
|
}
|
|
38
48
|
],
|
|
39
49
|
"properties": [
|
|
40
50
|
{
|
|
41
51
|
"name": "primaryValue",
|
|
42
52
|
"attribute": "primary-value",
|
|
43
|
-
"description": "
|
|
44
|
-
"type": "number"
|
|
45
|
-
"default": "\"50\""
|
|
53
|
+
"description": "Primary value",
|
|
54
|
+
"type": "number"
|
|
46
55
|
},
|
|
47
56
|
{
|
|
48
57
|
"name": "primaryLabel",
|
|
49
58
|
"attribute": "primary-label",
|
|
50
|
-
"description": "
|
|
59
|
+
"description": "Primary label",
|
|
51
60
|
"type": "string",
|
|
52
61
|
"default": "\"\""
|
|
53
62
|
},
|
|
54
63
|
{
|
|
55
64
|
"name": "secondaryValue",
|
|
56
65
|
"attribute": "secondary-value",
|
|
57
|
-
"description": "
|
|
58
|
-
"type": "number"
|
|
59
|
-
"default": "\"50\""
|
|
66
|
+
"description": "Secondary value",
|
|
67
|
+
"type": "number"
|
|
60
68
|
},
|
|
61
69
|
{
|
|
62
70
|
"name": "secondaryLabel",
|
|
63
71
|
"attribute": "secondary-label",
|
|
64
|
-
"description": "
|
|
72
|
+
"description": "Secondary label",
|
|
65
73
|
"type": "string",
|
|
66
74
|
"default": "\"\""
|
|
67
75
|
},
|
|
68
76
|
{
|
|
69
77
|
"name": "duration",
|
|
70
78
|
"attribute": "duration",
|
|
71
|
-
"description": "
|
|
79
|
+
"description": "Animation duration in milliseconds",
|
|
72
80
|
"type": "number",
|
|
73
|
-
"default": "
|
|
81
|
+
"default": "1000"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"name": "primaryLegend",
|
|
85
|
+
"attribute": "primary-legend",
|
|
86
|
+
"description": "Primary value legend",
|
|
87
|
+
"type": "string",
|
|
88
|
+
"default": "\"\""
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"name": "secondaryLegend",
|
|
92
|
+
"attribute": "secondary-legend",
|
|
93
|
+
"description": "Secondary value legend",
|
|
94
|
+
"type": "string",
|
|
95
|
+
"default": "\"\""
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"name": "valueFormatter",
|
|
99
|
+
"description": "Custome value formatter",
|
|
100
|
+
"default": "\"defaultValueFormatter\""
|
|
74
101
|
},
|
|
75
102
|
{
|
|
76
103
|
"name": "canvasSize",
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SwingGaugeCanvasSize, SwingGaugeData, SwingGaugeStyle } from './types';
|
|
2
|
+
declare const helpers: {
|
|
3
|
+
draw: (drawData: SwingGaugeData, drawCtx: CanvasRenderingContext2D, drawParams: SwingGaugeStyle) => void;
|
|
4
|
+
clear: (canvasSize: SwingGaugeCanvasSize, drawCtx: CanvasRenderingContext2D) => void;
|
|
5
|
+
elasticOut: (time: number) => number;
|
|
6
|
+
textWidth: (drawCtx: CanvasRenderingContext2D, text: string, fontSize: number, fontFamily: string) => number;
|
|
7
|
+
};
|
|
8
|
+
export { helpers };
|
|
9
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { CenterLineStyle, DefaultStyle } from './const';
|
|
2
|
+
let ctx;
|
|
3
|
+
let data;
|
|
4
|
+
let style;
|
|
5
|
+
const clear = (canvasSize, drawCtx) => {
|
|
6
|
+
drawCtx.clearRect(0, 0, canvasSize.width, canvasSize.height);
|
|
7
|
+
};
|
|
8
|
+
const drawSegment = (start, end, color) => {
|
|
9
|
+
ctx.strokeStyle = color;
|
|
10
|
+
ctx.lineWidth = data.size * data.gaugeWidthScale;
|
|
11
|
+
ctx.beginPath();
|
|
12
|
+
ctx.arc(data.width / 2, data.height, data.size * data.gaugeHeightScale, (start + 1) * Math.PI, (end + 1) * Math.PI);
|
|
13
|
+
ctx.stroke();
|
|
14
|
+
};
|
|
15
|
+
const drawDot = (x, y) => {
|
|
16
|
+
ctx.fillStyle = DefaultStyle.CENTER_LINE_COLOR;
|
|
17
|
+
ctx.lineWidth = 1;
|
|
18
|
+
ctx.beginPath();
|
|
19
|
+
ctx.arc(x, y - 5, 4, 0, 2 * Math.PI);
|
|
20
|
+
ctx.fill();
|
|
21
|
+
};
|
|
22
|
+
const drawLine = (startX, startY, endX, endY, offset) => {
|
|
23
|
+
ctx.strokeStyle = DefaultStyle.CENTER_LINE_COLOR;
|
|
24
|
+
ctx.lineWidth = 2;
|
|
25
|
+
ctx.setLineDash([5, 3]);
|
|
26
|
+
ctx.beginPath();
|
|
27
|
+
ctx.moveTo(startX, startY - 5);
|
|
28
|
+
ctx.lineTo(endX, endY - 5);
|
|
29
|
+
ctx.lineTo(endX + offset, endY - 5);
|
|
30
|
+
ctx.stroke();
|
|
31
|
+
ctx.setLineDash([]);
|
|
32
|
+
};
|
|
33
|
+
const drawLinePointer = (startX, startY, endX, endY, offset) => {
|
|
34
|
+
drawDot(startX, startY);
|
|
35
|
+
drawLine(startX, startY, endX, endY, offset);
|
|
36
|
+
};
|
|
37
|
+
const draw = (drawData, drawCtx, drawParams) => {
|
|
38
|
+
data = drawData;
|
|
39
|
+
ctx = drawCtx;
|
|
40
|
+
style = drawParams;
|
|
41
|
+
const primaryStart = 0;
|
|
42
|
+
let secondaryStart = data.fillPercentage;
|
|
43
|
+
const primaryEnd = 1;
|
|
44
|
+
const secondaryEnd = 1;
|
|
45
|
+
secondaryStart = secondaryStart < 0.01 ? 0.01 : secondaryStart;
|
|
46
|
+
secondaryStart = secondaryStart > 0.99 ? 0.99 : secondaryStart;
|
|
47
|
+
// Draw segments
|
|
48
|
+
drawSegment(primaryStart, primaryEnd, style.primaryColor);
|
|
49
|
+
drawSegment(secondaryStart, secondaryEnd, style.secondaryColor);
|
|
50
|
+
// Draw Line pointer
|
|
51
|
+
drawLinePointer(data.offsetLeftPrimaryPoint, data.offsetTopPrimaryPoint, data.offsetLeftPrimaryLine, data.offsetTopPrimaryLine, -data.lineLength);
|
|
52
|
+
drawLinePointer(data.offsetLeftSecondaryPoint, data.offsetTopSecondaryPoint, data.offsetLeftSecondaryLine, data.offsetTopSecondaryLine, data.lineLength);
|
|
53
|
+
// Draw inner circle and lines
|
|
54
|
+
ctx.lineWidth = style.strokeWidth;
|
|
55
|
+
ctx.strokeStyle = style.borderColor;
|
|
56
|
+
ctx.beginPath();
|
|
57
|
+
ctx.arc(data.width / 2, data.height, data.size * data.gaugeUpperBound - style.strokeWidth / 2, 0, 2 * Math.PI);
|
|
58
|
+
ctx.strokeStyle = style.borderColor;
|
|
59
|
+
ctx.stroke();
|
|
60
|
+
ctx.beginPath();
|
|
61
|
+
ctx.arc(data.width / 2, data.height, data.size * data.gaugeLowerBound, 0, 2 * Math.PI);
|
|
62
|
+
ctx.strokeStyle = style.borderColor;
|
|
63
|
+
ctx.stroke();
|
|
64
|
+
// Should we draw a center line?
|
|
65
|
+
if (Object.values(CenterLineStyle).includes(style.centerline)) {
|
|
66
|
+
ctx.save();
|
|
67
|
+
ctx.beginPath();
|
|
68
|
+
if (style.centerline === CenterLineStyle.SOLID) {
|
|
69
|
+
ctx.globalAlpha = Number(style.centerlineOpacity);
|
|
70
|
+
}
|
|
71
|
+
else if (style.centerline === CenterLineStyle.DOTTED) {
|
|
72
|
+
ctx.setLineDash([2, 2]);
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
ctx.setLineDash([5, 3]);
|
|
76
|
+
}
|
|
77
|
+
ctx.moveTo(data.width / 2, data.height - data.size * data.gaugeLowerBound);
|
|
78
|
+
ctx.lineTo(data.width / 2, data.height - (data.size * data.gaugeUpperBound) + style.strokeWidth);
|
|
79
|
+
ctx.strokeStyle = style.centerlineColor;
|
|
80
|
+
ctx.stroke();
|
|
81
|
+
ctx.restore();
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
// Helper function for elastic easing
|
|
85
|
+
const elasticOut = ((amplitude, period) => {
|
|
86
|
+
const pi2 = Math.PI * 2;
|
|
87
|
+
return function (time) {
|
|
88
|
+
if (time === 0 || time === 1) {
|
|
89
|
+
return time;
|
|
90
|
+
}
|
|
91
|
+
const s = (period / pi2) * Math.asin(1 / amplitude);
|
|
92
|
+
return (amplitude * Math.pow(2, -10 * time) * Math.sin(((time - s) * pi2) / period) + 1);
|
|
93
|
+
};
|
|
94
|
+
})(1.2, 0.5);
|
|
95
|
+
const textWidth = (drawCtx, text, fontSize, fontFamily) => {
|
|
96
|
+
drawCtx.font = `${fontSize}px ${fontFamily}`;
|
|
97
|
+
return drawCtx.measureText(text).width;
|
|
98
|
+
};
|
|
99
|
+
const helpers = {
|
|
100
|
+
draw,
|
|
101
|
+
clear,
|
|
102
|
+
elasticOut,
|
|
103
|
+
textWidth
|
|
104
|
+
};
|
|
105
|
+
export { helpers };
|
|
106
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/swing-gauge/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { JSXInterface } from '../jsx';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
2
|
+
import { ResponsiveElement, CSSResult, PropertyValues, TemplateResult } from '@refinitiv-ui/core';
|
|
3
|
+
import '../canvas';
|
|
4
|
+
import '../label';
|
|
5
|
+
import { SwingGaugeCanvasSize, SwingGaugeValueFormatter } from './types';
|
|
6
|
+
export { SwingGaugeValueFormatter };
|
|
4
7
|
/**
|
|
5
8
|
* Data visualisation showing the percentage between two values
|
|
6
9
|
*/
|
|
7
|
-
export declare class SwingGauge extends
|
|
10
|
+
export declare class SwingGauge extends ResponsiveElement {
|
|
8
11
|
/**
|
|
9
12
|
* Element version number
|
|
10
13
|
* @returns version number
|
|
@@ -17,129 +20,263 @@ export declare class SwingGauge extends Canvas {
|
|
|
17
20
|
* @return CSS template
|
|
18
21
|
*/
|
|
19
22
|
static get styles(): CSSResult;
|
|
23
|
+
private _primaryValue;
|
|
20
24
|
/**
|
|
21
|
-
*
|
|
22
|
-
* @
|
|
25
|
+
* Primary value
|
|
26
|
+
* @param value primary value
|
|
23
27
|
*/
|
|
24
|
-
primaryValue: number;
|
|
28
|
+
set primaryValue(value: number);
|
|
29
|
+
get primaryValue(): number;
|
|
25
30
|
/**
|
|
26
|
-
*
|
|
31
|
+
* Primary label
|
|
27
32
|
*/
|
|
28
33
|
primaryLabel: string;
|
|
34
|
+
private _secondaryValue;
|
|
29
35
|
/**
|
|
30
|
-
*
|
|
31
|
-
* @
|
|
36
|
+
* Secondary value
|
|
37
|
+
* @param value secondary value
|
|
32
38
|
*/
|
|
33
|
-
secondaryValue: number;
|
|
39
|
+
set secondaryValue(value: number);
|
|
40
|
+
get secondaryValue(): number;
|
|
34
41
|
/**
|
|
35
|
-
*
|
|
42
|
+
* Secondary label
|
|
36
43
|
*/
|
|
37
44
|
secondaryLabel: string;
|
|
38
45
|
/**
|
|
39
|
-
*
|
|
40
|
-
* @default 1000
|
|
46
|
+
* Animation duration in milliseconds
|
|
41
47
|
*/
|
|
42
48
|
duration: number;
|
|
43
49
|
/**
|
|
44
|
-
|
|
45
|
-
|
|
50
|
+
* Primary value legend
|
|
51
|
+
*/
|
|
52
|
+
primaryLegend: string;
|
|
53
|
+
/**
|
|
54
|
+
* Secondary value legend
|
|
55
|
+
*/
|
|
56
|
+
secondaryLegend: string;
|
|
57
|
+
/**
|
|
58
|
+
* Custome value formatter
|
|
59
|
+
*/
|
|
60
|
+
valueFormatter: SwingGaugeValueFormatter;
|
|
61
|
+
/**
|
|
62
|
+
* Controls swing gauge animations
|
|
46
63
|
*/
|
|
47
|
-
get canvasSize(): ElementSize;
|
|
48
|
-
private w;
|
|
49
|
-
private h;
|
|
50
|
-
private min;
|
|
51
|
-
private max;
|
|
52
|
-
private size;
|
|
53
|
-
private maxFontSize;
|
|
54
|
-
private centerlineOptions;
|
|
55
64
|
private onFrame;
|
|
56
65
|
private cancelFrame;
|
|
57
|
-
private
|
|
66
|
+
private requestedAnimationID;
|
|
67
|
+
private gaugeWidthScale;
|
|
68
|
+
private gaugeHeightScale;
|
|
69
|
+
private gaugeUpperBound;
|
|
70
|
+
private gaugeLowerBound;
|
|
71
|
+
private linePointerOffset;
|
|
72
|
+
private pointPointerOffset;
|
|
73
|
+
private primaryLineRadian;
|
|
74
|
+
private secondaryLineRadian;
|
|
75
|
+
private linePointerOffsetOverflow;
|
|
76
|
+
/**
|
|
77
|
+
* Data requires to draw swing gauge
|
|
78
|
+
*/
|
|
79
|
+
private data;
|
|
80
|
+
/**
|
|
81
|
+
* Internal sizes and scales
|
|
82
|
+
*/
|
|
83
|
+
private width;
|
|
84
|
+
private height;
|
|
85
|
+
private size;
|
|
86
|
+
private lineLength;
|
|
87
|
+
private scale;
|
|
88
|
+
private overflowScale;
|
|
89
|
+
/**
|
|
90
|
+
* Current fill percentage
|
|
91
|
+
*/
|
|
58
92
|
private fillPercentage;
|
|
59
|
-
private frameHandler;
|
|
60
|
-
constructor();
|
|
61
93
|
/**
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
94
|
+
* Keeps previous percentage calculation to avoid re-rendering the same value
|
|
95
|
+
*/
|
|
96
|
+
private previousFillPercentage;
|
|
97
|
+
/**
|
|
98
|
+
* Get primary percentage
|
|
99
|
+
*/
|
|
100
|
+
private get primaryPercentage();
|
|
101
|
+
/**
|
|
102
|
+
* Get secondary percentage
|
|
103
|
+
*/
|
|
104
|
+
private get secondaryPercentage();
|
|
105
|
+
/**
|
|
106
|
+
* Check width and height are valid
|
|
107
|
+
* @returns if size is valid
|
|
66
108
|
*/
|
|
67
|
-
|
|
109
|
+
private get hasValidSize();
|
|
68
110
|
/**
|
|
69
|
-
*
|
|
70
|
-
* @
|
|
71
|
-
* @
|
|
72
|
-
* @returns {void}
|
|
111
|
+
* Get default value format
|
|
112
|
+
* @param value A value on each side of swing gauge
|
|
113
|
+
* @returns default value format
|
|
73
114
|
*/
|
|
74
|
-
|
|
115
|
+
private defaultValueFormatter;
|
|
75
116
|
/**
|
|
76
|
-
*
|
|
77
|
-
* @ignore
|
|
78
|
-
* @param changedProperties changed properties
|
|
79
|
-
* @returns {void}
|
|
117
|
+
* Style for primary container
|
|
80
118
|
*/
|
|
81
|
-
|
|
119
|
+
private primaryContainerStyle;
|
|
82
120
|
/**
|
|
83
|
-
*
|
|
84
|
-
* @ignore
|
|
85
|
-
* @param changedProperties changed properties
|
|
86
|
-
* @returns {void}
|
|
121
|
+
* Style for secondary container
|
|
87
122
|
*/
|
|
88
|
-
|
|
123
|
+
private secondaryContainerStyle;
|
|
124
|
+
/**
|
|
125
|
+
* Style for label
|
|
126
|
+
*/
|
|
127
|
+
private labelStyle;
|
|
128
|
+
/**
|
|
129
|
+
* Style for both values
|
|
130
|
+
*/
|
|
131
|
+
private valueStyle;
|
|
132
|
+
/**
|
|
133
|
+
* Get primary container element
|
|
134
|
+
*/
|
|
135
|
+
private primaryContainer;
|
|
136
|
+
/**
|
|
137
|
+
* Get secondary container element
|
|
138
|
+
*/
|
|
139
|
+
private secondaryContainer;
|
|
140
|
+
/**
|
|
141
|
+
* Get legend container element
|
|
142
|
+
*/
|
|
143
|
+
private legendContainer;
|
|
144
|
+
/**
|
|
145
|
+
* Get canvas element
|
|
146
|
+
*/
|
|
147
|
+
private canvas;
|
|
89
148
|
/**
|
|
90
|
-
*
|
|
91
|
-
* @
|
|
149
|
+
* Getter size of component
|
|
150
|
+
* @returns return size of canvas
|
|
151
|
+
*/
|
|
152
|
+
get canvasSize(): SwingGaugeCanvasSize;
|
|
153
|
+
/**
|
|
154
|
+
* Validate number
|
|
155
|
+
* @protected
|
|
156
|
+
* @param value number that want to validate
|
|
157
|
+
* @param propName name of property
|
|
158
|
+
* @returns {number} valid number
|
|
159
|
+
*/
|
|
160
|
+
protected validateNumber(value: number, propName: string): number;
|
|
161
|
+
/**
|
|
162
|
+
* On update lifecycle
|
|
92
163
|
* @param changedProperties changed properties
|
|
93
164
|
* @returns {void}
|
|
94
165
|
*/
|
|
95
|
-
protected
|
|
166
|
+
protected update(changedProperties: PropertyValues): void;
|
|
96
167
|
/**
|
|
97
168
|
* Handles when component disconnected
|
|
98
|
-
* @private
|
|
99
169
|
* @returns {void}
|
|
100
170
|
*/
|
|
101
171
|
disconnectedCallback(): void;
|
|
102
172
|
/**
|
|
103
173
|
* Calls easing based on both left and right values
|
|
104
|
-
* @
|
|
105
|
-
* @param
|
|
106
|
-
* @param {number} v2 right value
|
|
174
|
+
* @param primaryValue primary value
|
|
175
|
+
* @param secondaryValue secondary value
|
|
107
176
|
* @returns {void}
|
|
108
177
|
*/
|
|
109
178
|
private ease;
|
|
110
179
|
/**
|
|
111
180
|
* Eases the fill percentage
|
|
112
|
-
* @
|
|
113
|
-
* @param
|
|
114
|
-
* @param
|
|
115
|
-
* @param {number} time ease time
|
|
181
|
+
* @param to ease to value
|
|
182
|
+
* @param from ease from value
|
|
183
|
+
* @param time ease time
|
|
116
184
|
* @returns {void}
|
|
117
185
|
*/
|
|
118
186
|
private easeTo;
|
|
119
187
|
/**
|
|
120
|
-
*
|
|
121
|
-
* @returns {
|
|
188
|
+
* Restart the animation, re-render the canvas
|
|
189
|
+
* @returns {void}
|
|
190
|
+
*/
|
|
191
|
+
private animateCanvas;
|
|
192
|
+
/**
|
|
193
|
+
* Render chart
|
|
194
|
+
* @param onDraw drawing type
|
|
195
|
+
* @param isFrameUpdated Optional called by on frame event
|
|
196
|
+
* @returns {void}
|
|
197
|
+
*/
|
|
198
|
+
private renderCanvas;
|
|
199
|
+
/**
|
|
200
|
+
* Get computed swing-gauge data for drawing
|
|
201
|
+
* @returns swing-gauge data
|
|
122
202
|
*/
|
|
123
|
-
private
|
|
203
|
+
private getData;
|
|
124
204
|
/**
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
* @returns
|
|
205
|
+
* Get number from CSS declaration value
|
|
206
|
+
* @param styleValue value of CSS declaration
|
|
207
|
+
* @returns number without CSS unit
|
|
128
208
|
*/
|
|
129
|
-
private
|
|
209
|
+
private getValueFromStyle;
|
|
130
210
|
/**
|
|
131
|
-
*
|
|
211
|
+
* Compute and update style of containers and labels
|
|
132
212
|
* @returns {void}
|
|
133
213
|
*/
|
|
134
|
-
private
|
|
214
|
+
private updateGaugePositions;
|
|
135
215
|
/**
|
|
136
|
-
*
|
|
137
|
-
* @param
|
|
216
|
+
* Compute position style
|
|
217
|
+
* @param segment primary or secondary
|
|
218
|
+
* @param maxRadian max radian
|
|
219
|
+
* @param radiusOffset radius offset from gauge upper bound
|
|
220
|
+
* @param offset line length offset
|
|
221
|
+
* @returns position style
|
|
222
|
+
*/
|
|
223
|
+
private getPositionStyle;
|
|
224
|
+
/**
|
|
225
|
+
* Scales canvas variables making it responsive before painting
|
|
138
226
|
* @returns {void}
|
|
139
227
|
*/
|
|
140
|
-
private
|
|
228
|
+
private calculateCanvasSize;
|
|
229
|
+
/**
|
|
230
|
+
* Calculate and update font sizes on canvas
|
|
231
|
+
* @returns {void}
|
|
232
|
+
*/
|
|
233
|
+
private updateFontSize;
|
|
234
|
+
/**
|
|
235
|
+
* Calculate label or value font size
|
|
236
|
+
* @param ctx canvas context
|
|
237
|
+
* @param textType text type
|
|
238
|
+
* @returns {number} font size
|
|
239
|
+
*/
|
|
240
|
+
private calculateFontSize;
|
|
241
|
+
/**
|
|
242
|
+
* Update label font size
|
|
243
|
+
* @returns {void}
|
|
244
|
+
*/
|
|
245
|
+
private calculateLabelFontSize;
|
|
246
|
+
/**
|
|
247
|
+
* Update value font size
|
|
248
|
+
* @returns {void}
|
|
249
|
+
*/
|
|
250
|
+
private calculateValueFontSize;
|
|
251
|
+
/**
|
|
252
|
+
* Compute percentage of value
|
|
253
|
+
* @param value value of primary or secondary
|
|
254
|
+
* @returns percentage of value
|
|
255
|
+
*/
|
|
256
|
+
private getPercentage;
|
|
257
|
+
/**
|
|
258
|
+
* Handles canvas resize
|
|
259
|
+
* @returns {void}
|
|
260
|
+
*/
|
|
261
|
+
private onCanvasResize;
|
|
262
|
+
/**
|
|
263
|
+
* Renders legend container
|
|
264
|
+
* @returns {TemplateResult} Legend template or null
|
|
265
|
+
*/
|
|
266
|
+
private get legendTemplate();
|
|
267
|
+
/**
|
|
268
|
+
* Renders primary legend if property present
|
|
269
|
+
* @returns {TemplateResult} Primary legend template or null
|
|
270
|
+
*/
|
|
271
|
+
private get primaryLegendTemplate();
|
|
272
|
+
/**
|
|
273
|
+
* Renders secondary legend if property present
|
|
274
|
+
* @returns {TemplateResult} Secondary legend template or null
|
|
275
|
+
*/
|
|
276
|
+
private get secondaryLegendTemplate();
|
|
277
|
+
render(): TemplateResult;
|
|
141
278
|
}
|
|
142
|
-
|
|
279
|
+
//# sourceMappingURL=index.d.ts.map
|
|
143
280
|
declare global {
|
|
144
281
|
interface HTMLElementTagNameMap {
|
|
145
282
|
'ef-swing-gauge': SwingGauge;
|