@fctc/widget-logic 2.2.2 → 2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +271 -153
- package/dist/index.mjs +264 -142
- package/dist/types.d.mts +0 -2
- package/dist/types.d.ts +0 -2
- package/dist/widget.d.mts +46 -49
- package/dist/widget.d.ts +46 -49
- package/dist/widget.js +271 -153
- package/dist/widget.mjs +263 -142
- package/package.json +96 -96
package/dist/widget.js
CHANGED
|
@@ -4049,6 +4049,7 @@ __export(widget_exports, {
|
|
|
4049
4049
|
priorityFieldController: () => priorityFieldController,
|
|
4050
4050
|
searchController: () => searchController,
|
|
4051
4051
|
statusDropdownController: () => statusDropdownController,
|
|
4052
|
+
tableBodyController: () => tableBodyController,
|
|
4052
4053
|
tableController: () => tableController,
|
|
4053
4054
|
tableGroupController: () => tableGroupController,
|
|
4054
4055
|
tableHeadController: () => tableHeadController
|
|
@@ -5014,7 +5015,6 @@ var many2oneFieldController = (props) => {
|
|
|
5014
5015
|
options: fieldOptions,
|
|
5015
5016
|
showDetail
|
|
5016
5017
|
} = props;
|
|
5017
|
-
const { env } = (0, provider_exports.useEnv)();
|
|
5018
5018
|
const [options, setOptions] = (0, import_react15.useState)([]);
|
|
5019
5019
|
const [inputValue, setInputValue] = (0, import_react15.useState)("");
|
|
5020
5020
|
const [debouncedInputValue] = useDebounce(inputValue, 1e3);
|
|
@@ -5024,14 +5024,15 @@ var many2oneFieldController = (props) => {
|
|
|
5024
5024
|
const [domainObject, setDomainObject] = (0, import_react15.useState)(null);
|
|
5025
5025
|
const actionData = sessionStorageUtils.getActionData();
|
|
5026
5026
|
const { menuList } = (0, store_exports.useAppSelector)(store_exports.selectNavbar);
|
|
5027
|
+
const { context } = (0, store_exports.useAppSelector)(store_exports.selectEnv);
|
|
5027
5028
|
const initValue = methods?.getValues(name);
|
|
5028
5029
|
const optionsObject = (0, utils_exports.evalJSONContext)(fieldOptions) || {};
|
|
5029
5030
|
const contextObject = {
|
|
5030
5031
|
...(0, utils_exports.evalJSONContext)(actionData?.context) || {},
|
|
5031
5032
|
...fieldContext,
|
|
5032
|
-
...
|
|
5033
|
+
...context
|
|
5033
5034
|
};
|
|
5034
|
-
const { useGetSelection:
|
|
5035
|
+
const { useGetSelection: useGetSelection3 } = (0, provider_exports.useService)();
|
|
5035
5036
|
const data = {
|
|
5036
5037
|
model: relation,
|
|
5037
5038
|
domain: domainObject,
|
|
@@ -5047,7 +5048,7 @@ var many2oneFieldController = (props) => {
|
|
|
5047
5048
|
data: dataOfSelection,
|
|
5048
5049
|
refetch,
|
|
5049
5050
|
isFetching
|
|
5050
|
-
} =
|
|
5051
|
+
} = useGetSelection3({
|
|
5051
5052
|
data,
|
|
5052
5053
|
queryKey,
|
|
5053
5054
|
enabled: false
|
|
@@ -5201,49 +5202,52 @@ var many2oneButtonController = (props) => {
|
|
|
5201
5202
|
|
|
5202
5203
|
// src/widget/basic/many2many-field/controller.ts
|
|
5203
5204
|
var import_react16 = require("react");
|
|
5205
|
+
var import_store8 = require("@fctc/interface-logic/store");
|
|
5204
5206
|
var import_utils7 = require("@fctc/interface-logic/utils");
|
|
5205
5207
|
var many2manyFieldController = (props) => {
|
|
5206
5208
|
const {
|
|
5207
5209
|
relation,
|
|
5208
5210
|
domain,
|
|
5209
5211
|
context,
|
|
5210
|
-
options,
|
|
5211
5212
|
tab,
|
|
5212
|
-
|
|
5213
|
+
model,
|
|
5214
|
+
aid,
|
|
5215
|
+
setSelectedRowKeys: setSelectedRowKeys4,
|
|
5216
|
+
fields,
|
|
5217
|
+
setFields,
|
|
5213
5218
|
groupByDomain,
|
|
5214
|
-
|
|
5215
|
-
|
|
5219
|
+
page,
|
|
5220
|
+
options,
|
|
5221
|
+
sessionStorageUtils
|
|
5216
5222
|
} = props;
|
|
5223
|
+
const appDispatch = (0, import_store8.useAppDispatch)();
|
|
5224
|
+
const actionData = sessionStorageUtils.getActionData();
|
|
5225
|
+
const [debouncedPage] = useDebounce(page, 500);
|
|
5226
|
+
const [order, setOrder] = (0, import_react16.useState)();
|
|
5227
|
+
const [isLoadedData, setIsLoadedData] = (0, import_react16.useState)(false);
|
|
5228
|
+
const [domainMany2Many, setDomainMany2Many] = (0, import_react16.useState)(domain);
|
|
5217
5229
|
const { env } = (0, provider_exports.useEnv)();
|
|
5218
5230
|
const { useGetView: useGetView2, useGetListData: useGetListData3, useGetFormView } = (0, provider_exports.useService)();
|
|
5219
|
-
const [order, setOrder] = (0, import_react16.useState)();
|
|
5220
|
-
const [page, setPage] = (0, import_react16.useState)(0);
|
|
5221
|
-
const [domainMany2Many, setDomainMany2Many] = (0, import_react16.useState)(null);
|
|
5222
|
-
const [debouncedPage] = useDebounce(page, 500);
|
|
5223
|
-
const contextObject = {
|
|
5224
|
-
...env.context,
|
|
5225
|
-
...context || {}
|
|
5226
|
-
};
|
|
5227
5231
|
const viewParams = {
|
|
5228
5232
|
model: relation,
|
|
5229
5233
|
views: [
|
|
5230
5234
|
[false, "list"],
|
|
5231
5235
|
[false, "search"]
|
|
5232
5236
|
],
|
|
5233
|
-
context
|
|
5237
|
+
context
|
|
5234
5238
|
};
|
|
5235
|
-
const { data: viewResponse } = useGetView2(viewParams,
|
|
5239
|
+
const { data: viewResponse } = useGetView2(viewParams, actionData);
|
|
5236
5240
|
const baseModel = (0, import_react16.useMemo)(
|
|
5237
5241
|
() => ({
|
|
5238
5242
|
name: String(relation),
|
|
5239
5243
|
view: viewResponse || {},
|
|
5240
|
-
actContext:
|
|
5244
|
+
actContext: context,
|
|
5241
5245
|
fields: [
|
|
5242
5246
|
...Object.values(viewResponse?.views?.list?.fields ?? {}),
|
|
5243
5247
|
...tab?.fields ? tab.fields : []
|
|
5244
5248
|
]
|
|
5245
5249
|
}),
|
|
5246
|
-
[
|
|
5250
|
+
[model, viewResponse]
|
|
5247
5251
|
);
|
|
5248
5252
|
const initModel = (0, hooks_exports.useModel)();
|
|
5249
5253
|
const modelInstance = (0, import_react16.useMemo)(() => {
|
|
@@ -5262,15 +5266,26 @@ var many2manyFieldController = (props) => {
|
|
|
5262
5266
|
const optionsObject = tab?.options ? (0, import_utils7.evalJSONContext)(tab?.options) : (options ? (0, import_utils7.evalJSONContext)(options) : {}) || {};
|
|
5263
5267
|
const fetchData = async () => {
|
|
5264
5268
|
try {
|
|
5265
|
-
|
|
5266
|
-
|
|
5267
|
-
|
|
5269
|
+
setDomainMany2Many(domain);
|
|
5270
|
+
appDispatch((0, import_store8.setFirstDomain)(domain));
|
|
5271
|
+
appDispatch((0, import_store8.setViewDataStore)(viewResponse));
|
|
5272
|
+
const modalData = viewResponse?.views?.list?.fields.map((field) => ({
|
|
5273
|
+
...viewResponse?.models?.[String(model)]?.[field?.name],
|
|
5274
|
+
...field
|
|
5275
|
+
}));
|
|
5276
|
+
if (!fields?.[`${aid}_${relation}_popupmany2many`] && modalData) {
|
|
5277
|
+
setFields({
|
|
5278
|
+
...fields,
|
|
5279
|
+
[`${aid}_${relation}_popupmany2many`]: modalData
|
|
5280
|
+
});
|
|
5281
|
+
}
|
|
5282
|
+
appDispatch((0, import_store8.setPage)(0));
|
|
5268
5283
|
} catch (err) {
|
|
5269
5284
|
console.log(err);
|
|
5270
5285
|
}
|
|
5271
5286
|
};
|
|
5272
5287
|
const queryKey = [
|
|
5273
|
-
`view-${relation}`,
|
|
5288
|
+
`view-${relation}-${aid}`,
|
|
5274
5289
|
specification,
|
|
5275
5290
|
domainMany2Many,
|
|
5276
5291
|
debouncedPage,
|
|
@@ -5283,16 +5298,16 @@ var many2manyFieldController = (props) => {
|
|
|
5283
5298
|
domain: domainMany2Many,
|
|
5284
5299
|
offset: debouncedPage * 10,
|
|
5285
5300
|
limit: 10,
|
|
5286
|
-
context
|
|
5301
|
+
context,
|
|
5287
5302
|
fields: groupByDomain?.fields,
|
|
5288
5303
|
groupby: [groupByDomain?.contexts[0]?.group_by],
|
|
5289
5304
|
sort: order ? order : default_order ? (0, import_utils7.formatSortingString)(default_order) : ""
|
|
5290
5305
|
};
|
|
5291
|
-
const enabled =
|
|
5306
|
+
const enabled = isLoadedData && !!specification && !!relation && !!domainMany2Many && !!viewResponse;
|
|
5292
5307
|
const {
|
|
5293
5308
|
data: dataResponse,
|
|
5294
|
-
isLoading,
|
|
5295
|
-
isFetched,
|
|
5309
|
+
isLoading: isDataLoading,
|
|
5310
|
+
isFetched: isDataResponseFetched,
|
|
5296
5311
|
isPlaceholderData
|
|
5297
5312
|
} = useGetListData3(data, queryKey, enabled);
|
|
5298
5313
|
(0, import_react16.useEffect)(() => {
|
|
@@ -5300,56 +5315,75 @@ var many2manyFieldController = (props) => {
|
|
|
5300
5315
|
fetchData();
|
|
5301
5316
|
}
|
|
5302
5317
|
return () => {
|
|
5303
|
-
|
|
5304
|
-
|
|
5318
|
+
appDispatch((0, import_store8.setGroupByDomain)(null));
|
|
5319
|
+
setFields((prevFields) => ({
|
|
5320
|
+
...prevFields,
|
|
5321
|
+
[`${aid}_${relation}_popupmany2many`]: null
|
|
5322
|
+
}));
|
|
5323
|
+
appDispatch((0, import_store8.setPage)(0));
|
|
5324
|
+
setSelectedRowKeys4([]);
|
|
5305
5325
|
setDomainMany2Many(null);
|
|
5326
|
+
setIsLoadedData(false);
|
|
5306
5327
|
};
|
|
5307
5328
|
}, [viewResponse]);
|
|
5308
|
-
const { rows, columns, typeTable
|
|
5329
|
+
const { rows, columns, typeTable } = tableController({
|
|
5309
5330
|
data: {
|
|
5310
|
-
fields: viewResponse?.views?.list?.fields,
|
|
5331
|
+
fields: fields?.[`${aid}_${relation}_popupmany2many`] || viewResponse?.views?.list?.fields,
|
|
5311
5332
|
records: dataResponse?.records ?? dataResponse?.groups,
|
|
5312
5333
|
dataModel: viewResponse?.models?.[String(relation)],
|
|
5313
|
-
context:
|
|
5334
|
+
context: { ...env.context, ...context },
|
|
5314
5335
|
typeTable: dataResponse?.groups ? "group" : "list"
|
|
5315
5336
|
}
|
|
5316
5337
|
});
|
|
5317
|
-
const
|
|
5318
|
-
|
|
5319
|
-
model: relation
|
|
5320
|
-
context
|
|
5321
|
-
|
|
5322
|
-
|
|
5323
|
-
|
|
5324
|
-
|
|
5325
|
-
|
|
5326
|
-
|
|
5338
|
+
const dataFormView = {
|
|
5339
|
+
id: null,
|
|
5340
|
+
model: relation,
|
|
5341
|
+
context
|
|
5342
|
+
};
|
|
5343
|
+
const {
|
|
5344
|
+
refetch,
|
|
5345
|
+
data: dataFormViewResponse,
|
|
5346
|
+
isSuccess
|
|
5347
|
+
} = useGetFormView({
|
|
5348
|
+
data: dataFormView,
|
|
5349
|
+
queryKey: [`form-view-action-${relation}`],
|
|
5350
|
+
enabled: false
|
|
5327
5351
|
});
|
|
5352
|
+
(0, import_react16.useEffect)(() => {
|
|
5353
|
+
if (isSuccess && dataFormViewResponse) {
|
|
5354
|
+
sessionStorage.setItem("actionData", JSON.stringify(dataFormViewResponse));
|
|
5355
|
+
window.location.href = `/form/menu?model=${relation}`;
|
|
5356
|
+
}
|
|
5357
|
+
}, [isSuccess]);
|
|
5358
|
+
(0, import_react16.useEffect)(() => {
|
|
5359
|
+
if (domainMany2Many && !isLoadedData) {
|
|
5360
|
+
setIsLoadedData(true);
|
|
5361
|
+
}
|
|
5362
|
+
}, [domainMany2Many]);
|
|
5328
5363
|
const handleCreateNewOnPage = async () => {
|
|
5364
|
+
try {
|
|
5365
|
+
refetch();
|
|
5366
|
+
} catch (error) {
|
|
5367
|
+
console.log(error);
|
|
5368
|
+
}
|
|
5329
5369
|
};
|
|
5330
5370
|
return {
|
|
5331
5371
|
handleCreateNewOnPage,
|
|
5332
5372
|
optionsObject,
|
|
5333
|
-
totalRows: dataResponse?.length ?? 0,
|
|
5334
5373
|
rows,
|
|
5335
5374
|
columns,
|
|
5336
|
-
onToggleColumnOptional,
|
|
5337
5375
|
typeTable,
|
|
5338
|
-
|
|
5339
|
-
|
|
5340
|
-
isPlaceholderData
|
|
5341
|
-
setPage,
|
|
5342
|
-
page,
|
|
5343
|
-
viewData: viewResponse,
|
|
5344
|
-
domain: domainMany2Many,
|
|
5345
|
-
setDomain: setDomainMany2Many,
|
|
5346
|
-
searchController: searchControllers
|
|
5376
|
+
isDataLoading,
|
|
5377
|
+
isDataResponseFetched,
|
|
5378
|
+
isPlaceholderData
|
|
5347
5379
|
};
|
|
5348
5380
|
};
|
|
5349
5381
|
|
|
5350
5382
|
// src/widget/basic/many2many-tags-field/controller.ts
|
|
5351
5383
|
var import_react17 = require("react");
|
|
5352
5384
|
var import_constants4 = require("@fctc/interface-logic/constants");
|
|
5385
|
+
var import_environment8 = require("@fctc/interface-logic/environment");
|
|
5386
|
+
var import_hooks15 = require("@fctc/interface-logic/hooks");
|
|
5353
5387
|
var import_utils8 = require("@fctc/interface-logic/utils");
|
|
5354
5388
|
var many2manyTagsController = (props) => {
|
|
5355
5389
|
const {
|
|
@@ -5361,8 +5395,7 @@ var many2manyTagsController = (props) => {
|
|
|
5361
5395
|
placeholderNoOption
|
|
5362
5396
|
} = props;
|
|
5363
5397
|
const isUser = relation === "res.users" || relation === "res.partner";
|
|
5364
|
-
const
|
|
5365
|
-
const { useGetSelection: useGetSelection2 } = (0, provider_exports.useService)();
|
|
5398
|
+
const env = (0, import_environment8.getEnv)();
|
|
5366
5399
|
const addtionalFields = optionsFields ? (0, import_utils8.evalJSONContext)(optionsFields) : null;
|
|
5367
5400
|
const domainObject = (0, import_react17.useMemo)(
|
|
5368
5401
|
() => (0, import_utils8.evalJSONDomain)(domain, JSON.parse(JSON.stringify(formValues || {}))),
|
|
@@ -5381,7 +5414,7 @@ var many2manyTagsController = (props) => {
|
|
|
5381
5414
|
enabled: true,
|
|
5382
5415
|
context: env.context
|
|
5383
5416
|
};
|
|
5384
|
-
const { data: dataOfSelection } =
|
|
5417
|
+
const { data: dataOfSelection } = (0, import_hooks15.useGetSelection)({
|
|
5385
5418
|
data,
|
|
5386
5419
|
queryKey: [`data_${relation}`, domainObject]
|
|
5387
5420
|
});
|
|
@@ -5401,6 +5434,7 @@ var many2manyTagsController = (props) => {
|
|
|
5401
5434
|
options,
|
|
5402
5435
|
customNoOptionsMessage,
|
|
5403
5436
|
tranfer,
|
|
5437
|
+
dataOfSelection,
|
|
5404
5438
|
isUser
|
|
5405
5439
|
};
|
|
5406
5440
|
};
|
|
@@ -5409,7 +5443,7 @@ var many2manyTagsController = (props) => {
|
|
|
5409
5443
|
var import_react18 = require("react");
|
|
5410
5444
|
var import_utils9 = require("@fctc/interface-logic/utils");
|
|
5411
5445
|
var durationController = (props) => {
|
|
5412
|
-
const { relation, domain, formValues, name, id, model, onRefetch
|
|
5446
|
+
const { relation, domain, formValues, name, id, model, onRefetch } = props;
|
|
5413
5447
|
const specification = {
|
|
5414
5448
|
id: 0,
|
|
5415
5449
|
name: "",
|
|
@@ -5433,11 +5467,7 @@ var durationController = (props) => {
|
|
|
5433
5467
|
},
|
|
5434
5468
|
sort: ""
|
|
5435
5469
|
};
|
|
5436
|
-
const { data: dataResponse } = useGetListData3(
|
|
5437
|
-
listDataProps,
|
|
5438
|
-
queryKey,
|
|
5439
|
-
enabled
|
|
5440
|
-
);
|
|
5470
|
+
const { data: dataResponse } = useGetListData3(listDataProps, queryKey);
|
|
5441
5471
|
const { mutate: fetchChangeStatus } = useChangeStatus();
|
|
5442
5472
|
const handleClick = async (stage_id) => {
|
|
5443
5473
|
setDisabled(true);
|
|
@@ -5473,28 +5503,41 @@ var durationController = (props) => {
|
|
|
5473
5503
|
};
|
|
5474
5504
|
|
|
5475
5505
|
// src/widget/basic/priority-field/controller.ts
|
|
5506
|
+
var import_hooks16 = require("@fctc/interface-logic/hooks");
|
|
5476
5507
|
var import_utils10 = require("@fctc/interface-logic/utils");
|
|
5477
5508
|
var priorityFieldController = (props) => {
|
|
5478
|
-
const {
|
|
5509
|
+
const {
|
|
5510
|
+
value,
|
|
5511
|
+
isForm,
|
|
5512
|
+
name,
|
|
5513
|
+
methods,
|
|
5514
|
+
onChange,
|
|
5515
|
+
model,
|
|
5516
|
+
selection,
|
|
5517
|
+
id,
|
|
5518
|
+
actionData,
|
|
5519
|
+
viewData,
|
|
5520
|
+
context
|
|
5521
|
+
} = props;
|
|
5479
5522
|
const _context = { ...(0, import_utils10.evalJSONContext)(actionData?.context) };
|
|
5480
5523
|
const contextObject = { ...context, ..._context };
|
|
5481
|
-
const
|
|
5482
|
-
const
|
|
5524
|
+
const defaultPriority = parseInt(value) + 1;
|
|
5525
|
+
const label = viewData?.models?.[model]?.[name ?? ""]?.string ?? name;
|
|
5526
|
+
const { mutateAsync: fetchSave } = (0, import_hooks16.useSave)();
|
|
5483
5527
|
const savePriorities = async ({
|
|
5484
|
-
value,
|
|
5528
|
+
value: value2,
|
|
5485
5529
|
resetPriority
|
|
5486
5530
|
}) => {
|
|
5487
|
-
const priorityValue =
|
|
5531
|
+
const priorityValue = value2 <= 0 ? 0 : value2 - 1;
|
|
5488
5532
|
try {
|
|
5489
5533
|
fetchSave({
|
|
5490
|
-
ids:
|
|
5491
|
-
data: { [
|
|
5492
|
-
model:
|
|
5493
|
-
context: contextObject
|
|
5494
|
-
specification
|
|
5534
|
+
ids: id ? [id] : [],
|
|
5535
|
+
data: { [name ?? ""]: String(priorityValue) },
|
|
5536
|
+
model: model ?? "",
|
|
5537
|
+
context: contextObject
|
|
5495
5538
|
});
|
|
5496
5539
|
if (typeof onChange === "function") {
|
|
5497
|
-
onChange(
|
|
5540
|
+
onChange(name ?? "", String(priorityValue));
|
|
5498
5541
|
}
|
|
5499
5542
|
} catch (error) {
|
|
5500
5543
|
if (resetPriority) {
|
|
@@ -5503,7 +5546,14 @@ var priorityFieldController = (props) => {
|
|
|
5503
5546
|
}
|
|
5504
5547
|
};
|
|
5505
5548
|
return {
|
|
5506
|
-
|
|
5549
|
+
selection,
|
|
5550
|
+
isForm,
|
|
5551
|
+
methods,
|
|
5552
|
+
defaultPriority,
|
|
5553
|
+
savePriorities,
|
|
5554
|
+
label,
|
|
5555
|
+
id,
|
|
5556
|
+
onChange
|
|
5507
5557
|
};
|
|
5508
5558
|
};
|
|
5509
5559
|
|
|
@@ -6466,11 +6516,11 @@ var import_utils12 = require("@fctc/interface-logic/utils");
|
|
|
6466
6516
|
var colorFieldController = (props) => {
|
|
6467
6517
|
const { value, isForm, name, formValues, idForm, model, actionData } = props;
|
|
6468
6518
|
const { env } = (0, provider_exports.useEnv)();
|
|
6469
|
-
const { useSave:
|
|
6519
|
+
const { useSave: useSave3 } = (0, provider_exports.useService)();
|
|
6470
6520
|
const _context = { ...(0, import_utils12.evalJSONContext)(actionData?.context) || {} };
|
|
6471
6521
|
const contextObject = { ...env.context, ..._context };
|
|
6472
6522
|
const idDefault = isForm ? idForm : formValues?.id;
|
|
6473
|
-
const { mutate: onSave } =
|
|
6523
|
+
const { mutate: onSave } = useSave3();
|
|
6474
6524
|
const savePickColor = async (colorObject) => {
|
|
6475
6525
|
const { id } = colorObject;
|
|
6476
6526
|
if (value === id) return;
|
|
@@ -6592,36 +6642,103 @@ var binaryFieldController = (props) => {
|
|
|
6592
6642
|
};
|
|
6593
6643
|
};
|
|
6594
6644
|
|
|
6645
|
+
// src/widget/advance/table/table-body/controller.ts
|
|
6646
|
+
var import_store9 = require("@fctc/interface-logic/store");
|
|
6647
|
+
var import_react22 = require("react");
|
|
6648
|
+
var tableBodyController = (props) => {
|
|
6649
|
+
const {
|
|
6650
|
+
checkedAll,
|
|
6651
|
+
checkboxRef,
|
|
6652
|
+
setIsAutoSelect,
|
|
6653
|
+
selectedRowKeys,
|
|
6654
|
+
row,
|
|
6655
|
+
isAutoSelect,
|
|
6656
|
+
selectedRowKeysRef,
|
|
6657
|
+
onClickRow
|
|
6658
|
+
} = props;
|
|
6659
|
+
const appDispatch = (0, import_store9.useAppDispatch)();
|
|
6660
|
+
const checked = (0, import_react22.useMemo)(() => {
|
|
6661
|
+
if (!row?.id) return false;
|
|
6662
|
+
if (selectedRowKeys?.includes(row.id)) {
|
|
6663
|
+
return true;
|
|
6664
|
+
}
|
|
6665
|
+
return checkedAll;
|
|
6666
|
+
}, [row?.id, selectedRowKeys, checkedAll]);
|
|
6667
|
+
const handleCheckBoxSingle = (event) => {
|
|
6668
|
+
event.stopPropagation();
|
|
6669
|
+
if (checkedAll) {
|
|
6670
|
+
checkboxRef.current = "uncheck";
|
|
6671
|
+
setIsAutoSelect(true);
|
|
6672
|
+
return;
|
|
6673
|
+
}
|
|
6674
|
+
const newSelectedRowKeys = selectedRowKeys?.includes(row.id) ? selectedRowKeys?.filter((key) => key !== row.id) : [...selectedRowKeys, row.id];
|
|
6675
|
+
console.log("newSelectedRowKeys", newSelectedRowKeys);
|
|
6676
|
+
appDispatch((0, import_store9.setSelectedRowKeys)(newSelectedRowKeys));
|
|
6677
|
+
};
|
|
6678
|
+
const handleClickRow = (col, row2) => {
|
|
6679
|
+
onClickRow(col, row2);
|
|
6680
|
+
};
|
|
6681
|
+
(0, import_react22.useEffect)(() => {
|
|
6682
|
+
if (!row?.id) return;
|
|
6683
|
+
if (isAutoSelect) {
|
|
6684
|
+
if (checkboxRef?.current === "uncheck") {
|
|
6685
|
+
const filtered = selectedRowKeysRef.current.filter(
|
|
6686
|
+
(id) => id !== row.id
|
|
6687
|
+
);
|
|
6688
|
+
selectedRowKeysRef.current = filtered;
|
|
6689
|
+
appDispatch((0, import_store9.setSelectedRowKeys)(filtered));
|
|
6690
|
+
} else {
|
|
6691
|
+
const unique = Array.from(
|
|
6692
|
+
/* @__PURE__ */ new Set([...selectedRowKeysRef?.current, row?.id])
|
|
6693
|
+
);
|
|
6694
|
+
selectedRowKeysRef.current = unique;
|
|
6695
|
+
appDispatch((0, import_store9.setSelectedRowKeys)(unique));
|
|
6696
|
+
}
|
|
6697
|
+
}
|
|
6698
|
+
}, [isAutoSelect]);
|
|
6699
|
+
(0, import_react22.useEffect)(() => {
|
|
6700
|
+
if (!checkedAll) {
|
|
6701
|
+
checkboxRef.current = "enabled";
|
|
6702
|
+
false;
|
|
6703
|
+
}
|
|
6704
|
+
}, [checkedAll]);
|
|
6705
|
+
return {
|
|
6706
|
+
handleCheckBoxSingle,
|
|
6707
|
+
checked,
|
|
6708
|
+
handleClickRow
|
|
6709
|
+
};
|
|
6710
|
+
};
|
|
6711
|
+
|
|
6595
6712
|
// src/widget/advance/table/table-head/controller.ts
|
|
6596
|
-
var
|
|
6713
|
+
var import_store10 = require("@fctc/interface-logic/store");
|
|
6597
6714
|
var tableHeadController = (props) => {
|
|
6598
6715
|
const { typeTable, rows, selectedRowKeysRef } = props;
|
|
6599
|
-
const appDispatch = (0,
|
|
6600
|
-
const { groupByDomain } = (0,
|
|
6716
|
+
const appDispatch = (0, import_store10.useAppDispatch)();
|
|
6717
|
+
const { groupByDomain } = (0, import_store10.useAppSelector)(import_store10.selectSearch);
|
|
6601
6718
|
const handleCheckBoxAll = (event) => {
|
|
6602
6719
|
if (event?.target?.checked && typeTable === "list") {
|
|
6603
6720
|
const allRowKeys = Array.isArray(rows) ? rows.map((record) => record?.id) : [];
|
|
6604
|
-
appDispatch((0,
|
|
6721
|
+
appDispatch((0, import_store10.setSelectedRowKeys)(allRowKeys));
|
|
6605
6722
|
} else if (event?.target?.checked && typeTable === "group") {
|
|
6606
6723
|
const rowsIDs = document.querySelectorAll("tr[data-row-id]");
|
|
6607
6724
|
const ids = Array.from(rowsIDs)?.map(
|
|
6608
6725
|
(row) => Number(row?.getAttribute("data-row-id"))
|
|
6609
6726
|
);
|
|
6610
6727
|
if (ids?.length > 0) {
|
|
6611
|
-
appDispatch((0,
|
|
6728
|
+
appDispatch((0, import_store10.setSelectedRowKeys)(ids));
|
|
6612
6729
|
} else {
|
|
6613
6730
|
const sum = countSum(
|
|
6614
6731
|
rows,
|
|
6615
6732
|
typeof groupByDomain === "object" ? groupByDomain?.contexts?.[0]?.group_by : void 0
|
|
6616
6733
|
);
|
|
6617
6734
|
const keys = Array.from({ length: sum }, (_) => void 0);
|
|
6618
|
-
appDispatch((0,
|
|
6735
|
+
appDispatch((0, import_store10.setSelectedRowKeys)(keys));
|
|
6619
6736
|
}
|
|
6620
6737
|
if (selectedRowKeysRef) {
|
|
6621
6738
|
selectedRowKeysRef.current = [];
|
|
6622
6739
|
}
|
|
6623
6740
|
} else {
|
|
6624
|
-
appDispatch((0,
|
|
6741
|
+
appDispatch((0, import_store10.setSelectedRowKeys)([]));
|
|
6625
6742
|
}
|
|
6626
6743
|
};
|
|
6627
6744
|
return {
|
|
@@ -6630,12 +6747,12 @@ var tableHeadController = (props) => {
|
|
|
6630
6747
|
};
|
|
6631
6748
|
|
|
6632
6749
|
// src/widget/advance/table/table-view/controller.ts
|
|
6633
|
-
var
|
|
6634
|
-
var
|
|
6750
|
+
var import_react23 = require("react");
|
|
6751
|
+
var import_store11 = require("@fctc/interface-logic/store");
|
|
6635
6752
|
var import_utils14 = require("@fctc/interface-logic/utils");
|
|
6636
6753
|
var tableController = ({ data }) => {
|
|
6637
|
-
const [rows, setRows] = (0,
|
|
6638
|
-
const [columns, setColumns] = (0,
|
|
6754
|
+
const [rows, setRows] = (0, import_react23.useState)(data.records || []);
|
|
6755
|
+
const [columns, setColumns] = (0, import_react23.useState)([]);
|
|
6639
6756
|
const dataModelFields = data.fields?.map((field) => {
|
|
6640
6757
|
return {
|
|
6641
6758
|
...data.dataModel?.[field?.name],
|
|
@@ -6663,7 +6780,7 @@ var tableController = ({ data }) => {
|
|
|
6663
6780
|
return item.display_name ? { ...transformedItem, item: item.display_name } : transformedItem;
|
|
6664
6781
|
});
|
|
6665
6782
|
};
|
|
6666
|
-
(0,
|
|
6783
|
+
(0, import_react23.useEffect)(() => {
|
|
6667
6784
|
setRows(transformData(data.records || null));
|
|
6668
6785
|
}, [data.records]);
|
|
6669
6786
|
const handleGetColumns = () => {
|
|
@@ -6684,7 +6801,7 @@ var tableController = ({ data }) => {
|
|
|
6684
6801
|
}
|
|
6685
6802
|
return cols;
|
|
6686
6803
|
};
|
|
6687
|
-
(0,
|
|
6804
|
+
(0, import_react23.useEffect)(() => {
|
|
6688
6805
|
const columns2 = handleGetColumns();
|
|
6689
6806
|
setColumns(columns2);
|
|
6690
6807
|
}, [data.records]);
|
|
@@ -6709,9 +6826,9 @@ var tableController = ({ data }) => {
|
|
|
6709
6826
|
};
|
|
6710
6827
|
|
|
6711
6828
|
// src/widget/advance/table/table-group/controller.ts
|
|
6712
|
-
var
|
|
6713
|
-
var
|
|
6714
|
-
var
|
|
6829
|
+
var import_react24 = require("react");
|
|
6830
|
+
var import_hooks17 = require("@fctc/interface-logic/hooks");
|
|
6831
|
+
var import_store12 = require("@fctc/interface-logic/store");
|
|
6715
6832
|
|
|
6716
6833
|
// src/environment.ts
|
|
6717
6834
|
var environment_exports = {};
|
|
@@ -6738,18 +6855,18 @@ var tableGroupController = (props) => {
|
|
|
6738
6855
|
setIsAutoSelect,
|
|
6739
6856
|
selectedRowKeysRef
|
|
6740
6857
|
} = props;
|
|
6741
|
-
const [pageGroup, setPageGroup] = (0,
|
|
6742
|
-
const { groupByDomain, selectedTags } = (0,
|
|
6743
|
-
const { selectedRowKeys } = (0,
|
|
6744
|
-
const appDispatch = (0,
|
|
6745
|
-
const { toDataJS } = (0,
|
|
6858
|
+
const [pageGroup, setPageGroup] = (0, import_react24.useState)(0);
|
|
6859
|
+
const { groupByDomain, selectedTags } = (0, import_store12.useAppSelector)(import_store12.selectSearch);
|
|
6860
|
+
const { selectedRowKeys } = (0, import_store12.useAppSelector)(import_store12.selectList);
|
|
6861
|
+
const appDispatch = (0, import_store12.useAppDispatch)();
|
|
6862
|
+
const { toDataJS } = (0, import_hooks17.useOdooDataTransform)();
|
|
6746
6863
|
const initVal = toDataJS(row, viewData, model);
|
|
6747
|
-
const [isShowGroup, setIsShowGroup] = (0,
|
|
6748
|
-
const [colEmptyGroup, setColEmptyGroup] = (0,
|
|
6864
|
+
const [isShowGroup, setIsShowGroup] = (0, import_react24.useState)(false);
|
|
6865
|
+
const [colEmptyGroup, setColEmptyGroup] = (0, import_react24.useState)({
|
|
6749
6866
|
fromStart: 1,
|
|
6750
6867
|
fromEnd: 1
|
|
6751
6868
|
});
|
|
6752
|
-
const processedData = (0,
|
|
6869
|
+
const processedData = (0, import_react24.useMemo)(() => {
|
|
6753
6870
|
const calculateColSpanEmpty = () => {
|
|
6754
6871
|
const startIndex = columns.findIndex(
|
|
6755
6872
|
(col) => col.field.type === "monetary" && typeof row[col.key] === "number" || col.field.aggregator === "sum"
|
|
@@ -6764,7 +6881,7 @@ var tableGroupController = (props) => {
|
|
|
6764
6881
|
};
|
|
6765
6882
|
return calculateColSpanEmpty();
|
|
6766
6883
|
}, [columns, row]);
|
|
6767
|
-
const shouldFetchData = (0,
|
|
6884
|
+
const shouldFetchData = (0, import_react24.useMemo)(() => {
|
|
6768
6885
|
return !!isShowGroup;
|
|
6769
6886
|
}, [isShowGroup]);
|
|
6770
6887
|
const enabled = shouldFetchData && !!processedData;
|
|
@@ -6789,7 +6906,7 @@ var tableGroupController = (props) => {
|
|
|
6789
6906
|
isPlaceholderData,
|
|
6790
6907
|
isLoading,
|
|
6791
6908
|
isFetching
|
|
6792
|
-
} = (0,
|
|
6909
|
+
} = (0, import_hooks17.useGetListData)(listDataProps, queryKey, enabled);
|
|
6793
6910
|
const {
|
|
6794
6911
|
columns: columnsGroup,
|
|
6795
6912
|
rows: rowsGroup,
|
|
@@ -6804,7 +6921,7 @@ var tableGroupController = (props) => {
|
|
|
6804
6921
|
}
|
|
6805
6922
|
});
|
|
6806
6923
|
const leftPadding = level > 1 ? level * 8 + "px" : "0px";
|
|
6807
|
-
(0,
|
|
6924
|
+
(0, import_react24.useEffect)(() => {
|
|
6808
6925
|
if (isShowGroup && selectedTags?.length > 0) {
|
|
6809
6926
|
setIsShowGroup(false);
|
|
6810
6927
|
}
|
|
@@ -6827,24 +6944,24 @@ var tableGroupController = (props) => {
|
|
|
6827
6944
|
const filteredIds = selectedRowKeys.filter(
|
|
6828
6945
|
(id) => !ids.includes(id)
|
|
6829
6946
|
);
|
|
6830
|
-
appDispatch((0,
|
|
6947
|
+
appDispatch((0, import_store12.setSelectedRowKeys)(filteredIds));
|
|
6831
6948
|
} else if (!isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && checkedAll && !allIdsNull && isQueryFetched) {
|
|
6832
6949
|
const clonedKeys = [...selectedRowKeys];
|
|
6833
|
-
appDispatch((0,
|
|
6834
|
-
setTimeout(() => appDispatch((0,
|
|
6950
|
+
appDispatch((0, import_store12.setSelectedRowKeys)([...clonedKeys, -1]));
|
|
6951
|
+
setTimeout(() => appDispatch((0, import_store12.setSelectedRowKeys)(clonedKeys)), 500);
|
|
6835
6952
|
} else if (isShowGroup && selectedRowKeys?.length > 0 && typeTableGroup === "list" && !checkedAll && !allIdsNull) {
|
|
6836
6953
|
const filteredKeys = selectedRowKeys.filter((id) => id > -1);
|
|
6837
|
-
appDispatch((0,
|
|
6954
|
+
appDispatch((0, import_store12.setSelectedRowKeys)(filteredKeys));
|
|
6838
6955
|
}
|
|
6839
6956
|
toggleShowGroup();
|
|
6840
6957
|
};
|
|
6841
|
-
(0,
|
|
6958
|
+
(0, import_react24.useEffect)(() => {
|
|
6842
6959
|
if (!isQueryFetched || !rowsGroup || !checkedAll || allIdsNull || typeTableGroup === "group") {
|
|
6843
6960
|
return;
|
|
6844
6961
|
}
|
|
6845
6962
|
const clonedKeys = [...selectedRowKeys];
|
|
6846
|
-
(0,
|
|
6847
|
-
setTimeout(() => (0,
|
|
6963
|
+
(0, import_store12.setSelectedRowKeys)([...clonedKeys, -1]);
|
|
6964
|
+
setTimeout(() => (0, import_store12.setSelectedRowKeys)(clonedKeys), 500);
|
|
6848
6965
|
}, [isQueryFetched]);
|
|
6849
6966
|
return {
|
|
6850
6967
|
handleExpandChildGroup,
|
|
@@ -6881,24 +6998,23 @@ var tableGroupController = (props) => {
|
|
|
6881
6998
|
var import_constants5 = require("@fctc/interface-logic/constants");
|
|
6882
6999
|
var import_utils15 = require("@fctc/interface-logic/utils");
|
|
6883
7000
|
var import_moment2 = __toESM(require_moment());
|
|
6884
|
-
var
|
|
7001
|
+
var import_react25 = require("react");
|
|
6885
7002
|
var searchController = ({
|
|
6886
7003
|
viewData,
|
|
6887
|
-
|
|
6888
|
-
|
|
6889
|
-
|
|
6890
|
-
|
|
7004
|
+
actionData,
|
|
7005
|
+
fieldsList,
|
|
7006
|
+
contextSearch,
|
|
7007
|
+
setSearchMap,
|
|
7008
|
+
searchMap
|
|
6891
7009
|
}) => {
|
|
6892
|
-
const
|
|
6893
|
-
const [
|
|
6894
|
-
const [
|
|
6895
|
-
const [
|
|
6896
|
-
const [
|
|
6897
|
-
const [
|
|
6898
|
-
const
|
|
6899
|
-
const
|
|
6900
|
-
const contextSearch = { ...env.context, ...actionContext };
|
|
6901
|
-
const domainAction = domain ? Array.isArray(domain) ? [...domain] : (0, import_utils15.evalJSONDomain)(domain, contextSearch) : [];
|
|
7010
|
+
const [filterBy, setFilterBy] = (0, import_react25.useState)(null);
|
|
7011
|
+
const [searchBy, setSearchBy] = (0, import_react25.useState)(null);
|
|
7012
|
+
const [groupBy, setGroupBy] = (0, import_react25.useState)(null);
|
|
7013
|
+
const [selectedTags, setSelectedTags] = (0, import_react25.useState)(null);
|
|
7014
|
+
const [searchString, setSearchString] = (0, import_react25.useState)("");
|
|
7015
|
+
const domainAction = actionData?.domain ? Array.isArray(actionData?.domain) ? [...actionData?.domain] : (0, import_utils15.evalJSONDomain)(actionData?.domain, contextSearch) : [];
|
|
7016
|
+
const aid = actionData?.id;
|
|
7017
|
+
const model = actionData?.res_model;
|
|
6902
7018
|
const clearSearch = () => {
|
|
6903
7019
|
setFilterBy([]);
|
|
6904
7020
|
setGroupBy([]);
|
|
@@ -6942,9 +7058,10 @@ var searchController = ({
|
|
|
6942
7058
|
}
|
|
6943
7059
|
}
|
|
6944
7060
|
};
|
|
6945
|
-
(0,
|
|
7061
|
+
(0, import_react25.useEffect)(() => {
|
|
7062
|
+
clearSearch();
|
|
6946
7063
|
fetchData();
|
|
6947
|
-
}, [model, viewData]);
|
|
7064
|
+
}, [aid, model, viewData]);
|
|
6948
7065
|
const onChangeSearchInput = (search_string) => {
|
|
6949
7066
|
setSearchString(search_string);
|
|
6950
7067
|
};
|
|
@@ -6981,27 +7098,27 @@ var searchController = ({
|
|
|
6981
7098
|
};
|
|
6982
7099
|
const formatDomain = () => {
|
|
6983
7100
|
if (domainAction) {
|
|
6984
|
-
const
|
|
7101
|
+
const domain = [];
|
|
6985
7102
|
if (domainAction?.length > 0) {
|
|
6986
|
-
if (Object.keys(searchMap).
|
|
6987
|
-
|
|
7103
|
+
if (Object.keys(searchMap).length > 0) {
|
|
7104
|
+
domain.push("&");
|
|
6988
7105
|
}
|
|
6989
7106
|
domainAction.forEach((domainItem) => {
|
|
6990
|
-
|
|
7107
|
+
domain.push(domainItem);
|
|
6991
7108
|
});
|
|
6992
7109
|
}
|
|
6993
7110
|
Object.keys(searchMap).forEach((key, keyIndex, keys) => {
|
|
6994
7111
|
if (!key?.includes(import_constants5.SearchType.GROUP)) {
|
|
6995
7112
|
if (keys.length > 1 && keyIndex < keys.length - 1) {
|
|
6996
|
-
|
|
7113
|
+
domain.push("&");
|
|
6997
7114
|
}
|
|
6998
7115
|
const valuesOfKey = searchMap[key];
|
|
6999
7116
|
valuesOfKey.forEach((value, index) => {
|
|
7000
7117
|
if (index < valuesOfKey.length - 1) {
|
|
7001
|
-
|
|
7118
|
+
domain.push("|");
|
|
7002
7119
|
}
|
|
7003
7120
|
if (value.domain) {
|
|
7004
|
-
|
|
7121
|
+
domain.push(...value.domain);
|
|
7005
7122
|
return;
|
|
7006
7123
|
}
|
|
7007
7124
|
let valueDomainItem = value?.value;
|
|
@@ -7017,14 +7134,14 @@ var searchController = ({
|
|
|
7017
7134
|
}
|
|
7018
7135
|
}
|
|
7019
7136
|
const operator = value?.modelType === "date" || value?.modelType === "datetime" || value?.modelType === "boolean" || value?.modelType === "integer" ? value?.operator ?? "=" : value.operator ?? "ilike";
|
|
7020
|
-
|
|
7137
|
+
domain.push([value.name, operator, valueDomainItem]);
|
|
7021
7138
|
});
|
|
7022
7139
|
}
|
|
7023
7140
|
});
|
|
7024
|
-
return [...
|
|
7141
|
+
return [...domain];
|
|
7025
7142
|
}
|
|
7026
7143
|
};
|
|
7027
|
-
const setTagSearch = (0,
|
|
7144
|
+
const setTagSearch = (0, import_react25.useCallback)(
|
|
7028
7145
|
(updatedMap) => {
|
|
7029
7146
|
if (!updatedMap) return;
|
|
7030
7147
|
const tagsSearch = Object.entries(updatedMap).map(
|
|
@@ -7052,16 +7169,16 @@ var searchController = ({
|
|
|
7052
7169
|
const contexts = [];
|
|
7053
7170
|
let groupValues = [];
|
|
7054
7171
|
objValues?.forEach((objValue) => {
|
|
7055
|
-
const { context
|
|
7172
|
+
const { context, value, active, groupIndex: groupIndex2, isDefault } = objValue;
|
|
7056
7173
|
const indexAppend = groupIndex2 != null ? groupIndex2 : viewData?.views?.search?.filters_by?.length ?? 0;
|
|
7057
7174
|
contexts.push(
|
|
7058
|
-
...Array.isArray(
|
|
7175
|
+
...Array.isArray(context?.group_by) ? context.group_by.map((item) => ({ group_by: item })) : [context]
|
|
7059
7176
|
);
|
|
7060
7177
|
groupValues[indexAppend] = {
|
|
7061
7178
|
contexts: [
|
|
7062
|
-
...Array.isArray(
|
|
7179
|
+
...Array.isArray(context?.group_by) ? context.group_by.map((item) => ({
|
|
7063
7180
|
group_by: item
|
|
7064
|
-
})) : [
|
|
7181
|
+
})) : [context]
|
|
7065
7182
|
],
|
|
7066
7183
|
strings: isDefault ? [value] : [...groupValues[indexAppend]?.strings ?? [], value]
|
|
7067
7184
|
};
|
|
@@ -7087,39 +7204,40 @@ var searchController = ({
|
|
|
7087
7204
|
},
|
|
7088
7205
|
[searchMap]
|
|
7089
7206
|
);
|
|
7090
|
-
(0,
|
|
7207
|
+
(0, import_react25.useEffect)(() => {
|
|
7208
|
+
setSelectedTags(null);
|
|
7091
7209
|
setTagSearch(searchMap);
|
|
7092
7210
|
}, [searchMap]);
|
|
7093
7211
|
const handleAddTagSearch = (tag) => {
|
|
7094
7212
|
const {
|
|
7095
|
-
domain
|
|
7213
|
+
domain,
|
|
7096
7214
|
groupIndex,
|
|
7097
7215
|
value,
|
|
7098
7216
|
type,
|
|
7099
7217
|
title,
|
|
7100
|
-
context
|
|
7218
|
+
context,
|
|
7101
7219
|
active,
|
|
7102
7220
|
dataIndex
|
|
7103
7221
|
} = tag;
|
|
7104
|
-
const domainFormat = new import_utils15.domainHelper.Domain(
|
|
7222
|
+
const domainFormat = new import_utils15.domainHelper.Domain(domain);
|
|
7105
7223
|
if (type === import_constants5.SearchType.FILTER) {
|
|
7106
7224
|
addSearchItems(`${import_constants5.SearchType.FILTER}_${groupIndex}`, {
|
|
7107
7225
|
...tag,
|
|
7108
|
-
domain:
|
|
7226
|
+
domain: domain ? domainFormat.toList(context) : null
|
|
7109
7227
|
});
|
|
7110
7228
|
} else if (type === import_constants5.SearchType.SEARCH) {
|
|
7111
7229
|
addSearchItems(`${import_constants5.SearchType.SEARCH}_${String(dataIndex)}`, {
|
|
7112
7230
|
...tag,
|
|
7113
|
-
domain:
|
|
7114
|
-
...
|
|
7231
|
+
domain: domain ? domainFormat.toList({
|
|
7232
|
+
...context,
|
|
7115
7233
|
self: value
|
|
7116
7234
|
}) : null
|
|
7117
7235
|
});
|
|
7118
7236
|
} else if (type === import_constants5.SearchType.GROUP) {
|
|
7119
7237
|
addSearchItems(`${import_constants5.SearchType.GROUP}`, {
|
|
7120
7238
|
...tag,
|
|
7121
|
-
domain:
|
|
7122
|
-
context
|
|
7239
|
+
domain: domain ? domainFormat.toList({
|
|
7240
|
+
context,
|
|
7123
7241
|
self: value
|
|
7124
7242
|
}) : null
|
|
7125
7243
|
});
|
|
@@ -7139,8 +7257,7 @@ var searchController = ({
|
|
|
7139
7257
|
removeSearchItems,
|
|
7140
7258
|
onSearchString: onChangeSearchInput,
|
|
7141
7259
|
handleAddTagSearch,
|
|
7142
|
-
domain: formatDomain()
|
|
7143
|
-
context: contextSearch
|
|
7260
|
+
domain: formatDomain()
|
|
7144
7261
|
};
|
|
7145
7262
|
};
|
|
7146
7263
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -7159,6 +7276,7 @@ var searchController = ({
|
|
|
7159
7276
|
priorityFieldController,
|
|
7160
7277
|
searchController,
|
|
7161
7278
|
statusDropdownController,
|
|
7279
|
+
tableBodyController,
|
|
7162
7280
|
tableController,
|
|
7163
7281
|
tableGroupController,
|
|
7164
7282
|
tableHeadController
|