Skip to content

Commit fc2a13e

Browse files
authored
chore: sync with main (#29154)
2 parents 5cf84ee + ff7fa0b commit fc2a13e

32 files changed

+987
-173
lines changed

CHANGELOG.md

Lines changed: 38 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,31 @@
33
All notable changes to this project will be documented in this file.
44
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
55

6+
# [7.8.0](https://github.com/ionic-team/ionic-framework/compare/v7.7.5...v7.8.0) (2024-03-13)
7+
8+
9+
## Features
10+
11+
* **datetime:** formatOptions property for Datetime ([#29065](https://github.com/ionic-team/ionic-framework/issues/29065)) ([7cdbc1b](https://github.com/ionic-team/ionic-framework/commit/7cdbc1b5ad004e17a7c51363653e0e67f50e6860))
12+
* **searchbar:** autocapitalize, dir, lang, maxlength, and minlength are inherited to native input ([#29098](https://github.com/ionic-team/ionic-framework/issues/29098)) ([a0a77f7](https://github.com/ionic-team/ionic-framework/commit/a0a77f799df0732d9f7182f15866035a3ce5a1eb)), closes [#27606](https://github.com/ionic-team/ionic-framework/issues/27606)
13+
14+
15+
16+
17+
18+
## [7.7.5](https://github.com/ionic-team/ionic-framework/compare/v7.7.4...v7.7.5) (2024-03-13)
19+
20+
21+
### Bug Fixes
22+
23+
* **angular:** add ionNavWillChange and ionNavDidChange types for nav ([#29122](https://github.com/ionic-team/ionic-framework/issues/29122)) ([85b9d5c](https://github.com/ionic-team/ionic-framework/commit/85b9d5c35f626ffc273d220549b0126ddc1f7e4b)), closes [#29114](https://github.com/ionic-team/ionic-framework/issues/29114)
24+
* **checkbox:** set aria-checked of indeterminate checkbox to 'mixed' ([#29115](https://github.com/ionic-team/ionic-framework/issues/29115)) ([b2d636f](https://github.com/ionic-team/ionic-framework/commit/b2d636f14dcd33313f6604cfd4a64b542c831b34))
25+
* **overlay:** do not hide overlay if toast is presented ([#29140](https://github.com/ionic-team/ionic-framework/issues/29140)) ([c0f5e5e](https://github.com/ionic-team/ionic-framework/commit/c0f5e5ebc0c9d45d71e10e09903b00b3ba8e6bba)), closes [#29139](https://github.com/ionic-team/ionic-framework/issues/29139)
26+
27+
28+
29+
30+
631
# [8.0.0-beta.1](https://github.com/ionic-team/ionic-framework/compare/v8.0.0-beta.0...v8.0.0-beta.1) (2024-03-06)
732

833

@@ -28,6 +53,19 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
2853

2954

3055

56+
57+
58+
## [7.7.4](https://github.com/ionic-team/ionic-framework/compare/v7.7.3...v7.7.4) (2024-03-06)
59+
60+
61+
### Bug Fixes
62+
63+
* **modal:** ariaLabel and role are inherited when set via htmlAttributes ([#29099](https://github.com/ionic-team/ionic-framework/issues/29099)) ([de13633](https://github.com/ionic-team/ionic-framework/commit/de13633a182d963876434db773aa346833f956fd))
64+
65+
66+
67+
68+
3169
# [8.0.0-beta.0](https://github.com/ionic-team/ionic-framework/compare/v7.7.3...v8.0.0-beta.0) (2024-02-28)
3270

3371

@@ -96,17 +134,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
96134

97135

98136

99-
## [7.7.4](https://github.com/ionic-team/ionic-framework/compare/v7.7.3...v7.7.4) (2024-03-06)
100-
101-
102-
### Bug Fixes
103-
104-
* **modal:** ariaLabel and role are inherited when set via htmlAttributes ([#29099](https://github.com/ionic-team/ionic-framework/issues/29099)) ([de13633](https://github.com/ionic-team/ionic-framework/commit/de13633a182d963876434db773aa346833f956fd))
105-
106-
107-
108-
109-
110137
## [7.7.3](https://github.com/ionic-team/ionic-framework/compare/v7.7.2...v7.7.3) (2024-02-21)
111138

112139
### Bug Fixes

core/CHANGELOG.md

Lines changed: 37 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,30 @@
33
All notable changes to this project will be documented in this file.
44
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
55

6+
# [7.8.0](https://github.com/ionic-team/ionic-framework/compare/v7.7.5...v7.8.0) (2024-03-13)
7+
8+
9+
## Features
10+
11+
* **datetime:** formatOptions property for Datetime ([#29065](https://github.com/ionic-team/ionic-framework/issues/29065)) ([7cdbc1b](https://github.com/ionic-team/ionic-framework/commit/7cdbc1b5ad004e17a7c51363653e0e67f50e6860))
12+
* **searchbar:** autocapitalize, dir, lang, maxlength, and minlength are inherited to native input ([#29098](https://github.com/ionic-team/ionic-framework/issues/29098)) ([a0a77f7](https://github.com/ionic-team/ionic-framework/commit/a0a77f799df0732d9f7182f15866035a3ce5a1eb)), closes [#27606](https://github.com/ionic-team/ionic-framework/issues/27606)
13+
14+
15+
16+
17+
18+
## [7.7.5](https://github.com/ionic-team/ionic-framework/compare/v7.7.4...v7.7.5) (2024-03-13)
19+
20+
21+
### Bug Fixes
22+
23+
* **checkbox:** set aria-checked of indeterminate checkbox to 'mixed' ([#29115](https://github.com/ionic-team/ionic-framework/issues/29115)) ([b2d636f](https://github.com/ionic-team/ionic-framework/commit/b2d636f14dcd33313f6604cfd4a64b542c831b34))
24+
* **overlay:** do not hide overlay if toast is presented ([#29140](https://github.com/ionic-team/ionic-framework/issues/29140)) ([c0f5e5e](https://github.com/ionic-team/ionic-framework/commit/c0f5e5ebc0c9d45d71e10e09903b00b3ba8e6bba)), closes [#29139](https://github.com/ionic-team/ionic-framework/issues/29139)
25+
26+
27+
28+
29+
630
# [8.0.0-beta.1](https://github.com/ionic-team/ionic-framework/compare/v8.0.0-beta.0...v8.0.0-beta.1) (2024-03-06)
731

832

@@ -28,6 +52,19 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
2852

2953

3054

55+
56+
57+
## [7.7.4](https://github.com/ionic-team/ionic-framework/compare/v7.7.3...v7.7.4) (2024-03-06)
58+
59+
60+
### Bug Fixes
61+
62+
* **modal:** ariaLabel and role are inherited when set via htmlAttributes ([#29099](https://github.com/ionic-team/ionic-framework/issues/29099)) ([de13633](https://github.com/ionic-team/ionic-framework/commit/de13633a182d963876434db773aa346833f956fd))
63+
64+
65+
66+
67+
3168
# [8.0.0-beta.0](https://github.com/ionic-team/ionic-framework/compare/v7.7.3...v8.0.0-beta.0) (2024-02-28)
3269

3370

@@ -42,11 +79,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
4279
* **toggle:** set switch icon color correctly ([#28812](https://github.com/ionic-team/ionic-framework/issues/28812)) ([749df5b](https://github.com/ionic-team/ionic-framework/commit/749df5bdcec95e718199c4915c2a762ee29cdefb))
4380

4481

45-
### chore
46-
47-
* remove unused code ([#28503](https://github.com/ionic-team/ionic-framework/issues/28503)) ([5aafd68](https://github.com/ionic-team/ionic-framework/commit/5aafd68f03bb6daefa9bfe58ce68459c3068fc5d))
48-
49-
5082
### Code Refactoring
5183

5284
* **checkbox:** remove legacy property and support for legacy syntax ([#29043](https://github.com/ionic-team/ionic-framework/issues/29043)) ([fb5ae5b](https://github.com/ionic-team/ionic-framework/commit/fb5ae5b07f98a3b62a35ab07192a0fc7898ecbea))
@@ -77,11 +109,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
77109
* **toggle:** update styles to iOS 17 specs ([#28722](https://github.com/ionic-team/ionic-framework/issues/28722)) ([0ce0693](https://github.com/ionic-team/ionic-framework/commit/0ce0693af1cd468192ea58a08106c704da04640c))
78110

79111

80-
### Reverts
81-
82-
* Revert "chore(): add updated snapshots" ([613bd54](https://github.com/ionic-team/ionic-framework/commit/613bd54adf519cef74e30066d549bd2ccc011b6a))
83-
84-
85112
### BREAKING CHANGES
86113

87114
* **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](https://ionicframework.com/docs/api/range#migrating-from-legacy-range-syntax).
@@ -98,17 +125,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
98125

99126

100127

101-
## [7.7.4](https://github.com/ionic-team/ionic-framework/compare/v7.7.3...v7.7.4) (2024-03-06)
102-
103-
104-
### Bug Fixes
105-
106-
* **modal:** ariaLabel and role are inherited when set via htmlAttributes ([#29099](https://github.com/ionic-team/ionic-framework/issues/29099)) ([de13633](https://github.com/ionic-team/ionic-framework/commit/de13633a182d963876434db773aa346833f956fd))
107-
108-
109-
110-
111-
112128
## [7.7.3](https://github.com/ionic-team/ionic-framework/compare/v7.7.2...v7.7.3) (2024-02-21)
113129

114130

core/api.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -394,6 +394,7 @@ ion-datetime,prop,dayValues,number | number[] | string | undefined,undefined,fal
394394
ion-datetime,prop,disabled,boolean,false,false,false
395395
ion-datetime,prop,doneText,string,'Done',false,false
396396
ion-datetime,prop,firstDayOfWeek,number,0,false,false
397+
ion-datetime,prop,formatOptions,undefined | { date: DateTimeFormatOptions; time?: DateTimeFormatOptions | undefined; } | { date?: DateTimeFormatOptions | undefined; time: DateTimeFormatOptions; },undefined,false,false
397398
ion-datetime,prop,highlightedDates,((dateIsoString: string) => DatetimeHighlightStyle | undefined) | DatetimeHighlight[] | undefined,undefined,false,false
398399
ion-datetime,prop,hourCycle,"h11" | "h12" | "h23" | "h24" | undefined,undefined,false,false
399400
ion-datetime,prop,hourValues,number | number[] | string | undefined,undefined,false,false
@@ -1165,6 +1166,7 @@ ion-row,shadow
11651166

11661167
ion-searchbar,scoped
11671168
ion-searchbar,prop,animated,boolean,false,false,false
1169+
ion-searchbar,prop,autocapitalize,string,undefined,true,false
11681170
ion-searchbar,prop,autocomplete,"name" | "email" | "tel" | "url" | "on" | "off" | "honorific-prefix" | "given-name" | "additional-name" | "family-name" | "honorific-suffix" | "nickname" | "username" | "new-password" | "current-password" | "one-time-code" | "organization-title" | "organization" | "street-address" | "address-line1" | "address-line2" | "address-line3" | "address-level4" | "address-level3" | "address-level2" | "address-level1" | "country" | "country-name" | "postal-code" | "cc-name" | "cc-given-name" | "cc-additional-name" | "cc-family-name" | "cc-number" | "cc-exp" | "cc-exp-month" | "cc-exp-year" | "cc-csc" | "cc-type" | "transaction-currency" | "transaction-amount" | "language" | "bday" | "bday-day" | "bday-month" | "bday-year" | "sex" | "tel-country-code" | "tel-national" | "tel-area-code" | "tel-local" | "tel-extension" | "impp" | "photo",'off',false,false
11691171
ion-searchbar,prop,autocorrect,"off" | "on",'off',false,false
11701172
ion-searchbar,prop,cancelButtonIcon,string,config.get('backButtonIcon', arrowBackSharp) as string,false,false
@@ -1175,6 +1177,8 @@ ion-searchbar,prop,debounce,number | undefined,undefined,false,false
11751177
ion-searchbar,prop,disabled,boolean,false,false,false
11761178
ion-searchbar,prop,enterkeyhint,"done" | "enter" | "go" | "next" | "previous" | "search" | "send" | undefined,undefined,false,false
11771179
ion-searchbar,prop,inputmode,"decimal" | "email" | "none" | "numeric" | "search" | "tel" | "text" | "url" | undefined,undefined,false,false
1180+
ion-searchbar,prop,maxlength,number | undefined,undefined,false,false
1181+
ion-searchbar,prop,minlength,number | undefined,undefined,false,false
11781182
ion-searchbar,prop,mode,"ios" | "md",undefined,false,false
11791183
ion-searchbar,prop,name,string,this.inputId,false,false
11801184
ion-searchbar,prop,placeholder,string,'Search',false,false

core/src/components.d.ts

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import { RouteID, RouterDirection, RouterEventDetail, RouteWrite } from "./compo
1515
import { BreadcrumbCollapsedClickEventDetail } from "./components/breadcrumb/breadcrumb-interface";
1616
import { CheckboxChangeEventDetail } from "./components/checkbox/checkbox-interface";
1717
import { ScrollBaseDetail, ScrollDetail } from "./components/content/content-interface";
18-
import { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
18+
import { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, FormatOptions, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
1919
import { SpinnerTypes } from "./components/spinner/spinner-configs";
2020
import { InputChangeEventDetail, InputInputEventDetail } from "./components/input/input-interface";
2121
import { MenuChangeEventDetail, MenuType, Side } from "./components/menu/menu-interface";
@@ -50,7 +50,7 @@ export { RouteID, RouterDirection, RouterEventDetail, RouteWrite } from "./compo
5050
export { BreadcrumbCollapsedClickEventDetail } from "./components/breadcrumb/breadcrumb-interface";
5151
export { CheckboxChangeEventDetail } from "./components/checkbox/checkbox-interface";
5252
export { ScrollBaseDetail, ScrollDetail } from "./components/content/content-interface";
53-
export { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
53+
export { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, FormatOptions, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
5454
export { SpinnerTypes } from "./components/spinner/spinner-configs";
5555
export { InputChangeEventDetail, InputInputEventDetail } from "./components/input/input-interface";
5656
export { MenuChangeEventDetail, MenuType, Side } from "./components/menu/menu-interface";
@@ -852,6 +852,10 @@ export namespace Components {
852852
* The first day of the week to use for `ion-datetime`. The default value is `0` and represents Sunday.
853853
*/
854854
"firstDayOfWeek": number;
855+
/**
856+
* Formatting options for dates and times. Should include a 'date' and/or 'time' object, each of which is of type [Intl.DateTimeFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#options).
857+
*/
858+
"formatOptions"?: FormatOptions;
855859
/**
856860
* Used to apply custom text and background colors to specific dates. Can be either an array of objects containing ISO strings and colors, or a callback that receives an ISO string and returns the colors. Only applies to the `date`, `date-time`, and `time-date` presentations, with `preferWheel="false"`.
857861
*/
@@ -2523,6 +2527,10 @@ export namespace Components {
25232527
* If `true`, enable searchbar animation.
25242528
*/
25252529
"animated": boolean;
2530+
/**
2531+
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
2532+
*/
2533+
"autocapitalize": string;
25262534
/**
25272535
* Set the input's autocomplete property.
25282536
*/
@@ -2567,6 +2575,14 @@ export namespace Components {
25672575
* A hint to the browser for which keyboard to display. Possible values: `"none"`, `"text"`, `"tel"`, `"url"`, `"email"`, `"numeric"`, `"decimal"`, and `"search"`.
25682576
*/
25692577
"inputmode"?: 'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search';
2578+
/**
2579+
* This attribute specifies the maximum number of characters that the user can enter.
2580+
*/
2581+
"maxlength"?: number;
2582+
/**
2583+
* This attribute specifies the minimum number of characters that the user can enter.
2584+
*/
2585+
"minlength"?: number;
25702586
/**
25712587
* The mode determines which platform styles to use.
25722588
*/
@@ -5500,6 +5516,10 @@ declare namespace LocalJSX {
55005516
* The first day of the week to use for `ion-datetime`. The default value is `0` and represents Sunday.
55015517
*/
55025518
"firstDayOfWeek"?: number;
5519+
/**
5520+
* Formatting options for dates and times. Should include a 'date' and/or 'time' object, each of which is of type [Intl.DateTimeFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#options).
5521+
*/
5522+
"formatOptions"?: FormatOptions;
55035523
/**
55045524
* Used to apply custom text and background colors to specific dates. Can be either an array of objects containing ISO strings and colors, or a callback that receives an ISO string and returns the colors. Only applies to the `date`, `date-time`, and `time-date` presentations, with `preferWheel="false"`.
55055525
*/
@@ -7196,6 +7216,10 @@ declare namespace LocalJSX {
71967216
* If `true`, enable searchbar animation.
71977217
*/
71987218
"animated"?: boolean;
7219+
/**
7220+
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
7221+
*/
7222+
"autocapitalize": string;
71997223
/**
72007224
* Set the input's autocomplete property.
72017225
*/
@@ -7236,6 +7260,14 @@ declare namespace LocalJSX {
72367260
* A hint to the browser for which keyboard to display. Possible values: `"none"`, `"text"`, `"tel"`, `"url"`, `"email"`, `"numeric"`, `"decimal"`, and `"search"`.
72377261
*/
72387262
"inputmode"?: 'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search';
7263+
/**
7264+
* This attribute specifies the maximum number of characters that the user can enter.
7265+
*/
7266+
"maxlength"?: number;
7267+
/**
7268+
* This attribute specifies the minimum number of characters that the user can enter.
7269+
*/
7270+
"minlength"?: number;
72397271
/**
72407272
* The mode determines which platform styles to use.
72417273
*/

core/src/components/app/app.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { ComponentInterface } from '@stencil/core';
22
import { Build, Component, Element, Host, Method, h } from '@stencil/core';
33
import type { FocusVisibleUtility } from '@utils/focus-visible';
4-
import { shoudUseCloseWatcher } from '@utils/hardware-back-button';
4+
import { shouldUseCloseWatcher } from '@utils/hardware-back-button';
55
import { printIonWarning } from '@utils/logging';
66
import { isPlatform } from '@utils/platform';
77

@@ -36,15 +36,15 @@ export class App implements ComponentInterface {
3636
import('../../utils/input-shims/input-shims').then((module) => module.startInputShims(config, platform));
3737
}
3838
const hardwareBackButtonModule = await import('../../utils/hardware-back-button');
39-
const supportsHardwareBackButtonEvents = isHybrid || shoudUseCloseWatcher();
39+
const supportsHardwareBackButtonEvents = isHybrid || shouldUseCloseWatcher();
4040
if (config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
4141
hardwareBackButtonModule.startHardwareBackButton();
4242
} else {
4343
/**
4444
* If an app sets hardwareBackButton: false and experimentalCloseWatcher: true
4545
* then the close watcher will not be used.
4646
*/
47-
if (shoudUseCloseWatcher()) {
47+
if (shouldUseCloseWatcher()) {
4848
printIonWarning(
4949
'experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used.'
5050
);

0 commit comments

Comments
 (0)