@arsedizioni/ars-utils 18.2.378 → 18.2.380
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/clipper.ui/ui/document/document.component.d.ts +3 -3
- package/clipper.ui/ui/document-index/document-index.component.d.ts +2 -2
- package/clipper.ui/ui/document-menu/document-menu.component.d.ts +1 -1
- package/clipper.ui/ui/search-calendar/search-calendar.component.d.ts +2 -1
- package/clipper.ui/ui/search-dialog/search-dialog.component.d.ts +2 -2
- package/clipper.ui/ui/search-facets/search-facets.component.d.ts +2 -1
- package/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.d.ts +2 -1
- package/esm2022/clipper.ui/ui/document/document.component.mjs +11 -7
- package/esm2022/clipper.ui/ui/document-index/document-index.component.mjs +5 -3
- package/esm2022/clipper.ui/ui/search-calendar/search-calendar.component.mjs +5 -3
- package/esm2022/clipper.ui/ui/search-dialog/search-dialog.component.mjs +5 -3
- package/esm2022/clipper.ui/ui/search-facets/search-facets.component.mjs +6 -4
- package/esm2022/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.mjs +6 -4
- package/esm2022/tinymce/full-screen-editor/full-screen-editor.component.mjs +6 -4
- package/esm2022/ui/ui/dialogs/confirm/confirm-dialog.component.mjs +6 -4
- package/esm2022/ui/ui/dialogs/credentials/credentials-dialog.component.mjs +9 -5
- package/esm2022/ui/ui/dialogs/recover-password/recover-password-dialog.component.mjs +6 -4
- package/esm2022/ui/ui/dialogs/reset-password/reset-password-dialog.component.mjs +6 -4
- package/esm2022/ui/ui/dialogs/toast/toast.component.mjs +6 -4
- package/esm2022/ui.application/ui/components/button-selector/button-selector.component.mjs +9 -5
- package/esm2022/ui.application/ui/components/button-toggle/button-toggle.component.mjs +6 -4
- package/esm2022/ui.application/ui/components/chips-selector/chips-selector.component.mjs +6 -4
- package/esm2022/ui.application/ui/components/file-input/file-input.component.mjs +7 -7
- package/esm2022/ui.application/ui/components/filter-bar/filter-bar.component.mjs +6 -4
- package/esm2022/ui.application/ui/dialogs/prompt/prompt-dialog.component.mjs +5 -3
- package/esm2022/ui.application/ui/dialogs/prompt-date/prompt-date-dialog.component.mjs +5 -3
- package/esm2022/ui.application/ui/dialogs/prompt-time/prompt-time-dialog.component.mjs +5 -3
- package/esm2022/ui.application/ui/dialogs/select/select-dialog.component.mjs +26 -10
- package/esm2022/ui.application/ui/dialogs/select-file/select-file-dialog.component.mjs +6 -4
- package/esm2022/ui.application/ui/dialogs/select-picture/select-picture-dialog.component.mjs +6 -4
- package/esm2022/ui.application/ui/dialogs/select-tree/select-tree-dialog.component.mjs +6 -4
- package/esm2022/ui.application/ui/dialogs/send-to/send-to-dialog.component.mjs +9 -5
- package/esm2022/ui.oauth/ui/components/login/login-oauth.component.mjs +6 -4
- package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs +1377 -1363
- package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-tinymce.mjs +5 -3
- package/fesm2022/arsedizioni-ars-utils-tinymce.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs +77 -35
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.mjs +24 -12
- package/fesm2022/arsedizioni-ars-utils-ui.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs +5 -3
- package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs.map +1 -1
- package/package.json +7 -7
- package/tinymce/full-screen-editor/full-screen-editor.component.d.ts +2 -2
- package/ui/ui/dialogs/confirm/confirm-dialog.component.d.ts +2 -2
- package/ui/ui/dialogs/credentials/credentials-dialog.component.d.ts +3 -3
- package/ui/ui/dialogs/recover-password/recover-password-dialog.component.d.ts +2 -1
- package/ui/ui/dialogs/reset-password/reset-password-dialog.component.d.ts +2 -2
- package/ui/ui/dialogs/toast/toast.component.d.ts +2 -1
- package/ui.application/ui/components/button-selector/button-selector.component.d.ts +3 -3
- package/ui.application/ui/components/button-toggle/button-toggle.component.d.ts +2 -2
- package/ui.application/ui/components/chips-selector/chips-selector.component.d.ts +3 -3
- package/ui.application/ui/components/file-input/file-input.component.d.ts +5 -5
- package/ui.application/ui/components/filter-bar/filter-bar.component.d.ts +2 -2
- package/ui.application/ui/dialogs/prompt/prompt-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/prompt-date/prompt-date-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/prompt-time/prompt-time-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/select/select-dialog.component.d.ts +9 -9
- package/ui.application/ui/dialogs/select-file/select-file-dialog.component.d.ts +2 -1
- package/ui.application/ui/dialogs/select-picture/select-picture-dialog.component.d.ts +2 -1
- package/ui.application/ui/dialogs/select-tree/select-tree-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/send-to/send-to-dialog.component.d.ts +3 -3
- package/ui.oauth/ui/components/login/login-oauth.component.d.ts +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, Component, ChangeDetectionStrategy,
|
|
2
|
+
import { Injectable, Component, ChangeDetectionStrategy, EventEmitter, inject, Output, NgModule } from '@angular/core';
|
|
3
3
|
import { SystemUtils, SafeHtmlPipe, ArsCoreModule, PasswordValidatorDirective, EqualsValidatorDirective } from '@arsedizioni/ars-utils/core';
|
|
4
4
|
import { MatPaginatorIntl } from '@angular/material/paginator';
|
|
5
5
|
import { Overlay } from '@angular/cdk/overlay';
|
|
@@ -96,7 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
|
|
|
96
96
|
|
|
97
97
|
class ConfirmDialogComponent {
|
|
98
98
|
constructor() {
|
|
99
|
-
this.choosen =
|
|
99
|
+
this.choosen = new EventEmitter();
|
|
100
100
|
this.dialogRef = inject((MatDialogRef));
|
|
101
101
|
this.dialogData = inject(MAT_DIALOG_DATA) || { title: 'Conferma', okCaption: 'Si', cancelCaption: 'No' };
|
|
102
102
|
}
|
|
@@ -147,7 +147,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
|
|
|
147
147
|
type: Component,
|
|
148
148
|
args: [{ host: { 'Bind': SystemUtils.generateUUID() }, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatDialogTitle, MatDialogContent, FlexModule, MatCheckboxModule, FormsModule, MatDialogActions, MatButtonModule,
|
|
149
149
|
MatDialogClose, SafeHtmlPipe], template: "<h2 mat-dialog-title>{{dialogData.title}}</h2>\r\n<div mat-dialog-content>\r\n <div fxLayout=\"column\" fxLayoutGap=\"32px\" fxFill>\r\n <div fxFlex=\"*\" fxLayout=\"column\" fxFill>\r\n @if (dialogData.message) {\r\n <div [innerHtml]=\"dialogData.message | safeHtml\"></div>\r\n }\r\n </div>\r\n @if (dialogData.options) {\r\n <div>\r\n @for (o of dialogData.options; track $index; let i = $index) {\r\n <div>\r\n <mat-checkbox color=\"primary\" [(ngModel)]=\"o.value\" name=\"opt_{{i}}\">\r\n {{o.description}}\r\n </mat-checkbox>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n<div mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxFill>\r\n <div fxFlex=\"30\">\r\n @if (dialogData.otherCaption) {\r\n <button mat-flat-button color='primary' (click)=\"other()\" cdkFocusInitial\r\n [mat-dialog-close]=\"true\">{{dialogData.otherCaption}}</button>\r\n }\r\n </div>\r\n <div fxFlex=\"70\" fxLayoutAlign=\"end\">\r\n <button mat-flat-button color='primary' (click)=\"ok()\" cdkFocusInitial\r\n [mat-dialog-close]=\"true\">{{dialogData.okCaption}}</button>\r\n <button mat-button color=\"primary\" (click)=\"cancel()\"\r\n >{{dialogData.cancelCaption}}</button>\r\n </div>\r\n </div>\r\n</div>", styles: [".dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-header{padding-bottom:20px}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.center{text-align:center}.wide{min-width:100%!important;max-width:100%!important;width:100%!important}.fill{min-width:100%!important;max-width:100%!important;width:100%!important;min-height:100%!important;max-height:100%!important;height:100%!important}.scroll-auto{overflow:auto;height:100%}.scroll-hidden{overflow:hidden;height:100%}b{font-weight:700}.large{font-size:large!important}.smaller{font-size:smaller}.small{font-size:small!important;line-height:16px}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important;line-height:14px}.bold{font-weight:700}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0;max-width:100%}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clipped{min-width:0;max-width:100%}.clipped span,.clipped div{white-space:nowrap;overflow:hidden;text-overflow:clip}.accent{color:var(--ars-color-accent, #7894ae)!important}.primary{color:var(--ars-color-primary, #00a293)!important}.secondary{color:var(--ars-color-secondary, #4a635f)!important}.error{color:var(--ars-color-error, #ff5449)!important}.warning{color:var(--ars-color-warning, #FFC107)!important}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;background-color:var(--ars-color-overlay, rgba(255, 255, 255, .75))}.drawer-content{padding-top:10px}.drawer,.drawer-small{min-width:420px!important;max-width:420px!important;padding:20px 0 0}.drawer .title-container,.drawer-small .title-container{padding:20px 10px}.drawer .title-container-with-loader,.drawer-small .title-container-with-loader{padding:14px 10px 20px}.drawer .title,.drawer-small .title{font-size:1.2em;font-weight:600;padding-left:10px;min-width:200px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer .accordion-panel,.drawer-small .accordion-panel{background-color:transparent!important}.drawer .accordion-header,.drawer-small .accordion-header{padding-left:15px;padding-right:20px;border-radius:var(--mat-expansion-container-shape)}.drawer .mat-expansion-panel-body,.drawer-small .mat-expansion-panel-body{padding-bottom:20px!important}.drawer-with-loader{padding-top:0!important}.drawer-transparent{background-color:transparent}.drawer-small{min-width:360px!important;max-width:360px!important}.drawer-small .title{min-width:150px;width:100%}@media screen and (min-width: 0px) and (max-width: 359px){.drawer{min-width:360px!important;max-width:360px!important}.drawer .title{min-width:150px}}.fade-in{animation:fadein .5s linear}@keyframes fadein{0%{opacity:0}to{opacity:1}}@media (prefers-color-scheme: dark){.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"] }]
|
|
150
|
-
}]
|
|
150
|
+
}], propDecorators: { choosen: [{
|
|
151
|
+
type: Output
|
|
152
|
+
}] } });
|
|
151
153
|
/**
|
|
152
154
|
* Display a confirm dialog
|
|
153
155
|
* @param message : html message
|
|
@@ -214,7 +216,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
|
|
|
214
216
|
|
|
215
217
|
class ToastComponent {
|
|
216
218
|
constructor() {
|
|
217
|
-
this.action =
|
|
219
|
+
this.action = new EventEmitter();
|
|
218
220
|
this.dialogData = inject(MAT_SNACK_BAR_DATA) || {};
|
|
219
221
|
}
|
|
220
222
|
/**
|
|
@@ -229,7 +231,9 @@ class ToastComponent {
|
|
|
229
231
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: ToastComponent, decorators: [{
|
|
230
232
|
type: Component,
|
|
231
233
|
args: [{ host: { 'Bind': SystemUtils.generateUUID() }, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [FlexModule, MatIconModule, MatButtonModule, SafeHtmlPipe], template: "<div fxLayout=\"row\" fxLayoutGap=\"10px\">\r\n @if (dialogData.icon) {\r\n<div fxFlex='30px' fxLayoutAlign=\"start\" fxFlexAlign=\"center\">\r\n <mat-icon>{{dialogData.icon}}</mat-icon>\r\n </div>\r\n}\r\n <div fxFlex='100%' fxLayoutAlign=\"start\" fxFlexAlign=\"center\">\r\n @if (dialogData.message) {\r\n<span [innerHTML]=\"dialogData.message | safeHtml\"></span>\r\n}\r\n </div>\r\n @if (dialogData.actionCaption) {\r\n<div fxLayoutAlign=\"end\" fxFlexAlign=\"center\">\r\n <button type=\"button\" mat-button color='accent' (click)=\"do()\" cdkFocusInitial [innerHTML]=\"dialogData.actionCaption\"></button>\r\n </div>\r\n}\r\n</div>\r\n" }]
|
|
232
|
-
}]
|
|
234
|
+
}], propDecorators: { action: [{
|
|
235
|
+
type: Output
|
|
236
|
+
}] } });
|
|
233
237
|
|
|
234
238
|
class UIService {
|
|
235
239
|
constructor() {
|
|
@@ -656,8 +660,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
|
|
|
656
660
|
|
|
657
661
|
class CredentialsDialogComponent {
|
|
658
662
|
constructor() {
|
|
659
|
-
this.done =
|
|
660
|
-
this.recoveringPassword =
|
|
663
|
+
this.done = new EventEmitter();
|
|
664
|
+
this.recoveringPassword = new EventEmitter();
|
|
661
665
|
this.dialogData = inject(MAT_DIALOG_DATA) || { mode: 1, appearance: 'fill', title: 'Credenziali', okCaption: 'Salva' };
|
|
662
666
|
this.item = {
|
|
663
667
|
user: null,
|
|
@@ -717,11 +721,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
|
|
|
717
721
|
MatDialogClose,
|
|
718
722
|
SafeHtmlPipe,
|
|
719
723
|
], template: "<div class=\"dialog-info\">\r\n @if (f.form.invalid) {\r\n <span class=\"dialog-info-error\">Ci sono ancora dei campi obbligatori (*) non compilati.</span>\r\n }\r\n @if (!f.form.invalid) {\r\n <span class=\"dialog-info-ok\">Tutti i campi obbligatori (*) sono compilati.</span>\r\n }\r\n</div>\r\n<h2 mat-dialog-title>{{dialogData.title}}</h2>\r\n<div mat-dialog-content>\r\n @if (dialogData.message) {\r\n <div [innerHtml]=\"dialogData.message | safeHtml\" style=\"padding-bottom: 20px;\"></div>\r\n }\r\n <form name=\"form\" #f=\"ngForm\" novalidate>\r\n @if (dialogData.mode === 1) {\r\n <mat-form-field style=\"width: 100%;\" [appearance]=\"dialogData.appearance\">\r\n <mat-label>Email</mat-label>\r\n <input type=\"email\" matInput [(ngModel)]=\"item.user\" name=\"email\" #email=\"ngModel\" email required\r\n [attr.aria-label]=\"'Email'\">\r\n @if (email.invalid) {\r\n <mat-error>Email non valida.</mat-error>\r\n }\r\n </mat-form-field>\r\n }\r\n @if (dialogData.mode === 2) {\r\n <mat-form-field style=\"width: 100%;\" [appearance]=\"dialogData.appearance\">\r\n <mat-label>Utente</mat-label>\r\n <input matInput [(ngModel)]=\"item.user\" name=\"user\" #user=\"ngModel\" required [attr.aria-label]=\"'user'\">\r\n @if (user.invalid) {\r\n <mat-error>Obbligatorio.</mat-error>\r\n }\r\n </mat-form-field>\r\n }\r\n <mat-form-field style=\"width: 100%;\" [appearance]=\"dialogData.appearance\">\r\n <mat-label>La tua password abilitata</mat-label>\r\n <input matInput name=\"password\" #password=\"ngModel\" type=\"password\" [(ngModel)]=\"item.password\" required\r\n [attr.aria-label]=\"'La tua password abilitata'\" autocomplete=\"on\">\r\n <mat-hint>Attento a maiuscole e minuscole</mat-hint>\r\n @if (password.invalid) {\r\n <mat-error>Password non valida.</mat-error>\r\n }\r\n </mat-form-field>\r\n @if (dialogData.remember || dialogData.recoverPassword) {\r\n <div fxLayout=\"row\" fxLayoutGap=\"20px\" fxFill style=\"margin-top: 20px;\">\r\n <div >\r\n @if (dialogData.remember) {\r\n <mat-checkbox fxFlexAlign=\"center\" [(ngModel)]=\"item.rememberMe\" name=\"rememberMe\" color=\"primary\"> Ricordami</mat-checkbox>\r\n }\r\n </div>\r\n <div fxLayoutAlign=\"end\">\r\n @if (dialogData.recoverPassword) {\r\n <button fxFlexAlign=\"center\" mat-button (click)=\"recoverPassword()\" \r\n title=\"Recupero password\" color=\"primary\">Non riesco ad accedere</button>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </form>\r\n</div>\r\n<div mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutAlign=\"end\" fxFill>\r\n <button mat-flat-button color=\"primary\" [disabled]=\"f.form.invalid\" \r\n (click)=\"ok()\">{{dialogData.okCaption}}</button>\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"primary\">Annulla</button>\r\n </div>\r\n</div>", styles: [".dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-header{padding-bottom:20px}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.center{text-align:center}.wide{min-width:100%!important;max-width:100%!important;width:100%!important}.fill{min-width:100%!important;max-width:100%!important;width:100%!important;min-height:100%!important;max-height:100%!important;height:100%!important}.scroll-auto{overflow:auto;height:100%}.scroll-hidden{overflow:hidden;height:100%}b{font-weight:700}.large{font-size:large!important}.smaller{font-size:smaller}.small{font-size:small!important;line-height:16px}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important;line-height:14px}.bold{font-weight:700}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0;max-width:100%}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clipped{min-width:0;max-width:100%}.clipped span,.clipped div{white-space:nowrap;overflow:hidden;text-overflow:clip}.accent{color:var(--ars-color-accent, #7894ae)!important}.primary{color:var(--ars-color-primary, #00a293)!important}.secondary{color:var(--ars-color-secondary, #4a635f)!important}.error{color:var(--ars-color-error, #ff5449)!important}.warning{color:var(--ars-color-warning, #FFC107)!important}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;background-color:var(--ars-color-overlay, rgba(255, 255, 255, .75))}.drawer-content{padding-top:10px}.drawer,.drawer-small{min-width:420px!important;max-width:420px!important;padding:20px 0 0}.drawer .title-container,.drawer-small .title-container{padding:20px 10px}.drawer .title-container-with-loader,.drawer-small .title-container-with-loader{padding:14px 10px 20px}.drawer .title,.drawer-small .title{font-size:1.2em;font-weight:600;padding-left:10px;min-width:200px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer .accordion-panel,.drawer-small .accordion-panel{background-color:transparent!important}.drawer .accordion-header,.drawer-small .accordion-header{padding-left:15px;padding-right:20px;border-radius:var(--mat-expansion-container-shape)}.drawer .mat-expansion-panel-body,.drawer-small .mat-expansion-panel-body{padding-bottom:20px!important}.drawer-with-loader{padding-top:0!important}.drawer-transparent{background-color:transparent}.drawer-small{min-width:360px!important;max-width:360px!important}.drawer-small .title{min-width:150px;width:100%}@media screen and (min-width: 0px) and (max-width: 359px){.drawer{min-width:360px!important;max-width:360px!important}.drawer .title{min-width:150px}}.fade-in{animation:fadein .5s linear}@keyframes fadein{0%{opacity:0}to{opacity:1}}@media (prefers-color-scheme: dark){.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"] }]
|
|
720
|
-
}]
|
|
724
|
+
}], propDecorators: { done: [{
|
|
725
|
+
type: Output
|
|
726
|
+
}], recoveringPassword: [{
|
|
727
|
+
type: Output
|
|
728
|
+
}] } });
|
|
721
729
|
|
|
722
730
|
class RecoverPasswordDialogComponent {
|
|
723
731
|
constructor() {
|
|
724
|
-
this.done =
|
|
732
|
+
this.done = new EventEmitter();
|
|
725
733
|
this.dialogData = inject(MAT_DIALOG_DATA) || { appearance: 'fill' };
|
|
726
734
|
this.item = {
|
|
727
735
|
email: "",
|
|
@@ -750,11 +758,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
|
|
|
750
758
|
FlexModule,
|
|
751
759
|
MatDialogClose,
|
|
752
760
|
], template: "<div class=\"dialog-info\">\r\n @if (f.form.invalid) {\r\n <span class=\"dialog-info-error\">Ci sono ancora dei campi obbligatori (*) non compilati.</span>\r\n }\r\n @if (!f.form.invalid) {\r\n <span class=\"dialog-info-ok\">Tutti i campi obbligatori (*) sono compilati.</span>\r\n }\r\n</div>\r\n<h2 mat-dialog-title>Per quale ragione non sei in grado di effettuare l'accesso?</h2>\r\n<div mat-dialog-content>\r\n\r\n <b>1. Ho dimenticato la password</b>\r\n <p>\r\n Puoi recuperarla facilmente inserendo l'email a cui la password \u00E8 collegata. Non \u00E8 possibile recuperare password\r\n aziendali (non collegate ad un email).</p>\r\n <form name=\"form\" #f=\"ngForm\" (keyup.Enter)=\"!f.form.invalid ? ok() : null\" novalidate>\r\n\r\n <mat-form-field style=\"width:100%\" [appearance]=\"dialogData.appearance\">\r\n <mat-label>Email con cui ti sei registrato</mat-label>\r\n <input type=\"email\" matInput name=\"email\" #email=\"ngModel\" [(ngModel)]=\"item.email\" required email\r\n maxlength=\"200\" />\r\n @if (email.invalid) {\r\n <mat-error>Email non valida.</mat-error>\r\n }\r\n </mat-form-field>\r\n\r\n <div style=\"margin-top:20px; margin-bottom:20px;\">\r\n <button type=\"button\" mat-flat-button (click)=\"ok()\" color=\"primary\" [disabled]=\"f.form.invalid\"\r\n aria-label=\"Recupera password\">Recupera password</button>\r\n </div>\r\n </form>\r\n <p></p>\r\n <b>2. Il sistema mi dice che la password non \u00E8 corretta.</b>\r\n <p>\r\n E' molto probabile che ci sia stato un difetto di digitazione. Per favore controlla bene che non vi siano spazi non\r\n richiesti e che la password rispetti perfettamente le maiuscole e minuscole. Nel caso in cui la digitazione fosse\r\n corretta, verifica che la data del tuo abbonamento non sia scaduta.\r\n </p>\r\n <p></p>\r\n <b>3. Il sistema mi dice che non pu\u00F2 accettare connessioni dal mio indirizzo IP</b>\r\n <p>\r\n Il tuo abbonamento \u00E8 stato vincolato ad un indirizzo IP (indirizzo dal quale ti colleghi). Capita sovente che\r\n questi indirizzi siano cambiati da parte del reparto IT per questioni di sicurezza informatica.\r\n Per risolvere il problema, contattate il reparto IT e fatevi dire qual'\u00E8 il nuovo indirizzo IP e comunicatelo ad\r\n ARS Edizioni Informatiche.\r\n </p>\r\n</div>\r\n<div mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutAlign=\"end\" fxFill>\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"primary\">Chiudi</button>\r\n </div>\r\n</div>", styles: [".dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-header{padding-bottom:20px}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.center{text-align:center}.wide{min-width:100%!important;max-width:100%!important;width:100%!important}.fill{min-width:100%!important;max-width:100%!important;width:100%!important;min-height:100%!important;max-height:100%!important;height:100%!important}.scroll-auto{overflow:auto;height:100%}.scroll-hidden{overflow:hidden;height:100%}b{font-weight:700}.large{font-size:large!important}.smaller{font-size:smaller}.small{font-size:small!important;line-height:16px}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important;line-height:14px}.bold{font-weight:700}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0;max-width:100%}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clipped{min-width:0;max-width:100%}.clipped span,.clipped div{white-space:nowrap;overflow:hidden;text-overflow:clip}.accent{color:var(--ars-color-accent, #7894ae)!important}.primary{color:var(--ars-color-primary, #00a293)!important}.secondary{color:var(--ars-color-secondary, #4a635f)!important}.error{color:var(--ars-color-error, #ff5449)!important}.warning{color:var(--ars-color-warning, #FFC107)!important}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;background-color:var(--ars-color-overlay, rgba(255, 255, 255, .75))}.drawer-content{padding-top:10px}.drawer,.drawer-small{min-width:420px!important;max-width:420px!important;padding:20px 0 0}.drawer .title-container,.drawer-small .title-container{padding:20px 10px}.drawer .title-container-with-loader,.drawer-small .title-container-with-loader{padding:14px 10px 20px}.drawer .title,.drawer-small .title{font-size:1.2em;font-weight:600;padding-left:10px;min-width:200px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer .accordion-panel,.drawer-small .accordion-panel{background-color:transparent!important}.drawer .accordion-header,.drawer-small .accordion-header{padding-left:15px;padding-right:20px;border-radius:var(--mat-expansion-container-shape)}.drawer .mat-expansion-panel-body,.drawer-small .mat-expansion-panel-body{padding-bottom:20px!important}.drawer-with-loader{padding-top:0!important}.drawer-transparent{background-color:transparent}.drawer-small{min-width:360px!important;max-width:360px!important}.drawer-small .title{min-width:150px;width:100%}@media screen and (min-width: 0px) and (max-width: 359px){.drawer{min-width:360px!important;max-width:360px!important}.drawer .title{min-width:150px}}.fade-in{animation:fadein .5s linear}@keyframes fadein{0%{opacity:0}to{opacity:1}}@media (prefers-color-scheme: dark){.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"] }]
|
|
753
|
-
}]
|
|
761
|
+
}], propDecorators: { done: [{
|
|
762
|
+
type: Output
|
|
763
|
+
}] } });
|
|
754
764
|
|
|
755
765
|
class ResetPasswordDialogComponent {
|
|
756
766
|
constructor() {
|
|
757
|
-
this.done =
|
|
767
|
+
this.done = new EventEmitter();
|
|
758
768
|
this.dialogService = inject(DialogService);
|
|
759
769
|
this.dialogRef = inject((MatDialogRef));
|
|
760
770
|
this.dialogData = inject(MAT_DIALOG_DATA) || { mode: 1, appearance: 'fill' };
|
|
@@ -822,7 +832,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
|
|
|
822
832
|
MatButtonModule,
|
|
823
833
|
MatDialogClose,
|
|
824
834
|
], template: "<div class=\"dialog-info\">\r\n @if (f.form.invalid) {\r\n <span class=\"dialog-info-error\">Ci sono ancora dei campi obbligatori (*) non compilati.</span>\r\n }\r\n @if (!f.form.invalid) {\r\n <span class=\"dialog-info-ok\">Tutti i campi obbligatori (*) sono compilati.</span>\r\n }\r\n</div>\r\n<h2 mat-dialog-title>Reimposta password</h2>\r\n<div mat-dialog-content>\r\n <form name=\"form\" #f=\"ngForm\" novalidate>\r\n <div fxLayout=\"column\">\r\n @if (dialogData.mode === 3) {\r\n <mat-form-field style=\"width: 100%;\" [appearance]=\"dialogData.appearance\">\r\n <mat-label>Email che hai scelto quando ti sei registrato</mat-label>\r\n <input type=\"email\" matInput [(ngModel)]=\"item.userEmail\" name=\"userEmail\" #userEmail=\"ngModel\" email required\r\n [attr.aria-label]=\"'Email con cui ti sei registrato'\">\r\n @if (userEmail.invalid) {\r\n <mat-error>Email non valida.</mat-error>\r\n }\r\n </mat-form-field>\r\n }\r\n @if (dialogData.mode > 1) {\r\n <mat-form-field style=\"width: 100%;\" [appearance]=\"dialogData.appearance\">\r\n <mat-label>Vecchia password</mat-label>\r\n <input type=\"password\" matInput name=\"oldPwd\" autocomplete=\"on\" [(ngModel)]=\"item.oldPassword\"\r\n [required]=\"dialogData.mode > 1\" maxlength=\"30\" #oldPwd=\"ngModel\">\r\n @if (oldPwd.invalid) {\r\n <mat-error>Non valido.</mat-error>\r\n }\r\n </mat-form-field>\r\n }\r\n <mat-form-field style=\"width: 100%; \" hintLabel=\"Minimo 8 car. con 1 simbolo e 1 maiuscola\"\r\n [appearance]=\"dialogData.appearance\">\r\n <mat-label>Nuova password</mat-label>\r\n <input type=\"password\" matInput name=\"newPwd\" [(ngModel)]=\"item.password\" required password minlength=\"8\"\r\n maxlength=\"30\" #newPwd=\"ngModel\">\r\n <mat-hint align=\"end\">{{newPwd.value?.length || 0}}/30</mat-hint>\r\n @if (newPwd.invalid) {\r\n <mat-error>Non valido.</mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field style=\"width: 100%;\" hintLabel=\"Minimo 8 car. con 1 simbolo e 1 maiuscola\"\r\n [appearance]=\"dialogData.appearance\">\r\n <mat-label>Conferma nuova password</mat-label>\r\n <input type=\"password\" matInput name=\"newPwd2\" [(ngModel)]=\"item.password2\" [required]=\"dialogData.mode > 1\"\r\n password minlength=\"8\" maxlength=\"30\" [equals]=\"newPwd\" #newPwd2=\"ngModel\">\r\n <mat-hint align=\"end\">{{newPwd2.value?.length || 0}}/30</mat-hint>\r\n @if (newPwd2.invalid) {\r\n <mat-error>Non valido.</mat-error>\r\n }\r\n </mat-form-field>\r\n </div>\r\n </form>\r\n</div>\r\n<div mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxFill>\r\n <div fxFlex=\"30\">\r\n @if (dialogData.mode === 1) {\r\n <button mat-button color=\"primary\" (click)=\"generatePassword()\">Genera</button>\r\n }\r\n </div>\r\n <div fxFlex=\"70\" fxLayoutAlign=\"end\">\r\n <button mat-flat-button color=\"primary\" [disabled]=\"f.form.invalid\" (click)=\"ok()\">Salva</button>\r\n @if (dialogData.mode !== 3) {\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"primary\">Annulla</button>\r\n }\r\n </div>\r\n </div>\r\n</div>", styles: [".dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-header{padding-bottom:20px}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.center{text-align:center}.wide{min-width:100%!important;max-width:100%!important;width:100%!important}.fill{min-width:100%!important;max-width:100%!important;width:100%!important;min-height:100%!important;max-height:100%!important;height:100%!important}.scroll-auto{overflow:auto;height:100%}.scroll-hidden{overflow:hidden;height:100%}b{font-weight:700}.large{font-size:large!important}.smaller{font-size:smaller}.small{font-size:small!important;line-height:16px}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important;line-height:14px}.bold{font-weight:700}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0;max-width:100%}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clipped{min-width:0;max-width:100%}.clipped span,.clipped div{white-space:nowrap;overflow:hidden;text-overflow:clip}.accent{color:var(--ars-color-accent, #7894ae)!important}.primary{color:var(--ars-color-primary, #00a293)!important}.secondary{color:var(--ars-color-secondary, #4a635f)!important}.error{color:var(--ars-color-error, #ff5449)!important}.warning{color:var(--ars-color-warning, #FFC107)!important}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;background-color:var(--ars-color-overlay, rgba(255, 255, 255, .75))}.drawer-content{padding-top:10px}.drawer,.drawer-small{min-width:420px!important;max-width:420px!important;padding:20px 0 0}.drawer .title-container,.drawer-small .title-container{padding:20px 10px}.drawer .title-container-with-loader,.drawer-small .title-container-with-loader{padding:14px 10px 20px}.drawer .title,.drawer-small .title{font-size:1.2em;font-weight:600;padding-left:10px;min-width:200px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer .accordion-panel,.drawer-small .accordion-panel{background-color:transparent!important}.drawer .accordion-header,.drawer-small .accordion-header{padding-left:15px;padding-right:20px;border-radius:var(--mat-expansion-container-shape)}.drawer .mat-expansion-panel-body,.drawer-small .mat-expansion-panel-body{padding-bottom:20px!important}.drawer-with-loader{padding-top:0!important}.drawer-transparent{background-color:transparent}.drawer-small{min-width:360px!important;max-width:360px!important}.drawer-small .title{min-width:150px;width:100%}@media screen and (min-width: 0px) and (max-width: 359px){.drawer{min-width:360px!important;max-width:360px!important}.drawer .title{min-width:150px}}.fade-in{animation:fadein .5s linear}@keyframes fadein{0%{opacity:0}to{opacity:1}}@media (prefers-color-scheme: dark){.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"] }]
|
|
825
|
-
}]
|
|
835
|
+
}], propDecorators: { done: [{
|
|
836
|
+
type: Output
|
|
837
|
+
}] } });
|
|
826
838
|
|
|
827
839
|
/*
|
|
828
840
|
* Public API Surface of ars-utils
|