@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/widget.mjs CHANGED
@@ -4296,7 +4296,7 @@ var many2oneButtonController = (props) => {
4296
4296
  };
4297
4297
 
4298
4298
  // src/widget/basic/many2many-field/controller.ts
4299
- import { useEffect as useEffect15, useMemo as useMemo12, useState as useState11 } from "react";
4299
+ import { useEffect as useEffect15, useMemo as useMemo13, useState as useState11 } from "react";
4300
4300
 
4301
4301
  // src/hooks.ts
4302
4302
  var hooks_exports = {};
@@ -4431,10 +4431,24 @@ var useDetail = (accessToken, sub) => {
4431
4431
  };
4432
4432
 
4433
4433
  // src/hooks/core/use-list-data.ts
4434
- import { useMemo as useMemo3, useState as useState5 } from "react";
4434
+ import { useMemo as useMemo4, useState as useState5 } from "react";
4435
+
4436
+ // src/utils/function.ts
4437
+ import {
4438
+ useCallback as useCallback2,
4439
+ useEffect as useEffect5,
4440
+ useMemo as useMemo3,
4441
+ useReducer,
4442
+ useRef as useRef2,
4443
+ useState as useState4
4444
+ } from "react";
4445
+
4446
+ // src/store.ts
4447
+ var store_exports = {};
4448
+ __reExport(store_exports, store_star);
4449
+ import * as store_star from "@fctc/interface-logic/store";
4435
4450
 
4436
4451
  // src/utils/function.ts
4437
- import { useCallback as useCallback2, useEffect as useEffect5, useReducer, useRef as useRef2, useState as useState4 } from "react";
4438
4452
  var countSum = (data, field) => {
4439
4453
  if (!data || !field) return 0;
4440
4454
  return data.reduce(
@@ -4590,9 +4604,9 @@ function useStorageState(key) {
4590
4604
  // src/hooks/core/use-list-data.ts
4591
4605
  import { useModel, useGetListData } from "@fctc/interface-logic/hooks";
4592
4606
  import {
4593
- useAppSelector as useAppSelector2,
4594
- selectSearch,
4595
- selectList
4607
+ useAppSelector as useAppSelector3,
4608
+ selectSearch as selectSearch2,
4609
+ selectList as selectList2
4596
4610
  } from "@fctc/interface-logic/store";
4597
4611
  import {
4598
4612
  evalJSONDomain as evalJSONDomain3,
@@ -4603,13 +4617,13 @@ var useListData = ({
4603
4617
  context,
4604
4618
  viewResponse
4605
4619
  }) => {
4606
- const { groupByDomain } = useAppSelector2(selectSearch);
4620
+ const { groupByDomain } = useAppSelector3(selectSearch2);
4607
4621
  const initModel = useModel();
4608
4622
  const [type, setType] = useState5("list");
4609
4623
  const [mode, setMode] = useState5("month");
4610
4624
  const [currentDate, setCurrentDate] = useState5(/* @__PURE__ */ new Date());
4611
- const { pageLimit, page, order } = useAppSelector2(selectList);
4612
- const listDataProps = useMemo3(() => {
4625
+ const { pageLimit, page, order } = useAppSelector3(selectList2);
4626
+ const listDataProps = useMemo4(() => {
4613
4627
  const actData = action?.result;
4614
4628
  if (!viewResponse || !actData || !context) {
4615
4629
  return null;
@@ -4670,7 +4684,7 @@ var useListData = ({
4670
4684
  };
4671
4685
 
4672
4686
  // src/hooks/core/use-menu.ts
4673
- import { useEffect as useEffect6, useMemo as useMemo4, useState as useState6 } from "react";
4687
+ import { useEffect as useEffect6, useMemo as useMemo5, useState as useState6 } from "react";
4674
4688
 
4675
4689
  // src/utils/constants.ts
4676
4690
  var languages = [
@@ -4689,7 +4703,7 @@ var useMenu = ({ context }) => {
4689
4703
  const menuData = useGetMenu(context, !!context);
4690
4704
  const [menuid, setMenuId] = useState6(void 0);
4691
4705
  const [action, setAction] = useCallAction();
4692
- const configedIconData = useMemo4(() => {
4706
+ const configedIconData = useMemo5(() => {
4693
4707
  const data = menuData.data;
4694
4708
  return data?.map((item) => {
4695
4709
  return {
@@ -4736,7 +4750,7 @@ var useMenu = ({ context }) => {
4736
4750
 
4737
4751
  // src/hooks/core/use-profile.ts
4738
4752
  import { useQuery as useQuery2 } from "@tanstack/react-query";
4739
- import { useEffect as useEffect7, useMemo as useMemo5 } from "react";
4753
+ import { useEffect as useEffect7, useMemo as useMemo6 } from "react";
4740
4754
  import { useTranslation } from "react-i18next";
4741
4755
  import { getEnv as getEnv5 } from "@fctc/interface-logic/environment";
4742
4756
  import { useGetProfile } from "@fctc/interface-logic/hooks";
@@ -4764,7 +4778,7 @@ var useProfile = (accessToken) => {
4764
4778
  i18n2.changeLanguage(userLocale?.id.split("_")[0]);
4765
4779
  }
4766
4780
  }, [dispatch, userInfoQuery.data]);
4767
- const context = useMemo5(() => {
4781
+ const context = useMemo6(() => {
4768
4782
  if (userInfoQuery.data?.sub && userInfoQuery.data?.locale) {
4769
4783
  return {
4770
4784
  uid: Number(userInfoQuery.data.sub),
@@ -4786,13 +4800,13 @@ var useUser = (accessToken) => {
4786
4800
  };
4787
4801
 
4788
4802
  // src/hooks/core/use-view-v2.ts
4789
- import { useMemo as useMemo6 } from "react";
4803
+ import { useMemo as useMemo7 } from "react";
4790
4804
  import { useGetView } from "@fctc/interface-logic/hooks";
4791
4805
  var useViewV2 = ({
4792
4806
  action,
4793
4807
  context
4794
4808
  }) => {
4795
- const viewParams = useMemo6(() => {
4809
+ const viewParams = useMemo7(() => {
4796
4810
  if (!action?.result) {
4797
4811
  return void 0;
4798
4812
  }
@@ -4867,11 +4881,11 @@ var useAuth = () => {
4867
4881
  };
4868
4882
 
4869
4883
  // src/hooks/core/use-app-provider.tsx
4870
- import { createContext, useContext, useMemo as useMemo8 } from "react";
4884
+ import { createContext, useContext, useMemo as useMemo9 } from "react";
4871
4885
 
4872
4886
  // src/hooks/core/use-company.ts
4873
4887
  import { useQuery as useQuery3 } from "@tanstack/react-query";
4874
- import { useEffect as useEffect8, useMemo as useMemo7 } from "react";
4888
+ import { useEffect as useEffect8, useMemo as useMemo8 } from "react";
4875
4889
  import { getEnv as getEnv6 } from "@fctc/interface-logic/environment";
4876
4890
  import {
4877
4891
  useGetCurrentCompany,
@@ -4887,7 +4901,7 @@ var useCompany = (accessToken) => {
4887
4901
  queryFn: fetchCurrentCompany,
4888
4902
  enabled: !!accessToken
4889
4903
  });
4890
- const current_company_id = useMemo7(() => {
4904
+ const current_company_id = useMemo8(() => {
4891
4905
  return currentCompany.data?.current_company_id;
4892
4906
  }, [currentCompany.data]);
4893
4907
  useEffect8(() => {
@@ -4940,14 +4954,14 @@ var AppProvider = ({ children }) => {
4940
4954
  const auth = useAuth();
4941
4955
  const user = useUser(auth.accessToken);
4942
4956
  const company = use_company_default(auth.accessToken);
4943
- const menuContext = useMemo8(() => {
4957
+ const menuContext = useMemo9(() => {
4944
4958
  return combineContexts([user.context, company.context]);
4945
4959
  }, [user.context, company.context]);
4946
4960
  const menu = useMenu({ context: menuContext });
4947
- const action = useMemo8(() => {
4961
+ const action = useMemo9(() => {
4948
4962
  return menu.state.action;
4949
4963
  }, [menu.state.action]);
4950
- const viewContext = useMemo8(() => {
4964
+ const viewContext = useMemo9(() => {
4951
4965
  return combineContexts([
4952
4966
  menuContext,
4953
4967
  { ...evalJSONContext3(action?.result?.context) }
@@ -5039,7 +5053,7 @@ import * as hooks_star from "@fctc/interface-logic/hooks";
5039
5053
 
5040
5054
  // src/widget/advance/table/table-body/controller.ts
5041
5055
  import { useAppDispatch as useAppDispatch5, setSelectedRowKeys } from "@fctc/interface-logic/store";
5042
- import { useEffect as useEffect11, useMemo as useMemo9 } from "react";
5056
+ import { useEffect as useEffect11, useMemo as useMemo10 } from "react";
5043
5057
  var tableBodyController = (props) => {
5044
5058
  const {
5045
5059
  checkedAll,
@@ -5052,7 +5066,7 @@ var tableBodyController = (props) => {
5052
5066
  onClickRow
5053
5067
  } = props;
5054
5068
  const appDispatch = useAppDispatch5();
5055
- const checked = useMemo9(() => {
5069
+ const checked = useMemo10(() => {
5056
5070
  if (!row?.id) return false;
5057
5071
  if (selectedRowKeys?.includes(row.id)) {
5058
5072
  return true;
@@ -5107,14 +5121,14 @@ var tableBodyController = (props) => {
5107
5121
  // src/widget/advance/table/table-head/controller.ts
5108
5122
  import {
5109
5123
  useAppDispatch as useAppDispatch6,
5110
- useAppSelector as useAppSelector3,
5111
- selectSearch as selectSearch2,
5124
+ useAppSelector as useAppSelector4,
5125
+ selectSearch as selectSearch3,
5112
5126
  setSelectedRowKeys as setSelectedRowKeys2
5113
5127
  } from "@fctc/interface-logic/store";
5114
5128
  var tableHeadController = (props) => {
5115
5129
  const { typeTable, rows, selectedRowKeysRef } = props;
5116
5130
  const appDispatch = useAppDispatch6();
5117
- const { groupByDomain } = useAppSelector3(selectSearch2);
5131
+ const { groupByDomain } = useAppSelector4(selectSearch3);
5118
5132
  const handleCheckBoxAll = (event) => {
5119
5133
  if (event?.target?.checked && typeTable === "list") {
5120
5134
  const allRowKeys = Array.isArray(rows) ? rows.map((record) => record?.id) : [];
@@ -5147,11 +5161,11 @@ var tableHeadController = (props) => {
5147
5161
  };
5148
5162
 
5149
5163
  // src/widget/advance/table/table-view/controller.ts
5150
- import { useEffect as useEffect12, useMemo as useMemo10, useRef as useRef4, useState as useState8 } from "react";
5164
+ import { useEffect as useEffect12, useMemo as useMemo11, useRef as useRef4, useState as useState8 } from "react";
5151
5165
  import {
5152
- useAppSelector as useAppSelector4,
5153
- selectSearch as selectSearch3,
5154
- selectList as selectList2
5166
+ useAppSelector as useAppSelector5,
5167
+ selectSearch as selectSearch4,
5168
+ selectList as selectList3
5155
5169
  } from "@fctc/interface-logic/store";
5156
5170
  import { domainHelper } from "@fctc/interface-logic/utils";
5157
5171
  var tableController = ({ data }) => {
@@ -5230,7 +5244,7 @@ var tableController = ({ data }) => {
5230
5244
  };
5231
5245
 
5232
5246
  // src/widget/advance/table/table-group/controller.ts
5233
- import { useEffect as useEffect13, useMemo as useMemo11, useState as useState9 } from "react";
5247
+ import { useEffect as useEffect13, useMemo as useMemo12, useState as useState9 } from "react";
5234
5248
 
5235
5249
  // src/utils/i18n.ts
5236
5250
  import { initReactI18next } from "react-i18next";
@@ -6004,9 +6018,9 @@ import {
6004
6018
  useGetListData as useGetListData2
6005
6019
  } from "@fctc/interface-logic/hooks";
6006
6020
  import {
6007
- useAppSelector as useAppSelector5,
6008
- selectSearch as selectSearch4,
6009
- selectList as selectList3,
6021
+ useAppSelector as useAppSelector6,
6022
+ selectSearch as selectSearch5,
6023
+ selectList as selectList4,
6010
6024
  useAppDispatch as useAppDispatch7,
6011
6025
  setSelectedRowKeys as setSelectedRowKeys3
6012
6026
  } from "@fctc/interface-logic/store";
@@ -6038,8 +6052,8 @@ var tableGroupController = (props) => {
6038
6052
  selectedRowKeysRef
6039
6053
  } = props;
6040
6054
  const [pageGroup, setPageGroup] = useState9(0);
6041
- const { groupByDomain, selectedTags } = useAppSelector5(selectSearch4);
6042
- const { selectedRowKeys } = useAppSelector5(selectList3);
6055
+ const { groupByDomain, selectedTags } = useAppSelector6(selectSearch5);
6056
+ const { selectedRowKeys } = useAppSelector6(selectList4);
6043
6057
  const appDispatch = useAppDispatch7();
6044
6058
  const { toDataJS } = useOdooDataTransform();
6045
6059
  const initVal = toDataJS(row, viewData, model);
@@ -6048,7 +6062,7 @@ var tableGroupController = (props) => {
6048
6062
  fromStart: 1,
6049
6063
  fromEnd: 1
6050
6064
  });
6051
- const processedData = useMemo11(() => {
6065
+ const processedData = useMemo12(() => {
6052
6066
  const calculateColSpanEmpty = () => {
6053
6067
  const startIndex = columns.findIndex(
6054
6068
  (col) => col.field.type === "monetary" && typeof row[col.key] === "number" || col.field.aggregator === "sum"
@@ -6063,7 +6077,7 @@ var tableGroupController = (props) => {
6063
6077
  };
6064
6078
  return calculateColSpanEmpty();
6065
6079
  }, [columns, row]);
6066
- const shouldFetchData = useMemo11(() => {
6080
+ const shouldFetchData = useMemo12(() => {
6067
6081
  return !!isShowGroup;
6068
6082
  }, [isShowGroup]);
6069
6083
  const enabled = shouldFetchData && !!processedData;
@@ -6192,11 +6206,6 @@ var provider_exports = {};
6192
6206
  __reExport(provider_exports, provider_star);
6193
6207
  import * as provider_star from "@fctc/interface-logic/provider";
6194
6208
 
6195
- // src/store.ts
6196
- var store_exports = {};
6197
- __reExport(store_exports, store_star);
6198
- import * as store_star from "@fctc/interface-logic/store";
6199
-
6200
6209
  // src/widget/advance/search/controller.ts
6201
6210
  var searchController = ({
6202
6211
  viewData,
@@ -6216,7 +6225,6 @@ var searchController = ({
6216
6225
  const [searchMap, setSearchMap] = useState10({});
6217
6226
  const [isReadyFormatDomain, setIsReadyFormatDomain] = useState10(false);
6218
6227
  const [didInit, setDidInit] = useState10(false);
6219
- const dispatch = (0, store_exports.useAppDispatch)();
6220
6228
  const aid = actionData?.id;
6221
6229
  const model = actionData?.res_model;
6222
6230
  const domainAction = actionData?.domain ? Array.isArray(actionData?.domain) ? [...actionData?.domain] : evalJSONDomain4(actionData?.domain, contextSearch) : [];
@@ -6355,7 +6363,6 @@ var searchController = ({
6355
6363
  contexts,
6356
6364
  fields
6357
6365
  };
6358
- dispatch((0, store_exports.setGroupByDomain)(groupByTag));
6359
6366
  return groupByTag;
6360
6367
  }
6361
6368
  }
@@ -6522,20 +6529,21 @@ var searchController = ({
6522
6529
  clearSearch,
6523
6530
  setSelectedTags,
6524
6531
  removeSearchItems,
6525
- onSearchString: onChangeSearchInput
6532
+ onSearchString: onChangeSearchInput,
6533
+ handleAddTagSearch
6526
6534
  };
6527
6535
  };
6528
6536
 
6529
6537
  // src/widget/basic/many2many-field/controller.ts
6530
6538
  import { getEnv as getEnv8 } from "@fctc/interface-logic/environment";
6531
6539
  import {
6532
- useAppDispatch as useAppDispatch9,
6533
- useAppSelector as useAppSelector6,
6534
- selectSearch as selectSearch5,
6540
+ useAppDispatch as useAppDispatch8,
6541
+ useAppSelector as useAppSelector7,
6542
+ selectSearch as selectSearch6,
6535
6543
  setFirstDomain,
6536
6544
  setViewDataStore,
6537
6545
  setPage as setPage2,
6538
- setGroupByDomain as setGroupByDomain2
6546
+ setGroupByDomain
6539
6547
  } from "@fctc/interface-logic/store";
6540
6548
  import {
6541
6549
  evalJSONContext as evalJSONContext5,
@@ -6557,14 +6565,14 @@ var many2manyFieldController = (props) => {
6557
6565
  options,
6558
6566
  sessionStorageUtils
6559
6567
  } = props;
6560
- const appDispatch = useAppDispatch9();
6568
+ const appDispatch = useAppDispatch8();
6561
6569
  const actionData = sessionStorageUtils.getActionData();
6562
6570
  const [debouncedPage] = useDebounce(page, 500);
6563
6571
  const [order, setOrder] = useState11();
6564
6572
  const [isLoadedData, setIsLoadedData] = useState11(false);
6565
6573
  const [domainMany2Many, setDomainMany2Many] = useState11(domain);
6566
6574
  const env = getEnv8();
6567
- const { selectedTags } = useAppSelector6(selectSearch5);
6575
+ const { selectedTags } = useAppSelector7(selectSearch6);
6568
6576
  const viewParams = {
6569
6577
  model: relation,
6570
6578
  views: [
@@ -6577,7 +6585,7 @@ var many2manyFieldController = (props) => {
6577
6585
  viewParams,
6578
6586
  actionData
6579
6587
  );
6580
- const baseModel = useMemo12(
6588
+ const baseModel = useMemo13(
6581
6589
  () => ({
6582
6590
  name: String(relation),
6583
6591
  view: viewResponse || {},
@@ -6590,13 +6598,13 @@ var many2manyFieldController = (props) => {
6590
6598
  [model, viewResponse]
6591
6599
  );
6592
6600
  const initModel = (0, hooks_exports.useModel)();
6593
- const modelInstance = useMemo12(() => {
6601
+ const modelInstance = useMemo13(() => {
6594
6602
  if (viewResponse) {
6595
6603
  return initModel.initModel(baseModel);
6596
6604
  }
6597
6605
  return null;
6598
6606
  }, [baseModel, viewResponse]);
6599
- const specification = useMemo12(() => {
6607
+ const specification = useMemo13(() => {
6600
6608
  if (modelInstance) {
6601
6609
  return modelInstance.getSpecification();
6602
6610
  }
@@ -6655,7 +6663,7 @@ var many2manyFieldController = (props) => {
6655
6663
  fetchData();
6656
6664
  }
6657
6665
  return () => {
6658
- appDispatch(setGroupByDomain2(null));
6666
+ appDispatch(setGroupByDomain(null));
6659
6667
  setFields((prevFields) => ({
6660
6668
  ...prevFields,
6661
6669
  [`${aid}_${relation}_popupmany2many`]: null
@@ -6711,7 +6719,7 @@ var many2manyFieldController = (props) => {
6711
6719
  };
6712
6720
 
6713
6721
  // src/widget/basic/many2many-tags-field/controller.ts
6714
- import { useMemo as useMemo13 } from "react";
6722
+ import { useMemo as useMemo14 } from "react";
6715
6723
  import { WIDGETAVATAR, WIDGETCOLOR } from "@fctc/interface-logic/constants";
6716
6724
  import { getEnv as getEnv9 } from "@fctc/interface-logic/environment";
6717
6725
  import { useGetSelection as useGetSelection3 } from "@fctc/interface-logic/hooks";
@@ -6728,7 +6736,7 @@ var many2manyTagsController = (props) => {
6728
6736
  const isUser = relation === "res.users" || relation === "res.partner";
6729
6737
  const env = getEnv9();
6730
6738
  const addtionalFields = optionsFields ? evalJSONContext6(optionsFields) : null;
6731
- const domainObject = useMemo13(
6739
+ const domainObject = useMemo14(
6732
6740
  () => evalJSONDomain5(domain, JSON.parse(JSON.stringify(formValues || {}))),
6733
6741
  [domain, formValues]
6734
6742
  );
@@ -6773,7 +6781,7 @@ var many2manyTagsController = (props) => {
6773
6781
  // src/widget/basic/status-bar-field/controller.ts
6774
6782
  import { useState as useState12 } from "react";
6775
6783
  import { useGetListData as useGetListData4, useChangeStatus } from "@fctc/interface-logic/hooks";
6776
- import { useAppSelector as useAppSelector7, selectEnv as selectEnv2 } from "@fctc/interface-logic/store";
6784
+ import { useAppSelector as useAppSelector8, selectEnv as selectEnv2 } from "@fctc/interface-logic/store";
6777
6785
  import { evalJSONDomain as evalJSONDomain6 } from "@fctc/interface-logic/utils";
6778
6786
  var durationController = (props) => {
6779
6787
  const {
@@ -6793,7 +6801,7 @@ var durationController = (props) => {
6793
6801
  };
6794
6802
  const [disabled, setDisabled] = useState12(false);
6795
6803
  const [modelStatus, setModalStatus] = useState12(false);
6796
- const { context } = useAppSelector7(selectEnv2);
6804
+ const { context } = useAppSelector8(selectEnv2);
6797
6805
  const queryKey = [`data-status-duration`, specification];
6798
6806
  const listDataProps = {
6799
6807
  model: relation,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fctc/widget-logic",
3
- "version": "1.8.1",
3
+ "version": "1.8.3",
4
4
  "types": "dist/index.d.ts",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",