@kris701/ez-ui 1.3.11 → 1.3.13

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.
@@ -476,6 +476,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
476
476
  class EzUIFileInput {
477
477
  files = signal([], /* @ts-ignore */
478
478
  ...(ngDevMode ? [{ debugName: "files" }] : /* istanbul ignore next */ []));
479
+ filesChange = new EventEmitter();
479
480
  disabled = false;
480
481
  accept = "*/*";
481
482
  clear() {
@@ -486,6 +487,7 @@ class EzUIFileInput {
486
487
  this.files.set([files]);
487
488
  else
488
489
  this.files.set(files);
490
+ this.filesChange.emit(this.files());
489
491
  }
490
492
  removeFile(file) {
491
493
  const files = this.files();
@@ -496,7 +498,7 @@ class EzUIFileInput {
496
498
  }
497
499
  }
498
500
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIFileInput, deps: [], target: i0.ɵɵFactoryTarget.Component });
499
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIFileInput, isStandalone: true, selector: "ezui-fileinput", inputs: { disabled: "disabled", accept: "accept" }, ngImport: i0, template: `
501
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIFileInput, isStandalone: true, selector: "ezui-fileinput", inputs: { disabled: "disabled", accept: "accept" }, outputs: { filesChange: "filesChange" }, ngImport: i0, template: `
500
502
  <label tuiInputFiles>
501
503
  <input
502
504
  #validator="tuiInputFilesValidator"
@@ -547,7 +549,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
547
549
  </tui-files>
548
550
  `
549
551
  }]
550
- }], propDecorators: { disabled: [{
552
+ }], propDecorators: { filesChange: [{
553
+ type: Output
554
+ }], disabled: [{
551
555
  type: Input
552
556
  }], accept: [{
553
557
  type: Input
@@ -2481,143 +2485,21 @@ class EzUIMenuBarSubDataList {
2481
2485
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIMenuBarSubDataList, isStandalone: true, selector: "tui-data-list[subdatalist]", inputs: { menuItemTemplate: "menuItemTemplate", subdatalist: "subdatalist" }, ngImport: i0, template: `
2482
2486
  @for(item of subdatalist; track $index){
2483
2487
  @if(item.items){
2484
- <button
2485
- class="subdatalistitem"
2486
- tuiOption
2487
- tuiChevron
2488
- [iconStart]="item.icon"
2489
- [disabled]="item.disabled"
2490
- [tuiDropdown]="dropdownContent"
2491
- [(tuiDropdownOpen)]="item.expanded"
2492
- tuiDropdownLimitWidth="fixed"
2493
- tuiDropdownSided="true"
2494
- [style]="item.style"
2495
- >
2496
- @if(menuItemTemplate){
2497
- <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2498
- }
2499
- @else {
2500
- {{item.label}}
2501
- }
2502
- </button>
2503
-
2504
- <ng-template #dropdownContent>
2505
- <tui-data-list
2506
- class="subdatalist"
2507
- [subdatalist]="item.items">
2508
- </tui-data-list>
2509
- </ng-template>
2510
- }
2511
- @else {
2512
- <button
2513
- class="subdatalistitem"
2514
- tuiOption
2515
- [iconStart]="item.icon"
2516
- [disabled]="item.disabled"
2517
- (click)="item.command()"
2518
- [style]="item.style"
2519
- >
2520
- @if(menuItemTemplate){
2521
- <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2522
- }
2523
- @else {
2524
- {{item.label}}
2525
- }
2526
- </button>
2527
- }
2528
- }
2529
- `, isInline: true, styles: [".subdatalist{display:flex;flex-direction:column}.subdatalistitem{padding:0 10px!important}\n"], dependencies: [{ kind: "component", type: EzUIMenuBarSubDataList, selector: "tui-data-list[subdatalist]", inputs: ["menuItemTemplate", "subdatalist"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3$1.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownAppearance", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { kind: "directive", type: i3$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i3$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownAuto],[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: i3$1.TuiDropdownPositionSided, selector: "[tuiDropdownSided]", inputs: ["tuiDropdownSided", "tuiDropdownSidedOffset"] }, { kind: "directive", type: TuiOption, selector: "button[tuiOption], a[tuiOption], label[tuiOption]", inputs: ["disabled"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }] });
2530
- }
2531
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIMenuBarSubDataList, decorators: [{
2532
- type: Component,
2533
- args: [{ selector: 'tui-data-list[subdatalist]', standalone: true, imports: [
2534
- CommonModule,
2535
- TuiDropdown,
2536
- TuiOption,
2537
- TuiChevron
2538
- ], template: `
2539
- @for(item of subdatalist; track $index){
2540
- @if(item.items){
2541
- <button
2542
- class="subdatalistitem"
2543
- tuiOption
2544
- tuiChevron
2545
- [iconStart]="item.icon"
2546
- [disabled]="item.disabled"
2547
- [tuiDropdown]="dropdownContent"
2548
- [(tuiDropdownOpen)]="item.expanded"
2549
- tuiDropdownLimitWidth="fixed"
2550
- tuiDropdownSided="true"
2551
- [style]="item.style"
2552
- >
2553
- @if(menuItemTemplate){
2554
- <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2555
- }
2556
- @else {
2557
- {{item.label}}
2558
- }
2559
- </button>
2560
-
2561
- <ng-template #dropdownContent>
2562
- <tui-data-list
2563
- class="subdatalist"
2564
- [subdatalist]="item.items">
2565
- </tui-data-list>
2566
- </ng-template>
2567
- }
2568
- @else {
2569
- <button
2570
- class="subdatalistitem"
2571
- tuiOption
2572
- [iconStart]="item.icon"
2573
- [disabled]="item.disabled"
2574
- (click)="item.command()"
2575
- [style]="item.style"
2576
- >
2577
- @if(menuItemTemplate){
2578
- <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2579
- }
2580
- @else {
2581
- {{item.label}}
2582
- }
2583
- </button>
2584
- }
2585
- }
2586
- `, styles: [".subdatalist{display:flex;flex-direction:column}.subdatalistitem{padding:0 10px!important}\n"] }]
2587
- }], propDecorators: { menuItemTemplate: [{
2588
- type: Input
2589
- }], subdatalist: [{
2590
- type: Input
2591
- }] } });
2592
- class EzUIMenuBar {
2593
- itemTemplate;
2594
- menuItemTemplate;
2595
- items = [];
2596
- ngOnChanges(changes) {
2597
- if (changes['items'] && changes['items'].currentValue != changes['items'].previousValue) {
2598
- this.items = changes['items'].currentValue;
2599
- }
2600
- }
2601
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIMenuBar, deps: [], target: i0.ɵɵFactoryTarget.Component });
2602
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIMenuBar, isStandalone: true, selector: "ezui-menubar", inputs: { items: "items" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: ["itemTemplate"], descendants: true }, { propertyName: "menuItemTemplate", first: true, predicate: ["menuItemTemplate"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
2603
- <div tuiGroup class="group" [collapsed]="true">
2604
- @for(item of items; track $index){
2605
- @if(item.items){
2488
+ @if(!item.hidden){
2606
2489
  <button
2607
- tuiButton
2490
+ class="subdatalistitem"
2491
+ tuiOption
2608
2492
  tuiChevron
2609
- size="s"
2610
- appearance="outline"
2611
- type="button"
2612
2493
  [iconStart]="item.icon"
2613
2494
  [disabled]="item.disabled"
2614
2495
  [tuiDropdown]="dropdownContent"
2615
2496
  [(tuiDropdownOpen)]="item.expanded"
2616
- tuiDropdownLimitWidth="fixed"
2497
+ tuiDropdownLimitWidth="auto"
2498
+ tuiDropdownSided="true"
2617
2499
  [style]="item.style"
2618
2500
  >
2619
- @if(itemTemplate){
2620
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2501
+ @if(menuItemTemplate){
2502
+ <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2621
2503
  }
2622
2504
  @else {
2623
2505
  {{item.label}}
@@ -2627,24 +2509,23 @@ class EzUIMenuBar {
2627
2509
  <ng-template #dropdownContent>
2628
2510
  <tui-data-list
2629
2511
  class="subdatalist"
2630
- [subdatalist]="item.items"
2631
- [menuItemTemplate]="menuItemTemplate">
2512
+ [subdatalist]="item.items">
2632
2513
  </tui-data-list>
2633
2514
  </ng-template>
2634
2515
  }
2635
- @else {
2516
+ }
2517
+ @else {
2518
+ @if(!item.hidden){
2636
2519
  <button
2637
- appearance="outline"
2638
- size="s"
2639
- tuiButton
2640
- type="button"
2520
+ class="subdatalistitem"
2521
+ tuiOption
2641
2522
  [iconStart]="item.icon"
2642
2523
  [disabled]="item.disabled"
2643
- (click)="item.command()"
2524
+ (click)="item.command(item)"
2644
2525
  [style]="item.style"
2645
2526
  >
2646
- @if(itemTemplate){
2647
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2527
+ @if(menuItemTemplate){
2528
+ <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2648
2529
  }
2649
2530
  @else {
2650
2531
  {{item.label}}
@@ -2652,38 +2533,34 @@ class EzUIMenuBar {
2652
2533
  </button>
2653
2534
  }
2654
2535
  }
2655
- </div>
2656
- `, isInline: true, styles: [".group{width:100%;white-space:nowrap}.subdatalist{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TuiGroup, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "collapsed", "rounded", "size"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],label[tuiButton],a[tuiIconButton],button[tuiIconButton],label[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i3$1.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownAppearance", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { kind: "directive", type: i3$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i3$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownAuto],[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }, { kind: "component", type: EzUIMenuBarSubDataList, selector: "tui-data-list[subdatalist]", inputs: ["menuItemTemplate", "subdatalist"] }] });
2536
+ }
2537
+ `, isInline: true, styles: [".subdatalist{display:flex;flex-direction:column;padding:10px}.subdatalistitem{padding:0 10px!important}\n"], dependencies: [{ kind: "component", type: EzUIMenuBarSubDataList, selector: "tui-data-list[subdatalist]", inputs: ["menuItemTemplate", "subdatalist"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3$1.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownAppearance", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { kind: "directive", type: i3$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i3$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownAuto],[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: i3$1.TuiDropdownPositionSided, selector: "[tuiDropdownSided]", inputs: ["tuiDropdownSided", "tuiDropdownSidedOffset"] }, { kind: "directive", type: TuiOption, selector: "button[tuiOption], a[tuiOption], label[tuiOption]", inputs: ["disabled"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }] });
2657
2538
  }
2658
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIMenuBar, decorators: [{
2539
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIMenuBarSubDataList, decorators: [{
2659
2540
  type: Component,
2660
- args: [{ selector: 'ezui-menubar', standalone: true, imports: [
2661
- FormsModule,
2541
+ args: [{ selector: 'tui-data-list[subdatalist]', standalone: true, imports: [
2662
2542
  CommonModule,
2663
- TuiGroup,
2664
- TuiButton,
2665
2543
  TuiDropdown,
2666
- TuiChevron,
2667
- EzUIMenuBarSubDataList
2544
+ TuiOption,
2545
+ TuiChevron
2668
2546
  ], template: `
2669
- <div tuiGroup class="group" [collapsed]="true">
2670
- @for(item of items; track $index){
2671
- @if(item.items){
2547
+ @for(item of subdatalist; track $index){
2548
+ @if(item.items){
2549
+ @if(!item.hidden){
2672
2550
  <button
2673
- tuiButton
2551
+ class="subdatalistitem"
2552
+ tuiOption
2674
2553
  tuiChevron
2675
- size="s"
2676
- appearance="outline"
2677
- type="button"
2678
2554
  [iconStart]="item.icon"
2679
2555
  [disabled]="item.disabled"
2680
2556
  [tuiDropdown]="dropdownContent"
2681
2557
  [(tuiDropdownOpen)]="item.expanded"
2682
- tuiDropdownLimitWidth="fixed"
2558
+ tuiDropdownLimitWidth="auto"
2559
+ tuiDropdownSided="true"
2683
2560
  [style]="item.style"
2684
2561
  >
2685
- @if(itemTemplate){
2686
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2562
+ @if(menuItemTemplate){
2563
+ <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2687
2564
  }
2688
2565
  @else {
2689
2566
  {{item.label}}
@@ -2693,24 +2570,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
2693
2570
  <ng-template #dropdownContent>
2694
2571
  <tui-data-list
2695
2572
  class="subdatalist"
2696
- [subdatalist]="item.items"
2697
- [menuItemTemplate]="menuItemTemplate">
2573
+ [subdatalist]="item.items">
2698
2574
  </tui-data-list>
2699
2575
  </ng-template>
2700
2576
  }
2701
- @else {
2577
+ }
2578
+ @else {
2579
+ @if(!item.hidden){
2702
2580
  <button
2703
- appearance="outline"
2704
- size="s"
2705
- tuiButton
2706
- type="button"
2581
+ class="subdatalistitem"
2582
+ tuiOption
2707
2583
  [iconStart]="item.icon"
2708
2584
  [disabled]="item.disabled"
2709
- (click)="item.command()"
2585
+ (click)="item.command(item)"
2710
2586
  [style]="item.style"
2711
2587
  >
2712
- @if(itemTemplate){
2713
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2588
+ @if(menuItemTemplate){
2589
+ <ng-container [ngTemplateOutlet]="menuItemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2714
2590
  }
2715
2591
  @else {
2716
2592
  {{item.label}}
@@ -2718,8 +2594,152 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
2718
2594
  </button>
2719
2595
  }
2720
2596
  }
2597
+ }
2598
+ `, styles: [".subdatalist{display:flex;flex-direction:column;padding:10px}.subdatalistitem{padding:0 10px!important}\n"] }]
2599
+ }], propDecorators: { menuItemTemplate: [{
2600
+ type: Input
2601
+ }], subdatalist: [{
2602
+ type: Input
2603
+ }] } });
2604
+ class EzUIMenuBar {
2605
+ itemTemplate;
2606
+ menuItemTemplate;
2607
+ items = [];
2608
+ ngOnChanges(changes) {
2609
+ if (changes['items'] && changes['items'].currentValue != changes['items'].previousValue) {
2610
+ this.items = changes['items'].currentValue;
2611
+ }
2612
+ }
2613
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIMenuBar, deps: [], target: i0.ɵɵFactoryTarget.Component });
2614
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIMenuBar, isStandalone: true, selector: "ezui-menubar", inputs: { items: "items" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: ["itemTemplate"], descendants: true }, { propertyName: "menuItemTemplate", first: true, predicate: ["menuItemTemplate"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
2615
+ <div tuiGroup class="group" [collapsed]="true">
2616
+ @for(item of items; track $index){
2617
+ @if(item.items){
2618
+ @if(!item.hidden){
2619
+ <button
2620
+ tuiButton
2621
+ tuiChevron
2622
+ size="s"
2623
+ appearance="outline"
2624
+ type="button"
2625
+ [iconStart]="item.icon"
2626
+ [disabled]="item.disabled"
2627
+ [tuiDropdown]="dropdownContent"
2628
+ [(tuiDropdownOpen)]="item.expanded"
2629
+ tuiDropdownLimitWidth="auto"
2630
+ [style]="item.style"
2631
+ >
2632
+ @if(itemTemplate){
2633
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2634
+ }
2635
+ @else {
2636
+ {{item.label}}
2637
+ }
2638
+ </button>
2639
+
2640
+ <ng-template #dropdownContent>
2641
+ <tui-data-list
2642
+ class="subdatalist"
2643
+ [subdatalist]="item.items"
2644
+ [menuItemTemplate]="menuItemTemplate">
2645
+ </tui-data-list>
2646
+ </ng-template>
2647
+ }
2648
+ }
2649
+ @else {
2650
+ @if(!item.hidden){
2651
+ <button
2652
+ appearance="outline"
2653
+ size="s"
2654
+ tuiButton
2655
+ type="button"
2656
+ [iconStart]="item.icon"
2657
+ [disabled]="item.disabled"
2658
+ (click)="item.command(item)"
2659
+ [style]="item.style"
2660
+ >
2661
+ @if(itemTemplate){
2662
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2663
+ }
2664
+ @else {
2665
+ {{item.label}}
2666
+ }
2667
+ </button>
2668
+ }
2669
+ }
2670
+ }
2671
+ </div>
2672
+ `, isInline: true, styles: [".group{width:100%;white-space:nowrap}.subdatalist{display:flex;flex-direction:column;padding:10px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TuiGroup, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "collapsed", "rounded", "size"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],label[tuiButton],a[tuiIconButton],button[tuiIconButton],label[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i3$1.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownAppearance", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { kind: "directive", type: i3$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i3$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownAuto],[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }, { kind: "component", type: EzUIMenuBarSubDataList, selector: "tui-data-list[subdatalist]", inputs: ["menuItemTemplate", "subdatalist"] }] });
2673
+ }
2674
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIMenuBar, decorators: [{
2675
+ type: Component,
2676
+ args: [{ selector: 'ezui-menubar', standalone: true, imports: [
2677
+ FormsModule,
2678
+ CommonModule,
2679
+ TuiGroup,
2680
+ TuiButton,
2681
+ TuiDropdown,
2682
+ TuiChevron,
2683
+ EzUIMenuBarSubDataList
2684
+ ], template: `
2685
+ <div tuiGroup class="group" [collapsed]="true">
2686
+ @for(item of items; track $index){
2687
+ @if(item.items){
2688
+ @if(!item.hidden){
2689
+ <button
2690
+ tuiButton
2691
+ tuiChevron
2692
+ size="s"
2693
+ appearance="outline"
2694
+ type="button"
2695
+ [iconStart]="item.icon"
2696
+ [disabled]="item.disabled"
2697
+ [tuiDropdown]="dropdownContent"
2698
+ [(tuiDropdownOpen)]="item.expanded"
2699
+ tuiDropdownLimitWidth="auto"
2700
+ [style]="item.style"
2701
+ >
2702
+ @if(itemTemplate){
2703
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2704
+ }
2705
+ @else {
2706
+ {{item.label}}
2707
+ }
2708
+ </button>
2709
+
2710
+ <ng-template #dropdownContent>
2711
+ <tui-data-list
2712
+ class="subdatalist"
2713
+ [subdatalist]="item.items"
2714
+ [menuItemTemplate]="menuItemTemplate">
2715
+ </tui-data-list>
2716
+ </ng-template>
2717
+ }
2718
+ }
2719
+ @else {
2720
+ @if(!item.hidden){
2721
+ <button
2722
+ appearance="outline"
2723
+ size="s"
2724
+ tuiButton
2725
+ type="button"
2726
+ [iconStart]="item.icon"
2727
+ [disabled]="item.disabled"
2728
+ (click)="item.command(item)"
2729
+ [style]="item.style"
2730
+ >
2731
+ @if(itemTemplate){
2732
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
2733
+ }
2734
+ @else {
2735
+ {{item.label}}
2736
+ }
2737
+ </button>
2738
+ }
2739
+ }
2740
+ }
2721
2741
  </div>
2722
- `, styles: [".group{width:100%;white-space:nowrap}.subdatalist{display:flex;flex-direction:column}\n"] }]
2742
+ `, styles: [".group{width:100%;white-space:nowrap}.subdatalist{display:flex;flex-direction:column;padding:10px}\n"] }]
2723
2743
  }], propDecorators: { itemTemplate: [{
2724
2744
  type: ContentChild,
2725
2745
  args: ['itemTemplate', { static: false }]
@@ -2743,19 +2763,26 @@ class EzUIMarkdownEditor {
2743
2763
  isFirst = true;
2744
2764
  isEditing = signal(false, /* @ts-ignore */
2745
2765
  ...(ngDevMode ? [{ debugName: "isEditing" }] : /* istanbul ignore next */ []));
2766
+ additionalMenuBarItemsRoot = {
2767
+ icon: 'plus',
2768
+ items: [],
2769
+ hidden: true,
2770
+ style: 'border-bottom-right-radius: 0px !important;border-top-right-radius: 0px !important;'
2771
+ };
2772
+ additionalMenuBarItems = [];
2746
2773
  items = signal([
2747
2774
  {
2748
2775
  icon: 'save',
2749
- command: async () => await this.toggleEdit(true),
2776
+ command: async (e) => await this.toggleEdit(true),
2750
2777
  style: 'border-bottom-left-radius: 0px !important;'
2751
2778
  },
2752
2779
  {
2753
2780
  icon: 'x',
2754
- command: async () => await this.toggleEdit(false)
2781
+ command: async (e) => await this.toggleEdit(false)
2755
2782
  },
2756
2783
  {
2757
2784
  label: 'B',
2758
- command: async () => {
2785
+ command: async (e) => {
2759
2786
  if (this.editor) {
2760
2787
  const editor = this.editor.nativeElement;
2761
2788
  const start = editor.selectionStart;
@@ -2768,7 +2795,7 @@ class EzUIMarkdownEditor {
2768
2795
  },
2769
2796
  {
2770
2797
  label: 'I',
2771
- command: async () => {
2798
+ command: async (e) => {
2772
2799
  if (this.editor) {
2773
2800
  const editor = this.editor.nativeElement;
2774
2801
  const start = editor.selectionStart;
@@ -2784,7 +2811,7 @@ class EzUIMarkdownEditor {
2784
2811
  items: [
2785
2812
  {
2786
2813
  label: 'H1',
2787
- command: async () => {
2814
+ command: async (e) => {
2788
2815
  if (this.editor) {
2789
2816
  const editor = this.editor.nativeElement;
2790
2817
  const start = editor.selectionStart;
@@ -2797,7 +2824,7 @@ class EzUIMarkdownEditor {
2797
2824
  },
2798
2825
  {
2799
2826
  label: 'H2',
2800
- command: async () => {
2827
+ command: async (e) => {
2801
2828
  if (this.editor) {
2802
2829
  const editor = this.editor.nativeElement;
2803
2830
  const start = editor.selectionStart;
@@ -2810,7 +2837,7 @@ class EzUIMarkdownEditor {
2810
2837
  },
2811
2838
  {
2812
2839
  label: 'H3',
2813
- command: async () => {
2840
+ command: async (e) => {
2814
2841
  if (this.editor) {
2815
2842
  const editor = this.editor.nativeElement;
2816
2843
  const start = editor.selectionStart;
@@ -2825,7 +2852,7 @@ class EzUIMarkdownEditor {
2825
2852
  },
2826
2853
  {
2827
2854
  icon: 'link',
2828
- command: async () => {
2855
+ command: async (e) => {
2829
2856
  if (this.editor) {
2830
2857
  const editor = this.editor.nativeElement;
2831
2858
  const start = editor.selectionStart;
@@ -2838,13 +2865,14 @@ class EzUIMarkdownEditor {
2838
2865
  },
2839
2866
  {
2840
2867
  icon: 'image',
2841
- command: async () => {
2868
+ command: async (e) => {
2842
2869
  if (this.editor) {
2843
2870
  this.fileUpload?.nativeElement.click();
2844
2871
  }
2845
2872
  },
2846
2873
  style: 'border-bottom-right-radius: 0px !important;border-top-right-radius: 0px !important;'
2847
2874
  },
2875
+ this.additionalMenuBarItemsRoot,
2848
2876
  ], /* @ts-ignore */
2849
2877
  ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
2850
2878
  async onFileSelected(event) {
@@ -2904,6 +2932,15 @@ class EzUIMarkdownEditor {
2904
2932
  }
2905
2933
  }
2906
2934
  }
2935
+ if (changes['additionalMenuBarItems']) {
2936
+ if (changes['additionalMenuBarItems'].currentValue != changes['additionalMenuBarItems'].previousValue) {
2937
+ this.additionalMenuBarItemsRoot.items = this.additionalMenuBarItems;
2938
+ this.additionalMenuBarItemsRoot.hidden =
2939
+ this.additionalMenuBarItems.length == 0 ||
2940
+ this.additionalMenuBarItems.filter(x => !x.hidden).length == 0;
2941
+ console.log(this.items());
2942
+ }
2943
+ }
2907
2944
  }
2908
2945
  async formatPreview() {
2909
2946
  if (this.preview) {
@@ -2925,7 +2962,7 @@ class EzUIMarkdownEditor {
2925
2962
  setTimeout(async () => await this.formatPreview(), 500);
2926
2963
  }
2927
2964
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIMarkdownEditor, deps: [], target: i0.ɵɵFactoryTarget.Component });
2928
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIMarkdownEditor, isStandalone: true, selector: "ezui-markdowneditor", inputs: { disabled: "disabled", slim: "slim", value: "value" }, outputs: { valueChange: "valueChange" }, host: { classAttribute: "flex w-full" }, viewQueries: [{ propertyName: "preview", first: true, predicate: ["preview"], descendants: true }, { propertyName: "editor", first: true, predicate: ["editor"], descendants: true }, { propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
2965
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIMarkdownEditor, isStandalone: true, selector: "ezui-markdowneditor", inputs: { disabled: "disabled", slim: "slim", value: "value", additionalMenuBarItems: "additionalMenuBarItems" }, outputs: { valueChange: "valueChange" }, host: { classAttribute: "flex w-full" }, viewQueries: [{ propertyName: "preview", first: true, predicate: ["preview"], descendants: true }, { propertyName: "editor", first: true, predicate: ["editor"], descendants: true }, { propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
2929
2966
  @if(isEditing() && !disabled){
2930
2967
  <div class="editor-container">
2931
2968
  <div class="editor">
@@ -3047,6 +3084,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
3047
3084
  type: Input
3048
3085
  }], valueChange: [{
3049
3086
  type: Output
3087
+ }], additionalMenuBarItems: [{
3088
+ type: Input
3050
3089
  }] } });
3051
3090
 
3052
3091
  class EzUIMultiSelect {
@@ -3476,52 +3515,56 @@ class EzUIPopoutMenuSubDataList {
3476
3515
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIPopoutMenuSubDataList, isStandalone: true, selector: "tui-data-list[popsubdatalist]", inputs: { itemTemplate: "itemTemplate", popsubdatalist: "popsubdatalist" }, ngImport: i0, template: `
3477
3516
  @for(item of popsubdatalist; track $index){
3478
3517
  @if(item.items){
3479
- <button
3480
- class="subdatalistitem"
3481
- tuiOption
3482
- tuiChevron
3483
- [iconStart]="item.icon"
3484
- [disabled]="item.disabled"
3485
- [tuiDropdown]="dropdownContent"
3486
- [(tuiDropdownOpen)]="item.expanded"
3487
- tuiDropdownLimitWidth="fixed"
3488
- tuiDropdownSided="true"
3489
- [style]="item.style"
3490
- >
3491
- @if(itemTemplate){
3492
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3493
- }
3494
- @else {
3495
- {{item.label}}
3496
- }
3497
- </button>
3518
+ @if(!item.hidden){
3519
+ <button
3520
+ class="subdatalistitem"
3521
+ tuiOption
3522
+ tuiChevron
3523
+ [iconStart]="item.icon"
3524
+ [disabled]="item.disabled"
3525
+ [tuiDropdown]="dropdownContent"
3526
+ [(tuiDropdownOpen)]="item.expanded"
3527
+ tuiDropdownLimitWidth="auto"
3528
+ tuiDropdownSided="true"
3529
+ [style]="item.style"
3530
+ >
3531
+ @if(itemTemplate){
3532
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3533
+ }
3534
+ @else {
3535
+ {{item.label}}
3536
+ }
3537
+ </button>
3498
3538
 
3499
- <ng-template #dropdownContent>
3500
- <div class="popdropdown">
3501
- <tui-data-list
3502
- class="popsubdatalist"
3503
- [popsubdatalist]="item.items"
3504
- [itemTemplate]="itemTemplate">
3505
- </tui-data-list>
3506
- </div>
3507
- </ng-template>
3539
+ <ng-template #dropdownContent>
3540
+ <div class="popdropdown">
3541
+ <tui-data-list
3542
+ class="popsubdatalist"
3543
+ [popsubdatalist]="item.items"
3544
+ [itemTemplate]="itemTemplate">
3545
+ </tui-data-list>
3546
+ </div>
3547
+ </ng-template>
3548
+ }
3508
3549
  }
3509
3550
  @else {
3510
- <button
3511
- class="subdatalistitem"
3512
- tuiOption
3513
- [iconStart]="item.icon"
3514
- [disabled]="item.disabled"
3515
- (click)="item.command()"
3516
- [style]="item.style"
3517
- >
3518
- @if(itemTemplate){
3519
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3520
- }
3521
- @else {
3522
- {{item.label}}
3523
- }
3524
- </button>
3551
+ @if(!item.hidden){
3552
+ <button
3553
+ class="subdatalistitem"
3554
+ tuiOption
3555
+ [iconStart]="item.icon"
3556
+ [disabled]="item.disabled"
3557
+ (click)="item.command(item)"
3558
+ [style]="item.style"
3559
+ >
3560
+ @if(itemTemplate){
3561
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3562
+ }
3563
+ @else {
3564
+ {{item.label}}
3565
+ }
3566
+ </button>
3567
+ }
3525
3568
  }
3526
3569
  }
3527
3570
  `, isInline: true, styles: [".popdropdown{margin:10px}.popsubdatalist{display:flex;flex-direction:column}.subdatalistitem{padding:0 10px!important}\n"], dependencies: [{ kind: "component", type: EzUIPopoutMenuSubDataList, selector: "tui-data-list[popsubdatalist]", inputs: ["itemTemplate", "popsubdatalist"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3$1.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownAppearance", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { kind: "directive", type: i3$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i3$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownAuto],[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: i3$1.TuiDropdownPositionSided, selector: "[tuiDropdownSided]", inputs: ["tuiDropdownSided", "tuiDropdownSidedOffset"] }, { kind: "directive", type: TuiOption, selector: "button[tuiOption], a[tuiOption], label[tuiOption]", inputs: ["disabled"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }] });
@@ -3536,52 +3579,56 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
3536
3579
  ], template: `
3537
3580
  @for(item of popsubdatalist; track $index){
3538
3581
  @if(item.items){
3539
- <button
3540
- class="subdatalistitem"
3541
- tuiOption
3542
- tuiChevron
3543
- [iconStart]="item.icon"
3544
- [disabled]="item.disabled"
3545
- [tuiDropdown]="dropdownContent"
3546
- [(tuiDropdownOpen)]="item.expanded"
3547
- tuiDropdownLimitWidth="fixed"
3548
- tuiDropdownSided="true"
3549
- [style]="item.style"
3550
- >
3551
- @if(itemTemplate){
3552
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3553
- }
3554
- @else {
3555
- {{item.label}}
3556
- }
3557
- </button>
3582
+ @if(!item.hidden){
3583
+ <button
3584
+ class="subdatalistitem"
3585
+ tuiOption
3586
+ tuiChevron
3587
+ [iconStart]="item.icon"
3588
+ [disabled]="item.disabled"
3589
+ [tuiDropdown]="dropdownContent"
3590
+ [(tuiDropdownOpen)]="item.expanded"
3591
+ tuiDropdownLimitWidth="auto"
3592
+ tuiDropdownSided="true"
3593
+ [style]="item.style"
3594
+ >
3595
+ @if(itemTemplate){
3596
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3597
+ }
3598
+ @else {
3599
+ {{item.label}}
3600
+ }
3601
+ </button>
3558
3602
 
3559
- <ng-template #dropdownContent>
3560
- <div class="popdropdown">
3561
- <tui-data-list
3562
- class="popsubdatalist"
3563
- [popsubdatalist]="item.items"
3564
- [itemTemplate]="itemTemplate">
3565
- </tui-data-list>
3566
- </div>
3567
- </ng-template>
3603
+ <ng-template #dropdownContent>
3604
+ <div class="popdropdown">
3605
+ <tui-data-list
3606
+ class="popsubdatalist"
3607
+ [popsubdatalist]="item.items"
3608
+ [itemTemplate]="itemTemplate">
3609
+ </tui-data-list>
3610
+ </div>
3611
+ </ng-template>
3612
+ }
3568
3613
  }
3569
3614
  @else {
3570
- <button
3571
- class="subdatalistitem"
3572
- tuiOption
3573
- [iconStart]="item.icon"
3574
- [disabled]="item.disabled"
3575
- (click)="item.command()"
3576
- [style]="item.style"
3577
- >
3578
- @if(itemTemplate){
3579
- <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3580
- }
3581
- @else {
3582
- {{item.label}}
3583
- }
3584
- </button>
3615
+ @if(!item.hidden){
3616
+ <button
3617
+ class="subdatalistitem"
3618
+ tuiOption
3619
+ [iconStart]="item.icon"
3620
+ [disabled]="item.disabled"
3621
+ (click)="item.command(item)"
3622
+ [style]="item.style"
3623
+ >
3624
+ @if(itemTemplate){
3625
+ <ng-container [ngTemplateOutlet]="itemTemplate" [ngTemplateOutletContext]="{ $implicit: item }"></ng-container>
3626
+ }
3627
+ @else {
3628
+ {{item.label}}
3629
+ }
3630
+ </button>
3631
+ }
3585
3632
  }
3586
3633
  }
3587
3634
  `, styles: [".popdropdown{margin:10px}.popsubdatalist{display:flex;flex-direction:column}.subdatalistitem{padding:0 10px!important}\n"] }]
@@ -3615,6 +3662,7 @@ class EzUIPopoutMenu {
3615
3662
  [appearance]="appearance"
3616
3663
  [tuiAppearanceState]="dropdownOpen() ? 'active' : null"
3617
3664
  [tuiDropdown]="dropdownContent"
3665
+ tuiDropdownLimitWidth="auto"
3618
3666
  [(tuiDropdownOpen)]="dropdownOpen"
3619
3667
  (click)="onMenuOpen.emit(dropdownOpen())"
3620
3668
  >
@@ -3629,7 +3677,7 @@ class EzUIPopoutMenu {
3629
3677
  </div>
3630
3678
  </ng-template>
3631
3679
  </button>
3632
- `, isInline: true, styles: [".popdropdown{margin:10px}.popsubdatalist{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],label[tuiButton],a[tuiIconButton],button[tuiIconButton],label[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i3$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i3$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownAuto],[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "component", type: EzUIPopoutMenuSubDataList, selector: "tui-data-list[popsubdatalist]", inputs: ["itemTemplate", "popsubdatalist"] }] });
3680
+ `, isInline: true, styles: [".popdropdown{margin:10px}.popsubdatalist{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],label[tuiButton],a[tuiIconButton],button[tuiIconButton],label[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i3$1.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownAppearance], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownAppearance", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { kind: "directive", type: i3$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i3$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownAuto],[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "component", type: EzUIPopoutMenuSubDataList, selector: "tui-data-list[popsubdatalist]", inputs: ["itemTemplate", "popsubdatalist"] }] });
3633
3681
  }
3634
3682
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIPopoutMenu, decorators: [{
3635
3683
  type: Component,
@@ -3648,6 +3696,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
3648
3696
  [appearance]="appearance"
3649
3697
  [tuiAppearanceState]="dropdownOpen() ? 'active' : null"
3650
3698
  [tuiDropdown]="dropdownContent"
3699
+ tuiDropdownLimitWidth="auto"
3651
3700
  [(tuiDropdownOpen)]="dropdownOpen"
3652
3701
  (click)="onMenuOpen.emit(dropdownOpen())"
3653
3702
  >
@@ -4295,16 +4344,18 @@ class EzUIShowMoreText {
4295
4344
  }
4296
4345
  }
4297
4346
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: EzUIShowMoreText, deps: [], target: i0.ɵɵFactoryTarget.Component });
4298
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.0", type: EzUIShowMoreText, isStandalone: true, selector: "ezui-showmoretext", inputs: { value: "value", maxCharacters: "maxCharacters" }, usesOnChanges: true, ngImport: i0, template: `
4347
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: EzUIShowMoreText, isStandalone: true, selector: "ezui-showmoretext", inputs: { value: "value", maxCharacters: "maxCharacters" }, usesOnChanges: true, ngImport: i0, template: `
4299
4348
  <tui-elastic-container>
4300
4349
  <div [innerHTML]="current()"></div>
4301
- <button
4302
- tuiLink
4303
- type="button"
4304
- (click)="toggle()"
4305
- >
4306
- Show {{ current() === value ? 'less' : 'more' }}
4307
- </button>
4350
+ @if(value.length > maxCharacters){
4351
+ <button
4352
+ tuiLink
4353
+ type="button"
4354
+ (click)="toggle()"
4355
+ >
4356
+ Show {{ current() === value ? 'less' : 'more' }}
4357
+ </button>
4358
+ }
4308
4359
  </tui-elastic-container>
4309
4360
  `, isInline: true, styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "component", type: TuiElasticContainer, selector: "tui-elastic-container" }, { kind: "directive", type: TuiLink, selector: "a[tuiLink], button[tuiLink]" }] });
4310
4361
  }
@@ -4318,13 +4369,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
4318
4369
  ], template: `
4319
4370
  <tui-elastic-container>
4320
4371
  <div [innerHTML]="current()"></div>
4321
- <button
4322
- tuiLink
4323
- type="button"
4324
- (click)="toggle()"
4325
- >
4326
- Show {{ current() === value ? 'less' : 'more' }}
4327
- </button>
4372
+ @if(value.length > maxCharacters){
4373
+ <button
4374
+ tuiLink
4375
+ type="button"
4376
+ (click)="toggle()"
4377
+ >
4378
+ Show {{ current() === value ? 'less' : 'more' }}
4379
+ </button>
4380
+ }
4328
4381
  </tui-elastic-container>
4329
4382
  ` }]
4330
4383
  }], propDecorators: { value: [{