@clr/angular 17.0.0-beta.1 → 17.0.0-beta.3
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/clarity.api.md +15 -27
- package/data/datagrid/datagrid-if-expanded.service.d.ts +1 -1
- package/data/datagrid/datagrid.module.d.ts +36 -37
- package/data/datagrid/index.d.ts +0 -1
- package/data/datagrid/providers/items.d.ts +2 -11
- package/esm2020/button/button-group/button-group.mjs +9 -11
- package/esm2020/button/button-loading/loading-button.mjs +15 -5
- package/esm2020/data/datagrid/datagrid-column-toggle.mjs +3 -4
- package/esm2020/data/datagrid/datagrid-if-expanded.service.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-items.mjs +1 -2
- package/esm2020/data/datagrid/datagrid.mjs +3 -5
- package/esm2020/data/datagrid/datagrid.module.mjs +1 -5
- package/esm2020/data/datagrid/index.mjs +1 -2
- package/esm2020/data/datagrid/providers/items.mjs +3 -21
- package/esm2020/data/datagrid/providers/selection.mjs +16 -22
- package/esm2020/emphasis/alert/alert.mjs +2 -2
- package/esm2020/forms/common/wrapped-control.mjs +6 -4
- package/esm2020/forms/datepicker/date-input.mjs +10 -1
- package/esm2020/forms/datepicker/providers/date-io.service.mjs +2 -2
- package/esm2020/utils/chocolate/willy-wonka.mjs +1 -1
- package/esm2020/utils/focus/key-focus/key-focus.mjs +2 -2
- package/esm2020/utils/popover/providers/popover-position.service.mjs +11 -3
- package/esm2020/wizard/providers/button-hub.service.mjs +1 -1
- package/esm2020/wizard/providers/wizard-navigation.service.mjs +1 -1
- package/esm2020/wizard/wizard.mjs +2 -2
- package/fesm2015/clr-angular.mjs +73 -116
- package/fesm2015/clr-angular.mjs.map +1 -1
- package/fesm2020/clr-angular.mjs +71 -113
- package/fesm2020/clr-angular.mjs.map +1 -1
- package/forms/common/wrapped-control.d.ts +1 -1
- package/forms/datepicker/date-input.d.ts +1 -0
- package/package.json +2 -2
- package/utils/chocolate/willy-wonka.d.ts +1 -1
- package/wizard/providers/button-hub.service.d.ts +6 -6
- package/wizard/providers/wizard-navigation.service.d.ts +1 -1
- package/data/datagrid/datagrid-items-trackby.d.ts +0 -10
- package/esm2020/data/datagrid/datagrid-items-trackby.mjs +0 -43
package/fesm2020/clr-angular.mjs
CHANGED
|
@@ -1942,12 +1942,12 @@ class ClrPopoverPositionService {
|
|
|
1942
1942
|
*
|
|
1943
1943
|
* Note, more than 3 viewport violations and there isn't anything we can do to help. Also when there are two
|
|
1944
1944
|
* violations, we can't help if the violations are TOP+BOTTOM || LEFT+RIGHT => There is no transformation we
|
|
1945
|
-
* can make to the
|
|
1945
|
+
* can make to the position that will help.
|
|
1946
1946
|
*
|
|
1947
1947
|
* Some examples:
|
|
1948
1948
|
* There is only one error and Primary axis is VERTICAL
|
|
1949
1949
|
* - this.handleVerticalAxisOneViolation has a switch that will use the error sum to apply the correct
|
|
1950
|
-
* transform to the
|
|
1950
|
+
* transform to the position based on the reduction of visibilityViolations.
|
|
1951
1951
|
*
|
|
1952
1952
|
* There are two errors and Primary axis is HORIZONTAL
|
|
1953
1953
|
* - handleHorizontalAxisTwoViolations has a switch that uses the error sum to apply both transforms needed to
|
|
@@ -1979,6 +1979,14 @@ class ClrPopoverPositionService {
|
|
|
1979
1979
|
if (this.currentContentCoords.top < 0) {
|
|
1980
1980
|
this.contentOffsets.yOffset += Math.abs(this.currentContentCoords.top);
|
|
1981
1981
|
}
|
|
1982
|
+
/**
|
|
1983
|
+
* This detects the condition where the popover is flipped because it would violate the bottom of the viewport, but flipping it results in the
|
|
1984
|
+
* popover rendering above the top of the body (y coordinate outside the body). In that event, it should be rendered within the body
|
|
1985
|
+
* as much as possible, so this logic sets the top of popover to render touching the top of the body.
|
|
1986
|
+
*/
|
|
1987
|
+
if (this.contentOffsets.yOffset + this.currentAnchorCoords.y < 0) {
|
|
1988
|
+
this.contentOffsets.yOffset = 0 - this.currentContentCoords.top;
|
|
1989
|
+
}
|
|
1982
1990
|
return this.contentOffsets;
|
|
1983
1991
|
}
|
|
1984
1992
|
handleVerticalAxisOneViolation(errorSum) {
|
|
@@ -3804,16 +3812,14 @@ class ClrButtonGroup {
|
|
|
3804
3812
|
this.menuButtons = tempInMenuButtons;
|
|
3805
3813
|
}
|
|
3806
3814
|
handleFocusOnMenuOpen() {
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
this.
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
});
|
|
3816
|
-
}
|
|
3815
|
+
this.toggleService.popoverVisible.pipe(takeUntil(this.destroy$)).subscribe(visible => {
|
|
3816
|
+
if (visible) {
|
|
3817
|
+
this.focusHandler.initialize({
|
|
3818
|
+
menu: this.menu.nativeElement,
|
|
3819
|
+
menuToggle: this.menuToggle.nativeElement,
|
|
3820
|
+
});
|
|
3821
|
+
}
|
|
3822
|
+
});
|
|
3817
3823
|
}
|
|
3818
3824
|
}
|
|
3819
3825
|
ClrButtonGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrButtonGroup, deps: [{ token: ButtonInGroupService }, { token: ClrPopoverToggleService }, { token: ClrCommonStringsService }, { token: ClrDestroyService }, { token: ButtonGroupFocusHandler }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -3912,7 +3918,7 @@ class ClrLoadingButton {
|
|
|
3912
3918
|
}
|
|
3913
3919
|
ClrLoadingButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrLoadingButton, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
3914
3920
|
ClrLoadingButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrLoadingButton, selector: "button[clrLoading]", inputs: { disabled: "disabled" }, outputs: { clrLoadingChange: "clrLoadingChange" }, host: { properties: { "attr.disabled": "disabled? '' : null" } }, providers: [{ provide: LoadingListener, useExisting: ClrLoadingButton }], ngImport: i0, template: `
|
|
3915
|
-
<
|
|
3921
|
+
<span @parent [ngSwitch]="state">
|
|
3916
3922
|
<span *ngSwitchCase="buttonState.LOADING">
|
|
3917
3923
|
<span @spinner class="spinner spinner-inline"></span>
|
|
3918
3924
|
</span>
|
|
@@ -3926,8 +3932,13 @@ ClrLoadingButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
|
|
|
3926
3932
|
<span *ngSwitchCase="buttonState.DEFAULT" @defaultButton>
|
|
3927
3933
|
<ng-content></ng-content>
|
|
3928
3934
|
</span>
|
|
3929
|
-
</
|
|
3935
|
+
</span>
|
|
3930
3936
|
`, isInline: true, dependencies: [{ kind: "directive", type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], animations: [
|
|
3937
|
+
trigger('parent', [
|
|
3938
|
+
// Skip :enter animation on first render.
|
|
3939
|
+
// The button text/content should only be faded when transitioning to or from a non-default state.
|
|
3940
|
+
transition(':enter', []),
|
|
3941
|
+
]),
|
|
3931
3942
|
trigger('defaultButton', [
|
|
3932
3943
|
transition(':enter', [style({ opacity: 0 }), animate('200ms 100ms ease-in', style({ opacity: 1 }))]),
|
|
3933
3944
|
// TODO: see if we can get leave animation to work before spinner's enter animation
|
|
@@ -3955,7 +3966,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
3955
3966
|
args: [{
|
|
3956
3967
|
selector: 'button[clrLoading]',
|
|
3957
3968
|
template: `
|
|
3958
|
-
<
|
|
3969
|
+
<span @parent [ngSwitch]="state">
|
|
3959
3970
|
<span *ngSwitchCase="buttonState.LOADING">
|
|
3960
3971
|
<span @spinner class="spinner spinner-inline"></span>
|
|
3961
3972
|
</span>
|
|
@@ -3969,10 +3980,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
3969
3980
|
<span *ngSwitchCase="buttonState.DEFAULT" @defaultButton>
|
|
3970
3981
|
<ng-content></ng-content>
|
|
3971
3982
|
</span>
|
|
3972
|
-
</
|
|
3983
|
+
</span>
|
|
3973
3984
|
`,
|
|
3974
3985
|
providers: [{ provide: LoadingListener, useExisting: ClrLoadingButton }],
|
|
3975
3986
|
animations: [
|
|
3987
|
+
trigger('parent', [
|
|
3988
|
+
// Skip :enter animation on first render.
|
|
3989
|
+
// The button text/content should only be faded when transitioning to or from a non-default state.
|
|
3990
|
+
transition(':enter', []),
|
|
3991
|
+
]),
|
|
3976
3992
|
trigger('defaultButton', [
|
|
3977
3993
|
transition(':enter', [style({ opacity: 0 }), animate('200ms 100ms ease-in', style({ opacity: 1 }))]),
|
|
3978
3994
|
// TODO: see if we can get leave animation to work before spinner's enter animation
|
|
@@ -4850,7 +4866,7 @@ class WrappedFormControl {
|
|
|
4850
4866
|
else {
|
|
4851
4867
|
this._id = this.controlIdService.id;
|
|
4852
4868
|
}
|
|
4853
|
-
if (this.ngControlService) {
|
|
4869
|
+
if (this.ngControlService && this.ngControl) {
|
|
4854
4870
|
this.ngControlService.setControl(this.ngControl);
|
|
4855
4871
|
}
|
|
4856
4872
|
}
|
|
@@ -4888,8 +4904,10 @@ class WrappedFormControl {
|
|
|
4888
4904
|
}
|
|
4889
4905
|
}
|
|
4890
4906
|
markAsTouched() {
|
|
4891
|
-
this.ngControl
|
|
4892
|
-
|
|
4907
|
+
if (this.ngControl) {
|
|
4908
|
+
this.ngControl.control.markAsTouched();
|
|
4909
|
+
this.ngControl.control.updateValueAndValidity();
|
|
4910
|
+
}
|
|
4893
4911
|
}
|
|
4894
4912
|
setAriaDescribedBy(helpers) {
|
|
4895
4913
|
if (helpers.show) {
|
|
@@ -5763,7 +5781,7 @@ class ClrKeyFocus {
|
|
|
5763
5781
|
}
|
|
5764
5782
|
if (this.focusOnLoad) {
|
|
5765
5783
|
this.currentItem.focus();
|
|
5766
|
-
this.focusChange.
|
|
5784
|
+
this.focusChange.emit();
|
|
5767
5785
|
}
|
|
5768
5786
|
}
|
|
5769
5787
|
}
|
|
@@ -8391,7 +8409,7 @@ class DateIOService {
|
|
|
8391
8409
|
return '';
|
|
8392
8410
|
}
|
|
8393
8411
|
getDateValueFromDateString(date) {
|
|
8394
|
-
if (!date) {
|
|
8412
|
+
if (!date || typeof date !== 'string') {
|
|
8395
8413
|
return null;
|
|
8396
8414
|
}
|
|
8397
8415
|
const dateParts = date.match(USER_INPUT_REGEX);
|
|
@@ -9597,9 +9615,11 @@ class ClrDateInput extends WrappedFormControl {
|
|
|
9597
9615
|
}
|
|
9598
9616
|
set min(dateString) {
|
|
9599
9617
|
this.dateIOService.setMinDate(dateString);
|
|
9618
|
+
this.triggerControlValidation();
|
|
9600
9619
|
}
|
|
9601
9620
|
set max(dateString) {
|
|
9602
9621
|
this.dateIOService.setMaxDate(dateString);
|
|
9622
|
+
this.triggerControlValidation();
|
|
9603
9623
|
}
|
|
9604
9624
|
get disabled() {
|
|
9605
9625
|
if (this.dateFormControlService) {
|
|
@@ -9664,6 +9684,13 @@ class ClrDateInput extends WrappedFormControl {
|
|
|
9664
9684
|
this.focusService.focused = focus;
|
|
9665
9685
|
}
|
|
9666
9686
|
}
|
|
9687
|
+
triggerControlValidation() {
|
|
9688
|
+
if (this.datepickerHasFormControl()) {
|
|
9689
|
+
// Set `emitEvent` to false to prevent unnecessary value change event. Status change event will be emitted by `setErrors` below.
|
|
9690
|
+
this.control.control?.updateValueAndValidity({ emitEvent: false });
|
|
9691
|
+
this.control.control?.setErrors(this.control.control.errors);
|
|
9692
|
+
}
|
|
9693
|
+
}
|
|
9667
9694
|
populateServicesFromContainerComponent() {
|
|
9668
9695
|
if (!this.container) {
|
|
9669
9696
|
this.dateIOService = this.getProviderFromContainer(DateIOService);
|
|
@@ -13218,11 +13245,9 @@ class Items {
|
|
|
13218
13245
|
this._change = new Subject();
|
|
13219
13246
|
this._allChanges = new Subject();
|
|
13220
13247
|
/**
|
|
13221
|
-
* Tracking function to identify objects.
|
|
13222
|
-
*
|
|
13223
|
-
* @deprecated in v15 and scheduled for removal in v17 (CDE-71)
|
|
13248
|
+
* Tracking function to identify objects.
|
|
13224
13249
|
*/
|
|
13225
|
-
this.
|
|
13250
|
+
this.trackBy = item => item;
|
|
13226
13251
|
}
|
|
13227
13252
|
get smart() {
|
|
13228
13253
|
return this._smart;
|
|
@@ -13299,22 +13324,6 @@ class Items {
|
|
|
13299
13324
|
this._filterItems();
|
|
13300
13325
|
}
|
|
13301
13326
|
}
|
|
13302
|
-
canTrackBy() {
|
|
13303
|
-
// all items are needed unless `datagridTrackBy` is set because `iteratorTrackBy` requires the item's index
|
|
13304
|
-
return !!this.datagridTrackBy || Array.isArray(this.all);
|
|
13305
|
-
}
|
|
13306
|
-
trackBy(item, index) {
|
|
13307
|
-
if (this.datagridTrackBy) {
|
|
13308
|
-
return this.datagridTrackBy(item);
|
|
13309
|
-
}
|
|
13310
|
-
else if (Array.isArray(this.all)) {
|
|
13311
|
-
index = index ?? this.all.indexOf(item);
|
|
13312
|
-
return this.iteratorTrackBy(index, item);
|
|
13313
|
-
}
|
|
13314
|
-
else {
|
|
13315
|
-
throw new Error('improper call to Items#trackBy');
|
|
13316
|
-
}
|
|
13317
|
-
}
|
|
13318
13327
|
emitChange() {
|
|
13319
13328
|
this._change.next(this.displayed);
|
|
13320
13329
|
}
|
|
@@ -13397,7 +13406,6 @@ class ClrDatagridItems {
|
|
|
13397
13406
|
this._rawItems = items ? items : []; // local copy for ngOnChange diffing
|
|
13398
13407
|
}
|
|
13399
13408
|
set trackBy(value) {
|
|
13400
|
-
this.items.iteratorTrackBy = value;
|
|
13401
13409
|
this.iterableProxy.ngForTrackBy = value;
|
|
13402
13410
|
}
|
|
13403
13411
|
/**
|
|
@@ -13912,12 +13920,10 @@ class Selection {
|
|
|
13912
13920
|
let selectionUpdated = false;
|
|
13913
13921
|
// if the currentSingle has been set before data was loaded, we look up and save the ref from current data set
|
|
13914
13922
|
if (this.currentSingle && !this.prevSingleSelectionRef) {
|
|
13915
|
-
|
|
13916
|
-
this.prevSingleSelectionRef = this._items.trackBy(this.currentSingle);
|
|
13917
|
-
}
|
|
13923
|
+
this.prevSingleSelectionRef = this._items.trackBy(this.currentSingle);
|
|
13918
13924
|
}
|
|
13919
|
-
updatedItems.forEach(
|
|
13920
|
-
const ref = this._items.trackBy(item
|
|
13925
|
+
updatedItems.forEach(item => {
|
|
13926
|
+
const ref = this._items.trackBy(item);
|
|
13921
13927
|
// If one of the updated items is the previously selectedSingle, set it as the new one
|
|
13922
13928
|
if (this.prevSingleSelectionRef === ref) {
|
|
13923
13929
|
newSingle = item;
|
|
@@ -13950,20 +13956,18 @@ class Selection {
|
|
|
13950
13956
|
let selectionUpdated = false;
|
|
13951
13957
|
// if the current has been set before data was loaded, we look up and save the ref from current data set
|
|
13952
13958
|
if (this.current.length > 0 && this.prevSelectionRefs.length !== this.current.length) {
|
|
13953
|
-
|
|
13954
|
-
|
|
13955
|
-
this.
|
|
13956
|
-
|
|
13957
|
-
});
|
|
13958
|
-
}
|
|
13959
|
+
this.prevSelectionRefs = [];
|
|
13960
|
+
this.current.forEach(item => {
|
|
13961
|
+
this.prevSelectionRefs.push(this._items.trackBy(item));
|
|
13962
|
+
});
|
|
13959
13963
|
}
|
|
13960
13964
|
// Duplicate loop, when the issue is issue#2342 is revisited keep in mind that
|
|
13961
13965
|
// we need to go over every updated item and check to see if there are valid to be
|
|
13962
13966
|
// locked or not and update it. When only add items that are found in the lockedRefs back.
|
|
13963
13967
|
//
|
|
13964
13968
|
// The both loops below that goes over updatedItems could be combined into one.
|
|
13965
|
-
updatedItems.forEach(
|
|
13966
|
-
const ref = this._items.trackBy(item
|
|
13969
|
+
updatedItems.forEach(item => {
|
|
13970
|
+
const ref = this._items.trackBy(item);
|
|
13967
13971
|
if (this.lockedRefs.indexOf(ref) > -1) {
|
|
13968
13972
|
updateLockedRef.push(ref);
|
|
13969
13973
|
}
|
|
@@ -13972,8 +13976,8 @@ class Selection {
|
|
|
13972
13976
|
// currently, the selection is cleared when filter is applied, so the logic inside
|
|
13973
13977
|
// the if statement below results in broken behavior.
|
|
13974
13978
|
if (leftOver.length > 0) {
|
|
13975
|
-
updatedItems.forEach(
|
|
13976
|
-
const ref = this._items.trackBy(item
|
|
13979
|
+
updatedItems.forEach(item => {
|
|
13980
|
+
const ref = this._items.trackBy(item);
|
|
13977
13981
|
// Look in current selected refs array if item is selected, and update actual value
|
|
13978
13982
|
const selectedIndex = this.prevSelectionRefs.indexOf(ref);
|
|
13979
13983
|
if (selectedIndex > -1) {
|
|
@@ -14039,7 +14043,7 @@ class Selection {
|
|
|
14039
14043
|
return;
|
|
14040
14044
|
}
|
|
14041
14045
|
this._currentSingle = value;
|
|
14042
|
-
if (
|
|
14046
|
+
if (value) {
|
|
14043
14047
|
this.prevSingleSelectionRef = this._items.trackBy(value);
|
|
14044
14048
|
}
|
|
14045
14049
|
this.emitChange();
|
|
@@ -14185,10 +14189,8 @@ class Selection {
|
|
|
14185
14189
|
*/
|
|
14186
14190
|
selectItem(item) {
|
|
14187
14191
|
this.current = this.current.concat(item);
|
|
14188
|
-
|
|
14189
|
-
|
|
14190
|
-
this.prevSelectionRefs.push(this._items.trackBy(item));
|
|
14191
|
-
}
|
|
14192
|
+
// Push selected ref onto array
|
|
14193
|
+
this.prevSelectionRefs.push(this._items.trackBy(item));
|
|
14192
14194
|
}
|
|
14193
14195
|
/**
|
|
14194
14196
|
* Deselects an item
|
|
@@ -14206,7 +14208,7 @@ class Selection {
|
|
|
14206
14208
|
* Make sure that it could be locked
|
|
14207
14209
|
*/
|
|
14208
14210
|
canItBeLocked() {
|
|
14209
|
-
return this._selectionType !== SelectionType.None
|
|
14211
|
+
return this._selectionType !== SelectionType.None;
|
|
14210
14212
|
}
|
|
14211
14213
|
emitChange() {
|
|
14212
14214
|
if (this._selectionType === SelectionType.Single) {
|
|
@@ -14988,7 +14990,7 @@ class ClrDatagrid {
|
|
|
14988
14990
|
this.selection.rowSelectionMode = value;
|
|
14989
14991
|
}
|
|
14990
14992
|
set trackBy(value) {
|
|
14991
|
-
this.items.
|
|
14993
|
+
this.items.trackBy = value;
|
|
14992
14994
|
}
|
|
14993
14995
|
/**
|
|
14994
14996
|
* Indicates if all currently displayed items are selected
|
|
@@ -15030,9 +15032,7 @@ class ClrDatagrid {
|
|
|
15030
15032
|
});
|
|
15031
15033
|
// Try to update only when there is something cached and its open.
|
|
15032
15034
|
if (this.detailService.state && this.detailService.isOpen) {
|
|
15033
|
-
const row = this.items.
|
|
15034
|
-
? this.rows.find(row => this.items.trackBy(row.item) === this.items.trackBy(this.detailService.state))
|
|
15035
|
-
: undefined;
|
|
15035
|
+
const row = this.rows.find(row => this.items.trackBy(row.item) === this.items.trackBy(this.detailService.state));
|
|
15036
15036
|
/**
|
|
15037
15037
|
* Reopen updated row or close it
|
|
15038
15038
|
*/
|
|
@@ -15415,45 +15415,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
15415
15415
|
*/
|
|
15416
15416
|
const columnToggleTrackByFn = index => index;
|
|
15417
15417
|
|
|
15418
|
-
/*
|
|
15419
|
-
* Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.
|
|
15420
|
-
* This software is released under MIT license.
|
|
15421
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
15422
|
-
*/
|
|
15423
|
-
class ClrDatagridItemsTrackBy {
|
|
15424
|
-
constructor(_items) {
|
|
15425
|
-
this._items = _items;
|
|
15426
|
-
}
|
|
15427
|
-
set trackBy(value) {
|
|
15428
|
-
/**
|
|
15429
|
-
* This is a workaround to prevent the items `trackBy` function from
|
|
15430
|
-
* being replaced when the "manage columns" button is clicked. This is
|
|
15431
|
-
* not a complete solution. If there is another `ngForTrackBy` function
|
|
15432
|
-
* within the datagrid in application code, it could sill replace the
|
|
15433
|
-
* items `trackBy` function whether it is the row iterator or not.
|
|
15434
|
-
*/
|
|
15435
|
-
if (value === columnToggleTrackByFn) {
|
|
15436
|
-
return;
|
|
15437
|
-
}
|
|
15438
|
-
if (this._items) {
|
|
15439
|
-
this._items.iteratorTrackBy = value;
|
|
15440
|
-
}
|
|
15441
|
-
}
|
|
15442
|
-
}
|
|
15443
|
-
ClrDatagridItemsTrackBy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDatagridItemsTrackBy, deps: [{ token: Items, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
15444
|
-
ClrDatagridItemsTrackBy.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ClrDatagridItemsTrackBy, selector: "[ngForTrackBy]", inputs: { trackBy: ["ngForTrackBy", "trackBy"] }, ngImport: i0 });
|
|
15445
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDatagridItemsTrackBy, decorators: [{
|
|
15446
|
-
type: Directive,
|
|
15447
|
-
args: [{
|
|
15448
|
-
selector: '[ngForTrackBy]',
|
|
15449
|
-
}]
|
|
15450
|
-
}], ctorParameters: function () { return [{ type: Items, decorators: [{
|
|
15451
|
-
type: Optional
|
|
15452
|
-
}] }]; }, propDecorators: { trackBy: [{
|
|
15453
|
-
type: Input,
|
|
15454
|
-
args: ['ngForTrackBy']
|
|
15455
|
-
}] } });
|
|
15456
|
-
|
|
15457
15418
|
/*
|
|
15458
15419
|
* Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.
|
|
15459
15420
|
* This software is released under MIT license.
|
|
@@ -15622,7 +15583,7 @@ ClrDatagridColumnToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
|
|
|
15622
15583
|
<clr-dg-column-toggle-button (clrAllSelected)="allColumnsSelected()"></clr-dg-column-toggle-button>
|
|
15623
15584
|
</div>
|
|
15624
15585
|
</div>
|
|
15625
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }, { kind: "directive", type: CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: ClrLabel, selector: "label", inputs: ["for"] }, { kind: "directive", type: ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: ClrPopoverAnchor, selector: "[clrPopoverAnchor]" }, { kind: "directive", type: ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose"] }, { kind: "
|
|
15586
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }, { kind: "directive", type: CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: ClrLabel, selector: "label", inputs: ["for"] }, { kind: "directive", type: ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: ClrPopoverAnchor, selector: "[clrPopoverAnchor]" }, { kind: "directive", type: ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose"] }, { kind: "component", type: ClrDatagridColumnToggleButton, selector: "clr-dg-column-toggle-button", outputs: ["clrAllSelected"] }] });
|
|
15626
15587
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDatagridColumnToggle, decorators: [{
|
|
15627
15588
|
type: Component,
|
|
15628
15589
|
args: [{
|
|
@@ -17139,7 +17100,6 @@ const CLR_DATAGRID_DIRECTIVES = [
|
|
|
17139
17100
|
ClrDatagridFooter,
|
|
17140
17101
|
ClrDatagridHideableColumn,
|
|
17141
17102
|
ClrDatagridItems,
|
|
17142
|
-
ClrDatagridItemsTrackBy,
|
|
17143
17103
|
ClrDatagridPageSize,
|
|
17144
17104
|
ClrDatagridPagination,
|
|
17145
17105
|
ClrDatagridPlaceholder,
|
|
@@ -17186,7 +17146,6 @@ ClrDatagridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versi
|
|
|
17186
17146
|
ClrDatagridFooter,
|
|
17187
17147
|
ClrDatagridHideableColumn,
|
|
17188
17148
|
ClrDatagridItems,
|
|
17189
|
-
ClrDatagridItemsTrackBy,
|
|
17190
17149
|
ClrDatagridPageSize,
|
|
17191
17150
|
ClrDatagridPagination,
|
|
17192
17151
|
ClrDatagridPlaceholder,
|
|
@@ -17236,7 +17195,6 @@ ClrDatagridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versi
|
|
|
17236
17195
|
ClrDatagridFooter,
|
|
17237
17196
|
ClrDatagridHideableColumn,
|
|
17238
17197
|
ClrDatagridItems,
|
|
17239
|
-
ClrDatagridItemsTrackBy,
|
|
17240
17198
|
ClrDatagridPageSize,
|
|
17241
17199
|
ClrDatagridPagination,
|
|
17242
17200
|
ClrDatagridPlaceholder,
|
|
@@ -19979,7 +19937,7 @@ class ClrAlert {
|
|
|
19979
19937
|
}
|
|
19980
19938
|
const isCurrentAlert = this.multiAlertService?.currentAlert === this;
|
|
19981
19939
|
this._closed = true;
|
|
19982
|
-
if (this.multiAlertService) {
|
|
19940
|
+
if (this.multiAlertService?.activeAlerts) {
|
|
19983
19941
|
this.multiAlertService.close(isCurrentAlert);
|
|
19984
19942
|
}
|
|
19985
19943
|
this._closedChanged.emit(true);
|
|
@@ -25687,7 +25645,7 @@ class ClrWizard {
|
|
|
25687
25645
|
*/
|
|
25688
25646
|
reset() {
|
|
25689
25647
|
this.pageCollection.reset();
|
|
25690
|
-
this.onReset.
|
|
25648
|
+
this.onReset.emit();
|
|
25691
25649
|
}
|
|
25692
25650
|
listenForNextPageChanges() {
|
|
25693
25651
|
return this.navService.movedToNextPage.pipe(filter(() => isPlatformBrowser(this.platformId))).subscribe(() => {
|
|
@@ -26401,5 +26359,5 @@ const CLR_MENU_POSITIONS = [
|
|
|
26401
26359
|
* Generated bundle index. Do not edit.
|
|
26402
26360
|
*/
|
|
26403
26361
|
|
|
26404
|
-
export { CHANGE_KEYS, CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems,
|
|
26362
|
+
export { CHANGE_KEYS, CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems, ClrDatagridModule, ClrDatagridPageSize, ClrDatagridPagination, ClrDatagridPlaceholder, ClrDatagridRow, ClrDatagridRowDetail, ClrDatagridSortOrder, ClrDatalist, ClrDatalistContainer, ClrDatalistInput, ClrDatalistModule, ClrDateContainer, ClrDateInput, ClrDateInputValidator, ClrDatepickerModule, ClrDatepickerViewManager, ClrDay, ClrDaypicker, ClrDestroyService, ClrDropdown, ClrDropdownItem, ClrDropdownMenu, ClrDropdownModule, ClrDropdownTrigger, ClrEmphasisModule, ClrExpandableAnimation, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrForm, ClrFormLayout, ClrFormsModule, ClrHeader, ClrIconCustomTag, ClrIconModule, ClrIfActive, ClrIfDetail, ClrIfError, ClrIfExpanded, ClrIfOpen, ClrIfSuccess, ClrInput, ClrInputContainer, ClrInputModule, ClrLabel, ClrLayout, ClrLayoutModule, ClrLoading, ClrLoadingButton, ClrLoadingButtonModule, ClrLoadingModule, ClrLoadingState, ClrMainContainer, ClrMainContainerModule, ClrModal, ClrModalBody, ClrModalModule, ClrMonthpicker, ClrNavLevel, ClrNavigationModule, ClrOption, ClrOptionItems, ClrOptionSelected, ClrOptions, ClrPassword, ClrPasswordContainer, ClrPasswordModule, ClrPopoverAnchor, ClrPopoverContent, ClrPopoverEventsService, ClrPopoverHostDirective, ClrPopoverModule, ClrPopoverPositionService, ClrPopoverToggleService, ClrProgressBar, ClrProgressBarModule, ClrRadio, ClrRadioContainer, ClrRadioModule, ClrRadioWrapper, ClrRange, ClrRangeContainer, ClrRangeModule, ClrRecursiveForOf, ClrSelect, ClrSelectContainer, ClrSelectModule, ClrSelectedState, ClrSide, ClrSignpost, ClrSignpostContent, ClrSignpostModule, ClrSignpostTrigger, ClrSpinner, ClrSpinnerModule, ClrStackBlock, ClrStackContentInput, ClrStackHeader, ClrStackView, ClrStackViewCustomTags, ClrStackViewLabel, ClrStackViewModule, ClrStandaloneCdkTrapFocus, ClrStepButton, ClrStepButtonType, ClrStepper, ClrStepperModule, ClrStepperPanel, ClrStopEscapePropagationDirective, ClrTab, ClrTabContent, ClrTabLink, ClrTabOverflowContent, ClrTabs, ClrTabsModule, ClrTextarea, ClrTextareaContainer, ClrTextareaModule, ClrTimeline, ClrTimelineLayout, ClrTimelineModule, ClrTimelineStep, ClrTimelineStepDescription, ClrTimelineStepHeader, ClrTimelineStepState, ClrTimelineStepTitle, ClrTooltip, ClrTooltipContent, ClrTooltipModule, ClrTooltipTrigger, ClrTree, ClrTreeNode, ClrTreeNodeLink, ClrTreeViewModule, ClrVerticalNav, ClrVerticalNavGroup, ClrVerticalNavGroupChildren, ClrVerticalNavIcon, ClrVerticalNavLink, ClrVerticalNavModule, ClrWizard, ClrWizardButton, ClrWizardHeaderAction, ClrWizardModule, ClrWizardPage, ClrWizardPageButtons, ClrWizardPageHeaderActions, ClrWizardPageNavTitle, ClrWizardPageTitle, ClrWizardStepnav, ClrWizardStepnavItem, ClrWizardTitle, ClrYearpicker, DEFAULT_BUTTON_TYPES, DatagridNumericFilter, DatagridPropertyComparator, DatagridPropertyNumericFilter, DatagridPropertyStringFilter, DatagridStringFilter, EXPANDABLE_ANIMATION_DIRECTIVES, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, IS_TOGGLE, IS_TOGGLE_PROVIDER, LoadingListener, MainContainerWillyWonka, NavDetectionOompaLoompa, TOGGLE_SERVICE, TOGGLE_SERVICE_PROVIDER, ToggleServiceFactory, WrappedFormControl, collapse, commonStringsDefault, fade, fadeSlide, isToggleFactory, slide, AccordionOompaLoompa as ÇlrAccordionOompaLoompa, AccordionWillyWonka as ÇlrAccordionWillyWonka, ActionableOompaLoompa as ÇlrActionableOompaLoompa, ActiveOompaLoompa as ÇlrActiveOompaLoompa, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton, DatagridCellRenderer as ÇlrDatagridCellRenderer, DatagridDetailRegisterer as ÇlrDatagridDetailRegisterer, DatagridHeaderRenderer as ÇlrDatagridHeaderRenderer, DatagridMainRenderer as ÇlrDatagridMainRenderer, DatagridRowRenderer as ÇlrDatagridRowRenderer, ClrDatagridSelectionCellDirective as ÇlrDatagridSelectionCellDirective, DatagridWillyWonka as ÇlrDatagridWillyWonka, ExpandableOompaLoompa as ÇlrExpandableOompaLoompa, StepperOompaLoompa as ÇlrStepperOompaLoompa, StepperWillyWonka as ÇlrStepperWillyWonka, TabsWillyWonka as ÇlrTabsWillyWonka, WrappedCell as ÇlrWrappedCell, WrappedColumn as ÇlrWrappedColumn, WrappedRow as ÇlrWrappedRow };
|
|
26405
26363
|
//# sourceMappingURL=clr-angular.mjs.map
|