@fctc/widget-logic 1.6.8 → 1.6.10
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 +1 -2
- package/dist/hooks.d.ts +1 -2
- package/dist/hooks.js +7 -8
- package/dist/hooks.mjs +14 -25
- package/dist/icons.d.mts +2 -4
- package/dist/icons.d.ts +2 -4
- package/dist/index.d.mts +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +44 -45
- package/dist/index.mjs +32 -43
- package/dist/widget.js +40 -41
- package/dist/widget.mjs +28 -39
- package/package.json +98 -96
package/dist/index.mjs
CHANGED
|
@@ -4139,7 +4139,7 @@ var useCallAction = () => {
|
|
|
4139
4139
|
|
|
4140
4140
|
// src/hooks/core/use-config.ts
|
|
4141
4141
|
import { useEffect, useMemo } from "react";
|
|
4142
|
-
import {
|
|
4142
|
+
import { getEnv as getEnv2 } from "@fctc/interface-logic/environment";
|
|
4143
4143
|
import { useAppDispatch, setEnvFile } from "@fctc/interface-logic/store";
|
|
4144
4144
|
var useConfig = ({ localStorageUtils, sessionStorageUtils }) => {
|
|
4145
4145
|
const dispatch = useAppDispatch();
|
|
@@ -4169,7 +4169,8 @@ var useConfig = ({ localStorageUtils, sessionStorageUtils }) => {
|
|
|
4169
4169
|
}, []);
|
|
4170
4170
|
useEffect(() => {
|
|
4171
4171
|
try {
|
|
4172
|
-
|
|
4172
|
+
const env = getEnv2();
|
|
4173
|
+
env.setupEnv({
|
|
4173
4174
|
baseUrl: envConfig.baseUrl,
|
|
4174
4175
|
port: 3e3,
|
|
4175
4176
|
config: {
|
|
@@ -4588,14 +4589,9 @@ var useMenu = ({ context }) => {
|
|
|
4588
4589
|
import { useQuery as useQuery2 } from "@tanstack/react-query";
|
|
4589
4590
|
import { useEffect as useEffect5, useMemo as useMemo4 } from "react";
|
|
4590
4591
|
import { useTranslation } from "react-i18next";
|
|
4591
|
-
import { getEnv as
|
|
4592
|
+
import { getEnv as getEnv3 } from "@fctc/interface-logic/environment";
|
|
4592
4593
|
import { useGetProfile } from "@fctc/interface-logic/hooks";
|
|
4593
|
-
import {
|
|
4594
|
-
useAppDispatch as useAppDispatch3,
|
|
4595
|
-
setDataUser,
|
|
4596
|
-
setUid,
|
|
4597
|
-
setLang
|
|
4598
|
-
} from "@fctc/interface-logic/store";
|
|
4594
|
+
import { useAppDispatch as useAppDispatch3, setDataUser } from "@fctc/interface-logic/store";
|
|
4599
4595
|
var useProfile = (accessToken) => {
|
|
4600
4596
|
const getProfile = useGetProfile();
|
|
4601
4597
|
const dispatch = useAppDispatch3();
|
|
@@ -4611,11 +4607,11 @@ var useProfile = (accessToken) => {
|
|
|
4611
4607
|
useEffect5(() => {
|
|
4612
4608
|
if (userInfoQuery.data) {
|
|
4613
4609
|
const userInfo = userInfoQuery.data;
|
|
4614
|
-
const env =
|
|
4615
|
-
|
|
4610
|
+
const env = getEnv3();
|
|
4611
|
+
env.setUid(userInfo?.sub);
|
|
4616
4612
|
dispatch(setDataUser(userInfo));
|
|
4617
4613
|
const userLocale = languages.find((lang) => lang?.id === userInfo?.locale);
|
|
4618
|
-
|
|
4614
|
+
env.setLang(userLocale?.id);
|
|
4619
4615
|
i18n2.changeLanguage(userLocale?.id.split("_")[0]);
|
|
4620
4616
|
}
|
|
4621
4617
|
}, [dispatch, userInfoQuery.data]);
|
|
@@ -4728,20 +4724,13 @@ import { createContext, useContext, useMemo as useMemo7 } from "react";
|
|
|
4728
4724
|
// src/hooks/core/use-company.ts
|
|
4729
4725
|
import { useQuery as useQuery3 } from "@tanstack/react-query";
|
|
4730
4726
|
import { useEffect as useEffect6, useMemo as useMemo6 } from "react";
|
|
4731
|
-
import { getEnv as
|
|
4727
|
+
import { getEnv as getEnv4 } from "@fctc/interface-logic/environment";
|
|
4732
4728
|
import {
|
|
4733
4729
|
useGetCurrentCompany,
|
|
4734
4730
|
useGetCompanyInfo
|
|
4735
4731
|
} from "@fctc/interface-logic/hooks";
|
|
4736
|
-
import {
|
|
4737
|
-
setAllowCompanies,
|
|
4738
|
-
setCompanies,
|
|
4739
|
-
setDefaultCompany,
|
|
4740
|
-
useAppDispatch as useAppDispatch5
|
|
4741
|
-
} from "@fctc/interface-logic/store";
|
|
4742
4732
|
var useCompany = (accessToken) => {
|
|
4743
4733
|
const getCurrentCompany = useGetCurrentCompany();
|
|
4744
|
-
const dispatch = useAppDispatch5();
|
|
4745
4734
|
const fetchCurrentCompany = async () => {
|
|
4746
4735
|
return await getCurrentCompany.mutateAsync();
|
|
4747
4736
|
};
|
|
@@ -4756,9 +4745,9 @@ var useCompany = (accessToken) => {
|
|
|
4756
4745
|
useEffect6(() => {
|
|
4757
4746
|
if (current_company_id) {
|
|
4758
4747
|
const companyIDs = [current_company_id];
|
|
4759
|
-
const env =
|
|
4760
|
-
|
|
4761
|
-
|
|
4748
|
+
const env = getEnv4();
|
|
4749
|
+
env.setAllowCompanies([...companyIDs]);
|
|
4750
|
+
env.setCompanies(companyIDs);
|
|
4762
4751
|
}
|
|
4763
4752
|
}, [current_company_id]);
|
|
4764
4753
|
const getCompanyInfo = useGetCompanyInfo();
|
|
@@ -4771,8 +4760,8 @@ var useCompany = (accessToken) => {
|
|
|
4771
4760
|
if (companyInfo.data) {
|
|
4772
4761
|
const companyInfoData = companyInfo.data;
|
|
4773
4762
|
if (companyInfoData?.length) {
|
|
4774
|
-
const env =
|
|
4775
|
-
|
|
4763
|
+
const env = getEnv4();
|
|
4764
|
+
env.setDefaultCompany(companyInfoData[0]);
|
|
4776
4765
|
}
|
|
4777
4766
|
}
|
|
4778
4767
|
}, [companyInfo.data]);
|
|
@@ -5019,11 +5008,11 @@ var CloseIcon = ({ className = "" }) => {
|
|
|
5019
5008
|
|
|
5020
5009
|
// src/widget/basic/status-dropdown-field/controller.ts
|
|
5021
5010
|
import { useEffect as useEffect9, useRef as useRef3, useState as useState6 } from "react";
|
|
5022
|
-
import { getEnv as
|
|
5011
|
+
import { getEnv as getEnv5 } from "@fctc/interface-logic/environment";
|
|
5023
5012
|
import { useSave } from "@fctc/interface-logic/hooks";
|
|
5024
5013
|
var statusDropdownController = (props) => {
|
|
5025
5014
|
const { selection, isForm, id, model, name, state, onRefetch } = props;
|
|
5026
|
-
const env =
|
|
5015
|
+
const env = getEnv5();
|
|
5027
5016
|
const colors = {
|
|
5028
5017
|
normal: "bg-[#e9ecef]",
|
|
5029
5018
|
done: "bg-primary",
|
|
@@ -5250,13 +5239,13 @@ var many2oneFieldController = (props) => {
|
|
|
5250
5239
|
};
|
|
5251
5240
|
|
|
5252
5241
|
// src/widget/basic/many2one-button-field/controller.ts
|
|
5253
|
-
import { getEnv as
|
|
5242
|
+
import { getEnv as getEnv6 } from "@fctc/interface-logic/environment";
|
|
5254
5243
|
import { useGetSelection as useGetSelection2 } from "@fctc/interface-logic/hooks";
|
|
5255
5244
|
import { evalJSONDomain as evalJSONDomain3, evalJSONContext as evalJSONContext3 } from "@fctc/interface-logic/utils";
|
|
5256
5245
|
var many2oneButtonController = (props) => {
|
|
5257
5246
|
const { domain, methods, relation } = props;
|
|
5258
5247
|
const actionDataString = sessionStorage.getItem("actionData");
|
|
5259
|
-
const env =
|
|
5248
|
+
const env = getEnv6();
|
|
5260
5249
|
const domainObject = evalJSONDomain3(domain, methods?.getValues() || {});
|
|
5261
5250
|
const actionData = actionDataString && actionDataString !== "undefined" ? JSON.parse(actionDataString) : {};
|
|
5262
5251
|
const { data: dataOfSelection } = useGetSelection2({
|
|
@@ -5280,7 +5269,7 @@ var many2oneButtonController = (props) => {
|
|
|
5280
5269
|
import { useEffect as useEffect14, useMemo as useMemo12, useState as useState10 } from "react";
|
|
5281
5270
|
|
|
5282
5271
|
// src/widget/advance/table/table-body/controller.ts
|
|
5283
|
-
import { useAppDispatch as
|
|
5272
|
+
import { useAppDispatch as useAppDispatch5, setSelectedRowKeys } from "@fctc/interface-logic/store";
|
|
5284
5273
|
import { useEffect as useEffect11, useMemo as useMemo9 } from "react";
|
|
5285
5274
|
var tableBodyController = (props) => {
|
|
5286
5275
|
const {
|
|
@@ -5293,7 +5282,7 @@ var tableBodyController = (props) => {
|
|
|
5293
5282
|
selectedRowKeysRef,
|
|
5294
5283
|
onClickRow
|
|
5295
5284
|
} = props;
|
|
5296
|
-
const appDispatch =
|
|
5285
|
+
const appDispatch = useAppDispatch5();
|
|
5297
5286
|
const checked = useMemo9(() => {
|
|
5298
5287
|
if (!row?.id) return false;
|
|
5299
5288
|
if (selectedRowKeys?.includes(row.id)) {
|
|
@@ -5348,14 +5337,14 @@ var tableBodyController = (props) => {
|
|
|
5348
5337
|
|
|
5349
5338
|
// src/widget/advance/table/table-head/controller.ts
|
|
5350
5339
|
import {
|
|
5351
|
-
useAppDispatch as
|
|
5340
|
+
useAppDispatch as useAppDispatch6,
|
|
5352
5341
|
useAppSelector as useAppSelector3,
|
|
5353
5342
|
selectSearch as selectSearch2,
|
|
5354
5343
|
setSelectedRowKeys as setSelectedRowKeys2
|
|
5355
5344
|
} from "@fctc/interface-logic/store";
|
|
5356
5345
|
var tableHeadController = (props) => {
|
|
5357
5346
|
const { typeTable, rows, selectedRowKeysRef } = props;
|
|
5358
|
-
const appDispatch =
|
|
5347
|
+
const appDispatch = useAppDispatch6();
|
|
5359
5348
|
const { groupByDomain } = useAppSelector3(selectSearch2);
|
|
5360
5349
|
const handleCheckBoxAll = (event) => {
|
|
5361
5350
|
if (event?.target?.checked && typeTable === "list") {
|
|
@@ -6249,7 +6238,7 @@ import {
|
|
|
6249
6238
|
useAppSelector as useAppSelector5,
|
|
6250
6239
|
selectSearch as selectSearch4,
|
|
6251
6240
|
selectList as selectList3,
|
|
6252
|
-
useAppDispatch as
|
|
6241
|
+
useAppDispatch as useAppDispatch7,
|
|
6253
6242
|
setSelectedRowKeys as setSelectedRowKeys3
|
|
6254
6243
|
} from "@fctc/interface-logic/store";
|
|
6255
6244
|
|
|
@@ -6282,7 +6271,7 @@ var tableGroupController = (props) => {
|
|
|
6282
6271
|
const [pageGroup, setPageGroup] = useState9(0);
|
|
6283
6272
|
const { groupByDomain, selectedTags } = useAppSelector5(selectSearch4);
|
|
6284
6273
|
const { selectedRowKeys } = useAppSelector5(selectList3);
|
|
6285
|
-
const appDispatch =
|
|
6274
|
+
const appDispatch = useAppDispatch7();
|
|
6286
6275
|
const { toDataJS } = useOdooDataTransform();
|
|
6287
6276
|
const initVal = toDataJS(row, viewData, model);
|
|
6288
6277
|
const [isShowGroup, setIsShowGroup] = useState9(false);
|
|
@@ -6419,9 +6408,9 @@ var tableGroupController = (props) => {
|
|
|
6419
6408
|
};
|
|
6420
6409
|
|
|
6421
6410
|
// src/widget/basic/many2many-field/controller.ts
|
|
6422
|
-
import { getEnv as
|
|
6411
|
+
import { getEnv as getEnv8 } from "@fctc/interface-logic/environment";
|
|
6423
6412
|
import {
|
|
6424
|
-
useAppDispatch as
|
|
6413
|
+
useAppDispatch as useAppDispatch8,
|
|
6425
6414
|
useAppSelector as useAppSelector6,
|
|
6426
6415
|
selectSearch as selectSearch5,
|
|
6427
6416
|
setFirstDomain,
|
|
@@ -6449,13 +6438,13 @@ var many2manyFieldController = (props) => {
|
|
|
6449
6438
|
options,
|
|
6450
6439
|
sessionStorageUtils
|
|
6451
6440
|
} = props;
|
|
6452
|
-
const appDispatch =
|
|
6441
|
+
const appDispatch = useAppDispatch8();
|
|
6453
6442
|
const actionData = sessionStorageUtils.getActionData();
|
|
6454
6443
|
const [debouncedPage] = useDebounce(page, 500);
|
|
6455
6444
|
const [order, setOrder] = useState10();
|
|
6456
6445
|
const [isLoadedData, setIsLoadedData] = useState10(false);
|
|
6457
6446
|
const [domainMany2Many, setDomainMany2Many] = useState10(domain);
|
|
6458
|
-
const env =
|
|
6447
|
+
const env = getEnv8();
|
|
6459
6448
|
const { selectedTags } = useAppSelector6(selectSearch5);
|
|
6460
6449
|
const viewParams = {
|
|
6461
6450
|
model: relation,
|
|
@@ -6605,7 +6594,7 @@ var many2manyFieldController = (props) => {
|
|
|
6605
6594
|
// src/widget/basic/many2many-tags-field/controller.ts
|
|
6606
6595
|
import { useMemo as useMemo13 } from "react";
|
|
6607
6596
|
import { WIDGETAVATAR, WIDGETCOLOR } from "@fctc/interface-logic/constants";
|
|
6608
|
-
import { getEnv as
|
|
6597
|
+
import { getEnv as getEnv9 } from "@fctc/interface-logic/environment";
|
|
6609
6598
|
import { useGetSelection as useGetSelection3 } from "@fctc/interface-logic/hooks";
|
|
6610
6599
|
import { evalJSONContext as evalJSONContext5, evalJSONDomain as evalJSONDomain4 } from "@fctc/interface-logic/utils";
|
|
6611
6600
|
var many2manyTagsController = (props) => {
|
|
@@ -6618,7 +6607,7 @@ var many2manyTagsController = (props) => {
|
|
|
6618
6607
|
placeholderNoOption
|
|
6619
6608
|
} = props;
|
|
6620
6609
|
const isUser = relation === "res.users" || relation === "res.partner";
|
|
6621
|
-
const env =
|
|
6610
|
+
const env = getEnv9();
|
|
6622
6611
|
const addtionalFields = optionsFields ? evalJSONContext5(optionsFields) : null;
|
|
6623
6612
|
const domainObject = useMemo13(
|
|
6624
6613
|
() => evalJSONDomain4(domain, JSON.parse(JSON.stringify(formValues || {}))),
|
|
@@ -7190,12 +7179,12 @@ var copyLinkButtonController = (props) => {
|
|
|
7190
7179
|
};
|
|
7191
7180
|
|
|
7192
7181
|
// src/widget/basic/color-field/color-controller.ts
|
|
7193
|
-
import { getEnv as
|
|
7182
|
+
import { getEnv as getEnv10 } from "@fctc/interface-logic/environment";
|
|
7194
7183
|
import { useSave as useSave3 } from "@fctc/interface-logic/hooks";
|
|
7195
7184
|
import { evalJSONContext as evalJSONContext7 } from "@fctc/interface-logic/utils";
|
|
7196
7185
|
var colorFieldController = (props) => {
|
|
7197
7186
|
const { value, isForm, name, formValues, idForm, model, actionData } = props;
|
|
7198
|
-
const env =
|
|
7187
|
+
const env = getEnv10();
|
|
7199
7188
|
const _context = { ...evalJSONContext7(actionData?.context) || {} };
|
|
7200
7189
|
const contextObject = { ...env.context, ..._context };
|
|
7201
7190
|
const idDefault = isForm ? idForm : formValues?.id;
|
package/dist/widget.js
CHANGED
|
@@ -4395,7 +4395,8 @@ var useConfig = ({ localStorageUtils, sessionStorageUtils }) => {
|
|
|
4395
4395
|
}, []);
|
|
4396
4396
|
(0, import_react4.useEffect)(() => {
|
|
4397
4397
|
try {
|
|
4398
|
-
(0, import_environment4.
|
|
4398
|
+
const env = (0, import_environment4.getEnv)();
|
|
4399
|
+
env.setupEnv({
|
|
4399
4400
|
baseUrl: envConfig.baseUrl,
|
|
4400
4401
|
port: 3e3,
|
|
4401
4402
|
config: {
|
|
@@ -4765,10 +4766,10 @@ var useProfile = (accessToken) => {
|
|
|
4765
4766
|
if (userInfoQuery.data) {
|
|
4766
4767
|
const userInfo = userInfoQuery.data;
|
|
4767
4768
|
const env = (0, import_environment5.getEnv)();
|
|
4768
|
-
|
|
4769
|
+
env.setUid(userInfo?.sub);
|
|
4769
4770
|
dispatch((0, import_store5.setDataUser)(userInfo));
|
|
4770
4771
|
const userLocale = languages.find((lang) => lang?.id === userInfo?.locale);
|
|
4771
|
-
|
|
4772
|
+
env.setLang(userLocale?.id);
|
|
4772
4773
|
i18n2.changeLanguage(userLocale?.id.split("_")[0]);
|
|
4773
4774
|
}
|
|
4774
4775
|
}, [dispatch, userInfoQuery.data]);
|
|
@@ -4878,10 +4879,8 @@ var import_react_query3 = require("@tanstack/react-query");
|
|
|
4878
4879
|
var import_react11 = require("react");
|
|
4879
4880
|
var import_environment6 = require("@fctc/interface-logic/environment");
|
|
4880
4881
|
var import_hooks11 = require("@fctc/interface-logic/hooks");
|
|
4881
|
-
var import_store7 = require("@fctc/interface-logic/store");
|
|
4882
4882
|
var useCompany = (accessToken) => {
|
|
4883
4883
|
const getCurrentCompany = (0, import_hooks11.useGetCurrentCompany)();
|
|
4884
|
-
const dispatch = (0, import_store7.useAppDispatch)();
|
|
4885
4884
|
const fetchCurrentCompany = async () => {
|
|
4886
4885
|
return await getCurrentCompany.mutateAsync();
|
|
4887
4886
|
};
|
|
@@ -4897,8 +4896,8 @@ var useCompany = (accessToken) => {
|
|
|
4897
4896
|
if (current_company_id) {
|
|
4898
4897
|
const companyIDs = [current_company_id];
|
|
4899
4898
|
const env = (0, import_environment6.getEnv)();
|
|
4900
|
-
|
|
4901
|
-
|
|
4899
|
+
env.setAllowCompanies([...companyIDs]);
|
|
4900
|
+
env.setCompanies(companyIDs);
|
|
4902
4901
|
}
|
|
4903
4902
|
}, [current_company_id]);
|
|
4904
4903
|
const getCompanyInfo = (0, import_hooks11.useGetCompanyInfo)();
|
|
@@ -4912,7 +4911,7 @@ var useCompany = (accessToken) => {
|
|
|
4912
4911
|
const companyInfoData = companyInfo.data;
|
|
4913
4912
|
if (companyInfoData?.length) {
|
|
4914
4913
|
const env = (0, import_environment6.getEnv)();
|
|
4915
|
-
|
|
4914
|
+
env.setDefaultCompany(companyInfoData[0]);
|
|
4916
4915
|
}
|
|
4917
4916
|
}
|
|
4918
4917
|
}, [companyInfo.data]);
|
|
@@ -5040,7 +5039,7 @@ function useDebounce(value, delay) {
|
|
|
5040
5039
|
__reExport(hooks_exports, require("@fctc/interface-logic/hooks"));
|
|
5041
5040
|
|
|
5042
5041
|
// src/widget/advance/table/table-body/controller.ts
|
|
5043
|
-
var
|
|
5042
|
+
var import_store7 = require("@fctc/interface-logic/store");
|
|
5044
5043
|
var import_react15 = require("react");
|
|
5045
5044
|
var tableBodyController = (props) => {
|
|
5046
5045
|
const {
|
|
@@ -5053,7 +5052,7 @@ var tableBodyController = (props) => {
|
|
|
5053
5052
|
selectedRowKeysRef,
|
|
5054
5053
|
onClickRow
|
|
5055
5054
|
} = props;
|
|
5056
|
-
const appDispatch = (0,
|
|
5055
|
+
const appDispatch = (0, import_store7.useAppDispatch)();
|
|
5057
5056
|
const checked = (0, import_react15.useMemo)(() => {
|
|
5058
5057
|
if (!row?.id) return false;
|
|
5059
5058
|
if (selectedRowKeys?.includes(row.id)) {
|
|
@@ -5070,7 +5069,7 @@ var tableBodyController = (props) => {
|
|
|
5070
5069
|
}
|
|
5071
5070
|
const newSelectedRowKeys = selectedRowKeys?.includes(row.id) ? selectedRowKeys?.filter((key) => key !== row.id) : [...selectedRowKeys, row.id];
|
|
5072
5071
|
console.log("newSelectedRowKeys", newSelectedRowKeys);
|
|
5073
|
-
appDispatch((0,
|
|
5072
|
+
appDispatch((0, import_store7.setSelectedRowKeys)(newSelectedRowKeys));
|
|
5074
5073
|
};
|
|
5075
5074
|
const handleClickRow = (col, row2) => {
|
|
5076
5075
|
onClickRow(col, row2);
|
|
@@ -5083,13 +5082,13 @@ var tableBodyController = (props) => {
|
|
|
5083
5082
|
(id) => id !== row.id
|
|
5084
5083
|
);
|
|
5085
5084
|
selectedRowKeysRef.current = filtered;
|
|
5086
|
-
appDispatch((0,
|
|
5085
|
+
appDispatch((0, import_store7.setSelectedRowKeys)(filtered));
|
|
5087
5086
|
} else {
|
|
5088
5087
|
const unique = Array.from(
|
|
5089
5088
|
/* @__PURE__ */ new Set([...selectedRowKeysRef?.current, row?.id])
|
|
5090
5089
|
);
|
|
5091
5090
|
selectedRowKeysRef.current = unique;
|
|
5092
|
-
appDispatch((0,
|
|
5091
|
+
appDispatch((0, import_store7.setSelectedRowKeys)(unique));
|
|
5093
5092
|
}
|
|
5094
5093
|
}
|
|
5095
5094
|
}, [isAutoSelect]);
|
|
@@ -5107,35 +5106,35 @@ var tableBodyController = (props) => {
|
|
|
5107
5106
|
};
|
|
5108
5107
|
|
|
5109
5108
|
// src/widget/advance/table/table-head/controller.ts
|
|
5110
|
-
var
|
|
5109
|
+
var import_store8 = require("@fctc/interface-logic/store");
|
|
5111
5110
|
var tableHeadController = (props) => {
|
|
5112
5111
|
const { typeTable, rows, selectedRowKeysRef } = props;
|
|
5113
|
-
const appDispatch = (0,
|
|
5114
|
-
const { groupByDomain } = (0,
|
|
5112
|
+
const appDispatch = (0, import_store8.useAppDispatch)();
|
|
5113
|
+
const { groupByDomain } = (0, import_store8.useAppSelector)(import_store8.selectSearch);
|
|
5115
5114
|
const handleCheckBoxAll = (event) => {
|
|
5116
5115
|
if (event?.target?.checked && typeTable === "list") {
|
|
5117
5116
|
const allRowKeys = Array.isArray(rows) ? rows.map((record) => record?.id) : [];
|
|
5118
|
-
appDispatch((0,
|
|
5117
|
+
appDispatch((0, import_store8.setSelectedRowKeys)(allRowKeys));
|
|
5119
5118
|
} else if (event?.target?.checked && typeTable === "group") {
|
|
5120
5119
|
const rowsIDs = document.querySelectorAll("tr[data-row-id]");
|
|
5121
5120
|
const ids = Array.from(rowsIDs)?.map(
|
|
5122
5121
|
(row) => Number(row?.getAttribute("data-row-id"))
|
|
5123
5122
|
);
|
|
5124
5123
|
if (ids?.length > 0) {
|
|
5125
|
-
appDispatch((0,
|
|
5124
|
+
appDispatch((0, import_store8.setSelectedRowKeys)(ids));
|
|
5126
5125
|
} else {
|
|
5127
5126
|
const sum = countSum(
|
|
5128
5127
|
rows,
|
|
5129
5128
|
typeof groupByDomain === "object" ? groupByDomain?.contexts?.[0]?.group_by : void 0
|
|
5130
5129
|
);
|
|
5131
5130
|
const keys = Array.from({ length: sum }, (_) => void 0);
|
|
5132
|
-
appDispatch((0,
|
|
5131
|
+
appDispatch((0, import_store8.setSelectedRowKeys)(keys));
|
|
5133
5132
|
}
|
|
5134
5133
|
if (selectedRowKeysRef) {
|
|
5135
5134
|
selectedRowKeysRef.current = [];
|
|
5136
5135
|
}
|
|
5137
5136
|
} else {
|
|
5138
|
-
appDispatch((0,
|
|
5137
|
+
appDispatch((0, import_store8.setSelectedRowKeys)([]));
|
|
5139
5138
|
}
|
|
5140
5139
|
};
|
|
5141
5140
|
return {
|
|
@@ -5145,7 +5144,7 @@ var tableHeadController = (props) => {
|
|
|
5145
5144
|
|
|
5146
5145
|
// src/widget/advance/table/table-view/controller.ts
|
|
5147
5146
|
var import_react16 = require("react");
|
|
5148
|
-
var
|
|
5147
|
+
var import_store9 = require("@fctc/interface-logic/store");
|
|
5149
5148
|
var import_utils5 = require("@fctc/interface-logic/utils");
|
|
5150
5149
|
var tableController = ({ data }) => {
|
|
5151
5150
|
const [rows, setRows] = (0, import_react16.useState)(data.records || []);
|
|
@@ -5993,7 +5992,7 @@ var i18n_default = import_i18next.default;
|
|
|
5993
5992
|
|
|
5994
5993
|
// src/widget/advance/table/table-group/controller.ts
|
|
5995
5994
|
var import_hooks13 = require("@fctc/interface-logic/hooks");
|
|
5996
|
-
var
|
|
5995
|
+
var import_store10 = require("@fctc/interface-logic/store");
|
|
5997
5996
|
|
|
5998
5997
|
// src/environment.ts
|
|
5999
5998
|
var environment_exports = {};
|
|
@@ -6021,9 +6020,9 @@ var tableGroupController = (props) => {
|
|
|
6021
6020
|
selectedRowKeysRef
|
|
6022
6021
|
} = props;
|
|
6023
6022
|
const [pageGroup, setPageGroup] = (0, import_react17.useState)(0);
|
|
6024
|
-
const { groupByDomain, selectedTags } = (0,
|
|
6025
|
-
const { selectedRowKeys } = (0,
|
|
6026
|
-
const appDispatch = (0,
|
|
6023
|
+
const { groupByDomain, selectedTags } = (0, import_store10.useAppSelector)(import_store10.selectSearch);
|
|
6024
|
+
const { selectedRowKeys } = (0, import_store10.useAppSelector)(import_store10.selectList);
|
|
6025
|
+
const appDispatch = (0, import_store10.useAppDispatch)();
|
|
6027
6026
|
const { toDataJS } = (0, import_hooks13.useOdooDataTransform)();
|
|
6028
6027
|
const initVal = toDataJS(row, viewData, model);
|
|
6029
6028
|
const [isShowGroup, setIsShowGroup] = (0, import_react17.useState)(false);
|
|
@@ -6109,14 +6108,14 @@ var tableGroupController = (props) => {
|
|
|
6109
6108
|
const filteredIds = selectedRowKeys.filter(
|
|
6110
6109
|
(id) => !ids.includes(id)
|
|
6111
6110
|
);
|
|
6112
|
-
appDispatch((0,
|
|
6111
|
+
appDispatch((0, import_store10.setSelectedRowKeys)(filteredIds));
|
|
6113
6112
|
} else if (!isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && checkedAll && !allIdsNull && isQueryFetched) {
|
|
6114
6113
|
const clonedKeys = [...selectedRowKeys];
|
|
6115
|
-
appDispatch((0,
|
|
6116
|
-
setTimeout(() => appDispatch((0,
|
|
6114
|
+
appDispatch((0, import_store10.setSelectedRowKeys)([...clonedKeys, -1]));
|
|
6115
|
+
setTimeout(() => appDispatch((0, import_store10.setSelectedRowKeys)(clonedKeys)), 500);
|
|
6117
6116
|
} else if (isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && !checkedAll && !allIdsNull) {
|
|
6118
6117
|
const filteredKeys = selectedRowKeys.filter((id) => id > -1);
|
|
6119
|
-
appDispatch((0,
|
|
6118
|
+
appDispatch((0, import_store10.setSelectedRowKeys)(filteredKeys));
|
|
6120
6119
|
}
|
|
6121
6120
|
toggleShowGroup();
|
|
6122
6121
|
};
|
|
@@ -6125,8 +6124,8 @@ var tableGroupController = (props) => {
|
|
|
6125
6124
|
return;
|
|
6126
6125
|
}
|
|
6127
6126
|
const clonedKeys = [...selectedRowKeys];
|
|
6128
|
-
(0,
|
|
6129
|
-
setTimeout(() => (0,
|
|
6127
|
+
(0, import_store10.setSelectedRowKeys)([...clonedKeys, -1]);
|
|
6128
|
+
setTimeout(() => (0, import_store10.setSelectedRowKeys)(clonedKeys), 500);
|
|
6130
6129
|
}, [isQueryFetched]);
|
|
6131
6130
|
return {
|
|
6132
6131
|
handleExpandChildGroup,
|
|
@@ -6161,7 +6160,7 @@ var tableGroupController = (props) => {
|
|
|
6161
6160
|
|
|
6162
6161
|
// src/widget/basic/many2many-field/controller.ts
|
|
6163
6162
|
var import_environment8 = require("@fctc/interface-logic/environment");
|
|
6164
|
-
var
|
|
6163
|
+
var import_store11 = require("@fctc/interface-logic/store");
|
|
6165
6164
|
var import_utils6 = require("@fctc/interface-logic/utils");
|
|
6166
6165
|
var many2manyFieldController = (props) => {
|
|
6167
6166
|
const {
|
|
@@ -6179,14 +6178,14 @@ var many2manyFieldController = (props) => {
|
|
|
6179
6178
|
options,
|
|
6180
6179
|
sessionStorageUtils
|
|
6181
6180
|
} = props;
|
|
6182
|
-
const appDispatch = (0,
|
|
6181
|
+
const appDispatch = (0, import_store11.useAppDispatch)();
|
|
6183
6182
|
const actionData = sessionStorageUtils.getActionData();
|
|
6184
6183
|
const [debouncedPage] = useDebounce(page, 500);
|
|
6185
6184
|
const [order, setOrder] = (0, import_react18.useState)();
|
|
6186
6185
|
const [isLoadedData, setIsLoadedData] = (0, import_react18.useState)(false);
|
|
6187
6186
|
const [domainMany2Many, setDomainMany2Many] = (0, import_react18.useState)(domain);
|
|
6188
6187
|
const env = (0, import_environment8.getEnv)();
|
|
6189
|
-
const { selectedTags } = (0,
|
|
6188
|
+
const { selectedTags } = (0, import_store11.useAppSelector)(import_store11.selectSearch);
|
|
6190
6189
|
const viewParams = {
|
|
6191
6190
|
model: relation,
|
|
6192
6191
|
views: [
|
|
@@ -6229,8 +6228,8 @@ var many2manyFieldController = (props) => {
|
|
|
6229
6228
|
const fetchData = async () => {
|
|
6230
6229
|
try {
|
|
6231
6230
|
setDomainMany2Many(domain);
|
|
6232
|
-
appDispatch((0,
|
|
6233
|
-
appDispatch((0,
|
|
6231
|
+
appDispatch((0, import_store11.setFirstDomain)(domain));
|
|
6232
|
+
appDispatch((0, import_store11.setViewDataStore)(viewResponse));
|
|
6234
6233
|
const modalData = viewResponse?.views?.list?.fields.map((field) => ({
|
|
6235
6234
|
...viewResponse?.models?.[String(model)]?.[field?.name],
|
|
6236
6235
|
...field
|
|
@@ -6241,7 +6240,7 @@ var many2manyFieldController = (props) => {
|
|
|
6241
6240
|
[`${aid}_${relation}_popupmany2many`]: modalData
|
|
6242
6241
|
});
|
|
6243
6242
|
}
|
|
6244
|
-
appDispatch((0,
|
|
6243
|
+
appDispatch((0, import_store11.setPage)(0));
|
|
6245
6244
|
} catch (err) {
|
|
6246
6245
|
console.log(err);
|
|
6247
6246
|
}
|
|
@@ -6277,12 +6276,12 @@ var many2manyFieldController = (props) => {
|
|
|
6277
6276
|
fetchData();
|
|
6278
6277
|
}
|
|
6279
6278
|
return () => {
|
|
6280
|
-
appDispatch((0,
|
|
6279
|
+
appDispatch((0, import_store11.setGroupByDomain)(null));
|
|
6281
6280
|
setFields((prevFields) => ({
|
|
6282
6281
|
...prevFields,
|
|
6283
6282
|
[`${aid}_${relation}_popupmany2many`]: null
|
|
6284
6283
|
}));
|
|
6285
|
-
appDispatch((0,
|
|
6284
|
+
appDispatch((0, import_store11.setPage)(0));
|
|
6286
6285
|
setSelectedRowKeys4([]);
|
|
6287
6286
|
setDomainMany2Many(null);
|
|
6288
6287
|
setIsLoadedData(false);
|
|
@@ -6395,7 +6394,7 @@ var many2manyTagsController = (props) => {
|
|
|
6395
6394
|
// src/widget/basic/status-bar-field/controller.ts
|
|
6396
6395
|
var import_react20 = require("react");
|
|
6397
6396
|
var import_hooks16 = require("@fctc/interface-logic/hooks");
|
|
6398
|
-
var
|
|
6397
|
+
var import_store12 = require("@fctc/interface-logic/store");
|
|
6399
6398
|
var import_utils8 = require("@fctc/interface-logic/utils");
|
|
6400
6399
|
var durationController = (props) => {
|
|
6401
6400
|
const {
|
|
@@ -6415,7 +6414,7 @@ var durationController = (props) => {
|
|
|
6415
6414
|
};
|
|
6416
6415
|
const [disabled, setDisabled] = (0, import_react20.useState)(false);
|
|
6417
6416
|
const [modelStatus, setModalStatus] = (0, import_react20.useState)(false);
|
|
6418
|
-
const { context } = (0,
|
|
6417
|
+
const { context } = (0, import_store12.useAppSelector)(import_store12.selectEnv);
|
|
6419
6418
|
const queryKey = [`data-status-duration`, specification];
|
|
6420
6419
|
const listDataProps = {
|
|
6421
6420
|
model: relation,
|