igniteui-angular 18.2.9 → 18.2.11
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/esm2022/lib/carousel/carousel-base.mjs +4 -2
- package/esm2022/lib/carousel/carousel.component.mjs +6 -4
- package/esm2022/lib/carousel/slide.component.mjs +5 -6
- package/esm2022/lib/core/i18n/grid-resources.mjs +3 -3
- package/esm2022/lib/grids/columns/column-group.component.mjs +2 -2
- package/esm2022/lib/grids/columns/column-layout.component.mjs +3 -3
- package/esm2022/lib/grids/columns/column.component.mjs +11 -8
- package/esm2022/lib/grids/common/grid.interface.mjs +1 -1
- package/esm2022/lib/grids/filtering/excel-style/excel-style-custom-dialog.component.mjs +13 -6
- package/esm2022/lib/grids/filtering/excel-style/excel-style-filtering.component.mjs +3 -2
- package/esm2022/lib/grids/grid-base.directive.mjs +16 -10
- package/esm2022/lib/grids/headers/pipes.mjs +2 -2
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-grid-base.directive.mjs +2 -1
- package/esm2022/lib/grids/pivot-grid/pivot-grid.component.mjs +1 -1
- package/esm2022/lib/grids/resizing/pivot-grid/pivot-resizer.component.mjs +3 -3
- package/esm2022/lib/grids/resizing/resizer.component.mjs +3 -3
- package/esm2022/lib/grids/resizing/resizer.directive.mjs +12 -3
- package/esm2022/lib/grids/resizing/resizing.service.mjs +4 -4
- package/fesm2022/igniteui-angular.mjs +72 -42
- package/fesm2022/igniteui-angular.mjs.map +1 -1
- package/lib/carousel/carousel-base.d.ts +31 -2
- package/lib/carousel/carousel.component.d.ts +2 -2
- package/lib/carousel/slide.component.d.ts +2 -3
- package/lib/core/styles/components/checkbox/_checkbox-component.scss +8 -4
- package/lib/core/styles/components/checkbox/_checkbox-theme.scss +8 -3
- package/lib/core/styles/components/chip/_chip-theme.scss +1 -1
- package/lib/core/styles/components/combo/_combo-theme.scss +2 -2
- package/lib/core/styles/components/grid/_excel-filtering-theme.scss +3 -7
- package/lib/core/styles/components/grid/_grid-theme.scss +19 -15
- package/lib/core/styles/components/progress/_progress-theme.scss +55 -7
- package/lib/core/styles/components/radio/_radio-theme.scss +0 -2
- package/lib/core/styles/components/switch/_switch-theme.scss +0 -2
- package/lib/grids/common/grid.interface.d.ts +4 -0
- package/lib/grids/filtering/excel-style/excel-style-custom-dialog.component.d.ts +4 -1
- package/lib/grids/grid-base.directive.d.ts +5 -2
- package/lib/grids/pivot-grid/pivot-grid.component.d.ts +1 -1
- package/lib/grids/resizing/resizer.directive.d.ts +2 -0
- package/lib/grids/resizing/resizing.service.d.ts +2 -2
- package/package.json +1 -1
- package/styles/igniteui-angular-dark.css +1 -1
- package/styles/igniteui-angular.css +1 -1
- package/styles/igniteui-bootstrap-dark.css +1 -1
- package/styles/igniteui-bootstrap-light.css +1 -1
- package/styles/igniteui-dark-green.css +1 -1
- package/styles/igniteui-fluent-dark-excel.css +1 -1
- package/styles/igniteui-fluent-dark-word.css +1 -1
- package/styles/igniteui-fluent-dark.css +1 -1
- package/styles/igniteui-fluent-light-excel.css +1 -1
- package/styles/igniteui-fluent-light-word.css +1 -1
- package/styles/igniteui-fluent-light.css +1 -1
- package/styles/igniteui-indigo-dark.css +1 -1
- package/styles/igniteui-indigo-light.css +1 -1
- package/styles/maps/igniteui-angular-dark.css.map +1 -1
- package/styles/maps/igniteui-angular.css.map +1 -1
- package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
- package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
- package/styles/maps/igniteui-dark-green.css.map +1 -1
- package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
- package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
- package/styles/maps/igniteui-fluent-dark.css.map +1 -1
- package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
- package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
- package/styles/maps/igniteui-fluent-light.css.map +1 -1
- package/styles/maps/igniteui-indigo-dark.css.map +1 -1
- package/styles/maps/igniteui-indigo-light.css.map +1 -1
|
@@ -34228,6 +34228,8 @@ var Direction;
|
|
|
34228
34228
|
Direction[Direction["PREV"] = 2] = "PREV";
|
|
34229
34229
|
})(Direction || (Direction = {}));
|
|
34230
34230
|
/** @hidden */
|
|
34231
|
+
const IGX_CAROUSEL_COMPONENT = /*@__PURE__*/ new InjectionToken('IgxCarouselToken');
|
|
34232
|
+
/** @hidden */
|
|
34231
34233
|
let IgxCarouselComponentBase = class IgxCarouselComponentBase {
|
|
34232
34234
|
constructor(animationService, cdr) {
|
|
34233
34235
|
this.animationService = animationService;
|
|
@@ -34506,15 +34508,15 @@ class IgxSlideComponent {
|
|
|
34506
34508
|
this._destroy$.next(true);
|
|
34507
34509
|
this._destroy$.complete();
|
|
34508
34510
|
}
|
|
34509
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxSlideComponent, deps: [{ token: i0.ElementRef }, { token:
|
|
34511
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxSlideComponent, deps: [{ token: i0.ElementRef }, { token: IGX_CAROUSEL_COMPONENT }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34510
34512
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.4", type: IgxSlideComponent, isStandalone: true, selector: "igx-slide", inputs: { index: "index", direction: "direction", total: "total", active: ["active", "active", booleanAttribute], previous: ["previous", "previous", booleanAttribute] }, outputs: { activeChange: "activeChange" }, host: { properties: { "attr.tabindex": "this.tabIndex", "attr.id": "this.id", "attr.role": "this.tab", "attr.aria-labelledby": "this.ariaLabelledBy", "class.igx-slide": "this.cssClass", "class.igx-slide--current": "this.active", "class.igx-slide--previous": "this.previous" } }, ngImport: i0, template: "<ng-content></ng-content>\n" }); }
|
|
34511
34513
|
}
|
|
34512
34514
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxSlideComponent, decorators: [{
|
|
34513
34515
|
type: Component,
|
|
34514
34516
|
args: [{ selector: 'igx-slide', standalone: true, template: "<ng-content></ng-content>\n" }]
|
|
34515
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type:
|
|
34517
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
34516
34518
|
type: Inject,
|
|
34517
|
-
args: [
|
|
34519
|
+
args: [IGX_CAROUSEL_COMPONENT]
|
|
34518
34520
|
}] }], propDecorators: { index: [{
|
|
34519
34521
|
type: Input
|
|
34520
34522
|
}], direction: [{
|
|
@@ -35659,7 +35661,8 @@ class IgxCarouselComponent extends IgxCarouselComponentBase {
|
|
|
35659
35661
|
{
|
|
35660
35662
|
provide: HAMMER_GESTURE_CONFIG,
|
|
35661
35663
|
useClass: CarouselHammerConfig
|
|
35662
|
-
}
|
|
35664
|
+
},
|
|
35665
|
+
{ provide: IGX_CAROUSEL_COMPONENT, useExisting: IgxCarouselComponent }
|
|
35663
35666
|
], queries: [{ propertyName: "indicatorTemplate", first: true, predicate: IgxCarouselIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "nextButtonTemplate", first: true, predicate: IgxCarouselNextButtonDirective, descendants: true, read: TemplateRef }, { propertyName: "prevButtonTemplate", first: true, predicate: IgxCarouselPrevButtonDirective, descendants: true, read: TemplateRef }, { propertyName: "slides", predicate: IgxSlideComponent }], viewQueries: [{ propertyName: "defaultIndicator", first: true, predicate: ["defaultIndicator"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultNextButton", first: true, predicate: ["defaultNextButton"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultPrevButton", first: true, predicate: ["defaultPrevButton"], descendants: true, read: TemplateRef, static: true }, { propertyName: "_indicators", predicate: ["indicators"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #defaultIndicator let-slide>\n <div class=\"igx-nav-dot\"\n [class.igx-nav-dot--active]=\"slide.active\">\n </div>\n</ng-template>\n\n<ng-template #defaultNextButton>\n <igx-icon aria-hidden=\"true\" family=\"default\" name=\"carousel_next\"\n class=\"igx-nav-arrow\">\n </igx-icon>\n</ng-template>\n\n<ng-template #defaultPrevButton>\n <igx-icon aria-hidden=\"true\" family=\"default\" name=\"carousel_prev\"\n class=\"igx-nav-arrow\">\n </igx-icon>\n</ng-template>\n\n<button *ngIf=\"navigation && slides.length\"\n igxButton\n class=\"igx-carousel__arrow--prev\"\n [attr.aria-label]=\"resourceStrings.igx_carousel_previous_slide\"\n [disabled]=\"prevButtonDisabled\"\n (click)=\"prev()\"\n (keydown)=\"handleKeydownPrev($event)\">\n <ng-container *ngTemplateOutlet=\"getPrevButtonTemplate; context: {$implicit: prevButtonDisabled};\"></ng-container>\n</button>\n\n<button *ngIf=\"navigation && slides.length\"\n igxButton\n class=\"igx-carousel__arrow--next\"\n [attr.aria-label]=\"resourceStrings.igx_carousel_next_slide\"\n [disabled]=\"nextButtonDisabled\"\n (click)=\"next()\"\n (keydown)=\"handleKeydownNext($event)\">\n <ng-container *ngTemplateOutlet=\"getNextButtonTemplate; context: {$implicit: nextButtonDisabled};\"></ng-container>\n</button>\n\n<div *ngIf=\"showIndicators\" [ngClass]=\"indicatorsClass\" [attr.role]=\"'tablist'\" (keyup)=\"handleKeyUp($event)\" (focusout)=\"handleFocusOut($event)\" (click)=\"handleClick()\" (keydown)=\"handleKeydown($event)\">\n <div #indicators *ngFor=\"let slide of slides\"\n class=\"igx-carousel-indicators__indicator\"\n (click)=\"select(slide)\"\n [id]=\"'tab-'+ slide.index + '-' + total\"\n [attr.role]=\"'tab'\"\n [attr.tabindex]=\"slide.active ? 0 : -1\"\n [attr.aria-label]=\"resourceStrings.igx_carousel_slide + ' ' + (slide.index + 1) + ' ' + resourceStrings.igx_carousel_of + ' ' + this.total\"\n [attr.aria-controls]=\"'panel-' + slide.index\"\n [attr.aria-selected]=\"slide.active\">\n <ng-container *ngTemplateOutlet=\"getIndicatorTemplate; context: {$implicit: slide};\"></ng-container>\n </div>\n</div>\n\n<div *ngIf=\"showIndicatorsLabel\" [ngClass]=\"indicatorsClass\" class=\"igx-carousel-label-indicator\">\n <span [id]=\"labelId\" class=\"igx-carousel__label\">{{getCarouselLabel}}</span>\n</div>\n\n<div class=\"igx-carousel__inner\" [attr.aria-live]=\"!interval || stoppedByInteraction ? 'polite' : 'off'\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;outline-style:none}\n"], dependencies: [{ kind: "directive", type: IgxButtonDirective, selector: "[igxButton]", inputs: ["selected", "igxButton", "igxLabel"], outputs: ["buttonSelected"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "name", "active"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
35664
35667
|
}
|
|
35665
35668
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxCarouselComponent, decorators: [{
|
|
@@ -35668,7 +35671,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
35668
35671
|
{
|
|
35669
35672
|
provide: HAMMER_GESTURE_CONFIG,
|
|
35670
35673
|
useClass: CarouselHammerConfig
|
|
35671
|
-
}
|
|
35674
|
+
},
|
|
35675
|
+
{ provide: IGX_CAROUSEL_COMPONENT, useExisting: IgxCarouselComponent }
|
|
35672
35676
|
], selector: 'igx-carousel', standalone: true, imports: [IgxButtonDirective, IgxIconComponent, NgIf, NgClass, NgFor, NgTemplateOutlet], template: "<ng-template #defaultIndicator let-slide>\n <div class=\"igx-nav-dot\"\n [class.igx-nav-dot--active]=\"slide.active\">\n </div>\n</ng-template>\n\n<ng-template #defaultNextButton>\n <igx-icon aria-hidden=\"true\" family=\"default\" name=\"carousel_next\"\n class=\"igx-nav-arrow\">\n </igx-icon>\n</ng-template>\n\n<ng-template #defaultPrevButton>\n <igx-icon aria-hidden=\"true\" family=\"default\" name=\"carousel_prev\"\n class=\"igx-nav-arrow\">\n </igx-icon>\n</ng-template>\n\n<button *ngIf=\"navigation && slides.length\"\n igxButton\n class=\"igx-carousel__arrow--prev\"\n [attr.aria-label]=\"resourceStrings.igx_carousel_previous_slide\"\n [disabled]=\"prevButtonDisabled\"\n (click)=\"prev()\"\n (keydown)=\"handleKeydownPrev($event)\">\n <ng-container *ngTemplateOutlet=\"getPrevButtonTemplate; context: {$implicit: prevButtonDisabled};\"></ng-container>\n</button>\n\n<button *ngIf=\"navigation && slides.length\"\n igxButton\n class=\"igx-carousel__arrow--next\"\n [attr.aria-label]=\"resourceStrings.igx_carousel_next_slide\"\n [disabled]=\"nextButtonDisabled\"\n (click)=\"next()\"\n (keydown)=\"handleKeydownNext($event)\">\n <ng-container *ngTemplateOutlet=\"getNextButtonTemplate; context: {$implicit: nextButtonDisabled};\"></ng-container>\n</button>\n\n<div *ngIf=\"showIndicators\" [ngClass]=\"indicatorsClass\" [attr.role]=\"'tablist'\" (keyup)=\"handleKeyUp($event)\" (focusout)=\"handleFocusOut($event)\" (click)=\"handleClick()\" (keydown)=\"handleKeydown($event)\">\n <div #indicators *ngFor=\"let slide of slides\"\n class=\"igx-carousel-indicators__indicator\"\n (click)=\"select(slide)\"\n [id]=\"'tab-'+ slide.index + '-' + total\"\n [attr.role]=\"'tab'\"\n [attr.tabindex]=\"slide.active ? 0 : -1\"\n [attr.aria-label]=\"resourceStrings.igx_carousel_slide + ' ' + (slide.index + 1) + ' ' + resourceStrings.igx_carousel_of + ' ' + this.total\"\n [attr.aria-controls]=\"'panel-' + slide.index\"\n [attr.aria-selected]=\"slide.active\">\n <ng-container *ngTemplateOutlet=\"getIndicatorTemplate; context: {$implicit: slide};\"></ng-container>\n </div>\n</div>\n\n<div *ngIf=\"showIndicatorsLabel\" [ngClass]=\"indicatorsClass\" class=\"igx-carousel-label-indicator\">\n <span [id]=\"labelId\" class=\"igx-carousel__label\">{{getCarouselLabel}}</span>\n</div>\n\n<div class=\"igx-carousel__inner\" [attr.aria-live]=\"!interval || stoppedByInteraction ? 'polite' : 'off'\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;outline-style:none}\n"] }]
|
|
35673
35677
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.IterableDiffers }, { type: undefined, decorators: [{
|
|
35674
35678
|
type: Inject,
|
|
@@ -44232,7 +44236,7 @@ class IgxColumnComponent {
|
|
|
44232
44236
|
columnSizes[col.colStart - 1] = {
|
|
44233
44237
|
ref: col,
|
|
44234
44238
|
width: col.width === 'fit-content' ? col.autoSize :
|
|
44235
|
-
col.widthSetByUser || this.grid.columnWidthSetByUser ?
|
|
44239
|
+
col.widthSetByUser || this.grid.columnWidthSetByUser ? parseFloat(col.calcWidth) : null,
|
|
44236
44240
|
colSpan: col.gridColumnSpan,
|
|
44237
44241
|
colEnd: col.colStart + col.gridColumnSpan,
|
|
44238
44242
|
widthSetByUser: col.widthSetByUser
|
|
@@ -44261,7 +44265,7 @@ class IgxColumnComponent {
|
|
|
44261
44265
|
columnSizes[col.colStart - 1] = {
|
|
44262
44266
|
ref: col,
|
|
44263
44267
|
width: col.width === 'fit-content' ? col.autoSize :
|
|
44264
|
-
col.widthSetByUser || this.grid.columnWidthSetByUser ?
|
|
44268
|
+
col.widthSetByUser || this.grid.columnWidthSetByUser ? parseFloat(col.calcWidth) : null,
|
|
44265
44269
|
colSpan: col.gridColumnSpan,
|
|
44266
44270
|
colEnd: col.colStart + col.gridColumnSpan,
|
|
44267
44271
|
widthSetByUser: col.widthSetByUser
|
|
@@ -44276,7 +44280,7 @@ class IgxColumnComponent {
|
|
|
44276
44280
|
columnSizes[i] = {
|
|
44277
44281
|
ref: col,
|
|
44278
44282
|
width: col.width === 'fit-content' ? col.autoSize :
|
|
44279
|
-
col.widthSetByUser || this.grid.columnWidthSetByUser ?
|
|
44283
|
+
col.widthSetByUser || this.grid.columnWidthSetByUser ? parseFloat(col.calcWidth) : null,
|
|
44280
44284
|
colSpan: col.gridColumnSpan,
|
|
44281
44285
|
colEnd: col.colStart + col.gridColumnSpan,
|
|
44282
44286
|
widthSetByUser: col.widthSetByUser
|
|
@@ -44336,7 +44340,7 @@ class IgxColumnComponent {
|
|
|
44336
44340
|
result.push(size.width + 'px');
|
|
44337
44341
|
}
|
|
44338
44342
|
else {
|
|
44339
|
-
result.push(
|
|
44343
|
+
result.push(parseFloat(this.grid.getPossibleColumnWidth()) + 'px');
|
|
44340
44344
|
}
|
|
44341
44345
|
}
|
|
44342
44346
|
return result;
|
|
@@ -44743,8 +44747,11 @@ class IgxColumnComponent {
|
|
|
44743
44747
|
const colWidth = this.width;
|
|
44744
44748
|
const isPercentageWidth = colWidth && typeof colWidth === 'string' && colWidth.indexOf('%') !== -1;
|
|
44745
44749
|
const isAutoWidth = colWidth && typeof colWidth === 'string' && colWidth === 'fit-content';
|
|
44746
|
-
if (isPercentageWidth) {
|
|
44747
|
-
this._calcWidth =
|
|
44750
|
+
if (isPercentageWidth && this.grid.isColumnWidthSum) {
|
|
44751
|
+
this._calcWidth = this.grid.minColumnWidth;
|
|
44752
|
+
}
|
|
44753
|
+
else if (isPercentageWidth) {
|
|
44754
|
+
this._calcWidth = parseFloat(colWidth) / 100 * this.grid.calcWidth;
|
|
44748
44755
|
}
|
|
44749
44756
|
else if (!colWidth || isAutoWidth && !this.autoSize) {
|
|
44750
44757
|
// no width
|
|
@@ -44753,7 +44760,7 @@ class IgxColumnComponent {
|
|
|
44753
44760
|
else {
|
|
44754
44761
|
this._calcWidth = this.width;
|
|
44755
44762
|
}
|
|
44756
|
-
this.calcPixelWidth =
|
|
44763
|
+
this.calcPixelWidth = parseFloat(this._calcWidth);
|
|
44757
44764
|
}
|
|
44758
44765
|
/**
|
|
44759
44766
|
* @hidden
|
|
@@ -45450,7 +45457,7 @@ class IgxColumnGroupComponent extends IgxColumnComponent {
|
|
|
45450
45457
|
if (val.hidden) {
|
|
45451
45458
|
return acc;
|
|
45452
45459
|
}
|
|
45453
|
-
return acc +
|
|
45460
|
+
return acc + parseFloat(val.calcWidth);
|
|
45454
45461
|
}, 0)}`;
|
|
45455
45462
|
return width + 'px';
|
|
45456
45463
|
}
|
|
@@ -45556,7 +45563,7 @@ class IgxColumnLayoutComponent extends IgxColumnGroupComponent {
|
|
|
45556
45563
|
* @memberof IgxColumnGroupComponent
|
|
45557
45564
|
*/
|
|
45558
45565
|
get width() {
|
|
45559
|
-
const width = this.getFilledChildColumnSizes(this.children).reduce((acc, val) => acc +
|
|
45566
|
+
const width = this.getFilledChildColumnSizes(this.children).reduce((acc, val) => acc + parseFloat(val), 0);
|
|
45560
45567
|
return width;
|
|
45561
45568
|
}
|
|
45562
45569
|
/* blazorSuppress */
|
|
@@ -45571,7 +45578,7 @@ class IgxColumnLayoutComponent extends IgxColumnGroupComponent {
|
|
|
45571
45578
|
let borderWidth = 0;
|
|
45572
45579
|
if (this.headerGroup && this.headerGroup.hasLastPinnedChildColumn) {
|
|
45573
45580
|
const headerStyles = this.grid.document.defaultView.getComputedStyle(this.headerGroup.nativeElement.children[0]);
|
|
45574
|
-
borderWidth =
|
|
45581
|
+
borderWidth = parseFloat(headerStyles.borderRightWidth);
|
|
45575
45582
|
}
|
|
45576
45583
|
return super.getCalcWidth() + borderWidth;
|
|
45577
45584
|
}
|
|
@@ -49462,8 +49469,8 @@ const GridResourceStringsEN = {
|
|
|
49462
49469
|
igx_grid_excel_custom_dialog_add: 'add filter',
|
|
49463
49470
|
igx_grid_excel_custom_dialog_clear: 'Clear filter',
|
|
49464
49471
|
igx_grid_excel_custom_dialog_header: 'Custom auto-filter on column: ',
|
|
49465
|
-
igx_grid_excel_cancel: '
|
|
49466
|
-
igx_grid_excel_apply: '
|
|
49472
|
+
igx_grid_excel_cancel: 'Cancel',
|
|
49473
|
+
igx_grid_excel_apply: 'Apply',
|
|
49467
49474
|
igx_grid_excel_search_placeholder: 'Search',
|
|
49468
49475
|
igx_grid_excel_select_all: 'Select All',
|
|
49469
49476
|
igx_grid_excel_select_all_search_results: 'Select all search results',
|
|
@@ -50037,10 +50044,11 @@ function generateExpressionsListRecursive(expressions, operator, expressionsUIs)
|
|
|
50037
50044
|
* @hidden
|
|
50038
50045
|
*/
|
|
50039
50046
|
class IgxExcelStyleCustomDialogComponent {
|
|
50040
|
-
constructor(overlayService, cdr, platform) {
|
|
50047
|
+
constructor(overlayService, cdr, platform, esf) {
|
|
50041
50048
|
this.overlayService = overlayService;
|
|
50042
50049
|
this.cdr = cdr;
|
|
50043
50050
|
this.platform = platform;
|
|
50051
|
+
this.esf = esf;
|
|
50044
50052
|
this.expressionsList = new Array();
|
|
50045
50053
|
this._customDialogPositionSettings = {
|
|
50046
50054
|
verticalDirection: VerticalAlignment.Middle,
|
|
@@ -50087,6 +50095,7 @@ class IgxExcelStyleCustomDialogComponent {
|
|
|
50087
50095
|
}
|
|
50088
50096
|
onClearButtonClick() {
|
|
50089
50097
|
this.filteringService.clearFilter(this.column.field);
|
|
50098
|
+
this.selectedOperator = null;
|
|
50090
50099
|
this.createInitialExpressionUIElement();
|
|
50091
50100
|
this.cdr.detectChanges();
|
|
50092
50101
|
}
|
|
@@ -50099,6 +50108,10 @@ class IgxExcelStyleCustomDialogComponent {
|
|
|
50099
50108
|
this.toggle.close();
|
|
50100
50109
|
}
|
|
50101
50110
|
}
|
|
50111
|
+
cancelDialog() {
|
|
50112
|
+
this.esf.cancel();
|
|
50113
|
+
this.closeDialog();
|
|
50114
|
+
}
|
|
50102
50115
|
onApplyButtonClick() {
|
|
50103
50116
|
this.expressionsList = this.expressionsList.filter(element => element.expression.condition &&
|
|
50104
50117
|
(element.expression.searchVal || element.expression.searchVal === 0 || element.expression.condition.isUnary));
|
|
@@ -50209,13 +50222,13 @@ class IgxExcelStyleCustomDialogComponent {
|
|
|
50209
50222
|
this.expressionsContainer.nativeElement.scrollTop = this.expressionsContainer.nativeElement.scrollHeight;
|
|
50210
50223
|
});
|
|
50211
50224
|
}
|
|
50212
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxExcelStyleCustomDialogComponent, deps: [{ token: IgxOverlayService }, { token: i0.ChangeDetectorRef }, { token: PlatformUtil }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
50213
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: IgxExcelStyleCustomDialogComponent, isStandalone: true, selector: "igx-excel-style-custom-dialog", inputs: { expressionsList: "expressionsList", column: "column", selectedOperator: "selectedOperator", filteringService: "filteringService", overlayComponentId: "overlayComponentId" }, viewQueries: [{ propertyName: "toggle", first: true, predicate: ["toggle"], descendants: true, read: IgxToggleDirective, static: true }, { propertyName: "defaultExpressionTemplate", first: true, predicate: ["defaultExpressionTemplate"], descendants: true, read: TemplateRef }, { propertyName: "dateExpressionTemplate", first: true, predicate: ["dateExpressionTemplate"], descendants: true, read: TemplateRef }, { propertyName: "expressionsContainer", first: true, predicate: ["expressionsContainer"], descendants: true, static: true }, { propertyName: "expressionComponents", predicate: IgxExcelStyleDefaultExpressionComponent, descendants: true }, { propertyName: "expressionDateComponents", predicate: IgxExcelStyleDateExpressionComponent, descendants: true }], ngImport: i0, template: "<article #toggle igxToggle\n class=\"igx-excel-filter__secondary\"\n [ngClass]=\"{\n 'igx-excel-filter__secondary--cosy': grid.gridSize === '2',\n 'igx-excel-filter__secondary--compact': grid.gridSize === '1'\n }\"\n (keydown)=\"onKeyDown($event)\"\n (opening)=\"onCustomDialogOpening()\"\n (opened)=\"onCustomDialogOpened()\">\n <header class=\"igx-excel-filter__secondary-header\">\n <h4 class=\"ig-typography__h6\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_header }}{{ column.header || column.field }}\n </h4>\n </header>\n\n <article #expressionsContainer class=\"igx-excel-filter__secondary-main\">\n <ng-container *ngIf=\"column.dataType === 'date' || column.dataType === 'dateTime' || column.dataType === 'time'\">\n <igx-excel-style-date-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-date-expression>\n </ng-container>\n\n <ng-container *ngIf=\"column.dataType !== 'date' && column.dataType !== 'dateTime' && column.dataType !== 'time'\">\n <igx-excel-style-default-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-default-expression>\n </ng-container>\n\n <button type=\"button\" igxButton\n class=\"igx-excel-filter__add-filter\"\n (click)=\"onAddButtonClick()\">\n <igx-icon family=\"default\" name=\"add\"></igx-icon>\n <span>{{ grid.resourceStrings.igx_grid_excel_custom_dialog_add }}</span>\n </button>\n </article>\n\n <footer class=\"igx-excel-filter__secondary-footer\">\n <div class=\"igx-excel-filter__clear\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"onClearButtonClick()\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_clear }}\n </button>\n </div>\n <div class=\"igx-excel-filter__cancel\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"
|
|
50225
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxExcelStyleCustomDialogComponent, deps: [{ token: IgxOverlayService }, { token: i0.ChangeDetectorRef }, { token: PlatformUtil }, { token: BaseFilteringComponent }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
50226
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: IgxExcelStyleCustomDialogComponent, isStandalone: true, selector: "igx-excel-style-custom-dialog", inputs: { expressionsList: "expressionsList", column: "column", selectedOperator: "selectedOperator", filteringService: "filteringService", overlayComponentId: "overlayComponentId" }, viewQueries: [{ propertyName: "toggle", first: true, predicate: ["toggle"], descendants: true, read: IgxToggleDirective, static: true }, { propertyName: "defaultExpressionTemplate", first: true, predicate: ["defaultExpressionTemplate"], descendants: true, read: TemplateRef }, { propertyName: "dateExpressionTemplate", first: true, predicate: ["dateExpressionTemplate"], descendants: true, read: TemplateRef }, { propertyName: "expressionsContainer", first: true, predicate: ["expressionsContainer"], descendants: true, static: true }, { propertyName: "expressionComponents", predicate: IgxExcelStyleDefaultExpressionComponent, descendants: true }, { propertyName: "expressionDateComponents", predicate: IgxExcelStyleDateExpressionComponent, descendants: true }], ngImport: i0, template: "<article #toggle igxToggle\n class=\"igx-excel-filter__secondary\"\n [ngClass]=\"{\n 'igx-excel-filter__secondary--cosy': grid.gridSize === '2',\n 'igx-excel-filter__secondary--compact': grid.gridSize === '1'\n }\"\n (keydown)=\"onKeyDown($event)\"\n (opening)=\"onCustomDialogOpening()\"\n (opened)=\"onCustomDialogOpened()\">\n <header class=\"igx-excel-filter__secondary-header\">\n <h4 class=\"ig-typography__h6\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_header }}{{ column.header || column.field }}\n </h4>\n </header>\n\n <article #expressionsContainer class=\"igx-excel-filter__secondary-main\">\n <ng-container *ngIf=\"column.dataType === 'date' || column.dataType === 'dateTime' || column.dataType === 'time'\">\n <igx-excel-style-date-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-date-expression>\n </ng-container>\n\n <ng-container *ngIf=\"column.dataType !== 'date' && column.dataType !== 'dateTime' && column.dataType !== 'time'\">\n <igx-excel-style-default-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-default-expression>\n </ng-container>\n\n <button type=\"button\" igxButton\n class=\"igx-excel-filter__add-filter\"\n (click)=\"onAddButtonClick()\">\n <igx-icon family=\"default\" name=\"add\"></igx-icon>\n <span>{{ grid.resourceStrings.igx_grid_excel_custom_dialog_add }}</span>\n </button>\n </article>\n\n <footer class=\"igx-excel-filter__secondary-footer\">\n <div class=\"igx-excel-filter__clear\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"onClearButtonClick()\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_clear }}\n </button>\n </div>\n <div class=\"igx-excel-filter__cancel\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"cancelDialog()\">\n {{ grid.resourceStrings.igx_grid_excel_cancel }}\n </button>\n </div>\n <div class=\"igx-excel-filter__apply\">\n <button type=\"button\"\n igxButton=\"contained\"\n (click)=\"onApplyButtonClick()\"\n (keydown)=\"onApplyButtonKeyDown($event)\">\n {{ grid.resourceStrings.igx_grid_excel_apply }}\n </button>\n </div>\n </footer>\n</article>\n", dependencies: [{ kind: "directive", type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: IgxExcelStyleDateExpressionComponent, selector: "igx-excel-style-date-expression" }, { kind: "component", type: IgxExcelStyleDefaultExpressionComponent, selector: "igx-excel-style-default-expression", inputs: ["column", "expressionUI", "expressionsList", "grid"], outputs: ["expressionRemoved", "logicOperatorChanged"] }, { kind: "directive", type: IgxButtonDirective, selector: "[igxButton]", inputs: ["selected", "igxButton", "igxLabel"], outputs: ["buttonSelected"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "name", "active"] }] }); }
|
|
50214
50227
|
}
|
|
50215
50228
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxExcelStyleCustomDialogComponent, decorators: [{
|
|
50216
50229
|
type: Component,
|
|
50217
|
-
args: [{ selector: 'igx-excel-style-custom-dialog', standalone: true, imports: [IgxToggleDirective, NgClass, NgIf, NgFor, IgxExcelStyleDateExpressionComponent, IgxExcelStyleDefaultExpressionComponent, IgxButtonDirective, IgxIconComponent], template: "<article #toggle igxToggle\n class=\"igx-excel-filter__secondary\"\n [ngClass]=\"{\n 'igx-excel-filter__secondary--cosy': grid.gridSize === '2',\n 'igx-excel-filter__secondary--compact': grid.gridSize === '1'\n }\"\n (keydown)=\"onKeyDown($event)\"\n (opening)=\"onCustomDialogOpening()\"\n (opened)=\"onCustomDialogOpened()\">\n <header class=\"igx-excel-filter__secondary-header\">\n <h4 class=\"ig-typography__h6\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_header }}{{ column.header || column.field }}\n </h4>\n </header>\n\n <article #expressionsContainer class=\"igx-excel-filter__secondary-main\">\n <ng-container *ngIf=\"column.dataType === 'date' || column.dataType === 'dateTime' || column.dataType === 'time'\">\n <igx-excel-style-date-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-date-expression>\n </ng-container>\n\n <ng-container *ngIf=\"column.dataType !== 'date' && column.dataType !== 'dateTime' && column.dataType !== 'time'\">\n <igx-excel-style-default-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-default-expression>\n </ng-container>\n\n <button type=\"button\" igxButton\n class=\"igx-excel-filter__add-filter\"\n (click)=\"onAddButtonClick()\">\n <igx-icon family=\"default\" name=\"add\"></igx-icon>\n <span>{{ grid.resourceStrings.igx_grid_excel_custom_dialog_add }}</span>\n </button>\n </article>\n\n <footer class=\"igx-excel-filter__secondary-footer\">\n <div class=\"igx-excel-filter__clear\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"onClearButtonClick()\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_clear }}\n </button>\n </div>\n <div class=\"igx-excel-filter__cancel\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"
|
|
50218
|
-
}], ctorParameters: () => [{ type: IgxOverlayService }, { type: i0.ChangeDetectorRef }, { type: PlatformUtil }], propDecorators: { expressionsList: [{
|
|
50230
|
+
args: [{ selector: 'igx-excel-style-custom-dialog', standalone: true, imports: [IgxToggleDirective, NgClass, NgIf, NgFor, IgxExcelStyleDateExpressionComponent, IgxExcelStyleDefaultExpressionComponent, IgxButtonDirective, IgxIconComponent], template: "<article #toggle igxToggle\n class=\"igx-excel-filter__secondary\"\n [ngClass]=\"{\n 'igx-excel-filter__secondary--cosy': grid.gridSize === '2',\n 'igx-excel-filter__secondary--compact': grid.gridSize === '1'\n }\"\n (keydown)=\"onKeyDown($event)\"\n (opening)=\"onCustomDialogOpening()\"\n (opened)=\"onCustomDialogOpened()\">\n <header class=\"igx-excel-filter__secondary-header\">\n <h4 class=\"ig-typography__h6\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_header }}{{ column.header || column.field }}\n </h4>\n </header>\n\n <article #expressionsContainer class=\"igx-excel-filter__secondary-main\">\n <ng-container *ngIf=\"column.dataType === 'date' || column.dataType === 'dateTime' || column.dataType === 'time'\">\n <igx-excel-style-date-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-date-expression>\n </ng-container>\n\n <ng-container *ngIf=\"column.dataType !== 'date' && column.dataType !== 'dateTime' && column.dataType !== 'time'\">\n <igx-excel-style-default-expression *ngFor=\"let expression of expressionsList;\"\n class=\"igx-excel-filter__condition\"\n [expressionUI]=\"expression\"\n [column]=\"column\"\n [grid]=\"grid\"\n [expressionsList]=\"expressionsList\"\n (expressionRemoved)=\"onExpressionRemoved($event)\"\n (logicOperatorChanged)=\"onLogicOperatorChanged($event)\">\n </igx-excel-style-default-expression>\n </ng-container>\n\n <button type=\"button\" igxButton\n class=\"igx-excel-filter__add-filter\"\n (click)=\"onAddButtonClick()\">\n <igx-icon family=\"default\" name=\"add\"></igx-icon>\n <span>{{ grid.resourceStrings.igx_grid_excel_custom_dialog_add }}</span>\n </button>\n </article>\n\n <footer class=\"igx-excel-filter__secondary-footer\">\n <div class=\"igx-excel-filter__clear\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"onClearButtonClick()\">\n {{ grid.resourceStrings.igx_grid_excel_custom_dialog_clear }}\n </button>\n </div>\n <div class=\"igx-excel-filter__cancel\">\n <button type=\"button\"\n igxButton=\"flat\"\n (click)=\"cancelDialog()\">\n {{ grid.resourceStrings.igx_grid_excel_cancel }}\n </button>\n </div>\n <div class=\"igx-excel-filter__apply\">\n <button type=\"button\"\n igxButton=\"contained\"\n (click)=\"onApplyButtonClick()\"\n (keydown)=\"onApplyButtonKeyDown($event)\">\n {{ grid.resourceStrings.igx_grid_excel_apply }}\n </button>\n </div>\n </footer>\n</article>\n" }]
|
|
50231
|
+
}], ctorParameters: () => [{ type: IgxOverlayService }, { type: i0.ChangeDetectorRef }, { type: PlatformUtil }, { type: BaseFilteringComponent }], propDecorators: { expressionsList: [{
|
|
50219
50232
|
type: Input
|
|
50220
50233
|
}], column: [{
|
|
50221
50234
|
type: Input
|
|
@@ -55079,7 +55092,8 @@ class IgxGridExcelStyleFilteringComponent extends BaseFilteringComponent {
|
|
|
55079
55092
|
this.filterValues = this.generateFilterValues();
|
|
55080
55093
|
this.generateListData();
|
|
55081
55094
|
this.expressionsList.forEach(expr => {
|
|
55082
|
-
if (this.column.dataType === GridColumnDataType.String && this.column.filteringIgnoreCase
|
|
55095
|
+
if (this.column.dataType === GridColumnDataType.String && this.column.filteringIgnoreCase
|
|
55096
|
+
&& expr.expression.searchVal && expr.expression.searchVal instanceof Set) {
|
|
55083
55097
|
this.modifyExpression(expr);
|
|
55084
55098
|
}
|
|
55085
55099
|
});
|
|
@@ -55929,7 +55943,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
55929
55943
|
class IgxHeaderGroupWidthPipe {
|
|
55930
55944
|
transform(width, minWidth, hasLayout) {
|
|
55931
55945
|
const isFitContent = width === 'fit-content';
|
|
55932
|
-
return hasLayout ? '' : isFitContent ? width : `${Math.max(
|
|
55946
|
+
return hasLayout ? '' : isFitContent ? width : `${Math.max(parseFloat(width), minWidth)}px`;
|
|
55933
55947
|
}
|
|
55934
55948
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxHeaderGroupWidthPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
55935
55949
|
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.4", ngImport: i0, type: IgxHeaderGroupWidthPipe, isStandalone: true, name: "igxHeaderGroupWidth" }); }
|
|
@@ -55984,7 +55998,7 @@ class IgxColumnResizingService {
|
|
|
55984
55998
|
* @hidden
|
|
55985
55999
|
*/
|
|
55986
56000
|
getColumnHeaderRenderedWidth() {
|
|
55987
|
-
return this.column.headerCell.nativeElement
|
|
56001
|
+
return parseFloat(window.getComputedStyle(this.column.headerCell.nativeElement).width);
|
|
55988
56002
|
}
|
|
55989
56003
|
/**
|
|
55990
56004
|
* @hidden
|
|
@@ -56040,9 +56054,9 @@ class IgxColumnResizingService {
|
|
|
56040
56054
|
/**
|
|
56041
56055
|
* Resizes the column regaridng to the column minWidth and maxWidth.
|
|
56042
56056
|
*/
|
|
56043
|
-
resizeColumn(event) {
|
|
56057
|
+
resizeColumn(event, ratio = 1) {
|
|
56044
56058
|
this.showResizer = false;
|
|
56045
|
-
const diff = event.clientX - this.startResizePos;
|
|
56059
|
+
const diff = (event.clientX - this.startResizePos) / ratio;
|
|
56046
56060
|
const colWidth = this.column.width;
|
|
56047
56061
|
const isPercentageWidth = colWidth && typeof colWidth === 'string' && colWidth.indexOf('%') !== -1;
|
|
56048
56062
|
let currentColWidth = parseFloat(colWidth);
|
|
@@ -60356,6 +60370,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
60356
60370
|
* @internal
|
|
60357
60371
|
*/
|
|
60358
60372
|
class IgxColumnResizerDirective {
|
|
60373
|
+
get ratio() {
|
|
60374
|
+
return this._ratio;
|
|
60375
|
+
}
|
|
60359
60376
|
constructor(element, document, zone) {
|
|
60360
60377
|
this.element = element;
|
|
60361
60378
|
this.document = document;
|
|
@@ -60366,9 +60383,10 @@ class IgxColumnResizerDirective {
|
|
|
60366
60383
|
this.resizeStart = new Subject();
|
|
60367
60384
|
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
60368
60385
|
this.resize = new Subject();
|
|
60386
|
+
this._ratio = 1;
|
|
60369
60387
|
this._destroy = new Subject();
|
|
60370
60388
|
this.resizeStart.pipe(takeUntil(this._destroy), map((event) => event.clientX), switchMap((offset) => this.resize
|
|
60371
|
-
.pipe(takeUntil(this._destroy), takeUntil(this.resizeEnd), map((event) => event.clientX - offset))))
|
|
60389
|
+
.pipe(takeUntil(this._destroy), takeUntil(this.resizeEnd), map((event) => (event.clientX - offset) / (this._ratio)))))
|
|
60372
60390
|
.subscribe((pos) => {
|
|
60373
60391
|
const left = this._left + pos;
|
|
60374
60392
|
const min = this._left - this.restrictHResizeMin;
|
|
@@ -60411,7 +60429,12 @@ class IgxColumnResizerDirective {
|
|
|
60411
60429
|
onMousedown(event) {
|
|
60412
60430
|
event.preventDefault();
|
|
60413
60431
|
const parent = this.element.nativeElement.parentElement.parentElement;
|
|
60414
|
-
|
|
60432
|
+
const parentRectWidth = parent.getBoundingClientRect().width;
|
|
60433
|
+
const parentComputedWidth = parseFloat(window.getComputedStyle(parent).width);
|
|
60434
|
+
if (Math.abs(parentRectWidth - parentComputedWidth) > 1) {
|
|
60435
|
+
this._ratio = parentRectWidth / parentComputedWidth;
|
|
60436
|
+
}
|
|
60437
|
+
this.left = this._left = (event.clientX - parent.getBoundingClientRect().left) / this._ratio;
|
|
60415
60438
|
this.top = event.target.getBoundingClientRect().top - parent.getBoundingClientRect().top;
|
|
60416
60439
|
this.resizeStart.next(event);
|
|
60417
60440
|
}
|
|
@@ -60450,11 +60473,11 @@ class IgxGridColumnResizerComponent {
|
|
|
60450
60473
|
this.colResizingService = colResizingService;
|
|
60451
60474
|
}
|
|
60452
60475
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxGridColumnResizerComponent, deps: [{ token: IgxColumnResizingService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
60453
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: IgxGridColumnResizerComponent, isStandalone: true, selector: "igx-grid-column-resizer", inputs: { restrictResizerTop: "restrictResizerTop" }, viewQueries: [{ propertyName: "resizer", first: true, predicate: IgxColumnResizerDirective, descendants: true, static: true }], ngImport: i0, template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event)\">\n</div>\n", dependencies: [{ kind: "directive", type: IgxColumnResizerDirective, selector: "[igxResizer]", inputs: ["restrictHResizeMin", "restrictHResizeMax", "restrictResizerTop"], outputs: ["resizeEnd", "resizeStart", "resize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
60476
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: IgxGridColumnResizerComponent, isStandalone: true, selector: "igx-grid-column-resizer", inputs: { restrictResizerTop: "restrictResizerTop" }, viewQueries: [{ propertyName: "resizer", first: true, predicate: IgxColumnResizerDirective, descendants: true, static: true }], ngImport: i0, template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event, resizer.ratio)\">\n</div>\n", dependencies: [{ kind: "directive", type: IgxColumnResizerDirective, selector: "[igxResizer]", inputs: ["restrictHResizeMin", "restrictHResizeMax", "restrictResizerTop"], outputs: ["resizeEnd", "resizeStart", "resize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
60454
60477
|
}
|
|
60455
60478
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxGridColumnResizerComponent, decorators: [{
|
|
60456
60479
|
type: Component,
|
|
60457
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-grid-column-resizer', standalone: true, imports: [IgxColumnResizerDirective], template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event)\">\n</div>\n" }]
|
|
60480
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-grid-column-resizer', standalone: true, imports: [IgxColumnResizerDirective], template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event, resizer.ratio)\">\n</div>\n" }]
|
|
60458
60481
|
}], ctorParameters: () => [{ type: IgxColumnResizingService }], propDecorators: { restrictResizerTop: [{
|
|
60459
60482
|
type: Input
|
|
60460
60483
|
}], resizer: [{
|
|
@@ -64165,6 +64188,10 @@ class IgxGridBaseDirective {
|
|
|
64165
64188
|
* @hidden @internal
|
|
64166
64189
|
*/
|
|
64167
64190
|
this.filteringPipeTrigger = 0;
|
|
64191
|
+
/**
|
|
64192
|
+
* @hidden @internal
|
|
64193
|
+
*/
|
|
64194
|
+
this.isColumnWidthSum = false;
|
|
64168
64195
|
/**
|
|
64169
64196
|
* @hidden @internal
|
|
64170
64197
|
*/
|
|
@@ -64293,7 +64320,6 @@ class IgxGridBaseDirective {
|
|
|
64293
64320
|
this._rowSelectionMode = GridSelectionMode.none;
|
|
64294
64321
|
this._selectRowOnClick = true;
|
|
64295
64322
|
this._columnSelectionMode = GridSelectionMode.none;
|
|
64296
|
-
this.isColumnWidthSum = false;
|
|
64297
64323
|
this.rowEditPositioningStrategy = new RowEditPositionStrategy({
|
|
64298
64324
|
horizontalDirection: HorizontalAlignment.Right,
|
|
64299
64325
|
verticalDirection: VerticalAlignment.Bottom,
|
|
@@ -65338,7 +65364,7 @@ class IgxGridBaseDirective {
|
|
|
65338
65364
|
let totalWidth = 0;
|
|
65339
65365
|
let i = 0;
|
|
65340
65366
|
for (i; i < cols.length; i++) {
|
|
65341
|
-
totalWidth +=
|
|
65367
|
+
totalWidth += parseFloat(cols[i].calcWidth) || 0;
|
|
65342
65368
|
}
|
|
65343
65369
|
this._totalWidth = totalWidth;
|
|
65344
65370
|
return totalWidth;
|
|
@@ -66102,7 +66128,7 @@ class IgxGridBaseDirective {
|
|
|
66102
66128
|
}
|
|
66103
66129
|
else {
|
|
66104
66130
|
computedWidth = this.calcWidth ||
|
|
66105
|
-
|
|
66131
|
+
parseFloat(this.document.defaultView.getComputedStyle(this.nativeElement).getPropertyValue('width'));
|
|
66106
66132
|
}
|
|
66107
66133
|
const visibleChildColumns = this.visibleColumns.filter(c => !c.columnGroup);
|
|
66108
66134
|
// Column layouts related
|
|
@@ -66121,7 +66147,7 @@ class IgxGridBaseDirective {
|
|
|
66121
66147
|
const sumExistingWidths = columnsWithSetWidths
|
|
66122
66148
|
.reduce((prev, curr) => {
|
|
66123
66149
|
const colWidth = curr.width;
|
|
66124
|
-
let widthValue =
|
|
66150
|
+
let widthValue = parseFloat(colWidth);
|
|
66125
66151
|
if (isNaN(widthValue)) {
|
|
66126
66152
|
widthValue = MINIMUM_COLUMN_WIDTH$1;
|
|
66127
66153
|
}
|
|
@@ -66135,9 +66161,9 @@ class IgxGridBaseDirective {
|
|
|
66135
66161
|
return '0px';
|
|
66136
66162
|
}
|
|
66137
66163
|
computedWidth -= this.featureColumnsWidth();
|
|
66138
|
-
const columnWidth =
|
|
66164
|
+
const columnWidth = !Number.isFinite(sumExistingWidths) ?
|
|
66139
66165
|
Math.max(computedWidth / columnsToSize, this.minColumnWidth) :
|
|
66140
|
-
Math.max((computedWidth - sumExistingWidths) / columnsToSize, this.minColumnWidth)
|
|
66166
|
+
Math.max((computedWidth - sumExistingWidths) / columnsToSize, this.minColumnWidth);
|
|
66141
66167
|
return columnWidth + 'px';
|
|
66142
66168
|
}
|
|
66143
66169
|
/**
|
|
@@ -67106,8 +67132,11 @@ class IgxGridBaseDirective {
|
|
|
67106
67132
|
width = this.nativeElement.offsetWidth;
|
|
67107
67133
|
}
|
|
67108
67134
|
if (this.width === null || !width) {
|
|
67109
|
-
width = this.getColumnWidthSum();
|
|
67110
67135
|
this.isColumnWidthSum = true;
|
|
67136
|
+
width = this.getColumnWidthSum();
|
|
67137
|
+
}
|
|
67138
|
+
else {
|
|
67139
|
+
this.isColumnWidthSum = false;
|
|
67111
67140
|
}
|
|
67112
67141
|
if (this.hasVerticalScroll() && this.width !== null) {
|
|
67113
67142
|
width -= this.scrollSize;
|
|
@@ -67126,8 +67155,8 @@ class IgxGridBaseDirective {
|
|
|
67126
67155
|
this._columnWidth = this.width !== null ? this.getPossibleColumnWidth() : this.minColumnWidth + 'px';
|
|
67127
67156
|
}
|
|
67128
67157
|
this._columns.forEach((column) => {
|
|
67129
|
-
if (this.hasColumnLayouts &&
|
|
67130
|
-
const columnWidthCombined =
|
|
67158
|
+
if (this.hasColumnLayouts && parseFloat(this._columnWidth)) {
|
|
67159
|
+
const columnWidthCombined = parseFloat(this._columnWidth) * (column.colEnd ? column.colEnd - column.colStart : 1);
|
|
67131
67160
|
column.defaultWidth = columnWidthCombined + 'px';
|
|
67132
67161
|
}
|
|
67133
67162
|
else {
|
|
@@ -74641,11 +74670,11 @@ class IgxPivotGridColumnResizerComponent extends IgxGridColumnResizerComponent {
|
|
|
74641
74670
|
this.colResizingService = colResizingService;
|
|
74642
74671
|
}
|
|
74643
74672
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxPivotGridColumnResizerComponent, deps: [{ token: IgxPivotColumnResizingService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
74644
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: IgxPivotGridColumnResizerComponent, isStandalone: true, selector: "igx-pivot-grid-column-resizer", usesInheritance: true, ngImport: i0, template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event)\">\n</div>\n", dependencies: [{ kind: "directive", type: IgxColumnResizerDirective, selector: "[igxResizer]", inputs: ["restrictHResizeMin", "restrictHResizeMax", "restrictResizerTop"], outputs: ["resizeEnd", "resizeStart", "resize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
74673
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: IgxPivotGridColumnResizerComponent, isStandalone: true, selector: "igx-pivot-grid-column-resizer", usesInheritance: true, ngImport: i0, template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event, resizer.ratio)\">\n</div>\n", dependencies: [{ kind: "directive", type: IgxColumnResizerDirective, selector: "[igxResizer]", inputs: ["restrictHResizeMin", "restrictHResizeMax", "restrictResizerTop"], outputs: ["resizeEnd", "resizeStart", "resize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
74645
74674
|
}
|
|
74646
74675
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IgxPivotGridColumnResizerComponent, decorators: [{
|
|
74647
74676
|
type: Component,
|
|
74648
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-pivot-grid-column-resizer', standalone: true, imports: [IgxColumnResizerDirective], template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event)\">\n</div>\n" }]
|
|
74677
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-pivot-grid-column-resizer', standalone: true, imports: [IgxColumnResizerDirective], template: "<div class=\"igx-grid-th__resize-line\"\n [style.left.px]=\"-99999\" igxResizer\n [style.height.px]=\"colResizingService.resizerHeight\"\n [restrictHResizeMax]=\"colResizingService.restrictResizeMax\"\n [restrictHResizeMin]=\"colResizingService.restrictResizeMin\"\n [restrictResizerTop]=\"restrictResizerTop\"\n (resizeEnd)=\"colResizingService.resizeColumn($event, resizer.ratio)\">\n</div>\n" }]
|
|
74649
74678
|
}], ctorParameters: () => [{ type: IgxPivotColumnResizingService }] });
|
|
74650
74679
|
|
|
74651
74680
|
class DefaultPivotGridRecordSortingStrategy extends DefaultSortingStrategy {
|
|
@@ -83435,6 +83464,7 @@ class IgxHierarchicalGridBaseDirective extends IgxGridBaseDirective {
|
|
|
83435
83464
|
const columns = [];
|
|
83436
83465
|
const topLevelCols = cols.filter(c => c.level === 0);
|
|
83437
83466
|
topLevelCols.forEach((col) => {
|
|
83467
|
+
col.grid = this;
|
|
83438
83468
|
const ref = this._createColumn(col);
|
|
83439
83469
|
ref.changeDetectorRef.detectChanges();
|
|
83440
83470
|
columns.push(ref.instance);
|