@oanda/labs-instruments-table-widget 1.0.41 → 1.0.43
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 +348 -0
- package/dist/main/InstrumentsTableWidget/InstrumentsTableWidget.js +5 -3
- package/dist/main/InstrumentsTableWidget/InstrumentsTableWidget.js.map +1 -1
- package/dist/main/InstrumentsTableWidget/Main.js +17 -14
- package/dist/main/InstrumentsTableWidget/Main.js.map +1 -1
- package/dist/main/InstrumentsTableWidget/components/Filters/Filters.js +1 -2
- package/dist/main/InstrumentsTableWidget/components/Filters/Filters.js.map +1 -1
- package/dist/main/InstrumentsTableWidget/config.js +9 -6
- package/dist/main/InstrumentsTableWidget/config.js.map +1 -1
- package/dist/main/InstrumentsTableWidget/render.js +1 -1
- package/dist/main/InstrumentsTableWidget/render.js.map +1 -1
- package/dist/main/InstrumentsTableWidget/types.js.map +1 -1
- package/dist/main/InstrumentsTableWidget/utils.js +6 -5
- package/dist/main/InstrumentsTableWidget/utils.js.map +1 -1
- package/dist/main/gql/resolveInstrumentsWithFilters.js +3 -32
- package/dist/main/gql/resolveInstrumentsWithFilters.js.map +1 -1
- package/dist/main/gql/types/fragment-masking.js +3 -2
- package/dist/main/gql/types/fragment-masking.js.map +1 -1
- package/dist/main/gql/types/gql.js +4 -4
- package/dist/main/gql/types/gql.js.map +1 -1
- package/dist/main/gql/types/graphql.js +39 -11
- package/dist/main/gql/types/graphql.js.map +1 -1
- package/dist/module/InstrumentsTableWidget/InstrumentsTableWidget.js +5 -3
- package/dist/module/InstrumentsTableWidget/InstrumentsTableWidget.js.map +1 -1
- package/dist/module/InstrumentsTableWidget/Main.js +16 -12
- package/dist/module/InstrumentsTableWidget/Main.js.map +1 -1
- package/dist/module/InstrumentsTableWidget/config.js +9 -6
- package/dist/module/InstrumentsTableWidget/config.js.map +1 -1
- package/dist/module/InstrumentsTableWidget/render.js +2 -2
- package/dist/module/InstrumentsTableWidget/render.js.map +1 -1
- package/dist/module/InstrumentsTableWidget/types.js.map +1 -1
- package/dist/module/InstrumentsTableWidget/utils.js +7 -6
- package/dist/module/InstrumentsTableWidget/utils.js.map +1 -1
- package/dist/module/gql/resolveInstrumentsWithFilters.js +3 -32
- package/dist/module/gql/resolveInstrumentsWithFilters.js.map +1 -1
- package/dist/module/gql/types/fragment-masking.js +3 -2
- package/dist/module/gql/types/fragment-masking.js.map +1 -1
- package/dist/module/gql/types/gql.js +3 -2
- package/dist/module/gql/types/gql.js.map +1 -1
- package/dist/module/gql/types/graphql.js +38 -10
- package/dist/module/gql/types/graphql.js.map +1 -1
- package/dist/types/InstrumentsTableWidget/types.d.ts +3 -3
- package/dist/types/InstrumentsTableWidget/utils.d.ts +3 -2
- package/dist/types/gql/types/gql.d.ts +3 -3
- package/dist/types/gql/types/graphql.d.ts +70 -9
- package/package.json +4 -4
- package/src/InstrumentsTableWidget/InstrumentsTableWidget.tsx +6 -2
- package/src/InstrumentsTableWidget/render.tsx +3 -3
- package/src/InstrumentsTableWidget/types.ts +3 -3
- package/src/InstrumentsTableWidget/utils.ts +8 -6
- package/src/gql/resolveInstrumentsWithFilters.ts +1 -1
- package/src/gql/types/gql.ts +3 -3
- package/src/gql/types/graphql.ts +83 -12
- package/test/Main.test.tsx +8 -12
- package/test/utils.test.ts +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,354 @@
|
|
|
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.43 (2025-09-29)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## 1.0.222 (2025-09-17)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## 1.0.221 (2025-09-11)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## 1.0.220 (2025-09-09)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## 1.0.219 (2025-09-02)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
## 1.0.218 (2025-09-01)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## 1.0.217 (2025-08-25)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
## 1.0.216 (2025-08-18)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## 1.0.215 (2025-08-18)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## 1.0.214 (2025-08-14)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
## 1.0.213 (2025-08-12)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
## 1.0.212 (2025-08-05)
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
## 1.0.211 (2025-08-05)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
## 1.0.210 (2025-07-31)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
## 1.0.209 (2025-07-31)
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
## 1.0.208 (2025-07-24)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
## 1.0.207 (2025-07-18)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
## 1.0.206 (2025-07-18)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
## 1.0.205 (2025-07-17)
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
## 1.0.204 (2025-07-09)
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
## 1.0.203 (2025-06-16)
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
## 1.0.202 (2025-06-04)
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
## 1.0.201 (2025-06-02)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
## 1.0.200 (2025-05-30)
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
## 1.0.199 (2025-05-29)
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
## 1.0.198 (2025-05-26)
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
## 1.0.197 (2025-05-23)
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
## 1.0.196 (2025-05-22)
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
## 1.0.195 (2025-05-21)
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
## 1.0.194 (2025-05-21)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
## 1.0.193 (2025-05-15)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
## 1.0.192 (2025-05-14)
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
## 1.0.191 (2025-04-30)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
## 1.0.190 (2025-04-28)
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
## 1.0.189 (2025-04-23)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
## 1.0.188 (2025-04-22)
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
## 1.0.187 (2025-04-18)
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
## 1.0.186 (2025-04-10)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
## 1.0.185 (2025-04-09)
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
## 1.0.184 (2025-04-08)
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
## 1.0.183 (2025-04-04)
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
## 1.0.182 (2025-03-21)
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
## 1.0.181 (2025-03-13)
|
|
175
|
+
|
|
176
|
+
**Note:** Version bump only for package @oanda/labs-instruments-table-widget
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
## 1.0.42 (2025-09-17)
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
## 1.0.221 (2025-09-11)
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
## 1.0.220 (2025-09-09)
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
## 1.0.219 (2025-09-02)
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
## 1.0.218 (2025-09-01)
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
## 1.0.217 (2025-08-25)
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
## 1.0.216 (2025-08-18)
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
## 1.0.215 (2025-08-18)
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
## 1.0.214 (2025-08-14)
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
## 1.0.213 (2025-08-12)
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
## 1.0.212 (2025-08-05)
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
## 1.0.211 (2025-08-05)
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
## 1.0.210 (2025-07-31)
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
## 1.0.209 (2025-07-31)
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
## 1.0.208 (2025-07-24)
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
## 1.0.207 (2025-07-18)
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
## 1.0.206 (2025-07-18)
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
## 1.0.205 (2025-07-17)
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
## 1.0.204 (2025-07-09)
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
## 1.0.203 (2025-06-16)
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
## 1.0.202 (2025-06-04)
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
## 1.0.201 (2025-06-02)
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
## 1.0.200 (2025-05-30)
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
## 1.0.199 (2025-05-29)
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
## 1.0.198 (2025-05-26)
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
## 1.0.197 (2025-05-23)
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
## 1.0.196 (2025-05-22)
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
## 1.0.195 (2025-05-21)
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
## 1.0.194 (2025-05-21)
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
|
|
298
|
+
## 1.0.193 (2025-05-15)
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
## 1.0.192 (2025-05-14)
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
## 1.0.191 (2025-04-30)
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
## 1.0.190 (2025-04-28)
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
## 1.0.189 (2025-04-23)
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
## 1.0.188 (2025-04-22)
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
## 1.0.187 (2025-04-18)
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
## 1.0.186 (2025-04-10)
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
## 1.0.185 (2025-04-09)
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
## 1.0.184 (2025-04-08)
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
## 1.0.183 (2025-04-04)
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
## 1.0.182 (2025-03-21)
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
## 1.0.181 (2025-03-13)
|
|
347
|
+
|
|
348
|
+
**Note:** Version bump only for package @oanda/labs-instruments-table-widget
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
|
|
6
354
|
## 1.0.41 (2025-09-11)
|
|
7
355
|
|
|
8
356
|
|
|
@@ -7,6 +7,7 @@ exports.InstrumentsTableWidget = void 0;
|
|
|
7
7
|
var _client = require("@apollo/client");
|
|
8
8
|
var _labsWidgetCommon = require("@oanda/labs-widget-common");
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _graphql = require("../gql/types/graphql");
|
|
10
11
|
var _translations = require("../translations");
|
|
11
12
|
var _Main = require("./Main");
|
|
12
13
|
var _types = require("./types");
|
|
@@ -34,12 +35,13 @@ const InstrumentsTableWidget = _ref => {
|
|
|
34
35
|
uri: graphqlUrl,
|
|
35
36
|
cache: new _client.InMemoryCache()
|
|
36
37
|
});
|
|
37
|
-
const
|
|
38
|
-
const
|
|
38
|
+
const liveRatesDataSource = dataSource === _graphql.DataSource.All ? undefined : dataSource;
|
|
39
|
+
const divisionCode = (0, _utils.getLiveRatesDivisionCode)(division, priceType, liveRatesDataSource || _graphql.DataSource.V20);
|
|
40
|
+
const liveRates = !columns || columns !== null && columns !== void 0 && columns.some(column => column === _labsWidgetCommon.DataRecordType.BUY || column === _labsWidgetCommon.DataRecordType.SELL || column === _labsWidgetCommon.DataRecordType.DAILY_CHANGE || column === _labsWidgetCommon.DataRecordType.SPREAD || column === _labsWidgetCommon.DataRecordType.HIGH || column === _labsWidgetCommon.DataRecordType.LOW) ? {
|
|
39
41
|
url: liveRatesUrl,
|
|
40
42
|
options: {
|
|
41
43
|
divisionCode,
|
|
42
|
-
dataSource
|
|
44
|
+
dataSource: liveRatesDataSource
|
|
43
45
|
}
|
|
44
46
|
} : undefined;
|
|
45
47
|
return _react.default.createElement(_labsWidgetCommon.WidgetProvider, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstrumentsTableWidget.js","names":["_client","require","_labsWidgetCommon","_react","_interopRequireDefault","_translations","_Main","_types","_utils","e","__esModule","default","InstrumentsTableWidget","_ref","division","instruments","columns","graphqlUrl","locale","theme","isParamError","logoLink","liveRatesUrl","assetClasses","isAssetClassFilterEnabled","isInstrumentSearchEnabled","recordsPerPage","dataSource","priceType","PriceType","Division","client","ApolloClient","uri","cache","InMemoryCache","divisionCode","getLiveRatesDivisionCode","liveRates","some","column","DataRecordType","BUY","SELL","DAILY_CHANGE","SPREAD","HIGH","LOW","url","options","
|
|
1
|
+
{"version":3,"file":"InstrumentsTableWidget.js","names":["_client","require","_labsWidgetCommon","_react","_interopRequireDefault","_graphql","_translations","_Main","_types","_utils","e","__esModule","default","InstrumentsTableWidget","_ref","division","instruments","columns","graphqlUrl","locale","theme","isParamError","logoLink","liveRatesUrl","assetClasses","isAssetClassFilterEnabled","isInstrumentSearchEnabled","recordsPerPage","dataSource","priceType","PriceType","Division","client","ApolloClient","uri","cache","InMemoryCache","liveRatesDataSource","DataSource","All","undefined","divisionCode","getLiveRatesDivisionCode","V20","liveRates","some","column","DataRecordType","BUY","SELL","DAILY_CHANGE","SPREAD","HIGH","LOW","url","options","createElement","WidgetProvider","translations","WidgetWrapper","linkArea","Main","isLiveRatesDisabled","exports"],"sources":["../../../src/InstrumentsTableWidget/InstrumentsTableWidget.tsx"],"sourcesContent":["import { ApolloClient, InMemoryCache } from '@apollo/client';\nimport {\n DataRecordType,\n WidgetProvider,\n WidgetWrapper,\n} from '@oanda/labs-widget-common';\nimport React from 'react';\n\nimport { DataSource } from '../gql/types/graphql';\nimport { translations } from '../translations';\nimport { Main } from './Main';\nimport { type InstrumentsTableConfig, PriceType } from './types';\nimport { getLiveRatesDivisionCode } from './utils';\n\nconst InstrumentsTableWidget = ({\n division,\n instruments,\n columns,\n graphqlUrl,\n locale,\n theme,\n isParamError,\n logoLink,\n liveRatesUrl,\n assetClasses,\n isAssetClassFilterEnabled,\n isInstrumentSearchEnabled,\n recordsPerPage,\n dataSource,\n priceType = PriceType.Division,\n}: InstrumentsTableConfig) => {\n const client = new ApolloClient({\n uri: graphqlUrl,\n cache: new InMemoryCache(),\n });\n\n const liveRatesDataSource =\n dataSource === DataSource.All ? undefined : dataSource;\n\n const divisionCode = getLiveRatesDivisionCode(\n division,\n priceType,\n liveRatesDataSource || DataSource.V20\n );\n\n const liveRates =\n !columns ||\n columns?.some(\n (column) =>\n column === DataRecordType.BUY ||\n column === DataRecordType.SELL ||\n column === DataRecordType.DAILY_CHANGE ||\n column === DataRecordType.SPREAD ||\n column === DataRecordType.HIGH ||\n column === DataRecordType.LOW\n )\n ? {\n url: liveRatesUrl,\n options: { divisionCode, dataSource: liveRatesDataSource },\n }\n : undefined;\n\n return (\n <WidgetProvider\n client={client}\n liveRates={liveRates}\n locale={locale}\n theme={theme}\n translations={translations}\n >\n <WidgetWrapper\n isParamError={isParamError}\n linkArea=\"logo\"\n logoLink={logoLink}\n >\n <Main\n assetClasses={assetClasses}\n columns={columns}\n dataSource={dataSource}\n division={division}\n instruments={instruments}\n isAssetClassFilterEnabled={isAssetClassFilterEnabled}\n isInstrumentSearchEnabled={isInstrumentSearchEnabled}\n isLiveRatesDisabled={liveRates === undefined}\n recordsPerPage={recordsPerPage}\n />\n </WidgetWrapper>\n </WidgetProvider>\n );\n};\n\nexport { InstrumentsTableWidget };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AAKA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AAAmD,SAAAG,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnD,MAAMG,sBAAsB,GAAGC,IAAA,IAgBD;EAAA,IAhBE;IAC9BC,QAAQ;IACRC,WAAW;IACXC,OAAO;IACPC,UAAU;IACVC,MAAM;IACNC,KAAK;IACLC,YAAY;IACZC,QAAQ;IACRC,YAAY;IACZC,YAAY;IACZC,yBAAyB;IACzBC,yBAAyB;IACzBC,cAAc;IACdC,UAAU;IACVC,SAAS,GAAGC,gBAAS,CAACC;EACA,CAAC,GAAAjB,IAAA;EACvB,MAAMkB,MAAM,GAAG,IAAIC,oBAAY,CAAC;IAC9BC,GAAG,EAAEhB,UAAU;IACfiB,KAAK,EAAE,IAAIC,qBAAa,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMC,mBAAmB,GACvBT,UAAU,KAAKU,mBAAU,CAACC,GAAG,GAAGC,SAAS,GAAGZ,UAAU;EAExD,MAAMa,YAAY,GAAG,IAAAC,+BAAwB,EAC3C3B,QAAQ,EACRc,SAAS,EACTQ,mBAAmB,IAAIC,mBAAU,CAACK,GACpC,CAAC;EAED,MAAMC,SAAS,GACb,CAAC3B,OAAO,IACRA,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE4B,IAAI,CACVC,MAAM,IACLA,MAAM,KAAKC,gCAAc,CAACC,GAAG,IAC7BF,MAAM,KAAKC,gCAAc,CAACE,IAAI,IAC9BH,MAAM,KAAKC,gCAAc,CAACG,YAAY,IACtCJ,MAAM,KAAKC,gCAAc,CAACI,MAAM,IAChCL,MAAM,KAAKC,gCAAc,CAACK,IAAI,IAC9BN,MAAM,KAAKC,gCAAc,CAACM,GAC9B,CAAC,GACG;IACEC,GAAG,EAAE/B,YAAY;IACjBgC,OAAO,EAAE;MAAEd,YAAY;MAAEb,UAAU,EAAES;IAAoB;EAC3D,CAAC,GACDG,SAAS;EAEf,OACErC,MAAA,CAAAS,OAAA,CAAA4C,aAAA,CAACtD,iBAAA,CAAAuD,cAAc;IACbzB,MAAM,EAAEA,MAAO;IACfY,SAAS,EAAEA,SAAU;IACrBzB,MAAM,EAAEA,MAAO;IACfC,KAAK,EAAEA,KAAM;IACbsC,YAAY,EAAEA;EAAa,GAE3BvD,MAAA,CAAAS,OAAA,CAAA4C,aAAA,CAACtD,iBAAA,CAAAyD,aAAa;IACZtC,YAAY,EAAEA,YAAa;IAC3BuC,QAAQ,EAAC,MAAM;IACftC,QAAQ,EAAEA;EAAS,GAEnBnB,MAAA,CAAAS,OAAA,CAAA4C,aAAA,CAACjD,KAAA,CAAAsD,IAAI;IACHrC,YAAY,EAAEA,YAAa;IAC3BP,OAAO,EAAEA,OAAQ;IACjBW,UAAU,EAAEA,UAAW;IACvBb,QAAQ,EAAEA,QAAS;IACnBC,WAAW,EAAEA,WAAY;IACzBS,yBAAyB,EAAEA,yBAA0B;IACrDC,yBAAyB,EAAEA,yBAA0B;IACrDoC,mBAAmB,EAAElB,SAAS,KAAKJ,SAAU;IAC7Cb,cAAc,EAAEA;EAAe,CAChC,CACY,CACD,CAAC;AAErB,CAAC;AAACoC,OAAA,CAAAlD,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -14,9 +14,14 @@ var _graphql = require("../gql/types/graphql");
|
|
|
14
14
|
var _components = require("./components");
|
|
15
15
|
var _config = require("./config");
|
|
16
16
|
var _constant = require("./constant");
|
|
17
|
-
function
|
|
18
|
-
function
|
|
17
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
18
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
19
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
20
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
21
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
22
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
19
23
|
const Main = _ref => {
|
|
24
|
+
var _headerConfig$instrum, _data$resolveInstrume2;
|
|
20
25
|
let {
|
|
21
26
|
instruments = [],
|
|
22
27
|
division,
|
|
@@ -66,14 +71,15 @@ const Main = _ref => {
|
|
|
66
71
|
errorPolicy: 'all'
|
|
67
72
|
});
|
|
68
73
|
(0, _react.useEffect)(() => {
|
|
74
|
+
var _data$resolveInstrume;
|
|
69
75
|
if (loading) {
|
|
70
76
|
setRecords(new Array(recordsPerPage).fill({}));
|
|
71
77
|
}
|
|
72
|
-
if (!loading && data
|
|
78
|
+
if (!loading && data !== null && data !== void 0 && (_data$resolveInstrume = data.resolveInstrumentsWithFilters) !== null && _data$resolveInstrume !== void 0 && _data$resolveInstrume.instruments) {
|
|
73
79
|
const newRecords = data.resolveInstrumentsWithFilters.instruments.map(record => ({
|
|
74
|
-
instrument: record
|
|
75
|
-
displayName: record
|
|
76
|
-
tradeMode: lang(_config.tradeModeLabels[record
|
|
80
|
+
instrument: (record === null || record === void 0 ? void 0 : record.name) || '',
|
|
81
|
+
displayName: (record === null || record === void 0 ? void 0 : record.displayName) || '',
|
|
82
|
+
tradeMode: lang(_config.tradeModeLabels[(record === null || record === void 0 ? void 0 : record.tradeMode) || ''])
|
|
77
83
|
}));
|
|
78
84
|
setRecords(newRecords);
|
|
79
85
|
setTotalRecords(data.resolveInstrumentsWithFilters.totalCount);
|
|
@@ -120,8 +126,7 @@ const Main = _ref => {
|
|
|
120
126
|
recordsPerPage: recordsPerPage,
|
|
121
127
|
totalRecords: totalRecords,
|
|
122
128
|
onPageChange: numb => {
|
|
123
|
-
setQueryVariables(prev => ({
|
|
124
|
-
...prev,
|
|
129
|
+
setQueryVariables(prev => _objectSpread(_objectSpread({}, prev), {}, {
|
|
125
130
|
offset: numb * recordsPerPage
|
|
126
131
|
}));
|
|
127
132
|
}
|
|
@@ -137,16 +142,14 @@ const Main = _ref => {
|
|
|
137
142
|
isAssetClassFilterEnabled: isAssetClassFilterEnabled,
|
|
138
143
|
isInstrumentSearchEnabled: isInstrumentSearchEnabled,
|
|
139
144
|
onAssetClassChange: assetClass => {
|
|
140
|
-
setQueryVariables(prev => ({
|
|
141
|
-
...prev,
|
|
145
|
+
setQueryVariables(prev => _objectSpread(_objectSpread({}, prev), {}, {
|
|
142
146
|
offset: 0,
|
|
143
147
|
searchPattern: '',
|
|
144
148
|
assetClass: assetClass[0] === 'ALL' ? assetClasses || [] : assetClass
|
|
145
149
|
}));
|
|
146
150
|
},
|
|
147
151
|
onSearchChange: searchPattern => {
|
|
148
|
-
setQueryVariables(prev => ({
|
|
149
|
-
...prev,
|
|
152
|
+
setQueryVariables(prev => _objectSpread(_objectSpread({}, prev), {}, {
|
|
150
153
|
offset: 0,
|
|
151
154
|
searchPattern
|
|
152
155
|
}));
|
|
@@ -156,7 +159,7 @@ const Main = _ref => {
|
|
|
156
159
|
count: totalRecords,
|
|
157
160
|
hasError: showError,
|
|
158
161
|
headerColumns: (0, _labsWidgetCommon.getHeaderConfig)(columns, headerConfig),
|
|
159
|
-
instrumentColumnWidth: headerConfig.instrument
|
|
162
|
+
instrumentColumnWidth: (_headerConfig$instrum = headerConfig.instrument) === null || _headerConfig$instrum === void 0 ? void 0 : _headerConfig$instrum.additionalStyles.minWidth,
|
|
160
163
|
isLoading: loading,
|
|
161
164
|
pageNumber: pageNumber,
|
|
162
165
|
records: records,
|
|
@@ -168,7 +171,7 @@ const Main = _ref => {
|
|
|
168
171
|
className: "lw-mt-2 lw-h-8"
|
|
169
172
|
}, _react.default.createElement(_labsWidgetCommon.LastUpdated, {
|
|
170
173
|
labelCallback: lang,
|
|
171
|
-
timestamp: data
|
|
174
|
+
timestamp: data === null || data === void 0 || (_data$resolveInstrume2 = data.resolveInstrumentsWithFilters) === null || _data$resolveInstrume2 === void 0 ? void 0 : _data$resolveInstrume2.updatedAt
|
|
172
175
|
})));
|
|
173
176
|
};
|
|
174
177
|
exports.Main = Main;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Main.js","names":["_client","require","_labsWidgetCommon","_monoI18n","_react","_interopRequireWildcard","_usehooksTs","_resolveInstrumentsWithFilters","_graphql","_components","_config","_constant","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Main","_ref","instruments","division","assetClasses","columns","DEFAULT_COLUMNS","isAssetClassFilterEnabled","isInstrumentSearchEnabled","recordsPerPage","dataSource","isLiveRatesDisabled","documentRef","useRef","document","size","useLayoutProvider","isDesktop","Size","DESKTOP","isTradingMode","includes","DataRecordType","TRADE_MODE","SYMBOL","lang","useLocale","target","setQuery","closeQuery","useLiveRatesQuery","records","setRecords","useState","Array","fill","totalRecords","setTotalRecords","queryVariables","setQueryVariables","count","searchPattern","offset","assetClass","withTradingModes","tradeModes","TradeMode","TradeLongonly","TradeShortonly","TradeCloseonly","undefined","pageNumber","Math","floor","data","error","loading","useQuery","resolveInstrumentsWithFilters","variables","fetchPolicy","errorPolicy","useEffect","newRecords","map","record","instrument","name","displayName","tradeMode","tradeModeLabels","totalCount","instrumentsNames","_ref2","showError","onVisibilityChange","current","visibilityState","_ref3","useEventListener","headerConfig","headerConfigs","mobile","length","longInstruments","normal","createElement","Fragment","TableWidget","PaginationComponent","Pagination","currentPage","disabled","onPageChange","numb","prev","TabsComponent","Filters","assetClassOptions","id","label","assetClassLabels","ALL","sort","b","localeCompare","onAssetClassChange","onSearchChange","activeColumns","hasError","headerColumns","getHeaderConfig","instrumentColumnWidth","additionalStyles","minWidth","isLoading","testId","toolTipId","INSTRUMENT_TOOLTIP_ID","viewType","className","LastUpdated","labelCallback","timestamp","updatedAt","exports"],"sources":["../../../src/InstrumentsTableWidget/Main.tsx"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport type { DataRecord } from '@oanda/labs-widget-common';\nimport {\n DataRecordType,\n getHeaderConfig,\n LastUpdated,\n Pagination,\n Size,\n TableWidget,\n useLayoutProvider,\n useLiveRatesQuery,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { useEventListener } from 'usehooks-ts';\n\nimport { resolveInstrumentsWithFilters } from '../gql/resolveInstrumentsWithFilters';\nimport type { AssetClassName } from '../gql/types/graphql';\nimport {\n type ResolveInstrumentsWithFiltersQuery,\n type ResolveInstrumentsWithFiltersQueryVariables,\n TradeMode,\n} from '../gql/types/graphql';\nimport { Filters } from './components';\nimport { assetClassLabels, headerConfigs, tradeModeLabels } from './config';\nimport { DEFAULT_COLUMNS, INSTRUMENT_TOOLTIP_ID } from './constant';\nimport type { MainProps } from './types';\n\nconst Main = ({\n instruments = [],\n division,\n assetClasses,\n columns = DEFAULT_COLUMNS,\n isAssetClassFilterEnabled,\n isInstrumentSearchEnabled,\n recordsPerPage,\n dataSource,\n isLiveRatesDisabled,\n}: MainProps) => {\n const documentRef = useRef<Document>(document);\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const isTradingMode =\n columns.includes(DataRecordType.TRADE_MODE) &&\n columns.includes(DataRecordType.SYMBOL);\n\n const { lang } = useLocale();\n const { target, setQuery, closeQuery } =\n useLiveRatesQuery(isLiveRatesDisabled);\n\n const [records, setRecords] = useState<DataRecord[]>(\n new Array(recordsPerPage || 10).fill({})\n );\n\n const [totalRecords, setTotalRecords] = useState<number>(0);\n\n const [queryVariables, setQueryVariables] =\n useState<ResolveInstrumentsWithFiltersQueryVariables>({\n division,\n count: recordsPerPage,\n searchPattern: '',\n offset: 0,\n assetClass: assetClasses || [],\n instruments,\n dataSource,\n withTradingModes: isTradingMode,\n tradeModes: isTradingMode\n ? [\n TradeMode.TradeLongonly,\n TradeMode.TradeShortonly,\n TradeMode.TradeCloseonly,\n ]\n : undefined,\n });\n\n const pageNumber = queryVariables.offset\n ? Math.floor(queryVariables.offset / (recordsPerPage || 1))\n : 0;\n\n const { data, error, loading } = useQuery<\n ResolveInstrumentsWithFiltersQuery,\n ResolveInstrumentsWithFiltersQueryVariables\n >(resolveInstrumentsWithFilters, {\n variables: queryVariables,\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n useEffect(() => {\n if (loading) {\n setRecords(new Array(recordsPerPage).fill({}));\n }\n if (!loading && data?.resolveInstrumentsWithFilters?.instruments) {\n const newRecords = data.resolveInstrumentsWithFilters.instruments.map(\n (record) => ({\n instrument: record?.name || '',\n displayName: record?.displayName || '',\n tradeMode: lang(\n tradeModeLabels[\n (record?.tradeMode as keyof typeof tradeModeLabels) || ''\n ]\n ),\n })\n );\n setRecords(newRecords);\n setTotalRecords(data.resolveInstrumentsWithFilters.totalCount);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [loading, data]);\n\n useEffect(() => {\n const instrumentsNames = records.map(({ instrument }) => instrument);\n if (instrumentsNames[0]) {\n setQuery({ instruments: instrumentsNames });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [records]);\n\n const showError = (!loading && !!error) || (!loading && !data);\n\n const onVisibilityChange = () => {\n if (documentRef.current.visibilityState === 'hidden') {\n closeQuery();\n }\n if (documentRef.current.visibilityState === 'visible') {\n const instrumentsNames = records.map(({ instrument }) => instrument);\n if (instrumentsNames[0]) {\n setQuery({ instruments: instrumentsNames });\n }\n }\n };\n\n useEventListener('visibilitychange', onVisibilityChange, documentRef);\n\n const headerConfig = !isDesktop\n ? headerConfigs.mobile\n : columns.length < 4\n ? headerConfigs.longInstruments\n : headerConfigs.normal;\n\n return (\n <>\n <TableWidget\n PaginationComponent={\n records.length > 0 && recordsPerPage ? (\n <Pagination\n currentPage={pageNumber}\n disabled={loading}\n recordsPerPage={recordsPerPage}\n totalRecords={totalRecords}\n onPageChange={(numb) => {\n setQueryVariables((prev) => ({\n ...prev,\n offset: numb * recordsPerPage,\n }));\n }}\n />\n ) : (\n <></>\n )\n }\n TabsComponent={\n isInstrumentSearchEnabled || isAssetClassFilterEnabled ? (\n <Filters\n assetClassOptions={[\n {\n id: 'ALL',\n label: lang(assetClassLabels.ALL),\n },\n ...(assetClasses || [])\n .map((assetClass) => ({\n id: assetClass,\n label: lang(assetClassLabels[assetClass]),\n }))\n .sort((a, b) => a.label.localeCompare(b.label)),\n ]}\n isAssetClassFilterEnabled={isAssetClassFilterEnabled}\n isInstrumentSearchEnabled={isInstrumentSearchEnabled}\n onAssetClassChange={(assetClass) => {\n setQueryVariables((prev) => ({\n ...prev,\n offset: 0,\n searchPattern: '',\n assetClass:\n assetClass[0] === 'ALL'\n ? assetClasses || []\n : (assetClass as AssetClassName[]),\n }));\n }}\n onSearchChange={(searchPattern) => {\n setQueryVariables((prev) => ({\n ...prev,\n offset: 0,\n searchPattern,\n }));\n }}\n />\n ) : (\n <></>\n )\n }\n activeColumns={columns}\n count={totalRecords}\n hasError={showError}\n headerColumns={getHeaderConfig(columns, headerConfig)}\n instrumentColumnWidth={\n headerConfig.instrument?.additionalStyles.minWidth\n }\n isLoading={loading}\n pageNumber={pageNumber}\n records={records}\n target={target}\n testId=\"instruments-table-wrapper\"\n toolTipId={INSTRUMENT_TOOLTIP_ID}\n viewType=\"table\"\n />\n {isTradingMode && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated\n labelCallback={lang}\n timestamp={data?.resolveInstrumentsWithFilters?.updatedAt}\n />\n </div>\n )}\n </>\n );\n};\n\nexport { Main };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Main.js","names":["_client","require","_labsWidgetCommon","_monoI18n","_react","_interopRequireWildcard","_usehooksTs","_resolveInstrumentsWithFilters","_graphql","_components","_config","_constant","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","Main","_ref","_headerConfig$instrum","_data$resolveInstrume2","instruments","division","assetClasses","columns","DEFAULT_COLUMNS","isAssetClassFilterEnabled","isInstrumentSearchEnabled","recordsPerPage","dataSource","isLiveRatesDisabled","documentRef","useRef","document","size","useLayoutProvider","isDesktop","Size","DESKTOP","isTradingMode","includes","DataRecordType","TRADE_MODE","SYMBOL","lang","useLocale","target","setQuery","closeQuery","useLiveRatesQuery","records","setRecords","useState","Array","fill","totalRecords","setTotalRecords","queryVariables","setQueryVariables","count","searchPattern","offset","assetClass","withTradingModes","tradeModes","TradeMode","TradeLongonly","TradeShortonly","TradeCloseonly","undefined","pageNumber","Math","floor","data","error","loading","useQuery","resolveInstrumentsWithFilters","variables","fetchPolicy","errorPolicy","useEffect","_data$resolveInstrume","newRecords","map","record","instrument","name","displayName","tradeMode","tradeModeLabels","totalCount","instrumentsNames","_ref2","showError","onVisibilityChange","current","visibilityState","_ref3","useEventListener","headerConfig","headerConfigs","mobile","longInstruments","normal","createElement","Fragment","TableWidget","PaginationComponent","Pagination","currentPage","disabled","onPageChange","numb","prev","TabsComponent","Filters","assetClassOptions","id","label","assetClassLabels","ALL","sort","a","b","localeCompare","onAssetClassChange","onSearchChange","activeColumns","hasError","headerColumns","getHeaderConfig","instrumentColumnWidth","additionalStyles","minWidth","isLoading","testId","toolTipId","INSTRUMENT_TOOLTIP_ID","viewType","className","LastUpdated","labelCallback","timestamp","updatedAt","exports"],"sources":["../../../src/InstrumentsTableWidget/Main.tsx"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport type { DataRecord } from '@oanda/labs-widget-common';\nimport {\n DataRecordType,\n getHeaderConfig,\n LastUpdated,\n Pagination,\n Size,\n TableWidget,\n useLayoutProvider,\n useLiveRatesQuery,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { useEventListener } from 'usehooks-ts';\n\nimport { resolveInstrumentsWithFilters } from '../gql/resolveInstrumentsWithFilters';\nimport type { AssetClassName } from '../gql/types/graphql';\nimport {\n type ResolveInstrumentsWithFiltersQuery,\n type ResolveInstrumentsWithFiltersQueryVariables,\n TradeMode,\n} from '../gql/types/graphql';\nimport { Filters } from './components';\nimport { assetClassLabels, headerConfigs, tradeModeLabels } from './config';\nimport { DEFAULT_COLUMNS, INSTRUMENT_TOOLTIP_ID } from './constant';\nimport type { MainProps } from './types';\n\nconst Main = ({\n instruments = [],\n division,\n assetClasses,\n columns = DEFAULT_COLUMNS,\n isAssetClassFilterEnabled,\n isInstrumentSearchEnabled,\n recordsPerPage,\n dataSource,\n isLiveRatesDisabled,\n}: MainProps) => {\n const documentRef = useRef<Document>(document);\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const isTradingMode =\n columns.includes(DataRecordType.TRADE_MODE) &&\n columns.includes(DataRecordType.SYMBOL);\n\n const { lang } = useLocale();\n const { target, setQuery, closeQuery } =\n useLiveRatesQuery(isLiveRatesDisabled);\n\n const [records, setRecords] = useState<DataRecord[]>(\n new Array(recordsPerPage || 10).fill({})\n );\n\n const [totalRecords, setTotalRecords] = useState<number>(0);\n\n const [queryVariables, setQueryVariables] =\n useState<ResolveInstrumentsWithFiltersQueryVariables>({\n division,\n count: recordsPerPage,\n searchPattern: '',\n offset: 0,\n assetClass: assetClasses || [],\n instruments,\n dataSource,\n withTradingModes: isTradingMode,\n tradeModes: isTradingMode\n ? [\n TradeMode.TradeLongonly,\n TradeMode.TradeShortonly,\n TradeMode.TradeCloseonly,\n ]\n : undefined,\n });\n\n const pageNumber = queryVariables.offset\n ? Math.floor(queryVariables.offset / (recordsPerPage || 1))\n : 0;\n\n const { data, error, loading } = useQuery<\n ResolveInstrumentsWithFiltersQuery,\n ResolveInstrumentsWithFiltersQueryVariables\n >(resolveInstrumentsWithFilters, {\n variables: queryVariables,\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n useEffect(() => {\n if (loading) {\n setRecords(new Array(recordsPerPage).fill({}));\n }\n if (!loading && data?.resolveInstrumentsWithFilters?.instruments) {\n const newRecords = data.resolveInstrumentsWithFilters.instruments.map(\n (record) => ({\n instrument: record?.name || '',\n displayName: record?.displayName || '',\n tradeMode: lang(\n tradeModeLabels[\n (record?.tradeMode as keyof typeof tradeModeLabels) || ''\n ]\n ),\n })\n );\n setRecords(newRecords);\n setTotalRecords(data.resolveInstrumentsWithFilters.totalCount);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [loading, data]);\n\n useEffect(() => {\n const instrumentsNames = records.map(({ instrument }) => instrument);\n if (instrumentsNames[0]) {\n setQuery({ instruments: instrumentsNames });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [records]);\n\n const showError = (!loading && !!error) || (!loading && !data);\n\n const onVisibilityChange = () => {\n if (documentRef.current.visibilityState === 'hidden') {\n closeQuery();\n }\n if (documentRef.current.visibilityState === 'visible') {\n const instrumentsNames = records.map(({ instrument }) => instrument);\n if (instrumentsNames[0]) {\n setQuery({ instruments: instrumentsNames });\n }\n }\n };\n\n useEventListener('visibilitychange', onVisibilityChange, documentRef);\n\n const headerConfig = !isDesktop\n ? headerConfigs.mobile\n : columns.length < 4\n ? headerConfigs.longInstruments\n : headerConfigs.normal;\n\n return (\n <>\n <TableWidget\n PaginationComponent={\n records.length > 0 && recordsPerPage ? (\n <Pagination\n currentPage={pageNumber}\n disabled={loading}\n recordsPerPage={recordsPerPage}\n totalRecords={totalRecords}\n onPageChange={(numb) => {\n setQueryVariables((prev) => ({\n ...prev,\n offset: numb * recordsPerPage,\n }));\n }}\n />\n ) : (\n <></>\n )\n }\n TabsComponent={\n isInstrumentSearchEnabled || isAssetClassFilterEnabled ? (\n <Filters\n assetClassOptions={[\n {\n id: 'ALL',\n label: lang(assetClassLabels.ALL),\n },\n ...(assetClasses || [])\n .map((assetClass) => ({\n id: assetClass,\n label: lang(assetClassLabels[assetClass]),\n }))\n .sort((a, b) => a.label.localeCompare(b.label)),\n ]}\n isAssetClassFilterEnabled={isAssetClassFilterEnabled}\n isInstrumentSearchEnabled={isInstrumentSearchEnabled}\n onAssetClassChange={(assetClass) => {\n setQueryVariables((prev) => ({\n ...prev,\n offset: 0,\n searchPattern: '',\n assetClass:\n assetClass[0] === 'ALL'\n ? assetClasses || []\n : (assetClass as AssetClassName[]),\n }));\n }}\n onSearchChange={(searchPattern) => {\n setQueryVariables((prev) => ({\n ...prev,\n offset: 0,\n searchPattern,\n }));\n }}\n />\n ) : (\n <></>\n )\n }\n activeColumns={columns}\n count={totalRecords}\n hasError={showError}\n headerColumns={getHeaderConfig(columns, headerConfig)}\n instrumentColumnWidth={\n headerConfig.instrument?.additionalStyles.minWidth\n }\n isLoading={loading}\n pageNumber={pageNumber}\n records={records}\n target={target}\n testId=\"instruments-table-wrapper\"\n toolTipId={INSTRUMENT_TOOLTIP_ID}\n viewType=\"table\"\n />\n {isTradingMode && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated\n labelCallback={lang}\n timestamp={data?.resolveInstrumentsWithFilters?.updatedAt}\n />\n </div>\n )}\n </>\n );\n};\n\nexport { Main };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,8 +8,7 @@ var _labsWidgetCommon = require("@oanda/labs-widget-common");
|
|
|
8
8
|
var _monoI18n = require("@oanda/mono-i18n");
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _usehooksTs = require("usehooks-ts");
|
|
11
|
-
function
|
|
12
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
13
12
|
const Filters = _ref => {
|
|
14
13
|
let {
|
|
15
14
|
assetClassOptions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filters.js","names":["_labsWidgetCommon","require","_monoI18n","_react","_interopRequireWildcard","_usehooksTs","
|
|
1
|
+
{"version":3,"file":"Filters.js","names":["_labsWidgetCommon","require","_monoI18n","_react","_interopRequireWildcard","_usehooksTs","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Filters","_ref","assetClassOptions","onSearchChange","onAssetClassChange","isAssetClassFilterEnabled","isInstrumentSearchEnabled","lang","useLocale","size","useLayoutProvider","isDesktop","Size","DESKTOP","assetClass","setAssetClass","useState","id","searchInputValue","setSearchInputValue","debouncedValue","setValue","useDebounceValue","useEffect","length","createElement","className","cn","Select","options","selectLabel","selectedOption","find","opt","setSelectedOption","option","TextInput","label","placeholder","value","onChange","val","exports"],"sources":["../../../../../src/InstrumentsTableWidget/components/Filters/Filters.tsx"],"sourcesContent":["import {\n cn,\n Select,\n Size,\n TextInput,\n useLayoutProvider,\n} from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport React, { useEffect, useState } from 'react';\nimport { useDebounceValue } from 'usehooks-ts';\n\nimport type { AssetClassLabels, FiltersProps } from './types';\n\nexport const Filters = ({\n assetClassOptions,\n onSearchChange,\n onAssetClassChange,\n isAssetClassFilterEnabled,\n isInstrumentSearchEnabled,\n}: FiltersProps) => {\n const { lang } = useLocale();\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n\n const [assetClass, setAssetClass] = useState([assetClassOptions[0].id]);\n const [searchInputValue, setSearchInputValue] = useState('');\n const [debouncedValue, setValue] = useDebounceValue('', 500);\n\n useEffect(() => {\n if (debouncedValue.length >= 3 || debouncedValue.length === 0) {\n onSearchChange(debouncedValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [debouncedValue]);\n\n return (\n <div\n className={cn('lw-mb-4 lw-mt-2 lw-flex lw-w-full lw-gap-4', {\n 'lw-flex-col': !isDesktop,\n 'lw-flex-row': isDesktop,\n })}\n >\n {isAssetClassFilterEnabled && (\n <div\n className={cn({\n 'lw-w-full': !isDesktop,\n 'lw-w-[280px]': isDesktop,\n })}\n >\n <Select\n options={assetClassOptions}\n selectLabel={lang('asset_class')}\n selectedOption={\n assetClassOptions.find((opt) => opt.id === assetClass[0]) ||\n assetClassOptions[0]\n }\n setSelectedOption={(option) => {\n setAssetClass([option.id]);\n onAssetClassChange([option.id as AssetClassLabels]);\n setSearchInputValue('');\n onSearchChange('');\n }}\n />\n </div>\n )}\n {isInstrumentSearchEnabled && (\n <div\n className={cn({\n 'lw-w-full': !isDesktop,\n 'lw-w-[280px]': isDesktop,\n })}\n >\n <TextInput\n label={lang('search')}\n placeholder={lang('instrument_name')}\n value={searchInputValue}\n onChange={(val) => {\n setSearchInputValue(val);\n setValue(val);\n }}\n />\n </div>\n )}\n </div>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|