@rolatech/angular-auth 20.1.6-beta.5 → 20.1.6-beta.7

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.
@@ -17,19 +17,19 @@ import { of, map as map$1, BehaviorSubject, catchError, throwError, NEVER } from
17
17
  import { MatSnackBar } from '@angular/material/snack-bar';
18
18
 
19
19
  class ForbiddenComponent {
20
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ForbiddenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: ForbiddenComponent, isStandalone: true, selector: "rolatech-forbidden", ngImport: i0, template: "<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>403.</b>\n <p>Forbidden page.</p>\n </div>\n</div>\n", styles: [""] });
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: ForbiddenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: ForbiddenComponent, isStandalone: true, selector: "rolatech-forbidden", ngImport: i0, template: "<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>403.</b>\n <p>Forbidden page.</p>\n </div>\n</div>\n", styles: [""] });
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ForbiddenComponent, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: ForbiddenComponent, decorators: [{
24
24
  type: Component,
25
25
  args: [{ selector: 'rolatech-forbidden', template: "<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>403.</b>\n <p>Forbidden page.</p>\n </div>\n</div>\n" }]
26
26
  }] });
27
27
 
28
28
  class UnauthorizedComponent {
29
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: UnauthorizedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
30
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: UnauthorizedComponent, isStandalone: true, selector: "rolatech-unauthorized", ngImport: i0, template: "<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>401.</b>\n <p>Unauthorized page.</p>\n </div>\n</div>\n", styles: [""] });
29
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: UnauthorizedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
30
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: UnauthorizedComponent, isStandalone: true, selector: "rolatech-unauthorized", ngImport: i0, template: "<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>401.</b>\n <p>Unauthorized page.</p>\n </div>\n</div>\n", styles: [""] });
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: UnauthorizedComponent, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: UnauthorizedComponent, decorators: [{
33
33
  type: Component,
34
34
  args: [{ selector: 'rolatech-unauthorized', template: "<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>401.</b>\n <p>Unauthorized page.</p>\n </div>\n</div>\n" }]
35
35
  }] });
@@ -75,10 +75,10 @@ class AuthStore {
75
75
  return { ...state };
76
76
  });
77
77
  }
78
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
79
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthStore, providedIn: 'root' });
78
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
79
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthStore, providedIn: 'root' });
80
80
  }
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthStore, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthStore, decorators: [{
82
82
  type: Injectable,
83
83
  args: [{ providedIn: 'root' }]
84
84
  }] });
@@ -183,6 +183,15 @@ class AuthService {
183
183
  return res;
184
184
  }));
185
185
  }
186
+ requestPasswordReset(email) {
187
+ return this.http.post(`${this.environment.baseUrl}/auth/users/password/reset-request`, { email });
188
+ }
189
+ validatePasswordRestToken(token) {
190
+ return this.http.get(`${this.environment.baseUrl}/auth/users/password/reset-tokens/${token}`);
191
+ }
192
+ resetPassword(data) {
193
+ return this.http.post(`${this.environment.baseUrl}/auth/users/password/reset`, data);
194
+ }
186
195
  changePassword(data) {
187
196
  return this.http
188
197
  .put(`${this.environment.baseUrl}/auth/users/password`, data, {
@@ -217,10 +226,10 @@ class AuthService {
217
226
  this.authStore.updateAuthenticated(true);
218
227
  }));
219
228
  }
220
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
221
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthService, providedIn: 'root' });
229
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
230
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthService, providedIn: 'root' });
222
231
  }
223
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthService, decorators: [{
232
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthService, decorators: [{
224
233
  type: Injectable,
225
234
  args: [{ providedIn: 'root' }]
226
235
  }] });
@@ -279,13 +288,13 @@ class FaceidDetectDialogComponent {
279
288
  console.error(err);
280
289
  }
281
290
  }
282
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FaceidDetectDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
283
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FaceidDetectDialogComponent, isStandalone: true, selector: "rolatech-faceid-detect-dialog", outputs: { output: "output" }, ngImport: i0, template: "<div class=\"flex flex-col p-3 max-w-[500px] mx-auto\">\n <div class=\"w-[256px] h-[256px] mx-auto flex justify-center items-center\">\n @if (loading) {\n <div>\n <rolatech-spinner></rolatech-spinner>\n </div>\n }\n <img [src]=\"qrcodeUrl\" alt />\n </div>\n</div>\n", styles: ["*{margin:0;padding:0}.normalPanel .panelContent{width:188px;height:188px}.normalPanel .wrp_code{position:relative;width:188px;height:188px;margin:0}.impowerBox .title,.normalPanel .info{display:none}.impowerBox .qrcode{margin-top:0;border:0;width:188px;height:188px}#MAXIM{content:\"veg20170418191511\"}mat-mdc-dialog-content mdc-dialog__content{padding:0}\n"], dependencies: [{ kind: "component", type: SpinnerComponent, selector: "rolatech-spinner", inputs: ["title"] }, { kind: "ngmodule", type: MatButtonModule }] });
291
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: FaceidDetectDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
292
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.12", type: FaceidDetectDialogComponent, isStandalone: true, selector: "rolatech-faceid-detect-dialog", outputs: { output: "output" }, ngImport: i0, template: "<div class=\"flex flex-col p-3 max-w-[500px] mx-auto\">\n <div class=\"w-[256px] h-[256px] mx-auto flex justify-center items-center\">\n @if (loading) {\n <div>\n <rolatech-spinner></rolatech-spinner>\n </div>\n }\n <img [src]=\"qrcodeUrl\" alt />\n </div>\n</div>\n", styles: ["*{margin:0;padding:0}.normalPanel .panelContent{width:188px;height:188px}.normalPanel .wrp_code{position:relative;width:188px;height:188px;margin:0}.impowerBox .title,.normalPanel .info{display:none}.impowerBox .qrcode{margin-top:0;border:0;width:188px;height:188px}#MAXIM{content:\"veg20170418191511\"}mat-mdc-dialog-content mdc-dialog__content{padding:0}\n"], dependencies: [{ kind: "component", type: SpinnerComponent, selector: "rolatech-spinner", inputs: ["title"] }, { kind: "ngmodule", type: MatButtonModule }] });
284
293
  }
285
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FaceidDetectDialogComponent, decorators: [{
294
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: FaceidDetectDialogComponent, decorators: [{
286
295
  type: Component,
287
296
  args: [{ selector: 'rolatech-faceid-detect-dialog', imports: [SpinnerComponent, MatButtonModule], template: "<div class=\"flex flex-col p-3 max-w-[500px] mx-auto\">\n <div class=\"w-[256px] h-[256px] mx-auto flex justify-center items-center\">\n @if (loading) {\n <div>\n <rolatech-spinner></rolatech-spinner>\n </div>\n }\n <img [src]=\"qrcodeUrl\" alt />\n </div>\n</div>\n", styles: ["*{margin:0;padding:0}.normalPanel .panelContent{width:188px;height:188px}.normalPanel .wrp_code{position:relative;width:188px;height:188px;margin:0}.impowerBox .title,.normalPanel .info{display:none}.impowerBox .qrcode{margin-top:0;border:0;width:188px;height:188px}#MAXIM{content:\"veg20170418191511\"}mat-mdc-dialog-content mdc-dialog__content{padding:0}\n"] }]
288
- }], ctorParameters: () => [] });
297
+ }], ctorParameters: () => [], propDecorators: { output: [{ type: i0.Output, args: ["output"] }] } });
289
298
 
290
299
  var UserStatus;
291
300
  (function (UserStatus) {
@@ -311,13 +320,13 @@ class AddressComponent {
311
320
  ngDoCheck() {
312
321
  this.output.emit(this.address());
313
322
  }
314
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AddressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
315
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: AddressComponent, isStandalone: true, selector: "rolatech-address", inputs: { address: { classPropertyName: "address", publicName: "address", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { address: "addressChange", output: "output" }, ngImport: i0, template: "<div>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Name </mat-label>\n <input matInput [(ngModel)]=\"address().name\" />\n </mat-form-field>\n @if (address().type === addressType.BILLING) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Email </mat-label>\n <input matInput [(ngModel)]=\"address().email\" />\n </mat-form-field>\n }\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input matInput [(ngModel)]=\"address().phone\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> province </mat-label>\n <input matInput [(ngModel)]=\"address().province\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> City </mat-label>\n <input matInput [(ngModel)]=\"address().city\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> District </mat-label>\n <input matInput [(ngModel)]=\"address().district\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Street </mat-label>\n <input matInput [(ngModel)]=\"address().street\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Detail </mat-label>\n <input matInput [(ngModel)]=\"address().detail\" />\n </mat-form-field>\n</div>\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] });
323
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AddressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
324
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.12", type: AddressComponent, isStandalone: true, selector: "rolatech-address", inputs: { address: { classPropertyName: "address", publicName: "address", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { address: "addressChange", output: "output" }, ngImport: i0, template: "<div>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Name </mat-label>\n <input matInput [(ngModel)]=\"address().name\" />\n </mat-form-field>\n @if (address().type === addressType.BILLING) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Email </mat-label>\n <input matInput [(ngModel)]=\"address().email\" />\n </mat-form-field>\n }\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input matInput [(ngModel)]=\"address().phone\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> province </mat-label>\n <input matInput [(ngModel)]=\"address().province\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> City </mat-label>\n <input matInput [(ngModel)]=\"address().city\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> District </mat-label>\n <input matInput [(ngModel)]=\"address().district\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Street </mat-label>\n <input matInput [(ngModel)]=\"address().street\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Detail </mat-label>\n <input matInput [(ngModel)]=\"address().detail\" />\n </mat-form-field>\n</div>\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] });
316
325
  }
317
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AddressComponent, decorators: [{
326
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AddressComponent, decorators: [{
318
327
  type: Component,
319
328
  args: [{ selector: 'rolatech-address', imports: [AngularCommonModule, AngularComponentsModule], template: "<div>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Name </mat-label>\n <input matInput [(ngModel)]=\"address().name\" />\n </mat-form-field>\n @if (address().type === addressType.BILLING) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Email </mat-label>\n <input matInput [(ngModel)]=\"address().email\" />\n </mat-form-field>\n }\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input matInput [(ngModel)]=\"address().phone\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> province </mat-label>\n <input matInput [(ngModel)]=\"address().province\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> City </mat-label>\n <input matInput [(ngModel)]=\"address().city\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> District </mat-label>\n <input matInput [(ngModel)]=\"address().district\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Street </mat-label>\n <input matInput [(ngModel)]=\"address().street\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Detail </mat-label>\n <input matInput [(ngModel)]=\"address().detail\" />\n </mat-form-field>\n</div>\n", styles: ["mat-form-field{width:100%}\n"] }]
320
- }] });
329
+ }], propDecorators: { address: [{ type: i0.Input, args: [{ isSignal: true, alias: "address", required: false }] }, { type: i0.Output, args: ["addressChange"] }], output: [{ type: i0.Output, args: ["output"] }] } });
321
330
 
322
331
  const AuthGuard = (route, state) => {
323
332
  const authService = inject(AuthService);
@@ -358,10 +367,10 @@ const AuthGuard = (route, state) => {
358
367
 
359
368
  class AuthDialogComponent {
360
369
  dialogRef = inject(MatDialogRef);
361
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
362
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: AuthDialogComponent, isStandalone: true, selector: "rolatech-auth-dialog", ngImport: i0, template: "<p>auth-dialog works!</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatDialogModule }] });
370
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
371
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: AuthDialogComponent, isStandalone: true, selector: "rolatech-auth-dialog", ngImport: i0, template: "<p>auth-dialog works!</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatDialogModule }] });
363
372
  }
364
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthDialogComponent, decorators: [{
373
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthDialogComponent, decorators: [{
365
374
  type: Component,
366
375
  args: [{ selector: 'rolatech-auth-dialog', imports: [CommonModule, MatDialogModule], template: "<p>auth-dialog works!</p>\n" }]
367
376
  }] });
@@ -570,10 +579,10 @@ class AuthUserService {
570
579
  deleteAddressById(id) {
571
580
  return this.http.delete(`${this.environment.baseUrl}/auth/users/addresses/${id}`, { withCredentials: true });
572
581
  }
573
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthUserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
574
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthUserService, providedIn: 'root' });
582
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthUserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
583
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthUserService, providedIn: 'root' });
575
584
  }
576
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthUserService, decorators: [{
585
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthUserService, decorators: [{
577
586
  type: Injectable,
578
587
  args: [{
579
588
  providedIn: 'root',
@@ -620,10 +629,10 @@ class AuthAgentService {
620
629
  withCredentials: true,
621
630
  });
622
631
  }
623
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthAgentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
624
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthAgentService, providedIn: 'root' });
632
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthAgentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
633
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthAgentService, providedIn: 'root' });
625
634
  }
626
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthAgentService, decorators: [{
635
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthAgentService, decorators: [{
627
636
  type: Injectable,
628
637
  args: [{
629
638
  providedIn: 'root',
@@ -667,10 +676,10 @@ class LocalStorageService {
667
676
  setItem(key, value) {
668
677
  return this.storage.setItem(key, value);
669
678
  }
670
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
671
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: LocalStorageService, providedIn: 'root' });
679
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
680
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LocalStorageService, providedIn: 'root' });
672
681
  }
673
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: LocalStorageService, decorators: [{
682
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LocalStorageService, decorators: [{
674
683
  type: Injectable,
675
684
  args: [{
676
685
  providedIn: 'root',
@@ -728,10 +737,10 @@ class ErrorInterceptor {
728
737
  return throwError(() => new Error('系统错误'));
729
738
  // return throwError(() => error.error);
730
739
  }
731
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ErrorInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
732
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ErrorInterceptor });
740
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: ErrorInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
741
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: ErrorInterceptor });
733
742
  }
734
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ErrorInterceptor, decorators: [{
743
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: ErrorInterceptor, decorators: [{
735
744
  type: Injectable
736
745
  }] });
737
746
 
@@ -780,10 +789,10 @@ class AuthInterceptor {
780
789
  },
781
790
  });
782
791
  }
783
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
784
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthInterceptor });
792
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
793
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthInterceptor });
785
794
  }
786
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AuthInterceptor, decorators: [{
795
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthInterceptor, decorators: [{
787
796
  type: Injectable
788
797
  }], ctorParameters: () => [] });
789
798
 
@@ -1 +1 @@
1
- {"version":3,"file":"rolatech-angular-auth.mjs","sources":["../tmp-esm2022/lib/components/forbidden/forbidden.component.js","../tmp-esm2022/lib/components/unauthorized/unauthorized.component.js","../tmp-esm2022/lib/auth.store.js","../tmp-esm2022/lib/services/auth.service.js","../tmp-esm2022/lib/components/faceid-detect-dialog/faceid-detect-dialog.component.js","../tmp-esm2022/lib/interfaces/auth.interface.js","../tmp-esm2022/lib/components/address/address.component.js","../tmp-esm2022/lib/guards/auth.guard.js","../tmp-esm2022/lib/components/auth-dialog/auth-dialog.component.js","../tmp-esm2022/lib/guards/auth-dialog.guard.js","../tmp-esm2022/lib/guards/role.guard.js","../tmp-esm2022/lib/guards/permission.guard.js","../tmp-esm2022/lib/services/auth-user.service.js","../tmp-esm2022/lib/services/auth-agent.service.js","../tmp-esm2022/lib/services/storage.service.js","../tmp-esm2022/lib/interceptors/error.interceptor.js","../tmp-esm2022/lib/interceptors/auth.interceptor.js","../tmp-esm2022/provider.js","../tmp-esm2022/lib/auth.routes.js","../tmp-esm2022/rolatech-angular-auth.js"],"sourcesContent":["import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class ForbiddenComponent {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: ForbiddenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.4\", type: ForbiddenComponent, isStandalone: true, selector: \"rolatech-forbidden\", ngImport: i0, template: \"<div class=\\\"p-6 max-w-lg h-auto max-h-32\\\">\\n <div class=\\\"flex flex-col\\\">\\n <b>403.</b>\\n <p>Forbidden page.</p>\\n </div>\\n</div>\\n\", styles: [\"\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: ForbiddenComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-forbidden', template: \"<div class=\\\"p-6 max-w-lg h-auto max-h-32\\\">\\n <div class=\\\"flex flex-col\\\">\\n <b>403.</b>\\n <p>Forbidden page.</p>\\n </div>\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yYmlkZGVuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYXV0aC9zcmMvbGliL2NvbXBvbmVudHMvZm9yYmlkZGVuL2ZvcmJpZGRlbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9jb21wb25lbnRzL2ZvcmJpZGRlbi9mb3JiaWRkZW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPMUMsTUFBTSxPQUFPLGtCQUFrQjt1R0FBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0IsOEVDUC9CLGdKQU1BOzsyRkRDYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWZvcmJpZGRlbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JiaWRkZW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mb3JiaWRkZW4uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRm9yYmlkZGVuQ29tcG9uZW50IHt9XG4iLCI8ZGl2IGNsYXNzPVwicC02IG1heC13LWxnIGgtYXV0byBtYXgtaC0zMlwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgIDxiPjQwMy48L2I+XG4gICAgPHA+Rm9yYmlkZGVuIHBhZ2UuPC9wPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class UnauthorizedComponent {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: UnauthorizedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.4\", type: UnauthorizedComponent, isStandalone: true, selector: \"rolatech-unauthorized\", ngImport: i0, template: \"<div class=\\\"p-6 max-w-lg h-auto max-h-32\\\">\\n <div class=\\\"flex flex-col\\\">\\n <b>401.</b>\\n <p>Unauthorized page.</p>\\n </div>\\n</div>\\n\", styles: [\"\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: UnauthorizedComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-unauthorized', template: \"<div class=\\\"p-6 max-w-lg h-auto max-h-32\\\">\\n <div class=\\\"flex flex-col\\\">\\n <b>401.</b>\\n <p>Unauthorized page.</p>\\n </div>\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5hdXRob3JpemVkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYXV0aC9zcmMvbGliL2NvbXBvbmVudHMvdW5hdXRob3JpemVkL3VuYXV0aG9yaXplZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9jb21wb25lbnRzL3VuYXV0aG9yaXplZC91bmF1dGhvcml6ZWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPMUMsTUFBTSxPQUFPLHFCQUFxQjt1R0FBckIscUJBQXFCOzJGQUFyQixxQkFBcUIsaUZDUGxDLG1KQU1BOzsyRkRDYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLXVuYXV0aG9yaXplZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi91bmF1dGhvcml6ZWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91bmF1dGhvcml6ZWQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgVW5hdXRob3JpemVkQ29tcG9uZW50IHt9XG4iLCI8ZGl2IGNsYXNzPVwicC02IG1heC13LWxnIGgtYXV0byBtYXgtaC0zMlwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgIDxiPjQwMS48L2I+XG4gICAgPHA+VW5hdXRob3JpemVkIHBhZ2UuPC9wPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { Injectable, computed, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AuthStore {\n _state = signal({\n userId: '',\n user: null,\n roles: [],\n authenticated: false,\n loaded: false,\n }, ...(ngDevMode ? [{ debugName: \"_state\" }] : []));\n userId = computed(() => this._state().userId, ...(ngDevMode ? [{ debugName: \"userId\" }] : []));\n user = computed(() => this._state().user, ...(ngDevMode ? [{ debugName: \"user\" }] : []));\n roles = computed(() => this._state().roles, ...(ngDevMode ? [{ debugName: \"roles\" }] : []));\n authenticated = computed(() => this._state().authenticated, ...(ngDevMode ? [{ debugName: \"authenticated\" }] : []));\n loaded = computed(() => this._state().loaded, ...(ngDevMode ? [{ debugName: \"loaded\" }] : []));\n update(data) {\n this._state.update((state) => {\n state.authenticated = data.authenticated;\n state.userId = data.userId;\n state.roles = data.roles;\n state.loaded = data.loaded;\n state.user = data.user;\n return { ...state };\n });\n }\n updateAuthenticated(authenticated) {\n this._state.update((state) => {\n state.authenticated = authenticated;\n return { ...state };\n });\n }\n updateUser(user) {\n this._state.update((state) => {\n state.user = user;\n return { ...state };\n });\n }\n updateEmail(email) {\n this._state.update((state) => {\n state.user.email = email;\n return { ...state };\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthStore, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthStore, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYXV0aC9zcmMvbGliL2F1dGguc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVc3RCxNQUFNLE9BQU8sU0FBUztJQUNaLE1BQU0sR0FBRyxNQUFNLENBQVk7UUFDakMsTUFBTSxFQUFFLEVBQUU7UUFDVixJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxFQUFFO1FBQ1QsYUFBYSxFQUFFLEtBQUs7UUFDcEIsTUFBTSxFQUFFLEtBQUs7S0FDZCxrREFBQyxDQUFDO0lBQ0gsTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxrREFBQyxDQUFDO0lBQzlDLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksZ0RBQUMsQ0FBQztJQUMxQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLGlEQUFDLENBQUM7SUFDNUMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsYUFBYSx5REFBQyxDQUFDO0lBQzVELE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sa0RBQUMsQ0FBQztJQUU5QyxNQUFNLENBQUMsSUFBUztRQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDM0IsS0FBSyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQ3pDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUMzQixLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDekIsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQzNCLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUN2QixPQUFPLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxtQkFBbUIsQ0FBQyxhQUFzQjtRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzNCLEtBQUssQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1lBQ3BDLE9BQU8sRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFVBQVUsQ0FBQyxJQUFVO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDM0IsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDbEIsT0FBTyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsV0FBVyxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMzQixLQUFLLENBQUMsSUFBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDMUIsT0FBTyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQXpDVSxTQUFTOzJHQUFULFNBQVMsY0FESSxNQUFNOzsyRkFDbkIsU0FBUztrQkFEckIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBjb21wdXRlZCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2F1dGguaW50ZXJmYWNlJztcblxudHlwZSBBdXRoU3RhdGUgPSB7XG4gIHVzZXJJZDogc3RyaW5nO1xuICB1c2VyOiBVc2VyIHwgbnVsbDtcbiAgcm9sZXM6IHN0cmluZ1tdO1xuICBhdXRoZW50aWNhdGVkOiBib29sZWFuIHwgbnVsbDtcbiAgbG9hZGVkOiBib29sZWFuO1xufTtcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXV0aFN0b3JlIHtcbiAgcHJpdmF0ZSBfc3RhdGUgPSBzaWduYWw8QXV0aFN0YXRlPih7XG4gICAgdXNlcklkOiAnJyxcbiAgICB1c2VyOiBudWxsLFxuICAgIHJvbGVzOiBbXSxcbiAgICBhdXRoZW50aWNhdGVkOiBmYWxzZSxcbiAgICBsb2FkZWQ6IGZhbHNlLFxuICB9KTtcbiAgdXNlcklkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fc3RhdGUoKS51c2VySWQpO1xuICB1c2VyID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fc3RhdGUoKS51c2VyKTtcbiAgcm9sZXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLl9zdGF0ZSgpLnJvbGVzKTtcbiAgYXV0aGVudGljYXRlZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3N0YXRlKCkuYXV0aGVudGljYXRlZCk7XG4gIGxvYWRlZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3N0YXRlKCkubG9hZGVkKTtcblxuICB1cGRhdGUoZGF0YTogYW55KSB7XG4gICAgdGhpcy5fc3RhdGUudXBkYXRlKChzdGF0ZSkgPT4ge1xuICAgICAgc3RhdGUuYXV0aGVudGljYXRlZCA9IGRhdGEuYXV0aGVudGljYXRlZDtcbiAgICAgIHN0YXRlLnVzZXJJZCA9IGRhdGEudXNlcklkO1xuICAgICAgc3RhdGUucm9sZXMgPSBkYXRhLnJvbGVzO1xuICAgICAgc3RhdGUubG9hZGVkID0gZGF0YS5sb2FkZWQ7XG4gICAgICBzdGF0ZS51c2VyID0gZGF0YS51c2VyO1xuICAgICAgcmV0dXJuIHsgLi4uc3RhdGUgfTtcbiAgICB9KTtcbiAgfVxuICB1cGRhdGVBdXRoZW50aWNhdGVkKGF1dGhlbnRpY2F0ZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zdGF0ZS51cGRhdGUoKHN0YXRlKSA9PiB7XG4gICAgICBzdGF0ZS5hdXRoZW50aWNhdGVkID0gYXV0aGVudGljYXRlZDtcbiAgICAgIHJldHVybiB7IC4uLnN0YXRlIH07XG4gICAgfSk7XG4gIH1cbiAgdXBkYXRlVXNlcih1c2VyOiBVc2VyKSB7XG4gICAgdGhpcy5fc3RhdGUudXBkYXRlKChzdGF0ZSkgPT4ge1xuICAgICAgc3RhdGUudXNlciA9IHVzZXI7XG4gICAgICByZXR1cm4geyAuLi5zdGF0ZSB9O1xuICAgIH0pO1xuICB9XG4gIHVwZGF0ZUVtYWlsKGVtYWlsOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zdGF0ZS51cGRhdGUoKHN0YXRlKSA9PiB7XG4gICAgICBzdGF0ZS51c2VyIS5lbWFpbCA9IGVtYWlsO1xuICAgICAgcmV0dXJuIHsgLi4uc3RhdGUgfTtcbiAgICB9KTtcbiAgfVxufVxuIl19","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { map, tap } from 'rxjs/operators';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { ActivatedRoute } from '@angular/router';\nimport { AuthStore } from '../auth.store';\nimport * as i0 from \"@angular/core\";\nexport class AuthService {\n environment = inject(APP_CONFIG);\n http = inject(HttpClient);\n route = inject(ActivatedRoute);\n authStore = inject(AuthStore);\n authenticated = this.authStore.authenticated;\n userId = this.authStore.userId;\n user = this.authStore.user;\n roles = this.authStore.roles;\n loaded = this.authStore.loaded;\n introspect() {\n return this.http\n .get(`${this.environment.baseUrl}/auth/introspect`, {\n withCredentials: true,\n })\n .pipe(map((res) => {\n this.authStore.update({\n authenticated: res.authenticated,\n userId: res.userId,\n roles: res.roles,\n loaded: true,\n });\n if (res.authenticated) {\n this.me().subscribe();\n }\n return res;\n }));\n }\n me() {\n return this.http\n .get(`${this.environment.baseUrl}/auth/users/me`, {\n withCredentials: true,\n })\n .pipe(map((res) => {\n this.authStore.updateUser(res.data);\n return res;\n }));\n }\n wechatLogin(code, state) {\n return this.http.post(`${this.environment.baseUrl}/auth/wechat/login?code=${code}&state=${state}`, {}, {\n withCredentials: true,\n });\n }\n wechatDisconnect() {\n return this.http.post(`${this.environment.baseUrl}/auth/wechat/disconnect`, {}, {\n withCredentials: true,\n });\n }\n requestFaceIdDetect() {\n return this.http.get(`${this.environment.baseUrl}/auth/users/face-id`, {\n withCredentials: true,\n });\n }\n faceIdStatus() {\n return this.http.get(`${this.environment.baseUrl}/auth/users/face-id/status/me`, {\n withCredentials: true,\n });\n }\n faceIdStatusByToken(token) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/face-id/status/me/by`, {\n params: { token: token },\n withCredentials: true,\n });\n }\n wechatStatus(options) {\n return this.http.get(`${this.environment.baseUrl}/auth/wechat/status/by`, {\n params: options,\n withCredentials: true,\n });\n }\n login(data) {\n return this.http\n .post(`${this.environment.baseUrl}/auth/login`, data, {\n withCredentials: true,\n })\n .pipe(map((res) => {\n this.authStore.updateAuthenticated(true);\n return res.data;\n }));\n }\n signup(data) {\n return this.http\n .post(`${this.environment.baseUrl}/auth/signup`, data, {\n withCredentials: true,\n })\n .pipe(map((res) => {\n this.authStore.updateAuthenticated(true);\n return res;\n }));\n }\n logout() {\n return this.http\n .get(`${this.environment.baseUrl}/auth/logout`, {\n withCredentials: true,\n })\n .pipe(map((res) => {\n this.authStore.updateAuthenticated(false);\n return res;\n }));\n }\n changePassword(data) {\n return this.http\n .put(`${this.environment.baseUrl}/auth/users/password`, data, {\n withCredentials: true,\n })\n .pipe(map((user) => {\n return user;\n }), tap((_) => {\n this.authStore.updateAuthenticated(true);\n }));\n }\n lookup(account, next) {\n return this.http\n .post(`${this.environment.baseUrl}/auth/lookup`, {\n account,\n next,\n }, { withCredentials: false })\n .pipe(map((user) => {\n return user;\n }));\n }\n challenge(username, password, next) {\n return this.http\n .post(`${this.environment.baseUrl}/auth/challenge`, {\n username,\n password,\n next,\n }, { withCredentials: true })\n .pipe(map((user) => {\n return user;\n }), tap((_) => {\n this.authStore.updateAuthenticated(true);\n }));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hdXRoL3NyYy9saWIvc2VydmljZXMvYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBa0IsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzFDLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDakMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQixLQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQy9CLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO0lBQzdDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUMvQixJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7SUFDM0IsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO0lBQzdCLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUV4QixVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNiLEdBQUcs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SUFDTixDQUFDO3VHQXhLVSxXQUFXOzJHQUFYLFdBQVcsY0FERSxNQUFNOzsyRkFDbkIsV0FBVztrQkFEdkIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBhc3N3b3JkQ2hhbmdlLCBBUFBfQ09ORklHIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEludHJvc3BlY3RSZXNwb25zZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvYXV0aC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXV0aFN0b3JlIH0gZnJvbSAnLi4vYXV0aC5zdG9yZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2Uge1xuICBlbnZpcm9ubWVudCA9IGluamVjdChBUFBfQ09ORklHKTtcbiAgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICBhdXRoU3RvcmUgPSBpbmplY3QoQXV0aFN0b3JlKTtcbiAgYXV0aGVudGljYXRlZCA9IHRoaXMuYXV0aFN0b3JlLmF1dGhlbnRpY2F0ZWQ7XG4gIHVzZXJJZCA9IHRoaXMuYXV0aFN0b3JlLnVzZXJJZDtcbiAgdXNlciA9IHRoaXMuYXV0aFN0b3JlLnVzZXI7XG4gIHJvbGVzID0gdGhpcy5hdXRoU3RvcmUucm9sZXM7XG4gIGxvYWRlZCA9IHRoaXMuYXV0aFN0b3JlLmxvYWRlZDtcblxuICBwdWJsaWMgaW50cm9zcGVjdCgpOiBPYnNlcnZhYmxlPEludHJvc3BlY3RSZXNwb25zZSB8IG5ldmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC9pbnRyb3NwZWN0YCwge1xuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzKSA9PiB7XG4gICAgICAgICAgdGhpcy5hdXRoU3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIGF1dGhlbnRpY2F0ZWQ6IHJlcy5hdXRoZW50aWNhdGVkLFxuICAgICAgICAgICAgdXNlcklkOiByZXMudXNlcklkLFxuICAgICAgICAgICAgcm9sZXM6IHJlcy5yb2xlcyxcbiAgICAgICAgICAgIGxvYWRlZDogdHJ1ZSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBpZiAocmVzLmF1dGhlbnRpY2F0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMubWUoKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG4gIG1lKCkge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvbWVgLCB7XG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICB0aGlzLmF1dGhTdG9yZS51cGRhdGVVc2VyKHJlcy5kYXRhKTtcbiAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cbiAgd2VjaGF0TG9naW4oY29kZTogc3RyaW5nLCBzdGF0ZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueT4oXG4gICAgICBgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvd2VjaGF0L2xvZ2luP2NvZGU9JHtjb2RlfSZzdGF0ZT0ke3N0YXRlfWAsXG4gICAgICB7fSxcbiAgICAgIHtcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgfSxcbiAgICApO1xuICB9XG4gIHdlY2hhdERpc2Nvbm5lY3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueT4oXG4gICAgICBgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvd2VjaGF0L2Rpc2Nvbm5lY3RgLFxuICAgICAge30sXG4gICAgICB7XG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuICByZXF1ZXN0RmFjZUlkRGV0ZWN0KCkge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL2ZhY2UtaWRgLCB7XG4gICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgfSk7XG4gIH1cbiAgZmFjZUlkU3RhdHVzKCkge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL2ZhY2UtaWQvc3RhdHVzL21lYCwge1xuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIGZhY2VJZFN0YXR1c0J5VG9rZW4odG9rZW46IGFueSkge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL2ZhY2UtaWQvc3RhdHVzL21lL2J5YCwge1xuICAgICAgcGFyYW1zOiB7IHRva2VuOiB0b2tlbiB9LFxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIHdlY2hhdFN0YXR1cyhvcHRpb25zOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC93ZWNoYXQvc3RhdHVzL2J5YCwge1xuICAgICAgcGFyYW1zOiBvcHRpb25zLFxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIGxvZ2luKGRhdGE6IGFueSkge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL2xvZ2luYCwgZGF0YSwge1xuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzKSA9PiB7XG4gICAgICAgICAgdGhpcy5hdXRoU3RvcmUudXBkYXRlQXV0aGVudGljYXRlZCh0cnVlKTtcbiAgICAgICAgICByZXR1cm4gcmVzLmRhdGE7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuICBzaWdudXAoZGF0YTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC9zaWdudXBgLCBkYXRhLCB7XG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICB0aGlzLmF1dGhTdG9yZS51cGRhdGVBdXRoZW50aWNhdGVkKHRydWUpO1xuICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuICBsb2dvdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC9sb2dvdXRgLCB7XG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICB0aGlzLmF1dGhTdG9yZS51cGRhdGVBdXRoZW50aWNhdGVkKGZhbHNlKTtcbiAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cbiAgY2hhbmdlUGFzc3dvcmQoZGF0YTogUGFzc3dvcmRDaGFuZ2UpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucHV0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL3Bhc3N3b3JkYCwgZGF0YSwge1xuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodXNlcikgPT4ge1xuICAgICAgICAgIHJldHVybiB1c2VyO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFwKChfKSA9PiB7XG4gICAgICAgICAgdGhpcy5hdXRoU3RvcmUudXBkYXRlQXV0aGVudGljYXRlZCh0cnVlKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG4gIGxvb2t1cChhY2NvdW50OiBzdHJpbmcsIG5leHQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PGFueT4oXG4gICAgICAgIGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC9sb29rdXBgLFxuICAgICAgICB7XG4gICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICBuZXh0LFxuICAgICAgICB9LFxuICAgICAgICB7IHdpdGhDcmVkZW50aWFsczogZmFsc2UgfSxcbiAgICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHVzZXIpID0+IHtcbiAgICAgICAgICByZXR1cm4gdXNlcjtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG4gIGNoYWxsZW5nZSh1c2VybmFtZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nLCBuZXh0OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdDxhbnk+KFxuICAgICAgICBgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvY2hhbGxlbmdlYCxcbiAgICAgICAge1xuICAgICAgICAgIHVzZXJuYW1lLFxuICAgICAgICAgIHBhc3N3b3JkLFxuICAgICAgICAgIG5leHQsXG4gICAgICAgIH0sXG4gICAgICAgIHsgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0sXG4gICAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1c2VyKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHVzZXI7XG4gICAgICAgIH0pLFxuICAgICAgICB0YXAoKF8pID0+IHtcbiAgICAgICAgICB0aGlzLmF1dGhTdG9yZS51cGRhdGVBdXRoZW50aWNhdGVkKHRydWUpO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==","import { Component, inject, output } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { SnackBarService } from '@rolatech/angular-services';\nimport QRCode from 'qrcode';\nimport { MatButtonModule } from '@angular/material/button';\nimport { AuthService } from '../../services/auth.service';\nimport { SpinnerComponent } from '@rolatech/angular-components';\nimport * as i0 from \"@angular/core\";\nexport class FaceidDetectDialogComponent {\n dialogRef = inject(MatDialogRef);\n environment = inject(APP_CONFIG);\n data = inject(MAT_DIALOG_DATA);\n authService = inject(AuthService);\n snackBarService = inject(SnackBarService);\n output = output();\n loading = false;\n qrcodeUrl = '';\n verified = false;\n interval;\n constructor() {\n this.request();\n }\n ngOnDestroy() {\n clearInterval(this.interval);\n }\n request() {\n this.loading = true;\n this.authService.requestFaceIdDetect().subscribe({\n next: ({ data }) => {\n this.genQRCode(data.url);\n this.loop();\n },\n error: () => {\n this.loading = false;\n },\n });\n }\n cancel() {\n clearInterval(this.interval);\n this.dialogRef.close(this.verified);\n }\n loop() {\n this.loading = false;\n this.interval = setInterval(() => {\n this.authService.faceIdStatus().subscribe({\n next: (res) => {\n if (res.data.verified) {\n clearInterval(this.interval);\n this.dialogRef.close(true);\n }\n },\n });\n }, 2000);\n }\n async genQRCode(url) {\n try {\n this.qrcodeUrl = await QRCode.toDataURL(url);\n }\n catch (err) {\n console.error(err);\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: FaceidDetectDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.4\", type: FaceidDetectDialogComponent, isStandalone: true, selector: \"rolatech-faceid-detect-dialog\", outputs: { output: \"output\" }, ngImport: i0, template: \"<div class=\\\"flex flex-col p-3 max-w-[500px] mx-auto\\\">\\n <div class=\\\"w-[256px] h-[256px] mx-auto flex justify-center items-center\\\">\\n @if (loading) {\\n <div>\\n <rolatech-spinner></rolatech-spinner>\\n </div>\\n }\\n <img [src]=\\\"qrcodeUrl\\\" alt />\\n </div>\\n</div>\\n\", styles: [\"*{margin:0;padding:0}.normalPanel .panelContent{width:188px;height:188px}.normalPanel .wrp_code{position:relative;width:188px;height:188px;margin:0}.impowerBox .title,.normalPanel .info{display:none}.impowerBox .qrcode{margin-top:0;border:0;width:188px;height:188px}#MAXIM{content:\\\"veg20170418191511\\\"}mat-mdc-dialog-content mdc-dialog__content{padding:0}\\n\"], dependencies: [{ kind: \"component\", type: SpinnerComponent, selector: \"rolatech-spinner\", inputs: [\"title\"] }, { kind: \"ngmodule\", type: MatButtonModule }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: FaceidDetectDialogComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-faceid-detect-dialog', imports: [SpinnerComponent, MatButtonModule], template: \"<div class=\\\"flex flex-col p-3 max-w-[500px] mx-auto\\\">\\n <div class=\\\"w-[256px] h-[256px] mx-auto flex justify-center items-center\\\">\\n @if (loading) {\\n <div>\\n <rolatech-spinner></rolatech-spinner>\\n </div>\\n }\\n <img [src]=\\\"qrcodeUrl\\\" alt />\\n </div>\\n</div>\\n\", styles: [\"*{margin:0;padding:0}.normalPanel .panelContent{width:188px;height:188px}.normalPanel .wrp_code{position:relative;width:188px;height:188px;margin:0}.impowerBox .title,.normalPanel .info{display:none}.impowerBox .qrcode{margin-top:0;border:0;width:188px;height:188px}#MAXIM{content:\\\"veg20170418191511\\\"}mat-mdc-dialog-content mdc-dialog__content{padding:0}\\n\"] }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjZWlkLWRldGVjdC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hdXRoL3NyYy9saWIvY29tcG9uZW50cy9mYWNlaWQtZGV0ZWN0LWRpYWxvZy9mYWNlaWQtZGV0ZWN0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9jb21wb25lbnRzL2ZhY2VpZC1kZXRlY3QtZGlhbG9nL2ZhY2VpZC1kZXRlY3QtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQTJELE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQVFoRSxNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDakMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxJQUFJLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQy9CLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMxQyxNQUFNLEdBQUcsTUFBTSxFQUFPLENBQUM7SUFDdkIsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNoQixTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ2YsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQixRQUFRLENBQUM7SUFDVDtRQUNFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBQ0QsV0FBVztRQUNULGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFLENBQUMsU0FBUyxDQUFDO1lBQy9DLElBQUksRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTTtRQUNKLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFDRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFO1lBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDO2dCQUN4QyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtvQkFDWixJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQ3RCLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUM3QixDQUFDO2dCQUNILENBQUM7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDWCxDQUFDO0lBQ0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFXO1FBQ3pCLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQzt1R0FwRFUsMkJBQTJCOzJGQUEzQiwyQkFBMkIsd0hDZnhDLHdTQVVBLGdhREdZLGdCQUFnQiwrRUFBRSxlQUFlOzsyRkFFaEMsMkJBQTJCO2tCQU52QyxTQUFTOytCQUNFLCtCQUErQixXQUdoQyxDQUFDLGdCQUFnQixFQUFFLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRG9DaGVjaywgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiwgaW5qZWN0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IEFQUF9DT05GSUcgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItc2VydmljZXMnO1xuaW1wb3J0IFFSQ29kZSBmcm9tICdxcmNvZGUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IFNwaW5uZXJDb21wb25lbnQgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtZmFjZWlkLWRldGVjdC1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmFjZWlkLWRldGVjdC1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mYWNlaWQtZGV0ZWN0LWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxuICBpbXBvcnRzOiBbU3Bpbm5lckNvbXBvbmVudCwgTWF0QnV0dG9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgRmFjZWlkRGV0ZWN0RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgZGlhbG9nUmVmID0gaW5qZWN0KE1hdERpYWxvZ1JlZik7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBkYXRhID0gaW5qZWN0KE1BVF9ESUFMT0dfREFUQSk7XG4gIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgc25hY2tCYXJTZXJ2aWNlID0gaW5qZWN0KFNuYWNrQmFyU2VydmljZSk7XG4gIG91dHB1dCA9IG91dHB1dDxhbnk+KCk7XG4gIGxvYWRpbmcgPSBmYWxzZTtcbiAgcXJjb2RlVXJsID0gJyc7XG4gIHZlcmlmaWVkID0gZmFsc2U7XG4gIGludGVydmFsO1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnJlcXVlc3QoKTtcbiAgfVxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWwpO1xuICB9XG4gIHJlcXVlc3QoKSB7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLnJlcXVlc3RGYWNlSWREZXRlY3QoKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHsgZGF0YSB9KSA9PiB7XG4gICAgICAgIHRoaXMuZ2VuUVJDb2RlKGRhdGEudXJsKTtcbiAgICAgICAgdGhpcy5sb29wKCk7XG4gICAgICB9LFxuICAgICAgZXJyb3I6ICgpID0+IHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIGNhbmNlbCgpIHtcbiAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWwpO1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMudmVyaWZpZWQpO1xuICB9XG4gIGxvb3AoKSB7XG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5pbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZmFjZUlkU3RhdHVzKCkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICAgIGlmIChyZXMuZGF0YS52ZXJpZmllZCkge1xuICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsKTtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRydWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0sIDIwMDApO1xuICB9XG4gIGFzeW5jIGdlblFSQ29kZSh1cmw6IHN0cmluZykge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnFyY29kZVVybCA9IGF3YWl0IFFSQ29kZS50b0RhdGFVUkwodXJsKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHAtMyBtYXgtdy1bNTAwcHhdIG14LWF1dG9cIj5cbiAgPGRpdiBjbGFzcz1cInctWzI1NnB4XSBoLVsyNTZweF0gbXgtYXV0byBmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlclwiPlxuICAgIEBpZiAobG9hZGluZykge1xuICAgICAgPGRpdj5cbiAgICAgICAgPHJvbGF0ZWNoLXNwaW5uZXI+PC9yb2xhdGVjaC1zcGlubmVyPlxuICAgICAgPC9kaXY+XG4gICAgfVxuICAgIDxpbWcgW3NyY109XCJxcmNvZGVVcmxcIiBhbHQgLz5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==","export var UserStatus;\n(function (UserStatus) {\n UserStatus[\"ACTIVE\"] = \"\\u6B63\\u5E38\";\n UserStatus[\"AWAITING\"] = \"\\u5BA1\\u6838\\u4E2D\";\n UserStatus[\"DELETED\"] = \"\\u5DF2\\u5220\\u9664\";\n})(UserStatus || (UserStatus = {}));\nexport var AddressType;\n(function (AddressType) {\n AddressType[\"HOME\"] = \"\\u4F4F\\u5B85\\u5730\\u5740\";\n AddressType[\"WORK\"] = \"\\u5DE5\\u4F5C\\u5730\\u5740\";\n AddressType[\"BILLING\"] = \"\\u8D26\\u5355\\u5730\\u5740\";\n AddressType[\"SHIPPING\"] = \"\\u8D2D\\u7269\\u5730\\u5740\";\n AddressType[\"OTHER\"] = \"\\u5176\\u4ED6\";\n})(AddressType || (AddressType = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9pbnRlcmZhY2VzL2F1dGguaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCQSxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3BCLHFDQUFhLENBQUE7SUFDYiw2Q0FBZ0IsQ0FBQTtJQUNoQiw0Q0FBZSxDQUFBO0FBQ2pCLENBQUMsRUFKVyxVQUFVLEtBQVYsVUFBVSxRQUlyQjtBQXNCRCxNQUFNLENBQU4sSUFBWSxXQU1YO0FBTkQsV0FBWSxXQUFXO0lBQ3JCLGdEQUFhLENBQUE7SUFDYixnREFBYSxDQUFBO0lBQ2IsbURBQWdCLENBQUE7SUFDaEIsb0RBQWlCLENBQUE7SUFDakIscUNBQVksQ0FBQTtBQUNkLENBQUMsRUFOVyxXQUFXLEtBQVgsV0FBVyxRQU10QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVXNlciB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgZmlyc3ROYW1lOiBzdHJpbmc7XG4gIGxhc3ROYW1lOiBzdHJpbmc7XG4gIHVzZXJuYW1lOiBzdHJpbmc7XG4gIGF2YXRhcjogc3RyaW5nO1xuICBwaG9uZTogc3RyaW5nO1xuICBlbWFpbDogc3RyaW5nO1xuICBiaW86IHN0cmluZztcbiAgcm9sZXM6IFJvbGVbXTtcbiAgZ2VuZGVyOiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIFJvbGUge1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFzc3dvcmRDaGFuZ2Uge1xuICBvbGRQYXNzd29yZDogc3RyaW5nO1xuICBuZXdQYXNzd29yZDogc3RyaW5nO1xuICBuZTJQYXNzd29yZDogc3RyaW5nO1xufVxuZXhwb3J0IGVudW0gVXNlclN0YXR1cyB7XG4gIEFDVElWRSA9ICfmraPluLgnLFxuICBBV0FJVElORyA9ICflrqHmoLjkuK0nLFxuICBERUxFVEVEID0gJ+W3suWIoOmZpCcsXG59XG5leHBvcnQgaW50ZXJmYWNlIEludHJvc3BlY3RSZXNwb25zZSB7XG4gIHVzZXJJZDogc3RyaW5nO1xuICByb2xlczogc3RyaW5nW107XG4gIGF1dGhlbnRpY2F0ZWQ6IGJvb2xlYW47XG59XG5leHBvcnQgaW50ZXJmYWNlIEFkZHJlc3Mge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHBob25lOiBzdHJpbmc7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIHR5cGU6IEFkZHJlc3NUeXBlO1xuICBjb3VudHJ5OiBzdHJpbmc7XG4gIHByb3ZpbmNlOiBzdHJpbmc7XG4gIGNpdHk6IHN0cmluZztcbiAgZGlzdHJpY3Q6IHN0cmluZztcbiAgc3RyZWV0OiBzdHJpbmc7XG4gIGRldGFpbDogc3RyaW5nO1xuICBsYXRpdHVkZTogc3RyaW5nO1xuICBsb25naXR1ZGU6IHN0cmluZztcbiAgdXNlcklkOiBzdHJpbmc7XG59XG5leHBvcnQgZW51bSBBZGRyZXNzVHlwZSB7XG4gIEhPTUUgPSAn5L2P5a6F5Zyw5Z2AJyxcbiAgV09SSyA9ICflt6XkvZzlnLDlnYAnLFxuICBCSUxMSU5HID0gJ+i0puWNleWcsOWdgCcsXG4gIFNISVBQSU5HID0gJ+i0reeJqeWcsOWdgCcsXG4gIE9USEVSID0gJ+WFtuS7licsXG59XG4iXX0=","import { Component, model, output } from '@angular/core';\nimport { AngularCommonModule } from '@rolatech/angular-common';\nimport { AngularComponentsModule } from '@rolatech/angular-components';\nimport { AddressType } from '../../interfaces/auth.interface';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@angular/material/form-field\";\nimport * as i3 from \"@angular/material/input\";\nexport class AddressComponent {\n addressType = AddressType;\n enumKeys = Object.keys(this.addressType).filter((key) => isNaN(Number(key)));\n address = model(...(ngDevMode ? [undefined, { debugName: \"address\" }] : []));\n output = output();\n ngOnInit() { }\n ngDoCheck() {\n this.output.emit(this.address());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AddressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.4\", type: AddressComponent, isStandalone: true, selector: \"rolatech-address\", inputs: { address: { classPropertyName: \"address\", publicName: \"address\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { address: \"addressChange\", output: \"output\" }, ngImport: i0, template: \"<div>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Name </mat-label>\\n <input matInput [(ngModel)]=\\\"address().name\\\" />\\n </mat-form-field>\\n @if (address().type === addressType.BILLING) {\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Email </mat-label>\\n <input matInput [(ngModel)]=\\\"address().email\\\" />\\n </mat-form-field>\\n }\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input matInput [(ngModel)]=\\\"address().phone\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> province </mat-label>\\n <input matInput [(ngModel)]=\\\"address().province\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> City </mat-label>\\n <input matInput [(ngModel)]=\\\"address().city\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> District </mat-label>\\n <input matInput [(ngModel)]=\\\"address().district\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Street </mat-label>\\n <input matInput [(ngModel)]=\\\"address().street\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Detail </mat-label>\\n <input matInput [(ngModel)]=\\\"address().detail\\\" />\\n </mat-form-field>\\n</div>\\n\", styles: [\"mat-form-field{width:100%}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AngularCommonModule }, { kind: \"directive\", type: i1.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AngularComponentsModule }, { kind: \"component\", type: i2.MatFormField, selector: \"mat-form-field\", inputs: [\"hideRequiredMarker\", \"color\", \"floatLabel\", \"appearance\", \"subscriptSizing\", \"hintLabel\"], exportAs: [\"matFormField\"] }, { kind: \"directive\", type: i2.MatLabel, selector: \"mat-label\" }, { kind: \"directive\", type: i3.MatInput, selector: \"input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]\", inputs: [\"disabled\", \"id\", \"placeholder\", \"name\", \"required\", \"type\", \"errorStateMatcher\", \"aria-describedby\", \"value\", \"readonly\", \"disabledInteractive\"], exportAs: [\"matInput\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AddressComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-address', imports: [AngularCommonModule, AngularComponentsModule], template: \"<div>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Name </mat-label>\\n <input matInput [(ngModel)]=\\\"address().name\\\" />\\n </mat-form-field>\\n @if (address().type === addressType.BILLING) {\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Email </mat-label>\\n <input matInput [(ngModel)]=\\\"address().email\\\" />\\n </mat-form-field>\\n }\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input matInput [(ngModel)]=\\\"address().phone\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> province </mat-label>\\n <input matInput [(ngModel)]=\\\"address().province\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> City </mat-label>\\n <input matInput [(ngModel)]=\\\"address().city\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> District </mat-label>\\n <input matInput [(ngModel)]=\\\"address().district\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Street </mat-label>\\n <input matInput [(ngModel)]=\\\"address().street\\\" />\\n </mat-form-field>\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Detail </mat-label>\\n <input matInput [(ngModel)]=\\\"address().detail\\\" />\\n </mat-form-field>\\n</div>\\n\", styles: [\"mat-form-field{width:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9jb21wb25lbnRzL2FkZHJlc3MvYWRkcmVzcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9jb21wb25lbnRzL2FkZHJlc3MvYWRkcmVzcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFXLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7OztBQVE5RCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDMUIsUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0UsT0FBTyxHQUFHLEtBQUssNkRBQU8sQ0FBQztJQUN2QixNQUFNLEdBQUcsTUFBTSxFQUFPLENBQUM7SUFFdkIsUUFBUSxLQUFVLENBQUM7SUFFbkIsU0FBUztRQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7dUdBVlUsZ0JBQWdCOzJGQUFoQixnQkFBZ0IsK1FDWDdCLDQwQ0FvQ0EscUZEN0JZLG1CQUFtQiw4bUJBQUUsdUJBQXVCOzsyRkFJM0MsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNFLGtCQUFrQixXQUNuQixDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBEb0NoZWNrLCBtb2RlbCwgT25Jbml0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFuZ3VsYXJDb21tb25Nb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudHNNb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IEFkZHJlc3NUeXBlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hdXRoLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWFkZHJlc3MnLFxuICBpbXBvcnRzOiBbQW5ndWxhckNvbW1vbk1vZHVsZSwgQW5ndWxhckNvbXBvbmVudHNNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRkcmVzcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9hZGRyZXNzLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQWRkcmVzc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgRG9DaGVjayB7XG4gIGFkZHJlc3NUeXBlID0gQWRkcmVzc1R5cGU7XG4gIGVudW1LZXlzID0gT2JqZWN0LmtleXModGhpcy5hZGRyZXNzVHlwZSkuZmlsdGVyKChrZXkpID0+IGlzTmFOKE51bWJlcihrZXkpKSk7XG4gIGFkZHJlc3MgPSBtb2RlbDxhbnk+KCk7XG4gIG91dHB1dCA9IG91dHB1dDxhbnk+KCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICB0aGlzLm91dHB1dC5lbWl0KHRoaXMuYWRkcmVzcygpKTtcbiAgfVxufVxuIiwiPGRpdj5cbiAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgPG1hdC1sYWJlbCBpMThuPiBOYW1lIDwvbWF0LWxhYmVsPlxuICAgIDxpbnB1dCBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cImFkZHJlc3MoKS5uYW1lXCIgLz5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgQGlmIChhZGRyZXNzKCkudHlwZSA9PT0gYWRkcmVzc1R5cGUuQklMTElORykge1xuICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgPG1hdC1sYWJlbCBpMThuPiBFbWFpbCA8L21hdC1sYWJlbD5cbiAgICAgIDxpbnB1dCBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cImFkZHJlc3MoKS5lbWFpbFwiIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgfVxuICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIj5cbiAgICA8bWF0LWxhYmVsIGkxOG4+IFBob25lIDwvbWF0LWxhYmVsPlxuICAgIDxpbnB1dCBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cImFkZHJlc3MoKS5waG9uZVwiIC8+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgIDxtYXQtbGFiZWwgaTE4bj4gcHJvdmluY2UgPC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IG1hdElucHV0IFsobmdNb2RlbCldPVwiYWRkcmVzcygpLnByb3ZpbmNlXCIgLz5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgPG1hdC1sYWJlbCBpMThuPiBDaXR5IDwvbWF0LWxhYmVsPlxuICAgIDxpbnB1dCBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cImFkZHJlc3MoKS5jaXR5XCIgLz5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgPG1hdC1sYWJlbCBpMThuPiBEaXN0cmljdCA8L21hdC1sYWJlbD5cbiAgICA8aW5wdXQgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJhZGRyZXNzKCkuZGlzdHJpY3RcIiAvPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIj5cbiAgICA8bWF0LWxhYmVsIGkxOG4+IFN0cmVldCA8L21hdC1sYWJlbD5cbiAgICA8aW5wdXQgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJhZGRyZXNzKCkuc3RyZWV0XCIgLz5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgPG1hdC1sYWJlbCBpMThuPiBEZXRhaWwgPC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IG1hdElucHV0IFsobmdNb2RlbCldPVwiYWRkcmVzcygpLmRldGFpbFwiIC8+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Rpdj5cbiJdfQ==","import { isPlatformBrowser } from '@angular/common';\nimport { inject, PLATFORM_ID } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { map, of } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nexport const AuthGuard = (route, state) => {\n const authService = inject(AuthService);\n const router = inject(Router);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n // window = inject(WINDOW)\n if (!isPlatformBrowser(platformId)) {\n return of(false);\n }\n return authService.introspect().pipe(map(({ roles, authenticated }) => {\n const routeRoles = route.data['roles'];\n const passRoled = routeRoles ? roles?.some((r) => routeRoles.indexOf(r) >= 0) : true;\n if (authenticated && !passRoled) {\n router.navigate(['/forbidden']);\n return false;\n }\n if (authenticated) {\n if (window.location.href.includes(environment.accountsUrl) && !isContinue) {\n // window.location.href = `${environment.myaccountUrl}/${lang}`;\n window.location.href = `${environment.myaccountUrl}`;\n }\n if (isContinue) {\n window.location.href = continueUrl;\n }\n }\n else {\n if (!isContinue) {\n window.location.href = environment.accountsUrl + `/signin?continue=${window.location.href}`;\n }\n return true;\n }\n return authenticated;\n }));\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYXV0aC9zcmMvbGliL2d1YXJkcy9hdXRoLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBaUIsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV2RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQWtCLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBdUIsRUFBRTtJQUM1RSxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2QyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEQsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsRCwwQkFBMEI7SUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDbkMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUNELE9BQU8sV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FDbEMsR0FBRyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRTtRQUMvQixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3JGLElBQUksYUFBYSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDaEMsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDMUUsZ0VBQWdFO2dCQUNoRSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxHQUFHLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN2RCxDQUFDO1lBQ0QsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDZixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUM7WUFDckMsQ0FBQztRQUNILENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNoQixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsV0FBVyxHQUFHLG9CQUFvQixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQzlGLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQWN0aXZhdGVGbiwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFQUF9DT05GSUcgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xuXG5leHBvcnQgY29uc3QgQXV0aEd1YXJkOiBDYW5BY3RpdmF0ZUZuID0gKHJvdXRlLCBzdGF0ZSk6IE9ic2VydmFibGU8Ym9vbGVhbj4gPT4ge1xuICBjb25zdCBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG4gIGNvbnN0IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBjb25zdCBlbnZpcm9ubWVudCA9IGluamVjdChBUFBfQ09ORklHKTtcbiAgY29uc3QgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIGNvbnN0IGlzQ29udGludWUgPSBzdGF0ZS51cmwuaW5jbHVkZXMoJ2NvbnRpbnVlJyk7XG4gIGNvbnN0IGNvbnRpbnVlVXJsID0gcm91dGUucXVlcnlQYXJhbXNbJ2NvbnRpbnVlJ107XG4gIC8vIHdpbmRvdyA9IGluamVjdChXSU5ET1cpXG4gIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm1JZCkpIHtcbiAgICByZXR1cm4gb2YoZmFsc2UpO1xuICB9XG4gIHJldHVybiBhdXRoU2VydmljZS5pbnRyb3NwZWN0KCkucGlwZShcbiAgICBtYXAoKHsgcm9sZXMsIGF1dGhlbnRpY2F0ZWQgfSkgPT4ge1xuICAgICAgY29uc3Qgcm91dGVSb2xlcyA9IHJvdXRlLmRhdGFbJ3JvbGVzJ107XG4gICAgICBjb25zdCBwYXNzUm9sZWQgPSByb3V0ZVJvbGVzID8gcm9sZXM/LnNvbWUoKHIpID0+IHJvdXRlUm9sZXMuaW5kZXhPZihyKSA+PSAwKSA6IHRydWU7XG4gICAgICBpZiAoYXV0aGVudGljYXRlZCAmJiAhcGFzc1JvbGVkKSB7XG4gICAgICAgIHJvdXRlci5uYXZpZ2F0ZShbJy9mb3JiaWRkZW4nXSk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGlmIChhdXRoZW50aWNhdGVkKSB7XG4gICAgICAgIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcyhlbnZpcm9ubWVudC5hY2NvdW50c1VybCkgJiYgIWlzQ29udGludWUpIHtcbiAgICAgICAgICAvLyB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGAke2Vudmlyb25tZW50Lm15YWNjb3VudFVybH0vJHtsYW5nfWA7XG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBgJHtlbnZpcm9ubWVudC5teWFjY291bnRVcmx9YDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNDb250aW51ZSkge1xuICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gY29udGludWVVcmw7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghaXNDb250aW51ZSkge1xuICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgKyBgL3NpZ25pbj9jb250aW51ZT0ke3dpbmRvdy5sb2NhdGlvbi5ocmVmfWA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICByZXR1cm4gYXV0aGVudGljYXRlZDtcbiAgICB9KSxcbiAgKTtcbn07XG4iXX0=","import { Component, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport * as i0 from \"@angular/core\";\nexport class AuthDialogComponent {\n dialogRef = inject(MatDialogRef);\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.4\", type: AuthDialogComponent, isStandalone: true, selector: \"rolatech-auth-dialog\", ngImport: i0, template: \"<p>auth-dialog works!</p>\\n\", styles: [\"\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: MatDialogModule }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthDialogComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-auth-dialog', imports: [CommonModule, MatDialogModule], template: \"<p>auth-dialog works!</p>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hdXRoL3NyYy9saWIvY29tcG9uZW50cy9hdXRoLWRpYWxvZy9hdXRoLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9jb21wb25lbnRzL2F1dGgtZGlhbG9nL2F1dGgtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWEsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQVFwRixNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7dUdBRHRCLG1CQUFtQjsyRkFBbkIsbUJBQW1CLGdGQ1ZoQyw2QkFDQSx5RERLWSxZQUFZLDhCQUFFLGVBQWU7OzJGQUk1QixtQkFBbUI7a0JBTi9CLFNBQVM7K0JBQ0Usc0JBQXNCLFdBQ3ZCLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dNb2R1bGUsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWF1dGgtZGlhbG9nJyxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0RGlhbG9nTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dGgtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2F1dGgtZGlhbG9nLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQXV0aERpYWxvZ0NvbXBvbmVudCB7XG4gIGRpYWxvZ1JlZiA9IGluamVjdChNYXREaWFsb2dSZWYpO1xufVxuIiwiPHA+YXV0aC1kaWFsb2cgd29ya3MhPC9wPlxuIl19","import { isPlatformBrowser } from '@angular/common';\nimport { inject, PLATFORM_ID } from '@angular/core';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { map, of } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthDialogComponent } from '../components/auth-dialog/auth-dialog.component';\nexport const AuthDialogGuard = (route, state) => {\n const authService = inject(AuthService);\n const dialog = inject(MatDialog);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n if (!isPlatformBrowser(platformId)) {\n return of(false);\n }\n return authService.introspect().pipe(map(({ roles, authenticated }) => {\n if (!authenticated) {\n if (window.location.href.includes(environment.accountsUrl) && !isContinue) {\n window.location.href = environment.myaccountUrl;\n }\n if (isContinue) {\n window.location.href = continueUrl;\n }\n }\n else {\n const dialogRef = dialog.open(AuthDialogComponent, {\n data: {},\n });\n dialogRef.afterClosed().subscribe((result) => { });\n return true;\n }\n return authenticated;\n }));\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1kaWFsb2cuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9ndWFyZHMvYXV0aC1kaWFsb2cuZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLE1BQU0sRUFBYyxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBUSxHQUFHLEVBQWMsRUFBRSxFQUFtQixNQUFNLE1BQU0sQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXRGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBa0IsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUF1QixFQUFFO0lBQ2xGLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4QyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN2QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFDRCxPQUFPLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQ2xDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUU7UUFDL0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ25CLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUMxRSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDO1lBQ2xELENBQUM7WUFDRCxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNmLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQztZQUNyQyxDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUNqRCxJQUFJLEVBQUUsRUFBRTthQUNULENBQUMsQ0FBQztZQUNILFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYW5BY3RpdmF0ZUZuLCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFQUF9DT05GSUcsIFdJTkRPVyB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBsYXN0LCBtYXAsIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQXV0aERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvYXV0aC1kaWFsb2cvYXV0aC1kaWFsb2cuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IEF1dGhEaWFsb2dHdWFyZDogQ2FuQWN0aXZhdGVGbiA9IChyb3V0ZSwgc3RhdGUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3QgYXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICBjb25zdCBkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcbiAgY29uc3QgZW52aXJvbm1lbnQgPSBpbmplY3QoQVBQX0NPTkZJRyk7XG4gIGNvbnN0IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICBjb25zdCBpc0NvbnRpbnVlID0gc3RhdGUudXJsLmluY2x1ZGVzKCdjb250aW51ZScpO1xuICBjb25zdCBjb250aW51ZVVybCA9IHJvdXRlLnF1ZXJ5UGFyYW1zWydjb250aW51ZSddO1xuICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHBsYXRmb3JtSWQpKSB7XG4gICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgfVxuICByZXR1cm4gYXV0aFNlcnZpY2UuaW50cm9zcGVjdCgpLnBpcGUoXG4gICAgbWFwKCh7IHJvbGVzLCBhdXRoZW50aWNhdGVkIH0pID0+IHtcbiAgICAgIGlmICghYXV0aGVudGljYXRlZCkge1xuICAgICAgICBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoZW52aXJvbm1lbnQuYWNjb3VudHNVcmwpICYmICFpc0NvbnRpbnVlKSB7XG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBlbnZpcm9ubWVudC5teWFjY291bnRVcmw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzQ29udGludWUpIHtcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGNvbnRpbnVlVXJsO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSBkaWFsb2cub3BlbihBdXRoRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgZGF0YToge30sXG4gICAgICAgIH0pO1xuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge30pO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhdXRoZW50aWNhdGVkO1xuICAgIH0pLFxuICApO1xufTtcbiJdfQ==","import { filter } from 'rxjs/operators';\nimport { PLATFORM_ID, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { map, of } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { isPlatformBrowser } from '@angular/common';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nexport const RoleGuard = (route, state) => {\n const authService = inject(AuthService);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const snackBar = inject(MatSnackBar);\n const router = inject(Router);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n if (!isPlatformBrowser(platformId)) {\n return of(false);\n }\n const routeRoles = route.data['roles'];\n // if (!routeRoles) {\n // return of(false);\n // }\n return authService.introspect().pipe(filter((res) => res.roles !== null && res.roles.length > 0), map(({ roles }) => {\n const authed = roles.some((r) => routeRoles?.indexOf(r) >= 0);\n if (!authed) {\n router.navigate(['/forbidden']);\n }\n return authed;\n }));\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYXV0aC9zcmMvbGliL2d1YXJkcy9yb2xlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQWlCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBa0IsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUF1QixFQUFFO0lBQzVFLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4QyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEQsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QyxxQkFBcUI7SUFDckIsc0JBQXNCO0lBQ3RCLElBQUk7SUFDSixPQUFPLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQ2xDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQzNELEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUNoQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUExBVEZPUk1fSUQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQWN0aXZhdGVGbiwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFQUF9DT05GSUcgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuXG5leHBvcnQgY29uc3QgUm9sZUd1YXJkOiBDYW5BY3RpdmF0ZUZuID0gKHJvdXRlLCBzdGF0ZSk6IE9ic2VydmFibGU8Ym9vbGVhbj4gPT4ge1xuICBjb25zdCBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG4gIGNvbnN0IGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBjb25zdCBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgY29uc3Qgc25hY2tCYXIgPSBpbmplY3QoTWF0U25hY2tCYXIpO1xuICBjb25zdCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgY29uc3QgaXNDb250aW51ZSA9IHN0YXRlLnVybC5pbmNsdWRlcygnY29udGludWUnKTtcbiAgY29uc3QgY29udGludWVVcmwgPSByb3V0ZS5xdWVyeVBhcmFtc1snY29udGludWUnXTtcbiAgaWYgKCFpc1BsYXRmb3JtQnJvd3NlcihwbGF0Zm9ybUlkKSkge1xuICAgIHJldHVybiBvZihmYWxzZSk7XG4gIH1cbiAgY29uc3Qgcm91dGVSb2xlcyA9IHJvdXRlLmRhdGFbJ3JvbGVzJ107XG4gIC8vIGlmICghcm91dGVSb2xlcykge1xuICAvLyAgIHJldHVybiBvZihmYWxzZSk7XG4gIC8vIH1cbiAgcmV0dXJuIGF1dGhTZXJ2aWNlLmludHJvc3BlY3QoKS5waXBlKFxuICAgIGZpbHRlcigocmVzKSA9PiByZXMucm9sZXMgIT09IG51bGwgJiYgcmVzLnJvbGVzLmxlbmd0aCA+IDApLFxuICAgIG1hcCgoeyByb2xlcyB9KSA9PiB7XG4gICAgICBjb25zdCBhdXRoZWQgPSByb2xlcy5zb21lKChyKSA9PiByb3V0ZVJvbGVzPy5pbmRleE9mKHIpID49IDApO1xuICAgICAgaWYgKCFhdXRoZWQpIHtcbiAgICAgICAgcm91dGVyLm5hdmlnYXRlKFsnL2ZvcmJpZGRlbiddKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhdXRoZWQ7XG4gICAgfSksXG4gICk7XG59O1xuIl19","import { PLATFORM_ID, inject } from '@angular/core';\nimport { of } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nexport const PermissionGuard = (route, state) => {\n const authService = inject(AuthService);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n // if (!isPlatformBrowser(platformId)) {\n // return of(false);\n // }\n return of(false);\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYXV0aC9zcmMvbGliL2d1YXJkcy9wZXJtaXNzaW9uLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhFLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUd0RCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQWtCLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBdUIsRUFBRTtJQUNsRixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN2QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRWxELHdDQUF3QztJQUN4QyxzQkFBc0I7SUFDdEIsSUFBSTtJQUVKLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ25CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFBMQVRGT1JNX0lELCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkFjdGl2YXRlRm4sIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVBQX0NPTkZJRyB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCBjb25zdCBQZXJtaXNzaW9uR3VhcmQ6IENhbkFjdGl2YXRlRm4gPSAocm91dGUsIHN0YXRlKTogT2JzZXJ2YWJsZTxib29sZWFuPiA9PiB7XG4gIGNvbnN0IGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgY29uc3QgZW52aXJvbm1lbnQgPSBpbmplY3QoQVBQX0NPTkZJRyk7XG4gIGNvbnN0IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICBjb25zdCBpc0NvbnRpbnVlID0gc3RhdGUudXJsLmluY2x1ZGVzKCdjb250aW51ZScpO1xuICBjb25zdCBjb250aW51ZVVybCA9IHJvdXRlLnF1ZXJ5UGFyYW1zWydjb250aW51ZSddO1xuXG4gIC8vIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm1JZCkpIHtcbiAgLy8gICByZXR1cm4gb2YoZmFsc2UpO1xuICAvLyB9XG5cbiAgcmV0dXJuIG9mKGZhbHNlKTtcbn07XG4iXX0=","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { BehaviorSubject, map } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AuthUserService {\n environment = inject(APP_CONFIG);\n http = inject(HttpClient);\n userSubject = new BehaviorSubject(JSON.parse('null'));\n userInfo$ = this.userSubject.asObservable();\n updateUserInfo(userInfo) {\n this.userSubject.next(userInfo);\n }\n findAll(options) {\n return this.http.get(`${this.environment.baseUrl}/auth/users`, {\n params: options,\n withCredentials: true,\n });\n }\n findOne(userId) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/${userId}`, {\n withCredentials: true,\n });\n }\n me() {\n return this.http\n .get(`${this.environment.baseUrl}/auth/users/me`, {\n withCredentials: true,\n })\n .pipe(map((res) => {\n return res.data;\n }));\n }\n getPublicUserInfo(id) {\n return this.http\n .get(`${this.environment.baseUrl}/auth/users/${id}/info/public`, {\n withCredentials: false,\n })\n .pipe(map((res) => {\n return res.data;\n }));\n }\n findPublicInfoByIds(ids) {\n const params = { ids: ids.join(',') };\n return this.http.get(`${this.environment.baseUrl}/auth/users/by`, {\n params: params,\n });\n }\n sendSMSCode(countryCode, phone) {\n return this.http.post(`${this.environment.baseUrl}/auth/users/verification/phone/start`, { countryCode, phone });\n }\n findByUsername(username) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/info`, {\n params: { username },\n withCredentials: true,\n });\n }\n findUserInfoByUsername(username) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/info/by`, {\n params: { username },\n withCredentials: true,\n });\n }\n findPublicInfoByRole(role) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/public/by`, {\n params: { role: role },\n withCredentials: false,\n });\n }\n changeUsername(username) {\n return this.http.put(`${this.environment.baseUrl}/auth/users/username`, { username }, {\n withCredentials: true,\n });\n }\n changeName(name) {\n return this.http.put(`${this.environment.baseUrl}/auth/users/me`, { name }, {\n withCredentials: true,\n });\n }\n createUserByAdmin(data) {\n return this.http.post(`${this.environment.baseUrl}/auth/users/by/admin`, data, {\n withCredentials: true,\n });\n }\n update(data) {\n return this.http.put(`${this.environment.baseUrl}/auth/users/me`, data, {\n withCredentials: true,\n });\n }\n uploadAvatar(data) {\n return this.http.post(`${this.environment.baseUrl}/auth/users/avatar`, data, {\n withCredentials: true,\n });\n }\n changePhone(phone, code) {\n return this.http.put(`${this.environment.baseUrl}/auth/users/phone`, { phone, code }, {\n withCredentials: true,\n });\n }\n follow(username) {\n return this.http.put(`${this.environment.baseUrl}/auth/users/following/${username}`, {}, {\n withCredentials: true,\n });\n }\n unfollow(username) {\n return this.http.delete(`${this.environment.baseUrl}/auth/users/following/${username}`, {\n withCredentials: true,\n });\n }\n listFollowingByUsername(username) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/${username}/following`);\n }\n listFollowersByUsername(username) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/${username}/followers`);\n }\n checkIfFollowingSomeone(username, target) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/${username}/following/${target}`);\n }\n isFollowing(username) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/following/${username}`, { withCredentials: true });\n }\n friendships(ids) {\n return this.http.post(`${this.environment.baseUrl}/auth/users/friendships`, { ids: ids }, { withCredentials: true });\n }\n followersStats(username) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/followers/stats/by`, { params: { username: username } });\n }\n // Address;\n addAddress(data) {\n return this.http.post(`${this.environment.baseUrl}/auth/users/addresses`, data, { withCredentials: true });\n }\n updateAddress(id, data) {\n return this.http.put(`${this.environment.baseUrl}/auth/users/addresses/${id}`, data, { withCredentials: true });\n }\n findAllAddress(options) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/addresses`, { params: options, withCredentials: true });\n }\n getAddress(id) {\n return this.http.get(`${this.environment.baseUrl}/auth/users/addresses/${id}`, { withCredentials: true });\n }\n deleteAddressById(id) {\n return this.http.delete(`${this.environment.baseUrl}/auth/users/addresses/${id}`, { withCredentials: true });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthUserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthUserService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthUserService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC11c2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLXVzZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQU14RCxNQUFNLE9BQU8sZUFBZTtJQUMxQixXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pDLElBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEIsV0FBVyxHQUFpQyxJQUFJLGVBQWUsQ0FBYyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbEcsU0FBUyxHQUE0QixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVFLGNBQWMsQ0FBQyxRQUFxQjtRQUNsQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsT0FBTyxDQUFDLE9BQVk7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxhQUFhLEVBQUU7WUFDbEUsTUFBTSxFQUFFLE9BQU87WUFDZixlQUFlLEVBQUUsSUFBSTtTQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxDQUFDLE1BQVc7UUFDakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FB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VTtRQUMxQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLHlCQUF5QixFQUFFLEVBQUUsRUFBRSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3BILENBQUM7dUdBN0pVLGVBQWU7MkdBQWYsZUFBZSxjQUZkLE1BQU07OzJGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVBQX0NPTkZJRyB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL2ludGVyZmFjZXMvYXV0aC5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQXV0aFVzZXJTZXJ2aWNlIHtcbiAgZW52aXJvbm1lbnQgPSBpbmplY3QoQVBQX0NPTkZJRyk7XG4gIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIHByaXZhdGUgdXNlclN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxVc2VyIHwgbnVsbD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFVzZXIgfCBudWxsPihKU09OLnBhcnNlKCdudWxsJykpO1xuICBwdWJsaWMgdXNlckluZm8kOiBPYnNlcnZhYmxlPFVzZXIgfCBudWxsPiA9IHRoaXMudXNlclN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIHVwZGF0ZVVzZXJJbmZvKHVzZXJJbmZvOiBVc2VyIHwgbnVsbCkge1xuICAgIHRoaXMudXNlclN1YmplY3QubmV4dCh1c2VySW5mbyk7XG4gIH1cbiAgZmluZEFsbChvcHRpb25zOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vyc2AsIHtcbiAgICAgIHBhcmFtczogb3B0aW9ucyxcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuICBmaW5kT25lKHVzZXJJZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvJHt1c2VySWR9YCwge1xuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIG1lKCkge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvbWVgLCB7XG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICByZXR1cm4gcmVzLmRhdGE7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuICBnZXRQdWJsaWNVc2VySW5mbyhpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzLyR7aWR9L2luZm8vcHVibGljYCwge1xuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IGZhbHNlLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlcykgPT4ge1xuICAgICAgICAgIHJldHVybiByZXMuZGF0YTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG4gIGZpbmRQdWJsaWNJbmZvQnlJZHMoaWRzOiBBcnJheTxzdHJpbmc+KSB7XG4gICAgY29uc3QgcGFyYW1zID0geyBpZHM6IGlkcy5qb2luKCcsJykgfTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy9ieWAsIHtcbiAgICAgIHBhcmFtczogcGFyYW1zLFxuICAgIH0pO1xuICB9XG4gIHNlbmRTTVNDb2RlKGNvdW50cnlDb2RlOiBzdHJpbmcsIHBob25lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvdmVyaWZpY2F0aW9uL3Bob25lL3N0YXJ0YCwgeyBjb3VudHJ5Q29kZSwgcGhvbmUgfSk7XG4gIH1cbiAgZmluZEJ5VXNlcm5hbWUodXNlcm5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvaW5mb2AsIHtcbiAgICAgIHBhcmFtczogeyB1c2VybmFtZSB9LFxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIGZpbmRVc2VySW5mb0J5VXNlcm5hbWUodXNlcm5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvaW5mby9ieWAsIHtcbiAgICAgIHBhcmFtczogeyB1c2VybmFtZSB9LFxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIGZpbmRQdWJsaWNJbmZvQnlSb2xlKHJvbGU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvcHVibGljL2J5YCwge1xuICAgICAgcGFyYW1zOiB7IHJvbGU6IHJvbGUgfSxcbiAgICAgIHdpdGhDcmVkZW50aWFsczogZmFsc2UsXG4gICAgfSk7XG4gIH1cbiAgY2hhbmdlVXNlcm5hbWUodXNlcm5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8YW55PihcbiAgICAgIGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy91c2VybmFtZWAsXG4gICAgICB7IHVzZXJuYW1lIH0sXG4gICAgICB7XG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuICBjaGFuZ2VOYW1lKG5hbWU6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8YW55PihcbiAgICAgIGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy9tZWAsXG4gICAgICB7IG5hbWUgfSxcbiAgICAgIHtcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgfSxcbiAgICApO1xuICB9XG4gIGNyZWF0ZVVzZXJCeUFkbWluKGRhdGE6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL2J5L2FkbWluYCwgZGF0YSwge1xuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIHVwZGF0ZShkYXRhOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL21lYCwgZGF0YSwge1xuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIHVwbG9hZEF2YXRhcihkYXRhOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy9hdmF0YXJgLCBkYXRhLCB7XG4gICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgfSk7XG4gIH1cbiAgY2hhbmdlUGhvbmUocGhvbmU6IGFueSwgY29kZTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxhbnk+KFxuICAgICAgYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL3Bob25lYCxcbiAgICAgIHsgcGhvbmUsIGNvZGUgfSxcbiAgICAgIHtcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgfSxcbiAgICApO1xuICB9XG4gIGZvbGxvdyh1c2VybmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxhbnk+KFxuICAgICAgYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL2ZvbGxvd2luZy8ke3VzZXJuYW1lfWAsXG4gICAgICB7fSxcbiAgICAgIHtcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgfSxcbiAgICApO1xuICB9XG4gIHVuZm9sbG93KHVzZXJuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL2ZvbGxvd2luZy8ke3VzZXJuYW1lfWAsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuICBsaXN0Rm9sbG93aW5nQnlVc2VybmFtZSh1c2VybmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy8ke3VzZXJuYW1lfS9mb2xsb3dpbmdgKTtcbiAgfVxuICBsaXN0Rm9sbG93ZXJzQnlVc2VybmFtZSh1c2VybmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy8ke3VzZXJuYW1lfS9mb2xsb3dlcnNgKTtcbiAgfVxuICBjaGVja0lmRm9sbG93aW5nU29tZW9uZSh1c2VybmFtZTogc3RyaW5nLCB0YXJnZXQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvJHt1c2VybmFtZX0vZm9sbG93aW5nLyR7dGFyZ2V0fWApO1xuICB9XG4gIGlzRm9sbG93aW5nKHVzZXJuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL3VzZXJzL2ZvbGxvd2luZy8ke3VzZXJuYW1lfWAsIHsgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pO1xuICB9XG4gIGZyaWVuZHNoaXBzKGlkczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy9mcmllbmRzaGlwc2AsIHsgaWRzOiBpZHMgfSwgeyB3aXRoQ3JlZGVudGlhbHM6IHRydWUgfSk7XG4gIH1cbiAgZm9sbG93ZXJzU3RhdHModXNlcm5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvZm9sbG93ZXJzL3N0YXRzL2J5YCwgeyBwYXJhbXM6IHsgdXNlcm5hbWU6IHVzZXJuYW1lIH0gfSk7XG4gIH1cbiAgLy8gQWRkcmVzcztcbiAgYWRkQWRkcmVzcyhkYXRhOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy9hZGRyZXNzZXNgLCBkYXRhLCB7IHdpdGhDcmVkZW50aWFsczogdHJ1ZSB9KTtcbiAgfVxuICB1cGRhdGVBZGRyZXNzKGlkOiBzdHJpbmcsIGRhdGE6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvYWRkcmVzc2VzLyR7aWR9YCwgZGF0YSwgeyB3aXRoQ3JlZGVudGlhbHM6IHRydWUgfSk7XG4gIH1cbiAgZmluZEFsbEFkZHJlc3Mob3B0aW9uczogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuZW52aXJvbm1lbnQuYmFzZVVybH0vYXV0aC91c2Vycy9hZGRyZXNzZXNgLCB7IHBhcmFtczogb3B0aW9ucywgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pO1xuICB9XG4gIGdldEFkZHJlc3MoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvYWRkcmVzc2VzLyR7aWR9YCwgeyB3aXRoQ3JlZGVudGlhbHM6IHRydWUgfSk7XG4gIH1cbiAgZGVsZXRlQWRkcmVzc0J5SWQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGU8YW55PihgJHt0aGlzLmVudmlyb25tZW50LmJhc2VVcmx9L2F1dGgvdXNlcnMvYWRkcmVzc2VzLyR7aWR9YCwgeyB3aXRoQ3JlZGVudGlhbHM6IHRydWUgfSk7XG4gIH1cbn1cbiJdfQ==","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport * as i0 from \"@angular/core\";\nexport class AuthAgentService {\n environment = inject(APP_CONFIG);\n http = inject(HttpClient);\n baseUrl = `${this.environment.baseUrl}/auth/agents`;\n findAllApplications(options) {\n return this.http.get(`${this.baseUrl}/applications`, {\n params: options,\n withCredentials: true,\n });\n }\n getApplication(id) {\n return this.http.get(`${this.baseUrl}/applications/${id}`, {\n withCredentials: true,\n });\n }\n myApplication() {\n return this.http.get(`${this.baseUrl}/applications/me`, {\n withCredentials: true,\n });\n }\n apply(data) {\n return this.http.post(`${this.baseUrl}/applications`, data, {\n withCredentials: true,\n });\n }\n approve(id) {\n return this.http.put(`${this.baseUrl}/applications/${id}/approve`, {}, {\n withCredentials: true,\n });\n }\n reject(id, data) {\n return this.http.put(`${this.baseUrl}/applications/${id}/reject`, data, {\n withCredentials: true,\n });\n }\n findRejections(id) {\n return this.http.get(`${this.baseUrl}/applications/${id}/rejections`, {\n withCredentials: true,\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthAgentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthAgentService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthAgentService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1hZ2VudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hdXRoL3NyYy9saWIvc2VydmljZXMvYXV0aC1hZ2VudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBS3RELE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxJQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFCLE9BQU8sR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxjQUFjLENBQUM7SUFFN0MsbUJBQW1CLENBQUMsT0FBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sZUFBZSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxPQUFPO1lBQ2YsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNNLGNBQWMsQ0FBQyxFQUFVO1FBQzlCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxpQkFBaUIsRUFBRSxFQUFFLEVBQUU7WUFDOUQsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNNLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxHQUFHLElBQUksQ0FBQyxPQUFPLGtCQUFrQixFQUFFO1lBQzNELGVBQWUsRUFBRSxJQUFJO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDTSxLQUFLLENBQUMsSUFBUztRQUNwQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sZUFBZSxFQUFFLElBQUksRUFBRTtZQUMvRCxlQUFlLEVBQUUsSUFBSTtTQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ00sT0FBTyxDQUFDLEVBQVU7UUFDdkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsR0FBRyxJQUFJLENBQUMsT0FBTyxpQkFBaUIsRUFBRSxVQUFVLEVBQzVDLEVBQUUsRUFDRjtZQUNFLGVBQWUsRUFBRSxJQUFJO1NBQ3RCLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFDTSxNQUFNLENBQUMsRUFBTyxFQUFFLElBQVM7UUFDOUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxHQUFHLElBQUksQ0FBQyxPQUFPLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUU7WUFDM0UsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNNLGNBQWMsQ0FBQyxFQUFVO1FBQzlCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxpQkFBaUIsRUFBRSxhQUFhLEVBQUU7WUFDekUsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0E1Q1UsZ0JBQWdCOzJHQUFoQixnQkFBZ0IsY0FGZixNQUFNOzsyRkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVBQX0NPTkZJRyB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQXV0aEFnZW50U2VydmljZSB7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBodHRwID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuICBiYXNlVXJsID0gYCR7dGhpcy5lbnZpcm9ubWVudC5iYXNlVXJsfS9hdXRoL2FnZW50c2A7XG5cbiAgcHVibGljIGZpbmRBbGxBcHBsaWNhdGlvbnMob3B0aW9uczogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuYmFzZVVybH0vYXBwbGljYXRpb25zYCwge1xuICAgICAgcGFyYW1zOiBvcHRpb25zLFxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIHB1YmxpYyBnZXRBcHBsaWNhdGlvbihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMuYmFzZVVybH0vYXBwbGljYXRpb25zLyR7aWR9YCwge1xuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG4gIHB1YmxpYyBteUFwcGxpY2F0aW9uKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmJhc2VVcmx9L2FwcGxpY2F0aW9ucy9tZWAsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuICBwdWJsaWMgYXBwbHkoZGF0YTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55PihgJHt0aGlzLmJhc2VVcmx9L2FwcGxpY2F0aW9uc2AsIGRhdGEsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuICBwdWJsaWMgYXBwcm92ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxhbnk+KFxuICAgICAgYCR7dGhpcy5iYXNlVXJsfS9hcHBsaWNhdGlvbnMvJHtpZH0vYXBwcm92ZWAsXG4gICAgICB7fSxcbiAgICAgIHtcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgfSxcbiAgICApO1xuICB9XG4gIHB1YmxpYyByZWplY3QoaWQ6IGFueSwgZGF0YTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxhbnk+KGAke3RoaXMuYmFzZVVybH0vYXBwbGljYXRpb25zLyR7aWR9L3JlamVjdGAsIGRhdGEsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuICBwdWJsaWMgZmluZFJlamVjdGlvbnMoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLmJhc2VVcmx9L2FwcGxpY2F0aW9ucy8ke2lkfS9yZWplY3Rpb25zYCwge1xuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgIH0pO1xuICB9XG59XG4iXX0=","import { isPlatformBrowser } from '@angular/common';\nimport { inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nclass LocalStorage {\n length = 0;\n clear() { }\n getItem(key) {\n return null;\n }\n key(index) {\n return null;\n }\n removeItem(key) { }\n setItem(key, value) { }\n}\nexport class LocalStorageService {\n storage;\n platformId = inject(PLATFORM_ID);\n constructor() {\n this.storage = new LocalStorage();\n if (isPlatformBrowser(this.platformId)) {\n this.storage = localStorage;\n }\n }\n length = 0;\n clear() {\n this.storage.clear();\n }\n getItem(key) {\n return this.storage.getItem(key);\n }\n key(index) {\n return this.storage.key(index);\n }\n removeItem(key) {\n return this.storage.removeItem(key);\n }\n setItem(key, value) {\n return this.storage.setItem(key, value);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: LocalStorageService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: LocalStorageService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hdXRoL3NyYy9saWIvc2VydmljZXMvc3RvcmFnZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQVUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFeEUsTUFBTSxZQUFZO0lBRVAsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNwQixLQUFLLEtBQVUsQ0FBQztJQUNoQixPQUFPLENBQUMsR0FBVztRQUNqQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxHQUFHLENBQUMsS0FBYTtRQUNmLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELFVBQVUsQ0FBQyxHQUFXLElBQVMsQ0FBQztJQUNoQyxPQUFPLENBQUMsR0FBVyxFQUFFLEtBQWEsSUFBUyxDQUFDO0NBQzdDO0FBS0QsTUFBTSxPQUFPLG1CQUFtQjtJQUN0QixPQUFPLENBQVU7SUFDekIsVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUVqQztRQUNFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDO0lBSUQsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUVYLEtBQUs7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBVztRQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxHQUFHLENBQUMsS0FBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFXLEVBQUUsS0FBYTtRQUNoQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO3VHQWxDVSxtQkFBbUI7MkdBQW5CLG1CQUFtQixjQUZsQixNQUFNOzsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNsYXNzIExvY2FsU3RvcmFnZSBpbXBsZW1lbnRzIFN0b3JhZ2Uge1xuICBbbmFtZTogc3RyaW5nXTogYW55O1xuICByZWFkb25seSBsZW5ndGggPSAwO1xuICBjbGVhcigpOiB2b2lkIHt9XG4gIGdldEl0ZW0oa2V5OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBrZXkoaW5kZXg6IG51bWJlcik6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJlbW92ZUl0ZW0oa2V5OiBzdHJpbmcpOiB2b2lkIHt9XG4gIHNldEl0ZW0oa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHt9XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VTZXJ2aWNlIGltcGxlbWVudHMgU3RvcmFnZSB7XG4gIHByaXZhdGUgc3RvcmFnZTogU3RvcmFnZTtcbiAgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zdG9yYWdlID0gbmV3IExvY2FsU3RvcmFnZSgpO1xuXG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHRoaXMuc3RvcmFnZSA9IGxvY2FsU3RvcmFnZTtcbiAgICB9XG4gIH1cblxuICBbbmFtZTogc3RyaW5nXTogYW55O1xuXG4gIGxlbmd0aCA9IDA7XG5cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yYWdlLmNsZWFyKCk7XG4gIH1cblxuICBnZXRJdGVtKGtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gIH1cblxuICBrZXkoaW5kZXg6IG51bWJlcik6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2Uua2V5KGluZGV4KTtcbiAgfVxuXG4gIHJlbW92ZUl0ZW0oa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcbiAgfVxuXG4gIHNldEl0ZW0oa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==","import { HttpErrorResponse } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { AuthService } from '../services/auth.service';\nimport { BehaviorSubject, catchError, throwError } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class ErrorInterceptor {\n tokenSubject = new BehaviorSubject('');\n isRefreshingToken = false;\n authService = inject(AuthService);\n intercept(request, next) {\n return next.handle(request).pipe(catchError((error) => {\n if (error instanceof HttpErrorResponse) {\n switch (error.status) {\n case 400:\n return this.hand400Error(error);\n case 401:\n return this.hand401Error(error);\n case 403:\n return this.hand403Error(error);\n case 404:\n return this.hand404Error(error);\n case 429:\n return this.hand429Error(error);\n default:\n return this.handleDefaultError(error);\n }\n }\n else {\n return throwError(() => error);\n }\n }));\n }\n hand400Error(error) {\n return throwError(() => error.error);\n }\n hand401Error(error) {\n return throwError(() => error.error);\n }\n hand403Error(error) {\n return throwError(() => error.error);\n }\n hand404Error(error) {\n return throwError(() => error.error);\n }\n /**\n *\n * @param error SMS code sent too many\n * @returns\n */\n hand429Error(error) {\n return throwError(() => error.error);\n }\n handleDefaultError(error) {\n return throwError(() => new Error('系统错误'));\n // return throwError(() => error.error);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: ErrorInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: ErrorInterceptor });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: ErrorInterceptor, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9pbnRlcmNlcHRvcnMvZXJyb3IuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFzRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdILE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBa0IsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUcvRSxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQVksR0FBNEIsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7SUFDeEUsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQzFCLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFbEMsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDOUIsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbkIsSUFBSSxLQUFLLFlBQVksaUJBQWlCLEVBQUUsQ0FBQztnQkFDdkMsUUFBUSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3JCLEtBQUssR0FBRzt3QkFDTixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2xDLEtBQUssR0FBRzt3QkFDTixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2xDLEtBQUssR0FBRzt3QkFDTixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2xDLEtBQUssR0FBRzt3QkFDTixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2xDLEtBQUssR0FBRzt3QkFDTixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2xDO3dCQUNFLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxQyxDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUNPLFlBQVksQ0FBQyxLQUF3QjtRQUMzQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNPLFlBQVksQ0FBQyxLQUF3QjtRQUMzQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNPLFlBQVksQ0FBQyxLQUF3QjtRQUMzQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNPLFlBQVksQ0FBQyxLQUF3QjtRQUMzQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNEOzs7O09BSUc7SUFDSyxZQUFZLENBQUMsS0FBd0I7UUFDM0MsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDTyxrQkFBa0IsQ0FBQyxLQUF3QjtRQUNqRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzNDLHdDQUF3QztJQUMxQyxDQUFDO3VHQXBEVSxnQkFBZ0I7MkdBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0LCBIdHRwUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY2F0Y2hFcnJvciwgT2JzZXJ2YWJsZSwgb2YsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVycm9ySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICB0b2tlblN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgaXNSZWZyZXNoaW5nVG9rZW4gPSBmYWxzZTtcbiAgYXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgICAgc3dpdGNoIChlcnJvci5zdGF0dXMpIHtcbiAgICAgICAgICAgIGNhc2UgNDAwOlxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kNDAwRXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgY2FzZSA0MDE6XG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmhhbmQ0MDFFcnJvcihlcnJvcik7XG4gICAgICAgICAgICBjYXNlIDQwMzpcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGFuZDQwM0Vycm9yKGVycm9yKTtcbiAgICAgICAgICAgIGNhc2UgNDA0OlxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kNDA0RXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgY2FzZSA0Mjk6XG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmhhbmQ0MjlFcnJvcihlcnJvcik7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGVEZWZhdWx0RXJyb3IoZXJyb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbiAgcHJpdmF0ZSBoYW5kNDAwRXJyb3IoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IuZXJyb3IpO1xuICB9XG4gIHByaXZhdGUgaGFuZDQwMUVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yLmVycm9yKTtcbiAgfVxuICBwcml2YXRlIGhhbmQ0MDNFcnJvcihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvci5lcnJvcik7XG4gIH1cbiAgcHJpdmF0ZSBoYW5kNDA0RXJyb3IoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IuZXJyb3IpO1xuICB9XG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gZXJyb3IgU01TIGNvZGUgc2VudCB0b28gbWFueVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHJpdmF0ZSBoYW5kNDI5RXJyb3IoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IuZXJyb3IpO1xuICB9XG4gIHByaXZhdGUgaGFuZGxlRGVmYXVsdEVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcign57O757uf6ZSZ6K+vJykpO1xuICAgIC8vIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yLmVycm9yKTtcbiAgfVxufVxuIl19","import { catchError, map } from 'rxjs/operators';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { NEVER, throwError } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { isPlatformBrowser } from '@angular/common';\nimport * as i0 from \"@angular/core\";\nexport class AuthInterceptor {\n environment = inject(APP_CONFIG);\n platformId = inject(PLATFORM_ID);\n authService = inject(AuthService);\n constructor() { }\n intercept(request, next) {\n const authRequest = request.clone({\n headers: request.headers.append('Client-Id', this.environment.clientId),\n });\n return next.handle(authRequest).pipe(map((res) => {\n // if (res instanceof HttpResponse && isPlatformBrowser(this.platformId)) {\n // // window.location.href = res.headers.get('Location') as string;\n // }\n return res;\n }), catchError((error) => {\n if (isPlatformBrowser(this.platformId)) {\n if (error.url?.includes('auth/introspect')) {\n // if (window.location.origin !== `${this.environment.accountsUrl}`) {\n // window.location.href = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;\n // return NEVER;\n // }\n }\n if (error instanceof HttpErrorResponse && error.error.code === 'G401') {\n window.location.href = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;\n return NEVER;\n }\n }\n return throwError(() => error.error || error.message);\n }));\n }\n addClientIdHeader(request) {\n return request.clone({\n setHeaders: {\n 'Client-id': this.environment.clientId,\n },\n });\n }\n addCookieHeader(request, cookie) {\n return request.clone({\n setHeaders: {\n Cookie: cookie,\n 'Client-id': this.environment.clientId,\n },\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthInterceptor });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AuthInterceptor, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYXV0aC9zcmMvbGliL2ludGVyY2VwdG9ycy9hdXRoLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsR0FBRyxFQUFtQixNQUFNLGdCQUFnQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBc0UsTUFBTSxzQkFBc0IsQ0FBQztBQUM3SCxPQUFPLEVBQUUsTUFBTSxFQUFVLFVBQVUsRUFBWSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLEtBQUssRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHcEQsTUFBTSxPQUFPLGVBQWU7SUFDMUIsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEMsZ0JBQWUsQ0FBQztJQUNoQixTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNwRCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUM7U0FDeEUsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDbEMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDViwyRUFBMkU7WUFDM0UscUVBQXFFO1lBQ3JFLElBQUk7WUFDSixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ3hCLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZDLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO29CQUMzQyxzRUFBc0U7b0JBQ3RFLHNHQUFzRztvQkFDdEcsa0JBQWtCO29CQUNsQixJQUFJO2dCQUNOLENBQUM7Z0JBQ0QsSUFBSSxLQUFLLFlBQVksaUJBQWlCLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7b0JBQ3RFLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUNqRyxPQUFPLEtBQUssQ0FBQztnQkFDZixDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBQ0QsaUJBQWlCLENBQUMsT0FBeUI7UUFDekMsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ25CLFVBQVUsRUFBRTtnQkFDVixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO2FBQ3ZDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELGVBQWUsQ0FBQyxPQUF5QixFQUFFLE1BQWM7UUFDdkQsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ25CLFVBQVUsRUFBRTtnQkFDVixNQUFNLEVBQUUsTUFBTTtnQkFDZCxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO2FBQ3ZDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0EvQ1UsZUFBZTsyR0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0LCBIdHRwUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBORVZFUiwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XG5pbXBvcnQgeyBBUFBfQ09ORklHIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgYXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICBjb25zdHJ1Y3RvcigpIHt9XG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICBjb25zdCBhdXRoUmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoe1xuICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXJzLmFwcGVuZCgnQ2xpZW50LUlkJywgdGhpcy5lbnZpcm9ubWVudC5jbGllbnRJZCksXG4gICAgfSk7XG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKGF1dGhSZXF1ZXN0KS5waXBlKFxuICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgLy8gaWYgKHJlcyBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSAmJiBpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgIC8vICAgLy8gd2luZG93LmxvY2F0aW9uLmhyZWYgPSByZXMuaGVhZGVycy5nZXQoJ0xvY2F0aW9uJykgYXMgc3RyaW5nO1xuICAgICAgICAvLyB9XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICBpZiAoZXJyb3IudXJsPy5pbmNsdWRlcygnYXV0aC9pbnRyb3NwZWN0JykpIHtcbiAgICAgICAgICAgIC8vIGlmICh3aW5kb3cubG9jYXRpb24ub3JpZ2luICE9PSBgJHt0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsfWApIHtcbiAgICAgICAgICAgIC8vICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBgJHt0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsfS9zaWduaW4/Y29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xuICAgICAgICAgICAgLy8gICByZXR1cm4gTkVWRVI7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlICYmIGVycm9yLmVycm9yLmNvZGUgPT09ICdHNDAxJykge1xuICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBgJHt0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsfS9zaWduaW4/Y29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xuICAgICAgICAgICAgcmV0dXJuIE5FVkVSO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvci5lcnJvciB8fCBlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbiAgYWRkQ2xpZW50SWRIZWFkZXIocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55Pikge1xuICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHtcbiAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgJ0NsaWVudC1pZCc6IHRoaXMuZW52aXJvbm1lbnQuY2xpZW50SWQsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIGFkZENvb2tpZUhlYWRlcihyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBjb29raWU6IHN0cmluZykge1xuICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHtcbiAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgQ29va2llOiBjb29raWUsXG4gICAgICAgICdDbGllbnQtaWQnOiB0aGlzLmVudmlyb25tZW50LmNsaWVudElkLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIl19","import { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { InjectionToken, makeEnvironmentProviders } from '@angular/core';\nimport { ErrorInterceptor, AuthInterceptor } from './lib/interceptors';\nexport var AuthMethod;\n(function (AuthMethod) {\n AuthMethod[\"Password\"] = \"PASSWORD\";\n AuthMethod[\"OTP\"] = \"OTP\";\n AuthMethod[\"Google\"] = \"GOOGLE\";\n AuthMethod[\"WeChat\"] = \"WECHAT\";\n})(AuthMethod || (AuthMethod = {}));\nexport const AUTH_METHODS = new InjectionToken('AUTH_METHODS');\nexport function provideAngularAuth(config) {\n const providers = [\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },\n {\n provide: AUTH_METHODS,\n useValue: config?.methods,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: AuthInterceptor,\n multi: true,\n },\n ];\n return makeEnvironmentProviders(providers);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL3Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBd0IsY0FBYyxFQUFZLHdCQUF3QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV2RSxNQUFNLENBQU4sSUFBWSxVQUtYO0FBTEQsV0FBWSxVQUFVO0lBQ3BCLG1DQUFxQixDQUFBO0lBQ3JCLHlCQUFXLENBQUE7SUFDWCwrQkFBaUIsQ0FBQTtJQUNqQiwrQkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBTFcsVUFBVSxLQUFWLFVBQVUsUUFLckI7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBQWUsY0FBYyxDQUFDLENBQUM7QUFNN0UsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE1BQW1CO0lBQ3BELE1BQU0sU0FBUyxHQUF3QztRQUNyRCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtRQUN2RTtZQUNFLE9BQU8sRUFBRSxZQUFZO1lBQ3JCLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTztTQUMxQjtRQUVEO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixRQUFRLEVBQUUsZUFBZTtZQUN6QixLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsQ0FBQztJQUNGLE9BQU8sd0JBQXdCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRQcm92aWRlcnMsIEluamVjdGlvblRva2VuLCBQcm92aWRlciwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFcnJvckludGVyY2VwdG9yLCBBdXRoSW50ZXJjZXB0b3IgfSBmcm9tICcuL2xpYi9pbnRlcmNlcHRvcnMnO1xuXG5leHBvcnQgZW51bSBBdXRoTWV0aG9kIHtcbiAgUGFzc3dvcmQgPSAnUEFTU1dPUkQnLFxuICBPVFAgPSAnT1RQJyxcbiAgR29vZ2xlID0gJ0dPT0dMRScsXG4gIFdlQ2hhdCA9ICdXRUNIQVQnLFxufVxuXG5leHBvcnQgY29uc3QgQVVUSF9NRVRIT0RTID0gbmV3IEluamVjdGlvblRva2VuPEF1dGhNZXRob2RbXT4oJ0FVVEhfTUVUSE9EUycpO1xuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhDb25maWcge1xuICBtZXRob2RzOiBBdXRoTWV0aG9kW11cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVBbmd1bGFyQXV0aChjb25maWc/OiBBdXRoQ29uZmlnKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICBjb25zdCBwcm92aWRlcnM6IChQcm92aWRlciB8IEVudmlyb25tZW50UHJvdmlkZXJzKVtdID0gW1xuICAgIHsgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsIHVzZUNsYXNzOiBFcnJvckludGVyY2VwdG9yLCBtdWx0aTogdHJ1ZSB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFVVEhfTUVUSE9EUyxcbiAgICAgIHVzZVZhbHVlOiBjb25maWc/Lm1ldGhvZHMsXG4gICAgfSxcblxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxuICAgICAgdXNlQ2xhc3M6IEF1dGhJbnRlcmNlcHRvcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF07XG4gIHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMocHJvdmlkZXJzKTtcbn1cbiJdfQ==","import { UnauthorizedComponent } from './components/unauthorized/unauthorized.component';\nimport { ForbiddenComponent } from './components/forbidden/forbidden.component';\nexport const authRoutes = [\n {\n path: 'unauthorized',\n component: UnauthorizedComponent,\n },\n {\n path: 'forbidden',\n component: ForbiddenComponent,\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5yb3V0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWF1dGgvc3JjL2xpYi9hdXRoLnJvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVoRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQVc7SUFDaEM7UUFDRSxJQUFJLEVBQUUsY0FBYztRQUNwQixTQUFTLEVBQUUscUJBQXFCO0tBQ2pDO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsV0FBVztRQUNqQixTQUFTLEVBQUUsa0JBQWtCO0tBQzlCO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBVbmF1dGhvcml6ZWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdW5hdXRob3JpemVkL3VuYXV0aG9yaXplZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9yYmlkZGVuQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2ZvcmJpZGRlbi9mb3JiaWRkZW4uY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IGF1dGhSb3V0ZXM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICd1bmF1dGhvcml6ZWQnLFxuICAgIGNvbXBvbmVudDogVW5hdXRob3JpemVkQ29tcG9uZW50LFxuICB9LFxuICB7XG4gICAgcGF0aDogJ2ZvcmJpZGRlbicsXG4gICAgY29tcG9uZW50OiBGb3JiaWRkZW5Db21wb25lbnQsXG4gIH0sXG5dO1xuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sYXRlY2gtYW5ndWxhci1hdXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hdXRoL3NyYy9yb2xhdGVjaC1hbmd1bGFyLWF1dGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":["map","catchError"],"mappings":"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"}
1
+ {"version":3,"file":"rolatech-angular-auth.mjs","sources":["../../../../packages/angular-auth/src/lib/components/forbidden/forbidden.component.ts","../../../../packages/angular-auth/src/lib/components/forbidden/forbidden.component.html","../../../../packages/angular-auth/src/lib/components/unauthorized/unauthorized.component.ts","../../../../packages/angular-auth/src/lib/components/unauthorized/unauthorized.component.html","../../../../packages/angular-auth/src/lib/auth.store.ts","../../../../packages/angular-auth/src/lib/services/auth.service.ts","../../../../packages/angular-auth/src/lib/components/faceid-detect-dialog/faceid-detect-dialog.component.ts","../../../../packages/angular-auth/src/lib/components/faceid-detect-dialog/faceid-detect-dialog.component.html","../../../../packages/angular-auth/src/lib/interfaces/auth.interface.ts","../../../../packages/angular-auth/src/lib/components/address/address.component.ts","../../../../packages/angular-auth/src/lib/components/address/address.component.html","../../../../packages/angular-auth/src/lib/guards/auth.guard.ts","../../../../packages/angular-auth/src/lib/components/auth-dialog/auth-dialog.component.ts","../../../../packages/angular-auth/src/lib/components/auth-dialog/auth-dialog.component.html","../../../../packages/angular-auth/src/lib/guards/auth-dialog.guard.ts","../../../../packages/angular-auth/src/lib/guards/role.guard.ts","../../../../packages/angular-auth/src/lib/guards/permission.guard.ts","../../../../packages/angular-auth/src/lib/services/auth-user.service.ts","../../../../packages/angular-auth/src/lib/services/auth-agent.service.ts","../../../../packages/angular-auth/src/lib/services/storage.service.ts","../../../../packages/angular-auth/src/lib/interceptors/error.interceptor.ts","../../../../packages/angular-auth/src/lib/interceptors/auth.interceptor.ts","../../../../packages/angular-auth/src/provider.ts","../../../../packages/angular-auth/src/lib/auth.routes.ts","../../../../packages/angular-auth/src/rolatech-angular-auth.ts"],"sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'rolatech-forbidden',\n templateUrl: './forbidden.component.html',\n styleUrls: ['./forbidden.component.scss'],\n})\nexport class ForbiddenComponent {}\n","<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>403.</b>\n <p>Forbidden page.</p>\n </div>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'rolatech-unauthorized',\n templateUrl: './unauthorized.component.html',\n styleUrls: ['./unauthorized.component.scss'],\n})\nexport class UnauthorizedComponent {}\n","<div class=\"p-6 max-w-lg h-auto max-h-32\">\n <div class=\"flex flex-col\">\n <b>401.</b>\n <p>Unauthorized page.</p>\n </div>\n</div>\n","import { Injectable, computed, signal } from '@angular/core';\nimport { User } from './interfaces/auth.interface';\n\ntype AuthState = {\n userId: string;\n user: User | null;\n roles: string[];\n authenticated: boolean | null;\n loaded: boolean;\n};\n@Injectable({ providedIn: 'root' })\nexport class AuthStore {\n private _state = signal<AuthState>({\n userId: '',\n user: null,\n roles: [],\n authenticated: false,\n loaded: false,\n });\n userId = computed(() => this._state().userId);\n user = computed(() => this._state().user);\n roles = computed(() => this._state().roles);\n authenticated = computed(() => this._state().authenticated);\n loaded = computed(() => this._state().loaded);\n\n update(data: any) {\n this._state.update((state) => {\n state.authenticated = data.authenticated;\n state.userId = data.userId;\n state.roles = data.roles;\n state.loaded = data.loaded;\n state.user = data.user;\n return { ...state };\n });\n }\n updateAuthenticated(authenticated: boolean) {\n this._state.update((state) => {\n state.authenticated = authenticated;\n return { ...state };\n });\n }\n updateUser(user: User) {\n this._state.update((state) => {\n state.user = user;\n return { ...state };\n });\n }\n updateEmail(email: string) {\n this._state.update((state) => {\n state.user!.email = email;\n return { ...state };\n });\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map, tap } from 'rxjs/operators';\nimport { PasswordChange, APP_CONFIG, PasswordResetConfirmRequest } from '@rolatech/angular-common';\nimport { ActivatedRoute } from '@angular/router';\nimport { IntrospectResponse } from '../interfaces/auth.interface';\nimport { AuthStore } from '../auth.store';\n\n@Injectable({ providedIn: 'root' })\nexport class AuthService {\n environment = inject(APP_CONFIG);\n http = inject(HttpClient);\n route = inject(ActivatedRoute);\n authStore = inject(AuthStore);\n authenticated = this.authStore.authenticated;\n userId = this.authStore.userId;\n user = this.authStore.user;\n roles = this.authStore.roles;\n loaded = this.authStore.loaded;\n\n public introspect(): Observable<IntrospectResponse | never> {\n return this.http\n .get<any>(`${this.environment.baseUrl}/auth/introspect`, {\n withCredentials: true,\n })\n .pipe(\n map((res) => {\n this.authStore.update({\n authenticated: res.authenticated,\n userId: res.userId,\n roles: res.roles,\n loaded: true,\n });\n if (res.authenticated) {\n this.me().subscribe();\n }\n return res;\n }),\n );\n }\n me() {\n return this.http\n .get<any>(`${this.environment.baseUrl}/auth/users/me`, {\n withCredentials: true,\n })\n .pipe(\n map((res) => {\n this.authStore.updateUser(res.data);\n return res;\n }),\n );\n }\n wechatLogin(code: string, state: string) {\n return this.http.post<any>(\n `${this.environment.baseUrl}/auth/wechat/login?code=${code}&state=${state}`,\n {},\n {\n withCredentials: true,\n },\n );\n }\n wechatDisconnect() {\n return this.http.post<any>(\n `${this.environment.baseUrl}/auth/wechat/disconnect`,\n {},\n {\n withCredentials: true,\n },\n );\n }\n requestFaceIdDetect() {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/face-id`, {\n withCredentials: true,\n });\n }\n faceIdStatus() {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/face-id/status/me`, {\n withCredentials: true,\n });\n }\n faceIdStatusByToken(token: any) {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/face-id/status/me/by`, {\n params: { token: token },\n withCredentials: true,\n });\n }\n wechatStatus(options: any) {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/wechat/status/by`, {\n params: options,\n withCredentials: true,\n });\n }\n login(data: any) {\n return this.http\n .post<any>(`${this.environment.baseUrl}/auth/login`, data, {\n withCredentials: true,\n })\n .pipe(\n map((res) => {\n this.authStore.updateAuthenticated(true);\n return res.data;\n }),\n );\n }\n signup(data: any): Observable<any> {\n return this.http\n .post<any>(`${this.environment.baseUrl}/auth/signup`, data, {\n withCredentials: true,\n })\n .pipe(\n map((res) => {\n this.authStore.updateAuthenticated(true);\n return res;\n }),\n );\n }\n logout() {\n return this.http\n .get<any>(`${this.environment.baseUrl}/auth/logout`, {\n withCredentials: true,\n })\n .pipe(\n map((res) => {\n this.authStore.updateAuthenticated(false);\n return res;\n }),\n );\n }\n requestPasswordReset(email: string) {\n return this.http.post<any>(`${this.environment.baseUrl}/auth/users/password/reset-request`, { email });\n }\n validatePasswordRestToken(token: string) {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/password/reset-tokens/${token}`);\n }\n resetPassword(data: PasswordResetConfirmRequest) {\n return this.http.post<any>(`${this.environment.baseUrl}/auth/users/password/reset`, data);\n }\n changePassword(data: PasswordChange) {\n return this.http\n .put<any>(`${this.environment.baseUrl}/auth/users/password`, data, {\n withCredentials: true,\n })\n .pipe(\n map((user) => {\n return user;\n }),\n tap((_) => {\n this.authStore.updateAuthenticated(true);\n }),\n );\n }\n lookup(account: string, next: string) {\n return this.http\n .post<any>(\n `${this.environment.baseUrl}/auth/lookup`,\n {\n account,\n next,\n },\n { withCredentials: false },\n )\n .pipe(\n map((user) => {\n return user;\n }),\n );\n }\n challenge(username: string, password: string, next: string) {\n return this.http\n .post<any>(\n `${this.environment.baseUrl}/auth/challenge`,\n {\n username,\n password,\n next,\n },\n { withCredentials: true },\n )\n .pipe(\n map((user) => {\n return user;\n }),\n tap((_) => {\n this.authStore.updateAuthenticated(true);\n }),\n );\n }\n}\n","import { Component, DoCheck, ElementRef, HostListener, OnDestroy, Renderer2, inject, output } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { SnackBarService } from '@rolatech/angular-services';\nimport QRCode from 'qrcode';\nimport { MatButtonModule } from '@angular/material/button';\nimport { AuthService } from '../../services/auth.service';\nimport { SpinnerComponent } from '@rolatech/angular-components';\n\n@Component({\n selector: 'rolatech-faceid-detect-dialog',\n templateUrl: './faceid-detect-dialog.component.html',\n styleUrls: ['./faceid-detect-dialog.component.scss'],\n imports: [SpinnerComponent, MatButtonModule],\n})\nexport class FaceidDetectDialogComponent implements OnDestroy {\n dialogRef = inject(MatDialogRef);\n environment = inject(APP_CONFIG);\n data = inject(MAT_DIALOG_DATA);\n authService = inject(AuthService);\n snackBarService = inject(SnackBarService);\n output = output<any>();\n loading = false;\n qrcodeUrl = '';\n verified = false;\n interval;\n constructor() {\n this.request();\n }\n ngOnDestroy(): void {\n clearInterval(this.interval);\n }\n request() {\n this.loading = true;\n this.authService.requestFaceIdDetect().subscribe({\n next: ({ data }) => {\n this.genQRCode(data.url);\n this.loop();\n },\n error: () => {\n this.loading = false;\n },\n });\n }\n cancel() {\n clearInterval(this.interval);\n this.dialogRef.close(this.verified);\n }\n loop() {\n this.loading = false;\n this.interval = setInterval(() => {\n this.authService.faceIdStatus().subscribe({\n next: (res) => {\n if (res.data.verified) {\n clearInterval(this.interval);\n this.dialogRef.close(true);\n }\n },\n });\n }, 2000);\n }\n async genQRCode(url: string) {\n try {\n this.qrcodeUrl = await QRCode.toDataURL(url);\n } catch (err) {\n console.error(err);\n }\n }\n}\n","<div class=\"flex flex-col p-3 max-w-[500px] mx-auto\">\n <div class=\"w-[256px] h-[256px] mx-auto flex justify-center items-center\">\n @if (loading) {\n <div>\n <rolatech-spinner></rolatech-spinner>\n </div>\n }\n <img [src]=\"qrcodeUrl\" alt />\n </div>\n</div>\n","export interface User {\n id: string;\n name: string;\n firstName: string;\n lastName: string;\n username: string;\n avatar: string;\n phone: string;\n email: string;\n bio: string;\n roles: Role[];\n gender: string;\n}\nexport interface Role {\n name: string;\n}\n\nexport interface PasswordChange {\n oldPassword: string;\n newPassword: string;\n ne2Password: string;\n}\nexport enum UserStatus {\n ACTIVE = '正常',\n AWAITING = '审核中',\n DELETED = '已删除',\n}\nexport interface IntrospectResponse {\n userId: string;\n roles: string[];\n authenticated: boolean;\n}\nexport interface Address {\n id: string;\n name: string;\n phone: string;\n email: string;\n type: AddressType;\n country: string;\n province: string;\n city: string;\n district: string;\n street: string;\n detail: string;\n latitude: string;\n longitude: string;\n userId: string;\n}\nexport enum AddressType {\n HOME = '住宅地址',\n WORK = '工作地址',\n BILLING = '账单地址',\n SHIPPING = '购物地址',\n OTHER = '其他',\n}\n","import { Component, DoCheck, model, OnInit, output } from '@angular/core';\nimport { AngularCommonModule } from '@rolatech/angular-common';\nimport { AngularComponentsModule } from '@rolatech/angular-components';\nimport { AddressType } from '../../interfaces/auth.interface';\n\n@Component({\n selector: 'rolatech-address',\n imports: [AngularCommonModule, AngularComponentsModule],\n templateUrl: './address.component.html',\n styleUrl: './address.component.scss',\n})\nexport class AddressComponent implements OnInit, DoCheck {\n addressType = AddressType;\n enumKeys = Object.keys(this.addressType).filter((key) => isNaN(Number(key)));\n address = model<any>();\n output = output<any>();\n\n ngOnInit(): void {}\n\n ngDoCheck(): void {\n this.output.emit(this.address());\n }\n}\n","<div>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Name </mat-label>\n <input matInput [(ngModel)]=\"address().name\" />\n </mat-form-field>\n @if (address().type === addressType.BILLING) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Email </mat-label>\n <input matInput [(ngModel)]=\"address().email\" />\n </mat-form-field>\n }\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input matInput [(ngModel)]=\"address().phone\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> province </mat-label>\n <input matInput [(ngModel)]=\"address().province\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> City </mat-label>\n <input matInput [(ngModel)]=\"address().city\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> District </mat-label>\n <input matInput [(ngModel)]=\"address().district\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Street </mat-label>\n <input matInput [(ngModel)]=\"address().street\" />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Detail </mat-label>\n <input matInput [(ngModel)]=\"address().detail\" />\n </mat-form-field>\n</div>\n","import { isPlatformBrowser } from '@angular/common';\nimport { inject, PLATFORM_ID } from '@angular/core';\nimport { CanActivateFn, Router } from '@angular/router';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { map, Observable, of } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\n\nexport const AuthGuard: CanActivateFn = (route, state): Observable<boolean> => {\n const authService = inject(AuthService);\n const router = inject(Router);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n // window = inject(WINDOW)\n if (!isPlatformBrowser(platformId)) {\n return of(false);\n }\n return authService.introspect().pipe(\n map(({ roles, authenticated }) => {\n const routeRoles = route.data['roles'];\n const passRoled = routeRoles ? roles?.some((r) => routeRoles.indexOf(r) >= 0) : true;\n if (authenticated && !passRoled) {\n router.navigate(['/forbidden']);\n return false;\n }\n if (authenticated) {\n if (window.location.href.includes(environment.accountsUrl) && !isContinue) {\n // window.location.href = `${environment.myaccountUrl}/${lang}`;\n window.location.href = `${environment.myaccountUrl}`;\n }\n if (isContinue) {\n window.location.href = continueUrl;\n }\n } else {\n if (!isContinue) {\n window.location.href = environment.accountsUrl + `/signin?continue=${window.location.href}`;\n }\n return true;\n }\n return authenticated;\n }),\n );\n};\n","import { Component, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatDialog, MatDialogModule, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'rolatech-auth-dialog',\n imports: [CommonModule, MatDialogModule],\n templateUrl: './auth-dialog.component.html',\n styleUrl: './auth-dialog.component.scss',\n})\nexport class AuthDialogComponent {\n dialogRef = inject(MatDialogRef);\n}\n","<p>auth-dialog works!</p>\n","import { isPlatformBrowser } from '@angular/common';\nimport { inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { CanActivateFn, UrlTree } from '@angular/router';\nimport { APP_CONFIG, WINDOW } from '@rolatech/angular-common';\nimport { last, map, Observable, of, switchMap, take } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { DialogService } from '@rolatech/angular-services';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthDialogComponent } from '../components/auth-dialog/auth-dialog.component';\n\nexport const AuthDialogGuard: CanActivateFn = (route, state): Observable<boolean> => {\n const authService = inject(AuthService);\n const dialog = inject(MatDialog);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n if (!isPlatformBrowser(platformId)) {\n return of(false);\n }\n return authService.introspect().pipe(\n map(({ roles, authenticated }) => {\n if (!authenticated) {\n if (window.location.href.includes(environment.accountsUrl) && !isContinue) {\n window.location.href = environment.myaccountUrl;\n }\n if (isContinue) {\n window.location.href = continueUrl;\n }\n } else {\n const dialogRef = dialog.open(AuthDialogComponent, {\n data: {},\n });\n dialogRef.afterClosed().subscribe((result) => {});\n return true;\n }\n return authenticated;\n }),\n );\n};\n","import { filter } from 'rxjs/operators';\nimport { PLATFORM_ID, inject } from '@angular/core';\nimport { CanActivateFn, Router } from '@angular/router';\nimport { map, Observable, of } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { isPlatformBrowser } from '@angular/common';\nimport { APP_CONFIG } from '@rolatech/angular-common';\n\nexport const RoleGuard: CanActivateFn = (route, state): Observable<boolean> => {\n const authService = inject(AuthService);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const snackBar = inject(MatSnackBar);\n const router = inject(Router);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n if (!isPlatformBrowser(platformId)) {\n return of(false);\n }\n const routeRoles = route.data['roles'];\n // if (!routeRoles) {\n // return of(false);\n // }\n return authService.introspect().pipe(\n filter((res) => res.roles !== null && res.roles.length > 0),\n map(({ roles }) => {\n const authed = roles.some((r) => routeRoles?.indexOf(r) >= 0);\n if (!authed) {\n router.navigate(['/forbidden']);\n }\n return authed;\n }),\n );\n};\n","import { Injectable, PLATFORM_ID, inject } from '@angular/core';\nimport { CanActivateFn, Router } from '@angular/router';\nimport { Observable, of } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { isPlatformBrowser } from '@angular/common';\n\nexport const PermissionGuard: CanActivateFn = (route, state): Observable<boolean> => {\n const authService = inject(AuthService);\n const environment = inject(APP_CONFIG);\n const platformId = inject(PLATFORM_ID);\n const isContinue = state.url.includes('continue');\n const continueUrl = route.queryParams['continue'];\n\n // if (!isPlatformBrowser(platformId)) {\n // return of(false);\n // }\n\n return of(false);\n};\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\nimport { User } from '../interfaces/auth.interface';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthUserService {\n environment = inject(APP_CONFIG);\n http = inject(HttpClient);\n private userSubject: BehaviorSubject<User | null> = new BehaviorSubject<User | null>(JSON.parse('null'));\n public userInfo$: Observable<User | null> = this.userSubject.asObservable();\n updateUserInfo(userInfo: User | null) {\n this.userSubject.next(userInfo);\n }\n findAll(options: any) {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users`, {\n params: options,\n withCredentials: true,\n });\n }\n findOne(userId: any) {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/${userId}`, {\n withCredentials: true,\n });\n }\n me() {\n return this.http\n .get<any>(`${this.environment.baseUrl}/auth/users/me`, {\n withCredentials: true,\n })\n .pipe(\n map((res) => {\n return res.data;\n }),\n );\n }\n getPublicUserInfo(id: string): Observable<any> {\n return this.http\n .get<any>(`${this.environment.baseUrl}/auth/users/${id}/info/public`, {\n withCredentials: false,\n })\n .pipe(\n map((res) => {\n return res.data;\n }),\n );\n }\n findPublicInfoByIds(ids: Array<string>) {\n const params = { ids: ids.join(',') };\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/by`, {\n params: params,\n });\n }\n sendSMSCode(countryCode: string, phone: string) {\n return this.http.post<any>(`${this.environment.baseUrl}/auth/users/verification/phone/start`, { countryCode, phone });\n }\n findByUsername(username: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/info`, {\n params: { username },\n withCredentials: true,\n });\n }\n findUserInfoByUsername(username: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/info/by`, {\n params: { username },\n withCredentials: true,\n });\n }\n findPublicInfoByRole(role: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/public/by`, {\n params: { role: role },\n withCredentials: false,\n });\n }\n changeUsername(username: string): Observable<any> {\n return this.http.put<any>(\n `${this.environment.baseUrl}/auth/users/username`,\n { username },\n {\n withCredentials: true,\n },\n );\n }\n changeName(name: any): Observable<any> {\n return this.http.put<any>(\n `${this.environment.baseUrl}/auth/users/me`,\n { name },\n {\n withCredentials: true,\n },\n );\n }\n createUserByAdmin(data: any): Observable<any> {\n return this.http.post<any>(`${this.environment.baseUrl}/auth/users/by/admin`, data, {\n withCredentials: true,\n });\n }\n update(data: any): Observable<any> {\n return this.http.put<any>(`${this.environment.baseUrl}/auth/users/me`, data, {\n withCredentials: true,\n });\n }\n uploadAvatar(data: any): Observable<any> {\n return this.http.post<any>(`${this.environment.baseUrl}/auth/users/avatar`, data, {\n withCredentials: true,\n });\n }\n changePhone(phone: any, code: any): Observable<any> {\n return this.http.put<any>(\n `${this.environment.baseUrl}/auth/users/phone`,\n { phone, code },\n {\n withCredentials: true,\n },\n );\n }\n follow(username: string): Observable<any> {\n return this.http.put<any>(\n `${this.environment.baseUrl}/auth/users/following/${username}`,\n {},\n {\n withCredentials: true,\n },\n );\n }\n unfollow(username: string): Observable<any> {\n return this.http.delete<any>(`${this.environment.baseUrl}/auth/users/following/${username}`, {\n withCredentials: true,\n });\n }\n listFollowingByUsername(username: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/${username}/following`);\n }\n listFollowersByUsername(username: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/${username}/followers`);\n }\n checkIfFollowingSomeone(username: string, target: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/${username}/following/${target}`);\n }\n isFollowing(username: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/following/${username}`, { withCredentials: true });\n }\n friendships(ids: string[]): Observable<any> {\n return this.http.post<any>(`${this.environment.baseUrl}/auth/users/friendships`, { ids: ids }, { withCredentials: true });\n }\n followersStats(username: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/followers/stats/by`, { params: { username: username } });\n }\n // Address;\n addAddress(data: any): Observable<any> {\n return this.http.post<any>(`${this.environment.baseUrl}/auth/users/addresses`, data, { withCredentials: true });\n }\n updateAddress(id: string, data: any): Observable<any> {\n return this.http.put<any>(`${this.environment.baseUrl}/auth/users/addresses/${id}`, data, { withCredentials: true });\n }\n findAllAddress(options: any): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/addresses`, { params: options, withCredentials: true });\n }\n getAddress(id: string): Observable<any> {\n return this.http.get<any>(`${this.environment.baseUrl}/auth/users/addresses/${id}`, { withCredentials: true });\n }\n deleteAddressById(id: string): Observable<any> {\n return this.http.delete<any>(`${this.environment.baseUrl}/auth/users/addresses/${id}`, { withCredentials: true });\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { Observable } from 'rxjs';\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthAgentService {\n environment = inject(APP_CONFIG);\n http = inject(HttpClient);\n baseUrl = `${this.environment.baseUrl}/auth/agents`;\n\n public findAllApplications(options: any): Observable<any> {\n return this.http.get<any>(`${this.baseUrl}/applications`, {\n params: options,\n withCredentials: true,\n });\n }\n public getApplication(id: string): Observable<any> {\n return this.http.get<any>(`${this.baseUrl}/applications/${id}`, {\n withCredentials: true,\n });\n }\n public myApplication(): Observable<any> {\n return this.http.get<any>(`${this.baseUrl}/applications/me`, {\n withCredentials: true,\n });\n }\n public apply(data: any): Observable<any> {\n return this.http.post<any>(`${this.baseUrl}/applications`, data, {\n withCredentials: true,\n });\n }\n public approve(id: string): Observable<any> {\n return this.http.put<any>(\n `${this.baseUrl}/applications/${id}/approve`,\n {},\n {\n withCredentials: true,\n },\n );\n }\n public reject(id: any, data: any): Observable<any> {\n return this.http.put<any>(`${this.baseUrl}/applications/${id}/reject`, data, {\n withCredentials: true,\n });\n }\n public findRejections(id: string): Observable<any> {\n return this.http.get<any>(`${this.baseUrl}/applications/${id}/rejections`, {\n withCredentials: true,\n });\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { inject, Inject, Injectable, PLATFORM_ID } from '@angular/core';\n\nclass LocalStorage implements Storage {\n [name: string]: any;\n readonly length = 0;\n clear(): void {}\n getItem(key: string): string | null {\n return null;\n }\n key(index: number): string | null {\n return null;\n }\n removeItem(key: string): void {}\n setItem(key: string, value: string): void {}\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalStorageService implements Storage {\n private storage: Storage;\n platformId = inject(PLATFORM_ID);\n\n constructor() {\n this.storage = new LocalStorage();\n\n if (isPlatformBrowser(this.platformId)) {\n this.storage = localStorage;\n }\n }\n\n [name: string]: any;\n\n length = 0;\n\n clear(): void {\n this.storage.clear();\n }\n\n getItem(key: string): string | null {\n return this.storage.getItem(key);\n }\n\n key(index: number): string | null {\n return this.storage.key(index);\n }\n\n removeItem(key: string): void {\n return this.storage.removeItem(key);\n }\n\n setItem(key: string, value: string): void {\n return this.storage.setItem(key, value);\n }\n}\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { AuthService } from '../services/auth.service';\nimport { BehaviorSubject, catchError, Observable, of, throwError } from 'rxjs';\n\n@Injectable()\nexport class ErrorInterceptor implements HttpInterceptor {\n tokenSubject: BehaviorSubject<string> = new BehaviorSubject<string>('');\n isRefreshingToken = false;\n authService = inject(AuthService);\n\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n return next.handle(request).pipe(\n catchError((error) => {\n if (error instanceof HttpErrorResponse) {\n switch (error.status) {\n case 400:\n return this.hand400Error(error);\n case 401:\n return this.hand401Error(error);\n case 403:\n return this.hand403Error(error);\n case 404:\n return this.hand404Error(error);\n case 429:\n return this.hand429Error(error);\n default:\n return this.handleDefaultError(error);\n }\n } else {\n return throwError(() => error);\n }\n }),\n );\n }\n private hand400Error(error: HttpErrorResponse) {\n return throwError(() => error.error);\n }\n private hand401Error(error: HttpErrorResponse) {\n return throwError(() => error.error);\n }\n private hand403Error(error: HttpErrorResponse) {\n return throwError(() => error.error);\n }\n private hand404Error(error: HttpErrorResponse) {\n return throwError(() => error.error);\n }\n /**\n *\n * @param error SMS code sent too many\n * @returns\n */\n private hand429Error(error: HttpErrorResponse) {\n return throwError(() => error.error);\n }\n private handleDefaultError(error: HttpErrorResponse) {\n return throwError(() => new Error('系统错误'));\n // return throwError(() => error.error);\n }\n}\n","import { catchError, filter, map, switchMap, take } from 'rxjs/operators';\nimport { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { inject, Inject, Injectable, Optional, PLATFORM_ID } from '@angular/core';\nimport { NEVER, Observable, throwError } from 'rxjs';\n\nimport { AuthService } from '../services/auth.service';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { isPlatformBrowser } from '@angular/common';\n\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n environment = inject(APP_CONFIG);\n platformId = inject(PLATFORM_ID);\n authService = inject(AuthService);\n constructor() {}\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n const authRequest = request.clone({\n headers: request.headers.append('Client-Id', this.environment.clientId),\n });\n return next.handle(authRequest).pipe(\n map((res) => {\n // if (res instanceof HttpResponse && isPlatformBrowser(this.platformId)) {\n // // window.location.href = res.headers.get('Location') as string;\n // }\n return res;\n }),\n catchError((error: any) => {\n if (isPlatformBrowser(this.platformId)) {\n if (error.url?.includes('auth/introspect')) {\n // if (window.location.origin !== `${this.environment.accountsUrl}`) {\n // window.location.href = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;\n // return NEVER;\n // }\n }\n if (error instanceof HttpErrorResponse && error.error.code === 'G401') {\n window.location.href = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;\n return NEVER;\n }\n }\n return throwError(() => error.error || error.message);\n }),\n );\n }\n addClientIdHeader(request: HttpRequest<any>) {\n return request.clone({\n setHeaders: {\n 'Client-id': this.environment.clientId,\n },\n });\n }\n addCookieHeader(request: HttpRequest<any>, cookie: string) {\n return request.clone({\n setHeaders: {\n Cookie: cookie,\n 'Client-id': this.environment.clientId,\n },\n });\n }\n}\n","import { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { EnvironmentProviders, InjectionToken, Provider, makeEnvironmentProviders } from '@angular/core';\nimport { ErrorInterceptor, AuthInterceptor } from './lib/interceptors';\n\nexport enum AuthMethod {\n Password = 'PASSWORD',\n OTP = 'OTP',\n Google = 'GOOGLE',\n WeChat = 'WECHAT',\n}\n\nexport const AUTH_METHODS = new InjectionToken<AuthMethod[]>('AUTH_METHODS');\n\nexport interface AuthConfig {\n methods: AuthMethod[]\n}\n\nexport function provideAngularAuth(config?: AuthConfig): EnvironmentProviders {\n const providers: (Provider | EnvironmentProviders)[] = [\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },\n {\n provide: AUTH_METHODS,\n useValue: config?.methods,\n },\n\n {\n provide: HTTP_INTERCEPTORS,\n useClass: AuthInterceptor,\n multi: true,\n },\n ];\n return makeEnvironmentProviders(providers);\n}\n","import { Routes } from '@angular/router';\nimport { UnauthorizedComponent } from './components/unauthorized/unauthorized.component';\nimport { ForbiddenComponent } from './components/forbidden/forbidden.component';\n\nexport const authRoutes: Routes = [\n {\n path: 'unauthorized',\n component: UnauthorizedComponent,\n },\n {\n path: 'forbidden',\n component: ForbiddenComponent,\n },\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["map","catchError"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -5,7 +5,7 @@ import { SnackBarService } from '@rolatech/angular-services';
5
5
  import * as _rolatech_angular_auth from '@rolatech/angular-auth';
6
6
  import { HttpClient, HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';
7
7
  import { Observable, BehaviorSubject } from 'rxjs';
8
- import { PasswordChange as PasswordChange$1 } from '@rolatech/angular-common';
8
+ import { PasswordResetConfirmRequest, PasswordChange as PasswordChange$1 } from '@rolatech/angular-common';
9
9
  import { ActivatedRoute, CanActivateFn, Routes } from '@angular/router';
10
10
 
11
11
  declare class ForbiddenComponent {
@@ -109,6 +109,9 @@ declare class AuthService {
109
109
  login(data: any): Observable<any>;
110
110
  signup(data: any): Observable<any>;
111
111
  logout(): Observable<any>;
112
+ requestPasswordReset(email: string): Observable<any>;
113
+ validatePasswordRestToken(token: string): Observable<any>;
114
+ resetPassword(data: PasswordResetConfirmRequest): Observable<any>;
112
115
  changePassword(data: PasswordChange$1): Observable<any>;
113
116
  lookup(account: string, next: string): Observable<any>;
114
117
  challenge(username: string, password: string, next: string): Observable<any>;
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@rolatech/angular-auth",
3
- "version": "20.1.6-beta.5",
3
+ "version": "20.1.6-beta.7",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^20.0.0",
7
7
  "@angular/core": "^20.0.0"
8
8
  },
9
9
  "dependencies": {
10
- "@rolatech/angular-common": "20.1.6-beta.5",
11
- "@rolatech/angular-components": "20.1.6-beta.5",
12
- "@rolatech/angular-services": "20.1.6-beta.5",
10
+ "@rolatech/angular-common": "20.1.6-beta.7",
11
+ "@rolatech/angular-components": "20.1.6-beta.7",
12
+ "@rolatech/angular-services": "20.1.6-beta.7",
13
13
  "tslib": "^2.3.0"
14
14
  },
15
15
  "repository": {