@oanda/labs-widget-common 1.0.207 → 1.0.208

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,826 @@
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.208 (2025-07-24)
7
+
8
+
9
+
10
+ ## 1.0.207 (2025-07-18)
11
+
12
+
13
+
14
+ ## 1.0.206 (2025-07-18)
15
+
16
+
17
+
18
+ ## 1.0.205 (2025-07-17)
19
+
20
+
21
+
22
+ ## 1.0.204 (2025-07-09)
23
+
24
+
25
+
26
+ ## 1.0.203 (2025-06-16)
27
+
28
+
29
+
30
+ ## 1.0.202 (2025-06-04)
31
+
32
+
33
+
34
+ ## 1.0.201 (2025-06-02)
35
+
36
+
37
+
38
+ ## 1.0.200 (2025-05-30)
39
+
40
+
41
+
42
+ ## 1.0.199 (2025-05-29)
43
+
44
+
45
+
46
+ ## 1.0.198 (2025-05-26)
47
+
48
+
49
+
50
+ ## 1.0.197 (2025-05-23)
51
+
52
+
53
+
54
+ ## 1.0.196 (2025-05-22)
55
+
56
+
57
+
58
+ ## 1.0.195 (2025-05-21)
59
+
60
+
61
+
62
+ ## 1.0.194 (2025-05-21)
63
+
64
+
65
+
66
+ ## 1.0.193 (2025-05-15)
67
+
68
+
69
+
70
+ ## 1.0.192 (2025-05-14)
71
+
72
+
73
+
74
+ ## 1.0.191 (2025-04-30)
75
+
76
+
77
+
78
+ ## 1.0.190 (2025-04-28)
79
+
80
+
81
+
82
+ ## 1.0.189 (2025-04-23)
83
+
84
+
85
+
86
+ ## 1.0.188 (2025-04-22)
87
+
88
+
89
+
90
+ ## 1.0.187 (2025-04-18)
91
+
92
+
93
+
94
+ ## 1.0.186 (2025-04-10)
95
+
96
+
97
+
98
+ ## 1.0.185 (2025-04-09)
99
+
100
+
101
+
102
+ ## 1.0.184 (2025-04-08)
103
+
104
+
105
+
106
+ ## 1.0.183 (2025-04-04)
107
+
108
+
109
+
110
+ ## 1.0.182 (2025-03-21)
111
+
112
+
113
+
114
+ ## 1.0.181 (2025-03-13)
115
+
116
+
117
+
118
+ ## 1.0.180 (2025-01-30)
119
+
120
+
121
+
122
+ ## 1.0.179 (2025-01-29)
123
+
124
+
125
+
126
+ ## 1.0.178 (2025-01-12)
127
+
128
+
129
+
130
+ ## 1.0.177 (2025-01-10)
131
+
132
+
133
+
134
+ ## 1.0.176 (2025-01-10)
135
+
136
+
137
+
138
+ ## 1.0.175 (2025-01-08)
139
+
140
+
141
+
142
+ ## 1.0.174 (2024-12-16)
143
+
144
+
145
+
146
+ ## 1.0.173 (2024-12-11)
147
+
148
+
149
+
150
+ ## 1.0.172 (2024-11-29)
151
+
152
+
153
+
154
+ ## 1.0.171 (2024-11-28)
155
+
156
+
157
+
158
+ ## 1.0.170 (2024-11-28)
159
+
160
+
161
+
162
+ ## 1.0.169 (2024-11-20)
163
+
164
+
165
+
166
+ ## 1.0.168 (2024-11-19)
167
+
168
+
169
+
170
+ ## 1.0.167 (2024-10-14)
171
+
172
+
173
+
174
+ ## 1.0.166 (2024-10-07)
175
+
176
+
177
+
178
+ ## 1.0.165 (2024-10-03)
179
+
180
+
181
+
182
+ ## 1.0.164 (2024-09-26)
183
+
184
+
185
+
186
+ ## 1.0.163 (2024-09-18)
187
+
188
+
189
+
190
+ ## 1.0.162 (2024-09-12)
191
+
192
+
193
+
194
+ ## 1.0.161 (2024-09-11)
195
+
196
+
197
+
198
+ ## 1.0.160 (2024-09-10)
199
+
200
+
201
+
202
+ ## 1.0.159 (2024-09-09)
203
+
204
+
205
+
206
+ ## 1.0.158 (2024-09-04)
207
+
208
+
209
+
210
+ ## 1.0.157 (2024-09-04)
211
+
212
+
213
+
214
+ ## 1.0.156 (2024-09-02)
215
+
216
+
217
+
218
+ ## 1.0.155 (2024-08-29)
219
+
220
+
221
+
222
+ ## 1.0.154 (2024-08-29)
223
+
224
+
225
+
226
+ ## 1.0.153 (2024-08-23)
227
+
228
+
229
+
230
+ ## 1.0.152 (2024-08-23)
231
+
232
+
233
+
234
+ ## 1.0.151 (2024-08-20)
235
+
236
+
237
+
238
+ ## 1.0.150 (2024-08-19)
239
+
240
+
241
+
242
+ ## 1.0.149 (2024-08-07)
243
+
244
+
245
+
246
+ ## 1.0.148 (2024-08-01)
247
+
248
+
249
+
250
+ ## 1.0.147 (2024-08-01)
251
+
252
+
253
+
254
+ ## 1.0.146 (2024-07-26)
255
+
256
+
257
+
258
+ ## 1.0.145 (2024-07-25)
259
+
260
+
261
+
262
+ ## 1.0.144 (2024-07-22)
263
+
264
+
265
+
266
+ ## 1.0.143 (2024-07-19)
267
+
268
+
269
+
270
+ ## 1.0.142 (2024-07-16)
271
+
272
+
273
+
274
+ ## 1.0.141 (2024-07-16)
275
+
276
+
277
+
278
+ ## 1.0.140 (2024-07-12)
279
+
280
+
281
+
282
+ ## 1.0.139 (2024-07-12)
283
+
284
+
285
+
286
+ ## 1.0.138 (2024-07-10)
287
+
288
+
289
+
290
+ ## 1.0.137 (2024-07-05)
291
+
292
+
293
+
294
+ ## 1.0.136 (2024-07-03)
295
+
296
+
297
+
298
+ ## 1.0.135 (2024-07-03)
299
+
300
+
301
+
302
+ ## 1.0.134 (2024-07-03)
303
+
304
+
305
+
306
+ ## 1.0.133 (2024-06-28)
307
+
308
+
309
+
310
+ ## 1.0.132 (2024-06-27)
311
+
312
+
313
+
314
+ ## 1.0.131 (2024-06-27)
315
+
316
+
317
+
318
+ ## 1.0.130 (2024-06-26)
319
+
320
+
321
+
322
+ ## 1.0.129 (2024-06-17)
323
+
324
+
325
+
326
+ ## 1.0.128 (2024-06-17)
327
+
328
+
329
+
330
+ ## 1.0.127 (2024-06-10)
331
+
332
+
333
+
334
+ ## 1.0.126 (2024-05-29)
335
+
336
+
337
+
338
+ ## 1.0.125 (2024-05-29)
339
+
340
+
341
+
342
+ ## 1.0.124 (2024-05-29)
343
+
344
+
345
+
346
+ ## 1.0.123 (2024-05-28)
347
+
348
+
349
+
350
+ ## 1.0.122 (2024-05-27)
351
+
352
+
353
+
354
+ ## 1.0.121 (2024-05-27)
355
+
356
+
357
+
358
+ ## 1.0.120 (2024-05-24)
359
+
360
+
361
+
362
+ ## 1.0.119 (2024-05-17)
363
+
364
+
365
+
366
+ ## 1.0.118 (2024-05-09)
367
+
368
+
369
+
370
+ ## 1.0.117 (2024-05-07)
371
+
372
+
373
+
374
+ ## 1.0.116 (2024-04-23)
375
+
376
+
377
+
378
+ ## 1.0.115 (2024-04-22)
379
+
380
+
381
+
382
+ ## 1.0.114 (2024-04-19)
383
+
384
+
385
+
386
+ ## 1.0.113 (2024-04-19)
387
+
388
+
389
+
390
+ ## 1.0.112 (2024-04-15)
391
+
392
+
393
+
394
+ ## 1.0.111 (2024-04-11)
395
+
396
+
397
+
398
+ ## 1.0.110 (2024-04-05)
399
+
400
+
401
+
402
+ ## 1.0.109 (2024-04-05)
403
+
404
+
405
+
406
+ ## 1.0.108 (2024-04-04)
407
+
408
+
409
+
410
+ ## 1.0.107 (2024-04-03)
411
+
412
+
413
+
414
+ ## 1.0.106 (2024-03-29)
415
+
416
+
417
+
418
+ ## 1.0.105 (2024-03-28)
419
+
420
+
421
+
422
+ ## 1.0.104 (2024-03-21)
423
+
424
+
425
+
426
+ ## 1.0.103 (2024-03-20)
427
+
428
+
429
+
430
+ ## 1.0.102 (2024-03-20)
431
+
432
+
433
+
434
+ ## 1.0.101 (2024-03-13)
435
+
436
+
437
+
438
+ ## 1.0.100 (2024-03-12)
439
+
440
+
441
+
442
+ ## 1.0.99 (2024-03-11)
443
+
444
+
445
+
446
+ ## 1.0.98 (2024-03-07)
447
+
448
+
449
+
450
+ ## 1.0.97 (2024-03-06)
451
+
452
+
453
+
454
+ ## 1.0.96 (2024-03-06)
455
+
456
+
457
+
458
+ ## 1.0.95 (2024-03-04)
459
+
460
+
461
+
462
+ ## 1.0.94 (2024-02-29)
463
+
464
+
465
+
466
+ ## 1.0.93 (2024-02-28)
467
+
468
+
469
+
470
+ ## 1.0.92 (2024-02-28)
471
+
472
+
473
+
474
+ ## 1.0.91 (2024-02-23)
475
+
476
+
477
+
478
+ ## 1.0.90 (2024-02-23)
479
+
480
+
481
+
482
+ ## 1.0.89 (2024-02-21)
483
+
484
+
485
+
486
+ ## 1.0.88 (2024-02-21)
487
+
488
+
489
+
490
+ ## 1.0.87 (2024-02-20)
491
+
492
+
493
+
494
+ ## 1.0.86 (2024-02-20)
495
+
496
+
497
+
498
+ ## 1.0.85 (2024-02-13)
499
+
500
+
501
+
502
+ ## 1.0.84 (2024-02-13)
503
+
504
+
505
+
506
+ ## 1.0.83 (2024-02-09)
507
+
508
+
509
+
510
+ ## 1.0.82 (2024-02-05)
511
+
512
+
513
+
514
+ ## 1.0.81 (2024-02-05)
515
+
516
+
517
+
518
+ ## 1.0.80 (2024-02-05)
519
+
520
+
521
+
522
+ ## 1.0.79 (2024-02-05)
523
+
524
+
525
+
526
+ ## 1.0.78 (2024-01-30)
527
+
528
+
529
+
530
+ ## 1.0.77 (2024-01-25)
531
+
532
+
533
+
534
+ ## 1.0.76 (2024-01-25)
535
+
536
+
537
+
538
+ ## 1.0.75 (2024-01-22)
539
+
540
+
541
+
542
+ ## 1.0.74 (2024-01-22)
543
+
544
+
545
+
546
+ ## 1.0.73 (2024-01-22)
547
+
548
+
549
+
550
+ ## 1.0.72 (2024-01-19)
551
+
552
+
553
+
554
+ ## 1.0.71 (2024-01-18)
555
+
556
+
557
+
558
+ ## 1.0.70 (2024-01-17)
559
+
560
+
561
+
562
+ ## 1.0.69 (2024-01-17)
563
+
564
+
565
+
566
+ ## 1.0.68 (2024-01-15)
567
+
568
+
569
+
570
+ ## 1.0.67 (2024-01-15)
571
+
572
+
573
+
574
+ ## 1.0.66 (2024-01-12)
575
+
576
+
577
+
578
+ ## 1.0.65 (2024-01-11)
579
+
580
+
581
+
582
+ ## 1.0.64 (2024-01-11)
583
+
584
+
585
+
586
+ ## 1.0.63 (2024-01-11)
587
+
588
+
589
+
590
+ ## 1.0.62 (2024-01-10)
591
+
592
+
593
+
594
+ ## 1.0.61 (2024-01-09)
595
+
596
+
597
+
598
+ ## 1.0.60 (2024-01-05)
599
+
600
+
601
+
602
+ ## 1.0.59 (2023-12-27)
603
+
604
+
605
+
606
+ ## 1.0.58 (2023-12-22)
607
+
608
+
609
+
610
+ ## 1.0.57 (2023-12-22)
611
+
612
+
613
+
614
+ ## 1.0.56 (2023-12-21)
615
+
616
+
617
+
618
+ ## 1.0.55 (2023-12-19)
619
+
620
+
621
+
622
+ ## 1.0.54 (2023-12-15)
623
+
624
+
625
+
626
+ ## 1.0.53 (2023-12-13)
627
+
628
+
629
+
630
+ ## 1.0.52 (2023-12-13)
631
+
632
+
633
+
634
+ ## 1.0.51 (2023-12-07)
635
+
636
+
637
+
638
+ ## 1.0.50 (2023-12-04)
639
+
640
+
641
+
642
+ ## 1.0.49 (2023-12-01)
643
+
644
+
645
+
646
+ ## 1.0.48 (2023-12-01)
647
+
648
+
649
+
650
+ ## 1.0.47 (2023-11-29)
651
+
652
+
653
+
654
+ ## 1.0.46 (2023-11-28)
655
+
656
+
657
+
658
+ ## 1.0.45 (2023-11-23)
659
+
660
+
661
+
662
+ ## 1.0.44 (2023-11-22)
663
+
664
+
665
+
666
+ ## 1.0.43 (2023-11-15)
667
+
668
+
669
+
670
+ ## 1.0.42 (2023-11-10)
671
+
672
+
673
+
674
+ ## 1.0.41 (2023-11-03)
675
+
676
+
677
+
678
+ ## 1.0.40 (2023-11-02)
679
+
680
+
681
+
682
+ ## 1.0.39 (2023-11-02)
683
+
684
+
685
+
686
+ ## 1.0.38 (2023-10-26)
687
+
688
+
689
+
690
+ ## 1.0.37 (2023-10-26)
691
+
692
+
693
+
694
+ ## 1.0.36 (2023-10-25)
695
+
696
+
697
+
698
+ ## 1.0.35 (2023-10-24)
699
+
700
+
701
+
702
+ ## 1.0.34 (2023-10-23)
703
+
704
+
705
+
706
+ ## 1.0.33 (2023-10-23)
707
+
708
+
709
+
710
+ ## 1.0.32 (2023-10-23)
711
+
712
+
713
+
714
+ ## 1.0.31 (2023-10-20)
715
+
716
+
717
+
718
+ ## 1.0.30 (2023-10-19)
719
+
720
+
721
+
722
+ ## 1.0.29 (2023-10-19)
723
+
724
+
725
+
726
+ ## 1.0.28 (2023-10-19)
727
+
728
+
729
+
730
+ ## 1.0.27 (2023-10-18)
731
+
732
+
733
+
734
+ ## 1.0.26 (2023-10-18)
735
+
736
+
737
+
738
+ ## 1.0.25 (2023-10-17)
739
+
740
+
741
+
742
+ ## 1.0.24 (2023-10-13)
743
+
744
+
745
+
746
+ ## 1.0.23 (2023-10-13)
747
+
748
+
749
+
750
+ ## 1.0.22 (2023-10-11)
751
+
752
+
753
+
754
+ ## 1.0.21 (2023-10-10)
755
+
756
+
757
+
758
+ ## 1.0.20 (2023-10-06)
759
+
760
+
761
+
762
+ ## 1.0.19 (2023-10-06)
763
+
764
+
765
+
766
+ ## 1.0.18 (2023-10-05)
767
+
768
+
769
+
770
+ ## 1.0.17 (2023-10-04)
771
+
772
+
773
+
774
+ ## 1.0.16 (2023-10-04)
775
+
776
+
777
+
778
+ ## 1.0.15 (2023-10-04)
779
+
780
+
781
+
782
+ ## 1.0.14 (2023-10-03)
783
+
784
+
785
+
786
+ ## 1.0.13 (2023-10-03)
787
+
788
+
789
+
790
+ ## 1.0.12 (2023-10-03)
791
+
792
+
793
+
794
+ ## 1.0.11 (2023-10-02)
795
+
796
+
797
+
798
+ ## 1.0.10 (2023-09-29)
799
+
800
+
801
+
802
+ ## 1.0.9 (2023-09-28)
803
+
804
+
805
+
806
+ ## 1.0.8 (2023-09-27)
807
+
808
+
809
+
810
+ ## 1.0.7 (2023-09-26)
811
+
812
+
813
+
814
+ ## 1.0.6 (2023-09-21)
815
+
816
+
817
+
818
+ ## 1.0.5 (2023-09-13)
819
+
820
+ **Note:** Version bump only for package @oanda/labs-widget-common
821
+
822
+
823
+
824
+
825
+
6
826
  ## 1.0.207 (2025-07-18)
7
827
 
8
828
 
@@ -79,7 +79,7 @@ const ColumnRenderer = _ref => {
79
79
  isError: isError,
80
80
  isLoading: isLoading,
81
81
  loaderSize: _Loader.LoaderSize.sm
82
- }, _react.default.createElement("span", null, 'Long Only'))
82
+ }, _react.default.createElement("span", null, record.tradeMode))
83
83
  };
84
84
  return activeColumns.map(item => _react.default.createElement(_react.default.Fragment, {
85
85
  key: item
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnRenderer.js","names":["_react","_interopRequireDefault","require","_types","_Loader","_Table","e","__esModule","default","ColumnRenderer","_ref","record","isLoading","isChartLoading","isError","activeColumns","chart","allColumns","DataRecordType","SELL","createElement","PriceColumn","column","displayPrecision","price","sell","priceMovement","sellPriceMovement","BUY","buy","buyPriceMovement","DAILY_CHANGE","DailyChangeColumn","dailyPercentChange","CHART","ChartColumn","percentChange","SPREAD","SpreadColumn","value","spread","SENTIMENT","SentimentColumn","sentiment","HIGH","TableCell","key","high","undefined","loaderSize","LoaderSize","sm","LOW","low","SYMBOL","md","type","instrument","TRADE_MODE","additionalPaddingRight","map","item","Fragment","exports"],"sources":["../../../../src/components/TableWidget/ColumnRenderer.tsx"],"sourcesContent":["import React from 'react';\n\nimport { type DataRecord, DataRecordType } from '../../types';\nimport { LoaderSize } from '../Loader';\nimport {\n ChartColumn,\n DailyChangeColumn,\n PriceColumn,\n SentimentColumn,\n SpreadColumn,\n TableCell,\n} from '../Table';\n\ninterface ColumnRendererProps {\n record: DataRecord;\n chart?: number[];\n isLoading: boolean;\n isChartLoading?: boolean;\n isError: boolean;\n activeColumns: DataRecordType[];\n}\n\nexport const ColumnRenderer = ({\n record,\n isLoading,\n isChartLoading,\n isError,\n activeColumns,\n chart,\n}: ColumnRendererProps) => {\n const allColumns: Partial<Record<DataRecordType, () => JSX.Element>> = {\n [DataRecordType.SELL]: () => (\n <PriceColumn\n column={DataRecordType.SELL}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.sell}\n priceMovement={record.sellPriceMovement}\n />\n ),\n [DataRecordType.BUY]: () => (\n <PriceColumn\n column={DataRecordType.BUY}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.buy}\n priceMovement={record.buyPriceMovement}\n />\n ),\n [DataRecordType.DAILY_CHANGE]: () => (\n <DailyChangeColumn\n dailyPercentChange={record.dailyPercentChange}\n isError={isError}\n isLoading={isLoading}\n />\n ),\n [DataRecordType.CHART]: () => (\n <ChartColumn\n chart={chart ?? []}\n isLoading={!!isChartLoading}\n percentChange={record.dailyPercentChange}\n />\n ),\n [DataRecordType.SPREAD]: () => (\n <SpreadColumn\n isError={isError}\n isLoading={isLoading}\n value={record.spread}\n />\n ),\n [DataRecordType.SENTIMENT]: () => (\n <SentimentColumn isLoading={isLoading} sentiment={record.sentiment} />\n ),\n [DataRecordType.HIGH]: () => (\n <TableCell\n key={DataRecordType.SPREAD}\n isError={isError}\n isLoading={isLoading || record.high === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.high}</span>\n </TableCell>\n ),\n [DataRecordType.LOW]: () => (\n <TableCell\n key={DataRecordType.LOW}\n isError={isError}\n isLoading={isLoading || record.low === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.low}</span>\n </TableCell>\n ),\n [DataRecordType.SYMBOL]: () => (\n <TableCell\n key={DataRecordType.SYMBOL}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.md}\n type=\"textCentered\"\n >\n <span>{record.instrument}</span>\n </TableCell>\n ),\n [DataRecordType.TRADE_MODE]: () => (\n <TableCell\n key={DataRecordType.TRADE_MODE}\n additionalPaddingRight={true}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.sm}\n >\n <span>{'Long Only'}</span>\n </TableCell>\n ),\n };\n\n return activeColumns.map((item) => (\n <React.Fragment key={item}>{allColumns[item]?.() ?? null}</React.Fragment>\n ));\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ColumnRenderer.js","names":["_react","_interopRequireDefault","require","_types","_Loader","_Table","e","__esModule","default","ColumnRenderer","_ref","record","isLoading","isChartLoading","isError","activeColumns","chart","allColumns","DataRecordType","SELL","createElement","PriceColumn","column","displayPrecision","price","sell","priceMovement","sellPriceMovement","BUY","buy","buyPriceMovement","DAILY_CHANGE","DailyChangeColumn","dailyPercentChange","CHART","ChartColumn","percentChange","SPREAD","SpreadColumn","value","spread","SENTIMENT","SentimentColumn","sentiment","HIGH","TableCell","key","high","undefined","loaderSize","LoaderSize","sm","LOW","low","SYMBOL","md","type","instrument","TRADE_MODE","additionalPaddingRight","tradeMode","map","item","Fragment","exports"],"sources":["../../../../src/components/TableWidget/ColumnRenderer.tsx"],"sourcesContent":["import React from 'react';\n\nimport { type DataRecord, DataRecordType } from '../../types';\nimport { LoaderSize } from '../Loader';\nimport {\n ChartColumn,\n DailyChangeColumn,\n PriceColumn,\n SentimentColumn,\n SpreadColumn,\n TableCell,\n} from '../Table';\n\ninterface ColumnRendererProps {\n record: DataRecord;\n chart?: number[];\n isLoading: boolean;\n isChartLoading?: boolean;\n isError: boolean;\n activeColumns: DataRecordType[];\n}\n\nexport const ColumnRenderer = ({\n record,\n isLoading,\n isChartLoading,\n isError,\n activeColumns,\n chart,\n}: ColumnRendererProps) => {\n const allColumns: Partial<Record<DataRecordType, () => JSX.Element>> = {\n [DataRecordType.SELL]: () => (\n <PriceColumn\n column={DataRecordType.SELL}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.sell}\n priceMovement={record.sellPriceMovement}\n />\n ),\n [DataRecordType.BUY]: () => (\n <PriceColumn\n column={DataRecordType.BUY}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.buy}\n priceMovement={record.buyPriceMovement}\n />\n ),\n [DataRecordType.DAILY_CHANGE]: () => (\n <DailyChangeColumn\n dailyPercentChange={record.dailyPercentChange}\n isError={isError}\n isLoading={isLoading}\n />\n ),\n [DataRecordType.CHART]: () => (\n <ChartColumn\n chart={chart ?? []}\n isLoading={!!isChartLoading}\n percentChange={record.dailyPercentChange}\n />\n ),\n [DataRecordType.SPREAD]: () => (\n <SpreadColumn\n isError={isError}\n isLoading={isLoading}\n value={record.spread}\n />\n ),\n [DataRecordType.SENTIMENT]: () => (\n <SentimentColumn isLoading={isLoading} sentiment={record.sentiment} />\n ),\n [DataRecordType.HIGH]: () => (\n <TableCell\n key={DataRecordType.SPREAD}\n isError={isError}\n isLoading={isLoading || record.high === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.high}</span>\n </TableCell>\n ),\n [DataRecordType.LOW]: () => (\n <TableCell\n key={DataRecordType.LOW}\n isError={isError}\n isLoading={isLoading || record.low === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.low}</span>\n </TableCell>\n ),\n [DataRecordType.SYMBOL]: () => (\n <TableCell\n key={DataRecordType.SYMBOL}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.md}\n type=\"textCentered\"\n >\n <span>{record.instrument}</span>\n </TableCell>\n ),\n [DataRecordType.TRADE_MODE]: () => (\n <TableCell\n key={DataRecordType.TRADE_MODE}\n additionalPaddingRight={true}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.tradeMode}</span>\n </TableCell>\n ),\n };\n\n return activeColumns.map((item) => (\n <React.Fragment key={item}>{allColumns[item]?.() ?? null}</React.Fragment>\n ));\n};\n"],"mappings":"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","ignoreList":[]}
@@ -11,7 +11,8 @@ const useVisibleLiveDataRecord = (record, target) => {
11
11
  const [updatedRecord, setUpdatedRecord] = (0, _react.useState)({
12
12
  displayName: record.displayName,
13
13
  instrument: record.instrument,
14
- sentiment: record.sentiment
14
+ sentiment: record.sentiment,
15
+ tradeMode: record.tradeMode
15
16
  });
16
17
  const [error, setError] = (0, _react.useState)(null);
17
18
  const entry = (0, _usehooksTs.useIntersectionObserver)();
@@ -26,6 +27,7 @@ const useVisibleLiveDataRecord = (record, target) => {
26
27
  displayName: record.displayName,
27
28
  instrument: record.instrument,
28
29
  sentiment: record.sentiment,
30
+ tradeMode: record.tradeMode,
29
31
  buy: update?.ask,
30
32
  sell: update?.bid,
31
33
  buyPriceMovement: update?.askPriceMovement,
@@ -1 +1 @@
1
- {"version":3,"file":"useVisibleLiveDataRecord.js","names":["_react","require","_usehooksTs","_useLiveRatesMessage","useVisibleLiveDataRecord","record","target","updatedRecord","setUpdatedRecord","useState","displayName","instrument","sentiment","error","setError","entry","useIntersectionObserver","isVisible","isIntersecting","update","liveRatesError","useLiveRatesMessage","useEffect","buy","ask","sell","bid","buyPriceMovement","askPriceMovement","sellPriceMovement","bidPriceMovement","dailyPercentChange","dailyPercentChangeFromOpen","spread","displayPrecision","high","low","ref","exports"],"sources":["../../../src/hooks/useVisibleLiveDataRecord.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useIntersectionObserver } from 'usehooks-ts';\n\nimport type { DataRecord, EmptyRecord, LiveRatesErrorMessage } from '../types';\nimport { useLiveRatesMessage } from './useLiveRatesMessage';\n\nexport const useVisibleLiveDataRecord = (\n record: DataRecord | EmptyRecord,\n target: EventTarget | null\n) => {\n const [updatedRecord, setUpdatedRecord] = useState<DataRecord>({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n });\n\n const [error, setError] = useState<LiveRatesErrorMessage | null>(null);\n const entry = useIntersectionObserver();\n const isVisible = !!entry?.isIntersecting;\n\n const { update, error: liveRatesError } = useLiveRatesMessage(\n record.instrument,\n target\n );\n\n useEffect(() => {\n if (isVisible) {\n setUpdatedRecord({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n buy: update?.ask,\n sell: update?.bid,\n buyPriceMovement: update?.askPriceMovement,\n sellPriceMovement: update?.bidPriceMovement,\n dailyPercentChange: update?.dailyPercentChangeFromOpen,\n spread: update?.spread,\n displayPrecision: update?.displayPrecision,\n high: update?.high,\n low: update?.low,\n });\n setError(liveRatesError);\n }\n }, [update, record, isVisible, liveRatesError]);\n\n return {\n updatedRecord,\n error,\n ref: entry.ref,\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAGA,IAAAE,oBAAA,GAAAF,OAAA;AAEO,MAAMG,wBAAwB,GAAGA,CACtCC,MAAgC,EAChCC,MAA0B,KACvB;EACH,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAC,eAAQ,EAAa;IAC7DC,WAAW,EAAEL,MAAM,CAACK,WAAW;IAC/BC,UAAU,EAAEN,MAAM,CAACM,UAAU;IAC7BC,SAAS,EAAEP,MAAM,CAACO;EACpB,CAAC,CAAC;EAEF,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAL,eAAQ,EAA+B,IAAI,CAAC;EACtE,MAAMM,KAAK,GAAG,IAAAC,mCAAuB,EAAC,CAAC;EACvC,MAAMC,SAAS,GAAG,CAAC,CAACF,KAAK,EAAEG,cAAc;EAEzC,MAAM;IAAEC,MAAM;IAAEN,KAAK,EAAEO;EAAe,CAAC,GAAG,IAAAC,wCAAmB,EAC3DhB,MAAM,CAACM,UAAU,EACjBL,MACF,CAAC;EAED,IAAAgB,gBAAS,EAAC,MAAM;IACd,IAAIL,SAAS,EAAE;MACbT,gBAAgB,CAAC;QACfE,WAAW,EAAEL,MAAM,CAACK,WAAW;QAC/BC,UAAU,EAAEN,MAAM,CAACM,UAAU;QAC7BC,SAAS,EAAEP,MAAM,CAACO,SAAS;QAC3BW,GAAG,EAAEJ,MAAM,EAAEK,GAAG;QAChBC,IAAI,EAAEN,MAAM,EAAEO,GAAG;QACjBC,gBAAgB,EAAER,MAAM,EAAES,gBAAgB;QAC1CC,iBAAiB,EAAEV,MAAM,EAAEW,gBAAgB;QAC3CC,kBAAkB,EAAEZ,MAAM,EAAEa,0BAA0B;QACtDC,MAAM,EAAEd,MAAM,EAAEc,MAAM;QACtBC,gBAAgB,EAAEf,MAAM,EAAEe,gBAAgB;QAC1CC,IAAI,EAAEhB,MAAM,EAAEgB,IAAI;QAClBC,GAAG,EAAEjB,MAAM,EAAEiB;MACf,CAAC,CAAC;MACFtB,QAAQ,CAACM,cAAc,CAAC;IAC1B;EACF,CAAC,EAAE,CAACD,MAAM,EAAEd,MAAM,EAAEY,SAAS,EAAEG,cAAc,CAAC,CAAC;EAE/C,OAAO;IACLb,aAAa;IACbM,KAAK;IACLwB,GAAG,EAAEtB,KAAK,CAACsB;EACb,CAAC;AACH,CAAC;AAACC,OAAA,CAAAlC,wBAAA,GAAAA,wBAAA","ignoreList":[]}
1
+ {"version":3,"file":"useVisibleLiveDataRecord.js","names":["_react","require","_usehooksTs","_useLiveRatesMessage","useVisibleLiveDataRecord","record","target","updatedRecord","setUpdatedRecord","useState","displayName","instrument","sentiment","tradeMode","error","setError","entry","useIntersectionObserver","isVisible","isIntersecting","update","liveRatesError","useLiveRatesMessage","useEffect","buy","ask","sell","bid","buyPriceMovement","askPriceMovement","sellPriceMovement","bidPriceMovement","dailyPercentChange","dailyPercentChangeFromOpen","spread","displayPrecision","high","low","ref","exports"],"sources":["../../../src/hooks/useVisibleLiveDataRecord.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useIntersectionObserver } from 'usehooks-ts';\n\nimport type { DataRecord, EmptyRecord, LiveRatesErrorMessage } from '../types';\nimport { useLiveRatesMessage } from './useLiveRatesMessage';\n\nexport const useVisibleLiveDataRecord = (\n record: DataRecord | EmptyRecord,\n target: EventTarget | null\n) => {\n const [updatedRecord, setUpdatedRecord] = useState<DataRecord>({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n tradeMode: record.tradeMode,\n });\n\n const [error, setError] = useState<LiveRatesErrorMessage | null>(null);\n const entry = useIntersectionObserver();\n const isVisible = !!entry?.isIntersecting;\n\n const { update, error: liveRatesError } = useLiveRatesMessage(\n record.instrument,\n target\n );\n\n useEffect(() => {\n if (isVisible) {\n setUpdatedRecord({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n tradeMode: record.tradeMode,\n buy: update?.ask,\n sell: update?.bid,\n buyPriceMovement: update?.askPriceMovement,\n sellPriceMovement: update?.bidPriceMovement,\n dailyPercentChange: update?.dailyPercentChangeFromOpen,\n spread: update?.spread,\n displayPrecision: update?.displayPrecision,\n high: update?.high,\n low: update?.low,\n });\n setError(liveRatesError);\n }\n }, [update, record, isVisible, liveRatesError]);\n\n return {\n updatedRecord,\n error,\n ref: entry.ref,\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAGA,IAAAE,oBAAA,GAAAF,OAAA;AAEO,MAAMG,wBAAwB,GAAGA,CACtCC,MAAgC,EAChCC,MAA0B,KACvB;EACH,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAC,eAAQ,EAAa;IAC7DC,WAAW,EAAEL,MAAM,CAACK,WAAW;IAC/BC,UAAU,EAAEN,MAAM,CAACM,UAAU;IAC7BC,SAAS,EAAEP,MAAM,CAACO,SAAS;IAC3BC,SAAS,EAAER,MAAM,CAACQ;EACpB,CAAC,CAAC;EAEF,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAN,eAAQ,EAA+B,IAAI,CAAC;EACtE,MAAMO,KAAK,GAAG,IAAAC,mCAAuB,EAAC,CAAC;EACvC,MAAMC,SAAS,GAAG,CAAC,CAACF,KAAK,EAAEG,cAAc;EAEzC,MAAM;IAAEC,MAAM;IAAEN,KAAK,EAAEO;EAAe,CAAC,GAAG,IAAAC,wCAAmB,EAC3DjB,MAAM,CAACM,UAAU,EACjBL,MACF,CAAC;EAED,IAAAiB,gBAAS,EAAC,MAAM;IACd,IAAIL,SAAS,EAAE;MACbV,gBAAgB,CAAC;QACfE,WAAW,EAAEL,MAAM,CAACK,WAAW;QAC/BC,UAAU,EAAEN,MAAM,CAACM,UAAU;QAC7BC,SAAS,EAAEP,MAAM,CAACO,SAAS;QAC3BC,SAAS,EAAER,MAAM,CAACQ,SAAS;QAC3BW,GAAG,EAAEJ,MAAM,EAAEK,GAAG;QAChBC,IAAI,EAAEN,MAAM,EAAEO,GAAG;QACjBC,gBAAgB,EAAER,MAAM,EAAES,gBAAgB;QAC1CC,iBAAiB,EAAEV,MAAM,EAAEW,gBAAgB;QAC3CC,kBAAkB,EAAEZ,MAAM,EAAEa,0BAA0B;QACtDC,MAAM,EAAEd,MAAM,EAAEc,MAAM;QACtBC,gBAAgB,EAAEf,MAAM,EAAEe,gBAAgB;QAC1CC,IAAI,EAAEhB,MAAM,EAAEgB,IAAI;QAClBC,GAAG,EAAEjB,MAAM,EAAEiB;MACf,CAAC,CAAC;MACFtB,QAAQ,CAACM,cAAc,CAAC;IAC1B;EACF,CAAC,EAAE,CAACD,MAAM,EAAEf,MAAM,EAAEa,SAAS,EAAEG,cAAc,CAAC,CAAC;EAE/C,OAAO;IACLd,aAAa;IACbO,KAAK;IACLwB,GAAG,EAAEtB,KAAK,CAACsB;EACb,CAAC;AACH,CAAC;AAACC,OAAA,CAAAnC,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"dataTypes.js","names":["DataRecordType","exports"],"sources":["../../../src/types/dataTypes.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport interface DataRecord {\n [key: string]: string | number | SentimentValue | undefined | number[];\n instrument: string;\n displayName: string;\n buy?: number;\n sell?: number;\n spread?: number;\n sentiment?: SentimentValue;\n sellPriceMovement?: number;\n buyPriceMovement?: number;\n dailyPercentChange?: string;\n displayPrecision?: number;\n chart?: number[];\n high?: number;\n low?: number;\n}\n\nexport interface SentimentValue {\n shortPercent: number;\n longPercent: number;\n}\n\nexport type EmptyRecord = Record<string, never>;\n\nexport interface QueryVariables {\n [key: string]: any;\n}\n\nexport enum DataRecordType {\n INSTRUMENT = 'instrument',\n SELL = 'sell',\n BUY = 'buy',\n DAILY_CHANGE = 'dailyChange',\n CHART = 'chart',\n SPREAD = 'spread',\n SENTIMENT = 'sentiment',\n LOW = 'low',\n HIGH = 'high',\n SYMBOL = 'symbol',\n TRADE_MODE = 'tradeMode',\n}\n"],"mappings":";;;;;;IA6BYA,cAAc,GAAAC,OAAA,CAAAD,cAAA,aAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"dataTypes.js","names":["DataRecordType","exports"],"sources":["../../../src/types/dataTypes.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport interface DataRecord {\n [key: string]: string | number | SentimentValue | undefined | number[];\n instrument: string;\n displayName: string;\n buy?: number;\n sell?: number;\n spread?: number;\n sentiment?: SentimentValue;\n sellPriceMovement?: number;\n buyPriceMovement?: number;\n dailyPercentChange?: string;\n displayPrecision?: number;\n chart?: number[];\n high?: number;\n low?: number;\n tradeMode?: string;\n}\n\nexport interface SentimentValue {\n shortPercent: number;\n longPercent: number;\n}\n\nexport type EmptyRecord = Record<string, never>;\n\nexport interface QueryVariables {\n [key: string]: any;\n}\n\nexport enum DataRecordType {\n INSTRUMENT = 'instrument',\n SELL = 'sell',\n BUY = 'buy',\n DAILY_CHANGE = 'dailyChange',\n CHART = 'chart',\n SPREAD = 'spread',\n SENTIMENT = 'sentiment',\n LOW = 'low',\n HIGH = 'high',\n SYMBOL = 'symbol',\n TRADE_MODE = 'tradeMode',\n}\n"],"mappings":";;;;;;IA8BYA,cAAc,GAAAC,OAAA,CAAAD,cAAA,aAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
@@ -72,7 +72,7 @@ export const ColumnRenderer = _ref => {
72
72
  isError: isError,
73
73
  isLoading: isLoading,
74
74
  loaderSize: LoaderSize.sm
75
- }, React.createElement("span", null, 'Long Only'))
75
+ }, React.createElement("span", null, record.tradeMode))
76
76
  };
77
77
  return activeColumns.map(item => React.createElement(React.Fragment, {
78
78
  key: item
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnRenderer.js","names":["React","DataRecordType","LoaderSize","ChartColumn","DailyChangeColumn","PriceColumn","SentimentColumn","SpreadColumn","TableCell","ColumnRenderer","_ref","record","isLoading","isChartLoading","isError","activeColumns","chart","allColumns","SELL","createElement","column","displayPrecision","price","sell","priceMovement","sellPriceMovement","BUY","buy","buyPriceMovement","DAILY_CHANGE","dailyPercentChange","CHART","percentChange","SPREAD","value","spread","SENTIMENT","sentiment","HIGH","key","high","undefined","loaderSize","sm","LOW","low","SYMBOL","md","type","instrument","TRADE_MODE","additionalPaddingRight","map","item","Fragment"],"sources":["../../../../src/components/TableWidget/ColumnRenderer.tsx"],"sourcesContent":["import React from 'react';\n\nimport { type DataRecord, DataRecordType } from '../../types';\nimport { LoaderSize } from '../Loader';\nimport {\n ChartColumn,\n DailyChangeColumn,\n PriceColumn,\n SentimentColumn,\n SpreadColumn,\n TableCell,\n} from '../Table';\n\ninterface ColumnRendererProps {\n record: DataRecord;\n chart?: number[];\n isLoading: boolean;\n isChartLoading?: boolean;\n isError: boolean;\n activeColumns: DataRecordType[];\n}\n\nexport const ColumnRenderer = ({\n record,\n isLoading,\n isChartLoading,\n isError,\n activeColumns,\n chart,\n}: ColumnRendererProps) => {\n const allColumns: Partial<Record<DataRecordType, () => JSX.Element>> = {\n [DataRecordType.SELL]: () => (\n <PriceColumn\n column={DataRecordType.SELL}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.sell}\n priceMovement={record.sellPriceMovement}\n />\n ),\n [DataRecordType.BUY]: () => (\n <PriceColumn\n column={DataRecordType.BUY}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.buy}\n priceMovement={record.buyPriceMovement}\n />\n ),\n [DataRecordType.DAILY_CHANGE]: () => (\n <DailyChangeColumn\n dailyPercentChange={record.dailyPercentChange}\n isError={isError}\n isLoading={isLoading}\n />\n ),\n [DataRecordType.CHART]: () => (\n <ChartColumn\n chart={chart ?? []}\n isLoading={!!isChartLoading}\n percentChange={record.dailyPercentChange}\n />\n ),\n [DataRecordType.SPREAD]: () => (\n <SpreadColumn\n isError={isError}\n isLoading={isLoading}\n value={record.spread}\n />\n ),\n [DataRecordType.SENTIMENT]: () => (\n <SentimentColumn isLoading={isLoading} sentiment={record.sentiment} />\n ),\n [DataRecordType.HIGH]: () => (\n <TableCell\n key={DataRecordType.SPREAD}\n isError={isError}\n isLoading={isLoading || record.high === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.high}</span>\n </TableCell>\n ),\n [DataRecordType.LOW]: () => (\n <TableCell\n key={DataRecordType.LOW}\n isError={isError}\n isLoading={isLoading || record.low === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.low}</span>\n </TableCell>\n ),\n [DataRecordType.SYMBOL]: () => (\n <TableCell\n key={DataRecordType.SYMBOL}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.md}\n type=\"textCentered\"\n >\n <span>{record.instrument}</span>\n </TableCell>\n ),\n [DataRecordType.TRADE_MODE]: () => (\n <TableCell\n key={DataRecordType.TRADE_MODE}\n additionalPaddingRight={true}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.sm}\n >\n <span>{'Long Only'}</span>\n </TableCell>\n ),\n };\n\n return activeColumns.map((item) => (\n <React.Fragment key={item}>{allColumns[item]?.() ?? null}</React.Fragment>\n ));\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ColumnRenderer.js","names":["React","DataRecordType","LoaderSize","ChartColumn","DailyChangeColumn","PriceColumn","SentimentColumn","SpreadColumn","TableCell","ColumnRenderer","_ref","record","isLoading","isChartLoading","isError","activeColumns","chart","allColumns","SELL","createElement","column","displayPrecision","price","sell","priceMovement","sellPriceMovement","BUY","buy","buyPriceMovement","DAILY_CHANGE","dailyPercentChange","CHART","percentChange","SPREAD","value","spread","SENTIMENT","sentiment","HIGH","key","high","undefined","loaderSize","sm","LOW","low","SYMBOL","md","type","instrument","TRADE_MODE","additionalPaddingRight","tradeMode","map","item","Fragment"],"sources":["../../../../src/components/TableWidget/ColumnRenderer.tsx"],"sourcesContent":["import React from 'react';\n\nimport { type DataRecord, DataRecordType } from '../../types';\nimport { LoaderSize } from '../Loader';\nimport {\n ChartColumn,\n DailyChangeColumn,\n PriceColumn,\n SentimentColumn,\n SpreadColumn,\n TableCell,\n} from '../Table';\n\ninterface ColumnRendererProps {\n record: DataRecord;\n chart?: number[];\n isLoading: boolean;\n isChartLoading?: boolean;\n isError: boolean;\n activeColumns: DataRecordType[];\n}\n\nexport const ColumnRenderer = ({\n record,\n isLoading,\n isChartLoading,\n isError,\n activeColumns,\n chart,\n}: ColumnRendererProps) => {\n const allColumns: Partial<Record<DataRecordType, () => JSX.Element>> = {\n [DataRecordType.SELL]: () => (\n <PriceColumn\n column={DataRecordType.SELL}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.sell}\n priceMovement={record.sellPriceMovement}\n />\n ),\n [DataRecordType.BUY]: () => (\n <PriceColumn\n column={DataRecordType.BUY}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.buy}\n priceMovement={record.buyPriceMovement}\n />\n ),\n [DataRecordType.DAILY_CHANGE]: () => (\n <DailyChangeColumn\n dailyPercentChange={record.dailyPercentChange}\n isError={isError}\n isLoading={isLoading}\n />\n ),\n [DataRecordType.CHART]: () => (\n <ChartColumn\n chart={chart ?? []}\n isLoading={!!isChartLoading}\n percentChange={record.dailyPercentChange}\n />\n ),\n [DataRecordType.SPREAD]: () => (\n <SpreadColumn\n isError={isError}\n isLoading={isLoading}\n value={record.spread}\n />\n ),\n [DataRecordType.SENTIMENT]: () => (\n <SentimentColumn isLoading={isLoading} sentiment={record.sentiment} />\n ),\n [DataRecordType.HIGH]: () => (\n <TableCell\n key={DataRecordType.SPREAD}\n isError={isError}\n isLoading={isLoading || record.high === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.high}</span>\n </TableCell>\n ),\n [DataRecordType.LOW]: () => (\n <TableCell\n key={DataRecordType.LOW}\n isError={isError}\n isLoading={isLoading || record.low === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.low}</span>\n </TableCell>\n ),\n [DataRecordType.SYMBOL]: () => (\n <TableCell\n key={DataRecordType.SYMBOL}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.md}\n type=\"textCentered\"\n >\n <span>{record.instrument}</span>\n </TableCell>\n ),\n [DataRecordType.TRADE_MODE]: () => (\n <TableCell\n key={DataRecordType.TRADE_MODE}\n additionalPaddingRight={true}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.tradeMode}</span>\n </TableCell>\n ),\n };\n\n return activeColumns.map((item) => (\n <React.Fragment key={item}>{allColumns[item]?.() ?? null}</React.Fragment>\n ));\n};\n"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,8 @@ export const useVisibleLiveDataRecord = (record, target) => {
5
5
  const [updatedRecord, setUpdatedRecord] = useState({
6
6
  displayName: record.displayName,
7
7
  instrument: record.instrument,
8
- sentiment: record.sentiment
8
+ sentiment: record.sentiment,
9
+ tradeMode: record.tradeMode
9
10
  });
10
11
  const [error, setError] = useState(null);
11
12
  const entry = useIntersectionObserver();
@@ -20,6 +21,7 @@ export const useVisibleLiveDataRecord = (record, target) => {
20
21
  displayName: record.displayName,
21
22
  instrument: record.instrument,
22
23
  sentiment: record.sentiment,
24
+ tradeMode: record.tradeMode,
23
25
  buy: update?.ask,
24
26
  sell: update?.bid,
25
27
  buyPriceMovement: update?.askPriceMovement,
@@ -1 +1 @@
1
- {"version":3,"file":"useVisibleLiveDataRecord.js","names":["useEffect","useState","useIntersectionObserver","useLiveRatesMessage","useVisibleLiveDataRecord","record","target","updatedRecord","setUpdatedRecord","displayName","instrument","sentiment","error","setError","entry","isVisible","isIntersecting","update","liveRatesError","buy","ask","sell","bid","buyPriceMovement","askPriceMovement","sellPriceMovement","bidPriceMovement","dailyPercentChange","dailyPercentChangeFromOpen","spread","displayPrecision","high","low","ref"],"sources":["../../../src/hooks/useVisibleLiveDataRecord.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useIntersectionObserver } from 'usehooks-ts';\n\nimport type { DataRecord, EmptyRecord, LiveRatesErrorMessage } from '../types';\nimport { useLiveRatesMessage } from './useLiveRatesMessage';\n\nexport const useVisibleLiveDataRecord = (\n record: DataRecord | EmptyRecord,\n target: EventTarget | null\n) => {\n const [updatedRecord, setUpdatedRecord] = useState<DataRecord>({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n });\n\n const [error, setError] = useState<LiveRatesErrorMessage | null>(null);\n const entry = useIntersectionObserver();\n const isVisible = !!entry?.isIntersecting;\n\n const { update, error: liveRatesError } = useLiveRatesMessage(\n record.instrument,\n target\n );\n\n useEffect(() => {\n if (isVisible) {\n setUpdatedRecord({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n buy: update?.ask,\n sell: update?.bid,\n buyPriceMovement: update?.askPriceMovement,\n sellPriceMovement: update?.bidPriceMovement,\n dailyPercentChange: update?.dailyPercentChangeFromOpen,\n spread: update?.spread,\n displayPrecision: update?.displayPrecision,\n high: update?.high,\n low: update?.low,\n });\n setError(liveRatesError);\n }\n }, [update, record, isVisible, liveRatesError]);\n\n return {\n updatedRecord,\n error,\n ref: entry.ref,\n };\n};\n"],"mappings":"AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,SAASC,uBAAuB,QAAQ,aAAa;AAGrD,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,OAAO,MAAMC,wBAAwB,GAAGA,CACtCC,MAAgC,EAChCC,MAA0B,KACvB;EACH,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAGP,QAAQ,CAAa;IAC7DQ,WAAW,EAAEJ,MAAM,CAACI,WAAW;IAC/BC,UAAU,EAAEL,MAAM,CAACK,UAAU;IAC7BC,SAAS,EAAEN,MAAM,CAACM;EACpB,CAAC,CAAC;EAEF,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGZ,QAAQ,CAA+B,IAAI,CAAC;EACtE,MAAMa,KAAK,GAAGZ,uBAAuB,CAAC,CAAC;EACvC,MAAMa,SAAS,GAAG,CAAC,CAACD,KAAK,EAAEE,cAAc;EAEzC,MAAM;IAAEC,MAAM;IAAEL,KAAK,EAAEM;EAAe,CAAC,GAAGf,mBAAmB,CAC3DE,MAAM,CAACK,UAAU,EACjBJ,MACF,CAAC;EAEDN,SAAS,CAAC,MAAM;IACd,IAAIe,SAAS,EAAE;MACbP,gBAAgB,CAAC;QACfC,WAAW,EAAEJ,MAAM,CAACI,WAAW;QAC/BC,UAAU,EAAEL,MAAM,CAACK,UAAU;QAC7BC,SAAS,EAAEN,MAAM,CAACM,SAAS;QAC3BQ,GAAG,EAAEF,MAAM,EAAEG,GAAG;QAChBC,IAAI,EAAEJ,MAAM,EAAEK,GAAG;QACjBC,gBAAgB,EAAEN,MAAM,EAAEO,gBAAgB;QAC1CC,iBAAiB,EAAER,MAAM,EAAES,gBAAgB;QAC3CC,kBAAkB,EAAEV,MAAM,EAAEW,0BAA0B;QACtDC,MAAM,EAAEZ,MAAM,EAAEY,MAAM;QACtBC,gBAAgB,EAAEb,MAAM,EAAEa,gBAAgB;QAC1CC,IAAI,EAAEd,MAAM,EAAEc,IAAI;QAClBC,GAAG,EAAEf,MAAM,EAAEe;MACf,CAAC,CAAC;MACFnB,QAAQ,CAACK,cAAc,CAAC;IAC1B;EACF,CAAC,EAAE,CAACD,MAAM,EAAEZ,MAAM,EAAEU,SAAS,EAAEG,cAAc,CAAC,CAAC;EAE/C,OAAO;IACLX,aAAa;IACbK,KAAK;IACLqB,GAAG,EAAEnB,KAAK,CAACmB;EACb,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"useVisibleLiveDataRecord.js","names":["useEffect","useState","useIntersectionObserver","useLiveRatesMessage","useVisibleLiveDataRecord","record","target","updatedRecord","setUpdatedRecord","displayName","instrument","sentiment","tradeMode","error","setError","entry","isVisible","isIntersecting","update","liveRatesError","buy","ask","sell","bid","buyPriceMovement","askPriceMovement","sellPriceMovement","bidPriceMovement","dailyPercentChange","dailyPercentChangeFromOpen","spread","displayPrecision","high","low","ref"],"sources":["../../../src/hooks/useVisibleLiveDataRecord.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useIntersectionObserver } from 'usehooks-ts';\n\nimport type { DataRecord, EmptyRecord, LiveRatesErrorMessage } from '../types';\nimport { useLiveRatesMessage } from './useLiveRatesMessage';\n\nexport const useVisibleLiveDataRecord = (\n record: DataRecord | EmptyRecord,\n target: EventTarget | null\n) => {\n const [updatedRecord, setUpdatedRecord] = useState<DataRecord>({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n tradeMode: record.tradeMode,\n });\n\n const [error, setError] = useState<LiveRatesErrorMessage | null>(null);\n const entry = useIntersectionObserver();\n const isVisible = !!entry?.isIntersecting;\n\n const { update, error: liveRatesError } = useLiveRatesMessage(\n record.instrument,\n target\n );\n\n useEffect(() => {\n if (isVisible) {\n setUpdatedRecord({\n displayName: record.displayName,\n instrument: record.instrument,\n sentiment: record.sentiment,\n tradeMode: record.tradeMode,\n buy: update?.ask,\n sell: update?.bid,\n buyPriceMovement: update?.askPriceMovement,\n sellPriceMovement: update?.bidPriceMovement,\n dailyPercentChange: update?.dailyPercentChangeFromOpen,\n spread: update?.spread,\n displayPrecision: update?.displayPrecision,\n high: update?.high,\n low: update?.low,\n });\n setError(liveRatesError);\n }\n }, [update, record, isVisible, liveRatesError]);\n\n return {\n updatedRecord,\n error,\n ref: entry.ref,\n };\n};\n"],"mappings":"AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,SAASC,uBAAuB,QAAQ,aAAa;AAGrD,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,OAAO,MAAMC,wBAAwB,GAAGA,CACtCC,MAAgC,EAChCC,MAA0B,KACvB;EACH,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAGP,QAAQ,CAAa;IAC7DQ,WAAW,EAAEJ,MAAM,CAACI,WAAW;IAC/BC,UAAU,EAAEL,MAAM,CAACK,UAAU;IAC7BC,SAAS,EAAEN,MAAM,CAACM,SAAS;IAC3BC,SAAS,EAAEP,MAAM,CAACO;EACpB,CAAC,CAAC;EAEF,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGb,QAAQ,CAA+B,IAAI,CAAC;EACtE,MAAMc,KAAK,GAAGb,uBAAuB,CAAC,CAAC;EACvC,MAAMc,SAAS,GAAG,CAAC,CAACD,KAAK,EAAEE,cAAc;EAEzC,MAAM;IAAEC,MAAM;IAAEL,KAAK,EAAEM;EAAe,CAAC,GAAGhB,mBAAmB,CAC3DE,MAAM,CAACK,UAAU,EACjBJ,MACF,CAAC;EAEDN,SAAS,CAAC,MAAM;IACd,IAAIgB,SAAS,EAAE;MACbR,gBAAgB,CAAC;QACfC,WAAW,EAAEJ,MAAM,CAACI,WAAW;QAC/BC,UAAU,EAAEL,MAAM,CAACK,UAAU;QAC7BC,SAAS,EAAEN,MAAM,CAACM,SAAS;QAC3BC,SAAS,EAAEP,MAAM,CAACO,SAAS;QAC3BQ,GAAG,EAAEF,MAAM,EAAEG,GAAG;QAChBC,IAAI,EAAEJ,MAAM,EAAEK,GAAG;QACjBC,gBAAgB,EAAEN,MAAM,EAAEO,gBAAgB;QAC1CC,iBAAiB,EAAER,MAAM,EAAES,gBAAgB;QAC3CC,kBAAkB,EAAEV,MAAM,EAAEW,0BAA0B;QACtDC,MAAM,EAAEZ,MAAM,EAAEY,MAAM;QACtBC,gBAAgB,EAAEb,MAAM,EAAEa,gBAAgB;QAC1CC,IAAI,EAAEd,MAAM,EAAEc,IAAI;QAClBC,GAAG,EAAEf,MAAM,EAAEe;MACf,CAAC,CAAC;MACFnB,QAAQ,CAACK,cAAc,CAAC;IAC1B;EACF,CAAC,EAAE,CAACD,MAAM,EAAEb,MAAM,EAAEW,SAAS,EAAEG,cAAc,CAAC,CAAC;EAE/C,OAAO;IACLZ,aAAa;IACbM,KAAK;IACLqB,GAAG,EAAEnB,KAAK,CAACmB;EACb,CAAC;AACH,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"dataTypes.js","names":["DataRecordType"],"sources":["../../../src/types/dataTypes.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport interface DataRecord {\n [key: string]: string | number | SentimentValue | undefined | number[];\n instrument: string;\n displayName: string;\n buy?: number;\n sell?: number;\n spread?: number;\n sentiment?: SentimentValue;\n sellPriceMovement?: number;\n buyPriceMovement?: number;\n dailyPercentChange?: string;\n displayPrecision?: number;\n chart?: number[];\n high?: number;\n low?: number;\n}\n\nexport interface SentimentValue {\n shortPercent: number;\n longPercent: number;\n}\n\nexport type EmptyRecord = Record<string, never>;\n\nexport interface QueryVariables {\n [key: string]: any;\n}\n\nexport enum DataRecordType {\n INSTRUMENT = 'instrument',\n SELL = 'sell',\n BUY = 'buy',\n DAILY_CHANGE = 'dailyChange',\n CHART = 'chart',\n SPREAD = 'spread',\n SENTIMENT = 'sentiment',\n LOW = 'low',\n HIGH = 'high',\n SYMBOL = 'symbol',\n TRADE_MODE = 'tradeMode',\n}\n"],"mappings":"AA6BA,WAAYA,cAAc,aAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"dataTypes.js","names":["DataRecordType"],"sources":["../../../src/types/dataTypes.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport interface DataRecord {\n [key: string]: string | number | SentimentValue | undefined | number[];\n instrument: string;\n displayName: string;\n buy?: number;\n sell?: number;\n spread?: number;\n sentiment?: SentimentValue;\n sellPriceMovement?: number;\n buyPriceMovement?: number;\n dailyPercentChange?: string;\n displayPrecision?: number;\n chart?: number[];\n high?: number;\n low?: number;\n tradeMode?: string;\n}\n\nexport interface SentimentValue {\n shortPercent: number;\n longPercent: number;\n}\n\nexport type EmptyRecord = Record<string, never>;\n\nexport interface QueryVariables {\n [key: string]: any;\n}\n\nexport enum DataRecordType {\n INSTRUMENT = 'instrument',\n SELL = 'sell',\n BUY = 'buy',\n DAILY_CHANGE = 'dailyChange',\n CHART = 'chart',\n SPREAD = 'spread',\n SENTIMENT = 'sentiment',\n LOW = 'low',\n HIGH = 'high',\n SYMBOL = 'symbol',\n TRADE_MODE = 'tradeMode',\n}\n"],"mappings":"AA8BA,WAAYA,cAAc,aAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
@@ -13,6 +13,7 @@ export interface DataRecord {
13
13
  chart?: number[];
14
14
  high?: number;
15
15
  low?: number;
16
+ tradeMode?: string;
16
17
  }
17
18
  export interface SentimentValue {
18
19
  shortPercent: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oanda/labs-widget-common",
3
- "version": "1.0.207",
3
+ "version": "1.0.208",
4
4
  "description": "Labs Widget Common",
5
5
  "main": "dist/main/index.js",
6
6
  "module": "dist/module/index.js",
@@ -21,5 +21,5 @@
21
21
  "tailwind-merge": "2.2.2",
22
22
  "usehooks-ts": "3.0.2"
23
23
  },
24
- "gitHead": "31dcda0050419adc006433a90226fc9f0441b551"
24
+ "gitHead": "5ac438aecc3ec1cc9e02e6c68e7cf3bf1e6eadd4"
25
25
  }
@@ -112,7 +112,7 @@ export const ColumnRenderer = ({
112
112
  isLoading={isLoading}
113
113
  loaderSize={LoaderSize.sm}
114
114
  >
115
- <span>{'Long Only'}</span>
115
+ <span>{record.tradeMode}</span>
116
116
  </TableCell>
117
117
  ),
118
118
  };
@@ -12,6 +12,7 @@ export const useVisibleLiveDataRecord = (
12
12
  displayName: record.displayName,
13
13
  instrument: record.instrument,
14
14
  sentiment: record.sentiment,
15
+ tradeMode: record.tradeMode,
15
16
  });
16
17
 
17
18
  const [error, setError] = useState<LiveRatesErrorMessage | null>(null);
@@ -29,6 +30,7 @@ export const useVisibleLiveDataRecord = (
29
30
  displayName: record.displayName,
30
31
  instrument: record.instrument,
31
32
  sentiment: record.sentiment,
33
+ tradeMode: record.tradeMode,
32
34
  buy: update?.ask,
33
35
  sell: update?.bid,
34
36
  buyPriceMovement: update?.askPriceMovement,
@@ -14,6 +14,7 @@ export interface DataRecord {
14
14
  chart?: number[];
15
15
  high?: number;
16
16
  low?: number;
17
+ tradeMode?: string;
17
18
  }
18
19
 
19
20
  export interface SentimentValue {