@datawheel/data-explorer 0.2.1 → 0.2.2
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/main.js +28 -36
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1002,14 +1002,14 @@ var queriesSlice = createSlice({
|
|
|
1002
1002
|
*/
|
|
1003
1003
|
updateCut(state, { payload }) {
|
|
1004
1004
|
const query = taintCurrentQuery(state);
|
|
1005
|
-
query.params.cuts[payload.
|
|
1005
|
+
query.params.cuts[payload.fullName] = payload;
|
|
1006
1006
|
},
|
|
1007
1007
|
/**
|
|
1008
1008
|
* Replaces a single DrilldownItem in the current QueryItem.
|
|
1009
1009
|
*/
|
|
1010
1010
|
updateDrilldown(state, { payload }) {
|
|
1011
1011
|
const query = taintCurrentQuery(state);
|
|
1012
|
-
query.params.drilldowns[payload.
|
|
1012
|
+
query.params.drilldowns[payload.fullName] = payload;
|
|
1013
1013
|
},
|
|
1014
1014
|
/**
|
|
1015
1015
|
* Replaces a single FilterItem in the current QueryItem.
|
|
@@ -1032,7 +1032,7 @@ var queriesSlice = createSlice({
|
|
|
1032
1032
|
*/
|
|
1033
1033
|
updateMeasure(state, { payload }) {
|
|
1034
1034
|
const query = taintCurrentQuery(state);
|
|
1035
|
-
query.params.measures[payload.
|
|
1035
|
+
query.params.measures[payload.name] = payload;
|
|
1036
1036
|
},
|
|
1037
1037
|
/**
|
|
1038
1038
|
* Replaces the pagination settings in the current QueryItem.
|
|
@@ -2803,8 +2803,12 @@ function LevelItem({ dimension, hierarchy, isSubMenu, level, locale, activeItems
|
|
|
2803
2803
|
const { translate: t } = useTranslation();
|
|
2804
2804
|
const actions2 = useActions();
|
|
2805
2805
|
const cutItems = useSelector$1(selectCutItems);
|
|
2806
|
-
|
|
2806
|
+
useSelector$1(selectOlapDimensionItems);
|
|
2807
2807
|
const drilldowns = useSelector$1(selectDrilldownMap);
|
|
2808
|
+
const stringifyNameInternal = (level2) => joinName(levelRefToArray(level2));
|
|
2809
|
+
const [currentDrilldown, setCurrentDrilldown] = useState(
|
|
2810
|
+
drilldowns[stringifyNameInternal(level)] || drilldowns[stringifyName(level)]
|
|
2811
|
+
);
|
|
2808
2812
|
const label = useMemo(() => {
|
|
2809
2813
|
const captions = [
|
|
2810
2814
|
getCaption(dimension, locale),
|
|
@@ -2821,38 +2825,28 @@ function LevelItem({ dimension, hierarchy, isSubMenu, level, locale, activeItems
|
|
|
2821
2825
|
level: captions[2]
|
|
2822
2826
|
});
|
|
2823
2827
|
}, [locale, dimension, hierarchy, level, isSubMenu]);
|
|
2824
|
-
|
|
2828
|
+
React10__default.useCallback((level2) => {
|
|
2825
2829
|
const cutItem = buildCut({ ...level2, members: [], key: level2.fullName });
|
|
2826
2830
|
cutItem.active = false;
|
|
2827
2831
|
actions2.updateCut(cutItem);
|
|
2828
2832
|
}, []);
|
|
2829
2833
|
function createDrilldown(level2, cuts) {
|
|
2830
2834
|
const drilldown = buildDrilldown({ ...level2, key: stringifyName(level2), active: false });
|
|
2831
|
-
actions2.updateDrilldown(drilldown);
|
|
2832
|
-
const cut2 = cuts.find((cut3) => cut3.uniqueName === drilldown.uniqueName);
|
|
2833
|
-
if (!cut2) {
|
|
2834
|
-
createCutHandler2({ ...level2, key: stringifyName(level2) });
|
|
2835
|
-
}
|
|
2836
|
-
actions2.willFetchMembers({ ...level2, level: level2.name }).then((members) => {
|
|
2837
|
-
const dimension2 = dimensions.find((dim) => dim.name === level2.dimension);
|
|
2838
|
-
if (!dimension2) return;
|
|
2839
|
-
actions2.updateDrilldown({
|
|
2840
|
-
...drilldown,
|
|
2841
|
-
dimType: dimension2.dimensionType,
|
|
2842
|
-
memberCount: members.length,
|
|
2843
|
-
members
|
|
2844
|
-
});
|
|
2845
|
-
});
|
|
2846
2835
|
return drilldown;
|
|
2847
2836
|
}
|
|
2848
|
-
|
|
2837
|
+
React10__default.useEffect(() => {
|
|
2838
|
+
if (!currentDrilldown) {
|
|
2839
|
+
setCurrentDrilldown(createDrilldown(level));
|
|
2840
|
+
}
|
|
2841
|
+
}, []);
|
|
2849
2842
|
const cut = cutItems.find((cut2) => {
|
|
2850
|
-
return cut2.uniqueName === currentDrilldown.uniqueName;
|
|
2843
|
+
return cut2.uniqueName === (currentDrilldown == null ? void 0 : currentDrilldown.uniqueName);
|
|
2851
2844
|
});
|
|
2852
2845
|
const updatecutHandler = React10__default.useCallback((item, members) => {
|
|
2853
2846
|
actions2.updateCut({ ...item, members });
|
|
2854
2847
|
}, []);
|
|
2855
2848
|
const checked = activeItems.map(stringifyName).includes(stringifyName(level));
|
|
2849
|
+
if (!currentDrilldown) return;
|
|
2856
2850
|
return /* @__PURE__ */ React10__default.createElement(React10__default.Fragment, null, /* @__PURE__ */ React10__default.createElement(Group, { mt: "sm", position: "apart", key: level.uri, noWrap: true }, /* @__PURE__ */ React10__default.createElement(
|
|
2857
2851
|
Checkbox,
|
|
2858
2852
|
{
|
|
@@ -2861,6 +2855,7 @@ function LevelItem({ dimension, hierarchy, isSubMenu, level, locale, activeItems
|
|
|
2861
2855
|
const active = checked ? false : cut.members.length ? true : false;
|
|
2862
2856
|
actions2.updateCut({ ...cut, active });
|
|
2863
2857
|
}
|
|
2858
|
+
console.log({ currentDrilldown });
|
|
2864
2859
|
actions2.updateDrilldown({ ...currentDrilldown, active: !currentDrilldown.active });
|
|
2865
2860
|
},
|
|
2866
2861
|
checked,
|
|
@@ -3176,20 +3171,18 @@ function useTableData({ offset, limit, columns, filters, cuts, pagination }) {
|
|
|
3176
3171
|
const actions2 = useActions();
|
|
3177
3172
|
const columnsStr = JSON.stringify(columns.sort());
|
|
3178
3173
|
const page = pagination.pageIndex;
|
|
3179
|
-
const
|
|
3180
|
-
|
|
3181
|
-
|
|
3182
|
-
cutKey,
|
|
3183
|
-
page
|
|
3184
|
-
]);
|
|
3174
|
+
const enabled = Boolean(columns.length) || Boolean(filters.length) || Boolean(cuts.length);
|
|
3175
|
+
const initialKey = enabled ? [columnsStr, filterKey, cutKey, page] : "";
|
|
3176
|
+
const [filterKeydebouced, setDebouncedTerm] = useState(initialKey);
|
|
3185
3177
|
useEffect(() => {
|
|
3178
|
+
if (!enabled) return;
|
|
3186
3179
|
const handler = debounce(() => {
|
|
3187
3180
|
const term = [columnsStr, filterKey, cutKey, page];
|
|
3188
3181
|
setDebouncedTerm(term);
|
|
3189
3182
|
}, 700);
|
|
3190
3183
|
handler();
|
|
3191
3184
|
return () => handler.cancel();
|
|
3192
|
-
}, [columnsStr,
|
|
3185
|
+
}, [columnsStr, filterKey, cutKey, page, enabled]);
|
|
3193
3186
|
return useQuery({
|
|
3194
3187
|
queryKey: ["table", filterKeydebouced],
|
|
3195
3188
|
queryFn: () => {
|
|
@@ -3200,7 +3193,7 @@ function useTableData({ offset, limit, columns, filters, cuts, pagination }) {
|
|
|
3200
3193
|
});
|
|
3201
3194
|
},
|
|
3202
3195
|
staleTime: 3e5,
|
|
3203
|
-
enabled: !!filterKeydebouced
|
|
3196
|
+
enabled: enabled && !!filterKeydebouced
|
|
3204
3197
|
});
|
|
3205
3198
|
}
|
|
3206
3199
|
function usePrefetch({
|
|
@@ -4164,6 +4157,7 @@ function LocaleSelector() {
|
|
|
4164
4157
|
if (currentCode !== l.value) {
|
|
4165
4158
|
resetGraph();
|
|
4166
4159
|
actions2.updateLocale(l.value);
|
|
4160
|
+
actions2.willRequestQuery();
|
|
4167
4161
|
}
|
|
4168
4162
|
};
|
|
4169
4163
|
if (localeOptions.length < 2) {
|
|
@@ -6607,11 +6601,9 @@ function createVizbuilderView(settings) {
|
|
|
6607
6601
|
return VizbuilderView;
|
|
6608
6602
|
function VizbuilderView(props) {
|
|
6609
6603
|
const { cube, panelKey, params, result } = props;
|
|
6604
|
+
console.log(result);
|
|
6610
6605
|
const { actions: actions2, formatters } = useSettings();
|
|
6611
|
-
const [panelName, currentChart] = useMemo(
|
|
6612
|
-
() => `${panelKey || ""}-`.split("-"),
|
|
6613
|
-
[panelKey]
|
|
6614
|
-
);
|
|
6606
|
+
const [panelName, currentChart] = useMemo(() => `${panelKey || ""}-`.split("-"), [panelKey]);
|
|
6615
6607
|
const resetCurrentPanel = useCallback(() => {
|
|
6616
6608
|
actions2.switchPanel(panelName);
|
|
6617
6609
|
}, [panelName]);
|
|
@@ -6620,7 +6612,7 @@ function createVizbuilderView(settings) {
|
|
|
6620
6612
|
[
|
|
6621
6613
|
{
|
|
6622
6614
|
cube,
|
|
6623
|
-
dataset: result.data,
|
|
6615
|
+
dataset: result.data.data,
|
|
6624
6616
|
params: {
|
|
6625
6617
|
locale: params.locale || defaultLocale,
|
|
6626
6618
|
booleans: params.booleans,
|
|
@@ -6653,7 +6645,7 @@ function createVizbuilderView(settings) {
|
|
|
6653
6645
|
],
|
|
6654
6646
|
chartGenOptions
|
|
6655
6647
|
),
|
|
6656
|
-
[cube, result.data, params]
|
|
6648
|
+
[cube, result.data.data, params]
|
|
6657
6649
|
);
|
|
6658
6650
|
const content = useMemo(() => {
|
|
6659
6651
|
const isSingleChart = charts.length === 1;
|