@oanda/labs-crowd-view-widget 1.0.48 → 1.0.50

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 CHANGED
@@ -3,6 +3,410 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 1.0.50 (2025-11-27)
7
+
8
+
9
+
10
+ ## 1.0.231 (2025-11-07)
11
+
12
+
13
+
14
+ ## 1.0.230 (2025-11-05)
15
+
16
+
17
+
18
+ ## 1.0.229 (2025-11-05)
19
+
20
+
21
+
22
+ ## 1.0.228 (2025-11-05)
23
+
24
+
25
+
26
+ ## 1.0.227 (2025-10-31)
27
+
28
+
29
+
30
+ ## 1.0.226 (2025-10-29)
31
+
32
+
33
+
34
+ ## 1.0.225 (2025-10-09)
35
+
36
+
37
+
38
+ ## 1.0.224 (2025-09-29)
39
+
40
+
41
+
42
+ ## 1.0.223 (2025-09-29)
43
+
44
+
45
+
46
+ ## 1.0.222 (2025-09-17)
47
+
48
+
49
+
50
+ ## 1.0.221 (2025-09-11)
51
+
52
+
53
+
54
+ ## 1.0.220 (2025-09-09)
55
+
56
+
57
+
58
+ ## 1.0.219 (2025-09-02)
59
+
60
+
61
+
62
+ ## 1.0.218 (2025-09-01)
63
+
64
+
65
+
66
+ ## 1.0.217 (2025-08-25)
67
+
68
+
69
+
70
+ ## 1.0.216 (2025-08-18)
71
+
72
+
73
+
74
+ ## 1.0.215 (2025-08-18)
75
+
76
+
77
+
78
+ ## 1.0.214 (2025-08-14)
79
+
80
+
81
+
82
+ ## 1.0.213 (2025-08-12)
83
+
84
+
85
+
86
+ ## 1.0.212 (2025-08-05)
87
+
88
+
89
+
90
+ ## 1.0.211 (2025-08-05)
91
+
92
+
93
+
94
+ ## 1.0.210 (2025-07-31)
95
+
96
+
97
+
98
+ ## 1.0.209 (2025-07-31)
99
+
100
+
101
+
102
+ ## 1.0.208 (2025-07-24)
103
+
104
+
105
+
106
+ ## 1.0.207 (2025-07-18)
107
+
108
+
109
+
110
+ ## 1.0.206 (2025-07-18)
111
+
112
+
113
+
114
+ ## 1.0.205 (2025-07-17)
115
+
116
+
117
+
118
+ ## 1.0.204 (2025-07-09)
119
+
120
+
121
+
122
+ ## 1.0.203 (2025-06-16)
123
+
124
+
125
+
126
+ ## 1.0.202 (2025-06-04)
127
+
128
+
129
+
130
+ ## 1.0.201 (2025-06-02)
131
+
132
+
133
+
134
+ ## 1.0.200 (2025-05-30)
135
+
136
+
137
+
138
+ ## 1.0.199 (2025-05-29)
139
+
140
+
141
+
142
+ ## 1.0.198 (2025-05-26)
143
+
144
+
145
+
146
+ ## 1.0.197 (2025-05-23)
147
+
148
+
149
+
150
+ ## 1.0.196 (2025-05-22)
151
+
152
+
153
+
154
+ ## 1.0.195 (2025-05-21)
155
+
156
+
157
+
158
+ ## 1.0.194 (2025-05-21)
159
+
160
+
161
+
162
+ ## 1.0.193 (2025-05-15)
163
+
164
+
165
+
166
+ ## 1.0.192 (2025-05-14)
167
+
168
+
169
+
170
+ ## 1.0.191 (2025-04-30)
171
+
172
+
173
+
174
+ ## 1.0.190 (2025-04-28)
175
+
176
+
177
+
178
+ ## 1.0.189 (2025-04-23)
179
+
180
+
181
+
182
+ ## 1.0.188 (2025-04-22)
183
+
184
+
185
+
186
+ ## 1.0.187 (2025-04-18)
187
+
188
+
189
+
190
+ ## 1.0.186 (2025-04-10)
191
+
192
+
193
+
194
+ ## 1.0.185 (2025-04-09)
195
+
196
+
197
+
198
+ ## 1.0.184 (2025-04-08)
199
+
200
+
201
+
202
+ ## 1.0.183 (2025-04-04)
203
+
204
+ **Note:** Version bump only for package @oanda/labs-crowd-view-widget
205
+
206
+
207
+
208
+
209
+
210
+ ## 1.0.49 (2025-11-07)
211
+
212
+
213
+
214
+ ## 1.0.230 (2025-11-05)
215
+
216
+
217
+
218
+ ## 1.0.229 (2025-11-05)
219
+
220
+
221
+
222
+ ## 1.0.228 (2025-11-05)
223
+
224
+
225
+
226
+ ## 1.0.227 (2025-10-31)
227
+
228
+
229
+
230
+ ## 1.0.226 (2025-10-29)
231
+
232
+
233
+
234
+ ## 1.0.225 (2025-10-09)
235
+
236
+
237
+
238
+ ## 1.0.224 (2025-09-29)
239
+
240
+
241
+
242
+ ## 1.0.223 (2025-09-29)
243
+
244
+
245
+
246
+ ## 1.0.222 (2025-09-17)
247
+
248
+
249
+
250
+ ## 1.0.221 (2025-09-11)
251
+
252
+
253
+
254
+ ## 1.0.220 (2025-09-09)
255
+
256
+
257
+
258
+ ## 1.0.219 (2025-09-02)
259
+
260
+
261
+
262
+ ## 1.0.218 (2025-09-01)
263
+
264
+
265
+
266
+ ## 1.0.217 (2025-08-25)
267
+
268
+
269
+
270
+ ## 1.0.216 (2025-08-18)
271
+
272
+
273
+
274
+ ## 1.0.215 (2025-08-18)
275
+
276
+
277
+
278
+ ## 1.0.214 (2025-08-14)
279
+
280
+
281
+
282
+ ## 1.0.213 (2025-08-12)
283
+
284
+
285
+
286
+ ## 1.0.212 (2025-08-05)
287
+
288
+
289
+
290
+ ## 1.0.211 (2025-08-05)
291
+
292
+
293
+
294
+ ## 1.0.210 (2025-07-31)
295
+
296
+
297
+
298
+ ## 1.0.209 (2025-07-31)
299
+
300
+
301
+
302
+ ## 1.0.208 (2025-07-24)
303
+
304
+
305
+
306
+ ## 1.0.207 (2025-07-18)
307
+
308
+
309
+
310
+ ## 1.0.206 (2025-07-18)
311
+
312
+
313
+
314
+ ## 1.0.205 (2025-07-17)
315
+
316
+
317
+
318
+ ## 1.0.204 (2025-07-09)
319
+
320
+
321
+
322
+ ## 1.0.203 (2025-06-16)
323
+
324
+
325
+
326
+ ## 1.0.202 (2025-06-04)
327
+
328
+
329
+
330
+ ## 1.0.201 (2025-06-02)
331
+
332
+
333
+
334
+ ## 1.0.200 (2025-05-30)
335
+
336
+
337
+
338
+ ## 1.0.199 (2025-05-29)
339
+
340
+
341
+
342
+ ## 1.0.198 (2025-05-26)
343
+
344
+
345
+
346
+ ## 1.0.197 (2025-05-23)
347
+
348
+
349
+
350
+ ## 1.0.196 (2025-05-22)
351
+
352
+
353
+
354
+ ## 1.0.195 (2025-05-21)
355
+
356
+
357
+
358
+ ## 1.0.194 (2025-05-21)
359
+
360
+
361
+
362
+ ## 1.0.193 (2025-05-15)
363
+
364
+
365
+
366
+ ## 1.0.192 (2025-05-14)
367
+
368
+
369
+
370
+ ## 1.0.191 (2025-04-30)
371
+
372
+
373
+
374
+ ## 1.0.190 (2025-04-28)
375
+
376
+
377
+
378
+ ## 1.0.189 (2025-04-23)
379
+
380
+
381
+
382
+ ## 1.0.188 (2025-04-22)
383
+
384
+
385
+
386
+ ## 1.0.187 (2025-04-18)
387
+
388
+
389
+
390
+ ## 1.0.186 (2025-04-10)
391
+
392
+
393
+
394
+ ## 1.0.185 (2025-04-09)
395
+
396
+
397
+
398
+ ## 1.0.184 (2025-04-08)
399
+
400
+
401
+
402
+ ## 1.0.183 (2025-04-04)
403
+
404
+ **Note:** Version bump only for package @oanda/labs-crowd-view-widget
405
+
406
+
407
+
408
+
409
+
6
410
  ## 1.0.48 (2025-11-05)
7
411
 
8
412
 
@@ -18,15 +18,16 @@ const useCrowdViewData = _ref => {
18
18
  division,
19
19
  granularity
20
20
  } = _ref;
21
+ const dataSource = division === _graphql.Division.Ogm || division === _graphql.Division.Oj ? _graphql.DataSource.Mt5 : _graphql.DataSource.V20;
21
22
  const {
22
23
  loading: priceCandlesLoading,
23
24
  data: priceCandlesData,
24
25
  error: priceCandlesError
25
26
  } = (0, _client.useQuery)(_getPriceCandles.getPriceCandles, {
26
27
  variables: {
27
- dataSource: division === _graphql.Division.Ogm ? _graphql.DataSource.Mt5 : _graphql.DataSource.V20,
28
+ dataSource,
28
29
  division,
29
- instrument: division === _graphql.Division.Ogm ? _constants.INSTRUMENTS_CONFIG[instrument].mt5name : _constants.INSTRUMENTS_CONFIG[instrument].v20name,
30
+ instrument: dataSource === _graphql.DataSource.Mt5 ? _constants.INSTRUMENTS_CONFIG[instrument].mt5name : _constants.INSTRUMENTS_CONFIG[instrument].v20name,
30
31
  granularity,
31
32
  timeSpan: (0, _utils.getTimeSpanForGranularity)(granularity)
32
33
  },
@@ -1 +1 @@
1
- {"version":3,"file":"useCrowdViewData.js","names":["_client","require","_react","_getOrderPositionBooks","_getPriceCandles","_graphql","_constants","_utils","useCrowdViewData","_ref","instrument","bookType","division","granularity","loading","priceCandlesLoading","data","priceCandlesData","error","priceCandlesError","useQuery","getPriceCandles","variables","dataSource","Division","Ogm","DataSource","Mt5","V20","INSTRUMENTS_CONFIG","mt5name","v20name","timeSpan","getTimeSpanForGranularity","fetchPolicy","priceCandlesProcessed","useMemo","processPriceCandles","minPrice","maxPrice","hasValidCandles","candleMap","candles","targetBucketWidth","getTargetBucketWidth","maxBookPrice","BUCKET_CONFIG","PRICE_PADDING_MULTIPLIER","minBookPrice","orderPositionLoading","orderPositionData","orderPositionError","getOrderPositionBooks","BookType","Order","skip","orderPositionBooks","processOrderPositionBooks","buckets","processBuckets","Error","concat","message","validateData","xAxisData","map","candle","point","candlesSeriesData","open","close","low","high","bucketWidth","precision","exports"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useCrowdViewData.ts"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport { useMemo } from 'react';\n\nimport { getOrderPositionBooks } from '../../../gql/getOrderPositionBooks';\nimport { getPriceCandles } from '../../../gql/getPriceCandles';\nimport type {\n GetOrderPositionBooksQuery,\n GetOrderPositionBooksQueryVariables,\n GetPriceCandlesQuery,\n GetPriceCandlesQueryVariables,\n} from '../../../gql/types/graphql';\nimport { BookType, DataSource, Division } from '../../../gql/types/graphql';\nimport { BUCKET_CONFIG, INSTRUMENTS_CONFIG } from '../../constants';\nimport type { UseCrowdViewDataProps, UseCrowdViewDataReturn } from './types';\nimport {\n getTargetBucketWidth,\n getTimeSpanForGranularity,\n processBuckets,\n processOrderPositionBooks,\n processPriceCandles,\n validateData,\n} from './utils';\n\nexport const useCrowdViewData = ({\n instrument,\n bookType,\n division,\n granularity,\n}: UseCrowdViewDataProps): UseCrowdViewDataReturn => {\n const {\n loading: priceCandlesLoading,\n data: priceCandlesData,\n error: priceCandlesError,\n } = useQuery<GetPriceCandlesQuery, GetPriceCandlesQueryVariables>(\n getPriceCandles,\n {\n variables: {\n dataSource: division === Division.Ogm ? DataSource.Mt5 : DataSource.V20,\n division,\n instrument:\n division === Division.Ogm\n ? INSTRUMENTS_CONFIG[instrument].mt5name\n : INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n }\n );\n\n const priceCandlesProcessed = useMemo(\n () => processPriceCandles(priceCandlesData),\n [priceCandlesData]\n );\n\n const { minPrice, maxPrice, hasValidCandles, candleMap, candles } =\n priceCandlesProcessed;\n\n const targetBucketWidth = getTargetBucketWidth(granularity, instrument);\n\n const maxBookPrice = useMemo(\n () => maxPrice + targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [maxPrice, targetBucketWidth]\n );\n\n const minBookPrice = useMemo(\n () => minPrice - targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [minPrice, targetBucketWidth]\n );\n\n const {\n loading: orderPositionLoading,\n data: orderPositionData,\n error: orderPositionError,\n } = useQuery<GetOrderPositionBooksQuery, GetOrderPositionBooksQueryVariables>(\n getOrderPositionBooks,\n {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n bookType: bookType || BookType.Order,\n timeSpan: getTimeSpanForGranularity(granularity),\n granularity,\n maxBookPrice,\n minBookPrice,\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n }\n );\n\n const loading = priceCandlesLoading || orderPositionLoading;\n\n const orderPositionBooks = useMemo(\n () => processOrderPositionBooks(orderPositionData, candleMap),\n [orderPositionData, candleMap]\n );\n\n const buckets = useMemo(\n () => processBuckets(orderPositionData, targetBucketWidth),\n [orderPositionData, targetBucketWidth]\n );\n\n const error = useMemo((): Error | null => {\n if (priceCandlesError) {\n return new Error(`Price candles error: ${priceCandlesError.message}`);\n }\n if (orderPositionError) {\n return new Error(`Order position error: ${orderPositionError.message}`);\n }\n if (loading) {\n return null;\n }\n return validateData(priceCandlesData, orderPositionData, hasValidCandles);\n }, [\n priceCandlesError,\n orderPositionError,\n loading,\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n ]);\n\n const data = useMemo(() => {\n if (!priceCandlesData || !orderPositionData || error) {\n return null;\n }\n\n const xAxisData = candles.map((candle) => candle?.point || '');\n const candlesSeriesData: [number, number, number, number][] = candles.map(\n (candle) => [\n candle?.open || 0,\n candle?.close || 0,\n candle?.low || 0,\n candle?.high || 0,\n ]\n );\n\n return {\n buckets,\n xAxisData,\n candlesSeriesData,\n orderPositionBooks,\n bucketWidth: targetBucketWidth,\n precision: INSTRUMENTS_CONFIG[instrument].precision,\n bookType,\n };\n }, [\n priceCandlesData,\n orderPositionData,\n error,\n candles,\n buckets,\n orderPositionBooks,\n targetBucketWidth,\n instrument,\n bookType,\n ]);\n\n return {\n data,\n loading,\n error: !!error,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useCrowdViewData.js","names":["_client","require","_react","_getOrderPositionBooks","_getPriceCandles","_graphql","_constants","_utils","useCrowdViewData","_ref","instrument","bookType","division","granularity","dataSource","Division","Ogm","Oj","DataSource","Mt5","V20","loading","priceCandlesLoading","data","priceCandlesData","error","priceCandlesError","useQuery","getPriceCandles","variables","INSTRUMENTS_CONFIG","mt5name","v20name","timeSpan","getTimeSpanForGranularity","fetchPolicy","priceCandlesProcessed","useMemo","processPriceCandles","minPrice","maxPrice","hasValidCandles","candleMap","candles","targetBucketWidth","getTargetBucketWidth","maxBookPrice","BUCKET_CONFIG","PRICE_PADDING_MULTIPLIER","minBookPrice","orderPositionLoading","orderPositionData","orderPositionError","getOrderPositionBooks","BookType","Order","skip","orderPositionBooks","processOrderPositionBooks","buckets","processBuckets","Error","concat","message","validateData","xAxisData","map","candle","point","candlesSeriesData","open","close","low","high","bucketWidth","precision","exports"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useCrowdViewData.ts"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport { useMemo } from 'react';\n\nimport { getOrderPositionBooks } from '../../../gql/getOrderPositionBooks';\nimport { getPriceCandles } from '../../../gql/getPriceCandles';\nimport type {\n GetOrderPositionBooksQuery,\n GetOrderPositionBooksQueryVariables,\n GetPriceCandlesQuery,\n GetPriceCandlesQueryVariables,\n} from '../../../gql/types/graphql';\nimport { BookType, DataSource, Division } from '../../../gql/types/graphql';\nimport { BUCKET_CONFIG, INSTRUMENTS_CONFIG } from '../../constants';\nimport type { UseCrowdViewDataProps, UseCrowdViewDataReturn } from './types';\nimport {\n getTargetBucketWidth,\n getTimeSpanForGranularity,\n processBuckets,\n processOrderPositionBooks,\n processPriceCandles,\n validateData,\n} from './utils';\n\nexport const useCrowdViewData = ({\n instrument,\n bookType,\n division,\n granularity,\n}: UseCrowdViewDataProps): UseCrowdViewDataReturn => {\n const dataSource =\n division === Division.Ogm || division === Division.Oj\n ? DataSource.Mt5\n : DataSource.V20;\n const {\n loading: priceCandlesLoading,\n data: priceCandlesData,\n error: priceCandlesError,\n } = useQuery<GetPriceCandlesQuery, GetPriceCandlesQueryVariables>(\n getPriceCandles,\n {\n variables: {\n dataSource,\n division,\n instrument:\n dataSource === DataSource.Mt5\n ? INSTRUMENTS_CONFIG[instrument].mt5name\n : INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n }\n );\n\n const priceCandlesProcessed = useMemo(\n () => processPriceCandles(priceCandlesData),\n [priceCandlesData]\n );\n\n const { minPrice, maxPrice, hasValidCandles, candleMap, candles } =\n priceCandlesProcessed;\n\n const targetBucketWidth = getTargetBucketWidth(granularity, instrument);\n\n const maxBookPrice = useMemo(\n () => maxPrice + targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [maxPrice, targetBucketWidth]\n );\n\n const minBookPrice = useMemo(\n () => minPrice - targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [minPrice, targetBucketWidth]\n );\n\n const {\n loading: orderPositionLoading,\n data: orderPositionData,\n error: orderPositionError,\n } = useQuery<GetOrderPositionBooksQuery, GetOrderPositionBooksQueryVariables>(\n getOrderPositionBooks,\n {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n bookType: bookType || BookType.Order,\n timeSpan: getTimeSpanForGranularity(granularity),\n granularity,\n maxBookPrice,\n minBookPrice,\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n }\n );\n\n const loading = priceCandlesLoading || orderPositionLoading;\n\n const orderPositionBooks = useMemo(\n () => processOrderPositionBooks(orderPositionData, candleMap),\n [orderPositionData, candleMap]\n );\n\n const buckets = useMemo(\n () => processBuckets(orderPositionData, targetBucketWidth),\n [orderPositionData, targetBucketWidth]\n );\n\n const error = useMemo((): Error | null => {\n if (priceCandlesError) {\n return new Error(`Price candles error: ${priceCandlesError.message}`);\n }\n if (orderPositionError) {\n return new Error(`Order position error: ${orderPositionError.message}`);\n }\n if (loading) {\n return null;\n }\n return validateData(priceCandlesData, orderPositionData, hasValidCandles);\n }, [\n priceCandlesError,\n orderPositionError,\n loading,\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n ]);\n\n const data = useMemo(() => {\n if (!priceCandlesData || !orderPositionData || error) {\n return null;\n }\n\n const xAxisData = candles.map((candle) => candle?.point || '');\n const candlesSeriesData: [number, number, number, number][] = candles.map(\n (candle) => [\n candle?.open || 0,\n candle?.close || 0,\n candle?.low || 0,\n candle?.high || 0,\n ]\n );\n\n return {\n buckets,\n xAxisData,\n candlesSeriesData,\n orderPositionBooks,\n bucketWidth: targetBucketWidth,\n precision: INSTRUMENTS_CONFIG[instrument].precision,\n bookType,\n };\n }, [\n priceCandlesData,\n orderPositionData,\n error,\n candles,\n buckets,\n orderPositionBooks,\n targetBucketWidth,\n instrument,\n bookType,\n ]);\n\n return {\n data,\n loading,\n error: !!error,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -64,16 +64,16 @@ const instrumentSelectConfig = exports.instrumentSelectConfig = [...instrumentSe
64
64
  label: 'XAG/USD'
65
65
  }];
66
66
  const granularitySelectConfig = exports.granularitySelectConfig = [{
67
- id: _graphql.Granularity.M5,
68
- label: '5_minutes'
69
- }, {
70
- id: _graphql.Granularity.M15,
71
- label: '15_minutes'
72
- }, {
73
67
  id: _graphql.Granularity.H1,
74
68
  label: '1_hour'
75
69
  }, {
76
70
  id: _graphql.Granularity.H4,
77
71
  label: '4_hours'
72
+ }, {
73
+ id: _graphql.Granularity.M5,
74
+ label: '5_minutes'
75
+ }, {
76
+ id: _graphql.Granularity.M15,
77
+ label: '15_minutes'
78
78
  }];
79
79
  //# sourceMappingURL=selectConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selectConfig.js","names":["_graphql","require","_types","navigationConfig","exports","id","BookType","Order","label","Position","instrumentSelectConfigOC","InstrumentId","EUR_AUD","EUR_GBP","EUR_JPY","EUR_USD","EUR_CHF","USD_CHF","USD_JPY","USD_CAD","GBP_USD","GBP_JPY","GBP_CHF","AUD_JPY","AUD_USD","NZD_USD","instrumentSelectConfig","XAU_USD","XAG_USD","granularitySelectConfig","Granularity","M5","M15","H1","H4"],"sources":["../../../src/CrowdViewWidget/selectConfig.ts"],"sourcesContent":["import { BookType, Granularity } from '../gql/types/graphql';\nimport { InstrumentId } from './types';\n\nconst navigationConfig = [\n {\n id: BookType.Order,\n label: 'order_book',\n },\n {\n id: BookType.Position,\n label: 'position_book',\n },\n];\n\nconst instrumentSelectConfigOC = [\n {\n id: InstrumentId.EUR_AUD,\n label: 'EUR/AUD',\n },\n {\n id: InstrumentId.EUR_GBP,\n label: 'EUR/GBP',\n },\n {\n id: InstrumentId.EUR_JPY,\n label: 'EUR/JPY',\n },\n {\n id: InstrumentId.EUR_USD,\n label: 'EUR/USD',\n },\n {\n id: InstrumentId.EUR_CHF,\n label: 'EUR/CHF',\n },\n {\n id: InstrumentId.USD_CHF,\n label: 'USD/CHF',\n },\n {\n id: InstrumentId.USD_JPY,\n label: 'USD/JPY',\n },\n {\n id: InstrumentId.USD_CAD,\n label: 'USD/CAD',\n },\n {\n id: InstrumentId.GBP_USD,\n label: 'GBP/USD',\n },\n {\n id: InstrumentId.GBP_JPY,\n label: 'GBP/JPY',\n },\n {\n id: InstrumentId.GBP_CHF,\n label: 'GBP/CHF',\n },\n {\n id: InstrumentId.AUD_JPY,\n label: 'AUD/JPY',\n },\n {\n id: InstrumentId.AUD_USD,\n label: 'AUD/USD',\n },\n {\n id: InstrumentId.NZD_USD,\n label: 'NZD/USD',\n },\n];\n\nconst instrumentSelectConfig = [\n ...instrumentSelectConfigOC,\n {\n id: InstrumentId.XAU_USD,\n label: 'XAU/USD',\n },\n {\n id: InstrumentId.XAG_USD,\n label: 'XAG/USD',\n },\n];\n\nconst granularitySelectConfig = [\n {\n id: Granularity.M5,\n label: '5_minutes',\n },\n {\n id: Granularity.M15,\n label: '15_minutes',\n },\n {\n id: Granularity.H1,\n label: '1_hour',\n },\n {\n id: Granularity.H4,\n label: '4_hours',\n },\n];\n\nexport {\n granularitySelectConfig,\n instrumentSelectConfig,\n instrumentSelectConfigOC,\n navigationConfig,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,MAAME,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,CACvB;EACEE,EAAE,EAAEC,iBAAQ,CAACC,KAAK;EAClBC,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEC,iBAAQ,CAACG,QAAQ;EACrBD,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAME,wBAAwB,GAAAN,OAAA,CAAAM,wBAAA,GAAG,CAC/B;EACEL,EAAE,EAAEM,mBAAY,CAACC,OAAO;EACxBJ,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACE,OAAO;EACxBL,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACG,OAAO;EACxBN,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACI,OAAO;EACxBP,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACK,OAAO;EACxBR,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACM,OAAO;EACxBT,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACO,OAAO;EACxBV,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACQ,OAAO;EACxBX,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACS,OAAO;EACxBZ,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACU,OAAO;EACxBb,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACW,OAAO;EACxBd,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACY,OAAO;EACxBf,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACa,OAAO;EACxBhB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACc,OAAO;EACxBjB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMkB,sBAAsB,GAAAtB,OAAA,CAAAsB,sBAAA,GAAG,CAC7B,GAAGhB,wBAAwB,EAC3B;EACEL,EAAE,EAAEM,mBAAY,CAACgB,OAAO;EACxBnB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACiB,OAAO;EACxBpB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMqB,uBAAuB,GAAAzB,OAAA,CAAAyB,uBAAA,GAAG,CAC9B;EACExB,EAAE,EAAEyB,oBAAW,CAACC,EAAE;EAClBvB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEyB,oBAAW,CAACE,GAAG;EACnBxB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEyB,oBAAW,CAACG,EAAE;EAClBzB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEyB,oBAAW,CAACI,EAAE;EAClB1B,KAAK,EAAE;AACT,CAAC,CACF","ignoreList":[]}
1
+ {"version":3,"file":"selectConfig.js","names":["_graphql","require","_types","navigationConfig","exports","id","BookType","Order","label","Position","instrumentSelectConfigOC","InstrumentId","EUR_AUD","EUR_GBP","EUR_JPY","EUR_USD","EUR_CHF","USD_CHF","USD_JPY","USD_CAD","GBP_USD","GBP_JPY","GBP_CHF","AUD_JPY","AUD_USD","NZD_USD","instrumentSelectConfig","XAU_USD","XAG_USD","granularitySelectConfig","Granularity","H1","H4","M5","M15"],"sources":["../../../src/CrowdViewWidget/selectConfig.ts"],"sourcesContent":["import { BookType, Granularity } from '../gql/types/graphql';\nimport { InstrumentId } from './types';\n\nconst navigationConfig = [\n {\n id: BookType.Order,\n label: 'order_book',\n },\n {\n id: BookType.Position,\n label: 'position_book',\n },\n];\n\nconst instrumentSelectConfigOC = [\n {\n id: InstrumentId.EUR_AUD,\n label: 'EUR/AUD',\n },\n {\n id: InstrumentId.EUR_GBP,\n label: 'EUR/GBP',\n },\n {\n id: InstrumentId.EUR_JPY,\n label: 'EUR/JPY',\n },\n {\n id: InstrumentId.EUR_USD,\n label: 'EUR/USD',\n },\n {\n id: InstrumentId.EUR_CHF,\n label: 'EUR/CHF',\n },\n {\n id: InstrumentId.USD_CHF,\n label: 'USD/CHF',\n },\n {\n id: InstrumentId.USD_JPY,\n label: 'USD/JPY',\n },\n {\n id: InstrumentId.USD_CAD,\n label: 'USD/CAD',\n },\n {\n id: InstrumentId.GBP_USD,\n label: 'GBP/USD',\n },\n {\n id: InstrumentId.GBP_JPY,\n label: 'GBP/JPY',\n },\n {\n id: InstrumentId.GBP_CHF,\n label: 'GBP/CHF',\n },\n {\n id: InstrumentId.AUD_JPY,\n label: 'AUD/JPY',\n },\n {\n id: InstrumentId.AUD_USD,\n label: 'AUD/USD',\n },\n {\n id: InstrumentId.NZD_USD,\n label: 'NZD/USD',\n },\n];\n\nconst instrumentSelectConfig = [\n ...instrumentSelectConfigOC,\n {\n id: InstrumentId.XAU_USD,\n label: 'XAU/USD',\n },\n {\n id: InstrumentId.XAG_USD,\n label: 'XAG/USD',\n },\n];\n\nconst granularitySelectConfig = [\n {\n id: Granularity.H1,\n label: '1_hour',\n },\n {\n id: Granularity.H4,\n label: '4_hours',\n },\n {\n id: Granularity.M5,\n label: '5_minutes',\n },\n {\n id: Granularity.M15,\n label: '15_minutes',\n },\n];\n\nexport {\n granularitySelectConfig,\n instrumentSelectConfig,\n instrumentSelectConfigOC,\n navigationConfig,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,MAAME,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,CACvB;EACEE,EAAE,EAAEC,iBAAQ,CAACC,KAAK;EAClBC,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEC,iBAAQ,CAACG,QAAQ;EACrBD,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAME,wBAAwB,GAAAN,OAAA,CAAAM,wBAAA,GAAG,CAC/B;EACEL,EAAE,EAAEM,mBAAY,CAACC,OAAO;EACxBJ,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACE,OAAO;EACxBL,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACG,OAAO;EACxBN,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACI,OAAO;EACxBP,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACK,OAAO;EACxBR,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACM,OAAO;EACxBT,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACO,OAAO;EACxBV,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACQ,OAAO;EACxBX,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACS,OAAO;EACxBZ,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACU,OAAO;EACxBb,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACW,OAAO;EACxBd,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACY,OAAO;EACxBf,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACa,OAAO;EACxBhB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACc,OAAO;EACxBjB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMkB,sBAAsB,GAAAtB,OAAA,CAAAsB,sBAAA,GAAG,CAC7B,GAAGhB,wBAAwB,EAC3B;EACEL,EAAE,EAAEM,mBAAY,CAACgB,OAAO;EACxBnB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEM,mBAAY,CAACiB,OAAO;EACxBpB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMqB,uBAAuB,GAAAzB,OAAA,CAAAyB,uBAAA,GAAG,CAC9B;EACExB,EAAE,EAAEyB,oBAAW,CAACC,EAAE;EAClBvB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEyB,oBAAW,CAACE,EAAE;EAClBxB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEyB,oBAAW,CAACG,EAAE;EAClBzB,KAAK,EAAE;AACT,CAAC,EACD;EACEH,EAAE,EAAEyB,oBAAW,CAACI,GAAG;EACnB1B,KAAK,EAAE;AACT,CAAC,CACF","ignoreList":[]}
@@ -12,15 +12,16 @@ export const useCrowdViewData = _ref => {
12
12
  division,
13
13
  granularity
14
14
  } = _ref;
15
+ const dataSource = division === Division.Ogm || division === Division.Oj ? DataSource.Mt5 : DataSource.V20;
15
16
  const {
16
17
  loading: priceCandlesLoading,
17
18
  data: priceCandlesData,
18
19
  error: priceCandlesError
19
20
  } = useQuery(getPriceCandles, {
20
21
  variables: {
21
- dataSource: division === Division.Ogm ? DataSource.Mt5 : DataSource.V20,
22
+ dataSource,
22
23
  division,
23
- instrument: division === Division.Ogm ? INSTRUMENTS_CONFIG[instrument].mt5name : INSTRUMENTS_CONFIG[instrument].v20name,
24
+ instrument: dataSource === DataSource.Mt5 ? INSTRUMENTS_CONFIG[instrument].mt5name : INSTRUMENTS_CONFIG[instrument].v20name,
24
25
  granularity,
25
26
  timeSpan: getTimeSpanForGranularity(granularity)
26
27
  },
@@ -1 +1 @@
1
- {"version":3,"file":"useCrowdViewData.js","names":["useQuery","useMemo","getOrderPositionBooks","getPriceCandles","BookType","DataSource","Division","BUCKET_CONFIG","INSTRUMENTS_CONFIG","getTargetBucketWidth","getTimeSpanForGranularity","processBuckets","processOrderPositionBooks","processPriceCandles","validateData","useCrowdViewData","_ref","instrument","bookType","division","granularity","loading","priceCandlesLoading","data","priceCandlesData","error","priceCandlesError","variables","dataSource","Ogm","Mt5","V20","mt5name","v20name","timeSpan","fetchPolicy","priceCandlesProcessed","minPrice","maxPrice","hasValidCandles","candleMap","candles","targetBucketWidth","maxBookPrice","PRICE_PADDING_MULTIPLIER","minBookPrice","orderPositionLoading","orderPositionData","orderPositionError","Order","skip","orderPositionBooks","buckets","Error","concat","message","xAxisData","map","candle","point","candlesSeriesData","open","close","low","high","bucketWidth","precision"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useCrowdViewData.ts"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport { useMemo } from 'react';\n\nimport { getOrderPositionBooks } from '../../../gql/getOrderPositionBooks';\nimport { getPriceCandles } from '../../../gql/getPriceCandles';\nimport type {\n GetOrderPositionBooksQuery,\n GetOrderPositionBooksQueryVariables,\n GetPriceCandlesQuery,\n GetPriceCandlesQueryVariables,\n} from '../../../gql/types/graphql';\nimport { BookType, DataSource, Division } from '../../../gql/types/graphql';\nimport { BUCKET_CONFIG, INSTRUMENTS_CONFIG } from '../../constants';\nimport type { UseCrowdViewDataProps, UseCrowdViewDataReturn } from './types';\nimport {\n getTargetBucketWidth,\n getTimeSpanForGranularity,\n processBuckets,\n processOrderPositionBooks,\n processPriceCandles,\n validateData,\n} from './utils';\n\nexport const useCrowdViewData = ({\n instrument,\n bookType,\n division,\n granularity,\n}: UseCrowdViewDataProps): UseCrowdViewDataReturn => {\n const {\n loading: priceCandlesLoading,\n data: priceCandlesData,\n error: priceCandlesError,\n } = useQuery<GetPriceCandlesQuery, GetPriceCandlesQueryVariables>(\n getPriceCandles,\n {\n variables: {\n dataSource: division === Division.Ogm ? DataSource.Mt5 : DataSource.V20,\n division,\n instrument:\n division === Division.Ogm\n ? INSTRUMENTS_CONFIG[instrument].mt5name\n : INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n }\n );\n\n const priceCandlesProcessed = useMemo(\n () => processPriceCandles(priceCandlesData),\n [priceCandlesData]\n );\n\n const { minPrice, maxPrice, hasValidCandles, candleMap, candles } =\n priceCandlesProcessed;\n\n const targetBucketWidth = getTargetBucketWidth(granularity, instrument);\n\n const maxBookPrice = useMemo(\n () => maxPrice + targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [maxPrice, targetBucketWidth]\n );\n\n const minBookPrice = useMemo(\n () => minPrice - targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [minPrice, targetBucketWidth]\n );\n\n const {\n loading: orderPositionLoading,\n data: orderPositionData,\n error: orderPositionError,\n } = useQuery<GetOrderPositionBooksQuery, GetOrderPositionBooksQueryVariables>(\n getOrderPositionBooks,\n {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n bookType: bookType || BookType.Order,\n timeSpan: getTimeSpanForGranularity(granularity),\n granularity,\n maxBookPrice,\n minBookPrice,\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n }\n );\n\n const loading = priceCandlesLoading || orderPositionLoading;\n\n const orderPositionBooks = useMemo(\n () => processOrderPositionBooks(orderPositionData, candleMap),\n [orderPositionData, candleMap]\n );\n\n const buckets = useMemo(\n () => processBuckets(orderPositionData, targetBucketWidth),\n [orderPositionData, targetBucketWidth]\n );\n\n const error = useMemo((): Error | null => {\n if (priceCandlesError) {\n return new Error(`Price candles error: ${priceCandlesError.message}`);\n }\n if (orderPositionError) {\n return new Error(`Order position error: ${orderPositionError.message}`);\n }\n if (loading) {\n return null;\n }\n return validateData(priceCandlesData, orderPositionData, hasValidCandles);\n }, [\n priceCandlesError,\n orderPositionError,\n loading,\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n ]);\n\n const data = useMemo(() => {\n if (!priceCandlesData || !orderPositionData || error) {\n return null;\n }\n\n const xAxisData = candles.map((candle) => candle?.point || '');\n const candlesSeriesData: [number, number, number, number][] = candles.map(\n (candle) => [\n candle?.open || 0,\n candle?.close || 0,\n candle?.low || 0,\n candle?.high || 0,\n ]\n );\n\n return {\n buckets,\n xAxisData,\n candlesSeriesData,\n orderPositionBooks,\n bucketWidth: targetBucketWidth,\n precision: INSTRUMENTS_CONFIG[instrument].precision,\n bookType,\n };\n }, [\n priceCandlesData,\n orderPositionData,\n error,\n candles,\n buckets,\n orderPositionBooks,\n targetBucketWidth,\n instrument,\n bookType,\n ]);\n\n return {\n data,\n loading,\n error: !!error,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useCrowdViewData.js","names":["useQuery","useMemo","getOrderPositionBooks","getPriceCandles","BookType","DataSource","Division","BUCKET_CONFIG","INSTRUMENTS_CONFIG","getTargetBucketWidth","getTimeSpanForGranularity","processBuckets","processOrderPositionBooks","processPriceCandles","validateData","useCrowdViewData","_ref","instrument","bookType","division","granularity","dataSource","Ogm","Oj","Mt5","V20","loading","priceCandlesLoading","data","priceCandlesData","error","priceCandlesError","variables","mt5name","v20name","timeSpan","fetchPolicy","priceCandlesProcessed","minPrice","maxPrice","hasValidCandles","candleMap","candles","targetBucketWidth","maxBookPrice","PRICE_PADDING_MULTIPLIER","minBookPrice","orderPositionLoading","orderPositionData","orderPositionError","Order","skip","orderPositionBooks","buckets","Error","concat","message","xAxisData","map","candle","point","candlesSeriesData","open","close","low","high","bucketWidth","precision"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useCrowdViewData.ts"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport { useMemo } from 'react';\n\nimport { getOrderPositionBooks } from '../../../gql/getOrderPositionBooks';\nimport { getPriceCandles } from '../../../gql/getPriceCandles';\nimport type {\n GetOrderPositionBooksQuery,\n GetOrderPositionBooksQueryVariables,\n GetPriceCandlesQuery,\n GetPriceCandlesQueryVariables,\n} from '../../../gql/types/graphql';\nimport { BookType, DataSource, Division } from '../../../gql/types/graphql';\nimport { BUCKET_CONFIG, INSTRUMENTS_CONFIG } from '../../constants';\nimport type { UseCrowdViewDataProps, UseCrowdViewDataReturn } from './types';\nimport {\n getTargetBucketWidth,\n getTimeSpanForGranularity,\n processBuckets,\n processOrderPositionBooks,\n processPriceCandles,\n validateData,\n} from './utils';\n\nexport const useCrowdViewData = ({\n instrument,\n bookType,\n division,\n granularity,\n}: UseCrowdViewDataProps): UseCrowdViewDataReturn => {\n const dataSource =\n division === Division.Ogm || division === Division.Oj\n ? DataSource.Mt5\n : DataSource.V20;\n const {\n loading: priceCandlesLoading,\n data: priceCandlesData,\n error: priceCandlesError,\n } = useQuery<GetPriceCandlesQuery, GetPriceCandlesQueryVariables>(\n getPriceCandles,\n {\n variables: {\n dataSource,\n division,\n instrument:\n dataSource === DataSource.Mt5\n ? INSTRUMENTS_CONFIG[instrument].mt5name\n : INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n }\n );\n\n const priceCandlesProcessed = useMemo(\n () => processPriceCandles(priceCandlesData),\n [priceCandlesData]\n );\n\n const { minPrice, maxPrice, hasValidCandles, candleMap, candles } =\n priceCandlesProcessed;\n\n const targetBucketWidth = getTargetBucketWidth(granularity, instrument);\n\n const maxBookPrice = useMemo(\n () => maxPrice + targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [maxPrice, targetBucketWidth]\n );\n\n const minBookPrice = useMemo(\n () => minPrice - targetBucketWidth * BUCKET_CONFIG.PRICE_PADDING_MULTIPLIER,\n [minPrice, targetBucketWidth]\n );\n\n const {\n loading: orderPositionLoading,\n data: orderPositionData,\n error: orderPositionError,\n } = useQuery<GetOrderPositionBooksQuery, GetOrderPositionBooksQueryVariables>(\n getOrderPositionBooks,\n {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n bookType: bookType || BookType.Order,\n timeSpan: getTimeSpanForGranularity(granularity),\n granularity,\n maxBookPrice,\n minBookPrice,\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n }\n );\n\n const loading = priceCandlesLoading || orderPositionLoading;\n\n const orderPositionBooks = useMemo(\n () => processOrderPositionBooks(orderPositionData, candleMap),\n [orderPositionData, candleMap]\n );\n\n const buckets = useMemo(\n () => processBuckets(orderPositionData, targetBucketWidth),\n [orderPositionData, targetBucketWidth]\n );\n\n const error = useMemo((): Error | null => {\n if (priceCandlesError) {\n return new Error(`Price candles error: ${priceCandlesError.message}`);\n }\n if (orderPositionError) {\n return new Error(`Order position error: ${orderPositionError.message}`);\n }\n if (loading) {\n return null;\n }\n return validateData(priceCandlesData, orderPositionData, hasValidCandles);\n }, [\n priceCandlesError,\n orderPositionError,\n loading,\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n ]);\n\n const data = useMemo(() => {\n if (!priceCandlesData || !orderPositionData || error) {\n return null;\n }\n\n const xAxisData = candles.map((candle) => candle?.point || '');\n const candlesSeriesData: [number, number, number, number][] = candles.map(\n (candle) => [\n candle?.open || 0,\n candle?.close || 0,\n candle?.low || 0,\n candle?.high || 0,\n ]\n );\n\n return {\n buckets,\n xAxisData,\n candlesSeriesData,\n orderPositionBooks,\n bucketWidth: targetBucketWidth,\n precision: INSTRUMENTS_CONFIG[instrument].precision,\n bookType,\n };\n }, [\n priceCandlesData,\n orderPositionData,\n error,\n candles,\n buckets,\n orderPositionBooks,\n targetBucketWidth,\n instrument,\n bookType,\n ]);\n\n return {\n data,\n loading,\n error: !!error,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -58,17 +58,17 @@ const instrumentSelectConfig = [...instrumentSelectConfigOC, {
58
58
  label: 'XAG/USD'
59
59
  }];
60
60
  const granularitySelectConfig = [{
61
- id: Granularity.M5,
62
- label: '5_minutes'
63
- }, {
64
- id: Granularity.M15,
65
- label: '15_minutes'
66
- }, {
67
61
  id: Granularity.H1,
68
62
  label: '1_hour'
69
63
  }, {
70
64
  id: Granularity.H4,
71
65
  label: '4_hours'
66
+ }, {
67
+ id: Granularity.M5,
68
+ label: '5_minutes'
69
+ }, {
70
+ id: Granularity.M15,
71
+ label: '15_minutes'
72
72
  }];
73
73
  export { granularitySelectConfig, instrumentSelectConfig, instrumentSelectConfigOC, navigationConfig };
74
74
  //# sourceMappingURL=selectConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selectConfig.js","names":["BookType","Granularity","InstrumentId","navigationConfig","id","Order","label","Position","instrumentSelectConfigOC","EUR_AUD","EUR_GBP","EUR_JPY","EUR_USD","EUR_CHF","USD_CHF","USD_JPY","USD_CAD","GBP_USD","GBP_JPY","GBP_CHF","AUD_JPY","AUD_USD","NZD_USD","instrumentSelectConfig","XAU_USD","XAG_USD","granularitySelectConfig","M5","M15","H1","H4"],"sources":["../../../src/CrowdViewWidget/selectConfig.ts"],"sourcesContent":["import { BookType, Granularity } from '../gql/types/graphql';\nimport { InstrumentId } from './types';\n\nconst navigationConfig = [\n {\n id: BookType.Order,\n label: 'order_book',\n },\n {\n id: BookType.Position,\n label: 'position_book',\n },\n];\n\nconst instrumentSelectConfigOC = [\n {\n id: InstrumentId.EUR_AUD,\n label: 'EUR/AUD',\n },\n {\n id: InstrumentId.EUR_GBP,\n label: 'EUR/GBP',\n },\n {\n id: InstrumentId.EUR_JPY,\n label: 'EUR/JPY',\n },\n {\n id: InstrumentId.EUR_USD,\n label: 'EUR/USD',\n },\n {\n id: InstrumentId.EUR_CHF,\n label: 'EUR/CHF',\n },\n {\n id: InstrumentId.USD_CHF,\n label: 'USD/CHF',\n },\n {\n id: InstrumentId.USD_JPY,\n label: 'USD/JPY',\n },\n {\n id: InstrumentId.USD_CAD,\n label: 'USD/CAD',\n },\n {\n id: InstrumentId.GBP_USD,\n label: 'GBP/USD',\n },\n {\n id: InstrumentId.GBP_JPY,\n label: 'GBP/JPY',\n },\n {\n id: InstrumentId.GBP_CHF,\n label: 'GBP/CHF',\n },\n {\n id: InstrumentId.AUD_JPY,\n label: 'AUD/JPY',\n },\n {\n id: InstrumentId.AUD_USD,\n label: 'AUD/USD',\n },\n {\n id: InstrumentId.NZD_USD,\n label: 'NZD/USD',\n },\n];\n\nconst instrumentSelectConfig = [\n ...instrumentSelectConfigOC,\n {\n id: InstrumentId.XAU_USD,\n label: 'XAU/USD',\n },\n {\n id: InstrumentId.XAG_USD,\n label: 'XAG/USD',\n },\n];\n\nconst granularitySelectConfig = [\n {\n id: Granularity.M5,\n label: '5_minutes',\n },\n {\n id: Granularity.M15,\n label: '15_minutes',\n },\n {\n id: Granularity.H1,\n label: '1_hour',\n },\n {\n id: Granularity.H4,\n label: '4_hours',\n },\n];\n\nexport {\n granularitySelectConfig,\n instrumentSelectConfig,\n instrumentSelectConfigOC,\n navigationConfig,\n};\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,WAAW,QAAQ,sBAAsB;AAC5D,SAASC,YAAY,QAAQ,SAAS;AAEtC,MAAMC,gBAAgB,GAAG,CACvB;EACEC,EAAE,EAAEJ,QAAQ,CAACK,KAAK;EAClBC,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEJ,QAAQ,CAACO,QAAQ;EACrBD,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAME,wBAAwB,GAAG,CAC/B;EACEJ,EAAE,EAAEF,YAAY,CAACO,OAAO;EACxBH,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACQ,OAAO;EACxBJ,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACS,OAAO;EACxBL,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACU,OAAO;EACxBN,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACW,OAAO;EACxBP,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACY,OAAO;EACxBR,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACa,OAAO;EACxBT,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACc,OAAO;EACxBV,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACe,OAAO;EACxBX,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACgB,OAAO;EACxBZ,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACiB,OAAO;EACxBb,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACkB,OAAO;EACxBd,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACmB,OAAO;EACxBf,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACoB,OAAO;EACxBhB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMiB,sBAAsB,GAAG,CAC7B,GAAGf,wBAAwB,EAC3B;EACEJ,EAAE,EAAEF,YAAY,CAACsB,OAAO;EACxBlB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACuB,OAAO;EACxBnB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMoB,uBAAuB,GAAG,CAC9B;EACEtB,EAAE,EAAEH,WAAW,CAAC0B,EAAE;EAClBrB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEH,WAAW,CAAC2B,GAAG;EACnBtB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEH,WAAW,CAAC4B,EAAE;EAClBvB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEH,WAAW,CAAC6B,EAAE;EAClBxB,KAAK,EAAE;AACT,CAAC,CACF;AAED,SACEoB,uBAAuB,EACvBH,sBAAsB,EACtBf,wBAAwB,EACxBL,gBAAgB","ignoreList":[]}
1
+ {"version":3,"file":"selectConfig.js","names":["BookType","Granularity","InstrumentId","navigationConfig","id","Order","label","Position","instrumentSelectConfigOC","EUR_AUD","EUR_GBP","EUR_JPY","EUR_USD","EUR_CHF","USD_CHF","USD_JPY","USD_CAD","GBP_USD","GBP_JPY","GBP_CHF","AUD_JPY","AUD_USD","NZD_USD","instrumentSelectConfig","XAU_USD","XAG_USD","granularitySelectConfig","H1","H4","M5","M15"],"sources":["../../../src/CrowdViewWidget/selectConfig.ts"],"sourcesContent":["import { BookType, Granularity } from '../gql/types/graphql';\nimport { InstrumentId } from './types';\n\nconst navigationConfig = [\n {\n id: BookType.Order,\n label: 'order_book',\n },\n {\n id: BookType.Position,\n label: 'position_book',\n },\n];\n\nconst instrumentSelectConfigOC = [\n {\n id: InstrumentId.EUR_AUD,\n label: 'EUR/AUD',\n },\n {\n id: InstrumentId.EUR_GBP,\n label: 'EUR/GBP',\n },\n {\n id: InstrumentId.EUR_JPY,\n label: 'EUR/JPY',\n },\n {\n id: InstrumentId.EUR_USD,\n label: 'EUR/USD',\n },\n {\n id: InstrumentId.EUR_CHF,\n label: 'EUR/CHF',\n },\n {\n id: InstrumentId.USD_CHF,\n label: 'USD/CHF',\n },\n {\n id: InstrumentId.USD_JPY,\n label: 'USD/JPY',\n },\n {\n id: InstrumentId.USD_CAD,\n label: 'USD/CAD',\n },\n {\n id: InstrumentId.GBP_USD,\n label: 'GBP/USD',\n },\n {\n id: InstrumentId.GBP_JPY,\n label: 'GBP/JPY',\n },\n {\n id: InstrumentId.GBP_CHF,\n label: 'GBP/CHF',\n },\n {\n id: InstrumentId.AUD_JPY,\n label: 'AUD/JPY',\n },\n {\n id: InstrumentId.AUD_USD,\n label: 'AUD/USD',\n },\n {\n id: InstrumentId.NZD_USD,\n label: 'NZD/USD',\n },\n];\n\nconst instrumentSelectConfig = [\n ...instrumentSelectConfigOC,\n {\n id: InstrumentId.XAU_USD,\n label: 'XAU/USD',\n },\n {\n id: InstrumentId.XAG_USD,\n label: 'XAG/USD',\n },\n];\n\nconst granularitySelectConfig = [\n {\n id: Granularity.H1,\n label: '1_hour',\n },\n {\n id: Granularity.H4,\n label: '4_hours',\n },\n {\n id: Granularity.M5,\n label: '5_minutes',\n },\n {\n id: Granularity.M15,\n label: '15_minutes',\n },\n];\n\nexport {\n granularitySelectConfig,\n instrumentSelectConfig,\n instrumentSelectConfigOC,\n navigationConfig,\n};\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,WAAW,QAAQ,sBAAsB;AAC5D,SAASC,YAAY,QAAQ,SAAS;AAEtC,MAAMC,gBAAgB,GAAG,CACvB;EACEC,EAAE,EAAEJ,QAAQ,CAACK,KAAK;EAClBC,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEJ,QAAQ,CAACO,QAAQ;EACrBD,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAME,wBAAwB,GAAG,CAC/B;EACEJ,EAAE,EAAEF,YAAY,CAACO,OAAO;EACxBH,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACQ,OAAO;EACxBJ,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACS,OAAO;EACxBL,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACU,OAAO;EACxBN,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACW,OAAO;EACxBP,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACY,OAAO;EACxBR,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACa,OAAO;EACxBT,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACc,OAAO;EACxBV,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACe,OAAO;EACxBX,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACgB,OAAO;EACxBZ,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACiB,OAAO;EACxBb,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACkB,OAAO;EACxBd,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACmB,OAAO;EACxBf,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACoB,OAAO;EACxBhB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMiB,sBAAsB,GAAG,CAC7B,GAAGf,wBAAwB,EAC3B;EACEJ,EAAE,EAAEF,YAAY,CAACsB,OAAO;EACxBlB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEF,YAAY,CAACuB,OAAO;EACxBnB,KAAK,EAAE;AACT,CAAC,CACF;AAED,MAAMoB,uBAAuB,GAAG,CAC9B;EACEtB,EAAE,EAAEH,WAAW,CAAC0B,EAAE;EAClBrB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEH,WAAW,CAAC2B,EAAE;EAClBtB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEH,WAAW,CAAC4B,EAAE;EAClBvB,KAAK,EAAE;AACT,CAAC,EACD;EACEF,EAAE,EAAEH,WAAW,CAAC6B,GAAG;EACnBxB,KAAK,EAAE;AACT,CAAC,CACF;AAED,SACEoB,uBAAuB,EACvBH,sBAAsB,EACtBf,wBAAwB,EACxBL,gBAAgB","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oanda/labs-crowd-view-widget",
3
- "version": "1.0.48",
3
+ "version": "1.0.50",
4
4
  "description": "Labs Crowd View Widget",
5
5
  "main": "dist/main/index.js",
6
6
  "module": "dist/module/index.js",
@@ -13,7 +13,7 @@
13
13
  "author": "OANDA",
14
14
  "license": "UNLICENSED",
15
15
  "dependencies": {
16
- "@oanda/labs-widget-common": "^1.0.230",
16
+ "@oanda/labs-widget-common": "^1.0.232",
17
17
  "@oanda/mono-i18n": "10.0.1",
18
18
  "chroma-js": "^3.1.2",
19
19
  "decimal.js": "^10.6.0",
@@ -24,5 +24,5 @@
24
24
  "@graphql-codegen/client-preset": "4.1.0",
25
25
  "@types/chroma-js": "^3.1.2"
26
26
  },
27
- "gitHead": "4632567df9699ae24253e6610ad5510a57621d2c"
27
+ "gitHead": "ab6d30657a18deb5add1cc7a7a4eb2c8e28e81d2"
28
28
  }
@@ -27,6 +27,10 @@ export const useCrowdViewData = ({
27
27
  division,
28
28
  granularity,
29
29
  }: UseCrowdViewDataProps): UseCrowdViewDataReturn => {
30
+ const dataSource =
31
+ division === Division.Ogm || division === Division.Oj
32
+ ? DataSource.Mt5
33
+ : DataSource.V20;
30
34
  const {
31
35
  loading: priceCandlesLoading,
32
36
  data: priceCandlesData,
@@ -35,10 +39,10 @@ export const useCrowdViewData = ({
35
39
  getPriceCandles,
36
40
  {
37
41
  variables: {
38
- dataSource: division === Division.Ogm ? DataSource.Mt5 : DataSource.V20,
42
+ dataSource,
39
43
  division,
40
44
  instrument:
41
- division === Division.Ogm
45
+ dataSource === DataSource.Mt5
42
46
  ? INSTRUMENTS_CONFIG[instrument].mt5name
43
47
  : INSTRUMENTS_CONFIG[instrument].v20name,
44
48
  granularity,
@@ -84,14 +84,6 @@ const instrumentSelectConfig = [
84
84
  ];
85
85
 
86
86
  const granularitySelectConfig = [
87
- {
88
- id: Granularity.M5,
89
- label: '5_minutes',
90
- },
91
- {
92
- id: Granularity.M15,
93
- label: '15_minutes',
94
- },
95
87
  {
96
88
  id: Granularity.H1,
97
89
  label: '1_hour',
@@ -100,6 +92,14 @@ const granularitySelectConfig = [
100
92
  id: Granularity.H4,
101
93
  label: '4_hours',
102
94
  },
95
+ {
96
+ id: Granularity.M5,
97
+ label: '5_minutes',
98
+ },
99
+ {
100
+ id: Granularity.M15,
101
+ label: '15_minutes',
102
+ },
103
103
  ];
104
104
 
105
105
  export {