diff --git a/CHANGELOG.md b/CHANGELOG.md index 86ca0b0d033..55159a1cc32 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + + +### Features + +* **angular:** setting props on a signal works ([#29453](https://github.com/ionic-team/ionic-framework/issues/29453)) ([4640e04](https://github.com/ionic-team/ionic-framework/commit/4640e046ebbd35bf92737368c6262f79a8803a59)), closes [#28876](https://github.com/ionic-team/ionic-framework/issues/28876) + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) diff --git a/core/CHANGELOG.md b/core/CHANGELOG.md index f2bef24436a..49e7978beec 100644 --- a/core/CHANGELOG.md +++ b/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + +**Note:** Version bump only for package @ionic/core + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) diff --git a/core/package-lock.json b/core/package-lock.json index b5f87854833..50f677e4af3 100644 --- a/core/package-lock.json +++ b/core/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ionic/core", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/core", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT", "dependencies": { "@stencil/core": "^4.17.2", diff --git a/core/package.json b/core/package.json index bbc9ac8e8a0..da6bfc4db24 100644 --- a/core/package.json +++ b/core/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/core", - "version": "8.1.3", + "version": "8.2.0", "description": "Base components for Ionic", "keywords": [ "ionic", diff --git a/lerna.json b/lerna.json index ad4c10aed6b..e9da54c9907 100644 --- a/lerna.json +++ b/lerna.json @@ -3,5 +3,5 @@ "core", "packages/*" ], - "version": "8.1.3" + "version": "8.2.0" } diff --git a/packages/angular-server/CHANGELOG.md b/packages/angular-server/CHANGELOG.md index f2a911eab77..ac48711e768 100644 --- a/packages/angular-server/CHANGELOG.md +++ b/packages/angular-server/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + +**Note:** Version bump only for package @ionic/angular-server + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) **Note:** Version bump only for package @ionic/angular-server diff --git a/packages/angular-server/package-lock.json b/packages/angular-server/package-lock.json index 15f7460f2be..14f48b81ddb 100644 --- a/packages/angular-server/package-lock.json +++ b/packages/angular-server/package-lock.json @@ -1,15 +1,15 @@ { "name": "@ionic/angular-server", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/angular-server", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT", "dependencies": { - "@ionic/core": "^8.1.3" + "@ionic/core": "^8.2.0" }, "devDependencies": { "@angular-eslint/eslint-plugin": "^16.0.0", @@ -1119,9 +1119,9 @@ "dev": true }, "node_modules/@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "dependencies": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -7011,9 +7011,9 @@ "dev": true }, "@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "requires": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", diff --git a/packages/angular-server/package.json b/packages/angular-server/package.json index 8b0e34943a8..6e3cc2484f6 100644 --- a/packages/angular-server/package.json +++ b/packages/angular-server/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/angular-server", - "version": "8.1.3", + "version": "8.2.0", "description": "Angular SSR Module for Ionic", "keywords": [ "ionic", @@ -62,6 +62,6 @@ }, "prettier": "@ionic/prettier-config", "dependencies": { - "@ionic/core": "^8.1.3" + "@ionic/core": "^8.2.0" } } diff --git a/packages/angular/CHANGELOG.md b/packages/angular/CHANGELOG.md index 63cf991827f..42a6c24bcdb 100644 --- a/packages/angular/CHANGELOG.md +++ b/packages/angular/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + + +### Features + +* **angular:** setting props on a signal works ([#29453](https://github.com/ionic-team/ionic-framework/issues/29453)) ([4640e04](https://github.com/ionic-team/ionic-framework/commit/4640e046ebbd35bf92737368c6262f79a8803a59)), closes [#28876](https://github.com/ionic-team/ionic-framework/issues/28876) + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) **Note:** Version bump only for package @ionic/angular diff --git a/packages/angular/common/src/directives/navigation/nav-params.ts b/packages/angular/common/src/directives/navigation/nav-params.ts index a5af4b9d631..23f4125aff4 100644 --- a/packages/angular/common/src/directives/navigation/nav-params.ts +++ b/packages/angular/common/src/directives/navigation/nav-params.ts @@ -19,7 +19,11 @@ * ``` */ export class NavParams { - constructor(public data: { [key: string]: any } = {}) {} + constructor(public data: { [key: string]: any } = {}) { + console.warn( + `[Ionic Warning]: NavParams has been deprecated in favor of using Angular's input API. Developers should migrate to either the @Input decorator or the Signals-based input API.` + ); + } /** * Get the value of a nav-parameter for the current view diff --git a/packages/angular/common/src/providers/angular-delegate.ts b/packages/angular/common/src/providers/angular-delegate.ts index c1524e8b72c..fc794c0e34b 100644 --- a/packages/angular/common/src/providers/angular-delegate.ts +++ b/packages/angular/common/src/providers/angular-delegate.ts @@ -20,12 +20,15 @@ import { import { NavParams } from '../directives/navigation/nav-params'; +import { ConfigToken } from './config'; + // TODO(FW-2827): types @Injectable() export class AngularDelegate { private zone = inject(NgZone); private applicationRef = inject(ApplicationRef); + private config = inject(ConfigToken); create( environmentInjector: EnvironmentInjector, @@ -37,7 +40,8 @@ export class AngularDelegate { injector, this.applicationRef, this.zone, - elementReferenceKey + elementReferenceKey, + this.config.useSetInputAPI ?? false ); } } @@ -51,7 +55,8 @@ export class AngularFrameworkDelegate implements FrameworkDelegate { private injector: Injector, private applicationRef: ApplicationRef, private zone: NgZone, - private elementReferenceKey?: string + private elementReferenceKey?: string, + private enableSignalsSupport?: boolean ) {} attachViewToDom(container: any, component: any, params?: any, cssClasses?: string[]): Promise { @@ -84,7 +89,8 @@ export class AngularFrameworkDelegate implements FrameworkDelegate { component, componentProps, cssClasses, - this.elementReferenceKey + this.elementReferenceKey, + this.enableSignalsSupport ); resolve(el); }); @@ -121,7 +127,8 @@ export const attachView = ( component: any, params: any, cssClasses: string[] | undefined, - elementReferenceKey: string | undefined + elementReferenceKey: string | undefined, + enableSignalsSupport: boolean | undefined ): any => { /** * Wraps the injector with a custom injector that @@ -164,7 +171,38 @@ export const attachView = ( ); } - Object.assign(instance, params); + /** + * Angular 14.1 added support for setInput + * so we need to fall back to Object.assign + * for Angular 14.0. + */ + if (enableSignalsSupport === true && componentRef.setInput !== undefined) { + const { modal, popover, ...otherParams } = params; + /** + * Any key/value pairs set in componentProps + * must be set as inputs on the component instance. + */ + for (const key in otherParams) { + componentRef.setInput(key, otherParams[key]); + } + + /** + * Using setInput will cause an error when + * setting modal/popover on a component that + * does not define them as an input. For backwards + * compatibility purposes we fall back to using + * Object.assign for these properties. + */ + if (modal !== undefined) { + Object.assign(instance, { modal }); + } + + if (popover !== undefined) { + Object.assign(instance, { popover }); + } + } else { + Object.assign(instance, params); + } } if (cssClasses) { for (const cssClass of cssClasses) { diff --git a/packages/angular/package-lock.json b/packages/angular/package-lock.json index 55474fbc100..4914aa7319f 100644 --- a/packages/angular/package-lock.json +++ b/packages/angular/package-lock.json @@ -1,15 +1,15 @@ { "name": "@ionic/angular", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/angular", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT", "dependencies": { - "@ionic/core": "^8.1.3", + "@ionic/core": "^8.2.0", "ionicons": "^7.0.0", "jsonc-parser": "^3.0.0", "tslib": "^2.3.0" @@ -1398,9 +1398,9 @@ "dev": true }, "node_modules/@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "dependencies": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -9820,9 +9820,9 @@ "dev": true }, "@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "requires": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", diff --git a/packages/angular/package.json b/packages/angular/package.json index 2905c76f425..470c08c53a5 100644 --- a/packages/angular/package.json +++ b/packages/angular/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/angular", - "version": "8.1.3", + "version": "8.2.0", "description": "Angular specific wrappers for @ionic/core", "keywords": [ "ionic", @@ -47,7 +47,7 @@ } }, "dependencies": { - "@ionic/core": "^8.1.3", + "@ionic/core": "^8.2.0", "ionicons": "^7.0.0", "jsonc-parser": "^3.0.0", "tslib": "^2.3.0" diff --git a/packages/angular/src/ionic-module.ts b/packages/angular/src/ionic-module.ts index 13656fc3269..acd7745294b 100644 --- a/packages/angular/src/ionic-module.ts +++ b/packages/angular/src/ionic-module.ts @@ -52,14 +52,18 @@ const DECLARATIONS = [ IonMaxValidator, ]; +type OptInAngularFeatures = { + useSetInputAPI?: boolean; +}; + @NgModule({ declarations: DECLARATIONS, exports: DECLARATIONS, - providers: [AngularDelegate, ModalController, PopoverController], + providers: [ModalController, PopoverController], imports: [CommonModule], }) export class IonicModule { - static forRoot(config?: IonicConfig): ModuleWithProviders { + static forRoot(config: IonicConfig & OptInAngularFeatures = {}): ModuleWithProviders { return { ngModule: IonicModule, providers: [ @@ -73,6 +77,7 @@ export class IonicModule { multi: true, deps: [ConfigToken, DOCUMENT, NgZone], }, + AngularDelegate, provideComponentInputBinding(), ], }; diff --git a/packages/angular/standalone/src/providers/ionic-angular.ts b/packages/angular/standalone/src/providers/ionic-angular.ts index 7aa1747bf98..d810ef4d6b9 100644 --- a/packages/angular/standalone/src/providers/ionic-angular.ts +++ b/packages/angular/standalone/src/providers/ionic-angular.ts @@ -8,7 +8,11 @@ import type { IonicConfig } from '@ionic/core/components'; import { ModalController } from './modal-controller'; import { PopoverController } from './popover-controller'; -export const provideIonicAngular = (config?: IonicConfig): EnvironmentProviders => { +type OptInAngularFeatures = { + useSetInputAPI?: boolean; +}; + +export const provideIonicAngular = (config: IonicConfig & OptInAngularFeatures = {}): EnvironmentProviders => { return makeEnvironmentProviders([ { provide: ConfigToken, diff --git a/packages/angular/test/apps/ng16/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts b/packages/angular/test/apps/ng16/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts index ae545093dc7..765a594950c 100644 --- a/packages/angular/test/apps/ng16/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts +++ b/packages/angular/test/apps/ng16/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts @@ -1,5 +1,5 @@ import { JsonPipe } from "@angular/common"; -import { Component } from "@angular/core"; +import { Component, Input } from "@angular/core"; import { IonicModule } from "@ionic/angular"; @@ -23,7 +23,7 @@ let rootParamsException = false; }) export class NavRootComponent { - params: any; + @Input() params: any = {}; ngOnInit() { if (this.params === undefined) { diff --git a/packages/angular/test/apps/ng17/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts b/packages/angular/test/apps/ng17/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts index ae545093dc7..13bca637f3e 100644 --- a/packages/angular/test/apps/ng17/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts +++ b/packages/angular/test/apps/ng17/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts @@ -1,5 +1,5 @@ import { JsonPipe } from "@angular/common"; -import { Component } from "@angular/core"; +import { Component, Input } from "@angular/core"; import { IonicModule } from "@ionic/angular"; @@ -23,7 +23,7 @@ let rootParamsException = false; }) export class NavRootComponent { - params: any; + @Input() params: any; ngOnInit() { if (this.params === undefined) { diff --git a/packages/angular/test/base/src/app/lazy/alert/alert.component.ts b/packages/angular/test/base/src/app/lazy/alert/alert.component.ts index 4a5b9e10703..d92f9339d2d 100644 --- a/packages/angular/test/base/src/app/lazy/alert/alert.component.ts +++ b/packages/angular/test/base/src/app/lazy/alert/alert.component.ts @@ -1,6 +1,5 @@ import { Component, NgZone } from '@angular/core'; import { AlertController } from '@ionic/angular'; -import { NavComponent } from '../nav/nav.component'; @Component({ selector: 'app-alert', diff --git a/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.html b/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.html index 1420dd5b804..92a20746c99 100644 --- a/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.html +++ b/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.html @@ -11,7 +11,7 @@

Value

{{value}}

-

{{valueFromParams}}

+

{{prop}}

modal is defined: {{ !!modal }}

ngOnInit: {{onInit}}

ionViewWillEnter: {{willEnter}}

diff --git a/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.ts b/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.ts index d26fff7bd33..495ae1412c9 100644 --- a/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.ts +++ b/packages/angular/test/base/src/app/lazy/modal-example/modal-example.component.ts @@ -1,6 +1,6 @@ import { Component, Input, NgZone, OnInit, Optional } from '@angular/core'; import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; -import { ModalController, NavParams, IonNav, ViewWillLeave, ViewDidEnter, ViewDidLeave } from '@ionic/angular'; +import { ModalController, IonNav, ViewWillLeave, ViewDidEnter, ViewDidLeave } from '@ionic/angular'; @Component({ selector: 'app-modal-example', @@ -9,12 +9,12 @@ import { ModalController, NavParams, IonNav, ViewWillLeave, ViewDidEnter, ViewDi export class ModalExampleComponent implements OnInit, ViewWillLeave, ViewDidEnter, ViewWillLeave, ViewDidLeave { @Input() value?: string; + @Input() prop?: string; form = new UntypedFormGroup({ select: new UntypedFormControl([]) }); - valueFromParams: string; onInit = 0; willEnter = 0; didEnter = 0; @@ -25,11 +25,8 @@ export class ModalExampleComponent implements OnInit, ViewWillLeave, ViewDidEnte constructor( private modalCtrl: ModalController, - @Optional() public nav: IonNav, - navParams: NavParams - ) { - this.valueFromParams = navParams.get('prop'); - } + @Optional() public nav: IonNav + ) {} ngOnInit() { NgZone.assertInAngularZone(); diff --git a/packages/angular/test/base/src/app/lazy/nav/nav.component.ts b/packages/angular/test/base/src/app/lazy/nav/nav.component.ts index 735f4f4b250..7c5fec01f5a 100644 --- a/packages/angular/test/base/src/app/lazy/nav/nav.component.ts +++ b/packages/angular/test/base/src/app/lazy/nav/nav.component.ts @@ -1,6 +1,5 @@ -import { Component } from '@angular/core'; +import { Component, Input } from '@angular/core'; import { ModalExampleComponent } from '../modal-example/modal-example.component'; -import { NavParams } from '@ionic/angular'; @Component({ selector: 'app-nav', @@ -10,11 +9,13 @@ export class NavComponent { rootPage = ModalExampleComponent; rootParams: any; - constructor( - params: NavParams - ) { + @Input() value?: string; + @Input() prop?: string; + + ngOnInit() { this.rootParams = { - ...params.data + value: this.value, + prop: this.prop }; } } diff --git a/packages/docs/CHANGELOG.md b/packages/docs/CHANGELOG.md index d6596e355b3..6e642cea923 100644 --- a/packages/docs/CHANGELOG.md +++ b/packages/docs/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + +**Note:** Version bump only for package @ionic/docs + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) **Note:** Version bump only for package @ionic/docs diff --git a/packages/docs/package-lock.json b/packages/docs/package-lock.json index 5ce7a2a1080..5be6d498f5a 100644 --- a/packages/docs/package-lock.json +++ b/packages/docs/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ionic/docs", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/docs", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT" } } diff --git a/packages/docs/package.json b/packages/docs/package.json index 1671fb806cd..a59f9b653cc 100644 --- a/packages/docs/package.json +++ b/packages/docs/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/docs", - "version": "8.1.3", + "version": "8.2.0", "description": "Pre-packaged API documentation for the Ionic docs.", "main": "core.json", "types": "core.d.ts", diff --git a/packages/react-router/CHANGELOG.md b/packages/react-router/CHANGELOG.md index 214e3686270..8b371979139 100644 --- a/packages/react-router/CHANGELOG.md +++ b/packages/react-router/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + +**Note:** Version bump only for package @ionic/react-router + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) **Note:** Version bump only for package @ionic/react-router diff --git a/packages/react-router/package-lock.json b/packages/react-router/package-lock.json index a9aca61c039..0bedb92b542 100644 --- a/packages/react-router/package-lock.json +++ b/packages/react-router/package-lock.json @@ -1,15 +1,15 @@ { "name": "@ionic/react-router", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/react-router", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT", "dependencies": { - "@ionic/react": "^8.1.3", + "@ionic/react": "^8.2.0", "tslib": "*" }, "devDependencies": { @@ -238,9 +238,9 @@ "dev": true }, "node_modules/@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "dependencies": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -414,11 +414,11 @@ } }, "node_modules/@ionic/react": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/react/-/react-8.1.3.tgz", - "integrity": "sha512-LXRQMZ0XWdtBboVN5Hkuu0+wlN7BcUd1wz7yLZg/Avajh4XcIzxCK1cBv0TWHHKVFHErX8GOoGTImCjiSxn6gA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/react/-/react-8.2.0.tgz", + "integrity": "sha512-vFuRgzuR+Q6XOqmpVIukPSEG55HbYk7K+2l6QI95c+8m89qKB5NsMhsGLEhG6qHzgmZSO4DJK7/dw8dcxVev4w==", "dependencies": { - "@ionic/core": "8.1.3", + "@ionic/core": "8.2.0", "ionicons": "^7.0.0", "tslib": "*" }, @@ -4057,9 +4057,9 @@ "dev": true }, "@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "requires": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -4163,11 +4163,11 @@ "requires": {} }, "@ionic/react": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/react/-/react-8.1.3.tgz", - "integrity": "sha512-LXRQMZ0XWdtBboVN5Hkuu0+wlN7BcUd1wz7yLZg/Avajh4XcIzxCK1cBv0TWHHKVFHErX8GOoGTImCjiSxn6gA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/react/-/react-8.2.0.tgz", + "integrity": "sha512-vFuRgzuR+Q6XOqmpVIukPSEG55HbYk7K+2l6QI95c+8m89qKB5NsMhsGLEhG6qHzgmZSO4DJK7/dw8dcxVev4w==", "requires": { - "@ionic/core": "8.1.3", + "@ionic/core": "8.2.0", "ionicons": "^7.0.0", "tslib": "*" } diff --git a/packages/react-router/package.json b/packages/react-router/package.json index 07b1ede0719..c41f1ff5f7f 100644 --- a/packages/react-router/package.json +++ b/packages/react-router/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/react-router", - "version": "8.1.3", + "version": "8.2.0", "description": "React Router wrapper for @ionic/react", "keywords": [ "ionic", @@ -36,7 +36,7 @@ "dist/" ], "dependencies": { - "@ionic/react": "^8.1.3", + "@ionic/react": "^8.2.0", "tslib": "*" }, "peerDependencies": { diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 6de3a8e6554..cd973c9ceea 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + +**Note:** Version bump only for package @ionic/react + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) **Note:** Version bump only for package @ionic/react diff --git a/packages/react/package-lock.json b/packages/react/package-lock.json index 0979a5d2545..4dfbeee256b 100644 --- a/packages/react/package-lock.json +++ b/packages/react/package-lock.json @@ -1,15 +1,15 @@ { "name": "@ionic/react", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/react", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT", "dependencies": { - "@ionic/core": "^8.1.3", + "@ionic/core": "^8.2.0", "ionicons": "^7.0.0", "tslib": "*" }, @@ -798,9 +798,9 @@ "dev": true }, "node_modules/@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "dependencies": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -13035,9 +13035,9 @@ "dev": true }, "@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "requires": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", diff --git a/packages/react/package.json b/packages/react/package.json index 32ed8280870..9a3441f069b 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/react", - "version": "8.1.3", + "version": "8.2.0", "description": "React specific wrapper for @ionic/core", "keywords": [ "ionic", @@ -39,7 +39,7 @@ "css/" ], "dependencies": { - "@ionic/core": "^8.1.3", + "@ionic/core": "^8.2.0", "ionicons": "^7.0.0", "tslib": "*" }, diff --git a/packages/vue-router/CHANGELOG.md b/packages/vue-router/CHANGELOG.md index 54f703595e3..8fb4488a1ce 100644 --- a/packages/vue-router/CHANGELOG.md +++ b/packages/vue-router/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + +**Note:** Version bump only for package @ionic/vue-router + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) **Note:** Version bump only for package @ionic/vue-router diff --git a/packages/vue-router/package-lock.json b/packages/vue-router/package-lock.json index 2d41c3eea6d..4f63bb13b6d 100644 --- a/packages/vue-router/package-lock.json +++ b/packages/vue-router/package-lock.json @@ -1,15 +1,15 @@ { "name": "@ionic/vue-router", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/vue-router", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT", "dependencies": { - "@ionic/vue": "^8.1.3" + "@ionic/vue": "^8.2.0" }, "devDependencies": { "@ionic/eslint-config": "^0.3.0", @@ -661,9 +661,9 @@ "dev": true }, "node_modules/@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "dependencies": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -852,11 +852,11 @@ } }, "node_modules/@ionic/vue": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/vue/-/vue-8.1.3.tgz", - "integrity": "sha512-4Ed9tTybdBjlFZDoCb2Bbu4Lt+5VHrlqLKePrbiggKEysPHkOb4fXM7kAGLrHjptB3mcMtz47wG3fK77fDQLxg==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/vue/-/vue-8.2.0.tgz", + "integrity": "sha512-5xAMDBvmvani2WtI3j4BvRbeJiopzs0HpX1Mg/fFDfc9PtN4BaEjgHrfDt4ZxGSqA5Dn6xTsrgl38b6V7AmJoA==", "dependencies": { - "@ionic/core": "8.1.3", + "@ionic/core": "8.2.0", "ionicons": "^7.0.0" } }, @@ -7878,9 +7878,9 @@ "dev": true }, "@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "requires": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -7993,11 +7993,11 @@ "requires": {} }, "@ionic/vue": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/vue/-/vue-8.1.3.tgz", - "integrity": "sha512-4Ed9tTybdBjlFZDoCb2Bbu4Lt+5VHrlqLKePrbiggKEysPHkOb4fXM7kAGLrHjptB3mcMtz47wG3fK77fDQLxg==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/vue/-/vue-8.2.0.tgz", + "integrity": "sha512-5xAMDBvmvani2WtI3j4BvRbeJiopzs0HpX1Mg/fFDfc9PtN4BaEjgHrfDt4ZxGSqA5Dn6xTsrgl38b6V7AmJoA==", "requires": { - "@ionic/core": "8.1.3", + "@ionic/core": "8.2.0", "ionicons": "^7.0.0" } }, diff --git a/packages/vue-router/package.json b/packages/vue-router/package.json index 2e7e61b6df7..2835c1fd98f 100644 --- a/packages/vue-router/package.json +++ b/packages/vue-router/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/vue-router", - "version": "8.1.3", + "version": "8.2.0", "description": "Vue Router integration for @ionic/vue", "scripts": { "test.spec": "jest", @@ -44,7 +44,7 @@ }, "homepage": "https://github.com/ionic-team/ionic-framework#readme", "dependencies": { - "@ionic/vue": "^8.1.3" + "@ionic/vue": "^8.2.0" }, "devDependencies": { "@ionic/eslint-config": "^0.3.0", diff --git a/packages/vue/CHANGELOG.md b/packages/vue/CHANGELOG.md index be0c5c68a22..d74c70f08df 100644 --- a/packages/vue/CHANGELOG.md +++ b/packages/vue/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [8.2.0](https://github.com/ionic-team/ionic-framework/compare/v8.1.3...v8.2.0) (2024-05-22) + +**Note:** Version bump only for package @ionic/vue + + + + + ## [8.1.3](https://github.com/ionic-team/ionic-framework/compare/v8.1.2...v8.1.3) (2024-05-22) **Note:** Version bump only for package @ionic/vue diff --git a/packages/vue/package-lock.json b/packages/vue/package-lock.json index 9b15a93ba47..9afa9f19695 100644 --- a/packages/vue/package-lock.json +++ b/packages/vue/package-lock.json @@ -1,15 +1,15 @@ { "name": "@ionic/vue", - "version": "8.1.3", + "version": "8.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ionic/vue", - "version": "8.1.3", + "version": "8.2.0", "license": "MIT", "dependencies": { - "@ionic/core": "^8.1.3", + "@ionic/core": "^8.2.0", "ionicons": "^7.0.0" }, "devDependencies": { @@ -208,9 +208,9 @@ "dev": true }, "node_modules/@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "dependencies": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", @@ -3959,9 +3959,9 @@ "dev": true }, "@ionic/core": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.1.3.tgz", - "integrity": "sha512-X+Wa9QhmLh3RqAoRLug9f1MPfrUZfvnx/xxyTrsNKjmDN/mckcxwsiewoXIXAHkqDLITCmQElhCck6X1ArjTzQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.2.0.tgz", + "integrity": "sha512-+TjHDFluiGYVNiQZOLsETCE+om5FKYbaOKkfmCQYvRGxlg4WtOwaX6YCrpP4MMuerGt36PA196oh/JTcVe9ByA==", "requires": { "@stencil/core": "^4.17.2", "ionicons": "^7.2.2", diff --git a/packages/vue/package.json b/packages/vue/package.json index 206dbb8040d..93bce8749a8 100644 --- a/packages/vue/package.json +++ b/packages/vue/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/vue", - "version": "8.1.3", + "version": "8.2.0", "description": "Vue specific wrapper for @ionic/core", "scripts": { "eslint": "eslint src", @@ -66,7 +66,7 @@ "vue-router": "^4.0.16" }, "dependencies": { - "@ionic/core": "^8.1.3", + "@ionic/core": "^8.2.0", "ionicons": "^7.0.0" }, "vetur": {