@oanda/labs-crowd-view-widget 1.0.43 → 1.0.45
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 +364 -0
- package/dist/main/CrowdViewWidget/CrowdViewWidget.js +3 -3
- package/dist/main/CrowdViewWidget/CrowdViewWidget.js.map +1 -1
- package/dist/main/CrowdViewWidget/Main.js +22 -12
- package/dist/main/CrowdViewWidget/Main.js.map +1 -1
- package/dist/main/CrowdViewWidget/components/Chart/Chart.js +16 -17
- package/dist/main/CrowdViewWidget/components/Chart/Chart.js.map +1 -1
- package/dist/main/CrowdViewWidget/components/Chart/ChartWithData.js +16 -13
- package/dist/main/CrowdViewWidget/components/Chart/ChartWithData.js.map +1 -1
- package/dist/main/CrowdViewWidget/components/Chart/{getOption.js → chartOptions.js} +79 -62
- package/dist/main/CrowdViewWidget/components/Chart/chartOptions.js.map +1 -0
- package/dist/main/CrowdViewWidget/components/Chart/index.js +44 -0
- package/dist/main/CrowdViewWidget/components/Chart/index.js.map +1 -1
- package/dist/main/CrowdViewWidget/components/Chart/types.js.map +1 -1
- package/dist/main/CrowdViewWidget/components/Chart/useCrowdViewData.js +184 -0
- package/dist/main/CrowdViewWidget/components/Chart/useCrowdViewData.js.map +1 -0
- package/dist/main/CrowdViewWidget/components/Chart/utils/chartUtils.js +107 -0
- package/dist/main/CrowdViewWidget/components/Chart/utils/chartUtils.js.map +1 -0
- package/dist/main/CrowdViewWidget/components/Legend/Legend.js +3 -2
- package/dist/main/CrowdViewWidget/components/Legend/Legend.js.map +1 -1
- package/dist/main/CrowdViewWidget/components/Legend/LegendBar.js +9 -11
- package/dist/main/CrowdViewWidget/components/Legend/LegendBar.js.map +1 -1
- package/dist/main/CrowdViewWidget/constants.js +31 -0
- package/dist/main/CrowdViewWidget/constants.js.map +1 -0
- package/dist/main/CrowdViewWidget/render.js +1 -0
- package/dist/main/CrowdViewWidget/render.js.map +1 -1
- package/dist/main/CrowdViewWidget/selectConfig.js +121 -0
- package/dist/main/CrowdViewWidget/selectConfig.js.map +1 -0
- package/dist/main/CrowdViewWidget/types/index.js +17 -0
- package/dist/main/CrowdViewWidget/types/index.js.map +1 -0
- package/dist/main/CrowdViewWidget/types/instruments.js +45 -0
- package/dist/main/CrowdViewWidget/types/instruments.js.map +1 -0
- package/dist/main/CrowdViewWidget/types.js +0 -44
- package/dist/main/CrowdViewWidget/types.js.map +1 -1
- package/dist/main/CrowdViewWidget/utils/instrumentUtils.js +13 -0
- package/dist/main/CrowdViewWidget/utils/instrumentUtils.js.map +1 -0
- package/dist/main/gql/getOrderPositionBooks.js +1 -1
- package/dist/main/gql/getOrderPositionBooks.js.map +1 -1
- package/dist/main/gql/getPriceCandles.js +11 -0
- package/dist/main/gql/getPriceCandles.js.map +1 -0
- package/dist/main/gql/types/gql.js +2 -3
- package/dist/main/gql/types/gql.js.map +1 -1
- package/dist/main/gql/types/graphql.js +161 -160
- package/dist/main/gql/types/graphql.js.map +1 -1
- package/dist/main/translations/sources/en.json +24 -0
- package/dist/module/CrowdViewWidget/CrowdViewWidget.js +3 -3
- package/dist/module/CrowdViewWidget/CrowdViewWidget.js.map +1 -1
- package/dist/module/CrowdViewWidget/Main.js +23 -13
- package/dist/module/CrowdViewWidget/Main.js.map +1 -1
- package/dist/module/CrowdViewWidget/components/Chart/Chart.js +15 -16
- package/dist/module/CrowdViewWidget/components/Chart/Chart.js.map +1 -1
- package/dist/module/CrowdViewWidget/components/Chart/ChartWithData.js +16 -12
- package/dist/module/CrowdViewWidget/components/Chart/ChartWithData.js.map +1 -1
- package/dist/module/CrowdViewWidget/components/Chart/{getOption.js → chartOptions.js} +77 -59
- package/dist/module/CrowdViewWidget/components/Chart/chartOptions.js.map +1 -0
- package/dist/module/CrowdViewWidget/components/Chart/index.js +4 -0
- package/dist/module/CrowdViewWidget/components/Chart/index.js.map +1 -1
- package/dist/module/CrowdViewWidget/components/Chart/types.js.map +1 -1
- package/dist/module/CrowdViewWidget/components/Chart/useCrowdViewData.js +177 -0
- package/dist/module/CrowdViewWidget/components/Chart/useCrowdViewData.js.map +1 -0
- package/dist/module/CrowdViewWidget/components/Chart/utils/chartUtils.js +94 -0
- package/dist/module/CrowdViewWidget/components/Chart/utils/chartUtils.js.map +1 -0
- package/dist/module/CrowdViewWidget/components/Legend/Legend.js +3 -2
- package/dist/module/CrowdViewWidget/components/Legend/Legend.js.map +1 -1
- package/dist/module/CrowdViewWidget/components/Legend/LegendBar.js +9 -11
- package/dist/module/CrowdViewWidget/components/Legend/LegendBar.js.map +1 -1
- package/dist/module/CrowdViewWidget/constants.js +25 -0
- package/dist/module/CrowdViewWidget/constants.js.map +1 -0
- package/dist/module/CrowdViewWidget/render.js +1 -0
- package/dist/module/CrowdViewWidget/render.js.map +1 -1
- package/dist/module/CrowdViewWidget/selectConfig.js +116 -0
- package/dist/module/CrowdViewWidget/selectConfig.js.map +1 -0
- package/dist/module/CrowdViewWidget/types/index.js +2 -0
- package/dist/module/CrowdViewWidget/types/index.js.map +1 -0
- package/dist/module/CrowdViewWidget/types/instruments.js +39 -0
- package/dist/module/CrowdViewWidget/types/instruments.js.map +1 -0
- package/dist/module/CrowdViewWidget/types.js +1 -43
- package/dist/module/CrowdViewWidget/types.js.map +1 -1
- package/dist/module/CrowdViewWidget/utils/instrumentUtils.js +6 -0
- package/dist/module/CrowdViewWidget/utils/instrumentUtils.js.map +1 -0
- package/dist/module/gql/getOrderPositionBooks.js +1 -1
- package/dist/module/gql/getOrderPositionBooks.js.map +1 -1
- package/dist/module/gql/getPriceCandles.js +6 -0
- package/dist/module/gql/getPriceCandles.js.map +1 -0
- package/dist/module/gql/types/gql.js +2 -3
- package/dist/module/gql/types/gql.js.map +1 -1
- package/dist/module/gql/types/graphql.js +160 -159
- package/dist/module/gql/types/graphql.js.map +1 -1
- package/dist/module/translations/sources/en.json +24 -0
- package/dist/types/CrowdViewWidget/CrowdViewWidget.d.ts +1 -1
- package/dist/types/CrowdViewWidget/components/Chart/ChartWithData.d.ts +1 -1
- package/dist/types/CrowdViewWidget/components/Chart/index.d.ts +4 -0
- package/dist/types/CrowdViewWidget/components/Chart/types.d.ts +23 -16
- package/dist/types/CrowdViewWidget/components/Chart/useCrowdViewData.d.ts +2 -0
- package/dist/types/CrowdViewWidget/components/Chart/{utils.d.ts → utils/chartUtils.d.ts} +9 -11
- package/dist/types/CrowdViewWidget/components/Legend/Legend.d.ts +3 -3
- package/dist/types/CrowdViewWidget/constants.d.ts +24 -0
- package/dist/types/CrowdViewWidget/selectConfig.d.ts +19 -0
- package/dist/types/CrowdViewWidget/types/index.d.ts +1 -0
- package/dist/types/CrowdViewWidget/types/instruments.d.ts +36 -0
- package/dist/types/CrowdViewWidget/types.d.ts +2 -50
- package/dist/types/CrowdViewWidget/utils/instrumentUtils.d.ts +8 -0
- package/dist/types/gql/types/gql.d.ts +10 -14
- package/dist/types/gql/types/graphql.d.ts +71 -63
- package/lokalise.config.json +1 -1
- package/package.json +6 -4
- package/src/CrowdViewWidget/CrowdViewWidget.tsx +2 -2
- package/src/CrowdViewWidget/Main.tsx +32 -22
- package/src/CrowdViewWidget/components/Chart/Chart.tsx +21 -17
- package/src/CrowdViewWidget/components/Chart/ChartWithData.tsx +12 -12
- package/src/CrowdViewWidget/components/Chart/chartOptions.ts +205 -0
- package/src/CrowdViewWidget/components/Chart/index.ts +4 -0
- package/src/CrowdViewWidget/components/Chart/types.ts +30 -24
- package/src/CrowdViewWidget/components/Chart/useCrowdViewData.ts +288 -0
- package/src/CrowdViewWidget/components/Chart/utils/chartUtils.ts +161 -0
- package/src/CrowdViewWidget/components/Legend/Legend.tsx +7 -3
- package/src/CrowdViewWidget/components/Legend/LegendBar.tsx +16 -20
- package/src/CrowdViewWidget/constants.ts +28 -0
- package/src/CrowdViewWidget/render.tsx +1 -0
- package/src/CrowdViewWidget/{config.ts → selectConfig.ts} +65 -43
- package/src/CrowdViewWidget/types/index.ts +1 -0
- package/src/CrowdViewWidget/types/instruments.ts +37 -0
- package/src/CrowdViewWidget/types.ts +4 -55
- package/src/CrowdViewWidget/utils/instrumentUtils.ts +11 -0
- package/src/gql/getOrderPositionBooks.ts +9 -4
- package/src/gql/{mock/getPriceCandles.ts → getPriceCandles.ts} +5 -5
- package/src/gql/types/gql.ts +6 -14
- package/src/gql/types/graphql.ts +170 -160
- package/src/translations/sources/en.json +24 -0
- package/test/Main.test.tsx +73 -27
- package/test/components/Chart/utils/chartUtils.test.ts +172 -0
- package/test/components/Legend.test.tsx +3 -6
- package/test/components/LegendBar.test.tsx +7 -8
- package/test/utils/instrumentUtils.test.ts +52 -0
- package/dist/main/CrowdViewWidget/components/Chart/constants.js +0 -14
- package/dist/main/CrowdViewWidget/components/Chart/constants.js.map +0 -1
- package/dist/main/CrowdViewWidget/components/Chart/getOption.js.map +0 -1
- package/dist/main/CrowdViewWidget/components/Chart/getOrderPositionDataMock.js +0 -47
- package/dist/main/CrowdViewWidget/components/Chart/getOrderPositionDataMock.js.map +0 -1
- package/dist/main/CrowdViewWidget/components/Chart/getPriceCandlesMock.js +0 -36
- package/dist/main/CrowdViewWidget/components/Chart/getPriceCandlesMock.js.map +0 -1
- package/dist/main/CrowdViewWidget/components/Chart/utils.js +0 -166
- package/dist/main/CrowdViewWidget/components/Chart/utils.js.map +0 -1
- package/dist/main/CrowdViewWidget/config.js +0 -107
- package/dist/main/CrowdViewWidget/config.js.map +0 -1
- package/dist/main/gql/mock/getPriceCandles.js +0 -11
- package/dist/main/gql/mock/getPriceCandles.js.map +0 -1
- package/dist/main/gql/mock/schema.graphqls +0 -62
- package/dist/main/gql/validateInstruments.js +0 -11
- package/dist/main/gql/validateInstruments.js.map +0 -1
- package/dist/module/CrowdViewWidget/components/Chart/constants.js +0 -8
- package/dist/module/CrowdViewWidget/components/Chart/constants.js.map +0 -1
- package/dist/module/CrowdViewWidget/components/Chart/getOption.js.map +0 -1
- package/dist/module/CrowdViewWidget/components/Chart/getOrderPositionDataMock.js +0 -40
- package/dist/module/CrowdViewWidget/components/Chart/getOrderPositionDataMock.js.map +0 -1
- package/dist/module/CrowdViewWidget/components/Chart/getPriceCandlesMock.js +0 -29
- package/dist/module/CrowdViewWidget/components/Chart/getPriceCandlesMock.js.map +0 -1
- package/dist/module/CrowdViewWidget/components/Chart/utils.js +0 -156
- package/dist/module/CrowdViewWidget/components/Chart/utils.js.map +0 -1
- package/dist/module/CrowdViewWidget/config.js +0 -102
- package/dist/module/CrowdViewWidget/config.js.map +0 -1
- package/dist/module/gql/mock/getPriceCandles.js +0 -6
- package/dist/module/gql/mock/getPriceCandles.js.map +0 -1
- package/dist/module/gql/mock/schema.graphqls +0 -62
- package/dist/module/gql/validateInstruments.js +0 -5
- package/dist/module/gql/validateInstruments.js.map +0 -1
- package/dist/types/CrowdViewWidget/components/Chart/constants.d.ts +0 -7
- package/dist/types/CrowdViewWidget/components/Chart/getOrderPositionDataMock.d.ts +0 -14
- package/dist/types/CrowdViewWidget/components/Chart/getPriceCandlesMock.d.ts +0 -2
- package/dist/types/CrowdViewWidget/config.d.ts +0 -22
- package/dist/types/gql/validateInstruments.d.ts +0 -1
- package/src/CrowdViewWidget/components/Chart/constants.tsx +0 -8
- package/src/CrowdViewWidget/components/Chart/getOption.ts +0 -200
- package/src/CrowdViewWidget/components/Chart/getOrderPositionDataMock.ts +0 -66
- package/src/CrowdViewWidget/components/Chart/getPriceCandlesMock.ts +0 -43
- package/src/CrowdViewWidget/components/Chart/utils.ts +0 -191
- package/src/gql/mock/schema.graphqls +0 -62
- package/src/gql/validateInstruments.ts +0 -10
- /package/dist/types/CrowdViewWidget/components/Chart/{getOption.d.ts → chartOptions.d.ts} +0 -0
- /package/dist/types/gql/{mock/getPriceCandles.d.ts → getPriceCandles.d.ts} +0 -0
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { BookType } from '../gql/types/graphql';
|
|
2
|
-
import
|
|
3
|
-
import { GranularityId, InstrumentId } from './types';
|
|
1
|
+
import { BookType, Granularity } from '../gql/types/graphql';
|
|
2
|
+
import { InstrumentId, InstrumentIdOC } from './types/instruments';
|
|
4
3
|
|
|
5
4
|
const navigationConfig = [
|
|
6
5
|
{
|
|
@@ -14,6 +13,65 @@ const navigationConfig = [
|
|
|
14
13
|
];
|
|
15
14
|
|
|
16
15
|
const instrumentSelectConfigOC = [
|
|
16
|
+
{
|
|
17
|
+
id: InstrumentIdOC.EUR_AUD,
|
|
18
|
+
label: 'EUR/AUD',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
id: InstrumentIdOC.EUR_GBP,
|
|
22
|
+
label: 'EUR/GBP',
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
id: InstrumentIdOC.EUR_JPY,
|
|
26
|
+
label: 'EUR/JPY',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
id: InstrumentIdOC.EUR_USD,
|
|
30
|
+
label: 'EUR/USD',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
id: InstrumentIdOC.EUR_CHF,
|
|
34
|
+
label: 'EUR/CHF',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
id: InstrumentIdOC.USD_CHF,
|
|
38
|
+
label: 'USD/CHF',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
id: InstrumentIdOC.USD_JPY,
|
|
42
|
+
label: 'USD/JPY',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
id: InstrumentIdOC.USD_CAD,
|
|
46
|
+
label: 'USD/CAD',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
id: InstrumentIdOC.GBP_USD,
|
|
50
|
+
label: 'GBP/USD',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
id: InstrumentIdOC.GBP_JPY,
|
|
54
|
+
label: 'GBP/JPY',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
id: InstrumentIdOC.GBP_CHF,
|
|
58
|
+
label: 'GBP/CHF',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
id: InstrumentIdOC.AUD_JPY,
|
|
62
|
+
label: 'AUD/JPY',
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
id: InstrumentIdOC.AUD_USD,
|
|
66
|
+
label: 'AUD/USD',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
id: InstrumentIdOC.NZD_USD,
|
|
70
|
+
label: 'NZD/USD',
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
|
|
74
|
+
const instrumentSelectConfig = [
|
|
17
75
|
{
|
|
18
76
|
id: InstrumentId.EUR_AUD,
|
|
19
77
|
label: 'EUR/AUD',
|
|
@@ -70,10 +128,6 @@ const instrumentSelectConfigOC = [
|
|
|
70
128
|
id: InstrumentId.NZD_USD,
|
|
71
129
|
label: 'NZD/USD',
|
|
72
130
|
},
|
|
73
|
-
];
|
|
74
|
-
|
|
75
|
-
const instrumentSelectConfig = [
|
|
76
|
-
...instrumentSelectConfigOC,
|
|
77
131
|
{
|
|
78
132
|
id: InstrumentId.XAU_USD,
|
|
79
133
|
label: 'XAU/USD',
|
|
@@ -84,60 +138,28 @@ const instrumentSelectConfig = [
|
|
|
84
138
|
},
|
|
85
139
|
];
|
|
86
140
|
|
|
87
|
-
const instrumentPrecisionConfig: Record<InstrumentId, number> = {
|
|
88
|
-
[InstrumentId.EUR_AUD]: 5,
|
|
89
|
-
[InstrumentId.EUR_GBP]: 5,
|
|
90
|
-
[InstrumentId.EUR_JPY]: 3,
|
|
91
|
-
[InstrumentId.EUR_USD]: 5,
|
|
92
|
-
[InstrumentId.EUR_CHF]: 5,
|
|
93
|
-
[InstrumentId.USD_CHF]: 5,
|
|
94
|
-
[InstrumentId.USD_JPY]: 3,
|
|
95
|
-
[InstrumentId.USD_CAD]: 5,
|
|
96
|
-
[InstrumentId.GBP_USD]: 5,
|
|
97
|
-
[InstrumentId.GBP_JPY]: 3,
|
|
98
|
-
[InstrumentId.GBP_CHF]: 5,
|
|
99
|
-
[InstrumentId.AUD_JPY]: 3,
|
|
100
|
-
[InstrumentId.AUD_USD]: 5,
|
|
101
|
-
[InstrumentId.NZD_USD]: 5,
|
|
102
|
-
[InstrumentId.XAU_USD]: 3,
|
|
103
|
-
[InstrumentId.XAG_USD]: 5,
|
|
104
|
-
};
|
|
105
|
-
|
|
106
141
|
const granularitySelectConfig = [
|
|
107
142
|
{
|
|
108
|
-
id:
|
|
143
|
+
id: Granularity.M5,
|
|
109
144
|
label: '5_minutes',
|
|
110
145
|
},
|
|
111
146
|
{
|
|
112
|
-
id:
|
|
147
|
+
id: Granularity.M15,
|
|
113
148
|
label: '15_minutes',
|
|
114
149
|
},
|
|
115
150
|
{
|
|
116
|
-
id:
|
|
117
|
-
label: '30_minutes',
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
id: GranularityId.HOUR_1,
|
|
151
|
+
id: Granularity.H1,
|
|
121
152
|
label: '1_hour',
|
|
122
153
|
},
|
|
123
154
|
{
|
|
124
|
-
id:
|
|
155
|
+
id: Granularity.H4,
|
|
125
156
|
label: '4_hours',
|
|
126
157
|
},
|
|
127
|
-
{
|
|
128
|
-
id: GranularityId.DAY_1,
|
|
129
|
-
label: '1_day',
|
|
130
|
-
},
|
|
131
158
|
];
|
|
132
159
|
|
|
133
160
|
export {
|
|
134
161
|
granularitySelectConfig,
|
|
135
|
-
instrumentPrecisionConfig,
|
|
136
162
|
instrumentSelectConfig,
|
|
137
163
|
instrumentSelectConfigOC,
|
|
138
164
|
navigationConfig,
|
|
139
165
|
};
|
|
140
|
-
export const colorMap: Record<LegendType, string[]> = {
|
|
141
|
-
long: ['#00857333', '#00715F99', '#00857399', '#008573CC'],
|
|
142
|
-
short: ['#DA632566', '#DA632599', '#DA6325CC', '#DA6325'],
|
|
143
|
-
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instruments';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export enum InstrumentId {
|
|
2
|
+
EUR_AUD = 'EURAUD',
|
|
3
|
+
EUR_GBP = 'EURGBP',
|
|
4
|
+
EUR_JPY = 'EURJPY',
|
|
5
|
+
EUR_USD = 'EURUSD',
|
|
6
|
+
EUR_CHF = 'EURCHF',
|
|
7
|
+
USD_CHF = 'USDCHF',
|
|
8
|
+
USD_JPY = 'USDJPY',
|
|
9
|
+
USD_CAD = 'USDCAD',
|
|
10
|
+
GBP_USD = 'GBPUSD',
|
|
11
|
+
GBP_JPY = 'GBPJPY',
|
|
12
|
+
GBP_CHF = 'GBPCHF',
|
|
13
|
+
AUD_JPY = 'AUDJPY',
|
|
14
|
+
AUD_USD = 'AUDUSD',
|
|
15
|
+
NZD_USD = 'NZDUSD',
|
|
16
|
+
XAU_USD = 'XAUUSD',
|
|
17
|
+
XAG_USD = 'XAGUSD',
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export enum InstrumentIdOC {
|
|
21
|
+
EUR_AUD = 'EUR_AUD',
|
|
22
|
+
EUR_GBP = 'EUR_GBP',
|
|
23
|
+
EUR_JPY = 'EUR_JPY',
|
|
24
|
+
EUR_USD = 'EUR_USD',
|
|
25
|
+
EUR_CHF = 'EUR_CHF',
|
|
26
|
+
USD_CHF = 'USD_CHF',
|
|
27
|
+
USD_JPY = 'USD_JPY',
|
|
28
|
+
USD_CAD = 'USD_CAD',
|
|
29
|
+
GBP_USD = 'GBP_USD',
|
|
30
|
+
GBP_JPY = 'GBP_JPY',
|
|
31
|
+
GBP_CHF = 'GBP_CHF',
|
|
32
|
+
AUD_JPY = 'AUD_JPY',
|
|
33
|
+
AUD_USD = 'AUD_USD',
|
|
34
|
+
NZD_USD = 'NZD_USD',
|
|
35
|
+
XAU_USD = 'XAU_USD',
|
|
36
|
+
XAG_USD = 'XAG_USD',
|
|
37
|
+
}
|
|
@@ -1,64 +1,13 @@
|
|
|
1
1
|
import type { WidgetConfig } from '@oanda/labs-widget-common';
|
|
2
2
|
|
|
3
3
|
import type { Division } from '../gql/types/graphql';
|
|
4
|
+
import type { InstrumentId } from './types/instruments';
|
|
4
5
|
|
|
5
|
-
export interface CrowdViewConfig extends WidgetConfig {
|
|
6
|
+
export interface CrowdViewConfig extends WidgetConfig {
|
|
7
|
+
division: Division;
|
|
8
|
+
}
|
|
6
9
|
|
|
7
10
|
export interface MainProps {
|
|
8
11
|
instrument?: InstrumentId;
|
|
9
12
|
division: Division;
|
|
10
13
|
}
|
|
11
|
-
|
|
12
|
-
export enum InstrumentId {
|
|
13
|
-
EUR_AUD = 'EURAUD',
|
|
14
|
-
EUR_GBP = 'EURGBP',
|
|
15
|
-
EUR_JPY = 'EURJPY',
|
|
16
|
-
EUR_USD = 'EURUSD',
|
|
17
|
-
EUR_CHF = 'EURCHF',
|
|
18
|
-
USD_CHF = 'USDCHF',
|
|
19
|
-
USD_JPY = 'USDJPY',
|
|
20
|
-
USD_CAD = 'USDCAD',
|
|
21
|
-
GBP_USD = 'GBPUSD',
|
|
22
|
-
GBP_JPY = 'GBPJPY',
|
|
23
|
-
GBP_CHF = 'GBPCHF',
|
|
24
|
-
AUD_JPY = 'AUDJPY',
|
|
25
|
-
AUD_USD = 'AUDUSD',
|
|
26
|
-
NZD_USD = 'NZDUSD',
|
|
27
|
-
XAU_USD = 'XAUUSD',
|
|
28
|
-
XAG_USD = 'XAGUSD',
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export enum GranularityId {
|
|
32
|
-
MINUTE_5 = 'MINUTE_5',
|
|
33
|
-
MINUTE_15 = 'MINUTE_15',
|
|
34
|
-
MINUTE_30 = 'MINUTE_30',
|
|
35
|
-
HOUR_1 = 'HOUR_1',
|
|
36
|
-
HOUR_4 = 'HOUR_4',
|
|
37
|
-
DAY_1 = 'DAY_1',
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export enum TimeSpanId {
|
|
41
|
-
HOUR_1 = 'HOUR_1',
|
|
42
|
-
HOUR_12 = 'HOUR_12',
|
|
43
|
-
DAY_1 = 'DAY_1',
|
|
44
|
-
DAY_2 = 'DAY_2',
|
|
45
|
-
WEEK_1 = 'WEEK_1',
|
|
46
|
-
WEEK_2 = 'WEEK_2',
|
|
47
|
-
WEEK_3 = 'WEEK_3',
|
|
48
|
-
MONTH_1 = 'MONTH_1',
|
|
49
|
-
MONTH_3 = 'MONTH_3',
|
|
50
|
-
MONTH_6 = 'MONTH_6',
|
|
51
|
-
YEAR_1 = 'YEAR_1',
|
|
52
|
-
YEAR_5 = 'YEAR_5',
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export interface OrdersPositionsData {
|
|
56
|
-
price: number;
|
|
57
|
-
buckets: {
|
|
58
|
-
price: number;
|
|
59
|
-
longCountPercent: number;
|
|
60
|
-
shortCountPercent: number;
|
|
61
|
-
}[];
|
|
62
|
-
bucketWidth: number;
|
|
63
|
-
timestamp: number;
|
|
64
|
-
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Division } from '../../gql/types/graphql';
|
|
2
|
+
import {
|
|
3
|
+
instrumentSelectConfig,
|
|
4
|
+
instrumentSelectConfigOC,
|
|
5
|
+
} from '../selectConfig';
|
|
6
|
+
|
|
7
|
+
export const getInstrumentConfigForDivision = (division: Division) => {
|
|
8
|
+
return division === Division.Oc
|
|
9
|
+
? instrumentSelectConfigOC
|
|
10
|
+
: instrumentSelectConfig;
|
|
11
|
+
};
|
|
@@ -4,20 +4,25 @@ const getOrderPositionBooks = gql`
|
|
|
4
4
|
query GetOrderPositionBooks(
|
|
5
5
|
$instrument: String!
|
|
6
6
|
$bookType: BookType!
|
|
7
|
-
$
|
|
7
|
+
$timeSpan: TimeSpan!
|
|
8
|
+
$granularity: Granularity!
|
|
9
|
+
$maxBookPrice: Float
|
|
10
|
+
$minBookPrice: Float
|
|
8
11
|
) {
|
|
9
12
|
orderPositionBooks(
|
|
10
13
|
instrument: $instrument
|
|
11
14
|
bookType: $bookType
|
|
12
|
-
|
|
15
|
+
timeSpan: $timeSpan
|
|
16
|
+
granularity: $granularity
|
|
17
|
+
maxBookPrice: $maxBookPrice
|
|
18
|
+
minBookPrice: $minBookPrice
|
|
13
19
|
) {
|
|
14
20
|
bucketWidth
|
|
15
21
|
price
|
|
16
22
|
time
|
|
17
23
|
buckets {
|
|
18
24
|
price
|
|
19
|
-
|
|
20
|
-
shortCountPercent
|
|
25
|
+
sentiment
|
|
21
26
|
}
|
|
22
27
|
}
|
|
23
28
|
}
|
|
@@ -2,26 +2,26 @@ import { gql } from '@apollo/client';
|
|
|
2
2
|
|
|
3
3
|
const getPriceCandles = gql`
|
|
4
4
|
query GetPriceCandles(
|
|
5
|
-
$
|
|
5
|
+
$dataSource: DataSource!
|
|
6
|
+
$division: Division!
|
|
6
7
|
$instrument: String!
|
|
7
8
|
$granularity: Granularity!
|
|
8
9
|
$timeSpan: TimeSpan!
|
|
9
10
|
) {
|
|
10
|
-
|
|
11
|
+
priceCandles(
|
|
12
|
+
dataSource: $dataSource
|
|
11
13
|
division: $division
|
|
12
14
|
instrument: $instrument
|
|
13
15
|
granularity: $granularity
|
|
14
16
|
timeSpan: $timeSpan
|
|
15
17
|
) {
|
|
16
|
-
time
|
|
17
|
-
unixTime
|
|
18
18
|
candle {
|
|
19
|
+
point
|
|
19
20
|
high
|
|
20
21
|
low
|
|
21
22
|
open
|
|
22
23
|
close
|
|
23
24
|
}
|
|
24
|
-
timeSpan
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
`;
|
package/src/gql/types/gql.ts
CHANGED
|
@@ -13,12 +13,10 @@ import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/
|
|
|
13
13
|
* Therefore it is highly recommended to use the babel or swc plugin for production.
|
|
14
14
|
*/
|
|
15
15
|
const documents = {
|
|
16
|
-
'\n query GetOrderPositionBooks(\n $instrument: String!\n $bookType: BookType!\n $
|
|
16
|
+
'\n query GetOrderPositionBooks(\n $instrument: String!\n $bookType: BookType!\n $timeSpan: TimeSpan!\n $granularity: Granularity!\n $maxBookPrice: Float\n $minBookPrice: Float\n ) {\n orderPositionBooks(\n instrument: $instrument\n bookType: $bookType\n timeSpan: $timeSpan\n granularity: $granularity\n maxBookPrice: $maxBookPrice\n minBookPrice: $minBookPrice\n ) {\n bucketWidth\n price\n time\n buckets {\n price\n sentiment\n }\n }\n }\n':
|
|
17
17
|
types.GetOrderPositionBooksDocument,
|
|
18
|
-
'\n query GetPriceCandles(\n $division: Division
|
|
18
|
+
'\n query GetPriceCandles(\n $dataSource: DataSource!\n $division: Division!\n $instrument: String!\n $granularity: Granularity!\n $timeSpan: TimeSpan!\n ) {\n priceCandles(\n dataSource: $dataSource\n division: $division\n instrument: $instrument\n granularity: $granularity\n timeSpan: $timeSpan\n ) {\n candle {\n point\n high\n low\n open\n close\n }\n }\n }\n':
|
|
19
19
|
types.GetPriceCandlesDocument,
|
|
20
|
-
'\n query validateInstruments($instruments: [String]!, $division: Division) {\n mapInstrumentNames(instruments: $instruments, division: $division) {\n name\n displayName\n }\n }\n':
|
|
21
|
-
types.ValidateInstrumentsDocument,
|
|
22
20
|
};
|
|
23
21
|
|
|
24
22
|
/**
|
|
@@ -39,20 +37,14 @@ export function graphql(source: string): unknown;
|
|
|
39
37
|
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
40
38
|
*/
|
|
41
39
|
export function graphql(
|
|
42
|
-
source: '\n query GetOrderPositionBooks(\n $instrument: String!\n $bookType: BookType!\n $
|
|
43
|
-
): (typeof documents)['\n query GetOrderPositionBooks(\n $instrument: String!\n $bookType: BookType!\n $
|
|
40
|
+
source: '\n query GetOrderPositionBooks(\n $instrument: String!\n $bookType: BookType!\n $timeSpan: TimeSpan!\n $granularity: Granularity!\n $maxBookPrice: Float\n $minBookPrice: Float\n ) {\n orderPositionBooks(\n instrument: $instrument\n bookType: $bookType\n timeSpan: $timeSpan\n granularity: $granularity\n maxBookPrice: $maxBookPrice\n minBookPrice: $minBookPrice\n ) {\n bucketWidth\n price\n time\n buckets {\n price\n sentiment\n }\n }\n }\n'
|
|
41
|
+
): (typeof documents)['\n query GetOrderPositionBooks(\n $instrument: String!\n $bookType: BookType!\n $timeSpan: TimeSpan!\n $granularity: Granularity!\n $maxBookPrice: Float\n $minBookPrice: Float\n ) {\n orderPositionBooks(\n instrument: $instrument\n bookType: $bookType\n timeSpan: $timeSpan\n granularity: $granularity\n maxBookPrice: $maxBookPrice\n minBookPrice: $minBookPrice\n ) {\n bucketWidth\n price\n time\n buckets {\n price\n sentiment\n }\n }\n }\n'];
|
|
44
42
|
/**
|
|
45
43
|
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
46
44
|
*/
|
|
47
45
|
export function graphql(
|
|
48
|
-
source: '\n query GetPriceCandles(\n $division: Division
|
|
49
|
-
): (typeof documents)['\n query GetPriceCandles(\n $division: Division
|
|
50
|
-
/**
|
|
51
|
-
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
52
|
-
*/
|
|
53
|
-
export function graphql(
|
|
54
|
-
source: '\n query validateInstruments($instruments: [String]!, $division: Division) {\n mapInstrumentNames(instruments: $instruments, division: $division) {\n name\n displayName\n }\n }\n'
|
|
55
|
-
): (typeof documents)['\n query validateInstruments($instruments: [String]!, $division: Division) {\n mapInstrumentNames(instruments: $instruments, division: $division) {\n name\n displayName\n }\n }\n'];
|
|
46
|
+
source: '\n query GetPriceCandles(\n $dataSource: DataSource!\n $division: Division!\n $instrument: String!\n $granularity: Granularity!\n $timeSpan: TimeSpan!\n ) {\n priceCandles(\n dataSource: $dataSource\n division: $division\n instrument: $instrument\n granularity: $granularity\n timeSpan: $timeSpan\n ) {\n candle {\n point\n high\n low\n open\n close\n }\n }\n }\n'
|
|
47
|
+
): (typeof documents)['\n query GetPriceCandles(\n $dataSource: DataSource!\n $division: Division!\n $instrument: String!\n $granularity: Granularity!\n $timeSpan: TimeSpan!\n ) {\n priceCandles(\n dataSource: $dataSource\n division: $division\n instrument: $instrument\n granularity: $granularity\n timeSpan: $timeSpan\n ) {\n candle {\n point\n high\n low\n open\n close\n }\n }\n }\n'];
|
|
56
48
|
|
|
57
49
|
export function graphql(source: string) {
|
|
58
50
|
return (documents as any)[source] ?? {};
|