@fctc/interface-logic 5.2.5 → 5.2.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.
Files changed (41) hide show
  1. package/dist/{chunk-F2VAAEVB.mjs → chunk-6ARYI77N.mjs} +2 -2
  2. package/dist/chunk-6LSKTACC.js +687 -0
  3. package/dist/{chunk-ZDXEWQQD.mjs → chunk-ACSPOGTI.mjs} +5 -5
  4. package/dist/chunk-B432GFRR.mjs +606 -0
  5. package/dist/{chunk-HQVNK2EW.mjs → chunk-BPJZ3QRN.mjs} +771 -107
  6. package/dist/{chunk-FWBYTZIV.js → chunk-C5QQGBN4.js} +6 -6
  7. package/dist/{chunk-F4RE57FT.mjs → chunk-ICDQN2GL.mjs} +188 -133
  8. package/dist/{chunk-U4Q3MW45.js → chunk-JDXUTKMX.js} +800 -113
  9. package/dist/{chunk-CCTDGAMA.js → chunk-Q5YXX4OR.js} +11 -11
  10. package/dist/{chunk-U2COUTK5.js → chunk-TX2WZCYM.js} +201 -144
  11. package/dist/configs.js +4 -3
  12. package/dist/configs.mjs +3 -2
  13. package/dist/environment.d.mts +1 -1
  14. package/dist/environment.d.ts +1 -1
  15. package/dist/environment.js +7 -6
  16. package/dist/environment.mjs +4 -3
  17. package/dist/hooks.d.mts +7 -1
  18. package/dist/hooks.d.ts +7 -1
  19. package/dist/hooks.js +160 -155
  20. package/dist/hooks.mjs +4 -3
  21. package/dist/index.d.mts +10 -4
  22. package/dist/index.d.ts +10 -4
  23. package/dist/index.js +602 -205
  24. package/dist/index.mjs +5 -4
  25. package/dist/{local-storage-AbiOQTLK.d.mts → local-storage-BPvoMGYJ.d.mts} +1 -1
  26. package/dist/{local-storage-AbiOQTLK.d.ts → local-storage-BPvoMGYJ.d.ts} +1 -1
  27. package/dist/provider.d.mts +8 -3
  28. package/dist/provider.d.ts +8 -3
  29. package/dist/provider.js +17 -12
  30. package/dist/provider.mjs +4 -3
  31. package/dist/services.js +15 -14
  32. package/dist/services.mjs +4 -3
  33. package/dist/store.d.mts +382 -0
  34. package/dist/store.d.ts +382 -0
  35. package/dist/store.js +326 -0
  36. package/dist/store.mjs +1 -0
  37. package/dist/utils.d.mts +61 -33
  38. package/dist/utils.d.ts +61 -33
  39. package/dist/utils.js +95 -26
  40. package/dist/utils.mjs +2 -1
  41. package/package.json +28 -14
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkU4Q3MW45_js = require('./chunk-U4Q3MW45.js');
3
+ var chunkJDXUTKMX_js = require('./chunk-JDXUTKMX.js');
4
4
  var axios = require('axios');
5
5
 
6
6
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
@@ -12,8 +12,8 @@ function removeLanguages(acceptLang, removeList) {
12
12
  }
13
13
  var axiosClient = {
14
14
  init(config) {
15
- const localStorage = config?.localStorageUtils ?? chunkU4Q3MW45_js.localStorageUtils();
16
- const sessionStorage = config?.sessionStorageUtils ?? chunkU4Q3MW45_js.sessionStorageUtils;
15
+ const localStorage = config?.localStorageUtils ?? chunkJDXUTKMX_js.localStorageUtils();
16
+ const sessionStorage = config?.sessionStorageUtils ?? chunkJDXUTKMX_js.sessionStorageUtils;
17
17
  const db = config?.db;
18
18
  const database = config?.config?.database;
19
19
  const isSupabaseMode = config?.isSupaMode;
@@ -70,7 +70,7 @@ var axiosClient = {
70
70
  instance.interceptors.response.use(
71
71
  (response) => handleResponse(response),
72
72
  async (error) => {
73
- const handleError = async (err) => {
73
+ const handleError2 = async (err) => {
74
74
  if (!err.response) return err;
75
75
  const { data } = err.response;
76
76
  if (data && data.code === 400 && ["invalid_grant"].includes(data.data?.error)) {
@@ -87,7 +87,7 @@ var axiosClient = {
87
87
  failedQueue.push({ resolve, reject });
88
88
  }).then((newToken) => {
89
89
  originalRequest.headers["Authorization"] = "Bearer " + newToken;
90
- originalRequest.data = chunkU4Q3MW45_js.updateTokenParamInOriginalRequest(
90
+ originalRequest.data = chunkJDXUTKMX_js.updateTokenParamInOriginalRequest(
91
91
  originalRequest,
92
92
  newToken
93
93
  );
@@ -126,7 +126,7 @@ var axiosClient = {
126
126
  await localStorage.setRefreshToken(data.refresh_token);
127
127
  axios__default.default.defaults.headers.common["Authorization"] = "Bearer " + data.access_token;
128
128
  originalRequest.headers["Authorization"] = "Bearer " + data.access_token;
129
- originalRequest.data = chunkU4Q3MW45_js.updateTokenParamInOriginalRequest(
129
+ originalRequest.data = chunkJDXUTKMX_js.updateTokenParamInOriginalRequest(
130
130
  originalRequest,
131
131
  data.access_token
132
132
  );
@@ -150,7 +150,7 @@ var axiosClient = {
150
150
  });
151
151
  }
152
152
  }
153
- return Promise.reject(await handleError(error));
153
+ return Promise.reject(await handleError2(error));
154
154
  }
155
155
  );
156
156
  instance.interceptors.response.use(
@@ -158,7 +158,7 @@ var axiosClient = {
158
158
  return handleResponse(response);
159
159
  },
160
160
  async (error) => {
161
- const handleError = async (error2) => {
161
+ const handleError2 = async (error2) => {
162
162
  if (!error2.response) {
163
163
  return error2;
164
164
  }
@@ -177,7 +177,7 @@ var axiosClient = {
177
177
  failedQueue.push({ resolve, reject });
178
178
  }).then((token) => {
179
179
  originalRequest.headers["Authorization"] = "Bearer " + token;
180
- originalRequest.data = chunkU4Q3MW45_js.updateTokenParamInOriginalRequest(
180
+ originalRequest.data = chunkJDXUTKMX_js.updateTokenParamInOriginalRequest(
181
181
  originalRequest,
182
182
  token
183
183
  );
@@ -219,7 +219,7 @@ var axiosClient = {
219
219
  await localStorage.setRefreshToken(data.refresh_token);
220
220
  axios__default.default.defaults.headers.common["Authorization"] = "Bearer " + data.access_token;
221
221
  originalRequest.headers["Authorization"] = "Bearer " + data.access_token;
222
- originalRequest.data = chunkU4Q3MW45_js.updateTokenParamInOriginalRequest(
222
+ originalRequest.data = chunkJDXUTKMX_js.updateTokenParamInOriginalRequest(
223
223
  originalRequest,
224
224
  data.access_token
225
225
  );
@@ -246,7 +246,7 @@ var axiosClient = {
246
246
  });
247
247
  }
248
248
  }
249
- return Promise.reject(await handleError(error));
249
+ return Promise.reject(await handleError2(error));
250
250
  }
251
251
  );
252
252
  const handleResponse = (res) => {
@@ -1,12 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var chunkCCTDGAMA_js = require('./chunk-CCTDGAMA.js');
4
- var chunkU4Q3MW45_js = require('./chunk-U4Q3MW45.js');
3
+ var chunk6LSKTACC_js = require('./chunk-6LSKTACC.js');
4
+ var chunkQ5YXX4OR_js = require('./chunk-Q5YXX4OR.js');
5
+ var chunkJDXUTKMX_js = require('./chunk-JDXUTKMX.js');
5
6
  var chunkWTPKTZQC_js = require('./chunk-WTPKTZQC.js');
6
7
  var chunkCOC7NGXP_js = require('./chunk-COC7NGXP.js');
7
8
  var react = require('react');
8
9
  var reactQuery = require('@tanstack/react-query');
9
10
  var jsxRuntime = require('react/jsx-runtime');
11
+ var reactRedux = require('react-redux');
10
12
  var supabaseJs = require('@supabase/supabase-js');
11
13
 
12
14
  var ReactQueryProvider = ({ children }) => {
@@ -24,134 +26,12 @@ var ReactQueryProvider = ({ children }) => {
24
26
  );
25
27
  return /* @__PURE__ */ jsxRuntime.jsx(reactQuery.QueryClientProvider, { client: queryClient, children });
26
28
  };
27
- var MainProvider = ({ children }) => {
28
- return /* @__PURE__ */ jsxRuntime.jsx(ReactQueryProvider, { children });
29
+ var ReduxProvider = ({ children }) => {
30
+ return /* @__PURE__ */ jsxRuntime.jsx(reactRedux.Provider, { store: chunk6LSKTACC_js.envStore, children });
29
31
  };
30
- var initialEnvState = {
31
- env: null,
32
- baseUrl: "",
33
- requests: null,
34
- companies: [],
35
- user: {},
36
- config: null,
37
- envFile: null,
38
- defaultCompany: {
39
- id: null,
40
- logo: "",
41
- secondary_color: "",
42
- primary_color: "",
43
- secondary_logo: ""
44
- },
45
- context: {
46
- uid: null,
47
- lang: "vi_VN",
48
- tz: "Asia/Saigon"
49
- },
50
- excludeLanguages: [],
51
- isSupaMode: false
32
+ var MainProvider = ({ children }) => {
33
+ return /* @__PURE__ */ jsxRuntime.jsx(ReduxProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(ReactQueryProvider, { children }) });
52
34
  };
53
- var EnvContext = react.createContext(null);
54
- function EnvProvider({
55
- children,
56
- localStorageUtils: localStorageUtil = chunkU4Q3MW45_js.localStorageUtils(),
57
- sessionStorageUtils: sessionStorageUtil = chunkU4Q3MW45_js.sessionStorageUtils
58
- }) {
59
- const [env, setEnvState] = react.useState({
60
- ...initialEnvState,
61
- localStorageUtils: localStorageUtil,
62
- sessionStorageUtils: sessionStorageUtil
63
- });
64
- const setupEnv = react.useCallback(
65
- (envConfig) => {
66
- const updatedEnv = {
67
- ...env,
68
- ...envConfig,
69
- localStorageUtils: localStorageUtil,
70
- sessionStorageUtils: sessionStorageUtil
71
- };
72
- const requests = chunkCCTDGAMA_js.axiosClient.init(updatedEnv);
73
- setEnvState({ ...updatedEnv, requests });
74
- return updatedEnv;
75
- },
76
- [env, localStorageUtil, sessionStorageUtil]
77
- );
78
- const setUid = react.useCallback((uid) => {
79
- setEnvState((prev) => ({
80
- ...prev,
81
- context: { ...prev.context, uid }
82
- }));
83
- }, []);
84
- const setLang = react.useCallback((lang) => {
85
- setEnvState((prev) => ({
86
- ...prev,
87
- context: { ...prev.context, lang }
88
- }));
89
- }, []);
90
- const setAllowCompanies = react.useCallback((allowed_company_ids) => {
91
- setEnvState((prev) => ({
92
- ...prev,
93
- context: { ...prev.context, allowed_company_ids }
94
- }));
95
- }, []);
96
- const setCompanies = react.useCallback((companies) => {
97
- setEnvState((prev) => ({
98
- ...prev,
99
- companies
100
- }));
101
- }, []);
102
- const setDefaultCompany = react.useCallback(
103
- (defaultCompany) => {
104
- setEnvState((prev) => ({
105
- ...prev,
106
- defaultCompany
107
- }));
108
- },
109
- []
110
- );
111
- const setUserInfo = react.useCallback((user) => {
112
- setEnvState((prev) => ({
113
- ...prev,
114
- user
115
- }));
116
- }, []);
117
- const setConfig = react.useCallback((config) => {
118
- setEnvState((prev) => ({
119
- ...prev,
120
- config
121
- }));
122
- }, []);
123
- const setEnvFile = react.useCallback((envFile) => {
124
- setEnvState((prev) => ({
125
- ...prev,
126
- envFile
127
- }));
128
- }, []);
129
- return /* @__PURE__ */ jsxRuntime.jsx(
130
- EnvContext.Provider,
131
- {
132
- value: {
133
- env,
134
- setupEnv,
135
- setUid,
136
- setLang,
137
- setAllowCompanies,
138
- setCompanies,
139
- setDefaultCompany,
140
- setUserInfo,
141
- setConfig,
142
- setEnvFile
143
- },
144
- children
145
- }
146
- );
147
- }
148
- function useEnv() {
149
- const context = react.useContext(EnvContext);
150
- if (!context) {
151
- throw new Error("useEnv must be used within an EnvProvider");
152
- }
153
- return context;
154
- }
155
35
  function useActionService() {
156
36
  const { env } = useEnv();
157
37
  const loadAction = react.useCallback(
@@ -166,7 +46,7 @@ function useActionService() {
166
46
  action_id: idAction,
167
47
  with_context: { ...context }
168
48
  };
169
- const url = searchParams ? `${"/load_action" /* LOAD_ACTION */}?${chunkU4Q3MW45_js.toQueryString(searchParams)}` : "/load_action" /* LOAD_ACTION */;
49
+ const url = searchParams ? `${"/load_action" /* LOAD_ACTION */}?${chunkJDXUTKMX_js.toQueryString(searchParams)}` : "/load_action" /* LOAD_ACTION */;
170
50
  return env.requests.post(
171
51
  url,
172
52
  jsonData,
@@ -291,7 +171,7 @@ function useActionService() {
291
171
  file_response: true,
292
172
  db
293
173
  };
294
- const queryString = chunkU4Q3MW45_js.toQueryString(jsonData);
174
+ const queryString = chunkJDXUTKMX_js.toQueryString(jsonData);
295
175
  const urlWithParams = `${"/report" /* REPORT_PATH */}?${queryString}`;
296
176
  return env.requests.get(urlWithParams, {
297
177
  headers: { "Content-Type": "application/json" },
@@ -312,7 +192,7 @@ function useActionService() {
312
192
  action_id: idAction,
313
193
  with_context: { ...context }
314
194
  };
315
- const url = searchParams ? `${"/run_action" /* RUN_ACTION_PATH */}?${chunkU4Q3MW45_js.toQueryString(searchParams)}` : "/run_action" /* RUN_ACTION_PATH */;
195
+ const url = searchParams ? `${"/run_action" /* RUN_ACTION_PATH */}?${chunkJDXUTKMX_js.toQueryString(searchParams)}` : "/run_action" /* RUN_ACTION_PATH */;
316
196
  return env.requests.post(
317
197
  url,
318
198
  jsonData,
@@ -1363,7 +1243,7 @@ function useModelService() {
1363
1243
  ...jsonReadGroup
1364
1244
  }
1365
1245
  };
1366
- const url = searchParams ? `${"/call" /* CALL_PATH */}?${chunkU4Q3MW45_js.toQueryString(searchParams)}` : "/call" /* CALL_PATH */;
1246
+ const url = searchParams ? `${"/call" /* CALL_PATH */}?${chunkJDXUTKMX_js.toQueryString(searchParams)}` : "/call" /* CALL_PATH */;
1367
1247
  return env.requests.post(
1368
1248
  url,
1369
1249
  jsonData,
@@ -1765,7 +1645,7 @@ function useViewService() {
1765
1645
  },
1766
1646
  with_context: context
1767
1647
  };
1768
- const url = searchParams ? `${"/call" /* CALL_PATH */}?${chunkU4Q3MW45_js.toQueryString(searchParams)}` : "/call" /* CALL_PATH */;
1648
+ const url = searchParams ? `${"/call" /* CALL_PATH */}?${chunkJDXUTKMX_js.toQueryString(searchParams)}` : "/call" /* CALL_PATH */;
1769
1649
  return env?.requests?.post(
1770
1650
  url,
1771
1651
  jsonDataView,
@@ -2727,7 +2607,7 @@ var getListService = (env) => {
2727
2607
  const jsonData = {
2728
2608
  model,
2729
2609
  method: "web_search_read" /* WEB_SEARCH_READ */,
2730
- kwargs: chunkU4Q3MW45_js.cleanObject({
2610
+ kwargs: chunkJDXUTKMX_js.cleanObject({
2731
2611
  domain,
2732
2612
  offset,
2733
2613
  limit,
@@ -2929,7 +2809,7 @@ var getProductImageService = (env) => {
2929
2809
  offset,
2930
2810
  domain
2931
2811
  };
2932
- const url = searchParams ? `${"/search_read" /* SEARCH_READ */}?${chunkU4Q3MW45_js.toQueryString(searchParams)}` : "/search_read" /* SEARCH_READ */;
2812
+ const url = searchParams ? `${"/search_read" /* SEARCH_READ */}?${chunkJDXUTKMX_js.toQueryString(searchParams)}` : "/search_read" /* SEARCH_READ */;
2933
2813
  return env?.requests.post(
2934
2814
  url,
2935
2815
  jsonData,
@@ -3079,7 +2959,7 @@ var loadDataPosSessionService = (env) => {
3079
2959
  models_to_load: modelsToLoad
3080
2960
  }
3081
2961
  };
3082
- const url = searchParams ? `${"/call" /* CALL_PATH */}?${chunkU4Q3MW45_js.toQueryString(searchParams)}` : "/call" /* CALL_PATH */;
2962
+ const url = searchParams ? `${"/call" /* CALL_PATH */}?${chunkJDXUTKMX_js.toQueryString(searchParams)}` : "/call" /* CALL_PATH */;
3083
2963
  return env?.requests.post(
3084
2964
  url,
3085
2965
  jsonData,
@@ -3979,7 +3859,7 @@ var updateOrderSupabaseService = () => {
3979
3859
  return [];
3980
3860
  }
3981
3861
  const { order_id, ...rest } = values;
3982
- const updateData = chunkU4Q3MW45_js.cleanObject({
3862
+ const updateData = chunkJDXUTKMX_js.cleanObject({
3983
3863
  ...rest,
3984
3864
  updated_at: (/* @__PURE__ */ new Date()).toISOString()
3985
3865
  });
@@ -4092,7 +3972,7 @@ var addProductSupabaseService = () => {
4092
3972
  console.error("Supabase client not initialized");
4093
3973
  return null;
4094
3974
  }
4095
- const insertData = chunkU4Q3MW45_js.cleanObject({
3975
+ const insertData = chunkJDXUTKMX_js.cleanObject({
4096
3976
  name: values.name,
4097
3977
  product_tmpl_id: values.product_tmpl_id,
4098
3978
  product_template_variant_value_ids: values.product_template_variant_value_ids ?? [],
@@ -4135,7 +4015,7 @@ var addPaymentMethodSupabaseService = () => {
4135
4015
  return null;
4136
4016
  }
4137
4017
  const { name, ...rest } = values;
4138
- const insertData = chunkU4Q3MW45_js.cleanObject({
4018
+ const insertData = chunkJDXUTKMX_js.cleanObject({
4139
4019
  name,
4140
4020
  ...rest
4141
4021
  });
@@ -4236,7 +4116,7 @@ var createCustomerSupabaseService = () => {
4236
4116
  return null;
4237
4117
  }
4238
4118
  try {
4239
- const insertData = chunkU4Q3MW45_js.cleanObject({
4119
+ const insertData = chunkJDXUTKMX_js.cleanObject({
4240
4120
  name: values.name,
4241
4121
  phone: values.phone,
4242
4122
  email: values.email,
@@ -4275,7 +4155,7 @@ var updateCustomerSupabaseService = () => {
4275
4155
  }
4276
4156
  try {
4277
4157
  const { customer_id, ...rest } = values;
4278
- const updateData = chunkU4Q3MW45_js.cleanObject({
4158
+ const updateData = chunkJDXUTKMX_js.cleanObject({
4279
4159
  ...rest,
4280
4160
  write_date: (/* @__PURE__ */ new Date()).toISOString()
4281
4161
  });
@@ -4552,7 +4432,7 @@ var updateProductSupabaseService = () => {
4552
4432
  }
4553
4433
  try {
4554
4434
  const { product_id, ...rest } = values;
4555
- const updateData = chunkU4Q3MW45_js.cleanObject(rest);
4435
+ const updateData = chunkJDXUTKMX_js.cleanObject(rest);
4556
4436
  const { data, error } = await supabase.from("products" /* PRODUCTS */).update(updateData).eq("id", product_id).select("id").single();
4557
4437
  if (error) {
4558
4438
  console.error("Error updating product:", error);
@@ -4706,8 +4586,164 @@ var usePosService = () => {
4706
4586
  }
4707
4587
  return service;
4708
4588
  };
4709
-
4710
- // src/hooks/auth/use-forgot-password.ts
4589
+ var VersionGate = ({ children }) => {
4590
+ const queryClient = reactQuery.useQueryClient();
4591
+ const [ready, setReady] = react.useState(false);
4592
+ const { getVersion } = useViewService();
4593
+ react.useEffect(() => {
4594
+ const clearVersion = () => {
4595
+ queryClient.clear();
4596
+ localStorage.removeItem("__api_version__");
4597
+ };
4598
+ const validateVersion = async () => {
4599
+ const serverVersion = await getVersion();
4600
+ const cached = localStorage.getItem("__api_version__");
4601
+ if (cached !== serverVersion?.api_version) {
4602
+ clearVersion();
4603
+ localStorage.setItem("__api_version__", serverVersion?.api_version);
4604
+ } else {
4605
+ console.log("Api version:", serverVersion?.api_version);
4606
+ }
4607
+ setReady(true);
4608
+ };
4609
+ validateVersion();
4610
+ if (typeof window !== "undefined") {
4611
+ const onKey = (e) => {
4612
+ const key = e.key.toLowerCase();
4613
+ const isHardRefresh = (key === "f5" || key === "r") && e.ctrlKey && (key !== "r" || e.shiftKey) || key === "r" && e.metaKey && e.shiftKey || key === "r" && e.metaKey && e.altKey;
4614
+ if (isHardRefresh) clearVersion();
4615
+ };
4616
+ window.addEventListener("keydown", onKey);
4617
+ return () => window.removeEventListener("keydown", onKey);
4618
+ }
4619
+ }, [queryClient]);
4620
+ return ready ? /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children }) : null;
4621
+ };
4622
+ var initialEnvState = {
4623
+ env: null,
4624
+ baseUrl: "",
4625
+ requests: null,
4626
+ companies: [],
4627
+ user: {},
4628
+ config: null,
4629
+ envFile: null,
4630
+ defaultCompany: {
4631
+ id: null,
4632
+ logo: "",
4633
+ secondary_color: "",
4634
+ primary_color: "",
4635
+ secondary_logo: ""
4636
+ },
4637
+ context: {
4638
+ uid: null,
4639
+ lang: "vi_VN",
4640
+ tz: "Asia/Saigon"
4641
+ },
4642
+ excludeLanguages: [],
4643
+ isSupaMode: false
4644
+ };
4645
+ var EnvContext = react.createContext(null);
4646
+ function EnvProvider({
4647
+ children,
4648
+ localStorageUtils: localStorageUtil = chunkJDXUTKMX_js.localStorageUtils(),
4649
+ sessionStorageUtils: sessionStorageUtil = chunkJDXUTKMX_js.sessionStorageUtils
4650
+ }) {
4651
+ const [env, setEnvState] = react.useState({
4652
+ ...initialEnvState,
4653
+ localStorageUtils: localStorageUtil,
4654
+ sessionStorageUtils: sessionStorageUtil
4655
+ });
4656
+ const setupEnv = react.useCallback(
4657
+ (envConfig) => {
4658
+ const updatedEnv = {
4659
+ ...env,
4660
+ ...envConfig,
4661
+ localStorageUtils: localStorageUtil,
4662
+ sessionStorageUtils: sessionStorageUtil
4663
+ };
4664
+ const requests = chunkQ5YXX4OR_js.axiosClient.init(updatedEnv);
4665
+ setEnvState({ ...updatedEnv, requests });
4666
+ return updatedEnv;
4667
+ },
4668
+ [env, localStorageUtil, sessionStorageUtil]
4669
+ );
4670
+ const setUid = react.useCallback((uid) => {
4671
+ setEnvState((prev) => ({
4672
+ ...prev,
4673
+ context: { ...prev.context, uid }
4674
+ }));
4675
+ }, []);
4676
+ const setLang = react.useCallback((lang) => {
4677
+ setEnvState((prev) => ({
4678
+ ...prev,
4679
+ context: { ...prev.context, lang }
4680
+ }));
4681
+ }, []);
4682
+ const setAllowCompanies = react.useCallback((allowed_company_ids) => {
4683
+ setEnvState((prev) => ({
4684
+ ...prev,
4685
+ context: { ...prev.context, allowed_company_ids }
4686
+ }));
4687
+ }, []);
4688
+ const setCompanies = react.useCallback((companies) => {
4689
+ setEnvState((prev) => ({
4690
+ ...prev,
4691
+ companies
4692
+ }));
4693
+ }, []);
4694
+ const setDefaultCompany = react.useCallback(
4695
+ (defaultCompany) => {
4696
+ setEnvState((prev) => ({
4697
+ ...prev,
4698
+ defaultCompany
4699
+ }));
4700
+ },
4701
+ []
4702
+ );
4703
+ const setUserInfo = react.useCallback((user) => {
4704
+ setEnvState((prev) => ({
4705
+ ...prev,
4706
+ user
4707
+ }));
4708
+ }, []);
4709
+ const setConfig = react.useCallback((config) => {
4710
+ setEnvState((prev) => ({
4711
+ ...prev,
4712
+ config
4713
+ }));
4714
+ }, []);
4715
+ const setEnvFile = react.useCallback((envFile) => {
4716
+ setEnvState((prev) => ({
4717
+ ...prev,
4718
+ envFile
4719
+ }));
4720
+ }, []);
4721
+ return /* @__PURE__ */ jsxRuntime.jsx(
4722
+ EnvContext.Provider,
4723
+ {
4724
+ value: {
4725
+ env,
4726
+ setupEnv,
4727
+ setUid,
4728
+ setLang,
4729
+ setAllowCompanies,
4730
+ setCompanies,
4731
+ setDefaultCompany,
4732
+ setUserInfo,
4733
+ setConfig,
4734
+ setEnvFile
4735
+ },
4736
+ children
4737
+ }
4738
+ );
4739
+ }
4740
+ function useEnv() {
4741
+ const context = react.useContext(EnvContext);
4742
+ if (!context) {
4743
+ throw new Error("useEnv must be used within an EnvProvider");
4744
+ }
4745
+ return context;
4746
+ }
4711
4747
  var useForgotPassword = () => {
4712
4748
  const { forgotPassword } = useAuthService();
4713
4749
  return reactQuery.useMutation({
@@ -5116,6 +5152,24 @@ var useGetFormView = ({
5116
5152
  });
5117
5153
  };
5118
5154
  var use_get_form_view_default = useGetFormView;
5155
+ var useGetImage = ({
5156
+ data,
5157
+ queryKey,
5158
+ src
5159
+ }) => {
5160
+ const { getImage } = useFormService();
5161
+ return reactQuery.useQuery({
5162
+ queryKey,
5163
+ queryFn: () => getImage({ data }).then((res) => {
5164
+ if (res) {
5165
+ return res;
5166
+ }
5167
+ }),
5168
+ enabled: !src && !chunkJDXUTKMX_js.isBase64File(src),
5169
+ refetchOnWindowFocus: false
5170
+ });
5171
+ };
5172
+ var use_get_image_default = useGetImage;
5119
5173
  var useSendComment = () => {
5120
5174
  const { sentComment } = useFormService();
5121
5175
  return reactQuery.useMutation({
@@ -6547,6 +6601,7 @@ var ServiceProvider = ({
6547
6601
  useDeleteComment: use_delete_comment_default,
6548
6602
  useGetComment: use_get_comment_default,
6549
6603
  useGetFormView: use_get_form_view_default,
6604
+ useGetImage: use_get_image_default,
6550
6605
  useSendComment: use_send_comment_default,
6551
6606
  useSupaUploadImage: use_supa_upload_image_default,
6552
6607
  useDelete: use_delete_default,
@@ -6742,6 +6797,7 @@ exports.MetaProvider = MetaProvider;
6742
6797
  exports.ReactQueryProvider = ReactQueryProvider;
6743
6798
  exports.ServiceProvider = ServiceProvider;
6744
6799
  exports.SupabaseProvider = SupabaseProvider;
6800
+ exports.VersionGate = VersionGate;
6745
6801
  exports.useActionService = useActionService;
6746
6802
  exports.useAuthService = useAuthService;
6747
6803
  exports.useCompanyService = useCompanyService;
@@ -6819,6 +6875,7 @@ exports.use_get_file_excel_default = use_get_file_excel_default;
6819
6875
  exports.use_get_form_view_default = use_get_form_view_default;
6820
6876
  exports.use_get_functional_modules_default = use_get_functional_modules_default;
6821
6877
  exports.use_get_groups_default = use_get_groups_default;
6878
+ exports.use_get_image_default = use_get_image_default;
6822
6879
  exports.use_get_list_company_default = use_get_list_company_default;
6823
6880
  exports.use_get_list_data_default = use_get_list_data_default;
6824
6881
  exports.use_get_list_default = use_get_list_default;
package/dist/configs.js CHANGED
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var chunkCCTDGAMA_js = require('./chunk-CCTDGAMA.js');
4
- require('./chunk-U4Q3MW45.js');
3
+ var chunkQ5YXX4OR_js = require('./chunk-Q5YXX4OR.js');
4
+ require('./chunk-JDXUTKMX.js');
5
+ require('./chunk-COC7NGXP.js');
5
6
 
6
7
 
7
8
 
8
9
  Object.defineProperty(exports, "axiosClient", {
9
10
  enumerable: true,
10
- get: function () { return chunkCCTDGAMA_js.axiosClient; }
11
+ get: function () { return chunkQ5YXX4OR_js.axiosClient; }
11
12
  });
package/dist/configs.mjs CHANGED
@@ -1,2 +1,3 @@
1
- export { axiosClient } from './chunk-ZDXEWQQD.mjs';
2
- import './chunk-HQVNK2EW.mjs';
1
+ export { axiosClient } from './chunk-ACSPOGTI.mjs';
2
+ import './chunk-BPJZ3QRN.mjs';
3
+ import './chunk-Q3Y6RCJ4.mjs';
@@ -1,4 +1,4 @@
1
- import { L as LocalStorageUtilsType } from './local-storage-AbiOQTLK.mjs';
1
+ import { L as LocalStorageUtilsType } from './local-storage-BPvoMGYJ.mjs';
2
2
 
3
3
  interface EnvConfig {
4
4
  env?: any;
@@ -1,4 +1,4 @@
1
- import { L as LocalStorageUtilsType } from './local-storage-AbiOQTLK.js';
1
+ import { L as LocalStorageUtilsType } from './local-storage-BPvoMGYJ.js';
2
2
 
3
3
  interface EnvConfig {
4
4
  env?: any;
@@ -1,20 +1,21 @@
1
1
  'use strict';
2
2
 
3
- var chunkFWBYTZIV_js = require('./chunk-FWBYTZIV.js');
4
- require('./chunk-CCTDGAMA.js');
5
- require('./chunk-U4Q3MW45.js');
3
+ var chunkC5QQGBN4_js = require('./chunk-C5QQGBN4.js');
4
+ require('./chunk-Q5YXX4OR.js');
5
+ require('./chunk-JDXUTKMX.js');
6
+ require('./chunk-COC7NGXP.js');
6
7
 
7
8
 
8
9
 
9
10
  Object.defineProperty(exports, "EnvStore", {
10
11
  enumerable: true,
11
- get: function () { return chunkFWBYTZIV_js.EnvStore; }
12
+ get: function () { return chunkC5QQGBN4_js.EnvStore; }
12
13
  });
13
14
  Object.defineProperty(exports, "getEnv", {
14
15
  enumerable: true,
15
- get: function () { return chunkFWBYTZIV_js.getEnv; }
16
+ get: function () { return chunkC5QQGBN4_js.getEnv; }
16
17
  });
17
18
  Object.defineProperty(exports, "initEnv", {
18
19
  enumerable: true,
19
- get: function () { return chunkFWBYTZIV_js.initEnv; }
20
+ get: function () { return chunkC5QQGBN4_js.initEnv; }
20
21
  });
@@ -1,3 +1,4 @@
1
- export { EnvStore, getEnv, initEnv } from './chunk-F2VAAEVB.mjs';
2
- import './chunk-ZDXEWQQD.mjs';
3
- import './chunk-HQVNK2EW.mjs';
1
+ export { EnvStore, getEnv, initEnv } from './chunk-6ARYI77N.mjs';
2
+ import './chunk-ACSPOGTI.mjs';
3
+ import './chunk-BPJZ3QRN.mjs';
4
+ import './chunk-Q3Y6RCJ4.mjs';
package/dist/hooks.d.mts CHANGED
@@ -164,6 +164,12 @@ declare const useGetFormView: ({ data, queryKey, enabled, }: {
164
164
  enabled?: any;
165
165
  }) => _tanstack_react_query.UseQueryResult<any, Error>;
166
166
 
167
+ declare const useGetImage: ({ data, queryKey, src, }: {
168
+ data: any;
169
+ queryKey: any;
170
+ src: any;
171
+ }) => _tanstack_react_query.UseQueryResult<any, Error>;
172
+
167
173
  declare const useSendComment: () => _tanstack_react_query.UseMutationResult<any, Error, {
168
174
  data: any;
169
175
  }, unknown>;
@@ -1036,4 +1042,4 @@ declare const useTogglePosRestaurant: () => _tanstack_react_query.UseMutationRes
1036
1042
  module_pos_restaurant: boolean;
1037
1043
  }, unknown>;
1038
1044
 
1039
- export { useActionServerHome, useAddCategory, useAddEntity, useAddFloor, useAddPaymentMethod, useAddProduct, useAddProductToOrder, useAddTable, useAppAuthenticate, useApplyVoucher, useAssignRole, useButton, useChangeOrderPreparationState, useChangeStatus, useCheckPayment, useCompleteCurrentStage, useCreateCustomer, useCreateEInvoice, useCreateEntity, useCreateOrder, useCreatePayment, useCreatePosConfig, useCreateSession, useDelete, useDeleteCategory, useDeleteComment, useDeleteCustomer, useDeleteEntity, useDeleteFloor, useDeleteOrder, useDeleteOrderLine, useDeleteProduct, useDeleteTable, useDuplicateRecord, useExecuteImport, useExportExcel, useForgotPassword, useForgotPasswordSSO, useGenSerialNumber, useGeneratePaymentQrInfo, useGet2FAMethods, useGetASession, useGetAccessByCode, useGetActionDetail, useGetAll, useGetCalendar, useGetCity, useGetComment, useGetCompanyInfo, useGetConversionRate, useGetCountry, useGetCurrency, useGetCurrentCompany, useGetCurrentUser, useGetCustomerLoyaltyPoint, useGetDataChart, useGetDetail, useGetEInvoiceInfo, useGetExternalTabs, useGetFieldExport, useGetFieldOnChange, useGetFileExcel, useGetFormView, useGetFunctionalModules, useGetGroups, useGetList, useGetListCompany, useGetListData, useGetListMyBankAccount, useGetListRoles, useGetListUsers, useGetMenu, useGetNotifications, useGetOrderLine, useGetPartnerTitle, useGetPinCode, useGetPos, useGetPreparationDisplayData, useGetPrintReport, useGetProGressBar, useGetProductImage, useGetProfile, useGetProvider, useGetResequence, useGetSelection, useGetSupaCurrentUser, useGetTenantMapping, useGetThreadData, useGetThreadMessages, useGetToken, useGetUser, useGetVersion, useGetView, useGetWard, useGrantAccess, useHandleCloseSession, useHandleClosingDetailSession, useHandleClosingSession, useIsValidToken, useLoadAction, useLoadDataPosSession, useLoadMessage, useLoginCredential, useLoginSocial, useLoginTenantUser, useLogout, useManageOnChange, useManageSession, useModel, useOdooDataTransform, useOnChangeForm, useParsePreview, usePrint, useProcessOrder, useReadGroup, useRemoveRow, useRemoveTotpSetup, useRemoveVoucher, useRequestSetupTotp, useResetPassword, useResetPasswordSSO, useRunAction, useSave, useSavePinCode, useSearchJournal, useSendComment, useSettingsWebRead2fa, useSignInSSO, useSupaUploadImage, useSwitchLocale, useSyncFromUi, useTogglePosRestaurant, useUpdateCategory, useUpdateClosedSession, useUpdateCustomer, useUpdateEntity, useUpdateFloor, useUpdateOrder, useUpdateOrderLine, useUpdateOrderStatus, useUpdateOrderTotalAmount, useUpdatePassword, useUpdateProduct, useUpdateSessionPaymentMethods, useUpdateTable, useUploadFile, useUploadFileExcel, useUploadIdFile, useUploadImage, useValidateActionToken, useVerify2FA, useVerifyTotp };
1045
+ export { useActionServerHome, useAddCategory, useAddEntity, useAddFloor, useAddPaymentMethod, useAddProduct, useAddProductToOrder, useAddTable, useAppAuthenticate, useApplyVoucher, useAssignRole, useButton, useChangeOrderPreparationState, useChangeStatus, useCheckPayment, useCompleteCurrentStage, useCreateCustomer, useCreateEInvoice, useCreateEntity, useCreateOrder, useCreatePayment, useCreatePosConfig, useCreateSession, useDelete, useDeleteCategory, useDeleteComment, useDeleteCustomer, useDeleteEntity, useDeleteFloor, useDeleteOrder, useDeleteOrderLine, useDeleteProduct, useDeleteTable, useDuplicateRecord, useExecuteImport, useExportExcel, useForgotPassword, useForgotPasswordSSO, useGenSerialNumber, useGeneratePaymentQrInfo, useGet2FAMethods, useGetASession, useGetAccessByCode, useGetActionDetail, useGetAll, useGetCalendar, useGetCity, useGetComment, useGetCompanyInfo, useGetConversionRate, useGetCountry, useGetCurrency, useGetCurrentCompany, useGetCurrentUser, useGetCustomerLoyaltyPoint, useGetDataChart, useGetDetail, useGetEInvoiceInfo, useGetExternalTabs, useGetFieldExport, useGetFieldOnChange, useGetFileExcel, useGetFormView, useGetFunctionalModules, useGetGroups, useGetImage, useGetList, useGetListCompany, useGetListData, useGetListMyBankAccount, useGetListRoles, useGetListUsers, useGetMenu, useGetNotifications, useGetOrderLine, useGetPartnerTitle, useGetPinCode, useGetPos, useGetPreparationDisplayData, useGetPrintReport, useGetProGressBar, useGetProductImage, useGetProfile, useGetProvider, useGetResequence, useGetSelection, useGetSupaCurrentUser, useGetTenantMapping, useGetThreadData, useGetThreadMessages, useGetToken, useGetUser, useGetVersion, useGetView, useGetWard, useGrantAccess, useHandleCloseSession, useHandleClosingDetailSession, useHandleClosingSession, useIsValidToken, useLoadAction, useLoadDataPosSession, useLoadMessage, useLoginCredential, useLoginSocial, useLoginTenantUser, useLogout, useManageOnChange, useManageSession, useModel, useOdooDataTransform, useOnChangeForm, useParsePreview, usePrint, useProcessOrder, useReadGroup, useRemoveRow, useRemoveTotpSetup, useRemoveVoucher, useRequestSetupTotp, useResetPassword, useResetPasswordSSO, useRunAction, useSave, useSavePinCode, useSearchJournal, useSendComment, useSettingsWebRead2fa, useSignInSSO, useSupaUploadImage, useSwitchLocale, useSyncFromUi, useTogglePosRestaurant, useUpdateCategory, useUpdateClosedSession, useUpdateCustomer, useUpdateEntity, useUpdateFloor, useUpdateOrder, useUpdateOrderLine, useUpdateOrderStatus, useUpdateOrderTotalAmount, useUpdatePassword, useUpdateProduct, useUpdateSessionPaymentMethods, useUpdateTable, useUploadFile, useUploadFileExcel, useUploadIdFile, useUploadImage, useValidateActionToken, useVerify2FA, useVerifyTotp };