@quillsql/react 2.11.20 → 2.11.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.
- package/dist/cjs/Chart.d.ts +6 -0
- package/dist/cjs/Chart.d.ts.map +1 -1
- package/dist/cjs/Chart.js +13 -13
- package/dist/cjs/ChartBuilder.d.ts +16 -6
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +88 -40
- package/dist/cjs/ChartEditor.js +1 -1
- package/dist/cjs/Dashboard.d.ts +3 -2
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +1 -1
- package/dist/cjs/ReportBuilder.d.ts +9 -1
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +56 -41
- package/dist/cjs/SQLEditor.d.ts +7 -1
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +3 -6
- package/dist/cjs/Table.d.ts +6 -0
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +4 -4
- package/dist/cjs/components/Chart/BarChart.d.ts +2 -1
- package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarChart.js +6 -4
- package/dist/cjs/components/Chart/BarList.d.ts +3 -2
- package/dist/cjs/components/Chart/BarList.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarList.js +3 -3
- package/dist/cjs/components/Chart/ChartError.d.ts +1 -1
- package/dist/cjs/components/Chart/ChartError.d.ts.map +1 -1
- package/dist/cjs/components/Chart/ChartError.js +2 -2
- package/dist/cjs/components/Chart/ChartSkeleton.d.ts +2 -1
- package/dist/cjs/components/Chart/ChartSkeleton.d.ts.map +1 -1
- package/dist/cjs/components/Chart/ChartSkeleton.js +2 -2
- package/dist/cjs/components/Chart/LineChart.d.ts +2 -1
- package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/LineChart.js +3 -3
- package/dist/cjs/components/Chart/PieChart.d.ts +1 -0
- package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/PieChart.js +4 -100
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +2 -1
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DashboardFilter.js +2 -2
- package/dist/cjs/components/QuillCard.d.ts +1 -1
- package/dist/cjs/components/QuillCard.d.ts.map +1 -1
- package/dist/cjs/components/QuillCard.js +1 -1
- package/dist/cjs/components/QuillSelect.d.ts +1 -1
- package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelect.js +5 -3
- package/dist/cjs/components/QuillTable.d.ts +2 -1
- package/dist/cjs/components/QuillTable.d.ts.map +1 -1
- package/dist/cjs/components/QuillTable.js +5 -5
- package/dist/cjs/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddColumnPopover.js +2 -9
- package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddSortPopover.js +2 -2
- package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.js +4 -16
- package/dist/cjs/components/UiComponents.d.ts +9 -9
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +32 -17
- package/dist/cjs/internals/ReportBuilder/PivotList.d.ts +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotList.js +3 -3
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +25 -24
- package/dist/cjs/utils/color.d.ts +6 -0
- package/dist/cjs/utils/color.d.ts.map +1 -1
- package/dist/cjs/utils/color.js +98 -1
- package/dist/cjs/utils/valueFormatter.d.ts.map +1 -1
- package/dist/cjs/utils/valueFormatter.js +32 -2
- package/dist/esm/Chart.d.ts +6 -0
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +13 -13
- package/dist/esm/ChartBuilder.d.ts +16 -6
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +88 -40
- package/dist/esm/ChartEditor.js +1 -1
- package/dist/esm/Dashboard.d.ts +3 -2
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
- package/dist/esm/DateRangePicker/QuillDateRangePicker.js +1 -1
- package/dist/esm/ReportBuilder.d.ts +9 -1
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +56 -41
- package/dist/esm/SQLEditor.d.ts +7 -1
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +3 -6
- package/dist/esm/Table.d.ts +6 -0
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +4 -4
- package/dist/esm/components/Chart/BarChart.d.ts +2 -1
- package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarChart.js +7 -5
- package/dist/esm/components/Chart/BarList.d.ts +3 -2
- package/dist/esm/components/Chart/BarList.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarList.js +3 -3
- package/dist/esm/components/Chart/ChartError.d.ts +1 -1
- package/dist/esm/components/Chart/ChartError.d.ts.map +1 -1
- package/dist/esm/components/Chart/ChartError.js +2 -2
- package/dist/esm/components/Chart/ChartSkeleton.d.ts +2 -1
- package/dist/esm/components/Chart/ChartSkeleton.d.ts.map +1 -1
- package/dist/esm/components/Chart/ChartSkeleton.js +2 -2
- package/dist/esm/components/Chart/LineChart.d.ts +2 -1
- package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/LineChart.js +3 -3
- package/dist/esm/components/Chart/PieChart.d.ts +1 -0
- package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/PieChart.js +3 -99
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts +2 -1
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DashboardFilter.js +2 -2
- package/dist/esm/components/QuillCard.d.ts +1 -1
- package/dist/esm/components/QuillCard.d.ts.map +1 -1
- package/dist/esm/components/QuillCard.js +1 -1
- package/dist/esm/components/QuillSelect.d.ts +1 -1
- package/dist/esm/components/QuillSelect.d.ts.map +1 -1
- package/dist/esm/components/QuillSelect.js +5 -3
- package/dist/esm/components/QuillTable.d.ts +2 -1
- package/dist/esm/components/QuillTable.d.ts.map +1 -1
- package/dist/esm/components/QuillTable.js +5 -5
- package/dist/esm/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddColumnPopover.js +2 -9
- package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddSortPopover.js +2 -2
- package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.js +4 -16
- package/dist/esm/components/UiComponents.d.ts +9 -9
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +32 -17
- package/dist/esm/internals/ReportBuilder/PivotList.d.ts +1 -1
- package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotList.js +3 -3
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +25 -24
- package/dist/esm/utils/color.d.ts +6 -0
- package/dist/esm/utils/color.d.ts.map +1 -1
- package/dist/esm/utils/color.js +96 -0
- package/dist/esm/utils/valueFormatter.d.ts.map +1 -1
- package/dist/esm/utils/valueFormatter.js +32 -2
- package/package.json +1 -1
|
@@ -53,6 +53,7 @@ export interface ReportBuilderProps {
|
|
|
53
53
|
label: string;
|
|
54
54
|
}[];
|
|
55
55
|
onChange: (event: React.ChangeEvent<HTMLSelectElement>) => void;
|
|
56
|
+
width: number;
|
|
56
57
|
}) => JSX.Element;
|
|
57
58
|
/** A table component. */
|
|
58
59
|
TableComponent?: (props: {
|
|
@@ -112,6 +113,7 @@ export interface ReportBuilderProps {
|
|
|
112
113
|
/** A checkbox component. */
|
|
113
114
|
CheckboxComponent?: (props: {
|
|
114
115
|
isChecked: boolean;
|
|
116
|
+
label: string;
|
|
115
117
|
onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
116
118
|
}) => JSX.Element;
|
|
117
119
|
/** A container for the left sidebar. */
|
|
@@ -165,6 +167,12 @@ export interface ReportBuilderProps {
|
|
|
165
167
|
isAdminEnabled?: boolean;
|
|
166
168
|
/** Whether the ReportBuilder's AI features are enabled. */
|
|
167
169
|
isAIEnabled?: boolean;
|
|
170
|
+
/**
|
|
171
|
+
* Applies the following classes to the ReportBuilder.
|
|
172
|
+
*
|
|
173
|
+
* This can be useful for TailwindCSS-style classname strings.
|
|
174
|
+
*/
|
|
175
|
+
className?: string;
|
|
168
176
|
/** Custom styling properties for the ReportBuilder's top-level container. */
|
|
169
177
|
containerStyle?: CSSProperties;
|
|
170
178
|
}
|
|
@@ -199,5 +207,5 @@ export interface ReportBuilderProps {
|
|
|
199
207
|
* ### Report Builder API
|
|
200
208
|
* @see https://docs.quillsql.com/components/report-builder
|
|
201
209
|
*/
|
|
202
|
-
export default function ReportBuilder({ initialTableName, onSubmitChartBuilder, destinationDashboard, organizationName, ButtonComponent, SecondaryButtonComponent, DeleteButtonComponent, ModalComponent, TextInputComponent, SelectComponent, TableComponent, PopoverComponent, TabsComponent, CheckboxComponent, SidebarComponent, ContainerComponent, SelectColumnComponent, DraggableColumnComponent, SidebarHeadingComponent, FilterPopoverComponent, SortPopoverComponent, LimitPopoverComponent, CardComponent, LabelComponent, HeaderComponent, TextComponent, isAdminEnabled, isAIEnabled, containerStyle, }: ReportBuilderProps): import("react/jsx-runtime").JSX.Element;
|
|
210
|
+
export default function ReportBuilder({ initialTableName, onSubmitChartBuilder, destinationDashboard, organizationName, ButtonComponent, SecondaryButtonComponent, DeleteButtonComponent, ModalComponent, TextInputComponent, SelectComponent, TableComponent, PopoverComponent, TabsComponent, CheckboxComponent, SidebarComponent, ContainerComponent, SelectColumnComponent, DraggableColumnComponent, SidebarHeadingComponent, FilterPopoverComponent, SortPopoverComponent, LimitPopoverComponent, CardComponent, LabelComponent, HeaderComponent, TextComponent, isAdminEnabled, isAIEnabled, containerStyle, className, }: ReportBuilderProps): import("react/jsx-runtime").JSX.Element;
|
|
203
211
|
//# sourceMappingURL=ReportBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReportBuilder.d.ts","sourceRoot":"","sources":["../../src/ReportBuilder.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,aAAa,EAEb,SAAS,EAKV,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ReportBuilder.d.ts","sourceRoot":"","sources":["../../src/ReportBuilder.tsx"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,7 @@ const AddLimitPopover_1 = require("./components/ReportBuilder/AddLimitPopover");
|
|
|
31
31
|
const width_1 = require("./utils/width");
|
|
32
32
|
const QuillSelect_1 = require("./components/QuillSelect");
|
|
33
33
|
const QuillCard_1 = require("./components/QuillCard");
|
|
34
|
+
const SQLEditor_1 = require("./SQLEditor");
|
|
34
35
|
/**
|
|
35
36
|
* Quill Report Builder
|
|
36
37
|
*
|
|
@@ -62,7 +63,7 @@ const QuillCard_1 = require("./components/QuillCard");
|
|
|
62
63
|
* ### Report Builder API
|
|
63
64
|
* @see https://docs.quillsql.com/components/report-builder
|
|
64
65
|
*/
|
|
65
|
-
function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => void null, destinationDashboard = undefined, organizationName = '', ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, DeleteButtonComponent = UiComponents_1.MemoizedDeleteButton, ModalComponent = UiComponents_1.MemoizedModal, TextInputComponent = UiComponents_2.QuillTextInput, SelectComponent = QuillSelect_1.QuillSelectComponent, TableComponent = UiComponents_1.QuillTableComponent, PopoverComponent = UiComponents_1.MemoizedPopover, TabsComponent = UiComponents_1.QuillTabs, CheckboxComponent = UiComponents_1.MemoizedCheckbox, SidebarComponent = ui_1.QuillSidebar, ContainerComponent = ui_1.CustomContainer, SelectColumnComponent = ui_1.QuillSelectColumn, DraggableColumnComponent = ui_1.QuillDraggableColumn, SidebarHeadingComponent = ui_1.QuillSidebarHeading, FilterPopoverComponent = ui_1.QuillFilterPopover, SortPopoverComponent = ui_1.QuillSortPopover, LimitPopoverComponent = ui_1.QuillLimitPopover, CardComponent = QuillCard_1.QuillCard, LabelComponent = UiComponents_1.MemoizedLabel, HeaderComponent = UiComponents_1.MemoizedHeader, TextComponent = UiComponents_1.MemoizedText, isAdminEnabled = false, isAIEnabled = true, containerStyle, }) {
|
|
66
|
+
function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => void null, destinationDashboard = undefined, organizationName = '', ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, DeleteButtonComponent = UiComponents_1.MemoizedDeleteButton, ModalComponent = UiComponents_1.MemoizedModal, TextInputComponent = UiComponents_2.QuillTextInput, SelectComponent = QuillSelect_1.QuillSelectComponent, TableComponent = UiComponents_1.QuillTableComponent, PopoverComponent = UiComponents_1.MemoizedPopover, TabsComponent = UiComponents_1.QuillTabs, CheckboxComponent = UiComponents_1.MemoizedCheckbox, SidebarComponent = ui_1.QuillSidebar, ContainerComponent = ui_1.CustomContainer, SelectColumnComponent = ui_1.QuillSelectColumn, DraggableColumnComponent = ui_1.QuillDraggableColumn, SidebarHeadingComponent = ui_1.QuillSidebarHeading, FilterPopoverComponent = ui_1.QuillFilterPopover, SortPopoverComponent = ui_1.QuillSortPopover, LimitPopoverComponent = ui_1.QuillLimitPopover, CardComponent = QuillCard_1.QuillCard, LabelComponent = UiComponents_1.MemoizedLabel, HeaderComponent = UiComponents_1.MemoizedHeader, TextComponent = UiComponents_1.MemoizedText, isAdminEnabled = false, isAIEnabled = true, containerStyle, className, }) {
|
|
66
67
|
const [aiPrompt, setAiPrompt] = (0, react_1.useState)('');
|
|
67
68
|
const [errorMessage, setErrorMessage] = (0, react_1.useState)('');
|
|
68
69
|
const [baseAst, setBaseAst] = (0, react_1.useState)(null);
|
|
@@ -137,7 +138,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
137
138
|
* Transforms an array of column names into an array of columnInfo objects
|
|
138
139
|
* with label, field, format, and fieldType keys.
|
|
139
140
|
*/
|
|
140
|
-
const
|
|
141
|
+
const processColumnsForPivotModal = (columns) => {
|
|
141
142
|
return columns.map((col) => ({
|
|
142
143
|
label: col,
|
|
143
144
|
name: col,
|
|
@@ -149,6 +150,23 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
149
150
|
.find((c) => c.name === col)?.fieldType || 'text',
|
|
150
151
|
}));
|
|
151
152
|
};
|
|
153
|
+
/**
|
|
154
|
+
* Transforms an array of column names into an array of columnInfo objects
|
|
155
|
+
* with label, field, format, and fieldType keys.
|
|
156
|
+
*/
|
|
157
|
+
const processColumnsForChartBuilder = (columns) => {
|
|
158
|
+
return columns.map((col) => ({
|
|
159
|
+
label: col,
|
|
160
|
+
name: col,
|
|
161
|
+
displayName: (0, textProcessing_1.snakeCaseToTitleCase)(col),
|
|
162
|
+
field: col,
|
|
163
|
+
format: (0, SQLEditor_1.convertPostgresColumn)(fields.find((f) => f.name === col)).format ||
|
|
164
|
+
'string',
|
|
165
|
+
fieldType: schemaTables
|
|
166
|
+
.flatMap((t) => t.columns)
|
|
167
|
+
.find((c) => c.name === col)?.fieldType || 'text',
|
|
168
|
+
}));
|
|
169
|
+
};
|
|
152
170
|
const clearAllState = () => {
|
|
153
171
|
// We're trying to not block the main thread while resetting all the state.
|
|
154
172
|
// This shouldn't be an issue since the dispatches shouldn't block, but
|
|
@@ -831,7 +849,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
831
849
|
}, options: getAllPossibleColumns().map((column) => ({
|
|
832
850
|
label: (0, textProcessing_1.snakeCaseToTitleCase)(column.displayName),
|
|
833
851
|
value: column.name,
|
|
834
|
-
})) }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: dateFilterType, onChange: (event) => {
|
|
852
|
+
})), width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: dateFilterType, onChange: (event) => {
|
|
835
853
|
if (event.target.value === dateFilterType)
|
|
836
854
|
return null;
|
|
837
855
|
let newSubtree = {};
|
|
@@ -869,7 +887,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
869
887
|
{ label: 'in the previous', value: 'in the previous' },
|
|
870
888
|
{ label: 'in the current', value: 'in the current' },
|
|
871
889
|
{ label: 'equals', value: 'equals' },
|
|
872
|
-
] }), !['in the current', 'equals'].includes(dateFilterType) && ((0, jsx_runtime_1.jsx)(TextInputComponent, { id: "date_filter_interval_count", value: intervalCount?.toString() ?? '', width: 70, onChange: (e) => {
|
|
890
|
+
], width: 200 }), !['in the current', 'equals'].includes(dateFilterType) && ((0, jsx_runtime_1.jsx)(TextInputComponent, { id: "date_filter_interval_count", value: intervalCount?.toString() ?? '', width: 70, onChange: (e) => {
|
|
873
891
|
if (Number.isNaN(parseFloat(e.target.value || '0'))) {
|
|
874
892
|
alert('Please input a number.');
|
|
875
893
|
return;
|
|
@@ -915,7 +933,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
915
933
|
{ label: `week${isPlural}`, value: 'week' },
|
|
916
934
|
{ label: `day${isPlural}`, value: 'day' },
|
|
917
935
|
{ label: `hour${isPlural}`, value: 'hour' },
|
|
918
|
-
] }), dateFilterType === 'equals' && ((0, jsx_runtime_1.jsx)(TextInputComponent, { id: "date_filter_equals_raw_date", value: rawDateStringEquals, width: 120, onChange: (e) => {
|
|
936
|
+
], width: 200 }), dateFilterType === 'equals' && ((0, jsx_runtime_1.jsx)(TextInputComponent, { id: "date_filter_equals_raw_date", value: rawDateStringEquals, width: 120, onChange: (e) => {
|
|
919
937
|
handleChangeText([
|
|
920
938
|
{
|
|
921
939
|
value: e.target.value,
|
|
@@ -952,7 +970,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
952
970
|
newSubtree.left.args.value[0].column = event.target.value;
|
|
953
971
|
handleReplaceSubtree(keyPrefix, newSubtree);
|
|
954
972
|
}
|
|
955
|
-
}, options: options }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'IN_THE_LAST', onChange: (event) => {
|
|
973
|
+
}, options: options, width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'IN_THE_LAST', onChange: (event) => {
|
|
956
974
|
handleOperatorChange(event.target.value, node, keyPrefix, dateColumn);
|
|
957
975
|
}, options: [
|
|
958
976
|
{ label: 'in the last', value: 'IN_THE_LAST' },
|
|
@@ -962,7 +980,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
962
980
|
{ label: 'is not null', value: 'IS NOT' },
|
|
963
981
|
{ label: 'is null', value: 'IS' },
|
|
964
982
|
// { label: 'equals', value: 'equals' },
|
|
965
|
-
] }), (0, jsx_runtime_1.jsx)(TextInputComponent, { id: 'date_window_interval_count', value: node.right.args.value[1].expr.value, width: 120, onChange: (e) => {
|
|
983
|
+
], width: 200 }), (0, jsx_runtime_1.jsx)(TextInputComponent, { id: 'date_window_interval_count', value: node.right.args.value[1].expr.value, width: 120, onChange: (e) => {
|
|
966
984
|
handleChange([
|
|
967
985
|
{
|
|
968
986
|
value: e.target.value,
|
|
@@ -979,7 +997,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
979
997
|
{ label: `month${plural}`, value: '* 30 DAY' },
|
|
980
998
|
{ label: `week${plural}`, value: '* 7 DAY' },
|
|
981
999
|
{ label: `day${plural}`, value: 'DAY' },
|
|
982
|
-
] }) })] }));
|
|
1000
|
+
], width: 200 }) })] }));
|
|
983
1001
|
}
|
|
984
1002
|
else if ((0, util_1.isTheCurrentInterval)(node, client.databaseType)) {
|
|
985
1003
|
const { dateFilterType } = (0, util_1.getDateFilterInfo)(node);
|
|
@@ -1008,7 +1026,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1008
1026
|
newSubtree.left.args.value[0].column = event.target.value;
|
|
1009
1027
|
handleReplaceSubtree(keyPrefix, newSubtree);
|
|
1010
1028
|
}
|
|
1011
|
-
}, options: options }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'IN_THE_CURRENT', onChange: (event) => {
|
|
1029
|
+
}, options: options, width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'IN_THE_CURRENT', onChange: (event) => {
|
|
1012
1030
|
handleOperatorChange(event.target.value, node, keyPrefix, node.left.column);
|
|
1013
1031
|
}, options: [
|
|
1014
1032
|
{ label: 'in the last', value: 'IN_THE_LAST' },
|
|
@@ -1018,7 +1036,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1018
1036
|
{ label: 'is not null', value: 'IS NOT' },
|
|
1019
1037
|
{ label: 'is null', value: 'IS' },
|
|
1020
1038
|
// { label: 'equals', value: 'equals' },
|
|
1021
|
-
] }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: node.left.args.value[1].column, onChange: (event) => {
|
|
1039
|
+
], width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: node.left.args.value[1].column, onChange: (event) => {
|
|
1022
1040
|
handleChange([
|
|
1023
1041
|
{
|
|
1024
1042
|
value: event.target.value,
|
|
@@ -1034,7 +1052,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1034
1052
|
{ label: `quarter`, value: 'QUARTER' },
|
|
1035
1053
|
{ label: `month`, value: 'MONTH' },
|
|
1036
1054
|
{ label: `week`, value: 'WEEK' },
|
|
1037
|
-
] })] }));
|
|
1055
|
+
], width: 200 })] }));
|
|
1038
1056
|
}
|
|
1039
1057
|
else if ((0, util_1.isThePreviousInterval)(node, client.databaseType)) {
|
|
1040
1058
|
const options = getAllPossibleColumns().map((column) => ({
|
|
@@ -1062,7 +1080,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1062
1080
|
newSubtree.left.args.value[0].column = event.target.value;
|
|
1063
1081
|
handleReplaceSubtree(keyPrefix, newSubtree);
|
|
1064
1082
|
}
|
|
1065
|
-
}, options: options }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'IN_THE_PREVIOUS', onChange: (event) => {
|
|
1083
|
+
}, options: options, width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'IN_THE_PREVIOUS', onChange: (event) => {
|
|
1066
1084
|
handleOperatorChange(event.target.value, node, keyPrefix, node.left.column);
|
|
1067
1085
|
}, options: [
|
|
1068
1086
|
{ label: 'in the last', value: 'IN_THE_LAST' },
|
|
@@ -1072,7 +1090,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1072
1090
|
{ label: 'is not null', value: 'IS NOT' },
|
|
1073
1091
|
{ label: 'is null', value: 'IS' },
|
|
1074
1092
|
// { label: 'equals', value: 'equals' },
|
|
1075
|
-
] }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: node.left.args.value[1].column, onChange: (event) => {
|
|
1093
|
+
], width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: node.left.args.value[1].column, onChange: (event) => {
|
|
1076
1094
|
const dayConversion = {
|
|
1077
1095
|
YEAR: 365,
|
|
1078
1096
|
QUARTER: 90,
|
|
@@ -1098,7 +1116,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1098
1116
|
{ label: `quarter`, value: 'QUARTER' },
|
|
1099
1117
|
{ label: `month`, value: 'MONTH' },
|
|
1100
1118
|
{ label: `week`, value: 'WEEK' },
|
|
1101
|
-
] })] }));
|
|
1119
|
+
], width: 200 })] }));
|
|
1102
1120
|
}
|
|
1103
1121
|
else if ((0, util_1.isEquals)(node, client.databaseType)) {
|
|
1104
1122
|
const options = getAllPossibleColumns().map((column) => ({
|
|
@@ -1126,7 +1144,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1126
1144
|
newSubtree.left.args.value[0].column = event.target.value;
|
|
1127
1145
|
handleReplaceSubtree(keyPrefix, newSubtree);
|
|
1128
1146
|
}
|
|
1129
|
-
}, options: options }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'EQUALS', onChange: (event) => {
|
|
1147
|
+
}, options: options, width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: 'EQUALS', onChange: (event) => {
|
|
1130
1148
|
handleOperatorChange(event.target.value, node, keyPrefix, node.left.column);
|
|
1131
1149
|
}, options: [
|
|
1132
1150
|
{ label: 'in the last', value: 'IN_THE_LAST' },
|
|
@@ -1136,7 +1154,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1136
1154
|
{ label: 'is not null', value: 'IS NOT' },
|
|
1137
1155
|
{ label: 'is null', value: 'IS' },
|
|
1138
1156
|
// { label: 'equals', value: 'equals' },
|
|
1139
|
-
] }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: node.right.args.value[1].column, onChange: (event) => {
|
|
1157
|
+
], width: 200 }), (0, jsx_runtime_1.jsx)(SelectComponent, { value: node.right.args.value[1].column, onChange: (event) => {
|
|
1140
1158
|
handleChange([
|
|
1141
1159
|
{
|
|
1142
1160
|
value: event.target.value,
|
|
@@ -1152,7 +1170,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1152
1170
|
{ label: `quarter`, value: 'QUARTER' },
|
|
1153
1171
|
{ label: `month`, value: 'MONTH' },
|
|
1154
1172
|
{ label: `week`, value: 'WEEK' },
|
|
1155
|
-
] }), (0, jsx_runtime_1.jsx)(TextInputComponent, { id: 'quoted_string', value: node.right.args.value[0].value, width: 120, onChange: (e) => handleChange([
|
|
1173
|
+
], width: 200 }), (0, jsx_runtime_1.jsx)(TextInputComponent, { id: 'quoted_string', value: node.right.args.value[0].value, width: 120, onChange: (e) => handleChange([
|
|
1156
1174
|
{
|
|
1157
1175
|
value: e.target.value,
|
|
1158
1176
|
path: 'right.args.value||0.value',
|
|
@@ -1238,30 +1256,27 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1238
1256
|
newSubtree.left.args.value[0].column = event.target.value;
|
|
1239
1257
|
handleReplaceSubtree(keyPrefix, newSubtree);
|
|
1240
1258
|
}
|
|
1241
|
-
}, options: options }), operatorOptions.length > 0 && ((0, jsx_runtime_1.jsx)(SelectComponent, { value: node.operator, onChange: (event) => {
|
|
1259
|
+
}, options: options, width: 200 }), operatorOptions.length > 0 && ((0, jsx_runtime_1.jsx)(SelectComponent, { value: node.operator, onChange: (event) => {
|
|
1242
1260
|
handleOperatorChange(event.target.value, node, keyPrefix, leftChildValue);
|
|
1243
|
-
}, options: operatorOptions })), node.right &&
|
|
1261
|
+
}, options: operatorOptions, width: 200 })), node.right &&
|
|
1244
1262
|
node.right.type !== 'expr_list' &&
|
|
1245
1263
|
renderNode(node.right, keyPrefix + 'right.')] }, keyPrefix), node.right && node.right.type === 'expr_list' && ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
1246
1264
|
display: 'grid',
|
|
1247
1265
|
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
1248
1266
|
gap: 12,
|
|
1249
1267
|
}, children: uniqueValues[table] &&
|
|
1250
|
-
Object.keys(uniqueValues[table][leftChildValue] ?? {}).map((key) => ((0, jsx_runtime_1.
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
fontFamily: theme.fontFamily,
|
|
1263
|
-
margin: 'auto 0',
|
|
1264
|
-
}, children: key })] }, key))) }, keyPrefix + 'right.'))] }));
|
|
1268
|
+
Object.keys(uniqueValues[table][leftChildValue] ?? {}).map((key) => ((0, jsx_runtime_1.jsx)(CheckboxComponent, { label: key, isChecked: uniqueValues[table][leftChildValue][key], onChange: (event) => {
|
|
1269
|
+
const newValues = (0, util_1.deepCopy)(uniqueValues);
|
|
1270
|
+
newValues[table][leftChildValue][key] =
|
|
1271
|
+
event.target.checked;
|
|
1272
|
+
setUniqueValues(newValues);
|
|
1273
|
+
if (event.target.checked) {
|
|
1274
|
+
handleInsertVariant(keyPrefix + 'right.' + 'value', key);
|
|
1275
|
+
}
|
|
1276
|
+
else {
|
|
1277
|
+
handleDeleteVariant(keyPrefix + 'right.' + 'value', key);
|
|
1278
|
+
}
|
|
1279
|
+
} }))) }, keyPrefix + 'right.'))] }));
|
|
1265
1280
|
}
|
|
1266
1281
|
else {
|
|
1267
1282
|
const columnName = node.left.column;
|
|
@@ -1312,7 +1327,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1312
1327
|
: []),
|
|
1313
1328
|
// { label: `minus`, value: "-" },
|
|
1314
1329
|
// { label: `plus`, value: "+" },
|
|
1315
|
-
] }), node.right && renderNode(node.right, keyPrefix + 'right.')] }, keyPrefix));
|
|
1330
|
+
], width: 200 }), node.right && renderNode(node.right, keyPrefix + 'right.')] }, keyPrefix));
|
|
1316
1331
|
}
|
|
1317
1332
|
case 'column_ref': {
|
|
1318
1333
|
const options = getAllPossibleColumns().map((column) => ({
|
|
@@ -1323,7 +1338,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
1323
1338
|
handleChange([
|
|
1324
1339
|
{ value: event.target.value, path: keyPrefix + 'column' },
|
|
1325
1340
|
]);
|
|
1326
|
-
}, options: options }));
|
|
1341
|
+
}, options: options, width: 200 }));
|
|
1327
1342
|
}
|
|
1328
1343
|
case 'expr_list': {
|
|
1329
1344
|
const len = node.value.length;
|
|
@@ -2024,7 +2039,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
2024
2039
|
flexDirection: 'row',
|
|
2025
2040
|
height: '100%',
|
|
2026
2041
|
...containerStyle,
|
|
2027
|
-
}, ref: parentRef, children: [(0, jsx_runtime_1.jsxs)(SidebarComponent, { children: [(0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Columns" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(DraggableColumns, {}), (0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: () => {
|
|
2042
|
+
}, className: className, ref: parentRef, children: [(0, jsx_runtime_1.jsxs)(SidebarComponent, { children: [(0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Columns" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(DraggableColumns, {}), (0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: () => {
|
|
2028
2043
|
if (loadingSchema)
|
|
2029
2044
|
return;
|
|
2030
2045
|
if (!openPopover) {
|
|
@@ -2147,7 +2162,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
2147
2162
|
setOpenPopover(null);
|
|
2148
2163
|
clearCheckboxes();
|
|
2149
2164
|
}
|
|
2150
|
-
} }) })] }))] }), (0, jsx_runtime_1.jsx)("div", { style: { height: 28, width: '100%' } }), (0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Pivot" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(PivotModal_1.PivotModal, { pivotRowField: pivotRowField, setPivotRowField: setPivotRowField, pivotColumnField: pivotColumnField, setPivotColumnField: setPivotColumnField, pivotValueField: pivotValueField, setPivotValueField: setPivotValueField, pivotAggregation: pivotAggregation, setPivotAggregation: setPivotAggregation, createdPivots: createdPivots, setCreatedPivots: setCreatedPivots, recommendedPivots: recommendedPivots, setRecommendedPivots: setRecommendedPivots, popUpTitle: pivotPopUpTitle, setPopUpTitle: setPivotPopUpTitle, selectedTable: initialTableName, CardComponent: CardComponent, SelectComponent: SelectComponent, ButtonComponent: ButtonComponent, PopoverComponent: PopoverComponent, TextComponent: TextComponent, isOpen: showPivotPopover, setIsOpen: setShowPivotPopover, showUpdatePivot: isEdittingPivot, setShowUpdatePivot: setIsEdittingPivot, parentRef: parentRef, data: rows, columns:
|
|
2165
|
+
} }) })] }))] }), (0, jsx_runtime_1.jsx)("div", { style: { height: 28, width: '100%' } }), (0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Pivot" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(PivotModal_1.PivotModal, { pivotRowField: pivotRowField, setPivotRowField: setPivotRowField, pivotColumnField: pivotColumnField, setPivotColumnField: setPivotColumnField, pivotValueField: pivotValueField, setPivotValueField: setPivotValueField, pivotAggregation: pivotAggregation, setPivotAggregation: setPivotAggregation, createdPivots: createdPivots, setCreatedPivots: setCreatedPivots, recommendedPivots: recommendedPivots, setRecommendedPivots: setRecommendedPivots, popUpTitle: pivotPopUpTitle, setPopUpTitle: setPivotPopUpTitle, selectedTable: initialTableName, CardComponent: CardComponent, SelectComponent: SelectComponent, ButtonComponent: ButtonComponent, PopoverComponent: PopoverComponent, TextComponent: TextComponent, isOpen: showPivotPopover, setIsOpen: setShowPivotPopover, showUpdatePivot: isEdittingPivot, setShowUpdatePivot: setIsEdittingPivot, parentRef: parentRef, data: rows, columns: processColumnsForPivotModal(Object.keys(rows[0] ?? {})), triggerButtonText: 'Add pivot', selectedPivotIndex: selectedPivotIndex, setSelectedPivotIndex: setSelectedPivotIndex, removePivot: () => {
|
|
2151
2166
|
setPivot(null);
|
|
2152
2167
|
setPivotData(null);
|
|
2153
2168
|
},
|
|
@@ -2301,7 +2316,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
2301
2316
|
overflowY: 'auto',
|
|
2302
2317
|
boxSizing: 'border-box',
|
|
2303
2318
|
...containerStyle,
|
|
2304
|
-
}, children: [(0, jsx_runtime_1.jsxs)(SidebarComponent, { children: [(0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Columns" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(DraggableColumns, {}), (0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: () => {
|
|
2319
|
+
}, className: className, children: [(0, jsx_runtime_1.jsxs)(SidebarComponent, { children: [(0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Columns" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(DraggableColumns, {}), (0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { onClick: () => {
|
|
2305
2320
|
if (!orderedColumnNames) {
|
|
2306
2321
|
return;
|
|
2307
2322
|
}
|
|
@@ -2428,7 +2443,7 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
2428
2443
|
setOpenPopover(null);
|
|
2429
2444
|
clearCheckboxes();
|
|
2430
2445
|
}
|
|
2431
|
-
} }) })] }))] }), (0, jsx_runtime_1.jsx)("div", { style: { height: 28, width: '100%' } }), (0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Pivot" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(PivotModal_1.PivotModal, { pivotRowField: pivotRowField, setPivotRowField: setPivotRowField, pivotColumnField: pivotColumnField, setPivotColumnField: setPivotColumnField, pivotValueField: pivotValueField, setPivotValueField: setPivotValueField, pivotAggregation: pivotAggregation, setPivotAggregation: setPivotAggregation, createdPivots: createdPivots, setCreatedPivots: setCreatedPivots, recommendedPivots: recommendedPivots, setRecommendedPivots: setRecommendedPivots, popUpTitle: pivotPopUpTitle, setPopUpTitle: setPivotPopUpTitle, selectedTable: initialTableName, SelectComponent: SelectComponent, ButtonComponent: ButtonComponent, CardComponent: CardComponent, SecondaryButtonComponent: SecondaryButtonComponent, PopoverComponent: PopoverComponent, TextComponent: TextComponent, isOpen: showPivotPopover, setIsOpen: setShowPivotPopover, showUpdatePivot: isEdittingPivot, setShowUpdatePivot: setIsEdittingPivot, parentRef: parentRef, data: rows, columns:
|
|
2446
|
+
} }) })] }))] }), (0, jsx_runtime_1.jsx)("div", { style: { height: 28, width: '100%' } }), (0, jsx_runtime_1.jsx)(SidebarHeadingComponent, { label: "Pivot" }), (0, jsx_runtime_1.jsx)("div", { style: { height: 4, width: '100%' } }), (0, jsx_runtime_1.jsx)(PivotModal_1.PivotModal, { pivotRowField: pivotRowField, setPivotRowField: setPivotRowField, pivotColumnField: pivotColumnField, setPivotColumnField: setPivotColumnField, pivotValueField: pivotValueField, setPivotValueField: setPivotValueField, pivotAggregation: pivotAggregation, setPivotAggregation: setPivotAggregation, createdPivots: createdPivots, setCreatedPivots: setCreatedPivots, recommendedPivots: recommendedPivots, setRecommendedPivots: setRecommendedPivots, popUpTitle: pivotPopUpTitle, setPopUpTitle: setPivotPopUpTitle, selectedTable: initialTableName, SelectComponent: SelectComponent, ButtonComponent: ButtonComponent, CardComponent: CardComponent, SecondaryButtonComponent: SecondaryButtonComponent, PopoverComponent: PopoverComponent, TextComponent: TextComponent, isOpen: showPivotPopover, setIsOpen: setShowPivotPopover, showUpdatePivot: isEdittingPivot, setShowUpdatePivot: setIsEdittingPivot, parentRef: parentRef, data: rows, columns: processColumnsForPivotModal(Object.keys(rows[0] ?? {})), triggerButtonText: 'Add pivot', selectedPivotIndex: selectedPivotIndex, setSelectedPivotIndex: setSelectedPivotIndex, removePivot: () => {
|
|
2432
2447
|
setPivot(null);
|
|
2433
2448
|
setPivotData(null);
|
|
2434
2449
|
}, selectPivot: (pivot) => {
|
|
@@ -2648,6 +2663,6 @@ function ReportBuilder({ initialTableName = '', onSubmitChartBuilder = () => voi
|
|
|
2648
2663
|
whiteSpace: 'nowrap',
|
|
2649
2664
|
}, children: errorMessage })), (0, jsx_runtime_1.jsx)("div", { style: { width: '100%' } }), baseAst && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(SecondaryButtonComponent, { label: isCopying ? '✅ Copied' : 'Copy SQL', onClick: () => copyToClipboard(activeQuery) }), (0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: () => {
|
|
2650
2665
|
setIsChartBuilderOpen(true);
|
|
2651
|
-
}, label: 'Add to dashboard' })] }))] })] }), (0, jsx_runtime_1.jsx)("style", { children: `body{margin:0;}` }), (0, jsx_runtime_1.jsx)(ChartBuilder_1.ChartBuilderWithModal, { rows: rows, columns: processColumnsForChartBuilder(Object.keys(rows[0] ?? {})), fields: fields, pivot: pivot, query: activeQuery, showTableFormatOptions: isAdminEnabled, showDateFieldOptions: isAdminEnabled, showAccessControlOptions: isAdminEnabled, title: "Add to dashboard", isOpen: isChartBuilderOpen, setIsOpen: setIsChartBuilderOpen, onAddToDashboardComplete: onSubmitChartBuilder, destinationDashboard: destinationDashboard, organizationName: organizationName, pivotData: pivotData, SelectComponent: SelectComponent, TextInputComponent: TextInputComponent, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, HeaderComponent: HeaderComponent, LabelComponent: LabelComponent, TextComponent: TextComponent, CardComponent: CardComponent, ModalComponent: ModalComponent, PopoverComponent: PopoverComponent, TableComponent: TableComponent, DeleteButtonComponent: DeleteButtonComponent })] }));
|
|
2666
|
+
}, label: 'Add to dashboard' })] }))] })] }), (0, jsx_runtime_1.jsx)("style", { children: `body{margin:0;}` }), (0, jsx_runtime_1.jsx)(ChartBuilder_1.ChartBuilderWithModal, { rows: rows, columns: processColumnsForChartBuilder(Object.keys(rows[0] ?? {})), fields: fields, pivot: pivot, query: activeQuery, showTableFormatOptions: isAdminEnabled, showDateFieldOptions: isAdminEnabled, showAccessControlOptions: isAdminEnabled, title: "Add to dashboard", isHorizontalView: true, isOpen: isChartBuilderOpen, setIsOpen: setIsChartBuilderOpen, onAddToDashboardComplete: onSubmitChartBuilder, destinationDashboard: destinationDashboard, organizationName: organizationName, pivotData: pivotData, SelectComponent: SelectComponent, TextInputComponent: TextInputComponent, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, HeaderComponent: HeaderComponent, LabelComponent: LabelComponent, TextComponent: TextComponent, CardComponent: CardComponent, ModalComponent: ModalComponent, PopoverComponent: PopoverComponent, TableComponent: TableComponent, DeleteButtonComponent: DeleteButtonComponent })] }));
|
|
2652
2667
|
}
|
|
2653
2668
|
exports.default = ReportBuilder;
|
package/dist/cjs/SQLEditor.d.ts
CHANGED
|
@@ -146,6 +146,12 @@ export interface SQLEditorProps {
|
|
|
146
146
|
* The name of the current organization.
|
|
147
147
|
*/
|
|
148
148
|
organizationName?: string;
|
|
149
|
+
/**
|
|
150
|
+
* Styles the top-level container of the SQLEditor.
|
|
151
|
+
*
|
|
152
|
+
* This can be useful for TailwindCSS-style classname strings.
|
|
153
|
+
*/
|
|
154
|
+
className?: string;
|
|
149
155
|
/**
|
|
150
156
|
* Styles the top-level container of the SQLEditor.
|
|
151
157
|
*/
|
|
@@ -176,7 +182,7 @@ export interface SQLEditorProps {
|
|
|
176
182
|
* ### SQLEditor API
|
|
177
183
|
* @see https://docs.quillsql.com/components/sql-editor
|
|
178
184
|
*/
|
|
179
|
-
export default function SQLEditor({ ButtonComponent, SecondaryButtonComponent, TextInputComponent, TableComponent, isNewQueryEnabled, LoadingComponent, ModalComponent, CardComponent, defaultQuery, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, isChartBuilderEnabled, showTableFormatOptions, showDateFieldOptions, showAccessControlOptions, destinationDashboard, chartBuilderTitle, chartBuilderButtonLabel, onAddToDashboardComplete, addToDashboardButtonLabel, dashboardItem, organizationName, isChartBuilderHorizontalView, containerStyle, }: SQLEditorProps): import("react/jsx-runtime").JSX.Element;
|
|
185
|
+
export default function SQLEditor({ ButtonComponent, SecondaryButtonComponent, TextInputComponent, TableComponent, isNewQueryEnabled, LoadingComponent, ModalComponent, CardComponent, defaultQuery, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, isChartBuilderEnabled, showTableFormatOptions, showDateFieldOptions, showAccessControlOptions, destinationDashboard, chartBuilderTitle, chartBuilderButtonLabel, onAddToDashboardComplete, addToDashboardButtonLabel, dashboardItem, organizationName, isChartBuilderHorizontalView, containerStyle, className, }: SQLEditorProps): import("react/jsx-runtime").JSX.Element;
|
|
180
186
|
export declare const SchemaListComponent: ({ schema, theme, loading, LoadingComponent, width, onClick, }: {
|
|
181
187
|
schema: any;
|
|
182
188
|
theme: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SQLEditor.d.ts","sourceRoot":"","sources":["../../src/SQLEditor.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SQLEditor.d.ts","sourceRoot":"","sources":["../../src/SQLEditor.tsx"],"names":[],"mappings":"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"}
|
package/dist/cjs/SQLEditor.js
CHANGED
|
@@ -138,7 +138,7 @@ function setEditorTheme(editor, monaco) {
|
|
|
138
138
|
* ### SQLEditor API
|
|
139
139
|
* @see https://docs.quillsql.com/components/sql-editor
|
|
140
140
|
*/
|
|
141
|
-
function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, TextInputComponent = UiComponents_2.QuillTextInput, TableComponent = UiComponents_1.QuillTableComponent, isNewQueryEnabled = false, LoadingComponent, ModalComponent = UiComponents_1.MemoizedModal, CardComponent = QuillCard_1.QuillCard, defaultQuery, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, isChartBuilderEnabled = false, showTableFormatOptions = false, showDateFieldOptions = false, showAccessControlOptions = false, destinationDashboard, chartBuilderTitle, chartBuilderButtonLabel, onAddToDashboardComplete, addToDashboardButtonLabel = 'Add to dashboard', dashboardItem = undefined, organizationName = undefined, isChartBuilderHorizontalView = true, containerStyle = { height: '100vh' }, }) {
|
|
141
|
+
function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, TextInputComponent = UiComponents_2.QuillTextInput, TableComponent = UiComponents_1.QuillTableComponent, isNewQueryEnabled = false, LoadingComponent, ModalComponent = UiComponents_1.MemoizedModal, CardComponent = QuillCard_1.QuillCard, defaultQuery, onChangeQuery, onChangeData, onChangeColumns, onChangeFields, isChartBuilderEnabled = false, showTableFormatOptions = false, showDateFieldOptions = false, showAccessControlOptions = false, destinationDashboard, chartBuilderTitle, chartBuilderButtonLabel, onAddToDashboardComplete, addToDashboardButtonLabel = 'Add to dashboard', dashboardItem = undefined, organizationName = undefined, isChartBuilderHorizontalView = true, containerStyle = { height: '100vh' }, className, }) {
|
|
142
142
|
const [sqlPrompt, setSqlPrompt] = (0, react_1.useState)('');
|
|
143
143
|
const [client] = (0, react_1.useContext)(Context_1.ClientContext);
|
|
144
144
|
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
@@ -297,7 +297,7 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
|
|
|
297
297
|
onChangeQuery(query);
|
|
298
298
|
}
|
|
299
299
|
}, [query]);
|
|
300
|
-
return ((0, jsx_runtime_1.jsxs)("div", { style: containerStyle, children: [(!isChartBuilderHorizontalView ||
|
|
300
|
+
return ((0, jsx_runtime_1.jsxs)("div", { style: { backgroundColor: theme.backgroundColor, ...containerStyle }, className: className, children: [(!isChartBuilderHorizontalView ||
|
|
301
301
|
(isChartBuilderHorizontalView && !isChartBuilderOpen)) && ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
302
302
|
height: '100%',
|
|
303
303
|
display: 'flex',
|
|
@@ -357,12 +357,11 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
|
|
|
357
357
|
justifyContent: 'flex-end',
|
|
358
358
|
width: '100%',
|
|
359
359
|
height: '70px',
|
|
360
|
-
}, children: (0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: () => setIsChartBuilderOpen(true), label: addToDashboardButtonLabel }) }))] })] }) }) })), (0, jsx_runtime_1.jsx)(ChartBuilder_1.ChartBuilderWithModal, { rows: rows, columns: columns, fields: fields, query: query,
|
|
360
|
+
}, children: (0, jsx_runtime_1.jsx)(ButtonComponent, { onClick: () => setIsChartBuilderOpen(true), label: addToDashboardButtonLabel }) }))] })] }) }) })), (0, jsx_runtime_1.jsx)(ChartBuilder_1.ChartBuilderWithModal, { rows: rows, columns: columns, fields: fields, query: query, isHorizontalView: isChartBuilderHorizontalView, isOpen: isChartBuilderOpen, setIsOpen: setIsChartBuilderOpen, onAddToDashboardComplete: onAddToDashboardComplete, showTableFormatOptions: showTableFormatOptions, showDateFieldOptions: showDateFieldOptions, showAccessControlOptions: showAccessControlOptions, destinationDashboard: destinationDashboard, title: chartBuilderTitle, button: chartBuilderButtonLabel, buttonLabel: addToDashboardButtonLabel, dashboardItem: dashboardItem, organizationName: organizationName, CardComponent: CardComponent, TableComponent: TableComponent, ModalComponent: ModalComponent, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent })] }));
|
|
361
361
|
}
|
|
362
362
|
exports.default = SQLEditor;
|
|
363
363
|
const SQLEditorComponent = ({ query, setQuery, handleRunQuery, handleFixWithAI, handleClearQuery, defineEditorTheme, setEditorTheme, ButtonComponent, SecondaryButtonComponent, isNewQueryEnabled, theme, loading, LoadingComponent, }) => {
|
|
364
364
|
return ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
365
|
-
background: theme.backgroundColor,
|
|
366
365
|
// maxHeight: 700,
|
|
367
366
|
width: '100%',
|
|
368
367
|
height: '100%',
|
|
@@ -400,7 +399,6 @@ const SQLEditorComponent = ({ query, setQuery, handleRunQuery, handleFixWithAI,
|
|
|
400
399
|
const SchemaListComponent = ({ schema, theme, loading, LoadingComponent, width, onClick = () => { }, }) => {
|
|
401
400
|
if (loading) {
|
|
402
401
|
return ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
403
|
-
background: theme.backgroundColor,
|
|
404
402
|
// maxHeight: 700,
|
|
405
403
|
width: width || 250,
|
|
406
404
|
minWidth: 250,
|
|
@@ -416,7 +414,6 @@ const SchemaListComponent = ({ schema, theme, loading, LoadingComponent, width,
|
|
|
416
414
|
}, children: [(0, jsx_runtime_1.jsx)("div", { style: { height: 100 } }), LoadingComponent && (0, jsx_runtime_1.jsx)(LoadingComponent, {}), !LoadingComponent && ((0, jsx_runtime_1.jsxs)("svg", { width: "24", height: "24", children: [(0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "12", r: "9.375", strokeWidth: "3.75", strokeDasharray: "calc(2 * 3.14 * 9.375 / 3) calc(2 * 3.14 * 9.375 * 2 / 3)", strokeDashoffset: "calc(2 * 3.14 * 9.375 / 6)", stroke: theme?.primaryTextColor || '#364153', fill: "none", transform: "rotate(-90 12 12)", children: (0, jsx_runtime_1.jsx)("animateTransform", { attributeName: "transform", attributeType: "XML", type: "rotate", from: "-180 12 12", to: "180 12 12", dur: "0.8s", repeatCount: "indefinite" }) }), (0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "12", r: "9.375", strokeWidth: "3.75", strokeDasharray: "calc(2 * 3.14 * 9.375 / 3) calc(2 * 3.14 * 9.375 * 1 / 3)", strokeDashoffset: "calc(2 * 3.14 * 9.375 / 3) calc(2 * 3.14 * 9.375 * 2 / 3)", stroke: '#ADB1B9', fill: "none", transform: "rotate(90 12 12)", children: (0, jsx_runtime_1.jsx)("animateTransform", { attributeName: "transform", attributeType: "XML", type: "rotate", from: "0 12 12", to: "360 12 12", dur: "0.8s", repeatCount: "indefinite" }) })] }))] }));
|
|
417
415
|
}
|
|
418
416
|
return ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
419
|
-
background: theme.backgroundColor,
|
|
420
417
|
// maxHeight: 700,
|
|
421
418
|
width: width || 250,
|
|
422
419
|
minWidth: 250,
|
package/dist/cjs/Table.d.ts
CHANGED
|
@@ -90,6 +90,12 @@ export interface TableProps {
|
|
|
90
90
|
* A loading component to show when the table is loading.
|
|
91
91
|
*/
|
|
92
92
|
LoadingComponent?: () => JSX.Element;
|
|
93
|
+
/**
|
|
94
|
+
* Styles the top-level container of the Table.
|
|
95
|
+
*
|
|
96
|
+
* This can be useful for TailwindCSS-style classname strings.
|
|
97
|
+
*/
|
|
98
|
+
className?: string;
|
|
93
99
|
/**
|
|
94
100
|
* Styles the top-level container of the Table.
|
|
95
101
|
*/
|
package/dist/cjs/Table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAYrD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAYrD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAyBD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAC;IAEhC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IAEJ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IAErC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACtC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,QAAA,MAAM,KAAK,UAAW,UAAU,4CAmC/B,CAAC;AAiGF,eAAe,KAAK,CAAC"}
|
package/dist/cjs/Table.js
CHANGED
|
@@ -48,11 +48,11 @@ const Table = (props) => {
|
|
|
48
48
|
const { dashboardFilters } = (0, react_1.useContext)(Context_1.DashboardFiltersContext);
|
|
49
49
|
const [client, _] = (0, react_1.useContext)(Context_1.ClientContext);
|
|
50
50
|
if ('rows' in data && 'columns' in data) {
|
|
51
|
-
return ((0, jsx_runtime_1.jsx)(QuillTable_1.default, { showDownloadCSVButton: data.showDownloadCSVButton, downloadFileName: data.csvFilename, columns: data.columns, rows: data.rows, containerStyle: data.containerStyle, LoadingComponent: data.LoadingComponent, isLoading: data.isLoading, downloadCSV: data.downloadCSV }));
|
|
51
|
+
return ((0, jsx_runtime_1.jsx)(QuillTable_1.default, { showDownloadCSVButton: data.showDownloadCSVButton, downloadFileName: data.csvFilename, columns: data.columns, rows: data.rows, className: data.className, containerStyle: data.containerStyle, LoadingComponent: data.LoadingComponent, isLoading: data.isLoading, downloadCSV: data.downloadCSV }));
|
|
52
52
|
}
|
|
53
|
-
return ((0, jsx_runtime_1.jsx)(ChartUpdater, { showDownloadCSVButton: data.showDownloadCSVButton, dispatch: dispatch, dashboard: dashboard, chartId: data.chartId, containerStyle: data.containerStyle, dashboardFilters: dashboardFilters, client: client, csvFilename: data.csvFilename, LoadingComponent: data.LoadingComponent }));
|
|
53
|
+
return ((0, jsx_runtime_1.jsx)(ChartUpdater, { showDownloadCSVButton: data.showDownloadCSVButton, dispatch: dispatch, dashboard: dashboard, chartId: data.chartId, className: data.className, containerStyle: data.containerStyle, dashboardFilters: dashboardFilters, client: client, csvFilename: data.csvFilename, LoadingComponent: data.LoadingComponent }));
|
|
54
54
|
};
|
|
55
|
-
const ChartUpdater = ({ chartId, containerStyle, dashboard, dispatch, client, dashboardFilters, csvFilename, showDownloadCSVButton = true, LoadingComponent, }) => {
|
|
55
|
+
const ChartUpdater = ({ chartId, containerStyle, className, dashboard, dispatch, client, dashboardFilters, csvFilename, showDownloadCSVButton = true, LoadingComponent, }) => {
|
|
56
56
|
const { rows, loading } = (0, useFormat_1.useMemoizedRows)(chartId);
|
|
57
57
|
const { downloadCSV } = (0, useExport_1.useExport)(chartId);
|
|
58
58
|
(0, react_1.useEffect)(() => {
|
|
@@ -105,6 +105,6 @@ const ChartUpdater = ({ chartId, containerStyle, dashboard, dispatch, client, da
|
|
|
105
105
|
// @ts-ignore
|
|
106
106
|
columns: dashboard[chartId]?.columns || [],
|
|
107
107
|
// @ts-ignore
|
|
108
|
-
rows: rows || dashboard[chartId]?.rows || [], containerStyle: containerStyle, LoadingComponent: LoadingComponent, isLoading: loading, downloadCSV: downloadCSV }));
|
|
108
|
+
rows: rows || dashboard[chartId]?.rows || [], containerStyle: containerStyle, className: className, LoadingComponent: LoadingComponent, isLoading: loading, downloadCSV: downloadCSV }));
|
|
109
109
|
};
|
|
110
110
|
exports.default = Table;
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { type ColorMapType } from '../../Chart';
|
|
3
|
-
export default function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, xAxisField, xAxisFormat, theme, comparison, isStacked, isAnimationActive, hideXAxis, hideYAxis, hideCartesianGrid, }: {
|
|
3
|
+
export default function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, className, xAxisField, xAxisFormat, theme, comparison, isStacked, isAnimationActive, hideXAxis, hideYAxis, hideCartesianGrid, }: {
|
|
4
4
|
colors?: string[];
|
|
5
5
|
colorMap?: ColorMapType;
|
|
6
6
|
yAxisFields: any[];
|
|
7
7
|
data: any[];
|
|
8
8
|
containerStyle?: React.CSSProperties;
|
|
9
|
+
className?: string;
|
|
9
10
|
xAxisField: string;
|
|
10
11
|
xAxisLabel: string;
|
|
11
12
|
xAxisFormat: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,GAC1B,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;CAC5B,
|
|
1
|
+
{"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,GAC1B,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;CAC5B,2CAuLA"}
|
|
@@ -12,7 +12,7 @@ const color_1 = require("../../utils/color");
|
|
|
12
12
|
const ChartTooltip_1 = __importDefault(require("../../components/Chart/ChartTooltip"));
|
|
13
13
|
const getDomain_1 = __importDefault(require("../../utils/getDomain"));
|
|
14
14
|
const react_1 = require("react");
|
|
15
|
-
function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, xAxisField, xAxisFormat, theme, comparison, isStacked, isAnimationActive = true, hideXAxis = false, hideYAxis = false, hideCartesianGrid = false, }) {
|
|
15
|
+
function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, className, xAxisField, xAxisFormat, theme, comparison, isStacked, isAnimationActive = true, hideXAxis = false, hideYAxis = false, hideCartesianGrid = false, }) {
|
|
16
16
|
const [formattedData, setFormattedData] = (0, react_1.useState)([]);
|
|
17
17
|
(0, react_1.useEffect)(() => {
|
|
18
18
|
if (!data || data.length === 0) {
|
|
@@ -46,12 +46,12 @@ function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, xAxisFi
|
|
|
46
46
|
fontSize: 13,
|
|
47
47
|
color: theme.secondaryTextColor,
|
|
48
48
|
...containerStyle,
|
|
49
|
-
}, children: "No results found for specified time period." }));
|
|
49
|
+
}, className: className, children: "No results found for specified time period." }));
|
|
50
50
|
}
|
|
51
51
|
return ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
52
52
|
boxSizing: 'content-box',
|
|
53
53
|
...containerStyle,
|
|
54
|
-
}, children: (0, jsx_runtime_1.jsx)(recharts_1.ResponsiveContainer, { width: "100%", height: '100%', children: (0, jsx_runtime_1.jsxs)(recharts_1.BarChart, { data: formattedData, layout: 'horizontal', children: [!hideCartesianGrid && ((0, jsx_runtime_1.jsx)(recharts_1.CartesianGrid, { horizontal: true, vertical: false, stroke: "#e5e7eb" })), (0, jsx_runtime_1.jsx)(recharts_1.YAxis, { width: 44, hide: hideYAxis, axisLine: false, tickLine: false, type: "number", domain: (0, getDomain_1.default)(data, yAxisFields), tick: { transform: 'translate(-3, 0)' }, tickCount: 5, style: {
|
|
54
|
+
}, className: className, children: (0, jsx_runtime_1.jsx)(recharts_1.ResponsiveContainer, { width: "100%", height: '100%', children: (0, jsx_runtime_1.jsxs)(recharts_1.BarChart, { data: formattedData, layout: 'horizontal', children: [!hideCartesianGrid && ((0, jsx_runtime_1.jsx)(recharts_1.CartesianGrid, { horizontal: true, vertical: false, stroke: "#e5e7eb" })), (0, jsx_runtime_1.jsx)(recharts_1.YAxis, { width: 44, hide: hideYAxis, axisLine: false, tickLine: false, type: "number", domain: (0, getDomain_1.default)(data, yAxisFields), tick: { transform: 'translate(-3, 0)' }, tickCount: 5, style: {
|
|
55
55
|
fontSize: '12px',
|
|
56
56
|
fontFamily: theme.chartLabelFontFamily,
|
|
57
57
|
}, tickFormatter: (tick) => (0, axisFormatter_1.axisFormatter)({
|
|
@@ -86,7 +86,9 @@ function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, xAxisFi
|
|
|
86
86
|
return ((0, jsx_runtime_1.jsx)(recharts_1.Bar, { name: elem.label, dataKey: elem.field, stackId: isStacked &&
|
|
87
87
|
(elem.field?.replace('comparison_', '') ??
|
|
88
88
|
'unknown'), type: "linear", fill: getCustomColor(elem.field) ??
|
|
89
|
-
(0, color_1.selectColor)(elem, colors
|
|
89
|
+
(0, color_1.selectColor)(elem, colors.length >= yAxisFields.length / (comparison ? 2 : 1)
|
|
90
|
+
? colors
|
|
91
|
+
: (0, color_1.generateArrayFromColor)(colors.slice(0, 2), yAxisFields.length), yAxisFields.findIndex((field) => field.field === elem.field?.replace('comparison_', ''))), isAnimationActive: isAnimationActive }, elem.field));
|
|
90
92
|
})] }) }) }));
|
|
91
93
|
}
|
|
92
94
|
exports.default = BarChart;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { CSSProperties } from 'react';
|
|
2
2
|
import { type ColorMapType } from '../../Chart';
|
|
3
3
|
interface YAxisField {
|
|
4
4
|
label: string;
|
|
@@ -12,7 +12,8 @@ export interface BarListProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
12
12
|
showAnimation?: boolean;
|
|
13
13
|
xAxisField: string;
|
|
14
14
|
yAxisFields: YAxisField[];
|
|
15
|
-
containerStyle
|
|
15
|
+
containerStyle?: CSSProperties;
|
|
16
|
+
className?: string;
|
|
16
17
|
xAxisFormat: string;
|
|
17
18
|
colors?: string[];
|
|
18
19
|
colorMap?: ColorMapType;
|