@oanda/labs-instrument-live-rate-widget 1.0.17 → 1.0.19
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 +156 -0
- package/dist/main/InstrumentLiveRateWidget/InstrumentLiveRateWidget.js +5 -5
- package/dist/main/InstrumentLiveRateWidget/InstrumentLiveRateWidget.js.map +1 -1
- package/dist/main/InstrumentLiveRateWidget/ValidationWrapper.js +7 -2
- package/dist/main/InstrumentLiveRateWidget/ValidationWrapper.js.map +1 -1
- package/dist/module/InstrumentLiveRateWidget/InstrumentLiveRateWidget.js +5 -5
- package/dist/module/InstrumentLiveRateWidget/InstrumentLiveRateWidget.js.map +1 -1
- package/dist/module/InstrumentLiveRateWidget/ValidationWrapper.js +6 -3
- package/dist/module/InstrumentLiveRateWidget/ValidationWrapper.js.map +1 -1
- package/package.json +3 -3
- package/src/InstrumentLiveRateWidget/InstrumentLiveRateWidget.tsx +13 -13
- package/src/InstrumentLiveRateWidget/ValidationWrapper.tsx +13 -10
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,162 @@
|
|
|
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.19 (2024-09-04)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## 1.0.157 (2024-09-04)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## 1.0.156 (2024-09-02)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## 1.0.155 (2024-08-29)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## 1.0.154 (2024-08-29)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
## 1.0.153 (2024-08-23)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## 1.0.152 (2024-08-23)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
## 1.0.151 (2024-08-20)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## 1.0.150 (2024-08-19)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## 1.0.149 (2024-08-07)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
## 1.0.148 (2024-08-01)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
## 1.0.147 (2024-08-01)
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
## 1.0.146 (2024-07-26)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
## 1.0.145 (2024-07-25)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
## 1.0.144 (2024-07-22)
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
## 1.0.143 (2024-07-19)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
## 1.0.142 (2024-07-16)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
## 1.0.141 (2024-07-16)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
## 1.0.140 (2024-07-12)
|
|
79
|
+
|
|
80
|
+
**Note:** Version bump only for package @oanda/labs-instrument-live-rate-widget
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
## 1.0.18 (2024-09-04)
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
## 1.0.156 (2024-09-02)
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
## 1.0.155 (2024-08-29)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
## 1.0.154 (2024-08-29)
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
## 1.0.153 (2024-08-23)
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
## 1.0.152 (2024-08-23)
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
## 1.0.151 (2024-08-20)
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
## 1.0.150 (2024-08-19)
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
## 1.0.149 (2024-08-07)
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
## 1.0.148 (2024-08-01)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
## 1.0.147 (2024-08-01)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
## 1.0.146 (2024-07-26)
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
## 1.0.145 (2024-07-25)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
## 1.0.144 (2024-07-22)
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
## 1.0.143 (2024-07-19)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
## 1.0.142 (2024-07-16)
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
## 1.0.141 (2024-07-16)
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
## 1.0.140 (2024-07-12)
|
|
155
|
+
|
|
156
|
+
**Note:** Version bump only for package @oanda/labs-instrument-live-rate-widget
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
6
162
|
## 1.0.17 (2024-09-02)
|
|
7
163
|
|
|
8
164
|
|
|
@@ -31,10 +31,7 @@ const InstrumentLiveRateWidget = _ref => {
|
|
|
31
31
|
});
|
|
32
32
|
const divisionCode = division === _types.Division.Opt ? _types.Division.Ogm : division;
|
|
33
33
|
const dataSource = divisionCode === _types.Division.Ogm ? 'MT5' : 'V20';
|
|
34
|
-
return _react.default.createElement(
|
|
35
|
-
removePadding: removePadding,
|
|
36
|
-
theme: theme
|
|
37
|
-
}, _react.default.createElement(_monoI18n.LocaleProvider, {
|
|
34
|
+
return _react.default.createElement(_monoI18n.LocaleProvider, {
|
|
38
35
|
locale: (0, _labsWidgetCommon.getLocale)(locale),
|
|
39
36
|
translations: _translations.translations
|
|
40
37
|
}, _react.default.createElement(_labsWidgetCommon.LiveRatesProvider, {
|
|
@@ -45,7 +42,10 @@ const InstrumentLiveRateWidget = _ref => {
|
|
|
45
42
|
}
|
|
46
43
|
}, _react.default.createElement(_client.ApolloProvider, {
|
|
47
44
|
client: client
|
|
48
|
-
}, _react.default.createElement(_react.Suspense, null, _react.default.createElement(
|
|
45
|
+
}, _react.default.createElement(_react.Suspense, null, _react.default.createElement(_labsWidgetCommon.ThemeProvider, {
|
|
46
|
+
removePadding: removePadding,
|
|
47
|
+
theme: theme
|
|
48
|
+
}, _react.default.createElement(_ValidationWrapper.ValidationWrapper, {
|
|
49
49
|
size: size,
|
|
50
50
|
instrument: instrument,
|
|
51
51
|
division: division,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstrumentLiveRateWidget.js","names":["_react","_interopRequireWildcard","require","_client","_monoI18n","_labsWidgetCommon","_translations","_types","_ValidationWrapper","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","InstrumentLiveRateWidget","_ref","graphqlUrl","liveRatesUrl","instrument","division","locale","theme","isParamError","removePadding","size","client","ApolloClient","uri","cache","InMemoryCache","divisionCode","Division","Opt","Ogm","dataSource","createElement","
|
|
1
|
+
{"version":3,"file":"InstrumentLiveRateWidget.js","names":["_react","_interopRequireWildcard","require","_client","_monoI18n","_labsWidgetCommon","_translations","_types","_ValidationWrapper","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","InstrumentLiveRateWidget","_ref","graphqlUrl","liveRatesUrl","instrument","division","locale","theme","isParamError","removePadding","size","client","ApolloClient","uri","cache","InMemoryCache","divisionCode","Division","Opt","Ogm","dataSource","createElement","LocaleProvider","getLocale","translations","LiveRatesProvider","url","options","ApolloProvider","Suspense","ThemeProvider","ValidationWrapper","exports"],"sources":["../../../src/InstrumentLiveRateWidget/InstrumentLiveRateWidget.tsx"],"sourcesContent":["import React, { Suspense } from 'react';\nimport { ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';\nimport { LocaleProvider } from '@oanda/mono-i18n';\nimport {\n LiveRatesProvider, ThemeProvider, getLocale,\n} from '@oanda/labs-widget-common';\nimport { translations } from '../translations';\nimport { Division, InstrumentLiveRateConfig } from './types';\nimport { ValidationWrapper } from './ValidationWrapper';\n\nconst InstrumentLiveRateWidget = ({\n graphqlUrl,\n liveRatesUrl,\n instrument,\n division,\n locale,\n theme,\n isParamError,\n removePadding,\n size,\n}: InstrumentLiveRateConfig) => {\n const client = new ApolloClient({\n uri: graphqlUrl,\n cache: new InMemoryCache(),\n });\n\n const divisionCode = division === Division.Opt ? Division.Ogm : division;\n const dataSource = divisionCode === Division.Ogm ? 'MT5' : 'V20';\n\n return (\n <LocaleProvider locale={getLocale(locale)} translations={translations}>\n <LiveRatesProvider\n url={liveRatesUrl}\n options={{ divisionCode, dataSource }}\n >\n <ApolloProvider client={client}>\n <Suspense>\n <ThemeProvider removePadding={removePadding} theme={theme}>\n <ValidationWrapper\n size={size}\n instrument={instrument}\n division={division}\n isParamError={isParamError}\n />\n </ThemeProvider>\n </Suspense>\n </ApolloProvider>\n </LiveRatesProvider>\n </LocaleProvider>\n );\n};\n\nexport { InstrumentLiveRateWidget };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.ValidationWrapper = void 0;
|
|
7
|
-
var _react =
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _client = require("@apollo/client");
|
|
9
9
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
10
10
|
var _labsWidgetCommon = require("@oanda/labs-widget-common");
|
|
@@ -12,6 +12,8 @@ var _utils = require("./utils");
|
|
|
12
12
|
var _validateInstruments = require("../gql/validateInstruments");
|
|
13
13
|
var _Main = require("./Main");
|
|
14
14
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
+
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; }
|
|
15
17
|
const ValidationWrapper = _ref => {
|
|
16
18
|
let {
|
|
17
19
|
instrument,
|
|
@@ -19,6 +21,9 @@ const ValidationWrapper = _ref => {
|
|
|
19
21
|
size: widgetSize,
|
|
20
22
|
isParamError
|
|
21
23
|
} = _ref;
|
|
24
|
+
const {
|
|
25
|
+
size
|
|
26
|
+
} = (0, _react.useContext)(_labsWidgetCommon.ThemeContext);
|
|
22
27
|
const {
|
|
23
28
|
data,
|
|
24
29
|
error
|
|
@@ -31,7 +36,7 @@ const ValidationWrapper = _ref => {
|
|
|
31
36
|
errorPolicy: 'all'
|
|
32
37
|
});
|
|
33
38
|
const showError = !!error || isParamError;
|
|
34
|
-
return _react.default.createElement(_react.default.Fragment, null, _react.default.createElement("div", {
|
|
39
|
+
return _react.default.createElement(_react.default.Fragment, null, size && _react.default.createElement("div", {
|
|
35
40
|
className: "lw-flex lw-border lw-border-solid lw-border-border-primary lw-px-4 lw-text-sm lw-tracking-normal lw-text-text-primary"
|
|
36
41
|
}, !showError && _react.default.createElement("div", {
|
|
37
42
|
className: (0, _classnames.default)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationWrapper.js","names":["_react","
|
|
1
|
+
{"version":3,"file":"ValidationWrapper.js","names":["_react","_interopRequireWildcard","require","_client","_classnames","_interopRequireDefault","_labsWidgetCommon","_utils","_validateInstruments","_Main","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ValidationWrapper","_ref","instrument","division","size","widgetSize","isParamError","useContext","ThemeContext","data","error","useSuspenseQuery","validateInstruments","variables","instruments","fetchPolicy","errorPolicy","showError","createElement","Fragment","className","classnames","Main","record","getRecords","Error","exports"],"sources":["../../../src/InstrumentLiveRateWidget/ValidationWrapper.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useSuspenseQuery } from '@apollo/client';\nimport classnames from 'classnames';\nimport { Error, ThemeContext } from '@oanda/labs-widget-common';\nimport { getRecords } from './utils';\nimport { ValidationWrapperProps } from './types';\nimport { validateInstruments } from '../gql/validateInstruments';\nimport { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';\nimport { Main } from './Main';\n\nconst ValidationWrapper = ({\n instrument,\n division,\n size: widgetSize,\n isParamError,\n}: ValidationWrapperProps) => {\n const { size } = useContext(ThemeContext);\n const { data, error } = useSuspenseQuery<\n ValidateInstrumentsQuery,\n ValidateInstrumentsQueryVariables\n >(validateInstruments, {\n variables: {\n instruments: [instrument],\n division,\n },\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n const showError = !!error || isParamError;\n\n return (\n <>\n {size && (\n <div\n className=\"lw-flex lw-border lw-border-solid lw-border-border-primary lw-px-4 lw-text-sm lw-tracking-normal lw-text-text-primary\"\n >\n {!showError && (\n <div className={classnames({\n 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Main\n size={widgetSize}\n division={division}\n record={getRecords(data!)?.[0]!}\n />\n </div>\n )}\n {showError && (\n <div className={classnames('lw-flex lw-w-full lw-items-center', {\n 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Error />\n </div>\n )}\n </div>\n )}\n </>\n );\n};\n\nexport { ValidationWrapper };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -23,10 +23,7 @@ const InstrumentLiveRateWidget = _ref => {
|
|
|
23
23
|
});
|
|
24
24
|
const divisionCode = division === Division.Opt ? Division.Ogm : division;
|
|
25
25
|
const dataSource = divisionCode === Division.Ogm ? 'MT5' : 'V20';
|
|
26
|
-
return React.createElement(
|
|
27
|
-
removePadding: removePadding,
|
|
28
|
-
theme: theme
|
|
29
|
-
}, React.createElement(LocaleProvider, {
|
|
26
|
+
return React.createElement(LocaleProvider, {
|
|
30
27
|
locale: getLocale(locale),
|
|
31
28
|
translations: translations
|
|
32
29
|
}, React.createElement(LiveRatesProvider, {
|
|
@@ -37,7 +34,10 @@ const InstrumentLiveRateWidget = _ref => {
|
|
|
37
34
|
}
|
|
38
35
|
}, React.createElement(ApolloProvider, {
|
|
39
36
|
client: client
|
|
40
|
-
}, React.createElement(Suspense, null, React.createElement(
|
|
37
|
+
}, React.createElement(Suspense, null, React.createElement(ThemeProvider, {
|
|
38
|
+
removePadding: removePadding,
|
|
39
|
+
theme: theme
|
|
40
|
+
}, React.createElement(ValidationWrapper, {
|
|
41
41
|
size: size,
|
|
42
42
|
instrument: instrument,
|
|
43
43
|
division: division,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstrumentLiveRateWidget.js","names":["React","Suspense","ApolloClient","InMemoryCache","ApolloProvider","LocaleProvider","LiveRatesProvider","ThemeProvider","getLocale","translations","Division","ValidationWrapper","InstrumentLiveRateWidget","_ref","graphqlUrl","liveRatesUrl","instrument","division","locale","theme","isParamError","removePadding","size","client","uri","cache","divisionCode","Opt","Ogm","dataSource","createElement","url","options"],"sources":["../../../src/InstrumentLiveRateWidget/InstrumentLiveRateWidget.tsx"],"sourcesContent":["import React, { Suspense } from 'react';\nimport { ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';\nimport { LocaleProvider } from '@oanda/mono-i18n';\nimport {\n LiveRatesProvider, ThemeProvider, getLocale,\n} from '@oanda/labs-widget-common';\nimport { translations } from '../translations';\nimport { Division, InstrumentLiveRateConfig } from './types';\nimport { ValidationWrapper } from './ValidationWrapper';\n\nconst InstrumentLiveRateWidget = ({\n graphqlUrl,\n liveRatesUrl,\n instrument,\n division,\n locale,\n theme,\n isParamError,\n removePadding,\n size,\n}: InstrumentLiveRateConfig) => {\n const client = new ApolloClient({\n uri: graphqlUrl,\n cache: new InMemoryCache(),\n });\n\n const divisionCode = division === Division.Opt ? Division.Ogm : division;\n const dataSource = divisionCode === Division.Ogm ? 'MT5' : 'V20';\n\n return (\n <
|
|
1
|
+
{"version":3,"file":"InstrumentLiveRateWidget.js","names":["React","Suspense","ApolloClient","InMemoryCache","ApolloProvider","LocaleProvider","LiveRatesProvider","ThemeProvider","getLocale","translations","Division","ValidationWrapper","InstrumentLiveRateWidget","_ref","graphqlUrl","liveRatesUrl","instrument","division","locale","theme","isParamError","removePadding","size","client","uri","cache","divisionCode","Opt","Ogm","dataSource","createElement","url","options"],"sources":["../../../src/InstrumentLiveRateWidget/InstrumentLiveRateWidget.tsx"],"sourcesContent":["import React, { Suspense } from 'react';\nimport { ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';\nimport { LocaleProvider } from '@oanda/mono-i18n';\nimport {\n LiveRatesProvider, ThemeProvider, getLocale,\n} from '@oanda/labs-widget-common';\nimport { translations } from '../translations';\nimport { Division, InstrumentLiveRateConfig } from './types';\nimport { ValidationWrapper } from './ValidationWrapper';\n\nconst InstrumentLiveRateWidget = ({\n graphqlUrl,\n liveRatesUrl,\n instrument,\n division,\n locale,\n theme,\n isParamError,\n removePadding,\n size,\n}: InstrumentLiveRateConfig) => {\n const client = new ApolloClient({\n uri: graphqlUrl,\n cache: new InMemoryCache(),\n });\n\n const divisionCode = division === Division.Opt ? Division.Ogm : division;\n const dataSource = divisionCode === Division.Ogm ? 'MT5' : 'V20';\n\n return (\n <LocaleProvider locale={getLocale(locale)} translations={translations}>\n <LiveRatesProvider\n url={liveRatesUrl}\n options={{ divisionCode, dataSource }}\n >\n <ApolloProvider client={client}>\n <Suspense>\n <ThemeProvider removePadding={removePadding} theme={theme}>\n <ValidationWrapper\n size={size}\n instrument={instrument}\n division={division}\n isParamError={isParamError}\n />\n </ThemeProvider>\n </Suspense>\n </ApolloProvider>\n </LiveRatesProvider>\n </LocaleProvider>\n );\n};\n\nexport { InstrumentLiveRateWidget };\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,YAAY,EAAEC,aAAa,EAAEC,cAAc,QAAQ,gBAAgB;AAC5E,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SACEC,iBAAiB,EAAEC,aAAa,EAAEC,SAAS,QACtC,2BAA2B;AAClC,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,QAAQ,QAAkC,SAAS;AAC5D,SAASC,iBAAiB,QAAQ,qBAAqB;AAEvD,MAAMC,wBAAwB,GAAGC,IAAA,IAUD;EAAA,IAVE;IAChCC,UAAU;IACVC,YAAY;IACZC,UAAU;IACVC,QAAQ;IACRC,MAAM;IACNC,KAAK;IACLC,YAAY;IACZC,aAAa;IACbC;EACwB,CAAC,GAAAT,IAAA;EACzB,MAAMU,MAAM,GAAG,IAAIrB,YAAY,CAAC;IAC9BsB,GAAG,EAAEV,UAAU;IACfW,KAAK,EAAE,IAAItB,aAAa,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMuB,YAAY,GAAGT,QAAQ,KAAKP,QAAQ,CAACiB,GAAG,GAAGjB,QAAQ,CAACkB,GAAG,GAAGX,QAAQ;EACxE,MAAMY,UAAU,GAAGH,YAAY,KAAKhB,QAAQ,CAACkB,GAAG,GAAG,KAAK,GAAG,KAAK;EAEhE,OACE5B,KAAA,CAAA8B,aAAA,CAACzB,cAAc;IAACa,MAAM,EAAEV,SAAS,CAACU,MAAM,CAAE;IAACT,YAAY,EAAEA;EAAa,GACpET,KAAA,CAAA8B,aAAA,CAACxB,iBAAiB;IAChByB,GAAG,EAAEhB,YAAa;IAClBiB,OAAO,EAAE;MAAEN,YAAY;MAAEG;IAAW;EAAE,GAEtC7B,KAAA,CAAA8B,aAAA,CAAC1B,cAAc;IAACmB,MAAM,EAAEA;EAAO,GAC7BvB,KAAA,CAAA8B,aAAA,CAAC7B,QAAQ,QACPD,KAAA,CAAA8B,aAAA,CAACvB,aAAa;IAACc,aAAa,EAAEA,aAAc;IAACF,KAAK,EAAEA;EAAM,GACxDnB,KAAA,CAAA8B,aAAA,CAACnB,iBAAiB;IAChBW,IAAI,EAAEA,IAAK;IACXN,UAAU,EAAEA,UAAW;IACvBC,QAAQ,EAAEA,QAAS;IACnBG,YAAY,EAAEA;EAAa,CAC5B,CACY,CACP,CACI,CACC,CACL,CAAC;AAErB,CAAC;AAED,SAASR,wBAAwB","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useContext } from 'react';
|
|
2
2
|
import { useSuspenseQuery } from '@apollo/client';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
|
-
import { Error } from '@oanda/labs-widget-common';
|
|
4
|
+
import { Error, ThemeContext } from '@oanda/labs-widget-common';
|
|
5
5
|
import { getRecords } from './utils';
|
|
6
6
|
import { validateInstruments } from '../gql/validateInstruments';
|
|
7
7
|
import { Main } from './Main';
|
|
@@ -12,6 +12,9 @@ const ValidationWrapper = _ref => {
|
|
|
12
12
|
size: widgetSize,
|
|
13
13
|
isParamError
|
|
14
14
|
} = _ref;
|
|
15
|
+
const {
|
|
16
|
+
size
|
|
17
|
+
} = useContext(ThemeContext);
|
|
15
18
|
const {
|
|
16
19
|
data,
|
|
17
20
|
error
|
|
@@ -24,7 +27,7 @@ const ValidationWrapper = _ref => {
|
|
|
24
27
|
errorPolicy: 'all'
|
|
25
28
|
});
|
|
26
29
|
const showError = !!error || isParamError;
|
|
27
|
-
return React.createElement(React.Fragment, null, React.createElement("div", {
|
|
30
|
+
return React.createElement(React.Fragment, null, size && React.createElement("div", {
|
|
28
31
|
className: "lw-flex lw-border lw-border-solid lw-border-border-primary lw-px-4 lw-text-sm lw-tracking-normal lw-text-text-primary"
|
|
29
32
|
}, !showError && React.createElement("div", {
|
|
30
33
|
className: classnames({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationWrapper.js","names":["React","useSuspenseQuery","classnames","Error","getRecords","validateInstruments","Main","ValidationWrapper","_ref","instrument","division","size","widgetSize","isParamError","data","error","variables","instruments","fetchPolicy","errorPolicy","showError","createElement","Fragment","className","record"],"sources":["../../../src/InstrumentLiveRateWidget/ValidationWrapper.tsx"],"sourcesContent":["import React from 'react';\nimport { useSuspenseQuery } from '@apollo/client';\nimport classnames from 'classnames';\nimport { Error } from '@oanda/labs-widget-common';\nimport { getRecords } from './utils';\nimport { ValidationWrapperProps } from './types';\nimport { validateInstruments } from '../gql/validateInstruments';\nimport { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';\nimport { Main } from './Main';\n\nconst ValidationWrapper = ({\n instrument,\n division,\n size: widgetSize,\n isParamError,\n}: ValidationWrapperProps) => {\n const { data, error } = useSuspenseQuery<\n ValidateInstrumentsQuery,\n ValidateInstrumentsQueryVariables\n >(validateInstruments, {\n variables: {\n instruments: [instrument],\n division,\n },\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n const showError = !!error || isParamError;\n\n return (\n <>\n <div\n
|
|
1
|
+
{"version":3,"file":"ValidationWrapper.js","names":["React","useContext","useSuspenseQuery","classnames","Error","ThemeContext","getRecords","validateInstruments","Main","ValidationWrapper","_ref","instrument","division","size","widgetSize","isParamError","data","error","variables","instruments","fetchPolicy","errorPolicy","showError","createElement","Fragment","className","record"],"sources":["../../../src/InstrumentLiveRateWidget/ValidationWrapper.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useSuspenseQuery } from '@apollo/client';\nimport classnames from 'classnames';\nimport { Error, ThemeContext } from '@oanda/labs-widget-common';\nimport { getRecords } from './utils';\nimport { ValidationWrapperProps } from './types';\nimport { validateInstruments } from '../gql/validateInstruments';\nimport { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';\nimport { Main } from './Main';\n\nconst ValidationWrapper = ({\n instrument,\n division,\n size: widgetSize,\n isParamError,\n}: ValidationWrapperProps) => {\n const { size } = useContext(ThemeContext);\n const { data, error } = useSuspenseQuery<\n ValidateInstrumentsQuery,\n ValidateInstrumentsQueryVariables\n >(validateInstruments, {\n variables: {\n instruments: [instrument],\n division,\n },\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n const showError = !!error || isParamError;\n\n return (\n <>\n {size && (\n <div\n className=\"lw-flex lw-border lw-border-solid lw-border-border-primary lw-px-4 lw-text-sm lw-tracking-normal lw-text-text-primary\"\n >\n {!showError && (\n <div className={classnames({\n 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Main\n size={widgetSize}\n division={division}\n record={getRecords(data!)?.[0]!}\n />\n </div>\n )}\n {showError && (\n <div className={classnames('lw-flex lw-w-full lw-items-center', {\n 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Error />\n </div>\n )}\n </div>\n )}\n </>\n );\n};\n\nexport { ValidationWrapper };\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,gBAAgB,QAAQ,gBAAgB;AACjD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,KAAK,EAAEC,YAAY,QAAQ,2BAA2B;AAC/D,SAASC,UAAU,QAAQ,SAAS;AAEpC,SAASC,mBAAmB,QAAQ,4BAA4B;AAEhE,SAASC,IAAI,QAAQ,QAAQ;AAE7B,MAAMC,iBAAiB,GAAGC,IAAA,IAKI;EAAA,IALH;IACzBC,UAAU;IACVC,QAAQ;IACRC,IAAI,EAAEC,UAAU;IAChBC;EACsB,CAAC,GAAAL,IAAA;EACvB,MAAM;IAAEG;EAAK,CAAC,GAAGZ,UAAU,CAACI,YAAY,CAAC;EACzC,MAAM;IAAEW,IAAI;IAAEC;EAAM,CAAC,GAAGf,gBAAgB,CAGtCK,mBAAmB,EAAE;IACrBW,SAAS,EAAE;MACTC,WAAW,EAAE,CAACR,UAAU,CAAC;MACzBC;IACF,CAAC;IACDQ,WAAW,EAAE,cAAc;IAC3BC,WAAW,EAAE;EACf,CAAC,CAAC;EAEF,MAAMC,SAAS,GAAG,CAAC,CAACL,KAAK,IAAIF,YAAY;EAEzC,OACEf,KAAA,CAAAuB,aAAA,CAAAvB,KAAA,CAAAwB,QAAA,QACGX,IAAI,IACHb,KAAA,CAAAuB,aAAA;IACEE,SAAS,EAAC;EAAuH,GAEhI,CAACH,SAAS,IACXtB,KAAA,CAAAuB,aAAA;IAAKE,SAAS,EAAEtB,UAAU,CAAC;MACzB,aAAa,EAAEW,UAAU,KAAK,SAAS;MACvC,aAAa,EAAEA,UAAU,KAAK;IAChC,CAAC;EAAE,GAEDd,KAAA,CAAAuB,aAAA,CAACf,IAAI;IACHK,IAAI,EAAEC,UAAW;IACjBF,QAAQ,EAAEA,QAAS;IACnBc,MAAM,EAAEpB,UAAU,CAACU,IAAK,CAAC,GAAG,CAAC;EAAG,CACjC,CACE,CACJ,EACAM,SAAS,IACVtB,KAAA,CAAAuB,aAAA;IAAKE,SAAS,EAAEtB,UAAU,CAAC,mCAAmC,EAAE;MAC9D,aAAa,EAAEW,UAAU,KAAK,SAAS;MACvC,aAAa,EAAEA,UAAU,KAAK;IAChC,CAAC;EAAE,GAEDd,KAAA,CAAAuB,aAAA,CAACnB,KAAK,MAAE,CACL,CAEF,CAEP,CAAC;AAEP,CAAC;AAED,SAASK,iBAAiB","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oanda/labs-instrument-live-rate-widget",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.19",
|
|
4
4
|
"description": "Labs Instrument Live Rate 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.158",
|
|
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": "8f5d738e780fe23f90f0b433efc83366b5a238d6"
|
|
24
24
|
}
|
|
@@ -28,25 +28,25 @@ const InstrumentLiveRateWidget = ({
|
|
|
28
28
|
const dataSource = divisionCode === Division.Ogm ? 'MT5' : 'V20';
|
|
29
29
|
|
|
30
30
|
return (
|
|
31
|
-
<
|
|
32
|
-
<
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
>
|
|
37
|
-
<
|
|
38
|
-
<
|
|
31
|
+
<LocaleProvider locale={getLocale(locale)} translations={translations}>
|
|
32
|
+
<LiveRatesProvider
|
|
33
|
+
url={liveRatesUrl}
|
|
34
|
+
options={{ divisionCode, dataSource }}
|
|
35
|
+
>
|
|
36
|
+
<ApolloProvider client={client}>
|
|
37
|
+
<Suspense>
|
|
38
|
+
<ThemeProvider removePadding={removePadding} theme={theme}>
|
|
39
39
|
<ValidationWrapper
|
|
40
40
|
size={size}
|
|
41
41
|
instrument={instrument}
|
|
42
42
|
division={division}
|
|
43
43
|
isParamError={isParamError}
|
|
44
44
|
/>
|
|
45
|
-
</
|
|
46
|
-
</
|
|
47
|
-
</
|
|
48
|
-
</
|
|
49
|
-
</
|
|
45
|
+
</ThemeProvider>
|
|
46
|
+
</Suspense>
|
|
47
|
+
</ApolloProvider>
|
|
48
|
+
</LiveRatesProvider>
|
|
49
|
+
</LocaleProvider>
|
|
50
50
|
);
|
|
51
51
|
};
|
|
52
52
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useContext } from 'react';
|
|
2
2
|
import { useSuspenseQuery } from '@apollo/client';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
|
-
import { Error } from '@oanda/labs-widget-common';
|
|
4
|
+
import { Error, ThemeContext } from '@oanda/labs-widget-common';
|
|
5
5
|
import { getRecords } from './utils';
|
|
6
6
|
import { ValidationWrapperProps } from './types';
|
|
7
7
|
import { validateInstruments } from '../gql/validateInstruments';
|
|
@@ -14,6 +14,7 @@ const ValidationWrapper = ({
|
|
|
14
14
|
size: widgetSize,
|
|
15
15
|
isParamError,
|
|
16
16
|
}: ValidationWrapperProps) => {
|
|
17
|
+
const { size } = useContext(ThemeContext);
|
|
17
18
|
const { data, error } = useSuspenseQuery<
|
|
18
19
|
ValidateInstrumentsQuery,
|
|
19
20
|
ValidateInstrumentsQueryVariables
|
|
@@ -30,10 +31,11 @@ const ValidationWrapper = ({
|
|
|
30
31
|
|
|
31
32
|
return (
|
|
32
33
|
<>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
{size && (
|
|
35
|
+
<div
|
|
36
|
+
className="lw-flex lw-border lw-border-solid lw-border-border-primary lw-px-4 lw-text-sm lw-tracking-normal lw-text-text-primary"
|
|
37
|
+
>
|
|
38
|
+
{!showError && (
|
|
37
39
|
<div className={classnames({
|
|
38
40
|
'lw-h-[82px]': widgetSize !== 'compact',
|
|
39
41
|
'lw-h-[54px]': widgetSize === 'compact',
|
|
@@ -45,8 +47,8 @@ const ValidationWrapper = ({
|
|
|
45
47
|
record={getRecords(data!)?.[0]!}
|
|
46
48
|
/>
|
|
47
49
|
</div>
|
|
48
|
-
|
|
49
|
-
|
|
50
|
+
)}
|
|
51
|
+
{showError && (
|
|
50
52
|
<div className={classnames('lw-flex lw-w-full lw-items-center', {
|
|
51
53
|
'lw-h-[82px]': widgetSize !== 'compact',
|
|
52
54
|
'lw-h-[54px]': widgetSize === 'compact',
|
|
@@ -54,8 +56,9 @@ const ValidationWrapper = ({
|
|
|
54
56
|
>
|
|
55
57
|
<Error />
|
|
56
58
|
</div>
|
|
57
|
-
|
|
58
|
-
|
|
59
|
+
)}
|
|
60
|
+
</div>
|
|
61
|
+
)}
|
|
59
62
|
</>
|
|
60
63
|
);
|
|
61
64
|
};
|