@oanda/labs-value-at-risk-widget 1.0.144 → 1.0.145
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 +979 -21835
- package/dist/module/ValueAtRiskWidget/ChartWithData.js +27 -20
- package/dist/module/ValueAtRiskWidget/ChartWithData.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/Tool.js +37 -29
- package/dist/module/ValueAtRiskWidget/Tool.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/ToolWithData.js +25 -18
- package/dist/module/ValueAtRiskWidget/ToolWithData.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/ValueAtRiskWidget.js +21 -14
- package/dist/module/ValueAtRiskWidget/ValueAtRiskWidget.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/Widget.js +22 -15
- package/dist/module/ValueAtRiskWidget/Widget.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/Chart.js +27 -19
- package/dist/module/ValueAtRiskWidget/components/Chart/Chart.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/constants.js +12 -6
- package/dist/module/ValueAtRiskWidget/components/Chart/constants.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/getOption.js +46 -39
- package/dist/module/ValueAtRiskWidget/components/Chart/getOption.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/getPercentValueByPips.js +8 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/getPercentValueByPips.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/index.js +16 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/index.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Chart/types.js +5 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/DashedLine.js +13 -6
- package/dist/module/ValueAtRiskWidget/components/Legend/DashedLine.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/DesktopLegend.js +27 -20
- package/dist/module/ValueAtRiskWidget/components/Legend/DesktopLegend.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/Legend.js +32 -25
- package/dist/module/ValueAtRiskWidget/components/Legend/Legend.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/MobileLegend.js +35 -28
- package/dist/module/ValueAtRiskWidget/components/Legend/MobileLegend.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/constants.js +7 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/constants.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/index.js +27 -2
- package/dist/module/ValueAtRiskWidget/components/Legend/index.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/types.js +7 -1
- package/dist/module/ValueAtRiskWidget/components/Legend/types.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/index.js +16 -1
- package/dist/module/ValueAtRiskWidget/index.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/render.js +13 -10
- package/dist/module/ValueAtRiskWidget/render.js.map +1 -1
- package/dist/module/ValueAtRiskWidget/types.js +5 -1
- package/dist/module/ValueAtRiskWidget/utils.js +9 -1
- package/dist/module/ValueAtRiskWidget/utils.js.map +1 -1
- package/dist/module/gql/getValueAtRiskAssetClasses.js +8 -2
- package/dist/module/gql/getValueAtRiskAssetClasses.js.map +1 -1
- package/dist/module/gql/getValueAtRiskChart.js +8 -2
- package/dist/module/gql/getValueAtRiskChart.js.map +1 -1
- package/dist/module/gql/types/fragment-masking.js +11 -3
- package/dist/module/gql/types/fragment-masking.js.map +1 -1
- package/dist/module/gql/types/gql.js +9 -2
- package/dist/module/gql/types/gql.js.map +1 -1
- package/dist/module/gql/types/graphql.js +22 -16
- package/dist/module/gql/types/graphql.js.map +1 -1
- package/dist/module/gql/types/index.js +27 -2
- package/dist/module/gql/types/index.js.map +1 -1
- package/dist/module/index.js +16 -1
- package/dist/module/index.js.map +1 -1
- package/dist/module/translations/index.js +21 -14
- package/dist/module/translations/index.js.map +1 -1
- package/dist/module/translations/translations.js +7 -1
- package/dist/module/translations/translations.js.map +1 -1
- package/dist/types/gql/getValueAtRiskAssetClasses.d.ts +1 -1
- package/dist/types/gql/getValueAtRiskChart.d.ts +1 -1
- package/lokalise.config.json +1 -1
- package/package.json +8 -4
- package/tsconfig.types.json +2 -4
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Legend = void 0;
|
|
7
|
+
var _labsWidgetCommon = require("@oanda/labs-widget-common");
|
|
8
|
+
var _monoI18n = require("@oanda/mono-i18n");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _DesktopLegend = require("./DesktopLegend");
|
|
11
|
+
var _MobileLegend = require("./MobileLegend");
|
|
12
|
+
var _types = require("./types");
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
7
14
|
const Legend = _ref => {
|
|
8
15
|
let {
|
|
9
16
|
data
|
|
@@ -11,69 +18,69 @@ const Legend = _ref => {
|
|
|
11
18
|
const {
|
|
12
19
|
size,
|
|
13
20
|
isDark
|
|
14
|
-
} = useLayoutProvider();
|
|
21
|
+
} = (0, _labsWidgetCommon.useLayoutProvider)();
|
|
15
22
|
const {
|
|
16
23
|
lang
|
|
17
|
-
} = useLocale();
|
|
18
|
-
const isDesktop = size === Size.DESKTOP;
|
|
19
|
-
return
|
|
24
|
+
} = (0, _monoI18n.useLocale)();
|
|
25
|
+
const isDesktop = size === _labsWidgetCommon.Size.DESKTOP;
|
|
26
|
+
return _react.default.createElement(_react.default.Fragment, null, isDesktop ? _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_DesktopLegend.DesktopLegend, {
|
|
20
27
|
data: [{
|
|
21
|
-
id: DataNames.AVERAGE,
|
|
28
|
+
id: _types.DataNames.AVERAGE,
|
|
22
29
|
label: lang('average'),
|
|
23
30
|
value: data.valueAtRiskChart.down.average
|
|
24
31
|
}, {
|
|
25
|
-
id: DataNames.MEDIAN,
|
|
32
|
+
id: _types.DataNames.MEDIAN,
|
|
26
33
|
label: lang('median'),
|
|
27
34
|
value: data.valueAtRiskChart.down.median
|
|
28
35
|
}, {
|
|
29
|
-
id: DataNames.THRESHOLD,
|
|
36
|
+
id: _types.DataNames.THRESHOLD,
|
|
30
37
|
label: `${lang('threshold')} (95%)`,
|
|
31
38
|
value: data.valueAtRiskChart.down.threshold
|
|
32
39
|
}, {
|
|
33
|
-
id: DataNames.MIN,
|
|
40
|
+
id: _types.DataNames.MIN,
|
|
34
41
|
label: lang('min'),
|
|
35
42
|
value: data.valueAtRiskChart.down.max
|
|
36
43
|
}],
|
|
37
44
|
isDark: isDark,
|
|
38
45
|
lang: lang
|
|
39
|
-
}),
|
|
46
|
+
}), _react.default.createElement(_DesktopLegend.DesktopLegend, {
|
|
40
47
|
data: [{
|
|
41
|
-
id: DataNames.AVERAGE,
|
|
48
|
+
id: _types.DataNames.AVERAGE,
|
|
42
49
|
label: lang('average'),
|
|
43
50
|
value: data.valueAtRiskChart.up.average
|
|
44
51
|
}, {
|
|
45
|
-
id: DataNames.MEDIAN,
|
|
52
|
+
id: _types.DataNames.MEDIAN,
|
|
46
53
|
label: lang('median'),
|
|
47
54
|
value: data.valueAtRiskChart.up.median
|
|
48
55
|
}, {
|
|
49
|
-
id: DataNames.THRESHOLD,
|
|
56
|
+
id: _types.DataNames.THRESHOLD,
|
|
50
57
|
label: `${lang('threshold')} (95%)`,
|
|
51
58
|
value: data.valueAtRiskChart.up.threshold
|
|
52
59
|
}, {
|
|
53
|
-
id: DataNames.MAX,
|
|
60
|
+
id: _types.DataNames.MAX,
|
|
54
61
|
label: lang('max'),
|
|
55
62
|
value: data.valueAtRiskChart.up.max
|
|
56
63
|
}],
|
|
57
64
|
isDark: isDark,
|
|
58
65
|
lang: lang
|
|
59
|
-
})) :
|
|
66
|
+
})) : _react.default.createElement(_MobileLegend.MobileLegend, {
|
|
60
67
|
data: [{
|
|
61
|
-
id: DataNames.AVERAGE,
|
|
68
|
+
id: _types.DataNames.AVERAGE,
|
|
62
69
|
label: lang('average'),
|
|
63
70
|
valueDown: data.valueAtRiskChart.down.average,
|
|
64
71
|
valueUp: data.valueAtRiskChart.up.average
|
|
65
72
|
}, {
|
|
66
|
-
id: DataNames.MEDIAN,
|
|
73
|
+
id: _types.DataNames.MEDIAN,
|
|
67
74
|
label: lang('median'),
|
|
68
75
|
valueDown: data.valueAtRiskChart.down.median,
|
|
69
76
|
valueUp: data.valueAtRiskChart.up.median
|
|
70
77
|
}, {
|
|
71
|
-
id: DataNames.THRESHOLD,
|
|
78
|
+
id: _types.DataNames.THRESHOLD,
|
|
72
79
|
label: `${lang('threshold')} (95%)`,
|
|
73
80
|
valueDown: data.valueAtRiskChart.down.threshold,
|
|
74
81
|
valueUp: data.valueAtRiskChart.up.threshold
|
|
75
82
|
}, {
|
|
76
|
-
id: DataNames.MAX,
|
|
83
|
+
id: _types.DataNames.MAX,
|
|
77
84
|
label: `${lang('min')}/${lang('max')}`,
|
|
78
85
|
valueDown: data.valueAtRiskChart.down.max,
|
|
79
86
|
valueUp: data.valueAtRiskChart.up.max
|
|
@@ -82,5 +89,5 @@ const Legend = _ref => {
|
|
|
82
89
|
lang: lang
|
|
83
90
|
}));
|
|
84
91
|
};
|
|
85
|
-
|
|
92
|
+
exports.Legend = Legend;
|
|
86
93
|
//# sourceMappingURL=Legend.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Legend.js","names":["
|
|
1
|
+
{"version":3,"file":"Legend.js","names":["_labsWidgetCommon","require","_monoI18n","_react","_interopRequireDefault","_DesktopLegend","_MobileLegend","_types","e","__esModule","default","Legend","_ref","data","size","isDark","useLayoutProvider","lang","useLocale","isDesktop","Size","DESKTOP","createElement","Fragment","DesktopLegend","id","DataNames","AVERAGE","label","value","valueAtRiskChart","down","average","MEDIAN","median","THRESHOLD","threshold","MIN","max","up","MAX","MobileLegend","valueDown","valueUp","exports"],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/Legend.tsx"],"sourcesContent":["import { Size, useLayoutProvider } from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport React from 'react';\n\nimport { DesktopLegend } from './DesktopLegend';\nimport { MobileLegend } from './MobileLegend';\nimport type { LegendProps } from './types';\nimport { DataNames } from './types';\n\nconst Legend = ({ data }: LegendProps) => {\n const { size, isDark } = useLayoutProvider();\n const { lang } = useLocale();\n const isDesktop = size === Size.DESKTOP;\n\n return (\n <>\n {isDesktop ? (\n <>\n <DesktopLegend\n data={[\n {\n id: DataNames.AVERAGE,\n label: lang('average'),\n value: data.valueAtRiskChart!.down.average,\n },\n {\n id: DataNames.MEDIAN,\n label: lang('median'),\n value: data.valueAtRiskChart!.down.median,\n },\n {\n id: DataNames.THRESHOLD,\n label: `${lang('threshold')} (95%)`,\n value: data.valueAtRiskChart!.down.threshold,\n },\n {\n id: DataNames.MIN,\n label: lang('min'),\n value: data.valueAtRiskChart!.down.max,\n },\n ]}\n isDark={isDark}\n lang={lang}\n />\n <DesktopLegend\n data={[\n {\n id: DataNames.AVERAGE,\n label: lang('average'),\n value: data.valueAtRiskChart!.up.average,\n },\n {\n id: DataNames.MEDIAN,\n label: lang('median'),\n value: data.valueAtRiskChart!.up.median,\n },\n {\n id: DataNames.THRESHOLD,\n label: `${lang('threshold')} (95%)`,\n value: data.valueAtRiskChart!.up.threshold,\n },\n {\n id: DataNames.MAX,\n label: lang('max'),\n value: data.valueAtRiskChart!.up.max,\n },\n ]}\n isDark={isDark}\n lang={lang}\n />\n </>\n ) : (\n <MobileLegend\n data={[\n {\n id: DataNames.AVERAGE,\n label: lang('average'),\n valueDown: data.valueAtRiskChart!.down.average,\n valueUp: data.valueAtRiskChart!.up.average,\n },\n {\n id: DataNames.MEDIAN,\n label: lang('median'),\n valueDown: data.valueAtRiskChart!.down.median,\n valueUp: data.valueAtRiskChart!.up.median,\n },\n {\n id: DataNames.THRESHOLD,\n label: `${lang('threshold')} (95%)`,\n valueDown: data.valueAtRiskChart!.down.threshold,\n valueUp: data.valueAtRiskChart!.up.threshold,\n },\n {\n id: DataNames.MAX,\n label: `${lang('min')}/${lang('max')}`,\n valueDown: data.valueAtRiskChart!.down.max,\n valueUp: data.valueAtRiskChart!.up.max,\n },\n ]}\n isDark={isDark}\n lang={lang}\n />\n )}\n </>\n );\n};\n\nexport { Legend };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,49 +1,56 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.MobileLegend = void 0;
|
|
7
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _constants = require("./constants");
|
|
10
|
+
var _DashedLine = require("./DashedLine");
|
|
11
|
+
var _types = require("./types");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
6
13
|
const MobileLegend = _ref => {
|
|
7
14
|
let {
|
|
8
15
|
data,
|
|
9
16
|
isDark,
|
|
10
17
|
lang
|
|
11
18
|
} = _ref;
|
|
12
|
-
return
|
|
13
|
-
className:
|
|
19
|
+
return _react.default.createElement("div", {
|
|
20
|
+
className: (0, _classnames.default)('lw-mb-6 lw-p-2 lw-text-xs', {
|
|
14
21
|
'lw-bg-border-primary': isDark,
|
|
15
22
|
'lw-border lw-border-solid lw-border-border-primary': !isDark
|
|
16
23
|
})
|
|
17
|
-
}, data.map(item =>
|
|
24
|
+
}, data.map(item => _react.default.createElement("div", {
|
|
18
25
|
key: item.id,
|
|
19
|
-
className:
|
|
20
|
-
'[&_line]:lw-stroke-border-disabled': item.id === DataNames.MAX || item.id === DataNames.MIN
|
|
26
|
+
className: (0, _classnames.default)('lw-flex lw-items-center lw-justify-between', {
|
|
27
|
+
'[&_line]:lw-stroke-border-disabled': item.id === _types.DataNames.MAX || item.id === _types.DataNames.MIN
|
|
21
28
|
})
|
|
22
|
-
},
|
|
29
|
+
}, _react.default.createElement("div", {
|
|
23
30
|
className: "lw-mr-2 lw-flex lw-w-10 lw-items-center"
|
|
24
|
-
}, item.id !== DataNames.MAX && item.id !== DataNames.MIN &&
|
|
25
|
-
className:
|
|
26
|
-
'lw-bg-gold': item.id === DataNames.AVERAGE,
|
|
27
|
-
'lw-bg-turquoise-light': item.id === DataNames.MEDIAN,
|
|
28
|
-
'lw-bg-violet-light': item.id === DataNames.THRESHOLD
|
|
31
|
+
}, item.id !== _types.DataNames.MAX && item.id !== _types.DataNames.MIN && _react.default.createElement("div", {
|
|
32
|
+
className: (0, _classnames.default)('lw-h-[8px] lw-w-[8px] lw-rounded-full lw-border-[1px] lw-border-white lw-bg-gold', {
|
|
33
|
+
'lw-bg-gold': item.id === _types.DataNames.AVERAGE,
|
|
34
|
+
'lw-bg-turquoise-light': item.id === _types.DataNames.MEDIAN,
|
|
35
|
+
'lw-bg-violet-light': item.id === _types.DataNames.THRESHOLD
|
|
29
36
|
})
|
|
30
|
-
}),
|
|
37
|
+
}), _react.default.createElement(_DashedLine.DashedLine, {
|
|
31
38
|
isDark: isDark,
|
|
32
|
-
strokeDasharray: lineTypes[item.id],
|
|
33
|
-
width: item.id === DataNames.MAX || item.id === DataNames.MIN ? '38' : undefined
|
|
34
|
-
}), item.id !== DataNames.MAX && item.id !== DataNames.MIN &&
|
|
35
|
-
className:
|
|
36
|
-
'lw-bg-gold': item.id === DataNames.AVERAGE,
|
|
37
|
-
'lw-bg-turquoise-light': item.id === DataNames.MEDIAN,
|
|
38
|
-
'lw-bg-violet-light': item.id === DataNames.THRESHOLD
|
|
39
|
+
strokeDasharray: _constants.lineTypes[item.id],
|
|
40
|
+
width: item.id === _types.DataNames.MAX || item.id === _types.DataNames.MIN ? '38' : undefined
|
|
41
|
+
}), item.id !== _types.DataNames.MAX && item.id !== _types.DataNames.MIN && _react.default.createElement("div", {
|
|
42
|
+
className: (0, _classnames.default)('lw-ml-[-8px] lw-h-[8px] lw-w-[8px] lw-border-[1px] lw-border-white lw-bg-gold', {
|
|
43
|
+
'lw-bg-gold': item.id === _types.DataNames.AVERAGE,
|
|
44
|
+
'lw-bg-turquoise-light': item.id === _types.DataNames.MEDIAN,
|
|
45
|
+
'lw-bg-violet-light': item.id === _types.DataNames.THRESHOLD
|
|
39
46
|
})
|
|
40
|
-
})),
|
|
47
|
+
})), _react.default.createElement("span", {
|
|
41
48
|
className: "lw-flex-1 lw-px-2"
|
|
42
|
-
}, `${item.label}:`),
|
|
49
|
+
}, `${item.label}:`), _react.default.createElement("span", {
|
|
43
50
|
className: "lw-flex-1 lw-text-right"
|
|
44
|
-
}, `${item.valueDown.toFixed()} ${lang('pips')}`),
|
|
51
|
+
}, `${item.valueDown.toFixed()} ${lang('pips')}`), _react.default.createElement("span", {
|
|
45
52
|
className: "lw-flex-1 lw-text-right"
|
|
46
53
|
}, `${item.valueUp.toFixed()} ${lang('pips')}`))));
|
|
47
54
|
};
|
|
48
|
-
|
|
55
|
+
exports.MobileLegend = MobileLegend;
|
|
49
56
|
//# sourceMappingURL=MobileLegend.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MobileLegend.js","names":["
|
|
1
|
+
{"version":3,"file":"MobileLegend.js","names":["_classnames","_interopRequireDefault","require","_react","_constants","_DashedLine","_types","e","__esModule","default","MobileLegend","_ref","data","isDark","lang","createElement","className","classnames","map","item","key","id","DataNames","MAX","MIN","AVERAGE","MEDIAN","THRESHOLD","DashedLine","strokeDasharray","lineTypes","width","undefined","label","valueDown","toFixed","valueUp","exports"],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/MobileLegend.tsx"],"sourcesContent":["import classnames from 'classnames';\nimport React from 'react';\n\nimport { lineTypes } from './constants';\nimport { DashedLine } from './DashedLine';\nimport type { MobileLegendProps } from './types';\nimport { DataNames } from './types';\n\nconst MobileLegend = ({ data, isDark, lang }: MobileLegendProps) => (\n <div\n className={classnames('lw-mb-6 lw-p-2 lw-text-xs', {\n 'lw-bg-border-primary': isDark,\n 'lw-border lw-border-solid lw-border-border-primary': !isDark,\n })}\n >\n {data.map((item) => (\n <div\n key={item.id}\n className={classnames('lw-flex lw-items-center lw-justify-between', {\n '[&_line]:lw-stroke-border-disabled':\n item.id === DataNames.MAX || item.id === DataNames.MIN,\n })}\n >\n <div className=\"lw-mr-2 lw-flex lw-w-10 lw-items-center\">\n {item.id !== DataNames.MAX && item.id !== DataNames.MIN && (\n <div\n className={classnames(\n 'lw-h-[8px] lw-w-[8px] lw-rounded-full lw-border-[1px] lw-border-white lw-bg-gold',\n {\n 'lw-bg-gold': item.id === DataNames.AVERAGE,\n 'lw-bg-turquoise-light': item.id === DataNames.MEDIAN,\n 'lw-bg-violet-light': item.id === DataNames.THRESHOLD,\n }\n )}\n />\n )}\n <DashedLine\n isDark={isDark}\n strokeDasharray={lineTypes[item.id]}\n width={\n item.id === DataNames.MAX || item.id === DataNames.MIN\n ? '38'\n : undefined\n }\n />\n {item.id !== DataNames.MAX && item.id !== DataNames.MIN && (\n <div\n className={classnames(\n 'lw-ml-[-8px] lw-h-[8px] lw-w-[8px] lw-border-[1px] lw-border-white lw-bg-gold',\n {\n 'lw-bg-gold': item.id === DataNames.AVERAGE,\n 'lw-bg-turquoise-light': item.id === DataNames.MEDIAN,\n 'lw-bg-violet-light': item.id === DataNames.THRESHOLD,\n }\n )}\n />\n )}\n </div>\n <span className=\"lw-flex-1 lw-px-2\">{`${item.label}:`}</span>\n <span className=\"lw-flex-1 lw-text-right\">\n {`${item.valueDown.toFixed()} ${lang('pips')}`}\n </span>\n <span className=\"lw-flex-1 lw-text-right\">\n {`${item.valueUp.toFixed()} ${lang('pips')}`}\n </span>\n </div>\n ))}\n </div>\n);\n\nexport { MobileLegend };\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAEA,IAAAI,MAAA,GAAAJ,OAAA;AAAoC,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,MAAMG,YAAY,GAAGC,IAAA;EAAA,IAAC;IAAEC,IAAI;IAAEC,MAAM;IAAEC;EAAwB,CAAC,GAAAH,IAAA;EAAA,OAC7DR,MAAA,CAAAM,OAAA,CAAAM,aAAA;IACEC,SAAS,EAAE,IAAAC,mBAAU,EAAC,2BAA2B,EAAE;MACjD,sBAAsB,EAAEJ,MAAM;MAC9B,oDAAoD,EAAE,CAACA;IACzD,CAAC;EAAE,GAEFD,IAAI,CAACM,GAAG,CAAEC,IAAI,IACbhB,MAAA,CAAAM,OAAA,CAAAM,aAAA;IACEK,GAAG,EAAED,IAAI,CAACE,EAAG;IACbL,SAAS,EAAE,IAAAC,mBAAU,EAAC,4CAA4C,EAAE;MAClE,oCAAoC,EAClCE,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACC,GAAG,IAAIJ,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACE;IACvD,CAAC;EAAE,GAEHrB,MAAA,CAAAM,OAAA,CAAAM,aAAA;IAAKC,SAAS,EAAC;EAAyC,GACrDG,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACC,GAAG,IAAIJ,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACE,GAAG,IACrDrB,MAAA,CAAAM,OAAA,CAAAM,aAAA;IACEC,SAAS,EAAE,IAAAC,mBAAU,EACnB,kFAAkF,EAClF;MACE,YAAY,EAAEE,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACG,OAAO;MAC3C,uBAAuB,EAAEN,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACI,MAAM;MACrD,oBAAoB,EAAEP,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACK;IAC9C,CACF;EAAE,CACH,CACF,EACDxB,MAAA,CAAAM,OAAA,CAAAM,aAAA,CAACV,WAAA,CAAAuB,UAAU;IACTf,MAAM,EAAEA,MAAO;IACfgB,eAAe,EAAEC,oBAAS,CAACX,IAAI,CAACE,EAAE,CAAE;IACpCU,KAAK,EACHZ,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACC,GAAG,IAAIJ,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACE,GAAG,GAClD,IAAI,GACJQ;EACL,CACF,CAAC,EACDb,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACC,GAAG,IAAIJ,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACE,GAAG,IACrDrB,MAAA,CAAAM,OAAA,CAAAM,aAAA;IACEC,SAAS,EAAE,IAAAC,mBAAU,EACnB,+EAA+E,EAC/E;MACE,YAAY,EAAEE,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACG,OAAO;MAC3C,uBAAuB,EAAEN,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACI,MAAM;MACrD,oBAAoB,EAAEP,IAAI,CAACE,EAAE,KAAKC,gBAAS,CAACK;IAC9C,CACF;EAAE,CACH,CAEA,CAAC,EACNxB,MAAA,CAAAM,OAAA,CAAAM,aAAA;IAAMC,SAAS,EAAC;EAAmB,GAAE,GAAGG,IAAI,CAACc,KAAK,GAAU,CAAC,EAC7D9B,MAAA,CAAAM,OAAA,CAAAM,aAAA;IAAMC,SAAS,EAAC;EAAyB,GACtC,GAAGG,IAAI,CAACe,SAAS,CAACC,OAAO,CAAC,CAAC,IAAIrB,IAAI,CAAC,MAAM,CAAC,EACxC,CAAC,EACPX,MAAA,CAAAM,OAAA,CAAAM,aAAA;IAAMC,SAAS,EAAC;EAAyB,GACtC,GAAGG,IAAI,CAACiB,OAAO,CAACD,OAAO,CAAC,CAAC,IAAIrB,IAAI,CAAC,MAAM,CAAC,EACtC,CACH,CACN,CACE,CAAC;AAAA,CACP;AAACuB,OAAA,CAAA3B,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","names":["lineTypes","min","max","median","threshold","average"],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/constants.tsx"],"sourcesContent":["import type { DataNames } from './types';\n\nexport const lineTypes: Record<DataNames, string> = {\n min: '0',\n max: '0',\n median: '4 5',\n threshold: '6 2',\n average: '2 2',\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.js","names":["lineTypes","exports","min","max","median","threshold","average"],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/constants.tsx"],"sourcesContent":["import type { DataNames } from './types';\n\nexport const lineTypes: Record<DataNames, string> = {\n min: '0',\n max: '0',\n median: '4 5',\n threshold: '6 2',\n average: '2 2',\n};\n"],"mappings":";;;;;;AAEO,MAAMA,SAAoC,GAAAC,OAAA,CAAAD,SAAA,GAAG;EAClDE,GAAG,EAAE,GAAG;EACRC,GAAG,EAAE,GAAG;EACRC,MAAM,EAAE,KAAK;EACbC,SAAS,EAAE,KAAK;EAChBC,OAAO,EAAE;AACX,CAAC","ignoreList":[]}
|
|
@@ -1,3 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _Legend = require("./Legend");
|
|
7
|
+
Object.keys(_Legend).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _Legend[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _Legend[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _types = require("./types");
|
|
18
|
+
Object.keys(_types).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _types[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _types[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
3
28
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/index.ts"],"sourcesContent":["export * from './Legend';\nexport * from './types';\n"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_Legend","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_types"],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/index.ts"],"sourcesContent":["export * from './Legend';\nexport * from './types';\n"],"mappings":";;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,OAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,OAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,OAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,MAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,MAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,MAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,MAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DataNames = void 0;
|
|
7
|
+
let DataNames = exports.DataNames = function (DataNames) {
|
|
2
8
|
DataNames["MIN"] = "min";
|
|
3
9
|
DataNames["MAX"] = "max";
|
|
4
10
|
DataNames["MEDIAN"] = "median";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":["DataNames"],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/types.tsx"],"sourcesContent":["import type { GetValueAtRiskChartQuery } from '../../../gql/types/graphql';\n\nexport enum DataNames {\n MIN = 'min',\n MAX = 'max',\n MEDIAN = 'median',\n THRESHOLD = 'threshold',\n AVERAGE = 'average',\n}\n\nexport interface DesktopLegendProps {\n data: {\n id: DataNames;\n label: string;\n value: number;\n }[];\n isDark: boolean;\n lang: (key: string) => string;\n}\n\nexport interface MobileLegendProps {\n data: {\n id: DataNames;\n label: string;\n valueUp: number;\n valueDown: number;\n }[];\n isDark: boolean;\n lang: (key: string) => string;\n}\n\nexport interface LegendProps {\n data: GetValueAtRiskChartQuery;\n}\n\nexport interface DashedLineProps {\n strokeDasharray?: string;\n width?: string;\n isDark: boolean;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","names":["DataNames","exports"],"sources":["../../../../../src/ValueAtRiskWidget/components/Legend/types.tsx"],"sourcesContent":["import type { GetValueAtRiskChartQuery } from '../../../gql/types/graphql';\n\nexport enum DataNames {\n MIN = 'min',\n MAX = 'max',\n MEDIAN = 'median',\n THRESHOLD = 'threshold',\n AVERAGE = 'average',\n}\n\nexport interface DesktopLegendProps {\n data: {\n id: DataNames;\n label: string;\n value: number;\n }[];\n isDark: boolean;\n lang: (key: string) => string;\n}\n\nexport interface MobileLegendProps {\n data: {\n id: DataNames;\n label: string;\n valueUp: number;\n valueDown: number;\n }[];\n isDark: boolean;\n lang: (key: string) => string;\n}\n\nexport interface LegendProps {\n data: GetValueAtRiskChartQuery;\n}\n\nexport interface DashedLineProps {\n strokeDasharray?: string;\n width?: string;\n isDark: boolean;\n}\n"],"mappings":";;;;;;IAEYA,SAAS,GAAAC,OAAA,CAAAD,SAAA,aAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
|
|
@@ -1,2 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _ValueAtRiskWidget = require("./ValueAtRiskWidget");
|
|
7
|
+
Object.keys(_ValueAtRiskWidget).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _ValueAtRiskWidget[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _ValueAtRiskWidget[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
2
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/ValueAtRiskWidget/index.ts"],"sourcesContent":["export * from './ValueAtRiskWidget';\n"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_ValueAtRiskWidget","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/ValueAtRiskWidget/index.ts"],"sourcesContent":["export * from './ValueAtRiskWidget';\n"],"mappings":";;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,kBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,kBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,kBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _labsWidgetCommon = require("@oanda/labs-widget-common");
|
|
4
|
+
var _react = _interopRequireDefault(require("react"));
|
|
5
|
+
var _client = require("react-dom/client");
|
|
6
|
+
var _graphql = require("../gql/types/graphql");
|
|
7
|
+
var _ValueAtRiskWidget = require("./ValueAtRiskWidget");
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
6
9
|
const {
|
|
7
10
|
graphqlUrl
|
|
8
11
|
} = window.widgetsConfig || {};
|
|
9
12
|
const valueAtRiskParamsElements = document.querySelectorAll('div[data-value-at-risk-params]');
|
|
10
13
|
valueAtRiskParamsElements.forEach(element => {
|
|
11
|
-
const root = createRoot(element);
|
|
14
|
+
const root = (0, _client.createRoot)(element);
|
|
12
15
|
const params = element.getAttribute('data-value-at-risk-params');
|
|
13
16
|
const mode = element.getAttribute('data-mode');
|
|
14
17
|
const {
|
|
@@ -19,20 +22,20 @@ valueAtRiskParamsElements.forEach(element => {
|
|
|
19
22
|
bars,
|
|
20
23
|
logoLink
|
|
21
24
|
} = JSON.parse(params);
|
|
22
|
-
const isParamError = validateToolParams({
|
|
25
|
+
const isParamError = (0, _labsWidgetCommon.validateToolParams)({
|
|
23
26
|
locale,
|
|
24
27
|
division,
|
|
25
28
|
graphqlUrl
|
|
26
29
|
}, [{
|
|
27
30
|
name: 'locale',
|
|
28
|
-
valueCheck: value => validateLocale(value)
|
|
31
|
+
valueCheck: value => (0, _labsWidgetCommon.validateLocale)(value)
|
|
29
32
|
}, {
|
|
30
33
|
name: 'division',
|
|
31
|
-
valueCheck: value => Object.values(Division).includes(value)
|
|
34
|
+
valueCheck: value => Object.values(_graphql.Division).includes(value)
|
|
32
35
|
}, {
|
|
33
36
|
name: 'graphqlUrl'
|
|
34
37
|
}]);
|
|
35
|
-
root.render(
|
|
38
|
+
root.render(_react.default.createElement(_ValueAtRiskWidget.ValueAtRiskWidget, {
|
|
36
39
|
bars: bars,
|
|
37
40
|
division: division,
|
|
38
41
|
duration: duration,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","names":["
|
|
1
|
+
{"version":3,"file":"render.js","names":["_labsWidgetCommon","require","_react","_interopRequireDefault","_client","_graphql","_ValueAtRiskWidget","e","__esModule","default","graphqlUrl","window","widgetsConfig","valueAtRiskParamsElements","document","querySelectorAll","forEach","element","root","createRoot","params","getAttribute","mode","division","locale","instrument","duration","bars","logoLink","JSON","parse","isParamError","validateToolParams","name","valueCheck","value","validateLocale","Object","values","Division","includes","render","createElement","ValueAtRiskWidget","theme"],"sources":["../../../src/ValueAtRiskWidget/render.tsx"],"sourcesContent":["import type { Theme } from '@oanda/labs-widget-common';\nimport { validateLocale, validateToolParams } from '@oanda/labs-widget-common';\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport { Division } from '../gql/types/graphql';\nimport { ValueAtRiskWidget } from './ValueAtRiskWidget';\n\nconst { graphqlUrl } = window.widgetsConfig || {};\n\nconst valueAtRiskParamsElements = document.querySelectorAll(\n 'div[data-value-at-risk-params]'\n);\n\nvalueAtRiskParamsElements.forEach((element) => {\n const root = createRoot(element);\n const params = element.getAttribute('data-value-at-risk-params');\n const mode = element.getAttribute('data-mode');\n const { division, locale, instrument, duration, bars, logoLink } = JSON.parse(\n params as string\n );\n\n const isParamError = validateToolParams({ locale, division, graphqlUrl }, [\n {\n name: 'locale',\n valueCheck: (value: string | undefined) => validateLocale(value),\n },\n {\n name: 'division',\n valueCheck: (value: Division) => Object.values(Division).includes(value),\n },\n {\n name: 'graphqlUrl',\n },\n ]);\n\n root.render(\n <ValueAtRiskWidget\n bars={bars}\n division={division}\n duration={duration}\n graphqlUrl={graphqlUrl}\n instrument={instrument}\n isParamError={isParamError}\n locale={locale}\n logoLink={logoLink}\n theme={mode as Theme}\n />\n );\n});\n"],"mappings":";;AACA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAEA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA;AAAwD,SAAAE,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD,MAAM;EAAEG;AAAW,CAAC,GAAGC,MAAM,CAACC,aAAa,IAAI,CAAC,CAAC;AAEjD,MAAMC,yBAAyB,GAAGC,QAAQ,CAACC,gBAAgB,CACzD,gCACF,CAAC;AAEDF,yBAAyB,CAACG,OAAO,CAAEC,OAAO,IAAK;EAC7C,MAAMC,IAAI,GAAG,IAAAC,kBAAU,EAACF,OAAO,CAAC;EAChC,MAAMG,MAAM,GAAGH,OAAO,CAACI,YAAY,CAAC,2BAA2B,CAAC;EAChE,MAAMC,IAAI,GAAGL,OAAO,CAACI,YAAY,CAAC,WAAW,CAAC;EAC9C,MAAM;IAAEE,QAAQ;IAAEC,MAAM;IAAEC,UAAU;IAAEC,QAAQ;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGC,IAAI,CAACC,KAAK,CAC3EV,MACF,CAAC;EAED,MAAMW,YAAY,GAAG,IAAAC,oCAAkB,EAAC;IAAER,MAAM;IAAED,QAAQ;IAAEb;EAAW,CAAC,EAAE,CACxE;IACEuB,IAAI,EAAE,QAAQ;IACdC,UAAU,EAAGC,KAAyB,IAAK,IAAAC,gCAAc,EAACD,KAAK;EACjE,CAAC,EACD;IACEF,IAAI,EAAE,UAAU;IAChBC,UAAU,EAAGC,KAAe,IAAKE,MAAM,CAACC,MAAM,CAACC,iBAAQ,CAAC,CAACC,QAAQ,CAACL,KAAK;EACzE,CAAC,EACD;IACEF,IAAI,EAAE;EACR,CAAC,CACF,CAAC;EAEFf,IAAI,CAACuB,MAAM,CACTvC,MAAA,CAAAO,OAAA,CAAAiC,aAAA,CAACpC,kBAAA,CAAAqC,iBAAiB;IAChBhB,IAAI,EAAEA,IAAK;IACXJ,QAAQ,EAAEA,QAAS;IACnBG,QAAQ,EAAEA,QAAS;IACnBhB,UAAU,EAAEA,UAAW;IACvBe,UAAU,EAAEA,UAAW;IACvBM,YAAY,EAAEA,YAAa;IAC3BP,MAAM,EAAEA,MAAO;IACfI,QAAQ,EAAEA,QAAS;IACnBgB,KAAK,EAAEtB;EAAc,CACtB,CACH,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getInstrumentsByAssetClassId = exports.getAssetClassesList = void 0;
|
|
7
|
+
exports.sortAlphabetically = sortAlphabetically;
|
|
1
8
|
const capitalize = name => `${name[0].toUpperCase()}${name.substring(1)}`;
|
|
2
9
|
function sortAlphabetically(paramName, items) {
|
|
3
10
|
return [...items].sort((itemA, itemB) => itemA[paramName].localeCompare(itemB[paramName], 'en', {
|
|
@@ -16,6 +23,7 @@ const getAssetClassesList = data => {
|
|
|
16
23
|
});
|
|
17
24
|
return sortAlphabetically('label', list);
|
|
18
25
|
};
|
|
26
|
+
exports.getAssetClassesList = getAssetClassesList;
|
|
19
27
|
const mapInstrumentsList = data => sortAlphabetically('displayName', data).map(_ref2 => {
|
|
20
28
|
let {
|
|
21
29
|
name: id,
|
|
@@ -37,5 +45,5 @@ const getInstrumentsByAssetClassId = (data, id) => {
|
|
|
37
45
|
});
|
|
38
46
|
return mapInstrumentsList(instruments);
|
|
39
47
|
};
|
|
40
|
-
|
|
48
|
+
exports.getInstrumentsByAssetClassId = getInstrumentsByAssetClassId;
|
|
41
49
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["capitalize","name","toUpperCase","substring","sortAlphabetically","paramName","items","sort","itemA","itemB","localeCompare","sensitivity","getAssetClassesList","data","list","map","_ref","id","toLowerCase","label","mapInstrumentsList","_ref2","displayName","getInstrumentsByAssetClassId","instruments","filter","_ref3"],"sources":["../../../src/ValueAtRiskWidget/utils.ts"],"sourcesContent":["import type { AssetClass, Instrument } from '../gql/types/graphql';\n\nconst capitalize = (name: string) =>\n `${name[0].toUpperCase()}${name.substring(1)}`;\n\nfunction sortAlphabetically<T extends Record<string, string>>(\n paramName: keyof T,\n items: T[]\n): T[] {\n return [...items].sort((itemA, itemB) =>\n itemA[paramName].localeCompare(itemB[paramName], 'en', {\n sensitivity: 'base',\n })\n );\n}\n\nconst getAssetClassesList = (data: AssetClass[]) => {\n const list = data.map(({ name }) => ({\n id: name.toLowerCase(),\n label: capitalize(name),\n }));\n\n return sortAlphabetically('label', list);\n};\n\nconst mapInstrumentsList = (data: Instrument[]) =>\n sortAlphabetically('displayName', data).map(\n ({ name: id, displayName: label }) => ({ id, label })\n );\n\nconst getInstrumentsByAssetClassId = (data: AssetClass[], id: string) => {\n const [{ instruments }] = data.filter(({ name }) => id === name);\n\n return mapInstrumentsList(instruments);\n};\n\nexport {\n getAssetClassesList,\n getInstrumentsByAssetClassId,\n sortAlphabetically,\n};\n"],"mappings":"AAEA,MAAMA,UAAU,GAAIC,IAAY,IAC9B,GAAGA,IAAI,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,GAAGD,IAAI,CAACE,SAAS,CAAC,CAAC,CAAC,EAAE;AAEhD,SAASC,kBAAkBA,CACzBC,SAAkB,EAClBC,KAAU,EACL;EACL,OAAO,CAAC,GAAGA,KAAK,CAAC,CAACC,IAAI,CAAC,CAACC,KAAK,EAAEC,KAAK,KAClCD,KAAK,CAACH,SAAS,CAAC,CAACK,aAAa,CAACD,KAAK,CAACJ,SAAS,CAAC,EAAE,IAAI,EAAE;IACrDM,WAAW,EAAE;EACf,CAAC,CACH,CAAC;AACH;AAEA,MAAMC,mBAAmB,GAAIC,IAAkB,IAAK;EAClD,MAAMC,IAAI,GAAGD,IAAI,CAACE,GAAG,CAACC,IAAA;IAAA,IAAC;MAAEf;IAAK,CAAC,GAAAe,IAAA;IAAA,OAAM;MACnCC,EAAE,EAAEhB,IAAI,CAACiB,WAAW,CAAC,CAAC;MACtBC,KAAK,EAAEnB,UAAU,CAACC,IAAI;IACxB,CAAC;EAAA,CAAC,CAAC;EAEH,OAAOG,kBAAkB,CAAC,OAAO,EAAEU,IAAI,CAAC;AAC1C,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","names":["capitalize","name","toUpperCase","substring","sortAlphabetically","paramName","items","sort","itemA","itemB","localeCompare","sensitivity","getAssetClassesList","data","list","map","_ref","id","toLowerCase","label","exports","mapInstrumentsList","_ref2","displayName","getInstrumentsByAssetClassId","instruments","filter","_ref3"],"sources":["../../../src/ValueAtRiskWidget/utils.ts"],"sourcesContent":["import type { AssetClass, Instrument } from '../gql/types/graphql';\n\nconst capitalize = (name: string) =>\n `${name[0].toUpperCase()}${name.substring(1)}`;\n\nfunction sortAlphabetically<T extends Record<string, string>>(\n paramName: keyof T,\n items: T[]\n): T[] {\n return [...items].sort((itemA, itemB) =>\n itemA[paramName].localeCompare(itemB[paramName], 'en', {\n sensitivity: 'base',\n })\n );\n}\n\nconst getAssetClassesList = (data: AssetClass[]) => {\n const list = data.map(({ name }) => ({\n id: name.toLowerCase(),\n label: capitalize(name),\n }));\n\n return sortAlphabetically('label', list);\n};\n\nconst mapInstrumentsList = (data: Instrument[]) =>\n sortAlphabetically('displayName', data).map(\n ({ name: id, displayName: label }) => ({ id, label })\n );\n\nconst getInstrumentsByAssetClassId = (data: AssetClass[], id: string) => {\n const [{ instruments }] = data.filter(({ name }) => id === name);\n\n return mapInstrumentsList(instruments);\n};\n\nexport {\n getAssetClassesList,\n getInstrumentsByAssetClassId,\n sortAlphabetically,\n};\n"],"mappings":";;;;;;;AAEA,MAAMA,UAAU,GAAIC,IAAY,IAC9B,GAAGA,IAAI,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,GAAGD,IAAI,CAACE,SAAS,CAAC,CAAC,CAAC,EAAE;AAEhD,SAASC,kBAAkBA,CACzBC,SAAkB,EAClBC,KAAU,EACL;EACL,OAAO,CAAC,GAAGA,KAAK,CAAC,CAACC,IAAI,CAAC,CAACC,KAAK,EAAEC,KAAK,KAClCD,KAAK,CAACH,SAAS,CAAC,CAACK,aAAa,CAACD,KAAK,CAACJ,SAAS,CAAC,EAAE,IAAI,EAAE;IACrDM,WAAW,EAAE;EACf,CAAC,CACH,CAAC;AACH;AAEA,MAAMC,mBAAmB,GAAIC,IAAkB,IAAK;EAClD,MAAMC,IAAI,GAAGD,IAAI,CAACE,GAAG,CAACC,IAAA;IAAA,IAAC;MAAEf;IAAK,CAAC,GAAAe,IAAA;IAAA,OAAM;MACnCC,EAAE,EAAEhB,IAAI,CAACiB,WAAW,CAAC,CAAC;MACtBC,KAAK,EAAEnB,UAAU,CAACC,IAAI;IACxB,CAAC;EAAA,CAAC,CAAC;EAEH,OAAOG,kBAAkB,CAAC,OAAO,EAAEU,IAAI,CAAC;AAC1C,CAAC;AAACM,OAAA,CAAAR,mBAAA,GAAAA,mBAAA;AAEF,MAAMS,kBAAkB,GAAIR,IAAkB,IAC5CT,kBAAkB,CAAC,aAAa,EAAES,IAAI,CAAC,CAACE,GAAG,CACzCO,KAAA;EAAA,IAAC;IAAErB,IAAI,EAAEgB,EAAE;IAAEM,WAAW,EAAEJ;EAAM,CAAC,GAAAG,KAAA;EAAA,OAAM;IAAEL,EAAE;IAAEE;EAAM,CAAC;AAAA,CACtD,CAAC;AAEH,MAAMK,4BAA4B,GAAGA,CAACX,IAAkB,EAAEI,EAAU,KAAK;EACvE,MAAM,CAAC;IAAEQ;EAAY,CAAC,CAAC,GAAGZ,IAAI,CAACa,MAAM,CAACC,KAAA;IAAA,IAAC;MAAE1B;IAAK,CAAC,GAAA0B,KAAA;IAAA,OAAKV,EAAE,KAAKhB,IAAI;EAAA,EAAC;EAEhE,OAAOoB,kBAAkB,CAACI,WAAW,CAAC;AACxC,CAAC;AAACL,OAAA,CAAAI,4BAAA,GAAAA,4BAAA","ignoreList":[]}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getValueAtRiskAssetClasses = void 0;
|
|
7
|
+
var _client = require("@apollo/client");
|
|
8
|
+
const getValueAtRiskAssetClasses = exports.getValueAtRiskAssetClasses = (0, _client.gql)`
|
|
3
9
|
query GetValueAtRiskAssetClasses($division: Division) {
|
|
4
10
|
valueAtRiskAssetClasses(division: $division) {
|
|
5
11
|
name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getValueAtRiskAssetClasses.js","names":["
|
|
1
|
+
{"version":3,"file":"getValueAtRiskAssetClasses.js","names":["_client","require","getValueAtRiskAssetClasses","exports","gql"],"sources":["../../../src/gql/getValueAtRiskAssetClasses.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const getValueAtRiskAssetClasses = gql`\n query GetValueAtRiskAssetClasses($division: Division) {\n valueAtRiskAssetClasses(division: $division) {\n name\n instruments {\n name\n displayName\n }\n }\n }\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEO,MAAMC,0BAA0B,GAAAC,OAAA,CAAAD,0BAAA,GAAG,IAAAE,WAAG;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getValueAtRiskChart = void 0;
|
|
7
|
+
var _client = require("@apollo/client");
|
|
8
|
+
const getValueAtRiskChart = exports.getValueAtRiskChart = (0, _client.gql)`
|
|
3
9
|
query getValueAtRiskChart(
|
|
4
10
|
$instrument: String!
|
|
5
11
|
$division: Division!
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getValueAtRiskChart.js","names":["
|
|
1
|
+
{"version":3,"file":"getValueAtRiskChart.js","names":["_client","require","getValueAtRiskChart","exports","gql"],"sources":["../../../src/gql/getValueAtRiskChart.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const getValueAtRiskChart = gql`\n query getValueAtRiskChart(\n $instrument: String!\n $division: Division!\n $duration: ValueAtRiskDuration!\n $bars: ValueAtRiskBars!\n ) {\n valueAtRiskChart(\n instrument: $instrument\n division: $division\n duration: $duration\n bars: $bars\n ) {\n up {\n points {\n pips\n percent\n }\n average\n median\n max\n threshold\n }\n down {\n points {\n pips\n percent\n }\n average\n median\n max\n threshold\n }\n }\n }\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEO,MAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,WAAG;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC","ignoreList":[]}
|
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isFragmentReady = isFragmentReady;
|
|
7
|
+
exports.makeFragmentData = makeFragmentData;
|
|
8
|
+
exports.useFragment = useFragment;
|
|
9
|
+
function useFragment(_documentNode, fragmentType) {
|
|
2
10
|
return fragmentType;
|
|
3
11
|
}
|
|
4
|
-
|
|
12
|
+
function makeFragmentData(data, _fragment) {
|
|
5
13
|
return data;
|
|
6
14
|
}
|
|
7
|
-
|
|
15
|
+
function isFragmentReady(queryNode, fragmentNode, data) {
|
|
8
16
|
const deferredFields = queryNode.__meta__?.deferredFields;
|
|
9
17
|
if (!deferredFields) return true;
|
|
10
18
|
const fragDef = fragmentNode.definitions[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fragment-masking.js","names":["useFragment","_documentNode","fragmentType","makeFragmentData","data","_fragment","isFragmentReady","queryNode","fragmentNode","deferredFields","__meta__","fragDef","definitions","fragName","name","value","fields","length","every","field"],"sources":["../../../../src/gql/types/fragment-masking.ts"],"sourcesContent":["import {\n ResultOf,\n DocumentTypeDecoration,\n TypedDocumentNode,\n} from '@graphql-typed-document-node/core';\nimport { FragmentDefinitionNode } from 'graphql';\nimport { Incremental } from './graphql';\n\nexport type FragmentType<\n TDocumentType extends DocumentTypeDecoration<any, any>,\n> =\n TDocumentType extends DocumentTypeDecoration<infer TType, any>\n ? [TType] extends [{ ' $fragmentName'?: infer TKey }]\n ? TKey extends string\n ? { ' $fragmentRefs'?: { [key in TKey]: TType } }\n : never\n : never\n : never;\n\n// return non-nullable if `fragmentType` is non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: FragmentType<DocumentTypeDecoration<TType, any>>\n): TType;\n// return nullable if `fragmentType` is nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | null\n | undefined\n): TType | null | undefined;\n// return array of non-nullable if `fragmentType` is array of non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n): ReadonlyArray<TType>;\n// return array of nullable if `fragmentType` is array of nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): ReadonlyArray<TType> | null | undefined;\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): TType | ReadonlyArray<TType> | null | undefined {\n return fragmentType as any;\n}\n\nexport function makeFragmentData<\n F extends DocumentTypeDecoration<any, any>,\n FT extends ResultOf<F>,\n>(data: FT, _fragment: F): FragmentType<F> {\n return data as FragmentType<F>;\n}\nexport function isFragmentReady<TQuery, TFrag>(\n queryNode: DocumentTypeDecoration<TQuery, any>,\n fragmentNode: TypedDocumentNode<TFrag>,\n data:\n | FragmentType<TypedDocumentNode<Incremental<TFrag>, any>>\n | null\n | undefined\n): data is FragmentType<typeof fragmentNode> {\n const deferredFields = (\n queryNode as {\n __meta__?: { deferredFields: Record<string, (keyof TFrag)[]> };\n }\n ).__meta__?.deferredFields;\n\n if (!deferredFields) return true;\n\n const fragDef = fragmentNode.definitions[0] as\n | FragmentDefinitionNode\n | undefined;\n const fragName = fragDef?.name?.value;\n\n const fields = (fragName && deferredFields[fragName]) || [];\n return fields.length > 0 && fields.every((field) => data && field in data);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"fragment-masking.js","names":["useFragment","_documentNode","fragmentType","makeFragmentData","data","_fragment","isFragmentReady","queryNode","fragmentNode","deferredFields","__meta__","fragDef","definitions","fragName","name","value","fields","length","every","field"],"sources":["../../../../src/gql/types/fragment-masking.ts"],"sourcesContent":["import {\n ResultOf,\n DocumentTypeDecoration,\n TypedDocumentNode,\n} from '@graphql-typed-document-node/core';\nimport { FragmentDefinitionNode } from 'graphql';\nimport { Incremental } from './graphql';\n\nexport type FragmentType<\n TDocumentType extends DocumentTypeDecoration<any, any>,\n> =\n TDocumentType extends DocumentTypeDecoration<infer TType, any>\n ? [TType] extends [{ ' $fragmentName'?: infer TKey }]\n ? TKey extends string\n ? { ' $fragmentRefs'?: { [key in TKey]: TType } }\n : never\n : never\n : never;\n\n// return non-nullable if `fragmentType` is non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: FragmentType<DocumentTypeDecoration<TType, any>>\n): TType;\n// return nullable if `fragmentType` is nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | null\n | undefined\n): TType | null | undefined;\n// return array of non-nullable if `fragmentType` is array of non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n): ReadonlyArray<TType>;\n// return array of nullable if `fragmentType` is array of nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): ReadonlyArray<TType> | null | undefined;\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): TType | ReadonlyArray<TType> | null | undefined {\n return fragmentType as any;\n}\n\nexport function makeFragmentData<\n F extends DocumentTypeDecoration<any, any>,\n FT extends ResultOf<F>,\n>(data: FT, _fragment: F): FragmentType<F> {\n return data as FragmentType<F>;\n}\nexport function isFragmentReady<TQuery, TFrag>(\n queryNode: DocumentTypeDecoration<TQuery, any>,\n fragmentNode: TypedDocumentNode<TFrag>,\n data:\n | FragmentType<TypedDocumentNode<Incremental<TFrag>, any>>\n | null\n | undefined\n): data is FragmentType<typeof fragmentNode> {\n const deferredFields = (\n queryNode as {\n __meta__?: { deferredFields: Record<string, (keyof TFrag)[]> };\n }\n ).__meta__?.deferredFields;\n\n if (!deferredFields) return true;\n\n const fragDef = fragmentNode.definitions[0] as\n | FragmentDefinitionNode\n | undefined;\n const fragName = fragDef?.name?.value;\n\n const fields = (fragName && deferredFields[fragName]) || [];\n return fields.length > 0 && fields.every((field) => data && field in data);\n}\n"],"mappings":";;;;;;;;AA6CO,SAASA,WAAWA,CACzBC,aAAiD,EACjDC,YAIa,EACoC;EACjD,OAAOA,YAAY;AACrB;AAEO,SAASC,gBAAgBA,CAG9BC,IAAQ,EAAEC,SAAY,EAAmB;EACzC,OAAOD,IAAI;AACb;AACO,SAASE,eAAeA,CAC7BC,SAA8C,EAC9CC,YAAsC,EACtCJ,IAGa,EAC8B;EAC3C,MAAMK,cAAc,GAClBF,SAAS,CAGTG,QAAQ,EAAED,cAAc;EAE1B,IAAI,CAACA,cAAc,EAAE,OAAO,IAAI;EAEhC,MAAME,OAAO,GAAGH,YAAY,CAACI,WAAW,CAAC,CAAC,CAE7B;EACb,MAAMC,QAAQ,GAAGF,OAAO,EAAEG,IAAI,EAAEC,KAAK;EAErC,MAAMC,MAAM,GAAIH,QAAQ,IAAIJ,cAAc,CAACI,QAAQ,CAAC,IAAK,EAAE;EAC3D,OAAOG,MAAM,CAACC,MAAM,GAAG,CAAC,IAAID,MAAM,CAACE,KAAK,CAAEC,KAAK,IAAKf,IAAI,IAAIe,KAAK,IAAIf,IAAI,CAAC;AAC5E","ignoreList":[]}
|