@oanda/labs-currency-power-balance-widget 1.0.2 → 1.0.4

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.
Files changed (74) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/main/CurrencyPowerBalanceWidget/ChartWithData.js +2 -1
  3. package/dist/main/CurrencyPowerBalanceWidget/ChartWithData.js.map +1 -1
  4. package/dist/main/CurrencyPowerBalanceWidget/CurrencyPowerBalance.js +8 -2
  5. package/dist/main/CurrencyPowerBalanceWidget/CurrencyPowerBalance.js.map +1 -1
  6. package/dist/main/CurrencyPowerBalanceWidget/Tool.js +7 -2
  7. package/dist/main/CurrencyPowerBalanceWidget/Tool.js.map +1 -1
  8. package/dist/main/CurrencyPowerBalanceWidget/components/Chart/options/formatters.js +1 -1
  9. package/dist/main/CurrencyPowerBalanceWidget/components/Chart/options/formatters.js.map +1 -1
  10. package/dist/main/CurrencyPowerBalanceWidget/components/Chart/options/getOption.js +2 -1
  11. package/dist/main/CurrencyPowerBalanceWidget/components/Chart/options/getOption.js.map +1 -1
  12. package/dist/main/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSelect.js +3 -2
  13. package/dist/main/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSelect.js.map +1 -1
  14. package/dist/main/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSwitch.js +2 -1
  15. package/dist/main/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSwitch.js.map +1 -1
  16. package/dist/main/CurrencyPowerBalanceWidget/config.js +3 -3
  17. package/dist/main/CurrencyPowerBalanceWidget/config.js.map +1 -1
  18. package/dist/main/CurrencyPowerBalanceWidget/render.js +8 -1
  19. package/dist/main/CurrencyPowerBalanceWidget/render.js.map +1 -1
  20. package/dist/main/CurrencyPowerBalanceWidget/types.js.map +1 -1
  21. package/dist/main/translations/index.js +19 -0
  22. package/dist/main/translations/index.js.map +1 -0
  23. package/dist/main/translations/sources/en.json +18 -0
  24. package/dist/main/translations/sources/zh_TW.json +18 -0
  25. package/dist/main/translations/translations.js +25 -0
  26. package/dist/main/translations/translations.js.map +1 -0
  27. package/dist/module/CurrencyPowerBalanceWidget/ChartWithData.js +2 -1
  28. package/dist/module/CurrencyPowerBalanceWidget/ChartWithData.js.map +1 -1
  29. package/dist/module/CurrencyPowerBalanceWidget/CurrencyPowerBalance.js +9 -3
  30. package/dist/module/CurrencyPowerBalanceWidget/CurrencyPowerBalance.js.map +1 -1
  31. package/dist/module/CurrencyPowerBalanceWidget/Tool.js +7 -2
  32. package/dist/module/CurrencyPowerBalanceWidget/Tool.js.map +1 -1
  33. package/dist/module/CurrencyPowerBalanceWidget/components/Chart/options/formatters.js +1 -1
  34. package/dist/module/CurrencyPowerBalanceWidget/components/Chart/options/formatters.js.map +1 -1
  35. package/dist/module/CurrencyPowerBalanceWidget/components/Chart/options/getOption.js +2 -1
  36. package/dist/module/CurrencyPowerBalanceWidget/components/Chart/options/getOption.js.map +1 -1
  37. package/dist/module/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSelect.js +3 -2
  38. package/dist/module/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSelect.js.map +1 -1
  39. package/dist/module/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSwitch.js +2 -1
  40. package/dist/module/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSwitch.js.map +1 -1
  41. package/dist/module/CurrencyPowerBalanceWidget/config.js +3 -3
  42. package/dist/module/CurrencyPowerBalanceWidget/config.js.map +1 -1
  43. package/dist/module/CurrencyPowerBalanceWidget/render.js +8 -1
  44. package/dist/module/CurrencyPowerBalanceWidget/render.js.map +1 -1
  45. package/dist/module/CurrencyPowerBalanceWidget/types.js.map +1 -1
  46. package/dist/module/translations/index.js +12 -0
  47. package/dist/module/translations/index.js.map +1 -0
  48. package/dist/module/translations/sources/en.json +18 -0
  49. package/dist/module/translations/sources/zh_TW.json +18 -0
  50. package/dist/module/translations/translations.js +19 -0
  51. package/dist/module/translations/translations.js.map +1 -0
  52. package/dist/types/CurrencyPowerBalanceWidget/CurrencyPowerBalance.d.ts +1 -1
  53. package/dist/types/CurrencyPowerBalanceWidget/components/Chart/options/getOption.d.ts +1 -0
  54. package/dist/types/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSelect.d.ts +1 -1
  55. package/dist/types/CurrencyPowerBalanceWidget/types.d.ts +3 -0
  56. package/dist/types/translations/index.d.ts +4 -0
  57. package/dist/types/translations/translations.d.ts +18 -0
  58. package/lokalise.config.json +18 -0
  59. package/package.json +4 -3
  60. package/src/CurrencyPowerBalanceWidget/ChartWithData.tsx +1 -0
  61. package/src/CurrencyPowerBalanceWidget/CurrencyPowerBalance.tsx +9 -5
  62. package/src/CurrencyPowerBalanceWidget/Tool.tsx +4 -1
  63. package/src/CurrencyPowerBalanceWidget/components/Chart/options/formatters.ts +1 -1
  64. package/src/CurrencyPowerBalanceWidget/components/Chart/options/getOption.ts +1 -0
  65. package/src/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSelect.tsx +5 -2
  66. package/src/CurrencyPowerBalanceWidget/components/TimeUnitSwitch/TimeUnitSwitch.tsx +1 -0
  67. package/src/CurrencyPowerBalanceWidget/config.ts +3 -3
  68. package/src/CurrencyPowerBalanceWidget/render.tsx +5 -0
  69. package/src/CurrencyPowerBalanceWidget/types.ts +3 -0
  70. package/src/translations/index.ts +13 -0
  71. package/src/translations/sources/en.json +18 -0
  72. package/src/translations/sources/zh_TW.json +18 -0
  73. package/src/translations/translations.ts +18 -0
  74. package/test/chartFormatters.test.ts +5 -5
@@ -6,6 +6,7 @@ import { CurrencyPowerBalance } from './CurrencyPowerBalance';
6
6
  const {
7
7
  graphqlUrl: configGraphQl,
8
8
  renderElementId: configRenderElementId,
9
+ locale: configLocale,
9
10
  } = window.currencyPowerBalanceWidgetConfig || {};
10
11
 
11
12
  const {
@@ -16,11 +17,14 @@ const currencyPowerBalanceParamsElements = document.querySelectorAll('div[data-c
16
17
 
17
18
  if (currencyPowerBalanceParamsElements.length > 0) {
18
19
  currencyPowerBalanceParamsElements.forEach((element) => {
20
+ const params = element.getAttribute('data-currency-power-balance-params');
19
21
  const mode = element.getAttribute('data-mode');
22
+ const { locale } = JSON.parse(params as string);
20
23
 
21
24
  render(
22
25
  <CurrencyPowerBalance
23
26
  graphqlUrl={graphqlUrl}
27
+ locale={locale}
24
28
  theme={mode as Theme}
25
29
  />,
26
30
  element,
@@ -29,6 +33,7 @@ if (currencyPowerBalanceParamsElements.length > 0) {
29
33
  } else {
30
34
  render(
31
35
  <CurrencyPowerBalance
36
+ locale={configLocale}
32
37
  graphqlUrl={configGraphQl}
33
38
  />,
34
39
  document.getElementById(configRenderElementId),
@@ -1,13 +1,16 @@
1
+ import { Locale } from '@oanda/mono-i18n';
1
2
  import { Theme } from '@oanda/labs-widget-common';
2
3
  import { CurrencyPowerBalanceTimeUnit } from '../gql/types/graphql';
3
4
 
4
5
  export interface CurrencyPowerBalanceConfig {
5
6
  graphqlUrl: string;
7
+ locale: Locale;
6
8
  theme?: Theme;
7
9
  }
8
10
 
9
11
  export interface CurrencyPowerBalanceWrapperConfig extends CurrencyPowerBalanceConfig {
10
12
  renderElementId: string;
13
+ locale: Locale;
11
14
  }
12
15
 
13
16
  export interface ChartWithDataProps {
@@ -0,0 +1,13 @@
1
+ import { Locale, Translations } from '@oanda/mono-i18n';
2
+
3
+ import en from './sources/en.json';
4
+ import zhTW from './sources/zh_TW.json';
5
+
6
+ import { defaultTranslations } from './translations';
7
+
8
+ export type TranslationKey = keyof typeof defaultTranslations;
9
+
10
+ export const translations: Translations = {
11
+ [Locale.en]: { translation: en },
12
+ [Locale.zhTW]: { translation: zhTW },
13
+ };
@@ -0,0 +1,18 @@
1
+ {
2
+ "1_month": "1 month",
3
+ "1_week": "1 week",
4
+ "1m": "1M",
5
+ "1w": "1W",
6
+ "24_hours": "24 hours",
7
+ "24h": "24H",
8
+ "3_months": "3 months",
9
+ "3m": "3M",
10
+ "4_hours": "4 hours",
11
+ "4h": "4H",
12
+ "8_hours": "8 hours",
13
+ "8h": "8H",
14
+ "current_business_day": "Current Business Day",
15
+ "data_unavailable": "Data unavailable",
16
+ "pagination_entries_range": "{{firstItemOnPage}}-{{lastItemOnPage}} of {{itemCount}} entries",
17
+ "previous_business_day": "Previous Business Day"
18
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "1_month": "1 個月",
3
+ "1_week": "1星期",
4
+ "1m": "1M",
5
+ "1w": "1W",
6
+ "24_hours": "24小時",
7
+ "24h": "24H",
8
+ "3_months": "3 個月",
9
+ "3m": "3M",
10
+ "4_hours": "4小時",
11
+ "4h": "4H",
12
+ "8_hours": "8小時",
13
+ "8h": "8H",
14
+ "current_business_day": "目前營業日",
15
+ "data_unavailable": "沒有數據",
16
+ "pagination_entries_range": "{{itemCount}}个挂单中的{{firstItemOnPage}}-{{lastItemOnPage}}",
17
+ "previous_business_day": "前一營業日"
18
+ }
@@ -0,0 +1,18 @@
1
+ export const defaultTranslations = {
2
+ '1_month': '1 month',
3
+ '1_week': '1 week',
4
+ '1m': '1M',
5
+ '1w': '1W',
6
+ '24_hours': '24 hours',
7
+ '24h': '24H',
8
+ '3_months': '3 months',
9
+ '3m': '3M',
10
+ '4_hours': '4 hours',
11
+ '4h': '4H',
12
+ '8_hours': '8 hours',
13
+ '8h': '8H',
14
+ current_business_day: 'Current Business Day',
15
+ data_unavailable: 'Data unavailable',
16
+ pagination_entries_range: '{{firstItemOnPage}}-{{lastItemOnPage}} of {{itemCount}} entries',
17
+ previous_business_day: 'Previous Business Day',
18
+ };
@@ -20,11 +20,11 @@ describe('tooltipFormatter', () => {
20
20
  const element = document.createElement('div');
21
21
  element.innerHTML = tooltipFormatter(values);
22
22
 
23
- expect(element.querySelector('p')).toContainHTML('<p style="margin-bottom:5px;">10/27/2023, 14:00 UTC</p>');
24
- expect(element.querySelectorAll('span')[0]).toContainHTML('<span>Marker 2</span>');
25
- expect(element.querySelectorAll('span')[2]).toContainHTML('<span>-20.23</span>');
26
- expect(element.querySelectorAll('span')[3]).toContainHTML('<span>Marker 1</span>');
27
- expect(element.querySelectorAll('span')[5]).toContainHTML('<span>-30.91</span>');
23
+ expect(element.querySelector('span')).toContainHTML('<span style="margin-bottom:5px;">10/27/2023, 14:00 UTC</span>');
24
+ expect(element.querySelectorAll('span')[1]).toContainHTML('<span>Marker 2</span>');
25
+ expect(element.querySelectorAll('span')[3]).toContainHTML('<span>-20.23</span>');
26
+ expect(element.querySelectorAll('span')[4]).toContainHTML('<span>Marker 1</span>');
27
+ expect(element.querySelectorAll('span')[6]).toContainHTML('<span>-30.91</span>');
28
28
  });
29
29
  });
30
30