@quillsql/react 2.13.23 → 2.13.25

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 (67) hide show
  1. package/dist/cjs/ChartBuilder.d.ts +7 -3
  2. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  3. package/dist/cjs/ChartBuilder.js +36 -19
  4. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  5. package/dist/cjs/ReportBuilder.js +183 -233
  6. package/dist/cjs/SQLEditor.js +12 -10
  7. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  8. package/dist/cjs/components/QuillTable.d.ts +2 -1
  9. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  10. package/dist/cjs/components/QuillTable.js +5 -2
  11. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts +1 -2
  12. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  13. package/dist/cjs/components/ReportBuilder/AddSortPopover.js +1 -2
  14. package/dist/cjs/components/ReportBuilder/convert.d.ts +1 -1
  15. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  16. package/dist/cjs/components/ReportBuilder/convert.js +31 -4
  17. package/dist/cjs/components/ReportBuilder/util.js +1 -1
  18. package/dist/cjs/components/UiComponents.d.ts +3 -2
  19. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  20. package/dist/cjs/components/UiComponents.js +6 -3
  21. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -1
  22. package/dist/cjs/utils/astFilterProcessing.js +921 -1604
  23. package/dist/cjs/utils/astProcessing.d.ts +1 -1
  24. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  25. package/dist/cjs/utils/astProcessing.js +4 -2
  26. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  27. package/dist/cjs/utils/pivotConstructor.js +7 -4
  28. package/dist/cjs/utils/queryConstructor.d.ts +1 -1
  29. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  30. package/dist/cjs/utils/queryConstructor.js +6 -6
  31. package/dist/cjs/utils/report.d.ts.map +1 -1
  32. package/dist/cjs/utils/report.js +1 -1
  33. package/dist/cjs/utils/tableProcessing.js +1 -1
  34. package/dist/esm/ChartBuilder.d.ts +7 -3
  35. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  36. package/dist/esm/ChartBuilder.js +36 -19
  37. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  38. package/dist/esm/ReportBuilder.js +190 -238
  39. package/dist/esm/SQLEditor.js +12 -10
  40. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  41. package/dist/esm/components/QuillTable.d.ts +2 -1
  42. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  43. package/dist/esm/components/QuillTable.js +5 -2
  44. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts +1 -2
  45. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  46. package/dist/esm/components/ReportBuilder/AddSortPopover.js +1 -2
  47. package/dist/esm/components/ReportBuilder/convert.d.ts +1 -1
  48. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  49. package/dist/esm/components/ReportBuilder/convert.js +31 -4
  50. package/dist/esm/components/ReportBuilder/util.js +1 -1
  51. package/dist/esm/components/UiComponents.d.ts +3 -2
  52. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  53. package/dist/esm/components/UiComponents.js +6 -3
  54. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -1
  55. package/dist/esm/utils/astFilterProcessing.js +921 -1604
  56. package/dist/esm/utils/astProcessing.d.ts +1 -1
  57. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  58. package/dist/esm/utils/astProcessing.js +4 -2
  59. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  60. package/dist/esm/utils/pivotConstructor.js +7 -4
  61. package/dist/esm/utils/queryConstructor.d.ts +1 -1
  62. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  63. package/dist/esm/utils/queryConstructor.js +5 -5
  64. package/dist/esm/utils/report.d.ts.map +1 -1
  65. package/dist/esm/utils/report.js +1 -1
  66. package/dist/esm/utils/tableProcessing.js +2 -2
  67. package/package.json +1 -1
@@ -54,7 +54,7 @@ export declare const createBasicSelectASTFromColumns: (columns: ColumnInternal[]
54
54
  orderby: null;
55
55
  limit: null;
56
56
  };
57
- export declare const fetchAndProcessASTFromPrompt: (aiPrompt: string, schema: Table[], client: QuillProviderClient, prevPivot?: Pivot, currentQuery?: string) => Promise<{
57
+ export declare const fetchAndProcessASTFromPrompt: (aiPrompt: string, schema: Table[], client: QuillProviderClient, prevPivot?: Pivot, currentQuery?: string, prevTable?: string) => Promise<{
58
58
  ast: any;
59
59
  pivot: Pivot | null | undefined;
60
60
  whereAST: any;
@@ -1 +1 @@
1
- {"version":3,"file":"astProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/astProcessing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"astProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/astProcessing.ts"],"names":[],"mappings":"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"}
@@ -326,7 +326,7 @@ export const createBasicSelectASTFromColumns = (columns, tableName) => {
326
326
  limit: null,
327
327
  };
328
328
  };
329
- export const fetchAndProcessASTFromPrompt = async (aiPrompt, schema, client, prevPivot, currentQuery) => {
329
+ export const fetchAndProcessASTFromPrompt = async (aiPrompt, schema, client, prevPivot, currentQuery, prevTable) => {
330
330
  let res, data, ast, newAst, pivot;
331
331
  let numRetries = 0;
332
332
  let whereAST;
@@ -344,6 +344,7 @@ export const fetchAndProcessASTFromPrompt = async (aiPrompt, schema, client, pre
344
344
  initialQuestion: aiPrompt,
345
345
  publicKey: client.publicKey,
346
346
  useNewNodeSql: true, // new flag
347
+ useNewAstGroupBy: true, // new flag
347
348
  }),
348
349
  });
349
350
  }
@@ -356,6 +357,7 @@ export const fetchAndProcessASTFromPrompt = async (aiPrompt, schema, client, pre
356
357
  initialQuestion: aiPrompt,
357
358
  publicKey: client.publicKey,
358
359
  useNewNodeSql: true, // new flag
360
+ useNewAstGroupBy: true, // new flag
359
361
  }),
360
362
  });
361
363
  }
@@ -375,7 +377,7 @@ export const fetchAndProcessASTFromPrompt = async (aiPrompt, schema, client, pre
375
377
  ast = ast.length ? ast[0] : ast;
376
378
  newAst = convertBigQuery(ast);
377
379
  newAst = convertWildcardColumns(newAst, schema); // must go before groupby
378
- ({ ast: newAst, pivot } = convertGroupBy(newAst, schema, prevPivot));
380
+ ({ ast: newAst, pivot } = convertGroupBy(newAst, schema, prevPivot, prevTable));
379
381
  newAst = convertStringComparison(newAst, client.databaseType || 'postgresql');
380
382
  newAst = convertRemoveSimpleParentheses(newAst);
381
383
  const table = getTableNames(newAst)[0];
@@ -1 +1 @@
1
- {"version":3,"file":"pivotConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/pivotConstructor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,mBAAmB,EAC3B,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,GAAG,EAChB,eAAe,CAAC,EAAE,GAAG,EACrB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,OAAO,EAAE,GAAG,EAAE,CAAA;CAAE,CAAC,CAgO1C"}
1
+ {"version":3,"file":"pivotConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/pivotConstructor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,mBAAmB,EAC3B,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,GAAG,EAChB,eAAe,CAAC,EAAE,GAAG,EACrB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,OAAO,EAAE,GAAG,EAAE,CAAA;CAAE,CAAC,CAqO1C"}
@@ -20,12 +20,15 @@ export async function generatePivotWithSQL(pivot, report, client, dateBucket, da
20
20
  let distinctStringValues = undefined;
21
21
  if (!distinctStrings && report.rows && pivot.columnField) {
22
22
  const distinctValues = Array.from(new Set(report.rows.map((row) => row[pivot.columnField])));
23
- distinctStringValues = distinctValues.map((value) => value.toString());
23
+ distinctStringValues = distinctValues
24
+ .filter((value) => value !== null && value !== undefined)
25
+ .map((value) => value.toString());
24
26
  }
25
27
  if (!report.itemQuery) {
26
28
  throw Error('No item query found in report');
27
29
  }
28
- const sqlQuery = generatePivotQuery(pivot, report.itemQuery, client.databaseType || 'postgresql', comparisonInterval, distinctStrings ? distinctStrings : distinctStringValues, dateBucket, rowLimit);
30
+ const filteredDistinctStrings = distinctStrings?.filter((value) => value !== null && value !== undefined);
31
+ const sqlQuery = generatePivotQuery(pivot, report.itemQuery, client.databaseType || 'postgresql', comparisonInterval, distinctStrings ? filteredDistinctStrings : distinctStringValues, dateBucket, rowLimit);
29
32
  if (!sqlQuery || report.rows.length == 0) {
30
33
  throw 'No rows found in report';
31
34
  }
@@ -85,7 +88,7 @@ export async function generatePivotWithSQL(pivot, report, client, dateBucket, da
85
88
  return 0;
86
89
  });
87
90
  if (pivot.rowField &&
88
- !['string', 'varchar'].includes(pivot.rowFieldType || '')) {
91
+ !['string', 'varchar', 'text', 'char'].includes(pivot.rowFieldType || '')) {
89
92
  rows.forEach((row) => {
90
93
  row.__quillRawDate = typeof row[pivot.rowField || ''] === 'object' // BigQuery
91
94
  ? row[pivot.rowField || ''].value
@@ -111,7 +114,7 @@ export async function generatePivotWithSQL(pivot, report, client, dateBucket, da
111
114
  // add a row for each date in the range that doesn't have a value
112
115
  if (pivot.rowField &&
113
116
  pivot.rowFieldType &&
114
- !['string', 'varchar'].includes(pivot.rowFieldType) &&
117
+ !['string', 'varchar', 'text', 'char'].includes(pivot.rowFieldType) &&
115
118
  dateFilter) {
116
119
  const dateSet = new Set(rows.map((row) => row[pivot.rowField || '']));
117
120
  // create a loop that will go through each formatted date and add a row if it doesn't exist going to the current date
@@ -3,6 +3,6 @@ export declare function processColumnReference(column: string, databaseType: str
3
3
  export declare function replaceSpacesWithUnderscores(column: string): string;
4
4
  export declare function generateCountQuery(fields: string[], query: string, databaseType: string): string;
5
5
  export declare function generateDistinctQuery(stringFields: string[], query: string, databaseType: string): string;
6
- export declare function generateMinMaxRangeQueries(columnFields: string[], query: string, databaseType: string): string;
6
+ export declare function generateMinMaxDateRangeQueries(columnFields: string[], query: string, databaseType: string): string;
7
7
  export declare function generatePivotQuery(pivot: Pivot, itemQueries: string[], databaseType: string, comparisonInterval?: string, distinctStrings?: string[], dateBucket?: string, rowLimit?: number): string | undefined;
8
8
  //# sourceMappingURL=queryConstructor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queryConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/queryConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAoBxC,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,EAEvB,uBAAuB,CAAC,EAAE,OAAO,EACjC,sBAAsB,CAAC,EAAE,OAAO,UAqEjC;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,UAE1D;AAwDD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAsBrB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAYrB;AAiDD,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAcrB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EAAE,EACrB,YAAY,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAgCpB"}
1
+ {"version":3,"file":"queryConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/queryConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAoBxC,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,EAEvB,uBAAuB,CAAC,EAAE,OAAO,EACjC,sBAAsB,CAAC,EAAE,OAAO,UAqEjC;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,UAE1D;AAwDD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAsBrB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAYrB;AAiDD,wBAAgB,8BAA8B,CAC5C,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAcrB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EAAE,EACrB,YAAY,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAgCpB"}
@@ -181,9 +181,9 @@ function generateDistinctQuerySnowflake(stringFields, query) {
181
181
  const distinctQuery = distinctQueries.join(' UNION ALL ');
182
182
  return `WITH querytable AS (${query.replace(';', '')}) ` + distinctQuery;
183
183
  }
184
- export function generateMinMaxRangeQueries(columnFields, query, databaseType) {
185
- const max = databaseType.toLowerCase() === 'snowflake' ? 'GREATEST' : 'MAX';
186
- const min = databaseType.toLowerCase() === 'snowflake' ? 'LEAST' : 'MIN';
184
+ export function generateMinMaxDateRangeQueries(columnFields, query, databaseType) {
185
+ const max = 'MAX';
186
+ const min = 'MIN';
187
187
  const distinctQueries = columnFields.map((field) => {
188
188
  const wrappedField = ['postgresql'].includes(databaseType.toLowerCase())
189
189
  ? `"${field}"`
@@ -212,7 +212,7 @@ function create2DPivotQuery(pivot, itemQueries, databaseType, dateBucket, compar
212
212
  if (!columnFieldValues) {
213
213
  return undefined;
214
214
  }
215
- if (['string', 'varchar'].includes(pivot.rowFieldType || '') ||
215
+ if (['string', 'varchar', 'text', 'char'].includes(pivot.rowFieldType || '') ||
216
216
  !pivot.rowFieldType) {
217
217
  return create2DStringPivotQuery(pivot, itemQueries, columnFieldValues, databaseType, rowLimit);
218
218
  }
@@ -417,7 +417,7 @@ function create2DDatePivotQuery(pivot, itemQueries, columnFieldValues, databaseT
417
417
  ${joinQuery} ORDER BY qt.${rowFieldAlias}${rowLimit ? ` LIMIT ${rowLimit}` : ''}`;
418
418
  }
419
419
  function create1DPivotQuery(pivot, itemQueries, dateBucket = 'month', databaseType, comparisonInterval, rowLimit) {
420
- if (['string', 'varchar'].includes(pivot.rowFieldType || '') ||
420
+ if (['string', 'varchar', 'text', 'char'].includes(pivot.rowFieldType || '') ||
421
421
  !pivot.rowFieldType) {
422
422
  return create1DStringPivotQuery(pivot, itemQueries, databaseType, rowLimit);
423
423
  }
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAc,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,KAAK,EACL,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAW1B,OAAO,EACL,oBAAoB,EAIrB,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7D,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,mBAAmB,CAAC;IAClC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,WAkB1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,mBAGnC,CAAC;AA4BF,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,GAAG,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,YAAY,CAAC,EAAE,OAAO,EACtB,WAAW,CAAC,EAAE,WAAW,EACzB,0BAA0B,CAAC,EAAE,OAAO,GACnC,OAAO,CAAC;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAqF1D;AAED,wBAAsB,qBAAqB,CAAC,EAC1C,IAAI,EACJ,MAAM,EACN,OAAO,EACP,UAAU,EACV,oBAAoB,GACrB,EAAE;IACD,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,eAAe,GAAG,cAAc,CAAC,EAAE,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAgE/B;AAED,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB;;;GA0B5B;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,YAAY,CAAC,EAAE,GAAG,EAClB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAmC7B;AAED,wBAAsB,UAAU,CAAC,EAC/B,MAAM,EACN,eAAe,EACf,MAAM,GACP,EAAE;IACD,MAAM,EAAE,GAAG,CAAC;IACZ,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,GAAG,OAAO,CAAC,GAAG,CAAC,CA4Cf;AAED,eAAO,MAAM,oBAAoB,WAAY,GAAG,QAkB/C,CAAC;AAEF,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,mBAAmB,EAC3B,gBAAgB,EAAE,eAAe,EAAE,EACnC,SAAS,CAAC,EAAE,MAAM,GACjB,WAAW,CA0Db;AAED,eAAO,MAAM,6BAA6B,YAC/B,GAAG,YACF,GAAG,UACL,KAAK,EAAE,UACP,mBAAmB,UACnB,KAAK,qBACM,GAAG,iBACP,MAAM,qBACF;IACjB,aAAa,EAAE,mBAAmB,CAAC;IACnC,UAAU,EAAE,kBAAkB,CAAC;CAChC,WACQ,mBAAmB,iBACb,GAAG,qBACC,OAAO,iBACX,OAAO,eACT,oBAAoB,KAChC,OAAO,CAAC,iBAAiB,CAgK3B,CAAC"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"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"}
@@ -274,7 +274,7 @@ export const formatRowsFromReport = (report) => {
274
274
  };
275
275
  export function convertInternalReportToReport(report, dashboardFilters, initiator) {
276
276
  try {
277
- if (!report) {
277
+ if (!report || report.error) {
278
278
  return EMPTY_REPORT;
279
279
  }
280
280
  const formattedReport = {
@@ -7,7 +7,7 @@ import { parseValueFromBigQueryDates } from './dataProcessing';
7
7
  import { parseQueryDateRangeByDatabaseType } from './dates';
8
8
  import { processFilterErrorList } from './errorProcessing';
9
9
  import { DEFAULT_PAGINATION } from './paginationProcessing';
10
- import { generateCountQuery, generateDistinctQuery, generateMinMaxRangeQueries, processColumnReference, } from './queryConstructor';
10
+ import { generateCountQuery, generateDistinctQuery, generateMinMaxDateRangeQueries, processColumnReference, } from './queryConstructor';
11
11
  export const hasColumnAlias = (columns, referencedColumns) => {
12
12
  if (!referencedColumns) {
13
13
  return true;
@@ -215,7 +215,7 @@ export const getQueryDateRangeByColumns = async (columns, query, client, customF
215
215
  const columnNames = columns.map(
216
216
  // @ts-ignore
217
217
  (column) => column.field || column.name);
218
- const distinctValueQuery = generateMinMaxRangeQueries(columnNames, query, client.databaseType || 'postgresql');
218
+ const distinctValueQuery = generateMinMaxDateRangeQueries(columnNames, query, client.databaseType || 'postgresql');
219
219
  const dateRanges = await fetchQueryDateRanges(distinctValueQuery, client, customFields);
220
220
  return dateRanges;
221
221
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quillsql/react",
3
- "version": "2.13.23",
3
+ "version": "2.13.25",
4
4
  "exports": {
5
5
  ".": {
6
6
  "import": "./dist/esm/index.js",