@ionic/core 8.8.4-dev.11776178970.14763043 → 8.8.4-dev.11776186452.1cc0af05
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/components/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-range.js +1 -1
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-select-modal.js +1 -1
- package/components/ion-select-option.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-skeleton-text.js +1 -1
- package/components/ion-spinner.js +1 -1
- package/components/ion-split-pane.js +1 -1
- package/components/ion-tab-bar.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +1 -1
- package/components/ion-toast.js +1 -1
- package/components/ion-toggle.js +1 -1
- package/components/ion-toolbar.js +1 -1
- package/components/{p-C-_EGKki.js → p-B0orUoaV.js} +1 -1
- package/components/p-BObmvbuR.js +4 -0
- package/components/p-C8Dne7pI.js +4 -0
- package/components/p-Cm7hjN9B.js +4 -0
- package/components/p-DQY5lHUa.js +4 -0
- package/components/p-D_uMZULz.js +4 -0
- package/components/{p-CoarhFWH.js → p-ZRp3l6Dk.js} +1 -1
- package/components/{p-C2cZvGcF.js → p-qhBzWoOF.js} +1 -1
- package/dist/cjs/ion-action-sheet.cjs.entry.js +23 -8
- package/dist/cjs/ion-alert.cjs.entry.js +42 -24
- package/dist/cjs/ion-app_8.cjs.entry.js +4 -4
- package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-range.cjs.entry.js +1 -1
- package/dist/cjs/ion-select-modal.cjs.entry.js +59 -26
- package/dist/cjs/ion-select_3.cjs.entry.js +190 -47
- package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-text.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +3 -3
- package/dist/cjs/ion-toast.cjs.entry.js +2 -2
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/select-option-render-qQf4xz8P.js +67 -0
- package/dist/collection/components/action-sheet/action-sheet.ionic.css +834 -0
- package/dist/collection/components/action-sheet/action-sheet.ios.css +84 -0
- package/dist/collection/components/action-sheet/action-sheet.js +21 -6
- package/dist/collection/components/action-sheet/action-sheet.md.css +84 -0
- package/dist/collection/components/alert/alert.ionic.css +1165 -0
- package/dist/collection/components/alert/alert.ios.css +83 -0
- package/dist/collection/components/alert/alert.js +40 -22
- package/dist/collection/components/alert/alert.md.css +83 -0
- package/dist/collection/components/range/range.ionic.css +6 -9
- package/dist/collection/components/select/select.ionic.css +31 -0
- package/dist/collection/components/select/select.ios.css +31 -0
- package/dist/collection/components/select/select.js +125 -14
- package/dist/collection/components/select/select.md.css +31 -0
- package/dist/collection/components/select-modal/select-modal.ionic.css +24 -0
- package/dist/collection/components/select-modal/select-modal.ios.css +77 -0
- package/dist/collection/components/select-modal/select-modal.js +56 -23
- package/dist/collection/components/select-modal/select-modal.md.css +80 -1
- package/dist/collection/components/select-option/select-option.js +21 -2
- package/dist/collection/components/select-popover/select-popover.ionic.css +489 -0
- package/dist/collection/components/select-popover/select-popover.ios.css +77 -0
- package/dist/collection/components/select-popover/select-popover.js +59 -26
- package/dist/collection/components/select-popover/select-popover.md.css +77 -0
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-pane/split-pane.js +2 -2
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/tab-bar/tab-bar.js +2 -2
- package/dist/collection/components/tab-button/tab-button.js +2 -2
- package/dist/collection/components/tabs/tabs.js +1 -1
- package/dist/collection/components/text/text.js +2 -2
- package/dist/collection/components/textarea/textarea.js +3 -3
- package/dist/collection/components/thumbnail/thumbnail.js +2 -2
- package/dist/collection/components/title/title.js +2 -2
- package/dist/collection/components/toast/toast.js +2 -2
- package/dist/collection/components/toggle/toggle.js +3 -3
- package/dist/collection/components/toolbar/toolbar.js +2 -2
- package/dist/collection/utils/select-option-render.js +62 -0
- package/dist/docs.json +135 -1
- package/dist/esm/ion-action-sheet.entry.js +23 -8
- package/dist/esm/ion-alert.entry.js +42 -24
- package/dist/esm/ion-app_8.entry.js +4 -4
- package/dist/esm/ion-avatar_3.entry.js +2 -2
- package/dist/esm/ion-item_8.entry.js +2 -2
- package/dist/esm/ion-range.entry.js +1 -1
- package/dist/esm/ion-select-modal.entry.js +59 -26
- package/dist/esm/ion-select_3.entry.js +191 -48
- package/dist/esm/ion-spinner.entry.js +1 -1
- package/dist/esm/ion-split-pane.entry.js +2 -2
- package/dist/esm/ion-tab-bar_2.entry.js +4 -4
- package/dist/esm/ion-tab_2.entry.js +3 -3
- package/dist/esm/ion-text.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +3 -3
- package/dist/esm/ion-toast.entry.js +2 -2
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/select-option-render-BQUT9Aqa.js +65 -0
- package/dist/html.html-data.json +4 -0
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-003b40fc.entry.js +4 -0
- package/dist/ionic/{p-3bf01c2c.entry.js → p-26595044.entry.js} +1 -1
- package/dist/ionic/p-27edb91a.entry.js +4 -0
- package/dist/ionic/p-35aa95dc.entry.js +4 -0
- package/dist/ionic/{p-e9d6ce67.entry.js → p-37f895a8.entry.js} +1 -1
- package/dist/ionic/p-38897781.entry.js +4 -0
- package/dist/ionic/p-575061c0.entry.js +4 -0
- package/dist/ionic/{p-2bf931ae.entry.js → p-69033ad6.entry.js} +1 -1
- package/dist/ionic/{p-cdfbe4cc.entry.js → p-71f28573.entry.js} +1 -1
- package/dist/ionic/{p-9b9b1450.entry.js → p-96ec9a10.entry.js} +1 -1
- package/dist/ionic/{p-49799a34.entry.js → p-9e71982e.entry.js} +1 -1
- package/dist/ionic/p-Dr3N4o63.js +4 -0
- package/dist/ionic/{p-bc5713f7.entry.js → p-a1c8ba8c.entry.js} +1 -1
- package/dist/ionic/{p-91e242e4.entry.js → p-a94016be.entry.js} +1 -1
- package/dist/ionic/{p-6c8c37c2.entry.js → p-aa8c1e64.entry.js} +1 -1
- package/dist/ionic/p-c3335fe0.entry.js +4 -0
- package/dist/ionic/{p-2193e875.entry.js → p-d2fe6791.entry.js} +1 -1
- package/dist/types/components/select/select-interface.d.ts +21 -0
- package/dist/types/components/select/select.d.ts +7 -0
- package/dist/types/components/select-option/select-option.d.ts +4 -0
- package/dist/types/components.d.ts +9 -0
- package/dist/types/utils/select-option-render.d.ts +26 -0
- package/hydrate/index.js +396 -132
- package/hydrate/index.mjs +396 -132
- package/package.json +1 -1
- package/components/p-BGHaEUgp.js +0 -4
- package/components/p-BR9Yxas9.js +0 -4
- package/components/p-Ch9P0ikq.js +0 -4
- package/components/p-iwGbwewM.js +0 -4
- package/dist/ionic/p-227744b8.entry.js +0 -4
- package/dist/ionic/p-4b0f5ffd.entry.js +0 -4
- package/dist/ionic/p-64341e32.entry.js +0 -4
- package/dist/ionic/p-6be2b2d3.entry.js +0 -4
- package/dist/ionic/p-9acd3fd3.entry.js +0 -4
- package/dist/ionic/p-a283aa4d.entry.js +0 -4
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import type { ActionSheetButton } from '../action-sheet/action-sheet-interface';
|
|
2
|
+
import type { AlertInput } from '../alert/alert-interface';
|
|
3
|
+
import type { SelectPopoverOption } from '../select-popover/select-popover-interface';
|
|
1
4
|
export type SelectInterface = 'action-sheet' | 'popover' | 'alert' | 'modal';
|
|
2
5
|
export type SelectCompareFn = (currentValue: any, compareValue: any) => boolean;
|
|
3
6
|
export interface SelectChangeEventDetail<T = any> {
|
|
@@ -7,3 +10,21 @@ export interface SelectCustomEvent<T = any> extends CustomEvent {
|
|
|
7
10
|
detail: SelectChangeEventDetail<T>;
|
|
8
11
|
target: HTMLIonSelectElement;
|
|
9
12
|
}
|
|
13
|
+
export interface SelectActionSheetButton extends Omit<ActionSheetButton, 'text'> {
|
|
14
|
+
text?: string | HTMLElement;
|
|
15
|
+
startContent?: HTMLElement;
|
|
16
|
+
endContent?: HTMLElement;
|
|
17
|
+
description?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface SelectAlertInput extends Omit<AlertInput, 'label'> {
|
|
20
|
+
label?: string | HTMLElement;
|
|
21
|
+
startContent?: HTMLElement;
|
|
22
|
+
endContent?: HTMLElement;
|
|
23
|
+
description?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface SelectOverlayOption extends Omit<SelectPopoverOption, 'text'> {
|
|
26
|
+
text?: string | HTMLElement;
|
|
27
|
+
startContent?: HTMLElement;
|
|
28
|
+
endContent?: HTMLElement;
|
|
29
|
+
description?: string;
|
|
30
|
+
}
|
|
@@ -33,6 +33,7 @@ export declare class Select implements ComponentInterface {
|
|
|
33
33
|
private notchSpacerEl;
|
|
34
34
|
private validationObserver?;
|
|
35
35
|
private notchController?;
|
|
36
|
+
private customHTMLEnabled;
|
|
36
37
|
el: HTMLIonSelectElement;
|
|
37
38
|
isExpanded: boolean;
|
|
38
39
|
/**
|
|
@@ -250,6 +251,12 @@ export declare class Select implements ComponentInterface {
|
|
|
250
251
|
* was passed.
|
|
251
252
|
*/
|
|
252
253
|
private get labelText();
|
|
254
|
+
/**
|
|
255
|
+
* Returns the text to display in the select based on the selected value.
|
|
256
|
+
*
|
|
257
|
+
* @param useHTML If `true`, the returned text will include any custom HTML content from the selected option. If `false`, the returned text will be plain text without any HTML. Defaults to `false`.
|
|
258
|
+
* @returns The text to display in the select, either with or without HTML based on the `useHTML` parameter.
|
|
259
|
+
*/
|
|
253
260
|
private getText;
|
|
254
261
|
private setFocus;
|
|
255
262
|
private emitStyle;
|
|
@@ -14,5 +14,9 @@ export declare class SelectOption implements ComponentInterface {
|
|
|
14
14
|
* The text value of the option.
|
|
15
15
|
*/
|
|
16
16
|
value?: any | null;
|
|
17
|
+
/**
|
|
18
|
+
* Text that is placed underneath the option text to provide additional details about the option.
|
|
19
|
+
*/
|
|
20
|
+
description?: string;
|
|
17
21
|
render(): any;
|
|
18
22
|
}
|
|
@@ -3813,6 +3813,10 @@ export namespace Components {
|
|
|
3813
3813
|
"options": SelectModalOption[];
|
|
3814
3814
|
}
|
|
3815
3815
|
interface IonSelectOption {
|
|
3816
|
+
/**
|
|
3817
|
+
* Text that is placed underneath the option text to provide additional details about the option.
|
|
3818
|
+
*/
|
|
3819
|
+
"description"?: string;
|
|
3816
3820
|
/**
|
|
3817
3821
|
* If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
|
|
3818
3822
|
* @default false
|
|
@@ -9751,6 +9755,10 @@ declare namespace LocalJSX {
|
|
|
9751
9755
|
"options"?: SelectModalOption[];
|
|
9752
9756
|
}
|
|
9753
9757
|
interface IonSelectOption {
|
|
9758
|
+
/**
|
|
9759
|
+
* Text that is placed underneath the option text to provide additional details about the option.
|
|
9760
|
+
*/
|
|
9761
|
+
"description"?: string;
|
|
9754
9762
|
/**
|
|
9755
9763
|
* If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
|
|
9756
9764
|
* @default false
|
|
@@ -11068,6 +11076,7 @@ declare namespace LocalJSX {
|
|
|
11068
11076
|
interface IonSelectOptionAttributes {
|
|
11069
11077
|
"disabled": boolean;
|
|
11070
11078
|
"value": string;
|
|
11079
|
+
"description": string;
|
|
11071
11080
|
}
|
|
11072
11081
|
interface IonSelectPopoverAttributes {
|
|
11073
11082
|
"header": string;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
interface RichContentOption {
|
|
2
|
+
/** Unique identifier for stable virtual DOM keys across re-renders. */
|
|
3
|
+
id: string;
|
|
4
|
+
/** The main label for the option as a string or an HTMLElement. */
|
|
5
|
+
label?: string | HTMLElement;
|
|
6
|
+
/** Content to display at the start of the option. */
|
|
7
|
+
startContent?: HTMLElement;
|
|
8
|
+
/** Content to display at the end of the option. */
|
|
9
|
+
endContent?: HTMLElement;
|
|
10
|
+
/** A description for the option. */
|
|
11
|
+
description?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Renders the label content for a select option within an overlay
|
|
15
|
+
* interface based on the presence of rich content.
|
|
16
|
+
*
|
|
17
|
+
* Uses span elements because this content may render within buttons,
|
|
18
|
+
* depending on the select interface. Buttons can only have phrasing
|
|
19
|
+
* content to prevent accessibility issues.
|
|
20
|
+
*
|
|
21
|
+
* @param option - The content option data containing label, slots,
|
|
22
|
+
* and description.
|
|
23
|
+
* @param className - The base CSS class for the label element.
|
|
24
|
+
*/
|
|
25
|
+
export declare const renderOptionLabel: (option: RichContentOption, className: string) => HTMLElement;
|
|
26
|
+
export {};
|