@cubejs-client/playground 1.1.6 → 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-CH7p8ya-.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 +8 -6
- 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,54 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Button, Menu, MenuTrigger, MoreIcon, tasty } from '@cube-dev/ui-kit';
|
|
3
|
+
import { useMemo } from 'react';
|
|
4
|
+
const OptionsButton = tasty(Button, {
|
|
5
|
+
qa: 'FilterOptionsButton',
|
|
6
|
+
'aria-label': 'Filter options',
|
|
7
|
+
size: 'small',
|
|
8
|
+
type: 'secondary',
|
|
9
|
+
icon: _jsx(MoreIcon, {}),
|
|
10
|
+
styles: {
|
|
11
|
+
width: '3x',
|
|
12
|
+
},
|
|
13
|
+
});
|
|
14
|
+
export function FilterOptionsButton({ type, disableKeys, onAction }) {
|
|
15
|
+
const items = useMemo(() => {
|
|
16
|
+
const items = [];
|
|
17
|
+
if (type === 'or' || type === 'and') {
|
|
18
|
+
if (type === 'and') {
|
|
19
|
+
items.push({
|
|
20
|
+
key: 'convert',
|
|
21
|
+
label: 'Convert to OR Branch',
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
if (type === 'or') {
|
|
25
|
+
items.push({
|
|
26
|
+
key: 'convert',
|
|
27
|
+
label: 'Convert to AND Branch',
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
items.push({
|
|
31
|
+
key: 'unwrap',
|
|
32
|
+
label: 'Unwrap Branch',
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
if (type === 'member' || type === 'or' || type === 'and') {
|
|
36
|
+
items.push({
|
|
37
|
+
key: 'wrapWithOr',
|
|
38
|
+
label: 'Wrap with OR Branch',
|
|
39
|
+
});
|
|
40
|
+
items.push({
|
|
41
|
+
key: 'wrapWithAnd',
|
|
42
|
+
label: 'Wrap with AND Branch',
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
items.push({
|
|
46
|
+
key: 'remove',
|
|
47
|
+
label: 'Remove',
|
|
48
|
+
color: '#danger',
|
|
49
|
+
});
|
|
50
|
+
return items.filter((item) => !disableKeys?.includes(item.key));
|
|
51
|
+
}, [type, disableKeys]);
|
|
52
|
+
return (_jsxs(MenuTrigger, { children: [_jsx(OptionsButton, {}), _jsx(Menu, { onAction: (key) => onAction(key), children: items.map((item) => (_jsx(Menu.Item, { color: item.color, children: item.label }, item.key))) })] }));
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=FilterOptionsButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterOptionsButton.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/FilterOptionsButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,EAAE;IAClC,EAAE,EAAE,qBAAqB;IACzB,YAAY,EAAE,gBAAgB;IAC9B,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,KAAC,QAAQ,KAAG;IAClB,MAAM,EAAE;QACN,KAAK,EAAE,IAAI;KACZ;CACF,CAAC,CAAC;AAWH,MAAM,UAAU,mBAAmB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAA4B;IAC3F,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;QACzB,MAAM,KAAK,GAAqD,EAAE,CAAC;QAEnE,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE;YACnC,IAAI,IAAI,KAAK,KAAK,EAAE;gBAClB,KAAK,CAAC,IAAI,CAAC;oBACT,GAAG,EAAE,SAAS;oBACd,KAAK,EAAE,sBAAsB;iBAC9B,CAAC,CAAC;aACJ;YAED,IAAI,IAAI,KAAK,IAAI,EAAE;gBACjB,KAAK,CAAC,IAAI,CAAC;oBACT,GAAG,EAAE,SAAS;oBACd,KAAK,EAAE,uBAAuB;iBAC/B,CAAC,CAAC;aACJ;YAED,KAAK,CAAC,IAAI,CAAC;gBACT,GAAG,EAAE,QAAQ;gBACb,KAAK,EAAE,eAAe;aACvB,CAAC,CAAC;SACJ;QAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE;YACxD,KAAK,CAAC,IAAI,CAAC;gBACT,GAAG,EAAE,YAAY;gBACjB,KAAK,EAAE,qBAAqB;aAC7B,CAAC,CAAC;YAEH,KAAK,CAAC,IAAI,CAAC;gBACT,GAAG,EAAE,aAAa;gBAClB,KAAK,EAAE,sBAAsB;aAC9B,CAAC,CAAC;SACJ;QAED,KAAK,CAAC,IAAI,CAAC;YACT,GAAG,EAAE,QAAQ;YACb,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,GAA0B,CAAC,CAAC,CAAC;IACzF,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;IAExB,OAAO,CACL,MAAC,WAAW,eACV,KAAC,aAAa,KAAG,EACjB,KAAC,IAAI,IAAC,QAAQ,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAA0B,CAAC,YAC/D,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,KAAC,IAAI,CAAC,IAAI,IAAgB,KAAK,EAAE,IAAI,CAAC,KAAK,YACxC,IAAI,CAAC,KAAK,IADG,IAAI,CAAC,GAAG,CAEZ,CACb,CAAC,GACG,IACK,CACf,CAAC;AACJ,CAAC"}
|
|
@@ -9,9 +9,17 @@ const FilteredPartElement = tasty({
|
|
|
9
9
|
export function FilteredLabel({ text, filter }) {
|
|
10
10
|
const lowerText = text.toLowerCase();
|
|
11
11
|
filter = filter.toLowerCase();
|
|
12
|
-
|
|
12
|
+
let index = lowerText.indexOf(filter);
|
|
13
13
|
if (index === -1) {
|
|
14
|
-
|
|
14
|
+
filter = filter.replace(/\s/g, '_');
|
|
15
|
+
index = lowerText.indexOf(filter);
|
|
16
|
+
if (index === -1) {
|
|
17
|
+
filter = filter.replace(/_/g, ' ');
|
|
18
|
+
index = lowerText.indexOf(filter);
|
|
19
|
+
if (index === -1) {
|
|
20
|
+
return _jsx(_Fragment, { children: text });
|
|
21
|
+
}
|
|
22
|
+
}
|
|
15
23
|
}
|
|
16
24
|
const startPart = text.slice(0, index);
|
|
17
25
|
const filterPart = text.slice(index, index + filter.length);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilteredLabel.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/FilteredLabel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,MAAM,mBAAmB,GAAG,KAAK,CAAC;IAChC,MAAM,EAAE;QACN,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,YAAY;KACnB;CACF,CAAC,CAAC;AAOH,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAsB;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAE9B,
|
|
1
|
+
{"version":3,"file":"FilteredLabel.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/FilteredLabel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,MAAM,mBAAmB,GAAG,KAAK,CAAC;IAChC,MAAM,EAAE;QACN,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,YAAY;KACnB;CACF,CAAC,CAAC;AAOH,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAsB;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAE9B,IAAI,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;QAChB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAEpC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAEnC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAElC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBAChB,OAAO,4BAAG,IAAI,GAAI,CAAC;aACpB;SACF;KACF;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAElD,OAAO,CACL,8BACG,SAAS,EACV,KAAC,mBAAmB,cAAE,UAAU,GAAuB,EACtD,OAAO,IACP,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
2
|
+
export interface FolderProps {
|
|
3
|
+
name: string;
|
|
4
|
+
isOpen?: boolean;
|
|
5
|
+
onToggle: (isOpen: boolean, name: string) => void;
|
|
6
|
+
filterString?: string;
|
|
7
|
+
children?: ReactElement[];
|
|
8
|
+
}
|
|
9
|
+
export declare function Folder(props: FolderProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Button, Text, tasty, FolderOpenFilledIcon, FolderFilledIcon } from '@cube-dev/ui-kit';
|
|
3
|
+
import { FilteredLabel } from './FilteredLabel';
|
|
4
|
+
const OpenButton = tasty(Button, {
|
|
5
|
+
size: 'small',
|
|
6
|
+
type: 'neutral',
|
|
7
|
+
styles: {
|
|
8
|
+
gridColumns: 'auto auto 1fr',
|
|
9
|
+
placeContent: 'center start',
|
|
10
|
+
placeItems: 'center start',
|
|
11
|
+
color: '#dark',
|
|
12
|
+
},
|
|
13
|
+
});
|
|
14
|
+
const FolderElement = tasty({
|
|
15
|
+
styles: {
|
|
16
|
+
display: 'flex',
|
|
17
|
+
flow: 'column',
|
|
18
|
+
gap: '1bw',
|
|
19
|
+
Contents: {
|
|
20
|
+
display: 'flex',
|
|
21
|
+
hide: {
|
|
22
|
+
'': false,
|
|
23
|
+
empty: true,
|
|
24
|
+
},
|
|
25
|
+
position: 'relative',
|
|
26
|
+
margin: '4x left',
|
|
27
|
+
flow: 'column',
|
|
28
|
+
gap: '1bw',
|
|
29
|
+
padding: '0 0 .5x 0',
|
|
30
|
+
},
|
|
31
|
+
FolderLine: {
|
|
32
|
+
position: 'absolute',
|
|
33
|
+
inset: '0 auto .5x (1bw - 2x)',
|
|
34
|
+
fill: '#border-opaque',
|
|
35
|
+
width: '.25x',
|
|
36
|
+
radius: true,
|
|
37
|
+
},
|
|
38
|
+
Extra: {
|
|
39
|
+
display: 'grid',
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
export function Folder(props) {
|
|
44
|
+
const { name, isOpen, onToggle, filterString, children } = props;
|
|
45
|
+
return (_jsxs(FolderElement, { mods: { open: isOpen, empty: !children || !children?.length }, children: [_jsx(OpenButton, { icon: isOpen ? (_jsx(FolderOpenFilledIcon, { style: { color: 'var(--dark-03-color)' } })) : (_jsx(FolderFilledIcon, { style: { color: 'var(--dark-03-color)' } })), onPress: () => onToggle(!isOpen, name), children: _jsx(Text, { ellipsis: true, color: "#dark-02", children: filterString ? _jsx(FilteredLabel, { text: name, filter: filterString }) : name }) }), _jsxs("div", { "data-element": "Contents", children: [children, _jsx("div", { "data-element": "FolderLine" })] })] }));
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=Folder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Folder.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/Folder.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAG/F,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAUhD,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,EAAE;IAC/B,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,SAAS;IACf,MAAM,EAAE;QACN,WAAW,EAAE,eAAe;QAC5B,YAAY,EAAE,cAAc;QAC5B,UAAU,EAAE,cAAc;QAC1B,KAAK,EAAE,OAAO;KACf;CACF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,KAAK,CAAC;IAC1B,MAAM,EAAE;QACN,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,QAAQ;QACd,GAAG,EAAE,KAAK;QAEV,QAAQ,EAAE;YACR,OAAO,EAAE,MAAM;YACf,IAAI,EAAE;gBACJ,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI;aACZ;YACD,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,KAAK;YACV,OAAO,EAAE,WAAW;SACrB;QAED,UAAU,EAAE;YACV,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,gBAAgB;YACtB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,IAAI;SACb;QAED,KAAK,EAAE;YACL,OAAO,EAAE,MAAM;SAChB;KACF;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEjE,OAAO,CACL,MAAC,aAAa,IAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,aAC1E,KAAC,UAAU,IACT,IAAI,EACF,MAAM,CAAC,CAAC,CAAC,CACP,KAAC,oBAAoB,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,GAAI,CACnE,CAAC,CAAC,CAAC,CACF,KAAC,gBAAgB,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,GAAI,CAC/D,EAEH,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,YAEtC,KAAC,IAAI,IAAC,QAAQ,QAAC,KAAK,EAAC,UAAU,YAC5B,YAAY,CAAC,CAAC,CAAC,KAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,GAAI,CAAC,CAAC,CAAC,IAAI,GACrE,GACI,EACb,+BAAkB,UAAU,aACzB,QAAQ,EACT,8BAAkB,YAAY,GAAG,IAC7B,IACQ,CACjB,CAAC;AACJ,CAAC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import { MemberViewType } from '../types';
|
|
1
2
|
export interface GranularityListMemberProps {
|
|
2
3
|
name: string;
|
|
3
4
|
title?: string;
|
|
4
5
|
isCustom?: boolean;
|
|
5
6
|
isSelected: boolean;
|
|
7
|
+
isMissing?: boolean;
|
|
8
|
+
memberViewType?: MemberViewType;
|
|
6
9
|
onToggle: () => void;
|
|
7
10
|
}
|
|
8
11
|
export declare function GranularityListMember(props: GranularityListMemberProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,20 +1,11 @@
|
|
|
1
|
-
import { jsx as _jsx
|
|
2
|
-
import { CalendarEditIcon, CalendarIcon, Text
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { CalendarEditIcon, CalendarIcon, Text } from '@cube-dev/ui-kit';
|
|
3
3
|
import { useRef } from 'react';
|
|
4
|
-
import {
|
|
5
|
-
import { titleize } from '../utils/index';
|
|
4
|
+
import { InstanceTooltipProvider } from './InstanceTooltipProvider';
|
|
6
5
|
import { ListMemberButton } from './ListMemberButton';
|
|
7
6
|
export function GranularityListMember(props) {
|
|
8
|
-
const { name, title, isCustom, isSelected, onToggle } = props;
|
|
7
|
+
const { name, title, isCustom, isSelected, isMissing, memberViewType = 'name', onToggle } = props;
|
|
9
8
|
const textRef = useRef(null);
|
|
10
|
-
|
|
11
|
-
const isAutoTitle = titleize(name) === title;
|
|
12
|
-
const button = (_jsx(ListMemberButton, { icon: isCustom ? _jsx(CalendarEditIcon, {}) : _jsx(CalendarIcon, {}), "data-member": "timeDimension", isSelected: isSelected, onPress: onToggle, children: _jsx(Text, { ref: textRef, ellipsis: true, children: name }) }));
|
|
13
|
-
if (hasOverflow || (!isAutoTitle && isCustom)) {
|
|
14
|
-
return (_jsx(TooltipProvider, { title: _jsxs(_Fragment, { children: [_jsx(Text, { preset: "t4", children: name }), _jsx("br", {}), _jsx(Text, { preset: "t3", children: title })] }), delay: 1000, placement: "right", children: button }));
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
return button;
|
|
18
|
-
}
|
|
9
|
+
return (_jsx(InstanceTooltipProvider, { name: name, title: title, overflowRef: isCustom ? textRef : undefined, children: _jsx(ListMemberButton, { icon: isCustom ? _jsx(CalendarEditIcon, {}) : _jsx(CalendarIcon, {}), "data-member": "timeDimension", isSelected: isSelected, mods: { missing: isMissing }, onPress: onToggle, children: _jsx(Text, { ref: textRef, ellipsis: true, children: (memberViewType === 'name' ? name : title) ?? name }) }) }));
|
|
19
10
|
}
|
|
20
11
|
//# sourceMappingURL=GranularityListMember.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GranularityListMember.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/GranularityListMember.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"GranularityListMember.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/GranularityListMember.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAYtD,MAAM,UAAU,qBAAqB,CAAC,KAAiC;IACrE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAClG,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,OAAO,CACL,KAAC,uBAAuB,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,YAC5F,KAAC,gBAAgB,IACf,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAC,gBAAgB,KAAG,CAAC,CAAC,CAAC,KAAC,YAAY,KAAG,iBAC5C,eAAe,EAC3B,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAC5B,OAAO,EAAE,QAAQ,YAEjB,KAAC,IAAI,IAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,kBACzB,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,GAC9C,GACU,GACK,CAC3B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Cube } from '@cubejs-client/core';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
import { MemberViewType, TCubeHierarchy } from '../types';
|
|
4
|
+
export interface FolderProps {
|
|
5
|
+
cube: Cube;
|
|
6
|
+
isOpen?: boolean;
|
|
7
|
+
onToggle: (isOpen: boolean, name: string) => void;
|
|
8
|
+
filterString?: string;
|
|
9
|
+
member: TCubeHierarchy;
|
|
10
|
+
memberViewType?: MemberViewType;
|
|
11
|
+
children?: ReactElement[];
|
|
12
|
+
count?: number;
|
|
13
|
+
}
|
|
14
|
+
export declare function HierarchyMember(props: FolderProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Text, tasty, HierarchyIcon, Space } from '@cube-dev/ui-kit';
|
|
3
|
+
import { useRef } from 'react';
|
|
4
|
+
import { useShownMemberName } from '../hooks';
|
|
5
|
+
import { ChevronIcon } from '../icons/ChevronIcon';
|
|
6
|
+
import { InstanceTooltipProvider } from './InstanceTooltipProvider';
|
|
7
|
+
import { ListMemberButton } from './ListMemberButton';
|
|
8
|
+
import { FilteredLabel } from './FilteredLabel';
|
|
9
|
+
const HierarchyElement = tasty({
|
|
10
|
+
styles: {
|
|
11
|
+
display: 'flex',
|
|
12
|
+
flow: 'column',
|
|
13
|
+
gap: '1bw',
|
|
14
|
+
Contents: {
|
|
15
|
+
display: 'flex',
|
|
16
|
+
position: 'relative',
|
|
17
|
+
margin: '4x left',
|
|
18
|
+
flow: 'column',
|
|
19
|
+
gap: '1bw',
|
|
20
|
+
},
|
|
21
|
+
HierarchyLine: {
|
|
22
|
+
position: 'absolute',
|
|
23
|
+
inset: '0 auto 0 (1bw - 2x)',
|
|
24
|
+
fill: '#dimension-active',
|
|
25
|
+
width: '.25x',
|
|
26
|
+
radius: true,
|
|
27
|
+
},
|
|
28
|
+
Extra: {
|
|
29
|
+
display: 'grid',
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
export function HierarchyMember(props) {
|
|
34
|
+
const { isOpen, onToggle, cube, memberViewType, member, filterString, children } = props;
|
|
35
|
+
const textRef = useRef(null);
|
|
36
|
+
const name = member.name.replace(`${cube.name}.`, '').trim();
|
|
37
|
+
const title = 'title' in member ? member.title : undefined;
|
|
38
|
+
const { shownMemberName } = useShownMemberName({
|
|
39
|
+
cubeName: cube.name,
|
|
40
|
+
cubeTitle: 'title' in cube ? cube.title : undefined,
|
|
41
|
+
memberName: name,
|
|
42
|
+
memberTitle: title,
|
|
43
|
+
type: memberViewType,
|
|
44
|
+
});
|
|
45
|
+
return (_jsxs(HierarchyElement, { mods: { open: isOpen }, children: [_jsx(InstanceTooltipProvider, { name: name, fullName: member.name, type: "hierarchy", title: title, overflowRef: textRef, children: _jsx(ListMemberButton, { qa: "MemberButton", qaVal: member.name, icon: _jsx(HierarchyIcon, {}), "data-member": "dimension", onPress: () => onToggle?.(!isOpen, member.name), children: _jsxs(Space, { gap: ".75x", children: [_jsx(Text, { ref: textRef, ellipsis: true, children: filterString ? (_jsx(FilteredLabel, { text: shownMemberName, filter: filterString })) : (shownMemberName) }), _jsx(ChevronIcon, { direction: isOpen ? 'top' : 'bottom', color: "var(--dimension-text-color)" })] }) }) }), children && children.length ? (_jsxs("div", { "data-element": "Contents", children: [children, _jsx("div", { "data-element": "HierarchyLine" })] })) : null] }));
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=HierarchyMember.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HierarchyMember.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/HierarchyMember.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CubeTooltipProviderProps } from '@cube-dev/ui-kit';
|
|
2
|
+
import { RefObject } from 'react';
|
|
3
|
+
interface InstanceTooltipProviderProps {
|
|
4
|
+
name: string;
|
|
5
|
+
fullName?: string;
|
|
6
|
+
title?: string;
|
|
7
|
+
type?: 'dimension' | 'measure' | 'hierarchy' | 'folder' | 'segment';
|
|
8
|
+
description?: string;
|
|
9
|
+
forceShown?: boolean;
|
|
10
|
+
children: CubeTooltipProviderProps['children'];
|
|
11
|
+
isDisabled?: boolean;
|
|
12
|
+
overflowRef?: RefObject<HTMLDivElement>;
|
|
13
|
+
}
|
|
14
|
+
export declare function InstanceTooltipProvider(props: InstanceTooltipProviderProps): string | import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { tasty, TooltipProvider } from '@cube-dev/ui-kit';
|
|
3
|
+
import { useHasOverflow } from '../hooks';
|
|
4
|
+
import { titleize } from '../utils';
|
|
5
|
+
const TooltipWrapper = tasty({
|
|
6
|
+
styles: {
|
|
7
|
+
Name: {
|
|
8
|
+
display: 'block',
|
|
9
|
+
width: 'max-content',
|
|
10
|
+
preset: 't4m',
|
|
11
|
+
},
|
|
12
|
+
Title: {
|
|
13
|
+
display: 'block',
|
|
14
|
+
width: 'max-content',
|
|
15
|
+
preset: 't3',
|
|
16
|
+
},
|
|
17
|
+
Description: {
|
|
18
|
+
display: 'block',
|
|
19
|
+
preset: 'p3',
|
|
20
|
+
},
|
|
21
|
+
Type: {
|
|
22
|
+
preset: 'c2',
|
|
23
|
+
opacity: 0.7,
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
export function InstanceTooltipProvider(props) {
|
|
28
|
+
const { name, fullName, type, title, description, children, isDisabled, forceShown, overflowRef, } = props;
|
|
29
|
+
const hasOverflow = useHasOverflow(overflowRef);
|
|
30
|
+
const isAutoTitle = titleize(name) === title;
|
|
31
|
+
if ((!forceShown && (isDisabled || (!hasOverflow && isAutoTitle) || !overflowRef)) || !fullName) {
|
|
32
|
+
return children;
|
|
33
|
+
}
|
|
34
|
+
return (_jsx(TooltipProvider, { title: _jsx(_Fragment, { children: _jsxs(TooltipWrapper, { children: [type && _jsx("div", { "data-element": "Type", children: type }), _jsx("div", { "data-element": "Name", children: fullName }), _jsx("div", { "data-element": "Title", children: title }), _jsx("div", { "data-element": "Description", children: description })] }) }), width: "max-content", delay: 1000, placement: "right", children: children }));
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=InstanceTooltipProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InstanceTooltipProvider.js","sourceRoot":"","sources":["../../../src/QueryBuilderV2/components/InstanceTooltipProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA4B,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGpF,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,cAAc,GAAG,KAAK,CAAC;IAC3B,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,KAAK;SACd;QAED,KAAK,EAAE;YACL,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,IAAI;SACb;QAED,WAAW,EAAE;YACX,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,IAAI;SACb;QAED,IAAI,EAAE;YACJ,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,GAAG;SACb;KACF;CACF,CAAC,CAAC;AAcH,MAAM,UAAU,uBAAuB,CAAC,KAAmC;IACzE,MAAM,EACJ,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,UAAU,EACV,WAAW,GACZ,GAAG,KAAK,CAAC;IAEV,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;IAE7C,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC/F,OAAO,QAAQ,CAAC;KACjB;IAED,OAAO,CACL,KAAC,eAAe,IACd,KAAK,EACH,4BACE,MAAC,cAAc,eACZ,IAAI,IAAI,8BAAkB,MAAM,YAAE,IAAI,GAAO,EAC9C,8BAAkB,MAAM,YAAE,QAAQ,GAAO,EACzC,8BAAkB,OAAO,YAAE,KAAK,GAAO,EACvC,8BAAkB,aAAa,YAAE,WAAW,GAAO,IACpC,GAChB,EAEL,KAAK,EAAC,aAAa,EACnB,KAAK,EAAE,IAAI,EACX,SAAS,EAAC,OAAO,YAEhB,QAAQ,GACO,CACnB,CAAC;AACJ,CAAC"}
|