@arsedizioni/ars-utils 21.1.103 → 21.2.101

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.
Files changed (39) hide show
  1. package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs +10 -10
  2. package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs +804 -823
  3. package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs.map +1 -1
  4. package/fesm2022/arsedizioni-ars-utils-core.mjs +162 -197
  5. package/fesm2022/arsedizioni-ars-utils-core.mjs.map +1 -1
  6. package/fesm2022/arsedizioni-ars-utils-evolution.common.mjs +10 -10
  7. package/fesm2022/arsedizioni-ars-utils-help.mjs +13 -13
  8. package/fesm2022/arsedizioni-ars-utils-support.common.mjs +7 -7
  9. package/fesm2022/arsedizioni-ars-utils-support.ui.mjs +12 -15
  10. package/fesm2022/arsedizioni-ars-utils-support.ui.mjs.map +1 -1
  11. package/fesm2022/arsedizioni-ars-utils-tinymce.mjs +7 -7
  12. package/fesm2022/arsedizioni-ars-utils-ui.application.mjs +110 -158
  13. package/fesm2022/arsedizioni-ars-utils-ui.application.mjs.map +1 -1
  14. package/fesm2022/arsedizioni-ars-utils-ui.mjs +204 -300
  15. package/fesm2022/arsedizioni-ars-utils-ui.mjs.map +1 -1
  16. package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs +13 -16
  17. package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs.map +1 -1
  18. package/package.json +1 -1
  19. package/types/arsedizioni-ars-utils-clipper.common.d.ts +1 -1
  20. package/types/arsedizioni-ars-utils-clipper.common.d.ts.map +1 -0
  21. package/types/arsedizioni-ars-utils-clipper.ui.d.ts +14 -19
  22. package/types/arsedizioni-ars-utils-clipper.ui.d.ts.map +1 -0
  23. package/types/arsedizioni-ars-utils-core.d.ts +38 -50
  24. package/types/arsedizioni-ars-utils-core.d.ts.map +1 -0
  25. package/types/arsedizioni-ars-utils-evolution.common.d.ts +1 -1
  26. package/types/arsedizioni-ars-utils-evolution.common.d.ts.map +1 -0
  27. package/types/arsedizioni-ars-utils-help.d.ts +1 -1
  28. package/types/arsedizioni-ars-utils-help.d.ts.map +1 -0
  29. package/types/arsedizioni-ars-utils-support.common.d.ts.map +1 -0
  30. package/types/arsedizioni-ars-utils-support.ui.d.ts +3 -4
  31. package/types/arsedizioni-ars-utils-support.ui.d.ts.map +1 -0
  32. package/types/arsedizioni-ars-utils-tinymce.d.ts.map +1 -0
  33. package/types/arsedizioni-ars-utils-ui.application.d.ts +49 -72
  34. package/types/arsedizioni-ars-utils-ui.application.d.ts.map +1 -0
  35. package/types/arsedizioni-ars-utils-ui.d.ts +77 -105
  36. package/types/arsedizioni-ars-utils-ui.d.ts.map +1 -0
  37. package/types/arsedizioni-ars-utils-ui.oauth.d.ts +4 -5
  38. package/types/arsedizioni-ars-utils-ui.oauth.d.ts.map +1 -0
  39. package/types/arsedizioni-ars-utils.d.ts.map +1 -0
@@ -1,12 +1,13 @@
1
1
  import * as i0 from '@angular/core';
2
- import { NgModule, inject, NgZone, output, input, signal, ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { NgModule, inject, DestroyRef, NgZone, output, input, signal, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
4
  import * as i1 from '@angular/material/button';
4
5
  import { MatButtonModule } from '@angular/material/button';
5
6
  import { EnvironmentService } from '@arsedizioni/ars-utils/core';
6
7
  import { DialogService } from '@arsedizioni/ars-utils/ui';
7
8
  import { MsalBroadcastService, MsalService, MSAL_INSTANCE, MSAL_GUARD_CONFIG, MSAL_INTERCEPTOR_CONFIG } from '@azure/msal-angular';
8
9
  import { PublicClientApplication, BrowserCacheLocation, InteractionType, EventType } from '@azure/msal-browser';
9
- import { Subject, filter, takeUntil, catchError, throwError } from 'rxjs';
10
+ import { filter, catchError, throwError } from 'rxjs';
10
11
 
11
12
  var LoginOAuthType;
12
13
  (function (LoginOAuthType) {
@@ -17,11 +18,11 @@ var LoginOAuthType;
17
18
 
18
19
  // Material
19
20
  class ArsUIOAuthModule {
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ArsUIOAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.5", ngImport: i0, type: ArsUIOAuthModule }); }
22
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ArsUIOAuthModule }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: ArsUIOAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
22
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.0", ngImport: i0, type: ArsUIOAuthModule }); }
23
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: ArsUIOAuthModule }); }
23
24
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ArsUIOAuthModule, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: ArsUIOAuthModule, decorators: [{
25
26
  type: NgModule
26
27
  }] });
27
28
 
@@ -56,7 +57,7 @@ function MSALGuardConfigFactory() {
56
57
  }
57
58
  class LoginOAuthComponent {
58
59
  constructor() {
59
- this.unsubscribe = new Subject();
60
+ this.destroyRef = inject(DestroyRef);
60
61
  this.msalBroadcastService = inject(MsalBroadcastService);
61
62
  this.msaLService = inject(MsalService);
62
63
  this.dialogService = inject(DialogService);
@@ -77,7 +78,7 @@ class LoginOAuthComponent {
77
78
  }
78
79
  this.msalBroadcastService.msalSubject$
79
80
  .pipe(filter((msg) => msg.eventType === EventType.ACQUIRE_TOKEN_SUCCESS ||
80
- msg.eventType === EventType.LOGOUT_SUCCESS), takeUntil(this.unsubscribe), catchError(error => {
81
+ msg.eventType === EventType.LOGOUT_SUCCESS), takeUntilDestroyed(this.destroyRef), catchError(error => {
81
82
  this.dialogService.error(error);
82
83
  return throwError(() => error);
83
84
  }))
@@ -89,10 +90,6 @@ class LoginOAuthComponent {
89
90
  }
90
91
  });
91
92
  }
92
- ngOnDestroy() {
93
- this.unsubscribe.next();
94
- this.unsubscribe.complete();
95
- }
96
93
  /**
97
94
  * Initialize open authentication
98
95
  * Must be a public method
@@ -104,7 +101,7 @@ class LoginOAuthComponent {
104
101
  this.oauthReady.set(true);
105
102
  // Load MS stack
106
103
  this.msaLService.initialize()
107
- .pipe(takeUntil(this.unsubscribe))
104
+ .pipe(takeUntilDestroyed(this.destroyRef))
108
105
  .subscribe(() => {
109
106
  this.oauthMicrosoftReady.set(true);
110
107
  });
@@ -168,8 +165,8 @@ class LoginOAuthComponent {
168
165
  // Use wrapper click to prevent Illegal invocation exception
169
166
  googleButtonWrapper.click();
170
167
  }
171
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: LoginOAuthComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
172
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: LoginOAuthComponent, isStandalone: true, selector: "login-oauth", inputs: { showInfo: { classPropertyName: "showInfo", publicName: "showInfo", isSignal: true, isRequired: false, transformFunction: null }, applicationName: { classPropertyName: "applicationName", publicName: "applicationName", isSignal: true, isRequired: false, transformFunction: null }, autoInitialize: { classPropertyName: "autoInitialize", publicName: "autoInitialize", isSignal: true, isRequired: false, transformFunction: null }, allowMicrosoft: { classPropertyName: "allowMicrosoft", publicName: "allowMicrosoft", isSignal: true, isRequired: false, transformFunction: null }, allowGoogle: { classPropertyName: "allowGoogle", publicName: "allowGoogle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { success: "success" }, providers: [
168
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: LoginOAuthComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
169
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: LoginOAuthComponent, isStandalone: true, selector: "login-oauth", inputs: { showInfo: { classPropertyName: "showInfo", publicName: "showInfo", isSignal: true, isRequired: false, transformFunction: null }, applicationName: { classPropertyName: "applicationName", publicName: "applicationName", isSignal: true, isRequired: false, transformFunction: null }, autoInitialize: { classPropertyName: "autoInitialize", publicName: "autoInitialize", isSignal: true, isRequired: false, transformFunction: null }, allowMicrosoft: { classPropertyName: "allowMicrosoft", publicName: "allowMicrosoft", isSignal: true, isRequired: false, transformFunction: null }, allowGoogle: { classPropertyName: "allowGoogle", publicName: "allowGoogle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { success: "success" }, providers: [
173
170
  {
174
171
  provide: MSAL_INSTANCE,
175
172
  deps: [EnvironmentService],
@@ -188,7 +185,7 @@ class LoginOAuthComponent {
188
185
  MsalBroadcastService
189
186
  ], ngImport: i0, template: "<div class=\"login-oauth\">\r\n @if(showInfo()) {\r\n <div class=\"message\">\r\n <p>Questa sezione consente di accedere al servizio utilizzando un provider OAuth2.</p>\r\n @if(applicationName()) {\r\n <p>La email utilizzata deve essere collegata ad un utente valido di {{applicationName()}} e dei servizi ad esso\r\n connessi.</p>\r\n }\r\n </div>\r\n }\r\n @if (allowMicrosoft()) {\r\n <div class=\"button\">\r\n <button mat-flat-button (click)=\"loginMSAL()\" [attr.aria-label]=\"'Effettua accesso'\"\r\n [disabled]=\"!oauthMicrosoftReady()\" style=\"width: 100%;\">\r\n Accedi con Microsoft</button>\r\n </div>\r\n }\r\n @if (allowGoogle()) {\r\n <div class=\"button\">\r\n <button mat-flat-button (click)=\"loginGoogle()\" style=\"width: 100%;\"\r\n [attr.aria-label]=\"'Effettua accesso'\" [disabled]=\"!oauthGoogleReady()\">\r\n Accedi con Google</button>\r\n </div>\r\n }\r\n</div>", styles: [".login-oauth{text-align:center}.login-oauth .button{padding:10px 0;width:100%}.login-oauth .message{padding:0 0 10px!important;font-size:small}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
190
187
  }
191
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: LoginOAuthComponent, decorators: [{
188
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: LoginOAuthComponent, decorators: [{
192
189
  type: Component,
193
190
  args: [{ selector: 'login-oauth', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
194
191
  {
@@ -1 +1 @@
1
- {"version":3,"file":"arsedizioni-ars-utils-ui.oauth.mjs","sources":["../../../projects/ars-utils/ui.oauth/ui/definitions.ts","../../../projects/ars-utils/ui.oauth/ui/ui.module.ts","../../../projects/ars-utils/ui.oauth/ui/components/login/login-oauth.component.ts","../../../projects/ars-utils/ui.oauth/ui/components/login/login-oauth.component.html","../../../projects/ars-utils/ui.oauth/public_api.ts","../../../projects/ars-utils/ui.oauth/arsedizioni-ars-utils-ui.oauth.ts"],"sourcesContent":["export enum LoginOAuthType {\r\n None = 0,\r\n Microsoft = 1,\r\n Google = 2\r\n}\r\n\r\nexport interface LoginOAuthResult {\r\n type: number,\r\n token: string\r\n}","import { NgModule } from \"@angular/core\";\r\n\r\n// Material\r\n\r\n@NgModule()\r\nexport class ArsUIOAuthModule { }\r\n\r\nexport * from \"./definitions\";\r\n\r\n\r\n","import { ChangeDetectionStrategy, Component, NgZone, OnDestroy, OnInit, inject, input, output, signal } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { EnvironmentService } from '@arsedizioni/ars-utils/core';\r\nimport { DialogService } from '@arsedizioni/ars-utils/ui';\r\nimport { MSAL_GUARD_CONFIG, MSAL_INSTANCE, MSAL_INTERCEPTOR_CONFIG, MsalBroadcastService, MsalGuardConfiguration, MsalInterceptorConfiguration, MsalService } from '@azure/msal-angular';\r\nimport { AuthenticationResult, BrowserCacheLocation, EventMessage, EventType, IPublicClientApplication, InteractionType, PublicClientApplication } from '@azure/msal-browser';\r\nimport { Subject, catchError, filter, takeUntil, throwError } from 'rxjs';\r\nimport { LoginOAuthResult } from '../../definitions';\r\n\r\nexport function MSALInstanceFactory(environment: EnvironmentService): IPublicClientApplication {\r\n return new PublicClientApplication({\r\n auth: {\r\n clientId: \"6b2c080f-6ab0-4511-a9df-0bce69db5833\",\r\n authority: \"https://login.microsoftonline.com/common\",\r\n redirectUri: environment.appLoginRedirectUri, // This is your redir\r\n },\r\n cache: {\r\n cacheLocation: BrowserCacheLocation.LocalStorage\r\n }\r\n });\r\n}\r\n\r\nexport function MSALInterceptorConfigFactory(environment: EnvironmentService): MsalInterceptorConfiguration {\r\n\r\n return {\r\n interactionType: InteractionType.Popup,\r\n protectedResourceMap: new Map([\r\n [environment.appServiceLoginUri, [\"api://6b2c080f-6ab0-4511-a9df-0bce69db5833/AngularSPAAuthScope\"]],\r\n [\"https://graph.microsoft.com/v2.0/me\", [\"user.read\"]],\r\n ])\r\n };\r\n}\r\n\r\nexport function MSALGuardConfigFactory(): MsalGuardConfiguration {\r\n return {\r\n interactionType: InteractionType.Popup,\r\n authRequest: {\r\n scopes: [\"user.read\"]\r\n }\r\n };\r\n}\r\n\r\n@Component({\r\n selector: 'login-oauth',\r\n templateUrl: './login-oauth.component.html',\r\n styleUrls: ['./login-oauth.component.scss'],\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: MSAL_INSTANCE,\r\n deps: [EnvironmentService],\r\n useFactory: MSALInstanceFactory\r\n },\r\n {\r\n provide: MSAL_GUARD_CONFIG,\r\n useFactory: MSALGuardConfigFactory\r\n },\r\n {\r\n provide: MSAL_INTERCEPTOR_CONFIG,\r\n deps: [EnvironmentService],\r\n useFactory: MSALInterceptorConfigFactory\r\n },\r\n MsalService,\r\n MsalBroadcastService],\r\n imports: [\r\n MatButtonModule\r\n ]\r\n})\r\nexport class LoginOAuthComponent implements OnInit, OnDestroy {\r\n private unsubscribe: Subject<void> = new Subject<void>();\r\n private msalBroadcastService = inject(MsalBroadcastService);\r\n private msaLService = inject(MsalService);\r\n private dialogService = inject(DialogService);\r\n private ngZone = inject(NgZone);\r\n\r\n readonly success = output<LoginOAuthResult>();\r\n\r\n readonly showInfo = input<boolean>(true);\r\n readonly applicationName = input<string>();\r\n readonly autoInitialize = input<boolean>(false);\r\n readonly allowMicrosoft = input<boolean>(true);\r\n readonly allowGoogle = input<boolean>(true);\r\n\r\n\r\n protected oauthReady = signal<boolean>(false);\r\n protected oauthMicrosoftReady = signal<boolean>(false);\r\n protected oauthGoogleReady = signal<boolean>(false);\r\n\r\n\r\n ngOnInit() {\r\n if (this.autoInitialize()) {\r\n this.initialize();\r\n }\r\n this.msalBroadcastService.msalSubject$\r\n .pipe(\r\n filter((msg: EventMessage) =>\r\n msg.eventType === EventType.ACQUIRE_TOKEN_SUCCESS ||\r\n msg.eventType === EventType.LOGOUT_SUCCESS),\r\n takeUntil(this.unsubscribe),\r\n catchError(error => {\r\n this.dialogService.error(error);\r\n return throwError(() => error);\r\n })\r\n )\r\n .subscribe((r: EventMessage) => {\r\n if (r) {\r\n // Casting payload as AuthenticationResult to access account\r\n const payload = r.payload as AuthenticationResult;\r\n this.success.emit({ type: 1, token: payload.accessToken });\r\n }\r\n });\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unsubscribe.next();\r\n this.unsubscribe.complete();\r\n }\r\n\r\n /**\r\n * Initialize open authentication \r\n * Must be a public method \r\n */\r\n initialize() {\r\n if (this.oauthReady()) {\r\n return; // Already done\r\n }\r\n this.oauthReady.set(true);\r\n\r\n // Load MS stack\r\n this.msaLService.initialize()\r\n .pipe(takeUntil(this.unsubscribe))\r\n .subscribe(() => {\r\n this.oauthMicrosoftReady.set(true);\r\n });\r\n\r\n // Load google maps script after view init\r\n const DSLScript = document.createElement('script');\r\n DSLScript.src = 'https://accounts.google.com/gsi/client';\r\n DSLScript.type = 'text/javascript';\r\n document.body.appendChild(DSLScript);\r\n document.body.removeChild(DSLScript);\r\n\r\n // @ts-ignore\r\n window.onGoogleLibraryLoad = () => {\r\n // initialize google account\r\n // @ts-ignore\r\n google.accounts.id.initialize({\r\n client_id: '71204983077-ag31h3bgt2udcbfr9nn84r9rni2k3snp.apps.googleusercontent.com',\r\n cancel_on_tap_outside: true,\r\n auto_select: false,\r\n callback: (r: any) => {\r\n this.ngZone.run(() => {\r\n this.success.emit({ type: 2, token: r.credential });\r\n });\r\n }\r\n });\r\n\r\n googleButtonWrapper = createFakeGoogleWrapper();\r\n\r\n this.oauthGoogleReady.set(true);\r\n };\r\n\r\n }\r\n\r\n /**\r\n * Perform login using MSAL\r\n */\r\n protected loginMSAL() {\r\n this.msaLService.loginPopup()\r\n .subscribe({\r\n next: (r: AuthenticationResult) => {\r\n try {\r\n this.msaLService.instance.setActiveAccount(r.account);\r\n this.msaLService.acquireTokenSilent({\r\n scopes: [\r\n \"api://6b2c080f-6ab0-4511-a9df-0bce69db5833/AngularSPAAuthScope\"\r\n ],\r\n account: r.account\r\n }).subscribe({\r\n error: (error: any) => {\r\n this.dialogService.error(error.message);\r\n }\r\n })\r\n } catch (error: any) {\r\n this.dialogService.error(error.message);\r\n }\r\n },\r\n error: (error: any) => {\r\n this.dialogService.error(error.message);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n* Perform login using Google\r\n*/\r\n protected loginGoogle() {\r\n // Use wrapper click to prevent Illegal invocation exception\r\n googleButtonWrapper.click();\r\n }\r\n}\r\n\r\nconst createFakeGoogleWrapper = () => {\r\n const googleLoginWrapper = document.createElement(\"div\");\r\n // Or you can simple hide it in CSS rule for custom-google-button\r\n googleLoginWrapper.style.display = \"none\";\r\n googleLoginWrapper.classList.add(\"custom-google-button\");\r\n\r\n // Add the wrapper to body\r\n document.body.appendChild(googleLoginWrapper);\r\n\r\n // Use GSI javascript api to render the button inside our wrapper\r\n // You can ignore the properties because this button will not appear\r\n // @ts-ignore\r\n window.google.accounts.id.renderButton(googleLoginWrapper, {\r\n type: \"icon\",\r\n width: \"200\",\r\n });\r\n\r\n const googleLoginWrapperButton =\r\n googleLoginWrapper.querySelector(\"div[role=button]\");\r\n\r\n return {\r\n click: () => {\r\n // @ts-ignore\r\n googleLoginWrapperButton.click();\r\n },\r\n };\r\n};\r\nvar googleButtonWrapper: any;\r\n\r\n","<div class=\"login-oauth\">\r\n @if(showInfo()) {\r\n <div class=\"message\">\r\n <p>Questa sezione consente di accedere al servizio utilizzando un provider OAuth2.</p>\r\n @if(applicationName()) {\r\n <p>La email utilizzata deve essere collegata ad un utente valido di {{applicationName()}} e dei servizi ad esso\r\n connessi.</p>\r\n }\r\n </div>\r\n }\r\n @if (allowMicrosoft()) {\r\n <div class=\"button\">\r\n <button mat-flat-button (click)=\"loginMSAL()\" [attr.aria-label]=\"'Effettua accesso'\"\r\n [disabled]=\"!oauthMicrosoftReady()\" style=\"width: 100%;\">\r\n Accedi con Microsoft</button>\r\n </div>\r\n }\r\n @if (allowGoogle()) {\r\n <div class=\"button\">\r\n <button mat-flat-button (click)=\"loginGoogle()\" style=\"width: 100%;\"\r\n [attr.aria-label]=\"'Effettua accesso'\" [disabled]=\"!oauthGoogleReady()\">\r\n Accedi con Google</button>\r\n </div>\r\n }\r\n</div>","/*\r\n * Public API Surface of ars-utils\r\n */\r\nexport * from './ui/ui.module';\r\nexport * from './ui/components/login/login-oauth.component';\r\n\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arsedizioni-ars-utils-ui.oauth.mjs","sources":["../../../projects/ars-utils/ui.oauth/ui/definitions.ts","../../../projects/ars-utils/ui.oauth/ui/ui.module.ts","../../../projects/ars-utils/ui.oauth/ui/components/login/login-oauth.component.ts","../../../projects/ars-utils/ui.oauth/ui/components/login/login-oauth.component.html","../../../projects/ars-utils/ui.oauth/public_api.ts","../../../projects/ars-utils/ui.oauth/arsedizioni-ars-utils-ui.oauth.ts"],"sourcesContent":["export enum LoginOAuthType {\r\n None = 0,\r\n Microsoft = 1,\r\n Google = 2\r\n}\r\n\r\nexport interface LoginOAuthResult {\r\n type: number,\r\n token: string\r\n}","import { NgModule } from \"@angular/core\";\r\n\r\n// Material\r\n\r\n@NgModule()\r\nexport class ArsUIOAuthModule { }\r\n\r\nexport * from \"./definitions\";\r\n\r\n\r\n","import { ChangeDetectionStrategy, Component, DestroyRef, NgZone, OnInit, inject, input, output, signal } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { EnvironmentService } from '@arsedizioni/ars-utils/core';\r\nimport { DialogService } from '@arsedizioni/ars-utils/ui';\r\nimport { MSAL_GUARD_CONFIG, MSAL_INSTANCE, MSAL_INTERCEPTOR_CONFIG, MsalBroadcastService, MsalGuardConfiguration, MsalInterceptorConfiguration, MsalService } from '@azure/msal-angular';\r\nimport { AuthenticationResult, BrowserCacheLocation, EventMessage, EventType, IPublicClientApplication, InteractionType, PublicClientApplication } from '@azure/msal-browser';\r\nimport { catchError, filter, throwError } from 'rxjs';\r\nimport { LoginOAuthResult } from '../../definitions';\r\n\r\nexport function MSALInstanceFactory(environment: EnvironmentService): IPublicClientApplication {\r\n return new PublicClientApplication({\r\n auth: {\r\n clientId: \"6b2c080f-6ab0-4511-a9df-0bce69db5833\",\r\n authority: \"https://login.microsoftonline.com/common\",\r\n redirectUri: environment.appLoginRedirectUri, // This is your redir\r\n },\r\n cache: {\r\n cacheLocation: BrowserCacheLocation.LocalStorage\r\n }\r\n });\r\n}\r\n\r\nexport function MSALInterceptorConfigFactory(environment: EnvironmentService): MsalInterceptorConfiguration {\r\n\r\n return {\r\n interactionType: InteractionType.Popup,\r\n protectedResourceMap: new Map([\r\n [environment.appServiceLoginUri, [\"api://6b2c080f-6ab0-4511-a9df-0bce69db5833/AngularSPAAuthScope\"]],\r\n [\"https://graph.microsoft.com/v2.0/me\", [\"user.read\"]],\r\n ])\r\n };\r\n}\r\n\r\nexport function MSALGuardConfigFactory(): MsalGuardConfiguration {\r\n return {\r\n interactionType: InteractionType.Popup,\r\n authRequest: {\r\n scopes: [\"user.read\"]\r\n }\r\n };\r\n}\r\n\r\n@Component({\r\n selector: 'login-oauth',\r\n templateUrl: './login-oauth.component.html',\r\n styleUrls: ['./login-oauth.component.scss'],\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: MSAL_INSTANCE,\r\n deps: [EnvironmentService],\r\n useFactory: MSALInstanceFactory\r\n },\r\n {\r\n provide: MSAL_GUARD_CONFIG,\r\n useFactory: MSALGuardConfigFactory\r\n },\r\n {\r\n provide: MSAL_INTERCEPTOR_CONFIG,\r\n deps: [EnvironmentService],\r\n useFactory: MSALInterceptorConfigFactory\r\n },\r\n MsalService,\r\n MsalBroadcastService],\r\n imports: [\r\n MatButtonModule\r\n ]\r\n})\r\nexport class LoginOAuthComponent implements OnInit {\r\n private readonly destroyRef = inject(DestroyRef);\r\n private msalBroadcastService = inject(MsalBroadcastService);\r\n private msaLService = inject(MsalService);\r\n private dialogService = inject(DialogService);\r\n private ngZone = inject(NgZone);\r\n\r\n readonly success = output<LoginOAuthResult>();\r\n\r\n readonly showInfo = input<boolean>(true);\r\n readonly applicationName = input<string>();\r\n readonly autoInitialize = input<boolean>(false);\r\n readonly allowMicrosoft = input<boolean>(true);\r\n readonly allowGoogle = input<boolean>(true);\r\n\r\n\r\n protected oauthReady = signal<boolean>(false);\r\n protected oauthMicrosoftReady = signal<boolean>(false);\r\n protected oauthGoogleReady = signal<boolean>(false);\r\n\r\n\r\n ngOnInit() {\r\n if (this.autoInitialize()) {\r\n this.initialize();\r\n }\r\n this.msalBroadcastService.msalSubject$\r\n .pipe(\r\n filter((msg: EventMessage) =>\r\n msg.eventType === EventType.ACQUIRE_TOKEN_SUCCESS ||\r\n msg.eventType === EventType.LOGOUT_SUCCESS),\r\n takeUntilDestroyed(this.destroyRef),\r\n catchError(error => {\r\n this.dialogService.error(error);\r\n return throwError(() => error);\r\n })\r\n )\r\n .subscribe((r: EventMessage) => {\r\n if (r) {\r\n // Casting payload as AuthenticationResult to access account\r\n const payload = r.payload as AuthenticationResult;\r\n this.success.emit({ type: 1, token: payload.accessToken });\r\n }\r\n });\r\n\r\n }\r\n\r\n /**\r\n * Initialize open authentication \r\n * Must be a public method \r\n */\r\n initialize() {\r\n if (this.oauthReady()) {\r\n return; // Already done\r\n }\r\n this.oauthReady.set(true);\r\n\r\n // Load MS stack\r\n this.msaLService.initialize()\r\n .pipe(takeUntilDestroyed(this.destroyRef))\r\n .subscribe(() => {\r\n this.oauthMicrosoftReady.set(true);\r\n });\r\n\r\n // Load google maps script after view init\r\n const DSLScript = document.createElement('script');\r\n DSLScript.src = 'https://accounts.google.com/gsi/client';\r\n DSLScript.type = 'text/javascript';\r\n document.body.appendChild(DSLScript);\r\n document.body.removeChild(DSLScript);\r\n\r\n // @ts-ignore\r\n window.onGoogleLibraryLoad = () => {\r\n // initialize google account\r\n // @ts-ignore\r\n google.accounts.id.initialize({\r\n client_id: '71204983077-ag31h3bgt2udcbfr9nn84r9rni2k3snp.apps.googleusercontent.com',\r\n cancel_on_tap_outside: true,\r\n auto_select: false,\r\n callback: (r: any) => {\r\n this.ngZone.run(() => {\r\n this.success.emit({ type: 2, token: r.credential });\r\n });\r\n }\r\n });\r\n\r\n googleButtonWrapper = createFakeGoogleWrapper();\r\n\r\n this.oauthGoogleReady.set(true);\r\n };\r\n\r\n }\r\n\r\n /**\r\n * Perform login using MSAL\r\n */\r\n protected loginMSAL() {\r\n this.msaLService.loginPopup()\r\n .subscribe({\r\n next: (r: AuthenticationResult) => {\r\n try {\r\n this.msaLService.instance.setActiveAccount(r.account);\r\n this.msaLService.acquireTokenSilent({\r\n scopes: [\r\n \"api://6b2c080f-6ab0-4511-a9df-0bce69db5833/AngularSPAAuthScope\"\r\n ],\r\n account: r.account\r\n }).subscribe({\r\n error: (error: any) => {\r\n this.dialogService.error(error.message);\r\n }\r\n })\r\n } catch (error: any) {\r\n this.dialogService.error(error.message);\r\n }\r\n },\r\n error: (error: any) => {\r\n this.dialogService.error(error.message);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n* Perform login using Google\r\n*/\r\n protected loginGoogle() {\r\n // Use wrapper click to prevent Illegal invocation exception\r\n googleButtonWrapper.click();\r\n }\r\n}\r\n\r\nconst createFakeGoogleWrapper = () => {\r\n const googleLoginWrapper = document.createElement(\"div\");\r\n // Or you can simple hide it in CSS rule for custom-google-button\r\n googleLoginWrapper.style.display = \"none\";\r\n googleLoginWrapper.classList.add(\"custom-google-button\");\r\n\r\n // Add the wrapper to body\r\n document.body.appendChild(googleLoginWrapper);\r\n\r\n // Use GSI javascript api to render the button inside our wrapper\r\n // You can ignore the properties because this button will not appear\r\n // @ts-ignore\r\n window.google.accounts.id.renderButton(googleLoginWrapper, {\r\n type: \"icon\",\r\n width: \"200\",\r\n });\r\n\r\n const googleLoginWrapperButton =\r\n googleLoginWrapper.querySelector(\"div[role=button]\");\r\n\r\n return {\r\n click: () => {\r\n // @ts-ignore\r\n googleLoginWrapperButton.click();\r\n },\r\n };\r\n};\r\nvar googleButtonWrapper: any;\r\n\r\n","<div class=\"login-oauth\">\r\n @if(showInfo()) {\r\n <div class=\"message\">\r\n <p>Questa sezione consente di accedere al servizio utilizzando un provider OAuth2.</p>\r\n @if(applicationName()) {\r\n <p>La email utilizzata deve essere collegata ad un utente valido di {{applicationName()}} e dei servizi ad esso\r\n connessi.</p>\r\n }\r\n </div>\r\n }\r\n @if (allowMicrosoft()) {\r\n <div class=\"button\">\r\n <button mat-flat-button (click)=\"loginMSAL()\" [attr.aria-label]=\"'Effettua accesso'\"\r\n [disabled]=\"!oauthMicrosoftReady()\" style=\"width: 100%;\">\r\n Accedi con Microsoft</button>\r\n </div>\r\n }\r\n @if (allowGoogle()) {\r\n <div class=\"button\">\r\n <button mat-flat-button (click)=\"loginGoogle()\" style=\"width: 100%;\"\r\n [attr.aria-label]=\"'Effettua accesso'\" [disabled]=\"!oauthGoogleReady()\">\r\n Accedi con Google</button>\r\n </div>\r\n }\r\n</div>","/*\r\n * Public API Surface of ars-utils\r\n */\r\nexport * from './ui/ui.module';\r\nexport * from './ui/components/login/login-oauth.component';\r\n\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arsedizioni/ars-utils",
3
- "version": "21.1.103",
3
+ "version": "21.2.101",
4
4
  "author": {
5
5
  "email": "software@arsedizioni.it",
6
6
  "name": "Fabio Buscaroli, Alberto Doria"
@@ -1,6 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { Signal, OnDestroy } from '@angular/core';
3
- import { NameValueItem, LoginResult, Folder, ApiResult, FolderTree } from '@arsedizioni/ars-utils/core';
3
+ import { NameValueItem, Folder, LoginResult, ApiResult, FolderTree } from '@arsedizioni/ars-utils/core';
4
4
  import { SendToDialogResult } from '@arsedizioni/ars-utils/ui.application';
5
5
  import { LoginOAuthType } from '@arsedizioni/ars-utils/ui.oauth';
6
6
  import * as _angular_common_http from '@angular/common/http';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arsedizioni-ars-utils-clipper.common.d.ts","sources":["../../../projects/ars-utils/clipper.common/common/messages.ts","../../../projects/ars-utils/clipper.common/common/definitions.ts","../../../projects/ars-utils/clipper.common/common/interceptors/auth.interceptor.ts","../../../projects/ars-utils/clipper.common/common/services/clipper.service.ts","../../../projects/ars-utils/clipper.common/common/common.module.ts"],"sourcesContent":[null,null,null,null,null],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { OnDestroy, ChangeDetectorRef, OnInit, AfterViewInit, Signal } from '@angular/core';
2
+ import { DestroyRef, ChangeDetectorRef, OnInit, AfterViewInit, Signal } from '@angular/core';
3
3
  import { MatPaginator, PageEvent } from '@angular/material/paginator';
4
4
  import { MatDrawer } from '@angular/material/sidenav';
5
5
  import { ClipperService, ClipperDocumentInfo, ClipperSearchParams, ClipperQueryReferencesMode, ClipperModule, ClipperModel, ClipperSearchCalendarSnapshotMonth, ClipperSearchCalendarSnapshotResult, ClipperSearchFacetsSnapshot, ClipperSearchFacet, ClipperSearchFacetGroup, ClipperSelectionMode, ClipperSearchResult, ClipperSort, ClipperUserInfo, ClipperUserSearch, SectorInfo, ClipperDocumentRelevants, ClipperDocumentAnchorInfo } from '@arsedizioni/ars-utils/clipper.common';
6
6
  import * as rxjs from 'rxjs';
7
- import { Subject } from 'rxjs';
8
7
  import { BreakpointObserver } from '@angular/cdk/layout';
9
8
  import { BroadcastService, DateInterval, ScreenService, SelectableModel, NameValueItem, INode, ThemeType } from '@arsedizioni/ars-utils/core';
10
9
  import { Clipboard } from '@angular/cdk/clipboard';
@@ -262,11 +261,11 @@ declare class ClipperSearchFacetsComponent {
262
261
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ClipperSearchFacetsComponent, "clipper-search-facets", never, { "handleTooManyResults": { "alias": "handleTooManyResults"; "required": false; "isSignal": true; }; }, { "changed": "changed"; }, never, never, true, never>;
263
262
  }
264
263
 
265
- declare class ClipperSearchResultManager extends ClipperDocumentManager implements OnDestroy {
264
+ declare class ClipperSearchResultManager extends ClipperDocumentManager {
266
265
  readonly paginator: _angular_core.Signal<MatPaginator>;
267
266
  readonly facets: _angular_core.Signal<ClipperSearchFacetsComponent>;
268
267
  readonly calendar: _angular_core.Signal<ClipperSearchCalendarComponent>;
269
- protected unsubscribe: Subject<void>;
268
+ protected readonly destroyRef: DestroyRef;
270
269
  protected changeDetector: ChangeDetectorRef;
271
270
  protected breakpointObserver: BreakpointObserver;
272
271
  private themeService;
@@ -289,7 +288,6 @@ declare class ClipperSearchResultManager extends ClipperDocumentManager implemen
289
288
  protected restorableId: string | undefined;
290
289
  protected hasFacets: _angular_core.WritableSignal<boolean>;
291
290
  protected hasRegions: () => boolean;
292
- ngOnDestroy(): void;
293
291
  /**
294
292
  * Update menu buttons visibility when the menu is closed
295
293
  */
@@ -438,7 +436,7 @@ interface ClipperReferencesDialogData {
438
436
  interface ClipperReferenceDialogResult {
439
437
  documentId: string;
440
438
  }
441
- declare class ClipperReferencesComponent extends ClipperSearchResultManager implements OnInit, OnDestroy, AfterViewInit {
439
+ declare class ClipperReferencesComponent extends ClipperSearchResultManager implements OnInit, AfterViewInit {
442
440
  readonly filterPane: _angular_core.Signal<MatDrawer>;
443
441
  private dialogRef;
444
442
  protected dialogData: ClipperReferencesDialogData;
@@ -446,7 +444,6 @@ declare class ClipperReferencesComponent extends ClipperSearchResultManager impl
446
444
  protected item?: ClipperDocumentInfo;
447
445
  protected user: ClipperUserInfo | undefined;
448
446
  ngOnInit(): void;
449
- ngOnDestroy(): void;
450
447
  ngAfterViewInit(): void;
451
448
  /**
452
449
  * Show hide filter pane manually
@@ -519,7 +516,7 @@ declare class ClipperReferencesComponent extends ClipperSearchResultManager impl
519
516
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ClipperReferencesComponent, "ng-component", never, {}, {}, never, never, true, never>;
520
517
  }
521
518
 
522
- declare class ClipperBrowserComponent extends ClipperSearchResultManager implements OnInit, OnDestroy, AfterViewInit {
519
+ declare class ClipperBrowserComponent extends ClipperSearchResultManager implements OnInit, AfterViewInit {
523
520
  readonly filterByNumber: Signal<MatInput>;
524
521
  readonly filterByText: Signal<MatInput>;
525
522
  readonly filterByChangeNumber: Signal<MatInput>;
@@ -566,7 +563,6 @@ declare class ClipperBrowserComponent extends ClipperSearchResultManager impleme
566
563
  protected user: ClipperUserInfo | undefined;
567
564
  ngOnInit(): void;
568
565
  ngAfterViewInit(): void;
569
- ngOnDestroy(): void;
570
566
  /**
571
567
  * Get all available modules
572
568
  */
@@ -743,7 +739,7 @@ interface ClipperBrowserDialogData {
743
739
  theme?: ThemeType;
744
740
  }
745
741
  declare class ClipperBrowserDialogComponent implements OnInit, AfterViewInit {
746
- private unsubscribe;
742
+ private readonly destroyRef;
747
743
  readonly clipperBrowser: _angular_core.Signal<ClipperBrowserComponent>;
748
744
  protected clipperService: ClipperService;
749
745
  private changeDetector;
@@ -798,7 +794,7 @@ declare enum ClipperSearchResultItemDisplayMode {
798
794
  Stripe = 3
799
795
  }
800
796
  declare class ClipperSearchResultItemComponent implements OnInit {
801
- private unsubscribe;
797
+ private readonly destroyRef;
802
798
  protected screenService: ScreenService;
803
799
  protected broadcastService: BroadcastService;
804
800
  private changeDetector;
@@ -846,11 +842,11 @@ interface ClipperDocumentDialogData {
846
842
  canUseArchive?: boolean;
847
843
  canHandleTooManyResults?: boolean;
848
844
  }
849
- declare class ClipperDocumentComponent extends ClipperDocumentManager implements OnInit, OnDestroy {
845
+ declare class ClipperDocumentComponent extends ClipperDocumentManager implements OnInit {
850
846
  readonly relevantsPane: _angular_core.Signal<MatDrawer>;
851
847
  readonly closing: _angular_core.OutputEmitterRef<void>;
852
848
  readonly opening: _angular_core.OutputEmitterRef<string>;
853
- private unsubscribe;
849
+ private readonly destroyRef;
854
850
  private injector;
855
851
  private changeDetector;
856
852
  private breakpointObserver;
@@ -1042,15 +1038,15 @@ declare class ClipperDocumentIndexComponent implements OnInit {
1042
1038
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ClipperDocumentIndexComponent, "ng-component", never, {}, { "done": "done"; }, never, never, true, never>;
1043
1039
  }
1044
1040
 
1045
- declare class ClipperDocumentMenuComponent implements OnInit, OnDestroy {
1041
+ declare class ClipperDocumentMenuComponent implements OnInit {
1046
1042
  private rsMenuTrigger;
1047
1043
  private aiAssistantMenuTrigger;
1048
1044
  private linksMenuTrigger;
1049
1045
  private allMenuTriggers;
1050
- private renderer2;
1051
- private unsubscribe;
1052
- private changeDetector;
1053
- private clipperService;
1046
+ private readonly renderer2;
1047
+ private readonly destroyRef;
1048
+ private readonly changeDetector;
1049
+ private readonly clipperService;
1054
1050
  readonly useSelections: _angular_core.InputSignal<boolean>;
1055
1051
  readonly selectionSource: _angular_core.InputSignal<"selection" | "bag" | "none">;
1056
1052
  protected selection: () => ClipperDocumentInfo[];
@@ -1081,7 +1077,6 @@ declare class ClipperDocumentMenuComponent implements OnInit, OnDestroy {
1081
1077
  protected canSetAsUnread: () => boolean;
1082
1078
  protected canAccessRS: () => boolean;
1083
1079
  ngOnInit(): void;
1084
- ngOnDestroy(): void;
1085
1080
  /**
1086
1081
  * Get a single selection
1087
1082
  * @returns the single selection or null
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arsedizioni-ars-utils-clipper.ui.d.ts","sources":["../../../projects/ars-utils/clipper.ui/ui/document-manager/document-manager.ts","../../../projects/ars-utils/clipper.ui/ui/search-calendar/search-calendar.component.ts","../../../projects/ars-utils/clipper.ui/ui/search-facets/search-facets.component.ts","../../../projects/ars-utils/clipper.ui/ui/search-result-manager/search-result-manager.ts","../../../projects/ars-utils/clipper.ui/ui/references/references.component.ts","../../../projects/ars-utils/clipper.ui/ui/browser/browser.component.ts","../../../projects/ars-utils/clipper.ui/ui/browser/browser-dialog/browser-dialog.component.ts","../../../projects/ars-utils/clipper.ui/ui/search-free-text-help/search-free-text-help.component.ts","../../../projects/ars-utils/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.ts","../../../projects/ars-utils/clipper.ui/ui/search-result-item/search-result-item.component.ts","../../../projects/ars-utils/clipper.ui/ui/document/document.component.ts","../../../projects/ars-utils/clipper.ui/ui/document-index/document-index.component.ts","../../../projects/ars-utils/clipper.ui/ui/document-menu/document-menu.component.ts","../../../projects/ars-utils/clipper.ui/documents.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}