@quillsql/react 2.12.18 → 2.12.20

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 (118) hide show
  1. package/dist/cjs/Chart.d.ts +2 -1
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +117 -105
  4. package/dist/cjs/ChartBuilder.d.ts +4 -2
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +26 -11
  7. package/dist/cjs/ChartEditor.d.ts +1 -1
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +20 -12
  10. package/dist/cjs/Context.d.ts +0 -9
  11. package/dist/cjs/Context.d.ts.map +1 -1
  12. package/dist/cjs/Context.js +15 -43
  13. package/dist/cjs/Dashboard.d.ts +20 -3
  14. package/dist/cjs/Dashboard.d.ts.map +1 -1
  15. package/dist/cjs/Dashboard.js +64 -65
  16. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  17. package/dist/cjs/Table.d.ts.map +1 -1
  18. package/dist/cjs/Table.js +11 -4
  19. package/dist/cjs/components/Chart/BarChart.d.ts +2 -1
  20. package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
  21. package/dist/cjs/components/Chart/BarChart.js +2 -2
  22. package/dist/cjs/components/Chart/ChartTooltip.d.ts +1 -0
  23. package/dist/cjs/components/Chart/ChartTooltip.d.ts.map +1 -1
  24. package/dist/cjs/components/Chart/ChartTooltip.js +3 -4
  25. package/dist/cjs/components/Chart/LineChart.d.ts +2 -1
  26. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  27. package/dist/cjs/components/Chart/LineChart.js +2 -2
  28. package/dist/cjs/components/Dashboard/ChartComponent.d.ts +1 -1
  29. package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
  30. package/dist/cjs/components/Dashboard/ChartComponent.js +10 -4
  31. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  32. package/dist/cjs/components/Dashboard/DashboardFilter.js +3 -18
  33. package/dist/cjs/components/Dashboard/DataLoader.d.ts +7 -4
  34. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  35. package/dist/cjs/components/Dashboard/DataLoader.js +47 -32
  36. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  37. package/dist/cjs/components/Dashboard/MetricComponent.js +27 -43
  38. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  39. package/dist/cjs/components/Dashboard/TableComponent.js +25 -52
  40. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  41. package/dist/cjs/hooks/useDashboard.js +3 -2
  42. package/dist/cjs/hooks/useQuill.d.ts +7 -0
  43. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  44. package/dist/cjs/hooks/useQuill.js +43 -4
  45. package/dist/cjs/index.d.ts +1 -1
  46. package/dist/cjs/index.d.ts.map +1 -1
  47. package/dist/cjs/index.js +2 -1
  48. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  49. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +8 -3
  50. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  51. package/dist/cjs/internals/ReportBuilder/PivotModal.js +24 -12
  52. package/dist/cjs/utils/aggregate.d.ts.map +1 -1
  53. package/dist/cjs/utils/aggregate.js +0 -4
  54. package/dist/cjs/utils/dashboard.d.ts +2 -2
  55. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  56. package/dist/cjs/utils/dashboard.js +16 -11
  57. package/dist/cjs/utils/dates.d.ts.map +1 -1
  58. package/dist/cjs/utils/dates.js +7 -4
  59. package/dist/esm/Chart.d.ts +2 -1
  60. package/dist/esm/Chart.d.ts.map +1 -1
  61. package/dist/esm/Chart.js +116 -105
  62. package/dist/esm/ChartBuilder.d.ts +4 -2
  63. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  64. package/dist/esm/ChartBuilder.js +27 -12
  65. package/dist/esm/ChartEditor.d.ts +1 -1
  66. package/dist/esm/ChartEditor.d.ts.map +1 -1
  67. package/dist/esm/ChartEditor.js +21 -13
  68. package/dist/esm/Context.d.ts +0 -9
  69. package/dist/esm/Context.d.ts.map +1 -1
  70. package/dist/esm/Context.js +14 -40
  71. package/dist/esm/Dashboard.d.ts +20 -3
  72. package/dist/esm/Dashboard.d.ts.map +1 -1
  73. package/dist/esm/Dashboard.js +66 -67
  74. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  75. package/dist/esm/Table.d.ts.map +1 -1
  76. package/dist/esm/Table.js +12 -5
  77. package/dist/esm/components/Chart/BarChart.d.ts +2 -1
  78. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  79. package/dist/esm/components/Chart/BarChart.js +2 -2
  80. package/dist/esm/components/Chart/ChartTooltip.d.ts +1 -0
  81. package/dist/esm/components/Chart/ChartTooltip.d.ts.map +1 -1
  82. package/dist/esm/components/Chart/ChartTooltip.js +3 -4
  83. package/dist/esm/components/Chart/LineChart.d.ts +2 -1
  84. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  85. package/dist/esm/components/Chart/LineChart.js +2 -2
  86. package/dist/esm/components/Dashboard/ChartComponent.d.ts +1 -1
  87. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
  88. package/dist/esm/components/Dashboard/ChartComponent.js +7 -4
  89. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  90. package/dist/esm/components/Dashboard/DashboardFilter.js +3 -18
  91. package/dist/esm/components/Dashboard/DataLoader.d.ts +7 -4
  92. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  93. package/dist/esm/components/Dashboard/DataLoader.js +48 -33
  94. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  95. package/dist/esm/components/Dashboard/MetricComponent.js +28 -44
  96. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  97. package/dist/esm/components/Dashboard/TableComponent.js +26 -53
  98. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  99. package/dist/esm/hooks/useDashboard.js +3 -2
  100. package/dist/esm/hooks/useQuill.d.ts +7 -0
  101. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  102. package/dist/esm/hooks/useQuill.js +41 -3
  103. package/dist/esm/index.d.ts +1 -1
  104. package/dist/esm/index.d.ts.map +1 -1
  105. package/dist/esm/index.js +1 -1
  106. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  107. package/dist/esm/internals/ReportBuilder/PivotList.js +1 -1
  108. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +8 -3
  109. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  110. package/dist/esm/internals/ReportBuilder/PivotModal.js +24 -12
  111. package/dist/esm/utils/aggregate.d.ts.map +1 -1
  112. package/dist/esm/utils/aggregate.js +0 -4
  113. package/dist/esm/utils/dashboard.d.ts +2 -2
  114. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  115. package/dist/esm/utils/dashboard.js +16 -11
  116. package/dist/esm/utils/dates.d.ts.map +1 -1
  117. package/dist/esm/utils/dates.js +7 -4
  118. package/package.json +1 -1
@@ -1,5 +1,6 @@
1
1
  import { valueFormatter } from './valueFormatter';
2
2
  import { generatePivotTable, generatePivotTableYAxis, } from '../internals/ReportBuilder/PivotModal';
3
+ import { snakeAndCamelCaseToTitleCase } from './textProcessing';
3
4
  const defaultDashboardItem = {
4
5
  id: '',
5
6
  name: '',
@@ -43,8 +44,12 @@ export function cleanDashboardItem(item, dashboardFilters) {
43
44
  name: item.name,
44
45
  dashboardName: item.dashboardName,
45
46
  rows: item.rows,
47
+ pivotRows: pivotTable ? pivotTable.rows : undefined,
48
+ pivotColumns: pivotTable ? pivotTable.columns : undefined,
46
49
  compareRows: item.compareRows,
47
- columns: item.columns,
50
+ columns: item.columns.map((col) => {
51
+ return { ...col, label: snakeAndCamelCaseToTitleCase(col.label) };
52
+ }),
48
53
  chartType: item.chartType,
49
54
  dateField: item.dateField,
50
55
  pivot: item.pivot,
@@ -100,13 +105,13 @@ function formatAggragation(item, value) {
100
105
  /**
101
106
  * Extract and transform the data from itemInfo.
102
107
  */
103
- function getPivotTable(itemInfo, dashboardFilters, config = undefined) {
104
- if (!itemInfo)
105
- return [];
108
+ function getPivotTable(report, dashboardFilters) {
109
+ if (!report)
110
+ return undefined;
106
111
  const dateFilter = Object.values(dashboardFilters ?? {}).find((filter) => filter.filterType == 'date_range');
107
- const pivot = itemInfo?.pivot || config?.pivot;
108
- const data = itemInfo ? itemInfo : config;
109
- return pivot && data?.rows
112
+ const pivot = report?.pivot;
113
+ const data = report || {};
114
+ return pivot && data.rows
110
115
  ? generatePivotTable(pivot, JSON.parse(JSON.stringify(data.rows)), // deep copy
111
116
  dateFilter?.startDate && dateFilter?.endDate
112
117
  ? { start: dateFilter.startDate, end: dateFilter.endDate }
@@ -117,7 +122,7 @@ function getPivotTable(itemInfo, dashboardFilters, config = undefined) {
117
122
  end: dateFilter.comparisonRange.endDate,
118
123
  }
119
124
  : undefined)
120
- : null;
125
+ : undefined;
121
126
  }
122
127
  /**
123
128
  * Returns the data list based on whether the table is pivoted and if there is
@@ -140,11 +145,11 @@ function extractPivotedYAxis(pivotTable, itemInfo, config = undefined) {
140
145
  if (!pivotTable)
141
146
  return itemInfo?.yAxisFields ?? [];
142
147
  const pivot = itemInfo?.pivot || config?.pivot;
143
- if (!pivot.columnField)
148
+ if (!pivot.columnField && !pivot.rowField)
144
149
  return itemInfo?.yAxisFields ?? [];
145
150
  const yAxisFields = config ? config.yAxisFields : itemInfo?.yAxisFields;
146
151
  const pivotTableYAxis = yAxisFields
147
- ? generatePivotTableYAxis(pivot, pivotTable.columns, yAxisFields?.[0]?.format)
152
+ ? generatePivotTableYAxis(pivot, pivotTable.columns, yAxisFields[0])
148
153
  : null;
149
154
  const fields = pivotTableYAxis
150
155
  ? pivotTableYAxis
@@ -156,7 +161,7 @@ function extractPivotedYAxis(pivotTable, itemInfo, config = undefined) {
156
161
  fields[fields.length] = {
157
162
  ...sampleField,
158
163
  field: `comparison_${sampleField.field}`,
159
- label: `Comparison ${sampleField.label}`,
164
+ label: `comparison ${sampleField.label}`,
160
165
  };
161
166
  }
162
167
  return fields;
@@ -1 +1 @@
1
- {"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../../src/utils/dates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,MAAM,UASxB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,WAY/C"}
1
+ {"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../../src/utils/dates.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,MAAM,UAYxB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,WAY/C"}
@@ -1,14 +1,17 @@
1
+ import { COMPARISON_OPTIONS } from '../DateRangePicker/dateRangePickerUtils';
1
2
  /**
2
3
  * Converts the comparison range label to match the date filter range if the
3
4
  * comparison range is dynamic (ie. "Previous Period" -> "Previous 6 months").
4
5
  */
5
6
  export function convertComparisonRange(primaryRange, comparisonRange) {
6
- if (comparisonRange !== 'Previous Period')
7
- return comparisonRange;
7
+ const comparisonLabel = COMPARISON_OPTIONS.find((option) => option.value === comparisonRange)
8
+ ?.text || '';
9
+ if (comparisonLabel !== 'Previous Period')
10
+ return comparisonLabel;
8
11
  if (!primaryRange)
9
- return comparisonRange;
12
+ return comparisonLabel;
10
13
  if (primaryRange === 'All time')
11
- return comparisonRange;
14
+ return comparisonLabel;
12
15
  const primaryRangeSuffix = primaryRange
13
16
  .replace('Last ', '')
14
17
  .replace('This ', '');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quillsql/react",
3
- "version": "2.12.18",
3
+ "version": "2.12.20",
4
4
  "exports": {
5
5
  ".": {
6
6
  "import": "./dist/esm/index.js",