@oanda/labs-sentiment-widget 1.0.172 → 1.0.174
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 +1364 -0
- package/dist/main/SentimentWidget/SentimentWidget.js +18 -23
- package/dist/main/SentimentWidget/SentimentWidget.js.map +1 -1
- package/dist/main/SentimentWidget/Tool.js +18 -18
- package/dist/main/SentimentWidget/Tool.js.map +1 -1
- package/dist/main/SentimentWidget/Widget.js +15 -17
- package/dist/main/SentimentWidget/Widget.js.map +1 -1
- package/dist/main/SentimentWidget/components/SortSwitch/SortSwitch.js +14 -16
- package/dist/main/SentimentWidget/components/SortSwitch/SortSwitch.js.map +1 -1
- package/dist/main/SentimentWidget/render.js +9 -9
- package/dist/main/SentimentWidget/render.js.map +1 -1
- package/dist/main/SentimentWidget/types.js.map +1 -1
- package/dist/main/SentimentWidget/utils.js.map +1 -1
- package/dist/main/gql/getInstrumentSentiment.js +2 -8
- package/dist/main/gql/getInstrumentSentiment.js.map +1 -1
- package/dist/main/gql/getSentimentList.js +2 -6
- package/dist/main/gql/getSentimentList.js.map +1 -1
- package/dist/main/gql/types/fragment-masking.js.map +1 -1
- package/dist/main/gql/types/gql.js +2 -2
- package/dist/main/gql/types/gql.js.map +1 -1
- package/dist/main/gql/types/graphql.js +154 -154
- package/dist/main/gql/types/graphql.js.map +1 -1
- package/dist/main/gql/types/index.js.map +1 -1
- package/dist/main/index.js +8 -8
- package/dist/main/index.js.map +1 -1
- package/dist/main/translations/index.js +1 -1
- package/dist/main/translations/index.js.map +1 -1
- package/dist/main/translations/translations.js.map +1 -1
- package/dist/module/SentimentWidget/SentimentWidget.js +19 -24
- package/dist/module/SentimentWidget/SentimentWidget.js.map +1 -1
- package/dist/module/SentimentWidget/Tool.js +17 -17
- package/dist/module/SentimentWidget/Tool.js.map +1 -1
- package/dist/module/SentimentWidget/Widget.js +16 -16
- package/dist/module/SentimentWidget/Widget.js.map +1 -1
- package/dist/module/SentimentWidget/components/SortSwitch/SortSwitch.js +14 -14
- package/dist/module/SentimentWidget/components/SortSwitch/SortSwitch.js.map +1 -1
- package/dist/module/SentimentWidget/render.js +9 -9
- package/dist/module/SentimentWidget/render.js.map +1 -1
- package/dist/module/SentimentWidget/types.js.map +1 -1
- package/dist/module/SentimentWidget/utils.js.map +1 -1
- package/dist/module/gql/getInstrumentSentiment.js +2 -8
- package/dist/module/gql/getInstrumentSentiment.js.map +1 -1
- package/dist/module/gql/getSentimentList.js +2 -6
- package/dist/module/gql/getSentimentList.js.map +1 -1
- package/dist/module/gql/types/fragment-masking.js.map +1 -1
- package/dist/module/gql/types/gql.js +2 -2
- package/dist/module/gql/types/gql.js.map +1 -1
- package/dist/module/gql/types/graphql.js +154 -154
- package/dist/module/gql/types/graphql.js.map +1 -1
- package/dist/module/gql/types/index.js +2 -2
- package/dist/module/gql/types/index.js.map +1 -1
- package/dist/module/index.js +1 -1
- package/dist/module/index.js.map +1 -1
- package/dist/module/translations/index.js +1 -1
- package/dist/module/translations/index.js.map +1 -1
- package/dist/module/translations/translations.js.map +1 -1
- package/dist/types/SentimentWidget/SentimentWidget.d.ts +1 -1
- package/dist/types/SentimentWidget/Tool.d.ts +1 -1
- package/dist/types/SentimentWidget/Widget.d.ts +1 -1
- package/dist/types/SentimentWidget/components/SortSwitch/SortSwitch.d.ts +2 -2
- package/dist/types/SentimentWidget/types.d.ts +2 -2
- package/dist/types/SentimentWidget/utils.d.ts +2 -1
- package/dist/types/gql/types/gql.d.ts +4 -4
- package/dist/types/gql/types/index.d.ts +2 -2
- package/dist/types/index.d.ts +1 -1
- package/dist/types/translations/index.d.ts +2 -2
- package/package.json +3 -3
- package/src/SentimentWidget/SentimentWidget.tsx +28 -33
- package/src/SentimentWidget/Tool.tsx +96 -80
- package/src/SentimentWidget/Widget.tsx +72 -66
- package/src/SentimentWidget/components/SortSwitch/SortSwitch.tsx +42 -39
- package/src/SentimentWidget/render.tsx +40 -28
- package/src/SentimentWidget/types.ts +3 -2
- package/src/SentimentWidget/utils.ts +12 -4
- package/src/gql/getInstrumentSentiment.ts +2 -8
- package/src/gql/getSentimentList.ts +2 -6
- package/src/gql/types/fragment-masking.ts +41 -21
- package/src/gql/types/gql.ts +12 -5
- package/src/gql/types/graphql.ts +225 -47
- package/src/gql/types/index.ts +2 -2
- package/src/index.ts +1 -1
- package/src/translations/index.ts +4 -4
- package/src/translations/translations.ts +2 -1
- package/test/SortSwitch.test.tsx +36 -23
- package/test/Tool.test.tsx +13 -11
- package/test/Widget.test.tsx +31 -26
- package/test/sortData.test.ts +49 -13
package/test/Widget.test.tsx
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @jest-environment jsdom
|
|
3
3
|
*/
|
|
4
|
-
import React from 'react';
|
|
5
|
-
import { render } from '@testing-library/react';
|
|
6
4
|
import { MockedProvider } from '@apollo/client/testing';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
5
|
+
import { MockLayoutProvider } from '@oanda/labs-widget-common';
|
|
6
|
+
import { render } from '@testing-library/react';
|
|
7
|
+
import React from 'react';
|
|
8
|
+
|
|
9
9
|
import { getInstrumentSentiment } from '../src/gql/getInstrumentSentiment';
|
|
10
10
|
import { Division } from '../src/gql/types/graphql';
|
|
11
|
+
import { Widget } from '../src/SentimentWidget/Widget';
|
|
11
12
|
|
|
12
13
|
const mocks = [
|
|
13
14
|
{
|
|
@@ -20,15 +21,17 @@ const mocks = [
|
|
|
20
21
|
},
|
|
21
22
|
result: {
|
|
22
23
|
data: {
|
|
23
|
-
sentiment: [
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
sentiment: [
|
|
25
|
+
{
|
|
26
|
+
name: 'EUR/USD',
|
|
27
|
+
displayName: 'EUR/USD',
|
|
28
|
+
sentiment: {
|
|
29
|
+
longPercent: 34,
|
|
30
|
+
shortPercent: 66,
|
|
31
|
+
},
|
|
32
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
29
33
|
},
|
|
30
|
-
|
|
31
|
-
}],
|
|
34
|
+
],
|
|
32
35
|
},
|
|
33
36
|
},
|
|
34
37
|
},
|
|
@@ -45,15 +48,17 @@ const zeroPercentMocks = [
|
|
|
45
48
|
},
|
|
46
49
|
result: {
|
|
47
50
|
data: {
|
|
48
|
-
sentiment: [
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
sentiment: [
|
|
52
|
+
{
|
|
53
|
+
name: 'GBP/USD',
|
|
54
|
+
displayName: 'GBP/USD',
|
|
55
|
+
sentiment: {
|
|
56
|
+
longPercent: 0,
|
|
57
|
+
shortPercent: 0,
|
|
58
|
+
},
|
|
59
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
54
60
|
},
|
|
55
|
-
|
|
56
|
-
}],
|
|
61
|
+
],
|
|
57
62
|
},
|
|
58
63
|
},
|
|
59
64
|
},
|
|
@@ -63,10 +68,10 @@ describe('Widget component', () => {
|
|
|
63
68
|
it('should render widget component', async () => {
|
|
64
69
|
const { findByTestId } = render(
|
|
65
70
|
<MockedProvider mocks={mocks}>
|
|
66
|
-
<
|
|
71
|
+
<MockLayoutProvider>
|
|
67
72
|
<Widget division={Division.Oc} instrument="EUR/USD" />
|
|
68
|
-
</
|
|
69
|
-
</MockedProvider
|
|
73
|
+
</MockLayoutProvider>
|
|
74
|
+
</MockedProvider>
|
|
70
75
|
);
|
|
71
76
|
|
|
72
77
|
expect(await findByTestId('sentiment-widget')).toBeInTheDocument();
|
|
@@ -75,10 +80,10 @@ describe('Widget component', () => {
|
|
|
75
80
|
it('should render error when both sentiment values are 0', async () => {
|
|
76
81
|
const { findByTestId } = render(
|
|
77
82
|
<MockedProvider mocks={zeroPercentMocks}>
|
|
78
|
-
<
|
|
83
|
+
<MockLayoutProvider>
|
|
79
84
|
<Widget division={Division.Oc} instrument="GBP/USD" />
|
|
80
|
-
</
|
|
81
|
-
</MockedProvider
|
|
85
|
+
</MockLayoutProvider>
|
|
86
|
+
</MockedProvider>
|
|
82
87
|
);
|
|
83
88
|
|
|
84
89
|
expect(await findByTestId('sentiment-widget')).toBeInTheDocument();
|
package/test/sortData.test.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { sortData } from '../src/SentimentWidget/utils';
|
|
2
1
|
import { Sort } from '../src/gql/types/graphql';
|
|
2
|
+
import { sortData } from '../src/SentimentWidget/utils';
|
|
3
3
|
|
|
4
4
|
const data = {
|
|
5
5
|
sentimentList: [
|
|
@@ -66,22 +66,40 @@ describe('sortData function', () => {
|
|
|
66
66
|
|
|
67
67
|
expect(path).toEqual([
|
|
68
68
|
{
|
|
69
|
-
name: 'XAU/USD',
|
|
69
|
+
name: 'XAU/USD',
|
|
70
|
+
displayName: 'XAU/USD',
|
|
71
|
+
sentiment: { longPercent: 90, shortPercent: 10 },
|
|
72
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
70
73
|
},
|
|
71
74
|
{
|
|
72
|
-
name: 'EUR/USD',
|
|
75
|
+
name: 'EUR/USD',
|
|
76
|
+
displayName: 'EUR/USD',
|
|
77
|
+
sentiment: { longPercent: 60, shortPercent: 40 },
|
|
78
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
73
79
|
},
|
|
74
80
|
{
|
|
75
|
-
name: 'US30/USD',
|
|
81
|
+
name: 'US30/USD',
|
|
82
|
+
displayName: 'US30/USD',
|
|
83
|
+
sentiment: { longPercent: 55, shortPercent: 45 },
|
|
84
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
76
85
|
},
|
|
77
86
|
{
|
|
78
|
-
name: 'GBP/USD',
|
|
87
|
+
name: 'GBP/USD',
|
|
88
|
+
displayName: 'GBP/USD',
|
|
89
|
+
sentiment: { longPercent: 30, shortPercent: 70 },
|
|
90
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
79
91
|
},
|
|
80
92
|
{
|
|
81
|
-
name: 'AUD/CAD',
|
|
93
|
+
name: 'AUD/CAD',
|
|
94
|
+
displayName: 'AUD/CAD',
|
|
95
|
+
sentiment: { longPercent: 20, shortPercent: 80 },
|
|
96
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
82
97
|
},
|
|
83
98
|
{
|
|
84
|
-
name: 'USD/CHF',
|
|
99
|
+
name: 'USD/CHF',
|
|
100
|
+
displayName: 'USD/CHF',
|
|
101
|
+
sentiment: { longPercent: 15, shortPercent: 85 },
|
|
102
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
85
103
|
},
|
|
86
104
|
]);
|
|
87
105
|
});
|
|
@@ -90,22 +108,40 @@ describe('sortData function', () => {
|
|
|
90
108
|
|
|
91
109
|
expect(path).toEqual([
|
|
92
110
|
{
|
|
93
|
-
name: 'USD/CHF',
|
|
111
|
+
name: 'USD/CHF',
|
|
112
|
+
displayName: 'USD/CHF',
|
|
113
|
+
sentiment: { longPercent: 15, shortPercent: 85 },
|
|
114
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
94
115
|
},
|
|
95
116
|
{
|
|
96
|
-
name: 'AUD/CAD',
|
|
117
|
+
name: 'AUD/CAD',
|
|
118
|
+
displayName: 'AUD/CAD',
|
|
119
|
+
sentiment: { longPercent: 20, shortPercent: 80 },
|
|
120
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
97
121
|
},
|
|
98
122
|
{
|
|
99
|
-
name: 'GBP/USD',
|
|
123
|
+
name: 'GBP/USD',
|
|
124
|
+
displayName: 'GBP/USD',
|
|
125
|
+
sentiment: { longPercent: 30, shortPercent: 70 },
|
|
126
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
100
127
|
},
|
|
101
128
|
{
|
|
102
|
-
name: 'US30/USD',
|
|
129
|
+
name: 'US30/USD',
|
|
130
|
+
displayName: 'US30/USD',
|
|
131
|
+
sentiment: { longPercent: 55, shortPercent: 45 },
|
|
132
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
103
133
|
},
|
|
104
134
|
{
|
|
105
|
-
name: 'EUR/USD',
|
|
135
|
+
name: 'EUR/USD',
|
|
136
|
+
displayName: 'EUR/USD',
|
|
137
|
+
sentiment: { longPercent: 60, shortPercent: 40 },
|
|
138
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
106
139
|
},
|
|
107
140
|
{
|
|
108
|
-
name: 'XAU/USD',
|
|
141
|
+
name: 'XAU/USD',
|
|
142
|
+
displayName: 'XAU/USD',
|
|
143
|
+
sentiment: { longPercent: 90, shortPercent: 10 },
|
|
144
|
+
updatedAt: '2023-12-02T10:00:08.509215576Z',
|
|
109
145
|
},
|
|
110
146
|
]);
|
|
111
147
|
});
|