@oanda/labs-ticker-tape-widget 1.0.27 → 1.0.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,242 @@
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.29 (2024-12-11)
7
+
8
+
9
+
10
+ ## 1.0.172 (2024-11-29)
11
+
12
+
13
+
14
+ ## 1.0.171 (2024-11-28)
15
+
16
+
17
+
18
+ ## 1.0.170 (2024-11-28)
19
+
20
+
21
+
22
+ ## 1.0.169 (2024-11-20)
23
+
24
+
25
+
26
+ ## 1.0.168 (2024-11-19)
27
+
28
+
29
+
30
+ ## 1.0.167 (2024-10-14)
31
+
32
+
33
+
34
+ ## 1.0.166 (2024-10-07)
35
+
36
+
37
+
38
+ ## 1.0.165 (2024-10-03)
39
+
40
+
41
+
42
+ ## 1.0.164 (2024-09-26)
43
+
44
+
45
+
46
+ ## 1.0.163 (2024-09-18)
47
+
48
+
49
+
50
+ ## 1.0.162 (2024-09-12)
51
+
52
+
53
+
54
+ ## 1.0.161 (2024-09-11)
55
+
56
+
57
+
58
+ ## 1.0.160 (2024-09-10)
59
+
60
+
61
+
62
+ ## 1.0.159 (2024-09-09)
63
+
64
+
65
+
66
+ ## 1.0.158 (2024-09-04)
67
+
68
+
69
+
70
+ ## 1.0.157 (2024-09-04)
71
+
72
+
73
+
74
+ ## 1.0.156 (2024-09-02)
75
+
76
+
77
+
78
+ ## 1.0.155 (2024-08-29)
79
+
80
+
81
+
82
+ ## 1.0.154 (2024-08-29)
83
+
84
+
85
+
86
+ ## 1.0.153 (2024-08-23)
87
+
88
+
89
+
90
+ ## 1.0.152 (2024-08-23)
91
+
92
+
93
+
94
+ ## 1.0.151 (2024-08-20)
95
+
96
+
97
+
98
+ ## 1.0.150 (2024-08-19)
99
+
100
+
101
+
102
+ ## 1.0.149 (2024-08-07)
103
+
104
+
105
+
106
+ ## 1.0.148 (2024-08-01)
107
+
108
+
109
+
110
+ ## 1.0.147 (2024-08-01)
111
+
112
+
113
+
114
+ ## 1.0.146 (2024-07-26)
115
+
116
+
117
+
118
+ ## 1.0.145 (2024-07-25)
119
+
120
+ **Note:** Version bump only for package @oanda/labs-ticker-tape-widget
121
+
122
+
123
+
124
+
125
+
126
+ ## 1.0.28 (2024-11-29)
127
+
128
+
129
+
130
+ ## 1.0.171 (2024-11-28)
131
+
132
+
133
+
134
+ ## 1.0.170 (2024-11-28)
135
+
136
+
137
+
138
+ ## 1.0.169 (2024-11-20)
139
+
140
+
141
+
142
+ ## 1.0.168 (2024-11-19)
143
+
144
+
145
+
146
+ ## 1.0.167 (2024-10-14)
147
+
148
+
149
+
150
+ ## 1.0.166 (2024-10-07)
151
+
152
+
153
+
154
+ ## 1.0.165 (2024-10-03)
155
+
156
+
157
+
158
+ ## 1.0.164 (2024-09-26)
159
+
160
+
161
+
162
+ ## 1.0.163 (2024-09-18)
163
+
164
+
165
+
166
+ ## 1.0.162 (2024-09-12)
167
+
168
+
169
+
170
+ ## 1.0.161 (2024-09-11)
171
+
172
+
173
+
174
+ ## 1.0.160 (2024-09-10)
175
+
176
+
177
+
178
+ ## 1.0.159 (2024-09-09)
179
+
180
+
181
+
182
+ ## 1.0.158 (2024-09-04)
183
+
184
+
185
+
186
+ ## 1.0.157 (2024-09-04)
187
+
188
+
189
+
190
+ ## 1.0.156 (2024-09-02)
191
+
192
+
193
+
194
+ ## 1.0.155 (2024-08-29)
195
+
196
+
197
+
198
+ ## 1.0.154 (2024-08-29)
199
+
200
+
201
+
202
+ ## 1.0.153 (2024-08-23)
203
+
204
+
205
+
206
+ ## 1.0.152 (2024-08-23)
207
+
208
+
209
+
210
+ ## 1.0.151 (2024-08-20)
211
+
212
+
213
+
214
+ ## 1.0.150 (2024-08-19)
215
+
216
+
217
+
218
+ ## 1.0.149 (2024-08-07)
219
+
220
+
221
+
222
+ ## 1.0.148 (2024-08-01)
223
+
224
+
225
+
226
+ ## 1.0.147 (2024-08-01)
227
+
228
+
229
+
230
+ ## 1.0.146 (2024-07-26)
231
+
232
+
233
+
234
+ ## 1.0.145 (2024-07-25)
235
+
236
+ **Note:** Version bump only for package @oanda/labs-ticker-tape-widget
237
+
238
+
239
+
240
+
241
+
6
242
  ## 1.0.27 (2024-11-28)
7
243
 
8
244
 
@@ -4,15 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.TickerTapeWidget = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
7
+ var _react = _interopRequireDefault(require("react"));
8
8
  var _client = require("@apollo/client");
9
- var _monoI18n = require("@oanda/mono-i18n");
10
9
  var _labsWidgetCommon = require("@oanda/labs-widget-common");
11
10
  var _translations = require("../translations");
12
11
  var _types = require("./types");
13
12
  var _ValidationWrapper = require("./ValidationWrapper");
14
- 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); }
15
- 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; }
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
14
  const TickerTapeWidget = _ref => {
17
15
  let {
18
16
  graphqlUrl,
@@ -33,32 +31,34 @@ const TickerTapeWidget = _ref => {
33
31
  });
34
32
  const divisionCode = division === _types.Division.Opt ? _types.Division.Ogm : division;
35
33
  const dataSource = divisionCode === _types.Division.Ogm ? 'MT5' : 'V20';
36
- return _react.default.createElement(_monoI18n.LocaleProvider, {
37
- locale: (0, _labsWidgetCommon.getLocale)(locale),
38
- translations: _translations.translations
39
- }, _react.default.createElement(_labsWidgetCommon.LiveRatesProvider, {
40
- url: liveRatesUrl,
41
- options: {
42
- divisionCode,
43
- dataSource
44
- }
45
- }, _react.default.createElement(_client.ApolloProvider, {
46
- client: client
47
- }, _react.default.createElement(_react.Suspense, null, _react.default.createElement(_labsWidgetCommon.ThemeProvider, {
48
- removePadding: removePadding,
34
+ return _react.default.createElement(_labsWidgetCommon.WidgetProvider, {
35
+ withSuspense: true,
36
+ locale: locale,
37
+ translations: _translations.translations,
38
+ client: client,
49
39
  theme: theme,
50
- fitContent: motion === 'none'
51
- }, (0, _labsWidgetCommon.renderComponent)({
52
- Component: _react.default.createElement(_ValidationWrapper.ValidationWrapper, {
53
- size: size,
54
- motion: motion,
55
- instruments: instruments,
56
- division: division,
57
- isParamError: isParamError
58
- }),
59
- logoLink,
60
- linkArea: 'full'
61
- }))))));
40
+ styling: {
41
+ removePadding,
42
+ fitContent: motion === 'none'
43
+ },
44
+ liveRates: {
45
+ url: liveRatesUrl,
46
+ options: {
47
+ divisionCode,
48
+ dataSource
49
+ }
50
+ }
51
+ }, _react.default.createElement(_labsWidgetCommon.WidgetWrapper, {
52
+ logoLink: logoLink,
53
+ linkArea: "full",
54
+ isParamError: isParamError
55
+ }, _react.default.createElement(_ValidationWrapper.ValidationWrapper, {
56
+ size: size,
57
+ motion: motion,
58
+ instruments: instruments,
59
+ division: division,
60
+ isParamError: isParamError
61
+ })));
62
62
  };
63
63
  exports.TickerTapeWidget = TickerTapeWidget;
64
64
  //# sourceMappingURL=TickerTapeWidget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TickerTapeWidget.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","TickerTapeWidget","_ref","graphqlUrl","liveRatesUrl","instruments","division","locale","theme","isParamError","removePadding","size","motion","logoLink","client","ApolloClient","uri","cache","InMemoryCache","divisionCode","Division","Opt","Ogm","dataSource","createElement","LocaleProvider","getLocale","translations","LiveRatesProvider","url","options","ApolloProvider","Suspense","ThemeProvider","fitContent","renderComponent","Component","ValidationWrapper","linkArea","exports"],"sources":["../../../src/TickerTapeWidget/TickerTapeWidget.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, renderComponent,\n} from '@oanda/labs-widget-common';\nimport { translations } from '../translations';\nimport { Division, TickerTapeConfig } from './types';\nimport { ValidationWrapper } from './ValidationWrapper';\n\nconst TickerTapeWidget = ({\n graphqlUrl,\n liveRatesUrl,\n instruments,\n division,\n locale,\n theme,\n isParamError,\n removePadding,\n size,\n motion,\n logoLink,\n}: TickerTapeConfig) => {\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} fitContent={motion === 'none'}>\n {renderComponent({\n Component: <ValidationWrapper\n size={size}\n motion={motion}\n instruments={instruments}\n division={division}\n isParamError={isParamError}\n />,\n logoLink,\n linkArea: 'full',\n })}\n </ThemeProvider>\n </Suspense>\n </ApolloProvider>\n </LiveRatesProvider>\n </LocaleProvider>\n );\n};\n\nexport { TickerTapeWidget };\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAGA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,kBAAA,GAAAN,OAAA;AAAwD,SAAAO,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,SAAAT,wBAAAS,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;AAExD,MAAMW,gBAAgB,GAAGC,IAAA,IAYD;EAAA,IAZE;IACxBC,UAAU;IACVC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,MAAM;IACNC,KAAK;IACLC,YAAY;IACZC,aAAa;IACbC,IAAI;IACJC,MAAM;IACNC;EACgB,CAAC,GAAAX,IAAA;EACjB,MAAMY,MAAM,GAAG,IAAIC,oBAAY,CAAC;IAC9BC,GAAG,EAAEb,UAAU;IACfc,KAAK,EAAE,IAAIC,qBAAa,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMC,YAAY,GAAGb,QAAQ,KAAKc,eAAQ,CAACC,GAAG,GAAGD,eAAQ,CAACE,GAAG,GAAGhB,QAAQ;EACxE,MAAMiB,UAAU,GAAGJ,YAAY,KAAKC,eAAQ,CAACE,GAAG,GAAG,KAAK,GAAG,KAAK;EAEhE,OACElD,MAAA,CAAAe,OAAA,CAAAqC,aAAA,CAAChD,SAAA,CAAAiD,cAAc;IAAClB,MAAM,EAAE,IAAAmB,2BAAS,EAACnB,MAAM,CAAE;IAACoB,YAAY,EAAEA;EAAa,GACpEvD,MAAA,CAAAe,OAAA,CAAAqC,aAAA,CAAC/C,iBAAA,CAAAmD,iBAAiB;IAChBC,GAAG,EAAEzB,YAAa;IAClB0B,OAAO,EAAE;MAAEX,YAAY;MAAEI;IAAW;EAAE,GAEtCnD,MAAA,CAAAe,OAAA,CAAAqC,aAAA,CAACjD,OAAA,CAAAwD,cAAc;IAACjB,MAAM,EAAEA;EAAO,GAC7B1C,MAAA,CAAAe,OAAA,CAAAqC,aAAA,CAACpD,MAAA,CAAA4D,QAAQ,QACP5D,MAAA,CAAAe,OAAA,CAAAqC,aAAA,CAAC/C,iBAAA,CAAAwD,aAAa;IAACvB,aAAa,EAAEA,aAAc;IAACF,KAAK,EAAEA,KAAM;IAAC0B,UAAU,EAAEtB,MAAM,KAAK;EAAO,GACtF,IAAAuB,iCAAe,EAAC;IACfC,SAAS,EAAEhE,MAAA,CAAAe,OAAA,CAAAqC,aAAA,CAAC5C,kBAAA,CAAAyD,iBAAiB;MAC3B1B,IAAI,EAAEA,IAAK;MACXC,MAAM,EAAEA,MAAO;MACfP,WAAW,EAAEA,WAAY;MACzBC,QAAQ,EAAEA,QAAS;MACnBG,YAAY,EAAEA;IAAa,CAC5B,CAAC;IACFI,QAAQ;IACRyB,QAAQ,EAAE;EACZ,CAAC,CACY,CACP,CACI,CACC,CACL,CAAC;AAErB,CAAC;AAACC,OAAA,CAAAtC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"file":"TickerTapeWidget.js","names":["_react","_interopRequireDefault","require","_client","_labsWidgetCommon","_translations","_types","_ValidationWrapper","e","__esModule","default","TickerTapeWidget","_ref","graphqlUrl","liveRatesUrl","instruments","division","locale","theme","isParamError","removePadding","size","motion","logoLink","client","ApolloClient","uri","cache","InMemoryCache","divisionCode","Division","Opt","Ogm","dataSource","createElement","WidgetProvider","withSuspense","translations","styling","fitContent","liveRates","url","options","WidgetWrapper","linkArea","ValidationWrapper","exports"],"sources":["../../../src/TickerTapeWidget/TickerTapeWidget.tsx"],"sourcesContent":["import React from 'react';\nimport { ApolloClient, InMemoryCache } from '@apollo/client';\nimport { WidgetProvider, WidgetWrapper } from '@oanda/labs-widget-common';\nimport { translations } from '../translations';\nimport { Division, TickerTapeConfig } from './types';\nimport { ValidationWrapper } from './ValidationWrapper';\n\nconst TickerTapeWidget = ({\n graphqlUrl,\n liveRatesUrl,\n instruments,\n division,\n locale,\n theme,\n isParamError,\n removePadding,\n size,\n motion,\n logoLink,\n}: TickerTapeConfig) => {\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 <WidgetProvider\n withSuspense\n locale={locale}\n translations={translations}\n client={client}\n theme={theme}\n styling={{\n removePadding,\n fitContent: motion === 'none',\n }}\n liveRates={{\n url: liveRatesUrl,\n options: { divisionCode, dataSource },\n }}\n >\n <WidgetWrapper\n logoLink={logoLink}\n linkArea=\"full\"\n isParamError={isParamError}\n >\n <ValidationWrapper\n size={size}\n motion={motion}\n instruments={instruments}\n division={division}\n isParamError={isParamError}\n />\n </WidgetWrapper>\n </WidgetProvider>\n );\n};\n\nexport { TickerTapeWidget };\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA;AAAwD,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD,MAAMG,gBAAgB,GAAGC,IAAA,IAYD;EAAA,IAZE;IACxBC,UAAU;IACVC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,MAAM;IACNC,KAAK;IACLC,YAAY;IACZC,aAAa;IACbC,IAAI;IACJC,MAAM;IACNC;EACgB,CAAC,GAAAX,IAAA;EACjB,MAAMY,MAAM,GAAG,IAAIC,oBAAY,CAAC;IAC9BC,GAAG,EAAEb,UAAU;IACfc,KAAK,EAAE,IAAIC,qBAAa,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMC,YAAY,GAAGb,QAAQ,KAAKc,eAAQ,CAACC,GAAG,GAAGD,eAAQ,CAACE,GAAG,GAAGhB,QAAQ;EACxE,MAAMiB,UAAU,GAAGJ,YAAY,KAAKC,eAAQ,CAACE,GAAG,GAAG,KAAK,GAAG,KAAK;EAEhE,OACEhC,MAAA,CAAAU,OAAA,CAAAwB,aAAA,CAAC9B,iBAAA,CAAA+B,cAAc;IACbC,YAAY;IACZnB,MAAM,EAAEA,MAAO;IACfoB,YAAY,EAAEA,0BAAa;IAC3Bb,MAAM,EAAEA,MAAO;IACfN,KAAK,EAAEA,KAAM;IACboB,OAAO,EAAE;MACPlB,aAAa;MACbmB,UAAU,EAAEjB,MAAM,KAAK;IACzB,CAAE;IACFkB,SAAS,EAAE;MACTC,GAAG,EAAE3B,YAAY;MACjB4B,OAAO,EAAE;QAAEb,YAAY;QAAEI;MAAW;IACtC;EAAE,GAEFjC,MAAA,CAAAU,OAAA,CAAAwB,aAAA,CAAC9B,iBAAA,CAAAuC,aAAa;IACZpB,QAAQ,EAAEA,QAAS;IACnBqB,QAAQ,EAAC,MAAM;IACfzB,YAAY,EAAEA;EAAa,GAE3BnB,MAAA,CAAAU,OAAA,CAAAwB,aAAA,CAAC3B,kBAAA,CAAAsC,iBAAiB;IAChBxB,IAAI,EAAEA,IAAK;IACXC,MAAM,EAAEA,MAAO;IACfP,WAAW,EAAEA,WAAY;IACzBC,QAAQ,EAAEA,QAAS;IACnBG,YAAY,EAAEA;EAAa,CAC5B,CACY,CACD,CAAC;AAErB,CAAC;AAAC2B,OAAA,CAAAnC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ValidationWrapper = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
7
+ var _react = _interopRequireDefault(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,8 +12,6 @@ var _validateInstruments = require("../gql/validateInstruments");
12
12
  var _Main = require("./Main");
13
13
  var _utils = require("./utils");
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; }
17
15
  const ValidationWrapper = _ref => {
18
16
  let {
19
17
  instruments,
@@ -24,7 +22,7 @@ const ValidationWrapper = _ref => {
24
22
  } = _ref;
25
23
  const {
26
24
  size
27
- } = (0, _react.useContext)(_labsWidgetCommon.ThemeContext);
25
+ } = (0, _labsWidgetCommon.useLayoutProvider)();
28
26
  const {
29
27
  data,
30
28
  error
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationWrapper.js","names":["_react","_interopRequireWildcard","require","_client","_classnames","_interopRequireDefault","_labsWidgetCommon","_validateInstruments","_Main","_utils","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ValidationWrapper","_ref","instruments","division","size","widgetSize","motion","isParamError","useContext","ThemeContext","data","error","useSuspenseQuery","validateInstruments","variables","fetchPolicy","errorPolicy","showError","createElement","Fragment","Main","records","getRecords","className","classnames","Error","exports"],"sources":["../../../src/TickerTapeWidget/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 { validateInstruments } from '../gql/validateInstruments';\nimport { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';\nimport { Main } from './Main';\nimport { getRecords } from './utils';\nimport { ValidationWrapperProps } from './types';\n\nconst ValidationWrapper = ({\n instruments,\n division,\n size: widgetSize,\n motion,\n isParamError,\n}: ValidationWrapperProps) => {\n const { size } = useContext(ThemeContext);\n const { data, error } = useSuspenseQuery<\n ValidateInstrumentsQuery,\n ValidateInstrumentsQueryVariables\n >(validateInstruments, {\n variables: {\n instruments,\n division,\n },\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n const showError = !!error || isParamError;\n\n return (\n <>\n {!showError && size && (\n <Main\n size={widgetSize}\n division={division}\n records={getRecords(data!)!}\n motion={motion}\n />\n )}\n {showError && (\n <div className={classnames('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 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Error />\n </div>\n )}\n </>\n );\n};\n\nexport { ValidationWrapper };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ValidationWrapper.js","names":["_react","_interopRequireDefault","require","_client","_classnames","_labsWidgetCommon","_validateInstruments","_Main","_utils","e","__esModule","default","ValidationWrapper","_ref","instruments","division","size","widgetSize","motion","isParamError","useLayoutProvider","data","error","useSuspenseQuery","validateInstruments","variables","fetchPolicy","errorPolicy","showError","createElement","Fragment","Main","records","getRecords","className","classnames","Error","exports"],"sources":["../../../src/TickerTapeWidget/ValidationWrapper.tsx"],"sourcesContent":["import React from 'react';\nimport { useSuspenseQuery } from '@apollo/client';\nimport classnames from 'classnames';\nimport { Error, useLayoutProvider } from '@oanda/labs-widget-common';\nimport { validateInstruments } from '../gql/validateInstruments';\nimport { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';\nimport { Main } from './Main';\nimport { getRecords } from './utils';\nimport { ValidationWrapperProps } from './types';\n\nconst ValidationWrapper = ({\n instruments,\n division,\n size: widgetSize,\n motion,\n isParamError,\n}: ValidationWrapperProps) => {\n const { size } = useLayoutProvider();\n const { data, error } = useSuspenseQuery<\n ValidateInstrumentsQuery,\n ValidateInstrumentsQueryVariables\n >(validateInstruments, {\n variables: {\n instruments,\n division,\n },\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n const showError = !!error || isParamError;\n\n return (\n <>\n {!showError && size && (\n <Main\n size={widgetSize}\n division={division}\n records={getRecords(data!)!}\n motion={motion}\n />\n )}\n {showError && (\n <div className={classnames('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 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Error />\n </div>\n )}\n </>\n );\n};\n\nexport { ValidationWrapper };\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAJ,OAAA;AAEA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAAqC,SAAAD,uBAAAQ,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGrC,MAAMG,iBAAiB,GAAGC,IAAA,IAMI;EAAA,IANH;IACzBC,WAAW;IACXC,QAAQ;IACRC,IAAI,EAAEC,UAAU;IAChBC,MAAM;IACNC;EACsB,CAAC,GAAAN,IAAA;EACvB,MAAM;IAAEG;EAAK,CAAC,GAAG,IAAAI,mCAAiB,EAAC,CAAC;EACpC,MAAM;IAAEC,IAAI;IAAEC;EAAM,CAAC,GAAG,IAAAC,wBAAgB,EAGtCC,wCAAmB,EAAE;IACrBC,SAAS,EAAE;MACTX,WAAW;MACXC;IACF,CAAC;IACDW,WAAW,EAAE,cAAc;IAC3BC,WAAW,EAAE;EACf,CAAC,CAAC;EAEF,MAAMC,SAAS,GAAG,CAAC,CAACN,KAAK,IAAIH,YAAY;EAEzC,OACEnB,MAAA,CAAAW,OAAA,CAAAkB,aAAA,CAAA7B,MAAA,CAAAW,OAAA,CAAAmB,QAAA,QACG,CAACF,SAAS,IAAIZ,IAAI,IACjBhB,MAAA,CAAAW,OAAA,CAAAkB,aAAA,CAACtB,KAAA,CAAAwB,IAAI;IACHf,IAAI,EAAEC,UAAW;IACjBF,QAAQ,EAAEA,QAAS;IACnBiB,OAAO,EAAE,IAAAC,iBAAU,EAACZ,IAAK,CAAG;IAC5BH,MAAM,EAAEA;EAAO,CAChB,CACF,EACAU,SAAS,IACV5B,MAAA,CAAAW,OAAA,CAAAkB,aAAA;IAAKK,SAAS,EAAE,IAAAC,mBAAU,EAAC,uHAAuH,EAAE;MAClJ,aAAa,EAAElB,UAAU,KAAK,SAAS;MACvC,aAAa,EAAEA,UAAU,KAAK;IAChC,CAAC;EAAE,GAEDjB,MAAA,CAAAW,OAAA,CAAAkB,aAAA,CAACxB,iBAAA,CAAA+B,KAAK,MAAE,CACL,CAEL,CAAC;AAEP,CAAC;AAACC,OAAA,CAAAzB,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -1,7 +1,6 @@
1
- import React, { Suspense } from 'react';
2
- import { ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';
3
- import { LocaleProvider } from '@oanda/mono-i18n';
4
- import { LiveRatesProvider, ThemeProvider, getLocale, renderComponent } from '@oanda/labs-widget-common';
1
+ import React from 'react';
2
+ import { ApolloClient, InMemoryCache } from '@apollo/client';
3
+ import { WidgetProvider, WidgetWrapper } from '@oanda/labs-widget-common';
5
4
  import { translations } from '../translations';
6
5
  import { Division } from './types';
7
6
  import { ValidationWrapper } from './ValidationWrapper';
@@ -25,32 +24,34 @@ const TickerTapeWidget = _ref => {
25
24
  });
26
25
  const divisionCode = division === Division.Opt ? Division.Ogm : division;
27
26
  const dataSource = divisionCode === Division.Ogm ? 'MT5' : 'V20';
28
- return React.createElement(LocaleProvider, {
29
- locale: getLocale(locale),
30
- translations: translations
31
- }, React.createElement(LiveRatesProvider, {
32
- url: liveRatesUrl,
33
- options: {
34
- divisionCode,
35
- dataSource
36
- }
37
- }, React.createElement(ApolloProvider, {
38
- client: client
39
- }, React.createElement(Suspense, null, React.createElement(ThemeProvider, {
40
- removePadding: removePadding,
27
+ return React.createElement(WidgetProvider, {
28
+ withSuspense: true,
29
+ locale: locale,
30
+ translations: translations,
31
+ client: client,
41
32
  theme: theme,
42
- fitContent: motion === 'none'
43
- }, renderComponent({
44
- Component: React.createElement(ValidationWrapper, {
45
- size: size,
46
- motion: motion,
47
- instruments: instruments,
48
- division: division,
49
- isParamError: isParamError
50
- }),
51
- logoLink,
52
- linkArea: 'full'
53
- }))))));
33
+ styling: {
34
+ removePadding,
35
+ fitContent: motion === 'none'
36
+ },
37
+ liveRates: {
38
+ url: liveRatesUrl,
39
+ options: {
40
+ divisionCode,
41
+ dataSource
42
+ }
43
+ }
44
+ }, React.createElement(WidgetWrapper, {
45
+ logoLink: logoLink,
46
+ linkArea: "full",
47
+ isParamError: isParamError
48
+ }, React.createElement(ValidationWrapper, {
49
+ size: size,
50
+ motion: motion,
51
+ instruments: instruments,
52
+ division: division,
53
+ isParamError: isParamError
54
+ })));
54
55
  };
55
56
  export { TickerTapeWidget };
56
57
  //# sourceMappingURL=TickerTapeWidget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TickerTapeWidget.js","names":["React","Suspense","ApolloClient","InMemoryCache","ApolloProvider","LocaleProvider","LiveRatesProvider","ThemeProvider","getLocale","renderComponent","translations","Division","ValidationWrapper","TickerTapeWidget","_ref","graphqlUrl","liveRatesUrl","instruments","division","locale","theme","isParamError","removePadding","size","motion","logoLink","client","uri","cache","divisionCode","Opt","Ogm","dataSource","createElement","url","options","fitContent","Component","linkArea"],"sources":["../../../src/TickerTapeWidget/TickerTapeWidget.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, renderComponent,\n} from '@oanda/labs-widget-common';\nimport { translations } from '../translations';\nimport { Division, TickerTapeConfig } from './types';\nimport { ValidationWrapper } from './ValidationWrapper';\n\nconst TickerTapeWidget = ({\n graphqlUrl,\n liveRatesUrl,\n instruments,\n division,\n locale,\n theme,\n isParamError,\n removePadding,\n size,\n motion,\n logoLink,\n}: TickerTapeConfig) => {\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} fitContent={motion === 'none'}>\n {renderComponent({\n Component: <ValidationWrapper\n size={size}\n motion={motion}\n instruments={instruments}\n division={division}\n isParamError={isParamError}\n />,\n logoLink,\n linkArea: 'full',\n })}\n </ThemeProvider>\n </Suspense>\n </ApolloProvider>\n </LiveRatesProvider>\n </LocaleProvider>\n );\n};\n\nexport { TickerTapeWidget };\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,EAAEC,eAAe,QACvD,2BAA2B;AAClC,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,QAAQ,QAA0B,SAAS;AACpD,SAASC,iBAAiB,QAAQ,qBAAqB;AAEvD,MAAMC,gBAAgB,GAAGC,IAAA,IAYD;EAAA,IAZE;IACxBC,UAAU;IACVC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,MAAM;IACNC,KAAK;IACLC,YAAY;IACZC,aAAa;IACbC,IAAI;IACJC,MAAM;IACNC;EACgB,CAAC,GAAAX,IAAA;EACjB,MAAMY,MAAM,GAAG,IAAIxB,YAAY,CAAC;IAC9ByB,GAAG,EAAEZ,UAAU;IACfa,KAAK,EAAE,IAAIzB,aAAa,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAM0B,YAAY,GAAGX,QAAQ,KAAKP,QAAQ,CAACmB,GAAG,GAAGnB,QAAQ,CAACoB,GAAG,GAAGb,QAAQ;EACxE,MAAMc,UAAU,GAAGH,YAAY,KAAKlB,QAAQ,CAACoB,GAAG,GAAG,KAAK,GAAG,KAAK;EAEhE,OACE/B,KAAA,CAAAiC,aAAA,CAAC5B,cAAc;IAACc,MAAM,EAAEX,SAAS,CAACW,MAAM,CAAE;IAACT,YAAY,EAAEA;EAAa,GACpEV,KAAA,CAAAiC,aAAA,CAAC3B,iBAAiB;IAChB4B,GAAG,EAAElB,YAAa;IAClBmB,OAAO,EAAE;MAAEN,YAAY;MAAEG;IAAW;EAAE,GAEtChC,KAAA,CAAAiC,aAAA,CAAC7B,cAAc;IAACsB,MAAM,EAAEA;EAAO,GAC7B1B,KAAA,CAAAiC,aAAA,CAAChC,QAAQ,QACPD,KAAA,CAAAiC,aAAA,CAAC1B,aAAa;IAACe,aAAa,EAAEA,aAAc;IAACF,KAAK,EAAEA,KAAM;IAACgB,UAAU,EAAEZ,MAAM,KAAK;EAAO,GACtFf,eAAe,CAAC;IACf4B,SAAS,EAAErC,KAAA,CAAAiC,aAAA,CAACrB,iBAAiB;MAC3BW,IAAI,EAAEA,IAAK;MACXC,MAAM,EAAEA,MAAO;MACfP,WAAW,EAAEA,WAAY;MACzBC,QAAQ,EAAEA,QAAS;MACnBG,YAAY,EAAEA;IAAa,CAC5B,CAAC;IACFI,QAAQ;IACRa,QAAQ,EAAE;EACZ,CAAC,CACY,CACP,CACI,CACC,CACL,CAAC;AAErB,CAAC;AAED,SAASzB,gBAAgB","ignoreList":[]}
1
+ {"version":3,"file":"TickerTapeWidget.js","names":["React","ApolloClient","InMemoryCache","WidgetProvider","WidgetWrapper","translations","Division","ValidationWrapper","TickerTapeWidget","_ref","graphqlUrl","liveRatesUrl","instruments","division","locale","theme","isParamError","removePadding","size","motion","logoLink","client","uri","cache","divisionCode","Opt","Ogm","dataSource","createElement","withSuspense","styling","fitContent","liveRates","url","options","linkArea"],"sources":["../../../src/TickerTapeWidget/TickerTapeWidget.tsx"],"sourcesContent":["import React from 'react';\nimport { ApolloClient, InMemoryCache } from '@apollo/client';\nimport { WidgetProvider, WidgetWrapper } from '@oanda/labs-widget-common';\nimport { translations } from '../translations';\nimport { Division, TickerTapeConfig } from './types';\nimport { ValidationWrapper } from './ValidationWrapper';\n\nconst TickerTapeWidget = ({\n graphqlUrl,\n liveRatesUrl,\n instruments,\n division,\n locale,\n theme,\n isParamError,\n removePadding,\n size,\n motion,\n logoLink,\n}: TickerTapeConfig) => {\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 <WidgetProvider\n withSuspense\n locale={locale}\n translations={translations}\n client={client}\n theme={theme}\n styling={{\n removePadding,\n fitContent: motion === 'none',\n }}\n liveRates={{\n url: liveRatesUrl,\n options: { divisionCode, dataSource },\n }}\n >\n <WidgetWrapper\n logoLink={logoLink}\n linkArea=\"full\"\n isParamError={isParamError}\n >\n <ValidationWrapper\n size={size}\n motion={motion}\n instruments={instruments}\n division={division}\n isParamError={isParamError}\n />\n </WidgetWrapper>\n </WidgetProvider>\n );\n};\n\nexport { TickerTapeWidget };\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,EAAEC,aAAa,QAAQ,gBAAgB;AAC5D,SAASC,cAAc,EAAEC,aAAa,QAAQ,2BAA2B;AACzE,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,QAAQ,QAA0B,SAAS;AACpD,SAASC,iBAAiB,QAAQ,qBAAqB;AAEvD,MAAMC,gBAAgB,GAAGC,IAAA,IAYD;EAAA,IAZE;IACxBC,UAAU;IACVC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,MAAM;IACNC,KAAK;IACLC,YAAY;IACZC,aAAa;IACbC,IAAI;IACJC,MAAM;IACNC;EACgB,CAAC,GAAAX,IAAA;EACjB,MAAMY,MAAM,GAAG,IAAIpB,YAAY,CAAC;IAC9BqB,GAAG,EAAEZ,UAAU;IACfa,KAAK,EAAE,IAAIrB,aAAa,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMsB,YAAY,GAAGX,QAAQ,KAAKP,QAAQ,CAACmB,GAAG,GAAGnB,QAAQ,CAACoB,GAAG,GAAGb,QAAQ;EACxE,MAAMc,UAAU,GAAGH,YAAY,KAAKlB,QAAQ,CAACoB,GAAG,GAAG,KAAK,GAAG,KAAK;EAEhE,OACE1B,KAAA,CAAA4B,aAAA,CAACzB,cAAc;IACb0B,YAAY;IACZf,MAAM,EAAEA,MAAO;IACfT,YAAY,EAAEA,YAAa;IAC3BgB,MAAM,EAAEA,MAAO;IACfN,KAAK,EAAEA,KAAM;IACbe,OAAO,EAAE;MACPb,aAAa;MACbc,UAAU,EAAEZ,MAAM,KAAK;IACzB,CAAE;IACFa,SAAS,EAAE;MACTC,GAAG,EAAEtB,YAAY;MACjBuB,OAAO,EAAE;QAAEV,YAAY;QAAEG;MAAW;IACtC;EAAE,GAEF3B,KAAA,CAAA4B,aAAA,CAACxB,aAAa;IACZgB,QAAQ,EAAEA,QAAS;IACnBe,QAAQ,EAAC,MAAM;IACfnB,YAAY,EAAEA;EAAa,GAE3BhB,KAAA,CAAA4B,aAAA,CAACrB,iBAAiB;IAChBW,IAAI,EAAEA,IAAK;IACXC,MAAM,EAAEA,MAAO;IACfP,WAAW,EAAEA,WAAY;IACzBC,QAAQ,EAAEA,QAAS;IACnBG,YAAY,EAAEA;EAAa,CAC5B,CACY,CACD,CAAC;AAErB,CAAC;AAED,SAASR,gBAAgB","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import React, { useContext } from 'react';
1
+ import React from 'react';
2
2
  import { useSuspenseQuery } from '@apollo/client';
3
3
  import classnames from 'classnames';
4
- import { Error, ThemeContext } from '@oanda/labs-widget-common';
4
+ import { Error, useLayoutProvider } from '@oanda/labs-widget-common';
5
5
  import { validateInstruments } from '../gql/validateInstruments';
6
6
  import { Main } from './Main';
7
7
  import { getRecords } from './utils';
@@ -15,7 +15,7 @@ const ValidationWrapper = _ref => {
15
15
  } = _ref;
16
16
  const {
17
17
  size
18
- } = useContext(ThemeContext);
18
+ } = useLayoutProvider();
19
19
  const {
20
20
  data,
21
21
  error
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationWrapper.js","names":["React","useContext","useSuspenseQuery","classnames","Error","ThemeContext","validateInstruments","Main","getRecords","ValidationWrapper","_ref","instruments","division","size","widgetSize","motion","isParamError","data","error","variables","fetchPolicy","errorPolicy","showError","createElement","Fragment","records","className"],"sources":["../../../src/TickerTapeWidget/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 { validateInstruments } from '../gql/validateInstruments';\nimport { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';\nimport { Main } from './Main';\nimport { getRecords } from './utils';\nimport { ValidationWrapperProps } from './types';\n\nconst ValidationWrapper = ({\n instruments,\n division,\n size: widgetSize,\n motion,\n isParamError,\n}: ValidationWrapperProps) => {\n const { size } = useContext(ThemeContext);\n const { data, error } = useSuspenseQuery<\n ValidateInstrumentsQuery,\n ValidateInstrumentsQueryVariables\n >(validateInstruments, {\n variables: {\n instruments,\n division,\n },\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n const showError = !!error || isParamError;\n\n return (\n <>\n {!showError && size && (\n <Main\n size={widgetSize}\n division={division}\n records={getRecords(data!)!}\n motion={motion}\n />\n )}\n {showError && (\n <div className={classnames('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 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Error />\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,mBAAmB,QAAQ,4BAA4B;AAEhE,SAASC,IAAI,QAAQ,QAAQ;AAC7B,SAASC,UAAU,QAAQ,SAAS;AAGpC,MAAMC,iBAAiB,GAAGC,IAAA,IAMI;EAAA,IANH;IACzBC,WAAW;IACXC,QAAQ;IACRC,IAAI,EAAEC,UAAU;IAChBC,MAAM;IACNC;EACsB,CAAC,GAAAN,IAAA;EACvB,MAAM;IAAEG;EAAK,CAAC,GAAGZ,UAAU,CAACI,YAAY,CAAC;EACzC,MAAM;IAAEY,IAAI;IAAEC;EAAM,CAAC,GAAGhB,gBAAgB,CAGtCI,mBAAmB,EAAE;IACrBa,SAAS,EAAE;MACTR,WAAW;MACXC;IACF,CAAC;IACDQ,WAAW,EAAE,cAAc;IAC3BC,WAAW,EAAE;EACf,CAAC,CAAC;EAEF,MAAMC,SAAS,GAAG,CAAC,CAACJ,KAAK,IAAIF,YAAY;EAEzC,OACEhB,KAAA,CAAAuB,aAAA,CAAAvB,KAAA,CAAAwB,QAAA,QACG,CAACF,SAAS,IAAIT,IAAI,IACjBb,KAAA,CAAAuB,aAAA,CAAChB,IAAI;IACHM,IAAI,EAAEC,UAAW;IACjBF,QAAQ,EAAEA,QAAS;IACnBa,OAAO,EAAEjB,UAAU,CAACS,IAAK,CAAG;IAC5BF,MAAM,EAAEA;EAAO,CAChB,CACF,EACAO,SAAS,IACVtB,KAAA,CAAAuB,aAAA;IAAKG,SAAS,EAAEvB,UAAU,CAAC,uHAAuH,EAAE;MAClJ,aAAa,EAAEW,UAAU,KAAK,SAAS;MACvC,aAAa,EAAEA,UAAU,KAAK;IAChC,CAAC;EAAE,GAEDd,KAAA,CAAAuB,aAAA,CAACnB,KAAK,MAAE,CACL,CAEL,CAAC;AAEP,CAAC;AAED,SAASK,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"ValidationWrapper.js","names":["React","useSuspenseQuery","classnames","Error","useLayoutProvider","validateInstruments","Main","getRecords","ValidationWrapper","_ref","instruments","division","size","widgetSize","motion","isParamError","data","error","variables","fetchPolicy","errorPolicy","showError","createElement","Fragment","records","className"],"sources":["../../../src/TickerTapeWidget/ValidationWrapper.tsx"],"sourcesContent":["import React from 'react';\nimport { useSuspenseQuery } from '@apollo/client';\nimport classnames from 'classnames';\nimport { Error, useLayoutProvider } from '@oanda/labs-widget-common';\nimport { validateInstruments } from '../gql/validateInstruments';\nimport { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';\nimport { Main } from './Main';\nimport { getRecords } from './utils';\nimport { ValidationWrapperProps } from './types';\n\nconst ValidationWrapper = ({\n instruments,\n division,\n size: widgetSize,\n motion,\n isParamError,\n}: ValidationWrapperProps) => {\n const { size } = useLayoutProvider();\n const { data, error } = useSuspenseQuery<\n ValidateInstrumentsQuery,\n ValidateInstrumentsQueryVariables\n >(validateInstruments, {\n variables: {\n instruments,\n division,\n },\n fetchPolicy: 'network-only',\n errorPolicy: 'all',\n });\n\n const showError = !!error || isParamError;\n\n return (\n <>\n {!showError && size && (\n <Main\n size={widgetSize}\n division={division}\n records={getRecords(data!)!}\n motion={motion}\n />\n )}\n {showError && (\n <div className={classnames('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 'lw-h-[82px]': widgetSize !== 'compact',\n 'lw-h-[54px]': widgetSize === 'compact',\n })}\n >\n <Error />\n </div>\n )}\n </>\n );\n};\n\nexport { ValidationWrapper };\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,QAAQ,gBAAgB;AACjD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,KAAK,EAAEC,iBAAiB,QAAQ,2BAA2B;AACpE,SAASC,mBAAmB,QAAQ,4BAA4B;AAEhE,SAASC,IAAI,QAAQ,QAAQ;AAC7B,SAASC,UAAU,QAAQ,SAAS;AAGpC,MAAMC,iBAAiB,GAAGC,IAAA,IAMI;EAAA,IANH;IACzBC,WAAW;IACXC,QAAQ;IACRC,IAAI,EAAEC,UAAU;IAChBC,MAAM;IACNC;EACsB,CAAC,GAAAN,IAAA;EACvB,MAAM;IAAEG;EAAK,CAAC,GAAGR,iBAAiB,CAAC,CAAC;EACpC,MAAM;IAAEY,IAAI;IAAEC;EAAM,CAAC,GAAGhB,gBAAgB,CAGtCI,mBAAmB,EAAE;IACrBa,SAAS,EAAE;MACTR,WAAW;MACXC;IACF,CAAC;IACDQ,WAAW,EAAE,cAAc;IAC3BC,WAAW,EAAE;EACf,CAAC,CAAC;EAEF,MAAMC,SAAS,GAAG,CAAC,CAACJ,KAAK,IAAIF,YAAY;EAEzC,OACEf,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAAuB,QAAA,QACG,CAACF,SAAS,IAAIT,IAAI,IACjBZ,KAAA,CAAAsB,aAAA,CAAChB,IAAI;IACHM,IAAI,EAAEC,UAAW;IACjBF,QAAQ,EAAEA,QAAS;IACnBa,OAAO,EAAEjB,UAAU,CAACS,IAAK,CAAG;IAC5BF,MAAM,EAAEA;EAAO,CAChB,CACF,EACAO,SAAS,IACVrB,KAAA,CAAAsB,aAAA;IAAKG,SAAS,EAAEvB,UAAU,CAAC,uHAAuH,EAAE;MAClJ,aAAa,EAAEW,UAAU,KAAK,SAAS;MACvC,aAAa,EAAEA,UAAU,KAAK;IAChC,CAAC;EAAE,GAEDb,KAAA,CAAAsB,aAAA,CAACnB,KAAK,MAAE,CACL,CAEL,CAAC;AAEP,CAAC;AAED,SAASK,iBAAiB","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oanda/labs-ticker-tape-widget",
3
- "version": "1.0.27",
3
+ "version": "1.0.29",
4
4
  "description": "Labs Ticker Tape 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.171",
15
+ "@oanda/labs-widget-common": "^1.0.173",
16
16
  "@oanda/mono-i18n": "10.0.1",
17
17
  "graphql": "16.8.1",
18
18
  "react-fast-marquee": "1.6.5"
@@ -21,5 +21,5 @@
21
21
  "@graphql-codegen/cli": "5.0.0",
22
22
  "@graphql-codegen/client-preset": "4.1.0"
23
23
  },
24
- "gitHead": "f978676624ce706f807cbecc432c67ed809dbf48"
24
+ "gitHead": "67a7801f99f0bab94dd6067a102761f51de786c1"
25
25
  }
@@ -1,9 +1,6 @@
1
- import React, { Suspense } from 'react';
2
- import { ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';
3
- import { LocaleProvider } from '@oanda/mono-i18n';
4
- import {
5
- LiveRatesProvider, ThemeProvider, getLocale, renderComponent,
6
- } from '@oanda/labs-widget-common';
1
+ import React from 'react';
2
+ import { ApolloClient, InMemoryCache } from '@apollo/client';
3
+ import { WidgetProvider, WidgetWrapper } from '@oanda/labs-widget-common';
7
4
  import { translations } from '../translations';
8
5
  import { Division, TickerTapeConfig } from './types';
9
6
  import { ValidationWrapper } from './ValidationWrapper';
@@ -30,30 +27,35 @@ const TickerTapeWidget = ({
30
27
  const dataSource = divisionCode === Division.Ogm ? 'MT5' : 'V20';
31
28
 
32
29
  return (
33
- <LocaleProvider locale={getLocale(locale)} translations={translations}>
34
- <LiveRatesProvider
35
- url={liveRatesUrl}
36
- options={{ divisionCode, dataSource }}
30
+ <WidgetProvider
31
+ withSuspense
32
+ locale={locale}
33
+ translations={translations}
34
+ client={client}
35
+ theme={theme}
36
+ styling={{
37
+ removePadding,
38
+ fitContent: motion === 'none',
39
+ }}
40
+ liveRates={{
41
+ url: liveRatesUrl,
42
+ options: { divisionCode, dataSource },
43
+ }}
44
+ >
45
+ <WidgetWrapper
46
+ logoLink={logoLink}
47
+ linkArea="full"
48
+ isParamError={isParamError}
37
49
  >
38
- <ApolloProvider client={client}>
39
- <Suspense>
40
- <ThemeProvider removePadding={removePadding} theme={theme} fitContent={motion === 'none'}>
41
- {renderComponent({
42
- Component: <ValidationWrapper
43
- size={size}
44
- motion={motion}
45
- instruments={instruments}
46
- division={division}
47
- isParamError={isParamError}
48
- />,
49
- logoLink,
50
- linkArea: 'full',
51
- })}
52
- </ThemeProvider>
53
- </Suspense>
54
- </ApolloProvider>
55
- </LiveRatesProvider>
56
- </LocaleProvider>
50
+ <ValidationWrapper
51
+ size={size}
52
+ motion={motion}
53
+ instruments={instruments}
54
+ division={division}
55
+ isParamError={isParamError}
56
+ />
57
+ </WidgetWrapper>
58
+ </WidgetProvider>
57
59
  );
58
60
  };
59
61
 
@@ -1,7 +1,7 @@
1
- import React, { useContext } from 'react';
1
+ import React from 'react';
2
2
  import { useSuspenseQuery } from '@apollo/client';
3
3
  import classnames from 'classnames';
4
- import { Error, ThemeContext } from '@oanda/labs-widget-common';
4
+ import { Error, useLayoutProvider } from '@oanda/labs-widget-common';
5
5
  import { validateInstruments } from '../gql/validateInstruments';
6
6
  import { ValidateInstrumentsQuery, ValidateInstrumentsQueryVariables } from '../gql/types/graphql';
7
7
  import { Main } from './Main';
@@ -15,7 +15,7 @@ const ValidationWrapper = ({
15
15
  motion,
16
16
  isParamError,
17
17
  }: ValidationWrapperProps) => {
18
- const { size } = useContext(ThemeContext);
18
+ const { size } = useLayoutProvider();
19
19
  const { data, error } = useSuspenseQuery<
20
20
  ValidateInstrumentsQuery,
21
21
  ValidateInstrumentsQueryVariables
@@ -4,7 +4,7 @@
4
4
  import React from 'react';
5
5
  import { render } from '@testing-library/react';
6
6
  import { MockedProvider } from '@apollo/client/testing';
7
- import { ThemeContext, Size } from '@oanda/labs-widget-common';
7
+ import { MockLayoutProvider, LiveRatesProvider } from '@oanda/labs-widget-common';
8
8
  import { Division } from '../src/gql/types/graphql';
9
9
  import { widgetMocks } from './mocks';
10
10
  import { Main } from '../src/TickerTapeWidget/Main';
@@ -17,15 +17,17 @@ describe('Main component', () => {
17
17
  it('should render ticker tape component', async () => {
18
18
  const { findByTestId } = render(
19
19
  <MockedProvider mocks={widgetMocks}>
20
- <ThemeContext.Provider value={{ size: Size.DESKTOP, isDark: true }}>
21
- <Main
22
- division={Division.Oc}
23
- records={[{
24
- instrument: 'EUR_USD',
25
- displayName: 'EUR/USD',
26
- }]}
27
- />
28
- </ThemeContext.Provider>
20
+ <LiveRatesProvider url="oanda.com">
21
+ <MockLayoutProvider>
22
+ <Main
23
+ division={Division.Oc}
24
+ records={[{
25
+ instrument: 'EUR_USD',
26
+ displayName: 'EUR/USD',
27
+ }]}
28
+ />
29
+ </MockLayoutProvider>
30
+ </LiveRatesProvider>
29
31
  </MockedProvider>,
30
32
  );
31
33