@archbase/security 4.0.40 → 4.0.41

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.
@@ -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.40",
3
+ "version": "4.0.41",
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.40",
41
- "@archbase/core": "4.0.40",
42
- "@archbase/data": "4.0.40",
43
- "@archbase/layout": "4.0.40"
40
+ "@archbase/components": "4.0.41",
41
+ "@archbase/core": "4.0.41",
42
+ "@archbase/data": "4.0.41",
43
+ "@archbase/layout": "4.0.41"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/crypto-js": "^4.1.1",
Binary file