@eui/mobile-core 16.7.0-snapshot-1709561696755 → 16.7.0-snapshot-1709715271617
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/docs/components/EuimMultiselectComponent.html +24 -0
- package/docs/dependencies.html +2 -2
- package/docs/js/search/search_index.js +2 -2
- package/esm2022/lib/components/directives/euim-item-divider/euim-item-divider.directive.mjs +4 -1
- package/esm2022/lib/components/directives/euim-list-header/euim-list-header.directive.mjs +4 -1
- package/esm2022/lib/components/euim-chip-selector/euim-chip-selector.component.mjs +4 -2
- package/esm2022/lib/components/euim-menu/euim-menu.component.mjs +4 -1
- package/esm2022/lib/components/euim-multiselect/euim-multiselect-all/euim-multiselect-all.directive.mjs +7 -1
- package/esm2022/lib/components/euim-multiselect/euim-multiselect-filter/euim-multiselect-filter.component.mjs +14 -6
- package/esm2022/lib/components/euim-multiselect/euim-multiselect-select-field/euim-multiselect-select-field.directive.mjs +7 -1
- package/esm2022/lib/components/euim-multiselect/euim-multiselect.component.mjs +27 -3
- package/esm2022/lib/components/euim-slider/euim-slider.component.mjs +4 -1
- package/esm2022/lib/components/layout/euim-info-screen/euim-info-screen.component.mjs +4 -1
- package/fesm2022/eui-mobile-core.mjs +67 -8
- package/fesm2022/eui-mobile-core.mjs.map +1 -1
- package/lib/components/directives/euim-item-divider/euim-item-divider.directive.d.ts.map +1 -1
- package/lib/components/directives/euim-list-header/euim-list-header.directive.d.ts.map +1 -1
- package/lib/components/euim-chip-selector/euim-chip-selector.component.d.ts.map +1 -1
- package/lib/components/euim-menu/euim-menu.component.d.ts.map +1 -1
- package/lib/components/euim-multiselect/euim-multiselect-all/euim-multiselect-all.directive.d.ts.map +1 -1
- package/lib/components/euim-multiselect/euim-multiselect-filter/euim-multiselect-filter.component.d.ts.map +1 -1
- package/lib/components/euim-multiselect/euim-multiselect-select-field/euim-multiselect-select-field.directive.d.ts.map +1 -1
- package/lib/components/euim-multiselect/euim-multiselect.component.d.ts +3 -1
- package/lib/components/euim-multiselect/euim-multiselect.component.d.ts.map +1 -1
- package/lib/components/euim-slider/euim-slider.component.d.ts.map +1 -1
- package/lib/components/layout/euim-info-screen/euim-info-screen.component.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -697,6 +697,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
697
697
|
args: ['class']
|
|
698
698
|
}] } });
|
|
699
699
|
|
|
700
|
+
/**
|
|
701
|
+
* @deprecated It is removed. Use {@link euim-sidebar} instead.
|
|
702
|
+
*/
|
|
700
703
|
class EuimMenuComponent {
|
|
701
704
|
constructor(navCtrl) {
|
|
702
705
|
this.navCtrl = navCtrl;
|
|
@@ -1091,6 +1094,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1091
1094
|
args: ['class']
|
|
1092
1095
|
}] } });
|
|
1093
1096
|
|
|
1097
|
+
/**
|
|
1098
|
+
* @deprecated It will be removed on v17 release. Use {@link ion-list-header} instead.
|
|
1099
|
+
*/
|
|
1094
1100
|
class EuimListHeaderDirective {
|
|
1095
1101
|
constructor() {
|
|
1096
1102
|
this.className = 'euim-list-divider';
|
|
@@ -1131,6 +1137,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1131
1137
|
}]
|
|
1132
1138
|
}] });
|
|
1133
1139
|
|
|
1140
|
+
/**
|
|
1141
|
+
* @deprecated It will be removed on v17 release. Use {@link euimDivider} instead if there is a case with no separator. For all othere cases ion-item-divider will be used.
|
|
1142
|
+
*/
|
|
1134
1143
|
class EuimItemDividerDirective {
|
|
1135
1144
|
constructor() {
|
|
1136
1145
|
this.className = 'euim-item-divider';
|
|
@@ -1782,6 +1791,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1782
1791
|
}]
|
|
1783
1792
|
}] });
|
|
1784
1793
|
|
|
1794
|
+
/**
|
|
1795
|
+
* @deprecated It was removed in v16. Use {@link euim-slider-info-screen} instead.
|
|
1796
|
+
*/
|
|
1785
1797
|
class EuimInfoScreenComponent {
|
|
1786
1798
|
constructor() {
|
|
1787
1799
|
this.className = 'euim-info-screen';
|
|
@@ -2811,6 +2823,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2811
2823
|
}]
|
|
2812
2824
|
}] });
|
|
2813
2825
|
|
|
2826
|
+
/**
|
|
2827
|
+
* @deprecated It was removed in v16. Use {@link euim-slider-info-screen} instead.
|
|
2828
|
+
*/
|
|
2814
2829
|
class EuimSliderComponent {
|
|
2815
2830
|
constructor(renderer, gestureCtrl, sliderElement, cdr) {
|
|
2816
2831
|
this.renderer = renderer;
|
|
@@ -3416,7 +3431,9 @@ class EuimChipSelectorComponent {
|
|
|
3416
3431
|
this.updateChipsAndFilters();
|
|
3417
3432
|
}
|
|
3418
3433
|
ngOnChanges(changes) {
|
|
3419
|
-
if (this.euimChipSelectorItemComponent && this.euimChipSelectorItemComponent.length > 0
|
|
3434
|
+
if (this.euimChipSelectorItemComponent && this.euimChipSelectorItemComponent.length > 0 &&
|
|
3435
|
+
changes.selectedChips.currentValue && changes.selectedChips.currentValue.length === 1 &&
|
|
3436
|
+
changes.selectedChips.currentValue.every((value, index) => value === '0')) {
|
|
3420
3437
|
this.clearFiltersAndSelectAll();
|
|
3421
3438
|
}
|
|
3422
3439
|
}
|
|
@@ -3804,9 +3821,14 @@ class EuimMultiselectComponent {
|
|
|
3804
3821
|
constructor(ref) {
|
|
3805
3822
|
this.ref = ref;
|
|
3806
3823
|
this.className = 'euim-multiselect';
|
|
3824
|
+
this.euimKeepSelection = false;
|
|
3807
3825
|
this.numberOfSelected = 0;
|
|
3808
3826
|
}
|
|
3809
3827
|
ngOnInit() {
|
|
3828
|
+
if (this.euimKeepSelection) {
|
|
3829
|
+
this.currentDataProvider =
|
|
3830
|
+
[...this.currentDataProvider]?.map((obj, index) => ({ ...obj, _id: index + 1 }));
|
|
3831
|
+
}
|
|
3810
3832
|
this.initialDataProvider = this.currentDataProvider;
|
|
3811
3833
|
}
|
|
3812
3834
|
selectAllItems() {
|
|
@@ -3824,7 +3846,15 @@ class EuimMultiselectComponent {
|
|
|
3824
3846
|
}
|
|
3825
3847
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3826
3848
|
selectedItems() {
|
|
3827
|
-
|
|
3849
|
+
if (this.euimKeepSelection) {
|
|
3850
|
+
const filteredItemsWithoutId = this.currentDataProvider
|
|
3851
|
+
?.filter(item => item.selected)
|
|
3852
|
+
.map(({ _id, ...rest }) => rest);
|
|
3853
|
+
return filteredItemsWithoutId;
|
|
3854
|
+
}
|
|
3855
|
+
else {
|
|
3856
|
+
return this.currentDataProvider?.filter(item => item.selected);
|
|
3857
|
+
}
|
|
3828
3858
|
}
|
|
3829
3859
|
selectByIndex(index, state = true) {
|
|
3830
3860
|
if (index < this.currentDataProvider?.length) {
|
|
@@ -3838,12 +3868,19 @@ class EuimMultiselectComponent {
|
|
|
3838
3868
|
if (changes.currentDataProvider &&
|
|
3839
3869
|
changes.currentDataProvider.currentValue
|
|
3840
3870
|
&& changes.currentDataProvider.previousValue === null) {
|
|
3871
|
+
if (this.euimKeepSelection) {
|
|
3872
|
+
this.currentDataProvider =
|
|
3873
|
+
[...this.currentDataProvider]?.map((obj, index) => ({ ...obj, _id: index + 1 }));
|
|
3874
|
+
}
|
|
3841
3875
|
this.initialDataProvider = changes.currentDataProvider.currentValue;
|
|
3842
3876
|
}
|
|
3843
3877
|
}
|
|
3844
3878
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimMultiselectComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3845
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimMultiselectComponent, selector: "euim-multiselect", inputs: { currentDataProvider: "currentDataProvider", toolbarTitle: "toolbarTitle" }, host: { properties: { "class": "this.className" } }, usesOnChanges: true, ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"light\" class=\"euim-multiselect__toolbar\">\n <ng-content select=\"euim-multiselect-toolbar\"></ng-content>\n <ion-toolbar color=\"light\">\n <ng-content select=\"euim-multiselect-filter\"></ng-content>\n </ion-toolbar>\n </ion-toolbar>\n</ion-header>\n\n<ng-container *ngIf=\"currentDataProvider?.length > 0\">\n <ng-content select=\"euim-multiselect-list\">\n\n </ng-content>\n</ng-container>\n\n<ng-container *ngIf=\"currentDataProvider?.length === 0\">\n <ng-content select=\"euim-empty-list-placeholder\">\n </ng-content>\n</ng-container>\n\n\n\n", styles: [".euim-multiselect__toolbar{color:var(--eui-base-color-grey-100)}.euim-multiselect__toolbar--title{font:normal normal 400 1.25rem/1.5rem var(--eui-base-font-family);font-weight:700}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i1.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3879
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimMultiselectComponent, selector: "euim-multiselect", inputs: { currentDataProvider: "currentDataProvider", toolbarTitle: "toolbarTitle", euimKeepSelection: "euimKeepSelection" }, host: { properties: { "class": "this.className" } }, usesOnChanges: true, ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"light\" class=\"euim-multiselect__toolbar\">\n <ng-content select=\"euim-multiselect-toolbar\"></ng-content>\n <ion-toolbar color=\"light\">\n <ng-content select=\"euim-multiselect-filter\"></ng-content>\n </ion-toolbar>\n </ion-toolbar>\n</ion-header>\n\n<ng-container *ngIf=\"currentDataProvider?.length > 0\">\n <ng-content select=\"euim-multiselect-list\">\n\n </ng-content>\n</ng-container>\n\n<ng-container *ngIf=\"currentDataProvider?.length === 0\">\n <ng-content select=\"euim-empty-list-placeholder\">\n </ng-content>\n</ng-container>\n\n\n\n", styles: [".euim-multiselect__toolbar{color:var(--eui-base-color-grey-100)}.euim-multiselect__toolbar--title{font:normal normal 400 1.25rem/1.5rem var(--eui-base-font-family);font-weight:700}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i1.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3846
3880
|
}
|
|
3881
|
+
__decorate([
|
|
3882
|
+
coerceBoolean
|
|
3883
|
+
], EuimMultiselectComponent.prototype, "euimKeepSelection", void 0);
|
|
3847
3884
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimMultiselectComponent, decorators: [{
|
|
3848
3885
|
type: Component,
|
|
3849
3886
|
args: [{ selector: 'euim-multiselect', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ion-header>\n <ion-toolbar color=\"light\" class=\"euim-multiselect__toolbar\">\n <ng-content select=\"euim-multiselect-toolbar\"></ng-content>\n <ion-toolbar color=\"light\">\n <ng-content select=\"euim-multiselect-filter\"></ng-content>\n </ion-toolbar>\n </ion-toolbar>\n</ion-header>\n\n<ng-container *ngIf=\"currentDataProvider?.length > 0\">\n <ng-content select=\"euim-multiselect-list\">\n\n </ng-content>\n</ng-container>\n\n<ng-container *ngIf=\"currentDataProvider?.length === 0\">\n <ng-content select=\"euim-empty-list-placeholder\">\n </ng-content>\n</ng-container>\n\n\n\n", styles: [".euim-multiselect__toolbar{color:var(--eui-base-color-grey-100)}.euim-multiselect__toolbar--title{font:normal normal 400 1.25rem/1.5rem var(--eui-base-font-family);font-weight:700}\n"] }]
|
|
@@ -3854,6 +3891,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3854
3891
|
type: Input
|
|
3855
3892
|
}], toolbarTitle: [{
|
|
3856
3893
|
type: Input
|
|
3894
|
+
}], euimKeepSelection: [{
|
|
3895
|
+
type: Input
|
|
3857
3896
|
}] } });
|
|
3858
3897
|
|
|
3859
3898
|
class EuimMultiselectFilterComponent {
|
|
@@ -3864,12 +3903,20 @@ class EuimMultiselectFilterComponent {
|
|
|
3864
3903
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3865
3904
|
handleChange(event) {
|
|
3866
3905
|
const query = event.detail.value.toLowerCase();
|
|
3867
|
-
this.multiselect.
|
|
3868
|
-
|
|
3869
|
-
|
|
3906
|
+
if (!this.multiselect.euimKeepSelection) {
|
|
3907
|
+
this.multiselect.selectAll = false;
|
|
3908
|
+
this.multiselect.indeterminate = false;
|
|
3909
|
+
this.multiselect.currentDataProvider?.forEach((item) => (item.selected = false));
|
|
3910
|
+
}
|
|
3870
3911
|
if (query === '') {
|
|
3871
|
-
this.multiselect.
|
|
3872
|
-
this.multiselect.
|
|
3912
|
+
if (!this.multiselect.euimKeepSelection) {
|
|
3913
|
+
this.multiselect.currentDataProvider =
|
|
3914
|
+
this.multiselect.initialDataProvider;
|
|
3915
|
+
}
|
|
3916
|
+
else {
|
|
3917
|
+
this.multiselect.currentDataProvider =
|
|
3918
|
+
this.multiselect.initialDataProvider;
|
|
3919
|
+
}
|
|
3873
3920
|
}
|
|
3874
3921
|
else {
|
|
3875
3922
|
this.multiselect.currentDataProvider =
|
|
@@ -3899,9 +3946,15 @@ class EuimMultiselectAllDirective {
|
|
|
3899
3946
|
this.euimMulti.indeterminate = false;
|
|
3900
3947
|
if (event.detail.checked) {
|
|
3901
3948
|
this.euimMulti.numberOfSelected = this.euimMulti.currentDataProvider?.length;
|
|
3949
|
+
if (this.euimMulti.euimKeepSelection) {
|
|
3950
|
+
this.euimMulti.initialDataProvider?.forEach((item) => (item.selected = true));
|
|
3951
|
+
}
|
|
3902
3952
|
}
|
|
3903
3953
|
else {
|
|
3904
3954
|
this.euimMulti.numberOfSelected = 0;
|
|
3955
|
+
if (this.euimMulti.euimKeepSelection) {
|
|
3956
|
+
this.euimMulti.initialDataProvider?.forEach((item) => (item.selected = false));
|
|
3957
|
+
}
|
|
3905
3958
|
}
|
|
3906
3959
|
}
|
|
3907
3960
|
get indeterminate() {
|
|
@@ -3955,6 +4008,12 @@ class EuimMultiselectSelectFieldDirective {
|
|
|
3955
4008
|
}
|
|
3956
4009
|
onIonChange(event) {
|
|
3957
4010
|
this.item.selected = event.detail.checked;
|
|
4011
|
+
if (this.euimMulti.euimKeepSelection) {
|
|
4012
|
+
const foundItem = this.euimMulti.initialDataProvider.find(item => item._id === this.item);
|
|
4013
|
+
if (foundItem) {
|
|
4014
|
+
foundItem._id = event.detail.checked;
|
|
4015
|
+
}
|
|
4016
|
+
}
|
|
3958
4017
|
const isSelectAll = this.euimMulti.currentDataProvider?.every((item) => item.selected);
|
|
3959
4018
|
this.euimMulti.indeterminate = !isSelectAll && this.euimMulti.currentDataProvider?.some((item) => item.selected);
|
|
3960
4019
|
if (!this.euimMulti.indeterminate) {
|