@quillsql/react 2.13.48 → 2.13.50
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 +2 -2
- package/dist/cjs/Chart.d.ts.map +1 -1
- package/dist/cjs/Chart.js +31 -43
- package/dist/cjs/ChartBuilder.d.ts +2 -2
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +172 -147
- package/dist/cjs/ChartEditor.d.ts +2 -2
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +3 -1
- package/dist/cjs/Context.d.ts +10 -3
- package/dist/cjs/Context.d.ts.map +1 -1
- package/dist/cjs/Context.js +328 -250
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +12 -25
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +32 -14
- package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts +24 -10
- package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
- package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +472 -96
- package/dist/cjs/QuillProvider.d.ts +7 -1
- package/dist/cjs/QuillProvider.d.ts.map +1 -1
- package/dist/cjs/QuillProvider.js +6 -5
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +23 -11
- package/dist/cjs/SQLEditor.d.ts +1 -1
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +52 -18
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +20 -7
- package/dist/cjs/assets/ExclamationFilledIcon.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarChart.js +4 -2
- package/dist/cjs/components/Chart/BarList.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarList.js +2 -1
- package/dist/cjs/components/Chart/CustomReferenceLine.d.ts +1 -1
- package/dist/cjs/components/Chart/CustomReferenceLine.d.ts.map +1 -1
- package/dist/cjs/components/Chart/CustomReferenceLine.js +7 -6
- package/dist/cjs/components/Chart/GaugeChart.d.ts +1 -1
- package/dist/cjs/components/Chart/GaugeChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/GaugeChart.js +62 -35
- package/dist/cjs/components/Chart/InternalChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/InternalChart.js +32 -34
- package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/LineChart.js +5 -2
- package/dist/cjs/components/Chart/MapChart.d.ts +3 -3
- package/dist/cjs/components/Chart/MapChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/MapChart.js +62 -34
- package/dist/cjs/components/Chart/PieChart.d.ts +3 -1
- package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/PieChart.js +82 -40
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DashboardFilter.js +4 -20
- package/dist/cjs/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DashboardTemplate.js +2 -1
- package/dist/cjs/components/Dashboard/DataLoader.d.ts +4 -4
- package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.js +31 -14
- package/dist/cjs/components/Dashboard/MetricComponent.js +4 -3
- package/dist/cjs/components/Dashboard/util.d.ts +1 -1
- package/dist/cjs/components/Dashboard/util.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/util.js +7 -6
- package/dist/cjs/components/QuillMultiSelect.d.ts.map +1 -1
- package/dist/cjs/components/QuillMultiSelect.js +15 -9
- package/dist/cjs/components/QuillMultiSelectSectionList.d.ts.map +1 -1
- package/dist/cjs/components/QuillMultiSelectSectionList.js +52 -34
- package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.js +204 -171
- package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelect.js +93 -82
- package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelectWithCombo.js +101 -99
- package/dist/cjs/components/QuillTable.d.ts.map +1 -1
- package/dist/cjs/components/QuillTable.js +1 -0
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +2 -1
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/FilterStack.js +3 -4
- package/dist/cjs/components/ReportBuilder/ui.d.ts +2 -2
- package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.js +5 -7
- package/dist/cjs/components/UiComponents.d.ts +7 -0
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +92 -5
- package/dist/cjs/hooks/useAskQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useAskQuill.js +5 -1
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +96 -58
- package/dist/cjs/hooks/useExport.d.ts.map +1 -1
- package/dist/cjs/hooks/useExport.js +23 -13
- package/dist/cjs/hooks/useOnClickOutside.d.ts.map +1 -1
- package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useQuill.js +8 -10
- package/dist/cjs/hooks/useReport.d.ts.map +1 -1
- package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -1
- package/dist/cjs/hooks/useVirtualTables.js +16 -22
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +2 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +19 -7
- package/dist/cjs/models/Client.d.ts +0 -1
- package/dist/cjs/models/Client.d.ts.map +1 -1
- package/dist/cjs/models/Data.d.ts +20 -0
- package/dist/cjs/models/Data.d.ts.map +1 -0
- package/dist/cjs/models/Data.js +2 -0
- package/dist/cjs/models/Filter.d.ts +42 -4
- package/dist/cjs/models/Filter.d.ts.map +1 -1
- package/dist/cjs/models/Pivot.d.ts.map +1 -1
- package/dist/cjs/utils/astProcessing.d.ts +3 -2
- package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/astProcessing.js +28 -37
- package/dist/cjs/utils/client.d.ts +3 -2
- package/dist/cjs/utils/client.d.ts.map +1 -1
- package/dist/cjs/utils/client.js +38 -39
- package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/columnProcessing.js +14 -3
- package/dist/cjs/utils/constants.d.ts +1 -0
- package/dist/cjs/utils/constants.d.ts.map +1 -1
- package/dist/cjs/utils/constants.js +2 -1
- package/dist/cjs/utils/dashboard.d.ts +3 -2
- package/dist/cjs/utils/dashboard.d.ts.map +1 -1
- package/dist/cjs/utils/dashboard.js +30 -12
- package/dist/cjs/utils/dataFetcher.d.ts +8 -5
- package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
- package/dist/cjs/utils/dataFetcher.js +188 -65
- package/dist/cjs/utils/filterProcessing.d.ts +2 -1
- package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/filterProcessing.js +24 -38
- package/dist/cjs/utils/getDomain.d.ts.map +1 -1
- package/dist/cjs/utils/pivotConstructor.d.ts +2 -1
- package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/cjs/utils/pivotConstructor.js +15 -11
- package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/pivotProcessing.js +3 -5
- package/dist/cjs/utils/queryConstructor.js +1 -1
- package/dist/cjs/utils/report.d.ts +10 -7
- package/dist/cjs/utils/report.d.ts.map +1 -1
- package/dist/cjs/utils/report.js +52 -60
- package/dist/cjs/utils/schema.d.ts +4 -3
- package/dist/cjs/utils/schema.d.ts.map +1 -1
- package/dist/cjs/utils/schema.js +30 -44
- package/dist/cjs/utils/tableProcessing.d.ts +16 -10
- package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/tableProcessing.js +91 -90
- package/dist/cjs/utils/textProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/textProcessing.js +2 -1
- package/dist/cjs/utils/ui.d.ts.map +1 -1
- package/dist/esm/Chart.d.ts +2 -2
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +33 -45
- package/dist/esm/ChartBuilder.d.ts +2 -2
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +173 -148
- package/dist/esm/ChartEditor.d.ts +2 -2
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +4 -2
- package/dist/esm/Context.d.ts +10 -3
- package/dist/esm/Context.d.ts.map +1 -1
- package/dist/esm/Context.js +330 -252
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +14 -27
- package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
- package/dist/esm/DateRangePicker/QuillDateRangePicker.js +32 -14
- package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +24 -10
- package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
- package/dist/esm/DateRangePicker/dateRangePickerUtils.js +471 -95
- package/dist/esm/QuillProvider.d.ts +7 -1
- package/dist/esm/QuillProvider.d.ts.map +1 -1
- package/dist/esm/QuillProvider.js +6 -5
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +25 -13
- package/dist/esm/SQLEditor.d.ts +1 -1
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +55 -21
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +21 -8
- package/dist/esm/assets/ExclamationFilledIcon.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarChart.js +4 -2
- package/dist/esm/components/Chart/BarList.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarList.js +2 -1
- package/dist/esm/components/Chart/CustomReferenceLine.d.ts +1 -1
- package/dist/esm/components/Chart/CustomReferenceLine.d.ts.map +1 -1
- package/dist/esm/components/Chart/CustomReferenceLine.js +8 -7
- package/dist/esm/components/Chart/GaugeChart.d.ts +1 -1
- package/dist/esm/components/Chart/GaugeChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/GaugeChart.js +64 -37
- package/dist/esm/components/Chart/InternalChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/InternalChart.js +34 -36
- package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/LineChart.js +5 -2
- package/dist/esm/components/Chart/MapChart.d.ts +3 -3
- package/dist/esm/components/Chart/MapChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/MapChart.js +67 -39
- package/dist/esm/components/Chart/PieChart.d.ts +3 -1
- package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/PieChart.js +82 -40
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DashboardFilter.js +5 -21
- package/dist/esm/components/Dashboard/DashboardSection.js +2 -2
- package/dist/esm/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DashboardTemplate.js +3 -2
- package/dist/esm/components/Dashboard/DataLoader.d.ts +4 -4
- package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DataLoader.js +32 -15
- package/dist/esm/components/Dashboard/MetricComponent.js +4 -3
- package/dist/esm/components/Dashboard/util.d.ts +1 -1
- package/dist/esm/components/Dashboard/util.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/util.js +8 -7
- package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -1
- package/dist/esm/components/QuillMultiSelect.js +15 -9
- package/dist/esm/components/QuillMultiSelectSectionList.d.ts.map +1 -1
- package/dist/esm/components/QuillMultiSelectSectionList.js +52 -34
- package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.js +205 -172
- package/dist/esm/components/QuillSelect.d.ts.map +1 -1
- package/dist/esm/components/QuillSelect.js +95 -84
- package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillSelectWithCombo.js +102 -100
- package/dist/esm/components/QuillTable.d.ts.map +1 -1
- package/dist/esm/components/QuillTable.js +1 -0
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts +2 -1
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/FilterStack.js +3 -4
- package/dist/esm/components/ReportBuilder/ui.d.ts +2 -2
- package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.js +5 -7
- package/dist/esm/components/UiComponents.d.ts +7 -0
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +90 -4
- package/dist/esm/hooks/useAskQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useAskQuill.js +6 -2
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +98 -60
- package/dist/esm/hooks/useExport.d.ts.map +1 -1
- package/dist/esm/hooks/useExport.js +25 -15
- package/dist/esm/hooks/useOnClickOutside.d.ts.map +1 -1
- package/dist/esm/hooks/useQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useQuill.js +9 -11
- package/dist/esm/hooks/useReport.d.ts.map +1 -1
- package/dist/esm/hooks/useReport.js +1 -1
- package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -1
- package/dist/esm/hooks/useVirtualTables.js +17 -23
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +2 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +20 -8
- package/dist/esm/models/Client.d.ts +0 -1
- package/dist/esm/models/Client.d.ts.map +1 -1
- package/dist/esm/models/Data.d.ts +20 -0
- package/dist/esm/models/Data.d.ts.map +1 -0
- package/dist/esm/models/Data.js +1 -0
- package/dist/esm/models/Filter.d.ts +42 -4
- package/dist/esm/models/Filter.d.ts.map +1 -1
- package/dist/esm/models/Pivot.d.ts.map +1 -1
- package/dist/esm/utils/astProcessing.d.ts +3 -2
- package/dist/esm/utils/astProcessing.d.ts.map +1 -1
- package/dist/esm/utils/astProcessing.js +28 -37
- package/dist/esm/utils/client.d.ts +3 -2
- package/dist/esm/utils/client.d.ts.map +1 -1
- package/dist/esm/utils/client.js +38 -39
- package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
- package/dist/esm/utils/columnProcessing.js +14 -3
- package/dist/esm/utils/constants.d.ts +1 -0
- package/dist/esm/utils/constants.d.ts.map +1 -1
- package/dist/esm/utils/constants.js +1 -0
- package/dist/esm/utils/dashboard.d.ts +3 -2
- package/dist/esm/utils/dashboard.d.ts.map +1 -1
- package/dist/esm/utils/dashboard.js +31 -13
- package/dist/esm/utils/dataFetcher.d.ts +8 -5
- package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
- package/dist/esm/utils/dataFetcher.js +186 -65
- package/dist/esm/utils/filterProcessing.d.ts +2 -1
- package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
- package/dist/esm/utils/filterProcessing.js +25 -39
- package/dist/esm/utils/getDomain.d.ts.map +1 -1
- package/dist/esm/utils/pivotConstructor.d.ts +2 -1
- package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/esm/utils/pivotConstructor.js +16 -12
- package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
- package/dist/esm/utils/pivotProcessing.js +5 -7
- package/dist/esm/utils/queryConstructor.js +1 -1
- package/dist/esm/utils/report.d.ts +10 -7
- package/dist/esm/utils/report.d.ts.map +1 -1
- package/dist/esm/utils/report.js +53 -61
- package/dist/esm/utils/schema.d.ts +4 -3
- package/dist/esm/utils/schema.d.ts.map +1 -1
- package/dist/esm/utils/schema.js +30 -44
- package/dist/esm/utils/tableProcessing.d.ts +16 -10
- package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
- package/dist/esm/utils/tableProcessing.js +93 -92
- package/dist/esm/utils/textProcessing.d.ts.map +1 -1
- package/dist/esm/utils/textProcessing.js +2 -1
- package/dist/esm/utils/ui.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -40,9 +40,13 @@ function filterValuesEquivalent(filters1, filters2) {
|
|
|
40
40
|
// Find the odd filters out and return false ONLY if they have a selected value or are a date filter
|
|
41
41
|
const filters1Labels = filters1.map((f) => f.label);
|
|
42
42
|
const filters2Labels = filters2.map((f) => f.label);
|
|
43
|
-
const oddFilters = filters1Labels.length > filters2Labels.length
|
|
43
|
+
const oddFilters = filters1Labels.length > filters2Labels.length
|
|
44
|
+
? filters1Labels.filter((label) => !filters2Labels.includes(label))
|
|
45
|
+
: filters2Labels.filter((label) => !filters1Labels.includes(label));
|
|
44
46
|
for (const filter of oddFilters) {
|
|
45
|
-
const filter1 = filters1Labels.length > filters2Labels.length
|
|
47
|
+
const filter1 = filters1Labels.length > filters2Labels.length
|
|
48
|
+
? filters1.find((f) => f.label === filter)
|
|
49
|
+
: filters2.find((f) => f.label === filter);
|
|
46
50
|
if (filter1?.selectedValue || filter1?.startDate || filter1?.endDate) {
|
|
47
51
|
return false;
|
|
48
52
|
}
|
|
@@ -164,13 +168,14 @@ function userFilterValuesEquivalent(filters1, filters2) {
|
|
|
164
168
|
function customFieldsEquivalent(customFields1, customFields2) {
|
|
165
169
|
return (0, fast_deep_equal_1.default)(customFields1, customFields2);
|
|
166
170
|
}
|
|
167
|
-
function DataLoader({ item, children, filters, userFilters, additionalProcessing: defaultAdditionalProcessing, dashboardName,
|
|
171
|
+
function DataLoader({ item, children, filters, userFilters, additionalProcessing: defaultAdditionalProcessing, dashboardName, propagateChanges, }) {
|
|
168
172
|
const [client] = (0, react_1.useContext)(Context_1.ClientContext);
|
|
169
|
-
const { dashboardReports: dashboard, addReport, updateReport } = (0, useDashboard_1.useDashboardReports)(dashboardName);
|
|
173
|
+
const { dashboardReports: dashboard, addReport, updateReport, } = (0, useDashboard_1.useDashboardReports)(dashboardName);
|
|
170
174
|
const { dashboardFilters } = (0, react_1.useContext)(Context_1.DashboardFiltersContext);
|
|
171
175
|
const { tenants, flags } = (0, react_1.useContext)(Context_1.TenantContext);
|
|
172
176
|
const { reports, reportsDispatch, fetchIndividualReport } = (0, react_1.useContext)(Context_1.ReportsContext);
|
|
173
177
|
const { reportFilters } = (0, react_1.useContext)(Context_1.ReportFiltersContext);
|
|
178
|
+
const { getToken } = (0, react_1.useContext)(Context_1.FetchContext);
|
|
174
179
|
const contextFilters = (0, react_1.useMemo)(() => {
|
|
175
180
|
return dashboardName
|
|
176
181
|
? Object.values(dashboardFilters[dashboardName] ?? {}).map((f) => f.filter)
|
|
@@ -217,7 +222,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
217
222
|
rowCountAbortController.current?.abort();
|
|
218
223
|
rowCountAbortController.current = new AbortController();
|
|
219
224
|
try {
|
|
220
|
-
const rowCount = await (0, report_1.fetchReportRowCount)(item.id, client, tenants, flags, true, filters.concat(userFilters ?? []), processing, schemaData.customFields, rowCountAbortController.current.signal);
|
|
225
|
+
const rowCount = await (0, report_1.fetchReportRowCount)(item.id, client, getToken, tenants, flags, true, filters.concat(userFilters ?? []), processing, schemaData.customFields, rowCountAbortController.current.signal);
|
|
221
226
|
rowCountAbortController.current = null;
|
|
222
227
|
if (rowCount) {
|
|
223
228
|
if (dashboardName) {
|
|
@@ -288,8 +293,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
288
293
|
const updatedProcessing = { ...additionalProcessing, ...processing };
|
|
289
294
|
const pivotQuery = (dashboardName ? dashboard : reports)[item.id]
|
|
290
295
|
?.pivotQuery;
|
|
291
|
-
const comparisonPivotQuery = (dashboardName ? dashboard : reports)[item.id]
|
|
292
|
-
?.comparisonPivotQuery;
|
|
296
|
+
const comparisonPivotQuery = (dashboardName ? dashboard : reports)[item.id]?.comparisonPivotQuery;
|
|
293
297
|
const paginatedRows = await (0, tableProcessing_1.fetchResultsByReport)({
|
|
294
298
|
reportId: item.id,
|
|
295
299
|
client,
|
|
@@ -303,6 +307,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
303
307
|
pivotQuery,
|
|
304
308
|
comparisonPivotQuery,
|
|
305
309
|
getPivotRowCount: false,
|
|
310
|
+
getToken,
|
|
306
311
|
});
|
|
307
312
|
updateTableRowsAbortController.current = null;
|
|
308
313
|
if (paginatedRows.error) {
|
|
@@ -374,6 +379,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
374
379
|
rowsOnly: true,
|
|
375
380
|
rowCountOnly: false,
|
|
376
381
|
abortSignal: rowsAbortController.current.signal,
|
|
382
|
+
getToken,
|
|
377
383
|
});
|
|
378
384
|
addReport({
|
|
379
385
|
...fetchedReport,
|
|
@@ -397,7 +403,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
397
403
|
additionalProcessing: processing,
|
|
398
404
|
reportAbortController: rowsAbortController.current,
|
|
399
405
|
customFields: schemaData.customFields,
|
|
400
|
-
|
|
406
|
+
propagateChanges,
|
|
401
407
|
});
|
|
402
408
|
rowsAbortController.current = null;
|
|
403
409
|
setError(undefined);
|
|
@@ -432,7 +438,8 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
432
438
|
userFilterValuesEquivalent(previousUserFilters.current ?? [], userFilters ?? []) &&
|
|
433
439
|
// tenantsEquivalent(previousTenants.current ?? [], tenants ?? []) &&
|
|
434
440
|
customFieldsEquivalent(previousCustomFields.current, schemaData.customFields) &&
|
|
435
|
-
((dashboardName ? dashboard : reports)[item.id]?.rows !== undefined ||
|
|
441
|
+
((dashboardName ? dashboard : reports)[item.id]?.rows !== undefined ||
|
|
442
|
+
rowsAbortController.current))) {
|
|
436
443
|
if (!rowsAbortController.current && !schemaData.isSchemaLoading)
|
|
437
444
|
setLoading(false);
|
|
438
445
|
return;
|
|
@@ -459,7 +466,10 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
459
466
|
else if (tempReport?.error) {
|
|
460
467
|
setError(tempReport.error);
|
|
461
468
|
}
|
|
462
|
-
}, [
|
|
469
|
+
}, [
|
|
470
|
+
(dashboardName ? dashboard : reports)[item.id]?.triggerReload,
|
|
471
|
+
(dashboardName ? dashboard : reports)[item.id]?.error,
|
|
472
|
+
]);
|
|
463
473
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children({
|
|
464
474
|
isLoading: loading,
|
|
465
475
|
error,
|
|
@@ -472,10 +482,11 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
|
|
|
472
482
|
}
|
|
473
483
|
// The same data-loader pattern as above, but with special logic for charts
|
|
474
484
|
// At some point these may be able to get merged into one function.
|
|
475
|
-
const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, filters, userFilters, dashboardName,
|
|
485
|
+
const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, filters, userFilters, dashboardName, propagateChanges, }) => {
|
|
476
486
|
const { dashboardReports: dashboard, addReport } = (0, useDashboard_1.useDashboardReports)(dashboardName);
|
|
477
487
|
const { dashboardFilters } = (0, react_1.useContext)(Context_1.DashboardFiltersContext);
|
|
478
488
|
const { reports, fetchIndividualReport } = (0, react_1.useContext)(Context_1.ReportsContext);
|
|
489
|
+
const { getToken } = (0, react_1.useContext)(Context_1.FetchContext);
|
|
479
490
|
const { reportFilters } = (0, react_1.useContext)(Context_1.ReportFiltersContext);
|
|
480
491
|
const { tenants, flags } = (0, react_1.useContext)(Context_1.TenantContext);
|
|
481
492
|
const contextFilters = (0, react_1.useMemo)(() => {
|
|
@@ -534,6 +545,7 @@ const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, fil
|
|
|
534
545
|
dateBucket,
|
|
535
546
|
customFields: schemaData.customFields,
|
|
536
547
|
abortSignal: fetchReportAbortController.current.signal,
|
|
548
|
+
getToken,
|
|
537
549
|
});
|
|
538
550
|
addReport({
|
|
539
551
|
...report,
|
|
@@ -559,7 +571,7 @@ const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, fil
|
|
|
559
571
|
dateBucket,
|
|
560
572
|
reportAbortController: fetchReportAbortController.current,
|
|
561
573
|
customFields: schemaData.customFields,
|
|
562
|
-
|
|
574
|
+
propagateChanges,
|
|
563
575
|
});
|
|
564
576
|
setError(undefined);
|
|
565
577
|
}
|
|
@@ -593,7 +605,9 @@ const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, fil
|
|
|
593
605
|
// tenantsEquivalent(tenants ?? [], previousTenants.current ?? []) &&
|
|
594
606
|
previousDateBucket.current === dateBucket &&
|
|
595
607
|
customFieldsEquivalent(previousCustomFields.current, schemaData.customFields) &&
|
|
596
|
-
((dashboardName ? dashboard : reports)[item.id]?.rows?.length !==
|
|
608
|
+
((dashboardName ? dashboard : reports)[item.id]?.rows?.length !==
|
|
609
|
+
undefined ||
|
|
610
|
+
fetchReportAbortController.current))) {
|
|
597
611
|
if (!fetchReportAbortController.current && !schemaData.isSchemaLoading)
|
|
598
612
|
setLoading(false);
|
|
599
613
|
return;
|
|
@@ -621,7 +635,10 @@ const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, fil
|
|
|
621
635
|
else if (tempReport?.error) {
|
|
622
636
|
setError(tempReport.error);
|
|
623
637
|
}
|
|
624
|
-
}, [
|
|
638
|
+
}, [
|
|
639
|
+
(dashboardName ? dashboard : reports)[item.id]?.triggerReload,
|
|
640
|
+
(dashboardName ? dashboard : reports)[item.id]?.error,
|
|
641
|
+
]);
|
|
625
642
|
return children({
|
|
626
643
|
isLoading: !chartReport || loading,
|
|
627
644
|
data: chartReport,
|
|
@@ -69,18 +69,19 @@ function QuillMetricComponent({ report, onClick, error, isLoading, children, })
|
|
|
69
69
|
report.rows[0][report.xAxisField] === null ? ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
70
70
|
display: 'flex',
|
|
71
71
|
flex: '1 0 auto',
|
|
72
|
-
height: '100%',
|
|
72
|
+
// height: '100%',
|
|
73
73
|
margin: 'auto',
|
|
74
74
|
justifyContent: 'center',
|
|
75
75
|
alignItems: 'center',
|
|
76
76
|
fontSize: 13,
|
|
77
|
+
fontFamily: theme?.fontFamily,
|
|
77
78
|
color: theme?.secondaryTextColor,
|
|
78
79
|
maxWidth: '100%',
|
|
79
80
|
width: '100%',
|
|
80
81
|
}, children: "No results" })) : ((0, jsx_runtime_1.jsx)(MetricDisplay, { dateFilter: dateFilter, primaryMetricLabel: primaryMetricLabel, comparisonLabel: comparisonLabel, theme: theme, children: children }))] }) }) }, report?.name));
|
|
81
82
|
}
|
|
82
83
|
const MetricDisplay = ({ children, dateFilter, primaryMetricLabel, comparisonLabel, theme, }) => {
|
|
83
|
-
return (0, jsx_runtime_1.jsx)("div", { style: {
|
|
84
|
+
return ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
84
85
|
padding: 0,
|
|
85
86
|
height: '100%',
|
|
86
87
|
width: '100%',
|
|
@@ -133,5 +134,5 @@ const MetricDisplay = ({ children, dateFilter, primaryMetricLabel, comparisonLab
|
|
|
133
134
|
marginLeft: 2,
|
|
134
135
|
}, children: comparisonLabel
|
|
135
136
|
? 'in ' + comparisonLabel.toLowerCase()
|
|
136
|
-
: 'previous period' })] }))] }) });
|
|
137
|
+
: 'previous period' })] }))] }) }));
|
|
137
138
|
};
|
|
@@ -3,5 +3,5 @@ export declare function validateTemplatesAgainstFilters(filters: any[], template
|
|
|
3
3
|
valid: boolean;
|
|
4
4
|
error: string;
|
|
5
5
|
};
|
|
6
|
-
export declare function addTemplatesToDashboard(name: any, newTemplates: any[], client: QuillProviderClient, dashboardData: any): Promise<any>;
|
|
6
|
+
export declare function addTemplatesToDashboard(name: any, newTemplates: any[], client: QuillProviderClient, dashboardData: any, getToken: () => Promise<string>): Promise<any>;
|
|
7
7
|
//# sourceMappingURL=util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAK1D,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,GAAG,EAAE,EACd,SAAS,EAAE,GAAG,EAAE,GACf;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAiCnC;
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAK1D,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,GAAG,EAAE,EACd,SAAS,EAAE,GAAG,EAAE,GACf;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAiCnC;AAGD,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,GAAG,EAAE,EACnB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,EAAE,GAAG,EAClB,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAC9B,OAAO,CAAC,GAAG,CAAC,CA8Cd"}
|
|
@@ -39,23 +39,24 @@ function validateTemplatesAgainstFilters(filters, templates) {
|
|
|
39
39
|
return { valid: false, error };
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
|
|
42
|
+
// TODO: Outdated, revisit and retest
|
|
43
|
+
async function addTemplatesToDashboard(name, newTemplates, client, dashboardData, getToken) {
|
|
43
44
|
try {
|
|
44
45
|
const { publicKey, tenants } = client;
|
|
45
46
|
if (tenants) {
|
|
46
47
|
// need to implement a way to specify report tenant id
|
|
47
48
|
throw new Error('Adding from template not yet supported for tenants');
|
|
48
49
|
}
|
|
49
|
-
const
|
|
50
|
+
const { data: resp } = await (0, dataFetcher_1.quillFetch)({
|
|
51
|
+
client,
|
|
52
|
+
task: 'add-from-template',
|
|
50
53
|
metadata: {
|
|
51
54
|
dashboardName: name,
|
|
52
|
-
task: 'add-from-template',
|
|
53
55
|
clientId: publicKey,
|
|
54
56
|
templateReportIds: newTemplates.map((template) => template._id),
|
|
55
57
|
},
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
'omit', hostedBody, null);
|
|
58
|
+
getToken,
|
|
59
|
+
});
|
|
59
60
|
if (resp.success && resp.newItems && resp.newItems.length > 0) {
|
|
60
61
|
const newData = {
|
|
61
62
|
newQueries: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuillMultiSelect.d.ts","sourceRoot":"","sources":["../../../src/components/QuillMultiSelect.tsx"],"names":[],"mappings":"AACA,OAAO,EAAkB,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAiC3E;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,KAAK,EACL,SAAS,GACV,EAAE,yBAAyB,
|
|
1
|
+
{"version":3,"file":"QuillMultiSelect.d.ts","sourceRoot":"","sources":["../../../src/components/QuillMultiSelect.tsx"],"names":[],"mappings":"AACA,OAAO,EAAkB,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAiC3E;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,KAAK,EACL,SAAS,GACV,EAAE,yBAAyB,2CAiP3B;AAED,eAAO,MAAM,gBAAgB,sCAI1B;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,4CA8DA,CAAC"}
|
|
@@ -80,7 +80,6 @@ function QuillMultiSelectComponent({ options, width, onChange, label, value, isL
|
|
|
80
80
|
fontWeight: 600,
|
|
81
81
|
}, children: label })), (0, jsx_runtime_1.jsxs)("button", { style: {
|
|
82
82
|
fontFamily: theme?.fontFamily,
|
|
83
|
-
color: theme?.primaryTextColor,
|
|
84
83
|
width: '100%',
|
|
85
84
|
display: 'flex',
|
|
86
85
|
alignItems: 'center',
|
|
@@ -100,8 +99,8 @@ function QuillMultiSelectComponent({ options, width, onChange, label, value, isL
|
|
|
100
99
|
height: 40,
|
|
101
100
|
minHeight: 40,
|
|
102
101
|
maxHeight: 40,
|
|
103
|
-
}, className: "quill-select-button", onClick: () => setShowModal((showModal) => !showModal), ref: buttonRef, children: [(0, jsx_runtime_1.jsx)("style", { children: ` .quill-select-button { background: ${theme?.backgroundColor}; }
|
|
104
|
-
.quill-select-button:hover { background: ${theme?.hoverBackgroundColor}; }
|
|
102
|
+
}, className: "quill-select-button", onClick: () => setShowModal((showModal) => !showModal), ref: buttonRef, children: [(0, jsx_runtime_1.jsx)("style", { children: ` .quill-select-button { background: ${theme?.backgroundColor}; color: ${theme?.primaryTextColor}; }
|
|
103
|
+
.quill-select-button:hover { background: ${theme?.hoverBackgroundColor}; color: ${theme?.hoverTextColor}; }
|
|
105
104
|
` }), (0, jsx_runtime_1.jsx)("span", { style: {
|
|
106
105
|
textOverflow: 'ellipsis',
|
|
107
106
|
whiteSpace: 'nowrap',
|
|
@@ -119,7 +118,7 @@ function QuillMultiSelectComponent({ options, width, onChange, label, value, isL
|
|
|
119
118
|
borderStyle: 'solid',
|
|
120
119
|
borderColor: theme?.borderColor,
|
|
121
120
|
borderRadius: 6,
|
|
122
|
-
background:
|
|
121
|
+
background: theme?.backgroundColor,
|
|
123
122
|
marginTop: 12,
|
|
124
123
|
zIndex: 100,
|
|
125
124
|
padding: 6,
|
|
@@ -165,10 +164,12 @@ function QuillMultiSelectComponent({ options, width, onChange, label, value, isL
|
|
|
165
164
|
debounce(updatedChangeEvent);
|
|
166
165
|
}, children: [(0, jsx_runtime_1.jsx)("style", { children: `
|
|
167
166
|
.quill-option {
|
|
168
|
-
background:
|
|
167
|
+
background: ${theme?.backgroundColor};
|
|
168
|
+
color: ${theme?.primaryTextColor};
|
|
169
169
|
}
|
|
170
170
|
.quill-option:hover {
|
|
171
|
-
background:
|
|
171
|
+
background: ${theme?.hoverBackgroundColor};
|
|
172
|
+
color: ${theme?.hoverTextColor};
|
|
172
173
|
}
|
|
173
174
|
` }), (0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: selectedOptions.includes(option.value), style: { width: '14px', height: '14px', margin: 'auto 0' }, readOnly: true }), (0, jsx_runtime_1.jsx)("span", { style: {
|
|
174
175
|
textOverflow: 'ellipsis',
|
|
@@ -177,6 +178,7 @@ function QuillMultiSelectComponent({ options, width, onChange, label, value, isL
|
|
|
177
178
|
}, children: option.label ?? nullLabel })] }, option.value)))) : ((0, jsx_runtime_1.jsx)(UiComponents_1.LoadingSpinner, {})) }))] }));
|
|
178
179
|
}
|
|
179
180
|
const ListboxTextInput = ({ value, onChange, placeholder, }) => {
|
|
181
|
+
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
180
182
|
return ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
181
183
|
position: 'relative',
|
|
182
184
|
display: 'flex',
|
|
@@ -189,7 +191,7 @@ const ListboxTextInput = ({ value, onChange, placeholder, }) => {
|
|
|
189
191
|
height: 40px;
|
|
190
192
|
width: 180px;
|
|
191
193
|
z-index: 2;
|
|
192
|
-
color: #384151;
|
|
194
|
+
color: ${theme?.primaryTextColor ?? '#384151'};
|
|
193
195
|
border-radius: 4px;
|
|
194
196
|
text-align: left;
|
|
195
197
|
padding-right: 12px;
|
|
@@ -197,10 +199,14 @@ const ListboxTextInput = ({ value, onChange, placeholder, }) => {
|
|
|
197
199
|
padding-bottom: 0px;
|
|
198
200
|
box-sizing: content-box;
|
|
199
201
|
margin-left: 6px;
|
|
200
|
-
border: 0 solid #e5e7eb;
|
|
202
|
+
border: 0 solid ${theme?.borderColor ?? '#e5e7eb'};
|
|
201
203
|
}
|
|
202
204
|
.quill-text-input:focus {
|
|
203
205
|
outline: none;
|
|
204
|
-
}` }), (0, jsx_runtime_1.jsx)("div", { style: { width: 6 } }), (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "rgba(56, 65, 81, 0.7)", height: "16", width: "16", children: (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", d: "M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z", clipRule: "evenodd" }) }), (0, jsx_runtime_1.jsx)("input", { className: "quill-text-input", type: "text", value: value, onChange: (event) => onChange(event.target.value), placeholder: placeholder
|
|
206
|
+
}` }), (0, jsx_runtime_1.jsx)("div", { style: { width: 6 } }), (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "rgba(56, 65, 81, 0.7)", height: "16", width: "16", children: (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", d: "M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z", clipRule: "evenodd" }) }), (0, jsx_runtime_1.jsx)("input", { className: "quill-text-input", type: "text", value: value, onChange: (event) => onChange(event.target.value), placeholder: placeholder, style: {
|
|
207
|
+
fontFamily: theme?.fontFamily,
|
|
208
|
+
color: theme?.primaryTextColor,
|
|
209
|
+
background: theme?.backgroundColor,
|
|
210
|
+
} })] }));
|
|
205
211
|
};
|
|
206
212
|
exports.ListboxTextInput = ListboxTextInput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuillMultiSelectSectionList.d.ts","sourceRoot":"","sources":["../../../src/components/QuillMultiSelectSectionList.tsx"],"names":[],"mappings":"AAEA,OAAc,EACZ,aAAa,EAKd,MAAM,OAAO,CAAC;AAGf;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,KAAK,EACL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"QuillMultiSelectSectionList.d.ts","sourceRoot":"","sources":["../../../src/components/QuillMultiSelectSectionList.tsx"],"names":[],"mappings":"AAEA,OAAc,EACZ,aAAa,EAKd,MAAM,OAAO,CAAC;AAGf;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,KAAK,EACL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE;QAAE,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;IAC3C,OAAO,EAAE;QACP,CAAC,WAAW,EAAE,MAAM,GAAG;YACrB,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;SACf,EAAE,CAAC;KACL,CAAC;IACF,gBAAgB,CAAC,EAAE;QAAE,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACrD,QAAQ,EAAE,CAAC,KAAK,EAAE;QAChB,MAAM,EAAE;YAAE,KAAK,EAAE;gBAAE,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;aAAE,CAAA;SAAE,CAAC;KACxD,KAAK,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,2CAicA;AAED,eAAO,MAAM,gBAAgB,sCAI1B;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,4CA8DA,CAAC"}
|
|
@@ -75,19 +75,23 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
75
75
|
const isUuid = sample.value?.match(uuidRegex);
|
|
76
76
|
const isNumber = !isNaN(parseInt(sample.value));
|
|
77
77
|
const filteredOptions = Object.keys(options).reduce((acc, key) => {
|
|
78
|
-
acc[key] =
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
78
|
+
acc[key] =
|
|
79
|
+
options[key]?.filter((option) => {
|
|
80
|
+
if (!option) {
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
return (searchQuery === '' ||
|
|
84
|
+
option.label
|
|
85
|
+
.toLowerCase()
|
|
86
|
+
.replace(/\s+/g, '')
|
|
87
|
+
.includes(searchQuery.toLowerCase().replace(/\s+/g, '')) ||
|
|
88
|
+
(isNumber || isUuid
|
|
89
|
+
? option.value
|
|
90
|
+
.toLowerCase()
|
|
91
|
+
.replace(/\s+/g, '')
|
|
92
|
+
.includes(searchQuery.toLowerCase().replace(/\s+/g, ''))
|
|
93
|
+
: false));
|
|
94
|
+
}) ?? [];
|
|
91
95
|
return acc;
|
|
92
96
|
}, {});
|
|
93
97
|
const sliceSize = Math.ceil(20 / Object.keys(filteredOptions).length);
|
|
@@ -96,7 +100,9 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
96
100
|
filteredOptions[key] = filteredOptions[key].slice(0, sliceSize);
|
|
97
101
|
}
|
|
98
102
|
});
|
|
99
|
-
return Object.fromEntries(Object.entries(filteredOptions)
|
|
103
|
+
return Object.fromEntries(Object.entries(filteredOptions)
|
|
104
|
+
.filter(([, value]) => !!value?.length)
|
|
105
|
+
.sort(([key]) => (key === owner ? -1 : 1)));
|
|
100
106
|
}, [options, searchQuery]);
|
|
101
107
|
const filteredLength = react_1.default.useMemo(() => {
|
|
102
108
|
return Object.values(filteredItems).reduce((a, b) => a + b.length, 0);
|
|
@@ -128,7 +134,7 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
128
134
|
borderRadius: '6px',
|
|
129
135
|
width: width,
|
|
130
136
|
minWidth: width,
|
|
131
|
-
...style
|
|
137
|
+
...style,
|
|
132
138
|
}, children: [label && ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
133
139
|
fontSize: 14,
|
|
134
140
|
color: theme?.secondaryTextColor,
|
|
@@ -137,7 +143,6 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
137
143
|
fontWeight: 600,
|
|
138
144
|
}, children: label })), (0, jsx_runtime_1.jsxs)("button", { style: {
|
|
139
145
|
fontFamily: theme?.fontFamily,
|
|
140
|
-
color: theme?.primaryTextColor,
|
|
141
146
|
width: '100%',
|
|
142
147
|
display: 'flex',
|
|
143
148
|
alignItems: 'center',
|
|
@@ -157,8 +162,8 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
157
162
|
height: 40,
|
|
158
163
|
minHeight: 40,
|
|
159
164
|
maxHeight: 40,
|
|
160
|
-
}, className: 'quill-select-button', onClick: () => setShowModal((showModal) => !showModal), disabled: disabled, ref: buttonRef, children: [(0, jsx_runtime_1.jsx)("style", { children: ` .quill-select-button { background: ${theme?.backgroundColor}; }
|
|
161
|
-
.quill-select-button:hover { background: ${theme?.hoverBackgroundColor}; }
|
|
165
|
+
}, className: 'quill-select-button', onClick: () => setShowModal((showModal) => !showModal), disabled: disabled, ref: buttonRef, children: [(0, jsx_runtime_1.jsx)("style", { children: ` .quill-select-button { background: ${theme?.backgroundColor}; color: ${theme?.primaryTextColor}; }
|
|
166
|
+
.quill-select-button:hover { background: ${theme?.hoverBackgroundColor}; color: ${theme?.hoverTextColor}; }
|
|
162
167
|
.quill-select-button:disabled {
|
|
163
168
|
cursor: not-allowed;
|
|
164
169
|
background: ${theme?.hoverBackgroundColor};
|
|
@@ -180,7 +185,7 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
180
185
|
borderStyle: 'solid',
|
|
181
186
|
borderColor: theme?.borderColor,
|
|
182
187
|
borderRadius: 6,
|
|
183
|
-
background:
|
|
188
|
+
background: theme?.backgroundColor,
|
|
184
189
|
marginTop: 12,
|
|
185
190
|
zIndex: 100,
|
|
186
191
|
padding: 6,
|
|
@@ -194,8 +199,7 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
194
199
|
height: 9,
|
|
195
200
|
width: 230,
|
|
196
201
|
borderTop: '1px solid #e7e7e7',
|
|
197
|
-
} })] })), !isLoading &&
|
|
198
|
-
(!filteredItems || filteredLength === 0) && ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
202
|
+
} })] })), !isLoading && (!filteredItems || filteredLength === 0) && ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
199
203
|
display: 'flex',
|
|
200
204
|
alignItems: 'center',
|
|
201
205
|
padding: 8,
|
|
@@ -215,17 +219,17 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
215
219
|
overflow: 'hidden',
|
|
216
220
|
}, children: [(0, jsx_runtime_1.jsx)("style", { children: `
|
|
217
221
|
.quill-option {
|
|
218
|
-
background:
|
|
222
|
+
background: ${theme?.backgroundColor};
|
|
219
223
|
}
|
|
220
224
|
.quill-option:hover {
|
|
221
|
-
background:
|
|
225
|
+
background: ${theme?.hoverBackgroundColor};
|
|
222
226
|
}
|
|
223
227
|
` }), (0, jsx_runtime_1.jsx)("span", { style: {
|
|
224
228
|
textOverflow: 'ellipsis',
|
|
225
229
|
whiteSpace: 'nowrap',
|
|
226
230
|
overflow: 'hidden',
|
|
227
231
|
cursor: 'default',
|
|
228
|
-
}, children: emptyLabel ?? 'No options available' })] })), !isLoading ? Object.keys(filteredItems).map((key) => ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsxs)("button", { style: {
|
|
232
|
+
}, children: emptyLabel ?? 'No options available' })] })), !isLoading ? (Object.keys(filteredItems).map((key) => ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsxs)("button", { style: {
|
|
229
233
|
display: 'flex',
|
|
230
234
|
alignItems: 'center',
|
|
231
235
|
padding: 8,
|
|
@@ -245,7 +249,8 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
245
249
|
overflow: 'hidden',
|
|
246
250
|
}, className: "quill-option", onClick: () => {
|
|
247
251
|
const updatedValue = options[key]?.length === value[key]?.length
|
|
248
|
-
? []
|
|
252
|
+
? []
|
|
253
|
+
: (options[key]?.map((option) => option.value) ?? []);
|
|
249
254
|
const updatedChangeEvent = {
|
|
250
255
|
target: {
|
|
251
256
|
value: {
|
|
@@ -258,17 +263,19 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
258
263
|
debounce(updatedChangeEvent);
|
|
259
264
|
}, children: [(0, jsx_runtime_1.jsx)("style", { children: `
|
|
260
265
|
.quill-option {
|
|
261
|
-
background:
|
|
266
|
+
background: ${theme?.backgroundColor};
|
|
267
|
+
color: ${theme?.primaryTextColor};
|
|
262
268
|
}
|
|
263
269
|
.quill-option:hover {
|
|
264
|
-
background:
|
|
270
|
+
background: ${theme?.hoverBackgroundColor};
|
|
271
|
+
color: ${theme?.hoverTextColor};
|
|
265
272
|
}
|
|
266
273
|
` }), (0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: options[key]?.length === value[key]?.length, style: { width: '14px', height: '14px', margin: 'auto 0' }, readOnly: true }), (0, jsx_runtime_1.jsx)("span", { style: {
|
|
267
274
|
textOverflow: 'ellipsis',
|
|
268
275
|
whiteSpace: 'nowrap',
|
|
269
276
|
overflow: 'hidden',
|
|
270
277
|
fontWeight: 600,
|
|
271
|
-
}, children: sectionHeaderMap?.[key] ?? key })] },
|
|
278
|
+
}, children: sectionHeaderMap?.[key] ?? key })] }, 'sh-' + key), (0, jsx_runtime_1.jsx)("div", { style: {
|
|
272
279
|
height: 1,
|
|
273
280
|
borderTop: '1px solid #e7e7e7',
|
|
274
281
|
marginTop: 2,
|
|
@@ -308,18 +315,25 @@ function QuillMultiSelectSectionList({ options, width, onChange, label, sectionH
|
|
|
308
315
|
debounce(updatedChangeEvent);
|
|
309
316
|
}, children: [(0, jsx_runtime_1.jsx)("style", { children: `
|
|
310
317
|
.quill-option {
|
|
311
|
-
background:
|
|
318
|
+
background: ${theme?.backgroundColor};
|
|
319
|
+
color: ${theme?.primaryTextColor};
|
|
312
320
|
}
|
|
313
321
|
.quill-option:hover {
|
|
314
|
-
background:
|
|
322
|
+
background: ${theme?.hoverBackgroundColor};
|
|
323
|
+
color: ${theme?.hoverTextColor};
|
|
315
324
|
}
|
|
316
|
-
` }), (0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: value[key]?.includes(option.value) ?? false, style: {
|
|
325
|
+
` }), (0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: value[key]?.includes(option.value) ?? false, style: {
|
|
326
|
+
width: '14px',
|
|
327
|
+
height: '14px',
|
|
328
|
+
margin: 'auto 0',
|
|
329
|
+
}, readOnly: true }), (0, jsx_runtime_1.jsx)("span", { style: {
|
|
317
330
|
textOverflow: 'ellipsis',
|
|
318
331
|
whiteSpace: 'nowrap',
|
|
319
332
|
overflow: 'hidden',
|
|
320
|
-
}, children: option.label })] },
|
|
333
|
+
}, children: option.label })] }, 'v-' + key + '-' + option.value)))] }, 'sp-' + key)))) : ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(UiComponents_1.LoadingSpinner, {}) }))] }))] }));
|
|
321
334
|
}
|
|
322
335
|
const ListboxTextInput = ({ value, onChange, placeholder, }) => {
|
|
336
|
+
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
323
337
|
return ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
324
338
|
position: 'relative',
|
|
325
339
|
display: 'flex',
|
|
@@ -339,10 +353,14 @@ const ListboxTextInput = ({ value, onChange, placeholder, }) => {
|
|
|
339
353
|
padding-bottom: 0px;
|
|
340
354
|
box-sizing: content-box;
|
|
341
355
|
margin-left: 6px;
|
|
342
|
-
border: 0 solid #e5e7eb;
|
|
356
|
+
border: 0 solid ${theme?.borderColor ?? '#e5e7eb'};
|
|
343
357
|
}
|
|
344
358
|
.quill-text-input:focus {
|
|
345
359
|
outline: none;
|
|
346
|
-
}` }), (0, jsx_runtime_1.jsx)("div", { style: { width: 6 } }), (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "rgba(56, 65, 81, 0.7)", height: "16", width: "16", children: (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", d: "M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z", clipRule: "evenodd" }) }), (0, jsx_runtime_1.jsx)("input", { className: "quill-text-input", type: "text", value: value, onChange: (event) => onChange(event.target.value), placeholder: placeholder
|
|
360
|
+
}` }), (0, jsx_runtime_1.jsx)("div", { style: { width: 6 } }), (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "rgba(56, 65, 81, 0.7)", height: "16", width: "16", children: (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", d: "M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z", clipRule: "evenodd" }) }), (0, jsx_runtime_1.jsx)("input", { className: "quill-text-input", type: "text", value: value, onChange: (event) => onChange(event.target.value), placeholder: placeholder, style: {
|
|
361
|
+
fontFamily: theme?.fontFamily,
|
|
362
|
+
color: theme?.primaryTextColor,
|
|
363
|
+
background: theme?.backgroundColor,
|
|
364
|
+
} })] }));
|
|
347
365
|
};
|
|
348
366
|
exports.ListboxTextInput = ListboxTextInput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuillMultiSelectWithCombo.d.ts","sourceRoot":"","sources":["../../../src/components/QuillMultiSelectWithCombo.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"QuillMultiSelectWithCombo.d.ts","sourceRoot":"","sources":["../../../src/components/QuillMultiSelectWithCombo.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAkB,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAc,EAEZ,aAAa,EAMd,MAAM,OAAO,CAAC;AAKf;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,EACjD,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,KAAK,EACL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,KAAK,GACN,EAAE,yBAAyB,GAAG;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,2CAwmBA;AAED,eAAO,MAAM,gBAAgB,sCAI1B;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,4CA8DA,CAAC"}
|