datastake-daf 0.6.828 → 0.6.830

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.
@@ -14419,9 +14419,6 @@ function MineSites({
14419
14419
  defaultData: [],
14420
14420
  stop: selectedPartners?.loading
14421
14421
  }), [activeTab, selectedPartners, filters]);
14422
- console.log({
14423
- dataFetchConfig
14424
- });
14425
14422
  const {
14426
14423
  data,
14427
14424
  loading,
@@ -45496,9 +45493,7 @@ const useFetchData = ({
45496
45493
  } = useGetQueryParams({
45497
45494
  location
45498
45495
  });
45499
- const tab = React.useMemo(() => {
45500
- return activeTab;
45501
- }, [activeTab]);
45496
+ const prevParamsRef = React.useRef();
45502
45497
  React.useEffect(() => {
45503
45498
  const cleanSearchParams = Object.fromEntries(Object.entries(searchParams).filter(([_, value]) => value != null && value !== ''));
45504
45499
  const hasPagination = paginationQuery.skip != null || paginationQuery.take != null;
@@ -45507,19 +45502,25 @@ const useFetchData = ({
45507
45502
  }
45508
45503
  const extendingSortKey = extendingFilters?.sortBy ? Object.keys(extendingFilters.sortBy)[0] : null;
45509
45504
  const extendingSortDir = extendingFilters?.sortBy && extendingSortKey ? extendingFilters.sortBy[extendingSortKey] : null;
45510
- getData({
45505
+ const currentParams = {
45511
45506
  ...extendingFilters,
45512
45507
  pagination: paginationQuery,
45513
45508
  ...(Object.keys(otherParams).length > 0 && otherParams),
45514
45509
  ...(Object.keys(cleanSearchParams).length > 0 && {
45515
45510
  search: cleanSearchParams
45516
45511
  }),
45517
- tab: tab,
45512
+ tab: activeTab,
45518
45513
  sortBy: {
45519
45514
  [sortBy || extendingSortKey || "updatedAt"]: sortDir ? sortDir === "ascend" ? 1 : -1 : extendingSortDir || -1
45520
45515
  }
45521
- }, subject);
45522
- }, [location.search, JSON.stringify(extendingFilters)]);
45516
+ };
45517
+ const currentParamsString = JSON.stringify(currentParams);
45518
+ if (prevParamsRef.current === currentParamsString) {
45519
+ return;
45520
+ }
45521
+ prevParamsRef.current = currentParamsString;
45522
+ getData(currentParams, subject);
45523
+ }, [location.search, JSON.stringify(extendingFilters), activeTab]);
45523
45524
  };
45524
45525
  const useTablePage = ({
45525
45526
  subject,
@@ -50665,13 +50666,6 @@ const Content = ({
50665
50666
  }
50666
50667
  return all;
50667
50668
  }, {});
50668
- console.log({
50669
- groups,
50670
- singleGroupsKeys,
50671
- addedContent,
50672
- _length,
50673
- groupped
50674
- });
50675
50669
  return Object.keys(groupped).map(key => {
50676
50670
  const groups = groupped[key];
50677
50671
  return /*#__PURE__*/jsxRuntime.jsx(React__default["default"].Fragment, {
@@ -62152,7 +62146,7 @@ const View = ({
62152
62146
  id: id
62153
62147
  });
62154
62148
  antd.message.success(t("Subject deleted successfully"));
62155
- // push(getRedirectLink(`/app/management/subject/${subjects[namespace]}`));
62149
+ push(getRedirectLink(`/app/management/subjects/${subjects[namespace]}`));
62156
62150
  } catch (error) {
62157
62151
  handleError(error);
62158
62152
  antd.message.error(t("Failed to delete subject"));
@@ -15074,6 +15074,30 @@ const getAdminLevelName = (data, level) => {
15074
15074
  return entry?.name || "-";
15075
15075
  };
15076
15076
 
15077
+ const formatDataForTable = (data, options) => {
15078
+ // If data is an array, take the first element
15079
+ const dataObj = Array.isArray(data) ? data[0] : data;
15080
+ return {
15081
+ data: {
15082
+ data: (dataObj.data || []).map(({
15083
+ children,
15084
+ ...rest
15085
+ }) => {
15086
+ if (Array.isArray(children) && children.length === 0) {
15087
+ return rest;
15088
+ }
15089
+ return {
15090
+ ...rest,
15091
+ children
15092
+ };
15093
+ }),
15094
+ meta: dataObj.data
15095
+ },
15096
+ ...(Object.keys(options)?.length > 0 && options),
15097
+ totalItems: Array.isArray(dataObj?.meta) ? dataObj?.meta?.[0]?.total : dataObj?.meta?.total || 0
15098
+ };
15099
+ };
15100
+
15077
15101
  exports.ErrorFormat = ErrorFormat;
15078
15102
  exports.MessageTypes = MessageTypes;
15079
15103
  exports.StorageManager = StorageManager;
@@ -15112,6 +15136,7 @@ exports.filterParams = filterParams;
15112
15136
  exports.filterSelectOptions = filterSelectOptions;
15113
15137
  exports.filterString = filterString;
15114
15138
  exports.findOptions = findOptions;
15139
+ exports.formatDataForTable = formatDataForTable;
15115
15140
  exports.formatErrors = formatErrors;
15116
15141
  exports.formatToKebabCase = formatToKebabCase$1;
15117
15142
  exports.getAdminLevelName = getAdminLevelName;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "datastake-daf",
3
- "version": "0.6.828",
3
+ "version": "0.6.830",
4
4
  "dependencies": {
5
5
  "@ant-design/icons": "^5.2.5",
6
6
  "@antv/g2": "^5.1.1",
@@ -25,8 +25,6 @@ export function getAdminRoutes(config) {
25
25
 
26
26
  const APP_PREFIX = `APP_${appName.toUpperCase()}`;
27
27
 
28
- console.log({useAdminEventsConfig})
29
-
30
28
  function DashboardWrapper() {
31
29
  const dashboardConfig = useAdminDashboardConfig();
32
30
  return <AdminDashboardScreen config={dashboardConfig} />;
@@ -130,7 +130,6 @@ const Content = ({
130
130
  return all;
131
131
  }, {});
132
132
 
133
- console.log({groups, singleGroupsKeys, addedContent, _length, groupped})
134
133
 
135
134
  return Object.keys(groupped).map((key) => {
136
135
  const groups = groupped[key];
@@ -72,7 +72,6 @@ function MineSites({
72
72
  [activeTab, selectedPartners, filters],
73
73
 
74
74
  );
75
- console.log({dataFetchConfig})
76
75
  const { data, loading, setData } = useWidgetFetch({config: dataFetchConfig});
77
76
 
78
77
  const tabs = useMemo(() => getTabs(t), [t]);
@@ -1,4 +1,4 @@
1
- import { useState, useEffect, useCallback, useMemo } from 'react';
1
+ import { useState, useEffect, useCallback, useMemo, useRef } from 'react';
2
2
  import { useGetQueryParams } from "../../hooks/useGetQueryParams.js";
3
3
  import {
4
4
  getFiltersConfig,
@@ -18,10 +18,8 @@ export const useFetchData = ({
18
18
  subject,
19
19
  }) => {
20
20
  const { paginationQuery, searchParams, otherParams, sortBy, sortDir, } = useGetQueryParams({location});
21
-
22
- const tab = useMemo(() => {
23
- return activeTab;
24
- }, [activeTab])
21
+
22
+ const prevParamsRef = useRef();
25
23
 
26
24
  useEffect(() => {
27
25
  const cleanSearchParams = Object.fromEntries(
@@ -37,17 +35,26 @@ export const useFetchData = ({
37
35
  const extendingSortKey = extendingFilters?.sortBy ? Object.keys(extendingFilters.sortBy)[0] : null;
38
36
  const extendingSortDir = extendingFilters?.sortBy && extendingSortKey ? extendingFilters.sortBy[extendingSortKey] : null;
39
37
 
40
- getData({
38
+ const currentParams = {
41
39
  ...extendingFilters,
42
40
  pagination: paginationQuery,
43
41
  ...(Object.keys(otherParams).length > 0 && otherParams ),
44
42
  ...(Object.keys(cleanSearchParams).length > 0 && { search: cleanSearchParams }),
45
- tab: tab,
43
+ tab: activeTab,
46
44
  sortBy: {
47
45
  [sortBy || extendingSortKey || "updatedAt"]: sortDir ? (sortDir === "ascend" ? 1 : -1) : (extendingSortDir || -1),
48
46
  },
49
- }, subject)
50
- }, [location.search, JSON.stringify(extendingFilters)]);
47
+ };
48
+
49
+ const currentParamsString = JSON.stringify(currentParams);
50
+ if (prevParamsRef.current === currentParamsString) {
51
+ return;
52
+ }
53
+
54
+ prevParamsRef.current = currentParamsString;
55
+
56
+ getData(currentParams, subject);
57
+ }, [location.search, JSON.stringify(extendingFilters), activeTab]);
51
58
  }
52
59
 
53
60
  export const useTablePage = ({
@@ -146,7 +146,7 @@ const View = ({
146
146
  id: id,
147
147
  });
148
148
  message.success(t("Subject deleted successfully"));
149
- // push(getRedirectLink(`/app/management/subject/${subjects[namespace]}`));
149
+ push(getRedirectLink(`/app/management/subjects/${subjects[namespace]}`));
150
150
  } catch (error) {
151
151
  handleError(error);
152
152
  message.error(t("Failed to delete subject"));
@@ -0,0 +1,19 @@
1
+ export const formatDataForTable = (data, options) => {
2
+ // If data is an array, take the first element
3
+ const dataObj = Array.isArray(data) ? data[0] : data;
4
+
5
+ return {
6
+ data: {
7
+ data: (dataObj.data || []).map(({ children, ...rest }) => {
8
+ if (Array.isArray(children) && children.length === 0) {
9
+ return rest;
10
+ }
11
+
12
+ return { ...rest, children };
13
+ }),
14
+ meta: dataObj.data,
15
+ },
16
+ ...(Object.keys(options)?.length > 0 && options),
17
+ totalItems: Array.isArray(dataObj?.meta) ? dataObj?.meta?.[0]?.total : dataObj?.meta?.total || 0,
18
+ }
19
+ }
package/src/utils.js CHANGED
@@ -66,4 +66,6 @@ export { copyToClipboard } from './helpers/copyToClipboard.js'
66
66
 
67
67
  export { isArrayOfObjects } from './@daf/utils/arrays.js'
68
68
 
69
- export { getAdminLevelName } from './helpers/adminLevels.js'
69
+ export { getAdminLevelName } from './helpers/adminLevels.js'
70
+
71
+ export { formatDataForTable } from './helpers/dataFetch.js'