igniteui-angular 21.2.11 → 21.2.12

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.
@@ -4,7 +4,7 @@ import { inject, ElementRef, HostListener, ChangeDetectionStrategy, Component, H
4
4
  import { NgTemplateOutlet, NgClass, NgStyle } from '@angular/common';
5
5
  import { takeUntil, take, timeout, first } from 'rxjs/operators';
6
6
  import { IgxGridHeaderComponent, IgxPivotColumnResizingService, PivotRowLayoutType, PivotUtil, SortingIndexPipe, IgxGridHeaderGroupComponent, IGX_GRID_BASE, IgxColumnMovingDragDirective, IgxColumnMovingDropDirective, IgxPivotResizeHandleDirective, IgxHeaderGroupStylePipe, IgxGridHeaderRowComponent, DropPosition, IgxGridExcelStyleFilteringComponent, IgxExcelStyleColumnOperationsTemplateDirective, IgxExcelStyleFilterOperationsTemplateDirective, IgxExcelStyleSearchComponent, IgxGridTopLevelColumns, IgxGridNavigationService, HEADER_KEYS, ROW_EXPAND_KEYS, ROW_COLLAPSE_KEYS, PivotSummaryPosition, IgxFilteringService, DimensionValuesFilteringStrategy, IgxColumnComponent, DEFAULT_PIVOT_KEYS, PivotRowDimensionsStrategy, PivotColumnDimensionsStrategy, GridBaseAPIService, IgxRowDirective, IgxGridCellComponent, IgxGridNotGroupedPipe, IgxGridCellStylesPipe, IgxGridTransactionStatePipe, FilterMode, PivotDimensionType, NoopPivotDimensionsStrategy, IgxPivotDateDimension, IgxColumnGroupComponent, IgxGridBodyDirective, IgxGridDragSelectDirective, IgxPivotGridColumnResizerComponent, IgxGridRowClassesPipe, IgxGridRowStylesPipe, IgxGridCRUDService, IgxGridValidationService, IgxGridSummaryService, IgxGridSelectionService, IgxColumnResizingService, IGX_GRID_SERVICE_BASE, WatchChanges, IgxGridFooterComponent, IgxAdvancedFilteringDialogComponent, IgxRowExpandedIndicatorDirective, IgxRowCollapsedIndicatorDirective, IgxHeaderExpandedIndicatorDirective, IgxHeaderCollapsedIndicatorDirective, IgxExcelStyleHeaderIconDirective, IgxSortAscendingHeaderIconDirective, IgxSortDescendingHeaderIconDirective, IgxSortHeaderIconDirective, IgxDragIndicatorIconDirective, IgxRowDragGhostDirective, IgxGridStateDirective, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent, IgxGridActionsBaseDirective, IgxGridActionButtonComponent, IgxFilterCellTemplateDirective, IgxSummaryTemplateDirective, IgxCellTemplateDirective, IgxCellValidationErrorDirective, IgxCellHeaderTemplateDirective, IgxCellFooterTemplateDirective, IgxCellEditorTemplateDirective, IgxCollapsibleIndicatorTemplateDirective, IgxColumnLayoutComponent, IgxColumnActionsComponent, IgxColumnHidingDirective, IgxColumnPinningDirective, IgxRowSelectorDirective, IgxGroupByRowSelectorDirective, IgxHeadSelectorDirective, IgxCSVTextDirective, IgxExcelTextDirective, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxGridToolbarTitleComponent, IgxGridToolbarDirective, IgxExcelStyleHeaderComponent, IgxExcelStyleSortingComponent, IgxExcelStylePinningComponent, IgxExcelStyleHidingComponent, IgxExcelStyleSelectingComponent, IgxExcelStyleClearFiltersComponent, IgxExcelStyleConditionalFilterComponent, IgxExcelStyleMovingComponent, IgxExcelStyleLoadingValuesTemplateDirective } from 'igniteui-angular/grids/core';
7
- import { SortingDirection, VerticalAlignment, AbsoluteScrollStrategy, AutoPositionStrategy, FilteringExpressionsTree, FilteringLogic, DefaultSortingStrategy, GridColumnDataType, parseDate, cloneArray, FilterUtil, DataUtil, columnFieldPath, resolveNestedPath, DefaultDataCloneStrategy, ɵSize as _Size, onResourceChangeHandle, resizeObservable, IgxOverlayOutletDirective } from 'igniteui-angular/core';
7
+ import { SortingDirection, VerticalAlignment, AbsoluteScrollStrategy, AutoPositionStrategy, FilteringExpressionsTree, FilteringLogic, DefaultSortingStrategy, GridColumnDataType, parseDate, cloneArray, FilterUtil, DataUtil, columnFieldPath, resolveNestedPath, DefaultDataCloneStrategy, ɵSize as _Size, onResourceChangeHandle, resizeObservable, runAfterRenderOnce, IgxOverlayOutletDirective } from 'igniteui-angular/core';
8
8
  import { IgxIconComponent } from 'igniteui-angular/icon';
9
9
  import { IgxDropDirective, IgxGridForOfDirective, IgxTemplateOutletDirective, IgxToggleDirective, IgxForOfSyncService, IgxForOfScrollSyncService, IgxDragDirective, IgxDragHandleDirective } from 'igniteui-angular/directives';
10
10
  import { IgxChipsAreaComponent, IgxChipComponent } from 'igniteui-angular/chips';
@@ -2636,6 +2636,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
2636
2636
  this._pivotConfiguration = value;
2637
2637
  this.emitInitEvents(this._pivotConfiguration);
2638
2638
  this.filteringExpressionsTree = PivotUtil.buildExpressionTree(value);
2639
+ this.setDateDimensionsLocaleData();
2639
2640
  if (!this._init) {
2640
2641
  this.setupColumns();
2641
2642
  }
@@ -2972,6 +2973,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
2972
2973
  this.setupColumns();
2973
2974
  // Bind to onResourceChange after the columns have initialized the first time to avoid premature initialization.
2974
2975
  onResourceChangeHandle(this.destroy$, () => {
2976
+ this.setDateDimensionsLocaleData();
2975
2977
  // Since the columns are kinda static, due to assigning DisplayName on init, they need to be regenerated.
2976
2978
  this.setupColumns();
2977
2979
  }, this);
@@ -3532,6 +3534,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
3532
3534
  * This parameter is optional. If not set it will add it to the end of the collection.
3533
3535
  */
3534
3536
  insertDimensionAt(dimension, targetCollectionType, index) {
3537
+ this.setDateDimensionsLocaleData([dimension]);
3535
3538
  const targetCollection = this.getDimensionsByType(targetCollectionType);
3536
3539
  if (index !== undefined) {
3537
3540
  targetCollection.splice(index, 0, dimension);
@@ -4027,7 +4030,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
4027
4030
  super.calculateGridSizes(recalcFeatureWidth);
4028
4031
  if (this.hasDimensionsToAutosize) {
4029
4032
  this.cdr.detectChanges();
4030
- this.zone.onStable.pipe(first()).subscribe(() => {
4033
+ runAfterRenderOnce(this.injector, () => {
4031
4034
  requestAnimationFrame(() => {
4032
4035
  this.autoSizeDimensionsInView();
4033
4036
  });
@@ -4319,6 +4322,36 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
4319
4322
  this.pipeTrigger++;
4320
4323
  }
4321
4324
  }
4325
+ /**
4326
+ * Sets the locale and resourceStrings data based on the grid's properties for all IgxPivotDateDimensions in the config.
4327
+ * By default search all dimensions (even not enabled).
4328
+ * @param entryDimensions Entry dimension on which to check for IgxPivotDateDimension instead of the default.
4329
+ */
4330
+ setDateDimensionsLocaleData(entryDimensions) {
4331
+ const topDimensions = entryDimensions ?? [...this.allDimensions];
4332
+ for (const dim of topDimensions) {
4333
+ let foundDateDim;
4334
+ if (dim instanceof IgxPivotDateDimension) {
4335
+ foundDateDim = dim;
4336
+ }
4337
+ else if (dim.childLevel) {
4338
+ var curChild = dim.childLevel;
4339
+ while (curChild) {
4340
+ if (curChild instanceof IgxPivotDateDimension) {
4341
+ foundDateDim = curChild;
4342
+ break;
4343
+ }
4344
+ curChild = curChild.childLevel;
4345
+ }
4346
+ }
4347
+ if (foundDateDim) {
4348
+ foundDateDim.resourceStrings = this.resourceStrings;
4349
+ if (this.locale) {
4350
+ foundDateDim.locale = this.locale;
4351
+ }
4352
+ }
4353
+ }
4354
+ }
4322
4355
  /**
4323
4356
  * @hidden @internal
4324
4357
  */