@oanda/labs-sentiment-widget 1.0.175 → 1.0.176
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 +692 -0
- package/dist/main/SentimentWidget/Tool.js +1 -2
- package/dist/main/SentimentWidget/Tool.js.map +1 -1
- package/dist/main/SentimentWidget/Widget.js +2 -3
- package/dist/main/SentimentWidget/Widget.js.map +1 -1
- package/dist/main/gql/getInstrumentSentiment.js +13 -3
- package/dist/main/gql/getInstrumentSentiment.js.map +1 -1
- package/dist/main/gql/getSentimentList.js +13 -3
- package/dist/main/gql/getSentimentList.js.map +1 -1
- package/dist/main/gql/types/fragment-masking.js +2 -3
- package/dist/main/gql/types/fragment-masking.js.map +1 -1
- package/dist/main/gql/types/gql.js +1 -2
- package/dist/main/gql/types/gql.js.map +1 -1
- package/dist/module/SentimentWidget/Tool.js +1 -2
- package/dist/module/SentimentWidget/Tool.js.map +1 -1
- package/dist/module/SentimentWidget/Widget.js +2 -3
- package/dist/module/SentimentWidget/Widget.js.map +1 -1
- package/dist/module/gql/getInstrumentSentiment.js +13 -3
- package/dist/module/gql/getInstrumentSentiment.js.map +1 -1
- package/dist/module/gql/getSentimentList.js +13 -3
- package/dist/module/gql/getSentimentList.js.map +1 -1
- package/dist/module/gql/types/fragment-masking.js +2 -3
- package/dist/module/gql/types/fragment-masking.js.map +1 -1
- package/dist/module/gql/types/gql.js +1 -2
- package/dist/module/gql/types/gql.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,698 @@
|
|
|
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.176 (2025-01-10)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## 1.0.175 (2025-01-08)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## 1.0.174 (2024-12-16)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## 1.0.173 (2024-12-11)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## 1.0.172 (2024-11-29)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
## 1.0.171 (2024-11-28)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## 1.0.170 (2024-11-28)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
## 1.0.169 (2024-11-20)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## 1.0.168 (2024-11-19)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## 1.0.167 (2024-10-14)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
## 1.0.166 (2024-10-07)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
## 1.0.165 (2024-10-03)
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
## 1.0.164 (2024-09-26)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
## 1.0.163 (2024-09-18)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
## 1.0.162 (2024-09-12)
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
## 1.0.161 (2024-09-11)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
## 1.0.160 (2024-09-10)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
## 1.0.159 (2024-09-09)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
## 1.0.158 (2024-09-04)
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
## 1.0.157 (2024-09-04)
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
## 1.0.156 (2024-09-02)
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
## 1.0.155 (2024-08-29)
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
## 1.0.154 (2024-08-29)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
## 1.0.153 (2024-08-23)
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
## 1.0.152 (2024-08-23)
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
## 1.0.151 (2024-08-20)
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
## 1.0.150 (2024-08-19)
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
## 1.0.149 (2024-08-07)
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
## 1.0.148 (2024-08-01)
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
## 1.0.147 (2024-08-01)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
## 1.0.146 (2024-07-26)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
## 1.0.145 (2024-07-25)
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
## 1.0.144 (2024-07-22)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
## 1.0.143 (2024-07-19)
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
## 1.0.142 (2024-07-16)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
## 1.0.141 (2024-07-16)
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
## 1.0.140 (2024-07-12)
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
## 1.0.139 (2024-07-12)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
## 1.0.138 (2024-07-10)
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
## 1.0.137 (2024-07-05)
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
## 1.0.136 (2024-07-03)
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
## 1.0.135 (2024-07-03)
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
## 1.0.134 (2024-07-03)
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
## 1.0.133 (2024-06-28)
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
## 1.0.132 (2024-06-27)
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
## 1.0.131 (2024-06-27)
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
## 1.0.130 (2024-06-26)
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
## 1.0.129 (2024-06-17)
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
## 1.0.128 (2024-06-17)
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
## 1.0.127 (2024-06-10)
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
## 1.0.126 (2024-05-29)
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
## 1.0.125 (2024-05-29)
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
## 1.0.124 (2024-05-29)
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
## 1.0.123 (2024-05-28)
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
## 1.0.122 (2024-05-27)
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
## 1.0.121 (2024-05-27)
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
## 1.0.120 (2024-05-24)
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
## 1.0.119 (2024-05-17)
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
## 1.0.118 (2024-05-09)
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
## 1.0.117 (2024-05-07)
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
## 1.0.116 (2024-04-23)
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
## 1.0.115 (2024-04-22)
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
## 1.0.114 (2024-04-19)
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
## 1.0.113 (2024-04-19)
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
## 1.0.112 (2024-04-15)
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
## 1.0.111 (2024-04-11)
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
## 1.0.110 (2024-04-05)
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
## 1.0.109 (2024-04-05)
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
## 1.0.108 (2024-04-04)
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
## 1.0.107 (2024-04-03)
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
## 1.0.106 (2024-03-29)
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
## 1.0.105 (2024-03-28)
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
## 1.0.104 (2024-03-21)
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
|
|
298
|
+
## 1.0.103 (2024-03-20)
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
## 1.0.102 (2024-03-20)
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
## 1.0.101 (2024-03-13)
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
## 1.0.100 (2024-03-12)
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
## 1.0.99 (2024-03-11)
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
## 1.0.98 (2024-03-07)
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
## 1.0.97 (2024-03-06)
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
## 1.0.96 (2024-03-06)
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
## 1.0.95 (2024-03-04)
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
## 1.0.94 (2024-02-29)
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
## 1.0.93 (2024-02-28)
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
## 1.0.92 (2024-02-28)
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
## 1.0.91 (2024-02-23)
|
|
347
|
+
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
## 1.0.90 (2024-02-23)
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
## 1.0.89 (2024-02-21)
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
## 1.0.88 (2024-02-21)
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
## 1.0.87 (2024-02-20)
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
## 1.0.86 (2024-02-20)
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
## 1.0.85 (2024-02-13)
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
## 1.0.84 (2024-02-13)
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
## 1.0.83 (2024-02-09)
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
|
|
382
|
+
## 1.0.82 (2024-02-05)
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
## 1.0.81 (2024-02-05)
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
## 1.0.80 (2024-02-05)
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
|
|
394
|
+
## 1.0.79 (2024-02-05)
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
## 1.0.78 (2024-01-30)
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
|
|
402
|
+
## 1.0.77 (2024-01-25)
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
## 1.0.76 (2024-01-25)
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
## 1.0.75 (2024-01-22)
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
## 1.0.74 (2024-01-22)
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
## 1.0.73 (2024-01-22)
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
## 1.0.72 (2024-01-19)
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
## 1.0.71 (2024-01-18)
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
## 1.0.70 (2024-01-17)
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
## 1.0.69 (2024-01-17)
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
|
|
438
|
+
## 1.0.68 (2024-01-15)
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
## 1.0.67 (2024-01-15)
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
## 1.0.66 (2024-01-12)
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
## 1.0.65 (2024-01-11)
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
## 1.0.64 (2024-01-11)
|
|
455
|
+
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
## 1.0.63 (2024-01-11)
|
|
459
|
+
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
## 1.0.62 (2024-01-10)
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
|
|
466
|
+
## 1.0.61 (2024-01-09)
|
|
467
|
+
|
|
468
|
+
|
|
469
|
+
|
|
470
|
+
## 1.0.60 (2024-01-05)
|
|
471
|
+
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
## 1.0.59 (2023-12-27)
|
|
475
|
+
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
## 1.0.58 (2023-12-22)
|
|
479
|
+
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
## 1.0.57 (2023-12-22)
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
|
|
486
|
+
## 1.0.56 (2023-12-21)
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
|
|
490
|
+
## 1.0.55 (2023-12-19)
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
|
|
494
|
+
## 1.0.54 (2023-12-15)
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
## 1.0.53 (2023-12-13)
|
|
499
|
+
|
|
500
|
+
|
|
501
|
+
|
|
502
|
+
## 1.0.52 (2023-12-13)
|
|
503
|
+
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
## 1.0.51 (2023-12-07)
|
|
507
|
+
|
|
508
|
+
|
|
509
|
+
|
|
510
|
+
## 1.0.50 (2023-12-04)
|
|
511
|
+
|
|
512
|
+
|
|
513
|
+
|
|
514
|
+
## 1.0.49 (2023-12-01)
|
|
515
|
+
|
|
516
|
+
|
|
517
|
+
|
|
518
|
+
## 1.0.48 (2023-12-01)
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
|
|
522
|
+
## 1.0.47 (2023-11-29)
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
## 1.0.46 (2023-11-28)
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
## 1.0.45 (2023-11-23)
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
|
|
534
|
+
## 1.0.44 (2023-11-22)
|
|
535
|
+
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
## 1.0.43 (2023-11-15)
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
## 1.0.42 (2023-11-10)
|
|
543
|
+
|
|
544
|
+
|
|
545
|
+
|
|
546
|
+
## 1.0.41 (2023-11-03)
|
|
547
|
+
|
|
548
|
+
|
|
549
|
+
|
|
550
|
+
## 1.0.40 (2023-11-02)
|
|
551
|
+
|
|
552
|
+
|
|
553
|
+
|
|
554
|
+
## 1.0.39 (2023-11-02)
|
|
555
|
+
|
|
556
|
+
|
|
557
|
+
|
|
558
|
+
## 1.0.38 (2023-10-26)
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
|
|
562
|
+
## 1.0.37 (2023-10-26)
|
|
563
|
+
|
|
564
|
+
|
|
565
|
+
|
|
566
|
+
## 1.0.36 (2023-10-25)
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
|
|
570
|
+
## 1.0.35 (2023-10-24)
|
|
571
|
+
|
|
572
|
+
|
|
573
|
+
|
|
574
|
+
## 1.0.34 (2023-10-23)
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
|
|
578
|
+
## 1.0.33 (2023-10-23)
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
|
|
582
|
+
## 1.0.32 (2023-10-23)
|
|
583
|
+
|
|
584
|
+
|
|
585
|
+
|
|
586
|
+
## 1.0.31 (2023-10-20)
|
|
587
|
+
|
|
588
|
+
|
|
589
|
+
|
|
590
|
+
## 1.0.30 (2023-10-19)
|
|
591
|
+
|
|
592
|
+
|
|
593
|
+
|
|
594
|
+
## 1.0.29 (2023-10-19)
|
|
595
|
+
|
|
596
|
+
|
|
597
|
+
|
|
598
|
+
## 1.0.28 (2023-10-19)
|
|
599
|
+
|
|
600
|
+
|
|
601
|
+
|
|
602
|
+
## 1.0.27 (2023-10-18)
|
|
603
|
+
|
|
604
|
+
|
|
605
|
+
|
|
606
|
+
## 1.0.26 (2023-10-18)
|
|
607
|
+
|
|
608
|
+
|
|
609
|
+
|
|
610
|
+
## 1.0.25 (2023-10-17)
|
|
611
|
+
|
|
612
|
+
|
|
613
|
+
|
|
614
|
+
## 1.0.24 (2023-10-13)
|
|
615
|
+
|
|
616
|
+
|
|
617
|
+
|
|
618
|
+
## 1.0.23 (2023-10-13)
|
|
619
|
+
|
|
620
|
+
|
|
621
|
+
|
|
622
|
+
## 1.0.22 (2023-10-11)
|
|
623
|
+
|
|
624
|
+
|
|
625
|
+
|
|
626
|
+
## 1.0.21 (2023-10-10)
|
|
627
|
+
|
|
628
|
+
|
|
629
|
+
|
|
630
|
+
## 1.0.20 (2023-10-06)
|
|
631
|
+
|
|
632
|
+
|
|
633
|
+
|
|
634
|
+
## 1.0.19 (2023-10-06)
|
|
635
|
+
|
|
636
|
+
|
|
637
|
+
|
|
638
|
+
## 1.0.18 (2023-10-05)
|
|
639
|
+
|
|
640
|
+
|
|
641
|
+
|
|
642
|
+
## 1.0.17 (2023-10-04)
|
|
643
|
+
|
|
644
|
+
|
|
645
|
+
|
|
646
|
+
## 1.0.16 (2023-10-04)
|
|
647
|
+
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
## 1.0.15 (2023-10-04)
|
|
651
|
+
|
|
652
|
+
|
|
653
|
+
|
|
654
|
+
## 1.0.14 (2023-10-03)
|
|
655
|
+
|
|
656
|
+
|
|
657
|
+
|
|
658
|
+
## 1.0.13 (2023-10-03)
|
|
659
|
+
|
|
660
|
+
|
|
661
|
+
|
|
662
|
+
## 1.0.12 (2023-10-03)
|
|
663
|
+
|
|
664
|
+
|
|
665
|
+
|
|
666
|
+
## 1.0.11 (2023-10-02)
|
|
667
|
+
|
|
668
|
+
|
|
669
|
+
|
|
670
|
+
## 1.0.10 (2023-09-29)
|
|
671
|
+
|
|
672
|
+
|
|
673
|
+
|
|
674
|
+
## 1.0.9 (2023-09-28)
|
|
675
|
+
|
|
676
|
+
|
|
677
|
+
|
|
678
|
+
## 1.0.8 (2023-09-27)
|
|
679
|
+
|
|
680
|
+
|
|
681
|
+
|
|
682
|
+
## 1.0.7 (2023-09-26)
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
## 1.0.6 (2023-09-21)
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
## 1.0.5 (2023-09-13)
|
|
691
|
+
|
|
692
|
+
**Note:** Version bump only for package @oanda/labs-sentiment-widget
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
|
|
696
|
+
|
|
697
|
+
|
|
6
698
|
## 1.0.175 (2025-01-08)
|
|
7
699
|
|
|
8
700
|
|
|
@@ -43,9 +43,8 @@ const Tool = _ref => {
|
|
|
43
43
|
const [updatedTimestamp, setUpdatedTimestamp] = (0, _react.useState)(_labsWidgetCommon.EMPTY_VALUE);
|
|
44
44
|
(0, _react.useEffect)(() => {
|
|
45
45
|
if (data) {
|
|
46
|
-
var _;
|
|
47
46
|
setSortedData((0, _utils.sortData)(data, sort));
|
|
48
|
-
setUpdatedTimestamp(
|
|
47
|
+
setUpdatedTimestamp(data.sentimentList[0]?.updatedAt);
|
|
49
48
|
}
|
|
50
49
|
}, [data, sort]);
|
|
51
50
|
return _react.default.createElement(_react.default.Fragment, null, size && _react.default.createElement("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tool.js","names":["_client","require","_labsWidgetCommon","_monoI18n","_classnames","_interopRequireDefault","_react","_interopRequireWildcard","_constant","_getSentimentList","_graphql","_SortSwitch","_utils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Tool","_ref","division","size","useLayoutProvider","isDesktop","Size","DESKTOP","sort","setSort","useState","Sort","Bullish","sortedData","setSortedData","Array","fill","loading","data","error","useQuery","getSentimentList","variables","fetchPolicy","lang","useLocale","updatedTimestamp","setUpdatedTimestamp","EMPTY_VALUE","useEffect","_","sortData","sentimentList","updatedAt","createElement","Fragment","className","length","ChartError","SortSwitch","disabled","selected","SelectedArrow","UP","DOWN","onClickButtonDown","Bearish","onClickButtonUp","classNames","map","item","index","key","name","Loader","LoaderSize","md","Truncate","maxWidth","text","displayName","tooltipId","INSTRUMENT_TOOLTIP_ID","Sentiment","height","SentimentHeight","isLoading","sentiment","Tooltip","id","LastUpdated","labelCallback","timestamp","exports"],"sources":["../../../src/SentimentWidget/Tool.tsx"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport {\n ChartError,\n EMPTY_VALUE,\n LastUpdated,\n Loader,\n LoaderSize,\n Sentiment,\n SentimentHeight,\n Size,\n Tooltip,\n Truncate,\n useLayoutProvider,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport classNames from 'classnames';\nimport React, { useEffect, useState } from 'react';\n\nimport { INSTRUMENT_TOOLTIP_ID } from '../constant';\nimport { getSentimentList } from '../gql/getSentimentList';\nimport type {\n GetSentimentListQuery,\n GetSentimentListQueryVariables,\n SentimentInstrument,\n} from '../gql/types/graphql';\nimport { Sort } from '../gql/types/graphql';\nimport { SelectedArrow, SortSwitch } from './components/SortSwitch';\nimport type { SentimentToolConfig } from './types';\nimport { sortData } from './utils';\n\nconst Tool = ({ division }: SentimentToolConfig) => {\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const [sort, setSort] = useState(Sort.Bullish);\n const [sortedData, setSortedData] = useState<\n Omit<SentimentInstrument, 'id'>[]\n >(new Array(20).fill({}));\n const { loading, data, error } = useQuery<\n GetSentimentListQuery,\n GetSentimentListQueryVariables\n >(getSentimentList, {\n variables: {\n division,\n },\n fetchPolicy: 'cache-and-network',\n });\n\n const { lang } = useLocale();\n const [updatedTimestamp, setUpdatedTimestamp] = useState(EMPTY_VALUE);\n\n useEffect(() => {\n if (data) {\n setSortedData(sortData(data, sort));\n setUpdatedTimestamp(data.sentimentList![0]?.updatedAt);\n }\n }, [data, sort]);\n\n return (\n <>\n {size && (\n <div\n className=\"lw-relative lw-bg-bg-primary lw-text-sm lw-tracking-normal lw-text-text-primary\"\n data-testid=\"sentiment-tool\"\n >\n {error || sortedData.length === 0 ? (\n <div className=\"lw-flex lw-h-[200px] lw-items-center lw-justify-center lw-border lw-border-solid lw-border-border-primary lw-p-2\">\n <ChartError />\n </div>\n ) : (\n <>\n <div className=\"lw-flex lw-justify-end lw-pb-5\">\n <SortSwitch\n disabled={loading}\n selected={\n sort === Sort.Bullish\n ? SelectedArrow.UP\n : SelectedArrow.DOWN\n }\n onClickButtonDown={() => setSort(Sort.Bearish)}\n onClickButtonUp={() => setSort(Sort.Bullish)}\n />\n </div>\n <div className=\"lw-flex lw-flex-col lw-border lw-border-solid lw-border-border-primary lw-p-2\">\n <div className=\"lw-mb-2 lw-flex lw-justify-between lw-font-semibold\">\n <span\n className={classNames('lw-uppercase', {\n 'lw-ml-40': isDesktop,\n 'lw-ml-[7.5rem]': !isDesktop,\n })}\n >\n {lang('net_short')}\n </span>\n <span\n className={classNames('lw-text-right lw-uppercase', {\n 'lw-mr-10': isDesktop,\n })}\n >\n {lang('net_long')}\n </span>\n </div>\n {sortedData.map((item, index) => (\n <div\n key={item.name || index}\n className=\"lw-flex lw-h-8 lw-w-full lw-items-center\"\n >\n <div className=\"lw-w-[120px] lw-shrink-0\">\n {loading ? (\n <Loader size={LoaderSize.md} />\n ) : (\n <Truncate\n className=\"lw-pr-2 lw-font-sans lw-text-sm lw-font-bold\"\n maxWidth={120}\n text={item.displayName || '\\u2014'}\n tooltipId={INSTRUMENT_TOOLTIP_ID}\n />\n )}\n </div>\n <Sentiment\n height={SentimentHeight.md}\n isLoading={loading}\n sentiment={item.sentiment}\n />\n </div>\n ))}\n </div>\n </>\n )}\n <Tooltip id={INSTRUMENT_TOOLTIP_ID} />\n {!error && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated labelCallback={lang} timestamp={updatedTimestamp} />\n </div>\n )}\n </div>\n )}\n </>\n );\n};\n\nexport { Tool };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Tool.js","names":["_client","require","_labsWidgetCommon","_monoI18n","_classnames","_interopRequireDefault","_react","_interopRequireWildcard","_constant","_getSentimentList","_graphql","_SortSwitch","_utils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Tool","_ref","division","size","useLayoutProvider","isDesktop","Size","DESKTOP","sort","setSort","useState","Sort","Bullish","sortedData","setSortedData","Array","fill","loading","data","error","useQuery","getSentimentList","variables","fetchPolicy","lang","useLocale","updatedTimestamp","setUpdatedTimestamp","EMPTY_VALUE","useEffect","sortData","sentimentList","updatedAt","createElement","Fragment","className","length","ChartError","SortSwitch","disabled","selected","SelectedArrow","UP","DOWN","onClickButtonDown","Bearish","onClickButtonUp","classNames","map","item","index","key","name","Loader","LoaderSize","md","Truncate","maxWidth","text","displayName","tooltipId","INSTRUMENT_TOOLTIP_ID","Sentiment","height","SentimentHeight","isLoading","sentiment","Tooltip","id","LastUpdated","labelCallback","timestamp","exports"],"sources":["../../../src/SentimentWidget/Tool.tsx"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport {\n ChartError,\n EMPTY_VALUE,\n LastUpdated,\n Loader,\n LoaderSize,\n Sentiment,\n SentimentHeight,\n Size,\n Tooltip,\n Truncate,\n useLayoutProvider,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport classNames from 'classnames';\nimport React, { useEffect, useState } from 'react';\n\nimport { INSTRUMENT_TOOLTIP_ID } from '../constant';\nimport { getSentimentList } from '../gql/getSentimentList';\nimport type {\n GetSentimentListQuery,\n GetSentimentListQueryVariables,\n SentimentInstrument,\n} from '../gql/types/graphql';\nimport { Sort } from '../gql/types/graphql';\nimport { SelectedArrow, SortSwitch } from './components/SortSwitch';\nimport type { SentimentToolConfig } from './types';\nimport { sortData } from './utils';\n\nconst Tool = ({ division }: SentimentToolConfig) => {\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const [sort, setSort] = useState(Sort.Bullish);\n const [sortedData, setSortedData] = useState<\n Omit<SentimentInstrument, 'id'>[]\n >(new Array(20).fill({}));\n const { loading, data, error } = useQuery<\n GetSentimentListQuery,\n GetSentimentListQueryVariables\n >(getSentimentList, {\n variables: {\n division,\n },\n fetchPolicy: 'cache-and-network',\n });\n\n const { lang } = useLocale();\n const [updatedTimestamp, setUpdatedTimestamp] = useState(EMPTY_VALUE);\n\n useEffect(() => {\n if (data) {\n setSortedData(sortData(data, sort));\n setUpdatedTimestamp(data.sentimentList![0]?.updatedAt);\n }\n }, [data, sort]);\n\n return (\n <>\n {size && (\n <div\n className=\"lw-relative lw-bg-bg-primary lw-text-sm lw-tracking-normal lw-text-text-primary\"\n data-testid=\"sentiment-tool\"\n >\n {error || sortedData.length === 0 ? (\n <div className=\"lw-flex lw-h-[200px] lw-items-center lw-justify-center lw-border lw-border-solid lw-border-border-primary lw-p-2\">\n <ChartError />\n </div>\n ) : (\n <>\n <div className=\"lw-flex lw-justify-end lw-pb-5\">\n <SortSwitch\n disabled={loading}\n selected={\n sort === Sort.Bullish\n ? SelectedArrow.UP\n : SelectedArrow.DOWN\n }\n onClickButtonDown={() => setSort(Sort.Bearish)}\n onClickButtonUp={() => setSort(Sort.Bullish)}\n />\n </div>\n <div className=\"lw-flex lw-flex-col lw-border lw-border-solid lw-border-border-primary lw-p-2\">\n <div className=\"lw-mb-2 lw-flex lw-justify-between lw-font-semibold\">\n <span\n className={classNames('lw-uppercase', {\n 'lw-ml-40': isDesktop,\n 'lw-ml-[7.5rem]': !isDesktop,\n })}\n >\n {lang('net_short')}\n </span>\n <span\n className={classNames('lw-text-right lw-uppercase', {\n 'lw-mr-10': isDesktop,\n })}\n >\n {lang('net_long')}\n </span>\n </div>\n {sortedData.map((item, index) => (\n <div\n key={item.name || index}\n className=\"lw-flex lw-h-8 lw-w-full lw-items-center\"\n >\n <div className=\"lw-w-[120px] lw-shrink-0\">\n {loading ? (\n <Loader size={LoaderSize.md} />\n ) : (\n <Truncate\n className=\"lw-pr-2 lw-font-sans lw-text-sm lw-font-bold\"\n maxWidth={120}\n text={item.displayName || '\\u2014'}\n tooltipId={INSTRUMENT_TOOLTIP_ID}\n />\n )}\n </div>\n <Sentiment\n height={SentimentHeight.md}\n isLoading={loading}\n sentiment={item.sentiment}\n />\n </div>\n ))}\n </div>\n </>\n )}\n <Tooltip id={INSTRUMENT_TOOLTIP_ID} />\n {!error && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated labelCallback={lang} timestamp={updatedTimestamp} />\n </div>\n )}\n </div>\n )}\n </>\n );\n};\n\nexport { Tool };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AAaA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAC,uBAAA,CAAAN,OAAA;AAEA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,iBAAA,GAAAR,OAAA;AAMA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAV,OAAA;AAEA,IAAAW,MAAA,GAAAX,OAAA;AAAmC,SAAAY,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAjB,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAI,UAAA,GAAAJ,CAAA,KAAAK,OAAA,EAAAL,CAAA;AAEnC,MAAMmB,IAAI,GAAGC,IAAA,IAAuC;EAAA,IAAtC;IAAEC;EAA8B,CAAC,GAAAD,IAAA;EAC7C,MAAM;IAAEE;EAAK,CAAC,GAAG,IAAAC,mCAAiB,EAAC,CAAC;EACpC,MAAMC,SAAS,GAAGF,IAAI,KAAKG,sBAAI,CAACC,OAAO;EACvC,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAACC,aAAI,CAACC,OAAO,CAAC;EAC9C,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAJ,eAAQ,EAE1C,IAAIK,KAAK,CAAC,EAAE,CAAC,CAACC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;EACzB,MAAM;IAAEC,OAAO;IAAEC,IAAI;IAAEC;EAAM,CAAC,GAAG,IAAAC,gBAAQ,EAGvCC,kCAAgB,EAAE;IAClBC,SAAS,EAAE;MACTpB;IACF,CAAC;IACDqB,WAAW,EAAE;EACf,CAAC,CAAC;EAEF,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,mBAAS,EAAC,CAAC;EAC5B,MAAM,CAACC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG,IAAAjB,eAAQ,EAACkB,6BAAW,CAAC;EAErE,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIX,IAAI,EAAE;MACRJ,aAAa,CAAC,IAAAgB,eAAQ,EAACZ,IAAI,EAAEV,IAAI,CAAC,CAAC;MACnCmB,mBAAmB,CAACT,IAAI,CAACa,aAAa,CAAE,CAAC,CAAC,EAAEC,SAAS,CAAC;IACxD;EACF,CAAC,EAAE,CAACd,IAAI,EAAEV,IAAI,CAAC,CAAC;EAEhB,OACEnC,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAA5D,MAAA,CAAAa,OAAA,CAAAgD,QAAA,QACG/B,IAAI,IACH9B,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IACEE,SAAS,EAAC,iFAAiF;IAC3F,eAAY;EAAgB,GAE3BhB,KAAK,IAAIN,UAAU,CAACuB,MAAM,KAAK,CAAC,GAC/B/D,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IAAKE,SAAS,EAAC;EAAkH,GAC/H9D,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAChE,iBAAA,CAAAoE,UAAU,MAAE,CACV,CAAC,GAENhE,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAA5D,MAAA,CAAAa,OAAA,CAAAgD,QAAA,QACE7D,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IAAKE,SAAS,EAAC;EAAgC,GAC7C9D,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAACvD,WAAA,CAAA4D,UAAU;IACTC,QAAQ,EAAEtB,OAAQ;IAClBuB,QAAQ,EACNhC,IAAI,KAAKG,aAAI,CAACC,OAAO,GACjB6B,yBAAa,CAACC,EAAE,GAChBD,yBAAa,CAACE,IACnB;IACDC,iBAAiB,EAAEA,CAAA,KAAMnC,OAAO,CAACE,aAAI,CAACkC,OAAO,CAAE;IAC/CC,eAAe,EAAEA,CAAA,KAAMrC,OAAO,CAACE,aAAI,CAACC,OAAO;EAAE,CAC9C,CACE,CAAC,EACNvC,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IAAKE,SAAS,EAAC;EAA+E,GAC5F9D,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IAAKE,SAAS,EAAC;EAAqD,GAClE9D,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IACEE,SAAS,EAAE,IAAAY,mBAAU,EAAC,cAAc,EAAE;MACpC,UAAU,EAAE1C,SAAS;MACrB,gBAAgB,EAAE,CAACA;IACrB,CAAC;EAAE,GAEFmB,IAAI,CAAC,WAAW,CACb,CAAC,EACPnD,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IACEE,SAAS,EAAE,IAAAY,mBAAU,EAAC,4BAA4B,EAAE;MAClD,UAAU,EAAE1C;IACd,CAAC;EAAE,GAEFmB,IAAI,CAAC,UAAU,CACZ,CACH,CAAC,EACLX,UAAU,CAACmC,GAAG,CAAC,CAACC,IAAI,EAAEC,KAAK,KAC1B7E,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IACEkB,GAAG,EAAEF,IAAI,CAACG,IAAI,IAAIF,KAAM;IACxBf,SAAS,EAAC;EAA0C,GAEpD9D,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IAAKE,SAAS,EAAC;EAA0B,GACtClB,OAAO,GACN5C,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAChE,iBAAA,CAAAoF,MAAM;IAAClD,IAAI,EAAEmD,4BAAU,CAACC;EAAG,CAAE,CAAC,GAE/BlF,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAChE,iBAAA,CAAAuF,QAAQ;IACPrB,SAAS,EAAC,8CAA8C;IACxDsB,QAAQ,EAAE,GAAI;IACdC,IAAI,EAAET,IAAI,CAACU,WAAW,IAAI,QAAS;IACnCC,SAAS,EAAEC;EAAsB,CAClC,CAEA,CAAC,EACNxF,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAChE,iBAAA,CAAA6F,SAAS;IACRC,MAAM,EAAEC,iCAAe,CAACT,EAAG;IAC3BU,SAAS,EAAEhD,OAAQ;IACnBiD,SAAS,EAAEjB,IAAI,CAACiB;EAAU,CAC3B,CACE,CACN,CACE,CACL,CACH,EACD7F,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAChE,iBAAA,CAAAkG,OAAO;IAACC,EAAE,EAAEP;EAAsB,CAAE,CAAC,EACrC,CAAC1C,KAAK,IACL9C,MAAA,CAAAa,OAAA,CAAA+C,aAAA;IAAKE,SAAS,EAAC;EAAgB,GAC7B9D,MAAA,CAAAa,OAAA,CAAA+C,aAAA,CAAChE,iBAAA,CAAAoG,WAAW;IAACC,aAAa,EAAE9C,IAAK;IAAC+C,SAAS,EAAE7C;EAAiB,CAAE,CAC7D,CAEJ,CAEP,CAAC;AAEP,CAAC;AAAC8C,OAAA,CAAAxE,IAAA,GAAAA,IAAA","ignoreList":[]}
|
|
@@ -13,7 +13,6 @@ var _constant = require("../constant");
|
|
|
13
13
|
var _getInstrumentSentiment = require("../gql/getInstrumentSentiment");
|
|
14
14
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
15
|
const Widget = _ref => {
|
|
16
|
-
var _data$sentiment;
|
|
17
16
|
let {
|
|
18
17
|
instrument,
|
|
19
18
|
division,
|
|
@@ -41,8 +40,8 @@ const Widget = _ref => {
|
|
|
41
40
|
displayName,
|
|
42
41
|
sentiment,
|
|
43
42
|
updatedAt
|
|
44
|
-
} =
|
|
45
|
-
const isError = error ||
|
|
43
|
+
} = data?.sentiment?.[0] || {};
|
|
44
|
+
const isError = error || sentiment?.shortPercent === 0 && sentiment?.longPercent === 0 || sentiment?.shortPercent === undefined || sentiment?.longPercent === undefined;
|
|
46
45
|
return _react.default.createElement(_react.default.Fragment, null, size && _react.default.createElement(_react.default.Fragment, null, _react.default.createElement("div", {
|
|
47
46
|
className: "lw-border lw-border-solid lw-border-border-primary lw-bg-bg-primary lw-p-4 lw-text-sm lw-tracking-normal lw-text-text-primary",
|
|
48
47
|
"data-testid": "sentiment-widget"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Widget.js","names":["_client","require","_labsWidgetCommon","_monoI18n","_classnames","_interopRequireDefault","_react","_constant","_getInstrumentSentiment","e","__esModule","default","Widget","_ref","
|
|
1
|
+
{"version":3,"file":"Widget.js","names":["_client","require","_labsWidgetCommon","_monoI18n","_classnames","_interopRequireDefault","_react","_constant","_getInstrumentSentiment","e","__esModule","default","Widget","_ref","instrument","division","includeDescriptionLabels","loading","data","error","useQuery","getInstrumentSentiment","variables","name","fetchPolicy","size","useLayoutProvider","isDesktop","Size","DESKTOP","lang","useLocale","displayName","sentiment","updatedAt","isError","shortPercent","longPercent","undefined","createElement","Fragment","className","classNames","Loader","LoaderSize","md","Truncate","maxWidth","text","tooltipId","INSTRUMENT_TOOLTIP_ID","Sentiment","height","SentimentHeight","isLoading","withError","Error","LastUpdated","labelCallback","timestamp","exports"],"sources":["../../../src/SentimentWidget/Widget.tsx"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport {\n Error,\n LastUpdated,\n Loader,\n LoaderSize,\n Sentiment,\n SentimentHeight,\n Size,\n Truncate,\n useLayoutProvider,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport classNames from 'classnames';\nimport React from 'react';\n\nimport { INSTRUMENT_TOOLTIP_ID } from '../constant';\nimport { getInstrumentSentiment } from '../gql/getInstrumentSentiment';\nimport type {\n GetInstrumentSentimentQuery,\n GetInstrumentSentimentQueryVariables,\n} from '../gql/types/graphql';\nimport type { SentimentWidgetConfig } from './types';\n\nconst Widget = ({\n instrument,\n division,\n includeDescriptionLabels = false,\n}: SentimentWidgetConfig) => {\n const { loading, data, error } = useQuery<\n GetInstrumentSentimentQuery,\n GetInstrumentSentimentQueryVariables\n >(getInstrumentSentiment, {\n variables: {\n name: instrument,\n division,\n },\n fetchPolicy: 'cache-and-network',\n });\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const { lang } = useLocale();\n\n const { displayName, sentiment, updatedAt } = data?.sentiment?.[0] || {};\n\n const isError =\n error ||\n (sentiment?.shortPercent === 0 && sentiment?.longPercent === 0) ||\n sentiment?.shortPercent === undefined ||\n sentiment?.longPercent === undefined;\n\n return (\n <>\n {size && (\n <>\n <div\n className=\"lw-border lw-border-solid lw-border-border-primary lw-bg-bg-primary lw-p-4 lw-text-sm lw-tracking-normal lw-text-text-primary\"\n data-testid=\"sentiment-widget\"\n >\n {includeDescriptionLabels && !isError && (\n <div className=\"lw-mb-2 lw-flex lw-justify-between lw-font-semibold\">\n <span\n className={classNames('lw-uppercase', {\n 'lw-ml-40': isDesktop,\n 'lw-ml-[7.5rem]': !isDesktop,\n })}\n >\n {lang('net_short')}\n </span>\n <span\n className={classNames('lw-text-right lw-uppercase', {\n 'lw-mr-10': isDesktop,\n })}\n >\n {lang('net_long')}\n </span>\n </div>\n )}\n <div className=\"lw-flex lw-items-center lw-justify-between\">\n <div className=\"lw-w-[120px] lw-shrink-0\">\n {loading && <Loader size={LoaderSize.md} />}\n {!loading && !isError && (\n <Truncate\n className=\"lw-pr-2 lw-font-sans lw-text-sm lw-font-bold\"\n maxWidth={120}\n text={displayName || '\\u2014'}\n tooltipId={INSTRUMENT_TOOLTIP_ID}\n />\n )}\n </div>\n <Sentiment\n height={SentimentHeight.md}\n isLoading={loading}\n sentiment={sentiment}\n withError={false}\n />\n </div>\n\n {!loading && isError && <Error />}\n </div>\n {!isError && updatedAt && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated labelCallback={lang} timestamp={updatedAt} />\n </div>\n )}\n </>\n )}\n </>\n );\n};\n\nexport { Widget };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,7 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.getInstrumentSentiment = void 0;
|
|
7
7
|
var _client = require("@apollo/client");
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const getInstrumentSentiment = exports.getInstrumentSentiment = (0, _client.gql)`
|
|
9
|
+
query GetInstrumentSentiment($name: String!, $division: Division) {
|
|
10
|
+
sentiment(name: $name, division: $division) {
|
|
11
|
+
name
|
|
12
|
+
displayName
|
|
13
|
+
sentiment {
|
|
14
|
+
shortPercent
|
|
15
|
+
longPercent
|
|
16
|
+
}
|
|
17
|
+
updatedAt
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
11
21
|
//# sourceMappingURL=getInstrumentSentiment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getInstrumentSentiment.js","names":["_client","require","
|
|
1
|
+
{"version":3,"file":"getInstrumentSentiment.js","names":["_client","require","getInstrumentSentiment","exports","gql"],"sources":["../../../src/gql/getInstrumentSentiment.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nconst getInstrumentSentiment = gql`\n query GetInstrumentSentiment($name: String!, $division: Division) {\n sentiment(name: $name, division: $division) {\n name\n displayName\n sentiment {\n shortPercent\n longPercent\n }\n updatedAt\n }\n }\n`;\n\nexport { getInstrumentSentiment };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,MAAMC,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAG,IAAAE,WAAG;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC","ignoreList":[]}
|
|
@@ -5,7 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.getSentimentList = void 0;
|
|
7
7
|
var _client = require("@apollo/client");
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const getSentimentList = exports.getSentimentList = (0, _client.gql)`
|
|
9
|
+
query GetSentimentList($division: Division) {
|
|
10
|
+
sentimentList(division: $division) {
|
|
11
|
+
name
|
|
12
|
+
displayName
|
|
13
|
+
sentiment {
|
|
14
|
+
shortPercent
|
|
15
|
+
longPercent
|
|
16
|
+
}
|
|
17
|
+
updatedAt
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
11
21
|
//# sourceMappingURL=getSentimentList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSentimentList.js","names":["_client","require","
|
|
1
|
+
{"version":3,"file":"getSentimentList.js","names":["_client","require","getSentimentList","exports","gql"],"sources":["../../../src/gql/getSentimentList.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nconst getSentimentList = gql`\n query GetSentimentList($division: Division) {\n sentimentList(division: $division) {\n name\n displayName\n sentiment {\n shortPercent\n longPercent\n }\n updatedAt\n }\n }\n`;\n\nexport { getSentimentList };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,MAAMC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,IAAAE,WAAG;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC","ignoreList":[]}
|
|
@@ -13,11 +13,10 @@ function makeFragmentData(data, _fragment) {
|
|
|
13
13
|
return data;
|
|
14
14
|
}
|
|
15
15
|
function isFragmentReady(queryNode, fragmentNode, data) {
|
|
16
|
-
|
|
17
|
-
const deferredFields = (_meta__ = queryNode.__meta__) === null || _meta__ === void 0 ? void 0 : _meta__.deferredFields;
|
|
16
|
+
const deferredFields = queryNode.__meta__?.deferredFields;
|
|
18
17
|
if (!deferredFields) return true;
|
|
19
18
|
const fragDef = fragmentNode.definitions[0];
|
|
20
|
-
const fragName = fragDef
|
|
19
|
+
const fragName = fragDef?.name?.value;
|
|
21
20
|
const fields = fragName && deferredFields[fragName] || [];
|
|
22
21
|
return fields.length > 0 && fields.every(field => data && field in data);
|
|
23
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fragment-masking.js","names":["useFragment","_documentNode","fragmentType","makeFragmentData","data","_fragment","isFragmentReady","queryNode","fragmentNode","
|
|
1
|
+
{"version":3,"file":"fragment-masking.js","names":["useFragment","_documentNode","fragmentType","makeFragmentData","data","_fragment","isFragmentReady","queryNode","fragmentNode","deferredFields","__meta__","fragDef","definitions","fragName","name","value","fields","length","every","field"],"sources":["../../../../src/gql/types/fragment-masking.ts"],"sourcesContent":["import {\n ResultOf,\n DocumentTypeDecoration,\n TypedDocumentNode,\n} from '@graphql-typed-document-node/core';\nimport { FragmentDefinitionNode } from 'graphql';\nimport { Incremental } from './graphql';\n\nexport type FragmentType<\n TDocumentType extends DocumentTypeDecoration<any, any>,\n> =\n TDocumentType extends DocumentTypeDecoration<infer TType, any>\n ? [TType] extends [{ ' $fragmentName'?: infer TKey }]\n ? TKey extends string\n ? { ' $fragmentRefs'?: { [key in TKey]: TType } }\n : never\n : never\n : never;\n\n// return non-nullable if `fragmentType` is non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: FragmentType<DocumentTypeDecoration<TType, any>>\n): TType;\n// return nullable if `fragmentType` is nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | null\n | undefined\n): TType | null | undefined;\n// return array of non-nullable if `fragmentType` is array of non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n): ReadonlyArray<TType>;\n// return array of nullable if `fragmentType` is array of nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): ReadonlyArray<TType> | null | undefined;\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): TType | ReadonlyArray<TType> | null | undefined {\n return fragmentType as any;\n}\n\nexport function makeFragmentData<\n F extends DocumentTypeDecoration<any, any>,\n FT extends ResultOf<F>,\n>(data: FT, _fragment: F): FragmentType<F> {\n return data as FragmentType<F>;\n}\nexport function isFragmentReady<TQuery, TFrag>(\n queryNode: DocumentTypeDecoration<TQuery, any>,\n fragmentNode: TypedDocumentNode<TFrag>,\n data:\n | FragmentType<TypedDocumentNode<Incremental<TFrag>, any>>\n | null\n | undefined\n): data is FragmentType<typeof fragmentNode> {\n const deferredFields = (\n queryNode as {\n __meta__?: { deferredFields: Record<string, (keyof TFrag)[]> };\n }\n ).__meta__?.deferredFields;\n\n if (!deferredFields) return true;\n\n const fragDef = fragmentNode.definitions[0] as\n | FragmentDefinitionNode\n | undefined;\n const fragName = fragDef?.name?.value;\n\n const fields = (fragName && deferredFields[fragName]) || [];\n return fields.length > 0 && fields.every((field) => data && field in data);\n}\n"],"mappings":";;;;;;;;AA6CO,SAASA,WAAWA,CACzBC,aAAiD,EACjDC,YAIa,EACoC;EACjD,OAAOA,YAAY;AACrB;AAEO,SAASC,gBAAgBA,CAG9BC,IAAQ,EAAEC,SAAY,EAAmB;EACzC,OAAOD,IAAI;AACb;AACO,SAASE,eAAeA,CAC7BC,SAA8C,EAC9CC,YAAsC,EACtCJ,IAGa,EAC8B;EAC3C,MAAMK,cAAc,GAClBF,SAAS,CAGTG,QAAQ,EAAED,cAAc;EAE1B,IAAI,CAACA,cAAc,EAAE,OAAO,IAAI;EAEhC,MAAME,OAAO,GAAGH,YAAY,CAACI,WAAW,CAAC,CAAC,CAE7B;EACb,MAAMC,QAAQ,GAAGF,OAAO,EAAEG,IAAI,EAAEC,KAAK;EAErC,MAAMC,MAAM,GAAIH,QAAQ,IAAIJ,cAAc,CAACI,QAAQ,CAAC,IAAK,EAAE;EAC3D,OAAOG,MAAM,CAACC,MAAM,GAAG,CAAC,IAAID,MAAM,CAACE,KAAK,CAAEC,KAAK,IAAKf,IAAI,IAAIe,KAAK,IAAIf,IAAI,CAAC;AAC5E","ignoreList":[]}
|
|
@@ -12,7 +12,6 @@ const documents = {
|
|
|
12
12
|
'\n query GetSentimentList (\n $division: Division\n ) {\n sentimentList (\n division: $division\n ) {\n name\n displayName\n sentiment {\n shortPercent\n longPercent\n }\n updatedAt\n }\n }\n': types.GetSentimentListDocument
|
|
13
13
|
};
|
|
14
14
|
function graphql(source) {
|
|
15
|
-
|
|
16
|
-
return (_source = documents[source]) !== null && _source !== void 0 ? _source : {};
|
|
15
|
+
return documents[source] ?? {};
|
|
17
16
|
}
|
|
18
17
|
//# sourceMappingURL=gql.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gql.js","names":["types","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","documents","GetInstrumentSentimentDocument","GetSentimentListDocument","graphql","source"
|
|
1
|
+
{"version":3,"file":"gql.js","names":["types","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","documents","GetInstrumentSentimentDocument","GetSentimentListDocument","graphql","source"],"sources":["../../../../src/gql/types/gql.ts"],"sourcesContent":["/* eslint-disable */\nimport * as types from './graphql';\nimport { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\n\n/**\n * Map of all GraphQL operations in the project.\n *\n * This map has several performance disadvantages:\n * 1. It is not tree-shakeable, so it will include all operations in the project.\n * 2. It is not minifiable, so the string of a GraphQL query will be multiple times inside the bundle.\n * 3. It does not support dead code elimination, so it will add unused operations.\n *\n * Therefore it is highly recommended to use the babel or swc plugin for production.\n */\nconst documents = {\n '\\n query GetInstrumentSentiment(\\n $name: String!\\n $division: Division\\n ) {\\n sentiment(\\n name: $name\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n':\n types.GetInstrumentSentimentDocument,\n '\\n query GetSentimentList (\\n $division: Division\\n ) {\\n sentimentList (\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n':\n types.GetSentimentListDocument,\n};\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n *\n *\n * @example\n * ```ts\n * const query = graphql(`query GetUser($id: ID!) { user(id: $id) { name } }`);\n * ```\n *\n * The query argument is unknown!\n * Please regenerate the types.\n */\nexport function graphql(source: string): unknown;\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(\n source: '\\n query GetInstrumentSentiment(\\n $name: String!\\n $division: Division\\n ) {\\n sentiment(\\n name: $name\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'\n): (typeof documents)['\\n query GetInstrumentSentiment(\\n $name: String!\\n $division: Division\\n ) {\\n sentiment(\\n name: $name\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'];\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(\n source: '\\n query GetSentimentList (\\n $division: Division\\n ) {\\n sentimentList (\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'\n): (typeof documents)['\\n query GetSentimentList (\\n $division: Division\\n ) {\\n sentimentList (\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'];\n\nexport function graphql(source: string) {\n return (documents as any)[source] ?? {};\n}\n\nexport type DocumentType<TDocumentNode extends DocumentNode<any, any>> =\n TDocumentNode extends DocumentNode<infer TType, any> ? TType : never;\n"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAmC,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAanC,MAAMW,SAAS,GAAG;EAChB,mSAAmS,EACjSvB,KAAK,CAACwB,8BAA8B;EACtC,4PAA4P,EAC1PxB,KAAK,CAACyB;AACV,CAAC;AA6BM,SAASC,OAAOA,CAACC,MAAc,EAAE;EACtC,OAAQJ,SAAS,CAASI,MAAM,CAAC,IAAI,CAAC,CAAC;AACzC","ignoreList":[]}
|
|
@@ -34,9 +34,8 @@ const Tool = _ref => {
|
|
|
34
34
|
const [updatedTimestamp, setUpdatedTimestamp] = useState(EMPTY_VALUE);
|
|
35
35
|
useEffect(() => {
|
|
36
36
|
if (data) {
|
|
37
|
-
var _;
|
|
38
37
|
setSortedData(sortData(data, sort));
|
|
39
|
-
setUpdatedTimestamp(
|
|
38
|
+
setUpdatedTimestamp(data.sentimentList[0]?.updatedAt);
|
|
40
39
|
}
|
|
41
40
|
}, [data, sort]);
|
|
42
41
|
return React.createElement(React.Fragment, null, size && React.createElement("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tool.js","names":["useQuery","ChartError","EMPTY_VALUE","LastUpdated","Loader","LoaderSize","Sentiment","SentimentHeight","Size","Tooltip","Truncate","useLayoutProvider","useLocale","classNames","React","useEffect","useState","INSTRUMENT_TOOLTIP_ID","getSentimentList","Sort","SelectedArrow","SortSwitch","sortData","Tool","_ref","division","size","isDesktop","DESKTOP","sort","setSort","Bullish","sortedData","setSortedData","Array","fill","loading","data","error","variables","fetchPolicy","lang","updatedTimestamp","setUpdatedTimestamp","
|
|
1
|
+
{"version":3,"file":"Tool.js","names":["useQuery","ChartError","EMPTY_VALUE","LastUpdated","Loader","LoaderSize","Sentiment","SentimentHeight","Size","Tooltip","Truncate","useLayoutProvider","useLocale","classNames","React","useEffect","useState","INSTRUMENT_TOOLTIP_ID","getSentimentList","Sort","SelectedArrow","SortSwitch","sortData","Tool","_ref","division","size","isDesktop","DESKTOP","sort","setSort","Bullish","sortedData","setSortedData","Array","fill","loading","data","error","variables","fetchPolicy","lang","updatedTimestamp","setUpdatedTimestamp","sentimentList","updatedAt","createElement","Fragment","className","length","disabled","selected","UP","DOWN","onClickButtonDown","Bearish","onClickButtonUp","map","item","index","key","name","md","maxWidth","text","displayName","tooltipId","height","isLoading","sentiment","id","labelCallback","timestamp"],"sources":["../../../src/SentimentWidget/Tool.tsx"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport {\n ChartError,\n EMPTY_VALUE,\n LastUpdated,\n Loader,\n LoaderSize,\n Sentiment,\n SentimentHeight,\n Size,\n Tooltip,\n Truncate,\n useLayoutProvider,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport classNames from 'classnames';\nimport React, { useEffect, useState } from 'react';\n\nimport { INSTRUMENT_TOOLTIP_ID } from '../constant';\nimport { getSentimentList } from '../gql/getSentimentList';\nimport type {\n GetSentimentListQuery,\n GetSentimentListQueryVariables,\n SentimentInstrument,\n} from '../gql/types/graphql';\nimport { Sort } from '../gql/types/graphql';\nimport { SelectedArrow, SortSwitch } from './components/SortSwitch';\nimport type { SentimentToolConfig } from './types';\nimport { sortData } from './utils';\n\nconst Tool = ({ division }: SentimentToolConfig) => {\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const [sort, setSort] = useState(Sort.Bullish);\n const [sortedData, setSortedData] = useState<\n Omit<SentimentInstrument, 'id'>[]\n >(new Array(20).fill({}));\n const { loading, data, error } = useQuery<\n GetSentimentListQuery,\n GetSentimentListQueryVariables\n >(getSentimentList, {\n variables: {\n division,\n },\n fetchPolicy: 'cache-and-network',\n });\n\n const { lang } = useLocale();\n const [updatedTimestamp, setUpdatedTimestamp] = useState(EMPTY_VALUE);\n\n useEffect(() => {\n if (data) {\n setSortedData(sortData(data, sort));\n setUpdatedTimestamp(data.sentimentList![0]?.updatedAt);\n }\n }, [data, sort]);\n\n return (\n <>\n {size && (\n <div\n className=\"lw-relative lw-bg-bg-primary lw-text-sm lw-tracking-normal lw-text-text-primary\"\n data-testid=\"sentiment-tool\"\n >\n {error || sortedData.length === 0 ? (\n <div className=\"lw-flex lw-h-[200px] lw-items-center lw-justify-center lw-border lw-border-solid lw-border-border-primary lw-p-2\">\n <ChartError />\n </div>\n ) : (\n <>\n <div className=\"lw-flex lw-justify-end lw-pb-5\">\n <SortSwitch\n disabled={loading}\n selected={\n sort === Sort.Bullish\n ? SelectedArrow.UP\n : SelectedArrow.DOWN\n }\n onClickButtonDown={() => setSort(Sort.Bearish)}\n onClickButtonUp={() => setSort(Sort.Bullish)}\n />\n </div>\n <div className=\"lw-flex lw-flex-col lw-border lw-border-solid lw-border-border-primary lw-p-2\">\n <div className=\"lw-mb-2 lw-flex lw-justify-between lw-font-semibold\">\n <span\n className={classNames('lw-uppercase', {\n 'lw-ml-40': isDesktop,\n 'lw-ml-[7.5rem]': !isDesktop,\n })}\n >\n {lang('net_short')}\n </span>\n <span\n className={classNames('lw-text-right lw-uppercase', {\n 'lw-mr-10': isDesktop,\n })}\n >\n {lang('net_long')}\n </span>\n </div>\n {sortedData.map((item, index) => (\n <div\n key={item.name || index}\n className=\"lw-flex lw-h-8 lw-w-full lw-items-center\"\n >\n <div className=\"lw-w-[120px] lw-shrink-0\">\n {loading ? (\n <Loader size={LoaderSize.md} />\n ) : (\n <Truncate\n className=\"lw-pr-2 lw-font-sans lw-text-sm lw-font-bold\"\n maxWidth={120}\n text={item.displayName || '\\u2014'}\n tooltipId={INSTRUMENT_TOOLTIP_ID}\n />\n )}\n </div>\n <Sentiment\n height={SentimentHeight.md}\n isLoading={loading}\n sentiment={item.sentiment}\n />\n </div>\n ))}\n </div>\n </>\n )}\n <Tooltip id={INSTRUMENT_TOOLTIP_ID} />\n {!error && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated labelCallback={lang} timestamp={updatedTimestamp} />\n </div>\n )}\n </div>\n )}\n </>\n );\n};\n\nexport { Tool };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,6 @@ import React from 'react';
|
|
|
6
6
|
import { INSTRUMENT_TOOLTIP_ID } from '../constant';
|
|
7
7
|
import { getInstrumentSentiment } from '../gql/getInstrumentSentiment';
|
|
8
8
|
const Widget = _ref => {
|
|
9
|
-
var _data$sentiment;
|
|
10
9
|
let {
|
|
11
10
|
instrument,
|
|
12
11
|
division,
|
|
@@ -34,8 +33,8 @@ const Widget = _ref => {
|
|
|
34
33
|
displayName,
|
|
35
34
|
sentiment,
|
|
36
35
|
updatedAt
|
|
37
|
-
} =
|
|
38
|
-
const isError = error ||
|
|
36
|
+
} = data?.sentiment?.[0] || {};
|
|
37
|
+
const isError = error || sentiment?.shortPercent === 0 && sentiment?.longPercent === 0 || sentiment?.shortPercent === undefined || sentiment?.longPercent === undefined;
|
|
39
38
|
return React.createElement(React.Fragment, null, size && React.createElement(React.Fragment, null, React.createElement("div", {
|
|
40
39
|
className: "lw-border lw-border-solid lw-border-border-primary lw-bg-bg-primary lw-p-4 lw-text-sm lw-tracking-normal lw-text-text-primary",
|
|
41
40
|
"data-testid": "sentiment-widget"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Widget.js","names":["useQuery","Error","LastUpdated","Loader","LoaderSize","Sentiment","SentimentHeight","Size","Truncate","useLayoutProvider","useLocale","classNames","React","INSTRUMENT_TOOLTIP_ID","getInstrumentSentiment","Widget","_ref","
|
|
1
|
+
{"version":3,"file":"Widget.js","names":["useQuery","Error","LastUpdated","Loader","LoaderSize","Sentiment","SentimentHeight","Size","Truncate","useLayoutProvider","useLocale","classNames","React","INSTRUMENT_TOOLTIP_ID","getInstrumentSentiment","Widget","_ref","instrument","division","includeDescriptionLabels","loading","data","error","variables","name","fetchPolicy","size","isDesktop","DESKTOP","lang","displayName","sentiment","updatedAt","isError","shortPercent","longPercent","undefined","createElement","Fragment","className","md","maxWidth","text","tooltipId","height","isLoading","withError","labelCallback","timestamp"],"sources":["../../../src/SentimentWidget/Widget.tsx"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport {\n Error,\n LastUpdated,\n Loader,\n LoaderSize,\n Sentiment,\n SentimentHeight,\n Size,\n Truncate,\n useLayoutProvider,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport classNames from 'classnames';\nimport React from 'react';\n\nimport { INSTRUMENT_TOOLTIP_ID } from '../constant';\nimport { getInstrumentSentiment } from '../gql/getInstrumentSentiment';\nimport type {\n GetInstrumentSentimentQuery,\n GetInstrumentSentimentQueryVariables,\n} from '../gql/types/graphql';\nimport type { SentimentWidgetConfig } from './types';\n\nconst Widget = ({\n instrument,\n division,\n includeDescriptionLabels = false,\n}: SentimentWidgetConfig) => {\n const { loading, data, error } = useQuery<\n GetInstrumentSentimentQuery,\n GetInstrumentSentimentQueryVariables\n >(getInstrumentSentiment, {\n variables: {\n name: instrument,\n division,\n },\n fetchPolicy: 'cache-and-network',\n });\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const { lang } = useLocale();\n\n const { displayName, sentiment, updatedAt } = data?.sentiment?.[0] || {};\n\n const isError =\n error ||\n (sentiment?.shortPercent === 0 && sentiment?.longPercent === 0) ||\n sentiment?.shortPercent === undefined ||\n sentiment?.longPercent === undefined;\n\n return (\n <>\n {size && (\n <>\n <div\n className=\"lw-border lw-border-solid lw-border-border-primary lw-bg-bg-primary lw-p-4 lw-text-sm lw-tracking-normal lw-text-text-primary\"\n data-testid=\"sentiment-widget\"\n >\n {includeDescriptionLabels && !isError && (\n <div className=\"lw-mb-2 lw-flex lw-justify-between lw-font-semibold\">\n <span\n className={classNames('lw-uppercase', {\n 'lw-ml-40': isDesktop,\n 'lw-ml-[7.5rem]': !isDesktop,\n })}\n >\n {lang('net_short')}\n </span>\n <span\n className={classNames('lw-text-right lw-uppercase', {\n 'lw-mr-10': isDesktop,\n })}\n >\n {lang('net_long')}\n </span>\n </div>\n )}\n <div className=\"lw-flex lw-items-center lw-justify-between\">\n <div className=\"lw-w-[120px] lw-shrink-0\">\n {loading && <Loader size={LoaderSize.md} />}\n {!loading && !isError && (\n <Truncate\n className=\"lw-pr-2 lw-font-sans lw-text-sm lw-font-bold\"\n maxWidth={120}\n text={displayName || '\\u2014'}\n tooltipId={INSTRUMENT_TOOLTIP_ID}\n />\n )}\n </div>\n <Sentiment\n height={SentimentHeight.md}\n isLoading={loading}\n sentiment={sentiment}\n withError={false}\n />\n </div>\n\n {!loading && isError && <Error />}\n </div>\n {!isError && updatedAt && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated labelCallback={lang} timestamp={updatedAt} />\n </div>\n )}\n </>\n )}\n </>\n );\n};\n\nexport { Widget };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,16 @@
|
|
|
1
|
-
var _templateObject;
|
|
2
|
-
function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
|
|
3
1
|
import { gql } from '@apollo/client';
|
|
4
|
-
const getInstrumentSentiment = gql
|
|
2
|
+
const getInstrumentSentiment = gql`
|
|
3
|
+
query GetInstrumentSentiment($name: String!, $division: Division) {
|
|
4
|
+
sentiment(name: $name, division: $division) {
|
|
5
|
+
name
|
|
6
|
+
displayName
|
|
7
|
+
sentiment {
|
|
8
|
+
shortPercent
|
|
9
|
+
longPercent
|
|
10
|
+
}
|
|
11
|
+
updatedAt
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
`;
|
|
5
15
|
export { getInstrumentSentiment };
|
|
6
16
|
//# sourceMappingURL=getInstrumentSentiment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getInstrumentSentiment.js","names":["gql","getInstrumentSentiment"
|
|
1
|
+
{"version":3,"file":"getInstrumentSentiment.js","names":["gql","getInstrumentSentiment"],"sources":["../../../src/gql/getInstrumentSentiment.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nconst getInstrumentSentiment = gql`\n query GetInstrumentSentiment($name: String!, $division: Division) {\n sentiment(name: $name, division: $division) {\n name\n displayName\n sentiment {\n shortPercent\n longPercent\n }\n updatedAt\n }\n }\n`;\n\nexport { getInstrumentSentiment };\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AAEpC,MAAMC,sBAAsB,GAAGD,GAAG;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,SAASC,sBAAsB","ignoreList":[]}
|
|
@@ -1,6 +1,16 @@
|
|
|
1
|
-
var _templateObject;
|
|
2
|
-
function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
|
|
3
1
|
import { gql } from '@apollo/client';
|
|
4
|
-
const getSentimentList = gql
|
|
2
|
+
const getSentimentList = gql`
|
|
3
|
+
query GetSentimentList($division: Division) {
|
|
4
|
+
sentimentList(division: $division) {
|
|
5
|
+
name
|
|
6
|
+
displayName
|
|
7
|
+
sentiment {
|
|
8
|
+
shortPercent
|
|
9
|
+
longPercent
|
|
10
|
+
}
|
|
11
|
+
updatedAt
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
`;
|
|
5
15
|
export { getSentimentList };
|
|
6
16
|
//# sourceMappingURL=getSentimentList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSentimentList.js","names":["gql","getSentimentList"
|
|
1
|
+
{"version":3,"file":"getSentimentList.js","names":["gql","getSentimentList"],"sources":["../../../src/gql/getSentimentList.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nconst getSentimentList = gql`\n query GetSentimentList($division: Division) {\n sentimentList(division: $division) {\n name\n displayName\n sentiment {\n shortPercent\n longPercent\n }\n updatedAt\n }\n }\n`;\n\nexport { getSentimentList };\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AAEpC,MAAMC,gBAAgB,GAAGD,GAAG;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,SAASC,gBAAgB","ignoreList":[]}
|
|
@@ -5,11 +5,10 @@ export function makeFragmentData(data, _fragment) {
|
|
|
5
5
|
return data;
|
|
6
6
|
}
|
|
7
7
|
export function isFragmentReady(queryNode, fragmentNode, data) {
|
|
8
|
-
|
|
9
|
-
const deferredFields = (_meta__ = queryNode.__meta__) === null || _meta__ === void 0 ? void 0 : _meta__.deferredFields;
|
|
8
|
+
const deferredFields = queryNode.__meta__?.deferredFields;
|
|
10
9
|
if (!deferredFields) return true;
|
|
11
10
|
const fragDef = fragmentNode.definitions[0];
|
|
12
|
-
const fragName = fragDef
|
|
11
|
+
const fragName = fragDef?.name?.value;
|
|
13
12
|
const fields = fragName && deferredFields[fragName] || [];
|
|
14
13
|
return fields.length > 0 && fields.every(field => data && field in data);
|
|
15
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fragment-masking.js","names":["useFragment","_documentNode","fragmentType","makeFragmentData","data","_fragment","isFragmentReady","queryNode","fragmentNode","
|
|
1
|
+
{"version":3,"file":"fragment-masking.js","names":["useFragment","_documentNode","fragmentType","makeFragmentData","data","_fragment","isFragmentReady","queryNode","fragmentNode","deferredFields","__meta__","fragDef","definitions","fragName","name","value","fields","length","every","field"],"sources":["../../../../src/gql/types/fragment-masking.ts"],"sourcesContent":["import {\n ResultOf,\n DocumentTypeDecoration,\n TypedDocumentNode,\n} from '@graphql-typed-document-node/core';\nimport { FragmentDefinitionNode } from 'graphql';\nimport { Incremental } from './graphql';\n\nexport type FragmentType<\n TDocumentType extends DocumentTypeDecoration<any, any>,\n> =\n TDocumentType extends DocumentTypeDecoration<infer TType, any>\n ? [TType] extends [{ ' $fragmentName'?: infer TKey }]\n ? TKey extends string\n ? { ' $fragmentRefs'?: { [key in TKey]: TType } }\n : never\n : never\n : never;\n\n// return non-nullable if `fragmentType` is non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: FragmentType<DocumentTypeDecoration<TType, any>>\n): TType;\n// return nullable if `fragmentType` is nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | null\n | undefined\n): TType | null | undefined;\n// return array of non-nullable if `fragmentType` is array of non-nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n): ReadonlyArray<TType>;\n// return array of nullable if `fragmentType` is array of nullable\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): ReadonlyArray<TType> | null | undefined;\nexport function useFragment<TType>(\n _documentNode: DocumentTypeDecoration<TType, any>,\n fragmentType:\n | FragmentType<DocumentTypeDecoration<TType, any>>\n | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>\n | null\n | undefined\n): TType | ReadonlyArray<TType> | null | undefined {\n return fragmentType as any;\n}\n\nexport function makeFragmentData<\n F extends DocumentTypeDecoration<any, any>,\n FT extends ResultOf<F>,\n>(data: FT, _fragment: F): FragmentType<F> {\n return data as FragmentType<F>;\n}\nexport function isFragmentReady<TQuery, TFrag>(\n queryNode: DocumentTypeDecoration<TQuery, any>,\n fragmentNode: TypedDocumentNode<TFrag>,\n data:\n | FragmentType<TypedDocumentNode<Incremental<TFrag>, any>>\n | null\n | undefined\n): data is FragmentType<typeof fragmentNode> {\n const deferredFields = (\n queryNode as {\n __meta__?: { deferredFields: Record<string, (keyof TFrag)[]> };\n }\n ).__meta__?.deferredFields;\n\n if (!deferredFields) return true;\n\n const fragDef = fragmentNode.definitions[0] as\n | FragmentDefinitionNode\n | undefined;\n const fragName = fragDef?.name?.value;\n\n const fields = (fragName && deferredFields[fragName]) || [];\n return fields.length > 0 && fields.every((field) => data && field in data);\n}\n"],"mappings":"AA6CA,OAAO,SAASA,WAAWA,CACzBC,aAAiD,EACjDC,YAIa,EACoC;EACjD,OAAOA,YAAY;AACrB;AAEA,OAAO,SAASC,gBAAgBA,CAG9BC,IAAQ,EAAEC,SAAY,EAAmB;EACzC,OAAOD,IAAI;AACb;AACA,OAAO,SAASE,eAAeA,CAC7BC,SAA8C,EAC9CC,YAAsC,EACtCJ,IAGa,EAC8B;EAC3C,MAAMK,cAAc,GAClBF,SAAS,CAGTG,QAAQ,EAAED,cAAc;EAE1B,IAAI,CAACA,cAAc,EAAE,OAAO,IAAI;EAEhC,MAAME,OAAO,GAAGH,YAAY,CAACI,WAAW,CAAC,CAAC,CAE7B;EACb,MAAMC,QAAQ,GAAGF,OAAO,EAAEG,IAAI,EAAEC,KAAK;EAErC,MAAMC,MAAM,GAAIH,QAAQ,IAAIJ,cAAc,CAACI,QAAQ,CAAC,IAAK,EAAE;EAC3D,OAAOG,MAAM,CAACC,MAAM,GAAG,CAAC,IAAID,MAAM,CAACE,KAAK,CAAEC,KAAK,IAAKf,IAAI,IAAIe,KAAK,IAAIf,IAAI,CAAC;AAC5E","ignoreList":[]}
|
|
@@ -4,7 +4,6 @@ const documents = {
|
|
|
4
4
|
'\n query GetSentimentList (\n $division: Division\n ) {\n sentimentList (\n division: $division\n ) {\n name\n displayName\n sentiment {\n shortPercent\n longPercent\n }\n updatedAt\n }\n }\n': types.GetSentimentListDocument
|
|
5
5
|
};
|
|
6
6
|
export function graphql(source) {
|
|
7
|
-
|
|
8
|
-
return (_source = documents[source]) !== null && _source !== void 0 ? _source : {};
|
|
7
|
+
return documents[source] ?? {};
|
|
9
8
|
}
|
|
10
9
|
//# sourceMappingURL=gql.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gql.js","names":["types","documents","GetInstrumentSentimentDocument","GetSentimentListDocument","graphql","source"
|
|
1
|
+
{"version":3,"file":"gql.js","names":["types","documents","GetInstrumentSentimentDocument","GetSentimentListDocument","graphql","source"],"sources":["../../../../src/gql/types/gql.ts"],"sourcesContent":["/* eslint-disable */\nimport * as types from './graphql';\nimport { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\n\n/**\n * Map of all GraphQL operations in the project.\n *\n * This map has several performance disadvantages:\n * 1. It is not tree-shakeable, so it will include all operations in the project.\n * 2. It is not minifiable, so the string of a GraphQL query will be multiple times inside the bundle.\n * 3. It does not support dead code elimination, so it will add unused operations.\n *\n * Therefore it is highly recommended to use the babel or swc plugin for production.\n */\nconst documents = {\n '\\n query GetInstrumentSentiment(\\n $name: String!\\n $division: Division\\n ) {\\n sentiment(\\n name: $name\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n':\n types.GetInstrumentSentimentDocument,\n '\\n query GetSentimentList (\\n $division: Division\\n ) {\\n sentimentList (\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n':\n types.GetSentimentListDocument,\n};\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n *\n *\n * @example\n * ```ts\n * const query = graphql(`query GetUser($id: ID!) { user(id: $id) { name } }`);\n * ```\n *\n * The query argument is unknown!\n * Please regenerate the types.\n */\nexport function graphql(source: string): unknown;\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(\n source: '\\n query GetInstrumentSentiment(\\n $name: String!\\n $division: Division\\n ) {\\n sentiment(\\n name: $name\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'\n): (typeof documents)['\\n query GetInstrumentSentiment(\\n $name: String!\\n $division: Division\\n ) {\\n sentiment(\\n name: $name\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'];\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(\n source: '\\n query GetSentimentList (\\n $division: Division\\n ) {\\n sentimentList (\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'\n): (typeof documents)['\\n query GetSentimentList (\\n $division: Division\\n ) {\\n sentimentList (\\n division: $division\\n ) {\\n name\\n displayName\\n sentiment {\\n shortPercent\\n longPercent\\n }\\n updatedAt\\n }\\n }\\n'];\n\nexport function graphql(source: string) {\n return (documents as any)[source] ?? {};\n}\n\nexport type DocumentType<TDocumentNode extends DocumentNode<any, any>> =\n TDocumentNode extends DocumentNode<infer TType, any> ? TType : never;\n"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,WAAW;AAalC,MAAMC,SAAS,GAAG;EAChB,mSAAmS,EACjSD,KAAK,CAACE,8BAA8B;EACtC,4PAA4P,EAC1PF,KAAK,CAACG;AACV,CAAC;AA6BD,OAAO,SAASC,OAAOA,CAACC,MAAc,EAAE;EACtC,OAAQJ,SAAS,CAASI,MAAM,CAAC,IAAI,CAAC,CAAC;AACzC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oanda/labs-sentiment-widget",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.176",
|
|
4
4
|
"description": "Labs Sentiment Widget",
|
|
5
5
|
"main": "dist/main/index.js",
|
|
6
6
|
"module": "dist/module/index.js",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"author": "OANDA",
|
|
13
13
|
"license": "UNLICENSED",
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@oanda/labs-widget-common": "^1.0.
|
|
15
|
+
"@oanda/labs-widget-common": "^1.0.176",
|
|
16
16
|
"@oanda/mono-i18n": "10.0.1",
|
|
17
17
|
"graphql": "16.8.1"
|
|
18
18
|
},
|
|
@@ -20,5 +20,5 @@
|
|
|
20
20
|
"@graphql-codegen/cli": "5.0.0",
|
|
21
21
|
"@graphql-codegen/client-preset": "4.1.0"
|
|
22
22
|
},
|
|
23
|
-
"gitHead": "
|
|
23
|
+
"gitHead": "1f4de950884abacb03c4a930e3d2984f433ff6ec"
|
|
24
24
|
}
|