chore(deps): update stencil core (#30132)

We have shipped various of improvements to the Stencil project and
runtime. You can take a close look at our
[changelog](https://github.com/ionic-team/stencil/blob/main/CHANGELOG.md)
but since `v4.20.0` we mainly shipped improvements on the following
issues:

## Major Improvements:

- Enhanced Shadow DOM and hydration support
  - Improved client-side hydration for SSR
  - Better handling of shadow root styles and component hydration
  - More reliable serialization of Shadow DOM components

## Key Bug Fixes:

- Resolved performance issues due to detached nodes in memory
- Fixed several critical issues with scoped slots and component styling
- Improved handling of SVG class attributes and template tags
- Enhanced runtime decorator functionality
- Better handling of form-associated callbacks

## Technical Updates:

- Updated to TypeScript 5.5
- Added support for customizable Mermaid diagram colors in documentation

I don't see any critical changes that may impact Ionic users and feel
confident we can ship this.

## Dev Build

`8.5.4-dev.11744646756.1244bf71`

---------

Co-authored-by: Brandy Smith <brandyscarney@users.noreply.github.com>
This commit is contained in:
Christian Bromann
2025-04-23 15:53:39 -07:00
committed by GitHub
parent 2667ee37f2
commit 808c60c235
8 changed files with 195 additions and 49 deletions

View File

@ -2,7 +2,7 @@ import { NgZone } from '@angular/core';
import type { Config, IonicWindow } from '@ionic/angular/common';
import { raf } from '@ionic/angular/common';
import { setupConfig } from '@ionic/core';
import { applyPolyfills, defineCustomElements } from '@ionic/core/loader';
import { defineCustomElements } from '@ionic/core/loader';
// TODO(FW-2827): types
@ -18,19 +18,17 @@ export const appInitialize = (config: Config, doc: Document, zone: NgZone) => {
const aelFn =
'__zone_symbol__addEventListener' in (doc.body as any) ? '__zone_symbol__addEventListener' : 'addEventListener';
return applyPolyfills().then(() => {
return defineCustomElements(win, {
exclude: ['ion-tabs'],
syncQueue: true,
raf,
jmp: (h: any) => zone.runOutsideAngular(h),
ael(elm, eventName, cb, opts) {
(elm as any)[aelFn](eventName, cb, opts);
},
rel(elm, eventName, cb, opts) {
elm.removeEventListener(eventName, cb, opts);
},
});
return defineCustomElements(win, {
exclude: ['ion-tabs'],
syncQueue: true,
raf,
jmp: (h: any) => zone.runOutsideAngular(h),
ael(elm, eventName, cb, opts) {
(elm as any)[aelFn](eventName, cb, opts);
},
rel(elm, eventName, cb, opts) {
elm.removeEventListener(eventName, cb, opts);
},
});
}
};