@quillsql/react 2.12.20 → 2.12.21

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.
@@ -827,7 +827,7 @@ function ChartBuilder({ TextInputComponent = UiComponents_1.QuillTextInput, Sele
827
827
  }
828
828
  // If the dashbaordItem is a template but the editor isn't an admin, create a new dashboardItem and set the template to false
829
829
  let dashboardItemId = report ? report._id : undefined;
830
- if (report && !showDateFieldOptions && report.template) {
830
+ if (report && !showAccessControlOptions && report.template) {
831
831
  dashboardItemId = undefined;
832
832
  }
833
833
  const cloudBody = {
@@ -844,7 +844,7 @@ function ChartBuilder({ TextInputComponent = UiComponents_1.QuillTextInput, Sele
844
844
  pivot: formData.pivot,
845
845
  referencedTables: allTables,
846
846
  referencedColumns,
847
- template: report && !showDateFieldOptions && report.template
847
+ template: report && !showAccessControlOptions && report.template
848
848
  ? false
849
849
  : formData.template,
850
850
  customerId: customerId || '*',
@@ -151,16 +151,16 @@ function ChartEditor({ isOpen, reportId, isAdmin = false, destinationDashboard,
151
151
  }
152
152
  }
153
153
  }
154
- const dashboardItem = {
154
+ const curDashboardItem = {
155
155
  ...resp,
156
156
  filtersApplied: specificDashboardFilter,
157
157
  };
158
- const cleanedReport = (0, dashboard_1.cleanDashboardItem)(dashboardItem, specificDashboardFilter);
159
- setDashboardItem(cleanedReport);
158
+ const cleanedReport = (0, dashboard_1.cleanDashboardItem)(curDashboardItem, specificDashboardFilter);
159
+ setDashboardItem({ ...dashboardItem, ...cleanedReport });
160
160
  dispatch({
161
161
  type: 'UPDATE_DASHBOARD_ITEM',
162
162
  id: reportId,
163
- data: cleanedReport,
163
+ data: { ...dashboardItem, ...cleanedReport },
164
164
  });
165
165
  }
166
166
  setTimeout(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"DataLoader.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/DataLoader.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,WAAW,EAAuB,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAOjD,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3E,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACnE,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,EAAE,EACF,QAAQ,EACR,OAAO,GACR,EAAE;IACD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,CAAC,EACT,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,IAAI,GACL,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;CACzC,GAAG,GAAG,CAAC,OAAO,CA8Hd;AAED,KAAK,YAAY,GAAG;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF,eAAO,MAAM,eAAe;QAQtB,MAAM;;;mCAIC,WAAW,UACZ,UAAU,KACf,YAAY;2BACM,GAAG;cAChB,GAAG;wDAMV,yBAAyB,KAAK,WAAW;MAC1C,WAuGH,CAAC"}
1
+ {"version":3,"file":"DataLoader.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/DataLoader.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,WAAW,EAAuB,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAOjD,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3E,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACnE,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,EAAE,EACF,QAAQ,EACR,OAAO,GACR,EAAE;IACD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,CAAC,EACT,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,IAAI,GACL,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;CACzC,GAAG,GAAG,CAAC,OAAO,CAkId;AAED,KAAK,YAAY,GAAG;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF,eAAO,MAAM,eAAe;QAQtB,MAAM;;;mCAIC,WAAW,UACZ,UAAU,KACf,YAAY;2BACM,GAAG;cAChB,GAAG;wDAMV,yBAAyB,KAAK,WAAW;MAC1C,WAuGH,CAAC"}
@@ -37,7 +37,9 @@ function DataLoader({ id, children, filters, }) {
37
37
  setPreviousPage(0);
38
38
  };
39
39
  const getChartOptions = async (processing) => {
40
- if (!(0, Chart_1.didFiltersChange)(dashboard[id], filters) && !isLoading) {
40
+ if (!(0, Chart_1.didFiltersChange)(dashboard[id], filters) &&
41
+ !isLoading &&
42
+ !dashboard[id].triggerReload) {
41
43
  setIsLoading(false);
42
44
  setReport(dashboard[id]);
43
45
  return;
@@ -91,7 +93,7 @@ function DataLoader({ id, children, filters, }) {
91
93
  dispatch({
92
94
  type: 'UPDATE_DASHBOARD_ITEM',
93
95
  id: id,
94
- data: cleanedReport,
96
+ data: { ...cleanedReport, triggerReload: false },
95
97
  });
96
98
  setReport(cleanedReport);
97
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TableComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/TableComponent.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKnD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,MAAM,EACN,OAAO,EACP,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,GACb,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAiJhC"}
1
+ {"version":3,"file":"TableComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/TableComponent.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKnD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,MAAM,EACN,OAAO,EACP,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,GACb,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAoJhC"}
@@ -20,6 +20,9 @@ function QuillTableComponent({ report, onClick, isLoading, error, onPageChange,
20
20
  const [rows, setRows] = (0, react_1.useState)(report?.rows ?? []);
21
21
  const [columns, setColumns] = (0, react_1.useState)(report?.columns ?? report?.yAxisFields ?? []);
22
22
  (0, react_1.useEffect)(() => {
23
+ if (!report.rows || !report.columns) {
24
+ return;
25
+ }
23
26
  if (report.pivot !== null && pivotData.data) {
24
27
  setRows(pivotData.data.rows);
25
28
  setColumns(pivotData.data.columns);
@@ -1090,6 +1090,14 @@ function generatePivotTable(pivot, data, dateRange, isComparison, rowLimit = -1,
1090
1090
  }
1091
1091
  exports.generatePivotTable = generatePivotTable;
1092
1092
  function valueFieldAggregation(data, valueField, aggregationType, isComparison) {
1093
+ if (!data || data.length === 0) {
1094
+ return {
1095
+ rows: [],
1096
+ columns: [
1097
+ { label: (0, textProcessing_1.snakeAndCamelCaseToTitleCase)(valueField), field: valueField },
1098
+ ],
1099
+ };
1100
+ }
1093
1101
  let value = 0;
1094
1102
  let comparisonValue = 0;
1095
1103
  switch (aggregationType) {
@@ -820,7 +820,7 @@ export default function ChartBuilder({ TextInputComponent = QuillTextInput, Sele
820
820
  }
821
821
  // If the dashbaordItem is a template but the editor isn't an admin, create a new dashboardItem and set the template to false
822
822
  let dashboardItemId = report ? report._id : undefined;
823
- if (report && !showDateFieldOptions && report.template) {
823
+ if (report && !showAccessControlOptions && report.template) {
824
824
  dashboardItemId = undefined;
825
825
  }
826
826
  const cloudBody = {
@@ -837,7 +837,7 @@ export default function ChartBuilder({ TextInputComponent = QuillTextInput, Sele
837
837
  pivot: formData.pivot,
838
838
  referencedTables: allTables,
839
839
  referencedColumns,
840
- template: report && !showDateFieldOptions && report.template
840
+ template: report && !showAccessControlOptions && report.template
841
841
  ? false
842
842
  : formData.template,
843
843
  customerId: customerId || '*',
@@ -146,16 +146,16 @@ export default function ChartEditor({ isOpen, reportId, isAdmin = false, destina
146
146
  }
147
147
  }
148
148
  }
149
- const dashboardItem = {
149
+ const curDashboardItem = {
150
150
  ...resp,
151
151
  filtersApplied: specificDashboardFilter,
152
152
  };
153
- const cleanedReport = cleanDashboardItem(dashboardItem, specificDashboardFilter);
154
- setDashboardItem(cleanedReport);
153
+ const cleanedReport = cleanDashboardItem(curDashboardItem, specificDashboardFilter);
154
+ setDashboardItem({ ...dashboardItem, ...cleanedReport });
155
155
  dispatch({
156
156
  type: 'UPDATE_DASHBOARD_ITEM',
157
157
  id: reportId,
158
- data: cleanedReport,
158
+ data: { ...dashboardItem, ...cleanedReport },
159
159
  });
160
160
  }
161
161
  setTimeout(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"DataLoader.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/DataLoader.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,WAAW,EAAuB,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAOjD,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3E,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACnE,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,EAAE,EACF,QAAQ,EACR,OAAO,GACR,EAAE;IACD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,CAAC,EACT,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,IAAI,GACL,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;CACzC,GAAG,GAAG,CAAC,OAAO,CA8Hd;AAED,KAAK,YAAY,GAAG;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF,eAAO,MAAM,eAAe;QAQtB,MAAM;;;mCAIC,WAAW,UACZ,UAAU,KACf,YAAY;2BACM,GAAG;cAChB,GAAG;wDAMV,yBAAyB,KAAK,WAAW;MAC1C,WAuGH,CAAC"}
1
+ {"version":3,"file":"DataLoader.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/DataLoader.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,WAAW,EAAuB,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAOjD,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3E,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACnE,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,EAAE,EACF,QAAQ,EACR,OAAO,GACR,EAAE;IACD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,CAAC,EACT,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,IAAI,GACL,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;CACzC,GAAG,GAAG,CAAC,OAAO,CAkId;AAED,KAAK,YAAY,GAAG;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF,eAAO,MAAM,eAAe;QAQtB,MAAM;;;mCAIC,WAAW,UACZ,UAAU,KACf,YAAY;2BACM,GAAG;cAChB,GAAG;wDAMV,yBAAyB,KAAK,WAAW;MAC1C,WAuGH,CAAC"}
@@ -34,7 +34,9 @@ export default function DataLoader({ id, children, filters, }) {
34
34
  setPreviousPage(0);
35
35
  };
36
36
  const getChartOptions = async (processing) => {
37
- if (!didFiltersChange(dashboard[id], filters) && !isLoading) {
37
+ if (!didFiltersChange(dashboard[id], filters) &&
38
+ !isLoading &&
39
+ !dashboard[id].triggerReload) {
38
40
  setIsLoading(false);
39
41
  setReport(dashboard[id]);
40
42
  return;
@@ -88,7 +90,7 @@ export default function DataLoader({ id, children, filters, }) {
88
90
  dispatch({
89
91
  type: 'UPDATE_DASHBOARD_ITEM',
90
92
  id: id,
91
- data: cleanedReport,
93
+ data: { ...cleanedReport, triggerReload: false },
92
94
  });
93
95
  setReport(cleanedReport);
94
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TableComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/TableComponent.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKnD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,MAAM,EACN,OAAO,EACP,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,GACb,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAiJhC"}
1
+ {"version":3,"file":"TableComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/TableComponent.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKnD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,MAAM,EACN,OAAO,EACP,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,GACb,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAoJhC"}
@@ -15,6 +15,9 @@ export default function QuillTableComponent({ report, onClick, isLoading, error,
15
15
  const [rows, setRows] = useState(report?.rows ?? []);
16
16
  const [columns, setColumns] = useState(report?.columns ?? report?.yAxisFields ?? []);
17
17
  useEffect(() => {
18
+ if (!report.rows || !report.columns) {
19
+ return;
20
+ }
18
21
  if (report.pivot !== null && pivotData.data) {
19
22
  setRows(pivotData.data.rows);
20
23
  setColumns(pivotData.data.columns);
@@ -1082,6 +1082,14 @@ export function generatePivotTable(pivot, data, dateRange, isComparison, rowLimi
1082
1082
  return { rows: pivotRows, columns };
1083
1083
  }
1084
1084
  function valueFieldAggregation(data, valueField, aggregationType, isComparison) {
1085
+ if (!data || data.length === 0) {
1086
+ return {
1087
+ rows: [],
1088
+ columns: [
1089
+ { label: snakeAndCamelCaseToTitleCase(valueField), field: valueField },
1090
+ ],
1091
+ };
1092
+ }
1085
1093
  let value = 0;
1086
1094
  let comparisonValue = 0;
1087
1095
  switch (aggregationType) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quillsql/react",
3
- "version": "2.12.20",
3
+ "version": "2.12.21",
4
4
  "exports": {
5
5
  ".": {
6
6
  "import": "./dist/esm/index.js",