igniteui-angular 12.3.33 → 12.3.36
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.
- package/bundles/igniteui-angular.umd.js +53 -21
- package/bundles/igniteui-angular.umd.js.map +1 -1
- package/esm2015/lib/date-picker/date-picker.component.js +2 -1
- package/esm2015/lib/date-range-picker/date-range-picker.component.js +3 -3
- package/esm2015/lib/directives/drag-drop/drag-drop.directive.js +8 -6
- package/esm2015/lib/directives/radio/radio-group.directive.js +13 -7
- package/esm2015/lib/grids/grid/grid.component.js +2 -2
- package/esm2015/lib/grids/grid-navigation.service.js +8 -3
- package/esm2015/lib/grids/selection/selection.service.js +9 -4
- package/esm2015/lib/paginator/pager.component.js +2 -2
- package/esm2015/lib/radio/radio.component.js +15 -2
- package/esm2015/lib/time-picker/time-picker.component.js +3 -2
- package/fesm2015/igniteui-angular.js +52 -19
- package/fesm2015/igniteui-angular.js.map +1 -1
- package/igniteui-angular.metadata.json +1 -1
- package/lib/directives/drag-drop/drag-drop.directive.d.ts +1 -1
- package/lib/directives/radio/radio-group.directive.d.ts +6 -1
- package/lib/grids/selection/selection.service.d.ts +2 -1
- package/lib/radio/radio.component.d.ts +14 -3
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ import { NG_VALUE_ACCESSOR, NG_VALIDATORS, CheckboxRequiredValidator, NgModel, F
|
|
|
6
6
|
import * as i2 from '@angular/common';
|
|
7
7
|
import { isPlatformBrowser, CommonModule, DOCUMENT, DatePipe, formatDate, FormatWidth, getLocaleDateFormat, getLocaleCurrencyCode, DecimalPipe, CurrencyPipe, PercentPipe, getLocaleNumberFormat, NumberFormatStyle, getCurrencySymbol } from '@angular/common';
|
|
8
8
|
import { Observable, noop, Subject, fromEvent, interval, animationFrameScheduler, merge, pipe, Subscription, timer } from 'rxjs';
|
|
9
|
-
import { throttleTime, takeUntil, filter, first as first$1, take, throttle, debounce, tap, switchMap, skipLast, map, shareReplay, takeWhile, debounceTime, pluck } from 'rxjs/operators';
|
|
9
|
+
import { throttleTime, takeUntil, filter, first as first$1, take, throttle, startWith, debounce, tap, switchMap, skipLast, map, shareReplay, takeWhile, debounceTime, pluck } from 'rxjs/operators';
|
|
10
10
|
import mergeWith from 'lodash.mergewith';
|
|
11
11
|
import { ResizeObserver } from '@juggle/resize-observer';
|
|
12
12
|
import { __decorate, __awaiter } from 'tslib';
|
|
@@ -7345,9 +7345,13 @@ class IgxGridSelectionService {
|
|
|
7345
7345
|
*/
|
|
7346
7346
|
this.pointerEventInGridBody = false;
|
|
7347
7347
|
this._ranges = new Set();
|
|
7348
|
-
this.pointerOriginHandler = () => {
|
|
7348
|
+
this.pointerOriginHandler = (event) => {
|
|
7349
7349
|
this.pointerEventInGridBody = false;
|
|
7350
7350
|
document.body.removeEventListener('pointerup', this.pointerOriginHandler);
|
|
7351
|
+
const targetTagName = event.target.tagName.toLowerCase();
|
|
7352
|
+
if (targetTagName !== 'igx-grid-cell' && targetTagName !== 'igx-tree-grid-cell') {
|
|
7353
|
+
this.pointerUp(this._lastSelectedNode, this.grid.rangeSelected, true);
|
|
7354
|
+
}
|
|
7351
7355
|
};
|
|
7352
7356
|
this.initPointerState();
|
|
7353
7357
|
this.initKeyboardState();
|
|
@@ -7464,6 +7468,7 @@ class IgxGridSelectionService {
|
|
|
7464
7468
|
* and the start node of the `state`.
|
|
7465
7469
|
*/
|
|
7466
7470
|
generateRange(node, state) {
|
|
7471
|
+
this._lastSelectedNode = node;
|
|
7467
7472
|
if (!state) {
|
|
7468
7473
|
return {
|
|
7469
7474
|
rowStart: node.row,
|
|
@@ -7581,8 +7586,8 @@ class IgxGridSelectionService {
|
|
|
7581
7586
|
}
|
|
7582
7587
|
return true;
|
|
7583
7588
|
}
|
|
7584
|
-
pointerUp(node, emitter) {
|
|
7585
|
-
if (this.dragMode) {
|
|
7589
|
+
pointerUp(node, emitter, firedOutsideGrid) {
|
|
7590
|
+
if (this.dragMode || firedOutsideGrid) {
|
|
7586
7591
|
this.restoreTextSelection();
|
|
7587
7592
|
this.addRangeMeta(node, this.pointerState);
|
|
7588
7593
|
this.mergeMap(this.selection, this.temp);
|
|
@@ -21412,7 +21417,7 @@ class IgxDragDirective {
|
|
|
21412
21417
|
// Check for shadowRoot instance and use it if present
|
|
21413
21418
|
for (const elFromPoint of elementsFromPoint) {
|
|
21414
21419
|
if (!!(elFromPoint === null || elFromPoint === void 0 ? void 0 : elFromPoint.shadowRoot)) {
|
|
21415
|
-
targetElements = targetElements.concat(this.getFromShadowRoot(elFromPoint, pageX, pageY));
|
|
21420
|
+
targetElements = targetElements.concat(this.getFromShadowRoot(elFromPoint, pageX, pageY, elementsFromPoint));
|
|
21416
21421
|
}
|
|
21417
21422
|
else if (targetElements.indexOf(elFromPoint) === -1) {
|
|
21418
21423
|
targetElements.push(elFromPoint);
|
|
@@ -21446,13 +21451,15 @@ class IgxDragDirective {
|
|
|
21446
21451
|
* @hidden
|
|
21447
21452
|
* Traverse shadow dom in depth.
|
|
21448
21453
|
*/
|
|
21449
|
-
getFromShadowRoot(elem, pageX, pageY) {
|
|
21454
|
+
getFromShadowRoot(elem, pageX, pageY, parentDomElems) {
|
|
21450
21455
|
const elementsFromPoint = elem.shadowRoot.elementsFromPoint(pageX, pageY);
|
|
21451
|
-
|
|
21452
|
-
|
|
21456
|
+
const shadowElements = elementsFromPoint.filter(cur => parentDomElems.indexOf(cur) === -1);
|
|
21457
|
+
let res = [];
|
|
21458
|
+
for (const elFromPoint of shadowElements) {
|
|
21453
21459
|
if (!!(elFromPoint === null || elFromPoint === void 0 ? void 0 : elFromPoint.shadowRoot) && elFromPoint.shadowRoot !== elem.shadowRoot) {
|
|
21454
|
-
res = res.concat(this.getFromShadowRoot(elFromPoint, pageX, pageY));
|
|
21460
|
+
res = res.concat(this.getFromShadowRoot(elFromPoint, pageX, pageY, elementsFromPoint));
|
|
21455
21461
|
}
|
|
21462
|
+
res.push(elFromPoint);
|
|
21456
21463
|
}
|
|
21457
21464
|
return res;
|
|
21458
21465
|
}
|
|
@@ -23125,6 +23132,11 @@ class IgxRadioComponent {
|
|
|
23125
23132
|
* @hidden
|
|
23126
23133
|
*/
|
|
23127
23134
|
this.inputId = `${this.id}-input`;
|
|
23135
|
+
/**
|
|
23136
|
+
* @hidden
|
|
23137
|
+
* @internal
|
|
23138
|
+
*/
|
|
23139
|
+
this.destroy$ = new Subject();
|
|
23128
23140
|
/**
|
|
23129
23141
|
* @hidden
|
|
23130
23142
|
* @internal
|
|
@@ -23204,6 +23216,14 @@ class IgxRadioComponent {
|
|
|
23204
23216
|
_clicked() {
|
|
23205
23217
|
this.select();
|
|
23206
23218
|
}
|
|
23219
|
+
/**
|
|
23220
|
+
* @hidden
|
|
23221
|
+
* @internal
|
|
23222
|
+
*/
|
|
23223
|
+
ngOnDestroy() {
|
|
23224
|
+
this.destroy$.next(true);
|
|
23225
|
+
this.destroy$.complete();
|
|
23226
|
+
}
|
|
23207
23227
|
/**
|
|
23208
23228
|
* Selects the current radio button.
|
|
23209
23229
|
* ```typescript
|
|
@@ -23439,6 +23459,11 @@ class IgxRadioGroupDirective {
|
|
|
23439
23459
|
* @internal
|
|
23440
23460
|
*/
|
|
23441
23461
|
this.destroy$ = new Subject();
|
|
23462
|
+
/**
|
|
23463
|
+
* @hidden
|
|
23464
|
+
* @internal
|
|
23465
|
+
*/
|
|
23466
|
+
this.queryChange$ = new Subject();
|
|
23442
23467
|
}
|
|
23443
23468
|
/**
|
|
23444
23469
|
* Sets/gets the `value` attribute.
|
|
@@ -23584,8 +23609,9 @@ class IgxRadioGroupDirective {
|
|
|
23584
23609
|
// The initial value can possibly be set by NgModel and it is possible that
|
|
23585
23610
|
// the OnInit of the NgModel occurs after the OnInit of this class.
|
|
23586
23611
|
this._isInitialized = true;
|
|
23587
|
-
|
|
23588
|
-
this.
|
|
23612
|
+
this.radioButtons.changes.pipe(startWith(0), takeUntil(this.destroy$)).subscribe(() => {
|
|
23613
|
+
this.queryChange$.next();
|
|
23614
|
+
setTimeout(() => this._initRadioButtons());
|
|
23589
23615
|
});
|
|
23590
23616
|
}
|
|
23591
23617
|
/**
|
|
@@ -23657,7 +23683,7 @@ class IgxRadioGroupDirective {
|
|
|
23657
23683
|
button.checked = true;
|
|
23658
23684
|
this._selected = button;
|
|
23659
23685
|
}
|
|
23660
|
-
button.change.pipe(takeUntil(this.destroy$)).subscribe((ev) => this._selectedRadioButtonChanged(ev));
|
|
23686
|
+
button.change.pipe(takeUntil(button.destroy$), takeUntil(this.destroy$), takeUntil(this.queryChange$)).subscribe((ev) => this._selectedRadioButtonChanged(ev));
|
|
23661
23687
|
});
|
|
23662
23688
|
}
|
|
23663
23689
|
}
|
|
@@ -37924,6 +37950,7 @@ class IgxDatePickerComponent extends PickerBaseDirective {
|
|
|
37924
37950
|
this._onTouchedCallback = noop;
|
|
37925
37951
|
this._onValidatorChange = noop;
|
|
37926
37952
|
this.onStatusChanged = () => {
|
|
37953
|
+
this.disabled = this._ngControl.disabled;
|
|
37927
37954
|
this.updateValidity();
|
|
37928
37955
|
this.inputGroup.isRequired = this.required;
|
|
37929
37956
|
};
|
|
@@ -43845,8 +43872,13 @@ class IgxGridNavigationService {
|
|
|
43845
43872
|
this.grid.clearCellSelection();
|
|
43846
43873
|
this.grid.navigateTo(this.activeNode.row, this.activeNode.column, (obj) => {
|
|
43847
43874
|
var _a;
|
|
43848
|
-
(
|
|
43849
|
-
|
|
43875
|
+
if (this.activeNode.row === obj.target.row.index) {
|
|
43876
|
+
(_a = obj.target) === null || _a === void 0 ? void 0 : _a.activate(event);
|
|
43877
|
+
this.grid.cdr.detectChanges();
|
|
43878
|
+
}
|
|
43879
|
+
else {
|
|
43880
|
+
this.grid.navigateTo(this.activeNode.row, this.activeNode.column);
|
|
43881
|
+
}
|
|
43850
43882
|
});
|
|
43851
43883
|
}
|
|
43852
43884
|
else {
|
|
@@ -57435,7 +57467,7 @@ class IgxPageNavigationComponent {
|
|
|
57435
57467
|
IgxPageNavigationComponent.decorators = [
|
|
57436
57468
|
{ type: Component, args: [{
|
|
57437
57469
|
selector: 'igx-page-nav',
|
|
57438
|
-
template: "<button\n [title]=\"paginator.resourceStrings.igx_paginator_first_page_button_text\"\n [disabled]=\"paginator.isFirstPageDisabled\"\n [attr.aria-disabled]=\"paginator.isFirstPageDisabled\"\n (click)=\"paginator.paginate(0)\"\n igxButton=\"icon\"\n igxRipple\n [igxRippleCentered]=\"true\"\n>\n <igx-icon>first_page</igx-icon>\n</button>\n<button\n [title]=\"paginator.resourceStrings.igx_paginator_previous_page_button_text\"\n [disabled]=\"paginator.isFirstPageDisabled\"\n [attr.aria-disabled]=\"paginator.isFirstPageDisabled\"\n (click)=\"paginator.previousPage()\"\n igxButton=\"icon\"\n igxRipple\n [igxRippleCentered]=\"true\"\n>\n <igx-icon>chevron_left</igx-icon>\n</button>\n<div class=\"igx-page-nav__text\" aria-current=\"page\">\n <span>{{ paginator.page + 1 }}</span>\n <span\n > {{\n paginator.resourceStrings.igx_paginator_pager_text\n }} </span\n >\n <span>{{ paginator.totalPages }}</span>\n</div>\n<button\n [title]=\"paginator.resourceStrings.igx_paginator_next_page_button_text\"\n [disabled]=\"paginator.isLastPageDisabled\"\n [attr.aria-disabled]=\"paginator.isLastPageDisabled\"\n (click)=\"paginator.nextPage()\"\n igxRipple\n [igxRippleCentered]=\"true\"\n igxButton=\"icon\"\n>\n <igx-icon>chevron_right</igx-icon>\n</button>\n<button\n [title]=\"paginator.resourceStrings.igx_paginator_last_page_button_text\"\n [disabled]=\"paginator.isLastPageDisabled\"\n [attr.aria-disabled]=\"paginator.isLastPageDisabled\"\n (click)=\"paginator.paginate(paginator.totalPages - 1)\"\n igxButton=\"icon\"\n igxRipple\n [igxRippleCentered]=\"true\"\n>\n <igx-icon>last_page</igx-icon>\n</button>\n\n"
|
|
57470
|
+
template: "<button\n [title]=\"paginator.resourceStrings.igx_paginator_first_page_button_text\"\n [disabled]=\"paginator.isFirstPageDisabled\"\n [attr.aria-disabled]=\"paginator.isFirstPageDisabled\"\n (click)=\"paginator.paginate(0)\"\n igxButton=\"icon\"\n igxRipple\n [igxRippleCentered]=\"true\"\n type=\"button\"\n>\n <igx-icon>first_page</igx-icon>\n</button>\n<button\n [title]=\"paginator.resourceStrings.igx_paginator_previous_page_button_text\"\n [disabled]=\"paginator.isFirstPageDisabled\"\n [attr.aria-disabled]=\"paginator.isFirstPageDisabled\"\n (click)=\"paginator.previousPage()\"\n igxButton=\"icon\"\n igxRipple\n [igxRippleCentered]=\"true\"\n type=\"button\"\n>\n <igx-icon>chevron_left</igx-icon>\n</button>\n<div class=\"igx-page-nav__text\" aria-current=\"page\">\n <span>{{ paginator.page + 1 }}</span>\n <span\n > {{\n paginator.resourceStrings.igx_paginator_pager_text\n }} </span\n >\n <span>{{ paginator.totalPages }}</span>\n</div>\n<button\n [title]=\"paginator.resourceStrings.igx_paginator_next_page_button_text\"\n [disabled]=\"paginator.isLastPageDisabled\"\n [attr.aria-disabled]=\"paginator.isLastPageDisabled\"\n (click)=\"paginator.nextPage()\"\n igxRipple\n [igxRippleCentered]=\"true\"\n igxButton=\"icon\"\n type=\"button\"\n>\n <igx-icon>chevron_right</igx-icon>\n</button>\n<button\n [title]=\"paginator.resourceStrings.igx_paginator_last_page_button_text\"\n [disabled]=\"paginator.isLastPageDisabled\"\n [attr.aria-disabled]=\"paginator.isLastPageDisabled\"\n (click)=\"paginator.paginate(paginator.totalPages - 1)\"\n igxButton=\"icon\"\n igxRipple\n [igxRippleCentered]=\"true\"\n type=\"button\"\n>\n <igx-icon>last_page</igx-icon>\n</button>\n\n"
|
|
57439
57471
|
},] }
|
|
57440
57472
|
];
|
|
57441
57473
|
IgxPageNavigationComponent.ctorParameters = () => [
|
|
@@ -60316,7 +60348,8 @@ class IgxTimePickerComponent extends PickerBaseDirective {
|
|
|
60316
60348
|
}
|
|
60317
60349
|
onStatusChanged() {
|
|
60318
60350
|
if ((this._ngControl.control.touched || this._ngControl.control.dirty) &&
|
|
60319
|
-
(this._ngControl.control.validator || this._ngControl.control.asyncValidator)
|
|
60351
|
+
(this._ngControl.control.validator || this._ngControl.control.asyncValidator) &&
|
|
60352
|
+
!this._ngControl.disabled) {
|
|
60320
60353
|
if (this._inputGroup.isFocused) {
|
|
60321
60354
|
this.inputDirective.valid = this._ngControl.valid ? IgxInputState.VALID : IgxInputState.INVALID;
|
|
60322
60355
|
}
|
|
@@ -62548,7 +62581,6 @@ class IgxGridComponent extends IgxGridBaseDirective {
|
|
|
62548
62581
|
if (this.groupTemplate) {
|
|
62549
62582
|
this._groupRowTemplate = this.groupTemplate.template;
|
|
62550
62583
|
}
|
|
62551
|
-
this.detailTemplate.changes.subscribe(() => this.trackChanges = (_, rec) => ((rec === null || rec === void 0 ? void 0 : rec.detailsData) !== undefined ? rec.detailsData : rec));
|
|
62552
62584
|
if (this.hideGroupedColumns && this._columns && this.groupingExpressions) {
|
|
62553
62585
|
this._setGroupColsVisibility(this.hideGroupedColumns);
|
|
62554
62586
|
}
|
|
@@ -62587,6 +62619,7 @@ class IgxGridComponent extends IgxGridBaseDirective {
|
|
|
62587
62619
|
*/
|
|
62588
62620
|
ngOnInit() {
|
|
62589
62621
|
super.ngOnInit();
|
|
62622
|
+
this.trackChanges = (_, rec) => ((rec === null || rec === void 0 ? void 0 : rec.detailsData) !== undefined ? rec.detailsData : rec);
|
|
62590
62623
|
this.onGroupingDone.pipe(takeUntil(this.destroy$)).subscribe((args) => {
|
|
62591
62624
|
this.crudService.endEdit(false);
|
|
62592
62625
|
this.summaryService.updateSummaryCache(args);
|
|
@@ -74816,14 +74849,14 @@ class IgxDateRangePickerComponent extends PickerBaseDirective {
|
|
|
74816
74849
|
this.onValidatorChange = noop;
|
|
74817
74850
|
this.onStatusChanged = () => {
|
|
74818
74851
|
if (this.inputGroup) {
|
|
74819
|
-
this.inputDirective.valid = this.isTouchedOrDirty
|
|
74852
|
+
this.inputDirective.valid = this.isTouchedOrDirty && !this._ngControl.disabled
|
|
74820
74853
|
? this.getInputState(this.inputGroup.isFocused)
|
|
74821
74854
|
: IgxInputState.INITIAL;
|
|
74822
74855
|
}
|
|
74823
74856
|
else if (this.hasProjectedInputs) {
|
|
74824
74857
|
this.projectedInputs
|
|
74825
74858
|
.forEach(i => {
|
|
74826
|
-
i.inputDirective.valid = this.isTouchedOrDirty
|
|
74859
|
+
i.inputDirective.valid = this.isTouchedOrDirty && !this._ngControl.disabled
|
|
74827
74860
|
? this.getInputState(i.isFocused)
|
|
74828
74861
|
: IgxInputState.INITIAL;
|
|
74829
74862
|
;
|