@quillsql/react 2.13.40 → 2.13.42

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 (267) hide show
  1. package/dist/cjs/Chart.d.ts +5 -1
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +51 -28
  4. package/dist/cjs/ChartBuilder.d.ts +30 -3
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +483 -182
  7. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  8. package/dist/cjs/ChartEditor.js +11 -1
  9. package/dist/cjs/Context.d.ts +16 -4
  10. package/dist/cjs/Context.d.ts.map +1 -1
  11. package/dist/cjs/Context.js +95 -46
  12. package/dist/cjs/Dashboard.d.ts +6 -3
  13. package/dist/cjs/Dashboard.d.ts.map +1 -1
  14. package/dist/cjs/Dashboard.js +69 -28
  15. package/dist/cjs/QuillProvider.d.ts +4 -8
  16. package/dist/cjs/QuillProvider.d.ts.map +1 -1
  17. package/dist/cjs/ReportBuilder.d.ts +2 -1
  18. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  19. package/dist/cjs/ReportBuilder.js +190 -48
  20. package/dist/cjs/SQLEditor.d.ts +8 -1
  21. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  22. package/dist/cjs/SQLEditor.js +94 -10
  23. package/dist/cjs/Table.d.ts +21 -1
  24. package/dist/cjs/Table.d.ts.map +1 -1
  25. package/dist/cjs/Table.js +30 -192
  26. package/dist/cjs/components/Chart/BarChart.d.ts +5 -1
  27. package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
  28. package/dist/cjs/components/Chart/BarChart.js +4 -3
  29. package/dist/cjs/components/Chart/CustomReferenceLine.d.ts +2 -0
  30. package/dist/cjs/components/Chart/CustomReferenceLine.d.ts.map +1 -0
  31. package/dist/cjs/components/Chart/CustomReferenceLine.js +26 -0
  32. package/dist/cjs/components/Chart/GaugeChart.d.ts +11 -0
  33. package/dist/cjs/components/Chart/GaugeChart.d.ts.map +1 -0
  34. package/dist/cjs/components/Chart/GaugeChart.js +198 -0
  35. package/dist/cjs/components/Chart/InternalChart.d.ts.map +1 -1
  36. package/dist/cjs/components/Chart/InternalChart.js +14 -11
  37. package/dist/cjs/components/Chart/LineChart.d.ts +5 -1
  38. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  39. package/dist/cjs/components/Chart/LineChart.js +4 -3
  40. package/dist/cjs/components/Chart/MapChart.d.ts +36 -0
  41. package/dist/cjs/components/Chart/MapChart.d.ts.map +1 -0
  42. package/dist/cjs/components/Chart/MapChart.js +548 -0
  43. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  44. package/dist/cjs/components/Dashboard/DataLoader.js +114 -42
  45. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  46. package/dist/cjs/components/Dashboard/MetricComponent.js +57 -54
  47. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  48. package/dist/cjs/components/Dashboard/TableComponent.js +5 -1
  49. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  50. package/dist/cjs/components/QuillMultiSelectWithCombo.js +5 -4
  51. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
  52. package/dist/cjs/components/QuillSelectWithCombo.js +12 -11
  53. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  54. package/dist/cjs/components/ReportBuilder/AddColumnModal.js +2 -1
  55. package/dist/cjs/components/ReportBuilder/FilterModal.js +13 -13
  56. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +2 -1
  57. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -1
  58. package/dist/cjs/components/ReportBuilder/FilterStack.js +4 -4
  59. package/dist/cjs/components/ReportBuilder/convert.d.ts +2 -0
  60. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  61. package/dist/cjs/components/ReportBuilder/convert.js +28 -7
  62. package/dist/cjs/components/ReportBuilder/util.d.ts +1 -1
  63. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  64. package/dist/cjs/components/ReportBuilder/util.js +15 -2
  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 +34 -7
  68. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  69. package/dist/cjs/hooks/useDashboard.js +11 -9
  70. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  71. package/dist/cjs/hooks/useExport.js +18 -4
  72. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  73. package/dist/cjs/hooks/useQuill.js +16 -3
  74. package/dist/cjs/hooks/useReport.d.ts.map +1 -1
  75. package/dist/cjs/hooks/useReport.js +1 -7
  76. package/dist/cjs/hooks/useVirtualTables.d.ts +6 -2
  77. package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -1
  78. package/dist/cjs/hooks/useVirtualTables.js +5 -2
  79. package/dist/cjs/index.d.ts +1 -1
  80. package/dist/cjs/index.d.ts.map +1 -1
  81. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  82. package/dist/cjs/internals/ReportBuilder/PivotModal.js +7 -8
  83. package/dist/cjs/models/Columns.d.ts +1 -0
  84. package/dist/cjs/models/Columns.d.ts.map +1 -1
  85. package/dist/cjs/models/Filter.d.ts +20 -13
  86. package/dist/cjs/models/Filter.d.ts.map +1 -1
  87. package/dist/cjs/models/Filter.js +161 -87
  88. package/dist/cjs/models/Report.d.ts +12 -1
  89. package/dist/cjs/models/Report.d.ts.map +1 -1
  90. package/dist/cjs/models/Schema.d.ts +12 -1
  91. package/dist/cjs/models/Schema.d.ts.map +1 -1
  92. package/dist/cjs/utils/astFilterProcessing.js +22 -22
  93. package/dist/cjs/utils/astProcessing.d.ts +2 -2
  94. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  95. package/dist/cjs/utils/astProcessing.js +25 -6
  96. package/dist/cjs/utils/axisFormatter.d.ts.map +1 -1
  97. package/dist/cjs/utils/axisFormatter.js +25 -0
  98. package/dist/cjs/utils/color.d.ts +159 -0
  99. package/dist/cjs/utils/color.d.ts.map +1 -1
  100. package/dist/cjs/utils/color.js +14 -5
  101. package/dist/cjs/utils/columnProcessing.js +3 -3
  102. package/dist/cjs/utils/constants.d.ts +1 -0
  103. package/dist/cjs/utils/constants.d.ts.map +1 -1
  104. package/dist/cjs/utils/constants.js +2 -1
  105. package/dist/cjs/utils/dashboard.d.ts +14 -3
  106. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  107. package/dist/cjs/utils/dashboard.js +79 -16
  108. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  109. package/dist/cjs/utils/dataFetcher.js +3 -1
  110. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  111. package/dist/cjs/utils/filterProcessing.js +9 -9
  112. package/dist/cjs/utils/getDomain.d.ts +4 -1
  113. package/dist/cjs/utils/getDomain.d.ts.map +1 -1
  114. package/dist/cjs/utils/getDomain.js +11 -1
  115. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  116. package/dist/cjs/utils/pivotConstructor.js +9 -6
  117. package/dist/cjs/utils/queryConstructor.d.ts +1 -1
  118. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  119. package/dist/cjs/utils/queryConstructor.js +83 -49
  120. package/dist/cjs/utils/report.d.ts +23 -5
  121. package/dist/cjs/utils/report.d.ts.map +1 -1
  122. package/dist/cjs/utils/report.js +36 -14
  123. package/dist/cjs/utils/schema.d.ts +28 -3
  124. package/dist/cjs/utils/schema.d.ts.map +1 -1
  125. package/dist/cjs/utils/schema.js +79 -43
  126. package/dist/cjs/utils/tableProcessing.d.ts +12 -3
  127. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  128. package/dist/cjs/utils/tableProcessing.js +36 -8
  129. package/dist/cjs/utils/textProcessing.d.ts.map +1 -1
  130. package/dist/cjs/utils/textProcessing.js +0 -1
  131. package/dist/cjs/utils/valueFormatter.d.ts +1 -0
  132. package/dist/cjs/utils/valueFormatter.d.ts.map +1 -1
  133. package/dist/cjs/utils/valueFormatter.js +55 -1
  134. package/dist/esm/Chart.d.ts +5 -1
  135. package/dist/esm/Chart.d.ts.map +1 -1
  136. package/dist/esm/Chart.js +52 -29
  137. package/dist/esm/ChartBuilder.d.ts +30 -3
  138. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  139. package/dist/esm/ChartBuilder.js +487 -187
  140. package/dist/esm/ChartEditor.d.ts.map +1 -1
  141. package/dist/esm/ChartEditor.js +11 -1
  142. package/dist/esm/Context.d.ts +16 -4
  143. package/dist/esm/Context.d.ts.map +1 -1
  144. package/dist/esm/Context.js +97 -48
  145. package/dist/esm/Dashboard.d.ts +6 -3
  146. package/dist/esm/Dashboard.d.ts.map +1 -1
  147. package/dist/esm/Dashboard.js +70 -29
  148. package/dist/esm/QuillProvider.d.ts +4 -8
  149. package/dist/esm/QuillProvider.d.ts.map +1 -1
  150. package/dist/esm/ReportBuilder.d.ts +2 -1
  151. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  152. package/dist/esm/ReportBuilder.js +192 -50
  153. package/dist/esm/SQLEditor.d.ts +8 -1
  154. package/dist/esm/SQLEditor.d.ts.map +1 -1
  155. package/dist/esm/SQLEditor.js +95 -11
  156. package/dist/esm/Table.d.ts +21 -1
  157. package/dist/esm/Table.d.ts.map +1 -1
  158. package/dist/esm/Table.js +34 -196
  159. package/dist/esm/components/Chart/BarChart.d.ts +5 -1
  160. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  161. package/dist/esm/components/Chart/BarChart.js +5 -4
  162. package/dist/esm/components/Chart/CustomReferenceLine.d.ts +2 -0
  163. package/dist/esm/components/Chart/CustomReferenceLine.d.ts.map +1 -0
  164. package/dist/esm/components/Chart/CustomReferenceLine.js +23 -0
  165. package/dist/esm/components/Chart/GaugeChart.d.ts +11 -0
  166. package/dist/esm/components/Chart/GaugeChart.d.ts.map +1 -0
  167. package/dist/esm/components/Chart/GaugeChart.js +195 -0
  168. package/dist/esm/components/Chart/InternalChart.d.ts.map +1 -1
  169. package/dist/esm/components/Chart/InternalChart.js +14 -11
  170. package/dist/esm/components/Chart/LineChart.d.ts +5 -1
  171. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  172. package/dist/esm/components/Chart/LineChart.js +5 -4
  173. package/dist/esm/components/Chart/MapChart.d.ts +36 -0
  174. package/dist/esm/components/Chart/MapChart.d.ts.map +1 -0
  175. package/dist/esm/components/Chart/MapChart.js +541 -0
  176. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  177. package/dist/esm/components/Dashboard/DataLoader.js +114 -42
  178. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  179. package/dist/esm/components/Dashboard/MetricComponent.js +57 -54
  180. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  181. package/dist/esm/components/Dashboard/TableComponent.js +5 -1
  182. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  183. package/dist/esm/components/QuillMultiSelectWithCombo.js +5 -4
  184. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
  185. package/dist/esm/components/QuillSelectWithCombo.js +12 -11
  186. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  187. package/dist/esm/components/ReportBuilder/AddColumnModal.js +2 -1
  188. package/dist/esm/components/ReportBuilder/FilterModal.js +14 -14
  189. package/dist/esm/components/ReportBuilder/FilterStack.d.ts +2 -1
  190. package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -1
  191. package/dist/esm/components/ReportBuilder/FilterStack.js +4 -4
  192. package/dist/esm/components/ReportBuilder/convert.d.ts +2 -0
  193. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  194. package/dist/esm/components/ReportBuilder/convert.js +26 -7
  195. package/dist/esm/components/ReportBuilder/util.d.ts +1 -1
  196. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  197. package/dist/esm/components/ReportBuilder/util.js +15 -2
  198. package/dist/esm/components/UiComponents.d.ts +5 -2
  199. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  200. package/dist/esm/components/UiComponents.js +32 -6
  201. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  202. package/dist/esm/hooks/useDashboard.js +11 -9
  203. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  204. package/dist/esm/hooks/useExport.js +19 -5
  205. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  206. package/dist/esm/hooks/useQuill.js +16 -3
  207. package/dist/esm/hooks/useReport.d.ts.map +1 -1
  208. package/dist/esm/hooks/useReport.js +1 -7
  209. package/dist/esm/hooks/useVirtualTables.d.ts +6 -2
  210. package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -1
  211. package/dist/esm/hooks/useVirtualTables.js +6 -3
  212. package/dist/esm/index.d.ts +1 -1
  213. package/dist/esm/index.d.ts.map +1 -1
  214. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  215. package/dist/esm/internals/ReportBuilder/PivotModal.js +7 -8
  216. package/dist/esm/models/Columns.d.ts +1 -0
  217. package/dist/esm/models/Columns.d.ts.map +1 -1
  218. package/dist/esm/models/Filter.d.ts +20 -13
  219. package/dist/esm/models/Filter.d.ts.map +1 -1
  220. package/dist/esm/models/Filter.js +160 -86
  221. package/dist/esm/models/Report.d.ts +12 -1
  222. package/dist/esm/models/Report.d.ts.map +1 -1
  223. package/dist/esm/models/Schema.d.ts +12 -1
  224. package/dist/esm/models/Schema.d.ts.map +1 -1
  225. package/dist/esm/utils/astFilterProcessing.js +23 -23
  226. package/dist/esm/utils/astProcessing.d.ts +2 -2
  227. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  228. package/dist/esm/utils/astProcessing.js +25 -6
  229. package/dist/esm/utils/axisFormatter.d.ts.map +1 -1
  230. package/dist/esm/utils/axisFormatter.js +25 -0
  231. package/dist/esm/utils/color.d.ts +159 -0
  232. package/dist/esm/utils/color.d.ts.map +1 -1
  233. package/dist/esm/utils/color.js +8 -2
  234. package/dist/esm/utils/columnProcessing.js +3 -3
  235. package/dist/esm/utils/constants.d.ts +1 -0
  236. package/dist/esm/utils/constants.d.ts.map +1 -1
  237. package/dist/esm/utils/constants.js +1 -0
  238. package/dist/esm/utils/dashboard.d.ts +14 -3
  239. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  240. package/dist/esm/utils/dashboard.js +80 -17
  241. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  242. package/dist/esm/utils/dataFetcher.js +3 -1
  243. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  244. package/dist/esm/utils/filterProcessing.js +10 -10
  245. package/dist/esm/utils/getDomain.d.ts +4 -1
  246. package/dist/esm/utils/getDomain.d.ts.map +1 -1
  247. package/dist/esm/utils/getDomain.js +11 -1
  248. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  249. package/dist/esm/utils/pivotConstructor.js +9 -6
  250. package/dist/esm/utils/queryConstructor.d.ts +1 -1
  251. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  252. package/dist/esm/utils/queryConstructor.js +83 -49
  253. package/dist/esm/utils/report.d.ts +23 -5
  254. package/dist/esm/utils/report.d.ts.map +1 -1
  255. package/dist/esm/utils/report.js +38 -16
  256. package/dist/esm/utils/schema.d.ts +28 -3
  257. package/dist/esm/utils/schema.d.ts.map +1 -1
  258. package/dist/esm/utils/schema.js +78 -43
  259. package/dist/esm/utils/tableProcessing.d.ts +12 -3
  260. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  261. package/dist/esm/utils/tableProcessing.js +36 -8
  262. package/dist/esm/utils/textProcessing.d.ts.map +1 -1
  263. package/dist/esm/utils/textProcessing.js +0 -1
  264. package/dist/esm/utils/valueFormatter.d.ts +1 -0
  265. package/dist/esm/utils/valueFormatter.d.ts.map +1 -1
  266. package/dist/esm/utils/valueFormatter.js +53 -0
  267. package/package.json +10 -3
@@ -2,7 +2,7 @@ import equal from 'fast-deep-equal';
2
2
  import { createInitialFormData } from '../ChartBuilder';
3
3
  import { getTableNames } from '../components/ReportBuilder/ast';
4
4
  import { generatePivotTable } from '../internals/ReportBuilder/PivotModal';
5
- import { FilterType } from '../models/Filter';
5
+ import { InternalFilterType } from '../models/Filter';
6
6
  import { createBasicSelectASTFromColumns } from './astProcessing';
7
7
  import { getYAxisFields } from './columnProcessing';
8
8
  import { cleanDashboardItem } from './dashboard';
@@ -14,7 +14,7 @@ import { DEFAULT_PAGINATION } from './paginationProcessing';
14
14
  import { isPivotPossible, isValidPivot } from './pivotProcessing';
15
15
  import { fetchTableByAST, getQueryDateRangeByColumns, getRelevantInfoFromQuery, getUniqueStringValues, } from './tableProcessing';
16
16
  import { snakeAndCamelCaseToTitleCase } from './textProcessing';
17
- import { quillFormat } from './valueFormatter';
17
+ import { quillAutoFormat, quillFormat } from './valueFormatter';
18
18
  export const EMPTY_REPORT = {
19
19
  id: '',
20
20
  name: '',
@@ -57,10 +57,14 @@ function extractAllReportValuesFromQuillInternalReport(reportInternal) {
57
57
  queryString: reportInternal.queryString,
58
58
  rowCount: reportInternal.rowCount,
59
59
  template: reportInternal.template,
60
+ referenceLineYValues: reportInternal.referenceLineYValues,
61
+ referenceLines: reportInternal.referenceLines,
62
+ includeCustomFields: reportInternal.includeCustomFields,
63
+ columnsWithCustomFields: reportInternal.columnsWithCustomFields,
60
64
  };
61
65
  }
62
66
  // TODO: Convert this to take an object rather than a bunch of arguments
63
- export async function fetchReport(reportId, client, tenants, flags, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getDefaultDashboardFilters) {
67
+ export async function fetchReport({ reportId, client, tenants, flags, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getDefaultDashboardFilters, }) {
64
68
  let reportInfo = undefined;
65
69
  let errorMessage = undefined;
66
70
  try {
@@ -95,6 +99,7 @@ export async function fetchReport(reportId, client, tenants, flags, useReportTas
95
99
  filters,
96
100
  dateBucket,
97
101
  additionalProcessing,
102
+ customFields,
98
103
  });
99
104
  }
100
105
  catch (error) {
@@ -123,10 +128,10 @@ export async function fetchReport(reportId, client, tenants, flags, useReportTas
123
128
  }
124
129
  return { report: reportInfo || EMPTY_INTERNAL_REPORT, error: errorMessage };
125
130
  }
126
- export async function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, }) {
131
+ export async function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, customFields, }) {
127
132
  const dashboardItem = {
128
133
  ...resp,
129
- filtersApplied: filters?.filter((filter) => filter.filterType in FilterType),
134
+ filtersApplied: filters?.filter((filter) => filter.filterType in InternalFilterType),
130
135
  };
131
136
  if (resp.errorMessage) {
132
137
  throw new DataLoadError(resp?.errorMessage, {
@@ -143,7 +148,14 @@ export async function processReportResponse({ resp, client, filters, dateBucket,
143
148
  parseValueFromBigQueryDates(dashboardItem.compareRows, resp.fields);
144
149
  }
145
150
  }
146
- const reportInfo = await cleanDashboardItem(dashboardItem, filters, client, dateBucket, additionalProcessing);
151
+ const reportInfo = await cleanDashboardItem({
152
+ item: dashboardItem,
153
+ dashboardFilters: filters,
154
+ client,
155
+ dateBucket,
156
+ additionalProcessing,
157
+ customFields,
158
+ });
147
159
  if (additionalProcessing) {
148
160
  reportInfo.pagination = additionalProcessing.page;
149
161
  reportInfo.sort = additionalProcessing.sort;
@@ -245,15 +257,22 @@ export const formatRowsFromReport = (report, xAxisField, xAxisFormat) => {
245
257
  if (!report.rows || !report.columns) {
246
258
  return [];
247
259
  }
260
+ const columns = report.includeCustomFields &&
261
+ report.columnsWithCustomFields &&
262
+ !report.pivot
263
+ ? report.columnsWithCustomFields
264
+ : report.columns;
248
265
  return report.rows.map((row) => {
249
- return report.columns.reduce((formattedRow, column) => {
266
+ return columns.reduce((formattedRow, column) => {
250
267
  // Apply the format function to each field in the row
251
- const formattedValue = quillFormat({
252
- value: row[column.field],
253
- format: column.field === xAxisField && xAxisFormat
254
- ? xAxisFormat
255
- : column.format,
256
- });
268
+ const formattedValue = column.inferFormat
269
+ ? quillAutoFormat(row[column.field])
270
+ : quillFormat({
271
+ value: row[column.field],
272
+ format: column.field === xAxisField && xAxisFormat
273
+ ? xAxisFormat
274
+ : column.format,
275
+ });
257
276
  formattedRow[column.field] = formattedValue;
258
277
  return formattedRow;
259
278
  }, {});
@@ -269,7 +288,8 @@ export function convertInternalReportToReport(report, dashboardFilters, initiato
269
288
  };
270
289
  if (formattedReport.pivot &&
271
290
  isValidPivot(formattedReport.pivot).valid &&
272
- initiator !== 'useQuill') {
291
+ initiator !== 'useQuill' &&
292
+ initiator !== 'Table') {
273
293
  let columns = report.pivotColumns ?? report.columns;
274
294
  let rows = report.pivotRows ?? report.rows;
275
295
  if (report.chartType === 'table') {
@@ -343,7 +363,7 @@ export const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema,
343
363
  if (!table || !tableInfo) {
344
364
  throw new Error('No table found');
345
365
  }
346
- const tableData = await fetchTableByAST({ ...baseAst, where: formData }, client, tenants, processing ?? { page: DEFAULT_PAGINATION }, undefined, skipRowCount, undefined, dashboardName);
366
+ const tableData = await fetchTableByAST({ ...baseAst, where: formData }, client, tenants, processing ?? { page: DEFAULT_PAGINATION }, customFields, skipRowCount, undefined, dashboardName);
347
367
  if (tableData.error) {
348
368
  throw new Error(tableData.error);
349
369
  }
@@ -371,6 +391,8 @@ export const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema,
371
391
  };
372
392
  }),
373
393
  columnInternal: tableData.columns,
394
+ referenceLines: report?.referenceLines,
395
+ referenceLineYValues: report?.referenceLineYValues,
374
396
  };
375
397
  if (table !== currentTable || previousFormData !== formData) {
376
398
  const queryResult = await fetchSqlQuery({
@@ -411,7 +433,7 @@ export const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema,
411
433
  }
412
434
  if (!Object.values(relevantInfo.uniqueStrings[table] ?? {}).length ||
413
435
  !equal(formData, previousFormData)) {
414
- relevantInfo.uniqueStrings[table] = await getUniqueStringValues(tableInfo.columns.filter((column) => column.field === pivot?.columnField), table, client, tenants, customFields, undefined, undefined, query ? query : (report?.queryString ?? ''));
436
+ relevantInfo.uniqueStrings[table] = await getUniqueStringValues(tableInfo.columns.filter((column) => column.field === pivot?.columnField), table, client, tenants, customFields, undefined, undefined, query ? query : (report?.queryString ?? ''), report?.dashboardName);
415
437
  }
416
438
  newPivotData = await generatePivotTable({
417
439
  pivot,
@@ -1,8 +1,33 @@
1
1
  import { QuillProviderClient } from '../models/Client';
2
+ import { ColumnInternal } from '../models/Columns';
3
+ import { CustomField } from '../models/Schema';
2
4
  import { Table } from '../models/Tables';
3
- export declare const getCustomFieldInfo: (client: QuillProviderClient, caller?: string) => Promise<any[]>;
4
- export declare const getSchemaInfo: (client: QuillProviderClient, caller?: string, tableIds?: string[]) => Promise<{
5
+ export declare const getCustomFieldInfo: ({ client, tenants, caller, abortSignal, }: {
6
+ client: QuillProviderClient;
7
+ tenants: {
8
+ tenantField: string;
9
+ tenantIds: (string | number)[];
10
+ }[] | (string | number)[];
11
+ caller?: string;
12
+ abortSignal?: AbortSignal;
13
+ }) => Promise<{
14
+ [tableName: string]: CustomField[];
15
+ } | null>;
16
+ export declare const getSchemaInfo: ({ client, caller, tenants, tableIds, abortSignal, }: {
17
+ client: QuillProviderClient;
18
+ tenants?: {
19
+ tenantField: string;
20
+ tenantIds: (string | number)[];
21
+ }[] | (string | number)[];
22
+ caller?: string;
23
+ tableIds?: string[];
24
+ abortSignal?: AbortSignal;
25
+ }) => Promise<{
5
26
  schemaData: Table[];
6
- customFieldsByTable: any;
27
+ customFieldsByTable: {
28
+ [tableName: string]: CustomField[];
29
+ } | null;
30
+ schemaWithCustomFields: Table[];
7
31
  }>;
32
+ export declare const customFieldToColumnInternal: (customField: CustomField) => ColumnInternal;
8
33
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AA0BzC,eAAO,MAAM,kBAAkB,WACrB,mBAAmB,oCAmF5B,CAAC;AAEF,eAAO,MAAM,aAAa,WAChB,mBAAmB,8BAEhB,MAAM,EAAE,KAClB,OAAO,CAAC;IAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAAC,mBAAmB,EAAE,GAAG,CAAA;CAAE,CAqD3D,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AA8BzC,eAAO,MAAM,kBAAkB,8CAK5B;IACD,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EACH;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;KAAE,EAAE,GACzD,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,KAAG,OAAO,CAAC;IAAE,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;CAAE,GAAG,IAAI,CAmFxD,CAAC;AAEF,eAAO,MAAM,aAAa,wDAMvB;IACD,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EACJ;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;KAAE,EAAE,GACzD,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,KAAG,OAAO,CAAC;IACV,UAAU,EAAE,KAAK,EAAE,CAAC;IACpB,mBAAmB,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IACnE,sBAAsB,EAAE,KAAK,EAAE,CAAC;CACjC,CAiEA,CAAC;AA0BF,eAAO,MAAM,2BAA2B,gBACzB,WAAW,KACvB,cAaF,CAAC"}
@@ -1,4 +1,4 @@
1
- import { convertColumnInfoToColumnInternal } from './columnProcessing';
1
+ import { convertColumnInfoToColumnInternal, fieldTypeToDataTypeID, isNumberType, } from './columnProcessing';
2
2
  const parseResponse = (results) => {
3
3
  if (results.data?.data) {
4
4
  if (results.data.data.queries &&
@@ -20,14 +20,16 @@ const parseResponse = (results) => {
20
20
  }
21
21
  }
22
22
  };
23
- export const getCustomFieldInfo = async (client, caller = 'se') => {
24
- let customFieldsByTableUnique = [];
23
+ export const getCustomFieldInfo = async ({ client, tenants, caller = 'se', abortSignal, }) => {
24
+ let customFieldsByTableUniqueRows = [];
25
25
  try {
26
- const { queryEndpoint, queryHeaders, publicKey, databaseType, } = client;
27
- if ((databaseType && databaseType.toLowerCase() !== 'postgresql') ||
28
- !['665610862cf7a3000be66453'].includes(publicKey)) {
29
- throw new Error('CUSTOM FIELDS IS ONLY ALLOWED FOR POSTGRESQL DATABASES');
30
- }
26
+ const { queryEndpoint, queryHeaders, publicKey, databaseType } = client;
27
+ // if (
28
+ // (databaseType && databaseType.toLowerCase() !== 'postgresql') ||
29
+ // !['665610862cf7a3000be66453'].includes(publicKey)
30
+ // ) {
31
+ // throw new Error('CUSTOM FIELDS IS ONLY ALLOWED FOR POSTGRESQL DATABASES');
32
+ // }
31
33
  const response = await fetch(`${queryEndpoint}?cfr-${caller}`, {
32
34
  method: 'POST',
33
35
  headers: {
@@ -39,10 +41,12 @@ export const getCustomFieldInfo = async (client, caller = 'se') => {
39
41
  metadata: {
40
42
  clientId: publicKey,
41
43
  publicKey,
42
- task: 'custom-field-records',
44
+ tenants,
45
+ task: 'custom-fields',
43
46
  databaseType: databaseType,
44
47
  },
45
48
  }),
49
+ signal: abortSignal,
46
50
  });
47
51
  const result = await response.json();
48
52
  const extractedData = parseResponse(result);
@@ -53,49 +57,66 @@ export const getCustomFieldInfo = async (client, caller = 'se') => {
53
57
  }
54
58
  table.rows.forEach((row) => {
55
59
  customFieldsByTable.push({
56
- view_name: table.name,
57
- ref_table: row.ref_table,
60
+ viewName: table.name,
61
+ refTable: row.ref_table,
58
62
  field: row.field,
59
- ref_column: row.ref_column,
63
+ refColumn: row.ref_column,
60
64
  type: row.type,
65
+ refField: row.ref_table_id_field,
61
66
  });
62
67
  });
63
68
  });
64
69
  // make sure the are no duplicate records in extractedData
65
70
  const customFieldsByTableSet = new Set();
66
- customFieldsByTableUnique = customFieldsByTable.filter((item) => {
67
- if (customFieldsByTableSet.has(item.view_name +
68
- item.ref_table +
71
+ customFieldsByTableUniqueRows = customFieldsByTable.filter((item) => {
72
+ if (customFieldsByTableSet.has(item.viewName +
73
+ item.refTable +
74
+ item.refField +
69
75
  item.field +
70
- item.ref_column +
76
+ item.refColumn +
71
77
  item.type)) {
72
78
  return false;
73
79
  }
74
- customFieldsByTableSet.add(item.view_name +
75
- item.ref_table +
76
- item.field +
77
- item.ref_column +
78
- item.type);
80
+ customFieldsByTableSet.add(item.viewName + item.refTable + item.refField + item.field + item.refColumn + item.type);
79
81
  return true;
80
82
  });
81
83
  }
82
84
  catch (e) {
83
- return customFieldsByTableUnique;
85
+ return null;
84
86
  }
87
+ const customFieldsByTableUnique = customFieldsByTableUniqueRows
88
+ ? customFieldsByTableUniqueRows.reduce((acc, row) => {
89
+ if (!acc[row.viewName]) {
90
+ acc[row.viewName] = [];
91
+ }
92
+ acc[row.viewName]?.push(row);
93
+ return acc;
94
+ }, {})
95
+ : {};
85
96
  return customFieldsByTableUnique;
86
97
  };
87
- export const getSchemaInfo = async (client, caller = 'se', tableIds) => {
88
- const { queryEndpoint, queryHeaders, publicKey, withCredentials, } = client;
89
- // TODO: Make custom fields work
90
- // let customFieldsByTableUnique: any[] = [];
91
- // let getCustomFields = true;
92
- // if (!organizationId || organizationId !== '*') {
93
- // try {
94
- // customFieldsByTableUnique = await getCustomFieldInfo(client, caller);
95
- // } catch (e) {
96
- // getCustomFields = false;
97
- // }
98
- // }
98
+ export const getSchemaInfo = async ({ client, caller = 'se', tenants, tableIds, abortSignal, }) => {
99
+ const { queryEndpoint, queryHeaders, publicKey, withCredentials } = client;
100
+ let customFieldsByTableUnique = null;
101
+ if (client.featureFlags?.customFieldsEnabled &&
102
+ tenants &&
103
+ tenants[0] !== 'QUILL_ALL_TENANTS' &&
104
+ tenants.length === 1 &&
105
+ (typeof tenants[0] !== 'object' ||
106
+ (tenants[0].tenantIds?.[0] !== 'QUILL_ALL_TENANTS' &&
107
+ tenants[0].tenantIds?.length === 1))) {
108
+ try {
109
+ customFieldsByTableUnique = await getCustomFieldInfo({
110
+ client,
111
+ tenants,
112
+ caller,
113
+ abortSignal,
114
+ });
115
+ }
116
+ catch (e) {
117
+ console.error('Error fetching custom fields', e);
118
+ }
119
+ }
99
120
  const response = await fetch(`${queryEndpoint}?schema-${caller}`, {
100
121
  method: 'POST',
101
122
  headers: {
@@ -109,26 +130,28 @@ export const getSchemaInfo = async (client, caller = 'se', tableIds) => {
109
130
  publicKey: publicKey,
110
131
  task: 'schema',
111
132
  removeCustomerField: true,
112
- getCustomFields: false,
113
- // !client.organizationId ||
114
- // client.organizationId === '*' ||
115
- // (customFieldsByTableUnique.length === 0 && !getCustomFields)
116
- // ? false
117
- // : true,
133
+ removeCustomFieldRef: true,
118
134
  tableIds,
119
- // customFieldsByTable: customFieldsByTableUnique,
135
+ customFieldsByTable: customFieldsByTableUnique,
136
+ useNewCustomFields: true,
120
137
  gatherSchemaData: '665610862cf7a3000be66453' === publicKey ? true : false,
138
+ tenants,
121
139
  },
140
+ signal: abortSignal,
122
141
  }),
123
142
  });
124
143
  const result = await response.json();
125
144
  const parsedData = parseResponse(result);
126
145
  const converted = convertSchemaInfoToTable(parsedData);
127
146
  // triggerSoftUpdate(client, converted);
147
+ const schemaWithCustomFields = converted.map((table) => {
148
+ const customFieldRows = (customFieldsByTableUnique?.[table.name] ?? []).map((customField) => customFieldToColumnInternal(customField));
149
+ return { ...table, columns: [...table.columns, ...customFieldRows] };
150
+ });
128
151
  return {
129
152
  schemaData: converted,
130
- // customFieldsByTable: customFieldsByTableUnique,
131
- customFieldsByTable: [],
153
+ customFieldsByTable: customFieldsByTableUnique,
154
+ schemaWithCustomFields,
132
155
  };
133
156
  };
134
157
  // Used to convert backend data to front end data
@@ -154,3 +177,15 @@ function convertSchemaInfoToTable(schemaData) {
154
177
  });
155
178
  return tables;
156
179
  }
180
+ export const customFieldToColumnInternal = (customField) => {
181
+ return {
182
+ field: customField.field,
183
+ label: customField.field,
184
+ format: isNumberType(customField.type || 'varchar')
185
+ ? 'whole_number'
186
+ : 'string', // ex. 'whole_number'
187
+ fieldType: customField.type || 'varchar',
188
+ dataTypeID: fieldTypeToDataTypeID(customField.type?.toLocaleLowerCase() || 'varchar'),
189
+ jsType: isNumberType(customField.type || 'varchar') ? 'number' : 'string',
190
+ };
191
+ };
@@ -4,6 +4,7 @@ import { Column, ColumnInternal } from '../models/Columns';
4
4
  import { DashboardFilter } from '../models/Filter';
5
5
  import { Pagination } from '../models/Pagination';
6
6
  import { Pivot } from '../models/Pivot';
7
+ import { CustomField } from '../models/Schema';
7
8
  import { DateRangesByColumn } from '../models/Tables';
8
9
  export interface AdditionalProcessing {
9
10
  sort?: {
@@ -17,7 +18,9 @@ export declare const hasColumnAlias: (columns: Column[], referencedColumns: stri
17
18
  export declare const getUniqueValuesByColumns: (columns: Column[], query: string, rows: any, client: QuillProviderClient, tenants: {
18
19
  tenantField: string;
19
20
  tenantIds: (string | number)[];
20
- }[] | (string | number)[] | undefined, customFields: any[], filters?: DashboardFilter[], dashboardName?: string) => Promise<{
21
+ }[] | (string | number)[] | undefined, customFields: {
22
+ [table: string]: CustomField[];
23
+ }, filters?: DashboardFilter[], dashboardName?: string) => Promise<{
21
24
  [column: string]: {
22
25
  [value: string]: boolean;
23
26
  };
@@ -41,14 +44,18 @@ export declare const getRelevantInfoFromQuery: (columns: ColumnInternal[], clien
41
44
  export declare const getCountsByColumns: (columns: Column[], query: string, client: QuillProviderClient, tenants: {
42
45
  tenantField: string;
43
46
  tenantIds: (string | number)[];
44
- }[] | (string | number)[] | undefined, customFields: any[], dashboardName?: string) => Promise<{
47
+ }[] | (string | number)[] | undefined, customFields: {
48
+ [table: string]: CustomField[];
49
+ }, dashboardName?: string) => Promise<{
45
50
  filteredColumns: Column[];
46
51
  exceededColumns: Column[] | undefined;
47
52
  }>;
48
53
  export declare const getQueryDateRangeByColumns: (columns: Column[], query: string, client: QuillProviderClient, tenants: {
49
54
  tenantField: string;
50
55
  tenantIds: (string | number)[];
51
- }[] | (string | number)[] | undefined, customFields: any[], dashboardName?: string) => Promise<{
56
+ }[] | (string | number)[] | undefined, customFields: {
57
+ [table: string]: CustomField[];
58
+ }, dashboardName?: string) => Promise<{
52
59
  [column: string]: {
53
60
  dateRange: {
54
61
  start: Date;
@@ -97,6 +104,7 @@ export declare const fetchResultsByQuery: ({ query, client, tenants, processing,
97
104
  rowCount?: number;
98
105
  error?: string;
99
106
  itemQuery?: string[];
107
+ referencedTables?: string[];
100
108
  }>;
101
109
  export declare const fetchResultsByReport: ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount, }: {
102
110
  reportId: string;
@@ -130,6 +138,7 @@ export declare const fetchTableByAST: (ast: NodeSQLParser.Select, client: QuillP
130
138
  rowCount?: number;
131
139
  error?: string;
132
140
  itemQuery?: string[];
141
+ referencedTables?: string[];
133
142
  }>;
134
143
  export declare const convertUniqueValuesByColumnToUniqueValueStrings: (uniqueValuesByColumns: {
135
144
  [column: string]: {
@@ -1 +1 @@
1
- {"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"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"}
@@ -77,11 +77,11 @@ export const getUniqueStringValues = async (columns, tableName, client, tenants,
77
77
  const convertedStringColumns = columns.filter((column) => {
78
78
  return isStringType(column.fieldType);
79
79
  });
80
- const stringNames = convertedStringColumns.map((column) => processColumnReference(column.field, client.databaseType));
80
+ const stringNames = convertedStringColumns.map((column) => processColumnReference(column.field, client.databaseType, undefined, true));
81
81
  const { filteredColumns: smallStringColumns, exceededColumns } = stringNames.length > 0
82
82
  ? await getCountsByColumns(convertedStringColumns, query || `Select ${stringNames.join(', ')} from ${tableName}`, client, tenants, customFields ?? [], dashboardName)
83
83
  : { filteredColumns: [], exceededColumns: undefined };
84
- const smallStringNames = smallStringColumns.map((column) => processColumnReference(column.field, client.databaseType));
84
+ const smallStringNames = smallStringColumns.map((column) => processColumnReference(column.field, client.databaseType, undefined, true));
85
85
  const newUniqueValues = query || smallStringColumns.length > 0
86
86
  ? await getUniqueValuesByColumns(
87
87
  // returns null if data error
@@ -195,8 +195,8 @@ const fetchDistinctStrings = async (query, client, tenants, customFields, filter
195
195
  filters,
196
196
  // @ts-ignore
197
197
  dateField: filters?.find((filter) => filter.filterType === 'date_range')?.dateField,
198
- dashboardName: dashboardName && tenants ? dashboardName : undefined,
199
- tenants: dashboardName && tenants ? tenants : undefined,
198
+ dashboardName,
199
+ tenants,
200
200
  },
201
201
  };
202
202
  const cloudBody = { query };
@@ -308,6 +308,7 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
308
308
  let error = undefined;
309
309
  let rowCount = undefined;
310
310
  let itemQuery = undefined;
311
+ let referencedTables = undefined;
311
312
  try {
312
313
  if (pivot) {
313
314
  const pivotData = await generatePivotWithSQL({
@@ -333,7 +334,6 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
333
334
  filterMap,
334
335
  clientId: client.publicKey,
335
336
  databaseType: client?.databaseType,
336
- getCustomFields: !!tenants?.length,
337
337
  customFieldsByTable: customFields,
338
338
  additionalProcessing: processing,
339
339
  useUpdatedDataGathering: processing ? true : false,
@@ -399,6 +399,20 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
399
399
  columns = resp.fields.map((elem) => convertPostgresColumn(elem));
400
400
  rows = resp.rows;
401
401
  itemQuery = resp.itemQuery;
402
+ referencedTables = resp.referencedTables;
403
+ if (customFields) {
404
+ const tables = referencedTables ?? [];
405
+ tables.forEach((table) => {
406
+ const _customFields = customFields?.[table] ?? [];
407
+ columns.forEach((col) => {
408
+ if (_customFields.some((field) => {
409
+ return field.field === col.field;
410
+ })) {
411
+ col.inferFormat = true;
412
+ }
413
+ });
414
+ });
415
+ }
402
416
  }
403
417
  }
404
418
  catch (e) {
@@ -409,7 +423,7 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
409
423
  if (client.databaseType && client.databaseType.toLowerCase() === 'bigquery') {
410
424
  parseValueFromBigQueryDates(rows, columns);
411
425
  }
412
- return { rows, columns, rowCount, error, itemQuery };
426
+ return { rows, columns, rowCount, error, itemQuery, referencedTables };
413
427
  };
414
428
  export const fetchResultsByReport = async ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount = true, }) => {
415
429
  if (pivot && pivotQuery) {
@@ -503,6 +517,7 @@ export const fetchTableByAST = async (ast, client, tenants, processing, customFi
503
517
  let rowCount;
504
518
  let error;
505
519
  let itemQuery;
520
+ let referencedTables;
506
521
  try {
507
522
  const hostedBody = {
508
523
  metadata: {
@@ -510,7 +525,6 @@ export const fetchTableByAST = async (ast, client, tenants, processing, customFi
510
525
  ast,
511
526
  publicKey: client.publicKey,
512
527
  task: 'patterns',
513
- getCustomFields: false,
514
528
  customFields,
515
529
  additionalProcessing: processing,
516
530
  useUpdatedDataGathering: true,
@@ -534,6 +548,20 @@ export const fetchTableByAST = async (ast, client, tenants, processing, customFi
534
548
  columns = resp.fields.map((elem) => convertPostgresColumn(elem));
535
549
  rows = gatheredRows;
536
550
  itemQuery = resp.itemQuery;
551
+ referencedTables = resp.referencedTables;
552
+ if (customFields) {
553
+ const tables = referencedTables ?? [];
554
+ tables.forEach((table) => {
555
+ const _customFields = customFields?.[table] ?? [];
556
+ columns.forEach((col) => {
557
+ if (_customFields.some((field) => {
558
+ return field.field === col.field;
559
+ })) {
560
+ col.inferFormat = true;
561
+ }
562
+ });
563
+ });
564
+ }
537
565
  }
538
566
  catch (e) {
539
567
  rows = [];
@@ -544,7 +572,7 @@ export const fetchTableByAST = async (ast, client, tenants, processing, customFi
544
572
  if (client.databaseType && client.databaseType.toLowerCase() === 'bigquery') {
545
573
  parseValueFromBigQueryDates(rows, columns);
546
574
  }
547
- return { rows, columns, rowCount, error, itemQuery };
575
+ return { rows, columns, rowCount, error, itemQuery, referencedTables };
548
576
  };
549
577
  export const convertUniqueValuesByColumnToUniqueValueStrings = (uniqueValuesByColumns) => {
550
578
  return Object.keys(uniqueValuesByColumns).reduce((acc, column) => {
@@ -1 +1 @@
1
- {"version":3,"file":"textProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/textProcessing.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsE1F;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,UAa/C;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,UAkBvD;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,UAK7C"}
1
+ {"version":3,"file":"textProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/textProcessing.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsE1F;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,UAa/C;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,UAiBvD;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,UAK7C"}
@@ -83,7 +83,6 @@ export function snakeCaseToTitleCase(str) {
83
83
  }
84
84
  export function snakeAndCamelCaseToTitleCase(str) {
85
85
  if (!str || typeof str !== 'string') {
86
- console.log('str', str, typeof str);
87
86
  return str;
88
87
  }
89
88
  if (str.includes('_')) {
@@ -23,6 +23,7 @@ export declare const quillFormat: ({ value, format, }: {
23
23
  value: any;
24
24
  format: string;
25
25
  }) => string;
26
+ export declare const quillAutoFormat: (value: any) => string;
26
27
  export declare function getValidDate(dateString: string): Date | undefined;
27
28
  export declare const compareValues: (a: {
28
29
  [key: string]: any;
@@ -1 +1 @@
1
- {"version":3,"file":"valueFormatter.d.ts","sourceRoot":"","sources":["../../../src/utils/valueFormatter.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,IAAI,CAAC;QAAC,GAAG,EAAE,IAAI,CAAA;KAAE,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAQ7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAO/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,uDAMxB,KAAK,KAAG,MA8CV,CAAC;AAEF,eAAO,MAAM,WAAW,uBAGrB;IACD,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB,KAAG,MAkDH,CAAC;AAgPF,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,oBAG9C;AAED,eAAO,MAAM,aAAa,MACrB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,KACtB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,UACjB,MAAM,KACb,MAkDF,CAAC"}
1
+ {"version":3,"file":"valueFormatter.d.ts","sourceRoot":"","sources":["../../../src/utils/valueFormatter.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,IAAI,CAAC;QAAC,GAAG,EAAE,IAAI,CAAA;KAAE,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAQ7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAO/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,uDAMxB,KAAK,KAAG,MA8CV,CAAC;AAEF,eAAO,MAAM,WAAW,uBAGrB;IACD,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB,KAAG,MAkDH,CAAC;AAEF,eAAO,MAAM,eAAe,UAAW,GAAG,KAAG,MA+D5C,CAAC;AAgPF,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,oBAG9C;AAED,eAAO,MAAM,aAAa,MACrB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,KACtB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,UACjB,MAAM,KACb,MAkDF,CAAC"}