@clr/angular 16.5.3 → 16.6.0

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.
@@ -13366,6 +13366,19 @@ var ClrDatagridSortOrder;
13366
13366
  ClrDatagridSortOrder[ClrDatagridSortOrder["DESC"] = -1] = "DESC";
13367
13367
  })(ClrDatagridSortOrder || (ClrDatagridSortOrder = {}));
13368
13368
 
13369
+ /*
13370
+ * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
13371
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
13372
+ * This software is released under MIT license.
13373
+ * The full license information can be found in LICENSE in the root directory of this project.
13374
+ */
13375
+ // @TODO The top two are not used now, which is probably a performance drag that was broken along the way.
13376
+ // There was a previous pattern to hide everything to do computation then display, for Firefox, needs revisiting.
13377
+ const NO_LAYOUT_CLASS = 'datagrid-no-layout';
13378
+ const COMPUTE_WIDTH_CLASS = 'datagrid-computing-columns-width';
13379
+ const STRICT_WIDTH_CLASS = 'datagrid-fixed-width';
13380
+ const HIDDEN_COLUMN_CLASS = 'datagrid-hidden-column';
13381
+
13369
13382
  /*
13370
13383
  * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
13371
13384
  * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
@@ -13800,15 +13813,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
13800
13813
  * The full license information can be found in LICENSE in the root directory of this project.
13801
13814
  */
13802
13815
  class ClrDatagridColumn extends DatagridFilterRegistrar {
13803
- constructor(_sort, filters, vcr, detailService, changeDetectorRef) {
13816
+ constructor(el, _sort, filters, vcr, detailService, changeDetectorRef) {
13804
13817
  super(filters);
13818
+ this.el = el;
13805
13819
  this._sort = _sort;
13806
13820
  this.vcr = vcr;
13807
13821
  this.detailService = detailService;
13808
13822
  this.changeDetectorRef = changeDetectorRef;
13809
13823
  this.sortOrderChange = new EventEmitter();
13810
13824
  this.filterValueChange = new EventEmitter();
13811
- this.showSeparator = true;
13812
13825
  /**
13813
13826
  * A custom filter for this column that can be provided in the projected content
13814
13827
  */
@@ -13827,9 +13840,20 @@ class ClrDatagridColumn extends DatagridFilterRegistrar {
13827
13840
  * Subscription to the sort service changes
13828
13841
  */
13829
13842
  this.subscriptions = [];
13843
+ this._showSeparator = true;
13830
13844
  this.subscriptions.push(this.listenForSortingChanges());
13831
13845
  this.subscriptions.push(this.listenForDetailPaneChanges());
13832
13846
  }
13847
+ get isHidden() {
13848
+ return this.el.nativeElement.classList.contains(HIDDEN_COLUMN_CLASS);
13849
+ }
13850
+ get showSeparator() {
13851
+ return this._showSeparator;
13852
+ }
13853
+ set showSeparator(value) {
13854
+ this._showSeparator = value;
13855
+ this.changeDetectorRef.markForCheck();
13856
+ }
13833
13857
  // TODO: We might want to make this an enum in the future
13834
13858
  get colType() {
13835
13859
  return this._colType;
@@ -14005,8 +14029,6 @@ class ClrDatagridColumn extends DatagridFilterRegistrar {
14005
14029
  return this.detailService.stateChange.subscribe(state => {
14006
14030
  if (this.showSeparator !== !state) {
14007
14031
  this.showSeparator = !state;
14008
- // Have to manually change because of OnPush
14009
- this.changeDetectorRef.markForCheck();
14010
14032
  }
14011
14033
  });
14012
14034
  }
@@ -14039,7 +14061,7 @@ class ClrDatagridColumn extends DatagridFilterRegistrar {
14039
14061
  }
14040
14062
  }
14041
14063
  }
14042
- ClrDatagridColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDatagridColumn, deps: [{ token: Sort }, { token: FiltersProvider }, { token: i0.ViewContainerRef }, { token: DetailService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
14064
+ ClrDatagridColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDatagridColumn, deps: [{ token: i0.ElementRef }, { token: Sort }, { token: FiltersProvider }, { token: i0.ViewContainerRef }, { token: DetailService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
14043
14065
  ClrDatagridColumn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrDatagridColumn, selector: "clr-dg-column", inputs: { filterStringPlaceholder: ["clrFilterStringPlaceholder", "filterStringPlaceholder"], filterNumberMaxPlaceholder: ["clrFilterNumberMaxPlaceholder", "filterNumberMaxPlaceholder"], filterNumberMinPlaceholder: ["clrFilterNumberMinPlaceholder", "filterNumberMinPlaceholder"], colType: ["clrDgColType", "colType"], field: ["clrDgField", "field"], sortBy: ["clrDgSortBy", "sortBy"], sortOrder: ["clrDgSortOrder", "sortOrder"], updateFilterValue: ["clrFilterValue", "updateFilterValue"] }, outputs: { sortOrderChange: "clrDgSortOrderChange", filterValueChange: "clrFilterValueChange" }, host: { attributes: { "role": "columnheader" }, properties: { "class.datagrid-column": "true", "attr.aria-sort": "ariaSort" } }, queries: [{ propertyName: "projectedFilter", first: true, predicate: CustomFilter, descendants: true }], usesInheritance: true, usesOnChanges: true, hostDirectives: [{ directive: ClrPopoverHostDirective }], ngImport: i0, template: `
14044
14066
  <div class="datagrid-column-flex">
14045
14067
  <button class="datagrid-column-title" *ngIf="sortable" (click)="sort()" type="button">
@@ -14134,7 +14156,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
14134
14156
  },
14135
14157
  changeDetection: ChangeDetectionStrategy.OnPush,
14136
14158
  }]
14137
- }], ctorParameters: function () { return [{ type: Sort }, { type: FiltersProvider }, { type: i0.ViewContainerRef }, { type: DetailService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { filterStringPlaceholder: [{
14159
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Sort }, { type: FiltersProvider }, { type: i0.ViewContainerRef }, { type: DetailService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { filterStringPlaceholder: [{
14138
14160
  type: Input,
14139
14161
  args: ['clrFilterStringPlaceholder']
14140
14162
  }], filterNumberMaxPlaceholder: [{
@@ -15735,19 +15757,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
15735
15757
  type: Injectable
15736
15758
  }], ctorParameters: function () { return [{ type: FiltersProvider }, { type: Sort }, { type: Page }, { type: StateDebouncer }]; } });
15737
15759
 
15738
- /*
15739
- * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
15740
- * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
15741
- * This software is released under MIT license.
15742
- * The full license information can be found in LICENSE in the root directory of this project.
15743
- */
15744
- // @TODO The top two are not used now, which is probably a performance drag that was broken along the way.
15745
- // There was a previous pattern to hide everything to do computation then display, for Firefox, needs revisiting.
15746
- const NO_LAYOUT_CLASS = 'datagrid-no-layout';
15747
- const COMPUTE_WIDTH_CLASS = 'datagrid-computing-columns-width';
15748
- const STRICT_WIDTH_CLASS = 'datagrid-fixed-width';
15749
- const HIDDEN_COLUMN_CLASS = 'datagrid-hidden-column';
15750
-
15751
15760
  /*
15752
15761
  * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
15753
15762
  * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
@@ -15848,7 +15857,7 @@ class DatagridRowRenderer {
15848
15857
  }
15849
15858
  }
15850
15859
  DatagridRowRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: DatagridRowRenderer, deps: [{ token: ColumnsService }], target: i0.ɵɵFactoryTarget.Directive });
15851
- DatagridRowRenderer.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: DatagridRowRenderer, selector: "clr-dg-row, clr-dg-row-detail", queries: [{ propertyName: "cells", predicate: DatagridCellRenderer }], ngImport: i0 });
15860
+ DatagridRowRenderer.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: DatagridRowRenderer, selector: "clr-dg-row, clr-dg-row-detail", queries: [{ propertyName: "expandableRow", first: true, predicate: i0.forwardRef(function () { return DatagridRowRenderer; }), descendants: true }, { propertyName: "cells", predicate: DatagridCellRenderer }], ngImport: i0 });
15852
15861
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: DatagridRowRenderer, decorators: [{
15853
15862
  type: Directive,
15854
15863
  args: [{
@@ -15857,6 +15866,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
15857
15866
  }], ctorParameters: function () { return [{ type: ColumnsService }]; }, propDecorators: { cells: [{
15858
15867
  type: ContentChildren,
15859
15868
  args: [DatagridCellRenderer]
15869
+ }], expandableRow: [{
15870
+ type: ContentChild,
15871
+ args: [forwardRef(() => DatagridRowRenderer)]
15860
15872
  }] } });
15861
15873
 
15862
15874
  /*
@@ -18201,6 +18213,7 @@ class DatagridMainRenderer {
18201
18213
  this.rows.forEach(row => {
18202
18214
  if (row?.cells.length === this.columnsService.columns.length) {
18203
18215
  row.cells.get(columnIndex).setWidth(state);
18216
+ row.expandableRow?.cells.get(columnIndex)?.setWidth(state);
18204
18217
  }
18205
18218
  });
18206
18219
  break;
@@ -18209,8 +18222,10 @@ class DatagridMainRenderer {
18209
18222
  this.rows.forEach(row => {
18210
18223
  if (row.cells && row.cells.length) {
18211
18224
  row.cells.get(columnIndex).setHidden(state);
18225
+ row.expandableRow?.cells.get(columnIndex)?.setHidden(state);
18212
18226
  }
18213
18227
  });
18228
+ this.updateColumnSeparatorsVisibility();
18214
18229
  this.keyNavigation.resetKeyGrid();
18215
18230
  break;
18216
18231
  case DatagridColumnChanges.INITIALIZE:
@@ -18218,6 +18233,7 @@ class DatagridMainRenderer {
18218
18233
  this.headers.get(columnIndex).setHidden(state);
18219
18234
  this.rows.forEach(row => {
18220
18235
  row.setCellsState();
18236
+ row.expandableRow?.setCellsState();
18221
18237
  });
18222
18238
  }
18223
18239
  break;
@@ -18252,9 +18268,20 @@ class DatagridMainRenderer {
18252
18268
  return false;
18253
18269
  }
18254
18270
  }
18271
+ updateColumnSeparatorsVisibility() {
18272
+ const visibleColumns = this.datagrid.columns.filter(column => !column.isHidden);
18273
+ visibleColumns.forEach((column, index) => {
18274
+ if (index === visibleColumns.length - 1) {
18275
+ column.showSeparator = false;
18276
+ }
18277
+ else if (!column.showSeparator) {
18278
+ column.showSeparator = true;
18279
+ }
18280
+ });
18281
+ }
18255
18282
  }
18256
18283
  DatagridMainRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: DatagridMainRenderer, deps: [{ token: ClrDatagrid }, { token: DatagridRenderOrganizer }, { token: Items }, { token: Page }, { token: DomAdapter }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DetailService }, { token: TableSizeService }, { token: ColumnsService }, { token: i0.NgZone }, { token: KeyNavigationGridController }], target: i0.ɵɵFactoryTarget.Directive });
18257
- DatagridMainRenderer.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: DatagridMainRenderer, selector: "clr-datagrid", providers: [{ provide: DomAdapter, useFactory: domAdapterFactory, deps: [PLATFORM_ID] }], queries: [{ propertyName: "headers", predicate: DatagridHeaderRenderer }, { propertyName: "rows", predicate: DatagridRowRenderer, descendants: true }], ngImport: i0 });
18284
+ DatagridMainRenderer.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: DatagridMainRenderer, selector: "clr-datagrid", providers: [{ provide: DomAdapter, useFactory: domAdapterFactory, deps: [PLATFORM_ID] }], queries: [{ propertyName: "headers", predicate: DatagridHeaderRenderer }, { propertyName: "rows", predicate: DatagridRowRenderer }], ngImport: i0 });
18258
18285
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: DatagridMainRenderer, decorators: [{
18259
18286
  type: Directive,
18260
18287
  args: [{
@@ -18266,7 +18293,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
18266
18293
  args: [DatagridHeaderRenderer]
18267
18294
  }], rows: [{
18268
18295
  type: ContentChildren,
18269
- args: [DatagridRowRenderer, { descendants: true }]
18296
+ args: [DatagridRowRenderer]
18270
18297
  }] } });
18271
18298
 
18272
18299
  /*
@@ -22486,6 +22513,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
22486
22513
  args: [ClrTabContent, { static: true }]
22487
22514
  }] } });
22488
22515
 
22516
+ /*
22517
+ * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
22518
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
22519
+ * This software is released under MIT license.
22520
+ * The full license information can be found in LICENSE in the root directory of this project.
22521
+ */
22522
+ class ClrTabAction {
22523
+ }
22524
+ ClrTabAction.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTabAction, deps: [], target: i0.ɵɵFactoryTarget.Directive });
22525
+ ClrTabAction.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ClrTabAction, selector: "[clrTabAction]", host: { attributes: { "tabindex": "0" } }, ngImport: i0 });
22526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTabAction, decorators: [{
22527
+ type: Directive,
22528
+ args: [{
22529
+ selector: '[clrTabAction]',
22530
+ host: {
22531
+ tabindex: '0',
22532
+ },
22533
+ }]
22534
+ }] });
22535
+
22489
22536
  /*
22490
22537
  * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
22491
22538
  * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
@@ -22570,6 +22617,7 @@ class ClrTabs {
22570
22617
  }
22571
22618
  ngAfterContentInit() {
22572
22619
  this.subscriptions.push(this.listenForTabLinkChanges());
22620
+ this.subscriptions.push(this.listedForTabsActionsChanges());
22573
22621
  if (typeof this.ifActiveService.current === 'undefined' && this.tabLinkDirectives[0]) {
22574
22622
  this.tabLinkDirectives[0].activate();
22575
22623
  }
@@ -22631,7 +22679,10 @@ class ClrTabs {
22631
22679
  // This is because we have another handler on the tabOverflowTrigger element itself.
22632
22680
  // As this handler method is on the document level so the event bubbles up to it and conflicts
22633
22681
  // with the tabOverflowTrigger handler resulting in opening the tab overflow and closing it right away consecutively.
22634
- if (event.target === tabOverflowTrigger || tabOverflowTrigger.contains(event.target)) {
22682
+ const isTabsAction = this.tabsActions.some(action => action.nativeElement.contains(event.target));
22683
+ if (event.target === tabOverflowTrigger ||
22684
+ tabOverflowTrigger.contains(event.target) ||
22685
+ isTabsAction) {
22635
22686
  return;
22636
22687
  }
22637
22688
  // Move current to the last visible focusable item
@@ -22639,15 +22690,24 @@ class ClrTabs {
22639
22690
  this.keyFocus.moveTo(this.overflowPosition - 1);
22640
22691
  }
22641
22692
  }
22693
+ setTabLinkElements() {
22694
+ this._tabLinkDirectives = this.tabs.map(tab => tab.tabLink);
22695
+ this.tabLinkElements = this._tabLinkDirectives.map(tab => tab.el.nativeElement);
22696
+ if (this.tabsActions && this.tabsActions) {
22697
+ this.tabLinkElements.push(...this.tabsActions.map(action => action.nativeElement));
22698
+ }
22699
+ }
22642
22700
  listenForTabLinkChanges() {
22643
- return this.tabs.changes.pipe(startWith(this.tabs.map(tab => tab.tabLink))).subscribe(() => {
22644
- this._tabLinkDirectives = this.tabs.map(tab => tab.tabLink);
22645
- this.tabLinkElements = this._tabLinkDirectives.map(tab => tab.el.nativeElement);
22646
- });
22701
+ return this.tabs.changes
22702
+ .pipe(startWith(this.tabs.map(tab => tab.tabLink)))
22703
+ .subscribe(() => this.setTabLinkElements());
22704
+ }
22705
+ listedForTabsActionsChanges() {
22706
+ return this.tabsActions.changes.subscribe(() => this.setTabLinkElements());
22647
22707
  }
22648
22708
  }
22649
22709
  ClrTabs.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTabs, deps: [{ token: IfActiveService }, { token: ClrPopoverToggleService }, { token: TabsService }, { token: TABS_ID }, { token: ClrCommonStringsService }], target: i0.ɵɵFactoryTarget.Component });
22650
- ClrTabs.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrTabs, selector: "clr-tabs", inputs: { layout: ["clrLayout", "layout"] }, host: { properties: { "class.tabs-vertical": "this.isVertical" } }, providers: [IfActiveService, TabsService, TABS_ID_PROVIDER], queries: [{ propertyName: "tabs", predicate: ClrTab }], viewQueries: [{ propertyName: "keyFocus", first: true, predicate: ClrKeyFocus, descendants: true, static: true }, { propertyName: "tabOverflowEl", first: true, predicate: ClrTabOverflowContent, descendants: true, read: ElementRef }, { propertyName: "tabContentViewContainer", first: true, predicate: ["tabContentViewContainer"], descendants: true, read: ViewContainerRef, static: true }], hostDirectives: [{ directive: ClrPopoverHostDirective }], ngImport: i0, template: `
22710
+ ClrTabs.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrTabs, selector: "clr-tabs", inputs: { layout: ["clrLayout", "layout"] }, host: { properties: { "class.tabs-vertical": "this.isVertical" } }, providers: [IfActiveService, TabsService, TABS_ID_PROVIDER], queries: [{ propertyName: "tabsActions", predicate: ClrTabAction, descendants: true, read: ElementRef }, { propertyName: "tabs", predicate: ClrTab }], viewQueries: [{ propertyName: "keyFocus", first: true, predicate: ClrKeyFocus, descendants: true, static: true }, { propertyName: "tabOverflowEl", first: true, predicate: ClrTabOverflowContent, descendants: true, read: ElementRef }, { propertyName: "tabContentViewContainer", first: true, predicate: ["tabContentViewContainer"], descendants: true, read: ViewContainerRef, static: true }], hostDirectives: [{ directive: ClrPopoverHostDirective }], ngImport: i0, template: `
22651
22711
  <ul
22652
22712
  class="nav"
22653
22713
  role="tablist"
@@ -22703,6 +22763,7 @@ ClrTabs.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2
22703
22763
  </clr-tab-overflow-content>
22704
22764
  </div>
22705
22765
  </ng-container>
22766
+ <ng-content select="clr-tabs-actions"></ng-content>
22706
22767
  </ul>
22707
22768
  <ng-container #tabContentViewContainer></ng-container>
22708
22769
  `, isInline: true, dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: ClrKeyFocus, selector: "[clrKeyFocus]", inputs: ["clrDirection", "clrFocusOnLoad", "clrKeyFocus"], outputs: ["clrFocusChange"] }, { kind: "component", type: ClrTabOverflowContent, selector: "clr-tab-overflow-content" }] });
@@ -22766,6 +22827,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
22766
22827
  </clr-tab-overflow-content>
22767
22828
  </div>
22768
22829
  </ng-container>
22830
+ <ng-content select="clr-tabs-actions"></ng-content>
22769
22831
  </ul>
22770
22832
  <ng-container #tabContentViewContainer></ng-container>
22771
22833
  `,
@@ -22778,6 +22840,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
22778
22840
  }] }, { type: ClrCommonStringsService }]; }, propDecorators: { keyFocus: [{
22779
22841
  type: ViewChild,
22780
22842
  args: [ClrKeyFocus, { static: true }]
22843
+ }], tabsActions: [{
22844
+ type: ContentChildren,
22845
+ args: [ClrTabAction, { read: ElementRef, descendants: true }]
22781
22846
  }], tabs: [{
22782
22847
  type: ContentChildren,
22783
22848
  args: [ClrTab]
@@ -22795,6 +22860,43 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
22795
22860
  args: ['tabContentViewContainer', { static: true, read: ViewContainerRef }]
22796
22861
  }] } });
22797
22862
 
22863
+ /*
22864
+ * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
22865
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
22866
+ * This software is released under MIT license.
22867
+ * The full license information can be found in LICENSE in the root directory of this project.
22868
+ */
22869
+ class ClrTabsActions {
22870
+ constructor() {
22871
+ this.position = 'right';
22872
+ }
22873
+ }
22874
+ ClrTabsActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTabsActions, deps: [], target: i0.ɵɵFactoryTarget.Component });
22875
+ ClrTabsActions.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrTabsActions, selector: "clr-tabs-actions", inputs: { position: "position" }, host: { properties: { "class.tabs-actions": "true", "attr.position": "this.position" } }, ngImport: i0, template: `
22876
+ <div class="tabs-actions-wrapper">
22877
+ <ng-content></ng-content>
22878
+ </div>
22879
+ `, isInline: true });
22880
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTabsActions, decorators: [{
22881
+ type: Component,
22882
+ args: [{
22883
+ selector: 'clr-tabs-actions',
22884
+ template: `
22885
+ <div class="tabs-actions-wrapper">
22886
+ <ng-content></ng-content>
22887
+ </div>
22888
+ `,
22889
+ host: {
22890
+ '[class.tabs-actions]': 'true',
22891
+ },
22892
+ }]
22893
+ }], propDecorators: { position: [{
22894
+ type: Input
22895
+ }, {
22896
+ type: HostBinding,
22897
+ args: ['attr.position']
22898
+ }] } });
22899
+
22798
22900
  /*
22799
22901
  * Copyright (c) 2016-2024 Broadcom. All Rights Reserved.
22800
22902
  * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
@@ -22807,6 +22909,8 @@ const CLR_TABS_DIRECTIVES = [
22807
22909
  ClrTabs,
22808
22910
  ClrTabOverflowContent,
22809
22911
  ClrTabLink,
22912
+ ClrTabAction,
22913
+ ClrTabsActions,
22810
22914
  TabsWillyWonka,
22811
22915
  ActiveOompaLoompa,
22812
22916
  ];
@@ -22821,12 +22925,16 @@ ClrTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
22821
22925
  ClrTabs,
22822
22926
  ClrTabOverflowContent,
22823
22927
  ClrTabLink,
22928
+ ClrTabAction,
22929
+ ClrTabsActions,
22824
22930
  TabsWillyWonka,
22825
22931
  ActiveOompaLoompa], imports: [CommonModule, ClrConditionalModule, ClrIconModule, ClrTemplateRefModule, ClrKeyFocusModule], exports: [ClrTabContent,
22826
22932
  ClrTab,
22827
22933
  ClrTabs,
22828
22934
  ClrTabOverflowContent,
22829
22935
  ClrTabLink,
22936
+ ClrTabAction,
22937
+ ClrTabsActions,
22830
22938
  TabsWillyWonka,
22831
22939
  ActiveOompaLoompa, ClrConditionalModule] });
22832
22940
  ClrTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTabsModule, imports: [CommonModule, ClrConditionalModule, ClrIconModule, ClrTemplateRefModule, ClrKeyFocusModule, ClrConditionalModule] });
@@ -27907,5 +28015,5 @@ const CLR_MENU_POSITIONS = [
27907
28015
  * Generated bundle index. Do not edit.
27908
28016
  */
27909
28017
 
27910
- export { CHANGE_KEYS, CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIDEPANEL_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems, ClrDatagridItemsTrackBy, ClrDatagridModule, ClrDatagridPageSize, ClrDatagridPagination, ClrDatagridPlaceholder, ClrDatagridRow, ClrDatagridRowDetail, ClrDatagridSortOrder, ClrDatalist, ClrDatalistContainer, ClrDatalistInput, ClrDatalistModule, ClrDateContainer, ClrDateInput, ClrDateInputValidator, ClrDatepickerModule, ClrDatepickerViewManager, ClrDay, ClrDaypicker, ClrDestroyService, ClrDropdown, ClrDropdownItem, ClrDropdownMenu, ClrDropdownModule, ClrDropdownTrigger, ClrEmphasisModule, ClrExpandableAnimation, ClrFileInput, ClrFileInputContainer, ClrFileInputModule, ClrFileInputValidator, ClrFileInputValueAccessor, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrForm, ClrFormLayout, ClrFormsModule, ClrHeader, ClrIconCustomTag, ClrIconModule, ClrIfActive, ClrIfDetail, ClrIfError, ClrIfExpanded, ClrIfOpen, ClrIfSuccess, ClrInput, ClrInputContainer, ClrInputModule, ClrLabel, ClrLayout, ClrLayoutModule, ClrLoading, ClrLoadingButton, ClrLoadingButtonModule, ClrLoadingModule, ClrLoadingState, ClrMainContainer, ClrMainContainerModule, ClrModal, ClrModalBody, ClrModalConfigurationService, ClrModalModule, ClrMonthpicker, ClrNavLevel, ClrNavigationModule, ClrOption, ClrOptionItems, ClrOptionSelected, ClrOptions, ClrPassword, ClrPasswordContainer, ClrPasswordModule, ClrPopoverAnchor, ClrPopoverContent, ClrPopoverEventsService, ClrPopoverHostDirective, ClrPopoverModule, ClrPopoverPositionService, ClrPopoverToggleService, ClrProgressBar, ClrProgressBarModule, ClrRadio, ClrRadioContainer, ClrRadioModule, ClrRadioWrapper, ClrRange, ClrRangeContainer, ClrRangeModule, ClrRecursiveForOf, ClrSelect, ClrSelectContainer, ClrSelectModule, ClrSelectedState, ClrSide, ClrSidePanel, ClrSidePanelModule, ClrSignpost, ClrSignpostContent, ClrSignpostModule, ClrSignpostTrigger, ClrSpinner, ClrSpinnerModule, ClrStackBlock, ClrStackContentInput, ClrStackHeader, ClrStackView, ClrStackViewCustomTags, ClrStackViewLabel, ClrStackViewModule, ClrStandaloneCdkTrapFocus, ClrStepButton, ClrStepButtonType, ClrStepper, ClrStepperModule, ClrStepperPanel, ClrStopEscapePropagationDirective, ClrTab, ClrTabContent, ClrTabLink, ClrTabOverflowContent, ClrTabs, ClrTabsModule, ClrTextarea, ClrTextareaContainer, ClrTextareaModule, ClrTimeline, ClrTimelineLayout, ClrTimelineModule, ClrTimelineStep, ClrTimelineStepDescription, ClrTimelineStepHeader, ClrTimelineStepState, ClrTimelineStepTitle, ClrTooltip, ClrTooltipContent, ClrTooltipModule, ClrTooltipTrigger, ClrTree, ClrTreeNode, ClrTreeNodeLink, ClrTreeViewModule, ClrVerticalNav, ClrVerticalNavGroup, ClrVerticalNavGroupChildren, ClrVerticalNavIcon, ClrVerticalNavLink, ClrVerticalNavModule, ClrWizard, ClrWizardButton, ClrWizardHeaderAction, ClrWizardModule, ClrWizardPage, ClrWizardPageButtons, ClrWizardPageHeaderActions, ClrWizardPageNavTitle, ClrWizardPageTitle, ClrWizardStepnav, ClrWizardStepnavItem, ClrWizardTitle, ClrYearpicker, DEFAULT_BUTTON_TYPES, DatagridNumericFilter, DatagridPropertyComparator, DatagridPropertyNumericFilter, DatagridPropertyStringFilter, DatagridStringFilter, EXPANDABLE_ANIMATION_DIRECTIVES, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, IS_TOGGLE, IS_TOGGLE_PROVIDER, LoadingListener, MainContainerWillyWonka, NavDetectionOompaLoompa, TOGGLE_SERVICE, TOGGLE_SERVICE_PROVIDER, ToggleServiceFactory, WrappedFormControl, collapse, commonStringsDefault, fade, fadeSlide, isToggleFactory, slide, AccordionOompaLoompa as ÇlrAccordionOompaLoompa, AccordionWillyWonka as ÇlrAccordionWillyWonka, ActionableOompaLoompa as ÇlrActionableOompaLoompa, ActiveOompaLoompa as ÇlrActiveOompaLoompa, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton, DatagridCellRenderer as ÇlrDatagridCellRenderer, DatagridDetailRegisterer as ÇlrDatagridDetailRegisterer, DatagridHeaderRenderer as ÇlrDatagridHeaderRenderer, DatagridMainRenderer as ÇlrDatagridMainRenderer, DatagridRowRenderer as ÇlrDatagridRowRenderer, ClrDatagridSelectionCellDirective as ÇlrDatagridSelectionCellDirective, ClrDatagridVirtualScrollDirective as ÇlrDatagridVirtualScrollDirective, DatagridWillyWonka as ÇlrDatagridWillyWonka, ExpandableOompaLoompa as ÇlrExpandableOompaLoompa, StepperOompaLoompa as ÇlrStepperOompaLoompa, StepperWillyWonka as ÇlrStepperWillyWonka, TabsWillyWonka as ÇlrTabsWillyWonka, WrappedCell as ÇlrWrappedCell, WrappedColumn as ÇlrWrappedColumn, WrappedRow as ÇlrWrappedRow };
28018
+ export { CHANGE_KEYS, CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIDEPANEL_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems, ClrDatagridItemsTrackBy, ClrDatagridModule, ClrDatagridPageSize, ClrDatagridPagination, ClrDatagridPlaceholder, ClrDatagridRow, ClrDatagridRowDetail, ClrDatagridSortOrder, ClrDatalist, ClrDatalistContainer, ClrDatalistInput, ClrDatalistModule, ClrDateContainer, ClrDateInput, ClrDateInputValidator, ClrDatepickerModule, ClrDatepickerViewManager, ClrDay, ClrDaypicker, ClrDestroyService, ClrDropdown, ClrDropdownItem, ClrDropdownMenu, ClrDropdownModule, ClrDropdownTrigger, ClrEmphasisModule, ClrExpandableAnimation, ClrFileInput, ClrFileInputContainer, ClrFileInputModule, ClrFileInputValidator, ClrFileInputValueAccessor, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrForm, ClrFormLayout, ClrFormsModule, ClrHeader, ClrIconCustomTag, ClrIconModule, ClrIfActive, ClrIfDetail, ClrIfError, ClrIfExpanded, ClrIfOpen, ClrIfSuccess, ClrInput, ClrInputContainer, ClrInputModule, ClrLabel, ClrLayout, ClrLayoutModule, ClrLoading, ClrLoadingButton, ClrLoadingButtonModule, ClrLoadingModule, ClrLoadingState, ClrMainContainer, ClrMainContainerModule, ClrModal, ClrModalBody, ClrModalConfigurationService, ClrModalModule, ClrMonthpicker, ClrNavLevel, ClrNavigationModule, ClrOption, ClrOptionItems, ClrOptionSelected, ClrOptions, ClrPassword, ClrPasswordContainer, ClrPasswordModule, ClrPopoverAnchor, ClrPopoverContent, ClrPopoverEventsService, ClrPopoverHostDirective, ClrPopoverModule, ClrPopoverPositionService, ClrPopoverToggleService, ClrProgressBar, ClrProgressBarModule, ClrRadio, ClrRadioContainer, ClrRadioModule, ClrRadioWrapper, ClrRange, ClrRangeContainer, ClrRangeModule, ClrRecursiveForOf, ClrSelect, ClrSelectContainer, ClrSelectModule, ClrSelectedState, ClrSide, ClrSidePanel, ClrSidePanelModule, ClrSignpost, ClrSignpostContent, ClrSignpostModule, ClrSignpostTrigger, ClrSpinner, ClrSpinnerModule, ClrStackBlock, ClrStackContentInput, ClrStackHeader, ClrStackView, ClrStackViewCustomTags, ClrStackViewLabel, ClrStackViewModule, ClrStandaloneCdkTrapFocus, ClrStepButton, ClrStepButtonType, ClrStepper, ClrStepperModule, ClrStepperPanel, ClrStopEscapePropagationDirective, ClrTab, ClrTabAction, ClrTabContent, ClrTabLink, ClrTabOverflowContent, ClrTabs, ClrTabsActions, ClrTabsModule, ClrTextarea, ClrTextareaContainer, ClrTextareaModule, ClrTimeline, ClrTimelineLayout, ClrTimelineModule, ClrTimelineStep, ClrTimelineStepDescription, ClrTimelineStepHeader, ClrTimelineStepState, ClrTimelineStepTitle, ClrTooltip, ClrTooltipContent, ClrTooltipModule, ClrTooltipTrigger, ClrTree, ClrTreeNode, ClrTreeNodeLink, ClrTreeViewModule, ClrVerticalNav, ClrVerticalNavGroup, ClrVerticalNavGroupChildren, ClrVerticalNavIcon, ClrVerticalNavLink, ClrVerticalNavModule, ClrWizard, ClrWizardButton, ClrWizardHeaderAction, ClrWizardModule, ClrWizardPage, ClrWizardPageButtons, ClrWizardPageHeaderActions, ClrWizardPageNavTitle, ClrWizardPageTitle, ClrWizardStepnav, ClrWizardStepnavItem, ClrWizardTitle, ClrYearpicker, DEFAULT_BUTTON_TYPES, DatagridNumericFilter, DatagridPropertyComparator, DatagridPropertyNumericFilter, DatagridPropertyStringFilter, DatagridStringFilter, EXPANDABLE_ANIMATION_DIRECTIVES, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, IS_TOGGLE, IS_TOGGLE_PROVIDER, LoadingListener, MainContainerWillyWonka, NavDetectionOompaLoompa, TOGGLE_SERVICE, TOGGLE_SERVICE_PROVIDER, ToggleServiceFactory, WrappedFormControl, collapse, commonStringsDefault, fade, fadeSlide, isToggleFactory, slide, AccordionOompaLoompa as ÇlrAccordionOompaLoompa, AccordionWillyWonka as ÇlrAccordionWillyWonka, ActionableOompaLoompa as ÇlrActionableOompaLoompa, ActiveOompaLoompa as ÇlrActiveOompaLoompa, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton, DatagridCellRenderer as ÇlrDatagridCellRenderer, DatagridDetailRegisterer as ÇlrDatagridDetailRegisterer, DatagridHeaderRenderer as ÇlrDatagridHeaderRenderer, DatagridMainRenderer as ÇlrDatagridMainRenderer, DatagridRowRenderer as ÇlrDatagridRowRenderer, ClrDatagridSelectionCellDirective as ÇlrDatagridSelectionCellDirective, ClrDatagridVirtualScrollDirective as ÇlrDatagridVirtualScrollDirective, DatagridWillyWonka as ÇlrDatagridWillyWonka, ExpandableOompaLoompa as ÇlrExpandableOompaLoompa, StepperOompaLoompa as ÇlrStepperOompaLoompa, StepperWillyWonka as ÇlrStepperWillyWonka, TabsWillyWonka as ÇlrTabsWillyWonka, WrappedCell as ÇlrWrappedCell, WrappedColumn as ÇlrWrappedColumn, WrappedRow as ÇlrWrappedRow };
27911
28019
  //# sourceMappingURL=clr-angular.mjs.map