@oanda/labs-widget-common 1.0.206 → 1.0.207

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 (70) hide show
  1. package/CHANGELOG.md +816 -0
  2. package/dist/main/components/Table/TableCell.js +3 -1
  3. package/dist/main/components/Table/TableCell.js.map +1 -1
  4. package/dist/main/components/Table/TableHeader.js +24 -11
  5. package/dist/main/components/Table/TableHeader.js.map +1 -1
  6. package/dist/main/components/Table/columns/InstrumentColumn.js +9 -4
  7. package/dist/main/components/Table/columns/InstrumentColumn.js.map +1 -1
  8. package/dist/main/components/Table/types.js.map +1 -1
  9. package/dist/main/components/TableWidget/ColumnRenderer.js +15 -1
  10. package/dist/main/components/TableWidget/ColumnRenderer.js.map +1 -1
  11. package/dist/main/components/TableWidget/DataRecordRow.js +4 -2
  12. package/dist/main/components/TableWidget/DataRecordRow.js.map +1 -1
  13. package/dist/main/components/TableWidget/TableWidget.js +3 -1
  14. package/dist/main/components/TableWidget/TableWidget.js.map +1 -1
  15. package/dist/main/components/TableWidget/index.js +11 -0
  16. package/dist/main/components/TableWidget/index.js.map +1 -1
  17. package/dist/main/components/TableWidget/utils.js +4 -1
  18. package/dist/main/components/TableWidget/utils.js.map +1 -1
  19. package/dist/main/hooks/useLiveRatesQuery.js +5 -8
  20. package/dist/main/hooks/useLiveRatesQuery.js.map +1 -1
  21. package/dist/main/providers/LiveRates/LiveRatesContext.js +4 -1
  22. package/dist/main/providers/LiveRates/LiveRatesContext.js.map +1 -1
  23. package/dist/main/types/dataTypes.js +2 -0
  24. package/dist/main/types/dataTypes.js.map +1 -1
  25. package/dist/module/components/Table/TableCell.js +3 -1
  26. package/dist/module/components/Table/TableCell.js.map +1 -1
  27. package/dist/module/components/Table/TableHeader.js +24 -11
  28. package/dist/module/components/Table/TableHeader.js.map +1 -1
  29. package/dist/module/components/Table/columns/InstrumentColumn.js +9 -4
  30. package/dist/module/components/Table/columns/InstrumentColumn.js.map +1 -1
  31. package/dist/module/components/Table/types.js.map +1 -1
  32. package/dist/module/components/TableWidget/ColumnRenderer.js +15 -1
  33. package/dist/module/components/TableWidget/ColumnRenderer.js.map +1 -1
  34. package/dist/module/components/TableWidget/DataRecordRow.js +4 -2
  35. package/dist/module/components/TableWidget/DataRecordRow.js.map +1 -1
  36. package/dist/module/components/TableWidget/TableWidget.js +3 -1
  37. package/dist/module/components/TableWidget/TableWidget.js.map +1 -1
  38. package/dist/module/components/TableWidget/index.js +1 -0
  39. package/dist/module/components/TableWidget/index.js.map +1 -1
  40. package/dist/module/components/TableWidget/utils.js +4 -1
  41. package/dist/module/components/TableWidget/utils.js.map +1 -1
  42. package/dist/module/hooks/useLiveRatesQuery.js +5 -8
  43. package/dist/module/hooks/useLiveRatesQuery.js.map +1 -1
  44. package/dist/module/providers/LiveRates/LiveRatesContext.js +4 -1
  45. package/dist/module/providers/LiveRates/LiveRatesContext.js.map +1 -1
  46. package/dist/module/types/dataTypes.js +2 -0
  47. package/dist/module/types/dataTypes.js.map +1 -1
  48. package/dist/types/components/Table/columns/InstrumentColumn.d.ts +3 -2
  49. package/dist/types/components/Table/types.d.ts +11 -3
  50. package/dist/types/components/TableWidget/DataRecordRow.d.ts +2 -1
  51. package/dist/types/components/TableWidget/TableWidget.d.ts +2 -1
  52. package/dist/types/components/TableWidget/index.d.ts +1 -0
  53. package/dist/types/components/TableWidget/utils.d.ts +2 -2
  54. package/dist/types/hooks/useLiveRatesQuery.d.ts +1 -1
  55. package/dist/types/providers/LiveRates/LiveRatesContext.d.ts +1 -1
  56. package/dist/types/types/dataTypes.d.ts +3 -1
  57. package/package.json +2 -2
  58. package/src/components/Table/TableCell.tsx +2 -0
  59. package/src/components/Table/TableHeader.tsx +36 -20
  60. package/src/components/Table/columns/InstrumentColumn.tsx +10 -4
  61. package/src/components/Table/types.ts +13 -3
  62. package/src/components/TableWidget/ColumnRenderer.tsx +22 -0
  63. package/src/components/TableWidget/DataRecordRow.tsx +3 -0
  64. package/src/components/TableWidget/TableWidget.tsx +3 -0
  65. package/src/components/TableWidget/index.ts +1 -0
  66. package/src/components/TableWidget/utils.ts +12 -6
  67. package/src/hooks/useLiveRatesQuery.ts +7 -5
  68. package/src/providers/LiveRates/LiveRatesContext.tsx +5 -1
  69. package/src/types/dataTypes.ts +2 -0
  70. package/test/components/Table/Table.test.tsx +4 -4
@@ -22,13 +22,15 @@ const TableCell = _ref => {
22
22
  return _react.default.createElement("td", {
23
23
  className: (0, _classnames.default)(`lw-h-[inherit] lw-p-0 lw-font-sans ${classNames}`, {
24
24
  'lw-text-right': type === 'number',
25
- 'lw-text-left': type === 'text'
25
+ 'lw-text-left': type === 'text',
26
+ 'lw-text-center': type === 'textCentered'
26
27
  }),
27
28
  "data-testid": "table-cell"
28
29
  }, _react.default.createElement("div", {
29
30
  className: (0, _classnames.default)('lw-flex lw-h-[inherit] lw-items-center lw-px-3 lw-py-0', {
30
31
  'lw-justify-end': type === 'number',
31
32
  'lw-justify-start': type === 'text',
33
+ 'lw-justify-center': type === 'textCentered',
32
34
  'lw-pr-7': additionalPaddingRight && !isLoading,
33
35
  'lw-pr-3': !additionalPaddingRight || isLoading
34
36
  })
@@ -1 +1 @@
1
- {"version":3,"file":"TableCell.js","names":["_classnames","_interopRequireDefault","require","_react","_constant","_Loader","e","__esModule","default","TableCell","_ref","type","loaderSize","LoaderSize","md","classNames","children","isError","isLoading","additionalPaddingRight","createElement","className","classnames","Loader","size","CELL_EMPTY_VALUE","exports"],"sources":["../../../../src/components/Table/TableCell.tsx"],"sourcesContent":["import classnames from 'classnames';\nimport React from 'react';\n\nimport { CELL_EMPTY_VALUE } from '../constant';\nimport { Loader, LoaderSize } from '../Loader';\nimport type { TableCellProps } from './types';\n\nconst TableCell = ({\n type = 'number',\n loaderSize = LoaderSize.md,\n classNames = '',\n children,\n isError,\n isLoading,\n additionalPaddingRight = false,\n}: TableCellProps) => (\n <td\n className={classnames(`lw-h-[inherit] lw-p-0 lw-font-sans ${classNames}`, {\n 'lw-text-right': type === 'number',\n 'lw-text-left': type === 'text',\n })}\n data-testid=\"table-cell\"\n >\n <div\n className={classnames(\n 'lw-flex lw-h-[inherit] lw-items-center lw-px-3 lw-py-0',\n {\n 'lw-justify-end': type === 'number',\n 'lw-justify-start': type === 'text',\n 'lw-pr-7': additionalPaddingRight && !isLoading,\n 'lw-pr-3': !additionalPaddingRight || isLoading,\n }\n )}\n >\n {isLoading && <Loader size={loaderSize} />}\n {!isLoading && !isError && children}\n {!isLoading && isError && <span>{CELL_EMPTY_VALUE}</span>}\n </div>\n </td>\n);\n\nexport { TableCell };\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAA+C,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG/C,MAAMG,SAAS,GAAGC,IAAA;EAAA,IAAC;IACjBC,IAAI,GAAG,QAAQ;IACfC,UAAU,GAAGC,kBAAU,CAACC,EAAE;IAC1BC,UAAU,GAAG,EAAE;IACfC,QAAQ;IACRC,OAAO;IACPC,SAAS;IACTC,sBAAsB,GAAG;EACX,CAAC,GAAAT,IAAA;EAAA,OACfP,MAAA,CAAAK,OAAA,CAAAY,aAAA;IACEC,SAAS,EAAE,IAAAC,mBAAU,EAAC,sCAAsCP,UAAU,EAAE,EAAE;MACxE,eAAe,EAAEJ,IAAI,KAAK,QAAQ;MAClC,cAAc,EAAEA,IAAI,KAAK;IAC3B,CAAC,CAAE;IACH,eAAY;EAAY,GAExBR,MAAA,CAAAK,OAAA,CAAAY,aAAA;IACEC,SAAS,EAAE,IAAAC,mBAAU,EACnB,wDAAwD,EACxD;MACE,gBAAgB,EAAEX,IAAI,KAAK,QAAQ;MACnC,kBAAkB,EAAEA,IAAI,KAAK,MAAM;MACnC,SAAS,EAAEQ,sBAAsB,IAAI,CAACD,SAAS;MAC/C,SAAS,EAAE,CAACC,sBAAsB,IAAID;IACxC,CACF;EAAE,GAEDA,SAAS,IAAIf,MAAA,CAAAK,OAAA,CAAAY,aAAA,CAACf,OAAA,CAAAkB,MAAM;IAACC,IAAI,EAAEZ;EAAW,CAAE,CAAC,EACzC,CAACM,SAAS,IAAI,CAACD,OAAO,IAAID,QAAQ,EAClC,CAACE,SAAS,IAAID,OAAO,IAAId,MAAA,CAAAK,OAAA,CAAAY,aAAA,eAAOK,0BAAuB,CACrD,CACH,CAAC;AAAA,CACN;AAACC,OAAA,CAAAjB,SAAA,GAAAA,SAAA","ignoreList":[]}
1
+ {"version":3,"file":"TableCell.js","names":["_classnames","_interopRequireDefault","require","_react","_constant","_Loader","e","__esModule","default","TableCell","_ref","type","loaderSize","LoaderSize","md","classNames","children","isError","isLoading","additionalPaddingRight","createElement","className","classnames","Loader","size","CELL_EMPTY_VALUE","exports"],"sources":["../../../../src/components/Table/TableCell.tsx"],"sourcesContent":["import classnames from 'classnames';\nimport React from 'react';\n\nimport { CELL_EMPTY_VALUE } from '../constant';\nimport { Loader, LoaderSize } from '../Loader';\nimport type { TableCellProps } from './types';\n\nconst TableCell = ({\n type = 'number',\n loaderSize = LoaderSize.md,\n classNames = '',\n children,\n isError,\n isLoading,\n additionalPaddingRight = false,\n}: TableCellProps) => (\n <td\n className={classnames(`lw-h-[inherit] lw-p-0 lw-font-sans ${classNames}`, {\n 'lw-text-right': type === 'number',\n 'lw-text-left': type === 'text',\n 'lw-text-center': type === 'textCentered',\n })}\n data-testid=\"table-cell\"\n >\n <div\n className={classnames(\n 'lw-flex lw-h-[inherit] lw-items-center lw-px-3 lw-py-0',\n {\n 'lw-justify-end': type === 'number',\n 'lw-justify-start': type === 'text',\n 'lw-justify-center': type === 'textCentered',\n 'lw-pr-7': additionalPaddingRight && !isLoading,\n 'lw-pr-3': !additionalPaddingRight || isLoading,\n }\n )}\n >\n {isLoading && <Loader size={loaderSize} />}\n {!isLoading && !isError && children}\n {!isLoading && isError && <span>{CELL_EMPTY_VALUE}</span>}\n </div>\n </td>\n);\n\nexport { TableCell };\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAA+C,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG/C,MAAMG,SAAS,GAAGC,IAAA;EAAA,IAAC;IACjBC,IAAI,GAAG,QAAQ;IACfC,UAAU,GAAGC,kBAAU,CAACC,EAAE;IAC1BC,UAAU,GAAG,EAAE;IACfC,QAAQ;IACRC,OAAO;IACPC,SAAS;IACTC,sBAAsB,GAAG;EACX,CAAC,GAAAT,IAAA;EAAA,OACfP,MAAA,CAAAK,OAAA,CAAAY,aAAA;IACEC,SAAS,EAAE,IAAAC,mBAAU,EAAC,sCAAsCP,UAAU,EAAE,EAAE;MACxE,eAAe,EAAEJ,IAAI,KAAK,QAAQ;MAClC,cAAc,EAAEA,IAAI,KAAK,MAAM;MAC/B,gBAAgB,EAAEA,IAAI,KAAK;IAC7B,CAAC,CAAE;IACH,eAAY;EAAY,GAExBR,MAAA,CAAAK,OAAA,CAAAY,aAAA;IACEC,SAAS,EAAE,IAAAC,mBAAU,EACnB,wDAAwD,EACxD;MACE,gBAAgB,EAAEX,IAAI,KAAK,QAAQ;MACnC,kBAAkB,EAAEA,IAAI,KAAK,MAAM;MACnC,mBAAmB,EAAEA,IAAI,KAAK,cAAc;MAC5C,SAAS,EAAEQ,sBAAsB,IAAI,CAACD,SAAS;MAC/C,SAAS,EAAE,CAACC,sBAAsB,IAAID;IACxC,CACF;EAAE,GAEDA,SAAS,IAAIf,MAAA,CAAAK,OAAA,CAAAY,aAAA,CAACf,OAAA,CAAAkB,MAAM;IAACC,IAAI,EAAEZ;EAAW,CAAE,CAAC,EACzC,CAACM,SAAS,IAAI,CAACD,OAAO,IAAID,QAAQ,EAClC,CAACE,SAAS,IAAID,OAAO,IAAId,MAAA,CAAAK,OAAA,CAAAY,aAAA,eAAOK,0BAAuB,CACrD,CACH,CAAC;AAAA,CACN;AAACC,OAAA,CAAAjB,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.TableHeader = void 0;
7
7
  var _monoI18n = require("@oanda/mono-i18n");
8
- var _classnames = _interopRequireDefault(require("classnames"));
9
8
  var _react = _interopRequireDefault(require("react"));
10
9
  var _providers = require("../../providers");
10
+ var _tailwind = require("../../tailwind");
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  const TableHeader = _ref => {
13
13
  let {
@@ -25,16 +25,29 @@ const TableHeader = _ref => {
25
25
  "data-testid": "table-header"
26
26
  }, _react.default.createElement("tr", {
27
27
  className: "lw-h-11 lw-bg-bg-primary lw-text-text-primary"
28
- }, columns.map((item, index) => _react.default.createElement("th", {
29
- key: `table-header-${item.displayName}`,
30
- className: (0, _classnames.default)('lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold', {
31
- 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,
32
- 'lw-bg-whiteWithShadow': !isDark && !isError && isScrolled && index === 0,
33
- 'lw-bg-bg-primary': isDark && !isError && isScrolled && index === 0
34
- })
35
- }, _react.default.createElement("div", {
36
- className: item.additionalStyles
37
- }, lang(item.displayName))))));
28
+ }, columns.map((_ref2, index) => {
29
+ let {
30
+ displayName,
31
+ additionalStyles: {
32
+ align,
33
+ minWidth,
34
+ paddingRight
35
+ }
36
+ } = _ref2;
37
+ return _react.default.createElement("th", {
38
+ key: `table-header-${displayName}`,
39
+ className: (0, _tailwind.cn)('lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold', {
40
+ 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,
41
+ 'lw-bg-whiteWithShadow': !isDark && !isError && isScrolled && index === 0,
42
+ 'lw-bg-bg-primary': isDark && !isError && isScrolled && index === 0
43
+ })
44
+ }, _react.default.createElement("div", {
45
+ className: (0, _tailwind.cn)(align === 'right' && 'lw-text-right', align === 'left' && 'lw-text-left', align === 'center' && 'lw-text-center', paddingRight && 'lw-pr-4'),
46
+ style: {
47
+ minWidth
48
+ }
49
+ }, lang(displayName)));
50
+ })));
38
51
  };
39
52
  exports.TableHeader = TableHeader;
40
53
  //# sourceMappingURL=TableHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeader.js","names":["_monoI18n","require","_classnames","_interopRequireDefault","_react","_providers","e","__esModule","default","TableHeader","_ref","columns","isScrolled","isError","isDark","useLayoutProvider","lang","useLocale","createElement","className","map","item","index","key","displayName","classNames","additionalStyles","exports"],"sources":["../../../../src/components/Table/TableHeader.tsx"],"sourcesContent":["import { useLocale } from '@oanda/mono-i18n';\nimport classNames from 'classnames';\nimport React from 'react';\n\nimport { useLayoutProvider } from '../../providers';\nimport type { TableHeaderProps } from './types';\n\nconst TableHeader = ({ columns, isScrolled, isError }: TableHeaderProps) => {\n const { isDark } = useLayoutProvider();\n const { lang } = useLocale();\n\n return (\n <thead data-testid=\"table-header\">\n <tr className=\"lw-h-11 lw-bg-bg-primary lw-text-text-primary\">\n {columns.map((item, index) => (\n <th\n key={`table-header-${item.displayName}`}\n className={classNames(\n 'lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold',\n {\n 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,\n 'lw-bg-whiteWithShadow':\n !isDark && !isError && isScrolled && index === 0,\n 'lw-bg-bg-primary':\n isDark && !isError && isScrolled && index === 0,\n }\n )}\n >\n <div className={item.additionalStyles}>\n {lang(item.displayName)}\n </div>\n </th>\n ))}\n </tr>\n </thead>\n );\n};\n\nexport { TableHeader };\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,MAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,UAAA,GAAAJ,OAAA;AAAoD,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGpD,MAAMG,WAAW,GAAGC,IAAA,IAAwD;EAAA,IAAvD;IAAEC,OAAO;IAAEC,UAAU;IAAEC;EAA0B,CAAC,GAAAH,IAAA;EACrE,MAAM;IAAEI;EAAO,CAAC,GAAG,IAAAC,4BAAiB,EAAC,CAAC;EACtC,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,mBAAS,EAAC,CAAC;EAE5B,OACEb,MAAA,CAAAI,OAAA,CAAAU,aAAA;IAAO,eAAY;EAAc,GAC/Bd,MAAA,CAAAI,OAAA,CAAAU,aAAA;IAAIC,SAAS,EAAC;EAA+C,GAC1DR,OAAO,CAACS,GAAG,CAAC,CAACC,IAAI,EAAEC,KAAK,KACvBlB,MAAA,CAAAI,OAAA,CAAAU,aAAA;IACEK,GAAG,EAAE,gBAAgBF,IAAI,CAACG,WAAW,EAAG;IACxCL,SAAS,EAAE,IAAAM,mBAAU,EACnB,6EAA6E,EAC7E;MACE,6BAA6B,EAAE,CAACZ,OAAO,IAAIS,KAAK,KAAK,CAAC;MACtD,uBAAuB,EACrB,CAACR,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIU,KAAK,KAAK,CAAC;MAClD,kBAAkB,EAChBR,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIU,KAAK,KAAK;IAClD,CACF;EAAE,GAEFlB,MAAA,CAAAI,OAAA,CAAAU,aAAA;IAAKC,SAAS,EAAEE,IAAI,CAACK;EAAiB,GACnCV,IAAI,CAACK,IAAI,CAACG,WAAW,CACnB,CACH,CACL,CACC,CACC,CAAC;AAEZ,CAAC;AAACG,OAAA,CAAAlB,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"file":"TableHeader.js","names":["_monoI18n","require","_react","_interopRequireDefault","_providers","_tailwind","e","__esModule","default","TableHeader","_ref","columns","isScrolled","isError","isDark","useLayoutProvider","lang","useLocale","createElement","className","map","_ref2","index","displayName","additionalStyles","align","minWidth","paddingRight","key","cn","style","exports"],"sources":["../../../../src/components/Table/TableHeader.tsx"],"sourcesContent":["import { useLocale } from '@oanda/mono-i18n';\nimport React from 'react';\n\nimport { useLayoutProvider } from '../../providers';\nimport { cn } from '../../tailwind';\nimport type { TableHeaderProps } from './types';\n\nconst TableHeader = ({ columns, isScrolled, isError }: TableHeaderProps) => {\n const { isDark } = useLayoutProvider();\n const { lang } = useLocale();\n\n return (\n <thead data-testid=\"table-header\">\n <tr className=\"lw-h-11 lw-bg-bg-primary lw-text-text-primary\">\n {columns.map(\n (\n {\n displayName,\n additionalStyles: { align, minWidth, paddingRight },\n },\n index\n ) => (\n <th\n key={`table-header-${displayName}`}\n className={cn(\n 'lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold',\n {\n 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,\n 'lw-bg-whiteWithShadow':\n !isDark && !isError && isScrolled && index === 0,\n 'lw-bg-bg-primary':\n isDark && !isError && isScrolled && index === 0,\n }\n )}\n >\n <div\n className={cn(\n align === 'right' && 'lw-text-right',\n align === 'left' && 'lw-text-left',\n align === 'center' && 'lw-text-center',\n paddingRight && 'lw-pr-4'\n )}\n style={{ minWidth }}\n >\n {lang(displayName)}\n </div>\n </th>\n )\n )}\n </tr>\n </thead>\n );\n};\n\nexport { TableHeader };\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAAoC,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGpC,MAAMG,WAAW,GAAGC,IAAA,IAAwD;EAAA,IAAvD;IAAEC,OAAO;IAAEC,UAAU;IAAEC;EAA0B,CAAC,GAAAH,IAAA;EACrE,MAAM;IAAEI;EAAO,CAAC,GAAG,IAAAC,4BAAiB,EAAC,CAAC;EACtC,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,mBAAS,EAAC,CAAC;EAE5B,OACEf,MAAA,CAAAM,OAAA,CAAAU,aAAA;IAAO,eAAY;EAAc,GAC/BhB,MAAA,CAAAM,OAAA,CAAAU,aAAA;IAAIC,SAAS,EAAC;EAA+C,GAC1DR,OAAO,CAACS,GAAG,CACV,CAAAC,KAAA,EAKEC,KAAK;IAAA,IAJL;MACEC,WAAW;MACXC,gBAAgB,EAAE;QAAEC,KAAK;QAAEC,QAAQ;QAAEC;MAAa;IACpD,CAAC,GAAAN,KAAA;IAAA,OAGDnB,MAAA,CAAAM,OAAA,CAAAU,aAAA;MACEU,GAAG,EAAE,gBAAgBL,WAAW,EAAG;MACnCJ,SAAS,EAAE,IAAAU,YAAE,EACX,6EAA6E,EAC7E;QACE,6BAA6B,EAAE,CAAChB,OAAO,IAAIS,KAAK,KAAK,CAAC;QACtD,uBAAuB,EACrB,CAACR,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIU,KAAK,KAAK,CAAC;QAClD,kBAAkB,EAChBR,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIU,KAAK,KAAK;MAClD,CACF;IAAE,GAEFpB,MAAA,CAAAM,OAAA,CAAAU,aAAA;MACEC,SAAS,EAAE,IAAAU,YAAE,EACXJ,KAAK,KAAK,OAAO,IAAI,eAAe,EACpCA,KAAK,KAAK,MAAM,IAAI,cAAc,EAClCA,KAAK,KAAK,QAAQ,IAAI,gBAAgB,EACtCE,YAAY,IAAI,SAClB,CAAE;MACFG,KAAK,EAAE;QAAEJ;MAAS;IAAE,GAEnBV,IAAI,CAACO,WAAW,CACd,CACH,CAAC;EAAA,CAET,CACE,CACC,CAAC;AAEZ,CAAC;AAACQ,OAAA,CAAAtB,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -14,18 +14,23 @@ const InstrumentColumn = _ref => {
14
14
  let {
15
15
  isDark,
16
16
  isScrolled,
17
- tooltipId,
18
17
  isLoading,
19
- displayName
18
+ displayName,
19
+ width,
20
+ tooltipId
20
21
  } = _ref;
21
22
  return _react.default.createElement(_TableCell.TableCell, {
22
23
  key: _types.DataRecordType.INSTRUMENT,
23
- classNames: (0, _tailwind.cn)('lw-font-bold', {
24
+ classNames: (0, _tailwind.cn)('lw-font-bold lw-overflow-hidden', {
24
25
  '[&>*:first-child]:lw-border-r [&>*:first-child]:lw-border-border-primary': isDark && isScrolled
25
26
  }),
26
27
  isLoading: isLoading,
27
28
  type: "text"
28
- }, _react.default.createElement(_Truncate.Truncate, {
29
+ }, width ? _react.default.createElement("div", {
30
+ style: {
31
+ maxWidth: width
32
+ }
33
+ }, displayName) : _react.default.createElement(_Truncate.Truncate, {
29
34
  maxWidth: 130,
30
35
  text: displayName,
31
36
  tooltipId: tooltipId
@@ -1 +1 @@
1
- {"version":3,"file":"InstrumentColumn.js","names":["_react","_interopRequireDefault","require","_tailwind","_types","_Truncate","_TableCell","e","__esModule","default","InstrumentColumn","_ref","isDark","isScrolled","tooltipId","isLoading","displayName","createElement","TableCell","key","DataRecordType","INSTRUMENT","classNames","cn","type","Truncate","maxWidth","text","exports"],"sources":["../../../../../src/components/Table/columns/InstrumentColumn.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cn } from '../../../tailwind';\nimport { DataRecordType } from '../../../types';\nimport { Truncate } from '../../Truncate';\nimport { TableCell } from '../TableCell';\n\ninterface InstrumentColumnProps {\n displayName: string;\n tooltipId: string;\n isLoading: boolean;\n isDark?: boolean;\n isScrolled?: boolean;\n}\n\nexport const InstrumentColumn = ({\n isDark,\n isScrolled,\n tooltipId,\n isLoading,\n displayName,\n}: InstrumentColumnProps) => (\n <TableCell\n key={DataRecordType.INSTRUMENT}\n classNames={cn('lw-font-bold', {\n '[&>*:first-child]:lw-border-r [&>*:first-child]:lw-border-border-primary':\n isDark && isScrolled,\n })}\n isLoading={isLoading}\n type=\"text\"\n >\n <Truncate maxWidth={130} text={displayName} tooltipId={tooltipId} />\n </TableCell>\n);\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAAyC,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAUlC,MAAMG,gBAAgB,GAAGC,IAAA;EAAA,IAAC;IAC/BC,MAAM;IACNC,UAAU;IACVC,SAAS;IACTC,SAAS;IACTC;EACqB,CAAC,GAAAL,IAAA;EAAA,OACtBX,MAAA,CAAAS,OAAA,CAAAQ,aAAA,CAACX,UAAA,CAAAY,SAAS;IACRC,GAAG,EAAEC,qBAAc,CAACC,UAAW;IAC/BC,UAAU,EAAE,IAAAC,YAAE,EAAC,cAAc,EAAE;MAC7B,0EAA0E,EACxEX,MAAM,IAAIC;IACd,CAAC,CAAE;IACHE,SAAS,EAAEA,SAAU;IACrBS,IAAI,EAAC;EAAM,GAEXxB,MAAA,CAAAS,OAAA,CAAAQ,aAAA,CAACZ,SAAA,CAAAoB,QAAQ;IAACC,QAAQ,EAAE,GAAI;IAACC,IAAI,EAAEX,WAAY;IAACF,SAAS,EAAEA;EAAU,CAAE,CAC1D,CAAC;AAAA,CACb;AAACc,OAAA,CAAAlB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"file":"InstrumentColumn.js","names":["_react","_interopRequireDefault","require","_tailwind","_types","_Truncate","_TableCell","e","__esModule","default","InstrumentColumn","_ref","isDark","isScrolled","isLoading","displayName","width","tooltipId","createElement","TableCell","key","DataRecordType","INSTRUMENT","classNames","cn","type","style","maxWidth","Truncate","text","exports"],"sources":["../../../../../src/components/Table/columns/InstrumentColumn.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cn } from '../../../tailwind';\nimport { DataRecordType } from '../../../types';\nimport { Truncate } from '../../Truncate';\nimport { TableCell } from '../TableCell';\n\ninterface InstrumentColumnProps {\n displayName: string;\n isLoading: boolean;\n isDark?: boolean;\n isScrolled?: boolean;\n width?: string;\n tooltipId: string;\n}\n\nexport const InstrumentColumn = ({\n isDark,\n isScrolled,\n isLoading,\n displayName,\n width,\n tooltipId,\n}: InstrumentColumnProps) => (\n <TableCell\n key={DataRecordType.INSTRUMENT}\n classNames={cn('lw-font-bold lw-overflow-hidden', {\n '[&>*:first-child]:lw-border-r [&>*:first-child]:lw-border-border-primary':\n isDark && isScrolled,\n })}\n isLoading={isLoading}\n type=\"text\"\n >\n {width ? (\n <div style={{ maxWidth: width }}>{displayName}</div>\n ) : (\n <Truncate maxWidth={130} text={displayName} tooltipId={tooltipId} />\n )}\n </TableCell>\n);\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAAyC,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAWlC,MAAMG,gBAAgB,GAAGC,IAAA;EAAA,IAAC;IAC/BC,MAAM;IACNC,UAAU;IACVC,SAAS;IACTC,WAAW;IACXC,KAAK;IACLC;EACqB,CAAC,GAAAN,IAAA;EAAA,OACtBX,MAAA,CAAAS,OAAA,CAAAS,aAAA,CAACZ,UAAA,CAAAa,SAAS;IACRC,GAAG,EAAEC,qBAAc,CAACC,UAAW;IAC/BC,UAAU,EAAE,IAAAC,YAAE,EAAC,iCAAiC,EAAE;MAChD,0EAA0E,EACxEZ,MAAM,IAAIC;IACd,CAAC,CAAE;IACHC,SAAS,EAAEA,SAAU;IACrBW,IAAI,EAAC;EAAM,GAEVT,KAAK,GACJhB,MAAA,CAAAS,OAAA,CAAAS,aAAA;IAAKQ,KAAK,EAAE;MAAEC,QAAQ,EAAEX;IAAM;EAAE,GAAED,WAAiB,CAAC,GAEpDf,MAAA,CAAAS,OAAA,CAAAS,aAAA,CAACb,SAAA,CAAAuB,QAAQ;IAACD,QAAQ,EAAE,GAAI;IAACE,IAAI,EAAEd,WAAY;IAACE,SAAS,EAAEA;EAAU,CAAE,CAE5D,CAAC;AAAA,CACb;AAACa,OAAA,CAAApB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/Table/types.ts"],"sourcesContent":["import type { LoaderSize } from '@oanda/labs-widget-common';\n\nexport interface HeaderColumns {\n displayName: string;\n additionalStyles: string;\n}\n\nexport interface TableProps<T> {\n emptyRowsCount?: number;\n isError?: boolean;\n records: T[];\n headerConfig: HeaderColumns[];\n renderRow: (record: T, index: number, isScrolled: boolean) => React.ReactNode;\n}\n\nexport interface TableRowProps {\n hasBackgroundColor: boolean;\n isScrolled?: boolean;\n children?: React.ReactNode;\n}\n\nexport interface TableCellProps {\n children: React.ReactNode;\n isLoading?: boolean;\n isError?: boolean;\n type?: 'text' | 'number';\n loaderSize?: LoaderSize;\n classNames?: string;\n additionalPaddingRight?: boolean;\n}\n\nexport interface TableHeaderProps {\n columns: HeaderColumns[];\n isScrolled: boolean;\n isError: boolean;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/Table/types.ts"],"sourcesContent":["import type { DataRecordType, LoaderSize } from '@oanda/labs-widget-common';\n\nexport interface HeaderColumnsAdditionalStyles {\n align?: 'left' | 'right' | 'center';\n minWidth?: string;\n paddingRight?: boolean;\n}\n\nexport interface HeaderColumns {\n displayName: string;\n additionalStyles: HeaderColumnsAdditionalStyles;\n}\n\nexport interface TableProps<T> {\n emptyRowsCount?: number;\n isError?: boolean;\n records: T[];\n headerConfig: HeaderColumns[];\n renderRow: (record: T, index: number, isScrolled: boolean) => React.ReactNode;\n}\n\nexport interface TableRowProps {\n hasBackgroundColor: boolean;\n isScrolled?: boolean;\n children?: React.ReactNode;\n}\n\nexport interface TableCellProps {\n children: React.ReactNode;\n isLoading?: boolean;\n isError?: boolean;\n type?: 'text' | 'textCentered' | 'number';\n loaderSize?: LoaderSize;\n classNames?: string;\n additionalPaddingRight?: boolean;\n}\n\nexport interface TableHeaderProps {\n columns: HeaderColumns[];\n isScrolled: boolean;\n isError: boolean;\n}\n\nexport type HeaderConfigType = {\n [Key in DataRecordType]?: HeaderColumns;\n};\n"],"mappings":"","ignoreList":[]}
@@ -65,7 +65,21 @@ const ColumnRenderer = _ref => {
65
65
  isError: isError,
66
66
  isLoading: isLoading || record.low === undefined,
67
67
  loaderSize: _Loader.LoaderSize.sm
68
- }, _react.default.createElement("span", null, record.low))
68
+ }, _react.default.createElement("span", null, record.low)),
69
+ [_types.DataRecordType.SYMBOL]: () => _react.default.createElement(_Table.TableCell, {
70
+ key: _types.DataRecordType.SYMBOL,
71
+ isError: isError,
72
+ isLoading: isLoading,
73
+ loaderSize: _Loader.LoaderSize.md,
74
+ type: "textCentered"
75
+ }, _react.default.createElement("span", null, record.instrument)),
76
+ [_types.DataRecordType.TRADE_MODE]: () => _react.default.createElement(_Table.TableCell, {
77
+ key: _types.DataRecordType.TRADE_MODE,
78
+ additionalPaddingRight: true,
79
+ isError: isError,
80
+ isLoading: isLoading,
81
+ loaderSize: _Loader.LoaderSize.sm
82
+ }, _react.default.createElement("span", null, 'Long Only'))
69
83
  };
70
84
  return activeColumns.map(item => _react.default.createElement(_react.default.Fragment, {
71
85
  key: item
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnRenderer.js","names":["_react","_interopRequireDefault","require","_types","_Loader","_Table","e","__esModule","default","ColumnRenderer","_ref","record","isLoading","isChartLoading","isError","activeColumns","chart","allColumns","DataRecordType","SELL","createElement","PriceColumn","column","displayPrecision","price","sell","priceMovement","sellPriceMovement","BUY","buy","buyPriceMovement","DAILY_CHANGE","DailyChangeColumn","dailyPercentChange","CHART","ChartColumn","percentChange","SPREAD","SpreadColumn","value","spread","SENTIMENT","SentimentColumn","sentiment","HIGH","TableCell","key","high","undefined","loaderSize","LoaderSize","sm","LOW","low","map","item","Fragment","exports"],"sources":["../../../../src/components/TableWidget/ColumnRenderer.tsx"],"sourcesContent":["import React from 'react';\n\nimport { type DataRecord, DataRecordType } from '../../types';\nimport { LoaderSize } from '../Loader';\nimport {\n ChartColumn,\n DailyChangeColumn,\n PriceColumn,\n SentimentColumn,\n SpreadColumn,\n TableCell,\n} from '../Table';\n\ninterface ColumnRendererProps {\n record: DataRecord;\n chart?: number[];\n isLoading: boolean;\n isChartLoading?: boolean;\n isError: boolean;\n activeColumns: DataRecordType[];\n}\n\nexport const ColumnRenderer = ({\n record,\n isLoading,\n isChartLoading,\n isError,\n activeColumns,\n chart,\n}: ColumnRendererProps) => {\n const allColumns: Partial<Record<DataRecordType, () => JSX.Element>> = {\n [DataRecordType.SELL]: () => (\n <PriceColumn\n column={DataRecordType.SELL}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.sell}\n priceMovement={record.sellPriceMovement}\n />\n ),\n [DataRecordType.BUY]: () => (\n <PriceColumn\n column={DataRecordType.BUY}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.buy}\n priceMovement={record.buyPriceMovement}\n />\n ),\n [DataRecordType.DAILY_CHANGE]: () => (\n <DailyChangeColumn\n dailyPercentChange={record.dailyPercentChange}\n isError={isError}\n isLoading={isLoading}\n />\n ),\n [DataRecordType.CHART]: () => (\n <ChartColumn\n chart={chart ?? []}\n isLoading={!!isChartLoading}\n percentChange={record.dailyPercentChange}\n />\n ),\n [DataRecordType.SPREAD]: () => (\n <SpreadColumn\n isError={isError}\n isLoading={isLoading}\n value={record.spread}\n />\n ),\n [DataRecordType.SENTIMENT]: () => (\n <SentimentColumn isLoading={isLoading} sentiment={record.sentiment} />\n ),\n [DataRecordType.HIGH]: () => (\n <TableCell\n key={DataRecordType.SPREAD}\n isError={isError}\n isLoading={isLoading || record.high === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.high}</span>\n </TableCell>\n ),\n [DataRecordType.LOW]: () => (\n <TableCell\n key={DataRecordType.LOW}\n isError={isError}\n isLoading={isLoading || record.low === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.low}</span>\n </TableCell>\n ),\n };\n\n return activeColumns.map((item) => (\n <React.Fragment key={item}>{allColumns[item]?.() ?? null}</React.Fragment>\n ));\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ColumnRenderer.js","names":["_react","_interopRequireDefault","require","_types","_Loader","_Table","e","__esModule","default","ColumnRenderer","_ref","record","isLoading","isChartLoading","isError","activeColumns","chart","allColumns","DataRecordType","SELL","createElement","PriceColumn","column","displayPrecision","price","sell","priceMovement","sellPriceMovement","BUY","buy","buyPriceMovement","DAILY_CHANGE","DailyChangeColumn","dailyPercentChange","CHART","ChartColumn","percentChange","SPREAD","SpreadColumn","value","spread","SENTIMENT","SentimentColumn","sentiment","HIGH","TableCell","key","high","undefined","loaderSize","LoaderSize","sm","LOW","low","SYMBOL","md","type","instrument","TRADE_MODE","additionalPaddingRight","map","item","Fragment","exports"],"sources":["../../../../src/components/TableWidget/ColumnRenderer.tsx"],"sourcesContent":["import React from 'react';\n\nimport { type DataRecord, DataRecordType } from '../../types';\nimport { LoaderSize } from '../Loader';\nimport {\n ChartColumn,\n DailyChangeColumn,\n PriceColumn,\n SentimentColumn,\n SpreadColumn,\n TableCell,\n} from '../Table';\n\ninterface ColumnRendererProps {\n record: DataRecord;\n chart?: number[];\n isLoading: boolean;\n isChartLoading?: boolean;\n isError: boolean;\n activeColumns: DataRecordType[];\n}\n\nexport const ColumnRenderer = ({\n record,\n isLoading,\n isChartLoading,\n isError,\n activeColumns,\n chart,\n}: ColumnRendererProps) => {\n const allColumns: Partial<Record<DataRecordType, () => JSX.Element>> = {\n [DataRecordType.SELL]: () => (\n <PriceColumn\n column={DataRecordType.SELL}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.sell}\n priceMovement={record.sellPriceMovement}\n />\n ),\n [DataRecordType.BUY]: () => (\n <PriceColumn\n column={DataRecordType.BUY}\n displayPrecision={record.displayPrecision}\n isError={isError}\n isLoading={isLoading}\n price={record.buy}\n priceMovement={record.buyPriceMovement}\n />\n ),\n [DataRecordType.DAILY_CHANGE]: () => (\n <DailyChangeColumn\n dailyPercentChange={record.dailyPercentChange}\n isError={isError}\n isLoading={isLoading}\n />\n ),\n [DataRecordType.CHART]: () => (\n <ChartColumn\n chart={chart ?? []}\n isLoading={!!isChartLoading}\n percentChange={record.dailyPercentChange}\n />\n ),\n [DataRecordType.SPREAD]: () => (\n <SpreadColumn\n isError={isError}\n isLoading={isLoading}\n value={record.spread}\n />\n ),\n [DataRecordType.SENTIMENT]: () => (\n <SentimentColumn isLoading={isLoading} sentiment={record.sentiment} />\n ),\n [DataRecordType.HIGH]: () => (\n <TableCell\n key={DataRecordType.SPREAD}\n isError={isError}\n isLoading={isLoading || record.high === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.high}</span>\n </TableCell>\n ),\n [DataRecordType.LOW]: () => (\n <TableCell\n key={DataRecordType.LOW}\n isError={isError}\n isLoading={isLoading || record.low === undefined}\n loaderSize={LoaderSize.sm}\n >\n <span>{record.low}</span>\n </TableCell>\n ),\n [DataRecordType.SYMBOL]: () => (\n <TableCell\n key={DataRecordType.SYMBOL}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.md}\n type=\"textCentered\"\n >\n <span>{record.instrument}</span>\n </TableCell>\n ),\n [DataRecordType.TRADE_MODE]: () => (\n <TableCell\n key={DataRecordType.TRADE_MODE}\n additionalPaddingRight={true}\n isError={isError}\n isLoading={isLoading}\n loaderSize={LoaderSize.sm}\n >\n <span>{'Long Only'}</span>\n </TableCell>\n ),\n };\n\n return activeColumns.map((item) => (\n <React.Fragment key={item}>{allColumns[item]?.() ?? null}</React.Fragment>\n ));\n};\n"],"mappings":"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","ignoreList":[]}
@@ -20,7 +20,8 @@ const DataRecordRow = _ref => {
20
20
  target,
21
21
  isScrolled,
22
22
  toolTipId,
23
- activeColumns
23
+ activeColumns,
24
+ instrumentColumnWidth
24
25
  } = _ref;
25
26
  const {
26
27
  isDark
@@ -39,7 +40,8 @@ const DataRecordRow = _ref => {
39
40
  isDark: isDark,
40
41
  isLoading: isLoading,
41
42
  isScrolled: isScrolled,
42
- tooltipId: toolTipId
43
+ tooltipId: toolTipId,
44
+ width: instrumentColumnWidth
43
45
  }), _react.default.createElement(_ColumnRenderer.ColumnRenderer, {
44
46
  activeColumns: activeColumns,
45
47
  chart: record.chart,
@@ -1 +1 @@
1
- {"version":3,"file":"DataRecordRow.js","names":["_react","_interopRequireDefault","require","_hooks","_providers","_columns","_TableRow","_ColumnRenderer","e","__esModule","default","DataRecordRow","_ref","record","isLoading","isChartLoading","hasBackgroundColor","target","isScrolled","toolTipId","activeColumns","isDark","useLayoutProvider","updatedRecord","error","ref","useVisibleLiveDataRecord","instrument","createElement","TableRow","InstrumentColumn","displayName","tooltipId","ColumnRenderer","chart","isError","exports"],"sources":["../../../../src/components/TableWidget/DataRecordRow.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useVisibleLiveDataRecord } from '../../hooks';\nimport { useLayoutProvider } from '../../providers';\nimport type { DataRecord, DataRecordType } from '../../types';\nimport { InstrumentColumn } from '../Table/columns';\nimport { TableRow } from '../Table/TableRow';\nimport { ColumnRenderer } from './ColumnRenderer';\n\nexport interface DataRecordRowProps {\n isLoading: boolean;\n isChartLoading?: boolean;\n record: DataRecord;\n hasBackgroundColor: boolean;\n target: EventTarget | null;\n isScrolled?: boolean;\n toolTipId: string;\n activeColumns: DataRecordType[];\n}\n\nexport const DataRecordRow = ({\n record,\n isLoading,\n isChartLoading,\n hasBackgroundColor,\n target,\n isScrolled,\n toolTipId,\n activeColumns,\n}: DataRecordRowProps) => {\n const { isDark } = useLayoutProvider();\n\n const { updatedRecord, error, ref } = useVisibleLiveDataRecord(\n record,\n record.instrument ? target : null\n );\n\n return (\n <TableRow\n ref={ref}\n hasBackgroundColor={hasBackgroundColor}\n isScrolled={isScrolled}\n >\n <InstrumentColumn\n displayName={record.displayName}\n isDark={isDark}\n isLoading={isLoading}\n isScrolled={isScrolled}\n tooltipId={toolTipId}\n />\n <ColumnRenderer\n activeColumns={activeColumns}\n chart={record.chart}\n isChartLoading={isChartLoading}\n isError={!!error}\n isLoading={isLoading}\n record={updatedRecord}\n />\n </TableRow>\n );\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AAAkD,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAa3C,MAAMG,aAAa,GAAGC,IAAA,IASH;EAAA,IATI;IAC5BC,MAAM;IACNC,SAAS;IACTC,cAAc;IACdC,kBAAkB;IAClBC,MAAM;IACNC,UAAU;IACVC,SAAS;IACTC;EACkB,CAAC,GAAAR,IAAA;EACnB,MAAM;IAAES;EAAO,CAAC,GAAG,IAAAC,4BAAiB,EAAC,CAAC;EAEtC,MAAM;IAAEC,aAAa;IAAEC,KAAK;IAAEC;EAAI,CAAC,GAAG,IAAAC,+BAAwB,EAC5Db,MAAM,EACNA,MAAM,CAACc,UAAU,GAAGV,MAAM,GAAG,IAC/B,CAAC;EAED,OACEjB,MAAA,CAAAU,OAAA,CAAAkB,aAAA,CAACtB,SAAA,CAAAuB,QAAQ;IACPJ,GAAG,EAAEA,GAAI;IACTT,kBAAkB,EAAEA,kBAAmB;IACvCE,UAAU,EAAEA;EAAW,GAEvBlB,MAAA,CAAAU,OAAA,CAAAkB,aAAA,CAACvB,QAAA,CAAAyB,gBAAgB;IACfC,WAAW,EAAElB,MAAM,CAACkB,WAAY;IAChCV,MAAM,EAAEA,MAAO;IACfP,SAAS,EAAEA,SAAU;IACrBI,UAAU,EAAEA,UAAW;IACvBc,SAAS,EAAEb;EAAU,CACtB,CAAC,EACFnB,MAAA,CAAAU,OAAA,CAAAkB,aAAA,CAACrB,eAAA,CAAA0B,cAAc;IACbb,aAAa,EAAEA,aAAc;IAC7Bc,KAAK,EAAErB,MAAM,CAACqB,KAAM;IACpBnB,cAAc,EAAEA,cAAe;IAC/BoB,OAAO,EAAE,CAAC,CAACX,KAAM;IACjBV,SAAS,EAAEA,SAAU;IACrBD,MAAM,EAAEU;EAAc,CACvB,CACO,CAAC;AAEf,CAAC;AAACa,OAAA,CAAAzB,aAAA,GAAAA,aAAA","ignoreList":[]}
1
+ {"version":3,"file":"DataRecordRow.js","names":["_react","_interopRequireDefault","require","_hooks","_providers","_columns","_TableRow","_ColumnRenderer","e","__esModule","default","DataRecordRow","_ref","record","isLoading","isChartLoading","hasBackgroundColor","target","isScrolled","toolTipId","activeColumns","instrumentColumnWidth","isDark","useLayoutProvider","updatedRecord","error","ref","useVisibleLiveDataRecord","instrument","createElement","TableRow","InstrumentColumn","displayName","tooltipId","width","ColumnRenderer","chart","isError","exports"],"sources":["../../../../src/components/TableWidget/DataRecordRow.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useVisibleLiveDataRecord } from '../../hooks';\nimport { useLayoutProvider } from '../../providers';\nimport type { DataRecord, DataRecordType } from '../../types';\nimport { InstrumentColumn } from '../Table/columns';\nimport { TableRow } from '../Table/TableRow';\nimport { ColumnRenderer } from './ColumnRenderer';\n\nexport interface DataRecordRowProps {\n isLoading: boolean;\n isChartLoading?: boolean;\n record: DataRecord;\n hasBackgroundColor: boolean;\n target: EventTarget | null;\n isScrolled?: boolean;\n toolTipId: string;\n instrumentColumnWidth?: string;\n activeColumns: DataRecordType[];\n}\n\nexport const DataRecordRow = ({\n record,\n isLoading,\n isChartLoading,\n hasBackgroundColor,\n target,\n isScrolled,\n toolTipId,\n activeColumns,\n instrumentColumnWidth,\n}: DataRecordRowProps) => {\n const { isDark } = useLayoutProvider();\n\n const { updatedRecord, error, ref } = useVisibleLiveDataRecord(\n record,\n record.instrument ? target : null\n );\n\n return (\n <TableRow\n ref={ref}\n hasBackgroundColor={hasBackgroundColor}\n isScrolled={isScrolled}\n >\n <InstrumentColumn\n displayName={record.displayName}\n isDark={isDark}\n isLoading={isLoading}\n isScrolled={isScrolled}\n tooltipId={toolTipId}\n width={instrumentColumnWidth}\n />\n <ColumnRenderer\n activeColumns={activeColumns}\n chart={record.chart}\n isChartLoading={isChartLoading}\n isError={!!error}\n isLoading={isLoading}\n record={updatedRecord}\n />\n </TableRow>\n );\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AAAkD,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAc3C,MAAMG,aAAa,GAAGC,IAAA,IAUH;EAAA,IAVI;IAC5BC,MAAM;IACNC,SAAS;IACTC,cAAc;IACdC,kBAAkB;IAClBC,MAAM;IACNC,UAAU;IACVC,SAAS;IACTC,aAAa;IACbC;EACkB,CAAC,GAAAT,IAAA;EACnB,MAAM;IAAEU;EAAO,CAAC,GAAG,IAAAC,4BAAiB,EAAC,CAAC;EAEtC,MAAM;IAAEC,aAAa;IAAEC,KAAK;IAAEC;EAAI,CAAC,GAAG,IAAAC,+BAAwB,EAC5Dd,MAAM,EACNA,MAAM,CAACe,UAAU,GAAGX,MAAM,GAAG,IAC/B,CAAC;EAED,OACEjB,MAAA,CAAAU,OAAA,CAAAmB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IACPJ,GAAG,EAAEA,GAAI;IACTV,kBAAkB,EAAEA,kBAAmB;IACvCE,UAAU,EAAEA;EAAW,GAEvBlB,MAAA,CAAAU,OAAA,CAAAmB,aAAA,CAACxB,QAAA,CAAA0B,gBAAgB;IACfC,WAAW,EAAEnB,MAAM,CAACmB,WAAY;IAChCV,MAAM,EAAEA,MAAO;IACfR,SAAS,EAAEA,SAAU;IACrBI,UAAU,EAAEA,UAAW;IACvBe,SAAS,EAAEd,SAAU;IACrBe,KAAK,EAAEb;EAAsB,CAC9B,CAAC,EACFrB,MAAA,CAAAU,OAAA,CAAAmB,aAAA,CAACtB,eAAA,CAAA4B,cAAc;IACbf,aAAa,EAAEA,aAAc;IAC7BgB,KAAK,EAAEvB,MAAM,CAACuB,KAAM;IACpBrB,cAAc,EAAEA,cAAe;IAC/BsB,OAAO,EAAE,CAAC,CAACZ,KAAM;IACjBX,SAAS,EAAEA,SAAU;IACrBD,MAAM,EAAEW;EAAc,CACvB,CACO,CAAC;AAEf,CAAC;AAACc,OAAA,CAAA3B,aAAA,GAAAA,aAAA","ignoreList":[]}
@@ -32,7 +32,8 @@ const TableWidget = _ref => {
32
32
  timestamp,
33
33
  pageNumber,
34
34
  count,
35
- viewType
35
+ viewType,
36
+ instrumentColumnWidth
36
37
  } = _ref;
37
38
  const {
38
39
  lang
@@ -58,6 +59,7 @@ const TableWidget = _ref => {
58
59
  key: `row_${index}`,
59
60
  activeColumns: activeColumns,
60
61
  hasBackgroundColor: index % 2 === 0,
62
+ instrumentColumnWidth: instrumentColumnWidth,
61
63
  isChartLoading: isChartLoading,
62
64
  isLoading: isLoading,
63
65
  isScrolled: isScrolled,
@@ -1 +1 @@
1
- {"version":3,"file":"TableWidget.js","names":["_monoI18n","require","_react","_interopRequireDefault","_providers","_tailwind","_types","_LastUpdated","_Table","_Tooltip","_CardRecordRow","_Cards","_DataRecordRow","e","__esModule","default","TableWidget","_ref","testId","toolTipId","PaginationComponent","hasError","TabsComponent","headerColumns","records","target","isLoading","isChartLoading","activeColumns","timestamp","pageNumber","count","viewType","lang","useLocale","size","useLayoutProvider","isDesktop","Size","DESKTOP","isTable","createElement","className","Table","headerConfig","isError","renderRow","record","index","isScrolled","DataRecordRow","key","hasBackgroundColor","Cards","renderCard","_ref2","idx","isLast","CardRecordRow","tooltipId","startIndex","cn","Tooltip","id","LastUpdated","labelCallback","exports"],"sources":["../../../../src/components/TableWidget/TableWidget.tsx"],"sourcesContent":["import { useLocale } from '@oanda/mono-i18n';\nimport type { ReactElement } from 'react';\nimport React from 'react';\n\nimport { useLayoutProvider } from '../../providers';\nimport { cn } from '../../tailwind';\nimport type { DataRecord, DataRecordType } from '../../types';\nimport { Size } from '../../types';\nimport { LastUpdated } from '../LastUpdated';\nimport type { Pagination, PaginationProps } from '../Pagination';\nimport type { HeaderColumns } from '../Table';\nimport { Table } from '../Table';\nimport type { Tabs } from '../Tabs';\nimport type { TabsProps } from '../Tabs/types';\nimport { Tooltip } from '../Tooltip';\nimport { CardRecordRow } from './CardRecordRow';\nimport { Cards } from './Cards';\nimport { DataRecordRow } from './DataRecordRow';\n\ninterface TableWidgetProps<TTabs> {\n testId: string;\n toolTipId: string;\n hasError?: boolean;\n TabsComponent?: ReactElement<TabsProps<TTabs>, typeof Tabs<TTabs>>;\n PaginationComponent?: ReactElement<PaginationProps, typeof Pagination>;\n headerColumns: HeaderColumns[];\n records: DataRecord[];\n target: EventTarget | null;\n isLoading: boolean;\n isChartLoading?: boolean;\n activeColumns: DataRecordType[];\n timestamp?: string;\n pageNumber: number;\n count: number;\n viewType?: 'table' | 'cards';\n}\n\nexport const TableWidget = <TTabs,>({\n testId,\n toolTipId,\n PaginationComponent,\n hasError,\n TabsComponent,\n headerColumns,\n records,\n target,\n isLoading,\n isChartLoading,\n activeColumns,\n timestamp,\n pageNumber,\n count,\n viewType,\n}: TableWidgetProps<TTabs>) => {\n const { lang } = useLocale();\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const isTable = viewType ? viewType === 'table' : isDesktop;\n\n if (!size) {\n return null;\n }\n\n return (\n <div\n className=\"lw-relative lw-text-sm lw-tracking-normal lw-text-text-primary\"\n data-testid={testId}\n >\n {TabsComponent}\n\n {isTable ? (\n <div className=\"lw-border lw-border-solid lw-border-border-primary\">\n <Table<DataRecord>\n headerConfig={headerColumns}\n isError={hasError}\n records={records}\n renderRow={(record, index, isScrolled) => (\n <DataRecordRow\n key={`row_${index}`}\n activeColumns={activeColumns}\n hasBackgroundColor={index % 2 === 0}\n isChartLoading={isChartLoading}\n isLoading={isLoading}\n isScrolled={isScrolled}\n record={record}\n target={target}\n toolTipId={toolTipId}\n />\n )}\n />\n </div>\n ) : (\n <Cards\n isError={hasError}\n records={records}\n renderCard={({ record, idx, isLast }) => (\n <CardRecordRow\n activeColumns={activeColumns}\n index={idx}\n isChartLoading={isChartLoading}\n isLast={isLast}\n isLoading={isLoading}\n record={record}\n target={target}\n tooltipId={toolTipId}\n />\n )}\n startIndex={pageNumber * count}\n />\n )}\n\n {PaginationComponent && !hasError && (\n <div\n className={cn('lw-border-solid lw-border-border-primary', {\n 'lw-border-x lw-border-b': isDesktop,\n })}\n >\n {PaginationComponent}\n </div>\n )}\n\n <Tooltip id={toolTipId} />\n\n {!hasError && timestamp && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated labelCallback={lang} timestamp={timestamp} />\n </div>\n )}\n </div>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TableWidget.js","names":["_monoI18n","require","_react","_interopRequireDefault","_providers","_tailwind","_types","_LastUpdated","_Table","_Tooltip","_CardRecordRow","_Cards","_DataRecordRow","e","__esModule","default","TableWidget","_ref","testId","toolTipId","PaginationComponent","hasError","TabsComponent","headerColumns","records","target","isLoading","isChartLoading","activeColumns","timestamp","pageNumber","count","viewType","instrumentColumnWidth","lang","useLocale","size","useLayoutProvider","isDesktop","Size","DESKTOP","isTable","createElement","className","Table","headerConfig","isError","renderRow","record","index","isScrolled","DataRecordRow","key","hasBackgroundColor","Cards","renderCard","_ref2","idx","isLast","CardRecordRow","tooltipId","startIndex","cn","Tooltip","id","LastUpdated","labelCallback","exports"],"sources":["../../../../src/components/TableWidget/TableWidget.tsx"],"sourcesContent":["import { useLocale } from '@oanda/mono-i18n';\nimport type { ReactElement } from 'react';\nimport React from 'react';\n\nimport { useLayoutProvider } from '../../providers';\nimport { cn } from '../../tailwind';\nimport type { DataRecord, DataRecordType } from '../../types';\nimport { Size } from '../../types';\nimport { LastUpdated } from '../LastUpdated';\nimport type { Pagination, PaginationProps } from '../Pagination';\nimport type { HeaderColumns } from '../Table';\nimport { Table } from '../Table';\nimport type { Tabs } from '../Tabs';\nimport type { TabsProps } from '../Tabs/types';\nimport { Tooltip } from '../Tooltip';\nimport { CardRecordRow } from './CardRecordRow';\nimport { Cards } from './Cards';\nimport { DataRecordRow } from './DataRecordRow';\n\ninterface TableWidgetProps<TTabs> {\n testId: string;\n toolTipId: string;\n hasError?: boolean;\n TabsComponent?: ReactElement<TabsProps<TTabs>, typeof Tabs<TTabs>>;\n PaginationComponent?: ReactElement<PaginationProps, typeof Pagination>;\n headerColumns: HeaderColumns[];\n records: DataRecord[];\n target: EventTarget | null;\n isLoading: boolean;\n isChartLoading?: boolean;\n activeColumns: DataRecordType[];\n timestamp?: string;\n pageNumber: number;\n count: number;\n viewType?: 'table' | 'cards';\n instrumentColumnWidth?: string;\n}\n\nexport const TableWidget = <TTabs,>({\n testId,\n toolTipId,\n PaginationComponent,\n hasError,\n TabsComponent,\n headerColumns,\n records,\n target,\n isLoading,\n isChartLoading,\n activeColumns,\n timestamp,\n pageNumber,\n count,\n viewType,\n instrumentColumnWidth,\n}: TableWidgetProps<TTabs>) => {\n const { lang } = useLocale();\n const { size } = useLayoutProvider();\n const isDesktop = size === Size.DESKTOP;\n const isTable = viewType ? viewType === 'table' : isDesktop;\n\n if (!size) {\n return null;\n }\n\n return (\n <div\n className=\"lw-relative lw-text-sm lw-tracking-normal lw-text-text-primary\"\n data-testid={testId}\n >\n {TabsComponent}\n\n {isTable ? (\n <div className=\"lw-border lw-border-solid lw-border-border-primary\">\n <Table<DataRecord>\n headerConfig={headerColumns}\n isError={hasError}\n records={records}\n renderRow={(record, index, isScrolled) => (\n <DataRecordRow\n key={`row_${index}`}\n activeColumns={activeColumns}\n hasBackgroundColor={index % 2 === 0}\n instrumentColumnWidth={instrumentColumnWidth}\n isChartLoading={isChartLoading}\n isLoading={isLoading}\n isScrolled={isScrolled}\n record={record}\n target={target}\n toolTipId={toolTipId}\n />\n )}\n />\n </div>\n ) : (\n <Cards\n isError={hasError}\n records={records}\n renderCard={({ record, idx, isLast }) => (\n <CardRecordRow\n activeColumns={activeColumns}\n index={idx}\n isChartLoading={isChartLoading}\n isLast={isLast}\n isLoading={isLoading}\n record={record}\n target={target}\n tooltipId={toolTipId}\n />\n )}\n startIndex={pageNumber * count}\n />\n )}\n\n {PaginationComponent && !hasError && (\n <div\n className={cn('lw-border-solid lw-border-border-primary', {\n 'lw-border-x lw-border-b': isDesktop,\n })}\n >\n {PaginationComponent}\n </div>\n )}\n\n <Tooltip id={toolTipId} />\n\n {!hasError && timestamp && (\n <div className=\"lw-mt-2 lw-h-8\">\n <LastUpdated labelCallback={lang} timestamp={timestamp} />\n </div>\n )}\n </div>\n );\n};\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAEA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAGA,IAAAO,MAAA,GAAAP,OAAA;AAGA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,cAAA,GAAAX,OAAA;AAAgD,SAAAE,uBAAAU,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAqBzC,MAAMG,WAAW,GAAGC,IAAA,IAiBI;EAAA,IAjBK;IAClCC,MAAM;IACNC,SAAS;IACTC,mBAAmB;IACnBC,QAAQ;IACRC,aAAa;IACbC,aAAa;IACbC,OAAO;IACPC,MAAM;IACNC,SAAS;IACTC,cAAc;IACdC,aAAa;IACbC,SAAS;IACTC,UAAU;IACVC,KAAK;IACLC,QAAQ;IACRC;EACuB,CAAC,GAAAhB,IAAA;EACxB,MAAM;IAAEiB;EAAK,CAAC,GAAG,IAAAC,mBAAS,EAAC,CAAC;EAC5B,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,4BAAiB,EAAC,CAAC;EACpC,MAAMC,SAAS,GAAGF,IAAI,KAAKG,WAAI,CAACC,OAAO;EACvC,MAAMC,OAAO,GAAGT,QAAQ,GAAGA,QAAQ,KAAK,OAAO,GAAGM,SAAS;EAE3D,IAAI,CAACF,IAAI,EAAE;IACT,OAAO,IAAI;EACb;EAEA,OACElC,MAAA,CAAAa,OAAA,CAAA2B,aAAA;IACEC,SAAS,EAAC,gEAAgE;IAC1E,eAAazB;EAAO,GAEnBI,aAAa,EAEbmB,OAAO,GACNvC,MAAA,CAAAa,OAAA,CAAA2B,aAAA;IAAKC,SAAS,EAAC;EAAoD,GACjEzC,MAAA,CAAAa,OAAA,CAAA2B,aAAA,CAAClC,MAAA,CAAAoC,KAAK;IACJC,YAAY,EAAEtB,aAAc;IAC5BuB,OAAO,EAAEzB,QAAS;IAClBG,OAAO,EAAEA,OAAQ;IACjBuB,SAAS,EAAEA,CAACC,MAAM,EAAEC,KAAK,EAAEC,UAAU,KACnChD,MAAA,CAAAa,OAAA,CAAA2B,aAAA,CAAC9B,cAAA,CAAAuC,aAAa;MACZC,GAAG,EAAE,OAAOH,KAAK,EAAG;MACpBrB,aAAa,EAAEA,aAAc;MAC7ByB,kBAAkB,EAAEJ,KAAK,GAAG,CAAC,KAAK,CAAE;MACpChB,qBAAqB,EAAEA,qBAAsB;MAC7CN,cAAc,EAAEA,cAAe;MAC/BD,SAAS,EAAEA,SAAU;MACrBwB,UAAU,EAAEA,UAAW;MACvBF,MAAM,EAAEA,MAAO;MACfvB,MAAM,EAAEA,MAAO;MACfN,SAAS,EAAEA;IAAU,CACtB;EACD,CACH,CACE,CAAC,GAENjB,MAAA,CAAAa,OAAA,CAAA2B,aAAA,CAAC/B,MAAA,CAAA2C,KAAK;IACJR,OAAO,EAAEzB,QAAS;IAClBG,OAAO,EAAEA,OAAQ;IACjB+B,UAAU,EAAEC,KAAA;MAAA,IAAC;QAAER,MAAM;QAAES,GAAG;QAAEC;MAAO,CAAC,GAAAF,KAAA;MAAA,OAClCtD,MAAA,CAAAa,OAAA,CAAA2B,aAAA,CAAChC,cAAA,CAAAiD,aAAa;QACZ/B,aAAa,EAAEA,aAAc;QAC7BqB,KAAK,EAAEQ,GAAI;QACX9B,cAAc,EAAEA,cAAe;QAC/B+B,MAAM,EAAEA,MAAO;QACfhC,SAAS,EAAEA,SAAU;QACrBsB,MAAM,EAAEA,MAAO;QACfvB,MAAM,EAAEA,MAAO;QACfmC,SAAS,EAAEzC;MAAU,CACtB,CAAC;IAAA,CACF;IACF0C,UAAU,EAAE/B,UAAU,GAAGC;EAAM,CAChC,CACF,EAEAX,mBAAmB,IAAI,CAACC,QAAQ,IAC/BnB,MAAA,CAAAa,OAAA,CAAA2B,aAAA;IACEC,SAAS,EAAE,IAAAmB,YAAE,EAAC,0CAA0C,EAAE;MACxD,yBAAyB,EAAExB;IAC7B,CAAC;EAAE,GAEFlB,mBACE,CACN,EAEDlB,MAAA,CAAAa,OAAA,CAAA2B,aAAA,CAACjC,QAAA,CAAAsD,OAAO;IAACC,EAAE,EAAE7C;EAAU,CAAE,CAAC,EAEzB,CAACE,QAAQ,IAAIQ,SAAS,IACrB3B,MAAA,CAAAa,OAAA,CAAA2B,aAAA;IAAKC,SAAS,EAAC;EAAgB,GAC7BzC,MAAA,CAAAa,OAAA,CAAA2B,aAAA,CAACnC,YAAA,CAAA0D,WAAW;IAACC,aAAa,EAAEhC,IAAK;IAACL,SAAS,EAAEA;EAAU,CAAE,CACtD,CAEJ,CAAC;AAEV,CAAC;AAACsC,OAAA,CAAAnD,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -14,4 +14,15 @@ Object.keys(_TableWidget).forEach(function (key) {
14
14
  }
15
15
  });
16
16
  });
17
+ var _utils = require("./utils");
18
+ Object.keys(_utils).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _utils[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _utils[key];
25
+ }
26
+ });
27
+ });
17
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_TableWidget","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/components/TableWidget/index.ts"],"sourcesContent":["export * from './TableWidget';\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_TableWidget","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_utils"],"sources":["../../../../src/components/TableWidget/index.ts"],"sourcesContent":["export * from './TableWidget';\nexport * from './utils';\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,MAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,MAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,MAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,MAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -7,6 +7,9 @@ exports.getTableRowIndex = exports.getHeaderConfig = void 0;
7
7
  var _types = require("../../types");
8
8
  const getTableRowIndex = () => ({});
9
9
  exports.getTableRowIndex = getTableRowIndex;
10
- const getHeaderConfig = (activeColumns, headerConfig) => [_types.DataRecordType.INSTRUMENT, ...activeColumns].map(item => headerConfig[item]);
10
+ const getHeaderConfig = (activeColumns, headerConfig) => {
11
+ const columns = [_types.DataRecordType.INSTRUMENT, ...activeColumns];
12
+ return columns.map(item => headerConfig[item]).filter(headerCell => headerCell !== undefined);
13
+ };
11
14
  exports.getHeaderConfig = getHeaderConfig;
12
15
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["_types","require","getTableRowIndex","exports","getHeaderConfig","activeColumns","headerConfig","DataRecordType","INSTRUMENT","map","item"],"sources":["../../../../src/components/TableWidget/utils.ts"],"sourcesContent":["import { DataRecordType } from '../../types';\nimport type { HeaderColumns } from '../Table';\n\nexport const getTableRowIndex = () => ({});\n\nexport const getHeaderConfig = (\n activeColumns: DataRecordType[],\n headerConfig: Record<DataRecordType, HeaderColumns>\n): HeaderColumns[] =>\n [DataRecordType.INSTRUMENT, ...activeColumns].map(\n (item) => headerConfig[item]\n );\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGO,MAAMC,gBAAgB,GAAGA,CAAA,MAAO,CAAC,CAAC,CAAC;AAACC,OAAA,CAAAD,gBAAA,GAAAA,gBAAA;AAEpC,MAAME,eAAe,GAAGA,CAC7BC,aAA+B,EAC/BC,YAAmD,KAEnD,CAACC,qBAAc,CAACC,UAAU,EAAE,GAAGH,aAAa,CAAC,CAACI,GAAG,CAC9CC,IAAI,IAAKJ,YAAY,CAACI,IAAI,CAC7B,CAAC;AAACP,OAAA,CAAAC,eAAA,GAAAA,eAAA","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["_types","require","getTableRowIndex","exports","getHeaderConfig","activeColumns","headerConfig","columns","DataRecordType","INSTRUMENT","map","item","filter","headerCell","undefined"],"sources":["../../../../src/components/TableWidget/utils.ts"],"sourcesContent":["import { DataRecordType } from '../../types';\nimport type { HeaderColumns, HeaderConfigType } from '../Table';\n\nexport const getTableRowIndex = () => ({});\n\nexport const getHeaderConfig = (\n activeColumns: DataRecordType[],\n headerConfig: HeaderConfigType\n): HeaderColumns[] => {\n const columns: DataRecordType[] = [\n DataRecordType.INSTRUMENT,\n ...activeColumns,\n ];\n\n return columns\n .map((item) => headerConfig[item])\n .filter((headerCell) => headerCell !== undefined);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGO,MAAMC,gBAAgB,GAAGA,CAAA,MAAO,CAAC,CAAC,CAAC;AAACC,OAAA,CAAAD,gBAAA,GAAAA,gBAAA;AAEpC,MAAME,eAAe,GAAGA,CAC7BC,aAA+B,EAC/BC,YAA8B,KACV;EACpB,MAAMC,OAAyB,GAAG,CAChCC,qBAAc,CAACC,UAAU,EACzB,GAAGJ,aAAa,CACjB;EAED,OAAOE,OAAO,CACXG,GAAG,CAAEC,IAAI,IAAKL,YAAY,CAACK,IAAI,CAAC,CAAC,CACjCC,MAAM,CAAEC,UAAU,IAAKA,UAAU,KAAKC,SAAS,CAAC;AACrD,CAAC;AAACX,OAAA,CAAAC,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -6,21 +6,18 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useLiveRatesQuery = void 0;
7
7
  var _constants = require("../constants");
8
8
  var _providers = require("../providers");
9
- const useLiveRatesQuery = () => {
10
- const {
11
- target,
12
- source
13
- } = (0, _providers.useLiveRatesProvider)();
9
+ const useLiveRatesQuery = skip => {
10
+ const liveRates = (0, _providers.useLiveRatesProvider)(skip);
14
11
  const setQuery = query => {
15
- target?.dispatchEvent(new CustomEvent(_constants.SET_QUERY_EVENT_NAME, {
12
+ liveRates?.target?.dispatchEvent(new CustomEvent(_constants.SET_QUERY_EVENT_NAME, {
16
13
  detail: query
17
14
  }));
18
15
  };
19
16
  const closeQuery = () => {
20
- source?.close();
17
+ liveRates?.source?.close();
21
18
  };
22
19
  return {
23
- target,
20
+ target: liveRates?.target || null,
24
21
  setQuery,
25
22
  closeQuery
26
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useLiveRatesQuery.js","names":["_constants","require","_providers","useLiveRatesQuery","target","source","useLiveRatesProvider","setQuery","query","dispatchEvent","CustomEvent","SET_QUERY_EVENT_NAME","detail","closeQuery","close","exports"],"sources":["../../../src/hooks/useLiveRatesQuery.ts"],"sourcesContent":["import { SET_QUERY_EVENT_NAME } from '../constants';\nimport { useLiveRatesProvider } from '../providers';\nimport type {\n LiveRatesProviderQuery,\n LiveRatesTargetHookReturnObject,\n} from '../types';\n\nexport const useLiveRatesQuery = (): LiveRatesTargetHookReturnObject => {\n const { target, source } = useLiveRatesProvider();\n\n const setQuery = (query: LiveRatesProviderQuery) => {\n target?.dispatchEvent(\n new CustomEvent(SET_QUERY_EVENT_NAME, { detail: query })\n );\n };\n\n const closeQuery = () => {\n source?.close();\n };\n\n return { target, setQuery, closeQuery };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAMO,MAAME,iBAAiB,GAAGA,CAAA,KAAuC;EACtE,MAAM;IAAEC,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,+BAAoB,EAAC,CAAC;EAEjD,MAAMC,QAAQ,GAAIC,KAA6B,IAAK;IAClDJ,MAAM,EAAEK,aAAa,CACnB,IAAIC,WAAW,CAACC,+BAAoB,EAAE;MAAEC,MAAM,EAAEJ;IAAM,CAAC,CACzD,CAAC;EACH,CAAC;EAED,MAAMK,UAAU,GAAGA,CAAA,KAAM;IACvBR,MAAM,EAAES,KAAK,CAAC,CAAC;EACjB,CAAC;EAED,OAAO;IAAEV,MAAM;IAAEG,QAAQ;IAAEM;EAAW,CAAC;AACzC,CAAC;AAACE,OAAA,CAAAZ,iBAAA,GAAAA,iBAAA","ignoreList":[]}
1
+ {"version":3,"file":"useLiveRatesQuery.js","names":["_constants","require","_providers","useLiveRatesQuery","skip","liveRates","useLiveRatesProvider","setQuery","query","target","dispatchEvent","CustomEvent","SET_QUERY_EVENT_NAME","detail","closeQuery","source","close","exports"],"sources":["../../../src/hooks/useLiveRatesQuery.ts"],"sourcesContent":["import { SET_QUERY_EVENT_NAME } from '../constants';\nimport { useLiveRatesProvider } from '../providers';\nimport type {\n LiveRatesProviderQuery,\n LiveRatesTargetHookReturnObject,\n} from '../types';\n\nexport const useLiveRatesQuery = (\n skip?: boolean\n): LiveRatesTargetHookReturnObject => {\n const liveRates = useLiveRatesProvider(skip);\n\n const setQuery = (query: LiveRatesProviderQuery) => {\n liveRates?.target?.dispatchEvent(\n new CustomEvent(SET_QUERY_EVENT_NAME, { detail: query })\n );\n };\n\n const closeQuery = () => {\n liveRates?.source?.close();\n };\n\n return { target: liveRates?.target || null, setQuery, closeQuery };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAMO,MAAME,iBAAiB,GAC5BC,IAAc,IACsB;EACpC,MAAMC,SAAS,GAAG,IAAAC,+BAAoB,EAACF,IAAI,CAAC;EAE5C,MAAMG,QAAQ,GAAIC,KAA6B,IAAK;IAClDH,SAAS,EAAEI,MAAM,EAAEC,aAAa,CAC9B,IAAIC,WAAW,CAACC,+BAAoB,EAAE;MAAEC,MAAM,EAAEL;IAAM,CAAC,CACzD,CAAC;EACH,CAAC;EAED,MAAMM,UAAU,GAAGA,CAAA,KAAM;IACvBT,SAAS,EAAEU,MAAM,EAAEC,KAAK,CAAC,CAAC;EAC5B,CAAC;EAED,OAAO;IAAEP,MAAM,EAAEJ,SAAS,EAAEI,MAAM,IAAI,IAAI;IAAEF,QAAQ;IAAEO;EAAW,CAAC;AACpE,CAAC;AAACG,OAAA,CAAAd,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -7,8 +7,11 @@ exports.useLiveRatesProvider = exports.LiveRatesContext = void 0;
7
7
  var _react = require("react");
8
8
  const LiveRatesContext = exports.LiveRatesContext = (0, _react.createContext)(undefined);
9
9
  LiveRatesContext.displayName = 'LiveRatesContext';
10
- const useLiveRatesProvider = () => {
10
+ const useLiveRatesProvider = skip => {
11
11
  const liveRates = (0, _react.useContext)(LiveRatesContext);
12
+ if (skip) {
13
+ return null;
14
+ }
12
15
  if (!liveRates) {
13
16
  throw new Error('Hook used outside of LiveRatesContextProvider');
14
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LiveRatesContext.js","names":["_react","require","LiveRatesContext","exports","createContext","undefined","displayName","useLiveRatesProvider","liveRates","useContext","Error"],"sources":["../../../../src/providers/LiveRates/LiveRatesContext.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\n\nimport type { Nullable, Voidable } from '../../types';\n\ninterface LiveRatesContextValue {\n target: Nullable<EventTarget>;\n source: Voidable<EventSource>;\n}\n\nexport const LiveRatesContext =\n createContext<Voidable<LiveRatesContextValue>>(undefined);\n\nLiveRatesContext.displayName = 'LiveRatesContext';\n\nexport const useLiveRatesProvider = () => {\n const liveRates = useContext(LiveRatesContext);\n\n if (!liveRates) {\n throw new Error('Hook used outside of LiveRatesContextProvider');\n }\n\n return liveRates;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASO,MAAMC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAC3B,IAAAE,oBAAa,EAAkCC,SAAS,CAAC;AAE3DH,gBAAgB,CAACI,WAAW,GAAG,kBAAkB;AAE1C,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,MAAMC,SAAS,GAAG,IAAAC,iBAAU,EAACP,gBAAgB,CAAC;EAE9C,IAAI,CAACM,SAAS,EAAE;IACd,MAAM,IAAIE,KAAK,CAAC,+CAA+C,CAAC;EAClE;EAEA,OAAOF,SAAS;AAClB,CAAC;AAACL,OAAA,CAAAI,oBAAA,GAAAA,oBAAA","ignoreList":[]}
1
+ {"version":3,"file":"LiveRatesContext.js","names":["_react","require","LiveRatesContext","exports","createContext","undefined","displayName","useLiveRatesProvider","skip","liveRates","useContext","Error"],"sources":["../../../../src/providers/LiveRates/LiveRatesContext.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\n\nimport type { Nullable, Voidable } from '../../types';\n\ninterface LiveRatesContextValue {\n target: Nullable<EventTarget>;\n source: Voidable<EventSource>;\n}\n\nexport const LiveRatesContext =\n createContext<Voidable<LiveRatesContextValue>>(undefined);\n\nLiveRatesContext.displayName = 'LiveRatesContext';\n\nexport const useLiveRatesProvider = (skip?: boolean) => {\n const liveRates = useContext(LiveRatesContext);\n\n if (skip) {\n return null;\n }\n\n if (!liveRates) {\n throw new Error('Hook used outside of LiveRatesContextProvider');\n }\n\n return liveRates;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASO,MAAMC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAC3B,IAAAE,oBAAa,EAAkCC,SAAS,CAAC;AAE3DH,gBAAgB,CAACI,WAAW,GAAG,kBAAkB;AAE1C,MAAMC,oBAAoB,GAAIC,IAAc,IAAK;EACtD,MAAMC,SAAS,GAAG,IAAAC,iBAAU,EAACR,gBAAgB,CAAC;EAE9C,IAAIM,IAAI,EAAE;IACR,OAAO,IAAI;EACb;EAEA,IAAI,CAACC,SAAS,EAAE;IACd,MAAM,IAAIE,KAAK,CAAC,+CAA+C,CAAC;EAClE;EAEA,OAAOF,SAAS;AAClB,CAAC;AAACN,OAAA,CAAAI,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -14,6 +14,8 @@ let DataRecordType = exports.DataRecordType = function (DataRecordType) {
14
14
  DataRecordType["SENTIMENT"] = "sentiment";
15
15
  DataRecordType["LOW"] = "low";
16
16
  DataRecordType["HIGH"] = "high";
17
+ DataRecordType["SYMBOL"] = "symbol";
18
+ DataRecordType["TRADE_MODE"] = "tradeMode";
17
19
  return DataRecordType;
18
20
  }({});
19
21
  //# sourceMappingURL=dataTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataTypes.js","names":["DataRecordType","exports"],"sources":["../../../src/types/dataTypes.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport interface DataRecord {\n [key: string]: string | number | SentimentValue | undefined | number[];\n instrument: string;\n displayName: string;\n buy?: number;\n sell?: number;\n spread?: number;\n sentiment?: SentimentValue;\n sellPriceMovement?: number;\n buyPriceMovement?: number;\n dailyPercentChange?: string;\n displayPrecision?: number;\n chart?: number[];\n high?: number;\n low?: number;\n}\n\nexport interface SentimentValue {\n shortPercent: number;\n longPercent: number;\n}\n\nexport type EmptyRecord = Record<string, never>;\n\nexport interface QueryVariables {\n [key: string]: any;\n}\n\nexport enum DataRecordType {\n INSTRUMENT = 'instrument',\n SELL = 'sell',\n BUY = 'buy',\n DAILY_CHANGE = 'dailyChange',\n CHART = 'chart',\n SPREAD = 'spread',\n SENTIMENT = 'sentiment',\n LOW = 'low',\n HIGH = 'high',\n}\n"],"mappings":";;;;;;IA6BYA,cAAc,GAAAC,OAAA,CAAAD,cAAA,aAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"dataTypes.js","names":["DataRecordType","exports"],"sources":["../../../src/types/dataTypes.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport interface DataRecord {\n [key: string]: string | number | SentimentValue | undefined | number[];\n instrument: string;\n displayName: string;\n buy?: number;\n sell?: number;\n spread?: number;\n sentiment?: SentimentValue;\n sellPriceMovement?: number;\n buyPriceMovement?: number;\n dailyPercentChange?: string;\n displayPrecision?: number;\n chart?: number[];\n high?: number;\n low?: number;\n}\n\nexport interface SentimentValue {\n shortPercent: number;\n longPercent: number;\n}\n\nexport type EmptyRecord = Record<string, never>;\n\nexport interface QueryVariables {\n [key: string]: any;\n}\n\nexport enum DataRecordType {\n INSTRUMENT = 'instrument',\n SELL = 'sell',\n BUY = 'buy',\n DAILY_CHANGE = 'dailyChange',\n CHART = 'chart',\n SPREAD = 'spread',\n SENTIMENT = 'sentiment',\n LOW = 'low',\n HIGH = 'high',\n SYMBOL = 'symbol',\n TRADE_MODE = 'tradeMode',\n}\n"],"mappings":";;;;;;IA6BYA,cAAc,GAAAC,OAAA,CAAAD,cAAA,aAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
@@ -15,13 +15,15 @@ const TableCell = _ref => {
15
15
  return React.createElement("td", {
16
16
  className: classnames(`lw-h-[inherit] lw-p-0 lw-font-sans ${classNames}`, {
17
17
  'lw-text-right': type === 'number',
18
- 'lw-text-left': type === 'text'
18
+ 'lw-text-left': type === 'text',
19
+ 'lw-text-center': type === 'textCentered'
19
20
  }),
20
21
  "data-testid": "table-cell"
21
22
  }, React.createElement("div", {
22
23
  className: classnames('lw-flex lw-h-[inherit] lw-items-center lw-px-3 lw-py-0', {
23
24
  'lw-justify-end': type === 'number',
24
25
  'lw-justify-start': type === 'text',
26
+ 'lw-justify-center': type === 'textCentered',
25
27
  'lw-pr-7': additionalPaddingRight && !isLoading,
26
28
  'lw-pr-3': !additionalPaddingRight || isLoading
27
29
  })
@@ -1 +1 @@
1
- {"version":3,"file":"TableCell.js","names":["classnames","React","CELL_EMPTY_VALUE","Loader","LoaderSize","TableCell","_ref","type","loaderSize","md","classNames","children","isError","isLoading","additionalPaddingRight","createElement","className","size"],"sources":["../../../../src/components/Table/TableCell.tsx"],"sourcesContent":["import classnames from 'classnames';\nimport React from 'react';\n\nimport { CELL_EMPTY_VALUE } from '../constant';\nimport { Loader, LoaderSize } from '../Loader';\nimport type { TableCellProps } from './types';\n\nconst TableCell = ({\n type = 'number',\n loaderSize = LoaderSize.md,\n classNames = '',\n children,\n isError,\n isLoading,\n additionalPaddingRight = false,\n}: TableCellProps) => (\n <td\n className={classnames(`lw-h-[inherit] lw-p-0 lw-font-sans ${classNames}`, {\n 'lw-text-right': type === 'number',\n 'lw-text-left': type === 'text',\n })}\n data-testid=\"table-cell\"\n >\n <div\n className={classnames(\n 'lw-flex lw-h-[inherit] lw-items-center lw-px-3 lw-py-0',\n {\n 'lw-justify-end': type === 'number',\n 'lw-justify-start': type === 'text',\n 'lw-pr-7': additionalPaddingRight && !isLoading,\n 'lw-pr-3': !additionalPaddingRight || isLoading,\n }\n )}\n >\n {isLoading && <Loader size={loaderSize} />}\n {!isLoading && !isError && children}\n {!isLoading && isError && <span>{CELL_EMPTY_VALUE}</span>}\n </div>\n </td>\n);\n\nexport { TableCell };\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,gBAAgB,QAAQ,aAAa;AAC9C,SAASC,MAAM,EAAEC,UAAU,QAAQ,WAAW;AAG9C,MAAMC,SAAS,GAAGC,IAAA;EAAA,IAAC;IACjBC,IAAI,GAAG,QAAQ;IACfC,UAAU,GAAGJ,UAAU,CAACK,EAAE;IAC1BC,UAAU,GAAG,EAAE;IACfC,QAAQ;IACRC,OAAO;IACPC,SAAS;IACTC,sBAAsB,GAAG;EACX,CAAC,GAAAR,IAAA;EAAA,OACfL,KAAA,CAAAc,aAAA;IACEC,SAAS,EAAEhB,UAAU,CAAC,sCAAsCU,UAAU,EAAE,EAAE;MACxE,eAAe,EAAEH,IAAI,KAAK,QAAQ;MAClC,cAAc,EAAEA,IAAI,KAAK;IAC3B,CAAC,CAAE;IACH,eAAY;EAAY,GAExBN,KAAA,CAAAc,aAAA;IACEC,SAAS,EAAEhB,UAAU,CACnB,wDAAwD,EACxD;MACE,gBAAgB,EAAEO,IAAI,KAAK,QAAQ;MACnC,kBAAkB,EAAEA,IAAI,KAAK,MAAM;MACnC,SAAS,EAAEO,sBAAsB,IAAI,CAACD,SAAS;MAC/C,SAAS,EAAE,CAACC,sBAAsB,IAAID;IACxC,CACF;EAAE,GAEDA,SAAS,IAAIZ,KAAA,CAAAc,aAAA,CAACZ,MAAM;IAACc,IAAI,EAAET;EAAW,CAAE,CAAC,EACzC,CAACK,SAAS,IAAI,CAACD,OAAO,IAAID,QAAQ,EAClC,CAACE,SAAS,IAAID,OAAO,IAAIX,KAAA,CAAAc,aAAA,eAAOb,gBAAuB,CACrD,CACH,CAAC;AAAA,CACN;AAED,SAASG,SAAS","ignoreList":[]}
1
+ {"version":3,"file":"TableCell.js","names":["classnames","React","CELL_EMPTY_VALUE","Loader","LoaderSize","TableCell","_ref","type","loaderSize","md","classNames","children","isError","isLoading","additionalPaddingRight","createElement","className","size"],"sources":["../../../../src/components/Table/TableCell.tsx"],"sourcesContent":["import classnames from 'classnames';\nimport React from 'react';\n\nimport { CELL_EMPTY_VALUE } from '../constant';\nimport { Loader, LoaderSize } from '../Loader';\nimport type { TableCellProps } from './types';\n\nconst TableCell = ({\n type = 'number',\n loaderSize = LoaderSize.md,\n classNames = '',\n children,\n isError,\n isLoading,\n additionalPaddingRight = false,\n}: TableCellProps) => (\n <td\n className={classnames(`lw-h-[inherit] lw-p-0 lw-font-sans ${classNames}`, {\n 'lw-text-right': type === 'number',\n 'lw-text-left': type === 'text',\n 'lw-text-center': type === 'textCentered',\n })}\n data-testid=\"table-cell\"\n >\n <div\n className={classnames(\n 'lw-flex lw-h-[inherit] lw-items-center lw-px-3 lw-py-0',\n {\n 'lw-justify-end': type === 'number',\n 'lw-justify-start': type === 'text',\n 'lw-justify-center': type === 'textCentered',\n 'lw-pr-7': additionalPaddingRight && !isLoading,\n 'lw-pr-3': !additionalPaddingRight || isLoading,\n }\n )}\n >\n {isLoading && <Loader size={loaderSize} />}\n {!isLoading && !isError && children}\n {!isLoading && isError && <span>{CELL_EMPTY_VALUE}</span>}\n </div>\n </td>\n);\n\nexport { TableCell };\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,gBAAgB,QAAQ,aAAa;AAC9C,SAASC,MAAM,EAAEC,UAAU,QAAQ,WAAW;AAG9C,MAAMC,SAAS,GAAGC,IAAA;EAAA,IAAC;IACjBC,IAAI,GAAG,QAAQ;IACfC,UAAU,GAAGJ,UAAU,CAACK,EAAE;IAC1BC,UAAU,GAAG,EAAE;IACfC,QAAQ;IACRC,OAAO;IACPC,SAAS;IACTC,sBAAsB,GAAG;EACX,CAAC,GAAAR,IAAA;EAAA,OACfL,KAAA,CAAAc,aAAA;IACEC,SAAS,EAAEhB,UAAU,CAAC,sCAAsCU,UAAU,EAAE,EAAE;MACxE,eAAe,EAAEH,IAAI,KAAK,QAAQ;MAClC,cAAc,EAAEA,IAAI,KAAK,MAAM;MAC/B,gBAAgB,EAAEA,IAAI,KAAK;IAC7B,CAAC,CAAE;IACH,eAAY;EAAY,GAExBN,KAAA,CAAAc,aAAA;IACEC,SAAS,EAAEhB,UAAU,CACnB,wDAAwD,EACxD;MACE,gBAAgB,EAAEO,IAAI,KAAK,QAAQ;MACnC,kBAAkB,EAAEA,IAAI,KAAK,MAAM;MACnC,mBAAmB,EAAEA,IAAI,KAAK,cAAc;MAC5C,SAAS,EAAEO,sBAAsB,IAAI,CAACD,SAAS;MAC/C,SAAS,EAAE,CAACC,sBAAsB,IAAID;IACxC,CACF;EAAE,GAEDA,SAAS,IAAIZ,KAAA,CAAAc,aAAA,CAACZ,MAAM;IAACc,IAAI,EAAET;EAAW,CAAE,CAAC,EACzC,CAACK,SAAS,IAAI,CAACD,OAAO,IAAID,QAAQ,EAClC,CAACE,SAAS,IAAID,OAAO,IAAIX,KAAA,CAAAc,aAAA,eAAOb,gBAAuB,CACrD,CACH,CAAC;AAAA,CACN;AAED,SAASG,SAAS","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import { useLocale } from '@oanda/mono-i18n';
2
- import classNames from 'classnames';
3
2
  import React from 'react';
4
3
  import { useLayoutProvider } from '../../providers';
4
+ import { cn } from '../../tailwind';
5
5
  const TableHeader = _ref => {
6
6
  let {
7
7
  columns,
@@ -18,16 +18,29 @@ const TableHeader = _ref => {
18
18
  "data-testid": "table-header"
19
19
  }, React.createElement("tr", {
20
20
  className: "lw-h-11 lw-bg-bg-primary lw-text-text-primary"
21
- }, columns.map((item, index) => React.createElement("th", {
22
- key: `table-header-${item.displayName}`,
23
- className: classNames('lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold', {
24
- 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,
25
- 'lw-bg-whiteWithShadow': !isDark && !isError && isScrolled && index === 0,
26
- 'lw-bg-bg-primary': isDark && !isError && isScrolled && index === 0
27
- })
28
- }, React.createElement("div", {
29
- className: item.additionalStyles
30
- }, lang(item.displayName))))));
21
+ }, columns.map((_ref2, index) => {
22
+ let {
23
+ displayName,
24
+ additionalStyles: {
25
+ align,
26
+ minWidth,
27
+ paddingRight
28
+ }
29
+ } = _ref2;
30
+ return React.createElement("th", {
31
+ key: `table-header-${displayName}`,
32
+ className: cn('lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold', {
33
+ 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,
34
+ 'lw-bg-whiteWithShadow': !isDark && !isError && isScrolled && index === 0,
35
+ 'lw-bg-bg-primary': isDark && !isError && isScrolled && index === 0
36
+ })
37
+ }, React.createElement("div", {
38
+ className: cn(align === 'right' && 'lw-text-right', align === 'left' && 'lw-text-left', align === 'center' && 'lw-text-center', paddingRight && 'lw-pr-4'),
39
+ style: {
40
+ minWidth
41
+ }
42
+ }, lang(displayName)));
43
+ })));
31
44
  };
32
45
  export { TableHeader };
33
46
  //# sourceMappingURL=TableHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeader.js","names":["useLocale","classNames","React","useLayoutProvider","TableHeader","_ref","columns","isScrolled","isError","isDark","lang","createElement","className","map","item","index","key","displayName","additionalStyles"],"sources":["../../../../src/components/Table/TableHeader.tsx"],"sourcesContent":["import { useLocale } from '@oanda/mono-i18n';\nimport classNames from 'classnames';\nimport React from 'react';\n\nimport { useLayoutProvider } from '../../providers';\nimport type { TableHeaderProps } from './types';\n\nconst TableHeader = ({ columns, isScrolled, isError }: TableHeaderProps) => {\n const { isDark } = useLayoutProvider();\n const { lang } = useLocale();\n\n return (\n <thead data-testid=\"table-header\">\n <tr className=\"lw-h-11 lw-bg-bg-primary lw-text-text-primary\">\n {columns.map((item, index) => (\n <th\n key={`table-header-${item.displayName}`}\n className={classNames(\n 'lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold',\n {\n 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,\n 'lw-bg-whiteWithShadow':\n !isDark && !isError && isScrolled && index === 0,\n 'lw-bg-bg-primary':\n isDark && !isError && isScrolled && index === 0,\n }\n )}\n >\n <div className={item.additionalStyles}>\n {lang(item.displayName)}\n </div>\n </th>\n ))}\n </tr>\n </thead>\n );\n};\n\nexport { TableHeader };\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,kBAAkB;AAC5C,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,iBAAiB,QAAQ,iBAAiB;AAGnD,MAAMC,WAAW,GAAGC,IAAA,IAAwD;EAAA,IAAvD;IAAEC,OAAO;IAAEC,UAAU;IAAEC;EAA0B,CAAC,GAAAH,IAAA;EACrE,MAAM;IAAEI;EAAO,CAAC,GAAGN,iBAAiB,CAAC,CAAC;EACtC,MAAM;IAAEO;EAAK,CAAC,GAAGV,SAAS,CAAC,CAAC;EAE5B,OACEE,KAAA,CAAAS,aAAA;IAAO,eAAY;EAAc,GAC/BT,KAAA,CAAAS,aAAA;IAAIC,SAAS,EAAC;EAA+C,GAC1DN,OAAO,CAACO,GAAG,CAAC,CAACC,IAAI,EAAEC,KAAK,KACvBb,KAAA,CAAAS,aAAA;IACEK,GAAG,EAAE,gBAAgBF,IAAI,CAACG,WAAW,EAAG;IACxCL,SAAS,EAAEX,UAAU,CACnB,6EAA6E,EAC7E;MACE,6BAA6B,EAAE,CAACO,OAAO,IAAIO,KAAK,KAAK,CAAC;MACtD,uBAAuB,EACrB,CAACN,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIQ,KAAK,KAAK,CAAC;MAClD,kBAAkB,EAChBN,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIQ,KAAK,KAAK;IAClD,CACF;EAAE,GAEFb,KAAA,CAAAS,aAAA;IAAKC,SAAS,EAAEE,IAAI,CAACI;EAAiB,GACnCR,IAAI,CAACI,IAAI,CAACG,WAAW,CACnB,CACH,CACL,CACC,CACC,CAAC;AAEZ,CAAC;AAED,SAASb,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"TableHeader.js","names":["useLocale","React","useLayoutProvider","cn","TableHeader","_ref","columns","isScrolled","isError","isDark","lang","createElement","className","map","_ref2","index","displayName","additionalStyles","align","minWidth","paddingRight","key","style"],"sources":["../../../../src/components/Table/TableHeader.tsx"],"sourcesContent":["import { useLocale } from '@oanda/mono-i18n';\nimport React from 'react';\n\nimport { useLayoutProvider } from '../../providers';\nimport { cn } from '../../tailwind';\nimport type { TableHeaderProps } from './types';\n\nconst TableHeader = ({ columns, isScrolled, isError }: TableHeaderProps) => {\n const { isDark } = useLayoutProvider();\n const { lang } = useLocale();\n\n return (\n <thead data-testid=\"table-header\">\n <tr className=\"lw-h-11 lw-bg-bg-primary lw-text-text-primary\">\n {columns.map(\n (\n {\n displayName,\n additionalStyles: { align, minWidth, paddingRight },\n },\n index\n ) => (\n <th\n key={`table-header-${displayName}`}\n className={cn(\n 'lw-px-3 lw-py-0 lw-font-sans lw-text-sm lw-tracking-normal lw-font-semibold',\n {\n 'lw-sticky lw-left-0 lw-pr-3': !isError && index === 0,\n 'lw-bg-whiteWithShadow':\n !isDark && !isError && isScrolled && index === 0,\n 'lw-bg-bg-primary':\n isDark && !isError && isScrolled && index === 0,\n }\n )}\n >\n <div\n className={cn(\n align === 'right' && 'lw-text-right',\n align === 'left' && 'lw-text-left',\n align === 'center' && 'lw-text-center',\n paddingRight && 'lw-pr-4'\n )}\n style={{ minWidth }}\n >\n {lang(displayName)}\n </div>\n </th>\n )\n )}\n </tr>\n </thead>\n );\n};\n\nexport { TableHeader };\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,kBAAkB;AAC5C,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,iBAAiB,QAAQ,iBAAiB;AACnD,SAASC,EAAE,QAAQ,gBAAgB;AAGnC,MAAMC,WAAW,GAAGC,IAAA,IAAwD;EAAA,IAAvD;IAAEC,OAAO;IAAEC,UAAU;IAAEC;EAA0B,CAAC,GAAAH,IAAA;EACrE,MAAM;IAAEI;EAAO,CAAC,GAAGP,iBAAiB,CAAC,CAAC;EACtC,MAAM;IAAEQ;EAAK,CAAC,GAAGV,SAAS,CAAC,CAAC;EAE5B,OACEC,KAAA,CAAAU,aAAA;IAAO,eAAY;EAAc,GAC/BV,KAAA,CAAAU,aAAA;IAAIC,SAAS,EAAC;EAA+C,GAC1DN,OAAO,CAACO,GAAG,CACV,CAAAC,KAAA,EAKEC,KAAK;IAAA,IAJL;MACEC,WAAW;MACXC,gBAAgB,EAAE;QAAEC,KAAK;QAAEC,QAAQ;QAAEC;MAAa;IACpD,CAAC,GAAAN,KAAA;IAAA,OAGDb,KAAA,CAAAU,aAAA;MACEU,GAAG,EAAE,gBAAgBL,WAAW,EAAG;MACnCJ,SAAS,EAAET,EAAE,CACX,6EAA6E,EAC7E;QACE,6BAA6B,EAAE,CAACK,OAAO,IAAIO,KAAK,KAAK,CAAC;QACtD,uBAAuB,EACrB,CAACN,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIQ,KAAK,KAAK,CAAC;QAClD,kBAAkB,EAChBN,MAAM,IAAI,CAACD,OAAO,IAAID,UAAU,IAAIQ,KAAK,KAAK;MAClD,CACF;IAAE,GAEFd,KAAA,CAAAU,aAAA;MACEC,SAAS,EAAET,EAAE,CACXe,KAAK,KAAK,OAAO,IAAI,eAAe,EACpCA,KAAK,KAAK,MAAM,IAAI,cAAc,EAClCA,KAAK,KAAK,QAAQ,IAAI,gBAAgB,EACtCE,YAAY,IAAI,SAClB,CAAE;MACFE,KAAK,EAAE;QAAEH;MAAS;IAAE,GAEnBT,IAAI,CAACM,WAAW,CACd,CACH,CAAC;EAAA,CAET,CACE,CACC,CAAC;AAEZ,CAAC;AAED,SAASZ,WAAW","ignoreList":[]}