@fctc/interface-logic 3.8.9 → 3.9.0
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/configs.js +103 -13
- package/dist/configs.mjs +103 -13
- package/dist/environment.js +103 -13
- package/dist/environment.mjs +103 -13
- package/dist/hooks.d.mts +3 -1
- package/dist/hooks.d.ts +3 -1
- package/dist/hooks.js +18 -4
- package/dist/hooks.mjs +13 -0
- package/dist/provider.d.mts +2 -1
- package/dist/provider.d.ts +2 -1
- package/dist/provider.js +121 -18
- package/dist/provider.mjs +117 -14
- package/dist/services.js +5 -2
- package/dist/services.mjs +3 -0
- package/package.json +90 -90
package/dist/hooks.js
CHANGED
|
@@ -90,6 +90,7 @@ __export(hooks_exports, {
|
|
|
90
90
|
useGetThreadMessages: () => use_get_thread_messages_default,
|
|
91
91
|
useGetToken: () => use_get_token_default,
|
|
92
92
|
useGetUser: () => use_get_user_default,
|
|
93
|
+
useGetVersion: () => use_get_version_default,
|
|
93
94
|
useGetView: () => use_get_view_default,
|
|
94
95
|
useGrantAccess: () => use_grant_access_default,
|
|
95
96
|
useHandleCloseSession: () => use_handle_close_session_default,
|
|
@@ -8041,11 +8042,23 @@ var useGetNotifications = ({
|
|
|
8041
8042
|
};
|
|
8042
8043
|
var use_get_notifications_default = useGetNotifications;
|
|
8043
8044
|
|
|
8044
|
-
// src/hooks/
|
|
8045
|
+
// src/hooks/view/use-get-version.ts
|
|
8045
8046
|
var import_react_query104 = require("@tanstack/react-query");
|
|
8047
|
+
var useGetVersion = () => {
|
|
8048
|
+
const { getVersion } = useViewService();
|
|
8049
|
+
return (0, import_react_query104.useMutation)({
|
|
8050
|
+
mutationFn: () => {
|
|
8051
|
+
return getVersion();
|
|
8052
|
+
}
|
|
8053
|
+
});
|
|
8054
|
+
};
|
|
8055
|
+
var use_get_version_default = useGetVersion;
|
|
8056
|
+
|
|
8057
|
+
// src/hooks/chart/use-read-group.ts
|
|
8058
|
+
var import_react_query105 = require("@tanstack/react-query");
|
|
8046
8059
|
var useReadGroup = (services, xNode, body, enabled) => {
|
|
8047
8060
|
const { readGroup } = useDashboardService();
|
|
8048
|
-
return (0,
|
|
8061
|
+
return (0, import_react_query105.useQuery)({
|
|
8049
8062
|
queryKey: [body],
|
|
8050
8063
|
queryFn: () => readGroup({
|
|
8051
8064
|
service: services,
|
|
@@ -8059,10 +8072,10 @@ var useReadGroup = (services, xNode, body, enabled) => {
|
|
|
8059
8072
|
var use_read_group_default = useReadGroup;
|
|
8060
8073
|
|
|
8061
8074
|
// src/hooks/chart/use-get-data-chart.ts
|
|
8062
|
-
var
|
|
8075
|
+
var import_react_query106 = require("@tanstack/react-query");
|
|
8063
8076
|
var useGetDataChart = (services, xNode, body, enabled, path, method, queryKey) => {
|
|
8064
8077
|
const { getDataChart } = useDashboardService();
|
|
8065
|
-
return (0,
|
|
8078
|
+
return (0, import_react_query106.useQuery)({
|
|
8066
8079
|
queryKey: [queryKey],
|
|
8067
8080
|
queryFn: () => getDataChart({
|
|
8068
8081
|
service: services,
|
|
@@ -8138,6 +8151,7 @@ var use_get_data_chart_default = useGetDataChart;
|
|
|
8138
8151
|
useGetThreadMessages,
|
|
8139
8152
|
useGetToken,
|
|
8140
8153
|
useGetUser,
|
|
8154
|
+
useGetVersion,
|
|
8141
8155
|
useGetView,
|
|
8142
8156
|
useGrantAccess,
|
|
8143
8157
|
useHandleCloseSession,
|
package/dist/hooks.mjs
CHANGED
|
@@ -7901,6 +7901,18 @@ var useGetNotifications = ({
|
|
|
7901
7901
|
};
|
|
7902
7902
|
var use_get_notifications_default = useGetNotifications;
|
|
7903
7903
|
|
|
7904
|
+
// src/hooks/view/use-get-version.ts
|
|
7905
|
+
import { useMutation as useMutation79 } from "@tanstack/react-query";
|
|
7906
|
+
var useGetVersion = () => {
|
|
7907
|
+
const { getVersion } = useViewService();
|
|
7908
|
+
return useMutation79({
|
|
7909
|
+
mutationFn: () => {
|
|
7910
|
+
return getVersion();
|
|
7911
|
+
}
|
|
7912
|
+
});
|
|
7913
|
+
};
|
|
7914
|
+
var use_get_version_default = useGetVersion;
|
|
7915
|
+
|
|
7904
7916
|
// src/hooks/chart/use-read-group.ts
|
|
7905
7917
|
import { useQuery as useQuery24 } from "@tanstack/react-query";
|
|
7906
7918
|
var useReadGroup = (services, xNode, body, enabled) => {
|
|
@@ -7997,6 +8009,7 @@ export {
|
|
|
7997
8009
|
use_get_thread_messages_default as useGetThreadMessages,
|
|
7998
8010
|
use_get_token_default as useGetToken,
|
|
7999
8011
|
use_get_user_default as useGetUser,
|
|
8012
|
+
use_get_version_default as useGetVersion,
|
|
8000
8013
|
use_get_view_default as useGetView,
|
|
8001
8014
|
use_grant_access_default as useGrantAccess,
|
|
8002
8015
|
use_handle_close_session_default as useHandleCloseSession,
|
package/dist/provider.d.mts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { L as LocalStorageUtilsType } from './local-storage-BPvoMGYJ.mjs';
|
|
4
|
-
import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useChangeOrderPreparaionState as useChangeOrderPreparationState, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart } from './hooks.mjs';
|
|
4
|
+
import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useChangeOrderPreparaionState as useChangeOrderPreparationState, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart, useGetVersion } from './hooks.mjs';
|
|
5
5
|
import '@tanstack/react-query';
|
|
6
6
|
import './view-type-CRNLhTVq.mjs';
|
|
7
7
|
import './base-model-type-DD8uZnDP.mjs';
|
|
@@ -170,6 +170,7 @@ interface ServiceContextType {
|
|
|
170
170
|
useReadGroup: typeof useReadGroup;
|
|
171
171
|
useGetNotifications: typeof useGetNotifications;
|
|
172
172
|
useGetDataChart: typeof useGetDataChart;
|
|
173
|
+
useGetVersion: typeof useGetVersion;
|
|
173
174
|
}
|
|
174
175
|
declare const ServiceProvider: ({ children, }: {
|
|
175
176
|
children: React.ReactNode;
|
package/dist/provider.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { L as LocalStorageUtilsType } from './local-storage-BPvoMGYJ.js';
|
|
4
|
-
import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useChangeOrderPreparaionState as useChangeOrderPreparationState, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart } from './hooks.js';
|
|
4
|
+
import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useGetImage, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useChangeOrderPreparaionState as useChangeOrderPreparationState, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart, useGetVersion } from './hooks.js';
|
|
5
5
|
import '@tanstack/react-query';
|
|
6
6
|
import './view-type-CRNLhTVq.js';
|
|
7
7
|
import './base-model-type-DD8uZnDP.js';
|
|
@@ -170,6 +170,7 @@ interface ServiceContextType {
|
|
|
170
170
|
useReadGroup: typeof useReadGroup;
|
|
171
171
|
useGetNotifications: typeof useGetNotifications;
|
|
172
172
|
useGetDataChart: typeof useGetDataChart;
|
|
173
|
+
useGetVersion: typeof useGetVersion;
|
|
173
174
|
}
|
|
174
175
|
declare const ServiceProvider: ({ children, }: {
|
|
175
176
|
children: React.ReactNode;
|
package/dist/provider.js
CHANGED
|
@@ -5915,12 +5915,10 @@ var axiosClient = {
|
|
|
5915
5915
|
timeout: 5e4,
|
|
5916
5916
|
paramsSerializer: (params) => new URLSearchParams(params).toString()
|
|
5917
5917
|
});
|
|
5918
|
-
instance.interceptors.request.use(async (
|
|
5919
|
-
const useRefreshToken =
|
|
5920
|
-
const useActionToken =
|
|
5921
|
-
const actionToken =
|
|
5922
|
-
console.log("config", config2);
|
|
5923
|
-
console.log("useRefreshToken", useRefreshToken);
|
|
5918
|
+
instance.interceptors.request.use(async (configReq) => {
|
|
5919
|
+
const useRefreshToken = configReq.headers["X-Use-Refresh-Token"] === "true";
|
|
5920
|
+
const useActionToken = configReq.headers["X-Use-Action-Token"] === "true";
|
|
5921
|
+
const actionToken = configReq.headers["X-Action-Token"];
|
|
5924
5922
|
let token = null;
|
|
5925
5923
|
if (useActionToken && actionToken) {
|
|
5926
5924
|
token = actionToken;
|
|
@@ -5929,14 +5927,109 @@ var axiosClient = {
|
|
|
5929
5927
|
token = await getToken?.();
|
|
5930
5928
|
}
|
|
5931
5929
|
if (token) {
|
|
5932
|
-
|
|
5930
|
+
configReq.headers["Authorization"] = `Bearer ${token}`;
|
|
5933
5931
|
}
|
|
5934
5932
|
if (database) {
|
|
5935
|
-
|
|
5933
|
+
configReq.headers["DATABASE"] = database;
|
|
5936
5934
|
}
|
|
5937
|
-
|
|
5938
|
-
return config2;
|
|
5935
|
+
return configReq;
|
|
5939
5936
|
}, Promise.reject);
|
|
5937
|
+
const buildRefreshUrl = () => {
|
|
5938
|
+
if (!config.refreshTokenEndpoint) {
|
|
5939
|
+
return `${getBaseUrl(config?.baseUrl)}${"/authentication/oauth2/token" /* AUTH_TOKEN_PATH */}`;
|
|
5940
|
+
}
|
|
5941
|
+
const ep = String(config.refreshTokenEndpoint);
|
|
5942
|
+
if (/^https?:\/\//i.test(ep)) return ep;
|
|
5943
|
+
const cleanBase = String(config?.baseUrl || "").replace(/\/$/, "");
|
|
5944
|
+
const cleanEp = ep.startsWith("/") ? ep : `/${ep}`;
|
|
5945
|
+
return `${cleanBase}${cleanEp}`;
|
|
5946
|
+
};
|
|
5947
|
+
instance.interceptors.response.use(
|
|
5948
|
+
(response) => handleResponse(response),
|
|
5949
|
+
async (error) => {
|
|
5950
|
+
const handleError3 = async (err) => {
|
|
5951
|
+
if (!err.response) return err;
|
|
5952
|
+
const { data } = err.response;
|
|
5953
|
+
if (data && data.code === 400 && ["invalid_grant"].includes(data.data?.error)) {
|
|
5954
|
+
await clearAuthToken();
|
|
5955
|
+
}
|
|
5956
|
+
return data;
|
|
5957
|
+
};
|
|
5958
|
+
const originalRequest = error.config;
|
|
5959
|
+
if ((error.response?.status === 403 || error.response?.status === 401 || error.response?.status === 404) && ["TOKEN_EXPIRED", "AUTHEN_FAIL", 401, "ERR_2FA_006"].includes(
|
|
5960
|
+
error.response.data.code
|
|
5961
|
+
)) {
|
|
5962
|
+
if (isRefreshing) {
|
|
5963
|
+
return new Promise(function(resolve, reject) {
|
|
5964
|
+
failedQueue.push({ resolve, reject });
|
|
5965
|
+
}).then((newToken) => {
|
|
5966
|
+
originalRequest.headers["Authorization"] = "Bearer " + newToken;
|
|
5967
|
+
originalRequest.data = updateTokenParamInOriginalRequest(
|
|
5968
|
+
originalRequest,
|
|
5969
|
+
newToken
|
|
5970
|
+
);
|
|
5971
|
+
return instance.request(originalRequest);
|
|
5972
|
+
}).catch(async (err) => {
|
|
5973
|
+
if ((err.response?.status === 400 || err.response?.status === 401) && ["invalid_grant"].includes(err.response.data.error)) {
|
|
5974
|
+
await clearAuthToken();
|
|
5975
|
+
}
|
|
5976
|
+
});
|
|
5977
|
+
}
|
|
5978
|
+
const browserSession = await sessionStorage2.getBrowserSession();
|
|
5979
|
+
const refreshToken = await localStorage2.getRefreshToken();
|
|
5980
|
+
const accessTokenExp = await localStorage2.getAccessToken();
|
|
5981
|
+
isRefreshing = true;
|
|
5982
|
+
if (!refreshToken && (!browserSession || browserSession == "unActive")) {
|
|
5983
|
+
await clearAuthToken();
|
|
5984
|
+
} else {
|
|
5985
|
+
const payload = Object.fromEntries(
|
|
5986
|
+
Object.entries({
|
|
5987
|
+
refresh_token: refreshToken,
|
|
5988
|
+
grant_type: "refresh_token",
|
|
5989
|
+
client_id: config.config.clientId,
|
|
5990
|
+
client_secret: config.config.clientSecret
|
|
5991
|
+
}).filter(([_, v]) => !!v)
|
|
5992
|
+
);
|
|
5993
|
+
const refreshUrl = buildRefreshUrl();
|
|
5994
|
+
return new Promise(function(resolve) {
|
|
5995
|
+
import_axios.default.post(refreshUrl, payload, {
|
|
5996
|
+
headers: {
|
|
5997
|
+
"Content-Type": config.refreshTokenEndpoint ? "application/x-www-form-urlencoded" : "multipart/form-data",
|
|
5998
|
+
Authorization: `Bearer ${accessTokenExp}`
|
|
5999
|
+
}
|
|
6000
|
+
}).then(async (res) => {
|
|
6001
|
+
const data = res.data;
|
|
6002
|
+
await localStorage2.setToken(data.access_token);
|
|
6003
|
+
await localStorage2.setRefreshToken(data.refresh_token);
|
|
6004
|
+
import_axios.default.defaults.headers.common["Authorization"] = "Bearer " + data.access_token;
|
|
6005
|
+
originalRequest.headers["Authorization"] = "Bearer " + data.access_token;
|
|
6006
|
+
originalRequest.data = updateTokenParamInOriginalRequest(
|
|
6007
|
+
originalRequest,
|
|
6008
|
+
data.access_token
|
|
6009
|
+
);
|
|
6010
|
+
processQueue(null, data.access_token);
|
|
6011
|
+
resolve(instance.request(originalRequest));
|
|
6012
|
+
}).catch(async (err) => {
|
|
6013
|
+
if (err && (err?.error_code === "AUTHEN_FAIL" || err?.error_code === "TOKEN_EXPIRED" || err?.error_code === "TOKEN_INCORRECT" || err?.code === "ERR_2FA_006")) {
|
|
6014
|
+
await clearAuthToken();
|
|
6015
|
+
}
|
|
6016
|
+
if (err && err.response) {
|
|
6017
|
+
const { error_code } = err.response?.data || {};
|
|
6018
|
+
const { code } = err;
|
|
6019
|
+
if (error_code === "AUTHEN_FAIL" || code === "ERR_2FA_006") {
|
|
6020
|
+
await clearAuthToken();
|
|
6021
|
+
}
|
|
6022
|
+
}
|
|
6023
|
+
processQueue(err, null);
|
|
6024
|
+
}).finally(() => {
|
|
6025
|
+
isRefreshing = false;
|
|
6026
|
+
});
|
|
6027
|
+
});
|
|
6028
|
+
}
|
|
6029
|
+
}
|
|
6030
|
+
return Promise.reject(await handleError3(error));
|
|
6031
|
+
}
|
|
6032
|
+
);
|
|
5940
6033
|
instance.interceptors.response.use(
|
|
5941
6034
|
(response) => {
|
|
5942
6035
|
return handleResponse(response);
|
|
@@ -5956,7 +6049,6 @@ var axiosClient = {
|
|
|
5956
6049
|
if ((error.response?.status === 403 || error.response?.status === 401 || error.response?.status === 404) && ["TOKEN_EXPIRED", "AUTHEN_FAIL", 401, "ERR_2FA_006"].includes(
|
|
5957
6050
|
error.response.data.code
|
|
5958
6051
|
)) {
|
|
5959
|
-
console.log("isRefreshing", isRefreshing);
|
|
5960
6052
|
if (isRefreshing) {
|
|
5961
6053
|
return new Promise(function(resolve, reject) {
|
|
5962
6054
|
failedQueue.push({ resolve, reject });
|
|
@@ -5978,7 +6070,6 @@ var axiosClient = {
|
|
|
5978
6070
|
const accessTokenExp = await localStorage2.getAccessToken();
|
|
5979
6071
|
isRefreshing = true;
|
|
5980
6072
|
if (!refreshToken && (!browserSession || browserSession == "unActive")) {
|
|
5981
|
-
console.log("222");
|
|
5982
6073
|
await clearAuthToken();
|
|
5983
6074
|
} else {
|
|
5984
6075
|
const payload = Object.fromEntries(
|
|
@@ -5989,7 +6080,6 @@ var axiosClient = {
|
|
|
5989
6080
|
client_secret: config.config.clientSecret
|
|
5990
6081
|
}).filter(([_, value]) => !!value)
|
|
5991
6082
|
);
|
|
5992
|
-
console.log("111");
|
|
5993
6083
|
return new Promise(function(resolve) {
|
|
5994
6084
|
import_axios.default.post(
|
|
5995
6085
|
`${config?.baseUrl}${config.refreshTokenEndpoint ?? "/authentication/oauth2/token" /* AUTH_TOKEN_PATH */}`,
|
|
@@ -8428,11 +8518,23 @@ var useGetNotifications = ({
|
|
|
8428
8518
|
};
|
|
8429
8519
|
var use_get_notifications_default = useGetNotifications;
|
|
8430
8520
|
|
|
8431
|
-
// src/hooks/
|
|
8521
|
+
// src/hooks/view/use-get-version.ts
|
|
8432
8522
|
var import_react_query104 = require("@tanstack/react-query");
|
|
8523
|
+
var useGetVersion = () => {
|
|
8524
|
+
const { getVersion } = useViewService();
|
|
8525
|
+
return (0, import_react_query104.useMutation)({
|
|
8526
|
+
mutationFn: () => {
|
|
8527
|
+
return getVersion();
|
|
8528
|
+
}
|
|
8529
|
+
});
|
|
8530
|
+
};
|
|
8531
|
+
var use_get_version_default = useGetVersion;
|
|
8532
|
+
|
|
8533
|
+
// src/hooks/chart/use-read-group.ts
|
|
8534
|
+
var import_react_query105 = require("@tanstack/react-query");
|
|
8433
8535
|
var useReadGroup = (services, xNode, body, enabled) => {
|
|
8434
8536
|
const { readGroup } = useDashboardService();
|
|
8435
|
-
return (0,
|
|
8537
|
+
return (0, import_react_query105.useQuery)({
|
|
8436
8538
|
queryKey: [body],
|
|
8437
8539
|
queryFn: () => readGroup({
|
|
8438
8540
|
service: services,
|
|
@@ -8446,10 +8548,10 @@ var useReadGroup = (services, xNode, body, enabled) => {
|
|
|
8446
8548
|
var use_read_group_default = useReadGroup;
|
|
8447
8549
|
|
|
8448
8550
|
// src/hooks/chart/use-get-data-chart.ts
|
|
8449
|
-
var
|
|
8551
|
+
var import_react_query106 = require("@tanstack/react-query");
|
|
8450
8552
|
var useGetDataChart = (services, xNode, body, enabled, path, method, queryKey) => {
|
|
8451
8553
|
const { getDataChart } = useDashboardService();
|
|
8452
|
-
return (0,
|
|
8554
|
+
return (0, import_react_query106.useQuery)({
|
|
8453
8555
|
queryKey: [queryKey],
|
|
8454
8556
|
queryFn: () => getDataChart({
|
|
8455
8557
|
service: services,
|
|
@@ -8575,7 +8677,8 @@ var ServiceProvider = ({
|
|
|
8575
8677
|
useGetPinCode: use_get_pin_code_default,
|
|
8576
8678
|
useReadGroup: use_read_group_default,
|
|
8577
8679
|
useGetNotifications: use_get_notifications_default,
|
|
8578
|
-
useGetDataChart: use_get_data_chart_default
|
|
8680
|
+
useGetDataChart: use_get_data_chart_default,
|
|
8681
|
+
useGetVersion: use_get_version_default
|
|
8579
8682
|
};
|
|
8580
8683
|
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ServiceContext.Provider, { value: services, children });
|
|
8581
8684
|
};
|
package/dist/provider.mjs
CHANGED
|
@@ -5872,12 +5872,10 @@ var axiosClient = {
|
|
|
5872
5872
|
timeout: 5e4,
|
|
5873
5873
|
paramsSerializer: (params) => new URLSearchParams(params).toString()
|
|
5874
5874
|
});
|
|
5875
|
-
instance.interceptors.request.use(async (
|
|
5876
|
-
const useRefreshToken =
|
|
5877
|
-
const useActionToken =
|
|
5878
|
-
const actionToken =
|
|
5879
|
-
console.log("config", config2);
|
|
5880
|
-
console.log("useRefreshToken", useRefreshToken);
|
|
5875
|
+
instance.interceptors.request.use(async (configReq) => {
|
|
5876
|
+
const useRefreshToken = configReq.headers["X-Use-Refresh-Token"] === "true";
|
|
5877
|
+
const useActionToken = configReq.headers["X-Use-Action-Token"] === "true";
|
|
5878
|
+
const actionToken = configReq.headers["X-Action-Token"];
|
|
5881
5879
|
let token = null;
|
|
5882
5880
|
if (useActionToken && actionToken) {
|
|
5883
5881
|
token = actionToken;
|
|
@@ -5886,14 +5884,109 @@ var axiosClient = {
|
|
|
5886
5884
|
token = await getToken?.();
|
|
5887
5885
|
}
|
|
5888
5886
|
if (token) {
|
|
5889
|
-
|
|
5887
|
+
configReq.headers["Authorization"] = `Bearer ${token}`;
|
|
5890
5888
|
}
|
|
5891
5889
|
if (database) {
|
|
5892
|
-
|
|
5890
|
+
configReq.headers["DATABASE"] = database;
|
|
5893
5891
|
}
|
|
5894
|
-
|
|
5895
|
-
return config2;
|
|
5892
|
+
return configReq;
|
|
5896
5893
|
}, Promise.reject);
|
|
5894
|
+
const buildRefreshUrl = () => {
|
|
5895
|
+
if (!config.refreshTokenEndpoint) {
|
|
5896
|
+
return `${getBaseUrl(config?.baseUrl)}${"/authentication/oauth2/token" /* AUTH_TOKEN_PATH */}`;
|
|
5897
|
+
}
|
|
5898
|
+
const ep = String(config.refreshTokenEndpoint);
|
|
5899
|
+
if (/^https?:\/\//i.test(ep)) return ep;
|
|
5900
|
+
const cleanBase = String(config?.baseUrl || "").replace(/\/$/, "");
|
|
5901
|
+
const cleanEp = ep.startsWith("/") ? ep : `/${ep}`;
|
|
5902
|
+
return `${cleanBase}${cleanEp}`;
|
|
5903
|
+
};
|
|
5904
|
+
instance.interceptors.response.use(
|
|
5905
|
+
(response) => handleResponse(response),
|
|
5906
|
+
async (error) => {
|
|
5907
|
+
const handleError3 = async (err) => {
|
|
5908
|
+
if (!err.response) return err;
|
|
5909
|
+
const { data } = err.response;
|
|
5910
|
+
if (data && data.code === 400 && ["invalid_grant"].includes(data.data?.error)) {
|
|
5911
|
+
await clearAuthToken();
|
|
5912
|
+
}
|
|
5913
|
+
return data;
|
|
5914
|
+
};
|
|
5915
|
+
const originalRequest = error.config;
|
|
5916
|
+
if ((error.response?.status === 403 || error.response?.status === 401 || error.response?.status === 404) && ["TOKEN_EXPIRED", "AUTHEN_FAIL", 401, "ERR_2FA_006"].includes(
|
|
5917
|
+
error.response.data.code
|
|
5918
|
+
)) {
|
|
5919
|
+
if (isRefreshing) {
|
|
5920
|
+
return new Promise(function(resolve, reject) {
|
|
5921
|
+
failedQueue.push({ resolve, reject });
|
|
5922
|
+
}).then((newToken) => {
|
|
5923
|
+
originalRequest.headers["Authorization"] = "Bearer " + newToken;
|
|
5924
|
+
originalRequest.data = updateTokenParamInOriginalRequest(
|
|
5925
|
+
originalRequest,
|
|
5926
|
+
newToken
|
|
5927
|
+
);
|
|
5928
|
+
return instance.request(originalRequest);
|
|
5929
|
+
}).catch(async (err) => {
|
|
5930
|
+
if ((err.response?.status === 400 || err.response?.status === 401) && ["invalid_grant"].includes(err.response.data.error)) {
|
|
5931
|
+
await clearAuthToken();
|
|
5932
|
+
}
|
|
5933
|
+
});
|
|
5934
|
+
}
|
|
5935
|
+
const browserSession = await sessionStorage2.getBrowserSession();
|
|
5936
|
+
const refreshToken = await localStorage2.getRefreshToken();
|
|
5937
|
+
const accessTokenExp = await localStorage2.getAccessToken();
|
|
5938
|
+
isRefreshing = true;
|
|
5939
|
+
if (!refreshToken && (!browserSession || browserSession == "unActive")) {
|
|
5940
|
+
await clearAuthToken();
|
|
5941
|
+
} else {
|
|
5942
|
+
const payload = Object.fromEntries(
|
|
5943
|
+
Object.entries({
|
|
5944
|
+
refresh_token: refreshToken,
|
|
5945
|
+
grant_type: "refresh_token",
|
|
5946
|
+
client_id: config.config.clientId,
|
|
5947
|
+
client_secret: config.config.clientSecret
|
|
5948
|
+
}).filter(([_, v]) => !!v)
|
|
5949
|
+
);
|
|
5950
|
+
const refreshUrl = buildRefreshUrl();
|
|
5951
|
+
return new Promise(function(resolve) {
|
|
5952
|
+
axios.post(refreshUrl, payload, {
|
|
5953
|
+
headers: {
|
|
5954
|
+
"Content-Type": config.refreshTokenEndpoint ? "application/x-www-form-urlencoded" : "multipart/form-data",
|
|
5955
|
+
Authorization: `Bearer ${accessTokenExp}`
|
|
5956
|
+
}
|
|
5957
|
+
}).then(async (res) => {
|
|
5958
|
+
const data = res.data;
|
|
5959
|
+
await localStorage2.setToken(data.access_token);
|
|
5960
|
+
await localStorage2.setRefreshToken(data.refresh_token);
|
|
5961
|
+
axios.defaults.headers.common["Authorization"] = "Bearer " + data.access_token;
|
|
5962
|
+
originalRequest.headers["Authorization"] = "Bearer " + data.access_token;
|
|
5963
|
+
originalRequest.data = updateTokenParamInOriginalRequest(
|
|
5964
|
+
originalRequest,
|
|
5965
|
+
data.access_token
|
|
5966
|
+
);
|
|
5967
|
+
processQueue(null, data.access_token);
|
|
5968
|
+
resolve(instance.request(originalRequest));
|
|
5969
|
+
}).catch(async (err) => {
|
|
5970
|
+
if (err && (err?.error_code === "AUTHEN_FAIL" || err?.error_code === "TOKEN_EXPIRED" || err?.error_code === "TOKEN_INCORRECT" || err?.code === "ERR_2FA_006")) {
|
|
5971
|
+
await clearAuthToken();
|
|
5972
|
+
}
|
|
5973
|
+
if (err && err.response) {
|
|
5974
|
+
const { error_code } = err.response?.data || {};
|
|
5975
|
+
const { code } = err;
|
|
5976
|
+
if (error_code === "AUTHEN_FAIL" || code === "ERR_2FA_006") {
|
|
5977
|
+
await clearAuthToken();
|
|
5978
|
+
}
|
|
5979
|
+
}
|
|
5980
|
+
processQueue(err, null);
|
|
5981
|
+
}).finally(() => {
|
|
5982
|
+
isRefreshing = false;
|
|
5983
|
+
});
|
|
5984
|
+
});
|
|
5985
|
+
}
|
|
5986
|
+
}
|
|
5987
|
+
return Promise.reject(await handleError3(error));
|
|
5988
|
+
}
|
|
5989
|
+
);
|
|
5897
5990
|
instance.interceptors.response.use(
|
|
5898
5991
|
(response) => {
|
|
5899
5992
|
return handleResponse(response);
|
|
@@ -5913,7 +6006,6 @@ var axiosClient = {
|
|
|
5913
6006
|
if ((error.response?.status === 403 || error.response?.status === 401 || error.response?.status === 404) && ["TOKEN_EXPIRED", "AUTHEN_FAIL", 401, "ERR_2FA_006"].includes(
|
|
5914
6007
|
error.response.data.code
|
|
5915
6008
|
)) {
|
|
5916
|
-
console.log("isRefreshing", isRefreshing);
|
|
5917
6009
|
if (isRefreshing) {
|
|
5918
6010
|
return new Promise(function(resolve, reject) {
|
|
5919
6011
|
failedQueue.push({ resolve, reject });
|
|
@@ -5935,7 +6027,6 @@ var axiosClient = {
|
|
|
5935
6027
|
const accessTokenExp = await localStorage2.getAccessToken();
|
|
5936
6028
|
isRefreshing = true;
|
|
5937
6029
|
if (!refreshToken && (!browserSession || browserSession == "unActive")) {
|
|
5938
|
-
console.log("222");
|
|
5939
6030
|
await clearAuthToken();
|
|
5940
6031
|
} else {
|
|
5941
6032
|
const payload = Object.fromEntries(
|
|
@@ -5946,7 +6037,6 @@ var axiosClient = {
|
|
|
5946
6037
|
client_secret: config.config.clientSecret
|
|
5947
6038
|
}).filter(([_, value]) => !!value)
|
|
5948
6039
|
);
|
|
5949
|
-
console.log("111");
|
|
5950
6040
|
return new Promise(function(resolve) {
|
|
5951
6041
|
axios.post(
|
|
5952
6042
|
`${config?.baseUrl}${config.refreshTokenEndpoint ?? "/authentication/oauth2/token" /* AUTH_TOKEN_PATH */}`,
|
|
@@ -8385,6 +8475,18 @@ var useGetNotifications = ({
|
|
|
8385
8475
|
};
|
|
8386
8476
|
var use_get_notifications_default = useGetNotifications;
|
|
8387
8477
|
|
|
8478
|
+
// src/hooks/view/use-get-version.ts
|
|
8479
|
+
import { useMutation as useMutation79 } from "@tanstack/react-query";
|
|
8480
|
+
var useGetVersion = () => {
|
|
8481
|
+
const { getVersion } = useViewService();
|
|
8482
|
+
return useMutation79({
|
|
8483
|
+
mutationFn: () => {
|
|
8484
|
+
return getVersion();
|
|
8485
|
+
}
|
|
8486
|
+
});
|
|
8487
|
+
};
|
|
8488
|
+
var use_get_version_default = useGetVersion;
|
|
8489
|
+
|
|
8388
8490
|
// src/hooks/chart/use-read-group.ts
|
|
8389
8491
|
import { useQuery as useQuery24 } from "@tanstack/react-query";
|
|
8390
8492
|
var useReadGroup = (services, xNode, body, enabled) => {
|
|
@@ -8532,7 +8634,8 @@ var ServiceProvider = ({
|
|
|
8532
8634
|
useGetPinCode: use_get_pin_code_default,
|
|
8533
8635
|
useReadGroup: use_read_group_default,
|
|
8534
8636
|
useGetNotifications: use_get_notifications_default,
|
|
8535
|
-
useGetDataChart: use_get_data_chart_default
|
|
8637
|
+
useGetDataChart: use_get_data_chart_default,
|
|
8638
|
+
useGetVersion: use_get_version_default
|
|
8536
8639
|
};
|
|
8537
8640
|
return /* @__PURE__ */ jsx6(ServiceContext.Provider, { value: services, children });
|
|
8538
8641
|
};
|
package/dist/services.js
CHANGED
|
@@ -3175,12 +3175,15 @@ var import_react_query102 = require("@tanstack/react-query");
|
|
|
3175
3175
|
// src/hooks/view/use-get-notifications.ts
|
|
3176
3176
|
var import_react_query103 = require("@tanstack/react-query");
|
|
3177
3177
|
|
|
3178
|
-
// src/hooks/
|
|
3178
|
+
// src/hooks/view/use-get-version.ts
|
|
3179
3179
|
var import_react_query104 = require("@tanstack/react-query");
|
|
3180
3180
|
|
|
3181
|
-
// src/hooks/chart/use-
|
|
3181
|
+
// src/hooks/chart/use-read-group.ts
|
|
3182
3182
|
var import_react_query105 = require("@tanstack/react-query");
|
|
3183
3183
|
|
|
3184
|
+
// src/hooks/chart/use-get-data-chart.ts
|
|
3185
|
+
var import_react_query106 = require("@tanstack/react-query");
|
|
3186
|
+
|
|
3184
3187
|
// src/provider/service-provider.tsx
|
|
3185
3188
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
3186
3189
|
var ServiceContext = (0, import_react4.createContext)(null);
|
package/dist/services.mjs
CHANGED
|
@@ -3130,6 +3130,9 @@ import { useMutation as useMutation78 } from "@tanstack/react-query";
|
|
|
3130
3130
|
// src/hooks/view/use-get-notifications.ts
|
|
3131
3131
|
import { useQuery as useQuery23 } from "@tanstack/react-query";
|
|
3132
3132
|
|
|
3133
|
+
// src/hooks/view/use-get-version.ts
|
|
3134
|
+
import { useMutation as useMutation79 } from "@tanstack/react-query";
|
|
3135
|
+
|
|
3133
3136
|
// src/hooks/chart/use-read-group.ts
|
|
3134
3137
|
import { useQuery as useQuery24 } from "@tanstack/react-query";
|
|
3135
3138
|
|