@quillsql/react 2.14.13 → 2.14.14

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 (241) hide show
  1. package/dist/cjs/Chart.d.ts.map +1 -1
  2. package/dist/cjs/Chart.js +12 -0
  3. package/dist/cjs/ChartBuilder.d.ts +3 -2
  4. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  5. package/dist/cjs/ChartBuilder.js +105 -16
  6. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  7. package/dist/cjs/ChartEditor.js +2 -0
  8. package/dist/cjs/Context.d.ts +6 -2
  9. package/dist/cjs/Context.d.ts.map +1 -1
  10. package/dist/cjs/Context.js +163 -35
  11. package/dist/cjs/Dashboard.d.ts.map +1 -1
  12. package/dist/cjs/Dashboard.js +93 -16
  13. package/dist/cjs/QuillProvider.d.ts +40 -1
  14. package/dist/cjs/QuillProvider.d.ts.map +1 -1
  15. package/dist/cjs/QuillProvider.js +2 -2
  16. package/dist/cjs/ReportBuilder.d.ts +4 -1
  17. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  18. package/dist/cjs/ReportBuilder.js +103 -1262
  19. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  20. package/dist/cjs/SQLEditor.js +50 -6
  21. package/dist/cjs/Table.d.ts.map +1 -1
  22. package/dist/cjs/Table.js +12 -0
  23. package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
  24. package/dist/cjs/components/Chart/BarChart.js +14 -9
  25. package/dist/cjs/components/Chart/CustomBar.d.ts +18 -0
  26. package/dist/cjs/components/Chart/CustomBar.d.ts.map +1 -0
  27. package/dist/cjs/components/Chart/CustomBar.js +70 -0
  28. package/dist/cjs/components/Chart/InternalChart.d.ts.map +1 -1
  29. package/dist/cjs/components/Chart/InternalChart.js +24 -1
  30. package/dist/cjs/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
  31. package/dist/cjs/components/Dashboard/DashboardTemplate.js +2 -1
  32. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  33. package/dist/cjs/components/Dashboard/DataLoader.js +73 -2
  34. package/dist/cjs/components/Dashboard/util.d.ts +2 -1
  35. package/dist/cjs/components/Dashboard/util.d.ts.map +1 -1
  36. package/dist/cjs/components/Dashboard/util.js +12 -1
  37. package/dist/cjs/components/QuillTable.d.ts +2 -1
  38. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  39. package/dist/cjs/components/QuillTable.js +2 -2
  40. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  41. package/dist/cjs/components/ReportBuilder/AddColumnModal.js +7 -1
  42. package/dist/cjs/components/ReportBuilder/ColumnComponent.d.ts +48 -0
  43. package/dist/cjs/components/ReportBuilder/ColumnComponent.d.ts.map +1 -0
  44. package/dist/cjs/components/ReportBuilder/ColumnComponent.js +46 -0
  45. package/dist/cjs/components/ReportBuilder/FilterComponent.d.ts +65 -0
  46. package/dist/cjs/components/ReportBuilder/FilterComponent.d.ts.map +1 -0
  47. package/dist/cjs/components/ReportBuilder/FilterComponent.js +51 -0
  48. package/dist/cjs/components/ReportBuilder/LimitComponent.d.ts +42 -0
  49. package/dist/cjs/components/ReportBuilder/LimitComponent.d.ts.map +1 -0
  50. package/dist/cjs/components/ReportBuilder/LimitComponent.js +50 -0
  51. package/dist/cjs/components/ReportBuilder/PivotComponent.d.ts +66 -0
  52. package/dist/cjs/components/ReportBuilder/PivotComponent.d.ts.map +1 -0
  53. package/dist/cjs/components/ReportBuilder/PivotComponent.js +47 -0
  54. package/dist/cjs/components/ReportBuilder/SaveReport.d.ts +162 -0
  55. package/dist/cjs/components/ReportBuilder/SaveReport.d.ts.map +1 -0
  56. package/dist/cjs/components/ReportBuilder/SaveReport.js +31 -0
  57. package/dist/cjs/components/ReportBuilder/SortComponent.d.ts +42 -0
  58. package/dist/cjs/components/ReportBuilder/SortComponent.d.ts.map +1 -0
  59. package/dist/cjs/components/ReportBuilder/SortComponent.js +50 -0
  60. package/dist/cjs/components/ReportBuilder/TableComponent.d.ts +28 -0
  61. package/dist/cjs/components/ReportBuilder/TableComponent.d.ts.map +1 -0
  62. package/dist/cjs/components/ReportBuilder/TableComponent.js +24 -0
  63. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  64. package/dist/cjs/components/ReportBuilder/ui.js +3 -1
  65. package/dist/cjs/components/UiComponents.d.ts +5 -2
  66. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  67. package/dist/cjs/components/UiComponents.js +6 -5
  68. package/dist/cjs/hooks/useAskQuill.d.ts.map +1 -1
  69. package/dist/cjs/hooks/useAskQuill.js +38 -0
  70. package/dist/cjs/hooks/useDashboard.d.ts +3 -1
  71. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  72. package/dist/cjs/hooks/useDashboard.js +91 -6
  73. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  74. package/dist/cjs/hooks/useExport.js +17 -9
  75. package/dist/cjs/hooks/useLongLoading.d.ts +13 -0
  76. package/dist/cjs/hooks/useLongLoading.d.ts.map +1 -0
  77. package/dist/cjs/hooks/useLongLoading.js +67 -0
  78. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  79. package/dist/cjs/hooks/useQuill.js +25 -1
  80. package/dist/cjs/hooks/useReportBuilder.d.ts +178 -0
  81. package/dist/cjs/hooks/useReportBuilder.d.ts.map +1 -0
  82. package/dist/cjs/hooks/useReportBuilder.js +1476 -0
  83. package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -1
  84. package/dist/cjs/hooks/useVirtualTables.js +27 -2
  85. package/dist/cjs/index.d.ts +11 -0
  86. package/dist/cjs/index.d.ts.map +1 -1
  87. package/dist/cjs/index.js +17 -1
  88. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts +14 -1
  89. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  90. package/dist/cjs/internals/ReportBuilder/PivotForm.js +86 -3
  91. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +19 -2
  92. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  93. package/dist/cjs/internals/ReportBuilder/PivotModal.js +421 -141
  94. package/dist/cjs/models/Client.d.ts +6 -2
  95. package/dist/cjs/models/Client.d.ts.map +1 -1
  96. package/dist/cjs/utils/astProcessing.d.ts +4 -2
  97. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  98. package/dist/cjs/utils/astProcessing.js +25 -2
  99. package/dist/cjs/utils/client.d.ts +2 -1
  100. package/dist/cjs/utils/client.d.ts.map +1 -1
  101. package/dist/cjs/utils/client.js +13 -2
  102. package/dist/cjs/utils/dashboard.d.ts +3 -1
  103. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  104. package/dist/cjs/utils/dashboard.js +44 -3
  105. package/dist/cjs/utils/filterProcessing.d.ts +2 -1
  106. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  107. package/dist/cjs/utils/filterProcessing.js +12 -1
  108. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  109. package/dist/cjs/utils/pivotConstructor.js +11 -9
  110. package/dist/cjs/utils/report.d.ts +11 -5
  111. package/dist/cjs/utils/report.d.ts.map +1 -1
  112. package/dist/cjs/utils/report.js +55 -8
  113. package/dist/cjs/utils/reportBuilder.d.ts.map +1 -1
  114. package/dist/cjs/utils/reportBuilder.js +5 -2
  115. package/dist/cjs/utils/schema.d.ts +5 -2
  116. package/dist/cjs/utils/schema.d.ts.map +1 -1
  117. package/dist/cjs/utils/schema.js +14 -2
  118. package/dist/cjs/utils/tableProcessing.d.ts +17 -10
  119. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  120. package/dist/cjs/utils/tableProcessing.js +99 -17
  121. package/dist/esm/Chart.d.ts.map +1 -1
  122. package/dist/esm/Chart.js +13 -1
  123. package/dist/esm/ChartBuilder.d.ts +3 -2
  124. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  125. package/dist/esm/ChartBuilder.js +107 -18
  126. package/dist/esm/ChartEditor.d.ts.map +1 -1
  127. package/dist/esm/ChartEditor.js +3 -1
  128. package/dist/esm/Context.d.ts +6 -2
  129. package/dist/esm/Context.d.ts.map +1 -1
  130. package/dist/esm/Context.js +162 -34
  131. package/dist/esm/Dashboard.d.ts.map +1 -1
  132. package/dist/esm/Dashboard.js +94 -17
  133. package/dist/esm/QuillProvider.d.ts +40 -1
  134. package/dist/esm/QuillProvider.d.ts.map +1 -1
  135. package/dist/esm/QuillProvider.js +2 -2
  136. package/dist/esm/ReportBuilder.d.ts +4 -1
  137. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  138. package/dist/esm/ReportBuilder.js +106 -1262
  139. package/dist/esm/SQLEditor.d.ts.map +1 -1
  140. package/dist/esm/SQLEditor.js +51 -7
  141. package/dist/esm/Table.d.ts.map +1 -1
  142. package/dist/esm/Table.js +13 -1
  143. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  144. package/dist/esm/components/Chart/BarChart.js +15 -10
  145. package/dist/esm/components/Chart/CustomBar.d.ts +18 -0
  146. package/dist/esm/components/Chart/CustomBar.d.ts.map +1 -0
  147. package/dist/esm/components/Chart/CustomBar.js +68 -0
  148. package/dist/esm/components/Chart/InternalChart.d.ts.map +1 -1
  149. package/dist/esm/components/Chart/InternalChart.js +25 -2
  150. package/dist/esm/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
  151. package/dist/esm/components/Dashboard/DashboardTemplate.js +3 -2
  152. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  153. package/dist/esm/components/Dashboard/DataLoader.js +74 -3
  154. package/dist/esm/components/Dashboard/util.d.ts +2 -1
  155. package/dist/esm/components/Dashboard/util.d.ts.map +1 -1
  156. package/dist/esm/components/Dashboard/util.js +12 -1
  157. package/dist/esm/components/QuillTable.d.ts +2 -1
  158. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  159. package/dist/esm/components/QuillTable.js +2 -2
  160. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  161. package/dist/esm/components/ReportBuilder/AddColumnModal.js +7 -1
  162. package/dist/esm/components/ReportBuilder/ColumnComponent.d.ts +48 -0
  163. package/dist/esm/components/ReportBuilder/ColumnComponent.d.ts.map +1 -0
  164. package/dist/esm/components/ReportBuilder/ColumnComponent.js +39 -0
  165. package/dist/esm/components/ReportBuilder/FilterComponent.d.ts +65 -0
  166. package/dist/esm/components/ReportBuilder/FilterComponent.d.ts.map +1 -0
  167. package/dist/esm/components/ReportBuilder/FilterComponent.js +44 -0
  168. package/dist/esm/components/ReportBuilder/LimitComponent.d.ts +42 -0
  169. package/dist/esm/components/ReportBuilder/LimitComponent.d.ts.map +1 -0
  170. package/dist/esm/components/ReportBuilder/LimitComponent.js +46 -0
  171. package/dist/esm/components/ReportBuilder/PivotComponent.d.ts +66 -0
  172. package/dist/esm/components/ReportBuilder/PivotComponent.d.ts.map +1 -0
  173. package/dist/esm/components/ReportBuilder/PivotComponent.js +40 -0
  174. package/dist/esm/components/ReportBuilder/SaveReport.d.ts +162 -0
  175. package/dist/esm/components/ReportBuilder/SaveReport.d.ts.map +1 -0
  176. package/dist/esm/components/ReportBuilder/SaveReport.js +31 -0
  177. package/dist/esm/components/ReportBuilder/SortComponent.d.ts +42 -0
  178. package/dist/esm/components/ReportBuilder/SortComponent.d.ts.map +1 -0
  179. package/dist/esm/components/ReportBuilder/SortComponent.js +46 -0
  180. package/dist/esm/components/ReportBuilder/TableComponent.d.ts +28 -0
  181. package/dist/esm/components/ReportBuilder/TableComponent.d.ts.map +1 -0
  182. package/dist/esm/components/ReportBuilder/TableComponent.js +20 -0
  183. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  184. package/dist/esm/components/ReportBuilder/ui.js +4 -2
  185. package/dist/esm/components/UiComponents.d.ts +5 -2
  186. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  187. package/dist/esm/components/UiComponents.js +6 -5
  188. package/dist/esm/hooks/useAskQuill.d.ts.map +1 -1
  189. package/dist/esm/hooks/useAskQuill.js +39 -1
  190. package/dist/esm/hooks/useDashboard.d.ts +3 -1
  191. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  192. package/dist/esm/hooks/useDashboard.js +92 -7
  193. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  194. package/dist/esm/hooks/useExport.js +18 -10
  195. package/dist/esm/hooks/useLongLoading.d.ts +13 -0
  196. package/dist/esm/hooks/useLongLoading.d.ts.map +1 -0
  197. package/dist/esm/hooks/useLongLoading.js +64 -0
  198. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  199. package/dist/esm/hooks/useQuill.js +26 -2
  200. package/dist/esm/hooks/useReportBuilder.d.ts +178 -0
  201. package/dist/esm/hooks/useReportBuilder.d.ts.map +1 -0
  202. package/dist/esm/hooks/useReportBuilder.js +1471 -0
  203. package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -1
  204. package/dist/esm/hooks/useVirtualTables.js +28 -3
  205. package/dist/esm/index.d.ts +11 -0
  206. package/dist/esm/index.d.ts.map +1 -1
  207. package/dist/esm/index.js +8 -0
  208. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts +14 -1
  209. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  210. package/dist/esm/internals/ReportBuilder/PivotForm.js +87 -4
  211. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +19 -2
  212. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  213. package/dist/esm/internals/ReportBuilder/PivotModal.js +423 -143
  214. package/dist/esm/models/Client.d.ts +6 -2
  215. package/dist/esm/models/Client.d.ts.map +1 -1
  216. package/dist/esm/utils/astProcessing.d.ts +4 -2
  217. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  218. package/dist/esm/utils/astProcessing.js +25 -2
  219. package/dist/esm/utils/client.d.ts +2 -1
  220. package/dist/esm/utils/client.d.ts.map +1 -1
  221. package/dist/esm/utils/client.js +13 -2
  222. package/dist/esm/utils/dashboard.d.ts +3 -1
  223. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  224. package/dist/esm/utils/dashboard.js +44 -3
  225. package/dist/esm/utils/filterProcessing.d.ts +2 -1
  226. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  227. package/dist/esm/utils/filterProcessing.js +12 -1
  228. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  229. package/dist/esm/utils/pivotConstructor.js +11 -9
  230. package/dist/esm/utils/report.d.ts +11 -5
  231. package/dist/esm/utils/report.d.ts.map +1 -1
  232. package/dist/esm/utils/report.js +55 -8
  233. package/dist/esm/utils/reportBuilder.d.ts.map +1 -1
  234. package/dist/esm/utils/reportBuilder.js +5 -2
  235. package/dist/esm/utils/schema.d.ts +5 -2
  236. package/dist/esm/utils/schema.d.ts.map +1 -1
  237. package/dist/esm/utils/schema.js +14 -2
  238. package/dist/esm/utils/tableProcessing.d.ts +17 -10
  239. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  240. package/dist/esm/utils/tableProcessing.js +99 -17
  241. package/package.json +1 -1
@@ -18,14 +18,14 @@ export const hasColumnAlias = (columns, referencedColumns) => {
18
18
  }
19
19
  return false;
20
20
  };
21
- export const getUniqueValuesByQuery = async ({ columns, query, client, getToken, tenants, customFields, filters, dashboardName, }) => {
21
+ export const getUniqueValuesByQuery = async ({ columns, query, client, getToken, tenants, customFields, filters, dashboardName, eventTracking, }) => {
22
22
  const stringNames = columns.map((column) => column.field);
23
23
  const uniqueValues = {};
24
24
  if (stringNames.length === 0) {
25
25
  return {};
26
26
  }
27
27
  const distinctValueQuery = generateDistinctQuery(stringNames, query, client.databaseType || 'postgresql');
28
- const distinctStrings = await fetchDistinctStrings(distinctValueQuery, client, getToken, tenants, customFields, filters, dashboardName);
28
+ const distinctStrings = await fetchDistinctStrings(distinctValueQuery, client, getToken, tenants, eventTracking, customFields, filters, dashboardName);
29
29
  if (!distinctStrings) {
30
30
  return {};
31
31
  }
@@ -34,13 +34,13 @@ export const getUniqueValuesByQuery = async ({ columns, query, client, getToken,
34
34
  }
35
35
  return uniqueValues;
36
36
  };
37
- export const getUniqueStringValuesByColumn = async ({ columns, tableName, client, getToken, tenants, customFields, withExceededColumns, query, dashboardName, }) => {
37
+ export const getUniqueStringValuesByColumn = async ({ columns, tableName, client, getToken, tenants, customFields, withExceededColumns, query, dashboardName, eventTracking, }) => {
38
38
  const convertedStringColumns = columns.filter((column) => {
39
39
  return isStringType(column.fieldType);
40
40
  });
41
41
  const stringNames = convertedStringColumns.map((column) => processColumnReference(column.field, client.databaseType, undefined, true));
42
42
  const { filteredColumns: smallStringColumns, exceededColumns } = stringNames.length > 0
43
- ? await getCountsByColumns(convertedStringColumns, query || `Select ${stringNames.join(', ')} from ${tableName}`, client, getToken, tenants, customFields ?? [], dashboardName)
43
+ ? await getCountsByColumns(convertedStringColumns, query || `Select ${stringNames.join(', ')} from ${tableName}`, client, getToken, tenants, customFields ?? [], eventTracking, dashboardName)
44
44
  : { filteredColumns: [], exceededColumns: undefined };
45
45
  const smallStringNames = smallStringColumns.map((column) => processColumnReference(column.field, client.databaseType, undefined, true));
46
46
  const newUniqueValues = query || smallStringColumns.length > 0
@@ -53,6 +53,7 @@ export const getUniqueStringValuesByColumn = async ({ columns, tableName, client
53
53
  tenants,
54
54
  customFields: customFields ?? [],
55
55
  dashboardName,
56
+ eventTracking,
56
57
  })
57
58
  : null;
58
59
  if (!newUniqueValues) {
@@ -67,7 +68,7 @@ export const getUniqueStringValuesByColumn = async ({ columns, tableName, client
67
68
  }
68
69
  return newUniqueValues;
69
70
  };
70
- export const getUniqueStringValuesByTable = async ({ tables, columns, client, getToken, tenants, dashboardName, customFields, withExceededColumns, queryTemplate, }) => {
71
+ export const getUniqueStringValuesByTable = async ({ tables, columns, client, getToken, tenants, dashboardName, customFields, withExceededColumns, queryTemplate, eventTracking, }) => {
71
72
  const uniqueValues = {};
72
73
  await Promise.all(tables.map(async (tableName) => {
73
74
  const tableColumns = columns.filter((column) => {
@@ -89,12 +90,13 @@ export const getUniqueStringValuesByTable = async ({ tables, columns, client, ge
89
90
  customFields,
90
91
  withExceededColumns,
91
92
  query,
93
+ eventTracking,
92
94
  });
93
95
  uniqueValues[tableName] = newUniqueValues;
94
96
  }));
95
97
  return uniqueValues;
96
98
  };
97
- export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns, reportBuilderColumns, client, getToken, tenants, query, queryTemplate, customFields, dashboardName, }) => {
99
+ export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns, reportBuilderColumns, client, getToken, tenants, query, queryTemplate, customFields, dashboardName, eventTracking, }) => {
98
100
  let dateRanges = {};
99
101
  let uniqueStrings = null;
100
102
  const columnUniqueValues = {};
@@ -110,6 +112,7 @@ export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns
110
112
  customFields,
111
113
  withExceededColumns: true,
112
114
  queryTemplate,
115
+ eventTracking,
113
116
  });
114
117
  reportBuilderColumns.forEach((column) => {
115
118
  columnUniqueValues[column.alias || column.field] =
@@ -119,13 +122,24 @@ export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns
119
122
  return column.fieldType === 'date';
120
123
  });
121
124
  if (dateColumns.length > 0) {
122
- dateRanges = await getQueryDateRangeByColumns(dateColumns, query, client, getToken, tenants, customFields, dashboardName);
125
+ dateRanges = await getQueryDateRangeByColumns(dateColumns, query, client, getToken, tenants, eventTracking, customFields, dashboardName);
123
126
  if (dateRanges === null) {
124
127
  throw new Error("Couldn't fetch date ranges");
125
128
  }
126
129
  }
127
130
  }
128
131
  catch (e) {
132
+ eventTracking?.logError?.({
133
+ type: 'bug', // TODO: determine type
134
+ severity: 'high',
135
+ message: 'Error fetching pivot info',
136
+ errorMessage: e.message,
137
+ errorStack: e.stack,
138
+ errorData: {
139
+ caller: 'getRelevantInfoFromQuery',
140
+ function: 'getRelevantInfoFromQuery',
141
+ },
142
+ });
129
143
  error = "Couldn't fetch pivot info";
130
144
  }
131
145
  return {
@@ -135,7 +149,7 @@ export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns
135
149
  error,
136
150
  };
137
151
  };
138
- export const getCountsByColumns = async (columns, query, client, getToken, tenants, customFields, dashboardName) => {
152
+ export const getCountsByColumns = async (columns, query, client, getToken, tenants, customFields, eventTracking, dashboardName) => {
139
153
  const stringNames = columns.map((column) => column.field);
140
154
  const countQuery = generateCountQuery(stringNames, query, client.databaseType || 'postgresql');
141
155
  try {
@@ -174,11 +188,21 @@ export const getCountsByColumns = async (columns, query, client, getToken, tenan
174
188
  return { filteredColumns, exceededColumns };
175
189
  }
176
190
  catch (e) {
177
- console.error(e);
191
+ eventTracking?.logError?.({
192
+ type: 'bug', // TODO: determine type
193
+ severity: 'high',
194
+ message: 'Error fetching counts by columns',
195
+ errorMessage: e.message,
196
+ errorStack: e.stack,
197
+ errorData: {
198
+ caller: 'getCountsByColumns',
199
+ function: 'getCountsByColumns',
200
+ },
201
+ });
178
202
  return { filteredColumns: columns, exceededColumns: undefined };
179
203
  }
180
204
  };
181
- const fetchDistinctStrings = async (query, client, getToken, tenants, customFields, filters, dashboardName) => {
205
+ const fetchDistinctStrings = async (query, client, getToken, tenants, eventTracking, customFields, filters, dashboardName) => {
182
206
  try {
183
207
  const { data } = await quillFetch({
184
208
  client,
@@ -231,18 +255,29 @@ const fetchDistinctStrings = async (query, client, getToken, tenants, customFiel
231
255
  return results;
232
256
  }
233
257
  catch (e) {
258
+ eventTracking?.logError?.({
259
+ type: 'bug', // TODO: determine type
260
+ severity: 'high',
261
+ message: 'Error fetching distinct strings',
262
+ errorMessage: e.message,
263
+ errorStack: e.stack,
264
+ errorData: {
265
+ caller: 'fetchDistinctStrings',
266
+ function: 'fetchDistinctStrings',
267
+ },
268
+ });
234
269
  return null;
235
270
  }
236
271
  };
237
- export const getQueryDateRangeByColumns = async (columns, query, client, getToken, tenants, customFields, dashboardName) => {
272
+ export const getQueryDateRangeByColumns = async (columns, query, client, getToken, tenants, eventTracking, customFields, dashboardName) => {
238
273
  const columnNames = columns.map(
239
274
  // @ts-ignore
240
275
  (column) => column.field || column.name);
241
276
  const distinctValueQuery = generateMinMaxDateRangeQueries(columnNames, query, client.databaseType || 'postgresql');
242
- const dateRanges = await fetchQueryDateRanges(distinctValueQuery, client, getToken, tenants, customFields, dashboardName);
277
+ const dateRanges = await fetchQueryDateRanges(distinctValueQuery, client, getToken, tenants, eventTracking, customFields, dashboardName);
243
278
  return dateRanges;
244
279
  };
245
- const fetchQueryDateRanges = async (query, client, getToken, tenants, customFields, dashboardName) => {
280
+ const fetchQueryDateRanges = async (query, client, getToken, tenants, eventTracking, customFields, dashboardName) => {
246
281
  try {
247
282
  const { data } = await quillFetch({
248
283
  client,
@@ -270,11 +305,22 @@ const fetchQueryDateRanges = async (query, client, getToken, tenants, customFiel
270
305
  return results;
271
306
  }
272
307
  catch (e) {
308
+ eventTracking?.logError?.({
309
+ type: 'bug', // TODO: determine type
310
+ severity: 'high',
311
+ message: 'Error fetching query date ranges',
312
+ errorMessage: e.message,
313
+ errorStack: e.stack,
314
+ errorData: {
315
+ caller: 'fetchQueryDateRanges',
316
+ function: 'fetchQueryDateRanges',
317
+ },
318
+ });
273
319
  return null;
274
320
  }
275
321
  };
276
322
  // Unused?
277
- export const getPaginatedRows = async (client, getToken, tenants, dashboardName, query, reportId, processing, filters, customFields) => {
323
+ export const getPaginatedRows = async (client, getToken, eventTracking, tenants, dashboardName, query, reportId, processing, filters, customFields) => {
278
324
  if (query) {
279
325
  return await fetchResultsByQuery({
280
326
  query,
@@ -285,6 +331,7 @@ export const getPaginatedRows = async (client, getToken, tenants, dashboardName,
285
331
  filters,
286
332
  dashboardName,
287
333
  getToken,
334
+ eventTracking,
288
335
  });
289
336
  }
290
337
  else if (reportId) {
@@ -296,11 +343,12 @@ export const getPaginatedRows = async (client, getToken, tenants, dashboardName,
296
343
  filters,
297
344
  customFields,
298
345
  getToken,
346
+ eventTracking,
299
347
  });
300
348
  }
301
349
  return { rows: [], columns: [] };
302
350
  };
303
- export const fetchResultsByQuery = async ({ query, client, tenants, processing, customFields, filters, dateField, rowsOnly, rowCountOnly, filterMap, dashboardName, pivot, getPivotRowCount = true, comparisonQuery, getToken, }) => {
351
+ export const fetchResultsByQuery = async ({ query, client, tenants, processing, customFields, filters, dateField, rowsOnly, rowCountOnly, filterMap, dashboardName, pivot, getPivotRowCount = true, comparisonQuery, getToken, eventTracking, }) => {
304
352
  let rows = [];
305
353
  let columns = [];
306
354
  let error = undefined;
@@ -409,6 +457,17 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
409
457
  }
410
458
  }
411
459
  catch (e) {
460
+ eventTracking?.logError?.({
461
+ type: 'bug', // TODO: determine type
462
+ severity: 'high',
463
+ message: 'Error fetching results by query',
464
+ errorMessage: e.message,
465
+ errorStack: e.stack,
466
+ errorData: {
467
+ caller: 'fetchResultsByQuery',
468
+ function: 'fetchResultsByQuery',
469
+ },
470
+ });
412
471
  rows = [];
413
472
  columns = [];
414
473
  error = e.message || e;
@@ -418,7 +477,7 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
418
477
  }
419
478
  return { rows, columns, rowCount, error, itemQuery, referencedTables };
420
479
  };
421
- export const fetchResultsByReport = async ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount = true, getToken, }) => {
480
+ export const fetchResultsByReport = async ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount = true, getToken, eventTracking, }) => {
422
481
  if (pivot && pivotQuery) {
423
482
  return fetchResultsByQuery({
424
483
  query: pivotQuery,
@@ -431,6 +490,7 @@ export const fetchResultsByReport = async ({ reportId, client, tenants, processi
431
490
  pivot,
432
491
  getPivotRowCount,
433
492
  getToken,
493
+ eventTracking,
434
494
  });
435
495
  }
436
496
  const updatedProcessing = { ...processing };
@@ -494,6 +554,17 @@ export const fetchResultsByReport = async ({ reportId, client, tenants, processi
494
554
  if (e instanceof Error && e.name === 'AbortError') {
495
555
  throw e;
496
556
  }
557
+ eventTracking?.logError?.({
558
+ type: 'bug', // TODO: determine type
559
+ severity: 'high',
560
+ message: 'Error fetching results by report',
561
+ errorMessage: e.message,
562
+ errorStack: e.stack,
563
+ errorData: {
564
+ caller: 'fetchResultsByReport',
565
+ function: 'fetchResultsByReport',
566
+ },
567
+ });
497
568
  rows = [];
498
569
  columns = [];
499
570
  rowCount = 0;
@@ -504,7 +575,7 @@ export const fetchResultsByReport = async ({ reportId, client, tenants, processi
504
575
  }
505
576
  return { rows, columns, rowCount, error };
506
577
  };
507
- export const fetchTableByAST = async (ast, client, getToken, tenants, dashboardName, processing, customFields, rowsOnly, rowCountOnly) => {
578
+ export const fetchTableByAST = async (ast, client, getToken, tenants, eventTracking, dashboardName, processing, customFields, rowsOnly, rowCountOnly) => {
508
579
  let rows = [];
509
580
  let columns = [];
510
581
  let rowCount;
@@ -557,6 +628,17 @@ export const fetchTableByAST = async (ast, client, getToken, tenants, dashboardN
557
628
  }
558
629
  }
559
630
  catch (e) {
631
+ eventTracking?.logError?.({
632
+ type: 'bug', // TODO: determine type
633
+ severity: 'high',
634
+ message: 'Error fetching table by AST',
635
+ errorMessage: e.message,
636
+ errorStack: e.stack,
637
+ errorData: {
638
+ caller: 'fetchTableByAST',
639
+ function: 'fetchTableByAST',
640
+ },
641
+ });
560
642
  rows = [];
561
643
  columns = [];
562
644
  rowCount = 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quillsql/react",
3
- "version": "2.14.13",
3
+ "version": "2.14.14",
4
4
  "exports": {
5
5
  ".": {
6
6
  "import": "./dist/esm/index.js",