@oanda/labs-crowd-view-widget 1.0.69 → 1.0.71

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 (135) hide show
  1. package/CHANGELOG.md +458 -5120
  2. package/dist/main/CrowdViewWidget/components/Chart/chartUtils/getTooltipFormatter.js +2 -2
  3. package/dist/main/CrowdViewWidget/components/Chart/chartUtils/getTooltipFormatter.js.map +1 -1
  4. package/dist/main/translations/sources/ja.json +19 -18
  5. package/dist/module/CrowdViewWidget/CrowdViewWidget.js +19 -12
  6. package/dist/module/CrowdViewWidget/CrowdViewWidget.js.map +1 -1
  7. package/dist/module/CrowdViewWidget/Main.js +37 -30
  8. package/dist/module/CrowdViewWidget/Main.js.map +1 -1
  9. package/dist/module/CrowdViewWidget/components/Chart/Chart.js +36 -29
  10. package/dist/module/CrowdViewWidget/components/Chart/Chart.js.map +1 -1
  11. package/dist/module/CrowdViewWidget/components/Chart/ChartWithData.js +30 -23
  12. package/dist/module/CrowdViewWidget/components/Chart/ChartWithData.js.map +1 -1
  13. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getDataZoomConfig.js +11 -4
  14. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getDataZoomConfig.js.map +1 -1
  15. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getGridConfig.js +10 -3
  16. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getGridConfig.js.map +1 -1
  17. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getGridLines.js +21 -14
  18. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getGridLines.js.map +1 -1
  19. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getLabelsConfig.js +23 -15
  20. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getLabelsConfig.js.map +1 -1
  21. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getSeriesCandlestickConfig.js +16 -8
  22. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getSeriesCandlestickConfig.js.map +1 -1
  23. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getSeriesHeatmapConfig.js +10 -3
  24. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getSeriesHeatmapConfig.js.map +1 -1
  25. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getSeriesSentimentConfig.js +10 -3
  26. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getSeriesSentimentConfig.js.map +1 -1
  27. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getTooltipConfig.js +12 -5
  28. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getTooltipConfig.js.map +1 -1
  29. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getVisualMapConfig.js +13 -6
  30. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getVisualMapConfig.js.map +1 -1
  31. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getXAxisConfig.js +13 -6
  32. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getXAxisConfig.js.map +1 -1
  33. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getYAxisConfig.js +14 -7
  34. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/getYAxisConfig.js.map +1 -1
  35. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/index.js +126 -11
  36. package/dist/module/CrowdViewWidget/components/Chart/chartOptions/index.js.map +1 -1
  37. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatFullDate.js +8 -1
  38. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatFullDate.js.map +1 -1
  39. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatXAxisAdditionalLabel.js +8 -1
  40. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatXAxisAdditionalLabel.js.map +1 -1
  41. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatXAxisLabel.js +11 -4
  42. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatXAxisLabel.js.map +1 -1
  43. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatYAxisLabel.js +10 -3
  44. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/formatYAxisLabel.js.map +1 -1
  45. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getChartStyles.js +15 -8
  46. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getChartStyles.js.map +1 -1
  47. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getGradientColor.js +11 -3
  48. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getGradientColor.js.map +1 -1
  49. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getLabelData.js +8 -1
  50. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getLabelData.js.map +1 -1
  51. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getRectColor.js +12 -5
  52. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getRectColor.js.map +1 -1
  53. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getTooltipFormatter.js +19 -12
  54. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/getTooltipFormatter.js.map +1 -1
  55. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/handleLabelUpdate.js +16 -9
  56. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/handleLabelUpdate.js.map +1 -1
  57. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/handleTooltipUpdate.js +8 -1
  58. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/handleTooltipUpdate.js.map +1 -1
  59. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/index.js +148 -13
  60. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/index.js.map +1 -1
  61. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/isDifferenceGreaterThanTwoWeeks.js +10 -3
  62. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/isDifferenceGreaterThanTwoWeeks.js.map +1 -1
  63. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/normalizeLocale.js +8 -1
  64. package/dist/module/CrowdViewWidget/components/Chart/chartUtils/normalizeLocale.js.map +1 -1
  65. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/getBucketWidthMultiplayer.js +11 -4
  66. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/getBucketWidthMultiplayer.js.map +1 -1
  67. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/getInstrumentConfig.js +14 -7
  68. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/getInstrumentConfig.js.map +1 -1
  69. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/getTimeSpanForGranularity.js +14 -7
  70. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/getTimeSpanForGranularity.js.map +1 -1
  71. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/index.js +82 -7
  72. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/index.js.map +1 -1
  73. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/processOrderPositionBooks.js +8 -1
  74. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/processOrderPositionBooks.js.map +1 -1
  75. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/processPriceCandles.js +8 -1
  76. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/processPriceCandles.js.map +1 -1
  77. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/processSentiments.js +8 -1
  78. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/processSentiments.js.map +1 -1
  79. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/validateData.js +8 -1
  80. package/dist/module/CrowdViewWidget/components/Chart/dataUtils/validateData.js.map +1 -1
  81. package/dist/module/CrowdViewWidget/components/Chart/getOption.js +27 -20
  82. package/dist/module/CrowdViewWidget/components/Chart/getOption.js.map +1 -1
  83. package/dist/module/CrowdViewWidget/components/Chart/index.js +71 -6
  84. package/dist/module/CrowdViewWidget/components/Chart/index.js.map +1 -1
  85. package/dist/module/CrowdViewWidget/components/Chart/types.js +5 -1
  86. package/dist/module/CrowdViewWidget/components/Chart/useCrowdViewData.js +35 -28
  87. package/dist/module/CrowdViewWidget/components/Chart/useCrowdViewData.js.map +1 -1
  88. package/dist/module/CrowdViewWidget/components/Chart/useResizeObserver.js +13 -6
  89. package/dist/module/CrowdViewWidget/components/Chart/useResizeObserver.js.map +1 -1
  90. package/dist/module/CrowdViewWidget/components/Legend/Legend.js +23 -15
  91. package/dist/module/CrowdViewWidget/components/Legend/Legend.js.map +1 -1
  92. package/dist/module/CrowdViewWidget/components/Legend/LegendBar.js +17 -9
  93. package/dist/module/CrowdViewWidget/components/Legend/LegendBar.js.map +1 -1
  94. package/dist/module/CrowdViewWidget/components/Legend/index.js +27 -2
  95. package/dist/module/CrowdViewWidget/components/Legend/index.js.map +1 -1
  96. package/dist/module/CrowdViewWidget/components/index.js +27 -2
  97. package/dist/module/CrowdViewWidget/components/index.js.map +1 -1
  98. package/dist/module/CrowdViewWidget/constants.js +38 -31
  99. package/dist/module/CrowdViewWidget/constants.js.map +1 -1
  100. package/dist/module/CrowdViewWidget/index.js +27 -2
  101. package/dist/module/CrowdViewWidget/index.js.map +1 -1
  102. package/dist/module/CrowdViewWidget/render.js +13 -10
  103. package/dist/module/CrowdViewWidget/render.js.map +1 -1
  104. package/dist/module/CrowdViewWidget/selectConfig.js +49 -43
  105. package/dist/module/CrowdViewWidget/selectConfig.js.map +1 -1
  106. package/dist/module/CrowdViewWidget/types.js +7 -1
  107. package/dist/module/CrowdViewWidget/types.js.map +1 -1
  108. package/dist/module/gql/getOrderPositionBooks.js +8 -3
  109. package/dist/module/gql/getOrderPositionBooks.js.map +1 -1
  110. package/dist/module/gql/getPriceCandles.js +8 -3
  111. package/dist/module/gql/getPriceCandles.js.map +1 -1
  112. package/dist/module/gql/getSentiments.js +8 -3
  113. package/dist/module/gql/getSentiments.js.map +1 -1
  114. package/dist/module/gql/types/fragment-masking.js +11 -3
  115. package/dist/module/gql/types/fragment-masking.js.map +1 -1
  116. package/dist/module/gql/types/gql.js +9 -2
  117. package/dist/module/gql/types/gql.js.map +1 -1
  118. package/dist/module/gql/types/graphql.js +27 -21
  119. package/dist/module/gql/types/graphql.js.map +1 -1
  120. package/dist/module/gql/types/index.js +27 -2
  121. package/dist/module/gql/types/index.js.map +1 -1
  122. package/dist/module/index.js +16 -1
  123. package/dist/module/index.js.map +1 -1
  124. package/dist/module/translations/index.js +15 -8
  125. package/dist/module/translations/index.js.map +1 -1
  126. package/dist/module/translations/sources/ja.json +19 -18
  127. package/dist/module/translations/translations.js +7 -1
  128. package/dist/module/translations/translations.js.map +1 -1
  129. package/dist/types/gql/getOrderPositionBooks.d.ts +1 -1
  130. package/dist/types/gql/getPriceCandles.d.ts +1 -1
  131. package/dist/types/gql/getSentiments.d.ts +1 -1
  132. package/package.json +8 -4
  133. package/src/CrowdViewWidget/components/Chart/chartUtils/getTooltipFormatter.ts +2 -2
  134. package/src/translations/sources/ja.json +19 -18
  135. package/tsconfig.types.json +2 -4
@@ -1 +1 @@
1
- {"version":3,"file":"validateData.js","names":["validateData","priceCandlesData","orderPositionData","hasValidCandles","hasValidBooks","hasValidSentiments","hasValidPriceData","priceCandles","candle","length","hasValidOrderData","orderPositionBooks","books","Error"],"sources":["../../../../../../src/CrowdViewWidget/components/Chart/dataUtils/validateData.ts"],"sourcesContent":["import type {\n GetOrderPositionBooksQuery,\n GetPriceCandlesQuery,\n} from '../../../../gql/types/graphql';\n\nexport const validateData = (\n priceCandlesData: GetPriceCandlesQuery | undefined,\n orderPositionData: GetOrderPositionBooksQuery | undefined,\n hasValidCandles: boolean,\n hasValidBooks: boolean,\n hasValidSentiments: boolean\n): Error | null => {\n const hasValidPriceData =\n (priceCandlesData?.priceCandles?.candle?.length ?? 0) >= 1;\n const hasValidOrderData =\n (orderPositionData?.orderPositionBooks?.books?.length ?? 0) >= 1;\n\n if (!hasValidPriceData) {\n return new Error('Insufficient price candle data');\n }\n if (!hasValidOrderData) {\n return new Error('Insufficient order position data');\n }\n if (!hasValidCandles) {\n return new Error('Invalid candle data');\n }\n if (!hasValidBooks) {\n return new Error('Invalid book data');\n }\n if (!hasValidSentiments) {\n return new Error('Invalid sentiment data');\n }\n\n return null;\n};\n"],"mappings":"AAKA,OAAO,MAAMA,YAAY,GAAGA,CAC1BC,gBAAkD,EAClDC,iBAAyD,EACzDC,eAAwB,EACxBC,aAAsB,EACtBC,kBAA2B,KACV;EACjB,MAAMC,iBAAiB,GACrB,CAACL,gBAAgB,EAAEM,YAAY,EAAEC,MAAM,EAAEC,MAAM,IAAI,CAAC,KAAK,CAAC;EAC5D,MAAMC,iBAAiB,GACrB,CAACR,iBAAiB,EAAES,kBAAkB,EAAEC,KAAK,EAAEH,MAAM,IAAI,CAAC,KAAK,CAAC;EAElE,IAAI,CAACH,iBAAiB,EAAE;IACtB,OAAO,IAAIO,KAAK,CAAC,gCAAgC,CAAC;EACpD;EACA,IAAI,CAACH,iBAAiB,EAAE;IACtB,OAAO,IAAIG,KAAK,CAAC,kCAAkC,CAAC;EACtD;EACA,IAAI,CAACV,eAAe,EAAE;IACpB,OAAO,IAAIU,KAAK,CAAC,qBAAqB,CAAC;EACzC;EACA,IAAI,CAACT,aAAa,EAAE;IAClB,OAAO,IAAIS,KAAK,CAAC,mBAAmB,CAAC;EACvC;EACA,IAAI,CAACR,kBAAkB,EAAE;IACvB,OAAO,IAAIQ,KAAK,CAAC,wBAAwB,CAAC;EAC5C;EAEA,OAAO,IAAI;AACb,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"validateData.js","names":["validateData","priceCandlesData","orderPositionData","hasValidCandles","hasValidBooks","hasValidSentiments","hasValidPriceData","priceCandles","candle","length","hasValidOrderData","orderPositionBooks","books","Error","exports"],"sources":["../../../../../../src/CrowdViewWidget/components/Chart/dataUtils/validateData.ts"],"sourcesContent":["import type {\n GetOrderPositionBooksQuery,\n GetPriceCandlesQuery,\n} from '../../../../gql/types/graphql';\n\nexport const validateData = (\n priceCandlesData: GetPriceCandlesQuery | undefined,\n orderPositionData: GetOrderPositionBooksQuery | undefined,\n hasValidCandles: boolean,\n hasValidBooks: boolean,\n hasValidSentiments: boolean\n): Error | null => {\n const hasValidPriceData =\n (priceCandlesData?.priceCandles?.candle?.length ?? 0) >= 1;\n const hasValidOrderData =\n (orderPositionData?.orderPositionBooks?.books?.length ?? 0) >= 1;\n\n if (!hasValidPriceData) {\n return new Error('Insufficient price candle data');\n }\n if (!hasValidOrderData) {\n return new Error('Insufficient order position data');\n }\n if (!hasValidCandles) {\n return new Error('Invalid candle data');\n }\n if (!hasValidBooks) {\n return new Error('Invalid book data');\n }\n if (!hasValidSentiments) {\n return new Error('Invalid sentiment data');\n }\n\n return null;\n};\n"],"mappings":";;;;;;AAKO,MAAMA,YAAY,GAAGA,CAC1BC,gBAAkD,EAClDC,iBAAyD,EACzDC,eAAwB,EACxBC,aAAsB,EACtBC,kBAA2B,KACV;EACjB,MAAMC,iBAAiB,GACrB,CAACL,gBAAgB,EAAEM,YAAY,EAAEC,MAAM,EAAEC,MAAM,IAAI,CAAC,KAAK,CAAC;EAC5D,MAAMC,iBAAiB,GACrB,CAACR,iBAAiB,EAAES,kBAAkB,EAAEC,KAAK,EAAEH,MAAM,IAAI,CAAC,KAAK,CAAC;EAElE,IAAI,CAACH,iBAAiB,EAAE;IACtB,OAAO,IAAIO,KAAK,CAAC,gCAAgC,CAAC;EACpD;EACA,IAAI,CAACH,iBAAiB,EAAE;IACtB,OAAO,IAAIG,KAAK,CAAC,kCAAkC,CAAC;EACtD;EACA,IAAI,CAACV,eAAe,EAAE;IACpB,OAAO,IAAIU,KAAK,CAAC,qBAAqB,CAAC;EACzC;EACA,IAAI,CAACT,aAAa,EAAE;IAClB,OAAO,IAAIS,KAAK,CAAC,mBAAmB,CAAC;EACvC;EACA,IAAI,CAACR,kBAAkB,EAAE;IACvB,OAAO,IAAIQ,KAAK,CAAC,wBAAwB,CAAC;EAC5C;EAEA,OAAO,IAAI;AACb,CAAC;AAACC,OAAA,CAAAd,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -1,8 +1,14 @@
1
- import { CHART_CONFIG } from '../../constants';
2
- import { getDataZoomConfig, getGridConfig, getGridLines, getLabelsConfig, getSeriesCandlestickConfig, getSeriesHeatmapConfig, getSeriesSentimentConfig, getTooltipConfig, getVisualMapConfig, getXAxisConfig, getYAxisConfig } from './chartOptions';
3
- import { isDifferenceGreaterThanTwoWeeks } from './chartUtils';
4
- import { getChartStyles } from './chartUtils/getChartStyles';
5
- export const getOption = _ref => {
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getOption = void 0;
7
+ var _constants = require("../../constants");
8
+ var _chartOptions = require("./chartOptions");
9
+ var _chartUtils = require("./chartUtils");
10
+ var _getChartStyles = require("./chartUtils/getChartStyles");
11
+ const getOption = _ref => {
6
12
  let {
7
13
  mainData: {
8
14
  dates,
@@ -29,14 +35,14 @@ export const getOption = _ref => {
29
35
  labelCallback,
30
36
  locale
31
37
  } = _ref;
32
- const styles = getChartStyles(isDark);
38
+ const styles = (0, _getChartStyles.getChartStyles)(isDark);
33
39
  const selectedPriceRef = {
34
40
  current: 0
35
41
  };
36
- const initialStartZoom = isDesktop ? CHART_CONFIG.INITIAL_START_ZOOM_DESKTOP : CHART_CONFIG.INITIAL_START_ZOOM_MOBILE;
37
- const visibleXAxisData = dates.slice(dates.length * initialStartZoom / 100, dates.length * CHART_CONFIG.INITIAL_END_ZOOM / 100);
38
- const isGreaterThanTwoWeeks = isDifferenceGreaterThanTwoWeeks(visibleXAxisData[0], visibleXAxisData[visibleXAxisData.length - 1]);
39
- const heatmapChart = bookPrices && bookPrices.length > 0 ? [getSeriesHeatmapConfig({
42
+ const initialStartZoom = isDesktop ? _constants.CHART_CONFIG.INITIAL_START_ZOOM_DESKTOP : _constants.CHART_CONFIG.INITIAL_START_ZOOM_MOBILE;
43
+ const visibleXAxisData = dates.slice(dates.length * initialStartZoom / 100, dates.length * _constants.CHART_CONFIG.INITIAL_END_ZOOM / 100);
44
+ const isGreaterThanTwoWeeks = (0, _chartUtils.isDifferenceGreaterThanTwoWeeks)(visibleXAxisData[0], visibleXAxisData[visibleXAxisData.length - 1]);
45
+ const heatmapChart = bookPrices && bookPrices.length > 0 ? [(0, _chartOptions.getSeriesHeatmapConfig)({
40
46
  bucketWidth,
41
47
  buckets,
42
48
  isDark,
@@ -44,13 +50,13 @@ export const getOption = _ref => {
44
50
  sentimentThresholdMin,
45
51
  isLoading
46
52
  })] : [];
47
- const sentimentChart = sentimentLongs && sentimentLongs.length > 0 ? [getSeriesSentimentConfig({
53
+ const sentimentChart = sentimentLongs && sentimentLongs.length > 0 ? [(0, _chartOptions.getSeriesSentimentConfig)({
48
54
  styles,
49
55
  isLoading
50
56
  })] : [];
51
57
  return {
52
58
  animation: false,
53
- tooltip: getTooltipConfig({
59
+ tooltip: (0, _chartOptions.getTooltipConfig)({
54
60
  bookType,
55
61
  bucketWidth,
56
62
  buckets,
@@ -63,31 +69,31 @@ export const getOption = _ref => {
63
69
  isDark,
64
70
  locale
65
71
  }),
66
- grid: getGridConfig({
72
+ grid: (0, _chartOptions.getGridConfig)({
67
73
  isDesktop
68
74
  }),
69
- xAxis: getXAxisConfig({
75
+ xAxis: (0, _chartOptions.getXAxisConfig)({
70
76
  dates,
71
77
  isGreaterThanTwoWeeks,
72
78
  locale,
73
79
  isDesktop
74
80
  }),
75
- yAxis: getYAxisConfig({
81
+ yAxis: (0, _chartOptions.getYAxisConfig)({
76
82
  bucketWidth,
77
83
  displayPrecision,
78
84
  selectedPriceRef
79
85
  }),
80
- dataZoom: getDataZoomConfig({
86
+ dataZoom: (0, _chartOptions.getDataZoomConfig)({
81
87
  isDesktop
82
88
  }),
83
- visualMap: getVisualMapConfig({
89
+ visualMap: (0, _chartOptions.getVisualMapConfig)({
84
90
  sentimentLongColor: styles.sentimentLongColor,
85
91
  sentimentShortColor: styles.sentimentShortColor
86
92
  }),
87
- graphic: [...getGridLines({
93
+ graphic: [...(0, _chartOptions.getGridLines)({
88
94
  isDark,
89
95
  isDesktop
90
- }), ...getLabelsConfig({
96
+ }), ...(0, _chartOptions.getLabelsConfig)({
91
97
  isDark,
92
98
  isDesktop,
93
99
  locale,
@@ -106,11 +112,12 @@ export const getOption = _ref => {
106
112
  sentimentLongs
107
113
  }
108
114
  },
109
- series: [getSeriesCandlestickConfig({
115
+ series: [(0, _chartOptions.getSeriesCandlestickConfig)({
110
116
  styles,
111
117
  isLoading,
112
118
  locale
113
119
  }), ...heatmapChart, ...sentimentChart]
114
120
  };
115
121
  };
122
+ exports.getOption = getOption;
116
123
  //# sourceMappingURL=getOption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getOption.js","names":["CHART_CONFIG","getDataZoomConfig","getGridConfig","getGridLines","getLabelsConfig","getSeriesCandlestickConfig","getSeriesHeatmapConfig","getSeriesSentimentConfig","getTooltipConfig","getVisualMapConfig","getXAxisConfig","getYAxisConfig","isDifferenceGreaterThanTwoWeeks","getChartStyles","getOption","_ref","mainData","dates","candlesOpen","candlesClose","candlesLow","candlesHigh","bookPrices","bookIndexes","sentimentShorts","sentimentLongs","additionalData","bucketWidth","buckets","displayPrecision","bookType","sentimentThresholdMin","sentimentThresholdMax","isLoading","isDark","isDesktop","labelCallback","locale","styles","selectedPriceRef","current","initialStartZoom","INITIAL_START_ZOOM_DESKTOP","INITIAL_START_ZOOM_MOBILE","visibleXAxisData","slice","length","INITIAL_END_ZOOM","isGreaterThanTwoWeeks","heatmapChart","sentimentChart","animation","tooltip","tooltipLinesColor","grid","xAxis","yAxis","dataZoom","visualMap","sentimentLongColor","sentimentShortColor","graphic","dataset","source","series"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/getOption.ts"],"sourcesContent":["import { CHART_CONFIG } from '../../constants';\nimport {\n getDataZoomConfig,\n getGridConfig,\n getGridLines,\n getLabelsConfig,\n getSeriesCandlestickConfig,\n getSeriesHeatmapConfig,\n getSeriesSentimentConfig,\n getTooltipConfig,\n getVisualMapConfig,\n getXAxisConfig,\n getYAxisConfig,\n} from './chartOptions';\nimport { isDifferenceGreaterThanTwoWeeks } from './chartUtils';\nimport { getChartStyles } from './chartUtils/getChartStyles';\nimport type { GetOptionType } from './types';\n\nexport const getOption: GetOptionType = ({\n mainData: {\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices,\n bookIndexes,\n sentimentShorts,\n sentimentLongs,\n },\n additionalData: {\n bucketWidth,\n buckets,\n displayPrecision,\n bookType,\n sentimentThresholdMin,\n sentimentThresholdMax,\n },\n isLoading,\n isDark,\n isDesktop,\n labelCallback,\n locale,\n}) => {\n const styles = getChartStyles(isDark);\n const selectedPriceRef = { current: 0 };\n\n const initialStartZoom = isDesktop\n ? CHART_CONFIG.INITIAL_START_ZOOM_DESKTOP\n : CHART_CONFIG.INITIAL_START_ZOOM_MOBILE;\n\n const visibleXAxisData = dates.slice(\n (dates.length * initialStartZoom) / 100,\n (dates.length * CHART_CONFIG.INITIAL_END_ZOOM) / 100\n );\n\n const isGreaterThanTwoWeeks = isDifferenceGreaterThanTwoWeeks(\n visibleXAxisData[0],\n visibleXAxisData[visibleXAxisData.length - 1]\n );\n\n const heatmapChart =\n bookPrices && bookPrices.length > 0\n ? [\n getSeriesHeatmapConfig({\n bucketWidth,\n buckets,\n isDark,\n sentimentThresholdMax,\n sentimentThresholdMin,\n isLoading,\n }),\n ]\n : [];\n\n const sentimentChart =\n sentimentLongs && sentimentLongs.length > 0\n ? [\n getSeriesSentimentConfig({\n styles,\n isLoading,\n }),\n ]\n : [];\n\n return {\n animation: false,\n tooltip: getTooltipConfig({\n bookType,\n bucketWidth,\n buckets,\n labelCallback,\n selectedPriceRef,\n tooltipLinesColor: styles.tooltipLinesColor,\n sentimentLongs,\n sentimentShorts,\n isDesktop,\n isDark,\n locale,\n }),\n grid: getGridConfig({ isDesktop }),\n xAxis: getXAxisConfig({\n dates,\n isGreaterThanTwoWeeks,\n locale,\n isDesktop,\n }),\n yAxis: getYAxisConfig({\n bucketWidth,\n displayPrecision,\n selectedPriceRef,\n }),\n dataZoom: getDataZoomConfig({ isDesktop }),\n visualMap: getVisualMapConfig({\n sentimentLongColor: styles.sentimentLongColor,\n sentimentShortColor: styles.sentimentShortColor,\n }),\n graphic: [\n ...getGridLines({ isDark, isDesktop }),\n ...getLabelsConfig({ isDark, isDesktop, locale, labelCallback }),\n ],\n dataset: {\n source: {\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices: bookPrices ?? [],\n bookIndexes: bookIndexes ?? [],\n sentimentShorts,\n sentimentLongs,\n },\n },\n series: [\n getSeriesCandlestickConfig({\n styles,\n isLoading,\n locale,\n }),\n ...heatmapChart,\n ...sentimentChart,\n ],\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getOption.js","names":["_constants","require","_chartOptions","_chartUtils","_getChartStyles","getOption","_ref","mainData","dates","candlesOpen","candlesClose","candlesLow","candlesHigh","bookPrices","bookIndexes","sentimentShorts","sentimentLongs","additionalData","bucketWidth","buckets","displayPrecision","bookType","sentimentThresholdMin","sentimentThresholdMax","isLoading","isDark","isDesktop","labelCallback","locale","styles","getChartStyles","selectedPriceRef","current","initialStartZoom","CHART_CONFIG","INITIAL_START_ZOOM_DESKTOP","INITIAL_START_ZOOM_MOBILE","visibleXAxisData","slice","length","INITIAL_END_ZOOM","isGreaterThanTwoWeeks","isDifferenceGreaterThanTwoWeeks","heatmapChart","getSeriesHeatmapConfig","sentimentChart","getSeriesSentimentConfig","animation","tooltip","getTooltipConfig","tooltipLinesColor","grid","getGridConfig","xAxis","getXAxisConfig","yAxis","getYAxisConfig","dataZoom","getDataZoomConfig","visualMap","getVisualMapConfig","sentimentLongColor","sentimentShortColor","graphic","getGridLines","getLabelsConfig","dataset","source","series","getSeriesCandlestickConfig","exports"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/getOption.ts"],"sourcesContent":["import { CHART_CONFIG } from '../../constants';\nimport {\n getDataZoomConfig,\n getGridConfig,\n getGridLines,\n getLabelsConfig,\n getSeriesCandlestickConfig,\n getSeriesHeatmapConfig,\n getSeriesSentimentConfig,\n getTooltipConfig,\n getVisualMapConfig,\n getXAxisConfig,\n getYAxisConfig,\n} from './chartOptions';\nimport { isDifferenceGreaterThanTwoWeeks } from './chartUtils';\nimport { getChartStyles } from './chartUtils/getChartStyles';\nimport type { GetOptionType } from './types';\n\nexport const getOption: GetOptionType = ({\n mainData: {\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices,\n bookIndexes,\n sentimentShorts,\n sentimentLongs,\n },\n additionalData: {\n bucketWidth,\n buckets,\n displayPrecision,\n bookType,\n sentimentThresholdMin,\n sentimentThresholdMax,\n },\n isLoading,\n isDark,\n isDesktop,\n labelCallback,\n locale,\n}) => {\n const styles = getChartStyles(isDark);\n const selectedPriceRef = { current: 0 };\n\n const initialStartZoom = isDesktop\n ? CHART_CONFIG.INITIAL_START_ZOOM_DESKTOP\n : CHART_CONFIG.INITIAL_START_ZOOM_MOBILE;\n\n const visibleXAxisData = dates.slice(\n (dates.length * initialStartZoom) / 100,\n (dates.length * CHART_CONFIG.INITIAL_END_ZOOM) / 100\n );\n\n const isGreaterThanTwoWeeks = isDifferenceGreaterThanTwoWeeks(\n visibleXAxisData[0],\n visibleXAxisData[visibleXAxisData.length - 1]\n );\n\n const heatmapChart =\n bookPrices && bookPrices.length > 0\n ? [\n getSeriesHeatmapConfig({\n bucketWidth,\n buckets,\n isDark,\n sentimentThresholdMax,\n sentimentThresholdMin,\n isLoading,\n }),\n ]\n : [];\n\n const sentimentChart =\n sentimentLongs && sentimentLongs.length > 0\n ? [\n getSeriesSentimentConfig({\n styles,\n isLoading,\n }),\n ]\n : [];\n\n return {\n animation: false,\n tooltip: getTooltipConfig({\n bookType,\n bucketWidth,\n buckets,\n labelCallback,\n selectedPriceRef,\n tooltipLinesColor: styles.tooltipLinesColor,\n sentimentLongs,\n sentimentShorts,\n isDesktop,\n isDark,\n locale,\n }),\n grid: getGridConfig({ isDesktop }),\n xAxis: getXAxisConfig({\n dates,\n isGreaterThanTwoWeeks,\n locale,\n isDesktop,\n }),\n yAxis: getYAxisConfig({\n bucketWidth,\n displayPrecision,\n selectedPriceRef,\n }),\n dataZoom: getDataZoomConfig({ isDesktop }),\n visualMap: getVisualMapConfig({\n sentimentLongColor: styles.sentimentLongColor,\n sentimentShortColor: styles.sentimentShortColor,\n }),\n graphic: [\n ...getGridLines({ isDark, isDesktop }),\n ...getLabelsConfig({ isDark, isDesktop, locale, labelCallback }),\n ],\n dataset: {\n source: {\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices: bookPrices ?? [],\n bookIndexes: bookIndexes ?? [],\n sentimentShorts,\n sentimentLongs,\n },\n },\n series: [\n getSeriesCandlestickConfig({\n styles,\n isLoading,\n locale,\n }),\n ...heatmapChart,\n ...sentimentChart,\n ],\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAaA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AAGO,MAAMI,SAAwB,GAAGC,IAAA,IAyBlC;EAAA,IAzBmC;IACvCC,QAAQ,EAAE;MACRC,KAAK;MACLC,WAAW;MACXC,YAAY;MACZC,UAAU;MACVC,WAAW;MACXC,UAAU;MACVC,WAAW;MACXC,eAAe;MACfC;IACF,CAAC;IACDC,cAAc,EAAE;MACdC,WAAW;MACXC,OAAO;MACPC,gBAAgB;MAChBC,QAAQ;MACRC,qBAAqB;MACrBC;IACF,CAAC;IACDC,SAAS;IACTC,MAAM;IACNC,SAAS;IACTC,aAAa;IACbC;EACF,CAAC,GAAAtB,IAAA;EACC,MAAMuB,MAAM,GAAG,IAAAC,8BAAc,EAACL,MAAM,CAAC;EACrC,MAAMM,gBAAgB,GAAG;IAAEC,OAAO,EAAE;EAAE,CAAC;EAEvC,MAAMC,gBAAgB,GAAGP,SAAS,GAC9BQ,uBAAY,CAACC,0BAA0B,GACvCD,uBAAY,CAACE,yBAAyB;EAE1C,MAAMC,gBAAgB,GAAG7B,KAAK,CAAC8B,KAAK,CACjC9B,KAAK,CAAC+B,MAAM,GAAGN,gBAAgB,GAAI,GAAG,EACtCzB,KAAK,CAAC+B,MAAM,GAAGL,uBAAY,CAACM,gBAAgB,GAAI,GACnD,CAAC;EAED,MAAMC,qBAAqB,GAAG,IAAAC,2CAA+B,EAC3DL,gBAAgB,CAAC,CAAC,CAAC,EACnBA,gBAAgB,CAACA,gBAAgB,CAACE,MAAM,GAAG,CAAC,CAC9C,CAAC;EAED,MAAMI,YAAY,GAChB9B,UAAU,IAAIA,UAAU,CAAC0B,MAAM,GAAG,CAAC,GAC/B,CACE,IAAAK,oCAAsB,EAAC;IACrB1B,WAAW;IACXC,OAAO;IACPM,MAAM;IACNF,qBAAqB;IACrBD,qBAAqB;IACrBE;EACF,CAAC,CAAC,CACH,GACD,EAAE;EAER,MAAMqB,cAAc,GAClB7B,cAAc,IAAIA,cAAc,CAACuB,MAAM,GAAG,CAAC,GACvC,CACE,IAAAO,sCAAwB,EAAC;IACvBjB,MAAM;IACNL;EACF,CAAC,CAAC,CACH,GACD,EAAE;EAER,OAAO;IACLuB,SAAS,EAAE,KAAK;IAChBC,OAAO,EAAE,IAAAC,8BAAgB,EAAC;MACxB5B,QAAQ;MACRH,WAAW;MACXC,OAAO;MACPQ,aAAa;MACbI,gBAAgB;MAChBmB,iBAAiB,EAAErB,MAAM,CAACqB,iBAAiB;MAC3ClC,cAAc;MACdD,eAAe;MACfW,SAAS;MACTD,MAAM;MACNG;IACF,CAAC,CAAC;IACFuB,IAAI,EAAE,IAAAC,2BAAa,EAAC;MAAE1B;IAAU,CAAC,CAAC;IAClC2B,KAAK,EAAE,IAAAC,4BAAc,EAAC;MACpB9C,KAAK;MACLiC,qBAAqB;MACrBb,MAAM;MACNF;IACF,CAAC,CAAC;IACF6B,KAAK,EAAE,IAAAC,4BAAc,EAAC;MACpBtC,WAAW;MACXE,gBAAgB;MAChBW;IACF,CAAC,CAAC;IACF0B,QAAQ,EAAE,IAAAC,+BAAiB,EAAC;MAAEhC;IAAU,CAAC,CAAC;IAC1CiC,SAAS,EAAE,IAAAC,gCAAkB,EAAC;MAC5BC,kBAAkB,EAAEhC,MAAM,CAACgC,kBAAkB;MAC7CC,mBAAmB,EAAEjC,MAAM,CAACiC;IAC9B,CAAC,CAAC;IACFC,OAAO,EAAE,CACP,GAAG,IAAAC,0BAAY,EAAC;MAAEvC,MAAM;MAAEC;IAAU,CAAC,CAAC,EACtC,GAAG,IAAAuC,6BAAe,EAAC;MAAExC,MAAM;MAAEC,SAAS;MAAEE,MAAM;MAAED;IAAc,CAAC,CAAC,CACjE;IACDuC,OAAO,EAAE;MACPC,MAAM,EAAE;QACN3D,KAAK;QACLC,WAAW;QACXC,YAAY;QACZC,UAAU;QACVC,WAAW;QACXC,UAAU,EAAEA,UAAU,IAAI,EAAE;QAC5BC,WAAW,EAAEA,WAAW,IAAI,EAAE;QAC9BC,eAAe;QACfC;MACF;IACF,CAAC;IACDoD,MAAM,EAAE,CACN,IAAAC,wCAA0B,EAAC;MACzBxC,MAAM;MACNL,SAAS;MACTI;IACF,CAAC,CAAC,EACF,GAAGe,YAAY,EACf,GAAGE,cAAc;EAErB,CAAC;AACH,CAAC;AAACyB,OAAA,CAAAjE,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -1,7 +1,72 @@
1
- export * from './Chart';
2
- export * from './chartOptions';
3
- export * from './ChartWithData';
4
- export * from './dataUtils';
5
- export * from './types';
6
- export * from './useCrowdViewData';
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _Chart = require("./Chart");
7
+ Object.keys(_Chart).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _Chart[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _Chart[key];
14
+ }
15
+ });
16
+ });
17
+ var _chartOptions = require("./chartOptions");
18
+ Object.keys(_chartOptions).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _chartOptions[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _chartOptions[key];
25
+ }
26
+ });
27
+ });
28
+ var _ChartWithData = require("./ChartWithData");
29
+ Object.keys(_ChartWithData).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _ChartWithData[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _ChartWithData[key];
36
+ }
37
+ });
38
+ });
39
+ var _dataUtils = require("./dataUtils");
40
+ Object.keys(_dataUtils).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _dataUtils[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function () {
46
+ return _dataUtils[key];
47
+ }
48
+ });
49
+ });
50
+ var _types = require("./types");
51
+ Object.keys(_types).forEach(function (key) {
52
+ if (key === "default" || key === "__esModule") return;
53
+ if (key in exports && exports[key] === _types[key]) return;
54
+ Object.defineProperty(exports, key, {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _types[key];
58
+ }
59
+ });
60
+ });
61
+ var _useCrowdViewData = require("./useCrowdViewData");
62
+ Object.keys(_useCrowdViewData).forEach(function (key) {
63
+ if (key === "default" || key === "__esModule") return;
64
+ if (key in exports && exports[key] === _useCrowdViewData[key]) return;
65
+ Object.defineProperty(exports, key, {
66
+ enumerable: true,
67
+ get: function () {
68
+ return _useCrowdViewData[key];
69
+ }
70
+ });
71
+ });
7
72
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/CrowdViewWidget/components/Chart/index.ts"],"sourcesContent":["export * from './Chart';\nexport * from './chartOptions';\nexport * from './ChartWithData';\nexport * from './dataUtils';\nexport * from './types';\nexport * from './useCrowdViewData';\n"],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,gBAAgB;AAC9B,cAAc,iBAAiB;AAC/B,cAAc,aAAa;AAC3B,cAAc,SAAS;AACvB,cAAc,oBAAoB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_Chart","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_chartOptions","_ChartWithData","_dataUtils","_types","_useCrowdViewData"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/index.ts"],"sourcesContent":["export * from './Chart';\nexport * from './chartOptions';\nexport * from './ChartWithData';\nexport * from './dataUtils';\nexport * from './types';\nexport * from './useCrowdViewData';\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,aAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,aAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,aAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,aAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,cAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,cAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,cAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,cAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,UAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,UAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,UAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,UAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,MAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,MAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,MAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,iBAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,iBAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,iBAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,iBAAA,CAAAT,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -1,2 +1,6 @@
1
- export {};
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
2
6
  //# sourceMappingURL=types.js.map
@@ -1,12 +1,18 @@
1
- import { useQuery } from '@apollo/client';
2
- import { useMemo } from 'react';
3
- import { getOrderPositionBooks } from '../../../gql/getOrderPositionBooks';
4
- import { getPriceCandles } from '../../../gql/getPriceCandles';
5
- import { getSentiments } from '../../../gql/getSentiments';
6
- import { DataSource } from '../../../gql/types/graphql';
7
- import { BUCKET_CONFIG, INSTRUMENTS_CONFIG } from '../../constants';
8
- import { getBucketWidthMultiplayer, getTimeSpanForGranularity, processOrderPositionBooks, processPriceCandles, processSentiments, validateData } from './dataUtils';
9
- export const useCrowdViewData = _ref => {
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useCrowdViewData = void 0;
7
+ var _client = require("@apollo/client");
8
+ var _react = require("react");
9
+ var _getOrderPositionBooks = require("../../../gql/getOrderPositionBooks");
10
+ var _getPriceCandles = require("../../../gql/getPriceCandles");
11
+ var _getSentiments = require("../../../gql/getSentiments");
12
+ var _graphql = require("../../../gql/types/graphql");
13
+ var _constants = require("../../constants");
14
+ var _dataUtils = require("./dataUtils");
15
+ const useCrowdViewData = _ref => {
10
16
  let {
11
17
  instrument,
12
18
  bookType,
@@ -17,13 +23,13 @@ export const useCrowdViewData = _ref => {
17
23
  loading: priceCandlesLoading,
18
24
  data: priceCandlesData,
19
25
  error: priceCandlesError
20
- } = useQuery(getPriceCandles, {
26
+ } = (0, _client.useQuery)(_getPriceCandles.getPriceCandles, {
21
27
  variables: {
22
- dataSource: DataSource.V20,
28
+ dataSource: _graphql.DataSource.V20,
23
29
  division,
24
- instrument: INSTRUMENTS_CONFIG[instrument].v20name,
30
+ instrument: _constants.INSTRUMENTS_CONFIG[instrument].v20name,
25
31
  granularity,
26
- timeSpan: getTimeSpanForGranularity(granularity)
32
+ timeSpan: (0, _dataUtils.getTimeSpanForGranularity)(granularity)
27
33
  },
28
34
  fetchPolicy: 'no-cache'
29
35
  });
@@ -37,8 +43,8 @@ export const useCrowdViewData = _ref => {
37
43
  candlesLow,
38
44
  candlesHigh,
39
45
  pipsLocation
40
- } = useMemo(() => processPriceCandles(priceCandlesData), [priceCandlesData]);
41
- const bucketWidthMultiplayer = useMemo(() => getBucketWidthMultiplayer({
46
+ } = (0, _react.useMemo)(() => (0, _dataUtils.processPriceCandles)(priceCandlesData), [priceCandlesData]);
47
+ const bucketWidthMultiplayer = (0, _react.useMemo)(() => (0, _dataUtils.getBucketWidthMultiplayer)({
42
48
  minPrice,
43
49
  maxPrice,
44
50
  instrument
@@ -47,16 +53,16 @@ export const useCrowdViewData = _ref => {
47
53
  loading: orderPositionLoading,
48
54
  data: orderPositionData,
49
55
  error: orderPositionError
50
- } = useQuery(getOrderPositionBooks, {
56
+ } = (0, _client.useQuery)(_getOrderPositionBooks.getOrderPositionBooks, {
51
57
  variables: {
52
- instrument: INSTRUMENTS_CONFIG[instrument].v20name,
58
+ instrument: _constants.INSTRUMENTS_CONFIG[instrument].v20name,
53
59
  bookType,
54
- timeSpan: getTimeSpanForGranularity(granularity),
60
+ timeSpan: (0, _dataUtils.getTimeSpanForGranularity)(granularity),
55
61
  granularity,
56
62
  maxBookPrice: maxPrice,
57
63
  minBookPrice: minPrice,
58
64
  bucketMultiplier: bucketWidthMultiplayer,
59
- bucketMargin: BUCKET_CONFIG.PRICE_MARGIN_MULTIPLIER
65
+ bucketMargin: _constants.BUCKET_CONFIG.PRICE_MARGIN_MULTIPLIER
60
66
  },
61
67
  fetchPolicy: 'no-cache',
62
68
  skip: priceCandlesLoading || !!priceCandlesError
@@ -69,16 +75,16 @@ export const useCrowdViewData = _ref => {
69
75
  sentimentThresholdMin,
70
76
  sentimentThresholdMax,
71
77
  hasValidBooks
72
- } = useMemo(() => processOrderPositionBooks(orderPositionData, dates), [orderPositionData, dates]);
78
+ } = (0, _react.useMemo)(() => (0, _dataUtils.processOrderPositionBooks)(orderPositionData, dates), [orderPositionData, dates]);
73
79
  const {
74
80
  loading: sentimentsLoading,
75
81
  data: sentimentsData,
76
82
  error: sentimentsError
77
- } = useQuery(getSentiments, {
83
+ } = (0, _client.useQuery)(_getSentiments.getSentiments, {
78
84
  variables: {
79
- instrument: INSTRUMENTS_CONFIG[instrument].v20name,
85
+ instrument: _constants.INSTRUMENTS_CONFIG[instrument].v20name,
80
86
  granularity,
81
- timeSpan: getTimeSpanForGranularity(granularity)
87
+ timeSpan: (0, _dataUtils.getTimeSpanForGranularity)(granularity)
82
88
  },
83
89
  fetchPolicy: 'no-cache',
84
90
  skip: priceCandlesLoading || !!priceCandlesError
@@ -87,9 +93,9 @@ export const useCrowdViewData = _ref => {
87
93
  sentimentLongs,
88
94
  sentimentShorts,
89
95
  hasValidSentiments
90
- } = useMemo(() => processSentiments(sentimentsData, dates), [sentimentsData, dates]);
96
+ } = (0, _react.useMemo)(() => (0, _dataUtils.processSentiments)(sentimentsData, dates), [sentimentsData, dates]);
91
97
  const loading = priceCandlesLoading || orderPositionLoading || sentimentsLoading;
92
- const error = useMemo(() => {
98
+ const error = (0, _react.useMemo)(() => {
93
99
  if (priceCandlesError) {
94
100
  return new Error(`Price candles error: ${priceCandlesError.message}`);
95
101
  }
@@ -102,9 +108,9 @@ export const useCrowdViewData = _ref => {
102
108
  if (loading) {
103
109
  return null;
104
110
  }
105
- return validateData(priceCandlesData, orderPositionData, hasValidCandles, hasValidBooks, hasValidSentiments);
111
+ return (0, _dataUtils.validateData)(priceCandlesData, orderPositionData, hasValidCandles, hasValidBooks, hasValidSentiments);
106
112
  }, [priceCandlesError, orderPositionError, sentimentsError, loading, priceCandlesData, orderPositionData, hasValidCandles, hasValidBooks, hasValidSentiments]);
107
- const data = useMemo(() => {
113
+ const data = (0, _react.useMemo)(() => {
108
114
  if (!priceCandlesData || error) {
109
115
  return null;
110
116
  }
@@ -121,7 +127,7 @@ export const useCrowdViewData = _ref => {
121
127
  sentimentLongs
122
128
  },
123
129
  additionalData: {
124
- bucketWidth: bucketWidth || INSTRUMENTS_CONFIG[instrument].defaultBucketWidth * bucketWidthMultiplayer,
130
+ bucketWidth: bucketWidth || _constants.INSTRUMENTS_CONFIG[instrument].defaultBucketWidth * bucketWidthMultiplayer,
125
131
  buckets,
126
132
  displayPrecision: pipsLocation,
127
133
  bookType,
@@ -140,4 +146,5 @@ export const useCrowdViewData = _ref => {
140
146
  error: !!error
141
147
  };
142
148
  };
149
+ exports.useCrowdViewData = useCrowdViewData;
143
150
  //# sourceMappingURL=useCrowdViewData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCrowdViewData.js","names":["useQuery","useMemo","getOrderPositionBooks","getPriceCandles","getSentiments","DataSource","BUCKET_CONFIG","INSTRUMENTS_CONFIG","getBucketWidthMultiplayer","getTimeSpanForGranularity","processOrderPositionBooks","processPriceCandles","processSentiments","validateData","useCrowdViewData","_ref","instrument","bookType","division","granularity","loading","priceCandlesLoading","data","priceCandlesData","error","priceCandlesError","variables","dataSource","V20","v20name","timeSpan","fetchPolicy","minPrice","maxPrice","hasValidCandles","dates","candlesOpen","candlesClose","candlesLow","candlesHigh","pipsLocation","bucketWidthMultiplayer","orderPositionLoading","orderPositionData","orderPositionError","maxBookPrice","minBookPrice","bucketMultiplier","bucketMargin","PRICE_MARGIN_MULTIPLIER","skip","bookPrices","bookIndexes","buckets","bucketWidth","sentimentThresholdMin","sentimentThresholdMax","hasValidBooks","sentimentsLoading","sentimentsData","sentimentsError","sentimentLongs","sentimentShorts","hasValidSentiments","Error","message","mainData","additionalData","defaultBucketWidth","displayPrecision"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useCrowdViewData.ts"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport { useMemo } from 'react';\n\nimport { getOrderPositionBooks } from '../../../gql/getOrderPositionBooks';\nimport { getPriceCandles } from '../../../gql/getPriceCandles';\nimport { getSentiments } from '../../../gql/getSentiments';\nimport type {\n GetOrderPositionBooksQuery,\n GetOrderPositionBooksQueryVariables,\n GetPriceCandlesQuery,\n GetPriceCandlesQueryVariables,\n GetSentimentsQuery,\n GetSentimentsQueryVariables,\n} from '../../../gql/types/graphql';\nimport { DataSource } from '../../../gql/types/graphql';\nimport { BUCKET_CONFIG, INSTRUMENTS_CONFIG } from '../../constants';\nimport {\n getBucketWidthMultiplayer,\n getTimeSpanForGranularity,\n processOrderPositionBooks,\n processPriceCandles,\n processSentiments,\n validateData,\n} from './dataUtils';\nimport type { UseCrowdViewDataProps, UseCrowdViewDataReturn } from './types';\n\nexport const useCrowdViewData = ({\n instrument,\n bookType,\n division,\n granularity,\n}: UseCrowdViewDataProps): UseCrowdViewDataReturn => {\n // Get price candles data\n const {\n loading: priceCandlesLoading,\n data: priceCandlesData,\n error: priceCandlesError,\n } = useQuery<GetPriceCandlesQuery, GetPriceCandlesQueryVariables>(\n getPriceCandles,\n {\n variables: {\n dataSource: DataSource.V20,\n division,\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n }\n );\n\n const {\n minPrice,\n maxPrice,\n hasValidCandles,\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n pipsLocation,\n } = useMemo(() => processPriceCandles(priceCandlesData), [priceCandlesData]);\n\n const bucketWidthMultiplayer = useMemo(\n () =>\n getBucketWidthMultiplayer({\n minPrice,\n maxPrice,\n instrument,\n }),\n [minPrice, maxPrice, instrument]\n );\n // Get order position books data\n const {\n loading: orderPositionLoading,\n data: orderPositionData,\n error: orderPositionError,\n } = useQuery<GetOrderPositionBooksQuery, GetOrderPositionBooksQueryVariables>(\n getOrderPositionBooks,\n {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n bookType,\n timeSpan: getTimeSpanForGranularity(granularity),\n granularity,\n maxBookPrice: maxPrice,\n minBookPrice: minPrice,\n bucketMultiplier: bucketWidthMultiplayer,\n bucketMargin: BUCKET_CONFIG.PRICE_MARGIN_MULTIPLIER,\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n }\n );\n\n const {\n bookPrices,\n bookIndexes,\n buckets,\n bucketWidth,\n sentimentThresholdMin,\n sentimentThresholdMax,\n hasValidBooks,\n } = useMemo(\n () => processOrderPositionBooks(orderPositionData, dates),\n [orderPositionData, dates]\n );\n\n // Get sentiments data\n const {\n loading: sentimentsLoading,\n data: sentimentsData,\n error: sentimentsError,\n } = useQuery<GetSentimentsQuery, GetSentimentsQueryVariables>(getSentiments, {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n });\n\n const { sentimentLongs, sentimentShorts, hasValidSentiments } = useMemo(\n () => processSentiments(sentimentsData, dates),\n [sentimentsData, dates]\n );\n\n // Gather all results\n const loading =\n priceCandlesLoading || orderPositionLoading || sentimentsLoading;\n\n const error = useMemo((): Error | null => {\n if (priceCandlesError) {\n return new Error(`Price candles error: ${priceCandlesError.message}`);\n }\n if (orderPositionError) {\n return new Error(`Order position error: ${orderPositionError.message}`);\n }\n if (sentimentsError) {\n return new Error(`Sentiments error: ${sentimentsError.message}`);\n }\n if (loading) {\n return null;\n }\n return validateData(\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n hasValidBooks,\n hasValidSentiments\n );\n }, [\n priceCandlesError,\n orderPositionError,\n sentimentsError,\n loading,\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n hasValidBooks,\n hasValidSentiments,\n ]);\n\n const data = useMemo(() => {\n if (!priceCandlesData || error) {\n return null;\n }\n\n return {\n mainData: {\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices,\n bookIndexes,\n sentimentShorts,\n sentimentLongs,\n },\n additionalData: {\n bucketWidth:\n bucketWidth ||\n INSTRUMENTS_CONFIG[instrument].defaultBucketWidth *\n bucketWidthMultiplayer,\n buckets,\n displayPrecision: pipsLocation,\n bookType,\n sentimentThresholdMin,\n sentimentThresholdMax,\n },\n };\n }, [\n priceCandlesData,\n error,\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices,\n bookIndexes,\n sentimentShorts,\n sentimentLongs,\n bucketWidth,\n instrument,\n bucketWidthMultiplayer,\n buckets,\n pipsLocation,\n bookType,\n sentimentThresholdMin,\n sentimentThresholdMax,\n ]);\n\n return {\n mainData: data?.mainData,\n additionalData: data?.additionalData,\n priceCandlesLoading,\n orderPositionLoading,\n sentimentsLoading,\n loading,\n error: !!error,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useCrowdViewData.js","names":["_client","require","_react","_getOrderPositionBooks","_getPriceCandles","_getSentiments","_graphql","_constants","_dataUtils","useCrowdViewData","_ref","instrument","bookType","division","granularity","loading","priceCandlesLoading","data","priceCandlesData","error","priceCandlesError","useQuery","getPriceCandles","variables","dataSource","DataSource","V20","INSTRUMENTS_CONFIG","v20name","timeSpan","getTimeSpanForGranularity","fetchPolicy","minPrice","maxPrice","hasValidCandles","dates","candlesOpen","candlesClose","candlesLow","candlesHigh","pipsLocation","useMemo","processPriceCandles","bucketWidthMultiplayer","getBucketWidthMultiplayer","orderPositionLoading","orderPositionData","orderPositionError","getOrderPositionBooks","maxBookPrice","minBookPrice","bucketMultiplier","bucketMargin","BUCKET_CONFIG","PRICE_MARGIN_MULTIPLIER","skip","bookPrices","bookIndexes","buckets","bucketWidth","sentimentThresholdMin","sentimentThresholdMax","hasValidBooks","processOrderPositionBooks","sentimentsLoading","sentimentsData","sentimentsError","getSentiments","sentimentLongs","sentimentShorts","hasValidSentiments","processSentiments","Error","message","validateData","mainData","additionalData","defaultBucketWidth","displayPrecision","exports"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useCrowdViewData.ts"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport { useMemo } from 'react';\n\nimport { getOrderPositionBooks } from '../../../gql/getOrderPositionBooks';\nimport { getPriceCandles } from '../../../gql/getPriceCandles';\nimport { getSentiments } from '../../../gql/getSentiments';\nimport type {\n GetOrderPositionBooksQuery,\n GetOrderPositionBooksQueryVariables,\n GetPriceCandlesQuery,\n GetPriceCandlesQueryVariables,\n GetSentimentsQuery,\n GetSentimentsQueryVariables,\n} from '../../../gql/types/graphql';\nimport { DataSource } from '../../../gql/types/graphql';\nimport { BUCKET_CONFIG, INSTRUMENTS_CONFIG } from '../../constants';\nimport {\n getBucketWidthMultiplayer,\n getTimeSpanForGranularity,\n processOrderPositionBooks,\n processPriceCandles,\n processSentiments,\n validateData,\n} from './dataUtils';\nimport type { UseCrowdViewDataProps, UseCrowdViewDataReturn } from './types';\n\nexport const useCrowdViewData = ({\n instrument,\n bookType,\n division,\n granularity,\n}: UseCrowdViewDataProps): UseCrowdViewDataReturn => {\n // Get price candles data\n const {\n loading: priceCandlesLoading,\n data: priceCandlesData,\n error: priceCandlesError,\n } = useQuery<GetPriceCandlesQuery, GetPriceCandlesQueryVariables>(\n getPriceCandles,\n {\n variables: {\n dataSource: DataSource.V20,\n division,\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n }\n );\n\n const {\n minPrice,\n maxPrice,\n hasValidCandles,\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n pipsLocation,\n } = useMemo(() => processPriceCandles(priceCandlesData), [priceCandlesData]);\n\n const bucketWidthMultiplayer = useMemo(\n () =>\n getBucketWidthMultiplayer({\n minPrice,\n maxPrice,\n instrument,\n }),\n [minPrice, maxPrice, instrument]\n );\n // Get order position books data\n const {\n loading: orderPositionLoading,\n data: orderPositionData,\n error: orderPositionError,\n } = useQuery<GetOrderPositionBooksQuery, GetOrderPositionBooksQueryVariables>(\n getOrderPositionBooks,\n {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n bookType,\n timeSpan: getTimeSpanForGranularity(granularity),\n granularity,\n maxBookPrice: maxPrice,\n minBookPrice: minPrice,\n bucketMultiplier: bucketWidthMultiplayer,\n bucketMargin: BUCKET_CONFIG.PRICE_MARGIN_MULTIPLIER,\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n }\n );\n\n const {\n bookPrices,\n bookIndexes,\n buckets,\n bucketWidth,\n sentimentThresholdMin,\n sentimentThresholdMax,\n hasValidBooks,\n } = useMemo(\n () => processOrderPositionBooks(orderPositionData, dates),\n [orderPositionData, dates]\n );\n\n // Get sentiments data\n const {\n loading: sentimentsLoading,\n data: sentimentsData,\n error: sentimentsError,\n } = useQuery<GetSentimentsQuery, GetSentimentsQueryVariables>(getSentiments, {\n variables: {\n instrument: INSTRUMENTS_CONFIG[instrument].v20name,\n granularity,\n timeSpan: getTimeSpanForGranularity(granularity),\n },\n fetchPolicy: 'no-cache',\n skip: priceCandlesLoading || !!priceCandlesError,\n });\n\n const { sentimentLongs, sentimentShorts, hasValidSentiments } = useMemo(\n () => processSentiments(sentimentsData, dates),\n [sentimentsData, dates]\n );\n\n // Gather all results\n const loading =\n priceCandlesLoading || orderPositionLoading || sentimentsLoading;\n\n const error = useMemo((): Error | null => {\n if (priceCandlesError) {\n return new Error(`Price candles error: ${priceCandlesError.message}`);\n }\n if (orderPositionError) {\n return new Error(`Order position error: ${orderPositionError.message}`);\n }\n if (sentimentsError) {\n return new Error(`Sentiments error: ${sentimentsError.message}`);\n }\n if (loading) {\n return null;\n }\n return validateData(\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n hasValidBooks,\n hasValidSentiments\n );\n }, [\n priceCandlesError,\n orderPositionError,\n sentimentsError,\n loading,\n priceCandlesData,\n orderPositionData,\n hasValidCandles,\n hasValidBooks,\n hasValidSentiments,\n ]);\n\n const data = useMemo(() => {\n if (!priceCandlesData || error) {\n return null;\n }\n\n return {\n mainData: {\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices,\n bookIndexes,\n sentimentShorts,\n sentimentLongs,\n },\n additionalData: {\n bucketWidth:\n bucketWidth ||\n INSTRUMENTS_CONFIG[instrument].defaultBucketWidth *\n bucketWidthMultiplayer,\n buckets,\n displayPrecision: pipsLocation,\n bookType,\n sentimentThresholdMin,\n sentimentThresholdMax,\n },\n };\n }, [\n priceCandlesData,\n error,\n dates,\n candlesOpen,\n candlesClose,\n candlesLow,\n candlesHigh,\n bookPrices,\n bookIndexes,\n sentimentShorts,\n sentimentLongs,\n bucketWidth,\n instrument,\n bucketWidthMultiplayer,\n buckets,\n pipsLocation,\n bookType,\n sentimentThresholdMin,\n sentimentThresholdMax,\n ]);\n\n return {\n mainData: data?.mainData,\n additionalData: data?.additionalData,\n priceCandlesLoading,\n orderPositionLoading,\n sentimentsLoading,\n loading,\n error: !!error,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,13 +1,19 @@
1
- import { useEffect, useRef, useState } from 'react';
2
- export const useResizeObserver = function () {
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useResizeObserver = void 0;
7
+ var _react = require("react");
8
+ const useResizeObserver = function () {
3
9
  let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4
10
  const {
5
11
  debounceDelay = 150
6
12
  } = options;
7
- const [isResizing, setIsResizing] = useState(false);
8
- const containerRef = useRef(null);
9
- const resizeTimeoutRef = useRef(null);
10
- useEffect(() => {
13
+ const [isResizing, setIsResizing] = (0, _react.useState)(false);
14
+ const containerRef = (0, _react.useRef)(null);
15
+ const resizeTimeoutRef = (0, _react.useRef)(null);
16
+ (0, _react.useEffect)(() => {
11
17
  const container = containerRef.current;
12
18
  if (!container) {
13
19
  return undefined;
@@ -37,4 +43,5 @@ export const useResizeObserver = function () {
37
43
  }, [debounceDelay]);
38
44
  return [containerRef, isResizing];
39
45
  };
46
+ exports.useResizeObserver = useResizeObserver;
40
47
  //# sourceMappingURL=useResizeObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useResizeObserver.js","names":["useEffect","useRef","useState","useResizeObserver","options","arguments","length","undefined","debounceDelay","isResizing","setIsResizing","containerRef","resizeTimeoutRef","container","current","ResizeObserver","console","warn","resizeObserver","clearTimeout","setTimeout","observe","disconnect"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useResizeObserver.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\ninterface UseResizeObserverOptions {\n debounceDelay?: number;\n}\n\nexport const useResizeObserver = (\n options: UseResizeObserverOptions = {}\n): [React.RefObject<HTMLDivElement>, boolean] => {\n const { debounceDelay = 150 } = options;\n const [isResizing, setIsResizing] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const resizeTimeoutRef = useRef<NodeJS.Timeout | null>(null);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) {\n return undefined;\n }\n\n if (typeof ResizeObserver === 'undefined') {\n console.warn('ResizeObserver is not supported in this browser');\n return undefined;\n }\n\n const resizeObserver = new ResizeObserver(() => {\n setIsResizing(true);\n\n if (resizeTimeoutRef.current) {\n clearTimeout(resizeTimeoutRef.current);\n }\n\n resizeTimeoutRef.current = setTimeout(() => {\n setIsResizing(false);\n resizeTimeoutRef.current = null;\n }, debounceDelay);\n });\n\n resizeObserver.observe(container);\n\n return () => {\n resizeObserver.disconnect();\n if (resizeTimeoutRef.current) {\n clearTimeout(resizeTimeoutRef.current);\n resizeTimeoutRef.current = null;\n }\n };\n }, [debounceDelay]);\n\n return [containerRef, isResizing];\n};\n"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAMnD,OAAO,MAAMC,iBAAiB,GAAG,SAAAA,CAAA,EAEgB;EAAA,IAD/CC,OAAiC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEtC,MAAM;IAAEG,aAAa,GAAG;EAAI,CAAC,GAAGJ,OAAO;EACvC,MAAM,CAACK,UAAU,EAAEC,aAAa,CAAC,GAAGR,QAAQ,CAAC,KAAK,CAAC;EACnD,MAAMS,YAAY,GAAGV,MAAM,CAAiB,IAAI,CAAC;EACjD,MAAMW,gBAAgB,GAAGX,MAAM,CAAwB,IAAI,CAAC;EAE5DD,SAAS,CAAC,MAAM;IACd,MAAMa,SAAS,GAAGF,YAAY,CAACG,OAAO;IACtC,IAAI,CAACD,SAAS,EAAE;MACd,OAAON,SAAS;IAClB;IAEA,IAAI,OAAOQ,cAAc,KAAK,WAAW,EAAE;MACzCC,OAAO,CAACC,IAAI,CAAC,iDAAiD,CAAC;MAC/D,OAAOV,SAAS;IAClB;IAEA,MAAMW,cAAc,GAAG,IAAIH,cAAc,CAAC,MAAM;MAC9CL,aAAa,CAAC,IAAI,CAAC;MAEnB,IAAIE,gBAAgB,CAACE,OAAO,EAAE;QAC5BK,YAAY,CAACP,gBAAgB,CAACE,OAAO,CAAC;MACxC;MAEAF,gBAAgB,CAACE,OAAO,GAAGM,UAAU,CAAC,MAAM;QAC1CV,aAAa,CAAC,KAAK,CAAC;QACpBE,gBAAgB,CAACE,OAAO,GAAG,IAAI;MACjC,CAAC,EAAEN,aAAa,CAAC;IACnB,CAAC,CAAC;IAEFU,cAAc,CAACG,OAAO,CAACR,SAAS,CAAC;IAEjC,OAAO,MAAM;MACXK,cAAc,CAACI,UAAU,CAAC,CAAC;MAC3B,IAAIV,gBAAgB,CAACE,OAAO,EAAE;QAC5BK,YAAY,CAACP,gBAAgB,CAACE,OAAO,CAAC;QACtCF,gBAAgB,CAACE,OAAO,GAAG,IAAI;MACjC;IACF,CAAC;EACH,CAAC,EAAE,CAACN,aAAa,CAAC,CAAC;EAEnB,OAAO,CAACG,YAAY,EAAEF,UAAU,CAAC;AACnC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"useResizeObserver.js","names":["_react","require","useResizeObserver","options","arguments","length","undefined","debounceDelay","isResizing","setIsResizing","useState","containerRef","useRef","resizeTimeoutRef","useEffect","container","current","ResizeObserver","console","warn","resizeObserver","clearTimeout","setTimeout","observe","disconnect","exports"],"sources":["../../../../../src/CrowdViewWidget/components/Chart/useResizeObserver.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\ninterface UseResizeObserverOptions {\n debounceDelay?: number;\n}\n\nexport const useResizeObserver = (\n options: UseResizeObserverOptions = {}\n): [React.RefObject<HTMLDivElement>, boolean] => {\n const { debounceDelay = 150 } = options;\n const [isResizing, setIsResizing] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const resizeTimeoutRef = useRef<NodeJS.Timeout | null>(null);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) {\n return undefined;\n }\n\n if (typeof ResizeObserver === 'undefined') {\n console.warn('ResizeObserver is not supported in this browser');\n return undefined;\n }\n\n const resizeObserver = new ResizeObserver(() => {\n setIsResizing(true);\n\n if (resizeTimeoutRef.current) {\n clearTimeout(resizeTimeoutRef.current);\n }\n\n resizeTimeoutRef.current = setTimeout(() => {\n setIsResizing(false);\n resizeTimeoutRef.current = null;\n }, debounceDelay);\n });\n\n resizeObserver.observe(container);\n\n return () => {\n resizeObserver.disconnect();\n if (resizeTimeoutRef.current) {\n clearTimeout(resizeTimeoutRef.current);\n resizeTimeoutRef.current = null;\n }\n };\n }, [debounceDelay]);\n\n return [containerRef, isResizing];\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAMO,MAAMC,iBAAiB,GAAG,SAAAA,CAAA,EAEgB;EAAA,IAD/CC,OAAiC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEtC,MAAM;IAAEG,aAAa,GAAG;EAAI,CAAC,GAAGJ,OAAO;EACvC,MAAM,CAACK,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACnD,MAAMC,YAAY,GAAG,IAAAC,aAAM,EAAiB,IAAI,CAAC;EACjD,MAAMC,gBAAgB,GAAG,IAAAD,aAAM,EAAwB,IAAI,CAAC;EAE5D,IAAAE,gBAAS,EAAC,MAAM;IACd,MAAMC,SAAS,GAAGJ,YAAY,CAACK,OAAO;IACtC,IAAI,CAACD,SAAS,EAAE;MACd,OAAOT,SAAS;IAClB;IAEA,IAAI,OAAOW,cAAc,KAAK,WAAW,EAAE;MACzCC,OAAO,CAACC,IAAI,CAAC,iDAAiD,CAAC;MAC/D,OAAOb,SAAS;IAClB;IAEA,MAAMc,cAAc,GAAG,IAAIH,cAAc,CAAC,MAAM;MAC9CR,aAAa,CAAC,IAAI,CAAC;MAEnB,IAAII,gBAAgB,CAACG,OAAO,EAAE;QAC5BK,YAAY,CAACR,gBAAgB,CAACG,OAAO,CAAC;MACxC;MAEAH,gBAAgB,CAACG,OAAO,GAAGM,UAAU,CAAC,MAAM;QAC1Cb,aAAa,CAAC,KAAK,CAAC;QACpBI,gBAAgB,CAACG,OAAO,GAAG,IAAI;MACjC,CAAC,EAAET,aAAa,CAAC;IACnB,CAAC,CAAC;IAEFa,cAAc,CAACG,OAAO,CAACR,SAAS,CAAC;IAEjC,OAAO,MAAM;MACXK,cAAc,CAACI,UAAU,CAAC,CAAC;MAC3B,IAAIX,gBAAgB,CAACG,OAAO,EAAE;QAC5BK,YAAY,CAACR,gBAAgB,CAACG,OAAO,CAAC;QACtCH,gBAAgB,CAACG,OAAO,GAAG,IAAI;MACjC;IACF,CAAC;EACH,CAAC,EAAE,CAACT,aAAa,CAAC,CAAC;EAEnB,OAAO,CAACI,YAAY,EAAEH,UAAU,CAAC;AACnC,CAAC;AAACiB,OAAA,CAAAvB,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -1,32 +1,40 @@
1
- import { useLayoutProvider } from '@oanda/labs-widget-common';
2
- import { useLocale } from '@oanda/mono-i18n';
3
- import React from 'react';
4
- import { BookType } from '../../../gql/types/graphql';
5
- import { LegendBar } from './LegendBar';
6
- export const Legend = _ref => {
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Legend = void 0;
7
+ var _labsWidgetCommon = require("@oanda/labs-widget-common");
8
+ var _monoI18n = require("@oanda/mono-i18n");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _graphql = require("../../../gql/types/graphql");
11
+ var _LegendBar = require("./LegendBar");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ const Legend = _ref => {
7
14
  let {
8
15
  bookType
9
16
  } = _ref;
10
17
  const {
11
18
  isDark
12
- } = useLayoutProvider();
19
+ } = (0, _labsWidgetCommon.useLayoutProvider)();
13
20
  const {
14
21
  lang
15
- } = useLocale();
16
- return React.createElement("div", {
22
+ } = (0, _monoI18n.useLocale)();
23
+ return _react.default.createElement("div", {
17
24
  className: "lw-my-4 lw-w-full"
18
- }, React.createElement("div", {
25
+ }, _react.default.createElement("div", {
19
26
  className: "lw-mb-1 lw-flex lw-w-full lw-flex-row lw-justify-between"
20
- }, React.createElement(LegendBar, {
27
+ }, _react.default.createElement(_LegendBar.LegendBar, {
21
28
  isDark: isDark,
22
29
  type: "long"
23
- }), React.createElement("div", {
30
+ }), _react.default.createElement("div", {
24
31
  className: "lw-w-[200px]"
25
- }), React.createElement(LegendBar, {
32
+ }), _react.default.createElement(_LegendBar.LegendBar, {
26
33
  isDark: isDark,
27
34
  type: "short"
28
- })), React.createElement("div", {
35
+ })), _react.default.createElement("div", {
29
36
  className: "lw-flex lw-w-full lw-flex-row lw-justify-between lw-pb-2 lw-font-sans lw-text-xs lw-text-text-primary"
30
- }, React.createElement("span", null, lang(bookType === BookType.Order ? 'buy_overbalance' : 'long_overbalance')), React.createElement("span", null, lang('even_market_demand')), React.createElement("span", null, lang(bookType === BookType.Order ? 'sell_overbalance' : 'short_overbalance'))));
37
+ }, _react.default.createElement("span", null, lang(bookType === _graphql.BookType.Order ? 'buy_overbalance' : 'long_overbalance')), _react.default.createElement("span", null, lang('even_market_demand')), _react.default.createElement("span", null, lang(bookType === _graphql.BookType.Order ? 'sell_overbalance' : 'short_overbalance'))));
31
38
  };
39
+ exports.Legend = Legend;
32
40
  //# sourceMappingURL=Legend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.js","names":["useLayoutProvider","useLocale","React","BookType","LegendBar","Legend","_ref","bookType","isDark","lang","createElement","className","type","Order"],"sources":["../../../../../src/CrowdViewWidget/components/Legend/Legend.tsx"],"sourcesContent":["import { useLayoutProvider } from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport React from 'react';\n\nimport { BookType } from '../../../gql/types/graphql';\nimport { LegendBar } from './LegendBar';\n\ninterface LegendProps {\n bookType: BookType;\n}\n\nexport const Legend = ({ bookType }: LegendProps) => {\n const { isDark } = useLayoutProvider();\n const { lang } = useLocale();\n\n return (\n <div className=\"lw-my-4 lw-w-full\">\n <div className=\"lw-mb-1 lw-flex lw-w-full lw-flex-row lw-justify-between\">\n <LegendBar isDark={isDark} type=\"long\" />\n <div className=\"lw-w-[200px]\" />\n <LegendBar isDark={isDark} type=\"short\" />\n </div>\n <div className=\"lw-flex lw-w-full lw-flex-row lw-justify-between lw-pb-2 lw-font-sans lw-text-xs lw-text-text-primary\">\n <span>\n {lang(\n bookType === BookType.Order ? 'buy_overbalance' : 'long_overbalance'\n )}\n </span>\n <span>{lang('even_market_demand')}</span>\n <span>\n {lang(\n bookType === BookType.Order\n ? 'sell_overbalance'\n : 'short_overbalance'\n )}\n </span>\n </div>\n </div>\n );\n};\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,SAAS,QAAQ,kBAAkB;AAC5C,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,QAAQ,QAAQ,4BAA4B;AACrD,SAASC,SAAS,QAAQ,aAAa;AAMvC,OAAO,MAAMC,MAAM,GAAGC,IAAA,IAA+B;EAAA,IAA9B;IAAEC;EAAsB,CAAC,GAAAD,IAAA;EAC9C,MAAM;IAAEE;EAAO,CAAC,GAAGR,iBAAiB,CAAC,CAAC;EACtC,MAAM;IAAES;EAAK,CAAC,GAAGR,SAAS,CAAC,CAAC;EAE5B,OACEC,KAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAAmB,GAChCT,KAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAA0D,GACvET,KAAA,CAAAQ,aAAA,CAACN,SAAS;IAACI,MAAM,EAAEA,MAAO;IAACI,IAAI,EAAC;EAAM,CAAE,CAAC,EACzCV,KAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAAc,CAAE,CAAC,EAChCT,KAAA,CAAAQ,aAAA,CAACN,SAAS;IAACI,MAAM,EAAEA,MAAO;IAACI,IAAI,EAAC;EAAO,CAAE,CACtC,CAAC,EACNV,KAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAAuG,GACpHT,KAAA,CAAAQ,aAAA,eACGD,IAAI,CACHF,QAAQ,KAAKJ,QAAQ,CAACU,KAAK,GAAG,iBAAiB,GAAG,kBACpD,CACI,CAAC,EACPX,KAAA,CAAAQ,aAAA,eAAOD,IAAI,CAAC,oBAAoB,CAAQ,CAAC,EACzCP,KAAA,CAAAQ,aAAA,eACGD,IAAI,CACHF,QAAQ,KAAKJ,QAAQ,CAACU,KAAK,GACvB,kBAAkB,GAClB,mBACN,CACI,CACH,CACF,CAAC;AAEV,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Legend.js","names":["_labsWidgetCommon","require","_monoI18n","_react","_interopRequireDefault","_graphql","_LegendBar","e","__esModule","default","Legend","_ref","bookType","isDark","useLayoutProvider","lang","useLocale","createElement","className","LegendBar","type","BookType","Order","exports"],"sources":["../../../../../src/CrowdViewWidget/components/Legend/Legend.tsx"],"sourcesContent":["import { useLayoutProvider } from '@oanda/labs-widget-common';\nimport { useLocale } from '@oanda/mono-i18n';\nimport React from 'react';\n\nimport { BookType } from '../../../gql/types/graphql';\nimport { LegendBar } from './LegendBar';\n\ninterface LegendProps {\n bookType: BookType;\n}\n\nexport const Legend = ({ bookType }: LegendProps) => {\n const { isDark } = useLayoutProvider();\n const { lang } = useLocale();\n\n return (\n <div className=\"lw-my-4 lw-w-full\">\n <div className=\"lw-mb-1 lw-flex lw-w-full lw-flex-row lw-justify-between\">\n <LegendBar isDark={isDark} type=\"long\" />\n <div className=\"lw-w-[200px]\" />\n <LegendBar isDark={isDark} type=\"short\" />\n </div>\n <div className=\"lw-flex lw-w-full lw-flex-row lw-justify-between lw-pb-2 lw-font-sans lw-text-xs lw-text-text-primary\">\n <span>\n {lang(\n bookType === BookType.Order ? 'buy_overbalance' : 'long_overbalance'\n )}\n </span>\n <span>{lang('even_market_demand')}</span>\n <span>\n {lang(\n bookType === BookType.Order\n ? 'sell_overbalance'\n : 'short_overbalance'\n )}\n </span>\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AAAwC,SAAAG,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAMjC,MAAMG,MAAM,GAAGC,IAAA,IAA+B;EAAA,IAA9B;IAAEC;EAAsB,CAAC,GAAAD,IAAA;EAC9C,MAAM;IAAEE;EAAO,CAAC,GAAG,IAAAC,mCAAiB,EAAC,CAAC;EACtC,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,mBAAS,EAAC,CAAC;EAE5B,OACEb,MAAA,CAAAM,OAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAAmB,GAChCf,MAAA,CAAAM,OAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAA0D,GACvEf,MAAA,CAAAM,OAAA,CAAAQ,aAAA,CAACX,UAAA,CAAAa,SAAS;IAACN,MAAM,EAAEA,MAAO;IAACO,IAAI,EAAC;EAAM,CAAE,CAAC,EACzCjB,MAAA,CAAAM,OAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAAc,CAAE,CAAC,EAChCf,MAAA,CAAAM,OAAA,CAAAQ,aAAA,CAACX,UAAA,CAAAa,SAAS;IAACN,MAAM,EAAEA,MAAO;IAACO,IAAI,EAAC;EAAO,CAAE,CACtC,CAAC,EACNjB,MAAA,CAAAM,OAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAC;EAAuG,GACpHf,MAAA,CAAAM,OAAA,CAAAQ,aAAA,eACGF,IAAI,CACHH,QAAQ,KAAKS,iBAAQ,CAACC,KAAK,GAAG,iBAAiB,GAAG,kBACpD,CACI,CAAC,EACPnB,MAAA,CAAAM,OAAA,CAAAQ,aAAA,eAAOF,IAAI,CAAC,oBAAoB,CAAQ,CAAC,EACzCZ,MAAA,CAAAM,OAAA,CAAAQ,aAAA,eACGF,IAAI,CACHH,QAAQ,KAAKS,iBAAQ,CAACC,KAAK,GACvB,kBAAkB,GAClB,mBACN,CACI,CACH,CACF,CAAC;AAEV,CAAC;AAACC,OAAA,CAAAb,MAAA,GAAAA,MAAA","ignoreList":[]}