@quillsql/react 2.13.1 → 2.13.3
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.map +1 -1
- package/dist/cjs/Chart.js +7 -15
- package/dist/cjs/ChartBuilder.d.ts +4 -1
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +7 -7
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +40 -19
- package/dist/cjs/Context.d.ts +52 -16
- package/dist/cjs/Context.d.ts.map +1 -1
- package/dist/cjs/Context.js +34 -47
- package/dist/cjs/Dashboard.d.ts +5 -2
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +73 -83
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +1 -1
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +179 -114
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +18 -11
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +6 -3
- package/dist/cjs/components/Dashboard/DashboardFilter.js +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.d.ts +6 -4
- package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.js +76 -68
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/MetricComponent.js +14 -3
- package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/TableComponent.js +8 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts +1 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.js +6 -2
- package/dist/cjs/components/QuillSelect.js +3 -3
- package/dist/cjs/components/QuillSelectWithCombo.d.ts +1 -1
- package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelectWithCombo.js +13 -3
- package/dist/cjs/components/QuillTable.d.ts +1 -1
- package/dist/cjs/components/QuillTable.d.ts.map +1 -1
- package/dist/cjs/components/QuillTable.js +17 -14
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +33 -0
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/FilterStack.js +121 -0
- package/dist/cjs/components/ReportBuilder/ui.d.ts +0 -1
- package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.js +1 -13
- package/dist/cjs/components/UiComponents.d.ts +2 -1
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +3 -3
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +41 -50
- package/dist/cjs/hooks/useExport.d.ts +14 -1
- package/dist/cjs/hooks/useExport.d.ts.map +1 -1
- package/dist/cjs/hooks/useExport.js +120 -38
- package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useQuill.js +3 -1
- package/dist/cjs/models/Client.d.ts +2 -0
- package/dist/cjs/models/Client.d.ts.map +1 -1
- package/dist/cjs/models/Dashboard.d.ts +1 -1
- package/dist/cjs/models/Dashboard.d.ts.map +1 -1
- package/dist/cjs/models/Filter.d.ts +1 -1
- package/dist/cjs/models/Filter.d.ts.map +1 -1
- package/dist/cjs/utils/client.d.ts.map +1 -1
- package/dist/cjs/utils/client.js +1 -0
- package/dist/cjs/utils/dashboard.d.ts.map +1 -1
- package/dist/cjs/utils/dashboard.js +6 -3
- package/dist/cjs/utils/filterProcessing.d.ts +1 -1
- package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/filterProcessing.js +3 -3
- package/dist/cjs/utils/report.d.ts +2 -2
- package/dist/cjs/utils/report.d.ts.map +1 -1
- package/dist/cjs/utils/report.js +5 -4
- package/dist/cjs/utils/tableProcessing.d.ts +2 -2
- package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/tableProcessing.js +3 -1
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +7 -15
- package/dist/esm/ChartBuilder.d.ts +4 -1
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +7 -7
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +41 -20
- package/dist/esm/Context.d.ts +52 -16
- package/dist/esm/Context.d.ts.map +1 -1
- package/dist/esm/Context.js +33 -46
- package/dist/esm/Dashboard.d.ts +5 -2
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +75 -85
- package/dist/esm/DateRangePicker/QuillDateRangePicker.js +1 -1
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +182 -117
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +18 -11
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +6 -3
- package/dist/esm/components/Dashboard/DashboardFilter.js +1 -1
- package/dist/esm/components/Dashboard/DataLoader.d.ts +6 -4
- package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DataLoader.js +77 -69
- package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/MetricComponent.js +14 -3
- package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/TableComponent.js +8 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.d.ts +1 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.js +6 -2
- package/dist/esm/components/QuillSelect.js +3 -3
- package/dist/esm/components/QuillSelectWithCombo.d.ts +1 -1
- package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillSelectWithCombo.js +13 -3
- package/dist/esm/components/QuillTable.d.ts +1 -1
- package/dist/esm/components/QuillTable.d.ts.map +1 -1
- package/dist/esm/components/QuillTable.js +17 -14
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts +33 -0
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/FilterStack.js +118 -0
- package/dist/esm/components/ReportBuilder/ui.d.ts +0 -1
- package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.js +0 -8
- package/dist/esm/components/UiComponents.d.ts +2 -1
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +3 -3
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +41 -50
- package/dist/esm/hooks/useExport.d.ts +14 -1
- package/dist/esm/hooks/useExport.d.ts.map +1 -1
- package/dist/esm/hooks/useExport.js +122 -40
- package/dist/esm/hooks/useQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useQuill.js +3 -1
- package/dist/esm/models/Client.d.ts +2 -0
- package/dist/esm/models/Client.d.ts.map +1 -1
- package/dist/esm/models/Dashboard.d.ts +1 -1
- package/dist/esm/models/Dashboard.d.ts.map +1 -1
- package/dist/esm/models/Filter.d.ts +1 -1
- package/dist/esm/models/Filter.d.ts.map +1 -1
- package/dist/esm/utils/client.d.ts.map +1 -1
- package/dist/esm/utils/client.js +1 -0
- package/dist/esm/utils/dashboard.d.ts.map +1 -1
- package/dist/esm/utils/dashboard.js +6 -3
- package/dist/esm/utils/filterProcessing.d.ts +1 -1
- package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
- package/dist/esm/utils/filterProcessing.js +3 -3
- package/dist/esm/utils/report.d.ts +2 -2
- package/dist/esm/utils/report.d.ts.map +1 -1
- package/dist/esm/utils/report.js +5 -4
- package/dist/esm/utils/tableProcessing.d.ts +2 -2
- package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
- package/dist/esm/utils/tableProcessing.js +3 -1
- package/package.json +3 -3
package/dist/esm/ChartEditor.js
CHANGED
|
@@ -6,7 +6,7 @@ import { MemoizedModal, QuillChartBuilderFormContainer, QuillChartBuilderInputCo
|
|
|
6
6
|
import { QuillCard } from './components/QuillCard';
|
|
7
7
|
import { fetchResultsByQuery, fetchResultsByReport, } from './utils/tableProcessing';
|
|
8
8
|
import { QuillChartErrorWithAction } from './components/Chart/ChartError';
|
|
9
|
-
import { fetchReport } from './utils/report';
|
|
9
|
+
import { fetchReport, fetchReportRowCount } from './utils/report';
|
|
10
10
|
import { shouldFetchMore, DEFAULT_PAGINATION, shouldSortInMemory, } from './utils/paginationProcessing';
|
|
11
11
|
/**
|
|
12
12
|
* ### Quill Chart Editor
|
|
@@ -50,20 +50,19 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
50
50
|
const [client] = useContext(ClientContext);
|
|
51
51
|
const [isChartLoading, setIsLoading] = useState(false);
|
|
52
52
|
const isLoading = isDashboardLoading || isChartLoading;
|
|
53
|
+
const [rowCount, setRowCount] = useState(undefined);
|
|
54
|
+
const [rowCountIsLoading, setRowCountIsLoading] = useState(false);
|
|
55
|
+
const [maxPage, setMaxPage] = useState(0);
|
|
56
|
+
const [schemaData] = useContext(SchemaDataContext);
|
|
57
|
+
const [overrideRows, setOverrideRows] = useState(undefined);
|
|
58
|
+
const report = dashboard[reportId];
|
|
53
59
|
const [additionalProcessing, setAdditionalProcessing] = useState({
|
|
54
|
-
page: {
|
|
60
|
+
page: report?.pagination || {
|
|
55
61
|
page: 0,
|
|
56
62
|
rowsPerPage: 10,
|
|
57
|
-
rowsPerRequest: 500,
|
|
63
|
+
rowsPerRequest: report?.chartType === 'table' ? 50 : 500,
|
|
58
64
|
},
|
|
59
65
|
});
|
|
60
|
-
const [rowCount, setRowCount] = useState(undefined);
|
|
61
|
-
const [maxPage, setMaxPage] = useState(0);
|
|
62
|
-
const [schemaData] = useContext(SchemaDataContext);
|
|
63
|
-
const [overrideRows, setOverrideRows] = useState(undefined);
|
|
64
|
-
const report = useMemo(() => {
|
|
65
|
-
return dashboard?.[reportId];
|
|
66
|
-
}, [dashboard, reportId]);
|
|
67
66
|
const [chartBuilderKey, setChartBuilderKey] = useState(0);
|
|
68
67
|
const dateFilter = Object.values(specificDashboardFilters).find((filter) => filter.filterType == 'date_range');
|
|
69
68
|
const dateRange = dateFilter?.startDate
|
|
@@ -88,12 +87,11 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
88
87
|
}, []);
|
|
89
88
|
const onPageChange = (page) => {
|
|
90
89
|
if (additionalProcessing.page &&
|
|
91
|
-
shouldFetchMore({
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
-
const newPagination = { ...additionalProcessing.page, page };
|
|
90
|
+
shouldFetchMore(additionalProcessing.page, page, maxPage)) {
|
|
91
|
+
const newPagination = {
|
|
92
|
+
...additionalProcessing.page,
|
|
93
|
+
page,
|
|
94
|
+
};
|
|
97
95
|
const updatedProcessing = {
|
|
98
96
|
...additionalProcessing,
|
|
99
97
|
page: newPagination,
|
|
@@ -137,7 +135,7 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
137
135
|
setIsLoading(true);
|
|
138
136
|
try {
|
|
139
137
|
const updatedProcessing = { ...additionalProcessing, ...processing };
|
|
140
|
-
const paginatedRows = await fetchResultsByReport(report.id, client, updatedProcessing, specificDashboardFilters, schemaData.customFields);
|
|
138
|
+
const paginatedRows = await fetchResultsByReport(report.id, client, updatedProcessing, specificDashboardFilters, schemaData.customFields, true);
|
|
141
139
|
if (paginatedRows.error) {
|
|
142
140
|
throw new Error('Error fetching chart');
|
|
143
141
|
}
|
|
@@ -164,6 +162,22 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
164
162
|
}
|
|
165
163
|
}
|
|
166
164
|
};
|
|
165
|
+
const fetchRowCount = async (useReportTask = true, filters, processing) => {
|
|
166
|
+
if (!client) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
setRowCountIsLoading(true);
|
|
170
|
+
const rowCount = await fetchReportRowCount(reportId, client, useReportTask, filters, processing, schemaData.customFields);
|
|
171
|
+
if (rowCount) {
|
|
172
|
+
dispatch({
|
|
173
|
+
type: 'UPDATE_DASHBOARD_ITEM',
|
|
174
|
+
id: reportId,
|
|
175
|
+
data: { rowCount },
|
|
176
|
+
});
|
|
177
|
+
setRowCount(rowCount);
|
|
178
|
+
}
|
|
179
|
+
setRowCountIsLoading(false);
|
|
180
|
+
};
|
|
167
181
|
const fetchReportHelper = async (useReportTask = true, processing) => {
|
|
168
182
|
if (isLoading) {
|
|
169
183
|
return;
|
|
@@ -183,7 +197,7 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
183
197
|
return newFilter;
|
|
184
198
|
})
|
|
185
199
|
: [];
|
|
186
|
-
const { report, error } = await fetchReport(reportId, client, useReportTask, minimalFilters, processing, undefined, schemaData.customFields);
|
|
200
|
+
const { report, error } = await fetchReport(reportId, client, useReportTask, minimalFilters, processing, undefined, schemaData.customFields, true);
|
|
187
201
|
if (error) {
|
|
188
202
|
setIsLoading(false);
|
|
189
203
|
return;
|
|
@@ -193,6 +207,7 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
193
207
|
id: reportId,
|
|
194
208
|
data: report,
|
|
195
209
|
});
|
|
210
|
+
fetchRowCount(useReportTask, minimalFilters, processing);
|
|
196
211
|
setAdditionalProcessing(processing);
|
|
197
212
|
setIsLoading(false);
|
|
198
213
|
};
|
|
@@ -207,7 +222,13 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
207
222
|
}
|
|
208
223
|
else {
|
|
209
224
|
const rowLength = report.rows ? report.rows.length : undefined;
|
|
210
|
-
|
|
225
|
+
if (report.rowCount || rowLength === 0) {
|
|
226
|
+
setRowCount(report.rowCount || 0);
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
setRowCountIsLoading(true);
|
|
230
|
+
setRowCount(rowLength);
|
|
231
|
+
}
|
|
211
232
|
}
|
|
212
233
|
}
|
|
213
234
|
return;
|
|
@@ -228,7 +249,7 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, isDashb
|
|
|
228
249
|
else {
|
|
229
250
|
setOverrideRows(undefined);
|
|
230
251
|
}
|
|
231
|
-
}, rowCount: rowCount, onClickChartElement: onClickChartElement, pivotData: report.pivotColumns
|
|
252
|
+
}, rowCount: rowCount, rowCountIsLoading: rowCountIsLoading, onClickChartElement: onClickChartElement, pivotData: report.pivotColumns
|
|
232
253
|
? {
|
|
233
254
|
rows: report.pivotRows || [],
|
|
234
255
|
columns: report.pivotColumns,
|
package/dist/esm/Context.d.ts
CHANGED
|
@@ -7,26 +7,61 @@ import { SchemaData } from './models/Schema';
|
|
|
7
7
|
import { DashboardFilter } from './models/Filter';
|
|
8
8
|
export declare const SchemaDataContext: React.Context<[SchemaData, (value: React.SetStateAction<SchemaData>) => void]>;
|
|
9
9
|
export declare const ThemeContext: React.Context<[QuillTheme | null, (value: React.SetStateAction<QuillTheme | null>) => void]>;
|
|
10
|
-
export declare const ClientContext: React.Context<[QuillProviderClient | null, boolean, (value: React.SetStateAction<QuillProviderClient>) => void]>;
|
|
11
|
-
export declare const DashboardFiltersContext: React.Context<{
|
|
12
|
-
dashboardFilters: {
|
|
13
|
-
[dashboardName: string]: {
|
|
14
|
-
[filterName: string]: {
|
|
15
|
-
filter: DashboardFilter;
|
|
16
|
-
loading: boolean;
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
dispatch: any;
|
|
21
|
-
loadFiltersForDashboard: (dashboardName: string, filters: DashboardFilter[], updatedFilterLabel?: string) => void;
|
|
22
|
-
}>;
|
|
23
|
-
export declare const ReportFiltersContext: React.Context<any>;
|
|
10
|
+
export declare const ClientContext: React.Context<[QuillProviderClient | null, boolean, (value: React.SetStateAction<QuillProviderClient | null>) => void]>;
|
|
24
11
|
export declare const DashboardContext: React.Context<[{
|
|
25
12
|
[key: string]: QuillReportInternal;
|
|
26
13
|
}, any]>;
|
|
27
|
-
|
|
14
|
+
type DashboardConfigState = {
|
|
28
15
|
[key: string]: DashboardConfig;
|
|
29
|
-
}
|
|
16
|
+
};
|
|
17
|
+
type DashboardConfigActionType = 'UPDATE_DASHBOARD' | 'ADD_DASHBOARD' | 'SET_DASHBOARD_DATA' | 'CLEAR_DASHBOARD';
|
|
18
|
+
type DashboardConfigAction = {
|
|
19
|
+
type: DashboardConfigActionType;
|
|
20
|
+
id?: string;
|
|
21
|
+
data?: DashboardConfig | DashboardConfigState | undefined;
|
|
22
|
+
};
|
|
23
|
+
export declare const DashboardConfigContext: React.Context<[DashboardConfigState, React.Dispatch<DashboardConfigAction>]>;
|
|
24
|
+
type ReportFiltersState = {
|
|
25
|
+
[id: string]: any;
|
|
26
|
+
};
|
|
27
|
+
type ReportFiltersActionType = 'UPDATE_REPORT_FILTER' | 'CLEAR_REPORT_FILTERS';
|
|
28
|
+
type ReportFiltersAction = {
|
|
29
|
+
type: ReportFiltersActionType;
|
|
30
|
+
id?: string;
|
|
31
|
+
data?: any;
|
|
32
|
+
};
|
|
33
|
+
export declare const ReportFiltersContext: React.Context<{
|
|
34
|
+
reportFilters: ReportFiltersState;
|
|
35
|
+
reportFiltersDispatch: React.Dispatch<ReportFiltersAction>;
|
|
36
|
+
}>;
|
|
37
|
+
type DashboardFiltersState = {
|
|
38
|
+
[dashboardName: string]: {
|
|
39
|
+
[filterName: string]: {
|
|
40
|
+
filter: DashboardFilter;
|
|
41
|
+
loading: boolean;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
type DashboardFiltersActionType = 'UPDATE_DASHBOARD_FILTER' | 'UPDATE_DASHBOARD_FILTERS' | 'ADD_DASHBOARD_FILTERS' | 'CLEAR_DASHBOARD_FILTERS';
|
|
46
|
+
type DashboardFiltersAction = {
|
|
47
|
+
type: DashboardFiltersActionType;
|
|
48
|
+
dashboardName?: string;
|
|
49
|
+
filterName?: string;
|
|
50
|
+
data?: {
|
|
51
|
+
filter: DashboardFilter;
|
|
52
|
+
loading: boolean;
|
|
53
|
+
} | {
|
|
54
|
+
[filterName: string]: {
|
|
55
|
+
filter: DashboardFilter;
|
|
56
|
+
loading: boolean;
|
|
57
|
+
};
|
|
58
|
+
} | DashboardFilter | undefined;
|
|
59
|
+
};
|
|
60
|
+
export declare const DashboardFiltersContext: React.Context<{
|
|
61
|
+
dashboardFilters: DashboardFiltersState;
|
|
62
|
+
dispatch: React.Dispatch<DashboardFiltersAction>;
|
|
63
|
+
loadFiltersForDashboard: (dashboardName: string, filters: DashboardFilter[], updatedFilterLabel?: string) => void;
|
|
64
|
+
}>;
|
|
30
65
|
export declare const ContextProvider: ({ children, initialTheme, publicKey, organizationId, queryEndpoint, queryHeaders, withCredentials, }: {
|
|
31
66
|
children: React.ReactNode;
|
|
32
67
|
initialTheme: QuillTheme;
|
|
@@ -36,4 +71,5 @@ export declare const ContextProvider: ({ children, initialTheme, publicKey, orga
|
|
|
36
71
|
queryHeaders?: HeadersInit | undefined;
|
|
37
72
|
withCredentials?: boolean | undefined;
|
|
38
73
|
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
74
|
+
export {};
|
|
39
75
|
//# sourceMappingURL=Context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/Context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAE9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAIlD,eAAO,MAAM,iBAAiB,qCACP,MAAM,cAAc,CAAC,UAAU,CAAC,KAAK,IAAI,EAQ9D,CAAC;AACH,eAAO,MAAM,YAAY,4CACK,MAAM,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,IAAI,EACxD,CAAC;AACvB,eAAO,MAAM,aAAa,8DAId,MAAM,cAAc,CAAC,mBAAmB,CAAC,KAAK,IAAI,
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/Context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAE9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAIlD,eAAO,MAAM,iBAAiB,qCACP,MAAM,cAAc,CAAC,UAAU,CAAC,KAAK,IAAI,EAQ9D,CAAC;AACH,eAAO,MAAM,YAAY,4CACK,MAAM,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,IAAI,EACxD,CAAC;AACvB,eAAO,MAAM,aAAa,8DAId,MAAM,cAAc,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,IAAI,EAExC,CAAC;AA+C9B,eAAO,MAAM,gBAAgB;;QAET,CAAC;AAErB,KAAK,oBAAoB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;CAAE,CAAC;AAC/D,KAAK,yBAAyB,GAC1B,kBAAkB,GAClB,eAAe,GACf,oBAAoB,GACpB,iBAAiB,CAAC;AACtB,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,yBAAyB,CAAC;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,eAAe,GAAG,oBAAoB,GAAG,SAAS,CAAC;CAC3D,CAAC;AAsCF,eAAO,MAAM,sBAAsB,8EAEf,CAAC;AAErB,KAAK,kBAAkB,GAAG;IAAE,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC;AAChD,KAAK,uBAAuB,GAAG,sBAAsB,GAAG,sBAAsB,CAAC;AAC/E,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ,CAAC;AAkBF,eAAO,MAAM,oBAAoB;mBAChB,kBAAkB;2BACV,MAAM,QAAQ,CAAC,mBAAmB,CAAC;EACC,CAAC;AAE9D,KAAK,qBAAqB,GAAG;IAC3B,CAAC,aAAa,EAAE,MAAM,GAAG;QACvB,CAAC,UAAU,EAAE,MAAM,GAAG;YAAE,MAAM,EAAE,eAAe,CAAC;YAAC,OAAO,EAAE,OAAO,CAAA;SAAE,CAAC;KACrE,CAAC;CACH,CAAC;AACF,KAAK,0BAA0B,GAC3B,yBAAyB,GACzB,0BAA0B,GAC1B,uBAAuB,GACvB,yBAAyB,CAAC;AAC9B,KAAK,sBAAsB,GAAG;IAC5B,IAAI,EAAE,0BAA0B,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EACD;QACE,MAAM,EAAE,eAAe,CAAC;QACxB,OAAO,EAAE,OAAO,CAAC;KAClB,GACD;QACE,CAAC,UAAU,EAAE,MAAM,GAAG;YACpB,MAAM,EAAE,eAAe,CAAC;YACxB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC;KACH,GACD,eAAe,GACf,SAAS,CAAC;CACf,CAAC;AAmDF,eAAO,MAAM,uBAAuB;sBAChB,qBAAqB;cAC7B,MAAM,QAAQ,CAAC,sBAAsB,CAAC;6CAE/B,MAAM,WACZ,eAAe,EAAE,uBACL,MAAM,KACxB,IAAI;EAKT,CAAC;AAEH,eAAO,MAAM,eAAe;cAShB,MAAM,SAAS;kBACX,UAAU;eACb,MAAM;;mBAEF,MAAM;;;oDA4RtB,CAAC"}
|
package/dist/esm/Context.js
CHANGED
|
@@ -13,16 +13,8 @@ export const SchemaDataContext = createContext([
|
|
|
13
13
|
]);
|
|
14
14
|
export const ThemeContext = createContext([null, dummySetter]);
|
|
15
15
|
export const ClientContext = createContext([null, false, dummySetter]);
|
|
16
|
-
export const DashboardFiltersContext = createContext({
|
|
17
|
-
dashboardFilters: {},
|
|
18
|
-
dispatch: dummySetter,
|
|
19
|
-
loadFiltersForDashboard: () => { },
|
|
20
|
-
});
|
|
21
|
-
export const ReportFiltersContext = createContext([{}, dummySetter]);
|
|
22
16
|
const dashboardReducer = (state = {}, action) => {
|
|
23
17
|
switch (action.type) {
|
|
24
|
-
// NOTE: Because update dashboard item doesn't overwrite the previous data, it can leave stale properties when it should be removing them
|
|
25
|
-
// We either want to make sure we're using null instead of undefined, or use ADD_DASHBOARD_ITEM more often.
|
|
26
18
|
case 'UPDATE_DASHBOARD_ITEM':
|
|
27
19
|
if (!action.id || !action.data) {
|
|
28
20
|
return state;
|
|
@@ -48,7 +40,7 @@ const dashboardReducer = (state = {}, action) => {
|
|
|
48
40
|
return state;
|
|
49
41
|
}
|
|
50
42
|
};
|
|
51
|
-
export const DashboardContext = createContext([{},
|
|
43
|
+
export const DashboardContext = createContext([{}, dummySetter]);
|
|
52
44
|
const dashboardConfigReducer = (state = {}, action) => {
|
|
53
45
|
switch (action.type) {
|
|
54
46
|
case 'UPDATE_DASHBOARD':
|
|
@@ -81,10 +73,13 @@ const dashboardConfigReducer = (state = {}, action) => {
|
|
|
81
73
|
return state;
|
|
82
74
|
}
|
|
83
75
|
};
|
|
84
|
-
export const DashboardConfigContext = createContext([{},
|
|
85
|
-
const reportFiltersReducer = (state, action) => {
|
|
76
|
+
export const DashboardConfigContext = createContext([{}, dummySetter]);
|
|
77
|
+
const reportFiltersReducer = (state = {}, action) => {
|
|
86
78
|
switch (action.type) {
|
|
87
79
|
case 'UPDATE_REPORT_FILTER':
|
|
80
|
+
if (!action.id || !action.data) {
|
|
81
|
+
return state;
|
|
82
|
+
}
|
|
88
83
|
return { ...state, [action.id]: action.data };
|
|
89
84
|
case 'CLEAR_REPORT_FILTERS':
|
|
90
85
|
return {};
|
|
@@ -92,9 +87,13 @@ const reportFiltersReducer = (state, action) => {
|
|
|
92
87
|
return state;
|
|
93
88
|
}
|
|
94
89
|
};
|
|
95
|
-
const
|
|
90
|
+
export const ReportFiltersContext = createContext({ reportFilters: {}, reportFiltersDispatch: dummySetter });
|
|
91
|
+
const dashboardFiltersReducer = (state, action) => {
|
|
96
92
|
switch (action.type) {
|
|
97
93
|
case 'UPDATE_DASHBOARD_FILTER':
|
|
94
|
+
if (!action.dashboardName || !action.filterName || !action.data) {
|
|
95
|
+
return state;
|
|
96
|
+
}
|
|
98
97
|
return {
|
|
99
98
|
...state,
|
|
100
99
|
[action.dashboardName]: {
|
|
@@ -103,6 +102,9 @@ const dashboardFiltersReducer = (state = {}, action) => {
|
|
|
103
102
|
},
|
|
104
103
|
};
|
|
105
104
|
case 'UPDATE_DASHBOARD_FILTERS':
|
|
105
|
+
if (!action.dashboardName || !action.data) {
|
|
106
|
+
return state;
|
|
107
|
+
}
|
|
106
108
|
return {
|
|
107
109
|
...state,
|
|
108
110
|
[action.dashboardName]: {
|
|
@@ -111,34 +113,27 @@ const dashboardFiltersReducer = (state = {}, action) => {
|
|
|
111
113
|
},
|
|
112
114
|
};
|
|
113
115
|
case 'ADD_DASHBOARD_FILTERS':
|
|
116
|
+
if (!action.dashboardName || !action.data) {
|
|
117
|
+
return state;
|
|
118
|
+
}
|
|
114
119
|
return {
|
|
115
120
|
...state,
|
|
116
121
|
[action.dashboardName]: action.data,
|
|
117
122
|
};
|
|
118
|
-
case 'ADD_DASHBOARD_FILTER':
|
|
119
|
-
return {
|
|
120
|
-
...state,
|
|
121
|
-
[action.dashboardName]: {
|
|
122
|
-
...state[action.dashboardName],
|
|
123
|
-
[action.data.filterName]: action.data,
|
|
124
|
-
},
|
|
125
|
-
};
|
|
126
123
|
case 'CLEAR_DASHBOARD_FILTERS':
|
|
127
124
|
return {};
|
|
128
125
|
default:
|
|
129
126
|
return state;
|
|
130
127
|
}
|
|
131
128
|
};
|
|
129
|
+
export const DashboardFiltersContext = createContext({
|
|
130
|
+
dashboardFilters: {},
|
|
131
|
+
dispatch: dummySetter,
|
|
132
|
+
loadFiltersForDashboard: () => { },
|
|
133
|
+
});
|
|
132
134
|
export const ContextProvider = ({ children, initialTheme, publicKey, organizationId, queryEndpoint, queryHeaders, withCredentials, }) => {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
organizationId: organizationId ?? '*',
|
|
136
|
-
publicKey,
|
|
137
|
-
queryEndpoint,
|
|
138
|
-
queryHeaders,
|
|
139
|
-
withCredentials: withCredentials ?? false,
|
|
140
|
-
clientId: publicKey,
|
|
141
|
-
});
|
|
135
|
+
// get client from session storage
|
|
136
|
+
const [client, setClient] = useState(JSON.parse(sessionStorage.getItem('quill-client') ?? 'null'));
|
|
142
137
|
const [isClientLoading, setIsClientLoading] = useState(false);
|
|
143
138
|
const [theme, setTheme] = useState(null);
|
|
144
139
|
const [schemaData, setSchemaData] = useState({
|
|
@@ -170,20 +165,6 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
|
|
|
170
165
|
setTheme(newTheme);
|
|
171
166
|
}
|
|
172
167
|
}, [initialTheme]);
|
|
173
|
-
useEffect(() => {
|
|
174
|
-
const initialClient = {
|
|
175
|
-
name: '',
|
|
176
|
-
organizationId: organizationId ?? '*',
|
|
177
|
-
publicKey,
|
|
178
|
-
queryEndpoint,
|
|
179
|
-
queryHeaders,
|
|
180
|
-
withCredentials: withCredentials ?? false,
|
|
181
|
-
clientId: publicKey,
|
|
182
|
-
};
|
|
183
|
-
if (!client) {
|
|
184
|
-
setClient(initialClient);
|
|
185
|
-
}
|
|
186
|
-
}, []);
|
|
187
168
|
async function loadFiltersForDashboard(dashboardName, filters, updatedFilterLabel) {
|
|
188
169
|
dashboardFiltersDispatch({
|
|
189
170
|
type: 'ADD_DASHBOARD_FILTERS',
|
|
@@ -273,6 +254,8 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
|
|
|
273
254
|
}
|
|
274
255
|
setClient({
|
|
275
256
|
...client,
|
|
257
|
+
queryEndpoint: queryEndpoint,
|
|
258
|
+
withCredentials: withCredentials ?? false,
|
|
276
259
|
multiTenancyDisabled: newClient.multiTenancyDisabled ? true : false,
|
|
277
260
|
databaseType: newClient.databaseType,
|
|
278
261
|
name: newClient.name,
|
|
@@ -283,6 +266,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
|
|
|
283
266
|
: newClient.adminCustomerId,
|
|
284
267
|
recommendedPivotsDisabled: newClient.recommendedPivotsDisabled,
|
|
285
268
|
featureFlags: newClient.featureFlags,
|
|
269
|
+
domainName: newClient.domainName,
|
|
286
270
|
});
|
|
287
271
|
}
|
|
288
272
|
async function fetchDashboards(publicKey) {
|
|
@@ -325,7 +309,9 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
|
|
|
325
309
|
async function updateClientAndSchema(publicKey) {
|
|
326
310
|
setIsClientLoading(true);
|
|
327
311
|
await Promise.allSettled([
|
|
328
|
-
|
|
312
|
+
...(client?.clientId === publicKey
|
|
313
|
+
? []
|
|
314
|
+
: [fetchDatabaseType(publicKey)]),
|
|
329
315
|
fetchDashboards(publicKey),
|
|
330
316
|
]);
|
|
331
317
|
setIsClientLoading(false);
|
|
@@ -336,6 +322,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
|
|
|
336
322
|
if (client) {
|
|
337
323
|
fetchSchema(client, 'context');
|
|
338
324
|
}
|
|
325
|
+
sessionStorage.setItem('quill-client', JSON.stringify(client));
|
|
339
326
|
}, [client]);
|
|
340
327
|
useEffect(() => {
|
|
341
328
|
// Clear context
|
|
@@ -343,7 +330,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
|
|
|
343
330
|
dashboardFiltersDispatch({ type: 'CLEAR_DASHBOARD_FILTERS' });
|
|
344
331
|
reportFiltersDispatch({ type: 'CLEAR_REPORT_FILTERS' });
|
|
345
332
|
dispatch({ type: 'CLEAR_DASHBOARD' });
|
|
346
|
-
}, [client
|
|
333
|
+
}, [client?.clientId]);
|
|
347
334
|
useEffect(() => {
|
|
348
335
|
if (client) {
|
|
349
336
|
setClient({ ...client, organizationId: organizationId ?? '*' });
|
|
@@ -355,7 +342,7 @@ export const ContextProvider = ({ children, initialTheme, publicKey, organizatio
|
|
|
355
342
|
if (!theme) {
|
|
356
343
|
return null;
|
|
357
344
|
}
|
|
358
|
-
return (_jsx(ClientContext.Provider, { value: [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: [dashboardConfig, dashboardConfigDispatch], children: _jsx(DashboardFiltersContext.Provider, { value: {
|
|
345
|
+
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: [dashboardConfig, dashboardConfigDispatch], children: _jsx(DashboardFiltersContext.Provider, { value: {
|
|
359
346
|
dashboardFilters,
|
|
360
347
|
dispatch: dashboardFiltersDispatch,
|
|
361
348
|
loadFiltersForDashboard,
|
package/dist/esm/Dashboard.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import React, { CSSProperties, ReactNode, ChangeEvent } from 'react';
|
|
|
2
2
|
import { TextInputComponentProps } from './components/UiComponents';
|
|
3
3
|
import { Filter } from './models/Filter';
|
|
4
4
|
import { QuillReport } from './models/Report';
|
|
5
|
+
import { Pagination } from './models/Pagination';
|
|
5
6
|
/**
|
|
6
7
|
* The props passed into the ChartComponent, TableComponent, and MetricComponent
|
|
7
8
|
* functions in the dashboard.
|
|
@@ -35,7 +36,7 @@ export interface DashboardProps {
|
|
|
35
36
|
/**
|
|
36
37
|
* The name of the dashboard you created in the Quill Portal.
|
|
37
38
|
*/
|
|
38
|
-
name
|
|
39
|
+
name: string;
|
|
39
40
|
hidden?: boolean;
|
|
40
41
|
/** A component that wraps a dashboard item for 'metric' chart types. */
|
|
41
42
|
MetricComponent?: ({ report, onClick, hoverActions, isLoading, error, }: {
|
|
@@ -276,6 +277,8 @@ export interface DashboardProps {
|
|
|
276
277
|
hideAdminErrors?: boolean;
|
|
277
278
|
/** Template dashboard */
|
|
278
279
|
templateDashboardName?: string;
|
|
280
|
+
/** Pagination settings for each table report in this dashboard */
|
|
281
|
+
pagination?: Pagination;
|
|
279
282
|
}
|
|
280
283
|
/**
|
|
281
284
|
* ### Quill Dashboard
|
|
@@ -308,5 +311,5 @@ export interface DashboardProps {
|
|
|
308
311
|
* ### API Reference
|
|
309
312
|
* @see https://docs.quillsql.com/components/dashboard
|
|
310
313
|
*/
|
|
311
|
-
export default function Dashboard({ name, hidden, SelectComponent, MultiSelectComponent, ModalComponent, ButtonComponent, SecondaryButtonComponent, FilterTagComponent, PopoverComponent, TextInputComponent, EmptyDashboardComponent, DateRangePickerComponent, MetricComponent, ChartComponent, TableComponent, TemplateMetricComponent, TemplateChartComponent, TemplateTableComponent, DashboardSectionComponent, DashboardSectionContainerComponent, FilterContainerComponent, DashboardLoadingComponent, ErrorComponent, onClickReport, hoverActions, onChangeLoading, hideFilters, hideXAxis, hideYAxis, hideCartesianGrid, comparisonLineStyle, containerStyle, className, chartContainerStyle, filters, onClickChartElement, dateBucket, additionalProcessing, hideAdminErrors, templateDashboardName, }: DashboardProps): import("react/jsx-runtime").JSX.Element;
|
|
314
|
+
export default function Dashboard({ name, hidden, SelectComponent, MultiSelectComponent, ModalComponent, ButtonComponent, SecondaryButtonComponent, FilterTagComponent, PopoverComponent, TextInputComponent, EmptyDashboardComponent, DateRangePickerComponent, MetricComponent, ChartComponent, TableComponent, TemplateMetricComponent, TemplateChartComponent, TemplateTableComponent, DashboardSectionComponent, DashboardSectionContainerComponent, FilterContainerComponent, DashboardLoadingComponent, ErrorComponent, onClickReport, hoverActions, onChangeLoading, hideFilters, hideXAxis, hideYAxis, hideCartesianGrid, comparisonLineStyle, containerStyle, className, chartContainerStyle, filters, onClickChartElement, dateBucket, additionalProcessing, hideAdminErrors, templateDashboardName, pagination, }: DashboardProps): import("react/jsx-runtime").JSX.Element;
|
|
312
315
|
//# sourceMappingURL=Dashboard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/Dashboard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAIZ,aAAa,EACb,SAAS,EACT,WAAW,
|
|
1
|
+
{"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/Dashboard.tsx"],"names":[],"mappings":"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"}
|