@fctc/widget-logic 2.5.5 → 2.5.6

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.d.mts CHANGED
@@ -89,11 +89,10 @@ interface UseMenuReturn {
89
89
  declare const useUser: () => any;
90
90
  type useUserType = ReturnType<typeof useUser>;
91
91
 
92
- declare const useViewV2: ({ action, context, aid, views, model, }: {
93
- action?: ActionResultType;
92
+ declare const useViewV2: ({ id, context, views, model, }: {
93
+ id?: any;
94
94
  context: any;
95
- aid?: any;
96
- views?: any;
95
+ views: any;
97
96
  model?: string;
98
97
  }) => {
99
98
  context: any;
package/dist/hooks.d.ts CHANGED
@@ -89,11 +89,10 @@ interface UseMenuReturn {
89
89
  declare const useUser: () => any;
90
90
  type useUserType = ReturnType<typeof useUser>;
91
91
 
92
- declare const useViewV2: ({ action, context, aid, views, model, }: {
93
- action?: ActionResultType;
92
+ declare const useViewV2: ({ id, context, views, model, }: {
93
+ id?: any;
94
94
  context: any;
95
- aid?: any;
96
- views?: any;
95
+ views: any;
97
96
  model?: string;
98
97
  }) => {
99
98
  context: any;
package/dist/hooks.js CHANGED
@@ -477,31 +477,23 @@ var useUser = () => {
477
477
  // src/hooks/core/use-view-v2.ts
478
478
  var import_react6 = require("react");
479
479
  var useViewV2 = ({
480
- action,
480
+ id,
481
481
  context,
482
- aid,
483
482
  views,
484
483
  model
485
484
  }) => {
486
485
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
487
486
  const viewParams = (0, import_react6.useMemo)(() => {
488
- if (!action) {
489
- return {
490
- model,
491
- views,
492
- context
493
- };
494
- }
495
487
  return {
496
488
  model,
497
489
  views,
498
490
  context,
499
- id: isNaN(Number(aid)) ? action?.id : aid
491
+ id
500
492
  };
501
- }, [action, context, aid, model, views]);
493
+ }, [model]);
502
494
  const view = useGetView2(
503
495
  viewParams || {},
504
- !!viewParams && !(0, utils_exports.isObjectEmpty)(viewParams)
496
+ !!viewParams
505
497
  );
506
498
  return {
507
499
  ...view,
@@ -599,9 +591,7 @@ var AppProvider = ({
599
591
  ]);
600
592
  }, [menuContext, action?.context, env?.context?.lang]);
601
593
  const view = useViewV2({
602
- action,
603
594
  context: viewContext,
604
- aid,
605
595
  views: [
606
596
  ...Array.isArray(action?.views) ? action?.views.map(
607
597
  (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
@@ -736,7 +726,7 @@ var useGetSpecification = ({
736
726
 
737
727
  // src/hooks/core/use-list-data.ts
738
728
  var import_react14 = require("react");
739
- var import_utils5 = require("@fctc/interface-logic/utils");
729
+ var import_utils4 = require("@fctc/interface-logic/utils");
740
730
 
741
731
  // src/hooks/utils/use-click-outside.ts
742
732
  var import_react11 = require("react");
@@ -878,12 +868,12 @@ var useListData = ({
878
868
  if (!viewData || !action || !context) {
879
869
  return null;
880
870
  }
881
- const domainParse = type === "calendar" ? getDateRange(currentDate, mode) : action?.domain ? Array.isArray(action?.domain) ? [...action?.domain] : (0, import_utils5.evalJSONDomain)(action?.domain, context) : [];
871
+ const domainParse = type === "calendar" ? getDateRange(currentDate, mode) : action?.domain ? Array.isArray(action?.domain) ? [...action?.domain] : (0, import_utils4.evalJSONDomain)(action?.domain, context) : [];
882
872
  const limit = type === "calendar" ? 2500 : pageLimit;
883
873
  const offset = debouncedPage * pageLimit;
884
874
  const fields = type === "calendar" ? convertFieldsToArray(viewData?.views?.calendar?.fields) || [] : typeof groupByList === "object" ? groupByList?.fields : void 0;
885
875
  const groupby = typeof groupByList === "object" ? [groupByList?.contexts?.[0]?.group_by] : [];
886
- const sort = order ? order : viewData?.views?.list?.default_order ? (0, import_utils5.formatSortingString)(viewData?.views?.list?.default_order) : "";
876
+ const sort = order ? order : viewData?.views?.list?.default_order ? (0, import_utils4.formatSortingString)(viewData?.views?.list?.default_order) : "";
887
877
  return {
888
878
  model: action.res_model,
889
879
  specification,
@@ -911,7 +901,7 @@ var useListData = ({
911
901
  const list = useGetListData2(
912
902
  listDataProps,
913
903
  [listDataProps],
914
- !!listDataProps && !!specification && !(0, import_utils5.isObjectEmpty)(specification)
904
+ !!listDataProps && !!specification && !(0, import_utils4.isObjectEmpty)(specification)
915
905
  );
916
906
  return {
917
907
  ...list,
package/dist/hooks.mjs CHANGED
@@ -458,31 +458,23 @@ var useUser = () => {
458
458
  // src/hooks/core/use-view-v2.ts
459
459
  import { useMemo as useMemo3 } from "react";
460
460
  var useViewV2 = ({
461
- action,
461
+ id,
462
462
  context,
463
- aid,
464
463
  views,
465
464
  model
466
465
  }) => {
467
466
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
468
467
  const viewParams = useMemo3(() => {
469
- if (!action) {
470
- return {
471
- model,
472
- views,
473
- context
474
- };
475
- }
476
468
  return {
477
469
  model,
478
470
  views,
479
471
  context,
480
- id: isNaN(Number(aid)) ? action?.id : aid
472
+ id
481
473
  };
482
- }, [action, context, aid, model, views]);
474
+ }, [model]);
483
475
  const view = useGetView2(
484
476
  viewParams || {},
485
- !!viewParams && !(0, utils_exports.isObjectEmpty)(viewParams)
477
+ !!viewParams
486
478
  );
487
479
  return {
488
480
  ...view,
@@ -580,9 +572,7 @@ var AppProvider = ({
580
572
  ]);
581
573
  }, [menuContext, action?.context, env?.context?.lang]);
582
574
  const view = useViewV2({
583
- action,
584
575
  context: viewContext,
585
- aid,
586
576
  views: [
587
577
  ...Array.isArray(action?.views) ? action?.views.map(
588
578
  (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
@@ -720,7 +710,7 @@ import { useMemo as useMemo7, useState as useState5 } from "react";
720
710
  import {
721
711
  evalJSONDomain,
722
712
  formatSortingString,
723
- isObjectEmpty as isObjectEmpty4
713
+ isObjectEmpty as isObjectEmpty3
724
714
  } from "@fctc/interface-logic/utils";
725
715
 
726
716
  // src/hooks/utils/use-click-outside.ts
@@ -896,7 +886,7 @@ var useListData = ({
896
886
  const list = useGetListData2(
897
887
  listDataProps,
898
888
  [listDataProps],
899
- !!listDataProps && !!specification && !isObjectEmpty4(specification)
889
+ !!listDataProps && !!specification && !isObjectEmpty3(specification)
900
890
  );
901
891
  return {
902
892
  ...list,
package/dist/index.js CHANGED
@@ -55,7 +55,7 @@ var require_moment = __commonJS({
55
55
  function hasOwnProp(a, b) {
56
56
  return Object.prototype.hasOwnProperty.call(a, b);
57
57
  }
58
- function isObjectEmpty5(obj) {
58
+ function isObjectEmpty4(obj) {
59
59
  if (Object.getOwnPropertyNames) {
60
60
  return Object.getOwnPropertyNames(obj).length === 0;
61
61
  } else {
@@ -2194,7 +2194,7 @@ var require_moment = __commonJS({
2194
2194
  strict = locale2;
2195
2195
  locale2 = void 0;
2196
2196
  }
2197
- if (isObject(input) && isObjectEmpty5(input) || isArray(input) && input.length === 0) {
2197
+ if (isObject(input) && isObjectEmpty4(input) || isArray(input) && input.length === 0) {
2198
2198
  input = void 0;
2199
2199
  }
2200
2200
  c._isAMomentObject = true;
@@ -2613,7 +2613,7 @@ var require_moment = __commonJS({
2613
2613
  return isMoment(input) || isDate(input) || isString(input) || isNumber(input) || isNumberOrStringArray(input) || isMomentInputObject(input) || input === null || input === void 0;
2614
2614
  }
2615
2615
  function isMomentInputObject(input) {
2616
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2616
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2617
2617
  "years",
2618
2618
  "year",
2619
2619
  "y",
@@ -2655,7 +2655,7 @@ var require_moment = __commonJS({
2655
2655
  return arrayTest && dataTypeTest;
2656
2656
  }
2657
2657
  function isCalendarSpec(input) {
2658
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2658
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2659
2659
  "sameDay",
2660
2660
  "nextDay",
2661
2661
  "lastDay",
@@ -4527,31 +4527,23 @@ var useUser = () => {
4527
4527
  // src/hooks/core/use-view-v2.ts
4528
4528
  var import_react6 = require("react");
4529
4529
  var useViewV2 = ({
4530
- action,
4530
+ id,
4531
4531
  context,
4532
- aid,
4533
4532
  views,
4534
4533
  model
4535
4534
  }) => {
4536
4535
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
4537
4536
  const viewParams = (0, import_react6.useMemo)(() => {
4538
- if (!action) {
4539
- return {
4540
- model,
4541
- views,
4542
- context
4543
- };
4544
- }
4545
4537
  return {
4546
4538
  model,
4547
4539
  views,
4548
4540
  context,
4549
- id: isNaN(Number(aid)) ? action?.id : aid
4541
+ id
4550
4542
  };
4551
- }, [action, context, aid, model, views]);
4543
+ }, [model]);
4552
4544
  const view = useGetView2(
4553
4545
  viewParams || {},
4554
- !!viewParams && !(0, utils_exports.isObjectEmpty)(viewParams)
4546
+ !!viewParams
4555
4547
  );
4556
4548
  return {
4557
4549
  ...view,
@@ -4649,9 +4641,7 @@ var AppProvider = ({
4649
4641
  ]);
4650
4642
  }, [menuContext, action?.context, env?.context?.lang]);
4651
4643
  const view = useViewV2({
4652
- action,
4653
4644
  context: viewContext,
4654
- aid,
4655
4645
  views: [
4656
4646
  ...Array.isArray(action?.views) ? action?.views.map(
4657
4647
  (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
@@ -4786,7 +4776,7 @@ var useGetSpecification = ({
4786
4776
 
4787
4777
  // src/hooks/core/use-list-data.ts
4788
4778
  var import_react14 = require("react");
4789
- var import_utils5 = require("@fctc/interface-logic/utils");
4779
+ var import_utils4 = require("@fctc/interface-logic/utils");
4790
4780
 
4791
4781
  // src/hooks/utils/use-click-outside.ts
4792
4782
  var import_react11 = require("react");
@@ -4928,12 +4918,12 @@ var useListData = ({
4928
4918
  if (!viewData || !action || !context) {
4929
4919
  return null;
4930
4920
  }
4931
- const domainParse = type === "calendar" ? getDateRange(currentDate, mode) : action?.domain ? Array.isArray(action?.domain) ? [...action?.domain] : (0, import_utils5.evalJSONDomain)(action?.domain, context) : [];
4921
+ const domainParse = type === "calendar" ? getDateRange(currentDate, mode) : action?.domain ? Array.isArray(action?.domain) ? [...action?.domain] : (0, import_utils4.evalJSONDomain)(action?.domain, context) : [];
4932
4922
  const limit = type === "calendar" ? 2500 : pageLimit;
4933
4923
  const offset = debouncedPage * pageLimit;
4934
4924
  const fields = type === "calendar" ? convertFieldsToArray(viewData?.views?.calendar?.fields) || [] : typeof groupByList === "object" ? groupByList?.fields : void 0;
4935
4925
  const groupby = typeof groupByList === "object" ? [groupByList?.contexts?.[0]?.group_by] : [];
4936
- const sort = order ? order : viewData?.views?.list?.default_order ? (0, import_utils5.formatSortingString)(viewData?.views?.list?.default_order) : "";
4926
+ const sort = order ? order : viewData?.views?.list?.default_order ? (0, import_utils4.formatSortingString)(viewData?.views?.list?.default_order) : "";
4937
4927
  return {
4938
4928
  model: action.res_model,
4939
4929
  specification,
@@ -4961,7 +4951,7 @@ var useListData = ({
4961
4951
  const list = useGetListData2(
4962
4952
  listDataProps,
4963
4953
  [listDataProps],
4964
- !!listDataProps && !!specification && !(0, import_utils5.isObjectEmpty)(specification)
4954
+ !!listDataProps && !!specification && !(0, import_utils4.isObjectEmpty)(specification)
4965
4955
  );
4966
4956
  return {
4967
4957
  ...list,
@@ -5468,18 +5458,18 @@ var many2oneFieldController = (props) => {
5468
5458
  // src/widget/basic/many2one-button-field/controller.ts
5469
5459
  var import_environment2 = require("@fctc/interface-logic/environment");
5470
5460
  var import_hooks6 = require("@fctc/interface-logic/hooks");
5471
- var import_utils8 = require("@fctc/interface-logic/utils");
5461
+ var import_utils7 = require("@fctc/interface-logic/utils");
5472
5462
  var many2oneButtonController = (props) => {
5473
5463
  const { domain, methods, relation, service, xNode } = props;
5474
5464
  const actionDataString = sessionStorage.getItem("actionData");
5475
5465
  const env = (0, import_environment2.getEnv)();
5476
- const domainObject = (0, import_utils8.evalJSONDomain)(domain, methods?.getValues() || {});
5466
+ const domainObject = (0, import_utils7.evalJSONDomain)(domain, methods?.getValues() || {});
5477
5467
  const actionData = actionDataString && actionDataString !== "undefined" ? JSON.parse(actionDataString) : {};
5478
5468
  const { data: dataOfSelection } = (0, import_hooks6.useGetSelection)({
5479
5469
  data: {
5480
5470
  model: relation ?? "",
5481
5471
  domain: domainObject,
5482
- context: { ...env.context, ...(0, import_utils8.evalJSONContext)(actionData?.context) }
5472
+ context: { ...env.context, ...(0, import_utils7.evalJSONContext)(actionData?.context) }
5483
5473
  },
5484
5474
  queryKey: [`data_${relation}`, domainObject],
5485
5475
  service,
@@ -5496,7 +5486,7 @@ var many2oneButtonController = (props) => {
5496
5486
 
5497
5487
  // src/widget/basic/many2many-field/controller.ts
5498
5488
  var import_react17 = require("react");
5499
- var import_utils9 = require("@fctc/interface-logic/utils");
5489
+ var import_utils8 = require("@fctc/interface-logic/utils");
5500
5490
  var many2manyFieldController = (props) => {
5501
5491
  const {
5502
5492
  relation,
@@ -5554,10 +5544,10 @@ var many2manyFieldController = (props) => {
5554
5544
  return null;
5555
5545
  }, [modelInstance]);
5556
5546
  const default_order = viewResponse && viewResponse?.views?.list?.default_order;
5557
- const optionsObject = tab?.options ? (0, import_utils9.evalJSONContext)(tab?.options) : (options ? (0, import_utils9.evalJSONContext)(options) : {}) || {};
5547
+ const optionsObject = tab?.options ? (0, import_utils8.evalJSONContext)(tab?.options) : (options ? (0, import_utils8.evalJSONContext)(options) : {}) || {};
5558
5548
  const fetchData = async () => {
5559
5549
  try {
5560
- const domainParse = typeof domain === "string" ? (0, import_utils9.evalJSONDomain)(domain, contextObject) : Array.isArray(domain) ? domain : [];
5550
+ const domainParse = typeof domain === "string" ? (0, import_utils8.evalJSONDomain)(domain, contextObject) : Array.isArray(domain) ? domain : [];
5561
5551
  setDomainMany2Many(domainParse);
5562
5552
  setPage(0);
5563
5553
  } catch (err) {
@@ -5581,7 +5571,7 @@ var many2manyFieldController = (props) => {
5581
5571
  context: contextObject,
5582
5572
  fields: groupByDomain?.fields,
5583
5573
  groupby: [groupByDomain?.contexts[0]?.group_by],
5584
- sort: order ? order : default_order ? (0, import_utils9.formatSortingString)(default_order) : ""
5574
+ sort: order ? order : default_order ? (0, import_utils8.formatSortingString)(default_order) : ""
5585
5575
  };
5586
5576
  const enabled = enabledCallAPI && !!specification && !!relation && !!domainMany2Many && !!viewResponse;
5587
5577
  const {
@@ -5645,7 +5635,7 @@ var many2manyFieldController = (props) => {
5645
5635
  // src/widget/basic/many2many-tags-field/controller.ts
5646
5636
  var import_react18 = require("react");
5647
5637
  var import_constants2 = require("@fctc/interface-logic/constants");
5648
- var import_utils10 = require("@fctc/interface-logic/utils");
5638
+ var import_utils9 = require("@fctc/interface-logic/utils");
5649
5639
  var many2manyTagsController = (props) => {
5650
5640
  const {
5651
5641
  relation,
@@ -5660,9 +5650,9 @@ var many2manyTagsController = (props) => {
5660
5650
  const isUser = relation === "res.users" || relation === "res.partner";
5661
5651
  const { env } = (0, provider_exports.useEnv)();
5662
5652
  const { useGetSelection: useGetSelection3 } = (0, provider_exports.useService)();
5663
- const addtionalFields = optionsFields ? (0, import_utils10.evalJSONContext)(optionsFields) : null;
5653
+ const addtionalFields = optionsFields ? (0, import_utils9.evalJSONContext)(optionsFields) : null;
5664
5654
  const domainObject = (0, import_react18.useMemo)(
5665
- () => (0, import_utils10.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues || {}))),
5655
+ () => (0, import_utils9.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues || {}))),
5666
5656
  [domain, formValues]
5667
5657
  );
5668
5658
  const data = {
@@ -5707,7 +5697,7 @@ var many2manyTagsController = (props) => {
5707
5697
 
5708
5698
  // src/widget/basic/status-bar-field/controller.ts
5709
5699
  var import_react19 = require("react");
5710
- var import_utils11 = require("@fctc/interface-logic/utils");
5700
+ var import_utils10 = require("@fctc/interface-logic/utils");
5711
5701
  var durationController = (props) => {
5712
5702
  const { relation, domain, formValues, name, id, model, onRefetch, enabled } = props;
5713
5703
  const specification = {
@@ -5723,7 +5713,7 @@ var durationController = (props) => {
5723
5713
  const listDataProps = {
5724
5714
  model: relation,
5725
5715
  specification,
5726
- domain: (0, import_utils11.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues))),
5716
+ domain: (0, import_utils10.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues))),
5727
5717
  limit: 10,
5728
5718
  offset: 0,
5729
5719
  fields: "",
@@ -5773,10 +5763,10 @@ var durationController = (props) => {
5773
5763
  };
5774
5764
 
5775
5765
  // src/widget/basic/priority-field/controller.ts
5776
- var import_utils12 = require("@fctc/interface-logic/utils");
5766
+ var import_utils11 = require("@fctc/interface-logic/utils");
5777
5767
  var priorityFieldController = (props) => {
5778
5768
  const { name, model, index, actionData, context, onChange, specification } = props;
5779
- const _context = { ...(0, import_utils12.evalJSONContext)(actionData?.context) };
5769
+ const _context = { ...(0, import_utils11.evalJSONContext)(actionData?.context) };
5780
5770
  const contextObject = { ...context, ..._context };
5781
5771
  const { useSave: useSave3 } = (0, provider_exports.useService)();
5782
5772
  const { mutateAsync: fetchSave } = useSave3();
@@ -6744,12 +6734,12 @@ var dateFieldController = (props) => {
6744
6734
 
6745
6735
  // src/widget/basic/copy-link-button/controller.ts
6746
6736
  var import_react21 = require("react");
6747
- var import_utils13 = require("@fctc/interface-logic/utils");
6737
+ var import_utils12 = require("@fctc/interface-logic/utils");
6748
6738
  var copyLinkButtonController = (props) => {
6749
6739
  const { value, defaultValue } = props;
6750
6740
  const [isCopied, setIsCopied] = (0, import_react21.useState)(false);
6751
6741
  const handleCopyToClipboard = async (value2) => {
6752
- await (0, import_utils13.copyTextToClipboard)(value2);
6742
+ await (0, import_utils12.copyTextToClipboard)(value2);
6753
6743
  setIsCopied(true);
6754
6744
  setTimeout(() => setIsCopied(false), 2e3);
6755
6745
  };
@@ -6762,12 +6752,12 @@ var copyLinkButtonController = (props) => {
6762
6752
  };
6763
6753
 
6764
6754
  // src/widget/basic/color-field/color-controller.ts
6765
- var import_utils14 = require("@fctc/interface-logic/utils");
6755
+ var import_utils13 = require("@fctc/interface-logic/utils");
6766
6756
  var colorFieldController = (props) => {
6767
6757
  const { value, isForm, name, formValues, idForm, model, actionData } = props;
6768
6758
  const { env } = (0, provider_exports.useEnv)();
6769
6759
  const { useSave: useSave3 } = (0, provider_exports.useService)();
6770
- const _context = { ...(0, import_utils14.evalJSONContext)(actionData?.context) || {} };
6760
+ const _context = { ...(0, import_utils13.evalJSONContext)(actionData?.context) || {} };
6771
6761
  const contextObject = { ...env.context, ..._context };
6772
6762
  const idDefault = isForm ? idForm : formValues?.id;
6773
6763
  const { mutate: onSave } = useSave3();
@@ -6796,7 +6786,7 @@ var colorFieldController = (props) => {
6796
6786
 
6797
6787
  // src/widget/basic/binary-field/controller.ts
6798
6788
  var import_react22 = require("react");
6799
- var import_utils15 = require("@fctc/interface-logic/utils");
6789
+ var import_utils14 = require("@fctc/interface-logic/utils");
6800
6790
  var binaryFieldController = (props) => {
6801
6791
  const { name, methods, readonly = false, value } = props;
6802
6792
  const inputId = (0, import_react22.useId)();
@@ -6853,11 +6843,11 @@ var binaryFieldController = (props) => {
6853
6843
  };
6854
6844
  const checkIsImageLink = (url) => {
6855
6845
  const imageExtensions = /\.(jpg|jpeg|png|gif|bmp|webp|svg|tiff|ico)$/i;
6856
- return imageExtensions.test(url) || (0, import_utils15.isBase64Image)(url) || isBlobUrl(url);
6846
+ return imageExtensions.test(url) || (0, import_utils14.isBase64Image)(url) || isBlobUrl(url);
6857
6847
  };
6858
6848
  const getImageBase64WithMimeType = (base64) => {
6859
6849
  if (typeof base64 !== "string" || base64.length < 10) return null;
6860
- if ((0, import_utils15.isBase64Image)(base64)) return base64;
6850
+ if ((0, import_utils14.isBase64Image)(base64)) return base64;
6861
6851
  let mimeType = null;
6862
6852
  if (base64.startsWith("iVBORw0KGgo")) mimeType = "image/png";
6863
6853
  else if (base64.startsWith("/9j/")) mimeType = "image/jpeg";
@@ -6960,7 +6950,7 @@ var tableHeadController = (props) => {
6960
6950
 
6961
6951
  // src/widget/advance/table/table-view/controller.ts
6962
6952
  var import_react24 = require("react");
6963
- var import_utils17 = require("@fctc/interface-logic/utils");
6953
+ var import_utils16 = require("@fctc/interface-logic/utils");
6964
6954
  var tableController = ({ data }) => {
6965
6955
  const [rows, setRows] = (0, import_react24.useState)(null);
6966
6956
  const [columns, setColumns] = (0, import_react24.useState)(null);
@@ -6998,7 +6988,7 @@ var tableController = ({ data }) => {
6998
6988
  let cols = [];
6999
6989
  try {
7000
6990
  cols = mergeFields?.filter((item) => {
7001
- return item?.widget !== "details_Receive_money" && !(item?.column_invisible ? import_utils17.domainHelper.matchDomains(data.context, item?.column_invisible) : item?.invisible ? import_utils17.domainHelper.matchDomains(data.context, item?.invisible) : false);
6991
+ return item?.widget !== "details_Receive_money" && !(item?.column_invisible ? import_utils16.domainHelper.matchDomains(data.context, item?.column_invisible) : item?.invisible ? import_utils16.domainHelper.matchDomains(data.context, item?.invisible) : false);
7002
6992
  })?.map((field) => {
7003
6993
  return {
7004
6994
  name: field?.name,
@@ -7182,7 +7172,7 @@ var tableGroupController = (props) => {
7182
7172
 
7183
7173
  // src/widget/advance/search/controller.ts
7184
7174
  var import_constants3 = require("@fctc/interface-logic/constants");
7185
- var import_utils19 = require("@fctc/interface-logic/utils");
7175
+ var import_utils18 = require("@fctc/interface-logic/utils");
7186
7176
  var import_moment2 = __toESM(require_moment());
7187
7177
  var import_react26 = require("react");
7188
7178
  var searchController = ({
@@ -7199,9 +7189,9 @@ var searchController = ({
7199
7189
  const [selectedTags, setSelectedTags] = (0, import_react26.useState)(null);
7200
7190
  const [searchString, setSearchString] = (0, import_react26.useState)("");
7201
7191
  const [searchMap, setSearchMap] = (0, import_react26.useState)({});
7202
- const actionContext = typeof context === "string" ? (0, import_utils19.evalJSONContext)(context) : context;
7192
+ const actionContext = typeof context === "string" ? (0, import_utils18.evalJSONContext)(context) : context;
7203
7193
  const contextSearch = { ...env.context, ...actionContext };
7204
- const domainAction = domain ? Array.isArray(domain) ? [...domain] : (0, import_utils19.evalJSONDomain)(domain, contextSearch) : [];
7194
+ const domainAction = domain ? Array.isArray(domain) ? [...domain] : (0, import_utils18.evalJSONDomain)(domain, contextSearch) : [];
7205
7195
  const clearSearch = () => {
7206
7196
  setFilterBy([]);
7207
7197
  setGroupBy([]);
@@ -7216,7 +7206,7 @@ var searchController = ({
7216
7206
  const dataModel = viewData?.models?.[model];
7217
7207
  const searchViews = viewData?.views?.search;
7218
7208
  const searchByItems = searchViews?.search_by?.filter(
7219
- (item) => !import_utils19.domainHelper.matchDomains(contextSearch, item.invisible)
7209
+ (item) => !import_utils18.domainHelper.matchDomains(contextSearch, item.invisible)
7220
7210
  )?.map(
7221
7211
  ({ string, name, filter_domain, operator, widget }, index) => ({
7222
7212
  dataIndex: index,
@@ -7229,10 +7219,10 @@ var searchController = ({
7229
7219
  })
7230
7220
  );
7231
7221
  const filterByItems = searchViews?.filter_by.filter((item) => {
7232
- return !import_utils19.domainHelper.matchDomains(contextSearch, item?.invisible);
7222
+ return !import_utils18.domainHelper.matchDomains(contextSearch, item?.invisible);
7233
7223
  })?.map((item) => ({ ...item, active: false }));
7234
7224
  const groupByItems = searchViews?.group_by.filter(
7235
- (item) => !import_utils19.domainHelper.matchDomains(contextSearch, item?.invisible)
7225
+ (item) => !import_utils18.domainHelper.matchDomains(contextSearch, item?.invisible)
7236
7226
  ).map((item) => ({
7237
7227
  ...item,
7238
7228
  string: item.string ?? viewData?.models?.[model]?.[item?.name?.split("group_by_")?.[1]]?.string
@@ -7309,14 +7299,14 @@ var searchController = ({
7309
7299
  }
7310
7300
  let valueDomainItem = value?.value;
7311
7301
  if (value?.modelType === "date") {
7312
- valueDomainItem = (0, import_utils19.validateAndParseDate)(value?.value);
7302
+ valueDomainItem = (0, import_utils18.validateAndParseDate)(value?.value);
7313
7303
  } else if (value?.modelType === "datetime") {
7314
7304
  if (value?.operator === "<=" || value?.operator === "<") {
7315
- const parsedDate = (0, import_utils19.validateAndParseDate)(value?.value, true);
7305
+ const parsedDate = (0, import_utils18.validateAndParseDate)(value?.value, true);
7316
7306
  const hasTime = (0, import_moment2.default)(value?.value).format("HH:mm:ss") !== "00:00:00";
7317
7307
  valueDomainItem = hasTime ? (0, import_moment2.default)(parsedDate).format("YYYY-MM-DD HH:mm:ss") : (0, import_moment2.default)(parsedDate).add(1, "day").subtract(1, "second").format("YYYY-MM-DD HH:mm:ss");
7318
7308
  } else {
7319
- valueDomainItem = (0, import_utils19.validateAndParseDate)(value?.value, true);
7309
+ valueDomainItem = (0, import_utils18.validateAndParseDate)(value?.value, true);
7320
7310
  }
7321
7311
  }
7322
7312
  const operator = value?.modelType === "date" || value?.modelType === "datetime" || value?.modelType === "boolean" || value?.modelType === "integer" ? value?.operator ?? "=" : value.operator ?? "ilike";
@@ -7395,7 +7385,7 @@ var searchController = ({
7395
7385
  }, [searchMap]);
7396
7386
  const handleAddTagSearch = (tag) => {
7397
7387
  const { domain: domain2, groupIndex, value, type, context: context2, dataIndex } = tag;
7398
- const domainFormat = new import_utils19.domainHelper.Domain(domain2);
7388
+ const domainFormat = new import_utils18.domainHelper.Domain(domain2);
7399
7389
  if (type === import_constants3.SearchType.FILTER) {
7400
7390
  addSearchItems(`${import_constants3.SearchType.FILTER}_${groupIndex}`, {
7401
7391
  ...tag,
package/dist/index.mjs CHANGED
@@ -59,7 +59,7 @@ var require_moment = __commonJS({
59
59
  function hasOwnProp(a, b) {
60
60
  return Object.prototype.hasOwnProperty.call(a, b);
61
61
  }
62
- function isObjectEmpty5(obj) {
62
+ function isObjectEmpty4(obj) {
63
63
  if (Object.getOwnPropertyNames) {
64
64
  return Object.getOwnPropertyNames(obj).length === 0;
65
65
  } else {
@@ -2198,7 +2198,7 @@ var require_moment = __commonJS({
2198
2198
  strict = locale2;
2199
2199
  locale2 = void 0;
2200
2200
  }
2201
- if (isObject(input) && isObjectEmpty5(input) || isArray(input) && input.length === 0) {
2201
+ if (isObject(input) && isObjectEmpty4(input) || isArray(input) && input.length === 0) {
2202
2202
  input = void 0;
2203
2203
  }
2204
2204
  c._isAMomentObject = true;
@@ -2617,7 +2617,7 @@ var require_moment = __commonJS({
2617
2617
  return isMoment(input) || isDate(input) || isString(input) || isNumber(input) || isNumberOrStringArray(input) || isMomentInputObject(input) || input === null || input === void 0;
2618
2618
  }
2619
2619
  function isMomentInputObject(input) {
2620
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2620
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2621
2621
  "years",
2622
2622
  "year",
2623
2623
  "y",
@@ -2659,7 +2659,7 @@ var require_moment = __commonJS({
2659
2659
  return arrayTest && dataTypeTest;
2660
2660
  }
2661
2661
  function isCalendarSpec(input) {
2662
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2662
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2663
2663
  "sameDay",
2664
2664
  "nextDay",
2665
2665
  "lastDay",
@@ -4602,31 +4602,23 @@ var useUser = () => {
4602
4602
  // src/hooks/core/use-view-v2.ts
4603
4603
  import { useMemo as useMemo3 } from "react";
4604
4604
  var useViewV2 = ({
4605
- action,
4605
+ id,
4606
4606
  context,
4607
- aid,
4608
4607
  views,
4609
4608
  model
4610
4609
  }) => {
4611
4610
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
4612
4611
  const viewParams = useMemo3(() => {
4613
- if (!action) {
4614
- return {
4615
- model,
4616
- views,
4617
- context
4618
- };
4619
- }
4620
4612
  return {
4621
4613
  model,
4622
4614
  views,
4623
4615
  context,
4624
- id: isNaN(Number(aid)) ? action?.id : aid
4616
+ id
4625
4617
  };
4626
- }, [action, context, aid, model, views]);
4618
+ }, [model]);
4627
4619
  const view = useGetView2(
4628
4620
  viewParams || {},
4629
- !!viewParams && !(0, utils_exports.isObjectEmpty)(viewParams)
4621
+ !!viewParams
4630
4622
  );
4631
4623
  return {
4632
4624
  ...view,
@@ -4724,9 +4716,7 @@ var AppProvider = ({
4724
4716
  ]);
4725
4717
  }, [menuContext, action?.context, env?.context?.lang]);
4726
4718
  const view = useViewV2({
4727
- action,
4728
4719
  context: viewContext,
4729
- aid,
4730
4720
  views: [
4731
4721
  ...Array.isArray(action?.views) ? action?.views.map(
4732
4722
  (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
@@ -4864,7 +4854,7 @@ import { useMemo as useMemo7, useState as useState5 } from "react";
4864
4854
  import {
4865
4855
  evalJSONDomain,
4866
4856
  formatSortingString,
4867
- isObjectEmpty as isObjectEmpty4
4857
+ isObjectEmpty as isObjectEmpty3
4868
4858
  } from "@fctc/interface-logic/utils";
4869
4859
 
4870
4860
  // src/hooks/utils/use-click-outside.ts
@@ -5040,7 +5030,7 @@ var useListData = ({
5040
5030
  const list = useGetListData2(
5041
5031
  listDataProps,
5042
5032
  [listDataProps],
5043
- !!listDataProps && !!specification && !isObjectEmpty4(specification)
5033
+ !!listDataProps && !!specification && !isObjectEmpty3(specification)
5044
5034
  );
5045
5035
  return {
5046
5036
  ...list,
package/dist/widget.js CHANGED
@@ -55,7 +55,7 @@ var require_moment = __commonJS({
55
55
  function hasOwnProp(a, b) {
56
56
  return Object.prototype.hasOwnProperty.call(a, b);
57
57
  }
58
- function isObjectEmpty5(obj) {
58
+ function isObjectEmpty4(obj) {
59
59
  if (Object.getOwnPropertyNames) {
60
60
  return Object.getOwnPropertyNames(obj).length === 0;
61
61
  } else {
@@ -2194,7 +2194,7 @@ var require_moment = __commonJS({
2194
2194
  strict = locale2;
2195
2195
  locale2 = void 0;
2196
2196
  }
2197
- if (isObject(input) && isObjectEmpty5(input) || isArray(input) && input.length === 0) {
2197
+ if (isObject(input) && isObjectEmpty4(input) || isArray(input) && input.length === 0) {
2198
2198
  input = void 0;
2199
2199
  }
2200
2200
  c._isAMomentObject = true;
@@ -2613,7 +2613,7 @@ var require_moment = __commonJS({
2613
2613
  return isMoment(input) || isDate(input) || isString(input) || isNumber(input) || isNumberOrStringArray(input) || isMomentInputObject(input) || input === null || input === void 0;
2614
2614
  }
2615
2615
  function isMomentInputObject(input) {
2616
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2616
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2617
2617
  "years",
2618
2618
  "year",
2619
2619
  "y",
@@ -2655,7 +2655,7 @@ var require_moment = __commonJS({
2655
2655
  return arrayTest && dataTypeTest;
2656
2656
  }
2657
2657
  function isCalendarSpec(input) {
2658
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2658
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2659
2659
  "sameDay",
2660
2660
  "nextDay",
2661
2661
  "lastDay",
@@ -4344,7 +4344,7 @@ var import_react11 = require("react");
4344
4344
 
4345
4345
  // src/hooks/core/use-list-data.ts
4346
4346
  var import_react15 = require("react");
4347
- var import_utils5 = require("@fctc/interface-logic/utils");
4347
+ var import_utils4 = require("@fctc/interface-logic/utils");
4348
4348
 
4349
4349
  // src/hooks/utils/use-click-outside.ts
4350
4350
  var import_react12 = require("react");
@@ -4615,18 +4615,18 @@ var many2oneFieldController = (props) => {
4615
4615
  // src/widget/basic/many2one-button-field/controller.ts
4616
4616
  var import_environment2 = require("@fctc/interface-logic/environment");
4617
4617
  var import_hooks6 = require("@fctc/interface-logic/hooks");
4618
- var import_utils8 = require("@fctc/interface-logic/utils");
4618
+ var import_utils7 = require("@fctc/interface-logic/utils");
4619
4619
  var many2oneButtonController = (props) => {
4620
4620
  const { domain, methods, relation, service, xNode } = props;
4621
4621
  const actionDataString = sessionStorage.getItem("actionData");
4622
4622
  const env = (0, import_environment2.getEnv)();
4623
- const domainObject = (0, import_utils8.evalJSONDomain)(domain, methods?.getValues() || {});
4623
+ const domainObject = (0, import_utils7.evalJSONDomain)(domain, methods?.getValues() || {});
4624
4624
  const actionData = actionDataString && actionDataString !== "undefined" ? JSON.parse(actionDataString) : {};
4625
4625
  const { data: dataOfSelection } = (0, import_hooks6.useGetSelection)({
4626
4626
  data: {
4627
4627
  model: relation ?? "",
4628
4628
  domain: domainObject,
4629
- context: { ...env.context, ...(0, import_utils8.evalJSONContext)(actionData?.context) }
4629
+ context: { ...env.context, ...(0, import_utils7.evalJSONContext)(actionData?.context) }
4630
4630
  },
4631
4631
  queryKey: [`data_${relation}`, domainObject],
4632
4632
  service,
@@ -4643,7 +4643,7 @@ var many2oneButtonController = (props) => {
4643
4643
 
4644
4644
  // src/widget/basic/many2many-field/controller.ts
4645
4645
  var import_react17 = require("react");
4646
- var import_utils9 = require("@fctc/interface-logic/utils");
4646
+ var import_utils8 = require("@fctc/interface-logic/utils");
4647
4647
  var many2manyFieldController = (props) => {
4648
4648
  const {
4649
4649
  relation,
@@ -4701,10 +4701,10 @@ var many2manyFieldController = (props) => {
4701
4701
  return null;
4702
4702
  }, [modelInstance]);
4703
4703
  const default_order = viewResponse && viewResponse?.views?.list?.default_order;
4704
- const optionsObject = tab?.options ? (0, import_utils9.evalJSONContext)(tab?.options) : (options ? (0, import_utils9.evalJSONContext)(options) : {}) || {};
4704
+ const optionsObject = tab?.options ? (0, import_utils8.evalJSONContext)(tab?.options) : (options ? (0, import_utils8.evalJSONContext)(options) : {}) || {};
4705
4705
  const fetchData = async () => {
4706
4706
  try {
4707
- const domainParse = typeof domain === "string" ? (0, import_utils9.evalJSONDomain)(domain, contextObject) : Array.isArray(domain) ? domain : [];
4707
+ const domainParse = typeof domain === "string" ? (0, import_utils8.evalJSONDomain)(domain, contextObject) : Array.isArray(domain) ? domain : [];
4708
4708
  setDomainMany2Many(domainParse);
4709
4709
  setPage(0);
4710
4710
  } catch (err) {
@@ -4728,7 +4728,7 @@ var many2manyFieldController = (props) => {
4728
4728
  context: contextObject,
4729
4729
  fields: groupByDomain?.fields,
4730
4730
  groupby: [groupByDomain?.contexts[0]?.group_by],
4731
- sort: order ? order : default_order ? (0, import_utils9.formatSortingString)(default_order) : ""
4731
+ sort: order ? order : default_order ? (0, import_utils8.formatSortingString)(default_order) : ""
4732
4732
  };
4733
4733
  const enabled = enabledCallAPI && !!specification && !!relation && !!domainMany2Many && !!viewResponse;
4734
4734
  const {
@@ -4792,7 +4792,7 @@ var many2manyFieldController = (props) => {
4792
4792
  // src/widget/basic/many2many-tags-field/controller.ts
4793
4793
  var import_react18 = require("react");
4794
4794
  var import_constants2 = require("@fctc/interface-logic/constants");
4795
- var import_utils10 = require("@fctc/interface-logic/utils");
4795
+ var import_utils9 = require("@fctc/interface-logic/utils");
4796
4796
  var many2manyTagsController = (props) => {
4797
4797
  const {
4798
4798
  relation,
@@ -4807,9 +4807,9 @@ var many2manyTagsController = (props) => {
4807
4807
  const isUser = relation === "res.users" || relation === "res.partner";
4808
4808
  const { env } = (0, provider_exports.useEnv)();
4809
4809
  const { useGetSelection: useGetSelection3 } = (0, provider_exports.useService)();
4810
- const addtionalFields = optionsFields ? (0, import_utils10.evalJSONContext)(optionsFields) : null;
4810
+ const addtionalFields = optionsFields ? (0, import_utils9.evalJSONContext)(optionsFields) : null;
4811
4811
  const domainObject = (0, import_react18.useMemo)(
4812
- () => (0, import_utils10.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues || {}))),
4812
+ () => (0, import_utils9.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues || {}))),
4813
4813
  [domain, formValues]
4814
4814
  );
4815
4815
  const data = {
@@ -4854,7 +4854,7 @@ var many2manyTagsController = (props) => {
4854
4854
 
4855
4855
  // src/widget/basic/status-bar-field/controller.ts
4856
4856
  var import_react19 = require("react");
4857
- var import_utils11 = require("@fctc/interface-logic/utils");
4857
+ var import_utils10 = require("@fctc/interface-logic/utils");
4858
4858
  var durationController = (props) => {
4859
4859
  const { relation, domain, formValues, name, id, model, onRefetch, enabled } = props;
4860
4860
  const specification = {
@@ -4870,7 +4870,7 @@ var durationController = (props) => {
4870
4870
  const listDataProps = {
4871
4871
  model: relation,
4872
4872
  specification,
4873
- domain: (0, import_utils11.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues))),
4873
+ domain: (0, import_utils10.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues))),
4874
4874
  limit: 10,
4875
4875
  offset: 0,
4876
4876
  fields: "",
@@ -4920,10 +4920,10 @@ var durationController = (props) => {
4920
4920
  };
4921
4921
 
4922
4922
  // src/widget/basic/priority-field/controller.ts
4923
- var import_utils12 = require("@fctc/interface-logic/utils");
4923
+ var import_utils11 = require("@fctc/interface-logic/utils");
4924
4924
  var priorityFieldController = (props) => {
4925
4925
  const { name, model, index, actionData, context, onChange, specification } = props;
4926
- const _context = { ...(0, import_utils12.evalJSONContext)(actionData?.context) };
4926
+ const _context = { ...(0, import_utils11.evalJSONContext)(actionData?.context) };
4927
4927
  const contextObject = { ...context, ..._context };
4928
4928
  const { useSave: useSave3 } = (0, provider_exports.useService)();
4929
4929
  const { mutateAsync: fetchSave } = useSave3();
@@ -5891,12 +5891,12 @@ var dateFieldController = (props) => {
5891
5891
 
5892
5892
  // src/widget/basic/copy-link-button/controller.ts
5893
5893
  var import_react21 = require("react");
5894
- var import_utils13 = require("@fctc/interface-logic/utils");
5894
+ var import_utils12 = require("@fctc/interface-logic/utils");
5895
5895
  var copyLinkButtonController = (props) => {
5896
5896
  const { value, defaultValue } = props;
5897
5897
  const [isCopied, setIsCopied] = (0, import_react21.useState)(false);
5898
5898
  const handleCopyToClipboard = async (value2) => {
5899
- await (0, import_utils13.copyTextToClipboard)(value2);
5899
+ await (0, import_utils12.copyTextToClipboard)(value2);
5900
5900
  setIsCopied(true);
5901
5901
  setTimeout(() => setIsCopied(false), 2e3);
5902
5902
  };
@@ -5909,12 +5909,12 @@ var copyLinkButtonController = (props) => {
5909
5909
  };
5910
5910
 
5911
5911
  // src/widget/basic/color-field/color-controller.ts
5912
- var import_utils14 = require("@fctc/interface-logic/utils");
5912
+ var import_utils13 = require("@fctc/interface-logic/utils");
5913
5913
  var colorFieldController = (props) => {
5914
5914
  const { value, isForm, name, formValues, idForm, model, actionData } = props;
5915
5915
  const { env } = (0, provider_exports.useEnv)();
5916
5916
  const { useSave: useSave3 } = (0, provider_exports.useService)();
5917
- const _context = { ...(0, import_utils14.evalJSONContext)(actionData?.context) || {} };
5917
+ const _context = { ...(0, import_utils13.evalJSONContext)(actionData?.context) || {} };
5918
5918
  const contextObject = { ...env.context, ..._context };
5919
5919
  const idDefault = isForm ? idForm : formValues?.id;
5920
5920
  const { mutate: onSave } = useSave3();
@@ -5943,7 +5943,7 @@ var colorFieldController = (props) => {
5943
5943
 
5944
5944
  // src/widget/basic/binary-field/controller.ts
5945
5945
  var import_react22 = require("react");
5946
- var import_utils15 = require("@fctc/interface-logic/utils");
5946
+ var import_utils14 = require("@fctc/interface-logic/utils");
5947
5947
  var binaryFieldController = (props) => {
5948
5948
  const { name, methods, readonly = false, value } = props;
5949
5949
  const inputId = (0, import_react22.useId)();
@@ -6000,11 +6000,11 @@ var binaryFieldController = (props) => {
6000
6000
  };
6001
6001
  const checkIsImageLink = (url) => {
6002
6002
  const imageExtensions = /\.(jpg|jpeg|png|gif|bmp|webp|svg|tiff|ico)$/i;
6003
- return imageExtensions.test(url) || (0, import_utils15.isBase64Image)(url) || isBlobUrl(url);
6003
+ return imageExtensions.test(url) || (0, import_utils14.isBase64Image)(url) || isBlobUrl(url);
6004
6004
  };
6005
6005
  const getImageBase64WithMimeType = (base64) => {
6006
6006
  if (typeof base64 !== "string" || base64.length < 10) return null;
6007
- if ((0, import_utils15.isBase64Image)(base64)) return base64;
6007
+ if ((0, import_utils14.isBase64Image)(base64)) return base64;
6008
6008
  let mimeType = null;
6009
6009
  if (base64.startsWith("iVBORw0KGgo")) mimeType = "image/png";
6010
6010
  else if (base64.startsWith("/9j/")) mimeType = "image/jpeg";
@@ -6107,7 +6107,7 @@ var tableHeadController = (props) => {
6107
6107
 
6108
6108
  // src/widget/advance/table/table-view/controller.ts
6109
6109
  var import_react24 = require("react");
6110
- var import_utils17 = require("@fctc/interface-logic/utils");
6110
+ var import_utils16 = require("@fctc/interface-logic/utils");
6111
6111
  var tableController = ({ data }) => {
6112
6112
  const [rows, setRows] = (0, import_react24.useState)(null);
6113
6113
  const [columns, setColumns] = (0, import_react24.useState)(null);
@@ -6145,7 +6145,7 @@ var tableController = ({ data }) => {
6145
6145
  let cols = [];
6146
6146
  try {
6147
6147
  cols = mergeFields?.filter((item) => {
6148
- return item?.widget !== "details_Receive_money" && !(item?.column_invisible ? import_utils17.domainHelper.matchDomains(data.context, item?.column_invisible) : item?.invisible ? import_utils17.domainHelper.matchDomains(data.context, item?.invisible) : false);
6148
+ return item?.widget !== "details_Receive_money" && !(item?.column_invisible ? import_utils16.domainHelper.matchDomains(data.context, item?.column_invisible) : item?.invisible ? import_utils16.domainHelper.matchDomains(data.context, item?.invisible) : false);
6149
6149
  })?.map((field) => {
6150
6150
  return {
6151
6151
  name: field?.name,
@@ -6329,7 +6329,7 @@ var tableGroupController = (props) => {
6329
6329
 
6330
6330
  // src/widget/advance/search/controller.ts
6331
6331
  var import_constants3 = require("@fctc/interface-logic/constants");
6332
- var import_utils19 = require("@fctc/interface-logic/utils");
6332
+ var import_utils18 = require("@fctc/interface-logic/utils");
6333
6333
  var import_moment2 = __toESM(require_moment());
6334
6334
  var import_react26 = require("react");
6335
6335
  var searchController = ({
@@ -6346,9 +6346,9 @@ var searchController = ({
6346
6346
  const [selectedTags, setSelectedTags] = (0, import_react26.useState)(null);
6347
6347
  const [searchString, setSearchString] = (0, import_react26.useState)("");
6348
6348
  const [searchMap, setSearchMap] = (0, import_react26.useState)({});
6349
- const actionContext = typeof context === "string" ? (0, import_utils19.evalJSONContext)(context) : context;
6349
+ const actionContext = typeof context === "string" ? (0, import_utils18.evalJSONContext)(context) : context;
6350
6350
  const contextSearch = { ...env.context, ...actionContext };
6351
- const domainAction = domain ? Array.isArray(domain) ? [...domain] : (0, import_utils19.evalJSONDomain)(domain, contextSearch) : [];
6351
+ const domainAction = domain ? Array.isArray(domain) ? [...domain] : (0, import_utils18.evalJSONDomain)(domain, contextSearch) : [];
6352
6352
  const clearSearch = () => {
6353
6353
  setFilterBy([]);
6354
6354
  setGroupBy([]);
@@ -6363,7 +6363,7 @@ var searchController = ({
6363
6363
  const dataModel = viewData?.models?.[model];
6364
6364
  const searchViews = viewData?.views?.search;
6365
6365
  const searchByItems = searchViews?.search_by?.filter(
6366
- (item) => !import_utils19.domainHelper.matchDomains(contextSearch, item.invisible)
6366
+ (item) => !import_utils18.domainHelper.matchDomains(contextSearch, item.invisible)
6367
6367
  )?.map(
6368
6368
  ({ string, name, filter_domain, operator, widget }, index) => ({
6369
6369
  dataIndex: index,
@@ -6376,10 +6376,10 @@ var searchController = ({
6376
6376
  })
6377
6377
  );
6378
6378
  const filterByItems = searchViews?.filter_by.filter((item) => {
6379
- return !import_utils19.domainHelper.matchDomains(contextSearch, item?.invisible);
6379
+ return !import_utils18.domainHelper.matchDomains(contextSearch, item?.invisible);
6380
6380
  })?.map((item) => ({ ...item, active: false }));
6381
6381
  const groupByItems = searchViews?.group_by.filter(
6382
- (item) => !import_utils19.domainHelper.matchDomains(contextSearch, item?.invisible)
6382
+ (item) => !import_utils18.domainHelper.matchDomains(contextSearch, item?.invisible)
6383
6383
  ).map((item) => ({
6384
6384
  ...item,
6385
6385
  string: item.string ?? viewData?.models?.[model]?.[item?.name?.split("group_by_")?.[1]]?.string
@@ -6456,14 +6456,14 @@ var searchController = ({
6456
6456
  }
6457
6457
  let valueDomainItem = value?.value;
6458
6458
  if (value?.modelType === "date") {
6459
- valueDomainItem = (0, import_utils19.validateAndParseDate)(value?.value);
6459
+ valueDomainItem = (0, import_utils18.validateAndParseDate)(value?.value);
6460
6460
  } else if (value?.modelType === "datetime") {
6461
6461
  if (value?.operator === "<=" || value?.operator === "<") {
6462
- const parsedDate = (0, import_utils19.validateAndParseDate)(value?.value, true);
6462
+ const parsedDate = (0, import_utils18.validateAndParseDate)(value?.value, true);
6463
6463
  const hasTime = (0, import_moment2.default)(value?.value).format("HH:mm:ss") !== "00:00:00";
6464
6464
  valueDomainItem = hasTime ? (0, import_moment2.default)(parsedDate).format("YYYY-MM-DD HH:mm:ss") : (0, import_moment2.default)(parsedDate).add(1, "day").subtract(1, "second").format("YYYY-MM-DD HH:mm:ss");
6465
6465
  } else {
6466
- valueDomainItem = (0, import_utils19.validateAndParseDate)(value?.value, true);
6466
+ valueDomainItem = (0, import_utils18.validateAndParseDate)(value?.value, true);
6467
6467
  }
6468
6468
  }
6469
6469
  const operator = value?.modelType === "date" || value?.modelType === "datetime" || value?.modelType === "boolean" || value?.modelType === "integer" ? value?.operator ?? "=" : value.operator ?? "ilike";
@@ -6542,7 +6542,7 @@ var searchController = ({
6542
6542
  }, [searchMap]);
6543
6543
  const handleAddTagSearch = (tag) => {
6544
6544
  const { domain: domain2, groupIndex, value, type, context: context2, dataIndex } = tag;
6545
- const domainFormat = new import_utils19.domainHelper.Domain(domain2);
6545
+ const domainFormat = new import_utils18.domainHelper.Domain(domain2);
6546
6546
  if (type === import_constants3.SearchType.FILTER) {
6547
6547
  addSearchItems(`${import_constants3.SearchType.FILTER}_${groupIndex}`, {
6548
6548
  ...tag,
package/dist/widget.mjs CHANGED
@@ -59,7 +59,7 @@ var require_moment = __commonJS({
59
59
  function hasOwnProp(a, b) {
60
60
  return Object.prototype.hasOwnProperty.call(a, b);
61
61
  }
62
- function isObjectEmpty5(obj) {
62
+ function isObjectEmpty4(obj) {
63
63
  if (Object.getOwnPropertyNames) {
64
64
  return Object.getOwnPropertyNames(obj).length === 0;
65
65
  } else {
@@ -2198,7 +2198,7 @@ var require_moment = __commonJS({
2198
2198
  strict = locale2;
2199
2199
  locale2 = void 0;
2200
2200
  }
2201
- if (isObject(input) && isObjectEmpty5(input) || isArray(input) && input.length === 0) {
2201
+ if (isObject(input) && isObjectEmpty4(input) || isArray(input) && input.length === 0) {
2202
2202
  input = void 0;
2203
2203
  }
2204
2204
  c._isAMomentObject = true;
@@ -2617,7 +2617,7 @@ var require_moment = __commonJS({
2617
2617
  return isMoment(input) || isDate(input) || isString(input) || isNumber(input) || isNumberOrStringArray(input) || isMomentInputObject(input) || input === null || input === void 0;
2618
2618
  }
2619
2619
  function isMomentInputObject(input) {
2620
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2620
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2621
2621
  "years",
2622
2622
  "year",
2623
2623
  "y",
@@ -2659,7 +2659,7 @@ var require_moment = __commonJS({
2659
2659
  return arrayTest && dataTypeTest;
2660
2660
  }
2661
2661
  function isCalendarSpec(input) {
2662
- var objectTest = isObject(input) && !isObjectEmpty5(input), propertyTest = false, properties = [
2662
+ var objectTest = isObject(input) && !isObjectEmpty4(input), propertyTest = false, properties = [
2663
2663
  "sameDay",
2664
2664
  "nextDay",
2665
2665
  "lastDay",
@@ -4400,7 +4400,7 @@ import { useMemo as useMemo7, useState as useState6 } from "react";
4400
4400
  import {
4401
4401
  evalJSONDomain,
4402
4402
  formatSortingString,
4403
- isObjectEmpty as isObjectEmpty4
4403
+ isObjectEmpty as isObjectEmpty3
4404
4404
  } from "@fctc/interface-logic/utils";
4405
4405
 
4406
4406
  // src/hooks/utils/use-click-outside.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fctc/widget-logic",
3
- "version": "2.5.5",
3
+ "version": "2.5.6",
4
4
  "types": "dist/index.d.ts",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",