@cubejs-client/playground 1.1.12 → 1.1.16
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/build/assets/{index-wSty61qr.js → index-Cc4_B7ie.js} +612 -778
- package/build/index.html +1 -1
- package/build/vizard/download/react-typescript-antd-table.zip +0 -0
- package/build/vizard/download/react-typescript-chartjs-area+bar+doughnut+line+pie.zip +0 -0
- package/lib/.tsbuildinfo +1 -1
- package/lib/QueryBuilderV2/QueryBuilder.d.ts +4 -0
- package/lib/QueryBuilderV2/QueryBuilder.js +12 -9
- package/lib/QueryBuilderV2/QueryBuilder.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderChart.js +2 -2
- package/lib/QueryBuilderV2/QueryBuilderChart.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderChartResults.js +4 -4
- package/lib/QueryBuilderV2/QueryBuilderChartResults.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderError.js +1 -3
- package/lib/QueryBuilderV2/QueryBuilderError.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderExtras.d.ts +1 -0
- package/lib/QueryBuilderV2/QueryBuilderExtras.js +39 -18
- package/lib/QueryBuilderV2/QueryBuilderExtras.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderFilters.js +88 -84
- package/lib/QueryBuilderV2/QueryBuilderFilters.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderGraphQL.js +1 -1
- package/lib/QueryBuilderV2/QueryBuilderGraphQL.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderInternals.js +7 -10
- package/lib/QueryBuilderV2/QueryBuilderInternals.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderResults.js +87 -45
- package/lib/QueryBuilderV2/QueryBuilderResults.js.map +1 -1
- package/lib/QueryBuilderV2/QueryBuilderSidePanel.d.ts +4 -3
- package/lib/QueryBuilderV2/QueryBuilderSidePanel.js +95 -54
- package/lib/QueryBuilderV2/QueryBuilderSidePanel.js.map +1 -1
- package/lib/QueryBuilderV2/components/Accordion/AccordionItemTitle.js +1 -1
- package/lib/QueryBuilderV2/components/Accordion/AccordionItemTitle.js.map +1 -1
- package/lib/QueryBuilderV2/components/AddFilterInput.d.ts +10 -0
- package/lib/QueryBuilderV2/components/AddFilterInput.js +195 -0
- package/lib/QueryBuilderV2/components/AddFilterInput.js.map +1 -0
- package/lib/QueryBuilderV2/components/Badge.d.ts +3 -2
- package/lib/QueryBuilderV2/components/Badge.js +4 -3
- package/lib/QueryBuilderV2/components/Badge.js.map +1 -1
- package/lib/QueryBuilderV2/components/ChartRenderer.js +0 -1
- package/lib/QueryBuilderV2/components/ChartRenderer.js.map +1 -1
- package/lib/QueryBuilderV2/components/DateRangeFilter.d.ts +7 -0
- package/lib/QueryBuilderV2/components/DateRangeFilter.js +25 -4
- package/lib/QueryBuilderV2/components/DateRangeFilter.js.map +1 -1
- package/lib/QueryBuilderV2/components/EditQueryDialogForm.js +18 -20
- package/lib/QueryBuilderV2/components/EditQueryDialogForm.js.map +1 -1
- package/lib/QueryBuilderV2/components/FilterByMemberButton.d.ts +6 -1
- package/lib/QueryBuilderV2/components/FilterByMemberButton.js +16 -6
- package/lib/QueryBuilderV2/components/FilterByMemberButton.js.map +1 -1
- package/lib/QueryBuilderV2/components/FilterLabel.d.ts +9 -0
- package/lib/QueryBuilderV2/components/FilterLabel.js +18 -4
- package/lib/QueryBuilderV2/components/FilterLabel.js.map +1 -1
- package/lib/QueryBuilderV2/components/FilterMember.d.ts +19 -0
- package/lib/QueryBuilderV2/components/FilterMember.js +137 -0
- package/lib/QueryBuilderV2/components/FilterMember.js.map +1 -0
- package/lib/QueryBuilderV2/components/FilterOptionsButton.d.ts +8 -0
- package/lib/QueryBuilderV2/components/FilterOptionsButton.js +54 -0
- package/lib/QueryBuilderV2/components/FilterOptionsButton.js.map +1 -0
- package/lib/QueryBuilderV2/components/FilteredLabel.js +10 -2
- package/lib/QueryBuilderV2/components/FilteredLabel.js.map +1 -1
- package/lib/QueryBuilderV2/components/Folder.d.ts +9 -0
- package/lib/QueryBuilderV2/components/Folder.js +47 -0
- package/lib/QueryBuilderV2/components/Folder.js.map +1 -0
- package/lib/QueryBuilderV2/components/GranularityListMember.d.ts +3 -0
- package/lib/QueryBuilderV2/components/GranularityListMember.js +5 -14
- package/lib/QueryBuilderV2/components/GranularityListMember.js.map +1 -1
- package/lib/QueryBuilderV2/components/HierarchyMember.d.ts +14 -0
- package/lib/QueryBuilderV2/components/HierarchyMember.js +47 -0
- package/lib/QueryBuilderV2/components/HierarchyMember.js.map +1 -0
- package/lib/QueryBuilderV2/components/InstanceTooltipProvider.d.ts +15 -0
- package/lib/QueryBuilderV2/components/InstanceTooltipProvider.js +36 -0
- package/lib/QueryBuilderV2/components/InstanceTooltipProvider.js.map +1 -0
- package/lib/QueryBuilderV2/components/ListButton.d.ts +341 -11
- package/lib/QueryBuilderV2/components/ListButton.js +2 -1
- package/lib/QueryBuilderV2/components/ListButton.js.map +1 -1
- package/lib/QueryBuilderV2/components/ListCube.js +2 -2
- package/lib/QueryBuilderV2/components/ListCube.js.map +1 -1
- package/lib/QueryBuilderV2/components/ListMember.d.ts +11 -2
- package/lib/QueryBuilderV2/components/ListMember.js +39 -29
- package/lib/QueryBuilderV2/components/ListMember.js.map +1 -1
- package/lib/QueryBuilderV2/components/ListMemberButton.d.ts +341 -11
- package/lib/QueryBuilderV2/components/ListMemberButton.js +8 -1
- package/lib/QueryBuilderV2/components/ListMemberButton.js.map +1 -1
- package/lib/QueryBuilderV2/components/LogicalFilter.d.ts +12 -0
- package/lib/QueryBuilderV2/components/LogicalFilter.js +152 -0
- package/lib/QueryBuilderV2/components/LogicalFilter.js.map +1 -0
- package/lib/QueryBuilderV2/components/MemberLabel.d.ts +11 -1
- package/lib/QueryBuilderV2/components/MemberLabel.js +14 -6
- package/lib/QueryBuilderV2/components/MemberLabel.js.map +1 -1
- package/lib/QueryBuilderV2/components/MemberLabelText.js +11 -4
- package/lib/QueryBuilderV2/components/MemberLabelText.js.map +1 -1
- package/lib/QueryBuilderV2/components/ReorderableList.d.ts +20 -0
- package/lib/QueryBuilderV2/components/ReorderableList.js +173 -0
- package/lib/QueryBuilderV2/components/ReorderableList.js.map +1 -0
- package/lib/QueryBuilderV2/components/ScrollableArea.d.ts +354 -1
- package/lib/QueryBuilderV2/components/SegmentFilter.d.ts +7 -0
- package/lib/QueryBuilderV2/components/SegmentFilter.js +30 -4
- package/lib/QueryBuilderV2/components/SegmentFilter.js.map +1 -1
- package/lib/QueryBuilderV2/components/SidePanelCubeItem.d.ts +4 -5
- package/lib/QueryBuilderV2/components/SidePanelCubeItem.js +380 -130
- package/lib/QueryBuilderV2/components/SidePanelCubeItem.js.map +1 -1
- package/lib/QueryBuilderV2/components/TimeListMember.d.ts +20 -5
- package/lib/QueryBuilderV2/components/TimeListMember.js +95 -49
- package/lib/QueryBuilderV2/components/TimeListMember.js.map +1 -1
- package/lib/QueryBuilderV2/components/ValuesInput.d.ts +4 -0
- package/lib/QueryBuilderV2/components/ValuesInput.js +65 -41
- package/lib/QueryBuilderV2/components/ValuesInput.js.map +1 -1
- package/lib/QueryBuilderV2/hooks/dimension-values.d.ts +13 -0
- package/lib/QueryBuilderV2/hooks/dimension-values.js +62 -0
- package/lib/QueryBuilderV2/hooks/dimension-values.js.map +1 -0
- package/lib/QueryBuilderV2/hooks/filtered-cubes.d.ts +6 -2
- package/lib/QueryBuilderV2/hooks/filtered-cubes.js +26 -8
- package/lib/QueryBuilderV2/hooks/filtered-cubes.js.map +1 -1
- package/lib/QueryBuilderV2/hooks/filtered-members.d.ts +10 -4
- package/lib/QueryBuilderV2/hooks/filtered-members.js +57 -20
- package/lib/QueryBuilderV2/hooks/filtered-members.js.map +1 -1
- package/lib/QueryBuilderV2/hooks/has-overflow.d.ts +1 -1
- package/lib/QueryBuilderV2/hooks/has-overflow.js +3 -0
- package/lib/QueryBuilderV2/hooks/has-overflow.js.map +1 -1
- package/lib/QueryBuilderV2/hooks/index.d.ts +2 -1
- package/lib/QueryBuilderV2/hooks/index.js +2 -1
- package/lib/QueryBuilderV2/hooks/index.js.map +1 -1
- package/lib/QueryBuilderV2/hooks/local-storage.js +1 -1
- package/lib/QueryBuilderV2/hooks/local-storage.js.map +1 -1
- package/lib/QueryBuilderV2/hooks/query-builder.d.ts +36 -13
- package/lib/QueryBuilderV2/hooks/query-builder.js +258 -36
- package/lib/QueryBuilderV2/hooks/query-builder.js.map +1 -1
- package/lib/QueryBuilderV2/hooks/shown-member-name.d.ts +16 -0
- package/lib/QueryBuilderV2/hooks/shown-member-name.js +20 -0
- package/lib/QueryBuilderV2/hooks/shown-member-name.js.map +1 -0
- package/lib/QueryBuilderV2/icons/{ArrowIcon.d.ts → ChevronIcon.d.ts} +5 -5
- package/lib/QueryBuilderV2/icons/ChevronIcon.js +49 -0
- package/lib/QueryBuilderV2/icons/ChevronIcon.js.map +1 -0
- package/lib/QueryBuilderV2/icons/ItemInfoIcon.d.ts +7 -6
- package/lib/QueryBuilderV2/icons/ItemInfoIcon.js +7 -4
- package/lib/QueryBuilderV2/icons/ItemInfoIcon.js.map +1 -1
- package/lib/QueryBuilderV2/icons/PrimaryKeyIcon.js +1 -1
- package/lib/QueryBuilderV2/icons/PrimaryKeyIcon.js.map +1 -1
- package/lib/QueryBuilderV2/types.d.ts +38 -4
- package/lib/QueryBuilderV2/utils/cube-sql-converter.d.ts +5 -5
- package/lib/QueryBuilderV2/utils/cube-sql-converter.js +48 -25
- package/lib/QueryBuilderV2/utils/cube-sql-converter.js.map +1 -1
- package/lib/QueryBuilderV2/utils/get-member-search-name.d.ts +3 -0
- package/lib/QueryBuilderV2/utils/get-member-search-name.js +11 -0
- package/lib/QueryBuilderV2/utils/get-member-search-name.js.map +1 -0
- package/lib/QueryBuilderV2/utils/get-query-hash.js +2 -29
- package/lib/QueryBuilderV2/utils/get-query-hash.js.map +1 -1
- package/lib/QueryBuilderV2/utils/get-type-icon.d.ts +1 -1
- package/lib/QueryBuilderV2/utils/get-type-icon.js +1 -1
- package/lib/QueryBuilderV2/utils/get-type-icon.js.map +1 -1
- package/lib/QueryBuilderV2/utils/get-used-cubes-and-members.d.ts +7 -1
- package/lib/QueryBuilderV2/utils/get-used-cubes-and-members.js +48 -8
- package/lib/QueryBuilderV2/utils/get-used-cubes-and-members.js.map +1 -1
- package/lib/QueryBuilderV2/utils/graphql-converters.js +9 -12
- package/lib/QueryBuilderV2/utils/graphql-converters.js.map +1 -1
- package/lib/QueryBuilderV2/utils/index.d.ts +2 -0
- package/lib/QueryBuilderV2/utils/index.js +2 -0
- package/lib/QueryBuilderV2/utils/index.js.map +1 -1
- package/lib/QueryBuilderV2/utils/validate-query.d.ts +2 -0
- package/lib/QueryBuilderV2/utils/validate-query.js +109 -0
- package/lib/QueryBuilderV2/utils/validate-query.js.map +1 -0
- package/lib/QueryBuilderV2/values.d.ts +2 -2
- package/lib/QueryBuilderV2/values.js +8 -7
- package/lib/QueryBuilderV2/values.js.map +1 -1
- package/lib/components/PlaygroundQueryBuilder/QueryBuilderContainer.js +1 -2
- package/lib/components/PlaygroundQueryBuilder/QueryBuilderContainer.js.map +1 -1
- package/lib/components/QueryTabs/QueryTabs.d.ts +3 -0
- package/lib/components/QueryTabs/QueryTabs.js +29 -4
- package/lib/components/QueryTabs/QueryTabs.js.map +1 -1
- package/package.json +6 -5
- package/public/vizard/download/react-typescript-antd-table.zip +0 -0
- package/public/vizard/download/react-typescript-chartjs-area+bar+doughnut+line+pie.zip +0 -0
- package/lib/QueryBuilderV2/QueryBuilderDevSidePanel.d.ts +0 -1
- package/lib/QueryBuilderV2/QueryBuilderDevSidePanel.js +0 -203
- package/lib/QueryBuilderV2/QueryBuilderDevSidePanel.js.map +0 -1
- package/lib/QueryBuilderV2/components/DeleteFilterButton.d.ts +0 -122
- package/lib/QueryBuilderV2/components/DeleteFilterButton.js +0 -10
- package/lib/QueryBuilderV2/components/DeleteFilterButton.js.map +0 -1
- package/lib/QueryBuilderV2/components/MemberFilter.d.ts +0 -13
- package/lib/QueryBuilderV2/components/MemberFilter.js +0 -106
- package/lib/QueryBuilderV2/components/MemberFilter.js.map +0 -1
- package/lib/QueryBuilderV2/components/Panel.d.ts +0 -19
- package/lib/QueryBuilderV2/components/Panel.js +0 -88
- package/lib/QueryBuilderV2/components/Panel.js.map +0 -1
- package/lib/QueryBuilderV2/components/QueryVisualization.d.ts +0 -8
- package/lib/QueryBuilderV2/components/QueryVisualization.js +0 -85
- package/lib/QueryBuilderV2/components/QueryVisualization.js.map +0 -1
- package/lib/QueryBuilderV2/hooks/list-mode.d.ts +0 -3
- package/lib/QueryBuilderV2/hooks/list-mode.js +0 -9
- package/lib/QueryBuilderV2/hooks/list-mode.js.map +0 -1
- package/lib/QueryBuilderV2/icons/ArrowIcon.js +0 -30
- package/lib/QueryBuilderV2/icons/ArrowIcon.js.map +0 -1
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { useEffect, useRef, useState } from 'react';
|
|
2
|
+
export function useDimensionValues({ cubeApi, mutexObj, dimension, skip, }) {
|
|
3
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
4
|
+
const [suggestions, setSuggestions] = useState([]);
|
|
5
|
+
const [error, setError] = useState(null);
|
|
6
|
+
const requestIdRef = useRef();
|
|
7
|
+
const mutexRef = useRef({});
|
|
8
|
+
mutexObj = mutexObj ?? mutexRef.current;
|
|
9
|
+
function loadSuggestions() {
|
|
10
|
+
setError(null);
|
|
11
|
+
if (!dimension || !cubeApi || dimension === requestIdRef.current) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
requestIdRef.current = dimension;
|
|
15
|
+
setIsLoading(true);
|
|
16
|
+
cubeApi
|
|
17
|
+
.load({
|
|
18
|
+
dimensions: [dimension],
|
|
19
|
+
}, {
|
|
20
|
+
mutexObj,
|
|
21
|
+
mutexKey: `dimension-values:${dimension}`,
|
|
22
|
+
})
|
|
23
|
+
.then((resultSet) => {
|
|
24
|
+
if (dimension !== requestIdRef.current) {
|
|
25
|
+
return; // Ignore outdated responses
|
|
26
|
+
}
|
|
27
|
+
// @ts-ignore
|
|
28
|
+
const data = resultSet.loadResponse?.results?.[0]?.data || [];
|
|
29
|
+
const dimensionValues = data.map((r) => r[dimension]).filter(Boolean); // Filter out undefined or null values
|
|
30
|
+
if (dimensionValues.join() !== suggestions.join()) {
|
|
31
|
+
setSuggestions(dimensionValues);
|
|
32
|
+
}
|
|
33
|
+
setIsLoading(false);
|
|
34
|
+
})
|
|
35
|
+
.catch((e) => {
|
|
36
|
+
if (dimension !== requestIdRef.current) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
setError(String(e.message || e)); // More specific error handling
|
|
40
|
+
setIsLoading(false);
|
|
41
|
+
requestIdRef.current = undefined;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
useEffect(() => {
|
|
45
|
+
mutexRef.current = {};
|
|
46
|
+
requestIdRef.current = undefined;
|
|
47
|
+
}, [cubeApi]);
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (dimension && !skip) {
|
|
50
|
+
loadSuggestions();
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
setIsLoading(false);
|
|
54
|
+
}
|
|
55
|
+
}, [dimension, cubeApi, skip]);
|
|
56
|
+
return {
|
|
57
|
+
isLoading,
|
|
58
|
+
suggestions,
|
|
59
|
+
error,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=dimension-values.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimension-values.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/dimension-values.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AASpD,MAAM,UAAU,kBAAkB,CAAC,EACjC,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAI,GACqB;IACzB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,MAAM,EAAU,CAAC;IACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IAE5B,QAAQ,GAAG,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC;IAExC,SAAS,eAAe;QACtB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,IAAI,SAAS,KAAK,YAAY,CAAC,OAAO,EAAE;YAChE,OAAO;SACR;QAED,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;QAEjC,YAAY,CAAC,IAAI,CAAC,CAAC;QAEnB,OAAO;aACJ,IAAI,CACH;YACE,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,EACD;YACE,QAAQ;YACR,QAAQ,EAAE,oBAAoB,SAAS,EAAE;SAC1C,CACF;aACA,IAAI,CAAC,CAAC,SAAoB,EAAE,EAAE;YAC7B,IAAI,SAAS,KAAK,YAAY,CAAC,OAAO,EAAE;gBACtC,OAAO,CAAC,4BAA4B;aACrC;YAED,aAAa;YACb,MAAM,IAAI,GAAG,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;YAC9D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,sCAAsC;YAElH,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,WAAW,CAAC,IAAI,EAAE,EAAE;gBACjD,cAAc,CAAC,eAAe,CAAC,CAAC;aACjC;YAED,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,IAAI,SAAS,KAAK,YAAY,CAAC,OAAO,EAAE;gBACtC,OAAO;aACR;YAED,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,+BAA+B;YACjE,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;QACnC,CAAC,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;QACtB,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IACnC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,IAAI,CAAC,IAAI,EAAE;YACtB,eAAe,EAAE,CAAC;SACnB;aAAM;YACL,YAAY,CAAC,KAAK,CAAC,CAAC;SACrB;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAE/B,OAAO;QACL,SAAS;QACT,WAAW;QACX,KAAK;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { MemberViewType } from '../types';
|
|
2
|
+
import { Cube } from '../types';
|
|
3
|
+
export declare function useFilteredCubes(filterString: string, cubes: Cube[], memberViewType: MemberViewType): {
|
|
3
4
|
isFiltered: boolean;
|
|
4
5
|
cubes: Cube[];
|
|
5
6
|
membersByCube: Record<string, {
|
|
6
7
|
dimensions: string[];
|
|
7
8
|
measures: string[];
|
|
9
|
+
segments: string[];
|
|
10
|
+
folders: string[];
|
|
11
|
+
hierarchies: string[];
|
|
8
12
|
}>;
|
|
9
13
|
members: string[];
|
|
10
14
|
};
|
|
@@ -1,28 +1,46 @@
|
|
|
1
|
+
import { getMemberSearchName } from '../utils';
|
|
1
2
|
import { useRawFilter } from './raw-filter';
|
|
2
|
-
export function useFilteredCubes(filterString, cubes) {
|
|
3
|
+
export function useFilteredCubes(filterString, cubes, memberViewType) {
|
|
3
4
|
// Search filters logic
|
|
4
5
|
const rawFilterFn = useRawFilter();
|
|
6
|
+
const cubesMap = cubes.reduce((acc, cube) => {
|
|
7
|
+
acc[cube.name] = cube;
|
|
8
|
+
return acc;
|
|
9
|
+
}, {});
|
|
5
10
|
const filterMemberFn = (items) => {
|
|
6
11
|
return items.filter((item) => {
|
|
7
|
-
|
|
12
|
+
const cubeName = item.name.split('.')[0];
|
|
13
|
+
const cube = cubesMap[cubeName];
|
|
14
|
+
const cubeId = cube ? getMemberSearchName(cube, memberViewType) : cubeName;
|
|
15
|
+
const itemId = getMemberSearchName(item, memberViewType);
|
|
16
|
+
return (rawFilterFn(cubeId ?? item.name, filterString) ||
|
|
17
|
+
(itemId && rawFilterFn(itemId, filterString)));
|
|
8
18
|
});
|
|
9
19
|
};
|
|
10
20
|
const members = [];
|
|
11
21
|
const membersByCube = cubes.reduce((acc, cube) => {
|
|
12
22
|
acc[cube.name] = {
|
|
13
|
-
|
|
14
|
-
|
|
23
|
+
// search by member names
|
|
24
|
+
measures: filterMemberFn(cube.measures ?? []).map((m) => m.name),
|
|
25
|
+
dimensions: filterMemberFn(cube.dimensions ?? []).map((m) => m.name),
|
|
26
|
+
segments: filterMemberFn(cube.segments ?? []).map((m) => m.name),
|
|
27
|
+
// search by folder names
|
|
28
|
+
folders: filterMemberFn(cube.folders ?? []).map((m) => m.name),
|
|
29
|
+
// search by hierarchy names
|
|
30
|
+
hierarchies: filterMemberFn(cube.hierarchies ?? []).map((m) => m.name),
|
|
15
31
|
};
|
|
16
|
-
members.push(...acc[cube.name].dimensions, ...acc[cube.name].measures);
|
|
32
|
+
members.push(...acc[cube.name].dimensions, ...acc[cube.name].measures, ...acc[cube.name].segments);
|
|
17
33
|
return acc;
|
|
18
34
|
}, {});
|
|
19
35
|
return {
|
|
20
36
|
isFiltered: !!filterString,
|
|
21
37
|
cubes: cubes.filter((item) => {
|
|
22
|
-
return (rawFilterFn(item
|
|
23
|
-
rawFilterFn(item.name, filterString) ||
|
|
38
|
+
return (rawFilterFn(getMemberSearchName(item, memberViewType), filterString) ||
|
|
24
39
|
membersByCube[item.name].dimensions.length ||
|
|
25
|
-
membersByCube[item.name].measures.length
|
|
40
|
+
membersByCube[item.name].measures.length ||
|
|
41
|
+
membersByCube[item.name].segments.length ||
|
|
42
|
+
membersByCube[item.name].folders.length ||
|
|
43
|
+
membersByCube[item.name].hierarchies.length);
|
|
26
44
|
}),
|
|
27
45
|
membersByCube,
|
|
28
46
|
members,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filtered-cubes.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/filtered-cubes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"filtered-cubes.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/filtered-cubes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { TCubeDimension, TCubeMeasure, TCubeSegment } from '@cubejs-client/core';
|
|
2
|
+
import { MemberViewType, TCubeFolder, TCubeHierarchy } from '../types';
|
|
2
3
|
export declare function useFilteredMembers(filterString: string, members: {
|
|
3
4
|
dimensions: TCubeDimension[];
|
|
4
5
|
measures: TCubeMeasure[];
|
|
5
6
|
segments: TCubeSegment[];
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
folders: TCubeFolder[];
|
|
8
|
+
hierarchies: TCubeHierarchy[];
|
|
9
|
+
}, memberViewType?: MemberViewType): {
|
|
10
|
+
measures: (TCubeMeasure | TCubeDimension | TCubeSegment | TCubeFolder | TCubeHierarchy)[];
|
|
11
|
+
dimensions: (TCubeMeasure | TCubeDimension | TCubeSegment | TCubeFolder | TCubeHierarchy)[];
|
|
12
|
+
segments: (TCubeMeasure | TCubeDimension | TCubeSegment | TCubeFolder | TCubeHierarchy)[];
|
|
13
|
+
folders: (TCubeMeasure | TCubeDimension | TCubeSegment | TCubeFolder | TCubeHierarchy)[];
|
|
14
|
+
hierarchies: TCubeHierarchy[];
|
|
15
|
+
members: (TCubeSegment | TCubeFolder | TCubeHierarchy)[];
|
|
10
16
|
};
|
|
@@ -1,36 +1,73 @@
|
|
|
1
|
+
import { getMemberSearchName } from '../utils/get-member-search-name';
|
|
1
2
|
import { useEvent } from './event';
|
|
2
3
|
import { useRawFilter } from './raw-filter';
|
|
3
|
-
export function useFilteredMembers(filterString, members) {
|
|
4
|
+
export function useFilteredMembers(filterString, members, memberViewType = 'name') {
|
|
4
5
|
// Search filters logic
|
|
5
6
|
const rawFilterFn = useRawFilter();
|
|
6
|
-
const { dimensions, measures, segments } = members;
|
|
7
|
+
const { dimensions, measures, segments, folders, hierarchies } = members;
|
|
8
|
+
const sortFn = (a, b) => {
|
|
9
|
+
const aName = getMemberSearchName(a, memberViewType);
|
|
10
|
+
const bName = getMemberSearchName(b, memberViewType);
|
|
11
|
+
return aName.localeCompare(bName);
|
|
12
|
+
};
|
|
7
13
|
const filterMemberFn = useEvent((items) => {
|
|
8
14
|
return items.filter((item) => {
|
|
9
|
-
|
|
15
|
+
const itemId = getMemberSearchName(item, memberViewType);
|
|
16
|
+
return itemId && rawFilterFn(itemId, filterString);
|
|
10
17
|
});
|
|
11
18
|
});
|
|
12
19
|
if (!filterString) {
|
|
13
20
|
return {
|
|
14
|
-
measures: measures.sort(
|
|
15
|
-
dimensions: dimensions.sort(
|
|
16
|
-
segments: segments.sort(
|
|
21
|
+
measures: measures.sort(sortFn),
|
|
22
|
+
dimensions: dimensions.sort(sortFn),
|
|
23
|
+
segments: segments.sort(sortFn),
|
|
24
|
+
folders: folders.sort(sortFn),
|
|
25
|
+
hierarchies: hierarchies.sort(sortFn),
|
|
26
|
+
members: [...dimensions, ...measures, ...segments],
|
|
17
27
|
};
|
|
18
28
|
}
|
|
19
|
-
// Filtered
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
// Filtered members
|
|
30
|
+
const filteredMeasures = measures.length ? filterMemberFn(measures).sort(sortFn) : [];
|
|
31
|
+
const filteredDimensions = dimensions.length ? filterMemberFn(dimensions).sort(sortFn) : [];
|
|
32
|
+
const filteredSegments = segments.length ? filterMemberFn(segments).sort(sortFn) : [];
|
|
33
|
+
const filteredFolders = folders.length ? filterMemberFn(folders).sort(sortFn) : [];
|
|
34
|
+
const filteredHierarchies = (hierarchies.length ? filterMemberFn(hierarchies).sort(sortFn) : []);
|
|
35
|
+
const filteredMeasuresNames = filteredMeasures.map((measure) => measure.name);
|
|
36
|
+
const filteredSegmentNames = filteredSegments.map((segment) => segment.name);
|
|
37
|
+
const filteredFolderNames = filteredFolders.map((folder) => folder.name);
|
|
38
|
+
const filteredDimensionNames = filteredDimensions.map((dimension) => dimension.name);
|
|
39
|
+
const filteredHierarchyNames = filteredHierarchies.map((hierarchy) => hierarchy.name);
|
|
40
|
+
// Include hierarchies with filtered members inside.
|
|
41
|
+
// Hierarchy can only include dimensions.
|
|
42
|
+
hierarchies.forEach((hierarchy) => {
|
|
43
|
+
if (filteredHierarchyNames.includes(hierarchy.name)) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (hierarchy.levels.find((memberName) => filteredDimensionNames.includes(memberName))) {
|
|
47
|
+
filteredHierarchies.push(hierarchy);
|
|
48
|
+
filteredHierarchyNames.push(hierarchy.name);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
// Include folders with filtered members inside.
|
|
52
|
+
// Folders can include dimensions, measures, segments and hierarchies.
|
|
53
|
+
folders.forEach((folder) => {
|
|
54
|
+
if (filteredFolderNames.includes(folder.name)) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
if (folder.members.find((memberName) => filteredDimensionNames.includes(memberName) ||
|
|
58
|
+
filteredMeasuresNames.includes(memberName) ||
|
|
59
|
+
filteredSegmentNames.includes(memberName) ||
|
|
60
|
+
filteredHierarchyNames.includes(memberName))) {
|
|
61
|
+
filteredFolders.push(folder);
|
|
62
|
+
}
|
|
63
|
+
});
|
|
30
64
|
return {
|
|
31
|
-
measures:
|
|
32
|
-
dimensions:
|
|
33
|
-
segments:
|
|
65
|
+
measures: filteredMeasures,
|
|
66
|
+
dimensions: filteredDimensions,
|
|
67
|
+
segments: filteredSegments,
|
|
68
|
+
folders: filteredFolders,
|
|
69
|
+
hierarchies: filteredHierarchies,
|
|
70
|
+
members: [...filteredDimensions, ...filteredMeasures, ...filteredSegments],
|
|
34
71
|
};
|
|
35
72
|
}
|
|
36
73
|
//# sourceMappingURL=filtered-members.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filtered-members.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/filtered-members.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"filtered-members.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/filtered-members.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { RefObject } from 'react';
|
|
2
|
-
export declare function useHasOverflow(ref
|
|
2
|
+
export declare function useHasOverflow(ref?: RefObject<HTMLDivElement>): boolean;
|
|
@@ -7,6 +7,9 @@ export function useHasOverflow(ref) {
|
|
|
7
7
|
const hasOverflow = (element?.scrollWidth ?? 0) > (element?.clientWidth ?? 0);
|
|
8
8
|
setHasOverflow(hasOverflow);
|
|
9
9
|
};
|
|
10
|
+
if (!ref) {
|
|
11
|
+
setHasOverflow(false);
|
|
12
|
+
}
|
|
10
13
|
element?.addEventListener('mouseenter', handler);
|
|
11
14
|
return () => {
|
|
12
15
|
element?.removeEventListener('mouseenter', handler);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"has-overflow.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/has-overflow.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,UAAU,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"has-overflow.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/has-overflow.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,UAAU,cAAc,CAAC,GAA+B;IAC5D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAG,GAAG,EAAE,OAAO,CAAC;QAC7B,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,IAAI,CAAC,CAAC,CAAC;YAE9E,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9B,CAAC,CAAC;QAEF,IAAI,CAAC,GAAG,EAAE;YACR,cAAc,CAAC,KAAK,CAAC,CAAC;SACvB;QAED,OAAO,EAAE,gBAAgB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAEjD,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;IAEnB,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -2,7 +2,6 @@ export * from './event';
|
|
|
2
2
|
export * from './auto-size';
|
|
3
3
|
export * from './filtered-cubes';
|
|
4
4
|
export * from './filtered-members';
|
|
5
|
-
export * from './list-mode';
|
|
6
5
|
export * from './raw-filter';
|
|
7
6
|
export * from './query-builder';
|
|
8
7
|
export * from './has-overflow';
|
|
@@ -21,3 +20,5 @@ export * from './server-core-version-gte';
|
|
|
21
20
|
export * from './outside-focus';
|
|
22
21
|
export * from './is-first-render';
|
|
23
22
|
export * from './uniq-id';
|
|
23
|
+
export * from './shown-member-name';
|
|
24
|
+
export * from './dimension-values';
|
|
@@ -2,7 +2,6 @@ export * from './event';
|
|
|
2
2
|
export * from './auto-size';
|
|
3
3
|
export * from './filtered-cubes';
|
|
4
4
|
export * from './filtered-members';
|
|
5
|
-
export * from './list-mode';
|
|
6
5
|
export * from './raw-filter';
|
|
7
6
|
export * from './query-builder';
|
|
8
7
|
export * from './has-overflow';
|
|
@@ -21,4 +20,6 @@ export * from './server-core-version-gte';
|
|
|
21
20
|
export * from './outside-focus';
|
|
22
21
|
export * from './is-first-render';
|
|
23
22
|
export * from './uniq-id';
|
|
23
|
+
export * from './shown-member-name';
|
|
24
|
+
export * from './dimension-values';
|
|
24
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
|
|
@@ -70,7 +70,7 @@ export function useLocalStorage(key, defaultValue) {
|
|
|
70
70
|
setValue(getter);
|
|
71
71
|
storage.subscribe(key, (value) => {
|
|
72
72
|
// @ts-ignore
|
|
73
|
-
setValue(typeof defaultValue === 'function' ? defaultValue(value) : value ?? defaultValue);
|
|
73
|
+
setValue(typeof defaultValue === 'function' ? defaultValue(value) : (value ?? defaultValue));
|
|
74
74
|
});
|
|
75
75
|
return () => {
|
|
76
76
|
storage.unsubscribe(key, setValue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-storage.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/local-storage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"local-storage.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/hooks/local-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,OAAO;IAGhC;QAFA,YAAO,GAAG,IAAI,EAAE,CAAC;QAGf,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3C,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,EAAE;gBACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAE3B,OAAO;aACR;YAED,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE;gBACrC,IAAI,KAAK,CAAC;gBAEV,IAAI;oBACF,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;iBAC1C;gBAAC,OAAO,KAAU,EAAE;oBACnB,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;iBACxB;gBACD,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAC1C;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,GAAW,EAAE,KAAW;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,SAAS,CAAC,GAAW,EAAE,QAAa;QAClC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,WAAW,CAAC,GAAW,EAAE,QAAa;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,CAAC,QAAa;QACnB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,kBAAkB,CAAC,QAAa;QAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,KAAU;QAC7B,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SAC9B;aAAM;YACL,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACnC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SACjC;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,YAAiB;QACpC,IAAI;YACF,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEvE,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;gBACtC,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;aAC7B;YAED,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;SACrD;QAAC,OAAO,KAAU,EAAE;YACnB,OAAO,OAAO,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;SAC/E;IACH,CAAC;IAED,UAAU,CAAC,GAAW;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC/B,CAAC;CACF,CAAC,EAAE,CAAC;AAEL,MAAM,UAAU,eAAe,CAC7B,GAAW,EACX,YAA0C;IAE1C,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAExD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAI,MAAM,CAAC,CAAC;IAE9C,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEjB,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,KAAQ,EAAE,EAAE;YAClC,aAAa;YACb,QAAQ,CAAC,OAAO,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,YAAY,CAAC,CAAC,CAAC;QAC/F,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,EAAE;QAChC,aAAa;QACb,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE7B,OAAO,GAAG,EAAE;YACV,OAAO,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,SAAS,OAAO,CAAC,IAAO;YACtB,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAE3B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,SAAS,UAAU;YACjB,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AACnB,CAAC"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
/// <reference path="../../../src/base-types.d.ts" />
|
|
2
2
|
/// <reference types="react" />
|
|
3
|
-
import { ChartType,
|
|
4
|
-
import { CubeStats } from '../types';
|
|
5
|
-
interface
|
|
3
|
+
import { ChartType, CubeApi, DateRange, DryRunResponse, Filter, Meta, PivotConfig, ProgressResult, Query, QueryOrder, ResultSet, SqlQuery, TCubeDimension, TCubeMeasure, TCubeSegment, TimeDimensionGranularity, TQueryOrderObject } from '@cubejs-client/core';
|
|
4
|
+
import { CubeStats, MissingMember, WithUndefinedValues, MemberViewType, Cube } from '../types';
|
|
5
|
+
interface UseQueryBuilderProps {
|
|
6
|
+
displayPrivateItems?: boolean;
|
|
6
7
|
defaultQuery?: Query;
|
|
7
8
|
defaultChartType?: ChartType;
|
|
8
9
|
defaultPivotConfig?: PivotConfig;
|
|
9
10
|
schemaVersion?: number;
|
|
10
11
|
cubeApi?: CubeApi;
|
|
12
|
+
memberViewType?: MemberViewType;
|
|
11
13
|
tracking?: {
|
|
12
14
|
event: (name: string, props?: Record<string, any>) => void;
|
|
13
15
|
};
|
|
@@ -30,9 +32,10 @@ type MemberUpdater = {
|
|
|
30
32
|
add(name: string): boolean;
|
|
31
33
|
remove(name: string): boolean;
|
|
32
34
|
toggle(name: string): void;
|
|
35
|
+
clear(): void;
|
|
33
36
|
list: string[];
|
|
34
37
|
};
|
|
35
|
-
export declare function useQueryBuilder(props:
|
|
38
|
+
export declare function useQueryBuilder(props: UseQueryBuilderProps): {
|
|
36
39
|
grouping: {
|
|
37
40
|
add(name: string, granularity: TimeDimensionGranularity): boolean;
|
|
38
41
|
remove(name: string): boolean;
|
|
@@ -40,11 +43,13 @@ export declare function useQueryBuilder(props: QueryBuilderProps): {
|
|
|
40
43
|
get(name: string): string | undefined;
|
|
41
44
|
getAll(): import("@cubejs-client/core").TimeDimension[];
|
|
42
45
|
reorder(names: string[]): void;
|
|
46
|
+
clear(): void;
|
|
43
47
|
};
|
|
44
48
|
dateRanges: {
|
|
45
49
|
set(name: string, dateRange?: DateRange): boolean;
|
|
46
50
|
remove(name: string): boolean;
|
|
47
51
|
readonly list: string[];
|
|
52
|
+
clear(): void;
|
|
48
53
|
};
|
|
49
54
|
order: {
|
|
50
55
|
set(name: string, order: QueryOrder): boolean;
|
|
@@ -53,6 +58,7 @@ export declare function useQueryBuilder(props: QueryBuilderProps): {
|
|
|
53
58
|
readonly map: TQueryOrderObject;
|
|
54
59
|
setOrder(names: string[]): void;
|
|
55
60
|
getOrder(): string[];
|
|
61
|
+
clear(): void;
|
|
56
62
|
};
|
|
57
63
|
filters: {
|
|
58
64
|
add(filter: Filter): boolean;
|
|
@@ -60,11 +66,11 @@ export declare function useQueryBuilder(props: QueryBuilderProps): {
|
|
|
60
66
|
removeByMember(name: string): boolean;
|
|
61
67
|
update(index: number, filter: Filter): boolean;
|
|
62
68
|
readonly list: Filter[];
|
|
69
|
+
clear(): void;
|
|
63
70
|
};
|
|
64
71
|
chartType: ChartType;
|
|
72
|
+
hasPrivateMembers: boolean;
|
|
65
73
|
setChartType: import("react").Dispatch<import("react").SetStateAction<ChartType>>;
|
|
66
|
-
usedCubes: string[];
|
|
67
|
-
usedMembers: string[];
|
|
68
74
|
isCubeJoined: (name: string) => boolean;
|
|
69
75
|
isMemberJoined: (name: string) => boolean;
|
|
70
76
|
isCubeUsed: (name: string) => boolean;
|
|
@@ -72,21 +78,23 @@ export declare function useQueryBuilder(props: QueryBuilderProps): {
|
|
|
72
78
|
isApiTokenChanged: boolean;
|
|
73
79
|
isDataModelChanged: boolean;
|
|
74
80
|
isResultOutdated: boolean;
|
|
75
|
-
queryHash: string;
|
|
76
81
|
cubeApi: CubeApi | undefined;
|
|
77
|
-
|
|
82
|
+
mutexObj: {};
|
|
78
83
|
selectedCube: Cube | null;
|
|
79
84
|
selectCube: (name: string | null) => void;
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
85
|
+
totalRows: number | null | undefined;
|
|
86
|
+
dimensions: MemberUpdater;
|
|
87
|
+
measures: MemberUpdater;
|
|
88
|
+
segments: MemberUpdater;
|
|
89
|
+
memberViewType: MemberViewType;
|
|
83
90
|
query: Query;
|
|
91
|
+
queryHash: string;
|
|
84
92
|
executedQuery: Query | null;
|
|
85
93
|
runQuery: () => Promise<void>;
|
|
86
94
|
stopQuery: () => void;
|
|
87
95
|
clearQuery: () => void;
|
|
88
96
|
setQuery: (query: Query) => void;
|
|
89
|
-
updateQuery: (queryPart: Query | ((query: Query) => Query | void)) => void;
|
|
97
|
+
updateQuery: (queryPart: Query | ((query: Query) => WithUndefinedValues<Query> | void)) => void;
|
|
90
98
|
isVerifying: boolean;
|
|
91
99
|
verificationError: string | null;
|
|
92
100
|
isQueryTouched: boolean;
|
|
@@ -97,7 +105,7 @@ export declare function useQueryBuilder(props: QueryBuilderProps): {
|
|
|
97
105
|
isMetaLoading: boolean;
|
|
98
106
|
metaError: null;
|
|
99
107
|
richMetaError: null;
|
|
100
|
-
loadMeta: () => void;
|
|
108
|
+
loadMeta: () => Promise<void> | undefined;
|
|
101
109
|
queryStats: Record<string, CubeStats>;
|
|
102
110
|
pivotConfig: PivotConfig;
|
|
103
111
|
updatePivotConfig: {
|
|
@@ -117,5 +125,20 @@ export declare function useQueryBuilder(props: QueryBuilderProps): {
|
|
|
117
125
|
cubes: Cube[];
|
|
118
126
|
members: CubeMembers;
|
|
119
127
|
joinableCubes: Cube[];
|
|
128
|
+
joinableMembers: {
|
|
129
|
+
dimensions: Record<string, TCubeDimension>;
|
|
130
|
+
measures: Record<string, TCubeMeasure>;
|
|
131
|
+
segments: Record<string, TCubeSegment>;
|
|
132
|
+
};
|
|
133
|
+
usedCubes: string[];
|
|
134
|
+
usedMembers: string[];
|
|
135
|
+
usedGranularities: {
|
|
136
|
+
dimension: string;
|
|
137
|
+
granularities: string[];
|
|
138
|
+
}[];
|
|
139
|
+
usedMembersInGrouping: string[];
|
|
140
|
+
usedMembersInFilters: string[];
|
|
141
|
+
missingCubes: string[];
|
|
142
|
+
missingMembers: MissingMember[];
|
|
120
143
|
};
|
|
121
144
|
export {};
|