@quillsql/react 2.11.16 → 2.11.18

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 (229) hide show
  1. package/dist/cjs/Chart.d.ts +109 -42
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +44 -18
  4. package/dist/cjs/ChartBuilder.d.ts +204 -30
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +124 -63
  7. package/dist/cjs/ChartEditor.d.ts +123 -19
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +47 -15
  10. package/dist/cjs/Dashboard.d.ts +148 -91
  11. package/dist/cjs/Dashboard.d.ts.map +1 -1
  12. package/dist/cjs/Dashboard.js +51 -159
  13. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts +21 -1
  14. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  15. package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +5 -2
  16. package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +1 -1
  17. package/dist/cjs/QuillProvider.d.ts +105 -2
  18. package/dist/cjs/QuillProvider.d.ts.map +1 -1
  19. package/dist/cjs/QuillProvider.js +59 -0
  20. package/dist/cjs/ReportBuilder.d.ts +194 -42
  21. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  22. package/dist/cjs/ReportBuilder.js +563 -416
  23. package/dist/cjs/SQLEditor.d.ts +160 -23
  24. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  25. package/dist/cjs/SQLEditor.js +36 -30
  26. package/dist/cjs/Table.d.ts +119 -15
  27. package/dist/cjs/Table.d.ts.map +1 -1
  28. package/dist/cjs/Table.js +37 -6
  29. package/dist/cjs/TableChart.d.ts.map +1 -1
  30. package/dist/cjs/TableChart.js +0 -194
  31. package/dist/cjs/{BarList.d.ts → components/Chart/BarList.d.ts} +1 -1
  32. package/dist/cjs/components/Chart/BarList.d.ts.map +1 -0
  33. package/dist/cjs/{BarList.js → components/Chart/BarList.js} +1 -1
  34. package/dist/cjs/components/Chart/LineChart.d.ts +2 -3
  35. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  36. package/dist/cjs/components/Chart/LineChart.js +3 -3
  37. package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -0
  38. package/dist/cjs/{PieChart.js → components/Chart/PieChart.js} +1 -1
  39. package/dist/cjs/components/Dashboard/ChartComponent.d.ts +2 -1
  40. package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
  41. package/dist/cjs/components/Dashboard/ChartComponent.js +6 -7
  42. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +22 -0
  43. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -0
  44. package/dist/cjs/components/Dashboard/DashboardFilter.js +75 -0
  45. package/dist/cjs/components/Dashboard/DataLoader.d.ts +1 -1
  46. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  47. package/dist/cjs/components/Dashboard/DataLoader.js +1 -1
  48. package/dist/cjs/components/Dashboard/MetricComponent.d.ts +2 -12
  49. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  50. package/dist/cjs/components/Dashboard/MetricComponent.js +39 -17
  51. package/dist/cjs/components/Dashboard/TableComponent.d.ts +2 -1
  52. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  53. package/dist/cjs/components/Dashboard/TableComponent.js +6 -9
  54. package/dist/cjs/components/QuillCard.d.ts +2 -7
  55. package/dist/cjs/components/QuillCard.d.ts.map +1 -1
  56. package/dist/cjs/components/QuillCard.js +15 -9
  57. package/dist/cjs/components/QuillSelect.d.ts +4 -1
  58. package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
  59. package/dist/cjs/components/QuillSelect.js +13 -8
  60. package/dist/cjs/components/QuillTable.d.ts +16 -2
  61. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  62. package/dist/cjs/components/QuillTable.js +4 -4
  63. package/dist/cjs/components/ReportBuilder/AddColumnPopover.d.ts +9 -3
  64. package/dist/cjs/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
  65. package/dist/cjs/components/ReportBuilder/AddColumnPopover.js +10 -6
  66. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts +13 -1
  67. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  68. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +5 -15
  69. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts +21 -1
  70. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  71. package/dist/cjs/components/ReportBuilder/AddSortPopover.js +15 -17
  72. package/dist/cjs/components/ReportBuilder/bigDateMap.js +1 -1
  73. package/dist/cjs/components/ReportBuilder/convert.d.ts +3 -1
  74. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  75. package/dist/cjs/components/ReportBuilder/convert.js +60 -21
  76. package/dist/cjs/components/ReportBuilder/operators.d.ts +15 -10
  77. package/dist/cjs/components/ReportBuilder/operators.d.ts.map +1 -1
  78. package/dist/cjs/components/ReportBuilder/operators.js +23 -10
  79. package/dist/cjs/components/ReportBuilder/pivot.d.ts +2 -1
  80. package/dist/cjs/components/ReportBuilder/pivot.d.ts.map +1 -1
  81. package/dist/cjs/components/ReportBuilder/ui.d.ts +82 -18
  82. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  83. package/dist/cjs/components/ReportBuilder/ui.js +55 -103
  84. package/dist/cjs/components/ReportBuilder/util.d.ts +10 -4
  85. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  86. package/dist/cjs/components/ReportBuilder/util.js +124 -71
  87. package/dist/cjs/components/UiComponents.d.ts +81 -87
  88. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  89. package/dist/cjs/components/UiComponents.js +76 -103
  90. package/dist/cjs/hooks/index.d.ts +1 -0
  91. package/dist/cjs/hooks/index.d.ts.map +1 -1
  92. package/dist/cjs/hooks/index.js +3 -1
  93. package/dist/cjs/hooks/useTheme.d.ts +7 -0
  94. package/dist/cjs/hooks/useTheme.d.ts.map +1 -0
  95. package/dist/cjs/hooks/useTheme.js +12 -0
  96. package/dist/cjs/index.d.ts +10 -2
  97. package/dist/cjs/index.d.ts.map +1 -1
  98. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts +5 -2
  99. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  100. package/dist/cjs/internals/ReportBuilder/PivotList.js +21 -21
  101. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +30 -14
  102. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  103. package/dist/cjs/internals/ReportBuilder/PivotModal.js +77 -52
  104. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  105. package/dist/cjs/utils/dataFetcher.js +2 -0
  106. package/dist/cjs/utils/parserBigQuery.d.ts +6 -0
  107. package/dist/cjs/utils/parserBigQuery.d.ts.map +1 -0
  108. package/dist/cjs/utils/parserBigQuery.js +60 -0
  109. package/dist/cjs/utils/parserPostgres.d.ts +3 -0
  110. package/dist/cjs/utils/parserPostgres.d.ts.map +1 -0
  111. package/dist/cjs/utils/parserPostgres.js +42 -0
  112. package/dist/esm/Chart.d.ts +109 -42
  113. package/dist/esm/Chart.d.ts.map +1 -1
  114. package/dist/esm/Chart.js +45 -19
  115. package/dist/esm/ChartBuilder.d.ts +204 -30
  116. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  117. package/dist/esm/ChartBuilder.js +124 -63
  118. package/dist/esm/ChartEditor.d.ts +123 -19
  119. package/dist/esm/ChartEditor.d.ts.map +1 -1
  120. package/dist/esm/ChartEditor.js +51 -19
  121. package/dist/esm/Dashboard.d.ts +148 -91
  122. package/dist/esm/Dashboard.d.ts.map +1 -1
  123. package/dist/esm/Dashboard.js +54 -160
  124. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts +21 -1
  125. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  126. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +6 -3
  127. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +1 -1
  128. package/dist/esm/QuillProvider.d.ts +105 -2
  129. package/dist/esm/QuillProvider.d.ts.map +1 -1
  130. package/dist/esm/QuillProvider.js +59 -0
  131. package/dist/esm/ReportBuilder.d.ts +194 -42
  132. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  133. package/dist/esm/ReportBuilder.js +566 -419
  134. package/dist/esm/SQLEditor.d.ts +160 -23
  135. package/dist/esm/SQLEditor.d.ts.map +1 -1
  136. package/dist/esm/SQLEditor.js +36 -30
  137. package/dist/esm/Table.d.ts +119 -15
  138. package/dist/esm/Table.d.ts.map +1 -1
  139. package/dist/esm/Table.js +38 -7
  140. package/dist/esm/TableChart.d.ts.map +1 -1
  141. package/dist/esm/TableChart.js +0 -194
  142. package/dist/esm/{BarList.d.ts → components/Chart/BarList.d.ts} +1 -1
  143. package/dist/esm/components/Chart/BarList.d.ts.map +1 -0
  144. package/dist/esm/{BarList.js → components/Chart/BarList.js} +1 -1
  145. package/dist/esm/components/Chart/LineChart.d.ts +2 -3
  146. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  147. package/dist/esm/components/Chart/LineChart.js +3 -3
  148. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -0
  149. package/dist/esm/{PieChart.js → components/Chart/PieChart.js} +1 -1
  150. package/dist/esm/components/Dashboard/ChartComponent.d.ts +2 -1
  151. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
  152. package/dist/esm/components/Dashboard/ChartComponent.js +5 -6
  153. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +22 -0
  154. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -0
  155. package/dist/esm/components/Dashboard/DashboardFilter.js +71 -0
  156. package/dist/esm/components/Dashboard/DataLoader.d.ts +1 -1
  157. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  158. package/dist/esm/components/Dashboard/DataLoader.js +1 -1
  159. package/dist/esm/components/Dashboard/MetricComponent.d.ts +2 -12
  160. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  161. package/dist/esm/components/Dashboard/MetricComponent.js +39 -17
  162. package/dist/esm/components/Dashboard/TableComponent.d.ts +2 -1
  163. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  164. package/dist/esm/components/Dashboard/TableComponent.js +6 -9
  165. package/dist/esm/components/QuillCard.d.ts +2 -7
  166. package/dist/esm/components/QuillCard.d.ts.map +1 -1
  167. package/dist/esm/components/QuillCard.js +15 -9
  168. package/dist/esm/components/QuillSelect.d.ts +4 -1
  169. package/dist/esm/components/QuillSelect.d.ts.map +1 -1
  170. package/dist/esm/components/QuillSelect.js +14 -9
  171. package/dist/esm/components/QuillTable.d.ts +16 -2
  172. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  173. package/dist/esm/components/QuillTable.js +4 -4
  174. package/dist/esm/components/ReportBuilder/AddColumnPopover.d.ts +9 -3
  175. package/dist/esm/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
  176. package/dist/esm/components/ReportBuilder/AddColumnPopover.js +10 -6
  177. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts +13 -1
  178. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  179. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +5 -15
  180. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts +21 -1
  181. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  182. package/dist/esm/components/ReportBuilder/AddSortPopover.js +17 -19
  183. package/dist/esm/components/ReportBuilder/bigDateMap.js +1 -1
  184. package/dist/esm/components/ReportBuilder/convert.d.ts +3 -1
  185. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  186. package/dist/esm/components/ReportBuilder/convert.js +51 -13
  187. package/dist/esm/components/ReportBuilder/operators.d.ts +15 -10
  188. package/dist/esm/components/ReportBuilder/operators.d.ts.map +1 -1
  189. package/dist/esm/components/ReportBuilder/operators.js +23 -10
  190. package/dist/esm/components/ReportBuilder/pivot.d.ts +2 -1
  191. package/dist/esm/components/ReportBuilder/pivot.d.ts.map +1 -1
  192. package/dist/esm/components/ReportBuilder/ui.d.ts +82 -18
  193. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  194. package/dist/esm/components/ReportBuilder/ui.js +53 -101
  195. package/dist/esm/components/ReportBuilder/util.d.ts +10 -4
  196. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  197. package/dist/esm/components/ReportBuilder/util.js +114 -67
  198. package/dist/esm/components/UiComponents.d.ts +81 -87
  199. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  200. package/dist/esm/components/UiComponents.js +71 -102
  201. package/dist/esm/hooks/index.d.ts +1 -0
  202. package/dist/esm/hooks/index.d.ts.map +1 -1
  203. package/dist/esm/hooks/index.js +1 -0
  204. package/dist/esm/hooks/useTheme.d.ts +7 -0
  205. package/dist/esm/hooks/useTheme.d.ts.map +1 -0
  206. package/dist/esm/hooks/useTheme.js +10 -0
  207. package/dist/esm/index.d.ts +10 -2
  208. package/dist/esm/index.d.ts.map +1 -1
  209. package/dist/esm/internals/ReportBuilder/PivotList.d.ts +5 -2
  210. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  211. package/dist/esm/internals/ReportBuilder/PivotList.js +21 -21
  212. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +30 -14
  213. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  214. package/dist/esm/internals/ReportBuilder/PivotModal.js +77 -52
  215. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  216. package/dist/esm/utils/dataFetcher.js +2 -0
  217. package/dist/esm/utils/parserBigQuery.d.ts +6 -0
  218. package/dist/esm/utils/parserBigQuery.d.ts.map +1 -0
  219. package/dist/esm/utils/parserBigQuery.js +52 -0
  220. package/dist/esm/utils/parserPostgres.d.ts +3 -0
  221. package/dist/esm/utils/parserPostgres.d.ts.map +1 -0
  222. package/dist/esm/utils/parserPostgres.js +37 -0
  223. package/package.json +1 -1
  224. package/dist/cjs/BarList.d.ts.map +0 -1
  225. package/dist/cjs/PieChart.d.ts.map +0 -1
  226. package/dist/esm/BarList.d.ts.map +0 -1
  227. package/dist/esm/PieChart.d.ts.map +0 -1
  228. /package/dist/cjs/{PieChart.d.ts → components/Chart/PieChart.d.ts} +0 -0
  229. /package/dist/esm/{PieChart.d.ts → components/Chart/PieChart.d.ts} +0 -0
@@ -1,15 +1,22 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState, useContext } from 'react';
2
+ import { useState } from 'react';
3
3
  import { QuillSelectComponent } from '../QuillSelect';
4
- import { MemoizedButton, MemoizedSecondaryButton } from '../UiComponents';
5
- import { ThemeContext } from '../../Context';
4
+ import { MemoizedButton, MemoizedSecondaryButton, } from '../UiComponents';
6
5
  import { snakeCaseToTitleCase } from '../../utils/textProcessing';
7
6
  const SORT_VALUE_TO_LABEL = {
8
7
  ASC: 'ascending',
9
8
  DESC: 'descending',
10
9
  };
11
- export const SortSentence = ({ sortData, keyPrefix, columns, handleDelete, setEditPopoverKey, setOpenPopover, setActiveEditItem, setIsPending, setActivePath, onSave, popoverTitle = 'Edit Sort', SortPopover, EditPopover, Select = QuillSelectComponent, Button = MemoizedButton, SecondaryButton = MemoizedSecondaryButton, children, }) => {
10
+ export const SortSentence = ({ sortData, keyPrefix, columns, handleDelete, setEditPopoverKey, setOpenPopover, setActiveEditItem, setIsPending, setActivePath, onSave, popoverTitle = 'Edit Sort', SortPopover, EditPopover, Select = QuillSelectComponent, Button = MemoizedButton, SecondaryButton = MemoizedSecondaryButton, }) => {
12
11
  const [isOpen, setIsOpen] = useState(false);
12
+ const handleSetIsOpen = (isOpen) => {
13
+ setIsOpen(isOpen);
14
+ if (!isOpen) {
15
+ setIsPending(false);
16
+ setActiveEditItem(null);
17
+ setActivePath(null);
18
+ }
19
+ };
13
20
  const handleClickDelete = (e) => {
14
21
  e.stopPropagation(); // don't call onClick handler
15
22
  setIsPending(false);
@@ -21,37 +28,28 @@ export const SortSentence = ({ sortData, keyPrefix, columns, handleDelete, setEd
21
28
  if (!sortData && (!sortData.expr.column || !sortData.expr.value)) {
22
29
  return null;
23
30
  }
24
- return (_jsx("div", { children: _jsx(SortPopover
25
- // @ts-ignore
26
- , {
27
- // @ts-ignore
28
- filterLabel: `${snakeCaseToTitleCase(sortData.expr.column) || snakeCaseToTitleCase(sortData.expr.value)} ${SORT_VALUE_TO_LABEL[sortData.type]}`, onClickDelete: handleClickDelete, popoverTitle: popoverTitle, popoverChildren: _jsx(EditPopover, { onSave: (column, direction) => {
31
+ return (_jsx("div", { children: _jsx(SortPopover, { isOpen: isOpen, setIsOpen: handleSetIsOpen, sortLabel: `${snakeCaseToTitleCase(sortData.expr.column) || snakeCaseToTitleCase(sortData.expr.value)} ${SORT_VALUE_TO_LABEL[sortData.type]}`, onClickDelete: handleClickDelete, popoverTitle: popoverTitle, popoverChildren: _jsx(EditPopover, { onSave: (column, direction) => {
29
32
  setIsOpen(false);
30
33
  onSave(column, direction);
31
- }, columns: columns, isEdit: true, onDelete: handleClickDelete, column: sortData.expr.column || sortData.expr.value, Select: Select, Button: Button, SecondaryButton: SecondaryButton }), isOpen: isOpen, setIsOpen: setIsOpen, onDelete: () => {
32
- setIsPending(false);
33
- setActiveEditItem(null);
34
- setActivePath(null);
35
- } }) }));
34
+ }, columns: columns, isEdit: true, onDelete: handleClickDelete, column: sortData.expr.column || sortData.expr.value, Select: Select, Button: Button, SecondaryButton: SecondaryButton }) }) }));
36
35
  };
37
36
  export const AddSortPopover = ({ onSave, columns, isEdit, onDelete, column, Select = QuillSelectComponent, Button = MemoizedButton, SecondaryButton = MemoizedSecondaryButton, }) => {
38
37
  const [sortColumn, setSortColumn] = useState(column || '');
39
38
  const [sortDirection, setSortDirection] = useState('ASC');
40
- const [theme] = useContext(ThemeContext);
41
39
  return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 12 }, children: [_jsxs("div", { style: {
42
40
  display: 'flex',
43
41
  flexDirection: 'row',
44
42
  gap: 12,
45
43
  padding: '6px 0px',
46
- }, children: [_jsx(Select, { theme: theme, value: sortColumn, onChange: (value) => {
47
- setSortColumn(value);
44
+ }, children: [_jsx(Select, { value: sortColumn, onChange: (e) => {
45
+ setSortColumn(e.target.value);
48
46
  }, options: [
49
47
  ...columns.map((column) => ({
50
48
  label: snakeCaseToTitleCase(column.split('.')[1] || ''),
51
49
  value: column.split('.')[1],
52
50
  })),
53
- ] }), _jsx(Select, { theme: theme, value: sortDirection, onChange: (value) => {
54
- setSortDirection(value);
51
+ ] }), _jsx(Select, { value: sortDirection, onChange: (e) => {
52
+ setSortDirection(e.target.value);
55
53
  }, options: [
56
54
  { label: 'Ascending', value: 'ASC' },
57
55
  { label: 'Descending', value: 'DESC' },
@@ -248,7 +248,7 @@ export const DATE_DESCRIPTION_MAP = {
248
248
  },
249
249
  },
250
250
  },
251
- })]: (node) => `${cleanDateFieldName(node.left.args.value[1].column)} in the last ${node.right.right.expr.value.toLowerCase()}`,
251
+ })]: (node) => `${cleanDateFieldName(node.left.args.value[1].column)} in the previous ${node.right.right.expr.value.toLowerCase()}`,
252
252
  [JSON.stringify({
253
253
  type: 'binary_expr',
254
254
  left: {
@@ -3,6 +3,7 @@ import { Pivot } from './pivot';
3
3
  import { TableInfo } from './schema';
4
4
  export declare function convertDateComparison(node: NSP.Select): NSP.Select;
5
5
  export declare function recursiveSearchAndReplace(node: any, search: string, replace: string): void;
6
+ export declare function recursiveSearchAndReplaceByKey(node: any, search: string, replace: string, searchKey: string): void;
6
7
  /**
7
8
  * Takes a bigquery AST as input, cleans it, and returns a Select AST.
8
9
  */
@@ -20,8 +21,9 @@ export declare function convertGroupBy(ast: AST, prevPivot: Pivot | undefined, s
20
21
  pivot: Pivot;
21
22
  } | {
22
23
  pivot: Partial<{
23
- aggregationType: "sum" | "average" | "count" | "min" | "max";
24
+ aggregationType: "sum" | "average" | "count" | "min" | "max" | "avg";
24
25
  valueField: string;
26
+ valueFieldType?: string | undefined;
25
27
  rowField?: string | undefined;
26
28
  rowFieldType?: string | undefined;
27
29
  columnField?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/convert.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,IAAI,GAAG,EACpB,GAAG,EAMJ,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAc,SAAS,EAAE,MAAM,UAAU,CAAC;AASjD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAuBlE;AAGD,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,QAahB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAuCpD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,GAAG,CAAC,MAAM,EACf,YAAY,EAAE,SAAS,EAAE,GACxB,GAAG,CAAC,MAAM,CAwBZ;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,GAAG,EACR,SAAS,mBAAc,EACvB,YAAY,EAAE,SAAS,EAAE;;;;;;;;;;;;;;EA8b1B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG;;;EA6G5D;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,OAyJtE;AAID,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAY1E"}
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/convert.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,IAAI,GAAG,EACpB,GAAG,EAMJ,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAc,SAAS,EAAE,MAAM,UAAU,CAAC;AASjD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAuBlE;AAGD,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,QAahB;AAGD,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,QAalB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CA2CpD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,GAAG,CAAC,MAAM,EACf,YAAY,EAAE,SAAS,EAAE,GACxB,GAAG,CAAC,MAAM,CAwBZ;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,GAAG,EACR,SAAS,mBAAc,EACvB,YAAY,EAAE,SAAS,EAAE;;;;;;;;;;;;;;;EAwd1B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG;;;EA6G5D;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,OAyJtE;AAID,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAY1E"}
@@ -1,5 +1,5 @@
1
1
  import { extractColumnish, isSelect, isLogicalBinaryExpr, isBigQuery, isNumericColumnType, } from './ast';
2
- import { generateColumnExpr, isColumnDateish } from './util';
2
+ import { generateColumnExpr, isColumnDateish, isIdColumn } from './util';
3
3
  // Helper functions that preprocess the AST.
4
4
  // Find and replace certain pre-set date comparison queries with their
5
5
  // more stable counterparts.
@@ -44,6 +44,20 @@ export function recursiveSearchAndReplace(node, search, replace) {
44
44
  });
45
45
  }
46
46
  }
47
+ // THIS IS USED TO REPLACE UNITS IN INTERVALS FOR BIGQUERY
48
+ export function recursiveSearchAndReplaceByKey(node, search, replace, searchKey) {
49
+ if (typeof node !== 'object') {
50
+ return;
51
+ }
52
+ if (node) {
53
+ Object.keys(node).forEach((key) => {
54
+ recursiveSearchAndReplaceByKey(node[key], search, replace, searchKey);
55
+ if (searchKey === key && node[key] === search) {
56
+ node[key] = replace;
57
+ }
58
+ });
59
+ }
60
+ }
47
61
  /**
48
62
  * Takes a bigquery AST as input, cleans it, and returns a Select AST.
49
63
  */
@@ -66,6 +80,10 @@ export function convertBigQuery(ast) {
66
80
  recursiveSearchAndReplace(newAst.where, 'CURRENT_DATE', 'CURRENT_TIMESTAMP');
67
81
  recursiveSearchAndReplace(newAst.where, 'DATE_TRUNC', 'TIMESTAMP_TRUNC');
68
82
  recursiveSearchAndReplace(newAst.where, 'DATE', 'TIMESTAMP');
83
+ // JANK: If anyone is here this is how you have to do intervals in BigQuery no joke
84
+ recursiveSearchAndReplaceByKey(newAst.where, 'year', '* 365 DAY', 'unit');
85
+ recursiveSearchAndReplaceByKey(newAst.where, 'week', '* 7 DAY', 'unit');
86
+ recursiveSearchAndReplaceByKey(newAst.where, 'month', '* 30 DAY', 'unit');
69
87
  // TODO: handle joins nicely
70
88
  if (newAst.from?.length > 1) {
71
89
  newAst.from = [newAst.from[0]];
@@ -175,6 +193,9 @@ export function convertGroupBy(ast, prevPivot = null, schemaTables) {
175
193
  }
176
194
  if (column.expr.type === 'aggr_func' && !isIdColumn(columnName)) {
177
195
  pivot.aggregationType = column.expr.name.toLowerCase();
196
+ if (pivot.aggregationType === 'avg') {
197
+ pivot.aggregationType = 'average';
198
+ }
178
199
  pivot.valueField =
179
200
  column.expr.args?.expr?.value || column.expr.args?.expr?.column;
180
201
  if (column.expr.args.expr.type === 'column_ref') {
@@ -190,15 +211,23 @@ export function convertGroupBy(ast, prevPivot = null, schemaTables) {
190
211
  }
191
212
  }
192
213
  if (columnName === '*') {
193
- // TODO: make valueField be a number
214
+ // Use the first numeric column found, if none found, use the first column
215
+ let columnForValueField = columns.find((c) => {
216
+ return isNumericColumnType(c.fieldType) && !isIdColumn(c.field);
217
+ });
218
+ if (!columnForValueField) {
219
+ columnForValueField = columns[0];
220
+ }
194
221
  for (let i = 0; i < columns.length; i++) {
195
222
  if (!isIdColumn(columns[i]?.field) &&
196
223
  isNumericColumnType(columns[i]?.fieldType)) {
197
- pivot.valueField = columns[i].field;
198
- columnName = columns[i].field;
224
+ columnForValueField = columns[i];
199
225
  break;
200
226
  }
201
227
  }
228
+ pivot.valueField = columnForValueField.field;
229
+ pivot.valueFieldType = 'number';
230
+ columnName = columnForValueField.field;
202
231
  }
203
232
  newColumns.push({
204
233
  type: 'expr',
@@ -230,6 +259,9 @@ export function convertGroupBy(ast, prevPivot = null, schemaTables) {
230
259
  if (!isIdColumn(columnName)) {
231
260
  pivot.valueField = columnName;
232
261
  pivot.aggregationType = column?.expr?.name?.toLowerCase();
262
+ if (pivot.aggregationType === 'avg') {
263
+ pivot.aggregationType = 'average';
264
+ }
233
265
  }
234
266
  const findByName = (x) => [x.expr?.value, x.expr?.column].includes(columnName);
235
267
  if (!newColumns.find(findByName)) {
@@ -276,19 +308,27 @@ export function convertGroupBy(ast, prevPivot = null, schemaTables) {
276
308
  const columnName = columnNode?.value || columnNode?.column;
277
309
  // if count(*), make the value field an actual column
278
310
  if (columnName === '*') {
279
- const numericColumn = columns.find((c) => {
311
+ let columnForValueField = columns.find((c) => {
280
312
  return isNumericColumnType(c.fieldType) && !isIdColumn(c.field);
281
313
  });
282
- pivot.valueField = numericColumn?.field;
314
+ // if there aren't any numeric columns use the first column
315
+ if (!column) {
316
+ columnForValueField = columns[0];
317
+ }
318
+ pivot.valueField = columnForValueField?.field;
319
+ pivot.valueFieldType = 'number';
283
320
  pivot.aggregationType = column?.expr?.name.toLowerCase();
284
- const findByName = (x) => [x.expr?.value, x.expr?.column].includes(numericColumn.field);
321
+ if (pivot.aggregationType === 'avg') {
322
+ pivot.aggregationType = 'average';
323
+ }
324
+ const findByName = (x) => [x.expr?.value, x.expr?.column].includes(columnForValueField.field);
285
325
  if (!newColumns.find(findByName)) {
286
326
  newColumns.push({
287
327
  type: 'expr',
288
328
  expr: {
289
329
  type: 'column_ref',
290
330
  table: null,
291
- column: numericColumn?.field || '',
331
+ column: columnForValueField?.field || '',
292
332
  },
293
333
  as: null,
294
334
  });
@@ -300,6 +340,9 @@ export function convertGroupBy(ast, prevPivot = null, schemaTables) {
300
340
  !isIdColumn(columnName)) {
301
341
  pivot.valueField = columnName;
302
342
  pivot.aggregationType = column?.expr?.name.toLowerCase();
343
+ if (pivot.aggregationType === 'avg') {
344
+ pivot.aggregationType = 'average';
345
+ }
303
346
  }
304
347
  const findByName = (x) => [x.expr?.value, x.expr?.column].includes(columnName);
305
348
  if (!newColumns.find(findByName)) {
@@ -771,8 +814,3 @@ export function convertRemoveSimpleParentheses(ast) {
771
814
  }
772
815
  return { ...ast, where: node };
773
816
  }
774
- function isIdColumn(columnName) {
775
- return (columnName &&
776
- (columnName.toLowerCase() === 'id' ||
777
- columnName.toLowerCase().endsWith('_id')));
778
- }
@@ -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"}
@@ -21,6 +21,8 @@ export const OPERATOR_GROUPS = {
21
21
  between: 'in_the_last',
22
22
  'IS NOT': 'null_comp',
23
23
  IS: 'null_comp',
24
+ EQUALS: 'equals',
25
+ equals: 'equals',
24
26
  };
25
27
  export const getDefaultOperatorSubtrees = (key, operator, left, right, databaseType) => {
26
28
  let result = DEFAULT_OPERATOR_SUBTREES[key];
@@ -81,7 +83,14 @@ export const getDefaultOperatorSubtrees = (key, operator, left, right, databaseT
81
83
  result.left.column = left;
82
84
  }
83
85
  else if (key === 'equals') {
84
- result.left.args.value[1].column = left;
86
+ if (databaseType === 'BigQuery') {
87
+ result = DEFAULT_BIG_QUERY_OPERATOR_SUBTREES['equals'];
88
+ result.left.args.value[0].column = left;
89
+ result.left.column = left;
90
+ }
91
+ else {
92
+ result.left.args.value[1].column = left;
93
+ }
85
94
  }
86
95
  else if (key === 'date') {
87
96
  result.operator = operator;
@@ -511,38 +520,42 @@ export const DEFAULT_BIG_QUERY_OPERATOR_SUBTREES = {
511
520
  operator: '=',
512
521
  left: {
513
522
  type: 'function',
514
- name: 'date_trunc',
523
+ name: 'timestamp_trunc',
515
524
  args: {
516
525
  type: 'expr_list',
517
526
  value: [
518
527
  {
519
- type: 'single_quote_string',
520
- value: 'month',
528
+ type: 'column_ref',
529
+ table: null,
530
+ column: '',
521
531
  },
522
532
  {
523
533
  type: 'column_ref',
524
534
  table: null,
525
- column: '',
535
+ column: 'YEAR',
526
536
  },
527
537
  ],
528
538
  },
539
+ over: null,
529
540
  },
530
541
  right: {
531
542
  type: 'function',
532
- name: 'date_trunc',
543
+ name: 'timestamp_trunc',
533
544
  args: {
534
545
  type: 'expr_list',
535
546
  value: [
536
- {
537
- type: 'single_quote_string',
538
- value: 'month',
539
- },
540
547
  {
541
548
  type: 'timestamp',
542
549
  value: '2024-01-01',
543
550
  },
551
+ {
552
+ type: 'column_ref',
553
+ table: null,
554
+ column: 'YEAR',
555
+ },
544
556
  ],
545
557
  },
558
+ over: null,
546
559
  },
547
560
  },
548
561
  };
@@ -2,8 +2,9 @@
2
2
  * Represents the metadata of a pivot table.
3
3
  */
4
4
  export type Pivot = {
5
- aggregationType: 'sum' | 'average' | 'min' | 'max' | 'count';
5
+ aggregationType: 'sum' | 'average' | 'min' | 'max' | 'count' | 'avg';
6
6
  valueField: string;
7
+ valueFieldType?: string;
7
8
  rowField?: string;
8
9
  rowFieldType?: string;
9
10
  columnField?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"pivot.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/pivot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,eAAe,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;CAC/B,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"pivot.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/pivot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,eAAe,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;CAC/B,GAAG,IAAI,CAAC"}
@@ -1,4 +1,5 @@
1
- /// <reference types="react" />
1
+ import { ReactNode } from 'react';
2
+ import { SidebarComponentProps, ContainerComponentProps } from '../UiComponents';
2
3
  /**
3
4
  * This file is a collection of basic UI components that conform to the shape
4
5
  * expected by the Report Builder. Where possible, we use our existing
@@ -9,26 +10,89 @@ export declare const QuillButton: ({ children, ...props }: any) => import("react
9
10
  export declare const QuillSecondaryButton: ({ children, ...props }: any) => import("react/jsx-runtime").JSX.Element;
10
11
  export declare const QuillReportBuilderTable: ({ rows, columns, error, ...props }: any) => import("react/jsx-runtime").JSX.Element;
11
12
  export declare const QuillTag: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
12
- export declare const QuillSidebarHeading: ({ label }: any) => import("react/jsx-runtime").JSX.Element;
13
- export declare const QuillSidebarSubHeading: ({ label }: any) => import("react/jsx-runtime").JSX.Element;
14
- export declare const QuillSidebar: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
15
- export declare const CustomContainer: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
16
- export declare const QuillSelect: ({ onChange, ...props }: any) => import("react/jsx-runtime").JSX.Element;
17
- export declare function MemoizedPopover({ onClose, children, style, trigger, isOpen, }: any): import("react/jsx-runtime").JSX.Element;
18
- export declare const QuillPopover: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
13
+ export interface SidebarHeadingComponentProps {
14
+ label: string;
15
+ }
16
+ export declare const QuillSidebarHeading: ({ label, }: SidebarHeadingComponentProps) => import("react/jsx-runtime").JSX.Element;
17
+ export declare const QuillSidebar: ({ children }: SidebarComponentProps) => import("react/jsx-runtime").JSX.Element;
18
+ export declare const CustomContainer: ({ children }: ContainerComponentProps) => import("react/jsx-runtime").JSX.Element;
19
19
  export declare const QuillHandleButton: () => import("react/jsx-runtime").JSX.Element;
20
- export declare const QuillSelectColumn: ({ label, selected, setSelected, children, }: any) => import("react/jsx-runtime").JSX.Element;
21
- export declare const QuillDraggableColumn: ({ label, children, onDelete }: any) => import("react/jsx-runtime").JSX.Element;
20
+ export interface SelectColumnComponentProps {
21
+ label: string;
22
+ isSelected: boolean;
23
+ setSelected: () => void;
24
+ DragHandle: ({ dragIcon }: {
25
+ dragIcon: () => JSX.Element;
26
+ }) => JSX.Element;
27
+ }
28
+ export declare const QuillSelectColumn: ({ label, isSelected, setSelected, DragHandle, }: SelectColumnComponentProps) => import("react/jsx-runtime").JSX.Element;
29
+ /**
30
+ * Props for a draggable card with a grab-handle and a column name.
31
+ */
32
+ export interface DraggableColumnComponentProps {
33
+ label: string;
34
+ onDelete: () => void;
35
+ DragHandle: ({ dragIcon }: {
36
+ dragIcon: () => JSX.Element;
37
+ }) => JSX.Element;
38
+ }
39
+ /**
40
+ * A draggable card with a grab-handle and a column name
41
+ */
42
+ export declare const QuillDraggableColumn: ({ label, onDelete, DragHandle, }: DraggableColumnComponentProps) => import("react/jsx-runtime").JSX.Element;
22
43
  export declare const QuillButtonLoadingState: () => import("react/jsx-runtime").JSX.Element;
23
44
  export declare const QuillTableLoadingState: () => import("react/jsx-runtime").JSX.Element;
24
- export declare const DEFAULT_TAB_OPTIONS: {
25
- label: string;
26
- value: string;
27
- }[];
28
- export declare const QuillTabs: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
29
45
  export declare const EditPopover: ({ onSave, onDelete, Button, renderNode, activeEditItem, }: any) => import("react/jsx-runtime").JSX.Element;
30
- export declare const QuillFilterPopover: ({ filterLabel, onClickDeleteFilter, popoverTitle, popoverChildren, isOpen, setIsOpen, }: any) => import("react/jsx-runtime").JSX.Element;
31
- export declare const QuillSortPopover: ({ filterLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }: any) => import("react/jsx-runtime").JSX.Element;
32
- 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, }: any) => import("react/jsx-runtime").JSX.Element;
46
+ export interface FilterPopoverComponentProps {
47
+ isOpen: boolean;
48
+ setIsOpen: (isOpen: boolean) => void;
49
+ popoverTitle?: string;
50
+ popoverChildren: ReactNode;
51
+ filterLabel: string;
52
+ onClickDelete: (e: React.MouseEvent<HTMLElement>) => void;
53
+ }
54
+ export declare const QuillFilterPopover: ({ filterLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }: FilterPopoverComponentProps) => import("react/jsx-runtime").JSX.Element;
55
+ export interface SortPopoverComponentProps {
56
+ isOpen: boolean;
57
+ setIsOpen: (isOpen: boolean) => void;
58
+ popoverTitle?: string;
59
+ popoverChildren: ReactNode;
60
+ sortLabel: string;
61
+ onClickDelete: (e: React.MouseEvent<HTMLElement>) => void;
62
+ }
63
+ export declare const QuillSortPopover: ({ sortLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }: SortPopoverComponentProps) => import("react/jsx-runtime").JSX.Element;
64
+ export interface LimitPopoverComponentProps {
65
+ isOpen: boolean;
66
+ setIsOpen: (isOpen: boolean) => void;
67
+ popoverTitle?: string;
68
+ popoverChildren: ReactNode;
69
+ limitLabel: string;
70
+ onClickDelete: (e: React.MouseEvent<HTMLElement>) => void;
71
+ }
72
+ export declare const QuillLimitPopover: ({ limitLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }: LimitPopoverComponentProps) => import("react/jsx-runtime").JSX.Element;
73
+ export interface TagWrapperProps {
74
+ isCard: boolean;
75
+ isRow: boolean;
76
+ editPopoverKey: string;
77
+ keyPrefix: string;
78
+ formData: any;
79
+ activeEditItem: any;
80
+ setEditPopoverKey: any;
81
+ setActiveEditItem: any;
82
+ setActivePath: any;
83
+ setOpenPopover: any;
84
+ setIsPending: any;
85
+ clearCheckboxes: any;
86
+ handleDelete: any;
87
+ setCheckboxes: any;
88
+ handleReplaceSubtree: any;
89
+ FilterPopover: (props: FilterPopoverComponentProps) => JSX.Element;
90
+ getByKey: any;
91
+ EditPopover: any;
92
+ Button: any;
93
+ renderNode: any;
94
+ children: any;
95
+ }
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;
33
97
  export declare const AddFilterPopover: ({ onSave, Button, renderNode, activeEditItem, }: any) => import("react/jsx-runtime").JSX.Element;
34
98
  //# sourceMappingURL=ui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":";AAiBA;;;;;GAKG;AAEH,eAAO,MAAM,WAAW,2BAA4B,GAAG,4CA2BtD,CAAC;AAEF,eAAO,MAAM,oBAAoB,2BAA4B,GAAG,4CA2B/D,CAAC;AAEF,eAAO,MAAM,uBAAuB,uCAKjC,GAAG,4CAiBL,CAAC;AAEF,eAAO,MAAM,QAAQ,sGAoFpB,CAAC;AAGF,eAAO,MAAM,mBAAmB,cAAe,GAAG,4CAEjD,CAAC;AAGF,eAAO,MAAM,sBAAsB,cAAe,GAAG,4CAEpD,CAAC;AAGF,eAAO,MAAM,YAAY,sGAiBxB,CAAC;AAGF,eAAO,MAAM,eAAe,sGAuB3B,CAAC;AAEF,eAAO,MAAM,WAAW,2BAA4B,GAAG,4CAUtD,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,QAAQ,EACR,KAAU,EACV,OAAO,EACP,MAAM,GACP,EAAE,GAAG,2CAgDL;AAED,eAAO,MAAM,YAAY,sGAkCxB,CAAC;AAGF,eAAO,MAAM,iBAAiB,+CAwE7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,gDAK3B,GAAG,4CA6CL,CAAC;AAGF,eAAO,MAAM,oBAAoB,kCAAmC,GAAG,4CAiDtE,CAAC;AAGF,eAAO,MAAM,uBAAuB,+CAMnC,CAAC;AAGF,eAAO,MAAM,sBAAsB,+CAMlC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;GAG/B,CAAC;AAEF,eAAO,MAAM,SAAS,sGAIrB,CAAC;AAEF,eAAO,MAAM,WAAW,8DAMrB,GAAG,4CA+BL,CAAC;AAEF,eAAO,MAAM,kBAAkB,4FAO5B,GAAG,4CAqBL,CAAC;AAEF,eAAO,MAAM,gBAAgB,sFAO1B,GAAG,4CAqBL,CAAC;AAEF,eAAO,MAAM,UAAU,sTAuBpB,GAAG,4CAqFL,CAAC;AAEF,eAAO,MAAM,gBAAgB,oDAK1B,GAAG,4CAsBL,CAAC"}
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":"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"}