@addsign/moje-agenda-shared-lib 0.0.89 → 0.0.91

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.
@@ -21719,49 +21719,13 @@ function DataTableServer({
21719
21719
  totalPages: ((_g = response.data) == null ? void 0 : _g.totalPages) || 1
21720
21720
  };
21721
21721
  };
21722
+ const [reloadData, setReloadData] = useState(false);
21722
21723
  useEffect(() => {
21723
- console.log(
21724
- "%clibcomponentsdatatableDataTableServer.tsx:103 currentPage",
21725
- "color: #007acc;",
21726
- currentPage
21727
- );
21728
- setIsLoading(true);
21729
- federationContext.apiClient.get(url, {
21730
- params: {
21731
- ...filters,
21732
- ...showColFilters ? columnFilters : {},
21733
- pageSize: itemsPerPage,
21734
- page: currentPage,
21735
- sortBy: sortConfig == null ? void 0 : sortConfig.sortParam,
21736
- sortDirection: sortConfig == null ? void 0 : sortConfig.direction
21737
- }
21738
- }).then((response) => {
21739
- const dataPageable = createDataPageable(
21740
- response,
21741
- itemsPerPage
21742
- );
21743
- setData(dataPageable);
21744
- setIsLoading(false);
21745
- }).catch((error) => {
21746
- console.error("Error fetching data:", error);
21747
- handleErrors(error, federationContext.emitter);
21748
- setData({
21749
- content: [],
21750
- empty: true,
21751
- first: true,
21752
- last: true,
21753
- number: 0,
21754
- numberOfElements: 0,
21755
- size: itemsPerPage,
21756
- totalElements: 0,
21757
- totalPages: 1
21758
- });
21759
- setIsLoading(false);
21760
- });
21724
+ setReloadData(true);
21761
21725
  }, [
21762
21726
  url,
21763
21727
  showColFilters,
21764
- id,
21728
+ // id,
21765
21729
  columnFilters,
21766
21730
  itemsPerPage,
21767
21731
  currentPage,
@@ -21771,6 +21735,70 @@ function DataTableServer({
21771
21735
  filters,
21772
21736
  tableKey
21773
21737
  ]);
21738
+ useEffect(() => {
21739
+ if (reloadData) {
21740
+ if (currentPage === void 0)
21741
+ return;
21742
+ setIsLoading(true);
21743
+ federationContext.apiClient.get(url, {
21744
+ params: {
21745
+ ...filters,
21746
+ ...showColFilters ? columnFilters : {},
21747
+ pageSize: itemsPerPage,
21748
+ page: currentPage,
21749
+ sortBy: sortConfig == null ? void 0 : sortConfig.sortParam,
21750
+ sortDirection: sortConfig == null ? void 0 : sortConfig.direction
21751
+ }
21752
+ }).then((response) => {
21753
+ const dataPageable = createDataPageable(
21754
+ response,
21755
+ itemsPerPage
21756
+ );
21757
+ setData(dataPageable);
21758
+ setIsLoading(false);
21759
+ }).catch((error) => {
21760
+ console.error("Error fetching data:", error);
21761
+ handleErrors(error, federationContext.emitter);
21762
+ setData({
21763
+ content: [],
21764
+ empty: true,
21765
+ first: true,
21766
+ last: true,
21767
+ number: 0,
21768
+ numberOfElements: 0,
21769
+ size: itemsPerPage,
21770
+ totalElements: 0,
21771
+ totalPages: 1
21772
+ });
21773
+ setIsLoading(false);
21774
+ });
21775
+ setReloadData(false);
21776
+ }
21777
+ }, [reloadData]);
21778
+ useEffect(() => {
21779
+ Object.keys(localStorage).filter(
21780
+ (key) => key.startsWith("datatable:") && key !== `datatable:${id}`
21781
+ ).forEach((key) => {
21782
+ const storageObject = localStorage.getItem(key);
21783
+ if (storageObject) {
21784
+ const parsedObject = JSON.parse(storageObject);
21785
+ parsedObject.currentPage = 0;
21786
+ localStorage.setItem(key, JSON.stringify(parsedObject));
21787
+ }
21788
+ });
21789
+ }, [id]);
21790
+ useEffect(() => {
21791
+ if (id) {
21792
+ const storageKey = `datatable:${id}`;
21793
+ const storedStorageObject = localStorage.getItem(storageKey);
21794
+ if (storedStorageObject) {
21795
+ const storageObject = JSON.parse(storedStorageObject);
21796
+ setColumnFilters(storageObject.columnFilters);
21797
+ setShowColFilters(storageObject.showColFilters);
21798
+ setCurrentPage(storageObject.currentPage || 0);
21799
+ }
21800
+ }
21801
+ }, [id]);
21774
21802
  useEffect(() => {
21775
21803
  const fetchFilterOptions = async (column) => {
21776
21804
  if (column.filterSource) {
@@ -21876,18 +21904,6 @@ function DataTableServer({
21876
21904
  }
21877
21905
  setShowColFilters(!showColFilters);
21878
21906
  };
21879
- useEffect(() => {
21880
- if (id) {
21881
- const storageKey = `datatable:${id}`;
21882
- const storedStorageObject = localStorage.getItem(storageKey);
21883
- if (storedStorageObject) {
21884
- const storageObject = JSON.parse(storedStorageObject);
21885
- setColumnFilters(storageObject.columnFilters);
21886
- setShowColFilters(storageObject.showColFilters);
21887
- setCurrentPage(storageObject.currentPage || 0);
21888
- }
21889
- }
21890
- }, [id]);
21891
21907
  useEffect(() => {
21892
21908
  if (id) {
21893
21909
  const storageKey = `datatable:${id}`;
@@ -21898,7 +21914,7 @@ function DataTableServer({
21898
21914
  ) : {};
21899
21915
  storageObject.columnFilters = columnFilters || {};
21900
21916
  storageObject.showColFilters = showColFilters || false;
21901
- storageObject.currentPage = currentPage || storageObject.currentPage || 0;
21917
+ storageObject.currentPage = currentPage !== void 0 ? currentPage : storageObject.currentPage || 0;
21902
21918
  localStorage.setItem(storageKey, JSON.stringify(storageObject));
21903
21919
  }
21904
21920
  }, [columnFilters, showColFilters, currentPage, id]);
@@ -22199,7 +22215,7 @@ function DataTableServer({
22199
22215
  variant: "secondary",
22200
22216
  onClick: prevPage,
22201
22217
  className: "flex items-center",
22202
- disabled: data.first,
22218
+ disabled: data.first || isLoading,
22203
22219
  children: [
22204
22220
  /* @__PURE__ */ jsx(MdArrowBack, { className: "mr-1.5" }),
22205
22221
  " Předchozí"
@@ -22212,7 +22228,7 @@ function DataTableServer({
22212
22228
  variant: "secondary",
22213
22229
  onClick: nextPage,
22214
22230
  className: "flex items-center",
22215
- disabled: data.last,
22231
+ disabled: data.last || isLoading,
22216
22232
  children: [
22217
22233
  "Následující ",
22218
22234
  /* @__PURE__ */ jsx(MdArrowForward, { className: "ml-2", size: 20 })