@quillsql/react 2.11.17 → 2.11.19

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 (105) hide show
  1. package/dist/cjs/Chart.d.ts +0 -8
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/ChartBuilder.d.ts +11 -1
  4. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  5. package/dist/cjs/ChartBuilder.js +6 -5
  6. package/dist/cjs/ChartEditor.d.ts +11 -3
  7. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  8. package/dist/cjs/ChartEditor.js +3 -3
  9. package/dist/cjs/Dashboard.d.ts.map +1 -1
  10. package/dist/cjs/Dashboard.js +7 -9
  11. package/dist/cjs/ReportBuilder.d.ts +7 -1
  12. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  13. package/dist/cjs/ReportBuilder.js +112 -37
  14. package/dist/cjs/SQLEditor.d.ts +7 -5
  15. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  16. package/dist/cjs/SQLEditor.js +3 -2
  17. package/dist/cjs/Table.d.ts +2 -2
  18. package/dist/cjs/Table.d.ts.map +1 -1
  19. package/dist/cjs/components/Dashboard/DashboardFilter.js +2 -2
  20. package/dist/cjs/components/QuillCard.d.ts +2 -7
  21. package/dist/cjs/components/QuillCard.d.ts.map +1 -1
  22. package/dist/cjs/components/QuillCard.js +15 -9
  23. package/dist/cjs/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
  24. package/dist/cjs/components/ReportBuilder/AddColumnPopover.js +2 -0
  25. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +1 -1
  26. package/dist/cjs/components/ReportBuilder/convert.d.ts +1 -0
  27. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  28. package/dist/cjs/components/ReportBuilder/convert.js +20 -1
  29. package/dist/cjs/components/ReportBuilder/operators.d.ts +15 -10
  30. package/dist/cjs/components/ReportBuilder/operators.d.ts.map +1 -1
  31. package/dist/cjs/components/ReportBuilder/operators.js +23 -10
  32. package/dist/cjs/components/ReportBuilder/ui.d.ts +1 -2
  33. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  34. package/dist/cjs/components/ReportBuilder/ui.js +4 -4
  35. package/dist/cjs/components/ReportBuilder/util.d.ts +8 -3
  36. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  37. package/dist/cjs/components/ReportBuilder/util.js +110 -64
  38. package/dist/cjs/components/UiComponents.d.ts +0 -6
  39. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  40. package/dist/cjs/components/UiComponents.js +2 -44
  41. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts +5 -2
  42. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  43. package/dist/cjs/internals/ReportBuilder/PivotList.js +11 -11
  44. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +2 -1
  45. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  46. package/dist/cjs/internals/ReportBuilder/PivotModal.js +4 -3
  47. package/dist/cjs/utils/parserBigQuery.d.ts +6 -0
  48. package/dist/cjs/utils/parserBigQuery.d.ts.map +1 -0
  49. package/dist/cjs/utils/parserBigQuery.js +60 -0
  50. package/dist/cjs/utils/parserPostgres.d.ts +3 -0
  51. package/dist/cjs/utils/parserPostgres.d.ts.map +1 -0
  52. package/dist/cjs/utils/parserPostgres.js +42 -0
  53. package/dist/esm/Chart.d.ts +0 -8
  54. package/dist/esm/Chart.d.ts.map +1 -1
  55. package/dist/esm/ChartBuilder.d.ts +11 -1
  56. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  57. package/dist/esm/ChartBuilder.js +6 -5
  58. package/dist/esm/ChartEditor.d.ts +11 -3
  59. package/dist/esm/ChartEditor.d.ts.map +1 -1
  60. package/dist/esm/ChartEditor.js +3 -3
  61. package/dist/esm/Dashboard.d.ts.map +1 -1
  62. package/dist/esm/Dashboard.js +8 -10
  63. package/dist/esm/ReportBuilder.d.ts +7 -1
  64. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  65. package/dist/esm/ReportBuilder.js +113 -38
  66. package/dist/esm/SQLEditor.d.ts +7 -5
  67. package/dist/esm/SQLEditor.d.ts.map +1 -1
  68. package/dist/esm/SQLEditor.js +3 -2
  69. package/dist/esm/Table.d.ts +2 -2
  70. package/dist/esm/Table.d.ts.map +1 -1
  71. package/dist/esm/components/Dashboard/DashboardFilter.js +2 -2
  72. package/dist/esm/components/QuillCard.d.ts +2 -7
  73. package/dist/esm/components/QuillCard.d.ts.map +1 -1
  74. package/dist/esm/components/QuillCard.js +15 -9
  75. package/dist/esm/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
  76. package/dist/esm/components/ReportBuilder/AddColumnPopover.js +2 -0
  77. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +1 -1
  78. package/dist/esm/components/ReportBuilder/convert.d.ts +1 -0
  79. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  80. package/dist/esm/components/ReportBuilder/convert.js +18 -0
  81. package/dist/esm/components/ReportBuilder/operators.d.ts +15 -10
  82. package/dist/esm/components/ReportBuilder/operators.d.ts.map +1 -1
  83. package/dist/esm/components/ReportBuilder/operators.js +23 -10
  84. package/dist/esm/components/ReportBuilder/ui.d.ts +1 -2
  85. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  86. package/dist/esm/components/ReportBuilder/ui.js +4 -4
  87. package/dist/esm/components/ReportBuilder/util.d.ts +8 -3
  88. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  89. package/dist/esm/components/ReportBuilder/util.js +101 -60
  90. package/dist/esm/components/UiComponents.d.ts +0 -6
  91. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  92. package/dist/esm/components/UiComponents.js +3 -44
  93. package/dist/esm/internals/ReportBuilder/PivotList.d.ts +5 -2
  94. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  95. package/dist/esm/internals/ReportBuilder/PivotList.js +11 -11
  96. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +2 -1
  97. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  98. package/dist/esm/internals/ReportBuilder/PivotModal.js +4 -3
  99. package/dist/esm/utils/parserBigQuery.d.ts +6 -0
  100. package/dist/esm/utils/parserBigQuery.d.ts.map +1 -0
  101. package/dist/esm/utils/parserBigQuery.js +52 -0
  102. package/dist/esm/utils/parserPostgres.d.ts +3 -0
  103. package/dist/esm/utils/parserPostgres.d.ts.map +1 -0
  104. package/dist/esm/utils/parserPostgres.js +37 -0
  105. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertRemoveSimpleParentheses = exports.convertStringComparison = exports.applyPivot = exports.convertGroupBy = exports.convertWildcardColumns = exports.convertBigQuery = exports.recursiveSearchAndReplace = exports.convertDateComparison = void 0;
3
+ exports.convertRemoveSimpleParentheses = exports.convertStringComparison = exports.applyPivot = exports.convertGroupBy = exports.convertWildcardColumns = exports.convertBigQuery = exports.recursiveSearchAndReplaceByKey = exports.recursiveSearchAndReplace = exports.convertDateComparison = void 0;
4
4
  const ast_1 = require("./ast");
5
5
  const util_1 = require("./util");
6
6
  // Helper functions that preprocess the AST.
@@ -49,6 +49,21 @@ function recursiveSearchAndReplace(node, search, replace) {
49
49
  }
50
50
  }
51
51
  exports.recursiveSearchAndReplace = recursiveSearchAndReplace;
52
+ // THIS IS USED TO REPLACE UNITS IN INTERVALS FOR BIGQUERY
53
+ function recursiveSearchAndReplaceByKey(node, search, replace, searchKey) {
54
+ if (typeof node !== 'object') {
55
+ return;
56
+ }
57
+ if (node) {
58
+ Object.keys(node).forEach((key) => {
59
+ recursiveSearchAndReplaceByKey(node[key], search, replace, searchKey);
60
+ if (searchKey === key && node[key] === search) {
61
+ node[key] = replace;
62
+ }
63
+ });
64
+ }
65
+ }
66
+ exports.recursiveSearchAndReplaceByKey = recursiveSearchAndReplaceByKey;
52
67
  /**
53
68
  * Takes a bigquery AST as input, cleans it, and returns a Select AST.
54
69
  */
@@ -71,6 +86,10 @@ function convertBigQuery(ast) {
71
86
  recursiveSearchAndReplace(newAst.where, 'CURRENT_DATE', 'CURRENT_TIMESTAMP');
72
87
  recursiveSearchAndReplace(newAst.where, 'DATE_TRUNC', 'TIMESTAMP_TRUNC');
73
88
  recursiveSearchAndReplace(newAst.where, 'DATE', 'TIMESTAMP');
89
+ // JANK: If anyone is here this is how you have to do intervals in BigQuery no joke
90
+ recursiveSearchAndReplaceByKey(newAst.where, 'year', '* 365 DAY', 'unit');
91
+ recursiveSearchAndReplaceByKey(newAst.where, 'week', '* 7 DAY', 'unit');
92
+ recursiveSearchAndReplaceByKey(newAst.where, 'month', '* 30 DAY', 'unit');
74
93
  // TODO: handle joins nicely
75
94
  if (newAst.from?.length > 1) {
76
95
  newAst.from = [newAst.from[0]];
@@ -17,6 +17,8 @@ export declare const OPERATOR_GROUPS: {
17
17
  between: string;
18
18
  'IS NOT': string;
19
19
  IS: string;
20
+ EQUALS: string;
21
+ equals: string;
20
22
  };
21
23
  export declare const getDefaultOperatorSubtrees: (key: any, operator: any, left: any, right: any, databaseType: string) => any;
22
24
  export declare const DEFAULT_OPERATOR_SUBTREES: {
@@ -416,29 +418,32 @@ export declare const DEFAULT_BIG_QUERY_OPERATOR_SUBTREES: {
416
418
  name: string;
417
419
  args: {
418
420
  type: string;
419
- value: ({
420
- type: string;
421
- value: string;
422
- table?: undefined;
423
- column?: undefined;
424
- } | {
421
+ value: {
425
422
  type: string;
426
423
  table: null;
427
424
  column: string;
428
- value?: undefined;
429
- })[];
425
+ }[];
430
426
  };
427
+ over: null;
431
428
  };
432
429
  right: {
433
430
  type: string;
434
431
  name: string;
435
432
  args: {
436
433
  type: string;
437
- value: {
434
+ value: ({
438
435
  type: string;
439
436
  value: string;
440
- }[];
437
+ table?: undefined;
438
+ column?: undefined;
439
+ } | {
440
+ type: string;
441
+ table: null;
442
+ column: string;
443
+ value?: undefined;
444
+ })[];
441
445
  };
446
+ over: null;
442
447
  };
443
448
  };
444
449
  };
@@ -1 +1 @@
1
- {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/operators.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;CAmB3B,CAAC;AAEF,eAAO,MAAM,0BAA0B,QAChC,GAAG,YACE,GAAG,QACP,GAAG,SACF,GAAG,gBACI,MAAM,QA8DrB,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoQrC,CAAC;AAEF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+L/C,CAAC"}
1
+ {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/operators.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;CAqB3B,CAAC;AAEF,eAAO,MAAM,0BAA0B,QAChC,GAAG,YACE,GAAG,QACP,GAAG,SACF,GAAG,gBACI,MAAM,QAoErB,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoQrC,CAAC;AAEF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmM/C,CAAC"}
@@ -24,6 +24,8 @@ exports.OPERATOR_GROUPS = {
24
24
  between: 'in_the_last',
25
25
  'IS NOT': 'null_comp',
26
26
  IS: 'null_comp',
27
+ EQUALS: 'equals',
28
+ equals: 'equals',
27
29
  };
28
30
  const getDefaultOperatorSubtrees = (key, operator, left, right, databaseType) => {
29
31
  let result = exports.DEFAULT_OPERATOR_SUBTREES[key];
@@ -84,7 +86,14 @@ const getDefaultOperatorSubtrees = (key, operator, left, right, databaseType) =>
84
86
  result.left.column = left;
85
87
  }
86
88
  else if (key === 'equals') {
87
- result.left.args.value[1].column = left;
89
+ if (databaseType === 'BigQuery') {
90
+ result = exports.DEFAULT_BIG_QUERY_OPERATOR_SUBTREES['equals'];
91
+ result.left.args.value[0].column = left;
92
+ result.left.column = left;
93
+ }
94
+ else {
95
+ result.left.args.value[1].column = left;
96
+ }
88
97
  }
89
98
  else if (key === 'date') {
90
99
  result.operator = operator;
@@ -515,38 +524,42 @@ exports.DEFAULT_BIG_QUERY_OPERATOR_SUBTREES = {
515
524
  operator: '=',
516
525
  left: {
517
526
  type: 'function',
518
- name: 'date_trunc',
527
+ name: 'timestamp_trunc',
519
528
  args: {
520
529
  type: 'expr_list',
521
530
  value: [
522
531
  {
523
- type: 'single_quote_string',
524
- value: 'month',
532
+ type: 'column_ref',
533
+ table: null,
534
+ column: '',
525
535
  },
526
536
  {
527
537
  type: 'column_ref',
528
538
  table: null,
529
- column: '',
539
+ column: 'YEAR',
530
540
  },
531
541
  ],
532
542
  },
543
+ over: null,
533
544
  },
534
545
  right: {
535
546
  type: 'function',
536
- name: 'date_trunc',
547
+ name: 'timestamp_trunc',
537
548
  args: {
538
549
  type: 'expr_list',
539
550
  value: [
540
- {
541
- type: 'single_quote_string',
542
- value: 'month',
543
- },
544
551
  {
545
552
  type: 'timestamp',
546
553
  value: '2024-01-01',
547
554
  },
555
+ {
556
+ type: 'column_ref',
557
+ table: null,
558
+ column: 'YEAR',
559
+ },
548
560
  ],
549
561
  },
562
+ over: null,
550
563
  },
551
564
  },
552
565
  };
@@ -83,7 +83,6 @@ export interface TagWrapperProps {
83
83
  setOpenPopover: any;
84
84
  setIsPending: any;
85
85
  clearCheckboxes: any;
86
- fetchSqlQuery: any;
87
86
  handleDelete: any;
88
87
  setCheckboxes: any;
89
88
  handleReplaceSubtree: any;
@@ -94,6 +93,6 @@ export interface TagWrapperProps {
94
93
  renderNode: any;
95
94
  children: any;
96
95
  }
97
- export declare const TagWrapper: ({ isCard, isRow, editPopoverKey, keyPrefix, formData, activeEditItem, setEditPopoverKey, setActiveEditItem, setActivePath, setOpenPopover, setIsPending, clearCheckboxes, fetchSqlQuery, handleDelete, setCheckboxes, handleReplaceSubtree, FilterPopover, getByKey, EditPopover, Button, renderNode, children, }: TagWrapperProps) => import("react/jsx-runtime").JSX.Element;
96
+ export declare const TagWrapper: ({ isCard, isRow, editPopoverKey, keyPrefix, formData, activeEditItem, setEditPopoverKey, setActiveEditItem, setActivePath, setOpenPopover, setIsPending, clearCheckboxes, handleDelete, setCheckboxes, handleReplaceSubtree, FilterPopover, getByKey, EditPopover, Button, renderNode, children, }: TagWrapperProps) => import("react/jsx-runtime").JSX.Element;
98
97
  export declare const AddFilterPopover: ({ onSave, Button, renderNode, activeEditItem, }: any) => import("react/jsx-runtime").JSX.Element;
99
98
  //# sourceMappingURL=ui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,SAAS,EAAmC,MAAM,OAAO,CAAC;AAC/E,OAAO,EAKL,qBAAqB,EACrB,uBAAuB,EAExB,MAAM,iBAAiB,CAAC;AAQzB;;;;;GAKG;AAEH,eAAO,MAAM,WAAW,2BAA4B,GAAG,4CA2BtD,CAAC;AAEF,eAAO,MAAM,oBAAoB,2BAA4B,GAAG,4CA2B/D,CAAC;AAGF,eAAO,MAAM,uBAAuB,uCAKjC,GAAG,4CAiBL,CAAC;AAEF,eAAO,MAAM,QAAQ,sGAkFpB,CAAC;AAEF,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,MAAM,CAAC;CACf;AAGD,eAAO,MAAM,mBAAmB,eAE7B,4BAA4B,4CAAqC,CAAC;AAGrE,eAAO,MAAM,YAAY,iBAAkB,qBAAqB,4CAa/D,CAAC;AAGF,eAAO,MAAM,eAAe,iBAAkB,uBAAuB,4CAmBpE,CAAC;AAGF,eAAO,MAAM,iBAAiB,+CAuE7B,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,OAAO,CAAA;KAAE,KAAK,GAAG,CAAC,OAAO,CAAC;CAC5E;AAED,eAAO,MAAM,iBAAiB,oDAK3B,0BAA0B,4CA4C5B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,OAAO,CAAA;KAAE,KAAK,GAAG,CAAC,OAAO,CAAC;CAC5E;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,qCAI9B,6BAA6B,4CAiD/B,CAAC;AAGF,eAAO,MAAM,uBAAuB,+CAMnC,CAAC;AAGF,eAAO,MAAM,sBAAsB,+CAMlC,CAAC;AAEF,eAAO,MAAM,WAAW,8DAMrB,GAAG,4CA+BL,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,SAAS,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,kBAAkB,sFAO5B,2BAA2B,4CAmB7B,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,SAAS,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,gBAAgB,oFAO1B,yBAAyB,4CAkB3B,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,SAAS,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,iBAAiB,qFAO3B,0BAA0B,4CAkB5B,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAC;IACd,cAAc,EAAE,GAAG,CAAC;IACpB,iBAAiB,EAAE,GAAG,CAAC;IACvB,iBAAiB,EAAE,GAAG,CAAC;IACvB,aAAa,EAAE,GAAG,CAAC;IACnB,cAAc,EAAE,GAAG,CAAC;IACpB,YAAY,EAAE,GAAG,CAAC;IAClB,eAAe,EAAE,GAAG,CAAC;IACrB,YAAY,EAAE,GAAG,CAAC;IAClB,aAAa,EAAE,GAAG,CAAC;IACnB,oBAAoB,EAAE,GAAG,CAAC;IAC1B,aAAa,EAAE,CAAC,KAAK,EAAE,2BAA2B,KAAK,GAAG,CAAC,OAAO,CAAC;IACnE,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,GAAG,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,EAAE,GAAG,CAAC;IAChB,QAAQ,EAAE,GAAG,CAAC;CACf;AAED,eAAO,MAAM,UAAU,uSAsBpB,eAAe,4CA8FjB,CAAC;AAEF,eAAO,MAAM,gBAAgB,oDAK1B,GAAG,4CAsBL,CAAC"}
@@ -288,7 +288,7 @@ const QuillLimitPopover = ({ limitLabel, onClickDelete, popoverTitle, popoverChi
288
288
  } }), (0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedPopover, { isOpen: isOpen, popoverTitle: popoverTitle, setIsOpen: setIsOpen, popoverChildren: popoverChildren })] }));
289
289
  };
290
290
  exports.QuillLimitPopover = QuillLimitPopover;
291
- const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, activeEditItem, setEditPopoverKey, setActiveEditItem, setActivePath, setOpenPopover, setIsPending, clearCheckboxes, fetchSqlQuery, handleDelete, setCheckboxes, handleReplaceSubtree, FilterPopover, getByKey, EditPopover, Button, renderNode, children, }) => {
291
+ const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, activeEditItem, setEditPopoverKey, setActiveEditItem, setActivePath, setOpenPopover, setIsPending, clearCheckboxes, handleDelete, setCheckboxes, handleReplaceSubtree, FilterPopover, getByKey, EditPopover, Button, renderNode, children, }) => {
292
292
  const [isOpen, setIsOpen] = (0, react_1.useState)(false);
293
293
  const onOpen = () => {
294
294
  setActiveEditItem(getByKey(formData, keyPrefix));
@@ -322,7 +322,6 @@ const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, active
322
322
  setActivePath(null);
323
323
  setOpenPopover(null);
324
324
  setEditPopoverKey(null);
325
- fetchSqlQuery();
326
325
  clearCheckboxes();
327
326
  };
328
327
  return ((0, jsx_runtime_1.jsx)("div", { style: { width: '100%' }, children: (0, jsx_runtime_1.jsx)(FilterPopover, { isOpen: editPopoverKey === keyPrefix, popoverTitle: "Edit Filter", filterLabel: children, onClickDelete: handleClickDelete, setIsOpen: setIsOpen, popoverChildren: (0, jsx_runtime_1.jsx)(EditPopover, { Button: Button, renderNode: renderNode, activeEditItem: activeEditItem, onSave: () => {
@@ -333,7 +332,7 @@ const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, active
333
332
  setOpenPopover(null);
334
333
  setEditPopoverKey(null);
335
334
  handleDelete(keyPrefix);
336
- fetchSqlQuery();
335
+ setIsOpen(false);
337
336
  clearCheckboxes();
338
337
  }
339
338
  else {
@@ -343,6 +342,7 @@ const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, active
343
342
  setActiveEditItem(null);
344
343
  setActivePath(null);
345
344
  setOpenPopover(null);
345
+ setIsOpen(false);
346
346
  clearCheckboxes();
347
347
  }
348
348
  }, onDelete: () => {
@@ -351,8 +351,8 @@ const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, active
351
351
  setActivePath(null);
352
352
  setOpenPopover(null);
353
353
  setEditPopoverKey(null);
354
+ setIsOpen(false);
354
355
  handleDelete(keyPrefix);
355
- fetchSqlQuery();
356
356
  clearCheckboxes();
357
357
  } }) }) })); // Make sure to close the <Tag> correctly
358
358
  }
@@ -21,11 +21,15 @@ export declare function formatDateComparisonNode(node: any): string | null;
21
21
  export declare function getInTheCurrentIntervalSentence(node: any, databaseType: string): string | null;
22
22
  export declare function getInTheLastIntervalSentence(node: any, databaseType: string): string | null;
23
23
  export declare function getInThePreviousIntervalSentence(node: any, databaseType: string): string | null;
24
+ export declare function getIsEqualsSentence(node: any, databaseType: string): string | null;
25
+ export declare function getIsAfterSentence(node: any, databaseType: string): string | null;
26
+ export declare function getIsBeforeSentence(node: any, databaseType: string): string | null;
24
27
  export declare const isInTheLastInterval: (node: any, databaseType: string) => boolean;
25
- export declare const isInTheLastIntervalBigQuery: (node: any) => boolean;
28
+ export declare const isAfter: (node: any, databaseType: string) => boolean | undefined;
29
+ export declare const isBefore: (node: any, databaseType: string) => boolean | undefined;
26
30
  export declare const isTheCurrentInterval: (node: any, databaseType: string) => boolean;
31
+ export declare const isEquals: (node: any, databaseType: string) => boolean;
27
32
  export declare const isThePreviousInterval: (node: any, databaseType: string) => any;
28
- export declare const isTheCurrentIntervalBigQuery: (node: any) => boolean;
29
33
  /**
30
34
  * Returns whether this node is the root of a binary expression
31
35
  * where the left child is a string but really should be
@@ -56,7 +60,7 @@ export declare function tryConvertDateEquality(node: any, databaseType?: string)
56
60
  * Returns whether this node is an equality of a date column with a
57
61
  * date trunc.
58
62
  */
59
- export declare const isDateTruncEquals: (node: any) => boolean;
63
+ export declare const isDateTruncEquals: (node: any, databaseType?: string) => boolean;
60
64
  /**
61
65
  * Returns whether this node is an equality of a date column with extract.
62
66
  */
@@ -76,4 +80,5 @@ export declare const getDateFilterInfo: (node: any) => {
76
80
  export declare function removeNonSelectedTableReferences(ast: any, table: string, columns: string[]): any;
77
81
  export declare function allNumericNodesValidInTree(node: any): boolean;
78
82
  export declare function isIdColumn(columnName?: string): boolean | "" | undefined;
83
+ export declare function getCustomSentence(node: any, databaseType: string): string | null;
79
84
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/util.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,eAAO,MAAM,qBAAqB,SAAU,GAAG,YAW9C,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,WAa1C;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,WAK5C;AAGD,eAAO,MAAM,WAAW,SAAU,GAAG,YAuBpC,CAAC;AAKF,eAAO,MAAM,oBAAoB,SAAU,GAAG,QAE7C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG;;;;;;;;EAU3C;AAKD,eAAO,MAAM,eAAe,QAAS,GAAG,QAMvC,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,WAiBvD;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,GAAG,iBAQjD;AAED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAQD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAWf;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAMD,eAAO,MAAM,mBAAmB,SAAU,GAAG,gBAAgB,MAAM,YA4BlE,CAAC;AAIF,eAAO,MAAM,2BAA2B,SAAU,GAAG,YAUpD,CAAC;AAIF,eAAO,MAAM,oBAAoB,SACzB,GAAG,gBACK,MAAM,KACnB,OAoBF,CAAC;AAEF,eAAO,MAAM,qBAAqB,SAAU,GAAG,gBAAgB,MAAM,QAYpE,CAAC;AAEF,eAAO,MAAM,4BAA4B,SAAU,GAAG,KAAG,OAUxD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,GAAG,QA4B3C,CAAC;AAGF,eAAO,MAAM,UAAU,eAAgB,MAAM,SAe5C,CAAC;AAmBF;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,UAsBvE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,UAgB9C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,sBAmBtE;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,SAAU,GAAG,YAU1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,SAAU,GAAG,YAOxC,CAAC;AAEF,wBAAgB,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,WAehD;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,GAAG,GACV,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAyB1C;AAED,eAAO,MAAM,QAAQ,QAAS,GAAG,QAAoC,CAAC;AAEtE,eAAO,MAAM,QAAQ,MAAO,MAAM,WAA2C,CAAC;AA4L9E,eAAO,MAAM,iBAAiB,SAAU,GAAG;;;;;;;CAc1C,CAAC;AA6CF,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EAAE,OAQlB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAc7D;AAED,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,4BAO7C"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/util.ts"],"names":[],"mappings":"AA0BA;;GAEG;AACH,eAAO,MAAM,qBAAqB,SAAU,GAAG,YAW9C,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,WAa1C;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,WAK5C;AAGD,eAAO,MAAM,WAAW,SAAU,GAAG,YAuBpC,CAAC;AAKF,eAAO,MAAM,oBAAoB,SAAU,GAAG,QAE7C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG;;;;;;;;EAU3C;AAKD,eAAO,MAAM,eAAe,QAAS,GAAG,QAMvC,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,WAiBvD;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,GAAG,iBAQjD;AAED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAQD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAaf;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAiBf;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAaf;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAaf;AAMD,eAAO,MAAM,mBAAmB,SAAU,GAAG,gBAAgB,MAAM,YAKlE,CAAC;AAEF,eAAO,MAAM,OAAO,SAAU,GAAG,gBAAgB,MAAM,wBAItD,CAAC;AAEF,eAAO,MAAM,QAAQ,SAAU,GAAG,gBAAgB,MAAM,wBAIvD,CAAC;AAIF,eAAO,MAAM,oBAAoB,SACzB,GAAG,gBACK,MAAM,KACnB,OAKF,CAAC;AAIF,eAAO,MAAM,QAAQ,SAAU,GAAG,gBAAgB,MAAM,KAAG,OAK1D,CAAC;AAEF,eAAO,MAAM,qBAAqB,SAAU,GAAG,gBAAgB,MAAM,QAYpE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,GAAG,QA4B3C,CAAC;AAGF,eAAO,MAAM,UAAU,eAAgB,MAAM,SAe5C,CAAC;AAmBF;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,UAsBvE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,UAgB9C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,sBAmBtE;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,SAAU,GAAG,iBAAiB,MAAM,YAUjE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,SAAU,GAAG,YAOxC,CAAC;AAEF,wBAAgB,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,WAehD;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,GAAG,GACV,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAyB1C;AAED,eAAO,MAAM,QAAQ,QAAS,GAAG,QAAoC,CAAC;AAEtE,eAAO,MAAM,QAAQ,MAAO,MAAM,WAA2C,CAAC;AA4L9E,eAAO,MAAM,iBAAiB,SAAU,GAAG;;;;;;;CAc1C,CAAC;AAsDF,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EAAE,OAQlB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAc7D;AAED,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,4BAO7C;AAID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,iBAehE"}
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  // A collection of reusable, pure, utility functions for the Report Builder.
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.isIdColumn = exports.allNumericNodesValidInTree = exports.removeNonSelectedTableReferences = exports.getDateFilterInfo = exports.trimEndS = exports.deepCopy = exports.getPostgresBasicType = exports.showNodeAsRow = exports.isExtractEquals = exports.isDateTruncEquals = exports.tryConvertDateEquality = exports.extractSuffixToString = exports.dateTruncSuffixToString = exports.newUTCDate = exports.isColumnComparison = exports.isTheCurrentIntervalBigQuery = exports.isThePreviousInterval = exports.isTheCurrentInterval = exports.isInTheLastIntervalBigQuery = exports.isInTheLastInterval = exports.getInThePreviousIntervalSentence = exports.getInTheLastIntervalSentence = exports.getInTheCurrentIntervalSentence = exports.formatDateComparisonNode = exports.areObjectsEqualish = exports.isColumnDateish = exports.generateColumnExpr = exports.isColumnReferenceish = exports.isDateTrunc = exports.hasTopLevelOrBoolean = exports.isTopLevelBoolean = exports.isNodeEmptyCollection = void 0;
4
+ exports.getCustomSentence = exports.isIdColumn = exports.allNumericNodesValidInTree = exports.removeNonSelectedTableReferences = exports.getDateFilterInfo = exports.trimEndS = exports.deepCopy = exports.getPostgresBasicType = exports.showNodeAsRow = exports.isExtractEquals = exports.isDateTruncEquals = exports.tryConvertDateEquality = exports.extractSuffixToString = exports.dateTruncSuffixToString = exports.newUTCDate = exports.isColumnComparison = exports.isThePreviousInterval = exports.isEquals = exports.isTheCurrentInterval = exports.isBefore = exports.isAfter = exports.isInTheLastInterval = exports.getIsBeforeSentence = exports.getIsAfterSentence = exports.getIsEqualsSentence = exports.getInThePreviousIntervalSentence = exports.getInTheLastIntervalSentence = exports.getInTheCurrentIntervalSentence = exports.formatDateComparisonNode = exports.areObjectsEqualish = exports.isColumnDateish = exports.generateColumnExpr = exports.isColumnReferenceish = exports.isDateTrunc = exports.hasTopLevelOrBoolean = exports.isTopLevelBoolean = exports.isNodeEmptyCollection = void 0;
5
5
  const date_fns_1 = require("date-fns");
6
6
  const bigDateMap_1 = require("./bigDateMap");
7
7
  const textProcessing_1 = require("../../utils/textProcessing");
8
+ const parserBigQuery_1 = require("../../utils/parserBigQuery");
9
+ const parserPostgres_1 = require("../../utils/parserPostgres");
8
10
  /**
9
11
  * A node that is "in" or "not in" where none of the variants are selected.
10
12
  */
@@ -147,7 +149,7 @@ const BIG_QUERY_DAY_TO_INTERVAL_MAP = {
147
149
  };
148
150
  function getInTheLastIntervalSentence(node, databaseType) {
149
151
  if (databaseType === 'BigQuery') {
150
- const dateColumn = (0, textProcessing_1.snakeCaseToTitleCase)(node.left.column);
152
+ const dateColumn = (0, textProcessing_1.snakeCaseToTitleCase)(node.left.column || node.left.args.value[0].columns || '');
151
153
  const amount = node.right.args.value[1].expr.value;
152
154
  let unit = node.right.args.value[1].unit.toLowerCase();
153
155
  if (unit.includes('*')) {
@@ -167,70 +169,92 @@ function getInThePreviousIntervalSentence(node, databaseType) {
167
169
  return null;
168
170
  }
169
171
  exports.getInThePreviousIntervalSentence = getInThePreviousIntervalSentence;
172
+ function getIsEqualsSentence(node, databaseType) {
173
+ if (databaseType === 'BigQuery') {
174
+ const dateColumn = (0, textProcessing_1.snakeCaseToTitleCase)(node.left.args.value[1].column);
175
+ const type = node.right.args.value[1].column.toLowerCase();
176
+ const value = node.right.args.value[0].value;
177
+ // using date-fns can I parse the date to short month year
178
+ const date = new Date(value);
179
+ if (type === 'year') {
180
+ return `${dateColumn} is in ${(0, date_fns_1.format)((0, date_fns_1.addMinutes)(date, date.getTimezoneOffset()), 'yyyy')}`;
181
+ }
182
+ else if (type === 'month') {
183
+ return `${dateColumn} is in ${(0, date_fns_1.format)((0, date_fns_1.addMinutes)(date, date.getTimezoneOffset()), 'MMM yyyy')}`;
184
+ }
185
+ else if (type === 'quarter') {
186
+ return `${dateColumn} is in ${(0, date_fns_1.format)((0, date_fns_1.addMinutes)(date, date.getTimezoneOffset()), 'QQQ yyyy')}`;
187
+ }
188
+ return `${dateColumn} is in the ${type} of ${value}`;
189
+ }
190
+ return null;
191
+ }
192
+ exports.getIsEqualsSentence = getIsEqualsSentence;
193
+ function getIsAfterSentence(node, databaseType) {
194
+ if (databaseType === 'BigQuery') {
195
+ const dateColumn = (0, textProcessing_1.snakeCaseToTitleCase)(node.left?.column || node.left?.args?.value[0]?.columns || '');
196
+ const value = node.right?.value || node.right?.args?.value[0]?.value || '';
197
+ if (!dateColumn || !value) {
198
+ return null;
199
+ }
200
+ return `${dateColumn} is after ${value}`;
201
+ }
202
+ return null;
203
+ }
204
+ exports.getIsAfterSentence = getIsAfterSentence;
205
+ function getIsBeforeSentence(node, databaseType) {
206
+ if (databaseType === 'BigQuery') {
207
+ const dateColumn = (0, textProcessing_1.snakeCaseToTitleCase)(node.left?.column || node.left?.args?.value[0]?.columns || '');
208
+ const value = node.right?.value || node.right?.args?.value[0]?.value || '';
209
+ if (!dateColumn || !value) {
210
+ return null;
211
+ }
212
+ return `${dateColumn} is before ${value}`;
213
+ }
214
+ return null;
215
+ }
216
+ exports.getIsBeforeSentence = getIsBeforeSentence;
170
217
  // "created_at" >= date_trunc ('year', CURRENT_DATE) - INTERVAL '1 year'
171
218
  // or
172
219
  // "created_at" >= CURRENT_DATE - INTERVAL '1 year'
173
220
  // in the last year aka one interval from today
174
221
  const isInTheLastInterval = (node, databaseType) => {
175
222
  if (databaseType && databaseType.toLowerCase() === 'bigquery') {
176
- return (0, exports.isInTheLastIntervalBigQuery)(node);
223
+ return (0, parserBigQuery_1.isInTheLastIntervalBigQuery)(node);
177
224
  }
178
- const isOutsideOfDateTrunc = ['>=', '>'].includes(node.operator) &&
179
- node.left.type === 'column_ref' &&
180
- node.right.type === 'binary_expr' &&
181
- node.right.operator === '-' &&
182
- node.right.left.type === 'function' &&
183
- node.right.left.name.toLowerCase() === 'date_trunc' &&
184
- node.right.left.args.value[0].type === 'single_quote_string' &&
185
- node.right.left.args.value[1].type === 'function' &&
186
- ['current_date', 'now'].includes(node.right.left.args.value[1].name.toLowerCase()) &&
187
- node.right.right.type.toLowerCase() === 'interval' &&
188
- node.right.right.expr.type === 'single_quote_string';
189
- const noDateTrunc = ['>=', '>'].includes(node.operator) &&
190
- node.left.type === 'column_ref' &&
191
- node.right.type === 'binary_expr' &&
192
- node.right.operator === '-' &&
193
- node.right.left.type === 'function' &&
194
- ['current_date', 'now'].includes(node.right.left.name.toLowerCase()) &&
195
- node.right.right.type.toLowerCase() === 'interval' &&
196
- node.right.right.expr.type === 'single_quote_string';
197
- return isOutsideOfDateTrunc || noDateTrunc;
225
+ return (0, parserPostgres_1.isInTheLastIntervalPostgres)(node);
198
226
  };
199
227
  exports.isInTheLastInterval = isInTheLastInterval;
200
- // created_at >= DATE_SUB(CURRENT_DATE(), INTERVAL 1 MONTH)
201
- // in the last month aka one interval from today
202
- const isInTheLastIntervalBigQuery = (node) => {
203
- const isOutsideOfDateTrunc = ['>=', '>'].includes(node.operator) &&
204
- node.left.type === 'column_ref' &&
205
- node.right.type === 'function' &&
206
- node.right.name.toLowerCase() === 'timestamp_sub' &&
207
- node.right.args.value[0].type === 'function' &&
208
- node.right.args.value[1].type === 'interval' &&
209
- ['current_timestamp'].includes(node.right.args.value[0].name.toLowerCase());
210
- return isOutsideOfDateTrunc;
228
+ const isAfter = (node, databaseType) => {
229
+ if (databaseType && databaseType.toLowerCase() === 'bigquery') {
230
+ return (0, parserBigQuery_1.isAfterBigQuery)(node);
231
+ }
211
232
  };
212
- exports.isInTheLastIntervalBigQuery = isInTheLastIntervalBigQuery;
233
+ exports.isAfter = isAfter;
234
+ const isBefore = (node, databaseType) => {
235
+ if (databaseType && databaseType.toLowerCase() === 'bigquery') {
236
+ return (0, parserBigQuery_1.isBeforeBigQuery)(node);
237
+ }
238
+ };
239
+ exports.isBefore = isBefore;
213
240
  // "created_at" >= date_trunc ('year', CURRENT_DATE - INTERVAL '1 year')
214
241
  // this year
215
242
  const isTheCurrentInterval = (node, databaseType) => {
216
243
  if (databaseType && databaseType.toLowerCase() === 'bigquery') {
217
- return (0, exports.isTheCurrentIntervalBigQuery)(node);
244
+ return (0, parserBigQuery_1.isTheCurrentIntervalBigQuery)(node);
218
245
  }
219
- const isInsideOfDateTrunc = ['AND'].includes(node.operator) &&
220
- (node.left.operator === '=' || node.left.type === 'double_quote_string') &&
221
- node.right.operator === '=' &&
222
- node.right.name &&
223
- node.right.name.toLowerCase() === 'date_trunc' &&
224
- node.args.value[0].type === 'single_quote_string' &&
225
- node.args.value[1].type === 'binary_expr' &&
226
- node.args.value[1].operator === '-' &&
227
- node.args.value[1].left.type === 'function' &&
228
- ['now', 'current_date'].includes(node.args.value[1].left.name.toLowerCase()) &&
229
- node.args.value[1].right.type === 'interval' &&
230
- node.args.value[1].right.expr.type === 'single_quote_string';
231
- return isInsideOfDateTrunc;
246
+ return (0, parserPostgres_1.isTheCurrentIntervalPostgres)(node);
232
247
  };
233
248
  exports.isTheCurrentInterval = isTheCurrentInterval;
249
+ // "created_at" >= date_trunc ('year', CURRENT_DATE - INTERVAL '1 year')
250
+ // this year
251
+ const isEquals = (node, databaseType) => {
252
+ if (databaseType && databaseType.toLowerCase() === 'bigquery') {
253
+ return (0, parserBigQuery_1.isEqualsBigQuery)(node);
254
+ }
255
+ return false;
256
+ };
257
+ exports.isEquals = isEquals;
234
258
  const isThePreviousInterval = (node, databaseType) => {
235
259
  const isInsideOfDateTrunc = ['='].includes(node.operator) &&
236
260
  node.left.name &&
@@ -238,23 +262,12 @@ const isThePreviousInterval = (node, databaseType) => {
238
262
  node.left.type === 'function' &&
239
263
  node.right.name &&
240
264
  node.right.name.toLowerCase() === 'timestamp_trunc' &&
241
- node.right.args.value[0].name.toLowerCase() === 'timestamp_sub' &&
265
+ node.right.args.value[0]?.name?.toLowerCase() === 'timestamp_sub' &&
242
266
  node.right.args.value[0].args.value[0].name.toLowerCase() ===
243
267
  'current_timestamp';
244
268
  return isInsideOfDateTrunc;
245
269
  };
246
270
  exports.isThePreviousInterval = isThePreviousInterval;
247
- const isTheCurrentIntervalBigQuery = (node) => {
248
- const isInsideOfDateTrunc = ['='].includes(node.operator) &&
249
- node.left.type === 'function' &&
250
- node.left.name &&
251
- node.left.name.toLowerCase() === 'timestamp_trunc' &&
252
- node.right.type === 'function' &&
253
- node.right.name.toLowerCase() === 'timestamp_trunc' &&
254
- node.right.args.value[0].name.toLowerCase() === 'current_timestamp';
255
- return isInsideOfDateTrunc;
256
- };
257
- exports.isTheCurrentIntervalBigQuery = isTheCurrentIntervalBigQuery;
258
271
  /**
259
272
  * Returns whether this node is the root of a binary expression
260
273
  * where the left child is a string but really should be
@@ -379,7 +392,7 @@ function extractSuffixToString(node) {
379
392
  }
380
393
  exports.extractSuffixToString = extractSuffixToString;
381
394
  function tryConvertDateEquality(node, databaseType) {
382
- if ((0, exports.isDateTruncEquals)(node)) {
395
+ if ((0, exports.isDateTruncEquals)(node, databaseType)) {
383
396
  const columnNode = node.left.args.value[1];
384
397
  const columnName = columnNode.column ?? columnNode.value;
385
398
  const cleanColumnName = (0, textProcessing_1.snakeCaseToTitleCase)(columnName.replaceAll('_at', ''));
@@ -400,7 +413,7 @@ exports.tryConvertDateEquality = tryConvertDateEquality;
400
413
  * Returns whether this node is an equality of a date column with a
401
414
  * date trunc.
402
415
  */
403
- const isDateTruncEquals = (node) => {
416
+ const isDateTruncEquals = (node, databaseType) => {
404
417
  return (node.type === 'binary_expr' &&
405
418
  node.operator === '=' &&
406
419
  (0, exports.isDateTrunc)(node.left) &&
@@ -662,12 +675,21 @@ function getNodeTable(node) {
662
675
  function removeNonSelectedTableFilters(node, table, columns) {
663
676
  if (node.left.type !== 'binary_expr') {
664
677
  const referencedTable = getNodeTable(node.left);
665
- const referencedColumn = node.left.column || node.left.value;
678
+ const referencedColumn = node.left.column ||
679
+ node.left.value ||
680
+ node.left.args?.value[0]?.column ||
681
+ node.left.args?.value[0]?.value;
666
682
  if ((referencedTable && referencedTable !== table) ||
667
683
  !columns.includes(referencedColumn)) {
668
684
  return null;
669
685
  }
670
686
  else {
687
+ if (node.left.value) {
688
+ node.left.column = node.left.value;
689
+ }
690
+ else if (node.left.args?.value[0].value) {
691
+ node.left.args.value[0].column = node.left.args.value[0].value;
692
+ }
671
693
  return node;
672
694
  }
673
695
  }
@@ -721,3 +743,27 @@ function isIdColumn(columnName) {
721
743
  columnName.endsWith('Id')));
722
744
  }
723
745
  exports.isIdColumn = isIdColumn;
746
+ // This function determines if a node is a custom node type.
747
+ // This will parse out date filters and some numeric filters that are unique (between).
748
+ function getCustomSentence(node, databaseType) {
749
+ if ((0, exports.isTheCurrentInterval)(node, databaseType)) {
750
+ return getInTheCurrentIntervalSentence(node, databaseType);
751
+ }
752
+ else if ((0, exports.isInTheLastInterval)(node, databaseType)) {
753
+ return getInTheLastIntervalSentence(node, databaseType);
754
+ }
755
+ else if ((0, exports.isAfter)(node, databaseType)) {
756
+ return getIsAfterSentence(node, databaseType);
757
+ }
758
+ else if ((0, exports.isBefore)(node, databaseType)) {
759
+ return getIsBeforeSentence(node, databaseType);
760
+ }
761
+ else if ((0, exports.isThePreviousInterval)(node, databaseType)) {
762
+ return getInThePreviousIntervalSentence(node, databaseType);
763
+ }
764
+ else if ((0, exports.isEquals)(node, databaseType)) {
765
+ return getIsEqualsSentence(node, databaseType);
766
+ }
767
+ return null;
768
+ }
769
+ exports.getCustomSentence = getCustomSentence;
@@ -133,11 +133,5 @@ export interface TableComponentProps {
133
133
  isLoading?: boolean;
134
134
  }
135
135
  export declare const QuillTableComponent: ({ rows, columns, isLoading, }: TableComponentProps) => import("react/jsx-runtime").JSX.Element;
136
- export declare const QuillDropdownComponent: ({ onChange, value, label, options, }: {
137
- onChange: (event: ChangeEvent<HTMLSelectElement>) => void;
138
- value: string;
139
- options: Option[];
140
- label?: string | undefined;
141
- }) => import("react/jsx-runtime").JSX.Element;
142
136
  export declare const QuillEmptyDashboardComponent: () => import("react/jsx-runtime").JSX.Element;
143
137
  //# sourceMappingURL=UiComponents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/UiComponents.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/UiComponents.tsx"],"names":[],"mappings":"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"}