@fctc/widget-logic 3.0.4 → 3.0.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/index.mjs CHANGED
@@ -4240,13 +4240,63 @@ import { createContext, useContext, useMemo as useMemo5 } from "react";
4240
4240
  import { useMemo, useState as useState2 } from "react";
4241
4241
 
4242
4242
  // src/hooks/core/use-call-action.ts
4243
- import { useCallback as useCallback2, useState } from "react";
4243
+ import { useCallback, useState } from "react";
4244
4244
 
4245
4245
  // src/provider.ts
4246
4246
  var provider_exports = {};
4247
4247
  __reExport(provider_exports, provider_star);
4248
4248
  import * as provider_star from "@fctc/interface-logic/provider";
4249
4249
 
4250
+ // src/hooks/core/use-call-action.ts
4251
+ var useCallAction = () => {
4252
+ const { env } = (0, provider_exports.useEnv)();
4253
+ const { useLoadAction: useLoadAction2, useRunAction: useRunAction2 } = (0, provider_exports.useService)();
4254
+ const queryLoadAction = useLoadAction2();
4255
+ const queryRunAction = useRunAction2();
4256
+ const [actionData, setActionData] = useState(
4257
+ void 0
4258
+ );
4259
+ const callAction = useCallback(
4260
+ async ({
4261
+ aid,
4262
+ service,
4263
+ xNode,
4264
+ context
4265
+ }) => {
4266
+ try {
4267
+ const menuContext = {
4268
+ ...env?.context,
4269
+ ...context
4270
+ };
4271
+ const loadRes = await queryLoadAction.mutateAsync({
4272
+ idAction: aid,
4273
+ context: menuContext,
4274
+ service,
4275
+ xNode
4276
+ });
4277
+ if (loadRes?.result?.type === "ir.actions.server") {
4278
+ const runRes = await queryRunAction.mutateAsync({
4279
+ idAction: aid,
4280
+ context: menuContext,
4281
+ service,
4282
+ xNode
4283
+ });
4284
+ setActionData(runRes?.result);
4285
+ return runRes?.result;
4286
+ } else {
4287
+ setActionData(loadRes?.result);
4288
+ return loadRes?.result;
4289
+ }
4290
+ } catch (err) {
4291
+ console.error("callAction error:", err);
4292
+ return void 0;
4293
+ }
4294
+ },
4295
+ [env?.context?.lang]
4296
+ );
4297
+ return [actionData, callAction];
4298
+ };
4299
+
4250
4300
  // src/utils.ts
4251
4301
  var utils_exports = {};
4252
4302
  __export(utils_exports, {
@@ -4268,7 +4318,7 @@ var languages = [
4268
4318
  ];
4269
4319
 
4270
4320
  // src/utils/function.ts
4271
- import { useCallback, useEffect, useReducer } from "react";
4321
+ import { useCallback as useCallback2, useEffect, useReducer } from "react";
4272
4322
  var countSum = (data, field) => {
4273
4323
  if (!data || !field) return 0;
4274
4324
  return data.reduce(
@@ -4415,7 +4465,7 @@ function useStorageState(key) {
4415
4465
  console.error("Local storage is unavailable:", e);
4416
4466
  }
4417
4467
  }, [key]);
4418
- const setValue = useCallback(
4468
+ const setValue = useCallback2(
4419
4469
  (value) => {
4420
4470
  setState(value);
4421
4471
  setStorageItemAsync(key, value);
@@ -4429,58 +4479,6 @@ function useStorageState(key) {
4429
4479
  __reExport(utils_exports, utils_star);
4430
4480
  import * as utils_star from "@fctc/interface-logic/utils";
4431
4481
 
4432
- // src/hooks/core/use-call-action.ts
4433
- var useCallAction = () => {
4434
- const { env } = (0, provider_exports.useEnv)();
4435
- const { useLoadAction: useLoadAction2, useRunAction: useRunAction2 } = (0, provider_exports.useService)();
4436
- const queryLoadAction = useLoadAction2();
4437
- const queryRunAction = useRunAction2();
4438
- const [actionData, setActionData] = useState(
4439
- void 0
4440
- );
4441
- const callAction = useCallback2(
4442
- async ({
4443
- aid,
4444
- service,
4445
- xNode,
4446
- context
4447
- }) => {
4448
- try {
4449
- const loadRes = await queryLoadAction.mutateAsync({
4450
- idAction: aid,
4451
- context: {
4452
- ...env?.context,
4453
- ...context ? (0, utils_exports.evalJSONContext)(context, { ...env?.context }) || {} : {}
4454
- },
4455
- service,
4456
- xNode
4457
- });
4458
- if (loadRes?.result?.type === "ir.actions.server") {
4459
- const runRes = await queryRunAction.mutateAsync({
4460
- idAction: aid,
4461
- context: {
4462
- ...env?.context,
4463
- ...context ? (0, utils_exports.evalJSONContext)(context, { ...env?.context }) || {} : {}
4464
- },
4465
- service,
4466
- xNode
4467
- });
4468
- setActionData(runRes?.result);
4469
- return runRes?.result;
4470
- } else {
4471
- setActionData(loadRes?.result);
4472
- return loadRes?.result;
4473
- }
4474
- } catch (err) {
4475
- console.error("callAction error:", err);
4476
- return void 0;
4477
- }
4478
- },
4479
- [env?.context?.lang]
4480
- );
4481
- return [actionData, callAction];
4482
- };
4483
-
4484
4482
  // src/hooks/core/use-menu.ts
4485
4483
  var useMenu = ({
4486
4484
  context,
@@ -4517,7 +4515,8 @@ var useMenu = ({
4517
4515
  const handleChangeMenu = async ({
4518
4516
  menu,
4519
4517
  service: service2,
4520
- xNode: xNode2
4518
+ xNode: xNode2,
4519
+ context: context2
4521
4520
  }) => {
4522
4521
  const aidMenu = menu?.action?.id?.id;
4523
4522
  if (menu) {
@@ -4527,7 +4526,8 @@ var useMenu = ({
4527
4526
  const actionResponse = await callAction({
4528
4527
  aid: Number(aidMenu),
4529
4528
  service: service2 ?? "",
4530
- xNode: xNode2
4529
+ xNode: xNode2,
4530
+ context: context2
4531
4531
  });
4532
4532
  setService(service2 ?? "");
4533
4533
  setXNode(xNode2 ?? "");
@@ -5563,7 +5563,7 @@ var many2oneFieldController = (props) => {
5563
5563
  // src/widget/basic/many2one-button-field/controller.ts
5564
5564
  import { getEnv as getEnv2 } from "@fctc/interface-logic/environment";
5565
5565
  import { useGetSelection as useGetSelection2 } from "@fctc/interface-logic/hooks";
5566
- import { evalJSONDomain as evalJSONDomain3, evalJSONContext as evalJSONContext4 } from "@fctc/interface-logic/utils";
5566
+ import { evalJSONDomain as evalJSONDomain3, evalJSONContext as evalJSONContext3 } from "@fctc/interface-logic/utils";
5567
5567
  var many2oneButtonController = (props) => {
5568
5568
  const { domain, methods, relation, service, xNode } = props;
5569
5569
  const actionDataString = sessionStorage.getItem("actionData");
@@ -5574,7 +5574,7 @@ var many2oneButtonController = (props) => {
5574
5574
  data: {
5575
5575
  model: relation ?? "",
5576
5576
  domain: domainObject,
5577
- context: { ...env.context, ...evalJSONContext4(actionData?.context) }
5577
+ context: { ...env.context, ...evalJSONContext3(actionData?.context) }
5578
5578
  },
5579
5579
  queryKey: [`data_${relation}`, domainObject],
5580
5580
  service,
@@ -5590,29 +5590,21 @@ var many2oneButtonController = (props) => {
5590
5590
  };
5591
5591
 
5592
5592
  // src/widget/basic/many2many-field/controller.ts
5593
- import { useEffect as useEffect11, useState as useState8 } from "react";
5594
- import {
5595
- evalJSONContext as evalJSONContext5,
5596
- evalJSONDomain as evalJSONDomain4,
5597
- formatSortingString as formatSortingString2
5598
- } from "@fctc/interface-logic/utils";
5593
+ import { useEffect as useEffect11 } from "react";
5594
+ import { evalJSONContext as evalJSONContext4 } from "@fctc/interface-logic/utils";
5599
5595
  var many2manyFieldController = (props) => {
5600
5596
  const {
5601
5597
  relation,
5602
5598
  domain,
5603
5599
  context,
5604
5600
  options,
5605
- tab,
5606
- setSelectedRowKeys,
5607
- groupByDomain,
5608
- enabled: enabledCallAPI
5601
+ enabled: enabledCallAPI,
5602
+ service
5609
5603
  } = props;
5610
5604
  const { env } = (0, provider_exports.useEnv)();
5611
- const { useGetView: useGetView2, useGetListData: useGetListData2, useGetFormView: useGetFormView2 } = (0, provider_exports.useService)();
5612
- const [order, setOrder] = useState8();
5613
- const [page, setPage] = useState8(0);
5614
- const [domainMany2Many, setDomainMany2Many] = useState8(null);
5615
- const [debouncedPage] = useDebounce(page, 500);
5605
+ const { user } = useAppProvider();
5606
+ const { useGetView: useGetView2 } = (0, provider_exports.useService)();
5607
+ const dataUser = user?.userProfile?.data;
5616
5608
  const contextObject = {
5617
5609
  ...env.context,
5618
5610
  ...context || {}
@@ -5629,61 +5621,46 @@ var many2manyFieldController = (props) => {
5629
5621
  viewParams,
5630
5622
  enabled: enabledCallAPI
5631
5623
  });
5632
- const { specification } = useGetSpecification({
5633
- model: String(relation),
5634
- viewData: viewResponse || {},
5635
- fields: [
5636
- ...Object.values(viewResponse?.views?.list?.fields ?? {}),
5637
- ...tab?.fields ? tab.fields : []
5638
- ]
5639
- });
5640
5624
  const default_order = viewResponse && viewResponse?.views?.list?.default_order;
5641
- const optionsObject = tab?.options ? evalJSONContext5(tab?.options) : (options ? evalJSONContext5(options) : {}) || {};
5642
- const fetchData = async () => {
5643
- try {
5644
- const domainParse = typeof domain === "string" ? evalJSONDomain4(domain, contextObject) : Array.isArray(domain) ? domain : [];
5645
- setDomainMany2Many(domainParse);
5646
- setPage(0);
5647
- } catch (err) {
5648
- console.log(err);
5649
- }
5650
- };
5651
- const queryKey = [
5652
- `view-${relation}`,
5653
- specification,
5654
- domainMany2Many,
5655
- debouncedPage,
5656
- groupByDomain,
5657
- order
5658
- ];
5659
- const data = {
5660
- model: relation,
5661
- specification,
5662
- domain: domainMany2Many,
5663
- offset: debouncedPage * 10,
5664
- limit: 10,
5665
- context: contextObject,
5666
- fields: groupByDomain?.fields,
5667
- groupby: [groupByDomain?.contexts[0]?.group_by],
5668
- sort: order ? order : default_order ? formatSortingString2(default_order) : ""
5669
- };
5670
- const enabled = enabledCallAPI && !!specification && !!relation && !!domainMany2Many && !!viewResponse;
5625
+ const optionsObject = (options && typeof options === "string" ? evalJSONContext4(options) : options) || {};
5671
5626
  const {
5672
5627
  data: dataResponse,
5673
- isLoading,
5674
5628
  isFetched,
5629
+ isLoading,
5630
+ state,
5675
5631
  isPlaceholderData
5676
- } = useGetListData2(data, queryKey, enabled);
5632
+ } = useListData({
5633
+ action: {
5634
+ domain,
5635
+ res_model: relation
5636
+ },
5637
+ context: contextObject,
5638
+ model: relation ?? "",
5639
+ viewData: viewResponse,
5640
+ service,
5641
+ xNode: service == "wesap" && dataUser.x_node
5642
+ });
5643
+ const {
5644
+ selectedRowKeys,
5645
+ groupByList,
5646
+ domain: domainList,
5647
+ page,
5648
+ pageLimit,
5649
+ setDomain,
5650
+ setOrder,
5651
+ setPage,
5652
+ setSelectedRowKeys,
5653
+ setGroupByList,
5654
+ setPageLimit
5655
+ } = state;
5677
5656
  useEffect11(() => {
5678
- if (viewResponse) {
5679
- fetchData();
5680
- }
5681
5657
  return () => {
5682
- setPage(0);
5683
- setSelectedRowKeys([]);
5684
- setDomainMany2Many(null);
5658
+ setDomain(null);
5659
+ setOrder("");
5660
+ setGroupByList(null);
5661
+ setPageLimit(10);
5685
5662
  };
5686
- }, [viewResponse]);
5663
+ }, []);
5687
5664
  const { rows, columns, typeTable, onToggleColumnOptional } = tableController({
5688
5665
  data: {
5689
5666
  fields: viewResponse?.views?.list?.fields,
@@ -5707,29 +5684,35 @@ var many2manyFieldController = (props) => {
5707
5684
  const handleCreateNewOnPage = async () => {
5708
5685
  };
5709
5686
  return {
5710
- handleCreateNewOnPage,
5711
- optionsObject,
5712
- totalRows: dataResponse?.length ?? 0,
5713
5687
  rows,
5714
5688
  columns,
5689
+ optionsObject,
5690
+ viewData: viewResponse,
5691
+ totalRows: dataResponse?.length ?? 0,
5715
5692
  onToggleColumnOptional,
5716
5693
  typeTable,
5717
5694
  isLoading,
5718
5695
  isFetched,
5719
5696
  isPlaceholderData,
5720
- setPage,
5721
5697
  page,
5722
- viewData: viewResponse,
5723
- domain: domainMany2Many,
5724
- setDomain: setDomainMany2Many,
5725
- searchController: searchControllers
5698
+ pageLimit,
5699
+ groupByList,
5700
+ selectedRowKeys,
5701
+ domain: domainList,
5702
+ setPage,
5703
+ setDomain,
5704
+ setPageLimit,
5705
+ setGroupByList,
5706
+ setSelectedRowKeys,
5707
+ searchController: searchControllers,
5708
+ handleCreateNewOnPage
5726
5709
  };
5727
5710
  };
5728
5711
 
5729
5712
  // src/widget/basic/many2many-tags-field/controller.ts
5730
5713
  import { useMemo as useMemo9 } from "react";
5731
5714
  import { WIDGETAVATAR, WIDGETCOLOR } from "@fctc/interface-logic/constants";
5732
- import { evalJSONContext as evalJSONContext6, evalJSONDomain as evalJSONDomain5 } from "@fctc/interface-logic/utils";
5715
+ import { evalJSONContext as evalJSONContext5, evalJSONDomain as evalJSONDomain4 } from "@fctc/interface-logic/utils";
5733
5716
  var many2manyTagsController = (props) => {
5734
5717
  const {
5735
5718
  relation,
@@ -5744,9 +5727,9 @@ var many2manyTagsController = (props) => {
5744
5727
  const isUser = relation === "res.users" || relation === "res.partner";
5745
5728
  const { env } = (0, provider_exports.useEnv)();
5746
5729
  const { useGetSelection: useGetSelection3 } = (0, provider_exports.useService)();
5747
- const addtionalFields = optionsFields ? evalJSONContext6(optionsFields) : null;
5730
+ const addtionalFields = optionsFields ? evalJSONContext5(optionsFields) : null;
5748
5731
  const domainObject = useMemo9(
5749
- () => evalJSONDomain5(domain, JSON.parse(JSON.stringify(formValues || {}))),
5732
+ () => evalJSONDomain4(domain, JSON.parse(JSON.stringify(formValues || {}))),
5750
5733
  [domain, formValues]
5751
5734
  );
5752
5735
  const data = {
@@ -5789,8 +5772,8 @@ var many2manyTagsController = (props) => {
5789
5772
  };
5790
5773
 
5791
5774
  // src/widget/basic/status-bar-field/controller.ts
5792
- import { useState as useState9 } from "react";
5793
- import { evalJSONDomain as evalJSONDomain6 } from "@fctc/interface-logic/utils";
5775
+ import { useState as useState8 } from "react";
5776
+ import { evalJSONDomain as evalJSONDomain5 } from "@fctc/interface-logic/utils";
5794
5777
  var durationController = (props) => {
5795
5778
  const { relation, domain, formValues, name, id, model, onRefetch, enabled } = props;
5796
5779
  const specification = {
@@ -5800,13 +5783,13 @@ var durationController = (props) => {
5800
5783
  };
5801
5784
  const { useGetListData: useGetListData2, useChangeStatus: useChangeStatus2 } = (0, provider_exports.useService)();
5802
5785
  const { env } = (0, provider_exports.useEnv)();
5803
- const [disabled, setDisabled] = useState9(false);
5804
- const [modelStatus, setModalStatus] = useState9(false);
5786
+ const [disabled, setDisabled] = useState8(false);
5787
+ const [modelStatus, setModalStatus] = useState8(false);
5805
5788
  const queryKey = [`data-status-duration`, specification];
5806
5789
  const listDataProps = {
5807
5790
  model: relation,
5808
5791
  specification,
5809
- domain: evalJSONDomain6(domain, JSON.parse(JSON.stringify(formValues))),
5792
+ domain: evalJSONDomain5(domain, JSON.parse(JSON.stringify(formValues))),
5810
5793
  limit: 10,
5811
5794
  offset: 0,
5812
5795
  fields: "",
@@ -5856,10 +5839,10 @@ var durationController = (props) => {
5856
5839
  };
5857
5840
 
5858
5841
  // src/widget/basic/priority-field/controller.ts
5859
- import { evalJSONContext as evalJSONContext7 } from "@fctc/interface-logic/utils";
5842
+ import { evalJSONContext as evalJSONContext6 } from "@fctc/interface-logic/utils";
5860
5843
  var priorityFieldController = (props) => {
5861
5844
  const { name, model, index, actionData, context, onChange, specification } = props;
5862
- const _context = { ...evalJSONContext7(actionData?.context) };
5845
+ const _context = { ...evalJSONContext6(actionData?.context) };
5863
5846
  const contextObject = { ...context, ..._context };
5864
5847
  const { useSave: useSave3 } = (0, provider_exports.useService)();
5865
5848
  const { mutateAsync: fetchSave } = useSave3();
@@ -5891,10 +5874,10 @@ var priorityFieldController = (props) => {
5891
5874
  };
5892
5875
 
5893
5876
  // src/widget/basic/download-file-field/controller.ts
5894
- import { useId, useState as useState10 } from "react";
5877
+ import { useId, useState as useState9 } from "react";
5895
5878
  var downloadFileController = () => {
5896
5879
  const inputId = useId();
5897
- const [file, setFile] = useState10(null);
5880
+ const [file, setFile] = useState9(null);
5898
5881
  const handleFileChange = (e) => {
5899
5882
  setFile(e.target.files[0]);
5900
5883
  };
@@ -6826,11 +6809,11 @@ var dateFieldController = (props) => {
6826
6809
  };
6827
6810
 
6828
6811
  // src/widget/basic/copy-link-button/controller.ts
6829
- import { useState as useState11 } from "react";
6812
+ import { useState as useState10 } from "react";
6830
6813
  import { copyTextToClipboard } from "@fctc/interface-logic/utils";
6831
6814
  var copyLinkButtonController = (props) => {
6832
6815
  const { value, defaultValue } = props;
6833
- const [isCopied, setIsCopied] = useState11(false);
6816
+ const [isCopied, setIsCopied] = useState10(false);
6834
6817
  const handleCopyToClipboard = async (value2) => {
6835
6818
  await copyTextToClipboard(value2);
6836
6819
  setIsCopied(true);
@@ -6845,12 +6828,12 @@ var copyLinkButtonController = (props) => {
6845
6828
  };
6846
6829
 
6847
6830
  // src/widget/basic/color-field/color-controller.ts
6848
- import { evalJSONContext as evalJSONContext8 } from "@fctc/interface-logic/utils";
6831
+ import { evalJSONContext as evalJSONContext7 } from "@fctc/interface-logic/utils";
6849
6832
  var colorFieldController = (props) => {
6850
6833
  const { value, isForm, name, formValues, idForm, model, actionData } = props;
6851
6834
  const { env } = (0, provider_exports.useEnv)();
6852
6835
  const { useSave: useSave3 } = (0, provider_exports.useService)();
6853
- const _context = { ...evalJSONContext8(actionData?.context) || {} };
6836
+ const _context = { ...evalJSONContext7(actionData?.context) || {} };
6854
6837
  const contextObject = { ...env.context, ..._context };
6855
6838
  const idDefault = isForm ? idForm : formValues?.id;
6856
6839
  const { mutate: onSave } = useSave3();
@@ -6878,14 +6861,14 @@ var colorFieldController = (props) => {
6878
6861
  };
6879
6862
 
6880
6863
  // src/widget/basic/binary-field/controller.ts
6881
- import { useEffect as useEffect12, useId as useId2, useRef as useRef4, useState as useState12 } from "react";
6864
+ import { useEffect as useEffect12, useId as useId2, useRef as useRef4, useState as useState11 } from "react";
6882
6865
  import { isBase64Image } from "@fctc/interface-logic/utils";
6883
6866
  var binaryFieldController = (props) => {
6884
6867
  const { name, methods, readonly = false, value } = props;
6885
6868
  const inputId = useId2();
6886
- const [selectedImage, setSelectedImage] = useState12(null);
6887
- const [initialImage, setInitialImage] = useState12(value || null);
6888
- const [isInsideTable, setIsInsideTable] = useState12(false);
6869
+ const [selectedImage, setSelectedImage] = useState11(null);
6870
+ const [initialImage, setInitialImage] = useState11(value || null);
6871
+ const [isInsideTable, setIsInsideTable] = useState11(false);
6889
6872
  const { setValue } = methods;
6890
6873
  const binaryRef = useRef4(null);
6891
6874
  const convertUrlToBase64 = async (url) => {
@@ -7042,11 +7025,11 @@ var tableHeadController = (props) => {
7042
7025
  };
7043
7026
 
7044
7027
  // src/widget/advance/table/table-view/controller.ts
7045
- import { useEffect as useEffect13, useState as useState13 } from "react";
7028
+ import { useEffect as useEffect13, useState as useState12 } from "react";
7046
7029
  import { domainHelper } from "@fctc/interface-logic/utils";
7047
7030
  var tableController = ({ data }) => {
7048
- const [rows, setRows] = useState13(null);
7049
- const [columns, setColumns] = useState13(null);
7031
+ const [rows, setRows] = useState12(null);
7032
+ const [columns, setColumns] = useState12(null);
7050
7033
  const dataModelFields = data?.fields?.map((field) => {
7051
7034
  return {
7052
7035
  ...data.dataModel?.[field?.name],
@@ -7131,7 +7114,7 @@ var tableController = ({ data }) => {
7131
7114
  };
7132
7115
 
7133
7116
  // src/widget/advance/table/table-group/controller.ts
7134
- import { useEffect as useEffect14, useMemo as useMemo11, useState as useState14 } from "react";
7117
+ import { useEffect as useEffect14, useMemo as useMemo11, useState as useState13 } from "react";
7135
7118
  import { useAppSelector as useAppSelector2, selectList } from "@fctc/interface-logic/store";
7136
7119
  var tableGroupController = (props) => {
7137
7120
  const { env } = (0, provider_exports.useEnv)();
@@ -7148,10 +7131,10 @@ var tableGroupController = (props) => {
7148
7131
  groupByList,
7149
7132
  setSelectedRowKeys
7150
7133
  } = props;
7151
- const [pageGroup, setPageGroup] = useState14(0);
7134
+ const [pageGroup, setPageGroup] = useState13(0);
7152
7135
  const { selectedRowKeys } = useAppSelector2(selectList);
7153
- const [isShowGroup, setIsShowGroup] = useState14(false);
7154
- const [colEmptyGroup, setColEmptyGroup] = useState14({
7136
+ const [isShowGroup, setIsShowGroup] = useState13(false);
7137
+ const [colEmptyGroup, setColEmptyGroup] = useState13({
7155
7138
  fromStart: 1,
7156
7139
  fromEnd: 1
7157
7140
  });
@@ -7269,11 +7252,11 @@ var import_moment2 = __toESM(require_moment());
7269
7252
  import { SearchType } from "@fctc/interface-logic/constants";
7270
7253
  import {
7271
7254
  domainHelper as domainHelper2,
7272
- evalJSONContext as evalJSONContext9,
7273
- evalJSONDomain as evalJSONDomain7,
7255
+ evalJSONContext as evalJSONContext8,
7256
+ evalJSONDomain as evalJSONDomain6,
7274
7257
  validateAndParseDate
7275
7258
  } from "@fctc/interface-logic/utils";
7276
- import { useCallback as useCallback5, useEffect as useEffect15, useState as useState15 } from "react";
7259
+ import { useCallback as useCallback5, useEffect as useEffect15, useState as useState14 } from "react";
7277
7260
  var searchController = ({
7278
7261
  viewData,
7279
7262
  model,
@@ -7282,15 +7265,15 @@ var searchController = ({
7282
7265
  fieldsList
7283
7266
  }) => {
7284
7267
  const { env } = (0, provider_exports.useEnv)();
7285
- const [filterBy, setFilterBy] = useState15(null);
7286
- const [searchBy, setSearchBy] = useState15(null);
7287
- const [groupBy, setGroupBy] = useState15(null);
7288
- const [selectedTags, setSelectedTags] = useState15(null);
7289
- const [searchString, setSearchString] = useState15("");
7290
- const [searchMap, setSearchMap] = useState15({});
7291
- const actionContext = typeof context === "string" ? evalJSONContext9(context) : context;
7268
+ const [filterBy, setFilterBy] = useState14(null);
7269
+ const [searchBy, setSearchBy] = useState14(null);
7270
+ const [groupBy, setGroupBy] = useState14(null);
7271
+ const [selectedTags, setSelectedTags] = useState14(null);
7272
+ const [searchString, setSearchString] = useState14("");
7273
+ const [searchMap, setSearchMap] = useState14({});
7274
+ const actionContext = typeof context === "string" ? evalJSONContext8(context) : context;
7292
7275
  const contextSearch = { ...env.context, ...actionContext };
7293
- const domainAction = domain ? Array.isArray(domain) ? [...domain] : evalJSONDomain7(domain, contextSearch) : [];
7276
+ const domainAction = domain ? Array.isArray(domain) ? [...domain] : evalJSONDomain6(domain, contextSearch) : [];
7294
7277
  const clearSearch = () => {
7295
7278
  setFilterBy([]);
7296
7279
  setGroupBy([]);
package/dist/widget.d.mts CHANGED
@@ -61,30 +61,35 @@ declare const many2oneButtonController: (props: any) => {
61
61
  };
62
62
 
63
63
  interface IMany2ManyControllerProps extends IInputFieldProps {
64
- tab: any;
65
- setSelectedRowKeys: any;
66
- groupByDomain: any;
67
- options: any;
68
- enabled: boolean;
69
- viewData: any;
64
+ relation: string;
65
+ domain?: any;
66
+ context?: any;
67
+ options?: any;
68
+ enabled?: boolean;
69
+ service?: string;
70
70
  }
71
71
 
72
72
  declare const many2manyFieldController: (props: IMany2ManyControllerProps) => {
73
- handleCreateNewOnPage: () => Promise<void>;
74
- optionsObject: any;
75
- totalRows: any;
76
73
  rows: any;
77
74
  columns: any;
75
+ optionsObject: any;
76
+ viewData: any;
77
+ totalRows: any;
78
78
  onToggleColumnOptional: (item: any) => void;
79
79
  typeTable: "list" | "group" | "calendar" | undefined;
80
80
  isLoading: boolean;
81
81
  isFetched: boolean;
82
82
  isPlaceholderData: boolean;
83
- setPage: react.Dispatch<react.SetStateAction<number>>;
84
83
  page: number;
85
- viewData: any;
84
+ pageLimit: number;
85
+ groupByList: any;
86
+ selectedRowKeys: number[];
86
87
  domain: any;
88
+ setPage: react.Dispatch<react.SetStateAction<number>>;
87
89
  setDomain: react.Dispatch<any>;
90
+ setPageLimit: react.Dispatch<react.SetStateAction<number>>;
91
+ setGroupByList: react.Dispatch<any>;
92
+ setSelectedRowKeys: react.Dispatch<react.SetStateAction<number[]>>;
88
93
  searchController: {
89
94
  groupBy: any[] | null;
90
95
  searchBy: any[] | null;
@@ -102,6 +107,7 @@ declare const many2manyFieldController: (props: IMany2ManyControllerProps) => {
102
107
  domain: any[] | undefined;
103
108
  context: any;
104
109
  };
110
+ handleCreateNewOnPage: () => Promise<void>;
105
111
  };
106
112
 
107
113
  interface IMany2ManyTagFieldProps extends IInputFieldProps {
package/dist/widget.d.ts CHANGED
@@ -61,30 +61,35 @@ declare const many2oneButtonController: (props: any) => {
61
61
  };
62
62
 
63
63
  interface IMany2ManyControllerProps extends IInputFieldProps {
64
- tab: any;
65
- setSelectedRowKeys: any;
66
- groupByDomain: any;
67
- options: any;
68
- enabled: boolean;
69
- viewData: any;
64
+ relation: string;
65
+ domain?: any;
66
+ context?: any;
67
+ options?: any;
68
+ enabled?: boolean;
69
+ service?: string;
70
70
  }
71
71
 
72
72
  declare const many2manyFieldController: (props: IMany2ManyControllerProps) => {
73
- handleCreateNewOnPage: () => Promise<void>;
74
- optionsObject: any;
75
- totalRows: any;
76
73
  rows: any;
77
74
  columns: any;
75
+ optionsObject: any;
76
+ viewData: any;
77
+ totalRows: any;
78
78
  onToggleColumnOptional: (item: any) => void;
79
79
  typeTable: "list" | "group" | "calendar" | undefined;
80
80
  isLoading: boolean;
81
81
  isFetched: boolean;
82
82
  isPlaceholderData: boolean;
83
- setPage: react.Dispatch<react.SetStateAction<number>>;
84
83
  page: number;
85
- viewData: any;
84
+ pageLimit: number;
85
+ groupByList: any;
86
+ selectedRowKeys: number[];
86
87
  domain: any;
88
+ setPage: react.Dispatch<react.SetStateAction<number>>;
87
89
  setDomain: react.Dispatch<any>;
90
+ setPageLimit: react.Dispatch<react.SetStateAction<number>>;
91
+ setGroupByList: react.Dispatch<any>;
92
+ setSelectedRowKeys: react.Dispatch<react.SetStateAction<number[]>>;
88
93
  searchController: {
89
94
  groupBy: any[] | null;
90
95
  searchBy: any[] | null;
@@ -102,6 +107,7 @@ declare const many2manyFieldController: (props: IMany2ManyControllerProps) => {
102
107
  domain: any[] | undefined;
103
108
  context: any;
104
109
  };
110
+ handleCreateNewOnPage: () => Promise<void>;
105
111
  };
106
112
 
107
113
  interface IMany2ManyTagFieldProps extends IInputFieldProps {