mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
feat(select): add modal as valid interface
This commit is contained in:
@@ -70,6 +70,7 @@ export const DIRECTIVES = [
|
||||
d.IonSegment,
|
||||
d.IonSegmentButton,
|
||||
d.IonSelect,
|
||||
d.IonSelectModal,
|
||||
d.IonSelectOption,
|
||||
d.IonSkeletonText,
|
||||
d.IonSpinner,
|
||||
|
||||
@@ -2060,6 +2060,28 @@ This event will not emit when programmatically setting the `value` property.
|
||||
}
|
||||
|
||||
|
||||
@ProxyCmp({
|
||||
inputs: ['confirmHandler', 'header', 'multiple', 'options']
|
||||
})
|
||||
@Component({
|
||||
selector: 'ion-select-modal',
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
template: '<ng-content></ng-content>',
|
||||
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
||||
inputs: ['confirmHandler', 'header', 'multiple', 'options'],
|
||||
})
|
||||
export class IonSelectModal {
|
||||
protected el: HTMLElement;
|
||||
constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
|
||||
c.detach();
|
||||
this.el = r.nativeElement;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
export declare interface IonSelectModal extends Components.IonSelectModal {}
|
||||
|
||||
|
||||
@ProxyCmp({
|
||||
inputs: ['disabled', 'mode', 'theme', 'value']
|
||||
})
|
||||
|
||||
@@ -65,6 +65,7 @@ import { defineCustomElement as defineIonReorderGroup } from '@ionic/core/compon
|
||||
import { defineCustomElement as defineIonRippleEffect } from '@ionic/core/components/ion-ripple-effect.js';
|
||||
import { defineCustomElement as defineIonRow } from '@ionic/core/components/ion-row.js';
|
||||
import { defineCustomElement as defineIonSegmentButton } from '@ionic/core/components/ion-segment-button.js';
|
||||
import { defineCustomElement as defineIonSelectModal } from '@ionic/core/components/ion-select-modal.js';
|
||||
import { defineCustomElement as defineIonSelectOption } from '@ionic/core/components/ion-select-option.js';
|
||||
import { defineCustomElement as defineIonSkeletonText } from '@ionic/core/components/ion-skeleton-text.js';
|
||||
import { defineCustomElement as defineIonSpinner } from '@ionic/core/components/ion-spinner.js';
|
||||
@@ -1843,6 +1844,30 @@ export class IonSegmentButton {
|
||||
export declare interface IonSegmentButton extends Components.IonSegmentButton {}
|
||||
|
||||
|
||||
@ProxyCmp({
|
||||
defineCustomElementFn: defineIonSelectModal,
|
||||
inputs: ['confirmHandler', 'header', 'multiple', 'options']
|
||||
})
|
||||
@Component({
|
||||
selector: 'ion-select-modal',
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
template: '<ng-content></ng-content>',
|
||||
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
||||
inputs: ['confirmHandler', 'header', 'multiple', 'options'],
|
||||
standalone: true
|
||||
})
|
||||
export class IonSelectModal {
|
||||
protected el: HTMLElement;
|
||||
constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
|
||||
c.detach();
|
||||
this.el = r.nativeElement;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
export declare interface IonSelectModal extends Components.IonSelectModal {}
|
||||
|
||||
|
||||
@ProxyCmp({
|
||||
defineCustomElementFn: defineIonSelectOption,
|
||||
inputs: ['disabled', 'mode', 'theme', 'value']
|
||||
|
||||
Reference in New Issue
Block a user