@archbase/security 4.0.40 → 4.0.42
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/archbase-security-4.0.42.tgz +0 -0
- package/dist/index.js +816 -793
- package/dist/src/ArchbaseResetPassword.d.ts +13 -3
- package/dist/src/SecurityDomain.d.ts +6 -0
- package/dist/src/hooks/useArchbaseAuthenticationManager.d.ts +13 -0
- package/package.json +5 -5
- package/dist/archbase-security-4.0.40.tgz +0 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { CSSProperties } from '@mantine/core';
|
|
2
|
+
import { ArchbasePasswordPolicy } from '@archbase/core';
|
|
2
3
|
export interface ArchbaseResetPasswordProps {
|
|
3
4
|
error?: string;
|
|
4
5
|
initialEmail?: string;
|
|
@@ -6,9 +7,18 @@ export interface ArchbaseResetPasswordProps {
|
|
|
6
7
|
onSendResetPasswordEmail: (email: string) => Promise<void>;
|
|
7
8
|
onResetPassword: (email: string, passwordResetToken: string, newPassword: string) => Promise<void>;
|
|
8
9
|
onClickBackToLogin: () => void;
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
/** Validação customizada da nova senha. Deve retornar a mensagem de erro ou string vazia */
|
|
11
|
+
validatePassword?: (newPassword: string) => string;
|
|
12
|
+
validateToken?: (passwordResetToken: string) => string;
|
|
13
|
+
/**
|
|
14
|
+
* Critérios de senha forte aplicados na nova senha.
|
|
15
|
+
* `true` aplica a política padrão do Archbase; um objeto permite ajustar cada critério.
|
|
16
|
+
* Quando ausente somente a confirmação de senha é verificada.
|
|
17
|
+
*/
|
|
18
|
+
passwordPolicy?: ArchbasePasswordPolicy | boolean;
|
|
19
|
+
/** Indicador se a lista de critérios deve ser exibida abaixo do campo. Padrão: true */
|
|
20
|
+
showPasswordRequirements?: boolean;
|
|
11
21
|
/** Estilo do card */
|
|
12
22
|
style?: CSSProperties;
|
|
13
23
|
}
|
|
14
|
-
export declare function ArchbaseResetPassword({ error, onSendResetPasswordEmail, onResetPassword, onClickBackToLogin, validatePassword, validateToken, initialEmail, description, style }: ArchbaseResetPasswordProps): import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
export declare function ArchbaseResetPassword({ error, onSendResetPasswordEmail, onResetPassword, onClickBackToLogin, validatePassword, validateToken, initialEmail, description, style, passwordPolicy, showPasswordRequirements }: ArchbaseResetPasswordProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -109,6 +109,12 @@ export declare class UserDto extends SecurityDto {
|
|
|
109
109
|
allowPasswordChange: boolean;
|
|
110
110
|
allowMultipleLogins: boolean;
|
|
111
111
|
passwordNeverExpires: boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Data da última troca de senha, preenchida pelo backend. Base de cálculo da expiração
|
|
114
|
+
* periódica quando `archbase.security.password.expiration-days` está configurado.
|
|
115
|
+
* Somente leitura — o backend a atualiza sozinho a cada troca de senha.
|
|
116
|
+
*/
|
|
117
|
+
passwordChangedAt?: string;
|
|
112
118
|
accountDeactivated: boolean;
|
|
113
119
|
accountLocked: boolean;
|
|
114
120
|
unlimitedAccessHours: boolean;
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import { ContextualAuthenticationRequest, FlexibleLoginRequest, SocialLoginRequest, RegisterUserRequest, SupportedContextsResponse, ContextValidationResponse, ContextObject } from '../types/ContextualAuthentication';
|
|
2
|
+
/**
|
|
3
|
+
* Reconhece a recusa de login por credenciais expiradas devolvida pelo archbase-security:
|
|
4
|
+
* HTTP 403 com `{ error: 'CREDENTIALS_EXPIRED', requirePasswordChange: true }`. Aceita tanto o
|
|
5
|
+
* erro do axios quanto o corpo já desembrulhado.
|
|
6
|
+
*/
|
|
7
|
+
export declare function isCredentialsExpiredError(error: any): boolean;
|
|
2
8
|
export interface AuthenticationManagerReturnType {
|
|
3
9
|
login: (username: string, password: string, rememberMe: boolean) => void;
|
|
4
10
|
logout: (clearRememberMe?: boolean) => void;
|
|
@@ -13,6 +19,13 @@ export interface AuthenticationManagerReturnType {
|
|
|
13
19
|
mfaRequired: boolean;
|
|
14
20
|
verifyMfa?: (code: string) => Promise<void>;
|
|
15
21
|
cancelMfa: () => void;
|
|
22
|
+
/**
|
|
23
|
+
* O backend recusou o login com CREDENTIALS_EXPIRED: há troca de senha obrigatória pendente
|
|
24
|
+
* ou a senha venceu pela política de validade. O app deve levar o usuário ao fluxo de
|
|
25
|
+
* redefinição de senha (ArchbaseResetPassword) em vez de só exibir o erro.
|
|
26
|
+
*/
|
|
27
|
+
passwordChangeRequired: boolean;
|
|
28
|
+
clearPasswordChangeRequired: () => void;
|
|
16
29
|
loginWithContext?: (request: ContextualAuthenticationRequest, rememberMe?: boolean) => Promise<void>;
|
|
17
30
|
loginFlexible?: (request: FlexibleLoginRequest, rememberMe?: boolean) => Promise<void>;
|
|
18
31
|
loginSocial?: (request: SocialLoginRequest) => Promise<void>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@archbase/security",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.42",
|
|
4
4
|
"description": "Security and authentication components for Archbase React",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -37,10 +37,10 @@
|
|
|
37
37
|
"reflect-metadata": "^0.1.13",
|
|
38
38
|
"rxjs": "^7.8.2",
|
|
39
39
|
"uuid": "^9.0.1",
|
|
40
|
-
"@archbase/components": "4.0.
|
|
41
|
-
"@archbase/core": "4.0.
|
|
42
|
-
"@archbase/data": "4.0.
|
|
43
|
-
"@archbase/layout": "4.0.
|
|
40
|
+
"@archbase/components": "4.0.42",
|
|
41
|
+
"@archbase/core": "4.0.42",
|
|
42
|
+
"@archbase/data": "4.0.42",
|
|
43
|
+
"@archbase/layout": "4.0.42"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@types/crypto-js": "^4.1.1",
|
|
Binary file
|