design-angular-kit 1.0.0-21 → 1.0.0-22

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.
@@ -1,16 +1,16 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, NgModule, inject, Renderer2, ElementRef, ChangeDetectorRef, EventEmitter, Component, Input, Output, ChangeDetectionStrategy, ViewChild, Inject, Directive, HostBinding, Optional, Host, ContentChildren, HostListener, TemplateRef, Injectable, Self, Pipe, ViewChildren } from '@angular/core';
2
+ import { InjectionToken, NgModule, inject, Renderer2, ElementRef, ChangeDetectorRef, EventEmitter, Component, Input, Output, ChangeDetectionStrategy, ViewChild, Inject, ContentChildren, TemplateRef, Directive, HostBinding, Optional, Host, HostListener, Injectable, Self, Pipe, ViewChildren } from '@angular/core';
3
3
  import * as i1 from '@ngx-translate/core';
4
4
  import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
5
5
  import { HttpClientModule, HttpClient } from '@angular/common/http';
6
6
  import { TranslateHttpLoader } from '@ngx-translate/http-loader';
7
- import { Collapse, Alert, CarouselBI, Dropdown, Modal, Notification, Popover, Tab, Tooltip, InputPassword, ProgressDonut, BackToTop } from 'bootstrap-italia';
7
+ import { Collapse, Alert, Dropdown, CarouselBI, Modal, Notification, Popover, Tab, Tooltip, InputPassword, ProgressDonut, BackToTop } from 'bootstrap-italia';
8
8
  import * as i1$3 from '@angular/common';
9
9
  import { NgIf, NgTemplateOutlet, NgForOf, NgClass, AsyncPipe, LowerCasePipe, CommonModule, NgOptimizedImage, NgFor, DOCUMENT } from '@angular/common';
10
- import { startWith, Subject, filter, Observable, of, debounceTime, distinctUntilChanged, switchMap, map, tap, take, forkJoin } from 'rxjs';
11
- import { trigger, transition, style, animate } from '@angular/animations';
12
10
  import * as i1$4 from '@angular/router';
13
11
  import { RouterLink } from '@angular/router';
12
+ import { startWith, Subject, filter, Observable, of, debounceTime, distinctUntilChanged, switchMap, map, tap, take, forkJoin } from 'rxjs';
13
+ import { trigger, transition, style, animate } from '@angular/animations';
14
14
  import * as i1$1 from '@angular/forms';
15
15
  import { FormControl, Validators, ReactiveFormsModule } from '@angular/forms';
16
16
  import * as i1$2 from '@angular/platform-browser';
@@ -394,6 +394,409 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImpor
394
394
  args: ['alertElement']
395
395
  }] } });
396
396
 
397
+ class ItLinkComponent extends ItAbstractComponent {
398
+ constructor() {
399
+ super(...arguments);
400
+ /**
401
+ * Custom class
402
+ */
403
+ this.class = '';
404
+ }
405
+ get isExternalLink() {
406
+ return isTrueBooleanInput(this.externalLink);
407
+ }
408
+ get isDisabled() {
409
+ return isTrueBooleanInput(this.disabled);
410
+ }
411
+ ngAfterViewInit() {
412
+ super.ngAfterViewInit();
413
+ this._renderer.removeAttribute(this._elementRef.nativeElement, 'class');
414
+ }
415
+ ngOnChanges(changes) {
416
+ super.ngOnChanges(changes);
417
+ if (changes['class']) {
418
+ this._changeDetectorRef.markForCheck();
419
+ }
420
+ }
421
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItLinkComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
422
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItLinkComponent, isStandalone: true, selector: "it-link", inputs: { href: "href", externalLink: "externalLink", disabled: "disabled", class: "class" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<a *ngIf=\"!isExternalLink; else externalLink\" [id]=\"id\" [class]=\"class\" [routerLink]=\"(isDisabled ? null : href)!\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n</a>\n<ng-template #externalLink>\n <a [id]=\"id\" [class]=\"class\" [attr.href]=\"isDisabled ? null : href\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n </a>\n</ng-template>\n\n<ng-template #linkContent>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
423
+ }
424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItLinkComponent, decorators: [{
425
+ type: Component,
426
+ args: [{ standalone: true, selector: 'it-link', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, RouterLink, NgTemplateOutlet], template: "<a *ngIf=\"!isExternalLink; else externalLink\" [id]=\"id\" [class]=\"class\" [routerLink]=\"(isDisabled ? null : href)!\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n</a>\n<ng-template #externalLink>\n <a [id]=\"id\" [class]=\"class\" [attr.href]=\"isDisabled ? null : href\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n </a>\n</ng-template>\n\n<ng-template #linkContent>\n <ng-content></ng-content>\n</ng-template>\n" }]
427
+ }], propDecorators: { href: [{
428
+ type: Input
429
+ }], externalLink: [{
430
+ type: Input
431
+ }], disabled: [{
432
+ type: Input
433
+ }], class: [{
434
+ type: Input
435
+ }] } });
436
+
437
+ class ItDropdownItemComponent extends ItLinkComponent {
438
+ constructor() {
439
+ super(...arguments);
440
+ /**
441
+ * The icon position
442
+ * @default right
443
+ */
444
+ this.iconPosition = 'right';
445
+ /**
446
+ * Change icon color if menu is dark
447
+ * @default false
448
+ */
449
+ this.isDark = false;
450
+ }
451
+ get isDivider() {
452
+ return isTrueBooleanInput(this.divider);
453
+ }
454
+ get isActive() {
455
+ return isTrueBooleanInput(this.active);
456
+ }
457
+ get isLarge() {
458
+ return isTrueBooleanInput(this.large);
459
+ }
460
+ get linkClass() {
461
+ let linkClass = `list-item ${this.isActive ? 'active' : 'dropdown-item'}`;
462
+ if (this.isDisabled) {
463
+ linkClass += ' disabled';
464
+ }
465
+ if (this.isLarge) {
466
+ linkClass += ' large';
467
+ }
468
+ if (this.iconName) {
469
+ linkClass += ` ${this.iconPosition === 'right' ? 'right-icon' : 'left-icon'}`;
470
+ }
471
+ return linkClass;
472
+ }
473
+ setDark(dark) {
474
+ if (this.isDark !== dark) {
475
+ this.isDark = dark;
476
+ this._changeDetectorRef.detectChanges();
477
+ }
478
+ }
479
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
480
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItDropdownItemComponent, isStandalone: true, selector: "it-dropdown-item", inputs: { divider: "divider", active: "active", large: "large", iconName: "iconName", iconPosition: "iconPosition" }, usesInheritance: true, ngImport: i0, template: "<li>\n <span *ngIf=\"isDivider; else item\" class=\"divider\"></span>\n\n <ng-template #item>\n <it-link [class]=\"linkClass\" [id]=\"id\" [href]=\"href\" [externalLink]=\"externalLink\" [disabled]=\"disabled\">\n <it-icon *ngIf=\"iconName && iconPosition === 'left'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span><ng-content></ng-content></span>\n\n <it-icon *ngIf=\"iconName && iconPosition === 'right'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span *ngIf=\"isActive\" class=\"visually-hidden\">{{'it.core.active'|translate}}</span>\n </it-link>\n </ng-template>\n</li>\n", styles: [".list-item.disabled{pointer-events:none;cursor:default}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: ItLinkComponent, selector: "it-link", inputs: ["href", "externalLink", "disabled", "class"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
481
+ }
482
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownItemComponent, decorators: [{
483
+ type: Component,
484
+ args: [{ standalone: true, selector: 'it-dropdown-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, ItIconComponent, TranslateModule, ItLinkComponent], template: "<li>\n <span *ngIf=\"isDivider; else item\" class=\"divider\"></span>\n\n <ng-template #item>\n <it-link [class]=\"linkClass\" [id]=\"id\" [href]=\"href\" [externalLink]=\"externalLink\" [disabled]=\"disabled\">\n <it-icon *ngIf=\"iconName && iconPosition === 'left'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span><ng-content></ng-content></span>\n\n <it-icon *ngIf=\"iconName && iconPosition === 'right'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span *ngIf=\"isActive\" class=\"visually-hidden\">{{'it.core.active'|translate}}</span>\n </it-link>\n </ng-template>\n</li>\n", styles: [".list-item.disabled{pointer-events:none;cursor:default}\n"] }]
485
+ }], propDecorators: { divider: [{
486
+ type: Input
487
+ }], active: [{
488
+ type: Input
489
+ }], large: [{
490
+ type: Input
491
+ }], iconName: [{
492
+ type: Input
493
+ }], iconPosition: [{
494
+ type: Input
495
+ }] } });
496
+
497
+ class ItDropdownComponent extends ItAbstractComponent {
498
+ constructor() {
499
+ super(...arguments);
500
+ /**
501
+ * Dropdown mode
502
+ */
503
+ this.mode = 'button';
504
+ /**
505
+ * Fires immediately when the show instance method is called.
506
+ */
507
+ this.showEvent = new EventEmitter();
508
+ /**
509
+ * Fired when the dropdown has been made visible to the user and CSS transitions have completed.
510
+ */
511
+ this.shownEvent = new EventEmitter();
512
+ /**
513
+ * Fires immediately when the hide instance method has been called.
514
+ */
515
+ this.hideEvent = new EventEmitter();
516
+ /**
517
+ * Fired when the dropdown has finished being hidden from the user and CSS transitions have completed.
518
+ */
519
+ this.hiddenEvent = new EventEmitter();
520
+ }
521
+ get buttonClass() {
522
+ let btnClass = 'btn dropdown-toggle';
523
+ if (this.color) {
524
+ btnClass += ` btn-${this.color}`;
525
+ }
526
+ else {
527
+ btnClass += ` btn-dropdown`;
528
+ }
529
+ return btnClass;
530
+ }
531
+ get isFullWidth() {
532
+ return isTrueBooleanInput(this.fullWidth);
533
+ }
534
+ get isDark() {
535
+ return isTrueBooleanInput(this.dark);
536
+ }
537
+ ngOnChanges(changes) {
538
+ if (changes['dark'] && !changes['dark'].firstChange) {
539
+ this.setDarkItems();
540
+ }
541
+ if (changes['mode'] && !changes['mode'].firstChange) {
542
+ this.updateListeners();
543
+ }
544
+ super.ngOnChanges(changes);
545
+ }
546
+ ngAfterViewInit() {
547
+ super.ngAfterViewInit();
548
+ this.setDarkItems();
549
+ this.updateListeners();
550
+ }
551
+ /**
552
+ * Set child items dark mode
553
+ * @private
554
+ */
555
+ setDarkItems() {
556
+ this.items?.forEach(item => {
557
+ item.setDark(this.isDark);
558
+ });
559
+ }
560
+ updateListeners() {
561
+ if (this.dropdownButton) {
562
+ const element = this.dropdownButton.nativeElement;
563
+ this.dropdown = Dropdown.getOrCreateInstance(element);
564
+ element.addEventListener('show.bs.dropdown', event => this.showEvent.emit(event));
565
+ element.addEventListener('shown.bs.dropdown', event => this.shownEvent.emit(event));
566
+ element.addEventListener('hide.bs.dropdown', event => this.hideEvent.emit(event));
567
+ element.addEventListener('hidden.bs.dropdown', event => this.hiddenEvent.emit(event));
568
+ }
569
+ }
570
+ /**
571
+ * Toggles the dropdown menu of a given navbar or tabbed navigation.
572
+ */
573
+ toggle() {
574
+ this.dropdown?.toggle();
575
+ }
576
+ /**
577
+ * Shows the dropdown menu of a given navbar or tabbed navigation.
578
+ */
579
+ show() {
580
+ this.dropdown?.show();
581
+ }
582
+ /**
583
+ * Hides the dropdown menu of a given navbar or tabbed navigation.
584
+ */
585
+ hide() {
586
+ this.dropdown?.hide();
587
+ }
588
+ /**
589
+ * Updates the position of an element's dropdown.
590
+ */
591
+ update() {
592
+ this.dropdown?.update();
593
+ }
594
+ /**
595
+ * Destroys an element's dropdown. (Removes stored data on the DOM element)
596
+ */
597
+ dispose() {
598
+ this.dropdown?.dispose();
599
+ }
600
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
601
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItDropdownComponent, isStandalone: true, selector: "it-dropdown", inputs: { mode: "mode", color: "color", direction: "direction", fullWidth: "fullWidth", dark: "dark" }, outputs: { showEvent: "showEvent", shownEvent: "shownEvent", hideEvent: "hideEvent", hiddenEvent: "hiddenEvent" }, queries: [{ propertyName: "items", predicate: ItDropdownItemComponent }], viewQueries: [{ propertyName: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true }], exportAs: ["itDropdown"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"dropdown {{direction}}\">\n <button #dropdownButton\n *ngIf=\"mode === 'button'; else linkButton\"\n [id]=\"id\"\n [class]=\"buttonClass\"\n type=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" [color]=\"this.color ? 'light' : 'primary'\"></it-icon>\n </button>\n\n <ng-template #linkButton>\n <a #dropdownButton\n [id]=\"id\"\n class=\"btn btn-dropdown dropdown-toggle\"\n role=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" color=\"primary\"></it-icon>\n </a>\n </ng-template>\n\n\n <div class=\"dropdown-menu\" [class.full-width]=\"isFullWidth\" [class.dark]=\"isDark\" [attr.aria-labelledby]=\"id\">\n <div class=\"link-list-wrapper\">\n <div class=\"link-list-heading\">\n <ng-content select=\"[listHeading]\"></ng-content>\n </div>\n <ul class=\"link-list\">\n <ng-content select=\"[list]\"></ng-content>\n </ul>\n </div>\n </div>\n</div>\n\n<ng-template #buttonContent>\n <ng-content select=\"[button]\"></ng-content>\n</ng-template>\n", styles: [".link-list-heading:empty{display:none}\n"], dependencies: [{ kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
602
+ }
603
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownComponent, decorators: [{
604
+ type: Component,
605
+ args: [{ standalone: true, selector: 'it-dropdown', exportAs: 'itDropdown', changeDetection: ChangeDetectionStrategy.OnPush, imports: [ItIconComponent, NgTemplateOutlet, NgIf], template: "<div class=\"dropdown {{direction}}\">\n <button #dropdownButton\n *ngIf=\"mode === 'button'; else linkButton\"\n [id]=\"id\"\n [class]=\"buttonClass\"\n type=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" [color]=\"this.color ? 'light' : 'primary'\"></it-icon>\n </button>\n\n <ng-template #linkButton>\n <a #dropdownButton\n [id]=\"id\"\n class=\"btn btn-dropdown dropdown-toggle\"\n role=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" color=\"primary\"></it-icon>\n </a>\n </ng-template>\n\n\n <div class=\"dropdown-menu\" [class.full-width]=\"isFullWidth\" [class.dark]=\"isDark\" [attr.aria-labelledby]=\"id\">\n <div class=\"link-list-wrapper\">\n <div class=\"link-list-heading\">\n <ng-content select=\"[listHeading]\"></ng-content>\n </div>\n <ul class=\"link-list\">\n <ng-content select=\"[list]\"></ng-content>\n </ul>\n </div>\n </div>\n</div>\n\n<ng-template #buttonContent>\n <ng-content select=\"[button]\"></ng-content>\n</ng-template>\n", styles: [".link-list-heading:empty{display:none}\n"] }]
606
+ }], propDecorators: { mode: [{
607
+ type: Input
608
+ }], color: [{
609
+ type: Input
610
+ }], direction: [{
611
+ type: Input
612
+ }], fullWidth: [{
613
+ type: Input
614
+ }], dark: [{
615
+ type: Input
616
+ }], items: [{
617
+ type: ContentChildren,
618
+ args: [ItDropdownItemComponent]
619
+ }], showEvent: [{
620
+ type: Output
621
+ }], shownEvent: [{
622
+ type: Output
623
+ }], hideEvent: [{
624
+ type: Output
625
+ }], hiddenEvent: [{
626
+ type: Output
627
+ }], dropdownButton: [{
628
+ type: ViewChild,
629
+ args: ['dropdownButton']
630
+ }] } });
631
+
632
+ const dropdownComponents = [ItDropdownComponent, ItDropdownItemComponent];
633
+ class ItDropdownModule {
634
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
635
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, imports: [ItDropdownComponent, ItDropdownItemComponent], exports: [ItDropdownComponent, ItDropdownItemComponent] }); }
636
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, imports: [ItDropdownItemComponent] }); }
637
+ }
638
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, decorators: [{
639
+ type: NgModule,
640
+ args: [{
641
+ imports: dropdownComponents,
642
+ exports: dropdownComponents
643
+ }]
644
+ }] });
645
+
646
+ class ItAvatarDropdownItemComponent {
647
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarDropdownItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
648
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItAvatarDropdownItemComponent, isStandalone: true, selector: "it-avatar-dropdown-item", inputs: { link: "link", title: "title", accesskey: "accesskey", tabindex: "tabindex" }, viewQueries: [{ propertyName: "_implicitContent", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: "<ng-template>\n <ng-content></ng-content>\n</ng-template>\n", styles: [".link-list-wrapper{z-index:2;position:relative}a{cursor:pointer}:host ::ng-deep .dropdown-toggle{width:100%;height:100%}:host ::ng-deep .dropdown-toggle .icon{display:none}\n"] }); }
649
+ }
650
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarDropdownItemComponent, decorators: [{
651
+ type: Component,
652
+ args: [{ standalone: true, selector: 'it-avatar-dropdown-item', imports: [NgForOf, NgIf, NgTemplateOutlet], template: "<ng-template>\n <ng-content></ng-content>\n</ng-template>\n", styles: [".link-list-wrapper{z-index:2;position:relative}a{cursor:pointer}:host ::ng-deep .dropdown-toggle{width:100%;height:100%}:host ::ng-deep .dropdown-toggle .icon{display:none}\n"] }]
653
+ }], propDecorators: { _implicitContent: [{
654
+ type: ViewChild,
655
+ args: [TemplateRef, { static: true }]
656
+ }], link: [{
657
+ type: Input
658
+ }], title: [{
659
+ type: Input
660
+ }], accesskey: [{
661
+ type: Input
662
+ }], tabindex: [{
663
+ type: Input
664
+ }] } });
665
+ class ItAvatarDropdownComponent {
666
+ constructor() { }
667
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
668
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItAvatarDropdownComponent, isStandalone: true, selector: "it-avatar-dropdown", host: { classAttribute: "avatar avatar-dropdown" }, queries: [{ propertyName: "items", predicate: ItAvatarDropdownItemComponent }], ngImport: i0, template: "<it-dropdown id=\"dropdown\" class=\"dropdown\"> \n <a button role=\"button\" class=\"\" aria-pressed=\"false\">\n <ng-content select=\"[it-avatar-dropdown-toggle]\"></ng-content>\n </a>\n <ng-container list class=\"dropdown-menu\">\n <li it-dropdown-item *ngFor=\"let item of items\">\n <a *ngIf=\"item.link; else nolink\" \n [routerLink]=\"item.link\" \n class=\"dropdown-item list-item\"\n title=\"item.title\"\n accesskey=\"item.accesskey\"\n tabindex=\"item.tabindex\"\n >\n <ng-template *ngTemplateOutlet=\"item._implicitContent\"></ng-template>\n </a>\n <ng-template #nolink>\n <div class=\"dropdown-item list-item\">\n <ng-template *ngTemplateOutlet=\"item._implicitContent\"></ng-template>\n </div>\n </ng-template>\n </li>\n </ng-container>\n</it-dropdown>", styles: [".link-list-wrapper{z-index:2;position:relative}a{cursor:pointer}:host ::ng-deep .dropdown-toggle{width:100%;height:100%}:host ::ng-deep .dropdown-toggle .icon{display:none}\n"], dependencies: [{ kind: "ngmodule", type: ItDropdownModule }, { kind: "component", type: ItDropdownComponent, selector: "it-dropdown", inputs: ["mode", "color", "direction", "fullWidth", "dark"], outputs: ["showEvent", "shownEvent", "hideEvent", "hiddenEvent"], exportAs: ["itDropdown"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
669
+ }
670
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarDropdownComponent, decorators: [{
671
+ type: Component,
672
+ args: [{ standalone: true, selector: 'it-avatar-dropdown', host: { 'class': 'avatar avatar-dropdown' }, imports: [ItDropdownModule, NgTemplateOutlet, NgForOf, NgIf], template: "<it-dropdown id=\"dropdown\" class=\"dropdown\"> \n <a button role=\"button\" class=\"\" aria-pressed=\"false\">\n <ng-content select=\"[it-avatar-dropdown-toggle]\"></ng-content>\n </a>\n <ng-container list class=\"dropdown-menu\">\n <li it-dropdown-item *ngFor=\"let item of items\">\n <a *ngIf=\"item.link; else nolink\" \n [routerLink]=\"item.link\" \n class=\"dropdown-item list-item\"\n title=\"item.title\"\n accesskey=\"item.accesskey\"\n tabindex=\"item.tabindex\"\n >\n <ng-template *ngTemplateOutlet=\"item._implicitContent\"></ng-template>\n </a>\n <ng-template #nolink>\n <div class=\"dropdown-item list-item\">\n <ng-template *ngTemplateOutlet=\"item._implicitContent\"></ng-template>\n </div>\n </ng-template>\n </li>\n </ng-container>\n</it-dropdown>", styles: [".link-list-wrapper{z-index:2;position:relative}a{cursor:pointer}:host ::ng-deep .dropdown-toggle{width:100%;height:100%}:host ::ng-deep .dropdown-toggle .icon{display:none}\n"] }]
673
+ }], ctorParameters: function () { return []; }, propDecorators: { items: [{
674
+ type: ContentChildren,
675
+ args: [ItAvatarDropdownItemComponent]
676
+ }] } });
677
+
678
+ class ItAvatarGroupItemComponent {
679
+ constructor() { }
680
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarGroupItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
681
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItAvatarGroupItemComponent, isStandalone: true, selector: "it-avatar-item", viewQueries: [{ propertyName: "_implicitContent", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: "<ng-template>\n <ng-content></ng-content>\n</ng-template>\n" }); }
682
+ }
683
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarGroupItemComponent, decorators: [{
684
+ type: Component,
685
+ args: [{ standalone: true, selector: 'it-avatar-item', template: "<ng-template>\n <ng-content></ng-content>\n</ng-template>\n" }]
686
+ }], ctorParameters: function () { return []; }, propDecorators: { _implicitContent: [{
687
+ type: ViewChild,
688
+ args: [TemplateRef, { static: true }]
689
+ }] } });
690
+ class ItAvatarGroupComponent {
691
+ constructor() { }
692
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
693
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItAvatarGroupComponent, isStandalone: true, selector: "it-avatar-group", host: { properties: { "class.link-list-wrapper": "linkList" } }, queries: [{ propertyName: "avatars", predicate: ItAvatarGroupItemComponent }], ngImport: i0, template: "<ul class=\"avatar-group-stacked\">\n <li *ngFor=\"let avatar of avatars\">\n <ng-container *ngTemplateOutlet=\"avatar._implicitContent\"></ng-container>\n </li>\n</ul>", dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
694
+ }
695
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarGroupComponent, decorators: [{
696
+ type: Component,
697
+ args: [{ standalone: true, selector: 'it-avatar-group', host: {
698
+ '[class.link-list-wrapper]': 'linkList'
699
+ }, imports: [NgForOf, NgTemplateOutlet], template: "<ul class=\"avatar-group-stacked\">\n <li *ngFor=\"let avatar of avatars\">\n <ng-container *ngTemplateOutlet=\"avatar._implicitContent\"></ng-container>\n </li>\n</ul>" }]
700
+ }], ctorParameters: function () { return []; }, propDecorators: { avatars: [{
701
+ type: ContentChildren,
702
+ args: [ItAvatarGroupItemComponent]
703
+ }] } });
704
+
705
+ var ColorsEnum;
706
+ (function (ColorsEnum) {
707
+ ColorsEnum["primary"] = "primary";
708
+ ColorsEnum["secondary"] = "secondary";
709
+ ColorsEnum["success"] = "success";
710
+ ColorsEnum["danger"] = "danger";
711
+ ColorsEnum["warning"] = "warning";
712
+ ColorsEnum["green"] = "green";
713
+ ColorsEnum["orange"] = "orange";
714
+ ColorsEnum["red"] = "red";
715
+ })(ColorsEnum || (ColorsEnum = {}));
716
+
717
+ var SizesEnum;
718
+ (function (SizesEnum) {
719
+ SizesEnum["xs"] = "size-xs";
720
+ SizesEnum["sm"] = "size-sm";
721
+ SizesEnum["lg"] = "size-lg";
722
+ SizesEnum["xl"] = "size-xl";
723
+ SizesEnum["xxl"] = "size-xxl";
724
+ })(SizesEnum || (SizesEnum = {}));
725
+
726
+ class ItAvatarDirective {
727
+ /**
728
+ * Indica il colore dell'avatar. Può assumere i valori:
729
+ * <ul>
730
+ * <li> primary
731
+ * <li> secondary
732
+ * <li> green
733
+ * <li> orange
734
+ * <li> red
735
+ * </ul>
736
+ */
737
+ get color() {
738
+ return this._color;
739
+ }
740
+ set color(value) {
741
+ const colorsKey = value;
742
+ if (ColorsEnum[colorsKey]) {
743
+ this._color = ColorsEnum[colorsKey];
744
+ }
745
+ else {
746
+ this._color = undefined;
747
+ }
748
+ }
749
+ /**
750
+ * Indica la grandezza dell'avatar. Può assumere i valori:
751
+ * <ul>
752
+ * <li> xs
753
+ * <li> sm
754
+ * <li> lg
755
+ * <li> xl
756
+ * <li> xxl
757
+ * </ul>
758
+ */
759
+ get size() {
760
+ return this._size;
761
+ }
762
+ set size(value) {
763
+ const sizesKey = value;
764
+ if (SizesEnum[sizesKey]) {
765
+ this._size = SizesEnum[sizesKey];
766
+ }
767
+ else {
768
+ this._size = undefined;
769
+ }
770
+ }
771
+ get hostClasses() {
772
+ let cssClass = 'avatar';
773
+ if (this.size) {
774
+ cssClass += ` ${this.size}`;
775
+ }
776
+ if (this.color) {
777
+ cssClass += ` avatar-${this.color}`;
778
+ }
779
+ return cssClass;
780
+ }
781
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
782
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: ItAvatarDirective, isStandalone: true, selector: "[itAvatar]", inputs: { color: "color", size: "size" }, host: { properties: { "class": "this.hostClasses" } }, exportAs: ["itAvatar"], ngImport: i0 }); }
783
+ }
784
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItAvatarDirective, decorators: [{
785
+ type: Directive,
786
+ args: [{
787
+ standalone: true,
788
+ selector: '[itAvatar]',
789
+ exportAs: 'itAvatar'
790
+ }]
791
+ }], propDecorators: { color: [{
792
+ type: Input
793
+ }], size: [{
794
+ type: Input
795
+ }], hostClasses: [{
796
+ type: HostBinding,
797
+ args: ['class']
798
+ }] } });
799
+
397
800
  /**
398
801
  * Badge
399
802
  * @description Useful for small counters and labels
@@ -897,255 +1300,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImpor
897
1300
  }]
898
1301
  }] });
899
1302
 
900
- class ItLinkComponent extends ItAbstractComponent {
901
- constructor() {
902
- super(...arguments);
903
- /**
904
- * Custom class
905
- */
906
- this.class = '';
907
- }
908
- get isExternalLink() {
909
- return isTrueBooleanInput(this.externalLink);
910
- }
911
- get isDisabled() {
912
- return isTrueBooleanInput(this.disabled);
913
- }
914
- ngAfterViewInit() {
915
- super.ngAfterViewInit();
916
- this._renderer.removeAttribute(this._elementRef.nativeElement, 'class');
917
- }
918
- ngOnChanges(changes) {
919
- super.ngOnChanges(changes);
920
- if (changes['class']) {
921
- this._changeDetectorRef.markForCheck();
922
- }
923
- }
924
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItLinkComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
925
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItLinkComponent, isStandalone: true, selector: "it-link", inputs: { href: "href", externalLink: "externalLink", disabled: "disabled", class: "class" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<a *ngIf=\"!isExternalLink; else externalLink\" [id]=\"id\" [class]=\"class\" [routerLink]=\"(isDisabled ? null : href)!\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n</a>\n<ng-template #externalLink>\n <a [id]=\"id\" [class]=\"class\" [attr.href]=\"isDisabled ? null : href\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n </a>\n</ng-template>\n\n<ng-template #linkContent>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
926
- }
927
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItLinkComponent, decorators: [{
928
- type: Component,
929
- args: [{ standalone: true, selector: 'it-link', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, RouterLink, NgTemplateOutlet], template: "<a *ngIf=\"!isExternalLink; else externalLink\" [id]=\"id\" [class]=\"class\" [routerLink]=\"(isDisabled ? null : href)!\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n</a>\n<ng-template #externalLink>\n <a [id]=\"id\" [class]=\"class\" [attr.href]=\"isDisabled ? null : href\">\n <ng-container *ngTemplateOutlet=\"linkContent\"></ng-container>\n </a>\n</ng-template>\n\n<ng-template #linkContent>\n <ng-content></ng-content>\n</ng-template>\n" }]
930
- }], propDecorators: { href: [{
931
- type: Input
932
- }], externalLink: [{
933
- type: Input
934
- }], disabled: [{
935
- type: Input
936
- }], class: [{
937
- type: Input
938
- }] } });
939
-
940
- class ItDropdownItemComponent extends ItLinkComponent {
941
- constructor() {
942
- super(...arguments);
943
- /**
944
- * The icon position
945
- * @default right
946
- */
947
- this.iconPosition = 'right';
948
- /**
949
- * Change icon color if menu is dark
950
- * @default false
951
- */
952
- this.isDark = false;
953
- }
954
- get isDivider() {
955
- return isTrueBooleanInput(this.divider);
956
- }
957
- get isActive() {
958
- return isTrueBooleanInput(this.active);
959
- }
960
- get isLarge() {
961
- return isTrueBooleanInput(this.large);
962
- }
963
- get linkClass() {
964
- let linkClass = `list-item ${this.isActive ? 'active' : 'dropdown-item'}`;
965
- if (this.isDisabled) {
966
- linkClass += ' disabled';
967
- }
968
- if (this.isLarge) {
969
- linkClass += ' large';
970
- }
971
- if (this.iconName) {
972
- linkClass += ` ${this.iconPosition === 'right' ? 'right-icon' : 'left-icon'}`;
973
- }
974
- return linkClass;
975
- }
976
- setDark(dark) {
977
- if (this.isDark !== dark) {
978
- this.isDark = dark;
979
- this._changeDetectorRef.detectChanges();
980
- }
981
- }
982
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
983
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItDropdownItemComponent, isStandalone: true, selector: "it-dropdown-item", inputs: { divider: "divider", active: "active", large: "large", iconName: "iconName", iconPosition: "iconPosition" }, usesInheritance: true, ngImport: i0, template: "<li>\n <span *ngIf=\"isDivider; else item\" class=\"divider\"></span>\n\n <ng-template #item>\n <it-link [class]=\"linkClass\" [id]=\"id\" [href]=\"href\" [externalLink]=\"externalLink\" [disabled]=\"disabled\">\n <it-icon *ngIf=\"iconName && iconPosition === 'left'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span><ng-content></ng-content></span>\n\n <it-icon *ngIf=\"iconName && iconPosition === 'right'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span *ngIf=\"isActive\" class=\"visually-hidden\">{{'it.core.active'|translate}}</span>\n </it-link>\n </ng-template>\n</li>\n", styles: [".list-item.disabled{pointer-events:none;cursor:default}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: ItLinkComponent, selector: "it-link", inputs: ["href", "externalLink", "disabled", "class"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
984
- }
985
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownItemComponent, decorators: [{
986
- type: Component,
987
- args: [{ standalone: true, selector: 'it-dropdown-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, ItIconComponent, TranslateModule, ItLinkComponent], template: "<li>\n <span *ngIf=\"isDivider; else item\" class=\"divider\"></span>\n\n <ng-template #item>\n <it-link [class]=\"linkClass\" [id]=\"id\" [href]=\"href\" [externalLink]=\"externalLink\" [disabled]=\"disabled\">\n <it-icon *ngIf=\"iconName && iconPosition === 'left'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span><ng-content></ng-content></span>\n\n <it-icon *ngIf=\"iconName && iconPosition === 'right'\"\n size=\"sm\"\n [name]=\"iconName\"\n [color]=\"isDark ? 'light' : 'primary'\"\n [svgClass]=\"iconPosition\"></it-icon>\n\n <span *ngIf=\"isActive\" class=\"visually-hidden\">{{'it.core.active'|translate}}</span>\n </it-link>\n </ng-template>\n</li>\n", styles: [".list-item.disabled{pointer-events:none;cursor:default}\n"] }]
988
- }], propDecorators: { divider: [{
989
- type: Input
990
- }], active: [{
991
- type: Input
992
- }], large: [{
993
- type: Input
994
- }], iconName: [{
995
- type: Input
996
- }], iconPosition: [{
997
- type: Input
998
- }] } });
999
-
1000
- class ItDropdownComponent extends ItAbstractComponent {
1001
- constructor() {
1002
- super(...arguments);
1003
- /**
1004
- * Dropdown mode
1005
- */
1006
- this.mode = 'button';
1007
- /**
1008
- * Fires immediately when the show instance method is called.
1009
- */
1010
- this.showEvent = new EventEmitter();
1011
- /**
1012
- * Fired when the dropdown has been made visible to the user and CSS transitions have completed.
1013
- */
1014
- this.shownEvent = new EventEmitter();
1015
- /**
1016
- * Fires immediately when the hide instance method has been called.
1017
- */
1018
- this.hideEvent = new EventEmitter();
1019
- /**
1020
- * Fired when the dropdown has finished being hidden from the user and CSS transitions have completed.
1021
- */
1022
- this.hiddenEvent = new EventEmitter();
1023
- }
1024
- get buttonClass() {
1025
- let btnClass = 'btn dropdown-toggle';
1026
- if (this.color) {
1027
- btnClass += ` btn-${this.color}`;
1028
- }
1029
- else {
1030
- btnClass += ` btn-dropdown`;
1031
- }
1032
- return btnClass;
1033
- }
1034
- get isFullWidth() {
1035
- return isTrueBooleanInput(this.fullWidth);
1036
- }
1037
- get isDark() {
1038
- return isTrueBooleanInput(this.dark);
1039
- }
1040
- ngOnChanges(changes) {
1041
- if (changes['dark'] && !changes['dark'].firstChange) {
1042
- this.setDarkItems();
1043
- }
1044
- if (changes['mode'] && !changes['mode'].firstChange) {
1045
- this.updateListeners();
1046
- }
1047
- super.ngOnChanges(changes);
1048
- }
1049
- ngAfterViewInit() {
1050
- super.ngAfterViewInit();
1051
- this.setDarkItems();
1052
- this.updateListeners();
1053
- }
1054
- /**
1055
- * Set child items dark mode
1056
- * @private
1057
- */
1058
- setDarkItems() {
1059
- this.items?.forEach(item => {
1060
- item.setDark(this.isDark);
1061
- });
1062
- }
1063
- updateListeners() {
1064
- if (this.dropdownButton) {
1065
- const element = this.dropdownButton.nativeElement;
1066
- this.dropdown = Dropdown.getOrCreateInstance(element);
1067
- element.addEventListener('show.bs.dropdown', event => this.showEvent.emit(event));
1068
- element.addEventListener('shown.bs.dropdown', event => this.shownEvent.emit(event));
1069
- element.addEventListener('hide.bs.dropdown', event => this.hideEvent.emit(event));
1070
- element.addEventListener('hidden.bs.dropdown', event => this.hiddenEvent.emit(event));
1071
- }
1072
- }
1073
- /**
1074
- * Toggles the dropdown menu of a given navbar or tabbed navigation.
1075
- */
1076
- toggle() {
1077
- this.dropdown?.toggle();
1078
- }
1079
- /**
1080
- * Shows the dropdown menu of a given navbar or tabbed navigation.
1081
- */
1082
- show() {
1083
- this.dropdown?.show();
1084
- }
1085
- /**
1086
- * Hides the dropdown menu of a given navbar or tabbed navigation.
1087
- */
1088
- hide() {
1089
- this.dropdown?.hide();
1090
- }
1091
- /**
1092
- * Updates the position of an element's dropdown.
1093
- */
1094
- update() {
1095
- this.dropdown?.update();
1096
- }
1097
- /**
1098
- * Destroys an element's dropdown. (Removes stored data on the DOM element)
1099
- */
1100
- dispose() {
1101
- this.dropdown?.dispose();
1102
- }
1103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1104
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItDropdownComponent, isStandalone: true, selector: "it-dropdown", inputs: { mode: "mode", color: "color", direction: "direction", fullWidth: "fullWidth", dark: "dark" }, outputs: { showEvent: "showEvent", shownEvent: "shownEvent", hideEvent: "hideEvent", hiddenEvent: "hiddenEvent" }, queries: [{ propertyName: "items", predicate: ItDropdownItemComponent }], viewQueries: [{ propertyName: "dropdownButton", first: true, predicate: ["dropdownButton"], descendants: true }], exportAs: ["itDropdown"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"dropdown {{direction}}\">\n <button #dropdownButton\n *ngIf=\"mode === 'button'; else linkButton\"\n [id]=\"id\"\n [class]=\"buttonClass\"\n type=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" [color]=\"this.color ? 'light' : 'primary'\"></it-icon>\n </button>\n\n <ng-template #linkButton>\n <a #dropdownButton\n [id]=\"id\"\n class=\"btn btn-dropdown dropdown-toggle\"\n role=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" color=\"primary\"></it-icon>\n </a>\n </ng-template>\n\n\n <div class=\"dropdown-menu\" [class.full-width]=\"isFullWidth\" [class.dark]=\"isDark\" [attr.aria-labelledby]=\"id\">\n <div class=\"link-list-wrapper\">\n <div class=\"link-list-heading\">\n <ng-content select=\"[listHeading]\"></ng-content>\n </div>\n <ul class=\"link-list\">\n <ng-content select=\"[list]\"></ng-content>\n </ul>\n </div>\n </div>\n</div>\n\n<ng-template #buttonContent>\n <ng-content select=\"[button]\"></ng-content>\n</ng-template>\n", styles: [".link-list-heading:empty{display:none}\n"], dependencies: [{ kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1105
- }
1106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownComponent, decorators: [{
1107
- type: Component,
1108
- args: [{ standalone: true, selector: 'it-dropdown', exportAs: 'itDropdown', changeDetection: ChangeDetectionStrategy.OnPush, imports: [ItIconComponent, NgTemplateOutlet, NgIf], template: "<div class=\"dropdown {{direction}}\">\n <button #dropdownButton\n *ngIf=\"mode === 'button'; else linkButton\"\n [id]=\"id\"\n [class]=\"buttonClass\"\n type=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" [color]=\"this.color ? 'light' : 'primary'\"></it-icon>\n </button>\n\n <ng-template #linkButton>\n <a #dropdownButton\n [id]=\"id\"\n class=\"btn btn-dropdown dropdown-toggle\"\n role=\"button\"\n data-bs-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <ng-container *ngTemplateOutlet=\"buttonContent\"></ng-container>\n <it-icon svgClass=\"icon-expand\" name=\"expand\" size=\"sm\" color=\"primary\"></it-icon>\n </a>\n </ng-template>\n\n\n <div class=\"dropdown-menu\" [class.full-width]=\"isFullWidth\" [class.dark]=\"isDark\" [attr.aria-labelledby]=\"id\">\n <div class=\"link-list-wrapper\">\n <div class=\"link-list-heading\">\n <ng-content select=\"[listHeading]\"></ng-content>\n </div>\n <ul class=\"link-list\">\n <ng-content select=\"[list]\"></ng-content>\n </ul>\n </div>\n </div>\n</div>\n\n<ng-template #buttonContent>\n <ng-content select=\"[button]\"></ng-content>\n</ng-template>\n", styles: [".link-list-heading:empty{display:none}\n"] }]
1109
- }], propDecorators: { mode: [{
1110
- type: Input
1111
- }], color: [{
1112
- type: Input
1113
- }], direction: [{
1114
- type: Input
1115
- }], fullWidth: [{
1116
- type: Input
1117
- }], dark: [{
1118
- type: Input
1119
- }], items: [{
1120
- type: ContentChildren,
1121
- args: [ItDropdownItemComponent]
1122
- }], showEvent: [{
1123
- type: Output
1124
- }], shownEvent: [{
1125
- type: Output
1126
- }], hideEvent: [{
1127
- type: Output
1128
- }], hiddenEvent: [{
1129
- type: Output
1130
- }], dropdownButton: [{
1131
- type: ViewChild,
1132
- args: ['dropdownButton']
1133
- }] } });
1134
-
1135
- const dropdownComponents = [ItDropdownComponent, ItDropdownItemComponent];
1136
- class ItDropdownModule {
1137
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1138
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, imports: [ItDropdownComponent, ItDropdownItemComponent], exports: [ItDropdownComponent, ItDropdownItemComponent] }); }
1139
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, imports: [ItDropdownItemComponent] }); }
1140
- }
1141
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItDropdownModule, decorators: [{
1142
- type: NgModule,
1143
- args: [{
1144
- imports: dropdownComponents,
1145
- exports: dropdownComponents
1146
- }]
1147
- }] });
1148
-
1149
1303
  class ItListComponent {
1150
1304
  get isLinkList() {
1151
1305
  return isTrueBooleanInput(this.linkList);
@@ -2213,11 +2367,11 @@ class ItInputComponent extends ItAbstractFormComponent {
2213
2367
  this.showAutocompletion = this.type === 'search';
2214
2368
  }
2215
2369
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2216
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItInputComponent, isStandalone: true, selector: "it-input", inputs: { type: "type", placeholder: "placeholder", description: "description", readonly: "readonly", maxDate: "maxDate", minDate: "minDate", max: "max", min: "min", step: "step", currency: "currency", percentage: "percentage", adaptive: "adaptive", autocomplete: "autocomplete", autocompleteData: "autocompleteData", autocompleteDebounceTime: "autocompleteDebounceTime" }, outputs: { autocompleteSelectedEvent: "autocompleteSelectedEvent" }, usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\" [class.d-none]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n <div #prepend>\n <ng-content select=\"[prepend]\"></ng-content>\n </div>\n <div class=\"input-group-text\" #prependText>\n <ng-content select=\"[prependText]\"></ng-content>\n </div>\n </div>\n\n <label *ngIf=\"label\" [for]=\"id\" [class.active]=\"isActiveLabel\"\n [class.empty-prepend-label]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n {{label}}\n </label>\n\n <span *ngIf=\"type === 'number'\"\n class=\"input-number\"\n [class.input-number-currency]=\"currency\"\n [class.input-number-percentage]=\"percentage\"\n [class.input-number-adaptive]=\"adaptive\">\n\n <input type=\"number\"\n [id]=\"id\"\n [step]=\"step ?? null\"\n [min]=\"min ?? null\"\n [max]=\"max ?? null\"\n [class.form-control]=\"readonly !== 'plaintext'\"\n [class.form-control-plaintext]=\"readonly === 'plaintext'\"\n [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [readonly]=\"isReadonly\"\n [autocomplete]=\"autocomplete\"\n [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\" />\n\n <button type=\"button\" class=\"input-number-add\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber()\">\n <span class=\"visually-hidden\">{{'it.form.increase-value' | translate}}</span>\n </button>\n <button type=\"button\" class=\"input-number-sub\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber(true)\">\n <span class=\"visually-hidden\">{{'it.form.decrease-value' | translate}}</span>\n </button>\n </span>\n\n <input *ngIf=\"type !== 'number'\"\n [id]=\"id\"\n [type]=\"type\"\n [max]=\"type === 'date' ? maxDate : undefined\"\n [min]=\"type === 'date' ? minDate : undefined\"\n [class.form-control]=\"readonly !== 'plaintext'\"\n [class.form-control-plaintext]=\"readonly === 'plaintext'\"\n [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [readonly]=\"isReadonly\"\n (keydown)=\"onKeyDown()\"\n [autocomplete]=\"autocomplete\"\n [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\">\n\n <div class=\"input-group-append\">\n <ng-content select=\"[append]\"></ng-content>\n\n <div class=\"input-group-text\">\n <ng-content select=\"[appendText]\"></ng-content>\n </div>\n </div>\n </div>\n\n <small *ngIf=\"description\" [id]=\"id + '-description'\" class=\"form-text\">{{description}}</small>\n\n <!-- INIZIO gestione AUTOCOMPLETAMENTO -->\n <ng-container *ngIf=\"type === 'search'\">\n <!-- Icona lente per autocompletamento -->\n <span class=\"autocomplete-icon\" aria-hidden=\"true\">\n <it-icon name=\"search\" size=\"sm\"></it-icon>\n </span>\n\n <ng-container *ngIf=\"autocompleteResults$ | async as autocomplete\">\n <!-- Lista di autocompletamento -->\n <ul class=\"autocomplete-list\" [class.autocomplete-list-show]=\"autocomplete.relatedEntries?.length && showAutocompletion\">\n <li *ngFor=\"let entry of autocomplete.relatedEntries; trackBy: autocompleteItemTrackByValueFn\"\n (click)=\"onEntryClick(entry, $event)\">\n <a [href]=\"entry.link\">\n <ng-container *ngTemplateOutlet=\"autocompleteItemTemplate\"></ng-container>\n </a>\n <ng-template #autocompleteItemTemplate>\n <div class=\"avatar size-sm\" *ngIf=\"entry.avatarSrcPath\">\n <img [src]=\"entry.avatarSrcPath\" [alt]=\"entry.avatarAltText\">\n </div>\n <it-icon *ngIf=\"entry.icon\" [name]=\"entry.icon\" size=\"sm\"></it-icon>\n <span class=\"autocomplete-list-text\">\n <span [innerHTML]=\"entry.value | markMatchingText: autocomplete.searchedValue\"></span>\n <em *ngIf=\"entry.label\">{{entry.label}}</em>\n </span>\n </ng-template>\n </li>\n </ul>\n </ng-container>\n </ng-container>\n <!-- FINE gestione AUTOCOMPLETAMENTO -->\n\n <div *ngIf=\"isInvalid\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <div #customError>\n <ng-content select=\"[error]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customError.hasChildNodes()\">{{invalidMessage | async}}</ng-container>\n </div>\n</div>\n", styles: [".form-group label{z-index:1000}.form-group input:focus:not(.focus--mouse){box-shadow:inherit!important;border-color:inherit!important}.form-group .input-number button.input-number-add{top:0}.form-group .input-number button.input-number-sub{bottom:0}.form-group .input-group-text:empty{display:none}.form-group label.empty-prepend-label{left:auto!important;max-width:100%!important}.form-group label:not(.active):has(+input:-webkit-autofill){transform:translateY(-75%)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.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$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i1$1.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "pipe", type: MarkMatchingTextPipe, name: "markMatchingText" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2370
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItInputComponent, isStandalone: true, selector: "it-input", inputs: { type: "type", placeholder: "placeholder", description: "description", readonly: "readonly", maxDate: "maxDate", minDate: "minDate", max: "max", min: "min", step: "step", currency: "currency", percentage: "percentage", symbol: "symbol", adaptive: "adaptive", autocomplete: "autocomplete", autocompleteData: "autocompleteData", autocompleteDebounceTime: "autocompleteDebounceTime" }, outputs: { autocompleteSelectedEvent: "autocompleteSelectedEvent" }, usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\">\n\n <div class=\"input-group\" [class.disabled]=\"!control.enabled\" [class.input-number]=\"type === 'number'\"\n [class.input-number-currency]=\"currency\" [class.input-number-percentage]=\"percentage\"\n [class.input-number-adaptive]=\"adaptive\">\n <div class=\"input-group-prepend\" [class.d-none]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n <div #prepend>\n <ng-content select=\"[prepend]\"></ng-content>\n </div>\n <div class=\"input-group-text\" #prependText>\n <ng-content select=\"[prependText]\"></ng-content>\n </div>\n </div>\n <label *ngIf=\"label\" [for]=\"id\" [class.active]=\"isActiveLabel\" [class.input-number-label]=\"type === 'number'\"\n [class.empty-prepend-label]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n {{label}}\n </label>\n <ng-container *ngIf=\"type === 'number'\">\n <span *ngIf=\"currency || percentage\" class=\"input-group-text fw-semibold\">{{symbol}}</span>\n <input type=\"number\" [id]=\"id\" [step]=\"step ?? null\" [min]=\"min ?? null\" [max]=\"max ?? null\"\n [class.form-control]=\"readonly !== 'plaintext'\" [class.form-control-plaintext]=\"readonly === 'plaintext'\"\n [class.is-invalid]=\"isInvalid\" [class.is-valid]=\"isValid\" [formControl]=\"control\" [placeholder]=\"placeholder\"\n [readonly]=\"isReadonly\" [autocomplete]=\"autocomplete\" [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\" />\n <span class=\"input-group-text align-buttons flex-column\">\n <button type=\"button\" class=\"input-number-add\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber()\">\n <span class=\"visually-hidden\">{{'it.form.increase-value' | translate}}</span>\n </button>\n <button type=\"button\" class=\"input-number-sub\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber(true)\">\n <span class=\"visually-hidden\">{{'it.form.decrease-value' | translate}}</span>\n </button>\n </span>\n </ng-container>\n <input *ngIf=\"type !== 'number'\" [id]=\"id\" [type]=\"type\" [max]=\"type === 'date' ? maxDate : undefined\"\n [min]=\"type === 'date' ? minDate : undefined\" [class.form-control]=\"readonly !== 'plaintext'\"\n [class.form-control-plaintext]=\"readonly === 'plaintext'\" [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\" [formControl]=\"control\" [placeholder]=\"placeholder\" [readonly]=\"isReadonly\"\n (keydown)=\"onKeyDown()\" [autocomplete]=\"autocomplete\" [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\">\n\n <div class=\"input-group-append\">\n <ng-content select=\"[append]\"></ng-content>\n\n <div class=\"input-group-text\">\n <ng-content select=\"[appendText]\"></ng-content>\n </div>\n </div>\n </div>\n\n <small *ngIf=\"description\" [id]=\"id + '-description'\" class=\"form-text\">{{description}}</small>\n\n <!-- INIZIO gestione AUTOCOMPLETAMENTO -->\n <ng-container *ngIf=\"type === 'search'\">\n <!-- Icona lente per autocompletamento -->\n <span class=\"autocomplete-icon\" aria-hidden=\"true\">\n <it-icon name=\"search\" size=\"sm\"></it-icon>\n </span>\n\n <ng-container *ngIf=\"autocompleteResults$ | async as autocomplete\">\n <!-- Lista di autocompletamento -->\n <ul class=\"autocomplete-list\"\n [class.autocomplete-list-show]=\"autocomplete.relatedEntries?.length && showAutocompletion\">\n <li *ngFor=\"let entry of autocomplete.relatedEntries; trackBy: autocompleteItemTrackByValueFn\"\n (click)=\"onEntryClick(entry, $event)\">\n <a [href]=\"entry.link\">\n <ng-container *ngTemplateOutlet=\"autocompleteItemTemplate\"></ng-container>\n </a>\n <ng-template #autocompleteItemTemplate>\n <div class=\"avatar size-sm\" *ngIf=\"entry.avatarSrcPath\">\n <img [src]=\"entry.avatarSrcPath\" [alt]=\"entry.avatarAltText\">\n </div>\n <it-icon *ngIf=\"entry.icon\" [name]=\"entry.icon\" size=\"sm\"></it-icon>\n <span class=\"autocomplete-list-text\">\n <span [innerHTML]=\"entry.value | markMatchingText: autocomplete.searchedValue\"></span>\n <em *ngIf=\"entry.label\">{{entry.label}}</em>\n </span>\n </ng-template>\n </li>\n </ul>\n </ng-container>\n </ng-container>\n <!-- FINE gestione AUTOCOMPLETAMENTO -->\n\n <div *ngIf=\"isInvalid\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <div #customError>\n <ng-content select=\"[error]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customError.hasChildNodes()\">{{invalidMessage | async}}</ng-container>\n </div>\n</div>", styles: [".form-group label{z-index:1000}.form-group input:focus:not(.focus--mouse){box-shadow:inherit!important;border-color:inherit!important}.form-group .input-number .align-buttons{height:100%}.form-group .input-group-text:empty{display:none}.form-group label.empty-prepend-label{left:auto!important;max-width:100%!important}.form-group label:not(.active):has(+input:-webkit-autofill){transform:translateY(-75%)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.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$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i1$1.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "pipe", type: MarkMatchingTextPipe, name: "markMatchingText" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2217
2371
  }
2218
2372
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItInputComponent, decorators: [{
2219
2373
  type: Component,
2220
- args: [{ standalone: true, selector: 'it-input', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, ReactiveFormsModule, TranslateModule, AsyncPipe, ItIconComponent, MarkMatchingTextPipe, NgTemplateOutlet, NgForOf], template: "<div class=\"form-group\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\" [class.d-none]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n <div #prepend>\n <ng-content select=\"[prepend]\"></ng-content>\n </div>\n <div class=\"input-group-text\" #prependText>\n <ng-content select=\"[prependText]\"></ng-content>\n </div>\n </div>\n\n <label *ngIf=\"label\" [for]=\"id\" [class.active]=\"isActiveLabel\"\n [class.empty-prepend-label]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n {{label}}\n </label>\n\n <span *ngIf=\"type === 'number'\"\n class=\"input-number\"\n [class.input-number-currency]=\"currency\"\n [class.input-number-percentage]=\"percentage\"\n [class.input-number-adaptive]=\"adaptive\">\n\n <input type=\"number\"\n [id]=\"id\"\n [step]=\"step ?? null\"\n [min]=\"min ?? null\"\n [max]=\"max ?? null\"\n [class.form-control]=\"readonly !== 'plaintext'\"\n [class.form-control-plaintext]=\"readonly === 'plaintext'\"\n [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [readonly]=\"isReadonly\"\n [autocomplete]=\"autocomplete\"\n [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\" />\n\n <button type=\"button\" class=\"input-number-add\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber()\">\n <span class=\"visually-hidden\">{{'it.form.increase-value' | translate}}</span>\n </button>\n <button type=\"button\" class=\"input-number-sub\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber(true)\">\n <span class=\"visually-hidden\">{{'it.form.decrease-value' | translate}}</span>\n </button>\n </span>\n\n <input *ngIf=\"type !== 'number'\"\n [id]=\"id\"\n [type]=\"type\"\n [max]=\"type === 'date' ? maxDate : undefined\"\n [min]=\"type === 'date' ? minDate : undefined\"\n [class.form-control]=\"readonly !== 'plaintext'\"\n [class.form-control-plaintext]=\"readonly === 'plaintext'\"\n [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [readonly]=\"isReadonly\"\n (keydown)=\"onKeyDown()\"\n [autocomplete]=\"autocomplete\"\n [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\">\n\n <div class=\"input-group-append\">\n <ng-content select=\"[append]\"></ng-content>\n\n <div class=\"input-group-text\">\n <ng-content select=\"[appendText]\"></ng-content>\n </div>\n </div>\n </div>\n\n <small *ngIf=\"description\" [id]=\"id + '-description'\" class=\"form-text\">{{description}}</small>\n\n <!-- INIZIO gestione AUTOCOMPLETAMENTO -->\n <ng-container *ngIf=\"type === 'search'\">\n <!-- Icona lente per autocompletamento -->\n <span class=\"autocomplete-icon\" aria-hidden=\"true\">\n <it-icon name=\"search\" size=\"sm\"></it-icon>\n </span>\n\n <ng-container *ngIf=\"autocompleteResults$ | async as autocomplete\">\n <!-- Lista di autocompletamento -->\n <ul class=\"autocomplete-list\" [class.autocomplete-list-show]=\"autocomplete.relatedEntries?.length && showAutocompletion\">\n <li *ngFor=\"let entry of autocomplete.relatedEntries; trackBy: autocompleteItemTrackByValueFn\"\n (click)=\"onEntryClick(entry, $event)\">\n <a [href]=\"entry.link\">\n <ng-container *ngTemplateOutlet=\"autocompleteItemTemplate\"></ng-container>\n </a>\n <ng-template #autocompleteItemTemplate>\n <div class=\"avatar size-sm\" *ngIf=\"entry.avatarSrcPath\">\n <img [src]=\"entry.avatarSrcPath\" [alt]=\"entry.avatarAltText\">\n </div>\n <it-icon *ngIf=\"entry.icon\" [name]=\"entry.icon\" size=\"sm\"></it-icon>\n <span class=\"autocomplete-list-text\">\n <span [innerHTML]=\"entry.value | markMatchingText: autocomplete.searchedValue\"></span>\n <em *ngIf=\"entry.label\">{{entry.label}}</em>\n </span>\n </ng-template>\n </li>\n </ul>\n </ng-container>\n </ng-container>\n <!-- FINE gestione AUTOCOMPLETAMENTO -->\n\n <div *ngIf=\"isInvalid\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <div #customError>\n <ng-content select=\"[error]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customError.hasChildNodes()\">{{invalidMessage | async}}</ng-container>\n </div>\n</div>\n", styles: [".form-group label{z-index:1000}.form-group input:focus:not(.focus--mouse){box-shadow:inherit!important;border-color:inherit!important}.form-group .input-number button.input-number-add{top:0}.form-group .input-number button.input-number-sub{bottom:0}.form-group .input-group-text:empty{display:none}.form-group label.empty-prepend-label{left:auto!important;max-width:100%!important}.form-group label:not(.active):has(+input:-webkit-autofill){transform:translateY(-75%)}\n"] }]
2374
+ args: [{ standalone: true, selector: 'it-input', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, ReactiveFormsModule, TranslateModule, AsyncPipe, ItIconComponent, MarkMatchingTextPipe, NgTemplateOutlet, NgForOf], template: "<div class=\"form-group\">\n\n <div class=\"input-group\" [class.disabled]=\"!control.enabled\" [class.input-number]=\"type === 'number'\"\n [class.input-number-currency]=\"currency\" [class.input-number-percentage]=\"percentage\"\n [class.input-number-adaptive]=\"adaptive\">\n <div class=\"input-group-prepend\" [class.d-none]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n <div #prepend>\n <ng-content select=\"[prepend]\"></ng-content>\n </div>\n <div class=\"input-group-text\" #prependText>\n <ng-content select=\"[prependText]\"></ng-content>\n </div>\n </div>\n <label *ngIf=\"label\" [for]=\"id\" [class.active]=\"isActiveLabel\" [class.input-number-label]=\"type === 'number'\"\n [class.empty-prepend-label]=\"!prependText.hasChildNodes() && !prepend.hasChildNodes()\">\n {{label}}\n </label>\n <ng-container *ngIf=\"type === 'number'\">\n <span *ngIf=\"currency || percentage\" class=\"input-group-text fw-semibold\">{{symbol}}</span>\n <input type=\"number\" [id]=\"id\" [step]=\"step ?? null\" [min]=\"min ?? null\" [max]=\"max ?? null\"\n [class.form-control]=\"readonly !== 'plaintext'\" [class.form-control-plaintext]=\"readonly === 'plaintext'\"\n [class.is-invalid]=\"isInvalid\" [class.is-valid]=\"isValid\" [formControl]=\"control\" [placeholder]=\"placeholder\"\n [readonly]=\"isReadonly\" [autocomplete]=\"autocomplete\" [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\" />\n <span class=\"input-group-text align-buttons flex-column\">\n <button type=\"button\" class=\"input-number-add\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber()\">\n <span class=\"visually-hidden\">{{'it.form.increase-value' | translate}}</span>\n </button>\n <button type=\"button\" class=\"input-number-sub\" [disabled]=\"!control.enabled\" (click)=\"incrementNumber(true)\">\n <span class=\"visually-hidden\">{{'it.form.decrease-value' | translate}}</span>\n </button>\n </span>\n </ng-container>\n <input *ngIf=\"type !== 'number'\" [id]=\"id\" [type]=\"type\" [max]=\"type === 'date' ? maxDate : undefined\"\n [min]=\"type === 'date' ? minDate : undefined\" [class.form-control]=\"readonly !== 'plaintext'\"\n [class.form-control-plaintext]=\"readonly === 'plaintext'\" [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\" [formControl]=\"control\" [placeholder]=\"placeholder\" [readonly]=\"isReadonly\"\n (keydown)=\"onKeyDown()\" [autocomplete]=\"autocomplete\" [attr.aria-describedby]=\"id + '-description'\"\n (blur)=\"markAsTouched()\">\n\n <div class=\"input-group-append\">\n <ng-content select=\"[append]\"></ng-content>\n\n <div class=\"input-group-text\">\n <ng-content select=\"[appendText]\"></ng-content>\n </div>\n </div>\n </div>\n\n <small *ngIf=\"description\" [id]=\"id + '-description'\" class=\"form-text\">{{description}}</small>\n\n <!-- INIZIO gestione AUTOCOMPLETAMENTO -->\n <ng-container *ngIf=\"type === 'search'\">\n <!-- Icona lente per autocompletamento -->\n <span class=\"autocomplete-icon\" aria-hidden=\"true\">\n <it-icon name=\"search\" size=\"sm\"></it-icon>\n </span>\n\n <ng-container *ngIf=\"autocompleteResults$ | async as autocomplete\">\n <!-- Lista di autocompletamento -->\n <ul class=\"autocomplete-list\"\n [class.autocomplete-list-show]=\"autocomplete.relatedEntries?.length && showAutocompletion\">\n <li *ngFor=\"let entry of autocomplete.relatedEntries; trackBy: autocompleteItemTrackByValueFn\"\n (click)=\"onEntryClick(entry, $event)\">\n <a [href]=\"entry.link\">\n <ng-container *ngTemplateOutlet=\"autocompleteItemTemplate\"></ng-container>\n </a>\n <ng-template #autocompleteItemTemplate>\n <div class=\"avatar size-sm\" *ngIf=\"entry.avatarSrcPath\">\n <img [src]=\"entry.avatarSrcPath\" [alt]=\"entry.avatarAltText\">\n </div>\n <it-icon *ngIf=\"entry.icon\" [name]=\"entry.icon\" size=\"sm\"></it-icon>\n <span class=\"autocomplete-list-text\">\n <span [innerHTML]=\"entry.value | markMatchingText: autocomplete.searchedValue\"></span>\n <em *ngIf=\"entry.label\">{{entry.label}}</em>\n </span>\n </ng-template>\n </li>\n </ul>\n </ng-container>\n </ng-container>\n <!-- FINE gestione AUTOCOMPLETAMENTO -->\n\n <div *ngIf=\"isInvalid\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <div #customError>\n <ng-content select=\"[error]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customError.hasChildNodes()\">{{invalidMessage | async}}</ng-container>\n </div>\n</div>", styles: [".form-group label{z-index:1000}.form-group input:focus:not(.focus--mouse){box-shadow:inherit!important;border-color:inherit!important}.form-group .input-number .align-buttons{height:100%}.form-group .input-group-text:empty{display:none}.form-group label.empty-prepend-label{left:auto!important;max-width:100%!important}.form-group label:not(.active):has(+input:-webkit-autofill){transform:translateY(-75%)}\n"] }]
2221
2375
  }], propDecorators: { type: [{
2222
2376
  type: Input
2223
2377
  }], placeholder: [{
@@ -2240,6 +2394,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImpor
2240
2394
  type: Input
2241
2395
  }], percentage: [{
2242
2396
  type: Input
2397
+ }], symbol: [{
2398
+ type: Input
2243
2399
  }], adaptive: [{
2244
2400
  type: Input
2245
2401
  }], autocomplete: [{
@@ -2342,7 +2498,7 @@ class ItPaginationComponent {
2342
2498
  this.changerEvent.emit(value); // emit new changer value
2343
2499
  }
2344
2500
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2345
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItPaginationComponent, isStandalone: true, selector: "it-pagination[currentPage][pageNumbers]", inputs: { currentPage: "currentPage", pageNumbers: "pageNumbers", visiblePages: "visiblePages", alignment: "alignment", simpleMode: "simpleMode", textLinks: "textLinks", currentChanger: "currentChanger", changerValues: "changerValues", showJumpToPage: "showJumpToPage" }, outputs: { pageEvent: "pageEvent", changerEvent: "changerEvent" }, usesOnChanges: true, ngImport: i0, template: "<nav class=\"pagination-wrapper\"\n [class.justify-content-center]=\"alignment==='center'\"\n [class.justify-content-end]=\"alignment==='end'\"\n [class.pagination-total]=\"totalNumberText.hasChildNodes()\">\n\n <ul *ngIf=\"pages.length\" class=\"pagination\">\n <li class=\"page-item\" [class.disabled]=\"currentPage < 1\">\n <a class=\"page-link\" [class.text]=\"isTextLinks\" href=\"#\" (click)=\"pageChange($event, currentPage)\">\n <it-icon *ngIf=\"!isTextLinks\" name=\"chevron-left\" color=\"primary\"></it-icon>\n <span class=\"visually-hidden\">\n {{(isTextLinks ? 'it.core.page' : 'it.core.previous-page') | translate}}\n </span>\n <ng-container *ngIf=\"isTextLinks\">{{'it.core.previous' | translate}}</ng-container>\n </a>\n </li>\n\n <ng-container *ngIf=\"isSimpleMode; else defaultView\">\n <li class=\"page-item\"><span class=\"page-link\" aria-current=\"page\">{{currentPage + 1}}</span></li>\n <li class=\"page-item\"><span class=\"page-link\">/</span></li>\n <li class=\"page-item\"><span class=\"page-link\">{{pageNumbers}}</span></li>\n <li class=\"page-item visually-hidden\">\n <a class=\"page-link\" href=\"#\" aria-current=\"page\">\n {{'it.core.page-of-total'|translate : {page: (currentPage + 1), total: pageNumbers} }}\n </a>\n </li>\n </ng-container>\n <ng-template #defaultView>\n <ng-container *ngIf=\"pageNumbers > visiblePages && pages[0] >= 2\">\n <li class=\"page-item\">\n <a class=\"page-link\" href=\"#\" (click)=\"pageChange($event, 1)\">1</a>\n </li>\n <li class=\"page-item\" *ngIf=\"pages[0] >= 3\">\n <span class=\"page-link\">...</span>\n </li>\n </ng-container>\n\n <li class=\"page-item\" *ngFor=\"let page of pages\">\n <a class=\"page-link\" aria-current=\"page\" *ngIf=\"page === (currentPage + 1); else inactivePage\">\n <span class=\"d-inline-block d-sm-none\">{{'it.core.page'|translate}}</span> {{page}}\n </a>\n <ng-template #inactivePage>\n <a class=\"page-link\" href=\"#\" (click)=\"pageChange($event, page)\">{{page}}</a>\n </ng-template>\n </li>\n\n <ng-container *ngIf=\"pageNumbers > visiblePages && pages[pages.length - 1] < pageNumbers\">\n <li class=\"page-item\" *ngIf=\"pages[pages.length - 1] < (pageNumbers - 1)\">\n <span class=\"page-link\">...</span>\n </li>\n <li class=\"page-item\">\n <a class=\"page-link\" href=\"#\" (click)=\"pageChange($event, pageNumbers)\">{{pageNumbers}}</a>\n </li>\n </ng-container>\n </ng-template>\n\n <li class=\"page-item\" [class.disabled]=\"currentPage >= pageNumbers - 1\">\n <a class=\"page-link\" [class.text]=\"isTextLinks\" href=\"#\" (click)=\"pageChange($event, currentPage + 2)\">\n <span class=\"visually-hidden\">\n {{(isTextLinks ? 'it.core.page' : 'it.core.next-page') | translate}}\n </span>\n <ng-container *ngIf=\"isTextLinks\">{{'it.core.next' | translate}}</ng-container>\n <it-icon *ngIf=\"!isTextLinks\" name=\"chevron-right\" color=\"primary\"></it-icon>\n </a>\n </li>\n </ul>\n\n <it-dropdown *ngIf=\"currentChanger !== undefined\">\n <span button>{{currentChanger}} / {{'it.core.page' | translate | lowercase}}</span>\n <ng-container list>\n <it-dropdown-item *ngFor=\"let value of changerValues\" href=\"#\" externalLink=\"true\"\n (click)=\"changerChange($event, value)\">\n {{value}} / {{'it.core.page' | translate | lowercase}}\n </it-dropdown-item>\n </ng-container>\n </it-dropdown>\n\n <it-input *ngIf=\"isShowJumpToPage\" type=\"number\" [min]=\"1\" [max]=\"pageNumbers\"\n [label]=\"('it.core.go-to' | translate) + '...'\" [formControl]=\"jumpToPage\"></it-input>\n\n <p [class.d-none]=\"!totalNumberText.hasChildNodes()\" #totalNumberText>\n <ng-content></ng-content>\n </p>\n</nav>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: LowerCasePipe, name: "lowercase" }, { kind: "ngmodule", type: ItDropdownModule }, { kind: "component", type: ItDropdownComponent, selector: "it-dropdown", inputs: ["mode", "color", "direction", "fullWidth", "dark"], outputs: ["showEvent", "shownEvent", "hideEvent", "hiddenEvent"], exportAs: ["itDropdown"] }, { kind: "component", type: ItDropdownItemComponent, selector: "it-dropdown-item", inputs: ["divider", "active", "large", "iconName", "iconPosition"] }, { kind: "component", type: ItInputComponent, selector: "it-input", inputs: ["type", "placeholder", "description", "readonly", "maxDate", "minDate", "max", "min", "step", "currency", "percentage", "adaptive", "autocomplete", "autocompleteData", "autocompleteDebounceTime"], outputs: ["autocompleteSelectedEvent"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2501
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItPaginationComponent, isStandalone: true, selector: "it-pagination[currentPage][pageNumbers]", inputs: { currentPage: "currentPage", pageNumbers: "pageNumbers", visiblePages: "visiblePages", alignment: "alignment", simpleMode: "simpleMode", textLinks: "textLinks", currentChanger: "currentChanger", changerValues: "changerValues", showJumpToPage: "showJumpToPage" }, outputs: { pageEvent: "pageEvent", changerEvent: "changerEvent" }, usesOnChanges: true, ngImport: i0, template: "<nav class=\"pagination-wrapper\"\n [class.justify-content-center]=\"alignment==='center'\"\n [class.justify-content-end]=\"alignment==='end'\"\n [class.pagination-total]=\"totalNumberText.hasChildNodes()\">\n\n <ul *ngIf=\"pages.length\" class=\"pagination\">\n <li class=\"page-item\" [class.disabled]=\"currentPage < 1\">\n <a class=\"page-link\" [class.text]=\"isTextLinks\" href=\"#\" (click)=\"pageChange($event, currentPage)\">\n <it-icon *ngIf=\"!isTextLinks\" name=\"chevron-left\" color=\"primary\"></it-icon>\n <span class=\"visually-hidden\">\n {{(isTextLinks ? 'it.core.page' : 'it.core.previous-page') | translate}}\n </span>\n <ng-container *ngIf=\"isTextLinks\">{{'it.core.previous' | translate}}</ng-container>\n </a>\n </li>\n\n <ng-container *ngIf=\"isSimpleMode; else defaultView\">\n <li class=\"page-item\"><span class=\"page-link\" aria-current=\"page\">{{currentPage + 1}}</span></li>\n <li class=\"page-item\"><span class=\"page-link\">/</span></li>\n <li class=\"page-item\"><span class=\"page-link\">{{pageNumbers}}</span></li>\n <li class=\"page-item visually-hidden\">\n <a class=\"page-link\" href=\"#\" aria-current=\"page\">\n {{'it.core.page-of-total'|translate : {page: (currentPage + 1), total: pageNumbers} }}\n </a>\n </li>\n </ng-container>\n <ng-template #defaultView>\n <ng-container *ngIf=\"pageNumbers > visiblePages && pages[0] >= 2\">\n <li class=\"page-item\">\n <a class=\"page-link\" href=\"#\" (click)=\"pageChange($event, 1)\">1</a>\n </li>\n <li class=\"page-item\" *ngIf=\"pages[0] >= 3\">\n <span class=\"page-link\">...</span>\n </li>\n </ng-container>\n\n <li class=\"page-item\" *ngFor=\"let page of pages\">\n <a class=\"page-link\" aria-current=\"page\" *ngIf=\"page === (currentPage + 1); else inactivePage\">\n <span class=\"d-inline-block d-sm-none\">{{'it.core.page'|translate}}</span> {{page}}\n </a>\n <ng-template #inactivePage>\n <a class=\"page-link\" href=\"#\" (click)=\"pageChange($event, page)\">{{page}}</a>\n </ng-template>\n </li>\n\n <ng-container *ngIf=\"pageNumbers > visiblePages && pages[pages.length - 1] < pageNumbers\">\n <li class=\"page-item\" *ngIf=\"pages[pages.length - 1] < (pageNumbers - 1)\">\n <span class=\"page-link\">...</span>\n </li>\n <li class=\"page-item\">\n <a class=\"page-link\" href=\"#\" (click)=\"pageChange($event, pageNumbers)\">{{pageNumbers}}</a>\n </li>\n </ng-container>\n </ng-template>\n\n <li class=\"page-item\" [class.disabled]=\"currentPage >= pageNumbers - 1\">\n <a class=\"page-link\" [class.text]=\"isTextLinks\" href=\"#\" (click)=\"pageChange($event, currentPage + 2)\">\n <span class=\"visually-hidden\">\n {{(isTextLinks ? 'it.core.page' : 'it.core.next-page') | translate}}\n </span>\n <ng-container *ngIf=\"isTextLinks\">{{'it.core.next' | translate}}</ng-container>\n <it-icon *ngIf=\"!isTextLinks\" name=\"chevron-right\" color=\"primary\"></it-icon>\n </a>\n </li>\n </ul>\n\n <it-dropdown *ngIf=\"currentChanger !== undefined\">\n <span button>{{currentChanger}} / {{'it.core.page' | translate | lowercase}}</span>\n <ng-container list>\n <it-dropdown-item *ngFor=\"let value of changerValues\" href=\"#\" externalLink=\"true\"\n (click)=\"changerChange($event, value)\">\n {{value}} / {{'it.core.page' | translate | lowercase}}\n </it-dropdown-item>\n </ng-container>\n </it-dropdown>\n\n <it-input *ngIf=\"isShowJumpToPage\" type=\"number\" [min]=\"1\" [max]=\"pageNumbers\"\n [label]=\"('it.core.go-to' | translate) + '...'\" [formControl]=\"jumpToPage\"></it-input>\n\n <p [class.d-none]=\"!totalNumberText.hasChildNodes()\" #totalNumberText>\n <ng-content></ng-content>\n </p>\n</nav>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: LowerCasePipe, name: "lowercase" }, { kind: "ngmodule", type: ItDropdownModule }, { kind: "component", type: ItDropdownComponent, selector: "it-dropdown", inputs: ["mode", "color", "direction", "fullWidth", "dark"], outputs: ["showEvent", "shownEvent", "hideEvent", "hiddenEvent"], exportAs: ["itDropdown"] }, { kind: "component", type: ItDropdownItemComponent, selector: "it-dropdown-item", inputs: ["divider", "active", "large", "iconName", "iconPosition"] }, { kind: "component", type: ItInputComponent, selector: "it-input", inputs: ["type", "placeholder", "description", "readonly", "maxDate", "minDate", "max", "min", "step", "currency", "percentage", "symbol", "adaptive", "autocomplete", "autocompleteData", "autocompleteDebounceTime"], outputs: ["autocompleteSelectedEvent"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2346
2502
  }
2347
2503
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItPaginationComponent, decorators: [{
2348
2504
  type: Component,
@@ -4326,6 +4482,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImpor
4326
4482
  const core = [
4327
4483
  ItAccordionComponent,
4328
4484
  ItAlertComponent,
4485
+ ItAvatarGroupItemComponent,
4486
+ ItAvatarGroupComponent,
4487
+ ItAvatarDropdownComponent,
4488
+ ItAvatarDropdownItemComponent,
4489
+ ItAvatarDirective,
4329
4490
  ItBadgeDirective,
4330
4491
  ItButtonDirective,
4331
4492
  ItCalloutComponent,
@@ -4372,6 +4533,11 @@ class ItComponentsModule {
4372
4533
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
4373
4534
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.7", ngImport: i0, type: ItComponentsModule, imports: [ItAccordionComponent,
4374
4535
  ItAlertComponent,
4536
+ ItAvatarGroupItemComponent,
4537
+ ItAvatarGroupComponent,
4538
+ ItAvatarDropdownComponent,
4539
+ ItAvatarDropdownItemComponent,
4540
+ ItAvatarDirective,
4375
4541
  ItBadgeDirective,
4376
4542
  ItButtonDirective,
4377
4543
  ItCalloutComponent,
@@ -4402,6 +4568,11 @@ class ItComponentsModule {
4402
4568
  ItLanguageSwitcherComponent,
4403
4569
  MarkMatchingTextPipe], exports: [ItAccordionComponent,
4404
4570
  ItAlertComponent,
4571
+ ItAvatarGroupItemComponent,
4572
+ ItAvatarGroupComponent,
4573
+ ItAvatarDropdownComponent,
4574
+ ItAvatarDropdownItemComponent,
4575
+ ItAvatarDirective,
4405
4576
  ItBadgeDirective,
4406
4577
  ItButtonDirective,
4407
4578
  ItCalloutComponent,
@@ -4432,6 +4603,7 @@ class ItComponentsModule {
4432
4603
  ItLanguageSwitcherComponent,
4433
4604
  MarkMatchingTextPipe] }); }
4434
4605
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItComponentsModule, imports: [ItAlertComponent,
4606
+ ItAvatarDropdownComponent,
4435
4607
  ItCarouselModule,
4436
4608
  ItChipComponent,
4437
4609
  ItDimmerModule,
@@ -4645,5 +4817,5 @@ const IconNameArray = [
4645
4817
  * Generated bundle index. Do not edit.
4646
4818
  */
4647
4819
 
4648
- export { CAP_REGEX, DESIGN_ANGULAR_KIT_CONFIG, DesignAngularKitConfig, DesignAngularKitModule, EMAIL_REGEX, FileUtils, IBAN_REGEX, ITALIAN_TAX_CODE_REGEX, IconNameArray, ItAccordionComponent, ItAlertComponent, ItBackButtonComponent, ItBackToTopComponent, ItBadgeDirective, ItBreadcrumbComponent, ItBreadcrumbItemComponent, ItBreadcrumbsModule, ItButtonDirective, ItCalloutComponent, ItCardComponent, ItCarouselComponent, ItCarouselItemComponent, ItCarouselModule, ItCheckboxComponent, ItChipComponent, ItCollapseComponent, ItComponentsModule, ItDimmerButtonsComponent, ItDimmerComponent, ItDimmerIconComponent, ItDimmerModule, ItDropdownComponent, ItDropdownItemComponent, ItDropdownModule, ItErrorPageComponent, ItFormModule, ItForwardDirective, ItHeaderComponent, ItIconComponent, ItInputComponent, ItLanguageSwitcherComponent, ItLinkComponent, ItListComponent, ItListItemComponent, ItListModule, ItModalComponent, ItNotificationService, ItNotificationsComponent, ItPaginationComponent, ItPasswordInputComponent, ItPopoverDirective, ItProgressBarComponent, ItProgressButtonComponent, ItRadioButtonComponent, ItRangeComponent, ItRatingComponent, ItSelectComponent, ItSpinnerComponent, ItSteppersContainerComponent, ItSteppersItemComponent, ItSteppersModule, ItTabContainerComponent, ItTabItemComponent, ItTabModule, ItTableComponent, ItTextareaComponent, ItTooltipDirective, ItUploadDragDropComponent, ItUploadFileListComponent, ItValidators, MarkMatchingTextPipe, NotificationPosition, NotificationType, PHONE_NUMBER_REGEX, URL_REGEX, VAT_NUMBER_REGEX };
4820
+ export { CAP_REGEX, DESIGN_ANGULAR_KIT_CONFIG, DesignAngularKitConfig, DesignAngularKitModule, EMAIL_REGEX, FileUtils, IBAN_REGEX, ITALIAN_TAX_CODE_REGEX, IconNameArray, ItAccordionComponent, ItAlertComponent, ItAvatarDirective, ItAvatarDropdownComponent, ItAvatarDropdownItemComponent, ItAvatarGroupComponent, ItAvatarGroupItemComponent, ItBackButtonComponent, ItBackToTopComponent, ItBadgeDirective, ItBreadcrumbComponent, ItBreadcrumbItemComponent, ItBreadcrumbsModule, ItButtonDirective, ItCalloutComponent, ItCardComponent, ItCarouselComponent, ItCarouselItemComponent, ItCarouselModule, ItCheckboxComponent, ItChipComponent, ItCollapseComponent, ItComponentsModule, ItDimmerButtonsComponent, ItDimmerComponent, ItDimmerIconComponent, ItDimmerModule, ItDropdownComponent, ItDropdownItemComponent, ItDropdownModule, ItErrorPageComponent, ItFormModule, ItForwardDirective, ItHeaderComponent, ItIconComponent, ItInputComponent, ItLanguageSwitcherComponent, ItLinkComponent, ItListComponent, ItListItemComponent, ItListModule, ItModalComponent, ItNotificationService, ItNotificationsComponent, ItPaginationComponent, ItPasswordInputComponent, ItPopoverDirective, ItProgressBarComponent, ItProgressButtonComponent, ItRadioButtonComponent, ItRangeComponent, ItRatingComponent, ItSelectComponent, ItSpinnerComponent, ItSteppersContainerComponent, ItSteppersItemComponent, ItSteppersModule, ItTabContainerComponent, ItTabItemComponent, ItTabModule, ItTableComponent, ItTextareaComponent, ItTooltipDirective, ItUploadDragDropComponent, ItUploadFileListComponent, ItValidators, MarkMatchingTextPipe, NotificationPosition, NotificationType, PHONE_NUMBER_REGEX, URL_REGEX, VAT_NUMBER_REGEX };
4649
4821
  //# sourceMappingURL=design-angular-kit.mjs.map