@myrmidon/auth-jwt-admin 5.1.0 → 7.0.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/fesm2022/myrmidon-auth-jwt-admin.mjs +248 -268
- package/fesm2022/myrmidon-auth-jwt-admin.mjs.map +1 -1
- package/lib/components/auth-jwt-registration/auth-jwt-registration.component.d.ts +8 -9
- package/lib/components/password-strength-bar/password-strength-bar.component.d.ts +4 -5
- package/lib/components/state/user-list.repository.d.ts +2 -2
- package/lib/components/user-editor/user-editor.component.d.ts +28 -20
- package/lib/components/user-filter/user-filter.component.d.ts +15 -8
- package/lib/components/user-list/user-list.component.d.ts +7 -6
- package/lib/services/auth-jwt-account.service.d.ts +4 -3
- package/lib/validators/password.validators.d.ts +3 -0
- package/package.json +8 -10
- package/public-api.d.ts +0 -1
- package/esm2022/lib/auth-jwt-admin.module.mjs +0 -112
- package/esm2022/lib/components/auth-jwt-registration/auth-jwt-registration.component.mjs +0 -169
- package/esm2022/lib/components/password-strength-bar/password-strength-bar.component.mjs +0 -80
- package/esm2022/lib/components/state/user-list.repository.mjs +0 -126
- package/esm2022/lib/components/user-editor/user-editor.component.mjs +0 -111
- package/esm2022/lib/components/user-filter/user-filter.component.mjs +0 -64
- package/esm2022/lib/components/user-list/user-list.component.mjs +0 -67
- package/esm2022/lib/services/auth-jwt-account.service.mjs +0 -203
- package/esm2022/lib/validators/password.validators.mjs +0 -49
- package/esm2022/myrmidon-auth-jwt-admin.mjs +0 -5
- package/esm2022/public-api.mjs +0 -12
- package/lib/auth-jwt-admin.module.d.ts +0 -28
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { HttpParams } from '@angular/common/http';
|
|
3
|
-
import { retry, catchError, map } from 'rxjs/operators';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common/http";
|
|
6
|
-
import * as i2 from "@myrmidon/ng-tools";
|
|
7
|
-
export class AuthJwtAccountService {
|
|
8
|
-
constructor(_http, _error, _env) {
|
|
9
|
-
this._http = _http;
|
|
10
|
-
this._error = _error;
|
|
11
|
-
this._env = _env;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Checks if the specified email address is registered on the server.
|
|
15
|
-
* @param email email address to test.
|
|
16
|
-
* @returns result.
|
|
17
|
-
*/
|
|
18
|
-
isEmailRegistered(email) {
|
|
19
|
-
return this._http.get(this._env.get('apiUrl') +
|
|
20
|
-
'accounts/emailexists/' +
|
|
21
|
-
encodeURIComponent(email));
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Checks if the specified user's given name is registered on the server.
|
|
25
|
-
* This name is a nickname chosen by users during registration, and is the key
|
|
26
|
-
* used for referencing users when talking to the server.
|
|
27
|
-
* @param name name to test.
|
|
28
|
-
* @returns result.
|
|
29
|
-
*/
|
|
30
|
-
isNameRegistered(name) {
|
|
31
|
-
return this._http.get(this._env.get('apiUrl') +
|
|
32
|
-
'accounts/nameexists/' +
|
|
33
|
-
encodeURIComponent(name));
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Register the user with the specified registration data.
|
|
37
|
-
* @param registration The registration data.
|
|
38
|
-
* @param confirmed True to automatically confirm the user's email address
|
|
39
|
-
* without sending the confirmation email message.
|
|
40
|
-
*/
|
|
41
|
-
register(registration, confirmed = false) {
|
|
42
|
-
return this._http.post(this._env.get('apiUrl') +
|
|
43
|
-
'accounts/register' +
|
|
44
|
-
(confirmed ? '?confirmed=true' : ''), registration);
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Resend the confirmation email to the specified address.
|
|
48
|
-
* @param email address.
|
|
49
|
-
*/
|
|
50
|
-
resendConfirmEmail(email) {
|
|
51
|
-
return this._http.get(this._env.get('apiUrl') +
|
|
52
|
-
'accounts/resendconfirm/' +
|
|
53
|
-
encodeURIComponent(email)
|
|
54
|
-
// options
|
|
55
|
-
);
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Request a password reset for the specified email address.
|
|
59
|
-
* @param email Email address.
|
|
60
|
-
*/
|
|
61
|
-
requestPasswordReset(email) {
|
|
62
|
-
return this._http.post(this._env.get('apiUrl') + 'accounts/resetpassword/request', { email });
|
|
63
|
-
}
|
|
64
|
-
getUserFromWrapper(response) {
|
|
65
|
-
return response.user
|
|
66
|
-
? {
|
|
67
|
-
...response.user,
|
|
68
|
-
roles: response.roles || [],
|
|
69
|
-
}
|
|
70
|
-
: response;
|
|
71
|
-
}
|
|
72
|
-
getAllUsers() {
|
|
73
|
-
return this._http
|
|
74
|
-
.get(this._env.get('apiUrl') + 'users', {
|
|
75
|
-
params: new HttpParams().set('pageNumber', '1'),
|
|
76
|
-
})
|
|
77
|
-
.pipe(retry(3), map((dataPage) => {
|
|
78
|
-
return {
|
|
79
|
-
...dataPage,
|
|
80
|
-
items: dataPage.items.map(this.getUserFromWrapper),
|
|
81
|
-
};
|
|
82
|
-
}), catchError(this._error.handleError));
|
|
83
|
-
}
|
|
84
|
-
getUsers(filter, pageNumber = 1, pageSize = 20) {
|
|
85
|
-
let httpParams = new HttpParams();
|
|
86
|
-
httpParams = httpParams.set('pageNumber', pageNumber.toString());
|
|
87
|
-
httpParams = httpParams.set('pageSize', pageSize.toString());
|
|
88
|
-
if (filter.name) {
|
|
89
|
-
httpParams = httpParams.set('name', filter.name);
|
|
90
|
-
}
|
|
91
|
-
return this._http
|
|
92
|
-
.get(this._env.get('apiUrl') + 'users', {
|
|
93
|
-
params: httpParams,
|
|
94
|
-
})
|
|
95
|
-
.pipe(retry(3), map((dataPage) => {
|
|
96
|
-
return {
|
|
97
|
-
...dataPage,
|
|
98
|
-
items: dataPage.items.map(this.getUserFromWrapper),
|
|
99
|
-
};
|
|
100
|
-
}), catchError(this._error.handleError));
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Get the top N users matching the specified name filter.
|
|
104
|
-
* @param nameFilter The user name filter.
|
|
105
|
-
* @param limit The maximum number of users to get.
|
|
106
|
-
*/
|
|
107
|
-
getTopUsers(nameFilter, limit = 10) {
|
|
108
|
-
let httpParams = new HttpParams();
|
|
109
|
-
httpParams = httpParams.set('pageNumber', '1');
|
|
110
|
-
httpParams = httpParams.set('pageSize', limit.toString());
|
|
111
|
-
if (nameFilter) {
|
|
112
|
-
httpParams = httpParams.set('name', nameFilter);
|
|
113
|
-
}
|
|
114
|
-
const options = httpParams.keys().length > 0
|
|
115
|
-
? {
|
|
116
|
-
params: httpParams,
|
|
117
|
-
}
|
|
118
|
-
: {};
|
|
119
|
-
return this._http
|
|
120
|
-
.get(this._env.get('apiUrl') + 'users', options)
|
|
121
|
-
.pipe(retry(3), map((users) => {
|
|
122
|
-
return users.map(this.getUserFromWrapper);
|
|
123
|
-
}), catchError(this._error.handleError));
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Get information about all the users listed in the specified names.
|
|
127
|
-
* @param names User(s) names.
|
|
128
|
-
*/
|
|
129
|
-
getUsersFromNames(names) {
|
|
130
|
-
let httpParams = new HttpParams();
|
|
131
|
-
if (names && names.length > 0) {
|
|
132
|
-
httpParams = httpParams.set('names', names.join(','));
|
|
133
|
-
}
|
|
134
|
-
const options = httpParams.keys().length > 0
|
|
135
|
-
? {
|
|
136
|
-
params: httpParams,
|
|
137
|
-
}
|
|
138
|
-
: {};
|
|
139
|
-
return this._http
|
|
140
|
-
.get(this._env.get('apiUrl') + 'users-from-names', options)
|
|
141
|
-
.pipe(retry(3), map((users) => {
|
|
142
|
-
return users.map(this.getUserFromWrapper);
|
|
143
|
-
}), catchError(this._error.handleError));
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Get data about the specified user.
|
|
147
|
-
* @param name The user name.
|
|
148
|
-
*/
|
|
149
|
-
getUser(name) {
|
|
150
|
-
return this._http
|
|
151
|
-
.get(this._env.get('apiUrl') + 'users/' + name)
|
|
152
|
-
.pipe(retry(3), map(this.getUserFromWrapper), catchError(this._error.handleError));
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Update the editable data for the specified user.
|
|
156
|
-
* @param user The user to update.
|
|
157
|
-
*/
|
|
158
|
-
updateUser(user) {
|
|
159
|
-
return this._http
|
|
160
|
-
.put(this._env.get('apiUrl') +
|
|
161
|
-
'users' +
|
|
162
|
-
(user.emailConfirmed ? '?confirmed=true' : ''), user)
|
|
163
|
-
.pipe(catchError(this._error.handleError));
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* Request a password reset email for the specified email address.
|
|
167
|
-
* @param email The email address to receive the reset message.
|
|
168
|
-
*/
|
|
169
|
-
resetPassword(email) {
|
|
170
|
-
return this._http
|
|
171
|
-
.post(this._env.get('apiUrl') + 'accounts/resetpassword/request', {
|
|
172
|
-
email: email,
|
|
173
|
-
})
|
|
174
|
-
.pipe(catchError(this._error.handleError));
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Change the password.
|
|
178
|
-
* @param change The password change data.
|
|
179
|
-
*/
|
|
180
|
-
changePassword(change) {
|
|
181
|
-
return this._http
|
|
182
|
-
.post(this._env.get('apiUrl') + 'accounts/changepassword', change)
|
|
183
|
-
.pipe(catchError(this._error.handleError));
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Delete the user with the specified username.
|
|
187
|
-
* @param name The user name.
|
|
188
|
-
*/
|
|
189
|
-
deleteUser(name) {
|
|
190
|
-
return this._http
|
|
191
|
-
.delete(this._env.get('apiUrl') + 'accounts/' + name)
|
|
192
|
-
.pipe(catchError(this._error.handleError));
|
|
193
|
-
}
|
|
194
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: AuthJwtAccountService, deps: [{ token: i1.HttpClient }, { token: i2.ErrorService }, { token: i2.EnvService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
195
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: AuthJwtAccountService, providedIn: 'root' }); }
|
|
196
|
-
}
|
|
197
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: AuthJwtAccountService, decorators: [{
|
|
198
|
-
type: Injectable,
|
|
199
|
-
args: [{
|
|
200
|
-
providedIn: 'root',
|
|
201
|
-
}]
|
|
202
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ErrorService }, { type: i2.EnvService }] });
|
|
203
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1qd3QtYWNjb3VudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlybWlkb24vYXV0aC1qd3QtYWRtaW4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLWp3dC1hY2NvdW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFvRHhELE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsWUFDVSxLQUFpQixFQUNqQixNQUFvQixFQUNwQixJQUFnQjtRQUZoQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDcEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN2QixDQUFDO0lBRUo7Ozs7T0FJRztJQUNJLGlCQUFpQixDQUFDLEtBQWE7UUFDcEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1lBQ3JCLHVCQUF1QjtZQUN2QixrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FDNUIsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxnQkFBZ0IsQ0FBQyxJQUFZO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztZQUNyQixzQkFBc0I7WUFDdEIsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQzNCLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxRQUFRLENBQ2IsWUFBK0IsRUFD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LENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLFdBQVcsR0FBRyxJQUFJLENBQUM7YUFDcEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQzs4R0E1UFUscUJBQXFCO2tIQUFyQixxQkFBcUIsY0FGcEIsTUFBTTs7MkZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyByZXRyeSwgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgRGF0YVBhZ2UsIEVudlNlcnZpY2UsIEVycm9yU2VydmljZSB9IGZyb20gJ0BteXJtaWRvbi9uZy10b29scyc7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICdAbXlybWlkb24vYXV0aC1qd3QtbG9naW4nO1xyXG5cclxuLyoqXHJcbiAqIFVzZXIgcmVnaXN0cmF0aW9uIG1vZGVsLiBZb3UgY2FuIGV4cGFuZCB0aGlzIGludGVyZmFjZSB0byBhZGQgbW9yZSBkYXRhLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RyYXRpb25Nb2RlbCB7XHJcbiAgZW1haWw6IHN0cmluZztcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgZmlyc3ROYW1lPzogc3RyaW5nO1xyXG4gIGxhc3ROYW1lPzogc3RyaW5nO1xyXG4gIHBhc3N3b3JkOiBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXN1bHQgb2YgYW4gZXhpc3RpbmcgcmVzb3VyY2UgY2hlY2suXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIEV4aXN0UmVzdWx0IHtcclxuICBlbnRyeTogc3RyaW5nO1xyXG4gIGlzRXhpc3Rpbmc6IGJvb2xlYW47XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQYXNzd29yZCBjaGFuZ2UgZGF0YS5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGFzc3dvcmRDaGFuZ2Uge1xyXG4gIGVtYWlsOiBzdHJpbmc7XHJcbiAgb2xkUGFzc3dvcmQ6IHN0cmluZztcclxuICBuZXdQYXNzd29yZDogc3RyaW5nO1xyXG4gIGNvbmZpcm1QYXNzd29yZDogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogVXNlciBmaWx0ZXIgcGFyYW1ldGVycy5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlckZpbHRlciB7XHJcbiAgbmFtZT86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIFRoZSB0eXBlIG9mIHVzZXIgZGF0YSByZXR1cm5lZCBieSB0aGUgc2VydmVyLlxyXG4gKi9cclxuaW50ZXJmYWNlIFVzZXJXaXRoUm9sZXM8VD4ge1xyXG4gIHVzZXI6IFQ7XHJcbiAgcm9sZXM/OiBzdHJpbmdbXTtcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dGhKd3RBY2NvdW50U2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9odHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBfZXJyb3I6IEVycm9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX2VudjogRW52U2VydmljZVxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2tzIGlmIHRoZSBzcGVjaWZpZWQgZW1haWwgYWRkcmVzcyBpcyByZWdpc3RlcmVkIG9uIHRoZSBzZXJ2ZXIuXHJcbiAgICogQHBhcmFtIGVtYWlsIGVtYWlsIGFkZHJlc3MgdG8gdGVzdC5cclxuICAgKiBAcmV0dXJucyByZXN1bHQuXHJcbiAgICovXHJcbiAgcHVibGljIGlzRW1haWxSZWdpc3RlcmVkKGVtYWlsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEV4aXN0UmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQ8RXhpc3RSZXN1bHQ+KFxyXG4gICAgICB0aGlzLl9lbnYuZ2V0KCdhcGlVcmwnKSArXHJcbiAgICAgICAgJ2FjY291bnRzL2VtYWlsZXhpc3RzLycgK1xyXG4gICAgICAgIGVuY29kZVVSSUNvbXBvbmVudChlbWFpbClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVja3MgaWYgdGhlIHNwZWNpZmllZCB1c2VyJ3MgZ2l2ZW4gbmFtZSBpcyByZWdpc3RlcmVkIG9uIHRoZSBzZXJ2ZXIuXHJcbiAgICogVGhpcyBuYW1lIGlzIGEgbmlja25hbWUgY2hvc2VuIGJ5IHVzZXJzIGR1cmluZyByZWdpc3RyYXRpb24sIGFuZCBpcyB0aGUga2V5XHJcbiAgICogdXNlZCBmb3IgcmVmZXJlbmNpbmcgdXNlcnMgd2hlbiB0YWxraW5nIHRvIHRoZSBzZXJ2ZXIuXHJcbiAgICogQHBhcmFtIG5hbWUgbmFtZSB0byB0ZXN0LlxyXG4gICAqIEByZXR1cm5zIHJlc3VsdC5cclxuICAgKi9cclxuICBwdWJsaWMgaXNOYW1lUmVnaXN0ZXJlZChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEV4aXN0UmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQ8RXhpc3RSZXN1bHQ+KFxyXG4gICAgICB0aGlzLl9lbnYuZ2V0KCdhcGlVcmwnKSArXHJcbiAgICAgICAgJ2FjY291bnRzL25hbWVleGlzdHMvJyArXHJcbiAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KG5hbWUpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVnaXN0ZXIgdGhlIHVzZXIgd2l0aCB0aGUgc3BlY2lmaWVkIHJlZ2lzdHJhdGlvbiBkYXRhLlxyXG4gICAqIEBwYXJhbSByZWdpc3RyYXRpb24gVGhlIHJlZ2lzdHJhdGlvbiBkYXRhLlxyXG4gICAqIEBwYXJhbSBjb25maXJtZWQgVHJ1ZSB0byBhdXRvbWF0aWNhbGx5IGNvbmZpcm0gdGhlIHVzZXIncyBlbWFpbCBhZGRyZXNzXHJcbiAgICogd2l0aG91dCBzZW5kaW5nIHRoZSBjb25maXJtYXRpb24gZW1haWwgbWVzc2FnZS5cclxuICAgKi9cclxuICBwdWJsaWMgcmVnaXN0ZXIoXHJcbiAgICByZWdpc3RyYXRpb246IFJlZ2lzdHJhdGlvbk1vZGVsLFxyXG4gICAgY29uZmlybWVkID0gZmFsc2VcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAucG9zdChcclxuICAgICAgdGhpcy5fZW52LmdldCgnYXBpVXJsJykgK1xyXG4gICAgICAgICdhY2NvdW50cy9yZWdpc3RlcicgK1xyXG4gICAgICAgIChjb25maXJtZWQgPyAnP2NvbmZpcm1lZD10cnVlJyA6ICcnKSxcclxuICAgICAgcmVnaXN0cmF0aW9uXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzZW5kIHRoZSBjb25maXJtYXRpb24gZW1haWwgdG8gdGhlIHNwZWNpZmllZCBhZGRyZXNzLlxyXG4gICAqIEBwYXJhbSBlbWFpbCBhZGRyZXNzLlxyXG4gICAqL1xyXG4gIHB1YmxpYyByZXNlbmRDb25maXJtRW1haWwoZW1haWw6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQoXHJcbiAgICAgIHRoaXMuX2Vudi5nZXQoJ2FwaVVybCcpICtcclxuICAgICAgICAnYWNjb3VudHMvcmVzZW5kY29uZmlybS8nICtcclxuICAgICAgICBlbmNvZGVVUklDb21wb25lbnQoZW1haWwpXHJcbiAgICAgIC8vIG9wdGlvbnNcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQgZm9yIHRoZSBzcGVjaWZpZWQgZW1haWwgYWRkcmVzcy5cclxuICAgKiBAcGFyYW0gZW1haWwgRW1haWwgYWRkcmVzcy5cclxuICAgKi9cclxuICBwdWJsaWMgcmVxdWVzdFBhc3N3b3JkUmVzZXQoZW1haWw6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5wb3N0KFxyXG4gICAgICB0aGlzLl9lbnYuZ2V0KCdhcGlVcmwnKSArICdhY2NvdW50cy9yZXNldHBhc3N3b3JkL3JlcXVlc3QnLFxyXG4gICAgICB7IGVtYWlsIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFVzZXJGcm9tV3JhcHBlcihyZXNwb25zZTogVXNlcldpdGhSb2xlczxVc2VyPiB8IFVzZXIpOiBVc2VyIHtcclxuICAgIHJldHVybiAocmVzcG9uc2UgYXMgVXNlcldpdGhSb2xlczxVc2VyPikudXNlclxyXG4gICAgICA/IHtcclxuICAgICAgICAgIC4uLigocmVzcG9uc2UgYXMgVXNlcldpdGhSb2xlczxVc2VyPikudXNlciBhcyBVc2VyKSxcclxuICAgICAgICAgIHJvbGVzOiByZXNwb25zZS5yb2xlcyB8fCBbXSxcclxuICAgICAgICB9XHJcbiAgICAgIDogKHJlc3BvbnNlIGFzIFVzZXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEFsbFVzZXJzKCk6IE9ic2VydmFibGU8RGF0YVBhZ2U8VXNlcj4+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgIC5nZXQ8RGF0YVBhZ2U8VXNlcldpdGhSb2xlczxVc2VyPiB8IFVzZXI+PihcclxuICAgICAgICB0aGlzLl9lbnYuZ2V0KCdhcGlVcmwnKSArICd1c2VycycsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncGFnZU51bWJlcicsICcxJyksXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHJldHJ5KDMpLFxyXG4gICAgICAgIG1hcCgoZGF0YVBhZ2U6IERhdGFQYWdlPFVzZXJXaXRoUm9sZXM8VXNlcj4gfCBVc2VyPikgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgLi4uZGF0YVBhZ2UsXHJcbiAgICAgICAgICAgIGl0ZW1zOiBkYXRhUGFnZS5pdGVtcy5tYXAodGhpcy5nZXRVc2VyRnJvbVdyYXBwZXIpLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBjYXRjaEVycm9yKHRoaXMuX2Vycm9yLmhhbmRsZUVycm9yKVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFVzZXJzKFxyXG4gICAgZmlsdGVyOiBVc2VyRmlsdGVyLFxyXG4gICAgcGFnZU51bWJlciA9IDEsXHJcbiAgICBwYWdlU2l6ZSA9IDIwXHJcbiAgKTogT2JzZXJ2YWJsZTxEYXRhUGFnZTxVc2VyPj4ge1xyXG4gICAgbGV0IGh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG4gICAgaHR0cFBhcmFtcyA9IGh0dHBQYXJhbXMuc2V0KCdwYWdlTnVtYmVyJywgcGFnZU51bWJlci50b1N0cmluZygpKTtcclxuICAgIGh0dHBQYXJhbXMgPSBodHRwUGFyYW1zLnNldCgncGFnZVNpemUnLCBwYWdlU2l6ZS50b1N0cmluZygpKTtcclxuICAgIGlmIChmaWx0ZXIubmFtZSkge1xyXG4gICAgICBodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5zZXQoJ25hbWUnLCBmaWx0ZXIubmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgLmdldDxEYXRhUGFnZTxVc2VyV2l0aFJvbGVzPFVzZXI+Pj4odGhpcy5fZW52LmdldCgnYXBpVXJsJykgKyAndXNlcnMnLCB7XHJcbiAgICAgICAgcGFyYW1zOiBodHRwUGFyYW1zLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICByZXRyeSgzKSxcclxuICAgICAgICBtYXAoKGRhdGFQYWdlOiBEYXRhUGFnZTxVc2VyV2l0aFJvbGVzPFVzZXI+PikgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgLi4uZGF0YVBhZ2UsXHJcbiAgICAgICAgICAgIGl0ZW1zOiBkYXRhUGFnZS5pdGVtcy5tYXAodGhpcy5nZXRVc2VyRnJvbVdyYXBwZXIpLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBjYXRjaEVycm9yKHRoaXMuX2Vycm9yLmhhbmRsZUVycm9yKVxyXG4gICAgICApO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBHZXQgdGhlIHRvcCBOIHVzZXJzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgbmFtZSBmaWx0ZXIuXHJcbiAgICogQHBhcmFtIG5hbWVGaWx0ZXIgVGhlIHVzZXIgbmFtZSBmaWx0ZXIuXHJcbiAgICogQHBhcmFtIGxpbWl0IFRoZSBtYXhpbXVtIG51bWJlciBvZiB1c2VycyB0byBnZXQuXHJcbiAgICovXHJcbiAgcHVibGljIGdldFRvcFVzZXJzKG5hbWVGaWx0ZXI6IHN0cmluZywgbGltaXQgPSAxMCk6IE9ic2VydmFibGU8VXNlcltdPiB7XHJcbiAgICBsZXQgaHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XHJcbiAgICBodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5zZXQoJ3BhZ2VOdW1iZXInLCAnMScpO1xyXG4gICAgaHR0cFBhcmFtcyA9IGh0dHBQYXJhbXMuc2V0KCdwYWdlU2l6ZScsIGxpbWl0LnRvU3RyaW5nKCkpO1xyXG4gICAgaWYgKG5hbWVGaWx0ZXIpIHtcclxuICAgICAgaHR0cFBhcmFtcyA9IGh0dHBQYXJhbXMuc2V0KCduYW1lJywgbmFtZUZpbHRlcik7XHJcbiAgICB9XHJcbiAgICBjb25zdCBvcHRpb25zID1cclxuICAgICAgaHR0cFBhcmFtcy5rZXlzKCkubGVuZ3RoID4gMFxyXG4gICAgICAgID8ge1xyXG4gICAgICAgICAgICBwYXJhbXM6IGh0dHBQYXJhbXMsXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgOiB7fTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5faHR0cFxyXG4gICAgICAuZ2V0PFVzZXJXaXRoUm9sZXM8VXNlcj5bXT4odGhpcy5fZW52LmdldCgnYXBpVXJsJykgKyAndXNlcnMnLCBvcHRpb25zKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICByZXRyeSgzKSxcclxuICAgICAgICBtYXAoKHVzZXJzOiBVc2VyV2l0aFJvbGVzPFVzZXI+W10pID0+IHtcclxuICAgICAgICAgIHJldHVybiB1c2Vycy5tYXAodGhpcy5nZXRVc2VyRnJvbVdyYXBwZXIpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGNhdGNoRXJyb3IodGhpcy5fZXJyb3IuaGFuZGxlRXJyb3IpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgaW5mb3JtYXRpb24gYWJvdXQgYWxsIHRoZSB1c2VycyBsaXN0ZWQgaW4gdGhlIHNwZWNpZmllZCBuYW1lcy5cclxuICAgKiBAcGFyYW0gbmFtZXMgVXNlcihzKSBuYW1lcy5cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0VXNlcnNGcm9tTmFtZXMobmFtZXM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxVc2VyW10+IHtcclxuICAgIGxldCBodHRwUGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcclxuICAgIGlmIChuYW1lcyAmJiBuYW1lcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGh0dHBQYXJhbXMgPSBodHRwUGFyYW1zLnNldCgnbmFtZXMnLCBuYW1lcy5qb2luKCcsJykpO1xyXG4gICAgfVxyXG4gICAgY29uc3Qgb3B0aW9ucyA9XHJcbiAgICAgIGh0dHBQYXJhbXMua2V5cygpLmxlbmd0aCA+IDBcclxuICAgICAgICA/IHtcclxuICAgICAgICAgICAgcGFyYW1zOiBodHRwUGFyYW1zLFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDoge307XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgLmdldDxVc2VyV2l0aFJvbGVzPFVzZXI+W10+KFxyXG4gICAgICAgIHRoaXMuX2Vudi5nZXQoJ2FwaVVybCcpICsgJ3VzZXJzLWZyb20tbmFtZXMnLFxyXG4gICAgICAgIG9wdGlvbnNcclxuICAgICAgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICByZXRyeSgzKSxcclxuICAgICAgICBtYXAoKHVzZXJzOiBVc2VyV2l0aFJvbGVzPFVzZXI+W10pID0+IHtcclxuICAgICAgICAgIHJldHVybiB1c2Vycy5tYXAodGhpcy5nZXRVc2VyRnJvbVdyYXBwZXIpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGNhdGNoRXJyb3IodGhpcy5fZXJyb3IuaGFuZGxlRXJyb3IpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgZGF0YSBhYm91dCB0aGUgc3BlY2lmaWVkIHVzZXIuXHJcbiAgICogQHBhcmFtIG5hbWUgVGhlIHVzZXIgbmFtZS5cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0VXNlcihuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFVzZXI+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgIC5nZXQ8VXNlcldpdGhSb2xlczxVc2VyPj4odGhpcy5fZW52LmdldCgnYXBpVXJsJykgKyAndXNlcnMvJyArIG5hbWUpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHJldHJ5KDMpLFxyXG4gICAgICAgIG1hcCh0aGlzLmdldFVzZXJGcm9tV3JhcHBlciksXHJcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLl9lcnJvci5oYW5kbGVFcnJvcilcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZSB0aGUgZWRpdGFibGUgZGF0YSBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLlxyXG4gICAqIEBwYXJhbSB1c2VyIFRoZSB1c2VyIHRvIHVwZGF0ZS5cclxuICAgKi9cclxuICBwdWJsaWMgdXBkYXRlVXNlcih1c2VyOiBVc2VyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgIC5wdXQoXHJcbiAgICAgICAgdGhpcy5fZW52LmdldCgnYXBpVXJsJykgK1xyXG4gICAgICAgICAgJ3VzZXJzJyArXHJcbiAgICAgICAgICAodXNlci5lbWFpbENvbmZpcm1lZCA/ICc/Y29uZmlybWVkPXRydWUnIDogJycpLFxyXG4gICAgICAgIHVzZXJcclxuICAgICAgKVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKHRoaXMuX2Vycm9yLmhhbmRsZUVycm9yKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQgZW1haWwgZm9yIHRoZSBzcGVjaWZpZWQgZW1haWwgYWRkcmVzcy5cclxuICAgKiBAcGFyYW0gZW1haWwgVGhlIGVtYWlsIGFkZHJlc3MgdG8gcmVjZWl2ZSB0aGUgcmVzZXQgbWVzc2FnZS5cclxuICAgKi9cclxuICBwdWJsaWMgcmVzZXRQYXNzd29yZChlbWFpbDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgIC5wb3N0KHRoaXMuX2Vudi5nZXQoJ2FwaVVybCcpICsgJ2FjY291bnRzL3Jlc2V0cGFzc3dvcmQvcmVxdWVzdCcsIHtcclxuICAgICAgICBlbWFpbDogZW1haWwsXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5fZXJyb3IuaGFuZGxlRXJyb3IpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0aGUgcGFzc3dvcmQuXHJcbiAgICogQHBhcmFtIGNoYW5nZSBUaGUgcGFzc3dvcmQgY2hhbmdlIGRhdGEuXHJcbiAgICovXHJcbiAgcHVibGljIGNoYW5nZVBhc3N3b3JkKGNoYW5nZTogUGFzc3dvcmRDaGFuZ2UpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgLnBvc3QodGhpcy5fZW52LmdldCgnYXBpVXJsJykgKyAnYWNjb3VudHMvY2hhbmdlcGFzc3dvcmQnLCBjaGFuZ2UpXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5fZXJyb3IuaGFuZGxlRXJyb3IpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlbGV0ZSB0aGUgdXNlciB3aXRoIHRoZSBzcGVjaWZpZWQgdXNlcm5hbWUuXHJcbiAgICogQHBhcmFtIG5hbWUgVGhlIHVzZXIgbmFtZS5cclxuICAgKi9cclxuICBwdWJsaWMgZGVsZXRlVXNlcihuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgLmRlbGV0ZSh0aGlzLl9lbnYuZ2V0KCdhcGlVcmwnKSArICdhY2NvdW50cy8nICsgbmFtZSlcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLl9lcnJvci5oYW5kbGVFcnJvcikpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
export class PasswordValidators {
|
|
2
|
-
/** "Standard" password validator for my API services. */
|
|
3
|
-
static standard() {
|
|
4
|
-
return (control) => {
|
|
5
|
-
if (!control.value) {
|
|
6
|
-
return null;
|
|
7
|
-
}
|
|
8
|
-
if (control.value.length < 8) {
|
|
9
|
-
return {
|
|
10
|
-
passwordtooshort: true,
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
if (!/.*[A-Z].*/.test(control.value)) {
|
|
14
|
-
return {
|
|
15
|
-
noupperinpassword: true,
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
if (!/.*[a-z].*/.test(control.value)) {
|
|
19
|
-
return {
|
|
20
|
-
nolowerinpassword: true,
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
if (!/.*[A-Z].*/.test(control.value)) {
|
|
24
|
-
return {
|
|
25
|
-
noupperinpassword: true,
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
if (!/.*[-`~!@#$%^&*()_+=\[\]{};:'",.<>/?|\\].*/.test(control.value)) {
|
|
29
|
-
return {
|
|
30
|
-
nosymbolinpassword: true,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
return null;
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
static areEqual(controlName, otherControlName) {
|
|
37
|
-
return (control) => {
|
|
38
|
-
const g = control;
|
|
39
|
-
const a = g.controls[controlName];
|
|
40
|
-
const b = g.controls[otherControlName];
|
|
41
|
-
return a.value !== b.value
|
|
42
|
-
? {
|
|
43
|
-
areequal: true,
|
|
44
|
-
}
|
|
45
|
-
: null;
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQudmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cm1pZG9uL2F1dGgtand0LWFkbWluL3NyYy9saWIvdmFsaWRhdG9ycy9wYXNzd29yZC52YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IseURBQXlEO0lBQ2xELE1BQU0sQ0FBQyxRQUFRO1FBQ3BCLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1lBQzNELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25CLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztZQUVELElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLE9BQU87b0JBQ0wsZ0JBQWdCLEVBQUUsSUFBSTtpQkFDdkIsQ0FBQztZQUNKLENBQUM7WUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDckMsT0FBTztvQkFDTCxpQkFBaUIsRUFBRSxJQUFJO2lCQUN4QixDQUFDO1lBQ0osQ0FBQztZQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNyQyxPQUFPO29CQUNMLGlCQUFpQixFQUFFLElBQUk7aUJBQ3hCLENBQUM7WUFDSixDQUFDO1lBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3JDLE9BQU87b0JBQ0wsaUJBQWlCLEVBQUUsSUFBSTtpQkFDeEIsQ0FBQztZQUNKLENBQUM7WUFFRCxJQUFJLENBQUMsMkNBQTJDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNyRSxPQUFPO29CQUNMLGtCQUFrQixFQUFFLElBQUk7aUJBQ3pCLENBQUM7WUFDSixDQUFDO1lBRUQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQVEsQ0FDcEIsV0FBbUIsRUFDbkIsZ0JBQXdCO1FBRXhCLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1lBQzNELE1BQU0sQ0FBQyxHQUFHLE9BQXVDLENBQUM7WUFDbEQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNsQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDdkMsT0FBTyxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxLQUFLO2dCQUN4QixDQUFDLENBQUM7b0JBQ0UsUUFBUSxFQUFFLElBQUk7aUJBQ2Y7Z0JBQ0gsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNYLENBQUMsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWJzdHJhY3RDb250cm9sLFxyXG4gIEZvcm1Hcm91cCxcclxuICBVbnR5cGVkRm9ybUdyb3VwLFxyXG4gIFZhbGlkYXRpb25FcnJvcnMsXHJcbiAgVmFsaWRhdG9yRm4sXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIFBhc3N3b3JkVmFsaWRhdG9ycyB7XHJcbiAgLyoqIFwiU3RhbmRhcmRcIiBwYXNzd29yZCB2YWxpZGF0b3IgZm9yIG15IEFQSSBzZXJ2aWNlcy4gKi9cclxuICBwdWJsaWMgc3RhdGljIHN0YW5kYXJkKCk6IFZhbGlkYXRvckZuIHtcclxuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGNvbnRyb2wudmFsdWUubGVuZ3RoIDwgOCkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBwYXNzd29yZHRvb3Nob3J0OiB0cnVlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghLy4qW0EtWl0uKi8udGVzdChjb250cm9sLnZhbHVlKSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBub3VwcGVyaW5wYXNzd29yZDogdHJ1ZSxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoIS8uKlthLXpdLiovLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgbm9sb3dlcmlucGFzc3dvcmQ6IHRydWUsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCEvLipbQS1aXS4qLy50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIG5vdXBwZXJpbnBhc3N3b3JkOiB0cnVlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghLy4qWy1gfiFAIyQlXiYqKClfKz1cXFtcXF17fTs6J1wiLC48Pi8/fFxcXFxdLiovLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgbm9zeW1ib2xpbnBhc3N3b3JkOiB0cnVlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgYXJlRXF1YWwoXHJcbiAgICBjb250cm9sTmFtZTogc3RyaW5nLFxyXG4gICAgb3RoZXJDb250cm9sTmFtZTogc3RyaW5nXHJcbiAgKTogVmFsaWRhdG9yRm4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICAgIGNvbnN0IGcgPSBjb250cm9sIGFzIEZvcm1Hcm91cCB8IFVudHlwZWRGb3JtR3JvdXA7XHJcbiAgICAgIGNvbnN0IGEgPSBnLmNvbnRyb2xzW2NvbnRyb2xOYW1lXTtcclxuICAgICAgY29uc3QgYiA9IGcuY29udHJvbHNbb3RoZXJDb250cm9sTmFtZV07XHJcbiAgICAgIHJldHVybiBhLnZhbHVlICE9PSBiLnZhbHVlXHJcbiAgICAgICAgPyB7XHJcbiAgICAgICAgICAgIGFyZWVxdWFsOiB0cnVlLFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDogbnVsbDtcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlybWlkb24tYXV0aC1qd3QtYWRtaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJtaWRvbi9hdXRoLWp3dC1hZG1pbi9zcmMvbXlybWlkb24tYXV0aC1qd3QtYWRtaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
package/esm2022/public-api.mjs
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of auth-jwt-admin
|
|
3
|
-
*/
|
|
4
|
-
export * from './lib/components/auth-jwt-registration/auth-jwt-registration.component';
|
|
5
|
-
export * from './lib/components/password-strength-bar/password-strength-bar.component';
|
|
6
|
-
export * from './lib/components/user-filter/user-filter.component';
|
|
7
|
-
export * from './lib/components/user-list/user-list.component';
|
|
8
|
-
export * from './lib/components/state/user-list.repository';
|
|
9
|
-
export * from './lib/services/auth-jwt-account.service';
|
|
10
|
-
export * from './lib/validators/password.validators';
|
|
11
|
-
export * from './lib/auth-jwt-admin.module';
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL215cm1pZG9uL2F1dGgtand0LWFkbWluL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyx3RUFBd0UsQ0FBQztBQUN2RixjQUFjLHdFQUF3RSxDQUFDO0FBQ3ZGLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGF1dGgtand0LWFkbWluXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdXRoLWp3dC1yZWdpc3RyYXRpb24vYXV0aC1qd3QtcmVnaXN0cmF0aW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGFzc3dvcmQtc3RyZW5ndGgtYmFyL3Bhc3N3b3JkLXN0cmVuZ3RoLWJhci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3VzZXItZmlsdGVyL3VzZXItZmlsdGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdXNlci1saXN0L3VzZXItbGlzdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3N0YXRlL3VzZXItbGlzdC5yZXBvc2l0b3J5JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXV0aC1qd3QtYWNjb3VudC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmFsaWRhdG9ycy9wYXNzd29yZC52YWxpZGF0b3JzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXV0aC1qd3QtYWRtaW4ubW9kdWxlJztcclxuIl19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./components/auth-jwt-registration/auth-jwt-registration.component";
|
|
3
|
-
import * as i2 from "./components/password-strength-bar/password-strength-bar.component";
|
|
4
|
-
import * as i3 from "./components/user-filter/user-filter.component";
|
|
5
|
-
import * as i4 from "./components/user-list/user-list.component";
|
|
6
|
-
import * as i5 from "./components/user-editor/user-editor.component";
|
|
7
|
-
import * as i6 from "@angular/common";
|
|
8
|
-
import * as i7 from "@angular/forms";
|
|
9
|
-
import * as i8 from "@angular/router";
|
|
10
|
-
import * as i9 from "@angular/material/button";
|
|
11
|
-
import * as i10 from "@angular/material/card";
|
|
12
|
-
import * as i11 from "@angular/material/checkbox";
|
|
13
|
-
import * as i12 from "@angular/material/dialog";
|
|
14
|
-
import * as i13 from "@angular/material/expansion";
|
|
15
|
-
import * as i14 from "@angular/material/icon";
|
|
16
|
-
import * as i15 from "@angular/material/input";
|
|
17
|
-
import * as i16 from "@angular/material/paginator";
|
|
18
|
-
import * as i17 from "@angular/material/progress-bar";
|
|
19
|
-
import * as i18 from "@angular/material/progress-spinner";
|
|
20
|
-
import * as i19 from "@angular/material/snack-bar";
|
|
21
|
-
import * as i20 from "@angular/material/tooltip";
|
|
22
|
-
import * as i21 from "@myrmidon/auth-jwt-login";
|
|
23
|
-
import * as i22 from "@myrmidon/ng-tools";
|
|
24
|
-
export declare class AuthJwtAdminModule {
|
|
25
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AuthJwtAdminModule, never>;
|
|
26
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AuthJwtAdminModule, [typeof i1.AuthJwtRegistrationComponent, typeof i2.PasswordStrengthBarComponent, typeof i3.UserFilterComponent, typeof i4.UserListComponent, typeof i5.UserEditorComponent], [typeof i6.CommonModule, typeof i7.FormsModule, typeof i8.RouterModule, typeof i7.ReactiveFormsModule, typeof i9.MatButtonModule, typeof i10.MatCardModule, typeof i11.MatCheckboxModule, typeof i12.MatDialogModule, typeof i13.MatExpansionModule, typeof i14.MatIconModule, typeof i15.MatInputModule, typeof i16.MatPaginatorModule, typeof i17.MatProgressBarModule, typeof i18.MatProgressSpinnerModule, typeof i19.MatSnackBarModule, typeof i20.MatTooltipModule, typeof i21.AuthJwtLoginModule, typeof i22.NgToolsModule], [typeof i1.AuthJwtRegistrationComponent, typeof i2.PasswordStrengthBarComponent, typeof i3.UserFilterComponent, typeof i4.UserListComponent]>;
|
|
27
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<AuthJwtAdminModule>;
|
|
28
|
-
}
|