@fctc/widget-logic 2.0.3 → 2.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hooks.d.mts +1 -12
- package/dist/hooks.d.ts +1 -12
- package/dist/hooks.js +6 -179
- package/dist/hooks.mjs +2 -179
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +246 -321
- package/dist/index.mjs +158 -237
- package/dist/types.d.mts +1 -0
- package/dist/types.d.ts +1 -0
- package/dist/widget.d.mts +45 -17
- package/dist/widget.d.ts +45 -17
- package/dist/widget.js +238 -311
- package/dist/widget.mjs +154 -231
- package/package.json +96 -96
package/dist/index.js
CHANGED
|
@@ -4082,7 +4082,6 @@ __export(index_exports, {
|
|
|
4082
4082
|
useGetRowIds: () => useGetRowIds,
|
|
4083
4083
|
useListData: () => useListData,
|
|
4084
4084
|
useMenu: () => useMenu,
|
|
4085
|
-
useMenuItem: () => useMenuItem,
|
|
4086
4085
|
useProfile: () => useProfile,
|
|
4087
4086
|
useSelectionState: () => useSelectionState,
|
|
4088
4087
|
useStorageState: () => useStorageState,
|
|
@@ -4104,7 +4103,6 @@ __export(hooks_exports, {
|
|
|
4104
4103
|
useDetail: () => useDetail,
|
|
4105
4104
|
useListData: () => useListData,
|
|
4106
4105
|
useMenu: () => useMenu,
|
|
4107
|
-
useMenuItem: () => useMenuItem,
|
|
4108
4106
|
useProfile: () => useProfile,
|
|
4109
4107
|
useUser: () => useUser,
|
|
4110
4108
|
useViewV2: () => useViewV2
|
|
@@ -4864,69 +4862,8 @@ var useAppProvider = () => {
|
|
|
4864
4862
|
return context;
|
|
4865
4863
|
};
|
|
4866
4864
|
|
|
4867
|
-
// src/hooks/core/use-menu-item.tsx
|
|
4868
|
-
var import_environment5 = require("@fctc/interface-logic/environment");
|
|
4869
|
-
var import_hooks9 = require("@fctc/interface-logic/hooks");
|
|
4870
|
-
var import_react11 = require("react");
|
|
4871
|
-
|
|
4872
|
-
// src/utils.ts
|
|
4873
|
-
var utils_exports = {};
|
|
4874
|
-
__export(utils_exports, {
|
|
4875
|
-
API_APP_URL: () => API_APP_URL,
|
|
4876
|
-
API_PRESCHOOL_URL: () => API_PRESCHOOL_URL,
|
|
4877
|
-
STORAGES: () => STORAGES,
|
|
4878
|
-
combineContexts: () => combineContexts,
|
|
4879
|
-
convertFieldsToArray: () => convertFieldsToArray,
|
|
4880
|
-
countSum: () => countSum,
|
|
4881
|
-
getDateRange: () => getDateRange,
|
|
4882
|
-
languages: () => languages,
|
|
4883
|
-
mergeButtons: () => mergeButtons,
|
|
4884
|
-
setStorageItemAsync: () => setStorageItemAsync,
|
|
4885
|
-
useGetRowIds: () => useGetRowIds,
|
|
4886
|
-
useSelectionState: () => useSelectionState,
|
|
4887
|
-
useStorageState: () => useStorageState
|
|
4888
|
-
});
|
|
4889
|
-
__reExport(utils_exports, require("@fctc/interface-logic/utils"));
|
|
4890
|
-
|
|
4891
|
-
// src/hooks/core/use-menu-item.tsx
|
|
4892
|
-
var useMenuItem = (props) => {
|
|
4893
|
-
const { menu, activeMenuId } = props;
|
|
4894
|
-
const model = menu?.action?.res_model;
|
|
4895
|
-
const aid = menu?.action?.id?.id;
|
|
4896
|
-
const id = menu?.id;
|
|
4897
|
-
const context = (0, import_environment5.getEnv)().context;
|
|
4898
|
-
const queryActionDetail = (0, import_hooks9.useGetActionDetail)({
|
|
4899
|
-
aid,
|
|
4900
|
-
id,
|
|
4901
|
-
model,
|
|
4902
|
-
context,
|
|
4903
|
-
enabled: true,
|
|
4904
|
-
queryKey: [`action-${aid}`]
|
|
4905
|
-
}).data;
|
|
4906
|
-
const [path, setPath] = (0, import_react11.useState)("");
|
|
4907
|
-
const handleClick = () => {
|
|
4908
|
-
if (location?.pathname === "/list/menu" && activeMenuId === menu?.id) {
|
|
4909
|
-
return;
|
|
4910
|
-
}
|
|
4911
|
-
const hasListView = queryActionDetail.views.some(
|
|
4912
|
-
([id2, type]) => type === "list"
|
|
4913
|
-
);
|
|
4914
|
-
const viewType = hasListView ? "list" : "form";
|
|
4915
|
-
const isAccountPayment = menu?.action?.res_model === "account.payment" && menu?.action?.id?.id === 1551;
|
|
4916
|
-
const isConvertCurrencyMenu = menu?.action?.res_model === "currency.convert" && menu?.action?.id?.id === 1562;
|
|
4917
|
-
const path2 = (0, utils_exports.formatUrlPath)({
|
|
4918
|
-
viewType,
|
|
4919
|
-
actionPath: isConvertCurrencyMenu ? "menu" : isAccountPayment ? "menu" : menu?.action?.path || "menu",
|
|
4920
|
-
aid: menu?.action?.id?.id,
|
|
4921
|
-
model: queryActionDetail.res_model
|
|
4922
|
-
});
|
|
4923
|
-
setPath(path2);
|
|
4924
|
-
};
|
|
4925
|
-
return { handleClick, path, queryActionDetail };
|
|
4926
|
-
};
|
|
4927
|
-
|
|
4928
4865
|
// src/hooks/utils/use-click-outside.ts
|
|
4929
|
-
var
|
|
4866
|
+
var import_react11 = require("react");
|
|
4930
4867
|
var DEFAULT_EVENTS = ["mousedown", "touchstart"];
|
|
4931
4868
|
var useClickOutside = ({
|
|
4932
4869
|
handler,
|
|
@@ -4934,8 +4871,8 @@ var useClickOutside = ({
|
|
|
4934
4871
|
nodes = [],
|
|
4935
4872
|
refs
|
|
4936
4873
|
}) => {
|
|
4937
|
-
const ref = (0,
|
|
4938
|
-
(0,
|
|
4874
|
+
const ref = (0, import_react11.useRef)(null);
|
|
4875
|
+
(0, import_react11.useEffect)(() => {
|
|
4939
4876
|
const listener = (event) => {
|
|
4940
4877
|
const { target } = event;
|
|
4941
4878
|
if (refs && refs?.length > 0 && refs?.some((r) => r.current?.contains(target))) {
|
|
@@ -4957,10 +4894,10 @@ var useClickOutside = ({
|
|
|
4957
4894
|
};
|
|
4958
4895
|
|
|
4959
4896
|
// src/hooks/utils/use-debounce.ts
|
|
4960
|
-
var
|
|
4897
|
+
var import_react12 = require("react");
|
|
4961
4898
|
function useDebounce(value, delay) {
|
|
4962
|
-
const [debouncedValue, setDebouncedValue] = (0,
|
|
4963
|
-
(0,
|
|
4899
|
+
const [debouncedValue, setDebouncedValue] = (0, import_react12.useState)(value);
|
|
4900
|
+
(0, import_react12.useEffect)(() => {
|
|
4964
4901
|
const handler = setTimeout(() => {
|
|
4965
4902
|
setDebouncedValue(value);
|
|
4966
4903
|
}, delay);
|
|
@@ -5215,20 +5152,20 @@ var ChevronBottomIcon = ({
|
|
|
5215
5152
|
};
|
|
5216
5153
|
|
|
5217
5154
|
// src/widget/basic/status-dropdown-field/controller.ts
|
|
5218
|
-
var
|
|
5219
|
-
var
|
|
5220
|
-
var
|
|
5155
|
+
var import_react13 = require("react");
|
|
5156
|
+
var import_environment5 = require("@fctc/interface-logic/environment");
|
|
5157
|
+
var import_hooks10 = require("@fctc/interface-logic/hooks");
|
|
5221
5158
|
var statusDropdownController = (props) => {
|
|
5222
5159
|
const { selection, isForm, id, model, name, state, onRefetch } = props;
|
|
5223
|
-
const env = (0,
|
|
5160
|
+
const env = (0, import_environment5.getEnv)();
|
|
5224
5161
|
const colors = {
|
|
5225
5162
|
normal: "bg-[#e9ecef]",
|
|
5226
5163
|
done: "bg-primary",
|
|
5227
5164
|
blocked: "bg-red-500"
|
|
5228
5165
|
};
|
|
5229
|
-
const [isOpen, setIsOpen] = (0,
|
|
5230
|
-
const buttonRef = (0,
|
|
5231
|
-
(0,
|
|
5166
|
+
const [isOpen, setIsOpen] = (0, import_react13.useState)(false);
|
|
5167
|
+
const buttonRef = (0, import_react13.useRef)(null);
|
|
5168
|
+
(0, import_react13.useEffect)(() => {
|
|
5232
5169
|
const handleClickOutside = (event) => {
|
|
5233
5170
|
if (buttonRef.current && !buttonRef.current.contains(event.target)) {
|
|
5234
5171
|
setIsOpen(false);
|
|
@@ -5239,7 +5176,7 @@ var statusDropdownController = (props) => {
|
|
|
5239
5176
|
document.removeEventListener("mousedown", handleClickOutside);
|
|
5240
5177
|
};
|
|
5241
5178
|
}, []);
|
|
5242
|
-
const { mutate: onSave } = (0,
|
|
5179
|
+
const { mutate: onSave } = (0, import_hooks10.useSave)();
|
|
5243
5180
|
const handleClick = async (status) => {
|
|
5244
5181
|
setIsOpen(!isOpen);
|
|
5245
5182
|
onSave(
|
|
@@ -5269,7 +5206,26 @@ var statusDropdownController = (props) => {
|
|
|
5269
5206
|
};
|
|
5270
5207
|
|
|
5271
5208
|
// src/widget/basic/many2one-field/controller.ts
|
|
5272
|
-
var
|
|
5209
|
+
var import_react14 = require("react");
|
|
5210
|
+
|
|
5211
|
+
// src/utils.ts
|
|
5212
|
+
var utils_exports = {};
|
|
5213
|
+
__export(utils_exports, {
|
|
5214
|
+
API_APP_URL: () => API_APP_URL,
|
|
5215
|
+
API_PRESCHOOL_URL: () => API_PRESCHOOL_URL,
|
|
5216
|
+
STORAGES: () => STORAGES,
|
|
5217
|
+
combineContexts: () => combineContexts,
|
|
5218
|
+
convertFieldsToArray: () => convertFieldsToArray,
|
|
5219
|
+
countSum: () => countSum,
|
|
5220
|
+
getDateRange: () => getDateRange,
|
|
5221
|
+
languages: () => languages,
|
|
5222
|
+
mergeButtons: () => mergeButtons,
|
|
5223
|
+
setStorageItemAsync: () => setStorageItemAsync,
|
|
5224
|
+
useGetRowIds: () => useGetRowIds,
|
|
5225
|
+
useSelectionState: () => useSelectionState,
|
|
5226
|
+
useStorageState: () => useStorageState
|
|
5227
|
+
});
|
|
5228
|
+
__reExport(utils_exports, require("@fctc/interface-logic/utils"));
|
|
5273
5229
|
|
|
5274
5230
|
// src/provider.ts
|
|
5275
5231
|
var provider_exports = {};
|
|
@@ -5290,22 +5246,22 @@ var many2oneFieldController = (props) => {
|
|
|
5290
5246
|
options: fieldOptions,
|
|
5291
5247
|
showDetail
|
|
5292
5248
|
} = props;
|
|
5293
|
-
const
|
|
5294
|
-
const [
|
|
5249
|
+
const { env } = (0, provider_exports.useEnv)();
|
|
5250
|
+
const [options, setOptions] = (0, import_react14.useState)([]);
|
|
5251
|
+
const [inputValue, setInputValue] = (0, import_react14.useState)("");
|
|
5295
5252
|
const [debouncedInputValue] = useDebounce(inputValue, 1e3);
|
|
5296
|
-
const [isShowModalMany2Many, setIsShowModalMany2Many] = (0,
|
|
5297
|
-
const [tempSelectedOption, setTempSelectedOption] = (0,
|
|
5298
|
-
const [domainModal, setDomainModal] = (0,
|
|
5299
|
-
const [domainObject, setDomainObject] = (0,
|
|
5253
|
+
const [isShowModalMany2Many, setIsShowModalMany2Many] = (0, import_react14.useState)(false);
|
|
5254
|
+
const [tempSelectedOption, setTempSelectedOption] = (0, import_react14.useState)(null);
|
|
5255
|
+
const [domainModal, setDomainModal] = (0, import_react14.useState)(null);
|
|
5256
|
+
const [domainObject, setDomainObject] = (0, import_react14.useState)(null);
|
|
5300
5257
|
const actionData = sessionStorageUtils.getActionData();
|
|
5301
5258
|
const { menuList } = (0, store_exports.useAppSelector)(store_exports.selectNavbar);
|
|
5302
|
-
const { context } = (0, store_exports.useAppSelector)(store_exports.selectEnv);
|
|
5303
5259
|
const initValue = methods?.getValues(name);
|
|
5304
5260
|
const optionsObject = (0, utils_exports.evalJSONContext)(fieldOptions) || {};
|
|
5305
5261
|
const contextObject = {
|
|
5306
5262
|
...(0, utils_exports.evalJSONContext)(actionData?.context) || {},
|
|
5307
5263
|
...fieldContext,
|
|
5308
|
-
...context
|
|
5264
|
+
...env?.context
|
|
5309
5265
|
};
|
|
5310
5266
|
const { useGetSelection: useGetSelection3 } = (0, provider_exports.useService)();
|
|
5311
5267
|
const data = {
|
|
@@ -5328,18 +5284,18 @@ var many2oneFieldController = (props) => {
|
|
|
5328
5284
|
queryKey,
|
|
5329
5285
|
enabled: false
|
|
5330
5286
|
});
|
|
5331
|
-
const selectOptions = (0,
|
|
5287
|
+
const selectOptions = (0, import_react14.useMemo)(() => {
|
|
5332
5288
|
return dataOfSelection?.records?.map((val) => ({
|
|
5333
5289
|
value: val?.id,
|
|
5334
5290
|
label: val?.display_name || val?.name
|
|
5335
5291
|
})) || [];
|
|
5336
5292
|
}, [dataOfSelection]);
|
|
5337
|
-
(0,
|
|
5293
|
+
(0, import_react14.useEffect)(() => {
|
|
5338
5294
|
setOptions(selectOptions);
|
|
5339
5295
|
setDomainModal(domainObject);
|
|
5340
5296
|
if (relation === "student.subject") (0, store_exports.setListSubject)(selectOptions);
|
|
5341
5297
|
}, [selectOptions]);
|
|
5342
|
-
(0,
|
|
5298
|
+
(0, import_react14.useEffect)(() => {
|
|
5343
5299
|
setDomainObject(
|
|
5344
5300
|
(0, utils_exports.evalJSONDomain)(
|
|
5345
5301
|
domain,
|
|
@@ -5347,7 +5303,7 @@ var many2oneFieldController = (props) => {
|
|
|
5347
5303
|
)
|
|
5348
5304
|
);
|
|
5349
5305
|
}, [domain, formValues]);
|
|
5350
|
-
(0,
|
|
5306
|
+
(0, import_react14.useEffect)(() => {
|
|
5351
5307
|
if (!propValue && tempSelectedOption) {
|
|
5352
5308
|
methods.setValue(name, null);
|
|
5353
5309
|
setTempSelectedOption(null);
|
|
@@ -5358,10 +5314,10 @@ var many2oneFieldController = (props) => {
|
|
|
5358
5314
|
});
|
|
5359
5315
|
}
|
|
5360
5316
|
}, [propValue]);
|
|
5361
|
-
const fetchMoreOptions = (0,
|
|
5317
|
+
const fetchMoreOptions = (0, import_react14.useCallback)(() => {
|
|
5362
5318
|
refetch();
|
|
5363
5319
|
}, [refetch]);
|
|
5364
|
-
(0,
|
|
5320
|
+
(0, import_react14.useEffect)(() => {
|
|
5365
5321
|
if (debouncedInputValue) {
|
|
5366
5322
|
const filteredDomain = [...domainObject ?? []]?.filter(
|
|
5367
5323
|
(d) => !(Array.isArray(d) && d[0] === "name" && d[1] === "ilike")
|
|
@@ -5376,7 +5332,7 @@ var many2oneFieldController = (props) => {
|
|
|
5376
5332
|
}, 50);
|
|
5377
5333
|
}
|
|
5378
5334
|
}, [debouncedInputValue]);
|
|
5379
|
-
const handleChooseRecord = (0,
|
|
5335
|
+
const handleChooseRecord = (0, import_react14.useCallback)(
|
|
5380
5336
|
(idRecord) => {
|
|
5381
5337
|
const newOption = options.find(
|
|
5382
5338
|
(option) => option.value === idRecord
|
|
@@ -5401,8 +5357,8 @@ var many2oneFieldController = (props) => {
|
|
|
5401
5357
|
},
|
|
5402
5358
|
[options, methods, name, onChange]
|
|
5403
5359
|
);
|
|
5404
|
-
const handleClose = (0,
|
|
5405
|
-
const handleSelectChange = (0,
|
|
5360
|
+
const handleClose = (0, import_react14.useCallback)(() => setIsShowModalMany2Many(false), []);
|
|
5361
|
+
const handleSelectChange = (0, import_react14.useCallback)(
|
|
5406
5362
|
(selectedOption) => {
|
|
5407
5363
|
if (!selectedOption) {
|
|
5408
5364
|
methods.setValue(name, null, { shouldDirty: true });
|
|
@@ -5449,20 +5405,20 @@ var many2oneFieldController = (props) => {
|
|
|
5449
5405
|
};
|
|
5450
5406
|
|
|
5451
5407
|
// src/widget/basic/many2one-button-field/controller.ts
|
|
5452
|
-
var
|
|
5453
|
-
var
|
|
5454
|
-
var
|
|
5408
|
+
var import_environment6 = require("@fctc/interface-logic/environment");
|
|
5409
|
+
var import_hooks12 = require("@fctc/interface-logic/hooks");
|
|
5410
|
+
var import_utils5 = require("@fctc/interface-logic/utils");
|
|
5455
5411
|
var many2oneButtonController = (props) => {
|
|
5456
5412
|
const { domain, methods, relation } = props;
|
|
5457
5413
|
const actionDataString = sessionStorage.getItem("actionData");
|
|
5458
|
-
const env = (0,
|
|
5459
|
-
const domainObject = (0,
|
|
5414
|
+
const env = (0, import_environment6.getEnv)();
|
|
5415
|
+
const domainObject = (0, import_utils5.evalJSONDomain)(domain, methods?.getValues() || {});
|
|
5460
5416
|
const actionData = actionDataString && actionDataString !== "undefined" ? JSON.parse(actionDataString) : {};
|
|
5461
|
-
const { data: dataOfSelection } = (0,
|
|
5417
|
+
const { data: dataOfSelection } = (0, import_hooks12.useGetSelection)({
|
|
5462
5418
|
data: {
|
|
5463
5419
|
model: relation ?? "",
|
|
5464
5420
|
domain: domainObject,
|
|
5465
|
-
context: { ...env.context, ...(0,
|
|
5421
|
+
context: { ...env.context, ...(0, import_utils5.evalJSONContext)(actionData?.context) }
|
|
5466
5422
|
},
|
|
5467
5423
|
queryKey: [`data_${relation}`, domainObject]
|
|
5468
5424
|
});
|
|
@@ -5476,91 +5432,77 @@ var many2oneButtonController = (props) => {
|
|
|
5476
5432
|
};
|
|
5477
5433
|
|
|
5478
5434
|
// src/widget/basic/many2many-field/controller.ts
|
|
5479
|
-
var
|
|
5480
|
-
var
|
|
5481
|
-
var import_utils7 = require("@fctc/interface-logic/utils");
|
|
5435
|
+
var import_react15 = require("react");
|
|
5436
|
+
var import_utils6 = require("@fctc/interface-logic/utils");
|
|
5482
5437
|
var many2manyFieldController = (props) => {
|
|
5483
5438
|
const {
|
|
5484
5439
|
relation,
|
|
5485
5440
|
domain,
|
|
5486
5441
|
context,
|
|
5442
|
+
options,
|
|
5487
5443
|
tab,
|
|
5488
|
-
model,
|
|
5489
|
-
aid,
|
|
5490
5444
|
setSelectedRowKeys: setSelectedRowKeys4,
|
|
5491
|
-
fields,
|
|
5492
|
-
setFields,
|
|
5493
5445
|
groupByDomain,
|
|
5494
|
-
|
|
5495
|
-
|
|
5496
|
-
sessionStorageUtils
|
|
5446
|
+
enabled: enabledCallAPI,
|
|
5447
|
+
actionData
|
|
5497
5448
|
} = props;
|
|
5498
|
-
const appDispatch = (0, import_store8.useAppDispatch)();
|
|
5499
|
-
const actionData = sessionStorageUtils.getActionData();
|
|
5500
|
-
const [debouncedPage] = useDebounce(page, 500);
|
|
5501
|
-
const [order, setOrder] = (0, import_react16.useState)();
|
|
5502
|
-
const [isLoadedData, setIsLoadedData] = (0, import_react16.useState)(false);
|
|
5503
|
-
const [domainMany2Many, setDomainMany2Many] = (0, import_react16.useState)(domain);
|
|
5504
5449
|
const { env } = (0, provider_exports.useEnv)();
|
|
5505
5450
|
const { useGetView: useGetView2, useGetListData: useGetListData3, useGetFormView } = (0, provider_exports.useService)();
|
|
5451
|
+
const [order, setOrder] = (0, import_react15.useState)();
|
|
5452
|
+
const [page, setPage] = (0, import_react15.useState)(0);
|
|
5453
|
+
const [domainMany2Many, setDomainMany2Many] = (0, import_react15.useState)(null);
|
|
5454
|
+
const [debouncedPage] = useDebounce(page, 500);
|
|
5455
|
+
const contextObject = {
|
|
5456
|
+
...env.context,
|
|
5457
|
+
...context || {}
|
|
5458
|
+
};
|
|
5506
5459
|
const viewParams = {
|
|
5507
5460
|
model: relation,
|
|
5508
5461
|
views: [
|
|
5509
5462
|
[false, "list"],
|
|
5510
5463
|
[false, "search"]
|
|
5511
5464
|
],
|
|
5512
|
-
context
|
|
5465
|
+
context: contextObject
|
|
5513
5466
|
};
|
|
5514
|
-
const { data: viewResponse } = useGetView2(viewParams,
|
|
5515
|
-
const baseModel = (0,
|
|
5467
|
+
const { data: viewResponse } = useGetView2(viewParams, enabledCallAPI);
|
|
5468
|
+
const baseModel = (0, import_react15.useMemo)(
|
|
5516
5469
|
() => ({
|
|
5517
5470
|
name: String(relation),
|
|
5518
5471
|
view: viewResponse || {},
|
|
5519
|
-
actContext:
|
|
5472
|
+
actContext: contextObject,
|
|
5520
5473
|
fields: [
|
|
5521
5474
|
...Object.values(viewResponse?.views?.list?.fields ?? {}),
|
|
5522
5475
|
...tab?.fields ? tab.fields : []
|
|
5523
5476
|
]
|
|
5524
5477
|
}),
|
|
5525
|
-
[
|
|
5478
|
+
[relation, viewResponse]
|
|
5526
5479
|
);
|
|
5527
5480
|
const initModel = (0, hooks_exports.useModel)();
|
|
5528
|
-
const modelInstance = (0,
|
|
5481
|
+
const modelInstance = (0, import_react15.useMemo)(() => {
|
|
5529
5482
|
if (viewResponse) {
|
|
5530
5483
|
return initModel.initModel(baseModel);
|
|
5531
5484
|
}
|
|
5532
5485
|
return null;
|
|
5533
5486
|
}, [baseModel, viewResponse]);
|
|
5534
|
-
const specification = (0,
|
|
5487
|
+
const specification = (0, import_react15.useMemo)(() => {
|
|
5535
5488
|
if (modelInstance) {
|
|
5536
5489
|
return modelInstance.getSpecification();
|
|
5537
5490
|
}
|
|
5538
5491
|
return null;
|
|
5539
5492
|
}, [modelInstance]);
|
|
5540
5493
|
const default_order = viewResponse && viewResponse?.views?.list?.default_order;
|
|
5541
|
-
const optionsObject = tab?.options ? (0,
|
|
5494
|
+
const optionsObject = tab?.options ? (0, import_utils6.evalJSONContext)(tab?.options) : (options ? (0, import_utils6.evalJSONContext)(options) : {}) || {};
|
|
5542
5495
|
const fetchData = async () => {
|
|
5543
5496
|
try {
|
|
5544
|
-
|
|
5545
|
-
|
|
5546
|
-
|
|
5547
|
-
const modalData = viewResponse?.views?.list?.fields.map((field) => ({
|
|
5548
|
-
...viewResponse?.models?.[String(model)]?.[field?.name],
|
|
5549
|
-
...field
|
|
5550
|
-
}));
|
|
5551
|
-
if (!fields?.[`${aid}_${relation}_popupmany2many`] && modalData) {
|
|
5552
|
-
setFields({
|
|
5553
|
-
...fields,
|
|
5554
|
-
[`${aid}_${relation}_popupmany2many`]: modalData
|
|
5555
|
-
});
|
|
5556
|
-
}
|
|
5557
|
-
appDispatch((0, import_store8.setPage)(0));
|
|
5497
|
+
const domainParse = typeof domain === "string" ? (0, import_utils6.evalJSONDomain)(domain, contextObject) : Array.isArray(domain) ? domain : [];
|
|
5498
|
+
setDomainMany2Many(domainParse);
|
|
5499
|
+
setPage(0);
|
|
5558
5500
|
} catch (err) {
|
|
5559
5501
|
console.log(err);
|
|
5560
5502
|
}
|
|
5561
5503
|
};
|
|
5562
5504
|
const queryKey = [
|
|
5563
|
-
`view-${relation}
|
|
5505
|
+
`view-${relation}`,
|
|
5564
5506
|
specification,
|
|
5565
5507
|
domainMany2Many,
|
|
5566
5508
|
debouncedPage,
|
|
@@ -5573,93 +5515,76 @@ var many2manyFieldController = (props) => {
|
|
|
5573
5515
|
domain: domainMany2Many,
|
|
5574
5516
|
offset: debouncedPage * 10,
|
|
5575
5517
|
limit: 10,
|
|
5576
|
-
context,
|
|
5518
|
+
context: contextObject,
|
|
5577
5519
|
fields: groupByDomain?.fields,
|
|
5578
5520
|
groupby: [groupByDomain?.contexts[0]?.group_by],
|
|
5579
|
-
sort: order ? order : default_order ? (0,
|
|
5521
|
+
sort: order ? order : default_order ? (0, import_utils6.formatSortingString)(default_order) : ""
|
|
5580
5522
|
};
|
|
5581
|
-
const enabled =
|
|
5523
|
+
const enabled = enabledCallAPI && !!specification && !!relation && !!domainMany2Many && !!viewResponse;
|
|
5582
5524
|
const {
|
|
5583
5525
|
data: dataResponse,
|
|
5584
|
-
isLoading
|
|
5585
|
-
isFetched
|
|
5526
|
+
isLoading,
|
|
5527
|
+
isFetched,
|
|
5586
5528
|
isPlaceholderData
|
|
5587
5529
|
} = useGetListData3(data, queryKey, enabled);
|
|
5588
|
-
(0,
|
|
5530
|
+
(0, import_react15.useEffect)(() => {
|
|
5589
5531
|
if (viewResponse) {
|
|
5590
5532
|
fetchData();
|
|
5591
5533
|
}
|
|
5592
5534
|
return () => {
|
|
5593
|
-
|
|
5594
|
-
setFields((prevFields) => ({
|
|
5595
|
-
...prevFields,
|
|
5596
|
-
[`${aid}_${relation}_popupmany2many`]: null
|
|
5597
|
-
}));
|
|
5598
|
-
appDispatch((0, import_store8.setPage)(0));
|
|
5535
|
+
setPage(0);
|
|
5599
5536
|
setSelectedRowKeys4([]);
|
|
5600
5537
|
setDomainMany2Many(null);
|
|
5601
|
-
setIsLoadedData(false);
|
|
5602
5538
|
};
|
|
5603
5539
|
}, [viewResponse]);
|
|
5604
|
-
const { rows, columns, typeTable } = tableController({
|
|
5540
|
+
const { rows, columns, typeTable, onToggleColumnOptional } = tableController({
|
|
5605
5541
|
data: {
|
|
5606
|
-
fields:
|
|
5542
|
+
fields: viewResponse?.views?.list?.fields,
|
|
5607
5543
|
records: dataResponse?.records ?? dataResponse?.groups,
|
|
5608
5544
|
dataModel: viewResponse?.models?.[String(relation)],
|
|
5609
|
-
context:
|
|
5545
|
+
context: contextObject,
|
|
5610
5546
|
typeTable: dataResponse?.groups ? "group" : "list"
|
|
5611
5547
|
}
|
|
5612
5548
|
});
|
|
5613
|
-
const
|
|
5614
|
-
|
|
5615
|
-
model: relation,
|
|
5616
|
-
context
|
|
5617
|
-
|
|
5618
|
-
|
|
5619
|
-
|
|
5620
|
-
|
|
5621
|
-
|
|
5622
|
-
|
|
5623
|
-
data: dataFormView,
|
|
5624
|
-
queryKey: [`form-view-action-${relation}`],
|
|
5625
|
-
enabled: false
|
|
5549
|
+
const searchControllers = searchController({
|
|
5550
|
+
viewData: viewResponse,
|
|
5551
|
+
model: relation ?? "",
|
|
5552
|
+
context: contextObject,
|
|
5553
|
+
domain,
|
|
5554
|
+
fieldsList: [
|
|
5555
|
+
...columns?.filter(
|
|
5556
|
+
(col) => col?.field?.type_co === "field" && col?.optional !== "hide"
|
|
5557
|
+
)?.map((col) => ({ ...col.field })) ?? []
|
|
5558
|
+
]
|
|
5626
5559
|
});
|
|
5627
|
-
(0, import_react16.useEffect)(() => {
|
|
5628
|
-
if (isSuccess && dataFormViewResponse) {
|
|
5629
|
-
sessionStorage.setItem("actionData", JSON.stringify(dataFormViewResponse));
|
|
5630
|
-
window.location.href = `/form/menu?model=${relation}`;
|
|
5631
|
-
}
|
|
5632
|
-
}, [isSuccess]);
|
|
5633
|
-
(0, import_react16.useEffect)(() => {
|
|
5634
|
-
if (domainMany2Many && !isLoadedData) {
|
|
5635
|
-
setIsLoadedData(true);
|
|
5636
|
-
}
|
|
5637
|
-
}, [domainMany2Many]);
|
|
5638
5560
|
const handleCreateNewOnPage = async () => {
|
|
5639
|
-
try {
|
|
5640
|
-
refetch();
|
|
5641
|
-
} catch (error) {
|
|
5642
|
-
console.log(error);
|
|
5643
|
-
}
|
|
5644
5561
|
};
|
|
5645
5562
|
return {
|
|
5646
5563
|
handleCreateNewOnPage,
|
|
5647
5564
|
optionsObject,
|
|
5565
|
+
totalRows: dataResponse?.length ?? 0,
|
|
5648
5566
|
rows,
|
|
5649
5567
|
columns,
|
|
5568
|
+
onToggleColumnOptional,
|
|
5650
5569
|
typeTable,
|
|
5651
|
-
|
|
5652
|
-
|
|
5653
|
-
isPlaceholderData
|
|
5570
|
+
isLoading,
|
|
5571
|
+
isFetched,
|
|
5572
|
+
isPlaceholderData,
|
|
5573
|
+
setPage,
|
|
5574
|
+
page,
|
|
5575
|
+
viewData: viewResponse,
|
|
5576
|
+
domain: domainMany2Many,
|
|
5577
|
+
setDomain: setDomainMany2Many,
|
|
5578
|
+
searchController: searchControllers
|
|
5654
5579
|
};
|
|
5655
5580
|
};
|
|
5656
5581
|
|
|
5657
5582
|
// src/widget/basic/many2many-tags-field/controller.ts
|
|
5658
|
-
var
|
|
5583
|
+
var import_react16 = require("react");
|
|
5659
5584
|
var import_constants4 = require("@fctc/interface-logic/constants");
|
|
5660
|
-
var
|
|
5661
|
-
var
|
|
5662
|
-
var
|
|
5585
|
+
var import_environment7 = require("@fctc/interface-logic/environment");
|
|
5586
|
+
var import_hooks14 = require("@fctc/interface-logic/hooks");
|
|
5587
|
+
var import_utils7 = require("@fctc/interface-logic/utils");
|
|
5663
5588
|
var many2manyTagsController = (props) => {
|
|
5664
5589
|
const {
|
|
5665
5590
|
relation,
|
|
@@ -5670,10 +5595,10 @@ var many2manyTagsController = (props) => {
|
|
|
5670
5595
|
placeholderNoOption
|
|
5671
5596
|
} = props;
|
|
5672
5597
|
const isUser = relation === "res.users" || relation === "res.partner";
|
|
5673
|
-
const env = (0,
|
|
5674
|
-
const addtionalFields = optionsFields ? (0,
|
|
5675
|
-
const domainObject = (0,
|
|
5676
|
-
() => (0,
|
|
5598
|
+
const env = (0, import_environment7.getEnv)();
|
|
5599
|
+
const addtionalFields = optionsFields ? (0, import_utils7.evalJSONContext)(optionsFields) : null;
|
|
5600
|
+
const domainObject = (0, import_react16.useMemo)(
|
|
5601
|
+
() => (0, import_utils7.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues || {}))),
|
|
5677
5602
|
[domain, formValues]
|
|
5678
5603
|
);
|
|
5679
5604
|
const data = {
|
|
@@ -5689,7 +5614,7 @@ var many2manyTagsController = (props) => {
|
|
|
5689
5614
|
enabled: true,
|
|
5690
5615
|
context: env.context
|
|
5691
5616
|
};
|
|
5692
|
-
const { data: dataOfSelection } = (0,
|
|
5617
|
+
const { data: dataOfSelection } = (0, import_hooks14.useGetSelection)({
|
|
5693
5618
|
data,
|
|
5694
5619
|
queryKey: [`data_${relation}`, domainObject]
|
|
5695
5620
|
});
|
|
@@ -5715,8 +5640,8 @@ var many2manyTagsController = (props) => {
|
|
|
5715
5640
|
};
|
|
5716
5641
|
|
|
5717
5642
|
// src/widget/basic/status-bar-field/controller.ts
|
|
5718
|
-
var
|
|
5719
|
-
var
|
|
5643
|
+
var import_react17 = require("react");
|
|
5644
|
+
var import_utils8 = require("@fctc/interface-logic/utils");
|
|
5720
5645
|
var durationController = (props) => {
|
|
5721
5646
|
const { relation, domain, formValues, name, id, model, onRefetch } = props;
|
|
5722
5647
|
const specification = {
|
|
@@ -5726,13 +5651,13 @@ var durationController = (props) => {
|
|
|
5726
5651
|
};
|
|
5727
5652
|
const { useGetListData: useGetListData3, useChangeStatus } = (0, provider_exports.useService)();
|
|
5728
5653
|
const { env } = (0, provider_exports.useEnv)();
|
|
5729
|
-
const [disabled, setDisabled] = (0,
|
|
5730
|
-
const [modelStatus, setModalStatus] = (0,
|
|
5654
|
+
const [disabled, setDisabled] = (0, import_react17.useState)(false);
|
|
5655
|
+
const [modelStatus, setModalStatus] = (0, import_react17.useState)(false);
|
|
5731
5656
|
const queryKey = [`data-status-duration`, specification];
|
|
5732
5657
|
const listDataProps = {
|
|
5733
5658
|
model: relation,
|
|
5734
5659
|
specification,
|
|
5735
|
-
domain: (0,
|
|
5660
|
+
domain: (0, import_utils8.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues))),
|
|
5736
5661
|
limit: 10,
|
|
5737
5662
|
offset: 0,
|
|
5738
5663
|
fields: "",
|
|
@@ -5778,8 +5703,8 @@ var durationController = (props) => {
|
|
|
5778
5703
|
};
|
|
5779
5704
|
|
|
5780
5705
|
// src/widget/basic/priority-field/controller.ts
|
|
5781
|
-
var
|
|
5782
|
-
var
|
|
5706
|
+
var import_hooks15 = require("@fctc/interface-logic/hooks");
|
|
5707
|
+
var import_utils9 = require("@fctc/interface-logic/utils");
|
|
5783
5708
|
var priorityFieldController = (props) => {
|
|
5784
5709
|
const {
|
|
5785
5710
|
value,
|
|
@@ -5794,11 +5719,11 @@ var priorityFieldController = (props) => {
|
|
|
5794
5719
|
viewData,
|
|
5795
5720
|
context
|
|
5796
5721
|
} = props;
|
|
5797
|
-
const _context = { ...(0,
|
|
5722
|
+
const _context = { ...(0, import_utils9.evalJSONContext)(actionData?.context) };
|
|
5798
5723
|
const contextObject = { ...context, ..._context };
|
|
5799
5724
|
const defaultPriority = parseInt(value) + 1;
|
|
5800
5725
|
const label = viewData?.models?.[model]?.[name ?? ""]?.string ?? name;
|
|
5801
|
-
const { mutateAsync: fetchSave } = (0,
|
|
5726
|
+
const { mutateAsync: fetchSave } = (0, import_hooks15.useSave)();
|
|
5802
5727
|
const savePriorities = async ({
|
|
5803
5728
|
value: value2,
|
|
5804
5729
|
resetPriority
|
|
@@ -5833,10 +5758,10 @@ var priorityFieldController = (props) => {
|
|
|
5833
5758
|
};
|
|
5834
5759
|
|
|
5835
5760
|
// src/widget/basic/download-file-field/controller.ts
|
|
5836
|
-
var
|
|
5761
|
+
var import_react18 = require("react");
|
|
5837
5762
|
var downloadFileController = () => {
|
|
5838
|
-
const inputId = (0,
|
|
5839
|
-
const [file, setFile] = (0,
|
|
5763
|
+
const inputId = (0, import_react18.useId)();
|
|
5764
|
+
const [file, setFile] = (0, import_react18.useState)(null);
|
|
5840
5765
|
const handleFileChange = (e) => {
|
|
5841
5766
|
setFile(e.target.files[0]);
|
|
5842
5767
|
};
|
|
@@ -6768,13 +6693,13 @@ var dateFieldController = (props) => {
|
|
|
6768
6693
|
};
|
|
6769
6694
|
|
|
6770
6695
|
// src/widget/basic/copy-link-button/controller.ts
|
|
6771
|
-
var
|
|
6772
|
-
var
|
|
6696
|
+
var import_react19 = require("react");
|
|
6697
|
+
var import_utils10 = require("@fctc/interface-logic/utils");
|
|
6773
6698
|
var copyLinkButtonController = (props) => {
|
|
6774
6699
|
const { value, defaultValue } = props;
|
|
6775
|
-
const [isCopied, setIsCopied] = (0,
|
|
6700
|
+
const [isCopied, setIsCopied] = (0, import_react19.useState)(false);
|
|
6776
6701
|
const handleCopyToClipboard = async (value2) => {
|
|
6777
|
-
await (0,
|
|
6702
|
+
await (0, import_utils10.copyTextToClipboard)(value2);
|
|
6778
6703
|
setIsCopied(true);
|
|
6779
6704
|
setTimeout(() => setIsCopied(false), 2e3);
|
|
6780
6705
|
};
|
|
@@ -6787,12 +6712,12 @@ var copyLinkButtonController = (props) => {
|
|
|
6787
6712
|
};
|
|
6788
6713
|
|
|
6789
6714
|
// src/widget/basic/color-field/color-controller.ts
|
|
6790
|
-
var
|
|
6715
|
+
var import_utils11 = require("@fctc/interface-logic/utils");
|
|
6791
6716
|
var colorFieldController = (props) => {
|
|
6792
6717
|
const { value, isForm, name, formValues, idForm, model, actionData } = props;
|
|
6793
6718
|
const { env } = (0, provider_exports.useEnv)();
|
|
6794
6719
|
const { useSave: useSave3 } = (0, provider_exports.useService)();
|
|
6795
|
-
const _context = { ...(0,
|
|
6720
|
+
const _context = { ...(0, import_utils11.evalJSONContext)(actionData?.context) || {} };
|
|
6796
6721
|
const contextObject = { ...env.context, ..._context };
|
|
6797
6722
|
const idDefault = isForm ? idForm : formValues?.id;
|
|
6798
6723
|
const { mutate: onSave } = useSave3();
|
|
@@ -6820,16 +6745,16 @@ var colorFieldController = (props) => {
|
|
|
6820
6745
|
};
|
|
6821
6746
|
|
|
6822
6747
|
// src/widget/basic/binary-field/controller.ts
|
|
6823
|
-
var
|
|
6824
|
-
var
|
|
6748
|
+
var import_react20 = require("react");
|
|
6749
|
+
var import_utils12 = require("@fctc/interface-logic/utils");
|
|
6825
6750
|
var binaryFieldController = (props) => {
|
|
6826
6751
|
const { name, methods, readonly = false, value } = props;
|
|
6827
|
-
const inputId = (0,
|
|
6828
|
-
const [selectedImage, setSelectedImage] = (0,
|
|
6829
|
-
const [initialImage, setInitialImage] = (0,
|
|
6830
|
-
const [isInsideTable, setIsInsideTable] = (0,
|
|
6752
|
+
const inputId = (0, import_react20.useId)();
|
|
6753
|
+
const [selectedImage, setSelectedImage] = (0, import_react20.useState)(null);
|
|
6754
|
+
const [initialImage, setInitialImage] = (0, import_react20.useState)(value || null);
|
|
6755
|
+
const [isInsideTable, setIsInsideTable] = (0, import_react20.useState)(false);
|
|
6831
6756
|
const { setValue } = methods;
|
|
6832
|
-
const binaryRef = (0,
|
|
6757
|
+
const binaryRef = (0, import_react20.useRef)(null);
|
|
6833
6758
|
const convertUrlToBase64 = async (url) => {
|
|
6834
6759
|
try {
|
|
6835
6760
|
const response = await fetch(url);
|
|
@@ -6878,11 +6803,11 @@ var binaryFieldController = (props) => {
|
|
|
6878
6803
|
};
|
|
6879
6804
|
const checkIsImageLink = (url) => {
|
|
6880
6805
|
const imageExtensions = /\.(jpg|jpeg|png|gif|bmp|webp|svg|tiff|ico)$/i;
|
|
6881
|
-
return imageExtensions.test(url) || (0,
|
|
6806
|
+
return imageExtensions.test(url) || (0, import_utils12.isBase64Image)(url) || isBlobUrl(url);
|
|
6882
6807
|
};
|
|
6883
6808
|
const getImageBase64WithMimeType = (base64) => {
|
|
6884
6809
|
if (typeof base64 !== "string" || base64.length < 10) return null;
|
|
6885
|
-
if ((0,
|
|
6810
|
+
if ((0, import_utils12.isBase64Image)(base64)) return base64;
|
|
6886
6811
|
let mimeType = null;
|
|
6887
6812
|
if (base64.startsWith("iVBORw0KGgo")) mimeType = "image/png";
|
|
6888
6813
|
else if (base64.startsWith("/9j/")) mimeType = "image/jpeg";
|
|
@@ -6891,14 +6816,14 @@ var binaryFieldController = (props) => {
|
|
|
6891
6816
|
else if (base64.startsWith("UklGR")) mimeType = "image/webp";
|
|
6892
6817
|
return mimeType ? `data:${mimeType};base64,${base64}` : null;
|
|
6893
6818
|
};
|
|
6894
|
-
(0,
|
|
6819
|
+
(0, import_react20.useEffect)(() => {
|
|
6895
6820
|
return () => {
|
|
6896
6821
|
if (selectedImage) {
|
|
6897
6822
|
URL.revokeObjectURL(selectedImage);
|
|
6898
6823
|
}
|
|
6899
6824
|
};
|
|
6900
6825
|
}, [selectedImage]);
|
|
6901
|
-
(0,
|
|
6826
|
+
(0, import_react20.useEffect)(() => {
|
|
6902
6827
|
if (binaryRef.current) {
|
|
6903
6828
|
const isInsideTable2 = !!binaryRef.current.closest("table");
|
|
6904
6829
|
setIsInsideTable(isInsideTable2);
|
|
@@ -6918,8 +6843,8 @@ var binaryFieldController = (props) => {
|
|
|
6918
6843
|
};
|
|
6919
6844
|
|
|
6920
6845
|
// src/widget/advance/table/table-body/controller.ts
|
|
6921
|
-
var
|
|
6922
|
-
var
|
|
6846
|
+
var import_store8 = require("@fctc/interface-logic/store");
|
|
6847
|
+
var import_react21 = require("react");
|
|
6923
6848
|
var tableBodyController = (props) => {
|
|
6924
6849
|
const {
|
|
6925
6850
|
checkedAll,
|
|
@@ -6931,8 +6856,8 @@ var tableBodyController = (props) => {
|
|
|
6931
6856
|
selectedRowKeysRef,
|
|
6932
6857
|
onClickRow
|
|
6933
6858
|
} = props;
|
|
6934
|
-
const appDispatch = (0,
|
|
6935
|
-
const checked = (0,
|
|
6859
|
+
const appDispatch = (0, import_store8.useAppDispatch)();
|
|
6860
|
+
const checked = (0, import_react21.useMemo)(() => {
|
|
6936
6861
|
if (!row?.id) return false;
|
|
6937
6862
|
if (selectedRowKeys?.includes(row.id)) {
|
|
6938
6863
|
return true;
|
|
@@ -6948,12 +6873,12 @@ var tableBodyController = (props) => {
|
|
|
6948
6873
|
}
|
|
6949
6874
|
const newSelectedRowKeys = selectedRowKeys?.includes(row.id) ? selectedRowKeys?.filter((key) => key !== row.id) : [...selectedRowKeys, row.id];
|
|
6950
6875
|
console.log("newSelectedRowKeys", newSelectedRowKeys);
|
|
6951
|
-
appDispatch((0,
|
|
6876
|
+
appDispatch((0, import_store8.setSelectedRowKeys)(newSelectedRowKeys));
|
|
6952
6877
|
};
|
|
6953
6878
|
const handleClickRow = (col, row2) => {
|
|
6954
6879
|
onClickRow(col, row2);
|
|
6955
6880
|
};
|
|
6956
|
-
(0,
|
|
6881
|
+
(0, import_react21.useEffect)(() => {
|
|
6957
6882
|
if (!row?.id) return;
|
|
6958
6883
|
if (isAutoSelect) {
|
|
6959
6884
|
if (checkboxRef?.current === "uncheck") {
|
|
@@ -6961,17 +6886,17 @@ var tableBodyController = (props) => {
|
|
|
6961
6886
|
(id) => id !== row.id
|
|
6962
6887
|
);
|
|
6963
6888
|
selectedRowKeysRef.current = filtered;
|
|
6964
|
-
appDispatch((0,
|
|
6889
|
+
appDispatch((0, import_store8.setSelectedRowKeys)(filtered));
|
|
6965
6890
|
} else {
|
|
6966
6891
|
const unique = Array.from(
|
|
6967
6892
|
/* @__PURE__ */ new Set([...selectedRowKeysRef?.current, row?.id])
|
|
6968
6893
|
);
|
|
6969
6894
|
selectedRowKeysRef.current = unique;
|
|
6970
|
-
appDispatch((0,
|
|
6895
|
+
appDispatch((0, import_store8.setSelectedRowKeys)(unique));
|
|
6971
6896
|
}
|
|
6972
6897
|
}
|
|
6973
6898
|
}, [isAutoSelect]);
|
|
6974
|
-
(0,
|
|
6899
|
+
(0, import_react21.useEffect)(() => {
|
|
6975
6900
|
if (!checkedAll) {
|
|
6976
6901
|
checkboxRef.current = "enabled";
|
|
6977
6902
|
false;
|
|
@@ -6985,35 +6910,35 @@ var tableBodyController = (props) => {
|
|
|
6985
6910
|
};
|
|
6986
6911
|
|
|
6987
6912
|
// src/widget/advance/table/table-head/controller.ts
|
|
6988
|
-
var
|
|
6913
|
+
var import_store9 = require("@fctc/interface-logic/store");
|
|
6989
6914
|
var tableHeadController = (props) => {
|
|
6990
6915
|
const { typeTable, rows, selectedRowKeysRef } = props;
|
|
6991
|
-
const appDispatch = (0,
|
|
6992
|
-
const { groupByDomain } = (0,
|
|
6916
|
+
const appDispatch = (0, import_store9.useAppDispatch)();
|
|
6917
|
+
const { groupByDomain } = (0, import_store9.useAppSelector)(import_store9.selectSearch);
|
|
6993
6918
|
const handleCheckBoxAll = (event) => {
|
|
6994
6919
|
if (event?.target?.checked && typeTable === "list") {
|
|
6995
6920
|
const allRowKeys = Array.isArray(rows) ? rows.map((record) => record?.id) : [];
|
|
6996
|
-
appDispatch((0,
|
|
6921
|
+
appDispatch((0, import_store9.setSelectedRowKeys)(allRowKeys));
|
|
6997
6922
|
} else if (event?.target?.checked && typeTable === "group") {
|
|
6998
6923
|
const rowsIDs = document.querySelectorAll("tr[data-row-id]");
|
|
6999
6924
|
const ids = Array.from(rowsIDs)?.map(
|
|
7000
6925
|
(row) => Number(row?.getAttribute("data-row-id"))
|
|
7001
6926
|
);
|
|
7002
6927
|
if (ids?.length > 0) {
|
|
7003
|
-
appDispatch((0,
|
|
6928
|
+
appDispatch((0, import_store9.setSelectedRowKeys)(ids));
|
|
7004
6929
|
} else {
|
|
7005
6930
|
const sum = countSum(
|
|
7006
6931
|
rows,
|
|
7007
6932
|
typeof groupByDomain === "object" ? groupByDomain?.contexts?.[0]?.group_by : void 0
|
|
7008
6933
|
);
|
|
7009
6934
|
const keys = Array.from({ length: sum }, (_) => void 0);
|
|
7010
|
-
appDispatch((0,
|
|
6935
|
+
appDispatch((0, import_store9.setSelectedRowKeys)(keys));
|
|
7011
6936
|
}
|
|
7012
6937
|
if (selectedRowKeysRef) {
|
|
7013
6938
|
selectedRowKeysRef.current = [];
|
|
7014
6939
|
}
|
|
7015
6940
|
} else {
|
|
7016
|
-
appDispatch((0,
|
|
6941
|
+
appDispatch((0, import_store9.setSelectedRowKeys)([]));
|
|
7017
6942
|
}
|
|
7018
6943
|
};
|
|
7019
6944
|
return {
|
|
@@ -7022,12 +6947,12 @@ var tableHeadController = (props) => {
|
|
|
7022
6947
|
};
|
|
7023
6948
|
|
|
7024
6949
|
// src/widget/advance/table/table-view/controller.ts
|
|
7025
|
-
var
|
|
7026
|
-
var
|
|
7027
|
-
var
|
|
6950
|
+
var import_react22 = require("react");
|
|
6951
|
+
var import_store10 = require("@fctc/interface-logic/store");
|
|
6952
|
+
var import_utils13 = require("@fctc/interface-logic/utils");
|
|
7028
6953
|
var tableController = ({ data }) => {
|
|
7029
|
-
const [rows, setRows] = (0,
|
|
7030
|
-
const [columns, setColumns] = (0,
|
|
6954
|
+
const [rows, setRows] = (0, import_react22.useState)(data.records || []);
|
|
6955
|
+
const [columns, setColumns] = (0, import_react22.useState)([]);
|
|
7031
6956
|
const dataModelFields = data.fields?.map((field) => {
|
|
7032
6957
|
return {
|
|
7033
6958
|
...data.dataModel?.[field?.name],
|
|
@@ -7055,14 +6980,14 @@ var tableController = ({ data }) => {
|
|
|
7055
6980
|
return item.display_name ? { ...transformedItem, item: item.display_name } : transformedItem;
|
|
7056
6981
|
});
|
|
7057
6982
|
};
|
|
7058
|
-
(0,
|
|
6983
|
+
(0, import_react22.useEffect)(() => {
|
|
7059
6984
|
setRows(transformData(data.records || null));
|
|
7060
6985
|
}, [data.records]);
|
|
7061
6986
|
const handleGetColumns = () => {
|
|
7062
6987
|
let cols = [];
|
|
7063
6988
|
try {
|
|
7064
6989
|
cols = mergeFields?.filter((item) => {
|
|
7065
|
-
return item?.widget !== "details_Receive_money" && !(item?.column_invisible ?
|
|
6990
|
+
return item?.widget !== "details_Receive_money" && !(item?.column_invisible ? import_utils13.domainHelper.matchDomains(data.context, item?.column_invisible) : item?.invisible ? import_utils13.domainHelper.matchDomains(data.context, item?.invisible) : false);
|
|
7066
6991
|
})?.map((field) => {
|
|
7067
6992
|
return {
|
|
7068
6993
|
name: field?.name,
|
|
@@ -7076,7 +7001,7 @@ var tableController = ({ data }) => {
|
|
|
7076
7001
|
}
|
|
7077
7002
|
return cols;
|
|
7078
7003
|
};
|
|
7079
|
-
(0,
|
|
7004
|
+
(0, import_react22.useEffect)(() => {
|
|
7080
7005
|
const columns2 = handleGetColumns();
|
|
7081
7006
|
setColumns(columns2);
|
|
7082
7007
|
}, [data.records]);
|
|
@@ -7101,9 +7026,9 @@ var tableController = ({ data }) => {
|
|
|
7101
7026
|
};
|
|
7102
7027
|
|
|
7103
7028
|
// src/widget/advance/table/table-group/controller.ts
|
|
7104
|
-
var
|
|
7105
|
-
var
|
|
7106
|
-
var
|
|
7029
|
+
var import_react23 = require("react");
|
|
7030
|
+
var import_hooks16 = require("@fctc/interface-logic/hooks");
|
|
7031
|
+
var import_store11 = require("@fctc/interface-logic/store");
|
|
7107
7032
|
|
|
7108
7033
|
// src/environment.ts
|
|
7109
7034
|
var environment_exports = {};
|
|
@@ -7130,18 +7055,18 @@ var tableGroupController = (props) => {
|
|
|
7130
7055
|
setIsAutoSelect,
|
|
7131
7056
|
selectedRowKeysRef
|
|
7132
7057
|
} = props;
|
|
7133
|
-
const [pageGroup, setPageGroup] = (0,
|
|
7134
|
-
const { groupByDomain, selectedTags } = (0,
|
|
7135
|
-
const { selectedRowKeys } = (0,
|
|
7136
|
-
const appDispatch = (0,
|
|
7137
|
-
const { toDataJS } = (0,
|
|
7058
|
+
const [pageGroup, setPageGroup] = (0, import_react23.useState)(0);
|
|
7059
|
+
const { groupByDomain, selectedTags } = (0, import_store11.useAppSelector)(import_store11.selectSearch);
|
|
7060
|
+
const { selectedRowKeys } = (0, import_store11.useAppSelector)(import_store11.selectList);
|
|
7061
|
+
const appDispatch = (0, import_store11.useAppDispatch)();
|
|
7062
|
+
const { toDataJS } = (0, import_hooks16.useOdooDataTransform)();
|
|
7138
7063
|
const initVal = toDataJS(row, viewData, model);
|
|
7139
|
-
const [isShowGroup, setIsShowGroup] = (0,
|
|
7140
|
-
const [colEmptyGroup, setColEmptyGroup] = (0,
|
|
7064
|
+
const [isShowGroup, setIsShowGroup] = (0, import_react23.useState)(false);
|
|
7065
|
+
const [colEmptyGroup, setColEmptyGroup] = (0, import_react23.useState)({
|
|
7141
7066
|
fromStart: 1,
|
|
7142
7067
|
fromEnd: 1
|
|
7143
7068
|
});
|
|
7144
|
-
const processedData = (0,
|
|
7069
|
+
const processedData = (0, import_react23.useMemo)(() => {
|
|
7145
7070
|
const calculateColSpanEmpty = () => {
|
|
7146
7071
|
const startIndex = columns.findIndex(
|
|
7147
7072
|
(col) => col.field.type === "monetary" && typeof row[col.key] === "number" || col.field.aggregator === "sum"
|
|
@@ -7156,7 +7081,7 @@ var tableGroupController = (props) => {
|
|
|
7156
7081
|
};
|
|
7157
7082
|
return calculateColSpanEmpty();
|
|
7158
7083
|
}, [columns, row]);
|
|
7159
|
-
const shouldFetchData = (0,
|
|
7084
|
+
const shouldFetchData = (0, import_react23.useMemo)(() => {
|
|
7160
7085
|
return !!isShowGroup;
|
|
7161
7086
|
}, [isShowGroup]);
|
|
7162
7087
|
const enabled = shouldFetchData && !!processedData;
|
|
@@ -7181,7 +7106,7 @@ var tableGroupController = (props) => {
|
|
|
7181
7106
|
isPlaceholderData,
|
|
7182
7107
|
isLoading,
|
|
7183
7108
|
isFetching
|
|
7184
|
-
} = (0,
|
|
7109
|
+
} = (0, import_hooks16.useGetListData)(listDataProps, queryKey, enabled);
|
|
7185
7110
|
const {
|
|
7186
7111
|
columns: columnsGroup,
|
|
7187
7112
|
rows: rowsGroup,
|
|
@@ -7196,7 +7121,7 @@ var tableGroupController = (props) => {
|
|
|
7196
7121
|
}
|
|
7197
7122
|
});
|
|
7198
7123
|
const leftPadding = level > 1 ? level * 8 + "px" : "0px";
|
|
7199
|
-
(0,
|
|
7124
|
+
(0, import_react23.useEffect)(() => {
|
|
7200
7125
|
if (isShowGroup && selectedTags?.length > 0) {
|
|
7201
7126
|
setIsShowGroup(false);
|
|
7202
7127
|
}
|
|
@@ -7219,24 +7144,24 @@ var tableGroupController = (props) => {
|
|
|
7219
7144
|
const filteredIds = selectedRowKeys.filter(
|
|
7220
7145
|
(id) => !ids.includes(id)
|
|
7221
7146
|
);
|
|
7222
|
-
appDispatch((0,
|
|
7147
|
+
appDispatch((0, import_store11.setSelectedRowKeys)(filteredIds));
|
|
7223
7148
|
} else if (!isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && checkedAll && !allIdsNull && isQueryFetched) {
|
|
7224
7149
|
const clonedKeys = [...selectedRowKeys];
|
|
7225
|
-
appDispatch((0,
|
|
7226
|
-
setTimeout(() => appDispatch((0,
|
|
7150
|
+
appDispatch((0, import_store11.setSelectedRowKeys)([...clonedKeys, -1]));
|
|
7151
|
+
setTimeout(() => appDispatch((0, import_store11.setSelectedRowKeys)(clonedKeys)), 500);
|
|
7227
7152
|
} else if (isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && !checkedAll && !allIdsNull) {
|
|
7228
7153
|
const filteredKeys = selectedRowKeys.filter((id) => id > -1);
|
|
7229
|
-
appDispatch((0,
|
|
7154
|
+
appDispatch((0, import_store11.setSelectedRowKeys)(filteredKeys));
|
|
7230
7155
|
}
|
|
7231
7156
|
toggleShowGroup();
|
|
7232
7157
|
};
|
|
7233
|
-
(0,
|
|
7158
|
+
(0, import_react23.useEffect)(() => {
|
|
7234
7159
|
if (!isQueryFetched || !rowsGroup || !checkedAll || allIdsNull || typeTableGroup === "group") {
|
|
7235
7160
|
return;
|
|
7236
7161
|
}
|
|
7237
7162
|
const clonedKeys = [...selectedRowKeys];
|
|
7238
|
-
(0,
|
|
7239
|
-
setTimeout(() => (0,
|
|
7163
|
+
(0, import_store11.setSelectedRowKeys)([...clonedKeys, -1]);
|
|
7164
|
+
setTimeout(() => (0, import_store11.setSelectedRowKeys)(clonedKeys), 500);
|
|
7240
7165
|
}, [isQueryFetched]);
|
|
7241
7166
|
return {
|
|
7242
7167
|
handleExpandChildGroup,
|
|
@@ -7271,25 +7196,26 @@ var tableGroupController = (props) => {
|
|
|
7271
7196
|
|
|
7272
7197
|
// src/widget/advance/search/controller.ts
|
|
7273
7198
|
var import_constants5 = require("@fctc/interface-logic/constants");
|
|
7274
|
-
var
|
|
7199
|
+
var import_utils14 = require("@fctc/interface-logic/utils");
|
|
7275
7200
|
var import_moment2 = __toESM(require_moment());
|
|
7276
|
-
var
|
|
7201
|
+
var import_react24 = require("react");
|
|
7277
7202
|
var searchController = ({
|
|
7278
7203
|
viewData,
|
|
7279
|
-
|
|
7280
|
-
|
|
7281
|
-
|
|
7282
|
-
|
|
7283
|
-
searchMap
|
|
7204
|
+
model,
|
|
7205
|
+
domain,
|
|
7206
|
+
context,
|
|
7207
|
+
fieldsList
|
|
7284
7208
|
}) => {
|
|
7285
|
-
const
|
|
7286
|
-
const [
|
|
7287
|
-
const [
|
|
7288
|
-
const [
|
|
7289
|
-
const [
|
|
7290
|
-
const
|
|
7291
|
-
const
|
|
7292
|
-
const
|
|
7209
|
+
const { env } = (0, provider_exports.useEnv)();
|
|
7210
|
+
const [filterBy, setFilterBy] = (0, import_react24.useState)(null);
|
|
7211
|
+
const [searchBy, setSearchBy] = (0, import_react24.useState)(null);
|
|
7212
|
+
const [groupBy, setGroupBy] = (0, import_react24.useState)(null);
|
|
7213
|
+
const [selectedTags, setSelectedTags] = (0, import_react24.useState)(null);
|
|
7214
|
+
const [searchString, setSearchString] = (0, import_react24.useState)("");
|
|
7215
|
+
const [searchMap, setSearchMap] = (0, import_react24.useState)({});
|
|
7216
|
+
const actionContext = typeof context === "string" ? (0, import_utils14.evalJSONContext)(context) : context;
|
|
7217
|
+
const contextSearch = { ...env.context, ...actionContext };
|
|
7218
|
+
const domainAction = domain ? Array.isArray(domain) ? [...domain] : (0, import_utils14.evalJSONDomain)(domain, contextSearch) : [];
|
|
7293
7219
|
const clearSearch = () => {
|
|
7294
7220
|
setFilterBy([]);
|
|
7295
7221
|
setGroupBy([]);
|
|
@@ -7304,7 +7230,7 @@ var searchController = ({
|
|
|
7304
7230
|
const dataModel = viewData?.models?.[model];
|
|
7305
7231
|
const searchViews = viewData?.views?.search;
|
|
7306
7232
|
const searchByItems = searchViews?.search_by?.filter(
|
|
7307
|
-
(item) => !
|
|
7233
|
+
(item) => !import_utils14.domainHelper.matchDomains(contextSearch, item.invisible)
|
|
7308
7234
|
)?.map(
|
|
7309
7235
|
({ string, name, filter_domain, operator, widget }, index) => ({
|
|
7310
7236
|
dataIndex: index,
|
|
@@ -7317,10 +7243,10 @@ var searchController = ({
|
|
|
7317
7243
|
})
|
|
7318
7244
|
);
|
|
7319
7245
|
const filterByItems = searchViews?.filter_by.filter((item) => {
|
|
7320
|
-
return !
|
|
7246
|
+
return !import_utils14.domainHelper.matchDomains(contextSearch, item?.invisible);
|
|
7321
7247
|
})?.map((item) => ({ ...item, active: false }));
|
|
7322
7248
|
const groupByItems = searchViews?.group_by.filter(
|
|
7323
|
-
(item) => !
|
|
7249
|
+
(item) => !import_utils14.domainHelper.matchDomains(contextSearch, item?.invisible)
|
|
7324
7250
|
).map((item) => ({
|
|
7325
7251
|
...item,
|
|
7326
7252
|
string: item.string ?? viewData?.models?.[model]?.[item?.name?.split("group_by_")?.[1]]?.string
|
|
@@ -7333,10 +7259,9 @@ var searchController = ({
|
|
|
7333
7259
|
}
|
|
7334
7260
|
}
|
|
7335
7261
|
};
|
|
7336
|
-
(0,
|
|
7337
|
-
clearSearch();
|
|
7262
|
+
(0, import_react24.useEffect)(() => {
|
|
7338
7263
|
fetchData();
|
|
7339
|
-
}, [
|
|
7264
|
+
}, [model, viewData]);
|
|
7340
7265
|
const onChangeSearchInput = (search_string) => {
|
|
7341
7266
|
setSearchString(search_string);
|
|
7342
7267
|
};
|
|
@@ -7373,50 +7298,51 @@ var searchController = ({
|
|
|
7373
7298
|
};
|
|
7374
7299
|
const formatDomain = () => {
|
|
7375
7300
|
if (domainAction) {
|
|
7376
|
-
|
|
7301
|
+
console.log("domainAction", domainAction);
|
|
7302
|
+
const domain2 = [];
|
|
7377
7303
|
if (domainAction?.length > 0) {
|
|
7378
7304
|
if (Object.keys(searchMap).length > 0) {
|
|
7379
|
-
|
|
7305
|
+
domain2.push("&");
|
|
7380
7306
|
}
|
|
7381
7307
|
domainAction.forEach((domainItem) => {
|
|
7382
|
-
|
|
7308
|
+
domain2.push(domainItem);
|
|
7383
7309
|
});
|
|
7384
7310
|
}
|
|
7385
7311
|
Object.keys(searchMap).forEach((key, keyIndex, keys) => {
|
|
7386
7312
|
if (!key?.includes(import_constants5.SearchType.GROUP)) {
|
|
7387
7313
|
if (keys.length > 1 && keyIndex < keys.length - 1) {
|
|
7388
|
-
|
|
7314
|
+
domain2.push("&");
|
|
7389
7315
|
}
|
|
7390
7316
|
const valuesOfKey = searchMap[key];
|
|
7391
7317
|
valuesOfKey.forEach((value, index) => {
|
|
7392
7318
|
if (index < valuesOfKey.length - 1) {
|
|
7393
|
-
|
|
7319
|
+
domain2.push("|");
|
|
7394
7320
|
}
|
|
7395
7321
|
if (value.domain) {
|
|
7396
|
-
|
|
7322
|
+
domain2.push(...value.domain);
|
|
7397
7323
|
return;
|
|
7398
7324
|
}
|
|
7399
7325
|
let valueDomainItem = value?.value;
|
|
7400
7326
|
if (value?.modelType === "date") {
|
|
7401
|
-
valueDomainItem = (0,
|
|
7327
|
+
valueDomainItem = (0, import_utils14.validateAndParseDate)(value?.value);
|
|
7402
7328
|
} else if (value?.modelType === "datetime") {
|
|
7403
7329
|
if (value?.operator === "<=" || value?.operator === "<") {
|
|
7404
|
-
const parsedDate = (0,
|
|
7330
|
+
const parsedDate = (0, import_utils14.validateAndParseDate)(value?.value, true);
|
|
7405
7331
|
const hasTime = (0, import_moment2.default)(value?.value).format("HH:mm:ss") !== "00:00:00";
|
|
7406
7332
|
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");
|
|
7407
7333
|
} else {
|
|
7408
|
-
valueDomainItem = (0,
|
|
7334
|
+
valueDomainItem = (0, import_utils14.validateAndParseDate)(value?.value, true);
|
|
7409
7335
|
}
|
|
7410
7336
|
}
|
|
7411
7337
|
const operator = value?.modelType === "date" || value?.modelType === "datetime" || value?.modelType === "boolean" || value?.modelType === "integer" ? value?.operator ?? "=" : value.operator ?? "ilike";
|
|
7412
|
-
|
|
7338
|
+
domain2.push([value.name, operator, valueDomainItem]);
|
|
7413
7339
|
});
|
|
7414
7340
|
}
|
|
7415
7341
|
});
|
|
7416
|
-
return [...
|
|
7342
|
+
return [...domain2];
|
|
7417
7343
|
}
|
|
7418
7344
|
};
|
|
7419
|
-
const setTagSearch = (0,
|
|
7345
|
+
const setTagSearch = (0, import_react24.useCallback)(
|
|
7420
7346
|
(updatedMap) => {
|
|
7421
7347
|
if (!updatedMap) return;
|
|
7422
7348
|
const tagsSearch = Object.entries(updatedMap).map(
|
|
@@ -7444,16 +7370,16 @@ var searchController = ({
|
|
|
7444
7370
|
const contexts = [];
|
|
7445
7371
|
let groupValues = [];
|
|
7446
7372
|
objValues?.forEach((objValue) => {
|
|
7447
|
-
const { context, value, active, groupIndex: groupIndex2, isDefault } = objValue;
|
|
7373
|
+
const { context: context2, value, active, groupIndex: groupIndex2, isDefault } = objValue;
|
|
7448
7374
|
const indexAppend = groupIndex2 != null ? groupIndex2 : viewData?.views?.search?.filters_by?.length ?? 0;
|
|
7449
7375
|
contexts.push(
|
|
7450
|
-
...Array.isArray(
|
|
7376
|
+
...Array.isArray(context2?.group_by) ? context2.group_by.map((item) => ({ group_by: item })) : [context2]
|
|
7451
7377
|
);
|
|
7452
7378
|
groupValues[indexAppend] = {
|
|
7453
7379
|
contexts: [
|
|
7454
|
-
...Array.isArray(
|
|
7380
|
+
...Array.isArray(context2?.group_by) ? context2.group_by.map((item) => ({
|
|
7455
7381
|
group_by: item
|
|
7456
|
-
})) : [
|
|
7382
|
+
})) : [context2]
|
|
7457
7383
|
],
|
|
7458
7384
|
strings: isDefault ? [value] : [...groupValues[indexAppend]?.strings ?? [], value]
|
|
7459
7385
|
};
|
|
@@ -7479,40 +7405,39 @@ var searchController = ({
|
|
|
7479
7405
|
},
|
|
7480
7406
|
[searchMap]
|
|
7481
7407
|
);
|
|
7482
|
-
(0,
|
|
7483
|
-
setSelectedTags(null);
|
|
7408
|
+
(0, import_react24.useEffect)(() => {
|
|
7484
7409
|
setTagSearch(searchMap);
|
|
7485
7410
|
}, [searchMap]);
|
|
7486
7411
|
const handleAddTagSearch = (tag) => {
|
|
7487
7412
|
const {
|
|
7488
|
-
domain,
|
|
7413
|
+
domain: domain2,
|
|
7489
7414
|
groupIndex,
|
|
7490
7415
|
value,
|
|
7491
7416
|
type,
|
|
7492
7417
|
title,
|
|
7493
|
-
context,
|
|
7418
|
+
context: context2,
|
|
7494
7419
|
active,
|
|
7495
7420
|
dataIndex
|
|
7496
7421
|
} = tag;
|
|
7497
|
-
const domainFormat = new
|
|
7422
|
+
const domainFormat = new import_utils14.domainHelper.Domain(domain2);
|
|
7498
7423
|
if (type === import_constants5.SearchType.FILTER) {
|
|
7499
7424
|
addSearchItems(`${import_constants5.SearchType.FILTER}_${groupIndex}`, {
|
|
7500
7425
|
...tag,
|
|
7501
|
-
domain:
|
|
7426
|
+
domain: domain2 ? domainFormat.toList(context2) : null
|
|
7502
7427
|
});
|
|
7503
7428
|
} else if (type === import_constants5.SearchType.SEARCH) {
|
|
7504
7429
|
addSearchItems(`${import_constants5.SearchType.SEARCH}_${String(dataIndex)}`, {
|
|
7505
7430
|
...tag,
|
|
7506
|
-
domain:
|
|
7507
|
-
...
|
|
7431
|
+
domain: domain2 ? domainFormat.toList({
|
|
7432
|
+
...context2,
|
|
7508
7433
|
self: value
|
|
7509
7434
|
}) : null
|
|
7510
7435
|
});
|
|
7511
7436
|
} else if (type === import_constants5.SearchType.GROUP) {
|
|
7512
7437
|
addSearchItems(`${import_constants5.SearchType.GROUP}`, {
|
|
7513
7438
|
...tag,
|
|
7514
|
-
domain:
|
|
7515
|
-
context,
|
|
7439
|
+
domain: domain2 ? domainFormat.toList({
|
|
7440
|
+
context: context2,
|
|
7516
7441
|
self: value
|
|
7517
7442
|
}) : null
|
|
7518
7443
|
});
|
|
@@ -7532,7 +7457,8 @@ var searchController = ({
|
|
|
7532
7457
|
removeSearchItems,
|
|
7533
7458
|
onSearchString: onChangeSearchInput,
|
|
7534
7459
|
handleAddTagSearch,
|
|
7535
|
-
domain: formatDomain()
|
|
7460
|
+
domain: formatDomain(),
|
|
7461
|
+
context: contextSearch
|
|
7536
7462
|
};
|
|
7537
7463
|
};
|
|
7538
7464
|
|
|
@@ -7611,7 +7537,6 @@ __reExport(index_exports, types_exports, module.exports);
|
|
|
7611
7537
|
useGetRowIds,
|
|
7612
7538
|
useListData,
|
|
7613
7539
|
useMenu,
|
|
7614
|
-
useMenuItem,
|
|
7615
7540
|
useProfile,
|
|
7616
7541
|
useSelectionState,
|
|
7617
7542
|
useStorageState,
|