@aifabrix/miso-client 3.8.2 → 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/CHANGELOG.md +45 -0
- package/dist/index.d.ts +30 -157
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -163
- package/dist/index.js.map +1 -1
- package/dist/services/auth-error-handler.d.ts +21 -0
- package/dist/services/auth-error-handler.d.ts.map +1 -0
- package/dist/services/auth-error-handler.js +68 -0
- package/dist/services/auth-error-handler.js.map +1 -0
- package/dist/services/auth.service.d.ts +0 -1
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +31 -298
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/logger/logger.service.d.ts +8 -80
- package/dist/services/logger/logger.service.d.ts.map +1 -1
- package/dist/services/logger/logger.service.js +8 -80
- package/dist/services/logger/logger.service.js.map +1 -1
- package/dist/types/filter-schema.types.d.ts +104 -0
- package/dist/types/filter-schema.types.d.ts.map +1 -0
- package/dist/types/filter-schema.types.js +40 -0
- package/dist/types/filter-schema.types.js.map +1 -0
- package/dist/types/filter.types.d.ts +1 -1
- package/dist/types/filter.types.d.ts.map +1 -1
- package/dist/types/filter.types.js.map +1 -1
- package/dist/utils/data-client-auth.d.ts +5 -37
- package/dist/utils/data-client-auth.d.ts.map +1 -1
- package/dist/utils/data-client-auth.js +98 -377
- package/dist/utils/data-client-auth.js.map +1 -1
- package/dist/utils/data-client-init.d.ts +46 -0
- package/dist/utils/data-client-init.d.ts.map +1 -0
- package/dist/utils/data-client-init.js +128 -0
- package/dist/utils/data-client-init.js.map +1 -0
- package/dist/utils/data-client-oauth.d.ts +20 -0
- package/dist/utils/data-client-oauth.d.ts.map +1 -0
- package/dist/utils/data-client-oauth.js +138 -0
- package/dist/utils/data-client-oauth.js.map +1 -0
- package/dist/utils/data-client-permissions.d.ts +63 -0
- package/dist/utils/data-client-permissions.d.ts.map +1 -0
- package/dist/utils/data-client-permissions.js +123 -0
- package/dist/utils/data-client-permissions.js.map +1 -0
- package/dist/utils/data-client-request.d.ts +1 -1
- package/dist/utils/data-client-request.d.ts.map +1 -1
- package/dist/utils/data-client-request.js +27 -235
- package/dist/utils/data-client-request.js.map +1 -1
- package/dist/utils/data-client-response.d.ts +40 -0
- package/dist/utils/data-client-response.d.ts.map +1 -0
- package/dist/utils/data-client-response.js +144 -0
- package/dist/utils/data-client-response.js.map +1 -0
- package/dist/utils/data-client-roles.d.ts +63 -0
- package/dist/utils/data-client-roles.d.ts.map +1 -0
- package/dist/utils/data-client-roles.js +123 -0
- package/dist/utils/data-client-roles.js.map +1 -0
- package/dist/utils/data-client.d.ts +0 -185
- package/dist/utils/data-client.d.ts.map +1 -1
- package/dist/utils/data-client.js +66 -505
- package/dist/utils/data-client.js.map +1 -1
- package/dist/utils/filter-colon.utils.d.ts +26 -0
- package/dist/utils/filter-colon.utils.d.ts.map +1 -0
- package/dist/utils/filter-colon.utils.js +112 -0
- package/dist/utils/filter-colon.utils.js.map +1 -0
- package/dist/utils/filter-schema.utils.d.ts +84 -0
- package/dist/utils/filter-schema.utils.d.ts.map +1 -0
- package/dist/utils/filter-schema.utils.js +381 -0
- package/dist/utils/filter-schema.utils.js.map +1 -0
- package/dist/utils/filter.utils.d.ts +9 -85
- package/dist/utils/filter.utils.d.ts.map +1 -1
- package/dist/utils/filter.utils.js +79 -138
- package/dist/utils/filter.utils.js.map +1 -1
- package/dist/utils/http-error-handler.d.ts +22 -0
- package/dist/utils/http-error-handler.d.ts.map +1 -0
- package/dist/utils/http-error-handler.js +84 -0
- package/dist/utils/http-error-handler.js.map +1 -0
- package/dist/utils/http-response-validator.d.ts +15 -0
- package/dist/utils/http-response-validator.d.ts.map +1 -0
- package/dist/utils/http-response-validator.js +42 -0
- package/dist/utils/http-response-validator.js.map +1 -0
- package/dist/utils/internal-http-client.d.ts +4 -22
- package/dist/utils/internal-http-client.d.ts.map +1 -1
- package/dist/utils/internal-http-client.js +53 -337
- package/dist/utils/internal-http-client.js.map +1 -1
- package/dist/utils/token-utils.d.ts.map +1 -1
- package/dist/utils/token-utils.js +1 -29
- package/dist/utils/token-utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DataClient role methods - extracted for code organization
|
|
3
|
+
* These methods wrap BrowserRoleService for the DataClient facade
|
|
4
|
+
*/
|
|
5
|
+
import { BrowserRoleService } from "../services/browser-role.service";
|
|
6
|
+
import { MisoClient } from "../index";
|
|
7
|
+
/**
|
|
8
|
+
* Get user roles (uses token from localStorage if not provided)
|
|
9
|
+
* @param roleService - Browser role service instance
|
|
10
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
11
|
+
* @param getTokenFn - Function to get user token
|
|
12
|
+
* @param token - Optional user authentication token
|
|
13
|
+
* @returns Array of role strings
|
|
14
|
+
*/
|
|
15
|
+
export declare function getRoles(roleService: BrowserRoleService | null, misoClient: MisoClient | null, getTokenFn: () => string | null, token?: string): Promise<string[]>;
|
|
16
|
+
/**
|
|
17
|
+
* Check if user has specific role
|
|
18
|
+
* @param roleService - Browser role service instance
|
|
19
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
20
|
+
* @param getTokenFn - Function to get user token
|
|
21
|
+
* @param role - Role to check
|
|
22
|
+
* @param token - Optional user authentication token
|
|
23
|
+
* @returns True if user has the role
|
|
24
|
+
*/
|
|
25
|
+
export declare function hasRole(roleService: BrowserRoleService | null, misoClient: MisoClient | null, getTokenFn: () => string | null, role: string, token?: string): Promise<boolean>;
|
|
26
|
+
/**
|
|
27
|
+
* Check if user has any of the specified roles
|
|
28
|
+
* @param roleService - Browser role service instance
|
|
29
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
30
|
+
* @param getTokenFn - Function to get user token
|
|
31
|
+
* @param roles - Roles to check
|
|
32
|
+
* @param token - Optional user authentication token
|
|
33
|
+
* @returns True if user has any of the roles
|
|
34
|
+
*/
|
|
35
|
+
export declare function hasAnyRole(roleService: BrowserRoleService | null, misoClient: MisoClient | null, getTokenFn: () => string | null, roles: string[], token?: string): Promise<boolean>;
|
|
36
|
+
/**
|
|
37
|
+
* Check if user has all of the specified roles
|
|
38
|
+
* @param roleService - Browser role service instance
|
|
39
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
40
|
+
* @param getTokenFn - Function to get user token
|
|
41
|
+
* @param roles - Roles to check
|
|
42
|
+
* @param token - Optional user authentication token
|
|
43
|
+
* @returns True if user has all of the roles
|
|
44
|
+
*/
|
|
45
|
+
export declare function hasAllRoles(roleService: BrowserRoleService | null, misoClient: MisoClient | null, getTokenFn: () => string | null, roles: string[], token?: string): Promise<boolean>;
|
|
46
|
+
/**
|
|
47
|
+
* Force refresh roles from controller (bypass cache)
|
|
48
|
+
* @param roleService - Browser role service instance
|
|
49
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
50
|
+
* @param getTokenFn - Function to get user token
|
|
51
|
+
* @param token - Optional user authentication token
|
|
52
|
+
* @returns Array of role strings
|
|
53
|
+
*/
|
|
54
|
+
export declare function refreshRoles(roleService: BrowserRoleService | null, misoClient: MisoClient | null, getTokenFn: () => string | null, token?: string): Promise<string[]>;
|
|
55
|
+
/**
|
|
56
|
+
* Clear cached roles for a user
|
|
57
|
+
* @param roleService - Browser role service instance
|
|
58
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
59
|
+
* @param getTokenFn - Function to get user token
|
|
60
|
+
* @param token - Optional user authentication token
|
|
61
|
+
*/
|
|
62
|
+
export declare function clearRolesCache(roleService: BrowserRoleService | null, misoClient: MisoClient | null, getTokenFn: () => string | null, token?: string): Promise<void>;
|
|
63
|
+
//# sourceMappingURL=data-client-roles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-client-roles.d.ts","sourceRoot":"","sources":["../../src/utils/data-client-roles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,kBAAkB,GAAG,IAAI,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,UAAU,EAAE,MAAM,MAAM,GAAG,IAAI,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAED;;;;;;;;GAQG;AACH,wBAAsB,OAAO,CAC3B,WAAW,EAAE,kBAAkB,GAAG,IAAI,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,UAAU,EAAE,MAAM,MAAM,GAAG,IAAI,EAC/B,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CASlB;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAC9B,WAAW,EAAE,kBAAkB,GAAG,IAAI,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,UAAU,EAAE,MAAM,MAAM,GAAG,IAAI,EAC/B,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CASlB;AAED;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,kBAAkB,GAAG,IAAI,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,UAAU,EAAE,MAAM,MAAM,GAAG,IAAI,EAC/B,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CASlB;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,kBAAkB,GAAG,IAAI,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,UAAU,EAAE,MAAM,MAAM,GAAG,IAAI,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,kBAAkB,GAAG,IAAI,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,UAAU,EAAE,MAAM,MAAM,GAAG,IAAI,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CASf"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* DataClient role methods - extracted for code organization
|
|
4
|
+
* These methods wrap BrowserRoleService for the DataClient facade
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.getRoles = getRoles;
|
|
8
|
+
exports.hasRole = hasRole;
|
|
9
|
+
exports.hasAnyRole = hasAnyRole;
|
|
10
|
+
exports.hasAllRoles = hasAllRoles;
|
|
11
|
+
exports.refreshRoles = refreshRoles;
|
|
12
|
+
exports.clearRolesCache = clearRolesCache;
|
|
13
|
+
/**
|
|
14
|
+
* Get user roles (uses token from localStorage if not provided)
|
|
15
|
+
* @param roleService - Browser role service instance
|
|
16
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
17
|
+
* @param getTokenFn - Function to get user token
|
|
18
|
+
* @param token - Optional user authentication token
|
|
19
|
+
* @returns Array of role strings
|
|
20
|
+
*/
|
|
21
|
+
async function getRoles(roleService, misoClient, getTokenFn, token) {
|
|
22
|
+
if (!misoClient || !roleService) {
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
25
|
+
const userToken = token || getTokenFn();
|
|
26
|
+
if (!userToken) {
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
return roleService.getRoles(userToken);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Check if user has specific role
|
|
33
|
+
* @param roleService - Browser role service instance
|
|
34
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
35
|
+
* @param getTokenFn - Function to get user token
|
|
36
|
+
* @param role - Role to check
|
|
37
|
+
* @param token - Optional user authentication token
|
|
38
|
+
* @returns True if user has the role
|
|
39
|
+
*/
|
|
40
|
+
async function hasRole(roleService, misoClient, getTokenFn, role, token) {
|
|
41
|
+
if (!misoClient || !roleService) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
const userToken = token || getTokenFn();
|
|
45
|
+
if (!userToken) {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
return roleService.hasRole(userToken, role);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Check if user has any of the specified roles
|
|
52
|
+
* @param roleService - Browser role service instance
|
|
53
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
54
|
+
* @param getTokenFn - Function to get user token
|
|
55
|
+
* @param roles - Roles to check
|
|
56
|
+
* @param token - Optional user authentication token
|
|
57
|
+
* @returns True if user has any of the roles
|
|
58
|
+
*/
|
|
59
|
+
async function hasAnyRole(roleService, misoClient, getTokenFn, roles, token) {
|
|
60
|
+
if (!misoClient || !roleService) {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
const userToken = token || getTokenFn();
|
|
64
|
+
if (!userToken) {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
return roleService.hasAnyRole(userToken, roles);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Check if user has all of the specified roles
|
|
71
|
+
* @param roleService - Browser role service instance
|
|
72
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
73
|
+
* @param getTokenFn - Function to get user token
|
|
74
|
+
* @param roles - Roles to check
|
|
75
|
+
* @param token - Optional user authentication token
|
|
76
|
+
* @returns True if user has all of the roles
|
|
77
|
+
*/
|
|
78
|
+
async function hasAllRoles(roleService, misoClient, getTokenFn, roles, token) {
|
|
79
|
+
if (!misoClient || !roleService) {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
const userToken = token || getTokenFn();
|
|
83
|
+
if (!userToken) {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
return roleService.hasAllRoles(userToken, roles);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Force refresh roles from controller (bypass cache)
|
|
90
|
+
* @param roleService - Browser role service instance
|
|
91
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
92
|
+
* @param getTokenFn - Function to get user token
|
|
93
|
+
* @param token - Optional user authentication token
|
|
94
|
+
* @returns Array of role strings
|
|
95
|
+
*/
|
|
96
|
+
async function refreshRoles(roleService, misoClient, getTokenFn, token) {
|
|
97
|
+
if (!misoClient || !roleService) {
|
|
98
|
+
return [];
|
|
99
|
+
}
|
|
100
|
+
const userToken = token || getTokenFn();
|
|
101
|
+
if (!userToken) {
|
|
102
|
+
return [];
|
|
103
|
+
}
|
|
104
|
+
return roleService.refreshRoles(userToken);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Clear cached roles for a user
|
|
108
|
+
* @param roleService - Browser role service instance
|
|
109
|
+
* @param misoClient - MisoClient instance (for availability check)
|
|
110
|
+
* @param getTokenFn - Function to get user token
|
|
111
|
+
* @param token - Optional user authentication token
|
|
112
|
+
*/
|
|
113
|
+
async function clearRolesCache(roleService, misoClient, getTokenFn, token) {
|
|
114
|
+
if (!misoClient || !roleService) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
const userToken = token || getTokenFn();
|
|
118
|
+
if (!userToken) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
return roleService.clearRolesCache(userToken);
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=data-client-roles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-client-roles.js","sourceRoot":"","sources":["../../src/utils/data-client-roles.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,232 +16,47 @@ export declare class DataClient {
|
|
|
16
16
|
private permissionService;
|
|
17
17
|
private roleService;
|
|
18
18
|
constructor(config: DataClientConfig);
|
|
19
|
-
/**
|
|
20
|
-
* Get authentication token from localStorage
|
|
21
|
-
*/
|
|
22
19
|
private getToken;
|
|
23
|
-
/**
|
|
24
|
-
* Check if client token is available (from localStorage cache or config)
|
|
25
|
-
*/
|
|
26
20
|
private hasClientToken;
|
|
27
|
-
/**
|
|
28
|
-
* Check if any authentication token is available (user token OR client token)
|
|
29
|
-
*/
|
|
30
21
|
private hasAnyToken;
|
|
31
|
-
/**
|
|
32
|
-
* Get client token for requests
|
|
33
|
-
* Checks localStorage cache first, then config, then calls getEnvironmentToken() if needed
|
|
34
|
-
* @returns Client token string or null if unavailable
|
|
35
|
-
*/
|
|
36
22
|
private getClientToken;
|
|
37
|
-
/**
|
|
38
|
-
* Build controller URL from configuration
|
|
39
|
-
* Uses controllerPublicUrl (browser) or controllerUrl (fallback)
|
|
40
|
-
* @returns Controller base URL or null if not configured
|
|
41
|
-
*/
|
|
42
23
|
private getControllerUrl;
|
|
43
|
-
/**
|
|
44
|
-
* Check if user is authenticated
|
|
45
|
-
*/
|
|
46
24
|
isAuthenticated(): boolean;
|
|
47
|
-
/**
|
|
48
|
-
* Handle OAuth callback from authentication redirect
|
|
49
|
-
* Extracts token from URL hash fragment and stores securely
|
|
50
|
-
* ISO 27001 compliant with immediate cleanup and validation
|
|
51
|
-
*
|
|
52
|
-
* @returns Extracted token or null if not found/invalid
|
|
53
|
-
*/
|
|
54
25
|
handleOAuthCallback(): string | null;
|
|
55
|
-
/**
|
|
56
|
-
* Redirect to login page via controller
|
|
57
|
-
* Calls the controller login endpoint with redirect parameter and x-client-token header
|
|
58
|
-
* @param redirectUrl - Optional redirect URL to return to after login (defaults to current page URL)
|
|
59
|
-
*/
|
|
60
26
|
redirectToLogin(redirectUrl?: string): Promise<void>;
|
|
61
|
-
/**
|
|
62
|
-
* Logout user and redirect
|
|
63
|
-
* Calls logout API with x-client-token header, clears tokens from localStorage, clears cache, and redirects
|
|
64
|
-
* @param redirectUrl - Optional redirect URL after logout (defaults to logoutUrl or loginUrl)
|
|
65
|
-
*/
|
|
66
27
|
logout(redirectUrl?: string): Promise<void>;
|
|
67
|
-
/**
|
|
68
|
-
* Set interceptors
|
|
69
|
-
*/
|
|
70
28
|
setInterceptors(config: InterceptorConfig): void;
|
|
71
|
-
/**
|
|
72
|
-
* Set audit configuration
|
|
73
|
-
*/
|
|
74
29
|
setAuditConfig(config: Partial<AuditConfig>): void;
|
|
75
|
-
/**
|
|
76
|
-
* Set log level for MisoClient logger
|
|
77
|
-
* Note: This updates the MisoClient config logLevel if MisoClient is initialized
|
|
78
|
-
* @param level - Log level ('debug' | 'info' | 'warn' | 'error')
|
|
79
|
-
*/
|
|
80
30
|
setLogLevel(level: "debug" | "info" | "warn" | "error"): void;
|
|
81
|
-
/**
|
|
82
|
-
* Clear all cached responses
|
|
83
|
-
*/
|
|
84
31
|
clearCache(): void;
|
|
85
|
-
/**
|
|
86
|
-
* Get request metrics
|
|
87
|
-
*/
|
|
88
32
|
getMetrics(): RequestMetrics;
|
|
89
|
-
/**
|
|
90
|
-
* Make HTTP request with all features (caching, retry, deduplication, audit)
|
|
91
|
-
*/
|
|
92
33
|
private request;
|
|
93
|
-
/**
|
|
94
|
-
* Refresh user token using onTokenRefresh callback
|
|
95
|
-
* @returns New token and expiration, or null if refresh failed
|
|
96
|
-
*/
|
|
97
34
|
private refreshUserToken;
|
|
98
|
-
/**
|
|
99
|
-
* Handle authentication error
|
|
100
|
-
*/
|
|
101
35
|
private handleAuthError;
|
|
102
|
-
/**
|
|
103
|
-
* Apply request interceptor
|
|
104
|
-
*/
|
|
105
36
|
private applyRequestInterceptor;
|
|
106
|
-
/**
|
|
107
|
-
* GET request
|
|
108
|
-
*/
|
|
109
37
|
get<T>(endpoint: string, options?: ApiRequestOptions): Promise<T>;
|
|
110
|
-
/**
|
|
111
|
-
* POST request
|
|
112
|
-
*/
|
|
113
38
|
post<T>(endpoint: string, data?: unknown, options?: ApiRequestOptions): Promise<T>;
|
|
114
|
-
/**
|
|
115
|
-
* PUT request
|
|
116
|
-
*/
|
|
117
39
|
put<T>(endpoint: string, data?: unknown, options?: ApiRequestOptions): Promise<T>;
|
|
118
|
-
/**
|
|
119
|
-
* PATCH request (uses fetch fallback since MisoClient doesn't support PATCH)
|
|
120
|
-
*/
|
|
121
40
|
patch<T>(endpoint: string, data?: unknown, options?: ApiRequestOptions): Promise<T>;
|
|
122
|
-
/**
|
|
123
|
-
* DELETE request
|
|
124
|
-
*/
|
|
125
41
|
delete<T>(endpoint: string, options?: ApiRequestOptions): Promise<T>;
|
|
126
|
-
/**
|
|
127
|
-
* Get user permissions (uses token from localStorage if not provided)
|
|
128
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
129
|
-
* @returns Array of permission strings
|
|
130
|
-
*/
|
|
131
42
|
getPermissions(token?: string): Promise<string[]>;
|
|
132
|
-
/**
|
|
133
|
-
* Check if user has specific permission
|
|
134
|
-
* @param permission - Permission to check
|
|
135
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
136
|
-
* @returns True if user has the permission
|
|
137
|
-
*/
|
|
138
43
|
hasPermission(permission: string, token?: string): Promise<boolean>;
|
|
139
|
-
/**
|
|
140
|
-
* Check if user has any of the specified permissions
|
|
141
|
-
* @param permissions - Permissions to check
|
|
142
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
143
|
-
* @returns True if user has any of the permissions
|
|
144
|
-
*/
|
|
145
44
|
hasAnyPermission(permissions: string[], token?: string): Promise<boolean>;
|
|
146
|
-
/**
|
|
147
|
-
* Check if user has all of the specified permissions
|
|
148
|
-
* @param permissions - Permissions to check
|
|
149
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
150
|
-
* @returns True if user has all of the permissions
|
|
151
|
-
*/
|
|
152
45
|
hasAllPermissions(permissions: string[], token?: string): Promise<boolean>;
|
|
153
|
-
/**
|
|
154
|
-
* Force refresh permissions from controller (bypass cache)
|
|
155
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
156
|
-
* @returns Array of permission strings
|
|
157
|
-
*/
|
|
158
46
|
refreshPermissions(token?: string): Promise<string[]>;
|
|
159
|
-
/**
|
|
160
|
-
* Clear cached permissions for a user
|
|
161
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
162
|
-
*/
|
|
163
47
|
clearPermissionsCache(token?: string): Promise<void>;
|
|
164
|
-
/**
|
|
165
|
-
* Get user roles (uses token from localStorage if not provided)
|
|
166
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
167
|
-
* @returns Array of role strings
|
|
168
|
-
*/
|
|
169
48
|
getRoles(token?: string): Promise<string[]>;
|
|
170
|
-
/**
|
|
171
|
-
* Check if user has specific role
|
|
172
|
-
* @param role - Role to check
|
|
173
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
174
|
-
* @returns True if user has the role
|
|
175
|
-
*/
|
|
176
49
|
hasRole(role: string, token?: string): Promise<boolean>;
|
|
177
|
-
/**
|
|
178
|
-
* Check if user has any of the specified roles
|
|
179
|
-
* @param roles - Roles to check
|
|
180
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
181
|
-
* @returns True if user has any of the roles
|
|
182
|
-
*/
|
|
183
50
|
hasAnyRole(roles: string[], token?: string): Promise<boolean>;
|
|
184
|
-
/**
|
|
185
|
-
* Check if user has all of the specified roles
|
|
186
|
-
* @param roles - Roles to check
|
|
187
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
188
|
-
* @returns True if user has all of the roles
|
|
189
|
-
*/
|
|
190
51
|
hasAllRoles(roles: string[], token?: string): Promise<boolean>;
|
|
191
|
-
/**
|
|
192
|
-
* Force refresh roles from controller (bypass cache)
|
|
193
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
194
|
-
* @returns Array of role strings
|
|
195
|
-
*/
|
|
196
52
|
refreshRoles(token?: string): Promise<string[]>;
|
|
197
|
-
/**
|
|
198
|
-
* Clear cached roles for a user
|
|
199
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
200
|
-
*/
|
|
201
53
|
clearRolesCache(token?: string): Promise<void>;
|
|
202
|
-
/**
|
|
203
|
-
* Validate token (uses localStorage token if not provided)
|
|
204
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
205
|
-
* @returns True if token is valid
|
|
206
|
-
*/
|
|
207
54
|
validateToken(token?: string): Promise<boolean>;
|
|
208
|
-
/**
|
|
209
|
-
* Get user info from token (uses localStorage token if not provided)
|
|
210
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
211
|
-
* @returns User info or null if not authenticated
|
|
212
|
-
*/
|
|
213
55
|
getUser(token?: string): Promise<UserInfo | null>;
|
|
214
|
-
/**
|
|
215
|
-
* Get user info from API endpoint (uses localStorage token if not provided)
|
|
216
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
217
|
-
* @returns User info or null if not authenticated
|
|
218
|
-
*/
|
|
219
56
|
getUserInfo(token?: string): Promise<UserInfo | null>;
|
|
220
|
-
/**
|
|
221
|
-
* Check if authenticated (alias for validateToken)
|
|
222
|
-
* @param token - Optional user authentication token (auto-retrieved from localStorage if not provided)
|
|
223
|
-
* @returns True if authenticated
|
|
224
|
-
*/
|
|
225
57
|
isAuthenticatedAsync(token?: string): Promise<boolean>;
|
|
226
|
-
/**
|
|
227
|
-
* Get environment token (browser-side)
|
|
228
|
-
* Checks localStorage cache first, then calls backend endpoint if needed
|
|
229
|
-
* Uses clientTokenUri from config or defaults to /api/v1/auth/client-token
|
|
230
|
-
*
|
|
231
|
-
* @returns Client token string
|
|
232
|
-
* @throws Error if token fetch fails
|
|
233
|
-
*/
|
|
234
58
|
getEnvironmentToken(): Promise<string>;
|
|
235
|
-
/**
|
|
236
|
-
* Get client token information (browser-side)
|
|
237
|
-
* Extracts application and environment info from client token
|
|
238
|
-
*
|
|
239
|
-
* @returns Client token info or null if token not available
|
|
240
|
-
*/
|
|
241
59
|
getClientTokenInfo(): ClientTokenInfo | null;
|
|
242
60
|
}
|
|
243
|
-
/**
|
|
244
|
-
* Get or create default DataClient instance
|
|
245
|
-
*/
|
|
246
61
|
export declare function dataClient(config?: DataClientConfig): DataClient;
|
|
247
62
|
//# sourceMappingURL=data-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-client.d.ts","sourceRoot":"","sources":["../../src/utils/data-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EAEd,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"data-client.d.ts","sourceRoot":"","sources":["../../src/utils/data-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EAEd,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AA0BhD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,KAAK,CAAsC;IACnD,OAAO,CAAC,eAAe,CAA4C;IACnE,OAAO,CAAC,cAAc,CAA8E;IACpG,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,OAAO,CAMb;IACF,OAAO,CAAC,iBAAiB,CAAyC;IAClE,OAAO,CAAC,WAAW,CAAmC;gBAE1C,MAAM,EAAE,gBAAgB;IA+BpC,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,WAAW;YAIL,cAAc;IAI5B,OAAO,CAAC,gBAAgB;IAMxB,eAAe,IAAI,OAAO;IAI1B,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAI9B,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAajD,eAAe,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAIhD,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAIlD,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI;IAY7D,UAAU,IAAI,IAAI;IAIlB,UAAU,IAAI,cAAc;YAwBd,OAAO;YAqEP,gBAAgB;IAiB9B,OAAO,CAAC,eAAe;YAMT,uBAAuB;IAM/B,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKjE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC;IAQlF,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC;IAQjF,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC;IAQnF,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC;IAOpE,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIjD,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAInE,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIzE,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI1E,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIrD,qBAAqB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAI3C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvD,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI7D,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAI/C,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM9C,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAM/C,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAMjD,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAMrD,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAItD,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI5C,kBAAkB,IAAI,eAAe,GAAG,IAAI;CAG7C;AAMD,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,UAAU,CAQhE"}
|