@fctc/widget-logic 2.7.1 → 2.7.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/hooks.d.mts CHANGED
@@ -89,11 +89,10 @@ interface UseMenuReturn {
89
89
  declare const useUser: () => any;
90
90
  type useUserType = ReturnType<typeof useUser>;
91
91
 
92
- declare const useViewV2: ({ id, context, views, model, }: {
93
- id?: any;
92
+ declare const useViewV2: ({ action, context, aid, }: {
93
+ action: ActionResultType;
94
94
  context: any;
95
- views: any;
96
- model?: string;
95
+ aid?: any;
97
96
  }) => {
98
97
  context: any;
99
98
  data: ViewResponse;
package/dist/hooks.d.ts CHANGED
@@ -89,11 +89,10 @@ interface UseMenuReturn {
89
89
  declare const useUser: () => any;
90
90
  type useUserType = ReturnType<typeof useUser>;
91
91
 
92
- declare const useViewV2: ({ id, context, views, model, }: {
93
- id?: any;
92
+ declare const useViewV2: ({ action, context, aid, }: {
93
+ action: ActionResultType;
94
94
  context: any;
95
- views: any;
96
- model?: string;
95
+ aid?: any;
97
96
  }) => {
98
97
  context: any;
99
98
  data: ViewResponse;
package/dist/hooks.js CHANGED
@@ -114,7 +114,7 @@ var import_hooks2 = require("@fctc/interface-logic/hooks");
114
114
  var import_react8 = require("react");
115
115
 
116
116
  // src/hooks/core/use-menu.ts
117
- var import_react2 = require("react");
117
+ var import_react3 = require("react");
118
118
 
119
119
  // src/hooks/core/use-call-action.ts
120
120
  var import_react = require("react");
@@ -162,92 +162,6 @@ var useCallAction = () => {
162
162
  return [actionData, callAction];
163
163
  };
164
164
 
165
- // src/hooks/core/use-menu.ts
166
- var useMenu = ({
167
- context,
168
- specification
169
- }) => {
170
- const { env } = (0, provider_exports.useEnv)();
171
- const { useGetMenu: useGetMenu2 } = (0, provider_exports.useService)();
172
- const [action, callAction] = useCallAction();
173
- const menuData = useGetMenu2(
174
- context,
175
- specification,
176
- !!context && Object.keys(context).length > 0
177
- );
178
- const [menuId, setMenuId] = (0, import_react2.useState)(void 0);
179
- const configedIconData = (0, import_react2.useMemo)(() => {
180
- const data = menuData.data;
181
- return data?.map((item) => {
182
- return {
183
- ...item,
184
- child_id: item?.child_id?.map((child) => {
185
- return {
186
- ...child,
187
- url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + child.url_icon
188
- };
189
- }) ?? [],
190
- url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + item.url_icon
191
- };
192
- });
193
- }, [menuData.data, env?.envFile?.VITE_APP_DOMAIN]);
194
- const handleChangeMenu = async ({ menu }) => {
195
- const aidMenu = menu?.action?.id?.id;
196
- if (menu) {
197
- setMenuId(menu.id?.toString() ?? "");
198
- }
199
- if (aidMenu) {
200
- const actionResponse = await callAction({
201
- aid: Number(aidMenu)
202
- });
203
- return actionResponse;
204
- }
205
- };
206
- return {
207
- ...menuData,
208
- data: configedIconData,
209
- action: { handleChangeMenu },
210
- state: { menuId, action },
211
- context,
212
- isLoading: menuData.isLoading,
213
- isError: menuData.isError,
214
- error: menuData.error,
215
- refetch: menuData.refetch
216
- };
217
- };
218
-
219
- // src/hooks/core/use-detail.ts
220
- var import_react_query = require("@tanstack/react-query");
221
- var import_react3 = require("react");
222
- var useDetail = (sub) => {
223
- const { setUserInfo, env } = (0, provider_exports.useEnv)();
224
- const { useGetDetail: useGetDetail2 } = (0, provider_exports.useService)();
225
- const fetchGetDetail = useGetDetail2();
226
- const userDetailQuery = (0, import_react_query.useQuery)({
227
- queryKey: ["userDetailQuery", sub],
228
- queryFn: () => {
229
- return fetchGetDetail.mutateAsync({
230
- model: "res.users",
231
- ids: [sub],
232
- specification: { image_256: {} }
233
- });
234
- },
235
- enabled: !!sub
236
- });
237
- (0, import_react3.useEffect)(() => {
238
- if (userDetailQuery.data) {
239
- const userPicture = userDetailQuery.data;
240
- setUserInfo({ ...env?.user, image: userPicture?.[0]?.image_256 });
241
- }
242
- }, [userDetailQuery.isFetched]);
243
- return { ...userDetailQuery };
244
- };
245
-
246
- // src/hooks/core/use-profile.ts
247
- var import_react_query2 = require("@tanstack/react-query");
248
- var import_react5 = require("react");
249
- var import_react_i18next = require("react-i18next");
250
-
251
165
  // src/utils.ts
252
166
  var utils_exports = {};
253
167
  __export(utils_exports, {
@@ -269,7 +183,7 @@ var languages = [
269
183
  ];
270
184
 
271
185
  // src/utils/function.ts
272
- var import_react4 = require("react");
186
+ var import_react2 = require("react");
273
187
  var countSum = (data, field) => {
274
188
  if (!data || !field) return 0;
275
189
  return data.reduce(
@@ -390,7 +304,7 @@ var STORAGES = {
390
304
  USER_INFO: "USER_INFO"
391
305
  };
392
306
  function useAsyncState(initialValue = [true, null]) {
393
- return (0, import_react4.useReducer)(
307
+ return (0, import_react2.useReducer)(
394
308
  (_state, action = null) => [false, action],
395
309
  initialValue
396
310
  );
@@ -408,7 +322,7 @@ async function setStorageItemAsync(key, value) {
408
322
  }
409
323
  function useStorageState(key) {
410
324
  const [state, setState] = useAsyncState();
411
- (0, import_react4.useEffect)(() => {
325
+ (0, import_react2.useEffect)(() => {
412
326
  try {
413
327
  const storedValue = localStorage.getItem(key);
414
328
  setState(storedValue);
@@ -416,7 +330,7 @@ function useStorageState(key) {
416
330
  console.error("Local storage is unavailable:", e);
417
331
  }
418
332
  }, [key]);
419
- const setValue = (0, import_react4.useCallback)(
333
+ const setValue = (0, import_react2.useCallback)(
420
334
  (value) => {
421
335
  setState(value);
422
336
  setStorageItemAsync(key, value);
@@ -429,7 +343,91 @@ function useStorageState(key) {
429
343
  // src/utils.ts
430
344
  __reExport(utils_exports, require("@fctc/interface-logic/utils"));
431
345
 
346
+ // src/hooks/core/use-menu.ts
347
+ var useMenu = ({
348
+ context,
349
+ specification
350
+ }) => {
351
+ const { env } = (0, provider_exports.useEnv)();
352
+ const { useGetMenu: useGetMenu2 } = (0, provider_exports.useService)();
353
+ const [action, callAction] = useCallAction();
354
+ const menuData = useGetMenu2(
355
+ context,
356
+ specification,
357
+ !!context && !(0, utils_exports.isObjectEmpty)(context)
358
+ );
359
+ const [menuId, setMenuId] = (0, import_react3.useState)(void 0);
360
+ const configedIconData = (0, import_react3.useMemo)(() => {
361
+ const data = menuData.data;
362
+ return data?.map((item) => {
363
+ return {
364
+ ...item,
365
+ child_id: item?.child_id?.map((child) => {
366
+ return {
367
+ ...child,
368
+ url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + child.url_icon
369
+ };
370
+ }) ?? [],
371
+ url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + item.url_icon
372
+ };
373
+ });
374
+ }, [menuData.data, env?.envFile?.VITE_APP_DOMAIN]);
375
+ const handleChangeMenu = async ({ menu }) => {
376
+ const aidMenu = menu?.action?.id?.id;
377
+ if (menu) {
378
+ setMenuId(menu.id?.toString() ?? "");
379
+ }
380
+ if (aidMenu) {
381
+ const actionResponse = await callAction({
382
+ aid: Number(aidMenu)
383
+ });
384
+ return actionResponse;
385
+ }
386
+ };
387
+ return {
388
+ ...menuData,
389
+ data: configedIconData,
390
+ action: { handleChangeMenu },
391
+ state: { menuId, action },
392
+ context,
393
+ isLoading: menuData.isLoading,
394
+ isError: menuData.isError,
395
+ error: menuData.error,
396
+ refetch: menuData.refetch
397
+ };
398
+ };
399
+
400
+ // src/hooks/core/use-detail.ts
401
+ var import_react_query = require("@tanstack/react-query");
402
+ var import_react4 = require("react");
403
+ var useDetail = (sub) => {
404
+ const { setUserInfo, env } = (0, provider_exports.useEnv)();
405
+ const { useGetDetail: useGetDetail2 } = (0, provider_exports.useService)();
406
+ const fetchGetDetail = useGetDetail2();
407
+ const userDetailQuery = (0, import_react_query.useQuery)({
408
+ queryKey: ["userDetailQuery", sub],
409
+ queryFn: () => {
410
+ return fetchGetDetail.mutateAsync({
411
+ model: "res.users",
412
+ ids: [sub],
413
+ specification: { image_256: {} }
414
+ });
415
+ },
416
+ enabled: !!sub
417
+ });
418
+ (0, import_react4.useEffect)(() => {
419
+ if (userDetailQuery.data) {
420
+ const userPicture = userDetailQuery.data;
421
+ setUserInfo({ ...env?.user, image: userPicture?.[0]?.image_256 });
422
+ }
423
+ }, [userDetailQuery.isFetched]);
424
+ return { ...userDetailQuery };
425
+ };
426
+
432
427
  // src/hooks/core/use-profile.ts
428
+ var import_react_query2 = require("@tanstack/react-query");
429
+ var import_react5 = require("react");
430
+ var import_react_i18next = require("react-i18next");
433
431
  var useProfile = () => {
434
432
  const { setUid, setLang, setUserInfo, env } = (0, provider_exports.useEnv)();
435
433
  const { useGetProfile: useGetProfile2 } = (0, provider_exports.useService)();
@@ -477,21 +475,31 @@ var useUser = () => {
477
475
  // src/hooks/core/use-view-v2.ts
478
476
  var import_react6 = require("react");
479
477
  var useViewV2 = ({
480
- id,
478
+ action,
481
479
  context,
482
- views,
483
- model
480
+ aid
484
481
  }) => {
485
482
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
486
483
  const viewParams = (0, import_react6.useMemo)(() => {
487
- if (views || views.length === 0) return void 0;
484
+ if (!action || !action?.res_model) {
485
+ return void 0;
486
+ }
487
+ const actionResult = action;
488
488
  return {
489
- model,
490
- views,
489
+ model: String(actionResult?.res_model),
490
+ views: [
491
+ ...Array.isArray(actionResult?.views) ? actionResult?.views.map(
492
+ (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
493
+ ) : [],
494
+ [
495
+ Array.isArray(actionResult?.search_view_id) ? actionResult?.search_view_id[0] : actionResult?.search_view_id,
496
+ "search"
497
+ ]
498
+ ],
491
499
  context,
492
- id
500
+ id: isNaN(Number(aid)) ? action?.id : aid
493
501
  };
494
- }, [views]);
502
+ }, [action, context, aid]);
495
503
  const view = useGetView2({
496
504
  viewParams: viewParams || {},
497
505
  enabled: !!viewParams
@@ -591,22 +599,10 @@ var AppProvider = ({
591
599
  { ...(0, utils_exports.evalJSONContext)(action?.context) }
592
600
  ]);
593
601
  }, [menuContext, action?.context, env?.context?.lang]);
594
- const memoViews = (0, import_react8.useMemo)(() => {
595
- if (!action) return [];
596
- return [
597
- ...Array.isArray(action?.views) ? action.views.map(
598
- (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
599
- ) : [],
600
- [
601
- Array.isArray(action?.search_view_id) ? action.search_view_id[0] : action.search_view_id,
602
- "search"
603
- ]
604
- ];
605
- }, [action]);
606
602
  const view = useViewV2({
603
+ action,
607
604
  context: viewContext,
608
- views: memoViews,
609
- model: action?.res_model ? String(action.res_model) : void 0
605
+ aid
610
606
  });
611
607
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
612
608
  ReactContext.Provider,
@@ -731,7 +727,7 @@ var useGetSpecification = ({
731
727
 
732
728
  // src/hooks/core/use-list-data.ts
733
729
  var import_react14 = require("react");
734
- var import_utils4 = require("@fctc/interface-logic/utils");
730
+ var import_utils5 = require("@fctc/interface-logic/utils");
735
731
 
736
732
  // src/hooks/utils/use-click-outside.ts
737
733
  var import_react11 = require("react");
@@ -873,12 +869,12 @@ var useListData = ({
873
869
  if (!viewData || !action || !context) {
874
870
  return null;
875
871
  }
876
- const domainParse = type === "calendar" ? getDateRange(currentDate, mode) : action?.domain ? Array.isArray(action?.domain) ? [...action?.domain] : (0, import_utils4.evalJSONDomain)(action?.domain, context) : [];
872
+ const domainParse = type === "calendar" ? getDateRange(currentDate, mode) : action?.domain ? Array.isArray(action?.domain) ? [...action?.domain] : (0, import_utils5.evalJSONDomain)(action?.domain, context) : [];
877
873
  const limit = type === "calendar" ? 2500 : pageLimit;
878
874
  const offset = debouncedPage * pageLimit;
879
875
  const fields = type === "calendar" ? convertFieldsToArray(viewData?.views?.calendar?.fields) || [] : typeof groupByList === "object" ? groupByList?.fields : void 0;
880
876
  const groupby = typeof groupByList === "object" ? [groupByList?.contexts?.[0]?.group_by] : [];
881
- const sort = order ? order : viewData?.views?.list?.default_order ? (0, import_utils4.formatSortingString)(viewData?.views?.list?.default_order) : "";
877
+ const sort = order ? order : viewData?.views?.list?.default_order ? (0, import_utils5.formatSortingString)(viewData?.views?.list?.default_order) : "";
882
878
  return {
883
879
  model: action.res_model,
884
880
  specification,
@@ -906,7 +902,7 @@ var useListData = ({
906
902
  const list = useGetListData2(
907
903
  listDataProps,
908
904
  [listDataProps],
909
- !!listDataProps && !!specification && !(0, import_utils4.isObjectEmpty)(specification)
905
+ !!listDataProps && !!specification && !(0, import_utils5.isObjectEmpty)(specification)
910
906
  );
911
907
  return {
912
908
  ...list,
package/dist/hooks.mjs CHANGED
@@ -142,92 +142,6 @@ var useCallAction = () => {
142
142
  return [actionData, callAction];
143
143
  };
144
144
 
145
- // src/hooks/core/use-menu.ts
146
- var useMenu = ({
147
- context,
148
- specification
149
- }) => {
150
- const { env } = (0, provider_exports.useEnv)();
151
- const { useGetMenu: useGetMenu2 } = (0, provider_exports.useService)();
152
- const [action, callAction] = useCallAction();
153
- const menuData = useGetMenu2(
154
- context,
155
- specification,
156
- !!context && Object.keys(context).length > 0
157
- );
158
- const [menuId, setMenuId] = useState2(void 0);
159
- const configedIconData = useMemo(() => {
160
- const data = menuData.data;
161
- return data?.map((item) => {
162
- return {
163
- ...item,
164
- child_id: item?.child_id?.map((child) => {
165
- return {
166
- ...child,
167
- url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + child.url_icon
168
- };
169
- }) ?? [],
170
- url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + item.url_icon
171
- };
172
- });
173
- }, [menuData.data, env?.envFile?.VITE_APP_DOMAIN]);
174
- const handleChangeMenu = async ({ menu }) => {
175
- const aidMenu = menu?.action?.id?.id;
176
- if (menu) {
177
- setMenuId(menu.id?.toString() ?? "");
178
- }
179
- if (aidMenu) {
180
- const actionResponse = await callAction({
181
- aid: Number(aidMenu)
182
- });
183
- return actionResponse;
184
- }
185
- };
186
- return {
187
- ...menuData,
188
- data: configedIconData,
189
- action: { handleChangeMenu },
190
- state: { menuId, action },
191
- context,
192
- isLoading: menuData.isLoading,
193
- isError: menuData.isError,
194
- error: menuData.error,
195
- refetch: menuData.refetch
196
- };
197
- };
198
-
199
- // src/hooks/core/use-detail.ts
200
- import { useQuery } from "@tanstack/react-query";
201
- import { useEffect } from "react";
202
- var useDetail = (sub) => {
203
- const { setUserInfo, env } = (0, provider_exports.useEnv)();
204
- const { useGetDetail: useGetDetail2 } = (0, provider_exports.useService)();
205
- const fetchGetDetail = useGetDetail2();
206
- const userDetailQuery = useQuery({
207
- queryKey: ["userDetailQuery", sub],
208
- queryFn: () => {
209
- return fetchGetDetail.mutateAsync({
210
- model: "res.users",
211
- ids: [sub],
212
- specification: { image_256: {} }
213
- });
214
- },
215
- enabled: !!sub
216
- });
217
- useEffect(() => {
218
- if (userDetailQuery.data) {
219
- const userPicture = userDetailQuery.data;
220
- setUserInfo({ ...env?.user, image: userPicture?.[0]?.image_256 });
221
- }
222
- }, [userDetailQuery.isFetched]);
223
- return { ...userDetailQuery };
224
- };
225
-
226
- // src/hooks/core/use-profile.ts
227
- import { useQuery as useQuery2 } from "@tanstack/react-query";
228
- import { useEffect as useEffect3, useMemo as useMemo2 } from "react";
229
- import { useTranslation } from "react-i18next";
230
-
231
145
  // src/utils.ts
232
146
  var utils_exports = {};
233
147
  __export(utils_exports, {
@@ -249,7 +163,7 @@ var languages = [
249
163
  ];
250
164
 
251
165
  // src/utils/function.ts
252
- import { useCallback as useCallback2, useEffect as useEffect2, useReducer } from "react";
166
+ import { useCallback as useCallback2, useEffect, useReducer } from "react";
253
167
  var countSum = (data, field) => {
254
168
  if (!data || !field) return 0;
255
169
  return data.reduce(
@@ -388,7 +302,7 @@ async function setStorageItemAsync(key, value) {
388
302
  }
389
303
  function useStorageState(key) {
390
304
  const [state, setState] = useAsyncState();
391
- useEffect2(() => {
305
+ useEffect(() => {
392
306
  try {
393
307
  const storedValue = localStorage.getItem(key);
394
308
  setState(storedValue);
@@ -410,7 +324,91 @@ function useStorageState(key) {
410
324
  __reExport(utils_exports, utils_star);
411
325
  import * as utils_star from "@fctc/interface-logic/utils";
412
326
 
327
+ // src/hooks/core/use-menu.ts
328
+ var useMenu = ({
329
+ context,
330
+ specification
331
+ }) => {
332
+ const { env } = (0, provider_exports.useEnv)();
333
+ const { useGetMenu: useGetMenu2 } = (0, provider_exports.useService)();
334
+ const [action, callAction] = useCallAction();
335
+ const menuData = useGetMenu2(
336
+ context,
337
+ specification,
338
+ !!context && !(0, utils_exports.isObjectEmpty)(context)
339
+ );
340
+ const [menuId, setMenuId] = useState2(void 0);
341
+ const configedIconData = useMemo(() => {
342
+ const data = menuData.data;
343
+ return data?.map((item) => {
344
+ return {
345
+ ...item,
346
+ child_id: item?.child_id?.map((child) => {
347
+ return {
348
+ ...child,
349
+ url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + child.url_icon
350
+ };
351
+ }) ?? [],
352
+ url_icon: env?.envFile?.VITE_APP_DOMAIN + "/" + item.url_icon
353
+ };
354
+ });
355
+ }, [menuData.data, env?.envFile?.VITE_APP_DOMAIN]);
356
+ const handleChangeMenu = async ({ menu }) => {
357
+ const aidMenu = menu?.action?.id?.id;
358
+ if (menu) {
359
+ setMenuId(menu.id?.toString() ?? "");
360
+ }
361
+ if (aidMenu) {
362
+ const actionResponse = await callAction({
363
+ aid: Number(aidMenu)
364
+ });
365
+ return actionResponse;
366
+ }
367
+ };
368
+ return {
369
+ ...menuData,
370
+ data: configedIconData,
371
+ action: { handleChangeMenu },
372
+ state: { menuId, action },
373
+ context,
374
+ isLoading: menuData.isLoading,
375
+ isError: menuData.isError,
376
+ error: menuData.error,
377
+ refetch: menuData.refetch
378
+ };
379
+ };
380
+
381
+ // src/hooks/core/use-detail.ts
382
+ import { useQuery } from "@tanstack/react-query";
383
+ import { useEffect as useEffect2 } from "react";
384
+ var useDetail = (sub) => {
385
+ const { setUserInfo, env } = (0, provider_exports.useEnv)();
386
+ const { useGetDetail: useGetDetail2 } = (0, provider_exports.useService)();
387
+ const fetchGetDetail = useGetDetail2();
388
+ const userDetailQuery = useQuery({
389
+ queryKey: ["userDetailQuery", sub],
390
+ queryFn: () => {
391
+ return fetchGetDetail.mutateAsync({
392
+ model: "res.users",
393
+ ids: [sub],
394
+ specification: { image_256: {} }
395
+ });
396
+ },
397
+ enabled: !!sub
398
+ });
399
+ useEffect2(() => {
400
+ if (userDetailQuery.data) {
401
+ const userPicture = userDetailQuery.data;
402
+ setUserInfo({ ...env?.user, image: userPicture?.[0]?.image_256 });
403
+ }
404
+ }, [userDetailQuery.isFetched]);
405
+ return { ...userDetailQuery };
406
+ };
407
+
413
408
  // src/hooks/core/use-profile.ts
409
+ import { useQuery as useQuery2 } from "@tanstack/react-query";
410
+ import { useEffect as useEffect3, useMemo as useMemo2 } from "react";
411
+ import { useTranslation } from "react-i18next";
414
412
  var useProfile = () => {
415
413
  const { setUid, setLang, setUserInfo, env } = (0, provider_exports.useEnv)();
416
414
  const { useGetProfile: useGetProfile2 } = (0, provider_exports.useService)();
@@ -458,21 +456,31 @@ var useUser = () => {
458
456
  // src/hooks/core/use-view-v2.ts
459
457
  import { useMemo as useMemo3 } from "react";
460
458
  var useViewV2 = ({
461
- id,
459
+ action,
462
460
  context,
463
- views,
464
- model
461
+ aid
465
462
  }) => {
466
463
  const { useGetView: useGetView2 } = (0, provider_exports.useService)();
467
464
  const viewParams = useMemo3(() => {
468
- if (views || views.length === 0) return void 0;
465
+ if (!action || !action?.res_model) {
466
+ return void 0;
467
+ }
468
+ const actionResult = action;
469
469
  return {
470
- model,
471
- views,
470
+ model: String(actionResult?.res_model),
471
+ views: [
472
+ ...Array.isArray(actionResult?.views) ? actionResult?.views.map(
473
+ (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
474
+ ) : [],
475
+ [
476
+ Array.isArray(actionResult?.search_view_id) ? actionResult?.search_view_id[0] : actionResult?.search_view_id,
477
+ "search"
478
+ ]
479
+ ],
472
480
  context,
473
- id
481
+ id: isNaN(Number(aid)) ? action?.id : aid
474
482
  };
475
- }, [views]);
483
+ }, [action, context, aid]);
476
484
  const view = useGetView2({
477
485
  viewParams: viewParams || {},
478
486
  enabled: !!viewParams
@@ -572,22 +580,10 @@ var AppProvider = ({
572
580
  { ...(0, utils_exports.evalJSONContext)(action?.context) }
573
581
  ]);
574
582
  }, [menuContext, action?.context, env?.context?.lang]);
575
- const memoViews = useMemo5(() => {
576
- if (!action) return [];
577
- return [
578
- ...Array.isArray(action?.views) ? action.views.map(
579
- (view2) => view2[1] === "list" ? [view2[0], "list"] : view2
580
- ) : [],
581
- [
582
- Array.isArray(action?.search_view_id) ? action.search_view_id[0] : action.search_view_id,
583
- "search"
584
- ]
585
- ];
586
- }, [action]);
587
583
  const view = useViewV2({
584
+ action,
588
585
  context: viewContext,
589
- views: memoViews,
590
- model: action?.res_model ? String(action.res_model) : void 0
586
+ aid
591
587
  });
592
588
  return /* @__PURE__ */ jsx(
593
589
  ReactContext.Provider,
@@ -715,7 +711,7 @@ import { useMemo as useMemo7, useState as useState5 } from "react";
715
711
  import {
716
712
  evalJSONDomain,
717
713
  formatSortingString,
718
- isObjectEmpty as isObjectEmpty3
714
+ isObjectEmpty as isObjectEmpty4
719
715
  } from "@fctc/interface-logic/utils";
720
716
 
721
717
  // src/hooks/utils/use-click-outside.ts
@@ -891,7 +887,7 @@ var useListData = ({
891
887
  const list = useGetListData2(
892
888
  listDataProps,
893
889
  [listDataProps],
894
- !!listDataProps && !!specification && !isObjectEmpty3(specification)
890
+ !!listDataProps && !!specification && !isObjectEmpty4(specification)
895
891
  );
896
892
  return {
897
893
  ...list,