@fctc/interface-logic 3.3.0 → 3.3.2
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/constants.d.mts +2 -0
- package/dist/constants.d.ts +2 -0
- package/dist/constants.js +2 -0
- package/dist/constants.mjs +2 -0
- package/dist/hooks.d.mts +14 -2
- package/dist/hooks.d.ts +14 -2
- package/dist/hooks.js +206 -123
- package/dist/hooks.mjs +112 -31
- package/dist/provider.d.mts +4 -2
- package/dist/provider.d.ts +4 -2
- package/dist/provider.js +205 -124
- package/dist/provider.mjs +113 -32
- package/dist/services.d.mts +7 -1
- package/dist/services.d.ts +7 -1
- package/dist/services.js +105 -62
- package/dist/services.mjs +59 -16
- package/dist/types.d.mts +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/{view-type-xxw9OeSR.d.mts → view-type-LCI2KPYD.d.mts} +8 -1
- package/dist/{view-type-xxw9OeSR.d.ts → view-type-LCI2KPYD.d.ts} +8 -1
- package/package.json +90 -90
package/dist/provider.mjs
CHANGED
|
@@ -670,6 +670,8 @@ var UriConstants = /* @__PURE__ */ ((UriConstants2) => {
|
|
|
670
670
|
UriConstants2["UPLOAD_FILE_EXCEL_PATH"] = `/upload/file`;
|
|
671
671
|
UriConstants2["UPLOAD_FILE_PATH"] = `/web/binary/upload_attachment`;
|
|
672
672
|
UriConstants2["GET_MESSAGE"] = `/chatter/thread/messages`;
|
|
673
|
+
UriConstants2["GET_THREAD_DATA"] = `/mail/thread/data`;
|
|
674
|
+
UriConstants2["GET_THREAD_MESSAGES"] = `/mail/thread/messages`;
|
|
673
675
|
UriConstants2["SENT_MESSAGE"] = `/chatter/message/post`;
|
|
674
676
|
UriConstants2["UPLOAD_IMAGE"] = `/mail/attachment/upload`;
|
|
675
677
|
UriConstants2["DELETE_MESSAGE"] = `/chatter/message/update_content`;
|
|
@@ -3702,6 +3704,39 @@ function useFormService() {
|
|
|
3702
3704
|
},
|
|
3703
3705
|
[env]
|
|
3704
3706
|
);
|
|
3707
|
+
const getThreadData = useCallback5(
|
|
3708
|
+
async ({ data }) => {
|
|
3709
|
+
const jsonData = {
|
|
3710
|
+
thread_id: data?.thread_id,
|
|
3711
|
+
thread_model: data?.thread_model,
|
|
3712
|
+
limit: data?.limit,
|
|
3713
|
+
with_context: data?.with_context,
|
|
3714
|
+
request_list: data?.request_list
|
|
3715
|
+
};
|
|
3716
|
+
return env.requests.post("/mail/thread/data" /* GET_THREAD_DATA */, jsonData, {
|
|
3717
|
+
headers: {
|
|
3718
|
+
"Content-Type": "application/json"
|
|
3719
|
+
}
|
|
3720
|
+
});
|
|
3721
|
+
},
|
|
3722
|
+
[env]
|
|
3723
|
+
);
|
|
3724
|
+
const getThreadMessages = useCallback5(
|
|
3725
|
+
async ({ data }) => {
|
|
3726
|
+
const jsonData = {
|
|
3727
|
+
thread_id: data?.thread_id,
|
|
3728
|
+
thread_model: data?.thread_model,
|
|
3729
|
+
limit: data?.limit,
|
|
3730
|
+
with_context: data?.with_context
|
|
3731
|
+
};
|
|
3732
|
+
return env.requests.post("/mail/thread/messages" /* GET_THREAD_MESSAGES */, jsonData, {
|
|
3733
|
+
headers: {
|
|
3734
|
+
"Content-Type": "application/json"
|
|
3735
|
+
}
|
|
3736
|
+
});
|
|
3737
|
+
},
|
|
3738
|
+
[env]
|
|
3739
|
+
);
|
|
3705
3740
|
const sentComment = useCallback5(
|
|
3706
3741
|
async ({ data }) => {
|
|
3707
3742
|
const jsonData = {
|
|
@@ -3824,7 +3859,9 @@ function useFormService() {
|
|
|
3824
3859
|
uploadImage,
|
|
3825
3860
|
getFormView,
|
|
3826
3861
|
changeStatus,
|
|
3827
|
-
uploadFile
|
|
3862
|
+
uploadFile,
|
|
3863
|
+
getThreadMessages,
|
|
3864
|
+
getThreadData
|
|
3828
3865
|
};
|
|
3829
3866
|
}
|
|
3830
3867
|
|
|
@@ -6402,6 +6439,48 @@ var useUploadFile = () => {
|
|
|
6402
6439
|
};
|
|
6403
6440
|
var use_upload_file_default = useUploadFile;
|
|
6404
6441
|
|
|
6442
|
+
// src/hooks/form/use-get-thread-data.ts
|
|
6443
|
+
import { useQuery as useQuery6 } from "@tanstack/react-query";
|
|
6444
|
+
var useGetThreadData = ({
|
|
6445
|
+
data,
|
|
6446
|
+
queryKey,
|
|
6447
|
+
enabled
|
|
6448
|
+
}) => {
|
|
6449
|
+
const { getThreadData } = useFormService();
|
|
6450
|
+
return useQuery6({
|
|
6451
|
+
queryKey,
|
|
6452
|
+
queryFn: () => getThreadData({ data }).then((res) => {
|
|
6453
|
+
if (res) {
|
|
6454
|
+
return res;
|
|
6455
|
+
}
|
|
6456
|
+
}),
|
|
6457
|
+
enabled,
|
|
6458
|
+
refetchOnWindowFocus: false
|
|
6459
|
+
});
|
|
6460
|
+
};
|
|
6461
|
+
var use_get_thread_data_default = useGetThreadData;
|
|
6462
|
+
|
|
6463
|
+
// src/hooks/form/use-get-thread-messages.ts
|
|
6464
|
+
import { useQuery as useQuery7 } from "@tanstack/react-query";
|
|
6465
|
+
var useGetThreadMessages = ({
|
|
6466
|
+
data,
|
|
6467
|
+
queryKey,
|
|
6468
|
+
enabled
|
|
6469
|
+
}) => {
|
|
6470
|
+
const { getThreadMessages } = useFormService();
|
|
6471
|
+
return useQuery7({
|
|
6472
|
+
queryKey,
|
|
6473
|
+
queryFn: () => getThreadMessages({ data }).then((res) => {
|
|
6474
|
+
if (res) {
|
|
6475
|
+
return res;
|
|
6476
|
+
}
|
|
6477
|
+
}),
|
|
6478
|
+
enabled,
|
|
6479
|
+
refetchOnWindowFocus: false
|
|
6480
|
+
});
|
|
6481
|
+
};
|
|
6482
|
+
var use_get_thread_messages_default = useGetThreadMessages;
|
|
6483
|
+
|
|
6405
6484
|
// src/hooks/model/use-delete.ts
|
|
6406
6485
|
import { useMutation as useMutation28 } from "@tanstack/react-query";
|
|
6407
6486
|
var useDelete = () => {
|
|
@@ -6413,10 +6492,10 @@ var useDelete = () => {
|
|
|
6413
6492
|
var use_delete_default = useDelete;
|
|
6414
6493
|
|
|
6415
6494
|
// src/hooks/model/use-get-all.ts
|
|
6416
|
-
import { useQuery as
|
|
6495
|
+
import { useQuery as useQuery8 } from "@tanstack/react-query";
|
|
6417
6496
|
var useGetAll = ({ data, queryKey, viewResponse }) => {
|
|
6418
6497
|
const { getAll } = useModelService();
|
|
6419
|
-
return
|
|
6498
|
+
return useQuery8({
|
|
6420
6499
|
queryKey,
|
|
6421
6500
|
queryFn: () => getAll({ data }).then((res) => {
|
|
6422
6501
|
if (res) {
|
|
@@ -6430,10 +6509,10 @@ var useGetAll = ({ data, queryKey, viewResponse }) => {
|
|
|
6430
6509
|
var use_get_all_default = useGetAll;
|
|
6431
6510
|
|
|
6432
6511
|
// src/hooks/model/use-get-conversion-rate.ts
|
|
6433
|
-
import { useQuery as
|
|
6512
|
+
import { useQuery as useQuery9 } from "@tanstack/react-query";
|
|
6434
6513
|
var useGetConversionRate = () => {
|
|
6435
6514
|
const { getConversionRate } = useModelService();
|
|
6436
|
-
return
|
|
6515
|
+
return useQuery9({
|
|
6437
6516
|
queryKey: ["currency-rate"],
|
|
6438
6517
|
queryFn: () => getConversionRate().then((res) => {
|
|
6439
6518
|
if (res) {
|
|
@@ -6446,10 +6525,10 @@ var useGetConversionRate = () => {
|
|
|
6446
6525
|
var use_get_conversion_rate_default = useGetConversionRate;
|
|
6447
6526
|
|
|
6448
6527
|
// src/hooks/model/use-get-currency.ts
|
|
6449
|
-
import { useQuery as
|
|
6528
|
+
import { useQuery as useQuery10 } from "@tanstack/react-query";
|
|
6450
6529
|
var useGetCurrency = () => {
|
|
6451
6530
|
const { getCurrency } = useModelService();
|
|
6452
|
-
return
|
|
6531
|
+
return useQuery10({
|
|
6453
6532
|
queryKey: ["currency"],
|
|
6454
6533
|
queryFn: () => getCurrency().then((res) => {
|
|
6455
6534
|
if (res) {
|
|
@@ -6486,14 +6565,14 @@ var useGetDetail = () => {
|
|
|
6486
6565
|
var use_get_detail_default = useGetDetail;
|
|
6487
6566
|
|
|
6488
6567
|
// src/hooks/model/use-get-field-onchange.ts
|
|
6489
|
-
import { useQuery as
|
|
6568
|
+
import { useQuery as useQuery11 } from "@tanstack/react-query";
|
|
6490
6569
|
var useGetFieldOnChange = ({
|
|
6491
6570
|
model,
|
|
6492
6571
|
service,
|
|
6493
6572
|
xNode
|
|
6494
6573
|
}) => {
|
|
6495
6574
|
const { getListFieldsOnchange } = useModelService();
|
|
6496
|
-
return
|
|
6575
|
+
return useQuery11({
|
|
6497
6576
|
queryKey: [`field-onchange-${model}`, model],
|
|
6498
6577
|
queryFn: () => getListFieldsOnchange({
|
|
6499
6578
|
model,
|
|
@@ -6511,14 +6590,14 @@ var useGetFieldOnChange = ({
|
|
|
6511
6590
|
var use_get_field_onchange_default = useGetFieldOnChange;
|
|
6512
6591
|
|
|
6513
6592
|
// src/hooks/model/use-get-list-my-bank-account.ts
|
|
6514
|
-
import { useQuery as
|
|
6593
|
+
import { useQuery as useQuery12 } from "@tanstack/react-query";
|
|
6515
6594
|
var useGetListMyBankAccount = ({
|
|
6516
6595
|
domain,
|
|
6517
6596
|
spectification,
|
|
6518
6597
|
model
|
|
6519
6598
|
}) => {
|
|
6520
6599
|
const { getListMyBankAccount } = useModelService();
|
|
6521
|
-
return
|
|
6600
|
+
return useQuery12({
|
|
6522
6601
|
queryKey: ["bank-account", model, domain],
|
|
6523
6602
|
queryFn: () => getListMyBankAccount({
|
|
6524
6603
|
domain,
|
|
@@ -6803,7 +6882,7 @@ var useDuplicateRecord = () => {
|
|
|
6803
6882
|
var use_duplicate_record_default = useDuplicateRecord;
|
|
6804
6883
|
|
|
6805
6884
|
// src/hooks/view/use-get-action-detail.ts
|
|
6806
|
-
import { useQuery as
|
|
6885
|
+
import { useQuery as useQuery13 } from "@tanstack/react-query";
|
|
6807
6886
|
var useGetActionDetail = ({
|
|
6808
6887
|
aid,
|
|
6809
6888
|
context,
|
|
@@ -6818,7 +6897,7 @@ var useGetActionDetail = ({
|
|
|
6818
6897
|
model: model ?? "",
|
|
6819
6898
|
context
|
|
6820
6899
|
};
|
|
6821
|
-
return
|
|
6900
|
+
return useQuery13({
|
|
6822
6901
|
queryKey,
|
|
6823
6902
|
queryFn: async () => {
|
|
6824
6903
|
if (aid) {
|
|
@@ -6836,10 +6915,10 @@ var useGetActionDetail = ({
|
|
|
6836
6915
|
var use_get_action_detail_default = useGetActionDetail;
|
|
6837
6916
|
|
|
6838
6917
|
// src/hooks/view/use-get-calendar.ts
|
|
6839
|
-
import { useQuery as
|
|
6918
|
+
import { useQuery as useQuery14 } from "@tanstack/react-query";
|
|
6840
6919
|
var useGetCalendar = (listDataProps, queryKey, enabled) => {
|
|
6841
6920
|
const { getListCalendar } = useModelService();
|
|
6842
|
-
return
|
|
6921
|
+
return useQuery14({
|
|
6843
6922
|
queryKey,
|
|
6844
6923
|
queryFn: () => getListCalendar({ data: listDataProps }).then((res) => {
|
|
6845
6924
|
if (res) {
|
|
@@ -6855,13 +6934,13 @@ var useGetCalendar = (listDataProps, queryKey, enabled) => {
|
|
|
6855
6934
|
var use_get_calendar_default = useGetCalendar;
|
|
6856
6935
|
|
|
6857
6936
|
// src/hooks/view/use-get-groups.ts
|
|
6858
|
-
import { useQuery as
|
|
6937
|
+
import { useQuery as useQuery15 } from "@tanstack/react-query";
|
|
6859
6938
|
var useGetGroups = ({
|
|
6860
6939
|
model,
|
|
6861
6940
|
width_context
|
|
6862
6941
|
}) => {
|
|
6863
6942
|
const { getGroups } = useKanbanService();
|
|
6864
|
-
return
|
|
6943
|
+
return useQuery15({
|
|
6865
6944
|
queryKey: [model, width_context],
|
|
6866
6945
|
queryFn: () => getGroups({
|
|
6867
6946
|
model,
|
|
@@ -6878,10 +6957,10 @@ var useGetGroups = ({
|
|
|
6878
6957
|
var use_get_groups_default = useGetGroups;
|
|
6879
6958
|
|
|
6880
6959
|
// src/hooks/view/use-get-list-data.ts
|
|
6881
|
-
import { useQuery as
|
|
6960
|
+
import { useQuery as useQuery16 } from "@tanstack/react-query";
|
|
6882
6961
|
var useGetListData = (listDataProps, queryKey, enabled, service, xNode) => {
|
|
6883
6962
|
const { getAll } = useModelService();
|
|
6884
|
-
return
|
|
6963
|
+
return useQuery16({
|
|
6885
6964
|
queryKey,
|
|
6886
6965
|
queryFn: () => getAll({ data: listDataProps, service, xNode }).then((res) => {
|
|
6887
6966
|
if (res) {
|
|
@@ -6897,10 +6976,10 @@ var useGetListData = (listDataProps, queryKey, enabled, service, xNode) => {
|
|
|
6897
6976
|
var use_get_list_data_default = useGetListData;
|
|
6898
6977
|
|
|
6899
6978
|
// src/hooks/view/use-get-menu.ts
|
|
6900
|
-
import { useQuery as
|
|
6979
|
+
import { useQuery as useQuery17 } from "@tanstack/react-query";
|
|
6901
6980
|
var useGetMenu = (context, specification, enabled, domain, service) => {
|
|
6902
6981
|
const { getMenu } = useViewService();
|
|
6903
|
-
return
|
|
6982
|
+
return useQuery17({
|
|
6904
6983
|
queryKey: ["menus" /* MENU */, context],
|
|
6905
6984
|
queryFn: () => getMenu(context, specification, domain, service).then((res) => {
|
|
6906
6985
|
if (res && res?.records && res?.records?.length > 0) {
|
|
@@ -6928,7 +7007,7 @@ var useGetPrintReport = () => {
|
|
|
6928
7007
|
var use_get_print_report_default = useGetPrintReport;
|
|
6929
7008
|
|
|
6930
7009
|
// src/hooks/view/use-get-progress-bar.ts
|
|
6931
|
-
import { useQuery as
|
|
7010
|
+
import { useQuery as useQuery18 } from "@tanstack/react-query";
|
|
6932
7011
|
var useGetProGressBar = ({
|
|
6933
7012
|
field,
|
|
6934
7013
|
color,
|
|
@@ -6936,7 +7015,7 @@ var useGetProGressBar = ({
|
|
|
6936
7015
|
width_context
|
|
6937
7016
|
}) => {
|
|
6938
7017
|
const { getProgressBar } = useKanbanService();
|
|
6939
|
-
return
|
|
7018
|
+
return useQuery18({
|
|
6940
7019
|
queryKey: [],
|
|
6941
7020
|
queryFn: () => getProgressBar({
|
|
6942
7021
|
field,
|
|
@@ -6955,7 +7034,7 @@ var useGetProGressBar = ({
|
|
|
6955
7034
|
var use_get_progress_bar_default = useGetProGressBar;
|
|
6956
7035
|
|
|
6957
7036
|
// src/hooks/view/use-get-selection.ts
|
|
6958
|
-
import { useQuery as
|
|
7037
|
+
import { useQuery as useQuery19 } from "@tanstack/react-query";
|
|
6959
7038
|
var useGetSelection = ({
|
|
6960
7039
|
data,
|
|
6961
7040
|
queryKey,
|
|
@@ -6964,7 +7043,7 @@ var useGetSelection = ({
|
|
|
6964
7043
|
xNode
|
|
6965
7044
|
}) => {
|
|
6966
7045
|
const { getSelectionItem } = useViewService();
|
|
6967
|
-
return
|
|
7046
|
+
return useQuery19({
|
|
6968
7047
|
queryKey,
|
|
6969
7048
|
queryFn: () => getSelectionItem({ data, service, xNode }),
|
|
6970
7049
|
enabled,
|
|
@@ -6974,10 +7053,10 @@ var useGetSelection = ({
|
|
|
6974
7053
|
var use_get_selection_default = useGetSelection;
|
|
6975
7054
|
|
|
6976
7055
|
// src/hooks/view/use-get-view.ts
|
|
6977
|
-
import { useQuery as
|
|
7056
|
+
import { useQuery as useQuery20 } from "@tanstack/react-query";
|
|
6978
7057
|
var useGetView = ({ viewParams, enabled }) => {
|
|
6979
7058
|
const { getView } = useViewService();
|
|
6980
|
-
return
|
|
7059
|
+
return useQuery20({
|
|
6981
7060
|
queryKey: [
|
|
6982
7061
|
"get_view_by_action" /* GET_VIEW_BY_ACTION */,
|
|
6983
7062
|
viewParams?.model,
|
|
@@ -7016,10 +7095,10 @@ var useLoadAction = () => {
|
|
|
7016
7095
|
var use_load_action_default = useLoadAction;
|
|
7017
7096
|
|
|
7018
7097
|
// src/hooks/view/use-load-message.ts
|
|
7019
|
-
import { useQuery as
|
|
7098
|
+
import { useQuery as useQuery21 } from "@tanstack/react-query";
|
|
7020
7099
|
var useLoadMessage = () => {
|
|
7021
7100
|
const { loadMessages } = useViewService();
|
|
7022
|
-
return
|
|
7101
|
+
return useQuery21({
|
|
7023
7102
|
queryKey: [`load-message-failure`],
|
|
7024
7103
|
queryFn: () => loadMessages(),
|
|
7025
7104
|
refetchOnWindowFocus: false
|
|
@@ -7064,10 +7143,10 @@ var useRemoveRow = () => {
|
|
|
7064
7143
|
var use_remove_row_default = useRemoveRow;
|
|
7065
7144
|
|
|
7066
7145
|
// src/hooks/view/use-resequence.ts
|
|
7067
|
-
import { useQuery as
|
|
7146
|
+
import { useQuery as useQuery22 } from "@tanstack/react-query";
|
|
7068
7147
|
var useGetResequence = (model, resIds, context, offset) => {
|
|
7069
7148
|
const { getResequence } = useViewService();
|
|
7070
|
-
return
|
|
7149
|
+
return useQuery22({
|
|
7071
7150
|
queryKey: [],
|
|
7072
7151
|
queryFn: () => getResequence({
|
|
7073
7152
|
model,
|
|
@@ -7944,7 +8023,9 @@ var ServiceProvider = ({
|
|
|
7944
8023
|
useGetToken: use_get_token_default,
|
|
7945
8024
|
useGetPreparationDisplayData: useGetPreparaionDisplayData_default,
|
|
7946
8025
|
useChangeOrderPreparaionState: useChangeOrderPreparaionState_default,
|
|
7947
|
-
useUpdateOrderStatus: use_update_order_status_default
|
|
8026
|
+
useUpdateOrderStatus: use_update_order_status_default,
|
|
8027
|
+
useGetThreadData: use_get_thread_data_default,
|
|
8028
|
+
useGetThreadMessages: use_get_thread_messages_default
|
|
7948
8029
|
};
|
|
7949
8030
|
return /* @__PURE__ */ jsx6(ServiceContext.Provider, { value: services, children });
|
|
7950
8031
|
};
|
package/dist/services.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as ContextApi, L as LoginCredentialBody, R as ResetPasswordRequest, U as UpdatePasswordRequest, b as GetListParams, a as GetDetailParams, S as SaveParams, D as DeleteParams, O as OnChangeParams, V as ViewData, f as GetViewParams, c as GetSelectionType } from './view-type-
|
|
1
|
+
import { C as ContextApi, L as LoginCredentialBody, R as ResetPasswordRequest, U as UpdatePasswordRequest, T as TThreadData, b as GetListParams, a as GetDetailParams, S as SaveParams, D as DeleteParams, O as OnChangeParams, V as ViewData, f as GetViewParams, c as GetSelectionType } from './view-type-LCI2KPYD.mjs';
|
|
2
2
|
|
|
3
3
|
declare function useActionService(): {
|
|
4
4
|
loadAction: ({ idAction, context, service, xNode, }: {
|
|
@@ -181,6 +181,12 @@ declare function useFormService(): {
|
|
|
181
181
|
uploadFile: ({ formData }: {
|
|
182
182
|
formData: any;
|
|
183
183
|
}) => Promise<any>;
|
|
184
|
+
getThreadMessages: ({ data }: {
|
|
185
|
+
data: TThreadData;
|
|
186
|
+
}) => Promise<any>;
|
|
187
|
+
getThreadData: ({ data }: {
|
|
188
|
+
data: TThreadData;
|
|
189
|
+
}) => Promise<any>;
|
|
184
190
|
};
|
|
185
191
|
|
|
186
192
|
type TGetGroupsParams = {
|
package/dist/services.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as ContextApi, L as LoginCredentialBody, R as ResetPasswordRequest, U as UpdatePasswordRequest, b as GetListParams, a as GetDetailParams, S as SaveParams, D as DeleteParams, O as OnChangeParams, V as ViewData, f as GetViewParams, c as GetSelectionType } from './view-type-
|
|
1
|
+
import { C as ContextApi, L as LoginCredentialBody, R as ResetPasswordRequest, U as UpdatePasswordRequest, T as TThreadData, b as GetListParams, a as GetDetailParams, S as SaveParams, D as DeleteParams, O as OnChangeParams, V as ViewData, f as GetViewParams, c as GetSelectionType } from './view-type-LCI2KPYD.js';
|
|
2
2
|
|
|
3
3
|
declare function useActionService(): {
|
|
4
4
|
loadAction: ({ idAction, context, service, xNode, }: {
|
|
@@ -181,6 +181,12 @@ declare function useFormService(): {
|
|
|
181
181
|
uploadFile: ({ formData }: {
|
|
182
182
|
formData: any;
|
|
183
183
|
}) => Promise<any>;
|
|
184
|
+
getThreadMessages: ({ data }: {
|
|
185
|
+
data: TThreadData;
|
|
186
|
+
}) => Promise<any>;
|
|
187
|
+
getThreadData: ({ data }: {
|
|
188
|
+
data: TThreadData;
|
|
189
|
+
}) => Promise<any>;
|
|
184
190
|
};
|
|
185
191
|
|
|
186
192
|
type TGetGroupsParams = {
|