@quillsql/react 2.13.27 → 2.13.29

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 (261) hide show
  1. package/dist/cjs/Chart.d.ts +2 -1
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +2 -2
  4. package/dist/cjs/ChartBuilder.d.ts +20 -2
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +140 -45
  7. package/dist/cjs/ChartEditor.d.ts +5 -3
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +4 -5
  10. package/dist/cjs/Context.d.ts +15 -4
  11. package/dist/cjs/Context.d.ts.map +1 -1
  12. package/dist/cjs/Context.js +43 -61
  13. package/dist/cjs/Dashboard.d.ts +4 -0
  14. package/dist/cjs/Dashboard.d.ts.map +1 -1
  15. package/dist/cjs/Dashboard.js +49 -9
  16. package/dist/cjs/QuillProvider.d.ts +7 -46
  17. package/dist/cjs/QuillProvider.d.ts.map +1 -1
  18. package/dist/cjs/QuillProvider.js +2 -4
  19. package/dist/cjs/ReportBuilder.d.ts +9 -1
  20. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  21. package/dist/cjs/ReportBuilder.js +198 -80
  22. package/dist/cjs/SQLEditor.d.ts +5 -1
  23. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  24. package/dist/cjs/SQLEditor.js +81 -18
  25. package/dist/cjs/Table.d.ts.map +1 -1
  26. package/dist/cjs/Table.js +3 -2
  27. package/dist/cjs/components/Chart/InternalChart.d.ts +2 -1
  28. package/dist/cjs/components/Chart/InternalChart.d.ts.map +1 -1
  29. package/dist/cjs/components/Chart/InternalChart.js +110 -28
  30. package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
  31. package/dist/cjs/components/Chart/PieChart.js +10 -7
  32. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +3 -2
  33. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  34. package/dist/cjs/components/Dashboard/DashboardFilter.js +66 -65
  35. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  36. package/dist/cjs/components/Dashboard/DataLoader.js +81 -34
  37. package/dist/cjs/components/Dashboard/MetricComponent.js +3 -3
  38. package/dist/cjs/components/Dashboard/TableComponent.d.ts +2 -1
  39. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  40. package/dist/cjs/components/Dashboard/TableComponent.js +3 -3
  41. package/dist/cjs/components/Dashboard/util.d.ts.map +1 -1
  42. package/dist/cjs/components/Dashboard/util.js +6 -2
  43. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts +3 -1
  44. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  45. package/dist/cjs/components/QuillMultiSelectWithCombo.js +29 -20
  46. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  47. package/dist/cjs/components/QuillTable.js +9 -1
  48. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  49. package/dist/cjs/components/ReportBuilder/FilterModal.js +25 -3
  50. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +2 -1
  51. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -1
  52. package/dist/cjs/components/ReportBuilder/FilterStack.js +2 -2
  53. package/dist/cjs/components/ReportBuilder/convert.d.ts +1 -0
  54. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  55. package/dist/cjs/components/ReportBuilder/convert.js +54 -4
  56. package/dist/cjs/components/ReportBuilder/ui.d.ts +2 -1
  57. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  58. package/dist/cjs/components/ReportBuilder/ui.js +3 -2
  59. package/dist/cjs/components/UiComponents.d.ts +1 -0
  60. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  61. package/dist/cjs/hooks/useAskQuill.d.ts +1 -1
  62. package/dist/cjs/hooks/useAskQuill.d.ts.map +1 -1
  63. package/dist/cjs/hooks/useAskQuill.js +6 -5
  64. package/dist/cjs/hooks/useAstToFilterTree.d.ts +2 -1
  65. package/dist/cjs/hooks/useAstToFilterTree.d.ts.map +1 -1
  66. package/dist/cjs/hooks/useAstToFilterTree.js +3 -3
  67. package/dist/cjs/hooks/useDashboard.d.ts +6 -2
  68. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  69. package/dist/cjs/hooks/useDashboard.js +34 -10
  70. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  71. package/dist/cjs/hooks/useExport.js +6 -4
  72. package/dist/cjs/index.d.ts +2 -1
  73. package/dist/cjs/index.d.ts.map +1 -1
  74. package/dist/cjs/index.js +4 -1
  75. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +8 -2
  76. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  77. package/dist/cjs/internals/ReportBuilder/PivotModal.js +59 -30
  78. package/dist/cjs/models/Client.d.ts +22 -3
  79. package/dist/cjs/models/Client.d.ts.map +1 -1
  80. package/dist/cjs/models/Dashboard.d.ts +2 -0
  81. package/dist/cjs/models/Dashboard.d.ts.map +1 -1
  82. package/dist/cjs/models/Report.d.ts +4 -0
  83. package/dist/cjs/models/Report.d.ts.map +1 -1
  84. package/dist/cjs/utils/astFilterProcessing.d.ts +3 -2
  85. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -1
  86. package/dist/cjs/utils/astFilterProcessing.js +3323 -977
  87. package/dist/cjs/utils/astProcessing.d.ts +1 -1
  88. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  89. package/dist/cjs/utils/astProcessing.js +4 -2
  90. package/dist/cjs/utils/client.d.ts +4 -2
  91. package/dist/cjs/utils/client.d.ts.map +1 -1
  92. package/dist/cjs/utils/client.js +48 -1
  93. package/dist/cjs/utils/columnProcessing.d.ts +3 -0
  94. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
  95. package/dist/cjs/utils/columnProcessing.js +34 -1
  96. package/dist/cjs/utils/constants.d.ts +2 -0
  97. package/dist/cjs/utils/constants.d.ts.map +1 -1
  98. package/dist/cjs/utils/constants.js +3 -1
  99. package/dist/cjs/utils/dashboard.d.ts +4 -3
  100. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  101. package/dist/cjs/utils/dashboard.js +13 -91
  102. package/dist/cjs/utils/dataFetcher.d.ts +3 -1
  103. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  104. package/dist/cjs/utils/dataFetcher.js +66 -30
  105. package/dist/cjs/utils/filterProcessing.d.ts +1 -1
  106. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  107. package/dist/cjs/utils/filterProcessing.js +3 -0
  108. package/dist/cjs/utils/pivotConstructor.d.ts +4 -1
  109. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  110. package/dist/cjs/utils/pivotConstructor.js +7 -7
  111. package/dist/cjs/utils/pivotProcessing.d.ts +4 -1
  112. package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
  113. package/dist/cjs/utils/pivotProcessing.js +27 -20
  114. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  115. package/dist/cjs/utils/queryConstructor.js +104 -88
  116. package/dist/cjs/utils/report.d.ts +17 -5
  117. package/dist/cjs/utils/report.d.ts.map +1 -1
  118. package/dist/cjs/utils/report.js +23 -23
  119. package/dist/cjs/utils/schema.d.ts.map +1 -1
  120. package/dist/cjs/utils/schema.js +21 -21
  121. package/dist/cjs/utils/tableProcessing.d.ts +37 -10
  122. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  123. package/dist/cjs/utils/tableProcessing.js +46 -38
  124. package/dist/cjs/utils/tenants.d.ts +11 -0
  125. package/dist/cjs/utils/tenants.d.ts.map +1 -0
  126. package/dist/cjs/utils/tenants.js +13 -0
  127. package/dist/cjs/utils/textProcessing.d.ts +1 -0
  128. package/dist/cjs/utils/textProcessing.d.ts.map +1 -1
  129. package/dist/cjs/utils/textProcessing.js +49 -0
  130. package/dist/cjs/utils/validation.js +1 -1
  131. package/dist/esm/Chart.d.ts +2 -1
  132. package/dist/esm/Chart.d.ts.map +1 -1
  133. package/dist/esm/Chart.js +2 -2
  134. package/dist/esm/ChartBuilder.d.ts +20 -2
  135. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  136. package/dist/esm/ChartBuilder.js +144 -50
  137. package/dist/esm/ChartEditor.d.ts +5 -3
  138. package/dist/esm/ChartEditor.d.ts.map +1 -1
  139. package/dist/esm/ChartEditor.js +5 -6
  140. package/dist/esm/Context.d.ts +15 -4
  141. package/dist/esm/Context.d.ts.map +1 -1
  142. package/dist/esm/Context.js +42 -60
  143. package/dist/esm/Dashboard.d.ts +4 -0
  144. package/dist/esm/Dashboard.d.ts.map +1 -1
  145. package/dist/esm/Dashboard.js +50 -10
  146. package/dist/esm/QuillProvider.d.ts +7 -46
  147. package/dist/esm/QuillProvider.d.ts.map +1 -1
  148. package/dist/esm/QuillProvider.js +2 -4
  149. package/dist/esm/ReportBuilder.d.ts +9 -1
  150. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  151. package/dist/esm/ReportBuilder.js +200 -84
  152. package/dist/esm/SQLEditor.d.ts +5 -1
  153. package/dist/esm/SQLEditor.d.ts.map +1 -1
  154. package/dist/esm/SQLEditor.js +80 -17
  155. package/dist/esm/Table.d.ts.map +1 -1
  156. package/dist/esm/Table.js +4 -3
  157. package/dist/esm/components/Chart/InternalChart.d.ts +2 -1
  158. package/dist/esm/components/Chart/InternalChart.d.ts.map +1 -1
  159. package/dist/esm/components/Chart/InternalChart.js +111 -29
  160. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
  161. package/dist/esm/components/Chart/PieChart.js +10 -7
  162. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +3 -2
  163. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  164. package/dist/esm/components/Dashboard/DashboardFilter.js +66 -65
  165. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  166. package/dist/esm/components/Dashboard/DataLoader.js +82 -35
  167. package/dist/esm/components/Dashboard/MetricComponent.js +3 -3
  168. package/dist/esm/components/Dashboard/TableComponent.d.ts +2 -1
  169. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  170. package/dist/esm/components/Dashboard/TableComponent.js +3 -3
  171. package/dist/esm/components/Dashboard/util.d.ts.map +1 -1
  172. package/dist/esm/components/Dashboard/util.js +6 -2
  173. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts +3 -1
  174. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  175. package/dist/esm/components/QuillMultiSelectWithCombo.js +29 -20
  176. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  177. package/dist/esm/components/QuillTable.js +9 -1
  178. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  179. package/dist/esm/components/ReportBuilder/FilterModal.js +26 -4
  180. package/dist/esm/components/ReportBuilder/FilterStack.d.ts +2 -1
  181. package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -1
  182. package/dist/esm/components/ReportBuilder/FilterStack.js +2 -2
  183. package/dist/esm/components/ReportBuilder/convert.d.ts +1 -0
  184. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  185. package/dist/esm/components/ReportBuilder/convert.js +54 -5
  186. package/dist/esm/components/ReportBuilder/ui.d.ts +2 -1
  187. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  188. package/dist/esm/components/ReportBuilder/ui.js +4 -3
  189. package/dist/esm/components/UiComponents.d.ts +1 -0
  190. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  191. package/dist/esm/hooks/useAskQuill.d.ts +1 -1
  192. package/dist/esm/hooks/useAskQuill.d.ts.map +1 -1
  193. package/dist/esm/hooks/useAskQuill.js +7 -6
  194. package/dist/esm/hooks/useAstToFilterTree.d.ts +2 -1
  195. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -1
  196. package/dist/esm/hooks/useAstToFilterTree.js +3 -3
  197. package/dist/esm/hooks/useDashboard.d.ts +6 -2
  198. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  199. package/dist/esm/hooks/useDashboard.js +34 -10
  200. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  201. package/dist/esm/hooks/useExport.js +7 -5
  202. package/dist/esm/index.d.ts +2 -1
  203. package/dist/esm/index.d.ts.map +1 -1
  204. package/dist/esm/index.js +1 -0
  205. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +8 -2
  206. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  207. package/dist/esm/internals/ReportBuilder/PivotModal.js +59 -30
  208. package/dist/esm/models/Client.d.ts +22 -3
  209. package/dist/esm/models/Client.d.ts.map +1 -1
  210. package/dist/esm/models/Dashboard.d.ts +2 -0
  211. package/dist/esm/models/Dashboard.d.ts.map +1 -1
  212. package/dist/esm/models/Report.d.ts +4 -0
  213. package/dist/esm/models/Report.d.ts.map +1 -1
  214. package/dist/esm/utils/astFilterProcessing.d.ts +3 -2
  215. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -1
  216. package/dist/esm/utils/astFilterProcessing.js +3323 -977
  217. package/dist/esm/utils/astProcessing.d.ts +1 -1
  218. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  219. package/dist/esm/utils/astProcessing.js +5 -3
  220. package/dist/esm/utils/client.d.ts +4 -2
  221. package/dist/esm/utils/client.d.ts.map +1 -1
  222. package/dist/esm/utils/client.js +48 -1
  223. package/dist/esm/utils/columnProcessing.d.ts +3 -0
  224. package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
  225. package/dist/esm/utils/columnProcessing.js +31 -1
  226. package/dist/esm/utils/constants.d.ts +2 -0
  227. package/dist/esm/utils/constants.d.ts.map +1 -1
  228. package/dist/esm/utils/constants.js +2 -0
  229. package/dist/esm/utils/dashboard.d.ts +4 -3
  230. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  231. package/dist/esm/utils/dashboard.js +13 -90
  232. package/dist/esm/utils/dataFetcher.d.ts +3 -1
  233. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  234. package/dist/esm/utils/dataFetcher.js +65 -29
  235. package/dist/esm/utils/filterProcessing.d.ts +1 -1
  236. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  237. package/dist/esm/utils/filterProcessing.js +3 -0
  238. package/dist/esm/utils/pivotConstructor.d.ts +4 -1
  239. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  240. package/dist/esm/utils/pivotConstructor.js +8 -8
  241. package/dist/esm/utils/pivotProcessing.d.ts +4 -1
  242. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
  243. package/dist/esm/utils/pivotProcessing.js +27 -20
  244. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  245. package/dist/esm/utils/queryConstructor.js +104 -88
  246. package/dist/esm/utils/report.d.ts +17 -5
  247. package/dist/esm/utils/report.d.ts.map +1 -1
  248. package/dist/esm/utils/report.js +20 -23
  249. package/dist/esm/utils/schema.d.ts.map +1 -1
  250. package/dist/esm/utils/schema.js +21 -21
  251. package/dist/esm/utils/tableProcessing.d.ts +37 -10
  252. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  253. package/dist/esm/utils/tableProcessing.js +47 -39
  254. package/dist/esm/utils/tenants.d.ts +11 -0
  255. package/dist/esm/utils/tenants.d.ts.map +1 -0
  256. package/dist/esm/utils/tenants.js +9 -0
  257. package/dist/esm/utils/textProcessing.d.ts +1 -0
  258. package/dist/esm/utils/textProcessing.d.ts.map +1 -1
  259. package/dist/esm/utils/textProcessing.js +48 -0
  260. package/dist/esm/utils/validation.js +1 -1
  261. package/package.json +1 -1
@@ -236,17 +236,6 @@ const dashboardFiltersReducer = (state, action) => {
236
236
  [action.filterName]: action.data,
237
237
  },
238
238
  };
239
- case 'UPDATE_DASHBOARD_FILTERS':
240
- if (!action.dashboardName || !action.data) {
241
- return state;
242
- }
243
- return {
244
- ...state,
245
- [action.dashboardName]: {
246
- ...state[action.dashboardName],
247
- ...action.data,
248
- },
249
- };
250
239
  case 'ADD_DASHBOARD_FILTERS':
251
240
  if (!action.dashboardName || !action.data) {
252
241
  return state;
@@ -269,10 +258,11 @@ const dashboardFiltersReducer = (state, action) => {
269
258
  export const DashboardFiltersContext = createContext({
270
259
  dashboardFilters: {},
271
260
  dispatch: dummySetter,
272
- loadFiltersForDashboard: () => { },
261
+ loadFiltersForDashboard: async () => { },
273
262
  });
263
+ export const TenantContext = createContext({});
274
264
  // TODO: track errors per dashboard in the same way as loading state
275
- export const ContextProvider = ({ children, initialTheme, publicKey, organizationId, queryEndpoint, queryHeaders, withCredentials, }) => {
265
+ export const ContextProvider = ({ children, initialTheme, publicKey, queryEndpoint, queryHeaders, withCredentials, tenants, flags, }) => {
276
266
  // get client from session storage
277
267
  const [client, setClient] = useState(typeof window !== 'undefined' && sessionStorage
278
268
  ? JSON.parse(sessionStorage.getItem('quill-client') ?? 'null')
@@ -370,7 +360,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
370
360
  metadata: {
371
361
  clientId: client?.publicKey,
372
362
  publicKey: client?.publicKey,
373
- orgId: client?.organizationId,
374
363
  reportId: dashboardName ? undefined : reportId,
375
364
  name: dashboardName,
376
365
  task: 'filter-options',
@@ -389,6 +378,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
389
378
  customFilters: customFilters?.filter((f) => f.filterType !== FilterType.DateCustomFilter &&
390
379
  f.filterType !== FilterType.DateFilter &&
391
380
  f.filterType !== FilterType.DateComparisonFilter),
381
+ tenants,
392
382
  },
393
383
  }),
394
384
  signal: filterOptionsAbortController?.signal,
@@ -411,7 +401,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
411
401
  }
412
402
  catch (error) {
413
403
  if (error instanceof Error && error.name === 'AbortError') {
414
- // console.log('Aborted fetching filter options');
415
404
  return;
416
405
  }
417
406
  console.error('ERROR:', error);
@@ -423,7 +412,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
423
412
  }
424
413
  catch (error) {
425
414
  if (error instanceof Error && error.name === 'AbortError') {
426
- // console.log('Aborted fetching filter options');
427
415
  return;
428
416
  }
429
417
  console.error('ERROR:', error);
@@ -457,17 +445,15 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
457
445
  metadata: {
458
446
  reportId,
459
447
  dashboardItemId: reportId,
460
- orgId: client.organizationId || '*',
461
448
  clientId: client.publicKey,
462
449
  task: 'report',
463
450
  databaseType: client.databaseType,
464
451
  filters: filters.map((filter) => ({ ...filter, options: undefined })),
465
- // customFields,
466
452
  additionalProcessing,
467
453
  useNewNodeSql: true,
468
- // rowsOnly,
469
- // rowCountOnly,
470
454
  getDefaultDashboardFilters: !filters.length,
455
+ tenants,
456
+ flags,
471
457
  },
472
458
  };
473
459
  const cloudBody = {
@@ -488,19 +474,20 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
488
474
  task: fetchRows ? 'report' : 'report-info',
489
475
  reportId,
490
476
  clientId: client.publicKey,
491
- orgId: client.organizationId ?? organizationId,
492
477
  useNewNodeSql: true,
493
478
  filters: filters?.map((f) => ({ ...f, options: undefined })),
494
479
  getDefaultDashboardFilters: !filters.length,
495
480
  additionalProcessing,
496
481
  dateBucket,
497
482
  databaseType: client.databaseType,
483
+ tenants,
484
+ flags,
498
485
  },
499
486
  }),
500
487
  signal: abortController.signal,
488
+ credentials: withCredentials ? 'include' : 'omit',
501
489
  });
502
490
  const results = fetchRows ? resp : await resp.json();
503
- // console.log('RESULTS', initiator, results);
504
491
  if (results.error) {
505
492
  console.error('Error fetching report:', results.error);
506
493
  return;
@@ -509,7 +496,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
509
496
  ? results.data.report
510
497
  : await processReportResponse({
511
498
  resp: results,
512
- client,
499
+ client: client,
513
500
  filters,
514
501
  dateBucket,
515
502
  additionalProcessing,
@@ -549,7 +536,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
549
536
  }
550
537
  catch (error) {
551
538
  if (error instanceof Error && error.name === 'AbortError') {
552
- // console.log('Aborted fetching filter options');
553
539
  return;
554
540
  }
555
541
  console.error('ERROR:', error);
@@ -614,7 +600,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
614
600
  metadata: {
615
601
  clientId: client?.publicKey,
616
602
  publicKey: client?.publicKey,
617
- orgId: client?.organizationId,
618
603
  name: dashboardName,
619
604
  task: 'filter-options',
620
605
  useNewNodeSql: true,
@@ -630,6 +615,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
630
615
  options: undefined,
631
616
  })),
632
617
  customFilters,
618
+ tenants: tenants,
633
619
  },
634
620
  }),
635
621
  signal: filterOptionsAbortController?.signal,
@@ -653,7 +639,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
653
639
  }
654
640
  catch (error) {
655
641
  if (error instanceof Error && error.name === 'AbortError') {
656
- // console.log('Aborted fetching filter options');
657
642
  dashboardFiltersDispatch({
658
643
  type: 'UPDATE_DASHBOARD_FILTER',
659
644
  dashboardName,
@@ -732,7 +717,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
732
717
  });
733
718
  return curDashboardConfig;
734
719
  }
735
- if (!client || !client.publicKey || !client.organizationId) {
720
+ if (!client || !client.publicKey) {
736
721
  return curDashboardConfig;
737
722
  }
738
723
  if (dashboardName === null || dashboardName === undefined)
@@ -743,7 +728,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
743
728
  id: dashboardName,
744
729
  data: true,
745
730
  });
746
- const resp = await requestGetDashboard(dashboardName, client);
731
+ const resp = await requestGetDashboard(dashboardName, client, tenants, flags);
747
732
  // if dashboard has changed
748
733
  if (!equal(resp, curDashboardConfig)) {
749
734
  dashboardConfigDispatch({
@@ -775,7 +760,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
775
760
  isSchemaLoading: false,
776
761
  });
777
762
  }
778
- async function fetchDashboards(publicKey, orgId) {
763
+ async function fetchDashboards(publicKey) {
779
764
  if (!publicKey) {
780
765
  return;
781
766
  }
@@ -801,8 +786,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
801
786
  publicKey: publicKey,
802
787
  task: 'dashboards',
803
788
  getSections: true,
804
- orgId: orgId,
805
- useDefaultOrg: orgId ? false : true,
806
789
  },
807
790
  }),
808
791
  credentials: withCredentials ? 'include' : 'omit',
@@ -811,7 +794,10 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
811
794
  const result = await response.json();
812
795
  dashboardConfigDispatch({
813
796
  type: 'SET_DASHBOARD_DATA',
814
- data: result.data.dashboards,
797
+ data: result.data.dashboards.map((dashboard) => ({
798
+ ...dashboard,
799
+ createdAt: new Date(dashboard.createdAt),
800
+ })),
815
801
  });
816
802
  dashboardFiltersDispatch({
817
803
  type: 'SET_INITIAL_DASHBOARD_FILTERS',
@@ -862,7 +848,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
862
848
  }
863
849
  catch (error) {
864
850
  if (error instanceof Error && error.name === 'AbortError') {
865
- // console.log('Aborted fetching dashboards');
851
+ return;
866
852
  }
867
853
  else {
868
854
  console.error('ERROR:', error);
@@ -875,35 +861,29 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
875
861
  }
876
862
  }
877
863
  useEffect(() => {
878
- async function fetchDatabaseType(publicKey) {
864
+ async function updateClientAndSchema(publicKey) {
865
+ if (client?.clientId === publicKey)
866
+ return;
867
+ setIsClientLoading(true);
879
868
  const newClient = await fetchClient(publicKey, queryEndpoint, withCredentials, queryHeaders);
880
- if (!newClient.adminCustomerId && !newClient.multiTenancyDisabled) {
869
+ if (!newClient.adminCustomerId && !newClient.allTenantTypes) {
881
870
  console.error('Default organization not found. Please select a default organization for this environment');
882
871
  return;
883
872
  }
884
873
  setClient({
885
874
  ...client,
875
+ queryHeaders: queryHeaders,
886
876
  queryEndpoint: queryEndpoint,
887
877
  withCredentials: withCredentials ?? false,
888
- multiTenancyDisabled: newClient.multiTenancyDisabled ? true : false,
889
878
  databaseType: newClient.databaseType,
890
879
  name: newClient.name,
891
880
  clientId: publicKey,
892
881
  publicKey: publicKey,
893
- organizationId: organizationId ??
894
- (newClient.multiTenancyDisabled ? '*' : newClient.adminCustomerId),
895
882
  recommendedPivotsDisabled: newClient.recommendedPivotsDisabled,
896
883
  featureFlags: newClient.featureFlags,
897
884
  domainName: newClient.domainName,
885
+ allTenantTypes: newClient.allTenantTypes,
898
886
  });
899
- }
900
- async function updateClientAndSchema(publicKey) {
901
- setIsClientLoading(true);
902
- await Promise.allSettled([
903
- ...(client?.clientId === publicKey
904
- ? []
905
- : [fetchDatabaseType(publicKey)]),
906
- ]);
907
887
  setIsClientLoading(false);
908
888
  }
909
889
  updateClientAndSchema(publicKey);
@@ -913,33 +893,32 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
913
893
  fetchSchema(client, 'context');
914
894
  }
915
895
  if (typeof window !== 'undefined' && sessionStorage) {
916
- sessionStorage.setItem('quill-client', JSON.stringify(client));
896
+ sessionStorage.setItem('quill-client', JSON.stringify({
897
+ ...client,
898
+ // allTenantTypes: [],
899
+ }));
917
900
  }
918
901
  }, [client]);
902
+ // FIXME: fetchDashboards needs to rerun every time the tenant changes so that we filter reports on their flags
919
903
  useEffect(() => {
920
904
  // Clear context
921
905
  setIsDashboardsLoading(true);
922
906
  // TODO: this is yet another unfortunate hack where the answer is to unify the admin and react state
923
907
  // currently, we fetch the dashboards twice if both the client and default org change
924
908
  // because if we didn't, we would fetch 0 times if the client changed but the org didn't
925
- fetchDashboards(publicKey, organizationId);
909
+ fetchDashboards(publicKey);
926
910
  dashboardFiltersDispatch({ type: 'CLEAR_DASHBOARD_FILTERS' });
927
911
  reportFiltersDispatch({ type: 'CLEAR_REPORT_FILTERS' });
928
912
  dispatch({ type: 'CLEAR_DASHBOARD' });
929
- }, [client?.clientId]);
930
- useEffect(() => {
931
- if (client) {
932
- setClient({ ...client, organizationId: organizationId ?? '*' });
933
- fetchDashboards(client.publicKey, organizationId);
934
- }
935
- if (Object.keys(dashboard).length > 0) {
936
- dispatch({ type: 'CLEAR_DASHBOARD' });
937
- }
938
- }, [organizationId]);
913
+ }, [publicKey]);
939
914
  if (!theme) {
940
915
  return null;
941
916
  }
942
- return (_jsx(ClientContext.Provider, { value: [isClientLoading ? null : client, isClientLoading, setClient], children: _jsx(ThemeContext.Provider, { value: [theme, setTheme], children: _jsx(SchemaDataContext.Provider, { value: [schemaData, setSchemaData], children: _jsx(DashboardContext.Provider, { value: [dashboard, dispatch], children: _jsx(DashboardConfigContext.Provider, { value: {
917
+ return (_jsx(ClientContext.Provider, { value: [
918
+ isClientLoading || !client ? null : client,
919
+ isClientLoading,
920
+ setClient,
921
+ ], children: _jsx(ThemeContext.Provider, { value: [theme, setTheme], children: _jsx(SchemaDataContext.Provider, { value: [schemaData, setSchemaData], children: _jsx(DashboardContext.Provider, { value: [dashboard, dispatch], children: _jsx(DashboardConfigContext.Provider, { value: {
943
922
  dashboardConfig: isDashboardsLoading ? {} : dashboardConfig,
944
923
  isLoading: isDashboardsLoading,
945
924
  dashboardConfigDispatch,
@@ -956,5 +935,8 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
956
935
  reports,
957
936
  reportsDispatch,
958
937
  fetchIndividualReport,
959
- }, children: children }) }) }) }) }) }) }) }));
938
+ }, children: _jsx(TenantContext.Provider, { value: {
939
+ tenants,
940
+ flags,
941
+ }, children: children }) }) }) }) }) }) }) }) }));
960
942
  };
@@ -279,6 +279,10 @@ export interface DashboardProps {
279
279
  onUserFiltersUpdated?: (filters: InternalFilter[]) => void;
280
280
  /** A callback function triggered when a chart element is clicked */
281
281
  onClickChartElement?: (data: any) => void;
282
+ /** A callback function to provide potential tenant ids your current tenants could transform to */
283
+ onTenantChanged?: (mappedTenants: {
284
+ [tenantField: string]: string[];
285
+ }) => void;
282
286
  /** An override for the pivot date bucketing. */
283
287
  dateBucket?: 'day' | 'week' | 'month' | 'year';
284
288
  /** Additional processing allowed by our backend */
@@ -1 +1 @@
1
- {"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/Dashboard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/Dashboard.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useContext, useEffect, useState, useMemo, useRef, } from 'react';
3
3
  import { ChartDisplay } from './Chart';
4
4
  import { PRIMARY_RANGE, COMPARISON_RANGE, defaultOptionsV2, getRangeFromPresetOptions, } from './DateRangePicker/dateRangePickerUtils';
5
- import { ClientContext, ThemeContext, SchemaDataContext, DashboardFiltersContext, } from './Context';
5
+ import { ClientContext, ThemeContext, SchemaDataContext, DashboardFiltersContext, TenantContext, } from './Context';
6
6
  import { useDashboard } from './hooks/useDashboard';
7
7
  import DashboardSectionContainer from './components/Dashboard/DashboardSectionContainer';
8
8
  import QuillMetricComponent from './components/Dashboard/MetricComponent';
@@ -111,7 +111,9 @@ const customOperatorOptions = {
111
111
  * ### API Reference
112
112
  * @see https://docs.quillsql.com/components/dashboard
113
113
  */
114
- export default function Dashboard({ name, hidden = false, SelectComponent = QuillSelectComponentWithCombo, MultiSelectComponent = QuillMultiSelectComponentWithCombo, ModalComponent = QuillModalComponent, ButtonComponent = MemoizedButton, SecondaryButtonComponent = MemoizedSecondaryButton, FilterTagComponent = QuillFilterPopover, PopoverComponent = MemoizedPopover, TextInputComponent = QuillTextInput, EmptyDashboardComponent = QuillEmptyDashboardComponent, DateRangePickerComponent = QuillDateRangePicker, MetricComponent = QuillMetricComponent, ChartComponent = QuillChartComponent, TableComponent = QuillTableComponent, TemplateMetricComponent = QuillTemplateMetricComponent, TemplateChartComponent = QuillTemplateChartComponent, TemplateTableComponent = QuillTemplateTableComponent, DashboardSectionComponent = DashboardSection, DashboardSectionContainerComponent = DashboardSectionContainer, FilterContainerComponent = QuillFilterContainerComponent, DashboardLoadingComponent = QuillLoadingDashboardComponent, ErrorComponent = QuillChartErrorWithAction, onClickReport, hoverActions, onChangeLoading, hideFilters, hideXAxis = false, hideYAxis = false, hideCartesianGrid = false, comparisonLineStyle = 'solid', containerStyle, className, chartContainerStyle = defaultChartContainerStyles, filters, onUserFiltersUpdated, onClickChartElement, dateBucket, additionalProcessing, hideAdminErrors = true, templateDashboardName, pagination = { rowsPerPage: 10, rowsPerRequest: 50 }, }) {
114
+ export default function Dashboard({ name, hidden = false, SelectComponent = QuillSelectComponentWithCombo, MultiSelectComponent = QuillMultiSelectComponentWithCombo, ModalComponent = QuillModalComponent, ButtonComponent = MemoizedButton, SecondaryButtonComponent = MemoizedSecondaryButton, FilterTagComponent = QuillFilterPopover, PopoverComponent = MemoizedPopover, TextInputComponent = QuillTextInput, EmptyDashboardComponent = QuillEmptyDashboardComponent, DateRangePickerComponent = QuillDateRangePicker, MetricComponent = QuillMetricComponent, ChartComponent = QuillChartComponent, TableComponent = QuillTableComponent, TemplateMetricComponent = QuillTemplateMetricComponent, TemplateChartComponent = QuillTemplateChartComponent, TemplateTableComponent = QuillTemplateTableComponent, DashboardSectionComponent = DashboardSection, DashboardSectionContainerComponent = DashboardSectionContainer, FilterContainerComponent = QuillFilterContainerComponent, DashboardLoadingComponent = QuillLoadingDashboardComponent, ErrorComponent = QuillChartErrorWithAction, onClickReport, hoverActions, onChangeLoading, hideFilters, hideXAxis = false, hideYAxis = false, hideCartesianGrid = false, comparisonLineStyle = 'solid', containerStyle, className, chartContainerStyle = defaultChartContainerStyles, filters, onUserFiltersUpdated, onClickChartElement,
115
+ // onTenantChanged,
116
+ dateBucket, additionalProcessing, hideAdminErrors = true, templateDashboardName, pagination = { rowsPerPage: 10, rowsPerRequest: 50 }, }) {
115
117
  const [userFilters, setUserFilters] = useState({});
116
118
  useEffect(() => {
117
119
  onUserFiltersUpdated?.(Object.values(userFilters));
@@ -128,6 +130,7 @@ export default function Dashboard({ name, hidden = false, SelectComponent = Quil
128
130
  });
129
131
  }, [filters, userFilters]);
130
132
  const [client, isClientLoading] = useContext(ClientContext);
133
+ const { tenants, flags } = useContext(TenantContext);
131
134
  const [theme] = useContext(ThemeContext);
132
135
  const [schemaData] = useContext(SchemaDataContext);
133
136
  const { dispatch: dashboardFiltersDispatch } = useContext(DashboardFiltersContext);
@@ -161,13 +164,41 @@ export default function Dashboard({ name, hidden = false, SelectComponent = Quil
161
164
  }, [populatedDashboardFilters]);
162
165
  // A filter value can either be a string, an array of strings for a multiselect, or a date range (that could have a comparison range)
163
166
  const [filterValues, setFilterValues] = useState({});
164
- const prevClientIdRef = useRef(undefined);
167
+ const prevClientTenantRef = useRef(undefined);
168
+ const prevFlagsRef = useRef(undefined);
165
169
  const addFilterPopoverButtonRef = useRef(null);
166
170
  const viewFiltersPopoverButtonRef = useRef(null);
167
171
  const previousFilters = useRef(undefined);
168
172
  if (!equal(previousFilters.current, filters)) {
169
173
  previousFilters.current = filters;
170
174
  }
175
+ const pendingReloadRef = useRef(false);
176
+ useEffect(() => {
177
+ if (isClientLoading) {
178
+ // Reload the dashboard when the client is loaded
179
+ pendingReloadRef.current = true;
180
+ return;
181
+ }
182
+ reload(name, true);
183
+ }, [name]);
184
+ const tenantMounted = useRef(false);
185
+ useEffect(() => {
186
+ if (!tenantMounted.current) {
187
+ tenantMounted.current = true;
188
+ return;
189
+ }
190
+ const clientIdChanged = !equal(prevClientTenantRef.current, tenants) ||
191
+ !equal(prevFlagsRef.current, flags);
192
+ if (isClientLoading) {
193
+ // Reload the dashboard when the client is loaded
194
+ pendingReloadRef.current = true;
195
+ return;
196
+ }
197
+ reload(name, clientIdChanged).then(() => {
198
+ prevClientTenantRef.current = tenants;
199
+ prevFlagsRef.current = flags;
200
+ });
201
+ }, [tenants, flags]);
171
202
  useEffect(() => {
172
203
  setFilterValues(Object.values(populatedDashboardFilters ?? {}).reduce((acc, f) => {
173
204
  acc[f.label] =
@@ -183,10 +214,16 @@ export default function Dashboard({ name, hidden = false, SelectComponent = Quil
183
214
  };
184
215
  return acc;
185
216
  }, {}));
186
- const clientIdChanged = prevClientIdRef.current !== client?.organizationId;
187
- reload(name, clientIdChanged);
188
- prevClientIdRef.current = client?.organizationId;
189
- }, [name, client?.organizationId]);
217
+ }, [populatedDashboardFilters]);
218
+ useEffect(() => {
219
+ if (pendingReloadRef.current && !isClientLoading) {
220
+ reload(name, true).then(() => {
221
+ pendingReloadRef.current = false;
222
+ prevClientTenantRef.current = tenants;
223
+ prevFlagsRef.current = flags;
224
+ });
225
+ }
226
+ }, [isClientLoading]);
190
227
  useEffect(() => {
191
228
  const dashboardDateFilter = populatedDashboardFilters?.find((f) => f.filterType === 'date_range');
192
229
  if (dashboardDateFilter) {
@@ -226,7 +263,7 @@ export default function Dashboard({ name, hidden = false, SelectComponent = Quil
226
263
  await Promise.all(referencedTables.map(async (table) => {
227
264
  const tableInfo = schemaData.schema.find((tableInfo) => tableInfo.name === table);
228
265
  if (tableInfo) {
229
- const uniqueValues = await getUniqueStringValues(tableInfo.columns, table, client);
266
+ const uniqueValues = await getUniqueStringValues(tableInfo.columns, table, client, tenants, undefined, undefined, undefined, undefined, name);
230
267
  if (uniqueValues) {
231
268
  newFieldValues[table] = {};
232
269
  Object.keys(uniqueValues).forEach((field) => {
@@ -397,9 +434,12 @@ export default function Dashboard({ name, hidden = false, SelectComponent = Quil
397
434
  Object.values(data?.sections ?? {})[0]?.length === 0)) {
398
435
  return _jsx(EmptyDashboardComponent, {});
399
436
  }
400
- if (hidden || isLoading || isClientLoading || !data?.sections) {
437
+ if (hidden || isLoading || isClientLoading || pendingReloadRef.current) {
401
438
  return (_jsx(DashboardLoadingComponent, { containerStyle: containerStyle, chartContainerStyle: chartContainerStyle }));
402
439
  }
440
+ if (!data?.sections) {
441
+ return _jsx(ErrorComponent, { containerStyle: { height: 100 }, label: "Error loading dashboard" });
442
+ }
403
443
  return (_jsxs("div", { className: className, ...styleToProps(containerStyle), children: [_jsxs("div", { style: { display: 'flex', flexDirection: 'row', alignItems: 'center' }, children: [!hideFilters && (_jsxs(FilterContainerComponent, { children: [(populatedDashboardFilters ?? []).map((filter) => (_jsx(DashboardFilter, { filter: {
404
444
  ...filter,
405
445
  ...(filter.filterType === 'date_range' && {
@@ -437,7 +477,7 @@ export default function Dashboard({ name, hidden = false, SelectComponent = Quil
437
477
  delete updatedFilters[filter.field];
438
478
  return updatedFilters;
439
479
  });
440
- }, containerStyle: { width: 300, marginBottom: 10 } }, `userFilter_${index}_${filter ? filterSentence(filter) : ''}`))), _jsxs("div", { style: {
480
+ }, containerStyle: { width: 300, marginBottom: 10 }, dashboardName: name }, `userFilter_${index}_${filter ? filterSentence(filter) : ''}`))), _jsxs("div", { style: {
441
481
  display: 'flex',
442
482
  flexDirection: 'column',
443
483
  }, ref: addFilterPopoverButtonRef, children: [_jsx(SecondaryButtonComponent, { onClick: () => {
@@ -3,53 +3,16 @@ interface BaseQuillProviderProps {
3
3
  publicKey: string;
4
4
  theme?: QuillTheme;
5
5
  children?: React.ReactNode;
6
- }
7
- interface WithOrganizationId extends BaseQuillProviderProps {
8
- organizationId: string;
9
- queryEndpoint?: never;
10
- queryHeaders?: never;
11
- withCredentials?: never;
12
- }
13
- interface WithQueryEndpoint extends BaseQuillProviderProps {
14
- organizationId?: string;
6
+ tenants?: {
7
+ tenantField: string;
8
+ tenantIds: (string | number)[];
9
+ }[] | (string | number)[] | (string | number)[];
10
+ flags?: string[];
15
11
  queryEndpoint: string;
16
12
  queryHeaders: object;
17
13
  withCredentials?: boolean;
18
14
  }
19
- export type QuillProviderProps = WithOrganizationId | WithQueryEndpoint;
20
- /**
21
- * Props for the QuillProvider component.
22
- */
23
- export type IQuillProviderProps = {
24
- /**
25
- * Your Quill public key.
26
- */
27
- publicKey: string;
28
- /**
29
- * The url of the query endpoint if using self-hosted.
30
- */
31
- queryEndpoint: string | never;
32
- /**
33
- * Request headers passed to queryEndpoint, if self-hosted.
34
- */
35
- queryHeaders: object | never;
36
- /**
37
- * The organization id of this request, if any.
38
- */
39
- organizationId?: string;
40
- /**
41
- * The theme object used to customize all quill components.
42
- */
43
- theme?: QuillTheme;
44
- /**
45
- * Whether to pass credentials to the custom query endpoint, if any.
46
- */
47
- withCredentials?: boolean;
48
- /**
49
- * The children of this provider (typically, this is the rest of your app).
50
- */
51
- children?: React.ReactNode;
52
- };
15
+ export type QuillProviderProps = BaseQuillProviderProps;
53
16
  /**
54
17
  * ## Quill Theme
55
18
  * Customizable styles used throughout Quill.
@@ -146,7 +109,6 @@ export declare const defaultQuillTheme: {
146
109
  * passing custom themes as well as passing your existing components gets you
147
110
  * pixel-perfect dashboards in a fraction of the time.
148
111
  *
149
- * Our guide on custom themes is coming soon.
150
112
  *
151
113
  * ### Endpoint Authorization
152
114
  * When self-hosting the server SDK, you might need extra authentication measures
@@ -154,11 +116,10 @@ export declare const defaultQuillTheme: {
154
116
  * with any requests to your custom endpoint, you also can pass a `withCredentials`
155
117
  * boolean.
156
118
  *
157
- * Our guide on endpoint authorization is coming soon.
158
119
  *
159
120
  * ### Dashboard API
160
121
  * @see https://docs.quillsql.com/components/quill-provider
161
122
  */
162
- declare const QuillProvider: ({ organizationId, publicKey, queryEndpoint, queryHeaders, children, theme, withCredentials, }: QuillProviderProps) => import("react/jsx-runtime").JSX.Element;
123
+ declare const QuillProvider: ({ tenants, flags, publicKey, queryEndpoint, queryHeaders, children, theme, withCredentials, }: QuillProviderProps) => import("react/jsx-runtime").JSX.Element;
163
124
  export default QuillProvider;
164
125
  //# sourceMappingURL=QuillProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QuillProvider.d.ts","sourceRoot":"","sources":["../../src/QuillProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,sBAAsB;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,UAAU,kBAAmB,SAAQ,sBAAsB;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,eAAe,CAAC,EAAE,KAAK,CAAC;CACzB;AAED,UAAU,iBAAkB,SAAQ,sBAAsB;IACxD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAAG,iBAAiB,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,aAAa,EAAE,MAAM,GAAG,KAAK,CAAC;IAE9B;;OAEG;IACH,YAAY,EAAE,MAAM,GAAG,KAAK,CAAC;IAE7B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;CAwB7B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,QAAA,MAAM,aAAa,kGAQhB,kBAAkB,4CAapB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"QuillProvider.d.ts","sourceRoot":"","sources":["../../src/QuillProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,sBAAsB;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EACJ;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;KAAE,EAAE,GACzD,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GACnB,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;CAwB7B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,QAAA,MAAM,aAAa,kGAShB,kBAAkB,4CAcpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -72,7 +72,6 @@ export const defaultQuillTheme = {
72
72
  * passing custom themes as well as passing your existing components gets you
73
73
  * pixel-perfect dashboards in a fraction of the time.
74
74
  *
75
- * Our guide on custom themes is coming soon.
76
75
  *
77
76
  * ### Endpoint Authorization
78
77
  * When self-hosting the server SDK, you might need extra authentication measures
@@ -80,12 +79,11 @@ export const defaultQuillTheme = {
80
79
  * with any requests to your custom endpoint, you also can pass a `withCredentials`
81
80
  * boolean.
82
81
  *
83
- * Our guide on endpoint authorization is coming soon.
84
82
  *
85
83
  * ### Dashboard API
86
84
  * @see https://docs.quillsql.com/components/quill-provider
87
85
  */
88
- const QuillProvider = ({ organizationId, publicKey, queryEndpoint = QUILL_SERVER + QUILL_QUERY_ENDPOINT, queryHeaders, children, theme = defaultQuillTheme, withCredentials, }) => {
89
- return (_jsx(ContextProvider, { initialTheme: theme, publicKey: publicKey, organizationId: organizationId, queryEndpoint: queryEndpoint, queryHeaders: queryHeaders ?? undefined, withCredentials: withCredentials, children: children }));
86
+ const QuillProvider = ({ tenants, flags, publicKey, queryEndpoint = QUILL_SERVER + QUILL_QUERY_ENDPOINT, queryHeaders, children, theme = defaultQuillTheme, withCredentials, }) => {
87
+ return (_jsx(ContextProvider, { tenants: tenants, flags: flags, initialTheme: theme, publicKey: publicKey, queryEndpoint: queryEndpoint, queryHeaders: queryHeaders ?? undefined, withCredentials: withCredentials, children: children }));
90
88
  };
91
89
  export default QuillProvider;
@@ -9,6 +9,10 @@ export interface ReportBuilderProps {
9
9
  initialTableName?: string;
10
10
  /** The dashboard to add items to once they have been created. */
11
11
  destinationDashboard?: string;
12
+ /**
13
+ * The title of the ChartBuilder dialog.
14
+ */
15
+ chartBuilderTitle?: string;
12
16
  /** The current organization. */
13
17
  organizationName?: string;
14
18
  /** A primary button component. */
@@ -276,6 +280,10 @@ export interface ReportBuilderProps {
276
280
  isChartBuilderHorizontalView?: boolean;
277
281
  /** A callback function triggered when a chart element is clicked */
278
282
  onClickChartElement?: (element: any) => void;
283
+ /**
284
+ * A list of flags that can be applied to the resulting report (for single tenant per database setups)
285
+ */
286
+ flagsList?: string[];
279
287
  }
280
288
  /**
281
289
  * Quill Report Builder
@@ -308,5 +316,5 @@ export interface ReportBuilderProps {
308
316
  * ### Report Builder API
309
317
  * @see https://docs.quillsql.com/components/report-builder
310
318
  */
311
- export default function ReportBuilder({ initialTableName, onSubmitEditReport, onSubmitCreateReport, onDiscardChanges, onSaveChanges, onCloseChartBuilder, destinationDashboard, organizationName, ButtonComponent, SecondaryButtonComponent, DeleteButtonComponent, ModalComponent, TextInputComponent, SelectComponent, MultiSelectComponent, TableComponent, PopoverComponent, TabsComponent, SidebarComponent, ContainerComponent, SelectColumnComponent, DraggableColumnComponent, SidebarHeadingComponent, FilterPopoverComponent, SortPopoverComponent, LimitPopoverComponent, CardComponent, LabelComponent, HeaderComponent, SubHeaderComponent, TextComponent, ErrorMessageComponent, ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer, PivotRowContainer, PivotColumnContainer, LoadingComponent, ColumnSearchEmptyState, ChartBuilderFormContainer, ChartBuilderModalComponent, isAdminEnabled, isAIEnabled, containerStyle, className, pivotRecommendationsEnabled, reportId, hideCopySQL, isChartBuilderHorizontalView, onClickChartElement, }: ReportBuilderProps): import("react/jsx-runtime").JSX.Element;
319
+ export default function ReportBuilder({ initialTableName, onSubmitEditReport, onSubmitCreateReport, onDiscardChanges, onSaveChanges, onCloseChartBuilder, destinationDashboard, chartBuilderTitle, organizationName, ButtonComponent, SecondaryButtonComponent, DeleteButtonComponent, ModalComponent, TextInputComponent, SelectComponent, MultiSelectComponent, TableComponent, PopoverComponent, TabsComponent, SidebarComponent, ContainerComponent, SelectColumnComponent, DraggableColumnComponent, SidebarHeadingComponent, FilterPopoverComponent, SortPopoverComponent, LimitPopoverComponent, CardComponent, LabelComponent, HeaderComponent, SubHeaderComponent, TextComponent, ErrorMessageComponent, ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer, PivotRowContainer, PivotColumnContainer, LoadingComponent, ColumnSearchEmptyState, ChartBuilderFormContainer, ChartBuilderModalComponent, isAdminEnabled, isAIEnabled, containerStyle, className, pivotRecommendationsEnabled, reportId, hideCopySQL, isChartBuilderHorizontalView, onClickChartElement, flagsList, }: ReportBuilderProps): import("react/jsx-runtime").JSX.Element;
312
320
  //# sourceMappingURL=ReportBuilder.d.ts.map