@fctc/widget-logic 4.6.6 → 4.6.7

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/hooks.js CHANGED
@@ -155,12 +155,8 @@ var useCallAction = () => {
155
155
  context
156
156
  }) => {
157
157
  try {
158
- const stableEnvContext = (0, import_react.useMemo)(
159
- () => env?.context,
160
- [env?.context?.lang]
161
- );
162
158
  const menuContext = {
163
- ...stableEnvContext,
159
+ ...env?.context,
164
160
  ...context
165
161
  };
166
162
  const loadRes = await queryLoadAction.mutateAsync({
package/dist/hooks.mjs CHANGED
@@ -105,13 +105,13 @@ import {
105
105
  } from "@fctc/interface-logic/hooks";
106
106
 
107
107
  // src/hooks/core/use-app-provider.tsx
108
- import { createContext, useContext, useMemo as useMemo6 } from "react";
108
+ import { createContext, useContext, useMemo as useMemo5 } from "react";
109
109
 
110
110
  // src/hooks/core/use-menu.ts
111
- import { useMemo as useMemo2, useState as useState2 } from "react";
111
+ import { useMemo, useState as useState2 } from "react";
112
112
 
113
113
  // src/hooks/core/use-call-action.ts
114
- import { useCallback, useMemo, useState } from "react";
114
+ import { useCallback, useState } from "react";
115
115
 
116
116
  // src/provider.ts
117
117
  var provider_exports = {};
@@ -135,12 +135,8 @@ var useCallAction = () => {
135
135
  context
136
136
  }) => {
137
137
  try {
138
- const stableEnvContext = useMemo(
139
- () => env?.context,
140
- [env?.context?.lang]
141
- );
142
138
  const menuContext = {
143
- ...stableEnvContext,
139
+ ...env?.context,
144
140
  ...context
145
141
  };
146
142
  const loadRes = await queryLoadAction.mutateAsync({
@@ -374,7 +370,7 @@ var useMenu = ({
374
370
  defaultService
375
371
  );
376
372
  const [menuId, setMenuId] = useState2(void 0);
377
- const configedIconData = useMemo2(() => {
373
+ const configedIconData = useMemo(() => {
378
374
  const data = menuData.data;
379
375
  return data?.map((item) => {
380
376
  return {
@@ -456,7 +452,7 @@ var useDetail = (sub) => {
456
452
 
457
453
  // src/hooks/core/use-profile.ts
458
454
  import { useQuery as useQuery2 } from "@tanstack/react-query";
459
- import { useEffect as useEffect3, useMemo as useMemo3 } from "react";
455
+ import { useEffect as useEffect3, useMemo as useMemo2 } from "react";
460
456
  import { useTranslation } from "react-i18next";
461
457
  var useProfile = ({ service }) => {
462
458
  const { setUid, setLang, setUserInfo, env } = (0, provider_exports.useEnv)();
@@ -479,7 +475,7 @@ var useProfile = ({ service }) => {
479
475
  i18n.changeLanguage(userLocale?.id.split("_")[0]);
480
476
  }
481
477
  }, [userInfoQuery.isFetched]);
482
- const context = useMemo3(() => {
478
+ const context = useMemo2(() => {
483
479
  if (userInfoQuery.data?.sub && userInfoQuery.data?.locale) {
484
480
  return {
485
481
  uid: Number(userInfoQuery.data.sub),
@@ -503,7 +499,7 @@ var useUser = ({ service }) => {
503
499
  };
504
500
 
505
501
  // src/hooks/core/use-view-v2.ts
506
- import { useMemo as useMemo4 } from "react";
502
+ import { useMemo as useMemo3 } from "react";
507
503
  var useViewV2 = ({
508
504
  action,
509
505
  context,
@@ -512,7 +508,7 @@ var useViewV2 = ({
512
508
  xNode
513
509
  }) => {
514
510
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
515
- const viewParams = useMemo4(() => {
511
+ const viewParams = useMemo3(() => {
516
512
  if (!action || !action?.res_model) {
517
513
  return void 0;
518
514
  }
@@ -546,7 +542,7 @@ var useViewV2 = ({
546
542
 
547
543
  // src/hooks/core/use-company.ts
548
544
  import { useQuery as useQuery3 } from "@tanstack/react-query";
549
- import { useEffect as useEffect4, useMemo as useMemo5 } from "react";
545
+ import { useEffect as useEffect4, useMemo as useMemo4 } from "react";
550
546
  var useCompany = ({ service }) => {
551
547
  const { setAllowCompanies, setCompanies, setDefaultCompany, env } = (0, provider_exports.useEnv)();
552
548
  const { useGetCurrentCompany: useGetCurrentCompany2, useGetCompanyInfo: useGetCompanyInfo2 } = (0, provider_exports.useService)();
@@ -561,7 +557,7 @@ var useCompany = ({ service }) => {
561
557
  queryFn: fetchCurrentCompany,
562
558
  enabled: !!env?.defaultCompany
563
559
  });
564
- const current_company_id = useMemo5(() => {
560
+ const current_company_id = useMemo4(() => {
565
561
  return currentCompany.data?.current_company_id;
566
562
  }, [currentCompany.data]);
567
563
  useEffect4(() => {
@@ -612,7 +608,7 @@ var AppProvider = ({
612
608
  const { env } = (0, provider_exports.useEnv)();
613
609
  const user = useUser({ service: env.default_service });
614
610
  const company = useCompany({ service: env.default_service });
615
- const menuContext = useMemo6(() => {
611
+ const menuContext = useMemo5(() => {
616
612
  return combineContexts([
617
613
  {
618
614
  ...user?.context,
@@ -629,10 +625,10 @@ var AppProvider = ({
629
625
  domain: menuParams?.domain,
630
626
  defaultService: env.default_service
631
627
  });
632
- const action = useMemo6(() => {
628
+ const action = useMemo5(() => {
633
629
  return menu?.state?.action;
634
630
  }, [menu?.state?.action, env?.context?.lang]);
635
- const viewContext = useMemo6(() => {
631
+ const viewContext = useMemo5(() => {
636
632
  return combineContexts([
637
633
  menuContext,
638
634
  { ...(0, utils_exports.evalJSONContext)(action?.context) }
@@ -736,7 +732,7 @@ var useGetAction = ({
736
732
  };
737
733
 
738
734
  // src/hooks/core/use-get-specification.ts
739
- import { useMemo as useMemo7 } from "react";
735
+ import { useMemo as useMemo6 } from "react";
740
736
  var useGetSpecification = ({
741
737
  model,
742
738
  viewData,
@@ -748,13 +744,13 @@ var useGetSpecification = ({
748
744
  fields
749
745
  };
750
746
  const initModel = useModel();
751
- const modelInstance = useMemo7(() => {
747
+ const modelInstance = useMemo6(() => {
752
748
  if (viewData) {
753
749
  return initModel.initModel(baseModel);
754
750
  }
755
751
  return null;
756
752
  }, [baseModel, viewData, model]);
757
- const specification = useMemo7(() => {
753
+ const specification = useMemo6(() => {
758
754
  if (modelInstance) {
759
755
  return modelInstance.getSpecification();
760
756
  }
@@ -764,7 +760,7 @@ var useGetSpecification = ({
764
760
  };
765
761
 
766
762
  // src/hooks/core/use-list-data.ts
767
- import { useMemo as useMemo8, useState as useState5 } from "react";
763
+ import { useMemo as useMemo7, useState as useState5 } from "react";
768
764
  import {
769
765
  evalJSONDomain,
770
766
  formatSortingString,
@@ -908,7 +904,7 @@ var useListData = ({
908
904
  viewData,
909
905
  fields: mode === "kanban" ? viewData?.views?.kanban?.fields : viewData?.views?.list?.fields
910
906
  });
911
- const listDataProps = useMemo8(() => {
907
+ const listDataProps = useMemo7(() => {
912
908
  if (!viewData || !action || !context) {
913
909
  return null;
914
910
  }
package/dist/index.js CHANGED
@@ -4205,12 +4205,8 @@ var useCallAction = () => {
4205
4205
  context
4206
4206
  }) => {
4207
4207
  try {
4208
- const stableEnvContext = (0, import_react.useMemo)(
4209
- () => env?.context,
4210
- [env?.context?.lang]
4211
- );
4212
4208
  const menuContext = {
4213
- ...stableEnvContext,
4209
+ ...env?.context,
4214
4210
  ...context
4215
4211
  };
4216
4212
  const loadRes = await queryLoadAction.mutateAsync({
package/dist/index.mjs CHANGED
@@ -4264,13 +4264,13 @@ import {
4264
4264
  } from "@fctc/interface-logic/hooks";
4265
4265
 
4266
4266
  // src/hooks/core/use-app-provider.tsx
4267
- import { createContext, useContext, useMemo as useMemo6 } from "react";
4267
+ import { createContext, useContext, useMemo as useMemo5 } from "react";
4268
4268
 
4269
4269
  // src/hooks/core/use-menu.ts
4270
- import { useMemo as useMemo2, useState as useState2 } from "react";
4270
+ import { useMemo, useState as useState2 } from "react";
4271
4271
 
4272
4272
  // src/hooks/core/use-call-action.ts
4273
- import { useCallback, useMemo, useState } from "react";
4273
+ import { useCallback, useState } from "react";
4274
4274
 
4275
4275
  // src/provider.ts
4276
4276
  var provider_exports = {};
@@ -4294,12 +4294,8 @@ var useCallAction = () => {
4294
4294
  context
4295
4295
  }) => {
4296
4296
  try {
4297
- const stableEnvContext = useMemo(
4298
- () => env?.context,
4299
- [env?.context?.lang]
4300
- );
4301
4297
  const menuContext = {
4302
- ...stableEnvContext,
4298
+ ...env?.context,
4303
4299
  ...context
4304
4300
  };
4305
4301
  const loadRes = await queryLoadAction.mutateAsync({
@@ -4533,7 +4529,7 @@ var useMenu = ({
4533
4529
  defaultService
4534
4530
  );
4535
4531
  const [menuId, setMenuId] = useState2(void 0);
4536
- const configedIconData = useMemo2(() => {
4532
+ const configedIconData = useMemo(() => {
4537
4533
  const data = menuData.data;
4538
4534
  return data?.map((item) => {
4539
4535
  return {
@@ -4615,7 +4611,7 @@ var useDetail = (sub) => {
4615
4611
 
4616
4612
  // src/hooks/core/use-profile.ts
4617
4613
  import { useQuery as useQuery2 } from "@tanstack/react-query";
4618
- import { useEffect as useEffect3, useMemo as useMemo3 } from "react";
4614
+ import { useEffect as useEffect3, useMemo as useMemo2 } from "react";
4619
4615
  import { useTranslation } from "react-i18next";
4620
4616
  var useProfile = ({ service }) => {
4621
4617
  const { setUid, setLang, setUserInfo, env } = (0, provider_exports.useEnv)();
@@ -4638,7 +4634,7 @@ var useProfile = ({ service }) => {
4638
4634
  i18n2.changeLanguage(userLocale?.id.split("_")[0]);
4639
4635
  }
4640
4636
  }, [userInfoQuery.isFetched]);
4641
- const context = useMemo3(() => {
4637
+ const context = useMemo2(() => {
4642
4638
  if (userInfoQuery.data?.sub && userInfoQuery.data?.locale) {
4643
4639
  return {
4644
4640
  uid: Number(userInfoQuery.data.sub),
@@ -4662,7 +4658,7 @@ var useUser = ({ service }) => {
4662
4658
  };
4663
4659
 
4664
4660
  // src/hooks/core/use-view-v2.ts
4665
- import { useMemo as useMemo4 } from "react";
4661
+ import { useMemo as useMemo3 } from "react";
4666
4662
  var useViewV2 = ({
4667
4663
  action,
4668
4664
  context,
@@ -4671,7 +4667,7 @@ var useViewV2 = ({
4671
4667
  xNode
4672
4668
  }) => {
4673
4669
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
4674
- const viewParams = useMemo4(() => {
4670
+ const viewParams = useMemo3(() => {
4675
4671
  if (!action || !action?.res_model) {
4676
4672
  return void 0;
4677
4673
  }
@@ -4705,7 +4701,7 @@ var useViewV2 = ({
4705
4701
 
4706
4702
  // src/hooks/core/use-company.ts
4707
4703
  import { useQuery as useQuery3 } from "@tanstack/react-query";
4708
- import { useEffect as useEffect4, useMemo as useMemo5 } from "react";
4704
+ import { useEffect as useEffect4, useMemo as useMemo4 } from "react";
4709
4705
  var useCompany = ({ service }) => {
4710
4706
  const { setAllowCompanies, setCompanies, setDefaultCompany, env } = (0, provider_exports.useEnv)();
4711
4707
  const { useGetCurrentCompany: useGetCurrentCompany2, useGetCompanyInfo: useGetCompanyInfo2 } = (0, provider_exports.useService)();
@@ -4720,7 +4716,7 @@ var useCompany = ({ service }) => {
4720
4716
  queryFn: fetchCurrentCompany,
4721
4717
  enabled: !!env?.defaultCompany
4722
4718
  });
4723
- const current_company_id = useMemo5(() => {
4719
+ const current_company_id = useMemo4(() => {
4724
4720
  return currentCompany.data?.current_company_id;
4725
4721
  }, [currentCompany.data]);
4726
4722
  useEffect4(() => {
@@ -4771,7 +4767,7 @@ var AppProvider = ({
4771
4767
  const { env } = (0, provider_exports.useEnv)();
4772
4768
  const user = useUser({ service: env.default_service });
4773
4769
  const company = useCompany({ service: env.default_service });
4774
- const menuContext = useMemo6(() => {
4770
+ const menuContext = useMemo5(() => {
4775
4771
  return combineContexts([
4776
4772
  {
4777
4773
  ...user?.context,
@@ -4788,10 +4784,10 @@ var AppProvider = ({
4788
4784
  domain: menuParams?.domain,
4789
4785
  defaultService: env.default_service
4790
4786
  });
4791
- const action = useMemo6(() => {
4787
+ const action = useMemo5(() => {
4792
4788
  return menu?.state?.action;
4793
4789
  }, [menu?.state?.action, env?.context?.lang]);
4794
- const viewContext = useMemo6(() => {
4790
+ const viewContext = useMemo5(() => {
4795
4791
  return combineContexts([
4796
4792
  menuContext,
4797
4793
  { ...(0, utils_exports.evalJSONContext)(action?.context) }
@@ -4895,7 +4891,7 @@ var useGetAction = ({
4895
4891
  };
4896
4892
 
4897
4893
  // src/hooks/core/use-get-specification.ts
4898
- import { useMemo as useMemo7 } from "react";
4894
+ import { useMemo as useMemo6 } from "react";
4899
4895
  var useGetSpecification = ({
4900
4896
  model,
4901
4897
  viewData,
@@ -4907,13 +4903,13 @@ var useGetSpecification = ({
4907
4903
  fields
4908
4904
  };
4909
4905
  const initModel = useModel();
4910
- const modelInstance = useMemo7(() => {
4906
+ const modelInstance = useMemo6(() => {
4911
4907
  if (viewData) {
4912
4908
  return initModel.initModel(baseModel);
4913
4909
  }
4914
4910
  return null;
4915
4911
  }, [baseModel, viewData, model]);
4916
- const specification = useMemo7(() => {
4912
+ const specification = useMemo6(() => {
4917
4913
  if (modelInstance) {
4918
4914
  return modelInstance.getSpecification();
4919
4915
  }
@@ -4923,7 +4919,7 @@ var useGetSpecification = ({
4923
4919
  };
4924
4920
 
4925
4921
  // src/hooks/core/use-list-data.ts
4926
- import { useMemo as useMemo8, useState as useState5 } from "react";
4922
+ import { useMemo as useMemo7, useState as useState5 } from "react";
4927
4923
  import {
4928
4924
  evalJSONDomain,
4929
4925
  formatSortingString,
@@ -5067,7 +5063,7 @@ var useListData = ({
5067
5063
  viewData,
5068
5064
  fields: mode === "kanban" ? viewData?.views?.kanban?.fields : viewData?.views?.list?.fields
5069
5065
  });
5070
- const listDataProps = useMemo8(() => {
5066
+ const listDataProps = useMemo7(() => {
5071
5067
  if (!viewData || !action || !context) {
5072
5068
  return null;
5073
5069
  }
@@ -5430,7 +5426,7 @@ var statusDropdownController = (props) => {
5430
5426
  };
5431
5427
 
5432
5428
  // src/widget/basic/many2one-field/controller.ts
5433
- import { useCallback as useCallback4, useEffect as useEffect10, useMemo as useMemo9, useState as useState7 } from "react";
5429
+ import { useCallback as useCallback4, useEffect as useEffect10, useMemo as useMemo8, useState as useState7 } from "react";
5434
5430
  var MANY2ONE_EXTERNAL = "many2one_external";
5435
5431
  var many2oneFieldController = (props) => {
5436
5432
  const {
@@ -5497,7 +5493,7 @@ var many2oneFieldController = (props) => {
5497
5493
  service: widget === MANY2ONE_EXTERNAL ? optionsObject?.service : service,
5498
5494
  xNode
5499
5495
  });
5500
- const selectOptions = useMemo9(() => {
5496
+ const selectOptions = useMemo8(() => {
5501
5497
  return dataOfSelection?.records?.map((val) => ({
5502
5498
  value: val?.id,
5503
5499
  label: val?.display_name || val?.name,
@@ -5508,7 +5504,7 @@ var many2oneFieldController = (props) => {
5508
5504
  setListOptions(selectOptions);
5509
5505
  setDomainModal(domainObject);
5510
5506
  }, [selectOptions]);
5511
- const parsedFormValues = useMemo9(
5507
+ const parsedFormValues = useMemo8(
5512
5508
  () => JSON.parse(
5513
5509
  JSON.stringify({
5514
5510
  ...formValues,
@@ -5865,7 +5861,7 @@ var many2manyFieldController = (props) => {
5865
5861
  };
5866
5862
 
5867
5863
  // src/widget/basic/many2many-tags-field/controller.ts
5868
- import { useCallback as useCallback5, useEffect as useEffect12, useMemo as useMemo10, useState as useState8 } from "react";
5864
+ import { useCallback as useCallback5, useEffect as useEffect12, useMemo as useMemo9, useState as useState8 } from "react";
5869
5865
  import { WIDGETAVATAR, WIDGETCOLOR } from "@fctc/interface-logic/constants";
5870
5866
  import { evalJSONContext as evalJSONContext5, evalJSONDomain as evalJSONDomain4 } from "@fctc/interface-logic/utils";
5871
5867
  var many2manyTagsController = (props) => {
@@ -5897,7 +5893,7 @@ var many2manyTagsController = (props) => {
5897
5893
  ...fieldContext ?? {},
5898
5894
  ...env?.context
5899
5895
  };
5900
- const parsedFormValues = useMemo10(
5896
+ const parsedFormValues = useMemo9(
5901
5897
  () => JSON.parse(
5902
5898
  JSON.stringify({
5903
5899
  ...formValues,
@@ -5938,7 +5934,7 @@ var many2manyTagsController = (props) => {
5938
5934
  xNode,
5939
5935
  enabled: false
5940
5936
  });
5941
- const selectOptions = useMemo10(() => {
5937
+ const selectOptions = useMemo9(() => {
5942
5938
  return dataOfSelection?.records?.map((val) => ({
5943
5939
  value: val.id,
5944
5940
  label: val.name ?? val.display_name,
@@ -6445,7 +6441,7 @@ var binaryFieldController = (props) => {
6445
6441
  };
6446
6442
 
6447
6443
  // src/widget/advance/table/table-head/controller.ts
6448
- import { useMemo as useMemo11, useRef as useRef5 } from "react";
6444
+ import { useMemo as useMemo10, useRef as useRef5 } from "react";
6449
6445
  var tableHeadController = (props) => {
6450
6446
  const {
6451
6447
  typeTable,
@@ -6458,19 +6454,19 @@ var tableHeadController = (props) => {
6458
6454
  const { rowIds: recordIds } = useGetRowIds(tableRef);
6459
6455
  const selectedRowKeysRef = useRef5(recordIds);
6460
6456
  const isGroupTable = typeTable === "group";
6461
- const recordsCheckedGroup = useMemo11(() => {
6457
+ const recordsCheckedGroup = useMemo10(() => {
6462
6458
  if (!rows || !groupByList) return 0;
6463
6459
  const groupBy = typeof groupByList === "object" ? groupByList?.contexts?.[0]?.group_by : void 0;
6464
6460
  return countSum(rows, groupBy);
6465
6461
  }, [rows, groupByList]);
6466
- const isAllGroupChecked = useMemo11(() => {
6462
+ const isAllGroupChecked = useMemo10(() => {
6467
6463
  if (!isGroupTable || !selectedRowKeys?.length) return false;
6468
6464
  const selectedLength = selectedRowKeys.filter((id) => id !== -1).length;
6469
6465
  const allRecordsSelected = recordIds.length === selectedRowKeys.length ? recordIds.length === selectedLength : false;
6470
6466
  const allGroupsSelected = recordsCheckedGroup === selectedRowKeys.length;
6471
6467
  return allGroupsSelected || allRecordsSelected;
6472
6468
  }, [isGroupTable, selectedRowKeys, recordIds, recordsCheckedGroup]);
6473
- const isAllNormalChecked = useMemo11(() => {
6469
+ const isAllNormalChecked = useMemo10(() => {
6474
6470
  if (isGroupTable || !selectedRowKeys?.length || !rows?.length) return false;
6475
6471
  return selectedRowKeys.length === rows.length && selectedRowKeys.every(
6476
6472
  (id) => rows.some((record) => record.id === id)
@@ -6511,19 +6507,19 @@ var tableHeadController = (props) => {
6511
6507
  };
6512
6508
 
6513
6509
  // src/widget/advance/table/table-view/controller.ts
6514
- import { useCallback as useCallback6, useEffect as useEffect14, useMemo as useMemo12, useState as useState13 } from "react";
6510
+ import { useCallback as useCallback6, useEffect as useEffect14, useMemo as useMemo11, useState as useState13 } from "react";
6515
6511
  import { domainHelper } from "@fctc/interface-logic/utils";
6516
6512
  var tableController = ({ data }) => {
6517
6513
  const [rows, setRows] = useState13([]);
6518
6514
  const [columnVisibility, setColumnVisibility] = useState13({});
6519
- const dataModelFields = useMemo12(() => {
6515
+ const dataModelFields = useMemo11(() => {
6520
6516
  return data?.fields?.map((field) => ({
6521
6517
  ...data.dataModel?.[field?.name],
6522
6518
  ...field,
6523
6519
  string: field?.string || data.dataModel?.[field?.name]?.string
6524
6520
  })) ?? [];
6525
6521
  }, [data?.fields, data?.dataModel]);
6526
- const mergeFields = useMemo12(
6522
+ const mergeFields = useMemo11(
6527
6523
  () => mergeButtons(dataModelFields),
6528
6524
  [dataModelFields]
6529
6525
  );
@@ -6552,7 +6548,7 @@ var tableController = ({ data }) => {
6552
6548
  useEffect14(() => {
6553
6549
  setRows(transformData(data?.records));
6554
6550
  }, [data?.records, transformData]);
6555
- const columns = useMemo12(() => {
6551
+ const columns = useMemo11(() => {
6556
6552
  try {
6557
6553
  return mergeFields?.filter((item) => {
6558
6554
  return item?.widget !== "details_Receive_money" && !(item?.column_invisible ? domainHelper.matchDomains(
@@ -6588,7 +6584,7 @@ var tableController = ({ data }) => {
6588
6584
  };
6589
6585
 
6590
6586
  // src/widget/advance/table/table-group/controller.ts
6591
- import { useEffect as useEffect15, useMemo as useMemo13, useState as useState14 } from "react";
6587
+ import { useEffect as useEffect15, useMemo as useMemo12, useState as useState14 } from "react";
6592
6588
  import { useAppSelector, selectList } from "@fctc/interface-logic/store";
6593
6589
  var tableGroupController = (props) => {
6594
6590
  const { env } = (0, provider_exports.useEnv)();
@@ -6613,7 +6609,7 @@ var tableGroupController = (props) => {
6613
6609
  fromEnd: 1
6614
6610
  });
6615
6611
  const domain = row?.__domain;
6616
- const processedData = useMemo13(() => {
6612
+ const processedData = useMemo12(() => {
6617
6613
  const calculateColSpanEmpty = () => {
6618
6614
  const startIndex = columns.findIndex(
6619
6615
  (col) => col.field.type === "monetary" && typeof row[col.key] === "number" || col.field.aggregator === "sum"
@@ -6628,7 +6624,7 @@ var tableGroupController = (props) => {
6628
6624
  };
6629
6625
  return calculateColSpanEmpty();
6630
6626
  }, [columns, row]);
6631
- const shouldFetchData = useMemo13(() => {
6627
+ const shouldFetchData = useMemo12(() => {
6632
6628
  return !!isShowGroup;
6633
6629
  }, [isShowGroup]);
6634
6630
  const enabled = shouldFetchData && !!processedData;
package/dist/widget.mjs CHANGED
@@ -4091,7 +4091,7 @@ var statusDropdownController = (props) => {
4091
4091
  };
4092
4092
 
4093
4093
  // src/widget/basic/many2one-field/controller.ts
4094
- import { useCallback as useCallback4, useEffect as useEffect10, useMemo as useMemo9, useState as useState7 } from "react";
4094
+ import { useCallback as useCallback4, useEffect as useEffect10, useMemo as useMemo8, useState as useState7 } from "react";
4095
4095
 
4096
4096
  // src/hooks.ts
4097
4097
  import {
@@ -4182,13 +4182,13 @@ import {
4182
4182
  } from "@fctc/interface-logic/hooks";
4183
4183
 
4184
4184
  // src/hooks/core/use-app-provider.tsx
4185
- import { createContext, useContext, useMemo as useMemo6 } from "react";
4185
+ import { createContext, useContext, useMemo as useMemo5 } from "react";
4186
4186
 
4187
4187
  // src/hooks/core/use-menu.ts
4188
- import { useMemo as useMemo2, useState as useState3 } from "react";
4188
+ import { useMemo, useState as useState3 } from "react";
4189
4189
 
4190
4190
  // src/hooks/core/use-call-action.ts
4191
- import { useCallback, useMemo, useState as useState2 } from "react";
4191
+ import { useCallback, useState as useState2 } from "react";
4192
4192
 
4193
4193
  // src/provider.ts
4194
4194
  var provider_exports = {};
@@ -4383,15 +4383,15 @@ import { useEffect as useEffect3 } from "react";
4383
4383
 
4384
4384
  // src/hooks/core/use-profile.ts
4385
4385
  import { useQuery as useQuery2 } from "@tanstack/react-query";
4386
- import { useEffect as useEffect4, useMemo as useMemo3 } from "react";
4386
+ import { useEffect as useEffect4, useMemo as useMemo2 } from "react";
4387
4387
  import { useTranslation } from "react-i18next";
4388
4388
 
4389
4389
  // src/hooks/core/use-view-v2.ts
4390
- import { useMemo as useMemo4 } from "react";
4390
+ import { useMemo as useMemo3 } from "react";
4391
4391
 
4392
4392
  // src/hooks/core/use-company.ts
4393
4393
  import { useQuery as useQuery3 } from "@tanstack/react-query";
4394
- import { useEffect as useEffect5, useMemo as useMemo5 } from "react";
4394
+ import { useEffect as useEffect5, useMemo as useMemo4 } from "react";
4395
4395
 
4396
4396
  // src/hooks/core/use-app-provider.tsx
4397
4397
  import { jsx } from "react/jsx-runtime";
@@ -4415,7 +4415,7 @@ var useAppProvider = () => {
4415
4415
  import { useEffect as useEffect6 } from "react";
4416
4416
 
4417
4417
  // src/hooks/core/use-get-specification.ts
4418
- import { useMemo as useMemo7 } from "react";
4418
+ import { useMemo as useMemo6 } from "react";
4419
4419
  var useGetSpecification = ({
4420
4420
  model,
4421
4421
  viewData,
@@ -4427,13 +4427,13 @@ var useGetSpecification = ({
4427
4427
  fields
4428
4428
  };
4429
4429
  const initModel = useModel();
4430
- const modelInstance = useMemo7(() => {
4430
+ const modelInstance = useMemo6(() => {
4431
4431
  if (viewData) {
4432
4432
  return initModel.initModel(baseModel);
4433
4433
  }
4434
4434
  return null;
4435
4435
  }, [baseModel, viewData, model]);
4436
- const specification = useMemo7(() => {
4436
+ const specification = useMemo6(() => {
4437
4437
  if (modelInstance) {
4438
4438
  return modelInstance.getSpecification();
4439
4439
  }
@@ -4443,7 +4443,7 @@ var useGetSpecification = ({
4443
4443
  };
4444
4444
 
4445
4445
  // src/hooks/core/use-list-data.ts
4446
- import { useMemo as useMemo8, useState as useState6 } from "react";
4446
+ import { useMemo as useMemo7, useState as useState6 } from "react";
4447
4447
  import {
4448
4448
  evalJSONDomain,
4449
4449
  formatSortingString,
@@ -4559,7 +4559,7 @@ var useListData = ({
4559
4559
  viewData,
4560
4560
  fields: mode === "kanban" ? viewData?.views?.kanban?.fields : viewData?.views?.list?.fields
4561
4561
  });
4562
- const listDataProps = useMemo8(() => {
4562
+ const listDataProps = useMemo7(() => {
4563
4563
  if (!viewData || !action || !context) {
4564
4564
  return null;
4565
4565
  }
@@ -4696,7 +4696,7 @@ var many2oneFieldController = (props) => {
4696
4696
  service: widget === MANY2ONE_EXTERNAL ? optionsObject?.service : service,
4697
4697
  xNode
4698
4698
  });
4699
- const selectOptions = useMemo9(() => {
4699
+ const selectOptions = useMemo8(() => {
4700
4700
  return dataOfSelection?.records?.map((val) => ({
4701
4701
  value: val?.id,
4702
4702
  label: val?.display_name || val?.name,
@@ -4707,7 +4707,7 @@ var many2oneFieldController = (props) => {
4707
4707
  setListOptions(selectOptions);
4708
4708
  setDomainModal(domainObject);
4709
4709
  }, [selectOptions]);
4710
- const parsedFormValues = useMemo9(
4710
+ const parsedFormValues = useMemo8(
4711
4711
  () => JSON.parse(
4712
4712
  JSON.stringify({
4713
4713
  ...formValues,
@@ -5064,7 +5064,7 @@ var many2manyFieldController = (props) => {
5064
5064
  };
5065
5065
 
5066
5066
  // src/widget/basic/many2many-tags-field/controller.ts
5067
- import { useCallback as useCallback5, useEffect as useEffect12, useMemo as useMemo10, useState as useState8 } from "react";
5067
+ import { useCallback as useCallback5, useEffect as useEffect12, useMemo as useMemo9, useState as useState8 } from "react";
5068
5068
  import { WIDGETAVATAR, WIDGETCOLOR } from "@fctc/interface-logic/constants";
5069
5069
  import { evalJSONContext as evalJSONContext5, evalJSONDomain as evalJSONDomain4 } from "@fctc/interface-logic/utils";
5070
5070
  var many2manyTagsController = (props) => {
@@ -5096,7 +5096,7 @@ var many2manyTagsController = (props) => {
5096
5096
  ...fieldContext ?? {},
5097
5097
  ...env?.context
5098
5098
  };
5099
- const parsedFormValues = useMemo10(
5099
+ const parsedFormValues = useMemo9(
5100
5100
  () => JSON.parse(
5101
5101
  JSON.stringify({
5102
5102
  ...formValues,
@@ -5137,7 +5137,7 @@ var many2manyTagsController = (props) => {
5137
5137
  xNode,
5138
5138
  enabled: false
5139
5139
  });
5140
- const selectOptions = useMemo10(() => {
5140
+ const selectOptions = useMemo9(() => {
5141
5141
  return dataOfSelection?.records?.map((val) => ({
5142
5142
  value: val.id,
5143
5143
  label: val.name ?? val.display_name,
@@ -5644,7 +5644,7 @@ var binaryFieldController = (props) => {
5644
5644
  };
5645
5645
 
5646
5646
  // src/widget/advance/table/table-head/controller.ts
5647
- import { useMemo as useMemo11, useRef as useRef5 } from "react";
5647
+ import { useMemo as useMemo10, useRef as useRef5 } from "react";
5648
5648
  var tableHeadController = (props) => {
5649
5649
  const {
5650
5650
  typeTable,
@@ -5657,19 +5657,19 @@ var tableHeadController = (props) => {
5657
5657
  const { rowIds: recordIds } = useGetRowIds(tableRef);
5658
5658
  const selectedRowKeysRef = useRef5(recordIds);
5659
5659
  const isGroupTable = typeTable === "group";
5660
- const recordsCheckedGroup = useMemo11(() => {
5660
+ const recordsCheckedGroup = useMemo10(() => {
5661
5661
  if (!rows || !groupByList) return 0;
5662
5662
  const groupBy = typeof groupByList === "object" ? groupByList?.contexts?.[0]?.group_by : void 0;
5663
5663
  return countSum(rows, groupBy);
5664
5664
  }, [rows, groupByList]);
5665
- const isAllGroupChecked = useMemo11(() => {
5665
+ const isAllGroupChecked = useMemo10(() => {
5666
5666
  if (!isGroupTable || !selectedRowKeys?.length) return false;
5667
5667
  const selectedLength = selectedRowKeys.filter((id) => id !== -1).length;
5668
5668
  const allRecordsSelected = recordIds.length === selectedRowKeys.length ? recordIds.length === selectedLength : false;
5669
5669
  const allGroupsSelected = recordsCheckedGroup === selectedRowKeys.length;
5670
5670
  return allGroupsSelected || allRecordsSelected;
5671
5671
  }, [isGroupTable, selectedRowKeys, recordIds, recordsCheckedGroup]);
5672
- const isAllNormalChecked = useMemo11(() => {
5672
+ const isAllNormalChecked = useMemo10(() => {
5673
5673
  if (isGroupTable || !selectedRowKeys?.length || !rows?.length) return false;
5674
5674
  return selectedRowKeys.length === rows.length && selectedRowKeys.every(
5675
5675
  (id) => rows.some((record) => record.id === id)
@@ -5710,19 +5710,19 @@ var tableHeadController = (props) => {
5710
5710
  };
5711
5711
 
5712
5712
  // src/widget/advance/table/table-view/controller.ts
5713
- import { useCallback as useCallback6, useEffect as useEffect14, useMemo as useMemo12, useState as useState13 } from "react";
5713
+ import { useCallback as useCallback6, useEffect as useEffect14, useMemo as useMemo11, useState as useState13 } from "react";
5714
5714
  import { domainHelper } from "@fctc/interface-logic/utils";
5715
5715
  var tableController = ({ data }) => {
5716
5716
  const [rows, setRows] = useState13([]);
5717
5717
  const [columnVisibility, setColumnVisibility] = useState13({});
5718
- const dataModelFields = useMemo12(() => {
5718
+ const dataModelFields = useMemo11(() => {
5719
5719
  return data?.fields?.map((field) => ({
5720
5720
  ...data.dataModel?.[field?.name],
5721
5721
  ...field,
5722
5722
  string: field?.string || data.dataModel?.[field?.name]?.string
5723
5723
  })) ?? [];
5724
5724
  }, [data?.fields, data?.dataModel]);
5725
- const mergeFields = useMemo12(
5725
+ const mergeFields = useMemo11(
5726
5726
  () => mergeButtons(dataModelFields),
5727
5727
  [dataModelFields]
5728
5728
  );
@@ -5751,7 +5751,7 @@ var tableController = ({ data }) => {
5751
5751
  useEffect14(() => {
5752
5752
  setRows(transformData(data?.records));
5753
5753
  }, [data?.records, transformData]);
5754
- const columns = useMemo12(() => {
5754
+ const columns = useMemo11(() => {
5755
5755
  try {
5756
5756
  return mergeFields?.filter((item) => {
5757
5757
  return item?.widget !== "details_Receive_money" && !(item?.column_invisible ? domainHelper.matchDomains(
@@ -5787,7 +5787,7 @@ var tableController = ({ data }) => {
5787
5787
  };
5788
5788
 
5789
5789
  // src/widget/advance/table/table-group/controller.ts
5790
- import { useEffect as useEffect15, useMemo as useMemo13, useState as useState14 } from "react";
5790
+ import { useEffect as useEffect15, useMemo as useMemo12, useState as useState14 } from "react";
5791
5791
  import { useAppSelector, selectList } from "@fctc/interface-logic/store";
5792
5792
  var tableGroupController = (props) => {
5793
5793
  const { env } = (0, provider_exports.useEnv)();
@@ -5812,7 +5812,7 @@ var tableGroupController = (props) => {
5812
5812
  fromEnd: 1
5813
5813
  });
5814
5814
  const domain = row?.__domain;
5815
- const processedData = useMemo13(() => {
5815
+ const processedData = useMemo12(() => {
5816
5816
  const calculateColSpanEmpty = () => {
5817
5817
  const startIndex = columns.findIndex(
5818
5818
  (col) => col.field.type === "monetary" && typeof row[col.key] === "number" || col.field.aggregator === "sum"
@@ -5827,7 +5827,7 @@ var tableGroupController = (props) => {
5827
5827
  };
5828
5828
  return calculateColSpanEmpty();
5829
5829
  }, [columns, row]);
5830
- const shouldFetchData = useMemo13(() => {
5830
+ const shouldFetchData = useMemo12(() => {
5831
5831
  return !!isShowGroup;
5832
5832
  }, [isShowGroup]);
5833
5833
  const enabled = shouldFetchData && !!processedData;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fctc/widget-logic",
3
- "version": "4.6.6",
3
+ "version": "4.6.7",
4
4
  "types": "dist/index.d.ts",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",