@aifabrix/miso-client 3.2.0 → 3.3.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/README.md +57 -2
- package/dist/api/auth-cache.api.d.ts +52 -0
- package/dist/api/auth-cache.api.d.ts.map +1 -0
- package/dist/api/auth-cache.api.js +125 -0
- package/dist/api/auth-cache.api.js.map +1 -0
- package/dist/api/auth-login.api.d.ts +52 -0
- package/dist/api/auth-login.api.d.ts.map +1 -0
- package/dist/api/auth-login.api.js +102 -0
- package/dist/api/auth-login.api.js.map +1 -0
- package/dist/api/auth-token.api.d.ts +46 -0
- package/dist/api/auth-token.api.d.ts.map +1 -0
- package/dist/api/auth-token.api.js +90 -0
- package/dist/api/auth-token.api.js.map +1 -0
- package/dist/api/auth-user.api.d.ts +43 -0
- package/dist/api/auth-user.api.d.ts.map +1 -0
- package/dist/api/auth-user.api.js +87 -0
- package/dist/api/auth-user.api.js.map +1 -0
- package/dist/api/auth.api.d.ts +48 -0
- package/dist/api/auth.api.d.ts.map +1 -0
- package/dist/api/auth.api.js +152 -0
- package/dist/api/auth.api.js.map +1 -0
- package/dist/api/index.d.ts +39 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +31 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/logs-create.api.d.ts +32 -0
- package/dist/api/logs-create.api.d.ts.map +1 -0
- package/dist/api/logs-create.api.js +63 -0
- package/dist/api/logs-create.api.js.map +1 -0
- package/dist/api/logs-export.api.d.ts +24 -0
- package/dist/api/logs-export.api.d.ts.map +1 -0
- package/dist/api/logs-export.api.js +43 -0
- package/dist/api/logs-export.api.js.map +1 -0
- package/dist/api/logs-list.api.d.ts +63 -0
- package/dist/api/logs-list.api.d.ts.map +1 -0
- package/dist/api/logs-list.api.js +155 -0
- package/dist/api/logs-list.api.js.map +1 -0
- package/dist/api/logs-stats.api.d.ts +48 -0
- package/dist/api/logs-stats.api.d.ts.map +1 -0
- package/dist/api/logs-stats.api.js +107 -0
- package/dist/api/logs-stats.api.js.map +1 -0
- package/dist/api/logs.api.d.ts +35 -0
- package/dist/api/logs.api.d.ts.map +1 -0
- package/dist/api/logs.api.js +71 -0
- package/dist/api/logs.api.js.map +1 -0
- package/dist/api/permissions.api.d.ts +31 -0
- package/dist/api/permissions.api.d.ts.map +1 -0
- package/dist/api/permissions.api.js +62 -0
- package/dist/api/permissions.api.js.map +1 -0
- package/dist/api/roles.api.d.ts +31 -0
- package/dist/api/roles.api.d.ts.map +1 -0
- package/dist/api/roles.api.js +62 -0
- package/dist/api/roles.api.js.map +1 -0
- package/dist/api/types/auth.types.d.ts +293 -0
- package/dist/api/types/auth.types.d.ts.map +1 -0
- package/dist/api/types/auth.types.js +7 -0
- package/dist/api/types/auth.types.js.map +1 -0
- package/dist/api/types/logs.types.d.ts +266 -0
- package/dist/api/types/logs.types.d.ts.map +1 -0
- package/dist/api/types/logs.types.js +7 -0
- package/dist/api/types/logs.types.js.map +1 -0
- package/dist/api/types/permissions.types.d.ts +32 -0
- package/dist/api/types/permissions.types.d.ts.map +1 -0
- package/dist/api/types/permissions.types.js +7 -0
- package/dist/api/types/permissions.types.js.map +1 -0
- package/dist/api/types/roles.types.d.ts +32 -0
- package/dist/api/types/roles.types.d.ts.map +1 -0
- package/dist/api/types/roles.types.js +7 -0
- package/dist/api/types/roles.types.js.map +1 -0
- package/dist/express/client-token-endpoint.d.ts.map +1 -1
- package/dist/express/client-token-endpoint.js +136 -13
- package/dist/express/client-token-endpoint.js.map +1 -1
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -6
- package/dist/index.js.map +1 -1
- package/dist/services/auth.service.d.ts +28 -4
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +186 -16
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/browser-permission.service.d.ts +3 -1
- package/dist/services/browser-permission.service.d.ts.map +1 -1
- package/dist/services/browser-permission.service.js +32 -16
- package/dist/services/browser-permission.service.js.map +1 -1
- package/dist/services/browser-role.service.d.ts +3 -1
- package/dist/services/browser-role.service.d.ts.map +1 -1
- package/dist/services/browser-role.service.js +32 -16
- package/dist/services/browser-role.service.js.map +1 -1
- package/dist/services/logger.service.d.ts +102 -24
- package/dist/services/logger.service.d.ts.map +1 -1
- package/dist/services/logger.service.js +225 -51
- package/dist/services/logger.service.js.map +1 -1
- package/dist/services/permission.service.d.ts +3 -1
- package/dist/services/permission.service.d.ts.map +1 -1
- package/dist/services/permission.service.js +32 -16
- package/dist/services/permission.service.js.map +1 -1
- package/dist/services/redis.service.d.ts.map +1 -1
- package/dist/services/redis.service.js +3 -6
- package/dist/services/redis.service.js.map +1 -1
- package/dist/services/role.service.d.ts +3 -1
- package/dist/services/role.service.d.ts.map +1 -1
- package/dist/services/role.service.js +25 -13
- package/dist/services/role.service.js.map +1 -1
- package/dist/types/config.types.d.ts +22 -0
- package/dist/types/config.types.d.ts.map +1 -1
- package/dist/types/config.types.js.map +1 -1
- package/dist/types/data-client.types.d.ts +10 -0
- package/dist/types/data-client.types.d.ts.map +1 -1
- package/dist/types/data-client.types.js.map +1 -1
- package/dist/utils/audit-log-queue.d.ts +7 -0
- package/dist/utils/audit-log-queue.d.ts.map +1 -1
- package/dist/utils/audit-log-queue.js +29 -8
- package/dist/utils/audit-log-queue.js.map +1 -1
- package/dist/utils/data-client-auth.d.ts +17 -4
- package/dist/utils/data-client-auth.d.ts.map +1 -1
- package/dist/utils/data-client-auth.js +215 -131
- package/dist/utils/data-client-auth.js.map +1 -1
- package/dist/utils/data-client-auto-init.d.ts.map +1 -1
- package/dist/utils/data-client-auto-init.js +55 -11
- package/dist/utils/data-client-auto-init.js.map +1 -1
- package/dist/utils/data-client-redirect.d.ts +34 -4
- package/dist/utils/data-client-redirect.d.ts.map +1 -1
- package/dist/utils/data-client-redirect.js +142 -254
- package/dist/utils/data-client-redirect.js.map +1 -1
- package/dist/utils/data-client-request.d.ts +8 -1
- package/dist/utils/data-client-request.d.ts.map +1 -1
- package/dist/utils/data-client-request.js +25 -3
- package/dist/utils/data-client-request.js.map +1 -1
- package/dist/utils/data-client.d.ts +13 -0
- package/dist/utils/data-client.d.ts.map +1 -1
- package/dist/utils/data-client.js +86 -5
- package/dist/utils/data-client.js.map +1 -1
- package/dist/utils/logging-helpers.d.ts +51 -0
- package/dist/utils/logging-helpers.d.ts.map +1 -0
- package/dist/utils/logging-helpers.js +57 -0
- package/dist/utils/logging-helpers.js.map +1 -0
- package/dist/utils/request-context.d.ts +32 -0
- package/dist/utils/request-context.d.ts.map +1 -0
- package/dist/utils/request-context.js +81 -0
- package/dist/utils/request-context.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,171 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* DataClient redirect
|
|
4
|
-
* Handles redirect to login
|
|
3
|
+
* DataClient redirect utilities
|
|
4
|
+
* Handles redirect to login/logout flows
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.getValidatedRedirectUrl = getValidatedRedirectUrl;
|
|
8
8
|
exports.redirectToLogin = redirectToLogin;
|
|
9
|
+
exports.logout = logout;
|
|
9
10
|
const data_client_auth_1 = require("./data-client-auth");
|
|
10
11
|
const data_client_utils_1 = require("./data-client-utils");
|
|
11
|
-
/**
|
|
12
|
-
* Build login request headers with client token
|
|
13
|
-
*/
|
|
14
|
-
function buildLoginHeaders(clientToken) {
|
|
15
|
-
const headers = {
|
|
16
|
-
"Content-Type": "application/json",
|
|
17
|
-
};
|
|
18
|
-
if (clientToken) {
|
|
19
|
-
headers["x-client-token"] = clientToken;
|
|
20
|
-
}
|
|
21
|
-
return headers;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Build login endpoint URL with redirect parameter
|
|
25
|
-
*/
|
|
26
|
-
function buildLoginEndpointUrl(controllerUrl, redirectUrl) {
|
|
27
|
-
const loginEndpoint = `${controllerUrl}/api/v1/auth/login`;
|
|
28
|
-
const url = new URL(loginEndpoint);
|
|
29
|
-
url.searchParams.set("redirect", redirectUrl);
|
|
30
|
-
return url.toString();
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Handle non-OK response from controller login endpoint
|
|
34
|
-
*/
|
|
35
|
-
function handleLoginErrorResponse(response, controllerUrl, clientToken) {
|
|
36
|
-
const errorTextPromise = response.text().catch(() => 'Unable to read error response');
|
|
37
|
-
// Create user-friendly error message based on status code
|
|
38
|
-
let userFriendlyMessage = `Login request failed: ${response.status} ${response.statusText}`;
|
|
39
|
-
if (response.status === 401 || response.status === 403) {
|
|
40
|
-
userFriendlyMessage = "Authentication failed: Invalid client credentials. Please check your configuration.";
|
|
41
|
-
}
|
|
42
|
-
else if (response.status === 404) {
|
|
43
|
-
userFriendlyMessage = `Authentication endpoint not found at ${controllerUrl}/api/v1/auth/login. Please verify your controller URL configuration.`;
|
|
44
|
-
}
|
|
45
|
-
else if (response.status >= 500) {
|
|
46
|
-
userFriendlyMessage = "Authentication server error. Please try again later or contact support.";
|
|
47
|
-
}
|
|
48
|
-
return errorTextPromise.then((errorText) => {
|
|
49
|
-
const error = new Error(userFriendlyMessage);
|
|
50
|
-
error.details = {
|
|
51
|
-
status: response.status,
|
|
52
|
-
statusText: response.statusText,
|
|
53
|
-
errorText,
|
|
54
|
-
controllerUrl,
|
|
55
|
-
hasClientToken: !!clientToken,
|
|
56
|
-
};
|
|
57
|
-
throw error;
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Extract login URL from controller response
|
|
62
|
-
*/
|
|
63
|
-
function extractLoginUrl(data) {
|
|
64
|
-
return data.data?.loginUrl || data.loginUrl || null;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Create user-friendly error message for network errors
|
|
68
|
-
*/
|
|
69
|
-
function createNetworkErrorMessage(errorMessage, controllerUrl, clientToken) {
|
|
70
|
-
if (errorMessage.includes("Failed to fetch") || errorMessage.includes("NetworkError") || errorMessage.includes("ERR_CONNECTION_REFUSED")) {
|
|
71
|
-
return `Cannot connect to authentication server at ${controllerUrl || 'unknown'}. Please check your network connection and server configuration.`;
|
|
72
|
-
}
|
|
73
|
-
if (!clientToken) {
|
|
74
|
-
return "Client token is missing. Please initialize DataClient with proper credentials.";
|
|
75
|
-
}
|
|
76
|
-
return `Login failed: ${errorMessage}`;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Validate controller URL configuration
|
|
80
|
-
*/
|
|
81
|
-
function validateControllerUrl(config) {
|
|
82
|
-
const controllerUrl = (0, data_client_auth_1.getControllerUrl)(config.misoConfig);
|
|
83
|
-
if (!controllerUrl) {
|
|
84
|
-
const error = new Error("Controller URL is not configured. Please configure controllerUrl or controllerPublicUrl in your DataClient configuration.");
|
|
85
|
-
error.details = {
|
|
86
|
-
hasMisoConfig: !!config.misoConfig,
|
|
87
|
-
controllerUrl: config.misoConfig?.controllerUrl,
|
|
88
|
-
controllerPublicUrl: config.misoConfig?.controllerPublicUrl,
|
|
89
|
-
loginUrl: config.loginUrl,
|
|
90
|
-
};
|
|
91
|
-
throw error;
|
|
92
|
-
}
|
|
93
|
-
return controllerUrl;
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Call controller login endpoint
|
|
97
|
-
*/
|
|
98
|
-
async function callControllerLoginEndpoint(endpointUrl, headers, controllerUrl, clientToken) {
|
|
99
|
-
let response;
|
|
100
|
-
// Add timeout to prevent hanging (30 seconds)
|
|
101
|
-
const timeout = 30000;
|
|
102
|
-
const controller = new AbortController();
|
|
103
|
-
const timeoutId = setTimeout(() => {
|
|
104
|
-
controller.abort();
|
|
105
|
-
}, timeout);
|
|
106
|
-
try {
|
|
107
|
-
response = await fetch(endpointUrl, {
|
|
108
|
-
method: "GET",
|
|
109
|
-
headers,
|
|
110
|
-
credentials: "include",
|
|
111
|
-
signal: controller.signal,
|
|
112
|
-
redirect: "manual", // Don't follow redirects automatically - we'll handle them explicitly
|
|
113
|
-
});
|
|
114
|
-
clearTimeout(timeoutId);
|
|
115
|
-
}
|
|
116
|
-
catch (fetchError) {
|
|
117
|
-
clearTimeout(timeoutId);
|
|
118
|
-
const errorMessage = fetchError instanceof Error ? fetchError.message : String(fetchError);
|
|
119
|
-
const errorName = fetchError instanceof Error ? fetchError.name : "Unknown";
|
|
120
|
-
const isAbortError = errorName === "AbortError" || errorMessage.includes("aborted");
|
|
121
|
-
const isNetworkError = errorName === "TypeError" || errorMessage.includes("Failed to fetch");
|
|
122
|
-
// Create user-friendly error message
|
|
123
|
-
let userFriendlyMessage = `Failed to fetch login endpoint: ${errorMessage}`;
|
|
124
|
-
if (isAbortError) {
|
|
125
|
-
userFriendlyMessage = `Request timeout: The login endpoint did not respond within ${timeout}ms. Please check your network connection and server status.`;
|
|
126
|
-
}
|
|
127
|
-
else if (isNetworkError) {
|
|
128
|
-
if (errorMessage.includes("CORS") || errorMessage.includes("cross-origin")) {
|
|
129
|
-
userFriendlyMessage = `CORS error: Cannot connect to ${controllerUrl}. The server may not allow cross-origin requests. Please check CORS configuration.`;
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
userFriendlyMessage = `Network error: Cannot connect to ${controllerUrl}. Please check your network connection and ensure the server is running.`;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
// Re-throw with more context
|
|
136
|
-
const networkError = new Error(userFriendlyMessage);
|
|
137
|
-
networkError.details = {
|
|
138
|
-
endpointUrl,
|
|
139
|
-
hasClientToken: !!clientToken,
|
|
140
|
-
originalError: errorMessage,
|
|
141
|
-
errorName,
|
|
142
|
-
isTimeout: isAbortError,
|
|
143
|
-
isCorsError: isNetworkError && (errorMessage.includes("CORS") || errorMessage.includes("cross-origin")),
|
|
144
|
-
};
|
|
145
|
-
throw networkError;
|
|
146
|
-
}
|
|
147
|
-
// Handle case where response is undefined (shouldn't happen, but be safe)
|
|
148
|
-
if (!response) {
|
|
149
|
-
throw new Error("Failed to fetch login endpoint: response is undefined");
|
|
150
|
-
}
|
|
151
|
-
// Check for redirect status codes - these should be handled, not followed automatically
|
|
152
|
-
if (response.status >= 300 && response.status < 400) {
|
|
153
|
-
// Don't follow redirect automatically - treat as error
|
|
154
|
-
throw new Error(`Server returned redirect status ${response.status}. This should not happen for login endpoint.`);
|
|
155
|
-
}
|
|
156
|
-
if (!response.ok) {
|
|
157
|
-
throw await handleLoginErrorResponse(response, controllerUrl, clientToken);
|
|
158
|
-
}
|
|
159
|
-
let data;
|
|
160
|
-
try {
|
|
161
|
-
data = (await response.json());
|
|
162
|
-
}
|
|
163
|
-
catch (jsonError) {
|
|
164
|
-
const errorMessage = jsonError instanceof Error ? jsonError.message : String(jsonError);
|
|
165
|
-
throw new Error(`Failed to parse login response: ${errorMessage}. Status: ${response.status} ${response.statusText}`);
|
|
166
|
-
}
|
|
167
|
-
return data;
|
|
168
|
-
}
|
|
169
12
|
/**
|
|
170
13
|
* Validate redirect URL for safety and format
|
|
171
14
|
* Checks for valid URL format and safe protocols (http, https)
|
|
@@ -232,114 +75,159 @@ function getValidatedRedirectUrl(url, fallbackUrl) {
|
|
|
232
75
|
return null;
|
|
233
76
|
}
|
|
234
77
|
/**
|
|
235
|
-
*
|
|
236
|
-
*
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
redirectError: redirectError instanceof Error ? redirectError.message : String(redirectError),
|
|
253
|
-
};
|
|
254
|
-
throw error;
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
// Controller did not return a valid login URL - throw error (do NOT use fallback)
|
|
258
|
-
const error = new Error("Controller did not return a valid login URL. Please check your controller configuration and ensure the login endpoint is working correctly.");
|
|
259
|
-
error.details = {
|
|
260
|
-
controllerUrl,
|
|
261
|
-
responseData: data,
|
|
262
|
-
hasClientToken: !!clientToken,
|
|
263
|
-
originalLoginUrl: loginUrl,
|
|
264
|
-
validationFailed: true,
|
|
265
|
-
};
|
|
266
|
-
throw error;
|
|
267
|
-
}
|
|
268
|
-
/**
|
|
269
|
-
* Handle login errors
|
|
270
|
-
* IMPORTANT: Does NOT redirect on error - throws error instead
|
|
271
|
-
* Redirects should only happen on successful responses
|
|
272
|
-
* @param error - The error that occurred
|
|
273
|
-
* @param controllerUrl - Controller URL
|
|
274
|
-
* @param clientToken - Client token if available
|
|
78
|
+
* Redirect to controller login page
|
|
79
|
+
* Redirects user browser directly to controller's login URL with client token
|
|
80
|
+
* NO API CALLS - just browser redirect
|
|
81
|
+
*
|
|
82
|
+
* Flow:
|
|
83
|
+
* 1. User visits: http://localhost:4111/dataplane/
|
|
84
|
+
* 2. redirectToLogin() redirects to: {controllerPublicUrl}{loginUrl}?redirect={redirectUrl}&x-client-token={token}
|
|
85
|
+
* 3. Controller handles OAuth flow and redirects back after authentication
|
|
86
|
+
* 4. Controller redirects to: {redirectUrl}#token={userToken}
|
|
87
|
+
* 5. DataClient.handleOAuthCallback() extracts token from hash and stores securely
|
|
88
|
+
*
|
|
89
|
+
* Security:
|
|
90
|
+
* - Token is passed in hash fragment (#token=...) not query parameter
|
|
91
|
+
* - Hash fragments are NOT sent to server (not in logs)
|
|
92
|
+
* - Hash fragments are NOT stored in browser history
|
|
93
|
+
* - Token is immediately removed from URL after extraction
|
|
94
|
+
*
|
|
275
95
|
* @param config - DataClient configuration
|
|
276
|
-
* @param
|
|
96
|
+
* @param getClientTokenFn - Function to get client token
|
|
97
|
+
* @param redirectUrl - Optional redirect URL to return to after login (defaults to current page URL)
|
|
277
98
|
*/
|
|
278
|
-
function
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
const _errorStack = error instanceof Error ? error.stack : undefined;
|
|
282
|
-
const errorDetails = error?.details;
|
|
283
|
-
// Log error - test expects Error object as second parameter
|
|
284
|
-
if (!skipLogging) {
|
|
285
|
-
const logError = error instanceof Error ? error : new Error(String(error));
|
|
286
|
-
console.error("[redirectToLogin] Failed to get login URL from controller:", logError);
|
|
287
|
-
}
|
|
288
|
-
// DO NOT redirect on error - throw error instead
|
|
289
|
-
// Redirects should only happen when fetch succeeds and returns valid URL
|
|
290
|
-
// For non-network errors, throw immediately
|
|
291
|
-
if (error instanceof Error && error.message && !error.message.includes("Failed to fetch")) {
|
|
292
|
-
throw error;
|
|
99
|
+
async function redirectToLogin(config, getClientTokenFn, redirectUrl) {
|
|
100
|
+
if (!(0, data_client_utils_1.isBrowser)()) {
|
|
101
|
+
return;
|
|
293
102
|
}
|
|
294
|
-
const
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
loginUrl: config.loginUrl,
|
|
103
|
+
const currentUrl = globalThis.window.location.href;
|
|
104
|
+
const finalRedirectUrl = redirectUrl || currentUrl;
|
|
105
|
+
// Get controller public URL (for browser environments)
|
|
106
|
+
const controllerUrl = (0, data_client_auth_1.getControllerUrl)(config.misoConfig);
|
|
107
|
+
if (!controllerUrl) {
|
|
108
|
+
const error = new Error("Controller URL is not configured. Please configure controllerUrl or controllerPublicUrl in your DataClient configuration.");
|
|
109
|
+
error.details = {
|
|
302
110
|
hasMisoConfig: !!config.misoConfig,
|
|
303
111
|
controllerUrl: config.misoConfig?.controllerUrl,
|
|
304
112
|
controllerPublicUrl: config.misoConfig?.controllerPublicUrl,
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
113
|
+
controllerPrivateUrl: config.misoConfig?.controllerPrivateUrl,
|
|
114
|
+
};
|
|
115
|
+
throw error;
|
|
116
|
+
}
|
|
117
|
+
// Get client token
|
|
118
|
+
const clientToken = await getClientTokenFn();
|
|
119
|
+
// Get login URL from config (defaults to '/login')
|
|
120
|
+
// Validate that loginUrl is not an API endpoint (should be a page, not /api/...)
|
|
121
|
+
let loginPath = config.loginUrl || '/login';
|
|
122
|
+
// Warn if loginUrl looks like an API endpoint (common mistake)
|
|
123
|
+
if (loginPath.startsWith('/api/')) {
|
|
124
|
+
console.warn(`⚠️ Warning: loginUrl is set to an API endpoint (${loginPath}). ` +
|
|
125
|
+
`redirectToLogin() should redirect to a login PAGE (e.g., '/login'), not an API endpoint. ` +
|
|
126
|
+
`Using default '/login' instead.`);
|
|
127
|
+
loginPath = '/login';
|
|
128
|
+
}
|
|
129
|
+
// Build full controller login URL
|
|
130
|
+
// If loginPath is already a full URL, use it; otherwise prepend controllerUrl
|
|
131
|
+
let loginUrl;
|
|
132
|
+
if (/^https?:\/\//i.test(loginPath)) {
|
|
133
|
+
loginUrl = new URL(loginPath);
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
loginUrl = new URL(loginPath, controllerUrl);
|
|
137
|
+
}
|
|
138
|
+
// Add redirect parameter
|
|
139
|
+
loginUrl.searchParams.set('redirect', finalRedirectUrl);
|
|
140
|
+
// Add client token as query parameter (controller will read it)
|
|
141
|
+
if (clientToken) {
|
|
142
|
+
loginUrl.searchParams.set('x-client-token', clientToken);
|
|
143
|
+
}
|
|
144
|
+
// Redirect user directly to controller login page
|
|
145
|
+
// Controller handles OAuth flow and redirects back after authentication
|
|
146
|
+
globalThis.window.location.href = loginUrl.toString();
|
|
311
147
|
}
|
|
312
148
|
/**
|
|
313
|
-
*
|
|
314
|
-
*
|
|
149
|
+
* Logout user and redirect to controller logout page
|
|
150
|
+
* Clears tokens from localStorage, clears cache, and redirects to controller logout URL
|
|
151
|
+
* NO API CALLS - just browser redirect
|
|
152
|
+
* Controller handles the logout process
|
|
153
|
+
*
|
|
315
154
|
* @param config - DataClient configuration
|
|
155
|
+
* @param getTokenFn - Function to get user token
|
|
316
156
|
* @param getClientTokenFn - Function to get client token
|
|
317
|
-
* @param
|
|
157
|
+
* @param clearCacheFn - Function to clear HTTP cache
|
|
158
|
+
* @param redirectUrl - Optional redirect URL after logout (defaults to logoutUrl or loginUrl)
|
|
159
|
+
* @param _misoClient - MisoClient instance (not used, kept for API compatibility)
|
|
318
160
|
*/
|
|
319
|
-
async function
|
|
320
|
-
if (!(0, data_client_utils_1.isBrowser)())
|
|
161
|
+
async function logout(config, getTokenFn, getClientTokenFn, clearCacheFn, redirectUrl, _misoClient) {
|
|
162
|
+
if (!(0, data_client_utils_1.isBrowser)())
|
|
163
|
+
return;
|
|
164
|
+
// Get tokens BEFORE clearing (needed for passing to controller)
|
|
165
|
+
const token = getTokenFn();
|
|
166
|
+
const clientToken = await getClientTokenFn();
|
|
167
|
+
// Clear tokens from localStorage
|
|
168
|
+
const keys = config.tokenKeys || ["token", "accessToken", "authToken"];
|
|
169
|
+
keys.forEach(key => {
|
|
170
|
+
try {
|
|
171
|
+
const storage = globalThis.localStorage;
|
|
172
|
+
if (storage) {
|
|
173
|
+
storage.removeItem(key);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
catch (e) {
|
|
177
|
+
// Ignore localStorage errors (SSR, private browsing, etc.)
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
// Clear HTTP cache
|
|
181
|
+
clearCacheFn();
|
|
182
|
+
// Get controller public URL (for browser environments)
|
|
183
|
+
const controllerUrl = (0, data_client_auth_1.getControllerUrl)(config.misoConfig);
|
|
184
|
+
if (!controllerUrl) {
|
|
185
|
+
// Fallback to local redirect if controller URL not configured
|
|
186
|
+
const finalRedirectUrl = redirectUrl || config.logoutUrl || config.loginUrl || "/login";
|
|
187
|
+
const origin = globalThis.window.location.origin;
|
|
188
|
+
const fullUrl = /^https?:\/\//i.test(finalRedirectUrl)
|
|
189
|
+
? finalRedirectUrl
|
|
190
|
+
: `${origin}${finalRedirectUrl.startsWith("/") ? finalRedirectUrl : `/${finalRedirectUrl}`}`;
|
|
191
|
+
const validatedUrl = getValidatedRedirectUrl(fullUrl);
|
|
192
|
+
if (validatedUrl) {
|
|
193
|
+
globalThis.window.location.href = validatedUrl;
|
|
194
|
+
}
|
|
321
195
|
return;
|
|
322
196
|
}
|
|
323
|
-
|
|
324
|
-
const
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
197
|
+
// Get logout URL from config (defaults to '/logout' or falls back to '/login')
|
|
198
|
+
const logoutPath = config.logoutUrl || config.loginUrl || '/logout';
|
|
199
|
+
// Build full controller logout URL
|
|
200
|
+
// If logoutPath is already a full URL, use it; otherwise prepend controllerUrl
|
|
201
|
+
let logoutUrl;
|
|
202
|
+
if (/^https?:\/\//i.test(logoutPath)) {
|
|
203
|
+
logoutUrl = new URL(logoutPath);
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
logoutUrl = new URL(logoutPath, controllerUrl);
|
|
207
|
+
}
|
|
208
|
+
// Determine redirect URL: redirectUrl param > logoutUrl config > loginUrl config > '/login'
|
|
209
|
+
const finalRedirectUrl = redirectUrl || config.logoutUrl || config.loginUrl || "/login";
|
|
210
|
+
// Construct full redirect URL (if relative, make absolute)
|
|
211
|
+
let fullRedirectUrl;
|
|
212
|
+
if (/^https?:\/\//i.test(finalRedirectUrl)) {
|
|
213
|
+
fullRedirectUrl = finalRedirectUrl;
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
const origin = globalThis.window.location.origin;
|
|
217
|
+
fullRedirectUrl = `${origin}${finalRedirectUrl.startsWith("/") ? finalRedirectUrl : `/${finalRedirectUrl}`}`;
|
|
218
|
+
}
|
|
219
|
+
logoutUrl.searchParams.set('redirect', fullRedirectUrl);
|
|
220
|
+
// Add client token as query parameter (controller will read it)
|
|
221
|
+
if (clientToken) {
|
|
222
|
+
logoutUrl.searchParams.set('x-client-token', clientToken);
|
|
336
223
|
}
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
// This line should never be reached since handleLoginError always throws
|
|
342
|
-
throw error;
|
|
224
|
+
// Add user token as query parameter if available (controller will read it)
|
|
225
|
+
// Token was retrieved before clearing localStorage
|
|
226
|
+
if (token) {
|
|
227
|
+
logoutUrl.searchParams.set('token', token);
|
|
343
228
|
}
|
|
229
|
+
// Redirect user directly to controller logout page
|
|
230
|
+
// Controller handles logout process and redirects back
|
|
231
|
+
globalThis.window.location.href = logoutUrl.toString();
|
|
344
232
|
}
|
|
345
233
|
//# sourceMappingURL=data-client-redirect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-client-redirect.js","sourceRoot":"","sources":["../../src/utils/data-client-redirect.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"data-client-redirect.js","sourceRoot":"","sources":["../../src/utils/data-client-redirect.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,13 @@
|
|
|
5
5
|
import { ApiRequestOptions, DataClientConfig, InterceptorConfig, CacheEntry } from "../types/data-client.types";
|
|
6
6
|
import { HasAnyTokenFn, GetTokenFn } from "./data-client-audit";
|
|
7
7
|
import { MisoClient } from "../index";
|
|
8
|
+
/**
|
|
9
|
+
* Token refresh callback function type
|
|
10
|
+
*/
|
|
11
|
+
export type RefreshUserTokenFn = () => Promise<{
|
|
12
|
+
token: string;
|
|
13
|
+
expiresIn: number;
|
|
14
|
+
} | null>;
|
|
8
15
|
/**
|
|
9
16
|
* Extract headers from Headers object or Record
|
|
10
17
|
*/
|
|
@@ -24,7 +31,7 @@ export declare function makeFetchRequest(method: string, url: string, config: Da
|
|
|
24
31
|
/**
|
|
25
32
|
* Execute HTTP request with retry logic
|
|
26
33
|
*/
|
|
27
|
-
export declare function executeHttpRequest<T>(method: string, fullUrl: string, endpoint: string, config: DataClientConfig, cache: Map<string, CacheEntry>, cacheKey: string, cacheEnabled: boolean, startTime: number, misoClient: MisoClient | null, hasAnyToken: HasAnyTokenFn, getToken: GetTokenFn, handleAuthError: () => void, interceptors: InterceptorConfig, metrics: {
|
|
34
|
+
export declare function executeHttpRequest<T>(method: string, fullUrl: string, endpoint: string, config: DataClientConfig, cache: Map<string, CacheEntry>, cacheKey: string, cacheEnabled: boolean, startTime: number, misoClient: MisoClient | null, hasAnyToken: HasAnyTokenFn, getToken: GetTokenFn, handleAuthError: () => void, refreshUserToken: RefreshUserTokenFn, interceptors: InterceptorConfig, metrics: {
|
|
28
35
|
totalRequests: number;
|
|
29
36
|
totalFailures: number;
|
|
30
37
|
responseTimes: number[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-client-request.d.ts","sourceRoot":"","sources":["../../src/utils/data-client-request.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAKhB,iBAAiB,EACjB,UAAU,EACX,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAsB,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC;;GAEG;AACH,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,GACnG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAsBpC;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CASrE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,GACnB,WAAW,CAkBb;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,QAAQ,CAAC,CAgEnB;AA0LD;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,EACrB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,WAAW,EAAE,aAAa,EAC1B,QAAQ,EAAE,UAAU,EACpB,eAAe,EAAE,MAAM,IAAI,EAC3B,YAAY,EAAE,iBAAiB,EAC/B,OAAO,EAAE;IACP,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB,EACD,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"data-client-request.d.ts","sourceRoot":"","sources":["../../src/utils/data-client-request.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAKhB,iBAAiB,EACjB,UAAU,EACX,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAsB,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAAC;AAE5F;;GAEG;AACH,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,GACnG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAsBpC;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CASrE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,GACnB,WAAW,CAkBb;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,QAAQ,CAAC,CAgEnB;AA0LD;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,EACrB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,WAAW,EAAE,aAAa,EAC1B,QAAQ,EAAE,UAAU,EACpB,eAAe,EAAE,MAAM,IAAI,EAC3B,gBAAgB,EAAE,kBAAkB,EACpC,YAAY,EAAE,iBAAiB,EAC/B,OAAO,EAAE;IACP,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB,EACD,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,CAAC,CAAC,CAqMZ"}
|
|
@@ -194,7 +194,7 @@ async function waitForRetry(attempt, baseDelay, maxDelay) {
|
|
|
194
194
|
/**
|
|
195
195
|
* Execute HTTP request with retry logic
|
|
196
196
|
*/
|
|
197
|
-
async function executeHttpRequest(method, fullUrl, endpoint, config, cache, cacheKey, cacheEnabled, startTime, misoClient, hasAnyToken, getToken, handleAuthError, interceptors, metrics, options) {
|
|
197
|
+
async function executeHttpRequest(method, fullUrl, endpoint, config, cache, cacheKey, cacheEnabled, startTime, misoClient, hasAnyToken, getToken, handleAuthError, refreshUserToken, interceptors, metrics, options) {
|
|
198
198
|
const maxRetries = options?.retries !== undefined
|
|
199
199
|
? options.retries
|
|
200
200
|
: config.retry?.maxRetries || 3;
|
|
@@ -203,6 +203,8 @@ async function executeHttpRequest(method, fullUrl, endpoint, config, cache, cach
|
|
|
203
203
|
const maxDelay = config.retry?.maxDelay || 10000;
|
|
204
204
|
// Flag to prevent retries when auth error is detected
|
|
205
205
|
let authErrorDetected = false;
|
|
206
|
+
// Flag to track if token refresh was attempted
|
|
207
|
+
let tokenRefreshAttempted = false;
|
|
206
208
|
// Internal recursive function to handle retries
|
|
207
209
|
async function attemptRequest(attempt) {
|
|
208
210
|
// If auth error was detected, don't make any more requests
|
|
@@ -214,9 +216,29 @@ async function executeHttpRequest(method, fullUrl, endpoint, config, cache, cach
|
|
|
214
216
|
try {
|
|
215
217
|
response = await makeFetchRequest(method, fullUrl, config, getToken, options);
|
|
216
218
|
responseStatus = response.status;
|
|
217
|
-
// CRITICAL: Check for 401/403 errors IMMEDIATELY
|
|
218
|
-
// Throw immediately without any retry logic
|
|
219
|
+
// CRITICAL: Check for 401/403 errors IMMEDIATELY
|
|
219
220
|
if (responseStatus === 401 || responseStatus === 403) {
|
|
221
|
+
// For 401 errors, try token refresh if callback is available (only once, on first attempt)
|
|
222
|
+
if (responseStatus === 401 && config.onTokenRefresh && refreshUserToken && attempt === 0 && !tokenRefreshAttempted) {
|
|
223
|
+
tokenRefreshAttempted = true; // Mark that we've attempted refresh
|
|
224
|
+
try {
|
|
225
|
+
const refreshResult = await refreshUserToken();
|
|
226
|
+
if (refreshResult && refreshResult.token) {
|
|
227
|
+
// Token refreshed successfully, retry the request with new token
|
|
228
|
+
// The token is already stored in localStorage by refreshUserToken,
|
|
229
|
+
// so getToken() will pick it up automatically
|
|
230
|
+
// Wait a small delay to ensure token is stored
|
|
231
|
+
await new Promise((resolve) => setTimeout(resolve, 10));
|
|
232
|
+
// Retry the request (will use new token from localStorage)
|
|
233
|
+
return attemptRequest(attempt + 1);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
catch (refreshError) {
|
|
237
|
+
// Token refresh failed, fall through to handle auth error
|
|
238
|
+
console.warn("Token refresh failed, redirecting to login:", refreshError);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
// Token refresh failed or not available, handle auth error
|
|
220
242
|
authErrorDetected = true; // Set flag to prevent any retries
|
|
221
243
|
const authError = responseStatus === 401
|
|
222
244
|
? new data_client_types_1.AuthenticationError("Authentication required", response)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-client-request.js","sourceRoot":"","sources":["../../src/utils/data-client-request.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"data-client-request.js","sourceRoot":"","sources":["../../src/utils/data-client-request.ts"],"names":[],"mappings":"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"}
|