@fctc/widget-logic 1.2.5 → 1.2.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/index.mjs CHANGED
@@ -13,6 +13,10 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
13
13
  var __commonJS = (cb, mod) => function __require2() {
14
14
  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
15
15
  };
16
+ var __export = (target, all) => {
17
+ for (var name in all)
18
+ __defProp(target, name, { get: all[name], enumerable: true });
19
+ };
16
20
  var __copyProps = (to, from, except, desc) => {
17
21
  if (from && typeof from === "object" || typeof from === "function") {
18
22
  for (let key of __getOwnPropNames(from))
@@ -21,6 +25,7 @@ var __copyProps = (to, from, except, desc) => {
21
25
  }
22
26
  return to;
23
27
  };
28
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
24
29
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
30
  // If the importer is in node compatibility mode or this is not an ESM
26
31
  // file that has been converted to a CommonJS file using a Babel-
@@ -4031,6 +4036,24 @@ var require_moment = __commonJS({
4031
4036
  }
4032
4037
  });
4033
4038
 
4039
+ // src/hooks/index.ts
4040
+ var hooks_exports = {};
4041
+ __export(hooks_exports, {
4042
+ AppProvider: () => AppProvider,
4043
+ useAppProvider: () => useAppProvider,
4044
+ useAuth: () => useAuth,
4045
+ useCallAction: () => useCallAction,
4046
+ useClickOutside: () => useClickOutside,
4047
+ useConfig: () => useConfig,
4048
+ useDebounce: () => useDebounce,
4049
+ useDetail: () => useDetail,
4050
+ useListData: () => useListData,
4051
+ useMenu: () => useMenu,
4052
+ useProfile: () => useProfile,
4053
+ useUser: () => useUser,
4054
+ useViewV2: () => useViewV2
4055
+ });
4056
+
4034
4057
  // src/hooks/core/use-call-action.ts
4035
4058
  import { getEnv, useLoadAction, useRunAction } from "@fctc/interface-logic";
4036
4059
  import { useState } from "react";
@@ -4702,7 +4725,7 @@ var useCompany = (accessToken) => {
4702
4725
  var use_company_default = useCompany;
4703
4726
 
4704
4727
  // src/hooks/core/use-app-provider.tsx
4705
- import { evalJSONContext, MainProvider } from "@fctc/interface-logic";
4728
+ import { evalJSONContext } from "@fctc/interface-logic";
4706
4729
  import { jsx } from "react/jsx-runtime";
4707
4730
  var AppProviderInitialValue = {
4708
4731
  config: {},
@@ -4724,7 +4747,9 @@ var AppProvider = ({ children }) => {
4724
4747
  return combineContexts([user.context, company.context]);
4725
4748
  }, [user.context, company.context]);
4726
4749
  const menu = useMenu({ context: menuContext });
4727
- const action = useMemo7(() => menu.state.action, [menu.state.action]);
4750
+ const action = useMemo7(() => {
4751
+ return menu.state.action;
4752
+ }, [menu.state.action]);
4728
4753
  const viewContext = useMemo7(() => {
4729
4754
  return combineContexts([
4730
4755
  menuContext,
@@ -4757,14 +4782,11 @@ var AppProvider = ({ children }) => {
4757
4782
  }
4758
4783
  );
4759
4784
  };
4760
- var MainAppProvider = ({
4761
- children
4762
- }) => {
4763
- return /* @__PURE__ */ jsx(MainProvider, { children: /* @__PURE__ */ jsx(AppProvider, { children }) });
4764
- };
4765
4785
  var useAppProvider = () => {
4766
4786
  const context = useContext(ReactContext);
4767
- if (!context) return AppProviderInitialValue;
4787
+ if (!context) {
4788
+ return AppProviderInitialValue;
4789
+ }
4768
4790
  return context;
4769
4791
  };
4770
4792
 
@@ -4814,133 +4836,9 @@ function useDebounce(value, delay) {
4814
4836
  return [debouncedValue];
4815
4837
  }
4816
4838
 
4817
- // src/hooks/api/use-switch-locale.ts
4818
- import {
4819
- getEnv as getEnv5,
4820
- selectEnv,
4821
- useAppSelector as useAppSelector2,
4822
- useSwitchLocale
4823
- } from "@fctc/interface-logic";
4824
- import { useCallback as useCallback2 } from "react";
4825
- var useSwitchLocaleHandler = () => {
4826
- const switchUserLocale = useSwitchLocale();
4827
- const env = getEnv5();
4828
- const { context } = useAppSelector2(selectEnv);
4829
- const switchLocale = useCallback2(
4830
- async (langId) => {
4831
- if (!langId) return;
4832
- await switchUserLocale.mutateAsync({
4833
- data: {
4834
- id: parseInt(context?.uid),
4835
- values: { lang: langId }
4836
- }
4837
- });
4838
- env.setLang(langId);
4839
- },
4840
- [switchUserLocale]
4841
- );
4842
- return {
4843
- switchLocale,
4844
- isLoading: switchUserLocale.isPending,
4845
- error: switchUserLocale.error
4846
- };
4847
- };
4848
-
4849
- // src/hooks/api/use-login.ts
4850
- import { useLoginCredential as useLoginCredential2 } from "@fctc/interface-logic";
4851
- import { useCallback as useCallback3 } from "react";
4852
- var useLoginHandler = () => {
4853
- const loginMutate = useLoginCredential2();
4854
- const login = useCallback3(
4855
- ({
4856
- email,
4857
- password,
4858
- path
4859
- }, {
4860
- onSuccess,
4861
- onError
4862
- }) => {
4863
- loginMutate.mutate(
4864
- {
4865
- email,
4866
- password,
4867
- path
4868
- },
4869
- {
4870
- onSuccess,
4871
- onError
4872
- }
4873
- );
4874
- },
4875
- [loginMutate]
4876
- );
4877
- return {
4878
- login,
4879
- isLoading: loginMutate.isPending,
4880
- error: loginMutate.error
4881
- };
4882
- };
4883
-
4884
- // src/hooks/api/use-forgot-password.ts
4885
- import { useForgotPassword } from "@fctc/interface-logic";
4886
- import { useCallback as useCallback4 } from "react";
4887
- var useForgotPasswordHandler = () => {
4888
- const forgotPasswordMutate = useForgotPassword();
4889
- const sendForgotPassword = useCallback4(
4890
- (email, {
4891
- onSuccess,
4892
- onError
4893
- } = {}) => {
4894
- forgotPasswordMutate.mutate(email, {
4895
- onSuccess,
4896
- onError
4897
- });
4898
- },
4899
- [forgotPasswordMutate]
4900
- );
4901
- return {
4902
- sendForgotPassword,
4903
- isLoading: forgotPasswordMutate.isPending,
4904
- error: forgotPasswordMutate.error
4905
- };
4906
- };
4907
-
4908
- // src/hooks/api/use-reset-password.ts
4909
- import { useResetPassword } from "@fctc/interface-logic";
4910
- import { useCallback as useCallback5 } from "react";
4911
- var useResetPasswordHandler = () => {
4912
- const resetPasswordMutate = useResetPassword();
4913
- const resetPassword = useCallback5(
4914
- ({
4915
- password,
4916
- confirmPassword,
4917
- token
4918
- }, {
4919
- onSuccess,
4920
- onError
4921
- }) => {
4922
- resetPasswordMutate.mutate(
4923
- {
4924
- data: {
4925
- password,
4926
- confirmPassword
4927
- },
4928
- token
4929
- },
4930
- {
4931
- onSuccess,
4932
- onError
4933
- }
4934
- );
4935
- },
4936
- [resetPasswordMutate]
4937
- );
4938
- return {
4939
- resetPassword,
4940
- isLoading: resetPasswordMutate.isPending,
4941
- error: resetPasswordMutate.error
4942
- };
4943
- };
4839
+ // src/hooks/index.ts
4840
+ __reExport(hooks_exports, hook_star);
4841
+ import * as hook_star from "@fctc/interface-logic/hook";
4944
4842
 
4945
4843
  // src/icons/eye-icon.tsx
4946
4844
  import { jsx as jsx2, jsxs } from "react/jsx-runtime";
@@ -5050,10 +4948,10 @@ var CloseIcon = ({ className = "" }) => {
5050
4948
 
5051
4949
  // src/widget/basic/status-dropdown-field/controller.ts
5052
4950
  import { useEffect as useEffect9, useRef as useRef3, useState as useState6 } from "react";
5053
- import { getEnv as getEnv6, useSave } from "@fctc/interface-logic";
4951
+ import { getEnv as getEnv5, useSave } from "@fctc/interface-logic";
5054
4952
  var statusDropdownController = (props) => {
5055
4953
  const { selection, isForm, id, model, name, state, onRefetch } = props;
5056
- const env = getEnv6();
4954
+ const env = getEnv5();
5057
4955
  const colors = {
5058
4956
  normal: "bg-[#e9ecef]",
5059
4957
  done: "bg-primary",
@@ -5102,14 +5000,14 @@ var statusDropdownController = (props) => {
5102
5000
  };
5103
5001
 
5104
5002
  // src/widget/basic/many2one-field/controller.ts
5105
- import { useCallback as useCallback6, useEffect as useEffect10, useMemo as useMemo8, useState as useState7 } from "react";
5003
+ import { useCallback as useCallback2, useEffect as useEffect10, useMemo as useMemo8, useState as useState7 } from "react";
5106
5004
  import {
5107
5005
  evalJSONContext as evalJSONContext2,
5108
5006
  evalJSONDomain as evalJSONDomain2,
5109
- selectEnv as selectEnv2,
5007
+ selectEnv,
5110
5008
  selectNavbar,
5111
5009
  setListSubject,
5112
- useAppSelector as useAppSelector3,
5010
+ useAppSelector as useAppSelector2,
5113
5011
  useGetSelection
5114
5012
  } from "@fctc/interface-logic";
5115
5013
  var many2oneFieldController = (props) => {
@@ -5129,8 +5027,8 @@ var many2oneFieldController = (props) => {
5129
5027
  const [options, setOptions] = useState7([]);
5130
5028
  const [isShowModalMany2Many, setIsShowModalMany2Many] = useState7(false);
5131
5029
  const [tempSelectedOption, setTempSelectedOption] = useState7(null);
5132
- const { menuList } = useAppSelector3(selectNavbar);
5133
- const { context } = useAppSelector3(selectEnv2);
5030
+ const { menuList } = useAppSelector2(selectNavbar);
5031
+ const { context } = useAppSelector2(selectEnv);
5134
5032
  const [domainModal, setDomainModal] = useState7(null);
5135
5033
  const initValue = methods?.getValues(name);
5136
5034
  const domainObject = useMemo8(
@@ -5198,7 +5096,7 @@ var many2oneFieldController = (props) => {
5198
5096
  localStorage.setItem("aid", actionId);
5199
5097
  }
5200
5098
  }, [actionId]);
5201
- const handleChooseRecord = useCallback6(
5099
+ const handleChooseRecord = useCallback2(
5202
5100
  (idRecord) => {
5203
5101
  const newOption = options.find(
5204
5102
  (option) => option.value === idRecord
@@ -5223,8 +5121,8 @@ var many2oneFieldController = (props) => {
5223
5121
  },
5224
5122
  [options, methods, name, onChange]
5225
5123
  );
5226
- const handleClose = useCallback6(() => setIsShowModalMany2Many(false), []);
5227
- const handleSelectChange = useCallback6(
5124
+ const handleClose = useCallback2(() => setIsShowModalMany2Many(false), []);
5125
+ const handleSelectChange = useCallback2(
5228
5126
  (selectedOption) => {
5229
5127
  if (!selectedOption) {
5230
5128
  methods.setValue(name, null, { shouldDirty: true });
@@ -5249,7 +5147,7 @@ var many2oneFieldController = (props) => {
5249
5147
  [methods, name, onChange]
5250
5148
  );
5251
5149
  const allowShowDetail = showDetail && contextObject?.form_view_ref && (!("no_open" in optionsObject) || optionsObject?.no_open === false);
5252
- const fetchMoreOptions = useCallback6(() => {
5150
+ const fetchMoreOptions = useCallback2(() => {
5253
5151
  if (typeof dataOfSelection?.refetch === "function") {
5254
5152
  ;
5255
5153
  dataOfSelection.refetch();
@@ -5284,13 +5182,13 @@ var many2oneFieldController = (props) => {
5284
5182
  import {
5285
5183
  evalJSONContext as evalJSONContext3,
5286
5184
  evalJSONDomain as evalJSONDomain3,
5287
- getEnv as getEnv7,
5185
+ getEnv as getEnv6,
5288
5186
  useGetSelection as useGetSelection2
5289
5187
  } from "@fctc/interface-logic";
5290
5188
  var many2oneButtonController = (props) => {
5291
5189
  const { domain, methods, relation } = props;
5292
5190
  const actionDataString = sessionStorage.getItem("actionData");
5293
- const env = getEnv7();
5191
+ const env = getEnv6();
5294
5192
  const domainObject = evalJSONDomain3(domain, methods?.getValues() || {});
5295
5193
  const actionData = actionDataString && actionDataString !== "undefined" ? JSON.parse(actionDataString) : {};
5296
5194
  const { data: dataOfSelection } = useGetSelection2({
@@ -5315,14 +5213,14 @@ import { useEffect as useEffect14, useMemo as useMemo12, useState as useState10
5315
5213
  import {
5316
5214
  evalJSONContext as evalJSONContext4,
5317
5215
  formatSortingString as formatSortingString2,
5318
- getEnv as getEnv9,
5216
+ getEnv as getEnv8,
5319
5217
  selectSearch as selectSearch5,
5320
5218
  setFirstDomain,
5321
5219
  setGroupByDomain,
5322
5220
  setPage,
5323
5221
  setViewDataStore,
5324
5222
  useAppDispatch as useAppDispatch8,
5325
- useAppSelector as useAppSelector7,
5223
+ useAppSelector as useAppSelector6,
5326
5224
  useGetFormView,
5327
5225
  useGetListData as useGetListData3,
5328
5226
  useGetView as useGetView2,
@@ -5401,12 +5299,12 @@ import {
5401
5299
  selectSearch as selectSearch2,
5402
5300
  setSelectedRowKeys as setSelectedRowKeys2,
5403
5301
  useAppDispatch as useAppDispatch6,
5404
- useAppSelector as useAppSelector4
5302
+ useAppSelector as useAppSelector3
5405
5303
  } from "@fctc/interface-logic";
5406
5304
  var tableHeadController = (props) => {
5407
5305
  const { typeTable, rows, selectedRowKeysRef } = props;
5408
5306
  const appDispatch = useAppDispatch6();
5409
- const { groupByDomain } = useAppSelector4(selectSearch2);
5307
+ const { groupByDomain } = useAppSelector3(selectSearch2);
5410
5308
  const handleCheckBoxAll = (event) => {
5411
5309
  if (event?.target?.checked && typeTable === "list") {
5412
5310
  const allRowKeys = Array.isArray(rows) ? rows.map((record) => record?.id) : [];
@@ -5443,7 +5341,7 @@ import {
5443
5341
  domainHelper,
5444
5342
  selectList as selectList2,
5445
5343
  selectSearch as selectSearch3,
5446
- useAppSelector as useAppSelector5
5344
+ useAppSelector as useAppSelector4
5447
5345
  } from "@fctc/interface-logic";
5448
5346
  import { useEffect as useEffect12, useMemo as useMemo10, useRef as useRef4, useState as useState8 } from "react";
5449
5347
  var tableController = ({ data }) => {
@@ -5523,12 +5421,12 @@ var tableController = ({ data }) => {
5523
5421
 
5524
5422
  // src/widget/advance/table/table-group/controller.ts
5525
5423
  import {
5526
- getEnv as getEnv8,
5424
+ getEnv as getEnv7,
5527
5425
  selectList as selectList3,
5528
5426
  selectSearch as selectSearch4,
5529
5427
  setSelectedRowKeys as setSelectedRowKeys3,
5530
5428
  useAppDispatch as useAppDispatch7,
5531
- useAppSelector as useAppSelector6,
5429
+ useAppSelector as useAppSelector5,
5532
5430
  useGetListData as useGetListData2,
5533
5431
  useOdooDataTransform
5534
5432
  } from "@fctc/interface-logic";
@@ -6302,7 +6200,7 @@ var i18n_default = i18n;
6302
6200
 
6303
6201
  // src/widget/advance/table/table-group/controller.ts
6304
6202
  var tableGroupController = (props) => {
6305
- const env = getEnv8();
6203
+ const env = getEnv7();
6306
6204
  const {
6307
6205
  rows,
6308
6206
  columns,
@@ -6322,8 +6220,8 @@ var tableGroupController = (props) => {
6322
6220
  selectedRowKeysRef
6323
6221
  } = props;
6324
6222
  const [pageGroup, setPageGroup] = useState9(0);
6325
- const { groupByDomain, selectedTags } = useAppSelector6(selectSearch4);
6326
- const { selectedRowKeys } = useAppSelector6(selectList3);
6223
+ const { groupByDomain, selectedTags } = useAppSelector5(selectSearch4);
6224
+ const { selectedRowKeys } = useAppSelector5(selectList3);
6327
6225
  const appDispatch = useAppDispatch7();
6328
6226
  const { toDataJS } = useOdooDataTransform();
6329
6227
  const initVal = toDataJS(row, viewData, model);
@@ -6483,8 +6381,8 @@ var many2manyFieldController = (props) => {
6483
6381
  const [order, setOrder] = useState10();
6484
6382
  const [isLoadedData, setIsLoadedData] = useState10(false);
6485
6383
  const [domainMany2Many, setDomainMany2Many] = useState10(domain);
6486
- const env = getEnv9();
6487
- const { selectedTags } = useAppSelector7(selectSearch5);
6384
+ const env = getEnv8();
6385
+ const { selectedTags } = useAppSelector6(selectSearch5);
6488
6386
  const viewParams = {
6489
6387
  model: relation,
6490
6388
  views: [
@@ -6635,7 +6533,7 @@ import { useMemo as useMemo13 } from "react";
6635
6533
  import {
6636
6534
  evalJSONContext as evalJSONContext5,
6637
6535
  evalJSONDomain as evalJSONDomain4,
6638
- getEnv as getEnv10,
6536
+ getEnv as getEnv9,
6639
6537
  useGetSelection as useGetSelection3,
6640
6538
  WIDGETAVATAR,
6641
6539
  WIDGETCOLOR
@@ -6650,7 +6548,7 @@ var many2manyTagsController = (props) => {
6650
6548
  placeholderNoOption
6651
6549
  } = props;
6652
6550
  const isUser = relation === "res.users" || relation === "res.partner";
6653
- const env = getEnv10();
6551
+ const env = getEnv9();
6654
6552
  const addtionalFields = optionsFields ? evalJSONContext5(optionsFields) : null;
6655
6553
  const domainObject = useMemo13(
6656
6554
  () => evalJSONDomain4(domain, JSON.parse(JSON.stringify(formValues || {}))),
@@ -6698,8 +6596,8 @@ var many2manyTagsController = (props) => {
6698
6596
  import { useState as useState11 } from "react";
6699
6597
  import {
6700
6598
  evalJSONDomain as evalJSONDomain5,
6701
- selectEnv as selectEnv3,
6702
- useAppSelector as useAppSelector8,
6599
+ selectEnv as selectEnv2,
6600
+ useAppSelector as useAppSelector7,
6703
6601
  useChangeStatus,
6704
6602
  useGetListData as useGetListData4
6705
6603
  } from "@fctc/interface-logic";
@@ -6721,7 +6619,7 @@ var durationController = (props) => {
6721
6619
  };
6722
6620
  const [disabled, setDisabled] = useState11(false);
6723
6621
  const [modelStatus, setModalStatus] = useState11(false);
6724
- const { context } = useAppSelector8(selectEnv3);
6622
+ const { context } = useAppSelector7(selectEnv2);
6725
6623
  const queryKey = [`data-status-duration`, specification];
6726
6624
  const listDataProps = {
6727
6625
  model: relation,
@@ -7222,10 +7120,10 @@ var copyLinkButtonController = (props) => {
7222
7120
  };
7223
7121
 
7224
7122
  // src/widget/basic/color-field/color-controller.ts
7225
- import { evalJSONContext as evalJSONContext7, getEnv as getEnv11, useSave as useSave3 } from "@fctc/interface-logic";
7123
+ import { evalJSONContext as evalJSONContext7, getEnv as getEnv10, useSave as useSave3 } from "@fctc/interface-logic";
7226
7124
  var colorFieldController = (props) => {
7227
7125
  const { value, isForm, name, formValues, idForm, model, actionData } = props;
7228
- const env = getEnv11();
7126
+ const env = getEnv10();
7229
7127
  const _context = { ...evalJSONContext7(actionData?.context) || {} };
7230
7128
  const contextObject = { ...env.context, ..._context };
7231
7129
  const idDefault = isForm ? idForm : formValues?.id;
@@ -7357,7 +7255,6 @@ export {
7357
7255
  CloseIcon,
7358
7256
  EyeIcon,
7359
7257
  LoadingIcon,
7360
- MainAppProvider,
7361
7258
  STORAGES,
7362
7259
  binaryFieldController,
7363
7260
  colorFieldController,
@@ -7392,15 +7289,11 @@ export {
7392
7289
  useConfig,
7393
7290
  useDebounce,
7394
7291
  useDetail,
7395
- useForgotPasswordHandler,
7396
7292
  useGetRowIds,
7397
7293
  useListData,
7398
- useLoginHandler,
7399
7294
  useMenu,
7400
7295
  useProfile,
7401
- useResetPasswordHandler,
7402
7296
  useStorageState,
7403
- useSwitchLocaleHandler,
7404
7297
  useUser,
7405
7298
  useViewV2
7406
7299
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fctc/widget-logic",
3
- "version": "1.2.5",
3
+ "version": "1.2.7",
4
4
  "types": "dist/index.d.ts",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",
@@ -44,7 +44,7 @@
44
44
  "test": "jest"
45
45
  },
46
46
  "dependencies": {
47
- "@fctc/interface-logic": "^1.0.4",
47
+ "@fctc/interface-logic": "^1.2.5",
48
48
  "@headlessui/react": "^2.2.6",
49
49
  "@tanstack/react-query": "^5.84.0",
50
50
  "@types/react-dom": "^19.1.7",