@fctc/widget-logic 1.8.1 → 1.8.3

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/utils.mjs CHANGED
@@ -1,3 +1,17 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from === "object" || typeof from === "function") {
7
+ for (let key of __getOwnPropNames(from))
8
+ if (!__hasOwnProp.call(to, key) && key !== except)
9
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
+ }
11
+ return to;
12
+ };
13
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
14
+
1
15
  // src/utils/constants.ts
2
16
  var languages = [
3
17
  { id: "vi_VN", name: "VIE" },
@@ -13,7 +27,21 @@ var API_APP_URL = {
13
27
  };
14
28
 
15
29
  // src/utils/function.ts
16
- import { useCallback, useEffect, useReducer, useRef, useState } from "react";
30
+ import {
31
+ useCallback,
32
+ useEffect,
33
+ useMemo,
34
+ useReducer,
35
+ useRef,
36
+ useState
37
+ } from "react";
38
+
39
+ // src/store.ts
40
+ var store_exports = {};
41
+ __reExport(store_exports, store_star);
42
+ import * as store_star from "@fctc/interface-logic/store";
43
+
44
+ // src/utils/function.ts
17
45
  var countSum = (data, field) => {
18
46
  if (!data || !field) return 0;
19
47
  return data.reduce(
@@ -86,6 +114,37 @@ function useGetRowIds(tableRef) {
86
114
  }, [updateVisibleRowIds, tableRef]);
87
115
  return { rowIds, refresh: updateVisibleRowIds };
88
116
  }
117
+ var useSelectionState = ({
118
+ typeTable,
119
+ tableRef,
120
+ rows
121
+ }) => {
122
+ const { groupByDomain } = (0, store_exports.useAppSelector)(store_exports.selectSearch);
123
+ const { selectedRowKeys } = (0, store_exports.useAppSelector)(store_exports.selectList);
124
+ const { rowIds: recordIds } = useGetRowIds(tableRef);
125
+ const selectedRowKeysRef = useRef(recordIds);
126
+ const isGroupTable = typeTable === "group";
127
+ const recordsCheckedGroup = useMemo(() => {
128
+ if (!rows || !groupByDomain) return 0;
129
+ const groupBy = typeof groupByDomain === "object" ? groupByDomain?.contexts?.[0]?.group_by : void 0;
130
+ return countSum(rows, groupBy);
131
+ }, [rows, groupByDomain]);
132
+ const isAllGroupChecked = useMemo(() => {
133
+ if (!isGroupTable || !selectedRowKeys?.length) return false;
134
+ const selectedLength = selectedRowKeys.filter((id) => id !== -1).length;
135
+ const allRecordsSelected = recordIds.length === selectedRowKeys.length ? recordIds.length === selectedLength : false;
136
+ const allGroupsSelected = recordsCheckedGroup === selectedRowKeys.length;
137
+ return allGroupsSelected || allRecordsSelected;
138
+ }, [isGroupTable, selectedRowKeys, recordIds, recordsCheckedGroup]);
139
+ const isAllNormalChecked = useMemo(() => {
140
+ if (isGroupTable || !selectedRowKeys?.length || !rows?.length) return false;
141
+ return selectedRowKeys.length === rows.length && selectedRowKeys.every(
142
+ (id) => rows.some((record) => record.id === id)
143
+ );
144
+ }, [isGroupTable, selectedRowKeys, rows]);
145
+ const checkedAll = isAllGroupChecked || isAllNormalChecked;
146
+ return { checkedAll, selectedRowKeysRef };
147
+ };
89
148
  var getDateRange = (currentDate, unit) => {
90
149
  const date = new Date(currentDate);
91
150
  let dateStart, dateEnd;
@@ -238,5 +297,6 @@ export {
238
297
  mergeButtons,
239
298
  setStorageItemAsync,
240
299
  useGetRowIds,
300
+ useSelectionState,
241
301
  useStorageState
242
302
  };
package/dist/widget.d.mts CHANGED
@@ -260,7 +260,7 @@ declare const tableController: ({ data }: ITableProps) => {
260
260
  rows: any[];
261
261
  columns: any;
262
262
  onToggleColumnOptional: (item: any) => void;
263
- typeTable: "list" | "calendar" | "group" | undefined;
263
+ typeTable: "list" | "group" | "calendar" | undefined;
264
264
  };
265
265
 
266
266
  declare const tableGroupController: (props: any) => {
@@ -311,6 +311,7 @@ declare const searchController: ({ viewData, actionData, fieldsList, setDomain,
311
311
  setSelectedTags: react.Dispatch<any>;
312
312
  removeSearchItems: (key: string, item: any) => void;
313
313
  onSearchString: (search_string: string) => void;
314
+ handleAddTagSearch: (tag: any) => void;
314
315
  };
315
316
 
316
317
  export { type ISelctionStateProps, type ITableBodyProps, type ITableHeadProps, type ITableProps, binaryFieldController, colorFieldController, copyLinkButtonController, dateFieldController, downLoadBinaryController, downloadFileController, durationController, floatController, floatTimeFiledController, many2manyFieldController, many2manyTagsController, many2oneButtonController, many2oneFieldController, priorityFieldController, searchController, statusDropdownController, tableBodyController, tableController, tableGroupController, tableHeadController };
package/dist/widget.d.ts CHANGED
@@ -260,7 +260,7 @@ declare const tableController: ({ data }: ITableProps) => {
260
260
  rows: any[];
261
261
  columns: any;
262
262
  onToggleColumnOptional: (item: any) => void;
263
- typeTable: "list" | "calendar" | "group" | undefined;
263
+ typeTable: "list" | "group" | "calendar" | undefined;
264
264
  };
265
265
 
266
266
  declare const tableGroupController: (props: any) => {
@@ -311,6 +311,7 @@ declare const searchController: ({ viewData, actionData, fieldsList, setDomain,
311
311
  setSelectedTags: react.Dispatch<any>;
312
312
  removeSearchItems: (key: string, item: any) => void;
313
313
  onSearchString: (search_string: string) => void;
314
+ handleAddTagSearch: (tag: any) => void;
314
315
  };
315
316
 
316
317
  export { type ISelctionStateProps, type ITableBodyProps, type ITableHeadProps, type ITableProps, binaryFieldController, colorFieldController, copyLinkButtonController, dateFieldController, downLoadBinaryController, downloadFileController, durationController, floatController, floatTimeFiledController, many2manyFieldController, many2manyTagsController, many2oneButtonController, many2oneFieldController, priorityFieldController, searchController, statusDropdownController, tableBodyController, tableController, tableGroupController, tableHeadController };
package/dist/widget.js CHANGED
@@ -4452,6 +4452,12 @@ var import_react7 = require("react");
4452
4452
 
4453
4453
  // src/utils/function.ts
4454
4454
  var import_react6 = require("react");
4455
+
4456
+ // src/store.ts
4457
+ var store_exports = {};
4458
+ __reExport(store_exports, require("@fctc/interface-logic/store"));
4459
+
4460
+ // src/utils/function.ts
4455
4461
  var countSum = (data, field) => {
4456
4462
  if (!data || !field) return 0;
4457
4463
  return data.reduce(
@@ -4606,19 +4612,19 @@ function useStorageState(key) {
4606
4612
 
4607
4613
  // src/hooks/core/use-list-data.ts
4608
4614
  var import_hooks6 = require("@fctc/interface-logic/hooks");
4609
- var import_store4 = require("@fctc/interface-logic/store");
4615
+ var import_store5 = require("@fctc/interface-logic/store");
4610
4616
  var import_utils3 = require("@fctc/interface-logic/utils");
4611
4617
  var useListData = ({
4612
4618
  action,
4613
4619
  context,
4614
4620
  viewResponse
4615
4621
  }) => {
4616
- const { groupByDomain } = (0, import_store4.useAppSelector)(import_store4.selectSearch);
4622
+ const { groupByDomain } = (0, import_store5.useAppSelector)(import_store5.selectSearch);
4617
4623
  const initModel = (0, import_hooks6.useModel)();
4618
4624
  const [type, setType] = (0, import_react7.useState)("list");
4619
4625
  const [mode, setMode] = (0, import_react7.useState)("month");
4620
4626
  const [currentDate, setCurrentDate] = (0, import_react7.useState)(/* @__PURE__ */ new Date());
4621
- const { pageLimit, page, order } = (0, import_store4.useAppSelector)(import_store4.selectList);
4627
+ const { pageLimit, page, order } = (0, import_store5.useAppSelector)(import_store5.selectList);
4622
4628
  const listDataProps = (0, import_react7.useMemo)(() => {
4623
4629
  const actData = action?.result;
4624
4630
  if (!viewResponse || !actData || !context) {
@@ -4750,10 +4756,10 @@ var import_react9 = require("react");
4750
4756
  var import_react_i18next = require("react-i18next");
4751
4757
  var import_environment5 = require("@fctc/interface-logic/environment");
4752
4758
  var import_hooks8 = require("@fctc/interface-logic/hooks");
4753
- var import_store5 = require("@fctc/interface-logic/store");
4759
+ var import_store6 = require("@fctc/interface-logic/store");
4754
4760
  var useProfile = (accessToken) => {
4755
4761
  const getProfile = (0, import_hooks8.useGetProfile)();
4756
- const dispatch = (0, import_store5.useAppDispatch)();
4762
+ const dispatch = (0, import_store6.useAppDispatch)();
4757
4763
  const { i18n: i18n2 } = (0, import_react_i18next.useTranslation)();
4758
4764
  const fetchUserProfile = async () => {
4759
4765
  return await getProfile.mutateAsync();
@@ -4768,7 +4774,7 @@ var useProfile = (accessToken) => {
4768
4774
  const userInfo = userInfoQuery.data;
4769
4775
  const env = (0, import_environment5.getEnv)();
4770
4776
  env.setUid(userInfo?.sub);
4771
- dispatch((0, import_store5.setDataUser)(userInfo));
4777
+ dispatch((0, import_store6.setDataUser)(userInfo));
4772
4778
  const userLocale = languages.find((lang) => lang?.id === userInfo?.locale);
4773
4779
  env.setLang(userLocale?.id);
4774
4780
  i18n2.changeLanguage(userLocale?.id.split("_")[0]);
@@ -4833,11 +4839,11 @@ var useViewV2 = ({
4833
4839
 
4834
4840
  // src/hooks/core/use-auth.ts
4835
4841
  var import_hooks10 = require("@fctc/interface-logic/hooks");
4836
- var import_store6 = require("@fctc/interface-logic/store");
4842
+ var import_store7 = require("@fctc/interface-logic/store");
4837
4843
  var useAuth = () => {
4838
4844
  const [[isLoading, accessToken], setAccessToken] = useStorageState("TOKEN");
4839
4845
  const loginMutate = (0, import_hooks10.useLoginCredential)();
4840
- const dispatch = (0, import_store6.useAppDispatch)();
4846
+ const dispatch = (0, import_store7.useAppDispatch)();
4841
4847
  const signIn = async (email, password) => {
4842
4848
  try {
4843
4849
  loginMutate.mutate(
@@ -4858,9 +4864,9 @@ var useAuth = () => {
4858
4864
  }
4859
4865
  };
4860
4866
  const signOut = async () => {
4861
- dispatch((0, import_store6.setMenuList)([]));
4862
- dispatch((0, import_store6.setDataUser)({}));
4863
- dispatch((0, import_store6.setProfile)({}));
4867
+ dispatch((0, import_store7.setMenuList)([]));
4868
+ dispatch((0, import_store7.setDataUser)({}));
4869
+ dispatch((0, import_store7.setProfile)({}));
4864
4870
  setAccessToken(null);
4865
4871
  };
4866
4872
  return {
@@ -5039,7 +5045,7 @@ function useDebounce(value, delay) {
5039
5045
  __reExport(hooks_exports, require("@fctc/interface-logic/hooks"));
5040
5046
 
5041
5047
  // src/widget/advance/table/table-body/controller.ts
5042
- var import_store7 = require("@fctc/interface-logic/store");
5048
+ var import_store8 = require("@fctc/interface-logic/store");
5043
5049
  var import_react15 = require("react");
5044
5050
  var tableBodyController = (props) => {
5045
5051
  const {
@@ -5052,7 +5058,7 @@ var tableBodyController = (props) => {
5052
5058
  selectedRowKeysRef,
5053
5059
  onClickRow
5054
5060
  } = props;
5055
- const appDispatch = (0, import_store7.useAppDispatch)();
5061
+ const appDispatch = (0, import_store8.useAppDispatch)();
5056
5062
  const checked = (0, import_react15.useMemo)(() => {
5057
5063
  if (!row?.id) return false;
5058
5064
  if (selectedRowKeys?.includes(row.id)) {
@@ -5069,7 +5075,7 @@ var tableBodyController = (props) => {
5069
5075
  }
5070
5076
  const newSelectedRowKeys = selectedRowKeys?.includes(row.id) ? selectedRowKeys?.filter((key) => key !== row.id) : [...selectedRowKeys, row.id];
5071
5077
  console.log("newSelectedRowKeys", newSelectedRowKeys);
5072
- appDispatch((0, import_store7.setSelectedRowKeys)(newSelectedRowKeys));
5078
+ appDispatch((0, import_store8.setSelectedRowKeys)(newSelectedRowKeys));
5073
5079
  };
5074
5080
  const handleClickRow = (col, row2) => {
5075
5081
  onClickRow(col, row2);
@@ -5082,13 +5088,13 @@ var tableBodyController = (props) => {
5082
5088
  (id) => id !== row.id
5083
5089
  );
5084
5090
  selectedRowKeysRef.current = filtered;
5085
- appDispatch((0, import_store7.setSelectedRowKeys)(filtered));
5091
+ appDispatch((0, import_store8.setSelectedRowKeys)(filtered));
5086
5092
  } else {
5087
5093
  const unique = Array.from(
5088
5094
  /* @__PURE__ */ new Set([...selectedRowKeysRef?.current, row?.id])
5089
5095
  );
5090
5096
  selectedRowKeysRef.current = unique;
5091
- appDispatch((0, import_store7.setSelectedRowKeys)(unique));
5097
+ appDispatch((0, import_store8.setSelectedRowKeys)(unique));
5092
5098
  }
5093
5099
  }
5094
5100
  }, [isAutoSelect]);
@@ -5106,35 +5112,35 @@ var tableBodyController = (props) => {
5106
5112
  };
5107
5113
 
5108
5114
  // src/widget/advance/table/table-head/controller.ts
5109
- var import_store8 = require("@fctc/interface-logic/store");
5115
+ var import_store9 = require("@fctc/interface-logic/store");
5110
5116
  var tableHeadController = (props) => {
5111
5117
  const { typeTable, rows, selectedRowKeysRef } = props;
5112
- const appDispatch = (0, import_store8.useAppDispatch)();
5113
- const { groupByDomain } = (0, import_store8.useAppSelector)(import_store8.selectSearch);
5118
+ const appDispatch = (0, import_store9.useAppDispatch)();
5119
+ const { groupByDomain } = (0, import_store9.useAppSelector)(import_store9.selectSearch);
5114
5120
  const handleCheckBoxAll = (event) => {
5115
5121
  if (event?.target?.checked && typeTable === "list") {
5116
5122
  const allRowKeys = Array.isArray(rows) ? rows.map((record) => record?.id) : [];
5117
- appDispatch((0, import_store8.setSelectedRowKeys)(allRowKeys));
5123
+ appDispatch((0, import_store9.setSelectedRowKeys)(allRowKeys));
5118
5124
  } else if (event?.target?.checked && typeTable === "group") {
5119
5125
  const rowsIDs = document.querySelectorAll("tr[data-row-id]");
5120
5126
  const ids = Array.from(rowsIDs)?.map(
5121
5127
  (row) => Number(row?.getAttribute("data-row-id"))
5122
5128
  );
5123
5129
  if (ids?.length > 0) {
5124
- appDispatch((0, import_store8.setSelectedRowKeys)(ids));
5130
+ appDispatch((0, import_store9.setSelectedRowKeys)(ids));
5125
5131
  } else {
5126
5132
  const sum = countSum(
5127
5133
  rows,
5128
5134
  typeof groupByDomain === "object" ? groupByDomain?.contexts?.[0]?.group_by : void 0
5129
5135
  );
5130
5136
  const keys = Array.from({ length: sum }, (_) => void 0);
5131
- appDispatch((0, import_store8.setSelectedRowKeys)(keys));
5137
+ appDispatch((0, import_store9.setSelectedRowKeys)(keys));
5132
5138
  }
5133
5139
  if (selectedRowKeysRef) {
5134
5140
  selectedRowKeysRef.current = [];
5135
5141
  }
5136
5142
  } else {
5137
- appDispatch((0, import_store8.setSelectedRowKeys)([]));
5143
+ appDispatch((0, import_store9.setSelectedRowKeys)([]));
5138
5144
  }
5139
5145
  };
5140
5146
  return {
@@ -5144,7 +5150,7 @@ var tableHeadController = (props) => {
5144
5150
 
5145
5151
  // src/widget/advance/table/table-view/controller.ts
5146
5152
  var import_react16 = require("react");
5147
- var import_store9 = require("@fctc/interface-logic/store");
5153
+ var import_store10 = require("@fctc/interface-logic/store");
5148
5154
  var import_utils5 = require("@fctc/interface-logic/utils");
5149
5155
  var tableController = ({ data }) => {
5150
5156
  const [rows, setRows] = (0, import_react16.useState)(data.records || []);
@@ -5992,7 +5998,7 @@ var i18n_default = import_i18next.default;
5992
5998
 
5993
5999
  // src/widget/advance/table/table-group/controller.ts
5994
6000
  var import_hooks13 = require("@fctc/interface-logic/hooks");
5995
- var import_store10 = require("@fctc/interface-logic/store");
6001
+ var import_store11 = require("@fctc/interface-logic/store");
5996
6002
 
5997
6003
  // src/environment.ts
5998
6004
  var environment_exports = {};
@@ -6020,9 +6026,9 @@ var tableGroupController = (props) => {
6020
6026
  selectedRowKeysRef
6021
6027
  } = props;
6022
6028
  const [pageGroup, setPageGroup] = (0, import_react17.useState)(0);
6023
- const { groupByDomain, selectedTags } = (0, import_store10.useAppSelector)(import_store10.selectSearch);
6024
- const { selectedRowKeys } = (0, import_store10.useAppSelector)(import_store10.selectList);
6025
- const appDispatch = (0, import_store10.useAppDispatch)();
6029
+ const { groupByDomain, selectedTags } = (0, import_store11.useAppSelector)(import_store11.selectSearch);
6030
+ const { selectedRowKeys } = (0, import_store11.useAppSelector)(import_store11.selectList);
6031
+ const appDispatch = (0, import_store11.useAppDispatch)();
6026
6032
  const { toDataJS } = (0, import_hooks13.useOdooDataTransform)();
6027
6033
  const initVal = toDataJS(row, viewData, model);
6028
6034
  const [isShowGroup, setIsShowGroup] = (0, import_react17.useState)(false);
@@ -6108,14 +6114,14 @@ var tableGroupController = (props) => {
6108
6114
  const filteredIds = selectedRowKeys.filter(
6109
6115
  (id) => !ids.includes(id)
6110
6116
  );
6111
- appDispatch((0, import_store10.setSelectedRowKeys)(filteredIds));
6117
+ appDispatch((0, import_store11.setSelectedRowKeys)(filteredIds));
6112
6118
  } else if (!isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && checkedAll && !allIdsNull && isQueryFetched) {
6113
6119
  const clonedKeys = [...selectedRowKeys];
6114
- appDispatch((0, import_store10.setSelectedRowKeys)([...clonedKeys, -1]));
6115
- setTimeout(() => appDispatch((0, import_store10.setSelectedRowKeys)(clonedKeys)), 500);
6120
+ appDispatch((0, import_store11.setSelectedRowKeys)([...clonedKeys, -1]));
6121
+ setTimeout(() => appDispatch((0, import_store11.setSelectedRowKeys)(clonedKeys)), 500);
6116
6122
  } else if (isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && !checkedAll && !allIdsNull) {
6117
6123
  const filteredKeys = selectedRowKeys.filter((id) => id > -1);
6118
- appDispatch((0, import_store10.setSelectedRowKeys)(filteredKeys));
6124
+ appDispatch((0, import_store11.setSelectedRowKeys)(filteredKeys));
6119
6125
  }
6120
6126
  toggleShowGroup();
6121
6127
  };
@@ -6124,8 +6130,8 @@ var tableGroupController = (props) => {
6124
6130
  return;
6125
6131
  }
6126
6132
  const clonedKeys = [...selectedRowKeys];
6127
- (0, import_store10.setSelectedRowKeys)([...clonedKeys, -1]);
6128
- setTimeout(() => (0, import_store10.setSelectedRowKeys)(clonedKeys), 500);
6133
+ (0, import_store11.setSelectedRowKeys)([...clonedKeys, -1]);
6134
+ setTimeout(() => (0, import_store11.setSelectedRowKeys)(clonedKeys), 500);
6129
6135
  }, [isQueryFetched]);
6130
6136
  return {
6131
6137
  handleExpandChildGroup,
@@ -6168,10 +6174,6 @@ var import_react18 = require("react");
6168
6174
  var provider_exports = {};
6169
6175
  __reExport(provider_exports, require("@fctc/interface-logic/provider"));
6170
6176
 
6171
- // src/store.ts
6172
- var store_exports = {};
6173
- __reExport(store_exports, require("@fctc/interface-logic/store"));
6174
-
6175
6177
  // src/widget/advance/search/controller.ts
6176
6178
  var searchController = ({
6177
6179
  viewData,
@@ -6191,7 +6193,6 @@ var searchController = ({
6191
6193
  const [searchMap, setSearchMap] = (0, import_react18.useState)({});
6192
6194
  const [isReadyFormatDomain, setIsReadyFormatDomain] = (0, import_react18.useState)(false);
6193
6195
  const [didInit, setDidInit] = (0, import_react18.useState)(false);
6194
- const dispatch = (0, store_exports.useAppDispatch)();
6195
6196
  const aid = actionData?.id;
6196
6197
  const model = actionData?.res_model;
6197
6198
  const domainAction = actionData?.domain ? Array.isArray(actionData?.domain) ? [...actionData?.domain] : (0, import_utils6.evalJSONDomain)(actionData?.domain, contextSearch) : [];
@@ -6330,7 +6331,6 @@ var searchController = ({
6330
6331
  contexts,
6331
6332
  fields
6332
6333
  };
6333
- dispatch((0, store_exports.setGroupByDomain)(groupByTag));
6334
6334
  return groupByTag;
6335
6335
  }
6336
6336
  }
@@ -6497,13 +6497,14 @@ var searchController = ({
6497
6497
  clearSearch,
6498
6498
  setSelectedTags,
6499
6499
  removeSearchItems,
6500
- onSearchString: onChangeSearchInput
6500
+ onSearchString: onChangeSearchInput,
6501
+ handleAddTagSearch
6501
6502
  };
6502
6503
  };
6503
6504
 
6504
6505
  // src/widget/basic/many2many-field/controller.ts
6505
6506
  var import_environment8 = require("@fctc/interface-logic/environment");
6506
- var import_store12 = require("@fctc/interface-logic/store");
6507
+ var import_store13 = require("@fctc/interface-logic/store");
6507
6508
  var import_utils7 = require("@fctc/interface-logic/utils");
6508
6509
  var many2manyFieldController = (props) => {
6509
6510
  const {
@@ -6521,14 +6522,14 @@ var many2manyFieldController = (props) => {
6521
6522
  options,
6522
6523
  sessionStorageUtils
6523
6524
  } = props;
6524
- const appDispatch = (0, import_store12.useAppDispatch)();
6525
+ const appDispatch = (0, import_store13.useAppDispatch)();
6525
6526
  const actionData = sessionStorageUtils.getActionData();
6526
6527
  const [debouncedPage] = useDebounce(page, 500);
6527
6528
  const [order, setOrder] = (0, import_react19.useState)();
6528
6529
  const [isLoadedData, setIsLoadedData] = (0, import_react19.useState)(false);
6529
6530
  const [domainMany2Many, setDomainMany2Many] = (0, import_react19.useState)(domain);
6530
6531
  const env = (0, import_environment8.getEnv)();
6531
- const { selectedTags } = (0, import_store12.useAppSelector)(import_store12.selectSearch);
6532
+ const { selectedTags } = (0, import_store13.useAppSelector)(import_store13.selectSearch);
6532
6533
  const viewParams = {
6533
6534
  model: relation,
6534
6535
  views: [
@@ -6571,8 +6572,8 @@ var many2manyFieldController = (props) => {
6571
6572
  const fetchData = async () => {
6572
6573
  try {
6573
6574
  setDomainMany2Many(domain);
6574
- appDispatch((0, import_store12.setFirstDomain)(domain));
6575
- appDispatch((0, import_store12.setViewDataStore)(viewResponse));
6575
+ appDispatch((0, import_store13.setFirstDomain)(domain));
6576
+ appDispatch((0, import_store13.setViewDataStore)(viewResponse));
6576
6577
  const modalData = viewResponse?.views?.list?.fields.map((field) => ({
6577
6578
  ...viewResponse?.models?.[String(model)]?.[field?.name],
6578
6579
  ...field
@@ -6583,7 +6584,7 @@ var many2manyFieldController = (props) => {
6583
6584
  [`${aid}_${relation}_popupmany2many`]: modalData
6584
6585
  });
6585
6586
  }
6586
- appDispatch((0, import_store12.setPage)(0));
6587
+ appDispatch((0, import_store13.setPage)(0));
6587
6588
  } catch (err) {
6588
6589
  console.log(err);
6589
6590
  }
@@ -6619,12 +6620,12 @@ var many2manyFieldController = (props) => {
6619
6620
  fetchData();
6620
6621
  }
6621
6622
  return () => {
6622
- appDispatch((0, import_store12.setGroupByDomain)(null));
6623
+ appDispatch((0, import_store13.setGroupByDomain)(null));
6623
6624
  setFields((prevFields) => ({
6624
6625
  ...prevFields,
6625
6626
  [`${aid}_${relation}_popupmany2many`]: null
6626
6627
  }));
6627
- appDispatch((0, import_store12.setPage)(0));
6628
+ appDispatch((0, import_store13.setPage)(0));
6628
6629
  setSelectedRowKeys5([]);
6629
6630
  setDomainMany2Many(null);
6630
6631
  setIsLoadedData(false);
@@ -6737,7 +6738,7 @@ var many2manyTagsController = (props) => {
6737
6738
  // src/widget/basic/status-bar-field/controller.ts
6738
6739
  var import_react21 = require("react");
6739
6740
  var import_hooks16 = require("@fctc/interface-logic/hooks");
6740
- var import_store13 = require("@fctc/interface-logic/store");
6741
+ var import_store14 = require("@fctc/interface-logic/store");
6741
6742
  var import_utils9 = require("@fctc/interface-logic/utils");
6742
6743
  var durationController = (props) => {
6743
6744
  const {
@@ -6757,7 +6758,7 @@ var durationController = (props) => {
6757
6758
  };
6758
6759
  const [disabled, setDisabled] = (0, import_react21.useState)(false);
6759
6760
  const [modelStatus, setModalStatus] = (0, import_react21.useState)(false);
6760
- const { context } = (0, import_store13.useAppSelector)(import_store13.selectEnv);
6761
+ const { context } = (0, import_store14.useAppSelector)(import_store14.selectEnv);
6761
6762
  const queryKey = [`data-status-duration`, specification];
6762
6763
  const listDataProps = {
6763
6764
  model: relation,