Change Log
All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.
8.4.0 (2024-11-04)
Bug Fixes
- alert: use correct heading structure for subHeader when header exists (#29964) (0fdcb32)
Features
- menu: pass role to ionWillClose and ionDidClose events (#29954) (ee2fa19)
- segment-view: adds support for new
ion-segment-view
component (#29969) (89508fb)
- select: add
modal
as interface (#29972) (3628ea8)
8.3.4 (2024-10-30)
Bug Fixes
8.3.3 (2024-10-16)
Bug Fixes
8.3.2 (2024-10-02)
Bug Fixes
8.3.1 (2024-09-17)
Bug Fixes
8.3.0 (2024-09-05)
Features
- checkbox: display as block when justify or alignment properties are defined (#29783) (4ccd15e)
- radio: display as block when justify or alignment properties are defined (#29801) (18b02b3)
- react, vue, angular: use tabs without router (#29794) (867066b), closes #25184
- toggle: display as block when justify or alignment properties are defined (#29802) (0332c8c)
8.2.8 (2024-09-05)
Bug Fixes
8.2.7 (2024-08-13)
Bug Fixes
- alert: do not overwrite id set in htmlAttributes (#29708) (1295ced), closes #29704
- angular: add focusTrap prop to modal and popover (#29729) (05913c3), closes #29728
- angular: remove the tabindex set by routerLink from Ionic components (#29744) (20073e1), closes #20632
- content: allow custom roles and aria attributes to be set on content (#29753) (7b16397)
- item: router-link remains clickable with item cover (#29743) (a9f278a)
- overlays: do not overwrite id set in htmlAttributes (#29722) (92ce563), closes #29712
- react: add onPointerDown, onTouchEnd, add onTouchMove (#29736) (bfee3cd), closes #29174
- vue: pass router-link value to href to properly render clickable elements (#29745) (ab4f279)
8.2.6 (2024-07-24)
Bug Fixes
8.2.5 (2024-07-03)
Bug Fixes
- dependencies: use latest @stencil/core to remove DOMException errors (#29685) (d70ea4), closes #29681
- vue: add optional IonicConfig type parameter to IonicVue plugin (#29637) (90893f4), closes #29659
8.2.4 (2024-06-28)
Bug Fixes
8.2.3
This version should be skipped. Install 8.2.4 instead.
8.2.2 (2024-06-12)
Bug Fixes
8.2.1 (2024-06-05)
8.2.0 (2024-05-22)
Features
8.1.3 (2024-05-22)
Bug Fixes
8.1.2 (2024-05-15)
Bug Fixes
8.1.1 (2024-05-08)
Bug Fixes
8.1.0 (2024-05-01)
Features
8.0.2 (2024-05-01)
Bug Fixes
8.0.1 (2024-04-24)
Bug Fixes
8.0.0 (2024-04-17)
Note: Version bump only for package ionic-framework
Bug Fixes
7.8.5 (2024-04-17)
Bug Fixes
Bug Fixes
- button: use clamp for font sizes on circle shape (#29200) (4d6edee)
7.8.4 (2024-04-10)
- styles: compress distributed global stylesheets (#29275) (b3cd49b)
7.8.3 (2024-04-03)
Bug Fixes
- button: activated outline button in toolbar no longer blends into background on MD dark mode (#29216) (ee5da7a)
- popover: viewport can be scrolled if no content present (#29215) (f08759c), closes #29211
Note: Version bump only for package ionic-framework
Bug Fixes
- angular: schematics account for new theme files (#29185) (b0a10df)
Code Refactoring
Features
BREAKING CHANGES
- searchbar: The
autocapitalize
property on Searchbar now defaults to 'off'
.
- haptics: Support for the Cordova Haptics plugin has been removed. Components that integrate with haptics, such as
ion-picker
and ion-toggle
, will continue to function but will no longer play haptics in Cordova environments. Developers should migrate to Capacitor to continue to have haptics in these components.
7.8.2 (2024-03-27)
Bug Fixes
Bug Fixes
- input, textarea, select: account for multiple start/end slot elements (#29172) (acc1042)
- range, select: prefer labels passed by developer (#29145) (56014cf)
Features
7.8.1 (2024-03-20)
Bug Fixes
Code Refactoring
Features
- input,textarea,select: add --highlight-height variable (#29090) (13b7f8a)
- menu: apply strict type for menu type (#28982) (03d2670)
BREAKING CHANGES
- item: - The
helper
slot has been removed. Developers should use the helperText
property on ion-input
and ion-textarea
.
- The
error
slot has been removed. Developers should use the errorText
property on ion-input
and ion-textarea
.
- Counter functionality has been removed including the
counter
and counterFormatter
properties. Developers should use the properties of the same name on ion-input
and ion-textarea
.
- The
fill
property has been removed. Developers should use the property of the same name on ion-input
, ion-select
, and ion-textarea
.
- The
shape
property has been removed. Developers should use the property of the same name on ion-input
, ion-select
, and ion-textarea
.
7.8.0 (2024-03-13)
Features
- datetime: formatOptions property for Datetime (#29065) (7cdbc1b)
- searchbar: autocapitalize, dir, lang, maxlength, and minlength are inherited to native input (#29098) (a0a77f7), closes #27606
7.7.5 (2024-03-13)
Bug Fixes
- angular: add ionNavWillChange and ionNavDidChange types for nav (#29122) (85b9d5c), closes #29114
- checkbox: set aria-checked of indeterminate checkbox to 'mixed' (#29115) (b2d636f)
- overlay: do not hide overlay if toast is presented (#29140) (c0f5e5e), closes #29139
Bug Fixes
Code Refactoring
BREAKING CHANGES
- item: - Item no longer automatically delegates focus to the first focusable element. While most developers should not need to make any changes to account for this update, usages of
ion-item
with interactive elements such as form controls (inputs, textareas, etc) should be evaluated to verify that interactions still work as expected.
7.7.4 (2024-03-06)
Bug Fixes
- modal: ariaLabel and role are inherited when set via htmlAttributes (#29099) (de13633)
Bug Fixes
Code Refactoring
- checkbox: remove legacy property and support for legacy syntax (#29043) (fb5ae5b)
- input: remove accept property (#28946) (2816b87)
- radio: remove legacy property and support for legacy syntax (#29038) (58d7315)
- range: remove legacy property and support for legacy syntax (#29040) (58c795f)
- toast: remove cssClass from ToastButton (#28977) (9856295)
- toggle: remove legacy property and support for legacy syntax (#29037) (c72eced)
Features
BREAKING CHANGES
- range: The
legacy
property and support for the legacy syntax, which involved placing an ion-range
inside of an ion-item
with an ion-label
, have been removed from range. For more information on migrating from the legacy range syntax, refer to the Range documentation.
- checkbox: The
legacy
property and support for the legacy syntax, which involved placing an ion-checkbox
inside of an ion-item
with an ion-label
, have been removed from checkbox. For more information on migrating from the legacy checkbox syntax, refer to the Checkbox documentation.
- radio: The
legacy
property and support for the legacy syntax, which involved placing an ion-radio
inside of an ion-item
with an ion-label
, have been removed from radio. For more information on migrating from the legacy radio syntax, refer to the Radio documentation.
- toggle: The
legacy
property and support for the legacy syntax, which involved placing an ion-toggle
inside of an ion-item
with an ion-label
, have been removed from toggle. For more information on migrating from the legacy toggle syntax, refer to the Toggle documentation.
- toast: The
cssClass
property has been removed from ToastButton
- input: The
accept
property has been removed from ion-input
.
- nav:
getLength
returns Promise<number>
instead of <number>
. This method was not previously available in Nav's TypeScript interface, but developers could still access it by casting Nav as any
. Developers should ensure they await
their getLength
call before accessing the returned value.
- button: Button text now wraps by default.
- Content no longer sets the
--background
custom property when the .outer-content
class is set on the host.
- breaking: The supported JS Framework and Browser/Platform versions have been revised for Ionic 8
7.7.3 (2024-02-21)
Bug Fixes
7.7.2 (2024-02-14)
Bug Fixes
- overlays: do not return focus if application has already moved focus manually (#28850) (a016670), closes #28849
- overlays: ensure that only topmost overlay is announced by screen readers (#28997) (ba4ba61), closes #23472
- popover: render arrow above backdrop (#28986) (0a8964d), closes #28985
7.7.1 (2024-02-07)
Bug Fixes
7.7.0 (2024-01-31)
Features
7.6.7 (2024-01-31)
Bug Fixes
7.6.6 (2024-01-24)
Bug Fixes
- alert: remove border-right on ios stacked buttons (#28821) (ad65824)
- datetime: do not animate to new value when multiple values in different months are set (#28847) (9262f7d), closes #28602
- datetime: enter closes keyboard when typing time (#28848) (c47a16d), closes #28325
- menu: improve reliability of main content not being scrollable when menu opens (#28829) (9603a4d), closes #28399
- popover: content inside of popover scrolls correctly (#28861) (10c38d0), closes #28455
- segment: setting value via binding updates button state (#28837) (0847c2a), closes #28816
- select: click handlers on slotted content fire (#28839) (aed7a03), closes #28818
- vue: tabs and parameterized routes work with latest vue (#28846) (5bc4399), closes #28774
7.6.5 (2024-01-17)
Bug Fixes
7.6.4 (2024-01-10)
Bug Fixes
7.6.3 (2024-01-03)
Bug Fixes
- datetime: selected today button renders correctly on ios (#28740) (2f99aea)
- nav, router-outlet: ios page transition does not cover menu on larger screens (#28745) (878eec6), closes #28737
- radio-group: radio disabled prop can be undefined (#28712) (75ffeee), closes #28677
- refresher: native ios refresher works on iPadOS (#28620) (e522601), closes #28617
7.6.2 (2023-12-19)
Bug Fixes
7.6.1 (2023-12-13)
Bug Fixes
7.6.0 (2023-12-06)
Bug Fixes
- angular,vue: range form value updates while dragging knob (#28422) (0854a11), closes #28256
- animation: add stronger types to Animation interface (#28334) (4a088d5)
- animation: progressEnd coercion is reset before onFinish (#28394) (eae8162), closes #28393
- infinite-scroll: remaining in threshold after ionInfinite can trigger event again on scroll (#28569) (8c235fd), closes #18071
- item: allow item to grow when it is used in a flex container (#28594) (1c1b567)
- item: wrap elements and label contents when the font size increases or the elements do not fit (#28146) (6438e3e)
- select: do not collapse to width: 0 when placed in flex container (#28631) (e71e7a0)
- toast: add swipeGesture to ToastOptions (#28518) (4ad6df6)
Features
Note: Text inside of ion-item
can now wrap to resolve accessibility issues related to readability. We recommend evaluating your application to account for text wrapping.
7.5.8 (2023-12-06)
Bug Fixes
7.5.7 (2023-11-29)
Bug Fixes
7.5.6 (2023-11-21)
Bug Fixes
7.5.5 (2023-11-15)
Bug Fixes
- accordion-group: correct accordion is open on load (#28510) (a000dd2), closes #28506
- action-sheet: adjust height for safe area with scrollable options (#28504) (900267e), closes #27777
- header: collapsible large title does not flicker when collapse prop not reflected (#28472) (8227b0e), closes #28466
- item-divider: apply safe area to proper side regardless of direction (#28420) (4513e0c)
- radio-group: emit value change on componentDidLoad (#28488) (73b8bfd), closes #28356
- searchbar: cancel icon aligns with back button (#28478) (c053fd9), closes #28468
7.5.4 (2023-11-08)
Bug Fixes
- inputs: remove invalid legacy warnings in input, textarea, and select (#28484) (c765dcb)
- item: apply safe area to proper side regardless of direction (#28403) (ed040b0)
- list: remove border from last item with item-sliding (#28439) (cafafcc), closes #28435
7.5.3 (2023-11-01)
Bug Fixes
- alert: long words wrap to next line (#28408) (34257d6), closes #28406
- angular: inputs on standalone form controls are reactive (#28434) (3b6e631), closes #28431
- angular: NavController works with nested outlets (#28421) (90acad1), closes #28417
- angular: run platform subscriptions inside zone (#28404) (a4b303e), closes #19539
- angular: standalone form components do not error when multiple are used (#28423) (89698b3), closes #28418
- datetime: allow calendar navigation in readonly mode; disallow keyboard navigation when disabled (#28336) (f6a6877), closes #28121
- input, textarea, select: use consistent sizes (#28390) (b31ecbb), closes #28388
- list-header: apply safe area to proper side regardless of direction (#28371) (f99d530)
- segment: avoid scrolling webkit bug (#28376) (8e2f818), closes #28373
- tab-bar: apply safe area to proper side regardless of direction (#28372) (d47b7e7)
7.5.2 (2023-10-25)
Bug Fixes
7.5.1 (2023-10-18)
Bug Fixes
7.5.0 (2023-10-11)
Bug Fixes
- alert: stop Enter keypress for checkboxes (#28279) (72b3899)
- select: use correct aria-haspopup value (#28265) (01167fc)
- toast: toast does not warn when positionAnchor is undefined (#28312) (c37b3d8)
Features
7.4.4 (2023-10-11)
Bug Fixes
- animation: play method resolves when animation is stopped (#28264) (e6031fb)
- checkbox, radio, toggle: disabled elements are not interactive (#28294) (c70432e), closes #28293
- content: fullscreen offset is computed correctly with tab bar (#28245) (7375dd6), closes #21130
- core: allow fullscreen scroll content to flow outside container for translucent tab bar (#28246) (b297529), closes #17676
- core: swipe to go back gesture has priority over other horizontal swipe gestures (#28304) (d5f0c77), closes #28303
- header: collapsible large title main header does not flicker on load (#28277) (3259da0), closes #27060
- menu: do not error if disabled or swipeGesture is changed mid-animation (#28268) (a169044), closes #20092 #19676 #19000
- segment: scroll to active segment-button on first load (#28276) (1167a93), closes #28096
7.4.3 (2023-10-04)
Bug Fixes
- fab-button: position is correct with custom sizes (#28195) (eb41b55), closes #22564
- range: knob positions are correct on initial render with custom elements build (#28257) (ac2c8e6), closes #25444
7.4.2 (2023-09-27)
Bug Fixes
- react: Nav unmounts component while invoking popTo or popToRoot (#27821) (0edcb2c), closes #27798
- title: large title uses custom font on transition (#28231) (71a7af0)
7.4.1 (2023-09-20)
Bug Fixes
7.4.0 (2023-09-14)
Bug Fixes
Features
7.3.4 (2023-09-13)
Bug Fixes
7.3.3 (2023-09-06)
Bug Fixes
7.3.2 (2023-08-30)
Bug Fixes
7.3.1 (2023-08-23)
Bug Fixes
- angular: ionTabsWillChange is fired before tab activation (#27991) (bbfb8f8), closes #27212
- input, textarea: clearOnEdit does not clear when pressing Tab (#28005) (444acc1), closes #27746
- react: avoid multiple invocations of onDidDismiss and onWillPresent (#28020) (0ac3df3), closes #28010
7.3.0 (2023-08-16)
Bug Fixes
Features
- action-sheet: add htmlAttributes property for passing attributes to buttons (#27863) (5ce4ec0)
- alert: add htmlAttributes property for passing attributes to buttons (#27862) (06be0e5)
- toast: add htmlAttributes property for passing attributes to buttons (#27855) (9a68588)
- toast: add shadow part for cancel button (#27921) (e9faf54), closes #27920
7.2.4 (2023-08-16)
Bug Fixes
7.2.3 (2023-08-09)
Bug Fixes
7.2.2 (2023-08-02)
Bug Fixes
7.2.1 (2023-07-26)
Bug Fixes
7.2.0 (2023-07-19)
Features
7.1.4 (2023-07-19)
Bug Fixes
7.1.3 (2023-07-12)
Bug Fixes
7.1.2 (2023-07-06)
Bug Fixes
7.1.1 (2023-06-26)
Bug Fixes
7.1.0 (2023-06-21)
Bug Fixes
Features
- datetime: add part for month/year button (#27618) (d44422e), closes #26596
- datetime: add shadow parts and CSS variables for styling wheel pickers (#27529) (f2c1845), closes #25945
- input: add experimental label slot (#27650) (a45395c), closes #27061
- range: add label prop (#27408) (368add2)
- return if the pop on NavController was successful (#27404) (e80f0b2), closes #27403
- segment, segment-button: update segment value property to accept numbers (#27222) (ec95ae5), closes #27221
- segment: display segment as a grid and add an ellipsis to overflowing text in a segment button (#27457) (448e63f), closes #16532
- select: add label slot (#27545) (af92cb2), closes #26838
- select: add props to customize toggle icons (#27648) (95e28b6), closes #17248
- select: expose container and label as CSS parts (#27541) (5c10f88), closes #27112
- textarea: add experimental label slot (#27677) (8bcd9e8), closes #27061
7.0.14 (2023-06-15)
Bug Fixes
- keyboard: keyboard events emit correctly when Capacitor is available but the Keyboard plugin is not (#27655) (7a38a00), closes #27654
- toast: allow color for translucent toast (#27652) (d555375), closes #27567
7.0.13 (2023-06-14)
Bug Fixes
7.0.12 (2023-06-08)
Bug Fixes
- refresher: scroll styles are reset when using non-native refresher (#27602) (92c5545), closes #27601
7.0.11 (2023-06-07)
Bug Fixes
- header, footer: resolve CSP violations with box shadow (#27560) (e75fa58)
- item-sliding: refresh sliding behavior when options are added or removed asynchronously (#27572) (b2a226a), closes #25578
- keyboard: listen on correct events for keyboard lifecycle (#27569) (7871210), closes #27558
- radio: radio with modern syntax is keyboard navigable (#27530) (d87e692), closes #27268
- select: prevent click event from firing twice (#27570) (ba7e60e)
7.0.10 (2023-05-31)
Bug Fixes
7.0.9 (2023-05-25)
Bug Fixes
7.0.8 (2023-05-24)
Bug Fixes
- many: update form controls (radio, checkbox, toggle, input, select) to have consistent disabled opacity (#27396) (995a848), closes #27184
- picker-column: correct RTL direction (#27460) (d3dd72f), closes #21205
- popover: blur translucent popover in chromium (#27484) (a59eefb), closes #22176
7.0.7 (2023-05-17)
Bug Fixes
- accordion: state updates if value changes (#27463) (3cbc592), closes #27461
- checkbox, radio: update border colors to match MD2 spec (#27357) (eabc6f3), closes #27170
- datetime-button: log error if non-datetime instance is passed (#27456) (7b7e05a)
- footer, tab-bar: wait for resize before re-showing (#27417) (70d9854), closes #25990
- many: form controls labels have increased margin (#27447) (381de0b), closes #27129
- picker-column: dynamically change options (#27359) (7c7fb2b), closes #21763
- picker-column: prevSelected is set to the correct value (#27458) (9dc126d), closes #21764
- select: floating label covers placeholder when when blurred (#27446) (921bfae), closes #27201
- select: modern syntax works with forms (#27480) (13d2d11), closes #27478
- spinner: allow resizing of dots, bubbles, and circles (#27424) (e5ae45d), closes #18115
- tab-button: use darker text to pass a11y (#27355) (0b23814)
7.0.6 (2023-05-11)
Bug Fixes
7.0.5 (2023-05-03)
Bug Fixes
7.0.4 (2023-04-26)
Bug Fixes
7.0.3 (2023-04-19)
Bug Fixes
7.0.2 (2023-04-12)
Bug Fixes
7.0.1 (2023-04-05)
Bug Fixes
7.0.0 (2023-03-29)
Note: Version bump only for package ionic-framework
Bug Fixes
6.7.1 (2023-03-29)
Bug Fixes
Bug Fixes
BREAKING CHANGES
- many: The
innerHTMLTemplatesEnabled
Ionic Config now defaults to false
. Developers can set this option to true
if they would like to continue to use custom HTML features in ion-alert
, ion-infinite-scroll-content
, ion-loading
, ion-refresher-content
, and ion-toast
.
6.7.0 (2023-03-23)
Features
- config: add option to disable custom html functionality (#26956) (3b0af7c)
Note: Version bump only for package ionic-framework
6.6.3 (2023-03-22)
Note: Version bump only for package ionic-framework
Bug Fixes
Bug Fixes
6.6.2 (2023-03-15)
Bug Fixes
Bug Fixes
- input, textarea: disabled state is applied when true (#26892) (569401b), closes #26881
- item: prevent slotted form controls from taking whole width of item (#26897) (78f5d96)
- many: add aria-hidden to decorative icons (#26922) (78303dc)
- select: popover is full width when used with floating/stacked labels (#26907) (7bc22f2), closes #26903
- vue: input components update refs on ionInput (#26876) (7d9ce74), closes #26700
6.6.1 (2023-03-08)
Note: Version bump only for package ionic-framework
Bug Fixes
BREAKING CHANGES
- button: Button is updated to align with the design specification for iOS.
Design tokens
Token |
Previous Value |
New Value |
$button-ios-letter-spacing |
-0.03em |
0 |
$button-ios-clear-letter-spacing |
0 |
Removed |
$button-ios-height |
2.8em |
3.1em |
$button-ios-border-radius |
10px |
14px |
$button-ios-large-height |
2.8em |
3.1em |
$button-ios-large-border-radius |
12px |
16px |
6.6.0 (2023-03-01)
Bug Fixes
Features
- datetime: add ability to specify custom colors for specific dates (#26775) (2a761af)
- picker-column: assign custom aria-labels to column options (#26749) (daa89a2)
- toast: add stacked buttons functionality (#26790) (fc5fcc0)
6.5.7 (2023-03-01)
Bug Fixes
Bug Fixes
content: adjust transition shadow to match new iOS version (#26839) (f006e4b)
Features
BREAKING CHANGES
- searchbar: The
detail
payload for the ionInput
event now on ion-searchbar
contains an object with the current value
as well as the native event that triggered ionInput
.
- angular,angular-server: Angular v14 is now required to use
@ionic/angular
and @ionic/angular-server
. Upgrade your project to Angular v14 by following the Angular v14 update guide.
The dev-preview environmentInjector
property has been removed from ion-tabs
and ion-router-outlet
. Standalone component routing is now available without additional custom configuration. Remove the environmentInjector
property from your ion-tabs
and ion-router-outlet
components.
Bug Fixes
6.5.6 (2023-02-22)
Bug Fixes
6.5.5 (2023-02-20)
Bug Fixes
Bug Fixes
Features
6.5.4 (2023-02-15)
Bug Fixes
Bug Fixes
- gesture: reduce delay with adding and removing activated states (#26741) (4cff442), closes #23691
BREAKING CHANGES
- range: The
name
property on ion-range
defaults to ion-r-${rangeIds++}
where rangeIds
is a number that is incremented for every instance of the component.
6.5.3 (2023-02-08)
Bug Fixes
Bug Fixes
Reverts
6.5.2 (2023-02-01)
Bug Fixes
Bug Fixes
- accordion-group: do not adjust incorrect values (#26086) (e2cbeeb)
- action-sheet: container animates in correctly (#26347) (1e855e7), closes #25368
- angular: null values are not converted to falsy value (#26341) (ce2e37b)
- back-button: update style for ios spec (#26395) (1a840c4), closes #26393
- breadcrumb: add aria-label to collapsed indicator (#26615) (f8a2c79)
- card-header: reverse order of title and subtitle on ios (#26084) (2080890)
- datetime: do not report timezone in ionChange (#26183) (3fb4caf), closes #25577
- datetime: haptics are enabled only on ios (#26370) (8eec197), closes #25508
- input, searchbar, select, textarea: placeholder has improved contrast (#26486) (6c82435)
- input, textarea: inputs now scroll into view when tapping labels (#25848) (cb265d6)
- input, textarea: padding is now added to content so inputs scroll above keyboard (#25849) (ba6b539), closes #18532
- input: clearOnEdit clears input when user initially types (#26005) (bf5e118)
- item: align iOS font size to spec (#26445) (eea91bb)
- item: ios mode has correct padding (#26511) (96147ec)
- overlays: dismiss on keydown to avoid chrome for windows and firefox bug (#25811) (a1ec9aa), closes #25802
- overlays: triggerController warns about missing triggers (#26651) (a7c2c55)
- range: range matches iOS design specification (#25873) (da05ffe), closes #25872
- segment: click event triggers ionChange (#26162) (70781e4)
- select: chevron icon is now an ionicon (#26484) (0823c09)
- select: modern component takes up full line (#26670) (4d24b32)
- textarea: clearOnEdit clears textarea when user initially types (#26006) (f7176bb)
- textarea: render icon for clearing input (3271ecf)
Code Refactoring
Features
- accordion: ionChange will only emit from user committed changes (#25922) (4eea9fa)
- action-sheet: use action sheet overlay inline (#26172) (92b763a), closes https://github.com/ionic-team/ionic-framework/issues/22799, https://github.com/ionic-team/ionic-framework/issues/23219
- alert: add ability to use alert inline (#26316) (08c0a55), closes https://github.com/ionic-team/ionic-framework/issues/22799, https://github.com/ionic-team/ionic-framework/issues/23219
- base-components: add ability to remove ios and md theme (#26669) (18f109c)
- checkbox: component can be used outside ion-item (#26518) (9d52e70), closes https://github.com/ionic-team/ionic-framework/issues/21513, https://github.com/ionic-team/ionic-framework/issues/23332, https://github.com/ionic-team/ionic-framework/issues/23289
- checkbox: ionChange fires on user interaction (#25923) (a6b2629)
- datetime: ionChange will only emit from user committed changes (#26083) (cc2af20), closes #20873 #24452
- input, textarea: change default debounce to undefined (#26073) (c45d054)
- input, textarea: ionInput and ionChange pass event and value (#26176) (eea6ba9)
- input: component can be used outside of ion-item (#26283) (44472ae), closes #20153 #19084 #22736, https://github.com/ionic-team/ionic-framework/issues/24312, https://github.com/ionic-team/ionic-framework/issues/24333, https://github.com/ionic-team/ionic-framework/issues/24639, https://github.com/ionic-team/ionic-framework/issues/26178, https://github.com/ionic-team/ionic-framework/issues/24966, https://github.com/ionic-team/ionic-framework/issues/23331, https://github.com/ionic-team/ionic-framework/issues/18037, https://github.com/ionic-team/ionic-framework/issues/23335
- input: debounce controls the timing to delay the ionInput event (#25969) (35041b2)
- input: ionChange will only emit from user committed changes (#25858) (8732b7b), closes #20106 #20061
- loading: use loading overlay inline (#26153) (34ca337), closes https://github.com/ionic-team/ionic-framework/issues/22799, https://github.com/ionic-team/ionic-framework/issues/23219
- picker: add ability to use picker inline (#26336) (c0a8501), closes https://github.com/ionic-team/ionic-framework/issues/22799, https://github.com/ionic-team/ionic-framework/issues/23219
- radio-group: ionChange will only emit from user committed changes (#26223) (c299d36)
- radio: component can be used outside of ion-item (#26582) (9761b0a), closes https://github.com/ionic-team/ionic-framework/issues/21513
- range: component can be used outside of ion-item (#26479) (49baad8)
- range: ionChange will only emit from user committed changes (#26089) (d1fb7b0)
- searchbar: ionChange will only emit from user committed changes (#26026) (b052d3b)
- segment: ionChange will only emit from user committed changes (#25934) (a03c8af)
- select: component can be used outside ion-item (#26572) (02640b5), closes https://github.com/ionic-team/ionic-framework/issues/23540, https://github.com/ionic-team/ionic-framework/issues/24322, https://github.com/ionic-team/ionic-framework/issues/25449, https://github.com/ionic-team/ionic-framework/issues/25639, https://github.com/ionic-team/ionic-framework/issues/19936
- select: ionChange will only emit from user committed changes (#26066) (34c4137)
- slides: remove ion-slide, ion-slides, and IonicSwiper module (#25868) (d478e03)
- textarea: component can be used outside of ion-item (#26674) (8d3edd0), closes https://github.com/ionic-team/ionic-framework/issues/22269
- textarea: ionChange will only emit from user committed changes (#25953) (68bae80)
- toast: add ability to use toast inline (#26215) (003de44), closes https://github.com/ionic-team/ionic-framework/issues/22799, https://github.com/ionic-team/ionic-framework/issues/23219
- toggle: component can be used outside of ion-item (#26357) (c74901c), closes #25570 #23213, closes https://github.com/ionic-team/ionic-framework/issues/23332, https://github.com/ionic-team/ionic-framework/issues/23213
- toggle: ionChange will only emit from user committed changes (#26078) (85d3bd9)
- virtual-scroll: remove virtual scroll component (#25808) (1eb6fd0)
BREAKING CHANGES
- config: The supported version of Firefox for Ionic v7 has changed to Firefox v70+
- input, searchbar, select, textarea: The default value for the
--placeholder-opacity
CSS Variable on ion-input
, ion-searchbar
, ion-select
, and ion-textarea
has been updated to 0.6
.
- select: The
icon
CSS Shadow Part for ion-select
now targets an ion-icon
component.
- datetime: The haptics when swiping the wheel picker are now enabled only on iOS.
- toggle: The
--background
and --background-checked
variables have been renamed to --track-background
and --track-background-checked
, respectively.
- angular: Datetime:
Passing the empty string to the value
property will now error as it is not a valid ISO-8601 value.
Angular:
null
values on form components will no longer be converted to the empty string (''
) or false
. This impacts ion-checkbox
, ion-datetime
, ion-input
, ion-radio
, ion-radio-group
, ion-range,
ion-searchbar,
ion-segment,
ion-select,
ion-textarea, and
ion-toggle`.
- picker: The
refresh
key has been removed from the PickerColumn
interface. Developers should use the columns
property to refresh the ion-picker
view.
- input, textarea: The
detail
payload for the ionInput
event on ion-input
and ion-textarea
now contains an object with the current value
as well as the native event that triggered ionInput
.
- datetime: Datetime no longer incorrectly reports the time zone when
value
is updated. Datetime does not manage time zones, so any time zone information provided is ignored.
- types:
ActionSheetAttributes
, AlertAttributes
, AlertTextareaAttributes
, AlertInputAttributes
, LoadingAttributes
, ModalAttributes
, PickerAttributes
, PopoverAttributes
, and ToastAttributes
have been removed. Developers should use { [key: string]: any }
instead.
- card-header: - The card header has ben changed to a flex container with direction set to
column
(top to bottom). In ios
mode the direction is set to column-reverse
which results in the subtitle displaying on top of the title.
- accordion-group: Accordion Group no longer automatically adjusts the
value
property when passed an array and multiple="false"
. Developers should update their apps to ensure they are using the API correctly.
- select:
ionChange
is no longer emitted when the value
of ion-select
is modified externally. ionChange
is only emitted from user committed changes, such as confirming a selected option in the select's overlay.
- react:
@ionic/react
and @ionic/react-router
no longer ship a CommonJS entry point. Instead, only an ES Module entry point is provided for improved compatibility with Vite.
- vue:
@ionic/vue
and @ionic/vue-router
no longer ship a CommonJS entry point. Instead, only an ES Module entry point is provided for improved compatibility with Vite.
- modal: - The
swipeToClose
property has been removed in favor of canDismiss
.
- The
canDismiss
property now defaults to true
and can no longer be set to undefined
.
- checkbox:
ionChange
is no longer emitted when the checked
property of ion-checkbox
is modified externally. ionChange
is only emitted from user committed changes, such as clicking or tapping the checkbox.
- accordion:
ionChange
is no longer emitted when the value
of ion-accordion-group
is modified externally. ionChange
is only emitted from user committed changes, such as clicking or tapping the accordion header.
- core: The
[hidden]
attribute has been removed from Ionic's global stylesheet. The [hidden]
attribute can continue to be used, but developers will get the native hidden
implementation instead. The main difference is that the native implementation is easier to override using display
than Ionic's implementation.
Developers can add the following CSS to their global stylesheet if they need the old behavior:
[hidden] {
display: none !important;
}
- overlays: Ionic now listens on the
keydown
event instead of the keyup
event when determining when to dismiss overlays via the "Escape" key. Any applications that were listening on keyup
to suppress this behavior should listen on keydown
instead.
6.5.1 (2023-01-25)
Bug Fixes
6.5.0 (2023-01-18)
Features
6.4.3 (2023-01-18)
Bug Fixes
6.4.2 (2023-01-11)
Bug Fixes
6.4.1 (2022-12-14)
Bug Fixes
6.4.0 (2022-12-07)
Features
6.3.10 (2022-12-07)
Bug Fixes
- datetime: add flipRTL to monthAndYear dropdown icon (#26378) (13fe669)
- datetime: md highlight does not clip at start or end of month (#26366) (fcfbcdb), closes #24891
- segment: scrolling button into view is more consistent (#26369) (a2d570b), closes #26368
6.3.9 (2022-11-30)
Bug Fixes
6.3.8 (2022-11-22)
Bug Fixes
6.3.7 (2022-11-16)
Bug Fixes
6.3.6 (2022-11-10)
Bug Fixes
- datetime: flip chevron icons when RTL is set on component directly (#26195) (dd98677)
- react: inline overlays display contents consistently (#26255) (d709ff6), closes #26253
6.3.5 (2022-11-09)
Bug Fixes
6.3.4 (2022-11-02)
Bug Fixes
- datetime: account for allowed values when setting default date (#26093) (3745083), closes #24722
- modal, popover: remove trigger click listeners when overlay is unmounted (#26167) (1320948)
- modal: buttons are highlighted with VoiceOver (#26180) (1504b88), closes #26156
6.3.3 (2022-10-26)
Bug Fixes
6.3.2 (2022-10-17)
Bug Fixes
6.3.1 (2022-10-12)
Bug Fixes
6.3.0 (2022-10-05)
Bug Fixes
Features
6.2.9 (2022-09-28)
Bug Fixes
- animation: improve compatibility with ssr (#25992) (02234f6), closes #25987
- chip: default color has contrast on dark mode (#25998) (ef78a12), closes #25997
- datetime: expand/collapse icon is not announced to screen readers (#26018) (649d3cf)
- datetime: swiping wheel no longer dismisses card modal (#25981) (7543c84)
- datetime: switching month and year accounts for day (#25996) (11f44e9), closes #25585
- datetime: time button is easier to access with screen readers (#26019) (5846b41)
- picker-internal: fonts now render consistently (#26020) (54f99bd)
- react: overlays now define internal ionic components (#25967) (21dc893), closes #25962
- vue: back button handler only fires in routing context (#26014) (19f0fb7)
6.2.8 (2022-09-21)
Bug Fixes
- datetime: account for 12AM with min times and 12 hour format (#25952) (55ebd6c), closes #25183
- item: show the highlight on iOS when --highlight-height is set (#25905) (d7db133)
- overlays: focus trapping no longer includes disabled elements (#25949) (6cb5827)
- overlays: focus trapping no longer includes hidden elements (#25948) (5c10f98)
6.2.7 (2022-09-14)
Bug Fixes
6.2.6 (2022-09-07)
Bug Fixes
6.2.5 (2022-08-31)
Bug Fixes
6.2.4 (2022-08-24)
Bug Fixes
6.2.3 (2022-08-17)
Bug Fixes
- css: preserve whitespace in selectors when minifying css (#25767) (bafa759), closes #25766
- datetime: highlights now show above content in modal (#25756) (d711658), closes #25755
- footer: remove toolbar bottom padding if near bottom slot tabs or keyboard is open (#25746) (bb37446)
- header: hide from screen readers when collapsed (#25744) (d0ba963)
- input: exclude date inputs from scroll assist (#25749) (abb56d2), closes #25745
- item: form validation caret color renders correctly (#25725) (de20541), closes #25719
- refresher: refresher is visible with multiple custom scroll targets (#25750) (e750e33), closes #25495
6.2.2 (2022-08-10)
Bug Fixes
6.2.1 (2022-08-03)
Bug Fixes
6.2.0 (2022-07-27)
Bug Fixes
Features
6.1.15 (2022-07-20)
Bug Fixes
6.1.14 (2022-07-13)
Bug Fixes
6.1.13 (2022-07-06)
Bug Fixes
6.1.12 (2022-06-29)
Bug Fixes
- angular: warn devs that standalone components are not supported (#25516) (c53785c)
- datetime: add dev warnings when setting out of bounds value (#25513) (5dfaf63)
6.1.11 (2022-06-22)
Bug Fixes
6.1.10 (2022-06-15)
Bug Fixes
- angular: router compatibility with Angular 12/13 (#25456) (7b105a3), closes #25448
- fab-button: improve ripple effect behavior on click (#25413) (efdaf90), closes #21772
- modal: backdrop animation when backdropBreakpoint is 1 (#25430) (c10df52), closes #25402
- modal: status bar color now correct with sheet modal (#25424) (377c4f5), closes #20501
- picker-column-internal: switching off an input mode column preserves scroll (#25467) (989429d)
- popover: ensure popover does not go offscreen when adjusting top position (#25350) (6926538), closes #25349
6.1.9 (2022-06-08)
Bug Fixes
6.1.8 (2022-06-01)
Bug Fixes
6.1.7 (2022-05-26)
Bug Fixes
- accordion: accordions expand when using binding (#25322) (61e571e), closes #25307
- datetime: don't update value on confirm call if no date was selected (#25338) (9e5b10a)
- item, list: list aria roles are added (#25336) (311c634), closes #19939
- menu: rtl menu no longer disappears on ios 15 (#25309) (6005431), closes #25192
- modal: swipe to close on content blocks scroll in ion-nav (#25300) (fdc55c0), closes #25298
- nav: swipe to go back works inside card modal (#25333) (0156be6), closes #25327
- range: interfaces are now correctly exported (#25342) (15f0c06), closes #25341
- react: add param types to useIonPopover dismiss function (#25311) (7111370)
- react: IonTabButton will call custom onClick handlers (#25313) (6034418), closes #22511
- refresher: attach scroll listener to custom scroll target (#25335) (8f5e4cd), closes #25318
- types: improve intellisense with colors (#25347) (97cfbbb)
- vue: correct views are now unmounted in tabs (#25270) (5e23fb1), closes #25255
6.1.6 (2022-05-18)
Bug Fixes
6.1.5 (2022-05-11)
Bug Fixes
6.1.4 (2022-05-04)
Bug Fixes
- datetime: arrow navigation respects min/max values (#25182) (6946e09), closes #25073
- datetime: hide footer when month-year picker is open (#25205) (aa5e1b9)
- modal: card modal can now be swiped to close on the content (#25185) (7633ddb), closes #22046
- modal: card modal no longer dismisses from content with refresher (#25227) (c4f811f)
- react: useIonModal/useIonPopover dismiss accepts data and role (#25209) (68b2f8b), closes #25208
- vue: switching between tabs and going back resolves to correct route (#25206) (b4ba70e), closes #24303
6.1.3 (2022-04-27)
Bug Fixes
- core: inherit aria attributes on host elements (#25156) (611832b), closes #20127
- datetime: if no default value, don't highlight active day until one is selected (#25151) (9896939)
- picker-column-internal: center active item when rapidly opened (#25155) (8e17fa9), closes #25154
- select: avoid duplicate dialogs and backdrops when clicking (#25175) (70d2784), closes #25126
- vue: canDismiss definition is now exposed (#25195) (e5e0e24)
- vue: replacing routes across nested outlets preserves previous route info (#25171) (7b71607), closes #25017
6.1.2 (2022-04-20)
Bug Fixes
6.1.1 (2022-04-15)
Bug Fixes
- all: import path is now correct when using ionic in a stencil app (#25123) (1b407ab), closes #25122
- datetime: account for 30 and 45 minute timezones when getting current date (#25120) (96b2003), closes #25112
- modal, popover: do not dismiss when ionDismiss is emitted from select (#25125) (90115db), closes #25124
Bug Fixes
- accordion-group: only allow keyboard interaction if header is focused (#25091) (e1b555f)
- datetime: resolve warnings when importing into Stencil app (#25106) (a61c004)
- menu: preserve scroll position when focusing on open (#25044) (da89684)
- popover: only focus trap ion-item children (#24990) (0cd06a6), closes #24633
- ripple-effect: ripple displays on click or touch (#25102) (2a313e9), closes #25094
- vue: ensure that only tab pages get added to the tab navigation stack (#25045) (a0054a7), closes #24859
Features
- content, reorder-group, header, footer, infinite-scroll, refresher: add custom scroll target to improve compatibility with virtual scroll (#24883) (2a438da), closes #23437
- datetime: isDateEnabled to enable/disable specific days (#24898) (e932a04), closes #24209
- item: counter formatter to customize counter text display (#24336) (171020e), closes #24327
- modal: ability to programmatically set current sheet breakpoint (#24648) (3145c76), closes #23917
- modal: add canDismiss property to manage modal dismissing (#24928) (4b21958), closes #22297
- range: add knobMoveStart and knobMoveEnd events (#25011) (f5cb1f8)
- select: add event for when overlay is dismissed (#24400) (b835b7c)
6.0.16 (2022-04-08)
Bug Fixes
- angular: button components now route correctly without reload (#25071) (fb994fa)
6.0.15 (2022-04-06)
Bug Fixes
6.0.14 (2022-03-30)
Bug Fixes
6.0.13 (2022-03-23)
Bug Fixes
6.0.12 (2022-03-16)
Bug Fixes
- datetime: reinit behavior on presentation change (#24828) (d46e1e8)
- tabs: angular, fire willChange event before selected tab changes (#24910) (d5efa11)
- toast: screen readers now announce toasts when presented (#24937) (8a97f6b), closes #22333
- vue: tapping the active tab button now correctly resets the tab stack (#24935) (4534c8b), closes #24934
6.0.11 (2022-03-09)
Bug Fixes
6.0.10 (2022-03-02)
Bug Fixes
6.0.9 (2022-02-23)
Bug Fixes
6.0.8 (2022-02-15)
Bug Fixes
6.0.7 (2022-02-09)
Bug Fixes
6.0.6 (2022-02-09)
Bug Fixes
- action-sheet: background includes safe area margin (#24700) (8c22646), closes #24699
- angular-server: publish only the dist directory to avoid import errors (#24701) (2a27bef), closes #24605
- angular, react, vue: overlays no longer throw errors when used inside tests (#24681) (897ae4a), closes #24549 #24590
- datetime: disable intersection observer during month update (#24713) (aab4d30), closes #24712
- datetime: minutes only filtered when max hour matches current hour (#24710) (231d6df), closes #24702
- input: cursor position does not jump to end (#24736) (4ff9524), closes #24727
- input: IME composition mode (#24735) (c6381ce), closes #24669
- modal, popover: quickly opening modal/popover no longer presents duplicates (#24697) (928c5fb)
- modal: inline modals inherit ion-page styling (#24723) (596aad4), closes #24706
- popover: use alignment with popover options (#24711) (f5c5c3c), closes #24709
- router: router push with relative path (#24719) (d40c0c3), closes #24718
- select: value is selected when given array (#24687) (6ee7d15), closes #24742
- vue: replacing routes now updates location state correctly (#24721) (721a461), closes #24432
- vue: routing history is correctly replaced when overwriting browser history (#24670) (0b18260), closes #23873
6.0.5 (2022-02-02)
Bug Fixes
- various: don't use lazy-loaded icon names in components (#24671) (484de50)
6.0.4 (2022-01-26)
Bug Fixes
- accordion: items inside of the content now correct display borders (#24618) (d3311df), closes #24613
- angular: routerLink with null value works with Angular 13 (#24622) (90a9a9c), closes #24586
- col: col no longer errors when running in non-browser environment (#24603) (af0135c), closes #24446
- datetime: datetime locale with h23 will respect max time range (#24610) (5925e76), closes #24588
- datetime: timepicker popover will position relative to click target (#24616) (378c632), closes #24531 #24415
- input: ion-input accepts any string value (#24606) (43c5977), closes #19884
- item: label text aligns with input text (#24620) (94d033c), closes #24404
- item: match material design character counter (#24335) (54db1a1), closes #24334
- menu: focus trapping with menu and overlays no longer results in errors (#24611) (632dafc), closes #24361 #24481
- modal: native keyboard will dismiss when bottom sheet is dragged (#24642) (525f01f), closes #23878
- range: setting dir on ion-range to enable rtl mode now supported (#24597) (5dba4e5), closes #20201
- react: setupIonicReact no longer crashes in SSR environment (#24604) (360643d)
- searchbar: setting dir on ion-searchbar to enable rtl mode now supported (#24602) (35e5235)
- segment: setting dir on ion-segment to enable rtl mode now supported (#24601) (2940e73), closes #23978
- spinner: ensure transform doesn't overwrite circular animation (#24643) (88ce010)
- toast: allow input focus while toast is visible (#24572) (29f1140), closes #24571
- toggle: setting dir on ion-toggle to enable rtl mode now supported (#24600) (353dbc0)
6.0.3 (2022-01-19)
Bug Fixes
- angular-server: use correct @ionic/angular dependency version (#24593) (be022f7), closes #24592
- angular: apply touch, dirty and pristine form control classes (#24558) (273ae2c), closes #24483
- datetime: showing calendar grid no longer causes month to switch on ios 15 (#24554) (3d20959), closes #24405
- item: error slot visible in Safari (#24579) (af01a8b), closes #24575
- menu: remove main attribute that was supposed to removed in v5 (#24565) (7704ac3), closes #24563
- modal: life cycle events for controller modals (#24508) (9a15753), closes #24460
- overlays: getTop now returns the top-most presented overlay (#24547) (f5b4382), closes #19111
- react: add useRef wrapper to useIonOverlay state to avoid stale references (#24553) (bce849c)
- react: prevent errors when dismissing inline popover after containing element is removed (#24569) (c8a392a)
6.0.2 (2022-01-11)
Bug Fixes
- angular: attach change detector ref for inline overlays (#24521) (5c54593), closes #24502
- angular: popover will respect side attribute value (#24470) (e6955a2), closes #24466
- breadcrumb: support routerLink on breadcrumb (#24509) (5bb1414), closes #24493
- css: inline css source in source maps (#24514) (987d46c), closes #24441
- datetime: add top padding to MD calendar month grid (#24522) (bd82b5d), closes #24408
- datetime: RTL will no longer infinitely scroll (#24475) (8f00008), closes #24472
- datetime: time picker format with hourCycle h23 (#24476) (a3724e6), closes #24474
- datetime: update active day styling when day is selected (#24454) (4304391), closes #24414 #24451
- datetime: wheel picker shows correct column order in rtl (#24546) (c90ce31), closes #24378
- overlays: define custom element children (#24439) (4715b83), closes #24393
- popover: allow arrow configuration with controller approach (#24512) (b39003a), closes #24487
- radio: fix radio not showing checked state when not in a group (#24423) (94a781c)
- react,vue: backdrop for inline modal/popover overlay (#24453) (77f8412), closes #24449
- react: building app for production now works correctly with vite (#24515) (32fad3d), closes #24229
- react: scrolling to bottom of modal contents (#24510) (1462cef), closes #24478
- refresher: import icons to avoid errors in react and vue (#24525) (388622f), closes #24480
- vue: correct route is replaced when using router.replace (#24533) (90458da), closes #24226
6.0.1 (2021-12-15)
Bug Fixes
- content: remove global click listener to improve interaction performance (#24360) (1bfac52), closes #24359
Enjoy! 🚀
We recommend updating to version 5.9.2
before updating to version 6.0.0
in order to see deprecation warnings related to your app in the developer console.
Please see the Ionic 6 Upgrade Guide for a step-by-step list of what you need to do to get started with Ionic 6.
Bug Fixes
- accordion: improve functionality with nested accordions (#24302) (0920797)
- content: ensure scrollEl is always available in scroll methods (#24255) (36a096c), closes #24168
- datetime: keyboard navigation now works in time picker (#24251) (8bdcd3c), closes #24070
- datetime: prevent multiple items from being highlighted at once in month/year and time pickers (#24268) (c2bef8d), closes #24067
- datetime: update active calendar display when value changes (#24244) (ec3bc52), closes #24241
- item: counter property now defaults to false to make upgrade easier (#24263) (f61f356)
- react, vue: remove side effects to improve treeshaking (#24313) (13d4418), closes #24280
Features
Bug Fixes
- all: Ionic components that use child Ionic components are now correctly defined (#24191) (5a2a335), closes #23571 #24116 #24129
- angular: prevent duplicate event emissions (#24200) (fc1eae9)
- icon: update to ionicons 6 to resolve typescript 4.4 errors (#24185) (118c606)
- input: date type in ion-input now aligns correctly on iOS 15 (#24213) (9cf7c89)
- input: ionInput event emits with type of InputEvent (#24111) (52cd5d0)
- item: allow click targets inside of label (#24225) (3949a94)
- label: apply error appearance when control is touched (#24072) (009dff5)
- modal, popover: opening modal and popover now works even if overlay was added to ion-app directly (#24174) (da339a8), closes #23728
- modal: border radius is now correctly applied to card modals (#24204) (1f4f8eb)
- modal: card modal shadow now shows up correctly on ipad (#24203) (5d4f5af)
- overlays: declarative modals now work properly with the hardware back button (#24165) (b3759ae)
- react: improve component compatibility with preact (#24132) (15fc293), closes #23516
- textarea: floating label layout is correct with autogrow textareas (#24202) (713f0f5)
Bug Fixes
Bug Fixes
- accordion-group: ionChange is now fired properly in vue (#24063) (61b99d1), closes #23762
- datetime: clear button is now rendered even if showDefaultButtons is false (#24075) (e3996cf)
- datetime: default sizing preserves shape of datetime (#24104) (71fab0f)
- infinite-scroll: infinite scroll event now fired with custom elements build (#24043) (8a86cfb), closes #24034
- modal: fix backdrop animation for sheets with off-center backdropBreakpoint (#24061) (49db6d0)
- react: overlays shown with useIonModal and useIonPopover no longer render outside of main react tree (f3e492c), closes #23516 #23516
Features
Bug Fixes
Bug Fixes
- datetime: add ionBlur/ionFocus events to whole component (#23980) (86a77bd)
- datetime: change now emitted when picker is typed into (#24018) (0320164)
- datetime: ionChange is no longer called for out of range dates (#23940) (ea39c6e), closes #23939
- datetime: time picker uses new iOS 15 style (#23996) (0ab37b5), closes #23768
- modal: backdropBreakpoint is now an exclusive value (#23954) (ed455ab)
- react: ensure inline modal content is visible (#23968) (285a371)
- reorder-group: wait for content to render before getting scroll position (#24007) (225a278), closes #23875
- select: ensure popover options with number values are searched for correctly (#23998) (c204083)
- select: focus selected item in popovers (#23991) (2497a53)
Features
BREAKING CHANGES
- all: The
RadioChangeEventDetail
interface has been removed in favor of RadioGroupChangeEventDetail
.
Bug Fixes
- modal: add sheet modal properties for angular (#23899) (d1763fc)
- modal: expose breakpoint props in ModalOptions interface (#23867) (5fd80fd), closes #23866
- modal: handle on sheet modal can now be turned off (#23900) (e2d2ad6)
- modal: modal displays in middle of screen on desktop (#23911) (9d87028)
- modal: sheet animation works correctly if breakpoints value does not include 1 (#23927) (414f246)
- modal: sheet modal handle is now positioned correctly (#23901) (58a4ba2)
- modal: sheet modal now accounts for safe area (#23884) (195d817), closes #23874
Features
Bug Fixes
Features
Bug Fixes
Features
Bug Fixes
- list: change inset border radius to match iOS 15 (#23711) (fe2810b)
- popover: fix keyboard arrow navigation (#23709) (f2e7a26), closes #23512
- vue: popover positioning is now correct with custom elements build (#23680) (3a1a9cb)
Features
- toast: add icon property to show icon at start of toast content (#23596) (df24c8c), closes #23524
Bug Fixes
- accordion: value can now be set as string when using multiple is true (#23581) (8f172de), closes #23550
- angular: modal and popover now have correct props defined on angular component (#23565) (e5a7b34)
- datetime: add keyboard year navigation (#23585) (55bd1f7), closes #21553 #18122
- datetime: selecting time now works correctly on firefox (#23583) (4188964), closes #23545
- datetime: years displayed now more consistent with v5 datetime, max and min are now accounted for in MD mode (#23616) (be219a2), closes #23615
Features
- breadcrumbs: ionCollapsedClick event payload now contains references to collapsed breadcrumb elements (#23611) (9ce57d2), closes #23552
- datetime: add showDefaultTimeLabel property and time-label slot (#23577) (7ac0109), closes #23555
- datetime: add size property (#23649) (321341d), closes #23518
- range: add support for customizing pin format (#22972) (8f2c4f7)
- segment: add keyboard navigation, add selectOnFocus property to control selection follow focus behavior (#23590) (b6c53e5), closes #23520
- select: update popover interface to match MD spec on desktop, allow multiple values in popover interface (#23474) (2c07a15), closes #23657 #15500 #12310
- remove shims for legacy browsers no longer supported in v6 (#23592) (259b135)
Bug Fixes
- accordion: improved reliability of accordion animations (#23531) (6fbd60b), closes #23504
- content: add touch-action manipulation for a11y zoom and pan (#23534) (6ca1780), closes #22805
- datetime: scroll position no longer gets reset when using datetime in overlay (#23543) (b735b58)
- input, select, textarea: change type of placeholder prop to string only (#23500) (f3ae431), closes #22976
- popover: size property now works when providing only event (#23532) (bdc1f23), closes #23528
- popover: update animation to better match MD spec (#23541) (bdb95b7)
- react: export accordion and accordion group components (#23497) (a664d42)
- vue: navigating between parameterized pages now results in page transition (#23525) (e30b17c), closes #22662
Features
- accordion-group: add animated property to disable animations (#23530) (9a60dd0)
- action-sheet, alert: add id to AlertButton and ActionSheetButton (#18992) (9e24a0b), closes #22959
- vue: extend useIonRouter hook for programmatic navigation with animation control (#23499) (fc9e1b4), closes #23450
BREAKING CHANGES
- input, select, textarea: Updated the
placeholder
property on ion-input
, ion-textarea
, and ion-select
to have a type of string | undefined
.
Bug Fixes
- accordion: toggle icon now shows up in vue and react (#23426) (c716617)
- datetime: changing time emits ionChange (#23463) (b0cce36)
- modal, popover: overlays now automatically determine if they are inline (#23434) (8dbe8ba)
- modal: add additional padding to toolbars in iOS modal (#23262) (a037b65), closes #22778
- modal: border radius is correctly set on card style modal (#23461) (bccb8ad)
- popover: shadow parts now correctly added (#23446) (e1a9613)
- popover: update prop defaults, use correct delegate (#23340) (960778a)
- searchbar: showClearButton now defaults to 'always' for improved usability with screen readers (#23475) (80f181d)
- vue: ensure webpack does not eliminate core css (#23465) (ee3a00f)
Code Refactoring
- all: update required browser, framework, and mobile platform versions for v6 (#23443) (c842dd8)
- angular: remove Config.set() method (#22918) (9e05891)
- header: removed border from last toolbar when using collapsible large title (#22891) (c72bc5d), closes #22777
- ios: update toolbar and tabbar default background colors (#22852) (3d615cb), closes #22780
- toast: whitespace variable now defaults to normal (#22866) (9b78689)
- vue: drop support for "on" prefixed overlay events and bump minimum required version of vue to 3.0.6 (#23229) (6fcb3a6)
- vue: remove support for child routes nested inside of tabs (#22919) (75458ac)
Features
- accordion: add accordion and accordion-group components (#22865) (073883a), closes #17094
- breadcrumbs: add breadcrumbs component (#22701) (2f6b1e4), closes #22770
- datetime: add calendar picker (#23416) (932d3ca), closes #19423
- item: add helper text, error text, counter, shape, and fill mode (#23354) (faefe97), closes #19619
- modal: modals can now be used inline (#23341) (3be1c3d), closes #20117 #20263
- popover: account for ionShadowTarget elements (#23436) (0e38d42)
- popover: add desktop support (#23258) (a67a0fa), closes #21599
- popover: popover can now be used inline (#23231) (308fa1c)
- slides: add IonicSwiper modules, deprecate ion-slides, and add link to migration (#23447) (623c84a)
- spinner: add lines-sharp, lines-sharp-small, update styles for ios 14 (#22397) (2a5b272)
- vue: add custom elements bundle (#23458) (dc48a9f)
BREAKING CHANGES
- searchbar: The
showClearButton
property on ion-searchbar
now defaults to 'always'
.
- datetime: The
ion-datetime
component has been revamped to use a new calendar style. As a result, some APIs have been removed. See https://github.com/ionic-team/ionic-framework/blob/master/BREAKING.md for more details.
- all: Browser, JS Framework, and mobile platform minimum required versions have been updated.
- popover: Converted
ion-popover
to use the Shadow DOM.
- vue: - Dropped support for prefixed overlay events in favor of non prefixed events (I.e.
@onDidDismiss
becomes @didDismiss
).
- Minimum required version of Vue is now Vue v3.0.6 or newer.
- vue: Support for child routes nested inside of tabs has been removed to better conform to Vue Router's best practices. Additional routes should be written as sibling routes with the parent tab as the path prefix.
- angular: The
Config.set()
method has been removed. See https://ionicframework.com/docs/angular/config for examples on how to set config globally, per-component, and per-platform.
- ios: The tab bar and toolbar default background colors have been updated to better reflect the latest iOS styles.
- header: The last toolbar in the header with a collapsible large title no longer has a border.
- toast: The
--white-space
CSS Variable now defaults to normal
.
Bug Fixes
Bug Fixes
- accordion-group: ionChange is now fired properly in vue (#24063) (61b99d1), closes #23762
- angular: resolve issues with ng add on angular 12 (#23970) (3451a34)
- datetime: clear button is now rendered even if showDefaultButtons is false (#24075) (e3996cf)
- datetime: default sizing preserves shape of datetime (#24104) (71fab0f)
- infinite-scroll: infinite scroll event now fired with custom elements build (#24043) (8a86cfb), closes #24034
- modal: fix backdrop animation for sheets with off-center backdropBreakpoint (#24061) (49db6d0)
- react: overlays shown with useIonModal and useIonPopover no longer render outside of main react tree (f3e492c), closes #23516 #23516
Bug Fixes
Bug Fixes
- datetime: ionBlur and ionFocus now fires correctly (#23980) (86a77bd)
- datetime: ionChange is no longer called for out of range dates (#23940) (ea39c6e), closes #23939
- datetime: time picker uses new iOS 15 style (#23996) (0ab37b5), closes #23768
- modal: backdropBreakpoint is now an exclusive value (#23954) (ed455ab)
- react: ensure inline modal content is visible (#23968) (285a371)
- reorder-group: wait for content to render before getting scroll position (#24007) (225a278), closes #23875
- select: ensure popover options with number values are searched for correctly (#23998) (c204083)
- select: focus selected item in popovers (#23991) (2497a53)
Features
BREAKING CHANGES
- radio: The
RadioChangeEventDetail
interface has been removed in favor of RadioGroupChangeEventDetail
.
Bug Fixes
- menu: add console error for incorrect usage of contentId (#23871) (879ab8e), closes #23810
- modal: add sheet modal properties for angular (#23899) (d1763fc)
- modal: expose breakpoint props in ModalOptions interface (#23867) (5fd80fd), closes #23866
- modal: handle on sheet modal can now be turned off (#23900) (e2d2ad6)
- modal: modal displays in middle of screen on desktop (#23911) (9d87028)
- modal: sheet animation works correctly if breakpoints value does not include 1 (#23927) (414f246)
- modal: sheet modal handle is now positioned correctly (#23901) (58a4ba2)
- modal: sheet modal now accounts for safe area (#23884) (195d817), closes #23874
Features
Bug Fixes
Features
Bug Fixes
Features
Bug Fixes
- list: change inset border radius to match iOS 15 (#23711) (fe2810b)
- popover: fix keyboard arrow navigation (#23709) (f2e7a26), closes #23512
- vue: popover positioning is now correct with custom elements build (#23680) (3a1a9cb)
Features
- toast: add icon property to show icon at start of toast content (#23596) (df24c8c), closes #23524
Bug Fixes
- accordion: value can now be set as string when using multiple is true (#23581) (8f172de), closes #23550
- angular: modal and popover now have correct props defined on angular component (#23565) (e5a7b34)
- datetime: add keyboard year navigation (#23585) (55bd1f7), closes #21553 #18122
- datetime: selecting time now works correctly on firefox (#23583) (4188964), closes #23545
- datetime: years displayed now more consistent with v5 datetime, max and min are now accounted for in MD mode (#23616) (be219a2), closes #23615
Features
- breadcrumbs: ionCollapsedClick event payload now contains references to collapsed breadcrumb elements (#23611) (9ce57d2), closes #23552
- datetime: add showDefaultTimeLabel property and time-label slot (#23577) (7ac0109), closes #23555
- datetime: add size property (#23649) (321341d), closes #23518
- range: add support for customizing pin format (#22972) (8f2c4f7)
- segment: add keyboard navigation, add selectOnFocus property to control selection follow focus behavior (#23590) (b6c53e5), closes #23520
- select: update popover interface to match MD spec on desktop, allow multiple values in popover interface (#23474) (2c07a15), closes #23657 #15500 #12310
- remove shims for legacy browsers no longer supported in v6 (#23592) (259b135)
Bug Fixes
- accordion: improved reliability of accordion animations (#23531) (6fbd60b), closes #23504
- content: add touch-action manipulation for a11y zoom and pan (#23534) (6ca1780), closes #22805
- datetime: scroll position no longer gets reset when using datetime in overlay (#23543) (b735b58)
- input, select, textarea: change type of placeholder prop to string only (#23500) (f3ae431), closes #22976
- popover: size property now works when providing only event (#23532) (bdc1f23), closes #23528
- popover: update animation to better match MD spec (#23541) (bdb95b7)
- react: export accordion and accordion group components (#23497) (a664d42)
- vue: navigating between parameterized pages now results in page transition (#23525) (e30b17c), closes #22662
Features
- accordion-group: add animated property to disable animations (#23530) (9a60dd0)
- action-sheet, alert: add id to AlertButton and ActionSheetButton (#18992) (9e24a0b), closes #22959
- vue: extend useIonRouter hook for programmatic navigation with animation control (#23499) (fc9e1b4), closes #23450
BREAKING CHANGES
- input, select, textarea: Updated the
placeholder
property on ion-input
, ion-textarea
, and ion-select
to have a type of string | undefined
.
Bug Fixes
- accordion: toggle icon now shows up in vue and react (#23426) (c716617)
- datetime: changing time emits ionChange (#23463) (b0cce36)
- modal: add additional padding to toolbars in iOS modal (#23262) (a037b65), closes #22778
- modal: border radius is correctly set on card style modal (#23461) (bccb8ad)
- modal, popover: overlays now automatically determine if they are inline (#23434) (8dbe8ba)
- popover: shadow parts now correctly added (#23446) (e1a9613)
- popover: update prop defaults, use correct delegate (#23340) (960778a)
- searchbar: showClearButton now defaults to 'always' for improved usability with screen readers (#23475) (80f181d)
- vue: ensure webpack does not eliminate core css (#23465) (ee3a00f)
Code Refactoring
- all: update required browser, framework, and mobile platform versions for v6 (#23443) (c842dd8)
- angular: remove Config.set() method (#22918) (9e05891)
- header: removed border from last toolbar when using collapsible large title (#22891) (c72bc5d), closes #22777
- ios: update toolbar and tabbar default background colors (#22852) (3d615cb), closes #22780
- toast: whitespace variable now defaults to normal (#22866) (9b78689)
- vue: drop support for "on" prefixed overlay events and bump minimum required version of vue to 3.0.6 (#23229) (6fcb3a6)
- vue: remove support for child routes nested inside of tabs (#22919) (75458ac)
Features
- accordion: add accordion and accordion-group components (#22865) (073883a), closes #17094
- breadcrumbs: add breadcrumbs component (#22701) (2f6b1e4), closes #22770
- datetime: add calendar picker (#23416) (932d3ca), closes #19423
- item: add helper text, error text, counter, shape, and fill mode (#23354) (faefe97), closes #19619
- modal: modals can now be used inline (#23341) (3be1c3d), closes #20117 #20263
- popover: account for ionShadowTarget elements (#23436) (0e38d42)
- popover: add desktop support (#23258) (a67a0fa), closes #21599
- popover: popover can now be used inline (#23231) (308fa1c)
- slides: add IonicSwiper modules, deprecate ion-slides, and add link to migration (#23447) (623c84a)
- spinner: add lines-sharp, lines-sharp-small, update styles for ios 14 (#22397) (2a5b272)
- vue: add custom elements bundle (#23458) (dc48a9f)
BREAKING CHANGES
- searchbar: The
showClearButton
property on ion-searchbar
now defaults to 'always'
.
- datetime: The
ion-datetime
component has been revamped to use a new calendar style. As a result, some APIs have been removed. See https://github.com/ionic-team/ionic-framework/blob/master/BREAKING.md for more details.
- all: Browser, JS Framework, and mobile platform minimum required versions have been updated.
- popover: Converted
ion-popover
to use the Shadow DOM.
- vue: - Dropped support for prefixed overlay events in favor of non prefixed events (I.e.
@onDidDismiss
becomes @didDismiss
).
- Minimum required version of Vue is now Vue v3.0.6 or newer.
- vue: Support for child routes nested inside of tabs has been removed to better conform to Vue Router's best practices. Additional routes should be written as sibling routes with the parent tab as the path prefix.
- angular: The
Config.set()
method has been removed. See https://ionicframework.com/docs/angular/config for examples on how to set config globally, per-component, and per-platform.
- ios: The tab bar and toolbar default background colors have been updated to better reflect the latest iOS styles.
- header: The last toolbar in the header with a collapsible large title no longer has a border.
- toast: The
--white-space
CSS Variable now defaults to normal
.