ngx-sp-auth 4.3.6 → 4.3.8
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/lib/auth.service.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { IpServiceService, RetError } from 'ngx-sp-infra';
|
|
|
10
10
|
import { LibCustomEnvironmentService } from './custom/lib-custom-environment.service';
|
|
11
11
|
import { LibCustomLoginService } from './custom/lib-custom-login.service';
|
|
12
12
|
import { ProjectUtilservice } from './project/project-utils.service';
|
|
13
|
+
import { IndexedDBService } from './services/indexed-db.service';
|
|
13
14
|
import { AuthStorageService } from './storage/auth-storage.service';
|
|
14
15
|
import * as i0 from "@angular/core";
|
|
15
16
|
export declare class AuthService {
|
|
@@ -20,6 +21,7 @@ export declare class AuthService {
|
|
|
20
21
|
private _customLoginService;
|
|
21
22
|
private _projectUtilservice;
|
|
22
23
|
private _customEnvironmentService;
|
|
24
|
+
private _indexedDBService;
|
|
23
25
|
private _pendingWarning;
|
|
24
26
|
private readonly _BASE_URL;
|
|
25
27
|
private readonly _AUTH_BASE_URL;
|
|
@@ -29,7 +31,7 @@ export declare class AuthService {
|
|
|
29
31
|
private city;
|
|
30
32
|
private state;
|
|
31
33
|
private country;
|
|
32
|
-
constructor(_httpClient: HttpClient, _router: Router, _authStorageService: AuthStorageService, _ipServiceService: IpServiceService, _customLoginService: LibCustomLoginService, _projectUtilservice: ProjectUtilservice, _customEnvironmentService: LibCustomEnvironmentService);
|
|
34
|
+
constructor(_httpClient: HttpClient, _router: Router, _authStorageService: AuthStorageService, _ipServiceService: IpServiceService, _customLoginService: LibCustomLoginService, _projectUtilservice: ProjectUtilservice, _customEnvironmentService: LibCustomEnvironmentService, _indexedDBService: IndexedDBService);
|
|
33
35
|
private getParms;
|
|
34
36
|
private getHostName;
|
|
35
37
|
/** Obtém o método de autenticação
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { IDBPDatabase } from 'idb';
|
|
2
|
+
import { LibCustomEnvironmentService } from '../custom/lib-custom-environment.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Tipo estruturado que deve ser enviado e recebido quando utilizar o armazenamento de valores no IndexedDB
|
|
6
|
+
*/
|
|
7
|
+
export type ObjectToStore<T> = {
|
|
8
|
+
/** Valor da chave-única para diferenciar entre outros valores salvos */
|
|
9
|
+
key: string;
|
|
10
|
+
/** Contexto da tela em que a implementação está inserida */
|
|
11
|
+
context: string;
|
|
12
|
+
/**
|
|
13
|
+
* Corpo do que será de fato armazenado, filtros, formulários, etc.
|
|
14
|
+
* O tipo usado é genérico e deve ser informado caso deseje utilizar este tipo no seu componente.
|
|
15
|
+
*/
|
|
16
|
+
payload?: T;
|
|
17
|
+
};
|
|
18
|
+
export declare class IndexedDBService {
|
|
19
|
+
private _customEnvironment;
|
|
20
|
+
private _restored?;
|
|
21
|
+
private _dbName;
|
|
22
|
+
protected database?: IDBDatabase;
|
|
23
|
+
protected request?: IDBPDatabase<unknown>;
|
|
24
|
+
constructor(_customEnvironment: LibCustomEnvironmentService);
|
|
25
|
+
/**
|
|
26
|
+
* Cria um registro dentro de um objectStore.
|
|
27
|
+
* O valor a ser inserido precisa ser um objeto com pelo **menos a propriedade `key`**, ela é a nossa *chave-primária* dos registros
|
|
28
|
+
*
|
|
29
|
+
* @param value Valor a ser inserido
|
|
30
|
+
*/
|
|
31
|
+
add(value: ObjectToStore<any>): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Busca um valor na base dentro de um objectStore.
|
|
34
|
+
*
|
|
35
|
+
* @param storeName Nome do objectStore
|
|
36
|
+
* @param key Valor da chave única
|
|
37
|
+
* @returns Promise<> com o valor encontrado ou undefined se não encontrar
|
|
38
|
+
*/
|
|
39
|
+
get(key: string): Promise<ObjectToStore<any>>;
|
|
40
|
+
/**
|
|
41
|
+
* Atualiza o valor de um registro dentro de um objectStore.
|
|
42
|
+
*
|
|
43
|
+
* @param value Valor atualizado
|
|
44
|
+
*/
|
|
45
|
+
update(value: ObjectToStore<any>): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Exclui um registro na base dentro de um objectStore.
|
|
48
|
+
*
|
|
49
|
+
* @param key Valor da chave única
|
|
50
|
+
*/
|
|
51
|
+
delete(key: string): Promise<void>;
|
|
52
|
+
/**
|
|
53
|
+
* Inicializa as configurações iniciais do IndexedDB e já cria o objectStore que será utilizado caso não exista.
|
|
54
|
+
*
|
|
55
|
+
* O object store que será criado terá sua chave inline na propriedade `key` e o índice será a propriedade `context`, portanto todos os valores que forem inseridos **DEVEM** ser um objeto com pelo menos a propriedade `key` e `context`.
|
|
56
|
+
* Deve ser chamado no constructor do seu componente para garantir inicialização correta pelo componente
|
|
57
|
+
*
|
|
58
|
+
* @param dbName Nome da base de dados que será usada
|
|
59
|
+
*/
|
|
60
|
+
initializeDatabase(): Promise<void>;
|
|
61
|
+
/**
|
|
62
|
+
* Exclui uma database do IndexedDB com base no nome.
|
|
63
|
+
*
|
|
64
|
+
* @param name Nome da database
|
|
65
|
+
*/
|
|
66
|
+
deleteDatabase(): Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* Valida se já existe um valor cadastrado na base com a chave-única que foi informada, se houver retorna ele, caso contrário cria um registro placeholder para poder atualizar depois.
|
|
69
|
+
*
|
|
70
|
+
* @param key Valor da chave única
|
|
71
|
+
* @param value (opcional) Valor placeholder caso não exista um valor previamente criado
|
|
72
|
+
*
|
|
73
|
+
* @returns Estrutura encontrada no objectStore com a chave-única informada
|
|
74
|
+
*/
|
|
75
|
+
validate(key: string, value?: ObjectToStore<any> | null): Promise<any>;
|
|
76
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IndexedDBService, never>;
|
|
77
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<IndexedDBService>;
|
|
78
|
+
}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { HttpBackend } from '@angular/common/http';
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
3
|
import { Payload } from './../models/payload';
|
|
4
|
-
import { LibCustomStorageService } from '../custom/lib-custom-storage.service';
|
|
5
4
|
import { LibCustomEnvironmentService } from '../custom/lib-custom-environment.service';
|
|
5
|
+
import { LibCustomStorageService } from '../custom/lib-custom-storage.service';
|
|
6
|
+
import { IndexedDBService } from '../services/indexed-db.service';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
export declare class AuthStorageService {
|
|
8
9
|
private _httpBackend;
|
|
9
10
|
private _customStorageService;
|
|
11
|
+
private _indexedDBService;
|
|
10
12
|
private _customEnvironmentService;
|
|
11
13
|
private readonly _BASE_URL;
|
|
12
14
|
private readonly __local_key;
|
|
@@ -14,7 +16,7 @@ export declare class AuthStorageService {
|
|
|
14
16
|
/** Se ainda estamos com uma função rodando para verificar o login do usuário */
|
|
15
17
|
private __isCheckingAuth;
|
|
16
18
|
private _httpClient;
|
|
17
|
-
constructor(_httpBackend: HttpBackend, _customStorageService: LibCustomStorageService, _customEnvironmentService: LibCustomEnvironmentService);
|
|
19
|
+
constructor(_httpBackend: HttpBackend, _customStorageService: LibCustomStorageService, _indexedDBService: IndexedDBService, _customEnvironmentService: LibCustomEnvironmentService);
|
|
18
20
|
isLoggedInSub: BehaviorSubject<boolean>;
|
|
19
21
|
private __ip;
|
|
20
22
|
get ip(): string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ngx-sp-auth",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.8",
|
|
4
4
|
"description": "Biblioteca de utilitários de autenticação.",
|
|
5
5
|
"author": "P&D",
|
|
6
6
|
"keywords": [
|
|
@@ -22,7 +22,8 @@
|
|
|
22
22
|
"peerDependencies": {
|
|
23
23
|
"@azure/msal-angular": "^4.0.16",
|
|
24
24
|
"@azure/msal-browser": "^4.18.0",
|
|
25
|
-
"
|
|
25
|
+
"idb": "^8.0.3",
|
|
26
|
+
"ngx-sp-infra": "^6.5.10",
|
|
26
27
|
"ngx-toastr": "^19.0.0"
|
|
27
28
|
},
|
|
28
29
|
"sideEffects": false,
|
package/public-api.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export * from './lib/custom/lib-custom-login.service';
|
|
|
8
8
|
export * from './lib/custom/lib-custom-menu.service';
|
|
9
9
|
export * from './lib/custom/lib-custom-storage.service';
|
|
10
10
|
export * from './lib/custom/lib-menu-config.service';
|
|
11
|
+
export * from './lib/services/indexed-db.service';
|
|
11
12
|
export * from './lib/services/pesquisa-telas-global.service';
|
|
12
13
|
export * from './lib/storage/auth-storage.service';
|
|
13
14
|
/** Components */
|