@quillsql/react 2.11.29 → 2.12.0
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.
- package/dist/cjs/Chart.d.ts +29 -18
- package/dist/cjs/Chart.d.ts.map +1 -1
- package/dist/cjs/Chart.js +41 -20
- package/dist/cjs/ChartBuilder.d.ts +9 -5
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +34 -38
- package/dist/cjs/ChartEditor.d.ts +10 -6
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +11 -9
- package/dist/cjs/Dashboard.d.ts +53 -38
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +38 -19
- package/dist/cjs/ReportBuilder.d.ts +3 -3
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +20 -20
- package/dist/cjs/SQLEditor.d.ts +5 -5
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +2 -2
- package/dist/cjs/Table.d.ts +6 -6
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +14 -12
- package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarChart.js +8 -1
- package/dist/cjs/components/Chart/ChartSkeleton.d.ts +2 -1
- package/dist/cjs/components/Chart/ChartSkeleton.d.ts.map +1 -1
- package/dist/cjs/components/Chart/ChartSkeleton.js +5 -1
- package/dist/cjs/components/Chart/LineChart.d.ts +2 -1
- package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/LineChart.js +19 -11
- package/dist/cjs/components/Dashboard/ChartComponent.d.ts +2 -2
- package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/ChartComponent.js +4 -4
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +12 -1
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DashboardFilter.js +26 -2
- package/dist/cjs/components/Dashboard/DataLoader.d.ts +2 -2
- package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.js +3 -0
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts +2 -2
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/MetricComponent.js +6 -6
- package/dist/cjs/components/Dashboard/TableComponent.d.ts +2 -2
- package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/TableComponent.js +6 -6
- package/dist/cjs/components/QuillMultiSelect.d.ts +11 -0
- package/dist/cjs/components/QuillMultiSelect.d.ts.map +1 -0
- package/dist/cjs/components/QuillMultiSelect.js +183 -0
- package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelect.js +0 -1
- package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.js +1 -0
- package/dist/cjs/components/UiComponents.d.ts +10 -0
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +16 -18
- package/dist/cjs/hooks/useDashboard.d.ts +1 -1
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +4 -4
- package/dist/cjs/hooks/useExport.d.ts +1 -1
- package/dist/cjs/hooks/useExport.d.ts.map +1 -1
- package/dist/cjs/hooks/useExport.js +2 -2
- package/dist/cjs/hooks/useFormat.d.ts +1 -1
- package/dist/cjs/hooks/useFormat.d.ts.map +1 -1
- package/dist/cjs/hooks/useFormat.js +2 -2
- package/dist/cjs/hooks/useQuill.d.ts +2 -2
- package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useQuill.js +12 -11
- package/dist/cjs/index.d.ts +1 -3
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -3
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +3 -1
- package/dist/cjs/models/Filter.d.ts +7 -0
- package/dist/cjs/models/Filter.d.ts.map +1 -0
- package/dist/cjs/models/Filter.js +2 -0
- package/dist/cjs/utils/dashboard.d.ts +2 -2
- package/dist/cjs/utils/dashboard.d.ts.map +1 -1
- package/dist/cjs/utils/dashboard.js +2 -14
- package/dist/cjs/utils/errorProcessing.d.ts +2 -0
- package/dist/cjs/utils/errorProcessing.d.ts.map +1 -0
- package/dist/cjs/utils/errorProcessing.js +12 -0
- package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/tableProcessing.js +3 -0
- package/dist/cjs/utils/valueFormatter.js +1 -1
- package/dist/esm/Chart.d.ts +29 -18
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +41 -20
- package/dist/esm/ChartBuilder.d.ts +9 -5
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +35 -39
- package/dist/esm/ChartEditor.d.ts +10 -6
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +12 -10
- package/dist/esm/Dashboard.d.ts +53 -38
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +38 -19
- package/dist/esm/ReportBuilder.d.ts +3 -3
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +20 -20
- package/dist/esm/SQLEditor.d.ts +5 -5
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +2 -2
- package/dist/esm/Table.d.ts +6 -6
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +14 -12
- package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarChart.js +8 -1
- package/dist/esm/components/Chart/ChartSkeleton.d.ts +2 -1
- package/dist/esm/components/Chart/ChartSkeleton.d.ts.map +1 -1
- package/dist/esm/components/Chart/ChartSkeleton.js +3 -1
- package/dist/esm/components/Chart/LineChart.d.ts +2 -1
- package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/LineChart.js +19 -11
- package/dist/esm/components/Dashboard/ChartComponent.d.ts +2 -2
- package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/ChartComponent.js +4 -4
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts +12 -1
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DashboardFilter.js +26 -2
- package/dist/esm/components/Dashboard/DataLoader.d.ts +2 -2
- package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DataLoader.js +3 -0
- package/dist/esm/components/Dashboard/MetricComponent.d.ts +2 -2
- package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/MetricComponent.js +6 -6
- package/dist/esm/components/Dashboard/TableComponent.d.ts +2 -2
- package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/TableComponent.js +6 -6
- package/dist/esm/components/QuillMultiSelect.d.ts +11 -0
- package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -0
- package/dist/esm/components/QuillMultiSelect.js +178 -0
- package/dist/esm/components/QuillSelect.d.ts.map +1 -1
- package/dist/esm/components/QuillSelect.js +0 -1
- package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.js +1 -0
- package/dist/esm/components/UiComponents.d.ts +10 -0
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +16 -18
- package/dist/esm/hooks/useDashboard.d.ts +1 -1
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +4 -4
- package/dist/esm/hooks/useExport.d.ts +1 -1
- package/dist/esm/hooks/useExport.d.ts.map +1 -1
- package/dist/esm/hooks/useExport.js +2 -2
- package/dist/esm/hooks/useFormat.d.ts +1 -1
- package/dist/esm/hooks/useFormat.d.ts.map +1 -1
- package/dist/esm/hooks/useFormat.js +2 -2
- package/dist/esm/hooks/useQuill.d.ts +2 -2
- package/dist/esm/hooks/useQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useQuill.js +12 -11
- package/dist/esm/index.d.ts +1 -3
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +0 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +3 -1
- package/dist/esm/models/Filter.d.ts +7 -0
- package/dist/esm/models/Filter.d.ts.map +1 -0
- package/dist/esm/models/Filter.js +1 -0
- package/dist/esm/utils/dashboard.d.ts +2 -2
- package/dist/esm/utils/dashboard.d.ts.map +1 -1
- package/dist/esm/utils/dashboard.js +2 -14
- package/dist/esm/utils/errorProcessing.d.ts +2 -0
- package/dist/esm/utils/errorProcessing.d.ts.map +1 -0
- package/dist/esm/utils/errorProcessing.js +8 -0
- package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
- package/dist/esm/utils/tableProcessing.js +3 -0
- package/dist/esm/utils/valueFormatter.js +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { ReactNode } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { QuillReport } from './Dashboard';
|
|
3
3
|
/**
|
|
4
4
|
* Props for the Quill ChartEditor component.
|
|
5
5
|
*/
|
|
@@ -9,7 +9,7 @@ export interface ChartEditorProps {
|
|
|
9
9
|
/** A callback that sets the isOpen state. */
|
|
10
10
|
setIsOpen: (isOpen: boolean) => void;
|
|
11
11
|
/** The id of the chart that is being edited. */
|
|
12
|
-
|
|
12
|
+
reportId: string;
|
|
13
13
|
/** Whether the editor has administrative priveleges. */
|
|
14
14
|
isAdmin?: boolean;
|
|
15
15
|
/** The title of the chart builder form. */
|
|
@@ -19,7 +19,7 @@ export interface ChartEditorProps {
|
|
|
19
19
|
/**
|
|
20
20
|
* A callback that is fired when the add to dashboard flow has been completed.
|
|
21
21
|
*/
|
|
22
|
-
onAddToDashboardComplete?: (
|
|
22
|
+
onAddToDashboardComplete?: (report: QuillReport) => void;
|
|
23
23
|
/** A callback that is fired when the item is deleted. */
|
|
24
24
|
onDelete?: () => void;
|
|
25
25
|
/** A select component. */
|
|
@@ -114,6 +114,10 @@ export interface ChartEditorProps {
|
|
|
114
114
|
}[];
|
|
115
115
|
isLoading?: boolean;
|
|
116
116
|
}) => JSX.Element;
|
|
117
|
+
/**
|
|
118
|
+
* A loading component to show in the pivot modal while suggestions load.
|
|
119
|
+
*/
|
|
120
|
+
LoadingComponent?: () => JSX.Element;
|
|
117
121
|
/**
|
|
118
122
|
* A container for each row of inputs for the ChartBuilder form.
|
|
119
123
|
*/
|
|
@@ -169,7 +173,7 @@ export interface ChartEditorProps {
|
|
|
169
173
|
* @example
|
|
170
174
|
* ```js
|
|
171
175
|
* // Usage without custom components
|
|
172
|
-
* <ChartEditor isOpen={true}
|
|
176
|
+
* <ChartEditor isOpen={true} reportId="1234" />
|
|
173
177
|
* ```
|
|
174
178
|
*
|
|
175
179
|
* @example
|
|
@@ -178,7 +182,7 @@ export interface ChartEditorProps {
|
|
|
178
182
|
* <ChartEditor
|
|
179
183
|
* isOpen={isOpen}
|
|
180
184
|
* setIsOpen={setIsOpen}
|
|
181
|
-
*
|
|
185
|
+
* reportId="1234"
|
|
182
186
|
* Button={MyButton}
|
|
183
187
|
* Modal={MyModal}
|
|
184
188
|
* />
|
|
@@ -187,5 +191,5 @@ export interface ChartEditorProps {
|
|
|
187
191
|
* ### Chart Editor API
|
|
188
192
|
* @see https://docs.quillsql.com/components/chart-editor
|
|
189
193
|
*/
|
|
190
|
-
export default function ChartEditor({ isOpen,
|
|
194
|
+
export default function ChartEditor({ isOpen, reportId, isAdmin, destinationDashboard, chartBuilderTitle, chartBuilderButtonLabel, onAddToDashboardComplete, organizationName, isHorizontalView, onDelete, setIsOpen, SelectComponent, TextInputComponent, ButtonComponent, SecondaryButtonComponent, HeaderComponent, SubHeaderComponent, LabelComponent, TextComponent, DeleteButtonComponent, ModalComponent, CardComponent, PopoverComponent, LoadingComponent, TableComponent, ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer, PivotRowContainer, PivotColumnContainer, ErrorMessageComponent, ChartBuilderFormContainer, hideDeleteButton, hideSubmitButton, }: ChartEditorProps): import("react/jsx-runtime").JSX.Element;
|
|
191
195
|
//# sourceMappingURL=ChartEditor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartEditor.d.ts","sourceRoot":"","sources":["../../src/ChartEditor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EACZ,SAAS,EAKV,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ChartEditor.d.ts","sourceRoot":"","sources":["../../src/ChartEditor.tsx"],"names":[],"mappings":"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"}
|
package/dist/cjs/ChartEditor.js
CHANGED
|
@@ -12,6 +12,7 @@ const UiComponents_1 = require("./components/UiComponents");
|
|
|
12
12
|
const dataFetcher_1 = require("./utils/dataFetcher");
|
|
13
13
|
const merge_1 = require("./utils/merge");
|
|
14
14
|
const QuillCard_1 = require("./components/QuillCard");
|
|
15
|
+
const errorProcessing_1 = require("./utils/errorProcessing");
|
|
15
16
|
/**
|
|
16
17
|
* ### Quill Chart Editor
|
|
17
18
|
*
|
|
@@ -20,7 +21,7 @@ const QuillCard_1 = require("./components/QuillCard");
|
|
|
20
21
|
* @example
|
|
21
22
|
* ```js
|
|
22
23
|
* // Usage without custom components
|
|
23
|
-
* <ChartEditor isOpen={true}
|
|
24
|
+
* <ChartEditor isOpen={true} reportId="1234" />
|
|
24
25
|
* ```
|
|
25
26
|
*
|
|
26
27
|
* @example
|
|
@@ -29,7 +30,7 @@ const QuillCard_1 = require("./components/QuillCard");
|
|
|
29
30
|
* <ChartEditor
|
|
30
31
|
* isOpen={isOpen}
|
|
31
32
|
* setIsOpen={setIsOpen}
|
|
32
|
-
*
|
|
33
|
+
* reportId="1234"
|
|
33
34
|
* Button={MyButton}
|
|
34
35
|
* Modal={MyModal}
|
|
35
36
|
* />
|
|
@@ -38,14 +39,14 @@ const QuillCard_1 = require("./components/QuillCard");
|
|
|
38
39
|
* ### Chart Editor API
|
|
39
40
|
* @see https://docs.quillsql.com/components/chart-editor
|
|
40
41
|
*/
|
|
41
|
-
function ChartEditor({ isOpen,
|
|
42
|
+
function ChartEditor({ isOpen, reportId, isAdmin = false, destinationDashboard, chartBuilderTitle = 'Edit chart', chartBuilderButtonLabel, onAddToDashboardComplete, organizationName, isHorizontalView = true, onDelete, setIsOpen, SelectComponent, TextInputComponent, ButtonComponent, SecondaryButtonComponent, HeaderComponent, SubHeaderComponent, LabelComponent, TextComponent, DeleteButtonComponent, ModalComponent = UiComponents_1.MemoizedModal, CardComponent = QuillCard_1.QuillCard, PopoverComponent, LoadingComponent = UiComponents_1.QuillLoadingComponent, TableComponent = UiComponents_1.QuillTableComponent, ChartBuilderInputRowContainer = UiComponents_1.QuillChartBuilderInputRowContainer, ChartBuilderInputColumnContainer = UiComponents_1.QuillChartBuilderInputColumnContainer, PivotRowContainer = UiComponents_1.QuillPivotRowContainer, PivotColumnContainer = UiComponents_1.QuillPivotColumnContainer, ErrorMessageComponent = UiComponents_1.QuillErrorMessageComponent, ChartBuilderFormContainer = UiComponents_1.QuillChartBuilderFormContainer, hideDeleteButton = false, hideSubmitButton = false, }) {
|
|
42
43
|
const parentRef = (0, react_1.useRef)(null);
|
|
43
44
|
const [modalWidth, setModalWidth] = (0, react_1.useState)(200);
|
|
44
45
|
const [modalHeight, setModalHeight] = (0, react_1.useState)(200);
|
|
45
46
|
const { dispatch, dashboard } = (0, react_1.useContext)(Context_1.DashboardContext);
|
|
46
47
|
const { dashboardFilters } = (0, react_1.useContext)(Context_1.DashboardFiltersContext);
|
|
47
48
|
const [client, _] = (0, react_1.useContext)(Context_1.ClientContext);
|
|
48
|
-
const [dashboardItem, setDashboardItem] = (0, react_1.useState)(dashboard?.[
|
|
49
|
+
const [dashboardItem, setDashboardItem] = (0, react_1.useState)(dashboard?.[reportId]);
|
|
49
50
|
const [isLoading, setIsLoading] = (0, react_1.useState)(false);
|
|
50
51
|
const dateFilter = Object.values(dashboardFilters).find((filter) => filter.filterType == 'date_range');
|
|
51
52
|
const dateRange = dateFilter?.startDate
|
|
@@ -76,7 +77,7 @@ function ChartEditor({ isOpen, chartId, isAdmin = false, destinationDashboard, c
|
|
|
76
77
|
try {
|
|
77
78
|
const hostedBody = {
|
|
78
79
|
metadata: {
|
|
79
|
-
dashboardItemId:
|
|
80
|
+
dashboardItemId: reportId,
|
|
80
81
|
orgId: client?.customerId || '*',
|
|
81
82
|
task: 'item',
|
|
82
83
|
filters: [],
|
|
@@ -85,10 +86,11 @@ function ChartEditor({ isOpen, chartId, isAdmin = false, destinationDashboard, c
|
|
|
85
86
|
},
|
|
86
87
|
};
|
|
87
88
|
const cloudBody = {
|
|
88
|
-
id:
|
|
89
|
+
id: reportId,
|
|
89
90
|
filters: [],
|
|
90
91
|
};
|
|
91
92
|
const resp = await (0, dataFetcher_1.getData)(client, 'itempost', 'omit', hostedBody, cloudBody);
|
|
93
|
+
(0, errorProcessing_1.processFilterErrorList)(resp);
|
|
92
94
|
if (resp && resp.name !== 'error') {
|
|
93
95
|
if (resp.compareRows) {
|
|
94
96
|
(0, merge_1.mergeComparisonRange)(resp);
|
|
@@ -99,7 +101,7 @@ function ChartEditor({ isOpen, chartId, isAdmin = false, destinationDashboard, c
|
|
|
99
101
|
});
|
|
100
102
|
dispatch({
|
|
101
103
|
type: 'UPDATE_DASHBOARD_ITEM',
|
|
102
|
-
id:
|
|
104
|
+
id: reportId,
|
|
103
105
|
data: {
|
|
104
106
|
...resp,
|
|
105
107
|
filtersApplied: dashboardFilters,
|
|
@@ -120,13 +122,13 @@ function ChartEditor({ isOpen, chartId, isAdmin = false, destinationDashboard, c
|
|
|
120
122
|
return () => {
|
|
121
123
|
isSubscribed = false;
|
|
122
124
|
};
|
|
123
|
-
}, [client,
|
|
125
|
+
}, [client, reportId]);
|
|
124
126
|
if (!dashboardItem) {
|
|
125
127
|
return (0, jsx_runtime_1.jsx)("div", {});
|
|
126
128
|
}
|
|
127
129
|
return ((0, jsx_runtime_1.jsx)("div", { ref: parentRef, style: { height: '100%' }, children: (0, jsx_runtime_1.jsx)(ModalComponent, { isOpen: isOpen, setIsOpen: setIsOpen, title: chartBuilderTitle || 'Add to dashboard',
|
|
128
130
|
// For isHorizontalView, use full viewport size minus 80px for padding,
|
|
129
131
|
// otherwise use the default layout method of the modal (contents).
|
|
130
|
-
width: isHorizontalView ? modalWidth : undefined, height: isHorizontalView ? modalHeight : undefined, children: (0, jsx_runtime_1.jsx)(ChartBuilder_1.default, {
|
|
132
|
+
width: isHorizontalView ? modalWidth : undefined, height: isHorizontalView ? modalHeight : undefined, children: (0, jsx_runtime_1.jsx)(ChartBuilder_1.default, { report: dashboardItem, rows: dashboardItem.rows, columns: dashboardItem.columns, query: dashboardItem.queryString, pivot: dashboardItem.pivot, isOpen: isOpen, setIsOpen: setIsOpen, showTableFormatOptions: isAdmin, showDateFieldOptions: isAdmin, showAccessControlOptions: isAdmin, showDashboardDropdown: isAdmin, destinationDashboard: destinationDashboard, onAddToDashboardComplete: onAddToDashboardComplete, dateRange: dateRange, SelectComponent: SelectComponent, TextInputComponent: TextInputComponent, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, HeaderComponent: HeaderComponent, SubHeaderComponent: SubHeaderComponent, LabelComponent: LabelComponent, TextComponent: TextComponent, DeleteButtonComponent: DeleteButtonComponent, CardComponent: CardComponent, ModalComponent: ModalComponent, isHorizontalView: isHorizontalView, PopoverComponent: PopoverComponent, TableComponent: TableComponent, ChartBuilderInputRowContainer: ChartBuilderInputRowContainer, ChartBuilderInputColumnContainer: ChartBuilderInputColumnContainer, PivotRowContainer: PivotRowContainer, PivotColumnContainer: PivotColumnContainer, ErrorMessageComponent: ErrorMessageComponent, LoadingComponent: LoadingComponent, onDelete: onDelete, title: chartBuilderTitle, buttonLabel: chartBuilderButtonLabel, organizationName: organizationName, hideSubmitButton: hideSubmitButton, hideDeleteButton: hideDeleteButton, FormContainer: ChartBuilderFormContainer }) }) }));
|
|
131
133
|
}
|
|
132
134
|
exports.default = ChartEditor;
|
package/dist/cjs/Dashboard.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import React, { ReactNode, ChangeEvent } from 'react';
|
|
2
2
|
import { Column } from './models/Columns';
|
|
3
|
+
import { Filter } from './models/Filter';
|
|
3
4
|
/**
|
|
4
5
|
* The props passed into the ChartComponent, TableComponent, and MetricComponent
|
|
5
6
|
* functions in the dashboard.
|
|
6
7
|
*/
|
|
7
|
-
export interface
|
|
8
|
-
|
|
9
|
-
onClick?: (
|
|
8
|
+
export interface QuillReportProps {
|
|
9
|
+
report: QuillReport;
|
|
10
|
+
onClick?: (report: QuillReport) => void;
|
|
10
11
|
isLoading?: boolean;
|
|
11
12
|
error?: string;
|
|
12
13
|
children?: ReactNode;
|
|
@@ -16,31 +17,31 @@ export interface DashboardItemProps {
|
|
|
16
17
|
*/
|
|
17
18
|
export type AxisFormat = 'percent' | 'dollar_amount' | 'dollar_cents' | 'whole_number' | 'one_decimal_place' | 'two_decimal_places' | 'string' | 'yyyy' | 'MMM_yyyy' | 'MMM_dd_yyyy' | 'hh_ap_pm' | 'MMM_dd-MMM_dd' | 'MMM_dd_hh:mm_ap_pm' | 'wo, yyyy';
|
|
18
19
|
/**
|
|
19
|
-
* ##
|
|
20
|
-
*
|
|
20
|
+
* ## QuillReport
|
|
21
|
+
* Represents an individual item on a dashboard.
|
|
21
22
|
*
|
|
22
23
|
* Dashboard items can be charts, metric tiles, tables, etc. and can be styled
|
|
23
24
|
* however you'd like.
|
|
24
25
|
*
|
|
25
26
|
* ### API Reference
|
|
26
|
-
* @see https://docs.quillsql.com/components/quill-provider#
|
|
27
|
+
* @see https://docs.quillsql.com/components/quill-provider#quill-report
|
|
27
28
|
*/
|
|
28
|
-
export interface
|
|
29
|
-
/** The
|
|
29
|
+
export interface QuillReport {
|
|
30
|
+
/** The report's unique id. */
|
|
30
31
|
id: string;
|
|
31
|
-
/** The name of the
|
|
32
|
+
/** The name of the report. */
|
|
32
33
|
name: string;
|
|
33
|
-
/** The name of the dashboard this
|
|
34
|
+
/** The name of the dashboard this report belongs to. */
|
|
34
35
|
dashboardName: string;
|
|
35
|
-
/** The rows of data returned from this
|
|
36
|
+
/** The rows of data returned from this report's query. */
|
|
36
37
|
rows: {
|
|
37
38
|
[key: string]: string;
|
|
38
39
|
}[];
|
|
39
|
-
/** The columns data returned from this
|
|
40
|
+
/** The columns data returned from this report's query. */
|
|
40
41
|
columns: Column[];
|
|
41
42
|
/** The type of this chart. */
|
|
42
43
|
chartType: string;
|
|
43
|
-
/** The table and field this
|
|
44
|
+
/** The table and field this report uses for date filtering, if any. */
|
|
44
45
|
dateField: {
|
|
45
46
|
table: string;
|
|
46
47
|
field: string;
|
|
@@ -61,15 +62,15 @@ export interface DashboardItem {
|
|
|
61
62
|
/** The formatted comparison range aggregation value, if any. */
|
|
62
63
|
comparisonAggregation?: string;
|
|
63
64
|
/** The percent change in the aggragations, if any. */
|
|
64
|
-
aggregationPercentChange?:
|
|
65
|
+
aggregationPercentChange?: number;
|
|
65
66
|
/** The label of the xAxis. */
|
|
66
67
|
xAxisLabel: string;
|
|
67
|
-
/** The field to use for this
|
|
68
|
+
/** The field to use for this report's xAxis. */
|
|
68
69
|
xAxisField: string;
|
|
69
|
-
/** The format for this
|
|
70
|
+
/** The format for this report's xAxis. */
|
|
70
71
|
xAxisFormat: AxisFormat;
|
|
71
72
|
/**
|
|
72
|
-
* A list of metadata about the yAxes of this
|
|
73
|
+
* A list of metadata about the yAxes of this report.
|
|
73
74
|
*/
|
|
74
75
|
yAxisFields: {
|
|
75
76
|
/** The field for this yAxis. */
|
|
@@ -80,17 +81,17 @@ export interface DashboardItem {
|
|
|
80
81
|
format: AxisFormat;
|
|
81
82
|
}[];
|
|
82
83
|
/**
|
|
83
|
-
* The relative ordering of this
|
|
84
|
-
*
|
|
84
|
+
* The relative ordering of this report in relation to its siblings. Ordering
|
|
85
|
+
* starts at 1 and counts up (eg. 1, 2, 3, etc.).
|
|
85
86
|
*
|
|
86
|
-
* Also note that
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
* the
|
|
87
|
+
* Also note that reports in the same section are first grouped by `chartType`
|
|
88
|
+
* and then each group is sorted by `order`. Currently, the first group is the
|
|
89
|
+
* `metric` reports and the last group is the `table` reports with the rest of
|
|
90
|
+
* the reports in between.
|
|
90
91
|
*/
|
|
91
92
|
order: number;
|
|
92
93
|
/**
|
|
93
|
-
* The rows of data returned from this
|
|
94
|
+
* The rows of data returned from this report's query over the comparison date
|
|
94
95
|
* range as opposed to the primary date range.
|
|
95
96
|
*/
|
|
96
97
|
compareRows: {
|
|
@@ -110,24 +111,24 @@ export interface DashboardProps {
|
|
|
110
111
|
*/
|
|
111
112
|
name?: string;
|
|
112
113
|
/** A component that wraps a dashboard item for 'metric' chart types. */
|
|
113
|
-
MetricComponent?: ({
|
|
114
|
-
|
|
115
|
-
onClick?: (
|
|
114
|
+
MetricComponent?: ({ report, onClick, isLoading, error, }: {
|
|
115
|
+
report: QuillReport;
|
|
116
|
+
onClick?: (report: QuillReport) => void;
|
|
116
117
|
isLoading?: boolean;
|
|
117
118
|
error?: string;
|
|
118
119
|
}) => JSX.Element;
|
|
119
120
|
/** A component that wraps a dashboard item for non-table, non-metric chart types. */
|
|
120
|
-
ChartComponent?: ({
|
|
121
|
-
|
|
122
|
-
onClick?: (
|
|
121
|
+
ChartComponent?: ({ report, onClick, isLoading, error, children, }: {
|
|
122
|
+
report: QuillReport;
|
|
123
|
+
onClick?: (report: QuillReport) => void;
|
|
123
124
|
isLoading?: boolean;
|
|
124
125
|
error?: string;
|
|
125
126
|
children?: ReactNode;
|
|
126
127
|
}) => JSX.Element;
|
|
127
128
|
/** A component that wraps a dashboard item for 'table' chart types. */
|
|
128
|
-
TableComponent?: ({
|
|
129
|
-
|
|
130
|
-
onClick?: (
|
|
129
|
+
TableComponent?: ({ report, onClick, isLoading, error, }: {
|
|
130
|
+
report: QuillReport;
|
|
131
|
+
onClick?: (report: QuillReport) => void;
|
|
131
132
|
isLoading?: boolean;
|
|
132
133
|
error?: string;
|
|
133
134
|
}) => JSX.Element;
|
|
@@ -142,10 +143,22 @@ export interface DashboardProps {
|
|
|
142
143
|
}[];
|
|
143
144
|
onChange: (event: React.ChangeEvent<HTMLSelectElement>) => void;
|
|
144
145
|
}) => JSX.Element;
|
|
146
|
+
/** A multiselect component. */
|
|
147
|
+
MultiSelectComponent?: ({ label, value, options, onChange, width, }: {
|
|
148
|
+
value: string[];
|
|
149
|
+
width: number;
|
|
150
|
+
label?: string;
|
|
151
|
+
options: {
|
|
152
|
+
value: string;
|
|
153
|
+
label: string;
|
|
154
|
+
}[];
|
|
155
|
+
onChange: (event: React.ChangeEvent<HTMLSelectElement>) => void;
|
|
156
|
+
}) => JSX.Element;
|
|
145
157
|
/** A date range picker component. */
|
|
146
|
-
DateRangePickerComponent?: ({ dateRange, label, presetOptions, preset, onChangeDateRange, onChangePreset, }: {
|
|
158
|
+
DateRangePickerComponent?: ({ dateRange, label, presetOptions, preset, selectWidth, onChangeDateRange, onChangePreset, }: {
|
|
147
159
|
preset: string;
|
|
148
160
|
label?: string;
|
|
161
|
+
selectWidth?: number;
|
|
149
162
|
dateRange: {
|
|
150
163
|
startDate: Date;
|
|
151
164
|
endDate: Date;
|
|
@@ -177,8 +190,8 @@ export interface DashboardProps {
|
|
|
177
190
|
}) => JSX.Element;
|
|
178
191
|
/** A fallback component displayed when an active dashboard has no items. */
|
|
179
192
|
EmptyDashboardComponent?: () => JSX.Element;
|
|
180
|
-
/** A callback fired when a
|
|
181
|
-
|
|
193
|
+
/** A callback fired when a report is clicked. */
|
|
194
|
+
onClickReport?: (report: QuillReport) => void;
|
|
182
195
|
/** A callback that is fired when the loading status of the dashboard changes. */
|
|
183
196
|
onChangeLoading?: (isLoading: boolean) => void;
|
|
184
197
|
/** Whether to hide the dashboard filters (default: `false`). */
|
|
@@ -210,6 +223,8 @@ export interface DashboardProps {
|
|
|
210
223
|
containerStyle?: React.CSSProperties;
|
|
211
224
|
/** The styles for the chart container. */
|
|
212
225
|
chartContainerStyle?: React.CSSProperties;
|
|
226
|
+
/** An array of dashboard filters that are indicated by the frontend dev. */
|
|
227
|
+
filters?: Filter[];
|
|
213
228
|
}
|
|
214
229
|
/**
|
|
215
230
|
* ### Quill Dashboard
|
|
@@ -231,7 +246,7 @@ export interface DashboardProps {
|
|
|
231
246
|
* <Dashboard
|
|
232
247
|
* name="saved_reports"
|
|
233
248
|
* SelectComponent={MySelect}
|
|
234
|
-
*
|
|
249
|
+
* onClickReport={(report) => navigate(`/detail/${report.id}`)}
|
|
235
250
|
* MetricComponent={MyMetric}
|
|
236
251
|
* ChartComponent={MyChart}
|
|
237
252
|
* TableComponent={MyTable}
|
|
@@ -242,5 +257,5 @@ export interface DashboardProps {
|
|
|
242
257
|
* ### API Reference
|
|
243
258
|
* @see https://docs.quillsql.com/components/dashboard
|
|
244
259
|
*/
|
|
245
|
-
export default function Dashboard({ name, SelectComponent, EmptyDashboardComponent, DateRangePickerComponent, MetricComponent, ChartComponent, TableComponent, DashboardSectionComponent, DashboardSectionContainerComponent, FilterContainerComponent,
|
|
260
|
+
export default function Dashboard({ name, SelectComponent, MultiSelectComponent, EmptyDashboardComponent, DateRangePickerComponent, MetricComponent, ChartComponent, TableComponent, DashboardSectionComponent, DashboardSectionContainerComponent, FilterContainerComponent, onClickReport, onChangeLoading, hideFilters, hideDateRangeFilter, hideXAxis, hideYAxis, hideCartesianGrid, comparisonLineStyle, containerStyle, className, chartContainerStyle, filters, }: DashboardProps): import("react/jsx-runtime").JSX.Element | null;
|
|
246
261
|
//# sourceMappingURL=Dashboard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/Dashboard.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAMZ,SAAS,EACT,WAAW,EACZ,MAAM,OAAO,CAAC;AAsCf,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/Dashboard.tsx"],"names":[],"mappings":"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"}
|
package/dist/cjs/Dashboard.js
CHANGED
|
@@ -46,6 +46,7 @@ const DataLoader_1 = __importStar(require("./components/Dashboard/DataLoader"));
|
|
|
46
46
|
const UiComponents_1 = require("./components/UiComponents");
|
|
47
47
|
const DashboardFilter_1 = require("./components/Dashboard/DashboardFilter");
|
|
48
48
|
const QuillSelect_1 = require("./components/QuillSelect");
|
|
49
|
+
const QuillMultiSelect_1 = require("./components/QuillMultiSelect");
|
|
49
50
|
const defaultChartContainerStyles = {
|
|
50
51
|
display: 'flex',
|
|
51
52
|
width: '100%',
|
|
@@ -72,7 +73,7 @@ const defaultChartContainerStyles = {
|
|
|
72
73
|
* <Dashboard
|
|
73
74
|
* name="saved_reports"
|
|
74
75
|
* SelectComponent={MySelect}
|
|
75
|
-
*
|
|
76
|
+
* onClickReport={(report) => navigate(`/detail/${report.id}`)}
|
|
76
77
|
* MetricComponent={MyMetric}
|
|
77
78
|
* ChartComponent={MyChart}
|
|
78
79
|
* TableComponent={MyTable}
|
|
@@ -83,7 +84,7 @@ const defaultChartContainerStyles = {
|
|
|
83
84
|
* ### API Reference
|
|
84
85
|
* @see https://docs.quillsql.com/components/dashboard
|
|
85
86
|
*/
|
|
86
|
-
function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent, EmptyDashboardComponent = UiComponents_1.QuillEmptyDashboardComponent, DateRangePickerComponent = QuillDateRangePicker_1.QuillDateRangePicker, MetricComponent = MetricComponent_1.default, ChartComponent = ChartComponent_1.default, TableComponent = TableComponent_1.default, DashboardSectionComponent = DashboardSection_1.default, DashboardSectionContainerComponent = DashboardSectionContainer_1.default, FilterContainerComponent = UiComponents_1.QuillFilterContainerComponent,
|
|
87
|
+
function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent, MultiSelectComponent = QuillMultiSelect_1.QuillMultiSelectComponent, EmptyDashboardComponent = UiComponents_1.QuillEmptyDashboardComponent, DateRangePickerComponent = QuillDateRangePicker_1.QuillDateRangePicker, MetricComponent = MetricComponent_1.default, ChartComponent = ChartComponent_1.default, TableComponent = TableComponent_1.default, DashboardSectionComponent = DashboardSection_1.default, DashboardSectionContainerComponent = DashboardSectionContainer_1.default, FilterContainerComponent = UiComponents_1.QuillFilterContainerComponent, onClickReport, onChangeLoading, hideFilters, hideDateRangeFilter = false, hideXAxis = false, hideYAxis = false, hideCartesianGrid = false, comparisonLineStyle = 'solid', containerStyle, className, chartContainerStyle = defaultChartContainerStyles, filters, }) {
|
|
87
88
|
const { dispatch } = (0, react_1.useContext)(Context_1.DashboardContext);
|
|
88
89
|
const { isLoading: isDataLoading, data, reload, } = (0, useDashboard_1.useDashboard)(name);
|
|
89
90
|
const [dashboardSections, setDashboardSections] = (0, react_1.useState)(null);
|
|
@@ -105,7 +106,7 @@ function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent,
|
|
|
105
106
|
onDashboardDataChange(data);
|
|
106
107
|
}, [data]);
|
|
107
108
|
(0, react_1.useEffect)(() => {
|
|
108
|
-
reload();
|
|
109
|
+
reload(name);
|
|
109
110
|
}, [name, client]);
|
|
110
111
|
const onDashboardDataChange = (resp) => {
|
|
111
112
|
setDashboardSections(resp.sections);
|
|
@@ -147,7 +148,7 @@ function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent,
|
|
|
147
148
|
};
|
|
148
149
|
}),
|
|
149
150
|
field: 'date_range',
|
|
150
|
-
label:
|
|
151
|
+
label: resp.dateFilter.label,
|
|
151
152
|
preset: {
|
|
152
153
|
label: primaryPreset.label,
|
|
153
154
|
},
|
|
@@ -195,21 +196,30 @@ function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent,
|
|
|
195
196
|
data: bigFilterObj,
|
|
196
197
|
});
|
|
197
198
|
}
|
|
199
|
+
if (filters) {
|
|
200
|
+
filters.forEach((filter) => {
|
|
201
|
+
dashboardFiltersDispatch({
|
|
202
|
+
type: 'ADD_DASHBOARD_FILTER',
|
|
203
|
+
id: filter.field,
|
|
204
|
+
data: filter,
|
|
205
|
+
});
|
|
206
|
+
});
|
|
207
|
+
}
|
|
198
208
|
};
|
|
199
209
|
const handleOnClickDashboardItem = (elem) => {
|
|
200
210
|
const cleanedItem = (0, dashboard_1.cleanDashboardItem)(dashboard[elem._id] ?? elem, dashboardFilters);
|
|
201
|
-
if (dashboard[elem._id]?._id &&
|
|
211
|
+
if (dashboard[elem._id]?._id && onClickReport) {
|
|
202
212
|
// The _id add-on is a patch for backwards compatability
|
|
203
213
|
// TODO: remove all _id references from the codebase (admin and react)
|
|
204
|
-
|
|
214
|
+
onClickReport({ ...cleanedItem, _id: elem._id });
|
|
205
215
|
}
|
|
206
|
-
else if (
|
|
216
|
+
else if (onClickReport) {
|
|
207
217
|
dispatch({
|
|
208
218
|
type: 'UPDATE_DASHBOARD_ITEM',
|
|
209
219
|
id: elem._id,
|
|
210
220
|
data: { ...elem, filtersApplied: dashboardFilters },
|
|
211
221
|
});
|
|
212
|
-
|
|
222
|
+
onClickReport({ ...cleanedItem, _id: elem._id });
|
|
213
223
|
}
|
|
214
224
|
};
|
|
215
225
|
function removeQuotes(str) {
|
|
@@ -248,20 +258,29 @@ function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent,
|
|
|
248
258
|
};
|
|
249
259
|
const updateFilter = (filter, value = null, comparison = null) => {
|
|
250
260
|
//for dateObjects only, since values are arrays for dateObjects
|
|
251
|
-
const { selectedValue: _, ...filterWithoutSelectedValue } = filter; // _ is a throwaway variable
|
|
252
|
-
let selectedValue;
|
|
253
|
-
let selectedElem;
|
|
261
|
+
const { selectedValue: _, operator, ...filterWithoutSelectedValue } = filter; // _ is a throwaway variable
|
|
254
262
|
if (filter.filterType === 'string') {
|
|
255
|
-
|
|
256
|
-
if (
|
|
257
|
-
|
|
263
|
+
let selectedValue = {};
|
|
264
|
+
if (value) {
|
|
265
|
+
if (filter.stringFilterType === 'multiselect') {
|
|
266
|
+
const parsedValue = JSON.parse(value);
|
|
267
|
+
if (parsedValue.length === 0) {
|
|
268
|
+
selectedValue = { values: [] };
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
selectedValue = { values: parsedValue, operator: 'IN' };
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
else {
|
|
275
|
+
selectedValue = { selectedValue: value };
|
|
276
|
+
}
|
|
258
277
|
}
|
|
259
278
|
dashboardFiltersDispatch({
|
|
260
279
|
type: 'ADD_DASHBOARD_FILTER',
|
|
261
280
|
id: filter.field,
|
|
262
281
|
data: {
|
|
263
282
|
...filterWithoutSelectedValue,
|
|
264
|
-
...
|
|
283
|
+
...selectedValue,
|
|
265
284
|
},
|
|
266
285
|
});
|
|
267
286
|
return;
|
|
@@ -373,7 +392,7 @@ function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent,
|
|
|
373
392
|
boxSizing: 'content-box',
|
|
374
393
|
flexDirection: 'row',
|
|
375
394
|
alignItems: 'center',
|
|
376
|
-
}, children: (0, jsx_runtime_1.jsx)(FilterContainerComponent, { children: sortedFilters.map((filter, index) => ((0, jsx_runtime_1.jsx)(DashboardFilter_1.DashboardFilter, { filter: filter, onChangeFilter: updateFilter, theme: theme, SelectComponent: SelectComponent, DateRangePickerComponent: DateRangePickerComponent }, index))) }) })), Object.keys(dashboardSections)
|
|
395
|
+
}, children: (0, jsx_runtime_1.jsx)(FilterContainerComponent, { children: sortedFilters.map((filter, index) => ((0, jsx_runtime_1.jsx)(DashboardFilter_1.DashboardFilter, { filter: filter, onChangeFilter: updateFilter, theme: theme, SelectComponent: SelectComponent, MultiSelectComponent: MultiSelectComponent, DateRangePickerComponent: DateRangePickerComponent }, index))) }) })), Object.keys(dashboardSections)
|
|
377
396
|
.sort(function (a, b) {
|
|
378
397
|
return a.length - b.length;
|
|
379
398
|
})
|
|
@@ -387,14 +406,14 @@ function Dashboard({ name, SelectComponent = QuillSelect_1.QuillSelectComponent,
|
|
|
387
406
|
textAlign: 'left',
|
|
388
407
|
marginTop: 12,
|
|
389
408
|
}, children: section })] })), metrics(section).length > 0 && ((0, jsx_runtime_1.jsx)(DashboardSectionComponent, { section: "metrics", children: metrics(section).map((item, index) => {
|
|
390
|
-
return ((0, jsx_runtime_1.jsx)(DataLoader_1.default, { id: item._id, children: ({ isLoading, error }) => ((0, jsx_runtime_1.jsx)(MetricComponent, { error: error, isLoading: isLoading,
|
|
409
|
+
return ((0, jsx_runtime_1.jsx)(DataLoader_1.default, { id: item._id, children: ({ isLoading, error }) => ((0, jsx_runtime_1.jsx)(MetricComponent, { error: error, isLoading: isLoading, report: (0, dashboard_1.cleanDashboardItem)(dashboard[item._id] ?? item, dashboardFilters), onClick: !isLoading && onClickReport
|
|
391
410
|
? () => handleOnClickDashboardItem(item)
|
|
392
411
|
: undefined }, item.name + '' + index)) }, `${item.name}${index}`));
|
|
393
|
-
}) })), charts(section).length > 0 && ((0, jsx_runtime_1.jsx)(DashboardSectionComponent, { section: "charts", children: charts(section).map((item, index) => ((0, jsx_runtime_1.jsx)(DataLoader_1.ChartDataLoader, { id: item._id, hideDateRangeFilter: hideDateRangeFilter, children: ({ isLoading, data, error, }) => ((0, jsx_runtime_1.jsx)(ChartComponent, {
|
|
412
|
+
}) })), charts(section).length > 0 && ((0, jsx_runtime_1.jsx)(DashboardSectionComponent, { section: "charts", children: charts(section).map((item, index) => ((0, jsx_runtime_1.jsx)(DataLoader_1.ChartDataLoader, { id: item._id, hideDateRangeFilter: hideDateRangeFilter, children: ({ isLoading, data, error, }) => ((0, jsx_runtime_1.jsx)(ChartComponent, { report: (0, dashboard_1.cleanDashboardItem)(dashboard[item._id] ?? item, dashboardFilters), error: error, onClick: !isLoading && onClickReport
|
|
394
413
|
? () => handleOnClickDashboardItem(item)
|
|
395
414
|
: undefined, children: (0, jsx_runtime_1.jsx)(Chart_1.default, { config: data, containerStyle: chartContainerStyle, colors: theme.chartColors?.length
|
|
396
415
|
? theme.chartColors
|
|
397
|
-
: undefined, hideXAxis: hideXAxis, hideYAxis: hideYAxis, hideCartesianGrid: hideCartesianGrid, comparisonLineStyle: comparisonLineStyle }) }, item.name + '' + index)) }, `${item.name}${index}`))) })), tables(section).length > 0 && ((0, jsx_runtime_1.jsx)(DashboardSectionComponent, { section: "tables", children: tables(section).map((item, index) => ((0, jsx_runtime_1.jsx)(DataLoader_1.default, { id: item._id, children: ({ isLoading, error }) => ((0, jsx_runtime_1.jsx)(TableComponent, {
|
|
416
|
+
: undefined, hideXAxis: hideXAxis, hideYAxis: hideYAxis, hideCartesianGrid: hideCartesianGrid, comparisonLineStyle: comparisonLineStyle }) }, item.name + '' + index)) }, `${item.name}${index}`))) })), tables(section).length > 0 && ((0, jsx_runtime_1.jsx)(DashboardSectionComponent, { section: "tables", children: tables(section).map((item, index) => ((0, jsx_runtime_1.jsx)(DataLoader_1.default, { id: item._id, children: ({ isLoading, error }) => ((0, jsx_runtime_1.jsx)(TableComponent, { report: (0, dashboard_1.cleanDashboardItem)(dashboard[item._id] ?? item, dashboardFilters), isLoading: isLoading, error: error, onClick: !isLoading && onClickReport
|
|
398
417
|
? () => handleOnClickDashboardItem(item)
|
|
399
418
|
: undefined })) }, `${item.name}${index}`))) }))] }, section + '' + sectionIndex));
|
|
400
419
|
})] }));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CSSProperties, ReactNode } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { QuillReport } from './Dashboard';
|
|
3
3
|
/**
|
|
4
4
|
* Props for the Quill ReportBuilder component.
|
|
5
5
|
*/
|
|
@@ -245,9 +245,9 @@ export interface ReportBuilderProps {
|
|
|
245
245
|
/** A report id that the Report Builder will query from and modify. */
|
|
246
246
|
reportId?: string;
|
|
247
247
|
/** A callback function that will trigger when a new chart is saved */
|
|
248
|
-
onSubmitCreateReport?: (
|
|
248
|
+
onSubmitCreateReport?: (report: QuillReport) => void;
|
|
249
249
|
/** A callback function that will trigger when a chart is edited */
|
|
250
|
-
onSubmitEditReport?: (
|
|
250
|
+
onSubmitEditReport?: (report: QuillReport) => void;
|
|
251
251
|
/** Hide the copy SQL button. */
|
|
252
252
|
hideCopySQL?: boolean;
|
|
253
253
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReportBuilder.d.ts","sourceRoot":"","sources":["../../src/ReportBuilder.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,aAAa,EAEb,SAAS,EAKV,MAAM,OAAO,CAAC;AA2Jf,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ReportBuilder.d.ts","sourceRoot":"","sources":["../../src/ReportBuilder.tsx"],"names":[],"mappings":"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"}
|