@quillsql/react 2.12.45 → 2.12.47

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 (255) hide show
  1. package/dist/cjs/Chart.d.ts.map +1 -1
  2. package/dist/cjs/Chart.js +16 -7
  3. package/dist/cjs/ChartBuilder.d.ts +10 -11
  4. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  5. package/dist/cjs/ChartBuilder.js +78 -81
  6. package/dist/cjs/ChartEditor.d.ts +3 -1
  7. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  8. package/dist/cjs/ChartEditor.js +26 -10
  9. package/dist/cjs/Context.d.ts +2 -3
  10. package/dist/cjs/Context.d.ts.map +1 -1
  11. package/dist/cjs/Context.js +42 -28
  12. package/dist/cjs/Dashboard.d.ts +12 -12
  13. package/dist/cjs/Dashboard.d.ts.map +1 -1
  14. package/dist/cjs/Dashboard.js +61 -69
  15. package/dist/cjs/QuillProvider.d.ts +2 -0
  16. package/dist/cjs/QuillProvider.d.ts.map +1 -1
  17. package/dist/cjs/QuillProvider.js +1 -15
  18. package/dist/cjs/ReportBuilder.d.ts +9 -9
  19. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  20. package/dist/cjs/ReportBuilder.js +116 -179
  21. package/dist/cjs/SQLEditor.d.ts +20 -11
  22. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  23. package/dist/cjs/SQLEditor.js +157 -90
  24. package/dist/cjs/Table.js +3 -3
  25. package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
  26. package/dist/cjs/components/Chart/BarChart.js +6 -25
  27. package/dist/cjs/components/Chart/BarList.js +1 -1
  28. package/dist/cjs/components/Chart/ChartError.d.ts +5 -2
  29. package/dist/cjs/components/Chart/ChartError.d.ts.map +1 -1
  30. package/dist/cjs/components/Chart/ChartError.js +7 -10
  31. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  32. package/dist/cjs/components/Chart/LineChart.js +16 -1
  33. package/dist/cjs/components/Chart/PieChart.js +1 -1
  34. package/dist/cjs/components/Dashboard/ChartComponent.d.ts +1 -1
  35. package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
  36. package/dist/cjs/components/Dashboard/ChartComponent.js +46 -47
  37. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  38. package/dist/cjs/components/Dashboard/DashboardFilter.js +2 -1
  39. package/dist/cjs/components/Dashboard/DataLoader.d.ts +2 -2
  40. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  41. package/dist/cjs/components/Dashboard/DataLoader.js +19 -13
  42. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  43. package/dist/cjs/components/Dashboard/MetricComponent.js +16 -26
  44. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  45. package/dist/cjs/components/Dashboard/TableComponent.js +16 -25
  46. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  47. package/dist/cjs/components/QuillMultiSelectWithCombo.js +31 -1
  48. package/dist/cjs/components/QuillSelect.js +1 -1
  49. package/dist/cjs/components/QuillTable.d.ts +1 -1
  50. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  51. package/dist/cjs/components/QuillTable.js +115 -105
  52. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts +3 -3
  53. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  54. package/dist/cjs/components/ReportBuilder/AddColumnModal.js +2 -2
  55. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts +2 -2
  56. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  57. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +28 -9
  58. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +1 -1
  59. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  60. package/dist/cjs/components/ReportBuilder/FilterModal.js +178 -114
  61. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  62. package/dist/cjs/components/ReportBuilder/convert.js +1 -2
  63. package/dist/cjs/components/ReportBuilder/ui.d.ts +9 -1
  64. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  65. package/dist/cjs/components/ReportBuilder/ui.js +37 -3
  66. package/dist/cjs/components/ReportBuilder/util.d.ts +5 -1
  67. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  68. package/dist/cjs/components/ReportBuilder/util.js +26 -12
  69. package/dist/cjs/components/UiComponents.d.ts +17 -3
  70. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  71. package/dist/cjs/components/UiComponents.js +160 -29
  72. package/dist/cjs/hooks/useAskQuill.d.ts.map +1 -1
  73. package/dist/cjs/hooks/useAskQuill.js +7 -7
  74. package/dist/cjs/hooks/useAstToFilterTree.d.ts +4 -1
  75. package/dist/cjs/hooks/useAstToFilterTree.d.ts.map +1 -1
  76. package/dist/cjs/hooks/useAstToFilterTree.js +4 -1
  77. package/dist/cjs/hooks/useDashboard.d.ts +5 -1
  78. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  79. package/dist/cjs/hooks/useDashboard.js +28 -4
  80. package/dist/cjs/hooks/useOnClickOutside.js +2 -2
  81. package/dist/cjs/hooks/useQuill.js +4 -4
  82. package/dist/cjs/hooks/useVirtualTables.d.ts +10 -0
  83. package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -0
  84. package/dist/cjs/hooks/useVirtualTables.js +29 -0
  85. package/dist/cjs/index.d.ts +2 -1
  86. package/dist/cjs/index.d.ts.map +1 -1
  87. package/dist/cjs/index.js +4 -1
  88. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  89. package/dist/cjs/internals/ReportBuilder/PivotModal.js +45 -21
  90. package/dist/cjs/models/Client.d.ts +3 -0
  91. package/dist/cjs/models/Client.d.ts.map +1 -1
  92. package/dist/cjs/models/Report.d.ts +2 -0
  93. package/dist/cjs/models/Report.d.ts.map +1 -1
  94. package/dist/cjs/models/Schema.d.ts +7 -0
  95. package/dist/cjs/models/Schema.d.ts.map +1 -0
  96. package/dist/cjs/models/Schema.js +2 -0
  97. package/dist/cjs/models/Tables.d.ts +2 -0
  98. package/dist/cjs/models/Tables.d.ts.map +1 -1
  99. package/dist/cjs/utils/astFilterProcessing.d.ts +4 -0
  100. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -1
  101. package/dist/cjs/utils/astFilterProcessing.js +47 -44
  102. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  103. package/dist/cjs/utils/astProcessing.js +8 -8
  104. package/dist/cjs/utils/client.d.ts.map +1 -1
  105. package/dist/cjs/utils/client.js +1 -0
  106. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
  107. package/dist/cjs/utils/columnProcessing.js +88 -5
  108. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  109. package/dist/cjs/utils/dataFetcher.js +7 -3
  110. package/dist/cjs/utils/filterProcessing.d.ts +25 -0
  111. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  112. package/dist/cjs/utils/filterProcessing.js +121 -1
  113. package/dist/cjs/utils/paginationProcessing.js +2 -2
  114. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  115. package/dist/cjs/utils/pivotConstructor.js +10 -6
  116. package/dist/cjs/utils/queryConstructor.d.ts +1 -0
  117. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  118. package/dist/cjs/utils/queryConstructor.js +37 -11
  119. package/dist/cjs/utils/report.d.ts +5 -0
  120. package/dist/cjs/utils/report.d.ts.map +1 -1
  121. package/dist/cjs/utils/report.js +63 -9
  122. package/dist/cjs/utils/schema.js +22 -20
  123. package/dist/cjs/utils/tableProcessing.d.ts +1 -0
  124. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  125. package/dist/cjs/utils/tableProcessing.js +22 -1
  126. package/dist/cjs/utils/validation.d.ts.map +1 -1
  127. package/dist/cjs/utils/validation.js +4 -0
  128. package/dist/esm/Chart.d.ts.map +1 -1
  129. package/dist/esm/Chart.js +17 -8
  130. package/dist/esm/ChartBuilder.d.ts +10 -11
  131. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  132. package/dist/esm/ChartBuilder.js +81 -84
  133. package/dist/esm/ChartEditor.d.ts +3 -1
  134. package/dist/esm/ChartEditor.d.ts.map +1 -1
  135. package/dist/esm/ChartEditor.js +27 -11
  136. package/dist/esm/Context.d.ts +2 -3
  137. package/dist/esm/Context.d.ts.map +1 -1
  138. package/dist/esm/Context.js +42 -28
  139. package/dist/esm/Dashboard.d.ts +12 -12
  140. package/dist/esm/Dashboard.d.ts.map +1 -1
  141. package/dist/esm/Dashboard.js +63 -71
  142. package/dist/esm/QuillProvider.d.ts +2 -0
  143. package/dist/esm/QuillProvider.d.ts.map +1 -1
  144. package/dist/esm/QuillProvider.js +2 -16
  145. package/dist/esm/ReportBuilder.d.ts +9 -9
  146. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  147. package/dist/esm/ReportBuilder.js +122 -185
  148. package/dist/esm/SQLEditor.d.ts +20 -11
  149. package/dist/esm/SQLEditor.d.ts.map +1 -1
  150. package/dist/esm/SQLEditor.js +160 -93
  151. package/dist/esm/Table.js +4 -4
  152. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  153. package/dist/esm/components/Chart/BarChart.js +7 -26
  154. package/dist/esm/components/Chart/BarList.js +1 -1
  155. package/dist/esm/components/Chart/ChartError.d.ts +5 -2
  156. package/dist/esm/components/Chart/ChartError.d.ts.map +1 -1
  157. package/dist/esm/components/Chart/ChartError.js +7 -10
  158. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  159. package/dist/esm/components/Chart/LineChart.js +16 -1
  160. package/dist/esm/components/Chart/PieChart.js +1 -1
  161. package/dist/esm/components/Dashboard/ChartComponent.d.ts +1 -1
  162. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
  163. package/dist/esm/components/Dashboard/ChartComponent.js +46 -47
  164. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  165. package/dist/esm/components/Dashboard/DashboardFilter.js +2 -1
  166. package/dist/esm/components/Dashboard/DataLoader.d.ts +2 -2
  167. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  168. package/dist/esm/components/Dashboard/DataLoader.js +20 -14
  169. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  170. package/dist/esm/components/Dashboard/MetricComponent.js +16 -26
  171. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  172. package/dist/esm/components/Dashboard/TableComponent.js +16 -25
  173. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  174. package/dist/esm/components/QuillMultiSelectWithCombo.js +31 -1
  175. package/dist/esm/components/QuillSelect.js +1 -1
  176. package/dist/esm/components/QuillTable.d.ts +1 -1
  177. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  178. package/dist/esm/components/QuillTable.js +115 -105
  179. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts +3 -3
  180. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  181. package/dist/esm/components/ReportBuilder/AddColumnModal.js +2 -2
  182. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts +2 -2
  183. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  184. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +28 -9
  185. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +1 -1
  186. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  187. package/dist/esm/components/ReportBuilder/FilterModal.js +178 -114
  188. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  189. package/dist/esm/components/ReportBuilder/convert.js +1 -2
  190. package/dist/esm/components/ReportBuilder/ui.d.ts +9 -1
  191. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  192. package/dist/esm/components/ReportBuilder/ui.js +38 -4
  193. package/dist/esm/components/ReportBuilder/util.d.ts +5 -1
  194. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  195. package/dist/esm/components/ReportBuilder/util.js +26 -12
  196. package/dist/esm/components/UiComponents.d.ts +17 -3
  197. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  198. package/dist/esm/components/UiComponents.js +158 -28
  199. package/dist/esm/hooks/useAskQuill.d.ts.map +1 -1
  200. package/dist/esm/hooks/useAskQuill.js +8 -8
  201. package/dist/esm/hooks/useAstToFilterTree.d.ts +4 -1
  202. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -1
  203. package/dist/esm/hooks/useAstToFilterTree.js +4 -1
  204. package/dist/esm/hooks/useDashboard.d.ts +5 -1
  205. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  206. package/dist/esm/hooks/useDashboard.js +28 -5
  207. package/dist/esm/hooks/useOnClickOutside.js +2 -2
  208. package/dist/esm/hooks/useQuill.js +5 -5
  209. package/dist/esm/hooks/useVirtualTables.d.ts +10 -0
  210. package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -0
  211. package/dist/esm/hooks/useVirtualTables.js +25 -0
  212. package/dist/esm/index.d.ts +2 -1
  213. package/dist/esm/index.d.ts.map +1 -1
  214. package/dist/esm/index.js +2 -1
  215. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  216. package/dist/esm/internals/ReportBuilder/PivotModal.js +44 -23
  217. package/dist/esm/models/Client.d.ts +3 -0
  218. package/dist/esm/models/Client.d.ts.map +1 -1
  219. package/dist/esm/models/Report.d.ts +2 -0
  220. package/dist/esm/models/Report.d.ts.map +1 -1
  221. package/dist/esm/models/Schema.d.ts +7 -0
  222. package/dist/esm/models/Schema.d.ts.map +1 -0
  223. package/dist/esm/models/Schema.js +1 -0
  224. package/dist/esm/models/Tables.d.ts +2 -0
  225. package/dist/esm/models/Tables.d.ts.map +1 -1
  226. package/dist/esm/utils/astFilterProcessing.d.ts +4 -0
  227. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -1
  228. package/dist/esm/utils/astFilterProcessing.js +45 -43
  229. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  230. package/dist/esm/utils/astProcessing.js +8 -8
  231. package/dist/esm/utils/client.d.ts.map +1 -1
  232. package/dist/esm/utils/client.js +1 -0
  233. package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
  234. package/dist/esm/utils/columnProcessing.js +88 -5
  235. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  236. package/dist/esm/utils/dataFetcher.js +7 -3
  237. package/dist/esm/utils/filterProcessing.d.ts +25 -0
  238. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  239. package/dist/esm/utils/filterProcessing.js +116 -0
  240. package/dist/esm/utils/paginationProcessing.js +2 -2
  241. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  242. package/dist/esm/utils/pivotConstructor.js +10 -6
  243. package/dist/esm/utils/queryConstructor.d.ts +1 -0
  244. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  245. package/dist/esm/utils/queryConstructor.js +35 -10
  246. package/dist/esm/utils/report.d.ts +5 -0
  247. package/dist/esm/utils/report.d.ts.map +1 -1
  248. package/dist/esm/utils/report.js +61 -8
  249. package/dist/esm/utils/schema.js +22 -20
  250. package/dist/esm/utils/tableProcessing.d.ts +1 -0
  251. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  252. package/dist/esm/utils/tableProcessing.js +21 -1
  253. package/dist/esm/utils/validation.d.ts.map +1 -1
  254. package/dist/esm/utils/validation.js +4 -0
  255. package/package.json +3 -1
@@ -1,4 +1,5 @@
1
1
  import React, { ReactNode } from 'react';
2
+ import { TextInputComponentProps } from './components/UiComponents';
2
3
  import { QuillReport } from './models/Report';
3
4
  /**
4
5
  * Props for the Quill SQLEditor component.
@@ -12,6 +13,7 @@ export interface SQLEditorProps {
12
13
  label: string;
13
14
  disabled?: boolean;
14
15
  icon?: ReactNode;
16
+ tooltipText?: string;
15
17
  }) => JSX.Element;
16
18
  /**
17
19
  * A secondary button component.
@@ -29,14 +31,7 @@ export interface SQLEditorProps {
29
31
  /**
30
32
  * A input element for getting text from the user.
31
33
  */
32
- TextInputComponent?: (props: {
33
- id: string;
34
- width: number;
35
- value: string;
36
- label?: string;
37
- placeholder?: string;
38
- onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
39
- }) => JSX.Element;
34
+ TextInputComponent?: ((props: TextInputComponentProps) => JSX.Element) | React.ForwardRefExoticComponent<TextInputComponentProps & React.RefAttributes<HTMLInputElement>>;
40
35
  /** A select component. */
41
36
  SelectComponent?: (props: {
42
37
  value: string;
@@ -66,6 +61,7 @@ export interface SQLEditorProps {
66
61
  field: string;
67
62
  direction: string;
68
63
  }) => void;
64
+ containerStyle?: React.CSSProperties;
69
65
  }) => JSX.Element;
70
66
  /**
71
67
  * A component to show while the query results are loading.
@@ -164,6 +160,10 @@ export interface SQLEditorProps {
164
160
  * A callback that is fired when the data columns change.
165
161
  */
166
162
  onChangeColumns?: (columns: object[]) => void;
163
+ /** A callback function triggered when changes are discarded. */
164
+ onDiscardChanges?: () => void;
165
+ /** A callback function triggered when changes are saved. */
166
+ onSaveChanges?: () => void;
167
167
  /**
168
168
  * A callback that is fired when a report has been added to a dashboard.
169
169
  */
@@ -186,6 +186,10 @@ export interface SQLEditorProps {
186
186
  * Whether the "new query" button is enabled.
187
187
  */
188
188
  isNewQueryEnabled?: boolean;
189
+ /**
190
+ * Whether the user is an admin.
191
+ */
192
+ isAdminEnabled?: boolean;
189
193
  /**
190
194
  * Whether to show table format options.
191
195
  */
@@ -207,13 +211,17 @@ export interface SQLEditorProps {
207
211
  */
208
212
  defaultQuery?: string;
209
213
  /**
210
- * The default dashboard to dashboard items to.
214
+ * The default dashboard to add the query to.
211
215
  */
212
216
  destinationDashboard?: string;
213
217
  /**
214
218
  * The title of the ChartBuilder dialog.
215
219
  */
216
220
  chartBuilderTitle?: string;
221
+ /**
222
+ * Whether to automatically run the query when the component mounts.
223
+ */
224
+ runQueryOnMount?: boolean;
217
225
  /**
218
226
  * The label of the button to add the current query to a dashboard.
219
227
  *
@@ -260,13 +268,14 @@ export interface SQLEditorProps {
260
268
  * ### SQLEditor API
261
269
  * @see https://docs.quillsql.com/components/sql-editor
262
270
  */
263
- export default function SQLEditor({ ButtonComponent, SecondaryButtonComponent, DeleteButtonComponent, TextInputComponent, SelectComponent, TableComponent, isNewQueryEnabled, LoadingComponent, ModalComponent, PopoverComponent, CardComponent, LabelComponent, HeaderComponent, SubHeaderComponent, TextComponent, ErrorMessageComponent, ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer, PivotRowContainer, PivotColumnContainer, ChartBuilderFormContainer, defaultQuery, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, isChartBuilderEnabled, showTableFormatOptions, showDateFieldOptions, showAccessControlOptions, destinationDashboard, chartBuilderTitle, onAddToDashboardComplete, addToDashboardButtonLabel, report, organizationName, isChartBuilderHorizontalView, containerStyle, className, onClickChartElement, }: SQLEditorProps): import("react/jsx-runtime").JSX.Element;
264
- export declare const SchemaListComponent: ({ schema, theme, loading, LoadingComponent, width, onClick, }: {
271
+ export default function SQLEditor({ ButtonComponent, SecondaryButtonComponent, DeleteButtonComponent, TextInputComponent, SelectComponent, TableComponent, isNewQueryEnabled, LoadingComponent, ModalComponent, PopoverComponent, CardComponent, LabelComponent, HeaderComponent, SubHeaderComponent, TextComponent, ErrorMessageComponent, ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer, PivotRowContainer, PivotColumnContainer, ChartBuilderFormContainer, defaultQuery, destinationDashboard, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, onDiscardChanges, onSaveChanges, isChartBuilderEnabled, showTableFormatOptions, showDateFieldOptions, showAccessControlOptions, isAdminEnabled, chartBuilderTitle, runQueryOnMount, onAddToDashboardComplete, addToDashboardButtonLabel, report, organizationName, isChartBuilderHorizontalView, containerStyle, className, onClickChartElement, }: SQLEditorProps): import("react/jsx-runtime").JSX.Element;
272
+ export declare const SchemaListComponent: ({ schema, theme, loading, LoadingComponent, width, onClick, style, }: {
265
273
  schema: any;
266
274
  theme: any;
267
275
  loading: boolean;
268
276
  LoadingComponent?: any;
269
277
  width?: any;
270
278
  onClick: (event: React.MouseEvent<HTMLDivElement>) => void;
279
+ style?: React.CSSProperties | undefined;
271
280
  }) => import("react/jsx-runtime").JSX.Element;
272
281
  //# sourceMappingURL=SQLEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SQLEditor.d.ts","sourceRoot":"","sources":["../../src/SQLEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLEditor.d.ts","sourceRoot":"","sources":["../../src/SQLEditor.tsx"],"names":[],"mappings":"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"}
@@ -17,7 +17,6 @@ const UiComponents_2 = require("./components/UiComponents");
17
17
  const width_1 = require("./utils/width");
18
18
  const QuillCard_1 = require("./components/QuillCard");
19
19
  const QuillSelect_1 = require("./components/QuillSelect");
20
- const schema_1 = require("./utils/schema");
21
20
  const tableProcessing_1 = require("./utils/tableProcessing");
22
21
  const queryConstructor_1 = require("./utils/queryConstructor");
23
22
  const monacoConfig_1 = require("./utils/monacoConfig");
@@ -88,26 +87,28 @@ function setEditorTheme(_editor, monaco, schema, databaseType, clientName) {
88
87
  * ### SQLEditor API
89
88
  * @see https://docs.quillsql.com/components/sql-editor
90
89
  */
91
- function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, DeleteButtonComponent = UiComponents_1.MemoizedDeleteButton, TextInputComponent = UiComponents_2.QuillTextInput, SelectComponent = QuillSelect_1.QuillSelectComponent, TableComponent = UiComponents_1.QuillTableSQLEditorComponent, isNewQueryEnabled = false, LoadingComponent = UiComponents_1.QuillLoadingComponent, ModalComponent = UiComponents_1.MemoizedModal, PopoverComponent = UiComponents_1.MemoizedPopover, CardComponent = QuillCard_1.QuillCard, LabelComponent = UiComponents_1.MemoizedLabel, HeaderComponent = UiComponents_1.MemoizedHeader, SubHeaderComponent = UiComponents_1.MemoizedSubHeader, TextComponent = UiComponents_1.MemoizedText, ErrorMessageComponent = UiComponents_1.QuillErrorMessageComponent, ChartBuilderInputRowContainer = UiComponents_1.QuillChartBuilderInputRowContainer, ChartBuilderInputColumnContainer = UiComponents_1.QuillChartBuilderInputColumnContainer, PivotRowContainer = UiComponents_1.QuillPivotRowContainer, PivotColumnContainer = UiComponents_1.QuillPivotColumnContainer, ChartBuilderFormContainer = UiComponents_1.QuillChartBuilderFormContainer, defaultQuery, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, isChartBuilderEnabled = false, showTableFormatOptions = false, showDateFieldOptions = false, showAccessControlOptions = false, destinationDashboard, chartBuilderTitle, onAddToDashboardComplete, addToDashboardButtonLabel = 'Add to dashboard', report = undefined, organizationName = undefined, isChartBuilderHorizontalView = true, containerStyle = { height: '100vh' }, className, onClickChartElement, }) {
90
+ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, DeleteButtonComponent = UiComponents_1.MemoizedDeleteButton, TextInputComponent = UiComponents_2.QuillTextInput, SelectComponent = QuillSelect_1.QuillSelectComponent, TableComponent = UiComponents_1.QuillTableSQLEditorComponent, isNewQueryEnabled = false, LoadingComponent = UiComponents_1.QuillLoadingComponent, ModalComponent = UiComponents_1.MemoizedModal, PopoverComponent = UiComponents_1.MemoizedPopover, CardComponent = QuillCard_1.QuillCard, LabelComponent = UiComponents_1.MemoizedLabel, HeaderComponent = UiComponents_1.MemoizedHeader, SubHeaderComponent = UiComponents_1.MemoizedSubHeader, TextComponent = UiComponents_1.MemoizedText, ErrorMessageComponent = UiComponents_1.QuillErrorMessageComponent, ChartBuilderInputRowContainer = UiComponents_1.QuillChartBuilderInputRowContainer, ChartBuilderInputColumnContainer = UiComponents_1.QuillChartBuilderInputColumnContainer, PivotRowContainer = UiComponents_1.QuillPivotRowContainer, PivotColumnContainer = UiComponents_1.QuillPivotColumnContainer, ChartBuilderFormContainer = UiComponents_1.QuillChartBuilderFormContainer, defaultQuery, destinationDashboard, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, onDiscardChanges, onSaveChanges, isChartBuilderEnabled = false, showTableFormatOptions = false, showDateFieldOptions = false, showAccessControlOptions = false, isAdminEnabled = false, chartBuilderTitle, runQueryOnMount = false, onAddToDashboardComplete, addToDashboardButtonLabel = 'Add to dashboard', report = undefined, organizationName = undefined, isChartBuilderHorizontalView = true, containerStyle = { height: '100vh' }, className, onClickChartElement, }) {
92
91
  const [sqlPrompt, setSqlPrompt] = (0, react_1.useState)('');
93
92
  const [client] = (0, react_1.useContext)(Context_1.ClientContext);
94
93
  const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
95
94
  const [query, setQuery] = (0, react_1.useState)(defaultQuery);
96
95
  const [rows, setRows] = (0, react_1.useState)([]);
97
96
  const [columns, setColumns] = (0, react_1.useState)([]);
98
- const [schema, setSchema] = (0, react_1.useContext)(Context_1.SchemaContext);
99
- const [customFields, setCustomFields] = (0, react_1.useContext)(Context_1.CustomFieldContext);
97
+ const [schemaData] = (0, react_1.useContext)(Context_1.SchemaDataContext);
100
98
  const [errorMessage, setErrorMessage] = (0, react_1.useState)('');
101
99
  const [sqlResponseLoading, setSqlResponseLoading] = (0, react_1.useState)(false);
102
100
  const [sqlQueryLoading, setSqlQueryLoading] = (0, react_1.useState)(false);
103
- const [schemaLoading, setSchemaLoading] = (0, react_1.useState)(false);
104
101
  const [isChartBuilderOpen, setIsChartBuilderOpen] = (0, react_1.useState)(false);
105
102
  const [displayTable, setDisplayTable] = (0, react_1.useState)(false);
106
103
  const formRef = (0, react_1.useRef)(null);
104
+ const sidebarRef = (0, react_1.useRef)(null);
107
105
  const [searchBarWidth, setSearchBarWidth] = (0, react_1.useState)(200);
106
+ const [filterBarWidth, setFilterBarWidth] = (0, react_1.useState)(200);
108
107
  const [formattedRows, setFormattedRows] = (0, react_1.useState)([]);
109
108
  const [rowCount, setRowCount] = (0, react_1.useState)(undefined);
110
109
  const [maxPage, setMaxPage] = (0, react_1.useState)(1);
110
+ const [tableSearchQuery, setTableSearchQuery] = (0, react_1.useState)('');
111
+ const [lastSuccessfulQuery, setLastSuccessfulQuery] = (0, react_1.useState)('');
111
112
  const [tempReport, setTempReport] = (0, react_1.useState)({
112
113
  ...report_1.EMPTY_INTERNAL_REPORT,
113
114
  ...report,
@@ -115,11 +116,22 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
115
116
  const [currentProcessing, setCurrentProcessing] = (0, react_1.useState)({
116
117
  page: paginationProcessing_1.DEFAULT_PAGINATION,
117
118
  });
119
+ const displayedTableData = (0, react_1.useMemo)(() => {
120
+ return (schemaData?.schema?.filter((table) => {
121
+ return (table.name
122
+ ?.toLowerCase()
123
+ ?.includes(tableSearchQuery.toLowerCase().trim()) ||
124
+ table.columns.some((col) => col.field
125
+ ?.toLowerCase()
126
+ ?.includes(tableSearchQuery.toLowerCase().trim())));
127
+ }) ?? []);
128
+ }, [tableSearchQuery, schemaData.schema]);
118
129
  (0, react_1.useEffect)(() => {
119
130
  // Since the TextInput component takes a required numeric width parameter,
120
131
  // we dynamically calculate the width of this component here.
121
132
  function handleResize() {
122
133
  (0, width_1.updateFirstChildWidth)(formRef, setSearchBarWidth, { gap: 12 });
134
+ (0, width_1.updateFirstChildWidth)(sidebarRef, setFilterBarWidth, { gap: 12 });
123
135
  }
124
136
  handleResize();
125
137
  window.addEventListener('resize', handleResize);
@@ -127,20 +139,8 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
127
139
  window.removeEventListener('resize', handleResize);
128
140
  };
129
141
  }, []);
130
- const getSchema = async () => {
131
- if (!client) {
132
- setSchemaLoading(false);
133
- return;
134
- }
135
- const { schemaData, customFieldsByTable } = await (0, schema_1.getSchemaInfoWithCustomFields)(client);
136
- setSchema(schemaData);
137
- setCustomFields(customFieldsByTable);
138
- setSchemaLoading(false);
139
- };
140
142
  (0, react_1.useEffect)(() => {
141
- if (client && !schemaLoading) {
142
- setSchemaLoading(true);
143
- getSchema();
143
+ if (client) {
144
144
  setRows([]);
145
145
  setColumns([]);
146
146
  setDisplayTable(false);
@@ -192,7 +192,7 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
192
192
  setDisplayTable(true);
193
193
  setSqlQueryLoading(true);
194
194
  setErrorMessage('');
195
- const tableInfo = await (0, tableProcessing_1.fetchTableByQuery)(query, client, processing, customFields);
195
+ const tableInfo = await (0, tableProcessing_1.fetchTableByQuery)(query, client, processing, schemaData.customFields);
196
196
  if (!!tableInfo.error) {
197
197
  throw new Error(tableInfo.error);
198
198
  }
@@ -232,6 +232,7 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
232
232
  rows: tempRows,
233
233
  columns: tableInfo.columns,
234
234
  });
235
+ setLastSuccessfulQuery(query);
235
236
  }
236
237
  catch (e) {
237
238
  setErrorMessage(e.message);
@@ -277,88 +278,154 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
277
278
  }
278
279
  }, [query]);
279
280
  return ((0, jsx_runtime_1.jsxs)("div", { style: { backgroundColor: theme?.backgroundColor, ...containerStyle }, className: className, children: [(!isChartBuilderHorizontalView ||
280
- (isChartBuilderHorizontalView && !isChartBuilderOpen)) && ((0, jsx_runtime_1.jsx)("div", { style: {
281
+ (isChartBuilderHorizontalView && !isChartBuilderOpen)) &&
282
+ !schemaData.isSchemaLoading && ((0, jsx_runtime_1.jsx)("div", { style: {
281
283
  height: '100%',
282
284
  display: 'flex',
283
285
  flexDirection: 'column',
284
286
  padding: 0,
285
- }, children: (0, jsx_runtime_1.jsx)("div", { style: { height: '100%', display: 'flex', flexDirection: 'column' }, children: (0, jsx_runtime_1.jsxs)("div", { style: {
287
+ }, children: (0, jsx_runtime_1.jsx)("div", { style: {
288
+ height: '100%',
289
+ display: 'flex',
290
+ flexDirection: 'column',
291
+ }, children: (0, jsx_runtime_1.jsxs)("div", { style: {
286
292
  width: '100%',
287
293
  display: 'flex',
288
294
  height: '100%',
289
295
  flexDirection: 'row',
290
296
  gap: 20,
291
- }, children: [(0, jsx_runtime_1.jsx)(exports.SchemaListComponent, { schema: schema, theme: theme, LoadingComponent: LoadingComponent, loading: schemaLoading, onClick: handleClickSchemaItem }), (0, jsx_runtime_1.jsxs)("div", { style: {
297
+ }, children: [(0, jsx_runtime_1.jsxs)("div", { style: {
298
+ display: 'flex',
299
+ flexDirection: 'column',
300
+ gap: 20,
301
+ }, children: [(0, jsx_runtime_1.jsx)("div", { style: {
302
+ paddingTop: 16,
303
+ paddingLeft: '20px',
304
+ paddingRight: '30px',
305
+ }, children: (0, jsx_runtime_1.jsx)(TextInputComponent, { placeholder: "Filter tables...", onChange: (e) => {
306
+ setTableSearchQuery(e.target.value);
307
+ }, value: tableSearchQuery, id: 'edit-name', width: filterBarWidth }) }), (0, jsx_runtime_1.jsx)(exports.SchemaListComponent, { schema: displayedTableData, theme: theme, LoadingComponent: LoadingComponent, loading: schemaData.isSchemaLoading, onClick: handleClickSchemaItem })] }), (0, jsx_runtime_1.jsxs)("div", { style: {
292
308
  display: 'flex',
293
309
  // gap: 12,
294
310
  flexDirection: 'column',
311
+ justifyContent: 'space-between',
295
312
  width: 'calc(100% - 290px)',
296
313
  height: '100%',
297
314
  overflowX: 'hidden',
298
- }, children: [(0, jsx_runtime_1.jsxs)("form", { ref: formRef, onSubmit: (e) => {
299
- e.preventDefault();
300
- handleRunSqlPrompt();
301
- }, style: {
302
- display: 'flex',
303
- flexDirection: 'row',
304
- gap: 12,
305
- paddingTop: 16,
306
- paddingBottom: 16,
307
- }, children: [(0, jsx_runtime_1.jsx)(TextInputComponent, { id: "ai-search", value: sqlPrompt, width: searchBarWidth, onChange: (e) => setSqlPrompt(e.target.value), placeholder: "Ask a question..." }), (0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: handleRunSqlPrompt, label: "Ask AI" })] }), (0, jsx_runtime_1.jsx)("div", { style: { height: 'calc(50% - 40px)' }, children: (0, jsx_runtime_1.jsx)(SQLEditorComponent, { query: query || '', schema: schema, databaseType: client?.databaseType ?? 'postgresql', clientName: client?.publicKey || '', setQuery: setQuery, handleRunQuery: () => {
308
- handleRunQuery(currentProcessing, true);
309
- }, handleFixWithAI: handleFixWithAI, isNewQueryEnabled: isNewQueryEnabled, handleClearQuery: handleClearQuery, theme: theme, defineEditorTheme: defineEditorTheme, setEditorTheme: setEditorTheme, setEditorMounted: () => { }, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, loading: sqlResponseLoading, LoadingComponent: LoadingComponent }) }), (0, jsx_runtime_1.jsxs)("div", { style: {
315
+ }, children: [(0, jsx_runtime_1.jsx)("div", { style: {
310
316
  display: 'flex',
311
317
  flexDirection: 'column',
312
- height: 'calc(50% - 108px)',
313
- padding: 0,
314
- margin: 0,
315
- border: 'none',
316
- outline: 'none',
317
- }, children: [errorMessage && ((0, jsx_runtime_1.jsx)("div", { style: {
318
- fontFamily: theme?.fontFamily,
319
- color: theme?.primaryTextColor,
320
- fontSize: 15,
321
- fontWeight: '400',
322
- width: '100%',
323
- }, children: (0, jsx_runtime_1.jsxs)("div", { style: {
318
+ overflow: 'auto',
319
+ height: '100%',
320
+ }, children: (0, jsx_runtime_1.jsxs)(UiComponents_1.OverflowContainer, { children: [(0, jsx_runtime_1.jsxs)("form", { ref: formRef, onSubmit: (e) => {
321
+ e.preventDefault();
322
+ handleRunSqlPrompt();
323
+ }, style: {
324
324
  display: 'flex',
325
325
  flexDirection: 'row',
326
- justifyContent: 'space-between',
327
326
  gap: 12,
328
- background: 'rgba(0,0,0,0.02)', // TODO: change color
329
- color: theme?.primaryTextColor,
330
- fontFamily: theme?.fontFamily,
331
- borderRadius: 6,
332
- padding: 20,
327
+ paddingTop: 16,
328
+ paddingBottom: 16,
329
+ }, children: [(0, jsx_runtime_1.jsx)(TextInputComponent, { id: "ai-search", value: sqlPrompt, width: searchBarWidth, onChange: (e) => setSqlPrompt(e.target.value), placeholder: "Ask a question..." }), (0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: handleRunSqlPrompt, label: "Ask AI" })] }), (0, jsx_runtime_1.jsx)("div", { style: {
330
+ minHeight: 210,
331
+ maxHeight: '30vh',
332
+ height: '30%',
333
+ }, children: (0, jsx_runtime_1.jsx)(SQLEditorComponent, { query: query || '', schema: schemaData.schema, databaseType: client?.databaseType ?? 'postgresql', clientName: client?.publicKey || '', setQuery: setQuery, handleRunQuery: () => {
334
+ handleRunQuery(currentProcessing, true);
335
+ }, handleFixWithAI: handleFixWithAI, isNewQueryEnabled: isNewQueryEnabled, runQueryOnMount: runQueryOnMount, handleClearQuery: handleClearQuery, theme: theme, defineEditorTheme: defineEditorTheme, setEditorTheme: setEditorTheme, setEditorMounted: () => { }, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, loading: sqlResponseLoading && schemaData.isSchemaLoading, LoadingComponent: LoadingComponent }) }), (0, jsx_runtime_1.jsx)("div", { style: {
336
+ display: 'flex',
337
+ flexDirection: 'row',
333
338
  width: '100%',
334
- alignItems: 'center',
335
- }, children: [errorMessage, errorMessage !== 'No data found' && ((0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: handleFixWithAI, label: "Fix with AI" }))] }) })), errorMessage || !displayTable ? null : ((0, jsx_runtime_1.jsx)(TableComponent, { isLoading: sqlQueryLoading, rows: formattedRows, columns: columns, rowCount: rowCount, onPageChange: onPageChange, onSortChange: onSortChange }))] }), isChartBuilderEnabled && rows.length > 0 && ((0, jsx_runtime_1.jsx)("div", { style: {
339
+ justifyContent: addToDashboardButtonLabel === 'Add to dashboard'
340
+ ? 'flex-end'
341
+ : 'flex-start',
342
+ }, children: (0, jsx_runtime_1.jsx)("div", { style: {
343
+ display: 'flex',
344
+ flexDirection: 'row',
345
+ alignItems: 'center',
346
+ height: 70,
347
+ }, children: (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', gap: 12 }, children: [addToDashboardButtonLabel ===
348
+ 'Add to dashboard' ? ((0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: () => {
349
+ handleRunQuery(currentProcessing, true);
350
+ }, label: "Run query" })) : ((0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: () => {
351
+ handleRunQuery(currentProcessing, true);
352
+ }, label: "Run query" })), isNewQueryEnabled && ((0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: handleClearQuery, label: "Clear query" })), addToDashboardButtonLabel ===
353
+ 'Add to dashboard' && ((0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: () => {
354
+ onSaveChanges && onSaveChanges();
355
+ setIsChartBuilderOpen(true);
356
+ }, label: addToDashboardButtonLabel, disabled: !!errorMessage ||
357
+ !(rows.length > 0 &&
358
+ lastSuccessfulQuery === query), tooltipText: !!errorMessage ||
359
+ !(rows.length > 0 &&
360
+ lastSuccessfulQuery === query)
361
+ ? 'Please run a query'
362
+ : '' }))] }) }) }), (0, jsx_runtime_1.jsxs)("div", { style: {
363
+ display: 'flex',
364
+ flexDirection: 'column',
365
+ // height: '100%',
366
+ padding: 0,
367
+ margin: 0,
368
+ border: 'none',
369
+ outline: 'none',
370
+ }, children: [errorMessage && ((0, jsx_runtime_1.jsx)("div", { style: {
371
+ fontFamily: theme?.fontFamily,
372
+ color: theme?.primaryTextColor,
373
+ fontSize: 15,
374
+ fontWeight: '400',
375
+ width: '100%',
376
+ }, children: (0, jsx_runtime_1.jsxs)("div", { style: {
377
+ display: 'flex',
378
+ flexDirection: 'row',
379
+ justifyContent: 'space-between',
380
+ gap: 12,
381
+ background: 'rgba(0,0,0,0.02)', // TODO: change color
382
+ color: theme?.primaryTextColor,
383
+ fontFamily: theme?.fontFamily,
384
+ borderRadius: 6,
385
+ padding: 20,
386
+ marginBottom: 15,
387
+ width: '100%',
388
+ alignItems: 'center',
389
+ }, children: [errorMessage, errorMessage !== 'No data found' &&
390
+ errorMessage !== 'No query found' && ((0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: handleFixWithAI, label: "Fix with AI" }))] }) })), errorMessage || !displayTable ? null : ((0, jsx_runtime_1.jsx)(TableComponent, { isLoading: sqlQueryLoading, rows: formattedRows, columns: columns, rowCount: rowCount, onPageChange: onPageChange, onSortChange: onSortChange, containerStyle: {
391
+ maxHeight: Math.max(window.innerHeight * 0.7, 75 +
392
+ Math.min(Math.max(10, rows.length), 10) * 37),
393
+ } }))] })] }) }), isChartBuilderEnabled && ((0, jsx_runtime_1.jsxs)("div", { style: {
336
394
  display: 'flex',
337
395
  flexDirection: 'row',
338
396
  alignItems: 'center',
339
397
  justifyContent: 'flex-end',
340
398
  width: '100%',
341
- height: '70px',
342
- }, children: (0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: () => setIsChartBuilderOpen(true), label: addToDashboardButtonLabel, disabled: !!errorMessage }) }))] })] }) }) })), (0, jsx_runtime_1.jsx)(ChartBuilder_1.ChartBuilderWithModal, { rows: rows, columns: columns, query: query, isHorizontalView: isChartBuilderHorizontalView, isOpen: isChartBuilderOpen, setIsOpen: setIsChartBuilderOpen, onAddToDashboardComplete: onAddToDashboardComplete, showTableFormatOptions: showTableFormatOptions, showDateFieldOptions: showDateFieldOptions, showAccessControlOptions: showAccessControlOptions, destinationDashboard: destinationDashboard, title: chartBuilderTitle, buttonLabel: addToDashboardButtonLabel, report: tempReport ?? report, pivot: tempReport?.pivot ?? undefined, pivotData: tempReport?.pivotRows && tempReport?.pivotColumns
399
+ gap: 12,
400
+ marginTop: 15,
401
+ marginBottom: 5,
402
+ }, children: [onDiscardChanges && ((0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: onDiscardChanges, label: "Discard changes" })), addToDashboardButtonLabel !== 'Add to dashboard' && ((0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: () => {
403
+ onSaveChanges && onSaveChanges();
404
+ setIsChartBuilderOpen(true);
405
+ }, label: addToDashboardButtonLabel, disabled: !!errorMessage ||
406
+ !(rows.length > 0 && lastSuccessfulQuery === query) }))] }))] })] }) }) })), (!isChartBuilderHorizontalView || isChartBuilderOpen) && ((0, jsx_runtime_1.jsx)(ChartBuilder_1.ChartBuilderWithModal, { rows: rows, columns: columns, query: query, isHorizontalView: isChartBuilderHorizontalView, isOpen: isChartBuilderOpen, setIsOpen: setIsChartBuilderOpen, onAddToDashboardComplete: onAddToDashboardComplete, showTableFormatOptions: showTableFormatOptions, showDateFieldOptions: showDateFieldOptions, showAccessControlOptions: showAccessControlOptions, isAdmin: isAdminEnabled, destinationDashboard: destinationDashboard, title: chartBuilderTitle, buttonLabel: addToDashboardButtonLabel, report: tempReport ?? report, pivot: tempReport?.pivot ?? undefined, pivotData: tempReport?.pivotRows && tempReport?.pivotColumns
343
407
  ? {
344
408
  rows: tempReport.pivotRows,
345
409
  columns: tempReport.pivotColumns,
346
410
  }
347
- : undefined, organizationName: organizationName, CardComponent: CardComponent, TableComponent: TableComponent, ModalComponent: ModalComponent, ButtonComponent: ButtonComponent, TextInputComponent: TextInputComponent, SelectComponent: SelectComponent, SecondaryButtonComponent: SecondaryButtonComponent, HeaderComponent: HeaderComponent, SubHeaderComponent: SubHeaderComponent, LabelComponent: LabelComponent, TextComponent: TextComponent, PopoverComponent: PopoverComponent, DeleteButtonComponent: DeleteButtonComponent, LoadingComponent: LoadingComponent, ChartBuilderInputRowContainer: ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer: ChartBuilderInputColumnContainer, ErrorMessageComponent: ErrorMessageComponent, PivotRowContainer: PivotRowContainer, PivotColumnContainer: PivotColumnContainer, FormContainer: ChartBuilderFormContainer, hideDateRangeFilter: true, onClickChartElement: onClickChartElement, rowCount: rowCount, onPageChange: onPageChange, onSortChange: onSortChange, isLoading: sqlQueryLoading })] }));
411
+ : undefined, organizationName: organizationName, CardComponent: CardComponent, TableComponent: TableComponent, ModalComponent: ModalComponent, ButtonComponent: ButtonComponent, TextInputComponent: TextInputComponent, SelectComponent: SelectComponent, SecondaryButtonComponent: SecondaryButtonComponent, HeaderComponent: HeaderComponent, SubHeaderComponent: SubHeaderComponent, LabelComponent: LabelComponent, TextComponent: TextComponent, PopoverComponent: PopoverComponent, DeleteButtonComponent: DeleteButtonComponent, LoadingComponent: LoadingComponent, ChartBuilderInputRowContainer: ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer: ChartBuilderInputColumnContainer, ErrorMessageComponent: ErrorMessageComponent, PivotRowContainer: PivotRowContainer, PivotColumnContainer: PivotColumnContainer, FormContainer: ChartBuilderFormContainer, hideDateRangeFilter: true, onClickChartElement: onClickChartElement, rowCount: rowCount, onPageChange: onPageChange, onSortChange: onSortChange, isLoading: sqlQueryLoading, isEditingMode: true }))] }));
348
412
  }
349
413
  exports.default = SQLEditor;
350
- const SQLEditorComponent = ({ query, schema, databaseType, clientName, setQuery, setEditorMounted, handleRunQuery, handleClearQuery, defineEditorTheme, setEditorTheme, ButtonComponent, SecondaryButtonComponent, isNewQueryEnabled, theme, loading, LoadingComponent = UiComponents_1.QuillLoadingComponent, }) => {
414
+ const SQLEditorComponent = ({ query, schema, databaseType, clientName, setQuery, setEditorMounted, handleRunQuery, defineEditorTheme, setEditorTheme, runQueryOnMount = false, theme, loading, LoadingComponent = UiComponents_1.QuillLoadingComponent, }) => {
351
415
  const [editorKey, setEditorKey] = (0, react_1.useState)(0);
352
- const [currentProvider, setCurrentProvider] = (0, react_1.useState)(null);
416
+ const currentProvider = (0, react_1.useRef)(null);
353
417
  (0, react_1.useEffect)(() => {
354
- if (currentProvider) {
355
- currentProvider.dispose();
356
- }
357
- if (schema && schema.length !== 0) {
358
- setEditorKey((prevKey) => prevKey + 1);
418
+ if (currentProvider.current) {
419
+ currentProvider.current.dispose();
420
+ if (schema && schema.length !== 0) {
421
+ setEditorKey((prevKey) => prevKey + 1);
422
+ }
359
423
  }
360
- }, [schema, clientName]);
361
- return ((0, jsx_runtime_1.jsxs)("div", { style: {
424
+ return () => {
425
+ currentProvider.current?.dispose();
426
+ };
427
+ }, [schema, clientName, databaseType]);
428
+ return ((0, jsx_runtime_1.jsx)("div", { style: {
362
429
  // maxHeight: 700,
363
430
  width: '100%',
364
431
  height: '100%',
@@ -373,31 +440,29 @@ const SQLEditorComponent = ({ query, schema, databaseType, clientName, setQuery,
373
440
  borderTopRightRadius: 0,
374
441
  borderBottomRightRadius: 0,
375
442
  overflow: 'hidden',
376
- }, children: [loading ? ((0, jsx_runtime_1.jsx)("div", { style: {
377
- height: 'calc(100% - 70px)',
378
- width: '100%',
379
- display: 'flex',
380
- alignItems: 'center',
381
- justifyContent: 'center',
382
- background: '#F9F9F9',
383
- }, children: (0, jsx_runtime_1.jsx)(LoadingComponent, {}) })) : ((0, jsx_runtime_1.jsx)(react_2.default, { height: "calc(100% - 70px)", width: "100%", defaultLanguage: clientName, defaultValue: "", language: clientName, value: query, loading: (0, jsx_runtime_1.jsx)("div", {}), options: {
384
- wordWrap: 'on',
385
- minimap: {
386
- enabled: false,
387
- },
388
- padding: { top: 16 },
389
- }, onChange: (query) => setQuery(query || ''), beforeMount: (monaco) => defineEditorTheme(monaco, theme), onMount: (_editor, monaco) => {
390
- const disposable = setEditorTheme(_editor, monaco, schema, databaseType, clientName);
391
- setCurrentProvider(disposable);
392
- setEditorMounted();
393
- } }, editorKey)), (0, jsx_runtime_1.jsx)("div", { style: {
394
- display: 'flex',
395
- flexDirection: 'row',
396
- alignItems: 'center',
397
- height: 70,
398
- }, children: (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', gap: 12 }, children: [(0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: handleRunQuery, label: "Run query" }), isNewQueryEnabled && ((0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: handleClearQuery, label: "Clear query" }))] }) })] }));
443
+ }, children: loading ? ((0, jsx_runtime_1.jsx)("div", { style: {
444
+ height: '100%',
445
+ width: '100%',
446
+ display: 'flex',
447
+ alignItems: 'center',
448
+ justifyContent: 'center',
449
+ background: '#F9F9F9',
450
+ }, children: (0, jsx_runtime_1.jsx)(LoadingComponent, {}) })) : ((0, jsx_runtime_1.jsx)(react_2.default, { height: "100%", width: "100%", defaultLanguage: clientName, defaultValue: "", language: clientName, value: query, loading: (0, jsx_runtime_1.jsx)("div", {}), options: {
451
+ wordWrap: 'on',
452
+ minimap: {
453
+ enabled: false,
454
+ },
455
+ padding: { top: 16 },
456
+ }, onChange: (query) => setQuery(query || ''), beforeMount: (monaco) => defineEditorTheme(monaco, theme), onMount: (_editor, monaco) => {
457
+ currentProvider.current = setEditorTheme(_editor, monaco, schema, databaseType, clientName);
458
+ setEditorMounted();
459
+ if (runQueryOnMount) {
460
+ handleRunQuery();
461
+ }
462
+ _editor.focus();
463
+ } }, editorKey)) }));
399
464
  };
400
- const SchemaListComponent = ({ schema, theme, loading, LoadingComponent, width, onClick, }) => {
465
+ const SchemaListComponent = ({ schema, theme, loading, LoadingComponent, width, onClick, style, }) => {
401
466
  if (loading) {
402
467
  return ((0, jsx_runtime_1.jsxs)("div", { style: {
403
468
  // maxHeight: 700,
@@ -412,11 +477,13 @@ const SchemaListComponent = ({ schema, theme, loading, LoadingComponent, width,
412
477
  display: 'flex',
413
478
  // alignItems: 'center',
414
479
  justifyContent: 'center',
480
+ ...style,
415
481
  }, children: [(0, jsx_runtime_1.jsx)("div", { style: { height: 100 } }), LoadingComponent && (0, jsx_runtime_1.jsx)(LoadingComponent, {}), !LoadingComponent && ((0, jsx_runtime_1.jsxs)("svg", { width: "24", height: "24", children: [(0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "12", r: "9.375", strokeWidth: "3.75", strokeDasharray: "calc(2 * 3.14 * 9.375 / 3) calc(2 * 3.14 * 9.375 * 2 / 3)", strokeDashoffset: "calc(2 * 3.14 * 9.375 / 6)", stroke: theme?.primaryTextColor || '#364153', fill: "none", transform: "rotate(-90 12 12)", children: (0, jsx_runtime_1.jsx)("animateTransform", { attributeName: "transform", attributeType: "XML", type: "rotate", from: "-180 12 12", to: "180 12 12", dur: "0.8s", repeatCount: "indefinite" }) }), (0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "12", r: "9.375", strokeWidth: "3.75", strokeDasharray: "calc(2 * 3.14 * 9.375 / 3) calc(2 * 3.14 * 9.375 * 1 / 3)", strokeDashoffset: "calc(2 * 3.14 * 9.375 / 3) calc(2 * 3.14 * 9.375 * 2 / 3)", stroke: '#ADB1B9', fill: "none", transform: "rotate(90 12 12)", children: (0, jsx_runtime_1.jsx)("animateTransform", { attributeName: "transform", attributeType: "XML", type: "rotate", from: "0 12 12", to: "360 12 12", dur: "0.8s", repeatCount: "indefinite" }) })] }))] }));
416
482
  }
417
483
  return ((0, jsx_runtime_1.jsx)("div", { style: {
418
484
  // maxHeight: 700,
419
485
  width: width || 250,
486
+ maxWidth: 350,
420
487
  minWidth: 250,
421
488
  overflowY: 'auto',
422
489
  height: '100%',
package/dist/cjs/Table.js CHANGED
@@ -64,7 +64,7 @@ const ChartUpdater = ({ reportId, containerStyle, className, dashboardContext, c
64
64
  const [loading, setLoading] = (0, react_1.useState)(false);
65
65
  const [initialLoad, setInitialLoad] = (0, react_1.useState)(true);
66
66
  const { downloadCSV } = (0, useExport_1.useExport)(reportId);
67
- const [customFields] = (0, react_1.useContext)(Context_1.CustomFieldContext);
67
+ const [schemaData] = (0, react_1.useContext)(Context_1.SchemaDataContext);
68
68
  const [rows, setRows] = (0, react_1.useState)([]);
69
69
  const [columns, setColumns] = (0, react_1.useState)([]);
70
70
  const [tableFilters, setTableFilters] = (0, react_1.useState)([]);
@@ -103,7 +103,7 @@ const ChartUpdater = ({ reportId, containerStyle, className, dashboardContext, c
103
103
  setLoading(true);
104
104
  try {
105
105
  const updatedProcessing = { ...currentProcessing, ...processing };
106
- const paginatedRows = await (0, tableProcessing_1.fetchTableByReport)(reportId, client, updatedProcessing, tableFilters, customFields);
106
+ const paginatedRows = await (0, tableProcessing_1.fetchTableByReport)(reportId, client, updatedProcessing, tableFilters, schemaData.customFields);
107
107
  if (paginatedRows.error) {
108
108
  throw new Error('Error fetching chart');
109
109
  }
@@ -125,7 +125,7 @@ const ChartUpdater = ({ reportId, containerStyle, className, dashboardContext, c
125
125
  };
126
126
  const fetchReportHelper = async (useReportTask = true, reportFilters, processing) => {
127
127
  setLoading(true);
128
- const { report, error } = await (0, report_1.fetchReport)(reportId, client, useReportTask, reportFilters ? reportFilters.filters : [], processing, undefined, customFields);
128
+ const { report, error } = await (0, report_1.fetchReport)(reportId, client, useReportTask, reportFilters ? reportFilters.filters : [], processing, undefined, schemaData.customFields);
129
129
  if (error) {
130
130
  setLoading(false);
131
131
  setInitialLoad(false);
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,mBAAmB,EACnB,UAAU,GACX,EAAE;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,2CAuNA"}
1
+ {"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":";AAcA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,mBAAmB,EACnB,UAAU,GACX,EAAE;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,2CAmMA"}
@@ -10,26 +10,7 @@ const axisFormatter_1 = require("../../utils/axisFormatter");
10
10
  const color_1 = require("../../utils/color");
11
11
  const ChartTooltip_1 = __importDefault(require("../../components/Chart/ChartTooltip"));
12
12
  const getDomain_1 = __importDefault(require("../../utils/getDomain"));
13
- const react_1 = require("react");
14
13
  function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, className, xAxisField, xAxisFormat, theme, comparison, isStacked, isAnimationActive = true, hideXAxis = false, hideYAxis = false, hideCartesianGrid = false, onClickChartElement, dateFilter, }) {
15
- const [formattedData, setFormattedData] = (0, react_1.useState)(data);
16
- (0, react_1.useEffect)(() => {
17
- setFormattedData(data);
18
- if (!data || data.length === 0) {
19
- let barChartData = [];
20
- if (dateFilter && (!barChartData || barChartData.length === 0)) {
21
- const xAxis = xAxisField || '';
22
- const endDate = (0, valueFormatter_1.quillFormat)({
23
- value: dateFilter?.endDate,
24
- format: xAxisFormat,
25
- });
26
- const yAxis = yAxisFields[0]?.field;
27
- barChartData = [{ [xAxis]: endDate, [yAxis]: '0' }];
28
- }
29
- setFormattedData(barChartData);
30
- return;
31
- }
32
- }, [data]);
33
14
  const getCustomColor = (field) => {
34
15
  const key = field.startsWith('comparison_') ? 'comparison' : 'primary';
35
16
  field = field.replace('comparison_', '');
@@ -39,15 +20,15 @@ function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, classNa
39
20
  return colorMap?.[field]?.[key];
40
21
  };
41
22
  const sortYAxisFields = (fields) => {
42
- if (formattedData.length > 0) {
23
+ if (data?.length > 0) {
43
24
  fields = fields
44
- .sort((a, b) => Object.keys(formattedData[0]).indexOf(a.field) -
45
- Object.keys(formattedData[0]).indexOf(b.field))
25
+ .sort((a, b) => Object.keys(data[0]).indexOf(a.field) -
26
+ Object.keys(data[0]).indexOf(b.field))
46
27
  .filter((field) => comparison || !field.field.startsWith('comparison_'));
47
28
  }
48
29
  return fields;
49
30
  };
50
- if (!formattedData || formattedData.length === 0) {
31
+ if (!data || data.length === 0) {
51
32
  return ((0, jsx_runtime_1.jsx)("div", { style: {
52
33
  display: 'flex',
53
34
  flex: '1 0 auto',
@@ -58,12 +39,12 @@ function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, classNa
58
39
  fontSize: 13,
59
40
  color: theme.secondaryTextColor,
60
41
  ...containerStyle,
61
- }, className: className, children: "No results found for specified time period." }));
42
+ }, className: className, children: "No results" }));
62
43
  }
63
44
  return ((0, jsx_runtime_1.jsx)("div", { style: {
64
45
  boxSizing: 'content-box',
65
46
  ...containerStyle,
66
- }, className: className, children: (0, jsx_runtime_1.jsx)(recharts_1.ResponsiveContainer, { width: "100%", height: '100%', children: (0, jsx_runtime_1.jsxs)(recharts_1.BarChart, { data: formattedData, layout: 'horizontal', children: [!hideCartesianGrid && ((0, jsx_runtime_1.jsx)(recharts_1.CartesianGrid, { horizontal: true, vertical: false, stroke: "#e5e7eb" })), (0, jsx_runtime_1.jsx)(recharts_1.YAxis, { width: 44, hide: hideYAxis, axisLine: false, tickLine: false, type: "number", domain: (0, getDomain_1.default)(data, yAxisFields), tick: { transform: 'translate(-3, 0)' }, tickCount: 5, style: {
47
+ }, className: className, children: (0, jsx_runtime_1.jsx)(recharts_1.ResponsiveContainer, { width: "100%", height: '100%', children: (0, jsx_runtime_1.jsxs)(recharts_1.BarChart, { data: data ?? [], layout: 'horizontal', children: [!hideCartesianGrid && ((0, jsx_runtime_1.jsx)(recharts_1.CartesianGrid, { horizontal: true, vertical: false, stroke: "#e5e7eb" })), (0, jsx_runtime_1.jsx)(recharts_1.YAxis, { width: 44, hide: hideYAxis, axisLine: false, tickLine: false, type: "number", domain: (0, getDomain_1.default)(data, yAxisFields), tick: { transform: 'translate(-3, 0)' }, tickCount: 5, style: {
67
48
  fontSize: '12px',
68
49
  fontFamily: theme.chartLabelFontFamily,
69
50
  }, tickFormatter: (tick) => {