igniteui-angular 22.0.3 → 22.0.4

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.
@@ -15569,7 +15569,7 @@ class IgxPivotDateDimension {
15569
15569
  memberFunction: (rec) => {
15570
15570
  const recordValue = PivotUtil.extractValueFromDimension(inBaseDimension, rec);
15571
15571
  const dateValue = recordValue ? getDateFormatter().createDateFromValue(recordValue) : null;
15572
- return recordValue ? getDateFormatter().formatDateTime(dateValue, undefined, { month: 'long' }) : rec['Months'];
15572
+ return recordValue ? getDateFormatter().formatDateTime(dateValue, this.locale, { month: 'long' }) : rec['Months'];
15573
15573
  },
15574
15574
  enabled: true,
15575
15575
  childLevel: baseDimension
@@ -22056,6 +22056,7 @@ const HEADER_KEYS = new Set([...Array.from(NAVIGATION_KEYS), 'escape', 'esc', 'l
22056
22056
  /** This symbol corresponds to the Alt + L combination under MAC. */
22057
22057
  '¬']);
22058
22058
 
22059
+ const VERTICAL_VIRTUALIZATION_NAV_KEYS = new Set(['arrowup', 'up', 'arrowdown', 'down', 'home', 'end']);
22059
22060
  /** @hidden */
22060
22061
  class IgxGridNavigationService {
22061
22062
  get activeNode() {
@@ -22118,8 +22119,7 @@ class IgxGridNavigationService {
22118
22119
  this.grid.selectionService.keyboardStateOnKeydown(this.activeNode, shift, shift && key === 'tab');
22119
22120
  }
22120
22121
  const position = this.getNextPosition(this.activeNode.row, this.activeNode.column, key, shift, ctrl, event);
22121
- const shouldNotifyVirtualizedKeyboardSelection = ctrl && (key === 'arrowup' || key === 'up' || key === 'arrowdown' || key === 'down') &&
22122
- this.shouldPerformVerticalScroll(position.rowIndex, position.colIndex);
22122
+ const shouldNotifyVirtualizedKeyboardSelection = this.shouldNotifyVirtualizedKeyboardSelection(key, position.rowIndex, position.colIndex);
22123
22123
  if (NAVIGATION_KEYS.has(key)) {
22124
22124
  event.preventDefault();
22125
22125
  this.navigateInBody(position.rowIndex, position.colIndex, (obj) => {
@@ -22235,6 +22235,15 @@ class IgxGridNavigationService {
22235
22235
  return !targetRow || targetRow.offsetTop < Math.abs(this.containerTopOffset)
22236
22236
  || containerHeight && endTopOffset - containerHeight > 5;
22237
22237
  }
22238
+ shouldNotifyVirtualizedKeyboardSelection(key, rowIndex, visibleColIndex) {
22239
+ // Any navigation key that ends up scrolling activates the target cell from the
22240
+ // virtualization scroll callback, which runs outside Angular's knowledge, so the
22241
+ // grid must be notified explicitly regardless of the ctrl modifier.
22242
+ const shouldCheckVerticalScroll = VERTICAL_VIRTUALIZATION_NAV_KEYS.has(key);
22243
+ const shouldCheckHorizontalScroll = HORIZONTAL_NAV_KEYS.has(key);
22244
+ return (shouldCheckVerticalScroll && this.shouldPerformVerticalScroll(rowIndex, visibleColIndex)) ||
22245
+ (shouldCheckHorizontalScroll && this.shouldPerformHorizontalScroll(visibleColIndex, rowIndex));
22246
+ }
22238
22247
  performVerticalScrollToCell(rowIndex, visibleColIndex = -1, cb) {
22239
22248
  if (!this.shouldPerformVerticalScroll(rowIndex, visibleColIndex)) {
22240
22249
  if (cb) {