@quillsql/react 2.13.2 → 2.13.4
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 +3 -13
- package/dist/cjs/ChartBuilder.d.ts +1 -1
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +2 -2
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +1 -3
- package/dist/cjs/Context.d.ts +51 -15
- package/dist/cjs/Context.d.ts.map +1 -1
- package/dist/cjs/Context.js +44 -24
- package/dist/cjs/Dashboard.d.ts +1 -1
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +39 -39
- 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.js +1 -1
- package/dist/cjs/components/Dashboard/DashboardFilter.js +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.js +109 -43
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/MetricComponent.js +14 -3
- 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 +14 -4
- 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/UiComponents.d.ts +1 -0
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +41 -46
- 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/models/Client.d.ts +2 -0
- package/dist/cjs/models/Client.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 +3 -1
- package/dist/cjs/utils/dataFetcher.d.ts +2 -2
- package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
- package/dist/cjs/utils/dataFetcher.js +30 -22
- 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 +7 -4
- package/dist/cjs/utils/tableProcessing.d.ts +1 -1
- package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/tableProcessing.js +6 -2
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +3 -13
- package/dist/esm/ChartBuilder.d.ts +1 -1
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +2 -2
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +1 -3
- package/dist/esm/Context.d.ts +51 -15
- package/dist/esm/Context.d.ts.map +1 -1
- package/dist/esm/Context.js +44 -24
- package/dist/esm/Dashboard.d.ts +1 -1
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +41 -41
- 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.js +1 -1
- package/dist/esm/components/Dashboard/DashboardFilter.js +1 -1
- package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DataLoader.js +109 -43
- package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/MetricComponent.js +14 -3
- 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 +14 -4
- 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/UiComponents.d.ts +1 -0
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +41 -46
- 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/models/Client.d.ts +2 -0
- package/dist/esm/models/Client.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 +3 -1
- package/dist/esm/utils/dataFetcher.d.ts +2 -2
- package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
- package/dist/esm/utils/dataFetcher.js +30 -22
- 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 +7 -4
- package/dist/esm/utils/tableProcessing.d.ts +1 -1
- package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
- package/dist/esm/utils/tableProcessing.js +6 -2
- package/package.json +3 -3
|
@@ -61,7 +61,7 @@ async function testSqlViewState(hostedRequestBody, client, referencedTables) {
|
|
|
61
61
|
}
|
|
62
62
|
// this function gets the data either from the self hosted endpoint or
|
|
63
63
|
// our cloud server
|
|
64
|
-
export async function getData(client, cloudQueryEndpoint, noCred, hostedRequestBody, cloudRequestBody, method = 'POST', queryParam) {
|
|
64
|
+
export async function getData(client, cloudQueryEndpoint, noCred, hostedRequestBody, cloudRequestBody, method = 'POST', queryParam, abortSignal) {
|
|
65
65
|
if (!client) {
|
|
66
66
|
return null;
|
|
67
67
|
}
|
|
@@ -77,6 +77,7 @@ export async function getData(client, cloudQueryEndpoint, noCred, hostedRequestB
|
|
|
77
77
|
},
|
|
78
78
|
credentials: client.withCredentials ? 'include' : noCred,
|
|
79
79
|
body: JSON.stringify(hostedRequestBody),
|
|
80
|
+
signal: abortSignal,
|
|
80
81
|
});
|
|
81
82
|
const responseJson = await resp.json();
|
|
82
83
|
if (responseJson.status === 'error' &&
|
|
@@ -169,38 +170,45 @@ export async function getData(client, cloudQueryEndpoint, noCred, hostedRequestB
|
|
|
169
170
|
}
|
|
170
171
|
else {
|
|
171
172
|
// cloud
|
|
172
|
-
return await getDataFromCloud(client, cloudQueryEndpoint, cloudRequestBody, method);
|
|
173
|
+
return await getDataFromCloud(client, cloudQueryEndpoint, cloudRequestBody, method, abortSignal);
|
|
173
174
|
}
|
|
174
175
|
}
|
|
175
176
|
catch (e) {
|
|
177
|
+
if (e instanceof Error && e.name === 'AbortError') {
|
|
178
|
+
throw e;
|
|
179
|
+
}
|
|
176
180
|
console.error('Failed to parse JSON:', e);
|
|
177
181
|
return null;
|
|
178
182
|
}
|
|
179
183
|
}
|
|
180
|
-
export async function getDataFromCloud(client, cloudQueryEndpoint, cloudRequestBody, method = 'POST') {
|
|
181
|
-
const host = (typeof process !== 'undefined' && process?.env?.QUILL_SERVER_HOST) ||
|
|
182
|
-
'https://quill-344421.uc.r.appspot.com';
|
|
183
|
-
const url = `${host}/${cloudQueryEndpoint}`;
|
|
184
|
-
const resp = await fetch(url, {
|
|
185
|
-
method,
|
|
186
|
-
headers: {
|
|
187
|
-
Authorization: 'Bearer ',
|
|
188
|
-
'Content-Type': 'application/json',
|
|
189
|
-
},
|
|
190
|
-
body: method === 'POST'
|
|
191
|
-
? JSON.stringify({
|
|
192
|
-
...cloudRequestBody,
|
|
193
|
-
...{
|
|
194
|
-
publicKey: client?.publicKey,
|
|
195
|
-
orgId: client?.organizationId,
|
|
196
|
-
},
|
|
197
|
-
})
|
|
198
|
-
: null,
|
|
199
|
-
});
|
|
184
|
+
export async function getDataFromCloud(client, cloudQueryEndpoint, cloudRequestBody, method = 'POST', abortSignal) {
|
|
200
185
|
try {
|
|
186
|
+
const host = (typeof process !== 'undefined' && process?.env?.QUILL_SERVER_HOST) ||
|
|
187
|
+
'https://quill-344421.uc.r.appspot.com';
|
|
188
|
+
const url = `${host}/${cloudQueryEndpoint}`;
|
|
189
|
+
const resp = await fetch(url, {
|
|
190
|
+
method,
|
|
191
|
+
headers: {
|
|
192
|
+
Authorization: 'Bearer ',
|
|
193
|
+
'Content-Type': 'application/json',
|
|
194
|
+
},
|
|
195
|
+
body: method === 'POST'
|
|
196
|
+
? JSON.stringify({
|
|
197
|
+
...cloudRequestBody,
|
|
198
|
+
...{
|
|
199
|
+
publicKey: client?.publicKey,
|
|
200
|
+
orgId: client?.organizationId,
|
|
201
|
+
},
|
|
202
|
+
})
|
|
203
|
+
: null,
|
|
204
|
+
signal: abortSignal,
|
|
205
|
+
});
|
|
201
206
|
return await resp.json();
|
|
202
207
|
}
|
|
203
208
|
catch (e) {
|
|
209
|
+
if (e instanceof Error && e.name === 'AbortError') {
|
|
210
|
+
throw e;
|
|
211
|
+
}
|
|
204
212
|
console.error('Failed to parse JSON:', e);
|
|
205
213
|
return null;
|
|
206
214
|
}
|
|
@@ -3,7 +3,7 @@ import { UniqueValuesByColumn } from '../models/Tables';
|
|
|
3
3
|
import { FilterTreeNode } from './astFilterProcessing';
|
|
4
4
|
export declare function findAndProcessDateFilter(filters: any[]): any;
|
|
5
5
|
export declare function processFilterFromBackend(filter: any): any;
|
|
6
|
-
export declare function updateFilter(filter: any, value
|
|
6
|
+
export declare function updateFilter(filter: any, value: any, comparison: any, dashboardName: string): any;
|
|
7
7
|
export declare const getType: (t: string) => FieldTypes.String | FieldTypes.Number | FieldTypes.Date | FieldTypes.Boolean;
|
|
8
8
|
/**
|
|
9
9
|
* Returns a sentence to describe a Filter
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/filterProcessing.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,UAAU,EACV,MAAM,EAEP,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAmB,MAAM,uBAAuB,CAAC;AAGxE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,CAoB5D;AAMD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,OAkBnD;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,GAAG,EACX,KAAK,
|
|
1
|
+
{"version":3,"file":"filterProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/filterProcessing.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,UAAU,EACV,MAAM,EAEP,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAmB,MAAM,uBAAuB,CAAC;AAGxE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,CAoB5D;AAMD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,OAkBnD;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,GAAG,EACX,KAAK,KAAY,EACjB,UAAU,KAAY,EACtB,aAAa,EAAE,MAAM,OAgGtB;AAGD,eAAO,MAAM,OAAO,MAAO,MAAM,iFAwDhC,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwBrD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,GAAG,GAAG,cAAc,EAAE,CAoCrE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,yBAgCnD;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,cAAc,EAAE,EACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,GACV,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA2B/D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,oBAAoB,GAAG;IAC3E,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACzB,CASA"}
|
|
@@ -41,7 +41,7 @@ export function processFilterFromBackend(filter) {
|
|
|
41
41
|
}
|
|
42
42
|
return filter;
|
|
43
43
|
}
|
|
44
|
-
export function updateFilter(filter, value = null, comparison = null) {
|
|
44
|
+
export function updateFilter(filter, value = null, comparison = null, dashboardName) {
|
|
45
45
|
//for dateObjects only, since values are arrays for dateObjects
|
|
46
46
|
const { ...filterWithoutSelectedValue } = filter;
|
|
47
47
|
if (filter.filterType === 'string') {
|
|
@@ -63,7 +63,7 @@ export function updateFilter(filter, value = null, comparison = null) {
|
|
|
63
63
|
return {
|
|
64
64
|
...filterWithoutSelectedValue,
|
|
65
65
|
...selectedValue,
|
|
66
|
-
dashboardName:
|
|
66
|
+
dashboardName: dashboardName,
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
69
|
if (filter.filterType === 'date' || filter.filterType === 'date_range') {
|
|
@@ -129,7 +129,7 @@ export function updateFilter(filter, value = null, comparison = null) {
|
|
|
129
129
|
field: 'date_range',
|
|
130
130
|
options: filter.options,
|
|
131
131
|
label: 'Date',
|
|
132
|
-
dashboardName:
|
|
132
|
+
dashboardName: dashboardName,
|
|
133
133
|
};
|
|
134
134
|
}
|
|
135
135
|
}
|
|
@@ -23,11 +23,11 @@ export type ReportBuilderInfo = {
|
|
|
23
23
|
};
|
|
24
24
|
export declare const EMPTY_REPORT: QuillReport;
|
|
25
25
|
export declare const EMPTY_INTERNAL_REPORT: QuillReportInternal;
|
|
26
|
-
export declare function fetchReport(reportId: string, client: QuillProviderClient, useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, dateBucket?: string, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean): Promise<{
|
|
26
|
+
export declare function fetchReport(reportId: string, client: QuillProviderClient, useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, dateBucket?: string, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean, abortSignal?: AbortSignal): Promise<{
|
|
27
27
|
report: QuillReportInternal;
|
|
28
28
|
error?: string;
|
|
29
29
|
}>;
|
|
30
|
-
export declare function fetchReportRowCount(reportId: string, client: QuillProviderClient, useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, customFields?: any): Promise<number | undefined>;
|
|
30
|
+
export declare function fetchReportRowCount(reportId: string, client: QuillProviderClient, useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, customFields?: any, abortSignal?: AbortSignal): Promise<number | undefined>;
|
|
31
31
|
export declare function saveReport({ report, dashboardItemId, client, }: {
|
|
32
32
|
report: any;
|
|
33
33
|
dashboardItemId?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,KAAK,EACL,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAa1B,OAAO,EACL,oBAAoB,EAIrB,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7D,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,mBAAmB,CAAC;IAClC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,WAkB1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,mBAGnC,CAAC;AA2BF,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,GAAG,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,YAAY,CAAC,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,KAAK,EACL,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAa1B,OAAO,EACL,oBAAoB,EAIrB,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7D,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,mBAAmB,CAAC;IAClC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,WAkB1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,mBAGnC,CAAC;AA2BF,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,GAAG,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,YAAY,CAAC,EAAE,OAAO,EACtB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAuI1D;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,YAAY,CAAC,EAAE,GAAG,EAClB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAmC7B;AAED,wBAAsB,UAAU,CAAC,EAC/B,MAAM,EACN,eAAe,EACf,MAAM,GACP,EAAE;IACD,MAAM,EAAE,GAAG,CAAC;IACZ,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,GAAG,OAAO,CAAC,GAAG,CAAC,CA4Cf;AAED,eAAO,MAAM,oBAAoB,WAAY,GAAG,QAkB/C,CAAC;AAEF,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,mBAAmB,GAC1B,WAAW,CAsDb;AAED,eAAO,MAAM,6BAA6B,YAC/B,GAAG,YACF,GAAG,UACL,KAAK,EAAE,UACP,mBAAmB,UACnB,KAAK,qBACM,GAAG,iBACP,MAAM,qBACF;IACjB,aAAa,EAAE,mBAAmB,CAAC;IACnC,UAAU,EAAE,kBAAkB,CAAC;CAChC,WACQ,mBAAmB,iBACb,GAAG,qBACC,OAAO,iBACX,OAAO,eACT,oBAAoB,KAChC,QAAQ,iBAAiB,CAgK3B,CAAC"}
|
package/dist/esm/utils/report.js
CHANGED
|
@@ -61,7 +61,7 @@ function extractAllReportValuesFromQuillInternalReport(reportInternal) {
|
|
|
61
61
|
template: reportInternal.template,
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
|
-
export async function fetchReport(reportId, client, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly) {
|
|
64
|
+
export async function fetchReport(reportId, client, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal) {
|
|
65
65
|
let reportInfo = undefined;
|
|
66
66
|
let errorMessage = undefined;
|
|
67
67
|
try {
|
|
@@ -87,7 +87,7 @@ export async function fetchReport(reportId, client, useReportTask = true, filter
|
|
|
87
87
|
filters: filters,
|
|
88
88
|
useNewNodeSql: true,
|
|
89
89
|
};
|
|
90
|
-
const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody, 'POST', 'fetch-data');
|
|
90
|
+
const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody, 'POST', 'fetch-data', abortSignal);
|
|
91
91
|
processFilterErrorList(resp);
|
|
92
92
|
const dashboardItem = { ...resp, filtersApplied: filters };
|
|
93
93
|
if (resp.errorMessage) {
|
|
@@ -133,6 +133,9 @@ export async function fetchReport(reportId, client, useReportTask = true, filter
|
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
135
|
catch (error) {
|
|
136
|
+
if (error instanceof Error && error.name === 'AbortError') {
|
|
137
|
+
throw error;
|
|
138
|
+
}
|
|
136
139
|
if (error instanceof DataLoadError) {
|
|
137
140
|
if (error.data.useReportTask) {
|
|
138
141
|
internalLog('USING ITEM AS BACKUP');
|
|
@@ -163,7 +166,7 @@ export async function fetchReport(reportId, client, useReportTask = true, filter
|
|
|
163
166
|
}
|
|
164
167
|
return { report: reportInfo || EMPTY_INTERNAL_REPORT, error: errorMessage };
|
|
165
168
|
}
|
|
166
|
-
export async function fetchReportRowCount(reportId, client, useReportTask = true, filters = [], additionalProcessing, customFields) {
|
|
169
|
+
export async function fetchReportRowCount(reportId, client, useReportTask = true, filters = [], additionalProcessing, customFields, abortSignal) {
|
|
167
170
|
// Remove extra fields on each filter so we don't confuse the backend.
|
|
168
171
|
const hostedBody = {
|
|
169
172
|
metadata: {
|
|
@@ -185,7 +188,7 @@ export async function fetchReportRowCount(reportId, client, useReportTask = true
|
|
|
185
188
|
filters: filters,
|
|
186
189
|
useNewNodeSql: true,
|
|
187
190
|
};
|
|
188
|
-
const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody, 'POST', 'fetch-data');
|
|
191
|
+
const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody, 'POST', 'fetch-data', abortSignal);
|
|
189
192
|
return resp.rowCount;
|
|
190
193
|
}
|
|
191
194
|
export async function saveReport({ report, dashboardItemId, client, }) {
|
|
@@ -52,7 +52,7 @@ export declare const fetchResultsByQuery: (query: string, client: QuillProviderC
|
|
|
52
52
|
error?: string | undefined;
|
|
53
53
|
itemQuery?: string[] | undefined;
|
|
54
54
|
}>;
|
|
55
|
-
export declare const fetchResultsByReport: (reportId: string, client: QuillProviderClient, processing?: AdditionalProcessing, filters?: any, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean) => Promise<{
|
|
55
|
+
export declare const fetchResultsByReport: (reportId: string, client: QuillProviderClient, processing?: AdditionalProcessing, filters?: any, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean, abortSignal?: AbortSignal) => Promise<{
|
|
56
56
|
columns: Column[];
|
|
57
57
|
rows: any[];
|
|
58
58
|
rowCount?: number | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACd,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAgB5E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,cAAc,YAChB,MAAM,EAAE,qBACE,MAAM,EAAE,KAC1B,OAUF,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,MAAM,EAAE,SACV,MAAM,QACP,GAAG,UACD,mBAAmB,gBACb,GAAG,EAAE;;;;SAmEpB,CAAC;AAEF,eAAO,MAAM,qBAAqB,YACvB,cAAc,EAAE,aACd,MAAM,UACT,GAAG,iBACI,GAAG,yBACK,GAAG,wBACJ,OAAO,UACrB,MAAM,iBA2Cf,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,cAAc,EAAE,UACjB,mBAAmB,SACpB,MAAM,iBACE,GAAG;;;;EA6DnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,YACpB,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,gBACb,GAAG,EAAE,KAClB,QAAQ;IACT,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACvC,CAiDA,CAAC;AAkDF,eAAO,MAAM,qBAAqB,YACvB,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,gBACb,GAAG,EAAE;;mBAEY;YAAE,KAAK,EAAE,IAAI,CAAC;YAAC,GAAG,EAAE,IAAI,CAAA;SAAE;;SAiB1D,CAAC;AA2DF,eAAO,MAAM,gBAAgB,WACnB,mBAAmB,UACnB,MAAM,aACH,MAAM,eACJ,oBAAoB,YACvB,GAAG,iBACE,GAAG,KACjB,QAAQ;IACT,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAaA,CAAC;AAEF,eAAO,MAAM,mBAAmB,UACvB,MAAM,UACL,mBAAmB,eACd,oBAAoB,iBAClB,GAAG,YACR,eAAe,EAAE,cACf;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,aACxC,OAAO,iBACH,OAAO;aAEb,cAAc,EAAE;UACnB,GAAG,EAAE;;;;EA2DZ,CAAC;AAEF,eAAO,MAAM,oBAAoB,aACrB,MAAM,UACR,mBAAmB,eACd,oBAAoB,YACvB,GAAG,iBACE,GAAG,aACP,OAAO,iBACH,OAAO;
|
|
1
|
+
{"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACd,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAgB5E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,cAAc,YAChB,MAAM,EAAE,qBACE,MAAM,EAAE,KAC1B,OAUF,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,MAAM,EAAE,SACV,MAAM,QACP,GAAG,UACD,mBAAmB,gBACb,GAAG,EAAE;;;;SAmEpB,CAAC;AAEF,eAAO,MAAM,qBAAqB,YACvB,cAAc,EAAE,aACd,MAAM,UACT,GAAG,iBACI,GAAG,yBACK,GAAG,wBACJ,OAAO,UACrB,MAAM,iBA2Cf,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,cAAc,EAAE,UACjB,mBAAmB,SACpB,MAAM,iBACE,GAAG;;;;EA6DnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,YACpB,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,gBACb,GAAG,EAAE,KAClB,QAAQ;IACT,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACvC,CAiDA,CAAC;AAkDF,eAAO,MAAM,qBAAqB,YACvB,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,gBACb,GAAG,EAAE;;mBAEY;YAAE,KAAK,EAAE,IAAI,CAAC;YAAC,GAAG,EAAE,IAAI,CAAA;SAAE;;SAiB1D,CAAC;AA2DF,eAAO,MAAM,gBAAgB,WACnB,mBAAmB,UACnB,MAAM,aACH,MAAM,eACJ,oBAAoB,YACvB,GAAG,iBACE,GAAG,KACjB,QAAQ;IACT,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAaA,CAAC;AAEF,eAAO,MAAM,mBAAmB,UACvB,MAAM,UACL,mBAAmB,eACd,oBAAoB,iBAClB,GAAG,YACR,eAAe,EAAE,cACf;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,aACxC,OAAO,iBACH,OAAO;aAEb,cAAc,EAAE;UACnB,GAAG,EAAE;;;;EA2DZ,CAAC;AAEF,eAAO,MAAM,oBAAoB,aACrB,MAAM,UACR,mBAAmB,eACd,oBAAoB,YACvB,GAAG,iBACE,GAAG,aACP,OAAO,iBACH,OAAO,gBACR,WAAW;aAEhB,MAAM,EAAE;UACX,GAAG,EAAE;;;EAyFZ,CAAC;AAEF,eAAO,MAAM,eAAe,QACrB,cAAc,MAAM,UACjB,mBAAmB,eACd,oBAAoB,iBAClB,GAAG,aACP,OAAO,iBACH,OAAO;aAEb,cAAc,EAAE;UACnB,GAAG,EAAE;;;;EAyDZ,CAAC;AAEF,eAAO,MAAM,+CAA+C,0BACnC,oBAAoB;;CAU5C,CAAC"}
|
|
@@ -296,7 +296,7 @@ export const fetchResultsByQuery = async (query, client, processing, customField
|
|
|
296
296
|
}
|
|
297
297
|
return { rows, columns, rowCount, error, itemQuery };
|
|
298
298
|
};
|
|
299
|
-
export const fetchResultsByReport = async (reportId, client, processing, filters, customFields, rowsOnly, rowCountOnly) => {
|
|
299
|
+
export const fetchResultsByReport = async (reportId, client, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal) => {
|
|
300
300
|
const updatedProcessing = { ...processing };
|
|
301
301
|
let rows = [];
|
|
302
302
|
let columns = [];
|
|
@@ -340,7 +340,7 @@ export const fetchResultsByReport = async (reportId, client, processing, filters
|
|
|
340
340
|
filters: [],
|
|
341
341
|
useNewNodeSql: true,
|
|
342
342
|
};
|
|
343
|
-
const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody);
|
|
343
|
+
const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody, undefined, undefined, abortSignal);
|
|
344
344
|
if (resp.errorMessage) {
|
|
345
345
|
throw new Error(resp.errorMessage);
|
|
346
346
|
}
|
|
@@ -361,6 +361,10 @@ export const fetchResultsByReport = async (reportId, client, processing, filters
|
|
|
361
361
|
}
|
|
362
362
|
}
|
|
363
363
|
catch (e) {
|
|
364
|
+
if (e instanceof Error && e.name === 'AbortError') {
|
|
365
|
+
console.log('Aborted fetch results by report');
|
|
366
|
+
throw e;
|
|
367
|
+
}
|
|
364
368
|
rows = [];
|
|
365
369
|
columns = [];
|
|
366
370
|
rowCount = 0;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quillsql/react",
|
|
3
|
-
"version": "2.13.
|
|
3
|
+
"version": "2.13.4",
|
|
4
4
|
"exports": {
|
|
5
5
|
".": {
|
|
6
6
|
"import": "./dist/esm/index.js",
|
|
@@ -26,7 +26,8 @@
|
|
|
26
26
|
"date-fns": "^2.29.3",
|
|
27
27
|
"date-fns-tz": "^2.0.0",
|
|
28
28
|
"fast-deep-equal": "^3.1.3",
|
|
29
|
-
"
|
|
29
|
+
"jspdf": "^2.5.2",
|
|
30
|
+
"react-dom": "^18.2.0",
|
|
30
31
|
"recharts": "^2.12.5"
|
|
31
32
|
},
|
|
32
33
|
"devDependencies": {
|
|
@@ -39,7 +40,6 @@
|
|
|
39
40
|
"@types/react-dom": "^18.2.18",
|
|
40
41
|
"eslint": "^8.56.0",
|
|
41
42
|
"react": "^18.2.0",
|
|
42
|
-
"react-dom": "^18.2.0",
|
|
43
43
|
"typescript": "^5.3.3"
|
|
44
44
|
},
|
|
45
45
|
"access": "public"
|