igniteui-angular 15.0.0-rc.0 → 15.0.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.
@@ -14716,6 +14716,16 @@ class IgxAutocompleteDirective extends IgxDropDownItemNavigationDirective {
14716
14716
  onInput() {
14717
14717
  this.open();
14718
14718
  }
14719
+ /** @hidden @internal */
14720
+ onCompositionStart() {
14721
+ if (!this._composing) {
14722
+ this._composing = true;
14723
+ }
14724
+ }
14725
+ /** @hidden @internal */
14726
+ onCompositionEnd() {
14727
+ this._composing = false;
14728
+ }
14719
14729
  /** @hidden @internal */
14720
14730
  onArrowDown(event) {
14721
14731
  event.preventDefault();
@@ -14727,7 +14737,7 @@ class IgxAutocompleteDirective extends IgxDropDownItemNavigationDirective {
14727
14737
  }
14728
14738
  /** @hidden @internal */
14729
14739
  handleKeyDown(event) {
14730
- if (!this.collapsed) {
14740
+ if (!this.collapsed && !this._composing) {
14731
14741
  switch (event.key.toLowerCase()) {
14732
14742
  case 'space':
14733
14743
  case 'spacebar':
@@ -14849,7 +14859,7 @@ class IgxAutocompleteDirective extends IgxDropDownItemNavigationDirective {
14849
14859
  ;
14850
14860
  }
14851
14861
  IgxAutocompleteDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: IgxAutocompleteDirective, deps: [{ token: NgModel, optional: true, self: true }, { token: FormControlName, optional: true, self: true }, { token: IgxInputGroupComponent, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
14852
- IgxAutocompleteDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.0", type: IgxAutocompleteDirective, selector: "[igxAutocomplete]", inputs: { target: ["igxAutocomplete", "target"], autocompleteSettings: ["igxAutocompleteSettings", "autocompleteSettings"], disabled: ["igxAutocompleteDisabled", "disabled"] }, outputs: { selectionChanging: "selectionChanging" }, host: { listeners: { "input": "onInput()", "keydown.ArrowDown": "onArrowDown($event)", "keydown.Alt.ArrowDown": "onArrowDown($event)", "keydown.ArrowUp": "onArrowDown($event)", "keydown.Alt.ArrowUp": "onArrowDown($event)", "keydown.Tab": "onTab()", "keydown.Shift.Tab": "onTab()" }, properties: { "attr.autocomplete": "this.autofill", "attr.role": "this.role", "attr.aria-expanded": "this.ariaExpanded", "attr.aria-haspopup": "this.hasPopUp", "attr.aria-owns": "this.ariaOwns", "attr.aria-activedescendant": "this.ariaActiveDescendant", "attr.aria-autocomplete": "this.ariaAutocomplete" } }, exportAs: ["igxAutocomplete"], usesInheritance: true, ngImport: i0 });
14862
+ IgxAutocompleteDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.0", type: IgxAutocompleteDirective, selector: "[igxAutocomplete]", inputs: { target: ["igxAutocomplete", "target"], autocompleteSettings: ["igxAutocompleteSettings", "autocompleteSettings"], disabled: ["igxAutocompleteDisabled", "disabled"] }, outputs: { selectionChanging: "selectionChanging" }, host: { listeners: { "input": "onInput()", "compositionstart": "onCompositionStart()", "compositionend": "onCompositionEnd()", "keydown.ArrowDown": "onArrowDown($event)", "keydown.Alt.ArrowDown": "onArrowDown($event)", "keydown.ArrowUp": "onArrowDown($event)", "keydown.Alt.ArrowUp": "onArrowDown($event)", "keydown.Tab": "onTab()", "keydown.Shift.Tab": "onTab()" }, properties: { "attr.autocomplete": "this.autofill", "attr.role": "this.role", "attr.aria-expanded": "this.ariaExpanded", "attr.aria-haspopup": "this.hasPopUp", "attr.aria-owns": "this.ariaOwns", "attr.aria-activedescendant": "this.ariaActiveDescendant", "attr.aria-autocomplete": "this.ariaAutocomplete" } }, exportAs: ["igxAutocomplete"], usesInheritance: true, ngImport: i0 });
14853
14863
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: IgxAutocompleteDirective, decorators: [{
14854
14864
  type: Directive,
14855
14865
  args: [{
@@ -14909,6 +14919,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
14909
14919
  }], onInput: [{
14910
14920
  type: HostListener,
14911
14921
  args: ['input']
14922
+ }], onCompositionStart: [{
14923
+ type: HostListener,
14924
+ args: ['compositionstart']
14925
+ }], onCompositionEnd: [{
14926
+ type: HostListener,
14927
+ args: ['compositionend']
14912
14928
  }], onArrowDown: [{
14913
14929
  type: HostListener,
14914
14930
  args: ['keydown.ArrowDown', ['$event']]
@@ -17427,7 +17443,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
17427
17443
  const MASK_FLAGS = ['C', '&', 'a', 'A', '?', 'L', '9', '0', '#'];
17428
17444
  /** @hidden */
17429
17445
  class MaskParsingService {
17430
- applyMask(inputVal, maskOptions) {
17446
+ applyMask(inputVal, maskOptions, pos = 0) {
17431
17447
  let outputVal = '';
17432
17448
  let value = '';
17433
17449
  const mask = maskOptions.format;
@@ -17458,7 +17474,6 @@ class MaskParsingService {
17458
17474
  if (nonLiteralValues.length > nonLiteralIndices.length) {
17459
17475
  nonLiteralValues.splice(nonLiteralIndices.length);
17460
17476
  }
17461
- let pos = 0;
17462
17477
  for (const nonLiteralValue of nonLiteralValues) {
17463
17478
  const char = nonLiteralValue;
17464
17479
  outputVal = this.replaceCharAt(outputVal, nonLiteralIndices[pos++], char);
@@ -17505,6 +17520,11 @@ class MaskParsingService {
17505
17520
  }
17506
17521
  maskedValue = this.replaceCharAt(maskedValue, i, char);
17507
17522
  }
17523
+ if (Math.abs(end - start) >= 1) {
17524
+ // set cursor to be max between last cursor pos and the calculated `end`
17525
+ // since on `delete` the cursor should move forward
17526
+ cursor = Math.max(cursor, end);
17527
+ }
17508
17528
  return { value: maskedValue, end: cursor };
17509
17529
  }
17510
17530
  replaceCharAt(strValue, index, char) {
@@ -17726,6 +17746,7 @@ class IgxMaskDirective {
17726
17746
  }
17727
17747
  /** @hidden @internal */
17728
17748
  onInputChanged(event) {
17749
+ var _a;
17729
17750
  /**
17730
17751
  * '!this._focused' is a fix for #8165
17731
17752
  * On page load IE triggers input events before focus events and
@@ -17754,14 +17775,16 @@ class IgxMaskDirective {
17754
17775
  }
17755
17776
  this.inputValue = isInputComplete ?
17756
17777
  this.inputValue.substring(0, this.selectionEnd - numberOfMaskLiterals) + this.inputValue.substring(this.selectionEnd)
17757
- : this._compositionValue.substring(0, this._compositionStartIndex);
17758
- this._start = this.selectionStart;
17759
- this._end = this.selectionEnd;
17760
- this.nativeElement.selectionStart = isInputComplete ? this._start - numberOfMaskLiterals : this._compositionStartIndex;
17761
- this.nativeElement.selectionEnd = this._end - numberOfMaskLiterals;
17762
- this.nativeElement.selectionEnd = this._end;
17763
- this._start = this.selectionStart;
17764
- this._end = this.selectionEnd;
17778
+ : ((_a = this._compositionValue) === null || _a === void 0 ? void 0 : _a.substring(0, this._compositionStartIndex)) || this.inputValue;
17779
+ if (this._compositionValue) {
17780
+ this._start = this.selectionStart;
17781
+ this._end = this.selectionEnd;
17782
+ this.nativeElement.selectionStart = isInputComplete ? this._start - numberOfMaskLiterals : this._compositionStartIndex;
17783
+ this.nativeElement.selectionEnd = this._end - numberOfMaskLiterals;
17784
+ this.nativeElement.selectionEnd = this._end;
17785
+ this._start = this.selectionStart;
17786
+ this._end = this.selectionEnd;
17787
+ }
17765
17788
  }
17766
17789
  if (this._hasDropAction) {
17767
17790
  this._start = this.selectionStart;
@@ -17801,7 +17824,7 @@ class IgxMaskDirective {
17801
17824
  }
17802
17825
  /** @hidden */
17803
17826
  onDragEnter() {
17804
- if (!this._focused) {
17827
+ if (!this._focused && !this._dataValue) {
17805
17828
  this.showMask(this._dataValue);
17806
17829
  }
17807
17830
  }
@@ -25477,6 +25500,15 @@ class IgxRowDirective {
25477
25500
  this.grid.actionStrip.show(this);
25478
25501
  }
25479
25502
  }
25503
+ /**
25504
+ * @hidden
25505
+ * @internal
25506
+ */
25507
+ hideActionStrip() {
25508
+ if (this.grid.actionStrip && this.grid.actionStrip.hideOnRowLeave) {
25509
+ this.grid.actionStrip.hide();
25510
+ }
25511
+ }
25480
25512
  /**
25481
25513
  * @hidden
25482
25514
  * @internal
@@ -25622,7 +25654,7 @@ class IgxRowDirective {
25622
25654
  }
25623
25655
  }
25624
25656
  IgxRowDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: IgxRowDirective, deps: [{ token: IGX_GRID_BASE }, { token: IgxGridSelectionService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
25625
- IgxRowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.0", type: IgxRowDirective, selector: "[igxRowBaseComponent]", inputs: { data: "data", index: "index", disabled: "disabled", gridID: "gridID", selected: "selected" }, outputs: { addAnimationEnd: "addAnimationEnd" }, host: { listeners: { "click": "onClick($event)", "mouseenter": "showActionStrip()" }, properties: { "attr.role": "this.role", "attr.aria-disabled": "this.disabled", "class.igx-grid__tr--disabled": "this.disabled", "style.min-height.px": "this.rowHeight", "attr.data-rowIndex": "this.dataRowIndex", "attr.aria-selected": "this.selected" } }, viewQueries: [{ propertyName: "checkboxElement", first: true, predicate: i0.forwardRef(function () { return IgxCheckboxComponent; }), descendants: true, read: IgxCheckboxComponent }, { propertyName: "_virtDirRow", predicate: ["igxDirRef"], descendants: true, read: IgxGridForOfDirective }, { propertyName: "_cells", predicate: ["cell"], descendants: true }], ngImport: i0 });
25657
+ IgxRowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.0", type: IgxRowDirective, selector: "[igxRowBaseComponent]", inputs: { data: "data", index: "index", disabled: "disabled", gridID: "gridID", selected: "selected" }, outputs: { addAnimationEnd: "addAnimationEnd" }, host: { listeners: { "click": "onClick($event)", "mouseenter": "showActionStrip()", "mouseleave": "hideActionStrip()" }, properties: { "attr.role": "this.role", "attr.aria-disabled": "this.disabled", "class.igx-grid__tr--disabled": "this.disabled", "style.min-height.px": "this.rowHeight", "attr.data-rowIndex": "this.dataRowIndex", "attr.aria-selected": "this.selected" } }, viewQueries: [{ propertyName: "checkboxElement", first: true, predicate: i0.forwardRef(function () { return IgxCheckboxComponent; }), descendants: true, read: IgxCheckboxComponent }, { propertyName: "_virtDirRow", predicate: ["igxDirRef"], descendants: true, read: IgxGridForOfDirective }, { propertyName: "_cells", predicate: ["cell"], descendants: true }], ngImport: i0 });
25626
25658
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: IgxRowDirective, decorators: [{
25627
25659
  type: Directive,
25628
25660
  args: [{ selector: '[igxRowBaseComponent]' }]
@@ -25676,6 +25708,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
25676
25708
  }], showActionStrip: [{
25677
25709
  type: HostListener,
25678
25710
  args: ['mouseenter']
25711
+ }], hideActionStrip: [{
25712
+ type: HostListener,
25713
+ args: ['mouseleave']
25679
25714
  }] } });
25680
25715
 
25681
25716
  class IgxGridActionsBaseDirective {
@@ -26113,6 +26148,25 @@ class IgxActionStripComponent extends DisplayDensityBase {
26113
26148
  }
26114
26149
  return this._resourceStrings;
26115
26150
  }
26151
+ /**
26152
+ * Hide or not the Action Strip based on if it is a menu.
26153
+ *
26154
+ * @hidden
26155
+ * @internal
26156
+ */
26157
+ get hideOnRowLeave() {
26158
+ if (this.menu.items.length === 0) {
26159
+ return true;
26160
+ }
26161
+ else if (this.menu.items.length > 0) {
26162
+ if (this.menu.collapsed) {
26163
+ return true;
26164
+ }
26165
+ else {
26166
+ return false;
26167
+ }
26168
+ }
26169
+ }
26116
26170
  /**
26117
26171
  * Getter for the 'display' property of the current `IgxActionStrip`
26118
26172
  *
@@ -78714,7 +78768,7 @@ class IgxTreeGridRowComponent extends IgxRowDirective {
78714
78768
  if (isPinnedArea) {
78715
78769
  treeRec = this.grid.unpinnedRecords.find(x => x.data === this.data);
78716
78770
  }
78717
- return treeRec.level === 0;
78771
+ return (treeRec === null || treeRec === void 0 ? void 0 : treeRec.level) === 0;
78718
78772
  }
78719
78773
  /**
78720
78774
  * @hidden